Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Docs
提交
80c39033
D
Docs
项目概览
OpenHarmony
/
Docs
接近 2 年 前同步成功
通知
159
Star
292
Fork
28
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
Docs
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
未验证
提交
80c39033
编写于
7月 06, 2023
作者:
O
openharmony_ci
提交者:
Gitee
7月 06, 2023
浏览文件
操作
浏览文件
下载
差异文件
!20541 IsValid 接口说明修改,新增flac编码 输入长度说明
Merge pull request !20541 from guoyao/master
上级
68b21daa
b30246cd
变更
5
显示空白变更内容
内联
并排
Showing
5 changed file
with
230 addition
and
292 deletion
+230
-292
zh-cn/application-dev/media/audio-encoding.md
zh-cn/application-dev/media/audio-encoding.md
+22
-2
zh-cn/application-dev/reference/native-apis/_audio_decoder.md
...n/application-dev/reference/native-apis/_audio_decoder.md
+100
-141
zh-cn/application-dev/reference/native-apis/_audio_encoder.md
...n/application-dev/reference/native-apis/_audio_encoder.md
+74
-109
zh-cn/application-dev/reference/native-apis/native__avcodec__audiodecoder_8h.md
...reference/native-apis/native__avcodec__audiodecoder_8h.md
+17
-20
zh-cn/application-dev/reference/native-apis/native__avcodec__audioencoder_8h.md
...reference/native-apis/native__avcodec__audioencoder_8h.md
+17
-20
未找到文件。
zh-cn/application-dev/media/audio-encoding.md
浏览文件 @
80c39033
...
@@ -152,7 +152,7 @@ constexpr int32_t COMPLIANCE_LEVEL = 0;
...
@@ -152,7 +152,7 @@ constexpr int32_t COMPLIANCE_LEVEL = 0;
// 配置音频精度(必须) SAMPLE_S16LE和SAMPLE_S24LE和SAMPLE_S32LE
// 配置音频精度(必须) SAMPLE_S16LE和SAMPLE_S24LE和SAMPLE_S32LE
constexpr
BITS_PER_CODED_SAMPLE
BITS_PER_CODED_SAMPLE
=
OH_BitsPerSample
::
SAMPLE_S24LE
;
constexpr
BITS_PER_CODED_SAMPLE
BITS_PER_CODED_SAMPLE
=
OH_BitsPerSample
::
SAMPLE_S24LE
;
// 配置最大输入长度(可选)
// 配置最大输入长度(可选)
constexpr
uint32_t
DEFAULT_MAX_INPUT_SIZE
=
1024
*
2
*
4
;
//aac
constexpr
uint32_t
DEFAULT_MAX_INPUT_SIZE
=
1024
*
DEFAULT_CHANNEL_COUNT
*
sizeof
(
float
)
;
//aac
OH_AVFormat
*
format
=
OH_AVFormat_Create
();
OH_AVFormat
*
format
=
OH_AVFormat_Create
();
// 写入format
// 写入format
OH_AVFormat_SetIntValue
(
format
,
MediaDescriptionKey
::
MD_KEY_SAMPLE_RATE
.
data
(),
DEFAULT_SMAPLERATE
);
OH_AVFormat_SetIntValue
(
format
,
MediaDescriptionKey
::
MD_KEY_SAMPLE_RATE
.
data
(),
DEFAULT_SMAPLERATE
);
...
@@ -200,8 +200,28 @@ if (ret != AV_ERR_OK) {
...
@@ -200,8 +200,28 @@ if (ret != AV_ERR_OK) {
6.
调用OH_AudioEncoder_PushInputData(),写入待编码器的数据。
6.
调用OH_AudioEncoder_PushInputData(),写入待编码器的数据。
如果是结束,需要对flag标识成AVCODEC_BUFFER_FLAGS_EOS
如果是结束,需要对flag标识成AVCODEC_BUFFER_FLAGS_EOS
aac: 样点数(FRAME_SIZE)固定为1024
flac: 样点数(FRAME_SIZE)比较特殊需要,根据如下表格进行设置
| 采样率 | 样点数 |
| :----: | :----: |
| 8000 | 576 |
| 16000 | 1152 |
| 22050 | 2304 |
| 24000 | 2304 |
| 32000 | 2304 |
| 44100 | 4608 |
| 48000 | 4608 |
| 88200 | 8192 |
| 96000 | 8192 |
**注意**
:aac的样点数固定为1024,其他值会直接返回错误码,flac的样点数建议根据采样率按照表格传入,大于这个值也会返回错误码,如果小于有可能出现编码文件损坏问题。
```
c++
```
c++
constexpr
int32_t
INPUT_FRAME_BYTES
=
2
*
1024
*
4
;
constexpr
int32_t
FRAME_SIZE
=
1024
;
//aac
constexpr
int32_t
DEFAULT_CHANNEL_COUNT
=
2
;
constexpr
int32_t
INPUT_FRAME_BYTES
=
DEFAULT_CHANNEL_COUNT
*
FRAME_SIZE
*
sizeof
(
float
);
//aac
// 配置buffer info信息
// 配置buffer info信息
OH_AVCodecBufferAttr
info
;
OH_AVCodecBufferAttr
info
;
// 设置输入pkt尺寸、偏移量、时间戳等信息
// 设置输入pkt尺寸、偏移量、时间戳等信息
...
...
zh-cn/application-dev/reference/native-apis/_audio_decoder.md
浏览文件 @
80c39033
# AudioDecoder
# AudioDecoder
## 概述
## 概述
AudioDecoder模块提供用于音频解码的函数。该模块在部分设备上可能不支持,可以通过
[
CanIUse
](
../syscap.md
)
接口确认。
AudioDecoder模块提供用于音频解码的函数。该模块在部分设备上可能不支持,可以通过
[
CanIUse
](
../syscap.md
)
接口确认。
...
@@ -11,30 +10,26 @@ AudioDecoder模块提供用于音频解码的函数。该模块在部分设备
...
@@ -11,30 +10,26 @@ AudioDecoder模块提供用于音频解码的函数。该模块在部分设备
9
9
## 汇总
## 汇总
### 文件
### 文件
| 名称 | 描述 |
| 名称 | 描述 |
| -------- | -------- |
| -------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- |
|
[
native_avcodec_audiodecoder.h
](
native__avcodec__audiodecoder_8h.md
)
| 声明用于音频解码的Native API。
<br>
引用文件:
<multimedia
/
player_framework
/
native_avcodec_audiodecoder.h
>
|
|
[
native_avcodec_audiodecoder.h
](
native__avcodec__audiodecoder_8h.md
)
| 声明用于音频解码的Native API。
`<br>`
引用文件:
<multimedia
/
player_framework
/
native_avcodec_audiodecoder.h
>
|
|
[
avcodec_audio_channel_layout.h
](
avcodec__audio__channel__layout_8h.md
)
| 声明用于音频编解码的枚举。
<br>
引用文件:
<multimedia
/
avcodec_audio_channel_layout.h
>
|
|
[
avcodec_audio_channel_layout.h
](
avcodec__audio__channel__layout_8h.md
)
| 声明用于音频编解码的枚举。
`<br>`
引用文件:
<multimedia
/
avcodec_audio_channel_layout.h
>
|
### 枚举
### 枚举
| 名称 | 描述 |
| 名称 | 描述 |
| -------- | -------- |
| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------- |
|
[
OHOS::Media::AudioChannelSet
](
#audiochannelset
)
: uint64_t {
<br/>
**FRONT_LEFT**
= 1ULL
<<
0U,
**FRONT_RIGHT**
= 1ULL
<<
1U,
**FRONT_CENTER**
= 1ULL
<<
2U,
**LOW_FREQUENCY**
= 1ULL
<<
3U,
<br/>
**BACK_LEFT**
= 1ULL
<<
4U,
**BACK_RIGHT**
= 1ULL
<<
5U,
**FRONT_LEFT_OF_CENTER**
= 1ULL
<<
6U,
**FRONT_RIGHT_OF_CENTER**
= 1ULL
<<
7U,
<br/>
**BACK_CENTER**
= 1ULL
<<
8U,
**SIDE_LEFT**
= 1ULL
<<
9U,
**SIDE_RIGHT**
= 1ULL
<<
10U,
**TOP_CENTER**
= 1ULL
<<
11U,
<br/>
**TOP_FRONT_LEFT**
= 1ULL
<<
12U,
**TOP_FRONT_CENTER**
= 1ULL
<<
13U,
**TOP_FRONT_RIGHT**
= 1ULL
<<
14U,
**TOP_BACK_LEFT**
= 1ULL
<<
15U,
<br/>
**TOP_BACK_CENTER**
= 1ULL
<<
16U,
**TOP_BACK_RIGHT**
= 1ULL
<<
17U,
**STEREO_LEFT**
= 1ULL
<<
29U,
**STEREO_RIGHT**
= 1ULL
<<
30U,
<br/>
**WIDE_LEFT**
= 1ULL
<<
31U,
**WIDE_RIGHT**
= 1ULL
<<
32U,
**SURROUND_DIRECT_LEFT**
= 1ULL
<<
33U,
**SURROUND_DIRECT_RIGHT**
= 1ULL
<<
34U,
<br/>
**LOW_FREQUENCY_2**
= 1ULL
<<
35U,
**TOP_SIDE_LEFT**
= 1ULL
<<
36U,
**TOP_SIDE_RIGHT**
= 1ULL
<<
37U,
**BOTTOM_FRONT_CENTER**
= 1ULL
<<
38U,
<br/>
**BOTTOM_FRONT_LEFT**
= 1ULL
<<
39U,
**BOTTOM_FRONT_RIGHT**
= 1ULL
<<
40U,
**AMBISONICS_ACN0**
= 1ULL
<<
41U, OHOS::Media::AMBISONICS_ACN1 = 1ULL
<<
42U,
<br/>
OHOS::Media::AMBISONICS_ACN2 = 1ULL
<<
43U, OHOS::Media::AMBISONICS_ACN3 = 1ULL
<<
44U, OHOS::Media::AMBISONICS_W = AMBISONICS_ACN0, OHOS::Media::AMBISONICS_Y = AMBISONICS_ACN1,
<br/>
OHOS::Media::AMBISONICS_Z = AMBISONICS_ACN2, OHOS::Media::AMBISONICS_X = AMBISONICS_ACN3, OHOS::Media::AMBISONICS_ACN4 = 1ULL
<<
45U, OHOS::Media::AMBISONICS_ACN5 = 1ULL
<<
46U,
<br/>
OHOS::Media::AMBISONICS_ACN6 = 1ULL
<<
47U, OHOS::Media::AMBISONICS_ACN7 = 1ULL
<<
48U, OHOS::Media::AMBISONICS_ACN8 = 1ULL
<<
49U, OHOS::Media::AMBISONICS_ACN9 = 1ULL
<<
50U,
<br/>
OHOS::Media::AMBISONICS_ACN10 = 1ULL
<<
51U, OHOS::Media::AMBISONICS_ACN11 = 1ULL
<<
52U, OHOS::Media::AMBISONICS_ACN12 = 1ULL
<<
53U, OHOS::Media::AMBISONICS_ACN13 = 1ULL
<<
54U,
<br/>
OHOS::Media::AMBISONICS_ACN14 = 1ULL
<<
55U, OHOS::Media::AMBISONICS_ACN15 = 1ULL
<<
56U
<br/>
} | 音频声道数集合, 将每一个声道数映射为int64的变量。 |
|
[
OHOS::Media::AudioChannelSet
](
#audiochannelset
)
: uint64_t {
``**FRONT_LEFT** = 1ULL << 0U, **FRONT_RIGHT** = 1ULL << 1U, **FRONT_CENTER** = 1ULL << 2U, **LOW_FREQUENCY** = 1ULL << 3U,``
**BACK_LEFT**
= 1ULL
<<
4U,
**BACK_RIGHT**
= 1ULL
<<
5U,
**FRONT_LEFT_OF_CENTER**
= 1ULL
<<
6U,
**FRONT_RIGHT_OF_CENTER**
= 1ULL
<<
7U,
``**BACK_CENTER** = 1ULL << 8U, **SIDE_LEFT** = 1ULL << 9U, **SIDE_RIGHT** = 1ULL << 10U, **TOP_CENTER** = 1ULL << 11U,``
**TOP_FRONT_LEFT**
= 1ULL
<<
12U,
**TOP_FRONT_CENTER**
= 1ULL
<<
13U,
**TOP_FRONT_RIGHT**
= 1ULL
<<
14U,
**TOP_BACK_LEFT**
= 1ULL
<<
15U,
``**TOP_BACK_CENTER** = 1ULL << 16U, **TOP_BACK_RIGHT** = 1ULL << 17U, **STEREO_LEFT** = 1ULL << 29U, **STEREO_RIGHT** = 1ULL << 30U,``
**WIDE_LEFT**
= 1ULL
<<
31U,
**WIDE_RIGHT**
= 1ULL
<<
32U,
**SURROUND_DIRECT_LEFT**
= 1ULL
<<
33U,
**SURROUND_DIRECT_RIGHT**
= 1ULL
<<
34U,
``**LOW_FREQUENCY_2** = 1ULL << 35U, **TOP_SIDE_LEFT** = 1ULL << 36U, **TOP_SIDE_RIGHT** = 1ULL << 37U, **BOTTOM_FRONT_CENTER** = 1ULL << 38U,``
**BOTTOM_FRONT_LEFT**
= 1ULL
<<
39U,
**BOTTOM_FRONT_RIGHT**
= 1ULL
<<
40U,
**AMBISONICS_ACN0**
= 1ULL
<<
41U, OHOS::Media::AMBISONICS_ACN1 = 1ULL
<<
42U,
``OHOS::Media::AMBISONICS_ACN2 = 1ULL << 43U, OHOS::Media::AMBISONICS_ACN3 = 1ULL << 44U, OHOS::Media::AMBISONICS_W = AMBISONICS_ACN0, OHOS::Media::AMBISONICS_Y = AMBISONICS_ACN1,``
OHOS::Media::AMBISONICS_Z = AMBISONICS_ACN2, OHOS::Media::AMBISONICS_X = AMBISONICS_ACN3, OHOS::Media::AMBISONICS_ACN4 = 1ULL
<<
45U, OHOS::Media::AMBISONICS_ACN5 = 1ULL
<<
46U,
``OHOS::Media::AMBISONICS_ACN6 = 1ULL << 47U, OHOS::Media::AMBISONICS_ACN7 = 1ULL << 48U, OHOS::Media::AMBISONICS_ACN8 = 1ULL << 49U, OHOS::Media::AMBISONICS_ACN9 = 1ULL << 50U,``
OHOS::Media::AMBISONICS_ACN10 = 1ULL
<<
51U, OHOS::Media::AMBISONICS_ACN11 = 1ULL
<<
52U, OHOS::Media::AMBISONICS_ACN12 = 1ULL
<<
53U, OHOS::Media::AMBISONICS_ACN13 = 1ULL
<<
54U,
``OHOS::Media::AMBISONICS_ACN14 = 1ULL << 55U, OHOS::Media::AMBISONICS_ACN15 = 1ULL << 56U``
} | 音频声道数集合, 将每一个声道数映射为int64的变量。 |
|
[
OHOS::Media::AudioChannelLayout
](
#audiochannellayout
)
: uint64_t {
<br/>
**UNKNOWN_CHANNEL_LAYOUT**
= 0,
**MONO**
= (AudioChannelSet::FRONT_CENTER),
**STEREO**
= (AudioChannelSet::FRONT_LEFT
\|
AudioChannelSet::FRONT_RIGHT),
**CH_2POINT1**
= (STEREO
\|
AudioChannelSet::LOW_FREQUENCY),
<br/>
**CH_2_1**
= (STEREO
\|
AudioChannelSet::BACK_CENTER),
**SURROUND**
= (STEREO
\|
AudioChannelSet::FRONT_CENTER),
**CH_3POINT1**
= (SURROUND
\|
AudioChannelSet::LOW_FREQUENCY),
**CH_4POINT0**
= (SURROUND
\|
AudioChannelSet::BACK_CENTER),
<br/>
**CH_4POINT1**
= (CH_4POINT0
\|
AudioChannelSet::LOW_FREQUENCY),
**CH_2_2**
= (STEREO
\|
AudioChannelSet::SIDE_LEFT
\|
AudioChannelSet::SIDE_RIGHT),
**QUAD**
= (STEREO
\|
AudioChannelSet::BACK_LEFT
\|
AudioChannelSet::BACK_RIGHT),
**CH_5POINT0**
= (SURROUND
\|
AudioChannelSet::SIDE_LEFT
\|
AudioChannelSet::SIDE_RIGHT),
<br/>
**CH_5POINT1**
= (CH_5POINT0
\|
AudioChannelSet::LOW_FREQUENCY),
**CH_5POINT0_BACK**
= (SURROUND
\|
AudioChannelSet::BACK_LEFT
\|
AudioChannelSet::BACK_RIGHT),
**CH_5POINT1_BACK**
= (CH_5POINT0_BACK
\|
AudioChannelSet::LOW_FREQUENCY),
**CH_6POINT0**
= (CH_5POINT0
\|
AudioChannelSet::BACK_CENTER),
<br/>
**CH_6POINT0_FRONT**
= (CH_2_2
\|
AudioChannelSet::FRONT_LEFT_OF_CENTER
\|
AudioChannelSet::FRONT_RIGHT_OF_CENTER),
**HEXAGONAL**
= (CH_5POINT0_BACK
\|
AudioChannelSet::BACK_CENTER),
**CH_6POINT1**
= (CH_5POINT1
\|
AudioChannelSet::BACK_CENTER),
**CH_6POINT1_BACK**
= (CH_5POINT1_BACK
\|
AudioChannelSet::BACK_CENTER),
<br/>
**CH_6POINT1_FRONT**
= (CH_6POINT0_FRONT
\|
AudioChannelSet::LOW_FREQUENCY),
**CH_7POINT0**
= (CH_5POINT0
\|
AudioChannelSet::BACK_LEFT
\|
AudioChannelSet::BACK_RIGHT),
**CH_7POINT0_FRONT**
= (CH_5POINT0
\|
AudioChannelSet::FRONT_LEFT_OF_CENTER
\|
AudioChannelSet::FRONT_RIGHT_OF_CENTER),
**CH_7POINT1**
= (CH_5POINT1
\|
AudioChannelSet::BACK_LEFT
\|
AudioChannelSet::BACK_RIGHT),
<br/>
**CH_7POINT1_WIDE**
= (CH_5POINT1
\|
AudioChannelSet::FRONT_LEFT_OF_CENTER
\|
AudioChannelSet::FRONT_RIGHT_OF_CENTER),
**CH_7POINT1_WIDE_BACK**
,
**CH_3POINT1POINT2**
= (CH_3POINT1
\|
AudioChannelSet::TOP_FRONT_LEFT
\|
AudioChannelSet::TOP_FRONT_RIGHT),
**CH_5POINT1POINT2**
= (CH_5POINT1
\|
AudioChannelSet::TOP_SIDE_LEFT
\|
AudioChannelSet::TOP_SIDE_RIGHT),
<br/>
**CH_5POINT1POINT4**
,
**CH_7POINT1POINT2**
= (CH_7POINT1
\|
AudioChannelSet::TOP_SIDE_LEFT
\|
AudioChannelSet::TOP_SIDE_RIGHT),
**CH_7POINT1POINT4**
,
**CH_9POINT1POINT4**
= (CH_7POINT1POINT4
\|
AudioChannelSet::WIDE_LEFT
\|
AudioChannelSet::WIDE_RIGHT),
<br/>
**CH_9POINT1POINT6**
= (CH_9POINT1POINT4
\|
AudioChannelSet::TOP_SIDE_LEFT
\|
AudioChannelSet::TOP_SIDE_RIGHT),
**CH_10POINT2**
,
**CH_22POINT2**
,
**OCTAGONAL**
= (CH_5POINT0
\|
AudioChannelSet::BACK_LEFT
\|
AudioChannelSet::BACK_CENTER
\|
AudioChannelSet::BACK_RIGHT),
<br/>
**HEXADECAGONAL**
,
**STEREO_DOWNMIX**
= (AudioChannelSet::STEREO_LEFT
\|
AudioChannelSet::STEREO_RIGHT),
**HOA_FIRST**
,
**HOA_SECOND**
,
<br/>
**HOA_THIRD**
<br/>
} | 音频声道数类型, 将用户申请的解码器输出格式表示为编解码器的声道类型。 |
|
[
OHOS::Media::AudioChannelLayout
](
#audiochannellayout
)
: uint64_t {
``**UNKNOWN_CHANNEL_LAYOUT** = 0, **MONO** = (AudioChannelSet::FRONT_CENTER), **STEREO** = (AudioChannelSet::FRONT_LEFT \| AudioChannelSet::FRONT_RIGHT), **CH_2POINT1** = (STEREO \| AudioChannelSet::LOW_FREQUENCY),``
**CH_2_1**
= (STEREO
\|
AudioChannelSet::BACK_CENTER),
**SURROUND**
= (STEREO
\|
AudioChannelSet::FRONT_CENTER),
**CH_3POINT1**
= (SURROUND
\|
AudioChannelSet::LOW_FREQUENCY),
**CH_4POINT0**
= (SURROUND
\|
AudioChannelSet::BACK_CENTER),
``**CH_4POINT1** = (CH_4POINT0 \| AudioChannelSet::LOW_FREQUENCY), **CH_2_2** = (STEREO \| AudioChannelSet::SIDE_LEFT \| AudioChannelSet::SIDE_RIGHT), **QUAD** = (STEREO \| AudioChannelSet::BACK_LEFT \| AudioChannelSet::BACK_RIGHT), **CH_5POINT0** = (SURROUND \| AudioChannelSet::SIDE_LEFT \| AudioChannelSet::SIDE_RIGHT),``
**CH_5POINT1**
= (CH_5POINT0
\|
AudioChannelSet::LOW_FREQUENCY),
**CH_5POINT0_BACK**
= (SURROUND
\|
AudioChannelSet::BACK_LEFT
\|
AudioChannelSet::BACK_RIGHT),
**CH_5POINT1_BACK**
= (CH_5POINT0_BACK
\|
AudioChannelSet::LOW_FREQUENCY),
**CH_6POINT0**
= (CH_5POINT0
\|
AudioChannelSet::BACK_CENTER),
``**CH_6POINT0_FRONT** = (CH_2_2 \| AudioChannelSet::FRONT_LEFT_OF_CENTER \| AudioChannelSet::FRONT_RIGHT_OF_CENTER), **HEXAGONAL** = (CH_5POINT0_BACK \| AudioChannelSet::BACK_CENTER), **CH_6POINT1** = (CH_5POINT1 \| AudioChannelSet::BACK_CENTER), **CH_6POINT1_BACK** = (CH_5POINT1_BACK \| AudioChannelSet::BACK_CENTER),``
**CH_6POINT1_FRONT**
= (CH_6POINT0_FRONT
\|
AudioChannelSet::LOW_FREQUENCY),
**CH_7POINT0**
= (CH_5POINT0
\|
AudioChannelSet::BACK_LEFT
\|
AudioChannelSet::BACK_RIGHT),
**CH_7POINT0_FRONT**
= (CH_5POINT0
\|
AudioChannelSet::FRONT_LEFT_OF_CENTER
\|
AudioChannelSet::FRONT_RIGHT_OF_CENTER),
**CH_7POINT1**
= (CH_5POINT1
\|
AudioChannelSet::BACK_LEFT
\|
AudioChannelSet::BACK_RIGHT),
``**CH_7POINT1_WIDE** = (CH_5POINT1 \| AudioChannelSet::FRONT_LEFT_OF_CENTER \| AudioChannelSet::FRONT_RIGHT_OF_CENTER), **CH_7POINT1_WIDE_BACK**, **CH_3POINT1POINT2** = (CH_3POINT1 \| AudioChannelSet::TOP_FRONT_LEFT \| AudioChannelSet::TOP_FRONT_RIGHT), **CH_5POINT1POINT2** = (CH_5POINT1 \| AudioChannelSet::TOP_SIDE_LEFT \| AudioChannelSet::TOP_SIDE_RIGHT),``
**CH_5POINT1POINT4**
,
**CH_7POINT1POINT2**
= (CH_7POINT1
\|
AudioChannelSet::TOP_SIDE_LEFT
\|
AudioChannelSet::TOP_SIDE_RIGHT),
**CH_7POINT1POINT4**
,
**CH_9POINT1POINT4**
= (CH_7POINT1POINT4
\|
AudioChannelSet::WIDE_LEFT
\|
AudioChannelSet::WIDE_RIGHT),
``**CH_9POINT1POINT6** = (CH_9POINT1POINT4 \| AudioChannelSet::TOP_SIDE_LEFT \| AudioChannelSet::TOP_SIDE_RIGHT), **CH_10POINT2**, **CH_22POINT2**, **OCTAGONAL** = (CH_5POINT0 \| AudioChannelSet::BACK_LEFT \| AudioChannelSet::BACK_CENTER \| AudioChannelSet::BACK_RIGHT),``
**HEXADECAGONAL**
,
**STEREO_DOWNMIX**
= (AudioChannelSet::STEREO_LEFT
\|
AudioChannelSet::STEREO_RIGHT),
**HOA_FIRST**
,
**HOA_SECOND**
,
``**HOA_THIRD**``
} | 音频声道数类型, 将用户申请的解码器输出格式表示为编解码器的声道类型。 |
### 函数
### 函数
| 名称 | 描述 |
| 名称 | 描述 |
| --------
|
-------- |
| --------
------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------
-------- |
|
\*
[
OHOS::Media::OH_AudioDecoder_CreateByMime
](
#oh_audiodecoder_createbymime
)
(
const
char
\*
mime) | 根据MIME类型创建音频解码器实例,大多数场景下建议使用此方式。 |
|
\*
[
OHOS::Media::OH_AudioDecoder_CreateByMime
](
#oh_audiodecoder_createbymime
)
(
const
char
\*
mime) | 根据MIME类型创建音频解码器实例,大多数场景下建议使用此方式。 |
|
\*
[
OHOS::Media::OH_AudioDecoder_CreateByName
](
#oh_audiodecoder_createbyname
)
(
const
char
\*
name) | 通过音频解码器名称创建音频解码器实例,使用此接口的前提是知道解码器的确切名称。 |
|
\*
[
OHOS::Media::OH_AudioDecoder_CreateByName
](
#oh_audiodecoder_createbyname
)
(
const
char
\*
name) | 通过音频解码器名称创建音频解码器实例,使用此接口的前提是知道解码器的确切名称。 |
|
[
OHOS::Media::OH_AudioDecoder_Destroy
](
#oh_audiodecoder_destroy
)
(
OH_AVCodec
\*
codec) | 清理解码器内部资源,销毁解码器实例。 |
|
[
OHOS::Media::OH_AudioDecoder_Destroy
](
#oh_audiodecoder_destroy
)
(
OH_AVCodec
\*
codec) | 清理解码器内部资源,销毁解码器实例。 |
...
@@ -49,15 +44,12 @@ AudioDecoder模块提供用于音频解码的函数。该模块在部分设备
...
@@ -49,15 +44,12 @@ AudioDecoder模块提供用于音频解码的函数。该模块在部分设备
|
[
OHOS::Media::OH_AudioDecoder_SetParameter
](
#oh_audiodecoder_setparameter
)
(
OH_AVCodec
\*
codec, OH_AVFormat
\*
format) | 配置解码器的动态参数。注意:该接口必须在解码器启动后才能调用。另外,参数配置错误可能会导致解码失败。 |
|
[
OHOS::Media::OH_AudioDecoder_SetParameter
](
#oh_audiodecoder_setparameter
)
(
OH_AVCodec
\*
codec, OH_AVFormat
\*
format) | 配置解码器的动态参数。注意:该接口必须在解码器启动后才能调用。另外,参数配置错误可能会导致解码失败。 |
|
[
OHOS::Media::OH_AudioDecoder_PushInputData
](
#oh_audiodecoder_pushinputdata
)
(
OH_AVCodec
\*
codec, uint32_t index, OH_AVCodecBufferAttr attr) | 将填充有数据的输入缓冲区提交给音频解码器。 |
|
[
OHOS::Media::OH_AudioDecoder_PushInputData
](
#oh_audiodecoder_pushinputdata
)
(
OH_AVCodec
\*
codec, uint32_t index, OH_AVCodecBufferAttr attr) | 将填充有数据的输入缓冲区提交给音频解码器。 |
|
[
OHOS::Media::OH_AudioDecoder_FreeOutputData
](
#oh_audiodecoder_freeoutputdata
)
(
OH_AVCodec
\*
codec, uint32_t index) | 将处理后的输出缓冲区返回给解码器。 |
|
[
OHOS::Media::OH_AudioDecoder_FreeOutputData
](
#oh_audiodecoder_freeoutputdata
)
(
OH_AVCodec
\*
codec, uint32_t index) | 将处理后的输出缓冲区返回给解码器。 |
|
[
OHOS::Media::OH_AudioDecoder_IsValid
](
#oh_audiodecoder_isvalid
)
(
OH_AVCodec
\*
codec, bool
\*
isValid) | 检查当前解码器实例是否有效,可用于后台故障恢复或应用程序从后台恢复时检测解码器有效状态。 |
|
[
OHOS::Media::OH_AudioDecoder_IsValid
](
#oh_audiodecoder_isvalid
)
(
OH_AVCodec
\*
codec, bool
\*
isValid) | 检查当前解码器实例是否有效。 |
## 枚举类型说明
## 枚举类型说明
### AudioChannelLayout
### AudioChannelLayout
```
```
enum OHOS::Media::AudioChannelLayout : uint64_t
enum OHOS::Media::AudioChannelLayout : uint64_t
```
```
...
@@ -72,10 +64,8 @@ enum OHOS::Media::AudioChannelLayout : uint64_t
...
@@ -72,10 +64,8 @@ enum OHOS::Media::AudioChannelLayout : uint64_t
10
10
### AudioChannelSet
### AudioChannelSet
```
```
enum OHOS::Media::AudioChannelSet : uint64_t
enum OHOS::Media::AudioChannelSet : uint64_t
```
```
...
@@ -91,7 +81,7 @@ enum OHOS::Media::AudioChannelSet : uint64_t
...
@@ -91,7 +81,7 @@ enum OHOS::Media::AudioChannelSet : uint64_t
10
10
| 枚举值 | 描述 |
| 枚举值 | 描述 |
| --------
|
-------- |
| --------
-------- | --------------
-------- |
| AMBISONICS_ACN1 | 零阶立体声声道数 0 |
| AMBISONICS_ACN1 | 零阶立体声声道数 0 |
| AMBISONICS_ACN2 | 一阶立体声声道数 1 |
| AMBISONICS_ACN2 | 一阶立体声声道数 1 |
| AMBISONICS_ACN3 | 一阶立体声声道数 2 |
| AMBISONICS_ACN3 | 一阶立体声声道数 2 |
...
@@ -112,13 +102,10 @@ enum OHOS::Media::AudioChannelSet : uint64_t
...
@@ -112,13 +102,10 @@ enum OHOS::Media::AudioChannelSet : uint64_t
| AMBISONICS_ACN14 | 三阶立体声声道数 13 |
| AMBISONICS_ACN14 | 三阶立体声声道数 13 |
| AMBISONICS_ACN15 | 三阶立体声声道数 14 |
| AMBISONICS_ACN15 | 三阶立体声声道数 14 |
## 函数说明
## 函数说明
### OH_AudioDecoder_Configure()
### OH_AudioDecoder_Configure()
```
```
OH_AVErrCode OHOS::Media::OH_AudioDecoder_Configure (OH_AVCodec * codec, OH_AVFormat * format )
OH_AVErrCode OHOS::Media::OH_AudioDecoder_Configure (OH_AVCodec * codec, OH_AVFormat * format )
```
```
...
@@ -134,7 +121,7 @@ OH_AVErrCode OHOS::Media::OH_AudioDecoder_Configure (OH_AVCodec * codec, OH_AVFo
...
@@ -134,7 +121,7 @@ OH_AVErrCode OHOS::Media::OH_AudioDecoder_Configure (OH_AVCodec * codec, OH_AVFo
**参数:**
**参数:**
| 名称 | 描述 |
| 名称 | 描述 |
| ------
-- |
-------- |
| ------
| -------------------------------------------
-------- |
| codec | 指向OH_AVCodec实例的指针。 |
| codec | 指向OH_AVCodec实例的指针。 |
| format | 指向OH_AVFormat的指针,给出要解码的音频轨道的描述。 |
| format | 指向OH_AVFormat的指针,给出要解码的音频轨道的描述。 |
...
@@ -146,10 +133,8 @@ OH_AVErrCode OHOS::Media::OH_AudioDecoder_Configure (OH_AVCodec * codec, OH_AVFo
...
@@ -146,10 +133,8 @@ OH_AVErrCode OHOS::Media::OH_AudioDecoder_Configure (OH_AVCodec * codec, OH_AVFo
9
9
### OH_AudioDecoder_CreateByMime()
### OH_AudioDecoder_CreateByMime()
```
```
OH_AVCodec* OHOS::Media::OH_AudioDecoder_CreateByMime (const char * mime)
OH_AVCodec* OHOS::Media::OH_AudioDecoder_CreateByMime (const char * mime)
```
```
...
@@ -163,7 +148,7 @@ OH_AVCodec* OHOS::Media::OH_AudioDecoder_CreateByMime (const char * mime)
...
@@ -163,7 +148,7 @@ OH_AVCodec* OHOS::Media::OH_AudioDecoder_CreateByMime (const char * mime)
**参数:**
**参数:**
| 名称 | 描述 |
| 名称 | 描述 |
| ----
---- |
-------- |
| ----
| -----------------------------------------------
-------- |
| mime | MIME类型描述字符串,请参阅
**AVCODEC_MIME_TYPE**
。 |
| mime | MIME类型描述字符串,请参阅
**AVCODEC_MIME_TYPE**
。 |
**返回:**
**返回:**
...
@@ -174,10 +159,8 @@ OH_AVCodec* OHOS::Media::OH_AudioDecoder_CreateByMime (const char * mime)
...
@@ -174,10 +159,8 @@ OH_AVCodec* OHOS::Media::OH_AudioDecoder_CreateByMime (const char * mime)
9
9
### OH_AudioDecoder_CreateByName()
### OH_AudioDecoder_CreateByName()
```
```
OH_AVCodec* OHOS::Media::OH_AudioDecoder_CreateByName (const char * name)
OH_AVCodec* OHOS::Media::OH_AudioDecoder_CreateByName (const char * name)
```
```
...
@@ -191,7 +174,7 @@ OH_AVCodec* OHOS::Media::OH_AudioDecoder_CreateByName (const char * name)
...
@@ -191,7 +174,7 @@ OH_AVCodec* OHOS::Media::OH_AudioDecoder_CreateByName (const char * name)
**参数:**
**参数:**
| 名称 | 描述 |
| 名称 | 描述 |
| ----
---- |
-------- |
| ----
| --------
-------- |
| name | 音频解码器名称。 |
| name | 音频解码器名称。 |
**返回:**
**返回:**
...
@@ -202,10 +185,8 @@ OH_AVCodec* OHOS::Media::OH_AudioDecoder_CreateByName (const char * name)
...
@@ -202,10 +185,8 @@ OH_AVCodec* OHOS::Media::OH_AudioDecoder_CreateByName (const char * name)
9
9
### OH_AudioDecoder_Destroy()
### OH_AudioDecoder_Destroy()
```
```
OH_AVErrCode OHOS::Media::OH_AudioDecoder_Destroy (OH_AVCodec * codec)
OH_AVErrCode OHOS::Media::OH_AudioDecoder_Destroy (OH_AVCodec * codec)
```
```
...
@@ -219,7 +200,7 @@ OH_AVErrCode OHOS::Media::OH_AudioDecoder_Destroy (OH_AVCodec * codec)
...
@@ -219,7 +200,7 @@ OH_AVErrCode OHOS::Media::OH_AudioDecoder_Destroy (OH_AVCodec * codec)
**参数:**
**参数:**
| 名称 | 描述 |
| 名称 | 描述 |
| -----
--- |
-------- |
| -----
| ------------------
-------- |
| codec | 指向OH_AVCodec实例的指针。 |
| codec | 指向OH_AVCodec实例的指针。 |
**返回:**
**返回:**
...
@@ -230,10 +211,8 @@ OH_AVErrCode OHOS::Media::OH_AudioDecoder_Destroy (OH_AVCodec * codec)
...
@@ -230,10 +211,8 @@ OH_AVErrCode OHOS::Media::OH_AudioDecoder_Destroy (OH_AVCodec * codec)
9
9
### OH_AudioDecoder_Flush()
### OH_AudioDecoder_Flush()
```
```
OH_AVErrCode OHOS::Media::OH_AudioDecoder_Flush (OH_AVCodec * codec)
OH_AVErrCode OHOS::Media::OH_AudioDecoder_Flush (OH_AVCodec * codec)
```
```
...
@@ -249,7 +228,7 @@ OH_AVErrCode OHOS::Media::OH_AudioDecoder_Flush (OH_AVCodec * codec)
...
@@ -249,7 +228,7 @@ OH_AVErrCode OHOS::Media::OH_AudioDecoder_Flush (OH_AVCodec * codec)
**参数:**
**参数:**
| 名称 | 描述 |
| 名称 | 描述 |
| -----
--- |
-------- |
| -----
| ------------------
-------- |
| codec | 指向OH_AVCodec实例的指针。 |
| codec | 指向OH_AVCodec实例的指针。 |
**返回:**
**返回:**
...
@@ -260,10 +239,8 @@ OH_AVErrCode OHOS::Media::OH_AudioDecoder_Flush (OH_AVCodec * codec)
...
@@ -260,10 +239,8 @@ OH_AVErrCode OHOS::Media::OH_AudioDecoder_Flush (OH_AVCodec * codec)
9
9
### OH_AudioDecoder_FreeOutputData()
### OH_AudioDecoder_FreeOutputData()
```
```
OH_AVErrCode OHOS::Media::OH_AudioDecoder_FreeOutputData (OH_AVCodec * codec, uint32_t index )
OH_AVErrCode OHOS::Media::OH_AudioDecoder_FreeOutputData (OH_AVCodec * codec, uint32_t index )
```
```
...
@@ -277,7 +254,7 @@ OH_AVErrCode OHOS::Media::OH_AudioDecoder_FreeOutputData (OH_AVCodec * codec, ui
...
@@ -277,7 +254,7 @@ OH_AVErrCode OHOS::Media::OH_AudioDecoder_FreeOutputData (OH_AVCodec * codec, ui
**参数:**
**参数:**
| 名称 | 描述 |
| 名称 | 描述 |
| -----
--- |
-------- |
| -----
| ----------------------
-------- |
| codec | 指向OH_AVCodec实例的指针。 |
| codec | 指向OH_AVCodec实例的指针。 |
| index | 输出缓冲区Buffer对应的索引值。 |
| index | 输出缓冲区Buffer对应的索引值。 |
...
@@ -289,10 +266,8 @@ OH_AVErrCode OHOS::Media::OH_AudioDecoder_FreeOutputData (OH_AVCodec * codec, ui
...
@@ -289,10 +266,8 @@ OH_AVErrCode OHOS::Media::OH_AudioDecoder_FreeOutputData (OH_AVCodec * codec, ui
9
9
### OH_AudioDecoder_GetOutputDescription()
### OH_AudioDecoder_GetOutputDescription()
```
```
OH_AVFormat* OHOS::Media::OH_AudioDecoder_GetOutputDescription (OH_AVCodec * codec)
OH_AVFormat* OHOS::Media::OH_AudioDecoder_GetOutputDescription (OH_AVCodec * codec)
```
```
...
@@ -306,7 +281,7 @@ OH_AVFormat* OHOS::Media::OH_AudioDecoder_GetOutputDescription (OH_AVCodec * cod
...
@@ -306,7 +281,7 @@ OH_AVFormat* OHOS::Media::OH_AudioDecoder_GetOutputDescription (OH_AVCodec * cod
**参数:**
**参数:**
| 名称 | 描述 |
| 名称 | 描述 |
| -----
--- |
-------- |
| -----
| ------------------
-------- |
| codec | 指向OH_AVCodec实例的指针。 |
| codec | 指向OH_AVCodec实例的指针。 |
**返回:**
**返回:**
...
@@ -317,24 +292,22 @@ OH_AVFormat* OHOS::Media::OH_AudioDecoder_GetOutputDescription (OH_AVCodec * cod
...
@@ -317,24 +292,22 @@ OH_AVFormat* OHOS::Media::OH_AudioDecoder_GetOutputDescription (OH_AVCodec * cod
9
9
### OH_AudioDecoder_IsValid()
### OH_AudioDecoder_IsValid()
```
```
OH_AVErrCode OHOS::Media::OH_AudioDecoder_IsValid (OH_AVCodec * codec, bool * isValid )
OH_AVErrCode OHOS::Media::OH_AudioDecoder_IsValid (OH_AVCodec * codec, bool * isValid )
```
```
**描述:**
**描述:**
检查当前解码器实例是否有效
,可用于后台故障恢复或应用程序从后台恢复时检测解码器有效状态
。
检查当前解码器实例是否有效。
\@
syscap SystemCapability.Multimedia.Media.AudioDecoder
\@
syscap SystemCapability.Multimedia.Media.AudioDecoder
**参数:**
**参数:**
| 名称 | 描述 |
| 名称 | 描述 |
| -------
- |
-------- |
| -------
| ---------------------------------------------------------
-------- |
| codec | 指向OH_AVCodec实例的指针。 |
| codec | 指向OH_AVCodec实例的指针。 |
| isValid | 指向布尔实例的指针,true:解码器实例有效,false:解码器实例无效。 |
| isValid | 指向布尔实例的指针,true:解码器实例有效,false:解码器实例无效。 |
...
@@ -346,10 +319,8 @@ OH_AVErrCode OHOS::Media::OH_AudioDecoder_IsValid (OH_AVCodec * codec, bool * is
...
@@ -346,10 +319,8 @@ OH_AVErrCode OHOS::Media::OH_AudioDecoder_IsValid (OH_AVCodec * codec, bool * is
10
10
### OH_AudioDecoder_Prepare()
### OH_AudioDecoder_Prepare()
```
```
OH_AVErrCode OHOS::Media::OH_AudioDecoder_Prepare (OH_AVCodec * codec)
OH_AVErrCode OHOS::Media::OH_AudioDecoder_Prepare (OH_AVCodec * codec)
```
```
...
@@ -363,7 +334,7 @@ OH_AVErrCode OHOS::Media::OH_AudioDecoder_Prepare (OH_AVCodec * codec)
...
@@ -363,7 +334,7 @@ OH_AVErrCode OHOS::Media::OH_AudioDecoder_Prepare (OH_AVCodec * codec)
**参数:**
**参数:**
| 名称 | 描述 |
| 名称 | 描述 |
| -----
--- |
-------- |
| -----
| ------------------
-------- |
| codec | 指向OH_AVCodec实例的指针。 |
| codec | 指向OH_AVCodec实例的指针。 |
**返回:**
**返回:**
...
@@ -374,10 +345,8 @@ OH_AVErrCode OHOS::Media::OH_AudioDecoder_Prepare (OH_AVCodec * codec)
...
@@ -374,10 +345,8 @@ OH_AVErrCode OHOS::Media::OH_AudioDecoder_Prepare (OH_AVCodec * codec)
9
9
### OH_AudioDecoder_PushInputData()
### OH_AudioDecoder_PushInputData()
```
```
OH_AVErrCode OHOS::Media::OH_AudioDecoder_PushInputData (OH_AVCodec * codec, uint32_t index, OH_AVCodecBufferAttr attr )
OH_AVErrCode OHOS::Media::OH_AudioDecoder_PushInputData (OH_AVCodec * codec, uint32_t index, OH_AVCodecBufferAttr attr )
```
```
...
@@ -393,7 +362,7 @@ OH_AVErrCode OHOS::Media::OH_AudioDecoder_PushInputData (OH_AVCodec * codec, uin
...
@@ -393,7 +362,7 @@ OH_AVErrCode OHOS::Media::OH_AudioDecoder_PushInputData (OH_AVCodec * codec, uin
**参数:**
**参数:**
| 名称 | 描述 |
| 名称 | 描述 |
| -----
--- |
-------- |
| -----
| ----------------------
-------- |
| codec | 指向OH_AVCodec实例的指针。 |
| codec | 指向OH_AVCodec实例的指针。 |
| index | 输入缓冲区Buffer对应的索引值。 |
| index | 输入缓冲区Buffer对应的索引值。 |
| attr | 描述缓冲区中包含的数据的信息。 |
| attr | 描述缓冲区中包含的数据的信息。 |
...
@@ -406,10 +375,8 @@ OH_AVErrCode OHOS::Media::OH_AudioDecoder_PushInputData (OH_AVCodec * codec, uin
...
@@ -406,10 +375,8 @@ OH_AVErrCode OHOS::Media::OH_AudioDecoder_PushInputData (OH_AVCodec * codec, uin
9
9
### OH_AudioDecoder_Reset()
### OH_AudioDecoder_Reset()
```
```
OH_AVErrCode OHOS::Media::OH_AudioDecoder_Reset (OH_AVCodec * codec)
OH_AVErrCode OHOS::Media::OH_AudioDecoder_Reset (OH_AVCodec * codec)
```
```
...
@@ -423,7 +390,7 @@ OH_AVErrCode OHOS::Media::OH_AudioDecoder_Reset (OH_AVCodec * codec)
...
@@ -423,7 +390,7 @@ OH_AVErrCode OHOS::Media::OH_AudioDecoder_Reset (OH_AVCodec * codec)
**参数:**
**参数:**
| 名称 | 描述 |
| 名称 | 描述 |
| -----
--- |
-------- |
| -----
| ------------------
-------- |
| codec | 指向OH_AVCodec实例的指针。 |
| codec | 指向OH_AVCodec实例的指针。 |
**返回:**
**返回:**
...
@@ -434,10 +401,8 @@ OH_AVErrCode OHOS::Media::OH_AudioDecoder_Reset (OH_AVCodec * codec)
...
@@ -434,10 +401,8 @@ OH_AVErrCode OHOS::Media::OH_AudioDecoder_Reset (OH_AVCodec * codec)
9
9
### OH_AudioDecoder_SetCallback()
### OH_AudioDecoder_SetCallback()
```
```
OH_AVErrCode OHOS::Media::OH_AudioDecoder_SetCallback (OH_AVCodec * codec, OH_AVCodecAsyncCallback callback, void * userData )
OH_AVErrCode OHOS::Media::OH_AudioDecoder_SetCallback (OH_AVCodec * codec, OH_AVCodecAsyncCallback callback, void * userData )
```
```
...
@@ -453,9 +418,9 @@ OH_AVErrCode OHOS::Media::OH_AudioDecoder_SetCallback (OH_AVCodec * codec, OH_AV
...
@@ -453,9 +418,9 @@ OH_AVErrCode OHOS::Media::OH_AudioDecoder_SetCallback (OH_AVCodec * codec, OH_AV
**参数:**
**参数:**
| 名称 | 描述 |
| 名称 | 描述 |
| -------- | -------- |
| -------- | --------
-----------------------------------------------------
|
| codec | 指向OH_AVCodec实例的指针。 |
| codec | 指向OH_AVCodec实例的指针。 |
| callback | 所有回调函数的集合,请参见
**OH_AVCodecAsyncCallback**
。 |
| callback | 所有回调函数的集合,请参见
**OH_AVCodecAsyncCallback**
。 |
| userData | 用户特定数据。 |
| userData | 用户特定数据。 |
**返回:**
**返回:**
...
@@ -466,10 +431,8 @@ OH_AVErrCode OHOS::Media::OH_AudioDecoder_SetCallback (OH_AVCodec * codec, OH_AV
...
@@ -466,10 +431,8 @@ OH_AVErrCode OHOS::Media::OH_AudioDecoder_SetCallback (OH_AVCodec * codec, OH_AV
9
9
### OH_AudioDecoder_SetParameter()
### OH_AudioDecoder_SetParameter()
```
```
OH_AVErrCode OHOS::Media::OH_AudioDecoder_SetParameter (OH_AVCodec * codec, OH_AVFormat * format )
OH_AVErrCode OHOS::Media::OH_AudioDecoder_SetParameter (OH_AVCodec * codec, OH_AVFormat * format )
```
```
...
@@ -485,7 +448,7 @@ OH_AVErrCode OHOS::Media::OH_AudioDecoder_SetParameter (OH_AVCodec * codec, OH_A
...
@@ -485,7 +448,7 @@ OH_AVErrCode OHOS::Media::OH_AudioDecoder_SetParameter (OH_AVCodec * codec, OH_A
**参数:**
**参数:**
| 名称 | 描述 |
| 名称 | 描述 |
| ------
-- |
-------- |
| ------
| ------------------
-------- |
| codec | 指向OH_AVCodec实例的指针。 |
| codec | 指向OH_AVCodec实例的指针。 |
| format | OH_AVFormat句柄指针。 |
| format | OH_AVFormat句柄指针。 |
...
@@ -497,10 +460,8 @@ OH_AVErrCode OHOS::Media::OH_AudioDecoder_SetParameter (OH_AVCodec * codec, OH_A
...
@@ -497,10 +460,8 @@ OH_AVErrCode OHOS::Media::OH_AudioDecoder_SetParameter (OH_AVCodec * codec, OH_A
9
9
### OH_AudioDecoder_Start()
### OH_AudioDecoder_Start()
```
```
OH_AVErrCode OHOS::Media::OH_AudioDecoder_Start (OH_AVCodec * codec)
OH_AVErrCode OHOS::Media::OH_AudioDecoder_Start (OH_AVCodec * codec)
```
```
...
@@ -516,7 +477,7 @@ Prepare成功后调用此接口启动解码器。
...
@@ -516,7 +477,7 @@ Prepare成功后调用此接口启动解码器。
**参数:**
**参数:**
| 名称 | 描述 |
| 名称 | 描述 |
| -----
--- |
-------- |
| -----
| ------------------
-------- |
| codec | 指向OH_AVCodec实例的指针。 |
| codec | 指向OH_AVCodec实例的指针。 |
**返回:**
**返回:**
...
@@ -527,10 +488,8 @@ Prepare成功后调用此接口启动解码器。
...
@@ -527,10 +488,8 @@ Prepare成功后调用此接口启动解码器。
9
9
### OH_AudioDecoder_Stop()
### OH_AudioDecoder_Stop()
```
```
OH_AVErrCode OHOS::Media::OH_AudioDecoder_Stop (OH_AVCodec * codec)
OH_AVErrCode OHOS::Media::OH_AudioDecoder_Stop (OH_AVCodec * codec)
```
```
...
@@ -546,7 +505,7 @@ OH_AVErrCode OHOS::Media::OH_AudioDecoder_Stop (OH_AVCodec * codec)
...
@@ -546,7 +505,7 @@ OH_AVErrCode OHOS::Media::OH_AudioDecoder_Stop (OH_AVCodec * codec)
**参数:**
**参数:**
| 名称 | 描述 |
| 名称 | 描述 |
| -----
--- |
-------- |
| -----
| ------------------
-------- |
| codec | 指向OH_AVCodec实例的指针。 |
| codec | 指向OH_AVCodec实例的指针。 |
**返回:**
**返回:**
...
...
zh-cn/application-dev/reference/native-apis/_audio_encoder.md
浏览文件 @
80c39033
# AudioEncoder
# AudioEncoder
## 概述
## 概述
AudioEncoder模块提供用于音频编码的函数。该模块在部分设备上可能不支持,可以通过
[
CanIUse
](
../syscap.md
)
接口确认。
AudioEncoder模块提供用于音频编码的函数。该模块在部分设备上可能不支持,可以通过
[
CanIUse
](
../syscap.md
)
接口确认。
...
@@ -11,21 +10,18 @@ AudioEncoder模块提供用于音频编码的函数。该模块在部分设备
...
@@ -11,21 +10,18 @@ AudioEncoder模块提供用于音频编码的函数。该模块在部分设备
9
9
## 汇总
## 汇总
### 文件
### 文件
| 名称 | 描述 |
| 名称 | 描述 |
| -------- | -------- |
| ----------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- |
|
[
native_avcodec_audioencoder.h
](
native__avcodec__audioencoder_8h.md
)
| 声明用于音频编码的Native API。
<br>
引用文件:
<multimedia
/
player_framework
/
native_avcodec_audioencoder.h
>
|
|
[
native_avcodec_audioencoder.h
](
native__avcodec__audioencoder_8h.md
)
| 声明用于音频编码的Native API。
`<br>`
引用文件:
<multimedia
/
player_framework
/
native_avcodec_audioencoder.h
>
|
### 函数
### 函数
| 名称 | 描述 |
| 名称 | 描述 |
| --------
|
-------- |
| --------
------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------
-------- |
|
\*
[
OHOS::Media::OH_AudioEncoder_CreateByMime
](
#oh_audioencoder_createbymime
)
(
const
char
\*
mime) | 根据MIME类型创建音频编码器实例,大多数场景下建议使用此方式。 |
|
\*
[
OHOS::Media::OH_AudioEncoder_CreateByMime
](
#oh_audioencoder_createbymime
)
(
const
char
\*
mime) | 根据MIME类型创建音频编码器实例,大多数场景下建议使用此方式。 |
|
\*
[
OHOS::Media::OH_AudioEncoder_CreateByName
](
#oh_audioencoder_createbyname
)
(
const
char
\*
name) | 通过音频编码器名称创建音频编码器实例,使用此接口的前提是知道编码器的确切名称。 |
|
\*
[
OHOS::Media::OH_AudioEncoder_CreateByName
](
#oh_audioencoder_createbyname
)
(
const
char
\*
name) | 通过音频编码器名称创建音频编码器实例,使用此接口的前提是知道编码器的确切名称。 |
|
[
OHOS::Media::OH_AudioEncoder_Destroy
](
#oh_audioencoder_destroy
)
(
OH_AVCodec
\*
codec) | 清理编码器内部资源,销毁编码器实例。 |
|
[
OHOS::Media::OH_AudioEncoder_Destroy
](
#oh_audioencoder_destroy
)
(
OH_AVCodec
\*
codec) | 清理编码器内部资源,销毁编码器实例。 |
...
@@ -40,15 +36,12 @@ AudioEncoder模块提供用于音频编码的函数。该模块在部分设备
...
@@ -40,15 +36,12 @@ AudioEncoder模块提供用于音频编码的函数。该模块在部分设备
|
[
OHOS::Media::OH_AudioEncoder_SetParameter
](
#oh_audioencoder_setparameter
)
(
OH_AVCodec
\*
codec, OH_AVFormat
\*
format) | 配置编码器的动态参数。 |
|
[
OHOS::Media::OH_AudioEncoder_SetParameter
](
#oh_audioencoder_setparameter
)
(
OH_AVCodec
\*
codec, OH_AVFormat
\*
format) | 配置编码器的动态参数。 |
|
[
OHOS::Media::OH_AudioEncoder_PushInputData
](
#oh_audioencoder_pushinputdata
)
(
OH_AVCodec
\*
codec, uint32_t index, OH_AVCodecBufferAttr attr) | 将填充有数据的输入缓冲区提交给音频编码器。 |
|
[
OHOS::Media::OH_AudioEncoder_PushInputData
](
#oh_audioencoder_pushinputdata
)
(
OH_AVCodec
\*
codec, uint32_t index, OH_AVCodecBufferAttr attr) | 将填充有数据的输入缓冲区提交给音频编码器。 |
|
[
OHOS::Media::OH_AudioEncoder_FreeOutputData
](
#oh_audioencoder_freeoutputdata
)
(
OH_AVCodec
\*
codec, uint32_t index) | 将处理后的输出缓冲区返回给编码器。 |
|
[
OHOS::Media::OH_AudioEncoder_FreeOutputData
](
#oh_audioencoder_freeoutputdata
)
(
OH_AVCodec
\*
codec, uint32_t index) | 将处理后的输出缓冲区返回给编码器。 |
|
[
OHOS::Media::OH_AudioEncoder_IsValid
](
#oh_audioencoder_isvalid
)
(
OH_AVCodec
\*
codec, bool
\*
isValid) | 检查当前编码器实例是否有效,可用于后台故障恢复或应用程序从后台恢复时检测编码器有效状态。 |
|
[
OHOS::Media::OH_AudioEncoder_IsValid
](
#oh_audioencoder_isvalid
)
(
OH_AVCodec
\*
codec, bool
\*
isValid) | 检查当前编码器实例是否有效。 |
## 函数说明
## 函数说明
### OH_AudioEncoder_Configure()
### OH_AudioEncoder_Configure()
```
```
OH_AVErrCode OHOS::Media::OH_AudioEncoder_Configure (OH_AVCodec * codec, OH_AVFormat * format )
OH_AVErrCode OHOS::Media::OH_AudioEncoder_Configure (OH_AVCodec * codec, OH_AVFormat * format )
```
```
...
@@ -64,7 +57,7 @@ OH_AVErrCode OHOS::Media::OH_AudioEncoder_Configure (OH_AVCodec * codec, OH_AVFo
...
@@ -64,7 +57,7 @@ OH_AVErrCode OHOS::Media::OH_AudioEncoder_Configure (OH_AVCodec * codec, OH_AVFo
**参数:**
**参数:**
| 名称 | 描述 |
| 名称 | 描述 |
| ------
-- |
-------- |
| ------
| -------------------------------------------
-------- |
| codec | 指向OH_AVCodec实例的指针。 |
| codec | 指向OH_AVCodec实例的指针。 |
| format | 指向OH_AVFormat的指针,给出要编码的音频轨道的描述。 |
| format | 指向OH_AVFormat的指针,给出要编码的音频轨道的描述。 |
...
@@ -76,10 +69,8 @@ OH_AVErrCode OHOS::Media::OH_AudioEncoder_Configure (OH_AVCodec * codec, OH_AVFo
...
@@ -76,10 +69,8 @@ OH_AVErrCode OHOS::Media::OH_AudioEncoder_Configure (OH_AVCodec * codec, OH_AVFo
9
9
### OH_AudioEncoder_CreateByMime()
### OH_AudioEncoder_CreateByMime()
```
```
OH_AVCodec* OHOS::Media::OH_AudioEncoder_CreateByMime (const char * mime)
OH_AVCodec* OHOS::Media::OH_AudioEncoder_CreateByMime (const char * mime)
```
```
...
@@ -93,8 +84,8 @@ OH_AVCodec* OHOS::Media::OH_AudioEncoder_CreateByMime (const char * mime)
...
@@ -93,8 +84,8 @@ OH_AVCodec* OHOS::Media::OH_AudioEncoder_CreateByMime (const char * mime)
**参数:**
**参数:**
| 名称 | 描述 |
| 名称 | 描述 |
| ----
---- |
-------- |
| ----
| -----------------------------------------------
-------- |
| mime | MIME类型描述字符串,请参阅
**AVCODEC_MIME_TYPE**
。 |
| mime | MIME类型描述字符串,请参阅
**AVCODEC_MIME_TYPE**
。 |
**返回:**
**返回:**
...
@@ -104,10 +95,8 @@ OH_AVCodec* OHOS::Media::OH_AudioEncoder_CreateByMime (const char * mime)
...
@@ -104,10 +95,8 @@ OH_AVCodec* OHOS::Media::OH_AudioEncoder_CreateByMime (const char * mime)
9
9
### OH_AudioEncoder_CreateByName()
### OH_AudioEncoder_CreateByName()
```
```
OH_AVCodec* OHOS::Media::OH_AudioEncoder_CreateByName (const char * name)
OH_AVCodec* OHOS::Media::OH_AudioEncoder_CreateByName (const char * name)
```
```
...
@@ -121,7 +110,7 @@ OH_AVCodec* OHOS::Media::OH_AudioEncoder_CreateByName (const char * name)
...
@@ -121,7 +110,7 @@ OH_AVCodec* OHOS::Media::OH_AudioEncoder_CreateByName (const char * name)
**参数:**
**参数:**
| 名称 | 描述 |
| 名称 | 描述 |
| ----
---- |
-------- |
| ----
| --------
-------- |
| name | 音频编码器名称。 |
| name | 音频编码器名称。 |
**返回:**
**返回:**
...
@@ -132,10 +121,8 @@ OH_AVCodec* OHOS::Media::OH_AudioEncoder_CreateByName (const char * name)
...
@@ -132,10 +121,8 @@ OH_AVCodec* OHOS::Media::OH_AudioEncoder_CreateByName (const char * name)
9
9
### OH_AudioEncoder_Destroy()
### OH_AudioEncoder_Destroy()
```
```
OH_AVErrCode OHOS::Media::OH_AudioEncoder_Destroy (OH_AVCodec * codec)
OH_AVErrCode OHOS::Media::OH_AudioEncoder_Destroy (OH_AVCodec * codec)
```
```
...
@@ -149,7 +136,7 @@ OH_AVErrCode OHOS::Media::OH_AudioEncoder_Destroy (OH_AVCodec * codec)
...
@@ -149,7 +136,7 @@ OH_AVErrCode OHOS::Media::OH_AudioEncoder_Destroy (OH_AVCodec * codec)
**参数:**
**参数:**
| 名称 | 描述 |
| 名称 | 描述 |
| -----
--- |
-------- |
| -----
| ------------------
-------- |
| codec | 指向OH_AVCodec实例的指针。 |
| codec | 指向OH_AVCodec实例的指针。 |
**返回:**
**返回:**
...
@@ -160,10 +147,8 @@ OH_AVErrCode OHOS::Media::OH_AudioEncoder_Destroy (OH_AVCodec * codec)
...
@@ -160,10 +147,8 @@ OH_AVErrCode OHOS::Media::OH_AudioEncoder_Destroy (OH_AVCodec * codec)
9
9
### OH_AudioEncoder_Flush()
### OH_AudioEncoder_Flush()
```
```
OH_AVErrCode OHOS::Media::OH_AudioEncoder_Flush (OH_AVCodec * codec)
OH_AVErrCode OHOS::Media::OH_AudioEncoder_Flush (OH_AVCodec * codec)
```
```
...
@@ -179,7 +164,7 @@ OH_AVErrCode OHOS::Media::OH_AudioEncoder_Flush (OH_AVCodec * codec)
...
@@ -179,7 +164,7 @@ OH_AVErrCode OHOS::Media::OH_AudioEncoder_Flush (OH_AVCodec * codec)
**参数:**
**参数:**
| 名称 | 描述 |
| 名称 | 描述 |
| -----
--- |
-------- |
| -----
| ------------------
-------- |
| codec | 指向OH_AVCodec实例的指针。 |
| codec | 指向OH_AVCodec实例的指针。 |
**返回:**
**返回:**
...
@@ -190,10 +175,8 @@ OH_AVErrCode OHOS::Media::OH_AudioEncoder_Flush (OH_AVCodec * codec)
...
@@ -190,10 +175,8 @@ OH_AVErrCode OHOS::Media::OH_AudioEncoder_Flush (OH_AVCodec * codec)
9
9
### OH_AudioEncoder_FreeOutputData()
### OH_AudioEncoder_FreeOutputData()
```
```
OH_AVErrCode OHOS::Media::OH_AudioEncoder_FreeOutputData (OH_AVCodec * codec, uint32_t index )
OH_AVErrCode OHOS::Media::OH_AudioEncoder_FreeOutputData (OH_AVCodec * codec, uint32_t index )
```
```
...
@@ -207,7 +190,7 @@ OH_AVErrCode OHOS::Media::OH_AudioEncoder_FreeOutputData (OH_AVCodec * codec, ui
...
@@ -207,7 +190,7 @@ OH_AVErrCode OHOS::Media::OH_AudioEncoder_FreeOutputData (OH_AVCodec * codec, ui
**参数:**
**参数:**
| 名称 | 描述 |
| 名称 | 描述 |
| -----
--- |
-------- |
| -----
| ----------------------
-------- |
| codec | 指向OH_AVCodec实例的指针。 |
| codec | 指向OH_AVCodec实例的指针。 |
| index | 输出缓冲区Buffer对应的索引值。 |
| index | 输出缓冲区Buffer对应的索引值。 |
...
@@ -219,10 +202,8 @@ OH_AVErrCode OHOS::Media::OH_AudioEncoder_FreeOutputData (OH_AVCodec * codec, ui
...
@@ -219,10 +202,8 @@ OH_AVErrCode OHOS::Media::OH_AudioEncoder_FreeOutputData (OH_AVCodec * codec, ui
9
9
### OH_AudioEncoder_GetOutputDescription()
### OH_AudioEncoder_GetOutputDescription()
```
```
OH_AVFormat* OHOS::Media::OH_AudioEncoder_GetOutputDescription (OH_AVCodec * codec)
OH_AVFormat* OHOS::Media::OH_AudioEncoder_GetOutputDescription (OH_AVCodec * codec)
```
```
...
@@ -238,7 +219,7 @@ OH_AVFormat* OHOS::Media::OH_AudioEncoder_GetOutputDescription (OH_AVCodec * cod
...
@@ -238,7 +219,7 @@ OH_AVFormat* OHOS::Media::OH_AudioEncoder_GetOutputDescription (OH_AVCodec * cod
**参数:**
**参数:**
| 名称 | 描述 |
| 名称 | 描述 |
| -----
--- |
-------- |
| -----
| ------------------
-------- |
| codec | 指向OH_AVCodec实例的指针。 |
| codec | 指向OH_AVCodec实例的指针。 |
**返回:**
**返回:**
...
@@ -249,24 +230,22 @@ OH_AVFormat* OHOS::Media::OH_AudioEncoder_GetOutputDescription (OH_AVCodec * cod
...
@@ -249,24 +230,22 @@ OH_AVFormat* OHOS::Media::OH_AudioEncoder_GetOutputDescription (OH_AVCodec * cod
9
9
### OH_AudioEncoder_IsValid()
### OH_AudioEncoder_IsValid()
```
```
OH_AVErrCode OHOS::Media::OH_AudioEncoder_IsValid (OH_AVCodec * codec, bool * isValid )
OH_AVErrCode OHOS::Media::OH_AudioEncoder_IsValid (OH_AVCodec * codec, bool * isValid )
```
```
**描述:**
**描述:**
检查当前编码器实例是否有效
,可用于后台故障恢复或应用程序从后台恢复时检测编码器有效状态
。
检查当前编码器实例是否有效。
\@
syscap SystemCapability.Multimedia.Media.AudioEncoder
\@
syscap SystemCapability.Multimedia.Media.AudioEncoder
**参数:**
**参数:**
| 名称 | 描述 |
| 名称 | 描述 |
| -------
- |
-------- |
| -------
| ---------------------------------------------------------
-------- |
| codec | 指向OH_AVCodec实例的指针。 |
| codec | 指向OH_AVCodec实例的指针。 |
| isValid | 指向布尔实例的指针,true:编码器实例有效,false:编码器实例无效。 |
| isValid | 指向布尔实例的指针,true:编码器实例有效,false:编码器实例无效。 |
...
@@ -278,10 +257,8 @@ OH_AVErrCode OHOS::Media::OH_AudioEncoder_IsValid (OH_AVCodec * codec, bool * is
...
@@ -278,10 +257,8 @@ OH_AVErrCode OHOS::Media::OH_AudioEncoder_IsValid (OH_AVCodec * codec, bool * is
10
10
### OH_AudioEncoder_Prepare()
### OH_AudioEncoder_Prepare()
```
```
OH_AVErrCode OHOS::Media::OH_AudioEncoder_Prepare (OH_AVCodec * codec)
OH_AVErrCode OHOS::Media::OH_AudioEncoder_Prepare (OH_AVCodec * codec)
```
```
...
@@ -295,7 +272,7 @@ OH_AVErrCode OHOS::Media::OH_AudioEncoder_Prepare (OH_AVCodec * codec)
...
@@ -295,7 +272,7 @@ OH_AVErrCode OHOS::Media::OH_AudioEncoder_Prepare (OH_AVCodec * codec)
**参数:**
**参数:**
| 名称 | 描述 |
| 名称 | 描述 |
| -----
--- |
-------- |
| -----
| ------------------
-------- |
| codec | 指向OH_AVCodec实例的指针。 |
| codec | 指向OH_AVCodec实例的指针。 |
**返回:**
**返回:**
...
@@ -306,10 +283,8 @@ OH_AVErrCode OHOS::Media::OH_AudioEncoder_Prepare (OH_AVCodec * codec)
...
@@ -306,10 +283,8 @@ OH_AVErrCode OHOS::Media::OH_AudioEncoder_Prepare (OH_AVCodec * codec)
9
9
### OH_AudioEncoder_PushInputData()
### OH_AudioEncoder_PushInputData()
```
```
OH_AVErrCode OHOS::Media::OH_AudioEncoder_PushInputData (OH_AVCodec * codec, uint32_t index, OH_AVCodecBufferAttr attr )
OH_AVErrCode OHOS::Media::OH_AudioEncoder_PushInputData (OH_AVCodec * codec, uint32_t index, OH_AVCodecBufferAttr attr )
```
```
...
@@ -325,7 +300,7 @@ OH_AVErrCode OHOS::Media::OH_AudioEncoder_PushInputData (OH_AVCodec * codec, uin
...
@@ -325,7 +300,7 @@ OH_AVErrCode OHOS::Media::OH_AudioEncoder_PushInputData (OH_AVCodec * codec, uin
**参数:**
**参数:**
| 名称 | 描述 |
| 名称 | 描述 |
| -----
--- |
-------- |
| -----
| ----------------------
-------- |
| codec | 指向OH_AVCodec实例的指针。 |
| codec | 指向OH_AVCodec实例的指针。 |
| index | 输入缓冲区Buffer对应的索引值。 |
| index | 输入缓冲区Buffer对应的索引值。 |
| attr | 描述缓冲区中包含的数据的信息。 |
| attr | 描述缓冲区中包含的数据的信息。 |
...
@@ -338,10 +313,8 @@ OH_AVErrCode OHOS::Media::OH_AudioEncoder_PushInputData (OH_AVCodec * codec, uin
...
@@ -338,10 +313,8 @@ OH_AVErrCode OHOS::Media::OH_AudioEncoder_PushInputData (OH_AVCodec * codec, uin
9
9
### OH_AudioEncoder_Reset()
### OH_AudioEncoder_Reset()
```
```
OH_AVErrCode OHOS::Media::OH_AudioEncoder_Reset (OH_AVCodec * codec)
OH_AVErrCode OHOS::Media::OH_AudioEncoder_Reset (OH_AVCodec * codec)
```
```
...
@@ -355,17 +328,15 @@ OH_AVErrCode OHOS::Media::OH_AudioEncoder_Reset (OH_AVCodec * codec)
...
@@ -355,17 +328,15 @@ OH_AVErrCode OHOS::Media::OH_AudioEncoder_Reset (OH_AVCodec * codec)
**参数:**
**参数:**
| 名称 | 描述 |
| 名称 | 描述 |
| -----
--- |
-------- |
| -----
| ------------------
-------- |
| codec | 指向OH_AVCodec实例的指针。 |
| codec | 指向OH_AVCodec实例的指针。 |
**返回:**
**返回:**
如果执行成功,则返回AV_ERR_OK,否则返回特定错误代码,请参阅
[
OH_AVErrCode
](
_core.md#oh_averrcode
)
。
如果执行成功,则返回AV_ERR_OK,否则返回特定错误代码,请参阅
[
OH_AVErrCode
](
_core.md#oh_averrcode
)
。
### OH_AudioEncoder_SetCallback()
### OH_AudioEncoder_SetCallback()
```
```
OH_AVErrCode OHOS::Media::OH_AudioEncoder_SetCallback (OH_AVCodec * codec, OH_AVCodecAsyncCallback callback, void * userData )
OH_AVErrCode OHOS::Media::OH_AudioEncoder_SetCallback (OH_AVCodec * codec, OH_AVCodecAsyncCallback callback, void * userData )
```
```
...
@@ -381,9 +352,9 @@ OH_AVErrCode OHOS::Media::OH_AudioEncoder_SetCallback (OH_AVCodec * codec, OH_AV
...
@@ -381,9 +352,9 @@ OH_AVErrCode OHOS::Media::OH_AudioEncoder_SetCallback (OH_AVCodec * codec, OH_AV
**参数:**
**参数:**
| 名称 | 描述 |
| 名称 | 描述 |
| -------- | -------- |
| -------- | --------
-----------------------------------------------------
|
| codec | 指向OH_AVCodec实例的指针。 |
| codec | 指向OH_AVCodec实例的指针。 |
| callback | 所有回调函数的集合,请参见
**OH_AVCodecAsyncCallback**
。 |
| callback | 所有回调函数的集合,请参见
**OH_AVCodecAsyncCallback**
。 |
| userData | 用户特定数据。 |
| userData | 用户特定数据。 |
**返回:**
**返回:**
...
@@ -394,10 +365,8 @@ OH_AVErrCode OHOS::Media::OH_AudioEncoder_SetCallback (OH_AVCodec * codec, OH_AV
...
@@ -394,10 +365,8 @@ OH_AVErrCode OHOS::Media::OH_AudioEncoder_SetCallback (OH_AVCodec * codec, OH_AV
9
9
### OH_AudioEncoder_SetParameter()
### OH_AudioEncoder_SetParameter()
```
```
OH_AVErrCode OHOS::Media::OH_AudioEncoder_SetParameter (OH_AVCodec * codec, OH_AVFormat * format )
OH_AVErrCode OHOS::Media::OH_AudioEncoder_SetParameter (OH_AVCodec * codec, OH_AVFormat * format )
```
```
...
@@ -413,7 +382,7 @@ OH_AVErrCode OHOS::Media::OH_AudioEncoder_SetParameter (OH_AVCodec * codec, OH_A
...
@@ -413,7 +382,7 @@ OH_AVErrCode OHOS::Media::OH_AudioEncoder_SetParameter (OH_AVCodec * codec, OH_A
**参数:**
**参数:**
| 名称 | 描述 |
| 名称 | 描述 |
| ------
-- |
-------- |
| ------
| ------------------
-------- |
| codec | 指向OH_AVCodec实例的指针。 |
| codec | 指向OH_AVCodec实例的指针。 |
| format | OH_AVFormat句柄指针。 |
| format | OH_AVFormat句柄指针。 |
...
@@ -425,10 +394,8 @@ OH_AVErrCode OHOS::Media::OH_AudioEncoder_SetParameter (OH_AVCodec * codec, OH_A
...
@@ -425,10 +394,8 @@ OH_AVErrCode OHOS::Media::OH_AudioEncoder_SetParameter (OH_AVCodec * codec, OH_A
9
9
### OH_AudioEncoder_Start()
### OH_AudioEncoder_Start()
```
```
OH_AVErrCode OHOS::Media::OH_AudioEncoder_Start (OH_AVCodec * codec)
OH_AVErrCode OHOS::Media::OH_AudioEncoder_Start (OH_AVCodec * codec)
```
```
...
@@ -444,7 +411,7 @@ Prepare成功后调用此接口启动编码器。
...
@@ -444,7 +411,7 @@ Prepare成功后调用此接口启动编码器。
**参数:**
**参数:**
| 名称 | 描述 |
| 名称 | 描述 |
| -----
--- |
-------- |
| -----
| ------------------
-------- |
| codec | 指向OH_AVCodec实例的指针。 |
| codec | 指向OH_AVCodec实例的指针。 |
**返回:**
**返回:**
...
@@ -455,10 +422,8 @@ Prepare成功后调用此接口启动编码器。
...
@@ -455,10 +422,8 @@ Prepare成功后调用此接口启动编码器。
9
9
### OH_AudioEncoder_Stop()
### OH_AudioEncoder_Stop()
```
```
OH_AVErrCode OHOS::Media::OH_AudioEncoder_Stop (OH_AVCodec * codec)
OH_AVErrCode OHOS::Media::OH_AudioEncoder_Stop (OH_AVCodec * codec)
```
```
...
@@ -472,7 +437,7 @@ OH_AVErrCode OHOS::Media::OH_AudioEncoder_Stop (OH_AVCodec * codec)
...
@@ -472,7 +437,7 @@ OH_AVErrCode OHOS::Media::OH_AudioEncoder_Stop (OH_AVCodec * codec)
**参数:**
**参数:**
| 名称 | 描述 |
| 名称 | 描述 |
| -----
--- |
-------- |
| -----
| ------------------
-------- |
| codec | 指向OH_AVCodec实例的指针。 |
| codec | 指向OH_AVCodec实例的指针。 |
**返回:**
**返回:**
...
...
zh-cn/application-dev/reference/native-apis/native__avcodec__audiodecoder_8h.md
浏览文件 @
80c39033
# native_avcodec_audiodecoder.h
# native_avcodec_audiodecoder.h
## 概述
## 概述
声明用于音频解码的Native API。
声明用于音频解码的Native API。
...
@@ -13,14 +12,12 @@
...
@@ -13,14 +12,12 @@
[
AudioDecoder
](
_audio_decoder.md
)
[
AudioDecoder
](
_audio_decoder.md
)
## 汇总
## 汇总
### 函数
### 函数
| 名称 | 描述 |
| 名称 | 描述 |
| --------
|
-------- |
| --------
------------------------------------------------------------------------------------------------------------------------------------------------------ | --------------------------------------------------------------------------------------------
-------- |
|
\*
[
OHOS::Media::OH_AudioDecoder_CreateByMime
](
_audio_decoder.md#oh_audiodecoder_createbymime
)
(
const
char
\*
mime) | 根据MIME类型创建音频解码器实例,大多数场景下建议使用此方式。 |
|
\*
[
OHOS::Media::OH_AudioDecoder_CreateByMime
](
_audio_decoder.md#oh_audiodecoder_createbymime
)
(
const
char
\*
mime) | 根据MIME类型创建音频解码器实例,大多数场景下建议使用此方式。 |
|
\*
[
OHOS::Media::OH_AudioDecoder_CreateByName
](
_audio_decoder.md#oh_audiodecoder_createbyname
)
(
const
char
\*
name) | 通过音频解码器名称创建音频解码器实例,使用此接口的前提是知道解码器的确切名称。 |
|
\*
[
OHOS::Media::OH_AudioDecoder_CreateByName
](
_audio_decoder.md#oh_audiodecoder_createbyname
)
(
const
char
\*
name) | 通过音频解码器名称创建音频解码器实例,使用此接口的前提是知道解码器的确切名称。 |
|
[
OHOS::Media::OH_AudioDecoder_Destroy
](
_audio_decoder.md#oh_audiodecoder_destroy
)
(
OH_AVCodec
\*
codec) | 清理解码器内部资源,销毁解码器实例。 |
|
[
OHOS::Media::OH_AudioDecoder_Destroy
](
_audio_decoder.md#oh_audiodecoder_destroy
)
(
OH_AVCodec
\*
codec) | 清理解码器内部资源,销毁解码器实例。 |
...
@@ -35,4 +32,4 @@
...
@@ -35,4 +32,4 @@
|
[
OHOS::Media::OH_AudioDecoder_SetParameter
](
_audio_decoder.md#oh_audiodecoder_setparameter
)
(
OH_AVCodec
\*
codec, OH_AVFormat
\*
format) | 配置解码器的动态参数。注意:该接口必须在解码器启动后才能调用。另外,参数配置错误可能会导致解码失败。 |
|
[
OHOS::Media::OH_AudioDecoder_SetParameter
](
_audio_decoder.md#oh_audiodecoder_setparameter
)
(
OH_AVCodec
\*
codec, OH_AVFormat
\*
format) | 配置解码器的动态参数。注意:该接口必须在解码器启动后才能调用。另外,参数配置错误可能会导致解码失败。 |
|
[
OHOS::Media::OH_AudioDecoder_PushInputData
](
_audio_decoder.md#oh_audiodecoder_pushinputdata
)
(
OH_AVCodec
\*
codec, uint32_t index, OH_AVCodecBufferAttr attr) | 将填充有数据的输入缓冲区提交给音频解码器。 |
|
[
OHOS::Media::OH_AudioDecoder_PushInputData
](
_audio_decoder.md#oh_audiodecoder_pushinputdata
)
(
OH_AVCodec
\*
codec, uint32_t index, OH_AVCodecBufferAttr attr) | 将填充有数据的输入缓冲区提交给音频解码器。 |
|
[
OHOS::Media::OH_AudioDecoder_FreeOutputData
](
_audio_decoder.md#oh_audiodecoder_freeoutputdata
)
(
OH_AVCodec
\*
codec, uint32_t index) | 将处理后的输出缓冲区返回给解码器。 |
|
[
OHOS::Media::OH_AudioDecoder_FreeOutputData
](
_audio_decoder.md#oh_audiodecoder_freeoutputdata
)
(
OH_AVCodec
\*
codec, uint32_t index) | 将处理后的输出缓冲区返回给解码器。 |
|
[
OHOS::Media::OH_AudioDecoder_IsValid
](
_audio_decoder.md#oh_audiodecoder_isvalid
)
(
OH_AVCodec
\*
codec, bool
\*
isValid)
| 检查当前解码器实例是否有效,可用于后台故障恢复或应用程序从后台恢复时检测解码器有效状态。 |
|
[
OHOS::Media::OH_AudioDecoder_IsValid
](
_audio_decoder.md#oh_audiodecoder_isvalid
)
(
OH_AVCodec
\*
codec, bool
\*
isValid)
| 检查当前解码器实例是否有效。 |
zh-cn/application-dev/reference/native-apis/native__avcodec__audioencoder_8h.md
浏览文件 @
80c39033
# native_avcodec_audioencoder.h
# native_avcodec_audioencoder.h
## 概述
## 概述
声明用于音频编码的Native API。
声明用于音频编码的Native API。
...
@@ -13,14 +12,12 @@
...
@@ -13,14 +12,12 @@
[
AudioEncoder
](
_audio_encoder.md
)
[
AudioEncoder
](
_audio_encoder.md
)
## 汇总
## 汇总
### 函数
### 函数
| 名称 | 描述 |
| 名称 | 描述 |
| --------
|
-------- |
| --------
------------------------------------------------------------------------------------------------------------------------------------------------------ | ----------------------------------------------------------------------
-------- |
|
\*
[
OHOS::Media::OH_AudioEncoder_CreateByMime
](
_audio_encoder.md#oh_audioencoder_createbymime
)
(
const
char
\*
mime) | 根据MIME类型创建音频编码器实例,大多数场景下建议使用此方式。 |
|
\*
[
OHOS::Media::OH_AudioEncoder_CreateByMime
](
_audio_encoder.md#oh_audioencoder_createbymime
)
(
const
char
\*
mime) | 根据MIME类型创建音频编码器实例,大多数场景下建议使用此方式。 |
|
\*
[
OHOS::Media::OH_AudioEncoder_CreateByName
](
_audio_encoder.md#oh_audioencoder_createbyname
)
(
const
char
\*
name) | 通过音频编码器名称创建音频编码器实例,使用此接口的前提是知道编码器的确切名称。 |
|
\*
[
OHOS::Media::OH_AudioEncoder_CreateByName
](
_audio_encoder.md#oh_audioencoder_createbyname
)
(
const
char
\*
name) | 通过音频编码器名称创建音频编码器实例,使用此接口的前提是知道编码器的确切名称。 |
|
[
OHOS::Media::OH_AudioEncoder_Destroy
](
_audio_encoder.md#oh_audioencoder_destroy
)
(
OH_AVCodec
\*
codec) | 清理编码器内部资源,销毁编码器实例。 |
|
[
OHOS::Media::OH_AudioEncoder_Destroy
](
_audio_encoder.md#oh_audioencoder_destroy
)
(
OH_AVCodec
\*
codec) | 清理编码器内部资源,销毁编码器实例。 |
...
@@ -35,4 +32,4 @@
...
@@ -35,4 +32,4 @@
|
[
OHOS::Media::OH_AudioEncoder_SetParameter
](
_audio_encoder.md#oh_audioencoder_setparameter
)
(
OH_AVCodec
\*
codec, OH_AVFormat
\*
format) | 配置编码器的动态参数。 |
|
[
OHOS::Media::OH_AudioEncoder_SetParameter
](
_audio_encoder.md#oh_audioencoder_setparameter
)
(
OH_AVCodec
\*
codec, OH_AVFormat
\*
format) | 配置编码器的动态参数。 |
|
[
OHOS::Media::OH_AudioEncoder_PushInputData
](
_audio_encoder.md#oh_audioencoder_pushinputdata
)
(
OH_AVCodec
\*
codec, uint32_t index, OH_AVCodecBufferAttr attr) | 将填充有数据的输入缓冲区提交给音频编码器。 |
|
[
OHOS::Media::OH_AudioEncoder_PushInputData
](
_audio_encoder.md#oh_audioencoder_pushinputdata
)
(
OH_AVCodec
\*
codec, uint32_t index, OH_AVCodecBufferAttr attr) | 将填充有数据的输入缓冲区提交给音频编码器。 |
|
[
OHOS::Media::OH_AudioEncoder_FreeOutputData
](
_audio_encoder.md#oh_audioencoder_freeoutputdata
)
(
OH_AVCodec
\*
codec, uint32_t index) | 将处理后的输出缓冲区返回给编码器。 |
|
[
OHOS::Media::OH_AudioEncoder_FreeOutputData
](
_audio_encoder.md#oh_audioencoder_freeoutputdata
)
(
OH_AVCodec
\*
codec, uint32_t index) | 将处理后的输出缓冲区返回给编码器。 |
|
[
OHOS::Media::OH_AudioEncoder_IsValid
](
_audio_encoder.md#oh_audioencoder_isvalid
)
(
OH_AVCodec
\*
codec, bool
\*
isValid)
| 检查当前编码器实例是否有效,可用于后台故障恢复或应用程序从后台恢复时检测编码器有效状态。 |
|
[
OHOS::Media::OH_AudioEncoder_IsValid
](
_audio_encoder.md#oh_audioencoder_isvalid
)
(
OH_AVCodec
\*
codec, bool
\*
isValid)
| 检查当前编码器实例是否有效。 |
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录