高通相机系统-usecase的选择

通过configure_streams()接口框架将当前相机用例的流配置参数设置到HAL层相机设备。HAL层相机系统根据这些相机参数选择一个usecase用于后续的处理工作。

typedef struct camera3_stream_configuration {
    uint32 num_streams;          
    camera3_stream_t **streams;  
    uint32_t operation_mode; 
    const camera_metadata_t *session_parameters; 
}

框架使用上述数据结构定义当前相机用例的所有输出流和再处理的输入流,包括三个内容:

  • 相机流。 HAL层输入/输出的流信息,包括流的格式,目的,存储空间,存放地址等

  • 相机流的操作模式。

  • 相机会话配置参数的地址。

ExtensionModule根据三个条件选出一个usecase:打开的相机是不是多摄、相机操作模式、流配置参数。usecase的规则如下:

UsecaseIdphysical camerasoperation modestreamsstream configs
SuperSlowMotionFRCxStreamConfigModeSuperSlowMotionFRCx
MultiCamera> 1xx
Depthxx深度数据输出流(DataspaceDepth类型的数据存储格式)
QuadCFAx21.2个图像流
2.logicalCameraType_Default类型的相机 3.sensor支持QCFA
4.sensor binning 尺寸小于jpeg/yuv snapshot流尺寸(否则是正常模式) 可能是QCFA,因为下边还有检查。
RawJPEGx21.2个输出流
2.一个rawStream
3.一个jpeg snapshot类型输出流
31.3个流
2.一个rawStream
3.一个jpegSnapshotStream
4.DisableZSL()
PreviewZSLx25个条件:
1.2个流
2.相机禁用ZSL(DisableZSL)
3.一个PreviewStream
4.一个JpegSnapshotStream或者YuvSnapshotStream
5.非protectedStream
31.3个流
2.DisableZSL
3.PreviewZSLStream(一个previewStream,一个hiefcSnapshotStream,一个jpegSnapsot)
MFNRx21.2个流
2.EnableMFNR
VideoLiveShotx31.3个流
2.VideoEISV2Enable或者VideoEISV3Enable 3.VideoLiveShotStream(JpegSnapshotStream+VideoStream(HEIF)) 4.DisableZSL
======
1.3个流
2.EnableMFHDR
3.VideoEISV3Enable
DefaultStreamConfigModeMiuiSUPEREISVideo、 StreamConfigModeMiuiSUPEREISPROVideo StreamConfigModeLiveAutoZoomx
TorchStreamConfigModeQTITorchWidgetx
  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值