2

オーディオ ファイル (M4A) を開き、ループで 2048 バイトを読み取り、それを AudioFileStreamParseBytes に渡すことで、バイトを解析しようとしています。これは、プロパティでコールバックを呼び出しませんkAudioFileStreamProperty_ReadyToProducePackets。しかし、プロパティkAudioFileStreamProperty_FileFormatは正常に呼び出されています。(したがって、コールバック メカニズムが機能していることはわかっています。)

質問:

  1. AudioFileStreamParseBytesローカル ファイルから読み取ってオーディオ データを解析するために使用できますか? ほとんどの例では、ストリーム データAudioFileStreamParseBytesを解析して使用する方法を示していますが、ローカル ファイルからは読み取っていません。HTTP
  2. 上記のことを試みて、音声ファイルの処理に成功した人はいますか?

: AudioFileOpenWithCallbacksm4a ファイルを開くために使用していない理由は、ローカルにダウンロードした後に API 呼び出しで次のファイルを開くことができないためです ( http://www.arsenal-music.com/podcast/arsenal-podcast-05. m4a )。この m4a ファイルには画像が埋め込まれているためAudioFileOpenWithCallbacks、ファイルを解析できません。同時に、AudioStreamerこのファイルを開いて解析し、正常に再生する Matt Gallagher コードを使用しました。AudioFileStreamerParseBytesそのため、ローカルファイルからデータを読み取って使用することに傾いています。(私が理解している限り、データが HTTP ストリームからのものかローカル ファイルからのものかに違いはないはずですが、間違っている可能性があります。)

API 呼び出しにエラーは見られません (誰かが私にこの質問をした場合に備えて)。必要に応じてコードを貼り付けることができますが、知りたいのは、ファイルから読み取って渡すアプローチがAudioFileStreamParseBytes機能するかどうかだけです。

4

1 に答える 1

0

AudioFileStreamParseBytesいくつかのテストの後、ローカルファイルから読み取られたバイトを解析するために使用できることがわかりました。データは HTTP ストリームから取得する必要はありません。

于 2013-01-09T21:05:51.240 に答える