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

audioplayer

オーディオ再生用のオブジェクト

説明

オーディオ データを再生するには、audioplayer オブジェクトを使用します。このオブジェクトには、再生時の柔軟性をさらに向上できるプロパティがあります。たとえば、audioplayer オブジェクトの関数を使用して、一時停止、再開、またはコールバックの定義ができます。

作成

説明

player = audioplayer(Y,Fs) は、サンプル レート Fs を使用して、信号 Yaudioplayer オブジェクトを作成します。この関数はオーディオ プレーヤー オブジェクト player を返します。

player = audioplayer(Y,Fs,nBits) は、信号 Y に対し、サンプルあたり nBits ビットを使用します。

player = audioplayer(Y,Fs,nBits,ID) は、ID で識別されるオーディオ デバイスを出力に使用します。

player = audioplayer(recorder) は、オーディオ レコーダー オブジェクト recorder を使用して audioplayer オブジェクトを作成します。

player = audioplayer(recorder,ID) は、 ID で識別されるオーディオ デバイスを出力に使用するオブジェクトを recorder から作成します。

入力引数

すべて展開する

オーディオ信号。数値データのベクトルまたは 2 次元配列として指定します。

入力サンプル値の有効な範囲は、データ型により異なります。

データ型

サンプル値の範囲

int8

-128 ~ 127

uint8

0 ~ 255

int16

-32768 ~ 32767

single

-1 ~ 1

double

-1 ~ 1

データ型: single | double | int8 | int16 | uint8

ヘルツ (Hz) 単位のサンプリング周波数。数値スカラーとして指定します。

サンプリング レートの有効な値は、MATLAB® で使用できるサンプルレートと、システム上の特定のオーディオ ハードウェアの両方によって決まります。MATLAB には 1000 Hz <= Fs <= 384000 Hz の厳しい制限がありますが、ハードウェアに依存する追加の制限が適用されます。多くのサウンド カードでサポートされている一般的な値は、8000、11025、22050、44100、48000、および 96000 ヘルツです。

データ型: single | double

サンプルあたりのビット数。816 または 24 として指定します。

nBits は、信号 Y に浮動小数点値が含まれる場合にのみ指定します。nBits の有効な値は、オーディオ ハードウェアに依存します。たとえば、オーディオ ハードウェアに応じて、nBits816 または 24 のいずれかの値にできます。

デバイス識別子。整数として指定します。

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

オーディオ レコーダー オブジェクト。audiorecorder オブジェクトとして指定します。このオブジェクトを作成するには、関数 audiorecorder を使用します。

プロパティ

すべて展開する

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

サンプルあたりのビット数。正の整数として返されます。

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

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

デバイスが再生中でない場合、CurrentSampleplay メソッドまたは resume メソッドを使用して再生する次のサンプルです。

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

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

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

オーディオ チャネル数。1 または 2 として返されます。

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

オーディオ プレイヤーのステータス。on または off として返されます。

ヘルツ (Hz) 単位のサンプリング周波数。数値スカラーとして返されます。

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

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

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

ラベル。文字ベクトルとして指定します。

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

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

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

再生開始時に実行する関数。関数の名前を含む文字ベクトルまたは string スカラー、あるいは関数ハンドルとして指定します。

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

再生終了時に実行する関数。関数の名前を含む文字ベクトルまたは string スカラー、あるいは関数ハンドルとして指定します。

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

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

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

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

タイマー周期は、TimerFcn コールバック間の時間を秒単位で表したものです。

オブジェクト関数

getaudioplayer オブジェクトのプロパティ値のクエリ
isplaying再生が進行中かどうか判断する
pause再生または録音の一時停止
playaudioplayer オブジェクトからのオーディオの再生
playblockingaudioplayer オブジェクトからオーディオを再生し、再生が完了するまでコントロールを保持
resume 一時停止状態からの再生または録音の再開
setaudioplayer オブジェクトに対してプロパティ値を設定します。
stop再生または録音の停止

すべて折りたたむ

サンプル オーディオ ファイルを読み込んで再生します。

handel.mat をワークスペースに読み込みます。このファイルには、サンプル オーディオ データ配列 y とサンプリング レート Fs が含まれています。

load('handel.mat')
whos y Fs
  Name          Size             Bytes  Class     Attributes

  Fs            1x1                  8  double              
  y         73113x1             584904  double              

ファイルを再生するための audioplayer オブジェクトを作成します。

player = audioplayer(y,Fs);

既定のオーディオ デバイスでオーディオ オブジェクトを再生します。

play(player);

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

既定のプロパティ値をもつ audiorecorder オブジェクトを作成します。

recObj = audiorecorder;

マイクでスピーチのサンプルを 5 秒間録音します。

disp('Start speaking.')
Start speaking.
recordblocking(recObj,5);
disp('End of Recording.');
End of Recording.

録音からオーディオ プレイヤー オブジェクトを作成してから、録音されたサンプルを再生します。

playerObj = audioplayer(recObj);
play(playerObj);

R2006a より前に導入