Tutorial
|
przez Hunt Team

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.exe i ffprobe.exe i umieścić je w tym samym folderze co yt-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 ffmpeg lub brew 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.

  1. Łą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ą.
  2. Konwersja formatu: jeśli potrzebujesz konkretnego formatu wyjściowego (np. konwersji teledysku bezpośrednio do MP3 lub FLAC), FFmpeg wykonuje transkodowanie.
  3. 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:

  1. Wyszukaj “Edytuj zmienne środowiskowe systemu”.
  2. Kliknij Zmienne środowiskowe.
  3. W sekcji “Zmienne systemowe” znajdź Path i kliknij Edytuj.
  4. Dodaj pełną ścieżkę do katalogu bin FFmpeg (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.

Źródła

VIDEO API

Discover why Hunt is the preferred API provider for developers.