Skip to content

[Bug] Crash on video playback due to decoding error (MediaCodecVideoDecoderException) #1820

@karlkzh

Description

@karlkzh

Checklist

  • I make sure that the issue is NOT a duplicate of pinned issues
  • I make sure I am using the LATEST version - check here
  • I understand that issues with limited impact, such as those occurring on specific devices or under specific network conditions, will not be fixed
  • I have attached the error report in the issue

Version

4.7

Describe the bug

Exception

  • User Action: play stream
  • Request: Player error[type=ERROR_CODE_DECODING_FAILED] occurred while playing https://www.youtube.com/watch?v=x_XbjG9x3xQ
  • Content Country: MY
  • Content Language: en-MY
  • App Language: en_MY
  • Service: YouTube (Anonymous)
  • Version: 4.7.7
  • OS: Linux Android 15 - 35
Crash log

com.google.android.exoplayer2.ExoPlaybackException: MediaCodecVideoRenderer error, index=0, format=Format(135, null, null, video/avc, avc1.4D401F, 601309, null, [854, 480, 30.0], [-1, -1]), format_supported=YES
	at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:578)
	at android.os.Handler.dispatchMessage(Handler.java:105)
	at android.os.Looper.loopOnce(Looper.java:250)
	at android.os.Looper.loop(Looper.java:340)
	at android.os.HandlerThread.run(HandlerThread.java:107)
Caused by: com.google.android.exoplayer2.video.MediaCodecVideoDecoderException: Decoder failed: c2.mtk.avc.decoder
	at com.google.android.exoplayer2.video.MediaCodecVideoRenderer.createDecoderException(MediaCodecVideoRenderer.java:1639)
	at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.render(MediaCodecRenderer.java:803)
	at com.google.android.exoplayer2.ExoPlayerImplInternal.doSomeWork(ExoPlayerImplInternal.java:1007)
	at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:502)
	... 4 more
Caused by: android.media.MediaCodec$CodecException: 
	at android.media.MediaCodec.native_queueInputBuffer(Native Method)
	at android.media.MediaCodec.queueInputBuffer(MediaCodec.java:3070)
	at com.google.android.exoplayer2.mediacodec.AsynchronousMediaCodecBufferEnqueuer.doQueueInputBuffer(AsynchronousMediaCodecBufferEnqueuer.java:227)
	at com.google.android.exoplayer2.mediacodec.AsynchronousMediaCodecBufferEnqueuer.doHandleMessage(AsynchronousMediaCodecBufferEnqueuer.java:200)
	at com.google.android.exoplayer2.mediacodec.AsynchronousMediaCodecBufferEnqueuer.access$000(AsynchronousMediaCodecBufferEnqueuer.java:47)
	at com.google.android.exoplayer2.mediacodec.AsynchronousMediaCodecBufferEnqueuer$1.handleMessage(AsynchronousMediaCodecBufferEnqueuer.java:96)
	at android.os.Handler.dispatchMessage(Handler.java:109)
	... 3 more


Frequency

Sometimes (40-60% of the time)

Device

Vivo y28s

Steps to reproduce the bug

Exception

  • User Action: play stream
  • Request: Player error[type=ERROR_CODE_DECODING_FAILED] occurred while playing https://www.youtube.com/watch?v=x_XbjG9x3xQ
  • Content Country: MY
  • Content Language: en-MY
  • App Language: en_MY
  • Service: YouTube (Anonymous)
  • Version: 4.7.7
  • OS: Linux Android 15 - 35
Crash log

com.google.android.exoplayer2.ExoPlaybackException: MediaCodecVideoRenderer error, index=0, format=Format(135, null, null, video/avc, avc1.4D401F, 601309, null, [854, 480, 30.0], [-1, -1]), format_supported=YES
	at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:578)
	at android.os.Handler.dispatchMessage(Handler.java:105)
	at android.os.Looper.loopOnce(Looper.java:250)
	at android.os.Looper.loop(Looper.java:340)
	at android.os.HandlerThread.run(HandlerThread.java:107)
Caused by: com.google.android.exoplayer2.video.MediaCodecVideoDecoderException: Decoder failed: c2.mtk.avc.decoder
	at com.google.android.exoplayer2.video.MediaCodecVideoRenderer.createDecoderException(MediaCodecVideoRenderer.java:1639)
	at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.render(MediaCodecRenderer.java:803)
	at com.google.android.exoplayer2.ExoPlayerImplInternal.doSomeWork(ExoPlayerImplInternal.java:1007)
	at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:502)
	... 4 more
Caused by: android.media.MediaCodec$CodecException: 
	at android.media.MediaCodec.native_queueInputBuffer(Native Method)
	at android.media.MediaCodec.queueInputBuffer(MediaCodec.java:3070)
	at com.google.android.exoplayer2.mediacodec.AsynchronousMediaCodecBufferEnqueuer.doQueueInputBuffer(AsynchronousMediaCodecBufferEnqueuer.java:227)
	at com.google.android.exoplayer2.mediacodec.AsynchronousMediaCodecBufferEnqueuer.doHandleMessage(AsynchronousMediaCodecBufferEnqueuer.java:200)
	at com.google.android.exoplayer2.mediacodec.AsynchronousMediaCodecBufferEnqueuer.access$000(AsynchronousMediaCodecBufferEnqueuer.java:47)
	at com.google.android.exoplayer2.mediacodec.AsynchronousMediaCodecBufferEnqueuer$1.handleMessage(AsynchronousMediaCodecBufferEnqueuer.java:96)
	at android.os.Handler.dispatchMessage(Handler.java:109)
	... 3 more


Additional context

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions