From: Anthony Minessale Date: Wed, 23 Sep 2015 18:24:14 +0000 (-0500) Subject: FS-8211 #resolve [Conference video recordings of layouts with overlap have flickering... X-Git-Tag: v1.6.2~1^2~7 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=dd6da6e06aa2e9703b74b1b4e0489c6209f1f1e0;p=thirdparty%2Ffreeswitch.git FS-8211 #resolve [Conference video recordings of layouts with overlap have flickering video] --- diff --git a/src/mod/applications/mod_conference/conference_video.c b/src/mod/applications/mod_conference/conference_video.c index 4e42afc3af..e78aa25700 100644 --- a/src/mod/applications/mod_conference/conference_video.c +++ b/src/mod/applications/mod_conference/conference_video.c @@ -1915,7 +1915,7 @@ void *SWITCH_THREAD_FUNC conference_video_muxing_thread_run(switch_thread_t *thr canvas->video_timer_reset = 1; packet = switch_core_alloc(conference->pool, SWITCH_RTP_MAX_BUF_LEN); - + while (conference_globals.running && !conference_utils_test_flag(conference, CFLAG_DESTRUCT) && conference_utils_test_flag(conference, CFLAG_VIDEO_MUXING)) { switch_bool_t need_refresh = SWITCH_FALSE, send_keyframe = SWITCH_FALSE, need_reset = SWITCH_FALSE; switch_time_t now; @@ -2562,12 +2562,12 @@ void *SWITCH_THREAD_FUNC conference_video_muxing_thread_run(switch_thread_t *thr write_frame.img = write_img; + wait_for_canvas(canvas); + if (canvas->recording) { conference_video_check_recording(conference, canvas, &write_frame); } - wait_for_canvas(canvas); - if (conference->canvas_count > 1) { switch_image_t *img_copy = NULL;