- 29 Nov, 2022 19 commits
-
-
PiperOrigin-RevId: 491623586
kimvde committed -
To support OPUS offload, we need to provide a few configuration values that are currently not set due to the lack of devices supporting OPUS offload. PiperOrigin-RevId: 491613716
tonihei committed -
Main change: - Removed `Codec.EncoderFactory.createForVideoEncoding`'s argument of a list of allowed MIME types - Moved the check for whether a video MIME type is supported to VTSP PiperOrigin-RevId: 491611799
claincly committed -
The fix for b/171657375 (internal) has been shipped with 21.1.0 already (see https://developers.google.com/cast/docs/release-notes#august-8,-2022). PiperOrigin-RevId: 491583727
bachinger committed -
PiperOrigin-RevId: 491377695
claincly committed -
PiperOrigin-RevId: 491336828
Rohit Singh committed -
The list of charsets is already hard-coded, and using `Charset` types ensures they will all be present at run-time, hence we will never encounter an 'unsupported' charset. PiperOrigin-RevId: 491324466
ibaker committed -
This should fix how color matrix transforms look when applied on HDR colors PiperOrigin-RevId: 491323228
huangdarwin committed -
This thread just starts the player and handles the player callbacks for now. Sample pipelines are still run on the playback thread. PiperOrigin-RevId: 491299671
kimvde committed -
It's clearer if each test method follows the Arrange/Act/Assert pattern PiperOrigin-RevId: 491299379
ibaker committed -
PiperOrigin-RevId: 491289028
Rohit Singh committed -
FakeClock keeps an internal list of messages to be executed to ensure deterministic serialization. The next message from the list is triggered by a separate helper message sent to the real Handler. However, if the target HandlerThread is no longer alive (e.g. when it quit itself during the message execution), this helper message is never executed and the entire message execution chain is stuck forever. This can be solved by checking the return values of Hander.post or Handler.sendMessage, which are false if the message won't be delivered. If the messages are not delivered, we can unblock the chain by marking the message as complete and triggering the next one. PiperOrigin-RevId: 491275031
tonihei committed -
Remove self-links, and remove section that is documenting internal ordering behaviour of [`SimpleBasePlayer.getCombinedMediaMetadata`](https://github.com/google/ExoPlayer/blob/bb270c62cf2f7a1570fe22f87bb348a2d5e94dcf/library/common/src/main/java/com/google/android/exoplayer2/SimpleBasePlayer.java#L1770) rather than anything specifically about this method. #minor-release PiperOrigin-RevId: 490923719
ibaker committed -
This is more clear than using Format.NO_VALUE, when we do actually intend for an output value. Also, fix @see formatting by using summary fragments instead, and add an error output for OETF and EOTF transfer functions. PiperOrigin-RevId: 490910229
huangdarwin committed -
Our FakeClock generally makes sure that playback tests are fully deterministic. However, this fails if the test uses blocking waits with clock.onThreadBlocked and where relevant Handlers are created without using the clock. To fix the flakiness, we can make the following adjustments: - Use TestExoPlayerBuilder instead of legacy ExoPlayerTestRunner to avoid onThreadBlocked calls. This also makes the tests more readable. - Use clock to create Handler for FakeVideoRenderer and FakeAudioRenderer. Ideally, this should be passed through RenderersFactory, but it's too disruptive given this is a public API. - Use clock for MediaSourceList and MediaPeriodQueue update handler. PiperOrigin-RevId: 490907495
tonihei committed -
PiperOrigin-RevId: 490836952
kimvde committed -
Format expects the values of `averageBitrate` and `peakBitrate` in bps and the value fetched from AC3SpecificBox and EC3SpecificBox is in kbps. PiperOrigin-RevId: 490756581
rohks committed -
PiperOrigin-RevId: 490756055
samrobinson committed -
To avoid complicated bit shifting and masking. Also makes the code more readable. PiperOrigin-RevId: 490749482
rohks committed
-
- 24 Nov, 2022 13 commits
-
-
Issue: google/ExoPlayer#10811 PiperOrigin-RevId: 490726544
ibaker committed -
Also make sure the demo app doesn't crash when it happens. PiperOrigin-RevId: 490725959
kimvde committed -
https://github.com/google/ExoPlayer/commit/ea3552c1a030d8b14c0cd0093f7eaa6242f969eb
*** Original commit *** Rollback of https://github.com/google/ExoPlayer/commit/01eddb34f555903c576c79b02a7b34a53e0272cb *** Original commit *** Parse and set `peakBitrate` for Dolby TrueHD(AC-3) and (E-)AC-3 #minor-release *** *** PiperOrigin-RevId: 490707234
rohks committed -
https://github.com/google/ExoPlayer/commit/01eddb34f555903c576c79b02a7b34a53e0272cb
*** Original commit *** Parse and set `peakBitrate` for Dolby TrueHD(AC-3) and (E-)AC-3 #minor-release *** PiperOrigin-RevId: 490570517
rohks committed -
This reduces the priority to best effort (from the default that seems to be best effort), and allows us to run SSIM even on 8k24fps video. Without this CL, start()'ing a second codec may result in a MediaCodec.CodecException. Tested to confirm that transformation8k24(): * fails deterministically without this CL, or with KEY_PRIORITY set to 0. * succeeds deterministically after this CL (~18s on Samsung Z Fold 4) PiperOrigin-RevId: 490570416
huangdarwin committed -
We cannot check this in code, due to DEVICE_INITIAL_SDK_INT being a @SystemApi, and reflection being a bit risky/unstable. PiperOrigin-RevId: 490537916
huangdarwin committed -
#minor-release PiperOrigin-RevId: 490527831
rohks committed -
The bug has since been fixed. The values still could change, as the API is labelled as @UnstableApi, so it's probably fine to leave the <p> tag mostly as is. PiperOrigin-RevId: 490509205
huangdarwin committed -
This change includes a change in the `IMediaController.aidl` file and needs to provide backwards compatibility for when a client connects that is of an older or newer version of the current service implementation. This CL proposes to create a new AIDL method `onPlayerInfoChangedWithExtensions` that is easier to extend in the future because it does use an `Bundle` rather than primitives. A `Bundle` can be changed in a backward/forwards compatible way in case we need further changes. The compatibility handling is provided in `MediaSessionStub` and `MediaControllerStub`. The approach is not based on specific AIDL/Binder features but implemented fully in application code. Issue: androidx/media#102 #minor-release PiperOrigin-RevId: 490483068
bachinger committed -
If there is output data available (outputBuffer.hasRemaining()), then there is no need to move other data between the underlying processors. It will not change the buffer being returned by that call to getOutput. If there is no output data readily available, it's necessary to go to the AudioProcessors and pass buffers between them, as this may produce data for output. PiperOrigin-RevId: 490482653
samrobinson committed -
PiperOrigin-RevId: 490465182
Ian Baker committed -
This allows us to release both codecs used in SSIM when one fails to configure() or start(). Tested and confirmed that on Samsung Galaxy Z Flip 4, running all TransformationTest.java tests, tests after transform8k24() fails to start the 2nd codec: * Before this CL, all fail. * After this CL, all pass. PiperOrigin-RevId: 490461560
huangdarwin committed -
PiperOrigin-RevId: 490265564
samrobinson committed
-
- 23 Nov, 2022 3 commits
-
-
microkatz committed
-
r2.18.2
Michael Katz committed -
PiperOrigin-RevId: 490263003 (cherry picked from commit 202e03fc)
christosts committed
-
- 22 Nov, 2022 5 commits
-
-
PiperOrigin-RevId: 490263003
christosts committed -
Ran all the [effects instrumentation tests](https://source.corp.google.com/piper///depot/google3/third_party/java_src/android_libs/media/libraries/effect/src/androidTest/java/androidx/media3/effect/;bpv=1;bpt=0) and replaced the [bitmaps](https://source.corp.google.com/piper///depot/google3/third_party/java_src/android_libs/media/libraries/test_data/src/test/assets/media/bitmap/;bpv=0;bpt=0) for the tests that were failing due to a small difference over the targeted 0.1 [threshold](https://source.corp.google.com/piper///depot/google3/third_party/java_src/android_libs/media/libraries/effect/src/androidTest/java/androidx/media3/effect/BitmapTestUtil.java;rcl=477974779;l=64) whose new bitmaps could be generated from the` crow --device generic_phone --api_level 31 --arch=arm64 ` emulator. PiperOrigin-RevId: 490261228
tofunmi committed -
This exception is a bit shorter and more clear (and is more clear that this is a test issue, as opposed to the prior issue that was thrown as an ExoPlayer DataSourceException, which may seem like a legitimate Transformer failure) PiperOrigin-RevId: 490252772
huangdarwin committed -
Following naming conventions throughout AndroidTestUtil, REMOTE files should have REMOTE instead of ASSET. Update the URI and FORMAT names accordingly. PiperOrigin-RevId: 490237673
huangdarwin committed -
Instead of the ID3v2 text frame falling back to a singleton list of an empty string when the given values are empty, make that case throw an exception within the text frame, and move that fallback behavior into the ID3v2 decoder.
Alexander Capehart committed
-