Предупреждения при сегментировании видео с использованием FFMPEG - PullRequest
0 голосов
/ 07 сентября 2018

У меня есть поток с камеры, который выдает видео со скоростью 10 кадров в секунду , с разрешением 800x600 с кодированием h264 . Мне нравится разбивать видео на 10-минутные клипы и сохранять его с системным временем в качестве имени.
Для этого я использую следующий код.

ffmpeg -i $URL -c copy -map 0 -f segment -strftime 1 -segment_atclocktime 1 -reset_timestamps 1 -segment_time 600 -segment_format mp4 %Y%m%d_%H%M%S.mp4

Но когда я запускаю код, он выдает мне следующее предупреждение.

[сегмент @ 0x55968f393e80] В пакете для потока 0 не установлены временные метки. Это устарело и перестает работать в будущем. Исправьте код, чтобы правильно установить временные метки

[сегмент @ 0x55968f393e80] Немонотонный DTS в выходном потоке 0: 0; предыдущий: 0, текущий: 0; изменение на 1. Это может привести к неправильным временным меткам в выходном файле.

А видео с его сохранением не точно 10 минут.

Как я могу исправить эти предупреждения и сохранить видео с длительностью, равной ровно 10 минутам.

Спасибо !!

1 Ответ

0 голосов
/ 08 сентября 2018

Игнорировать предупреждения о метках времени. Потоки H264 не имеют временных меток, поэтому ffmpeg должен будет сгенерировать их.

Из-за размещения ключевого кадра невозможно получить точную длину сегмента без перекодирования.

...