From 62b5ec90e68742957e88889c2b3c606a8a536e09 Mon Sep 17 00:00:00 2001 From: Felix Domke Date: Fri, 12 May 2006 17:30:42 +0000 Subject: match declaration to signal --- lib/dvb/pesparse.cpp | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) (limited to 'lib/dvb/pesparse.cpp') diff --git a/lib/dvb/pesparse.cpp b/lib/dvb/pesparse.cpp index 7e05c96a..d96477be 100644 --- a/lib/dvb/pesparse.cpp +++ b/lib/dvb/pesparse.cpp @@ -1,3 +1,4 @@ +#include #include #include @@ -16,8 +17,11 @@ void ePESParser::setStreamID(unsigned char id) m_header[3] = id; } -void ePESParser::processData(unsigned char *p, int len) +void ePESParser::processData(const __u8 *p, int len) { + int i; + eDebug("process %d bytes of pes data, %02x, %02x, %02x, %02x, %02x, %02x", len, p[0], p[1], p[2], p[3], p[4], p[5]); +#if 0 /* this is a state machine, handling arbitary amounts of pes-formatted data. */ while (len) { @@ -40,9 +44,12 @@ void ePESParser::processData(unsigned char *p, int len) } else { if (m_pes_position < 4) - if (*p != "\x00\x00\x01\xbd"[m_pes_position]) + if (*p != m_header[m_pes_position]) { + eDebug("sync lost at %d (%02x)", m_pes_position, *p); m_pes_position = 0; + while (m_header[m_pes_position] == *p) /* guaranteed to stop at the old m_pes_position */ + m_pes_position++; p++; len--; continue; @@ -51,7 +58,9 @@ void ePESParser::processData(unsigned char *p, int len) if (m_pes_position == 6) { m_pes_length = ((m_pes_buffer[4] << 8) | m_pes_buffer[5]) + 6; + eDebug("pes length: %d", m_pes_length); } } } +#endif } -- cgit v1.2.3