Open sanglt opened 3 years ago
This is difficult to diagnose, you have a working connection, that logs in, requests video, starts getting media stream then... drops the connection???? Ideally I'd need a wireshark dump, are you able to help with some more in depth debugging?
@QuantumEntangledAndy Sure I'm happy to help.
This is the command I used: sudo tcpdump -i ens33 udp and host 192.168.10.144 -XAvvv -w camera.tcpdump
I stop the tcpdump after 2 error happen.
Thanks I may need to make a debug build for this because argus pro 2 uses aes encryption that makes tcpdumps a little hard to read. I will have a go later and get back to you.
I have a build that can configure the encryption level here could you please get another tcpdump using this and the following config
bind = "0.0.0.0"
[[cameras]]
name = "outdoor"
username = "admin"
password = "XXXXX"
uid = "9527XXXXXS74A"
stream = "mainStream"
encryption = 1
fyi:
encryption = 0
is no encryptionencryption = 1
is xor byte scramble that is trivally decryptable in wiresharkencryption = 2
is aes (default)p.s. you may have to wait for the build to finish building before you can use it maybe 20-40 mins
Thanks for your quick action. Here is the output of sudo tcpdump -i ens33 udp and host 192.168.10.144 -XAvvv -w camera-8c9b724.tcpdump
The version I used:
neolink --version
[2021-11-01T04:12:08Z INFO neolink] Neolink 8c9b724268b4d57a9e419ac848e0d604d7893ee2 release
So looking through this I can see that most of the stream looks good. The only odd thing I have found so far is that msgcode 243
is replying with a status code of 405 Method Not Allowed
.
We are not 100% sure what 234 is doing, it is something that was obsevered with the Lumus-ECO camera and it was presummed to be a udp keep alive as it dosen't seem to do anything else.
Might I ask if you logged in with an admin or non admin username to the camera? If it is a non admin it might explain the 405. If possible could you test with a admin account and tell me if it behaves any better (no need for a dump I think)
The Battery model can only have single admin user. It's not possible to add other user. Current setting use admin
creds.
What I can do is: I can use Reolink PC app and take another tcpdump if you need.
Thanks
This is the tcpdump from my laptop using Reolink PC client application for doing live view of camera:
I see I will look at the pc dump but those are encrypted with AES again (if you are using a client from this year) so I cannot look into them in detail
So your offical client dosen't seem to send keep alive at all. This is unexpected because certainly on the eco I worked on, if there was no message from the client within a few seconds then the camera would drop the connection.
I feel like this will be one of those issues where I cannot properly debug without access to the camera. Sorry about that :(
I'm happy to help if need. Which mean I can setup VPN access for you.
Also, I found an old version v3.5.6.55 release from 2019. Here the tcpdump trace:
Oh this dump is helpful for another reason too. Because it contains the details of how to check things like FloodLight status which was requested to another issue, so thanks for that :)
I've got to get back to work but I will see if I can work out more later
I noticed that the last message from the camera that the neolink received succefully had many keep alive replies in it. I also noticed some trouble with having too many keep alives too quickly while working on another part of the camera.
If you get the time could you try this other branches build. It was something else that I was working on for pausable streams but it also includes some rate limiting to the keep alive that might be relevent.
Hi @QuantumEntangledAndy
Thanks for your help. This is the first thing I do when I got home. The error still persists. Here is the dump and debug log:
[2021-11-02T09:05:46Z INFO neolink::rtsp] outdoor: Camera reports firmware version v3.0.0.307_21051100
[2021-11-02T09:05:46Z INFO neolink::rtsp] outdoor: Starting video stream Main Stream (Clear)
[2021-11-02T09:05:46Z DEBUG neolink_core::bc::xml] Struct: start to parse "body"
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(body, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(VideoInput, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}, [version -> 1.1])
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(channelId, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched Characters(0)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(channelId)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(bright, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched Characters(128)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(bright)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(contrast, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched Characters(128)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(contrast)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(saturation, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched Characters(128)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(saturation)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(hue, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched Characters(128)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(hue)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(VideoInput)
[2021-11-02T09:05:46Z DEBUG neolink_core::bc_protocol::connection::bcconn] Ignoring uninteresting message ID 78
[2021-11-02T09:05:46Z DEBUG neolink_core::bc::xml] Struct: start to parse "body"
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(body, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(Serial, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}, [version -> 1.1])
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(channelId, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched Characters(0)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(channelId)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(baudRate, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched Characters(9600)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(baudRate)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(dataBit, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched Characters(CS8)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(dataBit)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(stopBit, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched Characters(1)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(stopBit)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(parity, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched Characters(none)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(parity)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(flowControl, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched Characters(none)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(flowControl)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(controlProtocol, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched Characters(PELCO_D)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(controlProtocol)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(controlAddress, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched Characters(1)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(controlAddress)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(Serial)
[2021-11-02T09:05:46Z DEBUG neolink_core::bc_protocol::connection::bcconn] Ignoring uninteresting message ID 79
[2021-11-02T09:05:46Z DEBUG neolink_core::bc::xml] Struct: start to parse "body"
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(body, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(FloodlightStatusList, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}, [version -> 1.1])
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(FloodlightStatus, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(channel, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched Characters(0)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(channel)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(status, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched Characters(0)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(status)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(FloodlightStatus)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(FloodlightStatusList)
[2021-11-02T09:05:46Z DEBUG neolink_core::bc_protocol::connection::bcconn] Ignoring uninteresting message ID 291
[2021-11-02T09:05:46Z DEBUG neolink_core::bc::xml] Struct: start to parse "body"
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(body, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(BatteryList, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}, [version -> 1.1])
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(BatteryInfo, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(channelId, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched Characters(0)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(channelId)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(chargeStatus, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched Characters(none)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(chargeStatus)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(adapterStatus, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched Characters(solarPanel)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(adapterStatus)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(voltage, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched Characters(3809)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(voltage)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(current, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched Characters(-686)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(current)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(temperature, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched Characters(21)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(temperature)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(batteryPercent, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched Characters(84)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(batteryPercent)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(lowPower, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched Characters(0)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(lowPower)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(batteryVersion, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched Characters(2)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(batteryVersion)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(BatteryInfo)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(BatteryList)
[2021-11-02T09:05:46Z DEBUG neolink_core::bc_protocol::connection::bcconn] Ignoring uninteresting message ID 252
[2021-11-02T09:05:46Z DEBUG neolink_core::bc::xml] Struct: start to parse "Extension"
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(Extension, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}, [version -> 1.1])
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(binaryData, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched Characters(1)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(binaryData)
[2021-11-02T09:05:46Z DEBUG neolink_core::bc::xml] Struct: start to parse "body"
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(body, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
[2021-11-02T09:05:46Z DEBUG neolink_core::bc::xml] Struct: start to parse "AlarmEventList"
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(AlarmEventList, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}, [version -> 1.1])
[2021-11-02T09:05:46Z DEBUG neolink_core::bc::xml] Struct: start to parse "AlarmEvent"
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(AlarmEvent, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}, [version -> 1.1])
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(channelId, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched Characters(0)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(channelId)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(status, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched Characters(none)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(status)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(AItype, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched Characters(none)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(AItype)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(recording, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched Characters(0)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(recording)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(timeStamp, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched Characters(0)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(timeStamp)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(AlarmEvent)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(AlarmEventList)
[2021-11-02T09:05:46Z DEBUG neolink_core::bc_protocol::connection::bcconn] Ignoring uninteresting message ID 33
[2021-11-02T09:05:46Z DEBUG neolink_core::bc::xml] Struct: start to parse "body"
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(body, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
[2021-11-02T09:05:46Z DEBUG neolink_core::bc::xml] Struct: start to parse "AlarmEventList"
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(AlarmEventList, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}, [version -> 1.1])
[2021-11-02T09:05:46Z DEBUG neolink_core::bc::xml] Struct: start to parse "AlarmEvent"
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(AlarmEvent, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}, [version -> 1.1])
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(channelId, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched Characters(0)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(channelId)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(status, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched Characters(none)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(status)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(AItype, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched Characters(none)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(AItype)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(recording, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched Characters(0)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(recording)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(timeStamp, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched Characters(0)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(timeStamp)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(AlarmEvent)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(AlarmEventList)
[2021-11-02T09:05:46Z DEBUG neolink_core::bc_protocol::connection::bcconn] Ignoring uninteresting message ID 33
[2021-11-02T09:05:46Z DEBUG neolink_core::bc::xml] Struct: start to parse "body"
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(body, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
[2021-11-02T09:05:46Z DEBUG neolink_core::bc::xml] Struct: start to parse "AlarmEventList"
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(AlarmEventList, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}, [version -> 1.1])
[2021-11-02T09:05:46Z DEBUG neolink_core::bc::xml] Struct: start to parse "AlarmEvent"
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(AlarmEvent, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}, [version -> 1.1])
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(channelId, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched Characters(0)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(channelId)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(status, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched Characters(none)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(status)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(AItype, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched Characters(none)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(AItype)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(recording, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched Characters(0)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(recording)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(timeStamp, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched Characters(0)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(timeStamp)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(AlarmEvent)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(AlarmEventList)
[2021-11-02T09:05:46Z DEBUG neolink_core::bc_protocol::connection::bcconn] Ignoring uninteresting message ID 33
[2021-11-02T09:05:46Z DEBUG neolink_core::bc::xml] Struct: start to parse "body"
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(body, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
[2021-11-02T09:05:46Z DEBUG neolink_core::bc::xml] Struct: start to parse "AlarmEventList"
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(AlarmEventList, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}, [version -> 1.1])
[2021-11-02T09:05:46Z DEBUG neolink_core::bc::xml] Struct: start to parse "AlarmEvent"
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(AlarmEvent, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}, [version -> 1.1])
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(channelId, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched Characters(0)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(channelId)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(status, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched Characters(none)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(status)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(AItype, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched Characters(none)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(AItype)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(recording, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched Characters(0)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(recording)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched StartElement(timeStamp, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched Characters(0)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(timeStamp)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(AlarmEvent)
[2021-11-02T09:05:46Z DEBUG yaserde::de] Fetched EndElement(AlarmEventList)
[2021-11-02T09:05:46Z DEBUG neolink_core::bc_protocol::connection::bcconn] Ignoring uninteresting message ID 33
[2021-11-02T09:05:47Z DEBUG neolink::rtsp::gst] Gstreamer launch str: "( ( input-selector name=vid_inputselect ! rtph265pay name=pay0 ) ( appsrc name=vidsrc is-live=true block=true emit-signals=false max-bytes=52428800 do-timestamp=true format=GST_FORMAT_TIME ! queue silent=true max-size-bytes=10485760 min-threshold-bytes=1024 ! h265parse ! tee name=vid_src_tee ( vid_src_tee. ! queue silent=true max-size-bytes=10485760 min-threshold-bytes=1024 ! vid_inputselect.sink_0 ) ) ( ! queue silent=true max-size-bytes=10485760 min-threshold-bytes=1024 ! vid_inputselect.sink_1 ) ( input-selector name=aud_inputselect ! fakesink ) ( appsrc name=audsrc is-live=true block=true emit-signals=false max-bytes=52428800 do-timestamp=true format=GST_FORMAT_TIME ! queue silent=true max-size-bytes=10485760 min-threshold-bytes=1024 ! aud_inputselect.sink_0 ) ( audiotestsrc wave=silence ! queue silent=true max-size-bytes=10485760 min-threshold-bytes=1024 ! aud_inputselect.sink_1 ) )"
[2021-11-02T09:05:47Z DEBUG neolink::rtsp::gst] Gstreamer launch str: "( ( input-selector name=vid_inputselect ! rtph265pay name=pay0 ) ( appsrc name=vidsrc is-live=true block=true emit-signals=false max-bytes=52428800 do-timestamp=true format=GST_FORMAT_TIME ! queue silent=true max-size-bytes=10485760 min-threshold-bytes=1024 ! h265parse ! tee name=vid_src_tee ( vid_src_tee. ! queue silent=true max-size-bytes=10485760 min-threshold-bytes=1024 ! vid_inputselect.sink_0 ) ) ( ! queue silent=true max-size-bytes=10485760 min-threshold-bytes=1024 ! vid_inputselect.sink_1 ) ( input-selector name=aud_inputselect ! audioconvert ! rtpL16pay name=pay1 ) ( appsrc name=audsrc is-live=true block=true emit-signals=false max-bytes=52428800 do-timestamp=true format=GST_FORMAT_TIME ! queue silent=true max-size-bytes=10485760 min-threshold-bytes=1024 ! aacparse ! decodebin ! queue silent=true max-size-bytes=10485760 min-threshold-bytes=1024 ! aud_inputselect.sink_0 ) ( audiotestsrc wave=silence ! queue silent=true max-size-bytes=10485760 min-threshold-bytes=1024 ! aud_inputselect.sink_1 ) )"
[2021-11-02T09:05:49Z DEBUG neolink_core::bc_protocol] Dropping camera
[2021-11-02T09:05:49Z DEBUG neolink_core::bc_protocol::connection::bcconn] Shutting down BcConnection...
[2021-11-02T09:05:49Z DEBUG neolink_core::bc_protocol::connection::bcconn] Ignoring uninteresting message ID 3
[2021-11-02T09:05:49Z DEBUG neolink_core::bc_protocol::connection::bcconn] Shutdown finished OK
[2021-11-02T09:05:49Z ERROR neolink::rtsp] Error streaming from camera outdoor, will retry in 1s: Error while streaming outdoor
Caused by:
0: Media Deserialization error
1: Parsing error
[2021-11-02T09:05:49Z ERROR neolink_core::bc_protocol::connection::udpconn] Udp read poll aborted
[2021-11-02T09:05:49Z ERROR neolink_core::bc_protocol::connection::udpconn] Udp write poll aborted
Still not working :(. Next I think I'll try feeding your bytes from the dump through the program manually and see if I can replicate it that way.
@QuantumEntangledAndy: I am experiencing the same error for my Argus 2 cameras.
Nov 10 17:07:52 neolink neolink[5483]: [2021-11-10T16:07:52Z ERROR neolink_core::bc_protocol::connection::udpconn] Udp read poll aborted
Nov 10 17:07:52 neolink neolink[5483]: [2021-11-10T16:07:52Z ERROR neolink::rtsp] Error streaming from camera test3, will retry in 1s: Error while streaming test3
Nov 10 17:07:52 neolink neolink[5483]:
Nov 10 17:07:52 neolink neolink[5483]: Caused by:
Nov 10 17:07:52 neolink neolink[5483]: 0: Media Deserialization error
Nov 10 17:07:52 neolink neolink[5483]: 1: Parsing error
Nov 10 17:07:52 neolink neolink[5483]: [2021-11-10T16:07:52Z ERROR neolink_core::bc_protocol::connection::udpconn] Udp write poll aborted
Nov 10 17:07:53 neolink neolink[5483]: [2021-11-10T16:07:53Z INFO neolink::rtsp] test3: Connecting to camera at UID: 95270000xxxxxx
Nov 10 17:07:53 neolink neolink[5483]: [2021-11-10T16:07:53Z INFO neolink::rtsp] test3: Logging in
Nov 10 17:07:53 neolink neolink[5483]: [2021-11-10T16:07:53Z INFO neolink::rtsp] test3: Connected and logged in
Nov 10 17:07:54 neolink neolink[5483]: [2021-11-10T16:07:54Z INFO neolink::rtsp] test3: Camera time is already set: 2021-11-10 17:07:48 +1
Nov 10 17:07:54 neolink neolink[5483]: [2021-11-10T16:07:54Z INFO neolink::rtsp] test3: Camera reports firmware version 0620_361_316_25
Nov 10 17:07:54 neolink neolink[5483]: [2021-11-10T16:07:54Z INFO neolink::rtsp] test3: Starting video stream Main Stream (Clear)
It appears to be totally random and can sometimes recover from error (see log). Let me know if you need more verbose log or a tcpdump.
So I found some time to pass your bytes and I think I've found it. I am currently discussing it in #237.
Your packets revealed a new facet of the protocol. It might come with the recent firmware or be unique to these cameras as I've never seen this with any of my cameras.
I'll have to write up additions to the protocol and then ask for more tests.
I have a build here that might fix this, could you test for me
I am not sure if you are still having issues or not, but in case you are we have had progress with the error in #226 and have an updated build that should get it working here. Alternatively you can use our docker build
docker pull quantumentangledandy/neolink:argus2_media
Thanks @QuantumEntangledAndy
I tried that last build and still got an error. Sorry, I'm a bit busy at this time of the year.
Today I tried again with your new build and it's working perfectly.
Thanks for your hard work.
Just wanted to say I was having the same problem as described. Now I’ve been running that test docker image for 4 days without any errors.
@GimpArm thanks for the update another week and I should be able to write up the PR. Day jobs are every good at getting in the way of fun programming sometimes haha.
Hi all, I'm also having trouble with the Argus 3 Pro.
I am getting the following in the command prompt window.
[2021-12-14T01:25:36Z ERROR neolink::rtsp] Error streaming from camera ChickenCam4, will retry in 1s: Error while streaming ChickenCam4
Caused by:
0: Media Deserialization error
1: Parsing error
[2021-12-14T01:25:36Z ERROR neolink_core::bc_protocol::connection::udpconn] Udp read poll aborted [2021-12-14T01:25:36Z ERROR neolink_core::bc_protocol::connection::udpconn] Udp write poll aborted
I have tried the different builds listed above (running windows), and the same issue appears to occur.
If I wait long enough the camera seems to connect but seems to take a long time and then randomly disconnects.
Any help would be greatly appreciated.
@Cloverdex If you are sure that you are using latest builds above and it still dosen't work you will need to send me a wireshark doump so that I can analyse it.
Hi @QuantumEntangledAndy, I have tried the windows build from here: https://github.com/thirtythreeforty/neolink/actions/runs/1570347760 and the one from here that is further up in this post: https://github.com/QuantumEntangledAndy/neolink/actions/runs/1534694282
Both seem to result in the deserialisation / UDP read/write errors, though the second link fails "less".
I will try and get a wireshark dump from you, though I have never used it before so I'm not sure I know what I'm doing!
Thanks!
You say that on the last build it fails "less". Could you please check if the error message has changed for that build or not?
@QuantumEntangledAndy So with the build from here: https://github.com/thirtythreeforty/neolink/actions/runs/1570347760 The following errors occur (and they are more extensive):
[2021-12-14T02:56:45Z INFO neolink_core::bc_protocol::connection::udpconn::discover] Trying remote discovery against reolink servers
thread '<unnamed>' panicked at 'There to be a local ip: PlatformNotSupported("windows")', crates\core\src\bc_protocol\connection\udpconn\discover.rs:304:48
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
thread '<unnamed>' panicked at 'There to be a local ip: PlatformNotSupported("windows")', crates\core\src\bc_protocol\connection\udpconn\discover.rs:304:48
[2021-12-14T02:56:46Z ERROR neolink::rtsp] Error streaming from camera ChickenCam4, will retry in 1s: Error while streaming ChickenCam4
Caused by:
0: Media Deserialization error
1: Parsing error
[2021-12-14T02:56:46Z ERROR neolink_core::bc_protocol::connection::udpconn] Udp read poll aborted
[2021-12-14T02:56:46Z ERROR neolink_core::bc_protocol::connection::udpconn] Udp write poll aborted
[2021-12-14T02:56:47Z ERROR neolink::rtsp] Error streaming from camera ChickenCam4, will retry in 1s: Error while streaming ChickenCam4
Caused by:
0: Media Deserialization error
1: Parsing error
[2021-12-14T02:56:47Z ERROR neolink_core::bc_protocol::connection::udpconn] Udp read poll aborted
[2021-12-14T02:56:47Z INFO neolink::rtsp] ChickenCam4: Connecting to camera at UID: 95270002TQ5M1CDU
[2021-12-14T02:56:47Z INFO neolink::rtsp] ChickenCam4: Logging in
[2021-12-14T02:56:47Z ERROR neolink_core::bc_protocol::connection::udpconn] Udp write poll aborted
[2021-12-14T02:56:48Z INFO neolink::rtsp] ChickenCam4: Connected and logged in
[2021-12-14T02:56:48Z INFO neolink::rtsp] ChickenCam4: Starting video stream Sub Stream (Fluent)
[2021-12-14T02:56:48Z ERROR neolink::rtsp] Error streaming from camera ChickenCam4, will retry in 1s: Error while streaming ChickenCam4
Caused by:
0: Media Deserialization error
1: Parsing error
[2021-12-14T02:56:48Z ERROR neolink_core::bc_protocol::connection::udpconn] Udp read poll aborted
[2021-12-14T02:56:48Z ERROR neolink_core::bc_protocol::connection::udpconn] Udp write poll aborted
A few more from later on...
[2021-12-14T03:04:28Z ERROR neolink_core::bc_protocol::connection::bcconn] caused by: I/O error
[2021-12-14T03:04:28Z ERROR neolink_core::bc_protocol::connection::bcconn] caused by: I/O error
[2021-12-14T03:04:28Z ERROR neolink_core::bc_protocol::connection::bcconn] caused by: Connection timedout when reading from udp channel
[2021-12-14T03:04:28Z ERROR neolink_core::bc_protocol::connection::bcconn] caused by: Connection timedout when reading from udp channel
[2021-12-14T03:04:28Z ERROR neolink_core::bc_protocol::connection::udpconn] Udp read poll aborted
[2021-12-14T03:04:28Z ERROR neolink_core::bc_protocol::connection::udpconn] Udp read poll aborted
[2021-12-14T03:04:28Z ERROR neolink_core::bc_protocol::connection::udpconn] Udp write poll aborted
[2021-12-14T03:04:28Z ERROR neolink_core::bc_protocol::connection::udpconn] Udp write poll aborted
[2021-12-14T03:04:33Z WARN neolink_core::bc_protocol] Could not log out, ignoring: Connection error
[2021-12-14T03:04:33Z ERROR neolink::rtsp] Error streaming from camera ChickenCam4, will retry in 1s: Failed to manage the camera settings
Caused by:
Timeout
[2021-12-14T03:04:33Z ERROR neolink::rtsp] Error streaming from camera ChickenCam4, will retry in 2s: Failed to login to ChickenCam4
This build seems to take ages for the cameras to pop up in Blue Iris, and when they do they drop out quite quickly.
With the build from here: https://github.com/thirtythreeforty/neolink/actions/runs/1570347760 all the cameras pop up (still quite slowly), but my E1's don't seem to drop out at all, and the Argus 2 and 3 Pro seem to drop out at random with the error messages posted above.
Hope that's not clear as mud!
You unfortunatly missed the error message I wanted. I want to know what 1570347760
says, is it still Media Deserialization error
or is there something else?
What I suspect is that 1570347760
has fixed your Media Deserialization error
and you have another error now on top perhaps related to udp since the E1 works.
Please provide this info and dump when you can and I'll try looking into it
@QuantumEntangledAndy my apologies. For 1570347760, the error is just focused on Media Deserialization error. I don't see anything else of note in the log but I have pasted below an extended amount snippet from what I did earlier on.
[2021-12-14T03:57:34Z INFO neolink_core::bc_protocol::connection::udpconn::discover] Trying remote discovery against reolink servers
[2021-12-14T03:57:34Z INFO neolink_core::bc_protocol::connection::udpconn::discover] Trying remote discovery against reolink servers
thread '<unnamed>thread '' panicked at '<unnamed>There to be a local ip: PlatformNotSupported("windows")' panicked at '', There to be a local ip: PlatformNotSupported("windows")crates\core\src\bc_protocol\connection\udpconn\discover.rs', :crates\core\src\bc_protocol\connection\udpconn\discover.rs304::30448:
48note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
[2021-12-14T03:57:58Z ERROR neolink::rtsp] Error streaming from camera ChickenCam4, will retry in 1s: Error while streaming ChickenCam4
Caused by:
0: Media Deserialization error
1: Parsing error
[2021-12-14T03:57:58Z ERROR neolink_core::bc_protocol::connection::udpconn] Udp read poll aborted
[2021-12-14T03:57:58Z ERROR neolink_core::bc_protocol::connection::udpconn] Udp write poll aborted
[2021-12-14T03:57:59Z INFO neolink::rtsp] ChickenCam4: Connecting to camera at UID: 95270002TQ5M1CDU
[2021-12-14T03:57:59Z INFO neolink::rtsp] ChickenCam4: Logging in
[2021-12-14T03:58:00Z INFO neolink::rtsp] ChickenCam4: Connected and logged in
[2021-12-14T03:58:00Z INFO neolink::rtsp] ChickenCam4: Camera time is already set: 2021-12-14 14:58 +10
[2021-12-14T03:58:01Z INFO neolink::rtsp] ChickenCam4: Camera reports firmware version v3.0.0.307_21051100
[2021-12-14T03:58:01Z INFO neolink::rtsp] ChickenCam4: Starting video stream Main Stream (Clear)
[2021-12-14T03:58:24Z ERROR neolink::rtsp] Error streaming from camera ChickenCam4, will retry in 1s: Error while streaming ChickenCam4
Caused by:
0: Media Deserialization error
1: Parsing error
[2021-12-14T03:58:24Z ERROR neolink_core::bc_protocol::connection::udpconn] Udp read poll aborted
[2021-12-14T03:58:24Z ERROR neolink_core::bc_protocol::connection::udpconn] Udp write poll aborted
This then just repeats over and over.
Umm sorry but I think I was reffering to the wrong number above, I think we need this one 1534694282
and I gave the wrong number.
Hey @QuantumEntangledAndy, So with 1534694282
I get a very similar result:
neolink rtsp --config config.toml [2021-12-14T05:07:28Z INFO neolink] Neolink ff76e4d2d737034319ea452fd532eba13d9edbec release [2021-12-14T05:07:29Z INFO neolink::rtsp] ChickenCam4: Connecting to camera at UID: 95270002TQ5M1CDU [2021-12-14T05:07:29Z INFO neolink::rtsp] ChickenCam4: Connecting to camera at UID: 95270002TQ5M1CDU [2021-12-14T05:07:29Z INFO neolink::rtsp] ChickenCam4: Logging in [2021-12-14T05:07:29Z INFO neolink::rtsp] ChickenCam4: Logging in [2021-12-14T05:07:29Z INFO neolink::rtsp] ChickenCam4: Connected and logged in [2021-12-14T05:07:29Z INFO neolink::rtsp] ChickenCam4: Starting video stream Sub Stream (Fluent) [2021-12-14T05:07:29Z INFO neolink::rtsp] ChickenCam4: Connected and logged in [2021-12-14T05:07:30Z INFO neolink::rtsp] ChickenCam4: Camera time is already set: 2021-12-14 16:07:30 +10 [2021-12-14T05:07:30Z INFO neolink::rtsp] ChickenCam4: Camera reports firmware version v3.0.0.307_21051100 [2021-12-14T05:07:30Z INFO neolink::rtsp] ChickenCam4: Starting video stream Main Stream (Clear) [2021-12-14T05:07:53Z ERROR neolink::rtsp] Error streaming from camera ChickenCam4, will retry in 1s: Error while streaming ChickenCam4
Caused by:
0: Media Deserialization error
1: Parsing error
[2021-12-14T05:07:53Z ERROR neolink_core::bc_protocol::connection::udpconn] Udp read poll aborted
[2021-12-14T05:07:53Z ERROR neolink_core::bc_protocol::connection::udpconn] Udp write poll aborted
[2021-12-14T05:07:59Z INFO neolink_core::bc_protocol::connection::udpconn::discover] Trying remote discovery against reolink servers
thread 'RUST_BACKTRACE=1
environment variable to display a backtrace
At this point everything seems to stop working in Blue Iris.
I run neolink again and it's almost identical to 1570347760
neolink rtsp --config config.toml [2021-12-14T05:14:30Z INFO neolink] Neolink ff76e4d2d737034319ea452fd532eba13d9edbec release [2021-12-14T05:14:30Z INFO neolink::rtsp] ChickenCam4: Connecting to camera at UID: 95270002TQ5M1CDU [2021-12-14T05:14:30Z INFO neolink::rtsp] ChickenCam4: Connecting to camera at UID: 95270002TQ5M1CDU [2021-12-14T05:14:31Z INFO neolink::rtsp] ChickenCam4: Logging in [2021-12-14T05:14:31Z INFO neolink::rtsp] ChickenCam4: Logging in [2021-12-14T05:14:31Z INFO neolink::rtsp] ChickenCam4: Connected and logged in [2021-12-14T05:14:31Z INFO neolink::rtsp] ChickenCam4: Connected and logged in [2021-12-14T05:14:31Z INFO neolink::rtsp] ChickenCam4: Starting video stream Sub Stream (Fluent) [2021-12-14T05:14:32Z INFO neolink::rtsp] ChickenCam4: Camera time is already set: 2021-12-14 16:14:32 +10 [2021-12-14T05:14:32Z INFO neolink::rtsp] ChickenCam4: Camera reports firmware version v3.0.0.307_21051100 [2021-12-14T05:14:32Z INFO neolink::rtsp] ChickenCam4: Starting video stream Main Stream (Clear) [2021-12-14T05:14:55Z ERROR neolink::rtsp] Error streaming from camera ChickenCam4, will retry in 1s: Error while streaming ChickenCam4
Caused by:
0: Media Deserialization error
1: Parsing error
[2021-12-14T05:14:55Z ERROR neolink_core::bc_protocol::connection::udpconn] Udp read poll aborted [2021-12-14T05:14:55Z ERROR neolink_core::bc_protocol::connection::udpconn] Udp write poll aborted [2021-12-14T05:14:56Z INFO neolink::rtsp] ChickenCam4: Connecting to camera at UID: 95270002TQ5M1CDU [2021-12-14T05:14:56Z INFO neolink::rtsp] ChickenCam4: Logging in [2021-12-14T05:14:57Z INFO neolink::rtsp] ChickenCam4: Connected and logged in [2021-12-14T05:14:57Z INFO neolink::rtsp] ChickenCam4: Camera time is already set: 2021-12-14 16:14:57 +10 [2021-12-14T05:14:57Z INFO neolink::rtsp] ChickenCam4: Camera reports firmware version v3.0.0.307_21051100 [2021-12-14T05:14:57Z INFO neolink::rtsp] ChickenCam4: Starting video stream Main Stream (Clear) [2021-12-14T05:15:21Z ERROR neolink_core::bc_protocol::connection::udpconn] Udp read poll aborted [2021-12-14T05:15:21Z ERROR neolink::rtsp] Error streaming from camera ChickenCam4, will retry in 1s: Error while streaming ChickenCam4
Caused by:
0: Media Deserialization error
1: Parsing error
[2021-12-14T05:15:21Z ERROR neolink_core::bc_protocol::connection::udpconn] Udp write poll aborted
I see thank you, sorry for all the questions but it is helpful to know such info when tracing errors.
At this point I will need the wireshark dump to proceed
No worries at all. I really appreciate the help so please don't apologise for the questions. I had a quick look at wireshark and have to admit I do not understand how to use it. I will have a read up on it and if I can figure it out, and post the information that you need here. Thank you for all the time you've spent on this!
Maybe this will help
Morning @QuantumEntangledAndy Thank you for the very clear guide as to what to do. I have attached the wireshark dump below, as well as my configuration file. I've removed the other cameras from it.
Apologies for the filesize, it was too large to upload so I've put it on my google drive: https://drive.google.com/drive/folders/1ZGjdNCs5baNVQNXLBFFGWPiIAABvjOW7?usp=sharing
I removed the E1 Pro's from the config. It took around 5 minutes for the Argus 3 Pro to show up with a viewable feed (hence the giant log size).
Hi @QuantumEntangledAndy Just wondering if the above wireshark dump provided you with any insights as to what could be going wrong?
Thanks!
Hi, I'm running neolink under RPI p400 against argus3 (no pro) and have similar issues. From official android client, most of time I need to repeat 5 or 10 time to have the connection.
Here it is the basic log :
GST_DEBUG=3 ./neolink --config ./sample_config.toml
[2022-01-07T12:23:59Z INFO neolink] Neolink 57c55e4121c0fe7abf9916f00df8d4bb9dd468c8 release
[2022-01-07T12:23:59Z WARN neolink] Deprecated command line option. Please use: neolink rtsp --config=Config { cameras: [CameraConfig { name: "tracteurs", camera_addr: None, camera_uid: Some("XXXXXXXXXXXX"), username: "admin", password: Some("XXXXXXXXXX"), timeout: None, format: None, stream: "subStream", permitted_users: None, channel_id: 0 }], bind_addr: "0.0.0.0", bind_port: 8554, certificate: None, tls_client_auth: "none", users: [] }
[2022-01-07T12:24:04Z INFO neolink_core::bc_protocol::connection::udpconn::discover] Trying remote discovery against reolink servers
[2022-01-07T12:24:06Z INFO neolink::rtsp] tracteurs: Connecting to camera at UID: XXXXXXXXXXXXXXXXXXX
[2022-01-07T12:24:06Z INFO neolink::rtsp] tracteurs: Logging in
[2022-01-07T12:24:11Z ERROR neolink_core::bc_protocol::connection::bcconn] Deserialization error: Deserialization error
[2022-01-07T12:24:11Z ERROR neolink_core::bc_protocol::connection::bcconn] caused by: I/O error
[2022-01-07T12:24:11Z ERROR neolink_core::bc_protocol::connection::bcconn] caused by: Connection timedout when reading from udp channel
[2022-01-07T12:24:11Z ERROR neolink::rtsp] Error streaming from camera tracteurs, will retry in 1s: Failed to login to tracteurs
Caused by:
Timeout
[2022-01-07T12:24:11Z ERROR neolink_core::bc_protocol::connection::udpconn] Udp write poll aborted [2022-01-07T12:24:11Z ERROR neolink_core::bc_protocol::connection::udpconn] Udp read poll aborted [2022-01-07T12:24:17Z INFO neolink_core::bc_protocol::connection::udpconn::discover] Trying remote discovery against reolink servers [2022-01-07T12:24:19Z INFO neolink::rtsp] tracteurs: Connecting to camera at UID: XXXXXXXXXXXXXXXXXXX [2022-01-07T12:24:19Z INFO neolink::rtsp] tracteurs: Logging in ^C
Very interesting, I just used the Ubuntu x86_64 version from home page,under an other Linux computer and it works! Is there some missing commit in arm V7 version?
@surfzoid
The armv7 should not be missing anything. They are all built together in same way.
Your error on the armv7 is suggesting timeout issues.
@surfzoid
The armv7 should not be missing anything. They are all built together in same way.
Your error on the armv7 is suggesting timeout issues.
Hi Yes some time it is timeout other time it is dropped connection but my copy paste is cut by GitHub , could provide me tuto to have more debug info?
A timeout can result in a message saying dropped connection. UDP connection has multiple layers and multiple timeouts. Certain combinations of them result in a dropped connection message. Which is caused by an underlying timeout.
I believe I see my mistake, the job for battery camera came from @twistedddx app, the broadcast is on local network, the one where my RPI is, but cam is far away, through OpenVPN. There is a way to "bypass"the broadcast and directly specify the OpenVPN IP/port ?
What is my app? I know nearly nothing about the argus cameras.
What is my app? I know nearly nothing about the argus cameras.
Sorry for this second mistake, few years ago there was another app write in python and my old memories believe that was your 😃
It should work if the vpn is setup correctly.
All of my initial testing of the protocol was done over vpn since I don't own a battery camera someone set up a vpn network for me to use theirs.
However I never got local only discovery to work over vpn. The broadcast would go out we would see it appearing on the other end of the connection but no reply would come. All connections had to be made using remote discovery over the Reolink servers.
Well perhaps this is because the pi is at OpenVPN server side and camera at OpenVPN client side ?
I'm seeing the same issue with Argus 3.
Wireshark dump attached, i may not have done it right, appreciate any time given to take look
Hi all, I'm also having trouble with the Argus 3 Pro.
I am getting the following in the command prompt window.
[2021-12-14T01:25:36Z ERROR neolink::rtsp] Error streaming from camera ChickenCam4, will retry in 1s: Error while streaming ChickenCam4
Caused by: 0: Media Deserialization error 1: Parsing error
[2021-12-14T01:25:36Z ERROR neolink_core::bc_protocol::connection::udpconn] Udp read poll aborted [2021-12-14T01:25:36Z ERROR neolink_core::bc_protocol::connection::udpconn] Udp write poll aborted
I have tried the different builds listed above (running windows), and the same issue appears to occur.
If I wait long enough the camera seems to connect but seems to take a long time and then randomly disconnects.
Any help would be greatly appreciated.
I'm seeing the same issue with Argus 3.
Wireshark dump attached, i may not have done it right, appreciate any time given to take look
Hi all, I'm also having trouble with the Argus 3 Pro. I am getting the following in the command prompt window. [2021-12-14T01:25:36Z ERROR neolink::rtsp] Error streaming from camera ChickenCam4, will retry in 1s: Error while streaming ChickenCam4
Caused by: 0: Media Deserialization error 1: Parsing error
[2021-12-14T01:25:36Z ERROR neolink_core::bc_protocol::connection::udpconn] Udp read poll aborted [2021-12-14T01:25:36Z ERROR neolink_core::bc_protocol::connection::udpconn] Udp write poll aborted I have tried the different builds listed above (running windows), and the same issue appears to occur. If I wait long enough the camera seems to connect but seems to take a long time and then randomly disconnects. Any help would be greatly appreciated.
I have same as you with one cam of two, same with official client, because the wifi signal is poor and internet connection too. Try to select substream in your config file should help an little.
Describe the bug I tried the latest version with Battery support on both Docker and Ubuntu server. Both return error for Argus Pro 3 camera.
To Reproduce
Expected behavior A stream should working and can be view from VLC...
Versions Neolink software: Neolink 0.4.0 f10f9f9706a7e9db7503f6a0fe7ff24ce493162a release Reolink camera model and firmware: Argus Pro 3 - Firmware v3.0.0.307_21051100
Logs: