gpt4 book ai didi

java - 如何建立与DVR的连接并解码数据?

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:04:38 25 4
gpt4 key购买 nike

我的系统包括一个数字录像机(dvr)和两个与dvr连接的摄像机。 dvr也可以用作服务器(连接到LAN)。系统中包含一个android应用程序,其中放置了有关服务器,端口,用户名和密码的信息(我可以使用服务器软件添加帐户)。该应用程序从摄像机流式传输视频。我也可以通过http(仅IE)与dvr连接,然后显示activeX应用程序。

我要做的是编写类似的应用程序,但是我遇到了一个问题-如何从dvr中获取视频流?我不是Java方面的专家,因此尝试与dvr连接失败。

这是我的代码:

import java.net.*;
import java.io.*;

public class VideoStream
{

final static int BUFFER_SIZE = 1024000;
public static void main(String[] args) throws Exception
{
Authenticator.setDefault(new Authenticator()
{
protected PasswordAuthentication getPasswordAuthentication()
{
System.out.println("Authenticatting...");
PasswordAuthentication p=new PasswordAuthentication("login", "password".toCharArray());
return p;
}
});
Socket s = new Socket();
String host = "192.168.80.107"; //192.168.80.107
PrintWriter s_out = null;
BufferedReader s_in = null;
BufferedInputStream bufferedInputStream = null;

try
{
s.connect(new InetSocketAddress(host, 34599));
System.out.println("Is connected? : " + s.isConnected());

s_out = new PrintWriter(s.getOutputStream(), true);
s_in = new BufferedReader(new InputStreamReader(s.getInputStream()));
//bufferedInputStream = new BufferedInputStream(s.getInputStream());
}
catch(UnknownHostException e)
{
e.printStackTrace();
System.exit(1);
}
catch(Exception e)
{
e.printStackTrace();
System.exit(1);
}

byte[] b = new byte[BUFFER_SIZE];
//bufferedInputStream.read(b);

int bytesRead = 0;
System.out.println("Reading... \n");
while((bytesRead = s_in.read()) > 0)
{
System.out.println(s_in.readLine());
}
System.out.println("Done");
}

我尝试了其他端口(TCP和包含的android应用)。套接字与服务器连接,但是当我尝试使用read()方法(甚至超出while循环)时,套接字“挂起”。身份验证器也不起作用。

有关dvr的一些信息:
  • 协议支持:TCP / IP,UDP,SMTP,NTP,DHCP,DDNS
  • 视频压缩:H.264
  • 操作系统:linux

  • 我将不胜感激任何建议。

    最佳答案

    正如其他人在评论中指出的那样,建议是了解现有Android应用程序的工作方式。

    可能值得尝试检查与Android客户端和DVR之间的通信有关的数据包和回复(用Shark for Droid这样的嗅探器捕获)。

    关于java - 如何建立与DVR的连接并解码数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13037422/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com