提交 dde34824 编写于 作者: Z zengyawen

update docs

Signed-off-by: Nzengyawen <zengyawen1@huawei.com>
上级 b9e31947
......@@ -17,27 +17,27 @@ AudioDecoder模块提供用于音频解码功能的函数。
| 名称 | 描述 |
| -------- | -------- |
| [native_avcodec_audiodecoder.h](native__avcodec__audiodecoder_8h.md) | 声明用于音频解码的Native API。 |
| [native_avcodec_audiodecoder.h](native__avcodec__audiodecoder_8h.md) | 声明用于音频解码的Native API。<br>引用文件:<multimedia/player_framework/native_avcodec_audiodecoder.h> |
### 函数
| 名称 | 描述 |
| -------- | -------- |
| [OH_AudioDecoder_CreateByMime](#oh_audiodecoder_createbymime) (const char \*mime) | OH_AVCodec \*<br/>通过mime类型创建一个音频解码器实例,大多数情况下推荐使用该接口。 |
| [OH_AudioDecoder_CreateByName](#oh_audiodecoder_createbyname) (const char \*name) | OH_AVCodec \*<br/>通过音频解码器名称创建一个音频解码器实例,使用这个接口的前提是必须清楚解码器准确的名称。 |
| [OH_AudioDecoder_Destroy](#oh_audiodecoder_destroy) (OH_AVCodec \*codec) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>清空解码器内部资源,并销毁解码器实例 |
| [OH_AudioDecoder_SetCallback](#oh_audiodecoder_setcallback) (OH_AVCodec \*codec, [OH_AVCodecAsyncCallback](_o_h___a_v_codec_async_callback.md) callback, void \*userData) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>设置异步回调函数,使得你的应用能够响应音频解码器产生的事件,该接口被调用必须是在Prepare被调用前。 |
| [OH_AudioDecoder_Configure](#oh_audiodecoder_configure) (OH_AVCodec \*codec, OH_AVFormat \*format) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>配置音频解码器,典型地,需要配置被解码音频轨道的描述信息,这些信息能够从容器中提取出来, 该接口被调用必须是在Prepare被调用前。 |
| [OH_AudioDecoder_Prepare](#oh_audiodecoder_prepare) (OH_AVCodec \*codec) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>准备解码器内部资源,调用该接口前必须先调用Configure接口。 |
| [OH_AudioDecoder_Start](#oh_audiodecoder_start) (OH_AVCodec \*codec) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>启动解码器,该接口必须在已经Prepare成功后调用。 在启动成功后,解码器将开始报告[OH_AVCodecOnNeedInputData](_codec_base.md#oh_avcodeconneedinputdata)事件。 |
| [OH_AudioDecoder_Stop](#oh_audiodecoder_stop) (OH_AVCodec \*codec) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>停止解码器。在停止后可通过Start重新进入Started状态,但需要注意的是,若先前给解码器输入过 Codec-Specific-Data,则需要重新输入。 |
| [OH_AudioDecoder_Flush](#oh_audiodecoder_flush) (OH_AVCodec \*codec) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>清空解码器内部缓存的输入输出数据。在该接口被调用后,所有先前通过异步回调报告的Buffer的索引都将 失效,确保不要再访问这些索引对应的Buffers。 |
| [OH_AudioDecoder_Reset](#oh_audiodecoder_reset) (OH_AVCodec \*codec) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>重置解码器。如需继续解码工作,需要重新调用Configure接口以配置该解码器实例。 |
| [OH_AudioDecoder_GetOutputDescription](#oh_audiodecoder_getoutputdescription) (OH_AVCodec \*codec) | OH_AVFormat \*<br/>获取该解码器输出数据的描述信息,需要注意的是,返回值所指向的OH_AVFormat实例需调用者手动释放。 |
| [OH_AudioDecoder_SetParameter](#oh_audiodecoder_setparameter) (OH_AVCodec \*codec, OH_AVFormat \*format) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>向解码器设置动态参数,注意:该接口仅能在解码器被启动后调用,同时错误的参数设置,可能会导致解码失败。 |
| [OH_AudioDecoder_PushInputData](#oh_audiodecoder_pushinputdata) (OH_AVCodec \*codec, uint32_t index, [OH_AVCodecBufferAttr](_o_h___a_v_codec_buffer_attr.md) attr) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>将填充好数据的输入Buffer提交给音频解码器。[OH_AVCodecOnNeedInputData](_codec_base.md#oh_avcodeconneedinputdata)回调会报告可用的输入 Buffer及对应的索引值。一旦指定索引的Buffer被提交给解码器,直到再一次收到[OH_AVCodecOnNeedInputData](_codec_base.md#oh_avcodeconneedinputdata) 回调报告相同索引的Buffer可用前,该Buffer都不可以再次被访问。另外,对于部分解码器,要求在最开始给解码器输入 Codec-Specific-Data,用以初始化解码器的解码过程。 |
| [OH_AudioDecoder_FreeOutputData](#oh_audiodecoder_freeoutputdata) (OH_AVCodec \*codec, uint32_t index) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>将处理结束的输出Buffer交还给解码器。 |
| [OH_AudioDecoder_CreateByMime](#oh_audiodecoder_createbymime) (const char \*mime) | 通过mime类型创建一个音频解码器实例,大多数情况下推荐使用该接口。 |
| [OH_AudioDecoder_CreateByName](#oh_audiodecoder_createbyname) (const char \*name) | 通过音频解码器名称创建一个音频解码器实例,使用这个接口的前提是必须清楚解码器准确的名称。 |
| [OH_AudioDecoder_Destroy](#oh_audiodecoder_destroy) (OH_AVCodec \*codec) | 清空解码器内部资源,并销毁解码器实例 |
| [OH_AudioDecoder_SetCallback](#oh_audiodecoder_setcallback) (OH_AVCodec \*codec, [OH_AVCodecAsyncCallback](_o_h___a_v_codec_async_callback.md) callback, void \*userData) | 设置异步回调函数,使得你的应用能够响应音频解码器产生的事件,该接口被调用必须是在Prepare被调用前。 |
| [OH_AudioDecoder_Configure](#oh_audiodecoder_configure) (OH_AVCodec \*codec, OH_AVFormat \*format) | 配置音频解码器,典型地,需要配置被解码音频轨道的描述信息,这些信息能够从容器中提取出来, 该接口被调用必须是在Prepare被调用前。 |
| [OH_AudioDecoder_Prepare](#oh_audiodecoder_prepare) (OH_AVCodec \*codec) | 准备解码器内部资源,调用该接口前必须先调用Configure接口。 |
| [OH_AudioDecoder_Start](#oh_audiodecoder_start) (OH_AVCodec \*codec) | 启动解码器,该接口必须在已经Prepare成功后调用。 在启动成功后,解码器将开始报告[OH_AVCodecOnNeedInputData](_codec_base.md#oh_avcodeconneedinputdata)事件。 |
| [OH_AudioDecoder_Stop](#oh_audiodecoder_stop) (OH_AVCodec \*codec) | 停止解码器。在停止后可通过Start重新进入Started状态,但需要注意的是,若先前给解码器输入过 Codec-Specific-Data,则需要重新输入。 |
| [OH_AudioDecoder_Flush](#oh_audiodecoder_flush) (OH_AVCodec \*codec) | 清空解码器内部缓存的输入输出数据。在该接口被调用后,所有先前通过异步回调报告的Buffer的索引都将 失效,确保不要再访问这些索引对应的Buffers。 |
| [OH_AudioDecoder_Reset](#oh_audiodecoder_reset) (OH_AVCodec \*codec) | 重置解码器。如需继续解码工作,需要重新调用Configure接口以配置该解码器实例。 |
| [OH_AudioDecoder_GetOutputDescription](#oh_audiodecoder_getoutputdescription) (OH_AVCodec \*codec) | 获取该解码器输出数据的描述信息,需要注意的是,返回值所指向的OH_AVFormat实例需调用者手动释放。 |
| [OH_AudioDecoder_SetParameter](#oh_audiodecoder_setparameter) (OH_AVCodec \*codec, OH_AVFormat \*format) | 向解码器设置动态参数,注意:该接口仅能在解码器被启动后调用,同时错误的参数设置,可能会导致解码失败。 |
| [OH_AudioDecoder_PushInputData](#oh_audiodecoder_pushinputdata) (OH_AVCodec \*codec, uint32_t index, [OH_AVCodecBufferAttr](_o_h___a_v_codec_buffer_attr.md) attr) | 将填充好数据的输入Buffer提交给音频解码器。[OH_AVCodecOnNeedInputData](_codec_base.md#oh_avcodeconneedinputdata)回调会报告可用的输入 Buffer及对应的索引值。一旦指定索引的Buffer被提交给解码器,直到再一次收到[OH_AVCodecOnNeedInputData](_codec_base.md#oh_avcodeconneedinputdata) 回调报告相同索引的Buffer可用前,该Buffer都不可以再次被访问。另外,对于部分解码器,要求在最开始给解码器输入 Codec-Specific-Data,用以初始化解码器的解码过程。 |
| [OH_AudioDecoder_FreeOutputData](#oh_audiodecoder_freeoutputdata) (OH_AVCodec \*codec, uint32_t index) | 将处理结束的输出Buffer交还给解码器。 |
## 函数说明
......
......@@ -17,27 +17,27 @@ AudioEncoder模块提供用于音频编码功能的函数。
| 名称 | 描述 |
| -------- | -------- |
| [native_avcodec_audioencoder.h](native__avcodec__audioencoder_8h.md) | 声明用于音频编码的Native API。 |
| [native_avcodec_audioencoder.h](native__avcodec__audioencoder_8h.md) | 声明用于音频编码的Native API。<br>引用文件:<multimedia/player_framework/native_avcodec_audioencoder.h> |
### 函数
| 名称 | 描述 |
| -------- | -------- |
| [OH_AudioEncoder_CreateByMime](#oh_audioencoder_createbymime) (const char \*mime) | OH_AVCodec \*<br/>通过mime类型创建一个音频编码器实例,大多数情况下推荐使用该接口。 |
| [OH_AudioEncoder_CreateByName](#oh_audioencoder_createbyname) (const char \*name) | OH_AVCodec \*<br/>通过音频编码器名称创建一个音频编码器实例,使用这个接口的前提是必须清楚编码器准确的名称。 |
| [OH_AudioEncoder_Destroy](#oh_audioencoder_destroy) (OH_AVCodec \*codec) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>清空编码器内部资源,并销毁编码器实例。 |
| [OH_AudioEncoder_SetCallback](#oh_audioencoder_setcallback) (OH_AVCodec \*codec, [OH_AVCodecAsyncCallback](_o_h___a_v_codec_async_callback.md) callback, void \*userData) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>设置异步回调函数,使得你的应用能够响应音频编码器产生的事件,该接口被调用必须是在Prepare被调用前。 |
| [OH_AudioEncoder_Configure](#oh_audioencoder_configure) (OH_AVCodec \*codec, OH_AVFormat \*format) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>配置音频编码器,典型地,需要配置被编码音频轨道的描述信息,该接口被调用必须是在Prepare被调用前。 |
| [OH_AudioEncoder_Prepare](#oh_audioencoder_prepare) (OH_AVCodec \*codec) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>准备编码器内部资源,调用该接口前必须先调用Configure接口。 |
| [OH_AudioEncoder_Start](#oh_audioencoder_start) (OH_AVCodec \*codec) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>启动编码器,该接口必须在已经Prepare成功后调用。 在启动成功后,编码器将开始报告[OH_AVCodecOnNeedInputData](_codec_base.md#oh_avcodeconneedinputdata)事件。 |
| [OH_AudioEncoder_Stop](#oh_audioencoder_stop) (OH_AVCodec \*codec) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>停止编码器。在停止后可通过Start重新进入Started状态。 |
| [OH_AudioEncoder_Flush](#oh_audioencoder_flush) (OH_AVCodec \*codec) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>清空编码器内部缓存的输入输出数据。在该接口被调用后,所有先前通过异步回调报告的Buffer的索引都将 失效,确保不要再访问这些索引对应的Buffers。 |
| [OH_AudioEncoder_Reset](#oh_audioencoder_reset) (OH_AVCodec \*codec) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>重置编码器。如需继续编码工作,需要重新调用Configure接口以配置该编码器实例。 |
| [OH_AudioEncoder_GetOutputDescription](#oh_audioencoder_getoutputdescription) (OH_AVCodec \*codec) | OH_AVFormat \*<br/>获取该编码器输出数据的描述信息,需要注意的是,返回值所指向的OH_AVFormat实例需调用者手动释放。 |
| [OH_AudioEncoder_SetParameter](#oh_audioencoder_setparameter) (OH_AVCodec \*codec, OH_AVFormat \*format) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>向编码器设置动态参数,注意:该接口仅能在编码器被启动后调用,同时错误的参数设置,可能会导致编码失败。 |
| [OH_AudioEncoder_PushInputData](#oh_audioencoder_pushinputdata) (OH_AVCodec \*codec, uint32_t index, [OH_AVCodecBufferAttr](_o_h___a_v_codec_buffer_attr.md) attr) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>将填充好数据的输入Buffer提交给音频编码器。[OH_AVCodecOnNeedInputData](_codec_base.md#oh_avcodeconneedinputdata)回调会报告可用的输入 Buffer及对应的索引值。一旦指定索引的Buffer被提交给编码器,直到再一次收到[OH_AVCodecOnNeedInputData](_codec_base.md#oh_avcodeconneedinputdata) 回调报告相同索引的Buffer可用前,该Buffer都不可以再次被访问。 |
| [OH_AudioEncoder_FreeOutputData](#oh_audioencoder_freeoutputdata) (OH_AVCodec \*codec, uint32_t index) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>将处理结束的输出Buffer交还给编码器。 |
| [OH_AudioEncoder_CreateByMime](#oh_audioencoder_createbymime) (const char \*mime) | 通过mime类型创建一个音频编码器实例,大多数情况下推荐使用该接口。 |
| [OH_AudioEncoder_CreateByName](#oh_audioencoder_createbyname) (const char \*name) | 通过音频编码器名称创建一个音频编码器实例,使用这个接口的前提是必须清楚编码器准确的名称。 |
| [OH_AudioEncoder_Destroy](#oh_audioencoder_destroy) (OH_AVCodec \*codec) | 清空编码器内部资源,并销毁编码器实例。 |
| [OH_AudioEncoder_SetCallback](#oh_audioencoder_setcallback) (OH_AVCodec \*codec, [OH_AVCodecAsyncCallback](_o_h___a_v_codec_async_callback.md) callback, void \*userData) | 设置异步回调函数,使得你的应用能够响应音频编码器产生的事件,该接口被调用必须是在Prepare被调用前。 |
| [OH_AudioEncoder_Configure](#oh_audioencoder_configure) (OH_AVCodec \*codec, OH_AVFormat \*format) | 配置音频编码器,典型地,需要配置被编码音频轨道的描述信息,该接口被调用必须是在Prepare被调用前。 |
| [OH_AudioEncoder_Prepare](#oh_audioencoder_prepare) (OH_AVCodec \*codec) | 准备编码器内部资源,调用该接口前必须先调用Configure接口。 |
| [OH_AudioEncoder_Start](#oh_audioencoder_start) (OH_AVCodec \*codec) | 启动编码器,该接口必须在已经Prepare成功后调用。 在启动成功后,编码器将开始报告[OH_AVCodecOnNeedInputData](_codec_base.md#oh_avcodeconneedinputdata)事件。 |
| [OH_AudioEncoder_Stop](#oh_audioencoder_stop) (OH_AVCodec \*codec) | 停止编码器。在停止后可通过Start重新进入Started状态。 |
| [OH_AudioEncoder_Flush](#oh_audioencoder_flush) (OH_AVCodec \*codec) | 清空编码器内部缓存的输入输出数据。在该接口被调用后,所有先前通过异步回调报告的Buffer的索引都将 失效,确保不要再访问这些索引对应的Buffers。 |
| [OH_AudioEncoder_Reset](#oh_audioencoder_reset) (OH_AVCodec \*codec) | 重置编码器。如需继续编码工作,需要重新调用Configure接口以配置该编码器实例。 |
| [OH_AudioEncoder_GetOutputDescription](#oh_audioencoder_getoutputdescription) (OH_AVCodec \*codec) | 获取该编码器输出数据的描述信息,需要注意的是,返回值所指向的OH_AVFormat实例需调用者手动释放。 |
| [OH_AudioEncoder_SetParameter](#oh_audioencoder_setparameter) (OH_AVCodec \*codec, OH_AVFormat \*format) | 向编码器设置动态参数,注意:该接口仅能在编码器被启动后调用,同时错误的参数设置,可能会导致编码失败。 |
| [OH_AudioEncoder_PushInputData](#oh_audioencoder_pushinputdata) (OH_AVCodec \*codec, uint32_t index, [OH_AVCodecBufferAttr](_o_h___a_v_codec_buffer_attr.md) attr) | 将填充好数据的输入Buffer提交给音频编码器。[OH_AVCodecOnNeedInputData](_codec_base.md#oh_avcodeconneedinputdata)回调会报告可用的输入 Buffer及对应的索引值。一旦指定索引的Buffer被提交给编码器,直到再一次收到[OH_AVCodecOnNeedInputData](_codec_base.md#oh_avcodeconneedinputdata) 回调报告相同索引的Buffer可用前,该Buffer都不可以再次被访问。 |
| [OH_AudioEncoder_FreeOutputData](#oh_audioencoder_freeoutputdata) (OH_AVCodec \*codec, uint32_t index) | 将处理结束的输出Buffer交还给编码器。 |
## 函数说明
......
......@@ -17,33 +17,31 @@ CodecBase模块提供运行音视频编解码通用的结构体、字符常量
| 名称 | 描述 |
| -------- | -------- |
| [native_avcodec_base.h](native__avcodec__base_8h.md) | 声明运行音视频编解码通用的结构体、字符常量、枚举。 |
| [native_avcodec_base.h](native__avcodec__base_8h.md) | 声明运行音视频编解码通用的结构体、字符常量、枚举。<br>引用文件:<multimedia/player_framework/native_avcodec_base.h> |
### 结构体
| 名称 | 描述 |
| -------- | -------- |
| [OH_AVCodecBufferAttr](_o_h___a_v_codec_buffer_attr.md) | struct<br/>定义OH_AVCodec的Buffer描述信息。 |
| [OH_AVCodecAsyncCallback](_o_h___a_v_codec_async_callback.md) | struct<br/>AVCodec所有的异步回调函数指针集合。注册一个该结构体实例给OH_AVCodec实例,并处理通过该回调报告 的信息,以确保AVCodec正常运转。 |
| [OH_AVCodecBufferAttr](_o_h___a_v_codec_buffer_attr.md) | 定义OH_AVCodec的Buffer描述信息。 |
| [OH_AVCodecAsyncCallback](_o_h___a_v_codec_async_callback.md) | AVCodec所有的异步回调函数指针集合。注册一个该结构体实例给OH_AVCodec实例,并处理通过该回调报告 的信息,以确保AVCodec正常运转。 |
### 类型定义
| 名称 | 描述 |
| -------- | -------- |
| **OHNativeWindow** | typedef struct NativeWindow |
| **OH_AVCodec** | typedef struct OH_AVCodec |
| [OH_AVCodecBufferFlags](#oh_avcodecbufferflags) | typedef enum [OH_AVCodecBufferFlags](#oh_avcodecbufferflags)<br/>枚举OH_AVCodec的Buffer标记的类别。 |
| [OH_AVCodecBufferAttr](#oh_avcodecbufferattr) | typedef struct [OH_AVCodecBufferAttr](_o_h___a_v_codec_buffer_attr.md)<br/>定义OH_AVCodec的Buffer描述信息。 |
| [OH_AVCodecOnError](#oh_avcodeconerror)) (OH_AVCodec \*codec, int32_t errorCode, void \*userData) | typedef void(\*<br/>当OH_AVCodec实例运行发生错误时,该函数指针会被调用以报告具体错误信息。 |
| [OH_AVCodecOnStreamChanged](#oh_avcodeconstreamchanged)) (OH_AVCodec \*codec, OH_AVFormat \*format, void \*userData) | typedef void(\*<br/>当输出流发生变化时,该函数指针会被调用以报告新的流描述信息。 需要注意的时,OH_AVFormat指针的生命周期仅维持在该函数指针被调用时上有效,禁止在调用结束后继续访问。 |
| [OH_AVCodecOnNeedInputData](#oh_avcodeconneedinputdata)) (OH_AVCodec \*codec, uint32_t index, OH_AVMemory \*data, void \*userData) | typedef void(\*<br/>当AVCodec运行过程中需要新的输入数据时,该函数指针会被调用,并携带一块可用的Buffer以供填入新的输入数据。 |
| [OH_AVCodecOnNewOutputData](#oh_avcodeconnewoutputdata)) (OH_AVCodec \*codec, uint32_t index, OH_AVMemory \*data, [OH_AVCodecBufferAttr](_o_h___a_v_codec_buffer_attr.md) \*attr, void \*userData) | typedef void(\*<br/>当AVCodec运行过程中产生了新的输出数据时,该函数指针会被调用,并携带一块包含新输出数据的Buffer, 需要注意的是,OH_AVCodecBufferAttr指针的生命周期仅维持在该函数指针被调用时有效,禁止调用结束后继续访问。 |
| [OH_AVCodecAsyncCallback](#oh_avcodecasynccallback) | typedef struct [OH_AVCodecAsyncCallback](_o_h___a_v_codec_async_callback.md)<br/>AVCodec所有的异步回调函数指针集合。注册一个该结构体实例给OH_AVCodec实例,并处理通过该回调报告 的信息,以确保AVCodec正常运转。 |
| [OH_MediaType](#oh_mediatype) | typedef enum [OH_MediaType](#oh_mediatype)<br/>媒体类型。 |
| [OH_AVCProfile](#oh_avcprofile) | typedef enum [OH_AVCProfile](#oh_avcprofile)<br/>AVC Profile枚举。 |
| [OH_AACProfile](#oh_aacprofile) | typedef enum [OH_AACProfile](#oh_aacprofile)<br/>AAC Profile枚举。 |
| [OH_AVCodecBufferFlags](#oh_avcodecbufferflags) | 枚举OH_AVCodec的Buffer标记的类别。 |
| [OH_AVCodecBufferAttr](#oh_avcodecbufferattr) | 定义OH_AVCodec的Buffer描述信息。 |
| (\*[OH_AVCodecOnError](#oh_avcodeconerror)) (OH_AVCodec \*codec, int32_t errorCode, void \*userData) | 当OH_AVCodec实例运行发生错误时,该函数指针会被调用以报告具体错误信息。 |
| (\*[OH_AVCodecOnStreamChanged](#oh_avcodeconstreamchanged)) (OH_AVCodec \*codec, OH_AVFormat \*format, void \*userData) | 当输出流发生变化时,该函数指针会被调用以报告新的流描述信息。 需要注意的时,OH_AVFormat指针的生命周期仅维持在该函数指针被调用时上有效,禁止在调用结束后继续访问。 |
| (\*[OH_AVCodecOnNeedInputData](#oh_avcodeconneedinputdata)) (OH_AVCodec \*codec, uint32_t index, OH_AVMemory \*data, void \*userData) | 当AVCodec运行过程中需要新的输入数据时,该函数指针会被调用,并携带一块可用的Buffer以供填入新的输入数据。 |
| (\*[OH_AVCodecOnNewOutputData](#oh_avcodeconnewoutputdata)) (OH_AVCodec \*codec, uint32_t index, OH_AVMemory \*data, [OH_AVCodecBufferAttr](_o_h___a_v_codec_buffer_attr.md) \*attr, void \*userData) | 当AVCodec运行过程中产生了新的输出数据时,该函数指针会被调用,并携带一块包含新输出数据的Buffer, 需要注意的是,OH_AVCodecBufferAttr指针的生命周期仅维持在该函数指针被调用时有效,禁止调用结束后继续访问。 |
| [OH_AVCodecAsyncCallback](#oh_avcodecasynccallback) | AVCodec所有的异步回调函数指针集合。注册一个该结构体实例给OH_AVCodec实例,并处理通过该回调报告 的信息,以确保AVCodec正常运转。 |
| [OH_MediaType](#oh_mediatype) | 媒体类型。 |
| [OH_AVCProfile](#oh_avcprofile) | AVC Profile枚举。 |
| [OH_AACProfile](#oh_aacprofile) | AAC Profile枚举。 |
### 枚举
......@@ -60,34 +58,30 @@ CodecBase模块提供运行音视频编解码通用的结构体、字符常量
| 名称 | 描述 |
| -------- | -------- |
| [OH_AVCodecBufferAttr::pts](#pts) | int64_t<br/>以微秒为单位表示的该Buffer的Presentation时间戳 |
| [OH_AVCodecBufferAttr::size](#size) | int32_t<br/>以字节为单位表示的该Buffer内所包含数据的大小 |
| [OH_AVCodecBufferAttr::offset](#offset) | int32_t<br/>有效数据在该Buffer内的起始偏移量 |
| [OH_AVCodecBufferAttr::flags](#flags) | uint32_t<br/>该Buffer具有的标记,也是多个[OH_AVCodecBufferFlags](#oh_avcodecbufferflags)的组合 |
| **OH_AVCodecAsyncCallback::onError** | [OH_AVCodecOnError](#oh_avcodeconerror) |
| **OH_AVCodecAsyncCallback::onStreamChanged** | [OH_AVCodecOnStreamChanged](#oh_avcodeconstreamchanged) |
| **OH_AVCodecAsyncCallback::onNeedInputData** | [OH_AVCodecOnNeedInputData](#oh_avcodeconneedinputdata) |
| **OH_AVCodecAsyncCallback::onNeedOutputData** | [OH_AVCodecOnNewOutputData](#oh_avcodeconnewoutputdata) |
| [OH_AVCODEC_MIMETYPE_VIDEO_AVC](#oh_avcodec_mimetype_video_avc) | const char \*<br/>AVC视频编解码器的MIME类型。 |
| [OH_AVCODEC_MIMETYPE_AUDIO_AAC](#oh_avcodec_mimetype_audio_aac) | const char \*<br/>AAC音频编解码器的MIME类型。 |
| [OH_ED_KEY_TIME_STAMP](#oh_ed_key_time_stamp) | const char \*<br/>提供统一的surface Buffer附属数据的字符描述符。 |
| [OH_ED_KEY_EOS](#oh_ed_key_eos) | const char \*<br/>surface附属数据中结束流的字符描述符,值类型为bool |
| [OH_MD_KEY_TRACK_TYPE](#oh_md_key_track_type) | const char \*<br/>为媒体播放框架提供统一的字符描述符。 |
| [OH_MD_KEY_CODEC_MIME](#oh_md_key_codec_mime) | const char \*<br/>mime类型的字符描述符,值类型为string |
| [OH_MD_KEY_DURATION](#oh_md_key_duration) | const char \*<br/>duration的字符描述符,值类型为int64_t |
| [OH_MD_KEY_BITRATE](#oh_md_key_bitrate) | const char \*<br/>比特率的字符描述符,值类型为uint32_t |
| [OH_MD_KEY_MAX_INPUT_SIZE](#oh_md_key_max_input_size) | const char \*<br/>最大输入尺寸的字符描述符,值类型为uint32_t |
| [OH_MD_KEY_WIDTH](#oh_md_key_width) | const char \*<br/>视频宽度的字符描述符,值类型为uint32_t |
| [OH_MD_KEY_HEIGHT](#oh_md_key_height) | const char \*<br/>视频高度的字符描述符,值类型为uint32_t |
| [OH_MD_KEY_PIXEL_FORMAT](#oh_md_key_pixel_format) | const char \*<br/>视频像素格式的字符描述符,值类型为int32_t,具体见[OH_AVPixelFormat](_core.md#oh_avpixelformat) |
| [OH_MD_KEY_AUDIO_SAMPLE_FORMAT](#oh_md_key_audio_sample_format) | const char \*<br/>音频采样格式的字符描述符,值类型为uint32_t |
| [OH_MD_KEY_FRAME_RATE](#oh_md_key_frame_rate) | const char \*<br/>视频帧率的字符描述符,值类型为double |
| [OH_MD_KEY_VIDEO_ENCODE_BITRATE_MODE](#oh_md_key_video_encode_bitrate_mode) | const char \*<br/>视频编码比特率模式的字符描述符,值类型为int32_t,具体见[OH_VideoEncodeBitrateMode](_video_encoder.md#oh_videoencodebitratemode) |
| [OH_MD_KEY_PROFILE](#oh_md_key_profile) | const char \*<br/>音视频编码能力的字符描述符,值类型为int32_t,具体见[OH_AVCProfile](#oh_avcprofile)[OH_AACProfile](#oh_aacprofile) |
| [OH_MD_KEY_AUD_CHANNEL_COUNT](#oh_md_key_aud_channel_count) | const char \*<br/>音频声道数的字符描述符,值类型为uint32_t |
| [OH_MD_KEY_AUD_SAMPLE_RATE](#oh_md_key_aud_sample_rate) | const char \*<br/>音频采样率的字符描述符,值类型为uint32_t |
| [OH_MD_KEY_I_FRAME_INTERVAL](#oh_md_key_i_frame_interval) | const char \*<br/>I帧间隔时长的字符描述符,值类型为int32_t,单位是毫秒 |
| [OH_MD_KEY_ROTATION](#oh_md_key_rotation) | const char \*<br/>surface旋转角度的字符描述符,值类型为int32_t,限于{0, 90, 180, 270},默认值为0 |
| [OH_AVCodecBufferAttr::pts](#pts) | 以微秒为单位表示的该Buffer的Presentation时间戳 |
| [OH_AVCodecBufferAttr::size](#size) | 以字节为单位表示的该Buffer内所包含数据的大小 |
| [OH_AVCodecBufferAttr::offset](#offset) | 有效数据在该Buffer内的起始偏移量 |
| [OH_AVCodecBufferAttr::flags](#flags) | u该Buffer具有的标记,也是多个[OH_AVCodecBufferFlags](#oh_avcodecbufferflags)的组合 |
| [OH_AVCODEC_MIMETYPE_VIDEO_AVC](#oh_avcodec_mimetype_video_avc) | AVC视频编解码器的MIME类型。 |
| [OH_AVCODEC_MIMETYPE_AUDIO_AAC](#oh_avcodec_mimetype_audio_aac) | AAC音频编解码器的MIME类型。 |
| [OH_ED_KEY_TIME_STAMP](#oh_ed_key_time_stamp) | 提供统一的surface Buffer附属数据的字符描述符。 |
| [OH_ED_KEY_EOS](#oh_ed_key_eos) | surface附属数据中结束流的字符描述符,值类型为bool |
| [OH_MD_KEY_TRACK_TYPE](#oh_md_key_track_type) | 为媒体播放框架提供统一的字符描述符。 |
| [OH_MD_KEY_CODEC_MIME](#oh_md_key_codec_mime) | mime类型的字符描述符,值类型为string |
| [OH_MD_KEY_DURATION](#oh_md_key_duration) | duration的字符描述符,值类型为int64_t |
| [OH_MD_KEY_BITRATE](#oh_md_key_bitrate) | 比特率的字符描述符,值类型为uint32_t |
| [OH_MD_KEY_MAX_INPUT_SIZE](#oh_md_key_max_input_size) | 最大输入尺寸的字符描述符,值类型为uint32_t |
| [OH_MD_KEY_WIDTH](#oh_md_key_width) | 视频宽度的字符描述符,值类型为uint32_t |
| [OH_MD_KEY_HEIGHT](#oh_md_key_height) | 视频高度的字符描述符,值类型为uint32_t |
| [OH_MD_KEY_PIXEL_FORMAT](#oh_md_key_pixel_format) | 视频像素格式的字符描述符,值类型为int32_t,具体见[OH_AVPixelFormat](_core.md#oh_avpixelformat) |
| [OH_MD_KEY_AUDIO_SAMPLE_FORMAT](#oh_md_key_audio_sample_format) | 音频采样格式的字符描述符,值类型为uint32_t |
| [OH_MD_KEY_FRAME_RATE](#oh_md_key_frame_rate) | 视频帧率的字符描述符,值类型为double |
| [OH_MD_KEY_VIDEO_ENCODE_BITRATE_MODE](#oh_md_key_video_encode_bitrate_mode) | 视频编码比特率模式的字符描述符,值类型为int32_t,具体见[OH_VideoEncodeBitrateMode](_video_encoder.md#oh_videoencodebitratemode) |
| [OH_MD_KEY_PROFILE](#oh_md_key_profile) | 音视频编码能力的字符描述符,值类型为int32_t,具体见[OH_AVCProfile](#oh_avcprofile)[OH_AACProfile](#oh_aacprofile) |
| [OH_MD_KEY_AUD_CHANNEL_COUNT](#oh_md_key_aud_channel_count) | 音频声道数的字符描述符,值类型为uint32_t |
| [OH_MD_KEY_AUD_SAMPLE_RATE](#oh_md_key_aud_sample_rate) | 音频采样率的字符描述符,值类型为uint32_t |
| [OH_MD_KEY_I_FRAME_INTERVAL](#oh_md_key_i_frame_interval) | I帧间隔时长的字符描述符,值类型为int32_t,单位是毫秒 |
| [OH_MD_KEY_ROTATION](#oh_md_key_rotation) | surface旋转角度的字符描述符,值类型为int32_t,限于{0, 90, 180, 270},默认值为0 |
## 类型定义说明
......
......@@ -17,19 +17,17 @@ Core模块提供用于播放框架的基础骨干能力,包含内存、错误
| 名称 | 描述 |
| -------- | -------- |
| [native_averrors.h](native__averrors_8h.md) | 声明了媒体播放框架的错误码。 |
| [native_avformat.h](native__avformat_8h.md) | 声明了格式相关的函数和枚举。 |
| [native_avmemory.h](native__avmemory_8h.md) | 声明了AVMemory的函数接口。 |
| [native_averrors.h](native__averrors_8h.md) | 声明了媒体播放框架的错误码。<br>引用文件:<multimedia/player_framework/native_averrors.h> |
| [native_avformat.h](native__avformat_8h.md) | 声明了格式相关的函数和枚举。<br>引用文件:<multimedia/player_framework/native_avformat.h> |
| [native_avmemory.h](native__avmemory_8h.md) | 声明了AVMemory的函数接口。<br>引用文件:<multimedia/player_framework/native_avmemory.h> |
### 类型定义
| 名称 | 描述 |
| -------- | -------- |
| [OH_AVErrCode](#oh_averrcode) | typedef enum [OH_AVErrCode](#oh_averrcode)<br/>音视频错误码。 |
| **OH_AVFormat** | typedef struct OH_AVFormat |
| [OH_AVPixelFormat](#oh_avpixelformat) | typedef enum [OH_AVPixelFormat](#oh_avpixelformat)<br/>AVPixel 格式的枚举。 |
| **OH_AVMemory** | typedef struct OH_AVMemory |
| [OH_AVErrCode](#oh_averrcode) | 音视频错误码。 |
| [OH_AVPixelFormat](#oh_avpixelformat) | AVPixel 格式的枚举。 |
### 枚举
......@@ -44,24 +42,24 @@ Core模块提供用于播放框架的基础骨干能力,包含内存、错误
| 名称 | 描述 |
| -------- | -------- |
| [OH_AVFormat_Create](#oh_avformat_create) (void) | struct OH_AVFormat \*<br/>创建一个OH_AVFormat句柄指针,用以读写数据。 |
| [OH_AVFormat_Destroy](#oh_avformat_destroy) (struct OH_AVFormat \*format) | void<br/>销毁指定OH_AVFormat句柄资源。 |
| [OH_AVFormat_Copy](#oh_avformat_copy) (struct OH_AVFormat \*to, struct OH_AVFormat \*from) | bool<br/>拷贝OH_AVFormat句柄资源. |
| [OH_AVFormat_SetIntValue](#oh_avformat_setintvalue) (struct OH_AVFormat \*format, const char \*key, int32_t value) | bool<br/>向OH_AVFormat写入Int数据. |
| [OH_AVFormat_SetLongValue](#oh_avformat_setlongvalue) (struct OH_AVFormat \*format, const char \*key, int64_t value) | bool<br/>向OH_AVFormat写入Long数据。 |
| [OH_AVFormat_SetFloatValue](#oh_avformat_setfloatvalue) (struct OH_AVFormat \*format, const char \*key, float value) | bool<br/>向OH_AVFormat写入Float数据。 |
| [OH_AVFormat_SetDoubleValue](#oh_avformat_setdoublevalue) (struct OH_AVFormat \*format, const char \*key, double value) | bool<br/>向OH_AVFormat写入Double数据。 |
| [OH_AVFormat_SetStringValue](#oh_avformat_setstringvalue) (struct OH_AVFormat \*format, const char \*key, const char \*value) | bool<br/>向OH_AVFormat写入String数据。 |
| [OH_AVFormat_SetBuffer](#oh_avformat_setbuffer) (struct OH_AVFormat \*format, const char \*key, const uint8_t \*addr, size_t size) | bool<br/>向OH_AVFormat写入一块指定长度的数据。 |
| [OH_AVFormat_GetIntValue](#oh_avformat_getintvalue) (struct OH_AVFormat \*format, const char \*key, int32_t \*out) | bool<br/>从OH_AVFormat读取Int数据。 |
| [OH_AVFormat_GetLongValue](#oh_avformat_getlongvalue) (struct OH_AVFormat \*format, const char \*key, int64_t \*out) | bool<br/>从OH_AVFormat读取Long数据。 |
| [OH_AVFormat_GetFloatValue](#oh_avformat_getfloatvalue) (struct OH_AVFormat \*format, const char \*key, float \*out) | bool<br/>从OH_AVFormat读取Float数据。 |
| [OH_AVFormat_GetDoubleValue](#oh_avformat_getdoublevalue) (struct OH_AVFormat \*format, const char \*key, double \*out) | bool<br/>从OH_AVFormat读取Double数据。 |
| [OH_AVFormat_GetStringValue](#oh_avformat_getstringvalue) (struct OH_AVFormat \*format, const char \*key, const char \*\*out) | bool<br/>从OH_AVFormat读取Double数据。 |
| [OH_AVFormat_GetBuffer](#oh_avformat_getbuffer) (struct OH_AVFormat \*format, const char \*key, uint8_t \*\*addr, size_t \*size) | bool<br/>从OH_AVFormat读取一块指定长度的数据。 |
| [OH_AVFormat_DumpInfo](#oh_avformat_dumpinfo) (struct OH_AVFormat \*format) | const char \*<br/>以字符串的形式输出OH_AVFormat所包含的信息。 |
| [OH_AVMemory_GetAddr](#oh_avmemory_getaddr) (struct OH_AVMemory \*mem) | uint8_t \*<br/>获取入参的内存虚拟地址。 |
| [OH_AVMemory_GetSize](#oh_avmemory_getsize) (struct OH_AVMemory \*mem) | int32_t<br/>获取入参的内存长度。 |
| [OH_AVFormat_Create](#oh_avformat_create) (void) | 创建一个OH_AVFormat句柄指针,用以读写数据。 |
| [OH_AVFormat_Destroy](#oh_avformat_destroy) (struct OH_AVFormat \*format) | 销毁指定OH_AVFormat句柄资源。 |
| [OH_AVFormat_Copy](#oh_avformat_copy) (struct OH_AVFormat \*to, struct OH_AVFormat \*from) | 拷贝OH_AVFormat句柄资源. |
| [OH_AVFormat_SetIntValue](#oh_avformat_setintvalue) (struct OH_AVFormat \*format, const char \*key, int32_t value) | 向OH_AVFormat写入Int数据. |
| [OH_AVFormat_SetLongValue](#oh_avformat_setlongvalue) (struct OH_AVFormat \*format, const char \*key, int64_t value) | 向OH_AVFormat写入Long数据。 |
| [OH_AVFormat_SetFloatValue](#oh_avformat_setfloatvalue) (struct OH_AVFormat \*format, const char \*key, float value) | 向OH_AVFormat写入Float数据。 |
| [OH_AVFormat_SetDoubleValue](#oh_avformat_setdoublevalue) (struct OH_AVFormat \*format, const char \*key, double value) | 向OH_AVFormat写入Double数据。 |
| [OH_AVFormat_SetStringValue](#oh_avformat_setstringvalue) (struct OH_AVFormat \*format, const char \*key, const char \*value) | 向OH_AVFormat写入String数据。 |
| [OH_AVFormat_SetBuffer](#oh_avformat_setbuffer) (struct OH_AVFormat \*format, const char \*key, const uint8_t \*addr, size_t size) | 向OH_AVFormat写入一块指定长度的数据。 |
| [OH_AVFormat_GetIntValue](#oh_avformat_getintvalue) (struct OH_AVFormat \*format, const char \*key, int32_t \*out) | 从OH_AVFormat读取Int数据。 |
| [OH_AVFormat_GetLongValue](#oh_avformat_getlongvalue) (struct OH_AVFormat \*format, const char \*key, int64_t \*out) | 从OH_AVFormat读取Long数据。 |
| [OH_AVFormat_GetFloatValue](#oh_avformat_getfloatvalue) (struct OH_AVFormat \*format, const char \*key, float \*out) | 从OH_AVFormat读取Float数据。 |
| [OH_AVFormat_GetDoubleValue](#oh_avformat_getdoublevalue) (struct OH_AVFormat \*format, const char \*key, double \*out) | 从OH_AVFormat读取Double数据。 |
| [OH_AVFormat_GetStringValue](#oh_avformat_getstringvalue) (struct OH_AVFormat \*format, const char \*key, const char \*\*out) | 从OH_AVFormat读取Double数据。 |
| [OH_AVFormat_GetBuffer](#oh_avformat_getbuffer) (struct OH_AVFormat \*format, const char \*key, uint8_t \*\*addr, size_t \*size) | 从OH_AVFormat读取一块指定长度的数据。 |
| [OH_AVFormat_DumpInfo](#oh_avformat_dumpinfo) (struct OH_AVFormat \*format) | 以字符串的形式输出OH_AVFormat所包含的信息。 |
| [OH_AVMemory_GetAddr](#oh_avmemory_getaddr) (struct OH_AVMemory \*mem) | 获取入参的内存虚拟地址。 |
| [OH_AVMemory_GetSize](#oh_avmemory_getsize) (struct OH_AVMemory \*mem) | 获取入参的内存长度。 |
## 类型定义说明
......
......@@ -23,16 +23,16 @@ Drawing模块提供包括2D图形渲染、文字绘制和图片显示等功能
| 文件名称 | 描述 |
| ------------------------------------------------------------ | ------------------------------------------------------------ |
| [drawing_bitmap.h](drawing__bitmap_8h.md) | 文件中定义了与位图相关的功能函数。 |
| [drawing_brush.h](drawing__brush_8h.md) | 文件中定义了与画刷相关的功能函数。 |
| [drawing_canvas.h](drawing__canvas_8h.md) | 文件中定义了与画布相关的功能函数。 |
| [drawing_color.h](drawing__color_8h.md) | 文件中定义了与颜色相关的功能函数。 |
| [drawing_font_collection.h](drawing__font__collection_8h.md) | 定义绘制模块中与fontCollection相关的函数。 |
| [drawing_path.h](drawing__path_8h.md) | 文件中定义了与自定义路径相关的功能函数。 |
| [drawing_pen.h](drawing__pen_8h.md) | 文件中定义了与画笔相关的功能函数。 |
| [drawing_text_declaration.h](drawing__text__declaration_8h.md) | 提供2d drawing文本相关的数据结构声明。 |
| [drawing_text_typography.h](drawing__text__typography_8h.md) | 定义绘制模块中排版相关的函数。 |
| [drawing_types.h](drawing__types_8h.md) | 文件中定义了用于绘制2d图形的数据类型,包括画布、画笔、画刷、位图和路径。 |
| [drawing_bitmap.h](drawing__bitmap_8h.md) | 文件中定义了与位图相关的功能函数。<br>引用文件:<native_drawing/drawing_bitmap.h> |
| [drawing_brush.h](drawing__brush_8h.md) | 文件中定义了与画刷相关的功能函数。<br>引用文件:<native_drawing/drawing_brush.h> |
| [drawing_canvas.h](drawing__canvas_8h.md) | 文件中定义了与画布相关的功能函数。<br>引用文件:<native_drawing/drawing_canvas.h> |
| [drawing_color.h](drawing__color_8h.md) | 文件中定义了与颜色相关的功能函数。<br>引用文件:<native_drawing/drawing_color.h> |
| [drawing_font_collection.h](drawing__font__collection_8h.md) | 定义绘制模块中与fontCollection相关的函数。<br>引用文件:<native_drawing/drawing_font_collection.h> |
| [drawing_path.h](drawing__path_8h.md) | 文件中定义了与自定义路径相关的功能函数。<br>引用文件:<native_drawing/drawing_path.h> |
| [drawing_pen.h](drawing__pen_8h.md) | 文件中定义了与画笔相关的功能函数。<br>引用文件:<native_drawing/drawing_pen.h> |
| [drawing_text_declaration.h](drawing__text__declaration_8h.md) | 提供2d drawing文本相关的数据结构声明。<br>引用文件:<native_drawing/drawing_text_declaration.h> |
| [drawing_text_typography.h](drawing__text__typography_8h.md) | 定义绘制模块中排版相关的函数。<br>引用文件:<native_drawing/drawing_text_typography.h> |
| [drawing_types.h](drawing__types_8h.md) | 文件中定义了用于绘制2d图形的数据类型,包括画布、画笔、画刷、位图和路径。<br>引用文件:<native_drawing/drawing_types.h> |
### 结构体
......
......@@ -23,7 +23,7 @@ HiLog模块实现日志打印功能。
| 文件名称 | 描述 |
| -------- | -------- |
| [log.h](log_8h.md) | HiLog模块日志接口定义,通过这些接口实现日志打印相关功能。 |
| [log.h](log_8h.md) | HiLog模块日志接口定义,通过这些接口实现日志打印相关功能。<br>引用文件:<hilog/log.h> |
### 宏定义
......
......@@ -17,26 +17,26 @@
| 名称 | 描述 |
| -------- | -------- |
| [native_huks_api.h](native__huks__api_8h.md) | 声明用于访问HUKS的API。 |
| [native_huks_api.h](native__huks__api_8h.md) | 声明用于访问HUKS的API。<br>引用文件:<huks/native_huks/api.h> |
### 函数
| 名称 | 描述 |
| -------- | -------- |
| [OH_Huks_GetSdkVersion](#oh_huks_getsdkversion) (struct [OH_Huks_Blob](_o_h___huks___blob.md) \*sdkVersion) | struct [OH_Huks_Result](_o_h___huks___result.md)<br/>获取当前Huks sdk版本号。 |
| [OH_Huks_GenerateKeyItem](#oh_huks_generatekeyitem) (const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*keyAlias, const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSetIn, struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSetOut) | struct [OH_Huks_Result](_o_h___huks___result.md)<br/>生成密钥。 |
| [OH_Huks_ImportKeyItem](#oh_huks_importkeyitem) (const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*keyAlias, const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet, const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*key) | struct [OH_Huks_Result](_o_h___huks___result.md)<br/>导入明文密钥。 |
| [OH_Huks_ImportWrappedKeyItem](#oh_huks_importwrappedkeyitem) (const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*keyAlias, const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*wrappingKeyAlias, const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet, const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*wrappedKeyData) | struct [OH_Huks_Result](_o_h___huks___result.md)<br/>导入密文密钥。 |
| [OH_Huks_ExportPublicKeyItem](#oh_huks_exportpublickeyitem) (const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*keyAlias, const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet, struct [OH_Huks_Blob](_o_h___huks___blob.md) \*key) | struct [OH_Huks_Result](_o_h___huks___result.md)<br/>导出公钥。 |
| [OH_Huks_DeleteKeyItem](#oh_huks_deletekeyitem) (const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*keyAlias, const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet) | struct [OH_Huks_Result](_o_h___huks___result.md)<br/>删除密钥。 |
| [OH_Huks_GetKeyItemParamSet](#oh_huks_getkeyitemparamset) (const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*keyAlias, const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSetIn, struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSetOut) | struct [OH_Huks_Result](_o_h___huks___result.md)<br/>获取密钥的属性集。 |
| [OH_Huks_IsKeyItemExist](#oh_huks_iskeyitemexist) (const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*keyAlias, const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet) | struct [OH_Huks_Result](_o_h___huks___result.md)<br/>判断密钥是否存在。 |
| [OH_Huks_AttestKeyItem](#oh_huks_attestkeyitem) (const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*keyAlias, const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet, struct [OH_Huks_CertChain](_o_h___huks___cert_chain.md) \*certChain) | struct [OH_Huks_Result](_o_h___huks___result.md)<br/>获取密钥证书链。 |
| [OH_Huks_InitSession](#oh_huks_initsession) (const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*keyAlias, const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet, struct [OH_Huks_Blob](_o_h___huks___blob.md) \*handle, struct [OH_Huks_Blob](_o_h___huks___blob.md) \*challenge) | struct [OH_Huks_Result](_o_h___huks___result.md)<br/>初始化密钥会话接口,并获取一个句柄(必选)和挑战值(可选)。 |
| [OH_Huks_UpdateSession](#oh_huks_updatesession) (const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*handle, const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet, const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*inData, struct [OH_Huks_Blob](_o_h___huks___blob.md) \*outData) | struct [OH_Huks_Result](_o_h___huks___result.md)<br/>分段添加密钥操作的数据并进行相应的密钥操作,输出处理数据。 |
| [OH_Huks_FinishSession](#oh_huks_finishsession) (const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*handle, const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet, const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*inData, struct [OH_Huks_Blob](_o_h___huks___blob.md) \*outData) | struct [OH_Huks_Result](_o_h___huks___result.md)<br/>结束密钥会话并进行相应的密钥操作,输出处理数据。 |
| [OH_Huks_AbortSession](#oh_huks_abortsession) (const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*handle, const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet) | struct [OH_Huks_Result](_o_h___huks___result.md)<br/>取消密钥会话。 |
| [OH_Huks_GetSdkVersion](#oh_huks_getsdkversion) (struct [OH_Huks_Blob](_o_h___huks___blob.md) \*sdkVersion) | 获取当前Huks sdk版本号。 |
| [OH_Huks_GenerateKeyItem](#oh_huks_generatekeyitem) (const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*keyAlias, const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSetIn, struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSetOut) | 生成密钥。 |
| [OH_Huks_ImportKeyItem](#oh_huks_importkeyitem) (const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*keyAlias, const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet, const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*key) | 导入明文密钥。 |
| [OH_Huks_ImportWrappedKeyItem](#oh_huks_importwrappedkeyitem) (const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*keyAlias, const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*wrappingKeyAlias, const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet, const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*wrappedKeyData) | 导入密文密钥。 |
| [OH_Huks_ExportPublicKeyItem](#oh_huks_exportpublickeyitem) (const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*keyAlias, const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet, struct [OH_Huks_Blob](_o_h___huks___blob.md) \*key) | 导出公钥。 |
| [OH_Huks_DeleteKeyItem](#oh_huks_deletekeyitem) (const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*keyAlias, const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet) | 删除密钥。 |
| [OH_Huks_GetKeyItemParamSet](#oh_huks_getkeyitemparamset) (const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*keyAlias, const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSetIn, struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSetOut) | 获取密钥的属性集。 |
| [OH_Huks_IsKeyItemExist](#oh_huks_iskeyitemexist) (const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*keyAlias, const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet) | 判断密钥是否存在。 |
| [OH_Huks_AttestKeyItem](#oh_huks_attestkeyitem) (const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*keyAlias, const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet, struct [OH_Huks_CertChain](_o_h___huks___cert_chain.md) \*certChain) | 获取密钥证书链。 |
| [OH_Huks_InitSession](#oh_huks_initsession) (const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*keyAlias, const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet, struct [OH_Huks_Blob](_o_h___huks___blob.md) \*handle, struct [OH_Huks_Blob](_o_h___huks___blob.md) \*token) | 初始化密钥会话接口,并获取一个句柄(必选)和挑战值(可选)。 |
| [OH_Huks_UpdateSession](#oh_huks_updatesession) (const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*handle, const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet, const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*inData, struct [OH_Huks_Blob](_o_h___huks___blob.md) \*outData) | 分段添加密钥操作的数据并进行相应的密钥操作,输出处理数据。 |
| [OH_Huks_FinishSession](#oh_huks_finishsession) (const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*handle, const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet, const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*inData, struct [OH_Huks_Blob](_o_h___huks___blob.md) \*outData) | 结束密钥会话并进行相应的密钥操作,输出处理数据。 |
| [OH_Huks_AbortSession](#oh_huks_abortsession) (const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*handle, const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet) | 取消密钥会话。 |
## 函数说明
......@@ -280,7 +280,7 @@ struct OH_Huks_Result OH_Huks_ImportWrappedKeyItem (const struct OH_Huks_Blob *
```
struct OH_Huks_Result OH_Huks_InitSession (const struct OH_Huks_Blob * keyAlias, const struct OH_Huks_ParamSet * paramSet, struct OH_Huks_Blob * handle, struct OH_Huks_Blob * challenge )
struct OH_Huks_Result OH_Huks_InitSession (const struct OH_Huks_Blob * keyAlias, const struct OH_Huks_ParamSet * paramSet, struct OH_Huks_Blob * handle, struct OH_Huks_Blob * token )
```
**描述:**
初始化密钥会话接口,并获取一个句柄(必选)和挑战值(可选)。
......@@ -292,7 +292,7 @@ struct OH_Huks_Result OH_Huks_InitSession (const struct OH_Huks_Blob * keyAlias,
| keyAlias | 操作的密钥的别名。 |
| paramSet | 初始化操作的密钥参数集合。 |
| handle | 密钥会话的句柄,后续其他操作时传入该句柄,包括[OH_Huks_UpdateSession](#oh_huks_updatesession), [OH_Huks_FinishSession](#oh_huks_finishsession), [OH_Huks_AbortSession](#oh_huks_abortsession)。 |
| challenge | 存放安全访问控制时传回的challenge |
| token | 存放安全访问控制时传回的token |
**返回:**
......
......@@ -18,23 +18,23 @@
| 名称 | 描述 |
| -------- | -------- |
| [native_huks_param.h](native__huks__param_8h.md) | 提供参数集构造、使用和销毁的API。 |
| [native_huks_param.h](native__huks__param_8h.md) | 提供参数集构造、使用和销毁的API。<br>引用文件:<huks/native_huks/native_huks_param.h> |
### 函数
| 名称 | 描述 |
| -------- | -------- |
| [OH_Huks_InitParamSet](#oh_huks_initparamset) (struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*\*paramSet) | int32_t<br/>初始化参数集。 |
| [OH_Huks_AddParams](#oh_huks_addparams) (struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet, const struct [OH_Huks_Param](_o_h___huks___param.md) \*params, uint32_t paramCnt) | int32_t<br/>添加参数到参数集里面。 |
| [OH_Huks_BuildParamSet](#oh_huks_buildparamset) (struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*\*paramSet) | int32_t<br/>构造正式的参数集。 |
| [OH_Huks_FreeParamSet](#oh_huks_freeparamset) (struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*\*paramSet) | void<br/>销毁参数集。 |
| [OH_Huks_CopyParamSet](#oh_huks_copyparamset) (const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*fromParamSet, uint32_t fromParamSetSize, struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*\*paramSet) | int32_t<br/>复制参数集(深拷贝)。 |
| [OH_Huks_GetParam](#oh_huks_getparam) (const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet, uint32_t tag, struct [OH_Huks_Param](_o_h___huks___param.md) \*\*param) | int32_t<br/>从参数集中获取参数。 |
| [OH_Huks_FreshParamSet](#oh_huks_freshparamset) (struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet, bool isCopy) | int32_t<br/>刷新(复制)参数集内Blob类型的数据到参数集内。 |
| [OH_Huks_isParamSetTagValid](#oh_huks_isparamsettagvalid) (const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet) | int32_t<br/>检查参数集中的参数是否有效、是否有重复。 |
| [OH_Huks_isParamSetValid](#oh_huks_isparamsetvalid) (const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet, uint32_t size) | int32_t<br/>检查参数集大小是否有效。 |
| [OH_Huks_CheckParamMatch](#oh_huks_checkparammatch) (const struct [OH_Huks_Param](_o_h___huks___param.md) \*baseParam, const struct [OH_Huks_Param](_o_h___huks___param.md) \*param) | int32_t<br/>比较两个参数是否相同 |
| [OH_Huks_InitParamSet](#oh_huks_initparamset) (struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*\*paramSet) | 初始化参数集。 |
| [OH_Huks_AddParams](#oh_huks_addparams) (struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet, const struct [OH_Huks_Param](_o_h___huks___param.md) \*params, uint32_t paramCnt) | 添加参数到参数集里面。 |
| [OH_Huks_BuildParamSet](#oh_huks_buildparamset) (struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*\*paramSet) | 构造正式的参数集。 |
| [OH_Huks_FreeParamSet](#oh_huks_freeparamset) (struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*\*paramSet) | 销毁参数集。 |
| [OH_Huks_CopyParamSet](#oh_huks_copyparamset) (const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*fromParamSet, uint32_t fromParamSetSize, struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*\*paramSet) | 复制参数集(深拷贝)。 |
| [OH_Huks_GetParam](#oh_huks_getparam) (const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet, uint32_t tag, struct [OH_Huks_Param](_o_h___huks___param.md) \*\*param) | 从参数集中获取参数。 |
| [OH_Huks_FreshParamSet](#oh_huks_freshparamset) (struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet, bool isCopy) | 刷新(复制)参数集内Blob类型的数据到参数集内。 |
| [OH_Huks_isParamSetTagValid](#oh_huks_isparamsettagvalid) (const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet) | 检查参数集中的参数是否有效、是否有重复。 |
| [OH_Huks_isParamSetValid](#oh_huks_isparamsetvalid) (const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet, uint32_t size) | 检查参数集大小是否有效。 |
| [OH_Huks_CheckParamMatch](#oh_huks_checkparammatch) (const struct [OH_Huks_Param](_o_h___huks___param.md) \*baseParam, const struct [OH_Huks_Param](_o_h___huks___param.md) \*param) | 比较两个参数是否相同 |
## 函数说明
......
......@@ -18,47 +18,47 @@
| 名称 | 描述 |
| -------- | -------- |
| [native_huks_type.h](native__huks__type_8h.md) | 提供huks中的枚举变量、结构体定义与宏定义。 |
| [native_huks_type.h](native__huks__type_8h.md) | 提供huks中的枚举变量、结构体定义与宏定义。<br>引用文件:<huks/native_huks/native_huks_type.h> |
### 结构体
| 名称 | 描述 |
| -------- | -------- |
| [OH_Huks_Result](_o_h___huks___result.md) | struct<br/>表示状态返回数据,包括返回码和消息。 |
| [OH_Huks_Blob](_o_h___huks___blob.md) | struct<br/>定义存放数据的结构体类型。 |
| [OH_Huks_Param](_o_h___huks___param.md) | struct<br/>定义参数集中的参数结构体类型。 |
| [OH_Huks_ParamSet](_o_h___huks___param_set.md) | struct<br/>定义参数集的结构体类型。 |
| [OH_Huks_CertChain](_o_h___huks___cert_chain.md) | struct<br/>定义证书链的结构体类型。 |
| [OH_Huks_KeyInfo](_o_h___huks___key_info.md) | struct<br/>定义密钥信息的结构体类型。 |
| [OH_Huks_PubKeyInfo](_o_h___huks___pub_key_info.md) | struct<br/>定义公钥信息的结构体类型。 |
| [OH_Huks_KeyMaterialRsa](_o_h___huks___key_material_rsa.md) | struct<br/>定义Rsa密钥的结构体类型。 |
| [OH_Huks_KeyMaterialEcc](_o_h___huks___key_material_ecc.md) | struct<br/>定义Ecc密钥的结构体类型。 |
| [OH_Huks_KeyMaterialDsa](_o_h___huks___key_material_dsa.md) | struct<br/>定义Dsa密钥的结构体类型。 |
| [OH_Huks_KeyMaterialDh](_o_h___huks___key_material_dh.md) | struct<br/>定义Dh密钥的结构体类型。 |
| [OH_Huks_KeyMaterial25519](_o_h___huks___key_material25519.md) | struct<br/>定义25519类型密钥的结构体类型。 |
| [OH_Huks_Result](_o_h___huks___result.md) | 表示状态返回数据,包括返回码和消息。 |
| [OH_Huks_Blob](_o_h___huks___blob.md) | 定义存放数据的结构体类型。 |
| [OH_Huks_Param](_o_h___huks___param.md) | 定义参数集中的参数结构体类型。 |
| [OH_Huks_ParamSet](_o_h___huks___param_set.md) | 定义参数集的结构体类型。 |
| [OH_Huks_CertChain](_o_h___huks___cert_chain.md) | 定义证书链的结构体类型。 |
| [OH_Huks_KeyInfo](_o_h___huks___key_info.md) | 定义密钥信息的结构体类型。 |
| [OH_Huks_PubKeyInfo](_o_h___huks___pub_key_info.md) | 定义公钥信息的结构体类型。 |
| [OH_Huks_KeyMaterialRsa](_o_h___huks___key_material_rsa.md) | 定义Rsa密钥的结构体类型。 |
| [OH_Huks_KeyMaterialEcc](_o_h___huks___key_material_ecc.md) | 定义Ecc密钥的结构体类型。 |
| [OH_Huks_KeyMaterialDsa](_o_h___huks___key_material_dsa.md) | 定义Dsa密钥的结构体类型。 |
| [OH_Huks_KeyMaterialDh](_o_h___huks___key_material_dh.md) | 定义Dh密钥的结构体类型。 |
| [OH_Huks_KeyMaterial25519](_o_h___huks___key_material25519.md) | 定义25519类型密钥的结构体类型。 |
### 宏定义
| 名称 | 描述 |
| 名称 | |
| -------- | -------- |
| **OH_HUKS_AE_TAG_LEN** 16 | |
| **OH_HUKS_BITS_PER_BYTE** 8 | |
| **OH_HUKS_MAX_KEY_SIZE** 2048 | |
| **OH_HUKS_AE_NONCE_LEN** 12 | |
| **OH_HUKS_MAX_KEY_ALIAS_LEN** 64 | |
| **OH_HUKS_MAX_PROCESS_NAME_LEN** 50 | |
| **OH_HUKS_MAX_RANDOM_LEN** 1024 | |
| **OH_HUKS_SIGNATURE_MIN_SIZE** 64 | |
| **OH_HUKS_MAX_OUT_BLOB_SIZE** (5 \* 1024 \* 1024) | |
| **OH_HUKS_WRAPPED_FORMAT_MAX_SIZE** (1024 \* 1024) | |
| **OH_HUKS_IMPORT_WRAPPED_KEY_TOTAL_BLOBS** 10 | |
| **TOKEN_CHALLENGE_LEN** 32 | |
| **SHA256_SIGN_LEN** 32 | |
| **TOKEN_SIZE** 32 | |
| **MAX_AUTH_TIMEOUT_SECOND** 60 | |
| **SECURE_SIGN_VERSION** 0x01000001 | |
| **OH_HUKS_AE_TAG_LEN** | 16 |
| **OH_HUKS_BITS_PER_BYTE** | 8|
| **OH_HUKS_MAX_KEY_SIZE** | 2048 |
| **OH_HUKS_AE_NONCE_LEN** | 12 |
| **OH_HUKS_MAX_KEY_ALIAS_LEN** | 64 |
| **OH_HUKS_MAX_PROCESS_NAME_LEN** | 50 |
| **OH_HUKS_MAX_RANDOM_LEN** | 1024 |
| **OH_HUKS_SIGNATURE_MIN_SIZE** | 64 |
| **OH_HUKS_MAX_OUT_BLOB_SIZE** | (5 \* 1024 \* 1024) |
| **OH_HUKS_WRAPPED_FORMAT_MAX_SIZE** | (1024 \* 1024) |
| **OH_HUKS_IMPORT_WRAPPED_KEY_TOTAL_BLOBS** | 10 |
| **TOKEN_CHALLENGE_LEN** |32 |
| **SHA256_SIGN_LEN** | 32 |
| **TOKEN_SIZE** |32 |
| **MAX_AUTH_TIMEOUT_SECOND** | 60 |
| **SECURE_SIGN_VERSION** | 0x01000001 |
### 枚举
......@@ -83,7 +83,7 @@
| [OH_Huks_ChallengeType](#oh_huks_challengetype) { <br/>OH_HUKS_CHALLENGE_TYPE_NORMAL = 0, <br/>OH_HUKS_CHALLENGE_TYPE_CUSTOM = 1, <br/>OH_HUKS_CHALLENGE_TYPE_NONE = 2 <br/>} | 密钥使用时生成challenge的类型 |
| [OH_Huks_ChallengePosition](#oh_huks_challengeposition) { <br/>OH_HUKS_CHALLENGE_POS_0 = 0, <br/>OH_HUKS_CHALLENGE_POS_1, <br/>OH_HUKS_CHALLENGE_POS_2, <br/>OH_HUKS_CHALLENGE_POS_3 <br/>} | challenge类型为用户自定义类型时,生成的challenge有效长度仅为8字节连续的数据,且仅支持4种位置。 |
| [OH_Huks_SecureSignType](#oh_huks_securesigntype) { OH_HUKS_SECURE_SIGN_WITH_AUTHINFO = 1 } | 生成或导入密钥时,指定该密钥的安全签名类型。 |
| [OH_Huks_Tag](#oh_huks_tag) {<br/>OH_HUKS_TAG_INVALID = OH_HUKS_TAG_TYPE_INVALID \| 0, OH_HUKS_TAG_ALGORITHM = OH_HUKS_TAG_TYPE_UINT \| 1, OH_HUKS_TAG_PURPOSE = OH_HUKS_TAG_TYPE_UINT \| 2, OH_HUKS_TAG_KEY_SIZE = OH_HUKS_TAG_TYPE_UINT \| 3,<br/>OH_HUKS_TAG_DIGEST = OH_HUKS_TAG_TYPE_UINT \| 4, OH_HUKS_TAG_PADDING = OH_HUKS_TAG_TYPE_UINT \| 5, OH_HUKS_TAG_BLOCK_MODE = OH_HUKS_TAG_TYPE_UINT \| 6, OH_HUKS_TAG_KEY_TYPE = OH_HUKS_TAG_TYPE_UINT \| 7,<br/>OH_HUKS_TAG_ASSOCIATED_DATA = OH_HUKS_TAG_TYPE_BYTES \| 8, OH_HUKS_TAG_NONCE = OH_HUKS_TAG_TYPE_BYTES \| 9, OH_HUKS_TAG_IV = OH_HUKS_TAG_TYPE_BYTES \| 10, OH_HUKS_TAG_INFO = OH_HUKS_TAG_TYPE_BYTES \| 11,<br/>OH_HUKS_TAG_SALT = OH_HUKS_TAG_TYPE_BYTES \| 12, OH_HUKS_TAG_PWD = OH_HUKS_TAG_TYPE_BYTES \| 13, OH_HUKS_TAG_ITERATION = OH_HUKS_TAG_TYPE_UINT \| 14, OH_HUKS_TAG_KEY_GENERATE_TYPE = OH_HUKS_TAG_TYPE_UINT \| 15,<br/>OH_HUKS_TAG_DERIVE_MAIN_KEY = OH_HUKS_TAG_TYPE_BYTES \| 16, OH_HUKS_TAG_DERIVE_FACTOR = OH_HUKS_TAG_TYPE_BYTES \| 17, OH_HUKS_TAG_DERIVE_ALG = OH_HUKS_TAG_TYPE_UINT \| 18, OH_HUKS_TAG_AGREE_ALG = OH_HUKS_TAG_TYPE_UINT \| 19,<br/>OH_HUKS_TAG_AGREE_PUBLIC_KEY_IS_KEY_ALIAS = OH_HUKS_TAG_TYPE_BOOL \| 20, OH_HUKS_TAG_AGREE_PRIVATE_KEY_ALIAS = OH_HUKS_TAG_TYPE_BYTES \| 21, OH_HUKS_TAG_AGREE_PUBLIC_KEY = OH_HUKS_TAG_TYPE_BYTES \| 22, OH_HUKS_TAG_KEY_ALIAS = OH_HUKS_TAG_TYPE_BYTES \| 23,<br/>OH_HUKS_TAG_DERIVE_KEY_SIZE = OH_HUKS_TAG_TYPE_UINT \| 24, OH_HUKS_TAG_IMPORT_KEY_TYPE = OH_HUKS_TAG_TYPE_UINT \| 25, OH_HUKS_TAG_UNWRAP_ALGORITHM_SUITE = OH_HUKS_TAG_TYPE_UINT \| 26, OH_HUKS_TAG_ALL_USERS = OH_HUKS_TAG_TYPE_BOOL \| 301,<br/>OH_HUKS_TAG_USER_ID = OH_HUKS_TAG_TYPE_UINT \| 302, OH_HUKS_TAG_NO_AUTH_REQUIRED = OH_HUKS_TAG_TYPE_BOOL \| 303, OH_HUKS_TAG_USER_AUTH_TYPE = OH_HUKS_TAG_TYPE_UINT \| 304, OH_HUKS_TAG_AUTH_TIMEOUT = OH_HUKS_TAG_TYPE_UINT \| 305,<br/>OH_HUKS_TAG_AUTH_TOKEN = OH_HUKS_TAG_TYPE_BYTES \| 306, OH_HUKS_TAG_KEY_AUTH_ACCESS_TYPE = OH_HUKS_TAG_TYPE_UINT \| 307, OH_HUKS_TAG_KEY_SECURE_SIGN_TYPE = OH_HUKS_TAG_TYPE_UINT \| 308, OH_HUKS_TAG_CHALLENGE_TYPE = OH_HUKS_TAG_TYPE_UINT \| 309,<br/>OH_HUKS_TAG_CHALLENGE_POS = OH_HUKS_TAG_TYPE_UINT \| 310, OH_HUKS_TAG_ATTESTATION_CHALLENGE = OH_HUKS_TAG_TYPE_BYTES \| 501, OH_HUKS_TAG_ATTESTATION_APPLICATION_ID = OH_HUKS_TAG_TYPE_BYTES \| 502, OH_HUKS_TAG_ATTESTATION_ID_BRAND = OH_HUKS_TAG_TYPE_BYTES \| 503,<br/>OH_HUKS_TAG_ATTESTATION_ID_DEVICE = OH_HUKS_TAG_TYPE_BYTES \| 504, OH_HUKS_TAG_ATTESTATION_ID_PRODUCT = OH_HUKS_TAG_TYPE_BYTES \| 505, OH_HUKS_TAG_ATTESTATION_ID_SERIAL = OH_HUKS_TAG_TYPE_BYTES \| 506, OH_HUKS_TAG_ATTESTATION_ID_IMEI = OH_HUKS_TAG_TYPE_BYTES \| 507,<br/>OH_HUKS_TAG_ATTESTATION_ID_MEID = OH_HUKS_TAG_TYPE_BYTES \| 508, OH_HUKS_TAG_ATTESTATION_ID_MANUFACTURER = OH_HUKS_TAG_TYPE_BYTES \| 509, OH_HUKS_TAG_ATTESTATION_ID_MODEL = OH_HUKS_TAG_TYPE_BYTES \| 510, OH_HUKS_TAG_ATTESTATION_ID_ALIAS = OH_HUKS_TAG_TYPE_BYTES \| 511,<br/>OH_HUKS_TAG_ATTESTATION_ID_SOCID = OH_HUKS_TAG_TYPE_BYTES \| 512, OH_HUKS_TAG_ATTESTATION_ID_UDID = OH_HUKS_TAG_TYPE_BYTES \| 513, OH_HUKS_TAG_ATTESTATION_ID_SEC_LEVEL_INFO = OH_HUKS_TAG_TYPE_BYTES \| 514, OH_HUKS_TAG_ATTESTATION_ID_VERSION_INFO = OH_HUKS_TAG_TYPE_BYTES \| 515,<br/>OH_HUKS_TAG_IS_KEY_ALIAS = OH_HUKS_TAG_TYPE_BOOL \| 1001, OH_HUKS_TAG_KEY_STORAGE_FLAG = OH_HUKS_TAG_TYPE_UINT \| 1002, OH_HUKS_TAG_IS_ALLOWED_WRAP = OH_HUKS_TAG_TYPE_BOOL \| 1003, OH_HUKS_TAG_KEY_WRAP_TYPE = OH_HUKS_TAG_TYPE_UINT \| 1004,<br/>OH_HUKS_TAG_KEY_AUTH_ID = OH_HUKS_TAG_TYPE_BYTES \| 1005, OH_HUKS_TAG_KEY_ROLE = OH_HUKS_TAG_TYPE_UINT \| 1006, OH_HUKS_TAG_KEY_FLAG = OH_HUKS_TAG_TYPE_UINT \| 1007, OH_HUKS_TAG_IS_ASYNCHRONIZED = OH_HUKS_TAG_TYPE_UINT \| 1008,<br/>OH_HUKS_TAG_SECURE_KEY_ALIAS = OH_HUKS_TAG_TYPE_BOOL \| 1009, OH_HUKS_TAG_SECURE_KEY_UUID = OH_HUKS_TAG_TYPE_BYTES \| 1010, OH_HUKS_TAG_KEY_DOMAIN = OH_HUKS_TAG_TYPE_UINT \| 1011, OH_HUKS_TAG_SYMMETRIC_KEY_DATA = OH_HUKS_TAG_TYPE_BYTES \| 20001,<br/>OH_HUKS_TAG_ASYMMETRIC_PUBLIC_KEY_DATA = OH_HUKS_TAG_TYPE_BYTES \| 20002, OH_HUKS_TAG_ASYMMETRIC_PRIVATE_KEY_DATA = OH_HUKS_TAG_TYPE_BYTES \| 20003<br/>} | 参数集所用的TAG值枚举 |
| [OH_Huks_Tag](#oh_huks_tag) {<br/> OH_HUKS_TAG_ALGORITHM = OH_HUKS_TAG_TYPE_UINT \| 1, OH_HUKS_TAG_PURPOSE = OH_HUKS_TAG_TYPE_UINT \| 2, OH_HUKS_TAG_KEY_SIZE = OH_HUKS_TAG_TYPE_UINT \| 3,<br/>OH_HUKS_TAG_DIGEST = OH_HUKS_TAG_TYPE_UINT \| 4, OH_HUKS_TAG_PADDING = OH_HUKS_TAG_TYPE_UINT \| 5, OH_HUKS_TAG_BLOCK_MODE = OH_HUKS_TAG_TYPE_UINT \| 6, OH_HUKS_TAG_KEY_TYPE = OH_HUKS_TAG_TYPE_UINT \| 7,<br/>OH_HUKS_TAG_ASSOCIATED_DATA = OH_HUKS_TAG_TYPE_BYTES \| 8, OH_HUKS_TAG_NONCE = OH_HUKS_TAG_TYPE_BYTES \| 9, OH_HUKS_TAG_IV = OH_HUKS_TAG_TYPE_BYTES \| 10, OH_HUKS_TAG_INFO = OH_HUKS_TAG_TYPE_BYTES \| 11,<br/>OH_HUKS_TAG_SALT = OH_HUKS_TAG_TYPE_BYTES \| 12, OH_HUKS_TAG_ITERATION = OH_HUKS_TAG_TYPE_UINT \| 14, OH_HUKS_TAG_KEY_GENERATE_TYPE = OH_HUKS_TAG_TYPE_UINT \| 15, OH_HUKS_TAG_AGREE_ALG = OH_HUKS_TAG_TYPE_UINT \| 19,<br/>OH_HUKS_TAG_AGREE_PUBLIC_KEY_IS_KEY_ALIAS = OH_HUKS_TAG_TYPE_BOOL \| 20, OH_HUKS_TAG_AGREE_PRIVATE_KEY_ALIAS = OH_HUKS_TAG_TYPE_BYTES \| 21, OH_HUKS_TAG_AGREE_PUBLIC_KEY = OH_HUKS_TAG_TYPE_BYTES \| 22, OH_HUKS_TAG_KEY_ALIAS = OH_HUKS_TAG_TYPE_BYTES \| 23,<br/>OH_HUKS_TAG_DERIVE_KEY_SIZE = OH_HUKS_TAG_TYPE_UINT \| 24, OH_HUKS_TAG_IMPORT_KEY_TYPE = OH_HUKS_TAG_TYPE_UINT \| 25, OH_HUKS_TAG_UNWRAP_ALGORITHM_SUITE = OH_HUKS_TAG_TYPE_UINT \| 26, OH_HUKS_TAG_ALL_USERS = OH_HUKS_TAG_TYPE_BOOL \| 301,<br/>OH_HUKS_TAG_USER_ID = OH_HUKS_TAG_TYPE_UINT \| 302, OH_HUKS_TAG_NO_AUTH_REQUIRED = OH_HUKS_TAG_TYPE_BOOL \| 303, OH_HUKS_TAG_USER_AUTH_TYPE = OH_HUKS_TAG_TYPE_UINT \| 304, OH_HUKS_TAG_AUTH_TIMEOUT = OH_HUKS_TAG_TYPE_UINT \| 305,<br/>OH_HUKS_TAG_AUTH_TOKEN = OH_HUKS_TAG_TYPE_BYTES \| 306, OH_HUKS_TAG_KEY_AUTH_ACCESS_TYPE = OH_HUKS_TAG_TYPE_UINT \| 307, OH_HUKS_TAG_KEY_SECURE_SIGN_TYPE = OH_HUKS_TAG_TYPE_UINT \| 308, OH_HUKS_TAG_CHALLENGE_TYPE = OH_HUKS_TAG_TYPE_UINT \| 309,<br/>OH_HUKS_TAG_CHALLENGE_POS = OH_HUKS_TAG_TYPE_UINT \| 310, OH_HUKS_TAG_ATTESTATION_CHALLENGE = OH_HUKS_TAG_TYPE_BYTES \| 501, OH_HUKS_TAG_ATTESTATION_APPLICATION_ID = OH_HUKS_TAG_TYPE_BYTES \| 502, OH_HUKS_TAG_ATTESTATION_ID_ALIAS = OH_HUKS_TAG_TYPE_BYTES \| 511,<br/>OH_HUKS_TAG_ATTESTATION_ID_SEC_LEVEL_INFO = OH_HUKS_TAG_TYPE_BYTES \| 514, OH_HUKS_TAG_ATTESTATION_ID_VERSION_INFO = OH_HUKS_TAG_TYPE_BYTES \| 515,<br/>OH_HUKS_TAG_IS_KEY_ALIAS = OH_HUKS_TAG_TYPE_BOOL \| 1001, OH_HUKS_TAG_KEY_STORAGE_FLAG = OH_HUKS_TAG_TYPE_UINT \| 1002, OH_HUKS_TAG_IS_ALLOWED_WRAP = OH_HUKS_TAG_TYPE_BOOL \| 1003, OH_HUKS_TAG_KEY_WRAP_TYPE = OH_HUKS_TAG_TYPE_UINT \| 1004,<br/>OH_HUKS_TAG_KEY_AUTH_ID = OH_HUKS_TAG_TYPE_BYTES \| 1005, OH_HUKS_TAG_KEY_ROLE = OH_HUKS_TAG_TYPE_UINT \| 1006, OH_HUKS_TAG_KEY_FLAG = OH_HUKS_TAG_TYPE_UINT \| 1007, OH_HUKS_TAG_IS_ASYNCHRONIZED = OH_HUKS_TAG_TYPE_UINT \| 1008,<br/> OH_HUKS_TAG_KEY_DOMAIN = OH_HUKS_TAG_TYPE_UINT \| 1011, OH_HUKS_TAG_SYMMETRIC_KEY_DATA = OH_HUKS_TAG_TYPE_BYTES \| 20001,<br/>OH_HUKS_TAG_ASYMMETRIC_PUBLIC_KEY_DATA = OH_HUKS_TAG_TYPE_BYTES \| 20002, OH_HUKS_TAG_ASYMMETRIC_PRIVATE_KEY_DATA = OH_HUKS_TAG_TYPE_BYTES \| 20003<br/>} | 参数集所用的TAG值枚举 |
## 枚举类型说明
......@@ -416,7 +416,6 @@ enum OH_Huks_Tag
| 枚举值 | 描述 |
| -------- | -------- |
| OH_HUKS_TAG_INVALID | 非法的Tag。 |
| OH_HUKS_TAG_ALGORITHM | 密钥参数标签值:从1到200。 算法类型。 |
| OH_HUKS_TAG_PURPOSE | 密钥用途。 |
| OH_HUKS_TAG_KEY_SIZE | 密钥长度 。 |
......@@ -429,12 +428,8 @@ enum OH_Huks_Tag
| OH_HUKS_TAG_IV | 初始化的向量。 |
| OH_HUKS_TAG_INFO | 密钥派生时的信息。 |
| OH_HUKS_TAG_SALT | 派生盐值。 |
| OH_HUKS_TAG_PWD | 派生密码。 |
| OH_HUKS_TAG_ITERATION | 派生迭代次数。 |
| OH_HUKS_TAG_KEY_GENERATE_TYPE | 生成密钥的类型,类型可在枚举[OH_Huks_KeyGenerateType](#oh_huks_keygeneratetype)中选择。 |
| OH_HUKS_TAG_DERIVE_MAIN_KEY | 密钥派生时的主密钥。 |
| OH_HUKS_TAG_DERIVE_FACTOR | 派生时的派生因子。 |
| OH_HUKS_TAG_DERIVE_ALG | 派生时的算法类型。 |
| OH_HUKS_TAG_AGREE_ALG | 密钥协商时的算法类型。 |
| OH_HUKS_TAG_AGREE_PUBLIC_KEY_IS_KEY_ALIAS | 密钥协商时的公钥别名。 |
| OH_HUKS_TAG_AGREE_PRIVATE_KEY_ALIAS | 密钥协商时的私钥别名。 |
......@@ -455,17 +450,7 @@ enum OH_Huks_Tag
| OH_HUKS_TAG_CHALLENGE_POS | 表示challenge类型为用户自定义类型时,huks产生的challenge有效长度仅为8字节连续的数据的位置。从OH_Huks_ChallengePosition中选择。 |
| OH_HUKS_TAG_ATTESTATION_CHALLENGE | 密钥认证相关的标签值: 501 - 600 密钥认证时的挑战值。 |
| OH_HUKS_TAG_ATTESTATION_APPLICATION_ID | 密钥认证时拥有该密钥的application的Id。 |
| OH_HUKS_TAG_ATTESTATION_ID_BRAND | 设备的品牌。 |
| OH_HUKS_TAG_ATTESTATION_ID_DEVICE | 设备的设备ID。 |
| OH_HUKS_TAG_ATTESTATION_ID_PRODUCT | 设备的产品名。 |
| OH_HUKS_TAG_ATTESTATION_ID_SERIAL | 设备的SN号。 |
| OH_HUKS_TAG_ATTESTATION_ID_IMEI | 设备的IMEI号。 |
| OH_HUKS_TAG_ATTESTATION_ID_MEID | 设备的MEID号。 |
| OH_HUKS_TAG_ATTESTATION_ID_MANUFACTURER | 设备的制造商。 |
| OH_HUKS_TAG_ATTESTATION_ID_MODEL | 设备的型号。 |
| OH_HUKS_TAG_ATTESTATION_ID_ALIAS | 密钥别名。 |
| OH_HUKS_TAG_ATTESTATION_ID_SOCID | 设备的SOCID。 |
| OH_HUKS_TAG_ATTESTATION_ID_UDID | 设备的UDID。 |
| OH_HUKS_TAG_ATTESTATION_ID_SEC_LEVEL_INFO | 密钥认证时的安全凭据。 |
| OH_HUKS_TAG_ATTESTATION_ID_VERSION_INFO | 密钥认证时的版本号。 |
| OH_HUKS_TAG_IS_KEY_ALIAS | 其他类型的标签值预留: 601 - 1000<br/>扩展标签值: 1001 - 9999 是否是密钥别名。 |
......@@ -476,8 +461,6 @@ enum OH_Huks_Tag
| OH_HUKS_TAG_KEY_ROLE | 密钥角色。 |
| OH_HUKS_TAG_KEY_FLAG | 密钥标记, 类型可在枚举[OH_Huks_KeyFlag](#oh_huks_keyflag)选择。 |
| OH_HUKS_TAG_IS_ASYNCHRONIZED | 是否异步 |
| OH_HUKS_TAG_SECURE_KEY_ALIAS | 安全密钥别名。 |
| OH_HUKS_TAG_SECURE_KEY_UUID | 安全密钥UUID。 |
| OH_HUKS_TAG_KEY_DOMAIN | 密钥域。 |
| OH_HUKS_TAG_SYMMETRIC_KEY_DATA | 预留值: 11000 - 12000<br/>其他标签预留值: 20001 - N 对称密钥数据 |
| OH_HUKS_TAG_ASYMMETRIC_PUBLIC_KEY_DATA | 非对称密钥公钥数据 |
......
......@@ -20,7 +20,7 @@
| 文件名称 | 描述 |
| -------- | -------- |
| [native_vsync.h](native__vsync_8h.md) | 定义获取和使用NativeVsync的相关函数 |
| [native_vsync.h](native__vsync_8h.md) | 定义获取和使用NativeVsync的相关函数<br>引用文件:<native_vsync/native_vsync.h> |
### 函数
......
......@@ -20,7 +20,7 @@
| 文件名称 | 描述 |
| -------- | -------- |
| [external_window.h](external__window_8h.md) | 定义获取和使用NativeWindow的相关函数 |
| [external_window.h](external__window_8h.md) | 定义获取和使用NativeWindow的相关函数<br>引用文件:<native_window/external_window.h> |
### 结构体
......
......@@ -3,7 +3,7 @@
## 概述
AVCodec所有的异步回调函数指针集合。注册一个该结构体实例给OH_AVCodec实例,并处理通过该回调报告 的信息,以确保AVCodec正常运转。
AVCodec所有的异步回调函数指针集合。注册一个该结构体实例给OH_AVCodec实例,并处理通过该回调报告的信息,以确保AVCodec正常运转。
@syscap SystemCapability.Multimedia.Media.CodecBase
参数
......@@ -22,7 +22,7 @@ AVCodec所有的异步回调函数指针集合。注册一个该结构体实例
| 名称 | 描述 |
| -------- | -------- |
| **onError** | [OH_AVCodecOnError](_codec_base.md#oh_avcodeconerror) |
| **onStreamChanged** | [OH_AVCodecOnStreamChanged](_codec_base.md#oh_avcodeconstreamchanged) |
| **onNeedInputData** | [OH_AVCodecOnNeedInputData](_codec_base.md#oh_avcodeconneedinputdata) |
| **onNeedOutputData** | [OH_AVCodecOnNewOutputData](_codec_base.md#oh_avcodeconnewoutputdata) |
| **onError** | 监听AVCodec运行错误,参考[OH_AVCodecOnError](_codec_base.md#oh_avcodeconerror) |
| **onStreamChanged** | 监听编解码流信息,参考[OH_AVCodecOnStreamChanged](_codec_base.md#oh_avcodeconstreamchanged) |
| **onNeedInputData** | 监听编解码需要输入数据,参考[OH_AVCodecOnNeedInputData](_codec_base.md#oh_avcodeconneedinputdata) |
| **onNeedOutputData** | 监听编解码产生输出数据,参考[OH_AVCodecOnNewOutputData](_codec_base.md#oh_avcodeconnewoutputdata) |
......@@ -22,7 +22,7 @@
| 名称 | 描述 |
| -------- | -------- |
| [pts](_codec_base.md#pts) | int64_t |
| [size](_codec_base.md#size) | int32_t |
| [offset](_codec_base.md#offset) | int32_t |
| [flags](_codec_base.md#flags) | uint32_t |
| [pts](_codec_base.md#pts) | 以微秒为单位表示的该Buffer的Presentation时间戳 |
| [size](_codec_base.md#size) | 以字节为单位表示的该Buffer内所包含数据的大小 |
| [offset](_codec_base.md#offset) | 有效数据在该Buffer内的起始偏移量 |
| [flags](_codec_base.md#flags) | 该Buffer具有的标记,也是多个[OH_AVCodecBufferFlags](_codec_base.md#oh_avcodecbufferflags)的组合 |
......@@ -20,8 +20,8 @@
| 名称 | 描述 |
| -------- | -------- |
| [size](#size) | uint32_t<br/>数据大小 |
| [data](#data) | uint8_t \*<br/>指向数据内存的指针 |
| [size](#size) | 数据大小 |
| [data](#data) | 指向数据内存的指针 |
## 结构体成员变量说明
......
......@@ -20,8 +20,8 @@
| 名称 | 描述 |
| -------- | -------- |
| [certs](#certs) | struct [OH_Huks_Blob](_o_h___huks___blob.md) \*<br/>指向证书数据的指针。 |
| [certsCount](#certscount) | uint32_t<br/>证书本数。 |
| [certs](#certs) | >指向证书数据的指针。 |
| [certsCount](#certscount) | 证书本数。 |
## 结构体成员变量说明
......
......@@ -20,8 +20,8 @@
| 名称 | 描述 |
| -------- | -------- |
| [alias](#alias) | struct [OH_Huks_Blob](_o_h___huks___blob.md)<br/>密钥的别名。 |
| [paramSet](#paramset) | struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*<br/>指向密钥参数集的指针。 |
| [alias](#alias) | 密钥的别名。 |
| [paramSet](#paramset) | 指向密钥参数集的指针。 |
## 结构体成员变量说明
......
......@@ -20,11 +20,11 @@
| 名称 | 描述 |
| -------- | -------- |
| [keyAlg](#keyalg) | enum [OH_Huks_KeyAlg](_huks_type_api.md#oh_huks_keyalg)<br/>密钥的算法类型。 |
| [keySize](#keysize) | uint32_t<br/>25519类型密钥的长度。 |
| [pubKeySize](#pubkeysize) | uint32_t<br/>公钥的长度。 |
| [priKeySize](#prikeysize) | uint32_t<br/>私钥的长度。 |
| [reserved](#reserved) | uint32_t<br/>保留。 |
| [keyAlg](#keyalg) | 密钥的算法类型。 |
| [keySize](#keysize) | 25519类型密钥的长度。 |
| [pubKeySize](#pubkeysize) | 公钥的长度。 |
| [priKeySize](#prikeysize) | 私钥的长度。 |
| [reserved](#reserved) | 保留。 |
## 结构体成员变量说明
......
......@@ -20,11 +20,11 @@
| 名称 | 描述 |
| -------- | -------- |
| [keyAlg](#keyalg) | enum [OH_Huks_KeyAlg](_huks_type_api.md#oh_huks_keyalg)<br/>密钥的算法类型。 |
| [keySize](#keysize) | uint32_t<br/>Dh密钥的长度。 |
| [pubKeySize](#pubkeysize) | uint32_t<br/>公钥的长度。 |
| [priKeySize](#prikeysize) | uint32_t<br/>私钥的长度。 |
| [reserved](#reserved) | uint32_t<br/>保留。 |
| [keyAlg](#keyalg) | 密钥的算法类型。 |
| [keySize](#keysize) | Dh密钥的长度。 |
| [pubKeySize](#pubkeysize) | 公钥的长度。 |
| [priKeySize](#prikeysize) | 私钥的长度。 |
| [reserved](#reserved) | 保留。 |
## 结构体成员变量说明
......
......@@ -20,13 +20,13 @@
| 名称 | 描述 |
| -------- | -------- |
| [keyAlg](#keyalg) | enum [OH_Huks_KeyAlg](_huks_type_api.md#oh_huks_keyalg)<br/>密钥的算法类型。 |
| [keySize](#keysize) | uint32_t<br/>密钥的长度。 |
| [xSize](#xsize) | uint32_t<br/>x值的长度。 |
| [ySize](#ysize) | uint32_t<br/>y值的长度。 |
| [pSize](#psize) | uint32_t<br/>p值的长度。 |
| [qSize](#qsize) | uint32_t<br/>q值的长度。 |
| [gSize](#gsize) | uint32_t<br/>g值的长度。 |
| [keyAlg](#keyalg) | 密钥的算法类型。 |
| [keySize](#keysize) | 密钥的长度。 |
| [xSize](#xsize) | x值的长度。 |
| [ySize](#ysize) | y值的长度。 |
| [pSize](#psize) | p值的长度。 |
| [qSize](#qsize) | q值的长度。 |
| [gSize](#gsize) | g值的长度。 |
## 结构体成员变量说明
......
......@@ -20,11 +20,11 @@
| 名称 | 描述 |
| -------- | -------- |
| [keyAlg](#keyalg) | enum [OH_Huks_KeyAlg](_huks_type_api.md#oh_huks_keyalg)<br/>密钥的算法类型。 |
| [keySize](#keysize) | uint32_t<br/>密钥的长度。 |
| [xSize](#xsize) | uint32_t<br/>x值的长度。 |
| [ySize](#ysize) | uint32_t<br/>y值的长度。 |
| [zSize](#zsize) | uint32_t<br/>z值的长度。 |
| [keyAlg](#keyalg) | 密钥的算法类型。 |
| [keySize](#keysize) | 密钥的长度。 |
| [xSize](#xsize) | x值的长度。 |
| [ySize](#ysize) | y值的长度。 |
| [zSize](#zsize) | z值的长度。 |
## 结构体成员变量说明
......
......@@ -20,11 +20,11 @@
| 名称 | 描述 |
| -------- | -------- |
| [keyAlg](#keyalg) | enum [OH_Huks_KeyAlg](_huks_type_api.md#oh_huks_keyalg)<br/>密钥的算法类型。 |
| [keySize](#keysize) | uint32_t<br/>密钥的长度。 |
| [nSize](#nsize) | uint32_t<br/>n值的长度。 |
| [eSize](#esize) | uint32_t<br/>e值的长度。 |
| [dSize](#dsize) | uint32_t<br/>d值的长度。 |
| [keyAlg](#keyalg) | 密钥的算法类型。 |
| [keySize](#keysize) | 密钥的长度。 |
| [nSize](#nsize) | n值的长度。 |
| [eSize](#esize) | e值的长度。 |
| [dSize](#dsize) | d值的长度。 |
## 结构体成员变量说明
......
......@@ -20,14 +20,8 @@
| 名称 | 描述 |
| -------- | -------- |
| [tag](#tag) | uint32_t<br/>标签值 |
| | union { |
| | bool [boolParam](#boolparam) |
| | int32_t [int32Param](#int32param) |
| | uint32_t [uint32Param](#uint32param) |
| | uint64_t [uint64Param](#uint64param) |
| | struct [OH_Huks_Blob](_o_h___huks___blob.md)[blob](#blob) |
| | }; |
| [tag](#tag) | 标签值 |
| union { <br>bool [boolParam](#boolparam); <br>int32_t [int32Param](#int32param); <br>uint32_t [uint32Param](#uint32param); <br>uint64_t [uint64Param](#uint64param); <br>struct [OH_Huks_Blob](_o_h___huks___blob.md)[blob](#blob);} | boolParam:bool型参数。 <br>int32Param:int32_t型参数。 <br>uint32Param:uint32_t型参数。<br>uint64Param:uint64_t型参数。<br>blob:struct OH_Huks_Blob型参数。|
## 结构体成员变量说明
......
......@@ -20,9 +20,9 @@
| 名称 | 描述 |
| -------- | -------- |
| [paramSetSize](#paramsetsize) | uint32_t<br/>参数集的内存大小。 |
| [paramsCnt](#paramscnt) | uint32_t<br/>参数的个数。 |
| [params](#params) [] | struct [OH_Huks_Param](_o_h___huks___param.md)<br/>参数数组。 |
| [paramSetSize](#paramsetsize) | 参数集的内存大小。 |
| [paramsCnt](#paramscnt) | 参数的个数。 |
| [params](#params) [] | 参数数组。 |
## 结构体成员变量说明
......
......@@ -20,11 +20,11 @@
| 名称 | 描述 |
| -------- | -------- |
| [keyAlg](#keyalg) | enum [OH_Huks_KeyAlg](_huks_type_api.md#oh_huks_keyalg)<br/>公钥的算法类型。 |
| [keySize](#keysize) | uint32_t<br/>公钥的长度。 |
| [nOrXSize](#norxsize) | uint32_t<br/>n或X值的长度。 |
| [eOrYSize](#eorysize) | uint32_t<br/>e或Y值的长度。 |
| [placeHolder](#placeholder) | uint32_t<br/>占位符大小。 |
| [keyAlg](#keyalg) | 公钥的算法类型。 |
| [keySize](#keysize) | 公钥的长度。 |
| [nOrXSize](#norxsize) | n或X值的长度。 |
| [eOrYSize](#eorysize) | e或Y值的长度。 |
| [placeHolder](#placeholder) | 占位符大小。 |
## 结构体成员变量说明
......
......@@ -20,9 +20,9 @@
| 名称 | 描述 |
| -------- | -------- |
| [errorCode](#errorcode) | int32_t<br/>状态返回码。 |
| [errorMsg](#errormsg) | const char \*<br/>对状态返回码的说明信息。 |
| [data](#data) | uint8_t \*<br/>其他返回数据。 |
| [errorCode](#errorcode) | 状态返回码。 |
| [errorMsg](#errormsg) | 对状态返回码的说明信息。 |
| [data](#data) | 其他返回数据。 |
## 结构体成员变量说明
......
......@@ -20,7 +20,7 @@
| 文件名称 | 描述 |
| -------- | -------- |
| [native_buffer.h](native__buffer_8h.md) | 定义获取和使用NativeBuffer的相关函数 |
| [native_buffer.h](native__buffer_8h.md) | 定义获取和使用NativeBuffer的相关函数<br>引用文件:<native_buffer/native_buffer.h> |
### 结构体
......
......@@ -20,7 +20,7 @@
| 文件名称 | 描述 |
| -------- | -------- |
| [native_image.h](native__image_8h.md) | 定义获取和使用NativeImage的相关函数。 |
| [native_image.h](native__image_8h.md) | 定义获取和使用NativeImage的相关函数。<br>引用文件:<native_image/native_image.h> |
### 函数
......
......@@ -9,8 +9,7 @@ VideoDecoder模块提供用于视频解码功能的函数。
**起始版本:**
9
**Version:**
1.0
## 汇总
......@@ -19,29 +18,29 @@ VideoDecoder模块提供用于视频解码功能的函数。
| 名称 | 描述 |
| -------- | -------- |
| [native_avcodec_videodecoder.h](native__avcodec__videodecoder_8h.md) | 声明用于视频解码的Native API。 |
| [native_avcodec_videodecoder.h](native__avcodec__videodecoder_8h.md) | 声明用于视频解码的Native API。<br>引用文件:<multimedia/player_framework/native_avcodec_videodecoder.h> |
### 函数
| 名称 | 描述 |
| -------- | -------- |
| [OH_VideoDecoder_CreateByMime](#oh_videodecoder_createbymime) (const char \*mime) | OH_AVCodec \*<br/>通过mime类型创建一个视频解码器实例,大多数情况下推荐使用该接口。 |
| [OH_VideoDecoder_CreateByName](#oh_videodecoder_createbyname) (const char \*name) | OH_AVCodec \*<br/>通过视频解码器名称创建一个视频解码器实例,使用这个接口的前提是必须清楚解码器准确的名称。 |
| [OH_VideoDecoder_Destroy](#oh_videodecoder_destroy) (OH_AVCodec \*codec) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>清空解码器内部资源,并销毁解码器实例。 |
| [OH_VideoDecoder_SetCallback](#oh_videodecoder_setcallback) (OH_AVCodec \*codec, [OH_AVCodecAsyncCallback](_o_h___a_v_codec_async_callback.md) callback, void \*userData) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>设置异步回调函数,使得你的应用能够响应视频解码器产生的事件,该接口被调用必须是在Prepare被调用前。 |
| [OH_VideoDecoder_SetSurface](#oh_videodecoder_setsurface) (OH_AVCodec \*codec, OHNativeWindow \*window) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>指定输出Surface,以提供视频解码输出,该接口被调用必须是在Prepare被调用前。 |
| [OH_VideoDecoder_Configure](#oh_videodecoder_configure) (OH_AVCodec \*codec, OH_AVFormat \*format) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>配置视频解码器,典型地,需要配置被解码视频轨道的描述信息,这些信息能够从容器中提取出来, 该接口被调用必须是在Prepare被调用前。 |
| [OH_VideoDecoder_Prepare](#oh_videodecoder_prepare) (OH_AVCodec \*codec) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>准备解码器内部资源,调用该接口前必须先调用Configure接口。 |
| [OH_VideoDecoder_Start](#oh_videodecoder_start) (OH_AVCodec \*codec) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>启动解码器,该接口必须在已经Prepare成功后调用。 在启动成功后,解码器将开始报告[OH_AVCodecOnNeedInputData](_codec_base.md#oh_avcodeconneedinputdata)事件。 |
| [OH_VideoDecoder_Stop](#oh_videodecoder_stop) (OH_AVCodec \*codec) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>停止解码器。在停止后可通过Start重新进入Started状态,但需要注意的是,若先前给解码器输入过 Codec-Specific-Data,则需要重新输入。 |
| [OH_VideoDecoder_Flush](#oh_videodecoder_flush) (OH_AVCodec \*codec) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>清空解码器内部缓存的输入输出数据。在该接口被调用后,所有先前通过异步回调报告的Buffer的索引都将 失效,确保不要再访问这些索引对应的Buffers。 |
| [OH_VideoDecoder_Reset](#oh_videodecoder_reset) (OH_AVCodec \*codec) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>重置解码器。如需继续解码工作,需要重新调用Configure接口以配置该解码器实例。 |
| [OH_VideoDecoder_GetOutputDescription](#oh_videodecoder_getoutputdescription) (OH_AVCodec \*codec) | OH_AVFormat \*<br/>获取该解码器输出数据的描述信息,需要注意的是,返回值所指向的OH_AVFormat实例的生命周期 将会再下一次调用该接口时或者该OH_AVCodec实例被销毁时失效。 |
| [OH_VideoDecoder_SetParameter](#oh_videodecoder_setparameter) (OH_AVCodec \*codec, OH_AVFormat \*format) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>向解码器设置动态参数,注意:该接口仅能在解码器被启动后调用,同时错误的参数设置,可能会导致解码失败。 |
| [OH_VideoDecoder_PushInputData](#oh_videodecoder_pushinputdata) (OH_AVCodec \*codec, uint32_t index, [OH_AVCodecBufferAttr](_o_h___a_v_codec_buffer_attr.md) attr) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>将填充好数据的输入Buffer提交给视频解码器。[OH_AVCodecOnNeedInputData](_codec_base.md#oh_avcodeconneedinputdata)回调会报告可用的输入 Buffer及对应的索引值。一旦指定索引的Buffer被提交给解码器,直到再一次收到[OH_AVCodecOnNeedInputData](_codec_base.md#oh_avcodeconneedinputdata) 回调报告相同索引的Buffer可用前,该Buffer都不可以再次被访问。另外,对于部分解码器,要求在最开始给解码器输入 Codec-Specific-Data,用以初始化解码器的解码过程,例如H264格式的PPS/SPS数据。 |
| [OH_VideoDecoder_RenderOutputData](#oh_videodecoder_renderoutputdata) (OH_AVCodec \*codec, uint32_t index) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>将处理结束的输出Buffer交还给解码器,并通知解码器完成将该Buffer内包含的解码后的数据在输出Surface上渲染。 如果先前未配置输出Surface,调用该接口仅仅将指定索引对应的输出Buffer交还给解码器。 |
| [OH_VideoDecoder_FreeOutputData](#oh_videodecoder_freeoutputdata) (OH_AVCodec \*codec, uint32_t index) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>将处理结束的输出Buffer交还给解码器。 |
| [OH_VideoDecoder_CreateByMime](#oh_videodecoder_createbymime) (const char \*mime) | 通过mime类型创建一个视频解码器实例,大多数情况下推荐使用该接口。 |
| [OH_VideoDecoder_CreateByName](#oh_videodecoder_createbyname) (const char \*name) | 通过视频解码器名称创建一个视频解码器实例,使用这个接口的前提是必须清楚解码器准确的名称。 |
| [OH_VideoDecoder_Destroy](#oh_videodecoder_destroy) (OH_AVCodec \*codec) | 清空解码器内部资源,并销毁解码器实例。 |
| [OH_VideoDecoder_SetCallback](#oh_videodecoder_setcallback) (OH_AVCodec \*codec, [OH_AVCodecAsyncCallback](_o_h___a_v_codec_async_callback.md) callback, void \*userData) | 设置异步回调函数,使得你的应用能够响应视频解码器产生的事件,该接口被调用必须是在Prepare被调用前。 |
| [OH_VideoDecoder_SetSurface](#oh_videodecoder_setsurface) (OH_AVCodec \*codec, OHNativeWindow \*window) | 指定输出Surface,以提供视频解码输出,该接口被调用必须是在Prepare被调用前。 |
| [OH_VideoDecoder_Configure](#oh_videodecoder_configure) (OH_AVCodec \*codec, OH_AVFormat \*format) | 配置视频解码器,典型地,需要配置被解码视频轨道的描述信息,这些信息能够从容器中提取出来, 该接口被调用必须是在Prepare被调用前。 |
| [OH_VideoDecoder_Prepare](#oh_videodecoder_prepare) (OH_AVCodec \*codec) | 准备解码器内部资源,调用该接口前必须先调用Configure接口。 |
| [OH_VideoDecoder_Start](#oh_videodecoder_start) (OH_AVCodec \*codec) | 启动解码器,该接口必须在已经Prepare成功后调用。 在启动成功后,解码器将开始报告[OH_AVCodecOnNeedInputData](_codec_base.md#oh_avcodeconneedinputdata)事件。 |
| [OH_VideoDecoder_Stop](#oh_videodecoder_stop) (OH_AVCodec \*codec) | 停止解码器。在停止后可通过Start重新进入Started状态,但需要注意的是,若先前给解码器输入过 Codec-Specific-Data,则需要重新输入。 |
| [OH_VideoDecoder_Flush](#oh_videodecoder_flush) (OH_AVCodec \*codec) | 清空解码器内部缓存的输入输出数据。在该接口被调用后,所有先前通过异步回调报告的Buffer的索引都将 失效,确保不要再访问这些索引对应的Buffers。 |
| [OH_VideoDecoder_Reset](#oh_videodecoder_reset) (OH_AVCodec \*codec) | 重置解码器。如需继续解码工作,需要重新调用Configure接口以配置该解码器实例。 |
| [OH_VideoDecoder_GetOutputDescription](#oh_videodecoder_getoutputdescription) (OH_AVCodec \*codec) | 获取该解码器输出数据的描述信息,需要注意的是,返回值所指向的OH_AVFormat实例的生命周期 将会再下一次调用该接口时或者该OH_AVCodec实例被销毁时失效。 |
| [OH_VideoDecoder_SetParameter](#oh_videodecoder_setparameter) (OH_AVCodec \*codec, OH_AVFormat \*format) | 向解码器设置动态参数,注意:该接口仅能在解码器被启动后调用,同时错误的参数设置,可能会导致解码失败。 |
| [OH_VideoDecoder_PushInputData](#oh_videodecoder_pushinputdata) (OH_AVCodec \*codec, uint32_t index, [OH_AVCodecBufferAttr](_o_h___a_v_codec_buffer_attr.md) attr) | 将填充好数据的输入Buffer提交给视频解码器。[OH_AVCodecOnNeedInputData](_codec_base.md#oh_avcodeconneedinputdata)回调会报告可用的输入 Buffer及对应的索引值。一旦指定索引的Buffer被提交给解码器,直到再一次收到[OH_AVCodecOnNeedInputData](_codec_base.md#oh_avcodeconneedinputdata) 回调报告相同索引的Buffer可用前,该Buffer都不可以再次被访问。另外,对于部分解码器,要求在最开始给解码器输入 Codec-Specific-Data,用以初始化解码器的解码过程,例如H264格式的PPS/SPS数据。 |
| [OH_VideoDecoder_RenderOutputData](#oh_videodecoder_renderoutputdata) (OH_AVCodec \*codec, uint32_t index) | 将处理结束的输出Buffer交还给解码器,并通知解码器完成将该Buffer内包含的解码后的数据在输出Surface上渲染。 如果先前未配置输出Surface,调用该接口仅仅将指定索引对应的输出Buffer交还给解码器。 |
| [OH_VideoDecoder_FreeOutputData](#oh_videodecoder_freeoutputdata) (OH_AVCodec \*codec, uint32_t index) | 将处理结束的输出Buffer交还给解码器。 |
## 函数说明
......
......@@ -9,8 +9,6 @@ VideoEncoder模块提供用于视频编码功能的函数和枚举。
**起始版本:**
9
**Version:**
1.0
## 汇总
......@@ -19,14 +17,14 @@ VideoEncoder模块提供用于视频编码功能的函数和枚举。
| 名称 | 描述 |
| -------- | -------- |
| [native_avcodec_videoencoder.h](native__avcodec__videoencoder_8h.md) | 声明用于视频编码的Native API。 |
| [native_avcodec_videoencoder.h](native__avcodec__videoencoder_8h.md) | 声明用于视频编码的Native API。<br>引用文件:<multimedia/player_framework/native_avcodec_videoencoder.h> |
### 类型定义
| 名称 | 描述 |
| -------- | -------- |
| [OH_VideoEncodeBitrateMode](#oh_videoencodebitratemode) | typedef enum [OH_VideoEncodeBitrateMode](#oh_videoencodebitratemode)<br/>视频编码的比特率模式。 |
| [OH_VideoEncodeBitrateMode](#oh_videoencodebitratemode) | 视频编码的比特率模式。 |
### 枚举
......@@ -40,21 +38,21 @@ VideoEncoder模块提供用于视频编码功能的函数和枚举。
| 名称 | 描述 |
| -------- | -------- |
| [OH_VideoEncoder_CreateByMime](#oh_videoencoder_createbymime) (const char \*mime) | OH_AVCodec \*<br/>通过mime类型创建一个视频编码器实例,大多数情况下推荐使用该接口。 |
| [OH_VideoEncoder_CreateByName](#oh_videoencoder_createbyname) (const char \*name) | OH_AVCodec \*<br/>通过视频编码器名称创建一个视频编码器实例,使用这个接口的前提是必须清楚编码器准确的名称。 |
| [OH_VideoEncoder_Destroy](#oh_videoencoder_destroy) (OH_AVCodec \*codec) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>清空编码器内部资源,并销毁编码器实例。 |
| [OH_VideoEncoder_SetCallback](#oh_videoencoder_setcallback) (OH_AVCodec \*codec, [OH_AVCodecAsyncCallback](_o_h___a_v_codec_async_callback.md) callback, void \*userData) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>设置异步回调函数,使得你的应用能够响应视频编码器产生的事件,该接口被调用必须是在Prepare被调用前。 |
| [OH_VideoEncoder_Configure](#oh_videoencoder_configure) (OH_AVCodec \*codec, OH_AVFormat \*format) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>配置视频编码器,典型地,需要配置被编码视频轨道的描述信息,该接口被调用必须是在Prepare被调用前。 |
| [OH_VideoEncoder_Prepare](#oh_videoencoder_prepare) (OH_AVCodec \*codec) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>准备编码器内部资源,调用该接口前必须先调用Configure接口。 |
| [OH_VideoEncoder_Start](#oh_videoencoder_start) (OH_AVCodec \*codec) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>启动编码器,该接口必须在已经Prepare成功后调用。 在启动成功后,编码器将开始报告[OH_AVCodecOnNeedInputData](_codec_base.md#oh_avcodeconneedinputdata)事件。 |
| [OH_VideoEncoder_Stop](#oh_videoencoder_stop) (OH_AVCodec \*codec) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>停止编码器。在停止后可通过Start重新进入Started状态。 |
| [OH_VideoEncoder_Flush](#oh_videoencoder_flush) (OH_AVCodec \*codec) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>清空编码器内部缓存的输入输出数据。在该接口被调用后,所有先前通过异步回调报告的Buffer的索引都将 失效,确保不要再访问这些索引对应的Buffers。 |
| [OH_VideoEncoder_Reset](#oh_videoencoder_reset) (OH_AVCodec \*codec) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>重置编码器。如需继续编码工作,需要重新调用Configure接口以配置该编码器实例。 |
| [OH_VideoEncoder_GetOutputDescription](#oh_videoencoder_getoutputdescription) (OH_AVCodec \*codec) | OH_AVFormat \*<br/>获取该编码器输出数据的描述信息,需要注意的是,返回值所指向的OH_AVFormat实例的生命周期 将会再下一次调用该接口时或者该OH_AVCodec实例被销毁时失效。 |
| [OH_VideoEncoder_SetParameter](#oh_videoencoder_setparameter) (OH_AVCodec \*codec, OH_AVFormat \*format) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>向编码器设置动态参数,注意:该接口仅能在编码器被启动后调用,同时错误的参数设置,可能会导致编码失败。 |
| [OH_VideoEncoder_GetSurface](#oh_videoencoder_getsurface) (OH_AVCodec \*codec, OHNativeWindow \*\*window) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>从视频编码器获取输入Surface, 该接口被调用必须是在Prepare被调用前。 |
| [OH_VideoEncoder_FreeOutputData](#oh_videoencoder_freeoutputdata) (OH_AVCodec \*codec, uint32_t index) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>将处理结束的输出Buffer交还给编码器。 |
| [OH_VideoEncoder_NotifyEndOfStream](#oh_videoencoder_notifyendofstream) (OH_AVCodec \*codec) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>通知视频编码器输入码流已结束。surface模式推荐使用该接口通知编码器码流结束。 |
| [OH_VideoEncoder_CreateByMime](#oh_videoencoder_createbymime) (const char \*mime) | 通过mime类型创建一个视频编码器实例,大多数情况下推荐使用该接口。 |
| [OH_VideoEncoder_CreateByName](#oh_videoencoder_createbyname) (const char \*name) | 通过视频编码器名称创建一个视频编码器实例,使用这个接口的前提是必须清楚编码器准确的名称。 |
| [OH_VideoEncoder_Destroy](#oh_videoencoder_destroy) (OH_AVCodec \*codec) | 清空编码器内部资源,并销毁编码器实例。 |
| [OH_VideoEncoder_SetCallback](#oh_videoencoder_setcallback) (OH_AVCodec \*codec, [OH_AVCodecAsyncCallback](_o_h___a_v_codec_async_callback.md) callback, void \*userData) | 设置异步回调函数,使得你的应用能够响应视频编码器产生的事件,该接口被调用必须是在Prepare被调用前。 |
| [OH_VideoEncoder_Configure](#oh_videoencoder_configure) (OH_AVCodec \*codec, OH_AVFormat \*format) | 配置视频编码器,典型地,需要配置被编码视频轨道的描述信息,该接口被调用必须是在Prepare被调用前。 |
| [OH_VideoEncoder_Prepare](#oh_videoencoder_prepare) (OH_AVCodec \*codec) | 准备编码器内部资源,调用该接口前必须先调用Configure接口。 |
| [OH_VideoEncoder_Start](#oh_videoencoder_start) (OH_AVCodec \*codec) | 启动编码器,该接口必须在已经Prepare成功后调用。 在启动成功后,编码器将开始报告[OH_AVCodecOnNeedInputData](_codec_base.md#oh_avcodeconneedinputdata)事件。 |
| [OH_VideoEncoder_Stop](#oh_videoencoder_stop) (OH_AVCodec \*codec) | 停止编码器。在停止后可通过Start重新进入Started状态。 |
| [OH_VideoEncoder_Flush](#oh_videoencoder_flush) (OH_AVCodec \*codec) | 清空编码器内部缓存的输入输出数据。在该接口被调用后,所有先前通过异步回调报告的Buffer的索引都将 失效,确保不要再访问这些索引对应的Buffers。 |
| [OH_VideoEncoder_Reset](#oh_videoencoder_reset) (OH_AVCodec \*codec) | 重置编码器。如需继续编码工作,需要重新调用Configure接口以配置该编码器实例。 |
| [OH_VideoEncoder_GetOutputDescription](#oh_videoencoder_getoutputdescription) (OH_AVCodec \*codec) | 获取该编码器输出数据的描述信息,需要注意的是,返回值所指向的OH_AVFormat实例的生命周期 将会再下一次调用该接口时或者该OH_AVCodec实例被销毁时失效。 |
| [OH_VideoEncoder_SetParameter](#oh_videoencoder_setparameter) (OH_AVCodec \*codec, OH_AVFormat \*format) | 向编码器设置动态参数,注意:该接口仅能在编码器被启动后调用,同时错误的参数设置,可能会导致编码失败。 |
| [OH_VideoEncoder_GetSurface](#oh_videoencoder_getsurface) (OH_AVCodec \*codec, OHNativeWindow \*\*window) | 从视频编码器获取输入Surface, 该接口被调用必须是在Prepare被调用前。 |
| [OH_VideoEncoder_FreeOutputData](#oh_videoencoder_freeoutputdata) (OH_AVCodec \*codec, uint32_t index) | 将处理结束的输出Buffer交还给编码器。 |
| [OH_VideoEncoder_NotifyEndOfStream](#oh_videoencoder_notifyendofstream) (OH_AVCodec \*codec) | 通知视频编码器输入码流已结束。surface模式推荐使用该接口通知编码器码流结束。 |
## 类型定义说明
......
......@@ -20,7 +20,7 @@
| 文件名称 | 描述 |
| -------- | -------- |
| [image_pixel_map_napi.h](image__pixel__map__napi_8h.md) | 声明可以锁定并访问pixelmap数据的方法,声明解锁的方法。 |
| [image_pixel_map_napi.h](image__pixel__map__napi_8h.md) | 声明可以锁定并访问pixelmap数据的方法,声明解锁的方法。 <br>引用文件:<multimedia/image_framework/image_pixel_map_napi.h>|
### 结构体
......
......@@ -7,8 +7,7 @@
**起始版本:**
9
**Version:**
1.0
**相关模块:**
[AudioDecoder](_audio_decoder.md)
......@@ -21,17 +20,17 @@
| 名称 | 描述 |
| -------- | -------- |
| [OH_AudioDecoder_CreateByMime](_audio_decoder.md#oh_audiodecoder_createbymime) (const char \*mime) | OH_AVCodec \*<br/>通过mime类型创建一个音频解码器实例,大多数情况下推荐使用该接口。 |
| [OH_AudioDecoder_CreateByName](_audio_decoder.md#oh_audiodecoder_createbyname) (const char \*name) | OH_AVCodec \*<br/>通过音频解码器名称创建一个音频解码器实例,使用这个接口的前提是必须清楚解码器准确的名称。 |
| [OH_AudioDecoder_Destroy](_audio_decoder.md#oh_audiodecoder_destroy) (OH_AVCodec \*codec) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>清空解码器内部资源,并销毁解码器实例 |
| [OH_AudioDecoder_SetCallback](_audio_decoder.md#oh_audiodecoder_setcallback) (OH_AVCodec \*codec, [OH_AVCodecAsyncCallback](_o_h___a_v_codec_async_callback.md) callback, void \*userData) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>设置异步回调函数,使得你的应用能够响应音频解码器产生的事件,该接口被调用必须是在Prepare被调用前。 |
| [OH_AudioDecoder_Configure](_audio_decoder.md#oh_audiodecoder_configure) (OH_AVCodec \*codec, OH_AVFormat \*format) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>配置音频解码器,典型地,需要配置被解码音频轨道的描述信息,这些信息能够从容器中提取出来, 该接口被调用必须是在Prepare被调用前。 |
| [OH_AudioDecoder_Prepare](_audio_decoder.md#oh_audiodecoder_prepare) (OH_AVCodec \*codec) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>准备解码器内部资源,调用该接口前必须先调用Configure接口。 |
| [OH_AudioDecoder_Start](_audio_decoder.md#oh_audiodecoder_start) (OH_AVCodec \*codec) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>启动解码器,该接口必须在已经Prepare成功后调用。 在启动成功后,解码器将开始报告[OH_AVCodecOnNeedInputData](_codec_base.md#oh_avcodeconneedinputdata)事件。 |
| [OH_AudioDecoder_Stop](_audio_decoder.md#oh_audiodecoder_stop) (OH_AVCodec \*codec) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>停止解码器。在停止后可通过Start重新进入Started状态,但需要注意的是,若先前给解码器输入过 Codec-Specific-Data,则需要重新输入。 |
| [OH_AudioDecoder_Flush](_audio_decoder.md#oh_audiodecoder_flush) (OH_AVCodec \*codec) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>清空解码器内部缓存的输入输出数据。在该接口被调用后,所有先前通过异步回调报告的Buffer的索引都将 失效,确保不要再访问这些索引对应的Buffers。 |
| [OH_AudioDecoder_Reset](_audio_decoder.md#oh_audiodecoder_reset) (OH_AVCodec \*codec) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>重置解码器。如需继续解码工作,需要重新调用Configure接口以配置该解码器实例。 |
| [OH_AudioDecoder_GetOutputDescription](_audio_decoder.md#oh_audiodecoder_getoutputdescription) (OH_AVCodec \*codec) | OH_AVFormat \*<br/>获取该解码器输出数据的描述信息,需要注意的是,返回值所指向的OH_AVFormat实例需调用者手动释放。 |
| [OH_AudioDecoder_SetParameter](_audio_decoder.md#oh_audiodecoder_setparameter) (OH_AVCodec \*codec, OH_AVFormat \*format) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>向解码器设置动态参数,注意:该接口仅能在解码器被启动后调用,同时错误的参数设置,可能会导致解码失败。 |
| [OH_AudioDecoder_PushInputData](_audio_decoder.md#oh_audiodecoder_pushinputdata) (OH_AVCodec \*codec, uint32_t index, [OH_AVCodecBufferAttr](_o_h___a_v_codec_buffer_attr.md) attr) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>将填充好数据的输入Buffer提交给音频解码器。[OH_AVCodecOnNeedInputData](_codec_base.md#oh_avcodeconneedinputdata)回调会报告可用的输入 Buffer及对应的索引值。一旦指定索引的Buffer被提交给解码器,直到再一次收到[OH_AVCodecOnNeedInputData](_codec_base.md#oh_avcodeconneedinputdata) 回调报告相同索引的Buffer可用前,该Buffer都不可以再次被访问。另外,对于部分解码器,要求在最开始给解码器输入 Codec-Specific-Data,用以初始化解码器的解码过程。 |
| [OH_AudioDecoder_FreeOutputData](_audio_decoder.md#oh_audiodecoder_freeoutputdata) (OH_AVCodec \*codec, uint32_t index) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>将处理结束的输出Buffer交还给解码器。 |
| [OH_AudioDecoder_CreateByMime](_audio_decoder.md#oh_audiodecoder_createbymime) (const char \*mime) | 通过mime类型创建一个音频解码器实例,大多数情况下推荐使用该接口。 |
| [OH_AudioDecoder_CreateByName](_audio_decoder.md#oh_audiodecoder_createbyname) (const char \*name) | 通过音频解码器名称创建一个音频解码器实例,使用这个接口的前提是必须清楚解码器准确的名称。 |
| [OH_AudioDecoder_Destroy](_audio_decoder.md#oh_audiodecoder_destroy) (OH_AVCodec \*codec) | 清空解码器内部资源,并销毁解码器实例 |
| [OH_AudioDecoder_SetCallback](_audio_decoder.md#oh_audiodecoder_setcallback) (OH_AVCodec \*codec, [OH_AVCodecAsyncCallback](_o_h___a_v_codec_async_callback.md) callback, void \*userData) | 设置异步回调函数,使得你的应用能够响应音频解码器产生的事件,该接口被调用必须是在Prepare被调用前。 |
| [OH_AudioDecoder_Configure](_audio_decoder.md#oh_audiodecoder_configure) (OH_AVCodec \*codec, OH_AVFormat \*format) | 配置音频解码器,典型地,需要配置被解码音频轨道的描述信息,这些信息能够从容器中提取出来, 该接口被调用必须是在Prepare被调用前。 |
| [OH_AudioDecoder_Prepare](_audio_decoder.md#oh_audiodecoder_prepare) (OH_AVCodec \*codec) | 准备解码器内部资源,调用该接口前必须先调用Configure接口。 |
| [OH_AudioDecoder_Start](_audio_decoder.md#oh_audiodecoder_start) (OH_AVCodec \*codec) | 启动解码器,该接口必须在已经Prepare成功后调用。 在启动成功后,解码器将开始报告[OH_AVCodecOnNeedInputData](_codec_base.md#oh_avcodeconneedinputdata)事件。 |
| [OH_AudioDecoder_Stop](_audio_decoder.md#oh_audiodecoder_stop) (OH_AVCodec \*codec) | 停止解码器。在停止后可通过Start重新进入Started状态,但需要注意的是,若先前给解码器输入过 Codec-Specific-Data,则需要重新输入。 |
| [OH_AudioDecoder_Flush](_audio_decoder.md#oh_audiodecoder_flush) (OH_AVCodec \*codec) | 清空解码器内部缓存的输入输出数据。在该接口被调用后,所有先前通过异步回调报告的Buffer的索引都将 失效,确保不要再访问这些索引对应的Buffers。 |
| [OH_AudioDecoder_Reset](_audio_decoder.md#oh_audiodecoder_reset) (OH_AVCodec \*codec) | 重置解码器。如需继续解码工作,需要重新调用Configure接口以配置该解码器实例。 |
| [OH_AudioDecoder_GetOutputDescription](_audio_decoder.md#oh_audiodecoder_getoutputdescription) (OH_AVCodec \*codec) | 获取该解码器输出数据的描述信息,需要注意的是,返回值所指向的OH_AVFormat实例需调用者手动释放。 |
| [OH_AudioDecoder_SetParameter](_audio_decoder.md#oh_audiodecoder_setparameter) (OH_AVCodec \*codec, OH_AVFormat \*format) | 向解码器设置动态参数,注意:该接口仅能在解码器被启动后调用,同时错误的参数设置,可能会导致解码失败。 |
| [OH_AudioDecoder_PushInputData](_audio_decoder.md#oh_audiodecoder_pushinputdata) (OH_AVCodec \*codec, uint32_t index, [OH_AVCodecBufferAttr](_o_h___a_v_codec_buffer_attr.md) attr) | 将填充好数据的输入Buffer提交给音频解码器。[OH_AVCodecOnNeedInputData](_codec_base.md#oh_avcodeconneedinputdata)回调会报告可用的输入 Buffer及对应的索引值。一旦指定索引的Buffer被提交给解码器,直到再一次收到[OH_AVCodecOnNeedInputData](_codec_base.md#oh_avcodeconneedinputdata) 回调报告相同索引的Buffer可用前,该Buffer都不可以再次被访问。另外,对于部分解码器,要求在最开始给解码器输入 Codec-Specific-Data,用以初始化解码器的解码过程。 |
| [OH_AudioDecoder_FreeOutputData](_audio_decoder.md#oh_audiodecoder_freeoutputdata) (OH_AVCodec \*codec, uint32_t index) | 将处理结束的输出Buffer交还给解码器。 |
......@@ -7,8 +7,7 @@
**起始版本:**
9
**Version:**
1.0
**相关模块:**
[AudioEncoder](_audio_encoder.md)
......@@ -21,17 +20,17 @@
| 名称 | 描述 |
| -------- | -------- |
| [OH_AudioEncoder_CreateByMime](_audio_encoder.md#oh_audioencoder_createbymime) (const char \*mime) | OH_AVCodec \*<br/>通过mime类型创建一个音频编码器实例,大多数情况下推荐使用该接口。 |
| [OH_AudioEncoder_CreateByName](_audio_encoder.md#oh_audioencoder_createbyname) (const char \*name) | OH_AVCodec \*<br/>通过音频编码器名称创建一个音频编码器实例,使用这个接口的前提是必须清楚编码器准确的名称。 |
| [OH_AudioEncoder_Destroy](_audio_encoder.md#oh_audioencoder_destroy) (OH_AVCodec \*codec) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>清空编码器内部资源,并销毁编码器实例。 |
| [OH_AudioEncoder_SetCallback](_audio_encoder.md#oh_audioencoder_setcallback) (OH_AVCodec \*codec, [OH_AVCodecAsyncCallback](_o_h___a_v_codec_async_callback.md) callback, void \*userData) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>设置异步回调函数,使得你的应用能够响应音频编码器产生的事件,该接口被调用必须是在Prepare被调用前。 |
| [OH_AudioEncoder_Configure](_audio_encoder.md#oh_audioencoder_configure) (OH_AVCodec \*codec, OH_AVFormat \*format) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>配置音频编码器,典型地,需要配置被编码音频轨道的描述信息,该接口被调用必须是在Prepare被调用前。 |
| [OH_AudioEncoder_Prepare](_audio_encoder.md#oh_audioencoder_prepare) (OH_AVCodec \*codec) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>准备编码器内部资源,调用该接口前必须先调用Configure接口。 |
| [OH_AudioEncoder_Start](_audio_encoder.md#oh_audioencoder_start) (OH_AVCodec \*codec) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>启动编码器,该接口必须在已经Prepare成功后调用。 在启动成功后,编码器将开始报告[OH_AVCodecOnNeedInputData](_codec_base.md#oh_avcodeconneedinputdata)事件。 |
| [OH_AudioEncoder_Stop](_audio_encoder.md#oh_audioencoder_stop) (OH_AVCodec \*codec) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>停止编码器。在停止后可通过Start重新进入Started状态。 |
| [OH_AudioEncoder_Flush](_audio_encoder.md#oh_audioencoder_flush) (OH_AVCodec \*codec) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>清空编码器内部缓存的输入输出数据。在该接口被调用后,所有先前通过异步回调报告的Buffer的索引都将 失效,确保不要再访问这些索引对应的Buffers。 |
| [OH_AudioEncoder_Reset](_audio_encoder.md#oh_audioencoder_reset) (OH_AVCodec \*codec) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>重置编码器。如需继续编码工作,需要重新调用Configure接口以配置该编码器实例。 |
| [OH_AudioEncoder_GetOutputDescription](_audio_encoder.md#oh_audioencoder_getoutputdescription) (OH_AVCodec \*codec) | OH_AVFormat \*<br/>获取该编码器输出数据的描述信息,需要注意的是,返回值所指向的OH_AVFormat实例需调用者手动释放。 |
| [OH_AudioEncoder_SetParameter](_audio_encoder.md#oh_audioencoder_setparameter) (OH_AVCodec \*codec, OH_AVFormat \*format) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>向编码器设置动态参数,注意:该接口仅能在编码器被启动后调用,同时错误的参数设置,可能会导致编码失败。 |
| [OH_AudioEncoder_PushInputData](_audio_encoder.md#oh_audioencoder_pushinputdata) (OH_AVCodec \*codec, uint32_t index, [OH_AVCodecBufferAttr](_o_h___a_v_codec_buffer_attr.md) attr) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>将填充好数据的输入Buffer提交给音频编码器。[OH_AVCodecOnNeedInputData](_codec_base.md#oh_avcodeconneedinputdata)回调会报告可用的输入 Buffer及对应的索引值。一旦指定索引的Buffer被提交给编码器,直到再一次收到[OH_AVCodecOnNeedInputData](_codec_base.md#oh_avcodeconneedinputdata) 回调报告相同索引的Buffer可用前,该Buffer都不可以再次被访问。 |
| [OH_AudioEncoder_FreeOutputData](_audio_encoder.md#oh_audioencoder_freeoutputdata) (OH_AVCodec \*codec, uint32_t index) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>将处理结束的输出Buffer交还给编码器。 |
| [OH_AudioEncoder_CreateByMime](_audio_encoder.md#oh_audioencoder_createbymime) (const char \*mime) | 通过mime类型创建一个音频编码器实例,大多数情况下推荐使用该接口。 |
| [OH_AudioEncoder_CreateByName](_audio_encoder.md#oh_audioencoder_createbyname) (const char \*name) | 通过音频编码器名称创建一个音频编码器实例,使用这个接口的前提是必须清楚编码器准确的名称。 |
| [OH_AudioEncoder_Destroy](_audio_encoder.md#oh_audioencoder_destroy) (OH_AVCodec \*codec) | 清空编码器内部资源,并销毁编码器实例。 |
| [OH_AudioEncoder_SetCallback](_audio_encoder.md#oh_audioencoder_setcallback) (OH_AVCodec \*codec, [OH_AVCodecAsyncCallback](_o_h___a_v_codec_async_callback.md) callback, void \*userData) | 设置异步回调函数,使得你的应用能够响应音频编码器产生的事件,该接口被调用必须是在Prepare被调用前。 |
| [OH_AudioEncoder_Configure](_audio_encoder.md#oh_audioencoder_configure) (OH_AVCodec \*codec, OH_AVFormat \*format) | 配置音频编码器,典型地,需要配置被编码音频轨道的描述信息,该接口被调用必须是在Prepare被调用前。 |
| [OH_AudioEncoder_Prepare](_audio_encoder.md#oh_audioencoder_prepare) (OH_AVCodec \*codec) | 准备编码器内部资源,调用该接口前必须先调用Configure接口。 |
| [OH_AudioEncoder_Start](_audio_encoder.md#oh_audioencoder_start) (OH_AVCodec \*codec) | 启动编码器,该接口必须在已经Prepare成功后调用。 在启动成功后,编码器将开始报告[OH_AVCodecOnNeedInputData](_codec_base.md#oh_avcodeconneedinputdata)事件。 |
| [OH_AudioEncoder_Stop](_audio_encoder.md#oh_audioencoder_stop) (OH_AVCodec \*codec) | 停止编码器。在停止后可通过Start重新进入Started状态。 |
| [OH_AudioEncoder_Flush](_audio_encoder.md#oh_audioencoder_flush) (OH_AVCodec \*codec) | 清空编码器内部缓存的输入输出数据。在该接口被调用后,所有先前通过异步回调报告的Buffer的索引都将 失效,确保不要再访问这些索引对应的Buffers。 |
| [OH_AudioEncoder_Reset](_audio_encoder.md#oh_audioencoder_reset) (OH_AVCodec \*codec) | 重置编码器。如需继续编码工作,需要重新调用Configure接口以配置该编码器实例。 |
| [OH_AudioEncoder_GetOutputDescription](_audio_encoder.md#oh_audioencoder_getoutputdescription) (OH_AVCodec \*codec) | 获取该编码器输出数据的描述信息,需要注意的是,返回值所指向的OH_AVFormat实例需调用者手动释放。 |
| [OH_AudioEncoder_SetParameter](_audio_encoder.md#oh_audioencoder_setparameter) (OH_AVCodec \*codec, OH_AVFormat \*format) | 向编码器设置动态参数,注意:该接口仅能在编码器被启动后调用,同时错误的参数设置,可能会导致编码失败。 |
| [OH_AudioEncoder_PushInputData](_audio_encoder.md#oh_audioencoder_pushinputdata) (OH_AVCodec \*codec, uint32_t index, [OH_AVCodecBufferAttr](_o_h___a_v_codec_buffer_attr.md) attr) | 将填充好数据的输入Buffer提交给音频编码器。[OH_AVCodecOnNeedInputData](_codec_base.md#oh_avcodeconneedinputdata)回调会报告可用的输入 Buffer及对应的索引值。一旦指定索引的Buffer被提交给编码器,直到再一次收到[OH_AVCodecOnNeedInputData](_codec_base.md#oh_avcodeconneedinputdata) 回调报告相同索引的Buffer可用前,该Buffer都不可以再次被访问。 |
| [OH_AudioEncoder_FreeOutputData](_audio_encoder.md#oh_audioencoder_freeoutputdata) (OH_AVCodec \*codec, uint32_t index) | 将处理结束的输出Buffer交还给编码器。 |
......@@ -7,8 +7,7 @@
**起始版本:**
9
**Version:**
1.0
**相关模块:**
[CodecBase](_codec_base.md)
......@@ -19,49 +18,47 @@
### 结构体
| 名称 | 描述 |
| 名称 | 描述 |
| -------- | -------- |
| [OH_AVCodecBufferAttr](_o_h___a_v_codec_buffer_attr.md) | struct<br/>定义OH_AVCodec的Buffer描述信息。 |
| [OH_AVCodecAsyncCallback](_o_h___a_v_codec_async_callback.md) | struct<br/>AVCodec所有的异步回调函数指针集合。注册一个该结构体实例给OH_AVCodec实例,并处理通过该回调报告 的信息,以确保AVCodec正常运转。 |
| [OH_AVCodecBufferAttr](_o_h___a_v_codec_buffer_attr.md) | 定义OH_AVCodec的Buffer描述信息。|
| [OH_AVCodecAsyncCallback](_o_h___a_v_codec_async_callback.md) | AVCodec所有的异步回调函数指针集合。注册一个该结构体实例给OH_AVCodec实例,并处理通过该回调报告 的信息,以确保AVCodec正常运转。|
### 类型定义
| 名称 | 描述 |
| 名称 | 描述 |
| -------- | -------- |
| **OHNativeWindow** | typedef struct NativeWindow |
| **OH_AVCodec** | typedef struct OH_AVCodec |
| [OH_AVCodecBufferFlags](_codec_base.md#oh_avcodecbufferflags) | typedef enum [OH_AVCodecBufferFlags](_codec_base.md#oh_avcodecbufferflags)<br/>枚举OH_AVCodec的Buffer标记的类别。 |
| [OH_AVCodecBufferAttr](_codec_base.md#oh_avcodecbufferattr) | typedef struct [OH_AVCodecBufferAttr](_o_h___a_v_codec_buffer_attr.md)<br/>定义OH_AVCodec的Buffer描述信息。 |
| [OH_AVCodecOnError](_codec_base.md#oh_avcodeconerror)) (OH_AVCodec \*codec, int32_t errorCode, void \*userData) | typedef void(\*<br/>当OH_AVCodec实例运行发生错误时,该函数指针会被调用以报告具体错误信息。 |
| [OH_AVCodecOnStreamChanged](_codec_base.md#oh_avcodeconstreamchanged)) (OH_AVCodec \*codec, OH_AVFormat \*format, void \*userData) | typedef void(\*<br/>当输出流发生变化时,该函数指针会被调用以报告新的流描述信息。 需要注意的时,OH_AVFormat指针的生命周期仅维持在该函数指针被调用时上有效,禁止在调用结束后继续访问。 |
| [OH_AVCodecOnNeedInputData](_codec_base.md#oh_avcodeconneedinputdata)) (OH_AVCodec \*codec, uint32_t index, OH_AVMemory \*data, void \*userData) | typedef void(\*<br/>当AVCodec运行过程中需要新的输入数据时,该函数指针会被调用,并携带一块可用的Buffer以供填入新的输入数据。 |
| [OH_AVCodecOnNewOutputData](_codec_base.md#oh_avcodeconnewoutputdata)) (OH_AVCodec \*codec, uint32_t index, OH_AVMemory \*data, [OH_AVCodecBufferAttr](_o_h___a_v_codec_buffer_attr.md) \*attr, void \*userData) | typedef void(\*<br/>当AVCodec运行过程中产生了新的输出数据时,该函数指针会被调用,并携带一块包含新输出数据的Buffer, 需要注意的是,OH_AVCodecBufferAttr指针的生命周期仅维持在该函数指针被调用时有效,禁止调用结束后继续访问。 |
| [OH_AVCodecAsyncCallback](_codec_base.md#oh_avcodecasynccallback) | typedef struct [OH_AVCodecAsyncCallback](_o_h___a_v_codec_async_callback.md)<br/>AVCodec所有的异步回调函数指针集合。注册一个该结构体实例给OH_AVCodec实例,并处理通过该回调报告 的信息,以确保AVCodec正常运转。 |
| [OH_MediaType](_codec_base.md#oh_mediatype) | typedef enum [OH_MediaType](_codec_base.md#oh_mediatype)<br/>媒体类型。 |
| [OH_AVCProfile](_codec_base.md#oh_avcprofile) | typedef enum [OH_AVCProfile](_codec_base.md#oh_avcprofile)<br/>AVC Profile枚举。 |
| [OH_AACProfile](_codec_base.md#oh_aacprofile) | typedef enum [OH_AACProfile](_codec_base.md#oh_aacprofile)<br/>AAC Profile枚举。 |
| [OH_AVCodecBufferFlags](_codec_base.md#oh_avcodecbufferflags) | 枚举OH_AVCodec的Buffer标记的类别。|
| [OH_AVCodecBufferAttr](_codec_base.md#oh_avcodecbufferattr) | 定义OH_AVCodec的Buffer描述信息。|
| (\*[OH_AVCodecOnError](_codec_base.md#oh_avcodeconerror)) (OH_AVCodec \*codec, int32_t errorCode, void \*userData) | 当OH_AVCodec实例运行发生错误时,该函数指针会被调用以报告具体错误信息。|
| (\*[OH_AVCodecOnStreamChanged](_codec_base.md#oh_avcodeconstreamchanged)) (OH_AVCodec \*codec, OH_AVFormat \*format, void \*userData) | 当输出流发生变化时,该函数指针会被调用以报告新的流描述信息。 需要注意的时,OH_AVFormat指针的生命周期仅维持在该函数指针被调用时上有效,禁止在调用结束后继续访问。|
| (\*[OH_AVCodecOnNeedInputData](_codec_base.md#oh_avcodeconneedinputdata)) (OH_AVCodec \*codec, uint32_t index, OH_AVMemory \*data, void \*userData) | 当AVCodec运行过程中需要新的输入数据时,该函数指针会被调用,并携带一块可用的Buffer以供填入新的输入数据。|
| (\*[OH_AVCodecOnNewOutputData](_codec_base.md#oh_avcodeconnewoutputdata)) (OH_AVCodec \*codec, uint32_t index, OH_AVMemory \*data, [OH_AVCodecBufferAttr](_o_h___a_v_codec_buffer_attr.md) \*attr, void \*userData) | 当AVCodec运行过程中产生了新的输出数据时,该函数指针会被调用,并携带一块包含新输出数据的Buffer, 需要注意的是,OH_AVCodecBufferAttr指针的生命周期仅维持在该函数指针被调用时有效,禁止调用结束后继续访问。|
| [OH_AVCodecAsyncCallback](_codec_base.md#oh_avcodecasynccallback) | AVCodec所有的异步回调函数指针集合。注册一个该结构体实例给OH_AVCodec实例,并处理通过该回调报告 的信息,以确保AVCodec正常运转。|
| [OH_MediaType](_codec_base.md#oh_mediatype) | 媒体类型。|
| [OH_AVCProfile](_codec_base.md#oh_avcprofile) | AVC Profile枚举。|
| [OH_AACProfile](_codec_base.md#oh_aacprofile) | AAC Profile枚举。|
### 枚举
| 名称 | 描述 |
| 名称 | 描述 |
| -------- | -------- |
| [OH_AVCodecBufferFlags](_codec_base.md#oh_avcodecbufferflags) {<br/>**AVCODEC_BUFFER_FLAGS_NONE** = 0, **AVCODEC_BUFFER_FLAGS_EOS** = 1 &lt;&lt; 0, **AVCODEC_BUFFER_FLAGS_SYNC_FRAME** = 1 &lt;&lt; 1, **AVCODEC_BUFFER_FLAGS_INCOMPLETE_FRAME** = 1 &lt;&lt; 2,<br/> **AVCODEC_BUFFER_FLAGS_CODEC_DATA** = 1 &lt;&lt; 3<br/>} | 枚举OH_AVCodec的Buffer标记的类别。 |
| [OH_MediaType](_codec_base.md#oh_mediatype) { **MEDIA_TYPE_AUD** = 0, **MEDIA_TYPE_VID** = 1 } | 媒体类型。 |
| [OH_AVCProfile](_codec_base.md#oh_avcprofile) { **AVC_PROFILE_BASELINE** = 0, **AVC_PROFILE_HIGH** = 4, **AVC_PROFILE_MAIN** = 8 } | AVC Profile枚举。 |
| [OH_AACProfile](_codec_base.md#oh_aacprofile) { **AAC_PROFILE_LC** = 0 } | AAC Profile枚举。 |
| [OH_AVCodecBufferFlags](_codec_base.md#oh_avcodecbufferflags) {<br/>**AVCODEC_BUFFER_FLAGS_NONE** = 0, **AVCODEC_BUFFER_FLAGS_EOS** = 1 &lt;&lt; 0, **AVCODEC_BUFFER_FLAGS_SYNC_FRAME** = 1 &lt;&lt; 1, **AVCODEC_BUFFER_FLAGS_INCOMPLETE_FRAME** = 1 &lt;&lt; 2,<br/> **AVCODEC_BUFFER_FLAGS_CODEC_DATA** = 1 &lt;&lt; 3<br/>} | 枚举OH_AVCodec的Buffer标记的类别。|
| [OH_MediaType](_codec_base.md#oh_mediatype) { **MEDIA_TYPE_AUD** = 0, **MEDIA_TYPE_VID** = 1 } | 媒体类型。|
| [OH_AVCProfile](_codec_base.md#oh_avcprofile) { **AVC_PROFILE_BASELINE** = 0, **AVC_PROFILE_HIGH** = 4, **AVC_PROFILE_MAIN** = 8 } | AVC Profile枚举。|
| [OH_AACProfile](_codec_base.md#oh_aacprofile) { **AAC_PROFILE_LC** = 0 } | AAC Profile枚举。|
### 变量
| 名称 | 描述 |
| 名称 | 描述 |
| -------- | -------- |
| [OH_AVCODEC_MIMETYPE_VIDEO_AVC](_codec_base.md#oh_avcodec_mimetype_video_avc) | const char \*<br/>AVC视频编解码器的MIME类型。 |
| [OH_AVCODEC_MIMETYPE_AUDIO_AAC](_codec_base.md#oh_avcodec_mimetype_audio_aac) | const char \*<br/>AAC音频编解码器的MIME类型。 |
| [OH_ED_KEY_TIME_STAMP](_codec_base.md#oh_ed_key_time_stamp) | const char \*<br/>提供统一的surface Buffer附属数据的字符描述符。 |
| [OH_AVCODEC_MIMETYPE_VIDEO_AVC](_codec_base.md#oh_avcodec_mimetype_video_avc) | const char \*<br/>AVC视频编解码器的MIME类型。|
| [OH_AVCODEC_MIMETYPE_AUDIO_AAC](_codec_base.md#oh_avcodec_mimetype_audio_aac) | const char \*<br/>AAC音频编解码器的MIME类型。|
| [OH_ED_KEY_TIME_STAMP](_codec_base.md#oh_ed_key_time_stamp) | const char \*<br/>提供统一的surface Buffer附属数据的字符描述符。|
| [OH_ED_KEY_EOS](_codec_base.md#oh_ed_key_eos) | const char \* |
| [OH_MD_KEY_TRACK_TYPE](_codec_base.md#oh_md_key_track_type) | const char \*<br/>为媒体播放框架提供统一的字符描述符。 |
| [OH_MD_KEY_TRACK_TYPE](_codec_base.md#oh_md_key_track_type) | const char \*<br/>为媒体播放框架提供统一的字符描述符。|
| [OH_MD_KEY_CODEC_MIME](_codec_base.md#oh_md_key_codec_mime) | const char \* |
| [OH_MD_KEY_DURATION](_codec_base.md#oh_md_key_duration) | const char \* |
| [OH_MD_KEY_BITRATE](_codec_base.md#oh_md_key_bitrate) | const char \* |
......
......@@ -7,8 +7,7 @@
**起始版本:**
9
**Version:**
1.0
**相关模块:**
[VideoDecoder](_video_decoder.md)
......@@ -19,21 +18,21 @@
### 函数
| 名称 | 描述 |
| 名称 | 描述 |
| -------- | -------- |
| [OH_VideoDecoder_CreateByMime](_video_decoder.md#oh_videodecoder_createbymime) (const char \*mime) | OH_AVCodec \*<br/>通过mime类型创建一个视频解码器实例,大多数情况下推荐使用该接口。 |
| [OH_VideoDecoder_CreateByName](_video_decoder.md#oh_videodecoder_createbyname) (const char \*name) | OH_AVCodec \*<br/>通过视频解码器名称创建一个视频解码器实例,使用这个接口的前提是必须清楚解码器准确的名称。 |
| [OH_VideoDecoder_Destroy](_video_decoder.md#oh_videodecoder_destroy) (OH_AVCodec \*codec) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>清空解码器内部资源,并销毁解码器实例。 |
| [OH_VideoDecoder_SetCallback](_video_decoder.md#oh_videodecoder_setcallback) (OH_AVCodec \*codec, [OH_AVCodecAsyncCallback](_o_h___a_v_codec_async_callback.md) callback, void \*userData) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>设置异步回调函数,使得你的应用能够响应视频解码器产生的事件,该接口被调用必须是在Prepare被调用前。 |
| [OH_VideoDecoder_SetSurface](_video_decoder.md#oh_videodecoder_setsurface) (OH_AVCodec \*codec, OHNativeWindow \*window) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>指定输出Surface,以提供视频解码输出,该接口被调用必须是在Prepare被调用前。 |
| [OH_VideoDecoder_Configure](_video_decoder.md#oh_videodecoder_configure) (OH_AVCodec \*codec, OH_AVFormat \*format) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>配置视频解码器,典型地,需要配置被解码视频轨道的描述信息,这些信息能够从容器中提取出来, 该接口被调用必须是在Prepare被调用前。 |
| [OH_VideoDecoder_Prepare](_video_decoder.md#oh_videodecoder_prepare) (OH_AVCodec \*codec) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>准备解码器内部资源,调用该接口前必须先调用Configure接口。 |
| [OH_VideoDecoder_Start](_video_decoder.md#oh_videodecoder_start) (OH_AVCodec \*codec) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>启动解码器,该接口必须在已经Prepare成功后调用。 在启动成功后,解码器将开始报告[OH_AVCodecOnNeedInputData](_codec_base.md#oh_avcodeconneedinputdata)事件。 |
| [OH_VideoDecoder_Stop](_video_decoder.md#oh_videodecoder_stop) (OH_AVCodec \*codec) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>停止解码器。在停止后可通过Start重新进入Started状态,但需要注意的是,若先前给解码器输入过 Codec-Specific-Data,则需要重新输入。 |
| [OH_VideoDecoder_Flush](_video_decoder.md#oh_videodecoder_flush) (OH_AVCodec \*codec) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>清空解码器内部缓存的输入输出数据。在该接口被调用后,所有先前通过异步回调报告的Buffer的索引都将 失效,确保不要再访问这些索引对应的Buffers。 |
| [OH_VideoDecoder_Reset](_video_decoder.md#oh_videodecoder_reset) (OH_AVCodec \*codec) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>重置解码器。如需继续解码工作,需要重新调用Configure接口以配置该解码器实例。 |
| [OH_VideoDecoder_GetOutputDescription](_video_decoder.md#oh_videodecoder_getoutputdescription) (OH_AVCodec \*codec) | OH_AVFormat \*<br/>获取该解码器输出数据的描述信息,需要注意的是,返回值所指向的OH_AVFormat实例的生命周期 将会再下一次调用该接口时或者该OH_AVCodec实例被销毁时失效。 |
| [OH_VideoDecoder_SetParameter](_video_decoder.md#oh_videodecoder_setparameter) (OH_AVCodec \*codec, OH_AVFormat \*format) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>向解码器设置动态参数,注意:该接口仅能在解码器被启动后调用,同时错误的参数设置,可能会导致解码失败。 |
| [OH_VideoDecoder_PushInputData](_video_decoder.md#oh_videodecoder_pushinputdata) (OH_AVCodec \*codec, uint32_t index, [OH_AVCodecBufferAttr](_o_h___a_v_codec_buffer_attr.md) attr) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>将填充好数据的输入Buffer提交给视频解码器。[OH_AVCodecOnNeedInputData](_codec_base.md#oh_avcodeconneedinputdata)回调会报告可用的输入 Buffer及对应的索引值。一旦指定索引的Buffer被提交给解码器,直到再一次收到[OH_AVCodecOnNeedInputData](_codec_base.md#oh_avcodeconneedinputdata) 回调报告相同索引的Buffer可用前,该Buffer都不可以再次被访问。另外,对于部分解码器,要求在最开始给解码器输入 Codec-Specific-Data,用以初始化解码器的解码过程,例如H264格式的PPS/SPS数据。 |
| [OH_VideoDecoder_RenderOutputData](_video_decoder.md#oh_videodecoder_renderoutputdata) (OH_AVCodec \*codec, uint32_t index) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>将处理结束的输出Buffer交还给解码器,并通知解码器完成将该Buffer内包含的解码后的数据在输出Surface上渲染。 如果先前未配置输出Surface,调用该接口仅仅将指定索引对应的输出Buffer交还给解码器。 |
| [OH_VideoDecoder_FreeOutputData](_video_decoder.md#oh_videodecoder_freeoutputdata) (OH_AVCodec \*codec, uint32_t index) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>将处理结束的输出Buffer交还给解码器。 |
| [OH_VideoDecoder_CreateByMime](_video_decoder.md#oh_videodecoder_createbymime) (const char \*mime) | 通过mime类型创建一个视频解码器实例,大多数情况下推荐使用该接口。|
| [OH_VideoDecoder_CreateByName](_video_decoder.md#oh_videodecoder_createbyname) (const char \*name) | 通过视频解码器名称创建一个视频解码器实例,使用这个接口的前提是必须清楚解码器准确的名称。|
| [OH_VideoDecoder_Destroy](_video_decoder.md#oh_videodecoder_destroy) (OH_AVCodec \*codec) | 清空解码器内部资源,并销毁解码器实例。|
| [OH_VideoDecoder_SetCallback](_video_decoder.md#oh_videodecoder_setcallback) (OH_AVCodec \*codec, [OH_AVCodecAsyncCallback](_o_h___a_v_codec_async_callback.md) callback, void \*userData) | 设置异步回调函数,使得你的应用能够响应视频解码器产生的事件,该接口被调用必须是在Prepare被调用前。|
| [OH_VideoDecoder_SetSurface](_video_decoder.md#oh_videodecoder_setsurface) (OH_AVCodec \*codec, OHNativeWindow \*window) | 指定输出Surface,以提供视频解码输出,该接口被调用必须是在Prepare被调用前。|
| [OH_VideoDecoder_Configure](_video_decoder.md#oh_videodecoder_configure) (OH_AVCodec \*codec, OH_AVFormat \*format) | 配置视频解码器,典型地,需要配置被解码视频轨道的描述信息,这些信息能够从容器中提取出来, 该接口被调用必须是在Prepare被调用前。|
| [OH_VideoDecoder_Prepare](_video_decoder.md#oh_videodecoder_prepare) (OH_AVCodec \*codec) | 准备解码器内部资源,调用该接口前必须先调用Configure接口。|
| [OH_VideoDecoder_Start](_video_decoder.md#oh_videodecoder_start) (OH_AVCodec \*codec) | 启动解码器,该接口必须在已经Prepare成功后调用。 在启动成功后,解码器将开始报告[OH_AVCodecOnNeedInputData](_codec_base.md#oh_avcodeconneedinputdata)事件。|
| [OH_VideoDecoder_Stop](_video_decoder.md#oh_videodecoder_stop) (OH_AVCodec \*codec) | 停止解码器。在停止后可通过Start重新进入Started状态,但需要注意的是,若先前给解码器输入过 Codec-Specific-Data,则需要重新输入。|
| [OH_VideoDecoder_Flush](_video_decoder.md#oh_videodecoder_flush) (OH_AVCodec \*codec) | 清空解码器内部缓存的输入输出数据。在该接口被调用后,所有先前通过异步回调报告的Buffer的索引都将 失效,确保不要再访问这些索引对应的Buffers。|
| [OH_VideoDecoder_Reset](_video_decoder.md#oh_videodecoder_reset) (OH_AVCodec \*codec) | 重置解码器。如需继续解码工作,需要重新调用Configure接口以配置该解码器实例。|
| [OH_VideoDecoder_GetOutputDescription](_video_decoder.md#oh_videodecoder_getoutputdescription) (OH_AVCodec \*codec) | 获取该解码器输出数据的描述信息,需要注意的是,返回值所指向的OH_AVFormat实例的生命周期 将会再下一次调用该接口时或者该OH_AVCodec实例被销毁时失效。|
| [OH_VideoDecoder_SetParameter](_video_decoder.md#oh_videodecoder_setparameter) (OH_AVCodec \*codec, OH_AVFormat \*format) | 向解码器设置动态参数,注意:该接口仅能在解码器被启动后调用,同时错误的参数设置,可能会导致解码失败。|
| [OH_VideoDecoder_PushInputData](_video_decoder.md#oh_videodecoder_pushinputdata) (OH_AVCodec \*codec, uint32_t index, [OH_AVCodecBufferAttr](_o_h___a_v_codec_buffer_attr.md) attr) | 将填充好数据的输入Buffer提交给视频解码器。[OH_AVCodecOnNeedInputData](_codec_base.md#oh_avcodeconneedinputdata)回调会报告可用的输入 Buffer及对应的索引值。一旦指定索引的Buffer被提交给解码器,直到再一次收到[OH_AVCodecOnNeedInputData](_codec_base.md#oh_avcodeconneedinputdata) 回调报告相同索引的Buffer可用前,该Buffer都不可以再次被访问。另外,对于部分解码器,要求在最开始给解码器输入 Codec-Specific-Data,用以初始化解码器的解码过程,例如H264格式的PPS/SPS数据。|
| [OH_VideoDecoder_RenderOutputData](_video_decoder.md#oh_videodecoder_renderoutputdata) (OH_AVCodec \*codec, uint32_t index) | 将处理结束的输出Buffer交还给解码器,并通知解码器完成将该Buffer内包含的解码后的数据在输出Surface上渲染。 如果先前未配置输出Surface,调用该接口仅仅将指定索引对应的输出Buffer交还给解码器。|
| [OH_VideoDecoder_FreeOutputData](_video_decoder.md#oh_videodecoder_freeoutputdata) (OH_AVCodec \*codec, uint32_t index) | 将处理结束的输出Buffer交还给解码器。|
......@@ -7,8 +7,7 @@
**起始版本:**
9
**Version:**
1.0
**相关模块:**
[VideoEncoder](_video_encoder.md)
......@@ -19,34 +18,34 @@
### 类型定义
| 名称 | 描述 |
| 名称 | 描述 |
| -------- | -------- |
| [OH_VideoEncodeBitrateMode](_video_encoder.md#oh_videoencodebitratemode) | typedef enum [OH_VideoEncodeBitrateMode](_video_encoder.md#oh_videoencodebitratemode)<br/>视频编码的比特率模式。 |
| [OH_VideoEncodeBitrateMode](_video_encoder.md#oh_videoencodebitratemode) | 视频编码的比特率模式。|
### 枚举
| 名称 | 描述 |
| 名称 | 描述 |
| -------- | -------- |
| [OH_VideoEncodeBitrateMode](_video_encoder.md#oh_videoencodebitratemode) { **CBR** = 0, **VBR** = 1, **CQ** = 2 } | 视频编码的比特率模式。 |
| [OH_VideoEncodeBitrateMode](_video_encoder.md#oh_videoencodebitratemode) { **CBR** = 0, **VBR** = 1, **CQ** = 2 } | 视频编码的比特率模式。|
### 函数
| 名称 | 描述 |
| 名称 | 描述 |
| -------- | -------- |
| [OH_VideoEncoder_CreateByMime](_video_encoder.md#oh_videoencoder_createbymime) (const char \*mime) | OH_AVCodec \*<br/>通过mime类型创建一个视频编码器实例,大多数情况下推荐使用该接口。 |
| [OH_VideoEncoder_CreateByName](_video_encoder.md#oh_videoencoder_createbyname) (const char \*name) | OH_AVCodec \*<br/>通过视频编码器名称创建一个视频编码器实例,使用这个接口的前提是必须清楚编码器准确的名称。 |
| [OH_VideoEncoder_Destroy](_video_encoder.md#oh_videoencoder_destroy) (OH_AVCodec \*codec) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>清空编码器内部资源,并销毁编码器实例。 |
| [OH_VideoEncoder_SetCallback](_video_encoder.md#oh_videoencoder_setcallback) (OH_AVCodec \*codec, [OH_AVCodecAsyncCallback](_o_h___a_v_codec_async_callback.md) callback, void \*userData) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>设置异步回调函数,使得你的应用能够响应视频编码器产生的事件,该接口被调用必须是在Prepare被调用前。 |
| [OH_VideoEncoder_Configure](_video_encoder.md#oh_videoencoder_configure) (OH_AVCodec \*codec, OH_AVFormat \*format) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>配置视频编码器,典型地,需要配置被编码视频轨道的描述信息,该接口被调用必须是在Prepare被调用前。 |
| [OH_VideoEncoder_Prepare](_video_encoder.md#oh_videoencoder_prepare) (OH_AVCodec \*codec) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>准备编码器内部资源,调用该接口前必须先调用Configure接口。 |
| [OH_VideoEncoder_Start](_video_encoder.md#oh_videoencoder_start) (OH_AVCodec \*codec) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>启动编码器,该接口必须在已经Prepare成功后调用。 在启动成功后,编码器将开始报告[OH_AVCodecOnNeedInputData](_codec_base.md#oh_avcodeconneedinputdata)事件。 |
| [OH_VideoEncoder_Stop](_video_encoder.md#oh_videoencoder_stop) (OH_AVCodec \*codec) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>停止编码器。在停止后可通过Start重新进入Started状态。 |
| [OH_VideoEncoder_Flush](_video_encoder.md#oh_videoencoder_flush) (OH_AVCodec \*codec) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>清空编码器内部缓存的输入输出数据。在该接口被调用后,所有先前通过异步回调报告的Buffer的索引都将 失效,确保不要再访问这些索引对应的Buffers。 |
| [OH_VideoEncoder_Reset](_video_encoder.md#oh_videoencoder_reset) (OH_AVCodec \*codec) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>重置编码器。如需继续编码工作,需要重新调用Configure接口以配置该编码器实例。 |
| [OH_VideoEncoder_GetOutputDescription](_video_encoder.md#oh_videoencoder_getoutputdescription) (OH_AVCodec \*codec) | OH_AVFormat \*<br/>获取该编码器输出数据的描述信息,需要注意的是,返回值所指向的OH_AVFormat实例的生命周期 将会再下一次调用该接口时或者该OH_AVCodec实例被销毁时失效。 |
| [OH_VideoEncoder_SetParameter](_video_encoder.md#oh_videoencoder_setparameter) (OH_AVCodec \*codec, OH_AVFormat \*format) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>向编码器设置动态参数,注意:该接口仅能在编码器被启动后调用,同时错误的参数设置,可能会导致编码失败。 |
| [OH_VideoEncoder_GetSurface](_video_encoder.md#oh_videoencoder_getsurface) (OH_AVCodec \*codec, OHNativeWindow \*\*window) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>从视频编码器获取输入Surface, 该接口被调用必须是在Prepare被调用前。 |
| [OH_VideoEncoder_FreeOutputData](_video_encoder.md#oh_videoencoder_freeoutputdata) (OH_AVCodec \*codec, uint32_t index) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>将处理结束的输出Buffer交还给编码器。 |
| [OH_VideoEncoder_NotifyEndOfStream](_video_encoder.md#oh_videoencoder_notifyendofstream) (OH_AVCodec \*codec) | [OH_AVErrCode](_core.md#oh_averrcode)<br/>通知视频编码器输入码流已结束。surface模式推荐使用该接口通知编码器码流结束。 |
| [OH_VideoEncoder_CreateByMime](_video_encoder.md#oh_videoencoder_createbymime) (const char \*mime) | 通过mime类型创建一个视频编码器实例,大多数情况下推荐使用该接口。|
| [OH_VideoEncoder_CreateByName](_video_encoder.md#oh_videoencoder_createbyname) (const char \*name) | 通过视频编码器名称创建一个视频编码器实例,使用这个接口的前提是必须清楚编码器准确的名称。|
| [OH_VideoEncoder_Destroy](_video_encoder.md#oh_videoencoder_destroy) (OH_AVCodec \*codec) | 清空编码器内部资源,并销毁编码器实例。|
| [OH_VideoEncoder_SetCallback](_video_encoder.md#oh_videoencoder_setcallback) (OH_AVCodec \*codec, [OH_AVCodecAsyncCallback](_o_h___a_v_codec_async_callback.md) callback, void \*userData) | 设置异步回调函数,使得你的应用能够响应视频编码器产生的事件,该接口被调用必须是在Prepare被调用前。|
| [OH_VideoEncoder_Configure](_video_encoder.md#oh_videoencoder_configure) (OH_AVCodec \*codec, OH_AVFormat \*format) | 配置视频编码器,典型地,需要配置被编码视频轨道的描述信息,该接口被调用必须是在Prepare被调用前。|
| [OH_VideoEncoder_Prepare](_video_encoder.md#oh_videoencoder_prepare) (OH_AVCodec \*codec) | 准备编码器内部资源,调用该接口前必须先调用Configure接口。|
| [OH_VideoEncoder_Start](_video_encoder.md#oh_videoencoder_start) (OH_AVCodec \*codec) | 启动编码器,该接口必须在已经Prepare成功后调用。 在启动成功后,编码器将开始报告[OH_AVCodecOnNeedInputData](_codec_base.md#oh_avcodeconneedinputdata)事件。|
| [OH_VideoEncoder_Stop](_video_encoder.md#oh_videoencoder_stop) (OH_AVCodec \*codec) | 停止编码器。在停止后可通过Start重新进入Started状态。|
| [OH_VideoEncoder_Flush](_video_encoder.md#oh_videoencoder_flush) (OH_AVCodec \*codec) | 清空编码器内部缓存的输入输出数据。在该接口被调用后,所有先前通过异步回调报告的Buffer的索引都将 失效,确保不要再访问这些索引对应的Buffers。|
| [OH_VideoEncoder_Reset](_video_encoder.md#oh_videoencoder_reset) (OH_AVCodec \*codec) | 重置编码器。如需继续编码工作,需要重新调用Configure接口以配置该编码器实例。|
| [OH_VideoEncoder_GetOutputDescription](_video_encoder.md#oh_videoencoder_getoutputdescription) (OH_AVCodec \*codec) | 获取该编码器输出数据的描述信息,需要注意的是,返回值所指向的OH_AVFormat实例的生命周期 将会再下一次调用该接口时或者该OH_AVCodec实例被销毁时失效。|
| [OH_VideoEncoder_SetParameter](_video_encoder.md#oh_videoencoder_setparameter) (OH_AVCodec \*codec, OH_AVFormat \*format) | 向编码器设置动态参数,注意:该接口仅能在编码器被启动后调用,同时错误的参数设置,可能会导致编码失败。|
| [OH_VideoEncoder_GetSurface](_video_encoder.md#oh_videoencoder_getsurface) (OH_AVCodec \*codec, OHNativeWindow \*\*window) | 从视频编码器获取输入Surface, 该接口被调用必须是在Prepare被调用前。|
| [OH_VideoEncoder_FreeOutputData](_video_encoder.md#oh_videoencoder_freeoutputdata) (OH_AVCodec \*codec, uint32_t index) | 将处理结束的输出Buffer交还给编码器。|
| [OH_VideoEncoder_NotifyEndOfStream](_video_encoder.md#oh_videoencoder_notifyendofstream) (OH_AVCodec \*codec) | 通知视频编码器输入码流已结束。surface模式推荐使用该接口通知编码器码流结束。|
......@@ -7,8 +7,7 @@
**起始版本:**
9
**Version:**
1.0
**相关模块:**
[Core](_core.md)
......@@ -21,7 +20,7 @@
| 名称 | 描述 |
| -------- | -------- |
| [OH_AVErrCode](_core.md#oh_averrcode) | typedef enum [OH_AVErrCode](_core.md#oh_averrcode)<br/>音视频错误码。 |
| [OH_AVErrCode](_core.md#oh_averrcode) | 音视频错误码。 |
### 枚举
......
......@@ -7,8 +7,7 @@
**起始版本:**
9
**Version:**
1.0
**相关模块:**
[Core](_core.md)
......@@ -19,36 +18,35 @@
### 类型定义
| 名称 | 描述 |
| 名称 | 描述 |
| -------- | -------- |
| **OH_AVFormat** | typedef struct OH_AVFormat |
| [OH_AVPixelFormat](_core.md#oh_avpixelformat) | typedef enum [OH_AVPixelFormat](_core.md#oh_avpixelformat)<br/>AVPixel 格式的枚举。 |
| [OH_AVPixelFormat](_core.md#oh_avpixelformat) | AVPixel 格式的枚举。|
### 枚举
| 名称 | 描述 |
| 名称 | 描述 |
| -------- | -------- |
| [OH_AVPixelFormat](_core.md#oh_avpixelformat) {<br/> **AV_PIXEL_FORMAT_YUVI420** = 1, **AV_PIXEL_FORMAT_NV12** = 2, **AV_PIXEL_FORMAT_NV21** = 3, **AV_PIXEL_FORMAT_SURFACE_FORMAT** = 4, **AV_PIXEL_FORMAT_RGBA** = 5<br/>} | AVPixel 格式的枚举。 |
| [OH_AVPixelFormat](_core.md#oh_avpixelformat) {<br/> **AV_PIXEL_FORMAT_YUVI420** = 1, **AV_PIXEL_FORMAT_NV12** = 2, **AV_PIXEL_FORMAT_NV21** = 3, **AV_PIXEL_FORMAT_SURFACE_FORMAT** = 4, **AV_PIXEL_FORMAT_RGBA** = 5<br/>} | AVPixel 格式的枚举。|
### 函数
| 名称 | 描述 |
| 名称 | 描述 |
| -------- | -------- |
| [OH_AVFormat_Create](_core.md#oh_avformat_create) (void) | struct OH_AVFormat \*<br/>创建一个OH_AVFormat句柄指针,用以读写数据。 |
| [OH_AVFormat_Destroy](_core.md#oh_avformat_destroy) (struct OH_AVFormat \*format) | void<br/>销毁指定OH_AVFormat句柄资源。 |
| [OH_AVFormat_Copy](_core.md#oh_avformat_copy) (struct OH_AVFormat \*to, struct OH_AVFormat \*from) | bool<br/>拷贝OH_AVFormat句柄资源. |
| [OH_AVFormat_SetIntValue](_core.md#oh_avformat_setintvalue) (struct OH_AVFormat \*format, const char \*key, int32_t value) | bool<br/>向OH_AVFormat写入Int数据. |
| [OH_AVFormat_SetLongValue](_core.md#oh_avformat_setlongvalue) (struct OH_AVFormat \*format, const char \*key, int64_t value) | bool<br/>向OH_AVFormat写入Long数据。 |
| [OH_AVFormat_SetFloatValue](_core.md#oh_avformat_setfloatvalue) (struct OH_AVFormat \*format, const char \*key, float value) | bool<br/>向OH_AVFormat写入Float数据。 |
| [OH_AVFormat_SetDoubleValue](_core.md#oh_avformat_setdoublevalue) (struct OH_AVFormat \*format, const char \*key, double value) | bool<br/>向OH_AVFormat写入Double数据。 |
| [OH_AVFormat_SetStringValue](_core.md#oh_avformat_setstringvalue) (struct OH_AVFormat \*format, const char \*key, const char \*value) | bool<br/>向OH_AVFormat写入String数据。 |
| [OH_AVFormat_SetBuffer](_core.md#oh_avformat_setbuffer) (struct OH_AVFormat \*format, const char \*key, const uint8_t \*addr, size_t size) | bool<br/>向OH_AVFormat写入一块指定长度的数据。 |
| [OH_AVFormat_GetIntValue](_core.md#oh_avformat_getintvalue) (struct OH_AVFormat \*format, const char \*key, int32_t \*out) | bool<br/>从OH_AVFormat读取Int数据。 |
| [OH_AVFormat_GetLongValue](_core.md#oh_avformat_getlongvalue) (struct OH_AVFormat \*format, const char \*key, int64_t \*out) | bool<br/>从OH_AVFormat读取Long数据。 |
| [OH_AVFormat_GetFloatValue](_core.md#oh_avformat_getfloatvalue) (struct OH_AVFormat \*format, const char \*key, float \*out) | bool<br/>从OH_AVFormat读取Float数据。 |
| [OH_AVFormat_GetDoubleValue](_core.md#oh_avformat_getdoublevalue) (struct OH_AVFormat \*format, const char \*key, double \*out) | bool<br/>从OH_AVFormat读取Double数据。 |
| [OH_AVFormat_GetStringValue](_core.md#oh_avformat_getstringvalue) (struct OH_AVFormat \*format, const char \*key, const char \*\*out) | bool<br/>从OH_AVFormat读取Double数据。 |
| [OH_AVFormat_GetBuffer](_core.md#oh_avformat_getbuffer) (struct OH_AVFormat \*format, const char \*key, uint8_t \*\*addr, size_t \*size) | bool<br/>从OH_AVFormat读取一块指定长度的数据。 |
| [OH_AVFormat_DumpInfo](_core.md#oh_avformat_dumpinfo) (struct OH_AVFormat \*format) | const char \*<br/>以字符串的形式输出OH_AVFormat所包含的信息。 |
| [OH_AVFormat_Create](_core.md#oh_avformat_create) (void) | 创建一个OH_AVFormat句柄指针,用以读写数据。|
| [OH_AVFormat_Destroy](_core.md#oh_avformat_destroy) (struct OH_AVFormat \*format) | 销毁指定OH_AVFormat句柄资源。|
| [OH_AVFormat_Copy](_core.md#oh_avformat_copy) (struct OH_AVFormat \*to, struct OH_AVFormat \*from) | 拷贝OH_AVFormat句柄资源.|
| [OH_AVFormat_SetIntValue](_core.md#oh_avformat_setintvalue) (struct OH_AVFormat \*format, const char \*key, int32_t value) | 向OH_AVFormat写入Int数据.|
| [OH_AVFormat_SetLongValue](_core.md#oh_avformat_setlongvalue) (struct OH_AVFormat \*format, const char \*key, int64_t value) | 向OH_AVFormat写入Long数据。|
| [OH_AVFormat_SetFloatValue](_core.md#oh_avformat_setfloatvalue) (struct OH_AVFormat \*format, const char \*key, float value) | 向OH_AVFormat写入Float数据。|
| [OH_AVFormat_SetDoubleValue](_core.md#oh_avformat_setdoublevalue) (struct OH_AVFormat \*format, const char \*key, double value) | 向OH_AVFormat写入Double数据。|
| [OH_AVFormat_SetStringValue](_core.md#oh_avformat_setstringvalue) (struct OH_AVFormat \*format, const char \*key, const char \*value) | 向OH_AVFormat写入String数据。|
| [OH_AVFormat_SetBuffer](_core.md#oh_avformat_setbuffer) (struct OH_AVFormat \*format, const char \*key, const uint8_t \*addr, size_t size) | 向OH_AVFormat写入一块指定长度的数据。|
| [OH_AVFormat_GetIntValue](_core.md#oh_avformat_getintvalue) (struct OH_AVFormat \*format, const char \*key, int32_t \*out) | 从OH_AVFormat读取Int数据。|
| [OH_AVFormat_GetLongValue](_core.md#oh_avformat_getlongvalue) (struct OH_AVFormat \*format, const char \*key, int64_t \*out) | 从OH_AVFormat读取Long数据。|
| [OH_AVFormat_GetFloatValue](_core.md#oh_avformat_getfloatvalue) (struct OH_AVFormat \*format, const char \*key, float \*out) | 从OH_AVFormat读取Float数据。|
| [OH_AVFormat_GetDoubleValue](_core.md#oh_avformat_getdoublevalue) (struct OH_AVFormat \*format, const char \*key, double \*out) | 从OH_AVFormat读取Double数据。|
| [OH_AVFormat_GetStringValue](_core.md#oh_avformat_getstringvalue) (struct OH_AVFormat \*format, const char \*key, const char \*\*out) | 从OH_AVFormat读取Double数据。|
| [OH_AVFormat_GetBuffer](_core.md#oh_avformat_getbuffer) (struct OH_AVFormat \*format, const char \*key, uint8_t \*\*addr, size_t \*size) | 从OH_AVFormat读取一块指定长度的数据。|
| [OH_AVFormat_DumpInfo](_core.md#oh_avformat_dumpinfo) (struct OH_AVFormat \*format) | 以字符串的形式输出OH_AVFormat所包含的信息。|
......@@ -7,8 +7,7 @@
**起始版本:**
9
**Version:**
1.0
**相关模块:**
[Core](_core.md)
......@@ -17,16 +16,9 @@
## 汇总
### 类型定义
| 名称 | 描述 |
| -------- | -------- |
| **OH_AVMemory** | typedef struct OH_AVMemory |
### 函数
| 名称 | 描述 |
| -------- | -------- |
| [OH_AVMemory_GetAddr](_core.md#oh_avmemory_getaddr) (struct OH_AVMemory \*mem) | uint8_t \*<br/>获取入参的内存虚拟地址。 |
| [OH_AVMemory_GetSize](_core.md#oh_avmemory_getsize) (struct OH_AVMemory \*mem) | int32_t<br/>获取入参的内存长度。 |
| [OH_AVMemory_GetAddr](_core.md#oh_avmemory_getaddr) (struct OH_AVMemory \*mem) | 获取入参的内存虚拟地址。 |
| [OH_AVMemory_GetSize](_core.md#oh_avmemory_getsize) (struct OH_AVMemory \*mem) | 获取入参的内存长度。 |
......@@ -20,16 +20,16 @@
| 名称 | 描述 |
| -------- | -------- |
| [OH_Huks_GetSdkVersion](_huks_key_api.md#oh_huks_getsdkversion) (struct [OH_Huks_Blob](_o_h___huks___blob.md) \*sdkVersion) | struct [OH_Huks_Result](_o_h___huks___result.md)<br/>获取当前Huks sdk版本号。 |
| [OH_Huks_GenerateKeyItem](_huks_key_api.md#oh_huks_generatekeyitem) (const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*keyAlias, const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSetIn, struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSetOut) | struct [OH_Huks_Result](_o_h___huks___result.md)<br/>生成密钥。 |
| [OH_Huks_ImportKeyItem](_huks_key_api.md#oh_huks_importkeyitem) (const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*keyAlias, const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet, const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*key) | struct [OH_Huks_Result](_o_h___huks___result.md)<br/>导入明文密钥。 |
| [OH_Huks_ImportWrappedKeyItem](_huks_key_api.md#oh_huks_importwrappedkeyitem) (const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*keyAlias, const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*wrappingKeyAlias, const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet, const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*wrappedKeyData) | struct [OH_Huks_Result](_o_h___huks___result.md)<br/>导入密文密钥。 |
| [OH_Huks_ExportPublicKeyItem](_huks_key_api.md#oh_huks_exportpublickeyitem) (const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*keyAlias, const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet, struct [OH_Huks_Blob](_o_h___huks___blob.md) \*key) | struct [OH_Huks_Result](_o_h___huks___result.md)<br/>导出公钥。 |
| [OH_Huks_DeleteKeyItem](_huks_key_api.md#oh_huks_deletekeyitem) (const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*keyAlias, const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet) | struct [OH_Huks_Result](_o_h___huks___result.md)<br/>删除密钥。 |
| [OH_Huks_GetKeyItemParamSet](_huks_key_api.md#oh_huks_getkeyitemparamset) (const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*keyAlias, const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSetIn, struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSetOut) | struct [OH_Huks_Result](_o_h___huks___result.md)<br/>获取密钥的属性集。 |
| [OH_Huks_IsKeyItemExist](_huks_key_api.md#oh_huks_iskeyitemexist) (const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*keyAlias, const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet) | struct [OH_Huks_Result](_o_h___huks___result.md)<br/>判断密钥是否存在。 |
| [OH_Huks_AttestKeyItem](_huks_key_api.md#oh_huks_attestkeyitem) (const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*keyAlias, const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet, struct [OH_Huks_CertChain](_o_h___huks___cert_chain.md) \*certChain) | struct [OH_Huks_Result](_o_h___huks___result.md)<br/>获取密钥证书链。 |
| [OH_Huks_InitSession](_huks_key_api.md#oh_huks_initsession) (const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*keyAlias, const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet, struct [OH_Huks_Blob](_o_h___huks___blob.md) \*handle, struct [OH_Huks_Blob](_o_h___huks___blob.md) \*challenge) | struct [OH_Huks_Result](_o_h___huks___result.md)<br/>初始化密钥会话接口,并获取一个句柄(必选)和挑战值(可选)。 |
| [OH_Huks_UpdateSession](_huks_key_api.md#oh_huks_updatesession) (const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*handle, const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet, const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*inData, struct [OH_Huks_Blob](_o_h___huks___blob.md) \*outData) | struct [OH_Huks_Result](_o_h___huks___result.md)<br/>分段添加密钥操作的数据并进行相应的密钥操作,输出处理数据。 |
| [OH_Huks_FinishSession](_huks_key_api.md#oh_huks_finishsession) (const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*handle, const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet, const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*inData, struct [OH_Huks_Blob](_o_h___huks___blob.md) \*outData) | struct [OH_Huks_Result](_o_h___huks___result.md)<br/>结束密钥会话并进行相应的密钥操作,输出处理数据。 |
| [OH_Huks_AbortSession](_huks_key_api.md#oh_huks_abortsession) (const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*handle, const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet) | struct [OH_Huks_Result](_o_h___huks___result.md)<br/>取消密钥会话。 |
| [OH_Huks_GetSdkVersion](_huks_key_api.md#oh_huks_getsdkversion) (struct [OH_Huks_Blob](_o_h___huks___blob.md) \*sdkVersion) | 获取当前Huks sdk版本号。 |
| [OH_Huks_GenerateKeyItem](_huks_key_api.md#oh_huks_generatekeyitem) (const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*keyAlias, const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSetIn, struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSetOut) | 生成密钥。 |
| [OH_Huks_ImportKeyItem](_huks_key_api.md#oh_huks_importkeyitem) (const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*keyAlias, const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet, const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*key) | 导入明文密钥。 |
| [OH_Huks_ImportWrappedKeyItem](_huks_key_api.md#oh_huks_importwrappedkeyitem) (const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*keyAlias, const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*wrappingKeyAlias, const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet, const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*wrappedKeyData) | 导入密文密钥。 |
| [OH_Huks_ExportPublicKeyItem](_huks_key_api.md#oh_huks_exportpublickeyitem) (const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*keyAlias, const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet, struct [OH_Huks_Blob](_o_h___huks___blob.md) \*key) | 导出公钥。 |
| [OH_Huks_DeleteKeyItem](_huks_key_api.md#oh_huks_deletekeyitem) (const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*keyAlias, const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet) | 删除密钥。 |
| [OH_Huks_GetKeyItemParamSet](_huks_key_api.md#oh_huks_getkeyitemparamset) (const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*keyAlias, const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSetIn, struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSetOut) | 获取密钥的属性集。 |
| [OH_Huks_IsKeyItemExist](_huks_key_api.md#oh_huks_iskeyitemexist) (const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*keyAlias, const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet) | 判断密钥是否存在。 |
| [OH_Huks_AttestKeyItem](_huks_key_api.md#oh_huks_attestkeyitem) (const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*keyAlias, const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet, struct [OH_Huks_CertChain](_o_h___huks___cert_chain.md) \*certChain) | 获取密钥证书链。 |
| [OH_Huks_InitSession](_huks_key_api.md#oh_huks_initsession) (const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*keyAlias, const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet, struct [OH_Huks_Blob](_o_h___huks___blob.md) \*handle, struct [OH_Huks_Blob](_o_h___huks___blob.md) \*token) | 初始化密钥会话接口,并获取一个句柄(必选)和挑战值(可选)。 |
| [OH_Huks_UpdateSession](_huks_key_api.md#oh_huks_updatesession) (const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*handle, const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet, const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*inData, struct [OH_Huks_Blob](_o_h___huks___blob.md) \*outData) | 分段添加密钥操作的数据并进行相应的密钥操作,输出处理数据。 |
| [OH_Huks_FinishSession](_huks_key_api.md#oh_huks_finishsession) (const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*handle, const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet, const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*inData, struct [OH_Huks_Blob](_o_h___huks___blob.md) \*outData) | 结束密钥会话并进行相应的密钥操作,输出处理数据。 |
| [OH_Huks_AbortSession](_huks_key_api.md#oh_huks_abortsession) (const struct [OH_Huks_Blob](_o_h___huks___blob.md) \*handle, const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet) | 取消密钥会话。 |
......@@ -20,13 +20,13 @@
| 名称 | 描述 |
| -------- | -------- |
| [OH_Huks_InitParamSet](_huks_param_set_api.md#oh_huks_initparamset) (struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*\*paramSet) | int32_t<br/>初始化参数集。 |
| [OH_Huks_AddParams](_huks_param_set_api.md#oh_huks_addparams) (struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet, const struct [OH_Huks_Param](_o_h___huks___param.md) \*params, uint32_t paramCnt) | int32_t<br/>添加参数到参数集里面。 |
| [OH_Huks_BuildParamSet](_huks_param_set_api.md#oh_huks_buildparamset) (struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*\*paramSet) | int32_t<br/>构造正式的参数集。 |
| [OH_Huks_FreeParamSet](_huks_param_set_api.md#oh_huks_freeparamset) (struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*\*paramSet) | void<br/>销毁参数集。 |
| [OH_Huks_CopyParamSet](_huks_param_set_api.md#oh_huks_copyparamset) (const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*fromParamSet, uint32_t fromParamSetSize, struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*\*paramSet) | int32_t<br/>复制参数集(深拷贝)。 |
| [OH_Huks_GetParam](_huks_param_set_api.md#oh_huks_getparam) (const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet, uint32_t tag, struct [OH_Huks_Param](_o_h___huks___param.md) \*\*param) | int32_t<br/>从参数集中获取参数。 |
| [OH_Huks_FreshParamSet](_huks_param_set_api.md#oh_huks_freshparamset) (struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet, bool isCopy) | int32_t<br/>刷新(复制)参数集内Blob类型的数据到参数集内。 |
| [OH_Huks_isParamSetTagValid](_huks_param_set_api.md#oh_huks_isparamsettagvalid) (const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet) | int32_t<br/>检查参数集中的参数是否有效、是否有重复。 |
| [OH_Huks_isParamSetValid](_huks_param_set_api.md#oh_huks_isparamsetvalid) (const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet, uint32_t size) | int32_t<br/>检查参数集大小是否有效。 |
| [OH_Huks_CheckParamMatch](_huks_param_set_api.md#oh_huks_checkparammatch) (const struct [OH_Huks_Param](_o_h___huks___param.md) \*baseParam, const struct [OH_Huks_Param](_o_h___huks___param.md) \*param) | int32_t<br/>比较两个参数是否相同 |
| [OH_Huks_InitParamSet](_huks_param_set_api.md#oh_huks_initparamset) (struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*\*paramSet) | 初始化参数集。 |
| [OH_Huks_AddParams](_huks_param_set_api.md#oh_huks_addparams) (struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet, const struct [OH_Huks_Param](_o_h___huks___param.md) \*params, uint32_t paramCnt) | 添加参数到参数集里面。 |
| [OH_Huks_BuildParamSet](_huks_param_set_api.md#oh_huks_buildparamset) (struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*\*paramSet) | 构造正式的参数集。 |
| [OH_Huks_FreeParamSet](_huks_param_set_api.md#oh_huks_freeparamset) (struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*\*paramSet) | 销毁参数集。 |
| [OH_Huks_CopyParamSet](_huks_param_set_api.md#oh_huks_copyparamset) (const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*fromParamSet, uint32_t fromParamSetSize, struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*\*paramSet) | 复制参数集(深拷贝)。 |
| [OH_Huks_GetParam](_huks_param_set_api.md#oh_huks_getparam) (const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet, uint32_t tag, struct [OH_Huks_Param](_o_h___huks___param.md) \*\*param) | 从参数集中获取参数。 |
| [OH_Huks_FreshParamSet](_huks_param_set_api.md#oh_huks_freshparamset) (struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet, bool isCopy) | 刷新(复制)参数集内Blob类型的数据到参数集内。 |
| [OH_Huks_isParamSetTagValid](_huks_param_set_api.md#oh_huks_isparamsettagvalid) (const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet) | 检查参数集中的参数是否有效、是否有重复。 |
| [OH_Huks_isParamSetValid](_huks_param_set_api.md#oh_huks_isparamsetvalid) (const struct [OH_Huks_ParamSet](_o_h___huks___param_set.md) \*paramSet, uint32_t size) | 检查参数集大小是否有效。 |
| [OH_Huks_CheckParamMatch](_huks_param_set_api.md#oh_huks_checkparammatch) (const struct [OH_Huks_Param](_o_h___huks___param.md) \*baseParam, const struct [OH_Huks_Param](_o_h___huks___param.md) \*param) | 比较两个参数是否相同 |
......@@ -20,40 +20,40 @@
| 名称 | 描述 |
| -------- | -------- |
| [OH_Huks_Result](_o_h___huks___result.md) | struct<br/>表示状态返回数据,包括返回码和消息。 |
| [OH_Huks_Blob](_o_h___huks___blob.md) | struct<br/>定义存放数据的结构体类型。 |
| [OH_Huks_Param](_o_h___huks___param.md) | struct<br/>定义参数集中的参数结构体类型。 |
| [OH_Huks_ParamSet](_o_h___huks___param_set.md) | struct<br/>定义参数集的结构体类型。 |
| [OH_Huks_CertChain](_o_h___huks___cert_chain.md) | struct<br/>定义证书链的结构体类型。 |
| [OH_Huks_KeyInfo](_o_h___huks___key_info.md) | struct<br/>定义密钥信息的结构体类型。 |
| [OH_Huks_PubKeyInfo](_o_h___huks___pub_key_info.md) | struct<br/>定义公钥信息的结构体类型。 |
| [OH_Huks_KeyMaterialRsa](_o_h___huks___key_material_rsa.md) | struct<br/>定义Rsa密钥的结构体类型。 |
| [OH_Huks_KeyMaterialEcc](_o_h___huks___key_material_ecc.md) | struct<br/>定义Ecc密钥的结构体类型。 |
| [OH_Huks_KeyMaterialDsa](_o_h___huks___key_material_dsa.md) | struct<br/>定义Dsa密钥的结构体类型。 |
| [OH_Huks_KeyMaterialDh](_o_h___huks___key_material_dh.md) | struct<br/>定义Dh密钥的结构体类型。 |
| [OH_Huks_KeyMaterial25519](_o_h___huks___key_material25519.md) | struct<br/>定义25519类型密钥的结构体类型。 |
| [OH_Huks_Result](_o_h___huks___result.md) | 表示状态返回数据,包括返回码和消息。 |
| [OH_Huks_Blob](_o_h___huks___blob.md) | 定义存放数据的结构体类型。 |
| [OH_Huks_Param](_o_h___huks___param.md) | 定义参数集中的参数结构体类型。 |
| [OH_Huks_ParamSet](_o_h___huks___param_set.md) | 定义参数集的结构体类型。 |
| [OH_Huks_CertChain](_o_h___huks___cert_chain.md) | 定义证书链的结构体类型。 |
| [OH_Huks_KeyInfo](_o_h___huks___key_info.md) | 定义密钥信息的结构体类型。 |
| [OH_Huks_PubKeyInfo](_o_h___huks___pub_key_info.md) | 定义公钥信息的结构体类型。 |
| [OH_Huks_KeyMaterialRsa](_o_h___huks___key_material_rsa.md) | 定义Rsa密钥的结构体类型。 |
| [OH_Huks_KeyMaterialEcc](_o_h___huks___key_material_ecc.md) | 定义Ecc密钥的结构体类型。 |
| [OH_Huks_KeyMaterialDsa](_o_h___huks___key_material_dsa.md) | 定义Dsa密钥的结构体类型。 |
| [OH_Huks_KeyMaterialDh](_o_h___huks___key_material_dh.md) | 定义Dh密钥的结构体类型。 |
| [OH_Huks_KeyMaterial25519](_o_h___huks___key_material25519.md) | 定义25519类型密钥的结构体类型。 |
### 宏定义
| 名称 | 描述 |
| 名称 | |
| -------- | -------- |
| **OH_HUKS_AE_TAG_LEN** 16 | |
| **OH_HUKS_BITS_PER_BYTE** 8 | |
| **OH_HUKS_MAX_KEY_SIZE** 2048 | |
| **OH_HUKS_AE_NONCE_LEN** 12 | |
| **OH_HUKS_MAX_KEY_ALIAS_LEN** 64 | |
| **OH_HUKS_MAX_PROCESS_NAME_LEN** 50 | |
| **OH_HUKS_MAX_RANDOM_LEN** 1024 | |
| **OH_HUKS_SIGNATURE_MIN_SIZE** 64 | |
| **OH_HUKS_MAX_OUT_BLOB_SIZE** (5 \* 1024 \* 1024) | |
| **OH_HUKS_WRAPPED_FORMAT_MAX_SIZE** (1024 \* 1024) | |
| **OH_HUKS_IMPORT_WRAPPED_KEY_TOTAL_BLOBS** 10 | |
| **TOKEN_CHALLENGE_LEN** 32 | |
| **SHA256_SIGN_LEN** 32 | |
| **TOKEN_SIZE** 32 | |
| **MAX_AUTH_TIMEOUT_SECOND** 60 | |
| **SECURE_SIGN_VERSION** 0x01000001 | |
| **OH_HUKS_AE_TAG_LEN** | 16|
| **OH_HUKS_BITS_PER_BYTE** |8 |
| **OH_HUKS_MAX_KEY_SIZE** | 2048 |
| **OH_HUKS_AE_NONCE_LEN** | 12 |
| **OH_HUKS_MAX_KEY_ALIAS_LEN** | 64 |
| **OH_HUKS_MAX_PROCESS_NAME_LEN** | 50 |
| **OH_HUKS_MAX_RANDOM_LEN** | 1024 |
| **OH_HUKS_SIGNATURE_MIN_SIZE** | 64 |
| **OH_HUKS_MAX_OUT_BLOB_SIZE** | (5 \* 1024 \* 1024) |
| **OH_HUKS_WRAPPED_FORMAT_MAX_SIZE** | (1024 \* 1024) |
| **OH_HUKS_IMPORT_WRAPPED_KEY_TOTAL_BLOBS** | 10 |
| **TOKEN_CHALLENGE_LEN** | 32 |
| **SHA256_SIGN_LEN** | 32 |
| **TOKEN_SIZE** | 32 |
| **MAX_AUTH_TIMEOUT_SECOND** | 60 |
| **SECURE_SIGN_VERSION** | 0x01000001|
### 枚举
......@@ -78,4 +78,4 @@
| [OH_Huks_ChallengeType](_huks_type_api.md#oh_huks_challengetype) { <br/>OH_HUKS_CHALLENGE_TYPE_NORMAL = 0, <br/>OH_HUKS_CHALLENGE_TYPE_CUSTOM = 1, <br/>OH_HUKS_CHALLENGE_TYPE_NONE = 2 <br/>} | 密钥使用时生成challenge的类型 |
| [OH_Huks_ChallengePosition](_huks_type_api.md#oh_huks_challengeposition) { <br/>OH_HUKS_CHALLENGE_POS_0 = 0, <br/>OH_HUKS_CHALLENGE_POS_1, <br/>OH_HUKS_CHALLENGE_POS_2, <br/>OH_HUKS_CHALLENGE_POS_3 <br/>} | challenge类型为用户自定义类型时,生成的challenge有效长度仅为8字节连续的数据,且仅支持4种位置。 |
| [OH_Huks_SecureSignType](_huks_type_api.md#oh_huks_securesigntype) { OH_HUKS_SECURE_SIGN_WITH_AUTHINFO = 1 } | 生成或导入密钥时,指定该密钥的安全签名类型。 |
| [OH_Huks_Tag](_huks_type_api.md#oh_huks_tag) {<br/>OH_HUKS_TAG_INVALID = OH_HUKS_TAG_TYPE_INVALID \| 0, OH_HUKS_TAG_ALGORITHM = OH_HUKS_TAG_TYPE_UINT \| 1, OH_HUKS_TAG_PURPOSE = OH_HUKS_TAG_TYPE_UINT \| 2, OH_HUKS_TAG_KEY_SIZE = OH_HUKS_TAG_TYPE_UINT \| 3,<br/>OH_HUKS_TAG_DIGEST = OH_HUKS_TAG_TYPE_UINT \| 4, OH_HUKS_TAG_PADDING = OH_HUKS_TAG_TYPE_UINT \| 5, OH_HUKS_TAG_BLOCK_MODE = OH_HUKS_TAG_TYPE_UINT \| 6, OH_HUKS_TAG_KEY_TYPE = OH_HUKS_TAG_TYPE_UINT \| 7,<br/>OH_HUKS_TAG_ASSOCIATED_DATA = OH_HUKS_TAG_TYPE_BYTES \| 8, OH_HUKS_TAG_NONCE = OH_HUKS_TAG_TYPE_BYTES \| 9, OH_HUKS_TAG_IV = OH_HUKS_TAG_TYPE_BYTES \| 10, OH_HUKS_TAG_INFO = OH_HUKS_TAG_TYPE_BYTES \| 11,<br/>OH_HUKS_TAG_SALT = OH_HUKS_TAG_TYPE_BYTES \| 12, OH_HUKS_TAG_PWD = OH_HUKS_TAG_TYPE_BYTES \| 13, OH_HUKS_TAG_ITERATION = OH_HUKS_TAG_TYPE_UINT \| 14, OH_HUKS_TAG_KEY_GENERATE_TYPE = OH_HUKS_TAG_TYPE_UINT \| 15,<br/>OH_HUKS_TAG_DERIVE_MAIN_KEY = OH_HUKS_TAG_TYPE_BYTES \| 16, OH_HUKS_TAG_DERIVE_FACTOR = OH_HUKS_TAG_TYPE_BYTES \| 17, OH_HUKS_TAG_DERIVE_ALG = OH_HUKS_TAG_TYPE_UINT \| 18, OH_HUKS_TAG_AGREE_ALG = OH_HUKS_TAG_TYPE_UINT \| 19,<br/>OH_HUKS_TAG_AGREE_PUBLIC_KEY_IS_KEY_ALIAS = OH_HUKS_TAG_TYPE_BOOL \| 20, OH_HUKS_TAG_AGREE_PRIVATE_KEY_ALIAS = OH_HUKS_TAG_TYPE_BYTES \| 21, OH_HUKS_TAG_AGREE_PUBLIC_KEY = OH_HUKS_TAG_TYPE_BYTES \| 22, OH_HUKS_TAG_KEY_ALIAS = OH_HUKS_TAG_TYPE_BYTES \| 23,<br/>OH_HUKS_TAG_DERIVE_KEY_SIZE = OH_HUKS_TAG_TYPE_UINT \| 24, OH_HUKS_TAG_IMPORT_KEY_TYPE = OH_HUKS_TAG_TYPE_UINT \| 25, OH_HUKS_TAG_UNWRAP_ALGORITHM_SUITE = OH_HUKS_TAG_TYPE_UINT \| 26, OH_HUKS_TAG_ALL_USERS = OH_HUKS_TAG_TYPE_BOOL \| 301,<br/>OH_HUKS_TAG_USER_ID = OH_HUKS_TAG_TYPE_UINT \| 302, OH_HUKS_TAG_NO_AUTH_REQUIRED = OH_HUKS_TAG_TYPE_BOOL \| 303, OH_HUKS_TAG_USER_AUTH_TYPE = OH_HUKS_TAG_TYPE_UINT \| 304, OH_HUKS_TAG_AUTH_TIMEOUT = OH_HUKS_TAG_TYPE_UINT \| 305,<br/>OH_HUKS_TAG_AUTH_TOKEN = OH_HUKS_TAG_TYPE_BYTES \| 306, OH_HUKS_TAG_KEY_AUTH_ACCESS_TYPE = OH_HUKS_TAG_TYPE_UINT \| 307, OH_HUKS_TAG_KEY_SECURE_SIGN_TYPE = OH_HUKS_TAG_TYPE_UINT \| 308, OH_HUKS_TAG_CHALLENGE_TYPE = OH_HUKS_TAG_TYPE_UINT \| 309,<br/>OH_HUKS_TAG_CHALLENGE_POS = OH_HUKS_TAG_TYPE_UINT \| 310, OH_HUKS_TAG_ATTESTATION_CHALLENGE = OH_HUKS_TAG_TYPE_BYTES \| 501, OH_HUKS_TAG_ATTESTATION_APPLICATION_ID = OH_HUKS_TAG_TYPE_BYTES \| 502, OH_HUKS_TAG_ATTESTATION_ID_BRAND = OH_HUKS_TAG_TYPE_BYTES \| 503,<br/>OH_HUKS_TAG_ATTESTATION_ID_DEVICE = OH_HUKS_TAG_TYPE_BYTES \| 504, OH_HUKS_TAG_ATTESTATION_ID_PRODUCT = OH_HUKS_TAG_TYPE_BYTES \| 505, OH_HUKS_TAG_ATTESTATION_ID_SERIAL = OH_HUKS_TAG_TYPE_BYTES \| 506, OH_HUKS_TAG_ATTESTATION_ID_IMEI = OH_HUKS_TAG_TYPE_BYTES \| 507,<br/>OH_HUKS_TAG_ATTESTATION_ID_MEID = OH_HUKS_TAG_TYPE_BYTES \| 508, OH_HUKS_TAG_ATTESTATION_ID_MANUFACTURER = OH_HUKS_TAG_TYPE_BYTES \| 509, OH_HUKS_TAG_ATTESTATION_ID_MODEL = OH_HUKS_TAG_TYPE_BYTES \| 510, OH_HUKS_TAG_ATTESTATION_ID_ALIAS = OH_HUKS_TAG_TYPE_BYTES \| 511,<br/>OH_HUKS_TAG_ATTESTATION_ID_SOCID = OH_HUKS_TAG_TYPE_BYTES \| 512, OH_HUKS_TAG_ATTESTATION_ID_UDID = OH_HUKS_TAG_TYPE_BYTES \| 513, OH_HUKS_TAG_ATTESTATION_ID_SEC_LEVEL_INFO = OH_HUKS_TAG_TYPE_BYTES \| 514, OH_HUKS_TAG_ATTESTATION_ID_VERSION_INFO = OH_HUKS_TAG_TYPE_BYTES \| 515,<br/>OH_HUKS_TAG_IS_KEY_ALIAS = OH_HUKS_TAG_TYPE_BOOL \| 1001, OH_HUKS_TAG_KEY_STORAGE_FLAG = OH_HUKS_TAG_TYPE_UINT \| 1002, OH_HUKS_TAG_IS_ALLOWED_WRAP = OH_HUKS_TAG_TYPE_BOOL \| 1003, OH_HUKS_TAG_KEY_WRAP_TYPE = OH_HUKS_TAG_TYPE_UINT \| 1004,<br/>OH_HUKS_TAG_KEY_AUTH_ID = OH_HUKS_TAG_TYPE_BYTES \| 1005, OH_HUKS_TAG_KEY_ROLE = OH_HUKS_TAG_TYPE_UINT \| 1006, OH_HUKS_TAG_KEY_FLAG = OH_HUKS_TAG_TYPE_UINT \| 1007, OH_HUKS_TAG_IS_ASYNCHRONIZED = OH_HUKS_TAG_TYPE_UINT \| 1008,<br/>OH_HUKS_TAG_SECURE_KEY_ALIAS = OH_HUKS_TAG_TYPE_BOOL \| 1009, OH_HUKS_TAG_SECURE_KEY_UUID = OH_HUKS_TAG_TYPE_BYTES \| 1010, OH_HUKS_TAG_KEY_DOMAIN = OH_HUKS_TAG_TYPE_UINT \| 1011, OH_HUKS_TAG_SYMMETRIC_KEY_DATA = OH_HUKS_TAG_TYPE_BYTES \| 20001,<br/>OH_HUKS_TAG_ASYMMETRIC_PUBLIC_KEY_DATA = OH_HUKS_TAG_TYPE_BYTES \| 20002, OH_HUKS_TAG_ASYMMETRIC_PRIVATE_KEY_DATA = OH_HUKS_TAG_TYPE_BYTES \| 20003<br/>} | 参数集所用的TAG值枚举 |
| [OH_Huks_Tag](_huks_type_api.md#oh_huks_tag) {<br/>OH_HUKS_TAG_ALGORITHM = OH_HUKS_TAG_TYPE_UINT \| 1, OH_HUKS_TAG_PURPOSE = OH_HUKS_TAG_TYPE_UINT \| 2, OH_HUKS_TAG_KEY_SIZE = OH_HUKS_TAG_TYPE_UINT \| 3,<br/>OH_HUKS_TAG_DIGEST = OH_HUKS_TAG_TYPE_UINT \| 4, OH_HUKS_TAG_PADDING = OH_HUKS_TAG_TYPE_UINT \| 5, OH_HUKS_TAG_BLOCK_MODE = OH_HUKS_TAG_TYPE_UINT \| 6, OH_HUKS_TAG_KEY_TYPE = OH_HUKS_TAG_TYPE_UINT \| 7,<br/>OH_HUKS_TAG_ASSOCIATED_DATA = OH_HUKS_TAG_TYPE_BYTES \| 8, OH_HUKS_TAG_NONCE = OH_HUKS_TAG_TYPE_BYTES \| 9, OH_HUKS_TAG_IV = OH_HUKS_TAG_TYPE_BYTES \| 10, OH_HUKS_TAG_INFO = OH_HUKS_TAG_TYPE_BYTES \| 11,<br/>OH_HUKS_TAG_SALT = OH_HUKS_TAG_TYPE_BYTES \| 12, OH_HUKS_TAG_ITERATION = OH_HUKS_TAG_TYPE_UINT \| 14, OH_HUKS_TAG_KEY_GENERATE_TYPE = OH_HUKS_TAG_TYPE_UINT \| 15,<br/>OH_HUKS_TAG_AGREE_ALG = OH_HUKS_TAG_TYPE_UINT \| 19,<br/>OH_HUKS_TAG_AGREE_PUBLIC_KEY_IS_KEY_ALIAS = OH_HUKS_TAG_TYPE_BOOL \| 20, OH_HUKS_TAG_AGREE_PRIVATE_KEY_ALIAS = OH_HUKS_TAG_TYPE_BYTES \| 21, OH_HUKS_TAG_AGREE_PUBLIC_KEY = OH_HUKS_TAG_TYPE_BYTES \| 22, OH_HUKS_TAG_KEY_ALIAS = OH_HUKS_TAG_TYPE_BYTES \| 23,<br/>OH_HUKS_TAG_DERIVE_KEY_SIZE = OH_HUKS_TAG_TYPE_UINT \| 24, OH_HUKS_TAG_IMPORT_KEY_TYPE = OH_HUKS_TAG_TYPE_UINT \| 25, OH_HUKS_TAG_UNWRAP_ALGORITHM_SUITE = OH_HUKS_TAG_TYPE_UINT \| 26, OH_HUKS_TAG_ALL_USERS = OH_HUKS_TAG_TYPE_BOOL \| 301,<br/>OH_HUKS_TAG_USER_ID = OH_HUKS_TAG_TYPE_UINT \| 302, OH_HUKS_TAG_NO_AUTH_REQUIRED = OH_HUKS_TAG_TYPE_BOOL \| 303, OH_HUKS_TAG_USER_AUTH_TYPE = OH_HUKS_TAG_TYPE_UINT \| 304, OH_HUKS_TAG_AUTH_TIMEOUT = OH_HUKS_TAG_TYPE_UINT \| 305,<br/>OH_HUKS_TAG_AUTH_TOKEN = OH_HUKS_TAG_TYPE_BYTES \| 306, OH_HUKS_TAG_KEY_AUTH_ACCESS_TYPE = OH_HUKS_TAG_TYPE_UINT \| 307, OH_HUKS_TAG_KEY_SECURE_SIGN_TYPE = OH_HUKS_TAG_TYPE_UINT \| 308, OH_HUKS_TAG_CHALLENGE_TYPE = OH_HUKS_TAG_TYPE_UINT \| 309,<br/>OH_HUKS_TAG_CHALLENGE_POS = OH_HUKS_TAG_TYPE_UINT \| 310, OH_HUKS_TAG_ATTESTATION_CHALLENGE = OH_HUKS_TAG_TYPE_BYTES \| 501, OH_HUKS_TAG_ATTESTATION_APPLICATION_ID = OH_HUKS_TAG_TYPE_BYTES \| 502, OH_HUKS_TAG_ATTESTATION_ID_ALIAS = OH_HUKS_TAG_TYPE_BYTES \| 511,<br/> OH_HUKS_TAG_ATTESTATION_ID_SEC_LEVEL_INFO = OH_HUKS_TAG_TYPE_BYTES \| 514, OH_HUKS_TAG_ATTESTATION_ID_VERSION_INFO = OH_HUKS_TAG_TYPE_BYTES \| 515,<br/>OH_HUKS_TAG_IS_KEY_ALIAS = OH_HUKS_TAG_TYPE_BOOL \| 1001, OH_HUKS_TAG_KEY_STORAGE_FLAG = OH_HUKS_TAG_TYPE_UINT \| 1002, OH_HUKS_TAG_IS_ALLOWED_WRAP = OH_HUKS_TAG_TYPE_BOOL \| 1003, OH_HUKS_TAG_KEY_WRAP_TYPE = OH_HUKS_TAG_TYPE_UINT \| 1004,<br/>OH_HUKS_TAG_KEY_AUTH_ID = OH_HUKS_TAG_TYPE_BYTES \| 1005, OH_HUKS_TAG_KEY_ROLE = OH_HUKS_TAG_TYPE_UINT \| 1006, OH_HUKS_TAG_KEY_FLAG = OH_HUKS_TAG_TYPE_UINT \| 1007, OH_HUKS_TAG_IS_ASYNCHRONIZED = OH_HUKS_TAG_TYPE_UINT \| 1008,<br/> OH_HUKS_TAG_KEY_DOMAIN = OH_HUKS_TAG_TYPE_UINT \| 1011, OH_HUKS_TAG_SYMMETRIC_KEY_DATA = OH_HUKS_TAG_TYPE_BYTES \| 20001,<br/>OH_HUKS_TAG_ASYMMETRIC_PUBLIC_KEY_DATA = OH_HUKS_TAG_TYPE_BYTES \| 20002, OH_HUKS_TAG_ASYMMETRIC_PRIVATE_KEY_DATA = OH_HUKS_TAG_TYPE_BYTES \| 20003<br/>} | 参数集所用的TAG值枚举 |
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册