После того, как видео обрезано, проигрыватель (mplayer) больше не может переходить на определенную временную позицию. При щелчке по временной шкале воспроизведение обычно заканчивается. Как это можно исправить?
1 ответ
Обрезанное видео, вероятно, имеет неверный индекс AVI. Тег idx1
в формате файла AVI указывает, где находятся фрагменты данных, поэтому, если индекс отсутствует, проигрыватель не будет знать, где искать фрагменты данных в заданной временной метке.
Это несколько ожидаемо, поскольку необработанный поток битов где-то обрезается с помощью опции FFmpeg -c:v copy
в связанном вопросе.
Я не знаю ни одной команды FFmpeg для исправления индекса, но у mencoder
должна быть.
-forceidx
Восстановление индекса силы. Полезно для файлов с поврежденным индексом (A/V десинхронизация и т.д.). Это позволит искать в файлах, где поиск был невозможен.
Если вы загрузите эту неофициальную сборку mencoder из блога Stef Pause, вы можете попробовать исправить AVI.
cd ~/Downloads
unzip mencoder.zip
chmod +x mencoder
mv mencoder /usr/local/bin/
Затем введите:
mencoder -forceidx input.avi -o output.avi -oac copy -ovc copy
Это восстановит индекс для вашего файла AVI. Удачи - если это не работает, возможно, вам лучше перекодировать оригинальное видео после обрезки.