PulseAudio不检测RaspBMC上的声卡

时间:2013-09-19 18:55:04

标签: audio raspberry-pi alsa pulseaudio

我正在尝试将raspbmc(在Raspberry Pi Model b上运行)的默认音频输出录制到原始wav流(我想管道到piFM以将音频传输到FM调谐器)。 我没有成功使用arecord,并发现raspbmc的默认音频引擎是pulseaudio,所以我尝试使用parecord / pacat进行的事情。

我的pi通过HDMI连接到电视,声音正常工作。 但是pactl列表只给了我以下的汇/源:

Sink #0
        State: SUSPENDED
        Name: auto_null
        Description: Dummy Output
        Driver: module-null-sink.c
        Sample Specification: s16le 2ch 44100Hz
        Channel Map: front-left,front-right
        Owner Module: 4
        Mute: no
        Volume: 0: 100% 1: 100%
                0: 0.00 dB 1: 0.00 dB
                balance 0.00
        Base Volume: 100%
                     0.00 dB
        Monitor Source: auto_null.monitor
        Latency: 0 usec, configured 0 usec
        Flags: DECIBEL_VOLUME LATENCY 
        Properties:
                device.description = "Dummy Output"
                device.class = "abstract"
                device.icon_name = "audio-card"
        Formats:
                pcm

Source #0
        State: SUSPENDED
        Name: auto_null.monitor
        Description: Monitor of Dummy Output
        Driver: module-null-sink.c
        Sample Specification: s16le 2ch 44100Hz
        Channel Map: front-left,front-right
        Owner Module: 4
        Mute: no
        Volume: 0: 100% 1: 100%
                0: 0.00 dB 1: 0.00 dB
                balance 0.00
        Base Volume: 100%
                     0.00 dB
        Monitor of Sink: auto_null
        Latency: 0 usec, configured 0 usec
        Flags: DECIBEL_VOLUME LATENCY 
        Properties:
                device.description = "Monitor of Dummy Output"
                device.class = "monitor"
                device.icon_name = "audio-input-microphone"
        Formats:
                pcm

此外aplay给了我:

pi@raspbmc:~$ aplay -l
aplay: device_list:252: no soundcards found...

pi@raspbmc:~$ aplay -L
null
    Discard all samples (playback) or generate zero samples (capture)

尝试从默认设备录制音频时,不会录制任何内容。 当我尝试使用paplay播放声音时,没有播放任何内容(没有错误,只有没有声音)。

那我在这里错过了什么?我只需将所有播放的声音发送到另一个节目......

我花了几个小时在谷歌和论坛,维基和博客上,但没有找到适用于我的设置的解决方案。

提前致谢!

编辑: raspbmc上不存在/ dev / audio,/ dev / snd只包含条目'timer'

2 个答案:

答案 0 :(得分:2)

您可能需要为声音设备加载内核模块,如下所示:

# modprobe snd-bcm2835

这将导致一些新的设备文件出现在/dev/snd/中,pulseaudio将检测到卡#0。如果我理解正确,这个设备是一个让Pulseaudio通过ALSA输出声音的层。将其添加到/etc/modules以使其在启动时自动加载。

在我的设置中,ALSA默认通过HDMI输出声音。如果没有,或者您希望将其更改为phono jack,则可以使用amixer命令:

$ amixer cset numid=3 <output>

0=auto
1=headphones
2=hdmi

来源:http://www.raspberrypi.org/forums/viewtopic.php?f=38&t=27019。与他们的示例相反,我可以执行此命令作为非特权用户pi,而不是root。

答案 1 :(得分:0)

我已经挣扎了一个星期左右。虽然在我的linux-menuconfig中为snd_bcm2835启用了ALSA。

pi@raspi:~$ aplay -l
aplay: device_list:250: no soundcards found...

# aplay output.wav 
ALSA lib confmisc.c:767:(parse_card) cannot find card '0'
ALSA lib conf.c:4528:(_snd_config_evaluate) function 
snd_func_card_driver returned error: No such file or directory
ALSA lib confmisc.c:392:(snd_func_concat) error evaluating strings
ALSA lib conf.c:4528:(_snd_config_evaluate) function snd_func_concat 
returned error: No such file or directory
ALSA lib confmisc.c:1246:(snd_func_refer) error evaluating name 
ALSA lib conf.c:4528:(_snd_config_evaluate) function snd_func_refer 
returned error: No such file or directory
ALSA lib conf.c:5007:(snd_config_expand) Evaluate error: No such file 
or directory
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM default
aplay: main:788: audio open error: No such file or directory

这已修复:

尝试将 dtparam = audio = on 添加到 /boot/config.txt

来源:非常感谢 fzinken &gt;&gt; Alsa doesn’t work on my Raspberry Pi 2/3