オーディオ ファイル (M4A) を開き、ループで 2048 バイトを読み取り、それを AudioFileStreamParseBytes に渡すことで、バイトを解析しようとしています。これは、プロパティでコールバックを呼び出しませんkAudioFileStreamProperty_ReadyToProducePackets
。しかし、プロパティkAudioFileStreamProperty_FileFormat
は正常に呼び出されています。(したがって、コールバック メカニズムが機能していることはわかっています。)
質問:
AudioFileStreamParseBytes
ローカル ファイルから読み取ってオーディオ データを解析するために使用できますか? ほとんどの例では、ストリーム データAudioFileStreamParseBytes
を解析して使用する方法を示していますが、ローカル ファイルからは読み取っていません。HTTP
- 上記のことを試みて、音声ファイルの処理に成功した人はいますか?
注: AudioFileOpenWithCallbacks
m4a ファイルを開くために使用していない理由は、ローカルにダウンロードした後に API 呼び出しで次のファイルを開くことができないためです ( http://www.arsenal-music.com/podcast/arsenal-podcast-05. m4a )。この m4a ファイルには画像が埋め込まれているためAudioFileOpenWithCallbacks
、ファイルを解析できません。同時に、AudioStreamer
このファイルを開いて解析し、正常に再生する Matt Gallagher コードを使用しました。AudioFileStreamerParseBytes
そのため、ローカルファイルからデータを読み取って使用することに傾いています。(私が理解している限り、データが HTTP ストリームからのものかローカル ファイルからのものかに違いはないはずですが、間違っている可能性があります。)
API 呼び出しにエラーは見られません (誰かが私にこの質問をした場合に備えて)。必要に応じてコードを貼り付けることができますが、知りたいのは、ファイルから読み取って渡すアプローチがAudioFileStreamParseBytes
機能するかどうかだけです。