GNOME Bugzilla – Bug 619290
[vp8] add mode property to switch between CBR/VBR
Last modified: 2010-05-21 20:24:53 UTC
Created attachment 161641 [details] [review] patch see commit message
Review of attachment 161641 [details] [review]: ::: ext/vp8/gstvp8enc.c @@ +679,3 @@ cfg.rc_min_quantizer = 63 - encoder->quality * 5.0; cfg.rc_max_quantizer = 63 - encoder->quality * 5.0; cfg.rc_target_bitrate = encoder->bitrate; In so we have VBR with the quality property & mode==vbr, ABR with bitrate & mode==vbr and CBR with bitrate & mode==cbr? Is it maybe useful to allow values between VPX_VBR and VPX_CBR and set quantizers when using a target bitrate? Other than that I think something like this is a good idea.
It's possible that tweaking the quantizers even when using a target bitrate has useful results, but that would require lots of testing to find reasonable defaults. If such defaults could be found, then arguably they should be in libvpx itself, so that it could benefit everyone. About CBR/VBR, I think that perhaps it should be made to include 2-pass. 2-pass CBR makes no sense. Some other encoder elements seem to have a setting which goes something like this. 0. 1-pass CBR 2. 1-pass VBR 3. 2-pass VBR, pass 1 4. 2-pass VBR, pass 2 Perhaps that's what we should do. 2-pass would seem to be a pain to integrate into something like Transmageddon though, as all encoder elements have different ways of setting pass 1/2 and getting the log/stats file in/out.
commit 17ab21dae3e1b44562aba361c003991571dab544 Author: Philip Jägenstedt <philipj@opera.com> Date: Fri May 21 15:17:46 2010 +0200 vp8enc: add mode property to switch between CBR/VBR Always using CBR when bitrate is used isn't that great, VBR mode can produce meaningful results too.