#include <iax2medstrm.h>
Inheritance diagram for OpalIAX2MediaStream:
Public Member Functions | |
Overrides of OpalMediaStream class | |
virtual BOOL | Open () |
virtual BOOL | Start () |
virtual BOOL | Close () |
virtual BOOL | ReadPacket (RTP_DataFrame &packet) |
virtual BOOL | WriteData (const BYTE *data, PINDEX length, PINDEX &written) |
virtual BOOL | IsSynchronous () const |
Protected Attributes | |
IAX2Connection & | connection |
PBYTEArray | pendingData |
virtual BOOL OpalIAX2MediaStream::Open | ( | ) | [virtual] |
Open the media stream.
Reimplemented from OpalMediaStream.
virtual BOOL OpalIAX2MediaStream::Start | ( | ) | [virtual] |
Start the media stream.
The default behaviour calls Resume() on the associated OpalMediaPatch thread if it was suspended.
Reimplemented from OpalMediaStream.
virtual BOOL OpalIAX2MediaStream::Close | ( | ) | [virtual] |
virtual BOOL OpalIAX2MediaStream::ReadPacket | ( | RTP_DataFrame & | packet | ) | [virtual] |
Goes to the IAX2Connection class, and removes a packet from the connection. The connection class turned the media packet into a RTP_DataFrame class, and jitter buffered it.
packet | Data buffer to read to |
Reimplemented from OpalMediaStream.
virtual BOOL OpalIAX2MediaStream::WriteData | ( | const BYTE * | data, | |
PINDEX | length, | |||
PINDEX & | written | |||
) | [virtual] |
Write raw media data to the sink media stream. The default behaviour writes to the OpalLine object.
data | Data to write |
length | Length of data to write. |
written | Length of data actually written |
Reimplemented from OpalMediaStream.
virtual BOOL OpalIAX2MediaStream::IsSynchronous | ( | ) | const [virtual] |
Indicate if the media stream is synchronous. A synchronous stream is one that is regular, such as the sound frames from a sound card.
Implements OpalMediaStream.
IAX2Connection& OpalIAX2MediaStream::connection [protected] |
The connection is the source/sink of our data packets
PBYTEArray OpalIAX2MediaStream::pendingData [protected] |
There was unused data from an incoming ethernet frame. The unused data is stored here.