FFmpeg HLS сохраняет исходные метки времени

Я перекодирую видео в HLS, и все работает нормально с помощью следующей команды:

ffmpeg -i source -vcodec nvenc -acodec copy -f ssegment -segment_list playlist.m3u8 -segment_list_flags +live -segment_time 60 -segment_list_size 10 out%03d.ts

Но когда я хочу сохранить исходные метки времени и добавить ключ -copyts в свою команду, я получаю новый файл .ts каждые 0,7 секунды (но я установил его на 60 секунд -segment_time 60).
Как я могу сохранить исходные временные метки с транскодированием в HLS?

ОБНОВЛЕНИЕ: я попробовал эту команду, и временные метки сохраняются нормально:

ffmpeg -i source.ts -vcodec nvenc -acodec copy -f hls -hls_time 10 -hls_list_size 5 -copyts playlist.m3u8

Но когда я пытаюсь запустить эту команду для входного потока RTP, я получаю следующую ошибку: "Ошибка при открытии кодировщика для выходного потока #0:2 - возможно, неправильные параметры, такие как битовая скорость, скорость, ширина или высота".


person Ivan Kolesnikov    schedule 18.04.2016    source источник


Ответы (1)


Пожалуйста, попробуйте следующее:

ffmpeg -y -i source -c copy -copyts -f mpegts - 1> 'ffmpeg -y -vcodec nvenc -acodec copy -f hls -hls_time 10 -hls_list_size 5 -copyts playlist.m3u8'

person R.Petrov    schedule 11.07.2016
comment
Спасибо! Это не лучший способ, но он помог! - person Ivan Kolesnikov; 11.07.2016