ffprobe 需要多少字节?
How many bytes does ffprobe need?
我想用ffprobe
查看媒体文件的信息。但是,这些文件不在我的本地磁盘上,我必须从远程存储中读取。我可以读取前 n
个字节,将它们写入临时文件并使用 ffprobe
读取信息。我想知道至少这样 n
.
我测试了几个文件,512KB 对我测试的所有文件都有效。但是,我不确定这是否适用于所有媒体文件。
ffprobe(和 ffmpeg)旨在在打开输入时解析两件事:
- 输入容器的header
- 来自每个流的有效载荷数据,足以确定重要的流参数,例如编解码器属性和帧速率。
header 大小通常与文件中的数据包数量成正比,即一个 3 小时的 MP4 文件比一个 3 分钟的 MP4 文件具有更大的 header。
(如果 header 在文件末尾,那么访问前 512 kB 将无济于事)
ffmpeg 将从每个流中解码数据包,直到其流属性被填充。消耗的字节数将取决于流比特率以及存在的流数。
所以,对“我不确定这是否适用于所有媒体文件”的严格回应是否不会。
我想用ffprobe
查看媒体文件的信息。但是,这些文件不在我的本地磁盘上,我必须从远程存储中读取。我可以读取前 n
个字节,将它们写入临时文件并使用 ffprobe
读取信息。我想知道至少这样 n
.
我测试了几个文件,512KB 对我测试的所有文件都有效。但是,我不确定这是否适用于所有媒体文件。
ffprobe(和 ffmpeg)旨在在打开输入时解析两件事:
- 输入容器的header
- 来自每个流的有效载荷数据,足以确定重要的流参数,例如编解码器属性和帧速率。
header 大小通常与文件中的数据包数量成正比,即一个 3 小时的 MP4 文件比一个 3 分钟的 MP4 文件具有更大的 header。 (如果 header 在文件末尾,那么访问前 512 kB 将无济于事)
ffmpeg 将从每个流中解码数据包,直到其流属性被填充。消耗的字节数将取决于流比特率以及存在的流数。
所以,对“我不确定这是否适用于所有媒体文件”的严格回应是否不会。