我正在开发一个需要以以下形式存储视频的系统:
/path/to/video/<md5 of the file>
我的视频文件没有输出扩展名。我正在使用 ffmpeg
转换这些视频,但似乎它使用输出文件扩展名来确定输出格式,所以这就是我的问题。
由于文件名中没有输出扩展名,是否有一种方法可以在命令行中直接指定输出格式,而不需要创建临时文件或类似此类的不良解决方案吗?
我正在开发一个需要以以下形式存储视频的系统:
/path/to/video/<md5 of the file>
我的视频文件没有输出扩展名。我正在使用 ffmpeg
转换这些视频,但似乎它使用输出文件扩展名来确定输出格式,所以这就是我的问题。
由于文件名中没有输出扩展名,是否有一种方法可以在命令行中直接指定输出格式,而不需要创建临时文件或类似此类的不良解决方案吗?
使用-f
参数告诉ffmpeg要使用哪种输出格式,例如:
ffmpeg -i input.mpg ... -f mp4 output
创建一个名为output
的mp4格式文件。
ffmpeg -f mpg -i input.mpg ... -f mp4 output.mp4
- yetiheheoutput
而不是output.mp4
,以证明它符合OP的问题。请将该内容翻译为中文。 - Alexis Wilke和 @luukes 的解决方案相同,但请注意如果你正在制作 aac
输出,-f
参数应该是 adts
:
ffmpeg -i input.mpg ... -f adts output