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

  • 所属分类: 后端技术
  • 本文标签: 鸿蒙 软件
  • 版权声明: 本文链接 https://seaxiang.com/blog/yyLVQn