При конвертации .mov в .flv видео воспроизводится горизонтально - PullRequest
0 голосов
/ 25 июня 2010

Когда я записываю видео (.mov) через мой iPhone, оно отображается вертикально, что правильно. Но после преобразования .mov в .flv (используя ffmpeg) он отображается горизонтально.

Мой код:

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;
}

Ответы [ 2 ]

2 голосов
/ 18 ноября 2011

Информация об ориентации iPhone хранится в метаданных .mov, которые ffmpeg игнорирует, что приводит к повороту вывода. Правильный анализ метаданных - это проблема.

Если вы записываете фильмы в последовательной ориентации, вы можете повернуть их, добавив -vf "transpose=1" в команду ffmpeg. Документы для транспонирования .

0 голосов
/ 25 июня 2010

Ориентация - это поле метаданных в видеофайле - фактический файл не записан в альтернативной ориентации. Вам потребуется применить преобразование в ffmpeg для поворота видео.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...