同三维USB采集卡SDK编码函数说明
来源:同三维 作者:同三维视频 编辑:数字音视工程 2011-06-24 17:39:16 加入收藏 咨询

所在单位: | * |
姓名: | * |
手机: | * |
职位: | |
邮箱: | * |
其他联系方式: | |
咨询内容: | |
验证码: |
|
同三维T301 USB视频采集卡是一款专业级的视频采集设备,带有VC二次开发包SDK,并带有完整DEMO源程序,其带有视频抓拍、视频录像、翻转、定时录像等功能。同三维(www.tswvideo.com)这款专业级USB视频采集卡采用高速USB2.0接口设计,支持四路视频输入,可以通过视频S端子或者Video端子来接入视频。
同三维USB采集卡SDK编码函数说明
编码函数介绍:
75 UINT WINAPI HYCreateEncoder(UINT unIndex,UINT unRequestFlag,PVIDEO_ENCORE_PARAM pVideoEncoreParam)
说明:创建媒体编码器。
参数:UINT unIndex:基于0的设备索引。
UINT unRequestFlag:请求标示,为FLAG_REQUEST_VIDEO 和 FLAG_REQUEST_AUDIO的组合。
FLAG_REQUEST_VIDEO:请求创建视频编码器。
FLAG_REQUEST_AUDIO:请求创建音频编码器。(目前暂不支持)
PVIDEO_ENCORE_PARAM pVideoEncoreParam:视频编码器工作参数。
定义:
1、编码模式:
typedef enum
{
VIDEO_ENCORE_CBR = 0, //常位率编码模式,单位时间位率基本一致,编码器通过动态改变编码质量满足位率要求
VIDEO_ENCORE_VBR = 1, //变位率编码模式,单位时间位率动态变化,编码质量恒定,保持同一水平输出。
}ENCOREMODE;
2、编码参数
typedef struct _tagMediaParam
{
ENCOREMODE enEncoreMode; //编码模式,见上述说明
double dbFrameRate; //输入视频帧率,PAL:1-25,NTSC:1-30 *
DWORD dwVideoWidth; //输入视频宽度 *
DWORD dwVideoHeight; //输入视频高度 *
DWORD dwBitRate; //常位率编码模式下的编码位率,单位:kbps
DWORD dwVBRPeakRate; //变位率模式下的峰值位率。 #
DWORD dwVBRMaxRate; //变位率模式下的最大位率。 #
DWORD dwQuantizer; //变位率模式下的量化系数。 #
DWORD dwMotionPrecision; //运动预测值(2-6,值越大效果越好,但CPU更高)
DWORD dwKeyFrmInterval; //关键帧出现周期,单位:帧
}VIDEO_ENCORE_PARAM,*PVIDEO_ENCORE_PARAM;
其中:行尾标有“*”的参数为AVI,MP4共用参数,必须输入。
行尾标有“#”的参数为可选参数,如不输入,可以填0,系统会自动确定相应值。
dwMotionPrecision参数将影响CPU占用率,通常情况下选择默认值为2即可。
返回:ERR_SUCCESS:操作成功。
其他:操作失败。失败原因由返回代码给出。
76 UINT WINAPI HYDestoryEncoder(UINT unIndex)
说明:删除媒体编码器,释放系统分配的资源。
参数:UINT unIndex:基于0的设备索引。
返回:ERR_SUCCESS:操作成功。
其他:操作失败。失败原因由返回代码给出。
77 UINT WINAPI HYCreateRecordFile(UINT unIndex,LPCTSTR szFileName,RECTYPE enType)
说明:创建录象文件,该函数需在成功调用HYCreateEncoder后使用。
参数:UINT unIndex:基于0的设备索引。
LPCTSTR szFileName:录象输出文件名,包括全路径。
RECTYPE enType:录象文件类型。
定义:
1、录象文件类型:
typedef enum
{
RECTYPE_MP4 = 0, //MPEG4文件,视频编码采用MPEG4规范。
RECTYPE_AVI = 1, //AVI文件,为YUY2的原始数据流文件。
}RECTYPE;
返回:ERR_SUCCESS:操作成功。
其他:操作失败。失败原因由返回代码给出。
78 UINT WINAPI HYCloseRecordFile(UINT unIndex)
说明:打包并关闭录象文件。
参数:UINT unIndex:基于0的设备索引。
返回:ERR_SUCCESS:操作成功。
其他:操作失败。失败原因由返回代码给出。
79 UINT WINAPI HYEnableEncode(UINT unIndex,BOOL bEnable)
说明:开始/停止媒体数据编码。
参数:UINT unIndex:基于0的设备索引。
BOOL bEnable:TRUE:开始编码。FALSE:停止编码。
返回:ERR_SUCCESS:操作成功。
其他:操作失败。失败原因由返回代码给出。
80 UINT WINAPI HYGetVideoOverturn(UINT unIndex,BOOL &bOverturn)
说明:获取视频翻转设置。
参数:UINT unIndex:基于0的设备索引。
BOOL &bOverturn:输出参数,用于返回视频翻转设置,
TRUE :视频翻转显示。
FALSE:视频正常显示。
返回:ERR_SUCCESS:操作成功。
其他:操作失败。失败原因由返回代码给出。
81 UINT WINAPI HYSetVideoOverturn(UINT unIndex,BOOL bOverturn)
说明:设置视频翻转。
参数:UINT unIndex:基于0的设备索引。
BOOL bOverturn:视频显示翻转状态。
TRUE :视频翻转显示。
FALSE:视频正常显示。
返回:ERR_SUCCESS:操作成功。
其他:操作失败。失败原因由返回代码给出。
USB视频采集卡(T301)操作系统支持:Windows 2000、Windows 2003、XP、Vista、WIN7等,免费提供完整的SDK二次开发包,其支持VC等。提供演示程序及演示程序源代码。我们可以根据客户的需求进行软件硬件方面的修改(OEM),并支持在USB采集卡上进行加密,为客户生成独特的保密字,完整的服务支持可以方便快速的开发您的自己的应用系统。了解更多这款USB视频采集卡您可以登录USB视频采集卡专题:http://www.xiangb.com/usbcjk.htm
评论comment