FS-7893 --resolve
This commit is contained in:
parent
8e1b2eab7b
commit
75e46cedb8
|
@ -1360,14 +1360,17 @@ void *SWITCH_THREAD_FUNC conference_video_muxing_write_thread_run(switch_thread_
|
||||||
{
|
{
|
||||||
conference_member_t *member = (conference_member_t *) obj;
|
conference_member_t *member = (conference_member_t *) obj;
|
||||||
void *pop;
|
void *pop;
|
||||||
int loops = 0;
|
int loops = 0, done = 0;
|
||||||
|
|
||||||
while(conference_utils_member_test_flag(member, MFLAG_RUNNING) || switch_queue_size(member->mux_out_queue)) {
|
while(conference_utils_member_test_flag(member, MFLAG_RUNNING) || switch_queue_size(member->mux_out_queue)) {
|
||||||
switch_frame_t *frame;
|
switch_frame_t *frame;
|
||||||
|
|
||||||
if (conference_utils_member_test_flag(member, MFLAG_RUNNING)) {
|
if (conference_utils_member_test_flag(member, MFLAG_RUNNING) && !done) {
|
||||||
if (switch_queue_pop(member->mux_out_queue, &pop) == SWITCH_STATUS_SUCCESS) {
|
if (switch_queue_pop(member->mux_out_queue, &pop) == SWITCH_STATUS_SUCCESS) {
|
||||||
if (!pop) continue;
|
if (!pop) {
|
||||||
|
done = 1;
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
if (loops == 0 || loops == 50) {
|
if (loops == 0 || loops == 50) {
|
||||||
switch_core_media_gen_key_frame(member->session);
|
switch_core_media_gen_key_frame(member->session);
|
||||||
|
@ -1391,6 +1394,8 @@ void *SWITCH_THREAD_FUNC conference_video_muxing_write_thread_run(switch_thread_
|
||||||
frame = (switch_frame_t *) pop;
|
frame = (switch_frame_t *) pop;
|
||||||
switch_frame_buffer_free(member->fb, &frame);
|
switch_frame_buffer_free(member->fb, &frame);
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
if (done) break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue