資源簡介
調用海康威視攝像頭的代碼,開發環境:win7+VS2013,里面還包含有海康威視錯誤代碼大全,出現錯誤可以查找
代碼片段和文件信息
#include?
#include?
#include?
#include?“Windows.h“
#include?“HCNetSDK.h“
#include?“plaympeg4.h“
#include?
#include?
using?namespace?std;
using?namespace?cv;
LONG?nPort?=?-1;
volatile?int?gbHandling?=?3;
//解碼回調?視頻為YUV數據(YV12),音頻為PCM數據
void?CALLBACK?DecCBFun(long?nPort?char?*?pBuf?long?nSize?frame_INFO?*?pframeInfo?long?nReserved1?long?nReserved2)
{
if?(gbHandling)
{
gbHandling--;
return;
}
long?lframeType?=?pframeInfo->nType;
if?(lframeType?==?T_YV12)
{
Mat?pImg(pframeInfo->nHeight?pframeInfo->nWidth?CV_8UC3);
Mat?src(pframeInfo->nHeight?+?pframeInfo->nHeight?/?2?pframeInfo->nWidth?CV_8UC1?pBuf);
cvtColor(src?pImg?CV_YUV2BGR_YV12);
imshow(“opencamera“?pImg);
waitKey(1);
}
gbHandling?=?3;
}
///實時流回調
void?CALLBACK?fRealDataCallBack(LONG?lRealHandle?DWORD?dwDataType?BYTE?*pBuffer?DWORD?dwBufSize?void?*pUser)
{
switch?(dwDataType)
{
case?NET_DVR_SYSHEAD:?//系統頭
if?(!PlayM4_GetPort(&nPort))??//獲取播放庫未使用的通道號
{
break;
}
//m_iPort?=?lPort;?//第一次回調的是系統頭,將獲取的播放庫port號賦值給全局port,下次回調數據時即使用此port號播放
if?(dwBufSize?>?0)
{
if?(!PlayM4_SetStreamOpenMode(nPort?STREAME_REALTIME))??//設置實時流播放模式
{
break;
}
if?(!PlayM4_OpenStream(nPort?pBuffer?dwBufSize?10?*?1024?*?1024))?//打開流接口
{
break;
}
if?(!PlayM4_Play(nPort?NULL))?//播放開始
{
break;
}
if?(!PlayM4_SetDecCallBack(nPort?DecCBFun))
{
break;
}
}
break;
case?NET_DVR_STREAMDATA:???//碼流數據
if?(dwBufSize?>?0?&&?nPort?!=?-1)
{
if?(!PlayM4_InputData(nPort?pBuffer?dwBufSize))
{
cout?<“error“?< break;
}
}
break;
default:?//其他數據
if?(dwBufSize?>?0?&&?nPort?!=?-1)
{
if?(!PlayM4_InputData(nPort?pBuffer?dwBufSize))
{
break;
}
}
break;
}
}
void?CALLBACK?g_ExceptionCallBack(DWORD?dwType?LONG?lUserID?LONG?lHandle?void?*pUser)
{
char?tempbuf[256]?=?{?0?};
switch?(dwType)
{
case?EXCEPTION_RECONNECT:????//預覽時重連
printf(“----------reconnect--------%d\n“?time(NULL));
break;
default:
break;
}
}
void?main()
{
//?初始化
NET_DVR_Init();
//設置連接時間與重連時間
NET_DVR_SetConnectTime(2000?1);
NET_DVR_SetReconnect(10000?true);
//?注冊設備
LONG?lUserID;
NET_DVR_DEVICEINFO_V30?struDeviceInfo;
lUserID?=?NET_DVR_Login_V30(“10.170.6.185“?8000?“admin“?“abc20170620“?&struDeviceInfo);
if?(lUserID?0)
{
printf(“Login?error?%d\n“?NET_DVR_GetLastError());
NET_DVR_Cleanup();
return;
}
//設置異常消息回調函數
NET_DVR_SetExceptionCallBack_V30(0?NULL?g_ExceptionCallBack?NULL);
//啟動預覽并設置回調數據流?
NET_DVR_CLIENTINFO?ClientInfo;
ClientInfo.lChannel?=?1;????????//Channel?number?設備通道號
ClientInfo.hPlayWnd?=?NULL;?????//窗口為空,設備SDK不解碼只取流
ClientInfo.llinkMode?=?0;???????//Main?Stream
ClientInfo.sMultiCastIP?=?NULL;
LONG?lRealPlayHandle;
lRealP
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件?????415744??2017-08-02?15:47??opencamera\Debug\AnalyzeData.dll
?????文件?????428544??2017-08-02?15:47??opencamera\Debug\AudioIntercom.dll
?????文件?????146432??2017-08-02?15:47??opencamera\Debug\AudioRender.dll
?????文件?????463872??2017-08-02?15:57??opencamera\Debug\HCAlarm.dll
?????文件????1144320??2017-08-02?15:55??opencamera\Debug\HCCore.dll
?????文件?????814592??2017-08-02?15:57??opencamera\Debug\HCCoreDevCfg.dll
?????文件?????612864??2017-08-02?15:58??opencamera\Debug\HCDisplay.dll
?????文件????1026560??2017-08-02?15:58??opencamera\Debug\HCGeneralCfgMgr.dll
?????文件?????750592??2017-08-02?15:58??opencamera\Debug\HCIndustry.dll
?????文件?????665600??2017-08-02?15:59??opencamera\Debug\HCNetSDK.dll
?????文件?????415744??2017-08-02?15:47??opencamera\Debug\HCNetSDKCom\AnalyzeData.dll
?????文件?????428544??2017-08-02?15:47??opencamera\Debug\HCNetSDKCom\AudioIntercom.dll
?????文件?????463872??2017-08-02?15:57??opencamera\Debug\HCNetSDKCom\HCAlarm.dll
?????文件??????13908??2017-08-02?15:57??opencamera\Debug\HCNetSDKCom\HCAlarm.lib
?????文件?????814592??2017-08-02?15:57??opencamera\Debug\HCNetSDKCom\HCCoreDevCfg.dll
?????文件?????612864??2017-08-02?15:58??opencamera\Debug\HCNetSDKCom\HCDisplay.dll
?????文件????1026560??2017-08-02?15:58??opencamera\Debug\HCNetSDKCom\HCGeneralCfgMgr.dll
?????文件??????48542??2017-08-02?15:58??opencamera\Debug\HCNetSDKCom\HCGeneralCfgMgr.lib
?????文件?????750592??2017-08-02?15:58??opencamera\Debug\HCNetSDKCom\HCIndustry.dll
?????文件?????418816??2017-08-02?15:58??opencamera\Debug\HCNetSDKCom\HCPlayBack.dll
?????文件?????617472??2017-08-02?15:58??opencamera\Debug\HCNetSDKCom\HCPreview.dll
?????文件??????37192??2017-08-02?15:57??opencamera\Debug\HCNetSDKCom\HCPreview.lib
?????文件?????600576??2017-08-02?15:57??opencamera\Debug\HCNetSDKCom\HCVoiceTalk.dll
?????文件?????978432??2017-08-02?15:47??opencamera\Debug\HCNetSDKCom\libiconv2.dll
?????文件?????655872??2017-08-02?15:47??opencamera\Debug\HCNetSDKCom\msvcr90.dll
?????文件?????427008??2017-08-02?15:47??opencamera\Debug\HCNetSDKCom\OpenAL32.dll
?????文件?????410112??2017-08-02?15:47??opencamera\Debug\HCNetSDKCom\StreamTransClient.dll
?????文件?????653312??2017-08-02?15:47??opencamera\Debug\HCNetSDKCom\SystemTransform.dll
?????文件?????418816??2017-08-02?15:58??opencamera\Debug\HCPlayBack.dll
?????文件?????617472??2017-08-02?15:58??opencamera\Debug\HCPreview.dll
............此處省略89個文件信息
- 上一篇:西安建筑矢量地圖
- 下一篇:系統級編程Lab全集.rar
評論
共有 條評論