17 #ifndef _CpTopologyGraphInterface_h_ 18 #define _CpTopologyGraphInterface_h_ 22 #include <sdp/SdpCodecList.h> 23 #include "mp/MpTypes.h" 40 class MpTopologyGraph;
41 class MpResourceTopology;
42 class MpResourceFactory;
43 class MpInputDeviceManager;
44 class MpOutputDeviceManager;
46 class CircularBufferPtr;
60 uint32_t samplesPerFrame,
61 uint32_t samplesPerSec,
62 const char* publicAddress = NULL,
63 const char* localAddress = NULL,
65 SdpCodec* sdpCodecArray[] = NULL,
66 const char* pLocale =
"",
67 int expeditedIpTos = QOS_LAYER3_LOW_DELAY_IP_TOS,
68 const char* stunServer = NULL,
69 int stunPort = PORT_NONE,
70 int stunKeepAlivePeriodSecs = 28,
71 const char* turnServer = NULL,
72 int turnPort = PORT_NONE,
73 const char* turnUsername = NULL,
74 const char* turnPassword = NULL,
75 int turnKeepAlivePeriodSecs = 28,
76 UtlBoolean enableIce = FALSE,
77 OsMsgDispatcher* pDispatcher = NULL,
78 MpInputDeviceManager* pInputDeviceManager = NULL,
79 MpInputDeviceHandle inputDeviceHandle = 1,
80 UtlBoolean inputDeviceAlreadyEnabled = FALSE,
81 MpOutputDeviceManager* pOutputDeviceManager = NULL,
82 MpOutputDeviceHandle outputDeviceHandle = 1
95 const char* szLocalAddress,
97 void* videoWindowHandle = NULL,
98 void*
const pSecurityAttributes = NULL,
99 const RtpTransportOptions rtpTransportOptions=RTP_TRANSPORT_UDP);
105 OsSocket* rtcpSocket,
106 UtlBoolean isMulticast);
117 const UtlString &methodName=
"");
125 const UtlString& resourceName = NULL);
149 int resourceOutputPortIndex,
164 int resourceInputPortIndex,
180 int mediaTypeStreamIndex,
181 UtlString& receiveAddress,
187 const char* rtpHostAddress,
197 const char* rtpHostAddress,
202 virtual OsStatus
copyPayloadIds(
int connectionId,
int numCodecs, SdpCodec* remoceCodecs[]);
207 SdpCodec* sendCodec[]);
212 SdpCodec* sendCodec[]);
227 virtual OsStatus
startTone(
int toneId, UtlBoolean local, UtlBoolean remote);
228 virtual OsStatus
startTone(
const UtlString& resourceName,
int toneId, UtlBoolean rfc4733Enabled = TRUE);
231 virtual OsStatus
stopTone(
const UtlString& resourceName, UtlBoolean rfc4733Enabled = TRUE);
240 virtual OsStatus
startChannelTone(
int connectionId,
int toneId, UtlBoolean local, UtlBoolean remote);
241 virtual OsStatus
startChannelTone(
const UtlString& resourceName,
int connectionId,
int toneId);
244 virtual OsStatus
stopChannelTone(
const UtlString& resourceName,
int connectionId);
252 virtual OsStatus
playAudio(
const char* url,
256 UtlBoolean mixWithMic =
false,
257 int downScaling = 100,
258 UtlBoolean autoStopAfterFinish = TRUE);
259 virtual OsStatus
playAudio(
const UtlString& resourceName,
262 UtlBoolean autoStopAfterFinish = TRUE);
266 unsigned long bufSize,
272 OsProtectedEvent* event = NULL,
273 UtlBoolean mixWithMic =
false,
274 int downScaling = 100,
275 UtlBoolean autoStopOnFinish = TRUE);
276 virtual OsStatus
playBuffer(
const UtlString& resourceName,
278 unsigned long bufSize,
282 OsProtectedEvent* event = NULL,
283 UtlBoolean autoStopOnFinish = TRUE);
287 virtual OsStatus
pauseAudio(
const UtlString& resourceName);
291 virtual OsStatus
resumeAudio(
const UtlString& resourceName);
295 virtual OsStatus
stopAudio(
const UtlString& resourceName);
303 UtlBoolean mixWithMic =
false,
304 int downScaling = 100,
305 UtlBoolean autoStopOnFinish = TRUE);
314 UtlBoolean appendToFile = FALSE,
317 int silenceLength = -1,
318 UtlBoolean setupMultiChannelMixesAutomatically = TRUE);
319 virtual OsStatus
recordAudio(
const UtlString& resourceName,
322 UtlBoolean appendToFile = FALSE,
325 int silenceLength = -1,
326 UtlBoolean setupMultiChannelMixesAutomatically = TRUE);
344 int maxRecordTime = -1,
345 int maxSilence = -1) ;
349 int maxRecordTime = -1,
350 int maxSilence = -1);
356 CircularBufferPtr & buffer,
358 unsigned long recordingBufferNotificationWatermark);
360 CircularBufferPtr& buffer,
362 unsigned long recordingBufferNotificationWatermark);
367 virtual OsStatus
createPlayer(MpStreamPlayer** ppPlayer,
368 const char* szStream,
370 OsMsgQ *pMsgQ = NULL,
371 const char* szTarget = NULL) ;
379 OsMsgQ *pMsgQ = NULL,
380 const char* szTarget = NULL);
387 OsMsgQ *pMsgQ = NULL,
388 const char* szTarget = NULL);
401 virtual OsStatus
recordMic(
int ms, int16_t* pAudioBuf,
int bufferSize);
406 const char* fileName);
408 virtual void setContactType(
int connectionId, SIPX_CONTACT_TYPE eType, SIPX_CONTACT_ID contactId) ;
418 virtual OsStatus
limitCodecs(
int connectionId,
const SdpCodecList& includeOnlyCodecList);
423 UtlString& videoCodec);
435 const char* candidateIp,
440 const char* candidateIp,
445 const char* candidateIp,
450 const char* candidateIp,
463 OsStatus
enableDtx(
int connectionId, UtlBoolean enable);
473 UtlString& rtpHostAddress,
478 SdpCodecList& supportedCodecs,
479 SdpSrtpParameters& srtpParams,
482 int& videoFramerate);
489 UtlString rtpHostAddresses[],
491 int rtcpAudioPorts[],
493 int rtcpVideoPorts[],
494 RTP_TRANSPORT transportTypes[],
495 int& nActualAddresses,
496 SdpCodecList& supportedCodecs,
497 SdpSrtpParameters& srtpParameters,
500 int& videoFramerate);
536 UtlString& audioCodec,
537 UtlString& videoCodec,
538 int* audiopPayloadType,
539 int* videoPayloadType,
547 int& iOutputEnergyLevel)
548 {
return OS_NOT_SUPPORTED ;} ;
551 int& iInputEnergyLevel,
552 int& iOutputEnergyLevel,
554 unsigned int* pContributorSRCIds,
555 int* pContributorEngeryLevels)
556 {
return OS_NOT_SUPPORTED ;} ;
560 unsigned int& uiSendingSSRC,
561 unsigned int& uiReceivingSSRC);
569 return OS_NOT_SUPPORTED;
574 return OS_NOT_SUPPORTED;
594 const UtlString& propertyValue);
598 UtlString& propertyValue);
602 const UtlString& propertyName,
603 const UtlString& propertyValue);
607 const UtlString& propertyName,
608 UtlString& propertyValue);
612 MpConnectionID connectionId,
625 MpConnectionID connectionId=-1);
634 virtual UtlString
getType() {
return "CpTopologyGraphInterface"; };
681 int& rtcpVideoPort) ;
688 int& rtcpVideoPort) ;
696 int& rtcpVideoPort) ;
701 UtlString rtpHostAddresses[],
703 int rtcpAudioPorts[],
705 int rtcpVideoPorts[],
706 int& nActualAddresses) ;
710 UtlString rtpHostAddresses[],
712 int rtcpAudioPorts[],
714 int rtcpVideoPorts[],
715 int& nActualAddresses) ;
719 UtlString rtpHostAddresses[],
721 int rtcpAudioPorts[],
723 int rtcpVideoPorts[],
724 int& nActualAddresses) ;
731 UtlBoolean isMulticast,
732 SIPX_CONTACT_TYPE contactType,
733 OsSocket* &rtpSocket,
734 OsSocket* &rtcpSocket);
813 int destConnectionId,
831 #endif // _CpTopologyGraphInterface_h_ virtual OsStatus pauseRecordChannelAudio(int connectionId)
Pause buffer or file recording which has been started.
Definition: CpTopologyGraphInterface.cpp:2154
virtual OsStatus setMediaProperty(const UtlString &propertyName, const UtlString &propertyValue)
Set a media property on the media interface.
Definition: CpTopologyGraphInterface.cpp:3617
virtual OsStatus getConnectionInputLatency(int &latency, MpConnectionID connectionId, int streamId=0)
Get a latency of the input part of the RTP or local connection.
Definition: CpTopologyGraphInterface.cpp:3722
virtual OsStatus getAudioEnergyLevels(int &iInputEnergyLevel, int &iOutputEnergyLevel)
Definition: CpTopologyGraphInterface.h:546
virtual OsStatus getMediaProperty(const UtlString &propertyName, UtlString &propertyValue)
Get a media property on the media interface.
Definition: CpTopologyGraphInterface.cpp:3639
virtual const SdpCodecList * getConnectionCodecList(int connectionId)
Get the list of codecs and payload IDs for the connection.
Definition: CpTopologyGraphInterface.cpp:1806
virtual void setConnectionTcpRole(const int connectionId, const RtpTcpRoles role)
Definition: CpTopologyGraphInterface.h:453
virtual OsStatus stopRtpReceive(int connectionId)
Stop receiving RTP and RTCP data for the specified connection.
Definition: CpTopologyGraphInterface.cpp:1834
MpTopologyGraph * mpTopologyGraph
Definition: CpTopologyGraphInterface.h:751
virtual OsStatus setNotificationsEnabled(bool enabled, const UtlString &resourceName=NULL)
Enable or disable media notifications for one/all resource(s).
Definition: CpTopologyGraphInterface.cpp:715
int mTurnPort
Definition: CpTopologyGraphInterface.h:766
virtual OsStatus enableAudioTransport(int connectionId, UtlBoolean bEnable)
Definition: CpTopologyGraphInterface.h:567
Dispatcher to translate MediaLib notifications into abstracted MediaAdapterLib notifications.
Definition: MaNotfTranslatorDispatcher.h:40
UtlString mLocalAddress
Definition: CpTopologyGraphInterface.h:773
virtual OsStatus startTone(int toneId, UtlBoolean local, UtlBoolean remote)
Start playing the specified tone for this call.
Definition: CpTopologyGraphInterface.cpp:2323
virtual ~CpTopologyGraphInterface()
Destructor.
Definition: CpTopologyGraphInterface.cpp:403
virtual OsStatus destroyQueuePlayer(MpStreamQueuePlayer *pPlayer)
Deprecated.
Definition: CpTopologyGraphInterface.cpp:2318
Subsystem manager and creator of CpTopologyGraphInterfaces specialization of CpMediaInterface.
Definition: CpTopologyGraphFactoryImpl.h:45
virtual OsStatus destroyPlaylistPlayer(MpStreamPlaylistPlayer *pPlayer)
Deprecated.
Definition: CpTopologyGraphInterface.cpp:2304
virtual OsStatus recordChannelAudio(int connectionId, const char *szFile, CpAudioFileFormat cpFileFormat=CP_WAVE_PCM_16, UtlBoolean appendToFile=FALSE, int numChannels=1, int maxTime=0, int silenceLength=-1, UtlBoolean setupMultiChannelMixesAutomatically=TRUE)
Start recording to file.
Definition: CpTopologyGraphInterface.cpp:2033
int mStunRefreshPeriodSecs
Definition: CpTopologyGraphInterface.h:764
OsStatus createRtpSocketPair(UtlString localAddress, int localPort, UtlBoolean isMulticast, SIPX_CONTACT_TYPE contactType, OsSocket *&rtpSocket, OsSocket *&rtcpSocket)
Create socket pair for RTP/RTCP streams.
Definition: CpTopologyGraphInterface.cpp:3843
SdpCodecList mSupportedCodecs
Definition: CpTopologyGraphInterface.h:752
MpOutputDeviceManager * mpOutputDeviceManager
Definition: CpTopologyGraphInterface.h:759
virtual OsStatus setConnectionBitrate(int connectionId, int bitrate)
Set connection bitrate on the fly.
Definition: CpTopologyGraphInterface.cpp:2720
virtual OsStatus stopRtpSend(int connectionId)
Stop sending RTP and RTCP data for the specified connection.
Definition: CpTopologyGraphInterface.cpp:1819
OsStatus getResourceInputPortOnBridge(const UtlString &resourceName, int resourceOutputPortIndex, int &portOnBridge)
Look up the port on the bridge to which the indicated resource is connected.
Definition: CpTopologyGraphInterface.cpp:748
virtual OsStatus setAudioCodecBandwidth(int connectionId, int bandWidth)
Rebuild the codec factory on the fly.
Definition: CpTopologyGraphInterface.cpp:2651
UtlBoolean getLocalAddresses(int connectionId, UtlString &hostIp, int &rtpAudioPort, int &rtcpAudioPort, int &rtpVideoPort, int &rtcpVideoPort)
Definition: CpTopologyGraphInterface.cpp:3092
virtual OsStatus setMixWeightForOutput(int bridgeOutputPort, float weight)
Set the mix weight for all inputs, but its own to the given weight and output on bridge.
Definition: CpTopologyGraphInterface.cpp:4299
UtlString mRtpReceiveHostAddress
Definition: CpTopologyGraphInterface.h:772
virtual OsStatus stopRecordCircularBufferChannelAudio(int connectionId)
Definition: CpTopologyGraphInterface.cpp:2269
virtual OsStatus setSecurityAttributes(const void *security)
Definition: CpTopologyGraphInterface.cpp:2732
int mTurnRefreshPeriodSecs
Definition: CpTopologyGraphInterface.h:767
OsStatus setRtpInactivityTimeout(int connectionId, int timeoutMs)
Set inactive time (in ms) after which RTP stream is actually marked inactive.
Definition: CpTopologyGraphInterface.cpp:2763
virtual OsStatus rebuildCodecFactory(int connectionId, int audioBandwidth, int videoBandwidth, UtlString &videoCodec)
Rebuild codec factory with one video codec.
Definition: CpTopologyGraphInterface.cpp:2712
virtual UtlString getType()
Set IP address to advertise in SDP.
Definition: CpTopologyGraphInterface.h:634
virtual OsMsgQ * getMsgQ()
Returns the flowgraph's message queue.
Definition: CpTopologyGraphInterface.cpp:2886
int mInitialTopologyBridgePorts
Definition: CpTopologyGraphInterface.h:755
CpTopologyGraphInterface(CpTopologyGraphFactoryImpl *factoryImpl, uint32_t samplesPerFrame, uint32_t samplesPerSec, const char *publicAddress=NULL, const char *localAddress=NULL, int numCodecs=0, SdpCodec *sdpCodecArray[]=NULL, const char *pLocale="", int expeditedIpTos=QOS_LAYER3_LOW_DELAY_IP_TOS, const char *stunServer=NULL, int stunPort=PORT_NONE, int stunKeepAlivePeriodSecs=28, const char *turnServer=NULL, int turnPort=PORT_NONE, const char *turnUsername=NULL, const char *turnPassword=NULL, int turnKeepAlivePeriodSecs=28, UtlBoolean enableIce=FALSE, OsMsgDispatcher *pDispatcher=NULL, MpInputDeviceManager *pInputDeviceManager=NULL, MpInputDeviceHandle inputDeviceHandle=1, UtlBoolean inputDeviceAlreadyEnabled=FALSE, MpOutputDeviceManager *pOutputDeviceManager=NULL, MpOutputDeviceHandle outputDeviceHandle=1)
Default constructor.
Definition: CpTopologyGraphInterface.cpp:243
virtual OsStatus startRtpReceive(int connectionId, int numCodecs, SdpCodec *sendCodec[])
Set the connection destination (target) for the designated media connection.
Definition: CpTopologyGraphInterface.cpp:1678
virtual OsStatus stopRecordAudio(const UtlString &resourceName)
Definition: CpTopologyGraphInterface.cpp:2189
int mStunPort
Definition: CpTopologyGraphInterface.h:763
virtual OsStatus recordCircularBufferChannelAudio(int connectionId, CircularBufferPtr &buffer, CpMediaInterface::CpAudioFileFormat recordingFormat, unsigned long recordingBufferNotificationWatermark)
Definition: CpTopologyGraphInterface.cpp:2238
MpOutputDeviceHandle mOutputDeviceHandle
Definition: CpTopologyGraphInterface.h:760
UtlString mTurnUsername
Definition: CpTopologyGraphInterface.h:768
virtual UtlBoolean isVideoInitialized(int connectionId)
Query whether the connection has started sending or receiving video.
Definition: CpTopologyGraphInterface.cpp:3063
OsStatus setConnectionToConnectionWeight(CpTopologyMediaConnection *srcConnection, int destConnectionId, float weight)
Set mixing weight from all connection's streams to the given output port.
Definition: CpTopologyGraphInterface.cpp:4416
virtual OsStatus setConnectionDestination(int connectionId, const char *rtpHostAddress, int rtpAudioPort, int rtcpAudioPort, int rtpVideoPort, int rtcpVideoPort)
Set the connection destination (target) for the designated media connection.
Definition: CpTopologyGraphInterface.cpp:1104
virtual OsStatus deleteConnection(int connectionId)
Delete the specified RTP or RTCP connetion.
Definition: CpTopologyGraphInterface.cpp:1865
virtual UtlBoolean isDestinationSet(int connectionId)
Definition: CpTopologyGraphInterface.cpp:3035
virtual OsStatus createPlayer(MpStreamPlayer **ppPlayer, const char *szStream, int flags, OsMsgQ *pMsgQ=NULL, const char *szTarget=NULL)
Deprecated.
Definition: CpTopologyGraphInterface.cpp:2280
OsStatus deleteMediaConnection(CpTopologyMediaConnection *mediaConnection)
Free media connection structure.
Definition: CpTopologyGraphInterface.cpp:4084
virtual OsStatus getAudioEnergyLevels(int connectionId, int &iInputEnergyLevel, int &iOutputEnergyLevel, int &nContributors, unsigned int *pContributorSRCIds, int *pContributorEngeryLevels)
Definition: CpTopologyGraphInterface.h:550
virtual OsStatus startChannelTone(int connectionId, int toneId, UtlBoolean local, UtlBoolean remote)
Start playing DTMF tone.
Definition: CpTopologyGraphInterface.cpp:2453
virtual OsMsgDispatcher * getNotificationDispatcher()
Returns the Media Notification dispatcher this controls.
Definition: CpTopologyGraphInterface.cpp:2891
void applyAlternateDestinations(int connectionId)
Definition: CpTopologyGraphInterface.cpp:3500
virtual UtlBoolean isReceivingRtpVideo(int connectionId)
Definition: CpTopologyGraphInterface.cpp:3013
OsStatus setConnectionWeightOnBridge(CpTopologyMediaConnection *mediaConnection, int destPort, float weight)
Set mixing weight from all connection's streams to the given output port.
Definition: CpTopologyGraphInterface.cpp:4362
virtual OsStatus setPlcMethod(int connectionId, const UtlString &methodName="")
Set PLC method to use for codecs which does not have own PLC.
Definition: CpTopologyGraphInterface.cpp:652
CpTopologyGraphInterface & operator=(const CpTopologyGraphInterface &)
Disabled assignment operator.
int getNumBridgePorts()
Get number of bridge ports (-1 on failure).
Definition: CpTopologyGraphInterface.cpp:723
virtual OsStatus stopRecordBufferChannelAudio(int connectionId)
Definition: CpTopologyGraphInterface.cpp:2227
virtual UtlBoolean isSendingRtpVideo(int connectionId)
Definition: CpTopologyGraphInterface.cpp:2992
virtual OsStatus addAudioRtpConnectionDestination(int connectionId, int iPriority, const char *candidateIp, int candidatePort)
Add an alternate Audio RTP connection destination for this media interface.
Definition: CpTopologyGraphInterface.cpp:1266
virtual OsStatus defocus()
Take this call out of focus for the local audio device.
Definition: CpTopologyGraphInterface.cpp:2581
virtual OsStatus resumeAudio()
Resume all paused URLs or buffers.
Definition: CpTopologyGraphInterface.cpp:1982
virtual OsStatus getAudioRtpSourceIDs(int connectionId, unsigned int &uiSendingSSRC, unsigned int &uiReceivingSSRC)
Get receiving and sending SSRCs for given connection.
Definition: CpTopologyGraphInterface.cpp:3589
virtual OsStatus recordBufferChannelAudio(int connectionId, char *pBuffer, int bufferSize, int maxRecordTime=-1, int maxSilence=-1)
Start recording to buffer.
Definition: CpTopologyGraphInterface.cpp:2199
virtual OsStatus getVideoQuality(int &quality)
Definition: CpTopologyGraphInterface.cpp:2937
virtual void setContactType(int connectionId, SIPX_CONTACT_TYPE eType, SIPX_CONTACT_ID contactId)
Set the preferred contact type for this media connection.
Definition: CpTopologyGraphInterface.cpp:2632
virtual OsStatus resumeRecordAudio(const UtlString &resourceName)
Definition: CpTopologyGraphInterface.cpp:2174
virtual OsStatus copyPayloadIds(int connectionId, int numCodecs, SdpCodec *remoceCodecs[])
copies payload IDs for matching codecs to interfaces codec list
Definition: CpTopologyGraphInterface.cpp:1424
virtual OsStatus setRtcpTimeOffset(int connectionId, CpMediaInterface::MEDIA_STREAM_TYPE mediaType, int streamIndex, int timeOffset)
Set an offset to the NTP time provided in the RTCP SR.
Definition: CpTopologyGraphInterface.cpp:2391
OsStatus getResourceOutputPortOnBridge(const UtlString &resourceName, int resourceInputPortIndex, int &portOnBridge)
Look up the port on the bridge to which the indicated resource is connected.
Definition: CpTopologyGraphInterface.cpp:774
virtual OsStatus getCapabilities(int connectionId, UtlString &rtpHostAddress, int &rtpAudioPort, int &rtcpAudioPort, int &rtpVideoPort, int &rtcpVideoPort, SdpCodecList &supportedCodecs, SdpSrtpParameters &srtpParams, int bandWidth, int &videoBandwidth, int &videoFramerate)
Definition: CpTopologyGraphInterface.cpp:800
virtual int getCodecCPUCost()
Definition: CpTopologyGraphInterface.cpp:2785
virtual UtlBoolean isSendingRtpAudio(int connectionId)
Definition: CpTopologyGraphInterface.cpp:2957
virtual OsStatus createConnection(int &connectionId, const char *szLocalAddress, int localPort=0, void *videoWindowHandle=NULL, void *const pSecurityAttributes=NULL, const RtpTransportOptions rtpTransportOptions=RTP_TRANSPORT_UDP)
Create a media connection in the media processing subsystem.
Definition: CpTopologyGraphInterface.cpp:483
virtual uint32_t getSamplesPerFrame()
Returns the samples per frame of the flowgraph.
Definition: CpTopologyGraphInterface.cpp:2880
virtual OsStatus pauseAudio()
Pause all playing URLs or buffers.
Definition: CpTopologyGraphInterface.cpp:1967
virtual OsStatus generateVoiceQualityReport(int connectiond, const char *callId, UtlString &report)
Definition: CpTopologyGraphInterface.cpp:2737
virtual OsStatus resumeRecordChannelAudio(int connectionId)
Resume buffer or file recording which has been paused.
Definition: CpTopologyGraphInterface.cpp:2169
virtual OsStatus stopTone()
Stop playing all tones.
Definition: CpTopologyGraphInterface.cpp:2358
virtual const void * getVideoWindowDisplay()
Definition: CpTopologyGraphInterface.cpp:3083
virtual OsStatus createQueuePlayer(MpStreamQueuePlayer **ppPlayer, OsMsgQ *pMsgQ=NULL, const char *szTarget=NULL)
Deprecated.
Definition: CpTopologyGraphInterface.cpp:2310
virtual OsStatus destroyPlayer(MpStreamPlayer *pPlayer)
Deprecated.
Definition: CpTopologyGraphInterface.cpp:2290
virtual OsStatus getPrimaryCodec(int connectionId, UtlString &audioCodec, UtlString &videoCodec, int *audiopPayloadType, int *videoPayloadType, bool &isEncrypted)
Returns the primary codec for the connection.
Definition: CpTopologyGraphInterface.cpp:2896
virtual OsStatus startChannelOnlyTone(int connectionId, int toneId)
Definition: CpTopologyGraphInterface.cpp:2517
virtual OsStatus recordAudio(const UtlString &resourceName, const char *szFile, CpAudioFileFormat cpFileFormat=CP_WAVE_PCM_16, UtlBoolean appendToFile=FALSE, int numChannels=1, int maxTime=0, int silenceLength=-1, UtlBoolean setupMultiChannelMixesAutomatically=TRUE)
Definition: CpTopologyGraphInterface.cpp:2045
void release()
Definition: CpTopologyGraphInterface.cpp:476
virtual UtlBoolean isAudioAvailable()
Query if the audio device is available.
Definition: CpTopologyGraphInterface.cpp:3073
CpTopologyMediaConnection * getMediaConnection(int connectionId)
Get media connection structure by its connectionID.
Definition: CpTopologyGraphInterface.cpp:4198
int getNextConnectionId()
Get the next unique connection Id scoped to this flowgraph.
Definition: CpTopologyGraphInterface.cpp:4019
virtual OsStatus stopChannelOnlyTone(int connectionId)
Definition: CpTopologyGraphInterface.cpp:2543
virtual OsStatus addAudioRtcpConnectionDestination(int connectionId, int iPriority, const char *candidateIp, int candidatePort)
Add an alternate Audio RTCP connection destination for this media interface.
Definition: CpTopologyGraphInterface.cpp:1305
OsStatus setMicGain(float gain)
Set the Mic gain.
Definition: CpTopologyGraphInterface.cpp:4439
virtual OsMsgDispatcher * setNotificationDispatcher(OsMsgDispatcher *pNotificationDispatcher)
Add, replace, or clear the media notification dispatcher held by the MI.
Definition: CpTopologyGraphInterface.cpp:684
OsStatus enableDtx(int connectionId, UtlBoolean enable)
Enable/disable discontinuous transmission for given connection.
Definition: CpTopologyGraphInterface.cpp:2744
MpResourceFactory * mpResourceFactory
Definition: CpTopologyGraphInterface.h:750
OsStatus addNatedContacts(int connectionId, int nMaxAddresses, UtlString rtpHostAddresses[], int rtpAudioPorts[], int rtcpAudioPorts[], int rtpVideoPorts[], int rtcpVideoPorts[], int &nActualAddresses)
Definition: CpTopologyGraphInterface.cpp:3393
virtual OsStatus stopChannelTone(int connectionId)
Stop playing DTMF tone.
Definition: CpTopologyGraphInterface.cpp:2487
OsStatus getConnectionPortOnBridge(int connectionId, int streamNum, int &portOnBridge)
Look up the port on the bridge to which the indicated connection is connected.
Definition: CpTopologyGraphInterface.cpp:735
UtlString mTurnServer
Definition: CpTopologyGraphInterface.h:765
virtual OsStatus getCapabilitiesEx(int connectionId, int nMaxAddresses, UtlString rtpHostAddresses[], int rtpAudioPorts[], int rtcpAudioPorts[], int rtpVideoPorts[], int rtcpVideoPorts[], RTP_TRANSPORT transportTypes[], int &nActualAddresses, SdpCodecList &supportedCodecs, SdpSrtpParameters &srtpParameters, int bandWidth, int &videoBandwidth, int &videoFramerate)
Definition: CpTopologyGraphInterface.cpp:949
virtual void setCodecCPULimit(int iLimit)
Set the CPU resource limit for the media connections in this call.
Definition: CpTopologyGraphInterface.cpp:2599
virtual UtlBoolean isReceivingRtpAudio(int connectionId)
Definition: CpTopologyGraphInterface.cpp:2975
virtual OsStatus recordBufferAudio(const UtlString &resourceName, char *pBuffer, int bufferSize, int maxRecordTime=-1, int maxSilence=-1)
Definition: CpTopologyGraphInterface.cpp:2208
OsStatus addRelayContacts(int connectionId, int nMaxAddresses, UtlString rtpHostAddresses[], int rtpAudioPorts[], int rtcpAudioPorts[], int rtpVideoPorts[], int rtcpVideoPorts[], int &nActualAddresses)
Definition: CpTopologyGraphInterface.cpp:3446
virtual int getCodecCPULimit()
Definition: CpTopologyGraphInterface.cpp:2818
virtual OsStatus stopAudio()
Stop playing any URLs or buffers.
Definition: CpTopologyGraphInterface.cpp:1997
virtual OsStatus recordMic(int ms, int16_t *pAudioBuf, int bufferSize)
Record the microphone data.
Definition: CpTopologyGraphInterface.cpp:2611
virtual OsStatus giveFocus()
Give the focus of the local audio device to the associated call.
Definition: CpTopologyGraphInterface.cpp:2569
int mExpeditedIpTos
Definition: CpTopologyGraphInterface.h:754
OsStatus addLocalContacts(int connectionId, int nMaxAddresses, UtlString rtpHostAddresses[], int rtpAudioPorts[], int rtcpAudioPorts[], int rtpVideoPorts[], int rtcpVideoPorts[], int &nActualAddresses)
Definition: CpTopologyGraphInterface.cpp:3339
virtual OsStatus setMediaPassThrough(int connectionId, MEDIA_STREAM_TYPE mediaType, int mediaTypeStreamIndex, UtlString &receiveAddress, int rtpPort, int rtcpPort)
Set pass through port and address to send RTP stream to.
Definition: CpTopologyGraphInterface.cpp:1055
virtual OsStatus limitCodecs(int connectionId, const SdpCodecList &includeOnlyCodecList)
Further restrict the set of codecs to the list provided.
Definition: CpTopologyGraphInterface.cpp:2656
virtual OsStatus recordCircularBufferAudio(const UtlString &resourceName, CircularBufferPtr &buffer, CpMediaInterface::CpAudioFileFormat recordingFormat, unsigned long recordingBufferNotificationWatermark)
Definition: CpTopologyGraphInterface.cpp:2246
virtual OsStatus getVideoFrameRate(int &frameRate)
Definition: CpTopologyGraphInterface.cpp:2950
virtual OsStatus addVideoRtpConnectionDestination(int connectionId, int iPriority, const char *candidateIp, int candidatePort)
Add an alternate Video RTP connection destination for this media interface.
Definition: CpTopologyGraphInterface.cpp:1346
MpInputDeviceManager * mpInputDeviceManager
Definition: CpTopologyGraphInterface.h:757
virtual OsStatus stopRecordChannelAudio(int connectionId)
Stop buffer or file recording which has been started.
Definition: CpTopologyGraphInterface.cpp:2184
virtual OsStatus getVideoBitRate(int &bitRate)
Definition: CpTopologyGraphInterface.cpp:2943
UtlBoolean getRelayAddresses(int connectionId, UtlString &hostIp, int &rtpAudioPort, int &rtcpAudioPort, int &rtpVideoPort, int &rtcpVideoPort)
Definition: CpTopologyGraphInterface.cpp:3247
int mLastConnectionId
Definition: CpTopologyGraphInterface.h:749
UtlBoolean getNatedAddresses(int connectionId, UtlString &hostIp, int &rtpAudioPort, int &rtcpAudioPort, int &rtpVideoPort, int &rtcpVideoPort)
Definition: CpTopologyGraphInterface.cpp:3155
virtual OsStatus setConnectionFramerate(int connectionId, int framerate)
Set connection framerate on the fly.
Definition: CpTopologyGraphInterface.cpp:2726
virtual OsStatus createPlaylistPlayer(MpStreamPlaylistPlayer **ppPlayer, OsMsgQ *pMsgQ=NULL, const char *szTarget=NULL)
Deprecated.
Definition: CpTopologyGraphInterface.cpp:2296
virtual OsStatus setMixWeightsForOutput(int bridgeOutputPort, int numWeights, float weights[])
Set gain for inputs to given output on bridge.
Definition: CpTopologyGraphInterface.cpp:4341
virtual UtlBoolean isVideoConferencing()
Query if we are mixing a video conference.
Definition: CpTopologyGraphInterface.h:672
UtlDList mMediaConnections
Definition: CpTopologyGraphInterface.h:753
OsStatus discardLoopbackRtp(CpTopologyMediaConnection *mediaConnection)
Enable discarding of our RTP stream, looped back to us.
Definition: CpTopologyGraphInterface.cpp:4204
virtual UtlBoolean canAddParty()
Query whether a new party can be added to this media interfaces.
Definition: CpTopologyGraphInterface.cpp:3056
UtlString mStunServer
Definition: CpTopologyGraphInterface.h:762
UtlBoolean mEnableIce
Definition: CpTopologyGraphInterface.h:770
virtual OsStatus playChannelAudio(int connectionId, const char *url, UtlBoolean repeat, UtlBoolean local, UtlBoolean remote, UtlBoolean mixWithMic=false, int downScaling=100, UtlBoolean autoStopOnFinish=TRUE)
Definition: CpTopologyGraphInterface.cpp:2016
UtlString mTurnPassword
Definition: CpTopologyGraphInterface.h:769
virtual OsStatus getConnectionOutputLatency(int &latency, MpConnectionID connectionId=-1)
Get a latency of the output part of the RTP or local connection.
Definition: CpTopologyGraphInterface.cpp:3790
CpTopologyMediaConnection * createMediaConnection(int &connectionId, UtlBoolean isMcast)
Create media connection structure to store connection params.
Definition: CpTopologyGraphInterface.cpp:4024
MaNotfTranslatorDispatcher mTranslatorDispatcher
Definition: CpTopologyGraphInterface.h:775
virtual OsStatus stopChannelAudio(int connectionId)
Definition: CpTopologyGraphInterface.cpp:2028
virtual uint32_t getSamplesPerSec()
Returns the sample rate of the flowgraph.
Definition: CpTopologyGraphInterface.cpp:2875
OsStatus setMicWeightOnBridge(float weight)
Set mixing weight from the Mic to all other Bridge ports.
Definition: CpTopologyGraphInterface.cpp:4456
virtual OsStatus enableVideoTransport(int connectionId, UtlBoolean bEnable)
Definition: CpTopologyGraphInterface.h:572
virtual UtlBoolean isAudioInitialized(int connectionId)
Query whether the connection has started sending or receiving audio.
Definition: CpTopologyGraphInterface.cpp:3068
virtual OsStatus setVideoWindowDisplay(const void *hWnd)
Definition: CpTopologyGraphInterface.cpp:3078
virtual OsStatus pauseRecordAudio(const UtlString &resourceName)
Definition: CpTopologyGraphInterface.cpp:2159
virtual OsStatus startRtpSend(int connectionId, int numCodecs, SdpCodec *sendCodec[])
Start sending RTP using the specified codec list.
Definition: CpTopologyGraphInterface.cpp:1468
MpInputDeviceHandle mInputDeviceHandle
Definition: CpTopologyGraphInterface.h:758
Definition: CpTopologyGraphInterface.h:51
UtlHashMap mInterfaceProperties
Definition: CpTopologyGraphInterface.h:774
virtual OsStatus addVideoRtcpConnectionDestination(int connectionId, int iPriority, const char *candidateIp, int candidatePort)
Add an alternate Video RTCP connection destination for this media interface.
Definition: CpTopologyGraphInterface.cpp:1385
virtual OsStatus playAudio(const char *url, UtlBoolean repeat, UtlBoolean local, UtlBoolean remote, UtlBoolean mixWithMic=false, int downScaling=100, UtlBoolean autoStopAfterFinish=TRUE)
Play the specified audio URL to the call.
Definition: CpTopologyGraphInterface.cpp:1879
virtual OsStatus playBuffer(char *buf, unsigned long bufSize, uint32_t bufRate, int type, UtlBoolean repeat, UtlBoolean local, UtlBoolean remote, OsProtectedEvent *event=NULL, UtlBoolean mixWithMic=false, int downScaling=100, UtlBoolean autoStopOnFinish=TRUE)
Play the specified audio buffer to the call.
Definition: CpTopologyGraphInterface.cpp:1916