読者です 読者をやめる 読者になる 読者になる

【LIVA】【Ubuntu server14.04】Juliusを使いたい(USBマイクセッティング編)

家電を音声で操る、という魅力的なテーマに挑戦したく、Juliusのセッティングに着手しましたが、事の顛末を記載しておきます。

 

1.Juliusとは

 詳しくはこちら。

大語彙連続音声認識エンジン Julius

発音辞書や言語モデル・音響モデルと組み合わせることで、特定の音声に対して色々動作をさせることができます。

 

2.下準備

マイクを用意します。

今回買ったのは「MM-MCUSB22」。部屋のどこからでも家電を操るとなると可能な限り集音が必要になりますので。

 

サンワサプライ WEB会議高感度USBマイク MM-MCUSB22

サンワサプライ WEB会議高感度USBマイク MM-MCUSB22

 

 

USBマイクのセッティングとして、以下のように対応します。 

①デバイスの確認

$sudo lsusb

Bus 001 Device 005: ID 0d8c:0010 C-Media Electronics, Inc.

(略)

Bus001 Device 002: ID 05e3:0608 Genesys Logic, Inc. USB-2.0 4-Port HUB

(略)

LIVAのUSBポートは2つありますが、今回はUSBハブにUSBマイクを設定しているため、上記のような出力になります(Device005がMM-MCUSB22)。

 

※2017/1/29追記

現在はラズパイ2で動かしていますが、その場合はUSBマイクを接続すると以下のようにオーディオモジュールが追加される。

$cat /proc/asound/modules 

0 snd_bcm2835
1 snd_usb_audio

この snd_usb_audioを0になるように変更する必要がある。

 

②USBマイク優先度の変更

$sudo vi /etc/modprobe.d/alsa-base.conf

options snd-usb-audio index=-2

options snd-usb-audio index=0

USBマイクの優先度が高くなるように、snd-usb-audioを0に変更します。

 

※2017/1/29追記

どうやら、ラズパイ2だと上記ファイルがないため作ります。以下のように作成。

$sudo vi /etc/modprobe.d/alsa-base.conf

options snd slots=snd_usb_audio,snd_bcm2835

options snd_usb_audio index=0

options snd_bcm2835 index=1

 

優先度を変更したら一度再起動します。

$sudo shutdown -r now 

 

③優先度の変更を確認

$cat /proc/asound/modules

 0 snd_usb_audio
 1 snd_hda_intel

0 snd_usb_audioとなっていれば成功。

 

④マイクの音量を変更

$sudo amixer set Mic 54

Simple mixer control 'Mic',0
  Capabilities: cvolume cvolume-joined cswitch cswitch-joined
  Capture channels: Mono
  Limits: Capture 0 - 57
  Mono: Capture 54 [95%] [18.52dB] [off]

環境によって違うと思われますが、私のマシンでは最大設定値は57だそうです。

 

⑤録音できるか確認

$sudo arecord -r 16000 -f S16_LE test.wav

止めるときはCtrl+Cで(多分)。