[OBS Studio] Plötzlich Kodierung Überlastet beim Aufnehmen

  • Guten Morgen,


    Ich habe vor kurzem zwei Videos mit OBS aufgenommen eines sah nicht so gut aus wegen einer niedrigen Bitrate, als ich die Bitrate erhöhte kam ein Video raus welches auch gut aussah und auch gut klappte (20000 Bitrate, mp4 und als Encoder libx264) Jedoch klappte dies nur diesen Tag, am nächsten Tag wollte ich aufnehmen mit OBS und die Kodierung ist überlastet egal was ich mache.. Geändert habe ich nichts aber es klappt nicht, ein anderer Encoder geht nicht in Sony Vegas rein und bei den meisten kommt auch "Kodierung überlastet" Woran kann dies aufeinmal so plötzlich liegen?


    Mein System:


    Cpu: Intel E3 1231 v3
    Gpu: Radeon R9 280
    Arbeitsspeicher: 16 GB

  • Erhöhte Bitrate heisst mehr arbeit für die CPU. Und das kann je nach Spiel dann einfach zu viel werden für die CPU ;) das heisst eigentlich nur das deine CPU gerade 100% auslastung hat und unter umständen der Codec nicht mit dem kodieren hinterherkommt.



    Je nach Aufwendigkeit des bildes kann die benötigte CPU power für das Codieren ändern genauso wie es sich je nach Spiel ändern kann was das Spiel an leistung benötigt.



    auch andere einstellungen des Codecs können die CPU last beeinträchtigen wie z.b. der Preset oder die farb kodierung

  • Wie gesagt aufwendigere Bilder dann warscheinlich ;) Nur weil es das gleiche Spiel ist ist es nicht gleich aufwendig. Nach ner gewissen zeit kann es sein das mehr NPCs berechnet werden müssen oder ein Dschungel brauch mehr power als ne Höhle. Davon ab das hier auch dann der Codec viel mehr arbeiten muss. Ich würde einfach den Preset eins runtersetzen ;)

  • Eigentlich ist dies auch nicht so wirklich möglich, da es sogar schon im Menü überlastet, wo kann man denn den Preset eins runtersetzen? Finde nur ganz Vorschau deaktivieren..


    Ah habs gefunden, ändert das was an der Aufnahmequalität oder ist das nur für das vorschaubild? :)


    Habe es jetzt geändert und getestet, aber es bringt immer noch nichts, die kodierung ist immer noch überlastet und das bei einer leeren Lobby eines Servers..

  • Wie sehen denn deine Einstellungen genau aus (am besten mit Bildern)? Dann kann man mal schauen, ob da was nicht stimmt ^^

  • Wenn man Verlustbehaftet aufnehmen will z.B. für Streaming, dann sollte man in OBS den Farbraum NV12 nutzen mit der Farbmatrix BT.709 und für Gewöhnlich nutzt man dann auch einen limitierten Farbbereich (TV Range).


    Da Streaming relativ CPU lastig sind, hängt damit zusammen das während der Aufnahme die Aufnahme selbst live encodiert wird.


    Für x264 ist daher sehr relevant: Auflösung, FPS, Farbraum. Je größer diese Werte, desto Wahrscheinlicher ist es das die CPU zusammenbricht.


    Auch die Einstellung von x264 kann die CPU Nutzung überfordern. Immerhin muss die komplette Encodierung Live geschehen, während der Aufnahme.


    Zumal 20Mbit für Streaming ganz schön schon ist. Und das für eine Live Encodierung.


    Also x264 sollte bei einer Live Encodierung auf Ultrafast gestellt werden und die Bitrate entsprechend des Uploads entsprechen.


    Weil Kompressionsmechanismen benötigen CPU und dazu verbrauchen sie Zeit, die du einfach nicht hast. Kannst ja dein Speicher nicht voll laufen lassen wegen sowas. Vllt. kann man noch geringe Kompressionen verwenden wie mit Einstellungen von Superfast, etc.
    Aber auch das muss dein Rechner schaffen.


    Ideal wäre, wenn es dann lokale Aufnahmen sein sollen, diese Verlustfrei aufzunehmen. Halt wenn keine Live Aufnahmen sein sollen.
    Dazu kann man mit OBS Studio z.B. via FFmpeg auch Lossless aufnehmen. z.B. mit UTVideo oder Lagarith.


    Um das dann in Vegas laden zu können muss man sich die entsprechenden Codecs installieren.


    Lossless hat den Vorteil das es kaum Kompressionen nutzt. Daher sind Lossless Codecs auch ziemlich schnell und benötigen so gut wie gar keine CPU. Denn der geringe Teil an CPU der da einfließen tut, wird für die kleine Kompression genutzt. Und da es schnelle Kompressionstechniken sind, geht das sehr rasant.


    x264 kann ja auch Lossless aufnehmen. Dazu wird auch kaum CPU genutzt. Einstellung auf das Preset Ultrafast + eine Angabe in die Custom CommandLine mit qp=0.


    Das wird dein Vegas nur nicht lesen können, weil Vegas das High 4:4:4 Profile nicht einlesen kann von h264. Einfach weil dein Vegas mit den Codecs im Mittelalter von Win2000 noch lebt ^^


    Aber ich sag mal, auch dann wäre die Decodierung solch einer Aufnahme mit x264 extrem langsam.


    Daher der Rat, bei richtigen Aufnahmen einen entsprechend schnellen Encoder zu verwenden. Wenn du dann noch Qualität haben willst ist und bleibt ein Lossless Codec unabdingbar.


    Für Ein Lossless Encoder wie UTVideo oder Lagarith, stellt man bei OBS Studio den Farbraum min auf YV12. Denn NV12 kann UTVideo nicht erkennen und würde das Glatt als RGB aufnehmen. Farbmatrix ist klar mit BT.709. Also die gleiche wie YT auch. Und dann in TV Range aufnehmen am besten.


  • Das sind alle Einstellungen fürs Video aufnehmen, mit genau diesen Einstellungen hat es beim ersten Video geklappt, danach nicht mehr..


    @Sagaras mit DxTory nehme ich mit UTVideo auf, jedoch finde ich dafür auch keine Encoder Möglichkeit, YV12 kann ich als Farbraum nicht auswählen..
    Und zum Streamen nutze ich das normale OBS mit geringerer Bitrate, das dreht sich alles rein um aufnahmen hier in dem Thread. :)

  • Die Kodierung überlastet, weil x264 eigentlich gar nicht für lokale Aufnahmen gedacht ist. OBS ist in erster Linie eine Streaming Software.
    Und entsprechend so stellt man auch den x264 Encoder auch ein.


    Habe dir auch geschrieben was sich alles anhängt. Wenn du da eine 1080p Aufnahme mit 60FPS machen willst mit einer recht Kodierungslastigen Einstellung, ist das klar das die CPU zusammenbricht. Das würde sie ja schon bei einer normalen Encodierung mit MeGUI. xD


    Und OBS Studio wäre denke ich mal das bessere was du suchst: https://github.com/jp9000/obs-…udio-0.14.2-Installer.exe


    Da kannst du dann auch UTVideo nutzen als Aufnahme Codec über FFmpeg. Das wäre Verlustfrei und CPU schonender.


    Oder du nimmst weiter Verlustbehaftet auf, reduzierst die Bitrate mehr, hast am Ende eigentlich nur noch ein ekelhaftes Video, Encodierst es noch mal über Vegas und lädst das Ergebnis auf YT und hast am finalen Ende nur noch Brei. ^^


    Mehr CPU Aufwand bei mieser Qualität. Kann man machen, muss man aber nicht. ^^

  • Ich habe doch OBS Studio.. steht doch sogar im Titel.. zum STREAMEN nutze ich das alte OBS für die Aufnahme nutze ich OBS Studio.^^ Und wie ich geschrieben habe, habe ich als Auswahl nicht UTVideo, obwohl ich es bei DxTory z.B. habe, als Farbraum kann ich nur I402, I444 und RGB neben NV12 auswählen, jedoch wird mit nichts davon UTVideo sichtbar. Frage mich echt was bei meinem OBS Studio falsch läuft.. ._.

  • Ok wer kennst sich hier jetzt ganz genau mit OBS Studio aus, bitte einmal die Hand haben
    *Hand heb*


    Und nein De-M-oN ich rede nicht vom Encoding wissen, sondern sich selber schon damit Stundenlang auseinander gesetzt.


    1. OBS Studio ist noch nicht ganz ausgereift, daher hat es hier und da noch kleine Macken
    2. Als erstes stellst du die Ausgabe von ffmpeg weg und sagst OBS das es für x264 das preset=ultrafast nutzen soll und ganz unten kommt noch ein qp=0 rein.
    3. Test was er bei der Aufnahme sagt, nicht nur einfach den Desktop, sondern auch ein Fenster nehmen und dieses bewegen...


    Bzw einmal alle Einstellung als Bilder posten und damit meine ich auch bitte alle

  • als Farbraum kann ich nur I402, I444 und RGB neben NV12 auswählen, jedoch wird mit nichts davon UTVideo sichtbar.

    UtVideo findest Du unter den Codecs bei ffmpeg ^^ Container Format : avi --- Video Encoder: utvideo

  • Mit UTVideo und I420 Farbraum geht es, die Dateien werden wieder bei paar Sekunden 1 GB groß aber das bin ich ja gewohnt von FIFA XDD


    Edit: Zu früh gefreut, hab jetzt keine Sounddatei mehr die bei Sony Vegas Pro 13 hinzugefügt wird..
    Edit Edit: Habe jetzt als Audio Encoder PCM_alaw, dies funktioniert auch dann für Sony Vegas pro 13! :)



    Mit dem Streamencoder gibt es weiter probleme, die Kodierung ist bei I420 Farbraum nicht ausgelastet aber dafür ist das Bild nicht vorhanden..


    Einstellungen:




  • Mit UTVideo und I420 Farbraum geht es, die Dateien werden wieder bei paar Sekunden 1 GB groß aber das bin ich ja gewohnt von FIFA XDD


    Edit: Zu früh gefreut, hab jetzt keine Sounddatei mehr die bei Sony Vegas Pro 13 hinzugefügt wird..

    Audiocodec bei FFmpeg sollte sein: pcm_s16le (Pulse Code Modulation Signed 16bit Little Endian) (Das was üblicherweise in ein WAV Container kommt.)
    Wird dann zusammen mit UTvideo in ein AVI Container gespeichert.


    AC3 ist so ziemlich das schlechteste und ist auch nicht grad AVI Compatible glaub ich. ^^



    Mit dem Streamencoder gibt es weiter probleme, die Kodierung ist bei I420 Farbraum nicht ausgelastet aber dafür ist das Bild nicht vorhanden..

    Zum Streamen selbst sollst du auch NV12 nutzen und nicht i420.


    Die unterscheiden sich nicht in der Qualität, sondern in ihrem Aufbau als Farbraum. NV12 ist einfach schneller und performanter beim Aufbau, als i420.

  • Und warum nimmst du was schlechteres wieder? ^^ pcm_alaw ist kein Lossless, sondern ein Lossy Format. Bei FFmpeg wird das übliche G.711 A-Law verwendet.


    Telefone arbeiten damit noch. Bzw. alle ISDN Geräte. Das ist recht unterirdisch ^^


    G.711 bezeichnet ein max. 8000Hz und 8Bit spezifischen Audiotkanal.


    Das will man eigentlich nicht haben xD


    Du sollst pcm_s16le nutzen.


    Damit du auch die gewohnten Frequenzen und Bittiefen Verlustfrei aufnehmen kannst.
    z.B. 48000Hz, 16Bit, stereo


    Und das absolut mit mit Verlustfreien Samples/ Klängen.


    Zumal pcm_s16le (Signed 16Bit little Endian) eine sehr hohe Kompatibilität aufweist zu jedem Programm was WAV PCM laden kann.

  • Mittlerweile würde ich sogar eher in 32bit float aufnehmen, wenn man noch Audiofilter drüberjagt, da diese dann besseres Material zum Arbeiten haben. Denn auch wenn das Interface/soundkarte beispielsweise nur 24bit liefern - eine bittiefen hochrechnung ist zum Glück kein Verlust, was ich damals nicht wusste. Auch hat man dann ja mehr Spielraum für Clipping. Während 16bit max 96 db erlaubt, gehen bei 24bit schon 120 db und bei 32 bit float isses sehr sehr hoch.^^
    Nach der Aufnahme dann am besten mit einem Dreiecks Dithering auf 16bit gehen wieder. Bitte nur EINMAL dithern lassen (!)


    Auch sollte man dran denken, das die Audacity Filter nicht so das Wahre sind. Da macht Adobe Audition erheblich bessere Arbeit.

Jetzt mitmachen!

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