DaalaTodo: Difference between revisions
Jump to navigation
Jump to search
mNo edit summary |
|||
Line 1: | Line 1: | ||
== Simple Things == | == Simple Things == | ||
* Overflow checking for allocations in od_state_ref_imgs_init(). | * Overflow checking for allocations in od_state_ref_imgs_init(). | ||
== Tuning == | == Tuning == | ||
* Quantization matrix | * Quantization matrix | ||
** Rate-dependent QMs | ** Rate-dependent QMs | ||
Line 11: | Line 13: | ||
* Better MV split flag rate estimates | * Better MV split flag rate estimates | ||
== Known | == Known Broken/Suboptimal == | ||
* Block size decision | * Block size decision | ||
** Never tuned on inter | ** Never tuned on inter | ||
Line 22: | Line 25: | ||
* Need "skip higher bands" flag | * Need "skip higher bands" flag | ||
== New | == New Work == | ||
* Motion vector "mask" based on previous frame | * Motion vector "mask" based on previous frame | ||
Line 33: | Line 36: | ||
* MV prediction clustering | * MV prediction clustering | ||
== Entropy | == Entropy Coding == | ||
* Make the Laplace vector encoder (aka k-tokenizer) faster | * Make the Laplace vector encoder (aka k-tokenizer) faster | ||
Line 55: | Line 58: | ||
== AreWeCompressedYet == | == AreWeCompressedYet == | ||
Website: [https://arewecompressedyet.com/ AreWeCompressedYet] | Website: [https://arewecompressedyet.com/ AreWeCompressedYet] | ||
Revision as of 07:52, 23 December 2014
Simple Things
- Overflow checking for allocations in od_state_ref_imgs_init().
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
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
- Take into account scaling differences from lapping on variable block size
- Including Haar DC
- Need "skip higher bands" flag
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
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
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
Infrastructure
- Need a bugzilla instance for issue tracking
AreWeCompressedYet
Website: AreWeCompressedYet
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