Onvif协议球机连接相关实现

最近闲来无事,搞球机玩。了接了一下Onvif协议

java实现,使用的onvif-ws-client库实现的

枪机相关实现过程如下:

Onvif 请求流程
     设备搜索
     获取能力集
     查询获取指定profile
     获取RTSP url
     RTSP拉流推到媒体服务(这一步没有做,只做到获取RTSP流地址这一步)

具体代码如下:

1:已知不使用发现的方式

String user = "admin";
String password = "password";
OnvifDevice onvifDevice = new OnvifDevice("http://192.168.0.121:80/onvif/device_service", user, password);
Media media = onvifDevice.getMedia();
List<Profile> listProfile = media.getProfiles();
String token ="";
for(Profile profile : listProfile){
    token = profile.getToken();
    String rtsp = onvifDevice.getStreamUri();
    System.out.println("URI --------"+rtsp);
    System.out.println("URI ---"+token+"--------"+onvifDevice.getStreamUri(token));
    String rtspUri = "rtsp://"+user+":"+password+"@"+rtsp.replace("rtsp://","");
    System.out.println("rtspUri --------"+rtspUri);
}

2:修改上面的代码加上如下代码使用发现方式进行

Collection<URL> urls = OnvifDiscovery.discoverOnvifURLs();
        URL url = null;
        if(urls.size() == 1){
            url = urls.iterator().next();
        }

上面的请求地址换成url.toString()就可以了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值