Ignore:
Timestamp:
May 15, 2018 8:23:44 AM (6 years ago)
Author:
ming
Message:

Closed #2113: Implement conference signal level adjustment for a specific connection

File:
1 edited

Legend:

Unmodified
Added
Removed
  • pjproject/trunk/pjsip/include/pjsua-lib/pjsua.h

    r5788 r5792  
    66146614 
    66156615/** 
     6616 * This structure specifies the parameters for conference ports connection. 
     6617 * Use pjsua_conf_connect_param_default() to initialize this structure with 
     6618 * default values. 
     6619 */ 
     6620typedef struct pjsua_conf_connect_param 
     6621{ 
     6622    /* 
     6623     * Signal level adjustment from the source to the sink to make it 
     6624     * louder or quieter. Value 1.0 means no level adjustment, 
     6625     * while value 0 means to mute the port. 
     6626     * 
     6627     * Default: 1.0 
     6628     */ 
     6629    float               level; 
     6630 
     6631} pjsua_conf_connect_param; 
     6632 
     6633 
     6634/** 
     6635 * Initialize pjsua_conf_connect_param with default values. 
     6636 * 
     6637 * @param prm           The parameter. 
     6638 */ 
     6639PJ_DECL(void) pjsua_conf_connect_param_default(pjsua_conf_connect_param *prm); 
     6640 
     6641 
     6642/** 
    66166643 * Get maxinum number of conference ports. 
    66176644 * 
     
    67046731PJ_DECL(pj_status_t) pjsua_conf_connect(pjsua_conf_port_id source, 
    67056732                                        pjsua_conf_port_id sink); 
     6733 
     6734/** 
     6735 * Establish unidirectional media flow from source to sink. One source 
     6736 * may transmit to multiple destinations/sink. And if multiple 
     6737 * sources are transmitting to the same sink, the media will be mixed 
     6738 * together. Source and sink may refer to the same ID, effectively 
     6739 * looping the media. 
     6740 * 
     6741 * Signal level from the source to the sink can be adjusted by making 
     6742 * it louder or quieter via the parameter param. The level adjustment 
     6743 * will apply to a specific connection only (i.e. only for the signal 
     6744 * from the source to the sink), as compared to 
     6745 * pjsua_conf_adjust_tx_level()/pjsua_conf_adjust_rx_level() which 
     6746 * applies to all signals from/to that port. The signal adjustment 
     6747 * will be cumulative, in this following order: 
     6748 * signal from the source will be adjusted with the level specified 
     6749 * in pjsua_conf_adjust_rx_level(), then with the level specified 
     6750 * via this API, and finally with the level specified to the sink's 
     6751 * pjsua_conf_adjust_tx_level(). 
     6752 * 
     6753 * If bidirectional media flow is desired, application needs to call 
     6754 * this function twice, with the second one having the arguments 
     6755 * reversed. 
     6756 * 
     6757 * @param source        Port ID of the source media/transmitter. 
     6758 * @param sink          Port ID of the destination media/received. 
     6759 * @param prm           Conference port connection param. If set to 
     6760 *                      NULL, default values will be used. 
     6761 * 
     6762 * @return              PJ_SUCCESS on success, or the appropriate error code. 
     6763 */ 
     6764PJ_DECL(pj_status_t) pjsua_conf_connect2(pjsua_conf_port_id source, 
     6765                                         pjsua_conf_port_id sink, 
     6766                                         const pjsua_conf_connect_param *prm); 
    67066767 
    67076768 
Note: See TracChangeset for help on using the changeset viewer.