Laden Sie nur das Format mp4 auf youtube-dl herunter


74

Wie kann ich mit der Download-DLL Videos über die URL-Wiedergabeliste herunterladen und stattdessen nur mp4 .mkvoder formatieren .webm?

Ich benutze diesen Befehl, um Videos herunterzuladen: youtube-dl -itcv --yes-playlist https://www.youtube.com/playlist?list=....

Das Ergebnis dieses Befehl ist Video mit der Erweiterung .mp4, .mkvoder.webm


schau dir die --list-formatsund --format nnSchalter an.
jc__

Verwendet -f mp4. Aber einmal die Datei heruntergeladen, auf mp4, mit 150 MB und ein anderes Mal mit 90 MB. Ich habe die Hilfe gelesen, die über "youtube --help" verfügbar ist, und ich kann keinen anderen Parameter finden, mit dem ich die maximale Qualität gezielt herunterladen kann!
Edgar Oliveira

Antworten:


81

So listen Sie die verfügbaren Formate auf:

youtube-dl -F url

Dann wählen Sie die beste

Beispiel: youtube-dl -f 11 url

Beispiel aus webupd8

youtube-dl -F http://www.youtube.com/watch?v=3JZ_D3ELwOQ

Beispielausgabe:

[youtube] Setting language
[youtube] 3JZ_D3ELwOQ: Downloading webpage
[youtube] 3JZ_D3ELwOQ: Downloading video info webpage
[youtube] 3JZ_D3ELwOQ: Extracting video information
[info] Available formats for 3JZ_D3ELwOQ:
format code extension resolution  note 
171         webm      audio only  DASH webm audio , audio@ 48k (worst)
140         m4a       audio only  DASH audio , audio@128k
160         mp4       192p        DASH video 
133         mp4       240p        DASH video 
134         mp4       360p        DASH video 
135         mp4       480p        DASH video 
136         mp4       720p        DASH video 
137         mp4       1080p       DASH video 
17          3gp       176x144     
36          3gp       320x240     
5           flv       400x240     
43          webm      640x360     
18          mp4       640x360     
22          mp4       1280x720    (best)

Sie können auswählen bestund eingeben

youtube-dl -f 22 http://www.youtube.com/watch?v=3JZ_D3ELwOQ

Um die beste Videoqualität (1080p DASH-Format "137") und die beste Audioqualität (DASH-Audioformat "140") zu erhalten, müssen Sie den folgenden Befehl verwenden:

youtube-dl -f 137+140 http://www.youtube.com/watch?v=3JZ_D3ELwOQ

BEARBEITEN

Sie können weitere Optionen hier

Videoauswahl:

--playlist-start NUMBER          Playlist video to start at (default is 1)
--playlist-end NUMBER            Playlist video to end at (default is last)
--playlist-items ITEM_SPEC       Playlist video items to download. Specify
                             indices of the videos in the playlist
                             separated by commas like: "--playlist-items
                             1,2,5,8" if you want to download videos
                             indexed 1, 2, 5, 8 in the playlist. You can
                             specify range: "--playlist-items
                             1-3,7,10-13", it will download the videos
                             at index 1, 2, 3, 7, 10, 11, 12 and 13.
--match-title REGEX              Download only matching titles (regex or
                             caseless sub-string)
--reject-title REGEX             Skip download for matching titles (regex or
                             caseless sub-string)
--max-downloads NUMBER           Abort after downloading NUMBER files
--min-filesize SIZE              Do not download any videos smaller than
                             SIZE (e.g. 50k or 44.6m)
--max-filesize SIZE              Do not download any videos larger than SIZE
                             (e.g. 50k or 44.6m)
--date DATE                      Download only videos uploaded in this date
--datebefore DATE                Download only videos uploaded on or before
                             this date (i.e. inclusive)
--dateafter DATE                 Download only videos uploaded on or after
                             this date (i.e. inclusive)
--min-views COUNT                Do not download any videos with less than
                             COUNT views
--max-views COUNT                Do not download any videos with more than
                             COUNT views
