Main Content

audiorecorder

オーディオ録音用のオブジェクト

説明

MATLAB® で処理するために、マイクなどの入力デバイスからオーディオ データを録音するには、audiorecorder オブジェクトを使用します。audiorecorder オブジェクトには、録音時の柔軟性をさらに向上できるプロパティがあります。たとえば、audiorecorder オブジェクトの関数を使用して、一時停止、再開、またはコールバックの定義ができます。

作成

説明

recorder = audiorecorder は、次のプロパティをもつ audiorecorder オブジェクトを作成して返します。

  • SampleRate: 8000

  • BitsPerSample: 8

  • NumChannels: 1

recorder = audiorecorder(Fs,nBits,nChannels) は、サンプル レートを Fs、サンプルあたりのビット数を nBits、およびチャネル数を nChannels に設定します。

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

入力引数

すべて展開する

ヘルツ (Hz) 単位のサンプル レート。正のスカラーとして指定します。

サンプル レートの有効な値は、システムのオーディオ ハードウェアに依存します。ほとんどの設定でサポートされる代表的なサンプル レートは、8,000、11,025、22,050、44,100、48,000、96,000 および 192,000 Hz です。

この引数は SampleRate プロパティを設定します。

データ型: single | double

サンプルあたりのビット数。816 または 24 として指定します。nBits は、信号に浮動小数点値が含まれる場合にのみ指定します。

nBits の有効な値は、システムのオーディオ ハードウェアに依存します。

この引数は BitsPerSample プロパティを設定します。

1 (モノラル) または 2 (ステレオ) として指定するオーディオ チャネルの数。

この引数は NumChannels プロパティを設定します。

整数として指定する、オーディオ デバイス識別子。

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

この引数は DeviceID プロパティを設定します。

プロパティ

すべて展開する

この プロパティ は読み取り専用です。

ヘルツ (Hz) 単位のサンプル レート。正のスカラーとして返されます。

SampleRate プロパティを設定するには、audiorecorder オブジェクトの作成時に入力引数 Fs を使用します。

この プロパティ は読み取り専用です。

サンプルあたりのビット数。816、または 24 として返されます。

BitsPerSample プロパティを設定するには、audiorecorder オブジェクトの作成時に入力引数 nBits を使用します。

この プロパティ は読み取り専用です。

オーディオ チャネル数。1 (モノラル) または 2 (ステレオ) として返されます。

NumChannels プロパティを設定するには、audiorecorder オブジェクトの作成時に入力引数 nChannels を使用します。

この プロパティ は読み取り専用です。

オーディオ デバイス識別子。整数として返されます。

DeviceID プロパティを設定するには、audiorecorder オブジェクトの作成時に入力引数 ID を使用します。

この プロパティ は読み取り専用です。

オーディオ入力デバイスで現在録音中のサンプル。正の整数として返されます。

デバイスが録音中でない場合、CurrentSample は、record メソッドまたは resume メソッドを使用して録音される次のサンプルになります。

この プロパティ は読み取り専用です。

オーディオ データの全長 (サンプル単位)。非負の整数として返されます。

この プロパティ は読み取り専用です。

オーディオ レコーダーのステータス。'off' または 'on' として返されます。

録音開始時に実行する関数。関数の名前を含む文字ベクトル、または関数ハンドルとして指定します。

コールバック関数への最初の 2 つの入力は、audiorecorder オブジェクトと event 構造体でなければなりません。詳細については、タイマー コールバック関数を参照してください。

録音終了時に実行する関数。関数の名前を含む文字ベクトル、または関数ハンドルとして指定します。

コールバック関数への最初の 2 つの入力は、audiorecorder オブジェクトと event 構造体でなければなりません。詳細については、タイマー コールバック関数を参照してください。

録音中に繰り返し実行する関数。関数の名前を含む文字ベクトル、または関数ハンドルとして指定します。繰り返し間隔を指定するには、TimerPeriod プロパティを使用します。

