【发布时间】:2012-03-20 18:29:43
【问题描述】:
我正在尝试使用 ffmpeg 更改视频尺寸。 例如,用户正在上传 1280*960 的视频。
我需要得到 640*480 的视频作为回报。
我试过这段代码,它可以工作
exec($ffmpegPath." -i ".$srcFile." -ar 22050 -ab 32 -f flv -s 640x480".$destFile,$tmp);
但是这种方法不能保持视频的宽度/高度平衡(即视频 5000*480 变成 640*480 并且看起来从左右压缩)。
在这种尺寸 (5000*480) 的情况下,我需要在退出时获取视频,例如 640*61 我的意思是固定高度不适合我。
我浏览了互联网并找到了这个主题 https://superuser.com/questions/201051/resize-videos-with-different-widths-to-a-fixed-height-preserving-aspect-ratio-wi http://delogics.blogspot.com/2011/11/ffmpeg-maintain-aspect-ratio-with-fixed.html
但是它们都不适合我(ffmpeg 甚至无法使用此代码,也许我在我的 ffmpeg 字符串中添加他们的代码部分时犯了错误)
请帮助我改进我的代码
谢谢
【问题讨论】:
-
规模过滤器,正如您已经调查过并且 Dmitry Shkuropatsky 建议的那样,可能是您想要的,但是您没有包含您尝试使用规模的完整 ffmpeg 输出,所以我只能猜测你的 FFmpeg 可能太旧了。
标签: php ffmpeg video-processing