ExoPlayer
ExoPlayer copied to clipboard
Unable to instantiate decoder OMX.qcom.video.decoder.avc
[REQUIRED] Issue description Video fails to play giving that error: errorException: "com.google.android.exoplayer2.mediacodec.MediaCodecRenderer$DecoderInitializationException: Decoder init failed: OMX.qcom.video.decoder.avc, Format(1, null, null, video/avc, null, -1, null, [1920, 1080, -1.0], [-1, -1]) errorString: "Unable to instantiate decoder OMX.qcom.video.decoder.avc"
If there is one video on the screen, it works fine, but if there is more than one video, usually it fails to load and play. This happens for both remote and local videos.
[REQUIRED] Reproduction steps A scroll view with few videos. Sometimes they will load, but usually they won't work. I am unable to provide a demo app because I am using ExoPlayer as part of a react-native package (react-native-video), but this is a zip file for the Java code used in the package:
[REQUIRED] Link to test content https://clips.vorwaerts-gmbh.de/big_buck_bunny.mp4
[REQUIRED] A full bug report captured from the device bugreport-jasmine-PKQ1.180904.001-2019-07-11-13-19-25.zip
[REQUIRED] Version of ExoPlayer being used ExoPlayer 2.9.0
[REQUIRED] Device(s) and version(s) of Android being used Device: xiaomi mi a2 Android version: 9
This issue does not seem to follow the issue template. Make sure you provide all the required information.
What information is missing?
Disregard the bot please. It's overly strict with formatting and the like.
Happening the same for me. Exoplayer Version: 2.9.6
com.google.android.exoplayer2.ExoPlaybackException: com.google.android.exoplayer2.mediacodec.MediaCodecRenderer$DecoderInitializationException: Decoder init failed: OMX.qcom.video.decoder.avc, Format(0, null, null, video/avc, avc1.640815, 350000, null, [320, 400, 25.0], [-1, -1])
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.maybeInitCodec(MediaCodecRenderer.java:479)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.reinitializeCodec(MediaCodecRenderer.java:1261)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.onInputFormatChanged(MediaCodecRenderer.java:1111)
at com.google.android.exoplayer2.video.MediaCodecVideoRenderer.onInputFormatChanged(MediaCodecVideoRenderer.java:552)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.render(MediaCodecRenderer.java:647)
at com.google.android.exoplayer2.ExoPlayerImplInternal.doSomeWork(ExoPlayerImplInternal.java:529)
at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:300)
at android.os.Handler.dispatchMessage(Handler.java:98)
at android.os.Looper.loop(Looper.java:135)
at android.os.HandlerThread.run(HandlerThread.java:61)
Caused by: com.google.android.exoplayer2.mediacodec.MediaCodecRenderer$DecoderInitializationException: Decoder init failed: OMX.qcom.video.decoder.avc, Format(0, null, null, video/avc, avc1.640815, 350000, null, [320, 400, 25.0], [-1, -1])
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.initCodecWithFallback(MediaCodecRenderer.java:753)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.maybeInitCodec(MediaCodecRenderer.java:474)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.reinitializeCodec(MediaCodecRenderer.java:1261)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.onInputFormatChanged(MediaCodecRenderer.java:1111)
at com.google.android.exoplayer2.video.MediaCodecVideoRenderer.onInputFormatChanged(MediaCodecVideoRenderer.java:552)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.render(MediaCodecRenderer.java:647)
at com.google.android.exoplayer2.ExoPlayerImplInternal.doSomeWork(ExoPlayerImplInternal.java:529)
at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:300)
at android.os.Handler.dispatchMessage(Handler.java:98)
at android.os.Looper.loop(Looper.java:135)
at android.os.HandlerThread.run(HandlerThread.java:61)
Caused by: java.lang.IllegalArgumentException: Failed to initialize OMX.qcom.video.decoder.avc, error 0xfffffffe
at android.media.MediaCodec.native_setup(Native Method)
at android.media.MediaCodec.<init>(MediaCodec.java:493)
at android.media.MediaCodec.createByCodecName(MediaCodec.java:475)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.initCodec(MediaCodecRenderer.java:802)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.initCodecWithFallback(MediaCodecRenderer.java:745)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.maybeInitCodec(MediaCodecRenderer.java:474)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.reinitializeCodec(MediaCodecRenderer.java:1261)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.onInputFormatChanged(MediaCodecRenderer.java:1111)
at com.google.android.exoplayer2.video.MediaCodecVideoRenderer.onInputFormatChanged(MediaCodecVideoRenderer.java:552)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.render(MediaCodecRenderer.java:647)
at com.google.android.exoplayer2.ExoPlayerImplInternal.doSomeWork(ExoPlayerImplInternal.java:529)
at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:300)
at android.os.Handler.dispatchMessage(Handler.java:98)
at android.os.Looper.loop(Looper.java:135)
at android.os.HandlerThread.run(HandlerThread.java:61)
@ojw28 Do you have any updates on this issue? We are also hitting the same problem. We are currently using exoplayer 2.10.1. This happens when we reuse an exoplayer instance. Also, when we play a video with a different resolution. I also got the error message with 0xfffffff4
Here is some additional information:
09-10 22:49:01.032 7863 25500 I OMXClient: IOmx service obtained
09-10 22:49:01.033 885 11837 I OMXMaster: makeComponentInstance(OMX.qcom.video.decoder.avc) in android.hardwar process
09-10 22:49:01.035 885 11837 I OMX-VDEC-1080P: component_init: OMX.qcom.video.decoder.avc : fd=-1
09-10 22:49:01.035 885 11837 E OMX-VDEC-1080P: Omx_vdec::Comp Init Returning failure, errno 12
09-10 22:49:01.035 885 11837 E OMX-VDEC-1080P: eventfd_write failed for fd: -1, errno = 9, force stop async_thread
09-10 22:49:01.035 885 11837 E OMX-VDEC-1080P: Invalid input: -1
09-10 22:49:01.035 885 11837 I OMX-VDEC-1080P: Exit OMX vdec Destructor: fd=-1
09-10 22:49:01.035 885 11837 E media.codec: Failed to allocate omx component 'OMX.qcom.video.decoder.avc' err=InsufficientResources(0x80001000)
09-10 22:49:01.036 7863 25500 E ACodec : Unable to instantiate codec 'OMX.qcom.video.decoder.avc' with err 0xfffffff4.
09-10 22:49:01.041 7863 25470 W MediaCodecRenderer: Failed to initialize decoder: OMX.qcom.video.decoder.avc
09-10 22:49:01.041 7863 25470 W MediaCodecRenderer: android.media.MediaCodec$CodecException: Failed to initialize OMX.qcom.video.decoder.avc, error 0xfffffff4
09-10 22:49:01.041 7863 25470 W MediaCodecRenderer: at android.media.MediaCodec.native_setup(Native Method)
09-10 22:49:01.041 7863 25470 W MediaCodecRenderer: at android.media.MediaCodec.<init>(MediaCodec.java:1811)
09-10 22:49:01.041 7863 25470 W MediaCodecRenderer: at android.media.MediaCodec.createByCodecName(MediaCodec.java:1792)
09-10 22:49:01.041 7863 25470 W MediaCodecRenderer: at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.initCodec(MediaCodecRenderer.java:840)
09-10 22:49:01.041 7863 25470 W MediaCodecRenderer: at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.maybeInitCodecWithFallback(MediaCodecRenderer.java:775)
09-10 22:49:01.041 7863 25470 W MediaCodecRenderer: at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.maybeInitCodec(MediaCodecRenderer.java:511)
09-10 22:49:01.041 7863 25470 W MediaCodecRenderer: at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.onInputFormatChanged(MediaCodecRenderer.java:1174)
09-10 22:49:01.041 7863 25470 W MediaCodecRenderer: at com.google.android.exoplayer2.video.MediaCodecVideoRenderer.onInputFormatChanged(MediaCodecVideoRenderer.java:635)
09-10 22:49:01.041 7863 25470 W MediaCodecRenderer: at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.readToFlagsOnlyBuffer(MediaCodecRenderer.java:729)
09-10 22:49:01.041 7863 25470 W MediaCodecRenderer: at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.render(MediaCodecRenderer.java:643)
09-10 22:49:01.041 7863 25470 W MediaCodecRenderer: at com.google.android.exoplayer2.ExoPlayerImplInternal.doSomeWork(ExoPlayerImplInternal.java:575)
09-10 22:49:01.041 7863 25470 W MediaCodecRenderer: at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:326)
09-10 22:49:01.041 7863 25470 W MediaCodecRenderer: at android.os.Handler.dispatchMessage(Handler.java:102)
09-10 22:49:01.041 7863 25470 W MediaCodecRenderer: at android.os.Looper.loop(Looper.java:193)
09-10 22:49:01.041 7863 25470 W MediaCodecRenderer: at android.os.HandlerThread.run(HandlerThread.java:65)
09-10 22:49:01.042 7863 25470 E ExoPlayerImplInternal: com.google.android.exoplayer2.ExoPlaybackException: com.google.android.exoplayer2.mediacodec.MediaCodecRenderer$DecoderInitializationException: Decoder init failed: OMX.qcom.video.decoder.avc, Format(2, null, null, video/avc, null, -1, null, [720, 1280, 30.19839], [-1, -1])
09-10 22:49:01.042 7863 25470 E ExoPlayerImplInternal: at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.maybeInitCodec(MediaCodecRenderer.java:513)
09-10 22:49:01.042 7863 25470 E ExoPlayerImplInternal: at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.onInputFormatChanged(MediaCodecRenderer.java:1174)
09-10 22:49:01.042 7863 25470 E ExoPlayerImplInternal: at com.google.android.exoplayer2.video.MediaCodecVideoRenderer.onInputFormatChanged(MediaCodecVideoRenderer.java:635)
09-10 22:49:01.042 7863 25470 E ExoPlayerImplInternal: at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.readToFlagsOnlyBuffer(MediaCodecRenderer.java:729)
09-10 22:49:01.042 7863 25470 E ExoPlayerImplInternal: at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.render(MediaCodecRenderer.java:643)
09-10 22:49:01.042 7863 25470 E ExoPlayerImplInternal: at com.google.android.exoplayer2.ExoPlayerImplInternal.doSomeWork(ExoPlayerImplInternal.java:575)
09-10 22:49:01.042 7863 25470 E ExoPlayerImplInternal: at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:326)
same +1
I am having the same problem
We are also seeing this error on certain phones. For example Nokia 7.1 with Exoplayer 2.10.4. First video loads and plays fine. Second video in view crashes. Please find crash below:
2019-10-03 15:15:25.697 21372-21372/com.test.app.dev I/ExoPlayerImpl: Init cc05c88 [ExoPlayerLib/2.10.4] [CTL_sprout, Nokia 7.1, HMD Global, 28]
2019-10-03 15:15:25.699 21372-21453/com.test.app.dev D/ReactNativeJS: CachedVideo: Cached file path file:///data/user/0/com.test.app.dev/cache/fileCache/api2_test_net_6da26ec322dedf65c2d271bb8aaa38e380d30efb/17c129ab8c65951f5e0de712b99057a0fa7d0cf8.mp4
2019-10-03 15:15:25.706 21372-21372/com.test.app.dev D/ReactExoplayerView: onStateChanged: playWhenReady=false, playbackState=buffering
2019-10-03 15:15:25.720 21372-21372/com.test.app.dev I/ExoPlayerImpl: Init 278d953 [ExoPlayerLib/2.10.4] [CTL_sprout, Nokia 7.1, HMD Global, 28]
2019-10-03 15:15:25.725 21372-21372/com.test.app.dev D/ReactExoplayerView: onStateChanged: playWhenReady=false, playbackState=buffering
2019-10-03 15:15:25.754 21372-21784/com.test.app.dev I/OMXClient: IOmx service obtained
2019-10-03 15:15:25.755 1005-24631/? I/OMXMaster: makeComponentInstance(OMX.qcom.video.decoder.avc) in [email protected] process
2019-10-03 15:15:25.760 21372-21786/com.test.app.dev I/OMXClient: IOmx service obtained
2019-10-03 15:15:25.775 1005-24631/? I/OMX-VDEC-1080P: Video slvp perflock acquired
2019-10-03 15:15:25.778 1005-24631/? I/OMX-VDEC-1080P: component_init: OMX.qcom.video.decoder.avc : fd=21
2019-10-03 15:15:25.785 1005-24631/? I/OMX-VDEC-1080P: omx_vdec::component_init() success : fd=21
2019-10-03 15:15:25.786 1005-2574/? I/OMXMaster: makeComponentInstance(OMX.qcom.video.decoder.avc) in [email protected] process
2019-10-03 15:15:25.793 1005-2574/? I/OMX-VDEC-1080P: Video slvp perflock released
2019-10-03 15:15:25.793 21372-21783/com.test.app.dev D/SurfaceUtils: connecting to surface 0x722db0f010, reason connectToSurface
2019-10-03 15:15:25.793 21372-21783/com.test.app.dev I/MediaCodec: [OMX.qcom.video.decoder.avc] setting surface generation to 21884936
2019-10-03 15:15:25.793 21372-21783/com.test.app.dev D/SurfaceUtils: disconnecting from surface 0x722db0f010, reason connectToSurface(reconnect)
2019-10-03 15:15:25.793 21372-21783/com.test.app.dev D/SurfaceUtils: connecting to surface 0x722db0f010, reason connectToSurface(reconnect)
2019-10-03 15:15:25.793 1005-2574/? I/OMX-VDEC-1080P: component_init: OMX.qcom.video.decoder.avc : fd=26
2019-10-03 15:15:25.793 1005-24631/? E/OMX-VDEC-1080P: get_parameter: unknown param 7f000046
2019-10-03 15:15:25.794 1005-24631/? E/OMXNodeInstance: getParameter(0xeda17f44:qcom.decoder.avc, ??(0x7f000046)) ERROR: UnsupportedIndex(0x8000101a)
2019-10-03 15:15:25.795 1005-24631/? E/OMX-VDEC-1080P: Enable/Disable allocate-native-handle allowed only on input port!
2019-10-03 15:15:25.795 1005-24631/? E/OMX-VDEC-1080P: set_parameter: Error: 0x80001019, setting param 0x7f00005d
2019-10-03 15:15:25.795 1005-24631/? E/OMXNodeInstance: setParameter(0xeda17f44:qcom.decoder.avc, OMX.google.android.index.allocateNativeHandle(0x7f00005d): Output:1 en=0) ERROR: UnsupportedSetting(0x80001019)
2019-10-03 15:15:25.795 21372-21784/com.test.app.dev I/ExtendedACodec: setupVideoDecoder()
2019-10-03 15:15:25.804 1005-2574/? I/OMX-VDEC-1080P: omx_vdec::component_init() success : fd=26
2019-10-03 15:15:25.810 21372-21784/com.test.app.dev I/ExtendedACodec: Decoder will be in frame by frame mode
2019-10-03 15:15:25.812 1005-2574/? E/OMXNodeInstance: getConfig(0xeda17f44:qcom.decoder.avc, ??(0x7f000062)) ERROR: UnsupportedSetting(0x80001019)
2019-10-03 15:15:25.816 728-728/? W/AshmemAllocator: ashmem_create_region(7077888) returning hidl_memory(0x7d5482c100, 7077888)
2019-10-03 15:15:25.821 728-728/? W/AshmemAllocator: ashmem_create_region(7077888) returning hidl_memory(0x7d5482c100, 7077888)
2019-10-03 15:15:25.821 21372-21785/com.test.app.dev D/SurfaceUtils: connecting to surface 0x722dee3010, reason connectToSurface
2019-10-03 15:15:25.821 21372-21785/com.test.app.dev I/MediaCodec: [OMX.qcom.video.decoder.avc] setting surface generation to 21884937
2019-10-03 15:15:25.821 21372-21785/com.test.app.dev D/SurfaceUtils: disconnecting from surface 0x722dee3010, reason connectToSurface(reconnect)
2019-10-03 15:15:25.821 21372-21785/com.test.app.dev D/SurfaceUtils: connecting to surface 0x722dee3010, reason connectToSurface(reconnect)
2019-10-03 15:15:25.821 1005-24631/? E/OMX-VDEC-1080P: get_parameter: unknown param 7f000046
2019-10-03 15:15:25.821 1005-24631/? E/OMXNodeInstance: getParameter(0xe8703484:qcom.decoder.avc, ??(0x7f000046)) ERROR: UnsupportedIndex(0x8000101a)
2019-10-03 15:15:25.822 1005-24634/? E/OMX-VDEC-1080P: Enable/Disable allocate-native-handle allowed only on input port!
2019-10-03 15:15:25.822 1005-24634/? E/OMX-VDEC-1080P: set_parameter: Error: 0x80001019, setting param 0x7f00005d
2019-10-03 15:15:25.822 1005-24634/? E/OMXNodeInstance: setParameter(0xe8703484:qcom.decoder.avc, OMX.google.android.index.allocateNativeHandle(0x7f00005d): Output:1 en=0) ERROR: UnsupportedSetting(0x80001019)
2019-10-03 15:15:25.822 21372-21786/com.test.app.dev I/ExtendedACodec: setupVideoDecoder()
2019-10-03 15:15:25.826 728-728/? W/AshmemAllocator: ashmem_create_region(7077888) returning hidl_memory(0x7d5482c100, 7077888)
2019-10-03 15:15:25.827 1005-24631/? E/OMX-VDEC-1080P: Requesting buffer requirements failed
2019-10-03 15:15:25.827 1005-24631/? E/OMX-VDEC-1080P: Setting buffer requirements (format) failed -1
2019-10-03 15:15:25.827 1005-24631/? E/OMX-VDEC-1080P: Setting buffer requirements (reqbufs) failed -1
2019-10-03 15:15:25.827 1005-24631/? E/OMX-VDEC-1080P: set_parameter: Error: 0x80001000, setting param 0x2000001
2019-10-03 15:15:25.827 1005-24631/? E/OMXNodeInstance: setParameter(0xe8703484:qcom.decoder.avc, ParamPortDefinition(0x2000001)) ERROR: InsufficientResources(0x80001000)
2019-10-03 15:15:25.827 21372-21786/com.test.app.dev E/ExtendedACodec: [OMX.qcom.video.decoder.avc] configureCodec returning error -12
2019-10-03 15:15:25.827 21372-21786/com.test.app.dev E/ACodec: signalError(omxError 0x80001001, internalError -12)
2019-10-03 15:15:25.827 21372-21786/com.test.app.dev E/ACodec: [OMX.qcom.video.decoder.avc] configureCodec returning error -12
2019-10-03 15:15:25.827 21372-21786/com.test.app.dev E/ACodec: signalError(omxError 0x80001001, internalError -12)
2019-10-03 15:15:25.827 21372-21785/com.test.app.dev E/MediaCodec: Codec reported err 0xfffffff4, actionCode 0, while in state 3
2019-10-03 15:15:25.830 21372-21785/com.test.app.dev D/SurfaceUtils: disconnecting from surface 0x722dee3010, reason disconnectFromSurface
2019-10-03 15:15:25.830 21372-21779/com.test.app.dev E/MediaCodec: configure failed with err 0xfffffff4, resetting...
2019-10-03 15:15:25.830 21372-21785/com.test.app.dev E/MediaCodec: Codec reported err 0xfffffff4, actionCode 0, while in state 0
2019-10-03 15:15:25.830 1005-24631/? I/OMX-VDEC-1080P: omx_vdec::component_deinit() complete
2019-10-03 15:15:25.831 728-728/? W/AshmemAllocator: ashmem_create_region(7077888) returning hidl_memory(0x7d5482c100, 7077888)
2019-10-03 15:15:25.832 1005-24631/? I/OMX-VDEC-1080P: Exit OMX vdec Destructor: fd=26
2019-10-03 15:15:25.833 1005-24631/? I/OMX-VDEC-1080P: Video slvp perflock acquired
2019-10-03 15:15:25.837 21372-21786/com.test.app.dev I/OMXClient: IOmx service obtained
2019-10-03 15:15:25.837 1005-24634/? I/OMXMaster: makeComponentInstance(OMX.qcom.video.decoder.avc) in [email protected] process
2019-10-03 15:15:25.838 21372-21784/com.test.app.dev D/SurfaceUtils: set up nativeWindow 0x722db0f010 for 1920x1080, color 0x7fa30c06, rotation 0, usage 0x20002900
2019-10-03 15:15:25.845 1005-24634/? I/OMX-VDEC-1080P: Video slvp perflock released
2019-10-03 15:15:25.846 1005-24634/? I/OMX-VDEC-1080P: component_init: OMX.qcom.video.decoder.avc : fd=26
2019-10-03 15:15:25.852 21372-21784/com.test.app.dev W/MapperHal: buffer descriptor with invalid usage bits 0x2000
2019-10-03 15:15:25.854 1005-24634/? I/OMX-VDEC-1080P: omx_vdec::component_init() success : fd=26
2019-10-03 15:15:25.856 21372-21784/com.test.app.dev W/MapperHal: buffer descriptor with invalid usage bits 0x2000
2019-10-03 15:15:25.856 739-884/? D/SDM: DisplayBase::BuildLayerStackStats: LayerStack layer_count: 6, app_layer_count: 5, gpu_target_index: 5, display type: 0
2019-10-03 15:15:25.861 996-2622/? E/ResourceManagerService: getLowestPriorityBiggestClient_l: lowest priority 0 vs caller priority 0
2019-10-03 15:15:25.863 21372-21796/com.test.app.dev I/OMXClient: IOmx service obtained
2019-10-03 15:15:25.863 1005-2574/? I/OMXMaster: makeComponentInstance(OMX.google.aac.decoder) in [email protected] process
2019-10-03 15:15:25.863 996-2622/? E/ResourceManagerService: getLowestPriorityBiggestClient_l: lowest priority 0 vs caller priority 0
2019-10-03 15:15:25.866 1005-24634/? I/OMX-VDEC-1080P: omx_vdec::component_deinit() complete
2019-10-03 15:15:25.868 1005-2574/? E/OMXNodeInstance: setConfig(0xf20a8140:google.aac.decoder, ConfigPriority(0x6f800002)) ERROR: Undefined(0x80001001)
2019-10-03 15:15:25.868 21372-21796/com.test.app.dev I/ACodec: codec does not support config priority (err -2147483648)
2019-10-03 15:15:25.872 1005-24634/? I/OMX-VDEC-1080P: Exit OMX vdec Destructor: fd=26
2019-10-03 15:15:25.873 739-884/? D/SDM: DisplayBase::BuildLayerStackStats: LayerStack layer_count: 6, app_layer_count: 5, gpu_target_index: 5, display type: 0
2019-10-03 15:15:25.873 1005-24634/? I/OMX-VDEC-1080P: Video slvp perflock acquired
2019-10-03 15:15:25.873 1005-2574/? E/OMXNodeInstance: setConfig(0xf20a8140:google.aac.decoder, ConfigPriority(0x6f800002)) ERROR: Undefined(0x80001001)
2019-10-03 15:15:25.873 21372-21796/com.test.app.dev I/ACodec: codec does not support config priority (err -2147483648)
2019-10-03 15:15:25.873 1005-2574/? E/OMXNodeInstance: setConfig(0xf20a8140:google.aac.decoder, ConfigOperatingRate(0x6f800003)) ERROR: Undefined(0x80001001)
2019-10-03 15:15:25.873 21372-21796/com.test.app.dev I/ACodec: codec does not support config operating rate (err -2147483648)
2019-10-03 15:15:25.874 1005-2574/? E/OMXNodeInstance: getConfig(0xf20a8140:google.aac.decoder, ConfigAndroidVendorExtension(0x6f100004)) ERROR: Undefined(0x80001001)
2019-10-03 15:15:25.880 21372-21779/com.test.app.dev W/MediaCodecRenderer: Failed to initialize decoder: OMX.qcom.video.decoder.avc
android.media.MediaCodec$CodecException: Error 0xfffffff4
at android.media.MediaCodec.native_configure(Native Method)
at android.media.MediaCodec.configure(MediaCodec.java:2014)
at android.media.MediaCodec.configure(MediaCodec.java:1943)
at com.google.android.exoplayer2.video.MediaCodecVideoRenderer.configureCodec(MediaCodecVideoRenderer.java:571)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.initCodec(MediaCodecRenderer.java:847)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.maybeInitCodecWithFallback(MediaCodecRenderer.java:779)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.maybeInitCodec(MediaCodecRenderer.java:510)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.onInputFormatChanged(MediaCodecRenderer.java:1186)
at com.google.android.exoplayer2.video.MediaCodecVideoRenderer.onInputFormatChanged(MediaCodecVideoRenderer.java:636)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.readToFlagsOnlyBuffer(MediaCodecRenderer.java:733)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.render(MediaCodecRenderer.java:644)
at com.google.android.exoplayer2.ExoPlayerImplInternal.doSomeWork(ExoPlayerImplInternal.java:575)
at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:326)
at android.os.Handler.dispatchMessage(Handler.java:103)
at android.os.Looper.loop(Looper.java:198)
at android.os.HandlerThread.run(HandlerThread.java:65)
2019-10-03 15:15:25.882 21372-21779/com.test.app.dev E/ExoPlayerImplInternal: Playback error.
com.google.android.exoplayer2.ExoPlaybackException: com.google.android.exoplayer2.mediacodec.MediaCodecRenderer$DecoderInitializationException: Decoder init failed: OMX.qcom.video.decoder.avc, Format(1, null, null, video/avc, null, -1, null, [3840, 2160, 29.996841], [-1, -1])
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.maybeInitCodec(MediaCodecRenderer.java:512)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.onInputFormatChanged(MediaCodecRenderer.java:1186)
at com.google.android.exoplayer2.video.MediaCodecVideoRenderer.onInputFormatChanged(MediaCodecVideoRenderer.java:636)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.readToFlagsOnlyBuffer(MediaCodecRenderer.java:733)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.render(MediaCodecRenderer.java:644)
at com.google.android.exoplayer2.ExoPlayerImplInternal.doSomeWork(ExoPlayerImplInternal.java:575)
at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:326)
at android.os.Handler.dispatchMessage(Handler.java:103)
at android.os.Looper.loop(Looper.java:198)
at android.os.HandlerThread.run(HandlerThread.java:65)
Caused by: com.google.android.exoplayer2.mediacodec.MediaCodecRenderer$DecoderInitializationException: Decoder init failed: OMX.qcom.video.decoder.avc, Format(1, null, null, video/avc, null, -1, null, [3840, 2160, 29.996841], [-1, -1])
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.maybeInitCodecWithFallback(MediaCodecRenderer.java:786)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.maybeInitCodec(MediaCodecRenderer.java:510)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.onInputFormatChanged(MediaCodecRenderer.java:1186)
at com.google.android.exoplayer2.video.MediaCodecVideoRenderer.onInputFormatChanged(MediaCodecVideoRenderer.java:636)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.readToFlagsOnlyBuffer(MediaCodecRenderer.java:733)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.render(MediaCodecRenderer.java:644)
at com.google.android.exoplayer2.ExoPlayerImplInternal.doSomeWork(ExoPlayerImplInternal.java:575)
at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:326)
at android.os.Handler.dispatchMessage(Handler.java:103)
at android.os.Looper.loop(Looper.java:198)
at android.os.HandlerThread.run(HandlerThread.java:65)
Caused by: android.media.MediaCodec$CodecException: Error 0xfffffff4
at android.media.MediaCodec.native_configure(Native Method)
at android.media.MediaCodec.configure(MediaCodec.java:2014)
at android.media.MediaCodec.configure(MediaCodec.java:1943)
at com.google.android.exoplayer2.video.MediaCodecVideoRenderer.configureCodec(MediaCodecVideoRenderer.java:571)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.initCodec(MediaCodecRenderer.java:847)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.maybeInitCodecWithFallback(MediaCodecRenderer.java:779)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.maybeInitCodec(MediaCodecRenderer.java:510)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.onInputFormatChanged(MediaCodecRenderer.java:1186)
at com.google.android.exoplayer2.video.MediaCodecVideoRenderer.onInputFormatChanged(MediaCodecVideoRenderer.java:636)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.readToFlagsOnlyBuffer(MediaCodecRenderer.java:733)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.render(MediaCodecRenderer.java:644)
at com.google.android.exoplayer2.ExoPlayerImplInternal.doSomeWork(ExoPlayerImplInternal.java:575)
at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:326)
at android.os.Handler.dispatchMessage(Handler.java:103)
at android.os.Looper.loop(Looper.java:198)
at android.os.HandlerThread.run(HandlerThread.java:65)
2019-10-03 15:15:25.882 21372-21796/com.test.app.dev W/ExtendedACodec: Failed to get extension for extradata parameter
We are also facing the same problem with exoplayer 2.10.5. We are also reusing the exoplayer instance which might be used for a video with different resolution.
Same problem:
2019-10-22 12:33:36.229 764-20851/? E/HIOMX_CORE: OMX_GetHandle :: OMX.hisi.video.decoder, modules load too much
2019-10-22 12:33:36.229 764-20851/? E/media.codec: Failed to allocate omx component 'OMX.hisi.video.decoder.avc' err=InsufficientResources(0x80001000)
2019-10-22 12:33:36.229 21946-24192/com.lingumi.lingumiplay E/ACodec: Unable to instantiate codec 'OMX.hisi.video.decoder.avc' with err 0xfffffff4.
2019-10-22 12:33:36.229 21946-24192/com.lingumi.lingumiplay E/ACodec: signalError(omxError 0xfffffff4, internalError -12)
2019-10-22 12:33:36.230 21946-24191/com.lingumi.lingumiplay E/MediaCodec: Codec reported err 0xfffffff4, actionCode 0, while in state 1
2019-10-22 12:33:36.232 757-21871/? E/ResourceManagerService: getLowestPriorityBiggestClient_l: lowest priority 0 vs caller priority 0
2019-10-22 12:33:36.240 764-22228/? W/VDEC: now scd seg num is abnormal, num is 1, full flag : 0
2019-10-22 12:33:36.241 762-24177/? W/Misc____: [ad60cf5_64W] saveQRSeamlessInfo, getQRSeamlessMap fail!
2019-10-22 12:33:36.242 21946-24189/com.lingumi.lingumiplay W/MediaCodec-JNI: try to release MediaCodec from JMediaCodec::~JMediaCodec()...
2019-10-22 12:33:36.242 21946-24189/com.lingumi.lingumiplay W/MediaCodec-JNI: done releasing MediaCodec from JMediaCodec::~JMediaCodec().
2019-10-22 12:33:36.244 21946-24189/com.lingumi.lingumiplay W/MediaCodecRenderer: Failed to initialize decoder: OMX.hisi.video.decoder.avc
android.media.MediaCodec$CodecException: Failed to initialize OMX.hisi.video.decoder.avc, error 0xfffffff4
at android.media.MediaCodec.native_setup(Native Method)
at android.media.MediaCodec.<init>(MediaCodec.java:1818)
at android.media.MediaCodec.createByCodecName(MediaCodec.java:1799)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.initCodec(MediaCodecRenderer.java:802)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.initCodecWithFallback(MediaCodecRenderer.java:745)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.maybeInitCodec(MediaCodecRenderer.java:474)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.reinitializeCodec(MediaCodecRenderer.java:1261)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.onInputFormatChanged(MediaCodecRenderer.java:1111)
at com.google.android.exoplayer2.video.MediaCodecVideoRenderer.onInputFormatChanged(MediaCodecVideoRenderer.java:552)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.render(MediaCodecRenderer.java:647)
at com.google.android.exoplayer2.ExoPlayerImplInternal.doSomeWork(ExoPlayerImplInternal.java:536)
at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:303)
at android.os.Handler.dispatchMessage(Handler.java:105)
at android.os.Looper.loop(Looper.java:207)
at android.os.HandlerThread.run(HandlerThread.java:65)
2019-10-22 12:33:36.245 21946-24189/com.lingumi.lingumiplay E/ExoPlayerImplInternal: Playback error.
com.google.android.exoplayer2.ExoPlaybackException: com.google.android.exoplayer2.mediacodec.MediaCodecRenderer$DecoderInitializationException: Decoder init failed: OMX.hisi.video.decoder.avc, Format(1, null, null, video/avc, null, -1, null, [640, 480, -1.0], [-1, -1])
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.maybeInitCodec(MediaCodecRenderer.java:479)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.reinitializeCodec(MediaCodecRenderer.java:1261)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.onInputFormatChanged(MediaCodecRenderer.java:1111)
at com.google.android.exoplayer2.video.MediaCodecVideoRenderer.onInputFormatChanged(MediaCodecVideoRenderer.java:552)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.render(MediaCodecRenderer.java:647)
at com.google.android.exoplayer2.ExoPlayerImplInternal.doSomeWork(ExoPlayerImplInternal.java:536)
at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:303)
at android.os.Handler.dispatchMessage(Handler.java:105)
at android.os.Looper.loop(Looper.java:207)
at android.os.HandlerThread.run(HandlerThread.java:65)
Caused by: com.google.android.exoplayer2.mediacodec.MediaCodecRenderer$DecoderInitializationException: Decoder init failed: OMX.hisi.video.decoder.avc, Format(1, null, null, video/avc, null, -1, null, [640, 480, -1.0], [-1, -1])
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.initCodecWithFallback(MediaCodecRenderer.java:753)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.maybeInitCodec(MediaCodecRenderer.java:474)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.reinitializeCodec(MediaCodecRenderer.java:1261)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.onInputFormatChanged(MediaCodecRenderer.java:1111)
at com.google.android.exoplayer2.video.MediaCodecVideoRenderer.onInputFormatChanged(MediaCodecVideoRenderer.java:552)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.render(MediaCodecRenderer.java:647)
at com.google.android.exoplayer2.ExoPlayerImplInternal.doSomeWork(ExoPlayerImplInternal.java:536)
at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:303)
at android.os.Handler.dispatchMessage(Handler.java:105)
at android.os.Looper.loop(Looper.java:207)
at android.os.HandlerThread.run(HandlerThread.java:65)
Caused by: android.media.MediaCodec$CodecException: Failed to initialize OMX.hisi.video.decoder.avc, error 0xfffffff4
at android.media.MediaCodec.native_setup(Native Method)
at android.media.MediaCodec.<init>(MediaCodec.java:1818)
at android.media.MediaCodec.createByCodecName(MediaCodec.java:1799)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.initCodec(MediaCodecRenderer.java:802)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.initCodecWithFallback(MediaCodecRenderer.java:745)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.maybeInitCodec(MediaCodecRenderer.java:474)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.reinitializeCodec(MediaCodecRenderer.java:1261)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.onInputFormatChanged(MediaCodecRenderer.java:1111)
at com.google.android.exoplayer2.video.MediaCodecVideoRenderer.onInputFormatChanged(MediaCodecVideoRenderer.java:552)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.render(MediaCodecRenderer.java:647)
at com.google.android.exoplayer2.ExoPlayerImplInternal.doSomeWork(ExoPlayerImplInternal.java:536)
at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:303)
at android.os.Handler.dispatchMessage(Handler.java:105)
at android.os.Looper.loop(Looper.java:207)
at android.os.HandlerThread.run(HandlerThread.java:65)
We are facing the same issue, any solution for this?
Hi, I'm also seeing this in our production app right now (we sometimes have two videos playing on-screen in a RecyclerView) using Exoplayer version 2.10.2 and videos fail to play.
E/ExoPlayerImplInternal: Playback error.
com.google.android.exoplayer2.ExoPlaybackException: com.google.android.exoplayer2.mediacodec.MediaCodecRenderer$DecoderInitializationException: Decoder init failed: OMX.qcom.video.decoder.avc, Format(7, null, null, video/avc, avc1.4D401F, 1868000, null, [720, 1080, -1.0], [-1, -1])
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.maybeInitCodec(MediaCodecRenderer.java:510)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.onInputFormatChanged(MediaCodecRenderer.java:1171)
at com.google.android.exoplayer2.video.MediaCodecVideoRenderer.onInputFormatChanged(MediaCodecVideoRenderer.java:634)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.readToFlagsOnlyBuffer(MediaCodecRenderer.java:726)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.render(MediaCodecRenderer.java:640)
at com.google.android.exoplayer2.ExoPlayerImplInternal.doSomeWork(ExoPlayerImplInternal.java:575)
at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:326)
at android.os.Handler.dispatchMessage(Handler.java:103)
at android.os.Looper.loop(Looper.java:214)
at android.os.HandlerThread.run(HandlerThread.java:67)
Caused by: com.google.android.exoplayer2.mediacodec.MediaCodecRenderer$DecoderInitializationException: Decoder init failed: OMX.qcom.video.decoder.avc, Format(7, null, null, video/avc, avc1.4D401F, 1868000, null, [720, 1080, -1.0], [-1, -1])
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.maybeInitCodecWithFallback(MediaCodecRenderer.java:779)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.maybeInitCodec(MediaCodecRenderer.java:508)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.onInputFormatChanged(MediaCodecRenderer.java:1171)
at com.google.android.exoplayer2.video.MediaCodecVideoRenderer.onInputFormatChanged(MediaCodecVideoRenderer.java:634)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.readToFlagsOnlyBuffer(MediaCodecRenderer.java:726)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.render(MediaCodecRenderer.java:640)
at com.google.android.exoplayer2.ExoPlayerImplInternal.doSomeWork(ExoPlayerImplInternal.java:575)
at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:326)
at android.os.Handler.dispatchMessage(Handler.java:103)
at android.os.Looper.loop(Looper.java:214)
at android.os.HandlerThread.run(HandlerThread.java:67)
Caused by: android.media.MediaCodec$CodecException: Failed to initialize OMX.qcom.video.decoder.avc, error 0xfffffff4
at android.media.MediaCodec.native_setup(Native Method)
at android.media.MediaCodec.<init>(MediaCodec.java:1864)
at android.media.MediaCodec.createByCodecName(MediaCodec.java:1842)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.initCodec(MediaCodecRenderer.java:837)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.maybeInitCodecWithFallback(MediaCodecRenderer.java:772)
Edit: This was from a Pixel 2 running Q
I have solved the issue by using a single instance of exoplayer at any moment.
@mohitbhansali Hi, can you show me the part where you change media or when you are releasing it ? It's not working on react-native-video and I'm searching how to correct it ...
@billouboq you just render on instance of react-native-video at a time. If you have a list of videos, just render the thumbnails of the other videos, and only react-native-video for the currently displayed video on screen.
@ramon90 It's a little more complicated, I use only one Video Component but change the videoUrl fast sometimes, and since react-native update asynchronously, I think it can create race conditions.
I even used a a thing to delay url change with a 75ms timeout but even with it, usually around 10 to 20 (very random) video changes it crash.
Anyway I think it's more of a react-native exoplayer integration than an exoplayer bug itself.
I think a workaround for your situation would be is to make sure to render the next video's thumbnail before rendering the video component. For example:
{this.state.willLoadNext ? <Image/> : <Video/>}
And use a timeout to change will load next state.
Have the same issue. Device: Lenovo A6020a40
Same issue here...
Same issue ... is it possible to kill the widget when if he is in a stacked route and not the displayed route ?
+1
When having multiple videos in flatlist and autoplaying when they come in view, after a few videos the error occurs. I have attached the screenshot for the reference.
PS: I am on the latest react-native-video version and using exoplayer

