Проблемы при проигрывании mkv-файла с BlueRayRip (пропадает звук, дергается картинка и загрузка процессора 100%)

Разные проблемы звука, видео, обсуждение разных устройств и т.д.

Модератор: Модераторы разделов

ykuz61
Сообщения: 3

Проблемы при проигрывании mkv-файла с BlueRayRip

Сообщение ykuz61 »

Имеется следующая проблема. Не бросайте камнями, если будут задаваться глупые вопросы, т. к. в Linuxe я полный новичок. При проигрывании 7 Гб mkv файла BDRip на разных компьютерах периодически пропадает звук, дергается картинка и загрузка процессора близка к 100%. Оперативная память 1GB на обоих компьютерах. На одном компьютере стоит AltLinux 4.1, а на другом Ubuntu 9.04.
Характеристики видеофайла:

Код: Выделить всё

Mime: video/x-matroska
Звук: A/52 5.1 640kb/s
Видео: H.264/AVC (ffmpeg) 1920x800(1920x800)

Пробовал проигрыватели: mplayer, kaffeine, vlc.
В разных плеерах разные проблемы, кроме того в Mplayer вылезает ошибка:
Изображение
При этом при просмотре мультфильма Big Buck Bunny в разных вариантах играет абсолютно гладко и без каких-либо проблем:
big_buck_bunny_1080p_h264.mov
MOV H264 video, AAC surround sound - Apple Quicktime Compatible. (has audio playback problems with VLC and possibly other non-QT players on stereo systems; VLC users should choose one of the other formats):

Код: Выделить всё

Mime: video/quicktime
Звук: AAC 5.1 (libfaad) 403kb/s
Видео: H.264/AVC (ffmpeg) 1920x1080(1920x1080)


Big_Buck_Bunny_1080p_surround_FrostWire.com.avi
AVI Mpeg4 video, AC3 surround sound - Plays with recent video players:

Код: Выделить всё

Mime: video/x-msvideo
Звук: A/52 5.1 448kb/s
Видео: ISO MPEG-4 (ffmpeg) 1920x1072(1920x1080)


Характеристики компьютера и ОС (на примере машины с Alt Linux):
ОС: Alt Linux 4.1
Linux komp 2.6.25-std-def-alt8.M41.1 #1 SMP Thu Sep 11 01:14:41 MSD 2008 i686 GNU/Linux
Процессор: AMD Athlon™ 64 Processor 3000+
Память: 1035MB
-Экран-
Разрешение: 1280x1024 pixels
Видеокарта: GeForce 7600 GS/PCI/SSE2/3DNOW!
-Мультимедиа-
Аудио карта №1: NFORCE - NVidia CK804
Аудио карта №2: MPU-401 UART - MPU-401 UART
-SCSI диск-
ATA ST3160811AS

Примечательно, что и у фильма с проблемами и у мультфильма (в одном из вариантов) один и тот же видеокодек H.264, но при этом разные контейнеры mkv и mov.

Буду рад любому совету, кроме совета сменить системный блок (пока из-за кризиса удалось сменить только один монитор) Заранее большое спасибо. Семья не дает покоя, когда же появится нормальный звук...
P.S. На компьютерах стоят видеокарты : GeForce 7600 GS 512MB и ATI Radeon 3650 512 MB с заявленной аппаратной поддержкой HD-видео и декодирования кодека H.264. Может эта поддержка не активирована? Тогда кто ее должен активировать?
Спасибо сказали:
Аватара пользователя
butch
Сообщения: 331
ОС: :OC

Re: Проблемы при проигрывании mkv-файла с BlueRayRip

Сообщение butch »

ну по идее нужно поставить дрова на видео и включать директ рендеринг.
я видео на линухаха смотрю в xine, включив видео драйвер xvmc
Спасибо сказали:
Аватара пользователя
rm_
Сообщения: 3340
Статус: It's the GNU Age
ОС: Debian

Re: Проблемы при проигрывании mkv-файла с BlueRayRip

Сообщение rm_ »

