FS-8595 contd
This commit is contained in:
parent
42be0a8086
commit
5f344bc5ea
|
@ -1945,9 +1945,8 @@ void conference_video_check_auto_bitrate(conference_member_t *member, mcu_layer_
|
||||||
switch_vid_params_t vid_params = { 0 };
|
switch_vid_params_t vid_params = { 0 };
|
||||||
int kps = 0;
|
int kps = 0;
|
||||||
int max = 0;
|
int max = 0;
|
||||||
int min = 0;
|
int min_in = 0, min_layer = 0, min = 0;
|
||||||
int w, h;
|
|
||||||
|
|
||||||
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)) {
|
||||||
return;
|
return;
|
||||||
|
@ -1972,6 +1971,7 @@ void conference_video_check_auto_bitrate(conference_member_t *member, mcu_layer_
|
||||||
}
|
}
|
||||||
|
|
||||||
if (vid_params.width != member->vid_params.width || vid_params.height != member->vid_params.height) {
|
if (vid_params.width != member->vid_params.width || vid_params.height != member->vid_params.height) {
|
||||||
|
switch_core_session_request_video_refresh(member->session);
|
||||||
conference_video_clear_managed_kps(member);
|
conference_video_clear_managed_kps(member);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1981,17 +1981,14 @@ void conference_video_check_auto_bitrate(conference_member_t *member, mcu_layer_
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!layer || (vid_params.width * vid_params.height) < (layer->screen_w * layer->screen_h)) {
|
kps = switch_calc_bitrate(layer->screen_w, layer->screen_h, member->conference->video_quality, (int)(member->conference->video_fps.fps));
|
||||||
w = vid_params.width;
|
min_layer = kps / 2;
|
||||||
h = vid_params.height;
|
min = min_in = switch_calc_bitrate(vid_params.width, vid_params.height, member->conference->video_quality, (int)(member->conference->video_fps.fps)) / 2;
|
||||||
} else {
|
|
||||||
w = layer->screen_w;
|
|
||||||
h = layer->screen_h;
|
|
||||||
}
|
|
||||||
|
|
||||||
kps = switch_calc_bitrate(w, h, member->conference->video_quality, (int)(member->conference->video_fps.fps));
|
|
||||||
min = switch_calc_bitrate(vid_params.width, vid_params.height, member->conference->video_quality, (int)(member->conference->video_fps.fps)) / 2;
|
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 {
|
||||||
|
|
Loading…
Reference in New Issue