OpalFileMediaStream Class Reference

`#include <mediastrm.h>`

Inheritance diagram for OpalFileMediaStream:

## Public Member Functions

Construction
| OpalFileMediaStream (OpalConnection &conn, const OpalMediaFormat &mediaFormat, unsigned sessionID, bool isSource, PFile *file, bool autoDelete=true)
| OpalFileMediaStream (OpalConnection &conn, const OpalMediaFormat &mediaFormat, unsigned sessionID, bool isSource, const PFilePath &path)
Overrides of OpalMediaStream class
virtual PBoolean | IsSynchronous () const
virtual PBoolean | ReadData (BYTE *data, PINDEX size, PINDEX &length)
virtual PBoolean | WriteData (const BYTE *data, PINDEX length, PINDEX &written)
Public Member Functions inherited from OpalRawMediaStream
PChannel * | GetChannel ()
bool | SetChannel (PChannel *channel, bool autoDelete=true)
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 PBoolean | Close ()
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 | 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 ()
Public Member Functions inherited from OpalMediaStreamPacing
| OpalMediaStreamPacing (const OpalMediaFormat &mediaFormat)
void | Pace (bool reading, PINDEX bytes, bool &marker)
| Delay appropriate time for the written bytes. More...

## Protected Attributes

PFile | file
Protected Attributes inherited from OpalRawMediaStream
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
PatchPtr | m_mediaPatch
RTP_DataFrame::PayloadTypes | m_payloadType
unsigned | m_frameTime
PINDEX | m_frameSize
Protected Attributes inherited from OpalMediaStreamPacing
bool | m_isAudio
unsigned | m_frameTime
PINDEX | m_frameSize
unsigned | m_timeUnits
PAdaptiveDelay | m_delay

## Additional Inherited Members

Protected Types inherited from OpalMediaStream
typedef PSafePtr< OpalMediaPatch, PSafePtrMultiThreaded > | PatchPtr
Protected Member Functions inherited from OpalRawMediaStream
virtual void | InternalClose ()
void | CollectAverage (const BYTE *buffer, PINDEX size)
| 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)

## Detailed Description

This class describes a media stream that transfers data to/from a file.

## Constructor & Destructor Documentation

OpalFileMediaStream::OpalFileMediaStream | ( | OpalConnection & | conn,
|  | const OpalMediaFormat & | mediaFormat,
|  | unsigned | sessionID,
|  | bool | isSource,
|  | PFile * | file,
|  | bool | autoDelete = `true`
| ) |  |

Construct a new media stream for files.

Parameters

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

OpalFileMediaStream::OpalFileMediaStream | ( | OpalConnection & | conn,
|  | const OpalMediaFormat & | mediaFormat,
|  | unsigned | sessionID,
|  | bool | isSource,
|  | const PFilePath & | path
| ) |  |

Construct a new media stream for files.

Parameters

  conn | Connection that owns the stream
  mediaFormat | Media format for stream
  sessionID | Session number for stream
  isSource | Is a source stream
  path | File path to stream to/from

## Member Function Documentation

virtual PBoolean OpalFileMediaStream::IsSynchronous | ( |  | ) | const

virtual

Indicate if the media stream is synchronous. Returns true for LID streams.

Implements OpalMediaStream.

virtual PBoolean OpalFileMediaStream::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 OpalRawMediaStream.

virtual PBoolean OpalFileMediaStream::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 OpalRawMediaStream.

## Field Documentation

PFile OpalFileMediaStream::file

protected

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

- mediastrm.h