簡體   English   中英

iPhone HE-AAC流媒體直播(3G)

[英]iPhone HE-AAC Streaming over Mobile Network (3G)

使用jPlayer開發了一個互聯網廣播流媒體,它使用帶有jQuery的html5音頻標簽,並為不支持的瀏覽器提供閃回功能。 在iPhone(iOS 5.0.1)上測試播放器后,我們遇到了一個非常特殊的問題。

當iPhone連接到WiFi時,它使用HE-AAC V2流@ 64kbps 44.1kHz(蘋果產品的首選編解碼器)完美地流式傳輸。 然而,當iPhone連接到3G移動網絡時,它會“斷續續續”或每1-2分鍾停止流動1-2秒(不會完全停止流式傳輸)。 令人不安的是,當iPhone被迫以相同的比特率使用單獨的MP3流時,它沒有這個問題並且在3G上運行良好。

更新5

我們最近購買了3G / 4G Sprint移動熱點設備,並使用該設備測試了這個問題。 當iPhone連接到移動熱點時,它顯示為連接到wifi設備,即使實際連接是通過3G / 4G,也不會出現問題。 這可能會回到iPhone不通過HTTP直播和直接連接到移動網絡處理HE-AAC的問題。

更新4

將iPhone更新到iOS 5.1但問題仍然存在。

更新3

請閱讀此處有關連接到移動網絡時腳本無法正確呈現的各種問題。 手指似乎指向可能插入代理以服務網頁的移動網絡運營商,例如用於縮小圖像尺寸。 它也可能會注入一些JavaScript頁面。 測試頁面可以在這里找到注意:此頁面使用HE-AAC,因此它只適用於iPhone ...

UPDATE

根據Apple針對iOS設備的HTTP Live Streaming doc,“僅音頻內容可以是MPEG-2傳輸,也可以是MPEG基本音頻流,無論是采用ADTS標頭的AAC格式還是MP3格式。” 我們的音樂服務器使用OddcastV3編碼器向icecastV2服務器發送三個流(MP3,HE-AAC V2和Oggvorbis)。 不確定編碼器是否正在插入HE-AAC V2流的ADTS標頭。 有沒有辦法檢查這個?

從無線電規划的角度來看 - 這是我的兩分錢:

您所描述的內容聽起來像帶寬整形 - 這是無線電網絡(如3G網絡)的常見設計和常用設計。 在我工作的大多數3G運營商中,通常會優化您的網絡以提供高速突發(想想下載圖像,發送一封電子郵件或獲取一個HTML頁面) - 通過“長期運行”的高帶寬服務。 這是因為這是大多數用戶想要/需要的簡單事實。

這種整形可以在典型的3GPP(GSM 3G)網絡上導致您首先獲得支持384kbit的RAB(無線電接入承載),然后只要您的設備接受它就降級。 這意味着典型的你將從384 - > 256 - > 128切換,然后64kbit,你的設備可能開始慢慢接收數據,然后網絡升級它,並在一段時間后再次降級。

那么為什么不是MP3文件口吃呢? 我的猜測是總的kbit率可能會有所不同 - 所以你在64kb的RAB中沒問題。 這是一種普遍現象。

我們設法完成同樣的工作。 移動設備上的64kbit AAC-v2。 我們是流媒體文件,而不是源源不斷,我認為Magnus是正確的,當他解釋網絡如何優先考慮流量突發時,在我們的情況下,這意味着我們立即擁有大部分文件,播放器可以繼續播放直到下一個爆發進來。在你的情況下,這意味着流暫停直到下一次爆發。

如果您可以在流式傳輸(更大的緩沖區)中切換到更大的塊或者改為流式傳輸整個文件?

我們在iOS上遇到了一個非常奇怪的現象,我們不得不將.m4a中的所有文件重命名為.aac,以便能夠在iOS上進行流式傳輸。 如果我們沒有重命名它們iOS就不會播放它們。

祝好運。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM