我正在寻找iOS的示例代码(我猜,使用AVMediaPlayer或AVPlayer)来播放流式音频,来自URL(我们当前的服务器网址为http://server.local:8008/ourradio.aac.m3u)。
在后台模式下应用时,也应该播放音频流。
答案 0 :(得分:6)
M3U是一种播放列表格式。它是一个纯文本文件,包含音乐文件的位置,最明显的是MP3文件。阅读Wikipedia Article about M3U。如果你真的想在iPhone上使用它,那就用这个播放每个MP3:
AVPlayer *musicPlayer = [AVPlayer playerWithURL:musicLinkFromM3uFile];
[musicPlayer play];
其中musicLinkFromM3uFile
是从m3u文件读取的MP3文件的位置。
编辑:为了能够继续在后台播放,您需要设置类别为kAudioSessionCategory_MediaPlayback
的音频会话。为此,请将以下代码行添加到app delegate中的applicationDidLoad:
UInt32 sessionCategory = kAudioSessionCategory_MediaPlayback;
AudioSessionSetProperty(kAudioSessionProperty_AudioCategory, sizeof(sessionCategory), &sessionCategory);
您还需要将Info.plist中的UIBackgroundModes
设置为audio
。
答案 1 :(得分:2)
NSString *urlAddress = @"http://www.mysite.com/test.mp3";
urlStream = [NSURL URLWithString:urlAddress];
self.player = [AVPlayer playerWithURL:urlStream];
[player play];