DaalaTodo: Difference between revisions

From XiphWiki
Jump to navigation Jump to search
m (The only Level 1 Heading is the page title)
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
* Beta (activity masking)
* Beta (activity masking)
Line 11: Line 11:
* Better MV split flag rate estimates
* Better MV split flag rate estimates


= Known broken/suboptimal =
== Known broken/suboptimal ==
* Block size decision
* Block size decision
** Never tuned on inter
** Never tuned on inter
Line 19: Line 19:
* Investigate bias introduced by coefficient scaling
* Investigate bias introduced by coefficient scaling


= New work =
== New work ==


* VQ for inter frames, with codebook selected based on dim m
* VQ for inter frames, with codebook selected based on dim m
Line 29: Line 29:
* SPIHT as k-tokenizer
* SPIHT as k-tokenizer


= Entropy coding =
== Entropy coding ==


* Make the Laplace vector encoder (aka k-tokenizer) faster
* Make the Laplace vector encoder (aka k-tokenizer) faster
Line 36: Line 36:
* Add SIMD to the decoder search
* Add SIMD to the decoder search


= Visualization =
== Visualization ==


* Add ability to display decoder side information to player_example
* Add ability to display decoder side information to player_example
Line 47: Line 47:
** Show only one plane (Y, Cb, Cr)
** Show only one plane (Y, Cb, Cr)


= Infrastructure =
== Infrastructure ==


* Need a bugzilla instance for issue tracking
* Need a bugzilla instance for issue tracking


= AreWeCompressedYet =
== AreWeCompressedYet ==
Bug tracker: https://github.com/tdaede/awcy/issues
Bug tracker: https://github.com/tdaede/awcy/issues
* Huge batch run of all versions of Daala
* Huge batch run of all versions of Daala
* Look at rd_tool options and improve
* Look at rd_tool options and improve
* Add realtime constraint options for x265
* Add realtime constraint options for x265

Revision as of 07:35, 24 October 2014

Simple Things

  • Overflow checking for allocations in od_state_ref_imgs_init().

Tuning

  • Quantization matrix
  • Beta (activity masking)
  • 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)
  • SPIHT as k-tokenizer

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
    • Show only one plane (Y, Cb, Cr)

Infrastructure

  • Need a bugzilla instance for issue tracking

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