<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>http://wiki.staging.zoneminder.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=BugBlue</id>
	<title>ZoneMinder Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="http://wiki.staging.zoneminder.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=BugBlue"/>
	<link rel="alternate" type="text/html" href="http://wiki.staging.zoneminder.com/Special:Contributions/BugBlue"/>
	<updated>2026-04-19T23:53:03Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.37.1</generator>
	<entry>
		<id>http://wiki.staging.zoneminder.com/index.php?title=Edimax&amp;diff=2870</id>
		<title>Edimax</title>
		<link rel="alternate" type="text/html" href="http://wiki.staging.zoneminder.com/index.php?title=Edimax&amp;diff=2870"/>
		<updated>2009-03-09T20:37:15Z</updated>

		<summary type="html">&lt;p&gt;BugBlue: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* IC1500&lt;br /&gt;
&lt;br /&gt;
The edimax IC 1500 delivers a strange form of motion jpeg with a little help from a little script on your webserver&lt;br /&gt;
you should be able to view the motion jpeg stream in zoneminder:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?php&lt;br /&gt;
function handlejpeg($jpeg) {&lt;br /&gt;
  if(strlen($jpeg)) {&lt;br /&gt;
    echo &amp;quot;--video boundary--\r\n&amp;quot;;&lt;br /&gt;
    echo &amp;quot;Content-length: &amp;quot;.strlen($jpeg).&amp;quot;\r\n&amp;quot;;&lt;br /&gt;
    echo &amp;quot;Content-type: image/jpeg\r\n&amp;quot;;&lt;br /&gt;
    echo &amp;quot;\r\n&amp;quot;;&lt;br /&gt;
    echo &amp;quot;$jpeg&amp;quot;.&amp;quot;\r\n\r\n&amp;quot;;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
  @ini_set(&amp;#039;zlib.output_compression&amp;#039;, 0);&lt;br /&gt;
  @ini_set(&amp;#039;implicit_flush&amp;#039;, 1);&lt;br /&gt;
  header(&amp;#039;Content-Type: multipart/x-mixed-replace;boundary=--video boundary--&amp;#039;);&lt;br /&gt;
  $handle = fopen(&amp;quot;http://admin:1234@&amp;lt;YOURHOST&amp;gt;/snapshot.cgi&amp;quot;, &amp;quot;rb&amp;quot;);	&lt;br /&gt;
  $cl=0;&lt;br /&gt;
  $jpeg=NULL;&lt;br /&gt;
  if ($handle) {&lt;br /&gt;
    while (!feof($handle)) {&lt;br /&gt;
        $buffer = fgets($handle, 4096);&lt;br /&gt;
        if(trim($buffer)==&amp;quot;--myboundary&amp;quot;) {&lt;br /&gt;
           $CT=fgets($handle, 4096);&lt;br /&gt;
           $CL=fgets($handle, 4096);&lt;br /&gt;
           $crap=fgets($handle, 4096);&lt;br /&gt;
           $cl=preg_replace(&amp;quot;/Content-Length: /&amp;quot;,&amp;#039;&amp;#039;,trim($CL));&lt;br /&gt;
           handlejpeg($jpeg,$i);&lt;br /&gt;
           $jpeg=NULL;&lt;br /&gt;
           for($j=0;$j&amp;lt;$cl;$j++) {&lt;br /&gt;
             $jpeg.=fgetc($handle);&lt;br /&gt;
           }&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    fclose($handle);&lt;br /&gt;
}&lt;br /&gt;
?&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>BugBlue</name></author>
	</entry>
	<entry>
		<id>http://wiki.staging.zoneminder.com/index.php?title=Edimax&amp;diff=2869</id>
		<title>Edimax</title>
		<link rel="alternate" type="text/html" href="http://wiki.staging.zoneminder.com/index.php?title=Edimax&amp;diff=2869"/>
		<updated>2009-03-09T20:36:54Z</updated>

		<summary type="html">&lt;p&gt;BugBlue: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* IC1500&lt;br /&gt;
&lt;br /&gt;
The edimax IC 1500 delivers a strange form of motion jpeg with a little help from a little script on your webserver&lt;br /&gt;
you should be able to view the motion jpeg stream in zoneminder:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?php&lt;br /&gt;
function handlejpeg($jpeg) {&lt;br /&gt;
  if(strlen($jpeg)) {&lt;br /&gt;
    echo &amp;quot;--video boundary--\r\n&amp;quot;;&lt;br /&gt;
    echo &amp;quot;Content-length: &amp;quot;.strlen($jpeg).&amp;quot;\r\n&amp;quot;;&lt;br /&gt;
    echo &amp;quot;Content-type: image/jpeg\r\n&amp;quot;;&lt;br /&gt;
    echo &amp;quot;\r\n&amp;quot;;&lt;br /&gt;
    echo &amp;quot;$jpeg&amp;quot;.&amp;quot;\r\n\r\n&amp;quot;;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
  @ini_set(&amp;#039;zlib.output_compression&amp;#039;, 0);&lt;br /&gt;
  @ini_set(&amp;#039;implicit_flush&amp;#039;, 1);&lt;br /&gt;
  header(&amp;#039;Content-Type: multipart/x-mixed-replace;boundary=--video boundary--&amp;#039;);&lt;br /&gt;
  $handle = fopen(&amp;quot;http://admin:1234@172.16.21.136/snapshot.cgi&amp;quot;, &amp;quot;rb&amp;quot;);	&lt;br /&gt;
  $cl=0;&lt;br /&gt;
  $jpeg=NULL;&lt;br /&gt;
  if ($handle) {&lt;br /&gt;
    while (!feof($handle)) {&lt;br /&gt;
        $buffer = fgets($handle, 4096);&lt;br /&gt;
        if(trim($buffer)==&amp;quot;--myboundary&amp;quot;) {&lt;br /&gt;
           $CT=fgets($handle, 4096);&lt;br /&gt;
           $CL=fgets($handle, 4096);&lt;br /&gt;
           $crap=fgets($handle, 4096);&lt;br /&gt;
           $cl=preg_replace(&amp;quot;/Content-Length: /&amp;quot;,&amp;#039;&amp;#039;,trim($CL));&lt;br /&gt;
           handlejpeg($jpeg,$i);&lt;br /&gt;
           $jpeg=NULL;&lt;br /&gt;
           for($j=0;$j&amp;lt;$cl;$j++) {&lt;br /&gt;
             $jpeg.=fgetc($handle);&lt;br /&gt;
           }&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    fclose($handle);&lt;br /&gt;
}&lt;br /&gt;
?&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>BugBlue</name></author>
	</entry>
	<entry>
		<id>http://wiki.staging.zoneminder.com/index.php?title=Conceptronic&amp;diff=2868</id>
		<title>Conceptronic</title>
		<link rel="alternate" type="text/html" href="http://wiki.staging.zoneminder.com/index.php?title=Conceptronic&amp;diff=2868"/>
		<updated>2009-03-09T20:34:58Z</updated>

		<summary type="html">&lt;p&gt;BugBlue: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;C54NETCAM - Just turn off PCRE processing in the Options &amp;gt; Network tab.  http://x.x.x.x/video.cgi gives 10-20 fps 640 x 480 mjpeg feed.  Seems to be the same camera as TrendNet IP-100  Additional: Disable login at the C54NETCAM -&amp;gt; Configuration -&amp;gt; User by using empty username and empty password&lt;br /&gt;
&lt;br /&gt;
C54NetCam2 - it does send some form of motion jpeg with bad headers and so on.&lt;br /&gt;
&lt;br /&gt;
The following php script does the trick&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?php&lt;br /&gt;
function handlejpeg($bork,$i) {&lt;br /&gt;
  $jpeg=substr($bork,28);&lt;br /&gt;
  echo &amp;quot;--video boundary--\r\n&amp;quot;;&lt;br /&gt;
  echo &amp;quot;Content-length: &amp;quot;.strlen($jpeg).&amp;quot;\r\n&amp;quot;;&lt;br /&gt;
  echo &amp;quot;Content-type: image/jpeg\r\n&amp;quot;;&lt;br /&gt;
  echo &amp;quot;\r\n&amp;quot;;&lt;br /&gt;
  echo $jpeg.&amp;quot;\r\n&amp;quot;;&lt;br /&gt;
}&lt;br /&gt;
  @ini_set(&amp;#039;zlib.output_compression&amp;#039;, 0);&lt;br /&gt;
  @ini_set(&amp;#039;implicit_flush&amp;#039;, 1);&lt;br /&gt;
  Header(&amp;#039;Content-Type: multipart/x-mixed-replace;boundary=--video boundary--&amp;#039;);&lt;br /&gt;
  $handle = fopen(&amp;quot;http://&amp;lt;YOURHOSTNAME&amp;gt;/cgi/mjpg/mjpeg.cgi&amp;quot;, &amp;quot;r&amp;quot;);	&lt;br /&gt;
  $start=0;&lt;br /&gt;
  if ($handle) {&lt;br /&gt;
    while (!feof($handle)) {&lt;br /&gt;
        $buffer = fgets($handle, 409600);&lt;br /&gt;
        if($start==0 &amp;amp;&amp;amp; $buffer==&amp;quot;--myboundary\r\n&amp;quot;) {&lt;br /&gt;
          $crap = fgets($handle, 409600);&lt;br /&gt;
          $crap = fgets($handle, 409600);&lt;br /&gt;
          $start=1;&lt;br /&gt;
          $jpeg=fgets($handle, 409600);&lt;br /&gt;
        } elseif($start==1) {&lt;br /&gt;
          if(preg_match(&amp;quot;/--myboundary\r\n/&amp;quot;,$buffer)) { &lt;br /&gt;
            $jpeg.=preg_replace(&amp;quot;/--myboundary\r\n/&amp;quot;,&amp;quot;&amp;quot;,$buffer);&lt;br /&gt;
            $i++;&lt;br /&gt;
            handlejpeg($jpeg,$i);&lt;br /&gt;
            $crap = fgets($handle, 409600);&lt;br /&gt;
            $jpeg=fgets($handle, 409600);&lt;br /&gt;
            $jpeg=&amp;quot;&amp;quot;;&lt;br /&gt;
          } else {&lt;br /&gt;
            $jpeg.=$buffer;&lt;br /&gt;
          }&lt;br /&gt;
        }&lt;br /&gt;
        &lt;br /&gt;
        flush();&lt;br /&gt;
    }&lt;br /&gt;
    fclose($handle);&lt;br /&gt;
}&lt;br /&gt;
?&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
[[Category:Cameras]]&lt;/div&gt;</summary>
		<author><name>BugBlue</name></author>
	</entry>
</feed>