Asterisk - The Open Source Telephony Project  18.5.0
Public Member Functions | Data Fields
softmix_channel Struct Reference

Structure which contains per-channel mixing information. More...

#include <bridge_softmix_internal.h>

Collaboration diagram for softmix_channel:
Collaboration graph
[legend]

Public Member Functions

 AST_VECTOR (, int) video_sources
 

Data Fields

unsigned int binaural:1
 
unsigned int binaural_pos
 
unsigned int binaural_suspended:1
 
struct ast_dspdsp
 
struct ast_slinfactory factory
 
short final_buf [MAX_DATALEN]
 
unsigned int have_audio:1
 
unsigned int is_announcement:1
 
ast_mutex_t lock
 
short our_buf [MAX_DATALEN]
 
struct convolve_channel_pairour_chan_pair
 
int rate
 
struct ast_formatread_slin_format
 
struct ast_rtp_rtcp_feedback_remb remb
 
struct softmix_remb_collectorremb_collector
 
unsigned int talking:1
 TRUE if a channel is talking. More...
 
struct ast_stream_topologytopology
 
struct video_follow_talker_data video_talker
 
struct ast_frame write_frame
 

Detailed Description

Structure which contains per-channel mixing information.

Definition at line 132 of file bridge_softmix_internal.h.

Member Function Documentation

◆ AST_VECTOR()

AST_VECTOR ( int  )

The bridge streams which are feeding us video sources

Field Documentation

◆ binaural

unsigned int binaural

We set binaural also as channel data, to have better tracking. It is also present in transpvt.

Definition at line 155 of file bridge_softmix_internal.h.

Referenced by set_softmix_bridge_data(), softmix_bridge_leave(), softmix_bridge_unsuspend(), softmix_mixing_loop(), and softmix_process_write_audio().

◆ binaural_pos

unsigned int binaural_pos

The position of the channel in the virtual room represented by an id This ID has to be set even if the channel has no binaural output!

Definition at line 161 of file bridge_softmix_internal.h.

Referenced by add_binaural_mixing(), set_softmix_bridge_data(), and softmix_bridge_leave().

◆ binaural_suspended

unsigned int binaural_suspended

Marks the channel for suspending all binaural activity on the output

Definition at line 165 of file bridge_softmix_internal.h.

Referenced by create_binaural_frame(), and softmix_process_write_binaural_audio().

◆ dsp

struct ast_dsp* dsp

DSP for detecting silence

Definition at line 142 of file bridge_softmix_internal.h.

Referenced by set_softmix_bridge_data(), softmix_bridge_leave(), and softmix_bridge_write_voice().

◆ factory

struct ast_slinfactory factory

Factory which contains audio read in from the channel

Definition at line 136 of file bridge_softmix_internal.h.

Referenced by clear_talking(), set_softmix_bridge_data(), softmix_bridge_leave(), softmix_bridge_write_voice(), and softmix_process_read_audio().

◆ final_buf

short final_buf[MAX_DATALEN]

Buffer containing final mixed audio from all sources

Definition at line 169 of file bridge_softmix_internal.h.

Referenced by create_binaural_frame(), set_softmix_bridge_data(), softmix_mixing_loop(), softmix_process_write_audio(), and softmix_process_write_binaural_audio().

◆ have_audio

unsigned int have_audio

TRUE if the channel provided audio for this mixing interval

Definition at line 151 of file bridge_softmix_internal.h.

Referenced by softmix_process_read_audio(), and softmix_process_write_audio().

◆ is_announcement

unsigned int is_announcement

TRUE if this is an announcement channel (data will not be convolved)

Definition at line 157 of file bridge_softmix_internal.h.

Referenced by add_binaural_mixing(), create_binaural_frame(), and set_softmix_bridge_data().

◆ lock

◆ our_buf

short our_buf[MAX_DATALEN]

Buffer containing only the audio from the channel

Definition at line 171 of file bridge_softmix_internal.h.

Referenced by softmix_process_read_audio(), softmix_process_write_audio(), and softmix_process_write_binaural_audio().

◆ our_chan_pair

struct convolve_channel_pair* our_chan_pair

The channel pair for this channel

Definition at line 163 of file bridge_softmix_internal.h.

Referenced by add_binaural_mixing(), and softmix_process_write_binaural_audio().

◆ rate

int rate

Channel sample rate, stored to retrieve it after unsuspending the channel

Definition at line 167 of file bridge_softmix_internal.h.

Referenced by set_softmix_bridge_data(), and softmix_bridge_unsuspend().

◆ read_slin_format

struct ast_format* read_slin_format

Current expected read slinear format.

Definition at line 140 of file bridge_softmix_internal.h.

Referenced by set_softmix_bridge_data(), and softmix_bridge_write_voice().

◆ remb

The latest REMB report from this participant

Definition at line 177 of file bridge_softmix_internal.h.

Referenced by remb_collect_report(), and softmix_bridge_write_rtcp().

◆ remb_collector

struct softmix_remb_collector* remb_collector

The REMB collector for this channel, collects REMB from all video receivers

Definition at line 179 of file bridge_softmix_internal.h.

Referenced by remb_enable_collection(), remb_send_report(), and softmix_bridge_leave().

◆ talking

unsigned int talking

TRUE if a channel is talking.

Note
This affects how the channel's audio is mixed back to it.

Definition at line 149 of file bridge_softmix_internal.h.

Referenced by clear_talking(), and softmix_bridge_write_voice().

◆ topology

struct ast_stream_topology* topology

◆ video_talker

struct video_follow_talker_data video_talker

Data pertaining to talker mode for video conferencing

Definition at line 173 of file bridge_softmix_internal.h.

Referenced by softmix_bridge_write_video(), and softmix_bridge_write_voice().

◆ write_frame

struct ast_frame write_frame

Frame that contains mixed audio to be written out to the channel

Definition at line 138 of file bridge_softmix_internal.h.

Referenced by create_binaural_frame(), set_softmix_bridge_data(), softmix_bridge_leave(), softmix_mixing_loop(), softmix_process_write_audio(), and softmix_process_write_binaural_audio().


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