mpeg4genericrtpsource.hh

来自「c++实现的流媒体库,和mplayer结合就可以实现多媒体的网络播放,属于开源项」· HH 代码 · 共 83 行

HH
83
字号
/**********This library is free software; you can redistribute it and/or modify it underthe terms of the GNU Lesser General Public License as published by theFree Software Foundation; either version 2.1 of the License, or (at youroption) any later version. (See <http://www.gnu.org/copyleft/lesser.html>.)This library is distributed in the hope that it will be useful, but WITHOUTANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESSFOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public License formore details.You should have received a copy of the GNU Lesser General Public Licensealong with this library; if not, write to the Free Software Foundation, Inc.,59 Temple Place, Suite 330, Boston, MA  02111-1307  USA**********/// "liveMedia"// Copyright (c) 1996-2007 Live Networks, Inc.  All rights reserved.// MPEG4-GENERIC ("audio", "video", or "application") RTP stream sources// C++ header#ifndef _MPEG4_GENERIC_RTP_SOURCE_HH#define _MPEG4_GENERIC_RTP_SOURCE_HH#ifndef _MULTI_FRAMED_RTP_SOURCE_HH#include "MultiFramedRTPSource.hh"#endif#define SPECIAL_HEADER_BUFFER_SIZE 1000class MPEG4GenericRTPSource: public MultiFramedRTPSource {public:  static MPEG4GenericRTPSource*  createNew(UsageEnvironment& env, Groupsock* RTPgs,	    unsigned char rtpPayloadFormat,	    unsigned rtpTimestampFrequency,	    char const* mediumName,	    char const* mode, unsigned sizeLength, unsigned indexLength,	    unsigned indexDeltaLength	    // add other parameters later	    );  // mediumName is "audio", "video", or "application"  // it *cannot* be NULLprotected:  virtual ~MPEG4GenericRTPSource();private:  MPEG4GenericRTPSource(UsageEnvironment& env, Groupsock* RTPgs,			unsigned char rtpPayloadFormat,			unsigned rtpTimestampFrequency,			char const* mediumName,			char const* mode,			unsigned sizeLength, unsigned indexLength,			unsigned indexDeltaLength			);      // called only by createNew()private:  // redefined virtual functions:  virtual Boolean processSpecialHeader(BufferedPacket* packet,                                       unsigned& resultSpecialHeaderSize);  virtual char const* MIMEtype() const; private:  char* fMIMEType;  char* fMode;  unsigned fSizeLength, fIndexLength, fIndexDeltaLength;  unsigned fNumAUHeaders; // in the most recently read packet  unsigned fNextAUHeader; // index of the next AU Header to read  struct AUHeader* fAUHeaders;  friend class MPEG4GenericBufferedPacket;};// A function that looks up the sampling frequency from an// "AudioSpecificConfig" string.  (0 means 'unknown')unsigned samplingFrequencyFromAudioSpecificConfig(char const* configStr);#endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?