Top > 日記 > 2013-04-13

**Raspberry Pi での音源切り替え [#u0391ac5]
usb-audioなどを(挿し)追加して、内臓音源との切り替えがようやく判明。
+準備
 $ sudo jed /etc/modprobe.d/alsa-base.conf
   options snd-usb-audio index=0
 とすると、usb-audio アダプターを挿してrebootすると、defaultが0となる。
 確認方法は
 $ aplay -l
 **** ハードウェアデバイス PLAYBACK のリスト ****
 カード 0: U0x41e0x30d3 [USB Device 0x41e:0x30d3], デバイス 0: USB Audio [USB Audio]
 カード 1: ALSA [bcm2835 ALSA], デバイス 0: bcm2835 ALSA [bcm2835 ALSA]
+OpenJTalk の場合
 $ jsay 文字列 で喋ってくれるが、音源を内蔵のbcm2835からusb-audioに換えるには、
 $ jsay 文字列 で喋ってくれるが、音源を内蔵のbcm2835からusb-audioにするには、
 jsay(スクリプト)の一部を変更する。
 #!/bin/sh
 TMP=/tmp/jsay.wav
 #cd /usr/share/hts-voice/nitech-jp-atr503-m001
 cd /usr/share/hts-voice/mei_happy
 echo "$1" | open_jtalk \
 -td tree-dur.inf \
 -tf tree-lf0.inf \
 -tm tree-mgc.inf \
 -md dur.pdf \
 -mf lf0.pdf \
 -mm mgc.pdf \
 -dm mgc.win1 \
 -dm mgc.win2 \
 -dm mgc.win3 \
 -df lf0.win1 \
 -df lf0.win2 \
 -df lf0.win3 \
 -dl lpf.win1 \
 -ef tree-gv-lf0.inf \
 -em tree-gv-mgc.inf \
 -cf gv-lf0.pdf \
 -cm gv-mgc.pdf \
 -k gv-switch.inf \
 -s 16000 \
 -a 0.05 \
 -u 0.0 \
 -jm 1.0 \
 -jf 1.0 \
 -jl 1.0 \
 -x /var/lib/mecab/dic/open-jtalk/naist-jdic \
 -ow $TMP && \
 aplay -D plughw:0,0 -q $TMP ← 内臓にするには1,0に。
 rm -f $TMP
 
+音源のコントロール((http://d.hatena.ne.jp/kakurasan/20070907/p1))
 直接 alsamixer を実行して音量等を変化させてもよいが、以下のようにコマンドで変更できる。
 pi@raspberrypi ~ $ amixer -c 0 ← #0の音源の状態を表示させる。
 Simple mixer control 'Speaker',0 ←のアポストロフィー"'"で囲まれた文字がコントロール項目で、コマンドで値を設定することができる。
   Capabilities: pvolume pswitch pswitch-joined penum
   Playback channels: Front Left - Front Right
   Limits: Playback 0 - 151
   Mono:
   Front Left: Playback 46 [30%] [-19.75dB] [on]
   Front Right: Playback 46 [30%] [-19.75dB] [on]
 Simple mixer control 'Mic',0
   Capabilities: pvolume pvolume-joined cvolume cvolume-joined pswitch pswitch-joined cswitch cswitch-joined penum
   Playback channels: Mono
   Capture channels: Mono
   Limits: Playback 0 - 32 Capture 0 - 16
   Mono: Playback 12 [38%] [17.92dB] [off] Capture 0 [0%] [0.00dB] [on]
 Simple mixer control 'Auto Gain Control',0
   Capabilities: pswitch pswitch-joined penum
   Playback channels: Mono
   Mono: Playback [on]
 【書式】値をセットする書式は
 $ amixer (-c [カード番号]) set [コントロール] [値]
 上記の場合を例にすると
 $ amixer -c 0 set Speaker 50%
 
''&color(Red){以下工事中};''
#clear
#comment
#navi(日記)

リロード   新規 下位ページ作成 凍結解除 差分 コピー 名前変更   ホーム 一覧 検索 最終更新 バックアップ リンク元   ヘルプ   最終更新のRSS