- 22 Feb, 2021 5 commits
-
-
Issue:#8581 PiperOrigin-RevId: 357563419
kimvde committed -
Issue: #8585 PiperOrigin-RevId: 357553237
olly committed -
The source can be used in compositions (in fact, every source is automatically used in an internal composition when constructing the playlist), and there is not really a concept of top-level media source any more since the Player supports playlists. The actual restriction is that the content media source needs to have exactly one period to be able to create a SinglePeriodAdTimeline. #minor-release PiperOrigin-RevId: 357544191
tonihei committed -
The previous logic was changed under the assumption that the first box inside a meta box was not always an hdlr box, but this is not true. #minor-release PiperOrigin-RevId: 357200713
kimvde committed -
PiperOrigin-RevId: 357160215
kimvde committed
-
- 13 Feb, 2021 1 commit
-
-
r2.13.1
Oliver Woodman committed
-
- 12 Feb, 2021 11 commits
-
-
#minor-release PiperOrigin-RevId: 357273184
olly committed -
PiperOrigin-RevId: 357219132
olly committed -
The available end time was accidentally substracted by the start time of the last period. To avoid similar time reference confusion in the future, also renaming many variables and methods to clearly reflect the time reference point. And to avoid constant conversion, the processManifest method also attempts to converge to time relative to the start of the window as quickly as possible. Issue: #8537 PiperOrigin-RevId: 357001624
tonihei committed -
If keepalive is disabled the existing code over-eagerly releases DrmSession instances. This is arguably OK since a (Default)DrmSession should be released before its (Default)Manager is released (since the underlying MediaDrm instance might be released when the manager is released). And if all sessions are released before the manager is released then `sessions` is empty, so the loop is a no-op. Issue: #8576 PiperOrigin-RevId: 356955308
ibaker committed -
The `DrmConfiguration.sessionForClearTypes` property is often used to ensure a secure decoder is used for clear ads played in encrypted content. This is because some devices show black frames when switching decoders. Before this change the DRM config isn't propagated down when constructing the ad media source, meaning `DrmSessionManager.DRM_UNSUPPORTED` is always used, which will cause playback to switch from secure to clear decoder when transitioning to an ad break (ignoring the MediaItem `sessionForClearTypes` option. Issue: #8568 PiperOrigin-RevId: 356951124
ibaker committed -
Issue: #4803 PiperOrigin-RevId: 356923345
andrewlewis committed -
Issue: #8565 PiperOrigin-RevId: 356691251
andrewlewis committed -
Without this a new manager is instantiated for every item in a playlist, meaning the impact of caching improvements to DefaultDrmSessionManager are reduced (since the cache doesn't persist across playlist items). With this change, playlists of items with identical DRM config will use the same manager instance (and thus share existing sessions). Issue: #8523 PiperOrigin-RevId: 356690852
ibaker committed -
Also allow the player's prepared ad media period durations array to exceed the length of the loaded ad URIs array, as it's possible for the player to buffer an ad media period fully at the point where it's known that an ad is coming up but its URI is still unknown. PiperOrigin-RevId: 356249284
andrewlewis committed -
This may happen for HLS live streams without program date time information. Issue: #8560 PiperOrigin-RevId: 356227729
tonihei committed -
#minor-release PiperOrigin-RevId: 356221487
kimvde committed
-
- 04 Feb, 2021 9 commits
-
-
r2.13.0
Oliver Woodman committed -
#minor-release PiperOrigin-RevId: 355652144
kimvde committed -
PiperOrigin-RevId: 355621265
olly committed -
Before, the level was set to null in this case. MediaCodecUtil.getCodecProfileAndLevel() was therefore returning null and the fallback to AVC/HEVC was not enabled in MediaCodecVideoRenderer. Issue:#8530 PiperOrigin-RevId: 355574499
kimvde committed -
Oliver Woodman committed
-
Oliver Woodman committed
-
In both cases it's deliberate that all excluded constants should use the default branch. Furthermore, there are quite a lot of excluded constants missing, so it's probably better to suppress the warning than to include them all. #minor-release PiperOrigin-RevId: 355426749
olly committed -
This resolves the following constraint resolution issue when running our release script: > Cannot find a version of 'org.chromium.net:cronet-api' that satisfies the version constraints: Dependency path 'com.google.android.exoplayer:extension-cronet:unspecified' --> 'com.google.android.gms:play-services-cronet:17.0.0' --> 'org.chromium.net:cronet-api:72.3626.96' Constraint path 'com.google.android.exoplayer:extension-cronet:unspecified' --> 'org.chromium.net:cronet-api:{strictly 72.3626.96}' because of the following reason: debugRuntimeClasspath uses version 72.3626.96 Dependency path 'com.google.android.exoplayer:extension-cronet:unspecified' --> 'org.chromium.net:cronet-embedded:76.3809.111' --> 'org.chromium.net:cronet-common:76.3809.111' --> 'org.chromium.net:cronet-api:76.3809.111' #minor-release PiperOrigin-RevId: 355414968olly committed -
#minor-release PiperOrigin-RevId: 355381610
kimvde committed
-
- 03 Feb, 2021 4 commits
-
-
This is a more targeted workaround, which still allows for the containing package name to be obfuscated. #minor-release PiperOrigin-RevId: 355381201
olly committed -
#minor-release PiperOrigin-RevId: 355203044
olly committed -
* Move cherrypicked changes from dev-v2 to 2.13.0 * Use a bulleted list instead of comma-separated. * Standardise everything into present, imperative sentences. * Remove a couple of mixed-font words (I left cases with a separating apostrophe, as these seemed visually clearer). * Merge multiple issue links into a single set of parentheses. #minor-release PiperOrigin-RevId: 355180143
ibaker committed -
#minor-release PiperOrigin-RevId: 355159635
ibaker committed
-
- 02 Feb, 2021 1 commit
-
-
Note: We only support pro-guard on a best effort basis, and developers should use R8 whenever possible. #minor-release PiperOrigin-RevId: 355129695
olly committed
-
- 01 Feb, 2021 9 commits
-
-
#minor-release PiperOrigin-RevId: 354949992
kimvde committed -
#minor-release PiperOrigin-RevId: 354938190
kimvde committed -
Without this no error is currently logged or propagated to EventLogger. The propagation doesn't happen because MergingMediaSource.ForwardingEventListener only propagates events originating from the "main" source in the merge: <unknown commit> #minor-release PiperOrigin-RevId: 354902467
ibaker committed -
We can dequeue as part of getting output buffers (or output buffer info) in `MediaCodecAdapterWrapper`, which simplifies the caller slightly. Also try to make minor clarifications in method naming in `TransformerAudioRenderer`. #minor-release PiperOrigin-RevId: 354890796
andrewlewis committed -
The caller knows whether it's queued end-of-stream, so we can remove the return value of the method. #minor-release PiperOrigin-RevId: 354888298
andrewlewis committed -
This also moves DefaultHttpDataSource to common, which seems sensible, else non-player components that need a DataSource don't have any useful concrete implementations. We should think about moving some of the other concrete implementations to common as well. PiperOrigin-RevId: 354738925
olly committed -
This is needed to move it to common, since we don't want to start adding any nullness exemptions for the common module. PiperOrigin-RevId: 354734715
olly committed -
- Store output format in `MediaCodecAdapterWrapper` when we get a format from the codec, instead of creating it on demand. - Make format building code not audio-specific. - Remove `MediaCodecAdapterWrapper.getConfigFormat` and instead keep track of the input/output formats in the renderer. This will mean that the code still works if an audio processor changes the audio format in future. - Make exceptions thrown during audio rendering use the same (input) renderer format. - Misc other minor cleanup. #minor-release PiperOrigin-RevId: 354556619
andrewlewis committed -
Add an interface to muxers to allow tests to pass a dumpable muxer. #minor-release PiperOrigin-RevId: 354543388
andrewlewis committed
-