Engage Engine API  1.246.9086
Loading...
Searching...
No Matches
AppConfigurationObjects::TxAudio Class Reference

Configuration for the audio transmit properties for a group. More...

#include <ConfigurationObjects.h>

Inherits AppConfigurationObjects::ConfigurationObjectBase.

Public Types

enum  TxCodec_t {
  ctExternal = -1 , ctUnknown = 0 , ctG711ulaw = 1 , ctG711alaw = 2 ,
  ctGsm610 = 3 , ctG729a = 4 , ctPcm = 5 , ctAmrNb4750 = 10 ,
  ctAmrNb5150 = 11 , ctAmrNb5900 = 12 , ctAmrNb6700 = 13 , ctAmrNb7400 = 14 ,
  ctAmrNb7950 = 15 , ctAmrNb10200 = 16 , ctAmrNb12200 = 17 , ctOpus6000 = 20 ,
  ctOpus8000 = 21 , ctOpus10000 = 22 , ctOpus12000 = 23 , ctOpus14000 = 24 ,
  ctOpus16000 = 25 , ctOpus18000 = 26 , ctOpus20000 = 27 , ctOpus22000 = 28 ,
  ctOpus24000 = 29 , ctSpxNb2150 = 30 , ctSpxNb3950 = 31 , ctSpxNb5950 = 32 ,
  ctSpxNb8000 = 33 , ctSpxNb11000 = 34 , ctSpxNb15000 = 35 , ctSpxNb18200 = 36 ,
  ctSpxNb24600 = 37 , ctC2450 = 40 , ctC2700 = 41 , ctC21200 = 42 ,
  ctC21300 = 43 , ctC21400 = 44 , ctC21600 = 45 , ctC22400 = 46 ,
  ctC23200 = 47 , ctMelpe600 = 50 , ctMelpe1200 = 51 , ctMelpe2400 = 52
}
 Codec Types enum. More...
 

Public Member Functions

void clear ()
 
- Public Member Functions inherited from AppConfigurationObjects::ConfigurationObjectBase
virtual void initForDocumenting ()
 
virtual std::string toString ()
 
virtual bool isDocumenting () const
 

Public Attributes

bool enabled
 [Optional, Default: true] Audio transmission is enabled
 
TxCodec_t encoder
 [Optional, Default: ctOpus8000] Specifies the Codec Type to use for the transmission. See TxCodec_t for all codec types
 
std::string encoderName
 [Optional] The name of the external codec - overrides encoder
 
int framingMs
 [Optional, Default: 60] Audio sample framing size in milliseconds.
 
int blockCount
 [Optional, Default: 0] If >0, derives framingMs based on the encoder's internal operation
 
bool fdx
 [Optional, Default: false] Indicates if full duplex audio is supported.
 
bool noHdrExt
 [Optional, Default: false] Set to true whether to disable header extensions.
 
int maxTxSecs
 [Optional, Default: 0] Maximum number of seconds the Engine will transmit for.
 
int extensionSendInterval
 [Optional, Default: 10] The number of packets when to periodically send the header extension.
 
int initialHeaderBurst
 [Optional, Default: 5] Number of headers to send at the beginning of a talk burst.
 
int trailingHeaderBurst
 [Optional, Default: 5] Number of headers to send at the conclusion of a talk burst.
 
int startTxNotifications
 [Optional, Default: 5] Number of start TX notifications to send when TX is about to begin.
 
int customRtpPayloadType
 [Optional, Default: -1] The custom RTP payload type to use for transmission. A value of -1 causes the default Engage-defined RTP payload type to be used for the selected CODEC.
 
uint32_t internalKey
 [INTERNAL] The Engine-assigned key for the codec
 
bool resetRtpOnTx
 [Optional, Default: true] Resets RTP counters on each new transmission.
 
bool enableSmoothing
 [Optional, Default: true] Smooth input audio
 
bool dtx
 [Optional, Default: false] Support discontinuous transmission on those CODECs that allow it
 
int smoothedHangTimeMs
 [Optional, Default: 0] Hang timer for ongoing TX - only applicable if enableSmoothing is true
 
- Public Attributes inherited from AppConfigurationObjects::ConfigurationObjectBase
nlohmann::json _attached
 

Additional Inherited Members

- Protected Attributes inherited from AppConfigurationObjects::ConfigurationObjectBase
bool _documenting
 

Detailed Description

Configuration for the audio transmit properties for a group.

Helper C++ class to serialize and de-serialize TxAudio JSON

See also
Group

This JSON is used as an object in the Group definition JSON.

Example:

{
"debug": false,
"encoder": 0,
"extensionSendInterval": 10,
"fdx": false,
"framingMs": 60,
"initialHeaderBurst": 5,
"maxTxSecs": 0,
"noHdrExt": false,
"trailingHeaderBurst": 5,
"userTxFlags": 0,
"userTxPriority": 0
}

Definition at line 3144 of file ConfigurationObjects.h.

Member Enumeration Documentation

◆ TxCodec_t

Codec Types enum.

More detailed TxCodec_t description.

Enumerator
ctExternal 

Externally implemented.

ctUnknown 

Unknown Codec type.

ctG711ulaw 

G711 U-Law 64 (kbit/s) See for more info

ctG711alaw 

G711 A-Law 64 (kbit/s) See for more info

ctGsm610 

GSM Full Rate 13.2 (kbit/s) See for more info

ctG729a 

G.729a 8 (kbit/s) See for more info

ctPcm 

PCM.

ctAmrNb4750 

AMR Narrowband 4.75 (kbit/s) See for more info

ctAmrNb5150 

AMR Narrowband 5.15 (kbit/s) See for more info

ctAmrNb5900 

AMR Narrowband 5.9 (kbit/s) See for more info

ctAmrNb6700 

AMR Narrowband 6.7 (kbit/s) See for more info

ctAmrNb7400 

AMR Narrowband 7.4 (kbit/s) See for more info

ctAmrNb7950 

AMR Narrowband 7.95 (kbit/s) See for more info

ctAmrNb10200 

AMR Narrowband 10.2 (kbit/s) See for more info

ctAmrNb12200 

AMR Narrowband 12.2 (kbit/s) See for more info

ctOpus6000 

Opus 6 (kbit/s) See for more info

ctOpus8000 

Opus 8 (kbit/s) See for more info

ctOpus10000 

Opus 10 (kbit/s) See for more info

ctOpus12000 

Opus 12 (kbit/s) See for more info

ctOpus14000 

Opus 14 (kbit/s) See for more info

ctOpus16000 

Opus 16 (kbit/s) See for more info

ctOpus18000 

Opus 18 (kbit/s) See for more info

ctOpus20000 

Opus 20 (kbit/s) See for more info

ctOpus22000 

Opus 22 (kbit/s) See for more info

ctOpus24000 

Opus 24 (kbit/s) See for more info

ctSpxNb2150 

Speex 2.15 (kbit/s) See for more info

ctSpxNb3950 

Speex 3.95 (kbit/s) See for more info

ctSpxNb5950 

Speex 5.95 (kbit/s) See for more info

ctSpxNb8000 

Speex 8 (kbit/s) See for more info

ctSpxNb11000 

Speex 11 (kbit/s) See for more info

ctSpxNb15000 

Speex 15 (kbit/s) See for more info

ctSpxNb18200 

Speex 18.2 (kbit/s) See for more info

ctSpxNb24600 

Speex 24.6 (kbit/s) See for more info

ctC2450 

Codec2 0.45 (kbit/s) See for more info

ctC2700 

Codec2 0.70 (kbit/s) See for more info

ctC21200 

Codec2 1.2 (kbit/s) See for more info

ctC21300 

Codec2 1.3 (kbit/s) See for more info

ctC21400 

Codec2 1.4 (kbit/s) See for more info

ctC21600 

Codec2 1.6 (kbit/s) See for more info

ctC22400 

Codec2 2.4 (kbit/s) See for more info

ctC23200 

Codec2 3.2 (kbit/s) See for more info

ctMelpe600 

MELPe 0.60 (kbit/s) See for more info

ctMelpe1200 

MELPe 1.2 (kbit/s) See for more info

ctMelpe2400 

MELPe 2.4 (kbit/s) See for more info

Definition at line 3155 of file ConfigurationObjects.h.

Constructor & Destructor Documentation

◆ TxAudio()

AppConfigurationObjects::TxAudio::TxAudio ( )
inline

Definition at line 3375 of file ConfigurationObjects.h.

Member Function Documentation

◆ clear()

void AppConfigurationObjects::TxAudio::clear ( )
inline

Definition at line 3380 of file ConfigurationObjects.h.

Member Data Documentation

◆ blockCount

int AppConfigurationObjects::TxAudio::blockCount

[Optional, Default: 0] If >0, derives framingMs based on the encoder's internal operation

Definition at line 3319 of file ConfigurationObjects.h.

◆ customRtpPayloadType

int AppConfigurationObjects::TxAudio::customRtpPayloadType

[Optional, Default: -1] The custom RTP payload type to use for transmission. A value of -1 causes the default Engage-defined RTP payload type to be used for the selected CODEC.

Definition at line 3358 of file ConfigurationObjects.h.

◆ dtx

bool AppConfigurationObjects::TxAudio::dtx

[Optional, Default: false] Support discontinuous transmission on those CODECs that allow it

Definition at line 3370 of file ConfigurationObjects.h.

◆ enabled

bool AppConfigurationObjects::TxAudio::enabled

[Optional, Default: true] Audio transmission is enabled

Definition at line 3307 of file ConfigurationObjects.h.

◆ enableSmoothing

bool AppConfigurationObjects::TxAudio::enableSmoothing

[Optional, Default: true] Smooth input audio

Definition at line 3367 of file ConfigurationObjects.h.

◆ encoder

TxCodec_t AppConfigurationObjects::TxAudio::encoder

[Optional, Default: ctOpus8000] Specifies the Codec Type to use for the transmission. See TxCodec_t for all codec types

Definition at line 3310 of file ConfigurationObjects.h.

◆ encoderName

std::string AppConfigurationObjects::TxAudio::encoderName

[Optional] The name of the external codec - overrides encoder

Definition at line 3313 of file ConfigurationObjects.h.

◆ extensionSendInterval

int AppConfigurationObjects::TxAudio::extensionSendInterval

[Optional, Default: 10] The number of packets when to periodically send the header extension.

Eg, if its 3, then every third packed will contain the header extension.

Definition at line 3344 of file ConfigurationObjects.h.

◆ fdx

bool AppConfigurationObjects::TxAudio::fdx

[Optional, Default: false] Indicates if full duplex audio is supported.

Definition at line 3322 of file ConfigurationObjects.h.

◆ framingMs

int AppConfigurationObjects::TxAudio::framingMs

[Optional, Default: 60] Audio sample framing size in milliseconds.

Definition at line 3316 of file ConfigurationObjects.h.

◆ initialHeaderBurst

int AppConfigurationObjects::TxAudio::initialHeaderBurst

[Optional, Default: 5] Number of headers to send at the beginning of a talk burst.

Definition at line 3347 of file ConfigurationObjects.h.

◆ internalKey

uint32_t AppConfigurationObjects::TxAudio::internalKey

[INTERNAL] The Engine-assigned key for the codec

Definition at line 3361 of file ConfigurationObjects.h.

◆ maxTxSecs

int AppConfigurationObjects::TxAudio::maxTxSecs

[Optional, Default: 0] Maximum number of seconds the Engine will transmit for.

When the time limit is exceeded, the Engine will fire a PFN_ENGAGE_GROUP_MAX_TX_TIME_EXCEEDED event.

Definition at line 3337 of file ConfigurationObjects.h.

◆ noHdrExt

bool AppConfigurationObjects::TxAudio::noHdrExt

[Optional, Default: false] Set to true whether to disable header extensions.

Indicates whether the Engine should not add a header extension on the RTP packet. If the header extension is omitted then any of the information such as Alias, NodeID and Tx Priority will not be transmitted along with the audio.

Definition at line 3330 of file ConfigurationObjects.h.

◆ resetRtpOnTx

bool AppConfigurationObjects::TxAudio::resetRtpOnTx

[Optional, Default: true] Resets RTP counters on each new transmission.

Definition at line 3364 of file ConfigurationObjects.h.

◆ smoothedHangTimeMs

int AppConfigurationObjects::TxAudio::smoothedHangTimeMs

[Optional, Default: 0] Hang timer for ongoing TX - only applicable if enableSmoothing is true

Definition at line 3373 of file ConfigurationObjects.h.

◆ startTxNotifications

int AppConfigurationObjects::TxAudio::startTxNotifications

[Optional, Default: 5] Number of start TX notifications to send when TX is about to begin.

Definition at line 3353 of file ConfigurationObjects.h.

◆ trailingHeaderBurst

int AppConfigurationObjects::TxAudio::trailingHeaderBurst

[Optional, Default: 5] Number of headers to send at the conclusion of a talk burst.

Definition at line 3350 of file ConfigurationObjects.h.


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