- 13 Dec, 2021 4 commits
-
-
Breaks the gradle build PiperOrigin-RevId: 415999600
ibaker committed -
The version in the android tree was updated in https://cs.android.com/android/_/android/platform/external/guava/+/8337762fe0ca3a07056d30318a7df2444c1a0284 PiperOrigin-RevId: 415988097
ibaker committed -
By including the full counters in the failure message we have a clearer insight into the cause of the failure. PiperOrigin-RevId: 415982732
ibaker committed -
PiperOrigin-RevId: 415529751
huangdarwin committed
-
- 10 Dec, 2021 17 commits
-
-
UnsupportedEglVersionException() is only used once, and seems a bit too specific for Transformer. Also, it's possible for eglCreateContext to fail for other reasons besides lack of support, so it wasn't always accurate when thrown. It is possible for devices not to support EGL version 2.0 though, per https://source.android.com/devices/graphics/implement-opengl-es, which doesn't specify the EGL version that must be supported. PiperOrigin-RevId: 415489396
huangdarwin committed -
tl;dr: In the previous transformer, the transcoding flow is - If a the GL's input surface (from decoder) does not have data, wait 10ms (DO_SOME_WORK) - Else, make the decoder render **ONE** frame to the GL's input surface - Wait at least 10ms, until the frame's texture is available - Then process the texture The process is quite slow, so in the new version, we do: - If a the GL's input surface (from decoder) does not have data, wait 10ms (DO_SOME_WORK) **same** - Else, make the decoder render **as many frames** to the GL's input surface - Process **as many** available textures in this DO_SOME_WORK cycle PiperOrigin-RevId: 415474722
claincly committed -
https://github.com/google/ExoPlayer/commit/2674e05589730cdc3b55bfb15448253f7868492a
*** Original commit *** Make audio track min buffer size configurable. Move the code in its own class as DefaultAudioTrack is getting very big. It also help for testability. The new class is easily configurable and highly tested. Manual test was used to catch any regression. https://github.com/google/ExoPlayer/issues/8891 *** PiperOrigin-RevId: 415469179
krocard committed -
The input rotation is used to rotate the video during decoding, the video is rotated so that it is in landscape orientation before encoding and a rotation is added to the output format where necessary so that the output video has the same orientation as the input. PiperOrigin-RevId: 415301328
hschlueter committed -
Refactor GlUtil.java to be a bit more readable. Also, reorder, inline, and rename a few things. Refactoring change only. No functional changes intended. PiperOrigin-RevId: 415283874
huangdarwin committed -
For DASH manifests, we merge min/max live latency values from various sources and they may not be consistent with each other. To ensure we use a sensible configuration in all cases, we can add more correctness checks: 1. Limit the min/max values to fall into the available live window. 2. Ensure that maxLatency >= minLatency in all cases. Issue: google/ExoPlayer#9750 PiperOrigin-RevId: 415282938
tonihei committed -
PiperOrigin-RevId: 415279434
huangdarwin committed -
PiperOrigin-RevId: 415272874
Oliver Woodman committed -
Move the code in its own class as DefaultAudioTrack is getting very big. It also help for testability. The new class is easily configurable and highly tested. Manual test was used to catch any regression. https://github.com/google/ExoPlayer/issues/8891 PiperOrigin-RevId: 415268938
krocard committed -
Issue: google/ExoPlayer#9565 PiperOrigin-RevId: 415235358
olly committed -
Null was equivalent to DEFAULT_AUDIO_CAPABILITIES. In favor of null safety, remove the null state. PiperOrigin-RevId: 415037404
krocard committed -
Being able to see the output of the GL pipeline is useful for debugging. For example, when we previously saw flakiness it would have been useful to be able to tell quickly whether the output looked wrong without needing to run a transformation to the end then inspect the output file, and when working on support for HDR editing it's useful to be able to do manual testing on devices that don't support HDR encoding (but do support decoding/processing it with GL). Also change the progress indicator to be linear as this looks better in the demo app when shown next to the debug preview. PiperOrigin-RevId: 414999491
andrewlewis committed -
This is a no-op change that updates supportsFormat to use the decoder list before it's reordered by format support. Instead, supportsFormat iterates through the decoders listed in their original priority order as specified by the MediaCodecSelector. The end result is identical. This is necessary groundwork for a subsequent change that will indicate in Capabilities whether the decoder that suppports the format is the primary one as specified by the MediaCodecSelector (i.e., the one at index=0 in the lists that are now used). Issue: google/ExoPlayer#9565 PiperOrigin-RevId: 414971986
olly committed -
The color set via textAppearance is overridden by any non-null textColor set directly on the style. We always want the specific properties the textAppearance specifies, so set them directly to prevent them from being overridden. #minor-release Issue: google/ExoPlayer#9765 PiperOrigin-RevId: 414967143
olly committed -
PiperOrigin-RevId: 414804513
bachinger committed -
This more accurately reflects the value stored in this field. PiperOrigin-RevId: 414762892
ibaker committed -
Configure MediaCodec in API 32+ to always output 99 channels so that we use the audio is spatialized, if the platform can apply spatialization to it. In a follow-up change, the output channel count will be set based on the device's spatialization capabilities. PiperOrigin-RevId: 414751543
christosts committed
-
- 08 Dec, 2021 5 commits
-
-
`DefaultAudioSink` already has 3 telescoping constructors and an other one would be have been needed to add a buffer size tuning option. PiperOrigin-RevId: 414703366
krocard committed -
The existing code creates an imbalance between `inputBufferCount` and `droppedBufferCount` by adding 'dropped source buffers' to `droppedBufferCount` but not to `inputBufferCount`. This results in assertion failures in `DashTestRunner`. PiperOrigin-RevId: 414672175
ibaker committed -
#minor-release PiperOrigin-RevId: 414671861
ibaker committed -
It's been observed that some devices fail when releasing a secure codec attached to a surface and immediately trying to create a new codec (secure or insecure) attached to the same surface. This change catches all exceptions thrown during codec creation, sleeps for a short time, and then retries the codec creation. This is observed to fix the problem (we believe this is because it allows enough time for some background part of the previous codec release operation to complete). This change should have no effect on the control flow when codec creation succeeds first time. It will introduce a slight delay when creating the preferred codec fails (while we sleep and retry), which will either delay propagating a permanent error or attempting to initialize a fallback decoder. We can't avoid the extra delay to instantiating the fallback decoder because we can't know whether we expect the second attempt to create the preferred decoder to succeed or fail. The benefit to always retrying the preferred decoder creation (fixing playback failures) outweighs the unfortunate additional delay to instantiating fallback decoders. Issue: google/ExoPlayer#8696 #minor-release PiperOrigin-RevId: 414671743
ibaker committed -
Also, made a few other refactoring changes for clarity. No functional changes intended. PiperOrigin-RevId: 414487729
huangdarwin committed
-
- 07 Dec, 2021 6 commits
-
-
The decoder is using the SVC NAL unit prefix data on some Samsung devices. PiperOrigin-RevId: 414457181
kimvde committed -
PiperOrigin-RevId: 414428415
kimvde committed -
Issue: google/ExoPlayer#9673 #minor-release PiperOrigin-RevId: 414413320
ibaker committed -
Also, add 144p as an acceptable output resolution, to allow for a more obvious resolution difference when running the demo. PiperOrigin-RevId: 414406664
huangdarwin committed -
The new field matches the platform's AudioAttributes.getSpatializationBehavior() API added in Sv2. At the moment, the platform API is called via reflection, until Sv2 is released and the compile SDK target can be increased to 32. PiperOrigin-RevId: 414406126
christosts committed -
shenxl committed
-
- 06 Dec, 2021 8 commits
-
-
outputHeight is the actual output height while transformation.outputHeight could be Format.NO_VALUE causing the FrameEditor to be used more often than necessary in the old version. PiperOrigin-RevId: 414304251
hschlueter committed -
When calling Android's Log class directly, there's a LongLogTag lint check that detects tags over the 23 char limit, however it cannot detect long log tags in ExoPlayer due to the way that we log via our own Log class. This commit adds @Size annotations to enforce the same rule. PiperOrigin-RevId: 413976364
olly committed -
On the Sony Android TV device where this was originally reproducible on Android L, on Android N there is an E-AC3 decoder listed which handles the stream correctly. The workaround is harmless anyway but adding the API version restriction means it will be obvious it can be removed once we bump our min API to 24 or above in the future. #minor-release PiperOrigin-RevId: 413967443
andrewlewis committed -
Using chunkless preparation greatly improves start up time if the master playlist declares CODECS for the renditions. Hence, we turn this on by default as it benefits most well-defined HLS master playlists. The only known reason why developers may want to turn this feature off is when the renditions contain muxed closed-caption tracks that are not declared in the master playlist. So this change also updates the documentation and RELEASENOTES to point out this caveat. PiperOrigin-RevId: 413950036
tonihei committed -
Increase timeout for dequeueing a frame from the codec to reduce flakiness. At a timeout of 2 seconds there was a 2/1000 flake rate and at 3 seconds 0/1000. Set the timeout to 5 seconds to give plenty of leeway. PiperOrigin-RevId: 413946915
andrewlewis committed -
PiperOrigin-RevId: 413922123
bachinger committed -
#minor-release Issue: google/ExoPlayer#9528 PiperOrigin-RevId: 413887784
olly committed -
When no editing is needed, the OpenGL steps can be skipped. PiperOrigin-RevId: 413884305
hschlueter committed
-