Wie codiert YouTube meine Uploads und welchen Codec soll ich zum Hochladen verwenden?


25

In Verbindung mit Welche Codecs / Formate eignen sich für die Aufzeichnung von Full-Motion-Videos für YouTube? Ich frage mich genau, wie ich von Youtube erwarten kann, dass es mit meinen Videos umgeht. Ich weiß, dass sie eine ziemlich eifrige Verarbeitung haben, die mehrere Kopien meines Uploads mit unterschiedlichen Auflösungen erzeugt. Zumindest 1080p, 720p und 480p und anscheinend ein mobiles.

Welche Codecs verwenden sie? Als Produzent habe ich die Möglichkeit, die Datei als MP4 herunterzuladen; Allerdings stelle ich fest, dass ein Downloader von Drittanbietern (der extrem zwielichtig und beschissen ist) die Dateien als FLV herunterlädt. Ich frage mich im Grunde, ob mein Codec mit H.264 oder was auch immer sie verwenden, erhalten oder überschrieben wird. In Anbetracht ihrer erstaunlichen Kompatibilität zwischen Geräten gehe ich davon aus, dass sie entweder einen sehr gängigen Standard oder mehrere Codecs für jedes Video verwenden.

In welchem ​​Codec kann ich erwarten, dass meine Videos ausgegeben werden, und wenn es davon abhängt, wovon hängt es ab? Sollte ich meine eigene Codierung anpassen, um mit dem Youtube-Codec "gut zu spielen", oder spielt es in Bezug auf die Qualität eine Rolle? Ich weiß, dass ich so ziemlich alles auf Youtube werfen kann und es wird es dauern, also bin ich hauptsächlich mit der Videoqualität beschäftigt.


Hier ist ein Tool zum Anzeigen der
akostadinov

Antworten:


31

Einige allgemeine Informationen zu den verwendeten Formaten:

