- 14 Dec, 2020 28 commits
-
-
- Replace some magic constants with use of layout gravity where possible - Remove some attributes that are set in code anyway - Remove some attributes that are set to their default values - Inline transport controls - Minor naming cleanup PiperOrigin-RevId: 346980595
olly committed -
#exofixit PiperOrigin-RevId: 346975740
krocard committed -
#exofixit PiperOrigin-RevId: 346972678
bachinger committed -
Issue: #8229 #exofixit PiperOrigin-RevId: 346968046
bachinger committed -
This is needed for slomo audio flattening. PiperOrigin-RevId: 346965990
kimvde committed -
PiperOrigin-RevId: 346954787
ibaker committed -
Issue: #5011 PiperOrigin-RevId: 346828103
bachinger committed -
Make the MediaCodecFactory injectable from the constructors of MediaCodecAudioRenderer and MediaCodecVideoRenderer. PiperOrigin-RevId: 346784661
christosts committed -
PiperOrigin-RevId: 346764371
olly committed -
Before this we added the resource info to Truth assertions, but the same info is missing if an exception bubbles out of the SUT. PiperOrigin-RevId: 346757960
ibaker committed -
PiperOrigin-RevId: 346554044
olly committed -
When a listener is removed or released we may not have called onEvents for events that happened before this point. To ensure listeners don't miss events we need to trigger a final onEvents with all events we have happened so far (if any). PiperOrigin-RevId: 346553030
tonihei committed -
In a later change, MediaCoderAdapter.Factory will be injectable to MediaCodecRenderer. PiperOrigin-RevId: 346525171
christosts committed -
PiperOrigin-RevId: 346346359
bachinger committed -
This is useful in cases where the client is not interested in DRM. PiperOrigin-RevId: 346313024
aquilescanta committed -
PiperOrigin-RevId: 346270250
kimvde committed -
Fix Matroska, Heif, FLAC, Ogg, Opus, Vorbis extractor nullness check. There should be no functional change. Every media that fail to be parsed should still fail. Every media that parsed successfully should still succeed. This refactor aims to push all nullness constraints up the call stack to clarify each API nullness contract. This ensures implementation and caller have to prove their respective contract close to where such logic is implemented. This also allows to fail early if an nullness contract is broken instead of deep in the call stack. For example, by adding a requirement that all implementation of `StreamReader.readHeaders` have to initialize `setupData.format` if the return false, each overriding method is forced to prove this next to the logic initializing it. This also means the runtime check might not be needed because the nullnessChecker can prove itself the contract holds. This is in contrast with adding a null check at the point of usage, which will not catch logic errors where they are produce, but later when they are perceived; making it harder to debug and catching the issue at run time instead of compile time. #exofixit PiperOrigin-RevId: 346163124
krocard committed -
This will allow Player to move in common without trackSelector and all its many dependency. Currently all users of `getTrackSelector` are downcasting it in `DefaultTrackSelector`, this change thus does not break them. Track selection API is intended to be reworked, methods will be added to the currently empty interface. #player-to-common PiperOrigin-RevId: 346159765
krocard committed -
This is needed to move Player in common. #player-to-common PiperOrigin-RevId: 346157905
krocard committed -
This is needed to move ExoPlayerException in common. The follow up cl moves MediaPeriodId completely. #player-to-common PiperOrigin-RevId: 346133091
krocard committed -
Issue: #5011 PiperOrigin-RevId: 346080748
bachinger committed -
Issue: #3750 PiperOrigin-RevId: 346079830
andrewlewis committed -
Issue:#8295 PiperOrigin-RevId: 346064966
kimvde committed -
Issue: #8308 #minor-release PiperOrigin-RevId: 345707141
aquilescanta committed -
Avoid duplicating the values. #player-to-common PiperOrigin-RevId: 345642356
krocard committed -
Retrieve the capture frame rate and the SVC temporal layer count from the smta box instead of the meta box because this is what Samsung do. It is not guaranteed that the meta box will be present and will contain all the necessary info in all slomo files. PiperOrigin-RevId: 345639680
kimvde committed -
PiperOrigin-RevId: 345624512
bachinger committed -
PiperOrigin-RevId: 345489364
olly committed
-
- 03 Dec, 2020 12 commits
-
-
Previously the helper would constantly lose (or never establish) sync for non-1x playback speeds. This changes the helper to account for other playback speeds correctly. PiperOrigin-RevId: 345458859
olly committed -
This was reported for SSA/ASS in PR #8265, but it seems to me the SubRip part of the Matroska spec is similarly loose, so this change handles null-terminated strings in both. #minor-release PiperOrigin-RevId: 345452667
ibaker committed -
The old tag reflects the original name of this class. It was renamed in 2017: <unknown commit> Possibly the old name was kept for compatibility with existing logs analysis? I didn't see an explicit discussion of this in the review comments of the rename change. The current tag confused me slightly - I assumed a line was being emitted by the android.media.AudioTrack rather than ExoPlayer's DefaultAudioSink. PiperOrigin-RevId: 345450056
ibaker committed -
PiperOrigin-RevId: 345442367
olly committed -
Issue: #5011 PiperOrigin-RevId: 345440697
bachinger committed -
This will mean the track is automatically used when running in a playback test. Command used to change the flag: ``` $ mkvpropedit sample_with_srt.mkv --edit track:3 --set flag-default=1 ``` PiperOrigin-RevId: 345436666
ibaker committed -
This is currently flaky, so it's better to disable it than end up with flaky tests. PiperOrigin-RevId: 345436319
ibaker committed -
PiperOrigin-RevId: 345428731
Oliver Woodman committed -
Issue: #5011 PiperOrigin-RevId: 345425048
bachinger committed -
Migrate all classes that are simple to move to common. #player-to-common PiperOrigin-RevId: 345412080
krocard committed -
The `AudioProcessor` interface requires that no more input is queued after queueing end of stream, but `DefaultAudioSink` did queue more input and the implementation of `SonicAudioProcessor` actually relied on this to drain output at the end of the stream. Fix this behavior by getting `Sonic` output in `getOutput` and having `DefaultAudioSink` only queue input to processors that are not draining. Also add TODOs to clean up audio processor implementations where the code handles interaction that doesn't conform to the interface. PiperOrigin-RevId: 345406478
andrewlewis committed -
PiperOrigin-RevId: 345398603
krocard committed
-