- 27 Jan, 2020 7 commits
-
-
There are existing bugs that need this flag to know whether the current information in the window is still a placeholder or can already be relied on for further calculation. This flag will probably only ever be set in DummyTimeline, so it's not added to the window.set method to avoid updating all clients. Issue:#5924 PiperOrigin-RevId: 291705637
tonihei committed -
PiperOrigin-RevId: 291702471
kimvde committed -
OkHttp 3.12.7 introduced a regression, which was fixed in 3.12.8. PiperOrigin-RevId: 291695577
olly committed -
The tests for the extractor module rely on some core classes. PiperOrigin-RevId: 291688932
andrewlewis committed -
PiperOrigin-RevId: 291405419
kimvde committed -
PiperOrigin-RevId: 291401328
olly committed -
PiperOrigin-RevId: 291397882
kimvde committed
-
- 24 Jan, 2020 33 commits
-
-
PiperOrigin-RevId: 291394101
andrewlewis committed -
PiperOrigin-RevId: 291378636
andrewlewis committed -
It could either live in .util or .extractor, but since it's not needed outside the extractor package in core (and the FLAC extension), and FlacStreamMetadataTest uses a FLAC asset, it seems preferable to move it into the extractor package. PiperOrigin-RevId: 291372032
andrewlewis committed -
CeaUtil depends on TrackOutput so should live in the extractors package. To avoid having Cea708Decoder depend on extractors, this change also moves the initialization data building/parsing to CodecSpecificDataUtil. PiperOrigin-RevId: 291348317
andrewlewis committed -
PiperOrigin-RevId: 291340508
aquilescanta committed -
PiperOrigin-RevId: 291207668
olly committed -
Improve unit tests of binary search methods by making them more behavior-driven. PiperOrigin-RevId: 291175304
kimvde committed -
The deleted path was only used if resetPosition=false and clearPlaylist=true, which is never the case. PiperOrigin-RevId: 291154550
tonihei committed -
Since we have the Playlist layer on top, it's always guaranteed that a new playlist item has a new uid. So we can just keep the old one in all cases and don't have to be careful to delete it. The deletion was necessary previously in case multiple MediaSources use the same uids. PiperOrigin-RevId: 291152349
tonihei committed -
Move Cea708InitializationData functionality into CeaUtil and delete the class. Move CeaUtil to the util package as it needs to be used both in extraction and decoding. PiperOrigin-RevId: 291128220
andrewlewis committed -
PiperOrigin-RevId: 291125686
andrewlewis committed -
PiperOrigin-RevId: 290934472
andrewlewis committed -
Move player messages and scaling modes to Renderer. Remove @links to ExoPlayer AudioAttributes and renderers. PiperOrigin-RevId: 290932785
andrewlewis committed -
PiperOrigin-RevId: 290910992
christosts committed -
Currently we only do this for the main sample URI, not for subtitles. So pairing a web-based video file with a local subtitle file on a fresh install just throws a 'permission denied' exception. PiperOrigin-RevId: 290794091
ibaker committed -
The only remaining use is to provide the initial position for the first media period in the queue. At this point, the value is always equivalent to PlaybackInfo.positionUs because they are set together to the same value in PlaybackInfo.copyWithNewPosition. PiperOrigin-RevId: 290749294
tonihei committed -
We have a flag that gets turned on if the current playback position has been reset, so that messages from this reset position can be triggered. This mechanism isn't actually depending on the startPositionUs field because it should always be triggered in the first iteration with the new position. PiperOrigin-RevId: 290749201
tonihei committed -
There are a couple of problems with how positions in PlaybackInfo are set at the moment: 1. PositionUs isn't allowed to be C.TIME_UNSET. This is prevented by always resolving to the current default position if needed. 2. In some places a window position was used as a period position. Use correct position resolution procedure. 3. When creating a placeholder position to restart playback, we used the first period in a window, not the one where the default position is. 4. The start position for ads was in some cases set to 0 without checking the ad resume position. PiperOrigin-RevId: 290749042
tonihei committed -
Add queueInputBuffer() and queueSecureInputBuffer() in MediaCodecAdapter. PiperOrigin-RevId: 290720307
christosts committed -
Once EOS has been read, that will be returned every time readData is called. EOS needs to be an item in the items. PiperOrigin-RevId: 290715513
samrobinson committed -
PiperOrigin-RevId: 290712014
ibaker committed -
This avoids keeping a redundant (and potentially out of sync) copy of the same info in builderLength. PiperOrigin-RevId: 290709360
ibaker committed -
I needed to use Cue.Builder instead of just SpannableStringBuilder for the regionOutput values, so I could attach the vertical info where appropriate (since this is a property of the Cue, not a span). PiperOrigin-RevId: 290709294
ibaker committed -
PiperOrigin-RevId: 290629644
ibaker committed -
If an exception is thrown between updating the timeline and updating the position in playbackInfo, the state may be inconsistent. Exceptions are expected to be thrown while updating the player state and we should handle such cases in a consistent way. Similar to how we handle the same situation in seekToInternal, the state is updated in a final block such that it gets updated to the latest state even if an error occurs. Moving both the timeline and position update together also ensures they always stay consistent. PiperOrigin-RevId: 290624020
tonihei committed -
This restructure moves all the position resolving code to a static method and removes the dependency of the MediaPeriodQueue on having an up-to-date timeline. Both steps allow simplified reasoning about the code as the static method can't change the state of the player, and there is no risk the queue can use the wrong timeline. These propoerties allow to fix a bug causing inconsistent states in a follow-up step. PiperOrigin-RevId: 290616395
tonihei committed -
Allows items to be added to the queue once the sample stream has already been created. Means tests can simulate data not all being available at the start. PiperOrigin-RevId: 290613392
samrobinson committed -
Also de-dupe a couple of case statements PiperOrigin-RevId: 290610993
ibaker committed -
PiperOrigin-RevId: 290610936
ibaker committed -
PiperOrigin-RevId: 290610312
ibaker committed -
It's never assigned or accessed from outside the class. It was added in <unknown commit> then the accessor was removed in <unknown commit> PiperOrigin-RevId: 290601998
ibaker committed -
PiperOrigin-RevId: 290600248
andrewlewis committed
-