私はかなり簡単だと思ったAVAudioPlayer
でMP3を再生しようとしています。残念ながら、それはかなりうまく機能していません。ここに私がしたのはすべてです:AVAudioPlayerはすぐにARCで再生を停止します
- テストのために、Xcodeに新しいiOSアプリケーション( ビュー)を作成しました。
- は私がプロジェクトにAVFoundationフレームワークだけでなく、私はAppsのドキュメント」フォルダにMP3ファイルを追加
から
#import <AVFoundation/AVFoundation.h>
を追加しました。私は次のように
ViewControllers
viewDidLoad:
を変更:
ViewController.m
コード:
- (void)viewDidLoad
{
[super viewDidLoad];
NSString* recorderFilePath = [NSString stringWithFormat:@"%@/MySound.mp3", [NSHomeDirectory() stringByAppendingPathComponent:@"Documents"]];
AVAudioPlayer *audioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:recorderFilePath] error:nil];
audioPlayer.numberOfLoops = 1;
[audioPlayer play];
//[NSThread sleepForTimeInterval:20];
}
を、それが再生を開始した後、残念ながら、オーディオは明らかに右に停止します。 sleepForTimeInterval
のコメントを外すと、20秒間再生されたあと停止します。この問題は、ARCを使用してコンパイルする場合にのみ発生します。それ以外の場合は、問題なく動作します。
音声を再生するために別のスレッドを開始する必要はありません。何かが記録されているかどうかを確認するためにエラーポインタを提供しようとしましたか? – isaac
あなたはどんなエラーを受けていますか? – Daniel
はい、initWithContensOfURLにNSErrorを渡しました。しかし、それは無限にとどまっています...だから私は何の誤りもなく、ただちに再生を止めます。 – Phlibbo