YouTube verwendet 4 Containerformate und 4 verschiedene Codecs. Es hängt von der Popularität des Videos ab, welche Codecs für Ihr Video verwendet werden (siehe unten, warum). Im Allgemeinen wird jedes Ihrer hochgeladenen Videos in h.264 codiert und in einen FLV- und MP4-Container konvertiert. Das ist der Standard und das wird für jedes Video passieren. Allerdings wird .flv nur für Auflösungen unter 720p verwendet. Dies bedeutet, dass in einem FLV-Container nur 360p und 480p vorhanden sind. Für jedes Video unter 720p ist jedoch auch eine mp4-Version verfügbar. Für 240p verwendet YouTube auch 3gp, einen ziemlich alten Codec (basierend auf MPEG-4 Part 2 (nicht zu verwechseln mit MPEG4 Part 10, auch bekannt als h.264), der für mobile Geräte gedacht ist (lange vor der Smartphone-Ära) der Behälter .3gpp.

Der andere verwendete Codec ist VP8, der im WebM-Containerformat geliefert wird. WebM ist ein von Google entwickeltes Format, das als Standard-Videocodec für HTML5 gedacht ist. Die Unterstützung dafür ist in den meisten modernen Browsern mittlerweile recht gut. WebM wurde mit der HTML5-Version von YouTube eingeführt. YouTube kodiert nur einige Videos in WebM, nachdem sie hochgeladen wurden, und meistens nur beliebte Videos (die von den Videos stammen, die ich in WebM kodiert gesehen habe), sodass nicht sicher ist, ob Ihr Video in WebM vorhanden sein wird. Dies ändert sich jedoch mit der zunehmenden Unterstützung von WebM.

Mittlerweile unterstützt YouTube auch VP9 in WebM, aber bisher unterstützt nur Chrome diesen Codec (Stand 06/2015). Mit VP9 wurde auch die Unterstützung für den Opus-Audiocodec eingeführt (neben AAC, das in allen anderen Containern verwendet wird).

In Bezug auf Ihre verknüpfte Frage (sollten sie möglicherweise zusammengeführt werden?)

Welchen Codec / Container sollten Sie zum Hochladen verwenden?

Das hängt davon ab, ob Sie von Ihrer Upload-Geschwindigkeit eingeschränkt oder betroffen sind. Verwenden Sie h.264 Level 3.1 / 4.1 mit Hauptprofil für SD oder High Profile für HD. YouTube akzeptiert dies in Ordnung und es wird gut aussehen, nachdem es von den YouTube-Servern verschlüsselt wurde. Normalerweise würde ich eine Bitrate von ~ 4-5 Mbit / s für 720p-Material und ~ 8-9 Mbit / s für 1080p empfehlen. Für 4k ~ 15Mbit / s. Dies ist normalerweise eine gute Balance zwischen Größe und Qualität. Wenn Sie eine bessere Qualität wünschen, wählen Sie eine höhere Bitrate, und wenn Sie ein kleineres Video wünschen, wählen Sie eine niedrigere Bitrate.

Beachten Sie jedoch, dass YouTube Ihr Video IMMER nach dem Hochladen codiert, unabhängig davon, welchen Codec und welche Einstellungen Sie verwenden. Wenn Sie also die theoretisch beste Qualität für Ihre Uploads wünschen, wählen Sie einen verlustfreien Codec zum Hochladen oder zumindest visuell verlustfrei. Sehen Sie YouTube als endgültige Ausgabe in ein Liefer- / Verbraucherformat, und der Upload auf YouTube ist der letzte Schritt in der Produktion und während der Produktion möchten Sie verlustfrei bleiben. Aber bitte beachte, dass dies alles nur eine theoretische Sache ist, praktisch würde ich sagen, dass es wirklich keine Rolle spielt, da wir über YouTube und nicht über Fernsehsendung oder Kino sprechen.

Aber wenn Sie es wirklich "perfekt" machen möchten, verwenden Sie einen Produktions-Codec und keinen Consumer-Codec wie h.264. MJPEG wäre ein guter Codec dafür, YouTube unterstützt das definitiv in einem .avi oder .mov Container. MJPEG ist ein verlustbehafteter Codec, aber die visuelle Qualität entspricht der der Quelle (wenn Sie eine ausreichend hohe Qualitätseinstellung gewählt haben, ist dies praktisch JPEG als Videocodec). Ein verlustfreier Codec wäre meiner Meinung nach eine Verschwendung von Festplattenspeicher und Bandbreite.

Aber wenn Sie Ihr Video wirklich verlustfrei hochladen möchten und sich nicht für die Upload-Zeit interessieren, empfehle ich die Verwendung eines Standard-QuickTime-Codecs, da diese von YouTube fast alle unterstützt werden sollten (beachten Sie, dass nicht alle von ihnen verlustfrei sind, h264 ist auch eine Standard-QuickTime-Codec). Leider gibt YouTube nicht an, welche QuickTime-Codecs unterstützt werden. Animation oder JPEG2000 sollten funktionieren, denke ich. Beide Codecs können zu 100% verlustfrei sein.

Wenn Sie bei den Frameraten wählen können, verwenden Sie 25FPS (mittlerweile unterstützt YouTube auch 50 und 60FPS, also wahrscheinlich auch 30FPS) während der Aufnahme / Animation. YouTube mag dies jedoch am meisten (die für jedes Video verwendete Framerate) Wenn Ihr Material bereits in einer anderen Bildrate vorliegt, bleiben Sie dabei und interpolieren Sie nicht nach oben oder unten. YouTube übernimmt die Konvertierung für Sie und erledigt dies in der Regel besser als Ihr Encoder. Sie müssen sich jeden Tag mit allen möglichen Frameraten auseinandersetzen und haben dieses (eigentlich sehr komplizierte) Problem wirklich gut gelöst.

Audio:

Verwenden Sie für die Audiowiedergabe PCM, wenn Sie auch bei der Audiowiedergabe verlustfrei bleiben möchten, dies ist jedoch nur eine theoretische Qualitätsverbesserung. AAC erledigt normalerweise die gleiche (subjektive) Jobqualität und ist kleiner. Ich empfehle eine Bitrate von mindestens 192 Kbit / s für AAC. Die Auswirkung auf die Größe ist normalerweise nicht so groß wie der Videocodec, sodass Sie auch einfach mit 320 KBit / s arbeiten können. YouTube konvertiert Audio mit dem Codec AAC und Opus (nur WebM) in ~ 24 kbit / s (Mobil, auch bekannt als 3 gp) ~ 64 kbit / s (240 p), ~ 128 kbit / s (360 p / 480 p) und ~ 192 kbit / s (720 p +).


3
Ich stimme dieser Antwort zu. Es gibt jedoch eine praktische Grenze: die Upload-Geschwindigkeit. Wie viel Zeit lässt du für einen Upload zu? Ein ganzes Wochenende, eine Nacht oder ein paar Stunden bis zum Ende Ihres Arbeitstages. Ich selbst habe die Grenze auf 2 GB für 10 Minuten Video gesetzt, was in meinem Fall etwa 4 Stunden Uploadzeit erfordert. Aber schränkt das die Qualität wirklich ein? Mein 2 GB Video hat eine Bitrate von 30 Mbit / s, die YouTube in 3 Mbit / s umwandelt. Eine verlustfreie Codierung würde die Upload-Zeit vervielfachen, aber die YouTube-Ausgabe würde immer noch bei 3 Mbit / s liegen. Bitte setzen Sie sich Ihre persönlichen Grenzen.
Fred42vid

Klar, deshalb habe ich (hoffentlich) klargestellt, dass es theoretisch und in keiner Weise praktisch ist. H.264 ist in fast allen Fällen zu empfehlen. Der einzige praktische Anwendungsfall für MJPEG, den ich mir vorstellen kann, ist das Auftreten von Farbstreifen bei der ersten h.264-Kodierung, die bei der zweiten Kodierung von YouTube schlechter wird.
PTS

1
Youtube-Unterstützung h.264 hochkarätig, so sollten Sie es immer verwenden. Hauptprofil für SD-Inhalte ist albern. 8x8dct wegzulassen ist immer eine schlechte Idee. In x264 ist die Aktivierung von 8x8dct der effizienteste Kompromiss zwischen CPU-Zeit und besserer Qualität pro Dateigröße (auch bekannt als Rate: Distortion oder RD).
Peter Cordes

2
H.264 sieht bei gleicher Bitrate viel besser aus als MJPEG. Wenn Sie eine bessere Qualität wünschen, erhöhen Sie einfach die Bitrate (oder die Qualitätseinstellung in konstanter Qualität anstelle des Ziel-Bitratenmodus). Sie können den gesamten Weg bis zu verlustfreiem h.264 zurücklegen, wenn Sie nichts dagegen haben, eine große Datei hochzuladen. Es wird wahrscheinlich kleiner sein als verlustfreies j2k. Beide sind jedoch von perfekter Qualität, da dies verlustfrei bedeutet.
Peter Cordes

1
Für Audio IDK, ob YouTube FLAC unterstützt oder nicht. Wenn ja, wäre dies Ihre erste Wahl für verlustfreie Produkte. Ansonsten ja, AAC mit hoher Bitrate gemacht mit einem guten Encoder. ( -c:a libfdk-aac, nicht die Standard- faacoder eingebauten aacEncoder in ffmpeg.)
Peter Cordes

5

Welches Format YT ihr Video ausgibt, hängt von verschiedenen Faktoren ab. Für die meisten gewöhnlichen Videos werden H264-codierte Streams für Videos (AAC oder MP3 für Audio) in Form von MP4- und FLV-Containerdateien verwendet.

Dies sind nur Container, die die codierten Videodaten enthalten - obwohl das H264-codierte Format keine Garantie für FLV-Dateien (oder theoretisch für MP4-Dateien) ist, da sie auch Sorenson Spark, On2 VP6 und andere enthalten können (insbesondere bei älteren Videos) ).

