res_stasis.c: Added video_single option for bridge creation

Currently, it was not possible to create bridge with video_mode single.
This made hard to put the bridge in a vidoe_single mode.
So, added video_single option for Bridge creation using the ARI.
This allows create a bridge with video_mode single.

ASTERISK-29055

Change-Id: I43e720e5c83fc75fafe10fe22808ae7f055da2ae
This commit is contained in:
Sungtae Kim
2020-08-30 22:42:06 +02:00
committed by Friendly Automation
parent 7eaae4e7b6
commit a0d41a27d4
5 changed files with 17 additions and 11 deletions

View File

@@ -3818,13 +3818,15 @@ void ast_bridge_set_single_src_video_mode(struct ast_bridge *bridge, struct ast_
ast_bridge_lock(bridge);
cleanup_video_mode(bridge);
bridge->softmix.video_mode.mode = AST_BRIDGE_VIDEO_MODE_SINGLE_SRC;
bridge->softmix.video_mode.mode_data.single_src_data.chan_vsrc = ast_channel_ref(video_src_chan);
ast_verb(5, "Video source in bridge '%s' (%s) is now '%s' (%s)\n",
bridge->name, bridge->uniqueid,
ast_channel_name(video_src_chan),
ast_channel_uniqueid(video_src_chan));
if (video_src_chan) {
bridge->softmix.video_mode.mode_data.single_src_data.chan_vsrc = ast_channel_ref(video_src_chan);
ast_verb(5, "Video source in bridge '%s' (%s) is now '%s' (%s)\n",
bridge->name, bridge->uniqueid,
ast_channel_name(video_src_chan),
ast_channel_uniqueid(video_src_chan));
ast_indicate(video_src_chan, AST_CONTROL_VIDUPDATE);
}
ast_bridge_publish_state(bridge);
ast_indicate(video_src_chan, AST_CONTROL_VIDUPDATE);
ast_bridge_unlock(bridge);
}