00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #include "MPEGVideoStreamParser.hh"
00022
00023 MPEGVideoStreamParser
00024 ::MPEGVideoStreamParser(MPEGVideoStreamFramer* usingSource,
00025 FramedSource* inputSource)
00026 : StreamParser(inputSource, FramedSource::handleClosure, usingSource,
00027 &MPEGVideoStreamFramer::continueReadProcessing, usingSource),
00028 fUsingSource(usingSource) {
00029 }
00030
00031 MPEGVideoStreamParser::~MPEGVideoStreamParser() {
00032 }
00033
00034 void MPEGVideoStreamParser::restoreSavedParserState() {
00035 StreamParser::restoreSavedParserState();
00036 fTo = fSavedTo;
00037 fNumTruncatedBytes = fSavedNumTruncatedBytes;
00038 }
00039
00040 void MPEGVideoStreamParser::setParseState() {
00041 fSavedTo = fTo;
00042 fSavedNumTruncatedBytes = fNumTruncatedBytes;
00043 saveParserState();
00044 }
00045
00046 void MPEGVideoStreamParser::registerReadInterest(unsigned char* to,
00047 unsigned maxSize) {
00048 fStartOfFrame = fTo = fSavedTo = to;
00049 fLimit = to + maxSize;
00050 fNumTruncatedBytes = fSavedNumTruncatedBytes = 0;
00051 }