QcarCamera-EVS HAL实现(二)

上文讲述了evs_driver启动,以及opencamera的流程,本文继续梳理后续常规流程。

首先是startVideoStream(),先看代码再进行总结

Return EvsAISCamera::startVideoStream(const sp& stream)  {

    Return  result = setMaxFramesInFlight(3);//先设置buffer数据

        allocQcarcamInternalBuffers(MIN_AIS_BUF_CNT);//分配高通内部buffer这里是5个,注意一般不能低于3个,负责会报错!!、

            mQcarcamOutBufs.buffers = (qcarcam_buffer_t *)calloc(mQcarcamOutBufs.n_buffers, sizeof(*mQcarcamOutBufs.buffers));//分配5个buffer内存

            mpGfxBufs = (sp*)calloc(mQcarcamOutBufs.n_buffers, sizeof(sp));//分配GraphicBuffer

            mpQcarcamMmapBufs = (qcarcam_mapped_buffer_t*)calloc(mQcarcamOutBufs.n_buffers,
            sizeof(qcarcam_mapped_buffer_t));//memmap的buffer

            for (int i = 0; i < (int)mQcarcamOutBufs.n_buffers; ++i) {

        

你可能感兴趣的:(高通SA8155,c++,数据结构,android)