Hallo, Am Die, 02 Feb 2010, Al Bogner schrieb:
Am Dienstag, 2. Februar 2010 19:13:12 schrieb David Haller:
Am Mon, 01 Feb 2010, Al Bogner schrieb:
mencoder stream.dump -ovc x264 -x264encopts qp=27:threads=auto:pass=1 -vf crop=688:544:8:16,yadif=0,softskip,harddup,hqdn3d,unsharp=l:5x5:0.5 -nosound - of rawvideo -o /dev/null
Du mußt noch skalieren. Und den aspect-ratio setzen wenn's anamorph ist.
Habe ich alles probiert, vermutlich falsch oder die Optionen waren wirkungslos. Es waren keine extremen Eierköpfe und es sah eher nach einer Schlankheitskur aus ;-)
Zuerst eine Verständnisfrage:
Was bedeutet das: VO: [vdpau] 704x576 => 768x576 Planar YV12
Dein Monitor hat quadratische Pixel, um die nicht-quadratischen korrekt wiederzugeben wird die DVD-Auflösung auf die passende 4:3 Monitorauflösung skaliert. $ echo 'scale=5;704/576;768/576;' | bc 1.22222 1.33333
Welchen Wert verwendet man beim Skalieren?
http://de.wikipedia.org/wiki/DVD-Video PAL-DVDs (z. B. in Europa verwendet) bieten eine Auflösung von 704×576/720×576 Bildpunkten mit einer Bildfrequenz von 25 Hz
http://de.wikipedia.org/wiki/Pixelseitenverhältnis Bei der digitalen Speicherung von PAL oder NTSC kommen nichtquadratische Pixel zum Einsatz. Ein 4:3-Bild entspricht hier einer Auflösung von 702×576 (PAL) bzw. 702×480 (NTSC) Pixeln, wobei allerdings typischerweise 720×576 bzw. 720×480 Pixel-Bilder gespeichert werden. Auf Video-DVDs sind unter anderem die Formate 720×576 und 704×576 (wegen der Teilbarkeit durch 16) erlaubt.
Auf welchen Wert skaliert man nun mit mencoder, auf den quadratischen oder den rechteckigen?
Wenn du das Ergebnis konform auf DVD haben willst: auf 704x576 oder 720x576.
Wie skaliere ich richtig, sodass sich ein DVD-kompatibles Format ergibt, also 704 oder /20 x 576?
Croppe nicht wenn du eh wieder raufskalieren mußt, zumal du bei so nem krummen Faktor eh nochmal Qualität verlierst.
Leicht gesagt. An den Kanten beschädigte VHS-Bänder und / oder Spurlagenfehler will ich korrigieren. Man kann darüber diskutieren ob ein paar Pixel mehr weggeschnitten werden sollen. Ich achte darauf, dass es ein Vielfaches von 8 ist.
Ah, dann sollte man schwarze Ränder draus machen. Um wenige Zeilen/Spalten hochskalieren würde ich wg. dem Qualitätsverlust nicht.
Mit scaling fiel mir auf, dass es egal ist, ob ich auf 704x576 oder 720x576 rechnen lasse. In _beiden_ Fällen ergab sich: VO: [vdpau] 704x576 => 794x576 Planar YV12 Ich habe es mit und ohne aspect 4/3 probiert. Mit aspect war es noch mehr in die Breite gedehnt. Da passiert irgendeine automatische Korrektur.
Warum 794x576?
Fehler in der Reihenfolge, denke ich.
Ich würde also gern bei diesem Beispiel bleiben und dazu die richtige Skalierung finden oder eine Alternative mit ähnlichem Ergebnis.
Ich kann mir 2 Varianten vorstellen:
1) Es wird ein Rand weggeschnitten und auf 704x576 die Auflösung hochgerechnet. Das Ergebnis sollte so aussehen: VO: [vdpau] 704x576 => 768x576 Planar YV12 [zoom]
Am Rechner: ja.
2) Es wird der Rand weggeschnitten und der fehlende Teil mit einem schwarzen Balken ersetzt, d.h. es wird nicht skaliert. Das Ergebnis sollte wieder so aussehen: VO: [vdpau] 704x576 => 768x576 Planar YV12 [zoom]
_Wo_ setze ich die Skalierung ein. IMHO ist ja die Reihenfolge entscheidend.
Müßte ich jetzt auch ausprobieren.
Ich hatte folgendes mit einem 4:3 Original probiert:
mencoder stream.dump -ovc x264 -x264encopts qp=27:threads=auto:pass=1 -vf crop=688:544:8:16,scale=704:576,yadif=0,softskip,harddup,hqdn3d,unsharp=l:5x5:0.5 -sws 9 -nosound - of rawvideo -o /dev/null
Also zuerst crop, dann scale, dann Deinterlace, dann entrauschen, dann schärfen. Ist sws an der richtigen Position? Der Befehl läuft durch.
Flasche Reihenfolge denke ich.
Es wäre nett, wenn du einen kompletten Befehl anführen könntest, damit die Reihenfolge dann sicher passt.
Versuch mal folgendes (wenn's nicht passt: mail mir mal 30s oder so vom Ausgangsmaterial, bis 5 MB geht gut auch ohne Vorwarnung). mencoder -ovc x264 -x264encopts qp=27:threads=auto:pass=1 \ -vf yadif=0,softskip,harddup,hqdn3d \ -vf crop=688:544:8:16,expand=704:576,dsize=4/3 \ -sws 9 -nosound -of rawvideo -o /dev/null stream.dump Nachschärfen nur, wenn's besser ausschaut, den unsharp=l:5x5:0.5 dann am besten als letzten Filter. Achso, die Filter kannst du im pass=1 (zumindest teilweise weglassen). Also: mencoder -ovc x264 -x264encopts qp=27:threads=auto:pass=1:turbo=1 \ -vf yadif=0,softskip,harddup \ -vf crop=688:544:8:16,expand=704:576,dsize=4/3 \ -sws 9 -nosound -of rawvideo -o /dev/null stream.dump Ich schreib übrigens auch schon im pass1 auf Platte (und nicht nach /dev/null, erstens kann ich dann direkt die Größe nachgucken und zweitens werd' ich dann nicht erst beim pass=2 von ner vollgelaufenen Platte "uberrascht". Und grad bei x264 hat das wohl kaum Einfluß auf die Kodiergeschwindigkeit, daß da was weggeschrieben wird. Bei 'copy' komm ich auf der neuen Kiste auf selbst fast randvollen Platten noch auf >2k fps ;) mencoder -ovc x264 -x264encopts qp=27:threads=auto:pass=2 \ -vf yadif=0,softskip,harddup,hqdn3d \ -vf crop=688:544:8:16,expand=704:576,dsize=4/3 \ -sws 9 -oac copy -of mpeg -o foo.mpeg stream.dump Oder so. Weiß jetzt aber nicht so recht, inwieweit der Rauschfilter auf die errechnete Bitrate Einfluß hat. Bei der Kodierung nach QP ist aber generell eigentlich 1-pass ausreichend, 2-pass bringt da lt. Doku eigentlich nix. HTH, -dnh -- $max = [$a => $b] -> [ $a <= $b ]; ## Simon Cozens -- To unsubscribe, e-mail: opensuse-multimedia-de+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-multimedia-de+help@opensuse.org