OPAL
Version 3.12.9
|
#include <ivr.h>
Public Member Functions | |
Construction | |
OpalIVRMediaStream (OpalIVRConnection &conn, const OpalMediaFormat &mediaFormat, unsigned sessionID, PBoolean isSource, PVXMLSession &vxml) | |
Overrides of OpalMediaStream class | |
virtual PBoolean | Open () |
virtual PBoolean | IsSynchronous () const |
![]() | |
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 unsigned | GetAverageSignalLevel () |
![]() | |
virtual bool | InternalUpdateMediaFormat (const OpalMediaFormat &mediaFormat) |
void | PrintOn (ostream &strm) const |
virtual OpalMediaFormat | GetMediaFormat () const |
virtual bool | SetMediaFormat (const OpalMediaFormat &mediaFormat) |
bool | UpdateMediaFormat (const OpalMediaFormat &mediaFormat, bool mergeOnly=false) |
virtual PBoolean | ExecuteCommand (const OpalMediaCommand &command) |
virtual bool | IsOpen () const |
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) |
virtual PBoolean | SetPatch (OpalMediaPatch *patch) |
OpalMediaPatchPtr | 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 | |
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 () | |
![]() | |
void | IncrementTimestamp (PINDEX size) |
bool | InternalWriteData (const BYTE *data, PINDEX length, PINDEX &written) |
OpalMediaPatchPtr | InternalSetPatchPart1 (OpalMediaPatch *newPatch) |
void | InternalSetPatchPart2 (const OpalMediaPatchPtr &oldPatch) |
virtual bool | InternalSetJitterBuffer (const OpalJitterBuffer::Init &init) const |
OpalMediaStream (OpalConnection &conn, const OpalMediaFormat &mediaFormat, unsigned sessionID, bool isSource) | |
Protected Attributes | |
PVXMLSession & | m_vxmlSession |
![]() | |
PChannel * | m_channel |
bool | m_autoDelete |
PMutex | m_channelMutex |
PBYTEArray | m_silence |
PUInt64 | m_averageSignalSum |
unsigned | m_averageSignalSamples |
PMutex | m_averagingMutex |
![]() | |
OpalConnection & | connection |
unsigned | sessionID |
WORD | m_sequenceNumber |
PString | identifier |
OpalMediaFormat | mediaFormat |
bool | m_paused |
bool | m_isSource |
bool | m_isOpen |
PINDEX | m_defaultDataSize |
unsigned | timestamp |
bool | marker |
OpalMediaPatchPtr | m_mediaPatch |
RTP_DataFrame::PayloadTypes | m_payloadType |
unsigned | m_frameTime |
PINDEX | m_frameSize |
Additional Inherited Members | |
![]() | |
typedef OpalMediaPatchPtr | PatchPtr |
This class describes a media stream that transfers data to/from an IVR vxml session.
OpalIVRMediaStream::OpalIVRMediaStream | ( | OpalIVRConnection & | conn, |
const OpalMediaFormat & | mediaFormat, | ||
unsigned | sessionID, | ||
PBoolean | isSource, | ||
PVXMLSession & | vxml | ||
) |
Construct a new media stream for IVR session.
mediaFormat | Media format for stream |
sessionID | Session number for stream |
isSource | Is a source stream |
vxml | vxml session to use |
|
protectedvirtual |
Close any internal components of the stream. This should be used in preference to overriding the Close() function as it is guaranteed to be called exactly once and avoids race conditions in the shut down sequence of a media stream.
Reimplemented from OpalRawMediaStream.
|
virtual |
Indicate if the media stream is synchronous. Returns false for IVR streams.
Implements OpalMediaStream.
|
virtual |
Open the media stream using the media format.
The default behaviour simply sets the member variable "mediaFormat" and "defaultDataSize".
Reimplemented from OpalMediaStream.
|
protected |