<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: RE: CSocketReader implementation for MPEG TS in Intel® Integrated Performance Primitives</title>
    <link>https://community.intel.com/t5/Intel-Integrated-Performance/RE-CSocketReader-implementation-for-MPEG-TS/m-p/890549#M11403</link>
    <description>&lt;P&gt;Hello,&lt;/P&gt;
&lt;P&gt;I am posting the code in the attached zip file, there are 4 files:&lt;/P&gt;
&lt;P&gt;SocketReader.h, SocketReade.cpp: Derived from UMC::DataReader. Internally it creates a socket, spawns a new thread which writes the incoming TS packetsto a circular buffer. The demuxer thread picks up the data through the normal ReadData, CacheData, and MovePosition operations.&lt;/P&gt;
&lt;P&gt;CircularBuffer.h, .cpp: I downloadedthis circular buffer code from codeproject.com (original author and copyright notice included).I made the following changes to the original code:&lt;/P&gt;
&lt;P&gt;Fixed race condition and memory leakbugs,&lt;/P&gt;
&lt;P&gt;Replaced allWindows specific API with standardC++. (E.g. variable typedefs, synchronization objects, etc.)&lt;/P&gt;
&lt;P&gt;Instead of using mutexes to synchronize read/write operations from multiple threads I use the one byte open strategy to prevent data corruption. (&lt;A href="http://en.wikipedia.org/wiki/Circular_buffer"&gt;http://en.wikipedia.org/wiki/Circular_buffer&lt;/A&gt;). Thisis sufficientfor the one reader thread and one writer thread model.&lt;/P&gt;
&lt;P&gt;Note: The socket code is Windows specific and I have not tested the multicast option.&lt;/P&gt;</description>
    <pubDate>Tue, 09 Sep 2008 18:05:26 GMT</pubDate>
    <dc:creator>pushkar_p</dc:creator>
    <dc:date>2008-09-09T18:05:26Z</dc:date>
    <item>
      <title>RE: CSocketReader implementation for MPEG TS</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/RE-CSocketReader-implementation-for-MPEG-TS/m-p/890547#M11401</link>
      <description>&lt;P&gt;Hello,&lt;/P&gt;
&lt;P&gt;I have implemented CSocketReader class derived from DataReader that reads a UDP based MPEG TS stream. I have adhered to UMC coding style as much as possible. I would like to contribute this to the IPP library or to other people who are interested.&lt;/P&gt;
&lt;P&gt;If anyone is interested please let me know and where to upload the files?&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;</description>
      <pubDate>Mon, 08 Sep 2008 22:34:02 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/RE-CSocketReader-implementation-for-MPEG-TS/m-p/890547#M11401</guid>
      <dc:creator>pushkar_p</dc:creator>
      <dc:date>2008-09-08T22:34:02Z</dc:date>
    </item>
    <item>
      <title>Re: RE: CSocketReader implementation for MPEG TS</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/RE-CSocketReader-implementation-for-MPEG-TS/m-p/890548#M11402</link>
      <description>&lt;P&gt;Hello,&lt;/P&gt;
&lt;P&gt;Thanks you for help to the community. I think you can attach your implementation to this thread, so people can take your implementation from here.&lt;/P&gt;
&lt;P&gt;Regards,&lt;BR /&gt; Vladimir&lt;/P&gt;</description>
      <pubDate>Tue, 09 Sep 2008 04:33:23 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/RE-CSocketReader-implementation-for-MPEG-TS/m-p/890548#M11402</guid>
      <dc:creator>Vladimir_Dudnik</dc:creator>
      <dc:date>2008-09-09T04:33:23Z</dc:date>
    </item>
    <item>
      <title>Re: RE: CSocketReader implementation for MPEG TS</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/RE-CSocketReader-implementation-for-MPEG-TS/m-p/890549#M11403</link>
      <description>&lt;P&gt;Hello,&lt;/P&gt;
&lt;P&gt;I am posting the code in the attached zip file, there are 4 files:&lt;/P&gt;
&lt;P&gt;SocketReader.h, SocketReade.cpp: Derived from UMC::DataReader. Internally it creates a socket, spawns a new thread which writes the incoming TS packetsto a circular buffer. The demuxer thread picks up the data through the normal ReadData, CacheData, and MovePosition operations.&lt;/P&gt;
&lt;P&gt;CircularBuffer.h, .cpp: I downloadedthis circular buffer code from codeproject.com (original author and copyright notice included).I made the following changes to the original code:&lt;/P&gt;
&lt;P&gt;Fixed race condition and memory leakbugs,&lt;/P&gt;
&lt;P&gt;Replaced allWindows specific API with standardC++. (E.g. variable typedefs, synchronization objects, etc.)&lt;/P&gt;
&lt;P&gt;Instead of using mutexes to synchronize read/write operations from multiple threads I use the one byte open strategy to prevent data corruption. (&lt;A href="http://en.wikipedia.org/wiki/Circular_buffer"&gt;http://en.wikipedia.org/wiki/Circular_buffer&lt;/A&gt;). Thisis sufficientfor the one reader thread and one writer thread model.&lt;/P&gt;
&lt;P&gt;Note: The socket code is Windows specific and I have not tested the multicast option.&lt;/P&gt;</description>
      <pubDate>Tue, 09 Sep 2008 18:05:26 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/RE-CSocketReader-implementation-for-MPEG-TS/m-p/890549#M11403</guid>
      <dc:creator>pushkar_p</dc:creator>
      <dc:date>2008-09-09T18:05:26Z</dc:date>
    </item>
    <item>
      <title>Re: RE: CSocketReader implementation for MPEG TS</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/RE-CSocketReader-implementation-for-MPEG-TS/m-p/890550#M11404</link>
      <description>&lt;P&gt;Hello,&lt;/P&gt;
&lt;P&gt;I just found a serious bug in my code, I was calling WSACleanup() multiple times, which was causing later stream playbacks to fail. WSACleanup() should be called only once for each call to WSAStartup(...). So I am updating the attachment.&lt;/P&gt;</description>
      <pubDate>Tue, 09 Sep 2008 22:34:34 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/RE-CSocketReader-implementation-for-MPEG-TS/m-p/890550#M11404</guid>
      <dc:creator>pushkar_p</dc:creator>
      <dc:date>2008-09-09T22:34:34Z</dc:date>
    </item>
  </channel>
</rss>

