I’ve been very busy with the things outside FFmpeg yet I’ve managed to do something on RV3/4 decoders too:
- Found and fixed an old bug with quantisation for DC coefficients.
- Cleaned a bit RV4 loop filter.
- Fixed chroma MC bug in RV3 decoder.
- B-frames motion vectors are now closer to the reality in RV3.
What is missing:
- RV3 loop filter
- correct RV3 motion vectors calculation
- RV4 motion compensation incompatibilities
The main problem is that I don’t quite understand why it’s working in the way it works and (in some parts) how it works. Hopefully it will be clearer next time I’ll look at it.