|
...
|
...
|
@@ -300,18 +300,21 @@ public class CameraRtspHandle implements CameraHandle { |
|
|
|
}
|
|
|
|
|
|
|
|
public static void main(String[] args) {
|
|
|
|
ConfigurationParameterService.initConfigurationParameter();
|
|
|
|
CameraRtspHandle cameraRtspHandle = new CameraRtspHandle();
|
|
|
|
if(cameraRtspHandle.isOpen())
|
|
|
|
{
|
|
|
|
CanvasFrame previewCanvas = new CanvasFrame("摄像头预览", CanvasFrame.getDefaultGamma() / cameraRtspHandle.grabber.getGamma());
|
|
|
|
previewCanvas.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
|
|
|
previewCanvas.setAlwaysOnTop(true);
|
|
|
|
while (true)
|
|
|
|
{
|
|
|
|
cameraRtspHandle.pushVideo(filteredFrame -> previewCanvas.showImage(filteredFrame));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
String ips = "192.168.2.2/254";
|
|
|
|
System.out.println(getIpFromParagraph(ips));
|
|
|
|
|
|
|
|
// ConfigurationParameterService.initConfigurationParameter();
|
|
|
|
// CameraRtspHandle cameraRtspHandle = new CameraRtspHandle();
|
|
|
|
// if(cameraRtspHandle.isOpen())
|
|
|
|
// {
|
|
|
|
// CanvasFrame previewCanvas = new CanvasFrame("摄像头预览", CanvasFrame.getDefaultGamma() / cameraRtspHandle.grabber.getGamma());
|
|
|
|
// previewCanvas.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
|
|
|
// previewCanvas.setAlwaysOnTop(true);
|
|
|
|
// while (true)
|
|
|
|
// {
|
|
|
|
// cameraRtspHandle.pushVideo(filteredFrame -> previewCanvas.showImage(filteredFrame));
|
|
|
|
// }
|
|
|
|
// }
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
...
|
...
|
@@ -348,6 +351,10 @@ public class CameraRtspHandle implements CameraHandle { |
|
|
|
{
|
|
|
|
return OperatingData.sysConfig.getCameraIp();
|
|
|
|
}
|
|
|
|
if(StringUtils.isNotEmpty(OperatingData.sysConfig.getParagraphIp()))
|
|
|
|
{
|
|
|
|
return getIpFromParagraph(OperatingData.sysConfig.getParagraphIp());
|
|
|
|
}
|
|
|
|
String localIP = getLocalIp();
|
|
|
|
logger.info("找到的主机ip:"+localIP);
|
|
|
|
if(null == localIP)
|
|
...
|
...
|
@@ -394,6 +401,38 @@ public class CameraRtspHandle implements CameraHandle { |
|
|
|
return null;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* 查找可以ip
|
|
|
|
* @param ips
|
|
|
|
*/
|
|
|
|
private static String getIpFromParagraph(String ips) {
|
|
|
|
try {
|
|
|
|
String[] ipstart = ips.split("\\.");
|
|
|
|
String[] endips = ipstart[3].split("/");
|
|
|
|
InetAddress startInetAddress = InetAddress.getByName(ipstart[0]+"."+ipstart[1]+"."+ipstart[2]+"."+endips[0]);
|
|
|
|
|
|
|
|
byte[] startBytes = startInetAddress.getAddress();
|
|
|
|
|
|
|
|
for (int i = Integer.parseInt(endips[0]); i <= Integer.parseInt(endips[1]); i++) {
|
|
|
|
byte[] scanBytes = new byte[]{startBytes[0], startBytes[1], startBytes[2], (byte) i};
|
|
|
|
String ipToScan = InetAddress.getByAddress(scanBytes).getHostAddress();
|
|
|
|
|
|
|
|
Process process = Runtime.getRuntime().exec("ping -n 1 -w 1 " + ipToScan);
|
|
|
|
int returnVal = process.waitFor();
|
|
|
|
|
|
|
|
if (returnVal == 0) {
|
|
|
|
System.out.println("Ping success: " + ipToScan);
|
|
|
|
return ipToScan;
|
|
|
|
} else {
|
|
|
|
System.out.println("Ping failed: " + ipToScan);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
} catch (Exception e) {
|
|
|
|
e.printStackTrace();
|
|
|
|
}
|
|
|
|
return null;
|
|
|
|
}
|
|
|
|
|
|
|
|
private static void findCamera(String ip)
|
|
|
|
{
|
|
|
|
try {
|
...
|
...
|
|