• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# ICodecComponent
2
3
4## 概述
5
6Codec组件接口定义。
7
8主要提供以下功能:
9
10- 获取组件的版本
11
12- 组件参数配置的获取和设置
13
14- 发送命令至组件及获取组件状态
15
16- 设置回调函数
17
18- 设置/释放组件使用的buffer
19
20- 编解码输入输出buffer处理 具体方法使用详见函数说明。
21
22**起始版本:** 4.1
23
24**相关模块:**[Codec](_codec_v20.md)
25
26
27## 汇总
28
29
30### Public 成员函数
31
32| 名称 | 描述 |
33| -------- | -------- |
34| [GetComponentVersion](#getcomponentversion) ([out] struct [CompVerInfo](_comp_ver_info_v20.md) verInfo) | 获取Codec组件版本号。 |
35| [SendCommand](#sendcommand) ([in] enum OMX_COMMANDTYPE cmd, [in] unsigned int param, [in] byte[] cmdData) | 发送命令给组件。 |
36| [GetParameter](#getparameter) ([in] unsigned int index, [in] byte[] inParamStruct, [out] byte[] outParamStruct) | 获取组件参数设置。 |
37| [SetParameter](#setparameter) ([in] unsigned int index, [in] byte[] paramStruct) | 设置组件需要的参数。 |
38| [GetConfig](#getconfig) ([in] unsigned int index, [in] byte[] inCfgStruct, [out] byte[] outCfgStruct) | 获取组件的配置。 |
39| [SetConfig](#setconfig) ([in] unsigned int index, [in] byte[] cfgStruct) | 设置组件的配置。 |
40| [GetExtensionIndex](#getextensionindex) ([in] String paramName, [out] unsigned int indexType) | 根据字符串获取组件的扩展索引。 |
41| [GetState](#getstate) ([out] enum OMX_STATETYPE state) | 获取组件的当前状态。 |
42| [ComponentTunnelRequest](#componenttunnelrequest) ([in] unsigned int port, [in] int tunneledComp, [in] unsigned int tunneledPort, [in] struct [OMX_TUNNELSETUPTYPE](_o_m_x___t_u_n_n_e_l_s_e_t_u_p_t_y_p_e_v20.md) inTunnelSetup, [out] struct [OMX_TUNNELSETUPTYPE](_o_m_x___t_u_n_n_e_l_s_e_t_u_p_t_y_p_e_v20.md) outTunnelSetup) | 设置组件采用Tunnel方式通信。 |
43| [UseBuffer](#usebuffer) ([in] unsigned int portIndex, [in] struct [OmxCodecBuffer](_omx_codec_buffer_v20.md) inBuffer, [out] struct [OmxCodecBuffer](_omx_codec_buffer_v20.md) outBuffer) | 指定组件端口的buffer。 |
44| [AllocateBuffer](#allocatebuffer) ([in] unsigned int portIndex, [in] struct [OmxCodecBuffer](_omx_codec_buffer_v20.md) inBuffer, [out] struct [OmxCodecBuffer](_omx_codec_buffer_v20.md) outBuffer) | 向组件申请端口buffer。 |
45| [FreeBuffer](#freebuffer) ([in] unsigned int portIndex, [in] struct [OmxCodecBuffer](_omx_codec_buffer_v20.md) buffer) | 释放buffer。 |
46| [EmptyThisBuffer](#emptythisbuffer) ([in] struct [OmxCodecBuffer](_omx_codec_buffer_v20.md) buffer) | 编解码输入待处理buffer。 |
47| [FillThisBuffer](#fillthisbuffer) ([in] struct [OmxCodecBuffer](_omx_codec_buffer_v20.md) buffer) | 编解码输出填充buffer。 |
48| [SetCallbacks](#setcallbacks) ([in] [ICodecCallback](interface_i_codec_callback_v20.md) callbacks, [in] long appData) | 设置Codec组件的回调函数。 |
49| [ComponentDeInit](#componentdeinit) () | 组件去初始化。 |
50| [UseEglImage](#useeglimage) ([in] unsigned int portIndex, [in] struct [OmxCodecBuffer](_omx_codec_buffer_v20.md) inBuffer, [out] struct [OmxCodecBuffer](_omx_codec_buffer_v20.md) outBuffer, [in] byte[] eglImage) | 使用已在EGL中申请的空间。 |
51| [ComponentRoleEnum](#componentroleenum) ([out] unsigned char[] role, [in] unsigned int index) | 获取组件角色。 |
52
53
54## 成员函数说明
55
56
57### AllocateBuffer()
58
59```
60ICodecComponent::AllocateBuffer ([in] unsigned int portIndex, [in] struct OmxCodecBuffer inBuffer, [out] struct OmxCodecBuffer outBuffer )
61```
62
63**描述**
64
65向组件申请端口buffer。
66
67向组件申请分配新的buffer,此接口在以下情况下使用:
68
69- 当组件处于OMX_StateLoaded状态,并且用户已经向组件发送OMX_StateIdle状态转换请求。
70
71- 当组件处于OMX_StateWaitForResources状态,所需的资源可用,并且组件已准备好进入OMX_StateIdle状态。
72
73- 在去使能端口上,组件处于OMX_StateExecuting、OMX_StatePause或OMX_StateIdle状态。 更多组件状态的说明请详见**OMX_STATETYPE**。
74
75**起始版本:** 4.1
76
77**参数:**
78
79| 名称 | 描述 |
80| -------- | -------- |
81| portIndex | 指定的组件端口。 |
82| inBuffer | 指向要申请的buffer结构的体指针,结构体介绍详见[OmxCodecBuffer](_omx_codec_buffer_v20.md)。 |
83| outBuffer | 指向要申请的buffer结构的体指针,结构体介绍详见[OmxCodecBuffer](_omx_codec_buffer_v20.md)。 |
84
85**返回:**
86
87HDF_SUCCESS 表示申请buffer成功。
88
89HDF_ERR_INVALID_PARAM 表示参数无效,申请buffer失败。
90
91HDF_FAILURE 表示执行失败。
92
93其他值表示底层返回失败,具体错误码详见OpenMAX IL定义的OMX_ERRORTYPE。
94
95
96### ComponentDeInit()
97
98```
99ICodecComponent::ComponentDeInit ()
100```
101
102**描述**
103
104组件去初始化。
105
106调用此接口使组件去初始化,当组件处于OMX_StateLoaded状态时,将直接关闭组件,更多组件状态的说明请详见**OMX_STATETYPE**。
107
108**起始版本:** 4.1
109
110**返回:**
111
112HDF_SUCCESS 表示去初始化成功。
113
114HDF_ERR_INVALID_PARAM 表示参数无效,去初始化失败。
115
116HDF_FAILURE 表示执行失败。
117
118其他值表示底层返回失败,具体错误码详见OpenMAX IL定义的OMX_ERRORTYPE。
119
120
121### ComponentRoleEnum()
122
123```
124ICodecComponent::ComponentRoleEnum ([out] unsigned char[] role, [in] unsigned int index )
125```
126
127**描述**
128
129获取组件角色。
130
131根据组件角色索引获取对应组件角色。
132
133**起始版本:** 4.1
134
135**参数:**
136
137| 名称 | 描述 |
138| -------- | -------- |
139| role | 角色名称。 |
140| index | 角色的索引,一个组件可能支持多种角色。 |
141
142**返回:**
143
144HDF_SUCCESS 表示获取角色成功。
145
146HDF_ERR_INVALID_PARAM 表示参数无效,获取角色失败。
147
148HDF_FAILURE 表示执行失败。
149
150其他值表示底层返回失败,具体错误码详见OpenMAX IL定义的OMX_ERRORTYPE。
151
152
153### ComponentTunnelRequest()
154
155```
156ICodecComponent::ComponentTunnelRequest ([in] unsigned int port, [in] int tunneledComp, [in] unsigned int tunneledPort, [in] struct OMX_TUNNELSETUPTYPE inTunnelSetup, [out] struct OMX_TUNNELSETUPTYPE outTunnelSetup )
157```
158
159**描述**
160
161设置组件采用Tunnel方式通信。
162
163当组件处于OMX_StateLoaded状态时(表示组件已加载),用户通过调用此接口确定组件是否可以进行Tunnel传输,如果可以则设置组件的Tunnel传输。 更多组件状态的说明请详见**OMX_STATETYPE**。
164
165**起始版本:** 4.1
166
167**参数:**
168
169| 名称 | 描述 |
170| -------- | -------- |
171| port | 组件设置的端口。 |
172| tunneledComp | 组件的tunnel组件句柄。 |
173| tunneledPort | 组件用来Tunnel通信的端口。 |
174| inTunnelSetup | 指向Tunnel设置的结构体[OMX_TUNNELSETUPTYPE](_o_m_x___t_u_n_n_e_l_s_e_t_u_p_t_y_p_e_v20.md)指针。 |
175| outTunnelSetup | 指向Tunnel设置的结构体[OMX_TUNNELSETUPTYPE](_o_m_x___t_u_n_n_e_l_s_e_t_u_p_t_y_p_e_v20.md)指针。 |
176
177**返回:**
178
179HDF_SUCCESS 表示设置成功。
180
181HDF_ERR_INVALID_PARAM 表示参数无效,设置失败。
182
183HDF_FAILURE 表示执行失败。
184
185其他值表示底层返回失败,具体错误码详见OpenMAX IL定义的OMX_ERRORTYPE。
186
187
188### EmptyThisBuffer()
189
190```
191ICodecComponent::EmptyThisBuffer ([in] struct OmxCodecBuffer buffer)
192```
193
194**描述**
195
196编解码输入待处理buffer。
197
198此接口在组件处于OMX_StateExecuting或者OMX_StatePause状态时调用,更多组件状态的说明请详见**OMX_STATETYPE**。
199
200**起始版本:** 4.1
201
202**参数:**
203
204| 名称 | 描述 |
205| -------- | -------- |
206| buffer | 指向要输入的buffer结构体的指针,结构体介绍详见[OmxCodecBuffer](_omx_codec_buffer_v20.md)。 |
207
208**返回:**
209
210HDF_SUCCESS 表示输入buffer成功。
211
212HDF_ERR_INVALID_PARAM 表示参数无效,输入buffer失败。
213
214HDF_FAILURE 表示执行失败。
215
216其他值表示底层返回失败,具体错误码详见OpenMAX IL定义的OMX_ERRORTYPE。
217
218
219### FillThisBuffer()
220
221```
222ICodecComponent::FillThisBuffer ([in] struct OmxCodecBuffer buffer)
223```
224
225**描述**
226
227编解码输出填充buffer。
228
229此接口在组件处于OMX_StateExecuting或者OMX_StatePause状态时调用,更多组件状态的说明请详见**OMX_STATETYPE**。
230
231**起始版本:** 4.1
232
233**参数:**
234
235| 名称 | 描述 |
236| -------- | -------- |
237| buffer | 指向要填充的buffer结构体的指针,结构体介绍详见[OmxCodecBuffer](_omx_codec_buffer_v20.md)。 |
238
239**返回:**
240
241HDF_SUCCESS 表示填充buffer成功。
242
243HDF_ERR_INVALID_PARAM 表示参数无效,填充buffer失败。
244
245HDF_FAILURE 表示执行失败。
246
247其他值表示底层返回失败,具体错误码详见OpenMAX IL定义的OMX_ERRORTYPE。
248
249
250### FreeBuffer()
251
252```
253ICodecComponent::FreeBuffer ([in] unsigned int portIndex, [in] struct OmxCodecBuffer buffer )
254```
255
256**描述**
257
258释放buffer。
259
260此接口在以下情况下使用:
261
262- 当组件处于OMX_StateIdle状态,并且已经向组件发送OMX_StateLoaded状态转换请求。
263
264- 在去使能端口上,组件处于OMX_StateExecuting、OMX_StatePause或OMX_StateIdle时调用。 更多组件状态的说明请详见**OMX_STATETYPE**。
265
266- 此接口调用可随时进行,但是如果未在上述情况下执行,可能会导致组件上报OMX_ErrorPortUnpopulated事件。
267
268**起始版本:** 4.1
269
270**参数:**
271
272| 名称 | 描述 |
273| -------- | -------- |
274| portIndex | 指定的组件端口。 |
275| buffer | 指向要释放的buffer结构体的结构体的指针,结构体介绍详见[OmxCodecBuffer](_omx_codec_buffer_v20.md)。 |
276
277**返回:**
278
279HDF_SUCCESS 表示释放buffer成功。
280
281HDF_ERR_INVALID_PARAM 表示参数无效,释放buffer失败。
282
283HDF_FAILURE 表示执行失败。
284
285其他值表示底层返回失败,具体错误码详见OpenMAX IL定义的OMX_ERRORTYPE。
286
287
288### GetComponentVersion()
289
290```
291ICodecComponent::GetComponentVersion ([out] struct CompVerInfo verInfo)
292```
293
294**描述**
295
296获取Codec组件版本号。
297
298通过查询组件,返回组件版本信息。
299
300**起始版本:** 4.1
301
302**参数:**
303
304| 名称 | 描述 |
305| -------- | -------- |
306| verInfo | 指向组件版本信息的对象,详见[CompVerInfo](_comp_ver_info_v20.md)。 |
307
308**返回:**
309
310HDF_SUCCESS 表示获取版本号成功。
311
312HDF_ERR_INVALID_PARAM 表示参数无效,获取版本号失败。
313
314HDF_FAILURE 表示执行失败。
315
316其他值表示底层返回失败,具体错误码详见OpenMAX IL定义的OMX_ERRORTYPE。
317
318
319### GetConfig()
320
321```
322ICodecComponent::GetConfig ([in] unsigned int index, [in] byte[] inCfgStruct, [out] byte[] outCfgStruct )
323```
324
325**描述**
326
327获取组件的配置。
328
329加载组件后可以随时调用此接口获取组件的配置。
330
331**起始版本:** 4.1
332
333**参数:**
334
335| 名称 | 描述 |
336| -------- | -------- |
337| index | 待填充结构的索引,详见**OMX_INDEXTYPE**。 |
338| inCfgStruct | 指向由组件填充的应用程序分配的结构体指针。 |
339| outCfgStruct | 指向由组件填充的应用程序分配的结构体指针。 |
340
341**返回:**
342
343HDF_SUCCESS 表示获取配置成功。
344
345HDF_ERR_INVALID_PARAM 表示参数无效,获取配置失败。
346
347HDF_FAILURE 表示执行失败。
348
349其他值表示底层返回失败,具体错误码详见OpenMAX IL定义的OMX_ERRORTYPE。
350
351
352### GetExtensionIndex()
353
354```
355ICodecComponent::GetExtensionIndex ([in] String paramName, [out] unsigned int indexType )
356```
357
358**描述**
359
360根据字符串获取组件的扩展索引。
361
362将扩展字符串转换为Openmax IL结构索引,此索引可用于获取([GetParameter](#getparameter))或者设置([SetParameter](#setparameter))组件参数。
363
364**起始版本:** 4.1
365
366**参数:**
367
368| 名称 | 描述 |
369| -------- | -------- |
370| paramName | 组件用来转换为配置索引的字符串。 |
371| indexType | 由paramName转换的配置索引,详见**OMX_INDEXTYPE**。 |
372
373**返回:**
374
375HDF_SUCCESS 表示获取扩展索引成功。
376
377HDF_ERR_INVALID_PARAM 表示参数无效,获取扩展索引失败。
378
379HDF_FAILURE 表示执行失败。
380
381其他值表示底层返回失败,具体错误码详见OpenMAX IL定义的OMX_ERRORTYPE。
382
383
384### GetParameter()
385
386```
387ICodecComponent::GetParameter ([in] unsigned int index, [in] byte[] inParamStruct, [out] byte[] outParamStruct )
388```
389
390**描述**
391
392获取组件参数设置。
393
394当组件处于除了OMX_StateInvalid(组件状态异常)之外的其他状态,用户可通过此接口获取组件参数,组件状态详见**OMX_STATETYPE**。
395
396**起始版本:** 4.1
397
398**参数:**
399
400| 名称 | 描述 |
401| -------- | -------- |
402| index | 待填充结构的索引,详见OMX IL定义的OMX_INDEXTYPE。 |
403| inParamStruct | 指向由组件填充的应用程序分配的结构体指针。 |
404| outParamStruct | 指向由组件填充的应用程序分配的结构体指针。 |
405
406**返回:**
407
408HDF_SUCCESS 表示获取参数成功。
409
410HDF_ERR_INVALID_PARAM 表示参数无效,获取参数失败。
411
412HDF_FAILURE 表示执行失败。
413
414其他值表示底层返回失败,具体错误码详见OpenMAX IL定义的OMX_ERRORTYPE。
415
416
417### GetState()
418
419```
420ICodecComponent::GetState ([out] enum OMX_STATETYPE state)
421```
422
423**描述**
424
425获取组件的当前状态。
426
427用户可调用此接口获取组件的当前状态。
428
429**起始版本:** 4.1
430
431**参数:**
432
433| 名称 | 描述 |
434| -------- | -------- |
435| state | 指向获取到的状态指针,组件状态详见**OMX_STATETYPE**。 |
436
437**返回:**
438
439HDF_SUCCESS 表示获取状态成功。
440
441HDF_ERR_INVALID_PARAM 表示参数无效,获取状态失败。
442
443HDF_FAILURE 表示执行失败。
444
445其他值表示底层返回失败,具体错误码详见OpenMAX IL定义的OMX_ERRORTYPE。
446
447
448### SendCommand()
449
450```
451ICodecComponent::SendCommand ([in] enum OMX_COMMANDTYPE cmd, [in] unsigned int param, [in] byte[] cmdData )
452```
453
454**描述**
455
456发送命令给组件。
457
458发送命令给组件,当命令为设置状态时,会有事件回调通知结果给上层,其他命令则没有事件上报。
459
460**起始版本:** 4.1
461
462**参数:**
463
464| 名称 | 描述 |
465| -------- | -------- |
466| cmd | 组件要执行的命令,详见**OMX_COMMANDTYPE**。 |
467| param | 组件要执行的命令携带的参数。<br/>- 当cmd为OMX_CommandStateSet时,param的值详见**OMX_STATETYPE**。<br/>- 当cmd为OMX_CommandFlush、OMX_CommandPortDisable、OMX_CommandPortEnable、OMX_CommandMarkBuffer时,param为目标端口。 |
468| cmdData | 当cmd为OMX_CommandMarkBuffer时,指向OMX_MARKTYPE结构体指针。 |
469
470**返回:**
471
472HDF_SUCCESS 表示发送命令成功。
473
474HDF_ERR_INVALID_PARAM 表示参数无效,发送命令失败。
475
476HDF_FAILURE 表示执行失败。
477
478其他值表示底层返回失败,具体错误码详见OpenMAX IL定义的OMX_ERRORTYPE。
479
480
481### SetCallbacks()
482
483```
484ICodecComponent::SetCallbacks ([in] ICodecCallback callbacks, [in] long appData )
485```
486
487**描述**
488
489设置Codec组件的回调函数。
490
491当组件处于OMX_StateLoaded状态时,使用此回调函数向上通知事件以及上报可用的输入输出信息。更多组件状态的说明请详见**OMX_STATETYPE**。
492
493**起始版本:** 4.1
494
495**参数:**
496
497| 名称 | 描述 |
498| -------- | -------- |
499| callbacks | 指向回调函数[ICodecCallback](interface_i_codec_callback_v20.md)对象的指针。 |
500| appData | 指向应用程序定义的值的指针,该值将在回调期间返回。 |
501
502**返回:**
503
504HDF_SUCCESS 表示设置回调成功。
505
506HDF_ERR_INVALID_PARAM 表示参数无效,设置回调失败。
507
508HDF_FAILURE 表示执行失败。
509
510其他值表示底层返回失败,具体错误码详见OpenMAX IL定义的OMX_ERRORTYPE。
511
512
513### SetConfig()
514
515```
516ICodecComponent::SetConfig ([in] unsigned int index, [in] byte[] cfgStruct )
517```
518
519**描述**
520
521设置组件的配置。
522
523加载组件后可以随时调用此接口设置组件的配置。
524
525**起始版本:** 4.1
526
527**参数:**
528
529| 名称 | 描述 |
530| -------- | -------- |
531| index | 要设置的结构索引,详见**OMX_INDEXTYPE**。 |
532| cfgStruct | 指向组件用于初始化的应用程序分配结构的指针。 |
533
534**返回:**
535
536HDF_SUCCESS 表示设置配置成功。
537
538HDF_ERR_INVALID_PARAM 表示参数无效,设置失败。
539
540HDF_FAILURE 表示执行失败。
541
542其他值表示底层返回失败,具体错误码详见OpenMAX IL定义的OMX_ERRORTYPE。
543
544
545### SetParameter()
546
547```
548ICodecComponent::SetParameter ([in] unsigned int index, [in] byte[] paramStruct )
549```
550
551**描述**
552
553设置组件需要的参数。
554
555当出现如下情况时,用户可以通过此接口设置组件参数。
556
557- 当组件处于OMX_StateLoaded(表示组件已加载)。
558
559- 当组件处于OMX_StateWaitForResources(表示组件等待所需要的资源)。
560
561- 当状态或者端口是去使能状态,用户可通过此接口设置组件参数。 更多组件状态的说明请详见**OMX_STATETYPE**。
562
563**起始版本:** 4.1
564
565**参数:**
566
567| 名称 | 描述 |
568| -------- | -------- |
569| index | 要设置的结构索引,详见OMX IL定义的OMX_INDEXTYPE。 |
570| paramStruct | 指向组件用于初始化的应用程序分配结构的指针。 |
571
572**返回:**
573
574HDF_SUCCESS 表示设置参数成功。
575
576HDF_ERR_INVALID_PARAM 表示参数无效,设置参数失败。
577
578HDF_FAILURE 表示执行失败。
579
580其他值表示底层返回失败,具体错误码详见OpenMAX IL定义的OMX_ERRORTYPE。
581
582
583### UseBuffer()
584
585```
586ICodecComponent::UseBuffer ([in] unsigned int portIndex, [in] struct OmxCodecBuffer inBuffer, [out] struct OmxCodecBuffer outBuffer )
587```
588
589**描述**
590
591指定组件端口的buffer。
592
593此接口在以下情况下使用:
594
595- 当组件处于OMX_StateLoaded状态(表示组件已加载),并且用户已经向组件发送OMX_StateIdle状态转换请求。
596
597- 当组件处于OMX_StateWaitForResources状态,所需的资源可用,并且组件已准备好进入OMX_StateIdle状态。
598
599- 在去使能端口上,组件处于OMX_StateExecuting、OMX_StatePause或OMX_StateIdle状态。 更多组件状态的说明请详见**OMX_STATETYPE**。
600
601**起始版本:** 4.1
602
603**参数:**
604
605| 名称 | 描述 |
606| -------- | -------- |
607| portIndex | 指定的组件端口。 |
608| inBuffer | 指向要使用的buffer结构体的指针,结构体介绍详见[OmxCodecBuffer](_omx_codec_buffer_v20.md)。 |
609| outBuffer | 指向要使用的buffer结构体的指针,结构体介绍详见[OmxCodecBuffer](_omx_codec_buffer_v20.md)。 |
610
611**返回:**
612
613HDF_SUCCESS 表示指定成功。
614
615HDF_ERR_INVALID_PARAM 表示参数无效,指定失败。
616
617HDF_FAILURE 表示执行失败。
618
619其他值表示底层返回失败,具体错误码详见OpenMAX IL定义的OMX_ERRORTYPE。
620
621
622### UseEglImage()
623
624```
625ICodecComponent::UseEglImage ([in] unsigned int portIndex, [in] struct OmxCodecBuffer inBuffer, [out] struct OmxCodecBuffer outBuffer, [in] byte[] eglImage )
626```
627
628**描述**
629
630使用已在EGL中申请的空间。
631
632此接口在以下情况下使用:
633
634- 当组件处于OMX_StateLoaded状态,并且已经向组件发送OMX_StateIdle状态转换请求。
635
636- 当组件处于OMX_StateWaitForResources状态,所需的资源可用,并且组件已准备好进入OMX_StateIdle状态。
637
638- 在去使能端口上,组件处于OMX_StateExecuting、OMX_StatePause或OMX_StateIdle状态。 更多组件状态的说明请详见**OMX_STATETYPE**。
639
640**起始版本:** 4.1
641
642**参数:**
643
644| 名称 | 描述 |
645| -------- | -------- |
646| portIndex | 指定的组件端口。 |
647| inBuffer | 指向[OmxCodecBuffer](_omx_codec_buffer_v20.md)结构体的指针。 |
648| outBuffer | 指向[OmxCodecBuffer](_omx_codec_buffer_v20.md)结构体的指针。 |
649| eglImage | EGL申请的图像指针。 |
650
651**返回:**
652
653HDF_SUCCESS 表示使用成功。
654
655HDF_ERR_INVALID_PARAM 表示参数无效,使用失败。
656
657HDF_FAILURE 表示执行失败。
658
659其他值表示底层返回失败,具体错误码详见OpenMAX IL定义的OMX_ERRORTYPE。
660