1. 程式人生 > >android實時視訊網路傳輸方法

android實時視訊網路傳輸方法

以320×240大小的視訊傳輸為例

方案 壓縮率 壓縮/傳輸方式 實時性 平均流量消耗 傳輸距離
用camera的回撥函式傳送原始的yuv420資料 0 無壓縮,按幀傳輸 高(20~30fps) 很高(6.5Mbps) 近距離有線或無線
用MediaRecorder對yuv420進行H264硬編碼後傳送 高(95%) 幀間壓縮,視訊流傳輸 高(20 fps) 低(30~70Kbps) 可以遠距離
呼叫本地H264編碼庫(JNI)對一幀yuv420資料編碼後傳送 高(97%) 幀間壓縮,按幀傳輸 低(2 fps) 低(20 Kbps) 可以遠距離
對一幀資料用GZIP庫壓縮後傳送 較高(70%~80%) 幀內壓縮,按幀傳輸 低(5 fps) 較高(300 Kbps) 可以遠距離
對一幀資料用JPEG方式壓縮後傳輸 一般(60%左右) 幀內壓縮,按幀傳輸 高(25 fps) 高(170 Kbps) 可以遠距離(頻寬允許的話)

注:MediaRecorder有很強的硬體依賴性,因此不同的手機表現是不一樣的,有的手機資料傳輸的時候會出現阻塞現象,實時性就降低了