[x264-devel] [PATCH] disable bframe adaptive can't work
Loren Merritt
lorenm at u.washington.edu
Thu Jul 12 21:21:09 CEST 2007
On Tue, 10 Jul 2007, Limin Wang wrote:
> After disable adaptive B-frame decision, I can't get conservitive B-frames
> between I and P by --bframes. Attached is a patch to fix it, please
> review it.
Before you go any further into trying to fix it, can you specify
what's wrong and some conditions to reproduce the problem? Because I
don't see anything wrong with the behaviour as it is now.
Yes, scenecut detection can modify the number of consecutive B-frames.
This is intentional. There's no point in using bidirectional prediction
across a scenecut, since any one frame will be on one side or the other of
the scenecut, and can only benefit from prediction from frames on that
side.
You might complain that the scenecut detection algorithm depends on the
number of B-frames (in that it depends on the amount of change between
frames, and a pair of frames that are temporally farther apart will have
more change), which can (in certain high-motion scenes without real
scenecuts) lead to scenecut triggering when given N consecutive B-frames
but then renouncing its decision and allowing N-1 B-frames to not be a
scnenecut. But while this may not be the intuitive meaning of
"non-adaptive B-frames", afaict it is the optimal behaviour: you don't
want to use so many B-frames that it forces the non-B-Frames to be intra.
--Loren Merritt
_______________________________________________
x264-devel mailing list
x264-devel at videolan.org
http://mailman.videolan.org/listinfo/x264-devel
More information about the x264-devel
mailing list