|
|||||||
Как через ffmpeg вырезать ненужный кусок видео без перекодирования
Время создания: 21.01.2017 22:39
Текстовые метки: ffmpeg, вырезать, удалить, видео
Раздел: Компьютер - Linux - Видео в Linux - FFmpeg
Запись: xintrea/mytetra_syncro/master/base/1485027597d98hikrmw6/text.html на raw.github.com
|
|||||||
|
|||||||
В ffmpeg есть две опции:
Например, чтобы получить кусок, начиная с 35-й минуты длительностью 5 сек, можно воспользоваться командой: ffmpeg -i InputVideo.avi -vcodec copy -acodec copy -ss 0:35:00 -t 0:00:5 OutputVideo.avi Возможные проблемы Однако, в ffmpeg существует баг https://github.com/Just-Some-Bots/MusicBot/issues/405, из-за которого невозможно вырезать кусок в AVI-потоке. Появляется следующая ошибка: [avi @ 0x9259000] Using AVStream.codec to pass codec parameters to muxers is deprecated, use AVStream.codecpar instead. Говорят, что этот баг исправили в сборке 20160711. Если у вас более старая сборка, то ничего не получится. Как узнать номер сборки? Ну, можно воспользоваться опциями -version или -buildconf. Только в выводе может и не быть информации о номере сборки, все зависит от дистрибутива. В Debian версия с ошибкой такая: 3.1.3-1~bpo8+1. А в версии 7:3.2.2-1~bpo8+1 эта ошибка не появляется, но и выходной видеопоток не формируется, в поток попадает только аудио. Результат Итак, с помощью вышеприведенной команды можно вырезать кусок видео без перекодировки. Таким образом, можно посмотреть, какой кусок будет вырезаться. А далее нужно сделать обратное действие - оставить все, кроме указанного куска. Далее тут надо расписать, как это делать, но я не могу, потому что у меня сборка ffmpeg с ошибкой. |
|||||||
Так же в этом разделе:
|
|||||||
|
|||||||
|