Что может быть причиной:
- Похоже, ограничение эластичного транскодера игнорирование параметра вращения, закодированного в заголовке mp4-файл на мобильном телефоне. (Я предположил это после анализа нескольких видео с помощью утилиты FFprobe, которая входит в комплект FFmpeg)
- Я также заметил, что если я использую консоль AWS (веб-интерфейс) для преобразования mp4 в mp4 для стандартизации заголовка файла mp4 все прошло нормально, но когда я делаю то же самое с кодом, AWS применил ротацию = 0 вместо моего предоставленного значения, т. е. ротации = авто. Если я смогу правильно передать в коде Rotate=auto, я верю, что вся проблема будет решена. Если кто-то может подсказать мне, как правильно передать параметр вращения, это будет большой помощью. Вот фрагмент кода, который я использую:
$inputs = [
[
'Key' => $this->media->getOriginal('media_url'),
]
];
$this->prepend && array_unshift($inputs, ['Key' => $this->prepend]);
$this->append && array_push($inputs, ['Key' => $this->append]);
$outputs = [
[
"Key" => $this->getOutputFilename(),
'Rotate' => 'auto',
"PresetId" => '1653583660869-5jx367',//'1653583311105-8tip2c'//'1351620000001-000020',//$this->presetId
],
];
$transcoderJob = $transcoderService->createJob([
'PipelineId' => config('aws.elastic_transcoder.pipeline_id'),
'Inputs' => $inputs,
'OutputKeyPrefix' => $this->getFileDirectory() ,
'Outputs' => $outputs,
]);
Подробнее здесь: https://stackoverflow.com/questions/724 ... l-video-re