Как раз недавно обсуждали вот тут: Как настроить Lenny на HP 2133?
Спасибо сказали:
ykuz61
Сообщения: 3

Re: Проблемы при проигрывании mkv-файла с BlueRayRip

Сообщение ykuz61 »

Надо везде: Post-processing - отключить, H264 Loop filter - отключить в первую очередь, Direct Rendering - включить, Allow framedrop - включить.
В SMPlayer ещё была функция принудительной синхронизации картинки со звуком. Короче говоря, покопаться в настройках.

Большое спасибо за советы! Пробовал все это настроить, но, к сожалению, ничего не помогает, выяснил, что глючит именно кодек H.264. Это особенно проявляется на сценах, где картинка сильно и быстро меняется, типа резкого приближения или перемещения камеры и т.д. Вышеуказанный мультик с другим контейнером оказался плохим тестовым примером. Так что моя проблема - заставить хорошо работать кодек H.264. Включение Direct Rendering не помогает.
Спасибо сказали:
Аватара пользователя
-=Andru=-
Сообщения: 51
ОС: ArchLinux

Re: Проблемы при проигрывании mkv-файла с BlueRayRip

Сообщение -=Andru=- »

ykuz61
Во-первых проблема в железке, т.к. не сильно шустрый процессор как для HD-видео с разрешением поболее 1280х720. Единственное, что тут можно посоветовать - собрать последний mplayer из svn. В репозиториях обычно лежат старые версии вроде RC2-3. Потом можно поиграться с настройками. К примеру вот так:

Код: Выделить всё

mplayer твой_файл.mkv -vo xv -fs -framedrop -lavdopts fast:skiploopfilter=all

Учитывая, что видеокарта NVIDIA, и не особо слабая, можно попробовать воспользоваться выводом через OpenGL:

Код: Выделить всё

mplayer твой_файл.mkv -vo gl:yuv=6:force-pbo:lscale=1:cscale=1 -fs -framedrop -lavdopts fast:skiploopfilter=all


Но как ни крути, на одном ядре все равно сильно не разгонишься. На моем AMD Athlon X2 3800+, с частотой поднятой до 2.52Ghz, все-таки подобное видео редко, но притормаживает(если не отключать loop-фильтр и пр.) в "сложных" сценах. К примеру мульт Wall-E в сцене со "звездной пылью", битрейт ~7Mbps, разрешение - 1920х804. Выход из ситуации - сборка mplayer'а с ffmpeg-mt, для декодирования видео средствами двух ядер.
Спасибо сказали:
ykuz61
Сообщения: 3

Re: Проблемы при проигрывании mkv-файла с BlueRayRip

Сообщение ykuz61 »

-=Andru=- писал(а):
21.05.2009 15:24
можно поиграться с настройками. К примеру вот так:

Код: Выделить всё

mplayer твой_файл.mkv -vo xv -fs -framedrop -lavdopts fast:skiploopfilter=all

Учитывая, что видеокарта NVIDIA, и не особо слабая, можно попробовать воспользоваться выводом через OpenGL:

Код: Выделить всё

mplayer твой_файл.mkv -vo gl:yuv=6:force-pbo:lscale=1:cscale=1 -fs -framedrop -lavdopts fast:skiploopfilter=all


Попробовал вторую команду (через OpenGL):

Код: Выделить всё

[ykuz@komp ~]$ mplayer /home/ykuz/video/hns-bhc.mkv -vo gl:yuv=6:force-pbo:lscal
e=1:cscale=1 -fs -framedrop -lavdopts fast:skiploopfilter=all
MPlayer dev-SVN-r26470-4.1.2 (C) 2000-2008 MPlayer Team
CPU: AMD Athlon(tm) 64 Processor 3000+ (Family: 15, Model: 47, Stepping: 2)
CPUflags:  MMX: 1 MMX2: 1 3DNow: 1 3DNow2: 1 SSE: 1 SSE2: 1
Скомпилировано для определения типа процессора во время выполнения.
118 аудио & 246 видео кодеков

