Panduan pembangunan menengah Java Hikvision SDK yang ringkas dan mudah difahami
Pengenalan:
Dengan perkembangan teknologi pengawasan kamera , Hikvision telah menjadi salah satu penyedia penyelesaian keselamatan terkemuka di dunia SDK (kit pembangunan perisian) yang disediakannya menyediakan pembangun dengan fungsi dan antara muka yang kaya untuk pembangunan sekunder dan pembangunan tersuai.
Artikel ini akan memperkenalkan cara menggunakan bahasa Java untuk pembangunan sekunder Hikvision SDK, dan menyediakan beberapa contoh kod untuk membantu pembaca memahami dan menerapkan dengan lebih baik.
1. Persediaan persekitaran
Pertama sekali, sebelum menjalankan pembangunan sekunder Hikvision SDK, kita perlu menyediakan persekitaran berikut:
2. Buat projek Java
Seterusnya, kami akan mencipta projek Java untuk menulis kod pembangunan sekunder Hikvision SDK:
import com.sun.jna.Native; import com.sun.jna.ptr.IntByReference; import com.hikvision.netsdk.HCNetSDK; import com.hikvision.netsdk.NET_DVR_DEVICEINFO_V30; import com.hikvision.netsdk.NET_DVR_IPPARACFG_V40; import com.hikvision.netsdk.NET_DVR_PREVIEWINFO; import com.hikvision.netsdk.NET_DVR_USER_LOGIN_INFO; import com.hikvision.netsdk.NET_DVR_VIDEOEFFECT; import com.hikvision.netsdk.RealPlayCallBack; public class VideoMonitor { public static void main(String[] args) { // 初始化SDK HCNetSDK.INSTANCE.NET_DVR_Init(); // 登录设备 NET_DVR_USER_LOGIN_INFO loginInfo = new NET_DVR_USER_LOGIN_INFO(); loginInfo.sDeviceAddress = "192.168.1.100"; loginInfo.wPort = 8000; loginInfo.sUserName = "admin"; loginInfo.sPassword = "123456"; loginInfo.write(); IntByReference userID = new IntByReference(-1); NET_DVR_DEVICEINFO_V30 deviceInfo = new NET_DVR_DEVICEINFO_V30(); userID.setValue(HCNetSDK.INSTANCE.NET_DVR_Login_V30(loginInfo.getPointer(), deviceInfo.getPointer())); if (userID.getValue() < 0) { System.out.println("登录设备失败"); return; } // 设置视频预览参数 NET_DVR_PREVIEWINFO previewInfo = new NET_DVR_PREVIEWINFO(); previewInfo.lChannel = 1; previewInfo.dwStreamType = 0; previewInfo.dwLinkMode = 0; previewInfo.hPlayWnd = null; previewInfo.bBlocked = true; previewInfo.write(); // 开始预览 RealPlayCallBack fRealDataCallBack = (iRealHandle, iDataType, pDataBuffer, iDataSize) -> { // 处理实时视频数据 }; NativeLong handle = HCNetSDK.INSTANCE.NET_DVR_RealPlay_V40(userID.getValue(), previewInfo.getPointer(), fRealDataCallBack, null); if (handle.intValue() < 0) { System.out.println("预览失败"); HCNetSDK.INSTANCE.NET_DVR_Logout(userID.getValue()); HCNetSDK.INSTANCE.NET_DVR_Cleanup(); return; } // 其他操作... // 关闭预览 if (!HCNetSDK.INSTANCE.NET_DVR_StopRealPlay(handle)) { System.out.println("停止预览失败"); } // 注销登录 HCNetSDK.INSTANCE.NET_DVR_Logout(userID.getValue()); // 释放SDK资源 HCNetSDK.INSTANCE.NET_DVR_Cleanup(); } }
5 Jalankan program
Setelah selesai menulis kod, anda boleh menjalankan program dan melihat hasilnya. Jika semuanya berjalan lancar, anda sepatutnya dapat melaksanakan fungsi berkaitan pengawasan video.
Kesimpulan:
Rujukan:
Atas ialah kandungan terperinci Panduan pembangunan menengah Java Hikvision SDK yang ringkas dan mudah difahami. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!