http://blog.csdn.net/u013531497/article/details/39289683
1. Clue :
Qualcomm HAL -> mm-camera-interface -> kernel
kernel <-> mm-camera(qcamserv&ctrl)
2. Threads :
Qcamsvr thread / mctl thread / HAL thread
3. HAL : CameraHardwareInterface
CameraHWI, common class, define camera hardware interface
Parm, for setting various parameters.
Preview, for preview frame process.
Record, for video frame process.
Still, for snap shot frame process.
4. mm-camera-interface
mm_camera, main function.
mm_camera_interface, interface function
poll_thread, to lauch various polll threads when start camera.
sock, socket communication control function
stream, for data process function
channel, different data in different channel & poll_thread, ex. video/preview/snapshot.
5. qcamsvr
start when power up. start a main while loop, keep polling event.
6. mctrl
when open camera, qcamsvr start a mctl thread, for config control.
7. communication
pipe / socket / ioctl / poll / write / read
原文链接: