#include <opalmixer.h>
Public Member Functions | |
Construction | |
OpalMixerNode (OpalMixerNodeManager &manager, OpalMixerNodeInfo *info) | |
OpalMixerNode (OpalMixerEndPoint &endpoint, OpalMixerNodeInfo *info) | |
~OpalMixerNode () | |
void | ShutDown () |
Overrides from PObject | |
void | PrintOn (ostream &strm) const |
Operations | |
void | AttachConnection (OpalConnection *connection) |
void | DetachConnection (OpalConnection *connection) |
bool | AttachStream (OpalMixerMediaStream *stream) |
void | DetachStream (OpalMixerMediaStream *stream) |
void | UseMediaBypass (unsigned sessionID, OpalConnection *connection=NULL) |
bool | WriteAudio (const OpalBaseMixer::Key_T &key, const RTP_DataFrame &input) |
bool | WriteVideo (const OpalBaseMixer::Key_T &key, const RTP_DataFrame &input) |
Member variable access | |
const PGloballyUniqueID & | GetGUID () const |
const PStringList & | GetNames () const |
void | AddName (const PString &name) |
void | RemoveName (const PString &name) |
PINDEX | GetConnectionCount () const |
template<class Subclass> | |
PSafePtr< Subclass > | GetFirstConnectionAs (PSafetyMode mode=PSafeReference) const |
PSafePtr< OpalConnection > | GetFirstConnection (PSafetyMode mode=PSafeReference) const |
const OpalMixerNodeInfo & | GetNodeInfo () |
const PTime & | GetCreationTime () const |
Protected Member Functions | |
void | Construct () |
Protected Attributes | |
OpalMixerNodeManager & | m_manager |
PGloballyUniqueID | m_guid |
PStringList | m_names |
OpalMixerNodeInfo * | m_info |
PTime | m_creationTime |
PSafeList< OpalConnection > | m_connections |
AudioMixer | m_audioMixer |
VideoMixer | m_videoMixer |
Data Structures | |
struct | AudioMixer |
struct | MediaMixer |
struct | VideoMixer |
OpalMixerNode::OpalMixerNode | ( | OpalMixerNodeManager & | manager, | |
OpalMixerNodeInfo * | info | |||
) |
Create a new node.
manager | Manager for this node |
info | Configuration information |
OpalMixerNode::OpalMixerNode | ( | OpalMixerEndPoint & | endpoint, | |
OpalMixerNodeInfo * | info | |||
) |
endpoint | Endpoint for this node |
info | Configuration information |
OpalMixerNode::~OpalMixerNode | ( | ) |
Destroy node.
void OpalMixerNode::AddName | ( | const PString & | name | ) |
Add a name for this node.
void OpalMixerNode::AttachConnection | ( | OpalConnection * | connection | ) |
Attach a connection.
connection | Connection to attach |
bool OpalMixerNode::AttachStream | ( | OpalMixerMediaStream * | stream | ) |
Attach a stream for output.
stream | Stream to attach |
void OpalMixerNode::Construct | ( | ) | [protected] |
void OpalMixerNode::DetachConnection | ( | OpalConnection * | connection | ) |
Detach a connection.
connection | Connection to detach |
void OpalMixerNode::DetachStream | ( | OpalMixerMediaStream * | stream | ) |
Detach a stream for output.
stream | Stream to detach |
PINDEX OpalMixerNode::GetConnectionCount | ( | ) | const [inline] |
Get count of connections. Note that as this value can change ata any moent, it is really not that useful and should definitely not be used for enumeration of the connections.
const PTime& OpalMixerNode::GetCreationTime | ( | ) | const [inline] |
Get the creation time of the node.
PSafePtr<OpalConnection> OpalMixerNode::GetFirstConnection | ( | PSafetyMode | mode = PSafeReference |
) | const [inline] |
Get first connection in the connections list.
PSafePtr<Subclass> OpalMixerNode::GetFirstConnectionAs | ( | PSafetyMode | mode = PSafeReference |
) | const [inline] |
Get first connection in the connections list as type.
const PGloballyUniqueID& OpalMixerNode::GetGUID | ( | ) | const [inline] |
Get globally unique identifier for node.
const PStringList& OpalMixerNode::GetNames | ( | ) | const [inline] |
Get list of names for this node.
const OpalMixerNodeInfo& OpalMixerNode::GetNodeInfo | ( | ) | [inline] |
Get the raw audio accumulation buffer.
void OpalMixerNode::PrintOn | ( | ostream & | strm | ) | const |
Standard stream print function. The PObject class has a << operator defined that invokes this function polymorphically.
strm | Stream to output text representation |
void OpalMixerNode::RemoveName | ( | const PString & | name | ) |
Remove a name for this node.
void OpalMixerNode::ShutDown | ( | ) |
Shut down node. This clears all attached connections, removes all names and generally shuts the node down.
void OpalMixerNode::UseMediaBypass | ( | unsigned | sessionID, | |
OpalConnection * | connection = NULL | |||
) |
Use media bypass if applicable.
sessionID | Session ID to bypass, 0 indicates all |
connection | Just deleted connection |
bool OpalMixerNode::WriteAudio | ( | const OpalBaseMixer::Key_T & | key, | |
const RTP_DataFrame & | input | |||
) | [inline] |
Write data to mixer.
key | key for mixer stream |
input | Input RTP data for media |
bool OpalMixerNode::WriteVideo | ( | const OpalBaseMixer::Key_T & | key, | |
const RTP_DataFrame & | input | |||
) | [inline] |
Write data to mixer.
key | key for mixer stream |
input | Input RTP data for media |
AudioMixer OpalMixerNode::m_audioMixer [protected] |
PSafeList<OpalConnection> OpalMixerNode::m_connections [protected] |
PTime OpalMixerNode::m_creationTime [protected] |
PGloballyUniqueID OpalMixerNode::m_guid [protected] |
OpalMixerNodeInfo* OpalMixerNode::m_info [protected] |
OpalMixerNodeManager& OpalMixerNode::m_manager [protected] |
PStringList OpalMixerNode::m_names [protected] |
VideoMixer OpalMixerNode::m_videoMixer [protected] |