3

Когда я бегу:

speaker-test -c6

...Все отлично. Я получаю 5.1 воспроизведения.

Тем не менее, когда я бегу:

mplayer -channels 6 "some video with 5.1 audio"

нет звука играет. Вот что появляется в терминале:

~$ mplayer /var/remote/projects/playback/video/calibration/5.1video/10000_bc-tlr2_h480p.mov 
MPlayer UNKNOWN-4.4.5 (C) 2000-2012 MPlayer Team
Playing /var/remote/projects/playback/video/calibration/5.1video/10000_bc-tlr2_h480p.mov.
libavformat version 53.31.100 (internal)
libavformat file format detected.
[lavf] stream 0: video (h264), -vid 0
[lavf] stream 1: audio (aac), -aid 0, -alang eng
VIDEO:  [H264]  848x352  24bpp  23.976 fps  2132.4 kbps (260.3 kbyte/s)
Clip info:
 major_brand: qt  
 minor_version: 537199360
 compatible_brands: qt  
 creation_time: 2008-01-08 00:00:27
 comment: Encoded and delivered by apple.com/trailers/
 comment-eng: Encoded and delivered by apple.com/trailers/
 copyright: © 2008 Warner Bros. Pictures. All Rights Reserved
 copyright-eng: © 2008 Warner Bros. Pictures. All Rights Reserved
 title: 10,000 BC
 title-eng: 10,000 BC

Load subtitles in /var/remote/projects/playback/video/calibration/5.1video/

==========================================================================
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
libavcodec version 53.60.100 (internal)
Selected video codec: [ffh264] vfm: ffmpeg (FFmpeg H.264)

==========================================================================

Opening audio decoder: [ffmpeg] FFmpeg/libavcodec audio decoders
AUDIO: 48000 Hz, 6 ch, s16le, 465.9 kbit/10.11% (ratio: 58238->576000)
Selected audio codec: [ffaac] afm: ffmpeg (FFmpeg AAC (MPEG-2/MPEG-4 Audio))

==========================================================================
[AO OSS] audio_setup: Can't open audio device /dev/dsp: No such file or directory
[AO_ALSA] alsa-lib: pcm.c:2209:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.surround51
[AO_ALSA] Playback open error: No such file or directory
AO: [pulse] 48000Hz 6ch s16le (2 bytes per sample)
Starting playback...
Unsupported PixelFormat 61
Unsupported PixelFormat 53
Unsupported PixelFormat 81
Movie-Aspect is undefined - no prescaling applied.
VO: [xv] 848x352 => 848x352 Planar YV12 
A:   0.1 V:   0.0 A-V:  0.084 ct:  0.004   0/  0 ??% ??% ??,?% 0 0 
[h264 @ 0xf0c760]Increasing reorder buffer to 1
A:  75.9 V:  75.9 A-V:  0.000 ct:  0.084   0/  0  4%  0%  0.5% 0 0 
Truncating packet of size 1173 to 500
[mov,mp4,m4a,3gp,3g2,mj2 @ 0xe953e0]stream 1, offset 0x13dc10b: partial file
A:  76.3 V:  75.9 A-V:  0.395 ct:  0.084   0/  0  4%  0%  0.5% 5034 0 
[aac @ 0xf0c760]Input buffer exhausted before END element found
A:  76.3 V:  75.9 A-V:  0.396 ct:  0.084   0/  0  4%  0%  0.5% 5035 0 
[mov,mp4,m4a,3gp,3g2,mj2 @ 0xe953e0]stream 1, offset 0x13dc5ab: partial file
A:  76.3 V:  75.9 A-V:  0.396 ct:  0.089   0/  0  4%  0%  0.5% 5035 0 


Exiting... (End of file)

Наиболее показательным является линия:

[AO_ALSA] alsa-lib: pcm.c:2209:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.surround51

Кто-нибудь знает способ просто заставить mplayer использовать тот же путь вывода, который используется утилитой alsa's speaker-test?

Другой совет?

Для справки:

$ aplay -l

**** List of PLAYBACK Hardware Devices ****

card 0: DSP [Hammerfall DSP], device 0: RME Hammerfall DSP + Multiface [RME Hammerfall DSP + Multiface]

    Subdevices: 1/1
    Subdevice #0: subdevice #0

3 ответа3

1

Ваши идеи привели меня на правильный путь, и я нашел псевдоним, определенный в hdsp.conf , который нравится mplayer.

Для справки, это « hdsp_analog », и его можно указать в командной строке mplayer:

mplayer -ao alsa:device=hdsp_analog -channels 6 /path/to/media.mov

Спасибо всем.

0

DSP Hammerfall не поддерживает вывод только 6 каналов, поэтому для него не существует псевдоним surround51 51.

Попробуйте mplayer -ao alsa:device=plughw=0 -channels 6 whatever.mov .

0

Ошибка Can't open audio device /dev/dsp: No such file or directory является по крайней мере одной проблемой для начала. Попробуйте посмотреть, существует ли файл ...

$ ls -l /dev/dsp

Если этого не произойдет, может быть проблема с настройками udev (/etc/udev/*) или могут быть какие-то другие драйверы / аппаратные средства ALSA, которые мешают созданию файла устройства.

Я полагаю, что aplay -l выполняет прямое обнаружение оборудования (пространство ядра), тогда как mplayer просто пытается использовать устройство, указанное в каталоге /dev (пространство пользователя).

Какой дистрибутив вы используете?

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .