Я пытаюсь обрезать видео с заданного начального момента времени и продолжительности. Однако после исследования кажется, что точность поиска ffmpeg в большинстве случаев недостаточна, если только видеопоток не перекодирован.

  1. Существует ли эффективный способ точного поиска без перекодирования в большинстве файлов?
  2. Это кажется странным, поскольку проигрыватель Windows Media в большинстве случаев успешно справляется с этой задачей.

Что они реализуют по-другому?

Редактировать:

Например, для примера sample.mp4 длиной 5 секунд:

  1. Рабочая (с транскодированием)

    ffmpeg -ss 00:00:03 -t 1 -i sample.mp4 -c:v libx264 -movflags +faststart -c:a aac -strict -2 -b:a 192k out.mp4
    
  2. Не работает (без транскодирования) - создаст видео с начала файла.

    ffmpeg -ss 00:00:03 -t 1 -i sample.mp4 -c:v copy -c:a copy out.mp4
    

Используемая версия ffmpeg: 2.8.4

0