Theora:Beta1ToDo: Difference between revisions
Jump to navigation
Jump to search
(minor update) |
(update: mmx optimizations) |
||
Line 9: | Line 9: | ||
* 4:2:2 and 4:4:4 pixel format support in the reference codec. | * 4:2:2 and 4:4:4 pixel format support in the reference codec. | ||
---- | ---- | ||
'''Further ideas''' | '''Further ideas''' | ||
* API cleanup. Add theora_ctl() for setting codec options, and move non-info-header data out of the theora_info struct into theora_state. rillian wanted to do this for beta 1, but the alpha api has been in use so long, it's now felt that we should maintain compatibility for the 1.0 release. | * API cleanup. Add theora_ctl() for setting codec options, and move non-info-header data out of the theora_info struct into theora_state. rillian wanted to do this for beta 1, but the alpha api has been in use so long, it's now felt that we should maintain compatibility for the 1.0 release. | ||
Line 23: | Line 17: | ||
* API updates: theora_packet_isheader(), theora_packet_iskeyframe(), theora_encoder_ctl(), theora_decoder_ctl() were added in 1.0 alpha 4. | * API updates: theora_packet_isheader(), theora_packet_iskeyframe(), theora_encoder_ctl(), theora_decoder_ctl() were added in 1.0 alpha 4. | ||
* The encoder/decoder inloop filter mismatch was [http://trac.xiph.org/cgi-bin/trac.cgi/changeset/7026 fixed] in 1.0 alpha 4. | * The encoder/decoder inloop filter mismatch was [http://trac.xiph.org/cgi-bin/trac.cgi/changeset/7026 fixed] in 1.0 alpha 4. | ||
* [http://trac.xiph.org/changeset/11119 | * Implement [http://trac.xiph.org/changeset/11119 zero-length-packet is duplicate frame] as per the spec. These will be in 1.0 alpha 6. | ||
* Merge encoding MMX optimizations from /branches/theora-mmx/. This will be in 1.0 alpha 6. | |||
** There is a branch with liboil calls: [http://svn.xiph.org/branches/theora-oil/ theora-oil] [UNMANTEINED]. | |||
** Also there is [http://svn.xiph.org/experimental/derf/theora-exp/ theora-exp], an experimental library supporting the whole spec and having also MMX optimization for decoding. |
Revision as of 00:43, 29 May 2006
Open for Beta 1
- According to this ticket, beta 1 should ship with a decoder supporting the whole spec.
- Main things from rillian's todo are:
- Implement non-vp3 qi matrix support in the reference decoder.
- Implement per-block qi switching as per the spec.
- Add API call to request a duplicate compressed frame.
- Change spec and implementation of the Ogg mapping to base granulepos on the count of decoded frames rather than the index of the current frames to match other Xiph codecs. Recommendation from Thomasvs.
- 4:2:2 and 4:4:4 pixel format support in the reference codec.
Further ideas
- API cleanup. Add theora_ctl() for setting codec options, and move non-info-header data out of the theora_info struct into theora_state. rillian wanted to do this for beta 1, but the alpha api has been in use so long, it's now felt that we should maintain compatibility for the 1.0 release.
Already done:
- Specs are finished.
- API updates: theora_packet_isheader(), theora_packet_iskeyframe(), theora_encoder_ctl(), theora_decoder_ctl() were added in 1.0 alpha 4.
- The encoder/decoder inloop filter mismatch was fixed in 1.0 alpha 4.
- Implement zero-length-packet is duplicate frame as per the spec. These will be in 1.0 alpha 6.
- Merge encoding MMX optimizations from /branches/theora-mmx/. This will be in 1.0 alpha 6.
- There is a branch with liboil calls: theora-oil [UNMANTEINED].
- Also there is theora-exp, an experimental library supporting the whole spec and having also MMX optimization for decoding.