Main Content

audioplayer

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

説明

オーディオ データを再生するには、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

-32,768 ~ 32,767

single または double

-1 ~ 1

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

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

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

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

データ型: single | double

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

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

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

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

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

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

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

プロパティ

すべて展開する

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

SampleRate をプロパティを初期状態で設定するには、audioplayer オブジェクトの作成時に入力引数 Fs を使用します。オブジェクトの作成後、SampleRate プロパティを変更できます。

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

オブジェクト関数

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

すべて折りたたむ

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

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("Begin speaking.")
Begin speaking.
recDuration = 5; % record for 5 seconds
recordblocking(recObj,recDuration);
disp("End of recording.")
End of recording.

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

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

制限

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

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

    • 既存の audioplayer オブジェクトのサンプル レートを変更できません。

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

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

ヒント

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

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

  • メモ

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

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

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

バージョン履歴

R2006a より前に導入