Я использую Ffmpeg Concat для объединения нескольких файлов TS, я использую следующую команду
ffmpeg -y -f concat -i filelist.txt -c copy output.mkv
путь ко всем файлам ts помещается в filelist.txt, в большинстве случаев он работает нормально, но при обработке некоторых файлов ts ffmpeg выдает следующие ошибки
[matroska @ 044bf9c0] Timestamps are unset in a packet for stream 0. This is deprecated and will stop working in the future. Fix your code to set the timestamps properly
[matroska @ 044bf9c0] Can't write packet with unknown timestamp
av_interleaved_write_frame(): Invalid argument
Я полагаю, что ошибка вызвана отсутствием временных меток в этих файлах. но так как сообщение об ошибке говорит "устарел и перестанет работать в будущем ", поэтому мой вопрос В настоящее время если есть способ или некоторые флаги команды ffmpeg, чтобы подавить эту ошибку и просто объединить эти файлы TS без перекодирования , Спасибо!
1
Выведите на MP4, а затем перенесите это на MKV.
Gyan
Спасибо! Это нуждается в перекодировании? Я хочу сделать эту работу без перекодирования
J1B
Нет перекодирования.
Gyan
Еще раз спасибо, я попробовал, файл объединен, но «[mp4 @ 03e4eba0] pts не имеет значения» это сообщение об ошибке повторяется много раз. Это вызвано ошибкой метки времени? Влияет ли это на выходной файл?
J1B
Большую часть времени нет.
Gyan