View Single Post
Posts: 3 | Thanked: 4 times | Joined on Dec 2007
#1
I did some searching and didn't find any good solutions, so I thought I'd post what I've managed to get working regarding viewing my network camera on my N800.

The camera is a SkyIPCam500 by Airlink. It has sound and nightvision, and I've got it set up as a baby cam. You access it through a webpage, and there's a Java or ActiveX viewer. Unfortunately, I can't use either of those on the N800. Even if I installed Debian for Java, the sound only works with the ActiveX control. I did some sniffing with Wireshark and found the URL's that ActiveX is calling. One is for a MJPEG stream. I can plug that into MicroB, but it only displays the first frame. However, I did get it working with mplayer, here is the command line I used:

Code:
mplayer -demuxer lavf http://admin:admin@xxx.xxx.xxx.xxx/cgi/mjpg/mjpeg.cgi?foo.mjpg
The camera requires a login and password, and admin are the defaults. Replace the x's with your camera's IP. You have to specify the lavf demuxer since it won't detect that it's a mjpeg by default. Also, the "?foo.mjpg" on the end isn't used by the camera, it just tricks mplayer into realizing the stream is an mjpeg. After I run that command line, I get a nice full screen window showing the cam. It's even playing it at 640x480 with no problems as far as I can tell. (Might be dropping a few frames, I can't tell, the cam outputs 30fps at that size). I'm very happy with the results.

I'm still having some issues with the audio though. The stream is raw PCM data, so I had some trouble figuring out the details. Thankfully, the ActiveX control has an option to record to an AVI file, and using that I figured out it was 8000Hz mono at 128K bitrate. This command line decodes that:

Code:
mplayer -rawaudio channels=1:rate=8000:bitrate=128 -demuxer rawaudio http://admin:admin@xxx.xxx.xxx.xxx/cgi/audio/audio.cgi
I can actually hear what the cam is recording, but there is popping over it about every half second or so. I'm not sure if there is some extra data in the stream that needs to be ignored or what. It's too bad because it's so close. The audio does seem to be behind a few seconds, but that's not a big deal with a baby monitor.

Anyway, just wanted to share what I've got and see if anyone has any suggestions. It will be very cool to just prop the N800 on my nightstand when I go to bed and be able to watch the baby (when it gets here in a few weeks). Even if I don't get the audio working I'm guessing I'll be able to hear the baby screaming without it.
 

The Following 4 Users Say Thank You to Spastic For This Useful Post: