2013-04-17 82 views
3

我试图开发在那里我将有播放停止按钮一个应用程序。一旦我上播放按钮单击它应该流正在被一个特定链路上播放的音频音频流使用AVAudioPlayer

-(void)playMusic 
{ 
    mAudioPlayer=[[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL URLWithString:@"http://www.tuneindia.com"] error:nil]; 
    mAudioPlayer.delegate = self; 
    mAudioPlayer.volume=mVolumeSlider.value; 
    NSLog(@"THEVOLUME:::: %f",mVolumeSlider.value); 
    [mAudioPlayer prepareToPlay]; 
    [mAudioPlayer play]; 
} 

请帮助我理解AVAudioPlayer如何连接到链接并从那里传输音频(正如我们使用www.tuneindia.com)。

回答

3

如果你想知道为什么它为你写不播放音乐,那么原因是www.tuneindia.com是指一个网页,而不是特定的流。该网页上的流位于其他地方(检查HTML源代码,似乎不允许在StackOverflow中发布该链接)。但是,很可能您仍然无法播放它,第一个参数看起来像会话cookie。

如果你想测试你的代码,上传MP3文件到服务器,您可以存储文件,然后引用URL在播放器初始化是这样的:http://www.yourserver.com/path/to/yourmusic.mp3

+0

无论你说是好的。实际上,如果你打开该网站,它会自动播放一些音乐,我想在我的应用程序中播放该音乐。 – lreddy

+0

,如果我给服务器的地方,歌曲已被存储比它的工作? – lreddy

+1

你必须创建一个指向实际流的URL,而不是服务器本身。 AVAudioPlayer是不是足够聪明弄清楚,你要玩被嵌入到HTML页面流。这部作品在一个正常的浏览器的原因是,该页面还嵌入了只要你打开网页自动播放流的应用程序。您必须指向AVAudioPlayer的URL需要与嵌入式应用程序所指向的URL相同。参考tuneindia.com,您可以通过查看HTML页面的源代码找到该URL。 – tigloo