Closed micodev closed 1 year ago
Can you try, on latest version and on which platform does that happen?
And are you playing a live stream?
@zezo357 I am using 4.2.11-dev-8
bc of subtitle customization and as I said I was playing a video not a stream also I am running this on android
@zezo357 I am using
4.2.11-dev-8
bc of subtitle customization and as I said I was playing a video not a stream also I am running this on android
the subtitle customization, is available in 4.2.12
let me upgrade it @zezo357 and I will try to test it again thanks man.
can you show all logs just to be able to find the problem?
Is there any flag for that , or you need the default once ?
Is there any flag for that , or you need the default once ?
all the exception stack trace, since i cant find out from where it was happening and why
no extra flags needed, just the flutter error logs
E/MediaCodecVideoRenderer(30174): Video codec error E/MediaCodecVideoRenderer(30174): java.lang.IllegalStateException E/MediaCodecVideoRenderer(30174): at android.media.MediaCodec.native_dequeueInputBuffer(Native Method) E/MediaCodecVideoRenderer(30174): at android.media.MediaCodec.dequeueInputBuffer(MediaCodec.java:2855) E/MediaCodecVideoRenderer(30174): at h3.x.n(:99) E/MediaCodecVideoRenderer(30174): at h3.o.k0(:1189) E/MediaCodecVideoRenderer(30174): at h3.o.l(:784) E/MediaCodecVideoRenderer(30174): at o2.m1.p(:1007) E/MediaCodecVideoRenderer(30174): at o2.m1.handleMessage(:502) E/MediaCodecVideoRenderer(30174): at android.os.Handler.dispatchMessage(Handler.java:102) E/MediaCodecVideoRenderer(30174): at android.os.Looper.loop(Looper.java:223) E/MediaCodecVideoRenderer(30174): at android.os.HandlerThread.run(HandlerThread.java:67) E/ExoPlayerImplInternal(30174): Playback error /ExoPlayerImplInternal(30174): o2.q: MediaCodecVideoRenderer error, index=0, format=Format(1, null, null, video/avc, avc1.64001E, -1, null, [854, 356, 23.97602], [-1, -1]), format_supported=YES E/ExoPlayerImplInternal(30174): at o2.m1.handleMessage(:578) E/ExoPlayerImplInternal(30174): at android.os.Handler.dispatchMessage(Handler.java:102) E/ExoPlayerImplInternal(30174): at android.os.Looper.loop(Looper.java:223) E/ExoPlayerImplInternal(30174): at android.os.HandlerThread.run(HandlerThread.java:67) E/ExoPlayerImplInternal(30174): Caused by: q4.g: Decoder failed: c2.android.avc.decoder E/ExoPlayerImplInternal(30174): at q4.h.d0(:1639) E/ExoPlayerImplInternal(30174): at h3.o.l(:803) E/ExoPlayerImplInternal(30174): at o2.m1.p(:1007) E/ExoPlayerImplInternal(30174): at o2.m1.handleMessage(:502) E/ExoPlayerImplInternal(30174): ... 3 more E/ExoPlayerImplInternal(30174): Caused by: java.lang.IllegalStateException E/ExoPlayerImplInternal(30174): at android.media.MediaCodec.native_dequeueInputBuffer(Native Method) E/ExoPlayerImplInternal(30174): at android.media.MediaCodec.dequeueInputBuffer(MediaCodec.java:2855) E/ExoPlayerImplInternal(30174): at h3.x.n(:99) E/ExoPlayerImplInternal(30174): at h3.o.k0(:1189) E/ExoPlayerImplInternal(30174): at h3.o.l(:784) E/ExoPlayerImplInternal(30174): ... 5 more E/ExoPlayerImplInternal(30174): Disable failed. E/ExoPlayerImplInternal(30174): java.lang.IllegalStateException E/ExoPlayerImplInternal(30174): at android.media.MediaCodec.native_flush(Native Method) E/ExoPlayerImplInternal(30174): at android.media.MediaCodec.flush(MediaCodec.java:2298) E/ExoPlayerImplInternal(30174): at h3.x.flush(:166) E/ExoPlayerImplInternal(30174): at h3.o.l0(:867) E/ExoPlayerImplInternal(30174): at h3.o.n0(:860) E/ExoPlayerImplInternal(30174): at h3.o.H(:700) E/ExoPlayerImplInternal(30174): at q4.h.H(:609) E/ExoPlayerImplInternal(30174): at o2.f.e(:186) E/ExoPlayerImplInternal(30174): at o2.m1.o(:1671) E/ExoPlayerImplInternal(30174): at o2.m1.q0(:1412) E/ExoPlayerImplInternal(30174): at o2.m1.i1(:1373) E/ExoPlayerImplInternal(30174): at o2.m1.handleMessage(:594) E/ExoPlayerImplInternal(30174): at android.os.Handler.dispatchMessage(Handler.java:102) E/ExoPlayerImplInternal(30174): at android.os.Looper.loop(Looper.java:223) E/ExoPlayerImplInternal(30174): at android.os.HandlerThread.run(HandlerThread.java:67) D/CCodecBuffers(30174): [c2.android.aac.decoder#612:1D-Output.Impl[N]] Client returned a buffer it does not own according to our record: 0 D/CCodecBuffers(30174): [c2.android.aac.decoder#612:1D-Output.Impl[N]] Client returned a buffer it does not own according to our record: 1 D/CCodecBuffers(30174): [c2.android.aac.decoder#612:1D-Output.Impl[N]] Client returned a buffer it does not own according to our record: 2 D/CCodecBuffers(30174): [c2.android.aac.decoder#612:1D-Output.Impl[N]] Client returned a buffer it does not own according to our record: 3 I/CCodecConfig(30174): query failed after returning 19 values (BAD_INDEX) D/CCodecConfig(30174): c2 config diff is c2::i32 coding.drc.compression-mode.value = 3 W/Codec2Client(30174): query -- param skipped: index = 1342179345. W/Codec2Client(30174): query -- param skipped: index = 2415921170. W/Codec2Client(30174): query -- param skipped: index = 1610614798. D/CCodecBufferChannel(30174): [c2.android.aac.decoder#612] MediaCodec discarded an unknown buffer I/chatty (30174): uid=10169(net.halasat.tv) identical 2 lines D/CCodecBufferChannel(30174): [c2.android.aac.decoder#612] MediaCodec discarded an unknown buffer D/BufferPoolAccessor2.0(30174): bufferpool2 0xb4000074ffe1fdc8 : 0(0 size) total buffers - 0(0 size) used buffers - 1/7 (recycle/alloc) - 6/287 (fetch/transfer) I/hw-BpHwBinder(30174): onLastStrongRef automatically unlinking death recipients ════════════════════════════════════════════════════════════════════════════════════════════════════ Another exception was thrown: Cannot interpolate between finite constraints and unbounded constraints. Another exception was thrown: Cannot interpolate between finite constraints and unbounded constraints. Another exception was thrown: Cannot interpolate between finite constraints and unbounded constraints. Another exception was thrown: Cannot interpolate between finite constraints and unbounded constraints. Another exception was thrown: Cannot interpolate between finite constraints and unbounded constraints. Another exception was thrown: Cannot interpolate between finite constraints and unbounded constraints. Another exception was thrown: Cannot interpolate between finite constraints and unbounded constraints. Another exception was thrown: Cannot interpolate between finite constraints and unbounded constraints. Another exception was thrown: Cannot interpolate between finite constraints and unbounded constraints. Another exception was thrown: Cannot interpolate between finite constraints and unbounded constraints. Another exception was thrown: Cannot interpolate between finite constraints and unbounded constraints. Another exception was thrown: Cannot interpolate between finite constraints and unbounded constraints. Another exception was thrown: Cannot interpolate between finite constraints and unbounded constraints.
/ExoPlayerImplInternal(30174): o2.q: MediaCodecVideoRenderer error, index=0, format=Format(1, null, null, video/avc, avc1.64001E, -1, null, [854, 356, 23.97602], [-1, -1]), format_supported=YES E/ExoPlayerImplInternal(30174): at o2.m1.handleMessage(:578) E/ExoPlayerImplInternal(30174): at android.os.Handler.dispatchMessage(Handler.java:102) E/ExoPlayerImplInternal(30174): at android.os.Looper.loop(Looper.java:223) E/ExoPlayerImplInternal(30174): at android.os.HandlerThread.run(HandlerThread.java:67) E/ExoPlayerImplInternal(30174): Caused by: q4.g: Decoder failed: c2.android.avc.decoder E/ExoPlayerImplInternal(30174): at q4.h.d0(:1639) E/ExoPlayerImplInternal(30174): at h3.o.l(:803) E/ExoPlayerImplInternal(30174): at o2.m1.p(:1007) E/ExoPlayerImplInternal(30174): at o2.m1.handleMessage(:502) E/ExoPlayerImplInternal(30174): ... 3 more E/ExoPlayerImplInternal(30174): Caused by: java.lang.IllegalStateException E/ExoPlayerImplInternal(30174): at android.media.MediaCodec.native_dequeueInputBuffer(Native Method) E/ExoPlayerImplInternal(30174): at android.media.MediaCodec.dequeueInputBuffer(MediaCodec.java:2855) E/ExoPlayerImplInternal(30174): at h3.x.n(:99) E/ExoPlayerImplInternal(30174): at h3.o.k0(:1189) E/ExoPlayerImplInternal(30174): at h3.o.l(:784) E/ExoPlayerImplInternal(30174): ... 5 more E/ExoPlayerImplInternal(30174): Disable failed. E/ExoPlayerImplInternal(30174): java.lang.IllegalStateException E/ExoPlayerImplInternal(30174): at android.media.MediaCodec.native_flush(Native Method) E/ExoPlayerImplInternal(30174): at android.media.MediaCodec.flush(MediaCodec.java:2298) E/ExoPlayerImplInternal(30174): at h3.x.flush(:166) E/ExoPlayerImplInternal(30174): at h3.o.l0(:867) E/ExoPlayerImplInternal(30174): at h3.o.n0(:860) E/ExoPlayerImplInternal(30174): at h3.o.H(:700) E/ExoPlayerImplInternal(30174): at q4.h.H(:609) E/ExoPlayerImplInternal(30174): at o2.f.e(:186) E/ExoPlayerImplInternal(30174): at o2.m1.o(:1671) E/ExoPlayerImplInternal(30174): at o2.m1.q0(:1412) E/ExoPlayerImplInternal(30174): at o2.m1.i1(:1373) E/ExoPlayerImplInternal(30174): at o2.m1.handleMessage(:594) E/ExoPlayerImplInternal(30174): at android.os.Handler.dispatchMessage(Handler.java:102) E/ExoPlayerImplInternal(30174): at android.os.Looper.loop(Looper.java:223) E/ExoPlayerImplInternal(30174): at android.os.HandlerThread.run(HandlerThread.java:67) D/CCodecBuffers(30174): [c2.android.aac.decoder#612:1D-Output.Impl[N]] Client returned a buffer it does not own according to our record: 0 D/CCodecBuffers(30174): [c2.android.aac.decoder#612:1D-Output.Impl[N]] Client returned a buffer it does not own according to our record: 1 D/CCodecBuffers(30174): [c2.android.aac.decoder#612:1D-Output.Impl[N]] Client returned a buffer it does not own according to our record: 2 D/CCodecBuffers(30174): [c2.android.aac.decoder#612:1D-Output.Impl[N]] Client returned a buffer it does not own according to our record: 3 I/CCodecConfig(30174): query failed after returning 19 values (BAD_INDEX) D/CCodecConfig(30174): c2 config diff is c2::i32 coding.drc.compression-mode.value = 3 W/Codec2Client(30174): query -- param skipped: index = 1342179345. W/Codec2Client(30174): query -- param skipped: index = 2415921170. W/Codec2Client(30174): query -- param skipped: index = 1610614798. D/CCodecBufferChannel(30174): [c2.android.aac.decoder#612] MediaCodec discarded an unknown buffer I/chatty (30174): uid=10169(net.halasat.tv) identical 2 lines D/CCodecBufferChannel(30174): [c2.android.aac.decoder#612] MediaCodec discarded an unknown buffer D/BufferPoolAccessor2.0(30174): bufferpool2 0xb4000074ffe1fdc8 : 0(0 size) total buffers - 0(0 size) used buffers - 1/7 (recycle/alloc) - 6/287 (fetch/transfer) I/hw-BpHwBinder(30174): onLastStrongRef automatically unlinking death recipients ════════════════════════════════════════════════════════════════════════════════════════════════════ Another exception was thrown: Cannot interpolate between finite constraints and unbounded constraints. Another exception was thrown: Cannot interpolate between finite constraints and unbounded constraints. Another exception was thrown: Cannot interpolate between finite constraints and unbounded constraints. Another exception was thrown: Cannot interpolate between finite constraints and unbounded constraints. Another exception was thrown: Cannot interpolate between finite constraints and unbounded constraints. Another exception was thrown: Cannot interpolate between finite constraints and unbounded constraints. Another exception was thrown: Cannot interpolate between finite constraints and unbounded constraints. Another exception was thrown: Cannot interpolate between finite constraints and unbounded constraints. Another exception was thrown: Cannot interpolate between finite constraints and unbounded constraints. Another exception was thrown: Cannot interpolate between finite constraints and unbounded constraints. Another exception was thrown: Cannot interpolate between finite constraints and unbounded constraints. Another exception was thrown: Cannot interpolate between finite constraints and unbounded constraints. Another exception was thrown: Cannot interpolate between finite constraints and unbounded constraints.
can you enable media_kit for android and test again, it maybe a problem with exoplayer
Android (replace original video_player with media_kit one) Just add this package in and set androidUseMediaKit to true in initMeeduPlayer dependencies: ... media_kit_libs_android_video: ^1.0.6 # Android package for video native libraries.
@zezo357 it works well using this method but there is another one appeared ,
when I want to play from exist seek using setDataSource
with seekTo
first it get the exact duration then it start from zero.
@zezo357 it works well using this method but there is another one appeared ,
when I want to play from exist seek using
setDataSource
withseekTo
first it get the exact duration then it start from zero.
can you show me how you use your code? and from my testing it should work as expected, tested in examples
I will upload a video of the issue I am 100% sure not a code problem bc when I seek manually after that it continue from my last seek that it should from first place .
@zezo357 it works well using this method but there is another one appeared , when I want to play from exist seek using
setDataSource
withseekTo
first it get the exact duration then it start from zero.can you show me how you use your code? and from my testing it should work as expected, tested in examples
m3u8_page_example, works as expected
.setDataSource(playerDataSource,
autoplay: true,
seekTo: history != null &&
history.episode_number == this.media.value?.episodeNumber
? Duration(seconds: history.startDuration!)
: Duration.zero)
I am using this where history.startDuration!
is an integer
on top of that it was working perfect on exo_player approach
.setDataSource(playerDataSource, autoplay: true, seekTo: history != null && history.episode_number == this.media.value?.episodeNumber ? Duration(seconds: history.startDuration!) : Duration.zero)
I am using this where
history.startDuration!
is an integer on top of that it was working perfect on exo_player approach
can you recheck the history != null && history.episode_number == this.media.value?.episodeNumber ? Duration(seconds: history.startDuration!) : Duration.zero) value?
ezgif.com-gif-to-mp4.mp4
btw you dont need to close the video player and reopen it again, you can set the player datasource on same screen
.setDataSource(playerDataSource, autoplay: true, seekTo: history != null && history.episode_number == this.media.value?.episodeNumber ? Duration(seconds: history.startDuration!) : Duration.zero)
I am using this where
history.startDuration!
is an integer on top of that it was working perfect on exo_player approachcan you recheck the history != null && history.episode_number == this.media.value?.episodeNumber ? Duration(seconds: history.startDuration!) : Duration.zero) value?
ezgif.com-gif-to-mp4.mp4
btw you dont need to close the video player and reopen it again, you can set the player datasource on same screen
I'm doing resume from last duration on my cinema app so it should be like that.
2 - the value was 4430
in seconds.
ezgif.com-gif-to-mp4.mp4
please check this and take a closer look when video at 9 seconds you will see it works fine then shift to zero.
I/flutter ( 3432): Duration is 2:20:55.136000
I/flutter ( 3432): Called seek function to0:20:32.000000
I/flutter ( 3432): position in seek function is 0:20:32.000000
I/flutter ( 3432): duration in seek function is 2:20:55.136000
I/flutter ( 3432): gpu
from log
yes i was just able to reproduce it, right its 1:00 AM , i will recheck again tomorrow for a fix, keep in mind that didnt happen on desktop this only happens on android , which is weird ,
yes i was just able to reproduce it, right its 1:00 AM , i will recheck again tomorrow for a fix, keep in mind that didnt happen on desktop this only happens on android , which is weird ,
ok bro, rabi ya7mek keep it up , I am waiting for the fix tho. and GN
can you test again using this , i made a function to check if seek is done or not and redo it ,
not a clean fix, but since i dont know the cause of it this what i am going with to make it work for now
use github package in dependency
flutter_meedu_videoplayer:
git:
url: https://github.com/zezo357/flutter_meedu_videoplayer
path: package/
lemme see , btw the error of pausing using exo_player
not committed at real device only emulator.
it works fine now @zezo357 using media_kit
with resume from where is left.
it works fine now @zezo357 using
media_kit
with resume from where is left.
Will publish new release then , thank you for confirming.
released in 4.2.13
Another exception was thrown: Cannot interpolate between finite constraints and unbounded constraints.
using
flutter_meedu_videoplayer: 4.2.11-dev-8