Использование Cut с быстрым поиском -ss -to и HH: MM: SS: MS

#ffmpeg

#ffmpeg

Вопрос:

Я пытаюсь вырезать видео, используя -ss и -to используя HH:MM:SS:MS время.

Я использую -to вместо -t , потому что я хочу, чтобы сокращение было «между» временным диапазоном, а не «до» времени.
Я также должен использовать -to , потому что это необходимо для текстового поля ввода времени другой программы, которое я использую. Я не смогу использовать -t для этого случая.

Пример:

https://superuser.com/a/670590

-ss 00:01:00:00 -to 00:02:00:00 cut начинается на минуте 1, заканчивается на минуте 2.
-ss 00:01:00:00 -t 00:02:00:00 cut начинается на минуте 1, заканчивается на минуте 3.

https://trac.ffmpeg.org/wiki/Seeking#Cuttingsmallsections


Проблема

Я не могу использовать быстрый поиск, -ss до -i , -to после.

Я могу использовать только медленный поиск, -ss и -to после -i .


1. Быстрый

Не работает

Это сокращает время на минуту раньше, чем указано во времени.

Вырезает от 00:01:00 до 00:03:00 , используя faster поиск.

 ffmpeg -ss 00:01:00 -i video.mp4 -to 00:02:00 -c copy cut.mp4
  

2. Медленный

Работает

Я пытаюсь сделать это, но с быстрым поиском.

Вырезает от 00:01:00 до 00:02:00 , используя slower поиск.

 ffmpeg -i video.mp4 -ss 00:01:00 -to 00:02:00 -c copy cut.mp4
  

3. Быстрый

Работает (с проблемами)

-copyts разрушает временную шкалу видео в проигрывателе.

Вырезает от 00:01:00 до 00:02:00 , используя faster поиск.

 ffmpeg -ss 00:01:00 -i video.mp4 -to 00:02:00 -c copy -copyts cut.mp4
  

Ответ №1:

Переделать результат метода 3

 ffmpeg -ss 00:01:00 -i video.mp4 -to 00:02:00 -c copy -copyts cut.mp4
  

amp;amp;

 ffmpeg -i cut.mp4 -c copy recut.mp4
  

или с последней версией ffmpeg,

 ffmpeg -ss 00:01:00 -to 00:02:00 -i video.mp4 -c copy cut.mp4
  

Комментарии:

1. Похоже, это работает, спасибо. Я думал, что пробовал это раньше, и это не сработало, но это потому, что я не использовал кодек copy . Вы также знаете, как быстрый поиск с -to можно использовать, когда encoding вместо copy ? Когда я ставлю время перед -i , оно игнорирует время окончания и продолжается.

2. Это не должно иметь никакого значения. Поделитесь полной командой журналом этой попытки.

3. Не могу с этим справиться. Когда я использую некоторые фильтры, они опускаются.