harmony 鸿蒙capture_session.h

  • 2025-06-12
  • 浏览 (1)

capture_session.h

概述

声明捕获会话概念。

库: libohcamera.so

引用文件:<ohcamera/capture_session.h>

系统能力: SystemCapability.Multimedia.Camera.Core

起始版本: 11

相关模块:OH_Camera

汇总

结构体

名称 描述
struct CaptureSession_Callbacks 捕获会话的回调。

类型定义

名称 描述
typedef struct Camera_CaptureSession Camera_CaptureSession 捕获会话对象。
typedef void(* OH_CaptureSession_OnFocusStateChange) (Camera_CaptureSession *session, Camera_FocusState focusState) CaptureSession_Callbacks中被调用的捕获会话焦点状态回调。
typedef void(* OH_CaptureSession_OnError) (Camera_CaptureSession *session, Camera_ErrorCode errorCode) CaptureSession_Callbacks中被调用的捕获会话错误回调。
typedef void(* OH_CaptureSession_OnSmoothZoomInfo) (Camera_CaptureSession *session, Camera_SmoothZoomInfo *smoothZoomInfo) 拍照会话平滑变焦信息回调,触发平滑变焦后该回调会返回。
typedef struct CaptureSession_Callbacks CaptureSession_Callbacks 捕获会话的回调。

函数

