SVCD Auflösung - Frage

  • Ok, ich hab mich durch diverse guides gelesen und schon einiges ausprobiert. Allerdings stehe ich immer vor dem selben Problem und finde keine Lösung.

    Aufgabe:

    Ich will einen mit VirtualDub gecapturten Film ins SVCD Format bringen.
    Ich stelle beim Capturen also 480x576 als Auflösung ein.
    Mein Bild ist nun stark in die Höhe gezogen, ist ja auch bei der Auflösung normal.

    Problem:

    Wenn ich nun in TMPgenc den Film auf SVCD 4:3 codiere, ist das Bild gequetscht. Die schwarzen Streifen sind dicker als sie eigentlich sein dürften. Siehe Bild:

    [Blockierte Grafik: http://www.step2ice.com/pics/capture.jpg]

    Was muss ich in TMPgenc einstellen, dass dieser Fehler nicht auftrit?
    Also ich stelle ja in TMPgenc keine neue Auflösung oder so ein. Ich behlate ja das SVCD Format 480x576 und gebe als Quelle 4:3 an.
    Ich verstehe nun nicht wieso da TMPgenc das Bild quetscht.

    Well, he's either dead or he's alive or the cops got him or they don't.

  • Tja, irgendwie lies es sich nicht lösen. Allerdings hab ich einen workaround gefunden.
    Sobald ich mit Full Pal 720x576 capture und auf SVCD runterrechne, klappts.
    Keine Ahnung warum, aber jetzt bin ich schon mal einen Schritt weiter.

    Well, he's either dead or he's alive or the cops got him or they don't.

  • Es kommt auf deine Karte an, die zu 90% keine 720 ITU konform digitalisiert.

    Daher: Was hast du für eine Karte? Wenns eine BT878 oder 7134 ist, dann lieber mit 704x576 .... oder direkt im SVCD Format 464x576 capturen (an die 464x576 kommen dann noch 8+8 pixels, damits 480 werden). So hast du wenigstens nur einen AspectRatio Error von bis zu 1% nachher. Denn bei deiner Methode oben (je nach Karte) werdens weitaus mehr an Aspect Error Wert sein.

  • Zitat von incredible

    Es kommt auf deine Karte an, die zu 90% keine 720 ITU konform digitalisiert.
    Daher: Was hast du für eine Karte?

    PCI WinTV von hauppauge.


    Zitat

    oder direkt im SVCD Format 464x576 capturen (an die 464x576 kommen dann noch 8+8 pixels, damits 480 werden).

    Also rechnet die Karte automatisch 8 pixel Höhe + 8 Pixel Breite dazu?

    Das wären ja dann 472 x 584. SVCD Format sollte aber 480 x 576 betragen.
    Oder werden die 8+8 als 16 zu der Breite gerechnet und somit 482 x 576?

    Well, he's either dead or he's alive or the cops got him or they don't.

  • Nein, die Karte rechnet nicht selber was dazu, sondern es müssen später noch links und rechts 8 Pixel angefügt werden - dann kommt man auf ... na? 480x576, was sonst bei PAL-SVCD? ;)

    464 + 16 = 480

  • Zitat von LigH

    Nein, die Karte rechnet nicht selber was dazu, sondern es müssen später noch links und rechts 8 Pixel angefügt werden - dann kommt man auf ... na? 480x576, was sonst bei PAL-SVCD? ;)

    464 + 16 = 480

    Ok, also mache ich dann einfach ein resize in TMPgenc und füge die 16 pixel in der Breite dazu.

    Besten Dank! :daumen:

    Well, he's either dead or he's alive or the cops got him or they don't.

  • Ok, jetzt verstehe ich aber was nicht ganz.

    Wenn ich die besagten 16 Pixel anfüge, habe ich ja links und rechts einen Schwarzen Rand. Wenn ich den dann wieder croppe, stimmt mein Format ja schon wieder nicht mehr.
    Also ich denk mal ich muss die Pixel in der Höhe einfügen um die Aspec Ratio nachzubessern.

    Well, he's either dead or he's alive or the cops got him or they don't.

  • Der schwarze Rand von jeweils 8 Pixeln (1 Macroblock) dient als TV-Overscan-Bereich. Die TV-Geräte stellen nicht alles dar, sondern schneiden etwas weg, was etwa diesen 8 Pixeln entspricht (sog. Overscan).

    Da man Bereiche, die man eh nicht sieht, auch nicht encoden sollte (kostet nur Bitrate), wird der sichtbare Bildbereich entsprechend verkleinert und der Rest mit schwarzem Rand aufgefüllt.

    Gruß, zisoft

  • Zitat von zisoft

    Der schwarze Rand von jeweils 8 Pixeln (1 Macroblock) dient als TV-Overscan-Bereich. Die TV-Geräte stellen nicht alles dar, sondern schneiden etwas weg, was etwa diesen 8 Pixeln entspricht (sog. Overscan).

    Da man Bereiche, die man eh nicht sieht, auch nicht encoden sollte (kostet nur Bitrate), wird der sichtbare Bildbereich entsprechend verkleinert und der Rest mit schwarzem Rand aufgefüllt.

    Ok, das habe ich jetzt mal kapiert. Und werde ich beim nächsten capturen berücksichtigen. :)

    Allerdings muss ich nun die Aspec Ratio korrigieren. Da sehe ich jetzt nur die Möglichkeit über resize. Oder gibts da noch ne Alternative?

    Well, he's either dead or he's alive or the cops got him or they don't.

  • :huh:

    480 Pixel Breite * 576 Zeilen Höhe sind die normale Auflösung für PAL-SVCDs.

    480 = 2/3 * 720

    Die korrekte "Ausgangs"-Auflösung beim Capturen wären aber eigentlich 704 (oder gar 702) Pixel Breite.

    702:16=43,875, 704:16 = 44,0; 720-704 = 16

    702 * 2/3 = 468; 468:16 = 29,25; 464:16 = 29,0

    Wenn man bei Auflösungen bleiben muss, die durch 8 oder gar 16 teilbar sind, dann muss man eben ein paar Kompromisse eingehen... Und in dem von Incredible genannten Fall sind die Abweichungen vom "korrekten" Seitenverhältnis eben recht gering.

    Bei "Seitenverhältnis" geht es übrigens nur um das Verzerrungsverhältnis, also auf Pixelebene. Fang bloß nicht an, Höhe und Breite des sichtbaren Bereiches zu dividieren, das hat damit gar nichts zu tun. Es gibt zwei verschiedene Sachen: "Pixel Aspect Ratio" und "Picture Aspect Ratio".

    Beispielsweise hat in einer nicht-anamorphen, geletterboxten Darstellung eines Breitbildfilmes der "sichtbare", interessante Anteil vielleicht ein Bild-Seitenverhältnis von 16:9; weil es aber nicht anamorph, sondern geletterboxt ist, entspricht das Pixel-Seitenverhältnis dem eines 4:3-Videos (~ 1,09:1). Man kann da durchaus durcheinander kommen...

  • Ok, ich bin nicht so das Mathe-As.
    Als erstes denk ich mal, wenn ich etwas in einer bestimmten Auflösung capture und dann in der gleichen Auflösung weiterverarbeite bzw. recode, muss es theoretisch 1:1 sein. Das ist es nun aber nicht.
    Zum Einen ist nun der Overscan dafür verantwortlich und zum Anderen hat TMPgenc da wahrscheinlich noch irgendwo eine Fehlerquote.
    Ok, also ich werde mir jetzt mal deine Rechnungen zu Gemüte führen.

    Nebenbei habe ich mir mal ein paar Papierstriefen an den fernseher geklebt, also da wo die Balken zu sehen sind. Ich vergleiche grad VHS zu SVCD und passe in 2 Pixelschritten an. So krieg ich's erstmal hin. Ist zwar ein bischen :seher: aber das Teil muss heut Abend fertig sein.

    Well, he's either dead or he's alive or the cops got him or they don't.

  • Vielleicht nur das wichtigste: Das Anfügen von Letterboxen oder das Abschneiden (Croppen) verändert das Pixel-Seitenverhältnis nicht. Und das Pixel-Seitenverhältnis ist das wichtige. Den Player interessiert nicht das Bild-Seitenverhältnis vom sichtbaren Anteil, sondern die Bitflags im MPEG-Datenstrom, die das Pixel-Seitenverhältnis definieren (und vielleicht noch die Gesamt-Bildfläche, inklusive Letterboxen).

  • Ok, Danke für die Aufklärung. Somit kann ich auch mit dem croppen nichts falsch machen.

    Mit 480 x 584 von ursprünglich 480 x 576 habe ich jetzt die Aspec Ratio mit Hilfe von Resize wieder hergestellt.
    Man, man, gar nicht so leicht das ganze Format Zeugs. Zumindest wenns um Analog nach Digital geht.

    Well, he's either dead or he's alive or the cops got him or they don't.

  • Nee, also jetzt hast du's nun völlig falsch gemacht:

    576 Zeilen bleiben 576 Zeilen. Ansonsten bringst du nämlich die Fields durcheinander! Resizing in der Höhe ist "Zehn Rohrstockschläge auf die Fingerspitzen" wert. Resizen in der Breite kann sinnvoll sein (dann aber um die richtigen Faktoren), aber mit den bereits von 'incredible' genannten Werten sollte nur noch Croppen und Letterboxen nötig sein.

    Bedenke, dass hier mehrere Faktoren eine Rolle spielen: Neben dem Verhältnis 2:3 spielt da auch noch ein zusätzlicher Faktor mit hinein, um den selbt ein 4:3-Fernseher das Bild noch minimal auseinanderzieht. Das haben schon so viele Leute nachgerechnet: Hier ist Vertrauen besser als jeder Versuch, den Taschenrechner zu bemühen.

  • Hmm... ok.
    Mein Problem ist aber, dass ich das file schon gecaptured habe. Somit kann ich die Empfehlung von Incredible (mit 704x576 .... oder direkt im SVCD Format 464x576 capturen) nicht mehr berücksichtigen.
    Ich muss das file jetzt aber irgendwie wieder in die richtige Höhe kriegen.

    Wenn nicht resize, was kann ich dann noch machen? Letterboxen links und rechts anfügen (abgesehen davon, dass ich gar nicht weiß wie ich das machen soll) will ich nicht -> schwarze Streifen.

    Well, he's either dead or he's alive or the cops got him or they don't.

  • Hab mich nun doch dazu durchgerungen, nochmal zu capturen.
    Jetzt noch eine Sache bevor ich's wieder versemmle.

    Ich möchte gerne links und rechts 2x croppen.
    Oben und unten solln's 12x sein.

    Wie mach ich das jetzt, das mir das Bild nicht in die länge geht.
    Muss ich da jetzt irgendwas anfügen (schwarze Balken x12 oben und unten) und wenn ja wie?
    Das ganze soll in TMPgenc passieren.

    Well, he's either dead or he's alive or the cops got him or they don't.

  • In AviSynth wär's vielleicht einfacher. Da gibt's u.a. folgende Befehle:

    AviSource() -- bzw. OpenDMLSource(), eher für große AVIs zu empfehlen
    Crop() + AddBorder() -- oder gemeinsam Letterbox()

    Dokumentationen findet man auf http://www.avisynth.org -- oder man wählt beim Installieren von AviSynth im Installer 2.5.5 b2 (auf http://sourceforge.net/projects/avisynth2 zu finden) auch die deutsche Dokumentation mit aus (allerdings ist die englische aktueller).

    AviSynth-Skripte (*.avs) sind reine Textdateien. Solange AviSynth installiert ist, kann man sie als Videoquelle verwenden und wie AVI-Datien im Encoder öffnen. Der Rest ist dokumentiert...

  • @ Step2Ice

    Da dies jetzt hier etwas an Übersichtlichkeit verliert und ich nicht alles nochmal von vorne lesen will *faul* ..... ;)

    In WELCHER Auflösung hast du nun effektiv gecaptured?


    EDIT:

    Zitat

    ... von ursprünglich 480 x 576....

    Da wird jetzt nicht die Sonne von untergehen, hauptsache du hast beim capturen nix gecroppt, denn die versch. Breiten stehen im Verhältnis zueinander, also sind lediglich skaliert durch den Treiber.

    Folge dem Ratschlag von Ligh und installiere dir Avisynth (beim Verarbeiten von Captures unerlässlich). Sodann erstellst du mit dem Windows Editor folgende Zeilen

    Code
    Avisource("P:\fad zu\meinem\Capture.avi")
    BicubicResize(464,576,0,0.6) # Bringt das "Ding" letztendl. auf gewollte 464x576
    Addborders(8,0,8,0) # Fügt re und li jeweils 8px dran, was dann 480x576 ergibt
    Letterbox(16,16,16,16) # Rundherum dann am Schluss einen 16px breiten Rand "drauflegen", da dies eh der Overscanbereich ist.

    Diesen text speicherst du im Textformat mit dem Suffix .avs ab und kannst sodann diese .avs Textdatei im Mediaplayer oder Vdub preview'en.

    Wenn sich das avs nicht Wiedergeben lässt, dann liegt am Ende wohl ein YV12 Farbraum vor (wenn du z.B. in Xvid gecaptured hast). Und um diesen Farbraum vom System dekodieren zu lassen, benötigst du eben einen YV12 decoder, wie z.B. XVID oder FFdshow (rate dir am Anfang aber eher zum Ersten)

  • Zitat von incredible

    @ Step2Ice

    Da dies jetzt hier etwas an Übersichtlichkeit verliert und ich nicht alles nochmal von vorne lesen will *faul* ..... ;)

    In WELCHER Auflösung hast du nun effektiv gecaptured?
    In welchem Format? (Avi oder mpeg2?)

    Die zweite Aufnahme hab ich mit deinen empfohlenen 464x576 (SVCD) durchgeführt. Das ganze liegt in 16 Segmenten als *.avi auf meiner Platte und wird mit TMPgenc weiterbearbeitet.
    Das Ergebnis sieht mit 464x576 ganz plausibel aus. Allerdings will ich noch den Videoflimmerstreifen wegcroppen. Dazu habe ich jetzt mal x12 oben und unten weggenommen. Angeblich soll sich das Format des Bildes dadurch ja nicht ändern.
    Ich denk mal, dass TMPgenc gleich nach dem croppen die schwarze Fläche wieder mit rein nimmt so das, dass Ausgangsformat wieder hergestellt ist. Oder lieg ich da falsch?

    Well, he's either dead or he's alive or the cops got him or they don't.

  • Habe oben meinen Beitrag Editiert.

    Wenn du mit 480x576 reingehst, dan belasse die "Bicubiresize"-Zeile. Wenn du aber mit 464x576 ins Avisynthscript reingehst, dann lösche diese "Bicubic..." Zeile.

    Schnibbel da nich so flott rum, wenns darum geht Flimmerzeilen etc. wegzubekommen!
    Nehme lieber den Avisynth Weg und die Zeile "Letterbox(..)" oben legt eben einen schwarzen Rand drauf, denn das ist genau das was du willst.

    Letterbox intern ist nix anderes als crop/addborders ... nur ist es leichter anwendbar.

Jetzt mitmachen!

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