OPAL  Version 3.18.8
OpalAudioFormat Class Reference

#include <mediafmt.h>

Inheritance diagram for OpalAudioFormat:
Collaboration diagram for OpalAudioFormat:

Data Structures

class  FrameDetector
 

Public Types

typedef OpalAudioFormatInternal Internal
 
typedef PAutoPtr< FrameDetectorFrameDetectorPtr
 
typedef PFactory
< FrameDetector,
PCaselessString > 
FrameDetectFactory
 
- Public Types inherited from OpalMediaFormat
enum  StandardClockRate { AudioClockRate = 8000, VideoClockRate = 90000 }
 
typedef OpalMediaFormatInternal Internal
 

Public Member Functions

 OpalAudioFormat (Internal *info=NULL, bool dynamic=false)
 
 OpalAudioFormat (const char *fullName)
 
 OpalAudioFormat (const char *fullName, RTP_DataFrame::PayloadTypes rtpPayloadType, const char *encodingName, PINDEX frameSize, unsigned frameTime, unsigned rxFrames, unsigned txFrames, unsigned maxFrames=256, unsigned clockRate=8000, time_t timeStamp=0, unsigned channels=1)
 
OpalAudioFormatoperator= (const OpalMediaFormat &other)
 
 P_DECLARE_BITWISE_ENUM (FrameType, 3,(e_UnknownFrameType, e_NormalFrame, e_SilenceFrame, e_FECFrame))
 
FrameType GetFrameType (const BYTE *payloadPtr, PINDEX payloadSize, FrameDetectorPtr &detector) const
 
- Public Member Functions inherited from OpalMediaFormat
 OpalMediaFormat (const OpalMediaFormat &c)
 
virtual ~OpalMediaFormat ()
 
OpalMediaFormatoperator= (const OpalMediaFormat &c)
 
virtual PBoolean MakeUnique ()
 
 OpalMediaFormat (Internal *info=NULL, bool dynamic=false)
 
 OpalMediaFormat (const char *fullName, const OpalMediaType &mediaType, RTP_DataFrame::PayloadTypes rtpPayloadType, const char *encodingName, PBoolean needsJitter, OpalBandwidth bandwidth, PINDEX frameSize, unsigned frameTime, unsigned clockRate, time_t timeStamp=0, bool allowMultiple=false)
 
 OpalMediaFormat (RTP_DataFrame::PayloadTypes rtpPayloadType, unsigned clockRate, const char *rtpEncodingName=NULL, const char *protocol=NULL)
 
 OpalMediaFormat (const char *wildcard)
 
 OpalMediaFormat (const PString &wildcard)
 
OpalMediaFormatoperator= (RTP_DataFrame::PayloadTypes rtpPayloadType)
 
OpalMediaFormatoperator= (const char *wildcard)
 
OpalMediaFormatoperator= (const PString &wildcard)
 
virtual PObject * Clone () const
 
virtual Comparison Compare (const PObject &obj) const
 
virtual void PrintOn (ostream &strm) const
 
virtual void ReadFrom (istream &strm)
 
bool ToNormalisedOptions ()
 
bool ToCustomisedOptions ()
 
bool Update (const OpalMediaFormat &mediaFormat)
 
bool Merge (const OpalMediaFormat &mediaFormat, bool copyPayloadType=false)
 
bool ValidateMerge (const OpalMediaFormat &mediaFormat) const
 
PString GetName () const
 
PString GetDescription () const
 
PBoolean IsValid () const
 
PBoolean IsTransportable () const
 
RTP_DataFrame::PayloadTypes GetPayloadType () const
 
void SetPayloadType (RTP_DataFrame::PayloadTypes type)
 
const char * GetEncodingName () const
 
OpalMediaType GetMediaType () const
 
bool IsMediaType (const OpalMediaType &mediaType) const
 
bool NeedsJitterBuffer () const
 
OpalBandwidth GetMaxBandwidth () const
 
OpalBandwidth GetUsedBandwidth () const
 
PINDEX GetFrameSize () const
 
unsigned GetFrameTime () const
 
unsigned GetTimeUnits () const
 
unsigned GetClockRate () const
 
 P_DECLARE_STREAMABLE_BITWISE_ENUM_EX (RTCPFeedback, 8,(e_NoRTCPFb, e_PLI, e_FIR, e_TMMBR, e_TSTR, e_VBCM, e_NACK, e_SLI, e_REMB),"","pli","fir","tmmbr","tstr","vcbm","nack","sli","remb")
 RTP/RTCP Feedback options. More...
 
PStringToString GetOptions () const
 
PINDEX GetOptionCount () const
 
const OpalMediaOptionGetOption (PINDEX index) const
 
bool GetOptionValue (const PString &name, PString &value) const
 
bool SetOptionValue (const PString &name, const PString &value)
 
bool GetOptionBoolean (const PString &name, bool dflt=false) const
 
bool SetOptionBoolean (const PString &name, bool value)
 
int GetOptionInteger (const PString &name, int dflt=0) const
 
bool SetOptionInteger (const PString &name, int value)
 
RTP_DataFrame::PayloadTypes GetOptionPayloadType (const PString &name, RTP_DataFrame::PayloadTypes dflt=RTP_DataFrame::IllegalPayloadType) const
 
double GetOptionReal (const PString &name, double dflt=0) const
 
bool SetOptionReal (const PString &name, double value)
 
template<typename Enum >
Enum GetOptionEnum (const PString &name, Enum dflt=(Enum) 0) const
 