名称 描述
Camera_ErrorCode OH_CaptureSession_RegisterCallback (Camera_CaptureSession *session, CaptureSession_Callbacks *callback) 注册捕获会话事件回调。
Camera_ErrorCode OH_CaptureSession_UnregisterCallback (Camera_CaptureSession *session, CaptureSession_Callbacks *callback) 注销捕获会话事件回调。
Camera_ErrorCode OH_CaptureSession_RegisterSmoothZoomInfoCallback (Camera_CaptureSession *session, OH_CaptureSession_OnSmoothZoomInfo smoothZoomInfoCallback) 注册平滑变焦信息事件回调。
Camera_ErrorCode OH_CaptureSession_UnregisterSmoothZoomInfoCallback (Camera_CaptureSession *session, OH_CaptureSession_OnSmoothZoomInfo smoothZoomInfoCallback) 注销平滑变焦信息事件回调。
Camera_ErrorCode OH_CaptureSession_SetSessionMode (Camera_CaptureSession *session, Camera_SceneMode sceneMode) 指定具体的模式。
Camera_ErrorCode OH_CaptureSession_AddSecureOutput (Camera_CaptureSession *session, Camera_PreviewOutput *previewOutput) 把其中一条PreviewOutput标记成安全输出。
Camera_ErrorCode OH_CaptureSession_BeginConfig (Camera_CaptureSession *session) 开始捕获会话配置。
Camera_ErrorCode OH_CaptureSession_CommitConfig (Camera_CaptureSession *session) 提交捕获会话配置。
Camera_ErrorCode OH_CaptureSession_AddInput (Camera_CaptureSession *session, Camera_Input *cameraInput) 添加相机输入。
Camera_ErrorCode OH_CaptureSession_RemoveInput (Camera_CaptureSession *session, Camera_Input *cameraInput) 删除相机输入。
Camera_ErrorCode OH_CaptureSession_AddPreviewOutput (Camera_CaptureSession *session, Camera_PreviewOutput *previewOutput) 添加预览输出。
Camera_ErrorCode OH_CaptureSession_RemovePreviewOutput (Camera_CaptureSession *session, Camera_PreviewOutput *previewOutput) 删除预览输出。
Camera_ErrorCode OH_CaptureSession_AddPhotoOutput (Camera_CaptureSession *session, Camera_PhotoOutput *photoOutput) 添加拍照输出。
Camera_ErrorCode OH_CaptureSession_RemovePhotoOutput (Camera_CaptureSession *session, Camera_PhotoOutput *photoOutput) 删除拍照输出。
Camera_ErrorCode OH_CaptureSession_AddVideoOutput (Camera_CaptureSession *session, Camera_VideoOutput *videoOutput) 添加录像输出。
Camera_ErrorCode OH_CaptureSession_RemoveVideoOutput (Camera_CaptureSession *session, Camera_VideoOutput *videoOutput) 删除录像输出。
Camera_ErrorCode OH_CaptureSession_AddMetadataOutput (Camera_CaptureSession *session, Camera_MetadataOutput *metadataOutput) 添加元数据输出。
Camera_ErrorCode OH_CaptureSession_RemoveMetadataOutput (Camera_CaptureSession *session, Camera_MetadataOutput *metadataOutput) 删除元数据输出。
Camera_ErrorCode OH_CaptureSession_Start (Camera_CaptureSession *session) 启动捕获会话。
Camera_ErrorCode OH_CaptureSession_Stop (Camera_CaptureSession *session) 停止捕获会话。
Camera_ErrorCode OH_CaptureSession_Release (Camera_CaptureSession *session) 释放捕获会话。
Camera_ErrorCode OH_CaptureSession_HasFlash (Camera_CaptureSession *session, bool *hasFlash) 检查设备是否有闪光灯。
Camera_ErrorCode OH_CaptureSession_IsFlashModeSupported (Camera_CaptureSession *session, Camera_FlashMode flashMode, bool *isSupported) 检查是否支持指定的闪光灯模式。
Camera_ErrorCode OH_CaptureSession_GetFlashMode (Camera_CaptureSession *session, Camera_FlashMode *flashMode) 获取当前闪光灯模式。
Camera_ErrorCode OH_CaptureSession_SetFlashMode (Camera_CaptureSession *session, Camera_FlashMode flashMode) 设置闪光灯模式。
Camera_ErrorCode OH_CaptureSession_IsExposureModeSupported (Camera_CaptureSession *session, Camera_ExposureMode exposureMode, bool *isSupported) 检查是否支持指定的曝光模式。
Camera_ErrorCode OH_CaptureSession_GetExposureMode (Camera_CaptureSession *session, Camera_ExposureMode *exposureMode) 获取当前曝光模式。
Camera_ErrorCode OH_CaptureSession_SetExposureMode (Camera_CaptureSession *session, Camera_ExposureMode exposureMode) 设置曝光模式。
Camera_ErrorCode OH_CaptureSession_GetMeteringPoint (Camera_CaptureSession *session, Camera_Point *point) 获取当前测量点。
Camera_ErrorCode OH_CaptureSession_SetMeteringPoint (Camera_CaptureSession *session, Camera_Point point) 设置计量区域的中心点。
Camera_ErrorCode OH_CaptureSession_GetExposureBiasRange (Camera_CaptureSession *session, float *minExposureBias, float *maxExposureBias, float *step) 查询曝光补偿范围。
Camera_ErrorCode OH_CaptureSession_SetExposureBias (Camera_CaptureSession *session, float exposureBias) 设置曝光补偿。
Camera_ErrorCode OH_CaptureSession_GetExposureBias (Camera_CaptureSession *session, float *exposureBias) 获取当前曝光补偿。
Camera_ErrorCode OH_CaptureSession_IsFocusModeSupported (Camera_CaptureSession *session, Camera_FocusMode focusMode, bool *isSupported) 检查是否支持指定的聚焦模式。
Camera_ErrorCode OH_CaptureSession_GetFocusMode (Camera_CaptureSession *session, Camera_FocusMode *focusMode) 获取当前聚焦模式。
Camera_ErrorCode OH_CaptureSession_SetFocusMode (Camera_CaptureSession *session, Camera_FocusMode focusMode) 设置聚焦模式。
Camera_ErrorCode OH_CaptureSession_GetFocusPoint (Camera_CaptureSession *session, Camera_Point *focusPoint) 获取当前焦点。
Camera_ErrorCode OH_CaptureSession_SetFocusPoint (Camera_CaptureSession *session, Camera_Point focusPoint) 设置焦点。
Camera_ErrorCode OH_CaptureSession_GetZoomRatioRange (Camera_CaptureSession *session, float *minZoom, float *maxZoom) 获取所有支持的缩放比例范围。
Camera_ErrorCode OH_CaptureSession_GetZoomRatio (Camera_CaptureSession *session, float *zoom) 获取当前缩放比例。
Camera_ErrorCode OH_CaptureSession_SetZoomRatio (Camera_CaptureSession *session, float zoom) 设置缩放比例。
Camera_ErrorCode OH_CaptureSession_IsVideoStabilizationModeSupported (Camera_CaptureSession *session, Camera_VideoStabilizationMode mode, bool *isSupported) 检查是否支持指定的录像防抖模式。
Camera_ErrorCode OH_CaptureSession_GetVideoStabilizationMode (Camera_CaptureSession *session, Camera_VideoStabilizationMode *mode) 获取当前录像防抖模式。
Camera_ErrorCode OH_CaptureSession_SetVideoStabilizationMode (Camera_CaptureSession *session, Camera_VideoStabilizationMode mode) 设置录像防抖模式。
Camera_ErrorCode OH_CaptureSession_CanAddInput (Camera_CaptureSession *session, Camera_Input *cameraInput, bool *isSuccessful) 确定是否可以将相机输入添加到会话中。
Camera_ErrorCode OH_CaptureSession_CanAddPreviewOutput (Camera_CaptureSession *session, Camera_PreviewOutput *cameraOutput, bool *isSuccessful) 确定是否可以将相机预览输出添加到会话中。
Camera_ErrorCode OH_CaptureSession_CanAddPhotoOutput (Camera_CaptureSession *session, Camera_PhotoOutput *cameraOutput, bool *isSuccessful) 确定是否可以将相机照片输出添加到会话中。
Camera_ErrorCode OH_CaptureSession_CanAddVideoOutput (Camera_CaptureSession *session, Camera_VideoOutput *cameraOutput, bool *isSuccessful) 确定是否可以将相机视频输出添加到会话中。
Camera_ErrorCode OH_CaptureSession_CanPreconfig (Camera_CaptureSession *session, Camera_PreconfigType preconfigType, bool *canPreconfig) 检查是否支持指定的预配置类型。
Camera_ErrorCode OH_CaptureSession_CanPreconfigWithRatio (Camera_CaptureSession *session, Camera_PreconfigType preconfigType, Camera_PreconfigRatio preconfigRatio, bool *canPreconfig) 检查是否支持带比例的预配置类型。
Camera_ErrorCode OH_CaptureSession_Preconfig (Camera_CaptureSession *session, Camera_PreconfigType preconfigType) 设置预配置类型。
Camera_ErrorCode OH_CaptureSession_PreconfigWithRatio (Camera_CaptureSession *session, Camera_PreconfigType preconfigType, Camera_PreconfigRatio preconfigRatio) 设置带有比例的预配置类型。
Camera_ErrorCode OH_CaptureSession_GetExposureValue (Camera_CaptureSession *session, float *exposureValue) 查询曝光值。
Camera_ErrorCode OH_CaptureSession_GetFocalLength (Camera_CaptureSession *session, float *focalLength) 获取当前焦距值。
Camera_ErrorCode OH_CaptureSession_SetSmoothZoom (Camera_CaptureSession *session, float targetZoom, Camera_SmoothZoomMode smoothZoomMode) 触发平滑变焦。
Camera_ErrorCode OH_CaptureSession_GetSupportedColorSpaces (Camera_CaptureSession *session, OH_NativeBuffer_ColorSpace **colorSpace, uint32_t *size) 获取支持的色彩空间列表。
Camera_ErrorCode OH_CaptureSession_DeleteColorSpaces (Camera_CaptureSession *session, OH_NativeBuffer_ColorSpace *colorSpace) 删除色彩空间列表。
Camera_ErrorCode OH_CaptureSession_GetActiveColorSpace (Camera_CaptureSession *session, OH_NativeBuffer_ColorSpace *colorSpace) 获取当前色彩空间。
Camera_ErrorCode OH_CaptureSession_SetActiveColorSpace (Camera_CaptureSession *session, OH_NativeBuffer_ColorSpace colorSpace) 设置当前色彩空间。
Camera_ErrorCode OH_CaptureSession_SetQualityPrioritization (Camera_CaptureSession *session, Camera_QualityPrioritization qualityPrioritization) 设置录像质量优先级。

你可能感兴趣的鸿蒙文章

harmony 鸿蒙Camera Kit(相机服务)

harmony 鸿蒙Camera_CaptureEndInfo

harmony 鸿蒙Camera_CaptureStartInfo

harmony 鸿蒙Camera_ConcurrentInfo

harmony 鸿蒙Camera_Device

harmony 鸿蒙Camera_FrameRateRange

harmony 鸿蒙Camera_FrameShutterEndInfo

harmony 鸿蒙Camera_FrameShutterInfo

harmony 鸿蒙Camera_Location

harmony 鸿蒙Camera_MetadataObject

0  赞