hikvision.go 1.1 KB

12345678910111213141516171819202122232425262728293031323334
  1. package hikvision
  2. //
  3. ///*
  4. //#cgo CFLAGS: -I./include
  5. //#cgo LDFLAGS: -L./lib -lhcnetsdk
  6. //#include "HCNetSDK.h"
  7. //*/
  8. //import "C"
  9. //import (
  10. // "fmt"
  11. //)
  12. //
  13. //func login(deviceIP string, port int, username string, password string) (int, error) {
  14. // var deviceInfo C.NET_DVR_DEVICEINFO_V30
  15. // loginHandle := C.NET_DVR_Login_V30(C.CString(deviceIP), C.int(port), C.CString(username), C.CString(password), &deviceInfo)
  16. // if loginHandle < 0 {
  17. // return 0, fmt.Errorf("login failed, error code: %d", C.NET_DVR_GetLastError())
  18. // }
  19. // return int(loginHandle), nil
  20. //}
  21. //func realPlay(loginHandle int, windowHandle uintptr) (int, error) {
  22. // var previewInfo C.NET_DVR_PREVIEWINFO
  23. // previewInfo.lChannel = 1 // 默认通道1
  24. // previewInfo.dwStreamType = 0 // 主码流
  25. // previewInfo.dwLinkMode = 0 // TCP方式
  26. // previewInfo.hPlayWnd = C.HWND(windowHandle)
  27. // realPlayHandle := C.NET_DVR_RealPlay_V30(C.LONG(loginHandle), &previewInfo, nil, nil)
  28. // if realPlayHandle < 0 {
  29. // return 0, fmt.Errorf("real play failed, error code: %d", C.NET_DVR_GetLastError())
  30. // }
  31. //
  32. // return int(realPlayHandle), nil
  33. //}