基于PXA270平臺的嵌入式流媒體播放器設計
播放器以自由軟件mplayer 為藍本,處理流程如圖4所示:
1) 如果數據是從網卡獲得的,調用stream input模塊進行處理。Stream input 模塊根據流媒體協議,使用socket 和多媒體服務器進行通信,輸入的流數據放入緩沖池中并根據流文件的格式對它進行ASF 或RM解壓縮;
2) 解壓后的文件根據文件的類型查找索引表調用不同的解碼類將數據轉化為一種統一的中間格式raw,生成相應的file,由播放器main 函數播放。如果文件已保存在存儲器中,可以跳過第一步,直接執行第二步流程。
小結
本文提出了一種基于Intel PXA270 嵌入式微處理器和嵌入式Linux 的流媒體播放器系統實現方案,特有的索引表結構使得播放器可以通過軟件升級增加新的編碼格式,純軟件的實現方式大大縮減了研發周期。經測試,在帶寬50Kb/s~100Kb/s、緩存256k 的條件下,系統對CIF(352288) 視頻格式、QCIF(176144)視頻格式和音頻格式的文件播放失幀率在5%以下,播放流暢,滿足了目前車載終端中嵌入式流視頻播放的要求。
評論