0

iPhone でビデオ (.mov) を録画すると、縦に表示されますが、これは正しく表示されます。しかし、(ffmpeg を使用して) .mov を .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;
}
4

2 に答える 2

2

ffmpeg が無視する .mov メタデータ内の iPhone の保存方向情報により、回転した出力が発生します。メタデータを正しく解析することは問題です。

一貫した向きでムービーを記録している場合は-vf "transpose=1"、ffmpeg コマンドに追加して回転させることができます。 転置のドキュメント

于 2011-11-17T23:56:33.603 に答える
0

向きはビデオ ファイルのメタデータ フィールドです。実際のファイルは別の向きで記録されません。ビデオを回転するには、ffmpeg で変換を適用する必要があります。

于 2010-06-25T06:25:55.273 に答える