6
I’m having a question, I’ve searched the internet but I can’t find anything consistent: how to connect with a DVR camera (not IP camera) using Java?
I already use Opencv and can connect on IP camera. It would be possible to connect Opencv with DVR?
Below is a code that I found in Stackoverflow in English and adapted. However, the line while((bytesRead = s_in.read()) > 0)
does not print any response. Thus, I cannot render any image on the screen.
public class ConectaDVR {
Socket s = new Socket();
public void conecta() throws Exception {
Authenticator.setDefault(new Authenticator() {
protected PasswordAuthentication getPasswordAuthentication() {
System.out.println("Authenticatting...");
PasswordAuthentication p = new PasswordAuthentication("admin", "123456".toCharArray());
return p;
}
});
String host = "187.45.142.191"; //192.168.80.107
PrintWriter s_out = null;
BufferedReader s_in = null;
try {
s.connect(new InetSocketAddress(host, 9000));
System.out.println("Is connected? : " + s.isConnected());
s_out = new PrintWriter(s.getOutputStream(), true);
s_in = new BufferedReader(new InputStreamReader(s.getInputStream()));
} catch (UnknownHostException e) {
e.printStackTrace();
System.exit(1);
} catch (Exception e) {
e.printStackTrace();
System.exit(1);
}
int bytesRead = 0;
System.out.println("Reading... \n");
System.out.println();
while ((bytesRead = s_in.read()) > 0) {
System.out.println(s_in.readLine());
}
System.out.println("Done");
}
public BufferedImage getBufferedImage() {
BufferedImage bufImage = null;
try {
InputStream in = new ByteArrayInputStream(IOUtils.toByteArray(s.getInputStream()));
bufImage = ImageIO.read(in);
} catch (Exception ext) {
ext.printStackTrace();;
}
BufferedImage bi = bufImage;
ImageIcon ii = null;
ii = new ImageIcon(bi);
Image newimg = bi.getScaledInstance(320, 220, java.awt.Image.SCALE_SMOOTH);
ii = new ImageIcon(newimg);
Image i2 = ii.getImage();
bufImage = new BufferedImage(i2.getWidth(null), i2.getHeight(null), BufferedImage.SCALE_SMOOTH);
bufImage.getGraphics().drawImage(i2, 0, 0, null);
return bufImage;
}
}
You might want to provide technical input on the problem and share your research results. Otherwise, your chances of getting an answer here on the site will be limited to people who have done exactly the procedure you are looking for, that is, very limited chances of getting an answer. Enjoy and make a [tour] and check out the guide [Ask].
– Math
You have made progress in solving your problem?
– Paulo Rodrigues
Could you tell me the model of the camera? You can connect it with telnet?
– Leonardo Costa
The question is kind of old, but as it came up, it would be nice to define what it is you call "DVR Camera". DVR is usually the Digital Video Recorder, the recording device, not the camera itself. Which, by the way, are usually analog, as opposed to the IP cameras used in the NVR. There may still be an interesting answer if you have more details.
– Bacco