Beiträge von Kayten

    @Julien
    Limitiert deine CPU? Wenn nicht, solltest du auch keinen wirklichen Unterschied merken.


    Zumindest was die CPU Auslastung betrifft, scheint der Performancevorteil übrigens größtenteils durch Verbesserungen an MagicYUV selbst zu kommen und nicht durch AVX2. Ist zwar auch kein aussagekräftiger Test, allerdings war meine CPU Auslastung mit MagicYUV 2.0 um die ~8% (ohne AVX2) bzw. ~10% (mit AVX2) niedriger als mit MagicYUV 1.2 bei 1800p, 60FPS, YUV420.
    Rein anhand der Prozentzahlen entspräche das bei mir einem Performanceplus von ~33%.
    Last in Darksiders lag bei ~20%, mit MagicYUV 1.2 bei ~60%, mit MagicYUV 2.0 ohne AVX2 bei ~52% und mit AVX2 bei ~50%.


    Hatte auch noch probiert eine der obigen Testaufnahmen von meiner SSD via VirtualDub zu dekodieren und auf das RAID0 schreiben zu lassen, mit dem Ergebnis, dass meine HDDs/SSD scheinbar zu langsam dafür sind.
    Wer aber einen nachvollziehbaren Test möchte, muss wohl nur noch etwas warten. Auf der MagicYUV Seite wird angedeutet, dass es dort bald einen gibt: https://www.magicyuv.com/artic…-benchmarking-done-right/

    Gibt nun eine neue Version, MagicYUV 2.0, welche mindestens $9 kostet und nochmal deutlich schneller sein sollte als MagicYUV 1.2, da unter anderem nun der AVX2 Befehlssatz der CPU genutzt wird, sofern verfügbar.
    Auf Intel Seite wird AVX2 seit Haswell unterstützt und bei AMD seit Carrizo und Zen.


    Abgesehen davon gibt es noch eine zweite "Ultimate Version" von MagicYUV, welche Unterstützung für 10, 12 und 14bit Farbtiefe bietet, welche aktuell für mindestens $14 zu haben ist.

    Kann es vielleicht sein dass sie die bitrate nicht erhöhen weil das PCIx Bandbreite kostet?
    Ich meine son lossless 4K stream muss ja erstmal von der Karte kommen

    Das ist definitiv kein Hindernis. PCIe 3.0 übertragt in der Theorie pro Lane ~985MB/s und Grafikkarten werden üblicherweise mit 16 davon angeschlossen, daher PCIe 3.0 x16 was in ca. 15.754 MB/s resultiert. Da davon aber noch ein gewisser Overhead abgezogen werden muss, gehen wir mal von pessimistischen 10.000MB/s aus.
    Selbst ein UHD 60FPS RGB32 Stream bräuchte unkomprimiert: 3840x2160 x 60 x 32 = 15.925.248.000bit/s = 1.990.656.000B/s = 1.944.000kB/s = 1.898,4375MB/s
    Das macht immer noch weniger als 20% von der obigen großzügig reduzierten PCIe Bandbreite aus. Sollte das Ganze nun noch auf der Grafikkarte kodiert werden, liegt die Bitrate nochmals deutlich darunter. Wenn ich mich nicht irgendwie versehen habe, wäre es also von der Bandbreite her überhaupt kein Problem. Gerade wenn man noch bedenkt, dass selbst heutige Grafikkarte mit minimalstem Performanceverlust in einem PCIe 2.0 x16 Slot betrieben werden können.

    Nur habe ich bei OBS zu oft einfach mal nur einen Schwarzen Bildschirm.

    Falsch eingestellt, bzw. nicht genug mit der Materie auseinandergesetzt.


    Da man ja als Quelle nicht Explizit ein Spiel auswählen kann.

    Man kann bei keinem Aufnahmeprogram explizit ein Spiel als Audioquelle wählen. Ist so bedingt durch Windows selbst.


    DerTS sound und mein Mic sind 1A nur das bzw die Spiele sind immer zu leise.

    Wenn es beides bereits eine Audiospur ist, kannst du daran nichts ändern, aber eben dafür kann man schließlich VAC/Voicemeeter nutzen, wie bereits erklärt wurde.

    Spiele nutzen idR. das Standardausgabegerät und welches das ist, lässt sich in Windows einstellen.
    Heißt du stellst das Standardausgabegerät auf irgendeinen virtuellen Ausgang von VAC/Voicemeeter, Problem gelöst.
    Um das Spiel dann selbst noch zu hören, stellst du VAC/Voicemeeter noch so ein, dass das Signal auf deine Kopfhörer (o.ä.) weitergeleitet wird.

    Ich mein mit dem OBS kann man sich dann ja auch 3 Spuren machen. Aber OBS spinnt bei mir zu viel rum. Ich nutze z ZT Action. Da kann man leider nur max 2 Spuren einstellen.

    Dxtory kann bspw. mehr als genügend Audiospuren aufnehmen und bei OBS Studio sind es auch 4. Startet man mehrere OBS Instanzen lassen sich auch mehr als 4 aufnehmen.

    Kann TMPGEnc nicht auch AviSynth Scripte verarbeiten? Was spräche dagegen dort die Skalierung vorzunehmen?
    Dass das natürlich die Encoding-Performance etwas drückt, sollte verständlich sein. Wäre da noch die Frage, ob das die Bearbeitung selbst zu sehr einschränkt.

    Ich würd FFmpeg nicht nutzen um Audiospuren zu extrahieren.
    Beim Extrahieren von PCM Spuren aus einer AVI benötigt VirtualDub ein paar Sekunden, während FFmpeg dafür mehrere Minuten in Anspruch nimmt. Qualvoll langsam. Im Gegensatz zu Dxtorys mitgeliefertem Tool lässt sich VirtualDub auch prima in automatisierte Abläufe einbinden, siehe SSM. Ist es etwas anderes als eine AVI, muss halt ein kleines AviSynth Script erstellt werden um das Video zu öffnen. Auch das kann automatisiert werden, siehe abermals SSM. Dass hierbei die Spuren allesamt in PCM umgewandelt werden dürfte verschmerzbar sein, da es sowieso bearbeitet werden soll.

    Es gibt allerdings einen Grund, warum ich doch eher zur 22VSL greifen würde: Der Equalizer.

    Dann sollte man allerdings auch anmerken, dass die 22VSL quasi den EoL-Status erreicht hat und das VSL Feature nicht mehr weiterentwickelt wird. Sollte der bisherige Treiber also auf irgendeiner zukünftigen Windows Version nicht mehr funktionieren, ist dieser Vorteil hinfällig.

    In deinem Fall sehe ich übrigens tatsächlich keinen Unterschied zwischen der 50FPS und der 60FPS Variante. Enttäuschend.
    Hatte mir da einen etwas anderen Effekt erhofft, den De-M-oN bereits erwähnt hatte. Bei 60FPS erwarte ich eine sichtbare Verbesserung bzgl. der Weichheit des Videos, was vermutlich u.a. daher kommt, dass sich das 60FPS Video perfekt mit der Hz-Zahl des Monitors (60) ergänzt und quasi ein VSync-artiger Effekt eintritt, sicher bin ich da aber nicht. Ich bin mal so dreist und verlinke eine meiner kürzlich getätigten Testaufnahmen, was so ziemlich das weicheste Video darstellt, was ich aufnehmen kann mit meinem PC. ^^
    Gerade bei Kameradrehungen sollten die 60FPS aus meiner Sicht gut sichtbar sein.

    Dafür aber Auflösung in shadowplay auf 2160p 4k stellen, statt spielintern, sonst nimmter bei 1080p nur 50 mbit auf, und bei 1440p nur 100 mbit, nur wenn man auf 4k stellt, nimmter in jeder auflösung in 130 mbit auch wirklich auf.

    Dafür brauchst du aber auch erstmal eine geeignete Grafikkarte. Bei meiner ist bei 1440p, 30FPS und 50mbit/s scheinbar Schluss. 60FPS gibts nur bei 1080p oder drunter. ^^

    Warum soll das uninteressant sein ?

    Weil dies nicht die eigentliche Performancebremse ist. Das Hooking in die Grafik-API frisst die FPS, nicht das Encoding. Meine CPU wird durch 1800p60FPS Kodierung via MagicYUV gerade mal zu 40% ausgelastet und trotzdem sinken die FPS teils rapide ab. Aus dem eben genannten Grund.
    Bei Nvidia gibt es dafür NvFBC und NvIFR, allerdings nur - wie man es vielleicht schon erahnt - wirklich nutzbar in Form von Shadowplay.

    Ich vermische nichts. Es hängt miteinander zusammen.


    AMF ist OpenSource und frei verfügbar. OBS nutzt über das Plugin AMF für GPU Encoding.
    Ist beides aber (relativ) uninteressant. Das eigentlich Interessante ist in dem Fall, ob die Capture Methode des AMD Aufnahmetools auch mit in AMF einfließt. Wenn ja, würde das quasi sämtliche Hooking-Methoden in Dxtory, MSI AB und OBS überflüssig machen, da alles über AMF laufen könnte.


    Aber solange ich es nicht sehe oder von anderen bestätigt bekomme, würde ich erstmal weiter daran zweifeln. Hätte nämlich noch ein paar andere Auswirkungen.

    AMF 3rd Anbieter

    AMF ist kein Drittanbieter-Tool, sondern kommt von AMD selbst. ^^


    dennoch gibt es doch ein boost grade wenn man evtl. streamen möchte.

    Das weißt du woher, wenn es noch nicht veröffentlicht wurde? Dass GPU Encoding existiert, ist ja bereits bekannt. Und das ist hoffentlich nicht die tolle "Neuerung".


    Edit: Hab mal eben die wichtige Stelle herausgesucht und hervorgehoben:

    Die letzte Neuerung ergibt dann den Namensgeber des neuen Treibers: AMD bringt mit "ReLive" ein eigenes Videocapture-Tool für Spiele und den Desktop, wobei AMD den Anwendungsbereich auch im professionellen Bereich sieht. Als Vorteile gegenüber anderen verfügbaren Capture-Lösungen betont AMD zum einen die Registrierungs-Freiheit sowie die geringen Performance-Anforderungen (laut AMD um die 3%) und bietet zum anderen umfangreiche Individualisierungs-Optionen an – welche man natürlich auch erst nach Release des neuen Treibers begutachten kann.

    Ist die Frage wie individualisierbar das Ganze nun wirklich ist und ob das über AMF auch für andere zur Verfügung steht.
    Vielleicht interessiert sich @De-M-oN da ja auch für. Wenn es für den professionellen Bereich einsetzbar sein soll, könnte ich mir zumindest vorstellen, dass es nicht ganz nutzlos ist.

    Für alle anderen auch noch mal:
    Nach ein paar PNs und Nachforschungen hat sich ergeben, dass OpenTTD keine der üblichen Grafik-APIs nutzt und alles über Software rendert. Demzufolge lässt es sich nur über die Bildschirmaufnahme aufnehmen, welche ihren Job scheinbar mehr schlecht als recht erledigt. Wobei der Schuldige aus meiner Sicht eher bei der Art der Desktopaufnahme zu suchen ist.


    Für die Interessierten: OBS Studio nutzt unter Windows die Desktop Duplication API um den Bildschirm aufzunehmen, welche meiner Erfahrung nach mit solchen Problem zu kämpfen hat. Selbst der Beispielcode von Microsoft dazu hat bei mir Standbilder erzeugt bei versuchter Aufnahme älterer Spiele, welche von den üblichen Aufnahmeprogrammen nicht gehookt werden können. MSI Afterburner nutzt nach meinem Stand ebenfalls die Desktop Duplication API für die Aufnahme des Desktops.
    Sollte da jemand also noch eine Idee haben, immer raus damit. ^^

    "Einstellung für 3D-Anwendungen verwenden" ist Standard. Heißt das, es nimmt das, was die 3D-Anwendung, also in dem Fall Civ6, ihm sagt? Also sprich: Ich bestimme das über die Einstellung, die ich InGame vornehme?


    Und wenn ich das jetzt auf "Ein" oder "Aus" stelle wird die GraKa die entsprechende Einstellung aus Civ ignorieren und immer das tun?


    Und was sind die Optionen für "Adaptiv"? Dann macht sie es, wie sie es für nötig erachtet, oder wie?

    Korrekt erkannt. Bei Adaptiv schaltet sich VSync nur an, wenn die FPS des Spiels über die eingestellte Hz-Zahl deines Monitors ansteigt. Zum Aufnehmen nicht zu empfehlen.


    Denn die FPS-Zahl, die wir bei Einstellungen-Video einstellen bezieht sich ja nicht auf das capture, sondern auf die Aufnahme, also auf die Datei, die dann auf der Platte landet, richtig?

    Effektiv bezieht es sich auf beides. Warum sollte man auch ein 25FPS Capturing in eine 50FPS Aufnahme packen? Der Mehrwert ist quasi gleich 0. Oder 100FPS capturen, wenn nur 50 gespeichert werden? Ist auch ziemlich sinnfrei.


    Das "Limitiere FPS der Aufnahme" bei OBS bezieht sich aber wieder auf das, was wir "capture" genannt haben, richtig?

    Gehört mit zu den Sachen, die ich nicht erklären kann. Ob nun aktiviert oder nicht, diese Option hat bei mir noch nie irgendwas bewirkt, von daher bin ich selbst gespannt auf eine genauere Erklärung. Falls diese Option vergleichbar ist mit Dxtorys "Synchronize Video FPS" oder dessen Framelimiter, was ich nicht glaube, wäre das Verständnis zumindest da.


    Edit:
    In dem vom Schauerland verlinkten Dokument stehts drin.

    Zitat

    Limit capture framerate : if checked, capture processing will be completed in fixed intervals, regardless the input can provide higher fps values.
    Tip: enable Limit capture framerate if you experience CPU overload with very high fps video rendering (for example, game source itself isn't locked at 30fps or rendered without vertical sync, and thus can run at 300fps instead).

    OBS captured standardmäßig also jeden Frame, egal ob dieser benötigt wird oder nicht. Wird diese Option nun aktiviert, verhält es sich nach meinem Verständnis wie andere Aufnahmeprogramme auch - nur das Nötigste capturen. Ist VSync aktiv bei 60FPS und die Aufnahme-FPS ebenfalls auf 60, sollte diese Option eigentlich keinen Effekt haben. Sehe aber keinen Grund, warum das standardmäßig nicht aktiviert ist?

    Deine Einstellungen sind schlicht mies. Ich frag mal besser nicht, wer dir diese empfohlen hat.


    Alles unter "Erweitert" umändern auf:


    RendererDirect3D11
    FarbformatNV12
    YUV-Farbmatrix709
    YUV FarbbereichBegrenzt


    Gerade den Renderer auf OpenGL zu belassen, ist unter Windows sinnlose Performanceverschwendung.


    Folgendes geht zwar eher in Richtung Videoqualität, könnte aber die CPU entlasten:
    Desweiteren nimmst du verlustbehaftet mit konstanter Bitrate auf. Zum Aufnehmen ist konstante Bitrate bei dieser Einstellung ungeeignet, wenn du auch nur ansatzweise Wert auf Qualität legst. Solltest du dein Video nach der Aufnahme direkt hochladen wollen, wäre ein Wechsel der Qualitätregulierungsmethode unter Ausgabe auf CRF mit einem Wert von 21 oder geringer angebracht (geringer = besser). Für geringere CPU Belastung (und größere Dateien), sollte die Prozessorauslastung-Voreinstellung auf etwas höheres als veryfast gestellt werden. Nicht empfehlenswert bei CBR, dadurch würde die Qualität noch weiter verringert werden.
    Solltest du dein Video nachbearbeiten, hast angemessen viel Speicherplatz und eine separate Aufnahmeplatte zur Verfügung, solltest du verlustfrei aufnehmen wie es dort erläutert wird: OBS Studio - Verlustfreie Aufnahme & Sammelthread