У меня есть PHP-скрипт, который вызывает exec () для конвертации видеофайлов с помощью ffmpeg.Сценарий отлично работает с файлами меньшего размера, но большие файлы, обычно размером около 20 МБ, выдают внутреннюю ошибку сервера 500 после того, как преобразование длится около 45 секунд.
Для max_execution_time установлено значение 600 секунд (10 минут) иМаксимальный размер сообщения и загрузки составляет 1000 МБ.Сервер основан на Unix и не работает в безопасном режиме.
Хотя проблема возникает только при больших размерах, я даже не уверен, что это проблема размера файла.Сценарий будет работать с MOV-файлом размером 12,6 МБ, но не будет работать с MP4-файлом размером 11 МБ.
Ниже приведена строка exec () из моего сценария:
exec('ffmpeg -y -i '.escapeshellarg($uploadFile).' -vcodec libx264 -ab 128k -ac 2 -b 640k -g 300 -keyint_min 25 -sc_threshold 40 -i_qfactor 0.71 -maxrate 10M -bufsize 10M -qcomp 0.6 -qmin 10 -qmax 51 -qdiff 4 -level 30 '.$convertFile);
Спасибо!