科学の箱

科学・IT・登山の話題

IT バイオリン

midiで入力デバイスの一覧を取得する

投稿日:

マイクロフォンを使いmidiで録音をしてみる。下記のページからmidiデバイスの一覧を取得したが、肝心のマイクロフォンが含まれていない。

バイオリンのチューナーを作る – midiをさらに掘り下げた

確認してみるとmidiデバイスと入力デバイスは異なっている。入力デバイスの一部にmidiデバイスが含まれている。よってmidiで録音するために必要な機能は以下になる。

  • 入力デバイスの一覧を取得する
  • マイクロフォンを選択する
  • レコードする
  • midiで出力する。

まずは入力デバイスの一覧を取得してみた。


package midi09_mixer;

import javax.sound.sampled.AudioSystem;
import javax.sound.sampled.Line;
import javax.sound.sampled.LineUnavailableException;
import javax.sound.sampled.Mixer;

public class midi09 {
public static void main(String[] args) {
try {

Mixer.Info[] mixerInfos = AudioSystem.getMixerInfo();
for (Mixer.Info info : mixerInfos) {
Mixer m = AudioSystem.getMixer(info);
Line.Info[] lineInfos = m.getSourceLineInfo();
for (Line.Info lineInfo : lineInfos) {
System.out.println(info.getName() + "---" + lineInfo);
Line line;
line = m.getLine(lineInfo);
System.out.println("\t-----" + line);
}
lineInfos = m.getTargetLineInfo();
for (Line.Info lineInfo : lineInfos) {
System.out.println(m + "---" + lineInfo);
Line line = m.getLine(lineInfo);
System.out.println("\t-----" + line);

}
}
} catch (LineUnavailableException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

}
}

ここから特定の入力機器を音源にするためにはgetMixerでミキサーオブジェクトを取得→Lineを取得する。

メタ情報

inarticle



メタ情報

inarticle



-IT, バイオリン
-, ,

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

Chefでhelloを実行してみる。

前提 Rubyがインストールされている VagrantがインストールされていてVirtualboxが起動している Chef, Knifeがインストールされている 手順 knifeコマンドを使ってcoo …

no image

pukiwikiが動かなくなった件について – Part2

手順がはっきりしたので備忘録として http://pukiwiki.cafelounge.net/plus/?Downloadからpukiwiki Plus!の国際版をダウンロードする。 data2u …

no image

エスカレーションついて考える

マネージャへのエスカレーションについて考える。 # 目的 まず明らかにするのは何を要求するのか 過去一ヶ月ほどでいろいろな課題を送り出したが、反応がまったくないとか、あっても的外れ、あるいは進捗が遅い …

no image

RDPで表示されている画面が小さくて文字が読めない

クライアントサーバーベースのアプリケーションでは管理上の手間を省くために、アプリケーションサーバーを構築しクライアントからRDPで接続する構成をとることがよくある。 ラップトップの入れかえや新しく入っ …

no image

CognosでMy Folderの内容について一覧を取得する

CognosはすべてのデータをContents Managerと呼ばれるデータベースに保持している。このデータからMy Folderの中身を取得できる。 ただしデータ保持方法が特殊であるために,SQL …

2013年11月
« 10月   12月 »
 123
45678910
11121314151617
18192021222324
252627282930  

side bar top



アーカイブ

カテゴリー