Intel Edison 2.1でAudioがサポートされたので試してみた


ファームのアップデートがアナウンスされました。
[Intel Edison Software Package Version 2.1](http://download.intel.com/support/edison/sb/edison_rn_332032009.pdf)

今回のアップデートの目玉は

- MCU feature
- Audio support
- Flash Tool Lite

ですが、個人的にはオーディオを使いたかったので`Audio support`がすごく嬉しいです！

以前、こちらのエントリ「[Intel Edisonのカーネルビルド](http://qiita.com/yoneken/items/88165cebbadcc8d6878c)」を参考に、ビルドを試みたのですが、所有しているMacBook Airではスペックが足りないのか、数時間待った挙句メモリ不足になりビルドが出来ませんでした。
なので、標準でサポートしてくれたのは嬉しいです。

ファームのアップデートは簡単で、[こちらの記事を参考](http://qiita.com/sparkgene/items/08469bb94b4c6ac42dd8)にしてください。
実際に使うのは、[ダウンロードページ](https://software.intel.com/en-us/iot/hardware/edison/downloads)にある[Release 2.1 Yocto* complete image](http://downloadmirror.intel.com/24910/eng/edison-image-ww18-15.zip)です。

ファームのアップデートが終わって、バージョンを確認してみます。

```
root@edison:~# cat /etc/version
weekly-146
root@edison:~# uname -a
Linux edison 3.10.17-poky-edison+ #1 SMP PREEMPT Wed Apr 29 03:54:01 CEST 2015 i686 GNU/Linux
```

USBのイアホン＆マイクコネクタをさして確認すると、ちゃんと認識されてます。

```
root@sparkgene_edison:~# dmesg | tail
[  127.833046] xHCI xhci_check_bandwidth called for root hub
[  127.833332] hub 2-0:1.0: USB hub found
[  127.833375] hub 2-0:1.0: 1 port detected
[  127.896333] pmic_ccsm pmic_ccsm: USB VBUS Detected. Notifying OTG driver
[  128.148762] usb 1-1: new full-speed USB device number 2 using dwc3-host
[  128.169898] usb 1-1: New USB device found, idVendor=0d8c, idProduct=000c
[  128.169928] usb 1-1: New USB device strings: Mfr=0, Product=1, SerialNumber=0
[  128.169949] usb 1-1: Product: C-Media USB Headphone Set
[  128.325252] input: C-Media USB Headphone Set   as /devices/pci0000:00/0000:00:11.0/dwc3-host.2/usb1/1-1/1-1:1.3/input/input2
[  128.326027] hid-generic 0003:0D8C:000C.0001: input,hidraw0: USB HID v1.00 Device [C-Media USB Headphone Set  ] on usb-dwc3-host.2-1/input3
```

オーディオ用のツールをインストール

```
opkg install alsa-utils
```

適当なwavファイルをedison上にコピーします。
または、`/usr/share/sounds/alsa`に幾つかサンプルのwavが置いてあったので、それを使ってもいいです。

再生に使えるデバイスを調べます

```
root@sparkgene_edison:~# aplay -l

**** List of PLAYBACK Hardware Devices ****
card 0: Loopback [Loopback], device 0: Loopback PCM [Loopback PCM]
  Subdevices: 8/8
  Subdevice #0: subdevice #0
  Subdevice #1: subdevice #1
  Subdevice #2: subdevice #2
  Subdevice #3: subdevice #3
  Subdevice #4: subdevice #4
  Subdevice #5: subdevice #5
  Subdevice #6: subdevice #6
  Subdevice #7: subdevice #7
card 0: Loopback [Loopback], device 1: Loopback PCM [Loopback PCM]
  Subdevices: 8/8
  Subdevice #0: subdevice #0
  Subdevice #1: subdevice #1
  Subdevice #2: subdevice #2
  Subdevice #3: subdevice #3
  Subdevice #4: subdevice #4
  Subdevice #5: subdevice #5
  Subdevice #6: subdevice #6
  Subdevice #7: subdevice #7
card 1: dummyaudio [dummy-audio], device 0: 14 []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: dummyaudio [dummy-audio], device 1: ((null)) []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: dummyaudio [dummy-audio], device 2: ((null)) []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 2: Set [C-Media USB Headphone Set], device 0: USB Audio [USB Audio]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
```

card 2の device 0がUSBのデバイスだとわかりました。

再生してみます

```
root@sparkgene_edison:~# aplay ./sample.wav -D plughw:2,0
Playing WAVE './sample.wav' : Signed 16 bit Little Endian, Rate 11025 Hz, Mono
```

音が出ました！！
![IMG_5418_.jpg](https://qiita-image-store.s3.amazonaws.com/0/36184/351ea3b9-42eb-d36d-d212-a46947435989.jpeg "IMG_5418_.jpg")

`arecord`で録音もできるようですが、うまくいかなかったので次回試してみたいと思います

いろいろ調べた結果録音も出来ました！
こちらのエントリ「[Intel Edisonで録音する](http://qiita.com/sparkgene/items/0332d00d8399dbb37c31)」に書いてます。