_codec_component_manager.md 3.9 KB
Newer Older
D
hdi api  
duangavin123 已提交
1 2 3
# CodecComponentManager


Z
zengyawen 已提交
4
## 概述
D
hdi api  
duangavin123 已提交
5

D
duangavin123 已提交
6
Codec组件管理类接口定义。
D
hdi api  
duangavin123 已提交
7

D
duangavin123 已提交
8
主要提供以下功能:
D
hdi api  
duangavin123 已提交
9

D
duangavin123 已提交
10
- 获取Codec编解码组件数量以及编解码能力集表。
D
hdi api  
duangavin123 已提交
11

D
duangavin123 已提交
12
- 创建/销毁Codec组件。
D
hdi api  
duangavin123 已提交
13

D
duangavin123 已提交
14
**相关模块:**
D
hdi api  
duangavin123 已提交
15

Z
zengyawen 已提交
16
[Codec](_codec.md)
D
hdi api  
duangavin123 已提交
17 18


Z
zengyawen 已提交
19
## 汇总
D
hdi api  
duangavin123 已提交
20 21


D
duangavin123 已提交
22
### Public 属性
D
hdi api  
duangavin123 已提交
23

D
duangavin123 已提交
24 25
  | 名称 | 描述 | 
| -------- | -------- |
Z
zengyawen 已提交
26 27 28 29
| (\*&nbsp;[GetComponentNum](#getcomponentnum)&nbsp;)() | int32_t<br/>获取Codec编解码组件数量。 | 
| (\*&nbsp;[GetComponentCapabilityList](#getcomponentcapabilitylist)&nbsp;)([CodecCompCapability](_codec_comp_capability.md)&nbsp;\*capList,&nbsp;int32_t&nbsp;count) | int32_t<br/>获取编解码能力集表。 | 
| (\*&nbsp;[CreateComponent](#createcomponent)&nbsp;)(struct&nbsp;[CodecComponentType](_codec_component_type.md)&nbsp;\*\*component,&nbsp;char&nbsp;\*compName,&nbsp;void&nbsp;\*appData,&nbsp;int32_t&nbsp;appDataSize,&nbsp;struct&nbsp;[CodecCallbackType](_codec_callback_type.md)&nbsp;\*callbacks) | int32_t<br/>创建Codec组件实例。 | 
| (\*&nbsp;[DestroyComponent](#destroycomponent)&nbsp;)(struct&nbsp;[CodecComponentType](_codec_component_type.md)&nbsp;\*component) | int32_t<br/>销毁组件实例。 | 
D
hdi api  
duangavin123 已提交
30 31


Z
zengyawen 已提交
32
## 类成员变量说明
D
hdi api  
duangavin123 已提交
33 34 35 36 37 38 39 40 41


### CreateComponent

  
```
int32_t(* CodecComponentManager::CreateComponent) (struct CodecComponentType **component, char *compName, void *appData, int32_t appDataSize, struct CodecCallbackType *callbacks)
```

Z
zengyawen 已提交
42
**描述:**
D
hdi api  
duangavin123 已提交
43 44 45 46 47

创建Codec组件实例。

根据组件名称创建Codec组件实例。

D
duangavin123 已提交
48
**参数:**
D
hdi api  
duangavin123 已提交
49 50 51 52 53 54 55 56 57

  | 名称 | 描述 | 
| -------- | -------- |
| component | 输出参数,指向Codec组件的指针。 | 
| compName | 输入参数,组件名称。 | 
| appData | 输入参数,指向应用程序定义的值的指针,该值将在回调期间返回。 | 
| appDataSize | 输入参数,appData字节数。 | 
| callbacks | 输入参数,回调接口,指向OMX_CALLBACKTYPE结构的指针,详见[CodecCallbackType](_codec_callback_type.md)。 | 

D
duangavin123 已提交
58
**返回:**
D
hdi api  
duangavin123 已提交
59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75

HDF_SUCCESS 表示创建组件成功。

HDF_ERR_INVALID_PARAM 表示参数无效,创建组件失败。

HDF_ERR_INVALID_OBJECT 表示对象无效,创建组件失败。

HDF_ERR_MALLOC_FAIL 表示申请内存失败,创建组件失败。


### DestroyComponent

  
```
int32_t(* CodecComponentManager::DestroyComponent) (struct CodecComponentType *component)
```

Z
zengyawen 已提交
76
**描述:**
D
hdi api  
duangavin123 已提交
77 78 79 80 81

销毁组件实例。

销毁指定的Codec组件。

D
duangavin123 已提交
82
**参数:**
D
hdi api  
duangavin123 已提交
83 84 85 86 87

  | 名称 | 描述 | 
| -------- | -------- |
| component | 输入参数,需要销毁的Codec组件。 | 

D
duangavin123 已提交
88
**返回:**
D
hdi api  
duangavin123 已提交
89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105

HDF_SUCCESS 表示销毁组件成功。

HDF_ERR_INVALID_PARAM 表示参数无效,销毁组件失败。

HDF_ERR_INVALID_OBJECT 表示对象无效,销毁组件失败。

HDF_ERR_MALLOC_FAIL 表示申请内存失败,销毁组件失败。


### GetComponentCapabilityList

  
```
int32_t(* CodecComponentManager::GetComponentCapabilityList) (CodecCompCapability *capList, int32_t count)
```

Z
zengyawen 已提交
106
**描述:**
D
hdi api  
duangavin123 已提交
107 108 109 110 111

获取编解码能力集表。

用户可通过此接口了解Codec模块提供了哪些编解码能力,对应的能力体现在[CodecCompCapability](_codec_comp_capability.md)结构体。

D
duangavin123 已提交
112
**参数:**
D
hdi api  
duangavin123 已提交
113 114 115 116 117 118

  | 名称 | 描述 | 
| -------- | -------- |
| capList | 输出参数,返回全部组件的能力集表[CodecCompCapability](_codec_comp_capability.md)。 | 
| count | 输入参数,编解码组件数量,由[GetComponentNum](#getcomponentnum)获得。 | 

D
duangavin123 已提交
119
**返回:**
D
hdi api  
duangavin123 已提交
120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136

HDF_SUCCESS 表示获取能力集表成功。

HDF_ERR_INVALID_PARAM 表示参数无效,获取能力集表失败。

HDF_ERR_INVALID_OBJECT 表示对象无效,获取能力集表失败。

HDF_ERR_MALLOC_FAIL 表示申请内存失败,获取能力集表失败。


### GetComponentNum

  
```
int32_t(* CodecComponentManager::GetComponentNum) ()
```

Z
zengyawen 已提交
137
**描述:**
D
hdi api  
duangavin123 已提交
138 139 140 141 142

获取Codec编解码组件数量。

通过此接口获取Codec编解码组件数量,用来获取全部编解码能力集。

D
duangavin123 已提交
143
**返回:**
D
hdi api  
duangavin123 已提交
144 145

Codec编解码组件数量。