komische Artefakte bei zahlreichen xvids

  • Hallo,


    ich habe seit kurzem ein Problem mit meinem VDR mplayer, aus dem ich nicht schlau werde.


    In ganz vielen xvids aus dem "letzten Monat" habe ich das Problem, daß der mplayer wilde Sound Artefakte produziert. Ein lautes Quietschen und elektronisches Kratzen, daß es kaum auszuhalten ist. IdR. hängt er sich dann nach ~5-10 Sekunden auf.


    Die Dateien spielen in jedem anderen Player beispiellos ab (zplayer, VLC, auch mplayer für Windows). Einen Hinweis habe ich vor kurzem gefunden, wenn ich die Dateien in Virtual Dub 1.5.10 lade und entlang scrolle, zeigt er mir in der Statusleiste an "Error decompressing video frame x: An unknown error occurred (may be corrupt data). (error code -100)". Diese Frames gehen etwa 1-3 sec. und dann ist es vorbei. Wenn ich diesen Abschnitt rausschneide, läuft das xvid perfekt im mplayer.


    Allerdings gibt VirtualDub 1.6.0 diese Meldung nicht mehr aus. Ich hatte erst gedacht, daß es sich wirklich um einen Defekt handelt, aber in der Häufigkeit wie es passiert und das regelmäßig pro Woche seit Ende September dazu immer gleich in den ersten Sekunden, denke ich daß es sich evtl. um eine neue Codec Eigenschaft hat, mit der der VDR mplayer noch nicht klarkommt.


    Das ist zwar nicht ein brauchbares Indiz, aber G-Spot zeigt bei den Codec Optionen der quietschenden Clips immer B-VOP als aktiv an. Es gibt zwar auch B-VOP Clips die nicht gequietscht haben, aber es gab auchnochkeinen ohne. Wenn ich mit Virtual Dub allerdings diese Frames rausschneide und per "Direct Stream Copy" (also ohne Neukodierung) dann ist B-VOP als Option weg.


    Ich verwende MPlayer 1.0pre3 von LinVDR 0.6 und kann mir keinen Reim darauf machen.


    Jemand eine Idee, woran es liegen könnte?


    danke

  • hi,
    (ich stelle mal vermutungen an!)
    du hast das schon richtig erkannt, es liegt an den B-Frames.
    aufgrund des "alters" von linvdr06 kann ich mir kaum vorstellen das da bereits xvid 1.02 dabei ist. aus dem changelog:

    Code
    Fixed non compliant bvop decoding (was using rounding=0 instead of rounding=1)


    um das problem zu beheben brauchst du einen neune xvid codec (libxvid.so) und auch den mplayer passend darauf compiliert.

  • danke für die sehr hilfreiche Einschätzung.
    :)


    Ich habe mir mal die aktuelle CVS Version des MPlayers geschnappt und kompiliere gerade auf einem flugs zusammengestellten linvdr DEV System (mit den Parametern configure --prefix=/tmp/mplayer --disable-x11 --disable-xinerama --disable-fbdev --disable-vesa --disable-tga --disable-jpeg --disable-ftp --disable-network --disable-edl --disable-tv --disable-mpdvdkit --enable-runtime-cpudetection --disable-mencoder --enable-largefiles --disable-png --disable-vidix).


    Da sind dann auch auf jeden Fall die neuen Codec dabei, oder brauche ich noch eines der seperaten Codec Packs?


    Jetzt frage ich mich nur noch, was ich von den kompilierten Dateien jetzt auf mein Produktivsystem rüberschieben muß? Wollte auch gleich den aktuellen Mplayer ausprobieren...


    danke

  • also xvid ist eine eigene lib und hat auch einen passende header.
    also lade dir das am besten von xvid.org runter.


    also such am besten nach xvid.h, lösche diese datei (und am besten auch die lib davon: libxvid.so); dann compilier xvid und installier es, dann kompilier den mplayer neu.


    ich hoffe das klappt (und hoffentlich löst es auch dein problem).

  • Hmm,


    habe es leider nicht hinbekommen. Der mplayer baut erstmal fehlerfrei und ich kann damit auch alte xvids abspielen, aber neue startet er gar nicht erst.


    Ich habe xvidcore gebaut und dann mplayer mit zusätzlich --with-xvidlibdir=/path/to/libxvidcore.a --with-xvidincdir=/path/to/xvid.h gebaut. Leider kein Unterschied.


    Dann habe ich das neuste CVS ffmpeg gezogen und gebaut und damit probiert. Leider auch kein Unterschied als ich damit mplayer gebaut habe. Das alte xvid wird gespielt, das neue überhaupt nicht.


    In einem anderen Thread (vgl.) wurde erwähnt, das ich mplayer.sh irgendwie anpassen muß, nur darauf habe ich keinen Hinweis gefunden.


    Es ist aber richtig das trotzdem nur eine mplayer Datei gebaut wird (die xvid war ein static object) die man rüberkopieren muß, oder?


    Wo könnte das problem sein?


    vielen dank!

  • Zitat

    Original von Mr.Lugosi
    Es ist aber richtig das trotzdem nur eine mplayer Datei gebaut wird (die xvid war ein static object) die man rüberkopieren muß, oder?


    hi,
    das glaube ich eigentlich nicht. das kannst du aber auch mit ldd mplayer testen. dann wird angezeigt gegen welche libs das binary gelinkt ist:


    und diese libs solltest du dann auch rüberkopieren. (es werden wohl schon alle da sein; auf keine fall z.B. die libc überschriben:P)

  • Hallo,


    ich nehme mal an, dass es fertige Libs für Linvdr 0.6 nicht gibt ..oder?
    Ich wäre nämlich auch an etwas aktuelleren Codecs interessiert.


    Gruß
    Gert

    AMD Athlon XP 1800+
    Elitegroup K7S5A
    512 MB DDRAM
    ATI RAGE Pro 128
    Fujitsu Siemens DVB-s Rev. 1.3
    240GB HD
    3Com Ethernet NIC
    RICOH DVD+R Brenner
    LinVDR 0.7 + MarcTwain Patch
    Gehäuse ist in der Mache ;)

  • So sieht das bei mir aus:

    Code
    video-client1:~# ldd /usr/bin/mplayer
            libm.so.6 => /lib/libm.so.6 (0x40016000)
            libnsl.so.1 => /lib/libnsl.so.1 (0x40037000)
            libpthread.so.0 => /lib/libpthread.so.0 (0x4004c000)
            libdl.so.2 => /lib/libdl.so.2 (0x40060000)
            libc.so.6 => /lib/libc.so.6 (0x40063000)
            /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)

    Das sind doch deutlich weniger Libaries :( Außerdem scheint es mir nichts Codecspezifisches zu sein, oder täusche ich mich da?

  • Zitat

    Original von paleface
    ich nehme mal an, dass es fertige Libs für Linvdr 0.6 nicht gibt ..oder?
    Ich wäre nämlich auch an etwas aktuelleren Codecs interessiert.

    Ich auch. Das ist der Grund weshalb ich mich hier seit langem Abmühe, aber leider nicht sehr erfolgreich bin :(

  • Hat jemand noch eine Idee (der Erfahrung mit Mplayer bauen hat), was ich falsch machen könnte? Ich bin jetzt mal auf ffmpeg umgeschwenkt, da es für neue xvids ebenfalls funktionieren soll und etwas performanter sein soll, ich halte mich an die Anweisungen aus der mplayer doku beim bauen, aber trotzdem laufen viele neue Dateien einfach nicht (siehe oben).


    Komme einfach nicht weiter. Vielen Dank!

  • Hatte das gleiche Problem. Files "quietschen" und kommen innerhalb von wenigen Sekunden zum Stillstand.


    Habe ebenfalls aktuelles xvid-core (1.1.0-beta1) gezogen und im mplayer einkompiliert (binary wurde auch um gutes halben MB groesser) - erst mal half das garnichts.


    Aber man muss offenbar nun noch explizit dem mplayer sagen, dass er auch wirklich xvid nehmen soll! Mit folgender Option in der mplayer.sh eingebaut läuft es nun endlich wieder problemlos: "-vc xvid"


    Bin nun nur noch gespannt, inwieweit diese Festlegung bei .avi Files, die nicht mit xvid gemacht wurden, Probleme bereitet..


    Hoffe ich konnte jemandem helfen, mich hat das jedenfalls mal wieder eine Menge Zeit gekostet heute. Aber man muss beim VDR einfach hin und wieder leiden, um nachher umso zufriedener die Fruechte der Bastelei zu geniessen :)

Jetzt mitmachen!

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