- 10 Jul, 2020 5 commits
-
-
Issue: #7592 PiperOrigin-RevId: 320556981
kimvde committed -
DecoderCounters are reset in onEnabled, but the way the local counters in MediaCodecVideoRenderers were reset assumed the DecoderCounters were reset in onStarted. PiperOrigin-RevId: 320440991
olly committed -
Building on the Format that was provided on the input side of the decoder creates a format that's a mixture of the formats on the input and output sides of the decoder. This change instead builds a PCM format from scratch. PiperOrigin-RevId: 320405656
olly committed -
The counter was increased by one for each batch instead of each frame. PiperOrigin-RevId: 320396903
krocard committed -
The renderers are currently constructing formats that consist of their input format with added PCM encoding. Such formats are not self-consistent, and this only works because DefaultAudioSink ignores the rest of the format if the format has a PCM encoding. It would not work if the sink implementation checked the MIME type, for example, which wouldn't be a strange or incorrect thing for it to do. The more correct approach is to construct a new format that properly represents the PCM that will be provided to the sink. This change also renames supportsOutput to supportsFormat, because AudioSink itself has both an input and an output side, and this method is actually evaluating support on the input side of the sink. PiperOrigin-RevId: 320396089
olly committed
-
- 09 Jul, 2020 3 commits
-
-
PiperOrigin-RevId: 320351394
jaewan committed -
PiperOrigin-RevId: 320323388
insun committed -
The receiving code was updated in: https://github.com/google/ExoPlayer/commit/7b82a3c8892a2b90fa1121dc6bfad7817ae03944 but this sending site was missed. PiperOrigin-RevId: 320173033
ibaker committed
-
- 08 Jul, 2020 18 commits
-
-
PiperOrigin-RevId: 320172040
ibaker committed -
This is useful for subclasses to easily query the point up to which they should only decode (but not render) content, rather than each subclass having to have its own startPositionUs and update it in onPositionReset. PiperOrigin-RevId: 320163677
olly committed -
https://github.com/google/ExoPlayer/commit/252bf43bf450a0f42fd06178c1dc82062d227b29
*** Original commit *** Stop parsing unsupported WebVTT CSS properties The spec lists an exhaustive list of CSS properties that should be recognised, all others must be ignored: https://www.w3.org/TR/webvtt1/#the-cue-pseudo-element *** PiperOrigin-RevId: 320150427
ibaker committed -
PiperOrigin-RevId: 320149613
olly committed -
This constructor and the way of passing BandwdithMeter has long been deprecated now and can be removed. PiperOrigin-RevId: 320147888
tonihei committed -
This also removes unused deprecated methods. PiperOrigin-RevId: 320141729
insun committed -
https://github.com/google/ExoPlayer/commit/75eab31d79aae73196a60fb24474da2a36855c4a
*** Original commit *** Rollback of https://github.com/google/ExoPlayer/commit/0943886cbd7ee6c4e33ed731ddff0b23e5699abd *** Original commit *** Use last queue format instead of previous decision to select new track We currently use the save... *** PiperOrigin-RevId: 320015109
tonihei committed -
PiperOrigin-RevId: 320006659
olly committed -
https://github.com/google/ExoPlayer/commit/0943886cbd7ee6c4e33ed731ddff0b23e5699abd
*** Original commit *** Use last queue format instead of previous decision to select new track We currently use the saved selectionIndex to base our new track selection decision on. This index might be stale if the previous selection didn't result in a queue update (e.g. when loading live streams where the new chunk isn't available yet). Fix this by using the format of the last chunk to make the new decision. Issue: #7582 *** PiperOrigin-RevId: 319991676
tonihei committed -
PiperOrigin-RevId: 319989989
ibaker committed -
Also move implementations of some VideoAdPlayer callback methods into their own methods. This is a no-op change except for expanding the scope of some defensive try blocks associated with those callbacks. Also add static imports for Math.max and Assertions helpers methods. PiperOrigin-RevId: 319958087
andrewlewis committed -
We currently use the saved selectionIndex to base our new track selection decision on. This index might be stale if the previous selection didn't result in a queue update (e.g. when loading live streams where the new chunk isn't available yet). Fix this by using the format of the last chunk to make the new decision. Issue: #7582 PiperOrigin-RevId: 319957980
tonihei committed -
PiperOrigin-RevId: 319954774
kim-vde committed -
The wait time parameter is an implementation detail where we can just provide a default. In addition, we should also force the evaluation when the last chunk in the queue changed to ensure it is always evaluated before starting to load a new chunk. Issue: #7582 PiperOrigin-RevId: 319949251
tonihei committed -
Remove occurrences in comments and private fields. ISSUE: #7565 PiperOrigin-RevId: 319828820
kimvde committed -
ExoMediaCrypto with the sole purpose of being unsupported. So all renderers checking whether the type is supported will report encrypted content as unsupported, unless the source producing the format replaces it with a valid value. PiperOrigin-RevId: 319824703
aquilescanta committed -
This is a partial revert of https://github.com/google/ExoPlayer/commit/0a2bacb7b7ca9a3e88962dbeaaa86f10f0e83b2a. I've added a comment explaining why the code path is necessary after all, to avoid future confusion. PiperOrigin-RevId: 319822696
olly committed -
PiperOrigin-RevId: 319798613
olly committed
-
- 06 Jul, 2020 10 commits
-
-
Clearing the exception puts the SimpleDecoder into a silent failure state - the decoder thread is dead (because decode() has returned false) but it's still possible to queue buffers to the decoder (they just never get decoded). This partially reverts https://github.com/google/ExoPlayer/commit/4107375c9d21136090d0071b04a498024eec6a4c Also always recreate the decoder when handling an error in TextRenderer This ensures we can try and decode a later subtitle sample after encountering a decode error. This behaviour is what nulling out the exception in SimpleDecoder.flush() was trying to achieve. We need to ensure we don't start passing data to the new decoder until we've hit the next key frame, so we throw away any non-keyframe samples inside TextRenderer#render(). Issue: #7590 PiperOrigin-RevId: 319785908
ibaker committed -
PiperOrigin-RevId: 319784140
ibaker committed -
PiperOrigin-RevId: 319764381
andrewlewis committed -
ISSUE: #7308 PiperOrigin-RevId: 319747742
kimvde committed -
Issue: #7584 PiperOrigin-RevId: 319744023
kimvde committed -
We currently try to keep track of the playback queue (MediaPeriodQueue) by listening to onMediaPeriodCreated/onMediaPeriodReleased events. This approach has some problems: 1. It's easily broken by custom MediaSources that don't report these events correctly. 2. We need to make some assumptions about what the order of these events actually means. For example it is currently important that the playing period gets released last in MediaPeriodQueue.clear() 3. We don't see batched events (like MediaPeriodQueue.clear()), so that it is impossible to keep the "last reading period" for example. This information is needed to correctly associate renderer errors to periods after the queue has been cleared. All of these problems can be solved by directly tracking the queue. This also makes the onMediaPeriodCreated/Released/ReadingStarted events obsolete and they can be removed in a future change. PiperOrigin-RevId: 319739993tonihei committed -
ISSUE: #7565 PiperOrigin-RevId: 319734842
kimvde committed -
ISSUE: #7308 PiperOrigin-RevId: 319541273
kimvde committed -
ISSUE: #7565 PiperOrigin-RevId: 319536055
kimvde committed -
PiperOrigin-RevId: 319520755
ibaker committed
-
- 04 Jul, 2020 1 commit
-
-
Chang Xiangzhong committed
-
- 03 Jul, 2020 3 commits
-
-
It applies only to regions: https://www.w3.org/TR/2018/REC-ttml2-20181108/#style-attribute-writingMode PiperOrigin-RevId: 319515547
ibaker committed -
The current code only works if the tts:ruby attributes are defined directly on the in-line elements. This changes that so we also consider tts:ruby attributes on `style` nodes referenced by ID. PiperOrigin-RevId: 319515177
ibaker committed -
We don't need the renderer immediately after stopping, so the renderer should not throw a checked exception until it's used again. This is inline with the not throwing from disable(). Also, none of the known implementation throw an exception at the moment and all reasonable base classes omit the throws clause already. PiperOrigin-RevId: 319503643
tonihei committed
-