<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Netzwerkstream zerlegen - wie?]]></title><description><![CDATA[<p>Hallo!</p>
<p>Gegeben sein eine Netzwerk-Kamera, die einen jpeg-Bild zurück gibt.</p>
<p>Das geht wunderbar z.B. hiermit:</p>
<pre><code>TMemoryStream *MyStream = new TMemoryStream();
        IdHTTP1-&gt;Get(&quot;http://cam/cgi-bin/nph-image&quot;,MyStream);

        MyStream-&gt;SaveToFile(&quot;bla.jpg&quot;);

        MyStream-&gt;Position = 0;

        TJPEGImage *pJPG = new TJPEGImage();

        if (MyStream)
        {
                pJPG-&gt;LoadFromStream(MyStream);
                Image1-&gt;Picture-&gt;Assign(pJPG);
        }

        delete pJPG;
        delete MyStream;
</code></pre>
<p>Sie kann aber auch ein MJPEG-Stream liefern (das wäre dann /cgi-bin/nph-video).</p>
<p>Wie kann ich jetzt diesen Stream zerpflücken, damich ich bei &quot;Vollständigkeit eines Bildes&quot; mein TImage aktualisieren kann?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/194985/netzwerkstream-zerlegen-wie</link><generator>RSS for Node</generator><lastBuildDate>Tue, 18 Aug 2026 09:21:00 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/194985.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 12 Oct 2007 13:04:26 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Netzwerkstream zerlegen - wie? on Fri, 12 Oct 2007 13:04:26 GMT]]></title><description><![CDATA[<p>Hallo!</p>
<p>Gegeben sein eine Netzwerk-Kamera, die einen jpeg-Bild zurück gibt.</p>
<p>Das geht wunderbar z.B. hiermit:</p>
<pre><code>TMemoryStream *MyStream = new TMemoryStream();
        IdHTTP1-&gt;Get(&quot;http://cam/cgi-bin/nph-image&quot;,MyStream);

        MyStream-&gt;SaveToFile(&quot;bla.jpg&quot;);

        MyStream-&gt;Position = 0;

        TJPEGImage *pJPG = new TJPEGImage();

        if (MyStream)
        {
                pJPG-&gt;LoadFromStream(MyStream);
                Image1-&gt;Picture-&gt;Assign(pJPG);
        }

        delete pJPG;
        delete MyStream;
</code></pre>
<p>Sie kann aber auch ein MJPEG-Stream liefern (das wäre dann /cgi-bin/nph-video).</p>
<p>Wie kann ich jetzt diesen Stream zerpflücken, damich ich bei &quot;Vollständigkeit eines Bildes&quot; mein TImage aktualisieren kann?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1383766</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1383766</guid><dc:creator><![CDATA[dondoedel0815]]></dc:creator><pubDate>Fri, 12 Oct 2007 13:04:26 GMT</pubDate></item><item><title><![CDATA[Reply to Netzwerkstream zerlegen - wie? on Fri, 12 Oct 2007 13:28:57 GMT]]></title><description><![CDATA[<p>Mit der Image-Komponente kann man nur ein Bild darstellen, keine Sequenz von Bildern (Video).<br />
Dafür bräuchtest du eine externe Komponente.<br />
Schau dich mal auf <a href="http://mjpeg.sourceforge.net/" rel="nofollow">http://mjpeg.sourceforge.net/</a> um, ob dort ein Tool angeboten wird, daß dir aus dem MJPEG-Stream eine Sequenz von JPEGs erzeugt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1383786</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1383786</guid><dc:creator><![CDATA[Th]]></dc:creator><pubDate>Fri, 12 Oct 2007 13:28:57 GMT</pubDate></item><item><title><![CDATA[Reply to Netzwerkstream zerlegen - wie? on Fri, 12 Oct 2007 14:06:01 GMT]]></title><description><![CDATA[<p>Es ist klar, daß TImage keine Videos anzeigen kann. Ich wollte daher den Stream zerlegen und jedes mal, wenn ein Bild komplett da ist, dieses in das TImage kopieren.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1383816</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1383816</guid><dc:creator><![CDATA[dondoedel0815]]></dc:creator><pubDate>Fri, 12 Oct 2007 14:06:01 GMT</pubDate></item><item><title><![CDATA[Reply to Netzwerkstream zerlegen - wie? on Fri, 12 Oct 2007 14:15:39 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>Dnn must du dir anschauen für das MJPEG-Format binär aufgebaut ist.</p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1383825</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1383825</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Fri, 12 Oct 2007 14:15:39 GMT</pubDate></item><item><title><![CDATA[Reply to Netzwerkstream zerlegen - wie? on Sat, 13 Oct 2007 12:02:05 GMT]]></title><description><![CDATA[<p>Ich habe das mal mit Wireshark mitgeschnibbelt:</p>
<pre><code>HTTP/1.0 200 OK
Server: lumenera nph-cgi
Cache-Control: no-cache
Pragma: no-cache
Content-Type: multipart/mixed; boundary=&quot;-lumenera&quot;

---lumenera
Content-type: image/jpeg
Content-length: 120364

......Exif..MM.*.................&gt;...........G.2.........N.i.........b....Lumenera.le375c.2007:10:12
16:40:26...........0120.............|.....&amp;..................................................G..Z..].220549.....C....................................................................C................................................................................................
.3.......A.........
...P..O.........K....a..
/.:..z.1...+.?.z..i.........9^....... .g....?...?..?.'.m..G.....%...1?..?g&gt;.....}..exg...R...K....^............!..?.k.A...79...A...?.o.8......[.....4.....E...........?....gO./_.?..xg...Q.......5. .......................-......_.t.....c...W.................r.3.......A.........

hier kommen jetzt viele binäre daten, das 120364 byte lange jpeg

&lt;.`*/...s..a.z}...EO.|W.9.~....F..o....1KV..IE/D.....6....m...\._/...

---lumenera
Content-type: image/jpeg
Content-length: 120198  

......Exif..MM.*.................&gt;...........G.2.........N.i.........b....Lumenera.le375c.2007:10:12
16:40:26...........0120.............|.....&amp;..................................................G..Z..e|353660.....C....................................................................C................................................................................................
................................
.....................}........!1A..Qa.&quot;q.2....#B...R..$3br..

wieder viele daten

x...v\..m....Yr...s..

---lumenera
Content-type: image/jpeg
Content-length: 120470  

......Exif..MM.*.................&gt;...........G.2.........N.i.........b....Lumenera.le375c.2007:10:12
16:40:26...........0120.............|.....&amp;..................................................G..Z....501403.....C....................................................................C................................................................................................
................................
</code></pre>
<p>Folgendes ist mir klar: Den http-header abgreifen, warten bis &quot;--lunemera&quot; kommt, dann content-type und -length abgreifen und entsprechend der Längen soundsoviel Bytes lesen.</p>
<p>Irgendwie fehlt mir genau da der Ansatzpunkt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1383870</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1383870</guid><dc:creator><![CDATA[dondoedel0815]]></dc:creator><pubDate>Sat, 13 Oct 2007 12:02:05 GMT</pubDate></item><item><title><![CDATA[Reply to Netzwerkstream zerlegen - wie? on Sun, 14 Oct 2007 11:00:16 GMT]]></title><description><![CDATA[<p>Hat hier wirklich noch niemals jemand einen Stream dieser o.ä. Art zerlegt, der mir zumindest einen <strong>Anhaltspunkt</strong> geben könnte, wie ich da weiterkomme?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1384792</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1384792</guid><dc:creator><![CDATA[dondoedel0815]]></dc:creator><pubDate>Sun, 14 Oct 2007 11:00:16 GMT</pubDate></item><item><title><![CDATA[Reply to Netzwerkstream zerlegen - wie? on Sun, 14 Oct 2007 14:44:28 GMT]]></title><description><![CDATA[<p>Im o.g Auszug wiederholt sich die Abkürzung EXIF, die jedem ersthaftem Digitalfotografen ein Begriff ist.</p>
<p>Diesen EXIF-Block kannst du eigentlich schon rausfiltern/minimieren, da dort für dein Vorhaben<br />
unnötige Angaben enthalten sind.</p>
<p>Beschäftige dich mal mit dem jpeg-Dateiformat, z.B. bei Wikipedia findest du eine gute Erklärung.</p>
<p>MfG<br />
kpeter</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1384936</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1384936</guid><dc:creator><![CDATA[kpeter]]></dc:creator><pubDate>Sun, 14 Oct 2007 14:44:28 GMT</pubDate></item><item><title><![CDATA[Reply to Netzwerkstream zerlegen - wie? on Sun, 14 Oct 2007 15:34:32 GMT]]></title><description><![CDATA[<p>Das EXIF etc. brauche ich nicht wirklich, die Lösung sieht anders aus:<br />
Zitat 3 Beiträge weiter oben:</p>
<blockquote>
<p>Folgendes ist mir klar: Den http-header abgreifen, warten bis &quot;--lunemera&quot; kommt, dann content-type und -length abgreifen und entsprechend der Längen soundsoviel Bytes lesen.</p>
</blockquote>
<p>Mir fehlt z.Zt. nur der Ansatz. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1384972</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1384972</guid><dc:creator><![CDATA[dondoedel0815]]></dc:creator><pubDate>Sun, 14 Oct 2007 15:34:32 GMT</pubDate></item><item><title><![CDATA[Reply to Netzwerkstream zerlegen - wie? on Sun, 14 Oct 2007 20:06:15 GMT]]></title><description><![CDATA[<p>Sicher kennst du die Daten deiner webcam wie</p>
<p>Bilder/Sek. und Auflösung der gelieferten Bilder.</p>
<p>Ich würde so herangehen:</p>
<p>Mit einem Timer den Stream hacken (Bildfrequenz) und sicherstellen, dass ab Beginn --lunemera<br />
der Datenbock als Einzelbild on-the-fly dem Ausgabe-Image zugewiesen wird.</p>
<p>Die EXIF-Daten kann man erst mal aussen vorlassen, denke ich.</p>
<p>Aber sicher gibt es im Netz Lösungsansätze...</p>
<p>MfG<br />
kpeter</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1385167</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1385167</guid><dc:creator><![CDATA[kpeter]]></dc:creator><pubDate>Sun, 14 Oct 2007 20:06:15 GMT</pubDate></item><item><title><![CDATA[Reply to Netzwerkstream zerlegen - wie? on Sun, 14 Oct 2007 21:18:15 GMT]]></title><description><![CDATA[<p>Ich muß doch nur wissen, wie ich an die Zeile &quot;Content-length:&quot; ran komme. Dann kommt eine Leerzeile und ab dort dann x Bytes (von Content-length:) die Bilddaten.<br />
Und dann immer das ganze wieder von vorne...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1385210</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1385210</guid><dc:creator><![CDATA[dondoedel0815]]></dc:creator><pubDate>Sun, 14 Oct 2007 21:18:15 GMT</pubDate></item><item><title><![CDATA[Reply to Netzwerkstream zerlegen - wie? on Tue, 16 Oct 2007 13:00:41 GMT]]></title><description><![CDATA[<p>Hier ein Beispiel für eine USB-Webcam. Ich weiß, du hast eine Netzwerk-Cam,</p>
<p>aber sieh dir den Code trotzdem mal an. Basiert auf MS API und Macros.</p>
<p><a href="http://www.allanpetersen.com/index.php/contents/Main/Programming.html" rel="nofollow">http://www.allanpetersen.com/index.php/contents/Main/Programming.html</a></p>
<p>MfG<br />
kpeter</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1386367</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1386367</guid><dc:creator><![CDATA[kpeter]]></dc:creator><pubDate>Tue, 16 Oct 2007 13:00:41 GMT</pubDate></item></channel></rss>