FLVs werden verwendet, da sie mit dem Flash-Player garantiert wiedergabefähig sind.

Es liegt nicht wirklich an der Downloader-Software, das Format zu bestimmen - sie laden einfach das herunter, was verfügbar ist, indem sie itagdie "interne" Video-URL (nicht die im Browser) verwenden, um die Optionen zu identifizieren. Wenn sie das Video optional konvertieren, ist dies eine Funktion, die jedoch nicht mit den Formaten von YT zusammenhängt.

Neben diesen gibt es auch andere Formate wie 3GP, WEBM sowie für 3D-Filme. Einige zielen auf Handys und den neuen Html5-Standard (der sozusagen implementiert wird), der Videos direkt mit HTML abspielen kann (dh ohne Flash-Player).

Aber zurück zu den gebräuchlichsten Formaten: In Bezug auf die Qualität spielt es keine Rolle. Wenn der FLV H264 enthält, können Sie dies genauso gut wiedergeben wie eine MP4-Container-Datei mit dem VLC-Player von zB VideoLAN . Wenn das FLV kein H264 enthält und Sie es als MP4-Container mit H264 möchten, müssen Sie es neu codieren, was bedeutet, dass Sie an Qualität verlieren.

Da YT derzeit H264 zu bevorzugen scheint, würde ich auch das Hochladen in diesem Format empfehlen (Informationen zu Größen und Bitraten finden Sie, um eine Neukodierung für die beste Auflösung zu vermeiden).



