How to find the video stream URL of the security DVR by theself


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

Best Answer

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:

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.

Related Question