ImageVerifierCode 换一换
格式:DOCX , 页数:70 ,大小:41.87KB ,
资源ID:10503143      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/10503143.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(大华播放SDK开发手册.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

大华播放SDK开发手册.docx

1、大华播放SDK开发手册大华播放SDK编程手册VERSION3.28.2(Build100129)2010-01-29版权所有XX前言非常感谢您使用我们公司的设备,我们将为您提供最好的服务。本手册可能包含技术上不准确的地方或印刷错误,欢迎指正。我们将会定期更新手册的内容。修订记录日期修订内容修订者2010-1-29添加接口:PLAY_SetFileRefCallBackExPLAY_GetRealFrameBitRate金志贤2010-1-22添加接口:PLAY_SetVisibleDecCallBack;PLAY_CatchResizePic金志贤2009-10-26添加接口说明:PLAY_G

2、etFreePort,PLAY_ReleasePort;PLAY_VerticalSyncEnable;PLAY_GetPicBMP,PLAY_GetPicJPEG;添加媒体信息获取指令:PLAY_CMD_GetMediaInfo金志贤2009-8-14整理文档,修改文档版式,添加接口说明金志贤2009-07-15整理文档,增加对最新接口的说明张博2008-03-25整理文档,修改多显卡及设置高画质接口的定义周国锋2007-10-16整理文档周国锋、陈琼施2007-9-3增加对最新接口的说明王兰君2006-12-27整理文档周国锋、陈琼施2006-12-18创建冯江、周国锋1简介 61.1概述

3、 61.2适用性 62设计原则 62.1典型调用 62.2编程补充说明 103数据结构定义 113.1宏定义 113.2媒体信息结构 143.3帧信息结构 144接口定义 154.1通道控制 154.2播放文件 164.3播放流数据 174.4回放控制 214.5音频控制 224.6数据回调 244.7消息回调 294.8函数回调 304.9文件索引 334.10文件定位 334.11设置属性 344.12获得属性 394.13多显卡控制 454.14抓图 474.15字符叠加 504.16多区域显示 514.17数据流录像 514.18清缓冲 524.19智能搜索 524.20获得版本号 5

4、34.21获得错误号 544.22其它 54简介概述播放SDK是大华压缩卡和硬盘录像机的配套产品,支持大华所有码流格式以及海思公司的h264码流和ADI的h264码流。本文档详细描述了开发包中各函数实现的功能及接口播放SDK的主要功能有:支持文件或流数据的播放、回放控制(如暂停恢复、快放慢放)、音频控制、流数据录像、多区域显示、按帧序号或按时间定位、数据回调、消息回调、字符叠加、抓图.开发包中包括的文件有:dhplay.dll、dhplay.h、dhplay.lib、底层mpeg4解码库(dllmpeg4.dll)、底层h264解码库dllh264.dll(解大华的h264码流和ADI公司的码

5、流)和海思的h264解码库,包括(AmrDLL.dll、DLLDeinterlace.dll、hi_h264dec_w.dll)。适用性v支持大华所有码流以及ADI的h264码流和海思的h264码流的解码v支持HB、HBE、LB、LBE、GB、GBE、NVS机型码流设计原则设计原则典型调用多显卡初始化初始化多显卡设备PLAY_InitDDrawDevice获取显卡数目PLAY_GetDDrawDeviceTotalNums设置播放窗口使用的显卡PLAY_SetDDrawDevice获取显卡信息PLAY_GetDDrawDeviceInfo获取显卡功能PLAY_GetCapsEx关闭多显卡设备P

6、LAY_RealeseDDraw回调及功能设置设置文件结束消息回调PLAY_SetFileEndMsg设置文件结束函数回调PLAY_SetFileEndCallBack设置图像格式改变消息回调PLAY_SetEncChangeMsg设置图像格式改变函数回调PLAY_SetEncTypeChangeCallBack设置文件索引建立后回调PLAY_SetFileRefCallBack设置流缓冲小于阀值回调PLAY_SetSourceBufCallBack设置数据解码回调PLAY_SetDecCallBackPLAY_SetDecCallBackEx设置数据解码回调同时显示视频PLAY_SetVis

7、ibleDecCallBack设置视频解码回调PLAY_SetDisplayCallBack设置音频解码回调PLAY_SetAudioCallBack设置水印数据回调PLAY_SetVerifyCallBack设置分析数据回调PLAY_SetDemuxCallBack设置文件索引PLAY_SetRefValue设置播放缓冲帧数PLAY_SetDisplayBuf设置overlay模式及关键色PLAY_SetOverlayMode设置流打开模式PLAY_SetStreamOpenMode设置定时器类型PLAY_SetTimerType设置水印数据回调PLAY_SetWaterMarkCallBa

8、ck打开文件或数据流创建文件PLAY_CreateFile打开文件PLAY_OpenFile创建流文件PLAY_CreateStream打开流PLAY_OpenStreamPLAY_OpenStreamEx播放播放开始PLAY_Play各功能操作及信息获取播放声音PLAY_PlaySoundPLAY_PlaySoundShare设置音量PLAY_SetVolume获取音量PLAY_GetVolume关闭声音PLAY_StopSoundPLAY_StopSoundShare开始流数据录像PLAY_StartDataRecord获取空闲的通道号PLAY_GetFreePort释放通道号PLAY_R

9、eleasePort输入流数据PLAY_InputDataPLAY_InputVideoDataPLAY_InputAudioData结束流数据录像PLAY_StopDataRecord重置流缓冲回调标志PLAY_ResetSourceBufFlag快放PLAY_Fast慢放PLAY_Slow暂停PLAY_Pause按帧号定位PLAY_SetCurrentFrameNum按时间定位PLAY_SetPlayedTimeEx按文件偏移定位PLAY_SetPlayPos刷新PLAY_RefreshPlayPLAY_RefreshPlayEx单帧播放PLAY_OneByOne单帧倒放PLAY_OneB

10、yOneBackPLAY_BackOne反向回放PLAY_Back抓图(写文件)PLAY_CatchPicPLAY_CatchPicExPLAY_CatchResizePic抓图(获取图片数据)PLAY_GetPicBMPPLAY_GetPicJPEG清缓冲PLAY_ResetBuffer颜色调整PLAY_SetColor多区域显示PLAY_SetDisplayRegion显示模式设置PLAY_SetDisplayType垂直同步使能PLAY_VerticalSyncEnable调整图象播放的流畅性PLAY_AdjustFluency改变图象播放的帧率PLAY_ChangeRate打开音频采集

11、功能PLAY_OpenAudioRecord关闭音频采集功能PLAY_CloseAudioRecord获取颜色参数PLAY_GetColor获取关键色PLAY_GetColorKey获取当前帧数PLAY_GetCurrentFrameNum获取当前帧率PLAY_GetCurrentFrameRate获取缓冲帧数PLAY_GetDisplayBuf获取显示类型PLAY_GetDisplayType获取当前时间PLAY_GetPlayedTimePLAY_GetPlayedTimeEx获取当前信息状态PLAY_QueryInfo获取总帧数PLAY_GetFileTotalFrames获取总时间PL

12、AY_GetFileTime获取文件偏移PLAY_GetPlayPos获取索引信息PLAY_GetRefValue获取流剩余缓冲PLAY_GetSourceBufferRemain获取流打开模式PLAY_GetStreamOpenMode获取关键帧信息PLAY_GetKeyFramePosPLAY_GetNextKeyFramePos获取OVERLAY模式PLAY_GetOverlayMode获取图像大小PLAY_GetPictureSize获取已播放的桢数PLAY_GetPlayedFrames获取视频实时码率PLAY_GetRealFrameBitRate停止播放停止PLAY_Stop结束

13、关闭创建的文件PLAY_DestroyFile关闭文件PLAY_CloseFile关闭创建的流PLAY_DestroyStream关闭流PLAY_CloseStreamPLAY_CloseStreamEx释放多显卡资源PLAY_ReleaseDDrawDevice可随时调用的函数获取系统功能PLAY_GetCaps转BMP文件PLAY_ConvertToBmpFile获取文件头长度PLAY_GetFileHeadLength获取版本信息PLAY_GetSdkVersion编程补充说明步骤A中的操作用于支持多显卡,目前播放库暂不支持,采用默认的显卡。步骤B中的功能设置操作只能在PLAY_play

14、之前设置一次。如果用户不调用这些函数,播放库会采用默认值,如播放缓冲帧数默认为15帧,默认用overlay显示,默认流打开模式为最实时模式。要使播放SDK能正常工作,步骤C和步骤D是必须的大部分操作集中在步骤E中,即在PLAY_Play和PLAY_Stop之间调用。但其中播放声音的函数PLAY_PlaySound、PLAY_PlaySoundShare可以在PLAY_Play之前调用,以防止部分声音数据不能播放,这在播放一个纯音频文件时较为明显对D、E、F、G、H、I中的功能大部分之间没有调用先后顺序,当然对同一个功能还是应该按先打开再操作最后关闭的顺序。 数据结构定义宏定义最大通道数#def

15、ineFUNC_MAX_PORT 501/最大播放通道数声音波形范围#defineMIN_WAVE_COEF -100#defineMAX_WAVE_COEF 100定时器类型#defineTIMER_1 1 /默认定时器,精确定时,但一个进程中最多只有16个#defineTIMER_2 2 /不精确定时,个数据不限制缓冲类型#defineBUF_VIDEO_SRC 1 /视频源缓冲#defineBUF_AUDIO_SRC 2 /音频源缓冲#defineBUF_VIDEO_RENDER 3 /解码后视频数据缓冲#defineBUF_AUDIO_RENDER 4 /解码后音频数据缓冲注:BUF_

16、VIDEO_SRC视频数据源缓冲,缓冲解码之前视频数据,只对流模式有效,单位byteBUF_AUDIO_SRC音频数据源缓冲,缓冲解码之前音频数据,只对流模式有效,单位byteBUF_VIDEO_RENDER解码后视频数据缓冲,单位帧数BUF_AUDIO_RENDER解码后音频数据缓冲,单位帧数,音频40ms数据定为一帧错误类型#defineDH_PLAY_NOERROR 0/没有错误#defineDH_PLAY_PARA_OVER 1/输入参数非法#defineDH_PLAY_ORDER_ERROR 2/调用顺序不对#defineDH_PLAY_TIMER_ERROR 3/多媒体时钟设置失败

17、#defineDH_PLAY_DEC_VIDEO_ERROR 4 /视频解码失败#defineDH_PLAY_DEC_AUDIO_ERROR 5 /音频解码失败#defineDH_PLAY_ALLOC_MEMORY_ERROR 6 /分配内存失败#defineDH_PLAY_OPEN_FILE_ERROR 7 /文件操作失败#defineDH_PLAY_CREATE_OBJ_ERROR 8 /创建线程事件等失败#defineDH_PLAY_CREATE_DDRAW_ERROR 9/创建directDraw失败#defineDH_PLAY_CREATE_OFFSCREEN_ERROR 10 /创

18、建后端缓存失败#defineDH_PLAY_BUF_OVER 11 /缓冲区满,输入流失败#defineDH_PLAY_CREATE_SOUND_ERROR 12 /创建音频设备失败#defineDH_PLAY_SET_VOLUME_ERROR 13 /设置音量失败#defineDH_PLAY_SUPPORT_FILE_ONLY 14/只能在播放文件时才能使用#defineDH_PLAY_SUPPORT_STREAM_ONLY 15/只能在播放流时才能使用#defineDH_PLAY_SYS_NOT_SUPPORT 16/系统不支持,解码器只能工作在Pentium3以上#defineDH_PL

19、AY_FILEHEADER_UNKNOWN 17 /没有文件头#defineDH_PLAY_VERSION_INCORRECT 18 /解码器和编码器版本不对应#defineDH_PLAY_INIT_DECODER_ERROR 19 /初始化解码器失败#defineDH_PLAY_CHECK_FILE_ERROR 20 /文件太短或码流无法识别#defineDH_PLAY_INIT_TIMER_ERROR 21 /初始化多媒体时钟失败#defineDH_PLAY_BLT_ERROR 22 /位拷贝失败#defineDH_PLAY_UPDATE_ERROR 23 /显示overlay失败#def

20、ineDH_PLAY_MEMORY_TOOSMALL 24 /memorytoosmall最大区域显示数#defineMAX_DISPLAY_WND 4/同时最多打开4个区域显示窗口显示类型#defineDISPLAY_NORMAL 1/以正常分辨率显示#defineDISPLAY_QUARTER 2 /以四分之一分辨率显示解码缓冲数#defineMAX_DIS_FRAMES 50 /最大解码缓冲帧数#defineMIN_DIS_FRAMES 6 /最小解码缓冲帧数定位类型#defineBY_FRAMENUM 1 /按帧号#defineBY_FRAMETIME 2 /按时间数据流原始缓冲大小#

21、defineSOURCE_BUF_MAX 1024*100000 /最大原始缓冲#defineSOURCE_BUF_MIN 1024*50 /最小原始缓冲数据流播放模式#defineSTREAME_REALTIME 0 /最实时方式#defineSTREAME_FILE 1 /最流畅方式解码回调音频帧类型#defineT_AUDIO16 101#defineT_AUDIO8 100解码回调视频帧类型#defineT_UYVY 1#defineT_YV12 3#defineT_RGB32 7媒体信息查询指令#definePLAY_CMD_GetTime 1#definePLAY_CMD_GetF

22、ileRate 2#definePLAY_CMD_GetMediaInfo 3系统功能#defineSUPPORT_DDRAW 1/支持DIRECTDRAW;如果不支持,则播放器不能工作#defineSUPPORT_BLT 2/显卡支持BLT操作;如果不支持,则播放器不能工作#defineSUPPORT_BLTFOURCC 4 /显卡BLT支持颜色转换#defineSUPPORT_BLTSHRINKX 8 /显卡BLT支持X轴缩小#defineSUPPORT_BLTSHRINKY 16 /显卡BLT支持Y轴缩小#defineSUPPORT_BLTSTRETCHX 32 /显卡BLT支持X轴放大

23、#defineSUPPORT_BLTSTRETCHY 64 /显卡BLT支持Y轴放大#defineSUPPORT_SSE128 /CPU支持SSE指令,IntelPentium3以上支持SSE指令#defineSUPPORT_MMX 256/CPU支持MMX指令集抓图格式类型定义typedefenum_tPicFormats PicFormat_BMP=0, PicFormat_JPEG,tPicFormats;媒体信息结构typedefstruct longlWidth; longlHeight; longlFrameRate; longlChannel; longlBitPerSample

24、; longlSamplesPerSec;MEDIA_INFO;帧信息结构帧位置typedefstruct longnFilePos; /指定帧在文件中的偏移位置longnFrameLen;/帧长度longnFrameNum; /帧序号longnFrameTime; /帧时间longnErrorFrameNum; /错误帧号SYSTEMTIME*pErrorTime; /错误帧时间longnErrorLostFrameNum; /错误帧帧号longnErrorFrameSize; /错误帧大小FRAME_POS,*PFRAME_POS;帧信息typedefstruct longnWidth;

25、/画面宽,单位像素。如果是音频数据则为0 longnHeight; /画面高。如果是音频数据则为0 longnStamp; /时标信息,单位毫秒 longnType;/视频帧类型,T_AUDIO16,T_RGB32,T_YV12 longnFrameRate; /编码时产生的图像帧率FRAME_INFO;帧类型typedefstructchar*pDataBuf;/帧数据longnSize; /帧大小longnFrameNum; /帧序号BOOLbIsAudio; /是否音频帧longnReserved; /保留字FRAME_TYPE;接口定义通道控制PLAY_GetFreePort函数名称B

26、OOLPLAY_GetFreePort(LONG*plPort)功能描述获取空闲的通道号,与PLAY_RealsePort成对使用参数说明plPort获取的通道号返回值成功返回TRUE,不成功返回FALSEPLAY_ReleasePort函数名称BOOLPLAY_ReleasePort(LONGlPort)功能描述释放端口号,与PLAY_GetFreePort成对使用参数说明lPort通道号返回值成功返回TRUE,不成功返回FALSE播放文件PLAY_OpenFile函数名称BOOLPLAY_OpenFile(LONGnPort,LPSTRsFileName)功能描述打开文件参数说明nPort

27、通道号sFileName文件名,(文件不能超过4G或小于4K)返回值成功返回TRUE,不成功返回FALSEPLAY_CreateFile函数名称BOOLPLAY_CreateFile(LONGnPort,LPSTRsFileName)功能描述打开文件,自动分配通道号参数说明nPort未使用sFileName文件名,(文件不能超过4G或小于4K)返回值成功返回TRUE,不成功返回FALSEPLAY_Play函数名称BOOLPLAY_Play(LONGnPort,HWNDhWnd)功能描述开始播放。如果已经播放,改变当前播放状态为正常速度播放参数说明nPort通道号hWnd播放窗口句柄返回值成功返

28、回TRUE,不成功返回FALSEPLAY_Stop函数名称BOOLPLAY_Stop(LONGnPort)功能描述结束播放参数说明nPort通道号返回值成功返回TRUE,不成功返回FALSEPLAY_CloseFile函数名称BOOLPLAY_CloseFile(LONGnPort)功能描述关闭播放文件,在PLAY_Stop后调用参数说明nPort通道号返回值成功返回TRUE,不成功返回FALSEPLAY_DestoryFile函数名称BOOLPLAY_DestoryFile(LONGnPort)功能描述关闭播放文件,并释放自动分配的通道号。参数说明nPort通道号返回值成功返回TRUE,不成功返回FALSE播放流数据PLAY_OpenStream函数名称BOOLPLAY_OpenStream(LONGnPort,PBYTEpFileHeadBuf,DWORDnSize,DWORDnBufPoolSize)功能描述打开流

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1