- 07 Aug, 2020 20 commits
-
-
The term "passthrough" was heavily overloaded. For clarity, split most of its usage to different terms: * codec "bypass": no MediaCodec is used * "direct playback": no decoding occurs (but decryption may or may not) * "decrypt only codec": a MediaCodec used only to decrypt, not decode * "offload": playback to an offload AudioTrack. * "passthrough" is now only used in the sense of playing encoded audio * to a non offload AudioTrack. PiperOrigin-RevId: 324984612
krocard committed -
PiperOrigin-RevId: 324941042
gyumin committed -
Issue: Issue: #7611 PiperOrigin-RevId: 324884412
olly committed -
We are not able to associate a codecs attribute to an EXT-X-MEDIA tag if there is no variant with a matching AUDIO GROUP-ID. Lack of codecs string prevents chunkless preparation from determining the track type. Issue: #7678 PiperOrigin-RevId: 324822415
aquilescanta committed -
PiperOrigin-RevId: 324810361
aquilescanta committed -
PiperOrigin-RevId: 324805335
olly committed -
It seems generally useful to have access to the decoder in getOutputFormat. We're currently working around lack of access by using member variables in the concrete audio extension renderers. In the case of the Ffmpeg extension, holding a reference to the decoder is preventing it from being garbage collected when the decoder is released by the base class. PiperOrigin-RevId: 324799670
olly committed -
After discarding upstream we shouldn't reuse the extractor from the (newly) last media chunk because the extractor may have been reused already by the discarded chunks. Also add an assertion to SampleQueue that prevents the hard-to-detect failure mode of overlapping sample byte ranges. Issue: #7690 PiperOrigin-RevId: 324785093
tonihei committed -
The media id defaults to the URI that shouldn't be logged to logcat. PiperOrigin-RevId: 324770157
tonihei committed -
The working of libOpus is different from ffmpeg. With ffmpeg, the decoder can be configured to output floating point PCM. While in libOpus, floating samples are acquired by calling a different function. This is the reason the new JNI functions and the logic in OpusDecoder/LibopusAudioRenderer is added to support float output. PiperOrigin-RevId: 324661603
claincly committed -
More information: https://docs.google.com/a/google.com/document/d/1lzK04DqCZgjOoGQfBT053QIrCvlsyAAwLo0jfqcN6ds/edit?usp=sharing Tested: TAP --sample ran all affected tests and none failed http://test/OCL:324422822:BASE:324408434:1596318556672:a8b3beed PiperOrigin-RevId: 324621068
olly committed -
PiperOrigin-RevId: 324616617
christosts committed -
PiperOrigin-RevId: 324610991
christosts committed -
PiperOrigin-RevId: 324604419
olly committed -
PiperOrigin-RevId: 324599130
christosts committed -
PiperOrigin-RevId: 324579230
olly committed -
Demo app supports clip start/end points and demonstrates manual ad insertions. PiperOrigin-RevId: 324574358
christosts committed -
This callback was not notified before, which could theoretically lead to ad loading timing out. In practice it doesn't currently happen because the timeout appears to start when the ad cue point is reached, not when loadAd is called. We notify onLoaded when the ad media period is prepared (for HTML5 the recommendation is to notify on the HTMLMediaElement 'canplay' event, which this roughly corresponds to). PiperOrigin-RevId: 324568407
andrewlewis committed -
PiperOrigin-RevId: 324560994
olly committed -
PiperOrigin-RevId: 324557397
olly committed
-
- 01 Aug, 2020 18 commits
-
-
Issue: #7677 PiperOrigin-RevId: 324180797
ibaker committed -
Issue: #7244 added this feature to HLS. This change is the exact copy in ChunkSampleStream to add the same support to the other adaptive formats. Note that ChunkSampleStream doesn't support slicing, so we can't cancel a read-from chunk, and we need to prevent reading into an already canceled chunk load so that the chunk can be automatically discarded after the cancelation. Issue: #2848 PiperOrigin-RevId: 324179972
tonihei committed -
PiperOrigin-RevId: 324003583
gyumin committed -
PiperOrigin-RevId: 324002247
ibaker committed -
PiperOrigin-RevId: 323988640
krocard committed -
PiperOrigin-RevId: 323985679
christosts committed -
PiperOrigin-RevId: 323811839
aquilescanta committed -
PiperOrigin-RevId: 323806853
samrobinson committed -
Also add cpu_features to .hgignore. PiperOrigin-RevId: 323804458
aquilescanta committed -
PiperOrigin-RevId: 323769467
christosts committed -
The passthrough codec does not propagate the EOS back to ExoPlayer. Issue: https://github.com/google/ExoPlayer/issues/7647 PiperOrigin-RevId: 323758941
krocard committed -
PiperOrigin-RevId: 323758590
christosts committed -
PiperOrigin-RevId: 323754499
christosts committed -
Wrapping MediaCodec ISEs in MediaCodecDecoderException lets us attach MediaCodecInfo, which contains lots of useful information such as the MediaCodec name, the codec capabilities, etc. PiperOrigin-RevId: 323575782
olly committed -
Tests playSinglePeriodTimeline and playMultiPeriodTimeline are migrated to use TestExoplayer. PiperOrigin-RevId: 323546141
christosts committed -
PiperOrigin-RevId: 323544694
christosts committed -
PiperOrigin-RevId: 323544314
gyumin committed -
PiperOrigin-RevId: 323477041
olly committed
-
- 27 Jul, 2020 2 commits
-
-
https://github.com/google/ExoPlayer/commit/bf5e6c7862ae418895b2b6b26fae9c28aa662ee8
*** Original commit *** Pass startPositionUs into Renderer.replaceStream Plumb this down into BaseRenderer.onStreamChanged and use it when deciding whether to render the first frame of a new period. *** PiperOrigin-RevId: 323447253
olly committed -
PiperOrigin-RevId: 323392470
aquilescanta committed
-