海思sdk h.264pc解码库软件api参考_第1页
海思sdk h.264pc解码库软件api参考_第2页
海思sdk h.264pc解码库软件api参考_第3页
海思sdk h.264pc解码库软件api参考_第4页
海思sdk h.264pc解码库软件api参考_第5页
已阅读5页,还剩29页未读, 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、2013。保留一切权利。商、注您:2013。保留一切权利。商、注您:前 前言订H.264 i前 前言订H.264 i前 H.264API前 H.264API介绍H.264后,您将对客户端H.264 PCAPI函供您查阅H.264 PC介绍每一个API 接口函数。APIAPI应用实通过实例介绍H.264库API的使用方法前言Windows75632x Hi264DecAUHi264DecImageEnhance接口结构体 H264_DEC_FRAME_S 描述增加 H264_DEC_OUTPUT_INFO_S *pFrameInfo前言Windows75632x Hi264DecAUHi264D

2、ecImageEnhance接口结构体 H264_DEC_FRAME_S 描述增加 H264_DEC_OUTPUT_INFO_S *pFrameInfoH264_DEC_FRAME_S 中新增变量-*“TerminalDisplay“Terminal Display输出信息中夹杂的用户从终端输入的信息采用加粗字体表示。前言2.1Hi264DecCreateuWorkMode2.3Hi264DecGetInfouFunctionSetbit12前言2.1Hi264DecCreateuWorkMode2.3Hi264DecGetInfouFunctionSetbit12HighProfile2.3

3、Hi264DecGetInfouFunctionSetHi264DecCreate1-162.3Hi264DecGetInfouFunctionSetbit1修改3.2.1H264_LIBINFO_S库能力集的bit1修改3.2.3H264_DEC_ATTR_S器工作模式bit2和bit1增加适用2.6Hi264DecImageEnhance4.2 2.1Hi264DecCreateuWorkMode2.1Hi264DecCreate中参数*pUserData的取值范2.1Hi264DecCreate2.3Hi264DecGetInfouFunctionSeterlace功能2.4Hi264D

4、ecFrame2.5Hi264DecAU*pUserData2.5Hi264DecAU3.2.1H264_LIBINFO_Sbit10的描修改4.2 程序实例中设器属性1-1 2.4 Hi264DecFrame 中注意涉及结构体的由 增加一个API 函数Hi264DecAU前言v2.1Hi264DecCreateuWorkModebit0前言v2.1Hi264DecCreateuWorkModebit0的0、1 的含义反过来。将概述中表1-1库开发包组件中的API 接口的说明中,用户工程中,应该保证先包含hi_config.h,再将“1.3 函数列表”中Hi264DecDestroy的功能修描

5、 1目 目录前 1概1目 目录前 1概112233.2-1336912数据类型与数据结111123.2.334434API应用实14.1 流程14.2 程序实2插图目库API函数使插图目库API函数使用流程1表格目1表格目121 1概1.1 。库的主要流程,并对外提供了灵活简单的 API,用户可库 库的主要组件及相关说明如1-11 1概1.1 。库的主要流程,并对外提供了灵活简单的 API,用户可库 库的主要组件及相关说明如1-1Windows2000elAMDPCAPI六个库文件:libm.lib、libguide.lib libirc.lib 和 -以读文为例,示库API的调用方式11.2

6、 1.3 2.1创建、初始器句柄v销器句柄2-2.3查库版本信息和当前版本能力集对输入的一段码流进并按帧输出图像v11.2 1.3 2.1创建、初始器句柄v销器句柄2-2.3查库版本信息和当前版本能力集对输入的一段码流进并按帧输出图像v2-VisualVisualS2003 el C+ 9.0 / 10.0WindowsWindows 2000 Windows XP Windows 2003 Windows Vista Windows7Windows7WindowsXP Windows 7在Windows 98 系统上,el P3 系列 el P4 系列 elCore系列AMDAthlon64