Воспроизведение /home/ykuz/video/hns-bhc.mkv.
Cache fill:  0,00% (0 bytes)
[mkv] ID дорожки 1: video (V_MPEG4/ISO/AVC) "Beverly.Hills.Chihuahua.1080p.BluRa
y.x264-HD1080", -vid 0
[mkv] ID дорожки 2: audio (A_AC3), -aid 0, -alang rus
[mkv] ID дорожки 3: audio (A_AC3), -aid 1, -alang eng
[mkv] ID дорожки 4: subtitles (S_TEXT/UTF8), -sid 0, -slang eng
[mkv] Будет воспроизвоиться дорожка 1.
Обнаружен Matroska формат файла!
VIDEO:  [avc1]  1920x800  24bpp  23,976 fps    0,0 kbps ( 0,0 kbyte/s)
Could not parse arguments at the position indicated below:
yuv=6:force-pbo:lscale=1:cscale=1
      ^

-vo gl command line help:
Example: mplayer -vo gl:slice-height=4

Options:
  nomanyfmts
    Disable extended color formats for OpenGL 1.2 and later
  slice-height=<0-...>
    Slice size for texture transfer, 0 for whole image
  noosd
    Do not use OpenGL OSD code
  noaspect
    Do not do aspect scaling
  rectangle=<0,1,2>
    0: use power-of-two textures
    1: use texture_rectangle
    2: use texture_non_power_of_two
  glfinish
    Call glFinish() before swapping buffers
  swapinterval=<n>
    Interval in displayed frames between to buffer swaps.
    1 is equivalent to enable VSYNC, 0 to disable VSYNC.
    Requires GLX_SGI_swap_control support to work.
  yuv=<n>
    0: use software YUV to RGB conversion.
    1: use register combiners (nVidia only, for older cards).
    2: use fragment program.
    3: use fragment program with gamma correction.
    4: use fragment program with gamma correction via lookup.
    5: use ATI-specific method (for older cards).
    6: use lookup via 3D texture.
  lscale=<n>
    0: use standard bilinear scaling for luma.
    1: use improved bicubic scaling for luma.
    2: use cubic in X, linear in Y direction scaling for luma.
    3: as 1 but without using a lookup texture.
    4: experimental unsharp masking.
  cscale=<n>
    as lscale but for chroma (2x slower with little visible effect).
  customprog=<filename>
    use a custom YUV conversion program
  customtex=<filename>
    use a custom YUV conversion lookup texture
  nocustomtlin
    use GL_NEAREST scaling for customtex texture
  customtrect
    use texture_rectangle for customtex texture
  osdcolor=<0xAARRGGBB>
    use the given color for the OSD

Ошибка при открытии/инициализации выбранного устройства видеовывода (-vo).
==========================================================================
Открываю декодер аудио: [liba52] AC3 decoding with liba52
Using SSE optimized IMDCT transform
Using MMX optimized resampler
AUDIO: 48000 Hz, 2 ch, s16le, 640,0 kbit/41,67% (ratio: 80000->192000)
Выбран аудиокодек: [a52] afm: liba52 (AC3-liba52)
==========================================================================
AO: [alsa] 48000Hz 2ch s16le (2 bytes per sample)
Видео: нет видео
Начало воcпроизведения...
A:   9,2 (09.1) of 5487,7 ( 1:31:27.7)  0,9% 46%

MPlayer interrupted by signal 2 in module: play_audio


MPlayer interrupted by signal 2 in module: enable_cache
A:   9,2 (09.1) of 5487,7 ( 1:31:27.7)  0,9% 46%


Выдает ошибку..

А вот первый способ с небольшой оговоркой (добавлена опция -dr прямой вывод потока на видеокарту) сработал:

Код: Выделить всё

[ykuz@komp ~]$ mplayer /home/ykuz/video/hns-bhc.mkv -vo xv -fs -lavdopts fast:skiploopfilter=all -dr

Работает очень прилично и практически без проблем. Несмотря на отсутствие внешних проблем все равно выдал сообщение:

Код: Выделить всё

