Skończyło się na tym, że użyłem ffmpeg z wiersza poleceń, aby wykonać niezbędne przycinanie.
Po przeprowadzeniu badań na tej stronie i wypróbowaniu kilku prostszych poleceń wymyśliłem następujące polecenie:
ffmpeg -ss 00:01:00 -i input.mp4 -ss 00:02:00 -c copy -to 00:05:10 \
output.mp4
Jak rozumiem, za pomocą tego polecenia ffmpeg w zasadzie kopiuje część klipu z input.mp4 na output.mp4 (bez ponownego kodowania). ffmpeg szybko szuka znaku 1 minuty (pierwszy -ss 00:01:00
), a następnie zaczyna szukać klatek kluczowych i wysyła klip z 3 minut do klipu (podany w drugiej -ss
opcji) do 6 minut i 10 sekund do klipu (określony przez -to 00:05:10
) . W ten sposób powstaje klip o długości 3 minut i 10 sekund (5:10 - 2:00).
UWAGA: czasy podane przez drugą -ss
opcję i -to
opcję odnoszą się do czasu podanego przez pierwszą -ss
opcję.
Aby dowiedzieć się więcej o tych i innych opcjach, zobacz doskonałe odpowiedzi na pytanie Korzystanie z ffmpeg do cięcia wideo .
Ta metoda była zaskakująco szybka (10-15 sekund), ale przez pierwsze 2-3 sekundy klipu dźwięk byłby w porządku, ale bez odpowiedniego wideo. Po pierwszych 2-3 sekundach jakość dźwięku i obrazu wydawała się nie do odróżnienia od oryginału.
Upuszczenie -c copy
części rozwiązało również ten problem. Oznacza to, że wideo zostanie ponownie zakodowane - co zajmuje więcej czasu (mój 13-calowy MacBook Pro z końca 2011 r. Zajął 80-90% czasu wykonywania klipu) - ale jakość audio i wideo była znakomita, a rozmiar pliku był mniejszy niż oryginalny (obliczony na podstawie MB / min odtwarzania)!
Ostatnim poleceniem, na które się zdecydowałem, było:
ffmpeg -ss 00:01:00 -i input.mp4 -ss 00:02:00 -to 00:05:10 -strict -2 \
output.mp4
-strict -2
Część została dodana do polecenia w oparciu o sugestii FFmpega jako wsparcie dla kodowania X.264 wciąż eksperymentalna
Aby skorzystać z ffmpeg , pobrałem wstępnie skompilowany plik ffmpeg ze strony ffmpegmac.net , umieściłem go w katalogu, o którym wiedziałem, że jest na moim komputerze PATH
i jest gotowy do pracy!
-c copy
, należy użyć opcji wspomniano tutaj: trac.ffmpeg.org/wiki/Encode/H.264 , w zasadzie-crf 23
, i wybrać niższą wartość dla lepszej jakości (wartości rozsądnych między 18–28).