diff options
Diffstat (limited to 'bridges')
-rw-r--r-- | bridges/bridge_softmix.c | 28 |
1 files changed, 9 insertions, 19 deletions
diff --git a/bridges/bridge_softmix.c b/bridges/bridge_softmix.c index fe058e4e6..436fab7af 100644 --- a/bridges/bridge_softmix.c +++ b/bridges/bridge_softmix.c @@ -442,21 +442,6 @@ static void softmix_bridge_unsuspend(struct ast_bridge *bridge, struct ast_bridg } } -/*! - * \internal - * \brief Indicate a source change to the channel. - * \since 12.0.0 - * - * \param bridge_channel Which channel source is changing. - * - * \retval 0 on success. - * \retval -1 on error. - */ -static int softmix_src_change(struct ast_bridge_channel *bridge_channel) -{ - return ast_bridge_channel_queue_control_data(bridge_channel, AST_CONTROL_SRCCHANGE, NULL, 0); -} - /*! \brief Function called when a channel is joined into the bridge */ static int softmix_bridge_join(struct ast_bridge *bridge, struct ast_bridge_channel *bridge_channel) { @@ -473,8 +458,6 @@ static int softmix_bridge_join(struct ast_bridge *bridge, struct ast_bridge_chan return -1; } - softmix_src_change(bridge_channel); - /* Can't forget the lock */ ast_mutex_init(&sc->lock); @@ -501,8 +484,6 @@ static void softmix_bridge_leave(struct ast_bridge *bridge, struct ast_bridge_ch } bridge_channel->tech_pvt = NULL; - softmix_src_change(bridge_channel); - /* Drop mutex lock */ ast_mutex_destroy(&sc->lock); @@ -696,6 +677,15 @@ static int softmix_bridge_write_control(struct ast_bridge *bridge, struct ast_br * XXX Softmix needs to use channel roles to determine what to * do with control frames. */ + + switch (frame->subclass.integer) { + case AST_CONTROL_VIDUPDATE: + ast_bridge_queue_everyone_else(bridge, NULL, frame); + break; + default: + break; + } + return 0; } |