1# Interface (Stabilization) 2<!--Kit: Camera Kit--> 3<!--Subsystem: Multimedia--> 4<!--Owner: @qano--> 5<!--Designer: @leo_ysl--> 6<!--Tester: @xchaosioda--> 7<!--Adviser: @zengyawen--> 8 9> **说明:** 10> 11> - 本模块首批接口从API version 10开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 12> - 本Interface首批接口从API version 11开始支持。 13 14Stabilization 继承自 [StabilizationQuery](arkts-apis-camera-StabilizationQuery.md)。 15 16提供设备在录像模式下设置视频防抖的操作。 17 18 > **说明:** 19 > 20 > 需要会话中有录像流([VideoOutput](arkts-apis-camera-VideoOutput.md))的前提下,才可以对视频进行防抖设置, 21 > 其中[VideoStabilizationMode](arkts-apis-camera-e.md#videostabilizationmode)中的枚举HIGH需要在[Profile](arkts-apis-camera-i.md#profile)的分辨率为1920*1080的场景下生效。 22 23## 导入模块 24 25```ts 26import { camera } from '@kit.CameraKit'; 27``` 28 29## getActiveVideoStabilizationMode<sup>11+</sup> 30 31getActiveVideoStabilizationMode(): VideoStabilizationMode 32 33查询当前正在使用的视频防抖模式。 34 35**原子化服务API:** 从API version 19开始,该接口支持在原子化服务中使用。 36 37**系统能力:** SystemCapability.Multimedia.Camera.Core 38 39**返回值:** 40 41| 类型 | 说明 | 42| ---------- |-------------| 43| [VideoStabilizationMode](arkts-apis-camera-e.md#videostabilizationmode) | 视频防抖是否正在使用。 | 44 45**错误码:** 46 47以下错误码的详细介绍请参见[Camera错误码](errorcode-camera.md)。 48 49| 错误码ID | 错误信息 | 50| --------------- | --------------- | 51| 7400103 | Session not config. | 52 53**示例:** 54 55```ts 56import { BusinessError } from '@kit.BasicServicesKit'; 57 58function getActiveVideoStabilizationMode(videoSession: camera.VideoSession): camera.VideoStabilizationMode | undefined { 59 let vsMode: camera.VideoStabilizationMode | undefined = undefined; 60 try { 61 vsMode = videoSession.getActiveVideoStabilizationMode(); 62 } catch (error) { 63 // 失败返回错误码error.code并处理。 64 let err = error as BusinessError; 65 console.error(`The getActiveVideoStabilizationMode call failed. error code: ${err.code}`); 66 } 67 return vsMode; 68} 69``` 70 71## setVideoStabilizationMode<sup>11+</sup> 72 73setVideoStabilizationMode(mode: VideoStabilizationMode): void 74 75设置视频防抖模式。需要先检查设备是否支持对应的防抖模式,可以通过[isVideoStabilizationModeSupported](arkts-apis-camera-StabilizationQuery.md#isvideostabilizationmodesupported11)方法判断所设置的模式是否支持。 76 77**原子化服务API:** 从API version 19开始,该接口支持在原子化服务中使用。 78 79**系统能力:** SystemCapability.Multimedia.Camera.Core 80 81**参数:** 82 83| 参数名 | 类型 | 必填 | 说明 | 84| -------- | ------------------------------------------------- | ---- | --------------------- | 85| mode | [VideoStabilizationMode](arkts-apis-camera-e.md#videostabilizationmode) | 是 | 需要设置的视频防抖模式。 | 86 87**错误码:** 88 89以下错误码的详细介绍请参见[Camera错误码](errorcode-camera.md)。 90 91| 错误码ID | 错误信息 | 92| --------------- | --------------- | 93| 7400103 | Session not config. | 94 95**示例:** 96 97```ts 98import { BusinessError } from '@kit.BasicServicesKit'; 99 100function setVideoStabilizationMode(videoSession: camera.VideoSession): void { 101 try { 102 videoSession.setVideoStabilizationMode(camera.VideoStabilizationMode.OFF); 103 } catch (error) { 104 // 失败返回错误码error.code并处理。 105 let err = error as BusinessError; 106 console.error(`The setVideoStabilizationMode call failed. error code: ${err.code}`); 107 } 108} 109``` 110