提交 222eff14 authored 作者: Anthony Minessale's avatar Anthony Minessale

FS-8595 contd

上级 5f344bc5
...@@ -1943,9 +1943,9 @@ void conference_video_set_absolute_incoming_bitrate(conference_obj_t *conference ...@@ -1943,9 +1943,9 @@ void conference_video_set_absolute_incoming_bitrate(conference_obj_t *conference
void conference_video_check_auto_bitrate(conference_member_t *member, mcu_layer_t *layer) void conference_video_check_auto_bitrate(conference_member_t *member, mcu_layer_t *layer)
{ {
switch_vid_params_t vid_params = { 0 }; switch_vid_params_t vid_params = { 0 };
int kps = 0; int kps = 0, kps_in = 0;
int max = 0; int max = 0;
int min_in = 0, min_layer = 0, min = 0; int min_layer = 0, min = 0;
if (!conference_utils_test_flag(member->conference, CFLAG_MANAGE_INBOUND_VIDEO_BITRATE) || if (!conference_utils_test_flag(member->conference, CFLAG_MANAGE_INBOUND_VIDEO_BITRATE) ||
switch_channel_test_flag(member->channel, CF_VIDEO_BITRATE_UNMANAGABLE)) { switch_channel_test_flag(member->channel, CF_VIDEO_BITRATE_UNMANAGABLE)) {
...@@ -1981,14 +1981,22 @@ void conference_video_check_auto_bitrate(conference_member_t *member, mcu_layer_ ...@@ -1981,14 +1981,22 @@ void conference_video_check_auto_bitrate(conference_member_t *member, mcu_layer_
return; return;
} }
kps = switch_calc_bitrate(layer->screen_w, layer->screen_h, member->conference->video_quality, (int)(member->conference->video_fps.fps)); if ((kps_in = switch_calc_bitrate(vid_params.width, vid_params.height,
min_layer = kps / 2; member->conference->video_quality, (int)(member->conference->video_fps.fps))) < 512) {
min = min_in = switch_calc_bitrate(vid_params.width, vid_params.height, member->conference->video_quality, (int)(member->conference->video_fps.fps)) / 2; kps_in = 512;
}
if (layer) {
kps = switch_calc_bitrate(layer->screen_w, layer->screen_h, member->conference->video_quality, (int)(member->conference->video_fps.fps));
} else {
kps = kps_in;
}
min_layer = kps / 2;
min = kps_in / 2;
if (min_layer > min) min = min_layer; if (min_layer > min) min = min_layer;
if (member->conference->max_bw_in) { if (member->conference->max_bw_in) {
max = member->conference->max_bw_in; max = member->conference->max_bw_in;
} else { } else {
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论