Та-а-ак...
По выводу mplayer.
Попробовать сделать то, что сказал mplayer.
$ mplayer -ao alsa -vo gl_nosw
gl_nosw - не использовать софтовый рендеринг с OpenGL
Если в системе <-ao pulse> по-умолчанию и делать именно его для output, см.
пост, чтобы свести задержки pulseaudio к минимуму. При этом количество сегментов можно увеличить вдвое. А можно и оставить количество сегментов как есть.
(длина_сегмента_в_msec x количество_сегментов = длина_буфера_pulseaudio)
(Аудиоподсистема поверх аудиоподсистемы для медленных машин совсем неудачная идея)
По -ao:
mplayer советует как -ao попробовать также SDL( -ao sdl ) (когда-то даже воспроизводил avi и даже DVD на 200MMX с movix v0.8.3):
$ apt-cache search libSDL|grep lib|sort
(кроме devel-пакетов)
(oss модули из официальных ядер в альтах выброшены, так что этот совет mplayera в альтах бесполезен)
Далее к команде можно добавить См. 'man mplayer' с поиском (key </> для поиска и ввод маски) по тексту:
аудио/видео синхронизация
-autosync 0[0-30]
или/и
-framedrop
Совет mplayer'а:
-vfm ffmpeg -lavdopts lowres=1:fast:skiploopfilter=all
Здесь lowres=1,w как вариант.
Где w - разрешение монитора по-горизонтали.
Будет включаться, если оригинальное видео по-горизонтали больше, чем разрешение монитора по-горизонтали.
Совет mplayer'а:
-nobps -ni -forceidx -mc 0
-mc
Максимальная величина корректировки A-V синхронизации на один кадр (в секундах) <секунд/кадр>
-forceidx
Перенастройка индекса при A/V рассинхронизации.
-nobps и -ni будут работать только с avi.
Совет mplayera:
- Slow media (NFS/SMB mounts, DVD, VCD etc)
- Try -cache 8192.
- Are you using -cache to play a non-interleaved AVI file?
- Try -nocache.
Дефолтом использует кеш размером 8192Kb
Как вариант увеличить кеш вдвое или вообще использовать -nocache.
По выводу
Too many video/audio packets in the buffer
можно залезть
сюда и погрепать вывод в тексте.
Но! Обратить внимание на вывод
Maybe you are playing a non-interleaved stream/file or the codec failed?
Выше по топику давали ссылку на мой пост по несвободным кодекам и на кем-то собранный пакет несвободных кодеков.
И лучше с самого начала начать именно с этого. С вероятностью 50/50 это совсем не исключается из-за закрытости алгоритма декодирования в закрытых кодеках. Открытый кодек/декодер может декодировать некорректно аудио жатое закрытым кодеком.
Можно покатать с
-demuxer lavf
Про totem и демаксер можно
тут глянуть.
Посмотреть как будет с
-lavdopts threads=x
x - количество потоков для декодирования (кол-во ядер CPU?). Дефолтом один.
Подсмотрено
тут.
ЗЫж
Видеоподсистема (может использовать)
$ mplayer -vo help
Аудиоподсистема (может использовать)
$ mplayer -ao help
Семейства видеокодеков (в наличии)
$ mplayer -vfm help
Видеокодеки (в наличии)
$ mplayer -vc help
Семейства аудиокодеков (в наличии)
$ mplayer -afm help
Аудиокодеки (в наличии)
$ mplayer -ac help
Тип демультиплексора
$ mplayer -demuxer help
ЗЗЫж
Более точный набор опций индивидуально в зависимости от комплектации железа.
mplayer для GNOME/GTK:
$ LC_ALL=C apt-cache search MPlayer|grep -i GUI|sort
Настройки mplayer из GUI-интерфейса (для gmplayer - пакет mplayer-gui):
Правой кнопкой мыши по окну видео => Меню => Настройки
Файлы конфигурации:
$ ls -1 ~/.mplayer
Эх-х... Бросили бы видеофайлик куда-нить, на пощупать оптимальные опции.