プロが教える店舗&オフィスのセキュリティ対策術

あまり知識はないのですが、javaの開発をしています。

現在javaでPCのライン入力から音声の録音を行っています。

参考にしたサイトは
http://www.hellohiro.com/sound.htm
で、非常に分かりやすくよかったのですが、

現在音声を複数個入力したいと考えています。
方法としてはUSB(PLANEX USB→3.5mmヘッドホン/マイク端子 USBオーディオ変換アダプタ PL-US35AP)
http://www.amazon.co.jp/PLANEX-USB%E2%86%923-5mm …
を用いる予定です。
音声の入力元をjava上から指定するにはどうすればよいのでしょうか?

またスレッドなどで、複数の音声を同時に録音する事などは可能でしょうか?

OSはMac OS Xを使っていますが、Windows も一応あるので特にこだわりません。


よろしくお願いします。

A 回答 (1件)

Mixer.Info[] infoList = AudioSystem.getMixerInfo();


を使って、ミキサー情報の一覧を取得。
その中から、使いたいミキサー情報を選択。

Mixer mixer = mixer = AudioSystem.getMixer(infoList[選択したミキサー情報の番号]);
を使って、ミキサーを取得。

line = (TargetDataLine)AudioSystem.getLine(info);
のような感じでターゲットデータラインを取得している処理を、

line = (TargetDataLine)mixer.getLine(info);
の様に、ミキサーから取得する様に置き換える。

こんな感じの説明で、伝わるでしょうか。

この回答への補足

上記の方法で音声を同様に再生する事には成功しました。しかし未だ音源(ライン、上記で言うとUSB)を指定して再生、等は出来ないのですが、infoの内容を変更するべきなのですか?それともmixerのsynchronize等を使うのでしょうか?
一応補足までに、自分の行いたい事は、上記に書いたUSBを複数個つなげて、ボタン等で、これを聞く、といったものを選べるようにする事です。

補足日時:2009/11/22 14:04
    • good
    • 0
この回答へのお礼

Yanch様

ありがとうございます。早速試してみます。
Mixerというと大きな機械をイメージしてしまうのですが
USBからくる音声でも使えるのですね。

早速やってみたいと思います。
ありがとうございます^^

お礼日時:2009/11/18 23:25

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!