【发布时间】:2011-03-11 16:47:56
【问题描述】:
我们正在尝试建立一个基于 php 的视频分享网站,允许用户上传自己的内容。
我们需要将所有这些视频转换为中等质量的 mp4 视频文件,以便最终通过 FlowPlayer 进行流式传输。
我们的代码是这样的(flv 的例子):
system("ffmpeg -i $vidPath -pass 1 -ab 64k -ar 44100 -ac 1 -vcodec flv -b 1500k -cmp 3 -subcmp 3 -mbd 2 $flvPath");
问题在于,这会将任何类型的 1 分钟视频转换为 10 MB 文件。如果它是一个高质量的 1 分钟视频,它会被转换为一个 10 MB 的文件——这很棒。但是,如果它是一个低质量的视频,比如说只有 2 MB,它仍然会被转换为一个 10 MB 的文件!!
我应该采用什么策略/方法,以便上传的视频在大小上是“上限”,但相同长度的质量较低的视频不会“膨胀”到相同的大小!
【问题讨论】:
-
嗨@Steve,感谢您的接受。我很好奇,您最终使用了哪些命令行选项?
-
我问了一个类似的问题:stackoverflow.com/questions/5502654/…,也许一些答案可以提供帮助。
标签: php video ffmpeg video-encoding