av_seek_frame(avFormatContext, -1, us, AVSEEK_FLAG_ANY);
由于视频是以帧为单位来进行播放的,并不是指定哪里,就可以精确跳到哪里播放
这个接口中的第四个参数,就表示seek时,实际跳转位置的计算方式
- 每个flag都有自己的优点与缺点,可根据需要选择
- AVSEEK_FLAG_BACKWARD:跳转到上个I帧
- AVSEEK_FLAG_FRAME:跳转到下个I帧
- AVSEEK_FLAG_ANY:跳转到任意帧,可能会短暂花屏,但是进度和手滑完全一致
- AVSEEK_FLAG_BYTE:和AVSEEK_FLAG_FRAME一致,但是查找算法不同
- FRAME和BACKWARD是按帧之间的间隔推算目标位置,适合快进快退,BYTE则适合大幅度滑动