debugly/ijkplayer

【QA】关于设置播放时间currentPlaybackTime

Opened this issue · 5 comments

大佬我问一个设置播放时间的问题
使用场景是这样的,当我滑动进度条的时候,我想把滑动到那个位置的视频图片展示出来,所以我在滑动过程中设置了currentPlaybackTime,然后通过thumbnailImageAtCurrentTime获取当前的图片。但是这样目前有个问题,就是多次设置currentPlaybackTime会失效,导致最后滑动的位置不准确,这种如何解决呢?
我看了下log,设置时间的事件貌似被忽略了
[IJKMEDIA]ijkmp_seek_to(487396)
[IJKMEDIA]ijkmp_seek_to(487396)=0
[IJKMEDIA]ijkmp_get_msg: FFP_REQ_SEEK
[IJKMEDIA]ignore stream_seek 487396000(487396) + 0,
[IJKMEDIA]ijkmp_start()
[IJKMEDIA]ijkmp_start()=0
[IJKMEDIA]ijkmp_get_msg: FFP_REQ_START
[IJKMEDIA]ijkmp_get_msg: FFP_REQ_START: start on fly
[IJKMEDIA]aout_pause_audio(1)

设置currentPlaybackTime的频率太高了,你可以打印下看看你调用了多少次;
每次设置都会触发seek,如果上次seek没有完成就会忽略当次seek。

我知道你的意思了,不过调用 thumbnailImageAtCurrentTime 实现你说的效果不合适,因为内部调用的是截屏。

设置currentPlaybackTime的频率太高了,你可以打印下看看你调用了多少次; 每次设置都会触发seek,如果上次seek没有完成就会忽略当次seek。

对,目前效果是这样的,因为调用次数过多,之前的没有完成就忽略了最后一次,大佬有什么办法实现滑动过程中获取响应时间的视频截图的方法吗?

可以用 https://github.com/debugly/MRVideoToPicture 对视频进行抽帧,保存成图片,实现预览功能。
后续我看看能否在ijk里实现一个指定位置抽帧的方法。

好的 谢谢大佬的回复 我看下这里