A: 113,7 V: 113,2 A-V:  0,499 ct: -0,073   0/  0 89% 12%  1,2% 117 0 43%

         *****************************************************************
         **** Ваша система слишком МЕДЛЕННА чтобы воспроизводить это! ****
         *****************************************************************
Возможные причины, проблемы, обходы:
- Наиболее частая: плохой/сырой _аудио_ драйвер
  - Попробуйте -ao sdl или используйте эмуляцию OSS на ALSA.
  - Поэкспериментируйте с различными значениями -autosync, начните с 30.
- Медленный видео вывод
  - Попытайтесь другие -vo driver (список: -vo help) или попытайтесь с -framedrop!
- Медленный процессор
  - Не пытайтесь воспроизводить большие DVD/DivX на медленных процессорах!
    Попробуйте некоторые опции lavdopts, например:
-vfm ffmpeg -lavdopts lowres=1:fast:skiploopfilter=all.
- Битый файл
  - Попробуйте различные комбинации: -nobps -ni -forceidx -mc 0
- Медленный носитель (смонтированные NFS/SMB, DVD, VCD и т.п.)
  - Используйте -cache 8192.
- Используете ли Вы -cache для проигрывания неслоёных [non-interleaved] AVI файлов?
  - Используйте -nocache.
Читайте DOCS/HTML/ru/video.html для советов по подстройке/ускорению.
Если ничего не помогло, тогда читайте DOCS/HTML/ru/bugreports.html!



Кстати
Во-первых проблема в железке, т.к. не сильно шустрый процессор как для HD-видео с разрешением поболее 1280х720.

Это же странно, т.к. видеофильм с таким же разрешением, но в кодеке mpeg4 играет идеально. Видимо, просто кодек очень ресурсоёмкий.

Большое спасибо за помощь, в общем, всё работает так или иначе и я счастлив! :)
Спасибо сказали:
Аватара пользователя
-=Andru=-
Сообщения: 51
ОС: ArchLinux

Re: Проблемы при проигрывании mkv-файла с BlueRayRip

Сообщение -=Andru=- »

MPlayer dev-SVN-r26470-4.1.2

Я бы очень рекомендовал обновиться. Количество оптимизаций и пр. сделано довольно много за последнее время, а ревизия 26470 была довольно давно, да и как вижу версия GCC еще 4.1.2, в то время как давно в обиходе 4.3.х, не говоря о недавно вышедшей 4.4.0

выдал сообщение:

Видимо где-то все-же пропускает кадры, пускай и не заметно для глаза.

Попробовал вторую команду (через OpenGL):
[skip]
Выдает ошибку..

Таки слишком древняя версия mplayer'а, раз нету параметра force-pbo.
Спасибо сказали:
Аватара пользователя
Gena_Zakharov
Сообщения: 195
ОС: Kubuntu/Debian/Gentoo

Re: Проблемы при проигрывании mkv-файла с BlueRayRip

Сообщение Gena_Zakharov »

H.264 действительно очень суровый кодек, поэтому даже мощного процессора для него не всегда хватает.

По идее, декодировать поток должна видеокарта. Например в винде на стандартном драйвере H.264 не идет вообще, тормоза жутчайшие. А на фирменном драйвере NVidia играет нормально, и загрузка процессора 3%. Так что желательно поставить драйвер последней версии (либо предпоследней, если по отзывам она стабильнее), а потом играться с настройками плейера.

Точнее сказать не могу, сам с такой проблемой не сталкивался.
Спасибо сказали:
ewgthflf
Сообщения: 1

Re: Проблемы при проигрывании mkv-файла с BlueRayRip

Сообщение ewgthflf »

у меня проблема на этом сайте смотреть фильмы онлайн фильм тормозит постоянно
Спасибо сказали:
Аватара пользователя
Snupt
Бывший модератор
Сообщения: 2062
Статус: No Place for RTFM Here…
ОС: Mac OS X

Re: Проблемы при проигрывании mkv-файла с BlueRayRip

Сообщение Snupt »

ewgthflf, Ваш вопрос не имеет никакого отношения к обсуждаемой теме.
Спасибо сказали: