Closed fougere-mike closed 10 years ago
It appears the video decoder fails to initialize on android 4.1.2 and 4.2.2. The player reaches the BUFFERING state, then an error occurs.
I have included logs below:
08-18 13:46:47.679: D/ACodec(5893): [OMX.MTK.VIDEO.DECODER.AVC] Now Loaded 08-18 13:46:47.694: I/ACodec(5893): mSupportsPartialFrames 0 err 0 08-18 13:46:47.805: D/ACodec(5893): [OMX.MTK.VIDEO.DECODER.AVC] Now Loaded->Idle 08-18 13:46:47.805: E/MemoryHeapBase(5893): mmap(fd=53, size=0) failed (Invalid argument) 08-18 13:46:47.805: D/ACodec(5893): native_window_set_buffers_geometry W(1752419432), H(0), Stride(0), SliceH(1645604196) 08-18 13:46:47.806: E/ACodec(5893): native_window_set_buffers_geometry failed: Invalid argument (22) 08-18 13:46:47.806: E/ACodec(5893): Failed to allocate buffers after transitioning to IDLE state (error 0xffffffea) 08-18 13:46:47.806: D/ACodec(5893): [OMX.MTK.VIDEO.DECODER.AVC] Now Loaded 08-18 13:46:47.807: E/MediaCodec(5893): Codec reported an error. (omx error 0x80001001, internalError -22) 08-18 13:46:47.807: D/dalvikvm(5893): GC_FOR_ALLOC freed 154K, 6% free 30459K/32375K, paused 122ms, total 125ms 08-18 13:46:47.808: I/Choreographer(5893): Skipped 40 frames! The application may be doing too much work on its main thread. 08-18 13:46:47.838: E/ExoPlayerImplInternal(5893): Internal track renderer error. 08-18 13:46:47.838: E/ExoPlayerImplInternal(5893): com.google.android.exoplayer.ExoPlaybackException: com.google.android.exoplayer.MediaCodecTrackRenderer$DecoderInitializationException: Decoder init failed: OMX.MTK.VIDEO.DECODER.AVC, MediaFormat(video/avc, -1, 0, 0, -1, -1, -1, -1) 08-18 13:46:47.838: E/ExoPlayerImplInternal(5893): at com.google.android.exoplayer.MediaCodecTrackRenderer.maybeInitCodec(MediaCodecTrackRenderer.java:273) 08-18 13:46:47.838: E/ExoPlayerImplInternal(5893): at com.google.android.exoplayer.MediaCodecTrackRenderer.feedInputBuffer(MediaCodecTrackRenderer.java:461) 08-18 13:46:47.838: E/ExoPlayerImplInternal(5893): at com.google.android.exoplayer.MediaCodecTrackRenderer.doSomeWork(MediaCodecTrackRenderer.java:388) 08-18 13:46:47.838: E/ExoPlayerImplInternal(5893): at com.google.android.exoplayer.ExoPlayerImplInternal.doSomeWork(ExoPlayerImplInternal.java:407) 08-18 13:46:47.838: E/ExoPlayerImplInternal(5893): at com.google.android.exoplayer.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:203) 08-18 13:46:47.838: E/ExoPlayerImplInternal(5893): at android.os.Handler.dispatchMessage(Handler.java:95) 08-18 13:46:47.838: E/ExoPlayerImplInternal(5893): at android.os.Looper.loop(Looper.java:153) 08-18 13:46:47.838: E/ExoPlayerImplInternal(5893): at android.os.HandlerThread.run(HandlerThread.java:60) 08-18 13:46:47.838: E/ExoPlayerImplInternal(5893): at com.google.android.exoplayer.ExoPlayerImplInternal$1.run(ExoPlayerImplInternal.java:109) 08-18 13:46:47.838: E/ExoPlayerImplInternal(5893): Caused by: com.google.android.exoplayer.MediaCodecTrackRenderer$DecoderInitializationException: Decoder init failed: OMX.MTK.VIDEO.DECODER.AVC, MediaFormat(video/avc, -1, 0, 0, -1, -1, -1, -1) 08-18 13:46:47.838: E/ExoPlayerImplInternal(5893): at com.google.android.exoplayer.MediaCodecTrackRenderer.maybeInitCodec(MediaCodecTrackRenderer.java:270) 08-18 13:46:47.838: E/ExoPlayerImplInternal(5893): ... 8 more 08-18 13:46:47.838: E/ExoPlayerImplInternal(5893): Caused by: java.lang.IllegalStateException 08-18 13:46:47.838: E/ExoPlayerImplInternal(5893): at android.media.MediaCodec.start(Native Method) 08-18 13:46:47.838: E/ExoPlayerImplInternal(5893): at com.google.android.exoplayer.MediaCodecTrackRenderer.maybeInitCodec(MediaCodecTrackRenderer.java:266) 08-18 13:46:47.838: E/ExoPlayerImplInternal(5893): ... 8 more 08-18 13:46:47.841: D/ACodec(5893): Now uninitialized 08-18 13:46:47.867: I/SurfaceTextureClient(5893): [0x67c3af08] frames:2, duration:1.447000, fps:1.381519 08-18 13:46:47.872: I/System.out(5893): [CDS]close[50588] 08-18 13:46:47.914: E/VideoPlayerActivity(5893): onError(): Decoder init failed: OMX.MTK.VIDEO.DECODER.AVC, MediaFormat(video/avc, -1, 0, 0, -1, -1, -1, -1)
08-19 11:43:19.342: E/ACodec(4688): [OMX.Nvidia.h264.decode] setting nBufferCountActual to 6 failed: -1010 08-19 11:43:19.342: E/ACodec(4688): Failed to allocate buffers after transitioning to IDLE state (error 0xfffffc0e) 08-19 11:43:19.342: E/MediaCodec(4688): Codec reported an error. (omx error 0x80001001, internalError -1010) 08-19 11:43:19.352: E/ExoPlayerImplInternal(4688): Internal track renderer error. 08-19 11:43:19.352: E/ExoPlayerImplInternal(4688): com.google.android.exoplayer.ExoPlaybackException: com.google.android.exoplayer.MediaCodecTrackRenderer$DecoderInitializationException: Decoder init failed: OMX.Nvidia.h264.decode, MediaFormat(video/avc, -1, 0, 0, -1, -1, -1, -1) 08-19 11:43:19.352: E/ExoPlayerImplInternal(4688): at com.google.android.exoplayer.MediaCodecTrackRenderer.maybeInitCodec(MediaCodecTrackRenderer.java:273) 08-19 11:43:19.352: E/ExoPlayerImplInternal(4688): at com.google.android.exoplayer.MediaCodecTrackRenderer.doSomeWork(MediaCodecTrackRenderer.java:384) 08-19 11:43:19.352: E/ExoPlayerImplInternal(4688): at com.google.android.exoplayer.ExoPlayerImplInternal.doSomeWork(ExoPlayerImplInternal.java:407) 08-19 11:43:19.352: E/ExoPlayerImplInternal(4688): at com.google.android.exoplayer.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:203) 08-19 11:43:19.352: E/ExoPlayerImplInternal(4688): at android.os.Handler.dispatchMessage(Handler.java:95) 08-19 11:43:19.352: E/ExoPlayerImplInternal(4688): at android.os.Looper.loop(Looper.java:137) 08-19 11:43:19.352: E/ExoPlayerImplInternal(4688): at android.os.HandlerThread.run(HandlerThread.java:60) 08-19 11:43:19.352: E/ExoPlayerImplInternal(4688): at com.google.android.exoplayer.ExoPlayerImplInternal$1.run(ExoPlayerImplInternal.java:109) 08-19 11:43:19.352: E/ExoPlayerImplInternal(4688): Caused by: com.google.android.exoplayer.MediaCodecTrackRenderer$DecoderInitializationException: Decoder init failed: OMX.Nvidia.h264.decode, MediaFormat(video/avc, -1, 0, 0, -1, -1, -1, -1) 08-19 11:43:19.352: E/ExoPlayerImplInternal(4688): at com.google.android.exoplayer.MediaCodecTrackRenderer.maybeInitCodec(MediaCodecTrackRenderer.java:270) 08-19 11:43:19.352: E/ExoPlayerImplInternal(4688): ... 7 more 08-19 11:43:19.352: E/ExoPlayerImplInternal(4688): Caused by: java.lang.IllegalStateException 08-19 11:43:19.352: E/ExoPlayerImplInternal(4688): at android.media.MediaCodec.start(Native Method) 08-19 11:43:19.352: E/ExoPlayerImplInternal(4688): at com.google.android.exoplayer.MediaCodecTrackRenderer.maybeInitCodec(MediaCodecTrackRenderer.java:266) 08-19 11:43:19.352: E/ExoPlayerImplInternal(4688): ... 7 more
Updated with crash logs from another device.
Further research suggests these are two different issues. I will close this, and open a new issue for each to keep things better organized.
It appears the video decoder fails to initialize on android 4.1.2 and 4.2.2. The player reaches the BUFFERING state, then an error occurs.
I have included logs below:
Acer Iconia w/ android 4.1.2
Asus nexus 7 2012 w/ android 4.2.2