From 630d3b95e297405bb95234c7d2036ca218cdd64d Mon Sep 17 00:00:00 2001 From: John Koleszar Date: Tue, 24 Jan 2012 15:32:08 -0800 Subject: [PATCH] Revert "Multithreaded encoder, late sync loopfilter" This commit is incomplete, as it does not synchronize the loop filter before returning a handle to the reconstructed frame in vpx_codec_get_preview_frame(), which can cause (false?) failures when running the test_reconstruct_buffer test. This may be related to a bug that does cause visible artifacts, which is also under investigation. This reverts commit 380d64ecb19984a1466e727244a41445ae919060. Change-Id: Iad710941e7731d44fc2bde63bc63d6763cc4629e --- vp8/encoder/onyx_if.c | 15 ++------------- 1 file changed, 2 insertions(+), 13 deletions(-) diff --git a/vp8/encoder/onyx_if.c b/vp8/encoder/onyx_if.c index 8415ac6..bb2a796 100644 --- a/vp8/encoder/onyx_if.c +++ b/vp8/encoder/onyx_if.c @@ -3733,17 +3733,6 @@ static void encode_frame_to_data_rate vp8_setup_key_frame(cpi); } -#if CONFIG_MULTITHREAD - /* wait for loopfilter thread done (for last picture) - * don't do it for first frame, re-code and when PSNR is calculated - */ - if (cpi->b_multi_threaded && cm->current_video_frame && (!Loop) && - (!cpi->b_calculate_psnr)) - { - sem_wait(&cpi->h_event_end_lpf); - } -#endif - // transform / motion compensation build reconstruction frame vp8_encode_frame(cpi); @@ -4128,8 +4117,8 @@ static void encode_frame_to_data_rate vp8_pack_bitstream(cpi, dest, dest_end, size); #if CONFIG_MULTITHREAD - /* if PSNR packets are generated we have to wait for the lpf */ - if (cpi->b_multi_threaded && cpi->b_calculate_psnr) + /* wait for loopfilter thread done */ + if (cpi->b_multi_threaded) { sem_wait(&cpi->h_event_end_lpf); } -- 2.7.4