2589 Commits

Author SHA1 Message Date
olly
9b18130ecc Bump to 2.5.2
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=168155713
2017-09-10 16:53:16 +01:00
olly
4c1fd23d8e Add possibility of forcing a specific license URL in HttpMediaDrmCallback
Resubmit of https://github.com/google/ExoPlayer/pull/3136

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=164971900
2017-09-09 01:04:51 +01:00
olly
24b4cb844b Fix attr inheritance in SimpleExoPlayerView
When creating PlaybackControlView inside SimpleExoPlayerView,
we want certain attributes to be passed through. This lets you
set control attributes on the SimpleExoPlayerView directly. We
don't want all attributes to be propagated though; only our own
custom ones.

Not sure if there's a cleaner way to do this. Pragmatically this
solution seems ... ok :)?

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=167619801
2017-09-09 00:57:18 +01:00
olly
a5302be664 Destroy EGLSurface during DummySurface cleanup
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=168020525
2017-09-09 00:50:44 +01:00
olly
cdcdea2f98 DecryptionException cleanup + add missing header
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=167711928
2017-09-09 00:49:52 +01:00
olly
613950143c Workaround for SurfaceView not being hidden properly
This appears to be fixed in Oreo, but given how harmless
the workaround is we can probably just apply it on all
API levels to be sure.

Issue: #3160

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=167709070
2017-09-09 00:49:21 +01:00
olly
8719d41e34 Fix position reporting during ads when period has non-zero window offset.
Reporting incorrect positions for ad playbacks was causing IMA to
think the ad wasn't playing, when in fact it was.

Issue: #3180

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=167702032
2017-09-09 00:49:13 +01:00
olly
d187d294e5 Don't use MediaCodec.setOutputSurface on Nexus 7 with qcom decoder
Issue: #3236

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=167581198
2017-09-09 00:48:36 +01:00
olly
8676c4a0f4 Rewrite logic for enabling secure DummySurface
Issue: #3215

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=167505797
2017-09-09 00:48:21 +01:00
olly
61ee1f6a27 Be robust against unexpected EOS in WebvttCueParser
Issue: #3228

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=167504122
2017-09-09 00:48:15 +01:00
olly
5ceccac63d Additional secure DummySurface device exclusions
Merge: https://github.com/google/ExoPlayer/pull/3225

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=167502127
2017-09-09 00:48:08 +01:00
andrewlewis
a73601f36f Allow EXIF tracks to be exposed
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=167493800
2017-09-09 00:47:13 +01:00
olly
65b14baab8 Update moe eqiuvalence
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=167488837
2017-09-09 00:46:57 +01:00
Oliver Woodman
92185aa33c Minor cleanup to AspectRatioFrameLayout 2017-09-09 00:46:50 +01:00
olly
d942775068 Allow more aggressive switching for HLS with independent segments
We currently switch without downloading overlapping segments, but
we do not actually switch more aggressively. This change fixes
this. Note there's an implicit assumption made that if one media
playlist declares independent segments, the others will too. This
is almost certainly true in practice, and if it's not the penalty
isn't too bad (the player may try and switch to a higher quality
variant one segment's worth of buffer too soon).

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=167120992
2017-09-09 00:46:06 +01:00
andrewlewis
2d4efffd12 Fix ContentDataSource bytesRemaining calculation
The bytesRemaining didn't always take into account any skipped bytes, which
meant that reaching the end of the file was not correctly detected in read().