0

Deine Frage lautet "Wie codiert YouTube meine Uploads und welchen Codec soll ich zum Hochladen verwenden?".

Wenn ich mich näher mit deiner Frage befasse, sehe ich: "Soll ich meine eigene Codierung so anpassen, dass sie mit dem Youtube-Codec" gut "funktioniert, oder spielt es in Bezug auf die Qualität eine Rolle? Ich weiß, dass ich so ziemlich alles auf Youtube werfen kann, und das wird es auch." Ich beschäftige mich hauptsächlich mit der Videoqualität. "

Die Antwort ist, dass YouTube Lavf57.25.100 verwendet, um neue Videos zu kodieren, während Videos über ein paar Jahre mit einem proprietären Kodierer kodiert wurden (in dessen ID nicht "Lavf57.25.100" eingebettet ist, sondern stattdessen der Satz "IsoMedia File Produced" von Google, 5-11-2011 "). Die alten Videos wurden beim Ändern des Algorithmus nicht neu codiert.

Es ist akzeptabel, viele verschiedene Codecs zu verwenden, YouTube empfiehlt H.264 - siehe hier: https://support.google.com/youtube/answer/1722171?hl=de .

Aus irgendeinem Grund möchten Sie nicht nach dem Container fragen (was nicht dasselbe ist wie ein Codec). Sie gehen auch davon aus, dass 1080P verfügbar sein wird, und fragen nicht nach dem Wichtigsten - der Bitrate (gefolgt von der Auflösung).

Wenn Sie ein Video mit einer Auflösung von 1080 P bei 60 FPS hochladen, beträgt die maximal verfügbare Auflösung 720 P (bei 60 FPS auf einem Mobilgerät mit einer Auflösung von 1080 P). Wenn Sie ein 1080 P-Video mit einer Auflösung von 29,97 FPS hochladen, können Sie 1080 P auf einem Mobilgerät anzeigen.

Was ist wichtig, ist Bitrate und Auflösung, wenn "Qualität" Ihr Ziel ist. Sie können nicht hochskalieren oder verlustfrei verwenden, um zu betrügen, da YouTube einen 'Komprimierungstest' durchführt, um zu bestimmen, wie stark Ihr Video bei minimaler Verschlechterung zerkleinert werden kann Lässt das Zerkleinern nach und sorgt für ein viel besseres Seherlebnis.

Siehe: https://support.google.com/youtube/answer/1722171?hl=de .

Beachten Sie, dass unterschiedliche Auflösungen und 'Qualitätserwartungen' gelten. Für 4K-Videos mit geringen Erwartungen können Sie Videos hochladen, die eine Bitrate von 35-45 Mbit / s haben. Wenn Sie jedoch "Produzent" sind und Qualität anstreben, benötigen Sie sowohl eine höhere Bildrate als auch mindestens 66-85 Mbit / s für die Kamerabitrate (bevor Sie es sehr sanft komprimieren).

Wenn Sie ein Video mit niedriger Auflösung hochskalieren und einen unkomprimierten Codec verwenden, in der Hoffnung, die bestmögliche Qualität zu erzielen, werden Sie erwischt (und auf Brei reduziert).

Nehmen Sie mit einer Kamera in Produktionsqualität mit hoher Framerate und Bitrate auf, die sehr sanft komprimiert ist (Ffmpeg Q = <10), um die besten Ergebnisse zu erzielen - der "Codec" (Ihre Worte) ist nicht der einzige entscheidende Faktor (obwohl ich davon abraten würde) ein alter).

Ffmpeg unterstützt MP4-Container und den H.264-Codec. Verwenden Sie diese.

Die Leute beschweren sich oft darüber, dass YouTube ihre Videos ruiniert. Das Problem ist, dass sie nicht in der Qualität hochgeladen haben, die ausreicht, um den Switch auszulösen, und dass der YouTube-Compressor beim Hochladen vorsichtig vorgeht. Pixelspähende perfekte Videos sind möglich. Es gilt die GIGO-Regel.

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.