2012-07-15 99 views
1

我有一個類似「http://myserver.com/master.m3u8」的流媒體URL。 (這是虛擬URL)
這個URL在iPhone上的safari瀏覽器中玩的很好。
但是,使用下面的代碼演奏同一應用程序內的時候,我遇到了一些問題:iOS - MPMoviePlayerViewController不播放流式傳輸URL

NSURL* theURL = [NSURL URLWithString:@"http://myserver.com/master.m3u8"]; 

MPMoviePlayerViewController* moviePlayerViewController = [[MPMoviePlayerViewController alloc] initWithContentURL:theURL]; 
moviePlayerViewController.moviePlayer.movieSourceType = MPMovieSourceTypeStreaming;   
[self presentMoviePlayerViewControllerAnimated:moviePlayerViewController]; 

在應用程序中播放時的問題是,有時,屏幕將變爲黑色後。但我仍然能夠聽到音頻。
如何調試問題在哪裏。

請問有人能幫我解決類似的問題嗎?

+0

我有同樣的問題,屏幕不會變黑,但它顯示音頻圖像的QuickTime徽標。我注意到有時流式傳輸會從中恢復,但這需要一些時間。這個問題不是編碼問題,因爲如果我使用3G將應用程序與另一個使用WIFI的應用程序相關聯,則兩個實時視頻都會同時停止,但WI-FI恢復速度更快。你有辦法解決它嗎? – htafoya 2013-02-12 21:48:30

回答

0

如果您創建標準的m3u8文件,視頻的最低版本將包含音頻流的版本。因此,如果帶寬較低,播放器可能會切換到此流並僅播放音頻。

當發生這種情況時,我還沒有找到解決方案,但在應用程序中做了一些有意義的事情(例如暫停視頻並等待帶寬足以播放具有視頻的下一個更高版本的流)如果您可以調整m3u8或編碼過程,則可以從m3u8中刪除僅音頻版本。然後播放器會切換到最低的視頻流,並在帶寬不足以顯示時暫停播放。

請記住,您必須在將應用程序提交給商店時將此信息提供給App Review團隊。這是在本技術QA從蘋果公司提到:Resolving App Store Approval Issues for HTTP Live Streaming

注:由於基線64kbps的最大的只有音頻的HTTP直播流的要求是專門爲流在蜂窩網絡上,如果你的應用是自我限制到Wi -Fi僅限HTTP Live Streaming,並且您選擇不提供基準64 kbps音頻流,則必須將此信息提供給App Review小組。開發人員可以將此信息包含在您的應用程序的「審閱備註」字段中。

相關問題