这可能是一个愚蠢的问题。但是,不知道问题究竟在哪里。我尝试通过http
视频流传输MPMoviePlayercontroller
流式传输(HLS)很好。但是,音频不能在真实设备上工作(在模拟器中工作)这是我的代码,
NSURL *url = [NSURL URLWithString:[NSString stringWithFormat:@"http://mydomain:1935/coder/%@/playlist.m3u8", self.streamField.text]];
theMoviPlayer = [[MPMoviePlayerController alloc] initWithContentURL:url];
theMoviPlayer.controlStyle = MPMovieControlStyleFullscreen;
theMoviPlayer.movieSourceType = MPMovieSourceTypeStreaming;
theMoviPlayer.view.transform = CGAffineTransformConcat(theMoviPlayer.view.transform, CGAffineTransformMakeRotation(M_PI_2));
UIWindow *backgroundWindow = [[UIApplication sharedApplication] keyWindow];
[theMoviPlayer.view setFrame:backgroundWindow.frame];
[backgroundWindow addSubview:theMoviPlayer.view];
[theMoviPlayer play];
有人为此工作过吗?我只收到有关音频问题的设备。
我试过下面的一个,
NSURL *url = [NSURL URLWithString:@"http://devimages.apple.com/iphone/samples/bipbop/bipbopall.m3u8"];
MPMoviePlayerViewController *player = [[MPMoviePlayerViewController alloc] initWithContentURL:url];
[self presentMoviePlayerViewControllerAnimated:player];
这个(仅限于safari的网址)可以在带有音频的Safari浏览器的iPad和模拟器iPad上正常工作。但是,除了模拟器之外,不能在iPad上作为应用程序使用。
答案 0 :(得分:11)
首先添加AVFoundation.framework并添加以下代码。
<。>文件中的
#import <AVFoundation/AVFoundation.h>
和.m文件
[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback error:nil];