我正在尝试在 iPhone4 上使用 AVQueuePlayer 播放 .m4a 声音文件,但没有声音。如果我尝试使用相同文件的 AudioServicesPlaySystemSound,一切正常。
这是代码。
(AVFoundation framework is installed.)
#import <AVFoundation/AVFoundation.h>
-(void) play_sound_file: (NSString *) sound_file_m4a
{
printf("\n play_sound_file 1: '%s' ", [sound_file_m4a UTF8String] );
AVPlayerItem *sound_file = [[AVPlayerItem alloc] initWithURL:[NSURL URLWithString:[[NSBundle mainBundle] pathForResource:sound_file_m4a ofType:@"m4a"]]];
AVQueuePlayer *player = [AVQueuePlayer queuePlayerWithItems:[NSArray arrayWithObjects:sound_file, nil]];
[player play];
return;
}
2012 年 8 月 28 日的最新代码...........(注意:两个声音文件都可以使用 AudioServicesPlaySystemSound)
AVPlayerItem *sound_file1 = [[AVPlayerItem alloc] initWithURL:[NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:[[NSString alloc] initWithFormat:@"Hold still"] ofType:@"m4a"]]];
AVPlayerItem *sound_file2 = [[AVPlayerItem alloc] initWithURL:[NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:[[NSString alloc] initWithFormat:@"Press go"] ofType:@"m4a"]]];
AVQueuePlayer *player = [AVQueuePlayer queuePlayerWithItems: [NSArray arrayWithObjects:sound_file1, sound_file2, nil]];
[player play];