[Armadillo:06118] Re: Armadillo-440 & Froyoでの音声検索(VoiceSearch.apk)を動作させたい
kodera
email@hidden
2010年 11月 5日 (金) 20:16:24 JST
koderaです。
こちらも少し進捗がありましたのでご報告いたします。
起動時に出力されていた、ALSLibのエラーは出力されなくなりましたが、
新たなエラーが、音声認識時に出力されるようになりました。
予想では、ALSA関連の設定ファイル(asound.conf、asound.state)内の
設定値をArmadillo-500FX&Android向けに調整する必要があると考えております。
Armadillo-500FX&Androidでの、ALSAの使用方法をご存じの方がおられましたら、助言をお願い致します。
詳細については、後述致します。
> 手元では未定義classを呼んでいるエラーが出ています。
> Androidのバージョン違いが原因かもしれません。
こちらでは、そのようなエラーは出力されておりませんので、
やはりバージョンによる違いかもしれませんね。
■エラー内容
・起動時に出力されていたエラー(修正により出力されなくなった)
ERROR/ALSALib(4102): external/alsa-lib/src/control/control.c:909:(snd_ctl_open_noupdate) Invalid CTL AndroidPlayback
ERROR/AudioHardwareALSA(4102): Unable to attach mixer to device AndroidPlayback: No such file or directory
ERROR/ALSALib(4102): external/alsa-lib/src/control/control.c:909:(snd_ctl_open_noupdate) Invalid CTL AndroidRecord
ERROR/AudioHardwareALSA(4102): Unable to attach mixer to device AndroidRecord: No such file or directory
・音声認識実行時に出力されるエラー(修正後に出力されるようになった)
ERROR/ALSALib(4283): external/alsa-lib/src/control/setup.c:555:(add_elem) Cannot obtain info for CTL elem (MIXER,'Analog Capture Volume',0,0,0): No such file or directory
ERROR/ALSALib(4283): external/alsa-lib/src/control/setup.c:555:(add_elem) Cannot obtain info for CTL elem (MIXER,'Analog Capture Volume',0,0,0): No such file or directory
ERROR/ALSALib(4283): external/alsa-lib/src/control/setup.c:555:(add_elem) Cannot obtain info for CTL elem (MIXER,'Analog Capture Volume',0,0,0): No such file or directory
■実施した修正内容
下記サイトを参考にALSA関連の設定を行う事でエラーが出力されなくなりました。
・参考サイト:参考箇所
http://labs.beatcraft.com/ja/index.php?bc9%2Fbc9-android-sdk%20setup
-BoardConfig.mk修正
-init.armadillo500fx.rc修正
http://code.google.com/p/patch-hosting-for-android-x86-support/wiki/ALSA
-BoardConfig.mk修正
-devices.c修正
・ALSA関連の設定ファイル(asound.conf、asound.state)について
【asound.conf】
EM-1の下記ディレクトリにあるファイルを使用しました。
beagleボード用の設定のようなので、どのような値を設定するべきかを調査中です。
$EM1_ANDROID/vendor/ti/omap3beagle/asound.conf
【asound.state】
Ubuntu上で、「alsamixer」というコマンドを用いて作成しました。
Armadillo上で、alsamixerを動作させれれば正しいファイルが作れそうだと考えております。
が、まだalsamixerを動作させるに至っていません。
//↓ファイル内容↓////////////////////////////////////
state.armadillo500fx { //←state.AudioPCIの部分をstate.armadillo500fxに変更
control.1 {
comment.access 'read write'
comment.type BOOLEAN
comment.count 1
iface MIXER
name 'Master Playback Switch'
value true
}
control.2 {
comment.access 'read write'
comment.type INTEGER
comment.count 2
comment.range '0 - 63'
iface MIXER
name 'Master Playback Volume'
value.0 51
value.1 51
}
control.3 {
comment.access 'read write'
comment.type BOOLEAN
comment.count 1
iface MIXER
name 'Phone Playback Switch'
value false
}
control.4 {
comment.access 'read write'
comment.type INTEGER
comment.count 2
comment.range '0 - 63'
iface MIXER
name 'Phone Playback Volume'
value.0 0
value.1 0
}
control.5 {
comment.access 'read write'
comment.type BOOLEAN
comment.count 1
iface MIXER
name 'Mic Playback Switch'
value true
}
control.6 {
comment.access 'read write'
comment.type INTEGER
comment.count 2
comment.range '0 - 63'
iface MIXER
name 'Mic Playback Volume'
value.0 50
value.1 50
}
control.7 {
comment.access 'read write'
comment.type BOOLEAN
comment.count 1
iface MIXER
name 'Mic Boost (+20dB)'
value true
}
control.8 {
comment.access 'read write'
comment.type BOOLEAN
comment.count 1
iface MIXER
name 'Line Playback Switch'
value true
}
control.9 {
comment.access 'read write'
comment.type INTEGER
comment.count 2
comment.range '0 - 63'
iface MIXER
name 'Line Playback Volume'
value.0 46
value.1 46
}
control.10 {
comment.access 'read write'
comment.type BOOLEAN
comment.count 1
iface MIXER
name 'CD Playback Switch'
value true
}
control.11 {
comment.access 'read write'
comment.type INTEGER
comment.count 2
comment.range '0 - 63'
iface MIXER
name 'CD Playback Volume'
value.0 51
value.1 51
}
control.12 {
comment.access 'read write'
comment.type BOOLEAN
comment.count 1
iface MIXER
name 'Video Playback Switch'
value false
}
control.13 {
comment.access 'read write'
comment.type INTEGER
comment.count 2
comment.range '0 - 63'
iface MIXER
name 'Video Playback Volume'
value.0 0
value.1 0
}
control.14 {
comment.access 'read write'
comment.type BOOLEAN
comment.count 1
iface MIXER
name 'Aux Playback Switch'
value true
}
control.15 {
comment.access 'read write'
comment.type INTEGER
comment.count 2
comment.range '0 - 63'
iface MIXER
name 'Aux Playback Volume'
value.0 47
value.1 47
}
control.16 {
comment.access 'read write'
comment.type BOOLEAN
comment.count 1
iface MIXER
name 'PCM Playback Switch'
value true
}
control.17 {
comment.access 'read write'
comment.type INTEGER
comment.count 2
comment.range '0 - 63'
iface MIXER
name 'PCM Playback Volume'
value.0 51
value.1 51
}
control.18 {
comment.access 'read write'
comment.type ENUMERATED
comment.count 2
comment.item.0 Mic
comment.item.1 CD
comment.item.2 Video
comment.item.3 Aux
comment.item.4 Line
comment.item.5 Mix
comment.item.6 'Mix Mono'
comment.item.7 Phone
iface MIXER
name 'Capture Source'
value.0 Mic
value.1 Mic
}
control.19 {
comment.access 'read write'
comment.type BOOLEAN
comment.count 1
iface MIXER
name 'Capture Switch'
value true
}
control.20 {
comment.access 'read write'
comment.type INTEGER
comment.count 2
comment.range '0 - 15'
iface MIXER
name 'Capture Volume'
value.0 0
value.1 0
}
control.21 {
comment.access read
comment.type IEC958
comment.count 1
iface MIXER
name 'IEC958 Playback Con Mask'
value '0fff000f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'
}
control.22 {
comment.access read
comment.type IEC958
comment.count 1
iface MIXER
name 'IEC958 Playback Pro Mask'
value cf00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
}
control.23 {
comment.access 'read write'
comment.type IEC958
comment.count 1
iface MIXER
name 'IEC958 Playback Default'
value '0082000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'
}
control.24 {
comment.access 'read write'
comment.type BOOLEAN
comment.count 1
iface MIXER
name 'IEC958 Playback Switch'
value false
}
}
以上よろしくお願い致します。
armadillo メーリングリストの案内