- 19 Nov, 2021 9 commits
-
-
Robolectric uses the JRE HttpURLConnection [1], while real Android devices and emulators use OkHttp to implement HttpURLConnection. This can lead to important differences in behaviour, so it's better to use instrumentation tests when specific HTTP behaviour is important. [1] https://github.com/robolectric/robolectric/issues/6769#issuecomment-943556156 PiperOrigin-RevId: 408840295
ibaker committed -
#minor-release PiperOrigin-RevId: 408825328
ibaker committed -
The setters in the Builder are already deprecated and using the old getter is error-prone as they only return the overrides set with the deprecated setters. Issue: google/ExoPlayer#9665 PiperOrigin-RevId: 408817640
tonihei committed -
PiperOrigin-RevId: 408816643
Ian Baker committed -
The `VideoSamplePipeline` handles all steps from decoding to re-encoding that where previously in `TransformerTranscodingVideoRenderer`. The renderer is now only responsible for reading the format, reading input, passing it to the pipeline and passing the pipeline's output to the muxer. When no transformations are needed, decoding and re-encoding is skipped using the `PassthroughPipeline`. PiperOrigin-RevId: 408619407
hschlueter committed -
We can rename the existing setIndex method to a more generic init as this method is only called by EPII and implemented by BaseRenderer anyway. PiperOrigin-RevId: 408616055
tonihei committed -
Follow-up to address comments from https://github.com/androidx/media/commit/d8b9d378d9145c1e074e4dfd3a791fde912e154c. PiperOrigin-RevId: 408600470
hschlueter committed -
#minor-release PiperOrigin-RevId: 408550935
kimvde committed -
When dropping the remainder, the decoder and encoder timestamps start diverging after a few buffers when no speed changes are supposed to occur. Tracking the remainder keeps them in sync. PiperOrigin-RevId: 408341074
hschlueter committed
-
- 09 Nov, 2021 31 commits
-
-
#minor-release Issue: google/ExoPlayer#9660 PiperOrigin-RevId: 408323173
tonihei committed -
This is needed to ensure the deprecation warning appears on usages in Android Studio and in javadoc. #minor-release PiperOrigin-RevId: 408319182
ibaker committed -
PiperOrigin-RevId: 408311942
ibaker committed -
Each test exercises one of the setters. Together they assert that both setters set both fields. PiperOrigin-RevId: 408309207
ibaker committed -
#minor-release PiperOrigin-RevId: 408304187
ibaker committed -
The platform class is only available from API 31, so we need a generic wrapper that can be used on all API levels. The wrapper essentially provides an identifier for a player instance, so naming it accordingly. PiperOrigin-RevId: 408292802
tonihei committed -
And in a couple of related places. This is for consistency with the rest of the codebase where we exclusively use indices. #minor-release PiperOrigin-RevId: 408273372
tonihei committed -
#minor-release PiperOrigin-RevId: 408269341
tonihei committed -
SessionResult stores SystemClock.elapsedRealtime() into this.completionTimeMs, so a statically initialized instance will have a meaningless value. PiperOrigin-RevId: 407865809
ibaker committed -
#minor-release PiperOrigin-RevId: 407847729
ibaker committed -
#minor-release PiperOrigin-RevId: 407843859
ibaker committed -
The ExoPlayer.Builder constructor overloads are only needed for apps trying to ensure certain classes are removed by R8/proguard, which isn't relevant for the demo app. PiperOrigin-RevId: 407819694
ibaker committed -
PiperOrigin-RevId: 407807694
tonihei committed -
When operating the MediaCodec in asynchronous mode, after a MediaCodec.flush(), we start MediaCodec in the callback thread, which might trigger errors in some platforms. This change adds an experimental flag to move the call to MediaCodec.start() back to the playback thread. PiperOrigin-RevId: 407801013
christosts committed -
When we have multiple overrides for TrackGroups associated with one renderer, we need to look at all of them to find the non-empty one. Empty ones should only be used to remove previously selected tracks for this group and otherwise be ignored. Currently this is broken because the first override (no matter if it's empty or not) is used as the final selection for this renderer. Issue: google/ExoPlayer#9649 #minor-release PiperOrigin-RevId: 407792330
tonihei committed -
When no transformation is needed, the passthrough pipeline allows us to skip decoding and re-encoding. PiperOrigin-RevId: 407789767
hschlueter committed -
PiperOrigin-RevId: 407787258
ibaker committed -
PiperOrigin-RevId: 407635099
christosts committed -
* Remove GlUtil.Program String[] constructor to unify and just use the String constructor. * Add getAttributeArrayLocationAndEnable() to simplify things a tiny bit. * Increase usage of constant values. PiperOrigin-RevId: 407570340
huangdarwin committed -
`TransformerAudioRenderer` reads input and passes `DecoderInputBuffer`s to the `AudioSamplePipeline`. The `AudioSamplePipeline` handles all steps from decoding to encoding. `TransformerAudioRenderer` receives `DecoderInputBuffer`s from the `AudioSamplePipeline` and passes their data to the muxer. `AudioSamplePipeline` implements a new interface `SamplePipeline`. A pass-through pipeline will be added in a future cl. PiperOrigin-RevId: 407555102
hschlueter committed -
PiperOrigin-RevId: 407540705
olly committed -
If the number of samples changes, the sizes will help us to verify whether they are just split differently or extra data was added. PiperOrigin-RevId: 407346280
hschlueter committed -
Add protected method DefaultRenderersFactory.getCodecAdapter(), so that subclasses of DefaultRenderersFactory that override buildVideoRenderers() or buildAudioRenderers() can access the DefaultRenderersFactory codec adapter factory and pass it to MediaCodecRenderer instances they may create. #minor-release PiperOrigin-RevId: 407345431
christosts committed -
This cause the muxer to fail to stop on older devices/API levels. #minor-release PiperOrigin-RevId: 407309028
samrobinson committed -
This refactoring is the basis to support RF64 (see Issue: google/ExoPlayer#9543). #minor-release PiperOrigin-RevId: 407301056
kimvde committed -
This commit doesn't resolve all the violations. Specifically, INDEX_UNSET is still being incorrectly passed as various IntDef values to the PlayerInfo constructor, but making these parameters (and the corresponding PlayerInfo fields) @Nullable is a more involved change (and it's not obvious at what point we can guarantee the value will be non-null/non-INDEX_UNSET), so it's left for a later commit. PiperOrigin-RevId: 407294091
ibaker committed -
PiperOrigin-RevId: 407274072
olly committed -
PiperOrigin-RevId: 407162673
tonihei committed -
#minor-release PiperOrigin-RevId: 407136922
aquilescanta committed -
These warnings are caused by the fact that this is a library and the lint check doesn't see any app using the library in a TV context. PiperOrigin-RevId: 407110725
tonihei committed -
#minor-release PiperOrigin-RevId: 407086818
samrobinson committed
-