You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

FFmpeg无重新编码分片时丢失帧的问题求助

FFmpeg无重新编码分片时丢失帧的问题求助

各位大佬好,我最近遇到了一个FFmpeg分片后丢失帧的棘手问题,折腾好一阵都没找到原因,来这儿求助大家!

情况是这样的:

  • 我有一个名为data的视频文件,先用ffprobe -i data -show_streams -count_frames -select_streams v | grep nb_read_frames命令统计,得到总帧数是39201帧。
  • 为了把视频分成每段120秒的分片,我用了无重新编码的命令:ffmpeg -i data -c copy -f segment -segment_time 120 -reset_timestamps 1 data_part_%d.mkv,最终生成了11个分片文件。
  • 之后我用循环命令统计所有分片的帧数总和:
    for i in {0..10}; do ffprobe -i data_part_$i.mkv -show_streams -count_frames -select_streams v | grep nb_read_frames | cut -d '=' -f 2; done | awk '{s+=$1} END {print s}'
    
    结果算出来总和只有36684帧,比原始视频的帧数少了2517帧,这差距实在有点大。

另外我还发现两个有点奇怪的现象,不确定和丢帧有没有关系,也一起说一下:

  • 其中有一个分片,ffprobe显示它的时长是2分钟,但我查看这个分片里帧的时间戳时,发现最后一帧的时间戳只到63秒
  • 可当我用VLC播放这个分片时,它又确实是2分钟长

有没有大佬能帮我分析下这是怎么回事?为什么无重新编码分片会丢这么多帧,这两个奇怪的现象和丢帧有关联吗?

备注:内容来源于stack exchange,提问作者Gman

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.15 12:08:12