У мене довге відео з різними сценами в ньому. Я хочу витягнути і об'єднати 2 сцени з відео (які не починаються на I-кадрі) за допомогою ffmpeg 2.1.4.
Для аргументації скажіть, що я хочу 5 секунд з 01:00 та 02:00.
Я можу це зробити:
ffmpeg -ss 01:00 -i in.mkv -ss 02:00 -i in.mkv -filter_complex "
[0:v]select='lt(t,5)'[v0];
[0:a]aselect='lt(t,5)'[a0];
[v0][a0][1:v][1:a]concat=n=2:v=1:a=1
" -c:a libvorbis -t 10 out.mkv
Це дає мені фільм, який я хочу, але вибір насправді змушує ffmpeg розшифрувати всю решту фільму. Отже, як мені сказати, щоб урізати перший фільм, а не розшифровувати його?
Я вважаю за краще зробити це зі складним фільтром ffmpeg, якщо це можливо. Я знаю, що -t
спершу я просто можу використовувати для перекодування окремих фільмів, але в моєму випадку додатковий крок кодування дуже повільний, а також втрачає неабияку якість цього відео.
Я не можу знайти фільтр, який обрізає довжину пари. Чи існують вузли фільтру, які відповідають -t
або -ss
параметрам?