メディア制御

「メディア制御」では、MCI(Media Control Interface)に対して命令を送ることができる機能が用意されています。

MCI(Media Control Interface)とは、Windowsでメディアファイル(WAVEやMP3, CD, MIDIなど)を再生するための機能を提供するためのWindowsAPIのライブラリです。

手順

【自分】から【MCIコマンド】を取得する

MCIでMCIコマンドを実行して、その結果を取得します

【自分】へ【MCIコマンド】を命令する

MCIでMCIコマンドを実行します

サンプルコード

MCIを利用してWAVE形式の音声データを再生する

MCIを利用してWAVE形式の音声データを再生します。

「再生」手順を使わずにMCIコマンドを利用して、WAVEファイルを再生するプログラム例です。

ファイル名は、「tada.wav」
エイリアス名は、「wave1」

//デバイスを開き、演奏を始める
メディア制御へ「open "[ウィンドウズフォルダ]media\[ファイル名]" alias [エイリアス名]」を命令する
メディア制御へ「play [エイリアス名]」を命令する
 			
//演奏が終わるまで待機する
繰り返す
 もし[メディア制御から「status [エイリアス名] mode」を取得したもの]が「playing」でないなら、繰り返しから抜け出す
 0.1秒、待つ
繰り返し終わり

//演奏を止めて、デバイスを閉じる
メディア制御へ「stop [エイリアス名]」を命令する
メディア制御へ「close [エイリアス名]」を命令する

WAVEファイルへ録音する

MCIコマンドを利用して、WAVEファイルに録音する例です。

※Windows Media Playerで開くことができない場合は、サウンドレコーダで試してみてください。

ーーWAVE録音の準備
「open new type waveaudio alias WAVE」をメディア制御へ命令する
ーー録音開始
「record WAVE」をメディア制御へ命令する

ーー停止
「stop WAVE」をメディア制御へ命令する
ーー保存する
「save WAVE "C:\Test.wav"」をメディア制御へ命令する
ーーファイルを閉じる
「close WAVE」をメディア制御へ命令する

CDドライブを開く

「set cdaudio door open」をメディア制御へ命令する

MCIコマンドの例

MCIコマンド文字列は、対象となるファイルやデバイスによって、いろいろなものが用意されています。

[エイリアス]とは、対象となるファイル・デバイスを表す仮の名前です。
openコマンドを利用したときに、指定できます。

再生するファイルや周辺機器によっては、サポートされていないものもあります。

MCIコマンド 説明
open [ファイル名] alias [エイリアス] 指定したデバイスでファイルを開く
close [エイリアス] 閉じる
play [エイリアス] 再生する
record [エイリアス] 録音する(WAVEのみ)
stop [エイリアス] 停止する
pause [エイリアス] 一時停止する
resume [エイリアス] 再開する
seek [エイリアス] to start 演奏位置を変更する
「to start」で先頭
「to end」で最後
set cdaudio door open CDドライブを開ける
set cdaudio door closed CDドライブを閉める
set [エイリアス] tempo [テンポ] MIDIのテンポを変える
set [エイリアス] audio all [off/on] ミュートするかどうか
set [エイリアス] audio left [off/on] 左の音をミュートするかどうか
set [エイリアス] audio right [off/on] 右の音をミュートするかどうか

ページ先頭へ