<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Irrelevant is my relevant ... &#187; ICamViewProxy</title>
	<atom:link href="http://www.barkered.com/tag/icamviewproxy/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.barkered.com</link>
	<description></description>
	<lastBuildDate>Sun, 11 Dec 2011 17:34:53 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=</generator>
		<item>
		<title>ICamViewProxy</title>
		<link>http://www.barkered.com/2008/04/27/icamviewproxy/</link>
		<comments>http://www.barkered.com/2008/04/27/icamviewproxy/#comments</comments>
		<pubDate>Sun, 27 Apr 2008 21:36:31 +0000</pubDate>
		<dc:creator>barkered</dc:creator>
				<category><![CDATA[Technical]]></category>
		<category><![CDATA[ICamView]]></category>
		<category><![CDATA[ICamViewProxy]]></category>
		<category><![CDATA[Thomas Barker]]></category>
		<category><![CDATA[ZoneMinder]]></category>

		<guid isPermaLink="false">http://www.barkered.com/?p=188</guid>
		<description><![CDATA[I have several emails from people commenting on the ICamViewProxy and several people having problems compiling it and using it. I forget that not everyone is a programmer and alot of the things that are second nature to myself are not to others. I will update the page this week to answer some of these [...]]]></description>
			<content:encoded><![CDATA[<p>I have several emails from people commenting on the ICamViewProxy and several people having problems compiling it and using it. I forget that not everyone is a programmer and alot of the things that are second nature to myself are not to others.</p>
<p>I will update the page this week to answer some of these questions and perhaps update the source code as I see fit. So any additional comments get in touch!</p>
<p>Stay tuned!</p>
<p>Tom</p>
]]></content:encoded>
			<wfw:commentRss>http://www.barkered.com/2008/04/27/icamviewproxy/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ICamViewProxy &#8211; ICamView ZoneMinder MJPEG Server pda.cgi</title>
		<link>http://www.barkered.com/2008/04/07/icamviewproxy-icamview/</link>
		<comments>http://www.barkered.com/2008/04/07/icamviewproxy-icamview/#comments</comments>
		<pubDate>Mon, 07 Apr 2008 13:29:25 +0000</pubDate>
		<dc:creator>barkered</dc:creator>
				<category><![CDATA[ICamView]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[ICamViewProxy]]></category>
		<category><![CDATA[pda.cgi]]></category>
		<category><![CDATA[ZoneMinder]]></category>

		<guid isPermaLink="false">http://www.barkered.com/?p=198</guid>
		<description><![CDATA[ICamViewProxy has been updated. I have purchased a ICamView Plus web server and compatible Infrared camera. These devices are relatively well built and the 2 together cost me as little as £40. They are certainly not the best cameras in the world, but for that price the image quality and the functionality offered by the [...]]]></description>
			<content:encoded><![CDATA[<p><a title="ICamView Camera" href="http://www.barkered.com/wp-content/uploads/2007/12/cam.gif"><img src="http://www.barkered.com/wp-content/uploads/2007/12/cam.gif" alt="ICamView Camera" /></a><a title="ICamView Web Server" href="http://www.barkered.com/wp-content/uploads/2007/12/icamview.gif"><img src="http://www.barkered.com/wp-content/uploads/2007/12/icamview.gif" alt="ICamView Web Server" /></a></p>
<p><span style="text-decoration: underline;"><em>ICamViewProxy has been updated.</em></span></p>
<p>I have purchased a  ICamView Plus web server and compatible Infrared camera. These devices are relatively well built and the 2 together cost me as little as £40.</p>
<p>They are certainly not the best cameras in the world, but for that price the image quality and the functionality offered by the web server are very impressive.</p>
<p>The web server offers the following main features:</p>
<ul>
<li> Motion Detection</li>
<li>Scheduled Recording</li>
<li>Remote web interface</li>
<li>SNMP</li>
<li>Email and FTP alerting / uploading</li>
<li>Multiple user accounts. I.E. view only, admin</li>
<li>Single image URL (not MJPEG explained in more detail below)</li>
<li>Video streaming port (proprietary explained in more detail below)</li>
</ul>
<p>All sounds very good and for the price and it is. For myself though the image processing is overly simply and the only &#8216;tweaking&#8217; parameter is a percentage of sensitivity. Which is pretty pointless and useless. Ideally I would like to be able to monitor a single &#8216;zone&#8217; and ignore motion detection outside the zone.</p>
<p>My next step was to try and connect this IP Camera into zoneminder to give me the motion detection and alerting system I required. Simple I assumed.. How wrong I was.</p>
<h3>Image URL</h3>
<p>The single image URL provided by the web server is appallingly unreliable. Request an image via the constructed URL and sometimes get a JPEG, sometimes an error and often nothing.</p>
<p><em>http://IPADDRESS:VIDEOPORT/pda.cgi?user=&amp;password=&amp;page=image&amp;cam=1 </em></p>
<p><em>&#8216;user=&#8217;</em> is an anonymous viewer</p>
<p><em>&#8216;user=admin&#8217;</em> would be an admin user</p>
<p>similar goes for <em>&#8216;password=&#8217;</em></p>
<h3>Video Port</h3>
<p>Unfortunately the video port is a proprietary authenticated protocol based on UDP, not a MJPEG stream. I cannot understand the logic here, it would make far more sense to provide an MJPEG stream.</p>
<p>To connect to zone minder an MJPEG stream is required. This is where my proxy application comes in.</p>
<p>After a bit of googling, some reverse engineering of the protocol using <a href="http://www.wireshark.org">wireshark </a>to capture the packets sent from the windows application to the web server and some coding I have a working solution which logs into the web server video port and requests an image  every 1000/FPS ms. I found Neil Raymond&#8217;s application a great starting point. So if you are reading this, thank you!</p>
<p>The application sits on the box running zoneminder and provides a proxy between the proprietary video port and provides an MJPEG stream to zoneminder. In an ideal world, ICamView would make a complient port, but given their releases of updates it seems unlikely.</p>
<p>The application is fully portable and has been written using C++, <a href="http://www.libsdl.org/">SDL</a> and <a href="http://www.libsdl.org/projects/SDL_net/">SDL_net</a> extension. I have compiled and tested it in windows and Linux (Fedora 6). There is no reason why this should not work on any other platform.</p>
<h3>Usage Instructions:</h3>
<p>Simple really:</p>
<p><strong>ICamViewProxy -camid 1 -camhost 192.168.1.3 -camport 9001 -camuser user -campass password -proxyport 8888</strong></p>
<h3>Download</h3>
<p>The source is working source and as such may not be considered production code. This could be easily turned into a daemon with an init script in Linux.</p>
<p>This will happily cross compile, the zip file contains a working windows binary and also the required dependencies for windows compilation. This should build out of the box on visual studio 2008.</p>
<p><a href="http://www.barkered.com/?download=ICamViewProxySrc">Source Code and Win32 Binary</a></p>
<p>ICamViewProxy has been placed onto GitHub for further development, feel free to send me patches.</p>
<p><a href="http://github.com/boreddead/ICamViewProxy">ICamViewProxy on GitHub</a></p>
<p>Any questions, bugs, suggestions feel free to get in contact.</p>
<h3>Setup in ZoneMinder</h3>
<h4>Camera Type:</h4>
<p><a title="ICamView Proxy Zoneminder 1" href="http://www.barkered.com/wp-content/uploads/2007/12/icamviewproxy1.jpg"><img src="http://www.barkered.com/wp-content/uploads/2007/12/icamviewproxy1.jpg" alt="ICamView Proxy Zoneminder 1" /></a></p>
<h4>Source Settings:</h4>
<p><a title="ICamView Proxy Zoneminder 2" href="http://www.barkered.com/wp-content/uploads/2007/12/icamviewproxy2.JPG"><img src="http://www.barkered.com/wp-content/uploads/2007/12/icamviewproxy2.JPG" alt="ICamView Proxy Zoneminder 2" /></a></p>
<h4>Buffers:</h4>
<p><a title="ICamView Proxy Zoneminder 3" href="http://www.barkered.com/wp-content/uploads/2007/12/icamviewproxy3.JPG"><img src="http://www.barkered.com/wp-content/uploads/2007/12/icamviewproxy3.JPG" alt="ICamView Proxy Zoneminder 3" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.barkered.com/2008/04/07/icamviewproxy-icamview/feed/</wfw:commentRss>
		<slash:comments>23</slash:comments>
		</item>
	</channel>
</rss>

