Przydatne polecenia FFmpeg do pracy z plikami audio i wideo
Opublikowany: 2022-02-26FFmpeg to niezwykle potężne i wszechstronne narzędzie wiersza poleceń do konwersji plików audio i wideo. Jest bezpłatny i dostępny dla komputerów z systemem Windows, Mac i Linux. Niezależnie od tego, czy chcesz dołączyć do dwóch plików wideo, wyodrębnić komponent audio z pliku wideo, przekonwertować wideo na animowany GIF, FFmpeg może zrobić to wszystko, a nawet więcej.
Wyodrębnij dźwięk z pliku wideo za pomocą tego prostego polecenia FFmpeg.
Przydatne polecenia FFmpeg
FFmpeg obsługuje wszystkie popularne formaty audio i wideo. Możesz też uruchomić polecenie ./ffmpeg -formats
, aby uzyskać listę wszystkich formatów obsługiwanych przez twoją instalację FFmpeg. Jeśli dopiero zaczynasz, oto kilka poleceń, które dadzą ci dobre pojęcie o możliwościach tego narzędzia.
1. Wytnij plik wideo na mniejszy klip
Możesz użyć parametru przesunięcia czasu (-ss), aby określić znacznik czasu rozpoczęcia w formacie GG:MM:SS.ms, podczas gdy parametr -t służy do określenia rzeczywistego czasu trwania klipu w sekundach.
ffmpeg -i input.mp4 -ss 00:00:50.0 -codec copy -t 20 output.mp4
2. Podziel wideo na wiele części
Jeśli chcesz podzielić duży film na wiele mniejszych klipów bez ponownego kodowania, może pomóc ffmpeg. To polecenie podzieli źródłowe wideo na 2 części - jedną kończącą się 50s od początku, a drugą rozpoczynającą się 50s i kończącą się na końcu wejściowego wideo.
ffmpeg -i video.mp4 -t 00:00:50 -c copy small-1.mp4 -ss 00:00:50 -codec copy small-2.mp4
3. Konwertuj wideo z jednego formatu na inny
Możesz użyć parametru -vcodec
, aby określić format kodowania, który ma być używany dla wyjściowego wideo. Kodowanie wideo zajmuje trochę czasu, ale możesz przyspieszyć ten proces, wymuszając ustawienie wstępne, które obniżyłoby jakość wyjściowego wideo.
ffmpeg -i youtube.flv -c:v libx264 filename.mp4
ffmpeg -i video.wmv -c:v libx264 -preset ultrafast video.mp4
4. Dołącz (konkatenuj) pliki wideo
Jeśli masz wiele plików audio lub wideo zakodowanych za pomocą tych samych kodeków, możesz połączyć je w jeden plik za pomocą FFmpeg. Utwórz plik wejściowy z listą wszystkich plików źródłowych, które chcesz połączyć, a następnie uruchom to polecenie.
ffmpeg -f concat -i file-list.txt -c copy output.mp4
5. Wycisz wideo (usuń komponent audio)
Użyj parametru -an
, aby wyłączyć część audio strumienia wideo.
ffmpeg -i video.mp4 -an mute-video.mp4
6. Wyodrębnij dźwięk z wideo
Przełącznik -vn
wyodrębnia część audio z wideo, a my używamy przełącznika -ab, aby zapisać dźwięk jako plik audio MP3 256 kb/s.
ffmpeg -i video.mp4 -vn -ab 256 audio.mp3
7. Konwertuj wideo na animowany GIF
FFmpeg to doskonałe narzędzie do konwersji filmów na animowane pliki GIF, a jakość też nie jest zła. Użyj filtra skali, aby określić szerokość pliku GIF, parametr -t określa czas trwania, podczas gdy -r określa szybkość klatek (fps).
ffmpeg -i video.mp4 -vf scale=500:-1 -t 10 -r 10 image.gif
8. Wyodrębnij klatki obrazu z wideo
To polecenie wyodrębni klatkę wideo przy znaku 15s i zapisze ją jako obraz JPEG o szerokości 800 pikseli. Możesz także użyć przełącznika -s (takiego jak -s 400x300), aby określić dokładne wymiary pliku obrazu, chociaż prawdopodobnie utworzy on rozciągnięty obraz, jeśli rozmiar obrazu nie będzie zgodny z proporcjami oryginalnego pliku wideo.
ffmpeg -ss 00:00:15 -i video.mp4 -vf scale=800:-1 -vframes 1 image.jpg
9. Konwertuj wideo na obrazy
Możesz użyć FFmpeg, aby automatycznie wyodrębnić klatki obrazu z wideo co 'n' sekund, a obrazy są zapisywane w sekwencji. To polecenie zapisuje klatki obrazu z wideo co 4 sekundy.
ffmpeg -i movie.mp4 -r 0.25 frames_%04d.png
10. Scal plik audio i wideo
Możesz także określić przełącznik -shortest
, aby zakończyć kodowanie po zakończeniu najkrótszego klipu.
ffmpeg -i video.mp4 -i audio.mp3 -c:v copy -c:a aac -strict experimental output.mp4
ffmpeg -i video.mp4 -i audio.mp3 -c:v copy -c:a aac -strict experimental -shortest output.mp4
11. Zmień rozmiar wideo
Użyj przełącznika rozmiaru (-s) z ffmpeg, aby zmienić rozmiar wideo, zachowując proporcje.
ffmpeg -i input.mp4 -s 480x320 -c:a copy output.mp4
12. Utwórz pokaz slajdów wideo z obrazów
To polecenie tworzy pokaz slajdów wideo przy użyciu serii obrazów o nazwach img001.png, img002.png itp. Każdy obraz będzie trwał 5 sekund (-r 1/5).
ffmpeg -r 1/5 -i img%03d.png -c:v libx264 -r 30 -pix_fmt yuv420p slideshow.mp4
13. Dodaj obraz plakatu do audio
Możesz dodać obraz okładki do pliku audio, a długość wyjściowego wideo będzie taka sama, jak wejściowego strumienia audio. Może się to przydać przy przesyłaniu plików MP3 do YouTube.
ffmpeg -loop 1 -i image.jpg -i audio.mp3 -c:v libx264 -c:a aac -strict experimental -b:a 192k -shortest output.mp4
14. Konwertuj pojedynczy obraz na wideo
Użyj parametru -t, aby określić czas trwania wideo.
ffmpeg -loop 1 -i image.png -c:v libx264 -t 30 -pix_fmt yuv420p video.mp4
15. Dodaj napisy do filmu
Spowoduje to pobranie napisów z pliku .srt. FFmpeg może dekodować wszystkie popularne formaty napisów.
ffmpeg -i movie.mp4 -i subtitles.srt -map 0 -map 1 -c copy -c:v libx264 -crf 23 -preset veryfast output.mkv
16. Przytnij plik audio
Spowoduje to utworzenie 30-sekundowego pliku audio, zaczynając od 90 sekund z oryginalnego pliku audio bez transkodowania.
ffmpeg -ss 00:01:30 -t 30 -acodec copy -i inputfile.mp3 outputfile.mp3
17. Zmień głośność dźwięku
Możesz użyć filtra głośności, aby zmienić głośność pliku multimedialnego za pomocą FFmpeg. To polecenie zmniejszy o połowę głośność pliku audio.
ffmpeg -i input.wav -af 'volume=0.5' output.wav
18. Obróć wideo
To polecenie obróci klip wideo o 90° zgodnie z ruchem wskazówek zegara. Możesz ustawić transpozycję na 2, aby obrócić wideo o 90° w kierunku przeciwnym do ruchu wskazówek zegara.
ffmpeg -i input.mp4 -filter:v 'transpose=1' rotated-video.mp4
Obróci to wideo o 180° w kierunku przeciwnym do ruchu wskazówek zegara.
ffmpeg -i input.mp4 -filter:v 'transpose=2,transpose=2' rotated-video.mp4
19. Przyspiesz lub zwolnij wideo
Możesz zmienić prędkość wideo za pomocą setpts
(ustaw znacznik czasu prezentacji) FFmpeg. To polecenie przyspieszy wideo 8x (1/8) lub użyje setpts=4*PTS
, aby wideo było 4x wolniejsze.
ffmpeg -i input.mp4 -filter:v "setpts=0.125*PTS" output.mp4
20. Przyspiesz lub zwolnij dźwięk
Aby zmienić prędkość dźwięku, użyj filtra audio atempo
. To polecenie podwoi prędkość dźwięku. Możesz użyć dowolnej wartości z zakresu od 0,5 do 2,0 dla dźwięku.
ffmpeg -i input.mkv -filter:a "atempo=2.0" -vn output.mkv
Stack Exchange ma dobry przegląd, aby zacząć korzystać z FFmpeg. Powinieneś również sprawdzić oficjalną dokumentację na ffmpeg.org lub wiki na trac.ffmpeg.org, aby dowiedzieć się o wszystkich możliwych rzeczach, które możesz zrobić z FFmpeg.
Zobacz także: Podstawowe polecenia systemu Linux