Аудио / видео не синхронизировано при воспроизведении MP4 в mplayer

10

Когда я пытаюсь воспроизвести файлы MP4 в mplayer, через несколько секунд появляется сообщение «Ваша система слишком МЕДЛЕННА для воспроизведения!» предупреждение и видео начинает отставать от аудио. Это происходит только с MP4, и, кажется, происходит почти со всеми из них. Кажется, что mplayer не перегружает мою систему, это всего лишь игра с этим конкретным форматом. Я перепробовал все предложения mplayer (другой видеодрайвер -framedropи т. Д.); единственный, который даже частично помогает -autosync 30, но это взломать. Что может быть не так? Как мне отладить / исправить это?


Редактировать : моя видеокарта nVidia; Я пользуюсь официальными драйверами . Мои доступные драйверы вывода видео в соответствии с mplayer:

    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

Я не пробовал другие плееры (я не думаю, что у меня их вообще есть), но я попробую установить еще один и посмотреть, есть ли у него такая же проблема. Я забыл упомянуть, что у меня есть эта проблема на нескольких компьютерах, но все они имеют одинаковую настройку, так что это, вероятно, общая причина

Михаил Мрозек
источник
2
Глючит кодек? Вы пробовали играть в MP4 в другом плеере? Потенциально полезная информация: какой видеодрайвер (ы) -voв mplayer, какой видеодрайвер (ы) в X?
Жиль "ТАК - перестать быть злым"
Либо используйте vdpau, либо используйте аргумент mplayer «framedrop». Может быть, кто-то из них поможет тебе.
ШВ
также попробуйте mpv (форк mplayer), который, кажется, имеет много небольших областей, где он улучшен .... Я перешел на mpv и больше не замечаю проблем с синхронизацией аудио / видео.
Питер

Ответы:

1

С nvidia всегда есть такие проблемы. Ваш mplayer использует, вероятно, некоторый тип ускорения hw, который иногда может быть ошибочным (я также видел хорошие рабочие и глючные системы nvidia). Простой вывод x11 ( -vo x11), вероятно, будет работать.

Вы можете попробовать еще -framedropфлаг. Если это не работает, то с также -hardframedropбудет работать, если вы используете какой-либо драйвер вывода низкого уровня.

На современных компьютерах простое -vo x11 -framedropтоже хорошо, и это, по крайней мере, устраняет проблемы глючных вещей низкого уровня (которые в случае nvidia весьма вероятны).

Практически, есть 3 разных драйвера nvidia:

  • водитель в X.Org
  • драйвер nvidia с закрытым исходным кодом
  • и есть клон с открытым исходным кодом nvidia с закрытым исходным кодом также.

У них разные комбо. Если вы не довольны -vo x11, вы можете начать играть с ними.

Петер - Восстановить Монику
источник
Я довольно широко использовал mplayer с оборудованием nVidia и VDPAU. Кажется, в основном работает. И не могу вспомнить, чтобы когда-либо видел проблему с -vo xv(которая должна быть быстрее, -vo x11а также поддерживает аппаратное масштабирование). Кроме того, OP говорит -autosync, что это исправлено, но это не должно помочь, если на самом деле есть видео ошибка, вызывающая замедление. -autosyncобычно работает вокруг ошибок аудио драйвера.
Дероберт
@derobert Из базового X.Org есть драйвер nvidia с открытым исходным кодом, а также закрытый. Возможно, твоя комбинация была в порядке. Я также испытал хорошие рабочие системы NVIDIA. Я расширил свой ответ, возможно, это стоит изменения голосования.
Петер - Восстановить Монику