YouTube Video hängt auf manchen Geräten? Sind Encoder-Einstellungen schuld?

  • Hallo zusammen,


    bei meinem letzten Upload sind mir zwei Sachen aufgefallen:


    1. am Anfang des Videos (von Sekunde 7 bis ca. 17) habe ich Standbild - wie ich gesehen habe aber auch schon in dem gerenderten Video das ich hochgeladen hatte. Im Originalvideo war das jedoch nicht drin, was mir Sorgen macht! Ich habe nichts geändert am Video, nur neu encodiert.


    2. Wenn ich das Video mal zwischendrin etwas laufen lasse, wird mir meist nach etwa 30-60 Sekunden plötzlich einfach der Ladekringel angezeigt und das Video läuft aber auch nach Minuten nicht weiter bis ich die Seite neu lade oder die Qualität runtersetze.


    Könnten Encodereinstellungen insbesondere für das 1. Problem verantwortlich sein?

    Zu 2. überlege ich aktuell ob dass einfach schon Maßnahmen gegen Adblocker sein könnten? Mir ist das Problem auf dem PC mit Adblocker und auf dem Fernseher über SmartTubeNext aufgefallen, beim Smartphone über die normale YouTube App jedoch nicht - da empfange ich aber auch nicht den 4K Stream.


    Als Encoder-Programm habe ich Staxrip mit folgenden Einstellungen genutzt:

    Code
    --avhw --cqp 120:120:120 --codec av1 --preset P7 --profile main --aq-temporal --bframes 2 --ref 2 --lookahead 20 --colormatrix bt709 --colorprim bt709 --transfer bt709 --colorrange auto --vpp-resize algo=nvvfx-superres,superres-mode=0,superres-strength=0 --mv-precision q-pel --output-res 3840x2160

    Sollte generell irgendeine dieser Einstellungen fragwürdig aussehen, bitte gerne Bescheid geben. Vor allem bei b- und reference-frames bin ich unsicher, was optimal ist.


    Danke vorab fürs Reindenken und helfen :)

  • In den meisten Fällen reicht es einfach sich für ein Encoder Preset sich zu entscheiden. In dem Fall P7. P7 ist schon auf max Qualität settings.


    Verstehe auch nicht ganz warum du dich für einen festen Quantizer (CQP / Constant Quantizer) statt für einen dynamisch Quantizer der sich der Komplexität des Bildes anpässt (CQ / Constant Quality)

    Das ist wesentlich effizienteres Dateigröße zu Qualität Verhältnis und Dunkelheit leidet weniger, da Dunkelheit sich zwar sehr gut komprimieren lässt, jedoch auch sehr kleine Quantizer benötigt um auf gleichem Qualitätsniveau zu bleiben. Bei CQP hat daher Dunkelheit tendenziell mehr Kompression als du möchtest. Lookahead würde ich halt auch nicht auf bloß 20 setzen.


    4k Videos laufen bei mir einwandfrei am PC mit Adguard als Adblocker.

    Da ist dein Video keine Ausnahme. Das Standbild von 7 bis 17 kann ich aber bestätigen. Wenn es definitiv in der hochgeladenen Datei nicht drin ist, dann mag der vllt das Format nicht so. Kannst es versuchen nochmal neu hochzuladen. Sollte es immer wieder passieren, vllt mal mit HEVC probieren.

  • Ich hatte zuletzt mit CQ bzw. genauer QVBR gearbeitet und musste aber feststellen, dass da iwas überhaupt nicht hinhaut in StaxRip. Denn ob ich die Qualität ("VBR Quality") auf 0 stelle, 1 oder auf 20, die Qualität ist immer wesentlich schlechter (auch die Dateigrößen unterscheiden sich kaum) als jetzt bspw. mit dem CQP 120 Wert. Es gibt in StaxRip einmal ein QVBR Modus und ein VBR Modus, wo man weiter unten den Haken bei "Constant Quality Mode" kann. Beide Modi machen hier keinen Unterschied. Letztlich bin ich deswegen wieder auf den CQP Modus zurückgegangen, denn hier bewirken die qp-Werte wenigstens etwas. Und du empfiehlst also ansonsten alles auf Standard zu lassen, nur das Preset auf P7 zu stellen (wie ich es ja schon habe)?


    Das Standbild im Video war schon im gerenderten Video drin, also das was ich hochgeladen habe. Nicht aber im Original. Es muss also beim Rendervorgang von StaxRip entstanden sein.


    EDIT: Achso, ich nutze den Nvenc AV1 Codec, hat der vielleicht keinen Q-VBR Modus?

  • Das Standbild ist natürlich blöd, da hat der Encoder wohl 'nen Keyframe verpasst und einfach den letzten besten genommen, der noch im Speicher war... in Adobe Premiere hab ich bei solchen Videos dann stattdessen einfach ein grünes oder rotes Bild für die Zeit, muss ich die Original-Datei dann halt lossless an Keyframes splitten in kürzere Segmente mit FFmpeg, damit kann mein Premiere dann umgehen und es gibt keine Standbilder mehr...


    Das hängen... hab ich auch manchmal... kleinere Kanäle werden eben nicht in allen Rechenzentren von YouTube gecacht, da fehlt dann halt manchmal was und muss "nachgeladen" werden... wenn du nicht viele Aufrufe auf den Videos hast, ist das leider normal... merke ich auch bei älteren Videos von mir, die manchmal nicht laden.


    Aber mal so generell: Der 08/15 Zuschauer wird sich nicht an der Qualität des Videos stören, 70% schauen Videos übers Handy, und bei einem 6-8" Bildschirm fällt das nicht auf.

  • Ich habe die letzten Tage viel herumprobiert und will euch an den Ergebnissen teilhaben lassen.


    1. Was das Stocken am Anfang des Videos angeht

    Ich habe sehr viele Dinge in Staxrip ausprobiert und konnte letztendlich nicht ermitteln, warum, aber selbst mit anderen Codecs oder ohne Upscaling - irgendwie haut dieses Programm immer diesen Freeze am Anfang rein. Handbrake tut es nicht, wäre jetzt meine erste Alternative gewesen, aber ich habe mich nun mal rangesetzt und den aktuellen NVENC Encoder (von rigaya/ Github) geladen, den Staxrip eigentlich auch nutzt und manuell über Kommandozeile mit allem gefüttert, was ich sonst auch Staxrip als Optionen mitgegeben habe - und siehe da, es funktioniert OHNE Stocken. Ist zwar umständlicher (hab mir da jetzt n kleines Programm schreiben (lassen)) aber es funktioniert.


    2. Warum sich die Qualität und Dateigröße bei "Constant Quality" QVBR-Werten (z. B. 5, 10 oder 30) kaum unterscheiden

    Offensichtlich - keine Ahnung ob es nur bei AV1 so ist - MUSS ein Wert für maximale Bitrate mitgegeben werden. Wenn ich für mein 4K Video also bspw. "--max-bitrate 500000" mitgebe, also zusätzlich zu in meinem Fall "--qvbr 25", DANN sieht man schon sehr deutlich dass es einen Unterschied macht. Selbst bei Handbrake war das der Fall.


    Warum bei mir meine Videos auf 4K auf YouTube mittendrin endlos buffern, habe ich noch nicht herausgefunden.

  • Ganz vergessen zu antworten:


    Bin da schon stark von ausgegangen das es an Staxrip liegt.

    Weil Constant Quality funktioniert definitiv und bitrate muss im Falle ffmpeg dabei sein, kann aber auf 0 gesetzt werden. Weil sonst wird ein Standardwert benutzt.


    Code
    ffmpeg -rtbufsize 2147M -thread_queue_size 1024 -probesize 10M -i "d:\XVideos\TRR_NFS6_S9_Race04\TRR_NFS6_S9_Race04.avs" -vcodec libx264 -b:v 0 -preset slow -fps_mode cfr -pix_fmt yuv444p10le -x264opts crf=19:keyint=600 "d:\XVideos\TRR_NFS6_S9_Race04\TRR_NFS6_S9_Race04.mkv"

    Das wäre zb eine x264 Line mit einem Renntagvideo von mir


    und NVEnc könnte zb so aussehen:


    Code
    ffmpeg -rtbufsize 2147M -thread_queue_size 1024 -probesize 10M -i "d:\XVideos\TRR_NICE2_S9_Race01\TRR_NICE2_S9_Race01.avs" -vcodec hevc_nvenc -preset p7 -pix_fmt yuv444p -profile:v main -level 6.1 -tier high -g 600 -fps_mode cfr -rc:v vbr -b:v 0 -cq 19 "d:\XVideos\TRR_NICE2_S9_Race01\TRR_NICE2_S9_Race01.mkv"


    rc:v vbr und b:v 0 sind hierbei die wichtigsten, damit -cq auch korrekt läuft


    Aber mal so generell: Der 08/15 Zuschauer wird sich nicht an der Qualität des Videos stören, 70% schauen Videos übers Handy, und bei einem 6-8" Bildschirm fällt das nicht auf.

    Bei mir sind es weit mehr PC nutzer. Hängt wohl von ab welche Zielgruppe man bedient

  • De-M-oN

    Danke fürs Teilen deiner Einstellungen. Wofür sind die ...size Einstellungen (die ersten 3) gut? Und wieso nutzt du speziell level 6.1?


    Max-Bitrate auf 0 zu setzen hat bei mir denselben Effekt, wie es wegzulassen. Er nimmt wahrscheinlich irgendeinen automatischen Wert, der sehr niedrig ist. AV1 nutze ich in diesem Fall auch nur, weil ich aktuell Streams aufnehme, die ich eh mit 4:2:0 Chroma übertragen und damit auch aufnehmen muss, daher nehme ich gerne die Bildqualität für weniger Speicherplatzbedarf mit, die AV1 bietet. Wenn ich wieder normale Lets Plays aufnehme, würde ich vielleicht mal deine Einstellungen testen, da gehe ich wieder auf HEVC, um 4:4:4 Chroma aufnehmen zu können.



    Aber mal so generell: Der 08/15 Zuschauer wird sich nicht an der Qualität des Videos stören, 70% schauen Videos übers Handy, und bei einem 6-8" Bildschirm fällt das nicht auf.

    Da wirst du schon Recht haben. Aber iwie interessiert mich das einfach, was ich an Bildqualität für angemessenen Speicherplatz rausholen kann, um letztlich auch das bestmöglichste Quellmaterial für YouTubes Encoder zu liefern. Vielleicht ist es aber auch einfach eher technisches Interesse und Experimentierfreude.

  • Wofür sind die ...size Einstellungen (die ersten 3) gut?

    Höhere Maxwerte für RAM nutzung. Bei manchen Dingen hat er ohne die Angaben empfohlen davon was höher zu stellen. Ich hab dann einfach alle 3 auf maximum. Habe eh 64 GB RAM


    Und wieso nutzt du speziell level 6.1?

    Weil bei H.265 für 4k60 das Profil 5.1 reicht. Dieses jedoch hat ein Bitratenlimit von 40 mbit im main tier und 160 Mbit im High Tier und darf dann auch nicht mal von einem Peak überstiegen werden.

    Mit 6.1 High Tier sind 480 Mbit das Maximum und somit hab ich hier auch bei komplexestem Material nie ein Limit


    https://en.wikipedia.org/wiki/…o_Coding#Tiers_and_levels

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!