| | |
| | | ardChannelService.insertArdChannel(channel); |
| | | } |
| | | //配置到流媒体 |
| | | for (int i = 1; i < m_stDeviceInfo.byChanNum + 1; i++) { |
| | | addVtdu(camera); |
| | | //创建引导队列 |
| | | createGuideQueue(camera); |
| | | } |
| | | |
| | | //添加到流媒体 |
| | | private void addVtdu(ArdCameras camera) { |
| | | for (int i = 1; i < camera.getChanNum() + 1; i++) { |
| | | String name = camera.getId() + "_" + i; |
| | | String rtspSource = "rtsp://" + camera.getUsername() + ":" + camera.getPassword() + "@" + camera.getIp() + ":" + camera.getRtspPort() + "/cam/realmonitor?channel=" + i + "&subtype=0"; |
| | | Vtdu vtdu = vtduService.selectVtduByName(name); |
| | |
| | | vtdu.setCameraId(camera.getId()); |
| | | vtduService.insertVtdu(vtdu); |
| | | } |
| | | } |
| | | |
| | | //创建引导队列 |
| | | if (camera.getCamAlarmGuideEnable() == 1) { |
| | | if (!GuidePriorityQueue.cameraQueueMap.containsKey(camera.getId())) { |
| | | Comparator<GuideTask> comparator = GuidePriorityQueue.getComparator(); |
| | | PriorityBlockingQueue<GuideTask> priorityQueue = new PriorityBlockingQueue<>(1000, comparator); |
| | | GuidePriorityQueue.cameraQueueMap.put(camera.getId(), priorityQueue); |
| | | //创建引导队列 |
| | | private void createGuideQueue(ArdCameras camera) { |
| | | if (camera.getCamAlarmGuideEnable() != null) { |
| | | if (camera.getCamAlarmGuideEnable() == 1) { |
| | | if (!GuidePriorityQueue.cameraQueueMap.containsKey(camera.getId())) { |
| | | Comparator<GuideTask> comparator = GuidePriorityQueue.getComparator(); |
| | | PriorityBlockingQueue<GuideTask> priorityQueue = new PriorityBlockingQueue<>(1000, comparator); |
| | | GuidePriorityQueue.cameraQueueMap.put(camera.getId(), priorityQueue); |
| | | //启动队列处理器 |
| | | queueHandler.process(camera.getId()); |
| | | } |
| | | } |
| | | //启动队列处理器 |
| | | queueHandler.process(camera.getId()); |
| | | } |
| | | } |
| | | |