android camera 预览 数据流,Android Camera预览过程数据流浅析
硬件平臺:Atmel SAMA5D3 SoC + OV2640 Camera Sensor
Android版本:4.2.2
mediaserver進程是Camera Service的容器進程,它會動態加載Camera HAL和Gralloc HAL。
視頻數據幀首先必須從Camera驅動程序到達Camera硬件抽象層。
在Camera硬件抽象層,視頻數據幀被從video capture buffer拷貝到gralloc buffer。
surfaceflinger進程作為顯示服務器會動態加載HWComposer HAL和Gralloc HAL。
在HWComposer硬件抽象層,會把數據幀從gralloc buffer拷貝到video output buffer。
經過上述過程,Camera Sensor采集的圖像最終通過LCDC HEO顯示在顯示屏上。
圖中紅色實線為視頻數據幀流向,不帶箭頭的紅線連接的兩端為同一塊內存。
涉及三塊內存,分別如下:
video capture buffer /dev/video1
gralloc buffer
匿名共享內存 mediaserver進程和surfacelinger進程都可以訪問這塊內存
video output buffer /dev/video0
進行了兩次數據拷貝操作,如下:
media server進程
總結
以上是生活随笔為你收集整理的android camera 预览 数据流,Android Camera预览过程数据流浅析的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 微信小程序实现展开/收起的效果
- 下一篇: 乌镇•白硕:抗衡Libra,我们需要建立