ドキュメンテーション センター

  • 評価版
  • 製品アップデート

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

audiorecorder

オーディオ録音のためのオブジェクトの作成

構文

recorder = audiorecorder
recorder = audiorecorder(Fs,nBits,nChannels)
recorder = audiorecorder(Fs,nBits,nChannels,ID)

説明

recorder = audiorecorder は、8000 Hz、8 ビット、1 チャンネルの audiorecorder オブジェクトを作成します。

recorder = audiorecorder(Fs,nBits,nChannels) は、サンプル レート Fs (Hz 単位)、サンプル サイズ nBits、チャンネル nChannels の数を設定します。

recorder = audiorecorder(Fs,nBits,nChannels,ID) は、オーディオ入力デバイスを、ID で指定されたデバイスに設定します。

入力引数

Fs

サンプリング レート (Hz)。正しい値は、取り付けられている指定したオーディオ ハードウェアに依存します。多くのサウンド カードでサポートされている一般的な値は、8000、11025、22050、44100、48000、および 96000 Hz です。

既定値: 8000

nBits

サンプルごとのビット数。正しい値は、取り付けられているオーディオ ハードウェアに依存します。81624 のいずれかです。

既定値: 8

nChannels

チャンネル数。1 (モノラル) または 2 (ステレオ)。

既定値: 1

ID

デバイス識別子。デバイスの ID を取得するには、関数 audiodevinfo を使用します。

既定値: -1 (既定のデバイス)

メソッド

    メモ:   何らかのメソッドを呼び出す場合は、stop(recorder) などの関数構文を使用して audiorecorder オブジェクト名を含めてください。

get

audiorecorder オブジェクトのクエリ プロパティ。

getaudiodata

記録された信号値を格納する配列を作成します。

getplayer

audioplayer オブジェクトを作成します。

isrecording

録音中かどうかを問い合わせます。true または false を返します。

pause

録音を一時停止します。

play

録音されたオーディオを再生します。このメソッドは audioplayer オブジェクトを返します。

record

録音を開始します。

recordblocking

オーディオを録音し、録音が完了するまで制御を戻しません。このメソッドには、次のように、秒単位の録音時間の長さについて秒数の入力が必要です。
recordblocking(recorder,length)

resume

一時停止した時点から録音を開始します。

set

audiorecorder オブジェクトのプロパティを設定します。

stop

録音を停止します。

その他の構文オプションの詳細は、getgetaudiodataplayrecordrecordblocking、および set のリファレンス ページを参照してください。

プロパティ

BitsPerSample

サンプルごとのビット数。(読み取り専用)

CurrentSample

オーディオ入力デバイスが録音している現在のサンプル。デバイスが録音していない場合、CurrentSample は次のサンプルとなり、record または resume を使用して録音されます。(読み取り専用)

DeviceID

オーディオ デバイスの識別子。(読み取り専用)

NumberOfChannels

オーディオ チャンネル数。(読み取り専用)

Running

オーディオ レコーダーのステータス。'on' または 'off'。(読み取り専用)

SampleRate

サンプリング周波数 (Hz)。(読み取り専用)

TotalSamples

オーディオ データの全長 (サンプル単位)。(読み取り専用)

Tag

オブジェクトのラベルに使用する文字列。

Type

クラス名: 'audiorecorder'。(読み取り専用)

UserData

オブジェクトを使用して格納する追加データの任意のタイプ。

「コールバック関数」には次の 4 つのプロパティが適用されます。コールバック関数への最初の 2 つの入力は、audiorecorder オブジェクトと event 構造体でなければなりません。

StartFcn

録音を開始するときに 1 回実行される関数。

StopFcn

録音を停止するときに 1 回実行される関数。

TimerFcn

録音時に繰り返し実行される関数。繰り返し間隔を指定するには、TimerPeriod プロパティを使用します。

TimerPeriod

TimerFcn コールバック間の時間 (秒)。既定の設定: .05

audiorecorder では、将来のリリースでは削除される予定であり、これらのプロパティの指定値は無視されます。

BufferLength

バッファーの長さ (秒)。

NumberOfBuffers

バッファー数。

ステレオによる CD 品質のオーディオの audiorecorder オブジェクトを作成し、そのプロパティを表示します。

recObj = audiorecorder(44100, 16, 2);
get(recObj)
 

マイクロフォンを使用して自身の音声のサンプルを収集し、信号データをプロットします。

% Record your voice for 5 seconds.
recObj = audiorecorder;
disp('Start speaking.')
recordblocking(recObj, 5);
disp('End of Recording.');

% Play back the recording.
play(recObj);

% Store data in double-precision array.
myRecording = getaudiodata(recObj);

% Plot the waveform.
plot(myRecording);

詳細

すべて展開する

ヒント

  • audiorecorder オブジェクトを使用するには、システムに適切なサウンド カードがインストールされ、設定されていなければなりません。

  • 関数 audiorecorder は、長時間の高いサンプリング レートでの録音には向いていません。audiorecorder は、ストレージとしてシステム メモリを使用し、ディスク バッファリングを使用しないためです。大量に録音する場合は、MATLAB® のパフォーマンスが低下する可能性があります。

参考

| |

この情報は役に立ちましたか?