Php 如何使用FFmpeg旋转视频?
我现有的视频是Php 如何使用FFmpeg旋转视频?,php,ffmpeg,Php,Ffmpeg,我现有的视频是.mov并垂直播放,但当我使用FFmpeg将其转换为.flv时,它水平播放。如何更正转换后的视频以垂直播放 function convert_flv($vidtime, $infile, $outfile, $w = 0, $h = 0, $extra_infile = '', $extra_outfile = '') { $parms = ''; if($w == 0 && $h == 0) { //$parms .= '-sameq '; }
.mov
并垂直播放,但当我使用FFmpeg将其转换为.flv
时,它水平播放。如何更正转换后的视频以垂直播放
function convert_flv($vidtime, $infile, $outfile, $w = 0, $h = 0, $extra_infile = '', $extra_outfile = '') {
$parms = '';
if($w == 0 && $h == 0) {
//$parms .= '-sameq ';
} else {
$parms = '-s {$w}x{$h} ';
}
if($vidtime==60)
{
$cmd = ffmpeg($infile, $outfile, $parms.' '.$extra_infile, '-t 00:01:00 -ar 22050 -r 15 -f flv '.$extra_outfile);
}
else
{
$cmd = ffmpeg($infile, $outfile, $parms.' '.$extra_infile, '-t 00:04:00 -ar 22050 -r 15 -f flv '.$extra_outfile);
}
print_r($cmd);
return $cmd;
}
使用从SVN提取的当前版本,您可以使用-vf“transpose=1”旋转视频。
下面是一个使用命令行的示例,我相信它很容易转换为php:
ffmpeg -vf "transpose=1" -i input.mp4 output.mp4
(以下是我如何构建ffmpeg,以防这有所帮助)
看见具体来说,答案是.ffmpeg的哪个版本需要运行此命令ffmpeg-vfilters“rotate=90”-i input.mp4 output.mp4运行配置时,您可能需要构建自己的并使用--enable vfilters开关。您使用的是什么操作系统?你好,Jason,我是ffmpeg新手,第一次使用,我不知道如何构建自己的操作系统,以及何时使用-enable vfilters开关,我已经下载并在我的服务器上安装了我的技术支持。目前我在本地pc上使用Mac OS。我从未在Mac OS上构建过它,但这里有一个指南:基本上你需要从他们的网站(www.ffmpeg.org)下载源代码,然后运行
配置,制作,并在目录中安装makeinstall
。您可以将参数传递给configure命令,以指定生成ffmpeg的哪些部分--启用vFilter是这些选项之一。似乎大多数可用的预构建二进制文件都不是在启用vFilter的情况下生成的。它实现了我想要的功能,即将视频向右旋转90度。是否应该将-vf“transpose=1”
放在-I
之后以显示任何效果?
svn checkout svn://svn.ffmpeg.org/ffmpeg/trunk ffmpeg
cd ffmpeg
./configure --enable-shared --disable-mmx --arch=x86_64
make
sudo make install