![ffmpeg - Возможно ли сохранить реальные таймкоды с помощью -copyts?](https://rvso.com/image/1496865/ffmpeg%20-%20%D0%92%D0%BE%D0%B7%D0%BC%D0%BE%D0%B6%D0%BD%D0%BE%20%D0%BB%D0%B8%20%D1%81%D0%BE%D1%85%D1%80%D0%B0%D0%BD%D0%B8%D1%82%D1%8C%20%D1%80%D0%B5%D0%B0%D0%BB%D1%8C%D0%BD%D1%8B%D0%B5%20%D1%82%D0%B0%D0%B9%D0%BC%D0%BA%D0%BE%D0%B4%D1%8B%20%D1%81%20%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E%20-copyts%3F.png)
Это простая задача. Я хочу сделать преобразованный клип видео, используя -copyts
его реальные таймкоды. Например, преобразованный клип этой команды:
ffmpeg -hide_banner -ss 57:41.76 -i input.mp4 -copyts -fs 4085Ki -vf scale=1280:-1 -c:v libvpx -crf 10 -b:v 1000K -maxrate:v 1600K -bufsize 800Ki -threads 4 -quality good -cpu-used 5 -c:a libvorbis -b:a 64Ki -maxrate:a 128Ki input.webm
Продолжительность 31 секунда, но:
frame= 938 fps=7.7 q=0.0 Lsize= 4089kB time=00:58:13.15 bitrate= 9.6kbits/s speed=28.8x
Написано, что продолжительность 58:13.15 минут.
Я могу добиться нормальной длительности, удалив -copyts
из кода команды, но единственная причина, по которой я это использую, -copyts
заключается в том, чтобы избежать необходимости каждый раз рассчитывать следующие сегменты, поскольку я могу просто установить -ss
58:13.15 и продолжить.
На вопрос, можно ли как-то изменить длительность конвертированных файлов?безКак и изменение метаданных?
У меня Windows 7.
решение1
Мне просто пришлось -c copy
. Я забыл об этом:
Поместите все новые клипы в новую папку (мы рекомендуем использовать webm), а внутри этой папки создайте еще одну папку с именем new
и сделайте следующее:
ffmpeg -i input.webm -c copy new\output.webm
Для автоматизированного процесса сделайте следующее:
for %i in ("*.webm") do ffmpeg -i %i -c copy new\%~ni.webm
Это позволит повторить -c copy
команду для всех преобразованных вами клипов.