2014-01-26 33 views
0

原來,Android媒體播放器(stagefright)對可變比特率文件有一些奇怪的緩衝算法。它似乎試圖緩存多個兆字節(在5MB總MP3文件上爲2-3 MB),直到它開始播放。更糟糕的是,它可能會在緩衝足夠大的數量(例如2MB)後開始播放,然後再次停止播放,等到它恢復之前緩存另一個MB。Android MediaPlayer緩衝行爲(VBR文件)

這種情況只發生在VBR MP3文件中,以我的經驗,只在舞臺上。那麼,有沒有辦法解決這個問題?

回答

0

我發現了一個「黑客」來解決它:

我從MP3文件從HTTP服務器服務時,它刪除了「興」的標題。這種方式stagefright已經緩存了大約0.5MB後開始渲染,到目前爲止沒有遇到任何口吃。

請注意,刪除Xing標題可能會有干擾時間和搜索行爲等副作用。但只要你不使用查找或顯示時間(從MP3流中提取),那麼你應該沒問題。