#include <MPEGVideoStreamParser.hh>
Inheritance diagram for MPEGVideoStreamParser:


Public Member Functions | |
| MPEGVideoStreamParser (MPEGVideoStreamFramer *usingSource, FramedSource *inputSource) | |
| virtual | ~MPEGVideoStreamParser () |
| void | registerReadInterest (unsigned char *to, unsigned maxSize) |
| virtual unsigned | parse ()=0 |
| unsigned | numTruncatedBytes () const |
| virtual void | flushInput () |
Protected Types | |
| typedef void( | clientContinueFunc )(void *clientData, unsigned char *ptr, unsigned size, struct timeval presentationTime) |
Protected Member Functions | |
| void | setParseState () |
| void | saveByte (u_int8_t byte) |
| void | save4Bytes (u_int32_t word) |
| void | saveToNextCode (u_int32_t &curWord) |
| void | skipToNextCode (u_int32_t &curWord) |
| unsigned | curFrameSize () |
| void | saveParserState () |
| u_int32_t | get4Bytes () |
| u_int32_t | test4Bytes () |
| u_int16_t | get2Bytes () |
| u_int8_t | get1Byte () |
| u_int8_t | test1Byte (unsigned numBytes) |
| void | getBytes (u_int8_t *to, unsigned numBytes) |
| void | testBytes (u_int8_t *to, unsigned numBytes) |
| void | skipBytes (unsigned numBytes) |
| void | skipBits (unsigned numBits) |
| unsigned | getBits (unsigned numBits) |
| unsigned | curOffset () const |
| unsigned & | totNumValidBytes () |
| Boolean | haveSeenEOF () const |
| unsigned | bankSize () const |
Protected Attributes | |
| MPEGVideoStreamFramer * | fUsingSource |
| unsigned char * | fStartOfFrame |
| unsigned char * | fTo |
| unsigned char * | fLimit |
| unsigned | fNumTruncatedBytes |
| unsigned char * | fSavedTo |
| unsigned | fSavedNumTruncatedBytes |
Private Member Functions | |
| virtual void | restoreSavedParserState () |
Definition at line 33 of file MPEGVideoStreamParser.hh.
typedef void( StreamParser::clientContinueFunc)(void *clientData, unsigned char *ptr, unsigned size, struct timeval presentationTime) [protected, inherited] |
Definition at line 33 of file StreamParser.hh.
| MPEGVideoStreamParser::MPEGVideoStreamParser | ( | MPEGVideoStreamFramer * | usingSource, | |
| FramedSource * | inputSource | |||
| ) |
Definition at line 24 of file MPEGVideoStreamParser.cpp.
00026 : StreamParser(inputSource, FramedSource::handleClosure, usingSource, 00027 &MPEGVideoStreamFramer::continueReadProcessing, usingSource), 00028 fUsingSource(usingSource) { 00029 }
| MPEGVideoStreamParser::~MPEGVideoStreamParser | ( | ) | [virtual] |
| void MPEGVideoStreamParser::registerReadInterest | ( | unsigned char * | to, | |
| unsigned | maxSize | |||
| ) |
Definition at line 40 of file MPEGVideoStreamParser.cpp.
References fLimit, fNumTruncatedBytes, fSavedNumTruncatedBytes, fSavedTo, fStartOfFrame, and fTo.
Referenced by MPEGVideoStreamFramer::doGetNextFrame().
00041 { 00042 fStartOfFrame = fTo = fSavedTo = to; 00043 fLimit = to + maxSize; 00044 fNumTruncatedBytes = fSavedNumTruncatedBytes = 0; 00045 }
| virtual unsigned MPEGVideoStreamParser::parse | ( | ) | [pure virtual] |
Implemented in H264VideoStreamParser, MPEG1or2VideoStreamParser, and MPEG4VideoStreamParser.
Referenced by MPEGVideoStreamFramer::continueReadProcessing().
| unsigned MPEGVideoStreamParser::numTruncatedBytes | ( | ) | const [inline] |
Definition at line 45 of file MPEGVideoStreamParser.hh.
References fNumTruncatedBytes.
Referenced by MPEGVideoStreamFramer::continueReadProcessing().
00045 { return fNumTruncatedBytes; }
| void MPEGVideoStreamParser::setParseState | ( | ) | [inline, protected] |
Definition at line 48 of file MPEGVideoStreamParser.hh.
References fNumTruncatedBytes, fSavedNumTruncatedBytes, fSavedTo, fTo, and StreamParser::saveParserState().
Referenced by MPEG4VideoStreamParser::flushInput(), MPEG1or2VideoStreamParser::flushInput(), H264VideoStreamParser::parse(), MPEG1or2VideoStreamParser::parseGOPHeader(), MPEG4VideoStreamParser::parseGroupOfVideoObjectPlane(), MPEG1or2VideoStreamParser::parsePictureHeader(), MPEG1or2VideoStreamParser::parseSlice(), MPEG4VideoStreamParser::parseVideoObjectLayer(), MPEG4VideoStreamParser::parseVideoObjectPlane(), MPEG1or2VideoStreamParser::parseVideoSequenceHeader(), MPEG4VideoStreamParser::parseVisualObject(), MPEG4VideoStreamParser::parseVisualObjectSequence(), MPEG4VideoStreamParser::parseVisualObjectSequenceEndCode(), MPEG4VideoStreamParser::setParseState(), and MPEG1or2VideoStreamParser::setParseState().
00048 { 00049 fSavedTo = fTo; 00050 fSavedNumTruncatedBytes = fNumTruncatedBytes; 00051 saveParserState(); 00052 }
| void MPEGVideoStreamParser::saveByte | ( | u_int8_t | byte | ) | [inline, protected] |
Definition at line 55 of file MPEGVideoStreamParser.hh.
References fLimit, fNumTruncatedBytes, and fTo.
Referenced by H264VideoStreamParser::parse(), MPEG4VideoStreamParser::parseGroupOfVideoObjectPlane(), MPEG4VideoStreamParser::parseVideoObjectPlane(), MPEG4VideoStreamParser::parseVisualObject(), MPEG4VideoStreamParser::parseVisualObjectSequence(), and saveToNextCode().
00055 { 00056 if (fTo >= fLimit) { // there's no space left 00057 ++fNumTruncatedBytes; 00058 return; 00059 } 00060 00061 *fTo++ = byte; 00062 }
| void MPEGVideoStreamParser::save4Bytes | ( | u_int32_t | word | ) | [inline, protected] |
Definition at line 64 of file MPEGVideoStreamParser.hh.
References fLimit, fNumTruncatedBytes, and fTo.
Referenced by H264VideoStreamParser::parse(), MPEG1or2VideoStreamParser::parseGOPHeader(), MPEG4VideoStreamParser::parseGroupOfVideoObjectPlane(), MPEG1or2VideoStreamParser::parsePictureHeader(), MPEG4VideoStreamParser::parseVideoObjectPlane(), MPEG1or2VideoStreamParser::parseVideoSequenceHeader(), MPEG4VideoStreamParser::parseVisualObject(), MPEG4VideoStreamParser::parseVisualObjectSequence(), MPEG4VideoStreamParser::parseVisualObjectSequenceEndCode(), and saveToNextCode().
00064 { 00065 if (fTo+4 > fLimit) { // there's no space left 00066 fNumTruncatedBytes += 4; 00067 return; 00068 } 00069 00070 *fTo++ = word>>24; *fTo++ = word>>16; *fTo++ = word>>8; *fTo++ = word; 00071 }
| void MPEGVideoStreamParser::saveToNextCode | ( | u_int32_t & | curWord | ) | [inline, protected] |
Definition at line 74 of file MPEGVideoStreamParser.hh.
References StreamParser::get1Byte(), StreamParser::get4Bytes(), save4Bytes(), and saveByte().
Referenced by MPEG1or2VideoStreamParser::parseGOPHeader(), MPEG4VideoStreamParser::parseGroupOfVideoObjectPlane(), MPEG1or2VideoStreamParser::parsePictureHeader(), MPEG1or2VideoStreamParser::parseSlice(), MPEG4VideoStreamParser::parseVideoObjectLayer(), MPEG4VideoStreamParser::parseVideoObjectPlane(), MPEG1or2VideoStreamParser::parseVideoSequenceHeader(), MPEG4VideoStreamParser::parseVisualObject(), and MPEG4VideoStreamParser::parseVisualObjectSequence().
00074 { 00075 saveByte(curWord>>24); 00076 curWord = (curWord<<8)|get1Byte(); 00077 while ((curWord&0xFFFFFF00) != 0x00000100) { 00078 if ((unsigned)(curWord&0xFF) > 1) { 00079 // a sync word definitely doesn't begin anywhere in "curWord" 00080 save4Bytes(curWord); 00081 curWord = get4Bytes(); 00082 } else { 00083 // a sync word might begin in "curWord", although not at its start 00084 saveByte(curWord>>24); 00085 unsigned char newByte = get1Byte(); 00086 curWord = (curWord<<8)|newByte; 00087 } 00088 } 00089 }
| void MPEGVideoStreamParser::skipToNextCode | ( | u_int32_t & | curWord | ) | [inline, protected] |
Definition at line 92 of file MPEGVideoStreamParser.hh.
References StreamParser::get1Byte(), and StreamParser::get4Bytes().
Referenced by MPEG1or2VideoStreamParser::parsePictureHeader(), and MPEG1or2VideoStreamParser::parseSlice().
00092 { 00093 curWord = (curWord<<8)|get1Byte(); 00094 while ((curWord&0xFFFFFF00) != 0x00000100) { 00095 if ((unsigned)(curWord&0xFF) > 1) { 00096 // a sync word definitely doesn't begin anywhere in "curWord" 00097 curWord = get4Bytes(); 00098 } else { 00099 // a sync word might begin in "curWord", although not at its start 00100 unsigned char newByte = get1Byte(); 00101 curWord = (curWord<<8)|newByte; 00102 } 00103 } 00104 }
| unsigned MPEGVideoStreamParser::curFrameSize | ( | ) | [inline, protected] |
Definition at line 114 of file MPEGVideoStreamParser.hh.
References fStartOfFrame, and fTo.
Referenced by MPEG4VideoStreamParser::analyzeVOLHeader(), MPEG4VideoStreamParser::getNextFrameBit(), H264VideoStreamParser::parse(), MPEG1or2VideoStreamParser::parseGOPHeader(), MPEG4VideoStreamParser::parseGroupOfVideoObjectPlane(), MPEG1or2VideoStreamParser::parsePictureHeader(), MPEG1or2VideoStreamParser::parseSlice(), MPEG4VideoStreamParser::parseVideoObjectLayer(), MPEG4VideoStreamParser::parseVideoObjectPlane(), MPEG1or2VideoStreamParser::parseVideoSequenceHeader(), MPEG4VideoStreamParser::parseVisualObject(), MPEG4VideoStreamParser::parseVisualObjectSequence(), MPEG4VideoStreamParser::parseVisualObjectSequenceEndCode(), and MPEG1or2VideoStreamParser::saveCurrentVSH().
00114 { return fTo - fStartOfFrame; }
| void MPEGVideoStreamParser::restoreSavedParserState | ( | ) | [private, virtual] |
Reimplemented from StreamParser.
Definition at line 34 of file MPEGVideoStreamParser.cpp.
References fNumTruncatedBytes, fSavedNumTruncatedBytes, fSavedTo, fTo, and StreamParser::restoreSavedParserState().
00034 { 00035 StreamParser::restoreSavedParserState(); 00036 fTo = fSavedTo; 00037 fNumTruncatedBytes = fSavedNumTruncatedBytes; 00038 }
| void StreamParser::flushInput | ( | ) | [virtual, inherited] |
Reimplemented in H264VideoStreamParser, MPEG1or2VideoStreamParser, and MPEG4VideoStreamParser.
Definition at line 28 of file StreamParser.cpp.
References StreamParser::fCurParserIndex, StreamParser::fRemainingUnparsedBits, StreamParser::fSavedParserIndex, StreamParser::fSavedRemainingUnparsedBits, and StreamParser::fTotNumValidBytes.
Referenced by MPEGVideoStreamFramer::flushInput(), MPEG4VideoStreamParser::flushInput(), MPEG1or2VideoStreamParser::flushInput(), MPEG1or2Demux::flushInput(), MPEG1or2AudioStreamFramer::flushInput(), H264VideoStreamParser::flushInput(), AC3AudioStreamFramer::flushInput(), and MatroskaFileParser::resetStateAfterSeeking().
00028 { 00029 fCurParserIndex = fSavedParserIndex = 0; 00030 fSavedRemainingUnparsedBits = fRemainingUnparsedBits = 0; 00031 fTotNumValidBytes = 0; 00032 }
| void StreamParser::saveParserState | ( | ) | [protected, inherited] |
Definition at line 58 of file StreamParser.cpp.
References StreamParser::fCurParserIndex, StreamParser::fRemainingUnparsedBits, StreamParser::fSavedParserIndex, and StreamParser::fSavedRemainingUnparsedBits.
Referenced by MPEG1or2AudioStreamParser::parse(), AC3AudioStreamParser::parseFrame(), setParseState(), MPEGProgramStreamParser::setParseState(), MatroskaFileParser::setParseState(), and H263plusVideoStreamParser::setParseState().
00058 { 00059 fSavedParserIndex = fCurParserIndex; 00060 fSavedRemainingUnparsedBits = fRemainingUnparsedBits; 00061 }
| u_int32_t StreamParser::get4Bytes | ( | ) | [inline, protected, inherited] |
Definition at line 46 of file StreamParser.hh.
References StreamParser::fCurParserIndex, StreamParser::fRemainingUnparsedBits, and StreamParser::test4Bytes().
Referenced by AC3AudioStreamParser::parseFrame(), MPEG1or2VideoStreamParser::parseGOPHeader(), MPEG4VideoStreamParser::parseGroupOfVideoObjectPlane(), MPEGProgramStreamParser::parsePackHeader(), MPEGProgramStreamParser::parsePESPacket(), MPEG1or2VideoStreamParser::parsePictureHeader(), MPEG4VideoStreamParser::parseVideoObjectLayer(), MPEG4VideoStreamParser::parseVideoObjectPlane(), MPEG1or2VideoStreamParser::parseVideoSequenceHeader(), MPEG4VideoStreamParser::parseVisualObject(), MPEG4VideoStreamParser::parseVisualObjectSequence(), saveToNextCode(), and skipToNextCode().
00046 { // byte-aligned; returned in big-endian order 00047 u_int32_t result = test4Bytes(); 00048 fCurParserIndex += 4; 00049 fRemainingUnparsedBits = 0; 00050 00051 return result; 00052 }
| u_int32_t StreamParser::test4Bytes | ( | ) | [inline, protected, inherited] |
Definition at line 53 of file StreamParser.hh.
References StreamParser::ensureValidBytes(), and StreamParser::nextToParse().
Referenced by StreamParser::get4Bytes(), StreamParser::getBits(), MPEG1or2AudioStreamParser::parse(), H264VideoStreamParser::parse(), AC3AudioStreamParser::parseFrame(), MPEG1or2VideoStreamParser::parseGOPHeader(), MPEGProgramStreamParser::parsePackHeader(), MPEGProgramStreamParser::parsePESPacket(), MPEGProgramStreamParser::parseSystemHeader(), MPEG1or2VideoStreamParser::parseVideoSequenceHeader(), and MPEG4VideoStreamParser::parseVisualObjectSequence().
00053 { // as above, but doesn't advance ptr 00054 ensureValidBytes(4); 00055 00056 unsigned char const* ptr = nextToParse(); 00057 return (ptr[0]<<24)|(ptr[1]<<16)|(ptr[2]<<8)|ptr[3]; 00058 }
| u_int16_t StreamParser::get2Bytes | ( | ) | [inline, protected, inherited] |
Definition at line 60 of file StreamParser.hh.
References StreamParser::ensureValidBytes(), StreamParser::fCurParserIndex, StreamParser::fRemainingUnparsedBits, and StreamParser::nextToParse().
Referenced by MPEGProgramStreamParser::parsePESPacket(), and MPEGProgramStreamParser::parseSystemHeader().
00060 { 00061 ensureValidBytes(2); 00062 00063 unsigned char const* ptr = nextToParse(); 00064 u_int16_t result = (ptr[0]<<8)|ptr[1]; 00065 00066 fCurParserIndex += 2; 00067 fRemainingUnparsedBits = 0; 00068 00069 return result; 00070 }
| u_int8_t StreamParser::get1Byte | ( | ) | [inline, protected, inherited] |
Definition at line 72 of file StreamParser.hh.
References StreamParser::curBank(), StreamParser::ensureValidBytes(), StreamParser::fCurParserIndex, and StreamParser::fRemainingUnparsedBits.
Referenced by MatroskaFileParser::deliverFrameWithinBlock(), H264VideoStreamParser::parse(), MatroskaFileParser::parseBlock(), MatroskaFileParser::parseEBMLNumber(), MatroskaFileParser::parseEBMLVal_binary(), MatroskaFileParser::parseEBMLVal_string(), MatroskaFileParser::parseEBMLVal_unsigned64(), MPEG1or2VideoStreamParser::parseGOPHeader(), H263plusVideoStreamParser::parseH263Frame(), MPEGProgramStreamParser::parsePackHeader(), MPEGProgramStreamParser::parsePESPacket(), MPEG4VideoStreamParser::parseVideoObjectPlane(), MPEG1or2VideoStreamParser::parseVideoSequenceHeader(), MPEG4VideoStreamParser::parseVisualObject(), MPEG4VideoStreamParser::parseVisualObjectSequence(), saveToNextCode(), and skipToNextCode().
00072 { // byte-aligned 00073 ensureValidBytes(1); 00074 fRemainingUnparsedBits = 0; 00075 return curBank()[fCurParserIndex++]; 00076 }
| u_int8_t StreamParser::test1Byte | ( | unsigned | numBytes | ) | [inline, protected, inherited] |
Definition at line 77 of file StreamParser.hh.
References StreamParser::ensureValidBytes(), and StreamParser::nextToParse().
00077 { // as above, but doesn't advance ptr 00078 ensureValidBytes(1); 00079 return nextToParse()[0]; 00080 }
| void StreamParser::getBytes | ( | u_int8_t * | to, | |
| unsigned | numBytes | |||
| ) | [inline, protected, inherited] |
Definition at line 82 of file StreamParser.hh.
References StreamParser::fCurParserIndex, StreamParser::fRemainingUnparsedBits, and StreamParser::testBytes().
Referenced by MatroskaFileParser::deliverFrameBytes(), MPEG1or2AudioStreamParser::parse(), AC3AudioStreamParser::parseFrame(), MPEG4VideoStreamParser::parseGroupOfVideoObjectPlane(), H263plusVideoStreamParser::parseH263Frame(), and MPEGProgramStreamParser::parsePESPacket().
00082 { 00083 testBytes(to, numBytes); 00084 fCurParserIndex += numBytes; 00085 fRemainingUnparsedBits = 0; 00086 }
| void StreamParser::testBytes | ( | u_int8_t * | to, | |
| unsigned | numBytes | |||
| ) | [inline, protected, inherited] |
Definition at line 87 of file StreamParser.hh.
References StreamParser::ensureValidBytes(), and StreamParser::nextToParse().
Referenced by StreamParser::getBytes(), and H264VideoStreamParser::parse().
00087 { // as above, but doesn't advance ptr 00088 ensureValidBytes(numBytes); 00089 memmove(to, nextToParse(), numBytes); 00090 }
| void StreamParser::skipBytes | ( | unsigned | numBytes | ) | [inline, protected, inherited] |
Definition at line 91 of file StreamParser.hh.
References StreamParser::ensureValidBytes(), and StreamParser::fCurParserIndex.
Referenced by MatroskaFileParser::deliverFrameBytes(), MPEG1or2AudioStreamParser::parse(), H264VideoStreamParser::parse(), MatroskaFileParser::parseBlock(), AC3AudioStreamParser::parseFrame(), MPEGProgramStreamParser::parsePackHeader(), MPEGProgramStreamParser::parsePESPacket(), MPEGProgramStreamParser::parseSystemHeader(), and MatroskaFileParser::skipHeader().
00091 { 00092 ensureValidBytes(numBytes); 00093 fCurParserIndex += numBytes; 00094 }
| void StreamParser::skipBits | ( | unsigned | numBits | ) | [protected, inherited] |
Definition at line 68 of file StreamParser.cpp.
References StreamParser::ensureValidBytes(), StreamParser::fCurParserIndex, and StreamParser::fRemainingUnparsedBits.
Referenced by MPEGProgramStreamParser::parsePackHeader().
00068 { 00069 if (numBits <= fRemainingUnparsedBits) { 00070 fRemainingUnparsedBits -= numBits; 00071 } else { 00072 numBits -= fRemainingUnparsedBits; 00073 00074 unsigned numBytesToExamine = (numBits+7)/8; // round up 00075 ensureValidBytes(numBytesToExamine); 00076 fCurParserIndex += numBytesToExamine; 00077 00078 fRemainingUnparsedBits = 8*numBytesToExamine - numBits; 00079 } 00080 }
| unsigned StreamParser::getBits | ( | unsigned | numBits | ) | [protected, inherited] |
Definition at line 82 of file StreamParser.cpp.
References StreamParser::fCurParserIndex, StreamParser::fRemainingUnparsedBits, StreamParser::lastParsed(), and StreamParser::test4Bytes().
Referenced by MPEGProgramStreamParser::parsePackHeader(), and MPEGProgramStreamParser::parsePESPacket().
00082 { 00083 if (numBits <= fRemainingUnparsedBits) { 00084 unsigned char lastByte = *lastParsed(); 00085 lastByte >>= (fRemainingUnparsedBits - numBits); 00086 fRemainingUnparsedBits -= numBits; 00087 00088 return (unsigned)lastByte &~ ((~0)<<numBits); 00089 } else { 00090 unsigned char lastByte; 00091 if (fRemainingUnparsedBits > 0) { 00092 lastByte = *lastParsed(); 00093 } else { 00094 lastByte = 0; 00095 } 00096 00097 unsigned remainingBits = numBits - fRemainingUnparsedBits; // > 0 00098 00099 // For simplicity, read the next 4 bytes, even though we might not 00100 // need all of them here: 00101 unsigned result = test4Bytes(); 00102 00103 result >>= (32 - remainingBits); 00104 result |= (lastByte << remainingBits); 00105 if (numBits < 32) result &=~ ((~0)<<numBits); 00106 00107 unsigned const numRemainingBytes = (remainingBits+7)/8; 00108 fCurParserIndex += numRemainingBytes; 00109 fRemainingUnparsedBits = 8*numRemainingBytes - remainingBits; 00110 00111 return result; 00112 } 00113 }
| unsigned StreamParser::curOffset | ( | ) | const [inline, protected, inherited] |
Definition at line 100 of file StreamParser.hh.
References StreamParser::fCurParserIndex.
Referenced by H264VideoStreamParser::parse(), MatroskaFileParser::parseBlock(), and MPEGProgramStreamParser::parsePESPacket().
00100 { return fCurParserIndex; }
| unsigned& StreamParser::totNumValidBytes | ( | ) | [inline, protected, inherited] |
Definition at line 102 of file StreamParser.hh.
References StreamParser::fTotNumValidBytes.
Referenced by H264VideoStreamParser::parse(), and AC3AudioStreamParser::testStreamCode().
00102 { return fTotNumValidBytes; }
| Boolean StreamParser::haveSeenEOF | ( | ) | const [inline, protected, inherited] |
Definition at line 104 of file StreamParser.hh.
References StreamParser::fHaveSeenEOF.
Referenced by H264VideoStreamParser::parse().
00104 { return fHaveSeenEOF; }
| unsigned StreamParser::bankSize | ( | ) | const [protected, inherited] |
Definition at line 115 of file StreamParser.cpp.
References BANK_SIZE.
Referenced by MatroskaFileParser::deliverFrameBytes(), and MatroskaFileParser::skipHeader().
00115 { 00116 return BANK_SIZE; 00117 }
MPEGVideoStreamFramer* MPEGVideoStreamParser::fUsingSource [protected] |
Definition at line 107 of file MPEGVideoStreamParser.hh.
Referenced by MPEG4VideoStreamParser::usingSource(), MPEG1or2VideoStreamParser::usingSource(), and H264VideoStreamParser::usingSource().
unsigned char* MPEGVideoStreamParser::fStartOfFrame [protected] |
Definition at line 110 of file MPEGVideoStreamParser.hh.
Referenced by curFrameSize(), MPEG4VideoStreamParser::getNextFrameBit(), H264VideoStreamParser::parse(), MPEG4VideoStreamParser::parseVideoObjectLayer(), MPEG4VideoStreamParser::parseVisualObject(), MPEG4VideoStreamParser::parseVisualObjectSequence(), registerReadInterest(), H264VideoStreamParser::removeEmulationBytes(), MPEG1or2VideoStreamParser::saveCurrentVSH(), and MPEG1or2VideoStreamParser::useSavedVSH().
unsigned char* MPEGVideoStreamParser::fTo [protected] |
Definition at line 111 of file MPEGVideoStreamParser.hh.
Referenced by curFrameSize(), H264VideoStreamParser::parse(), registerReadInterest(), H264VideoStreamParser::removeEmulationBytes(), restoreSavedParserState(), save4Bytes(), saveByte(), and setParseState().
unsigned char* MPEGVideoStreamParser::fLimit [protected] |
Definition at line 112 of file MPEGVideoStreamParser.hh.
Referenced by registerReadInterest(), save4Bytes(), saveByte(), and MPEG1or2VideoStreamParser::useSavedVSH().
unsigned MPEGVideoStreamParser::fNumTruncatedBytes [protected] |
Definition at line 113 of file MPEGVideoStreamParser.hh.
Referenced by numTruncatedBytes(), registerReadInterest(), restoreSavedParserState(), save4Bytes(), saveByte(), and setParseState().
unsigned char* MPEGVideoStreamParser::fSavedTo [protected] |
Definition at line 115 of file MPEGVideoStreamParser.hh.
Referenced by registerReadInterest(), restoreSavedParserState(), and setParseState().
unsigned MPEGVideoStreamParser::fSavedNumTruncatedBytes [protected] |
Definition at line 116 of file MPEGVideoStreamParser.hh.
Referenced by registerReadInterest(), restoreSavedParserState(), and setParseState().
1.5.2