最近有点忙,所以计划有所耽搁
在IPC设备开启onvif协议之后,我们需要调用webservice接口去获取设备信息和主次码流地址来进行转码推流操作
首先下载onvif协议wsdl文件去生成webservice代码框架
地址如下:
http://www.onvif.org/onvif/ver10/device/wsdl/devicemgmt.wsdl
http://www.onvif.org/onvif/ver10/event/wsdl/event.wsdl
http://www.onvif.org/onvif/ver10/media/wsdl/media.wsdl
http://www.onvif.org/onvif/ver10/recording.wsdl
http://www.onvif.org/onvif/ver10/display.wsdl
http://www.onvif.org/onvi f/ver10/receiver.wsdl
http://www.onvif.org/onvif/ver10/deviceio.wsdl
http://www.onvif.org/onvif/ver20/ptz/wsdl/ptz.wsdl
http://www.onvif.org/onvif/ver10/search.wsdl
http://www.onvif.org/onvif/ver10/schema/onvif.xsd
https://www.onvif.org/ver20/media/wsdl/media.wsdl
这里我们只需要media.wsdl
然后通过ip,账号/密码(指onvif协议用户列表的账号密码)调用接口获取主次码流地址:
OnvifClient onvifClient = new OnvifClient(ip, agreementName, agreementPassword);
MediaProxy mediaProxy = onvifClient.getMedia();
List<Profile> profiles = mediaProxy.GetProfiles();
mainMedia = mediaProxy.getRTSPStreamUri(profiles.get(0).getToken());
secondlyMedia = mediaProxy.getRTSPStreamUri(profiles.get(1).getToke