Closed tomfrogger closed 1 year ago
Hmm try setting stream to all and then accessing the externStream
If that dosent work set the environment variable RUST_LOG to debug and it will print all stream names and their resolutions so we can learn the internal name of the stream
I think these are the available streams shown with debug logging enabled. I added the following lines to /etc/environment
export RUST_LOG=debug export GST_DEBUG=3
in the config.toml stream = "all"
These are from the neolink log and one of the duo cameras. [2023-09-24T10:34:40Z INFO neolink::rtsp] roadcam: Avaliable at /roadcam/main, /roadcam/Main, /roadcam/mainStream, /roadcam/MainStream, /roadcam/Mainstream, /roadcam/mainstream, /roadcam [2023-09-24T10:34:40Z INFO neolink::rtsp] roadcam: Avaliable at /roadcam/sub, /roadcam/Sub, /roadcam/subStream, /roadcam/SubStream, /roadcam/Substream, /roadcam/substream
Am I looking at the correct log?
Looks like debug log isn't on. How do yo start neolink? Is it in a container or something that will not propegate the env vars ?
Please find a debug log. neolink is normally run as a service for this ive started it manually with only one camera specified in the .toml
[2023-09-24T14:14:00Z INFO neolink] Neolink 0f91c06d0bc914c3c9cbc9a52078746810d2307b release
[2023-09-24T14:14:00Z WARN neolink] Deprecated command line option. Please use: `neolink rtsp --config=Config { cameras: [CameraConfig { name: "roadcam", camera_addr: Some("IP:9000"), camera_uid: None, username: "admin", password: Some("XX"), stream: All, permitted_users: None, channel_id: 0, mqtt: MqttConfig { enable_motion: true, enable_pings: true, enable_light: true, enable_battery: true, battery_update: 2000, enable_preview: true, preview_update: 2000, discovery: None }, pause: PauseConfig { on_motion: false, on_disconnect: false, motion_timeout: 1.0, mode: "none" }, discovery: Relay, max_encryption: "Aes", strict: false, print_format: None, update_time: false, buffer_size: 25, enabled: true, debug: false, max_discovery_retries: 10 }], bind_addr: "0.0.0.0", bind_port: 8854, tokio_console: false, certificate: None, mqtt: None, tls_client_auth: "none", users: [] }`
[2023-09-24T14:14:00Z INFO neolink::rtsp] Starting RTSP Server at 0.0.0.0:8854
[2023-09-24T14:14:00Z INFO neolink::rtsp] roadcam: Rtsp Staring
[2023-09-24T14:14:00Z DEBUG neolink::common::reactor] Inserting new insance
[2023-09-24T14:14:00Z INFO neolink::utils] roadcam: Connecting to camera at Address: IP:9000
[2023-09-24T14:14:00Z INFO neolink_core::bc_protocol] roadcam: Trying TCP discovery
[2023-09-24T14:14:00Z DEBUG neolink::common::reactor] New instance created
[2023-09-24T14:14:00Z DEBUG neolink::common::reactor] Got instance from reactor
[2023-09-24T14:14:00Z DEBUG neolink::common::neocam] roadcam: InUse
[2023-09-24T14:14:00Z DEBUG neolink::rtsp] roadcam: Camera Main
[2023-09-24T14:14:00Z DEBUG neolink::rtsp] roadcam: Camera Main::Loop
[2023-09-24T14:14:00Z DEBUG neolink::rtsp] roadcam: Camera Main::Select Stream
[2023-09-24T14:14:00Z DEBUG neolink::rtsp] roadcam: Camera Main::Select Main
[2023-09-24T14:14:00Z DEBUG neolink::rtsp::gst::factory] Constructing Factor Impl
[2023-09-24T14:14:00Z DEBUG neolink::rtsp] Path: /roadcam/main
[2023-09-24T14:14:00Z DEBUG neolink::rtsp] Path: /roadcam/Main
[2023-09-24T14:14:00Z DEBUG neolink::rtsp] Path: /roadcam/mainStream
[2023-09-24T14:14:00Z DEBUG neolink::rtsp] Path: /roadcam/MainStream
[2023-09-24T14:14:00Z DEBUG neolink::rtsp] Path: /roadcam/Mainstream
[2023-09-24T14:14:00Z DEBUG neolink::rtsp] Path: /roadcam/mainstream
[2023-09-24T14:14:00Z DEBUG neolink::rtsp] Path: /roadcam
[2023-09-24T14:14:00Z DEBUG neolink::rtsp] roadcam: Preparing at /roadcam/main, /roadcam/Main, /roadcam/mainStream, /roadcam/MainStream, /roadcam/Mainstream, /roadcam/mainstream, /roadcam
[2023-09-24T14:14:00Z DEBUG neolink::rtsp] roadcam: Camera Main::Select Sub
[2023-09-24T14:14:00Z DEBUG neolink::rtsp::gst::factory] Constructing Factor Impl
[2023-09-24T14:14:00Z DEBUG neolink::rtsp] Path: /roadcam/sub
[2023-09-24T14:14:00Z DEBUG neolink::rtsp] Path: /roadcam/Sub
[2023-09-24T14:14:00Z DEBUG neolink::rtsp] Path: /roadcam/subStream
[2023-09-24T14:14:00Z DEBUG neolink::rtsp] Path: /roadcam/SubStream
[2023-09-24T14:14:00Z DEBUG neolink::rtsp] Path: /roadcam/Substream
[2023-09-24T14:14:00Z DEBUG neolink::rtsp] Path: /roadcam/substream
[2023-09-24T14:14:00Z DEBUG neolink::rtsp] roadcam: Preparing at /roadcam/sub, /roadcam/Sub, /roadcam/subStream, /roadcam/SubStream, /roadcam/Substream, /roadcam/substream
[2023-09-24T14:14:00Z DEBUG neolink::rtsp] roadcam: Camera Main::Select Extern
[2023-09-24T14:14:00Z DEBUG neolink::rtsp::gst::factory] Constructing Factor Impl
[2023-09-24T14:14:00Z DEBUG neolink::rtsp] Path: /roadcam/extern
[2023-09-24T14:14:00Z DEBUG neolink::rtsp] Path: /roadcam/Extern
[2023-09-24T14:14:00Z DEBUG neolink::rtsp] Path: /roadcam/externStream
[2023-09-24T14:14:00Z DEBUG neolink::rtsp] Path: /roadcam/ExternStream
[2023-09-24T14:14:00Z DEBUG neolink::rtsp] Path: /roadcam/Externstream
[2023-09-24T14:14:00Z DEBUG neolink::rtsp] Path: /roadcam/externstream
[2023-09-24T14:14:00Z DEBUG neolink::rtsp] roadcam: Preparing at /roadcam/extern, /roadcam/Extern, /roadcam/externStream, /roadcam/ExternStream, /roadcam/Externstream, /roadcam/externstream
[2023-09-24T14:14:00Z INFO neolink_core::bc_protocol] roadcam: TCP Discovery success at 192.168.0.83:9000
[2023-09-24T14:14:00Z INFO neolink::utils] roadcam: Logging in
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct BcXml @ 0: start to parse "body"
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(body, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 1
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct Encryption @ 1: start to parse "Encryption"
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(Encryption, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}, [version -> 1.1]), new depth 2
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(type, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(md5), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(type), new depth 2
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(nonce, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(65104429-9fWnQgPPcoKErqaCrBwo), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(nonce), new depth 2
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct Encryption @ 1: success
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(Encryption), new depth 1
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct BcXml @ 0: success
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct BcXml @ 0: start to parse "body"
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(body, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 1
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct DeviceInfo @ 1: start to parse "DeviceInfo"
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(DeviceInfo, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}, [version -> 1.1]), new depth 2
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(firmVersion, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(00051539673100), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(firmVersion), new depth 2
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(IOInputPortNum, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(0), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(IOInputPortNum), new depth 2
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(IOOutputPortNum, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(0), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(IOOutputPortNum), new depth 2
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(diskNum, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(0), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(diskNum), new depth 2
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(type, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(wifi_solo_ipc), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(type), new depth 2
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(channelNum, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(2), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(channelNum), new depth 2
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(audioNum, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(1), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(audioNum), new depth 2
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(ipChannel, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(0), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(ipChannel), new depth 2
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(analogChnNum, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(1), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(analogChnNum), new depth 2
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct Resolution @ 2: start to parse "resolution"
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(resolution, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(resolutionName, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(2560*1440), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(resolutionName), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(width, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(2560), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(width), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(height, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(1440), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(height), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct Resolution @ 2: success
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(resolution), new depth 2
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(language, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(English), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(language), new depth 2
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(sdCard, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(1), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(sdCard), new depth 2
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(ptzMode, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(none), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(ptzMode), new depth 2
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(typeInfo, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(IPC), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(typeInfo), new depth 2
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(softVer, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(50332332), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(softVer), new depth 2
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(hardVer, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(0), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(hardVer), new depth 2
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(panelVer, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(0), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(panelVer), new depth 2
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(hdChannel1, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(0), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(hdChannel1), new depth 2
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(hdChannel2, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(0), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(hdChannel2), new depth 2
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(hdChannel3, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(0), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(hdChannel3), new depth 2
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(hdChannel4, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(0), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(hdChannel4), new depth 2
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(norm, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(NTSC), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(norm), new depth 2
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(osdFormat, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(MDY), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(osdFormat), new depth 2
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(B485, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(0), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(B485), new depth 2
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(supportAutoUpdate, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(0), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(supportAutoUpdate), new depth 2
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(userVer, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(1), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(userVer), new depth 2
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(FrameworkVer, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(1), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(FrameworkVer), new depth 2
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(secretCode, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(000000008d22e70b), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(secretCode), new depth 2
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(authMode, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(0), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(authMode), new depth 2
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct DeviceInfo @ 1: success
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(DeviceInfo), new depth 1
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct StreamInfoList @ 1: start to parse "StreamInfoList"
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(StreamInfoList, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}, [version -> 1.1]), new depth 2
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct StreamInfo @ 2: start to parse "StreamInfo"
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(StreamInfo, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(channelBits, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(3), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(channelBits), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct EncodeTable @ 3: start to parse "encodeTable"
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(encodeTable, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(type, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(mainStream), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(type), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct StreamResolution @ 4: start to parse "resolution"
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(resolution, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(width, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 6
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(2560), new depth 6
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(width), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(height, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 6
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(1440), new depth 6
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(height), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct StreamResolution @ 4: success
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(resolution), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(defaultFramerate, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(15), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(defaultFramerate), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(defaultBitrate, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(3072), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(defaultBitrate), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(framerateTable, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(25,22,20,18,16,15,12,10,8,6,4,2), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(framerateTable), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(bitrateTable, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(1024,1536,2048,3072,4096,5120), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(bitrateTable), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct EncodeTable @ 3: success
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(encodeTable), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct EncodeTable @ 3: start to parse "encodeTable"
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(encodeTable, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(type, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(subStream), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(type), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct StreamResolution @ 4: start to parse "resolution"
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(resolution, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(width, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 6
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(640), new depth 6
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(width), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(height, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 6
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(360), new depth 6
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(height), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct StreamResolution @ 4: success
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(resolution), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(defaultFramerate, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(10), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(defaultFramerate), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(defaultBitrate, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(256), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(defaultBitrate), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(framerateTable, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(15,10,7,4), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(framerateTable), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(bitrateTable, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(64,128,160,192,256,384,512), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(bitrateTable), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct EncodeTable @ 3: success
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(encodeTable), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct StreamInfo @ 2: success
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(StreamInfo), new depth 2
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct StreamInfo @ 2: start to parse "StreamInfo"
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(StreamInfo, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(channelBits, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(3), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(channelBits), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct EncodeTable @ 3: start to parse "encodeTable"
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(encodeTable, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(type, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(mainStream), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(type), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct StreamResolution @ 4: start to parse "resolution"
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(resolution, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(width, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 6
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(2304), new depth 6
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(width), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(height, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 6
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(1296), new depth 6
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(height), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct StreamResolution @ 4: success
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(resolution), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(defaultFramerate, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(15), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(defaultFramerate), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(defaultBitrate, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(3072), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(defaultBitrate), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(framerateTable, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(25,22,20,18,16,15,12,10,8,6,4,2), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(framerateTable), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(bitrateTable, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(1024,1536,2048,3072,4096,5120), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(bitrateTable), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct EncodeTable @ 3: success
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(encodeTable), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct EncodeTable @ 3: start to parse "encodeTable"
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(encodeTable, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(type, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(subStream), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(type), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct StreamResolution @ 4: start to parse "resolution"
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(resolution, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(width, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 6
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(640), new depth 6
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(width), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(height, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 6
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(360), new depth 6
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(height), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct StreamResolution @ 4: success
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(resolution), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(defaultFramerate, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(10), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(defaultFramerate), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(defaultBitrate, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(256), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(defaultBitrate), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(framerateTable, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(15,10,7,4), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(framerateTable), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(bitrateTable, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(64,128,160,192,256,384,512), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(bitrateTable), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct EncodeTable @ 3: success
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(encodeTable), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct StreamInfo @ 2: success
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(StreamInfo), new depth 2
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct StreamInfo @ 2: start to parse "StreamInfo"
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(StreamInfo, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(channelBits, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(3), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(channelBits), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct EncodeTable @ 3: start to parse "encodeTable"
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(encodeTable, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(type, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(mainStream), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(type), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct StreamResolution @ 4: start to parse "resolution"
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(resolution, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(width, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 6
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(1920), new depth 6
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(width), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(height, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 6
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(1080), new depth 6
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(height), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct StreamResolution @ 4: success
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(resolution), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(defaultFramerate, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(22), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(defaultFramerate), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(defaultBitrate, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(4096), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(defaultBitrate), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(framerateTable, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(25,22,20,18,16,15,12,10,8,6,4,2), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(framerateTable), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(bitrateTable, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(1024,1536,2048,3072,4096,5120,6144), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(bitrateTable), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct EncodeTable @ 3: success
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(encodeTable), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct EncodeTable @ 3: start to parse "encodeTable"
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(encodeTable, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(type, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(subStream), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(type), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct StreamResolution @ 4: start to parse "resolution"
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(resolution, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(width, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 6
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(640), new depth 6
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(width), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(height, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 6
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(360), new depth 6
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(height), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct StreamResolution @ 4: success
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(resolution), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(defaultFramerate, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(10), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(defaultFramerate), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(defaultBitrate, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(256), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(defaultBitrate), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(framerateTable, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(15,10,7,4), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(framerateTable), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(bitrateTable, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(64,128,160,192,256,384,512), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(bitrateTable), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct EncodeTable @ 3: success
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(encodeTable), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct StreamInfo @ 2: success
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(StreamInfo), new depth 2
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct StreamInfoList @ 1: success
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(StreamInfoList), new depth 1
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct BcXml @ 0: success
[2023-09-24T14:14:00Z DEBUG neolink_core::bc_protocol::login] Populating abilities
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct BcXml @ 0: start to parse "body"
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(body, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 1
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct AbilityInfo @ 1: start to parse "AbilityInfo"
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(AbilityInfo, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}, [version -> 1.1]), new depth 2
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(userName, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(admin), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(userName), new depth 2
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct AbilityInfoToken @ 2: start to parse "system"
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(system, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct AbilityInfoSubModule @ 3: start to parse "subModule"
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(subModule, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(abilityValue, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(general_rw, norm_rw, version_ro, uid_ro, autoReboot_rw, restore_rw, reboot_rw, shutdown_rw, dst_rw, log_ro, performance_ro, upgrade_rw, export_rw, import_rw, bootPwd_rw), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(abilityValue), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct AbilityInfoSubModule @ 3: success
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(subModule), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct AbilityInfoToken @ 2: success
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(system), new depth 2
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct AbilityInfoToken @ 2: start to parse "streaming"
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(streaming, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct AbilityInfoSubModule @ 3: start to parse "subModule"
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(subModule, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(channelId, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(0), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(channelId), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(abilityValue, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(preview_rw, compress_rw, snap_rw, rtsp_rw, streamTable_ro), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(abilityValue), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct AbilityInfoSubModule @ 3: success
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(subModule), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct AbilityInfoSubModule @ 3: start to parse "subModule"
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(subModule, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(channelId, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(1), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(channelId), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(abilityValue, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(preview_rw, compress_rw, snap_rw, rtsp_rw, streamTable_ro), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(abilityValue), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct AbilityInfoSubModule @ 3: success
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(subModule), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct AbilityInfoToken @ 2: success
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(streaming), new depth 2
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct AbilityInfoToken @ 2: start to parse "network"
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(network, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct AbilityInfoSubModule @ 3: start to parse "subModule"
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(subModule, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(abilityValue, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(port_rw, dns_rw, email_rw, ftp_rw, ftpSchedule_rw, ipFilter_rw, localLink_rw, pppoe_rw, upnp_rw, wifi_rw, ntp_rw, netStatus_rw, ptop_rw, autontp_rw), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(abilityValue), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct AbilityInfoSubModule @ 3: success
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(subModule), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct AbilityInfoToken @ 2: success
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(network), new depth 2
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct AbilityInfoToken @ 2: start to parse "PTZ"
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(PTZ, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct AbilityInfoSubModule @ 3: start to parse "subModule"
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(subModule, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(abilityValue, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(control_rw, preset_rw, cruise_rw, track_rw, decoder_rw, ptzInfo_ro), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(abilityValue), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct AbilityInfoSubModule @ 3: success
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(subModule), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct AbilityInfoToken @ 2: success
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(PTZ), new depth 2
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct AbilityInfoToken @ 2: start to parse "alarm"
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(alarm, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct AbilityInfoSubModule @ 3: start to parse "subModule"
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(subModule, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(channelId, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(0), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(channelId), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(abilityValue, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(motion_rw), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(abilityValue), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct AbilityInfoSubModule @ 3: success
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(subModule), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct AbilityInfoSubModule @ 3: start to parse "subModule"
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(subModule, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(channelId, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(1), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(channelId), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(abilityValue, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(motion_rw), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(abilityValue), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct AbilityInfoSubModule @ 3: success
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(subModule), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct AbilityInfoToken @ 2: success
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(alarm), new depth 2
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct AbilityInfoToken @ 2: start to parse "image"
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(image, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct AbilityInfoSubModule @ 3: start to parse "subModule"
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(subModule, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(channelId, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(0), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(channelId), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(abilityValue, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(ispBasic_rw, ispAdvance_rw, ledState_rw), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(abilityValue), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct AbilityInfoSubModule @ 3: success
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(subModule), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct AbilityInfoSubModule @ 3: start to parse "subModule"
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(subModule, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(channelId, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(1), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(channelId), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(abilityValue, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(ispBasic_rw, ispAdvance_rw, ledState_rw), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(abilityValue), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct AbilityInfoSubModule @ 3: success
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(subModule), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct AbilityInfoToken @ 2: success
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(image), new depth 2
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct AbilityInfoToken @ 2: start to parse "video"
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(video, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct AbilityInfoSubModule @ 3: start to parse "subModule"
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(subModule, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(channelId, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(0), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(channelId), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(abilityValue, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(osdName_rw, osdTime_rw, shelter_rw), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(abilityValue), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct AbilityInfoSubModule @ 3: success
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(subModule), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct AbilityInfoSubModule @ 3: start to parse "subModule"
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(subModule, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(channelId, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(1), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(channelId), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(abilityValue, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(osdName_rw, osdTime_rw, shelter_rw), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(abilityValue), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct AbilityInfoSubModule @ 3: success
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(subModule), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct AbilityInfoToken @ 2: success
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(video), new depth 2
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct AbilityInfoToken @ 2: start to parse "security"
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(security, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct AbilityInfoSubModule @ 3: start to parse "subModule"
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(subModule, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched StartElement(abilityValue, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"}), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched Characters(user_rw, userOnline_rw, bootPwd_rw), new depth 5
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(abilityValue), new depth 4
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct AbilityInfoSubModule @ 3: success
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(subModule), new depth 3
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct AbilityInfoToken @ 2: success
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(security), new depth 2
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct AbilityInfo @ 1: success
[2023-09-24T14:14:00Z DEBUG yaserde::de] Fetched EndElement(AbilityInfo), new depth 1
[2023-09-24T14:14:00Z DEBUG yaserde_derive] Struct BcXml @ 0: success
[2023-09-24T14:14:00Z DEBUG neolink_core::bc_protocol::abilityinfo] Abilities: <?xml version="1.0" encoding="utf-8"?><AbilityInfo><userName>admin</userName><system><subModule><abilityValue>general_rw, norm_rw, version_ro, uid_ro, autoReboot_rw, restore_rw, reboot_rw, shutdown_rw, dst_rw, log_ro, performance_ro, upgrade_rw, export_rw, import_rw, bootPwd_rw</abilityValue></subModule></system><network><subModule><abilityValue>port_rw, dns_rw, email_rw, ftp_rw, ftpSchedule_rw, ipFilter_rw, localLink_rw, pppoe_rw, upnp_rw, wifi_rw, ntp_rw, netStatus_rw, ptop_rw, autontp_rw</abilityValue></subModule></network><alarm><subModule><channelId>0</channelId><abilityValue>motion_rw</abilityValue></subModule><subModule><channelId>1</channelId><abilityValue>motion_rw</abilityValue></subModule></alarm><image><subModule><channelId>0</channelId><abilityValue>ispBasic_rw, ispAdvance_rw, ledState_rw</abilityValue></subModule><subModule><channelId>1</channelId><abilityValue>ispBasic_rw, ispAdvance_rw, ledState_rw</abilityValue></subModule></image><video><subModule><channelId>0</channelId><abilityValue>osdName_rw, osdTime_rw, shelter_rw</abilityValue></subModule><subModule><channelId>1</channelId><abilityValue>osdName_rw, osdTime_rw, shelter_rw</abilityValue></subModule></video><security><subModule><abilityValue>user_rw, userOnline_rw, bootPwd_rw</abilityValue></subModule></security><PTZ><subModule><abilityValue>control_rw, preset_rw, cruise_rw, track_rw, decoder_rw, ptzInfo_ro</abilityValue></subModule></PTZ><streaming><subModule><channelId>0</channelId><abilityValue>preview_rw, compress_rw, snap_rw, rtsp_rw, streamTable_ro</abilityValue></subModule><subModule><channelId>1</channelId><abilityValue>preview_rw, compress_rw, snap_rw, rtsp_rw, streamTable_ro</abilityValue></subModule></streaming></AbilityInfo>
[2023-09-24T14:14:00Z INFO neolink::utils] roadcam: Connected and logged in
Ah a bit much. Also you seem to have stopped it a bit too early.
Could you set RUST_LOG to "neolink=debug" so we only get neolink debug messages and not serde ones
export RUST_LOG="neolink=debug"
And continue until you get a message about streams available at then a list of paths. Just before this point it should print the encode table xml which has all stream informations.
If we still can't do from neolink logs then I'll need to see the official client packets which will mean wireshark. Do you have any skills with using wireshark to make packet dumps?
` Yesi can run wireshark if required, youll need to guide me on what you want filtered. RUST_LOG restricted to neolink=debug
[2023-09-24T15:05:19Z INFO neolink] Neolink 0f91c06d0bc914c3c9cbc9a52078746810d2307b release
[2023-09-24T15:05:19Z WARN neolink] Deprecated command line option. Please use: neolink rtsp --config=Config { cameras: [CameraConfig { name: "roadcam", camera_addr: Some("IP:9000"), camera_uid: None, username: "admin", password: Some("XX"), stream: All, permitted_users: None, channel_id: 0, mqtt: MqttConfig { enable_motion: true, enable_pings: true, enable_light: true, enable_battery: true, battery_update: 2000, enable_preview: true, preview_update: 2000, discovery: None }, pause: PauseConfig { on_motion: false, on_disconnect: false, motion_timeout: 1.0, mode: "none" }, discovery: Relay, max_encryption: "Aes", strict: false, print_format: None, update_time: false, buffer_size: 25, enabled: true, debug: false, max_discovery_retries: 10 }], bind_addr: "0.0.0.0", bind_port: 8854, tokio_console: false, certificate: None, mqtt: None, tls_client_auth: "none", users: [] }
[2023-09-24T15:05:19Z INFO neolink::rtsp] Starting RTSP Server at 0.0.0.0:8854
[2023-09-24T15:05:19Z INFO neolink::rtsp] roadcam: Rtsp Staring
[2023-09-24T15:05:19Z DEBUG neolink::common::reactor] Inserting new insance
[2023-09-24T15:05:19Z INFO neolink::utils] roadcam: Connecting to camera at Address: IP:9000
[2023-09-24T15:05:19Z DEBUG neolink::common::reactor] New instance created
[2023-09-24T15:05:19Z DEBUG neolink::common::reactor] Got instance from reactor
[2023-09-24T15:05:19Z DEBUG neolink::common::neocam] roadcam: InUse
[2023-09-24T15:05:19Z INFO neolink_core::bc_protocol] roadcam: Trying TCP discovery
[2023-09-24T15:05:19Z DEBUG neolink::rtsp] roadcam: Camera Main
[2023-09-24T15:05:19Z DEBUG neolink::rtsp] roadcam: Camera Main::Loop
[2023-09-24T15:05:19Z DEBUG neolink::rtsp] roadcam: Camera Main::Select Stream
[2023-09-24T15:05:19Z DEBUG neolink::rtsp] roadcam: Camera Main::Select Sub
[2023-09-24T15:05:19Z DEBUG neolink::rtsp] roadcam: Camera Main::Select Extern
[2023-09-24T15:05:19Z DEBUG neolink::rtsp] roadcam: Camera Main::Select Main
[2023-09-24T15:05:19Z DEBUG neolink::rtsp::gst::factory] Constructing Factor Impl
[2023-09-24T15:05:19Z DEBUG neolink::rtsp] Path: /roadcam/extern
[2023-09-24T15:05:19Z DEBUG neolink::rtsp] Path: /roadcam/Extern
[2023-09-24T15:05:19Z DEBUG neolink::rtsp] Path: /roadcam/externStream
[2023-09-24T15:05:19Z DEBUG neolink::rtsp] Path: /roadcam/ExternStream
[2023-09-24T15:05:19Z DEBUG neolink::rtsp] Path: /roadcam/Externstream
[2023-09-24T15:05:19Z DEBUG neolink::rtsp] Path: /roadcam/externstream
[2023-09-24T15:05:19Z DEBUG neolink::rtsp] roadcam: Preparing at /roadcam/extern, /roadcam/Extern, /roadcam/externStream, /roadcam/ExternStream, /roadcam/Externstream, /roadcam/externstream
[2023-09-24T15:05:19Z DEBUG neolink::rtsp::gst::factory] Constructing Factor Impl
[2023-09-24T15:05:19Z DEBUG neolink::rtsp] Path: /roadcam/main
[2023-09-24T15:05:19Z DEBUG neolink::rtsp] Path: /roadcam/Main
[2023-09-24T15:05:19Z DEBUG neolink::rtsp] Path: /roadcam/mainStream
[2023-09-24T15:05:19Z DEBUG neolink::rtsp] Path: /roadcam/MainStream
[2023-09-24T15:05:19Z DEBUG neolink::rtsp] Path: /roadcam/Mainstream
[2023-09-24T15:05:19Z DEBUG neolink::rtsp] Path: /roadcam/mainstream
[2023-09-24T15:05:19Z DEBUG neolink::rtsp] Path: /roadcam
[2023-09-24T15:05:19Z DEBUG neolink::rtsp] roadcam: Preparing at /roadcam/main, /roadcam/Main, /roadcam/mainStream, /roadcam/MainStream, /roadcam/Mainstream, /roadcam/mainstream, /roadcam
[2023-09-24T15:05:19Z DEBUG neolink::rtsp::gst::factory] Constructing Factor Impl
[2023-09-24T15:05:19Z DEBUG neolink::rtsp] Path: /roadcam/sub
[2023-09-24T15:05:19Z DEBUG neolink::rtsp] Path: /roadcam/Sub
[2023-09-24T15:05:19Z DEBUG neolink::rtsp] Path: /roadcam/subStream
[2023-09-24T15:05:19Z DEBUG neolink::rtsp] Path: /roadcam/SubStream
[2023-09-24T15:05:19Z DEBUG neolink::rtsp] Path: /roadcam/Substream
[2023-09-24T15:05:19Z DEBUG neolink::rtsp] Path: /roadcam/substream
[2023-09-24T15:05:19Z DEBUG neolink::rtsp] roadcam: Preparing at /roadcam/sub, /roadcam/Sub, /roadcam/subStream, /roadcam/SubStream, /roadcam/Substream, /roadcam/substream
[2023-09-24T15:05:19Z INFO neolink_core::bc_protocol] roadcam: TCP Discovery success at IP:9000
[2023-09-24T15:05:19Z INFO neolink::utils] roadcam: Logging in
[2023-09-24T15:05:19Z DEBUG neolink_core::bc_protocol::login] Populating abilities
[2023-09-24T15:05:19Z DEBUG neolink_core::bc_protocol::abilityinfo] Abilities: <?xml version="1.0" encoding="utf-8"?>
Ok this is the bit I wanted
roadcam: Listing Camera Supported Streams
mainStream: 2560x1440
subStream: 640x360
mainStream: 2304x1296
subStream: 640x360
mainStream: 1920x1080
subStream: 640x360
However it seems to just have the same name but three times. Maybe it is on another channel?
Ok wireshark time. Need to use the offical client to capture starting both streams. I recommend you get the desktop official client and run wire shark and the desktop client from the same machine. Then using the client start one stream stop it, then start the other. Filter the wireshark going to/from the cameras ip.
Also set your camera password to 123456
before hand
Hi many thanks for looking at this, the wireshark captures are attached. Cam IP is .83, Win PC running reolink client and wireshark is on .15. I opened wireshark started the capture filtered to .83, then opened the first stream followed by the second, and then swapped back and forth a few times.
Yes i think it does have 2 channels if you use RTMP stream links channel0 and channel1 are needed to show the different feeds.
rtmp://IP.83/bcs/channel0_main.bcs?channel=1&stream=0&user=admin&password=XX
rtmp://IP.83/bcs/channel1_main.bcs?channel=1&stream=0&user=admin&password=XX
If it is different channels then have you tried this
[[cameras]]
name = "Cam01"
channel = 0
# Other options
[[cameras]]
name = "Cam02"
channel = 1
# Other options
If it is different channels then have you tried this
[[cameras]] name = "Cam01" channel = 0 # Other options [[cameras]] name = "Cam02" channel = 1 # Other options
I have tried this however no matter what channel options inputed in the .toml (i tried channels 0,1 & 2) neolink can only access the 1st main stream (Channel0 if accessing over RTMP). Both work but only display the same feed.
[[cameras]] name = "roadcam_01" channel = 0 username = "admin" password = "xx" address = "192.168.0.83:9000" stream = "mainStream"
[[cameras]] name = "roadcam_02" channel = 1 username = "admin" password = "xx" address = "192.168.0.83:9000" stream = "mainStream"
Changing Channel = 1 to Channel_id = 1 in the . toml Works! I am getting both streams via neolink now.
Many thanks for the answer!
[[cameras]] name = "roadcam_01" channel_id = 0 username = "admin" password = "xx" address = "192.168.0.83:9000" stream = "mainStream"
[[cameras]] name = "roadcam_02" channel_id = 1 username = "admin" password = "xx" address = "192.168.0.83:9000" stream = "mainStream"
Ah great. I forgot that it's channel_id. I think I'll put it in as an alias so you can write it as both channel and channel_id in the toml
Is it possible to access both cameras from a duo v2 mainStreams using neolink?
I have neolink connected to my duo 2 camera and works well but only shows mainstream 01 when stream = "mainStream" how might i get access to the other camera and mainstream 02?
Direct rtsp access from the camera uses these urls but it is the usual smeary mess in frigate without going via neolink. rtsp://admin:PASSWORD@IPADDRESS:554/h264Preview_01_main rtsp://admin:PASSWORD@IPADDRESS:554/h264Preview_02_main