Встала передо мной задача вытащить из множества видеофайлов фрагменты, у которых известна точка начала и конца, причём с сохранением первоначальной звуковой дорожки.
Решил сначала попробовать GUI-видеоредакторы, которых на GNU/Linux вполне себе достаточно. Но быстро в них разочаровался.
Pitivi, openshot и avidemux грузили мой маломощный нетбук намертво, либо просто вылетали. Также у них очень сложный и запутанный интерфейс, для ориентирования в котором необходимо прочитать кучу мануалов. Правда, скажу, что у avidemux всё-таки получилось выполнить задачу и сохранить результат (после полчаса борьбы с зависаниями).
Пришла идея использовать старый добрый ffmpeg, не сильно нагружающий систему и просто делающий своё дело. Что характерно, всё заработало очень быстро и с первого раза!
Всего лишь одна команда
ffmpeg -i ./videofile.mkv -ss 00:02:00 -to 00:03:00 -map 0:0 -map 0:1 -codec copy ./result.mkvвырежет фрагмент со второй до третьей минуты с первой звуковой дорожкой (-map 0:0 - это видеоряд).
В статьях на Хабре и некоторых других ресурсах ошибочно даётся параметр -t вместо -to в качестве второй точки, но после просмотра официального FAQ стало понятно, почему предыдущий вариант не работал.
Вывод: GUI-видеоредакторы не так хороши, как кажется с первого взгляда. Часто имеет смысл использовать более простые и более действенные инструменты для таких задач.