GeekyAnts / flick-video-player

MIT License
270 stars 268 forks source link

Failed to initialize decoder: OMX.Exynos.avc.dec #296

Open kmoreau opened 1 month ago

kmoreau commented 1 month ago

Hello,

I have a problem in some real device on Android (Android 7 here). I use flick_video_player 0.5.0 (i try flick_video_player 0.9.0 but it's not work too)

I try to do a media page view with some image and video, and i can swipe between.

In my PageView, i have a mediaSelector (which select image or video widget to display in currentIndex) and in my video stateful widget i use FlickManager.

I init FlickManager in initState() like this :

flickManager = FlickManager( autoPlay: true, autoInitialize: true, videoPlayerController: VideoPlayerController.file(file), );

It works well in some cases like "image / video / image / video" but when i have 2 videos in consecutive swipe the second video won't init ...

I don't understand why it's not possible to do multiple init on some Android, in iOS it work well !

log :

I/ExoPlayerImpl(20186): Init 49a0ece [ExoPlayerLib/2.18.7] [a5xelte, SM-A510F, samsung, 24] D/ViewRootImpl@2b42270[MainActivity](20186): Relayout returned: oldFrame=[0,0][1080,1920] newFrame=[0,0][1080,1920] result=0x1 surface={isValid=true -531484672} surfaceGenerationChanged=false I/ACodec (20186): [] Now uninitialized I/ACodec (20186): [] onAllocateComponent I/OMXClient(20186): MuxOMX ctor I/ACodec (20186): [OMX.Exynos.avc.dec] Now Loaded I/MediaCodec(20186): [OMX.Exynos.avc.dec] setting surface generation to 20670466 I/ACodec (20186): can't find wfdsink-exynos-enable E/ACodec (20186): configureCodec multi window instance fail appPid : 20186 E/ACodec (20186): [OMX.Exynos.avc.dec] configureCodec returning error -5001 E/ACodec (20186): signalError(omxError 0x80001001, internalError -5001) E/MediaCodec(20186): Codec reported err 0xffffec77, actionCode 0, while in state 3 E/MediaCodec(20186): configure failed with err 0xffffec77, resetting... I/ACodec (20186): [OMX.Exynos.avc.dec] Now uninitialized I/ACodec (20186): [] Now kWhatShutdownCompleted event : 8561 I/MediaCodec(20186): Codec shutdown complete I/ACodec (20186): [] Now uninitialized I/ACodec (20186): [] onAllocateComponent I/OMXClient(20186): MuxOMX ctor I/ACodec (20186): [OMX.Exynos.avc.dec] Now Loaded I/ACodec (20186): [OMX.Exynos.avc.dec] Now uninitialized I/ACodec (20186): [] Now kWhatShutdownCompleted event : 8561 I/MediaCodec(20186): Codec shutdown complete W/MediaCodecRenderer(20186): Preferred decoder instantiation failed. Sleeping for 50ms then retrying. I/ACodec (20186): [] Now uninitialized I/flutter (20186): ### isFirstMedia: false I/ACodec (20186): [] onAllocateComponent I/OMXClient(20186): MuxOMX ctor I/ACodec (20186): [OMX.Exynos.avc.dec] Now Loaded I/MediaCodec(20186): [OMX.Exynos.avc.dec] setting surface generation to 20670467 I/ACodec (20186): can't find wfdsink-exynos-enable E/ACodec (20186): configureCodec multi window instance fail appPid : 20186 E/ACodec (20186): [OMX.Exynos.avc.dec] configureCodec returning error -5001 E/ACodec (20186): signalError(omxError 0x80001001, internalError -5001) E/MediaCodec(20186): Codec reported err 0xffffec77, actionCode 0, while in state 3 E/MediaCodec(20186): configure failed with err 0xffffec77, resetting... I/ACodec (20186): [OMX.Exynos.avc.dec] Now uninitialized I/ACodec (20186): [] Now kWhatShutdownCompleted event : 8561 I/MediaCodec(20186): Codec shutdown complete I/ACodec (20186): [] Now uninitialized I/ACodec (20186): [] onAllocateComponent I/OMXClient(20186): MuxOMX ctor I/ACodec (20186): [OMX.Exynos.avc.dec] Now Loaded I/ACodec (20186): [OMX.Exynos.avc.dec] Now uninitialized I/ACodec (20186): [] Now kWhatShutdownCompleted event : 8561 I/MediaCodec(20186): Codec shutdown complete W/MediaCodecRenderer(20186): Failed to initialize decoder: OMX.Exynos.avc.dec W/MediaCodecRenderer(20186): android.media.MediaCodec$CodecException: Error 0xffffec77 W/MediaCodecRenderer(20186): at android.media.MediaCodec.native_configure(Native Method) W/MediaCodecRenderer(20186): at android.media.MediaCodec.configure(MediaCodec.java:1882) W/MediaCodecRenderer(20186): at com.google.android.exoplayer2.mediacodec.SynchronousMediaCodecAdapter$Factory.createAdapter(SynchronousMediaCodecAdapter.java:51) W/MediaCodecRenderer(20186): at com.google.android.exoplayer2.mediacodec.DefaultMediaCodecAdapterFactory.createAdapter(DefaultMediaCodecAdapterFactory.java:113) W/MediaCodecRenderer(20186): at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.initCodec(MediaCodecRenderer.java:1099) W/MediaCodecRenderer(20186): at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.maybeInitCodecWithFallback(MediaCodecRenderer.java:1010) W/MediaCodecRenderer(20186): at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.maybeInitCodecOrBypass(MediaCodecRenderer.java:537) W/MediaCodecRenderer(20186): at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.onInputFormatChanged(MediaCodecRenderer.java:1453) W/MediaCodecRenderer(20186): at com.google.android.exoplayer2.video.MediaCodecVideoRenderer.onInputFormatChanged(MediaCodecVideoRenderer.java:917) W/MediaCodecRenderer(20186): at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.readSourceOmittingSampleData(MediaCodecRenderer.java:954) W/MediaCodecRenderer(20186): at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.render(MediaCodecRenderer.java:769) W/MediaCodecRenderer(20186): at com.google.android.exoplayer2.ExoPlayerImplInternal.doSomeWork(ExoPlayerImplInternal.java:1007) W/MediaCodecRenderer(20186): at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:502) W/MediaCodecRenderer(20186): at android.os.Handler.dispatchMessage(Handler.java:98) W/MediaCodecRenderer(20186): at android.os.Looper.loop(Looper.java:154) W/MediaCodecRenderer(20186): at android.os.HandlerThread.run(HandlerThread.java:61) E/MediaCodecVideoRenderer(20186): Video codec error E/MediaCodecVideoRenderer(20186): com.google.android.exoplayer2.mediacodec.MediaCodecRenderer$DecoderInitializationException: Decoder init failed: OMX.Exynos.avc.dec, Format(1, null, null, video/avc, avc1.648028, -1, null, [1920, 1080, 30.004152], [-1, -1]) E/MediaCodecVideoRenderer(20186): at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.maybeInitCodecWithFallback(MediaCodecRenderer.java:1021) E/MediaCodecVideoRenderer(20186): at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.maybeInitCodecOrBypass(MediaCodecRenderer.java:537) E/MediaCodecVideoRenderer(20186): at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.onInputFormatChanged(MediaCodecRenderer.java:1453) E/MediaCodecVideoRenderer(20186): at com.google.android.exoplayer2.video.MediaCodecVideoRenderer.onInputFormatChanged(MediaCodecVideoRenderer.java:917) E/MediaCodecVideoRenderer(20186): at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.readSourceOmittingSampleData(MediaCodecRenderer.java:954) E/MediaCodecVideoRenderer(20186): at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.render(MediaCodecRenderer.java:769) E/MediaCodecVideoRenderer(20186): at com.google.android.exoplayer2.ExoPlayerImplInternal.doSomeWork(ExoPlayerImplInternal.java:1007) E/MediaCodecVideoRenderer(20186): at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:502) E/MediaCodecVideoRenderer(20186): at android.os.Handler.dispatchMessage(Handler.java:98) E/MediaCodecVideoRenderer(20186): at android.os.Looper.loop(Looper.java:154) E/MediaCodecVideoRenderer(20186): at android.os.HandlerThread.run(HandlerThread.java:61) E/MediaCodecVideoRenderer(20186): Caused by: android.media.MediaCodec$CodecException: Error 0xffffec77 E/MediaCodecVideoRenderer(20186): at android.media.MediaCodec.native_configure(Native Method) E/MediaCodecVideoRenderer(20186): at android.media.MediaCodec.configure(MediaCodec.java:1882) E/MediaCodecVideoRenderer(20186): at com.google.android.exoplayer2.mediacodec.SynchronousMediaCodecAdapter$Factory.createAdapter(SynchronousMediaCodecAdapter.java:51) E/MediaCodecVideoRenderer(20186): at com.google.android.exoplayer2.mediacodec.DefaultMediaCodecAdapterFactory.createAdapter(DefaultMediaCodecAdapterFactory.java:113) E/MediaCodecVideoRenderer(20186): at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.initCodec(MediaCodecRenderer.java:1099) E/MediaCodecVideoRenderer(20186): at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.maybeInitCodecWithFallback(MediaCodecRenderer.java:1010) E/MediaCodecVideoRenderer(20186): ... 10 more E/ExoPlayerImplInternal(20186): Playback error E/ExoPlayerImplInternal(20186): com.google.android.exoplayer2.ExoPlaybackException: MediaCodecVideoRenderer error, index=0, format=Format(1, null, null, video/avc, avc1.648028, -1, null, [1920, 1080, 30.004152], [-1, -1]), format_supported=YES E/ExoPlayerImplInternal(20186): at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:578) E/ExoPlayerImplInternal(20186): at android.os.Handler.dispatchMessage(Handler.java:98) E/ExoPlayerImplInternal(20186): at android.os.Looper.loop(Looper.java:154) E/ExoPlayerImplInternal(20186): at android.os.HandlerThread.run(HandlerThread.java:61) E/ExoPlayerImplInternal(20186): Caused by: com.google.android.exoplayer2.mediacodec.MediaCodecRenderer$DecoderInitializationException: Decoder init failed: OMX.Exynos.avc.dec, Format(1, null, null, video/avc, avc1.648028, -1, null, [1920, 1080, 30.004152], [-1, -1]) E/ExoPlayerImplInternal(20186): at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.maybeInitCodecWithFallback(MediaCodecRenderer.java:1021) E/ExoPlayerImplInternal(20186): at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.maybeInitCodecOrBypass(MediaCodecRenderer.java:537) E/ExoPlayerImplInternal(20186): at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.onInputFormatChanged(MediaCodecRenderer.java:1453) E/ExoPlayerImplInternal(20186): at com.google.android.exoplayer2.video.MediaCodecVideoRenderer.onInputFormatChanged(MediaCodecVideoRenderer.java:917) E/ExoPlayerImplInternal(20186): at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.readSourceOmittingSampleData(MediaCodecRenderer.java:954) E/ExoPlayerImplInternal(20186): at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.render(MediaCodecRenderer.java:769) E/ExoPlayerImplInternal(20186): at com.google.android.exoplayer2.ExoPlayerImplInternal.doSomeWork(ExoPlayerImplInternal.java:1007) E/ExoPlayerImplInternal(20186): at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:502) E/ExoPlayerImplInternal(20186): ... 3 more E/ExoPlayerImplInternal(20186): Caused by: android.media.MediaCodec$CodecException: Error 0xffffec77 E/ExoPlayerImplInternal(20186): at android.media.MediaCodec.native_configure(Native Method) E/ExoPlayerImplInternal(20186): at android.media.MediaCodec.configure(MediaCodec.java:1882) E/ExoPlayerImplInternal(20186): at com.google.android.exoplayer2.mediacodec.SynchronousMediaCodecAdapter$Factory.createAdapter(SynchronousMediaCodecAdapter.java:51) E/ExoPlayerImplInternal(20186): at com.google.android.exoplayer2.mediacodec.DefaultMediaCodecAdapterFactory.createAdapter(DefaultMediaCodecAdapterFactory.java:113) E/ExoPlayerImplInternal(20186): at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.initCodec(MediaCodecRenderer.java:1099) E/ExoPlayerImplInternal(20186): at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.maybeInitCodecWithFallback(MediaCodecRenderer.java:1010) E/ExoPlayerImplInternal(20186): ... 10 more

eokdev commented 5 days ago

Same here, found a solution yet?