Zainstalowałem youtube-dl w moim 14.04.
Mogę pobrać wideo, wykonując następujące polecenie,
$ youtube-dl [youtube-link]
Ale chcę wiedzieć, jak wybrać dostępną jakość pikseli wideo na YouTube ( tj. 1080p, 720p, 480p itp . ) .
W opisie oprogramowania powiedzieli, że to możliwe (pokazano na obrazku poniżej), ale jak to zrobić ...
man
strony: „youtube-dl domyślnie pobiera teraz najwyższą dostępną jakość zgłoszoną przez YouTube, która w niektórych przypadkach będzie wynosiła 1080p lub 720p”.-f best
opcji.Odpowiedzi:
Aby pobrać wideo, wpisz adres URL po poleceniu w następujący sposób:
Aby wybrać jakość wideo , najpierw użyj
-F
opcji, aby wyświetlić listę dostępnych formatów, oto przykład:Oto wynik:
Najlepsza jakość to 22, więc użyj
-f 22
zamiast-F
pobierać wideo MP4 o rozdzielczości 1280x720 w następujący sposób:Lub opcjonalnie użyj następujących flag, aby automatycznie pobrać najlepsze ścieżki audio i wideo, które są dostępne jako pojedynczy plik:
Jeśli napotkasz błąd podczas procesu multipleksowania lub problem z wyborem jakości wideo, możesz użyć jednego z następujących poleceń:
lub, jak wskazał tutaj Gabriel Staples , następujące polecenie zazwyczaj wybiera rzeczywistą najlepszą rozdzielczość jakości pojedynczego pliku zamiast przepływności jakości wideo:
Te polecenia zapewnią pobranie najwyższej jakości wideo mp4 i audio m4a z wideo jako jednego pliku lub scalą je z powrotem w jeden plik mp4 (używając
ffmpeg
w moim przypadku). Jeśliffmpeg
lubavconv
nie jest dostępny,youtube-dl
powinien powrócić do pojedynczego pliku-f best option
zamiast domyślnego.Kliknij tutaj, aby uzyskać bardziej szczegółowe informacje i kilka różnych przykładów.
Kliknij również, aby zobaczyć tę pokrewną odpowiedź autorstwa Gabriela Staplesa.
Źródło: www.webupd8.org/2014/02/video-downloader-youtube-dl-gets.html
Źródło: github.com/rg3/youtube-dl
źródło
DASH
. To będzie niemożliwe do zagrania!DASH Video
. Próbowałem pobrać4K
, ale wszystko wDASH
formacie (DASH
pozwala YouTube zachować przepustowość). Jest zupełnie inna, w większości będzie niemożliwa do odtworzenia.avconv
. Za wolno dla4K
.Możesz pobrać 1080p za pomocą
youtube-dl
, ale musisz wykonać trochę dodatkowej pracy. Zwykle pobiera tylko 720p jako maksimum, nawet jeśli możesz zobaczyć 1080p na youtube.com.Uruchom z,
-F
aby zobaczyć dostępne formaty:zwróć uwagę, że
youtube-dl
ostatnią opcję 1280x720 oznaczono jako „najlepszą” jakość i to jest to, co zostanie domyślnie pobrane, ale linia zaczynająca się od 137 jest w rzeczywistości wyższej jakości 1920x1080. Youtube oddzielił strumienie wideo i audio dla linii oznaczonych DASH, więc musimy również wybrać dźwięk najwyższej jakości, którym w tym przypadku jest linia zaczynająca się od 141. Następnie uruchomimyyoutube-dl
ponownie, określając audio i wideo:i pobiera wideo 1080p i automatycznie łączy je z dźwiękiem najwyższej jakości. Powinien również automatycznie usuwać oddzielne pobrane części. Ta metoda to trochę dodatkowa praca, ale zapewni najlepsze wyniki.
źródło
DASH audio , opus @160k
lubDASH audio 126k , audio@128k (44100Hz), 1.79MiB
lubDASH audio 127k , m4a_dash container, aac @128k (44100Hz), 1.94MiB
. Musiałem wybrać, ale nie jestem pewien co do jakości, a może kompatybilności.--ffmpeg-location
w%APPDATA%\youtube-dl\config.txt
katalogu, w którym zainstalowany jest avconv / ffmpeg. Jeśli masz system z niższej półki, możesz-f bestvideo[fps<=30]+bestaudio
tam również chcieć , aby uniknąć wideo 60 klatek na sekundę.Aby wybrać określone rozdzielczości, możesz określić rozmiar i jakość dźwięku, aby były one wybierane automatycznie - więc dla 480p :
z
bestvideo[height<=720]+bestaudio/best[height<=720]
720p itp. Można to dodać do pliku konfiguracyjnego w~/.config/youtube-dl/config
(lub nawet/etc/youtube-dl.conf
), aby nie uzyskać zbyt dużych pobrań:Możesz użyć,
--ignore-config
jeśli chcesz wyłączyć plik konfiguracyjny dla określonego uruchomienia youtube-dl.Należy pamiętać, że dość często trzeba będzie pobrać osobną parę wideo i audio i połączyć je.
Więcej przykładów można znaleźć w
youtube-dl
doucmentation .źródło
~/.config/youtube-dl/config
Poniżej podano niektóre inne opcje pobierania filmów o najlepszej jakości, inne niż wymienione tutaj, w zależności od wygody:
Pobierz najlepszy dostępny format mp4 lub inny najlepszy, jeśli nie ma mp4
Pobierz najlepszy dostępny format, ale nie lepszy niż 480p
Pobierz najlepszy format tylko wideo, ale nie większy niż 50 MB
Pobierz najlepszy format dostępny poprzez bezpośredni link przez protokół HTTP / HTTPS
Odniesienie:
Bezpośrednio ze strony youtube-dl github
źródło
ext=mp4 && height<=480 && filesize<50M
?Skrypt opakowujący bash, który monituje o format, który obejmuje wszystkie dostępne wersje, w tym tylko audio, tylko wideo, a następnie przesyła strumieniowo wideo / audio
mpv
.Akceptuje zarówno bezwzględne adresy URL youtube, jak i identyfikatory wideo.
Przykładowe dane wyjściowe :
źródło
Jak uzyskać najlepszą dostępną jakość wideo.
Ta odpowiedź tutaj, z największą liczbą głosów, powinna być właściwa, aby zapewnić najlepszą dostępną jakość wideo, ale ... nie jest.
bestvideo+bestaudio
wydaje się wybierać tylko najlepsze wideo i najlepszy dźwięk spośród opcji, które są tylko wideo i tylko audio , a następnie łączy je ze sobą. Zauważ, że wydaje się to również identyczne z domyślnym zachowaniem youtube-dl. Jednak w filmie, na który patrzyłem, najlepszą jakością był pojedynczy, wstępnie scalony plik, który był już w formacie z połączonym obrazem i dźwiękiem.bestvideo+bestaudio
Opcja nie wybrał tę najlepszą jakość pliku 720p, ponieważ szukałem tylko dla odrębnej plików audio i wideo. Szczegóły poniżej.Rozwiązanie? Niech to zrobi najlepszy pojedynczy plik, który zawiera zarówno wideo, jak i audio w jednym, dzięki temu:
W skrócie: użyj
-f best
opcji, NIE-f bestvideo+bestaudio
opcji!Dowód:
Dokładniej, zobacz poniżej wyniki działania
aby zobaczyć, jakie filmy „F” są dostępne do pobrania:
Zauważ, że wiersz 22 mówi „(najlepiej)” po jego prawej stronie. Jest to jedyna opcja, która oferuje jakość HD720, która jest najlepszą jakością, jaką mogę uzyskać, oglądając ten film w przeglądarce internetowej na YouTube. Jest najczystszy i ma najlepszą definicję. Gdy korzystam z jednego z poleceń zalecanych przez pierwszą odpowiedź:
LUB:
W efekcie powstaje film o niższej jakości / niższej rozdzielczości i większym rozmiarze pliku. Nie rozumiem tego dokładnie, ale
-f best
zdecydowanie jest to jedyna opcja, która naprawdę zapewnia mi najlepszą rozdzielczość.Oto kilka zrzutów ekranu:
Użycie tutaj niższej jakości
-f bestvideo+bestaudio
opcji przyjętej tutaj jako właściwej odpowiedzi (LUB po prostu użycie opcji domyślnej:)youtube-dl https://youtu.be/FWGC9SqA3J0
:-f best
opcja poniżej, która musiała wykonać tylko jedno pobranie, a nie rekombinacja ponieważ był to już jeden plik.Korzystając z opcji wyższej jakości
-f best
, którą polecam:Dodatkowe czytanie:
Zobacz
man youtube-dl
szczegóły.źródło
Jestem oszczędzaczem dysku, więc pobieram filmy w tym formacie
1280 x 720
,ponieważ
4k
filmy zajmują więcej miejsca na dysku twardym.Więc dodaję
youtube-dl
~ /. plik bashrc jak podano poniżejUstawianie pracy -
otwórz terminal i typ
nano ~/.bashrc
teraz przejdź na sam dół pliku i dodaj podane poniżej polecenie
alias yt='youtube-dl -if best'
source ~/.bashrc
w terminaluEksperyment -
otwórz terminal i wpisz
yt https://www.youtube.com/watch?v=puPUJlV1-W4
Rozpocznie się pobieranie wideo o najlepszej jakości.
Objaśnienie -
Bash pozwala nam zdefiniować aliasy, które działają jak skróty do poleceń bash,
w naszym przypadku definiujemy alias jako -
alias yt = 'youtube-dl -i f best'
gdzie yt jest skrótem do polecenia 'youtube-dl', co daje ulgę
nasze palce wpisują długie polecenie.
Możesz napisać wszystko w miejscu yt .
Ustawiam flagę -i, w której znaczy
youtube-dl -if best
źródło
Domyślnie youtube-dl wybierze najlepszą jakość.
źródło