ブログ

Armadilllo-IoT G3:USBオーディオで音声再生、録音

at_takuma.fukuda
2020年6月8日 6時41分

下記記事を参考に、Armadillo-IoT G3でUSBオーディオを動作させます。
Armadillo-640:USBオーディオで録音、再生

1.使用機器

確認にはこちらのUSBオーディオ機器を使用しました。
サンワサプライ:MM-ADUSB3

2.接続

カーネルのconfigを行わずにMM-ADUSB3を接続します。
6/8時点で下記からダウンロード可能な最新のLinuxカーネル・DTB・ユーザランドを書き込んだG3にUSBオーディオを接続します。
コンソールに以下のように表示されることから、USBオーディオデバイスとして認識されていることがわかります。

usb 1-1: new full-speed USB device number 4 using ci_hdrc
input: UC Mic USB Audio Device  as /devices/soc0/soc/30800000.aips-bus/30b10000.usb/ci_hdrc.0/usb1/1-1/1-1:1.3/0003:0D8C:0013.0003/input/input4
hid-generic 0003:0D8C:0013.0003: input: USB HID v1.00 Device [UC Mic USB Audio Device ] on usb-ci_hdrc.0-1/input3

3.パッケージのインストール

音声処理のためのパッケージをインストールします
参考元の記事と同じく、
Advanced Linux Sound Architecture (ALSA) を利用するためのパッケージであるalsa-utilsをインストールします。

root@armadillo:~# apt-get install alsa-utils

4.デバイス情報の確認

録音・再生操作を行う際にデバイスを指定するため、接続しているMM-ADUSB3のデバイス情報を確認します。
以下のコマンドでカード番号等が表示されます。

root@armadillo:~# aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: Device [USB Audio Device], device 0: USB Audio [USB Audio]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

参考元の記事と同様、"card 0"となっているため、カード番号が0であることがわかりました。

5.動作確認

まず録音を行います。
参考元記事と同様に、コマンド末尾の"hw:0"でカード番号"0"を指定してUSBオーディオのマイクから"sample.wav"に録音します。

root@armadillo:~# arecord -c 1 -f S16_LE -r 16000 sample.wav -D hw:0


録音したデータを再生します。,
やはり参考元記事と同様に、コマンド末尾の"plughw:0"でカード番号"0"を指定してUSBオーディオのスピーカから"sample.wav"を再生します。

root@armadillo:~# aplay sample.wav -D plughw:0

これで録音した音声が再生されたら、録音・音声どちらも実行できることが確認出来ます。