OPAL  Version 3.14.3
RTP_ControlFrame Class Reference

#include <rtp.h>

Inherits PBYTEArray.

Data Structures

struct  ApplDefinedInfo
 
struct  ExtendedReport
 
struct  FbFIR
 
struct  FbHeader
 
struct  FbTMMB
 
struct  FbTSTO
 
struct  ReceiverReport
 
struct  SenderReport
 
struct  SourceDescription
 

Public Types

enum  PayloadTypes {
  e_FirstValidPayloadType = 192, e_IntraFrameRequest = 192, e_SenderReport = 200, e_ReceiverReport = 201,
  e_SourceDescription = 202, e_Goodbye = 203, e_ApplDefined = 204, e_TransportLayerFeedBack = 205,
  e_PayloadSpecificFeedBack = 206, e_ExtendedReport = 207, e_LastValidPayloadType = 223
}
 
enum  DescriptionTypes {
  e_END, e_CNAME, e_NAME, e_EMAIL,
  e_PHONE, e_LOC, e_TOOL, e_NOTE,
  e_PRIV, NumDescriptionTypes
}
 
enum  TransportLayerFbTypes { e_TransportNACK = 1, e_TMMBR = 3, e_TMMBN }
 
enum  PayloadSpecificFbTypes {
  e_PictureLossIndication = 1, e_SliceLostIndication, e_ReferencePictureSelectionIndication, e_FullIntraRequest,
  e_TemporalSpatialTradeOffRequest, e_TemporalSpatialTradeOffNotification, e_VideoBackChannelMessage, e_ApplicationLayerFbMessage = 15
}
 

Public Member Functions

 RTP_ControlFrame (PINDEX compoundSize=2048)
 
 RTP_ControlFrame (const BYTE *data, PINDEX size, bool dynamic=true)
 
bool IsValid () const
 
unsigned GetVersion () const
 
unsigned GetCount () const
 
void SetCount (unsigned count)
 
unsigned GetPayloadType () const
 
void SetPayloadType (unsigned t)
 
PINDEX GetPayloadSize () const
 
void SetPayloadSize (PINDEX sz)
 
BYTE * GetPayloadPtr () const
 
bool ReadNextPacket ()
 
bool StartNewPacket ()
 
void EndPacket ()
 
PINDEX GetCompoundSize () const
 
bool SetPacketSize (PINDEX size)
 
void StartSourceDescription (DWORD src)
 
void AddSourceDescriptionItem (unsigned type, const PString &data)
 
unsigned GetFbType () const
 
void SetFbType (unsigned type, PINDEX fciSize)
 
void SetApplDefined (const ApplDefinedInfo &info)
 

Protected Attributes

PINDEX compoundOffset
 
PINDEX payloadSize
 

Detailed Description

An RTP control frame encapsulation.

Member Enumeration Documentation

Enumerator
e_END 
e_CNAME 
e_NAME 
e_EMAIL 
e_PHONE 
e_LOC 
e_TOOL 
e_NOTE 
e_PRIV 
NumDescriptionTypes 
Enumerator
e_PictureLossIndication 
e_SliceLostIndication 
e_ReferencePictureSelectionIndication 
e_FullIntraRequest 
e_TemporalSpatialTradeOffRequest 
e_TemporalSpatialTradeOffNotification 
e_VideoBackChannelMessage 
e_ApplicationLayerFbMessage 
Enumerator
e_FirstValidPayloadType 
e_IntraFrameRequest 
e_SenderReport 
e_ReceiverReport 
e_SourceDescription 
e_Goodbye 
e_ApplDefined 
e_TransportLayerFeedBack 
e_PayloadSpecificFeedBack 
e_ExtendedReport 
e_LastValidPayloadType 
Enumerator
e_TransportNACK 
e_TMMBR 
e_TMMBN 

Constructor & Destructor Documentation

RTP_ControlFrame::RTP_ControlFrame ( PINDEX  compoundSize = 2048)
RTP_ControlFrame::RTP_ControlFrame ( const BYTE *  data,
PINDEX  size,
bool  dynamic = true 
)

Member Function Documentation

void RTP_ControlFrame::AddSourceDescriptionItem ( unsigned  type,
const PString &  data 
)
Parameters
typeDescription type
dataData for description
void RTP_ControlFrame::EndPacket ( )
PINDEX RTP_ControlFrame::GetCompoundSize ( ) const
unsigned RTP_ControlFrame::GetCount ( ) const
inline

References compoundOffset.

unsigned RTP_ControlFrame::GetFbType ( ) const
inline

References compoundOffset.

BYTE* RTP_ControlFrame::GetPayloadPtr ( ) const
PINDEX RTP_ControlFrame::GetPayloadSize ( ) const
inline

References compoundOffset.

unsigned RTP_ControlFrame::GetPayloadType ( ) const
inline

References compoundOffset.

unsigned RTP_ControlFrame::GetVersion ( ) const
inline

References compoundOffset.

bool RTP_ControlFrame::IsValid ( ) const
bool RTP_ControlFrame::ReadNextPacket ( )
void RTP_ControlFrame::SetApplDefined ( const ApplDefinedInfo info)
void RTP_ControlFrame::SetCount ( unsigned  count)
void RTP_ControlFrame::SetFbType ( unsigned  type,
PINDEX  fciSize 
)
bool RTP_ControlFrame::SetPacketSize ( PINDEX  size)
void RTP_ControlFrame::SetPayloadSize ( PINDEX  sz)
void RTP_ControlFrame::SetPayloadType ( unsigned  t)
bool RTP_ControlFrame::StartNewPacket ( )
void RTP_ControlFrame::StartSourceDescription ( DWORD  src)
Parameters
srcSSRC/CSRC identifier

Field Documentation

PINDEX RTP_ControlFrame::compoundOffset
protected
PINDEX RTP_ControlFrame::payloadSize
protected

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