-
Notifications
You must be signed in to change notification settings - Fork 6k
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
Release v2 r2.19.0 #11241
Release v2 r2.19.0 #11241
Commits on Apr 24, 2023
-
HDR: Remove exportUnexpectedColorInfo test.
PiperOrigin-RevId: 526086973
Configuration menu - View commit details
-
Copy full SHA for de32536 - Browse repository at this point
Copy the full SHA de32536View commit details -
Ensure
DrmSessionManager.setPlayer()
is called beforeprepare()
`prepare()` now logs a warning if it's called before `setPlayer()` because it's not possible to tell if it's being called on the wrong thread (since androidx/media@3480a27). This change finds all the places one is called immediately after the other and flips the order to be more correct. Issue: androidx/media#350 #minor-release PiperOrigin-RevId: 526582294
Configuration menu - View commit details
-
Copy full SHA for 6aacbc6 - Browse repository at this point
Copy the full SHA 6aacbc6View commit details -
Change isInputTextureExternal boolean parameter to inputType intDef
PiperOrigin-RevId: 525690361
Configuration menu - View commit details
-
Copy full SHA for 4188bf3 - Browse repository at this point
Copy the full SHA 4188bf3View commit details -
PiperOrigin-RevId: 525693833
Configuration menu - View commit details
-
Copy full SHA for ffb6970 - Browse repository at this point
Copy the full SHA ffb6970View commit details -
Add context sharing capabilities to the default GlObjectsProvider
Creates a way for apps to provide their EGLContext to DefaultVideoFrameProcessor, so that we can attach their context to the one we create. See [the EGL docs for more information about how contexts are shared in GL](https://registry.khronos.org/EGL/sdk/docs/man/html/eglCreateContext.xhtml) PiperOrigin-RevId: 525708652
Configuration menu - View commit details
-
Copy full SHA for 4d2da81 - Browse repository at this point
Copy the full SHA 4d2da81View commit details -
Set default value 0 for compressorname
PiperOrigin-RevId: 525734520
Configuration menu - View commit details
-
Copy full SHA for 409e815 - Browse repository at this point
Copy the full SHA 409e815View commit details -
PiperOrigin-RevId: 525756451
Configuration menu - View commit details
-
Copy full SHA for f92a9a6 - Browse repository at this point
Copy the full SHA f92a9a6View commit details -
Rename INPUT_TYPE_TEXID, and cleanup.
PiperOrigin-RevId: 525761936
Configuration menu - View commit details
-
Copy full SHA for 9e99f93 - Browse repository at this point
Copy the full SHA 9e99f93View commit details -
Simplify end of stream signaling again
Whenever a frame is queued to the shader, it's guaranteed that there will be a subsequent `onInputFrameProcessed` callback, so we can pass on the end-of-stream signal there. PiperOrigin-RevId: 525850141
Configuration menu - View commit details
-
Copy full SHA for 3fb4646 - Browse repository at this point
Copy the full SHA 3fb4646View commit details -
Render last frame even if have not read BUFFER_FLAG_END_OF_STREAM
If the limited number of input buffers causes reading of all samples except the last one conveying end of stream, then the last frame will not be rendered. PiperOrigin-RevId: 525974445
Configuration menu - View commit details
-
Copy full SHA for 7590228 - Browse repository at this point
Copy the full SHA 7590228View commit details -
This simplifies the addition of new fields in the future. Also do some misc clean up for the volume limit values: - Add some documentation to mention assumed defaults - Add the IntRange annotations to match the ones we have in Player already - Mention the limits in the relevant Player methods - Avoid bundling default values - Improve range checks for masking in MediaController PiperOrigin-RevId: 526029619
Configuration menu - View commit details
-
Copy full SHA for 930837c - Browse repository at this point
Copy the full SHA 930837cView commit details -
*** Original commit *** Bump Guava version to 31.1 *** PiperOrigin-RevId: 526046600
Configuration menu - View commit details
-
Copy full SHA for e64be9b - Browse repository at this point
Copy the full SHA e64be9bView commit details -
Add routing controller id to DeviceInfo
And forward the id to the VolumeProviderCompat and read it from the platform MediaController for compatibility. PiperOrigin-RevId: 526046892
Configuration menu - View commit details
-
Copy full SHA for 61f28a6 - Browse repository at this point
Copy the full SHA 61f28a6View commit details -
Fix MCVR is not able to find FrameProcessor.Factory constructor.
The constructor is removed in 6dcb018. PiperOrigin-RevId: 526068585
Configuration menu - View commit details
-
Copy full SHA for 8ce3205 - Browse repository at this point
Copy the full SHA 8ce3205View commit details -
Allow customizing VideoFrameProcessor input and output colors in MCVR.
PiperOrigin-RevId: 526081541
Configuration menu - View commit details
-
Copy full SHA for 49802cd - Browse repository at this point
Copy the full SHA 49802cdView commit details -
Add support to fetch
ColorInfo
fromavcC
box inAtomParsers
#minor-release PiperOrigin-RevId: 526082823
Configuration menu - View commit details
-
Copy full SHA for d887671 - Browse repository at this point
Copy the full SHA d887671View commit details -
HDR: Remove exportUnexpectedColorInfo test.
PiperOrigin-RevId: 526086973
Configuration menu - View commit details
-
Copy full SHA for 6da9306 - Browse repository at this point
Copy the full SHA 6da9306View commit details -
Ensure
DrmSessionManager.setPlayer()
is called beforeprepare()
`prepare()` now logs a warning if it's called before `setPlayer()` because it's not possible to tell if it's being called on the wrong thread (since 9d028b3). This change finds all the places one is called immediately after the other and flips the order to be more correct. Issue: androidx/media#350 #minor-release PiperOrigin-RevId: 526582294
Configuration menu - View commit details
-
Copy full SHA for aa4e008 - Browse repository at this point
Copy the full SHA aa4e008View commit details
Commits on Apr 25, 2023
-
Configuration menu - View commit details
-
Copy full SHA for bc0dc01 - Browse repository at this point
Copy the full SHA bc0dc01View commit details -
Configuration menu - View commit details
-
Copy full SHA for b08120d - Browse repository at this point
Copy the full SHA b08120dView commit details -
Configuration menu - View commit details
-
Copy full SHA for a65b5a5 - Browse repository at this point
Copy the full SHA a65b5a5View commit details -
Derive previousNumDeltaPocs from numNegativePics and numPositivePics
This more closely matches the equations in equations 7-61 and 7-62 in See H.265/HEVC (2014) section 7.4.8.
Configuration menu - View commit details
-
Copy full SHA for 75d81c7 - Browse repository at this point
Copy the full SHA 75d81c7View commit details -
Configuration menu - View commit details
-
Copy full SHA for 114020c - Browse repository at this point
Copy the full SHA 114020cView commit details -
Use NalUnitUtil.parseH265SpsNalUnitPayload when parsing MPEG-TS files
This implicitly fixes a bug by removing the buggy implementation in H265Reader in favour of a working one. This change also adds tests to confirm the parsing bug is fixed.
Configuration menu - View commit details
-
Copy full SHA for 6ae8c8c - Browse repository at this point
Copy the full SHA 6ae8c8cView commit details -
Use parseH265SpsNalUnit instead of parseH265SpsNalUnitPayload
To consistent with the other callsites of NalUnitUtil for parsing H265 SPS
Configuration menu - View commit details
-
Copy full SHA for d7acae2 - Browse repository at this point
Copy the full SHA d7acae2View commit details -
Configuration menu - View commit details
-
Copy full SHA for e88fa7c - Browse repository at this point
Copy the full SHA e88fa7cView commit details -
Add a release note for MPEG-TS H.265 SPS parsing fix
Also clean-up a comment about skipping the NAL start code
Configuration menu - View commit details
-
Copy full SHA for 171c224 - Browse repository at this point
Copy the full SHA 171c224View commit details
Commits on Apr 26, 2023
-
Fix not ignoring invalid color info.
PiperOrigin-RevId: 526595567
Configuration menu - View commit details
-
Copy full SHA for 15a80f4 - Browse repository at this point
Copy the full SHA 15a80f4View commit details -
*** Original commit *** Rollback of f92a9a6 *** Original commit *** Bump Guava version to 31.1 *** *** PiperOrigin-RevId: 526601244
Configuration menu - View commit details
-
Copy full SHA for 1121162 - Browse repository at this point
Copy the full SHA 1121162View commit details -
Abstract the interface of DefaultVideoFrameProcessor's input.
PiperOrigin-RevId: 526642898
Configuration menu - View commit details
-
Copy full SHA for c284fac - Browse repository at this point
Copy the full SHA c284facView commit details -
Add nullness-compat-qual dependency for android tests
PiperOrigin-RevId: 526652129
Configuration menu - View commit details
-
Copy full SHA for deb4ffd - Browse repository at this point
Copy the full SHA deb4ffdView commit details -
Replace MediaFormat with Format class in muxer module
PiperOrigin-RevId: 526655859
Configuration menu - View commit details
-
Copy full SHA for d4c0a05 - Browse repository at this point
Copy the full SHA d4c0a05View commit details -
Effects: Allow BT2020 colors with SDR transfers
Previously, I assumed that SDR contents must be BT709, and HDR contents must be BT2020. Turns out BT2020 is just wide-gamut, and SDR contents / transfers may be represented in BT2020 color spaces. Relax the check, so that we don't throw when valid BT2020 SMPTE 170M contents are input into effects. PiperOrigin-RevId: 526668347
Configuration menu - View commit details
-
Copy full SHA for e051180 - Browse repository at this point
Copy the full SHA e051180View commit details -
PiperOrigin-RevId: 526683141
Configuration menu - View commit details
-
Copy full SHA for 2864163 - Browse repository at this point
Copy the full SHA 2864163View commit details -
Add default impl for some InputHandler methods.
And minor fixes. PiperOrigin-RevId: 526717927
Configuration menu - View commit details
-
Copy full SHA for e58427a - Browse repository at this point
Copy the full SHA e58427aView commit details -
Update VideoSamplePipeline to take account of decoder colors
PiperOrigin-RevId: 526940261
Configuration menu - View commit details
-
Copy full SHA for 1be1175 - Browse repository at this point
Copy the full SHA 1be1175View commit details -
Update image transcoding pipeline to signal input COLOR_TRANSFER_SRGB
The production code changes are in transformer, but the tests in effect have also been updated to confirm the is no color regression `inputColorInfo.colorTransfer=C.COLOR_TRANSFER_SRGB` PiperOrigin-RevId: 526950435
Configuration menu - View commit details
-
Copy full SHA for c1e583c - Browse repository at this point
Copy the full SHA c1e583cView commit details -
Allow setting individual offset for bitmaps.
PiperOrigin-RevId: 527001582
Configuration menu - View commit details
-
Copy full SHA for d838f2c - Browse repository at this point
Copy the full SHA d838f2cView commit details -
Transformer: Reduce scope of createSupportedTransformationRequest
This was only used in EncoderWrapper, so move createSupportedTransformationRequest from VideoSamplePipeline to EncoderWrapper to reduce its scope. PiperOrigin-RevId: 527226578
Configuration menu - View commit details
-
Copy full SHA for 27ed3b2 - Browse repository at this point
Copy the full SHA 27ed3b2View commit details -
Update dependencies to latest versions
The only dependencies that are not updated are the ones that need to be kept in sync with other system (like Android source tree) or would require a Kotlin dependency in common or exoplayer modules. As a side effect, some demo apps now need a Kotlin config and some additional modules require desugaring/multidex logic. To simplify the setup, the desugaring and multidex steps are added to the common config. PiperOrigin-RevId: 527243950
Configuration menu - View commit details
-
Copy full SHA for 9842fba - Browse repository at this point
Copy the full SHA 9842fbaView commit details -
Effects: Output to texture without surface in VFP.
Allow the VideoFrameProcessor to output to a texture without an output surface. Tested by updating texture output tests to no longer output to a surface. PiperOrigin-RevId: 527244605
Configuration menu - View commit details
-
Copy full SHA for 51228fc - Browse repository at this point
Copy the full SHA 51228fcView commit details -
Use Util method for common UI play/pause button logic.
This ensures the logic is consistent and can also be easily used from custom UIs. PiperOrigin-RevId: 527249127
Configuration menu - View commit details
-
Copy full SHA for ab30715 - Browse repository at this point
Copy the full SHA ab30715View commit details -
Merge pull request #313 from pengbins:fix_ts_h265reader_parse_sps
PiperOrigin-RevId: 527259619
Configuration menu - View commit details
-
Copy full SHA for 062ccdf - Browse repository at this point
Copy the full SHA 062ccdfView commit details
Commits on Apr 27, 2023
-
Update sdr internal fsh to accept input color transfer
PiperOrigin-RevId: 527271212
Configuration menu - View commit details
-
Copy full SHA for b96164d - Browse repository at this point
Copy the full SHA b96164dView commit details -
Test: Add @ignore to Analysis tests
In ASwB, all Transformer tests can be run by right-clicking on the project and clicking "Run all tests". We cannot, however, select only some specific test files within a project (ex. all non-analysis tests) to run tests on. Add @ignore to analysis tests, which are not intended to be run anyways when determining whether Transformer is working on some device. These tests also don't have proper skipping logic when a device doesn't support a format, so they can't be run effectively on low-end devices anyways. This eases manual testing, for example when debugging whether tests all pass on a device. When analysis tests are desired to be run, it should be easy to comment out the @ignore. PiperOrigin-RevId: 527289600
Configuration menu - View commit details
-
Copy full SHA for a955ee5 - Browse repository at this point
Copy the full SHA a955ee5View commit details -
Downgrade back to Robolectric 4.8.1
This partially reverts 9842fba because our tests fail with 4.10 with an error like: ``` ShadowActivityThread.reset: ActivityThread not set java.lang.NullPointerException: ShadowActivityThread.reset: ActivityThread not set at java.base/java.util.Objects.requireNonNull(Objects.java:246) at org.robolectric.shadows.ShadowActivityThread.reset(ShadowActivityThread.java:284) at org.robolectric.Shadows.reset(Shadows.java:2665) at org.robolectric.android.internal.AndroidTestEnvironment.resetState(AndroidTestEnvironment.java:657) at org.robolectric.RobolectricTestRunner.lambda$finallyAfterTest$0(RobolectricTestRunner.java:370) at org.robolectric.util.PerfStatsCollector.measure(PerfStatsCollector.java:86) at org.robolectric.RobolectricTestRunner.finallyAfterTest(RobolectricTestRunner.java:368) at org.robolectric.internal.SandboxTestRunner$2.lambda$evaluate$2(SandboxTestRunner.java:298) at org.robolectric.internal.bytecode.Sandbox.lambda$runOnMainThread$0(Sandbox.java:99) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630) at java.base/java.lang.Thread.run(Thread.java:830) ``` It looks like the code throwing this exception is new in Robolectric 4.10: robolectric/robolectric@65654a7 PiperOrigin-RevId: 527290033
Configuration menu - View commit details
-
Copy full SHA for 2c55701 - Browse repository at this point
Copy the full SHA 2c55701View commit details -
Effect: Call glFinish before providing VFP output texture
glFinish should be called before reading from a texture, to make sure it's been properly rendered to. PiperOrigin-RevId: 527302946
Configuration menu - View commit details
-
Copy full SHA for e3fd974 - Browse repository at this point
Copy the full SHA e3fd974View commit details -
Add a listener once one MediaItem is fully processed
Add `VideoFrameProcessor.registerInputStream()` to signal a new type of input. And `InputHandler.signalEndOfCurrentInputStream()` to signal to `InputHandler` partial input stream completion. Fully processed means after FinalShaderProgramWrapper releases the last frame. PiperOrigin-RevId: 527356646
Configuration menu - View commit details
-
Copy full SHA for d2e8ac4 - Browse repository at this point
Copy the full SHA d2e8ac4View commit details -
Update build.gradle file with latest versions
PiperOrigin-RevId: 527504752
Configuration menu - View commit details
-
Copy full SHA for e2119fb - Browse repository at this point
Copy the full SHA e2119fbView commit details
Commits on May 3, 2023
-
Effect: split ending frame Processing and getting the output bitmap i…
…n tests PiperOrigin-RevId: 527554408
Configuration menu - View commit details
-
Copy full SHA for e9bc519 - Browse repository at this point
Copy the full SHA e9bc519View commit details -
Effect: glFlush instead of glFinish on tex output
This is much faster (~2-3x) than glFlush. While there's a risk that GL commands queued to the GL server may not be complete by the time non-GL commands access the texture, this should be unlikely as we only access the texture from GL. PiperOrigin-RevId: 527641520
Configuration menu - View commit details
-
Copy full SHA for 5a62d1b - Browse repository at this point
Copy the full SHA 5a62d1bView commit details -
Remove volatile from boolean in BitmapTextureManager
The field is only accessed on the GL thread. PiperOrigin-RevId: 527844674
Configuration menu - View commit details
-
Copy full SHA for 35ed33d - Browse repository at this point
Copy the full SHA 35ed33dView commit details -
effect: Rename VFP frame release to render.
renderOutputFrame actually renders frames to an output surface. We'll soon have a releaseOutputFrame method, that would release resources associated with an output time, so rename this to disambiguate the two methods. Also rename onOutputFrameAvailable to onOutputFrameAvailableForRendering, to make it clear this is not available for "release" This change should be a renaming-only change and have no functional differences. PiperOrigin-RevId: 527844947
Configuration menu - View commit details
-
Copy full SHA for 69be61e - Browse repository at this point
Copy the full SHA 69be61eView commit details -
*** Original commit *** Effect: glFlush instead of glFinish on tex output This is much faster (~2-3x) than glFlush. While there's a risk that GL commands queued to the GL server may not be complete by the time non-GL commands access the texture, this should be unlikely as we only access the texture from GL. If we see stability issues in the future, we can reconsider and move this back to glFinish (or GL synchronization mechanisms like fences, which are more complex) *** PiperOrigin-RevId: 527848094
Configuration menu - View commit details
-
Copy full SHA for ca4928c - Browse repository at this point
Copy the full SHA ca4928cView commit details -
Add an input switcher to switch between input types.
Also make FinalShaderProgramWrapper always receive internal texture. This means it does not sample from a input texture, and its input color is always linear, hence the input type does not matter. PiperOrigin-RevId: 527869045
Configuration menu - View commit details
-
Copy full SHA for e6c8136 - Browse repository at this point
Copy the full SHA e6c8136View commit details -
Add UTF-16 encoded subtitle support to SsaDecoder
Issue: androidx/media#319 PiperOrigin-RevId: 527891646
Configuration menu - View commit details
-
Copy full SHA for a9c8f2f - Browse repository at this point
Copy the full SHA a9c8f2fView commit details -
Relax some copybara transform regexes
This means that comments like `//copybara:media3-only` are now detected (no space between `//` and `copybara`) which will ensure that lines like this are correctly transformed for the media3 and exoplayer2 GitHub repos: https://github.com/google/ExoPlayer/blob/aa4e0080147fe76a6c0cca40b7eccdf45eb58028/library/effect/build.gradle#L33 PiperOrigin-RevId: 527919649
Configuration menu - View commit details
-
Copy full SHA for 8320370 - Browse repository at this point
Copy the full SHA 8320370View commit details -
Add
rootProject.name
to decouple the AS name from the directoryBy default Android Studio will name the project based on the root directory it's opened from. This gives a consistent (and clear) name regardless of what root directory the project is located in on the filesystem. Explicitly defining `rootProject.name` is recommended here: https://docs.gradle.org/current/userguide/multi_project_builds.html#naming_recommendations PiperOrigin-RevId: 528729078
Configuration menu - View commit details
-
Copy full SHA for 052c358 - Browse repository at this point
Copy the full SHA 052c358View commit details -
Mark @callsuper on some BaseGlShaderProgram methods.
PiperOrigin-RevId: 528734663
Configuration menu - View commit details
-
Copy full SHA for 754af23 - Browse repository at this point
Copy the full SHA 754af23View commit details -
Add
DataSource
contract test checking scheme case insensitivitySystems accepting URIs should treat schemes as case-insensitive ([RFC 3986 Section 3.1](https://www.rfc-editor.org/rfc/rfc3986#section-3.1)): > An implementation should accept uppercase letters as equivalent to > lowercase in scheme names (e.g., allow "HTTP" as well as "http") for > the sake of robustness PiperOrigin-RevId: 528735287
Configuration menu - View commit details
-
Copy full SHA for adb99da - Browse repository at this point
Copy the full SHA adb99daView commit details -
Skip writing 0 sized samples in Mp4Muxer
The existing logic to drop (actually fail on) 0 sized samples seems no op if if 2 out of 10 samples are of size 0. Checked same scenario with MediaMuxer where 1. If input file has 300 samples. 2. Make every 5th sample as an empty byte buffer. 3. Output file is generated without error. 4. Output file has 240 samples. 5. Exoplayer is able to play output file (blurry). The new change is in line with MediaMuxer behaviour. PiperOrigin-RevId: 528798046
Configuration menu - View commit details
-
Copy full SHA for 497c51b - Browse repository at this point
Copy the full SHA 497c51bView commit details -
Update InternetConnection check to skip check when uri scheme is null
When we created androidTests, in the past, they always had a URI pointing to a resource, therefore we always had a URI scheme. With texture input, this will not longer be the case (EditedMediaItems's may have URI.EMPTY, which have a null scheme) so we need to check for this so tests don't falsely fail. PiperOrigin-RevId: 528848411
Configuration menu - View commit details
-
Copy full SHA for 4484330 - Browse repository at this point
Copy the full SHA 4484330View commit details -
Reselect track when renderer capabilities change
* Implement RendererCapabilities.Listener in DefaultTrackSelector. * Add new methods TrackSelector.invalidateForRendererCapabilitiesChange and TrackSelector.InvalidateListener.onRendererCapabilitiesChanged. * Add new field allowInvalidateSelectionsOnRendererCapabilitiesChange to DefaultTrackSelector.Parameter to allow opt-in of the renderer capabilities detection feature. * Add logics of triggering track reselection when renderer capabilities change. PiperOrigin-RevId: 529067433
Configuration menu - View commit details
-
Copy full SHA for cdcc701 - Browse repository at this point
Copy the full SHA cdcc701View commit details -
PiperOrigin-RevId: 529069808
Configuration menu - View commit details
-
Copy full SHA for 6c294ac - Browse repository at this point
Copy the full SHA 6c294acView commit details -
Effect: Fix concurrent access null pointer exception
A list was being accessed from one thread when it wasn't guaranteed to be empty. PiperOrigin-RevId: 529102141
Configuration menu - View commit details
-
Copy full SHA for 073807a - Browse repository at this point
Copy the full SHA 073807aView commit details
Commits on May 4, 2023
-
Fix demo app UnsafeOptInUsageError lint errors
This change: * Adds missing `@OptIn` annotation to demo app's `ErrorMessageProvider` * Switches from `Util.SDK_INT` to `Build.VERSION.SDK_INT` in `SampleChooserActivity` (`PlayerActivity` is already using this). This code hasn't changed recently, and it doesn't fail on the `release` branch, but it failed when I checked the `main` branch just now - so I assume lint has updated to detect more cases where unstable APIs are being used without opt-in. I suspect the difference is due to different Android Gradle Plugin versions between the branches. #minor-release PiperOrigin-RevId: 529111669
Configuration menu - View commit details
-
Copy full SHA for 5dbbff4 - Browse repository at this point
Copy the full SHA 5dbbff4View commit details
Commits on May 8, 2023
-
Enable switching input types via InputMultiplexer.
PiperOrigin-RevId: 529624205
Configuration menu - View commit details
-
Copy full SHA for a43ef10 - Browse repository at this point
Copy the full SHA a43ef10View commit details -
Add a tracing utility for debugging video related muxer timeout
PiperOrigin-RevId: 529632886
Configuration menu - View commit details
-
Copy full SHA for 9f2d200 - Browse repository at this point
Copy the full SHA 9f2d200View commit details -
Remove unused variables in DVFP.
PiperOrigin-RevId: 529685584
Configuration menu - View commit details
-
Copy full SHA for fa669d8 - Browse repository at this point
Copy the full SHA fa669d8View commit details -
Improve documentation for metadataSampleEntry method
PiperOrigin-RevId: 529693415
Configuration menu - View commit details
-
Copy full SHA for 1c4cfed - Browse repository at this point
Copy the full SHA 1c4cfedView commit details -
Use provided Format in shouldUseBypass check
#minor-release PiperOrigin-RevId: 529708020
Configuration menu - View commit details
-
Copy full SHA for 4358924 - Browse repository at this point
Copy the full SHA 4358924View commit details -
#minor-release PiperOrigin-RevId: 529710928
Configuration menu - View commit details
-
Copy full SHA for 7c28075 - Browse repository at this point
Copy the full SHA 7c28075View commit details -
Remove B-frame setting from DefaultEncoderFactory
This setting is buggy on some devices (for example sm-n960f) PiperOrigin-RevId: 529712770
Configuration menu - View commit details
-
Copy full SHA for c032f80 - Browse repository at this point
Copy the full SHA c032f80View commit details -
HDR: Don't register unsupported HDR bitmap input.
Minimal fix for HDR test postsubmit breakage PiperOrigin-RevId: 529734521
Configuration menu - View commit details
-
Copy full SHA for 772f579 - Browse repository at this point
Copy the full SHA 772f579View commit details -
Update migration script for 1.0.2/2.18.7
#minor-release PiperOrigin-RevId: 529742339
Configuration menu - View commit details
-
Copy full SHA for c12fea7 - Browse repository at this point
Copy the full SHA c12fea7View commit details -
Update migration script for 1.1.0/2.19.0
#minor-release PiperOrigin-RevId: 529743667
Configuration menu - View commit details
-
Copy full SHA for 2ff8cc3 - Browse repository at this point
Copy the full SHA 2ff8cc3View commit details -
Add tests for
MediaLibraryInfo
version code consistency`VERSION_INT` is quite long with several sections, and it's easy to make a mistake when updating it - this should help since it checks it against `VERSION`, which is more easily human readable/writable. PiperOrigin-RevId: 529747023
Configuration menu - View commit details
-
Copy full SHA for 75cde0a - Browse repository at this point
Copy the full SHA 75cde0aView commit details -
Fix operations order in RenderingTest
For DefaultVideoFrameProcessorVideoFrameRenderingTest: `registerInputStream` sets the textureManager, so reordering makes sure the textureManager is set before you set the frame info. This is important for texture input, where the frame info provides the width and height. PiperOrigin-RevId: 529753404
Configuration menu - View commit details
-
Copy full SHA for 2c4a567 - Browse repository at this point
Copy the full SHA 2c4a567View commit details
Commits on May 11, 2023
-
Remove stray stuck debug logging line
PiperOrigin-RevId: 530314222
Configuration menu - View commit details
-
Copy full SHA for 6f9a3b2 - Browse repository at this point
Copy the full SHA 6f9a3b2View commit details -
Ensure behavior of add/setMediaItems is consistent on empty playlist
Adding items to an empty playlist is slightly different from adding items to a non-empty playlist, because the former usually requires to handle a change in the current item, position and playback state, while the latter is not expected to affect the current item, position or state. The current ExoPlayer and SimpleBasePlayer code doesn't account for this difference, leading to inconsistent behavior between setMediaItem(s) and addMediaItem(s) when called on an empty playlist. PiperOrigin-RevId: 530549928
Configuration menu - View commit details
-
Copy full SHA for 8c6da05 - Browse repository at this point
Copy the full SHA 8c6da05View commit details -
Image transcoding: Add support for heic/heif image formats
PiperOrigin-RevId: 530578549
Configuration menu - View commit details
-
Copy full SHA for 4abd34d - Browse repository at this point
Copy the full SHA 4abd34dView commit details -
Change order of operations in videoSamplePipeline
similar error to 2c4a567c74088c639d699eeefe139c38e254e230L `registerInputStream` sets the textureManager, so reordering makes sure the textureManager is set before you set the frame info. This is important for texture input, where the frame info provides the width and height. PiperOrigin-RevId: 530579584
Configuration menu - View commit details
-
Copy full SHA for 756b77e - Browse repository at this point
Copy the full SHA 756b77eView commit details -
Fix encoder expecting HDR while tone-mapping requested
If tone-mapping was requested for a device supporting HDR encoding, isToneMapped was false in VideoSamplePipeline.EncoderWrapper. This was causing the encoder to expect HDR. Also did some renamings to improve readability PiperOrigin-RevId: 530584010
Configuration menu - View commit details
-
Copy full SHA for 3a70c6c - Browse repository at this point
Copy the full SHA 3a70c6cView commit details -
Transformer: Add codec support for Dolby Vision HDR video
Allow use of H265/H264 codecs for Dolby Vision video. Also, reflow ExoPlayer code to use this new utility class PiperOrigin-RevId: 530619388
Configuration menu - View commit details
-
Copy full SHA for 56c070a - Browse repository at this point
Copy the full SHA 56c070aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 4957980 - Browse repository at this point
Copy the full SHA 4957980View commit details -
Avoid swallowing exceptions when switching AssetLoader
Exceptions thrown when switching AssetLoader were not reported through the error listener. Therefore, the resources were not released and the export was not ending. PiperOrigin-RevId: 530626300
Configuration menu - View commit details
-
Copy full SHA for 0f11aa2 - Browse repository at this point
Copy the full SHA 0f11aa2View commit details -
Fix HDR tone mapping stuck on SM device
Tone-mapping an HDR video with MediaCodec on sm-s908u1 was timing out. The reason for that is that the decoder was dropping frames, and the ExternalTextureManager was therefore never propagating the end-of-stream signal. There was already a workaround for a similar issue but restricted to sm-f936b. Removed the model check as the bug is probably present on more devices. PiperOrigin-RevId: 530639437
Configuration menu - View commit details
-
Copy full SHA for 454c5a2 - Browse repository at this point
Copy the full SHA 454c5a2View commit details -
Disable texture input when input is HDR
Verified by running all the tests in mh (excluding the analysis tests) on a pixel 7 pro PiperOrigin-RevId: 530655237
Configuration menu - View commit details
-
Copy full SHA for 2fcda32 - Browse repository at this point
Copy the full SHA 2fcda32View commit details -
Create InAppMuxer in transformer
To use the InAppMuxer, the client needs to pass InAppMuxer Factory. PiperOrigin-RevId: 530684007
Configuration menu - View commit details
-
Copy full SHA for f13f87a - Browse repository at this point
Copy the full SHA f13f87aView commit details -
Adding mime type checking to Transformer to identify images.
PiperOrigin-RevId: 530711523
Configuration menu - View commit details
-
Copy full SHA for 7065811 - Browse repository at this point
Copy the full SHA 7065811View commit details -
Refactor track specific logic in Mp4MoovStructure
PiperOrigin-RevId: 530878135
Configuration menu - View commit details
-
Copy full SHA for f20ed11 - Browse repository at this point
Copy the full SHA f20ed11View commit details -
Transformer: Support Texture asset loading
PiperOrigin-RevId: 530888319
Configuration menu - View commit details
-
Copy full SHA for 2b79dee - Browse repository at this point
Copy the full SHA 2b79deeView commit details -
Remove a copybara stripping tag
#minor-release PiperOrigin-RevId: 530935437
Configuration menu - View commit details
-
Copy full SHA for be9bc32 - Browse repository at this point
Copy the full SHA be9bc32View commit details -
*** Original commit *** Create InAppMuxer in transformer To use the InAppMuxer, the client needs to pass InAppMuxer Factory. *** PiperOrigin-RevId: 531056436
Configuration menu - View commit details
-
Copy full SHA for 7ebc945 - Browse repository at this point
Copy the full SHA 7ebc945View commit details -
media3: Capitalize "MIME" for MIME types.
Find and replace "mime" to "MIME", where appropriate, throughout media3. PiperOrigin-RevId: 531122121
Configuration menu - View commit details
-
Copy full SHA for 04ef3ae - Browse repository at this point
Copy the full SHA 04ef3aeView commit details -
Move VideoFrameProcessorFactory setter to Transformer
PiperOrigin-RevId: 531123743
Configuration menu - View commit details
-
Copy full SHA for e10270e - Browse repository at this point
Copy the full SHA e10270eView commit details -
Small fixes in TextureAssetLoader
The texture input tests in TransformerEndToEndTest were not passing on Pixel 7. Implemented a fix and fixed other minor threading issues I spotted while looking at the code. PiperOrigin-RevId: 531141659
Configuration menu - View commit details
-
Copy full SHA for 25e793f - Browse repository at this point
Copy the full SHA 25e793fView commit details
Commits on May 12, 2023
-
Refactor ChainingGlShaderProgramListener to use FrameConsumptionManager
PiperOrigin-RevId: 531180020
Configuration menu - View commit details
-
Copy full SHA for 4a05988 - Browse repository at this point
Copy the full SHA 4a05988View commit details -
End-to-end Robolectric playback test for audio capabilities
This change adds end-to-end Robolectric playback tests which handle the scenario the player is playing audio via passthrough and AudioTrack raises the ERROR_DEAD_OBJECT error upon which the player attempts to recover by switching to another audio format. PiperOrigin-RevId: 531180183
Configuration menu - View commit details
-
Copy full SHA for 5d0cc24 - Browse repository at this point
Copy the full SHA 5d0cc24View commit details -
Test: Suppress failing 8k24 SSIM bug.
PiperOrigin-RevId: 531193242
Configuration menu - View commit details
-
Copy full SHA for 32d10c6 - Browse repository at this point
Copy the full SHA 32d10c6View commit details -
Test: Filter test more precisely, with model instead of manufacturer
PiperOrigin-RevId: 531233480
Configuration menu - View commit details
-
Copy full SHA for ef48836 - Browse repository at this point
Copy the full SHA ef48836View commit details -
Remove the media3
MediaLibraryInfoTest
from exoplayer2This was added in 75cde0a but was accidentally exported to the exoplayer2 GitHub repo (where `MediaLibraryInfo` is not present). #minor-release PiperOrigin-RevId: 531235570
Configuration menu - View commit details
-
Copy full SHA for 3d4ebce - Browse repository at this point
Copy the full SHA 3d4ebceView commit details -
Test: Relax constraints on selected Sony devices.
Until the linked bug is fixed, relax constraints to allow this one device to pass, to suppress failures and avoid triage toil. PiperOrigin-RevId: 531259233
Configuration menu - View commit details
-
Copy full SHA for 10c2e08 - Browse repository at this point
Copy the full SHA 10c2e08View commit details -
Update the root project name check in
publish.gradle
The name was changed in 052c358 and this check wasn't updated, meaning publishing no longer worked (it didn't publish anything, just printed lots of warnings like `Skipping task ':test-utils-robolectric:publish' as it has no actions.`). This change means the check is now using the same source-of-truth as the root project name, so it shouldn't go out of sync again. #minor-release PiperOrigin-RevId: 531457952
Configuration menu - View commit details
-
Copy full SHA for eb14da5 - Browse repository at this point
Copy the full SHA eb14da5View commit details
Commits on May 17, 2023
-
Configuration menu - View commit details
-
Copy full SHA for c2c929f - Browse repository at this point
Copy the full SHA c2c929fView commit details -
Add test file with metadata track
Mp4Muxer supports adding Metadata track. Added test file to cover this scenario. PiperOrigin-RevId: 531496409 (cherry picked from commit 1bcd0ce)
Configuration menu - View commit details
-
Copy full SHA for 1af981d - Browse repository at this point
Copy the full SHA 1af981dView commit details -
This module will contain functionalities common to extractor and muxer. PiperOrigin-RevId: 531501602 (cherry picked from commit 4cfab48)
Configuration menu - View commit details
-
Copy full SHA for 2bc64f9 - Browse repository at this point
Copy the full SHA 2bc64f9View commit details -
Transformer: Add latest input format to DebugTraceUtil
This can provide more information to help debug muxer errors PiperOrigin-RevId: 531521974 (cherry picked from commit baeab6d)
Configuration menu - View commit details
-
Copy full SHA for 14c52b4 - Browse repository at this point
Copy the full SHA 14c52b4View commit details -
Configuration menu - View commit details
-
Copy full SHA for cc4f10b - Browse repository at this point
Copy the full SHA cc4f10bView commit details -
Remove two deprecated
SimpleCache
constructorsUse a non-deprecated constructor that takes a `DatabaseProvider` instead for better performance. #minor-release PiperOrigin-RevId: 532046598 (cherry picked from commit 2dd3c3b)
Configuration menu - View commit details
-
Copy full SHA for 95bd42d - Browse repository at this point
Copy the full SHA 95bd42dView commit details -
Signal end-of-stream after creating latch
The output end-of-stream notification from the last shader could theoretically arrive before the latch for detecting it is created, which might cause waiting on the latch indefinitely. Create the latch before signaling end of stream so that it's guaranteed to be set before the end-of-stream signal arrives. PiperOrigin-RevId: 532056472 (cherry picked from commit 53c379c)
Configuration menu - View commit details
-
Copy full SHA for 45b51d2 - Browse repository at this point
Copy the full SHA 45b51d2View commit details -
Refactor SequenceAssetLoader release
In the past, the SequenceAssetLoader was released in TransformerInternal when the export ended. 782f19e was made to release the SequenceAssetLoader earlier, when loading ended. This was causing player release timeouts because the last AssetLoader in the sequence was released before the SamplePipelines (see 78669f8 for more information). The code that was releasing the SequenceAssetLoader was first commented out because we didn't have an understanding of what was happening. This change removes the early SequenceAssetLoader release all together. It doesn't have any effect as this code was already commented out. PiperOrigin-RevId: 532065673 (cherry picked from commit ff515c1)
Configuration menu - View commit details
-
Copy full SHA for 31a9680 - Browse repository at this point
Copy the full SHA 31a9680View commit details -
Delete deprecated zero-arg
DefaultBandwidthMeter
constructorUse `DefaultBandwidthMeter.Builder` instead. #minor-release PiperOrigin-RevId: 532069549 (cherry picked from commit 8a9ac8a)
Configuration menu - View commit details
-
Copy full SHA for 02b989f - Browse repository at this point
Copy the full SHA 02b989fView commit details -
Fix lost shader input capacity after end-of-stream
When exporting compositions with multiple images in a row, transformation could get stuck if a shader was ready to accept input when end-of-stream was already signaled and queued from upstream. Fix accounting for the downstream capacity. Manually tested on concatenations with several images and several videos in a row, by adding logging and verifying the capacity updates as expected across edited media item transitions. PiperOrigin-RevId: 532088793 (cherry picked from commit 73d05d5)
Configuration menu - View commit details
-
Copy full SHA for 568233f - Browse repository at this point
Copy the full SHA 568233fView commit details -
Effect: Multiple Texture output
Allow the VideoFrameProcessor to output multiple textures at a time, so that lifetime of textures is up to the consumer calling VFP.releaseOutputFrame. The FinalShaderProgramWrapper also has a new maxCapacity limit added, to ensure the a reasonable amount of textures is used and avoid using up memory. PiperOrigin-RevId: 532094256 (cherry picked from commit 025f71b)
Configuration menu - View commit details
-
Copy full SHA for 719715d - Browse repository at this point
Copy the full SHA 719715dView commit details -
Remove deprecated
DefaultDrmSessionManager
constructorsUse `DefaultDrmSessionManager.Builder` instead. #minor-release PiperOrigin-RevId: 532102375 (cherry picked from commit 9d039c6)
Configuration menu - View commit details
-
Copy full SHA for 7ebf05c - Browse repository at this point
Copy the full SHA 7ebf05cView commit details -
Allow ExoPlayer to opt into volume device control, forbidden by default
PiperOrigin-RevId: 532136692 (cherry picked from commit 4518dbf)
Configuration menu - View commit details
-
Copy full SHA for cc1ad85 - Browse repository at this point
Copy the full SHA cc1ad85View commit details -
Add Player.replaceMediaItem(s)
This methods allows to replace single items or a range of items directly without using separate operations for add and remove. The advantage is more readable code for apps and the potential for player implementations to optimize this process (e.g. only replace values without interrupting playback). The current change just introduces the API with its default behavior. The default logic will be removed again in the future in favor of better logic in the Player implementations. Issue: #8046 PiperOrigin-RevId: 532151471 (cherry picked from commit 7289186)
Configuration menu - View commit details
-
Copy full SHA for 6197b57 - Browse repository at this point
Copy the full SHA 6197b57View commit details -
Remove two deprecated
InvalidResponseCodeException
constructorsUse a non-deprecated constructor that accepts additional fields(`cause`, `responseBody`) to enhance error logging. #minor-release PiperOrigin-RevId: 532190896 (cherry picked from commit d73f7dd)
Configuration menu - View commit details
-
Copy full SHA for 14026a5 - Browse repository at this point
Copy the full SHA 14026a5View commit details -
Test: Suppress SSIM timeouts on galaxy fold/flip.
This is a failure only in SSIM, so it seems unlikely we'll prioritize this over other work or bugs soon. Suppress test failures to reduce triage burden. PiperOrigin-RevId: 532200729 (cherry picked from commit 7050340)
Configuration menu - View commit details
-
Copy full SHA for 05c2ff3 - Browse repository at this point
Copy the full SHA 05c2ff3View commit details -
Update mixed input test to include images of different aspect ratios
Makes this test a little more thorough. PiperOrigin-RevId: 532386515 (cherry picked from commit 8ab38dc)
Configuration menu - View commit details
-
Copy full SHA for fcc11a0 - Browse repository at this point
Copy the full SHA fcc11a0View commit details -
Configuration menu - View commit details
-
Copy full SHA for 73b8233 - Browse repository at this point
Copy the full SHA 73b8233View commit details
Commits on May 18, 2023
-
Remove deprecated
DownloadHelper
format-specific methodsUse `forMediaItem` instead. PiperOrigin-RevId: 532414060 (cherry picked from commit e19e828)
Configuration menu - View commit details
-
Copy full SHA for 82500e6 - Browse repository at this point
Copy the full SHA 82500e6View commit details -
Increase ExoPlayer version number to 2.18.7
#minor-release PiperOrigin-RevId: 532436786 (cherry picked from commit 0b0695a)
Configuration menu - View commit details
-
Copy full SHA for 379330e - Browse repository at this point
Copy the full SHA 379330eView commit details -
Remove deprecated
DownloadService
constructorUse a non deprecated constructor that includes the option to provide a `channelDescriptionResourceId` parameter. #minor-release PiperOrigin-RevId: 532450975 (cherry picked from commit 173e1b9)
Configuration menu - View commit details
-
Copy full SHA for 2b1e04e - Browse repository at this point
Copy the full SHA 2b1e04eView commit details -
Map lib-muxer and lib-container from androidx to exoplayer2
PiperOrigin-RevId: 532458665 (cherry picked from commit 18bbc94)
Configuration menu - View commit details
-
Copy full SHA for 74c6ca1 - Browse repository at this point
Copy the full SHA 74c6ca1View commit details -
Add release notes for ExoPlayer 2.18.7 release
#minor-release PiperOrigin-RevId: 532462895 (cherry picked from commit 6a401ad)
Configuration menu - View commit details
-
Copy full SHA for 749dcef - Browse repository at this point
Copy the full SHA 749dcefView commit details -
Adjust image input ForPixelWidthHeightRatio
PiperOrigin-RevId: 532463400 (cherry picked from commit a6f5d38)
Configuration menu - View commit details
-
Copy full SHA for 944b51f - Browse repository at this point
Copy the full SHA 944b51fView commit details -
Remove deprecated String constants for Charsets
Use Kotlin Charsets from the `kotlin.text` package, the `java.nio.charset.StandardCharsets` or the `com.google.common.base.Charsets` instead. #minor-release PiperOrigin-RevId: 532469103 (cherry picked from commit 1f803a6)
Configuration menu - View commit details
-
Copy full SHA for fbbc716 - Browse repository at this point
Copy the full SHA fbbc716View commit details -
Remove deprecated
WorkManagerScheduler
constructorUse a non deprecated constructor that includes the option to provide a `Context` parameter instead. #minor-release PiperOrigin-RevId: 532535770 (cherry picked from commit 2570b92)
Configuration menu - View commit details
-
Copy full SHA for a92eff0 - Browse repository at this point
Copy the full SHA a92eff0View commit details -
Avoid using @see in the summary fragment in C.java
PiperOrigin-RevId: 532536037 (cherry picked from commit 82abbd0)
Configuration menu - View commit details
-
Copy full SHA for 74e2d87 - Browse repository at this point
Copy the full SHA 74e2d87View commit details -
Simplify FrameConsumptionManager onReadyToAcceptInputFrame logic
Propagate the "end of current stream" signal directly after queueing the last frame, instead of waiting for the next onReadyToAcceptInputFrame() call. PiperOrigin-RevId: 532739462 (cherry picked from commit 410debd)
Configuration menu - View commit details
-
Copy full SHA for 8a8c5d5 - Browse repository at this point
Copy the full SHA 8a8c5d5View commit details -
Move NAL unit related methods from common to container module
PiperOrigin-RevId: 532750099 (cherry picked from commit da5911d)
Configuration menu - View commit details
-
Copy full SHA for 555fc8d - Browse repository at this point
Copy the full SHA 555fc8dView commit details -
Effect: Make TexturePool and use in FinalWrapper.
Have the FinalShaderProgramWrapper / VideoFrameProcessor texture output access textures provided through a texture pool, that recycles used textures. Also, add the TexturePool interface to generally re-use textures. PiperOrigin-RevId: 532754377 (cherry picked from commit 1f9977f)
Configuration menu - View commit details
-
Copy full SHA for 5712a5b - Browse repository at this point
Copy the full SHA 5712a5bView commit details -
Update javadoc for ExoPlayer 2.18.7
PiperOrigin-RevId: 532770925 (cherry picked from commit 937f3b5)
Configuration menu - View commit details
-
Copy full SHA for e554d80 - Browse repository at this point
Copy the full SHA e554d80View commit details -
Move Mp4LocationData from extractor module to container module
This class will be shared between extractor and muxer module. PiperOrigin-RevId: 532784415 (cherry picked from commit 3aad4f1)
Configuration menu - View commit details
-
Copy full SHA for 0445c1c - Browse repository at this point
Copy the full SHA 0445c1cView commit details -
HDR: Blocklist Galaxy Z Fold 4 for HLG tone mapping.
This device failed on HdrEditingTest's exportAndTranscode_hlg10File_whenHdrEditingUnsupported_toneMapsOrThrows before this CL, and succeeds on that test after this CL. PiperOrigin-RevId: 532796897 (cherry picked from commit 68946d9)
Configuration menu - View commit details
-
Copy full SHA for 4c1438b - Browse repository at this point
Copy the full SHA 4c1438bView commit details -
Remove deprecated methods that create an instance of
Format
Use `Format.Builder` instead. #minor-release PiperOrigin-RevId: 532808478 (cherry picked from commit 5d0366b)
Configuration menu - View commit details
-
Copy full SHA for d9a3f9c - Browse repository at this point
Copy the full SHA d9a3f9cView commit details -
Add default constructor for InAppMuxer.Factory
PiperOrigin-RevId: 532838813 (cherry picked from commit bd95fcd)
Configuration menu - View commit details
-
Copy full SHA for a300a50 - Browse repository at this point
Copy the full SHA a300a50View commit details -
Remove deprecated methods
Format.copyWithXXX
Use `Format.buildUpon()` and `setXXX` instead. #minor-release PiperOrigin-RevId: 532840625 (cherry picked from commit 19b6ce5)
Configuration menu - View commit details
-
Copy full SHA for 1edec28 - Browse repository at this point
Copy the full SHA 1edec28View commit details -
PiperOrigin-RevId: 532846248 (cherry picked from commit 43638cd)
Configuration menu - View commit details
-
Copy full SHA for fe51d01 - Browse repository at this point
Copy the full SHA fe51d01View commit details -
Configuration menu - View commit details
-
Copy full SHA for 16db5db - Browse repository at this point
Copy the full SHA 16db5dbView commit details
Commits on May 25, 2023
-
Always use sRGB/BT.709 for bitmap inputs
PiperOrigin-RevId: 533117700 (cherry picked from commit c5ec457)
Configuration menu - View commit details
-
Copy full SHA for 35466ac - Browse repository at this point
Copy the full SHA 35466acView commit details -
Add argument validation in Mp4LocationData
PiperOrigin-RevId: 533121451 (cherry picked from commit 2a411ec)
Configuration menu - View commit details
-
Copy full SHA for c3b6e83 - Browse repository at this point
Copy the full SHA c3b6e83View commit details -
Use TestUtil.getPublicMethods instead of getDeclaredMethods
JaCoCo introduces private synthetic methods (even on interfaces) which have to be skipped when checking that a 'forwarding' implementation does forward everything. Instead we can use the existing `getPublicMethods()` method which implicitly skips these (since they're private). PiperOrigin-RevId: 533130932 (cherry picked from commit 1c104f6)
Configuration menu - View commit details
-
Copy full SHA for 20b9129 - Browse repository at this point
Copy the full SHA 20b9129View commit details -
Allow
mock(Random.class)
to work with Java 17https://stackoverflow.com/questions/70993863/mockito-can-not-mock-random-in-java-17 #minor-release PiperOrigin-RevId: 533161221 (cherry picked from commit 0460e1a)
Configuration menu - View commit details
-
Copy full SHA for 40c5b58 - Browse repository at this point
Copy the full SHA 40c5b58View commit details -
Effect: Use callback to release texture
This allows us to avoid needing a reference to the VideoFrameProcessor, which can be especially difficult if an App only has a reference to the VideoFrameProcessor.Factory it passes into Transformer/ExoPlayer. PiperOrigin-RevId: 533205983 (cherry picked from commit 4d7c57e)
Configuration menu - View commit details
-
Copy full SHA for 4c2d546 - Browse repository at this point
Copy the full SHA 4c2d546View commit details -
Add FilteringMediaSource that only provides tracks of given types
This is useful for cases where only certain types (e.g. only video) from a source are needed and other tracks should be filtered out completely to avoid later track selection issues. #minor-release PiperOrigin-RevId: 533394658 (cherry picked from commit 78c56d2)
Configuration menu - View commit details
-
Copy full SHA for 6ac3dd9 - Browse repository at this point
Copy the full SHA 6ac3dd9View commit details -
Add a getter method for texture manager
PiperOrigin-RevId: 533402277 (cherry picked from commit 03e3ce1)
Configuration menu - View commit details
-
Copy full SHA for 6f028be - Browse repository at this point
Copy the full SHA 6f028beView commit details -
Remove deprecated
ExoPlayer.retry()
, useprepare()
instead.#minor-release PiperOrigin-RevId: 533463348 (cherry picked from commit fa21b2e)
Configuration menu - View commit details
-
Copy full SHA for c486822 - Browse repository at this point
Copy the full SHA c486822View commit details
Commits on May 26, 2023
-
Set video size to 0/0 when video render is disabled
In terms of MCVR with a `VideoRendererEventListener`, the video size is set to 0/0 right after `onVideoDisabled()` is called and is set to the actual size as soon as the video size is known after 'onVideoEnabled()`. For ExoPlayer and in terms of the `Player` interface, `Player.getVideoSize()` returns a video size of 0/0 when `Player.getCurrentTracks()` does not support `C.TRACK_TYPE_VIDEO`. This is ensured by the masking behavior of `ExoPlayerImpl` that sets an empty track selection result when the playing period changes due to a seek or timeline removal. When transitioning playback from a video media item to the next, or when seeking within the same video media item, the renderer is not disabled. #minor-release PiperOrigin-RevId: 533479600 (cherry picked from commit f38cbad)
Configuration menu - View commit details
-
Copy full SHA for a762f19 - Browse repository at this point
Copy the full SHA a762f19View commit details -
Move MdtaMetadataEntry class into container module
This class is to be shared between extractor, transformer and muxer module. PiperOrigin-RevId: 533490888 (cherry picked from commit fe5dedb)
Configuration menu - View commit details
-
Copy full SHA for dfbfdc8 - Browse repository at this point
Copy the full SHA dfbfdc8View commit details -
Make DrmConfiguration Bundleable
PiperOrigin-RevId: 533721679 (cherry picked from commit 5e73345)
Configuration menu - View commit details
-
Copy full SHA for 01e5f46 - Browse repository at this point
Copy the full SHA 01e5f46View commit details -
Remove deprecated zero-arg
DefaultTrackSelector
constructorUse `DefaultTrackSelector(Context)` instead. #minor-release PiperOrigin-RevId: 533985937 (cherry picked from commit a8928fb)
Configuration menu - View commit details
-
Copy full SHA for 9066652 - Browse repository at this point
Copy the full SHA 9066652View commit details -
PiperOrigin-RevId: 534015933 (cherry picked from commit 65c33e6)
Configuration menu - View commit details
-
Copy full SHA for 82af7f1 - Browse repository at this point
Copy the full SHA 82af7f1View commit details -
Use
Ascii
for conversion to lower casePiperOrigin-RevId: 534016337 (cherry picked from commit 42632b2)
Configuration menu - View commit details
-
Copy full SHA for 2469ee4 - Browse repository at this point
Copy the full SHA 2469ee4View commit details -
This field is always accessed with the mutex held. PiperOrigin-RevId: 534027096 (cherry picked from commit ea42465)
Configuration menu - View commit details
-
Copy full SHA for ce12edf - Browse repository at this point
Copy the full SHA ce12edfView commit details -
The main interface documentation hasn't been updated substantially since 2017 and is missing notes for many of its current features and requirements. Also change the recommendation for implementors from BasePlayer to SimpleBasePlayer to ensure new classes are more likely to cover all of the interface requirements. #minor-release PiperOrigin-RevId: 534027117 (cherry picked from commit d75e24a)
Configuration menu - View commit details
-
Copy full SHA for 9f6969b - Browse repository at this point
Copy the full SHA 9f6969bView commit details -
Untangle PlayerInfo/PlaybackInfo updates
The methods in ExoPlayerImpl and MediaControllerImplBase that determine the new PlayerInfo/PlaybackInfo currently have a hard-to-reason-about setup where the method generating the new info accesses other methods that rely on the existing class field instead of working with the passed in PlayerInfo/PlaybackInfo. This prevents reuse of the util methods (e.g. for replaceMediaItems) because they access potentially stale state. This change untangles these methods a bit by making the util methods either static or at least ensure that they don't rely on existing class fields of PlayerInfo/PlaybackInfo. Overall, the change is a complete no-op. #minor-release PiperOrigin-RevId: 534036633 (cherry picked from commit f898a7f)
Configuration menu - View commit details
-
Copy full SHA for a80b167 - Browse repository at this point
Copy the full SHA a80b167View commit details -
ExoPlayer: Add setVideoFrameProcessorFactory().
This allows apps to use a custom VideoFrameProcessor implementation for video playback. This may be useful, for example, when outputting to a texture. PiperOrigin-RevId: 534044831 (cherry picked from commit 703923d)
Configuration menu - View commit details
-
Copy full SHA for 05c5fe2 - Browse repository at this point
Copy the full SHA 05c5fe2View commit details -
Effect: Add GlTextureInfo release() and accessor methods.
This allows us to disallow access after release. PiperOrigin-RevId: 534046475 (cherry picked from commit d357cd6)
Configuration menu - View commit details
-
Copy full SHA for e755359 - Browse repository at this point
Copy the full SHA e755359View commit details -
Write metadata to Mp4Muxer in the release() method
Earlier metadata was written multiple times as it came. With new changes, all the distinct metadata entries will get collected and will be written at once in the end. PiperOrigin-RevId: 534088401 (cherry picked from commit f88fde8)
Configuration menu - View commit details
-
Copy full SHA for 0e937ff - Browse repository at this point
Copy the full SHA 0e937ffView commit details -
Fix a bug when seeking in an opus container. The calculations inside DefaultOggSeeker may overflow a long primitive. Issue: androidx/media#391 #minor-release PiperOrigin-RevId: 534128513 (cherry picked from commit 5535cd1)
Configuration menu - View commit details
-
Copy full SHA for 85a9d56 - Browse repository at this point
Copy the full SHA 85a9d56View commit details -
Add artwork display mode to PlayerView
This change deprecates `PlayerView.setUseArtwork(boolean)` and introduces `setArtworkDisplayMode(mode)` and `artworkDisplayMode="off|fit|fill"` instead. - off: no artwork is displayed (like deprecated useArtwork=false) - fit: letterbox like media (like deprecated useArtwork=true) - fill: scales the artwork to fill the entire width/weight of the player view #minor-release PiperOrigin-RevId: 534167226 (cherry picked from commit 7f3f2fe)
Configuration menu - View commit details
-
Copy full SHA for d0a3468 - Browse repository at this point
Copy the full SHA d0a3468View commit details -
Remove deprecated
ExoPlayer.setHandleWakeLock(boolean)
Use `setWakeMode(int)` instead. #minor-release PiperOrigin-RevId: 534344010 (cherry picked from commit 90303e4)
Configuration menu - View commit details
-
Copy full SHA for c9706e9 - Browse repository at this point
Copy the full SHA c9706e9View commit details -
Remove deprecated `DefaultLoadControl.Builder.createDefaultLoadContro…
…l()` Use `build()` instead. #minor-release PiperOrigin-RevId: 534348979 (cherry picked from commit b71487e)
Configuration menu - View commit details
-
Copy full SHA for 78414e9 - Browse repository at this point
Copy the full SHA 78414e9View commit details -
Remove deprecated
DownloadManager
constructorUse the constructor that takes an `Executor` instead. #minor-release PiperOrigin-RevId: 534370613 (cherry picked from commit b56fddf)
Configuration menu - View commit details
-
Copy full SHA for 3643b4e - Browse repository at this point
Copy the full SHA 3643b4eView commit details -
Make MediaItem.SubtitleConfiguration bundleable
PiperOrigin-RevId: 534390168 (cherry picked from commit 3ac41de)
Configuration menu - View commit details
-
Copy full SHA for b79800a - Browse repository at this point
Copy the full SHA b79800aView commit details -
Remove deprecated
Cue
constructors, useCue.Builder
instead#minor-release PiperOrigin-RevId: 534412494 (cherry picked from commit 6dcd627)
Configuration menu - View commit details
-
Copy full SHA for 54a7b95 - Browse repository at this point
Copy the full SHA 54a7b95View commit details -
Remove deprecated
OfflineLicenseHelper
constructorUse the non-deprecated constructor instead. #minor-release PiperOrigin-RevId: 534426655 (cherry picked from commit 523ec80)
Configuration menu - View commit details
-
Copy full SHA for a246969 - Browse repository at this point
Copy the full SHA a246969View commit details -
Remove four deprecated AnalyticsListener decoder methods
Use the audio or video specific variants instead. #minor-release PiperOrigin-RevId: 534436644 (cherry picked from commit 868e442)
Configuration menu - View commit details
-
Copy full SHA for 81c666f - Browse repository at this point
Copy the full SHA 81c666fView commit details -
Improve MediaSource threading constraints documentation
And fix violation of this in AdsMediaSource. #minor-release PiperOrigin-RevId: 534441648 (cherry picked from commit 23b53fc)
Configuration menu - View commit details
-
Copy full SHA for 1fc7612 - Browse repository at this point
Copy the full SHA 1fc7612View commit details -
Ensure
rootProject.name
is only set fromsettings.gradle
I moved this assignment in 326f53a in order to provide a single source-of-truth for `publish.gradle`, but as pointed out in Issue: androidx/media#416 this breaks apps that are depending on our project locally using the instructions we publish. Instead we can remove the `rootProject.name` check from `publish.gradle`, and check an explicit boolean value instead to indicate if the root project is 'ours' (with this boolean only set from `settings.gradle`, so it doesn't get picked up by apps depending on us locally). #minor-release PiperOrigin-RevId: 534459085 (cherry picked from commit 3ca3e11)
Configuration menu - View commit details
-
Copy full SHA for 79cef8c - Browse repository at this point
Copy the full SHA 79cef8cView commit details -
Add support for updating Metadata entries via InAppMuxer
Mp4Muxer already supports writing Mp4LocationData so added that as supported Metadata entry. Support for more Metadata entries will be added in upcoming CLs. PiperOrigin-RevId: 534473866 (cherry picked from commit 24753da)
Configuration menu - View commit details
-
Copy full SHA for dea1390 - Browse repository at this point
Copy the full SHA dea1390View commit details -
- Number of frames from SurfaceTexture that is sent downstream - Times ExtTexMgr signaled end of current input stream PiperOrigin-RevId: 534487842 (cherry picked from commit d21bf0e)
Configuration menu - View commit details
-
Copy full SHA for 4a0660f - Browse repository at this point
Copy the full SHA 4a0660fView commit details -
Codec: Reduce limit for max decoder pending output frames.
Tentative/experimental value to reduce codec timeouts. We will reconsider using a larger limit after seeing whether this really does reduce error rate. PiperOrigin-RevId: 534491615 (cherry picked from commit 8d7848a)
Configuration menu - View commit details
-
Copy full SHA for 08d7aa3 - Browse repository at this point
Copy the full SHA 08d7aa3View commit details -
Remove deprecated
onSeekProcessed
This change removes it from `Player.Listener` and `AnalyticsListener`, use `onPositionDiscontinuity` with `DISCONTINUITY_REASON_SEEK` instead. #minor-release PiperOrigin-RevId: 534757426 (cherry picked from commit 624ab25)
Configuration menu - View commit details
-
Copy full SHA for c9e21e3 - Browse repository at this point
Copy the full SHA c9e21e3View commit details -
Add support for adding XMP data via transformer
PiperOrigin-RevId: 534801202 (cherry picked from commit be6f5e4)
Configuration menu - View commit details
-
Copy full SHA for 0d15664 - Browse repository at this point
Copy the full SHA 0d15664View commit details -
Add support for adding capture FPS via transformer
PiperOrigin-RevId: 534814892 (cherry picked from commit cf4be52)
Configuration menu - View commit details
-
Copy full SHA for 348157a - Browse repository at this point
Copy the full SHA 348157aView commit details -
Add clarifiying note to Player.replaceMediaItem
This helps to highlight that the replaced range doesn't need to have the same size as before. #minor-release PiperOrigin-RevId: 534834917 (cherry picked from commit 19ded9c)
Configuration menu - View commit details
-
Copy full SHA for 75af95e - Browse repository at this point
Copy the full SHA 75af95eView commit details -
Make MediaItem.AdsConfiguration bundleable
PiperOrigin-RevId: 534848363 (cherry picked from commit e8a9349)
Configuration menu - View commit details
-
Copy full SHA for e446642 - Browse repository at this point
Copy the full SHA e446642View commit details -
Fix `@param`s and clarify wording. PiperOrigin-RevId: 534857204 (cherry picked from commit 07e6708)
Configuration menu - View commit details
-
Copy full SHA for 5dfb011 - Browse repository at this point
Copy the full SHA 5dfb011View commit details -
Keep aspect ratio of
PlayerView
when IDLEWhen the video renderer is disabled, the video size is set to 0/0 and sent to listeners. The `PlayerView` potentially still has the last frame displayed when the player is stopped or an error occurs. This may have the effect that the frame is displayed distorted. Not changing the aspect ratio when the video size arrives when the player is IDLE avoids the problem. In the case when playback starts again and the renderes is enabled, another video size is sent to the listener. #minor-release PiperOrigin-RevId: 534860889 (cherry picked from commit 3e3aaf8)
Configuration menu - View commit details
-
Copy full SHA for 97f3e13 - Browse repository at this point
Copy the full SHA 97f3e13View commit details -
Clarify color transfers for internal textures
PiperOrigin-RevId: 534869452 (cherry picked from commit a785d7d)
Configuration menu - View commit details
-
Copy full SHA for 9b5040f - Browse repository at this point
Copy the full SHA 9b5040fView commit details -
Effects: Have VFP texture output disable surface output.
Also, document that texture output disables manual frame release. In the past, texture output would lead to surface output methods throwing. Now, they're simply no-ops instead. PiperOrigin-RevId: 534894168 (cherry picked from commit 21ee2e2)
Configuration menu - View commit details
-
Copy full SHA for ff4bc62 - Browse repository at this point
Copy the full SHA ff4bc62View commit details -
Configuration menu - View commit details
-
Copy full SHA for ebb9e75 - Browse repository at this point
Copy the full SHA ebb9e75View commit details -
Merge pull request #386 from yschimke:icon
PiperOrigin-RevId: 534927167 (cherry picked from commit d8e30c3)
Configuration menu - View commit details
-
Copy full SHA for 4a12546 - Browse repository at this point
Copy the full SHA 4a12546View commit details -
Implement Player.replaceMediaItem(s)
This change moves the default logic into the actual Player implementations, but does not introduce any behavior changes compared to addMediaItems+removeMediaItems except to make the updates "atomic" in ExoPlayerImpl, SimpleBasePlayer and MediaController. It also provides backwards compatbility for cases where Players don't support the operation. Issue: #8046 #minor-release PiperOrigin-RevId: 534945089 (cherry picked from commit 6309b11)
Configuration menu - View commit details
-
Copy full SHA for 6a9cb2c - Browse repository at this point
Copy the full SHA 6a9cb2cView commit details -
Move OnInputFrameProcessedListener into it's own file
PiperOrigin-RevId: 535183521 (cherry picked from commit c9ca510)
Configuration menu - View commit details
-
Copy full SHA for c28d8b5 - Browse repository at this point
Copy the full SHA c28d8b5View commit details -
Show the file path of the exported output video.
PiperOrigin-RevId: 535233266 (cherry picked from commit 02698a8)
Configuration menu - View commit details
-
Copy full SHA for 95fdd3f - Browse repository at this point
Copy the full SHA 95fdd3fView commit details -
Merge pull request #335 from cedricxperi:dts-direct-passthrough-support
PiperOrigin-RevId: 535255453 (cherry picked from commit 6a91670)
Configuration menu - View commit details
-
Copy full SHA for 9466d5d - Browse repository at this point
Copy the full SHA 9466d5dView commit details -
#minor-release PiperOrigin-RevId: 535268825 (cherry picked from commit e7d1c57)
Configuration menu - View commit details
-
Copy full SHA for 1b302db - Browse repository at this point
Copy the full SHA 1b302dbView commit details
Commits on May 30, 2023
-
Configuration menu - View commit details
-
Copy full SHA for a984e29 - Browse repository at this point
Copy the full SHA a984e29View commit details -
*** Original commit *** ExoPlayer: Add setVideoFrameProcessorFactory(). This allows apps to use a custom VideoFrameProcessor implementation for video playback. This may be useful, for example, when outputting to a texture. *** PiperOrigin-RevId: 536391597 (cherry picked from commit dbbb091)
Configuration menu - View commit details
-
Copy full SHA for aec098a - Browse repository at this point
Copy the full SHA aec098aView commit details
Commits on Jun 5, 2023
-
Fix recreation of DefaultShaderProgram in FinalWrapper
`outputSurfaceInfoChanged` is not reset when `defaultShaderProgram` is null. That is, on the first time `ensureConfigured()` is called with output size changed, `outputSurfaceInfoChanged` is not set to false after creating the `defaultShaderProgram`, and `defaultShaderProgram` will be created again on the second time `ensureConfigured()` is called. PiperOrigin-RevId: 537870404 (cherry picked from commit 3d8a2f8)
Configuration menu - View commit details
-
Copy full SHA for 82fcbd2 - Browse repository at this point
Copy the full SHA 82fcbd2View commit details -
Override ParserException#getMessage
PiperOrigin-RevId: 537908595 (cherry picked from commit f8be8c0)
Configuration menu - View commit details
-
Copy full SHA for 6226310 - Browse repository at this point
Copy the full SHA 6226310View commit details -
Allow playback of
MediaItems
withLocalConfiguration
When initiated by MediaController, it should be possible for `MediaSession` to pass `MediaItems` to the `Player` if they have `LocalConfiguration`. In such case, it is not required to override `MediaSession.Callback.onAddMediaItems`, because the new current default implementation will handle it. However, in other cases, MediaItem.toBundle() will continue to strip the LocalConfiguration information. Issue: androidx/media#282 #minor-release PiperOrigin-RevId: 537993460 (cherry picked from commit bcddaf2)
Configuration menu - View commit details
-
Copy full SHA for 630abd8 - Browse repository at this point
Copy the full SHA 630abd8View commit details -
Revert AndroidTestUtil.canDecode to use EncoderUtil.findCodecForFormat
Configuration menu - View commit details
-
Copy full SHA for d5f0ff0 - Browse repository at this point
Copy the full SHA d5f0ff0View commit details
Commits on Jun 6, 2023
-
Add utility to create ScheduledExecutorService
PiperOrigin-RevId: 538129792 (cherry picked from commit 13df52b)
Configuration menu - View commit details
-
Copy full SHA for 72983cb - Browse repository at this point
Copy the full SHA 72983cbView commit details -
Defer outputting the metadata sample when TimestampAdjuster isn't ini…
…tialized The sample timestamp carried by the emsg box can have a significant delta when comparing to the earliest presentation timestamp of the segment. Using this timestamp to intialize the timestamp offset in TimestampAdjuster will cause the media sample to have a wrong adjusted timestamp. So we should defer adjusting the metadata sample timestamp until the TimestampAdjuster is initialized with a real media sample. PiperOrigin-RevId: 538172841 (cherry picked from commit 08c189e)
Configuration menu - View commit details
-
Copy full SHA for 07a1998 - Browse repository at this point
Copy the full SHA 07a1998View commit details -
Merge pull request #425 from vishnuchilakala:set_min_live_position
PiperOrigin-RevId: 538173603 (cherry picked from commit 2c7d929)
Configuration menu - View commit details
-
Copy full SHA for df80690 - Browse repository at this point
Copy the full SHA df80690View commit details -
Add support for passing creation time via InAppMuxer
PiperOrigin-RevId: 538175466 (cherry picked from commit 6dc8e06)
Configuration menu - View commit details
-
Copy full SHA for bbd7bd8 - Browse repository at this point
Copy the full SHA bbd7bd8View commit details -
Merge pull request #439 from kaidokert:pick_workaround
PiperOrigin-RevId: 538209925 (cherry picked from commit 824960b)
Configuration menu - View commit details
-
Copy full SHA for 2ca5cef - Browse repository at this point
Copy the full SHA 2ca5cefView commit details
Commits on Jun 7, 2023
-
Log additional information on test runner timeout
PiperOrigin-RevId: 538437142 (cherry picked from commit 136f323)
Configuration menu - View commit details
-
Copy full SHA for 39de7a6 - Browse repository at this point
Copy the full SHA 39de7a6View commit details -
Effect: Add multiple texture output test.
Confirms that multiple textures can be output, and that timestamps and pixels are as expected. PiperOrigin-RevId: 538459296 (cherry picked from commit cfcc53b)
Configuration menu - View commit details
-
Copy full SHA for e20cace - Browse repository at this point
Copy the full SHA e20caceView commit details -
Tests for disabled color transfers
#minor-release PiperOrigin-RevId: 538466615 (cherry picked from commit ac18e2e)
Configuration menu - View commit details
-
Copy full SHA for af70eed - Browse repository at this point
Copy the full SHA af70eedView commit details -
PiperOrigin-RevId: 538469993 (cherry picked from commit bc94a0e)
Configuration menu - View commit details
-
Copy full SHA for 3803055 - Browse repository at this point
Copy the full SHA 3803055View commit details -
Remove unnecessary thread in AssetLoader tests
Also queue textures from a different thread in TextureAssetLoader, to have a behaviour closer to reality. PiperOrigin-RevId: 538473089 (cherry picked from commit 01dbda1)
Configuration menu - View commit details
-
Copy full SHA for e7673d4 - Browse repository at this point
Copy the full SHA e7673d4View commit details -
Test: Move duplicated GL tone mapping logic into helper methods.
PiperOrigin-RevId: 538491957 (cherry picked from commit 466308c)
Configuration menu - View commit details
-
Copy full SHA for a2467d4 - Browse repository at this point
Copy the full SHA a2467d4View commit details -
DefaultVideoFrameProcessorMultipleTextureOutputPixelTest fixes & cleanup
PiperOrigin-RevId: 538495675 (cherry picked from commit 85bfc08)
Configuration menu - View commit details
-
Copy full SHA for 5c32c5c - Browse repository at this point
Copy the full SHA 5c32c5cView commit details
Commits on Jun 8, 2023
-
Test: Add no-op effect test for GL tone mapping.
To ensure no regressions for the potentially confusing pipeline of: * HDR electrical -> SDR linear EOTF+OOTF, and * SDR linear -> SDR electrical OETF PiperOrigin-RevId: 538741079 (cherry picked from commit 63b6df3)
Configuration menu - View commit details
-
Copy full SHA for 7becf58 - Browse repository at this point
Copy the full SHA 7becf58View commit details -
Enable nullness checker for Muxer module androidTest library
PiperOrigin-RevId: 538742957 (cherry picked from commit f582e41)
Configuration menu - View commit details
-
Copy full SHA for 8bb4461 - Browse repository at this point
Copy the full SHA 8bb4461View commit details -
Add support for passing custom metadata via transformer
Changes included: 1. Enable MP4 extractor to read all types of metadata. 2. Allow passing String and Float metadata via Transformer. Reference to QuickTime spec: https://developer.apple.com/library/archive/documentation/QuickTime/QTFF/Metadata/Metadata.html#//apple_ref/doc/uid/TP40000939-CH1-SW21 PiperOrigin-RevId: 538783982 (cherry picked from commit 8ce74aa)
Configuration menu - View commit details
-
Copy full SHA for 3de2785 - Browse repository at this point
Copy the full SHA 3de2785View commit details -
Fix calling extra registerInputStream and not handling EOS
PiperOrigin-RevId: 538796466 (cherry picked from commit 782b953)
Configuration menu - View commit details
-
Copy full SHA for 5f7d987 - Browse repository at this point
Copy the full SHA 5f7d987View commit details -
Add 'Keep every nth frame' frame dropping strategy.
#minor-release PiperOrigin-RevId: 538804347 (cherry picked from commit 4bb7b3c)
Configuration menu - View commit details
-
Copy full SHA for 48dcce5 - Browse repository at this point
Copy the full SHA 48dcce5View commit details -
Make StreamKey Bundleable and remove deprecated trackIndex
#minor-release PiperOrigin-RevId: 538809105 (cherry picked from commit 8be5705)
Configuration menu - View commit details
-
Copy full SHA for 22d2fd6 - Browse repository at this point
Copy the full SHA 22d2fd6View commit details -
Enable re-preparing the
ImaSSAIMediaSource
#minor-release PiperOrigin-RevId: 538927855 (cherry picked from commit 499fd09)
Configuration menu - View commit details
-
Copy full SHA for c79e13a - Browse repository at this point
Copy the full SHA c79e13aView commit details
Commits on Jun 9, 2023
-
Implement logging support for Common Media Client Data (CMCD)
Add support for including Common Media Client Data (CMCD) in the outgoing requests of adaptive streaming formats DASH, HLS, and SmoothStreaming. API structure and API methods: * CMCD logging is disabled by default, use `MediaSource.Factory.setCmcdConfigurationFactory(CmcdConfiguration.Factory cmcdConfigurationFactory)` to enable it. * All keys are enabled by default, override `CmcdConfiguration.RequestConfig.isKeyAllowed(String key)` to filter out which keys are logged. * Override `CmcdConfiguration.RequestConfig.getCustomData()` to enable custom key logging. NOTE: Only the following fields have been implemented: `br`, `bl`, `cid`, `rtp`, and `sid`. Issue: #8699 #minor-release PiperOrigin-RevId: 539021056 (cherry picked from commit b7e7153)
Configuration menu - View commit details
-
Copy full SHA for 958c359 - Browse repository at this point
Copy the full SHA 958c359View commit details -
Do not reset period uid when DashMediaSource is released
When the source is prepared again after stop, the period uid is calculated by subtracting the `firstPeriodId` from the period uid that is passed in to `createPeriod`. When this happens after stop, the uid from the old period uid that is still stored and has the value of the last played uid. Hence the `firstPeriodId` must not be reset when released. Issue: #10838 PiperOrigin-RevId: 539028570 (cherry picked from commit de2ad14)
Configuration menu - View commit details
-
Copy full SHA for 7d22115 - Browse repository at this point
Copy the full SHA 7d22115View commit details -
Add a timer to end a video stream prematurely in ExtTexMgr
PiperOrigin-RevId: 539036285 (cherry picked from commit 21b5661)
Configuration menu - View commit details
-
Copy full SHA for 95ac96a - Browse repository at this point
Copy the full SHA 95ac96aView commit details -
Make current period a placeholder when a live stream is reset
In case the player is reset while a live stream is playing, the current period needs to be a placeholder. This makes sure that the default start position is used when the first live timeline arrives after re-preparing. #minor-release PiperOrigin-RevId: 539044360 (cherry picked from commit 538143a)
Configuration menu - View commit details
-
Copy full SHA for 43f2ebf - Browse repository at this point
Copy the full SHA 43f2ebfView commit details -
PiperOrigin-RevId: 539100987 (cherry picked from commit 4755e73)
Configuration menu - View commit details
-
Copy full SHA for 75a745a - Browse repository at this point
Copy the full SHA 75a745aView commit details -
Fix splitting ad playback state for partial ad group when joining
This change addresses the case when the user joins the live stream on an ad period but the metadata for the ad period is not emitted. This results in inserting a partial ad group. In this case the ad group duration is longer than the partial ad group. If now the partial ad group ends at the period before the last period of the window (unknown duration), the splitting algorithm didn't recognize that the ad group already ended and made the last period wrongly an ad period. This change handles this edge case by counting the mapped ads in the partial ad group to detect this situation and stops splitting. #minor-release PiperOrigin-RevId: 539102785 (cherry picked from commit 2adeb41)
Configuration menu - View commit details
-
Copy full SHA for 694e83f - Browse repository at this point
Copy the full SHA 694e83fView commit details -
Throw exception when
TimestampAdjuster
initialization hits timeoutAdd `HlsMediaSource.Factory.setTimestampAdjusterInitializationTimeoutMs(long)` to set the timeout for the loading thread to wait for the `TimestampAdjuster` to initialize. If the initialization doesn't complete before the timeout, a `PlaybackException` is thrown to avoid the playback endless stalling. The timeout is set to zero by default. This can avoid HLS playback endlessly stalls when manifest has missing discontinuities. According to the HLS spec, all variants and renditions have discontinuities at the same points in time. If not, the one with discontinuities will have a new `TimestampAdjuster` not shared by the others. When the loading thread of that variant is waiting for the other threads to initialize the timestamp and hits the timeout, the playback will stall. Issue: androidx/media#323 #minor-release PiperOrigin-RevId: 539108886 (cherry picked from commit 4eb56cf)
Configuration menu - View commit details
-
Copy full SHA for 68d7214 - Browse repository at this point
Copy the full SHA 68d7214View commit details -
Add missing import to StreamKey
#minor-release PiperOrigin-RevId: 539112700 (cherry picked from commit 36a6fe4)
Configuration menu - View commit details
-
Copy full SHA for 036f6e8 - Browse repository at this point
Copy the full SHA 036f6e8View commit details -
*** Original commit *** Add a timer to end a video stream prematurely in ExtTexMgr *** This has been submitting for more than 1.5hrs. "This presubmit is running slowly because you have been throttled by Build Queue due to using too much of your Product Area's quota." adding NO_SQ as this is a pure rollback PiperOrigin-RevId: 539135970 (cherry picked from commit e790f32)
Configuration menu - View commit details
-
Copy full SHA for 233655a - Browse repository at this point
Copy the full SHA 233655aView commit details
Commits on Jun 12, 2023
-
Transmux video if rotation is only effect applied
PiperOrigin-RevId: 535554628 (cherry picked from commit 8ba6b12)
Configuration menu - View commit details
-
Copy full SHA for 35a37b4 - Browse repository at this point
Copy the full SHA 35a37b4View commit details -
Image transcoding: Add support for bmp image format.
With this change we will now support loading bitmaps from all the formats documented [here](https://developer.android.com/guide/topics/media/media-formats#image-formats) except for gifs (because they are animated). Java doc is added to express this. PiperOrigin-RevId: 535610152 (cherry picked from commit 7740ccc)
Configuration menu - View commit details
-
Copy full SHA for a21b2c8 - Browse repository at this point
Copy the full SHA a21b2c8View commit details -
Remove previously deprecated
MediaItem.PlaybackProperties
in favour…… of `LocalConfiguration`. Deprecated field `MediaItem.playbackProperties` remains for backwards compatibility, but its type is changed from `MediaItem.PlaybackProperties` to `MediaItem.LocalConfiguration`. The private `MediaItem` constructor will now also take in a `LocalConfiguration` argument instead. PiperOrigin-RevId: 535648420 (cherry picked from commit b89cc65)
Configuration menu - View commit details
-
Copy full SHA for 4a7b4c8 - Browse repository at this point
Copy the full SHA 4a7b4c8View commit details -
Add only supported MdtaMetadataEntry
PiperOrigin-RevId: 536351494 (cherry picked from commit ba8b9d1)
Configuration menu - View commit details
-
Copy full SHA for d822e3c - Browse repository at this point
Copy the full SHA d822e3cView commit details -
Effect: Remove extra wait on taskExecutor release()
This future.get() duplicates the wait done in singleThreadExecutorService.awaitTermination(). If awaitTermination times out, this future.get() would also result in unnecessary blocking. PiperOrigin-RevId: 536442153 (cherry picked from commit d7f4fea)
Configuration menu - View commit details
-
Copy full SHA for a7137cb - Browse repository at this point
Copy the full SHA a7137cbView commit details -
Exoplayer: Suppress check to allow video to run ahead of Audio.
Otherwise, texture output errors out if video decoding decodes faster than audio, hitting the end of the file, while audio is still in the middle of the file. PiperOrigin-RevId: 536679568 (cherry picked from commit 2ff8b44)
Configuration menu - View commit details
-
Copy full SHA for ff7dc13 - Browse repository at this point
Copy the full SHA ff7dc13View commit details -
Fix codec's MIME type is not used
In some cases the codec selected for decoding has a different MIME type than the media. In thoses cases Transformer continued to use the media's MIME type and that caused codec configuration failures. Removed `EncoderUtil.findCodecForFormat()` as we stopped using the method it uses for finding a codec. Plus, the method is only used in the test. See also `MediaCodecUtil.getALternativeCodecMimeType()`. PiperOrigin-RevId: 536683663 (cherry picked from commit fedd99b)
Configuration menu - View commit details
-
Copy full SHA for 57f30f1 - Browse repository at this point
Copy the full SHA 57f30f1View commit details -
Soften
MediaCodecRenderer
's assumptions about using framework DRM#minor-release PiperOrigin-RevId: 536724725 (cherry picked from commit 792aa72)
Configuration menu - View commit details
-
Copy full SHA for 67ec32c - Browse repository at this point
Copy the full SHA 67ec32cView commit details -
Add TransformationRequest toString method
PiperOrigin-RevId: 536727079 (cherry picked from commit a8baf21)
Configuration menu - View commit details
-
Copy full SHA for f07e5c5 - Browse repository at this point
Copy the full SHA f07e5c5View commit details -
Use the designated UNSET value for aspect ratio
PiperOrigin-RevId: 536770380 (cherry picked from commit 11c52d2)
Configuration menu - View commit details
-
Copy full SHA for f2b8b31 - Browse repository at this point
Copy the full SHA f2b8b31View commit details -
Merge pull request #420 from changxiangzhong:fix/cp-missing
PiperOrigin-RevId: 537014587 (cherry picked from commit 8166b35)
Configuration menu - View commit details
-
Copy full SHA for b16034c - Browse repository at this point
Copy the full SHA b16034cView commit details -
Test: Add special effects for forcing transcode.
Previously, we would apply a general effect to signal wanting to transcode. PiperOrigin-RevId: 537034455 (cherry picked from commit fb032f0)
Configuration menu - View commit details
-
Copy full SHA for 2536efc - Browse repository at this point
Copy the full SHA 2536efcView commit details -
Tidy color info checking tests
ExoPlayer extractors (backing `MetadataRetriever`) now parse the color format from the bitstream so using `MetadataRetriever` should be an equivalent but more lightweight way to verify the color info. Also remove try/catch blocks in test code calling into these methods, and add skipping based on decoder capabilities in the cases where it was missing. PiperOrigin-RevId: 537789483 (cherry picked from commit 88db011)
Configuration menu - View commit details
-
Copy full SHA for a9bc111 - Browse repository at this point
Copy the full SHA a9bc111View commit details -
Ignore ByteBuffer position when writing samples in Mp4Muxer
PiperOrigin-RevId: 537814319 (cherry picked from commit 6893939)
Configuration menu - View commit details
-
Copy full SHA for a4a248d - Browse repository at this point
Copy the full SHA a4a248dView commit details
Commits on Jun 15, 2023
-
Deprecate exoplayer2 - all users should migrate to androidx.media3
More info, including a script to help with the migration: https://developer.android.com/guide/topics/media/media3/getting-started/migration-guide PiperOrigin-RevId: 540345728 (cherry picked from commit af1b9f6)
Configuration menu - View commit details
-
Copy full SHA for 5b4839a - Browse repository at this point
Copy the full SHA 5b4839aView commit details
Commits on Jun 23, 2023
-
Document how to use a custom receiver app with the cast demo
#minor-release Issue: androidx/media#452 PiperOrigin-RevId: 539915277 (cherry picked from commit 73fda2f)
Configuration menu - View commit details
-
Copy full SHA for 84cc055 - Browse repository at this point
Copy the full SHA 84cc055View commit details -
Add deprecation note to the ExoPlayer 2.19.0 release notes
#minor-release PiperOrigin-RevId: 540517113 (cherry picked from commit 350ced2)
Configuration menu - View commit details
-
Copy full SHA for fb9871f - Browse repository at this point
Copy the full SHA fb9871fView commit details -
Fix two more unresolved SVGs in
Timeline.Window
andTimeline.Period
Configuration menu - View commit details
-
Copy full SHA for 7d61050 - Browse repository at this point
Copy the full SHA 7d61050View commit details -
Update the Exoplayer release notes for 2.19.0 release.
#minor-release PiperOrigin-RevId: 542565180 (cherry picked from commit 7aa13a4)
Configuration menu - View commit details
-
Copy full SHA for 10b8f72 - Browse repository at this point
Copy the full SHA 10b8f72View commit details -
Version bump to media3-1.1.0 and exoplayer 2.19.0
#minor-release PiperOrigin-RevId: 542881427 (cherry picked from commit b9d289f)
Configuration menu - View commit details
-
Copy full SHA for 74c9eb0 - Browse repository at this point
Copy the full SHA 74c9eb0View commit details
Commits on Jun 26, 2023
-
Version bump for exoplayer 2.19.0 continued
#minor-release PiperOrigin-RevId: 543369900 (cherry picked from commit fb6a496)
Configuration menu - View commit details
-
Copy full SHA for 7bd6e9b - Browse repository at this point
Copy the full SHA 7bd6e9bView commit details -
Update javadoc for exoplayer 2.19.0 release
#minor-release PiperOrigin-RevId: 543393737 (cherry picked from commit 7676709)
Configuration menu - View commit details
-
Copy full SHA for 0b9a3db - Browse repository at this point
Copy the full SHA 0b9a3dbView commit details -
Fix bug where PlayerView distorts video when video size is unknown
PiperOrigin-RevId: 541640959 (cherry picked from commit 3f991f6)
Configuration menu - View commit details
-
Copy full SHA for 129a3d2 - Browse repository at this point
Copy the full SHA 129a3d2View commit details -
Configuration menu - View commit details
-
Copy full SHA for fd29199 - Browse repository at this point
Copy the full SHA fd29199View commit details