1e41f4b71Sopenharmony_ci# AVCapability
2e41f4b71Sopenharmony_ci
3e41f4b71Sopenharmony_ci
4e41f4b71Sopenharmony_ci## 概述
5e41f4b71Sopenharmony_ci
6e41f4b71Sopenharmony_ciAVCapability模块提供用于编解码能力查询的函数。
7e41f4b71Sopenharmony_ci
8e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Multimedia.Media.CodecBase
9e41f4b71Sopenharmony_ci
10e41f4b71Sopenharmony_ci**起始版本:** 10
11e41f4b71Sopenharmony_ci
12e41f4b71Sopenharmony_ci
13e41f4b71Sopenharmony_ci## 汇总
14e41f4b71Sopenharmony_ci
15e41f4b71Sopenharmony_ci
16e41f4b71Sopenharmony_ci### 文件
17e41f4b71Sopenharmony_ci
18e41f4b71Sopenharmony_ci| 名称 | 描述 | 
19e41f4b71Sopenharmony_ci| -------- | -------- |
20e41f4b71Sopenharmony_ci| [native_avcapability.h](native__avcapability_8h.md) | 声明用于编解码能力查询到的Native API。| 
21e41f4b71Sopenharmony_ci
22e41f4b71Sopenharmony_ci
23e41f4b71Sopenharmony_ci### 结构体
24e41f4b71Sopenharmony_ci
25e41f4b71Sopenharmony_ci| 名称 | 描述 | 
26e41f4b71Sopenharmony_ci| -------- | -------- |
27e41f4b71Sopenharmony_ci| struct  [OH_AVRange](_o_h___a_v_range.md) | 范围包含最小值和最大值。  | 
28e41f4b71Sopenharmony_ci
29e41f4b71Sopenharmony_ci
30e41f4b71Sopenharmony_ci### 类型定义
31e41f4b71Sopenharmony_ci
32e41f4b71Sopenharmony_ci| 名称 | 描述 | 
33e41f4b71Sopenharmony_ci| -------- | -------- |
34e41f4b71Sopenharmony_ci| typedef enum [OH_BitrateMode](#oh_bitratemode-1) [OH_BitrateMode](#oh_bitratemode) | 编码器的比特率模式。  | 
35e41f4b71Sopenharmony_ci| typedef struct [OH_AVRange](_o_h___a_v_range.md) [OH_AVRange](#oh_avrange) | 范围包含最小值和最大值。  | 
36e41f4b71Sopenharmony_ci| typedef enum [OH_AVCodecCategory](#oh_avcodeccategory-1) [OH_AVCodecCategory](#oh_avcodeccategory) | 编解码器类别。  | 
37e41f4b71Sopenharmony_ci| typedef enum [OH_AVCapabilityFeature](#oh_avcapabilityfeature-1) [OH_AVCapabilityFeature](#oh_avcapabilityfeature) | 可以在特定编解码器场景中使用的可选特性。  | 
38e41f4b71Sopenharmony_ci
39e41f4b71Sopenharmony_ci
40e41f4b71Sopenharmony_ci### 枚举
41e41f4b71Sopenharmony_ci
42e41f4b71Sopenharmony_ci| 名称 | 描述 | 
43e41f4b71Sopenharmony_ci| -------- | -------- |
44e41f4b71Sopenharmony_ci| [OH_BitrateMode](#oh_bitratemode-1) { <br/>BITRATE_MODE_CBR = 0, <br/>BITRATE_MODE_VBR = 1, <br/>BITRATE_MODE_CQ = 2 } | 编码器的比特率模式。  | 
45e41f4b71Sopenharmony_ci| [OH_AVCodecCategory](#oh_avcodeccategory-1) { HARDWARE = 0, SOFTWARE } | 编解码器类别。  | 
46e41f4b71Sopenharmony_ci| [OH_AVCapabilityFeature](#oh_avcapabilityfeature-1) {<br/> VIDEO_ENCODER_TEMPORAL_SCALABILITY = 0, <br/>VIDEO_ENCODER_LONG_TERM_REFERENCE = 1, <br/>VIDEO_LOW_LATENCY = 2 <br/>} | 可以在特定编解码器场景中使用的可选特性。  | 
47e41f4b71Sopenharmony_ci
48e41f4b71Sopenharmony_ci
49e41f4b71Sopenharmony_ci### 函数
50e41f4b71Sopenharmony_ci
51e41f4b71Sopenharmony_ci| 名称 | 描述 | 
52e41f4b71Sopenharmony_ci| -------- | -------- |
53e41f4b71Sopenharmony_ci| OH_AVCapability \*[OH_AVCodec_GetCapability](#oh_avcodec_getcapability) (const char \*mime, bool isEncoder) | 获取系统推荐的编解码器能力。  | 
54e41f4b71Sopenharmony_ci| OH_AVCapability \*[OH_AVCodec_GetCapabilityByCategory](#oh_avcodec_getcapabilitybycategory) (const char \*mime, bool isEncoder, [OH_AVCodecCategory](#oh_avcodeccategory) category) | 获取指定类别中的编解码器能力。 | 
55e41f4b71Sopenharmony_ci| bool [OH_AVCapability_IsHardware](#oh_avcapability_ishardware) (OH_AVCapability \*capability) | 检查能力实例是否描述了硬件编解码器。  | 
56e41f4b71Sopenharmony_ci| const char \* [OH_AVCapability_GetName](#oh_avcapability_getname) (OH_AVCapability \*capability) | 获取编解码器名称。  | 
57e41f4b71Sopenharmony_ci| int32_t [OH_AVCapability_GetMaxSupportedInstances](#oh_avcapability_getmaxsupportedinstances) (OH_AVCapability \*capability) | 获取编解码器支持的最大实例数。  | 
58e41f4b71Sopenharmony_ci| [OH_AVErrCode](_core.md#oh_averrcode) [OH_AVCapability_GetEncoderBitrateRange](#oh_avcapability_getencoderbitraterange) (OH_AVCapability \*capability, [OH_AVRange](_o_h___a_v_range.md) \*bitrateRange) | 获取编码器支持的比特率范围。  | 
59e41f4b71Sopenharmony_ci| bool [OH_AVCapability_IsEncoderBitrateModeSupported](#oh_avcapability_isencoderbitratemodesupported) (OH_AVCapability \*capability, [OH_BitrateMode](#oh_bitratemode) bitrateMode) | 检查编码器是否支持特定的比特率模式。  | 
60e41f4b71Sopenharmony_ci| [OH_AVErrCode](_core.md#oh_averrcode) [OH_AVCapability_GetEncoderQualityRange](#oh_avcapability_getencoderqualityrange) (OH_AVCapability \*capability, [OH_AVRange](_o_h___a_v_range.md) \*qualityRange) | 获取编码器支持的质量范围。  | 
61e41f4b71Sopenharmony_ci| [OH_AVErrCode](_core.md#oh_averrcode) [OH_AVCapability_GetEncoderComplexityRange](#oh_avcapability_getencodercomplexityrange) (OH_AVCapability \*capability, [OH_AVRange](_o_h___a_v_range.md) \*complexityRange) | 获取编码器支持的编码器复杂性范围。  | 
62e41f4b71Sopenharmony_ci| [OH_AVErrCode](_core.md#oh_averrcode) [OH_AVCapability_GetAudioSupportedSampleRates](#oh_avcapability_getaudiosupportedsamplerates) (OH_AVCapability \*capability, const int32_t \*\*sampleRates, uint32_t \*sampleRateNum) | 获取音频编解码器支持的采样率。  | 
63e41f4b71Sopenharmony_ci| [OH_AVErrCode](_core.md#oh_averrcode) [OH_AVCapability_GetAudioChannelCountRange](#oh_avcapability_getaudiochannelcountrange) (OH_AVCapability \*capability, [OH_AVRange](_o_h___a_v_range.md) \*channelCountRange) | 获取音频编解码器支持的音频通道计数范围。  | 
64e41f4b71Sopenharmony_ci| [OH_AVErrCode](_core.md#oh_averrcode) [OH_AVCapability_GetVideoWidthAlignment](#oh_avcapability_getvideowidthalignment) (OH_AVCapability \*capability, int32_t \*widthAlignment) | 获取视频编解码器支持的视频宽度对齐。  | 
65e41f4b71Sopenharmony_ci| [OH_AVErrCode](_core.md#oh_averrcode) [OH_AVCapability_GetVideoHeightAlignment](#oh_avcapability_getvideoheightalignment) (OH_AVCapability \*capability, int32_t \*heightAlignment) | 获取视频编解码器支持的视频高度对齐。  | 
66e41f4b71Sopenharmony_ci| [OH_AVErrCode](_core.md#oh_averrcode) [OH_AVCapability_GetVideoWidthRangeForHeight](#oh_avcapability_getvideowidthrangeforheight) (OH_AVCapability \*capability, int32_t height, [OH_AVRange](_o_h___a_v_range.md) \*widthRange) | 获取指定高度情况下视频编解码器支持的视频宽度范围。  | 
67e41f4b71Sopenharmony_ci| OH_AVErrCode [OH_AVCapability_GetVideoHeightRangeForWidth](#oh_avcapability_getvideoheightrangeforwidth) (OH_AVCapability \*capability, int32_t width, [OH_AVRange](_o_h___a_v_range.md) \*heightRange) | 获取指定宽度情况下视频编解码器支持的视频高度范围。  | 
68e41f4b71Sopenharmony_ci| [OH_AVErrCode](_core.md#oh_averrcode) [OH_AVCapability_GetVideoWidthRange](#oh_avcapability_getvideowidthrange) (OH_AVCapability \*capability, [OH_AVRange](_o_h___a_v_range.md) \*widthRange) | 获取视频编解码器支持的视频宽度范围。  | 
69e41f4b71Sopenharmony_ci| [OH_AVErrCode](_core.md#oh_averrcode) [OH_AVCapability_GetVideoHeightRange](#oh_avcapability_getvideoheightrange) (OH_AVCapability \*capability, [OH_AVRange](_o_h___a_v_range.md) \*heightRange) | 获取视频编解码器支持的视频高度范围。  | 
70e41f4b71Sopenharmony_ci| bool [OH_AVCapability_IsVideoSizeSupported](#oh_avcapability_isvideosizesupported) (OH_AVCapability \*capability, int32_t width, int32_t height) | 检查视频编解码器是否支持特定的视频大小。  | 
71e41f4b71Sopenharmony_ci| [OH_AVErrCode](_core.md#oh_averrcode) [OH_AVCapability_GetVideoFrameRateRange](#oh_avcapability_getvideoframeraterange) (OH_AVCapability \*capability, [OH_AVRange](_o_h___a_v_range.md) \*frameRateRange) | 获取视频编解码器支持的视频帧率范围。  | 
72e41f4b71Sopenharmony_ci| [OH_AVErrCode](_core.md#oh_averrcode) [OH_AVCapability_GetVideoFrameRateRangeForSize](#oh_avcapability_getvideoframeraterangeforsize) (OH_AVCapability \*capability, int32_t width, int32_t height, [OH_AVRange](_o_h___a_v_range.md) \*frameRateRange) | 获取指定视频大小的视频编解码器支持的视频帧率范围。  | 
73e41f4b71Sopenharmony_ci| bool [OH_AVCapability_AreVideoSizeAndFrameRateSupported](#oh_avcapability_arevideosizeandframeratesupported) (OH_AVCapability \*capability, int32_t width, int32_t height, int32_t frameRate) | 检查视频编解码器是否支持视频大小和帧率的特定组合。  | 
74e41f4b71Sopenharmony_ci| [OH_AVErrCode](_core.md#oh_averrcode) [OH_AVCapability_GetVideoSupportedPixelFormats](#oh_avcapability_getvideosupportedpixelformats) (OH_AVCapability \*capability, const int32_t \*\*pixelFormats, uint32_t \*pixelFormatNum) | 获取视频编解码器支持的视频像素格式。  | 
75e41f4b71Sopenharmony_ci| [OH_AVErrCode](_core.md#oh_averrcode) [OH_AVCapability_GetSupportedProfiles](#oh_avcapability_getsupportedprofiles) (OH_AVCapability \*capability, const int32_t \*\*profiles, uint32_t \*profileNum) | 获取编解码器支持的档次。  | 
76e41f4b71Sopenharmony_ci| [OH_AVErrCode](_core.md#oh_averrcode) [OH_AVCapability_GetSupportedLevelsForProfile](#oh_avcapability_getsupportedlevelsforprofile) (OH_AVCapability \*capability, int32_t profile, const int32_t \*\*levels, uint32_t \*levelNum) | 获取特定档次支持的编解码器级别。  | 
77e41f4b71Sopenharmony_ci| bool [OH_AVCapability_AreProfileAndLevelSupported](#oh_avcapability_areprofileandlevelsupported) (OH_AVCapability \*capability, int32_t profile, int32_t level) | 检查编解码器是否支持档次和级别的特定组合。  | 
78e41f4b71Sopenharmony_ci| bool [OH_AVCapability_IsFeatureSupported](#oh_avcapability_isfeaturesupported) (OH_AVCapability \*capability, [OH_AVCapabilityFeature](#oh_avcapabilityfeature) feature) | 检查编解码器是否支持指定特性。  | 
79e41f4b71Sopenharmony_ci| OH_AVFormat \* [OH_AVCapability_GetFeatureProperties](#oh_avcapability_getfeatureproperties) (OH_AVCapability \*capability, [OH_AVCapabilityFeature](#oh_avcapabilityfeature) feature) | 获取指定特性的属性。 需要注意的是,返回值指向的OH_AVFormat实例的生命周期需要调用者手动释放。  | 
80e41f4b71Sopenharmony_ci
81e41f4b71Sopenharmony_ci
82e41f4b71Sopenharmony_ci## 类型定义说明
83e41f4b71Sopenharmony_ci
84e41f4b71Sopenharmony_ci
85e41f4b71Sopenharmony_ci### OH_AVCapabilityFeature
86e41f4b71Sopenharmony_ci
87e41f4b71Sopenharmony_ci```
88e41f4b71Sopenharmony_citypedef enum OH_AVCapabilityFeature OH_AVCapabilityFeature
89e41f4b71Sopenharmony_ci```
90e41f4b71Sopenharmony_ci**描述**
91e41f4b71Sopenharmony_ci可以在特定编解码器场景中使用的可选特性。
92e41f4b71Sopenharmony_ci
93e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Multimedia.Media.CodecBase
94e41f4b71Sopenharmony_ci
95e41f4b71Sopenharmony_ci**起始版本:** 12
96e41f4b71Sopenharmony_ci
97e41f4b71Sopenharmony_ci
98e41f4b71Sopenharmony_ci### OH_AVCodecCategory
99e41f4b71Sopenharmony_ci
100e41f4b71Sopenharmony_ci```
101e41f4b71Sopenharmony_citypedef enum OH_AVCodecCategory OH_AVCodecCategory
102e41f4b71Sopenharmony_ci```
103e41f4b71Sopenharmony_ci**描述**
104e41f4b71Sopenharmony_ci编解码器类别。
105e41f4b71Sopenharmony_ci
106e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Multimedia.Media.CodecBase
107e41f4b71Sopenharmony_ci
108e41f4b71Sopenharmony_ci**起始版本:** 10
109e41f4b71Sopenharmony_ci
110e41f4b71Sopenharmony_ci
111e41f4b71Sopenharmony_ci### OH_AVRange
112e41f4b71Sopenharmony_ci
113e41f4b71Sopenharmony_ci```
114e41f4b71Sopenharmony_citypedef struct OH_AVRange OH_AVRange
115e41f4b71Sopenharmony_ci```
116e41f4b71Sopenharmony_ci**描述**
117e41f4b71Sopenharmony_ci范围包含最小值和最大值。
118e41f4b71Sopenharmony_ci
119e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Multimedia.Media.CodecBase
120e41f4b71Sopenharmony_ci
121e41f4b71Sopenharmony_ci**起始版本:** 10
122e41f4b71Sopenharmony_ci
123e41f4b71Sopenharmony_ci
124e41f4b71Sopenharmony_ci### OH_BitrateMode
125e41f4b71Sopenharmony_ci
126e41f4b71Sopenharmony_ci```
127e41f4b71Sopenharmony_citypedef enum OH_BitrateMode OH_BitrateMode
128e41f4b71Sopenharmony_ci```
129e41f4b71Sopenharmony_ci**描述**
130e41f4b71Sopenharmony_ci编码器的比特率模式。
131e41f4b71Sopenharmony_ci
132e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Multimedia.Media.CodecBase
133e41f4b71Sopenharmony_ci
134e41f4b71Sopenharmony_ci**起始版本:** 10
135e41f4b71Sopenharmony_ci
136e41f4b71Sopenharmony_ci
137e41f4b71Sopenharmony_ci## 枚举类型说明
138e41f4b71Sopenharmony_ci
139e41f4b71Sopenharmony_ci
140e41f4b71Sopenharmony_ci### OH_AVCapabilityFeature
141e41f4b71Sopenharmony_ci
142e41f4b71Sopenharmony_ci```
143e41f4b71Sopenharmony_cienum OH_AVCapabilityFeature
144e41f4b71Sopenharmony_ci```
145e41f4b71Sopenharmony_ci**描述**
146e41f4b71Sopenharmony_ci可以在特定编解码器场景中使用的可选特性。
147e41f4b71Sopenharmony_ci
148e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Multimedia.Media.CodecBase
149e41f4b71Sopenharmony_ci
150e41f4b71Sopenharmony_ci**起始版本:** 12
151e41f4b71Sopenharmony_ci
152e41f4b71Sopenharmony_ci| 枚举值 | 描述 | 
153e41f4b71Sopenharmony_ci| -------- | -------- |
154e41f4b71Sopenharmony_ci| VIDEO_ENCODER_TEMPORAL_SCALABILITY  | 编解码器支持时域可分层特性,只用于视频编码场景。   | 
155e41f4b71Sopenharmony_ci| VIDEO_ENCODER_LONG_TERM_REFERENCE  | 编解码器支持长期参考帧特性,只用于视频编码场景。   | 
156e41f4b71Sopenharmony_ci| VIDEO_LOW_LATENCY  | 编解码器支持低时延特性,用于视频编码和视频解码场景。   | 
157e41f4b71Sopenharmony_ci
158e41f4b71Sopenharmony_ci
159e41f4b71Sopenharmony_ci### OH_AVCodecCategory
160e41f4b71Sopenharmony_ci
161e41f4b71Sopenharmony_ci```
162e41f4b71Sopenharmony_cienum OH_AVCodecCategory
163e41f4b71Sopenharmony_ci```
164e41f4b71Sopenharmony_ci**描述**
165e41f4b71Sopenharmony_ci编解码器类别。
166e41f4b71Sopenharmony_ci
167e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Multimedia.Media.CodecBase
168e41f4b71Sopenharmony_ci
169e41f4b71Sopenharmony_ci**起始版本:** 10
170e41f4b71Sopenharmony_ci
171e41f4b71Sopenharmony_ci| 枚举值 | 描述 | 
172e41f4b71Sopenharmony_ci| -------- | -------- |
173e41f4b71Sopenharmony_ci| HARDWARE  | 硬件编解码。   | 
174e41f4b71Sopenharmony_ci| SOFTWARE  | 软件编解码。   | 
175e41f4b71Sopenharmony_ci
176e41f4b71Sopenharmony_ci
177e41f4b71Sopenharmony_ci### OH_BitrateMode
178e41f4b71Sopenharmony_ci
179e41f4b71Sopenharmony_ci```
180e41f4b71Sopenharmony_cienum OH_BitrateMode
181e41f4b71Sopenharmony_ci```
182e41f4b71Sopenharmony_ci**描述**
183e41f4b71Sopenharmony_ci编码器的比特率模式。
184e41f4b71Sopenharmony_ci
185e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Multimedia.Media.CodecBase
186e41f4b71Sopenharmony_ci
187e41f4b71Sopenharmony_ci**起始版本:** 10
188e41f4b71Sopenharmony_ci
189e41f4b71Sopenharmony_ci| 枚举值 | 描述 | 
190e41f4b71Sopenharmony_ci| -------- | -------- |
191e41f4b71Sopenharmony_ci| BITRATE_MODE_CBR  | 恒定比特率模式。   | 
192e41f4b71Sopenharmony_ci| BITRATE_MODE_VBR  | 可变比特率模式,码率仅作参考。   | 
193e41f4b71Sopenharmony_ci| BITRATE_MODE_CQ  | 恒定质量模式。   | 
194e41f4b71Sopenharmony_ci
195e41f4b71Sopenharmony_ci
196e41f4b71Sopenharmony_ci## 函数说明
197e41f4b71Sopenharmony_ci
198e41f4b71Sopenharmony_ci
199e41f4b71Sopenharmony_ci### OH_AVCapability_AreProfileAndLevelSupported()
200e41f4b71Sopenharmony_ci
201e41f4b71Sopenharmony_ci```
202e41f4b71Sopenharmony_cibool OH_AVCapability_AreProfileAndLevelSupported (OH_AVCapability *capability, int32_t profile, int32_t level)
203e41f4b71Sopenharmony_ci```
204e41f4b71Sopenharmony_ci**描述**
205e41f4b71Sopenharmony_ci检查编解码器是否支持档次和级别的特定组合。
206e41f4b71Sopenharmony_ci
207e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Multimedia.Media.CodecBase
208e41f4b71Sopenharmony_ci
209e41f4b71Sopenharmony_ci**起始版本:** 10
210e41f4b71Sopenharmony_ci
211e41f4b71Sopenharmony_ci**参数:**
212e41f4b71Sopenharmony_ci
213e41f4b71Sopenharmony_ci| 名称 | 描述 | 
214e41f4b71Sopenharmony_ci| -------- | -------- |
215e41f4b71Sopenharmony_ci| capability | 编解码能力指针。  | 
216e41f4b71Sopenharmony_ci| profile | 编解码器档次。  | 
217e41f4b71Sopenharmony_ci| level | 编解码器级别。  | 
218e41f4b71Sopenharmony_ci
219e41f4b71Sopenharmony_ci**返回:**
220e41f4b71Sopenharmony_ci
221e41f4b71Sopenharmony_ci如果支持档次和级别的组合,则返回true。 如果不支持,则为false。
222e41f4b71Sopenharmony_ci
223e41f4b71Sopenharmony_ci
224e41f4b71Sopenharmony_ci### OH_AVCapability_AreVideoSizeAndFrameRateSupported()
225e41f4b71Sopenharmony_ci
226e41f4b71Sopenharmony_ci```
227e41f4b71Sopenharmony_cibool OH_AVCapability_AreVideoSizeAndFrameRateSupported (OH_AVCapability *capability, int32_t width, int32_t height, int32_t frameRate)
228e41f4b71Sopenharmony_ci```
229e41f4b71Sopenharmony_ci**描述**
230e41f4b71Sopenharmony_ci检查视频编解码器是否支持视频大小和帧率的特定组合。
231e41f4b71Sopenharmony_ci
232e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Multimedia.Media.CodecBase
233e41f4b71Sopenharmony_ci
234e41f4b71Sopenharmony_ci**起始版本:** 10
235e41f4b71Sopenharmony_ci
236e41f4b71Sopenharmony_ci**参数:**
237e41f4b71Sopenharmony_ci
238e41f4b71Sopenharmony_ci| 名称 | 描述 | 
239e41f4b71Sopenharmony_ci| -------- | -------- |
240e41f4b71Sopenharmony_ci| capability | 视频编解码能力指针。不能填入音频编解码器能力指针。  | 
241e41f4b71Sopenharmony_ci| width | 视频水平像素数。  | 
242e41f4b71Sopenharmony_ci| height | 视频垂直像素数。  | 
243e41f4b71Sopenharmony_ci| frameRate | 每秒帧数。  | 
244e41f4b71Sopenharmony_ci
245e41f4b71Sopenharmony_ci**返回:**
246e41f4b71Sopenharmony_ci
247e41f4b71Sopenharmony_ci如果支持视频大小和帧率的组合,则返回true。 如果不支持,则为false。
248e41f4b71Sopenharmony_ci
249e41f4b71Sopenharmony_ci
250e41f4b71Sopenharmony_ci### OH_AVCapability_GetAudioChannelCountRange()
251e41f4b71Sopenharmony_ci
252e41f4b71Sopenharmony_ci```
253e41f4b71Sopenharmony_ciOH_AVErrCode OH_AVCapability_GetAudioChannelCountRange (OH_AVCapability *capability, OH_AVRange *channelCountRange)
254e41f4b71Sopenharmony_ci```
255e41f4b71Sopenharmony_ci**描述**
256e41f4b71Sopenharmony_ci获取音频编解码器支持的音频通道计数范围。
257e41f4b71Sopenharmony_ci
258e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Multimedia.Media.CodecBase
259e41f4b71Sopenharmony_ci
260e41f4b71Sopenharmony_ci**起始版本:** 10
261e41f4b71Sopenharmony_ci
262e41f4b71Sopenharmony_ci**参数:**
263e41f4b71Sopenharmony_ci
264e41f4b71Sopenharmony_ci| 名称 | 描述 | 
265e41f4b71Sopenharmony_ci| -------- | -------- |
266e41f4b71Sopenharmony_ci| capability | 音频编解码能力指针。不能填入视频编解码器能力指针。  | 
267e41f4b71Sopenharmony_ci| channelCountRange | 输出参数。音频通道计数范围。  | 
268e41f4b71Sopenharmony_ci
269e41f4b71Sopenharmony_ci**返回:**
270e41f4b71Sopenharmony_ci
271e41f4b71Sopenharmony_ci如果执行成功,则返回AV_ERR_OK, 否则返回特定错误代码,请参阅[OH_AVErrCode](_core.md#oh_averrcode)。
272e41f4b71Sopenharmony_ci
273e41f4b71Sopenharmony_ci当能力实例无效,或者指向音频通道计数范围的指针为空指针,返回AV_ERR_INVALID_VAL。
274e41f4b71Sopenharmony_ci
275e41f4b71Sopenharmony_ci
276e41f4b71Sopenharmony_ci### OH_AVCapability_GetAudioSupportedSampleRates()
277e41f4b71Sopenharmony_ci
278e41f4b71Sopenharmony_ci```
279e41f4b71Sopenharmony_ciOH_AVErrCode OH_AVCapability_GetAudioSupportedSampleRates (OH_AVCapability *capability, const int32_t **sampleRates, uint32_t *sampleRateNum)
280e41f4b71Sopenharmony_ci```
281e41f4b71Sopenharmony_ci**描述**
282e41f4b71Sopenharmony_ci获取音频编解码器支持的采样率。
283e41f4b71Sopenharmony_ci
284e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Multimedia.Media.CodecBase
285e41f4b71Sopenharmony_ci
286e41f4b71Sopenharmony_ci**起始版本:** 10
287e41f4b71Sopenharmony_ci
288e41f4b71Sopenharmony_ci**参数:**
289e41f4b71Sopenharmony_ci
290e41f4b71Sopenharmony_ci| 名称 | 描述 | 
291e41f4b71Sopenharmony_ci| -------- | -------- |
292e41f4b71Sopenharmony_ci| capability | 音频编解码能力指针。不能填入视频编解码器能力指针。  | 
293e41f4b71Sopenharmony_ci| sampleRates | 输出参数。指向采样率数组的指针。  | 
294e41f4b71Sopenharmony_ci| sampleRateNum | 输出参数。采样率数组的元素数目。  | 
295e41f4b71Sopenharmony_ci
296e41f4b71Sopenharmony_ci**返回:**
297e41f4b71Sopenharmony_ci
298e41f4b71Sopenharmony_ci如果执行成功,则返回AV_ERR_OK, 否则返回特定错误代码,请参阅[OH_AVErrCode](_core.md#oh_averrcode)。
299e41f4b71Sopenharmony_ci
300e41f4b71Sopenharmony_ci当能力实例无效,或者指向采样率数组的指针为空指针,或者指向采样率数组的元素数目的指针为空指针,返回AV_ERR_INVALID_VAL。 当遇到未知错误,返回AV_ERR_UNKNOWN。 当内部使用内存分配失败,返回AV_ERR_NO_MEMORY。
301e41f4b71Sopenharmony_ci
302e41f4b71Sopenharmony_ci
303e41f4b71Sopenharmony_ci### OH_AVCapability_GetEncoderBitrateRange()
304e41f4b71Sopenharmony_ci
305e41f4b71Sopenharmony_ci```
306e41f4b71Sopenharmony_ciOH_AVErrCode OH_AVCapability_GetEncoderBitrateRange (OH_AVCapability *capability, OH_AVRange *bitrateRange)
307e41f4b71Sopenharmony_ci```
308e41f4b71Sopenharmony_ci**描述**
309e41f4b71Sopenharmony_ci获取编码器支持的比特率范围。
310e41f4b71Sopenharmony_ci
311e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Multimedia.Media.CodecBase
312e41f4b71Sopenharmony_ci
313e41f4b71Sopenharmony_ci**起始版本:** 10
314e41f4b71Sopenharmony_ci
315e41f4b71Sopenharmony_ci**参数:**
316e41f4b71Sopenharmony_ci
317e41f4b71Sopenharmony_ci| 名称 | 描述 | 
318e41f4b71Sopenharmony_ci| -------- | -------- |
319e41f4b71Sopenharmony_ci| capability | 编码器能力指针。不能填入解码器能力指针。  | 
320e41f4b71Sopenharmony_ci| bitrateRange | 输出参数。编码器码率范围。  | 
321e41f4b71Sopenharmony_ci
322e41f4b71Sopenharmony_ci**返回:**
323e41f4b71Sopenharmony_ci
324e41f4b71Sopenharmony_ci如果执行成功,则返回AV_ERR_OK, 否则返回特定错误代码,请参阅[OH_AVErrCode](_core.md#oh_averrcode)。
325e41f4b71Sopenharmony_ci
326e41f4b71Sopenharmony_ci当能力实例无效,或者指向编码器码率范围的指针为空指针,返回AV_ERR_INVALID_VAL。
327e41f4b71Sopenharmony_ci
328e41f4b71Sopenharmony_ci
329e41f4b71Sopenharmony_ci### OH_AVCapability_GetEncoderComplexityRange()
330e41f4b71Sopenharmony_ci
331e41f4b71Sopenharmony_ci```
332e41f4b71Sopenharmony_ciOH_AVErrCode OH_AVCapability_GetEncoderComplexityRange (OH_AVCapability *capability, OH_AVRange *complexityRange)
333e41f4b71Sopenharmony_ci```
334e41f4b71Sopenharmony_ci**描述**
335e41f4b71Sopenharmony_ci获取编码器支持的编码器复杂性范围。
336e41f4b71Sopenharmony_ci
337e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Multimedia.Media.CodecBase
338e41f4b71Sopenharmony_ci
339e41f4b71Sopenharmony_ci**起始版本:** 10
340e41f4b71Sopenharmony_ci
341e41f4b71Sopenharmony_ci**参数:**
342e41f4b71Sopenharmony_ci
343e41f4b71Sopenharmony_ci| 名称 | 描述 | 
344e41f4b71Sopenharmony_ci| -------- | -------- |
345e41f4b71Sopenharmony_ci| capability | 编码器能力指针。不能填入解码器能力指针。  | 
346e41f4b71Sopenharmony_ci| complexityRange | 输出参数。编码器复杂度范围。  | 
347e41f4b71Sopenharmony_ci
348e41f4b71Sopenharmony_ci**返回:**
349e41f4b71Sopenharmony_ci
350e41f4b71Sopenharmony_ci如果执行成功,则返回AV_ERR_OK, 否则返回特定错误代码,请参阅[OH_AVErrCode](_core.md#oh_averrcode)。
351e41f4b71Sopenharmony_ci
352e41f4b71Sopenharmony_ci当能力实例无效,或者指向编码器复杂度范围的指针为空指针,返回AV_ERR_INVALID_VAL。
353e41f4b71Sopenharmony_ci
354e41f4b71Sopenharmony_ci
355e41f4b71Sopenharmony_ci### OH_AVCapability_GetEncoderQualityRange()
356e41f4b71Sopenharmony_ci
357e41f4b71Sopenharmony_ci```
358e41f4b71Sopenharmony_ciOH_AVErrCode OH_AVCapability_GetEncoderQualityRange (OH_AVCapability *capability, OH_AVRange *qualityRange)
359e41f4b71Sopenharmony_ci```
360e41f4b71Sopenharmony_ci**描述**
361e41f4b71Sopenharmony_ci获取编码器支持的质量范围。
362e41f4b71Sopenharmony_ci
363e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Multimedia.Media.CodecBase
364e41f4b71Sopenharmony_ci
365e41f4b71Sopenharmony_ci**起始版本:** 10
366e41f4b71Sopenharmony_ci
367e41f4b71Sopenharmony_ci**参数:**
368e41f4b71Sopenharmony_ci
369e41f4b71Sopenharmony_ci| 名称 | 描述 | 
370e41f4b71Sopenharmony_ci| -------- | -------- |
371e41f4b71Sopenharmony_ci| capability | 编码器能力指针。不能填入解码器能力指针。  | 
372e41f4b71Sopenharmony_ci| qualityRange | 输出参数。编码器质量范围。  | 
373e41f4b71Sopenharmony_ci
374e41f4b71Sopenharmony_ci**返回:**
375e41f4b71Sopenharmony_ci
376e41f4b71Sopenharmony_ci如果执行成功,则返回AV_ERR_OK, 否则返回特定错误代码,请参阅[OH_AVErrCode](_core.md#oh_averrcode)。
377e41f4b71Sopenharmony_ci
378e41f4b71Sopenharmony_ci当能力实例无效,或者指向编码器质量范围的指针为空指针,返回AV_ERR_INVALID_VAL。
379e41f4b71Sopenharmony_ci
380e41f4b71Sopenharmony_ci
381e41f4b71Sopenharmony_ci### OH_AVCapability_GetFeatureProperties()
382e41f4b71Sopenharmony_ci
383e41f4b71Sopenharmony_ci```
384e41f4b71Sopenharmony_ciOH_AVFormat* OH_AVCapability_GetFeatureProperties (OH_AVCapability *capability, OH_AVCapabilityFeature feature)
385e41f4b71Sopenharmony_ci```
386e41f4b71Sopenharmony_ci**描述**
387e41f4b71Sopenharmony_ci获取指定特性的属性。 需要注意的是,返回值指向的OH_AVFormat实例的生命周期需要调用者手动释放。
388e41f4b71Sopenharmony_ci
389e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Multimedia.Media.CodecBase
390e41f4b71Sopenharmony_ci
391e41f4b71Sopenharmony_ci**起始版本:** 12
392e41f4b71Sopenharmony_ci
393e41f4b71Sopenharmony_ci**参数:**
394e41f4b71Sopenharmony_ci
395e41f4b71Sopenharmony_ci| 名称 | 描述 | 
396e41f4b71Sopenharmony_ci| -------- | -------- |
397e41f4b71Sopenharmony_ci| capability | 编解码能力指针。  | 
398e41f4b71Sopenharmony_ci| feature | 编解码特性,请参阅[OH_AVCapabilityFeature](#oh_avcapabilityfeature)。  | 
399e41f4b71Sopenharmony_ci
400e41f4b71Sopenharmony_ci**返回:**
401e41f4b71Sopenharmony_ci
402e41f4b71Sopenharmony_ci返回指向OH_AVFormat实例的指针。
403e41f4b71Sopenharmony_ci
404e41f4b71Sopenharmony_ci
405e41f4b71Sopenharmony_ci### OH_AVCapability_GetMaxSupportedInstances()
406e41f4b71Sopenharmony_ci
407e41f4b71Sopenharmony_ci```
408e41f4b71Sopenharmony_ciint32_t OH_AVCapability_GetMaxSupportedInstances (OH_AVCapability *capability)
409e41f4b71Sopenharmony_ci```
410e41f4b71Sopenharmony_ci**描述**
411e41f4b71Sopenharmony_ci获取编解码器支持的最大实例数。
412e41f4b71Sopenharmony_ci
413e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Multimedia.Media.CodecBase
414e41f4b71Sopenharmony_ci
415e41f4b71Sopenharmony_ci**起始版本:** 10
416e41f4b71Sopenharmony_ci
417e41f4b71Sopenharmony_ci**参数:**
418e41f4b71Sopenharmony_ci
419e41f4b71Sopenharmony_ci| 名称 | 描述 | 
420e41f4b71Sopenharmony_ci| -------- | -------- |
421e41f4b71Sopenharmony_ci| capability | 编解码能力指针。  | 
422e41f4b71Sopenharmony_ci
423e41f4b71Sopenharmony_ci**返回:**
424e41f4b71Sopenharmony_ci
425e41f4b71Sopenharmony_ci返回支持的最大编解码器实例数。
426e41f4b71Sopenharmony_ci
427e41f4b71Sopenharmony_ci
428e41f4b71Sopenharmony_ci### OH_AVCapability_GetName()
429e41f4b71Sopenharmony_ci
430e41f4b71Sopenharmony_ci```
431e41f4b71Sopenharmony_ciconst char* OH_AVCapability_GetName (OH_AVCapability *capability)
432e41f4b71Sopenharmony_ci```
433e41f4b71Sopenharmony_ci**描述**
434e41f4b71Sopenharmony_ci获取编解码器名称。
435e41f4b71Sopenharmony_ci
436e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Multimedia.Media.CodecBase
437e41f4b71Sopenharmony_ci
438e41f4b71Sopenharmony_ci**起始版本:** 10
439e41f4b71Sopenharmony_ci
440e41f4b71Sopenharmony_ci**参数:**
441e41f4b71Sopenharmony_ci
442e41f4b71Sopenharmony_ci| 名称 | 描述 | 
443e41f4b71Sopenharmony_ci| -------- | -------- |
444e41f4b71Sopenharmony_ci| capability | 编解码能力指针。  | 
445e41f4b71Sopenharmony_ci
446e41f4b71Sopenharmony_ci**返回:**
447e41f4b71Sopenharmony_ci
448e41f4b71Sopenharmony_ci返回编解码器名称字符串。
449e41f4b71Sopenharmony_ci
450e41f4b71Sopenharmony_ci
451e41f4b71Sopenharmony_ci### OH_AVCapability_GetSupportedLevelsForProfile()
452e41f4b71Sopenharmony_ci
453e41f4b71Sopenharmony_ci```
454e41f4b71Sopenharmony_ciOH_AVErrCode OH_AVCapability_GetSupportedLevelsForProfile (OH_AVCapability *capability, int32_t profile, const int32_t **levels, uint32_t *levelNum)
455e41f4b71Sopenharmony_ci```
456e41f4b71Sopenharmony_ci**描述**
457e41f4b71Sopenharmony_ci获取特定档次支持的编解码器级别。
458e41f4b71Sopenharmony_ci
459e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Multimedia.Media.CodecBase
460e41f4b71Sopenharmony_ci
461e41f4b71Sopenharmony_ci**起始版本:** 10
462e41f4b71Sopenharmony_ci
463e41f4b71Sopenharmony_ci**参数:**
464e41f4b71Sopenharmony_ci
465e41f4b71Sopenharmony_ci| 名称 | 描述 | 
466e41f4b71Sopenharmony_ci| -------- | -------- |
467e41f4b71Sopenharmony_ci| capability | 编解码能力指针。  | 
468e41f4b71Sopenharmony_ci| profile | 编解码器档次。  | 
469e41f4b71Sopenharmony_ci| levels | 输出参数。指向级别数组的指针。  | 
470e41f4b71Sopenharmony_ci| levelNum | 输出参数。级别数组的元素数目。  | 
471e41f4b71Sopenharmony_ci
472e41f4b71Sopenharmony_ci**返回:**
473e41f4b71Sopenharmony_ci
474e41f4b71Sopenharmony_ci如果执行成功,则返回AV_ERR_OK, 否则返回特定错误代码,请参阅[OH_AVErrCode](_core.md#oh_averrcode)。
475e41f4b71Sopenharmony_ci
476e41f4b71Sopenharmony_ci当能力实例无效,或者档次不在通过[OH_AVCapability_GetSupportedProfiles](#oh_avcapability_getsupportedprofiles)获取支持的档次数组中, 或者指向级别数组的指针为空指针,或者指向级别数组的元素数目的指针为空指针,返回AV_ERR_INVALID_VAL。 当遇到未知错误,返回AV_ERR_UNKNOWN。 当内部使用内存分配失败,返回AV_ERR_NO_MEMORY。
477e41f4b71Sopenharmony_ci
478e41f4b71Sopenharmony_ci
479e41f4b71Sopenharmony_ci### OH_AVCapability_GetSupportedProfiles()
480e41f4b71Sopenharmony_ci
481e41f4b71Sopenharmony_ci```
482e41f4b71Sopenharmony_ciOH_AVErrCode OH_AVCapability_GetSupportedProfiles (OH_AVCapability *capability, const int32_t **profiles, uint32_t *profileNum)
483e41f4b71Sopenharmony_ci```
484e41f4b71Sopenharmony_ci**描述**
485e41f4b71Sopenharmony_ci获取编解码器支持的档次。
486e41f4b71Sopenharmony_ci
487e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Multimedia.Media.CodecBase
488e41f4b71Sopenharmony_ci
489e41f4b71Sopenharmony_ci**起始版本:** 10
490e41f4b71Sopenharmony_ci
491e41f4b71Sopenharmony_ci**参数:**
492e41f4b71Sopenharmony_ci
493e41f4b71Sopenharmony_ci| 名称 | 描述 | 
494e41f4b71Sopenharmony_ci| -------- | -------- |
495e41f4b71Sopenharmony_ci| capability | 编解码能力指针。  | 
496e41f4b71Sopenharmony_ci| profiles | 输出参数。指向档次数组的指针。  | 
497e41f4b71Sopenharmony_ci| profileNum | 输出参数。档次数组的元素数目。  | 
498e41f4b71Sopenharmony_ci
499e41f4b71Sopenharmony_ci**返回:**
500e41f4b71Sopenharmony_ci
501e41f4b71Sopenharmony_ci如果执行成功,则返回AV_ERR_OK, 否则返回特定错误代码,请参阅[OH_AVErrCode](_core.md#oh_averrcode)。
502e41f4b71Sopenharmony_ci
503e41f4b71Sopenharmony_ci当能力实例无效,或者指向档次数组的指针为空指针,或者指向档次数组的元素数目的指针为空指针,返回AV_ERR_INVALID_VAL。 当遇到未知错误,返回AV_ERR_UNKNOWN。 当内部使用内存分配失败,返回AV_ERR_NO_MEMORY。
504e41f4b71Sopenharmony_ci
505e41f4b71Sopenharmony_ci
506e41f4b71Sopenharmony_ci### OH_AVCapability_GetVideoFrameRateRange()
507e41f4b71Sopenharmony_ci
508e41f4b71Sopenharmony_ci```
509e41f4b71Sopenharmony_ciOH_AVErrCode OH_AVCapability_GetVideoFrameRateRange (OH_AVCapability *capability, OH_AVRange *frameRateRange)
510e41f4b71Sopenharmony_ci```
511e41f4b71Sopenharmony_ci**描述**
512e41f4b71Sopenharmony_ci获取视频编解码器支持的视频帧率范围。
513e41f4b71Sopenharmony_ci
514e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Multimedia.Media.CodecBase
515e41f4b71Sopenharmony_ci
516e41f4b71Sopenharmony_ci**起始版本:** 10
517e41f4b71Sopenharmony_ci
518e41f4b71Sopenharmony_ci**参数:**
519e41f4b71Sopenharmony_ci
520e41f4b71Sopenharmony_ci| 名称 | 描述 | 
521e41f4b71Sopenharmony_ci| -------- | -------- |
522e41f4b71Sopenharmony_ci| capability | 视频编解码能力指针。不能填入音频编解码器能力指针。  | 
523e41f4b71Sopenharmony_ci| frameRateRange | 输出参数。视频帧率范围。  | 
524e41f4b71Sopenharmony_ci
525e41f4b71Sopenharmony_ci**返回:**
526e41f4b71Sopenharmony_ci
527e41f4b71Sopenharmony_ci如果执行成功,则返回AV_ERR_OK, 否则返回特定错误代码,请参阅[OH_AVErrCode](_core.md#oh_averrcode)。
528e41f4b71Sopenharmony_ci
529e41f4b71Sopenharmony_ci当能力实例无效,或者指向视频帧率范围的指针为空指针,返回AV_ERR_INVALID_VAL。
530e41f4b71Sopenharmony_ci
531e41f4b71Sopenharmony_ci
532e41f4b71Sopenharmony_ci### OH_AVCapability_GetVideoFrameRateRangeForSize()
533e41f4b71Sopenharmony_ci
534e41f4b71Sopenharmony_ci```
535e41f4b71Sopenharmony_ciOH_AVErrCode OH_AVCapability_GetVideoFrameRateRangeForSize (OH_AVCapability *capability, int32_t width, int32_t height, OH_AVRange *frameRateRange)
536e41f4b71Sopenharmony_ci```
537e41f4b71Sopenharmony_ci**描述**
538e41f4b71Sopenharmony_ci获取指定视频大小的视频编解码器支持的视频帧率范围。
539e41f4b71Sopenharmony_ci
540e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Multimedia.Media.CodecBase
541e41f4b71Sopenharmony_ci
542e41f4b71Sopenharmony_ci**起始版本:** 10
543e41f4b71Sopenharmony_ci
544e41f4b71Sopenharmony_ci**参数:**
545e41f4b71Sopenharmony_ci
546e41f4b71Sopenharmony_ci| 名称 | 描述 | 
547e41f4b71Sopenharmony_ci| -------- | -------- |
548e41f4b71Sopenharmony_ci| capability | 视频编解码能力指针。不能填入音频编解码器能力指针。  | 
549e41f4b71Sopenharmony_ci| width | 视频水平像素数。  | 
550e41f4b71Sopenharmony_ci| height | 视频垂直像素数。  | 
551e41f4b71Sopenharmony_ci| frameRateRange | 输出参数。视频帧率范围。  | 
552e41f4b71Sopenharmony_ci
553e41f4b71Sopenharmony_ci**返回:**
554e41f4b71Sopenharmony_ci
555e41f4b71Sopenharmony_ci如果执行成功,则返回AV_ERR_OK, 否则返回特定错误代码,请参阅[OH_AVErrCode](_core.md#oh_averrcode)。
556e41f4b71Sopenharmony_ci
557e41f4b71Sopenharmony_ci当能力实例无效,或者宽度和高度组合不支持,或者指向帧率范围的指针为空指针,返回AV_ERR_INVALID_VAL。
558e41f4b71Sopenharmony_ci
559e41f4b71Sopenharmony_ci
560e41f4b71Sopenharmony_ci### OH_AVCapability_GetVideoHeightAlignment()
561e41f4b71Sopenharmony_ci
562e41f4b71Sopenharmony_ci```
563e41f4b71Sopenharmony_ciOH_AVErrCode OH_AVCapability_GetVideoHeightAlignment (OH_AVCapability *capability, int32_t *heightAlignment)
564e41f4b71Sopenharmony_ci```
565e41f4b71Sopenharmony_ci**描述**
566e41f4b71Sopenharmony_ci获取视频编解码器支持的视频高度对齐。
567e41f4b71Sopenharmony_ci
568e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Multimedia.Media.CodecBase
569e41f4b71Sopenharmony_ci
570e41f4b71Sopenharmony_ci**起始版本:** 10
571e41f4b71Sopenharmony_ci
572e41f4b71Sopenharmony_ci**参数:**
573e41f4b71Sopenharmony_ci
574e41f4b71Sopenharmony_ci| 名称 | 描述 | 
575e41f4b71Sopenharmony_ci| -------- | -------- |
576e41f4b71Sopenharmony_ci| capability | 视频编解码能力指针。不能填入音频编解码器能力指针。  | 
577e41f4b71Sopenharmony_ci| heightAlignment | 输出参数。视频高度对齐。  | 
578e41f4b71Sopenharmony_ci
579e41f4b71Sopenharmony_ci**返回:**
580e41f4b71Sopenharmony_ci
581e41f4b71Sopenharmony_ci如果执行成功,则返回AV_ERR_OK, 否则返回特定错误代码,请参阅[OH_AVErrCode](_core.md#oh_averrcode)。
582e41f4b71Sopenharmony_ci
583e41f4b71Sopenharmony_ci当能力实例无效,或者指向视频高度对齐的指针为空指针,返回AV_ERR_INVALID_VAL。
584e41f4b71Sopenharmony_ci
585e41f4b71Sopenharmony_ci
586e41f4b71Sopenharmony_ci### OH_AVCapability_GetVideoHeightRange()
587e41f4b71Sopenharmony_ci
588e41f4b71Sopenharmony_ci```
589e41f4b71Sopenharmony_ciOH_AVErrCode OH_AVCapability_GetVideoHeightRange (OH_AVCapability *capability, OH_AVRange *heightRange)
590e41f4b71Sopenharmony_ci```
591e41f4b71Sopenharmony_ci**描述**
592e41f4b71Sopenharmony_ci获取视频编解码器支持的视频高度范围。
593e41f4b71Sopenharmony_ci
594e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Multimedia.Media.CodecBase
595e41f4b71Sopenharmony_ci
596e41f4b71Sopenharmony_ci**起始版本:** 10
597e41f4b71Sopenharmony_ci
598e41f4b71Sopenharmony_ci**参数:**
599e41f4b71Sopenharmony_ci
600e41f4b71Sopenharmony_ci| 名称 | 描述 | 
601e41f4b71Sopenharmony_ci| -------- | -------- |
602e41f4b71Sopenharmony_ci| capability | 视频编解码能力指针。不能填入音频编解码器能力指针。  | 
603e41f4b71Sopenharmony_ci| heightRange | 输出参数。视频高度范围。  | 
604e41f4b71Sopenharmony_ci
605e41f4b71Sopenharmony_ci**返回:**
606e41f4b71Sopenharmony_ci
607e41f4b71Sopenharmony_ci如果执行成功,则返回AV_ERR_OK, 否则返回特定错误代码,请参阅[OH_AVErrCode](_core.md#oh_averrcode)。
608e41f4b71Sopenharmony_ci
609e41f4b71Sopenharmony_ci当能力实例无效,或者指向视频高度范围的指针为空指针,返回AV_ERR_INVALID_VAL。
610e41f4b71Sopenharmony_ci
611e41f4b71Sopenharmony_ci
612e41f4b71Sopenharmony_ci### OH_AVCapability_GetVideoHeightRangeForWidth()
613e41f4b71Sopenharmony_ci
614e41f4b71Sopenharmony_ci```
615e41f4b71Sopenharmony_ciOH_AVErrCode OH_AVCapability_GetVideoHeightRangeForWidth (OH_AVCapability *capability, int32_t width, OH_AVRange *heightRange)
616e41f4b71Sopenharmony_ci```
617e41f4b71Sopenharmony_ci**描述**
618e41f4b71Sopenharmony_ci获取指定宽度情况下视频编解码器支持的视频高度范围。
619e41f4b71Sopenharmony_ci
620e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Multimedia.Media.CodecBase
621e41f4b71Sopenharmony_ci
622e41f4b71Sopenharmony_ci**起始版本:** 10
623e41f4b71Sopenharmony_ci
624e41f4b71Sopenharmony_ci**参数:**
625e41f4b71Sopenharmony_ci
626e41f4b71Sopenharmony_ci| 名称 | 描述 | 
627e41f4b71Sopenharmony_ci| -------- | -------- |
628e41f4b71Sopenharmony_ci| capability | 视频编解码能力指针。不能填入音频编解码器能力指针。  | 
629e41f4b71Sopenharmony_ci| width | 视频水平像素数。  | 
630e41f4b71Sopenharmony_ci| heightRange | 输出参数。视频高度范围。  | 
631e41f4b71Sopenharmony_ci
632e41f4b71Sopenharmony_ci**返回:**
633e41f4b71Sopenharmony_ci
634e41f4b71Sopenharmony_ci如果执行成功,则返回AV_ERR_OK, 否则返回特定错误代码,请参阅[OH_AVErrCode](_core.md#oh_averrcode)。
635e41f4b71Sopenharmony_ci
636e41f4b71Sopenharmony_ci当能力实例无效,或者宽度不在通过[OH_AVCapability_GetVideoWidthRange](#oh_avcapability_getvideowidthrange)获取支持的宽度范围中, 或者指向高度范围的指针为空指针,返回AV_ERR_INVALID_VAL。
637e41f4b71Sopenharmony_ci
638e41f4b71Sopenharmony_ci
639e41f4b71Sopenharmony_ci### OH_AVCapability_GetVideoSupportedPixelFormats()
640e41f4b71Sopenharmony_ci
641e41f4b71Sopenharmony_ci```
642e41f4b71Sopenharmony_ciOH_AVErrCode OH_AVCapability_GetVideoSupportedPixelFormats (OH_AVCapability *capability, const int32_t **pixelFormats, uint32_t *pixelFormatNum)
643e41f4b71Sopenharmony_ci```
644e41f4b71Sopenharmony_ci**描述**
645e41f4b71Sopenharmony_ci获取视频编解码器支持的视频像素格式。
646e41f4b71Sopenharmony_ci
647e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Multimedia.Media.CodecBase
648e41f4b71Sopenharmony_ci
649e41f4b71Sopenharmony_ci**起始版本:** 10
650e41f4b71Sopenharmony_ci
651e41f4b71Sopenharmony_ci**参数:**
652e41f4b71Sopenharmony_ci
653e41f4b71Sopenharmony_ci| 名称 | 描述 | 
654e41f4b71Sopenharmony_ci| -------- | -------- |
655e41f4b71Sopenharmony_ci| capability | 视频编解码能力指针。不能填入音频编解码器能力指针。  | 
656e41f4b71Sopenharmony_ci| pixelFormats | 输出参数。指向视频像素格式数组的指针。  | 
657e41f4b71Sopenharmony_ci| pixelFormatNum | 输出参数。像素格式数组的元素数目。  | 
658e41f4b71Sopenharmony_ci
659e41f4b71Sopenharmony_ci**返回:**
660e41f4b71Sopenharmony_ci
661e41f4b71Sopenharmony_ci如果执行成功,则返回AV_ERR_OK, 否则返回特定错误代码,请参阅[OH_AVErrCode](_core.md#oh_averrcode)。
662e41f4b71Sopenharmony_ci
663e41f4b71Sopenharmony_ci当能力实例无效,或者指向视频像素格式数组的指针为空指针,或者指向像素格式数组的元素数目的指针为空指针,返回AV_ERR_INVALID_VAL。 当遇到未知错误,返回AV_ERR_UNKNOWN。 当内部使用内存分配失败,返回AV_ERR_NO_MEMORY。
664e41f4b71Sopenharmony_ci
665e41f4b71Sopenharmony_ci
666e41f4b71Sopenharmony_ci### OH_AVCapability_GetVideoWidthAlignment()
667e41f4b71Sopenharmony_ci
668e41f4b71Sopenharmony_ci```
669e41f4b71Sopenharmony_ciOH_AVErrCode OH_AVCapability_GetVideoWidthAlignment (OH_AVCapability *capability, int32_t *widthAlignment)
670e41f4b71Sopenharmony_ci```
671e41f4b71Sopenharmony_ci**描述**
672e41f4b71Sopenharmony_ci获取视频编解码器支持的视频宽度对齐。
673e41f4b71Sopenharmony_ci
674e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Multimedia.Media.CodecBase
675e41f4b71Sopenharmony_ci
676e41f4b71Sopenharmony_ci**起始版本:** 10
677e41f4b71Sopenharmony_ci
678e41f4b71Sopenharmony_ci**参数:**
679e41f4b71Sopenharmony_ci
680e41f4b71Sopenharmony_ci| 名称 | 描述 | 
681e41f4b71Sopenharmony_ci| -------- | -------- |
682e41f4b71Sopenharmony_ci| capability | 视频编解码能力指针。不能填入音频编解码器能力指针。  | 
683e41f4b71Sopenharmony_ci| widthAlignment | 输出参数。视频宽度对齐。  | 
684e41f4b71Sopenharmony_ci
685e41f4b71Sopenharmony_ci**返回:**
686e41f4b71Sopenharmony_ci
687e41f4b71Sopenharmony_ci如果执行成功,则返回AV_ERR_OK, 否则返回特定错误代码,请参阅[OH_AVErrCode](_core.md#oh_averrcode)。
688e41f4b71Sopenharmony_ci
689e41f4b71Sopenharmony_ci当能力实例无效,或者指向视频宽度对齐的指针为空指针,返回AV_ERR_INVALID_VAL。
690e41f4b71Sopenharmony_ci
691e41f4b71Sopenharmony_ci
692e41f4b71Sopenharmony_ci### OH_AVCapability_GetVideoWidthRange()
693e41f4b71Sopenharmony_ci
694e41f4b71Sopenharmony_ci```
695e41f4b71Sopenharmony_ciOH_AVErrCode OH_AVCapability_GetVideoWidthRange (OH_AVCapability *capability, OH_AVRange *widthRange)
696e41f4b71Sopenharmony_ci```
697e41f4b71Sopenharmony_ci**描述**
698e41f4b71Sopenharmony_ci获取视频编解码器支持的视频宽度范围。
699e41f4b71Sopenharmony_ci
700e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Multimedia.Media.CodecBase
701e41f4b71Sopenharmony_ci
702e41f4b71Sopenharmony_ci**起始版本:** 10
703e41f4b71Sopenharmony_ci
704e41f4b71Sopenharmony_ci**参数:**
705e41f4b71Sopenharmony_ci
706e41f4b71Sopenharmony_ci| 名称 | 描述 | 
707e41f4b71Sopenharmony_ci| -------- | -------- |
708e41f4b71Sopenharmony_ci| capability | 视频编解码能力指针。不能填入音频编解码器能力指针。  | 
709e41f4b71Sopenharmony_ci| widthRange | 输出参数。视频宽度范围。  | 
710e41f4b71Sopenharmony_ci
711e41f4b71Sopenharmony_ci**返回:**
712e41f4b71Sopenharmony_ci
713e41f4b71Sopenharmony_ci如果执行成功,则返回AV_ERR_OK, 否则返回特定错误代码,请参阅[OH_AVErrCode](_core.md#oh_averrcode)。
714e41f4b71Sopenharmony_ci
715e41f4b71Sopenharmony_ci当能力实例无效,或者指向视频宽度范围的指针为空指针,返回AV_ERR_INVALID_VAL。
716e41f4b71Sopenharmony_ci
717e41f4b71Sopenharmony_ci
718e41f4b71Sopenharmony_ci### OH_AVCapability_GetVideoWidthRangeForHeight()
719e41f4b71Sopenharmony_ci
720e41f4b71Sopenharmony_ci```
721e41f4b71Sopenharmony_ciOH_AVErrCode OH_AVCapability_GetVideoWidthRangeForHeight (OH_AVCapability *capability, int32_t height, OH_AVRange *widthRange)
722e41f4b71Sopenharmony_ci```
723e41f4b71Sopenharmony_ci**描述**
724e41f4b71Sopenharmony_ci获取指定高度情况下视频编解码器支持的视频宽度范围。
725e41f4b71Sopenharmony_ci
726e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Multimedia.Media.CodecBase
727e41f4b71Sopenharmony_ci
728e41f4b71Sopenharmony_ci**起始版本:** 10
729e41f4b71Sopenharmony_ci
730e41f4b71Sopenharmony_ci**参数:**
731e41f4b71Sopenharmony_ci
732e41f4b71Sopenharmony_ci| 名称 | 描述 | 
733e41f4b71Sopenharmony_ci| -------- | -------- |
734e41f4b71Sopenharmony_ci| capability | 视频编解码能力指针。不能填入音频编解码器能力指针。  | 
735e41f4b71Sopenharmony_ci| height | 视频垂直像素数。  | 
736e41f4b71Sopenharmony_ci| widthRange | 输出参数。视频宽度范围。  | 
737e41f4b71Sopenharmony_ci
738e41f4b71Sopenharmony_ci**返回:**
739e41f4b71Sopenharmony_ci
740e41f4b71Sopenharmony_ci如果执行成功,则返回AV_ERR_OK, 否则返回特定错误代码,请参阅[OH_AVErrCode](_core.md#oh_averrcode)。
741e41f4b71Sopenharmony_ci
742e41f4b71Sopenharmony_ci当能力实例无效,或者高度不在通过[OH_AVCapability_GetVideoHeightRange](#oh_avcapability_getvideoheightrange)获取支持的高度范围中, 或者指向宽度范围的指针为空指针,返回AV_ERR_INVALID_VAL。
743e41f4b71Sopenharmony_ci
744e41f4b71Sopenharmony_ci
745e41f4b71Sopenharmony_ci### OH_AVCapability_IsEncoderBitrateModeSupported()
746e41f4b71Sopenharmony_ci
747e41f4b71Sopenharmony_ci```
748e41f4b71Sopenharmony_cibool OH_AVCapability_IsEncoderBitrateModeSupported (OH_AVCapability *capability, OH_BitrateMode bitrateMode)
749e41f4b71Sopenharmony_ci```
750e41f4b71Sopenharmony_ci**描述**
751e41f4b71Sopenharmony_ci检查编码器是否支持特定的比特率模式。
752e41f4b71Sopenharmony_ci
753e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Multimedia.Media.CodecBase
754e41f4b71Sopenharmony_ci
755e41f4b71Sopenharmony_ci**起始版本:** 10
756e41f4b71Sopenharmony_ci
757e41f4b71Sopenharmony_ci**参数:**
758e41f4b71Sopenharmony_ci
759e41f4b71Sopenharmony_ci| 名称 | 描述 | 
760e41f4b71Sopenharmony_ci| -------- | -------- |
761e41f4b71Sopenharmony_ci| capability | 编码器能力指针。不能填入解码器能力指针。  | 
762e41f4b71Sopenharmony_ci| bitrateMode | 比特率模式。  | 
763e41f4b71Sopenharmony_ci
764e41f4b71Sopenharmony_ci**返回:**
765e41f4b71Sopenharmony_ci
766e41f4b71Sopenharmony_ci如果支持该比特率模式,则返回true;如果不支持该比特率模式,则返回false。
767e41f4b71Sopenharmony_ci
768e41f4b71Sopenharmony_ci
769e41f4b71Sopenharmony_ci### OH_AVCapability_IsFeatureSupported()
770e41f4b71Sopenharmony_ci
771e41f4b71Sopenharmony_ci```
772e41f4b71Sopenharmony_cibool OH_AVCapability_IsFeatureSupported (OH_AVCapability *capability, OH_AVCapabilityFeature feature)
773e41f4b71Sopenharmony_ci```
774e41f4b71Sopenharmony_ci**描述**
775e41f4b71Sopenharmony_ci检查编解码器是否支持指定特性。
776e41f4b71Sopenharmony_ci
777e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Multimedia.Media.CodecBase
778e41f4b71Sopenharmony_ci
779e41f4b71Sopenharmony_ci**起始版本:** 12
780e41f4b71Sopenharmony_ci
781e41f4b71Sopenharmony_ci**参数:**
782e41f4b71Sopenharmony_ci
783e41f4b71Sopenharmony_ci| 名称 | 描述 | 
784e41f4b71Sopenharmony_ci| -------- | -------- |
785e41f4b71Sopenharmony_ci| capability | 编解码能力指针。  | 
786e41f4b71Sopenharmony_ci| feature | 编解码特性,请参阅[OH_AVCapabilityFeature](#oh_avcapabilityfeature)。  | 
787e41f4b71Sopenharmony_ci
788e41f4b71Sopenharmony_ci**返回:**
789e41f4b71Sopenharmony_ci
790e41f4b71Sopenharmony_ci如果支持该特性,则返回true。如果不支持,则为false。
791e41f4b71Sopenharmony_ci
792e41f4b71Sopenharmony_ci
793e41f4b71Sopenharmony_ci### OH_AVCapability_IsHardware()
794e41f4b71Sopenharmony_ci
795e41f4b71Sopenharmony_ci```
796e41f4b71Sopenharmony_cibool OH_AVCapability_IsHardware (OH_AVCapability *capability)
797e41f4b71Sopenharmony_ci```
798e41f4b71Sopenharmony_ci**描述**
799e41f4b71Sopenharmony_ci检查能力实例是否描述了硬件编解码器。
800e41f4b71Sopenharmony_ci
801e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Multimedia.Media.CodecBase
802e41f4b71Sopenharmony_ci
803e41f4b71Sopenharmony_ci**起始版本:** 10
804e41f4b71Sopenharmony_ci
805e41f4b71Sopenharmony_ci**参数:**
806e41f4b71Sopenharmony_ci
807e41f4b71Sopenharmony_ci| 名称 | 描述 | 
808e41f4b71Sopenharmony_ci| -------- | -------- |
809e41f4b71Sopenharmony_ci| capability | 编解码能力指针。  | 
810e41f4b71Sopenharmony_ci
811e41f4b71Sopenharmony_ci**返回:**
812e41f4b71Sopenharmony_ci
813e41f4b71Sopenharmony_ci如果能力实例描述的是硬件编解码器,则返回true, 如果功能实例描述的是软件编解码器,则为false。
814e41f4b71Sopenharmony_ci
815e41f4b71Sopenharmony_ci
816e41f4b71Sopenharmony_ci### OH_AVCapability_IsVideoSizeSupported()
817e41f4b71Sopenharmony_ci
818e41f4b71Sopenharmony_ci```
819e41f4b71Sopenharmony_cibool OH_AVCapability_IsVideoSizeSupported (OH_AVCapability *capability, int32_t width, int32_t height)
820e41f4b71Sopenharmony_ci```
821e41f4b71Sopenharmony_ci**描述**
822e41f4b71Sopenharmony_ci检查视频编解码器是否支持特定的视频大小。
823e41f4b71Sopenharmony_ci
824e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Multimedia.Media.CodecBase
825e41f4b71Sopenharmony_ci
826e41f4b71Sopenharmony_ci**起始版本:** 10
827e41f4b71Sopenharmony_ci
828e41f4b71Sopenharmony_ci**参数:**
829e41f4b71Sopenharmony_ci
830e41f4b71Sopenharmony_ci| 名称 | 描述 | 
831e41f4b71Sopenharmony_ci| -------- | -------- |
832e41f4b71Sopenharmony_ci| capability | 视频编解码能力指针。不能填入音频编解码器能力指针。  | 
833e41f4b71Sopenharmony_ci| width | 视频水平像素数。  | 
834e41f4b71Sopenharmony_ci| height | 视频垂直像素数。  | 
835e41f4b71Sopenharmony_ci
836e41f4b71Sopenharmony_ci**返回:**
837e41f4b71Sopenharmony_ci
838e41f4b71Sopenharmony_ci如果支持该视频大小,则返回true,如果不支持该视频大小,则返回false。
839e41f4b71Sopenharmony_ci
840e41f4b71Sopenharmony_ci
841e41f4b71Sopenharmony_ci### OH_AVCodec_GetCapability()
842e41f4b71Sopenharmony_ci
843e41f4b71Sopenharmony_ci```
844e41f4b71Sopenharmony_ciOH_AVCapability* OH_AVCodec_GetCapability (const char *mime, bool isEncoder)
845e41f4b71Sopenharmony_ci```
846e41f4b71Sopenharmony_ci**描述**
847e41f4b71Sopenharmony_ci获取系统推荐的编解码器能力。
848e41f4b71Sopenharmony_ci
849e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Multimedia.Media.CodecBase
850e41f4b71Sopenharmony_ci
851e41f4b71Sopenharmony_ci**起始版本:** 10
852e41f4b71Sopenharmony_ci
853e41f4b71Sopenharmony_ci**参数:**
854e41f4b71Sopenharmony_ci
855e41f4b71Sopenharmony_ci| 名称 | 描述 | 
856e41f4b71Sopenharmony_ci| -------- | -------- |
857e41f4b71Sopenharmony_ci| mime | MIME类型描述字符串,请参阅**AVCODEC_MIME_TYPE**。  | 
858e41f4b71Sopenharmony_ci| isEncoder | 编码器为true,解码器为false。  | 
859e41f4b71Sopenharmony_ci
860e41f4b71Sopenharmony_ci**返回:**
861e41f4b71Sopenharmony_ci
862e41f4b71Sopenharmony_ci如果现有编解码器匹配,则返回能力实例, 如果指定的MIME类型与任何现有编解码器不匹配,则返回NULL。
863e41f4b71Sopenharmony_ci
864e41f4b71Sopenharmony_ci
865e41f4b71Sopenharmony_ci### OH_AVCodec_GetCapabilityByCategory()
866e41f4b71Sopenharmony_ci
867e41f4b71Sopenharmony_ci```
868e41f4b71Sopenharmony_ciOH_AVCapability* OH_AVCodec_GetCapabilityByCategory (const char *mime, bool isEncoder, OH_AVCodecCategory category)
869e41f4b71Sopenharmony_ci```
870e41f4b71Sopenharmony_ci**描述**
871e41f4b71Sopenharmony_ci获取指定类别中的编解码器能力。 通过指定类别, 匹配的编解码器仅限于硬件编解码器或软件编解码器。
872e41f4b71Sopenharmony_ci
873e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Multimedia.Media.CodecBase
874e41f4b71Sopenharmony_ci
875e41f4b71Sopenharmony_ci**起始版本:** 10
876e41f4b71Sopenharmony_ci
877e41f4b71Sopenharmony_ci**参数:**
878e41f4b71Sopenharmony_ci
879e41f4b71Sopenharmony_ci| 名称 | 描述 | 
880e41f4b71Sopenharmony_ci| -------- | -------- |
881e41f4b71Sopenharmony_ci| mime | MIME类型描述字符串,请参阅[AVCODEC_MIMETYPE](_codec_base.md#变量)。  | 
882e41f4b71Sopenharmony_ci| isEncoder | 编码器为true,解码器为false。  | 
883e41f4b71Sopenharmony_ci| category | 编解码器类别。  | 
884e41f4b71Sopenharmony_ci
885e41f4b71Sopenharmony_ci**返回:**
886e41f4b71Sopenharmony_ci
887e41f4b71Sopenharmony_ci如果现有编解码器匹配,则返回能力实例, 如果指定的MIME类型与任何现有编解码器不匹配,则返回NULL。
888