自从我更新到iOS 5后,我无法让MPMoviePlayerViewController在iPad上播放音频。视频很完美,但没有听到音频。我使用的格式无关紧要。这是行不通的。它适用于模拟器,但不适用于iPad。
- (IBAction)playVideo {
NSString *filepath = [[NSBundle mainBundle] pathForResource:@"test" ofType:@"m4v"];
NSURL *fileURL = [NSURL fileURLWithPath:filepath];
moviePlayer = [[MPMoviePlayerViewController alloc] initWithContentURL:fileURL];
[[NSNotificationCenter defaultCenter]
addObserver:self selector:@selector(movieFinishedPlaying:)
name:MPMoviePlayerPlaybackDidFinishNotification
object:[moviePlayer moviePlayer]];
[self presentMoviePlayerViewControllerAnimated:moviePlayer];
}
其他人有这个问题吗?还是找到了修复方法?
答案 0 :(得分:11)
这听起来很傻,但我们在我的团队遇到了一个问题,即一般iPad声音的音量控制被静音,这意味着我们的应用程序中没有播放视频的声音,即使音乐通过音乐播放器播放或网站上的视频效果很好。
要检查此音量控制,您可以调出任务管理器(双击主页按钮),然后向左滑动并有一些音乐控件;检查此屏幕上的静音按钮是否未打开。
答案 1 :(得分:4)
试试这个:
...
moviePlayer.useApplicationAudioSession = NO;
[self presentMoviePlayerViewControllerAnimated:moviePlayer];
答案 2 :(得分:4)
在分配MPMoviePlayerController之前设置音频会话将与视频一起播放声音
AVAudioSession *session = [AVAudioSession sharedInstance];
[session setCategory:AVAudioSessionCategoryPlayback error:nil];
moviePlayerController = [[MPMoviePlayerController alloc] initWithContentURL:fileURL];
答案 3 :(得分:1)
确保视频文件中的音频格式是iPad可以播放的内容。我相信模拟器可以访问主机的编解码器,这可以解释为什么iPad可以播放视频但不能播放音频。如this page in the MPMoviePlayerController文档中所述:
如果您使用此课程播放音频文件,则会在播放音频时显示带有QuickTime徽标的白色屏幕。对于音频文件,此类支持高达48 kHz的AAC-LC音频和高达48 kHz的MP3(MPEG-1 Audio Layer 3)立体声音频。
答案 4 :(得分:1)
我只是将侧面的滑动按钮变成锁定屏幕。然后声音突然发挥作用。