2013-09-10 100 views
0

我有一个原始视频文件“inputVideoFile.mp4”ffmpeg的视频文件的持续时间是否准确?

我使用的ffmpeg解码输入的视频文件,过程中的每个帧,且接着编码这些帧为“outputVideoFile.mp4”。

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

然而,当我使用ffprob,看看有多少帧在两个文件中,它显示了其持续时间值是相同的:

$ ffprobe inputVideoFile.mp4

时间:00:00:04.08 ,启动:0.000000,birate:7835 kb/s的

$ ffprobe outputVideoFile.mp4

时间:00:00:04.08,启动:0.000000,比特率:21055 KB/s的

为什么会这样? 顺便提一下,在00:00:04.08之间是什么单位?在“.08”中,单位是1/60秒,还是1/100秒?

谢谢!

回答

0

我找到了答案:

av_guess_frame_rate(a_AVFormatContext,a_AVStream,NULL)

它的工作原理!

0

不,这是不准确的。这是基于平均比特率和文件大小的猜测。显然,文件大小总是准确的,但在某些情况下平均比特率没有正确记录。但是,我不知道这是文件格式的根本问题还是由创建视频文件的系统/程序引起的问题。例如,使用Mythtv录音和NuppelVideo格式的录音,FFMPEG的估计值将会下降2-3倍,也就是说,估计1小时的录音时间为2或3小时。