ようこそ ゲスト さん、新規登録(無料)して気になる疑問を解決しませんか?

質問

QNo.3949335 MATLABのwavreadについて
質問者:kkk311 現在、MATLABのソースを見ているのですが。

[y,Fs,bits] = wavread('filename',[N1 N2])
の一文はどういう動作を行っているのでしょうか?

マニュアル等をみて以下のことを見つけたのですが、どうにも理解できません。
・[y,Fs,bits] = wavread('filename') は、Hertz 単位でサンプルレート(Fs)を戻し、ファイルの中のデータを符号化するために使用するサンプルあたりのビット数(bits) も戻します。
・[...] = wavread('filename',N) は、ファイル内の各チャンネルから最初の N個のサンプルのみを出力します。


どなたかわかりやすく教えていただけないでしょうか、よろしくお願いいたします。
困り度:
  • 困っています
質問投稿日時:
08/04/14 22:15
この質問に対する回答は締め切られました。

回答良回答20pt

ANo.1 N1番目のデータからN2番目のデータまでを読み込むという意味だと思います。

データ列リストのN1番目の要素からN2番目の要素までを表す時には、変数名[要素の始まりの位置 要素の終わりの位置]で指定しますよね。この変数名が省略されていると考えれば、MATLABでよくつかわれる表現だと思います。

ちなみに、
 [...] = wavread('filename',N) 
という表現は、
 [...] = wavread('filename',[1 N])
と同じだと思います。 つまり1からN番目を読み込むと表現するか、最初からN個読み取ると書くかだけの違いです。

参考リンク先:
http://dl.cybernet.co.jp/matlab/support/manual/r13/toolbox/matlab/r...
回答者:e_beam
種類:アドバイス
どんな人:経験者
自信:参考意見
回答日時:
08/04/17 16:17
この回答へのお礼ありがとうございました!!
とても参考になりました!