mplayer.sh BUGFIX für krumme Seitenverhältnisse

  • Mplayer.sh 0.8.3 spielte einige meiner DivX-AVIs nicht richtig. Diese habe krumme Auflösungen wie 316x238, da sie beim Aufnehmen und Kodieren beschnitten wurden (crop). Das Resultat war eine Y-Auflösung von 289, was der DVB-Karte natürlich nicht gefällt... ;)


    Die Lösung war folgende Anpassung der Funktion calcnewxy:

    Code
    if test $ORIG_X -gt 352 -o $ORIG_Y -gt $HALF_Y; then
        #MAX_X=$(($FULL_Y*$TV_ASPECT))
        MAX_X=$(($FULL_Y*$ORIG_X/$ORIG_Y))
      else
        #MAX_X=$((HALF_Y*$TV_ASPECT))
        MAX_X=$((HALF_Y*$ORIG_X/$ORIG_Y))
      fi


    (Ca. Zeile 250)

  • Hi,


    wie ich dir schon in der PM geschrieben habe, ist dieser "Fix" nicht in Ordnung, da damit das Auswerten der Aspect-Ratio des Fernsehers (4:3 oder 16:9) entfernt wird. Außerdem wird durch diesen Patch NEW_Y immer auf FULL_Y bzw. HALF_Y gesetzt.


    Schreib mir lieber mal in einer Mail, was eigentlich dein Problem war und schicke mal den DEBUG-Output des orginalen mplayer.sh zu, wenn du dein problematisches File abspielst.


    Gruß,
    Juri

  • Das Problem war, daß das Script NEWY auf 289 statt auf 288 gesetzt hat.


    Mit Debug-Output und so siehts jetzt echt schlecht aus, da ich den VDR nun meinen Eltern abgegeben hab.


    Ich kann mich aber an folgendes erinnern:


    ORIG_ASPECT=0.00000
    ORIG_X=316
    ORIG_Y=234
    MAX_X=352
    NEW_Y=289


    Mplayer wurde mit -expand=352:288 und -scale=352:289 aufgerufen.


    Die DivX-Filme, um die es geht, sind alte VHS-Aufnahmen von Videokassette, die gecropped wurden um schwarze Ränder zu entfernen.


    Ansonsten (siehe meine Mail) nutze ich ausschließlich das 4:3-Format.


    edit: Das Problem in den verwendeten Formeln ist, denke ich, daß bei krummen Videoformaten nicht exakt 4:3 Seitenverhältnis, also 1.333333 rauskommt, sondern Seitenverhältnisse wie 1.350815.....

  • Sorry, kann ich nicht nachvollziehen.


    Ich habe hier testweise die Werte für ORIG_X und ORIG_Y auf die von dir angegebenen Werte festgelegt. Ich bekomme immer Werte, die dann ein sinnvolles Abspielen ermöglichen:


    Für PAL:
    expand=352:288:-1:-1:1,scale=352:284


    für NTSC:
    expand=352:240:-1:-1:1,scale=352:236


    Die Aspect-Ratio des Films wird ansonsten nicht ausgewertet.


    Gruß,
    Juri

  • Hi Juri,


    das ist ein Teil des Problems das ich mal hatte, falls du dich erinnerst.
    eine weiteres problem sind stark gecropte, anamorphe filme (640x232).
    das gesammt problem ist aber wohl nicht lösbar.
    auch der mplayer kann das nicht perfekt, das in der doku erwähnte
    dvbscale gibt mir in solchen fällen auch nur einen schwarzen bildschirm,
    auf der mplayer ml gibt es dazu auch keine lösung.


    ich persönlich habe es mit good-guessing(tm) umgangen, d.h ich versuche die
    üblichen formate zu erkennen und in grenz fällen (575 oder 289) wird
    einfach der näherungs wert genommen. zusätzlich habe ich noch die möglichkeit
    den aspect ratio fest zu legen und dadurch die automatik aus zu schalten.
    aber das geht auch nur mit patchen um im osd eine möglichkeit der parameter wahl zu haben.(mplayer hat ja nur eine setup option, dort habe ich erweitert)


    Gruß MeMeD

    --
    viel spass am geraet
    ---
    AMD1100/512 # 200GB-VDR # 220GB-DIVX #
    1.3 Siemens # 2.1 Haupauge(primary) # RH 7.3

  • Hi !


    Zitat

    Original von jha


    wie ich dir schon in der PM geschrieben habe, ist dieser "Fix" nicht in Ordnung, da damit das Auswerten der Aspect-Ratio des Fernsehers (4:3 oder 16:9) entfernt wird. Außerdem wird durch diesen Patch NEW_Y immer auf FULL_Y bzw. HALF_Y gesetzt.



    Dieser Thread ist ja nun schon bisschen älter, aber trotz allem habe ich hier unter linVDR 0.6 mit MPlayer 1.0pre5 und mplayer.sh 0.8.4 noch immer genau die gleichen Probs.


    das mplayer.sh skript errechnet krumme Y-Auflösungs-Werte und das Abspielen klappt dann nicht.


    Der Patch von fred777 löst dieses Problem auch bei mir (auch wenn dann der TV_Aspect NICHT mehr ausgewertet wird)


    Gibts da inzwischen ne Lösung ?



    Bye, Markus



    PS: hatte vorher auch mal die mplayer.sh 0.8.5 probiert , die aber genauso immer abgebrochen hat.

    Hardware: MB Asrock B75 Pro3-M, CPU Pentium G2120, RAM 4GB DDR-3, 60GB SSD System, 3TB HD Data, GFX GT610 HDMI, CineS2 V6.5, IR-USBWakup + Logitech Harmony, MiMO Displaylink UM710S 7" Display
    Software: yaVDR 0.5 testing repo

  • ich verwende seit jahren spezielle,auf die seitenverhältnisse 4:3,16:9 und 20:9 abgestimmte mplayer.sh's.
    im menü befehle wähle ich das format aus und starte erst danach die wiedergabe.
    auf die art habe ich erstens keinerlei probleme mit der bildauflösung des videos (bis mir haben fast alle videos krumme seitenverhältnisse) und zum zweiten ereiche ich so die bestmögliche bildquallität für jedes format ohne das ich von rucklern heimgesucht werde.
    ich finde das immer noch die beste lösung denn autoerkennung des formats kann nicht zuverlässig funktionieren,egal wie mann es auch anstellt.

Jetzt mitmachen!

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