2:2 pulldown mit mencoder

  • Hallo,

    nachdem ich mir heute einen Wolf gesucht habe mit den obigen Stichworten und nach vielen nervenaufreibenden Versuchen und Fehlschlägen mit telecine, ntsc und vielen verbrannten Rohlingen hier was ruckelfreies auf meinem Player/Fernseher zu produzieren habe ich nun folgendes gefunden, was vielversprechend aussieht und möchte das denen, die nach mir danach suchen (und wahrscheinlich aus diesem Forum hier viel Wissen herausziehen, so wie ich auch (danke dafür!)) nicht vorenthalten:

    Code
    mencoder -speed 25025/24000 -ofps 25 -ovc copy -oac pcm -srate 48000 film_23976.avi -o pal_25000.avi

    Das obige schaut für mich als Ausgangspunkt schonmal sehr vielversprechend aus und soll den input für mein normales SVCD-Script produzieren. Als nächstes werd ich versuchen den speed-up direkt dort beim mpeg-encoden bei Bedarf gleich im selben Abwasch mit einzubauen. Anzumerken ist, dass -oac lavc nicht zu funktionieren scheint, egal mit welchem audio codec. -oac mp3lame und twolame hab ich spasseshalber mal probiert, scheinen zu gehen. -oac copy produziert etwas, was von der Geschwindigkeit her stimmt, aber irgendwie komisch klingt was natürlich kein Wunder ist und wahrscheinlich kann man grundsätzlich beim Resamplen noch was an der Methode/Qualität einstellen.

    Bernd

    PS: Das Posting könnte man auch in die Windows-Abteilung kopieren/verschieben, da gibts ja afaik auch den mplayer/mencoder. Wär auch einen Punkt in der FAQ wert, das Thema wird sehr stiefmütterlich (bis gar nicht) behandelt.

    Stichworte für Tante Google:
    mencoder
    2:2-pulldown
    PAL Speed-Up
    PAL-Beschleunigung

  • :welcome:

    Mit mencoder geht das sicherlich ganz gut unter Linux...

    Unter Windows würden viele allerdings wohl eher AviSynth verwenden, weil sie während der Umandlung dann auch gleich noch das Bild filtern können. Es läßt sich bei AviSynth auch recht ordentlich steuern - je nach dem welche ...FPS-Funktion man verwendet und welche Parameter man angibt - wie der PAL-Speedup technisch abläuft: Brutale Bildverdopplung oder weichgekaute Überblendung; sogar das Halbsekunden-Fieldshifting kann man nachbauen.

    scharfis_brain hatte mal eine umfassende Website, welche Normwandlungsroutinen es gibt, und wie man sie in AviSynth nachgestalten kann. Ist dann leider als "veraltet und teilweise ungenau" verschwunden.

    Übrigens: Nettes Verhältnis 25025/24000; bisher ging ich eher von 25000/23976 aus. Allerdings ist die Differenz sehr gering, und ich weiß nicht genau, wie exakt die 23,976 (bzw. 29,97*4:5) fps bestimmt wurden. NTSC ist für mich eigentlich nur der Beweis, dass Ingenieure nicht von 0 an zählen konnten -- auch wenn die Ursache für die gebrochene Framerate dann doch etwas anders lag (Vermeidung noch schlimmerer Farbinterferenzen)...


  • - wie der PAL-Speedup technisch abläuft: Brutale Bildverdopplung oder weichgekaute Überblendung; sogar das Halbsekunden-Fieldshifting kann man nachbauen.

    Das wäre beim mencoder -mpegopts film2pal
    und resultiert in einem doppelten (als doppelt markierten weil "soft") Feld alle 12 Frames, aber das ist ja das, was ich gerade vermeiden wollte. Und wenn ich keinen Pulldown mache sondern den Film so wie er ist mit 24000/1001 encode und brenne, dann machts der Player von sich aus wenn er es in PAL umwandelt oder der Player macht 2:3 auf NTSC und der Fernseher vermurksts dann nochmal wenn er das NTSC dann auf seine 100Hz bringen will. In jedem Fall ists ein übles Geruckel, zumindest bei meinen Gerätschaften hier.

    Mit obiger Zeile wird der Film hingegen einfach nur 4% kürzer (schneller) und der Ton wird resampled und wird einen Halbton höher, dafür bleiben alle Frames wie und wo sie sind. Das ist mir hundert mal lieber als dieses unerträglich elende Geruckel.

    Demnächst solls wohl auch einen neuen Audiofilter "scaletempo" in mplayer/mencoder geben, der könnte für den Ton behilflich sein.


    Übrigens: Nettes Verhältnis 25025/24000; bisher ging ich eher von 25000/23976 aus. as avi

    Du unterschlägst ein paar Nachkommastellen. Das Verhältnis ist genau
    25 / (24000/1001)

    Bernd

  • Dann wäre das in AviSynth "AssumeFPS().ChangeFPS()", mein Fehler: der "Speedup" war ja gewünscht... :redface:

    Es war halt spät in der Nacht.

    Gut - für die Beschleunigung der Tonspur würde man evtl. BeSweet auf die demultiplexte ansetzen; ohne Klangerhöhung eventuell mit dem SoundTouch-Plugin. AviSynth hätte auch Funktionen parat: SSRC() bzw. TimeStretch().

    Ärgerlich ist in dem Fall nur, dass bisher noch kein qualitativ hochwertiger AC3-Encoder für BeSweet verfügbar ist, und man für Aften als zusätzlichen AC3-Encoder große WAV-Dateien herausgeben müsste... Wie gut ist denn der AC3-Encoder in mencoder, v.a. was die Dynamik angeht? Auf gleichem Level wie AC3Enc in BeSweet, denke ich?

    Daher muss man eben auf hohe Audioqualität verzichten, wenn man den Speedup verwendet, oder auf hohe Bildqualität, wenn man die Tonspur erhalten will - aber beides gleichzeitig geht einfach noch nicht.


  • Dann wäre das in AviSynth "AssumeFPS().ChangeFPS()",
    Ärgerlich ist in dem Fall nur, dass bisher noch kein qualitativ hochwertiger AC3-Encoder für BeSweet verfügbar ist, und man für Aften als zusätzlichen AC3-Encoder große WAV-Dateien herausgeben müsste... Wie gut ist denn der AC3-Encoder in mencoder, v.a. was die Dynamik angeht? Auf gleichem Level wie AC3Enc in BeSweet, denke ich?

    Speed-up und encoden mit dem lavc ac3 oder irgendeinem anderen lavc codec gleichzeitig hab ich nicht hinbekommen wie ich oben schon schrieb, deshalb gibts bei obigem Aufruf erstmal den Ton als PCM und die Datei wird doppelt so gross, aber das macht IMHO nichts, denn was sind heute schon ein paar hundert MB die man hinterher wieder löschen kann.

    für den durchschnittlichen divx Film mit mittelmäßigem mp3 ton wäre die ultimative Killer-Kommandozeile:

    Code
    mencoder -speed 25025/24000 -ofps 25 -ovc copy -oac mp3lame -srate 48000 -af-adv force=5 film_23976.avi -o pal_25000.avi

    heraus kommt wieder ein divx mit mp3 ton, der bestimmt nicht viel schlechter ist aber ohne Ruckeln auf dem heimischen Player läuft.

    Bernd

Jetzt mitmachen!

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