-
Notifications
You must be signed in to change notification settings - Fork 389
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
1.0.1 #336
Merged
Merged
1.0.1 #336
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
The `@CallSuper` annotation should help catch cases where subclasses are calling `delegate.addListener` instead of `super.addListener` but it will also (unintentionally) prevent subclasses from either completely no-opping the listener registration, or implementing it themselves in a very custom way. I think that's probably OK, since these cases are probably unusual, and they should be able to suppress the warning/error. Issue: #258 #minor-release PiperOrigin-RevId: 513848402 (cherry picked from commit 5d23a92)
Segment timelines are technically allowed to be empty, but not all places add the necessary checks. Issue: google/ExoPlayer#11014 PiperOrigin-RevId: 514722205 (cherry picked from commit 788132b)
PiperOrigin-RevId: 517067549 (cherry picked from commit 49d85d6)
#minor-release PiperOrigin-RevId: 517086016 (cherry picked from commit 8a5fcf8)
PiperOrigin-RevId: 517128752 (cherry picked from commit 0e3f407)
If RTSP Setup Request with UDP receives HTTP Error Status 461 UnsupportedTransport, then client will retry with TCP. Issue: google/ExoPlayer#11069 PiperOrigin-RevId: 518807829 (cherry picked from commit ecf4d8b)
PiperOrigin-RevId: 518953648 (cherry picked from commit dc3481f)
When MediaCodecRenderer is given an empty sample stream, it puts its output format change tracking in a bad state where we never process future stream changes because we are waiting for a sample that doesn't exist. We can fix this by: - Looping the pending output stream changes to see if we processed more than one change at once (this fixes the tracking for empty sample streams that are not the first in the queue). - Checking if none of the previous streams queued any samples in onStreamChanged to handle this in the same way as the case where we already output all samples (this fixes the problem when the empty sample stream comes first in the queue). - Also calling onProcessedStreamChange for the case above, which was missing previously. #minor-release PiperOrigin-RevId: 519226637 (cherry picked from commit b9790e6)
`DefaultDrmSession(Manager)` expect most of their methods to be called on the 'playback thread'. There isn't a playback thread in the case of `OfflineLicenseHelper`, but in that case it's the thread backing `DefaultDrmSessionManager.playbackLooper`, which is `OfflineLicenseHelper.handlerThread`. PiperOrigin-RevId: 520053006 (cherry picked from commit 376bdde)
PiperOrigin-RevId: 520314781 (cherry picked from commit 6952771)
The media3-hosted versions of these SVGs were removed due to a change in the way the reference docs are generated. While work on getting them hosted on developer.android.com, this change simply links to the (identical) exoplayer2 versions in order to fix the media3 docs. #minor-release PiperOrigin-RevId: 520647905 (cherry picked from commit 2e4f49f)
PiperOrigin-RevId: 520709134 (cherry picked from commit 5af28a9)
Issue: google/ExoPlayer#11008 PiperOrigin-RevId: 520864579 (cherry picked from commit 7ca9668)
The check currently relies on the default value of 0 returned if the Bundle doesn't define a pid. But in some cases, like Robolectric unit tests, 0 is a possible pid. The check can be improved by directly asserting that the value is defined. PiperOrigin-RevId: 521414649 (cherry picked from commit 694d690)
As most classes are used via interface only and people depending on it locally can always find the Javadoc in Android Studio directly, we don't plan to add Javadocs for these extensions module in developer.android.com. PiperOrigin-RevId: 521993756 (cherry picked from commit e4cb583)
MediaItems are not meant to be unique in a playlist. If a legacy session publishes multiple items that get converted to equal MediaItems, the current code fails because we look up queue ids in a Map (that doesn't allow duplicate entries). Fix this by storing a simple list of items with additional data. Issue: #290 PiperOrigin-RevId: 521993802 (cherry picked from commit 219967c)
The button gets only updated after an onTracksChanged callback but isn't set to the initial state similar to other changes triggered by callbacks (e.g. updateRepeatSwitchUI) PiperOrigin-RevId: 522274800 (cherry picked from commit 14ba173)
PiperOrigin-RevId: 523361561 (cherry picked from commit be85684)
Change what format is logged from MediaCodecAudioRenderer when AudioSink throws InitializationException. We printed the AudioSink's format, which most of the times is audio/raw (PCM) and not the renderer's format. With this change both formats are logged. #minor-release Issue: google/ExoPlayer#11066 PiperOrigin-RevId: 523456840 (cherry picked from commit baf1aa1)
PiperOrigin-RevId: 523633865 (cherry picked from commit ae87564)
This change selects the best suited media button receiver component and pending intent when creating the legacy session. This is important to ensure that a service can be started with a media button event from BT headsets after the app has been terminated. The `MediaSessionLegacyStub` selects the best suited receiver to be passed to the `MediaSessionCompat` constructor. 1. When the app has declared a broadcast receiver for `ACTION_MEDIA_BUTTON` in the manifest, this broadcast receiver is used. 2. When the session is housed in a service, the service component is used as a fallback. 3. As a last resort a receiver is created at runtime. When the `MediaSessionLegacyStub` is released, the media button receiver is removed unless the app has provided a media button receiver in the manifest. In this case we assume the app supports resuming when the BT play intent arrives at `MediaSessionService.onStartCommand`. Issue: #167 Issue: #27 Issue: #314 PiperOrigin-RevId: 523638051 (cherry picked from commit e54a934)
#minor-release PiperOrigin-RevId: 523708424 (cherry picked from commit 81fd9d2)
#minor-release PiperOrigin-RevId: 523959161 (cherry picked from commit e033dba)
#minor-release PiperOrigin-RevId: 523983688 (cherry picked from commit 596a7c7)
The overrides specified by a MediaController may not use the exact same TrackGroup instances as known to the Player because the groups have been bundled to and from the controller. This bundling may alter the instance slightly depending on the version used on each side of the communication and the fields set (e.g. Format.metadata is not supported for bundling). This issue can be solved by creating unique track group ids for each group on the session side before bundling. On the way back, the groups in the track selection parameters can be mapped backed to their original instances based on this id. Issue: #296 PiperOrigin-RevId: 523986626 (cherry picked from commit 1c557e2)
Dackka doesn't support `@value` PiperOrigin-RevId: 524309695 (cherry picked from commit b834e49)
Prompted by discussion on this commit: google/ExoPlayer@e811749 #minor-release PiperOrigin-RevId: 524795901 (cherry picked from commit f799766)
This check was a leftover from when the metadata was generated from the MediaItem only. Since we moved to the actual MediaMetadata fields, the check is completely unnecessary and prevents accessing metadata when the GET_CURRENT_MEDIA_ITEM command is not available. PiperOrigin-RevId: 524837587 (cherry picked from commit e0bb23d)
The sessions may have different application threads for their players, and the service with its notification provider runs on the main thread. To ensure everything runs on the correct thread, this change labels methods where needed and fixes thread access in some places. Issue: #318 PiperOrigin-RevId: 524849598 (cherry picked from commit ffa3743)
PiperOrigin-RevId: 525176828 (cherry picked from commit 07ff3ee)
Thanks for your pull request! It looks like this may be your first contribution to a Google open source project. Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA). View this failed invocation of the CLA check for more information. For the most up to date status, view the checks section at the bottom of the pull request. |
PiperOrigin-RevId: 525415067 (cherry picked from commit 3788172)
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.