孙毅 发表于 2015-11-29 00:32:17

如何在Edison上播放音频

本帖最后由 孙毅 于 2015-11-30 10:39 编辑

恩,又到了小恶魔们碎觉,我等出来嘚瑟的时间了。赶紧的废话少说,直奔主题,今天跟大家一块搞定在Edison上播放声音!让我们的IOT设备更加丰富多彩。
第一步:巧妇难为无米之炊——跟老婆申请budget淘宝一个USB声卡。
恩,遗憾的是——没批!切~咱早有心理准备了。backup的方案就是,使用平时网络会议时使用的USB耳机!
我没有尝试特别多的耳机或者声卡,但我觉得,多半市面上的USB耳机都能搞的定啊。

第二步:升级Edison image,不过也不用特别的新,号称2015-5-15之后的版本就可以了。——“为啥呢……?”身后一个声音“贱贱”的回荡在耳边。好吧,似乎是因为有一个usb-snd-audio的模块被加到的kernel里面。module的真正名字叫‘snd_usb_audio’,但我用lsmod就是看不到,就在我险些刷固件的时候,忽然想起《葵花宝典》里面的一句名言——“即使不攻也能成功”。果断在插上usb耳机之后,看下dmesg,找到这么几句:
[ 2079.376629] usb 1-1: new full-speed USB device number 2 using dwc3-host
[ 2079.613759] usb 1-1: New USB device found, idVendor=0b0e, idProduct=0348
[ 2079.613790] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 2079.613812] usb 1-1: Product: Jabra UC VOICE 550a MS
[ 2079.613830] usb 1-1: Manufacturer: Jabra
[ 2079.613848] usb 1-1: SerialNumber: 000100A1790D
[ 2079.678550] usb_audio: Warning! Unlikely big volume range (=4096), cval->res is probably wrong.
[ 2079.678575] usb_audio: FU ch = 1, val = 0/4096/1<6>[ 2079.841563] input: Jabra Jabra UC VOICE 550a MS as /devices/pci0000:00/0000:00:11.0/dwc3-host.2/usb1/1-1/1-1:1.3/input/input2
[ 2079.843650] hid-generic 0003:0B0E:0348.0001: input,hiddev0,hidraw0: USB HID v1.00 Device on usb-dwc3-host.2-1/input3
好险好险~~呼~~


第三步:安装ALSA工具:alsa-utils
老方法:opkg install alsa-utils

第四步:验证一下我们的声卡是不是正常识别了:
aplay -Ll然后会得到很多行信息,我们找到有我们耳机品牌信息的行,我的在最后一段
card 1: dummyaudio , device 0: 14 []
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: dummyaudio , device 1: ((null)) []
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: dummyaudio , device 2: ((null)) []
Subdevices: 1/1
Subdevice #0: subdevice #0
card 2: <b>MS </b>, device 0: USB Audio
Subdevices: 1/1
Subdevice #0: subdevice #0

记住最后一段 card2: 后面的 MS,很重要!

第五步:
创建一个配置文件,告诉ALSA tools你想要的默认音频设备是什么vim /etc/asound.conf把下面的行添加到我们新的配置文件里面如下:
pcm.!default sysdefault:MS注意最后那个冒号后面的MS是我的USB设备,大家需要换成自己的设备名字,就是之前那个card2后面的名字!

第六步:播放音乐!!

使用aplay播放音频:
aplay /home/root/Alarm01.wav
如果看到下面的信息,基本上就播放成功了!
root@edison:~# aplay /home/root/Alarm01.wav
Playing WAVE '/home/root/Alarm01.wav' : Signed 16 bit Little Endian, Rate 22050 Hz, Stereo
如果前面没有正确设置过默认的音频输出设备,这里可以直接选择你usb声卡如下:
aplay -D hw:2,0 /home/root/Alarm01.wav
其中的hw2,0 表示card2,至于0嘛,这里总是零,就对了!

本来写到这里已经差不多了,下面是网上看到的些东东,先记在这里了:
播放mp3: mpg123
录音:arecord
一个很棒的widi关于ALSA的:
http://www.alsa-project.org/main/index.php/Asoundrc
要是有特别的配置,可以参考下。

还有就是发现另外一篇关于Edison音频的帖子,先记在这里,供参考。
http://www.arduino.cn/forum.php?mod=viewthread&tid=15178&highlight=Edison%2B%E9%9F%B3%E9%A2%91

孙毅 发表于 2015-11-29 00:49:32

强烈要求深夜发帖可以额外增加“创造力”{:5_160:}

kevinzhang19701 发表于 2015-11-29 08:09:03

hnyzcj 发表于 2015-11-29 08:16:47

:巧妇难为无米之炊——跟老婆申请budget淘宝一个USB声卡。

hnyzcj 发表于 2015-11-29 08:18:12

大圣,这个不错。

大连林海 发表于 2015-11-29 09:03:03

增加“创造力”{:5_173:}

孙毅 发表于 2015-11-29 09:55:44

大连林海 发表于 2015-11-29 09:03
增加“创造力”

嗯,你这表情配的很到位

大连林海 发表于 2015-11-29 09:58:33

孙毅 发表于 2015-11-29 09:55
嗯,你这表情配的很到位

看我那个另类的作品吧我都不敢直视了·················

孙毅 发表于 2015-11-29 10:08:17

hnyzcj 发表于 2015-11-29 08:18
大圣,这个不错。

大圣出品,那必须是 精儿 啊!吼吼

凌风清羽 发表于 2015-11-29 10:18:35

大圣我们换头像吧{:5_170:}

hnyzcj 发表于 2015-11-29 10:23:56

凌风清羽 发表于 2015-11-29 10:18
大圣我们换头像吧

我看行,哈哈

孙毅 发表于 2015-11-29 12:44:18

凌风清羽 发表于 2015-11-29 10:18
大圣我们换头像吧

我勒个去。。。。我内心能像大白一点。。。。暖暖哒。。。哈哈哈

孙毅 发表于 2015-11-29 12:45:08

hnyzcj 发表于 2015-11-29 10:23
我看行,哈哈

你那个头像是个啥一直想问问,还有hnyzcj啥意思,每次@你都好麻烦。。。。。好难记的名字啊。。。

hnyzcj 发表于 2015-11-29 13:14:41

我头像是星座——天蝎。单位+姓名

Alvin.Lau 发表于 2015-11-29 22:25:02

不知道,我这是第几楼了

lianuo 发表于 2015-12-1 16:25:54

很前面啊,支持

iooops 发表于 2016-10-18 21:02:46

啊大圣!我要来抱你的大腿!!!

yoyojacky 发表于 2016-11-24 13:22:13

这个很高能啊!关键是,就一个USB的A口怎么破?
页: [1]
查看完整版本: 如何在Edison上播放音频