【发布时间】:2012-06-12 03:18:12
【问题描述】:
我正在使用表单上传视频,并希望从上传的临时文件中解析视频信息。临时文件在文件开头包含一些表单信息,其余部分是视频字节。 ffmpeg可以从视频字节开始的位置解析文件吗?如何?非常感谢!
【问题讨论】:
标签: video ffmpeg video-streaming video-processing mediainfo
我正在使用表单上传视频,并希望从上传的临时文件中解析视频信息。临时文件在文件开头包含一些表单信息,其余部分是视频字节。 ffmpeg可以从视频字节开始的位置解析文件吗?如何?非常感谢!
【问题讨论】:
标签: video ffmpeg video-streaming video-processing mediainfo
试试-skip_initial_bytes <bytecount> 参数。
【讨论】:
如果您只是想编写脚本,可能最简单的方法是使用dd(1) 工具仅提取您感兴趣的数据。它看起来像这样:
dd if=/path/to/temp/file ibs=<size to skip> skip=1 | ffmpeg --whatever
它不会是完美的,因为它将使用该块大小进行所有输入操作;与你一开始浪费的空间相比,更大的东西和 2 的倍数将是理想的,但它应该比创建一个内容几乎相同的新文件更好。
【讨论】:
libmagic 库能够从第一千字节左右的内容中确定文件格式——所以一旦你去掉你的标题,你可能会发现文件类型额外的千字节数据,最高。 (大多数容器会用几个字节告诉你它们的类型,但发现容器内流的格式可能需要更多时间。)