2014-08-29 67 views
0

我有一个CORE9G25-CON(256MBRAM)(http://armdevs.com/core9g25.html)设备上安装了嵌入式Linux。 Linux版本是:alsa在嵌入式系统CORE9G25

# uname -or 
3.6.9 GNU/Linux 
# cat /etc/os-release 
NAME=Buildroot 
VERSION=2012.11.1-dirty 
ID=buildroot 
VERSION_ID=2012.11.1 
PRETTY_NAME="Buildroot 2012.11.1 

该装置配备有在其中我连接的USB-AUDIO接口

USB接口由系统

# cat /proc/asound/cards 
0 [Device   ]: USB-Audio - USB PnP Sound Device 
        C-Media Electronics Inc. USB PnP Sound Device at usb-at91-1, full speed 

# cat /proc/asound/devices 
     0: [ 0] : control 
    16: [ 0- 0]: digital audio playback 
    24: [ 0- 0]: digital audio capture 
    33:  : timer 

# ls /dev/snd 
controlC0 pcmC0D0c pcmC0D0p timer 

识别USB主机连接器我想通过使用ALSA来处理AUDIO接口,但这是控制台上显示的错误,通过使用简单命令aplay -l

# aplay -l 
**** List of PLAYBACK Hardware Devices **** 
ALSA lib control.c:739:(snd_ctl_open_noupdate) Invalid CTL hw:0 
aplay: device_list:226: control open (0): No such file or directory 
aplay: conf.c:3095: snd_config_update_free: Assertion `update->count > 0 && update->finfo' failed. 
Aborted 

我搜索了大约一个星期,试图解决这个问题,但到目前为止,我没有找到任何解决方案。

你能帮我解决这个问题吗? 你有没有其他类似的经验呢?

非常感谢您的帮助和合作

问候

回答

1

什么是您的alsa.conf样子?执行此

locate alsa.conf 

通常发现在

/usr/share/alsa/alsa.conf 

做谷歌上

audio sound alsa Invalid CTL hw:0 

alsa.conf文件位于这个可能让你在正确的道路上

#alsa.conf minimal configuration 
ctl.hw { 
    @args [ CARD ] 
    @args.CARD { 
     type string 
    } 
    type hw 
    card $CARD #with 0 alsamixer work, with $CARD alsamixer lend to invalid argument 
} 
+0

在/ usr/share/alsa目录下。 alsa.conf文件由工具链生成。 – Ferrari 2014-08-30 14:20:12

+0

我用strace来追踪'aplay .l'进程,并且我注意到没有读取alsa.conf文件。 aplay -l进程尝试打开/ usr/share/alsa(这是一个目录)作为alsa.conf文件,当然,我认为它并不适合。如何解决它? – Ferrari 2014-09-01 15:25:29