同三維USB采集卡SDK編碼函數(shù)說明
來源:同三維 作者:同三維視頻 編輯:數(shù)字音視工程 2011-06-24 17:39:16 加入收藏
同三維T301 USB視頻采集卡是一款專業(yè)級的視頻采集設(shè)備,帶有VC二次開發(fā)包SDK,并帶有完整DEMO源程序,其帶有視頻抓拍、視頻錄像、翻轉(zhuǎn)、定時錄像等功能。同三維(www.tswvideo.com)這款專業(yè)級USB視頻采集卡采用高速USB2.0接口設(shè)計,支持四路視頻輸入,可以通過視頻S端子或者Video端子來接入視頻。
同三維USB采集卡SDK編碼函數(shù)說明
編碼函數(shù)介紹:
75 UINT WINAPI HYCreateEncoder(UINT unIndex,UINT unRequestFlag,PVIDEO_ENCORE_PARAM pVideoEncoreParam)
說明:創(chuàng)建媒體編碼器。
參數(shù):UINT unIndex:基于0的設(shè)備索引。
UINT unRequestFlag:請求標示,為FLAG_REQUEST_VIDEO 和 FLAG_REQUEST_AUDIO的組合。
FLAG_REQUEST_VIDEO:請求創(chuàng)建視頻編碼器。
FLAG_REQUEST_AUDIO:請求創(chuàng)建音頻編碼器。(目前暫不支持)
PVIDEO_ENCORE_PARAM pVideoEncoreParam:視頻編碼器工作參數(shù)。
定義:
1、編碼模式:
typedef enum
{
VIDEO_ENCORE_CBR = 0, //常位率編碼模式,單位時間位率基本一致,編碼器通過動態(tài)改變編碼質(zhì)量滿足位率要求
VIDEO_ENCORE_VBR = 1, //變位率編碼模式,單位時間位率動態(tài)變化,編碼質(zhì)量恒定,保持同一水平輸出。
}ENCOREMODE;
2、編碼參數(shù)
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; //變位率模式下的量化系數(shù)。 #
DWORD dwMotionPrecision; //運動預(yù)測值(2-6,值越大效果越好,但CPU更高)
DWORD dwKeyFrmInterval; //關(guān)鍵幀出現(xiàn)周期,單位:幀
}VIDEO_ENCORE_PARAM,*PVIDEO_ENCORE_PARAM;
其中:行尾標有“*”的參數(shù)為AVI,MP4共用參數(shù),必須輸入。
行尾標有“#”的參數(shù)為可選參數(shù),如不輸入,可以填0,系統(tǒng)會自動確定相應(yīng)值。
dwMotionPrecision參數(shù)將影響CPU占用率,通常情況下選擇默認值為2即可。
返回:ERR_SUCCESS:操作成功。
其他:操作失敗。失敗原因由返回代碼給出。
76 UINT WINAPI HYDestoryEncoder(UINT unIndex)
說明:刪除媒體編碼器,釋放系統(tǒng)分配的資源。
參數(shù):UINT unIndex:基于0的設(shè)備索引。
返回:ERR_SUCCESS:操作成功。
其他:操作失敗。失敗原因由返回代碼給出。
77 UINT WINAPI HYCreateRecordFile(UINT unIndex,LPCTSTR szFileName,RECTYPE enType)
說明:創(chuàng)建錄象文件,該函數(shù)需在成功調(diào)用HYCreateEncoder后使用。
參數(shù):UINT unIndex:基于0的設(shè)備索引。
LPCTSTR szFileName:錄象輸出文件名,包括全路徑。
RECTYPE enType:錄象文件類型。
定義:
1、錄象文件類型:
typedef enum
{
RECTYPE_MP4 = 0, //MPEG4文件,視頻編碼采用MPEG4規(guī)范。
RECTYPE_AVI = 1, //AVI文件,為YUY2的原始數(shù)據(jù)流文件。
}RECTYPE;
返回:ERR_SUCCESS:操作成功。
其他:操作失敗。失敗原因由返回代碼給出。
78 UINT WINAPI HYCloseRecordFile(UINT unIndex)
說明:打包并關(guān)閉錄象文件。
參數(shù):UINT unIndex:基于0的設(shè)備索引。
返回:ERR_SUCCESS:操作成功。
其他:操作失敗。失敗原因由返回代碼給出。
79 UINT WINAPI HYEnableEncode(UINT unIndex,BOOL bEnable)
說明:開始/停止媒體數(shù)據(jù)編碼。
參數(shù):UINT unIndex:基于0的設(shè)備索引。
BOOL bEnable:TRUE:開始編碼。FALSE:停止編碼。
返回:ERR_SUCCESS:操作成功。
其他:操作失敗。失敗原因由返回代碼給出。
80 UINT WINAPI HYGetVideoOverturn(UINT unIndex,BOOL &bOverturn)
說明:獲取視頻翻轉(zhuǎn)設(shè)置。
參數(shù):UINT unIndex:基于0的設(shè)備索引。
BOOL &bOverturn:輸出參數(shù),用于返回視頻翻轉(zhuǎn)設(shè)置,
TRUE :視頻翻轉(zhuǎn)顯示。
FALSE:視頻正常顯示。
返回:ERR_SUCCESS:操作成功。
其他:操作失敗。失敗原因由返回代碼給出。
81 UINT WINAPI HYSetVideoOverturn(UINT unIndex,BOOL bOverturn)
說明:設(shè)置視頻翻轉(zhuǎn)。
參數(shù):UINT unIndex:基于0的設(shè)備索引。
BOOL bOverturn:視頻顯示翻轉(zhuǎn)狀態(tài)。
TRUE :視頻翻轉(zhuǎn)顯示。
FALSE:視頻正常顯示。
返回:ERR_SUCCESS:操作成功。
其他:操作失敗。失敗原因由返回代碼給出。
USB視頻采集卡(T301)操作系統(tǒng)支持:Windows 2000、Windows 2003、XP、Vista、WIN7等,免費提供完整的SDK二次開發(fā)包,其支持VC等。提供演示程序及演示程序源代碼。我們可以根據(jù)客戶的需求進行軟件硬件方面的修改(OEM),并支持在USB采集卡上進行加密,為客戶生成獨特的保密字,完整的服務(wù)支持可以方便快速的開發(fā)您的自己的應(yīng)用系統(tǒng)。了解更多這款USB視頻采集卡您可以登錄USB視頻采集卡專題:http://www.xiangb.com/usbcjk.htm
評論comment