GNOME Bugzilla – Bug 663350
theoraenc: do not reset the encoder when we need a keyframe
Last modified: 2013-03-31 14:50:41 UTC
Created attachment 200643 [details] [review] theoraenc: do not reset the encoder when we need a keyframe Instead, remember we need a keyframe, and we will force the encoder to emit one next time we submit a new frame. Since libtheora does not have an API to request a keyframe, we reset the max keyframe interval to 1 temporarily.
What improvements do we get from not resetting the encoder ?
The rate control keeps its history. A wee bit faster, I suppose. We don't risk the encoder choosing different quant tables (not that it does in practice I think). A fuzzy feeling of doing it correctly.
Comment on attachment 200643 [details] [review] theoraenc: do not reset the encoder when we need a keyframe You had me at rate control, please port to the newer code and commit!
Created attachment 237345 [details] [review] theoraenc: do not reset the encoder when we need a keyframe Updated to git master. Untested so far. Someone please test it.
Comment on attachment 237345 [details] [review] theoraenc: do not reset the encoder when we need a keyframe Pushed this, fingers crossed ;)