Probleme mit Quenc

  • Hi,

    ich hoffe, ich poste als Neuling im richtigen Forum :hm: Ich hab' 'ne Frage zu Quenc: Mein Ziel ist eine SVCD. Der Weg: DVDDecrypter-DVD2Avi-FitCD. Daneben: VObEdit: Ac3 demuxt-besweet(zu mp2). So weit, so klar. Wenn ich aber jetzt das avs in Quenc (0.52) lade und auf egal welche Bitrate gehe, dann ist die ausgeworfene m2v-Datei in bezug auf die Bitrate im Vergleich zur ursprünglichen vob quasi unverändert! :mad: Das sehe ich nach dem muxen (bbmpeg), wenn ich das File in PowerDVD mit eingeschalteter Info laufen lasse. Was mache ich falsch? Hab ich evtl. die avcodec.dll von Quenc nicht richtig eingebunden? Wo muß die hin? Quenc encodet zwar, aber praktisch läßt er das eingeworfene Videomaterial unangetastet! HILFE! Danke!

  • Pardon. Auffallend richtig. Dann will ich die gute Fee nicht im Regen stehen lassen...

    Ich hab meine settings (avs, quenc, bbmpeg) als zip rangehängt, stell's aber noch mal kurz dar:

    AVS:

    LoadPlugin("C:\Programme\tools\film\AviSynth 2.5\plugins\mpeg2dec3.dll")
    mpeg2source("C:\Programme\Output\movie\projekt.d2v")
    LanczosResize(448,416,11,0,698,576)
    AddBorders(16,80,16,80)

    Quenc:

    Mpeg2, Bitrate: 2000, vbr. Advanced: GOP-Size: 12, Max B-Frames: 2, DC-Precision: 8, Max Bitrate: 2200, AR: 16/9, Process Priority: Normal. Alles andere unverändert.

    bbmpeg (output settings, programm stream settings):

    SVCD, VBR, write program end code, timestamps: all frames, pulldown: auto, forced mux rate: 6972, pack options(size): 2324, packets: 1, Buffer sizes: 430 (video), 4 (audio1), 4 (audio2), Startup delays: alle 180 ms.

    Als Ergebnis bekomme ich nach dem Multiplexen unter bbmpeg u.a. folgende Meldung:
    NOTE: The resulting file may not play back correctly.
    Try reducing the video bitrate or increasing the video and
    audio startup delays.
    Finished multiplexing temp.mpg

    Ich versuch's ja! bbmpeg erkennt auch alles ganz richtig. Die ursprüngliche vob (61MB) wurde letztlich zu einer mpg-Datei (17MB) eingedampft. Mein Problem: Die Videobitrate wird (durch Quenc??) NICHT verändert (jedenfalls nicht laut der Info in PowerDVD), im Standalone ruckelt und pulsiert das Bild.

    Ich mach' irgendwas falsch. Aber was? Das alles unter Win XP. In bbmpeg komm ich nur über avi2mpeg2_vfw rein, denn der XP-Patch für bbmpeg hat bei mir nicht angeschlagen.

    Irgendwer (die Fee, die Fee) 'ne Idee?

  • Holla ... nun ist wirklich alles in der Kristallkugel zu sehen.
    Ursprünglich habe ich eigentlich auf ein Problem bei den QuEnc-Settings getippt, doch da scheint alles in Ordnung zu sein. Jedenfalls darf hier "Auto MaxBitrate nicht aktiviert sein - aber das hast Du ja auch nicht.

    (Außer die 16:9 - IMHO hat doch SVCD stets 4:3)
    Ganz am Rande : High Quality würde ich in jedem Falle noch einschalten u. ggf. noch Trellis.

    Mir fallen auf Anhieb 2 mögliche Ursachen ein :
    - Source ist Interlaced : Damit hat QuEnc angeblich noch Probleme
    - bbmpeg : Ich habe selbst nur einmal bbmpeg zum Muxen verwendet und damals gab es auch seltsame Effekte. Erst nach Änderung der Einstellungen hat es dann geklappt. Das war glaube ich etwas mit der "forced Muxrate" ?...

    Schon versucht mit TMPGEnc zu muxen ?

    Zitat

    Die Videobitrate wird (durch Quenc??) NICHT verändert

    Zitat

    Computed avg rate : 221250 bytes/sec (1770000 bits/sec)
    Computed max rate : 548900 bytes/sec (4391200 bits/sec)

    Die AVG-Bitrate auf jeden Fall, da ja das File von 61 auf 17 MB komprimiert wurde ... doch diese Max. Bitrate ???
    Um dies zu überprüfen würde ich den BitrateViewer verwenden.
    Wenn diese max. Bitrate wirklich vorhanden ist wird wohl der SAP deswegen Probleme haben. Es ist bekannt, daß QuEnc die MaxBitrate teilweise übersteigt .... doch in diesem Maß ist mir daß noch nicht untergekommen.
    Allerdings verwende ich QuEnc für DVD-Anwendung, SVCD muß ich mal testen.

    Obscura

    Nachtrag:

    Zitat

    SVCD muß ich mal testen.

    Ich habe leider momentan nur einen Horrorschinken auf der Platte, wovon ich 3 verschiedene Stellen (jeweils 7500 Frames = 5 min) ausgewählt habe.
    Die QuEnc-Settings sind exakt wie bei Dir - nur eben 4:3.

    Hier die Ergebnisse:

    erster Versuch : AVG 1587 - Max (Peak) 2173
    zweiter Versuch : AVG 1582 - Max (Peak) 2537
    dritter Versuch : AVG 1573 - Max (Peak) 2428

    Fazit : QuEnc überschreitet zwar die gewählten MaxBitrate-Werte, aber noch moderat. Du könntest folgendes versuchen : Nur die Stelle mit der höchsten Bitrate encoden mit +/- 2,5 min ( via Trim-Befehl z.B. Trim(37500,-7500) ins Script). Nun die Bitratenwerte in den QuEnc-Settings senken und Encoden.
    Auf diese Weise mal vorsichtig einem verwendbaren Wert annähern.
    Möglicherweise sollte auch der Abstand zwischen AVG & Max Bitrate größer sein ?
    Evtl. sieht bei 2Pass die Sache auch anders aus ???

    Mehr fällt mir dazu leider auch nicht ein. Außer statt QuEnc mal Packshot testen (siehe auch hier )

  • Hey, danke für die umfassende Antwort! Ich werd's ausprobieren, komm aber erst in den nächsten Tagen dazu. Dann geb' ich Bescheid und lass' was hören.

  • Ich hab' da auch noch etwas getestet :
    (HQ & Trellis Q. aktiviert)

    Vorgabe : AVG 2000 / Max 2000
    Ergebnis : AVG 1583 / Max 2373
    Qualitativ war das Ergebnis durchaus in Ordnung.

    Und nun wirds unlogisch .... AVG höher als maximale Bitrate - dürfte im Normalfall gar nicht funktionieren.

    Vorgabe : AVG 2400 / Max 1900
    Ergebnis : AVG 1505 / Max 2110

    Mit dem Absenken des Maximalwerts senkt QuEnc also auch die durchschnittliche Bitrate, unabhängig vom Vorgabewert.
    Besonders gut ausgesehen hat das Ergebnis auch nicht ... war irgendwie pulsierend verblockt.

    Nun die erste Einstellung mal im 2Pass-Mode :

    Vorgabe : AVG 2000 / Max 2000
    Ergebnis : AVG 1596 / Max 2371

    Also fast die gleichen Werte wie Singlepass .... sah aber sehr gut aus.

    Alle Daten sind mit Sicherheit nicht 100prozentig repräsentativ, da ja nur ein 5minütiger Ausschnitt bearbeitet wurde. Allerdings kann man schon Trends erkennen.
    Vermutlich braucht QuEnc relativ viel Spielraum in den Vorgaben, was bei DVD-Anwendung jedoch auch leichter ist. Evtl ist QuEnc (im derzeitigen Status) für SVCD kaum geeignet (Für VCD eignet er sich definitiv nicht, da CBR nicht funktioniert).
    Für die Vorbereitung authoringfähiger MPEG2-Files für DVD ist QuEnc allerdings ein echter Geheimtip. Selbst Half-D1 mit niedrigen Bitraten sieht (meiner Ansicht nach) sehr gut aus.Und das ohne die DVD-Spezifikationen zu verletzen wie es andere Verfahren mit ihren GOP-Spielereien nunmal tun.
    Noch eine kleine Info am Rande - via Batchprogrammierung kann man auch problemlos mehrere Filme hintereinander encoden lassen und via Shutdown-Befehl den Rechner auch ausschalten :D

    Obscura

  • Problem bei Qenc und bei allen Libavcodec basierten mpeg encodings ist, das die Ratecontrol im code gefixt werden muss. Dieser ist aber seit Februar diesen Jahres unberührt, also wird es bezgl. Bitraten leider immer noch unberechenbar chaotisch aussehen.

    Ich habe gestern beide Folgen von Mission Impossible encodiert, mit einer experimentellen Line (mencoder.exe), wo ich ebenso auch die minrate angegeben habe, neben avg und max. Beide Encodings waren vollkommen ok, so auch die Q curve.
    Demnach schien dies reines Glück zu sein.

  • kann ich eigentlich nicht bestätigen, dass auch der Mencoder sich nicht an die Bitratenvorgaben hällt. Ich hab ein Sample mit min 2000/avg 2300/ max 2500 encodet, und er hat sich unter Berücksichtigung des Buffers auch daran gehalten, lediglich die avg war einige kbit zu hoch, was aber auch am kurzen Sample gelegen haben kann.

  • Dann stimtts also doch, dass man eine vernünftige Q curve mit vrc_minrate beibehalten kann!

    Ich habe die letzten Wochen einige Filme ebenso OHNE Probleme in 1pass als auch 2pass mit minrate ohne Probleme enkodiert. Und dann kam KillBill1 dran und schwupps! Gleiche Commandline .... aber die Q curve ist aus allen Nähten gesprungen.
    Aber vielleicht war ich einfach zu müde an jenem Abend, was dann hat einen Fehler einschleichen lassen, wer weiss.

    Das mit den AVG ging mir genauso, lediglich (ist klar) bei 2pass hats hingehauen.

    Ich stehe mit den "guten" Ergebnissen bei KVCD momentan alleine da, da bei allen anderen mit Einbeziehen von vrc_minrate die Q curve verrückt spielt.
    Und von solchen Späßen wie Noise -Adding um eine minimale Bitrate zu garantieren nehme ich Abstand.

    Welche Line nimmst du? Die von deinem DoMencode? Aber da du in deiner GUI ja alles einstellen kannst, würde sie mich als "Quote" schon interessieren.

    Grüße
    Inc.

    PS: Ich frage mich aber dennoch, warum dann die Leuts vom Mplayer Team es bestätigen, dass die ratecontrol noch gefixed werden muss .... hmmmmm

  • folgende commandline hab ich verwendet:

    Code
    mencoder.exe -frames 1500 -ovc lavc -lavcopts vcodec=mpeg2video:keyint=15:vqblur=0:aspect=16/9:vbitrate=2250:vrc_maxrate=2500:vrc_minrate=2000:vqmin=1:mbqmin=1:lmin=1:vmax_b_frames=2:vratetol=1835:vrc_buf_size=1835:vb_qoffset=0:vpass=2 "D:\RB2\test.avs" -of rawvideo -o "D:\RB2\test.m2v"

    Allerdings ist die Q-Kurve im direkten Vergleich zu der ohne min. Bitrate wirklich um einiges schlechter (auch bei deutlich niedriger min. Bitrate, also muss doch noch was gefixt werden). Ich hatte zuerst nur auf die Bitraten geachtet, und ob die Grenzen auch nicht über/unter-schritten werden.

    Für welche Ziele macht es eigentlich Sinn, eine min. Bitrate anzugeben? Für (S)VCD und DVD ist es ja eigentlich nicht notwendig.

  • Hast du 1pass encodiert?
    Wenn ja, dann vesuche zumindest "vrc_eq=tex" mit einzubringen, denn das sollte (laut manual) eine Constant Quality ergeben.

    Diese Line habe ich als 1pass-test benutzt:

    Code
    "C:\Programme\MPlayer\Neuer Ordner\mencoder.exe" -of rawvideo -sws 9 -noskip -nosound -noaspect -noautoexpand -vf yuvcsp,crop=704:576:8:0 -ovc lavc -lavcopts vcodec=mpeg2video:vrc_eq=tex:vmax_b_frames=2:preme=2:precmp=2:vstrict=-1:vqblur=0:mbqmin=1:vqmin=1:vrc_buf_size=1835:vbitrate=2000:vrc_maxrate=8000:vrc_minrate=500:aspect=16/9:keyint=15:vqmax=8:intra_matrix=8,9,12,22,26,27,29,34,9,10,14,26,27,29,34,37,12,14,18,27,29,34,37,38,22,26,27,31,36,37,38,40,26,27,29,36,39,38,40,48,27,29,34,37,38,40,48,58,29,34,37,38,40,48,58,69,34,37,38,40,48,58,69,79:inter_matrix=16,18,20,22,24,26,28,30,18,20,22,24,26,28,30,32,20,22,24,26,28,30,32,34,22,24,26,30,32,32,34,36,24,26,28,32,34,34,36,38,26,28,30,32,34,36,38,40,28,30,32,34,36,38,42,42,30,32,34,36,38,40,42,44 -ofps 25.000 "VTS_05_1.VOB" -o "Mission2.m2v"


    Die Q curve benimmt sich wunderbar. Sehr effektiv und entsprechen im "Verhältnis" zur Bitrate. Also kein Chaos.
    Ich hatte mal Kwag die Line gegeben, aber bei ihm klappts nicht, hmmmm, die Q curve bei ihm fliegt in die Höhe und knallt ebenso schnell wieder runter. Bei 2pass würde bei ihm sogar die Q curve noch mieser aussehen. Was ich auch nicht bei diesem Film bestätigen kann.

    Folgendes ist mir aufgefallen:
    Wenn du lediglich 1pass mit gesetztem "vbitrate" nutzt, ist keine constante quality bei VBR gegeben. Der Encoder "versucht" die Vbitrate letztendlich einzuhalten, bedeutet, wenn dein FIlm am Ende wenig complex wird, wird er am Ende unverhältnismässig gut, da ja sodann genug Reserve vorhanden ist. Ist ja ganz nett aber uneffizient. Schlimm siehts natürlich aus, wenns anders herum ist, also wenns zum Ende hin extrem complex wird.
    Wenn du dir mal die Q curve ansiehst, wirst du es sehen.
    Dies habe ich nun versucht mit vrc_eq=tex zu handeln, mal sehen.
    Ebenso kann man versuchen vbitrate wegzulassen und mit lmin=x eine Art CQ Factor zu nehmen, also wie bei TmpgEnc. Also z.B. 2.34 etc.
    Das habe ich vor ein paar Tagen gemacht und ... wow! Hat funktioniert.
    Eine Prediction habe ich mit meiner Slicer() routine gemacht.
    Wenn dies die Lösung wäre (was noch absoult ungewiss ist), dann könnte man eine Prediction mit in eine mencoder GUI einbauen.

  • nein, ich habe die samples mit jeweils 2 pass codiert. Ich mache eigentlich immer 2pass, da ich CQ nicht besonders mag. Die Mencoder-Ratecontrol Funktion gefällt mir da besser, ist wohl eine Art Mischung aus CBR und CQ (also das in etwa der Mittelwert der beiden Q-Kurven gebildet wird). Leider verwendet der Mencoder dennoch in jedem Makroblock das gleiche Q-Level, mir würde es auch hier besser gefallen, wenn die einzelnen Blöke analysiert werden, und dann entsprechend quantisiert werden.

    edit:

    mit deiner Commandline ist die Q-Kurve auch mit einer min.Bitrate bei mir 'normal', sowohl bei 1pass als auch bei 2pass.

  • Na das ist doch mal nett zu hören.

    Du kannst dir nicht vorstellen, was für eine Diskussion ich z.B. bezüglich Color-Problems mit DialHot bei KVCD gehabt habe. Ich habe keine Farbverfälschungen, aber einige schon - und mencoder wars angeblich schuld .. hmmm.

    Problem bei KVCD war z.B. dass dort mencoder zwar wunderbar und unerbittlich getestet wurde, ABER sodann direkt "noobs" ankamen und Guides veröffentlichten, was in einem Disaster endete, weshalb wir entschieden haben, den mencoder Forum Teil zu "lock'en", bis dass die Sache Noob-Kompatibler ist (ratecontrol).
    Jene Guides brachten irre Probleme, da 80% der User nix mit den Streams anfangen konnten und vor allem konnten "jene" es nicht lassen Guides zu schreiben, wo ULBR SVCD Streams erzeugt werden sollen.

    Wenn denn nämlich vrc_minrate nicht gesetzt wird, kommen (bei manchen) buffer underflows vor. Manche Player können ja sogar mit Bitrate drops bis hin zu 64kbit umgehen, nur a) wie sieht das aus und b) manche Player kommen ins stocken.

    Da wurde MencodeME und seine Commandline Templates genutzt, ... wo dann die Templates natürlich verändert wurden ... oh Mann.

    Bei SVCD gehe ich (wenns geht) nie unter 300kbit und bei DVDs nicht unter 500 bzw. 800kbit.

  • dazu muss ich aber noch sagen, dass ich ein avs genommen hab und kein vob (als Quelle). Ob es dann Farbfehler geben würde, kann ich also nicht sagen. Generell ist mir aber aufgefallen, dass die Farben mit dem Mencoder etwas 'anders' sind, als mit CCE, aber nicht unbedingt schlechter.

Jetzt mitmachen!

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