Q9550 beim 1pass nur 45% Cpu Auslastung

  • hallo

    habe mir besagten prozessor gekauft.

    beim auto2pass mit turbo für den 1.pass nutzt die cpu nur 45%. quelle ist ein bluray-m2ts. im 2ten pass nutzt er dann 100%.

    bei dvd material nutzt er im ersten durgang ca. 60% und im zweiten ca. 85%.

    avisynth2.57 ist installiert. (sollte ich updaten?)

    woran könnte das liegen? wenn noch weiter informationen benötigt werden einfach sagen.


    hubble

  • Spontan: am verwendeten Avisynthskript und an Deinen x264 Einstellungen,...

    das avs sieht so aus


    loadplugin("D:\Windows\Programme\Videobearbeitung\Muxer-Demuxer\dgavcdec\dgavcdecode.dll")
    avcsource("00000.dga", deblock=false)

    crop( 2, 130, -2, -130)

    LanczosResize(1536,656) # Lanczos (Sharp)

    die x264 settings habe ich als zip angehangen

  • Meine Gedanken dazu,...

    Settings in Megui geladen gibt:
    Für den 1st pass:

    Code
    program --pass 1 --bitrate 5320 --stats "D:\sx264\test.stats" --keyint 50 --min-keyint 1 --subme 2 --partitions none --qpmin 5 --qpmax 22 --ratetol 2.0 --me dia --merange 32 --threads auto --thread-input --sar 1:1 --progress --no-psnr --no-ssim --output NUL "input"

    und für den 2nd pass:

    Code
    program --pass 2 --bitrate 5320 --stats ".stats" --keyint 50 --min-keyint 1 --ref 5 --mixed-refs --subme 8 --partitions p8x8,i4x4,p4x4,i8x8 --8x8dct --qpmin 5 --qpmax 22 --ratetol 2.0 --me umh --merange 32 --threads auto --thread-input --progress --no-psnr --no-ssim --output "output" "input"


    Auch wenn auch wenn ich einiges anders einstellen würde, sollten die x264 Settings nicht das Problem sein, da nur die --merange Einstellung und die Quantizer Einschränkungen den 1st pass etwas langsamer machen sollten als normal. Multithreading sollte davon aber nicht betroffen sein.
    -> x264 sollte nicht der Flaschenhals sein.
    Da das Avisynthskript auch nicht besonders exotisch aussieht vermute ich, dass Dein Problem einfach am Decoden an sich liegt. (Dazu eine Anmerkung: Warum deaktivierst Du das 'deblocking' ? Da es sich beim Deblocking in AVC um einen festen Bestandteil des Codecs und nicht um ein simples Postprocessing handelt, wie z.B. bei Mpeg-4 ASP, ist es eigentlich nicht ratsam es zu deaktivieren.)

    Cu Selur

  • dgavcdec kann bislang nur einen Prozessor-Kern nutzen, ist aber präzise bei Schnitten.
    Verwende DshowSource() mit ffdshow (und darin gleich Resize) und du kommst auf Volldampf.

  • Du möchtest mit der MeGUI a) ein Original decodieren und b) eine Kopie encodieren.

    In der MeGUI kannst du für das b) Encodieren der Kopie die Deblocking-Stärke einstellen. Aber wenn du es im Skript ausschaltest, dann wird es für das a) Decodieren des Original-Videos deaktiviert, und das beeinflusst die MeGUI nicht.
    __

    DirectShowSource empfehlen wirkliche Profis grundsätzlich nicht, wenn ein spezifischer Source-Filter existiert, weil ein DirectShow-Decoder vor allem eher schnell statt exakt arbeiten muss, und man (allgemein) keinen Einfluss auf Decoder-Optionen hat.

    In diesem Board geht es um qualitativ optimale Ergebnisse. Nichts gegen Geschwindigkeitsoptimierung - aber nur solange die Qualität darunter nicht leidet.

  • Richtig, LigH! Willst mich bei meiner Profi-Ehre packen? :D
    Aber... in ffdshow kannst du wirklich das bisschen einstellen, um ein HD vernünftig zu dekodieren. libav lässt grüßen. (Das benutzt auch ffmpeg.) Allerdings nur, solange man keine Sprünge vor/rückwärts im Skript macht (und keine temporären Filter). Dann stolpert die Dekodierung wegen fehlender Indexierung. Bestes Beispiel ist, mit VirtualDub einen Punkt anzuspringen - jedesmal bekommt man einen anderen Frame, weil man keinen Indexpunkt erwischt, von dem ab wieder richtig dekodiert werden kann. (dgavdec legt deshalb mit .dga eine Indexdatei an)
    Linear abspielen/dekodieren funktioniert jedoch mit ffdshow richtig. Die dekodierten Frames sind mit denen von dgavcdec identisch - vorausgesetzt das Avisynth-Skript stimmt. Das habe ich mehrfach getestet.

    hubblec4
    Dual-core (Doppelkern-) Prozessoren können Aufgaben parallel bearbeiten - wenn die Software es benutzt.
    Die AVC Dekodierung ist schon schwierig genug. dgavcdec kann bisher nur einen Prozessorkern zur Dekodierung nutzen - so Donald Graft (neuron2).
    Deshalb kommt man nicht auf Vollast im modernen PC- mehr wollte ich nicht sagen.
    Dafür kann man aber im AviSynth-Skript damit alles Mögliche anstellen. Es wird immer framegenau dekodiert.

    DirectShowSource() ist in Avisynth beschrieben und bedarf doch einiger Erfahrung. Man muss z.B die Priorität der Filterkette so eingestellt haben, dass ffdshow auch zum Zuge kommt, wenn DshowSource() aufgerufen wird. Das Thema übersteigt aber diesen Thread..

    5 Mal editiert, zuletzt von fz1 (4. Februar 2009 um 16:51)

  • @ fz1:

    Die Erklärung war auch eher für die Nutzer gedacht, die darauf vertrauen, dass das schon irgendwie funktioniert, aber nicht wirklich wissen, welcher Decoder mit welchen aktuellen Einstellungen da tatsächlich werkelt.

    ffdshow als Decoder kann man in der Tat recht genau auf seine Bedürfnisse einstellen.

  • hubblec4
    Klar! Im pass1 wird dekodiert, analysiert und die stats Datei gespeichert, aber nicht voll enkodiert.
    Bei pass2 geht es dann richtig zur Sache mit der Kodierung, das macht x264. Im CRF Modus wird auch voll kodiert.
    Somit ist klar, warum du in diesen beiden Fällen 100% Auslastung erhältst. Die x264-Kodierung schluckt als Prozess den Löwenanteil an Prozessorleistung.

    Einmal editiert, zuletzt von fz1 (4. Februar 2009 um 19:26)


  • (Dazu eine Anmerkung: Warum deaktivierst Du das 'deblocking' ? Da es sich beim Deblocking in AVC um einen festen Bestandteil des Codecs und nicht um ein simples Postprocessing handelt, wie z.B. bei Mpeg-4 ASP, ist es eigentlich nicht ratsam es zu deaktivieren.)

    Cu Selur

    hierzu nochmal eine frage.

    wenn ich mit dem AVS-script-Creater ein *.d2v file lade, kann man unter Filter-> Mpeg Options auch Mpeg Deblocking aktivieren. ist aber nicht standartmäßig angehakt. sollte man es anschalten??


    hubble

  • Im Allgemeinen ist das Deblocking in der Funktion "MPEG2Source" durchaus zu empfehlen, weil der Decoder die Stärke des Deblocking-Filters der Quantisierung des Materials anpassen kann. Sprich: Grobe Quantisierung (wegen beschränkter Bitrate) => stärker sichtbare Blöcke => stärkerer Deblocking-Filter.

    Der MPEG2-Deblocking-Filter in DGMPGDec läßt sich gut konfigurieren. Durch die Parameter "CPU" und "CPU2" kann man zunächst einstellen, ob überhaupt Blockartefakte gefiltert werden sollen (separat je für die Helligkeit und Farbigkeit, je waagerecht und senkrecht), und ob Ringartefakte an Kanten unterdrückt werden sollen (in der Helligkeit und in der Farbigkeit). Wem das Deblocking zu stark oder zu schwach für seine spezielle Quelle ist, der kann darüber hinaus die Threshold-Werte anpassen.
    __

    Eine so feine manuelle Anpassung erlaubt DGAVCDec nicht. Das dürfte allerdings auch an dem komplexeren System im AVC-Standard begründet liegen.

  • DGIndex.exe erzeugt nur eine Index-Datei, wo die Frames bzw. GOPs im Datenstrom beginnen, damit der Decoder (DGDecode.dll) leichteren Zugriff hat. Ich gebe allerdings zu, dass ich den betreffenden Dialog in der MeGUI nicht kenne, ich bearbeite AviSynth-Skripte lieber manuell. Daher ist meine Empfehlung eher unabhängig von GUIs.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!