寻找简单的代码,通过HTTP从m3u播放流式音频

时间:2012-10-08 15:58:44

标签: ios audio-streaming

我正在寻找iOS的示例代码(我猜,使用AVMediaPlayer或AVPlayer)来播放流式音频,来自URL(我们当前的服务器网址为http://server.local:8008/ourradio.aac.m3u)。

在后台模式下应用时,也应该播放音频流。

2 个答案:

答案 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];