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

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

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

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 秒を読み取ります。続いて、サンプル データ y のデータ型を表示します。

whos y
  Name          Size             Bytes  Class     Attributes

  y         16384x1             131072  double   

y のデータ型は double です。

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

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

  y         16384x1             32768  int16              

y のデータ型が int16 として表示されました。

入力引数

すべて展開する

filename - 読み取るファイルの名前文字列

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

例: 'myFile.mp3'

例: '../myFile.mp3'

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

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

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

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) ファイルから、それぞれオーディオを抽出できます。

samples - 読み取り対象のオーディオ サンプル[1,inf] (既定の設定) | 正のスカラー整数の 2 要素ベクトル

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

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

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

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

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

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

例: [1,100]

データ型:double

dataType - オーディオ データ y のデータ形式'double' (既定の設定) | 'native'

次の文字列のいずれかとして指定する、オーディオ データ y のデータ形式。

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

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

出力引数

すべて展開する

y - オーディオ データ行列

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^32 ≤ y ≤ 2^32–1
    32int32-2^32 ≤ y ≤ 2^32–1
    32single-1.0 ≤ y ≤ +1.0
    64double-1.0 ≤ y ≤ +1.0
    FLAC (.flac)8uint80 ≤ y ≤ 255
    16int16-32768 ≤ y ≤ +32767
    24int32-2^32 ≤ y ≤ 2^32–1
    MP3 (.mp3)、MPEG-4 AAC (.m4a.mp4) および OGG (.ogg)N/Asingle-1.0 ≤ y ≤ +1.0

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

Fs - サンプル レート正のスカラー

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

制限

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

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

参考

|

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