ドキュメンテーション

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

audioread

オーディオ ファイルの読み取り

構文

[y,Fs] = audioread(filename)
[y,Fs] = audioread(filename,samples)
[y,Fs] = audioread(___,dataType)

説明

[y,Fs] = audioread(filename)filename というファイルからデータを読み取り、サンプル データ y と、そのデータのサンプルレート Fs を返します。

[y,Fs] = audioread(filename,samples) はファイルから選択された範囲のオーディオ サンプルを読み取ります。ここで、samples[start,finish] の形式のベクトルです。

[y,Fs] = audioread(___,dataType) は、'native' または 'double'dataType に対応するデータ範囲のサンプル データを返すもので、前述の構文の入力引数を含めることができます。

すべて折りたたむ

サンプル ファイル handel.mat から WAVE ファイルを作成し、この WAVE ファイルを再び MATLAB® 内に読み取ります。

現在のフォルダーに WAVE (.wav) ファイルを作成します。

load handel.mat

filename = 'handel.wav';
audiowrite(filename,y,Fs);
clear y Fs

audioread を使用してデータを再び MATLAB 内に読み取ります。

[y,Fs] = audioread('handel.wav');

オーディオを再生します。

sound(y,Fs);

サンプル ファイル handel.mat から FLAC ファイルを作成し、最初の 2 秒のみを読み取ります。

現在のフォルダーに FLAC (.flac) ファイルを作成します。

load handel.mat

filename = 'handel.flac';
audiowrite(filename,y,Fs);

最初の 2 秒のみを読み取ります。

samples = [1,2*Fs];
clear y Fs
[y,Fs] = audioread(filename,samples);

サンプルを再生します。

sound(y,Fs);

.flac ファイルを作成し、最初の 2 秒のみを読み取ってから、オーディオをネイティブの整数形式で返します。

現在のフォルダーに FLAC (.flac) ファイルを作成します。

load handel.mat
filename = 'handel.flac';
audiowrite(filename,y,Fs);

最初の 2 秒のみを読み取り、データを指定して、サンプル データ y のデータ型を表示します。y のデータ型は double です。

samples = [1,2*Fs];
clear y Fs
[y,Fs] = audioread(filename,samples);
whos y
  Name          Size             Bytes  Class     Attributes

  y         16384x1             131072  double              

ネイティブ ファイル形式のオーディオ データを要求し、サンプル データ y のデータ型を表示します。y の新しいデータ型を確認します。

[y,Fs] = audioread(filename,'native');
whos y
  Name          Size             Bytes  Class    Attributes

  y         73113x1             146226  int16              

入力引数

すべて折りたたむ

読み取るファイルの名前。ファイル拡張子を含む文字ベクトルとして指定します。パスを指定する場合は、絶対パス、相対パスまたは部分パスを使用できます。

例: 'myFile.mp3'

例: '../myFile.mp3'

例: 'C:\temp\myFile.mp3'

audioread は次のファイル形式をサポートします。

サポートされているプラットフォームファイル形式
すべてのプラットフォームWAVE (.wav)
OGG (.ogg)
FLAC (.flac)
AU (.au)
AIFF (.aiff.aif)
AIFC (.aifc)
Windows® 7 以降、Macintosh および Linux®MP3 (.mp3)
MPEG-4 AAC (.m4a.mp4)

Windows 7 より前の Windows プラットフォームでは、audioread は MP3 でエンコードされたデータを含む WAVE ファイルを読み取りません。

Windows 7 以降のプラットフォームでは、audioread は Windows Media® Foundation によってサポートされるすべてのファイルも読み取ることができます。

Linux プラットフォームでは、audioread は GStreamer によってサポートされるすべてのファイルも読み取ることができます。

audioread は、Windows 7 以降、Macintosh および Linux 上の MPEG-4 (.mp4.m4v) ビデオ ファイル、Windows 7 以降および Linux プラットフォーム上の Windows Media ビデオ (.wmv) および AVI (.avi) ファイルから、それぞれオーディオを抽出できます。

[start,finish] の形式の 2 要素ベクトルとして指定する読み取り対象のオーディオ サンプル。この startfinish は最初と最後に読み取られるサンプルで、共に正のスカラー整数です。

  • startfinish 以下でなければなりません。

  • startfinish はファイル内のオーディオ サンプル数未満でなければなりません。

  • ファイル内の最後のサンプルを指定するには inf を使用できます。

メモ

audioread が、Windows 7 プラットフォームのいくつかの MP3 ファイルの一部を読み取る場合に、サンプルを読み取る範囲が少し移動することがあります。これは基盤となる Windows Media Foundation フレームワークの制限によるものです。

audioread が、Linux プラットフォームの MP3 および M4A ファイルの一部を読み取る場合に、サンプルを読み取る範囲が少し移動することがあります。これは基盤となる GStreamer フレームワークの制限によるものです。

例: [1,100]

データ型: double

オーディオ データ y のデータ形式。以下のいずれかとして指定します。

'double'倍精度の正規化されたサンプル
'native'ファイルにあるネイティブ形式のサンプル

整数形式でデータを格納しない MP3 や MPEG-4 AAC などの圧縮オーディオ形式の場合、'native' の既定の設定は 'single' になります。

出力引数

すべて折りたたむ

m x n の行列として返される、ファイル内のオーディオ データ。ここで、m は読み取られたオーディオ サンプル数、n はファイル内のオーディオ チャネル数です。

  • dataType を指定しない場合、あるいは dataType'double' の場合、ydouble 型になり、行列要素は −1.0 から 1.0 までの正規化された値になります。

  • dataType'native' の場合、y は入力ファイルのファイル形式および BitsPerSample 値に応じて MATLAB® の複数のデータ型のいずれかになります。このファイルの BitsPerSample 値を判別するには、audioinfo を呼び出します。

    ファイル形式BitsPerSample y のデータ型y のデータ範囲
    WAVE (.wav)8uint80 ≤ y ≤ 255
    16int16-32768 ≤ y ≤ +32767
    24int32-2^31 ≤ y ≤ 2^31–1
    32int32-2^31 ≤ y ≤ 2^31–1
    32single-1.0 ≤ y ≤ +1.0
    64double-1.0 ≤ y ≤ +1.0
    FLAC (.flac)8uint80 ≤ y ≤ 255
    16int16-32768 ≤ y ≤ +32767
    24int32-2^31 ≤ y ≤ 2^31–1
    MP3 (.mp3)、MPEG-4 AAC (.m4a.mp4)、OGG (.ogg) および圧縮された特定の WAVE ファイルN/Asingle-1.0 ≤ y ≤ +1.0

メモ

ysingle または double で、BitsPerSample が 32 または 64 の場合、y の値は −1.0 ~ +1.0 の範囲外になることがあります。

正のスカラーとして返される、オーディオ データ y のサンプル レート (Hz)

制限

  • Windows 7 以降および Linux プラットフォームでは、MP3、MPEG-4 AAC および AVI オーディオ ファイルにおいて audioread が読み取るサンプル数は、想定より少なくなる可能性があります。Windows 7 プラットフォームの場合、これは基盤となる Media Foundation フレームワークの制限によるものです。Linux プラットフォームの場合、これは基盤となる GStreamer フレームワークの制限によるものです。サンプル数分の正確な読み取りが必要な場合は、WAV または FLAC ファイルを使用してください。

  • Linux プラットフォームでは、audioread はステレオ データとして 1 つのチャネル データを含む MPEG-4 AAC ファイルを読み取ります。

R2012b で導入

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