Difference between revisions of "DaalaTodo"
Jump to navigation
Jump to search
m |
|||
Line 1: | Line 1: | ||
+ | = Simple Things = | ||
+ | |||
+ | * Overflow checking for allocations in od_state_ref_imgs_init(). | ||
+ | |||
+ | |||
= Tuning = | = Tuning = | ||
* Quantization matrix | * Quantization matrix | ||
Line 4: | Line 9: | ||
* Inter band masking | * Inter band masking | ||
* PVQ RDO | * PVQ RDO | ||
+ | * Better MV cost estimates | ||
+ | * Better MC distortion metrics (SATD, some MSE/SATD hybrid, no-ref-aware, maybe table driven Theora-style, etc.) | ||
+ | * Better MV split flag rate estimates | ||
= Known broken/suboptimal = | = Known broken/suboptimal = | ||
Line 9: | Line 17: | ||
** Never tuned on inter | ** Never tuned on inter | ||
** Not considering chroma | ** Not considering chroma | ||
+ | * Code quantizers on a log scale | ||
+ | * Re-order bitstream (e.g., don't code all MVs at the front, etc.) | ||
+ | * Investigate bias introduced by coefficient scaling | ||
− | = New | + | = New work = |
* VQ for inter frames, with codebook selected based on dim m | * VQ for inter frames, with codebook selected based on dim m | ||
* Motion vector "mask" based on previous frame | * Motion vector "mask" based on previous frame | ||
* Use coeff magnitude correlation for modelling | * Use coeff magnitude correlation for modelling | ||
+ | * Per SB/MB/block/something quantizer changes | ||
+ | * Variable Framerate support | ||
+ | * Dynamic frame size changes (without keyframes) | ||
= Entropy coding = | = Entropy coding = | ||
Line 21: | Line 35: | ||
* Add "skip-all remaining bands" flag | * Add "skip-all remaining bands" flag | ||
* Better encoding of the CfL sign | * Better encoding of the CfL sign | ||
+ | * Add SIMD to the decoder search |
Revision as of 13:17, 7 October 2014
Simple Things
- Overflow checking for allocations in od_state_ref_imgs_init().
Tuning
- Quantization matrix
- Beta
- Inter band masking
- PVQ RDO
- Better MV cost estimates
- Better MC distortion metrics (SATD, some MSE/SATD hybrid, no-ref-aware, maybe table driven Theora-style, etc.)
- Better MV split flag rate estimates
Known broken/suboptimal
- Block size decision
- Never tuned on inter
- Not considering chroma
- Code quantizers on a log scale
- Re-order bitstream (e.g., don't code all MVs at the front, etc.)
- Investigate bias introduced by coefficient scaling
New work
- VQ for inter frames, with codebook selected based on dim m
- Motion vector "mask" based on previous frame
- Use coeff magnitude correlation for modelling
- Per SB/MB/block/something quantizer changes
- Variable Framerate support
- Dynamic frame size changes (without keyframes)
Entropy coding
- Make the Laplace vector encoder (aka k-tokenizer) faster
- Add "skip-all remaining bands" flag
- Better encoding of the CfL sign
- Add SIMD to the decoder search