#python #macos #ffmpeg
Вопрос:
Я использовал команду ffmpeg, вызванную из скрипта python, для перекодирования папок с файлами:
ffmpeg -y -i in_file.mov -loglevel warning -codec:v libx264 -preset veryfast -b:v 10000k -minrate 8000k -maxrate 10000k -bufsize 4800k -threads 0 -movflags faststart -s 1920x1080 -pix_fmt yuv420p -codec:a aac out_file.mov
Это работало нормально, но на некоторых новых компьютерах Mac я начал получать следующую ошибку:
[mov @ 0x7fa92e010c00] Application provided duration: -9223372036854775808 / timestamp: -9223372036854775808 is out of range for mov/mp4 format
[mov @ 0x7fa92e010c00] pts has no value
Похоже, это никак не влияет на файл, но я хотел бы знать, что его вызывает и может ли это вызвать ошибки позже.
Системные спецификации без ошибок:
- iMac Pro, macOS 10.15.7, Python 3.7.9, FFmpeg 4.3.2
Системные характеристики с ошибками
- MacBook Pro 2019 15″, macOS 10.15.7, Python 3.7.0, FFmpeg 4.4
Я предполагаю, что моя проблема вызвана более новой версией FFmpeg, но я все еще не уверен в том, что ее вызывает.
Комментарии:
1.trac.ffmpeg.org/ticket/9328 amp; trac.ffmpeg.org/ticket/9402
2. @RichardBarber итак, это известная ошибка в версии 4.4?
3. Это может быть связано с тем, что ваша ошибка указывает на наличие дорожки с временным кодом. Эти ошибки были зарегистрированы в версии 4.4, но на самом деле их необходимо проверить на соответствие сборке из главной главы git, которая уже значительно опередила выпуск.
4. Я скомпилировал версию из git, и она выдает точно такие же предупреждения.
5. В этом случае я настоятельно призываю вас внести изменения в оба существующих билета.
Ответ №1:
Я подтверждаю, что такое поведение началось с версии 4.4 (которую я вчера создал самостоятельно локально из источников). Предыдущие версии были 4.2.* и 4.3.*, и они не проводили эту диагностику. Поэтому я предполагаю, что этот вопрос следует адресовать команде разработчиков ffmpeg, в последнее время что-то изменилось.
Комментарии:
1. На самом деле я запустил тикет на трекере ошибок ffmpeg, и мне сказали «да, мы можем воспроизвести это» без какой-либо информации о том, почему это происходило, или если это была ошибка или функция. Они, казалось, не очень интересовались. Смотрите билет: trac.ffmpeg.org/ticket/9328