2012-03-11 82 views
2

請原諒我,如果這已經得到解答,請相信我我已經看到了太多的答案,但是找不到我能夠完全匹配我需要的答案。 我在我的網絡服務器上有一堆mp3文件。 我想有一個IOS應用程序連接到我的服務器並傳輸mp3文件。我不需要直播,我不想下載文件並在本地播放。 我創建了一個m3u文件,我可以從我的瀏覽器中指向它,並播放這些文件,但是當我使用Apple的MovePlayer示例代碼時,它無法播放該文件!通過http在IOS上播放mp3文件

像往常一樣的任何幫助表示讚賞。

回答

1

我不認爲蘋果的MPMoviePlayerController句柄.m3u文件格式,但它不是一個複雜的格式,您可以隨時解析播放列表並將實際的mp3網址提供給它。

+0

這是怎麼回事?我不想下載mp3文件。我想流式傳輸文件。我可以直接去mp3,我只是認爲m3u8是最好的選擇! – 2012-03-11 14:15:35

6

我個人不知道如何設置MPMoviePlayer來播放.m3u文件,但是如果您可以使用mp3完成相同的任務,那麼可以使用AVAudioFoundation輕鬆完成。

-(IBAction)playStreamMP3:(id)sender 
{ 
    NSData *fetchedData = [[NSData alloc] initWithContentsOfURL:[NSURL URLWithString:@"http://mysite.com/mysounds.mp3"]]; 
    if (data) 
    { 
     [data stop]; //data is an iVar holding any existing playing music 
     data = nil; 
    } 
    data = [[AVAudioPlayer alloc] initWithData:fetchedData error:nil]; 
    data.delegate = self; 
    [data play]; 
} 
+0

簡單而正是我所需要的!假設它使用http緩衝是否安全?並且使用它的應用程序不會被蘋果拒絕? – 2012-03-11 15:24:55

+1

我相信這是一個安全的假設,他們不應該給你任何麻煩! – 2012-03-11 15:28:16

+0

只讀:http://developer.apple.com/library/ios/#qa/qa1634/_index.html#//apple_ref/doc/uid/DTS40008185看來蘋果不贊成使用AVAudioPlayer進行http流式傳輸,它是僅建議用於本地文件播放。我一直在尋找。 – 2012-03-16 22:26:55