2012-08-29 98 views
2

我目前正在進行一項可行性研究,其中一個問題涉及從流式轉換到逐步下載音頻的可能性。通過漸進式下載我的意思是音頻文件,這是由什麼也沒有它看中一個標準的Web服務器託管,可通過標準的HTTP調用下載和回放之前整個文件下載完畢。Android MediaPlayer,是否支持漸進式下載音頻?

我公司已對外承包Android應用開發者,現在聲稱,雖然在上述規定的方式漸進式下載的MP3文件,但工作正常,不可能與AAC MP4文件。我沒有理由懷疑開發者,但我想再次發表意見。我一直在研究這個話題(通過瘋狂的谷歌搜索),並找到沒有理由不工作。我還測試了Android Market上的一些現有播放器(例如MX播放器),他們可以在下載時播放這些文件。

所以我的問題基本上是如果有人知道一個事實,在Android的使用MediaPlayer的組件(比方說2.1版通過4.1),該AAC MP4文件之前漸進式下載和播放下載完全的實際工作?

此外,由於AAC編解碼器和MP4容器有很大的複雜得多,MP3,做我們必須做我們的文件編碼的東西他們,以確保漸進式下載與MediaPlayer的成分是什麼時候?研究當我發現的一些「的fastStart」選項的一些信息,也「暗示」,這可能會或可能不會是重要的(提示似乎是最「神奇」的主題之一...一半的文章/博客說你需要以提示,但另一半說你絕對不需要暗示)。由於我可以使用MX Player逐步播放,我猜測我們的編碼已經執行了所需的任何操作,或者我在這個假設中錯了嗎?

乾杯!

+0

我很好奇,想知道你的最終決定採用。你的開發人員弄清楚如何做到這一點? – Fixee

回答

3

(免責聲明:這是視頻文件,而不是音樂的人做)

我已經做到了,這是完全可行的。

訣竅與MP4是/放置指數在/開頭的文件,而不是在到底哪裏它通常是。

+0

有趣!研究時,你給了我一些新的詞彙。我發現這一點:http://lists.apple.com/archives/quicktime-users/2010/Jul/msg00002.html其中說「爲了成爲」快速啓動「,'moov'原子(電影頭)需要在文件的開頭,以便它首先被下載「和」如果你在前幾個字節(字節5-8,確切地說)看到'moov',那麼你很好。我用HxD十六進制編輯器打開了其中一個音頻文件,在第五個字節中可以看到「¨™moov ... lmvhd ..」。這是否意味着索引確實在文件的開頭?索引和「快速啓動」是一回事嗎? –

+1

我不知道,但moov原子確實是我不得不在文件的開頭放置一個不完整的文件。 – njzk2

+0

謝謝。我接受你的答案之前還有一個問題:你的應用支持哪些Android版本? –