View Full Version : question on scene cut threshold
chen
23rd August 2005, 11:21
Scene cut threshold denotes how aggressively extra I-frames are inserted, but i wonder how aggressivity is defined here. Will anybody please simply explain how the encoder decides when to insert an extra I-frame, and how this decision depends on the value of scene cut threshold?
bond
23rd August 2005, 12:47
i would guess it defines a limit
if the difference between two frames is below that limit not scenechange is detected and no keyframe is inserted
if the difference between two frames is above that limit a scenechange is detected and a keyframe is inserted
Sharktooth
23rd August 2005, 13:11
It works exactly as in xvid.
akupenguin
23rd August 2005, 14:35
Short answer: scenecut threshold is the max % extra bits it's willing to spend to switch to an I-frame.
First it encodes the frame as P. While it's doing so, it keeps track of how much it costs to code it that way, vs how much it would cost if it had selected intra mode for all macroblocks. ("cost" is either SAD or SATD or RD depending on the value of --subme.) When it has finished coding the frame as P, it computes a threshold proportional to scenecut_threshold and depending on the distance from the previous I-frame. If( P_cost > I_cost * (1 - threshold)) then it recodes the frame as I.
This is not quite the same as XviD. XviD's decision is: if( (total SAD > some threshold) or (more than half of macroblocks are intra) ) then frame is I. (The threshold still depends on distance from the previous I-frame.)
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.