1

Ok。私はここで何かが足りないと思います。CoreAudioは初めてですが、Appleのドキュメントとその他のWebを調べても無駄になりました。私もこれと同じ質問をアップル開発フォーラムに投稿しましたが、返信はありません。StackOverflowコミュニティが私を助けてくれることを願っています。

AVAudioRecorderとAVAudioPlayerを使用して、オーディオを録音して再生しています。私のアプリもファイル共有を使用しているため、ユーザーはオーディオをエクスポートして他の場所で再生できます。ここで問題が発生します。AACエンコーディングを使用して録音していますが、ファイルがiTunesにインポートされません。VLCを使用して正常に再生され、メディア情報を見ると、そのコーデックは私が期待したmp4aです。

AACのように聞こえるWebで読むには、mp4aラッパーが必要です。誰かが私を啓発したり、これに関するいくつかの情報に私を導くことができますか?おそらく私が使用できるAPIまたはサードパーティのライブラリですか?

SpeakHereとExtAudioFileConvertTestの例で遊んだり、ファイル共有を追加したり、AACとして記録したりしましたが、iTunesではまだ再生されません。

これが私のレコーディングコードです。提案やガイダンスに非常に感謝しています。ありがとう!

 NSDictionary *recordSettings = [[NSDictionary alloc] initWithObjectsAndKeys:
      [NSNumber numberWithFloat: 44100.0], AVSampleRateKey,
      [NSNumber numberWithInt: kAudioFormatMPEG4AAC], AVFormatIDKey,
      [NSNumber numberWithInt: 1], AVNumberOfChannelsKey,
      [NSNumber numberWithInt: AVAudioQualityMax],AVEncoderAudioQualityKey,
      nil];

     ...     


NSError *error;
recorder = [[AVAudioRecorder alloc] initWithURL: soundFileURL
                               settings: recordSettings
                                error: &error];
4

1 に答える 1

2

Apple フォーラムの一部の助けを借りて、これを理解しました。私がしなければならなかったのは、ファイル名の拡張子を m4a に設定することだけでした! 拡張子を手動で変更して iTunes で再生しようとしても機能しません。AVAudioRecorder のカバーの下にある何かが、拡張子を使用してファイルを正しくエンコードしているようです。拡張子を正しく設定するだけで、美しく機能します。これが将来他の誰かに役立つことを願っています。

于 2010-10-09T03:02:02.500 に答える