Commit 380d64ec authored by Attila Nagy's avatar Attila Nagy
Browse files

Multithreaded encoder, late sync loopfilter

Sync with loopfilter thread just at the beginning of next frame encoding.
This returns control to application faster and allows a better multicore scaling.
When PSNR packets are generated the final filtered frame is needed imediatly
so we cannot delay the sync.

Change-Id: I288d97b5e331d41d6f5bb49d97986fa12ac6f066
parent 6f9457ec
......@@ -3764,6 +3764,17 @@ static void encode_frame_to_data_rate
/* 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) &&
// transform / motion compensation build reconstruction frame
......@@ -4136,8 +4147,8 @@ static void encode_frame_to_data_rate
vp8_pack_bitstream(cpi, dest, size);
/* wait for loopfilter thread done */
if (cpi->b_multi_threaded)
/* if PSNR packets are generated we have to wait for the lpf */
if (cpi->b_multi_threaded && cpi->b_calculate_psnr)
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment