繁体   English   中英

ffmpeg的视频文件的持续时间是否准确?

[英]Is the duration accurate for a video file by ffmpeg?

我有一个原始视频文件“ inputVideoFile.mp4”

我使用ffmpeg解码输入的视频文件,处理每个帧,然后将这些帧编码为“ outputVideoFile.mp4”。

我没有得到延迟的帧,这意味着输出视频文件的帧数应少于输入视频文件的帧数。

但是,当我使用ffprob查看两个文件中有多少帧时,它表明它们的持续时间值是相同的:

$ ffprobe inputVideoFile.mp4

持续时间:00:00:04.08,开始:0.000000,速率:7835 kb / s

$ ffprobe outputVideoFile.mp4

持续时间:00:00:04.08,开始:0.000000,比特率:21055 kb / s

为什么会这样呢? 顺便说一句,在00:00:04.08中,每秒的单位是多少? 在“ .08”中,单位是1/60秒还是1/100秒?

谢谢!

我找到答案:

av_guess_frame_rate(a_AVFormatContext,a_AVStream,NULL)

有用!

不,这是不准确的。 这是基于平均比特率和文件大小的猜测。 显然,文件大小始终是准确的,但是在某些情况下,平均比特率未正确记录。 但是,我不知道这是文件格式的根本问题还是由创建视频文件的系统/程序引起的问题。 例如,对于Mythtv录音和NuppelVideo格式的录音,FFMPEG估计将减少2-3倍,即,将1个小时的记录估计为2或3个小时长。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM