How do I find the video stream URL of my security DVR by myself?

14

9

I have this 8 channel DVR with the brand "ELEC" that streams video over the network. However, I can only connect to it using iPhone apps called vMyEye, Asee+, and other similar names. I want to use VLC or something else to access the stream on my Mac.

Long story short, there is no way for me to simply look this up online, so my only way to figure out the streaming protocol and URL is through the vMyEye app. I already know that the port is 34599, and I know the local IP address. What do you recommend? Packet sniffers? Examining the binary code of the app for URLs (already tried and failed)?

EDIT: Forgot to say that I already tried going to IP:34599 in my web browser. It gets stuck loading and does nothing. The DVR also requires a username and password to log in, so that data is passed in somehow, hopefully not after the initial request :O

sudo

Posted 2014-03-10T07:32:56.947

Reputation: 549

You could use an IP scanning utility to scan all of the IP addresses on your local subnet, and see if the IP address is active. Then, load the active IP-addresses in your browser as http://IP-address:34599 to see if that IP address is the correct one.

– Steve – 2014-03-10T07:35:07.177

Good idea, and I forgot to mention that I already tried that. It just gets stuck loading forever. No response if I connect with telnet either. – sudo – 2014-03-10T07:36:59.337

What happens if you load IP:34599 with VLC? – Steve – 2014-03-10T07:38:27.957

It fails to open. Ugh, I also forgot to say that it has a username and password passed in somehow. It's late at night over here. – sudo – 2014-03-10T07:39:28.830

Have you tried all active IP addresses on your subnet? They all fail to load in VLC or your browser? – Steve – 2014-03-10T07:41:20.077

I know that the device's IP address is 192.168.1.2 for sure since vMyEye can connect to that and play the video. – sudo – 2014-03-10T07:45:00.743

Answers

11

After even deeper Googling and some lucky guesses, I have found that the DVR in question does not use RTSP or HTTP, or any URL for that matter. It connects to IP:port and gets some proprietary video stream from it. Many other cheap DVRs that work with vMEye do this as well, such as Zmodo and Swann.

HOWEVER, someone has managed to reverse-engineer it for an Android app, and someone else asked for permission to make a C program that decodes the video stream and outputs it as a pipe. It's not perfectly reliable, but here it is: http://www.zoneminder.com/forums/viewtopic.php?f=9&t=18137

But the guy made it for Zoneminder machines to connect to. I have yet to figure out how to make VLC or SecuritySpy open the pipe on my Mac or in Debian (just because I'm new to pipes and video streams), but it should be possible.

sudo

Posted 2014-03-10T07:32:56.947

Reputation: 549

9

An easy way to find the URL is to look at the regular web interface's source code, specifically the video element. My Elec web interface uses Quicktime and it passes the RTSP address in the following format:

rtsp://192.168.X.X:554/user=YOUR_USERNAME&password=YOUR_PASSWORD&channel=1&stream=0.sdp?real_stream--rtp-caching=100

Cams are selected through the channel variable. The rtsp port might be configurable in your DVR and as such differ.

Someone

Posted 2014-03-10T07:32:56.947

Reputation: 252

I'd give this an up vote if I had enough reputation, but it won't work in my case anyway because my web interface loads some ActiveX thing (and even fails at doing so). The code just contains references to download code from servers in China, which I have tried pinging with no response. – sudo – 2014-04-26T21:09:58.163

Have you tried the web interface in another browser? Their cloud site doesn't work for me outside IE, but the local interface works in Chrome without ActiveX. UnPnP does not pierce the RTSP stream through the firewall, but it is available in the LAN. So I assume their "cloud" tech uses the proprietary protocol you mentioned below, because it only works in IE, but the local interface uses Quicktime and a direct RTSP connection. That being said, I've come to the conclusion that Elec is a classic case of "you get what you pay for". :-) – Someone – 2014-04-26T23:16:42.963

