- 30 Mar, 2023 19 commits
-
-
Previously, we always used ImageReader to read from the output of DefaultVideoFrameProcessor, for pixel tests. This has a limitation of not being able to read HDR contents, so that we couldn't support HDR pixel tests. Reading from a texture allows us to use glReadPixels to read from DefaultVideoFrameProcessor, and build upon this to implement HDR pixel tests. We do still want tests for surface output though, because real use-cases only will output to Surfaces. Also, add some tests for outputting to textures, since this test infrastructure is a bit complex. PiperOrigin-RevId: 519786535
huangdarwin committed -
https://github.com/google/ExoPlayer/commit/927105ed0dc6c811a1057db4b664003cf753ac12
*** Original commit *** Intercept audio capabilities change in `DefaultAudioSink` *** PiperOrigin-RevId: 519760267
tianyifeng committed -
PiperOrigin-RevId: 519727954
sheenachhabra committed -
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: 519665752
ibaker committed -
When MediaCodecRenderer is given an empty sample stream, it puts its output format change tracking in a bad state where we never process future stream changes because we are waiting for a sample that doesn't exist. We can fix this by: - Looping the pending output stream changes to see if we processed more than one change at once (this fixes the tracking for empty sample streams that are not the first in the queue). - Checking if none of the previous streams queued any samples in onStreamChanged to handle this in the same way as the case where we already output all samples (this fixes the problem when the empty sample stream comes first in the queue). - Also calling onProcessedStreamChange for the case above, which was missing previously. #minor-release PiperOrigin-RevId: 519226637
tonihei committed -
PiperOrigin-RevId: 519184599
sheenachhabra committed -
This wasn't added so far because releasing is always allowed from a MediaController (as it just releases the connection, not the session player). But Player instances can be created for other purposes and the receiver of a Player instance should not always be allowed to call release if it doesn't own the player resource. PiperOrigin-RevId: 519121122
tonihei committed -
Account for features implemented recently. PiperOrigin-RevId: 519113898
kimvde committed -
PiperOrigin-RevId: 519099339
claincly committed -
Also - Add unit tests - Fix bug discovered by unit tests PiperOrigin-RevId: 519092249
kimvde committed -
PiperOrigin-RevId: 518953648
Tianyi Feng committed -
PiperOrigin-RevId: 518895943
kimvde committed -
Since the composite matrix is ultimately rewritten to, we need to ensure it's cleared (to identity) before update. Test plan: use an effect as a time based approach and see that the effect no longer clips PiperOrigin-RevId: 518886623
Googler committed -
PiperOrigin-RevId: 518827223
sheenachhabra committed -
If RTSP Setup Request with UDP receives HTTP Error Status 461 UnsupportedTransport, then client will retry with TCP. Issue: google/ExoPlayer#11069 PiperOrigin-RevId: 518807829
michaelkatz committed -
The "hdlr" box for "meta" box can be easily created by passing required parameters to Boxes.hdlr() method. PiperOrigin-RevId: 518568103
sheenachhabra committed -
PiperOrigin-RevId: 518560945
tofunmi committed -
PiperOrigin-RevId: 518531999
sheenachhabra committed -
PiperOrigin-RevId: 518281002
tofunmi committed
-
- 22 Mar, 2023 2 commits
- 21 Mar, 2023 18 commits
-
-
The failure reason (no network) will be logged in test output but will not be marked as failing, rather skipped. PiperOrigin-RevId: 518262203
tofunmi committed -
PiperOrigin-RevId: 518258380
michaelkatz committed -
PiperOrigin-RevId: 518257650
Googler committed -
Reduce nesting by using an early return. Also, rename `outputSizeOrRotationChanged` to `outputChanged`, because this also applies to when the output surface changes. Also, update local variable initialization, add some javadoc, and remove unneeded local variable PiperOrigin-RevId: 518241708
huangdarwin committed -
The fix is as per MP4 spec ISO/IEC 14496-12 PiperOrigin-RevId: 518240043
sheenachhabra committed -
The content timeline field may be updated when the live timeline is refreshed in the looper event preceding the runnable that is posted to the player thread. Hence a new timeline may contain a new period uid that is not present in the ad playback state map. Using a final reference makes sure period and ad playback state match when asserted. PiperOrigin-RevId: 518228165
bachinger committed -
This change makes sure that live ad periods that are played are skip when attempted to be added to the queue. To make this work the existing filter logic had to be take into account the content resume offset that live periods use. PiperOrigin-RevId: 518068138
bachinger committed -
FEATURE_HdrEditing is only available on and above API 33, so it doesn't make sense to check for support under API 33. PiperOrigin-RevId: 518036855
huangdarwin committed -
The FakeExtractorOutput dumps data in more readable format so using that where ever possible. The MdtaMetadataEntry which contains key and value dumped only "key". Added fix to dump "value" as well. PiperOrigin-RevId: 517968996
sheenachhabra committed -
PiperOrigin-RevId: 517953981
bachinger committed -
PiperOrigin-RevId: 517933485
sheenachhabra committed -
PiperOrigin-RevId: 517444208
kimvde committed -
PiperOrigin-RevId: 517418886
kimvde committed -
This was trimmed using the Transformer Demo, from ~4 seconds to 300ms Otherwise, this test file will be quite large, and folks who clone the repo will have to clone this content as well. Trimming the file also allows the test to take less time, while still testing the core purpose of the file, to confirm that 4k extraction/decode/GL/encode/muxing works. PiperOrigin-RevId: 517408463
huangdarwin committed -
* Reorder methods. * Arrange, act, assert split. PiperOrigin-RevId: 517158351
samrobinson committed -
https://github.com/google/ExoPlayer/commit/ddbad570311fec7df635b0b6da9083be82291b50 added clearing depth buffers to GLUtil, so there is no need to have allow apps to have a custom clearOutputFrame. Also removes default implementations in GLObjectsProvider know that these methods have been implemented. PiperOrigin-RevId: 517156304
tofunmi committed -
PiperOrigin-RevId: 517144710
tianyifeng committed -
* Add `release` method to Renderer and AudioSink interfaces. * Call the `release` method for renderers when the ExoPlayer is going to be released. PiperOrigin-RevId: 517135677
tianyifeng committed
-
- 17 Mar, 2023 1 commit
-
-
Any calls that issue a `seekTo()` where the position is `TIME_UNSET` will now restore the live offset target to the MediaItem set default. The change simply passes a flag to `updatePlaybackSpeedSettingsForNewPeriod()` that indicates the call is from a seek operation. If this flag is set, a `positionForTargetOffsetOverrideUs` of `TIME_UNSET` unconditionally removes the `setTargetLiveOffsetOverrideUs()` This fixes issue #11050
Steve Mayhew committed
-