コールバック関数への最初の 2 つの入力は、audiorecorder オブジェクトと event 構造体でなければなりません。詳細については、タイマー コールバック関数を参照してください。

タイマー周期。正のスカラーとして指定します。

TimerPeriod は、TimerFcn コールバック間の時間を秒単位で表したものです。

ラベル。string スカラーまたは文字ベクトルとして指定します。

ユーザー定義データ。任意のデータ型の値として指定します。このプロパティを使用して、オブジェクトの追加データを格納します。

この プロパティ は読み取り専用です。

オブジェクト クラス名。'audiorecorder' として返されます。

オブジェクト関数

getaudiorecorder オブジェクトのプロパティ値のクエリ
getaudiodata録音したオーディオ信号の数値配列への保存
getplayer関連付けられた audioplayer オブジェクトを作成
isrecording録音が進行中かどうか判断する
pauseaudioplayer オブジェクトの再生または audiorecorder オブジェクトの録音の一時停止
playaudiorecorder オブジェクトからのオーディオの再生
recordaudiorecorder オブジェクトにオーディオを録音
recordblockingオーディオを audiorecorder オブジェクトに録音、録音が終了するまで制御を保持
resume 一時停止状態からの audioplayer オブジェクトの再生または audiorecorder オブジェクトの録音の再開
setaudiorecorder オブジェクトに対してプロパティ値を設定します。
stopaudioplayer オブジェクトの再生または audiorecorder オブジェクトの録音の停止

すべて折りたたむ

マイクからオーディオ データを録音してから、録音されたオーディオを再生します。

プロパティを指定して audiorecorder オブジェクトを作成します。CD 品質のオーディオの場合、サンプル レート (Fs)、サンプルあたりのビット数 (nBits)、チャネル数 (nChannels)、入力デバイスの識別子 (ID) の各プロパティを定義します。

Fs = 44100; 
nBits = 16; 
nChannels = 2; 
ID = -1;       % default audio input device 
recObj = audiorecorder(Fs,nBits,nChannels,ID);

マイクで音声のサンプルを 5 秒間録音します。

disp("Begin speaking.")
Begin speaking.
recDuration = 5; % record for 5 seconds
recordblocking(recObj,recDuration);
disp("End of recording.")
End of recording.

録音を再生します。

play(recObj);

制限

  • 次の制限は、MATLAB Online™ または MATLAB Web App Server™audiorecorder を使用している場合に適用されます。

    • audiorecorder オブジェクトから audioplayer オブジェクトを作成できません。

    • audiorecordernBits を無視します。代わりに、入力オーディオ デバイスのサンプルあたりの既定のビット数を使用してオーディオ データが録音されます。

    • サンプル レート Fs の有効な値は、MATLAB デスクトップと同じにならない場合があります。

ヒント

  • 関数 audiorecorder は、すべての Windows® プラットフォームとほとんどの UNIX® プラットフォームのサウンド デバイスをサポートしています。

  • MATLAB Online および MATLAB Web App Serveraudiorecorder は、Google Chrome® でサポートされます。

  • メモ

    MATLAB Online または MATLAB Web App Server を使用する場合のセキュリティに関する考慮事項: MATLAB Online または MATLAB Web App Serveraudiorecorder を使用している場合は、特定の機能と設定がプライバシーの管理に役立ちます。

    望ましくないアプリケーションでマイクが使用される可能性を低減するには、オーディオ デバイスへの自動アクセスをオフにします。これらの設定はいつでも変更できます。Web サイトへのアクセス許可を一度付与すると、以降にそのサイトを訪問する際、自動的にブラウザーがマイクにアクセス可能になる場合があります。Google Chrome のブラウザー設定を使用して、最初にアクセスを許可した後に特定のサイトに対するアクセスを取り消します。

    Google Chrome でプライベート ブラウジング モードを使用して MATLAB Online の Web サイトまたは MATLAB Web App Server にアクセスすることもできます。これを行うと、Chrome® では、ブラウザー設定に関係なく、マイクにアクセスしようとするたびに自動的に権限が求められます。

バージョン履歴

R2006a より前に導入