media/library
christosts a5f4651d55 AsynchronousMediaCodecAdapter: surface queueing errors sooner
The AsynchronousMediaCodecAdapter's queuing thread stores any exceptions
raised by MediaCodec and re-throws them on the next call to
queueInputBuffer()/queueSecureInputBuffer(). However, if MediaCodec
raises and error while queueing, it goes into a failed state and does
not announce available input buffers. If there is no input available
input buffer, the MediaCodecRenderer will never call
queueInputBuffer()/queueSecureInputBuffer(), hence playback is stalled.

This change surfaces the queueing error through the adapter's dequeueing
methods.

PiperOrigin-RevId: 508637346
2023-02-10 13:44:34 +00:00
..
all Fix minimum API level issue 2022-02-08 11:03:36 +00:00
common Document spatialization behavior constants. 2023-02-10 10:08:46 +00:00
core AsynchronousMediaCodecAdapter: surface queueing errors sooner 2023-02-10 13:44:34 +00:00
dash Merge pull request #248 from lemondoglol:update-segment-size 2023-02-08 15:38:48 +00:00
database Reformat some javadoc 2022-02-18 15:02:33 +00:00
datasource Merge pull request #10959 from balachandarlinks:handle-sql-exception-in-cached-content-index 2023-02-14 16:10:55 +00:00
decoder Expect PresentationTime Discontinuity During Stream Transitions 2022-04-26 14:25:46 +01:00
effect Effect: Create GlEffect.isNoOp to simplify Transformer. 2023-02-08 15:34:42 +00:00
extractor Encapsulate Opus frames in Ogg during audio offload 2023-02-08 15:54:41 +00:00
hls Update SampleQueue.sourceId to be a long rather than an int. 2023-02-14 16:06:47 +00:00
rtsp Add javadoc links to README files 2022-12-12 13:07:19 +00:00
smoothstreaming Merge pull request #248 from lemondoglol:update-segment-size 2023-02-08 15:38:48 +00:00
transformer Handle when some MediaItems require transcoding but others don't 2023-02-14 16:02:45 +00:00
ui Tweak UI behavior when commands are missing. 2023-02-01 14:03:50 +00:00
README.md Update to androidx.media3 2021-10-27 09:12:46 +01:00

ExoPlayer library

The ExoPlayer library is split into multiple modules. See ExoPlayer's top level README for more information about the available library modules and how to use them.