I only tried it in Safari, and I checked the page source. There's very little code there, only the code to download the ActiveX data from those servers. – sudo – 2014-04-27T00:00:02.147

Bummer. I guess you have a different/older version then. Have you considered asking the Elec people about an upgrade? They do answer their emails: support@eleccctv.com – Someone – 2014-04-27T16:42:44.860

An upgrade is a good idea, but I think you got luckier with support than I did. I tried contacting them to ask where I download updates, and I don't think they were willing to help: "Please note that this item is not our product, and eleccctv.com is not our website. You have contacted us in error." Makes me wonder what that guy is doing with an @eleccctv.com email address! Oh well, maybe I can find an update myself if I Google a lot. – sudo – 2014-04-29T03:01:12.510

9

If your camera is ONVIF (Open Network Video Interface Forum) compatible, then the open source ONVIF Device Manager might help:

ONVIF Device Manager is a Network Video Client (NVC) to manage Network Video Transmitters (NVT), Network Video Storage (NVS) and Network Video Analytics (NVA) devices. Implements Discovery, Device, Media, Imaging, Analytics, Events and PTZ services.

I'm also an unlucky owner of a cheap IP-camera (SAF IP-300). It provides absolutely useless and buggy web interface, which "works" in IE only. I was fortunate to find ONVIF Device Manager and it discovered my camera and showed me the URL rtsp://ip-of-my-camera/live0.264 which I was able to open in VLC.

I can't guaranty that your camera is ONVIF compatible, so this method may not work for you. Unfortunately, SAF IP-300 is so unstable piece of hardware that it can't deliver a continuous stream for more than a 3 minutes.

TheKeksov

Posted 2014-03-10T07:32:56.947

Reputation: 91

4

I have always had this issue but now there is a very efficient ONVIF utilty called ONVIF device manager (http://idevicedesign.com/reference-designs) Which is free, open source, and quickly scans your network for rtsp/onvif streams and shows you the exact URL you need to use.

JohnnyVegas

Posted 2014-03-10T07:32:56.947

Reputation: 2 820

For any other linux/Mac users reading this: I believe this utility is Windows only. This also just seems to duplicate TheKeksov's earlier answer. – JosephH – 2016-07-04T20:33:42.070

It does not have any source code to be open source! It is just some msi file – dashesy – 2016-12-02T22:33:37.897

1https://sourceforge.net/p/onvifdm/code/HEAD/tree/ – JohnnyVegas – 2016-12-04T10:11:14.970

3

This is the string!

VLC: rtsp://192.168.0.100:554/user=admin&password=123456&channel=1&stream=0.sdp?real_stream--rtp-caching=100

192.168.0.100 <--- change to DVR IP admin <--- change to user name used to access the DVR 123456 <--- change to your password channel=1 <--- used to rotate all 8 channel

Amadeus Mozart

Posted 2014-03-10T07:32:56.947

Reputation: 31

+1'd because this is the only solution that worked for me after searching the internet for days. I'm using a KARE 4-channel H.264 DVR – the brand doesn't exist anymore. – SUM1 – 2018-09-21T20:33:39.857

0

Just my 2 cents - here is a detailed blog explaining simply how to find ip cam URLs using onvif : http://me-ol-blog.blogspot.co.il/2017/07/getting-still-image-urluri-of-ipcam-or.html

thedrs

Posted 2014-03-10T07:32:56.947

Reputation: 235

0

If you go into your router and choose your dhcp client list (computers that are attached) you'll find that the dvr comes up as whatever it's named as in the dvr (mine is coming up as 192.168.2.4 now add the :81 to the end of it to make the url in your browser point to 192.168.2.4:81 (does it work this way?)

If this works, now go on to the next step. As a note, I am able to view the streams in my linux box regardless of whether or not I have upnp enabled in the router.

Kenny hendrick

Posted 2014-03-10T07:32:56.947

Reputation: 1