1# avtranscoder_base.h 2<!--Kit: Media Kit--> 3<!--Subsystem: Multimedia--> 4<!--Owner: @wang-haizhou6--> 5<!--Designer: @HmQQQ--> 6<!--Tester: @xchaosioda--> 7<!--Adviser: @zengyawen--> 8 9## 概述 10 11定义了媒体AVTranscoder的结构体和枚举。 12 13**引用文件:** <multimedia/player_framework/avtranscoder_base.h> 14 15**库:** libavtranscoder.so 16 17**系统能力:** SystemCapability.Multimedia.Media.AVTranscoder 18 19**起始版本:** 20 20 21**相关模块:** [AVTranscoder](capi-avtranscoder.md) 22 23## 汇总 24 25### 结构体 26 27| 名称 | typedef关键字 | 描述 | 28| -- | -- | -- | 29| [OH_AVTranscoder](capi-avtranscoder-oh-avtranscoder.md) | OH_AVTranscoder | 初始化AVTranscoder。 | 30| [OH_AVTranscoder_Config](capi-avtranscoder-oh-avtranscoder-config.md) | OH_AVTranscoder_Config | 初始化AVTranscoder_Config。 | 31 32### 枚举 33 34| 名称 | typedef关键字 | 描述 | 35| -- | -- | -- | 36| [OH_AVTranscoder_State](#oh_avtranscoder_state) | OH_AVTranscoder_State | 转码状态。 | 37 38### 函数 39 40| 名称 | typedef关键字 | 描述 | 41| -- | -- | -- | 42| [typedef void (\*OH_AVTranscoder_OnStateChange)(OH_AVTranscoder *transcoder, OH_AVTranscoder_State state, void *userData)](#oh_avtranscoder_onstatechange) | OH_AVTranscoder_OnStateChange | 转码过程的状态回调函数。 | 43| [typedef void (\*OH_AVTranscoder_OnError)(OH_AVTranscoder *transcoder, int32_t errorCode, const char *errorMsg, void *userData)](#oh_avtranscoder_onerror) | OH_AVTranscoder_OnError | 转码过程中错误事件的回调函数。 | 44| [typedef void (\*OH_AVTranscoder_OnProgressUpdate)(OH_AVTranscoder *transcoder, int32_t progress, void *userData)](#oh_avtranscoder_onprogressupdate) | OH_AVTranscoder_OnProgressUpdate | 回调转码进度更新时调用。 | 45 46## 枚举类型说明 47 48### OH_AVTranscoder_State 49 50``` 51enum OH_AVTranscoder_State 52``` 53 54**描述** 55 56转码状态。 57 58**系统能力:** SystemCapability.Multimedia.Media.AVTranscoder 59 60**起始版本:** 20 61 62| 枚举项 | 描述 | 63| -- | -- | 64| AVTRANSCODER_PREPARED = 1 | 准备 | 65| AVTRANSCODER_STARTED = 2 | 开始 | 66| AVTRANSCODER_PAUSED = 3 | 暂停 | 67| AVTRANSCODER_CANCELLED = 4 | 取消 | 68| AVTRANSCODER_COMPLETED = 5 | 完成 | 69 70 71## 函数说明 72 73### OH_AVTranscoder_OnStateChange() 74 75``` 76typedef void (*OH_AVTranscoder_OnStateChange)(OH_AVTranscoder *transcoder, OH_AVTranscoder_State state, void *userData) 77``` 78 79**描述** 80 81转码过程的状态回调函数。 82 83**系统能力:** SystemCapability.Multimedia.Media.AVTranscoder 84 85**起始版本:** 20 86 87 88**参数:** 89 90| 参数项 | 描述 | 91| -- | -- | 92| [OH_AVTranscoder](capi-avtranscoder-oh-avtranscoder.md) *transcoder | OH_AVTranscoder实例的指针。 | 93| [OH_AVTranscoder_State](#oh_avtranscoder_state) state | 转码状态,详细说明请参见[OH_AVTranscoder_State](#oh_avtranscoder_state)。 | 94| void *userData | 用户特定数据的指针。 | 95 96### OH_AVTranscoder_OnError() 97 98``` 99typedef void (*OH_AVTranscoder_OnError)(OH_AVTranscoder *transcoder, int32_t errorCode, const char *errorMsg,void *userData) 100``` 101 102**描述** 103 104转码过程中错误事件的回调函数。 105 106**系统能力:** SystemCapability.Multimedia.Media.AVTranscoder 107 108**起始版本:** 20 109 110 111**参数:** 112 113| 参数项 | 描述 | 114| -- | -- | 115| [OH_AVTranscoder](capi-avtranscoder-oh-avtranscoder.md) *transcoder | OH_AVTranscoder实例的指针。 | 116| int32_t errorCode | 错误码。<br> AV_ERR_NO_MEMORY:无内存,取值为1。<br> AV_ERR_OPERATE_NOT_PERMIT:操作不允许,取值为2。<br> AV_ERR_INVALID_VAL:参数检查失败,取值为3。<br> AV_ERR_IO:IO错误,取值为4。<br> AV_ERR_INVALID_STATE:当前状态不支持此操作,取值为8。<br> AV_ERR_UNSUPPORT:未支持的接口,取值为9。 | 117| const char *errorMsg | 错误消息。 | 118| void *userData | 用户特定数据的指针。 | 119 120### OH_AVTranscoder_OnProgressUpdate() 121 122``` 123typedef void (*OH_AVTranscoder_OnProgressUpdate)(OH_AVTranscoder *transcoder, int32_t progress, void *userData) 124``` 125 126**描述** 127 128回调转码进度更新时调用。 129 130**系统能力:** SystemCapability.Multimedia.Media.AVTranscoder 131 132**起始版本:** 20 133 134 135**参数:** 136 137| 参数项 | 描述 | 138| -- | -- | 139| [OH_AVTranscoder](capi-avtranscoder-oh-avtranscoder.md) *transcoder | OH_AVTranscoder实例的指针。 | 140| int32_t progress | 转码进度。 | 141| void *userData | 用户特定数据的指针。 | 142 143 144