Audio / Video nicht synchron, wenn MP4s im mplayer abgespielt werden


10

Wenn ich versuche, MP4-Dateien im mplayer abzuspielen, erhalte ich nach einigen Sekunden die Meldung "Ihr System ist zu langsam, um dies abzuspielen!" Warnung und das Video bleibt hinter dem Audio zurück. Es passiert nur mit MP4s und scheint mit fast allen zu passieren. mplayer scheint mein System nicht zu überfordern, es ist nur etwas mit dem Spielen dieses bestimmten Formats. Ich habe alle Mplayer-Vorschläge ausprobiert (verschiedene Videotreiber -framedropusw.). Das einzige, was auch nur teilweise hilft, ist -autosync 30, aber das ist ein Hack. Was könnte falsch sein? Wie gehe ich vor, um es zu debuggen / zu reparieren?


Bearbeiten : Meine Grafikkarte ist eine nVidia; Ich benutze die offiziellen Treiber . Meine verfügbaren Videoausgabetreiber laut mplayer sind:

    xv  X11/Xv
    gl_nosw OpenGL no software rendering
    x11 X11 ( XImage/Shm )
    xover   General X11 driver for overlay capable video output drivers
    gl  OpenGL
    gl2 X11 (OpenGL) - multiple textures version
    matrixview  MatrixView (OpenGL)
    null    Null video output
    mpegpes MPEG-PES file
    yuv4mpeg    yuv4mpeg output for mjpegtools
    png PNG file
    jpeg    JPEG file

Ich habe keine anderen Spieler ausprobiert (ich glaube nicht, dass ich überhaupt welche habe), aber ich werde versuchen, einen anderen zu installieren und zu prüfen, ob das gleiche Problem vorliegt. Ich habe vergessen zu erwähnen, dass ich dieses Problem auf mehreren Computern habe, aber alle haben im Wesentlichen das gleiche Setup, so dass es wahrscheinlich eine häufige Ursache ist


2
Buggy Codec? Haben Sie versucht, MP4s in einem anderen Player abzuspielen? Potenziell nützliche Informationen: Welche -voVideotreiber in mplayer, welche Videotreiber in X?
Gilles 'SO - hör auf böse zu sein'

Verwenden Sie entweder das vdpau oder das mplayer-Argument "framedrop". Vielleicht hilft Ihnen einer von ihnen.
SHW

Probieren Sie auch mpv (eine Mplayer-Gabel) aus, die viele kleine Bereiche zu haben scheint, in denen sie verbessert wurde. Ich habe auf mpv umgestellt und bemerke keine Probleme mit der Audio- / Videosynchronisierung mehr.
Peter

Antworten:


1

Bei NVIDIA gibt es immer solche Probleme. Ihr Mplayer verwendet wahrscheinlich eine Art von HW-Beschleunigung, die manchmal fehlerhaft sein kann (ich habe auch gut funktionierende und fehlerhafte NVIDIA-Systeme gesehen). Eine einfache x11-Ausgabe ( -vo x11) wird wahrscheinlich funktionieren.

Sie können noch die -framedropFlagge versuchen . Wenn es nicht funktioniert, funktioniert mit a -hardframedropauch, wenn Sie einen Low-Level-Ausgabetreiber verwenden.

Auf heutigen PCs ist ein einfaches -vo x11 -framedropauch in Ordnung, und es beseitigt zumindest die Probleme der fehlerhaften Lowlevel-Dinge (die im Falle von NVIDIA sehr wahrscheinlich sind).

Praktisch gibt es 3 verschiedene NVIDIA-Treiber:

  • der Treiber in X.Org
  • der Closed-Source-NVIDIA-Treiber
  • und es gibt auch einen OpenSource-Klon der Closed-Source-NVIDIA.

Diese haben unterschiedliche Combos. Wenn Sie nicht zufrieden sind -vo x11, können Sie anfangen, mit ihnen zu spielen.


Ich habe mplayer ziemlich häufig mit nVidia-Hardware und VDPAU verwendet. Es scheint meistens zu funktionieren. Und ich kann mich nicht erinnern, jemals ein Problem mit gesehen zu haben -vo xv(das schneller sein sollte -vo x11und auch die Hardware-Skalierung unterstützt). Laut OP wurde das Problem -autosyncbehoben, aber das sollte nicht helfen, wenn tatsächlich ein Videofehler vorliegt, der zu einer Verlangsamung führt. -autosyncFunktioniert normalerweise um Audiotreiberfehler.
Derobert

@derobert Aus der Basis X.Org gibt es einen OpenSource-NVIDIA-Treiber und einen geschlossenen. Vielleicht war deine HW-SW-Kombination in Ordnung. Ich habe auch gut funktionierende NVIDIA-Systeme erlebt. Ich habe meine Antwort erweitert, vielleicht ist es eine Änderung der Abstimmung wert.
Peter
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.