OPAL Version 3.10.4

- Main Page
- Related Pages
- Namespaces
- Data Structures
- Files

- Data Structures
- Class Hierarchy
- Data Fields

Protected Member Functions | Protected Attributes
OpalRawMediaStream Class Reference

`#include <mediastrm.h>`

Inheritance diagram for OpalRawMediaStream:

## Public Member Functions

Overrides of OpalMediaStream class
virtual PBoolean | ReadData (BYTE *data, PINDEX size, PINDEX &length)
virtual PBoolean | WriteData (const BYTE *data, PINDEX length, PINDEX &written)
PChannel * | GetChannel ()
bool | SetChannel (PChannel *channel, bool autoDelete=true)
virtual PBoolean | Close ()
virtual unsigned | GetAverageSignalLevel ()
Public Member Functions inherited from OpalMediaStream
void | PrintOn (ostream &strm) const
virtual OpalMediaFormat | GetMediaFormat () const
bool | UpdateMediaFormat (const OpalMediaFormat &mediaFormat)
virtual bool | InternalUpdateMediaFormat (const OpalMediaFormat &mediaFormat)
virtual PBoolean | ExecuteCommand (const OpalMediaCommand &command)
virtual PBoolean | Open ()
virtual PBoolean | Start ()
virtual void | OnStartMediaPatch ()
virtual void | OnStopMediaPatch (OpalMediaPatch &patch)
virtual PBoolean | WritePackets (RTP_DataFrameList &packets)
virtual PBoolean | ReadPacket (RTP_DataFrame &packet)
virtual PBoolean | WritePacket (RTP_DataFrame &packet)
bool | PushPacket (RTP_DataFrame &packet)
virtual PBoolean | SetDataSize (PINDEX dataSize, PINDEX frameTime)
PINDEX | GetDataSize () const
virtual PBoolean | IsSynchronous () const =0
virtual PBoolean | RequiresPatchThread (OpalMediaStream *stream) const
virtual PBoolean | RequiresPatchThread () const
virtual bool | EnableJitterBuffer (bool enab=true) const
OpalConnection & | GetConnection () const
bool | IsSource () const
bool | IsSink () const
unsigned | GetSessionID () const
void | SetSessionID (unsigned id)
PString | GetID () const
unsigned | GetTimestamp () const
void | SetTimestamp (unsigned ts)
bool | GetMarker () const
void | SetMarker (bool m)
bool | IsPaused () const
virtual bool | SetPaused (bool pause, bool fromPatch=false)
bool | IsOpen () const
virtual PBoolean | SetPatch (OpalMediaPatch *patch)
OpalMediaPatch * | GetPatch () const
void | AddFilter (const PNotifier &filter, const OpalMediaFormat &stage=OpalMediaFormat()) const
bool | RemoveFilter (const PNotifier &filter, const OpalMediaFormat &stage=OpalMediaFormat()) const
virtual void | GetStatistics (OpalMediaStatistics &statistics, bool fromPatch=false) const
| ~OpalMediaStream ()

## Protected Member Functions

void | CollectAverage (const BYTE *buffer, PINDEX size)
Construction
| OpalRawMediaStream (OpalConnection &conn, const OpalMediaFormat &mediaFormat, unsigned sessionID, bool isSource, PChannel *channel, bool autoDelete)
| ~OpalRawMediaStream ()
Protected Member Functions inherited from OpalMediaStream
void | IncrementTimestamp (PINDEX size)
bool | InternalWriteData (const BYTE *data, PINDEX length, PINDEX &written)
| OpalMediaStream (OpalConnection &conn, const OpalMediaFormat &mediaFormat, unsigned sessionID, bool isSource)

## Protected Attributes

PChannel * | m_channel
bool | m_autoDelete
PMutex | m_channelMutex
PBYTEArray | m_silence
PUInt64 | m_averageSignalSum
unsigned | m_averageSignalSamples
PMutex | m_averagingMutex
Protected Attributes inherited from OpalMediaStream
OpalConnection & | connection
unsigned | sessionID
PString | identifier
OpalMediaFormat | mediaFormat
bool | m_paused
bool | isSource
bool | isOpen
PINDEX | defaultDataSize
unsigned | timestamp
bool | marker
unsigned | mismatchedPayloadTypes
OpalMediaPatch * | mediaPatch
RTP_DataFrame::PayloadTypes | m_payloadType
unsigned | m_frameTime
PINDEX | m_frameSize

## Detailed Description

This class describes a media stream that transfers PCM-16 data to/from a PChannel.

## Constructor & Destructor Documentation

OpalRawMediaStream::OpalRawMediaStream | ( | OpalConnection & | conn,
|  | const OpalMediaFormat & | mediaFormat,
|  | unsigned | sessionID,
|  | bool | isSource,
|  | PChannel * | channel,
|  | bool | autoDelete
| ) |  |

protected

Construct a new media stream for channel.

Parameters:

  conn | Connection that owns the stream
  mediaFormat | Media format for stream
  sessionID | Session number for stream
  isSource | Is a source stream
  channel | I/O channel to stream to/from
  autoDelete | Automatically delete channel

OpalRawMediaStream::~OpalRawMediaStream | ( |  | ) |

protected

Delete attached channel if autoDelete enabled.

## Member Function Documentation

virtual PBoolean OpalRawMediaStream::Close | ( |  | ) |

virtual

Close the media stream.

       Closes the associated PChannel.

Reimplemented from OpalMediaStream.

Reimplemented in OpalIVRMediaStream.

void OpalRawMediaStream::CollectAverage | ( | const BYTE * | buffer,
|  | PINDEX | size
| ) |  |

protected

virtual unsigned OpalRawMediaStream::GetAverageSignalLevel | ( |  | ) |

virtual

Get average signal level in last frame.

PChannel* OpalRawMediaStream::GetChannel | ( |  | ) |

inline

Return the associated PChannel

References m_channel.

virtual PBoolean OpalRawMediaStream::ReadData | ( | BYTE * | data,
|  | PINDEX | size,
|  | PINDEX & | length
| ) |  |

virtual

Read raw media data from the source media stream. The default behaviour reads from the PChannel object.

Parameters:

  data | Data buffer to read to
  size | Size of buffer
  length | Length of data actually read

Reimplemented from OpalMediaStream.

Reimplemented in OpalFileMediaStream.

bool OpalRawMediaStream::SetChannel | ( | PChannel * | channel,
|  | bool | autoDelete = `true`
| ) |  |

Set a new channel for raw PCM stream.

Parameters:

  channel | New channel
  autoDelete | Auto delete channel on exit or replacement

virtual PBoolean OpalRawMediaStream::WriteData | ( | const BYTE * | data,
|  | PINDEX | length,
|  | PINDEX & | written
| ) |  |

virtual

Write raw media data to the sink media stream. The default behaviour writes to the PChannel object.

Parameters:

  data | Data to write
  length | Length of data to read.
  written | Length of data actually written

Reimplemented from OpalMediaStream.

Reimplemented in OpalFileMediaStream.

## Field Documentation

bool OpalRawMediaStream::m_autoDelete

protected

unsigned OpalRawMediaStream::m_averageSignalSamples

protected

PUInt64 OpalRawMediaStream::m_averageSignalSum

protected

PMutex OpalRawMediaStream::m_averagingMutex

protected

PChannel* OpalRawMediaStream::m_channel

protected

Referenced by GetChannel().

PMutex OpalRawMediaStream::m_channelMutex

protected

PBYTEArray OpalRawMediaStream::m_silence

protected

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

- mediastrm.h