从表,iphone播放音频文件

时间:2009-12-17 05:34:06

标签: iphone audio

我在数组中创建了一个音乐文件名列表,用于填充uitableview。我想让音频播放器将这个数组或表作为播放列表并逐个播放,具有播放,暂停,下一个,前一个,前进,后退和停止等所有功能。实现这一目标的最佳方式是什么。资源文件夹本身中的所有音乐文件,以便我可以将每个音乐文件作为

启动
NSString *soundFilePath = [[NSBundle mainBundle] pathForResource:@"filename" ofType:@"mp3"];


NSURL *newURL = [[NSURL alloc] initFileURLWithPath: soundFilePath];
    self.soundFileURL = newURL;
    [newURL release];


    [[AVAudioSession sharedInstance] setDelegate: self];

    [[AVAudioSession sharedInstance] setCategory: AVAudioSessionCategoryAmbient error: nil];


AVAudioPlayer *newPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL: soundFileURL error: nil];
    self.appSoundPlayer = newPlayer;
    [newPlayer release];


    [appSoundPlayer prepareToPlay];
    [appSoundPlayer setVolume: 1.0];
    [appSoundPlayer setDelegate: self];

1 个答案:

答案 0 :(得分:1)

这可能就像实施AVAudioPlayerDelegate一样简单吗?

appSoundPlayer.delegate=self;

- (void)audioPlayerDidFinishPlaying:(AVAudioPlayer *)player successfully:(BOOL)flag
{
    if (successfully) 
    {
        // play next track
    }
}

显然你需要跟踪当前正在播放的曲目,以便计算出下一首曲目,但这应该不是问题。你还必须为轨道跳过等实现自己的控制和逻辑,但这很容易做到。