- 15 Nov, 2021 7 commits
-
-
And make related release notes updates. PiperOrigin-RevId: 409991879
tonihei committed -
We already parse essential and supplemental properties from the Representation, but don't add them to our Representation class so that they can be accessed by users. Issue: google/ExoPlayer#9579 PiperOrigin-RevId: 409961990
tonihei committed -
The main point of the IDLE state is that the player is not holding resources. Clarify this in the documentation of STATE_IDLE, prepare and stop. PiperOrigin-RevId: 409950785
tonihei committed -
Creating a new set of overrides removes previously set overrides that should be kept. Issue: google/ExoPlayer#9690 PiperOrigin-RevId: 409933541
tonihei committed -
The decoder writes to `OpenGlFrameEditor`'s input `Surface` and the `OpenGlFrameEditor` writes to the encoder's input `Surface`. PiperOrigin-RevId: 409931796
hschlueter committed -
- Unnecessary deprecation suppressions - Dead code - Broken Javadoc PiperOrigin-RevId: 409357884
olly committed -
Note: Updating androidxTestTruthVersion is required tot arget API level 31. PiperOrigin-RevId: 409167744
olly committed
-
- 11 Nov, 2021 17 commits
-
-
Due to sharding, each test should be in a separate class. PiperOrigin-RevId: 409142436
samrobinson committed -
PiperOrigin-RevId: 409129177
tonihei committed -
Currently, TrackSelectionOverrides are documented as being applied per track type, meaning that one override for a type disables all other selections for the same track type. However, the actual implementation only applies it per track group, relying on the track selector to never select another renderer of the same type. This change fixes DefaultTrackSelector to fully adhere to the TrackSelectionsOverride definition. This solves problems when overriding tracks for extension renderers (see Issue: google/ExoPlayer#9675) and also simplifies a workaround added to StyledPlayerView. #minor-release PiperOrigin-RevId: 409121711
tonihei committed -
The asynchronous MediaCodec adapter queues input buffers in a background thread. If a codec queueuing operation throws an exception, the buffer enqueuer will store it as a pending exception and re-throw it the next time the adapter will attempt to queue another input buffer. The buffer enqueuer's flush() and shutdown() may throw an exception if the pending error is set. This is subject to a race-condition in which the pending error can be set while the adapter is flushing/shutting down the enqueuer, e.g., if an input buffer is still being queued and the codec throws an exception. As a result, the adapter cannot flush or shutdown gracefully. This change makes the buffer enqueuer to ignore any pending error when flushing/shuttinf down so that the adapter can flush/release gracefully even if a queueing error was detected. PiperOrigin-RevId: 409113054
christosts committed -
This method is helpful when iterating the list of track overrides to figure out which type the override applies to. Issue: google/ExoPlayer#9665 PiperOrigin-RevId: 409108977
tonihei committed -
We only had some documentation for a custom shuffle mode, but none for generic repeat or shuffle modes. #minor-release Issue: google/ExoPlayer#9611 PiperOrigin-RevId: 409089623
tonihei committed -
The Javadoc of DefaultTrackSelector can be shortened as it's not the right place to document detailed options of the Player track selection parameters. The documentation page about track selection is updated to the new APIs and extended with most relevant options and information needed to work with ExoPlayer's track selection API. #minor-release PiperOrigin-RevId: 409088989
tonihei committed -
MediaSource can be reused with other Player instances after they have been released, so we need to set the PlayerId when preparing the source. Access can mostly be handled by the implementation in BaseMediaSource. PiperOrigin-RevId: 408878824
tonihei committed -
HTTP header names are case-insensitive, but all the others in this file are 'correctly' cased, so we might as well be consistent. PiperOrigin-RevId: 408840566
ibaker committed -
PiperOrigin-RevId: 408840409
ibaker committed -
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
tonihei 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/google/ExoPlayer/commit/9efa32e49b998c1b2ffd8dcea115138930e76cbe. PiperOrigin-RevId: 408600470
hschlueter committed
-
- 09 Nov, 2021 1 commit
-
-
#minor-release PiperOrigin-RevId: 408550935
kimvde committed
-
- 08 Nov, 2021 15 commits
-
-
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 -
#minor-release PiperOrigin-RevId: 408331834
ibaker committed -
https://github.com/google/ExoPlayer/commit/95e6db931a047775c1aa792c452be7996167a08f
*** Original commit *** Add link to annual media developer survey. This will be removed after the survey has closed in ~1 month. *** PiperOrigin-RevId: 408327757
ibaker committed -
#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 -
olly 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
-