[prev in list] [next in list] [prev in thread] [next in thread]
List: helix-datatype-cvs
Subject: [Datatype-cvs]
From: jgordon () helixcommunity ! org
Date: 2011-02-23 22:34:39
Message-ID: 201102232234.p1NMYTBw014700 () mailer ! progressive-comp ! com
[Download RAW message or body]
Update of /cvsroot/datatype/mpeg2ts/demuxer
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv4580
Modified Files:
Tag: PRODUCER_14_0_RN
Umakefil tsdemuxer.cpp
Log Message:
Synopsis
========
Adds a plugin to support raw TS streams
Branches: PRODUCER_14_0_RN, HEAD
Reviewer: qluo
Description
===========
A file format plugin for raw (UDP/multicast) TS streams.
A lot like the TS file format plugin (for files) but it
reads from a socket instead of a file. :)
TODO: loss and out-of-order packet handling, timeouts,
possible buffer management updates
Files Affected
==============
datatype/mpeg2ts/demuxer/Umakefil
datatype/mpeg2ts/demuxer/tsdemuxer.cpp
datatype/mpeg2ts/demuxer/pub/tsdemuxer.h
new:
datatype/mpeg2ts/stream/tsstreamff.cpp
datatype/mpeg2ts/stream/pub/tsstreamff.h
datatype/mpeg2ts/stream/guids.cpp
datatype/mpeg2ts/stream/Umakefil
datatype/mpeg2ts/stream/win.pcf
datatype/mpeg2ts/stream/platform/win/tsstreamff.rc
datatype/mpeg2ts/stream/pub/tsstreamff.ver
Index: Umakefil
===================================================================
RCS file: /cvsroot/datatype/mpeg2ts/demuxer/Umakefil,v
retrieving revision 1.1
retrieving revision 1.1.10.1
diff -u -d -r1.1 -r1.1.10.1
--- Umakefil 7 May 2010 22:04:58 -0000 1.1
+++ Umakefil 23 Feb 2011 22:34:35 -0000 1.1.10.1
@@ -63,7 +63,8 @@
project.AddModuleIncludes("common/include",
"common/util/pub",
"common/container/pub",
- "common/dbgtool/pub")
+ "common/dbgtool/pub",
+ "common/log/logutil/pub")
project.AddIncludes("./payload/pub")
Index: tsdemuxer.cpp
===================================================================
RCS file: /cvsroot/datatype/mpeg2ts/demuxer/tsdemuxer.cpp,v
retrieving revision 1.6.2.1
retrieving revision 1.6.2.2
diff -u -d -r1.6.2.1 -r1.6.2.2
--- tsdemuxer.cpp 23 Feb 2011 03:10:16 -0000 1.6.2.1
+++ tsdemuxer.cpp 23 Feb 2011 22:34:35 -0000 1.6.2.2
@@ -52,11 +52,13 @@
#include "hxassert.h"
#include "pckunpck.h"
#include "tsdemuxer.h"
+#include "hxtlogutil.h"
+
/*
* constructor, destructor
*/
-CTSDemuxer::CTSDemuxer(IUnknown* pContext, HXBOOL bRawMode)
+CTSDemuxer::CTSDemuxer(IUnknown* pContext, HXBOOL bRawMode, HXBOOL bLossMode)
: m_ulProgramCount(0)
, m_usCurrentProgramNum(0)
, m_pCurrentProgram(NULL)
@@ -64,6 +66,7 @@
, m_bSeenPMT(FALSE)
, m_ulFilesize(0)
, m_bRawMode(bRawMode)
+ , m_bLossMode(bLossMode)
, m_bUseRawDTS(FALSE)
, m_u64FirstDTSBaseOffset(0)
{
@@ -795,6 +798,16 @@
{
// ignore duplicate packet
}
+ else if (m_bLossMode)
+ {
+ // XXXJDGTODO Add actual loss and out-of-order handling
+ HXLOGL3(HXLOG_MPTS, "Stream ID %hu expecting seq %hu, got %hu",
+ pESStream->nStreamID,
+ (pESStream->uContinuityCounter + 1)&0xf,
+ pTs_header->uContinuityCounter);
+
+ pESStream->uContinuityCounter = pTs_header->uContinuityCounter;
+ }
else
{
HX_ASSERT(FALSE);
@@ -930,6 +943,7 @@
//find out where the new AU boundary is
BYTE* pNewAU = pESStream->pPayloadHandler->FindAU(pESStream->pESData \
+ pESStream->ulCurrentPESOffset,
pESStream->ulBufferOffset - \
pESStream->ulCurrentPESOffset); +
if (pNewAU)
{
pESStream->ulNewAUOffset = pNewAU - pESStream->pESData;
_______________________________________________
Datatype-cvs mailing list
Datatype-cvs@helixcommunity.org
http://lists.helixcommunity.org/mailman/listinfo/datatype-cvs
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic