4

iOS では、ロードされた .wav ファイルのバイト数を簡単に取得できます。

UInt64 dataSize = 0;  // dataSize
UInt32 ps = sizeof(UInt64); // property size
if( AudioFileGetProperty(fileId, kAudioFilePropertyAudioDataByteCount, &ps, &dataSize) )
  puts( "error retriving data chunk size" );
return dataSize ;

しかし、ドキュメントでは、PCM ウェーブ ファイルのサンプリング レートを決定する方法に関する情報が見つからないようです。

4

1 に答える 1

6

AudioStreamBasicDescriptionを使用して答えを見つけました。あなたがしなければならないのは:

UInt32 getAudioDataSamplingRate( AudioFileID fileId )
{
  AudioStreamBasicDescription bsd;
  UInt32 ps = sizeof(AudioStreamBasicDescription) ;
  if( AudioFileGetProperty(fileId, 
      kAudioFilePropertyDataFormat, &ps, &bsd) )
    puts( "error retriving af basic description" );
  return bsd.mSampleRate ;
}
于 2012-12-19T01:18:46.977 に答える