7、系列 AMDSempron 系列 AMD Athlon 系列CPU3.0GHz512MB 以elP3、AMDAthlonXP或更早期的CPU 上,11.4 61.5 APIAPIAPI11.4 61.5 APIAPIAPIAPIAPIAPI2.1 HI_HDLHi264DecCreate(H264_DEC_ATTR_S*pDecAttr。0 x00 表示输出图像为4:2:0 格式。2.1 HI_HDLHi264DecCreate(H264_DEC_ATTR_S*pDecAttr。0 x00 表示输出图像为4:2:0 格式。0 x00表示输入码流为以“000001”为 nalu H.264 码流

8、。(以MB 为为120,即1080p 图像宽。)(以MB 为为68,即1080p 图像高。)B器erlace器将自动跳过erlace过程sliceslice0-器创建成功,返回值器句柄B器erlace器将自动跳过erlace过程sliceslice0-器创建成功,返回值器句柄- 1erlace功01:H.264-H264_USERDATA_S 定义器暂此参数u0启动多线需要保证输入码流在slice边界不做Deblock滤波。如果码流不sliceDeblock多线只在多核CPU。,创器时应留意系统内存容量,如果内存不够,创建2.2 销器句柄voidHi264DecDestroy(HI_HDL2.

9、3 查启动多线需要保证输入码流在slice边界不做Deblock滤波。如果码流不sliceDeblock多线只在多核CPU。,创器时应留意系统内存容量,如果内存不够,创建2.2 销器句柄voidHi264DecDestroy(HI_HDL2.3 查库版本信息和当前版本能力集HI_S32 -待销毁器句柄-信-信-0HighProfile。 1High Profile。 0:不支持cabac1:支持cabac0:不支1:支0:不支持B-slice1:支持B-slice0:不支持1:支持0:不支持1:支持0:不支持1:支持FMO0:不支持Hi351x数字水1:支持Hi351x数字水2.4 HI_S3

10、2Hi264DecFrame HI_HDL hDec, HI_U8*pStream,HI_U32HI_U640-成功获库信息-0 x004:2:0格式的图2.4 HI_S32Hi264DecFrame HI_HDL hDec, HI_U8*pStream,HI_U32HI_U640-成功获库信息-0 x004:2:0格式的图0 x00表示仅支持以“000001”为 nalu H.264 码流。(以像素(以像素u-H264_DEC_FRAME_S*pDecFrame, HI_U32 uFlags,对于以“000001naluH.264器。-码流长度(字节)-Y-U-V-(以像素-H264_DEC

11、_FRAME_S*pDecFrame, HI_U32 uFlags,对于以“000001naluH.264器。-码流长度(字节)-Y-U-V-(以像素-(以像素-Ystride(以像素-U/Vstride(以像素-(以像素-(以像素-(以像素-(以像素0-uFlags0-输出图像缓冲。(暂不使用0 0-uFlags0-输出图像缓冲。(暂不使用0 0 Decoding Refresh)帧标示。0IDR1:IDR-u-输出当前帧信息, 包含一帧码流字节数, 各种类型宏块的个数。-0 0:正在HI_H264DEC_NEED_MORE_BITS 时才能再次配置一段新的码流。在上述循环调用的过程中,如果

12、函数返回 HI_H264DEC_OK 则表明有一帧图像及时处在pDecFrame中的图像在器下配在HI_H264DEC_NEED_MORE_BITS 时才能再次配置一段新的码流。在上述循环调用的过程中,如果函数返回 HI_H264DEC_OK 则表明有一帧图像及时处在pDecFrame中的图像在器下配置:uFlags=1、pStream=NULL。然后循环调用此函数,直到函数返HI_H264DEC_NO_PICTURE 时才能。在上述循环调用的过程中,如果函数返回 HI_H264DEC_OK 则表明有一帧图像及时处在pDecFrame中的图像H264_DEC_FRAME_S 中,并26_EC_

13、RME_2.5 HI_S32Hi264DecAU HI_HDL hDec, HI_U8*pStream,HI_U32iStreamLen, HI_U64 ullPTS,H264_DEC_FRAME_S*pDecFrame, HI_U32 uFlags-uFlags1-“000001naluH.264-码流长度(字节)-Y-U-V-(以像素-(以像素“000001naluH.264-码流长度(字节)-Y-U-V-(以像素-(以像素-Ystride(以像素-U/Vstride(以像素-(以像素-(以像素-(以像素-(以像素-输出图像缓冲。(暂不使用Hi264DecFrame是并列关系,用户根据需要

14、调用其中一个即可。在调用本函在0-0 0 IDR0Hi264DecFrame是并列关系,用户根据需要调用其中一个即可。在调用本函在0-0 0 IDR0IDR1:IDR-u-输出当前帧信息, 包含一帧码流字节-HI_H264DEC_OK则表明有一帧图像输HI_H264DEC_NO_PICTURE 则表明用户本次配置的码流无法解出一帧H264_DEC_FRAME_S 中,并26_EC_RME_2.6 HI_S32Hi264DecImageEnhance HI_HDL hDec, H264_DEC_FRAME_S*pDecFrame, HI_U32 uEnhanceCoeff-HI_H264DEC_

15、OK则表明有一帧图像输HI_H264DEC_NO_PICTURE 则表明用户本次配置的码流无法解出一帧H264_DEC_FRAME_S 中,并26_EC_RME_2.6 HI_S32Hi264DecImageEnhance HI_HDL hDec, H264_DEC_FRAME_S*pDecFrame, HI_U32 uEnhanceCoeff-输入/Y-输入/U-输入/V-输入/(以像素-输入/(以像素-输入/Ystride(以像素-输入/U/Vstride(以像素-输入/(以像素-输入/(以像素-输入/(以像素-输入/(以像素-输入/U/Vstride(以像素-输入/(以像素-输入/(以像

16、素-输入/(以像素-输入/(以像素-输入/输出图像缓冲(暂不使用0 输入/2输入/0 输入/IDR0IDR1:IDR-输入/-输入/u-输入/-输入/-输出当前帧信息, 包含一帧码流字节数, -(0,图像增强系数, 一般取值范围是 变越大, 值为 40。pDecFrame 既是输入参数也是输出参数,用户在获取一帧图像后,应立即Hi264DecFrameHi264DecAUpDecFrameHi264DecImageEnhancepDecFrame 既是输入参数也是输出参数,用户在获取一帧图像后,应立即Hi264DecFrameHi264DecAUpDecFrameHi264DecImageEn

17、hance0-3 3数据类型与数据结3.1 win32环境下,API 3 3数据类型与数据结3.1 win32环境下,API 和能力集信息数据结构 typedefHI_U32 HI_U32 /*/*3 /*/*HI_U32 HI_U32 constconst;/*版本信息 信息 库能力集 HI_U32 除bit0位外,其他标志位为1时表示当前版本支持该功能,为0:3 /*/*HI_U32 HI_U32 constconst;/*版本信息 信息 库能力集 HI_U32 除bit0位外,其他标志位为1时表示当前版本支持该功能,为0:B集成erlace:Highprofile:多线bit31保留位

18、/*0 x00:当前仅支持YUV420ype*/*0 x00:/*H.264/*最大图像宽度(0001”为nalu分割符的流式)/*最大图像高度(/*最大参考帧数目 /*保留字 u;3.2.23 /*用户私有数据结构 typedefstructHI_U32 /*/*/*HI_U32 uUserDataSize; HI_UCHAR *pData;struct/*指向下一段用户数据 3.2.3器属性数据结构 typedefstruct3 /*用户私有数据结构 typedefstructHI_U32 /*/*/*HI_U32 uUserDataSize; HI_UCHAR *pData;struct

19、/*指向下一段用户数据 3.2.3器属性数据结构 typedefstruct器输出图像格式 /*0 x00库只支持YUV420/*输入码流格式 /*0 x00库只支持以“000001/*nalu分割符的流式H.264/*图像宽度(/*图像高度(/*参考帧数目 器工作模式 )bit00快速输出模式1正常输出模式*/ bit1 bit2: */00:图像 01Hi351x110场图像不做1场图像做01多slice3/*bit6bit31保留位/*用户私有数据 /*保留字 H264_USERDATA_S HI_U32 ;3.2.4器输出帧信息数据结构 typedef3/*bit6bit31保留位/*

20、用户私有数据 /*保留字 H264_USERDATA_S HI_U32 ;3.2.4器输出帧信息数据结构 typedefstruct当前帧的字节数 当前帧的I4x4宏块个数 */ 当前帧的I8x8宏块个数 */ 当前帧的I16x16*/当前帧的P16x16*/当前帧的P16x8宏块个数 */当前帧的P8x16宏块个数 */当前帧的P8x8宏块个数 */ 当前帧的PSkip宏块个数 */当前帧的IPCM3.2.5器输出图像信息数据结构 typedefstruct/*Y分量地址 3 /*U分量地址 /*V分量地址 )3 /*U分量地址 /*V分量地址 )输出U/V分量stride图像裁减信息:*/

21、图像裁减信息:*/图像裁减信息:*/图像裁减信息:*/输出图像在dpb中的序号 */图像类型:0:帧1:顶场2:图像是否有错:0:正确;1:图像是否为IDR帧:0:非IDR帧;1:IDR时间戳 */ */保留字 */指向用户私有数据 bu;H264_USERDATA_S/*指向当前帧输出信息 H264_OUTPUT_INFO_S4API4API应用实4.1 API 函数使用流程开否码流是否结束是码流数否残留数是否有图像输出结4API4API应用实4.1 API 函数使用流程开否码流是否结束是码流数否残留数是否有图像输出结销是显示或保存图是否有图像输出是显示或保存图进入flush模否码创4API

22、4.2 H264_DEC_ATTR_S dec_attrbute; H264_DEC_FRAME_S dec_frame; HI_HDL handle = NULL;HI_S32=HI_U8 buf0 x80000; FILE *h264 = NULL; FILE *yuv = NULL;HI_U32HI_U32StrenthCoeff=/*码流缓冲区 H.264存放YUV图像的文件 */ 0:关闭图像增强;1*/图像增强系数 4API4.2 H264_DEC_ATTR_S dec_attrbute; H264_DEC_FRAME_S dec_frame; HI_HDL handle = NULL;HI_S32=HI_U8 buf0 x80000; FILE *h26

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论