1# ICodecComponentManager 2 3 4## 概述 5 6Codec组件管理类接口定义。 7 8主要提供以下功能: 9 10- 获取Codec编解码组件数量以及编解码能力集表。 11 12- 创建/销毁Codec组件。 13 14**起始版本:** 4.1 15 16**相关模块:**[Codec](_codec_v20.md) 17 18 19## 汇总 20 21 22### Public 成员函数 23 24| 名称 | 描述 | 25| -------- | -------- | 26| [GetComponentNum](#getcomponentnum) ([out] int count) | 获取Codec编解码组件数量。 | 27| [GetComponentCapabilityList](#getcomponentcapabilitylist) ([out] struct [CodecCompCapability](_codec_comp_capability_v20.md)[] capList, [in] int count) | 获取编解码能力集表。 | 28| [CreateComponent](#createcomponent) ([out] [ICodecComponent](interface_i_codec_component_v20.md) component, [out] unsigned int componentId, [in] String compName, [in] long appData, [in] [ICodecCallback](interface_i_codec_callback_v20.md) callbacks) | 创建Codec组件实例。 | 29| [DestoryComponent](#destorycomponent) ([in] unsigned int componentId) | 销毁组件实例。 | 30 31 32## 成员函数说明 33 34 35### CreateComponent() 36 37``` 38ICodecComponentManager::CreateComponent ([out] ICodecComponent component, [out] unsigned int componentId, [in] String compName, [in] long appData, [in] ICodecCallback callbacks ) 39``` 40**描述** 41 42创建Codec组件实例。 43 44根据组件名称创建Codec组件实例。 45 46**起始版本:** 4.1 47 48**参数:** 49 50| 名称 | 描述 | 51| -------- | -------- | 52| component | 指向Codec组件的指针。 | 53| componentId | 创建组件的Id。 | 54| compName | 组件名称。 | 55| appData | 指向应用程序定义的值的指针,该值将在回调期间返回。 | 56| callbacks | 回调接口,指向OMX_CALLBACKTYPE结构的指针,详见[ICodecCallback](interface_i_codec_callback_v20.md)。 | 57 58**返回:** 59 60HDF_SUCCESS 表示创建组件成功。 61 62HDF_ERR_INVALID_PARAM 表示参数无效,创建组件失败。 63 64HDF_FAILURE 表示执行失败。 65 66其他值表示底层返回失败,具体错误码详见OpenMAX IL定义的OMX_ERRORTYPE。 67 68 69### DestoryComponent() 70 71``` 72ICodecComponentManager::DestoryComponent ([in] unsigned int componentId) 73``` 74**描述** 75 76销毁组件实例。 77 78销毁指定的Codec组件。 79 80**起始版本:** 4.1 81 82**参数:** 83 84| 名称 | 描述 | 85| -------- | -------- | 86| componentId | 需要销毁的Codec组件。 | 87 88**返回:** 89 90HDF_SUCCESS 表示销毁组件成功。 91 92HDF_ERR_INVALID_PARAM 表示参数无效,销毁组件失败。 93 94HDF_FAILURE 表示执行失败。 95 96其他值表示底层返回失败,具体错误码详见OpenMAX IL定义的OMX_ERRORTYPE。 97 98 99### GetComponentCapabilityList() 100 101``` 102ICodecComponentManager::GetComponentCapabilityList ([out] struct CodecCompCapability[] capList, [in] int count ) 103``` 104**描述** 105 106获取编解码能力集表。 107 108用户可通过此接口了解Codec模块提供了哪些编解码能力,对应的能力体现在[CodecCompCapability](_codec_comp_capability_v20.md)结构体。 109 110**起始版本:** 4.1 111 112**参数:** 113 114| 名称 | 描述 | 115| -------- | -------- | 116| capList | 返回全部组件的能力集表[CodecCompCapability](_codec_comp_capability_v20.md)。 | 117| count | 编解码组件数量,由[GetComponentNum](#getcomponentnum)获得。 | 118 119**返回:** 120 121HDF_SUCCESS 表示获取能力集表成功。 122 123HDF_ERR_INVALID_PARAM 表示参数无效,获取能力集表失败。 124 125HDF_FAILURE 表示执行失败。 126 127其他值表示底层返回失败。 128 129 130### GetComponentNum() 131 132``` 133ICodecComponentManager::GetComponentNum ([out] int count) 134``` 135**描述** 136 137获取Codec编解码组件数量。 138 139通过此接口获取Codec编解码组件数量,用来获取全部编解码能力集。 140 141**起始版本:** 4.1 142 143**参数:** 144 145| 名称 | 描述 | 146| -------- | -------- | 147| count | 编解码组件数量。 | 148 149**返回:** 150 151HDF_SUCCESS 表示获取编解码组件数量成功。 152 153HDF_ERR_INVALID_PARAM 表示参数无效,获取编解码组件数量失败。 154 155HDF_FAILURE 表示执行失败。 156 157其他值表示底层返回失败。 158