I tried to stop the ExoPlayerFactory.newSimpleInstance in all cases (onResume, onPause, onStop), and it works with me.

Same here, Exoplayer 2.11.4, Android 9
com.google.android.exoplayer2.ExoPlaybackException: com.google.android.exoplayer2.mediacodec.MediaCodecRenderer$DecoderInitializationException: Decoder init failed: OMX.qcom.video.decoder.avc, Format(1, null, null, video/avc, avc1.4D401F, 2811990, null, [1080, 1920, 50.0], [-1, -1])
at com.google.android.exoplayer2.BaseRenderer.createRendererException(BaseRenderer.java:359)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.maybeInitCodec(MediaCodecRenderer.java:563)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.onInputFormatChanged(MediaCodecRenderer.java:1254)
at com.google.android.exoplayer2.video.MediaCodecVideoRenderer.onInputFormatChanged(MediaCodecVideoRenderer.java:756)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.readToFlagsOnlyBuffer(MediaCodecRenderer.java:814)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.render(MediaCodecRenderer.java:712)
at com.google.android.exoplayer2.ExoPlayerImplInternal.doSomeWork(ExoPlayerImplInternal.java:599)
at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:329)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:193)
at android.os.HandlerThread.run(HandlerThread.java:65)
Caused by: com.google.android.exoplayer2.mediacodec.MediaCodecRenderer$DecoderInitializationException: Decoder init failed: OMX.qcom.video.decoder.avc, Format(1, null, null, video/avc, avc1.4D401F, 2811990, null, [1080, 1920, 50.0], [-1, -1])
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.maybeInitCodecWithFallback(MediaCodecRenderer.java:867)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.maybeInitCodec(MediaCodecRenderer.java:561)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.onInputFormatChanged(MediaCodecRenderer.java:1254)
at com.google.android.exoplayer2.video.MediaCodecVideoRenderer.onInputFormatChanged(MediaCodecVideoRenderer.java:756)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.readToFlagsOnlyBuffer(MediaCodecRenderer.java:814)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.render(MediaCodecRenderer.java:712)
at com.google.android.exoplayer2.ExoPlayerImplInternal.doSomeWork(ExoPlayerImplInternal.java:599)
at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:329)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:193)
at android.os.HandlerThread.run(HandlerThread.java:65)
Caused by: android.media.MediaCodec$CodecException: Error 0xfffffff4
at android.media.MediaCodec.native_configure(Native Method)
at android.media.MediaCodec.configure(MediaCodec.java:1960)
at android.media.MediaCodec.configure(MediaCodec.java:1889)
at com.google.android.exoplayer2.video.MediaCodecVideoRenderer.configureCodec(MediaCodecVideoRenderer.java:689)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.initCodec(MediaCodecRenderer.java:928)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.maybeInitCodecWithFallback(MediaCodecRenderer.java:860)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.maybeInitCodec(MediaCodecRenderer.java:561)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.onInputFormatChanged(MediaCodecRenderer.java:1254)
at com.google.android.exoplayer2.video.MediaCodecVideoRenderer.onInputFormatChanged(MediaCodecVideoRenderer.java:756)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.readToFlagsOnlyBuffer(MediaCodecRenderer.java:814)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.render(MediaCodecRenderer.java:712)
at com.google.android.exoplayer2.ExoPlayerImplInternal.doSomeWork(ExoPlayerImplInternal.java:599)
at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:329)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:193)
at android.os.HandlerThread.run(HandlerThread.java:65)
Same here, Exoplayer 2.11.4, Android 9
com.google.android.exoplayer2.ExoPlaybackException: com.google.android.exoplayer2.mediacodec.MediaCodecRenderer$DecoderInitializationException: Decoder init failed: OMX.qcom.video.decoder.avc, Format(1, null, null, video/avc, avc1.4D401F, 2811990, null, [1080, 1920, 50.0], [-1, -1]) at com.google.android.exoplayer2.BaseRenderer.createRendererException(BaseRenderer.java:359) at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.maybeInitCodec(MediaCodecRenderer.java:563) at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.onInputFormatChanged(MediaCodecRenderer.java:1254) at com.google.android.exoplayer2.video.MediaCodecVideoRenderer.onInputFormatChanged(MediaCodecVideoRenderer.java:756) at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.readToFlagsOnlyBuffer(MediaCodecRenderer.java:814) at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.render(MediaCodecRenderer.java:712) at com.google.android.exoplayer2.ExoPlayerImplInternal.doSomeWork(ExoPlayerImplInternal.java:599) at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:329) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:193) at android.os.HandlerThread.run(HandlerThread.java:65) Caused by: com.google.android.exoplayer2.mediacodec.MediaCodecRenderer$DecoderInitializationException: Decoder init failed: OMX.qcom.video.decoder.avc, Format(1, null, null, video/avc, avc1.4D401F, 2811990, null, [1080, 1920, 50.0], [-1, -1]) at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.maybeInitCodecWithFallback(MediaCodecRenderer.java:867) at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.maybeInitCodec(MediaCodecRenderer.java:561) at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.onInputFormatChanged(MediaCodecRenderer.java:1254) at com.google.android.exoplayer2.video.MediaCodecVideoRenderer.onInputFormatChanged(MediaCodecVideoRenderer.java:756) at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.readToFlagsOnlyBuffer(MediaCodecRenderer.java:814) at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.render(MediaCodecRenderer.java:712) at com.google.android.exoplayer2.ExoPlayerImplInternal.doSomeWork(ExoPlayerImplInternal.java:599) at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:329) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:193) at android.os.HandlerThread.run(HandlerThread.java:65) Caused by: android.media.MediaCodec$CodecException: Error 0xfffffff4 at android.media.MediaCodec.native_configure(Native Method) at android.media.MediaCodec.configure(MediaCodec.java:1960) at android.media.MediaCodec.configure(MediaCodec.java:1889) at com.google.android.exoplayer2.video.MediaCodecVideoRenderer.configureCodec(MediaCodecVideoRenderer.java:689) at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.initCodec(MediaCodecRenderer.java:928) at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.maybeInitCodecWithFallback(MediaCodecRenderer.java:860) at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.maybeInitCodec(MediaCodecRenderer.java:561) at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.onInputFormatChanged(MediaCodecRenderer.java:1254) at com.google.android.exoplayer2.video.MediaCodecVideoRenderer.onInputFormatChanged(MediaCodecVideoRenderer.java:756) at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.readToFlagsOnlyBuffer(MediaCodecRenderer.java:814) at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.render(MediaCodecRenderer.java:712) at com.google.android.exoplayer2.ExoPlayerImplInternal.doSomeWork(ExoPlayerImplInternal.java:599) at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:329) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:193) at android.os.HandlerThread.run(HandlerThread.java:65)
Same problem Android 5.1
发现出现这个问题是因为,调用prepare()之后500ms内调用setPlayWhenReady(false)导致的。
I have solved the issue by using a single instance of exoplayer at any moment.
but if there are three or more player play in the same time on the screen .single instance cant do so
using texture_view instead of surface_view fixed the issue for me. My usecase is within a react native world but am doing weird fullscreening with a fragment.
Integrating exo with fluttter also gave same problem https://github.com/flutter/flutter/issues/61309
But there it's possible upto 8 times, on some medium powered devices
Does anyone have any update on this?
Are there any updates?