DaalaTodo: Difference between revisions
Jump to navigation
Jump to search
(→Simple Things: added request for Bugzilla!) |
No edit summary |
||
Line 20: | Line 20: | ||
** Never tuned on inter | ** Never tuned on inter | ||
** Not considering chroma | ** Not considering chroma | ||
* Investigate bias introduced by coefficient scaling | * Investigate bias introduced by coefficient scaling | ||
* Take into account scaling differences from lapping on variable block size | * Take into account scaling differences from lapping on variable block size | ||
** Including Haar DC | ** Including Haar DC | ||
* | * Finish "skip higher bands" flags | ||
* Re-train zig-zags (particularly on inter) | * Re-train zig-zags (particularly on inter) | ||
* Implement RDO for "skip_rest" decisions. | * Implement RDO for "skip_rest" decisions. | ||
* Better RDO rates for gain/theta/noref | * Better RDO rates for gain/theta/noref | ||
* Don't code blocks that are outside the image | |||
== New Work == | == New Work == | ||
Line 49: | Line 48: | ||
* Better encoding of the CfL sign | * Better encoding of the CfL sign | ||
* Add SIMD to the decoder search | * Add SIMD to the decoder search | ||
== Minor things == | |||
* Code quantizers on a log scale | |||
== Visualization == | == Visualization == | ||
Line 60: | Line 63: | ||
** Display prediction residual | ** Display prediction residual | ||
== | == Bit-stream work (no expected quality improvement) == | ||
* Need a bugzilla instance for issue tracking | * Need a bugzilla instance for issue tracking | ||
* Re-order bitstream (e.g., don't code all MVs at the front, etc.) | |||
== AreWeCompressedYet == | == AreWeCompressedYet == |
Revision as of 14:25, 17 February 2015
Simple Things
- Overflow checking for allocations in od_state_ref_imgs_init().
- Implement Bugzilla for Daala users to report bugs and enhancements.
Tuning
- Quantization matrix
- Rate-dependent QMs
- Beta (activity 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
- Does the 8-pixel MV offset influence quality in any way?
Known Broken/Suboptimal
- Block size decision
- Never tuned on inter
- Not considering chroma
- Investigate bias introduced by coefficient scaling
- Take into account scaling differences from lapping on variable block size
- Including Haar DC
- Finish "skip higher bands" flags
- Re-train zig-zags (particularly on inter)
- Implement RDO for "skip_rest" decisions.
- Better RDO rates for gain/theta/noref
- Don't code blocks that are outside the image
New Work
- 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)
- Land paint-based deringing
- SPIHT as k-tokenizer
- MV prediction clustering
- Special case for K=2
- Train Laplace tables
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
Minor things
- Code quantizers on a log scale
Visualization
- Add ability to display decoder side information to player_example
- Block size split decision
- Cost in bits per block (use log scale)
- No-ref and skip flags
- Mode information (if we signal intra)
- Motion vectors
- Display prediction residual
Bit-stream work (no expected quality improvement)
- Need a bugzilla instance for issue tracking
- Re-order bitstream (e.g., don't code all MVs at the front, etc.)
AreWeCompressedYet
Wiki page: AreWeCompressedYet
Website: https://arewecompressedyet.com
Bug tracker: https://github.com/tdaede/awcy/issues
- Huge batch run of all versions of Daala
- Look at rd_tool options and improve
- Add realtime constraint options for x265