Używanie FFmpeg z yt-dlp
Choć yt-dlp to niezwykle potężne narzędzie do pobierania multimediów, w dużej mierze polega na FFmpeg w zadaniach post-processingu. Bez FFmpeg tracisz kluczowe funkcje, takie jak łączenie strumieni wideo i audio w wysokiej jakości, konwersja plików do innych formatów oraz osadzanie metadanych.
Aby w pełni wykorzystać yt-dlp, niezbędna jest poprawna instalacja i konfiguracja FFmpeg. Ten przewodnik pokazuje, jak to zrobić i dlaczego jest to konieczne.
Instalacja FFmpeg i FFProbe
Aby yt-dlp mógł używać FFmpeg, musi mieć dostęp do samodzielnych binarek. Uwaga: instalacja wrapperów Pythona takich jak ffmpeg-python przez pip nie wystarczy; potrzebujesz właściwych buildów FFmpeg.
- Windows: pobierz najnowsze buildy. Najprościej wypakować
ffmpeg.exeiffprobe.exei umieścić je w tym samym folderze coyt-dlp.exe. Alternatywnie możesz umieścić je w dedykowanym folderze i dodać ten folder do PATH systemu. - Linux/macOS: zazwyczaj najlepiej zainstalować przez menedżera pakietów (np.
apt install ffmpeglubbrew install ffmpeg), który automatycznie ustawia PATH.
Dlaczego FFmpeg jest niezbędny dla yt-dlp
Możesz zauważyć, że bez FFmpeg yt-dlp nie potrafi skutecznie pobierać filmów 1080p lub 4K z serwisów takich jak YouTube. Wynika to z tego, że nowoczesne platformy często serwują wideo HD i wysokiej jakości audio jako oddzielne strumienie.
- Łączenie strumieni (muxing): yt-dlp pobiera najlepszą ścieżkę wideo i najlepszą ścieżkę audio osobno. Następnie wywołuje FFmpeg, aby je “zmuxować” (połączyć) w jeden plik (np. MP4 lub MKV). Bez FFmpeg zostaniesz z dwoma osobnymi plikami lub będziesz zmuszony wybrać wersję o niższej jakości, już połączoną.
- Konwersja formatu: jeśli potrzebujesz konkretnego formatu wyjściowego (np. konwersji teledysku bezpośrednio do MP3 lub FLAC), FFmpeg wykonuje transkodowanie.
- Metadane i rozdziały: FFProbe (część pakietu FFmpeg) pozwala yt-dlp analizować strumienie, aby upewnić się, że metadane, miniatury i rozdziały są poprawnie osadzone.
Konfiguracja zmiennej PATH
Jeśli wolisz nie trzymać binarek w tym samym folderze co yt-dlp, musisz zadbać o to, aby system operacyjny wiedział, gdzie je znaleźć. Robi się to przez dodanie folderu bin FFmpeg do zmiennej środowiskowej PATH.
W Windows:
- Wyszukaj “Edytuj zmienne środowiskowe systemu”.
- Kliknij Zmienne środowiskowe.
- W sekcji “Zmienne systemowe” znajdź Path i kliknij Edytuj.
- Dodaj pełną ścieżkę do katalogu
binFFmpeg (np.C:\Program Files\ffmpeg\bin).
Po konfiguracji uruchom ponownie terminal. Możesz sprawdzić, czy działa, uruchamiając ffmpeg -version. Jeśli pojawią się informacje o wersji, yt-dlp automatycznie wykryje FFmpeg i zacznie go używać.
Jak działa łączenie wideo i audio
Siłą yt-dlp jest dobór formatów. Domyślne zachowanie to zwykle bestvideo+bestaudio/best.
- Operator
+: oznacza pobranie najlepszych oddzielnych strumieni wideo i audio. - Łączenie: po pobraniu FFmpeg łączy je w jeden plik. Na przykład może połączyć strumień wideo WebM ze strumieniem audio Opus do kontenera MKV.
Jeśli kodeki są kompatybilne z docelowym kontenerem (np. MP4), FFmpeg skopiuje strumienie (szybko). Jeśli nie są kompatybilne, dokona re-enkodowania (wolniej, ale zapewnia zgodność). Możesz sterować tym zachowaniem dzięki rozbudowanym flagom wyboru formatów w yt-dlp.