我正在尋找iOS的示例代碼(我猜,使用AVMediaPlayer或AVPlayer)從URL(我們當前的服務器URL是http://server.local:8008/ourradio.aac.m3u)播放流音頻。尋找簡單的代碼來播放來自m3u的HTTP流媒體音頻
當在後臺模式下應用時,音頻流也應該播放。
我正在尋找iOS的示例代碼(我猜,使用AVMediaPlayer或AVPlayer)從URL(我們當前的服務器URL是http://server.local:8008/ourradio.aac.m3u)播放流音頻。尋找簡單的代碼來播放來自m3u的HTTP流媒體音頻
當在後臺模式下應用時,音頻流也應該播放。
M3U是播放列表格式。這是一個純文本文件,其中包含音樂文件的位置,最着名的是MP3文件。閱讀Wikipedia Article about M3U。然後使用這個播放MP3每個如果你真的想在iPhone上:
AVPlayer *musicPlayer = [AVPlayer playerWithURL:musicLinkFromM3uFile];
[musicPlayer play];
其中musicLinkFromM3uFile
從m3u文件讀取MP3文件的位置。
編輯:爲了能夠繼續在後臺播放,您需要設置一個類別爲kAudioSessionCategory_MediaPlayback
的音頻會話。要做到這一點的代碼以下行添加到您的applicationDidLoad在應用程序委託:
UInt32 sessionCategory = kAudioSessionCategory_MediaPlayback;
AudioSessionSetProperty(kAudioSessionProperty_AudioCategory, sizeof(sessionCategory), &sessionCategory);
您還需要在您的Info.plist設置UIBackgroundModes
到audio
。
NSString *urlAddress = @"http://www.mysite.com/test.mp3";
urlStream = [NSURL URLWithString:urlAddress];
self.player = [AVPlayer playerWithURL:urlStream];
[player play];
不工作。 :(錯誤是NSOSStatusErrorDomain。 – Andrey
哦,對不起,AVAudioPlayer不支持通過HTTP進行流式傳輸,請嘗試使用AVPlayer代替 – miho
也許,你有一些樣例嗎? – Andrey