Issue: #3216

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=167016672
2017-09-09 00:45:58 +01:00
andrewlewis
e70df7c220 Use UTF-8 everywhere
UTF-8 is the default charset on Android so this should be a no-op change, but
makes the code portable (in case it runs on another platform).

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=167011583
2017-09-09 00:45:51 +01:00
Danny Brain
219ad8a73e #3215 Additional secure DummySurface device exclusions 2017-09-09 00:45:30 +01:00
Shyri Villar
3137fcd1ca Add support for new codecs parameter string 2017-09-09 00:45:23 +01:00
andrewlewis
64b1566ad4 Use Math.abs in Sonic.java
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=166820970
2017-09-09 00:44:29 +01:00
andrewlewis
bbb0308295 Allow subclasses to customize the MediaFormat
Make getMediaFormat protected so that subclasses can set additional MediaFormat
keys. For example, if the decoder output needs to be read back via an
ImageReader as YUV data it is necessary to set KEY_COLOR_FORMAT to
COLOR_FormatYUV420Flexible.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=166195211
2017-09-09 00:43:35 +01:00
Bei Yi
b80e3af2c9 Support zoom mode for AspectRatioFrameLayout 2017-09-09 00:43:08 +01:00
Bei Yi
9aa4aa8ff5 Support aspect ratio fill mode for AspectRatioFrameLayout 2017-09-09 00:43:02 +01:00
olly
cc5cfd46c0 Handle size==0 in MP4 atoms
Issue: #3191

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=165925148
2017-09-09 00:42:06 +01:00
tonihei
351b8a60d1 Remove isFirstWindow/isLastWindow from Timeline.
These methods are only used in one place, and offer duplicate
functionality to checking getNext(Previous)WindowIndex == C.INDEX_UNSET.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=165910258
2017-09-09 00:41:47 +01:00
andrewlewis
4c51d386d5 Allow the app to specify extra ad markers
Issue: #3184

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=165895259
2017-09-09 00:40:53 +01:00
Oliver Woodman
47e3b4dc3e Minor style tweaks 2017-09-09 00:40:29 +01:00
Dulmandakh
51dac5838d expose setPropertyByteArray, setPropertyString
export setPropertyByteArray, setPropertyString of DefaultDrmSessionManager for easy customization.
2017-09-09 00:40:26 +01:00
olly
d824aa9db7 Improve MediaSource/MediaPeriod documentation
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=165628229
2017-09-09 00:37:30 +01:00
aquilescanta
38bc289e71 Improve FORMAT_UNSUPPORTED_DRM related documentation and logging
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=165580016
2017-09-09 00:37:16 +01:00
olly
7e9b1fc8ae Work around issue with Xiaomi JB devices
Issue: #3171

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=165577562
2017-09-09 00:36:34 +01:00
andrewlewis
94a5e9bc3a Restore the interrupted flag after blocking operations
If the main thread was interrupted during
ExoPlayerImplInternal.blockingSendMessage/release, the interrupted flag was
immediately set but then wait() was called on the next iteration. wait() would
immediately throw InterruptedException, causing the main thread to spin until
the blocking operation completed.

Instead of resetting the flag immediately, reset it after the blocking
operation completes.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=165426493
2017-09-09 00:35:59 +01:00
olly
0e16c43f0c Destroy GL context when releasing dummy surface
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=165293386
2017-09-09 00:35:31 +01:00
olly
a2a2acfd6a Disable secure dummy surface on all Samsung N devices
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=165291627
2017-09-09 00:35:12 +01:00
mdoucleff
e198667251 Add flag to CachedContentIndex to disable encryption. This allows the encryption feature
to be disabled gracefully: encrypted index files may be read, but plaintext will be written.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=165196508
2017-09-09 00:35:00 +01:00
Bei Yi
7bde58a46d Support crop mode for AspectRatioFrameLayout 2017-09-09 00:34:28 +01:00
Danny Brain
85d6c0f0a9 Fix possible subrip timing line NPE 2017-09-09 00:34:14 +01:00
WeiChungChang
44fa0b446e Support H262 video in MP4 2017-09-09 00:34:01 +01:00
Oliver Woodman
b9ead4b7d1 Restrict usage of secure DummySurface for all Samsung devices. 2017-09-09 00:33:50 +01:00
olly
1f20e6f31e Fix maskingX variables when timeline becomes empty
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=164840037
2017-09-09 00:33:31 +01:00
olly
99f603c404 Support multiple video/text/metadata outputs
We've seen more than one issue filed where a developer has
registered a video listener and been confused by the fact
their SimpleExoPlayerView no longer works properly. There
are also valid use cases for having multiple metadata/text
outputs.

Issue: #2933
Issue: #2800
Issue: #2286
Issue: #2240

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=164839882
2017-09-09 00:33:18 +01:00
olly
154f17ef1e Fix minor Javadoc error
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=164706078
2017-09-09 00:32:24 +01:00
olly
74e8acf14f Minimal change to expose segment indices in DefaultDashChunkSource
Issue: #3037

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=164614478
2017-09-09 00:31:39 +01:00
ojw28
61078078df Revert "expose setPropertyByteArray, setPropertyString" 2017-08-17 23:11:44 +01:00
Dulmandakh
65e212c409 expose setPropertyByteArray, setPropertyString
export setPropertyByteArray, setPropertyString of DefaultDrmSessionManager for easy customization.
2017-08-09 15:42:58 +09:00
olly
a6fd4bdaf0 Support clip end greater than the child's duration
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=164577001
2017-08-08 16:50:00 +01:00
olly
13bcc0062e Don't release a surface until we've stopped using it
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=164596062
2017-08-08 16:49:50 +01:00
olly
c1827b10b6 Bump to 2.5.1
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=164595874
2017-08-08 16:49:32 +01:00
olly
371f675ae8 Fix missing source info refresh notification
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=164502580
2017-08-08 16:49:03 +01:00
eguven
e713ddc22d Disable test coverage again
https://issuetracker.google.com/issues/37019591 causes local variables can't be found while debugging.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=164449443
2017-08-07 13:43:03 +01:00