<?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[Streamproblem]]></title><description><![CDATA[<p>Hi Leute,</p>
<p>ich habe ein Problem beim streamen. Vermutlich setze ich die Werte einfach falsch ein. Gem. Skript von Mircosoft Encoder sieht dass so aus.</p>
<pre><code class="language-cpp">CComBSTR strServerName(&quot;MyWMServer&quot;);
    CComBSTR strPubPoint(&quot;MyPubPoint&quot;);
    CComBSTR strPubTemplate(&quot;AnotherPubPoint&quot;);
    CComBSTR MyNSCFile(&quot;\\\\servername\\share\\MyPubPoint.nsc&quot;);
    CComBSTR MyNSCURL(&quot;\\\\servername\\share\\PubPoint.nsc&quot;);
    CComBSTR MyASXFile(&quot;\\\\servername\\share\\MyPubPoint.asx&quot;);
</code></pre>
<p>Meine fiktiven Werte sind:<br />
IP: 192.168.1.10 Port 8080<br />
ServerName: StreamServer<br />
Freigegebener Ordner: wwwroot<br />
Kann mir jemand zeigen, wie ich die Werte in den obrigen Code richtig einsetze?<br />
Habe schon einige Varianten durch, aber anscheinend nicht die Richtige.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/58346/streamproblem</link><generator>RSS for Node</generator><lastBuildDate>Tue, 02 Jun 2026 21:32:11 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/58346.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 12 Dec 2003 10:27:06 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Streamproblem on Fri, 12 Dec 2003 10:27:06 GMT]]></title><description><![CDATA[<p>Hi Leute,</p>
<p>ich habe ein Problem beim streamen. Vermutlich setze ich die Werte einfach falsch ein. Gem. Skript von Mircosoft Encoder sieht dass so aus.</p>
<pre><code class="language-cpp">CComBSTR strServerName(&quot;MyWMServer&quot;);
    CComBSTR strPubPoint(&quot;MyPubPoint&quot;);
    CComBSTR strPubTemplate(&quot;AnotherPubPoint&quot;);
    CComBSTR MyNSCFile(&quot;\\\\servername\\share\\MyPubPoint.nsc&quot;);
    CComBSTR MyNSCURL(&quot;\\\\servername\\share\\PubPoint.nsc&quot;);
    CComBSTR MyASXFile(&quot;\\\\servername\\share\\MyPubPoint.asx&quot;);
</code></pre>
<p>Meine fiktiven Werte sind:<br />
IP: 192.168.1.10 Port 8080<br />
ServerName: StreamServer<br />
Freigegebener Ordner: wwwroot<br />
Kann mir jemand zeigen, wie ich die Werte in den obrigen Code richtig einsetze?<br />
Habe schon einige Varianten durch, aber anscheinend nicht die Richtige.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/414316</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/414316</guid><dc:creator><![CDATA[Trikor]]></dc:creator><pubDate>Fri, 12 Dec 2003 10:27:06 GMT</pubDate></item><item><title><![CDATA[Reply to Streamproblem on Mon, 15 Dec 2003 09:32:33 GMT]]></title><description><![CDATA[<p>Kann mir wirklich keiner dabei helfen? <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/416209</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/416209</guid><dc:creator><![CDATA[Trikor]]></dc:creator><pubDate>Mon, 15 Dec 2003 09:32:33 GMT</pubDate></item><item><title><![CDATA[Reply to Streamproblem on Mon, 15 Dec 2003 10:43:24 GMT]]></title><description><![CDATA[<p>Aehm ??? Aegypten ...</p>
<p>Irgendwie versteh ich die Fragestellung ned ganz :p</p>
<p>Wass du willst, ist z.B. dass du CComBSTR strServerName(&quot;MyWMServer&quot;); so bearbeitest, das nachher in dem CComBSTR &quot;192.168.1.10:8080&quot; oder so steht ???</p>
<p>oder meinst nachher das zusammenbauen ???</p>
<pre><code class="language-cpp">CComBSTR MyNSCFile(L&quot;\\\\&quot;);
MyNSCFile.AppendBSTR(strServerName);
MyNSCFile.Append(L&quot;\\&quot;);
MyNSCFile.AppendBSTR(strPath);
MyNSCFile.Append(L&quot;\\&quot;);
MyNSCFile.AppendBSTR(strPubPoint);
MyNSCFile.Append(L&quot;.nsc&quot;);
</code></pre>
<p>Ciao ...</p>
<p>erklaer mal bitte etwas naeher ...</p>
<p>Ciao ...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/416288</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/416288</guid><dc:creator><![CDATA[RHBaum]]></dc:creator><pubDate>Mon, 15 Dec 2003 10:43:24 GMT</pubDate></item><item><title><![CDATA[Reply to Streamproblem on Mon, 15 Dec 2003 11:16:21 GMT]]></title><description><![CDATA[<p>Also, mein Programm ist ziemlich stark an den Mircosoft Encoder 9 angelehnt.<br />
Ich mochte damit ein Liveereigniss (z.B. das Bild einer Webcam) zu einen Windows Media Server streamen. Das Bild der Webcam bekomme ich auch. Allerdings läßt es sich nicht streamen. <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="😞"
    /><br />
Und ich finde den Fehler leider nicht.<br />
Dabei ist das eigentliche Skript aus der SDK ziemlich eindeutig.</p>
<pre><code class="language-cpp">// Include libraries.
#include &lt;windows.h&gt;
#include &lt;atlbase.h&gt;
#include &lt;comdef.h&gt;
#include &quot;C:\WMSDK\WMEncSDK9\include\wmencode.h&quot;
#include &lt;conio.h&gt; // for kbhit()

void main()
{
    HRESULT hr;
    IWMEncoder2* pEncoder;
    IWMEncSourceGroupCollection* pSrcGrpColl;
    IWMEncSourceGroup* pSrcGrp;
    IWMEncSource* pSrcAud;
    IWMEncSource* pSrcVid;
    IWMEncProfileCollection* pProColl;
    IWMEncProfile* pPro;
    IWMEncBroadcast* pBrdcst;
    IWMEncPushDistribution* pPushDist;
    CComBSTR bstrName = NULL;
    long lCount;
    int i;

    // Initialize the COM library and retrieve a pointer
    // to an IWMEncoder interface.
    hr = CoInitialize(NULL);
    if ( SUCCEEDED( hr ) )
    {
        hr = CoCreateInstance(CLSID_WMEncoder,
            NULL,
            CLSCTX_INPROC_SERVER,
            IID_IWMEncoder2,
            (void**) &amp;pEncoder);
    }

    // Retrieve the source group collection.
    if ( SUCCEEDED( hr ) )
    {
        hr = pEncoder-&gt;get_SourceGroupCollection(&amp;pSrcGrpColl);
    }

    // Add a source group to the collection.
    if ( SUCCEEDED( hr ) )
    {
        hr = pSrcGrpColl-&gt;Add(CComBSTR(&quot;SG_1&quot;), &amp;pSrcGrp);
    }
    if ( SUCCEEDED( hr ) )
    {
        hr = pSrcGrp-&gt;AddSource(WMENC_AUDIO, &amp;pSrcAud);
    }
    if ( SUCCEEDED( hr ) )
    {
        hr = pSrcGrp-&gt;AddSource(WMENC_VIDEO, &amp;pSrcVid);
    }

    // Add a video and audio source to the source group.
    if ( SUCCEEDED( hr ) )
    {
        hr = pSrcAud-&gt;SetInput(CComBSTR(&quot;Device://Default_Audio_Device&quot;));
    }
    if ( SUCCEEDED( hr ) )
    {
        hr = pSrcVid-&gt;SetInput(CComBSTR(&quot;Device://Default_Video_Device&quot;));
    }

    // Choose a profile from the collection.
    if ( SUCCEEDED( hr ) )
    {
        hr = pEncoder-&gt;get_ProfileCollection(&amp;pProColl);
    }
    if ( SUCCEEDED( hr ) )
    {
        hr = pProColl-&gt;get_Count(&amp;lCount);
    }
    for (i=0; i&lt;lCount; i++)
    {
        if ( SUCCEEDED( hr ) )
        {
            hr = pProColl-&gt;Item(i, &amp;pPro);
        }
        if ( SUCCEEDED( hr ) )
        {
            hr = pPro-&gt;get_Name(&amp;bstrName);
        }
        if (_wcsicmp(bstrName,CComBSTR(&quot;Windows Media Video 8 for Local Area Network (384 Kbps)&quot;))==0)
        {
            // Set the profile in the source group.
            if ( SUCCEEDED( hr ) )
            {
                hr = pSrcGrp-&gt;put_Profile(CComVariant(pPro));
            }
            break;
        }
    }

    // Specify the push distribution variables, including the Windows Media
    // server name, publishing point, and announcement files.
    // Provide real values for the following placeholders.
    if ( SUCCEEDED( hr ) )
    {
        hr = pEncoder-&gt;get_Broadcast(&amp;pBrdcst);
    }
    if ( SUCCEEDED( hr ) )
    {
        hr = pBrdcst-&gt;QueryInterface(IID_IWMEncPushDistribution, (void**)&amp;pPushDist);
    }
    if ( SUCCEEDED( hr ) )
    {
        hr = pPushDist-&gt;put_PortNumber(WMENC_PROTOCOL_PUSH_DISTRIBUTION, 70);
    }

    CComBSTR strServerName(&quot;MyWMServer&quot;);
    CComBSTR strPubPoint(&quot;MyPubPoint&quot;);
    CComBSTR strPubTemplate(&quot;AnotherPubPoint&quot;);
    CComBSTR MyNSCFile(&quot;\\\\servername\\share\\MyPubPoint.nsc&quot;);
    CComBSTR MyNSCURL(&quot;\\\\servername\\share\\PubPoint.nsc&quot;);
    CComBSTR MyASXFile(&quot;\\\\servername\\share\\MyPubPoint.asx&quot;);

    // Remove the publishing point when the broadcast is over.
    if ( SUCCEEDED( hr ) )
    {
        hr = pPushDist-&gt;put_AutoRemovePublishingPoint(VARIANT_TRUE);
    }

    // Set the push distribution variables.
    if ( SUCCEEDED( hr ) )
    {
        hr = pPushDist-&gt;put_ServerName(strServerName);
    }
    if ( SUCCEEDED( hr ) )
    {
        hr = pPushDist-&gt;put_PublishingPoint(strPubPoint);
    }
    if ( SUCCEEDED( hr ) )
    {
        hr = pPushDist-&gt;put_Template(strPubTemplate);
    }

    // Initialize the encoding session.
    if ( SUCCEEDED( hr ) )
    {
        hr = pEncoder-&gt;PrepareToEncode(VARIANT_TRUE);
    }

    // Generate the announcement file.
    if ( SUCCEEDED( hr ) )
    {
        hr = pPushDist-&gt;GenerateMulticastInfoFile(MyNSCFile);
    }
    if ( SUCCEEDED( hr ) )
    {
        hr = pPushDist-&gt;GenerateAnnouncementFile(MyNSCURL, MyASXFile);
    }

    // Start the encoding process.
    if ( SUCCEEDED( hr ) )
    {
        hr = pEncoder-&gt;PrepareToEncode(VARIANT_TRUE);
    }
    if ( SUCCEEDED( hr ) )
    {
        hr = pEncoder-&gt;Start();

        // Stop the encoding process.
        if ( SUCCEEDED( hr ) )
        {
            // Keep the console window open.
            printf(&quot;Press a key to stop broadcasting.&quot;);

            // Wait for a key press.
            while(!kbhit())
                _asm nop;

            hr = pEncoder-&gt;Stop();
        }
    }
}
</code></pre>
<p>Wie gesagt, die Audio und Videodaten werden korrekt übergeben, aber beim Streamen bekommt er ab</p>
<pre><code class="language-cpp">// Initialize the encoding session.
    if ( SUCCEEDED( hr ) )
    {
        hr = pEncoder-&gt;PrepareToEncode(VARIANT_TRUE);
    }
</code></pre>
<p>einen Minuswert für hr zurück. Danach führt das Programm natürlich keine if-Abfrage mehr aus. Ich kann mir eigentlich nur noch erklären, dass ich die Werte für den Server falsch setze (siehe erstes posting).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/416331</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/416331</guid><dc:creator><![CDATA[Trikor]]></dc:creator><pubDate>Mon, 15 Dec 2003 11:16:21 GMT</pubDate></item><item><title><![CDATA[Reply to Streamproblem on Tue, 16 Dec 2003 12:09:55 GMT]]></title><description><![CDATA[<p>Also eigentlich muß ich nun wissen, wie die Daten übergeben werden</p>
<pre><code class="language-cpp">CComBSTR strServerName(&quot;Mein_Stream_Server&quot;); 
// oder
CComBSTR strServerName(&quot;http://192.168.1.10:8080&quot;); 
// oder 
CComBSTR strServerName(&quot;\\\\192.168.1.10:8080&quot;); 
// oder 
CComBSTR strServerName(&quot;192.168.1.10:8080&quot;); 
// oder ganz anders ???
// und natürlich in ähnlicher Weise für die anderen Variablen!

CComBSTR strPubPoint(&quot;MyPubPoint&quot;); 
CComBSTR strPubTemplate(&quot;AnotherPubPoint&quot;); 
CComBSTR MyNSCFile(&quot;\\\\servername\\share\\MyPubPoint.nsc&quot;); 
CComBSTR MyNSCURL(&quot;\\\\servername\\share\\PubPoint.nsc&quot;); 
CComBSTR MyASXFile(&quot;\\\\servername\\share\\MyPubPoint.asx&quot;);
</code></pre>
<p>Das wird doch wohl irgenwer wissen, oder???</p>
]]></description><link>https://www.c-plusplus.net/forum/post/417365</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/417365</guid><dc:creator><![CDATA[Trikor]]></dc:creator><pubDate>Tue, 16 Dec 2003 12:09:55 GMT</pubDate></item></channel></rss>