--match-filter FILTER            Generic video filter (experimental).
                             Specify any key (see help for -o for a list
                             of available keys) to match if the key is
                             present, !key to check if the key is not
                             present,key > NUMBER (like "comment_count >
                             12", also works with >=, <, <=, !=, =) to
                             compare against a number, and & to require
                             multiple matches. Values which are not
                             known are excluded unless you put a
                             question mark (?) after the operator.For
                             example, to only match videos that have
                             been liked more than 100 times and disliked
                             less than 50 times (or the dislike
                             functionality is not available at the given
                             service), but who also have a description,
                             use --match-filter "like_count > 100 &
                             dislike_count <? 50 & description" .
--no-playlist                    Download only the video, if the URL refers
                             to a video and a playlist.
--yes-playlist                   Download the playlist, if the URL refers to
                             a video and a playlist.
--age-limit YEARS                Download only videos suitable for the given
                             age
--download-archive FILE          Download only videos not listed in the
                             archive file. Record the IDs of all
                             downloaded videos in it.
--include-ads                    Download advertisements as well
                             (experimental)

Wenn ich Videos auf eine Wiedergabeliste herunterlade, gibt es über "youtube-dl -itcv --yes-playlist url" einige Videos, die nicht heruntergeladen wurden. Wie kann ich das umgehen? Oder bestand dieses Problem, weil ich den Parameter "-f mp4" nicht verwendete und ein Fehler auftrat, als das Programm das beste Format zum Herunterladen auswählte?
Edgar Oliveira

youtube-dl --yes-playlist url
schreibe

Fahren Sie mit demselben Problem fort. In der Playlist habe ich versucht 42 Videos auf youtube herunterzuladen. Es wurden aber nur 34 Videos heruntergeladen. Die Ausgabe ist: [youtube: playlist] playlist Name Playlist: 34 Videos werden heruntergeladen
Edgar Oliveira

1
@EdgarOliveira oft in Wiedergabelisten gibt es einige gelöschte Videos noch Youtube weiterhin in der Wiedergabeliste enthalten ... ist dies das Problem verursacht
Scott Stensland

109

Gefällt mir ( Quelle ):

youtube-dl -f 'bestvideo[ext=mp4]+bestaudio[ext=m4a]/mp4' url

cool, dieses beste Video + beste Audio heruntergeladen und zusammengeführt.
Renetik

5
Wenn Sie sich nicht für die spezifischen Formate interessieren, die von OP angefordert werden, sollten Sie beachten, dass die Standardeinstellungen für youtube-dl seit 2015 gelten -f bestvideo+bestaudio/best. Sie sind also bereits so konfiguriert, dass Sie das beste Video und das beste Audio herunterladen (und diese automatisch in einer resultierenden Datei muxen). . Quelle: github.com/rg3/youtube-dl/blob/master/…
jj_

@jj_ Auf jeden Fall - wenn ich diese Befehlszeile verwende, muss ich eine H.264 + AAC-Version erhalten, die mit den meisten Geräten kompatibel ist.
s4y

@ s4y ja, aber das birgt das risiko der transcodierung. Um dies zu vermeiden, würde ich dies anders handhaben und nicht für jede heruntergeladene Datei ein einzelnes Containerformat erzwingen.
jj_

1
@ s4y youtube-dl wird zwar transkodieren, wenn es nötig ist ( --audio-formatOption), aber Sie sind hier richtig: Dies sollte bei dieser Zeile nicht der Fall sein, da Sie youtube-dl zwingen, zwei Dateien herunterzuladen (bestaudio [ext = mp4] und bestvideo [ext = m4a]), die die gleiche Art von Container gemeinsam haben (mp4). Unabhängig von ihrem Inhalt werden sie beim Remuxen in einem anderen mp4-Format gestapelt, ohne dass eine Transcodierung erforderlich ist.
jj_

10

Nach diesem Kommentar von glenn-slayden erhält man ein mp4-Format mit höchster Videoqualität wie folgt:

Mir ist klar, dass dieser Thread ein bisschen alt ist, aber ich denke, die Situation hat sich etwas geändert. Für mein Ziel:

  • Nehmen Sie in erster Linie immer die beste verfügbare Videoqualität, unabhängig vom Format.
  • aber dann lass niemals zu, dass das Audioformat alleine dazu führt, dass du mp4 verlierst .

Früher habe ich verwendet bestvideo+bestaudio/best, aber ich finde, dass die folgende Variante viel besser zum Reduzieren mkv, (anscheinend) Eliminieren webm, aber dennoch zum Garantieren der höchsten Videoqualität geeignet ist (verwenden Sie die --merge-output-formatOption nicht, wenn Sie diese verwenden):

--format bestvideo+bestaudio[ext=m4a]/bestvideo+bestaudio/best 

Beachten Sie, dass im ersten Term der extFilter für das Audio , nicht aber für das Video festgelegt ist , eine Technik, die ich in der obigen Diskussion nicht erwähnt habe. Wenn das für meine erklärten Ziele rückständig erscheint, kann dies daran liegen, dass wir versuchen sicherzustellen, dass das Videoformat korrekt ist mp4. Warum wird die Einschränkung für das Audio angegeben?

Der Schlüssel ist, dass jeder Fallback-Term (durch Schrägstriche getrennt) fehlschlägt, wenn ein Teil seiner Anforderung fehlschlägt, und mit dem nächsten Term fortfährt. Bei der Verwendung bestvideo+bestaudiowerden viele Fälle, in denen ein Nicht-MP4-Container abgerufen wird bestaudio, nur angezeigt , weil diese Formatauswahl eindeutig darauf besteht , was dann möglicherweise ein gemischtes Format bedeutet. Das liegt daran, dass der bestvideo+bestaudioBefehl zu hartnäckig ist, als dass Sie dazu gezwungen werden, ihn zu verlassen mp4.

Aber was ist, wenn Sie mehr Wert auf einen mp4-Container als auf die Audioqualität legen ? Indem sich auf m4aAudio-zuerst - aber dann Nachgeben auf nur jenen Teil , während der Ausstellung bestvideowieder - (durch die Formatauswahl oben verwenden) Sie im Wesentlichen eine flexible express Vorliebe für mp4in den anderen Behältnissen; Sie wollen es sicherlich ,mp4 wenn möglich, aber nicht auf Kosten einer verminderten Videoqualität.

Wie ich schon sagte, es kann sein, dass Sie noch welche bekommen mkv, diese werden jedoch in ihrer Anzahl stark reduziert und nur verwendet, wenn sie benötigt werden, um ein (angeblich) besseres Video zu liefern. Und bis jetzt habe ich mit dieser Konfiguration überhaupt keine gesehen webm, weil so etwas wie 248 + 140 funktioniert mkv.

Im letzteren Fall wird das Hinzufügen --merge-output-format mp4bei Bedarf in mp4 konvertiert. Der vollständige Befehl lautet also:

youtube-dl --format "bestvideo+bestaudio[ext=m4a]/bestvideo+bestaudio/best" --merge-output-format mp4
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.