template<typename Enum >
bool SetOptionEnum (const PString &name, Enum value)
 
PString GetOptionString (const PString &name, const PString &dflt=PString::Empty()) const
 
bool SetOptionString (const PString &name, const PString &value)
 
bool GetOptionOctets (const PString &name, PBYTEArray &octets) const
 
bool SetOptionOctets (const PString &name, const PBYTEArray &octets)
 
bool SetOptionOctets (const PString &name, const BYTE *data, PINDEX length)
 
bool AddOption (OpalMediaOption *option, PBoolean overwrite=false)
 
bool HasOption (const PString &name) const
 
OpalMediaOptionFindOption (const PString &name) const
 
template<class T >
T * FindOptionAs (const PString &name) const
 
bool IsValidForProtocol (const PString &protocol) const
 
time_t GetCodecVersionTime () const
 
ostream & PrintOptions (ostream &strm) const
 
void AdjustVideoArgs (PVideoDevice::OpenArgs &args) const
 
virtual PBoolean IsEmpty () const
 
 operator PString () const
 
 operator const char * () const
 
bool operator== (const char *other) const
 
bool operator!= (const char *other) const
 
bool operator== (const PString &other) const
 
bool operator!= (const PString &other) const
 
bool operator== (const OpalMediaFormat &other) const
 
bool operator!= (const OpalMediaFormat &other) const
 
PStringArray GetMediaPacketizations () const
 
PStringSet GetMediaPacketizationSet () const
 
void SetMediaPacketizations (const PStringSet &packetizations)
 

Static Public Member Functions

static const PString & RxFramesPerPacketOption ()
 
static const PString & TxFramesPerPacketOption ()
 
static const PString & MaxFramesPerPacketOption ()
 
static const PString & ChannelsOption ()
 
- Static Public Member Functions inherited from OpalMediaFormat
static const PString & DescriptionOption ()
 
static const PString & NeedsJitterOption ()
 
static const PString & MaxBitRateOption ()
 
static const PString & TargetBitRateOption ()
 
static const PString & MaxFrameSizeOption ()
 
static const PString & FrameTimeOption ()
 
static const PString & ClockRateOption ()
 
static const PString & ProtocolOption ()
 
static const PString & MaxTxPacketSizeOption ()
 
static const PString & RTCPFeedbackOption ()
 RTP/RTCP Feedback options. More...
 
static OpalMediaFormatList GetAllRegisteredMediaFormats ()
 
static void GetAllRegisteredMediaFormats (OpalMediaFormatList &copy)
 
static bool RegisterKnownMediaFormats (const PString &name=PString::Empty())
 
static bool SetRegisteredMediaFormat (const OpalMediaFormat &mediaFormat)
 
static bool RemoveRegisteredMediaFormats (const PString &wildcard)
 
static const PString & MediaPacketizationOption ()
 
static const PString & MediaPacketizationsOption ()
 

Additional Inherited Members

- Protected Member Functions inherited from OpalMediaFormat
virtual void DestroyContents ()
 
virtual void AssignContents (const PContainer &c)
 
void Construct (OpalMediaFormatInternal *info)
 
 PDECLARE_MUTEX (m_mutex, OpalMediaFormat, 1000)
 
- Protected Attributes inherited from OpalMediaFormat
OpalMediaFormatInternalm_info
 
bool m_dynamic
 

Member Typedef Documentation

typedef PFactory<FrameDetector, PCaselessString> OpalAudioFormat::FrameDetectFactory

Constructor & Destructor Documentation

OpalAudioFormat::OpalAudioFormat ( Internal info = NULL,
bool  dynamic = false 
)
explicit
OpalAudioFormat::OpalAudioFormat ( const char *  fullName)
inline
OpalAudioFormat::OpalAudioFormat ( const char *  fullName,
RTP_DataFrame::PayloadTypes  rtpPayloadType,
const char *  encodingName,
PINDEX  frameSize,
unsigned  frameTime,
unsigned  rxFrames,
unsigned  txFrames,
unsigned  maxFrames = 256,
unsigned  clockRate = 8000,
time_t  timeStamp = 0,
unsigned  channels = 1 
)
Parameters
fullNameFull name of media format
rtpPayloadTypeRTP payload type code
encodingNameRTP encoding name
frameSizeSize of frame in bytes (if applicable)
frameTimeTime for frame in RTP units (if applicable)
rxFramesMaximum number of frames per packet we can receive
txFramesDesired number of frames per packet we transmit
maxFramesMaximum possible frames per packet
clockRateClock Rate
timeStamptimestamp (for versioning)
channelsStereo/mono

Member Function Documentation

static const PString& OpalAudioFormat::ChannelsOption ( )
static
FrameType OpalAudioFormat::GetFrameType ( const BYTE *  payloadPtr,
PINDEX  payloadSize,
FrameDetectorPtr detector 
) const
static const PString& OpalAudioFormat::MaxFramesPerPacketOption ( )
static
OpalAudioFormat& OpalAudioFormat::operator= ( const OpalMediaFormat other)
OpalAudioFormat::P_DECLARE_BITWISE_ENUM ( FrameType  ,
,
(e_UnknownFrameType, e_NormalFrame, e_SilenceFrame, e_FECFrame)   
)
static const PString& OpalAudioFormat::RxFramesPerPacketOption ( )
static
static const PString& OpalAudioFormat::TxFramesPerPacketOption ( )
static

The documentation for this class was generated from the following file: