<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.xiph.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Unlord</id>
	<title>XiphWiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.xiph.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Unlord"/>
	<link rel="alternate" type="text/html" href="https://wiki.xiph.org/Special:Contributions/Unlord"/>
	<updated>2026-05-15T07:24:02Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.45.1</generator>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=Summer_of_Code_2021&amp;diff=16746</id>
		<title>Summer of Code 2021</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=Summer_of_Code_2021&amp;diff=16746"/>
		<updated>2021-03-03T00:43:53Z</updated>

		<summary type="html">&lt;p&gt;Unlord: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction ==&lt;br /&gt;
&lt;br /&gt;
This year Xiph.org is focusing on the rav1e AV1 encoder for its GSoC participation. Both video and still images are currently hot topics, especially with the recent support of AVIF within browsers.&lt;br /&gt;
&lt;br /&gt;
Below you&#039;ll find the description for the following GSoC project ideas around the rav1e project.&lt;br /&gt;
&lt;br /&gt;
If you want to know more about a particular idea, please get in touch with the people listed under &amp;quot;possible mentors&amp;quot;. While no guarantee, that the person will be the actual mentor for the task, they know it and will be happy to answer your questions.&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
== Detailed Project Descriptions ==&lt;br /&gt;
&lt;br /&gt;
These ideas were suggested by various members of the developer community as projects that would be beneficial and which we feel we can mentor. Students should feel free to select one of these, develop a variation, or propose their own ideas. Here, ideally.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== Grain synthesis implementation inside of the rav1e encoder ===&lt;br /&gt;
&lt;br /&gt;
Grain synthesis is using the idea of modeling noise temporally and spatially using noise estimation.&lt;br /&gt;
&lt;br /&gt;
==== Problem / Intro ====&lt;br /&gt;
&lt;br /&gt;
Keeping high frequency detail and noise(dithering, camera noise, grain) using traditional encoder techniques is very expensive in terms of bitrate allocation, and some tools implemented to take care of that problem can create additional artifacts that are not pleasing to the general viewer experience, or are detrimental to the fidelity of the image.&lt;br /&gt;
&lt;br /&gt;
==== Solution / Task ====&lt;br /&gt;
&lt;br /&gt;
Implementing grain synthesis that models the noise parameters of a video, and applies the generated noise parameters during the decoding process, saving very high amounts of bitrates and providing a very high subjective visual fidelity and appeal.&lt;br /&gt;
&lt;br /&gt;
Making it faster than other forms of grain synthesis via smarter algorithms and using various forms of threading to speed up its application, such as tile threading and integration with rav1e-by-gop, making it possible to use as part of any encoding workflow. This will make sure adoption of the technique becomes as widespread as possible.&lt;br /&gt;
&lt;br /&gt;
==== Requirements ====&lt;br /&gt;
&lt;br /&gt;
The student should be familiar with Rust and C, and must have a light background in general visual media encoding, such as video and image compression.&lt;br /&gt;
Complexity: Medium.&lt;br /&gt;
&lt;br /&gt;
==== Possible Mentors ====&lt;br /&gt;
&lt;br /&gt;
[[User:Lu_zero]] &amp;amp;&amp;amp; XX&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
=== Adaptive quantization ===&lt;br /&gt;
&lt;br /&gt;
Adaptive quantization is the process of an algorithm trying to efficiently allocate bitrate among the various macroblocks found in a frame by varying the quantizer across each of them according to different visual targets.&lt;br /&gt;
&lt;br /&gt;
==== Problem / Intro ====&lt;br /&gt;
&lt;br /&gt;
Often times, an encoder does not know about the best way to allocate the bitrate budget across a frame, and may overspend a considerable amount of bitrate to regions that might not benefit from a low quantizer(low amounts of distortion, so less compression) while not giving enough bitrate to zones that might actually need it. This can even cause issues temporally, as bitrate allocation within a group of frames(GOPs) may be skewed towards more complex and high motion frames, while leaving other frames with barely any bitrate to work with, creating visual artifacts such as blocking and banding.&lt;br /&gt;
&lt;br /&gt;
==== Solution / Task ====&lt;br /&gt;
&lt;br /&gt;
Implementing 1-3 forms on adaptive quantization either based on variance, complexity and/or variance variance with a bias in low contrast frames in rav1e. This will make bitrate allocation more efficient, and avoid bitrate overspending in areas which either need the lower quantizer to avoid the presence of lower quality frames that might detract from the viewer experience, and make objective/subjective quality targets easier to achieved. The combination of powerful adaptive quantization and grain synthesis would allow for a higher subjective quality viewing experience at lower bitrates while potentially lowering computational complexity by a good margin.&lt;br /&gt;
&lt;br /&gt;
Making a smart adaptive AQ mode in which the encoder chooses which adaptive quantization algorithm to use depending on the scene featured in a GOP. Potentially difficult.&lt;br /&gt;
&lt;br /&gt;
==== Requirements ====&lt;br /&gt;
&lt;br /&gt;
The student should be familiar with Rust and C, and having a background in general visual media encoding, such as video and image compression is recommended.&lt;br /&gt;
&lt;br /&gt;
Difficulty: Medium depending on which targets the student chooses to follow&lt;br /&gt;
&lt;br /&gt;
==== Possible Mentors ====&lt;br /&gt;
&lt;br /&gt;
[[User:Lu_zero]] &amp;amp;&amp;amp; XX&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
=== Integrate rav1e-by-gop into rav1e encoder ===&lt;br /&gt;
&lt;br /&gt;
rav1e-by-gop is an extended command line encoder that provides additional encoding strategies such as by-gop parallel encoding across multiple machines.&lt;br /&gt;
&lt;br /&gt;
==== Problem / Intro ====&lt;br /&gt;
&lt;br /&gt;
rav1e-by-gop is currently a command line program, some users might want to enjoy on the extended features from other programs even if they do not always belong to an encoder.&lt;br /&gt;
&lt;br /&gt;
==== Solution / Task ====&lt;br /&gt;
&lt;br /&gt;
make rav1e-by-gop expose the same API of the normal rav1e to make easy to use the multiple machine encoding features from other programs.&lt;br /&gt;
&lt;br /&gt;
==== Requirements ====&lt;br /&gt;
&lt;br /&gt;
The student should be familiar with Rust or C programming.&amp;lt;br&amp;gt;&lt;br /&gt;
Video knowledge is not strictly necessary, however a basic understanding of the concepts is vastly beneficial.&lt;br /&gt;
&lt;br /&gt;
==== Possible Mentors ====&lt;br /&gt;
&lt;br /&gt;
[[User:Tdaede]] [[User:Lu_zero]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
=== Visual metric targeting in rav1e-by-gop ===&lt;br /&gt;
&lt;br /&gt;
Objective metrics are used to evaluate an encoder&#039;s performance in a diverse set of scenarios. Different metrics such as PSNR, SSIM, DSSIM, VMAF and some closed no-reference metrics are used in the field to record encoder performance changes across versions trying to correlate closely with human perception.&lt;br /&gt;
&lt;br /&gt;
==== Problem / Intro ====&lt;br /&gt;
&lt;br /&gt;
Classical methods of rate control such as ABR(Average BitRate), fixed quantizers and even CRF(Constant Rate Factor) have the issue of not targeting a certain quality level. This can result in starved encodes where the bitrate budget has to be kept low to stay watchable by the viewer without interruption, leading to scenes that have exceptionally good visual targets by overspending bitrate, and scenes that have very poor visual appeal by having too little bitrate, detracting from the viewer experience entirely. More advanced forms of rate control like CRF help somewhat, but they still have the issue of having to overshoot so the lower quality scenes do not suffer, and do not adapt to the different type of content encoded, resulting in variable quality encodes.&lt;br /&gt;
&lt;br /&gt;
==== Solution / Task ====&lt;br /&gt;
&lt;br /&gt;
Implementing visual metric targeting based on VMAF(mainly used for video) and butteraugli(mainly used for images) as part of rav1e-by-gop as a secondary rate control option. &lt;br /&gt;
&lt;br /&gt;
The application of visual metric targeting in rav1e-by-gop would take advantage of its adaptive keyframe placement and smart scene detection to its fullest. &lt;br /&gt;
This would allow for the best rate control possible, as short scenes in the length of 1-15s are where visual metrics such as VMAF shine the most. The idea is to encode first with a very fast speed preset in the encoder to gauge the quality at a prefixed quantizer. If the visual metric target set is not achieved, the encoder tries again once or twice until it gets the right result. &lt;br /&gt;
With this method, instead of targeting an average of bitrate, you would target a visual score, getting higher efficiency and higher subjective quality. This would also be advantageous in terms of encoding time spent, as encoder complexity could be dialed back while keeping overall efficiency the same or higher, with efficiency being a function of both encoder efficiency and rate control.&lt;br /&gt;
&lt;br /&gt;
Implementing butteraugli quality targeting as an option using rav1e for AVIF images. Since visual quality requirements are considerably higher for intra only(image only) media, keeping high visual fidelity is even more important than video compression. Quality targeting iterations would also be quite useful here.&lt;br /&gt;
&lt;br /&gt;
==== Requirements ====&lt;br /&gt;
&lt;br /&gt;
The student should be familiar with Rust and C. General interest in image and video coding is recommended&lt;br /&gt;
&lt;br /&gt;
Difficulty: Low-medium.&lt;br /&gt;
&lt;br /&gt;
==== Possible Mentors ====&lt;br /&gt;
&lt;br /&gt;
[[User:Lu_zero]] &amp;amp;&amp;amp; XX&lt;br /&gt;
----&lt;br /&gt;
=== Improved cluster support for Icecast ===&lt;br /&gt;
Icecast servers deliver streams to million of users simultaneous worldwide. Each instance can handle many thousand clients at the same time. However redundancy, scalability, hardware requirement, and most importantly network connectivity often requires to use several instances in a professional deployment.&lt;br /&gt;
==== Problem / Intro ====&lt;br /&gt;
Icecast is designed as a standalone application. While basic support exists (such as master-slave mode) support for clusters can be improved. At this point a cluster level mangement instance seems to be missing.&lt;br /&gt;
==== Solution / Task ====&lt;br /&gt;
A solution for cluster management should be developed. A cluster controller should be implemented as well as support within Icecast. The focus is on Icecast itself at this point. However the controler should at least demonstrate all features implemented in Icecast.&lt;br /&gt;
Possible features:&lt;br /&gt;
* Automatic master-slave, and relay configuration.&lt;br /&gt;
* Load distribution.&lt;br /&gt;
* Statistic data collection.&lt;br /&gt;
* Log collection.&lt;br /&gt;
* Node monitoring.&lt;br /&gt;
* Signalling of cluster state to external components (e.g. for automatic cluster scaling)&lt;br /&gt;
==== Requirements ====&lt;br /&gt;
The student should be familiar with C. A basic understanding of HTTP, as well as other web technologies is helpful. Knowledge of visualisation technologies is &#039;&#039;&#039;not&#039;&#039;&#039; required.&lt;br /&gt;
&lt;br /&gt;
Complexity: Medium to high.&lt;br /&gt;
==== Possible Mentors ====&lt;br /&gt;
phschafft (teamed with someone else)&lt;br /&gt;
----&lt;br /&gt;
=== Development of advanced content navigation in Icecast ===&lt;br /&gt;
Icecast currently supports navigation of listeners between different streams. This was developed mostly for fallbacks (providing alternative content if the primary source fails). This support should be improved to provide better interaction with contents.&lt;br /&gt;
==== Problem / Intro ====&lt;br /&gt;
The current implementation is designed to work very robust for source side events (such as fallbacks). However it fails for two requirements:&lt;br /&gt;
* Listener initiated interaction such as adaptive streaming.&lt;br /&gt;
* Exact timing.&lt;br /&gt;
==== Solution / Task ====&lt;br /&gt;
The current concept is capable of being extended to the new requirements. Code should be written to add the new features on the existing (and well proven) infrastructure. The following additional features would be needed:&lt;br /&gt;
Detection and matching of features within and between streams. This is required for any kind of synchronisation.&lt;br /&gt;
* Executing operations exactly at detached features.&lt;br /&gt;
* Adding ways to communicate features and operations between listener and Icecast, source and Icecast, and between multiple * * Icecast instances of the same cluster.&lt;br /&gt;
==== Requirements ====&lt;br /&gt;
The student should be familiar with C. A basic understanding of HTTP, Ogg, and Matroska/WebM is helpful.&lt;br /&gt;
&lt;br /&gt;
Complexity: Medium to high.&lt;br /&gt;
==== Possible Mentors ====&lt;br /&gt;
phschafft (teamed with someone else)&lt;br /&gt;
----&lt;br /&gt;
=== Uniform return channel for Icecast ===&lt;br /&gt;
Icecast supports broadcasting media to several thousand listeners per instance. In a classic setup this is a one way process from the source (such as a radio or TV studio) to the consumer. However it is sometimes useful to provide a return channel, such as for implementing polls.&lt;br /&gt;
==== Problem / Intro ====&lt;br /&gt;
Returning information from the listener to the source is part of classic media. The need has become more relevant with the development of more interactive ways of the web. Several technologies have been used to implement this including asking the listeners to call in, send e-mails, or comment on a web page.&lt;br /&gt;
&lt;br /&gt;
Classic ways to implement feedback include a media break and are only loosely bound to the forward channel.&lt;br /&gt;
==== Solution / Task ====&lt;br /&gt;
A uniform return channel should be implemented that allows several types of data to be send from the listener to the source. This includes three major parts:&lt;br /&gt;
* Improved session handling (both for listeners and for sources)&lt;br /&gt;
* Implementing a return channel for listeners.&lt;br /&gt;
* Implementing a return channel for sources.&lt;br /&gt;
==== Requirements ====&lt;br /&gt;
The student should be familiar with C and HTTP.&lt;br /&gt;
&lt;br /&gt;
Complexity: Medium.&lt;br /&gt;
==== Possible Mentors ====&lt;br /&gt;
phschafft (teamed with someone else)&lt;br /&gt;
----&lt;br /&gt;
=== (Live) listener statistics for Icecast ===&lt;br /&gt;
Icecast supports writing a basic access.log that includes client information as well as connection time. In addition a playlist log is supported, and live statistic data via the STATS interface.&lt;br /&gt;
&lt;br /&gt;
A standard solution to use this data for detailed listener statistics is missing.&lt;br /&gt;
==== Problem / Intro ====&lt;br /&gt;
In the current solution there is no off the shelf solution to process the statistic data provided by Icecast. The best available solutions are standard access log analysers. A solution for live statistics is completely missing. Statistics taking content into account is also absent.&lt;br /&gt;
==== Solution / Task ====&lt;br /&gt;
To improve the situation two major steps must be accomplished:&lt;br /&gt;
* The statistic interface of Icecast must be enhanced to provide the required information.&lt;br /&gt;
* A solution that analyses this data must be developed. The focus is on this part.&lt;br /&gt;
This project allows for a wide range of ideas from the participants to be incorporated. There is not yet and specific technical direction set. Evaluating different options is the first part of the project.&lt;br /&gt;
==== Requirements ====&lt;br /&gt;
The student should be familiar with C. A basic understanding of log analysis, and monitoring and/or data collecting systems is helpful.&lt;br /&gt;
&lt;br /&gt;
Difficulty: Medium depending on which targets the student chooses to follow.&lt;br /&gt;
==== Possible Mentors ====&lt;br /&gt;
phschafft (teamed with someone else)&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== Support WebAssembly SIMD in rav1e ===&lt;br /&gt;
&lt;br /&gt;
rav1e supports the [https://wasi.dev/ WASI] platform and it has its javascript API bindings relying on it.&lt;br /&gt;
&lt;br /&gt;
==== Problem / Intro ====&lt;br /&gt;
&lt;br /&gt;
The WebAssembly SIMD is getting [https://github.com/WebAssembly/simd closer] to be available, we should support it.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Solution / Task ====&lt;br /&gt;
&lt;br /&gt;
* Implement the dispatch logic for WASM SIMD as done already for x86_64 and aarch64.&lt;br /&gt;
* Implement the Sum of absolute difference (SAD) and Sum of absolute transformed differences (SATD)&lt;br /&gt;
* Implement the inverse transforms (idct, iadst, identity, ...)&lt;br /&gt;
* Implement the motion compensation.&lt;br /&gt;
&lt;br /&gt;
==== Requirements ====&lt;br /&gt;
&lt;br /&gt;
The student should be familiar with Rust, WASM, wasmtime and related tools. Knowledge of x86 or arm assembly is not needed but will help.&lt;br /&gt;
&lt;br /&gt;
==== Possible Mentors ====&lt;br /&gt;
&lt;br /&gt;
[[User:Lu_zero]]&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== Implement butteraugli in av-metrics  ===&lt;br /&gt;
&lt;br /&gt;
av-metrics is a collection of video quality metrics, [https://github.com/google/butteraugli butteraugli] is a promising psychovisual similarity metric. &lt;br /&gt;
&lt;br /&gt;
==== Problem / Intro ====&lt;br /&gt;
&lt;br /&gt;
Currently the implementation of butteraugli exists as [https://github.com/google/butteraugli stand-alone] codebase. The code is readable, but it could be faster. &lt;br /&gt;
&lt;br /&gt;
==== Solution / Task ====&lt;br /&gt;
&lt;br /&gt;
* Implement rust bindings to the reference butteraugli.&lt;br /&gt;
* Implement butteraugli in pure rust within av-metrics.&lt;br /&gt;
* Write integration and unit tests to make sure the implementation does not diverge&lt;br /&gt;
* Write criterion benchmarks&lt;br /&gt;
* Implement x86_64 or aarch64 optimizations for it, using intrinsics or plain ASM.&lt;br /&gt;
&lt;br /&gt;
==== Requirements ====&lt;br /&gt;
&lt;br /&gt;
The student should be familiar with Rust, C and C++. Knowledge of x86 or arm assembly is welcome.&lt;br /&gt;
&lt;br /&gt;
==== Possible Mentors ====&lt;br /&gt;
&lt;br /&gt;
[[User:Lu_zero]]&lt;/div&gt;</summary>
		<author><name>Unlord</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=Summer_of_Code_2021&amp;diff=16745</id>
		<title>Summer of Code 2021</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=Summer_of_Code_2021&amp;diff=16745"/>
		<updated>2021-03-03T00:39:44Z</updated>

		<summary type="html">&lt;p&gt;Unlord: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction ==&lt;br /&gt;
&lt;br /&gt;
This year Xiph.org is focusing on the rav1e AV1 encoder for its GSoC participation. Both video and still images are currently hot topics, especially with the recent support of AVIF within browsers.&lt;br /&gt;
&lt;br /&gt;
Below you&#039;ll find the description for the following GSoC project ideas around the rav1e project.&lt;br /&gt;
&lt;br /&gt;
If you want to know more about a particular idea, please get in touch with the people listed under &amp;quot;possible mentors&amp;quot;. While no guarantee, that the person will be the actual mentor for the task, they know it and will be happy to answer your questions.&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
== Detailed Project Descriptions ==&lt;br /&gt;
&lt;br /&gt;
These ideas were suggested by various members of the developer community as projects that would be beneficial and which we feel we can mentor. Students should feel free to select one of these, develop a variation, or propose their own ideas. Here, ideally.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
=== Support WebAssembly SIMD  ===&lt;br /&gt;
&lt;br /&gt;
rav1e supports the [https://wasi.dev/ WASI] platform and it has its javascript API bindings relying on it.&lt;br /&gt;
&lt;br /&gt;
==== Problem / Intro ====&lt;br /&gt;
&lt;br /&gt;
The WebAssembly SIMD is getting [https://github.com/WebAssembly/simd closer] to be available, we should support it.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Solution / Task ====&lt;br /&gt;
&lt;br /&gt;
* Implement the dispatch logic for WASM SIMD as done already for x86_64 and aarch64.&lt;br /&gt;
* Implement the Sum of absolute difference (SAD) and Sum of absolute transformed differences (SATD)&lt;br /&gt;
* Implement the inverse transforms (idct, iadst, identity, ...)&lt;br /&gt;
* Implement the motion compensation.&lt;br /&gt;
&lt;br /&gt;
==== Requirements ====&lt;br /&gt;
&lt;br /&gt;
The student should be familiar with Rust, WASM, wasmtime and related tools. Knowledge of x86 or arm assembly is not needed but will help.&lt;br /&gt;
&lt;br /&gt;
==== Possible Mentors ====&lt;br /&gt;
&lt;br /&gt;
[[User:Lu_zero]]&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== Implement butteraugli in av-metrics  ===&lt;br /&gt;
&lt;br /&gt;
av-metrics is a collection of video quality metrics, [https://github.com/google/butteraugli butteraugli] is a promising psychovisual similarity metric. &lt;br /&gt;
&lt;br /&gt;
==== Problem / Intro ====&lt;br /&gt;
&lt;br /&gt;
Currently the implementation of butteraugli exists as [https://github.com/google/butteraugli stand-alone] codebase. The code is readable, but it could be faster. &lt;br /&gt;
&lt;br /&gt;
==== Solution / Task ====&lt;br /&gt;
&lt;br /&gt;
* Implement rust bindings to the reference butteraugli.&lt;br /&gt;
* Implement butteraugli in pure rust within av-metrics.&lt;br /&gt;
* Write integration and unit tests to make sure the implementation does not diverge&lt;br /&gt;
* Write criterion benchmarks&lt;br /&gt;
* Implement x86_64 or aarch64 optimizations for it, using intrinsics or plain ASM.&lt;br /&gt;
&lt;br /&gt;
==== Requirements ====&lt;br /&gt;
&lt;br /&gt;
The student should be familiar with Rust, C and C++. Knowledge of x86 or arm assembly is welcome.&lt;br /&gt;
&lt;br /&gt;
==== Possible Mentors ====&lt;br /&gt;
&lt;br /&gt;
[[User:Lu_zero]]&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== Grain synthesis implementation inside of the rav1e encoder ===&lt;br /&gt;
&lt;br /&gt;
Grain synthesis is using the idea of modeling noise temporally and spatially using noise estimation.&lt;br /&gt;
&lt;br /&gt;
==== Problem / Intro ====&lt;br /&gt;
&lt;br /&gt;
Keeping high frequency detail and noise(dithering, camera noise, grain) using traditional encoder techniques is very expensive in terms of bitrate allocation, and some tools implemented to take care of that problem can create additional artifacts that are not pleasing to the general viewer experience, or are detrimental to the fidelity of the image.&lt;br /&gt;
&lt;br /&gt;
==== Solution / Task ====&lt;br /&gt;
&lt;br /&gt;
Implementing grain synthesis that models the noise parameters of a video, and applies the generated noise parameters during the decoding process, saving very high amounts of bitrates and providing a very high subjective visual fidelity and appeal.&lt;br /&gt;
&lt;br /&gt;
Making it faster than other forms of grain synthesis via smarter algorithms and using various forms of threading to speed up its application, such as tile threading and integration with rav1e-by-gop, making it possible to use as part of any encoding workflow. This will make sure adoption of the technique becomes as widespread as possible.&lt;br /&gt;
&lt;br /&gt;
==== Requirements ====&lt;br /&gt;
&lt;br /&gt;
The student should be familiar with Rust and C, and must have a light background in general visual media encoding, such as video and image compression.&lt;br /&gt;
Complexity: Medium.&lt;br /&gt;
&lt;br /&gt;
==== Possible Mentors ====&lt;br /&gt;
&lt;br /&gt;
[[User:Lu_zero]] &amp;amp;&amp;amp; XX&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
=== Adaptive quantization ===&lt;br /&gt;
&lt;br /&gt;
Adaptive quantization is the process of an algorithm trying to efficiently allocate bitrate among the various macroblocks found in a frame by varying the quantizer across each of them according to different visual targets.&lt;br /&gt;
&lt;br /&gt;
==== Problem / Intro ====&lt;br /&gt;
&lt;br /&gt;
Often times, an encoder does not know about the best way to allocate the bitrate budget across a frame, and may overspend a considerable amount of bitrate to regions that might not benefit from a low quantizer(low amounts of distortion, so less compression) while not giving enough bitrate to zones that might actually need it. This can even cause issues temporally, as bitrate allocation within a group of frames(GOPs) may be skewed towards more complex and high motion frames, while leaving other frames with barely any bitrate to work with, creating visual artifacts such as blocking and banding.&lt;br /&gt;
&lt;br /&gt;
==== Solution / Task ====&lt;br /&gt;
&lt;br /&gt;
Implementing 1-3 forms on adaptive quantization either based on variance, complexity and/or variance variance with a bias in low contrast frames in rav1e. This will make bitrate allocation more efficient, and avoid bitrate overspending in areas which either need the lower quantizer to avoid the presence of lower quality frames that might detract from the viewer experience, and make objective/subjective quality targets easier to achieved. The combination of powerful adaptive quantization and grain synthesis would allow for a higher subjective quality viewing experience at lower bitrates while potentially lowering computational complexity by a good margin.&lt;br /&gt;
&lt;br /&gt;
Making a smart adaptive AQ mode in which the encoder chooses which adaptive quantization algorithm to use depending on the scene featured in a GOP. Potentially difficult.&lt;br /&gt;
&lt;br /&gt;
==== Requirements ====&lt;br /&gt;
&lt;br /&gt;
The student should be familiar with Rust and C, and having a background in general visual media encoding, such as video and image compression is recommended.&lt;br /&gt;
&lt;br /&gt;
Difficulty: Medium depending on which targets the student chooses to follow&lt;br /&gt;
&lt;br /&gt;
==== Possible Mentors ====&lt;br /&gt;
&lt;br /&gt;
[[User:Lu_zero]] &amp;amp;&amp;amp; XX&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
=== Integrate rav1e-by-gop into rav1e encoder ===&lt;br /&gt;
&lt;br /&gt;
rav1e-by-gop is an extended command line encoder that provides additional encoding strategies such as by-gop parallel encoding across multiple machines.&lt;br /&gt;
&lt;br /&gt;
==== Problem / Intro ====&lt;br /&gt;
&lt;br /&gt;
rav1e-by-gop is currently a command line program, some users might want to enjoy on the extended features from other programs even if they do not always belong to an encoder.&lt;br /&gt;
&lt;br /&gt;
==== Solution / Task ====&lt;br /&gt;
&lt;br /&gt;
make rav1e-by-gop expose the same API of the normal rav1e to make easy to use the multiple machine encoding features from other programs.&lt;br /&gt;
&lt;br /&gt;
==== Requirements ====&lt;br /&gt;
&lt;br /&gt;
The student should be familiar with Rust or C programming.&amp;lt;br&amp;gt;&lt;br /&gt;
Video knowledge is not strictly necessary, however a basic understanding of the concepts is vastly beneficial.&lt;br /&gt;
&lt;br /&gt;
==== Possible Mentors ====&lt;br /&gt;
&lt;br /&gt;
[[User:Tdaede]] [[User:Lu_zero]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
=== Visual metric targeting in rav1e-by-gop ===&lt;br /&gt;
&lt;br /&gt;
Objective metrics are used to evaluate an encoder&#039;s performance in a diverse set of scenarios. Different metrics such as PSNR, SSIM, DSSIM, VMAF and some closed no-reference metrics are used in the field to record encoder performance changes across versions trying to correlate closely with human perception.&lt;br /&gt;
&lt;br /&gt;
==== Problem / Intro ====&lt;br /&gt;
&lt;br /&gt;
Classical methods of rate control such as ABR(Average BitRate), fixed quantizers and even CRF(Constant Rate Factor) have the issue of not targeting a certain quality level. This can result in starved encodes where the bitrate budget has to be kept low to stay watchable by the viewer without interruption, leading to scenes that have exceptionally good visual targets by overspending bitrate, and scenes that have very poor visual appeal by having too little bitrate, detracting from the viewer experience entirely. More advanced forms of rate control like CRF help somewhat, but they still have the issue of having to overshoot so the lower quality scenes do not suffer, and do not adapt to the different type of content encoded, resulting in variable quality encodes.&lt;br /&gt;
&lt;br /&gt;
==== Solution / Task ====&lt;br /&gt;
&lt;br /&gt;
Implementing visual metric targeting based on VMAF(mainly used for video) and butteraugli(mainly used for images) as part of rav1e-by-gop as a secondary rate control option. &lt;br /&gt;
&lt;br /&gt;
The application of visual metric targeting in rav1e-by-gop would take advantage of its adaptive keyframe placement and smart scene detection to its fullest. &lt;br /&gt;
This would allow for the best rate control possible, as short scenes in the length of 1-15s are where visual metrics such as VMAF shine the most. The idea is to encode first with a very fast speed preset in the encoder to gauge the quality at a prefixed quantizer. If the visual metric target set is not achieved, the encoder tries again once or twice until it gets the right result. &lt;br /&gt;
With this method, instead of targeting an average of bitrate, you would target a visual score, getting higher efficiency and higher subjective quality. This would also be advantageous in terms of encoding time spent, as encoder complexity could be dialed back while keeping overall efficiency the same or higher, with efficiency being a function of both encoder efficiency and rate control.&lt;br /&gt;
&lt;br /&gt;
Implementing butteraugli quality targeting as an option using rav1e for AVIF images. Since visual quality requirements are considerably higher for intra only(image only) media, keeping high visual fidelity is even more important than video compression. Quality targeting iterations would also be quite useful here.&lt;br /&gt;
&lt;br /&gt;
==== Requirements ====&lt;br /&gt;
&lt;br /&gt;
The student should be familiar with Rust and C. General interest in image and video coding is recommended&lt;br /&gt;
&lt;br /&gt;
Difficulty: Low-medium.&lt;br /&gt;
&lt;br /&gt;
==== Possible Mentors ====&lt;br /&gt;
&lt;br /&gt;
[[User:Lu_zero]] &amp;amp;&amp;amp; XX&lt;br /&gt;
----&lt;br /&gt;
=== Improved cluster support for Icecast ===&lt;br /&gt;
Icecast servers deliver streams to million of users simultaneous worldwide. Each instance can handle many thousand clients at the same time. However redundancy, scalability, hardware requirement, and most importantly network connectivity often requires to use several instances in a professional deployment.&lt;br /&gt;
==== Problem / Intro ====&lt;br /&gt;
Icecast is designed as a standalone application. While basic support exists (such as master-slave mode) support for clusters can be improved. At this point a cluster level mangement instance seems to be missing.&lt;br /&gt;
==== Solution / Task ====&lt;br /&gt;
A solution for cluster management should be developed. A cluster controller should be implemented as well as support within Icecast. The focus is on Icecast itself at this point. However the controler should at least demonstrate all features implemented in Icecast.&lt;br /&gt;
Possible features:&lt;br /&gt;
* Automatic master-slave, and relay configuration.&lt;br /&gt;
* Load distribution.&lt;br /&gt;
* Statistic data collection.&lt;br /&gt;
* Log collection.&lt;br /&gt;
* Node monitoring.&lt;br /&gt;
* Signalling of cluster state to external components (e.g. for automatic cluster scaling)&lt;br /&gt;
==== Requirements ====&lt;br /&gt;
The student should be familiar with C. A basic understanding of HTTP, as well as other web technologies is helpful. Knowledge of visualisation technologies is &#039;&#039;&#039;not&#039;&#039;&#039; required.&lt;br /&gt;
&lt;br /&gt;
Complexity: Medium to high.&lt;br /&gt;
==== Possible Mentors ====&lt;br /&gt;
phschafft (teamed with someone else)&lt;br /&gt;
----&lt;br /&gt;
=== Development of advanced content navigation in Icecast ===&lt;br /&gt;
Icecast currently supports navigation of listeners between different streams. This was developed mostly for fallbacks (providing alternative content if the primary source fails). This support should be improved to provide better interaction with contents.&lt;br /&gt;
==== Problem / Intro ====&lt;br /&gt;
The current implementation is designed to work very robust for source side events (such as fallbacks). However it fails for two requirements:&lt;br /&gt;
* Listener initiated interaction such as adaptive streaming.&lt;br /&gt;
* Exact timing.&lt;br /&gt;
==== Solution / Task ====&lt;br /&gt;
The current concept is capable of being extended to the new requirements. Code should be written to add the new features on the existing (and well proven) infrastructure. The following additional features would be needed:&lt;br /&gt;
Detection and matching of features within and between streams. This is required for any kind of synchronisation.&lt;br /&gt;
* Executing operations exactly at detached features.&lt;br /&gt;
* Adding ways to communicate features and operations between listener and Icecast, source and Icecast, and between multiple * * Icecast instances of the same cluster.&lt;br /&gt;
==== Requirements ====&lt;br /&gt;
The student should be familiar with C. A basic understanding of HTTP, Ogg, and Matroska/WebM is helpful.&lt;br /&gt;
&lt;br /&gt;
Complexity: Medium to high.&lt;br /&gt;
==== Possible Mentors ====&lt;br /&gt;
phschafft (teamed with someone else)&lt;br /&gt;
----&lt;br /&gt;
=== Uniform return channel for Icecast ===&lt;br /&gt;
Icecast supports broadcasting media to several thousand listeners per instance. In a classic setup this is a one way process from the source (such as a radio or TV studio) to the consumer. However it is sometimes useful to provide a return channel, such as for implementing polls.&lt;br /&gt;
==== Problem / Intro ====&lt;br /&gt;
Returning information from the listener to the source is part of classic media. The need has become more relevant with the development of more interactive ways of the web. Several technologies have been used to implement this including asking the listeners to call in, send e-mails, or comment on a web page.&lt;br /&gt;
&lt;br /&gt;
Classic ways to implement feedback include a media break and are only loosely bound to the forward channel.&lt;br /&gt;
==== Solution / Task ====&lt;br /&gt;
A uniform return channel should be implemented that allows several types of data to be send from the listener to the source. This includes three major parts:&lt;br /&gt;
* Improved session handling (both for listeners and for sources)&lt;br /&gt;
* Implementing a return channel for listeners.&lt;br /&gt;
* Implementing a return channel for sources.&lt;br /&gt;
==== Requirements ====&lt;br /&gt;
The student should be familiar with C and HTTP.&lt;br /&gt;
&lt;br /&gt;
Complexity: Medium.&lt;br /&gt;
==== Possible Mentors ====&lt;br /&gt;
phschafft (teamed with someone else)&lt;br /&gt;
----&lt;br /&gt;
=== (Live) listener statistics for Icecast ===&lt;br /&gt;
Icecast supports writing a basic access.log that includes client information as well as connection time. In addition a playlist log is supported, and live statistic data via the STATS interface.&lt;br /&gt;
&lt;br /&gt;
A standard solution to use this data for detailed listener statistics is missing.&lt;br /&gt;
==== Problem / Intro ====&lt;br /&gt;
In the current solution there is no off the shelf solution to process the statistic data provided by Icecast. The best available solutions are standard access log analysers. A solution for live statistics is completely missing. Statistics taking content into account is also absent.&lt;br /&gt;
==== Solution / Task ====&lt;br /&gt;
To improve the situation two major steps must be accomplished:&lt;br /&gt;
* The statistic interface of Icecast must be enhanced to provide the required information.&lt;br /&gt;
* A solution that analyses this data must be developed. The focus is on this part.&lt;br /&gt;
This project allows for a wide range of ideas from the participants to be incorporated. There is not yet and specific technical direction set. Evaluating different options is the first part of the project.&lt;br /&gt;
==== Requirements ====&lt;br /&gt;
The student should be familiar with C. A basic understanding of log analysis, and monitoring and/or data collecting systems is helpful.&lt;br /&gt;
&lt;br /&gt;
Difficulty: Medium depending on which targets the student chooses to follow.&lt;br /&gt;
==== Possible Mentors ====&lt;br /&gt;
phschafft (teamed with someone else)&lt;br /&gt;
----&lt;/div&gt;</summary>
		<author><name>Unlord</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=X264_features_in_rav1e&amp;diff=16693</id>
		<title>X264 features in rav1e</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=X264_features_in_rav1e&amp;diff=16693"/>
		<updated>2019-02-12T21:19:04Z</updated>

		<summary type="html">&lt;p&gt;Unlord: Unlord moved page X264 features in rav1e to Unimplemented x264 features in rav1e&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Unimplemented x264 features in rav1e]]&lt;/div&gt;</summary>
		<author><name>Unlord</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=Unimplemented_x264_features_in_rav1e&amp;diff=16692</id>
		<title>Unimplemented x264 features in rav1e</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=Unimplemented_x264_features_in_rav1e&amp;diff=16692"/>
		<updated>2019-02-12T21:19:04Z</updated>

		<summary type="html">&lt;p&gt;Unlord: Unlord moved page X264 features in rav1e to Unimplemented x264 features in rav1e&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is the list of unimplemented x264 features, but put in the context of rav1e instead: [https://wiki.videolan.org/index.php?title=X264_TODO]&lt;br /&gt;
&lt;br /&gt;
=== Motion Estimation ===&lt;br /&gt;
&lt;br /&gt;
*Sequential elimination (SEA), used for exhaustive search, might be more generally applicable to algorithms like UMH, by letting us skip a lot of SADs. The downside is we won&#039;t be able to use SAD_X4 anymore. &lt;br /&gt;
**rav1e: This would be nice to have. SAD_X4 is not applicable.&lt;br /&gt;
*(T)ESA is currently wrong for motion searches done on weightp duplicates. This effect is miniscule, but it still should be fixed. &lt;br /&gt;
**rav1e: doesn&#039;t even have TESA yet.&lt;br /&gt;
*Hierarchical motion estimation might be a useful way to catch very long motion vectors without the cost of UMH or ESA. It might also help regularize motion.&lt;br /&gt;
**rav1e: already has this, in the form of half-resolution and quarter-resolution search. It&#039;s enormously helpful for video game sequences.&lt;br /&gt;
*Somehow take into account the effect of motion vector decision on future blocks. &lt;br /&gt;
**rav1e: daala did this to enormous gain, should be doable in rav1e too.&lt;br /&gt;
*We don&#039;t need to check all 11 predictors all the time for 16x16 fullpel motion search. &lt;br /&gt;
**But how do we know which ones we can afford to skip, and when? &lt;br /&gt;
**Xvid and libtheora have algorithms for this, but the former&#039;s is almost surely 100% useless and the latter doesn&#039;t seem impressive either. &lt;br /&gt;
**rav1e: checking predictors is so cheap that this is a waste.&lt;br /&gt;
*libtheora does fullpel motion estimation on the source pixels instead of decoded pixels. Does this give a better starting point for the subpel search and discourage &amp;quot;weird&amp;quot; MVs? &lt;br /&gt;
**rav1e: worth trying but probably only for halfres and quarterres&lt;br /&gt;
*With extremely fast encoding settings (subme 0), can we rip off lookahead MVs instead of doing a real search? &lt;br /&gt;
**This seems to be awful from my testing, but maybe there&#039;s something we can do?&lt;br /&gt;
**rav1e: sounds like a waste, if you&#039;re going this fast you shouldn&#039;t be doing lookahead&lt;br /&gt;
*Try sub-8x8 partitions in B-frames. Is it at all useful? &lt;br /&gt;
**rav1e: already does this. might be worth investigating not doing this&lt;br /&gt;
*Try bidir motion estimation for fullpel. That is, considering L1&#039;s MV when doing L0 (or vice versa). Xvid does this. How much does it help? &lt;br /&gt;
**rav1e: probably worth doing.&lt;br /&gt;
*Fullpel chroma ME? &lt;br /&gt;
**rav1e: already done?&lt;br /&gt;
&lt;br /&gt;
=== Intra Analysis ===&lt;br /&gt;
&lt;br /&gt;
*Make the early terminations smarter. Currently they&#039;re just hacks -- some statistical analysis might be useful.&lt;br /&gt;
**rav1e early termination is more straightforward but still needs tuning.&lt;br /&gt;
&lt;br /&gt;
=== Mode Decision ===&lt;br /&gt;
&lt;br /&gt;
*Can we find more ways to skip more motion searches in multiref?&lt;br /&gt;
**A while back, I tried using weaker motion searches on older refs.  This helped a bit for speed-vs-compression, but is ironically the opposite of what one wants; older refs will be harder to find good MVs in, and therefore really need better searches.&lt;br /&gt;
*On extremely fast encoding settings, fast skip is actually kind of slow. But anything dumber (e.g. SAD) is completely useless. Is there some better balance that can be achieved here?&lt;br /&gt;
**Can we do something smart by analyzing fenc?  It&#039;s impossible to tell whether a block is motionless by looking at fdec, but looking at the source pixels is useful.  There&#039;s still complexity such as lower-QP-than-reference though.&lt;br /&gt;
*See the TODOs for deblock-aware RD in common/deblock.c.&lt;br /&gt;
**I tried correcting weightp references for deblock RDO, but it didn&#039;t help.&lt;br /&gt;
**I tried chroma, too, and again, it didn&#039;t help measurably.&lt;br /&gt;
*Is there a faster way than SA8D/SATD to do 8x8dct vs 4x4dct mode decision? At very fast settings, the time this uses is nontrivial.&lt;br /&gt;
**Doing a merged 4x4/8x8 SATD would help here, but would require new asm.&lt;br /&gt;
**rav1e: this speedup is probably less important&lt;br /&gt;
*Is there a faster way than RD to do 8x8dct vs 4x4dct mode decision that&#039;s still better than SATD? RD takes over an order of magnitude more time than SATD, so it might be useful to have something in the middle. &lt;br /&gt;
**rav1e: even more critical than in x264, see fast rdo patches&lt;br /&gt;
*Is there some value to swapping the mode decision metric from SATD to SA8D if we think that the macroblock will use 8x8dct? [http://akuvian.org/src/x264/x264_dct8_guess.diff This has been tried before], but only helped if our guess was extremely good (better than we could get in reality).&lt;br /&gt;
**rav1e: only uses one metric at a time.&lt;br /&gt;
&lt;br /&gt;
=== Psy ===&lt;br /&gt;
&lt;br /&gt;
*Psy-RD is a hack. It works, but it&#039;s a hack. If you apply QNS with Psy-RD as the metric, it goes way overboard and gives terrible results. This means that Psy-RD only works because normal mode decision is limited in the way it can modify the image to better suit the metric. Is there a way to make it better?&lt;br /&gt;
**rav1e: see cdef-dist.&lt;br /&gt;
*Should RD be linear at all? Perhaps we should weight more heavily against low quality blocks and also try to ignore minuscule distortion that viewers can&#039;t see. &lt;br /&gt;
**rav1e: see cdef-dist.&lt;br /&gt;
*Psy-trellis (and maybe psy-RD?) are too strong at very high QPs.&lt;br /&gt;
**rav1e: see cdef-dist.&lt;br /&gt;
*Psy-trellis should be merged with Psy-RD. There are patches for this, but they probably won&#039;t be committed until psy-RD itself is fixed.&lt;br /&gt;
**rav1e: see cdef-dist.&lt;br /&gt;
*RD should take into account local variance. &lt;br /&gt;
**rav1e: see cdef-dist.&lt;br /&gt;
*Lambda should be varied on a per-DCT-block basis instead of a per-macroblock basis. &lt;br /&gt;
**rav1e: should already do this&lt;br /&gt;
*Lambda should be picked independent of quantizer (i.e. with greater precision).&lt;br /&gt;
**rav1e: already done&lt;br /&gt;
*Classic problem: a block is mostly high complexity but has a small area of low complexity. How do we judge whether that area is important? Good example: sharp text on background with film grain; grain gets blurred out because of the text. &lt;br /&gt;
**If we think it&#039;s important all the time, we ruin the quality of many clips that rely on raising complexity on edges (Touhou). &lt;br /&gt;
*Should motion estimation lambda be as high as it is at very high quantizers? There&#039;s some value to capturing &amp;quot;true motion&amp;quot;... &lt;br /&gt;
*Macroblock tree correlates pretty well with visual perception in that its concept of a &amp;quot;high complexity&amp;quot; matches well with the visual concept. Except for local illumination changes. Talk to Dark Shikari for a patch.&lt;br /&gt;
**rav1e still needs mbtree&lt;br /&gt;
&lt;br /&gt;
=== Lookahead ===&lt;br /&gt;
&lt;br /&gt;
*Temporal MV predictors in lookahead? There&#039;s a patch for these somewhere, but they biased heavily in favor of B-frames, likely by improving the motion search. &lt;br /&gt;
**rav1e: lookahead should totally use temporal candidates if available&lt;br /&gt;
*Should lookahead use variable lambda based on quantizer (esp. due to adaptive quant)? If so, should it take into account estimated ratecontrol quantizer, too? If so, how?&lt;br /&gt;
**rav1e: should already do this, file a bug if it doesn&#039;t&lt;br /&gt;
&lt;br /&gt;
=== Quantization ===&lt;br /&gt;
&lt;br /&gt;
*There&#039;s room for something between trellis and deadzone in terms of complexity. libvpx has a good example -- it biases towards zero-runs in its &amp;quot;medium speed&amp;quot; quantizer. This can&#039;t be SIMD&#039;d easily, but is still vastly faster than trellis. A nonlinear quantizer (be more likely to round up larger coefficients) might also be useful.&lt;br /&gt;
**How useful is this with an entropy coder that doesn&#039;t really bias towards zero-runs, as in CABAC?&lt;br /&gt;
**rav1e: same concern, with lv-map instead&lt;br /&gt;
*Floyd-Steinberg for quantization? Try pushing quantization error to nearby DCT coefficients. Should this go from high to low or low to high? &lt;br /&gt;
**rav1e: eeeeeeeeeeeeh&lt;br /&gt;
*Energy-preserving quantizer -- maintain L1 (or maybe L2? I&#039;m not sure) energy. Should we maintain it in the spatial domain (post-iDCT) or residual domain? Probably the former. &lt;br /&gt;
**See [https://github.com/saintdev/x264-devel/compare/enquant-base...energy-quant saintdev&#039;s github] for one attempt at this.&lt;br /&gt;
**rav1e: this is pretty hard with just the quantizer, do delta q&#039;s first&lt;br /&gt;
&lt;br /&gt;
=== Transform ===&lt;br /&gt;
&lt;br /&gt;
*Analyze the error characteristics of the fDCT. Is there any way to make it more accurate without much speed loss? Particularly at extremely low quantizers, this might help. &lt;br /&gt;
**rav1e: Using the daala fDCT will accomplish this as well as improved speed (the AV1 fDCT is much more accurate than the H.264 one)&lt;br /&gt;
*Before forward transform, run a &amp;quot;blocking filter&amp;quot; that acts as the approximate inverse of the deblock filter. See [http://akuvian.org/src/x264/Shwang_loopfilter_thesis.pdf this paper].&lt;br /&gt;
**rav1e: even more applicable to AV1 due to the many postfilters.&lt;/div&gt;</summary>
		<author><name>Unlord</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=Daala&amp;diff=16571</id>
		<title>Daala</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=Daala&amp;diff=16571"/>
		<updated>2017-04-19T20:01:49Z</updated>

		<summary type="html">&lt;p&gt;Unlord: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Daala is the codename for a new video compression technology.&lt;br /&gt;
&lt;br /&gt;
The effort is a collaboration between the [https://www.mozilla.org/en-US/research/ Mozilla Foundation], the [https://www.xiph.org/ Xiph.Org Foundation] and any other contributors that wish to help.&lt;br /&gt;
&lt;br /&gt;
The goal of the project is to provide a video format that&#039;s free to implement, use and distribute, and a reference implementation with technical performance superior to [https://en.wikipedia.org/wiki/High_Efficiency_Video_Coding H.265]. &lt;br /&gt;
&lt;br /&gt;
Please see the links below or the [https://www.xiph.org/daala/ main page] for more information.&lt;br /&gt;
&lt;br /&gt;
== Wiki Pages ==&lt;br /&gt;
* [[Daala Quickstart|Daala Quickstart (Linux/MacOS)]]&lt;br /&gt;
* [[Daala Quickstart Windows|Daala Quickstart (Windows)]]&lt;br /&gt;
* [[Daala MinGW64 Environment]]&lt;br /&gt;
&lt;br /&gt;
* [[Daala Weekly Meetings|Daala Weekly Meetings]]&lt;br /&gt;
&lt;br /&gt;
* [[AreWeCompressedYet]]&lt;br /&gt;
* [[RD Curve Data Format]]&lt;br /&gt;
&lt;br /&gt;
* [[DaalaTodo|Daala To-do List]]&lt;br /&gt;
* [[DaalaRoadmap|Daala Roadmap]]&lt;br /&gt;
&lt;br /&gt;
* [[Intra|Intra-prediction within Daala]]&lt;br /&gt;
&lt;br /&gt;
* [[Videos|Digital Primers]] - educational videos about audio/video technology&lt;br /&gt;
&lt;br /&gt;
== Communication ==&lt;br /&gt;
You are &#039;&#039;&#039;encouraged&#039;&#039;&#039; to join the&lt;br /&gt;
* [irc://irc.freenode.net/daala &#039;&#039;&#039;#daala&#039;&#039;&#039; IRC channel at freenode.net] - if you don&#039;t have an IRC client, you can use Freenode&#039;s &#039;&#039;&#039;[https://webchat.freenode.net/?channels=%23daala webchat]&#039;&#039;&#039; instead.&lt;br /&gt;
* [http://lists.xiph.org/mailman/listinfo/daala Daala Email List]&lt;br /&gt;
&lt;br /&gt;
=== Weekly Meetings ===&lt;br /&gt;
You are also welcome to attend the public [[Daala Weekly Meetings|weekly progress meetings]] by installing and using [http://wiki.mumble.info Mumble].&amp;lt;br /&amp;gt;&lt;br /&gt;
The address is &#039;&#039;&#039;mf4.xiph.org&#039;&#039;&#039; and the port is &#039;&#039;&#039;64738&#039;&#039;&#039; (you can run &#039;&#039;&#039;mumble://mf4.xiph.org:64738&#039;&#039;&#039; within your browser as a shortcut).&amp;lt;br /&amp;gt;&lt;br /&gt;
The meetings occur on &#039;&#039;&#039;Tuesdays&#039;&#039;&#039; at &#039;&#039;&#039;[http://www.timeanddate.com/worldclock/fixedtime.html?msg=Daala+Weekly+Meeting&amp;amp;iso=20150428T09&amp;amp;p1=1241 9AM Pacific Time]&#039;&#039;&#039; (5PM UTC/GMT).&lt;br /&gt;
The meeting agenda used to be available at &#039;&#039;&#039;[https://daala.etherpad.mozilla.org/weekly-meeting this Etherpad]&#039;&#039;&#039;, the October 13, 2015 meeting is available on [https://docs.google.com/document/d/1JP_Ko3wPuyDWhooZcp_m9kndyfZ75xN5YOi5yIMCW0s/edit?pli=1 Google Docs] and, following the migration to Etherpad Lite, the meeting agenda and minutes are now available at [https://public.etherpad-mozilla.org/p/daala-weekly-meeting this Etherpad].&lt;br /&gt;
&lt;br /&gt;
=== Other ===&lt;br /&gt;
* [http://forum.doom9.org/showthread.php?t=168004 Doom9 Forum discussion] - generic forum thread regarding Daala&lt;br /&gt;
* &amp;lt;del&amp;gt;[https://daala.etherpad.mozilla.org/ep/padlist/all-pads Daala Etherpads] - you can [https://daala.etherpad.mozilla.org/ep/account/request-account request a free account] to view these. You should receive access within a few days.&amp;lt;/del&amp;gt; Mozilla are transitioning to Etherpad Lite.&lt;br /&gt;
* [http://benjamin.smedbergs.us/weekly-updates.fcgi/project/daala Daala Project Status Board] - what Daala bits the Mozilla people are working on&lt;br /&gt;
&lt;br /&gt;
== Coding ==&lt;br /&gt;
You can get a copy of the latest Daala Source Code from [https://git.xiph.org/?p=daala.git;a=summary &#039;&#039;&#039;git.xiph.org&#039;&#039;&#039;] or [https://github.com/xiph/daala &#039;&#039;&#039;GitHub&#039;&#039;&#039;]. Please stick to the &#039;&#039;&#039;[https://git.xiph.org/?p=daala.git;a=blob_plain;f=doc/coding_style.html Coding Style Guide]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
* [https://review.xiph.org/all?limit=100 Xiph Code Reviews] - there is a proposal on the review process &#039;&#039;&#039;[[DaalaReview|here]]&#039;&#039;&#039;&lt;br /&gt;
* [https://github.com/xiph/daala/issues Daala&#039;s issues] - Issue/bug tracker on Github&lt;br /&gt;
* [https://mf4.xiph.org/jenkins/view/daala/ Continuous Integration Tests] - these run every time a new commit is made to the Daala git master, to make sure the new code hasn&#039;t broken existing functionality.&lt;br /&gt;
* [[OggDaala]] - definitions for embedding Daala video within an [[Ogg]] container.&lt;br /&gt;
&lt;br /&gt;
== Demos ==&lt;br /&gt;
* [https://people.xiph.org/~xiphmont/demo/daala/player-demo.shtml Daala Video Player] - an example implementation of a Daala decoder and player, ported to Javascript using [https://github.com/kripken/emscripten Emscripten].&lt;br /&gt;
&lt;br /&gt;
=== Codec Techniques ===&lt;br /&gt;
* [https://people.xiph.org/~xiphmont/demo/ Demo Articles] - explanations on certain techniques used in Daala (and other Xiph.Org projects)&lt;br /&gt;
* [http://exp.martres.me/edi/ Edge-Directed Interpolation] ([https://github.com/smarter/edi source code])&lt;br /&gt;
* [https://people.xiph.org/~ds/edi/info.html More Edge-Directed Interpolation]&lt;br /&gt;
* [https://people.xiph.org/~unlord/demo/intra.html Intra-prediction]&lt;br /&gt;
* [https://people.xiph.org/~unlord/zigzags.html Macroblock Coefficient Zigzag Graph] - HTML page generated using [https://github.com/xiph/daala/blob/master/tools/draw_zigzags.c tools/draw_zigzags.c] from the Daala source code.&lt;br /&gt;
&lt;br /&gt;
== Documents ==&lt;br /&gt;
* [https://people.xiph.org/~unlord/spie_cfl.pdf Chroma from Luma (CfL)]&lt;br /&gt;
* [http://jmvalin.ca/papers/spie_pvq.pdf Perceptual Vector Quantisation (PVQ)] - see also [https://people.xiph.org/~yushin/ietf/draft-cho-netvc-applypvq.html Applying PVQ Outside Daala]&lt;br /&gt;
* [https://people.xiph.org/~tterribe/daala/vbsobmc.pdf Overlapped Block Motion Compensation (OBMC)]&lt;br /&gt;
* [https://mf4.xiph.org/jenkins/job/daala-autotools/ws/doc/html/index.html C API Documentation]&lt;br /&gt;
* [https://people.xiph.org/~yushin/tmp__/yushin_phd_thesis.pdf Image Coding Thesis] by Yushin Cho&lt;br /&gt;
* [http://arxiv.org/pdf/1411.4290v1.pdf Maximising Coding Efficiency Through Block Rotation] and why it [http://lists.xiph.org/pipermail/daala/2015-January/000054.html won&#039;t work well within Daala]&lt;br /&gt;
* [http://jmvalin.ca/video/theoretical_results.pdf JMSpeex&#039; Journal of Dubious Theoretical Results] - &amp;quot;take with an entire shaker-full of salt&amp;quot;&lt;br /&gt;
* [https://people.xiph.org/~unlord/pcs_daala.pdf Using Daala Intra Frames for Still Picture Coding]&lt;br /&gt;
* [http://arxiv.org/abs/1602.05975 The Daala Directional Deringing Filter]&lt;br /&gt;
* [https://people.xiph.org/~unlord/icip2016.pdf Daala: A Perceptually-Driven Still Image Codec](draft) - submitted at [http://2016.ieeeicip.org/ ICIP 2016].&lt;br /&gt;
* [http://people.xiph.org/~tterribe/daala/neon_tutorial.pdf SIMD Assembly Tutorial: ARM NEON]&lt;br /&gt;
&lt;br /&gt;
=== IETF Drafts ===&lt;br /&gt;
* [https://tools.ietf.org/html/draft-egge-videocodec-tdlt Time-Domain Lapped Transforms (TDLT)] - documents the Lapped Transform pre- and post-filters used for block-edge decorrelation&lt;br /&gt;
* [https://tools.ietf.org/html/draft-valin-videocodec-pvq Perceptual Vector Quantisation (PVQ)] - &lt;br /&gt;
* [https://tools.ietf.org/html/draft-terriberry-codingtools Coding Tools] - documents Entropy Coding, Integer Transforms and other techniques&lt;br /&gt;
* [https://tools.ietf.org/html/draft-moffitt-netvc-requirements Internet Video Codec (NetVC) Requirements] - explains what requirements and use cases Daala is trying to cater for&lt;br /&gt;
* [https://tools.ietf.org/html/draft-daede-netvc-testing Internet Video Codec (NetVC) Testing and Quality Measurement]&lt;br /&gt;
* [https://tools.ietf.org/html/draft-terriberry-ipr-license Example IPR Licence Terms]&lt;br /&gt;
&lt;br /&gt;
Additional drafts can be found at the [https://datatracker.ietf.org/wg/netvc/documents/ IETF DataTracker].&lt;br /&gt;
&lt;br /&gt;
== Presentations ==&lt;br /&gt;
For a more in-depth look at the IETF&#039;s NetVC Meetings, use the [https://datatracker.ietf.org/wg/netvc/meetings/ IETF DataTracker].&lt;br /&gt;
&lt;br /&gt;
* 2017-02-05 - FOSDEM 2017 - [https://video.fosdem.org/2017/K.3.401/om_av1.vp8.webm Video] - [https://fosdem.org/2017/schedule/event/om_av1/attachments/slides/1795/export/events/attachments/om_av1/slides/1795/av1_update.pdf Slides]&lt;br /&gt;
* 2017-01-17 - Linux Conf AU - [https://www.youtube.com/watch?v=lzPaldsmJbk Video] - [https://people.xiph.org/~tterribe/pubs/lca2017/aom.pdf Slides]&lt;br /&gt;
-------&lt;br /&gt;
* 2016-11-15 - IETF 97 - [https://datatracker.ietf.org/meeting/97/agenda/netvc/ Agenda] - [http://recs.conf.meetecho.com/Playout/watch.jsp?recording=IETF97_NETVC&amp;amp;chapter=chapter_1 Video and Chat] - [https://datatracker.ietf.org/meeting/97/session/netvc/ Slides]&lt;br /&gt;
* 2016-09-04 - VideoLAN Dev Days 2016 - [https://www.youtube.co.uk/watch?v=AOssZFJ0EdI Video] - [http://people.xiph.org/~tterribe/daala/vdd2016.pdf Slides]&lt;br /&gt;
* 2016-08-31 - SPIE Royalty-free Video - [http://spie.org/OPO/conferencedetails/digital-image-processing#session-7 Schedule and Abstracts] - [https://www.youtube.co.uk/watch?v=wi1BefrfTos&amp;amp;t=41m40s Video] - [http://people.xiph.org/~tterribe/daala/daala-spie-adip2016-slides.pdf Slides]&lt;br /&gt;
* 2016-07-18 - IETF 96 - [https://datatracker.ietf.org/meeting/96/agenda/netvc/ Agenda] - [http://recs.conf.meetecho.com/Playout/watch.jsp?recording=IETF96_NETVC&amp;amp;chapter=chapter_1 Video and Chat] - [https://datatracker.ietf.org/meeting/96/session/netvc/ Slides]&lt;br /&gt;
* 2016-06-27 - Daala&#039;s Entropy Coder - [http://people.xiph.org/~tterribe/daala/daala_ec.pdf Slides]&lt;br /&gt;
* 2016-04-07 - IETF 95 - [https://datatracker.ietf.org/meeting/95/agenda/netvc/ Agenda] - [http://recs.conf.meetecho.com/Playout/watch.jsp?recording=IETF95_NETVC&amp;amp;chapter=chapter_1 Video and Chat] - [https://www.ietf.org/proceedings/95/slides/slides-95-netvc-2.pdf Slides] - [https://datatracker.ietf.org/meeting/95/session/netvc/ Other Materials]&lt;br /&gt;
* 2016-04-01 - DCC 2016 - [https://people.xiph.org/~unlord/Daala-DCC2016.pdf Slides] - [https://people.xiph.org/~unlord/1853a466.pdf Paper]&lt;br /&gt;
* 2016-01-30 - FOSDEM 2016 - [https://fosdem.org/2016/schedule/event/daala/ Summary] - [https://video.fosdem.org/2016/h2214/implementing-a-native-daala-decoder-in-ffmpeg.mp4 Video (MP4, 57MB)] - [https://people.xiph.org/~unlord/Xmi.pdf Slides]&lt;br /&gt;
-------&lt;br /&gt;
* 2015-11-02 - IETF 94 - [https://datatracker.ietf.org/meeting/94/agenda/netvc/ Agenda] - [http://www.meetecho.com/ietf94/netvc Video and Chat] - [https://datatracker.ietf.org/meeting/94/session/netvc/ Other Materials]&lt;br /&gt;
* 2015-10-24 - LinuxDay 24 (Turin) - [https://people.xiph.org/~tterribe/daala/linuxday24.pdf Slides]&lt;br /&gt;
* 2015-10-21 - MPEG 113 - Future Video Coding Workshop - [https://people.xiph.org/~tterribe/daala/mpeg113.pdf Slides]&lt;br /&gt;
* 2015-09-19 - VideoLAN Dev Days - [https://www.youtube.com/playlist?list=PLQLpBN3oI7E44HIdTOovThc1MNHLchgHE YouTube Playlist] - [https://people.xiph.org/~tterribe/daala/vdd2015.pdf Daala Slides]&lt;br /&gt;
* 2015-07-22 - IETF 93 - [http://recordings.conf.meetecho.com/Playout/watch.jsp?recording=IETF93_NETVC_II&amp;amp;chapter=chapter_1 NetVC Session 2/2] - [https://datatracker.ietf.org/meeting/93/agenda/netvc/ Agenda] - [http://www.meetecho.com/ietf93/netvc_II Video and Chat] - [https://www.ietf.org/proceedings/93/slides/slides-93-netvc-4.pdf Slides] - [https://www.ietf.org/jabber/logs/netvc/2015-07-22.html Jabber Log] - [https://datatracker.ietf.org/meeting/93/session/netvc/ Other Materials]&lt;br /&gt;
* 2015-07-20 - IETF 93 - [http://recordings.conf.meetecho.com/Playout/watch.jsp?recording=IETF93_NETVC&amp;amp;chapter=chapter_1 NetVC Session 1/2] - [https://datatracker.ietf.org/meeting/93/agenda/netvc/ Agenda] - [http://www.meetecho.com/ietf93/netvc Video and Chat] - [https://www.ietf.org/proceedings/93/slides/slides-93-netvc-3.pdf Slides] - [https://www.ietf.org/jabber/logs/netvc/2015-07-20.html Jabber Log]&lt;br /&gt;
* 2015-03-24 - IETF 92 - [http://recordings.conf.meetecho.com/Playout/watch.jsp?recording=IETF92_NETVC&amp;amp;chapter=chapter_0 NetVC Session] - Audio as [https://people.xiph.org/~tdaede/audio/ietf92-venetian-20150324-0900-am1.opus Opus] (29MB) or [https://www.ietf.org/audio/ietf92/ietf92-venetian-20150324-0900-am1.mp3 MP3] (119MB, action starts at 14:50) - [https://www.ietf.org/proceedings/92/slides/slides-92-netvc-0.pdf Slides] - [https://www.ietf.org/mail-archive/web/video-codec/current/msg00235.html Notes] - [https://www.ietf.org/jabber/logs/netvc/2015-03-24.html Jabber Log]&lt;br /&gt;
* 2015-02-11 - SPIE talks:&lt;br /&gt;
&amp;lt;!-- Originals of these 3 videos can be found at http://people.xiph.org/~unlord/ --&amp;gt;&lt;br /&gt;
&amp;lt;!-- Someday, should do a better encode... --&amp;gt;&lt;br /&gt;
** [http://people.xiph.org/~tdaede/video/SPIE_Nathan.webm Chroma from Luma (CfL)] - [https://people.xiph.org/~unlord/SPIE-2015-CfL.pdf Slides] - [https://people.xiph.org/~unlord/spie_cfl.pdf Paper]&lt;br /&gt;
** [http://people.xiph.org/~tdaede/video/SPIE_PVQ.webm Perceptual Vector Quantisation (PVQ)] - [http://people.xiph.org/~tterribe/daala/spie_pvq_slides.pdf Slides] - [http://jmvalin.ca/papers/spie_pvq.pdf Paper]&lt;br /&gt;
** [http://people.xiph.org/~tdaede/video/SPIE_Tim.webm Adaptive Motion Compensation Without Blocking Artifacts] - [http://people.xiph.org/~tterribe/daala/spie_obmc_slides.pdf Slides] - [https://people.xiph.org/~tterribe/daala/vbsobmc.pdf Paper]&lt;br /&gt;
* 2015-01-31 - [http://ftp.osuosl.org/pub/fosdem/2015/devroom-open_media/daala.mp4 Daala Project Update at FOSDEM 2015] - [https://fosdem.org/2015/schedule/event/daala/ summary] - [https://fosdem.org/2015/schedule/event/daala/attachments/slides/569/export/events/attachments/daala/slides/569/Daala_FOSDEM_2015.pdf Slides]&lt;br /&gt;
* 2015-01-14 - [https://www.youtube.co.uk/watch?v=Dmho4gcRvQ4 Linux Conf 2015] - [http://lca2015.linux.org.au/schedule/30187/view_talk presentation summary] - [https://people.xiph.org/~tterribe/pubs/lca2015/daala.pdf Slides]&lt;br /&gt;
-------&lt;br /&gt;
* 2014-09-16 - [https://air.mozilla.org/daala-are-we-compressed-yet/ Daala: Are We Compressed Yet?]&lt;br /&gt;
* 2014-06-25 - [https://air.mozilla.org/sparsity-induced-prediction-for-images-and-video/ Sparsity Induced Prediction for Images and Video]&lt;br /&gt;
* 2014-06-06 - VP9 Summit (no video available) - [https://people.xiph.org/~xiphmont/demo/daala/daala-vp9summit-20140606.pdf Slides]&lt;br /&gt;
-------&lt;br /&gt;
* 2013-10-23 - [https://people.xiph.org/~xiphmont/video/Free_Codecs_Update_Opus_and_Daala.ogv Opus and Daala: State of the Art Royalty-free Codecs] - [https://people.xiph.org/~greg/gstreamer-daala-opus.pdf Slides]&lt;br /&gt;
* 2013-09-30 - [https://people.xiph.org/~tterribe/daala/coding_party2/?C=M;O=A Daala Coding Party 2] - [https://people.xiph.org/~unlord/Daala-Intra.pdf Slides]&lt;br /&gt;
* 2013-05-02 - [https://people.xiph.org/~xiphmont/tim-terriberry-presents-daala/ Tim Terriberry Presents Daala]&lt;br /&gt;
-------&lt;br /&gt;
* 2012-01-24 - [https://media.basilgohar.com/derf-talks/?C=M;O=A Introduction to Video Coding] - [https://people.xiph.org/~tterribe/pubs/lca2012/auckland/intro_to_video1.pdf Slides] (no video for slides 1-50)&lt;br /&gt;
&lt;br /&gt;
== Other Websites ==&lt;br /&gt;
* [https://www.youtube.com/playlist?list=PLEeMksZoEQ1xQEuLF50w0RwDwLgDGwSG- Daala Presentations on YouTube]&lt;br /&gt;
* [https://www.youtube.com/playlist?list=PLOU2XLYxmsIJGErt5rrCqaSGTMyyqNt2H Google&#039;s Compressor Head videos] - a beginner&#039;s introduction to the world of data compression&lt;br /&gt;
* [https://www.zazzle.com/daala_tee_shirt-235139149596175944 Daala T-shirts] - if you&#039;d like a free one, help out with the project and ask the Mozilla guys nicely for one :-)&lt;br /&gt;
* [https://www.xiph.org/donate/ Donate to Xiph.Org] &lt;br /&gt;
* [[Daala_on_Wheels|Historical Daala wiki page]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Daala]]&lt;/div&gt;</summary>
		<author><name>Unlord</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=Daala&amp;diff=16467</id>
		<title>Daala</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=Daala&amp;diff=16467"/>
		<updated>2016-08-20T17:38:20Z</updated>

		<summary type="html">&lt;p&gt;Unlord: /* Presentations */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Daala is the codename for a new video compression technology.&lt;br /&gt;
&lt;br /&gt;
The effort is a collaboration between the [https://www.mozilla.org/en-US/research/ Mozilla Foundation], the [https://www.xiph.org/ Xiph.Org Foundation] and any other contributors that wish to help.&lt;br /&gt;
&lt;br /&gt;
The goal of the project is to provide a video format that&#039;s free to implement, use and distribute, and a reference implementation with technical performance superior to [https://en.wikipedia.org/wiki/High_Efficiency_Video_Coding H.265]. &lt;br /&gt;
&lt;br /&gt;
Please see the links below or the [https://www.xiph.org/daala/ main page] for more information.&lt;br /&gt;
&lt;br /&gt;
== Wiki Pages ==&lt;br /&gt;
* [[Daala Quickstart|Daala Quickstart (Linux/MacOS)]]&lt;br /&gt;
* [[Daala Quickstart Windows|Daala Quickstart (Windows)]]&lt;br /&gt;
* [[Daala MinGW64 Environment]]&lt;br /&gt;
&lt;br /&gt;
* [[Daala Weekly Meetings|Daala Weekly Meetings]]&lt;br /&gt;
&lt;br /&gt;
* [[AreWeCompressedYet]]&lt;br /&gt;
* [[RD Curve Data Format]]&lt;br /&gt;
&lt;br /&gt;
* [[DaalaTodo|Daala To-do List]]&lt;br /&gt;
* [[DaalaRoadmap|Daala Roadmap]]&lt;br /&gt;
&lt;br /&gt;
* [[Intra|Intra-prediction within Daala]]&lt;br /&gt;
&lt;br /&gt;
* [[Videos|Digital Primers]] - educational videos about audio/video technology&lt;br /&gt;
&lt;br /&gt;
== Communication ==&lt;br /&gt;
You are &#039;&#039;&#039;encouraged&#039;&#039;&#039; to join the&lt;br /&gt;
* [irc://irc.freenode.net/daala &#039;&#039;&#039;#daala&#039;&#039;&#039; IRC channel at freenode.net] - if you don&#039;t have an IRC client, you can use Freenode&#039;s &#039;&#039;&#039;[https://webchat.freenode.net/?channels=%23daala webchat]&#039;&#039;&#039; instead.&lt;br /&gt;
* [http://lists.xiph.org/mailman/listinfo/daala Daala Email List]&lt;br /&gt;
&lt;br /&gt;
=== Weekly Meetings ===&lt;br /&gt;
You are also welcome to attend the public [[Daala Weekly Meetings|weekly progress meetings]] by installing and using [http://wiki.mumble.info Mumble].&amp;lt;br /&amp;gt;&lt;br /&gt;
The address is &#039;&#039;&#039;mf4.xiph.org&#039;&#039;&#039; and the port is &#039;&#039;&#039;64738&#039;&#039;&#039; (you can run &#039;&#039;&#039;mumble://mf4.xiph.org:64738&#039;&#039;&#039; within your browser as a shortcut).&amp;lt;br /&amp;gt;&lt;br /&gt;
The meetings occur on &#039;&#039;&#039;Tuesdays&#039;&#039;&#039; at &#039;&#039;&#039;[http://www.timeanddate.com/worldclock/fixedtime.html?msg=Daala+Weekly+Meeting&amp;amp;iso=20150428T09&amp;amp;p1=1241 9AM Pacific Time]&#039;&#039;&#039; (5PM UTC/GMT).&lt;br /&gt;
The meeting agenda used to be available at &#039;&#039;&#039;[https://daala.etherpad.mozilla.org/weekly-meeting this Etherpad]&#039;&#039;&#039;, the October 13, 2015 meeting is available on [https://docs.google.com/document/d/1JP_Ko3wPuyDWhooZcp_m9kndyfZ75xN5YOi5yIMCW0s/edit?pli=1 Google Docs] and, following the migration to Etherpad Lite, the meeting agenda and minutes are now available at [https://public.etherpad-mozilla.org/p/daala-weekly-meeting this Etherpad].&lt;br /&gt;
&lt;br /&gt;
=== Other ===&lt;br /&gt;
* [http://forum.doom9.org/showthread.php?t=168004 Doom9 Forum discussion] - generic forum thread regarding Daala&lt;br /&gt;
* &amp;lt;del&amp;gt;[https://daala.etherpad.mozilla.org/ep/padlist/all-pads Daala Etherpads] - you can [https://daala.etherpad.mozilla.org/ep/account/request-account request a free account] to view these. You should receive access within a few days.&amp;lt;/del&amp;gt; Mozilla are transitioning to Etherpad Lite.&lt;br /&gt;
* [http://benjamin.smedbergs.us/weekly-updates.fcgi/project/daala Daala Project Status Board] - what Daala bits the Mozilla people are working on&lt;br /&gt;
&lt;br /&gt;
== Coding ==&lt;br /&gt;
You can get a copy of the latest Daala Source Code from [https://git.xiph.org/?p=daala.git;a=summary &#039;&#039;&#039;git.xiph.org&#039;&#039;&#039;] or [https://github.com/xiph/daala &#039;&#039;&#039;GitHub&#039;&#039;&#039;]. Please stick to the &#039;&#039;&#039;[https://git.xiph.org/?p=daala.git;a=blob_plain;f=doc/coding_style.html Coding Style Guide]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
* [https://review.xiph.org/all?limit=100 Xiph Code Reviews] - there is a proposal on the review process &#039;&#039;&#039;[[DaalaReview|here]]&#039;&#039;&#039;&lt;br /&gt;
* [https://github.com/xiph/daala/issues Daala&#039;s issues] - Issue/bug tracker on Github&lt;br /&gt;
* [https://mf4.xiph.org/jenkins/view/daala/ Continuous Integration Tests] - these run every time a new commit is made to the Daala git master, to make sure the new code hasn&#039;t broken existing functionality.&lt;br /&gt;
* [[OggDaala]] - definitions for embedding Daala video within an [[Ogg]] container.&lt;br /&gt;
&lt;br /&gt;
== Demos ==&lt;br /&gt;
* [https://people.xiph.org/~xiphmont/demo/daala/player-demo.shtml Daala Video Player] - an example implementation of a Daala decoder and player, ported to Javascript using [https://github.com/kripken/emscripten Emscripten].&lt;br /&gt;
&lt;br /&gt;
=== Codec Techniques ===&lt;br /&gt;
* [https://people.xiph.org/~xiphmont/demo/ Demo Articles] - explanations on certain techniques used in Daala (and other Xiph.Org projects)&lt;br /&gt;
* [http://exp.martres.me/edi/ Edge-Directed Interpolation] ([https://github.com/smarter/edi source code])&lt;br /&gt;
* [https://people.xiph.org/~ds/edi/info.html More Edge-Directed Interpolation]&lt;br /&gt;
* [https://people.xiph.org/~unlord/demo/intra.html Intra-prediction]&lt;br /&gt;
* [https://people.xiph.org/~unlord/zigzags.html Macroblock Coefficient Zigzag Graph] - HTML page generated using [https://github.com/xiph/daala/blob/master/tools/draw_zigzags.c tools/draw_zigzags.c] from the Daala source code.&lt;br /&gt;
&lt;br /&gt;
== Documents ==&lt;br /&gt;
* [https://people.xiph.org/~unlord/spie_cfl.pdf Chroma from Luma (CfL)]&lt;br /&gt;
* [http://jmvalin.ca/papers/spie_pvq.pdf Perceptual Vector Quantisation (PVQ)]&lt;br /&gt;
* [https://people.xiph.org/~tterribe/daala/vbsobmc.pdf Overlapped Block Motion Compensation (OBMC)]&lt;br /&gt;
* [https://mf4.xiph.org/jenkins/job/daala-autotools/ws/doc/html/index.html C API Documentation]&lt;br /&gt;
* [https://people.xiph.org/~yushin/tmp__/yushin_phd_thesis.pdf Image Coding Thesis] by Yushin Cho&lt;br /&gt;
* [http://arxiv.org/pdf/1411.4290v1.pdf Maximising Coding Efficiency Through Block Rotation] and why it [http://lists.xiph.org/pipermail/daala/2015-January/000054.html won&#039;t work well within Daala]&lt;br /&gt;
* [http://jmvalin.ca/video/theoretical_results.pdf JMSpeex&#039; Journal of Dubious Theoretical Results] - &amp;quot;take with an entire shaker-full of salt&amp;quot;&lt;br /&gt;
* [https://people.xiph.org/~unlord/pcs_daala.pdf Using Daala Intra Frames for Still Picture Coding]&lt;br /&gt;
* [http://arxiv.org/abs/1602.05975 The Daala Directional Deringing Filter]&lt;br /&gt;
* [https://people.xiph.org/~unlord/icip2016.pdf Daala: A Perceptually-Driven Still Image Codec](draft) - submitted at [http://2016.ieeeicip.org/ ICIP 2016].&lt;br /&gt;
* [http://people.xiph.org/~tterribe/daala/neon_tutorial.pdf SIMD Assembly Tutorial: ARM NEON]&lt;br /&gt;
&lt;br /&gt;
=== IETF Drafts ===&lt;br /&gt;
* [https://tools.ietf.org/html/draft-egge-videocodec-tdlt Time-Domain Lapped Transforms (TDLT)] - documents the Lapped Transform pre- and post-filters used for block-edge decorrelation&lt;br /&gt;
* [https://tools.ietf.org/html/draft-valin-videocodec-pvq Perceptual Vector Quantisation (PVQ)] - &lt;br /&gt;
* [https://tools.ietf.org/html/draft-terriberry-codingtools Coding Tools] - documents Entropy Coding, Integer Transforms and other techniques&lt;br /&gt;
* [https://tools.ietf.org/html/draft-moffitt-netvc-requirements Internet Video Codec (NetVC) Requirements] - explains what requirements and use cases Daala is trying to cater for&lt;br /&gt;
* [https://tools.ietf.org/html/draft-daede-netvc-testing Internet Video Codec (NetVC) Testing and Quality Measurement]&lt;br /&gt;
* [https://tools.ietf.org/html/draft-terriberry-ipr-license Example IPR Licence Terms]&lt;br /&gt;
&lt;br /&gt;
Additional drafts can be found at the [https://datatracker.ietf.org/wg/netvc/documents/ IETF DataTracker].&lt;br /&gt;
&lt;br /&gt;
== Presentations ==&lt;br /&gt;
For a more in-depth look at the IETF&#039;s NetVC Meetings, use the [https://datatracker.ietf.org/wg/netvc/meetings/ IETF DataTracker].&lt;br /&gt;
&lt;br /&gt;
* 2016-06-27 - Daala EC - [http://people.xiph.org/~tterribe/daala/daala_ec.pdf Slides]&lt;br /&gt;
* 2016-07-18 - IETF 96 - [https://datatracker.ietf.org/meeting/96/agenda/netvc/ Agenda] - [http://recs.conf.meetecho.com/Playout/watch.jsp?recording=IETF96_NETVC&amp;amp;chapter=chapter_1 Video and Chat] - [https://datatracker.ietf.org/meeting/96/session/netvc/ Slides]&lt;br /&gt;
* 2016-04-07 - IETF 95 - [https://datatracker.ietf.org/meeting/95/agenda/netvc/ Agenda] - [http://recs.conf.meetecho.com/Playout/watch.jsp?recording=IETF95_NETVC&amp;amp;chapter=chapter_1 Video and Chat] - [https://www.ietf.org/proceedings/95/slides/slides-95-netvc-2.pdf Slides] - [https://datatracker.ietf.org/meeting/95/session/netvc/ Other Materials]&lt;br /&gt;
* 2016-04-01 - DCC 2016 - [https://people.xiph.org/~unlord/Daala-DCC2016.pdf Slides] - [https://people.xiph.org/~unlord/1853a466.pdf Paper]&lt;br /&gt;
* 2016-01-30 - FOSDEM 2016 - [https://fosdem.org/2016/schedule/event/daala/ Summary] - [https://video.fosdem.org/2016/h2214/implementing-a-native-daala-decoder-in-ffmpeg.mp4 Video (MP4, 57MB)] - [https://people.xiph.org/~unlord/Xmi.pdf Slides]&lt;br /&gt;
-------&lt;br /&gt;
* 2015-11-02 - IETF 94 - [https://datatracker.ietf.org/meeting/94/agenda/netvc/ Agenda] - [http://www.meetecho.com/ietf94/netvc Video and Chat] - [https://datatracker.ietf.org/meeting/94/session/netvc/ Other Materials]&lt;br /&gt;
* 2015-10-24 - LinuxDay 24 (Turin) - [https://people.xiph.org/~tterribe/daala/linuxday24.pdf Slides]&lt;br /&gt;
* 2015-10-21 - MPEG 113 - Future Video Coding Workshop - [https://people.xiph.org/~tterribe/daala/mpeg113.pdf Slides]&lt;br /&gt;
* 2015-09-19 - VideoLAN Dev Days - [https://www.youtube.com/playlist?list=PLQLpBN3oI7E44HIdTOovThc1MNHLchgHE YouTube Playlist] - [https://people.xiph.org/~tterribe/daala/vdd2015.pdf Daala Slides]&lt;br /&gt;
* 2015-07-22 - IETF 93 - [http://recordings.conf.meetecho.com/Playout/watch.jsp?recording=IETF93_NETVC_II&amp;amp;chapter=chapter_1 NetVC Session 2/2] - [https://datatracker.ietf.org/meeting/93/agenda/netvc/ Agenda] - [http://www.meetecho.com/ietf93/netvc_II Video and Chat] - [https://www.ietf.org/proceedings/93/slides/slides-93-netvc-4.pdf Slides] - [https://www.ietf.org/jabber/logs/netvc/2015-07-22.html Jabber Log] - [https://datatracker.ietf.org/meeting/93/session/netvc/ Other Materials]&lt;br /&gt;
* 2015-07-20 - IETF 93 - [http://recordings.conf.meetecho.com/Playout/watch.jsp?recording=IETF93_NETVC&amp;amp;chapter=chapter_1 NetVC Session 1/2] - [https://datatracker.ietf.org/meeting/93/agenda/netvc/ Agenda] - [http://www.meetecho.com/ietf93/netvc Video and Chat] - [https://www.ietf.org/proceedings/93/slides/slides-93-netvc-3.pdf Slides] - [https://www.ietf.org/jabber/logs/netvc/2015-07-20.html Jabber Log]&lt;br /&gt;
* 2015-03-24 - IETF 92 - [http://recordings.conf.meetecho.com/Playout/watch.jsp?recording=IETF92_NETVC&amp;amp;chapter=chapter_0 NetVC Session] - Audio as [https://people.xiph.org/~tdaede/audio/ietf92-venetian-20150324-0900-am1.opus Opus] (29MB) or [https://www.ietf.org/audio/ietf92/ietf92-venetian-20150324-0900-am1.mp3 MP3] (119MB, action starts at 14:50) - [https://www.ietf.org/proceedings/92/slides/slides-92-netvc-0.pdf Slides] - [https://www.ietf.org/mail-archive/web/video-codec/current/msg00235.html Notes] - [https://www.ietf.org/jabber/logs/netvc/2015-03-24.html Jabber Log]&lt;br /&gt;
* 2015-02-11 - SPIE talks:&lt;br /&gt;
&amp;lt;!-- Originals of these 3 videos can be found at http://people.xiph.org/~unlord/ --&amp;gt;&lt;br /&gt;
&amp;lt;!-- Someday, should do a better encode... --&amp;gt;&lt;br /&gt;
** [http://people.xiph.org/~tdaede/video/SPIE_Nathan.webm Chroma from Luma (CfL)] - [https://people.xiph.org/~unlord/SPIE-2015-CfL.pdf Slides] - [https://people.xiph.org/~unlord/spie_cfl.pdf Paper]&lt;br /&gt;
** [http://people.xiph.org/~tdaede/video/SPIE_PVQ.webm Perceptual Vector Quantisation (PVQ)] - [http://people.xiph.org/~tterribe/daala/spie_pvq_slides.pdf Slides] - [http://jmvalin.ca/papers/spie_pvq.pdf Paper]&lt;br /&gt;
** [http://people.xiph.org/~tdaede/video/SPIE_Tim.webm Overlapped Block Motion Compensation (OBMC)] - [http://people.xiph.org/~tterribe/daala/spie_obmc_slides.pdf Slides] - [https://people.xiph.org/~tterribe/daala/vbsobmc.pdf Paper]&lt;br /&gt;
* 2015-01-31 - [http://ftp.osuosl.org/pub/fosdem/2015/devroom-open_media/daala.mp4 Daala Project Update at FOSDEM 2015] - [https://fosdem.org/2015/schedule/event/daala/ summary] - [https://fosdem.org/2015/schedule/event/daala/attachments/slides/569/export/events/attachments/daala/slides/569/Daala_FOSDEM_2015.pdf Slides]&lt;br /&gt;
* 2015-01-14 - [https://www.youtube.co.uk/watch?v=Dmho4gcRvQ4 Linux Conf 2015] - [http://lca2015.linux.org.au/schedule/30187/view_talk presentation summary] - [https://people.xiph.org/~tterribe/pubs/lca2015/daala.pdf Slides]&lt;br /&gt;
-------&lt;br /&gt;
* 2014-09-16 - [https://air.mozilla.org/daala-are-we-compressed-yet/ Daala: Are We Compressed Yet?]&lt;br /&gt;
* 2014-06-25 - [https://air.mozilla.org/sparsity-induced-prediction-for-images-and-video/ Sparsity Induced Prediction for Images and Video]&lt;br /&gt;
* 2014-06-06 - VP9 Summit (no video available) - [https://people.xiph.org/~xiphmont/demo/daala/daala-vp9summit-20140606.pdf Slides]&lt;br /&gt;
-------&lt;br /&gt;
* 2013-10-23 - [https://people.xiph.org/~xiphmont/video/Free_Codecs_Update_Opus_and_Daala.ogv Opus and Daala: State of the Art Royalty-free Codecs] - [https://people.xiph.org/~greg/gstreamer-daala-opus.pdf Slides]&lt;br /&gt;
* 2013-09-30 - [https://people.xiph.org/~tterribe/daala/coding_party2/?C=M;O=A Daala Coding Party 2] - [https://people.xiph.org/~unlord/Daala-Intra.pdf Slides]&lt;br /&gt;
* 2013-05-02 - [https://people.xiph.org/~xiphmont/tim-terriberry-presents-daala/ Tim Terriberry Presents Daala]&lt;br /&gt;
-------&lt;br /&gt;
* 2012-01-24 - [https://media.basilgohar.com/derf-talks/?C=M;O=A Introduction to Video Coding] - [https://people.xiph.org/~tterribe/pubs/lca2012/auckland/intro_to_video1.pdf Slides] (no video for slides 1-50)&lt;br /&gt;
&lt;br /&gt;
== Other Websites ==&lt;br /&gt;
* [https://www.youtube.com/playlist?list=PLEeMksZoEQ1xQEuLF50w0RwDwLgDGwSG- Daala Presentations on YouTube]&lt;br /&gt;
* [https://www.youtube.com/playlist?list=PLOU2XLYxmsIJGErt5rrCqaSGTMyyqNt2H Google&#039;s Compressor Head videos] - a beginner&#039;s introduction to the world of data compression&lt;br /&gt;
* [https://www.zazzle.com/daala_tee_shirt-235139149596175944 Daala T-shirts] - if you&#039;d like a free one, help out with the project and ask the Mozilla guys nicely for one :-)&lt;br /&gt;
* [https://www.xiph.org/donate/ Donate to Xiph.Org] &lt;br /&gt;
* [[Daala_on_Wheels|Historical Daala wiki page]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Daala]]&lt;/div&gt;</summary>
		<author><name>Unlord</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=Daala&amp;diff=16314</id>
		<title>Daala</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=Daala&amp;diff=16314"/>
		<updated>2016-04-06T18:00:46Z</updated>

		<summary type="html">&lt;p&gt;Unlord: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Daala is the codename for a new video compression technology.&lt;br /&gt;
&lt;br /&gt;
The effort is a collaboration between the [https://www.mozilla.org/en-US/research/ Mozilla Foundation], the [https://www.xiph.org/ Xiph.Org Foundation] and any other contributors that wish to help.&lt;br /&gt;
&lt;br /&gt;
The goal of the project is to provide a video format that&#039;s free to implement, use and distribute, and a reference implementation with technical performance superior to [https://en.wikipedia.org/wiki/High_Efficiency_Video_Coding H.265]. &lt;br /&gt;
&lt;br /&gt;
Please see the links below or the [https://www.xiph.org/daala/ main page] for more information.&lt;br /&gt;
&lt;br /&gt;
== Wiki Pages ==&lt;br /&gt;
* [[Daala Quickstart|Daala Quickstart (Linux/MacOS)]]&lt;br /&gt;
* [[Daala Quickstart Windows|Daala Quickstart (Windows)]]&lt;br /&gt;
* [[Daala MinGW64 Environment]]&lt;br /&gt;
&lt;br /&gt;
* [[Daala Weekly Meetings|Daala Weekly Meetings]]&lt;br /&gt;
&lt;br /&gt;
* [[AreWeCompressedYet]]&lt;br /&gt;
* [[RD Curve Data Format]]&lt;br /&gt;
&lt;br /&gt;
* [[DaalaTodo|Daala To-do List]]&lt;br /&gt;
* [[DaalaRoadmap|Daala Roadmap]]&lt;br /&gt;
&lt;br /&gt;
* [[Intra|Intra-prediction within Daala]]&lt;br /&gt;
&lt;br /&gt;
* [[Videos|Digital Primers]] - educational videos about audio/video technology&lt;br /&gt;
&lt;br /&gt;
== Communication ==&lt;br /&gt;
You are &#039;&#039;&#039;encouraged&#039;&#039;&#039; to join the&lt;br /&gt;
* [irc://irc.freenode.net/daala &#039;&#039;&#039;#daala&#039;&#039;&#039; IRC channel at freenode.net] - if you don&#039;t have an IRC client, you can use Freenode&#039;s &#039;&#039;&#039;[https://webchat.freenode.net/?channels=%23daala webchat]&#039;&#039;&#039; instead.&lt;br /&gt;
* [http://lists.xiph.org/mailman/listinfo/daala Daala Email List]&lt;br /&gt;
&lt;br /&gt;
=== Weekly Meetings ===&lt;br /&gt;
You are also welcome to attend the public [[Daala Weekly Meetings|weekly progress meetings]] by installing and using [http://wiki.mumble.info Mumble].&amp;lt;br /&amp;gt;&lt;br /&gt;
The address is &#039;&#039;&#039;mf4.xiph.org&#039;&#039;&#039; and the port is &#039;&#039;&#039;64738&#039;&#039;&#039; (you can run &#039;&#039;&#039;mumble://mf4.xiph.org:64738&#039;&#039;&#039; within your browser as a shortcut).&amp;lt;br /&amp;gt;&lt;br /&gt;
The meetings occur on &#039;&#039;&#039;Tuesdays&#039;&#039;&#039; at &#039;&#039;&#039;[http://www.timeanddate.com/worldclock/fixedtime.html?msg=Daala+Weekly+Meeting&amp;amp;iso=20150428T09&amp;amp;p1=1241 9AM Pacific Time]&#039;&#039;&#039; (5PM UTC/GMT).&lt;br /&gt;
The meeting agenda used to be available at &#039;&#039;&#039;[https://daala.etherpad.mozilla.org/weekly-meeting this Etherpad]&#039;&#039;&#039;, the October 13, 2015 meeting is available on [https://docs.google.com/document/d/1JP_Ko3wPuyDWhooZcp_m9kndyfZ75xN5YOi5yIMCW0s/edit?pli=1 Google Docs] and, following the migration to Etherpad Lite, the meeting agenda and minutes are now available at [https://public.etherpad-mozilla.org/p/daala-weekly-meeting this Etherpad].&lt;br /&gt;
&lt;br /&gt;
=== Other ===&lt;br /&gt;
* [http://forum.doom9.org/showthread.php?t=168004 Doom9 Forum discussion] - generic forum thread regarding Daala&lt;br /&gt;
* &amp;lt;del&amp;gt;[https://daala.etherpad.mozilla.org/ep/padlist/all-pads Daala Etherpads] - you can [https://daala.etherpad.mozilla.org/ep/account/request-account request a free account] to view these. You should receive access within a few days.&amp;lt;/del&amp;gt; Mozilla are transitioning to Etherpad Lite.&lt;br /&gt;
* [http://benjamin.smedbergs.us/weekly-updates.fcgi/project/daala Daala Project Status Board] - what Daala bits the Mozilla people are working on&lt;br /&gt;
&lt;br /&gt;
== Coding ==&lt;br /&gt;
You can get a copy of the latest Daala Source Code from [https://git.xiph.org/?p=daala.git;a=summary &#039;&#039;&#039;git.xiph.org&#039;&#039;&#039;] or [https://github.com/xiph/daala &#039;&#039;&#039;GitHub&#039;&#039;&#039;]. Please stick to the &#039;&#039;&#039;[https://git.xiph.org/?p=daala.git;a=blob_plain;f=doc/coding_style.html Coding Style Guide]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
* [https://review.xiph.org/all?limit=100 Xiph Code Reviews] - there is a proposal on the review process &#039;&#039;&#039;[[DaalaReview|here]]&#039;&#039;&#039;&lt;br /&gt;
* [https://github.com/xiph/daala/issues Daala&#039;s issues] - Issue/bug tracker on Github&lt;br /&gt;
* [https://mf4.xiph.org/jenkins/view/daala/ Continuous Integration Tests] - these run every time a new commit is made to the Daala git master, to make sure the new code hasn&#039;t broken existing functionality.&lt;br /&gt;
* [[OggDaala]] - definitions for embedding Daala video within an [[Ogg]] container.&lt;br /&gt;
&lt;br /&gt;
== Demos ==&lt;br /&gt;
* [https://people.xiph.org/~xiphmont/demo/daala/player-demo.shtml Daala Video Player] - an example implementation of a Daala decoder and player, ported to Javascript using [https://github.com/kripken/emscripten Emscripten].&lt;br /&gt;
&lt;br /&gt;
=== Codec Techniques ===&lt;br /&gt;
* [https://people.xiph.org/~xiphmont/demo/ Demo Articles] - explanations on certain techniques used in Daala (and other Xiph.Org projects)&lt;br /&gt;
* [http://exp.martres.me/edi/ Edge-Directed Interpolation] ([https://github.com/smarter/edi source code])&lt;br /&gt;
* [https://people.xiph.org/~ds/edi/info.html More Edge-Directed Interpolation]&lt;br /&gt;
* [https://people.xiph.org/~unlord/demo/intra.html Intra-prediction]&lt;br /&gt;
* [https://people.xiph.org/~unlord/zigzags.html Macroblock Coefficient Zigzag Graph] - HTML page generated using [https://github.com/xiph/daala/blob/master/tools/draw_zigzags.c tools/draw_zigzags.c] from the Daala source code.&lt;br /&gt;
&lt;br /&gt;
== Documents ==&lt;br /&gt;
* [https://people.xiph.org/~unlord/spie_cfl.pdf Chroma from Luma (CfL)]&lt;br /&gt;
* [http://jmvalin.ca/papers/spie_pvq.pdf Perceptual Vector Quantisation (PVQ)]&lt;br /&gt;
* [https://people.xiph.org/~tterribe/daala/vbsobmc.pdf Overlapped Block Motion Compensation (OBMC)]&lt;br /&gt;
* [https://mf4.xiph.org/jenkins/job/daala-autotools/ws/doc/html/index.html C API Documentation]&lt;br /&gt;
* [https://people.xiph.org/~yushin/tmp__/yushin_phd_thesis.pdf Image Coding Thesis] by Yushin Cho&lt;br /&gt;
* [http://arxiv.org/pdf/1411.4290v1.pdf Maximising Coding Efficiency Through Block Rotation] and why it [http://lists.xiph.org/pipermail/daala/2015-January/000054.html won&#039;t work well within Daala]&lt;br /&gt;
* [http://jmvalin.ca/video/theoretical_results.pdf JMSpeex&#039; Journal of Dubious Theoretical Results] - &amp;quot;take with an entire shaker-full of salt&amp;quot;&lt;br /&gt;
* [https://people.xiph.org/~unlord/pcs_daala.pdf Using Daala Intra Frames for Still Picture Coding]&lt;br /&gt;
* [http://arxiv.org/abs/1602.05975 The Daala Directional Deringing Filter]&lt;br /&gt;
&lt;br /&gt;
=== IETF Drafts ===&lt;br /&gt;
* [https://tools.ietf.org/html/draft-egge-videocodec-tdlt Time-Domain Lapped Transforms (TDLT)] - documents the Lapped Transform pre- and post-filters used for block-edge decorrelation&lt;br /&gt;
* [https://tools.ietf.org/html/draft-valin-videocodec-pvq Perceptual Vector Quantisation (PVQ)] - &lt;br /&gt;
* [https://tools.ietf.org/html/draft-terriberry-codingtools Coding Tools] - documents Entropy Coding, Integer Transforms and other techniques&lt;br /&gt;
* [https://tools.ietf.org/html/draft-moffitt-netvc-requirements Internet Video Codec (NetVC) Requirements] - explains what requirements and use cases Daala is trying to cater for&lt;br /&gt;
* [https://tools.ietf.org/html/draft-daede-netvc-testing Internet Video Codec (NetVC) Testing and Quality Measurement]&lt;br /&gt;
* [https://tools.ietf.org/html/draft-terriberry-ipr-license Example IPR Licence Terms]&lt;br /&gt;
&lt;br /&gt;
Additional drafts can be found at the [https://datatracker.ietf.org/wg/netvc/documents/ IETF DataTracker].&lt;br /&gt;
&lt;br /&gt;
== Presentations ==&lt;br /&gt;
* 2016-04-01 DCC 2016 - [https://people.xiph.org/~unlord/Daala-DCC2016.pdf Slides] - [https://people.xiph.org/~unlord/1853a466.pdf Paper]&lt;br /&gt;
* 2016-01-30 FOSDEM 2016 - [https://fosdem.org/2016/schedule/event/daala/ Summary] - [https://video.fosdem.org/2016/h2214/implementing-a-native-daala-decoder-in-ffmpeg.mp4 Video (MP4, 57MB)] - [https://people.xiph.org/~unlord/Xmi.pdf Slides]&lt;br /&gt;
-------&lt;br /&gt;
* 2015-10-24 LinuxDay 24 (Turin) - [https://people.xiph.org/~tterribe/daala/linuxday24.pdf Slides]&lt;br /&gt;
* 2015-10-21 MPEG 113 - Future Video Coding Workshop - [https://people.xiph.org/~tterribe/daala/mpeg113.pdf Slides]&lt;br /&gt;
* 2015-09-19 VideoLAN Dev Days - [https://www.youtube.com/playlist?list=PLQLpBN3oI7E44HIdTOovThc1MNHLchgHE YouTube Playlist] - [https://people.xiph.org/~tterribe/daala/vdd2015.pdf Daala Slides]&lt;br /&gt;
* 2015-07-22 IETF 93 - [http://recordings.conf.meetecho.com/Playout/watch.jsp?recording=IETF93_NETVC_II&amp;amp;chapter=chapter_1 NetVC Session 2/2] - [https://datatracker.ietf.org/meeting/93/agenda/netvc/ Agenda] - [http://www.meetecho.com/ietf93/netvc_II Video and Chat] - [https://www.ietf.org/proceedings/93/slides/slides-93-netvc-4.pdf Slides] - [https://www.ietf.org/jabber/logs/netvc/2015-07-22.html Jabber Log]&lt;br /&gt;
* 2015-07-20 IETF 93 - [http://recordings.conf.meetecho.com/Playout/watch.jsp?recording=IETF93_NETVC&amp;amp;chapter=chapter_1 NetVC Session 1/2] - [https://datatracker.ietf.org/meeting/93/agenda/netvc/ Agenda] - [http://www.meetecho.com/ietf93/netvc Video and Chat] - [https://www.ietf.org/proceedings/93/slides/slides-93-netvc-3.pdf Slides] - [https://www.ietf.org/jabber/logs/netvc/2015-07-20.html Jabber Log]&lt;br /&gt;
* 2015-03-24 IETF 92 - [http://recordings.conf.meetecho.com/Playout/watch.jsp?recording=IETF92_NETVC&amp;amp;chapter=chapter_0 NetVC Session] - Audio as [https://people.xiph.org/~tdaede/audio/ietf92-venetian-20150324-0900-am1.opus Opus] (29MB) or [https://www.ietf.org/audio/ietf92/ietf92-venetian-20150324-0900-am1.mp3 MP3] (119MB, action starts at 14:50) - [https://www.ietf.org/proceedings/92/slides/slides-92-netvc-0.pdf Slides] - [https://www.ietf.org/mail-archive/web/video-codec/current/msg00235.html Notes] - [https://www.ietf.org/jabber/logs/netvc/2015-03-24.html Jabber Log]&lt;br /&gt;
* 2015-02-11 SPIE talks:&lt;br /&gt;
&amp;lt;!-- Originals of these 3 videos can be found at http://people.xiph.org/~unlord/ --&amp;gt;&lt;br /&gt;
&amp;lt;!-- Someday, do a better encode --&amp;gt;&lt;br /&gt;
** [http://people.xiph.org/~tdaede/video/SPIE_Nathan.webm Chroma from Luma (CfL)] - [https://people.xiph.org/~unlord/SPIE-2015-CfL.pdf Slides] - [https://people.xiph.org/~unlord/spie_cfl.pdf Paper]&lt;br /&gt;
** [http://people.xiph.org/~tdaede/video/SPIE_PVQ.webm Perceptual Vector Quantisation (PVQ)] - [http://people.xiph.org/~tterribe/daala/spie_pvq_slides.pdf Slides] - [http://jmvalin.ca/papers/spie_pvq.pdf Paper]&lt;br /&gt;
** [http://people.xiph.org/~tdaede/video/SPIE_Tim.webm Overlapped Block Motion Compensation (OBMC)] - [http://people.xiph.org/~tterribe/daala/spie_obmc_slides.pdf Slides] - [https://people.xiph.org/~tterribe/daala/vbsobmc.pdf Paper]&lt;br /&gt;
* 2015-01-31 [http://ftp.osuosl.org/pub/fosdem/2015/devroom-open_media/daala.mp4 Daala Project Update at FOSDEM 2015] - [https://fosdem.org/2015/schedule/event/daala/ summary] - [https://fosdem.org/2015/schedule/event/daala/attachments/slides/569/export/events/attachments/daala/slides/569/Daala_FOSDEM_2015.pdf Slides]&lt;br /&gt;
* 2015-01-14 [https://www.youtube.co.uk/watch?v=Dmho4gcRvQ4 Linux Conf 2015] - [http://lca2015.linux.org.au/schedule/30187/view_talk presentation summary] - [https://people.xiph.org/~tterribe/pubs/lca2015/daala.pdf Slides]&lt;br /&gt;
-------&lt;br /&gt;
* 2014-09-16 [https://air.mozilla.org/daala-are-we-compressed-yet/ Daala: Are We Compressed Yet?]&lt;br /&gt;
* 2014-06-25 [https://air.mozilla.org/sparsity-induced-prediction-for-images-and-video/ Sparsity Induced Prediction for Images and Video]&lt;br /&gt;
* 2014-06-06 VP9 Summit (no video available) - [https://people.xiph.org/~xiphmont/demo/daala/daala-vp9summit-20140606.pdf Slides]&lt;br /&gt;
-------&lt;br /&gt;
* 2013-10-23 [https://people.xiph.org/~xiphmont/video/Free_Codecs_Update_Opus_and_Daala.ogv Opus and Daala: State of the Art Royalty-free Codecs] - [https://people.xiph.org/~greg/gstreamer-daala-opus.pdf Slides]&lt;br /&gt;
* 2013-09-30 [https://people.xiph.org/~tterribe/daala/coding_party2/?C=M;O=A Daala Coding Party 2] - [https://people.xiph.org/~unlord/Daala-Intra.pdf Slides]&lt;br /&gt;
* 2013-05-02 [https://people.xiph.org/~xiphmont/tim-terriberry-presents-daala/ Tim Terriberry Presents Daala]&lt;br /&gt;
-------&lt;br /&gt;
* 2012-01-24 [https://media.basilgohar.com/derf-talks/?C=M;O=A Introduction to Video Coding] - [https://people.xiph.org/~tterribe/pubs/lca2012/auckland/intro_to_video1.pdf Slides] (no video for slides 1-50)&lt;br /&gt;
&lt;br /&gt;
== Other Websites ==&lt;br /&gt;
* [https://www.youtube.com/playlist?list=PLEeMksZoEQ1xQEuLF50w0RwDwLgDGwSG- Daala Presentations on YouTube]&lt;br /&gt;
* [https://www.youtube.com/playlist?list=PLOU2XLYxmsIJGErt5rrCqaSGTMyyqNt2H Google&#039;s Compressor Head videos] - a beginner&#039;s introduction to the world of data compression&lt;br /&gt;
* [https://www.zazzle.com/daala_tee_shirt-235139149596175944 Daala T-shirts] - if you&#039;d like a free one, help out with the project and ask the Mozilla guys nicely for one :-)&lt;br /&gt;
* [https://www.xiph.org/donate/ Donate to Xiph.Org] &lt;br /&gt;
* [[Daala_on_Wheels|Historical Daala wiki page]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Daala]]&lt;/div&gt;</summary>
		<author><name>Unlord</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=Daala&amp;diff=16309</id>
		<title>Daala</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=Daala&amp;diff=16309"/>
		<updated>2016-03-30T17:55:04Z</updated>

		<summary type="html">&lt;p&gt;Unlord: /* Presentations */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Daala is the codename for a new video compression technology.&lt;br /&gt;
&lt;br /&gt;
The effort is a collaboration between the [https://www.mozilla.org/en-US/research/ Mozilla Foundation], the [https://www.xiph.org/ Xiph.Org Foundation] and any other contributors that wish to help.&lt;br /&gt;
&lt;br /&gt;
The goal of the project is to provide a video format that&#039;s free to implement, use and distribute, and a reference implementation with technical performance superior to [https://en.wikipedia.org/wiki/High_Efficiency_Video_Coding H.265]. &lt;br /&gt;
&lt;br /&gt;
Please see the links below or the [https://www.xiph.org/daala/ main page] for more information.&lt;br /&gt;
&lt;br /&gt;
== Wiki Pages ==&lt;br /&gt;
* [[Daala Quickstart|Daala Quickstart (Linux/MacOS)]]&lt;br /&gt;
* [[Daala Quickstart Windows|Daala Quickstart (Windows)]]&lt;br /&gt;
* [[Daala MinGW64 Environment]]&lt;br /&gt;
&lt;br /&gt;
* [[Daala Weekly Meetings|Daala Weekly Meetings]]&lt;br /&gt;
&lt;br /&gt;
* [[AreWeCompressedYet]]&lt;br /&gt;
* [[RD Curve Data Format]]&lt;br /&gt;
&lt;br /&gt;
* [[DaalaTodo|Daala To-do List]]&lt;br /&gt;
* [[DaalaRoadmap|Daala Roadmap]]&lt;br /&gt;
&lt;br /&gt;
* [[Intra|Intra-prediction within Daala]]&lt;br /&gt;
&lt;br /&gt;
* [[Videos|Digital Primers]] - educational videos about audio/video technology&lt;br /&gt;
&lt;br /&gt;
== Communication ==&lt;br /&gt;
You are &#039;&#039;&#039;encouraged&#039;&#039;&#039; to join the&lt;br /&gt;
* [irc://irc.freenode.net/daala &#039;&#039;&#039;#daala&#039;&#039;&#039; IRC channel at freenode.net] - if you don&#039;t have an IRC client, you can use Freenode&#039;s &#039;&#039;&#039;[https://webchat.freenode.net/?channels=%23daala webchat]&#039;&#039;&#039; instead.&lt;br /&gt;
* [http://lists.xiph.org/mailman/listinfo/daala Daala Email List]&lt;br /&gt;
&lt;br /&gt;
=== Weekly Meetings ===&lt;br /&gt;
You are also welcome to attend the public [[Daala Weekly Meetings|weekly progress meetings]] by installing and using [http://wiki.mumble.info Mumble].&amp;lt;br /&amp;gt;&lt;br /&gt;
The address is &#039;&#039;&#039;mf4.xiph.org&#039;&#039;&#039; and the port is &#039;&#039;&#039;64738&#039;&#039;&#039; (you can run &#039;&#039;&#039;mumble://mf4.xiph.org:64738&#039;&#039;&#039; within your browser as a shortcut).&amp;lt;br /&amp;gt;&lt;br /&gt;
The meetings occur on &#039;&#039;&#039;Tuesdays&#039;&#039;&#039; at &#039;&#039;&#039;[http://www.timeanddate.com/worldclock/fixedtime.html?msg=Daala+Weekly+Meeting&amp;amp;iso=20150428T09&amp;amp;p1=1241 9AM Pacific Time]&#039;&#039;&#039; (5PM UTC/GMT).&lt;br /&gt;
The meeting agenda used to be available at &#039;&#039;&#039;[https://daala.etherpad.mozilla.org/weekly-meeting this Etherpad]&#039;&#039;&#039;, the October 13, 2015 meeting is available on [https://docs.google.com/document/d/1JP_Ko3wPuyDWhooZcp_m9kndyfZ75xN5YOi5yIMCW0s/edit?pli=1 Google Docs] and, following the migration to Etherpad Lite, the meeting agenda and minutes are now available at [https://public.etherpad-mozilla.org/p/daala-weekly-meeting this Etherpad].&lt;br /&gt;
&lt;br /&gt;
=== Other ===&lt;br /&gt;
* [http://forum.doom9.org/showthread.php?t=168004 Doom9 Forum discussion] - generic forum thread regarding Daala&lt;br /&gt;
* &amp;lt;del&amp;gt;[https://daala.etherpad.mozilla.org/ep/padlist/all-pads Daala Etherpads] - you can [https://daala.etherpad.mozilla.org/ep/account/request-account request a free account] to view these. You should receive access within a few days.&amp;lt;/del&amp;gt; Mozilla are transitioning to Etherpad Lite.&lt;br /&gt;
* [http://benjamin.smedbergs.us/weekly-updates.fcgi/project/daala Daala Project Status Board] - what Daala bits the Mozilla people are working on&lt;br /&gt;
&lt;br /&gt;
== Coding ==&lt;br /&gt;
You can get a copy of the latest Daala Source Code from [https://git.xiph.org/?p=daala.git;a=summary &#039;&#039;&#039;git.xiph.org&#039;&#039;&#039;] or [https://github.com/xiph/daala &#039;&#039;&#039;GitHub&#039;&#039;&#039;]. Please stick to the &#039;&#039;&#039;[https://git.xiph.org/?p=daala.git;a=blob_plain;f=doc/coding_style.html Coding Style Guide]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
* [https://review.xiph.org/all?limit=100 Xiph Code Reviews] - there is a proposal on the review process &#039;&#039;&#039;[[DaalaReview|here]]&#039;&#039;&#039;&lt;br /&gt;
* [https://github.com/xiph/daala/issues Daala&#039;s issues] - Issue/bug tracker on Github&lt;br /&gt;
* [https://mf4.xiph.org/jenkins/view/daala/ Continuous Integration Tests] - these run every time a new commit is made to the Daala git master, to make sure the new code hasn&#039;t broken existing functionality.&lt;br /&gt;
* [[OggDaala]] - definitions for embedding Daala video within an [[Ogg]] container.&lt;br /&gt;
&lt;br /&gt;
== Demos ==&lt;br /&gt;
* [https://people.xiph.org/~xiphmont/demo/daala/player-demo.shtml Daala Video Player] - an example implementation of a Daala decoder and player, ported to Javascript using [https://github.com/kripken/emscripten Emscripten].&lt;br /&gt;
&lt;br /&gt;
=== Codec Techniques ===&lt;br /&gt;
* [https://people.xiph.org/~xiphmont/demo/ Demo Articles] - explanations on certain techniques used in Daala (and other Xiph.Org projects)&lt;br /&gt;
* [http://exp.martres.me/edi/ Edge-Directed Interpolation] ([https://github.com/smarter/edi source code])&lt;br /&gt;
* [https://people.xiph.org/~ds/edi/info.html More Edge-Directed Interpolation]&lt;br /&gt;
* [https://people.xiph.org/~unlord/demo/intra.html Intra-prediction]&lt;br /&gt;
* [https://people.xiph.org/~unlord/zigzags.html Macroblock Coefficient Zigzag Graph] - HTML page generated using [https://github.com/xiph/daala/blob/master/tools/draw_zigzags.c tools/draw_zigzags.c] from the Daala source code.&lt;br /&gt;
&lt;br /&gt;
== Documents ==&lt;br /&gt;
* [https://people.xiph.org/~unlord/spie_cfl.pdf Chroma from Luma (CfL)]&lt;br /&gt;
* [http://jmvalin.ca/papers/spie_pvq.pdf Perceptual Vector Quantisation (PVQ)]&lt;br /&gt;
* [https://people.xiph.org/~tterribe/daala/vbsobmc.pdf Overlapped Block Motion Compensation (OBMC)]&lt;br /&gt;
* [https://mf4.xiph.org/jenkins/job/daala-autotools/ws/doc/html/index.html C API Documentation]&lt;br /&gt;
* [https://people.xiph.org/~yushin/tmp__/yushin_phd_thesis.pdf Image Coding Thesis] by Yushin Cho&lt;br /&gt;
* [http://arxiv.org/pdf/1411.4290v1.pdf Maximising Coding Efficiency Through Block Rotation] and why it [http://lists.xiph.org/pipermail/daala/2015-January/000054.html won&#039;t work well within Daala]&lt;br /&gt;
* [http://jmvalin.ca/video/theoretical_results.pdf JMSpeex&#039; Journal of Dubious Theoretical Results] - &amp;quot;take with an entire shaker-full of salt&amp;quot;&lt;br /&gt;
* [https://people.xiph.org/~unlord/pcs_daala.pdf Using Daala Intra Frames for Still Picture Coding]&lt;br /&gt;
* [http://arxiv.org/abs/1602.05975 The Daala Directional Deringing Filter]&lt;br /&gt;
&lt;br /&gt;
=== IETF Drafts ===&lt;br /&gt;
* [https://tools.ietf.org/html/draft-egge-videocodec-tdlt Time-Domain Lapped Transforms (TDLT)] - documents the Lapped Transform pre- and post-filters used for block-edge decorrelation&lt;br /&gt;
* [https://tools.ietf.org/html/draft-valin-videocodec-pvq Perceptual Vector Quantisation (PVQ)] - &lt;br /&gt;
* [https://tools.ietf.org/html/draft-terriberry-codingtools Coding Tools] - documents Entropy Coding, Integer Transforms and other techniques&lt;br /&gt;
* [https://tools.ietf.org/html/draft-moffitt-netvc-requirements Internet Video Codec (NetVC) Requirements] - explains what requirements and use cases Daala is trying to cater for&lt;br /&gt;
* [https://tools.ietf.org/html/draft-daede-netvc-testing Internet Video Codec (NetVC) Testing and Quality Measurement]&lt;br /&gt;
* [https://tools.ietf.org/html/draft-terriberry-ipr-license Example IPR Licence Terms]&lt;br /&gt;
&lt;br /&gt;
Additional drafts can be found at the [https://datatracker.ietf.org/wg/netvc/documents/ IETF DataTracker].&lt;br /&gt;
&lt;br /&gt;
== Presentations ==&lt;br /&gt;
* 2016-01-30 FOSDEM 2016 - [https://fosdem.org/2016/schedule/event/daala/ Summary] - [https://video.fosdem.org/2016/h2214/implementing-a-native-daala-decoder-in-ffmpeg.mp4 Video (MP4, 57MB)] - [https://people.xiph.org/~unlord/Xmi.pdf Slides]&lt;br /&gt;
-------&lt;br /&gt;
* 2015-10-24 LinuxDay 24 (Turin) - [https://people.xiph.org/~tterribe/daala/linuxday24.pdf Slides]&lt;br /&gt;
* 2015-10-21 MPEG 113 - Future Video Coding Workshop - [https://people.xiph.org/~tterribe/daala/mpeg113.pdf Slides]&lt;br /&gt;
* 2015-09-19 VideoLAN Dev Days - [https://www.youtube.com/playlist?list=PLQLpBN3oI7E44HIdTOovThc1MNHLchgHE YouTube Playlist] - [https://people.xiph.org/~tterribe/daala/vdd2015.pdf Daala Slides]&lt;br /&gt;
* 2015-07-22 IETF 93 - [http://recordings.conf.meetecho.com/Playout/watch.jsp?recording=IETF93_NETVC_II&amp;amp;chapter=chapter_1 NetVC Session 2/2] - [https://datatracker.ietf.org/meeting/93/agenda/netvc/ Agenda] - [http://www.meetecho.com/ietf93/netvc_II Video and Chat] - [https://www.ietf.org/proceedings/93/slides/slides-93-netvc-4.pdf Slides] - [https://www.ietf.org/jabber/logs/netvc/2015-07-22.html Jabber Log]&lt;br /&gt;
* 2015-07-20 IETF 93 - [http://recordings.conf.meetecho.com/Playout/watch.jsp?recording=IETF93_NETVC&amp;amp;chapter=chapter_1 NetVC Session 1/2] - [https://datatracker.ietf.org/meeting/93/agenda/netvc/ Agenda] - [http://www.meetecho.com/ietf93/netvc Video and Chat] - [https://www.ietf.org/proceedings/93/slides/slides-93-netvc-3.pdf Slides] - [https://www.ietf.org/jabber/logs/netvc/2015-07-20.html Jabber Log]&lt;br /&gt;
* 2015-03-24 IETF 92 - [http://recordings.conf.meetecho.com/Playout/watch.jsp?recording=IETF92_NETVC&amp;amp;chapter=chapter_0 NetVC Session] - Audio as [https://people.xiph.org/~tdaede/audio/ietf92-venetian-20150324-0900-am1.opus Opus] (29MB) or [https://www.ietf.org/audio/ietf92/ietf92-venetian-20150324-0900-am1.mp3 MP3] (119MB, action starts at 14:50) - [https://www.ietf.org/proceedings/92/slides/slides-92-netvc-0.pdf Slides] - [https://www.ietf.org/mail-archive/web/video-codec/current/msg00235.html Notes] - [https://www.ietf.org/jabber/logs/netvc/2015-03-24.html Jabber Log]&lt;br /&gt;
* 2015-02-11 SPIE talks:&lt;br /&gt;
&amp;lt;!-- Originals of these 3 videos can be found at http://people.xiph.org/~unlord/ --&amp;gt;&lt;br /&gt;
&amp;lt;!-- Someday, do a better encode --&amp;gt;&lt;br /&gt;
** [http://people.xiph.org/~tdaede/video/SPIE_Nathan.webm Chroma from Luma (CfL)] - [https://people.xiph.org/~unlord/SPIE-2015-CfL.pdf Slides] - [https://people.xiph.org/~unlord/spie_cfl.pdf Paper]&lt;br /&gt;
** [http://people.xiph.org/~tdaede/video/SPIE_PVQ.webm Perceptual Vector Quantisation (PVQ)] - [http://people.xiph.org/~tterribe/daala/spie_pvq_slides.pdf Slides] - [http://jmvalin.ca/papers/spie_pvq.pdf Paper]&lt;br /&gt;
** [http://people.xiph.org/~tdaede/video/SPIE_Tim.webm Overlapped Block Motion Compensation (OBMC)] - [http://people.xiph.org/~tterribe/daala/spie_obmc_slides.pdf Slides] - [https://people.xiph.org/~tterribe/daala/vbsobmc.pdf Paper]&lt;br /&gt;
* 2015-01-31 [http://ftp.osuosl.org/pub/fosdem/2015/devroom-open_media/daala.mp4 Daala Project Update at FOSDEM 2015] - [https://fosdem.org/2015/schedule/event/daala/ summary] - [https://fosdem.org/2015/schedule/event/daala/attachments/slides/569/export/events/attachments/daala/slides/569/Daala_FOSDEM_2015.pdf Slides]&lt;br /&gt;
* 2015-01-14 [https://www.youtube.co.uk/watch?v=Dmho4gcRvQ4 Linux Conf 2015] - [http://lca2015.linux.org.au/schedule/30187/view_talk presentation summary] - [https://people.xiph.org/~tterribe/pubs/lca2015/daala.pdf Slides]&lt;br /&gt;
-------&lt;br /&gt;
* 2014-09-16 [https://air.mozilla.org/daala-are-we-compressed-yet/ Daala: Are We Compressed Yet?]&lt;br /&gt;
* 2014-06-25 [https://air.mozilla.org/sparsity-induced-prediction-for-images-and-video/ Sparsity Induced Prediction for Images and Video]&lt;br /&gt;
* 2014-06-06 VP9 Summit (no video available) - [https://people.xiph.org/~xiphmont/demo/daala/daala-vp9summit-20140606.pdf Slides]&lt;br /&gt;
-------&lt;br /&gt;
* 2013-10-23 [https://people.xiph.org/~xiphmont/video/Free_Codecs_Update_Opus_and_Daala.ogv Opus and Daala: State of the Art Royalty-free Codecs] - [https://people.xiph.org/~greg/gstreamer-daala-opus.pdf Slides]&lt;br /&gt;
* 2013-09-30 [https://people.xiph.org/~tterribe/daala/coding_party2/?C=M;O=A Daala Coding Party 2] - [https://people.xiph.org/~unlord/Daala-Intra.pdf Slides]&lt;br /&gt;
* 2013-05-02 [https://people.xiph.org/~xiphmont/tim-terriberry-presents-daala/ Tim Terriberry Presents Daala]&lt;br /&gt;
-------&lt;br /&gt;
* 2012-01-24 [https://media.basilgohar.com/derf-talks/?C=M;O=A Introduction to Video Coding] - [https://people.xiph.org/~tterribe/pubs/lca2012/auckland/intro_to_video1.pdf Slides] (no video for slides 1-50)&lt;br /&gt;
&lt;br /&gt;
== Other Websites ==&lt;br /&gt;
* [https://www.zazzle.com/daala_tee_shirt-235139149596175944 Daala T-shirts] - if you&#039;d like a free one, help out with the project and ask the Mozilla guys nicely for one :-)&lt;br /&gt;
* [https://www.xiph.org/donate/ Donate to Xiph.Org] &lt;br /&gt;
* [[Daala_on_Wheels|Historical Daala wiki page]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Daala]]&lt;/div&gt;</summary>
		<author><name>Unlord</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=RD_Curve_Data_Format&amp;diff=15813</id>
		<title>RD Curve Data Format</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=RD_Curve_Data_Format&amp;diff=15813"/>
		<updated>2015-05-08T14:44:17Z</updated>

		<summary type="html">&lt;p&gt;Unlord: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;RD curves produced by rd_collect.sh and [[AreWeCompressedYet]] are text files with one data point per line, separated by spaces.&lt;br /&gt;
&lt;br /&gt;
The file headers are:&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;-v quantizer value&amp;gt; &amp;lt;number of pixels per clip&amp;gt; &amp;lt;file size in bytes&amp;gt; &amp;lt;PSNR&amp;gt; &amp;lt;PSNR-HVS&amp;gt; &amp;lt;SSim&amp;gt; &amp;lt;FastSSim&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The units for all the metric results are in &#039;&#039;&#039;dB&#039;&#039;&#039;.&amp;lt;br /&amp;gt;&lt;br /&gt;
See the tools directory in the Daala source code for how they are calculated.&lt;br /&gt;
&lt;br /&gt;
[[Category: Daala]]&lt;/div&gt;</summary>
		<author><name>Unlord</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=DaalaTodo&amp;diff=15039</id>
		<title>DaalaTodo</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=DaalaTodo&amp;diff=15039"/>
		<updated>2014-10-20T17:42:32Z</updated>

		<summary type="html">&lt;p&gt;Unlord: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Simple Things =&lt;br /&gt;
* Overflow checking for allocations in od_state_ref_imgs_init().&lt;br /&gt;
&lt;br /&gt;
= Tuning =&lt;br /&gt;
* Quantization matrix&lt;br /&gt;
* Beta (activity masking)&lt;br /&gt;
* Inter band masking&lt;br /&gt;
* PVQ RDO&lt;br /&gt;
* Better MV cost estimates&lt;br /&gt;
* Better MC distortion metrics (SATD, some MSE/SATD hybrid, no-ref-aware, maybe table driven Theora-style, etc.)&lt;br /&gt;
* Better MV split flag rate estimates&lt;br /&gt;
&lt;br /&gt;
= Known broken/suboptimal =&lt;br /&gt;
* Block size decision&lt;br /&gt;
** Never tuned on inter&lt;br /&gt;
** Not considering chroma&lt;br /&gt;
* Code quantizers on a log scale&lt;br /&gt;
* Re-order bitstream (e.g., don&#039;t code all MVs at the front, etc.)&lt;br /&gt;
* Investigate bias introduced by coefficient scaling&lt;br /&gt;
&lt;br /&gt;
= New work =&lt;br /&gt;
&lt;br /&gt;
* VQ for inter frames, with codebook selected based on dim m&lt;br /&gt;
* Motion vector &amp;quot;mask&amp;quot; based on previous frame&lt;br /&gt;
* Use coeff magnitude correlation for modelling&lt;br /&gt;
* Per SB/MB/block/something quantizer changes&lt;br /&gt;
* Variable Framerate support&lt;br /&gt;
* Dynamic frame size changes (without keyframes)&lt;br /&gt;
* SPIHT as k-tokenizer&lt;br /&gt;
&lt;br /&gt;
= Entropy coding =&lt;br /&gt;
&lt;br /&gt;
* Make the Laplace vector encoder (aka k-tokenizer) faster&lt;br /&gt;
* Add &amp;quot;skip-all remaining bands&amp;quot; flag&lt;br /&gt;
* Better encoding of the CfL sign&lt;br /&gt;
* Add SIMD to the decoder search&lt;br /&gt;
&lt;br /&gt;
= Visualization =&lt;br /&gt;
&lt;br /&gt;
* Add ability to display decoder side information to player_example&lt;br /&gt;
** Block size split decision&lt;br /&gt;
** Cost in bits per block (use log scale)&lt;br /&gt;
** No-ref and skip flags&lt;br /&gt;
** Mode information (if we signal intra)&lt;br /&gt;
** Motion vectors&lt;br /&gt;
** Display prediction residual&lt;br /&gt;
** Show only one plane (Y, Cb, Cr)&lt;br /&gt;
&lt;br /&gt;
= Infrastructure =&lt;br /&gt;
&lt;br /&gt;
* Need a bugzilla instance for issue tracking&lt;/div&gt;</summary>
		<author><name>Unlord</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=DaalaTodo&amp;diff=15028</id>
		<title>DaalaTodo</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=DaalaTodo&amp;diff=15028"/>
		<updated>2014-10-14T10:46:47Z</updated>

		<summary type="html">&lt;p&gt;Unlord: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Simple Things =&lt;br /&gt;
* Overflow checking for allocations in od_state_ref_imgs_init().&lt;br /&gt;
&lt;br /&gt;
= Tuning =&lt;br /&gt;
* Quantization matrix&lt;br /&gt;
* Beta&lt;br /&gt;
* Inter band masking&lt;br /&gt;
* PVQ RDO&lt;br /&gt;
* Better MV cost estimates&lt;br /&gt;
* Better MC distortion metrics (SATD, some MSE/SATD hybrid, no-ref-aware, maybe table driven Theora-style, etc.)&lt;br /&gt;
* Better MV split flag rate estimates&lt;br /&gt;
&lt;br /&gt;
= Known broken/suboptimal =&lt;br /&gt;
* Block size decision&lt;br /&gt;
** Never tuned on inter&lt;br /&gt;
** Not considering chroma&lt;br /&gt;
* Code quantizers on a log scale&lt;br /&gt;
* Re-order bitstream (e.g., don&#039;t code all MVs at the front, etc.)&lt;br /&gt;
* Investigate bias introduced by coefficient scaling&lt;br /&gt;
&lt;br /&gt;
= New work =&lt;br /&gt;
&lt;br /&gt;
* VQ for inter frames, with codebook selected based on dim m&lt;br /&gt;
* Motion vector &amp;quot;mask&amp;quot; based on previous frame&lt;br /&gt;
* Use coeff magnitude correlation for modelling&lt;br /&gt;
* Per SB/MB/block/something quantizer changes&lt;br /&gt;
* Variable Framerate support&lt;br /&gt;
* Dynamic frame size changes (without keyframes)&lt;br /&gt;
* SPIHT as k-tokenizer&lt;br /&gt;
&lt;br /&gt;
= Entropy coding =&lt;br /&gt;
&lt;br /&gt;
* Make the Laplace vector encoder (aka k-tokenizer) faster&lt;br /&gt;
* Add &amp;quot;skip-all remaining bands&amp;quot; flag&lt;br /&gt;
* Better encoding of the CfL sign&lt;br /&gt;
* Add SIMD to the decoder search&lt;br /&gt;
&lt;br /&gt;
= Visualization =&lt;br /&gt;
&lt;br /&gt;
* Add ability to display decoder side information to player_example&lt;br /&gt;
** Block size split decision&lt;br /&gt;
** Cost in bits per block (use log scale)&lt;br /&gt;
** No-ref and skip flags&lt;br /&gt;
** Mode information (if we signal intra)&lt;br /&gt;
** Motion vectors&lt;br /&gt;
** Display prediction residual&lt;br /&gt;
** Show only one plane (Y, Cb, Cr)&lt;/div&gt;</summary>
		<author><name>Unlord</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=Intra&amp;diff=13861</id>
		<title>Intra</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=Intra&amp;diff=13861"/>
		<updated>2013-02-08T17:14:31Z</updated>

		<summary type="html">&lt;p&gt;Unlord: Adding results from 4x4 and 8x8 intra predictor training&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;In Daala, intra-frame predictors are coefficients that are used to predict the contents of a block based on its three neighboring blocks.  Consider a 4x4 block structure:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
\left(&lt;br /&gt;
\begin{array}{cccc|cccc}&lt;br /&gt;
x_{1}&amp;amp;x_{2}&amp;amp;x_{3}&amp;amp;x_{4}&amp;amp;x_{5}&amp;amp;x_{6}&amp;amp;x_{7}&amp;amp;x_{8}\\&lt;br /&gt;
x_{9}&amp;amp;x_{10}&amp;amp;x_{11}&amp;amp;x_{12}&amp;amp;x_{13}&amp;amp;x_{14}&amp;amp;x_{15}&amp;amp;x_{16}\\&lt;br /&gt;
x_{17}&amp;amp;x_{18}&amp;amp;x_{19}&amp;amp;x_{20}&amp;amp;x_{21}&amp;amp;x_{22}&amp;amp;x_{23}&amp;amp;x_{24}\\&lt;br /&gt;
x_{25}&amp;amp;x_{26}&amp;amp;x_{27}&amp;amp;x_{28}&amp;amp;x_{29}&amp;amp;x_{30}&amp;amp;x_{31}&amp;amp;x_{32}\\ \hline&lt;br /&gt;
x_{33}&amp;amp;x_{34}&amp;amp;x_{35}&amp;amp;x_{36}&amp;amp;y_{1}&amp;amp;y_{2}&amp;amp;y_{3}&amp;amp;y_{4}\\&lt;br /&gt;
x_{37}&amp;amp;x_{38}&amp;amp;x_{39}&amp;amp;x_{40}&amp;amp;y_{5}&amp;amp;y_{6}&amp;amp;y_{7}&amp;amp;y_{8}\\&lt;br /&gt;
x_{41}&amp;amp;x_{42}&amp;amp;x_{43}&amp;amp;x_{44}&amp;amp;y_{9}&amp;amp;y_{10}&amp;amp;y_{11}&amp;amp;y_{12}\\&lt;br /&gt;
x_{45}&amp;amp;x_{46}&amp;amp;x_{47}&amp;amp;x_{48}&amp;amp;y_{13}&amp;amp;y_{14}&amp;amp;y_{15}&amp;amp;y_{16}\\&lt;br /&gt;
\end{array}&lt;br /&gt;
\right)&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Assuming a linear predictor, we would like to find the 768 coefficients that best predict &amp;lt;math&amp;gt;y_i&amp;lt;/math&amp;gt; from the neighboring &amp;lt;math&amp;gt;x_i&amp;lt;/math&amp;gt;.  That is, for a given block with coefficients &amp;lt;math&amp;gt;\hat x&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;\hat y&amp;lt;/math&amp;gt;, we would like a 48x16 matrix &amp;lt;math&amp;gt;\beta&amp;lt;/math&amp;gt; such that the residual &amp;lt;math&amp;gt;\hat e=\hat y-\hat x \beta&amp;lt;/math&amp;gt; is minimized (for some &amp;lt;math&amp;gt;p&amp;lt;/math&amp;gt;-norm).  Because it is this residual &amp;lt;math&amp;gt;\hat e&amp;lt;/math&amp;gt; that is quantized and coded in the bitstream, we would prefer that most of its coefficients are zero.  This will be discussed further when comparing the different &amp;lt;math&amp;gt;p&amp;lt;/math&amp;gt;-norms.&lt;br /&gt;
&lt;br /&gt;
== Block Modes ==&lt;br /&gt;
&lt;br /&gt;
These predictors often follow certain geometry in the time-domain image space.  Imagine a vertical edge that runs through &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.  A natural predictor might be to simply copy the values &amp;lt;math&amp;gt;\begin{array}{cccc}x_{29}&amp;amp;x_{30}&amp;amp;x_{31}&amp;amp;x_{32}\end{array}&amp;lt;/math&amp;gt; down into each row of the 4x4 block &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.  In order to account for the different possible geometries, each block is assigned a &amp;lt;i&amp;gt;mode&amp;lt;/i&amp;gt; which indicates what set of prediction coefficients to use (the &amp;lt;math&amp;gt;\beta&amp;lt;/math&amp;gt;).  When encoding a block &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;, the encoder chooses a mode, computes &amp;lt;math&amp;gt;\hat e&amp;lt;/math&amp;gt; and writes both the block mode and the residual &amp;lt;math&amp;gt;\hat e&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Because the decoder must know the coefficients for each of the block modes, there is a tradeoff between how well we can predict the values in &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; (number of block modes) with decoder complexity.  Our hypothesis is that the optimal number of block modes will correspond to how closely we can fit different geometries inside the block.  For 4x4 blocks, this might correspond to a mode for each of the 8 cardinal directions (ask Jason to clarify) with larger blocks potentially supporting a larger number of directions.  In addition, we would like to support the DC and True Motion modes from WebM/VP8 as they are often the best fit.  For common video sequences, anywhere from 20% to 45% of the intra frames use the True Motion mode [1].&lt;br /&gt;
&lt;br /&gt;
This is slightly complicated by the fact that our coefficients are not in the time-domain, but are the result of a lapped transform, see [[TDLT]].  In practice all of these modes have an equivalent in the frequency domain.  As a starting point, we are using the 10 modes from Theora to classify the blocks from a set of sample images.  Each category of blocks will be used to construct a set of predictors &amp;lt;math&amp;gt;\beta&amp;lt;/math&amp;gt; which is then used to reclassify the blocks based on Sum of Absolute Transform Differences (SATD).  &amp;lt;i&amp;gt;Tim suggested weighting each blocks contribution based on SATD_bestfit-SATD_nearest&amp;lt;/i&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;math&amp;gt;L^2&amp;lt;/math&amp;gt;-norm ==&lt;br /&gt;
&lt;br /&gt;
Suppose for some mode we have &amp;lt;math&amp;gt;n&amp;lt;/math&amp;gt; blocks.  We can then construct the matrices &amp;lt;math&amp;gt;X&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;Y&amp;lt;/math&amp;gt; where the ith row of each contains the zero-mean values from the ith block.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
X=\begin{pmatrix}&lt;br /&gt;
 x_{1,1}-\bar{x_1} &amp;amp; x_{1,2}-\bar{x_2} &amp;amp; \cdots &amp;amp; x_{1,m}-\bar{x_m}\\&lt;br /&gt;
 x_{2,1}-\bar{x_1} &amp;amp; x_{2,2}-\bar{x_2} &amp;amp; \cdots &amp;amp; x_{2,m}-\bar{x_m}\\&lt;br /&gt;
 \vdots  &amp;amp; \vdots  &amp;amp; \ddots &amp;amp; \vdots \\&lt;br /&gt;
 x_{n,1}-\bar{x_1} &amp;amp; x_{n,2}-\bar{x_2} &amp;amp; \cdots &amp;amp; x_{n,m}-\bar{x_m}&lt;br /&gt;
\end{pmatrix}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
Y=\begin{pmatrix}&lt;br /&gt;
 y_{1,1}-\bar{y_1} &amp;amp; y_{1,2}-\bar{y_2} &amp;amp; \cdots &amp;amp; y_{1,l}-\bar{y_l}\\&lt;br /&gt;
 y_{2,1}-\bar{y_1} &amp;amp; y_{2,2}-\bar{y_2} &amp;amp; \cdots &amp;amp; y_{2,l}-\bar{y_l}\\&lt;br /&gt;
 \vdots  &amp;amp; \vdots  &amp;amp; \ddots &amp;amp; \vdots \\&lt;br /&gt;
 y_{n,1}-\bar{y_1} &amp;amp; y_{n,2}-\bar{y_2}  &amp;amp; \cdots &amp;amp; y_{n,l}-\bar{y_l}&lt;br /&gt;
\end{pmatrix}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In the case of 4x4 blocks, &amp;lt;math&amp;gt;m=48&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;l=16&amp;lt;/math&amp;gt;.   Let &amp;lt;math&amp;gt;C=X^T X&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;D=X^T Y&amp;lt;/math&amp;gt;.  Then &amp;lt;math&amp;gt;\beta=C^{-1} D&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== 4x4 Intra Predictors ==&lt;br /&gt;
&lt;br /&gt;
Using the set of 50 images in subset1-y4m to train sparse (4*4*4 = 64 multiplies per block) intra predictors:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
VP8 Intra Predictors&lt;br /&gt;
Mode 0 Blocks  379965 SATD 1030.8  Bits 136.827 Mean 1725.16 Var 591085 CgRef 12.9338 CgPred 14.4075 Pg 1.47375&lt;br /&gt;
Mode 1 Blocks  328826 SATD 1410.93 Bits 140.398 Mean 1755.67 Var 615743 CgRef 10.7723 CgPred 14.4396 Pg 3.66727&lt;br /&gt;
Mode 2 Blocks  364320 SATD 1318.99 Bits 140.038 Mean 1771.33 Var 613037 CgRef 12.2597 CgPred 14.321  Pg 2.0613&lt;br /&gt;
Mode 3 Blocks  461738 SATD 1266.24 Bits 138.956 Mean 1799.99 Var 581067 CgRef 12.4228 CgPred 14.4985 Pg 2.07569&lt;br /&gt;
Mode 4 Blocks  317707 SATD 1320.78 Bits 140.709 Mean 1738.33 Var 615735 CgRef 11.4334 CgPred 13.989  Pg 2.55553&lt;br /&gt;
Mode 5 Blocks  276650 SATD 1222.78 Bits 139.462 Mean 1691.97 Var 612193 CgRef 11.5441 CgPred 14.2428 Pg 2.69867&lt;br /&gt;
Mode 6 Blocks  264186 SATD 1238.89 Bits 139.503 Mean 1664.18 Var 603871 CgRef 11.7692 CgPred 14.2162 Pg 2.44696&lt;br /&gt;
Mode 7 Blocks  354682 SATD 1293.8  Bits 139.885 Mean 1654    Var 603002 CgRef 12.1736 CgPred 14.2243 Pg 2.05075&lt;br /&gt;
Mode 8 Blocks  278080 SATD 1322.45 Bits 140.806 Mean 1706.37 Var 634358 CgRef 11.6018 CgPred 14.0524 Pg 2.4506&lt;br /&gt;
Mode 9 Blocks  253209 SATD 1321.22 Bits 140.924 Mean 1722.95 Var 625202 CgRef 11.4638 CgPred 13.7727 Pg 2.30894&lt;br /&gt;
Pooled Blocks 3279363 SATD 1270.74 Bits 139.871 Mean 1727.99 Var 619488 CgRef 11.4416 CgPred 14.2047 Pg 2.76305&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Daala Intra Predictors&lt;br /&gt;
Mode 0 Blocks  472906 SATD 1017.46 Bits 138.832 Mean 1728.18 Var 553398 CgRef 12.9443 CgPred 14.6488 Pg 1.7045&lt;br /&gt;
Mode 1 Blocks  261910 SATD 1519.87 Bits 146.67  Mean 1779.45 Var 471328 CgRef 9.70601 CgPred 12.4896 Pg 2.78355&lt;br /&gt;
Mode 2 Blocks  198050 SATD 1818.89 Bits 149.906 Mean 1778.28 Var 440574 CgRef 10.0855 CgPred 11.5142 Pg 1.42869&lt;br /&gt;
Mode 3 Blocks  400658 SATD 1091.01 Bits 138.022 Mean 1765.68 Var 699810 CgRef 14.9146 CgPred 17.0632 Pg 2.14857&lt;br /&gt;
Mode 4 Blocks  440888 SATD 1056.23 Bits 138.926 Mean 1768.35 Var 669611 CgRef 13.8652 CgPred 15.8732 Pg 2.008&lt;br /&gt;
Mode 5 Blocks  123873 SATD 2646.11 Bits 158.928 Mean 1761.66 Var 348360 CgRef 6.56612 CgPred 7.681   Pg 1.11488&lt;br /&gt;
Mode 6 Blocks  389669 SATD 1128.95 Bits 140.725 Mean 1607.85 Var 604298 CgRef 12.8995 CgPred 14.7494 Pg 1.84991&lt;br /&gt;
Mode 7 Blocks  364446 SATD 1132.17 Bits 139.413 Mean 1649.46 Var 674713 CgRef 14.0093 CgPred 16.1988 Pg 2.18954&lt;br /&gt;
Mode 8 Blocks  373419 SATD 1116.84 Bits 140.019 Mean 1720.85 Var 707029 CgRef 13.9352 CgPred 15.8526 Pg 1.91734&lt;br /&gt;
Mode 9 Blocks  253544 SATD 1571.98 Bits 147.453 Mean 1797.04 Var 502237 CgRef 10.7593 CgPred 12.3135 Pg 1.55419&lt;br /&gt;
Pooled Blocks 3279363 SATD 1261.89 Bits 142.641 Mean 1727.99 Var 619488 CgRef 12.3321 CgPred 14.4918 Pg 2.15973&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Using the set of 1000 images in subset3-y4m to test the sparse (4*4*4 = 64 multiplies per block) intra predictors:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
VP8 Intra Predictors&lt;br /&gt;
Mode 0 Blocks  8440618 SATD 773.069 Bits 129.891 Mean 1987.82 Var 714490 CgRef 16.1033 CgPred 17.7858 Pg 1.68249&lt;br /&gt;
Mode 1 Blocks  7177017 SATD 1097.06 Bits 133.975 Mean 1835.81 Var 682211 CgRef 13.2692 CgPred 17.2354 Pg 3.96624&lt;br /&gt;
Mode 2 Blocks  7486531 SATD 1129.14 Bits 136.141 Mean 1849.6  Var 699452 CgRef 14.1344 CgPred 16.3106 Pg 2.17612&lt;br /&gt;
Mode 3 Blocks  9420648 SATD 1030.04 Bits 133.978 Mean 1856.55 Var 667016 CgRef 14.7014 CgPred 16.9182 Pg 2.21677&lt;br /&gt;
Mode 4 Blocks  6537593 SATD 1074.28 Bits 135.633 Mean 1877.16 Var 703018 CgRef 13.7951 CgPred 16.4451 Pg 2.65005&lt;br /&gt;
Mode 5 Blocks  5764375 SATD 1037.61 Bits 135.162 Mean 1862.93 Var 714729 CgRef 13.7467 CgPred 16.5772 Pg 2.83053&lt;br /&gt;
Mode 6 Blocks  5526915 SATD 1047.34 Bits 135.235 Mean 1853.98 Var 725463 CgRef 13.9811 CgPred 16.5951 Pg 2.61399&lt;br /&gt;
Mode 7 Blocks  7493442 SATD 1061.93 Bits 134.918 Mean 1797.8  Var 701592 CgRef 14.467  CgPred 16.6788 Pg 2.21183&lt;br /&gt;
Mode 8 Blocks  5635636 SATD 1077.08 Bits 135.666 Mean 1850.12 Var 724307 CgRef 13.9346 CgPred 16.4812 Pg 2.54658&lt;br /&gt;
Mode 9 Blocks  5148581 SATD 1100.52 Bits 136.283 Mean 1895.9  Var 726050 CgRef 13.7549 CgPred 16.1284 Pg 2.37353&lt;br /&gt;
Pooled Blocks 68631356 SATD 1035.13 Bits 134.722 Mean 1868.07 Var 721805 CgRef 13.8553 CgPred 16.77   Pg 2.91471&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Daala Intra Predictors&lt;br /&gt;
Mode 0 Blocks  9675144 SATD 841.841 Bits 133.86  Mean 1877.93 Var 662343 CgRef 15.701  CgPred 17.4209 Pg 1.71986&lt;br /&gt;
Mode 1 Blocks  4809122 SATD 1246.09 Bits 141.563 Mean 1764.73 Var 466747 CgRef 12.3822 CgPred 14.2618 Pg 1.8796&lt;br /&gt;
Mode 2 Blocks  3895161 SATD 1620.32 Bits 146.753 Mean 1763.23 Var 408176 CgRef 10.9493 CgPred 12.402  Pg 1.45271&lt;br /&gt;
Mode 3 Blocks  8512887 SATD 895.992 Bits 133.096 Mean 1838.33 Var 781431 CgRef 17.0033 CgPred 19.2762 Pg 2.27292&lt;br /&gt;
Mode 4 Blocks 10224556 SATD 788.516 Bits 131.961 Mean 2073.27 Var 777684 CgRef 16.8937 CgPred 18.964  Pg 2.07024&lt;br /&gt;
Mode 5 Blocks  2492854 SATD 2306.98 Bits 155.1   Mean 1781.56 Var 306540 CgRef 7.42632 CgPred 8.54354 Pg 1.11722&lt;br /&gt;
Mode 6 Blocks  7839240 SATD 960.763 Bits 136.271 Mean 1723.23 Var 684064 CgRef 15.2766 CgPred 17.1139 Pg 1.83731&lt;br /&gt;
Mode 7 Blocks  8127384 SATD 913.37  Bits 133.886 Mean 1865.64 Var 797013 CgRef 16.528  CgPred 18.8681 Pg 2.34004&lt;br /&gt;
Mode 8 Blocks  8289385 SATD 856.357 Bits 133.506 Mean 1963.06 Var 814308 CgRef 16.8012 CgPred 18.6876 Pg 1.88641&lt;br /&gt;
Mode 9 Blocks  4765623 SATD 1420.7  Bits 144.479 Mean 1773.33 Var 478656 CgRef 11.868  CgPred 13.3845 Pg 1.51648&lt;br /&gt;
Pooled Blocks 68631356 SATD 1030.34 Bits 137.446 Mean 1868.07 Var 721805 CgRef 14.964  CgPred 17.0421 Pg 2.07809&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 8x8 Intra Predictors ==&lt;br /&gt;
&lt;br /&gt;
Using the set of 50 images in subset1-y4m to train sparse (4*8*8 = 256 multiplies per block) intra predictors:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
VP8 Intra Predictors&lt;br /&gt;
Mode 0 Blocks 153189 SATD 6082.74 Bits 633.298 Mean 1720.67 Var 559647 CgRef 12.0272 CgPred 12.3392 Pg 0.311931&lt;br /&gt;
Mode 1 Blocks  49244 SATD 6482.51 Bits 631.517 Mean 1752.33 Var 634379 CgRef 12.983  CgPred 14.5119 Pg 1.52891&lt;br /&gt;
Mode 2 Blocks  81386 SATD 6317.27 Bits 633.888 Mean 1772.67 Var 617045 CgRef 13.2505 CgPred 13.8038 Pg 0.55328&lt;br /&gt;
Mode 3 Blocks 149817 SATD 6142.2  Bits 629.138 Mean 1821.6  Var 577836 CgRef 13.4642 CgPred 14.0662 Pg 0.601936&lt;br /&gt;
Mode 4 Blocks  59095 SATD 6488.09 Bits 639.403 Mean 1738.64 Var 635175 CgRef 12.8858 CgPred 13.546  Pg 0.660174&lt;br /&gt;
Mode 5 Blocks  51138 SATD 6321.64 Bits 636.812 Mean 1680.52 Var 614762 CgRef 12.5191 CgPred 13.2898 Pg 0.770625&lt;br /&gt;
Mode 6 Blocks  46860 SATD 6214.38 Bits 635.479 Mean 1636.45 Var 606974 CgRef 13.0011 CgPred 13.5919 Pg 0.590785&lt;br /&gt;
Mode 7 Blocks 101899 SATD 6579.86 Bits 637.096 Mean 1621    Var 597451 CgRef 12.9896 CgPred 13.5883 Pg 0.598636&lt;br /&gt;
Mode 8 Blocks  55425 SATD 6946.74 Bits 644.887 Mean 1714.81 Var 646845 CgRef 12.5421 CgPred 13.1933 Pg 0.651179&lt;br /&gt;
Mode 9 Blocks  43833 SATD 6717.76 Bits 640.445 Mean 1738.18 Var 634206 CgRef 12.5208 CgPred 13.1502 Pg 0.629351&lt;br /&gt;
Pooled Blocks 791886 SATD 6356.01 Bits 635.537 Mean 1728.58 Var 619153 CgRef 12.4832 CgPred 13.326  Pg 0.842891&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;Daala Intra Predictors&lt;br /&gt;
Mode 0 Blocks  62290 SATD 8842.88 Bits 695.702 Mean 1762.94 Var 546310 CgRef 10.527  CgPred 11.2558 Pg 0.728816&lt;br /&gt;
Mode 1 Blocks  51719 SATD 8525.04 Bits 687.553 Mean 1814.55 Var 507208 CgRef 10.9023 CgPred 11.7365 Pg 0.834129&lt;br /&gt;
Mode 2 Blocks  36010 SATD 12451.8 Bits 728.279 Mean 1791.12 Var 384211 CgRef 7.39062 CgPred 7.865   Pg 0.474379&lt;br /&gt;
Mode 3 Blocks 112574 SATD 5202.09 Bits 631.108 Mean 1783.42 Var 690506 CgRef 15.7576 CgPred 16.3784 Pg 0.620821&lt;br /&gt;
Mode 4 Blocks 115633 SATD 5215.31 Bits 633.79  Mean 1769.83 Var 629411 CgRef 14.1115 CgPred 14.8214 Pg 0.709915&lt;br /&gt;
Mode 5 Blocks  54821 SATD 9203.44 Bits 696.669 Mean 1744.5  Var 463757 CgRef 9.45701 CgPred 10.0708 Pg 0.613816&lt;br /&gt;
Mode 6 Blocks  87676 SATD 5900.82 Bits 646.94  Mean 1578.28 Var 591176 CgRef 13.1847 CgPred 13.8014 Pg 0.616685&lt;br /&gt;
Mode 7 Blocks  92133 SATD 5419.48 Bits 636.372 Mean 1634.71 Var 692905 CgRef 15.1441 CgPred 15.8044 Pg 0.660312&lt;br /&gt;
Mode 8 Blocks  76551 SATD 6501.37 Bits 658.66  Mean 1736.97 Var 612091 CgRef 12.6443 CgPred 13.4359 Pg 0.791668&lt;br /&gt;
Mode 9 Blocks 102479 SATD 5847.21 Bits 646.934 Mean 1733.7  Var 570790 CgRef 12.9057 CgPred 13.583  Pg 0.677333&lt;br /&gt;
Pooled Blocks 791886 SATD 6625.85 Bits 659.058 Mean 1728.58 Var 619153 CgRef 12.6445 CgPred 13.4208 Pg 0.776311&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Using the set of 1000 images in subset3-y4m to test the sparse (4*8*8 = 256 multiplies per block) intra predictors.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
VP8 Intra Predictors&lt;br /&gt;
Mode 0 Blocks  3285321 SATD 4831.25 Bits 609.544 Mean 1942.13 Var 681922 CgRef 15.1468 CgPred 15.5036 Pg 0.356785&lt;br /&gt;
Mode 1 Blocks  1097934 SATD 4966.25 Bits 600.994 Mean 1847.45 Var 682361 CgRef 16.1138 CgPred 17.8094 Pg 1.69564&lt;br /&gt;
Mode 2 Blocks  1708487 SATD 5380.91 Bits 616.147 Mean 1869.28 Var 707993 CgRef 15.3892 CgPred 15.978  Pg 0.58875&lt;br /&gt;
Mode 3 Blocks  3106373 SATD 5029.6  Bits 608.275 Mean 1879.34 Var 663156 CgRef 15.8358 CgPred 16.4784 Pg 0.642574&lt;br /&gt;
Mode 4 Blocks  1208481 SATD 5328.85 Bits 618.814 Mean 1882.27 Var 709893 CgRef 15.2482 CgPred 15.8695 Pg 0.621321&lt;br /&gt;
Mode 5 Blocks  1049455 SATD 5420.14 Bits 619.549 Mean 1855.61 Var 719825 CgRef 14.9456 CgPred 15.7082 Pg 0.762665&lt;br /&gt;
Mode 6 Blocks   959802 SATD 5356.04 Bits 618.585 Mean 1832.64 Var 732730 CgRef 15.2935 CgPred 15.878  Pg 0.584477&lt;br /&gt;
Mode 7 Blocks  2216886 SATD 5374.46 Bits 613.848 Mean 1782.23 Var 703311 CgRef 15.4919 CgPred 16.1339 Pg 0.64197&lt;br /&gt;
Mode 8 Blocks  1089024 SATD 5614.08 Bits 620.635 Mean 1830.07 Var 723888 CgRef 15.031  CgPred 15.6673 Pg 0.636324&lt;br /&gt;
Mode 9 Blocks   870162 SATD 5664.15 Bits 621.395 Mean 1877.86 Var 725235 CgRef 14.8465 CgPred 15.4287 Pg 0.582189&lt;br /&gt;
Pooled Blocks 16591925 SATD 5205.41 Bits 613.921 Mean 1868.35 Var 720473 CgRef 15.1122 CgPred 15.9821 Pg 0.869956&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Daala Intra Predictors&lt;br /&gt;
Mode 0 Blocks  1179905 SATD 7866.76 Bits 682.077 Mean 1726.99 Var 519986 CgRef 12.0984 CgPred 12.4692 Pg 0.370783&lt;br /&gt;
Mode 1 Blocks  1008452 SATD 7410.96 Bits 669.185 Mean 1815.4  Var 486451 CgRef 12.7369 CgPred 13.1166 Pg 0.379717&lt;br /&gt;
Mode 2 Blocks   676403 SATD 11047.9 Bits 713.149 Mean 1806.12 Var 353773 CgRef 8.53864 CgPred 9.00691 Pg 0.46827&lt;br /&gt;
Mode 3 Blocks  2540750 SATD 4183.79 Bits 607.011 Mean 1934.57 Var 794608 CgRef 18.4004 CgPred 19.0367 Pg 0.636302&lt;br /&gt;
Mode 4 Blocks  2656446 SATD 3991.2  Bits 605.507 Mean 2030    Var 728302 CgRef 17.1992 CgPred 17.8889 Pg 0.68974&lt;br /&gt;
Mode 5 Blocks  1011671 SATD 8495.58 Bits 687.746 Mean 1744.3  Var 449801 CgRef 10.8417 CgPred 11.4205 Pg 0.578879&lt;br /&gt;
Mode 6 Blocks  1710619 SATD 5227.87 Bits 632.837 Mean 1648.81 Var 645320 CgRef 15.2445 CgPred 15.8622 Pg 0.617689&lt;br /&gt;
Mode 7 Blocks  2352651 SATD 3996.86 Bits 601.981 Mean 2013.93 Var 842396 CgRef 18.4642 CgPred 19.1573 Pg 0.693167&lt;br /&gt;
Mode 8 Blocks  1482503 SATD 5447.2  Bits 637.809 Mean 1810.08 Var 641515 CgRef 14.9565 CgPred 15.5448 Pg 0.588273&lt;br /&gt;
Mode 9 Blocks  1972525 SATD 5184.71 Bits 633.59  Mean 1822.5  Var 633855 CgRef 14.9489 CgPred 15.5997 Pg 0.650804&lt;br /&gt;
Pooled Blocks 16591925 SATD 5466.77 Bits 636.877 Mean 1868.35 Var 720473 CgRef 15.3899 CgPred 16.0271 Pg 0.63723&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[1] http://blog.webmproject.org/2010/07/inside-webm-technology-vp8-intra-and.html&lt;/div&gt;</summary>
		<author><name>Unlord</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=TDLT&amp;diff=13798</id>
		<title>TDLT</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=TDLT&amp;diff=13798"/>
		<updated>2012-12-17T10:15:12Z</updated>

		<summary type="html">&lt;p&gt;Unlord: Adding 8-bit 8x16 Type-IV dyadic&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page holds the results of Time Domain Lapped Transform (TDLT) optimization problems looking for integer transform coefficients that provide optimal coding gain.  Wherever possible the assumptions are stated.  Later we should include testing against actual image data to verify the results (see test data [http://people.xiph.org/~tterribe/tmp/subset1-y4m.tar.gz here]).&lt;br /&gt;
&lt;br /&gt;
The coding gain objective used as the objective is taken from slide 13 of Tim&#039;s presentation [http://people.xiph.org/~tterribe/pubs/lca2012/auckland/intro_to_video1.pdf An Introduction to Video Coding]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;need figure with block matrix diagrams&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The free parameters are initially just the coefficients p_0,...,p_m,q_0,...,q_m where m=(n/2)-1.  We limit these to being dyadic rationals, e.g., x/2^d with d=6, between [-1,1].&lt;br /&gt;
&lt;br /&gt;
Given p&#039;s and q&#039;s and assuming a linear ramp constrains the s&#039;s.&lt;br /&gt;
 &lt;br /&gt;
== 4x8 ==&lt;br /&gt;
&lt;br /&gt;
Optimal real-valued coefficients for V:&lt;br /&gt;
&lt;br /&gt;
p0 = -0.18117338915051454&lt;br /&gt;
&lt;br /&gt;
q0 = 0.6331818230771687&lt;br /&gt;
&lt;br /&gt;
CG = 8.60603&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!q0&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!CG&lt;br /&gt;
!SBA&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -11/64&amp;lt;br&amp;gt;-0.171875&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 91/64&amp;lt;br&amp;gt;1.421875&lt;br /&gt;
| 85/64&amp;lt;br&amp;gt;1.328125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.63473&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;22.0331&lt;br /&gt;
| [[Image:4x8.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -5/32&amp;lt;br&amp;gt;-0.15625&lt;br /&gt;
| 18/32&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 46/32&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 42/32&amp;lt;br&amp;gt;1.3125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.63409&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;22.5715&lt;br /&gt;
| [[Image:4x8_5bit.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -12/64&amp;lt;br&amp;gt;-0.1875&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 92/64&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 1093/768&amp;lt;br&amp;gt;1.423177&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.60486&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;20.0573&lt;br /&gt;
| [[Image:4x8r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;8-bit&lt;br /&gt;
| -32/256&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 162/256&amp;lt;br&amp;gt;0.6328125&lt;br /&gt;
| 376/256&amp;lt;br&amp;gt;1.46875&lt;br /&gt;
| 357/256&amp;lt;br&amp;gt;1.39453125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.60104&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;21.4037&lt;br /&gt;
| [[Image:4x8rd_8bit.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;7-bit&lt;br /&gt;
| -32/128&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| 82/128&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 184/128&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 186/128&amp;lt;br&amp;gt;1.453125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.59886&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;18.9411&lt;br /&gt;
| [[Image:4x8rd_7bit.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 92/64&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 93/64&amp;lt;br&amp;gt;1.453125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.59886&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;18.9411&lt;br /&gt;
| [[Image:4x8rd.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -8/32&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| 19/32&amp;lt;br&amp;gt;0.59375&lt;br /&gt;
| 52/32&amp;lt;br&amp;gt;1.625&lt;br /&gt;
| 47/32&amp;lt;br&amp;gt;1.46875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.56068&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;20.3279&lt;br /&gt;
| [[Image:4x8rd_5bit.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;max SBA&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 30/64&amp;lt;br&amp;gt;0.46875&lt;br /&gt;
| 136/64&amp;lt;br&amp;gt;2.125&lt;br /&gt;
| 91/64&amp;lt;br&amp;gt;1.421875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.23230&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;25.1934&lt;br /&gt;
| [[Image:4x8rd_sba.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 8x16 ==&lt;br /&gt;
&lt;br /&gt;
Optimal real-valued coefficients for V:&lt;br /&gt;
&lt;br /&gt;
p0 = -0.39460731547057293&lt;br /&gt;
&lt;br /&gt;
p1 = -0.33002212811740816&lt;br /&gt;
&lt;br /&gt;
p2 = -0.12391270981321137&lt;br /&gt;
&lt;br /&gt;
q0 = 0.822154737511288&lt;br /&gt;
&lt;br /&gt;
q1 = 0.632488694485779&lt;br /&gt;
&lt;br /&gt;
q2 = 0.40214668677553894&lt;br /&gt;
&lt;br /&gt;
CG = 9.56867&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -23/64&amp;lt;br&amp;gt;-0.359375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -6/64&amp;lt;br&amp;gt;-0.09375&lt;br /&gt;
| 48/64&amp;lt;br&amp;gt;0.75&lt;br /&gt;
| 34/64&amp;lt;br&amp;gt;0.53125&lt;br /&gt;
| 20/64&amp;lt;br&amp;gt;0.3125&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.60021&lt;br /&gt;
| [[Image:8x16.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -12/32&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -9/32&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -4/32&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 24/32&amp;lt;br&amp;gt;0.75&lt;br /&gt;
| 17/32&amp;lt;br&amp;gt;0.53125&lt;br /&gt;
| 10/32&amp;lt;br&amp;gt;&lt;br /&gt;
| 45/32&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 37/32&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 36/32&amp;lt;br&amp;gt;&lt;br /&gt;
| 38/32&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.59946&lt;br /&gt;
| [[Image:8x16_5bit.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -26/64&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -22/64&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 26/64&amp;lt;br&amp;gt;0.40625&lt;br /&gt;
| 11/8&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 879/768&amp;lt;br&amp;gt;1.14453125&lt;br /&gt;
| 1469/1280&amp;lt;br&amp;gt;1.14765625&lt;br /&gt;
| 275/224&amp;lt;br&amp;gt;1.2276785714285714&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56627&lt;br /&gt;
| [[Image:8x16r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;8-bit&lt;br /&gt;
| -96/256&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -83/256&amp;lt;br&amp;gt;-0.32421875&lt;br /&gt;
| -36/256&amp;lt;br&amp;gt;-0.140625&lt;br /&gt;
| 210/256&amp;lt;br&amp;gt;0.8203125&lt;br /&gt;
| 160/256&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 104/256&amp;lt;br&amp;gt;0.40625&lt;br /&gt;
| 368/256&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 302/256&amp;lt;br&amp;gt;1.1796875&lt;br /&gt;
| 293/256&amp;lt;br&amp;gt;1.14453125&lt;br /&gt;
| 317/256&amp;lt;br&amp;gt;1.23828125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56761&lt;br /&gt;
| [[Image:8x16rd_8bit.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;7-bit&lt;br /&gt;
| -48/128&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -45/128&amp;lt;br&amp;gt;-0.3515625&lt;br /&gt;
| -16/128&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 105/128&amp;lt;br&amp;gt;0.8203125&lt;br /&gt;
| 80/128&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 53/128&amp;lt;br&amp;gt;0.4140625&lt;br /&gt;
| 184/128&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 151/128&amp;lt;br&amp;gt;1.1796875&lt;br /&gt;
| 147/128&amp;lt;br&amp;gt;1.1484375&lt;br /&gt;
| 157/128&amp;lt;br&amp;gt;1.2265625&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56672&lt;br /&gt;
| [[Image:8x16rd_7bit.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -20/64&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -4/64&amp;lt;br&amp;gt;-0.0625&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 24/64&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 88/64&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56161&lt;br /&gt;
| [[Image:8x16rd.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -12/32&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -10/32&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -2/32&amp;lt;br&amp;gt;-0.0625&lt;br /&gt;
| 26/32&amp;lt;br&amp;gt;0.8125&lt;br /&gt;
| 20/32&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 12/32&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 48/32&amp;lt;br&amp;gt;1.5&lt;br /&gt;
| 38/32&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| 38/32&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| 38/32&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.5596&lt;br /&gt;
| [[Image:8x16rd_5bit.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 16x32 ==&lt;br /&gt;
&lt;br /&gt;
Best-known real-valued coefficients for V (R=t):&lt;br /&gt;
&lt;br /&gt;
p0 = -0.42111473798940136&lt;br /&gt;
&lt;br /&gt;
p1 = -0.4121736499899753&lt;br /&gt;
&lt;br /&gt;
p2 = -0.3350240707669929&lt;br /&gt;
&lt;br /&gt;
p3 = -0.3224547931861314&lt;br /&gt;
&lt;br /&gt;
p4 = -0.25883387978005545&lt;br /&gt;
&lt;br /&gt;
p5 = -0.20951913473498104&lt;br /&gt;
&lt;br /&gt;
p6 = -0.0598657149803332&lt;br /&gt;
&lt;br /&gt;
q0 = 0.9107782439906195&lt;br /&gt;
&lt;br /&gt;
q1 = 0.8109855829278226&lt;br /&gt;
&lt;br /&gt;
q2 = 0.715846584586721&lt;br /&gt;
&lt;br /&gt;
q3 = 0.6135951570714172&lt;br /&gt;
&lt;br /&gt;
q4 = 0.49846644853347627&lt;br /&gt;
&lt;br /&gt;
q5 = 0.3945215834922529&lt;br /&gt;
&lt;br /&gt;
q6 = 0.21822275136248082&lt;br /&gt;
&lt;br /&gt;
CG = 9.81157&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!p3&lt;br /&gt;
!p4&lt;br /&gt;
!p5&lt;br /&gt;
!p6&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!q3&lt;br /&gt;
!q4&lt;br /&gt;
!q5&lt;br /&gt;
!q6&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!s4&lt;br /&gt;
!s5&lt;br /&gt;
!s6&lt;br /&gt;
!s7&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -23/64&amp;lt;br&amp;gt;-0.359375&lt;br /&gt;
| -17/64&amp;lt;br&amp;gt;-0.265625&lt;br /&gt;
| -12/64&amp;lt;br&amp;gt;-0.1875&lt;br /&gt;
| -14/64&amp;lt;br&amp;gt;-0.21875&lt;br /&gt;
| -13/64&amp;lt;br&amp;gt;-0.203125&lt;br /&gt;
| -7/64&amp;lt;br&amp;gt;-0.109375&lt;br /&gt;
| 50/64&amp;lt;br&amp;gt;0.78125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 31/64&amp;lt;br&amp;gt;0.484375&lt;br /&gt;
| 22/64&amp;lt;br&amp;gt;0.34375&lt;br /&gt;
| 18/64&amp;lt;br&amp;gt;0.28125&lt;br /&gt;
| 16/64&amp;lt;br&amp;gt;0.25&lt;br /&gt;
| 11/64&amp;lt;br&amp;gt;0.171875&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 71/64&amp;lt;br&amp;gt;1.109375&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.89338&lt;br /&gt;
| [[Image:16x32.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -26/64&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -27/64&amp;lt;br&amp;gt;-0.421875&lt;br /&gt;
| -22/64&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| -14/64&amp;lt;br&amp;gt;-0.21875&lt;br /&gt;
| -5/64&amp;lt;br&amp;gt;-0.078125&lt;br /&gt;
| 58/64&amp;lt;br&amp;gt;0.90625&lt;br /&gt;
| 52/64&amp;lt;br&amp;gt;0.8125&lt;br /&gt;
| 45/64&amp;lt;br&amp;gt;0.703125&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 31/64&amp;lt;br&amp;gt;0.484375&lt;br /&gt;
| 23/64&amp;lt;br&amp;gt;0.359375&lt;br /&gt;
| 13/64&amp;lt;br&amp;gt;0.203125&lt;br /&gt;
| 3/2&amp;lt;br&amp;gt;1.5&lt;br /&gt;
| 77/64&amp;lt;br&amp;gt;1.203125&lt;br /&gt;
| 77/64&amp;lt;br&amp;gt;1.203125&lt;br /&gt;
| 1105/896&amp;lt;br&amp;gt;1.23326&lt;br /&gt;
| 218/192&amp;lt;br&amp;gt;1.135417&lt;br /&gt;
| 197/176&amp;lt;br&amp;gt;1.119318&lt;br /&gt;
| 1919/1664&amp;lt;br&amp;gt;1.153245&lt;br /&gt;
| 4351/3840&amp;lt;br&amp;gt;1.133073&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.79398&lt;br /&gt;
| [[Image:16x32r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -32/64&amp;lt;br&amp;gt;-0.5&lt;br /&gt;
| -28/64&amp;lt;br&amp;gt;-0.4375&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -32/64&amp;lt;br&amp;gt;-0.5&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -13/64&amp;lt;br&amp;gt;-0.203125&lt;br /&gt;
| -2/64&amp;lt;br&amp;gt;-0.03125&lt;br /&gt;
| 59/64&amp;lt;br&amp;gt;0.921875&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 46/64&amp;lt;br&amp;gt;0.71875&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 35/64&amp;lt;br&amp;gt;0.546875&lt;br /&gt;
| 24/64&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 12/64&amp;lt;br&amp;gt;0.1875&lt;br /&gt;
| 80/64&amp;lt;br&amp;gt;1.25&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 68/64&amp;lt;br&amp;gt;1.0625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 70/64&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.78294&lt;br /&gt;
| [[Image:16x32rd.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Type-IV Coding Gain ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!4x8&lt;br /&gt;
!4x8 Ramp&lt;br /&gt;
!8x16&lt;br /&gt;
!8x16 Ramp&lt;br /&gt;
!16x32&lt;br /&gt;
!16x32 Ramp&lt;br /&gt;
|-&lt;br /&gt;
|Real Valued&lt;br /&gt;
|8.6349&lt;br /&gt;
|8.60603&lt;br /&gt;
|9.6005&lt;br /&gt;
|9.56867&lt;br /&gt;
|9.9057&lt;br /&gt;
|9.81157&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (8-bit)&lt;br /&gt;
|&lt;br /&gt;
|8.60104&lt;br /&gt;
|&lt;br /&gt;
|9.56761&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|&lt;br /&gt;
|0.00499&lt;br /&gt;
|&lt;br /&gt;
|0.00105&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (7-bit)&lt;br /&gt;
|&lt;br /&gt;
|8.59886&lt;br /&gt;
|&lt;br /&gt;
|9.56672&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|&lt;br /&gt;
|0.00717&lt;br /&gt;
|&lt;br /&gt;
|0.00195&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (6-bit)&lt;br /&gt;
|8.63473&lt;br /&gt;
|8.59886&lt;br /&gt;
|9.60021&lt;br /&gt;
|9.56161&lt;br /&gt;
|9.89338&lt;br /&gt;
|9.78294&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|0.00017&lt;br /&gt;
|0.00717&lt;br /&gt;
|0.00029&lt;br /&gt;
|0.00706&lt;br /&gt;
|0.01232&lt;br /&gt;
|0.02863&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (5-bit)&lt;br /&gt;
|8.63409&lt;br /&gt;
|8.56068&lt;br /&gt;
|9.59946&lt;br /&gt;
|9.5596&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|0.00081&lt;br /&gt;
|0.04535&lt;br /&gt;
|0.00104&lt;br /&gt;
|0.00907&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 8x16 Type-III ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -25/64&amp;lt;br&amp;gt;-0.390625&lt;br /&gt;
| -20/64&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -7/64&amp;lt;br&amp;gt;-0.109375&lt;br /&gt;
| 49/64&amp;lt;br&amp;gt;0.765625&lt;br /&gt;
| 35/64&amp;lt;br&amp;gt;0.546875&lt;br /&gt;
| 21/64&amp;lt;br&amp;gt;0.328125&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.6112&lt;br /&gt;
| [[Image:8x16_type3.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -13/32&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -11/32&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -4/32&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 25/32&amp;lt;br&amp;gt;0.78125&lt;br /&gt;
| 18/32&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 11/32&amp;lt;br&amp;gt;0.34375&lt;br /&gt;
| 45/32&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 36/32&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 36/32&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 38/32&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.61048&lt;br /&gt;
| [[Image:8x16_type3_5bit.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 16x32 Type-III ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!p3&lt;br /&gt;
!p4&lt;br /&gt;
!p5&lt;br /&gt;
!p6&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!q3&lt;br /&gt;
!q4&lt;br /&gt;
!q5&lt;br /&gt;
!q6&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!s4&lt;br /&gt;
!s5&lt;br /&gt;
!s6&lt;br /&gt;
!s7&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -30/64&amp;lt;br&amp;gt;-0.46875&lt;br /&gt;
| -35/64&amp;lt;br&amp;gt;-0.546875&lt;br /&gt;
| -31/64&amp;lt;br&amp;gt;-0.484375&lt;br /&gt;
| -29/64&amp;lt;br&amp;gt;-0.453125&lt;br /&gt;
| -25/64&amp;lt;br&amp;gt;-0.390625&lt;br /&gt;
| -19/64&amp;lt;br&amp;gt;-0.296875&lt;br /&gt;
| -10/64&amp;lt;br&amp;gt;-0.15625&lt;br /&gt;
| 54/64&amp;lt;br&amp;gt;0.84375&lt;br /&gt;
| 45/64&amp;lt;br&amp;gt;0.703125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 32/64&amp;lt;br&amp;gt;0.5&lt;br /&gt;
| 25/64&amp;lt;br&amp;gt;0.390625&lt;br /&gt;
| 17/64&amp;lt;br&amp;gt;0.265625&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 70/64&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| 69/64&amp;lt;br&amp;gt;1.078125&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 68/64&amp;lt;br&amp;gt;1.0625&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.94127&lt;br /&gt;
| [[Image:16x32_type3_6bit.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -15/32&amp;lt;br&amp;gt;-0.46875&lt;br /&gt;
| -17/32&amp;lt;br&amp;gt;-0.53125&lt;br /&gt;
| -14/32&amp;lt;br&amp;gt;-0.4375&lt;br /&gt;
| -12/32&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -9/32&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -5/32&amp;lt;br&amp;gt;-0.15625&lt;br /&gt;
| 0/32&amp;lt;br&amp;gt;0.0&lt;br /&gt;
| 27/32&amp;lt;br&amp;gt;0.84375&lt;br /&gt;
| 23/32&amp;lt;br&amp;gt;0.71875&lt;br /&gt;
| 20/32&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 17/32&amp;lt;br&amp;gt;0.53125&lt;br /&gt;
| 14/32&amp;lt;br&amp;gt;0.4375&lt;br /&gt;
| 9/32&amp;lt;br&amp;gt;0.28125&lt;br /&gt;
| 3/32&amp;lt;br&amp;gt;0.09375&lt;br /&gt;
| 45/32&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 35/32&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| 35/32&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| 34/32&amp;lt;br&amp;gt;1.0625&lt;br /&gt;
| 34/32&amp;lt;br&amp;gt;1.0625&lt;br /&gt;
| 35/32&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| 36/32&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 33/32&amp;lt;br&amp;gt;1.03125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.93998&lt;br /&gt;
| [[Image:16x32_type3_5bit.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Type-III Coding Gain ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!4x8&lt;br /&gt;
!8x16&lt;br /&gt;
!16x32&lt;br /&gt;
|-&lt;br /&gt;
|Real Valued&lt;br /&gt;
|8.6349&lt;br /&gt;
|9.6115&lt;br /&gt;
|9.9496&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (6-bit)&lt;br /&gt;
|8.63473&lt;br /&gt;
|9.6112&lt;br /&gt;
|9.94127&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|0.00017&lt;br /&gt;
|0.00030&lt;br /&gt;
|0.00833&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (5-bit)&lt;br /&gt;
|8.63409&lt;br /&gt;
|9.61048&lt;br /&gt;
|9.93998&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|0.00081&lt;br /&gt;
|0.00102&lt;br /&gt;
|0.00962&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Unlord</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=TDLT&amp;diff=13780</id>
		<title>TDLT</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=TDLT&amp;diff=13780"/>
		<updated>2012-11-26T21:42:27Z</updated>

		<summary type="html">&lt;p&gt;Unlord: Updated 5-bit 8x16 Type-III&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page holds the results of Time Domain Lapped Transform (TDLT) optimization problems looking for integer transform coefficients that provide optimal coding gain.  Wherever possible the assumptions are stated.  Later we should include testing against actual image data to verify the results (see test data [http://people.xiph.org/~tterribe/tmp/subset1-y4m.tar.gz here]).&lt;br /&gt;
&lt;br /&gt;
The coding gain objective used as the objective is taken from slide 13 of Tim&#039;s presentation [http://people.xiph.org/~tterribe/pubs/lca2012/auckland/intro_to_video1.pdf An Introduction to Video Coding]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;need figure with block matrix diagrams&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The free parameters are initially just the coefficients p_0,...,p_m,q_0,...,q_m where m=(n/2)-1.  We limit these to being dyadic rationals, e.g., x/2^d with d=6, between [-1,1].&lt;br /&gt;
&lt;br /&gt;
Given p&#039;s and q&#039;s and assuming a linear ramp constrains the s&#039;s.&lt;br /&gt;
 &lt;br /&gt;
== 4x8 ==&lt;br /&gt;
&lt;br /&gt;
Optimal real-valued coefficients for V:&lt;br /&gt;
&lt;br /&gt;
p0 = -0.18117338915051454&lt;br /&gt;
&lt;br /&gt;
q0 = 0.6331818230771687&lt;br /&gt;
&lt;br /&gt;
CG = 8.60603&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!q0&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!CG&lt;br /&gt;
!SBA&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -11/64&amp;lt;br&amp;gt;-0.171875&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 91/64&amp;lt;br&amp;gt;1.421875&lt;br /&gt;
| 85/64&amp;lt;br&amp;gt;1.328125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.63473&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;22.0331&lt;br /&gt;
| [[Image:4x8.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -5/32&amp;lt;br&amp;gt;-0.15625&lt;br /&gt;
| 18/32&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 46/32&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 42/32&amp;lt;br&amp;gt;1.3125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.63409&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;22.5715&lt;br /&gt;
| [[Image:4x8_5bit.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -12/64&amp;lt;br&amp;gt;-0.1875&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 92/64&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 1093/768&amp;lt;br&amp;gt;1.423177&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.60486&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;20.0573&lt;br /&gt;
| [[Image:4x8r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;8-bit&lt;br /&gt;
| -32/256&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 162/256&amp;lt;br&amp;gt;0.6328125&lt;br /&gt;
| 376/256&amp;lt;br&amp;gt;1.46875&lt;br /&gt;
| 357/256&amp;lt;br&amp;gt;1.39453125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.60104&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;21.4037&lt;br /&gt;
| [[Image:4x8rd_8bit.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;7-bit&lt;br /&gt;
| -32/128&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| 82/128&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 184/128&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 186/128&amp;lt;br&amp;gt;1.453125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.59886&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;18.9411&lt;br /&gt;
| [[Image:4x8rd_7bit.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 92/64&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 93/64&amp;lt;br&amp;gt;1.453125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.59886&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;18.9411&lt;br /&gt;
| [[Image:4x8rd.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -8/32&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| 19/32&amp;lt;br&amp;gt;0.59375&lt;br /&gt;
| 52/32&amp;lt;br&amp;gt;1.625&lt;br /&gt;
| 47/32&amp;lt;br&amp;gt;1.46875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.56068&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;20.3279&lt;br /&gt;
| [[Image:4x8rd_5bit.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;max SBA&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 30/64&amp;lt;br&amp;gt;0.46875&lt;br /&gt;
| 136/64&amp;lt;br&amp;gt;2.125&lt;br /&gt;
| 91/64&amp;lt;br&amp;gt;1.421875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.23230&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;25.1934&lt;br /&gt;
| [[Image:4x8rd_sba.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 8x16 ==&lt;br /&gt;
&lt;br /&gt;
Optimal real-valued coefficients for V:&lt;br /&gt;
&lt;br /&gt;
p0 = -0.39460731547057293&lt;br /&gt;
&lt;br /&gt;
p1 = -0.33002212811740816&lt;br /&gt;
&lt;br /&gt;
p2 = -0.12391270981321137&lt;br /&gt;
&lt;br /&gt;
q0 = 0.822154737511288&lt;br /&gt;
&lt;br /&gt;
q1 = 0.632488694485779&lt;br /&gt;
&lt;br /&gt;
q2 = 0.40214668677553894&lt;br /&gt;
&lt;br /&gt;
CG = 9.56867&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -23/64&amp;lt;br&amp;gt;-0.359375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -6/64&amp;lt;br&amp;gt;-0.09375&lt;br /&gt;
| 48/64&amp;lt;br&amp;gt;0.75&lt;br /&gt;
| 34/64&amp;lt;br&amp;gt;0.53125&lt;br /&gt;
| 20/64&amp;lt;br&amp;gt;0.3125&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.60021&lt;br /&gt;
| [[Image:8x16.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -12/32&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -9/32&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -4/32&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 24/32&amp;lt;br&amp;gt;0.75&lt;br /&gt;
| 17/32&amp;lt;br&amp;gt;0.53125&lt;br /&gt;
| 10/32&amp;lt;br&amp;gt;&lt;br /&gt;
| 45/32&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 37/32&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 36/32&amp;lt;br&amp;gt;&lt;br /&gt;
| 38/32&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.59946&lt;br /&gt;
| [[Image:8x16_5bit.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -26/64&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -22/64&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 26/64&amp;lt;br&amp;gt;0.40625&lt;br /&gt;
| 11/8&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 879/768&amp;lt;br&amp;gt;1.14453125&lt;br /&gt;
| 1469/1280&amp;lt;br&amp;gt;1.14765625&lt;br /&gt;
| 275/224&amp;lt;br&amp;gt;1.2276785714285714&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56627&lt;br /&gt;
| [[Image:8x16r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;7-bit&lt;br /&gt;
| -48/128&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -45/128&amp;lt;br&amp;gt;-0.3515625&lt;br /&gt;
| -16/128&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 105/128&amp;lt;br&amp;gt;0.8203125&lt;br /&gt;
| 80/128&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 53/128&amp;lt;br&amp;gt;0.4140625&lt;br /&gt;
| 184/128&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 151/128&amp;lt;br&amp;gt;1.1796875&lt;br /&gt;
| 147/128&amp;lt;br&amp;gt;1.1484375&lt;br /&gt;
| 157/128&amp;lt;br&amp;gt;1.2265625&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56672&lt;br /&gt;
| [[Image:8x16rd_7bit.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -20/64&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -4/64&amp;lt;br&amp;gt;-0.0625&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 24/64&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 88/64&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56161&lt;br /&gt;
| [[Image:8x16rd.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -12/32&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -10/32&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -2/32&amp;lt;br&amp;gt;-0.0625&lt;br /&gt;
| 26/32&amp;lt;br&amp;gt;0.8125&lt;br /&gt;
| 20/32&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 12/32&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 48/32&amp;lt;br&amp;gt;1.5&lt;br /&gt;
| 38/32&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| 38/32&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| 38/32&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.5596&lt;br /&gt;
| [[Image:8x16rd_5bit.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 16x32 ==&lt;br /&gt;
&lt;br /&gt;
Best-known real-valued coefficients for V (R=t):&lt;br /&gt;
&lt;br /&gt;
p0 = -0.42111473798940136&lt;br /&gt;
&lt;br /&gt;
p1 = -0.4121736499899753&lt;br /&gt;
&lt;br /&gt;
p2 = -0.3350240707669929&lt;br /&gt;
&lt;br /&gt;
p3 = -0.3224547931861314&lt;br /&gt;
&lt;br /&gt;
p4 = -0.25883387978005545&lt;br /&gt;
&lt;br /&gt;
p5 = -0.20951913473498104&lt;br /&gt;
&lt;br /&gt;
p6 = -0.0598657149803332&lt;br /&gt;
&lt;br /&gt;
q0 = 0.9107782439906195&lt;br /&gt;
&lt;br /&gt;
q1 = 0.8109855829278226&lt;br /&gt;
&lt;br /&gt;
q2 = 0.715846584586721&lt;br /&gt;
&lt;br /&gt;
q3 = 0.6135951570714172&lt;br /&gt;
&lt;br /&gt;
q4 = 0.49846644853347627&lt;br /&gt;
&lt;br /&gt;
q5 = 0.3945215834922529&lt;br /&gt;
&lt;br /&gt;
q6 = 0.21822275136248082&lt;br /&gt;
&lt;br /&gt;
CG = 9.81157&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!p3&lt;br /&gt;
!p4&lt;br /&gt;
!p5&lt;br /&gt;
!p6&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!q3&lt;br /&gt;
!q4&lt;br /&gt;
!q5&lt;br /&gt;
!q6&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!s4&lt;br /&gt;
!s5&lt;br /&gt;
!s6&lt;br /&gt;
!s7&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -23/64&amp;lt;br&amp;gt;-0.359375&lt;br /&gt;
| -17/64&amp;lt;br&amp;gt;-0.265625&lt;br /&gt;
| -12/64&amp;lt;br&amp;gt;-0.1875&lt;br /&gt;
| -14/64&amp;lt;br&amp;gt;-0.21875&lt;br /&gt;
| -13/64&amp;lt;br&amp;gt;-0.203125&lt;br /&gt;
| -7/64&amp;lt;br&amp;gt;-0.109375&lt;br /&gt;
| 50/64&amp;lt;br&amp;gt;0.78125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 31/64&amp;lt;br&amp;gt;0.484375&lt;br /&gt;
| 22/64&amp;lt;br&amp;gt;0.34375&lt;br /&gt;
| 18/64&amp;lt;br&amp;gt;0.28125&lt;br /&gt;
| 16/64&amp;lt;br&amp;gt;0.25&lt;br /&gt;
| 11/64&amp;lt;br&amp;gt;0.171875&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 71/64&amp;lt;br&amp;gt;1.109375&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.89338&lt;br /&gt;
| [[Image:16x32.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -26/64&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -27/64&amp;lt;br&amp;gt;-0.421875&lt;br /&gt;
| -22/64&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| -14/64&amp;lt;br&amp;gt;-0.21875&lt;br /&gt;
| -5/64&amp;lt;br&amp;gt;-0.078125&lt;br /&gt;
| 58/64&amp;lt;br&amp;gt;0.90625&lt;br /&gt;
| 52/64&amp;lt;br&amp;gt;0.8125&lt;br /&gt;
| 45/64&amp;lt;br&amp;gt;0.703125&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 31/64&amp;lt;br&amp;gt;0.484375&lt;br /&gt;
| 23/64&amp;lt;br&amp;gt;0.359375&lt;br /&gt;
| 13/64&amp;lt;br&amp;gt;0.203125&lt;br /&gt;
| 3/2&amp;lt;br&amp;gt;1.5&lt;br /&gt;
| 77/64&amp;lt;br&amp;gt;1.203125&lt;br /&gt;
| 77/64&amp;lt;br&amp;gt;1.203125&lt;br /&gt;
| 1105/896&amp;lt;br&amp;gt;1.23326&lt;br /&gt;
| 218/192&amp;lt;br&amp;gt;1.135417&lt;br /&gt;
| 197/176&amp;lt;br&amp;gt;1.119318&lt;br /&gt;
| 1919/1664&amp;lt;br&amp;gt;1.153245&lt;br /&gt;
| 4351/3840&amp;lt;br&amp;gt;1.133073&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.79398&lt;br /&gt;
| [[Image:16x32r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -32/64&amp;lt;br&amp;gt;-0.5&lt;br /&gt;
| -28/64&amp;lt;br&amp;gt;-0.4375&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -32/64&amp;lt;br&amp;gt;-0.5&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -13/64&amp;lt;br&amp;gt;-0.203125&lt;br /&gt;
| -2/64&amp;lt;br&amp;gt;-0.03125&lt;br /&gt;
| 59/64&amp;lt;br&amp;gt;0.921875&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 46/64&amp;lt;br&amp;gt;0.71875&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 35/64&amp;lt;br&amp;gt;0.546875&lt;br /&gt;
| 24/64&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 12/64&amp;lt;br&amp;gt;0.1875&lt;br /&gt;
| 80/64&amp;lt;br&amp;gt;1.25&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 68/64&amp;lt;br&amp;gt;1.0625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 70/64&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.78294&lt;br /&gt;
| [[Image:16x32rd.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Type-IV Coding Gain ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!4x8&lt;br /&gt;
!4x8 Ramp&lt;br /&gt;
!8x16&lt;br /&gt;
!8x16 Ramp&lt;br /&gt;
!16x32&lt;br /&gt;
!16x32 Ramp&lt;br /&gt;
|-&lt;br /&gt;
|Real Valued&lt;br /&gt;
|8.6349&lt;br /&gt;
|8.60603&lt;br /&gt;
|9.6005&lt;br /&gt;
|9.56867&lt;br /&gt;
|9.9057&lt;br /&gt;
|9.81157&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (8-bit)&lt;br /&gt;
|&lt;br /&gt;
|8.60104&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|&lt;br /&gt;
|0.00499&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (7-bit)&lt;br /&gt;
|&lt;br /&gt;
|8.59886&lt;br /&gt;
|&lt;br /&gt;
|9.56672&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|&lt;br /&gt;
|0.00717&lt;br /&gt;
|&lt;br /&gt;
|0.00195&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (6-bit)&lt;br /&gt;
|8.63473&lt;br /&gt;
|8.59886&lt;br /&gt;
|9.60021&lt;br /&gt;
|9.56161&lt;br /&gt;
|9.89338&lt;br /&gt;
|9.78294&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|0.00017&lt;br /&gt;
|0.00717&lt;br /&gt;
|0.00029&lt;br /&gt;
|0.00706&lt;br /&gt;
|0.01232&lt;br /&gt;
|0.02863&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (5-bit)&lt;br /&gt;
|8.63409&lt;br /&gt;
|8.56068&lt;br /&gt;
|9.59946&lt;br /&gt;
|9.5596&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|0.00081&lt;br /&gt;
|0.04535&lt;br /&gt;
|0.00104&lt;br /&gt;
|0.00907&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 8x16 Type-III ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -25/64&amp;lt;br&amp;gt;-0.390625&lt;br /&gt;
| -20/64&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -7/64&amp;lt;br&amp;gt;-0.109375&lt;br /&gt;
| 49/64&amp;lt;br&amp;gt;0.765625&lt;br /&gt;
| 35/64&amp;lt;br&amp;gt;0.546875&lt;br /&gt;
| 21/64&amp;lt;br&amp;gt;0.328125&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.6112&lt;br /&gt;
| [[Image:8x16_type3.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -13/32&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -11/32&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -4/32&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 25/32&amp;lt;br&amp;gt;0.78125&lt;br /&gt;
| 18/32&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 11/32&amp;lt;br&amp;gt;0.34375&lt;br /&gt;
| 45/32&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 36/32&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 36/32&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 38/32&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.61048&lt;br /&gt;
| [[Image:8x16_type3_5bit.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 16x32 Type-III ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!p3&lt;br /&gt;
!p4&lt;br /&gt;
!p5&lt;br /&gt;
!p6&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!q3&lt;br /&gt;
!q4&lt;br /&gt;
!q5&lt;br /&gt;
!q6&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!s4&lt;br /&gt;
!s5&lt;br /&gt;
!s6&lt;br /&gt;
!s7&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -30/64&amp;lt;br&amp;gt;-0.46875&lt;br /&gt;
| -35/64&amp;lt;br&amp;gt;-0.546875&lt;br /&gt;
| -31/64&amp;lt;br&amp;gt;-0.484375&lt;br /&gt;
| -29/64&amp;lt;br&amp;gt;-0.453125&lt;br /&gt;
| -25/64&amp;lt;br&amp;gt;-0.390625&lt;br /&gt;
| -19/64&amp;lt;br&amp;gt;-0.296875&lt;br /&gt;
| -10/64&amp;lt;br&amp;gt;-0.15625&lt;br /&gt;
| 54/64&amp;lt;br&amp;gt;0.84375&lt;br /&gt;
| 45/64&amp;lt;br&amp;gt;0.703125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 32/64&amp;lt;br&amp;gt;0.5&lt;br /&gt;
| 25/64&amp;lt;br&amp;gt;0.390625&lt;br /&gt;
| 17/64&amp;lt;br&amp;gt;0.265625&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 70/64&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| 69/64&amp;lt;br&amp;gt;1.078125&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 68/64&amp;lt;br&amp;gt;1.0625&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.94127&lt;br /&gt;
| [[Image:16x32_type3_6bit.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -15/32&amp;lt;br&amp;gt;-0.46875&lt;br /&gt;
| -17/32&amp;lt;br&amp;gt;-0.53125&lt;br /&gt;
| -14/32&amp;lt;br&amp;gt;-0.4375&lt;br /&gt;
| -12/32&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -9/32&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -5/32&amp;lt;br&amp;gt;-0.15625&lt;br /&gt;
| 0/32&amp;lt;br&amp;gt;0.0&lt;br /&gt;
| 27/32&amp;lt;br&amp;gt;0.84375&lt;br /&gt;
| 23/32&amp;lt;br&amp;gt;0.71875&lt;br /&gt;
| 20/32&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 17/32&amp;lt;br&amp;gt;0.53125&lt;br /&gt;
| 14/32&amp;lt;br&amp;gt;0.4375&lt;br /&gt;
| 9/32&amp;lt;br&amp;gt;0.28125&lt;br /&gt;
| 3/32&amp;lt;br&amp;gt;0.09375&lt;br /&gt;
| 45/32&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 35/32&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| 35/32&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| 34/32&amp;lt;br&amp;gt;1.0625&lt;br /&gt;
| 34/32&amp;lt;br&amp;gt;1.0625&lt;br /&gt;
| 35/32&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| 36/32&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 33/32&amp;lt;br&amp;gt;1.03125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.93998&lt;br /&gt;
| [[Image:16x32_type3_5bit.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Type-III Coding Gain ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!4x8&lt;br /&gt;
!8x16&lt;br /&gt;
!16x32&lt;br /&gt;
|-&lt;br /&gt;
|Real Valued&lt;br /&gt;
|8.6349&lt;br /&gt;
|9.6115&lt;br /&gt;
|9.9496&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (6-bit)&lt;br /&gt;
|8.63473&lt;br /&gt;
|9.6112&lt;br /&gt;
|9.94127&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|0.00017&lt;br /&gt;
|0.00030&lt;br /&gt;
|0.00833&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (5-bit)&lt;br /&gt;
|8.63409&lt;br /&gt;
|9.61048&lt;br /&gt;
|9.93998&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|0.00081&lt;br /&gt;
|0.00102&lt;br /&gt;
|0.00962&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Unlord</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=TDLT&amp;diff=13773</id>
		<title>TDLT</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=TDLT&amp;diff=13773"/>
		<updated>2012-11-17T20:05:51Z</updated>

		<summary type="html">&lt;p&gt;Unlord: Updated Type-III 16x32 5-bit&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page holds the results of Time Domain Lapped Transform (TDLT) optimization problems looking for integer transform coefficients that provide optimal coding gain.  Wherever possible the assumptions are stated.  Later we should include testing against actual image data to verify the results (see test data [http://people.xiph.org/~tterribe/tmp/subset1-y4m.tar.gz here]).&lt;br /&gt;
&lt;br /&gt;
The coding gain objective used as the objective is taken from slide 13 of Tim&#039;s presentation [http://people.xiph.org/~tterribe/pubs/lca2012/auckland/intro_to_video1.pdf An Introduction to Video Coding]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;need figure with block matrix diagrams&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The free parameters are initially just the coefficients p_0,...,p_m,q_0,...,q_m where m=(n/2)-1.  We limit these to being dyadic rationals, e.g., x/2^d with d=6, between [-1,1].&lt;br /&gt;
&lt;br /&gt;
Given p&#039;s and q&#039;s and assuming a linear ramp constrains the s&#039;s.&lt;br /&gt;
 &lt;br /&gt;
== 4x8 ==&lt;br /&gt;
&lt;br /&gt;
Optimal real-valued coefficients for V:&lt;br /&gt;
&lt;br /&gt;
p0 = -0.18117338915051454&lt;br /&gt;
&lt;br /&gt;
q0 = 0.6331818230771687&lt;br /&gt;
&lt;br /&gt;
CG = 8.60603&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!q0&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!CG&lt;br /&gt;
!SBA&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -11/64&amp;lt;br&amp;gt;-0.171875&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 91/64&amp;lt;br&amp;gt;1.421875&lt;br /&gt;
| 85/64&amp;lt;br&amp;gt;1.328125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.63473&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;22.0331&lt;br /&gt;
| [[Image:4x8.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -5/32&amp;lt;br&amp;gt;-0.15625&lt;br /&gt;
| 18/32&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 46/32&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 42/32&amp;lt;br&amp;gt;1.3125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.63409&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;22.5715&lt;br /&gt;
| [[Image:4x8_5bit.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -12/64&amp;lt;br&amp;gt;-0.1875&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 92/64&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 1093/768&amp;lt;br&amp;gt;1.423177&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.60486&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;20.0573&lt;br /&gt;
| [[Image:4x8r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;8-bit&lt;br /&gt;
| -32/256&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 162/256&amp;lt;br&amp;gt;0.6328125&lt;br /&gt;
| 376/256&amp;lt;br&amp;gt;1.46875&lt;br /&gt;
| 357/256&amp;lt;br&amp;gt;1.39453125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.60104&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;21.4037&lt;br /&gt;
| [[Image:4x8rd_8bit.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;7-bit&lt;br /&gt;
| -32/128&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| 82/128&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 184/128&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 186/128&amp;lt;br&amp;gt;1.453125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.59886&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;18.9411&lt;br /&gt;
| [[Image:4x8rd_7bit.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 92/64&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 93/64&amp;lt;br&amp;gt;1.453125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.59886&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;18.9411&lt;br /&gt;
| [[Image:4x8rd.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -8/32&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| 19/32&amp;lt;br&amp;gt;0.59375&lt;br /&gt;
| 52/32&amp;lt;br&amp;gt;1.625&lt;br /&gt;
| 47/32&amp;lt;br&amp;gt;1.46875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.56068&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;20.3279&lt;br /&gt;
| [[Image:4x8rd_5bit.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;max SBA&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 30/64&amp;lt;br&amp;gt;0.46875&lt;br /&gt;
| 136/64&amp;lt;br&amp;gt;2.125&lt;br /&gt;
| 91/64&amp;lt;br&amp;gt;1.421875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.23230&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;25.1934&lt;br /&gt;
| [[Image:4x8rd_sba.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 8x16 ==&lt;br /&gt;
&lt;br /&gt;
Optimal real-valued coefficients for V:&lt;br /&gt;
&lt;br /&gt;
p0 = -0.39460731547057293&lt;br /&gt;
&lt;br /&gt;
p1 = -0.33002212811740816&lt;br /&gt;
&lt;br /&gt;
p2 = -0.12391270981321137&lt;br /&gt;
&lt;br /&gt;
q0 = 0.822154737511288&lt;br /&gt;
&lt;br /&gt;
q1 = 0.632488694485779&lt;br /&gt;
&lt;br /&gt;
q2 = 0.40214668677553894&lt;br /&gt;
&lt;br /&gt;
CG = 9.56867&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -23/64&amp;lt;br&amp;gt;-0.359375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -6/64&amp;lt;br&amp;gt;-0.09375&lt;br /&gt;
| 48/64&amp;lt;br&amp;gt;0.75&lt;br /&gt;
| 34/64&amp;lt;br&amp;gt;0.53125&lt;br /&gt;
| 20/64&amp;lt;br&amp;gt;0.3125&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.60021&lt;br /&gt;
| [[Image:8x16.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -12/32&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -9/32&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -4/32&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 24/32&amp;lt;br&amp;gt;0.75&lt;br /&gt;
| 17/32&amp;lt;br&amp;gt;0.53125&lt;br /&gt;
| 10/32&amp;lt;br&amp;gt;&lt;br /&gt;
| 45/32&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 37/32&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 36/32&amp;lt;br&amp;gt;&lt;br /&gt;
| 38/32&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.59946&lt;br /&gt;
| [[Image:8x16_5bit.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -26/64&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -22/64&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 26/64&amp;lt;br&amp;gt;0.40625&lt;br /&gt;
| 11/8&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 879/768&amp;lt;br&amp;gt;1.14453125&lt;br /&gt;
| 1469/1280&amp;lt;br&amp;gt;1.14765625&lt;br /&gt;
| 275/224&amp;lt;br&amp;gt;1.2276785714285714&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56627&lt;br /&gt;
| [[Image:8x16r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;7-bit&lt;br /&gt;
| -48/128&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -45/128&amp;lt;br&amp;gt;-0.3515625&lt;br /&gt;
| -16/128&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 105/128&amp;lt;br&amp;gt;0.8203125&lt;br /&gt;
| 80/128&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 53/128&amp;lt;br&amp;gt;0.4140625&lt;br /&gt;
| 184/128&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 151/128&amp;lt;br&amp;gt;1.1796875&lt;br /&gt;
| 147/128&amp;lt;br&amp;gt;1.1484375&lt;br /&gt;
| 157/128&amp;lt;br&amp;gt;1.2265625&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56672&lt;br /&gt;
| [[Image:8x16rd_7bit.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -20/64&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -4/64&amp;lt;br&amp;gt;-0.0625&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 24/64&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 88/64&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56161&lt;br /&gt;
| [[Image:8x16rd.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -12/32&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -10/32&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -2/32&amp;lt;br&amp;gt;-0.0625&lt;br /&gt;
| 26/32&amp;lt;br&amp;gt;0.8125&lt;br /&gt;
| 20/32&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 12/32&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 48/32&amp;lt;br&amp;gt;1.5&lt;br /&gt;
| 38/32&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| 38/32&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| 38/32&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.5596&lt;br /&gt;
| [[Image:8x16rd_5bit.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 16x32 ==&lt;br /&gt;
&lt;br /&gt;
Best-known real-valued coefficients for V (R=t):&lt;br /&gt;
&lt;br /&gt;
p0 = -0.42111473798940136&lt;br /&gt;
&lt;br /&gt;
p1 = -0.4121736499899753&lt;br /&gt;
&lt;br /&gt;
p2 = -0.3350240707669929&lt;br /&gt;
&lt;br /&gt;
p3 = -0.3224547931861314&lt;br /&gt;
&lt;br /&gt;
p4 = -0.25883387978005545&lt;br /&gt;
&lt;br /&gt;
p5 = -0.20951913473498104&lt;br /&gt;
&lt;br /&gt;
p6 = -0.0598657149803332&lt;br /&gt;
&lt;br /&gt;
q0 = 0.9107782439906195&lt;br /&gt;
&lt;br /&gt;
q1 = 0.8109855829278226&lt;br /&gt;
&lt;br /&gt;
q2 = 0.715846584586721&lt;br /&gt;
&lt;br /&gt;
q3 = 0.6135951570714172&lt;br /&gt;
&lt;br /&gt;
q4 = 0.49846644853347627&lt;br /&gt;
&lt;br /&gt;
q5 = 0.3945215834922529&lt;br /&gt;
&lt;br /&gt;
q6 = 0.21822275136248082&lt;br /&gt;
&lt;br /&gt;
CG = 9.81157&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!p3&lt;br /&gt;
!p4&lt;br /&gt;
!p5&lt;br /&gt;
!p6&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!q3&lt;br /&gt;
!q4&lt;br /&gt;
!q5&lt;br /&gt;
!q6&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!s4&lt;br /&gt;
!s5&lt;br /&gt;
!s6&lt;br /&gt;
!s7&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -23/64&amp;lt;br&amp;gt;-0.359375&lt;br /&gt;
| -17/64&amp;lt;br&amp;gt;-0.265625&lt;br /&gt;
| -12/64&amp;lt;br&amp;gt;-0.1875&lt;br /&gt;
| -14/64&amp;lt;br&amp;gt;-0.21875&lt;br /&gt;
| -13/64&amp;lt;br&amp;gt;-0.203125&lt;br /&gt;
| -7/64&amp;lt;br&amp;gt;-0.109375&lt;br /&gt;
| 50/64&amp;lt;br&amp;gt;0.78125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 31/64&amp;lt;br&amp;gt;0.484375&lt;br /&gt;
| 22/64&amp;lt;br&amp;gt;0.34375&lt;br /&gt;
| 18/64&amp;lt;br&amp;gt;0.28125&lt;br /&gt;
| 16/64&amp;lt;br&amp;gt;0.25&lt;br /&gt;
| 11/64&amp;lt;br&amp;gt;0.171875&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 71/64&amp;lt;br&amp;gt;1.109375&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.89338&lt;br /&gt;
| [[Image:16x32.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -26/64&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -27/64&amp;lt;br&amp;gt;-0.421875&lt;br /&gt;
| -22/64&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| -14/64&amp;lt;br&amp;gt;-0.21875&lt;br /&gt;
| -5/64&amp;lt;br&amp;gt;-0.078125&lt;br /&gt;
| 58/64&amp;lt;br&amp;gt;0.90625&lt;br /&gt;
| 52/64&amp;lt;br&amp;gt;0.8125&lt;br /&gt;
| 45/64&amp;lt;br&amp;gt;0.703125&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 31/64&amp;lt;br&amp;gt;0.484375&lt;br /&gt;
| 23/64&amp;lt;br&amp;gt;0.359375&lt;br /&gt;
| 13/64&amp;lt;br&amp;gt;0.203125&lt;br /&gt;
| 3/2&amp;lt;br&amp;gt;1.5&lt;br /&gt;
| 77/64&amp;lt;br&amp;gt;1.203125&lt;br /&gt;
| 77/64&amp;lt;br&amp;gt;1.203125&lt;br /&gt;
| 1105/896&amp;lt;br&amp;gt;1.23326&lt;br /&gt;
| 218/192&amp;lt;br&amp;gt;1.135417&lt;br /&gt;
| 197/176&amp;lt;br&amp;gt;1.119318&lt;br /&gt;
| 1919/1664&amp;lt;br&amp;gt;1.153245&lt;br /&gt;
| 4351/3840&amp;lt;br&amp;gt;1.133073&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.79398&lt;br /&gt;
| [[Image:16x32r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -32/64&amp;lt;br&amp;gt;-0.5&lt;br /&gt;
| -28/64&amp;lt;br&amp;gt;-0.4375&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -32/64&amp;lt;br&amp;gt;-0.5&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -13/64&amp;lt;br&amp;gt;-0.203125&lt;br /&gt;
| -2/64&amp;lt;br&amp;gt;-0.03125&lt;br /&gt;
| 59/64&amp;lt;br&amp;gt;0.921875&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 46/64&amp;lt;br&amp;gt;0.71875&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 35/64&amp;lt;br&amp;gt;0.546875&lt;br /&gt;
| 24/64&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 12/64&amp;lt;br&amp;gt;0.1875&lt;br /&gt;
| 80/64&amp;lt;br&amp;gt;1.25&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 68/64&amp;lt;br&amp;gt;1.0625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 70/64&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.78294&lt;br /&gt;
| [[Image:16x32rd.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Type-IV Coding Gain ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!4x8&lt;br /&gt;
!4x8 Ramp&lt;br /&gt;
!8x16&lt;br /&gt;
!8x16 Ramp&lt;br /&gt;
!16x32&lt;br /&gt;
!16x32 Ramp&lt;br /&gt;
|-&lt;br /&gt;
|Real Valued&lt;br /&gt;
|8.6349&lt;br /&gt;
|8.60603&lt;br /&gt;
|9.6005&lt;br /&gt;
|9.56867&lt;br /&gt;
|9.9057&lt;br /&gt;
|9.81157&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (8-bit)&lt;br /&gt;
|&lt;br /&gt;
|8.60104&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|&lt;br /&gt;
|0.00499&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (7-bit)&lt;br /&gt;
|&lt;br /&gt;
|8.59886&lt;br /&gt;
|&lt;br /&gt;
|9.56672&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|&lt;br /&gt;
|0.00717&lt;br /&gt;
|&lt;br /&gt;
|0.00195&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (6-bit)&lt;br /&gt;
|8.63473&lt;br /&gt;
|8.59886&lt;br /&gt;
|9.60021&lt;br /&gt;
|9.56161&lt;br /&gt;
|9.89338&lt;br /&gt;
|9.78294&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|0.00017&lt;br /&gt;
|0.00717&lt;br /&gt;
|0.00029&lt;br /&gt;
|0.00706&lt;br /&gt;
|0.01232&lt;br /&gt;
|0.02863&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (5-bit)&lt;br /&gt;
|8.63409&lt;br /&gt;
|8.56068&lt;br /&gt;
|9.59946&lt;br /&gt;
|9.5596&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|0.00081&lt;br /&gt;
|0.04535&lt;br /&gt;
|0.00104&lt;br /&gt;
|0.00907&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 8x16 Type-III ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -25/64&amp;lt;br&amp;gt;-0.390625&lt;br /&gt;
| -20/64&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -7/64&amp;lt;br&amp;gt;-0.109375&lt;br /&gt;
| 49/64&amp;lt;br&amp;gt;0.765625&lt;br /&gt;
| 35/64&amp;lt;br&amp;gt;0.546875&lt;br /&gt;
| 21/64&amp;lt;br&amp;gt;0.328125&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.6112&lt;br /&gt;
| [[Image:8x16_type3.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -13/32&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -11/32&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -4/32&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 25/32&amp;lt;br&amp;gt;0.78125&lt;br /&gt;
| 18/32&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 11/32&amp;lt;br&amp;gt;0.34375&lt;br /&gt;
| 45/32&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 36/32&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 36/32&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 38/32&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.61048&lt;br /&gt;
| [[Image:8x16_type3_5bit.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 16x32 Type-III ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!p3&lt;br /&gt;
!p4&lt;br /&gt;
!p5&lt;br /&gt;
!p6&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!q3&lt;br /&gt;
!q4&lt;br /&gt;
!q5&lt;br /&gt;
!q6&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!s4&lt;br /&gt;
!s5&lt;br /&gt;
!s6&lt;br /&gt;
!s7&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -30/64&amp;lt;br&amp;gt;-0.46875&lt;br /&gt;
| -35/64&amp;lt;br&amp;gt;-0.546875&lt;br /&gt;
| -31/64&amp;lt;br&amp;gt;-0.484375&lt;br /&gt;
| -29/64&amp;lt;br&amp;gt;-0.453125&lt;br /&gt;
| -25/64&amp;lt;br&amp;gt;-0.390625&lt;br /&gt;
| -19/64&amp;lt;br&amp;gt;-0.296875&lt;br /&gt;
| -10/64&amp;lt;br&amp;gt;-0.15625&lt;br /&gt;
| 54/64&amp;lt;br&amp;gt;0.84375&lt;br /&gt;
| 45/64&amp;lt;br&amp;gt;0.703125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 32/64&amp;lt;br&amp;gt;0.5&lt;br /&gt;
| 25/64&amp;lt;br&amp;gt;0.390625&lt;br /&gt;
| 17/64&amp;lt;br&amp;gt;0.265625&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 70/64&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| 69/64&amp;lt;br&amp;gt;1.078125&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 68/64&amp;lt;br&amp;gt;1.0625&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.94127&lt;br /&gt;
| [[Image:16x32_type3_6bit.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -15/32&amp;lt;br&amp;gt;-0.46875&lt;br /&gt;
| -17/32&amp;lt;br&amp;gt;-0.53125&lt;br /&gt;
| -14/32&amp;lt;br&amp;gt;-0.4375&lt;br /&gt;
| -12/32&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -9/32&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -4/32&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 0/32&amp;lt;br&amp;gt;0.0&lt;br /&gt;
| 27/32&amp;lt;br&amp;gt;0.84375&lt;br /&gt;
| 23/32&amp;lt;br&amp;gt;0.71875&lt;br /&gt;
| 20/32&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 17/32&amp;lt;br&amp;gt;0.53125&lt;br /&gt;
| 14/32&amp;lt;br&amp;gt;0.4375&lt;br /&gt;
| 9/32&amp;lt;br&amp;gt;0.28125&lt;br /&gt;
| 2/32&amp;lt;br&amp;gt;0.0625&lt;br /&gt;
| 45/32&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 35/32&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| 35/32&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| 34/32&amp;lt;br&amp;gt;1.0625&lt;br /&gt;
| 34/32&amp;lt;br&amp;gt;1.0625&lt;br /&gt;
| 35/32&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| 36/32&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 33/32&amp;lt;br&amp;gt;1.03125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.93815&lt;br /&gt;
| [[Image:16x32_type3_5bit.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Type-III Coding Gain ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!4x8&lt;br /&gt;
!8x16&lt;br /&gt;
!16x32&lt;br /&gt;
|-&lt;br /&gt;
|Real Valued&lt;br /&gt;
|8.6349&lt;br /&gt;
|9.6115&lt;br /&gt;
|9.9496&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (6-bit)&lt;br /&gt;
|8.63473&lt;br /&gt;
|9.6112&lt;br /&gt;
|9.94127&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|0.00017&lt;br /&gt;
|0.00030&lt;br /&gt;
|0.00833&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (5-bit)&lt;br /&gt;
|8.63409&lt;br /&gt;
|9.61048&lt;br /&gt;
|9.93815&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|0.00081&lt;br /&gt;
|0.00102&lt;br /&gt;
|0.01145&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Unlord</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=TDLT&amp;diff=13772</id>
		<title>TDLT</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=TDLT&amp;diff=13772"/>
		<updated>2012-11-17T19:39:23Z</updated>

		<summary type="html">&lt;p&gt;Unlord: Updating Type-IV 8x16 5-bit&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page holds the results of Time Domain Lapped Transform (TDLT) optimization problems looking for integer transform coefficients that provide optimal coding gain.  Wherever possible the assumptions are stated.  Later we should include testing against actual image data to verify the results (see test data [http://people.xiph.org/~tterribe/tmp/subset1-y4m.tar.gz here]).&lt;br /&gt;
&lt;br /&gt;
The coding gain objective used as the objective is taken from slide 13 of Tim&#039;s presentation [http://people.xiph.org/~tterribe/pubs/lca2012/auckland/intro_to_video1.pdf An Introduction to Video Coding]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;need figure with block matrix diagrams&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The free parameters are initially just the coefficients p_0,...,p_m,q_0,...,q_m where m=(n/2)-1.  We limit these to being dyadic rationals, e.g., x/2^d with d=6, between [-1,1].&lt;br /&gt;
&lt;br /&gt;
Given p&#039;s and q&#039;s and assuming a linear ramp constrains the s&#039;s.&lt;br /&gt;
 &lt;br /&gt;
== 4x8 ==&lt;br /&gt;
&lt;br /&gt;
Optimal real-valued coefficients for V:&lt;br /&gt;
&lt;br /&gt;
p0 = -0.18117338915051454&lt;br /&gt;
&lt;br /&gt;
q0 = 0.6331818230771687&lt;br /&gt;
&lt;br /&gt;
CG = 8.60603&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!q0&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!CG&lt;br /&gt;
!SBA&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -11/64&amp;lt;br&amp;gt;-0.171875&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 91/64&amp;lt;br&amp;gt;1.421875&lt;br /&gt;
| 85/64&amp;lt;br&amp;gt;1.328125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.63473&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;22.0331&lt;br /&gt;
| [[Image:4x8.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -5/32&amp;lt;br&amp;gt;-0.15625&lt;br /&gt;
| 18/32&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 46/32&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 42/32&amp;lt;br&amp;gt;1.3125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.63409&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;22.5715&lt;br /&gt;
| [[Image:4x8_5bit.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -12/64&amp;lt;br&amp;gt;-0.1875&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 92/64&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 1093/768&amp;lt;br&amp;gt;1.423177&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.60486&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;20.0573&lt;br /&gt;
| [[Image:4x8r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;8-bit&lt;br /&gt;
| -32/256&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 162/256&amp;lt;br&amp;gt;0.6328125&lt;br /&gt;
| 376/256&amp;lt;br&amp;gt;1.46875&lt;br /&gt;
| 357/256&amp;lt;br&amp;gt;1.39453125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.60104&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;21.4037&lt;br /&gt;
| [[Image:4x8rd_8bit.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;7-bit&lt;br /&gt;
| -32/128&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| 82/128&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 184/128&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 186/128&amp;lt;br&amp;gt;1.453125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.59886&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;18.9411&lt;br /&gt;
| [[Image:4x8rd_7bit.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 92/64&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 93/64&amp;lt;br&amp;gt;1.453125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.59886&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;18.9411&lt;br /&gt;
| [[Image:4x8rd.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -8/32&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| 19/32&amp;lt;br&amp;gt;0.59375&lt;br /&gt;
| 52/32&amp;lt;br&amp;gt;1.625&lt;br /&gt;
| 47/32&amp;lt;br&amp;gt;1.46875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.56068&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;20.3279&lt;br /&gt;
| [[Image:4x8rd_5bit.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;max SBA&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 30/64&amp;lt;br&amp;gt;0.46875&lt;br /&gt;
| 136/64&amp;lt;br&amp;gt;2.125&lt;br /&gt;
| 91/64&amp;lt;br&amp;gt;1.421875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.23230&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;25.1934&lt;br /&gt;
| [[Image:4x8rd_sba.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 8x16 ==&lt;br /&gt;
&lt;br /&gt;
Optimal real-valued coefficients for V:&lt;br /&gt;
&lt;br /&gt;
p0 = -0.39460731547057293&lt;br /&gt;
&lt;br /&gt;
p1 = -0.33002212811740816&lt;br /&gt;
&lt;br /&gt;
p2 = -0.12391270981321137&lt;br /&gt;
&lt;br /&gt;
q0 = 0.822154737511288&lt;br /&gt;
&lt;br /&gt;
q1 = 0.632488694485779&lt;br /&gt;
&lt;br /&gt;
q2 = 0.40214668677553894&lt;br /&gt;
&lt;br /&gt;
CG = 9.56867&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -23/64&amp;lt;br&amp;gt;-0.359375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -6/64&amp;lt;br&amp;gt;-0.09375&lt;br /&gt;
| 48/64&amp;lt;br&amp;gt;0.75&lt;br /&gt;
| 34/64&amp;lt;br&amp;gt;0.53125&lt;br /&gt;
| 20/64&amp;lt;br&amp;gt;0.3125&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.60021&lt;br /&gt;
| [[Image:8x16.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -12/32&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -9/32&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -4/32&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 24/32&amp;lt;br&amp;gt;0.75&lt;br /&gt;
| 17/32&amp;lt;br&amp;gt;0.53125&lt;br /&gt;
| 10/32&amp;lt;br&amp;gt;&lt;br /&gt;
| 45/32&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 37/32&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 36/32&amp;lt;br&amp;gt;&lt;br /&gt;
| 38/32&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.59946&lt;br /&gt;
| [[Image:8x16_5bit.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -26/64&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -22/64&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 26/64&amp;lt;br&amp;gt;0.40625&lt;br /&gt;
| 11/8&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 879/768&amp;lt;br&amp;gt;1.14453125&lt;br /&gt;
| 1469/1280&amp;lt;br&amp;gt;1.14765625&lt;br /&gt;
| 275/224&amp;lt;br&amp;gt;1.2276785714285714&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56627&lt;br /&gt;
| [[Image:8x16r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;7-bit&lt;br /&gt;
| -48/128&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -45/128&amp;lt;br&amp;gt;-0.3515625&lt;br /&gt;
| -16/128&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 105/128&amp;lt;br&amp;gt;0.8203125&lt;br /&gt;
| 80/128&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 53/128&amp;lt;br&amp;gt;0.4140625&lt;br /&gt;
| 184/128&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 151/128&amp;lt;br&amp;gt;1.1796875&lt;br /&gt;
| 147/128&amp;lt;br&amp;gt;1.1484375&lt;br /&gt;
| 157/128&amp;lt;br&amp;gt;1.2265625&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56672&lt;br /&gt;
| [[Image:8x16rd_7bit.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -20/64&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -4/64&amp;lt;br&amp;gt;-0.0625&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 24/64&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 88/64&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56161&lt;br /&gt;
| [[Image:8x16rd.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -12/32&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -10/32&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -2/32&amp;lt;br&amp;gt;-0.0625&lt;br /&gt;
| 26/32&amp;lt;br&amp;gt;0.8125&lt;br /&gt;
| 20/32&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 12/32&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 48/32&amp;lt;br&amp;gt;1.5&lt;br /&gt;
| 38/32&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| 38/32&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| 38/32&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.5596&lt;br /&gt;
| [[Image:8x16rd_5bit.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 16x32 ==&lt;br /&gt;
&lt;br /&gt;
Best-known real-valued coefficients for V (R=t):&lt;br /&gt;
&lt;br /&gt;
p0 = -0.42111473798940136&lt;br /&gt;
&lt;br /&gt;
p1 = -0.4121736499899753&lt;br /&gt;
&lt;br /&gt;
p2 = -0.3350240707669929&lt;br /&gt;
&lt;br /&gt;
p3 = -0.3224547931861314&lt;br /&gt;
&lt;br /&gt;
p4 = -0.25883387978005545&lt;br /&gt;
&lt;br /&gt;
p5 = -0.20951913473498104&lt;br /&gt;
&lt;br /&gt;
p6 = -0.0598657149803332&lt;br /&gt;
&lt;br /&gt;
q0 = 0.9107782439906195&lt;br /&gt;
&lt;br /&gt;
q1 = 0.8109855829278226&lt;br /&gt;
&lt;br /&gt;
q2 = 0.715846584586721&lt;br /&gt;
&lt;br /&gt;
q3 = 0.6135951570714172&lt;br /&gt;
&lt;br /&gt;
q4 = 0.49846644853347627&lt;br /&gt;
&lt;br /&gt;
q5 = 0.3945215834922529&lt;br /&gt;
&lt;br /&gt;
q6 = 0.21822275136248082&lt;br /&gt;
&lt;br /&gt;
CG = 9.81157&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!p3&lt;br /&gt;
!p4&lt;br /&gt;
!p5&lt;br /&gt;
!p6&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!q3&lt;br /&gt;
!q4&lt;br /&gt;
!q5&lt;br /&gt;
!q6&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!s4&lt;br /&gt;
!s5&lt;br /&gt;
!s6&lt;br /&gt;
!s7&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -23/64&amp;lt;br&amp;gt;-0.359375&lt;br /&gt;
| -17/64&amp;lt;br&amp;gt;-0.265625&lt;br /&gt;
| -12/64&amp;lt;br&amp;gt;-0.1875&lt;br /&gt;
| -14/64&amp;lt;br&amp;gt;-0.21875&lt;br /&gt;
| -13/64&amp;lt;br&amp;gt;-0.203125&lt;br /&gt;
| -7/64&amp;lt;br&amp;gt;-0.109375&lt;br /&gt;
| 50/64&amp;lt;br&amp;gt;0.78125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 31/64&amp;lt;br&amp;gt;0.484375&lt;br /&gt;
| 22/64&amp;lt;br&amp;gt;0.34375&lt;br /&gt;
| 18/64&amp;lt;br&amp;gt;0.28125&lt;br /&gt;
| 16/64&amp;lt;br&amp;gt;0.25&lt;br /&gt;
| 11/64&amp;lt;br&amp;gt;0.171875&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 71/64&amp;lt;br&amp;gt;1.109375&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.89338&lt;br /&gt;
| [[Image:16x32.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -26/64&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -27/64&amp;lt;br&amp;gt;-0.421875&lt;br /&gt;
| -22/64&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| -14/64&amp;lt;br&amp;gt;-0.21875&lt;br /&gt;
| -5/64&amp;lt;br&amp;gt;-0.078125&lt;br /&gt;
| 58/64&amp;lt;br&amp;gt;0.90625&lt;br /&gt;
| 52/64&amp;lt;br&amp;gt;0.8125&lt;br /&gt;
| 45/64&amp;lt;br&amp;gt;0.703125&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 31/64&amp;lt;br&amp;gt;0.484375&lt;br /&gt;
| 23/64&amp;lt;br&amp;gt;0.359375&lt;br /&gt;
| 13/64&amp;lt;br&amp;gt;0.203125&lt;br /&gt;
| 3/2&amp;lt;br&amp;gt;1.5&lt;br /&gt;
| 77/64&amp;lt;br&amp;gt;1.203125&lt;br /&gt;
| 77/64&amp;lt;br&amp;gt;1.203125&lt;br /&gt;
| 1105/896&amp;lt;br&amp;gt;1.23326&lt;br /&gt;
| 218/192&amp;lt;br&amp;gt;1.135417&lt;br /&gt;
| 197/176&amp;lt;br&amp;gt;1.119318&lt;br /&gt;
| 1919/1664&amp;lt;br&amp;gt;1.153245&lt;br /&gt;
| 4351/3840&amp;lt;br&amp;gt;1.133073&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.79398&lt;br /&gt;
| [[Image:16x32r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -32/64&amp;lt;br&amp;gt;-0.5&lt;br /&gt;
| -28/64&amp;lt;br&amp;gt;-0.4375&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -32/64&amp;lt;br&amp;gt;-0.5&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -13/64&amp;lt;br&amp;gt;-0.203125&lt;br /&gt;
| -2/64&amp;lt;br&amp;gt;-0.03125&lt;br /&gt;
| 59/64&amp;lt;br&amp;gt;0.921875&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 46/64&amp;lt;br&amp;gt;0.71875&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 35/64&amp;lt;br&amp;gt;0.546875&lt;br /&gt;
| 24/64&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 12/64&amp;lt;br&amp;gt;0.1875&lt;br /&gt;
| 80/64&amp;lt;br&amp;gt;1.25&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 68/64&amp;lt;br&amp;gt;1.0625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 70/64&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.78294&lt;br /&gt;
| [[Image:16x32rd.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Type-IV Coding Gain ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!4x8&lt;br /&gt;
!4x8 Ramp&lt;br /&gt;
!8x16&lt;br /&gt;
!8x16 Ramp&lt;br /&gt;
!16x32&lt;br /&gt;
!16x32 Ramp&lt;br /&gt;
|-&lt;br /&gt;
|Real Valued&lt;br /&gt;
|8.6349&lt;br /&gt;
|8.60603&lt;br /&gt;
|9.6005&lt;br /&gt;
|9.56867&lt;br /&gt;
|9.9057&lt;br /&gt;
|9.81157&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (8-bit)&lt;br /&gt;
|&lt;br /&gt;
|8.60104&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|&lt;br /&gt;
|0.00499&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (7-bit)&lt;br /&gt;
|&lt;br /&gt;
|8.59886&lt;br /&gt;
|&lt;br /&gt;
|9.56672&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|&lt;br /&gt;
|0.00717&lt;br /&gt;
|&lt;br /&gt;
|0.00195&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (6-bit)&lt;br /&gt;
|8.63473&lt;br /&gt;
|8.59886&lt;br /&gt;
|9.60021&lt;br /&gt;
|9.56161&lt;br /&gt;
|9.89338&lt;br /&gt;
|9.78294&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|0.00017&lt;br /&gt;
|0.00717&lt;br /&gt;
|0.00029&lt;br /&gt;
|0.00706&lt;br /&gt;
|0.01232&lt;br /&gt;
|0.02863&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (5-bit)&lt;br /&gt;
|8.63409&lt;br /&gt;
|8.56068&lt;br /&gt;
|9.59946&lt;br /&gt;
|9.5596&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|0.00081&lt;br /&gt;
|0.04535&lt;br /&gt;
|0.00104&lt;br /&gt;
|0.00907&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 8x16 Type-III ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -25/64&amp;lt;br&amp;gt;-0.390625&lt;br /&gt;
| -20/64&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -7/64&amp;lt;br&amp;gt;-0.109375&lt;br /&gt;
| 49/64&amp;lt;br&amp;gt;0.765625&lt;br /&gt;
| 35/64&amp;lt;br&amp;gt;0.546875&lt;br /&gt;
| 21/64&amp;lt;br&amp;gt;0.328125&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.6112&lt;br /&gt;
| [[Image:8x16_type3.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -13/32&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -11/32&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -4/32&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 25/32&amp;lt;br&amp;gt;0.78125&lt;br /&gt;
| 18/32&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 11/32&amp;lt;br&amp;gt;0.34375&lt;br /&gt;
| 45/32&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 36/32&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 36/32&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 38/32&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.61048&lt;br /&gt;
| [[Image:8x16_type3_5bit.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 16x32 Type-III ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!p3&lt;br /&gt;
!p4&lt;br /&gt;
!p5&lt;br /&gt;
!p6&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!q3&lt;br /&gt;
!q4&lt;br /&gt;
!q5&lt;br /&gt;
!q6&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!s4&lt;br /&gt;
!s5&lt;br /&gt;
!s6&lt;br /&gt;
!s7&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -30/64&amp;lt;br&amp;gt;-0.46875&lt;br /&gt;
| -35/64&amp;lt;br&amp;gt;-0.546875&lt;br /&gt;
| -31/64&amp;lt;br&amp;gt;-0.484375&lt;br /&gt;
| -29/64&amp;lt;br&amp;gt;-0.453125&lt;br /&gt;
| -25/64&amp;lt;br&amp;gt;-0.390625&lt;br /&gt;
| -19/64&amp;lt;br&amp;gt;-0.296875&lt;br /&gt;
| -10/64&amp;lt;br&amp;gt;-0.15625&lt;br /&gt;
| 54/64&amp;lt;br&amp;gt;0.84375&lt;br /&gt;
| 45/64&amp;lt;br&amp;gt;0.703125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 32/64&amp;lt;br&amp;gt;0.5&lt;br /&gt;
| 25/64&amp;lt;br&amp;gt;0.390625&lt;br /&gt;
| 17/64&amp;lt;br&amp;gt;0.265625&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 70/64&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| 69/64&amp;lt;br&amp;gt;1.078125&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 68/64&amp;lt;br&amp;gt;1.0625&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.94127&lt;br /&gt;
| [[Image:16x32_type3_6bit.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -14/32&amp;lt;br&amp;gt;-0.4375&lt;br /&gt;
| -17/32&amp;lt;br&amp;gt;-0.53125&lt;br /&gt;
| -14/32&amp;lt;br&amp;gt;-0.4375&lt;br /&gt;
| -12/32&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -9/32&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -4/32&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 1/32&amp;lt;br&amp;gt;0.03125&lt;br /&gt;
| 27/32&amp;lt;br&amp;gt;0.84375&lt;br /&gt;
| 23/32&amp;lt;br&amp;gt;0.71875&lt;br /&gt;
| 20/32&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 17/32&amp;lt;br&amp;gt;0.53125&lt;br /&gt;
| 14/32&amp;lt;br&amp;gt;0.4375&lt;br /&gt;
| 9/32&amp;lt;br&amp;gt;0.28125&lt;br /&gt;
| 2/32&amp;lt;br&amp;gt;0.0625&lt;br /&gt;
| 46/32&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 35/32&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| 35/32&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| 34/32&amp;lt;br&amp;gt;1.0625&lt;br /&gt;
| 34/32&amp;lt;br&amp;gt;1.0625&lt;br /&gt;
| 35/32&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| 36/32&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 33/32&amp;lt;br&amp;gt;1.03125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.93502&lt;br /&gt;
| [[Image:16x32_type3_5bit.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Type-III Coding Gain ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!4x8&lt;br /&gt;
!8x16&lt;br /&gt;
!16x32&lt;br /&gt;
|-&lt;br /&gt;
|Real Valued&lt;br /&gt;
|8.6349&lt;br /&gt;
|9.6115&lt;br /&gt;
|9.9496&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (6-bit)&lt;br /&gt;
|8.63473&lt;br /&gt;
|9.6112&lt;br /&gt;
|9.94127&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|0.00017&lt;br /&gt;
|0.00030&lt;br /&gt;
|0.00833&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (5-bit)&lt;br /&gt;
|8.63409&lt;br /&gt;
|9.61048&lt;br /&gt;
|9.93502&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|0.00081&lt;br /&gt;
|0.00102&lt;br /&gt;
|0.01458&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Unlord</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=TDLT&amp;diff=13768</id>
		<title>TDLT</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=TDLT&amp;diff=13768"/>
		<updated>2012-11-15T19:47:41Z</updated>

		<summary type="html">&lt;p&gt;Unlord: Updating 5-bit 16x32 Type-III parameters&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page holds the results of Time Domain Lapped Transform (TDLT) optimization problems looking for integer transform coefficients that provide optimal coding gain.  Wherever possible the assumptions are stated.  Later we should include testing against actual image data to verify the results (see test data [http://people.xiph.org/~tterribe/tmp/subset1-y4m.tar.gz here]).&lt;br /&gt;
&lt;br /&gt;
The coding gain objective used as the objective is taken from slide 13 of Tim&#039;s presentation [http://people.xiph.org/~tterribe/pubs/lca2012/auckland/intro_to_video1.pdf An Introduction to Video Coding]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;need figure with block matrix diagrams&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The free parameters are initially just the coefficients p_0,...,p_m,q_0,...,q_m where m=(n/2)-1.  We limit these to being dyadic rationals, e.g., x/2^d with d=6, between [-1,1].&lt;br /&gt;
&lt;br /&gt;
Given p&#039;s and q&#039;s and assuming a linear ramp constrains the s&#039;s.&lt;br /&gt;
 &lt;br /&gt;
== 4x8 ==&lt;br /&gt;
&lt;br /&gt;
Optimal real-valued coefficients for V:&lt;br /&gt;
&lt;br /&gt;
p0 = -0.18117338915051454&lt;br /&gt;
&lt;br /&gt;
q0 = 0.6331818230771687&lt;br /&gt;
&lt;br /&gt;
CG = 8.60603&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!q0&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!CG&lt;br /&gt;
!SBA&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -11/64&amp;lt;br&amp;gt;-0.171875&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 91/64&amp;lt;br&amp;gt;1.421875&lt;br /&gt;
| 85/64&amp;lt;br&amp;gt;1.328125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.63473&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;22.0331&lt;br /&gt;
| [[Image:4x8.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -5/32&amp;lt;br&amp;gt;-0.15625&lt;br /&gt;
| 18/32&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 46/32&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 42/32&amp;lt;br&amp;gt;1.3125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.63409&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;22.5715&lt;br /&gt;
| [[Image:4x8_5bit.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -12/64&amp;lt;br&amp;gt;-0.1875&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 92/64&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 1093/768&amp;lt;br&amp;gt;1.423177&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.60486&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;20.0573&lt;br /&gt;
| [[Image:4x8r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;8-bit&lt;br /&gt;
| -32/256&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 162/256&amp;lt;br&amp;gt;0.6328125&lt;br /&gt;
| 376/256&amp;lt;br&amp;gt;1.46875&lt;br /&gt;
| 357/256&amp;lt;br&amp;gt;1.39453125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.60104&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;21.4037&lt;br /&gt;
| [[Image:4x8rd_8bit.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;7-bit&lt;br /&gt;
| -32/128&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| 82/128&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 184/128&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 186/128&amp;lt;br&amp;gt;1.453125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.59886&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;18.9411&lt;br /&gt;
| [[Image:4x8rd_7bit.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 92/64&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 93/64&amp;lt;br&amp;gt;1.453125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.59886&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;18.9411&lt;br /&gt;
| [[Image:4x8rd.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -8/32&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| 19/32&amp;lt;br&amp;gt;0.59375&lt;br /&gt;
| 52/32&amp;lt;br&amp;gt;1.625&lt;br /&gt;
| 47/32&amp;lt;br&amp;gt;1.46875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.56068&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;20.3279&lt;br /&gt;
| [[Image:4x8rd_5bit.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;max SBA&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 30/64&amp;lt;br&amp;gt;0.46875&lt;br /&gt;
| 136/64&amp;lt;br&amp;gt;2.125&lt;br /&gt;
| 91/64&amp;lt;br&amp;gt;1.421875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.23230&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;25.1934&lt;br /&gt;
| [[Image:4x8rd_sba.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 8x16 ==&lt;br /&gt;
&lt;br /&gt;
Optimal real-valued coefficients for V:&lt;br /&gt;
&lt;br /&gt;
p0 = -0.39460731547057293&lt;br /&gt;
&lt;br /&gt;
p1 = -0.33002212811740816&lt;br /&gt;
&lt;br /&gt;
p2 = -0.12391270981321137&lt;br /&gt;
&lt;br /&gt;
q0 = 0.822154737511288&lt;br /&gt;
&lt;br /&gt;
q1 = 0.632488694485779&lt;br /&gt;
&lt;br /&gt;
q2 = 0.40214668677553894&lt;br /&gt;
&lt;br /&gt;
CG = 9.56867&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -23/64&amp;lt;br&amp;gt;-0.359375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -6/64&amp;lt;br&amp;gt;-0.09375&lt;br /&gt;
| 48/64&amp;lt;br&amp;gt;0.75&lt;br /&gt;
| 34/64&amp;lt;br&amp;gt;0.53125&lt;br /&gt;
| 20/64&amp;lt;br&amp;gt;0.3125&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.60021&lt;br /&gt;
| [[Image:8x16.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -12/32&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -9/32&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -4/32&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 24/32&amp;lt;br&amp;gt;0.75&lt;br /&gt;
| 17/32&amp;lt;br&amp;gt;0.53125&lt;br /&gt;
| 11/32&amp;lt;br&amp;gt;0.34375&lt;br /&gt;
| 45/32&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 37/32&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 35/32&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| 38/32&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.59741&lt;br /&gt;
| [[Image:8x16_5bit.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -26/64&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -22/64&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 26/64&amp;lt;br&amp;gt;0.40625&lt;br /&gt;
| 11/8&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 879/768&amp;lt;br&amp;gt;1.14453125&lt;br /&gt;
| 1469/1280&amp;lt;br&amp;gt;1.14765625&lt;br /&gt;
| 275/224&amp;lt;br&amp;gt;1.2276785714285714&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56627&lt;br /&gt;
| [[Image:8x16r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;7-bit&lt;br /&gt;
| -48/128&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -45/128&amp;lt;br&amp;gt;-0.3515625&lt;br /&gt;
| -16/128&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 105/128&amp;lt;br&amp;gt;0.8203125&lt;br /&gt;
| 80/128&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 53/128&amp;lt;br&amp;gt;0.4140625&lt;br /&gt;
| 184/128&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 151/128&amp;lt;br&amp;gt;1.1796875&lt;br /&gt;
| 147/128&amp;lt;br&amp;gt;1.1484375&lt;br /&gt;
| 157/128&amp;lt;br&amp;gt;1.2265625&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56672&lt;br /&gt;
| [[Image:8x16rd_7bit.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -20/64&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -4/64&amp;lt;br&amp;gt;-0.0625&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 24/64&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 88/64&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56161&lt;br /&gt;
| [[Image:8x16rd.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -12/32&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -10/32&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -2/32&amp;lt;br&amp;gt;-0.0625&lt;br /&gt;
| 26/32&amp;lt;br&amp;gt;0.8125&lt;br /&gt;
| 20/32&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 12/32&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 48/32&amp;lt;br&amp;gt;1.5&lt;br /&gt;
| 38/32&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| 38/32&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| 38/32&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.5596&lt;br /&gt;
| [[Image:8x16rd_5bit.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 16x32 ==&lt;br /&gt;
&lt;br /&gt;
Best-known real-valued coefficients for V (R=t):&lt;br /&gt;
&lt;br /&gt;
p0 = -0.42111473798940136&lt;br /&gt;
&lt;br /&gt;
p1 = -0.4121736499899753&lt;br /&gt;
&lt;br /&gt;
p2 = -0.3350240707669929&lt;br /&gt;
&lt;br /&gt;
p3 = -0.3224547931861314&lt;br /&gt;
&lt;br /&gt;
p4 = -0.25883387978005545&lt;br /&gt;
&lt;br /&gt;
p5 = -0.20951913473498104&lt;br /&gt;
&lt;br /&gt;
p6 = -0.0598657149803332&lt;br /&gt;
&lt;br /&gt;
q0 = 0.9107782439906195&lt;br /&gt;
&lt;br /&gt;
q1 = 0.8109855829278226&lt;br /&gt;
&lt;br /&gt;
q2 = 0.715846584586721&lt;br /&gt;
&lt;br /&gt;
q3 = 0.6135951570714172&lt;br /&gt;
&lt;br /&gt;
q4 = 0.49846644853347627&lt;br /&gt;
&lt;br /&gt;
q5 = 0.3945215834922529&lt;br /&gt;
&lt;br /&gt;
q6 = 0.21822275136248082&lt;br /&gt;
&lt;br /&gt;
CG = 9.81157&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!p3&lt;br /&gt;
!p4&lt;br /&gt;
!p5&lt;br /&gt;
!p6&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!q3&lt;br /&gt;
!q4&lt;br /&gt;
!q5&lt;br /&gt;
!q6&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!s4&lt;br /&gt;
!s5&lt;br /&gt;
!s6&lt;br /&gt;
!s7&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -23/64&amp;lt;br&amp;gt;-0.359375&lt;br /&gt;
| -17/64&amp;lt;br&amp;gt;-0.265625&lt;br /&gt;
| -12/64&amp;lt;br&amp;gt;-0.1875&lt;br /&gt;
| -14/64&amp;lt;br&amp;gt;-0.21875&lt;br /&gt;
| -13/64&amp;lt;br&amp;gt;-0.203125&lt;br /&gt;
| -7/64&amp;lt;br&amp;gt;-0.109375&lt;br /&gt;
| 50/64&amp;lt;br&amp;gt;0.78125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 31/64&amp;lt;br&amp;gt;0.484375&lt;br /&gt;
| 22/64&amp;lt;br&amp;gt;0.34375&lt;br /&gt;
| 18/64&amp;lt;br&amp;gt;0.28125&lt;br /&gt;
| 16/64&amp;lt;br&amp;gt;0.25&lt;br /&gt;
| 11/64&amp;lt;br&amp;gt;0.171875&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 71/64&amp;lt;br&amp;gt;1.109375&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.89338&lt;br /&gt;
| [[Image:16x32.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -26/64&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -27/64&amp;lt;br&amp;gt;-0.421875&lt;br /&gt;
| -22/64&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| -14/64&amp;lt;br&amp;gt;-0.21875&lt;br /&gt;
| -5/64&amp;lt;br&amp;gt;-0.078125&lt;br /&gt;
| 58/64&amp;lt;br&amp;gt;0.90625&lt;br /&gt;
| 52/64&amp;lt;br&amp;gt;0.8125&lt;br /&gt;
| 45/64&amp;lt;br&amp;gt;0.703125&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 31/64&amp;lt;br&amp;gt;0.484375&lt;br /&gt;
| 23/64&amp;lt;br&amp;gt;0.359375&lt;br /&gt;
| 13/64&amp;lt;br&amp;gt;0.203125&lt;br /&gt;
| 3/2&amp;lt;br&amp;gt;1.5&lt;br /&gt;
| 77/64&amp;lt;br&amp;gt;1.203125&lt;br /&gt;
| 77/64&amp;lt;br&amp;gt;1.203125&lt;br /&gt;
| 1105/896&amp;lt;br&amp;gt;1.23326&lt;br /&gt;
| 218/192&amp;lt;br&amp;gt;1.135417&lt;br /&gt;
| 197/176&amp;lt;br&amp;gt;1.119318&lt;br /&gt;
| 1919/1664&amp;lt;br&amp;gt;1.153245&lt;br /&gt;
| 4351/3840&amp;lt;br&amp;gt;1.133073&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.79398&lt;br /&gt;
| [[Image:16x32r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -32/64&amp;lt;br&amp;gt;-0.5&lt;br /&gt;
| -28/64&amp;lt;br&amp;gt;-0.4375&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -32/64&amp;lt;br&amp;gt;-0.5&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -13/64&amp;lt;br&amp;gt;-0.203125&lt;br /&gt;
| -2/64&amp;lt;br&amp;gt;-0.03125&lt;br /&gt;
| 59/64&amp;lt;br&amp;gt;0.921875&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 46/64&amp;lt;br&amp;gt;0.71875&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 35/64&amp;lt;br&amp;gt;0.546875&lt;br /&gt;
| 24/64&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 12/64&amp;lt;br&amp;gt;0.1875&lt;br /&gt;
| 80/64&amp;lt;br&amp;gt;1.25&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 68/64&amp;lt;br&amp;gt;1.0625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 70/64&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.78294&lt;br /&gt;
| [[Image:16x32rd.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Type-IV Coding Gain ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!4x8&lt;br /&gt;
!4x8 Ramp&lt;br /&gt;
!8x16&lt;br /&gt;
!8x16 Ramp&lt;br /&gt;
!16x32&lt;br /&gt;
!16x32 Ramp&lt;br /&gt;
|-&lt;br /&gt;
|Real Valued&lt;br /&gt;
|8.6349&lt;br /&gt;
|8.60603&lt;br /&gt;
|9.6005&lt;br /&gt;
|9.56867&lt;br /&gt;
|9.9057&lt;br /&gt;
|9.81157&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (8-bit)&lt;br /&gt;
|&lt;br /&gt;
|8.60104&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|&lt;br /&gt;
|0.00499&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (7-bit)&lt;br /&gt;
|&lt;br /&gt;
|8.59886&lt;br /&gt;
|&lt;br /&gt;
|9.56672&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|&lt;br /&gt;
|0.00717&lt;br /&gt;
|&lt;br /&gt;
|0.00195&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (6-bit)&lt;br /&gt;
|8.63473&lt;br /&gt;
|8.59886&lt;br /&gt;
|9.60021&lt;br /&gt;
|9.56161&lt;br /&gt;
|9.89338&lt;br /&gt;
|9.78294&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|0.00017&lt;br /&gt;
|0.00717&lt;br /&gt;
|0.00029&lt;br /&gt;
|0.00706&lt;br /&gt;
|0.01232&lt;br /&gt;
|0.02863&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (5-bit)&lt;br /&gt;
|8.63409&lt;br /&gt;
|8.56068&lt;br /&gt;
|9.59741&lt;br /&gt;
|9.5596&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|0.00081&lt;br /&gt;
|0.04535&lt;br /&gt;
|0.00309&lt;br /&gt;
|0.00907&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 8x16 Type-III ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -25/64&amp;lt;br&amp;gt;-0.390625&lt;br /&gt;
| -20/64&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -7/64&amp;lt;br&amp;gt;-0.109375&lt;br /&gt;
| 49/64&amp;lt;br&amp;gt;0.765625&lt;br /&gt;
| 35/64&amp;lt;br&amp;gt;0.546875&lt;br /&gt;
| 21/64&amp;lt;br&amp;gt;0.328125&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.6112&lt;br /&gt;
| [[Image:8x16_type3.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -13/32&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -11/32&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -4/32&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 25/32&amp;lt;br&amp;gt;0.78125&lt;br /&gt;
| 18/32&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 11/32&amp;lt;br&amp;gt;0.34375&lt;br /&gt;
| 45/32&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 36/32&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 36/32&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 38/32&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.61048&lt;br /&gt;
| [[Image:8x16_type3_5bit.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 16x32 Type-III ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!p3&lt;br /&gt;
!p4&lt;br /&gt;
!p5&lt;br /&gt;
!p6&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!q3&lt;br /&gt;
!q4&lt;br /&gt;
!q5&lt;br /&gt;
!q6&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!s4&lt;br /&gt;
!s5&lt;br /&gt;
!s6&lt;br /&gt;
!s7&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -30/64&amp;lt;br&amp;gt;-0.46875&lt;br /&gt;
| -35/64&amp;lt;br&amp;gt;-0.546875&lt;br /&gt;
| -31/64&amp;lt;br&amp;gt;-0.484375&lt;br /&gt;
| -29/64&amp;lt;br&amp;gt;-0.453125&lt;br /&gt;
| -25/64&amp;lt;br&amp;gt;-0.390625&lt;br /&gt;
| -19/64&amp;lt;br&amp;gt;-0.296875&lt;br /&gt;
| -10/64&amp;lt;br&amp;gt;-0.15625&lt;br /&gt;
| 54/64&amp;lt;br&amp;gt;0.84375&lt;br /&gt;
| 45/64&amp;lt;br&amp;gt;0.703125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 32/64&amp;lt;br&amp;gt;0.5&lt;br /&gt;
| 25/64&amp;lt;br&amp;gt;0.390625&lt;br /&gt;
| 17/64&amp;lt;br&amp;gt;0.265625&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 70/64&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| 69/64&amp;lt;br&amp;gt;1.078125&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 68/64&amp;lt;br&amp;gt;1.0625&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.94127&lt;br /&gt;
| [[Image:16x32_type3_6bit.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -14/32&amp;lt;br&amp;gt;-0.4375&lt;br /&gt;
| -17/32&amp;lt;br&amp;gt;-0.53125&lt;br /&gt;
| -14/32&amp;lt;br&amp;gt;-0.4375&lt;br /&gt;
| -12/32&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -9/32&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -4/32&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 1/32&amp;lt;br&amp;gt;0.03125&lt;br /&gt;
| 27/32&amp;lt;br&amp;gt;0.84375&lt;br /&gt;
| 23/32&amp;lt;br&amp;gt;0.71875&lt;br /&gt;
| 20/32&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 17/32&amp;lt;br&amp;gt;0.53125&lt;br /&gt;
| 14/32&amp;lt;br&amp;gt;0.4375&lt;br /&gt;
| 9/32&amp;lt;br&amp;gt;0.28125&lt;br /&gt;
| 2/32&amp;lt;br&amp;gt;0.0625&lt;br /&gt;
| 46/32&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 35/32&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| 35/32&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| 34/32&amp;lt;br&amp;gt;1.0625&lt;br /&gt;
| 34/32&amp;lt;br&amp;gt;1.0625&lt;br /&gt;
| 35/32&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| 36/32&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 33/32&amp;lt;br&amp;gt;1.03125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.93502&lt;br /&gt;
| [[Image:16x32_type3_5bit.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Type-III Coding Gain ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!4x8&lt;br /&gt;
!8x16&lt;br /&gt;
!16x32&lt;br /&gt;
|-&lt;br /&gt;
|Real Valued&lt;br /&gt;
|8.6349&lt;br /&gt;
|9.6115&lt;br /&gt;
|9.9496&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (6-bit)&lt;br /&gt;
|8.63473&lt;br /&gt;
|9.6112&lt;br /&gt;
|9.94127&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|0.00017&lt;br /&gt;
|0.00030&lt;br /&gt;
|0.00833&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (5-bit)&lt;br /&gt;
|8.63409&lt;br /&gt;
|9.61048&lt;br /&gt;
|9.93502&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|0.00081&lt;br /&gt;
|0.00102&lt;br /&gt;
|0.01458&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Unlord</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=TDLT&amp;diff=13759</id>
		<title>TDLT</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=TDLT&amp;diff=13759"/>
		<updated>2012-11-12T15:24:37Z</updated>

		<summary type="html">&lt;p&gt;Unlord: Adding best known 16x32 Type-III&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page holds the results of Time Domain Lapped Transform (TDLT) optimization problems looking for integer transform coefficients that provide optimal coding gain.  Wherever possible the assumptions are stated.  Later we should include testing against actual image data to verify the results (see test data [http://people.xiph.org/~tterribe/tmp/subset1-y4m.tar.gz here]).&lt;br /&gt;
&lt;br /&gt;
The coding gain objective used as the objective is taken from slide 13 of Tim&#039;s presentation [http://people.xiph.org/~tterribe/pubs/lca2012/auckland/intro_to_video1.pdf An Introduction to Video Coding]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;need figure with block matrix diagrams&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The free parameters are initially just the coefficients p_0,...,p_m,q_0,...,q_m where m=(n/2)-1.  We limit these to being dyadic rationals, e.g., x/2^d with d=6, between [-1,1].&lt;br /&gt;
&lt;br /&gt;
Given p&#039;s and q&#039;s and assuming a linear ramp constrains the s&#039;s.&lt;br /&gt;
 &lt;br /&gt;
== 4x8 ==&lt;br /&gt;
&lt;br /&gt;
Optimal real-valued coefficients for V:&lt;br /&gt;
&lt;br /&gt;
p0 = -0.18117338915051454&lt;br /&gt;
&lt;br /&gt;
q0 = 0.6331818230771687&lt;br /&gt;
&lt;br /&gt;
CG = 8.60603&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!q0&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!CG&lt;br /&gt;
!SBA&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -11/64&amp;lt;br&amp;gt;-0.171875&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 91/64&amp;lt;br&amp;gt;1.421875&lt;br /&gt;
| 85/64&amp;lt;br&amp;gt;1.328125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.63473&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;22.0331&lt;br /&gt;
| [[Image:4x8.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -5/32&amp;lt;br&amp;gt;-0.15625&lt;br /&gt;
| 18/32&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 46/32&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 42/32&amp;lt;br&amp;gt;1.3125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.63409&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;22.5715&lt;br /&gt;
| [[Image:4x8_5bit.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -12/64&amp;lt;br&amp;gt;-0.1875&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 92/64&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 1093/768&amp;lt;br&amp;gt;1.423177&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.60486&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;20.0573&lt;br /&gt;
| [[Image:4x8r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;8-bit&lt;br /&gt;
| -32/256&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 162/256&amp;lt;br&amp;gt;0.6328125&lt;br /&gt;
| 376/256&amp;lt;br&amp;gt;1.46875&lt;br /&gt;
| 357/256&amp;lt;br&amp;gt;1.39453125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.60104&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;21.4037&lt;br /&gt;
| [[Image:4x8rd_8bit.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;7-bit&lt;br /&gt;
| -32/128&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| 82/128&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 184/128&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 186/128&amp;lt;br&amp;gt;1.453125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.59886&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;18.9411&lt;br /&gt;
| [[Image:4x8rd_7bit.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 92/64&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 93/64&amp;lt;br&amp;gt;1.453125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.59886&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;18.9411&lt;br /&gt;
| [[Image:4x8rd.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -8/32&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| 19/32&amp;lt;br&amp;gt;0.59375&lt;br /&gt;
| 52/32&amp;lt;br&amp;gt;1.625&lt;br /&gt;
| 47/32&amp;lt;br&amp;gt;1.46875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.56068&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;20.3279&lt;br /&gt;
| [[Image:4x8rd_5bit.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;max SBA&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 30/64&amp;lt;br&amp;gt;0.46875&lt;br /&gt;
| 136/64&amp;lt;br&amp;gt;2.125&lt;br /&gt;
| 91/64&amp;lt;br&amp;gt;1.421875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.23230&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;25.1934&lt;br /&gt;
| [[Image:4x8rd_sba.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 8x16 ==&lt;br /&gt;
&lt;br /&gt;
Optimal real-valued coefficients for V:&lt;br /&gt;
&lt;br /&gt;
p0 = -0.39460731547057293&lt;br /&gt;
&lt;br /&gt;
p1 = -0.33002212811740816&lt;br /&gt;
&lt;br /&gt;
p2 = -0.12391270981321137&lt;br /&gt;
&lt;br /&gt;
q0 = 0.822154737511288&lt;br /&gt;
&lt;br /&gt;
q1 = 0.632488694485779&lt;br /&gt;
&lt;br /&gt;
q2 = 0.40214668677553894&lt;br /&gt;
&lt;br /&gt;
CG = 9.56867&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -23/64&amp;lt;br&amp;gt;-0.359375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -6/64&amp;lt;br&amp;gt;-0.09375&lt;br /&gt;
| 48/64&amp;lt;br&amp;gt;0.75&lt;br /&gt;
| 34/64&amp;lt;br&amp;gt;0.53125&lt;br /&gt;
| 20/64&amp;lt;br&amp;gt;0.3125&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.60021&lt;br /&gt;
| [[Image:8x16.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -12/32&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -9/32&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -4/32&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 24/32&amp;lt;br&amp;gt;0.75&lt;br /&gt;
| 17/32&amp;lt;br&amp;gt;0.53125&lt;br /&gt;
| 11/32&amp;lt;br&amp;gt;0.34375&lt;br /&gt;
| 45/32&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 37/32&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 35/32&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| 38/32&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.59741&lt;br /&gt;
| [[Image:8x16_5bit.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -26/64&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -22/64&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 26/64&amp;lt;br&amp;gt;0.40625&lt;br /&gt;
| 11/8&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 879/768&amp;lt;br&amp;gt;1.14453125&lt;br /&gt;
| 1469/1280&amp;lt;br&amp;gt;1.14765625&lt;br /&gt;
| 275/224&amp;lt;br&amp;gt;1.2276785714285714&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56627&lt;br /&gt;
| [[Image:8x16r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;7-bit&lt;br /&gt;
| -48/128&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -45/128&amp;lt;br&amp;gt;-0.3515625&lt;br /&gt;
| -16/128&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 105/128&amp;lt;br&amp;gt;0.8203125&lt;br /&gt;
| 80/128&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 53/128&amp;lt;br&amp;gt;0.4140625&lt;br /&gt;
| 184/128&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 151/128&amp;lt;br&amp;gt;1.1796875&lt;br /&gt;
| 147/128&amp;lt;br&amp;gt;1.1484375&lt;br /&gt;
| 157/128&amp;lt;br&amp;gt;1.2265625&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56672&lt;br /&gt;
| [[Image:8x16rd_7bit.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -20/64&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -4/64&amp;lt;br&amp;gt;-0.0625&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 24/64&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 88/64&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56161&lt;br /&gt;
| [[Image:8x16rd.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -12/32&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -10/32&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -2/32&amp;lt;br&amp;gt;-0.0625&lt;br /&gt;
| 26/32&amp;lt;br&amp;gt;0.8125&lt;br /&gt;
| 20/32&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 12/32&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 48/32&amp;lt;br&amp;gt;1.5&lt;br /&gt;
| 38/32&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| 38/32&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| 38/32&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.5596&lt;br /&gt;
| [[Image:8x16rd_5bit.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 16x32 ==&lt;br /&gt;
&lt;br /&gt;
Best-known real-valued coefficients for V (R=t):&lt;br /&gt;
&lt;br /&gt;
p0 = -0.42111473798940136&lt;br /&gt;
&lt;br /&gt;
p1 = -0.4121736499899753&lt;br /&gt;
&lt;br /&gt;
p2 = -0.3350240707669929&lt;br /&gt;
&lt;br /&gt;
p3 = -0.3224547931861314&lt;br /&gt;
&lt;br /&gt;
p4 = -0.25883387978005545&lt;br /&gt;
&lt;br /&gt;
p5 = -0.20951913473498104&lt;br /&gt;
&lt;br /&gt;
p6 = -0.0598657149803332&lt;br /&gt;
&lt;br /&gt;
q0 = 0.9107782439906195&lt;br /&gt;
&lt;br /&gt;
q1 = 0.8109855829278226&lt;br /&gt;
&lt;br /&gt;
q2 = 0.715846584586721&lt;br /&gt;
&lt;br /&gt;
q3 = 0.6135951570714172&lt;br /&gt;
&lt;br /&gt;
q4 = 0.49846644853347627&lt;br /&gt;
&lt;br /&gt;
q5 = 0.3945215834922529&lt;br /&gt;
&lt;br /&gt;
q6 = 0.21822275136248082&lt;br /&gt;
&lt;br /&gt;
CG = 9.81157&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!p3&lt;br /&gt;
!p4&lt;br /&gt;
!p5&lt;br /&gt;
!p6&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!q3&lt;br /&gt;
!q4&lt;br /&gt;
!q5&lt;br /&gt;
!q6&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!s4&lt;br /&gt;
!s5&lt;br /&gt;
!s6&lt;br /&gt;
!s7&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -23/64&amp;lt;br&amp;gt;-0.359375&lt;br /&gt;
| -17/64&amp;lt;br&amp;gt;-0.265625&lt;br /&gt;
| -12/64&amp;lt;br&amp;gt;-0.1875&lt;br /&gt;
| -14/64&amp;lt;br&amp;gt;-0.21875&lt;br /&gt;
| -13/64&amp;lt;br&amp;gt;-0.203125&lt;br /&gt;
| -7/64&amp;lt;br&amp;gt;-0.109375&lt;br /&gt;
| 50/64&amp;lt;br&amp;gt;0.78125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 31/64&amp;lt;br&amp;gt;0.484375&lt;br /&gt;
| 22/64&amp;lt;br&amp;gt;0.34375&lt;br /&gt;
| 18/64&amp;lt;br&amp;gt;0.28125&lt;br /&gt;
| 16/64&amp;lt;br&amp;gt;0.25&lt;br /&gt;
| 11/64&amp;lt;br&amp;gt;0.171875&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 71/64&amp;lt;br&amp;gt;1.109375&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.89338&lt;br /&gt;
| [[Image:16x32.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -26/64&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -27/64&amp;lt;br&amp;gt;-0.421875&lt;br /&gt;
| -22/64&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| -14/64&amp;lt;br&amp;gt;-0.21875&lt;br /&gt;
| -5/64&amp;lt;br&amp;gt;-0.078125&lt;br /&gt;
| 58/64&amp;lt;br&amp;gt;0.90625&lt;br /&gt;
| 52/64&amp;lt;br&amp;gt;0.8125&lt;br /&gt;
| 45/64&amp;lt;br&amp;gt;0.703125&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 31/64&amp;lt;br&amp;gt;0.484375&lt;br /&gt;
| 23/64&amp;lt;br&amp;gt;0.359375&lt;br /&gt;
| 13/64&amp;lt;br&amp;gt;0.203125&lt;br /&gt;
| 3/2&amp;lt;br&amp;gt;1.5&lt;br /&gt;
| 77/64&amp;lt;br&amp;gt;1.203125&lt;br /&gt;
| 77/64&amp;lt;br&amp;gt;1.203125&lt;br /&gt;
| 1105/896&amp;lt;br&amp;gt;1.23326&lt;br /&gt;
| 218/192&amp;lt;br&amp;gt;1.135417&lt;br /&gt;
| 197/176&amp;lt;br&amp;gt;1.119318&lt;br /&gt;
| 1919/1664&amp;lt;br&amp;gt;1.153245&lt;br /&gt;
| 4351/3840&amp;lt;br&amp;gt;1.133073&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.79398&lt;br /&gt;
| [[Image:16x32r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -32/64&amp;lt;br&amp;gt;-0.5&lt;br /&gt;
| -28/64&amp;lt;br&amp;gt;-0.4375&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -32/64&amp;lt;br&amp;gt;-0.5&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -13/64&amp;lt;br&amp;gt;-0.203125&lt;br /&gt;
| -2/64&amp;lt;br&amp;gt;-0.03125&lt;br /&gt;
| 59/64&amp;lt;br&amp;gt;0.921875&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 46/64&amp;lt;br&amp;gt;0.71875&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 35/64&amp;lt;br&amp;gt;0.546875&lt;br /&gt;
| 24/64&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 12/64&amp;lt;br&amp;gt;0.1875&lt;br /&gt;
| 80/64&amp;lt;br&amp;gt;1.25&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 68/64&amp;lt;br&amp;gt;1.0625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 70/64&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.78294&lt;br /&gt;
| [[Image:16x32rd.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Type-IV Coding Gain ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!4x8&lt;br /&gt;
!4x8 Ramp&lt;br /&gt;
!8x16&lt;br /&gt;
!8x16 Ramp&lt;br /&gt;
!16x32&lt;br /&gt;
!16x32 Ramp&lt;br /&gt;
|-&lt;br /&gt;
|Real Valued&lt;br /&gt;
|8.6349&lt;br /&gt;
|8.60603&lt;br /&gt;
|9.6005&lt;br /&gt;
|9.56867&lt;br /&gt;
|9.9057&lt;br /&gt;
|9.81157&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (8-bit)&lt;br /&gt;
|&lt;br /&gt;
|8.60104&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|&lt;br /&gt;
|0.00499&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (7-bit)&lt;br /&gt;
|&lt;br /&gt;
|8.59886&lt;br /&gt;
|&lt;br /&gt;
|9.56672&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|&lt;br /&gt;
|0.00717&lt;br /&gt;
|&lt;br /&gt;
|0.00195&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (6-bit)&lt;br /&gt;
|8.63473&lt;br /&gt;
|8.59886&lt;br /&gt;
|9.60021&lt;br /&gt;
|9.56161&lt;br /&gt;
|9.89338&lt;br /&gt;
|9.78294&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|0.00017&lt;br /&gt;
|0.00717&lt;br /&gt;
|0.00029&lt;br /&gt;
|0.00706&lt;br /&gt;
|0.01232&lt;br /&gt;
|0.02863&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (5-bit)&lt;br /&gt;
|8.63409&lt;br /&gt;
|8.56068&lt;br /&gt;
|9.59741&lt;br /&gt;
|9.5596&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|0.00081&lt;br /&gt;
|0.04535&lt;br /&gt;
|0.00309&lt;br /&gt;
|0.00907&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 8x16 Type-III ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -25/64&amp;lt;br&amp;gt;-0.390625&lt;br /&gt;
| -20/64&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -7/64&amp;lt;br&amp;gt;-0.109375&lt;br /&gt;
| 49/64&amp;lt;br&amp;gt;0.765625&lt;br /&gt;
| 35/64&amp;lt;br&amp;gt;0.546875&lt;br /&gt;
| 21/64&amp;lt;br&amp;gt;0.328125&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.6112&lt;br /&gt;
| [[Image:8x16_type3.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -13/32&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -11/32&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -4/32&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 25/32&amp;lt;br&amp;gt;0.78125&lt;br /&gt;
| 18/32&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 11/32&amp;lt;br&amp;gt;0.34375&lt;br /&gt;
| 45/32&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 36/32&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 36/32&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 38/32&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.61048&lt;br /&gt;
| [[Image:8x16_type3_5bit.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 16x32 Type-III ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!p3&lt;br /&gt;
!p4&lt;br /&gt;
!p5&lt;br /&gt;
!p6&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!q3&lt;br /&gt;
!q4&lt;br /&gt;
!q5&lt;br /&gt;
!q6&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!s4&lt;br /&gt;
!s5&lt;br /&gt;
!s6&lt;br /&gt;
!s7&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -30/64&amp;lt;br&amp;gt;-0.46875&lt;br /&gt;
| -35/64&amp;lt;br&amp;gt;-0.546875&lt;br /&gt;
| -31/64&amp;lt;br&amp;gt;-0.484375&lt;br /&gt;
| -29/64&amp;lt;br&amp;gt;-0.453125&lt;br /&gt;
| -25/64&amp;lt;br&amp;gt;-0.390625&lt;br /&gt;
| -19/64&amp;lt;br&amp;gt;-0.296875&lt;br /&gt;
| -10/64&amp;lt;br&amp;gt;-0.15625&lt;br /&gt;
| 54/64&amp;lt;br&amp;gt;0.84375&lt;br /&gt;
| 45/64&amp;lt;br&amp;gt;0.703125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 32/64&amp;lt;br&amp;gt;0.5&lt;br /&gt;
| 25/64&amp;lt;br&amp;gt;0.390625&lt;br /&gt;
| 17/64&amp;lt;br&amp;gt;0.265625&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 70/64&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| 69/64&amp;lt;br&amp;gt;1.078125&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 68/64&amp;lt;br&amp;gt;1.0625&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.94127&lt;br /&gt;
| [[Image:16x32_type3_6bit.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -15/32&amp;lt;br&amp;gt;-0.46875&lt;br /&gt;
| -18/32&amp;lt;br&amp;gt;-0.5625&lt;br /&gt;
| -14/32&amp;lt;br&amp;gt;-0.4375&lt;br /&gt;
| -10/32&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -10/32&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -6/32&amp;lt;br&amp;gt;-0.1875&lt;br /&gt;
| -2/32&amp;lt;br&amp;gt;-0.0625&lt;br /&gt;
| 28/32&amp;lt;br&amp;gt;0.875&lt;br /&gt;
| 23/32&amp;lt;br&amp;gt;0.71875&lt;br /&gt;
| 20/32&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 16/32&amp;lt;br&amp;gt;0.5&lt;br /&gt;
| 12/32&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 10/32&amp;lt;br&amp;gt;0.3125&lt;br /&gt;
| 6/32&amp;lt;br&amp;gt;0.1875&lt;br /&gt;
| 44/32&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 36/32&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 35/32&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| 35/32&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| 34/32&amp;lt;br&amp;gt;1.0625&lt;br /&gt;
| 33/32&amp;lt;br&amp;gt;1.03125&lt;br /&gt;
| 33/32&amp;lt;br&amp;gt;1.03125&lt;br /&gt;
| 35/32&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.92855&lt;br /&gt;
| [[Image:16x32_type3_5bit.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Type-III Coding Gain ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!4x8&lt;br /&gt;
!8x16&lt;br /&gt;
!16x32&lt;br /&gt;
|-&lt;br /&gt;
|Real Valued&lt;br /&gt;
|8.6349&lt;br /&gt;
|9.6115&lt;br /&gt;
|9.9496&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (6-bit)&lt;br /&gt;
|8.63473&lt;br /&gt;
|9.6112&lt;br /&gt;
|9.94127&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|0.00017&lt;br /&gt;
|0.00030&lt;br /&gt;
|0.00833&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (5-bit)&lt;br /&gt;
|8.63409&lt;br /&gt;
|9.61048&lt;br /&gt;
|9.92855&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|0.00081&lt;br /&gt;
|0.00102&lt;br /&gt;
|0.02105&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Unlord</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=TDLT&amp;diff=13754</id>
		<title>TDLT</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=TDLT&amp;diff=13754"/>
		<updated>2012-11-04T17:31:07Z</updated>

		<summary type="html">&lt;p&gt;Unlord: Adding 8x16 Type-IV 5-bit R=F&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page holds the results of Time Domain Lapped Transform (TDLT) optimization problems looking for integer transform coefficients that provide optimal coding gain.  Wherever possible the assumptions are stated.  Later we should include testing against actual image data to verify the results (see test data [http://people.xiph.org/~tterribe/tmp/subset1-y4m.tar.gz here]).&lt;br /&gt;
&lt;br /&gt;
The coding gain objective used as the objective is taken from slide 13 of Tim&#039;s presentation [http://people.xiph.org/~tterribe/pubs/lca2012/auckland/intro_to_video1.pdf An Introduction to Video Coding]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;need figure with block matrix diagrams&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The free parameters are initially just the coefficients p_0,...,p_m,q_0,...,q_m where m=(n/2)-1.  We limit these to being dyadic rationals, e.g., x/2^d with d=6, between [-1,1].&lt;br /&gt;
&lt;br /&gt;
Given p&#039;s and q&#039;s and assuming a linear ramp constrains the s&#039;s.&lt;br /&gt;
 &lt;br /&gt;
== 4x8 ==&lt;br /&gt;
&lt;br /&gt;
Optimal real-valued coefficients for V:&lt;br /&gt;
&lt;br /&gt;
p0 = -0.18117338915051454&lt;br /&gt;
&lt;br /&gt;
q0 = 0.6331818230771687&lt;br /&gt;
&lt;br /&gt;
CG = 8.60603&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!q0&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!CG&lt;br /&gt;
!SBA&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -11/64&amp;lt;br&amp;gt;-0.171875&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 91/64&amp;lt;br&amp;gt;1.421875&lt;br /&gt;
| 85/64&amp;lt;br&amp;gt;1.328125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.63473&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;22.0331&lt;br /&gt;
| [[Image:4x8.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -5/32&amp;lt;br&amp;gt;-0.15625&lt;br /&gt;
| 18/32&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 46/32&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 42/32&amp;lt;br&amp;gt;1.3125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.63409&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;22.5715&lt;br /&gt;
| [[Image:4x8_5bit.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -12/64&amp;lt;br&amp;gt;-0.1875&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 92/64&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 1093/768&amp;lt;br&amp;gt;1.423177&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.60486&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;20.0573&lt;br /&gt;
| [[Image:4x8r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;8-bit&lt;br /&gt;
| -32/256&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 162/256&amp;lt;br&amp;gt;0.6328125&lt;br /&gt;
| 376/256&amp;lt;br&amp;gt;1.46875&lt;br /&gt;
| 357/256&amp;lt;br&amp;gt;1.39453125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.60104&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;21.4037&lt;br /&gt;
| [[Image:4x8rd_8bit.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;7-bit&lt;br /&gt;
| -32/128&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| 82/128&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 184/128&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 186/128&amp;lt;br&amp;gt;1.453125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.59886&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;18.9411&lt;br /&gt;
| [[Image:4x8rd_7bit.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 92/64&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 93/64&amp;lt;br&amp;gt;1.453125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.59886&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;18.9411&lt;br /&gt;
| [[Image:4x8rd.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -8/32&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| 19/32&amp;lt;br&amp;gt;0.59375&lt;br /&gt;
| 52/32&amp;lt;br&amp;gt;1.625&lt;br /&gt;
| 47/32&amp;lt;br&amp;gt;1.46875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.56068&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;20.3279&lt;br /&gt;
| [[Image:4x8rd_5bit.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;max SBA&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 30/64&amp;lt;br&amp;gt;0.46875&lt;br /&gt;
| 136/64&amp;lt;br&amp;gt;2.125&lt;br /&gt;
| 91/64&amp;lt;br&amp;gt;1.421875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.23230&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;25.1934&lt;br /&gt;
| [[Image:4x8rd_sba.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 8x16 ==&lt;br /&gt;
&lt;br /&gt;
Optimal real-valued coefficients for V:&lt;br /&gt;
&lt;br /&gt;
p0 = -0.39460731547057293&lt;br /&gt;
&lt;br /&gt;
p1 = -0.33002212811740816&lt;br /&gt;
&lt;br /&gt;
p2 = -0.12391270981321137&lt;br /&gt;
&lt;br /&gt;
q0 = 0.822154737511288&lt;br /&gt;
&lt;br /&gt;
q1 = 0.632488694485779&lt;br /&gt;
&lt;br /&gt;
q2 = 0.40214668677553894&lt;br /&gt;
&lt;br /&gt;
CG = 9.56867&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -23/64&amp;lt;br&amp;gt;-0.359375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -6/64&amp;lt;br&amp;gt;-0.09375&lt;br /&gt;
| 48/64&amp;lt;br&amp;gt;0.75&lt;br /&gt;
| 34/64&amp;lt;br&amp;gt;0.53125&lt;br /&gt;
| 20/64&amp;lt;br&amp;gt;0.3125&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.60021&lt;br /&gt;
| [[Image:8x16.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -12/32&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -9/32&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -4/32&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 24/32&amp;lt;br&amp;gt;0.75&lt;br /&gt;
| 17/32&amp;lt;br&amp;gt;0.53125&lt;br /&gt;
| 11/32&amp;lt;br&amp;gt;0.34375&lt;br /&gt;
| 45/32&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 37/32&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 35/32&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| 38/32&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.59741&lt;br /&gt;
| [[Image:8x16_5bit.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -26/64&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -22/64&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 26/64&amp;lt;br&amp;gt;0.40625&lt;br /&gt;
| 11/8&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 879/768&amp;lt;br&amp;gt;1.14453125&lt;br /&gt;
| 1469/1280&amp;lt;br&amp;gt;1.14765625&lt;br /&gt;
| 275/224&amp;lt;br&amp;gt;1.2276785714285714&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56627&lt;br /&gt;
| [[Image:8x16r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;7-bit&lt;br /&gt;
| -48/128&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -45/128&amp;lt;br&amp;gt;-0.3515625&lt;br /&gt;
| -16/128&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 105/128&amp;lt;br&amp;gt;0.8203125&lt;br /&gt;
| 80/128&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 53/128&amp;lt;br&amp;gt;0.4140625&lt;br /&gt;
| 184/128&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 151/128&amp;lt;br&amp;gt;1.1796875&lt;br /&gt;
| 147/128&amp;lt;br&amp;gt;1.1484375&lt;br /&gt;
| 157/128&amp;lt;br&amp;gt;1.2265625&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56672&lt;br /&gt;
| [[Image:8x16rd_7bit.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -20/64&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -4/64&amp;lt;br&amp;gt;-0.0625&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 24/64&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 88/64&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56161&lt;br /&gt;
| [[Image:8x16rd.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -12/32&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -10/32&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -2/32&amp;lt;br&amp;gt;-0.0625&lt;br /&gt;
| 26/32&amp;lt;br&amp;gt;0.8125&lt;br /&gt;
| 20/32&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 12/32&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 48/32&amp;lt;br&amp;gt;1.5&lt;br /&gt;
| 38/32&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| 38/32&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| 38/32&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.5596&lt;br /&gt;
| [[Image:8x16rd_5bit.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 16x32 ==&lt;br /&gt;
&lt;br /&gt;
Best-known real-valued coefficients for V (R=t):&lt;br /&gt;
&lt;br /&gt;
p0 = -0.42111473798940136&lt;br /&gt;
&lt;br /&gt;
p1 = -0.4121736499899753&lt;br /&gt;
&lt;br /&gt;
p2 = -0.3350240707669929&lt;br /&gt;
&lt;br /&gt;
p3 = -0.3224547931861314&lt;br /&gt;
&lt;br /&gt;
p4 = -0.25883387978005545&lt;br /&gt;
&lt;br /&gt;
p5 = -0.20951913473498104&lt;br /&gt;
&lt;br /&gt;
p6 = -0.0598657149803332&lt;br /&gt;
&lt;br /&gt;
q0 = 0.9107782439906195&lt;br /&gt;
&lt;br /&gt;
q1 = 0.8109855829278226&lt;br /&gt;
&lt;br /&gt;
q2 = 0.715846584586721&lt;br /&gt;
&lt;br /&gt;
q3 = 0.6135951570714172&lt;br /&gt;
&lt;br /&gt;
q4 = 0.49846644853347627&lt;br /&gt;
&lt;br /&gt;
q5 = 0.3945215834922529&lt;br /&gt;
&lt;br /&gt;
q6 = 0.21822275136248082&lt;br /&gt;
&lt;br /&gt;
CG = 9.81157&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!p3&lt;br /&gt;
!p4&lt;br /&gt;
!p5&lt;br /&gt;
!p6&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!q3&lt;br /&gt;
!q4&lt;br /&gt;
!q5&lt;br /&gt;
!q6&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!s4&lt;br /&gt;
!s5&lt;br /&gt;
!s6&lt;br /&gt;
!s7&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -23/64&amp;lt;br&amp;gt;-0.359375&lt;br /&gt;
| -17/64&amp;lt;br&amp;gt;-0.265625&lt;br /&gt;
| -12/64&amp;lt;br&amp;gt;-0.1875&lt;br /&gt;
| -14/64&amp;lt;br&amp;gt;-0.21875&lt;br /&gt;
| -13/64&amp;lt;br&amp;gt;-0.203125&lt;br /&gt;
| -7/64&amp;lt;br&amp;gt;-0.109375&lt;br /&gt;
| 50/64&amp;lt;br&amp;gt;0.78125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 31/64&amp;lt;br&amp;gt;0.484375&lt;br /&gt;
| 22/64&amp;lt;br&amp;gt;0.34375&lt;br /&gt;
| 18/64&amp;lt;br&amp;gt;0.28125&lt;br /&gt;
| 16/64&amp;lt;br&amp;gt;0.25&lt;br /&gt;
| 11/64&amp;lt;br&amp;gt;0.171875&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 71/64&amp;lt;br&amp;gt;1.109375&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.89338&lt;br /&gt;
| [[Image:16x32.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -26/64&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -27/64&amp;lt;br&amp;gt;-0.421875&lt;br /&gt;
| -22/64&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| -14/64&amp;lt;br&amp;gt;-0.21875&lt;br /&gt;
| -5/64&amp;lt;br&amp;gt;-0.078125&lt;br /&gt;
| 58/64&amp;lt;br&amp;gt;0.90625&lt;br /&gt;
| 52/64&amp;lt;br&amp;gt;0.8125&lt;br /&gt;
| 45/64&amp;lt;br&amp;gt;0.703125&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 31/64&amp;lt;br&amp;gt;0.484375&lt;br /&gt;
| 23/64&amp;lt;br&amp;gt;0.359375&lt;br /&gt;
| 13/64&amp;lt;br&amp;gt;0.203125&lt;br /&gt;
| 3/2&amp;lt;br&amp;gt;1.5&lt;br /&gt;
| 77/64&amp;lt;br&amp;gt;1.203125&lt;br /&gt;
| 77/64&amp;lt;br&amp;gt;1.203125&lt;br /&gt;
| 1105/896&amp;lt;br&amp;gt;1.23326&lt;br /&gt;
| 218/192&amp;lt;br&amp;gt;1.135417&lt;br /&gt;
| 197/176&amp;lt;br&amp;gt;1.119318&lt;br /&gt;
| 1919/1664&amp;lt;br&amp;gt;1.153245&lt;br /&gt;
| 4351/3840&amp;lt;br&amp;gt;1.133073&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.79398&lt;br /&gt;
| [[Image:16x32r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -32/64&amp;lt;br&amp;gt;-0.5&lt;br /&gt;
| -28/64&amp;lt;br&amp;gt;-0.4375&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -32/64&amp;lt;br&amp;gt;-0.5&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -13/64&amp;lt;br&amp;gt;-0.203125&lt;br /&gt;
| -2/64&amp;lt;br&amp;gt;-0.03125&lt;br /&gt;
| 59/64&amp;lt;br&amp;gt;0.921875&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 46/64&amp;lt;br&amp;gt;0.71875&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 35/64&amp;lt;br&amp;gt;0.546875&lt;br /&gt;
| 24/64&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 12/64&amp;lt;br&amp;gt;0.1875&lt;br /&gt;
| 80/64&amp;lt;br&amp;gt;1.25&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 68/64&amp;lt;br&amp;gt;1.0625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 70/64&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.78294&lt;br /&gt;
| [[Image:16x32rd.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Type-IV Coding Gain ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!4x8&lt;br /&gt;
!4x8 Ramp&lt;br /&gt;
!8x16&lt;br /&gt;
!8x16 Ramp&lt;br /&gt;
!16x32&lt;br /&gt;
!16x32 Ramp&lt;br /&gt;
|-&lt;br /&gt;
|Real Valued&lt;br /&gt;
|8.6349&lt;br /&gt;
|8.60603&lt;br /&gt;
|9.6005&lt;br /&gt;
|9.56867&lt;br /&gt;
|9.9057&lt;br /&gt;
|9.81157&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (8-bit)&lt;br /&gt;
|&lt;br /&gt;
|8.60104&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|&lt;br /&gt;
|0.00499&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (7-bit)&lt;br /&gt;
|&lt;br /&gt;
|8.59886&lt;br /&gt;
|&lt;br /&gt;
|9.56672&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|&lt;br /&gt;
|0.00717&lt;br /&gt;
|&lt;br /&gt;
|0.00195&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (6-bit)&lt;br /&gt;
|8.63473&lt;br /&gt;
|8.59886&lt;br /&gt;
|9.60021&lt;br /&gt;
|9.56161&lt;br /&gt;
|9.89338&lt;br /&gt;
|9.78294&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|0.00017&lt;br /&gt;
|0.00717&lt;br /&gt;
|0.00029&lt;br /&gt;
|0.00706&lt;br /&gt;
|0.01232&lt;br /&gt;
|0.02863&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (5-bit)&lt;br /&gt;
|8.63409&lt;br /&gt;
|8.56068&lt;br /&gt;
|9.59741&lt;br /&gt;
|9.5596&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|0.00081&lt;br /&gt;
|0.04535&lt;br /&gt;
|0.00309&lt;br /&gt;
|0.00907&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 8x16 Type-III ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -25/64&amp;lt;br&amp;gt;-0.390625&lt;br /&gt;
| -20/64&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -7/64&amp;lt;br&amp;gt;-0.109375&lt;br /&gt;
| 49/64&amp;lt;br&amp;gt;0.765625&lt;br /&gt;
| 35/64&amp;lt;br&amp;gt;0.546875&lt;br /&gt;
| 21/64&amp;lt;br&amp;gt;0.328125&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.6112&lt;br /&gt;
| [[Image:8x16_type3.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -13/32&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -11/32&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -4/32&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 25/32&amp;lt;br&amp;gt;0.78125&lt;br /&gt;
| 18/32&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 11/32&amp;lt;br&amp;gt;0.34375&lt;br /&gt;
| 45/32&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 36/32&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 36/32&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 38/32&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.61048&lt;br /&gt;
| [[Image:8x16_type3_5bit.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Type-III Coding Gain ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!4x8&lt;br /&gt;
!8x16&lt;br /&gt;
!16x32&lt;br /&gt;
|-&lt;br /&gt;
|Real Valued&lt;br /&gt;
|8.6349&lt;br /&gt;
|9.6115&lt;br /&gt;
|9.9496&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (6-bit)&lt;br /&gt;
|8.63473&lt;br /&gt;
|9.6112&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|0.00017&lt;br /&gt;
|0.00030&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (5-bit)&lt;br /&gt;
|8.63409&lt;br /&gt;
|9.61048&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|0.00081&lt;br /&gt;
|0.00102&lt;br /&gt;
|&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Unlord</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=TDLT&amp;diff=13753</id>
		<title>TDLT</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=TDLT&amp;diff=13753"/>
		<updated>2012-11-04T16:46:59Z</updated>

		<summary type="html">&lt;p&gt;Unlord: Adding 8x16 Type-IV 7-bit R=T&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page holds the results of Time Domain Lapped Transform (TDLT) optimization problems looking for integer transform coefficients that provide optimal coding gain.  Wherever possible the assumptions are stated.  Later we should include testing against actual image data to verify the results (see test data [http://people.xiph.org/~tterribe/tmp/subset1-y4m.tar.gz here]).&lt;br /&gt;
&lt;br /&gt;
The coding gain objective used as the objective is taken from slide 13 of Tim&#039;s presentation [http://people.xiph.org/~tterribe/pubs/lca2012/auckland/intro_to_video1.pdf An Introduction to Video Coding]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;need figure with block matrix diagrams&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The free parameters are initially just the coefficients p_0,...,p_m,q_0,...,q_m where m=(n/2)-1.  We limit these to being dyadic rationals, e.g., x/2^d with d=6, between [-1,1].&lt;br /&gt;
&lt;br /&gt;
Given p&#039;s and q&#039;s and assuming a linear ramp constrains the s&#039;s.&lt;br /&gt;
 &lt;br /&gt;
== 4x8 ==&lt;br /&gt;
&lt;br /&gt;
Optimal real-valued coefficients for V:&lt;br /&gt;
&lt;br /&gt;
p0 = -0.18117338915051454&lt;br /&gt;
&lt;br /&gt;
q0 = 0.6331818230771687&lt;br /&gt;
&lt;br /&gt;
CG = 8.60603&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!q0&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!CG&lt;br /&gt;
!SBA&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -11/64&amp;lt;br&amp;gt;-0.171875&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 91/64&amp;lt;br&amp;gt;1.421875&lt;br /&gt;
| 85/64&amp;lt;br&amp;gt;1.328125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.63473&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;22.0331&lt;br /&gt;
| [[Image:4x8.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -5/32&amp;lt;br&amp;gt;-0.15625&lt;br /&gt;
| 18/32&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 46/32&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 42/32&amp;lt;br&amp;gt;1.3125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.63409&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;22.5715&lt;br /&gt;
| [[Image:4x8_5bit.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -12/64&amp;lt;br&amp;gt;-0.1875&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 92/64&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 1093/768&amp;lt;br&amp;gt;1.423177&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.60486&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;20.0573&lt;br /&gt;
| [[Image:4x8r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;8-bit&lt;br /&gt;
| -32/256&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 162/256&amp;lt;br&amp;gt;0.6328125&lt;br /&gt;
| 376/256&amp;lt;br&amp;gt;1.46875&lt;br /&gt;
| 357/256&amp;lt;br&amp;gt;1.39453125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.60104&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;21.4037&lt;br /&gt;
| [[Image:4x8rd_8bit.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;7-bit&lt;br /&gt;
| -32/128&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| 82/128&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 184/128&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 186/128&amp;lt;br&amp;gt;1.453125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.59886&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;18.9411&lt;br /&gt;
| [[Image:4x8rd_7bit.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 92/64&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 93/64&amp;lt;br&amp;gt;1.453125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.59886&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;18.9411&lt;br /&gt;
| [[Image:4x8rd.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -8/32&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| 19/32&amp;lt;br&amp;gt;0.59375&lt;br /&gt;
| 52/32&amp;lt;br&amp;gt;1.625&lt;br /&gt;
| 47/32&amp;lt;br&amp;gt;1.46875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.56068&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;20.3279&lt;br /&gt;
| [[Image:4x8rd_5bit.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;max SBA&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 30/64&amp;lt;br&amp;gt;0.46875&lt;br /&gt;
| 136/64&amp;lt;br&amp;gt;2.125&lt;br /&gt;
| 91/64&amp;lt;br&amp;gt;1.421875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.23230&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;25.1934&lt;br /&gt;
| [[Image:4x8rd_sba.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 8x16 ==&lt;br /&gt;
&lt;br /&gt;
Optimal real-valued coefficients for V:&lt;br /&gt;
&lt;br /&gt;
p0 = -0.39460731547057293&lt;br /&gt;
&lt;br /&gt;
p1 = -0.33002212811740816&lt;br /&gt;
&lt;br /&gt;
p2 = -0.12391270981321137&lt;br /&gt;
&lt;br /&gt;
q0 = 0.822154737511288&lt;br /&gt;
&lt;br /&gt;
q1 = 0.632488694485779&lt;br /&gt;
&lt;br /&gt;
q2 = 0.40214668677553894&lt;br /&gt;
&lt;br /&gt;
CG = 9.56867&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -23/64&amp;lt;br&amp;gt;-0.359375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -6/64&amp;lt;br&amp;gt;-0.09375&lt;br /&gt;
| 48/64&amp;lt;br&amp;gt;0.75&lt;br /&gt;
| 34/64&amp;lt;br&amp;gt;0.53125&lt;br /&gt;
| 20/64&amp;lt;br&amp;gt;0.3125&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.60021&lt;br /&gt;
| [[Image:8x16.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -26/64&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -22/64&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 26/64&amp;lt;br&amp;gt;0.40625&lt;br /&gt;
| 11/8&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 879/768&amp;lt;br&amp;gt;1.14453125&lt;br /&gt;
| 1469/1280&amp;lt;br&amp;gt;1.14765625&lt;br /&gt;
| 275/224&amp;lt;br&amp;gt;1.2276785714285714&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56627&lt;br /&gt;
| [[Image:8x16r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;7-bit&lt;br /&gt;
| -48/128&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -45/128&amp;lt;br&amp;gt;-0.3515625&lt;br /&gt;
| -16/128&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 105/128&amp;lt;br&amp;gt;0.8203125&lt;br /&gt;
| 80/128&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 53/128&amp;lt;br&amp;gt;0.4140625&lt;br /&gt;
| 184/128&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 151/128&amp;lt;br&amp;gt;1.1796875&lt;br /&gt;
| 147/128&amp;lt;br&amp;gt;1.1484375&lt;br /&gt;
| 157/128&amp;lt;br&amp;gt;1.2265625&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56672&lt;br /&gt;
| [[Image:8x16rd_7bit.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -20/64&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -4/64&amp;lt;br&amp;gt;-0.0625&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 24/64&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 88/64&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56161&lt;br /&gt;
| [[Image:8x16rd.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -12/32&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -10/32&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -2/32&amp;lt;br&amp;gt;-0.0625&lt;br /&gt;
| 26/32&amp;lt;br&amp;gt;0.8125&lt;br /&gt;
| 20/32&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 12/32&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 48/32&amp;lt;br&amp;gt;1.5&lt;br /&gt;
| 38/32&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| 38/32&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| 38/32&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.5596&lt;br /&gt;
| [[Image:8x16rd_5bit.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 16x32 ==&lt;br /&gt;
&lt;br /&gt;
Best-known real-valued coefficients for V (R=t):&lt;br /&gt;
&lt;br /&gt;
p0 = -0.42111473798940136&lt;br /&gt;
&lt;br /&gt;
p1 = -0.4121736499899753&lt;br /&gt;
&lt;br /&gt;
p2 = -0.3350240707669929&lt;br /&gt;
&lt;br /&gt;
p3 = -0.3224547931861314&lt;br /&gt;
&lt;br /&gt;
p4 = -0.25883387978005545&lt;br /&gt;
&lt;br /&gt;
p5 = -0.20951913473498104&lt;br /&gt;
&lt;br /&gt;
p6 = -0.0598657149803332&lt;br /&gt;
&lt;br /&gt;
q0 = 0.9107782439906195&lt;br /&gt;
&lt;br /&gt;
q1 = 0.8109855829278226&lt;br /&gt;
&lt;br /&gt;
q2 = 0.715846584586721&lt;br /&gt;
&lt;br /&gt;
q3 = 0.6135951570714172&lt;br /&gt;
&lt;br /&gt;
q4 = 0.49846644853347627&lt;br /&gt;
&lt;br /&gt;
q5 = 0.3945215834922529&lt;br /&gt;
&lt;br /&gt;
q6 = 0.21822275136248082&lt;br /&gt;
&lt;br /&gt;
CG = 9.81157&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!p3&lt;br /&gt;
!p4&lt;br /&gt;
!p5&lt;br /&gt;
!p6&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!q3&lt;br /&gt;
!q4&lt;br /&gt;
!q5&lt;br /&gt;
!q6&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!s4&lt;br /&gt;
!s5&lt;br /&gt;
!s6&lt;br /&gt;
!s7&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -23/64&amp;lt;br&amp;gt;-0.359375&lt;br /&gt;
| -17/64&amp;lt;br&amp;gt;-0.265625&lt;br /&gt;
| -12/64&amp;lt;br&amp;gt;-0.1875&lt;br /&gt;
| -14/64&amp;lt;br&amp;gt;-0.21875&lt;br /&gt;
| -13/64&amp;lt;br&amp;gt;-0.203125&lt;br /&gt;
| -7/64&amp;lt;br&amp;gt;-0.109375&lt;br /&gt;
| 50/64&amp;lt;br&amp;gt;0.78125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 31/64&amp;lt;br&amp;gt;0.484375&lt;br /&gt;
| 22/64&amp;lt;br&amp;gt;0.34375&lt;br /&gt;
| 18/64&amp;lt;br&amp;gt;0.28125&lt;br /&gt;
| 16/64&amp;lt;br&amp;gt;0.25&lt;br /&gt;
| 11/64&amp;lt;br&amp;gt;0.171875&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 71/64&amp;lt;br&amp;gt;1.109375&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.89338&lt;br /&gt;
| [[Image:16x32.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -26/64&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -27/64&amp;lt;br&amp;gt;-0.421875&lt;br /&gt;
| -22/64&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| -14/64&amp;lt;br&amp;gt;-0.21875&lt;br /&gt;
| -5/64&amp;lt;br&amp;gt;-0.078125&lt;br /&gt;
| 58/64&amp;lt;br&amp;gt;0.90625&lt;br /&gt;
| 52/64&amp;lt;br&amp;gt;0.8125&lt;br /&gt;
| 45/64&amp;lt;br&amp;gt;0.703125&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 31/64&amp;lt;br&amp;gt;0.484375&lt;br /&gt;
| 23/64&amp;lt;br&amp;gt;0.359375&lt;br /&gt;
| 13/64&amp;lt;br&amp;gt;0.203125&lt;br /&gt;
| 3/2&amp;lt;br&amp;gt;1.5&lt;br /&gt;
| 77/64&amp;lt;br&amp;gt;1.203125&lt;br /&gt;
| 77/64&amp;lt;br&amp;gt;1.203125&lt;br /&gt;
| 1105/896&amp;lt;br&amp;gt;1.23326&lt;br /&gt;
| 218/192&amp;lt;br&amp;gt;1.135417&lt;br /&gt;
| 197/176&amp;lt;br&amp;gt;1.119318&lt;br /&gt;
| 1919/1664&amp;lt;br&amp;gt;1.153245&lt;br /&gt;
| 4351/3840&amp;lt;br&amp;gt;1.133073&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.79398&lt;br /&gt;
| [[Image:16x32r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -32/64&amp;lt;br&amp;gt;-0.5&lt;br /&gt;
| -28/64&amp;lt;br&amp;gt;-0.4375&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -32/64&amp;lt;br&amp;gt;-0.5&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -13/64&amp;lt;br&amp;gt;-0.203125&lt;br /&gt;
| -2/64&amp;lt;br&amp;gt;-0.03125&lt;br /&gt;
| 59/64&amp;lt;br&amp;gt;0.921875&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 46/64&amp;lt;br&amp;gt;0.71875&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 35/64&amp;lt;br&amp;gt;0.546875&lt;br /&gt;
| 24/64&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 12/64&amp;lt;br&amp;gt;0.1875&lt;br /&gt;
| 80/64&amp;lt;br&amp;gt;1.25&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 68/64&amp;lt;br&amp;gt;1.0625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 70/64&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.78294&lt;br /&gt;
| [[Image:16x32rd.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Type-IV Coding Gain ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!4x8&lt;br /&gt;
!4x8 Ramp&lt;br /&gt;
!8x16&lt;br /&gt;
!8x16 Ramp&lt;br /&gt;
!16x32&lt;br /&gt;
!16x32 Ramp&lt;br /&gt;
|-&lt;br /&gt;
|Real Valued&lt;br /&gt;
|8.6349&lt;br /&gt;
|8.60603&lt;br /&gt;
|9.6005&lt;br /&gt;
|9.56867&lt;br /&gt;
|9.9057&lt;br /&gt;
|9.81157&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (8-bit)&lt;br /&gt;
|&lt;br /&gt;
|8.60104&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|&lt;br /&gt;
|0.00499&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (7-bit)&lt;br /&gt;
|&lt;br /&gt;
|8.59886&lt;br /&gt;
|&lt;br /&gt;
|9.56672&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|&lt;br /&gt;
|0.00717&lt;br /&gt;
|&lt;br /&gt;
|0.00195&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (6-bit)&lt;br /&gt;
|8.63473&lt;br /&gt;
|8.59886&lt;br /&gt;
|9.60021&lt;br /&gt;
|9.56161&lt;br /&gt;
|9.89338&lt;br /&gt;
|9.78294&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|0.00017&lt;br /&gt;
|0.00717&lt;br /&gt;
|0.00029&lt;br /&gt;
|0.00706&lt;br /&gt;
|0.01232&lt;br /&gt;
|0.02863&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (5-bit)&lt;br /&gt;
|8.63409&lt;br /&gt;
|8.56068&lt;br /&gt;
|&lt;br /&gt;
|9.5596&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|0.00081&lt;br /&gt;
|0.04535&lt;br /&gt;
|&lt;br /&gt;
|0.00907&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 8x16 Type-III ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -25/64&amp;lt;br&amp;gt;-0.390625&lt;br /&gt;
| -20/64&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -7/64&amp;lt;br&amp;gt;-0.109375&lt;br /&gt;
| 49/64&amp;lt;br&amp;gt;0.765625&lt;br /&gt;
| 35/64&amp;lt;br&amp;gt;0.546875&lt;br /&gt;
| 21/64&amp;lt;br&amp;gt;0.328125&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.6112&lt;br /&gt;
| [[Image:8x16_type3.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -13/32&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -11/32&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -4/32&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 25/32&amp;lt;br&amp;gt;0.78125&lt;br /&gt;
| 18/32&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 11/32&amp;lt;br&amp;gt;0.34375&lt;br /&gt;
| 45/32&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 36/32&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 36/32&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 38/32&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.61048&lt;br /&gt;
| [[Image:8x16_type3_5bit.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Type-III Coding Gain ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!4x8&lt;br /&gt;
!8x16&lt;br /&gt;
!16x32&lt;br /&gt;
|-&lt;br /&gt;
|Real Valued&lt;br /&gt;
|8.6349&lt;br /&gt;
|9.6115&lt;br /&gt;
|9.9496&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (6-bit)&lt;br /&gt;
|8.63473&lt;br /&gt;
|9.6112&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|0.00017&lt;br /&gt;
|0.00030&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (5-bit)&lt;br /&gt;
|8.63409&lt;br /&gt;
|9.61048&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|0.00081&lt;br /&gt;
|0.00102&lt;br /&gt;
|&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Unlord</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=TDLT&amp;diff=13752</id>
		<title>TDLT</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=TDLT&amp;diff=13752"/>
		<updated>2012-11-04T13:42:23Z</updated>

		<summary type="html">&lt;p&gt;Unlord: Adding 8x16 Type-III 5bit&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page holds the results of Time Domain Lapped Transform (TDLT) optimization problems looking for integer transform coefficients that provide optimal coding gain.  Wherever possible the assumptions are stated.  Later we should include testing against actual image data to verify the results (see test data [http://people.xiph.org/~tterribe/tmp/subset1-y4m.tar.gz here]).&lt;br /&gt;
&lt;br /&gt;
The coding gain objective used as the objective is taken from slide 13 of Tim&#039;s presentation [http://people.xiph.org/~tterribe/pubs/lca2012/auckland/intro_to_video1.pdf An Introduction to Video Coding]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;need figure with block matrix diagrams&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The free parameters are initially just the coefficients p_0,...,p_m,q_0,...,q_m where m=(n/2)-1.  We limit these to being dyadic rationals, e.g., x/2^d with d=6, between [-1,1].&lt;br /&gt;
&lt;br /&gt;
Given p&#039;s and q&#039;s and assuming a linear ramp constrains the s&#039;s.&lt;br /&gt;
 &lt;br /&gt;
== 4x8 ==&lt;br /&gt;
&lt;br /&gt;
Optimal real-valued coefficients for V:&lt;br /&gt;
&lt;br /&gt;
p0 = -0.18117338915051454&lt;br /&gt;
&lt;br /&gt;
q0 = 0.6331818230771687&lt;br /&gt;
&lt;br /&gt;
CG = 8.60603&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!q0&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!CG&lt;br /&gt;
!SBA&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -11/64&amp;lt;br&amp;gt;-0.171875&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 91/64&amp;lt;br&amp;gt;1.421875&lt;br /&gt;
| 85/64&amp;lt;br&amp;gt;1.328125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.63473&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;22.0331&lt;br /&gt;
| [[Image:4x8.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -5/32&amp;lt;br&amp;gt;-0.15625&lt;br /&gt;
| 18/32&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 46/32&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 42/32&amp;lt;br&amp;gt;1.3125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.63409&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;22.5715&lt;br /&gt;
| [[Image:4x8_5bits.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -12/64&amp;lt;br&amp;gt;-0.1875&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 92/64&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 1093/768&amp;lt;br&amp;gt;1.423177&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.60486&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;20.0573&lt;br /&gt;
| [[Image:4x8r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;8-bit&lt;br /&gt;
| -32/256&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 162/256&amp;lt;br&amp;gt;0.6328125&lt;br /&gt;
| 376/256&amp;lt;br&amp;gt;1.46875&lt;br /&gt;
| 357/256&amp;lt;br&amp;gt;1.39453125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.60104&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;21.4037&lt;br /&gt;
| [[Image:4x8rd_8bits.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;7-bit&lt;br /&gt;
| -32/128&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| 82/128&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 184/128&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 186/128&amp;lt;br&amp;gt;1.453125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.59886&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;18.9411&lt;br /&gt;
| [[Image:4x8rd_7bits.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 92/64&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 93/64&amp;lt;br&amp;gt;1.453125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.59886&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;18.9411&lt;br /&gt;
| [[Image:4x8rd.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -8/32&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| 19/32&amp;lt;br&amp;gt;0.59375&lt;br /&gt;
| 52/32&amp;lt;br&amp;gt;1.625&lt;br /&gt;
| 47/32&amp;lt;br&amp;gt;1.46875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.56068&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;20.3279&lt;br /&gt;
| [[Image:4x8rd_5bits.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;max SBA&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 30/64&amp;lt;br&amp;gt;0.46875&lt;br /&gt;
| 136/64&amp;lt;br&amp;gt;2.125&lt;br /&gt;
| 91/64&amp;lt;br&amp;gt;1.421875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.23230&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;25.1934&lt;br /&gt;
| [[Image:4x8rd_sba.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 8x16 ==&lt;br /&gt;
&lt;br /&gt;
Optimal real-valued coefficients for V:&lt;br /&gt;
&lt;br /&gt;
p0 = -0.39460731547057293&lt;br /&gt;
&lt;br /&gt;
p1 = -0.33002212811740816&lt;br /&gt;
&lt;br /&gt;
p2 = -0.12391270981321137&lt;br /&gt;
&lt;br /&gt;
q0 = 0.822154737511288&lt;br /&gt;
&lt;br /&gt;
q1 = 0.632488694485779&lt;br /&gt;
&lt;br /&gt;
q2 = 0.40214668677553894&lt;br /&gt;
&lt;br /&gt;
CG = 9.56867&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -23/64&amp;lt;br&amp;gt;-0.359375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -6/64&amp;lt;br&amp;gt;-0.09375&lt;br /&gt;
| 48/64&amp;lt;br&amp;gt;0.75&lt;br /&gt;
| 34/64&amp;lt;br&amp;gt;0.53125&lt;br /&gt;
| 20/64&amp;lt;br&amp;gt;0.3125&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.60021&lt;br /&gt;
| [[Image:8x16.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -26/64&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -22/64&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 26/64&amp;lt;br&amp;gt;0.40625&lt;br /&gt;
| 11/8&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 879/768&amp;lt;br&amp;gt;1.14453125&lt;br /&gt;
| 1469/1280&amp;lt;br&amp;gt;1.14765625&lt;br /&gt;
| 275/224&amp;lt;br&amp;gt;1.2276785714285714&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56627&lt;br /&gt;
| [[Image:8x16r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -20/64&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -4/64&amp;lt;br&amp;gt;-0.0625&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 24/64&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 88/64&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56161&lt;br /&gt;
| [[Image:8x16rd.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -12/32&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -10/32&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -2/32&amp;lt;br&amp;gt;-0.0625&lt;br /&gt;
| 26/32&amp;lt;br&amp;gt;0.8125&lt;br /&gt;
| 20/32&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 12/32&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 48/32&amp;lt;br&amp;gt;1.5&lt;br /&gt;
| 38/32&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| 38/32&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| 38/32&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.5596&lt;br /&gt;
| [[Image:8x16rd_5bits.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 16x32 ==&lt;br /&gt;
&lt;br /&gt;
Best-known real-valued coefficients for V (R=t):&lt;br /&gt;
&lt;br /&gt;
p0 = -0.42111473798940136&lt;br /&gt;
&lt;br /&gt;
p1 = -0.4121736499899753&lt;br /&gt;
&lt;br /&gt;
p2 = -0.3350240707669929&lt;br /&gt;
&lt;br /&gt;
p3 = -0.3224547931861314&lt;br /&gt;
&lt;br /&gt;
p4 = -0.25883387978005545&lt;br /&gt;
&lt;br /&gt;
p5 = -0.20951913473498104&lt;br /&gt;
&lt;br /&gt;
p6 = -0.0598657149803332&lt;br /&gt;
&lt;br /&gt;
q0 = 0.9107782439906195&lt;br /&gt;
&lt;br /&gt;
q1 = 0.8109855829278226&lt;br /&gt;
&lt;br /&gt;
q2 = 0.715846584586721&lt;br /&gt;
&lt;br /&gt;
q3 = 0.6135951570714172&lt;br /&gt;
&lt;br /&gt;
q4 = 0.49846644853347627&lt;br /&gt;
&lt;br /&gt;
q5 = 0.3945215834922529&lt;br /&gt;
&lt;br /&gt;
q6 = 0.21822275136248082&lt;br /&gt;
&lt;br /&gt;
CG = 9.81157&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!p3&lt;br /&gt;
!p4&lt;br /&gt;
!p5&lt;br /&gt;
!p6&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!q3&lt;br /&gt;
!q4&lt;br /&gt;
!q5&lt;br /&gt;
!q6&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!s4&lt;br /&gt;
!s5&lt;br /&gt;
!s6&lt;br /&gt;
!s7&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -23/64&amp;lt;br&amp;gt;-0.359375&lt;br /&gt;
| -17/64&amp;lt;br&amp;gt;-0.265625&lt;br /&gt;
| -12/64&amp;lt;br&amp;gt;-0.1875&lt;br /&gt;
| -14/64&amp;lt;br&amp;gt;-0.21875&lt;br /&gt;
| -13/64&amp;lt;br&amp;gt;-0.203125&lt;br /&gt;
| -7/64&amp;lt;br&amp;gt;-0.109375&lt;br /&gt;
| 50/64&amp;lt;br&amp;gt;0.78125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 31/64&amp;lt;br&amp;gt;0.484375&lt;br /&gt;
| 22/64&amp;lt;br&amp;gt;0.34375&lt;br /&gt;
| 18/64&amp;lt;br&amp;gt;0.28125&lt;br /&gt;
| 16/64&amp;lt;br&amp;gt;0.25&lt;br /&gt;
| 11/64&amp;lt;br&amp;gt;0.171875&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 71/64&amp;lt;br&amp;gt;1.109375&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.89338&lt;br /&gt;
| [[Image:16x32.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -26/64&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -27/64&amp;lt;br&amp;gt;-0.421875&lt;br /&gt;
| -22/64&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| -14/64&amp;lt;br&amp;gt;-0.21875&lt;br /&gt;
| -5/64&amp;lt;br&amp;gt;-0.078125&lt;br /&gt;
| 58/64&amp;lt;br&amp;gt;0.90625&lt;br /&gt;
| 52/64&amp;lt;br&amp;gt;0.8125&lt;br /&gt;
| 45/64&amp;lt;br&amp;gt;0.703125&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 31/64&amp;lt;br&amp;gt;0.484375&lt;br /&gt;
| 23/64&amp;lt;br&amp;gt;0.359375&lt;br /&gt;
| 13/64&amp;lt;br&amp;gt;0.203125&lt;br /&gt;
| 3/2&amp;lt;br&amp;gt;1.5&lt;br /&gt;
| 77/64&amp;lt;br&amp;gt;1.203125&lt;br /&gt;
| 77/64&amp;lt;br&amp;gt;1.203125&lt;br /&gt;
| 1105/896&amp;lt;br&amp;gt;1.23326&lt;br /&gt;
| 218/192&amp;lt;br&amp;gt;1.135417&lt;br /&gt;
| 197/176&amp;lt;br&amp;gt;1.119318&lt;br /&gt;
| 1919/1664&amp;lt;br&amp;gt;1.153245&lt;br /&gt;
| 4351/3840&amp;lt;br&amp;gt;1.133073&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.79398&lt;br /&gt;
| [[Image:16x32r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -32/64&amp;lt;br&amp;gt;-0.5&lt;br /&gt;
| -28/64&amp;lt;br&amp;gt;-0.4375&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -32/64&amp;lt;br&amp;gt;-0.5&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -13/64&amp;lt;br&amp;gt;-0.203125&lt;br /&gt;
| -2/64&amp;lt;br&amp;gt;-0.03125&lt;br /&gt;
| 59/64&amp;lt;br&amp;gt;0.921875&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 46/64&amp;lt;br&amp;gt;0.71875&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 35/64&amp;lt;br&amp;gt;0.546875&lt;br /&gt;
| 24/64&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 12/64&amp;lt;br&amp;gt;0.1875&lt;br /&gt;
| 80/64&amp;lt;br&amp;gt;1.25&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 68/64&amp;lt;br&amp;gt;1.0625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 70/64&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.78294&lt;br /&gt;
| [[Image:16x32rd.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Type-IV Coding Gain ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!4x8&lt;br /&gt;
!4x8 Ramp&lt;br /&gt;
!8x16&lt;br /&gt;
!8x16 Ramp&lt;br /&gt;
!16x32&lt;br /&gt;
!16x32 Ramp&lt;br /&gt;
|-&lt;br /&gt;
|Real Valued&lt;br /&gt;
|8.6349&lt;br /&gt;
|8.60603&lt;br /&gt;
|9.6005&lt;br /&gt;
|9.56867&lt;br /&gt;
|9.9057&lt;br /&gt;
|9.81157&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (8-bit)&lt;br /&gt;
|&lt;br /&gt;
|8.60104&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|&lt;br /&gt;
|0.00499&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (7-bit)&lt;br /&gt;
|&lt;br /&gt;
|8.59886&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|&lt;br /&gt;
|0.00717&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (6-bit)&lt;br /&gt;
|8.63473&lt;br /&gt;
|8.59886&lt;br /&gt;
|9.60021&lt;br /&gt;
|9.56161&lt;br /&gt;
|9.89338&lt;br /&gt;
|9.78294&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|0.00017&lt;br /&gt;
|0.00717&lt;br /&gt;
|0.00029&lt;br /&gt;
|0.00706&lt;br /&gt;
|0.01232&lt;br /&gt;
|0.02863&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (5-bit)&lt;br /&gt;
|8.63409&lt;br /&gt;
|8.56068&lt;br /&gt;
|&lt;br /&gt;
|9.5596&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|0.00081&lt;br /&gt;
|0.04535&lt;br /&gt;
|&lt;br /&gt;
|0.00907&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 8x16 Type-III ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -25/64&amp;lt;br&amp;gt;-0.390625&lt;br /&gt;
| -20/64&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -7/64&amp;lt;br&amp;gt;-0.109375&lt;br /&gt;
| 49/64&amp;lt;br&amp;gt;0.765625&lt;br /&gt;
| 35/64&amp;lt;br&amp;gt;0.546875&lt;br /&gt;
| 21/64&amp;lt;br&amp;gt;0.328125&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.6112&lt;br /&gt;
| [[Image:8x16_type3.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -13/32&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -11/32&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -4/32&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 25/32&amp;lt;br&amp;gt;0.78125&lt;br /&gt;
| 18/32&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 11/32&amp;lt;br&amp;gt;0.34375&lt;br /&gt;
| 45/32&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 36/32&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 36/32&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 38/32&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.61048&lt;br /&gt;
| [[Image:8x16_type3_5bit.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Type-III Coding Gain ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!4x8&lt;br /&gt;
!8x16&lt;br /&gt;
!16x32&lt;br /&gt;
|-&lt;br /&gt;
|Real Valued&lt;br /&gt;
|8.6349&lt;br /&gt;
|9.6115&lt;br /&gt;
|9.9496&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (6-bit)&lt;br /&gt;
|8.63473&lt;br /&gt;
|9.6112&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|0.00017&lt;br /&gt;
|0.00030&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (5-bit)&lt;br /&gt;
|8.63409&lt;br /&gt;
|9.61048&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|0.00081&lt;br /&gt;
|0.00102&lt;br /&gt;
|&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Unlord</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=TDLT&amp;diff=13750</id>
		<title>TDLT</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=TDLT&amp;diff=13750"/>
		<updated>2012-11-04T08:42:52Z</updated>

		<summary type="html">&lt;p&gt;Unlord: /* Type-IV Coding Gain */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page holds the results of Time Domain Lapped Transform (TDLT) optimization problems looking for integer transform coefficients that provide optimal coding gain.  Wherever possible the assumptions are stated.  Later we should include testing against actual image data to verify the results (see test data [http://people.xiph.org/~tterribe/tmp/subset1-y4m.tar.gz here]).&lt;br /&gt;
&lt;br /&gt;
The coding gain objective used as the objective is taken from slide 13 of Tim&#039;s presentation [http://people.xiph.org/~tterribe/pubs/lca2012/auckland/intro_to_video1.pdf An Introduction to Video Coding]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;need figure with block matrix diagrams&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The free parameters are initially just the coefficients p_0,...,p_m,q_0,...,q_m where m=(n/2)-1.  We limit these to being dyadic rationals, e.g., x/2^d with d=6, between [-1,1].&lt;br /&gt;
&lt;br /&gt;
Given p&#039;s and q&#039;s and assuming a linear ramp constrains the s&#039;s.&lt;br /&gt;
 &lt;br /&gt;
== 4x8 ==&lt;br /&gt;
&lt;br /&gt;
Optimal real-valued coefficients for V:&lt;br /&gt;
&lt;br /&gt;
p0 = -0.18117338915051454&lt;br /&gt;
&lt;br /&gt;
q0 = 0.6331818230771687&lt;br /&gt;
&lt;br /&gt;
CG = 8.60603&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!q0&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!CG&lt;br /&gt;
!SBA&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -11/64&amp;lt;br&amp;gt;-0.171875&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 91/64&amp;lt;br&amp;gt;1.421875&lt;br /&gt;
| 85/64&amp;lt;br&amp;gt;1.328125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.63473&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;22.0331&lt;br /&gt;
| [[Image:4x8.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -5/32&amp;lt;br&amp;gt;-0.15625&lt;br /&gt;
| 18/32&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 46/32&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 42/32&amp;lt;br&amp;gt;1.3125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.63409&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;22.5715&lt;br /&gt;
| [[Image:4x8_5bits.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -12/64&amp;lt;br&amp;gt;-0.1875&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 92/64&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 1093/768&amp;lt;br&amp;gt;1.423177&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.60486&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;20.0573&lt;br /&gt;
| [[Image:4x8r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;8-bit&lt;br /&gt;
| -32/256&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 162/256&amp;lt;br&amp;gt;0.6328125&lt;br /&gt;
| 376/256&amp;lt;br&amp;gt;1.46875&lt;br /&gt;
| 357/256&amp;lt;br&amp;gt;1.39453125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.60104&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;21.4037&lt;br /&gt;
| [[Image:4x8rd_8bits.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;7-bit&lt;br /&gt;
| -32/128&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| 82/128&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 184/128&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 186/128&amp;lt;br&amp;gt;1.453125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.59886&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;18.9411&lt;br /&gt;
| [[Image:4x8rd_7bits.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 92/64&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 93/64&amp;lt;br&amp;gt;1.453125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.59886&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;18.9411&lt;br /&gt;
| [[Image:4x8rd.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -8/32&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| 19/32&amp;lt;br&amp;gt;0.59375&lt;br /&gt;
| 52/32&amp;lt;br&amp;gt;1.625&lt;br /&gt;
| 47/32&amp;lt;br&amp;gt;1.46875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.56068&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;20.3279&lt;br /&gt;
| [[Image:4x8rd_5bits.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;max SBA&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 30/64&amp;lt;br&amp;gt;0.46875&lt;br /&gt;
| 136/64&amp;lt;br&amp;gt;2.125&lt;br /&gt;
| 91/64&amp;lt;br&amp;gt;1.421875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.23230&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;25.1934&lt;br /&gt;
| [[Image:4x8rd_sba.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 8x16 ==&lt;br /&gt;
&lt;br /&gt;
Optimal real-valued coefficients for V:&lt;br /&gt;
&lt;br /&gt;
p0 = -0.39460731547057293&lt;br /&gt;
&lt;br /&gt;
p1 = -0.33002212811740816&lt;br /&gt;
&lt;br /&gt;
p2 = -0.12391270981321137&lt;br /&gt;
&lt;br /&gt;
q0 = 0.822154737511288&lt;br /&gt;
&lt;br /&gt;
q1 = 0.632488694485779&lt;br /&gt;
&lt;br /&gt;
q2 = 0.40214668677553894&lt;br /&gt;
&lt;br /&gt;
CG = 9.56867&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -23/64&amp;lt;br&amp;gt;-0.359375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -6/64&amp;lt;br&amp;gt;-0.09375&lt;br /&gt;
| 48/64&amp;lt;br&amp;gt;0.75&lt;br /&gt;
| 34/64&amp;lt;br&amp;gt;0.53125&lt;br /&gt;
| 20/64&amp;lt;br&amp;gt;0.3125&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.60021&lt;br /&gt;
| [[Image:8x16.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -26/64&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -22/64&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 26/64&amp;lt;br&amp;gt;0.40625&lt;br /&gt;
| 11/8&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 879/768&amp;lt;br&amp;gt;1.14453125&lt;br /&gt;
| 1469/1280&amp;lt;br&amp;gt;1.14765625&lt;br /&gt;
| 275/224&amp;lt;br&amp;gt;1.2276785714285714&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56627&lt;br /&gt;
| [[Image:8x16r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -20/64&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -4/64&amp;lt;br&amp;gt;-0.0625&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 24/64&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 88/64&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56161&lt;br /&gt;
| [[Image:8x16rd.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -12/32&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -10/32&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -2/32&amp;lt;br&amp;gt;-0.0625&lt;br /&gt;
| 26/32&amp;lt;br&amp;gt;0.8125&lt;br /&gt;
| 20/32&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 12/32&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 48/32&amp;lt;br&amp;gt;1.5&lt;br /&gt;
| 38/32&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| 38/32&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| 38/32&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.5596&lt;br /&gt;
| [[Image:8x16rd_5bits.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 16x32 ==&lt;br /&gt;
&lt;br /&gt;
Best-known real-valued coefficients for V (R=t):&lt;br /&gt;
&lt;br /&gt;
p0 = -0.42111473798940136&lt;br /&gt;
&lt;br /&gt;
p1 = -0.4121736499899753&lt;br /&gt;
&lt;br /&gt;
p2 = -0.3350240707669929&lt;br /&gt;
&lt;br /&gt;
p3 = -0.3224547931861314&lt;br /&gt;
&lt;br /&gt;
p4 = -0.25883387978005545&lt;br /&gt;
&lt;br /&gt;
p5 = -0.20951913473498104&lt;br /&gt;
&lt;br /&gt;
p6 = -0.0598657149803332&lt;br /&gt;
&lt;br /&gt;
q0 = 0.9107782439906195&lt;br /&gt;
&lt;br /&gt;
q1 = 0.8109855829278226&lt;br /&gt;
&lt;br /&gt;
q2 = 0.715846584586721&lt;br /&gt;
&lt;br /&gt;
q3 = 0.6135951570714172&lt;br /&gt;
&lt;br /&gt;
q4 = 0.49846644853347627&lt;br /&gt;
&lt;br /&gt;
q5 = 0.3945215834922529&lt;br /&gt;
&lt;br /&gt;
q6 = 0.21822275136248082&lt;br /&gt;
&lt;br /&gt;
CG = 9.81157&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!p3&lt;br /&gt;
!p4&lt;br /&gt;
!p5&lt;br /&gt;
!p6&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!q3&lt;br /&gt;
!q4&lt;br /&gt;
!q5&lt;br /&gt;
!q6&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!s4&lt;br /&gt;
!s5&lt;br /&gt;
!s6&lt;br /&gt;
!s7&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -23/64&amp;lt;br&amp;gt;-0.359375&lt;br /&gt;
| -17/64&amp;lt;br&amp;gt;-0.265625&lt;br /&gt;
| -12/64&amp;lt;br&amp;gt;-0.1875&lt;br /&gt;
| -14/64&amp;lt;br&amp;gt;-0.21875&lt;br /&gt;
| -13/64&amp;lt;br&amp;gt;-0.203125&lt;br /&gt;
| -7/64&amp;lt;br&amp;gt;-0.109375&lt;br /&gt;
| 50/64&amp;lt;br&amp;gt;0.78125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 31/64&amp;lt;br&amp;gt;0.484375&lt;br /&gt;
| 22/64&amp;lt;br&amp;gt;0.34375&lt;br /&gt;
| 18/64&amp;lt;br&amp;gt;0.28125&lt;br /&gt;
| 16/64&amp;lt;br&amp;gt;0.25&lt;br /&gt;
| 11/64&amp;lt;br&amp;gt;0.171875&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 71/64&amp;lt;br&amp;gt;1.109375&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.89338&lt;br /&gt;
| [[Image:16x32.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -26/64&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -27/64&amp;lt;br&amp;gt;-0.421875&lt;br /&gt;
| -22/64&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| -14/64&amp;lt;br&amp;gt;-0.21875&lt;br /&gt;
| -5/64&amp;lt;br&amp;gt;-0.078125&lt;br /&gt;
| 58/64&amp;lt;br&amp;gt;0.90625&lt;br /&gt;
| 52/64&amp;lt;br&amp;gt;0.8125&lt;br /&gt;
| 45/64&amp;lt;br&amp;gt;0.703125&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 31/64&amp;lt;br&amp;gt;0.484375&lt;br /&gt;
| 23/64&amp;lt;br&amp;gt;0.359375&lt;br /&gt;
| 13/64&amp;lt;br&amp;gt;0.203125&lt;br /&gt;
| 3/2&amp;lt;br&amp;gt;1.5&lt;br /&gt;
| 77/64&amp;lt;br&amp;gt;1.203125&lt;br /&gt;
| 77/64&amp;lt;br&amp;gt;1.203125&lt;br /&gt;
| 1105/896&amp;lt;br&amp;gt;1.23326&lt;br /&gt;
| 218/192&amp;lt;br&amp;gt;1.135417&lt;br /&gt;
| 197/176&amp;lt;br&amp;gt;1.119318&lt;br /&gt;
| 1919/1664&amp;lt;br&amp;gt;1.153245&lt;br /&gt;
| 4351/3840&amp;lt;br&amp;gt;1.133073&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.79398&lt;br /&gt;
| [[Image:16x32r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&lt;br /&gt;
| -32/64&amp;lt;br&amp;gt;-0.5&lt;br /&gt;
| -28/64&amp;lt;br&amp;gt;-0.4375&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -32/64&amp;lt;br&amp;gt;-0.5&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -13/64&amp;lt;br&amp;gt;-0.203125&lt;br /&gt;
| -2/64&amp;lt;br&amp;gt;-0.03125&lt;br /&gt;
| 59/64&amp;lt;br&amp;gt;0.921875&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 46/64&amp;lt;br&amp;gt;0.71875&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 35/64&amp;lt;br&amp;gt;0.546875&lt;br /&gt;
| 24/64&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 12/64&amp;lt;br&amp;gt;0.1875&lt;br /&gt;
| 80/64&amp;lt;br&amp;gt;1.25&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 68/64&amp;lt;br&amp;gt;1.0625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 70/64&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.78294&lt;br /&gt;
| [[Image:16x32rd.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Type-IV Coding Gain ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!4x8&lt;br /&gt;
!4x8 Ramp&lt;br /&gt;
!8x16&lt;br /&gt;
!8x16 Ramp&lt;br /&gt;
!16x32&lt;br /&gt;
!16x32 Ramp&lt;br /&gt;
|-&lt;br /&gt;
|Real Valued&lt;br /&gt;
|8.6349&lt;br /&gt;
|8.60603&lt;br /&gt;
|9.6005&lt;br /&gt;
|9.56867&lt;br /&gt;
|9.9057&lt;br /&gt;
|9.81157&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (6-bit)&lt;br /&gt;
|8.63473&lt;br /&gt;
|8.59886&lt;br /&gt;
|9.60021&lt;br /&gt;
|9.56161&lt;br /&gt;
|9.89338&lt;br /&gt;
|9.78294&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|0.00017&lt;br /&gt;
|0.00717&lt;br /&gt;
|0.00029&lt;br /&gt;
|0.00706&lt;br /&gt;
|0.01232&lt;br /&gt;
|0.02863&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (5-bit)&lt;br /&gt;
|8.63409&lt;br /&gt;
|8.56068&lt;br /&gt;
|&lt;br /&gt;
|9.5596&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|0.00081&lt;br /&gt;
|0.04535&lt;br /&gt;
|&lt;br /&gt;
|0.00907&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 8x16 Type-III ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -25/64&amp;lt;br&amp;gt;-0.390625&lt;br /&gt;
| -20/64&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -7/64&amp;lt;br&amp;gt;-0.109375&lt;br /&gt;
| 49/64&amp;lt;br&amp;gt;0.765625&lt;br /&gt;
| 35/64&amp;lt;br&amp;gt;0.546875&lt;br /&gt;
| 21/64&amp;lt;br&amp;gt;0.328125&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.6112&lt;br /&gt;
| [[Image:8x16_type3.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Type-III Coding Gain ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!4x8&lt;br /&gt;
!8x16&lt;br /&gt;
!16x32&lt;br /&gt;
|-&lt;br /&gt;
|Real Valued&lt;br /&gt;
|8.6349&lt;br /&gt;
|9.6115&lt;br /&gt;
|9.9496&lt;br /&gt;
|-&lt;br /&gt;
|Approximate&lt;br /&gt;
|8.63473&lt;br /&gt;
|9.6112&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|0.00017&lt;br /&gt;
|0.00030&lt;br /&gt;
|&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Unlord</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=TDLT&amp;diff=13749</id>
		<title>TDLT</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=TDLT&amp;diff=13749"/>
		<updated>2012-11-04T08:38:11Z</updated>

		<summary type="html">&lt;p&gt;Unlord: /* 8x16 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page holds the results of Time Domain Lapped Transform (TDLT) optimization problems looking for integer transform coefficients that provide optimal coding gain.  Wherever possible the assumptions are stated.  Later we should include testing against actual image data to verify the results (see test data [http://people.xiph.org/~tterribe/tmp/subset1-y4m.tar.gz here]).&lt;br /&gt;
&lt;br /&gt;
The coding gain objective used as the objective is taken from slide 13 of Tim&#039;s presentation [http://people.xiph.org/~tterribe/pubs/lca2012/auckland/intro_to_video1.pdf An Introduction to Video Coding]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;need figure with block matrix diagrams&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The free parameters are initially just the coefficients p_0,...,p_m,q_0,...,q_m where m=(n/2)-1.  We limit these to being dyadic rationals, e.g., x/2^d with d=6, between [-1,1].&lt;br /&gt;
&lt;br /&gt;
Given p&#039;s and q&#039;s and assuming a linear ramp constrains the s&#039;s.&lt;br /&gt;
 &lt;br /&gt;
== 4x8 ==&lt;br /&gt;
&lt;br /&gt;
Optimal real-valued coefficients for V:&lt;br /&gt;
&lt;br /&gt;
p0 = -0.18117338915051454&lt;br /&gt;
&lt;br /&gt;
q0 = 0.6331818230771687&lt;br /&gt;
&lt;br /&gt;
CG = 8.60603&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!q0&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!CG&lt;br /&gt;
!SBA&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -11/64&amp;lt;br&amp;gt;-0.171875&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 91/64&amp;lt;br&amp;gt;1.421875&lt;br /&gt;
| 85/64&amp;lt;br&amp;gt;1.328125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.63473&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;22.0331&lt;br /&gt;
| [[Image:4x8.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -5/32&amp;lt;br&amp;gt;-0.15625&lt;br /&gt;
| 18/32&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 46/32&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 42/32&amp;lt;br&amp;gt;1.3125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.63409&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;22.5715&lt;br /&gt;
| [[Image:4x8_5bits.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -12/64&amp;lt;br&amp;gt;-0.1875&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 92/64&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 1093/768&amp;lt;br&amp;gt;1.423177&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.60486&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;20.0573&lt;br /&gt;
| [[Image:4x8r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;8-bit&lt;br /&gt;
| -32/256&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 162/256&amp;lt;br&amp;gt;0.6328125&lt;br /&gt;
| 376/256&amp;lt;br&amp;gt;1.46875&lt;br /&gt;
| 357/256&amp;lt;br&amp;gt;1.39453125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.60104&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;21.4037&lt;br /&gt;
| [[Image:4x8rd_8bits.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;7-bit&lt;br /&gt;
| -32/128&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| 82/128&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 184/128&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 186/128&amp;lt;br&amp;gt;1.453125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.59886&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;18.9411&lt;br /&gt;
| [[Image:4x8rd_7bits.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 92/64&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 93/64&amp;lt;br&amp;gt;1.453125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.59886&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;18.9411&lt;br /&gt;
| [[Image:4x8rd.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -8/32&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| 19/32&amp;lt;br&amp;gt;0.59375&lt;br /&gt;
| 52/32&amp;lt;br&amp;gt;1.625&lt;br /&gt;
| 47/32&amp;lt;br&amp;gt;1.46875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.56068&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;20.3279&lt;br /&gt;
| [[Image:4x8rd_5bits.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;max SBA&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 30/64&amp;lt;br&amp;gt;0.46875&lt;br /&gt;
| 136/64&amp;lt;br&amp;gt;2.125&lt;br /&gt;
| 91/64&amp;lt;br&amp;gt;1.421875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.23230&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;25.1934&lt;br /&gt;
| [[Image:4x8rd_sba.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 8x16 ==&lt;br /&gt;
&lt;br /&gt;
Optimal real-valued coefficients for V:&lt;br /&gt;
&lt;br /&gt;
p0 = -0.39460731547057293&lt;br /&gt;
&lt;br /&gt;
p1 = -0.33002212811740816&lt;br /&gt;
&lt;br /&gt;
p2 = -0.12391270981321137&lt;br /&gt;
&lt;br /&gt;
q0 = 0.822154737511288&lt;br /&gt;
&lt;br /&gt;
q1 = 0.632488694485779&lt;br /&gt;
&lt;br /&gt;
q2 = 0.40214668677553894&lt;br /&gt;
&lt;br /&gt;
CG = 9.56867&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -23/64&amp;lt;br&amp;gt;-0.359375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -6/64&amp;lt;br&amp;gt;-0.09375&lt;br /&gt;
| 48/64&amp;lt;br&amp;gt;0.75&lt;br /&gt;
| 34/64&amp;lt;br&amp;gt;0.53125&lt;br /&gt;
| 20/64&amp;lt;br&amp;gt;0.3125&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.60021&lt;br /&gt;
| [[Image:8x16.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -26/64&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -22/64&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 26/64&amp;lt;br&amp;gt;0.40625&lt;br /&gt;
| 11/8&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 879/768&amp;lt;br&amp;gt;1.14453125&lt;br /&gt;
| 1469/1280&amp;lt;br&amp;gt;1.14765625&lt;br /&gt;
| 275/224&amp;lt;br&amp;gt;1.2276785714285714&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56627&lt;br /&gt;
| [[Image:8x16r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -20/64&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -4/64&amp;lt;br&amp;gt;-0.0625&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 24/64&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 88/64&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56161&lt;br /&gt;
| [[Image:8x16rd.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -12/32&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -10/32&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -2/32&amp;lt;br&amp;gt;-0.0625&lt;br /&gt;
| 26/32&amp;lt;br&amp;gt;0.8125&lt;br /&gt;
| 20/32&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 12/32&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 48/32&amp;lt;br&amp;gt;1.5&lt;br /&gt;
| 38/32&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| 38/32&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| 38/32&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.5596&lt;br /&gt;
| [[Image:8x16rd_5bits.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 16x32 ==&lt;br /&gt;
&lt;br /&gt;
Best-known real-valued coefficients for V (R=t):&lt;br /&gt;
&lt;br /&gt;
p0 = -0.42111473798940136&lt;br /&gt;
&lt;br /&gt;
p1 = -0.4121736499899753&lt;br /&gt;
&lt;br /&gt;
p2 = -0.3350240707669929&lt;br /&gt;
&lt;br /&gt;
p3 = -0.3224547931861314&lt;br /&gt;
&lt;br /&gt;
p4 = -0.25883387978005545&lt;br /&gt;
&lt;br /&gt;
p5 = -0.20951913473498104&lt;br /&gt;
&lt;br /&gt;
p6 = -0.0598657149803332&lt;br /&gt;
&lt;br /&gt;
q0 = 0.9107782439906195&lt;br /&gt;
&lt;br /&gt;
q1 = 0.8109855829278226&lt;br /&gt;
&lt;br /&gt;
q2 = 0.715846584586721&lt;br /&gt;
&lt;br /&gt;
q3 = 0.6135951570714172&lt;br /&gt;
&lt;br /&gt;
q4 = 0.49846644853347627&lt;br /&gt;
&lt;br /&gt;
q5 = 0.3945215834922529&lt;br /&gt;
&lt;br /&gt;
q6 = 0.21822275136248082&lt;br /&gt;
&lt;br /&gt;
CG = 9.81157&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!p3&lt;br /&gt;
!p4&lt;br /&gt;
!p5&lt;br /&gt;
!p6&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!q3&lt;br /&gt;
!q4&lt;br /&gt;
!q5&lt;br /&gt;
!q6&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!s4&lt;br /&gt;
!s5&lt;br /&gt;
!s6&lt;br /&gt;
!s7&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -23/64&amp;lt;br&amp;gt;-0.359375&lt;br /&gt;
| -17/64&amp;lt;br&amp;gt;-0.265625&lt;br /&gt;
| -12/64&amp;lt;br&amp;gt;-0.1875&lt;br /&gt;
| -14/64&amp;lt;br&amp;gt;-0.21875&lt;br /&gt;
| -13/64&amp;lt;br&amp;gt;-0.203125&lt;br /&gt;
| -7/64&amp;lt;br&amp;gt;-0.109375&lt;br /&gt;
| 50/64&amp;lt;br&amp;gt;0.78125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 31/64&amp;lt;br&amp;gt;0.484375&lt;br /&gt;
| 22/64&amp;lt;br&amp;gt;0.34375&lt;br /&gt;
| 18/64&amp;lt;br&amp;gt;0.28125&lt;br /&gt;
| 16/64&amp;lt;br&amp;gt;0.25&lt;br /&gt;
| 11/64&amp;lt;br&amp;gt;0.171875&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 71/64&amp;lt;br&amp;gt;1.109375&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.89338&lt;br /&gt;
| [[Image:16x32.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -26/64&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -27/64&amp;lt;br&amp;gt;-0.421875&lt;br /&gt;
| -22/64&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| -14/64&amp;lt;br&amp;gt;-0.21875&lt;br /&gt;
| -5/64&amp;lt;br&amp;gt;-0.078125&lt;br /&gt;
| 58/64&amp;lt;br&amp;gt;0.90625&lt;br /&gt;
| 52/64&amp;lt;br&amp;gt;0.8125&lt;br /&gt;
| 45/64&amp;lt;br&amp;gt;0.703125&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 31/64&amp;lt;br&amp;gt;0.484375&lt;br /&gt;
| 23/64&amp;lt;br&amp;gt;0.359375&lt;br /&gt;
| 13/64&amp;lt;br&amp;gt;0.203125&lt;br /&gt;
| 3/2&amp;lt;br&amp;gt;1.5&lt;br /&gt;
| 77/64&amp;lt;br&amp;gt;1.203125&lt;br /&gt;
| 77/64&amp;lt;br&amp;gt;1.203125&lt;br /&gt;
| 1105/896&amp;lt;br&amp;gt;1.23326&lt;br /&gt;
| 218/192&amp;lt;br&amp;gt;1.135417&lt;br /&gt;
| 197/176&amp;lt;br&amp;gt;1.119318&lt;br /&gt;
| 1919/1664&amp;lt;br&amp;gt;1.153245&lt;br /&gt;
| 4351/3840&amp;lt;br&amp;gt;1.133073&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.79398&lt;br /&gt;
| [[Image:16x32r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&lt;br /&gt;
| -32/64&amp;lt;br&amp;gt;-0.5&lt;br /&gt;
| -28/64&amp;lt;br&amp;gt;-0.4375&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -32/64&amp;lt;br&amp;gt;-0.5&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -13/64&amp;lt;br&amp;gt;-0.203125&lt;br /&gt;
| -2/64&amp;lt;br&amp;gt;-0.03125&lt;br /&gt;
| 59/64&amp;lt;br&amp;gt;0.921875&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 46/64&amp;lt;br&amp;gt;0.71875&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 35/64&amp;lt;br&amp;gt;0.546875&lt;br /&gt;
| 24/64&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 12/64&amp;lt;br&amp;gt;0.1875&lt;br /&gt;
| 80/64&amp;lt;br&amp;gt;1.25&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 68/64&amp;lt;br&amp;gt;1.0625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 70/64&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.78294&lt;br /&gt;
| [[Image:16x32rd.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Type-IV Coding Gain ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!4x8&lt;br /&gt;
!4x8 Ramp&lt;br /&gt;
!8x16&lt;br /&gt;
!8x16 Ramp&lt;br /&gt;
!16x32&lt;br /&gt;
!16x32 Ramp&lt;br /&gt;
|-&lt;br /&gt;
|Real Valued&lt;br /&gt;
|8.6349&lt;br /&gt;
|8.60603&lt;br /&gt;
|9.6005&lt;br /&gt;
|9.56867&lt;br /&gt;
|9.9057&lt;br /&gt;
|9.81157&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (6-bit)&lt;br /&gt;
|8.63473&lt;br /&gt;
|8.59886&lt;br /&gt;
|9.60021&lt;br /&gt;
|9.56161&lt;br /&gt;
|9.89338&lt;br /&gt;
|9.78294&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|0.00017&lt;br /&gt;
|0.00717&lt;br /&gt;
|0.00029&lt;br /&gt;
|0.00706&lt;br /&gt;
|0.01232&lt;br /&gt;
|0.02863&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (5-bit)&lt;br /&gt;
|8.63409&lt;br /&gt;
|8.56068&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|0.00081&lt;br /&gt;
|0.04535&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 8x16 Type-III ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -25/64&amp;lt;br&amp;gt;-0.390625&lt;br /&gt;
| -20/64&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -7/64&amp;lt;br&amp;gt;-0.109375&lt;br /&gt;
| 49/64&amp;lt;br&amp;gt;0.765625&lt;br /&gt;
| 35/64&amp;lt;br&amp;gt;0.546875&lt;br /&gt;
| 21/64&amp;lt;br&amp;gt;0.328125&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.6112&lt;br /&gt;
| [[Image:8x16_type3.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Type-III Coding Gain ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!4x8&lt;br /&gt;
!8x16&lt;br /&gt;
!16x32&lt;br /&gt;
|-&lt;br /&gt;
|Real Valued&lt;br /&gt;
|8.6349&lt;br /&gt;
|9.6115&lt;br /&gt;
|9.9496&lt;br /&gt;
|-&lt;br /&gt;
|Approximate&lt;br /&gt;
|8.63473&lt;br /&gt;
|9.6112&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|0.00017&lt;br /&gt;
|0.00030&lt;br /&gt;
|&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Unlord</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=TDLT&amp;diff=13747</id>
		<title>TDLT</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=TDLT&amp;diff=13747"/>
		<updated>2012-11-04T07:29:27Z</updated>

		<summary type="html">&lt;p&gt;Unlord: /* 4x8 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page holds the results of Time Domain Lapped Transform (TDLT) optimization problems looking for integer transform coefficients that provide optimal coding gain.  Wherever possible the assumptions are stated.  Later we should include testing against actual image data to verify the results (see test data [http://people.xiph.org/~tterribe/tmp/subset1-y4m.tar.gz here]).&lt;br /&gt;
&lt;br /&gt;
The coding gain objective used as the objective is taken from slide 13 of Tim&#039;s presentation [http://people.xiph.org/~tterribe/pubs/lca2012/auckland/intro_to_video1.pdf An Introduction to Video Coding]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;need figure with block matrix diagrams&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The free parameters are initially just the coefficients p_0,...,p_m,q_0,...,q_m where m=(n/2)-1.  We limit these to being dyadic rationals, e.g., x/2^d with d=6, between [-1,1].&lt;br /&gt;
&lt;br /&gt;
Given p&#039;s and q&#039;s and assuming a linear ramp constrains the s&#039;s.&lt;br /&gt;
 &lt;br /&gt;
== 4x8 ==&lt;br /&gt;
&lt;br /&gt;
Optimal real-valued coefficients for V:&lt;br /&gt;
&lt;br /&gt;
p0 = -0.18117338915051454&lt;br /&gt;
&lt;br /&gt;
q0 = 0.6331818230771687&lt;br /&gt;
&lt;br /&gt;
CG = 8.60603&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!q0&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!CG&lt;br /&gt;
!SBA&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -11/64&amp;lt;br&amp;gt;-0.171875&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 91/64&amp;lt;br&amp;gt;1.421875&lt;br /&gt;
| 85/64&amp;lt;br&amp;gt;1.328125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.63473&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;22.0331&lt;br /&gt;
| [[Image:4x8.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -5/32&amp;lt;br&amp;gt;-0.15625&lt;br /&gt;
| 18/32&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 46/32&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 42/32&amp;lt;br&amp;gt;1.3125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.63409&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;22.5715&lt;br /&gt;
| [[Image:4x8_5bits.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -12/64&amp;lt;br&amp;gt;-0.1875&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 92/64&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 1093/768&amp;lt;br&amp;gt;1.423177&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.60486&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;20.0573&lt;br /&gt;
| [[Image:4x8r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;8-bit&lt;br /&gt;
| -32/256&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 162/256&amp;lt;br&amp;gt;0.6328125&lt;br /&gt;
| 376/256&amp;lt;br&amp;gt;1.46875&lt;br /&gt;
| 357/256&amp;lt;br&amp;gt;1.39453125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.60104&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;21.4037&lt;br /&gt;
| [[Image:4x8rd_8bits.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;7-bit&lt;br /&gt;
| -32/128&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| 82/128&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 184/128&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 186/128&amp;lt;br&amp;gt;1.453125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.59886&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;18.9411&lt;br /&gt;
| [[Image:4x8rd_7bits.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 92/64&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 93/64&amp;lt;br&amp;gt;1.453125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.59886&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;18.9411&lt;br /&gt;
| [[Image:4x8rd.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -8/32&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| 19/32&amp;lt;br&amp;gt;0.59375&lt;br /&gt;
| 52/32&amp;lt;br&amp;gt;1.625&lt;br /&gt;
| 47/32&amp;lt;br&amp;gt;1.46875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.56068&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;20.3279&lt;br /&gt;
| [[Image:4x8rd_5bits.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;max SBA&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 30/64&amp;lt;br&amp;gt;0.46875&lt;br /&gt;
| 136/64&amp;lt;br&amp;gt;2.125&lt;br /&gt;
| 91/64&amp;lt;br&amp;gt;1.421875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.23230&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;25.1934&lt;br /&gt;
| [[Image:4x8rd_sba.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 8x16 ==&lt;br /&gt;
&lt;br /&gt;
Optimal real-valued coefficients for V:&lt;br /&gt;
&lt;br /&gt;
p0 = -0.39460731547057293&lt;br /&gt;
&lt;br /&gt;
p1 = -0.33002212811740816&lt;br /&gt;
&lt;br /&gt;
p2 = -0.12391270981321137&lt;br /&gt;
&lt;br /&gt;
q0 = 0.822154737511288&lt;br /&gt;
&lt;br /&gt;
q1 = 0.632488694485779&lt;br /&gt;
&lt;br /&gt;
q2 = 0.40214668677553894&lt;br /&gt;
&lt;br /&gt;
CG = 9.56867&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -23/64&amp;lt;br&amp;gt;-0.359375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -6/64&amp;lt;br&amp;gt;-0.09375&lt;br /&gt;
| 48/64&amp;lt;br&amp;gt;0.75&lt;br /&gt;
| 34/64&amp;lt;br&amp;gt;0.53125&lt;br /&gt;
| 20/64&amp;lt;br&amp;gt;0.3125&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.60021&lt;br /&gt;
| [[Image:8x16.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -26/64&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -22/64&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 26/64&amp;lt;br&amp;gt;0.40625&lt;br /&gt;
| 11/8&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 879/768&amp;lt;br&amp;gt;1.14453125&lt;br /&gt;
| 1469/1280&amp;lt;br&amp;gt;1.14765625&lt;br /&gt;
| 275/224&amp;lt;br&amp;gt;1.2276785714285714&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56627&lt;br /&gt;
| [[Image:8x16r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -20/64&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -4/64&amp;lt;br&amp;gt;-0.0625&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 24/64&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 88/64&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56161&lt;br /&gt;
| [[Image:8x16rd.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 16x32 ==&lt;br /&gt;
&lt;br /&gt;
Best-known real-valued coefficients for V (R=t):&lt;br /&gt;
&lt;br /&gt;
p0 = -0.42111473798940136&lt;br /&gt;
&lt;br /&gt;
p1 = -0.4121736499899753&lt;br /&gt;
&lt;br /&gt;
p2 = -0.3350240707669929&lt;br /&gt;
&lt;br /&gt;
p3 = -0.3224547931861314&lt;br /&gt;
&lt;br /&gt;
p4 = -0.25883387978005545&lt;br /&gt;
&lt;br /&gt;
p5 = -0.20951913473498104&lt;br /&gt;
&lt;br /&gt;
p6 = -0.0598657149803332&lt;br /&gt;
&lt;br /&gt;
q0 = 0.9107782439906195&lt;br /&gt;
&lt;br /&gt;
q1 = 0.8109855829278226&lt;br /&gt;
&lt;br /&gt;
q2 = 0.715846584586721&lt;br /&gt;
&lt;br /&gt;
q3 = 0.6135951570714172&lt;br /&gt;
&lt;br /&gt;
q4 = 0.49846644853347627&lt;br /&gt;
&lt;br /&gt;
q5 = 0.3945215834922529&lt;br /&gt;
&lt;br /&gt;
q6 = 0.21822275136248082&lt;br /&gt;
&lt;br /&gt;
CG = 9.81157&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!p3&lt;br /&gt;
!p4&lt;br /&gt;
!p5&lt;br /&gt;
!p6&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!q3&lt;br /&gt;
!q4&lt;br /&gt;
!q5&lt;br /&gt;
!q6&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!s4&lt;br /&gt;
!s5&lt;br /&gt;
!s6&lt;br /&gt;
!s7&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -23/64&amp;lt;br&amp;gt;-0.359375&lt;br /&gt;
| -17/64&amp;lt;br&amp;gt;-0.265625&lt;br /&gt;
| -12/64&amp;lt;br&amp;gt;-0.1875&lt;br /&gt;
| -14/64&amp;lt;br&amp;gt;-0.21875&lt;br /&gt;
| -13/64&amp;lt;br&amp;gt;-0.203125&lt;br /&gt;
| -7/64&amp;lt;br&amp;gt;-0.109375&lt;br /&gt;
| 50/64&amp;lt;br&amp;gt;0.78125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 31/64&amp;lt;br&amp;gt;0.484375&lt;br /&gt;
| 22/64&amp;lt;br&amp;gt;0.34375&lt;br /&gt;
| 18/64&amp;lt;br&amp;gt;0.28125&lt;br /&gt;
| 16/64&amp;lt;br&amp;gt;0.25&lt;br /&gt;
| 11/64&amp;lt;br&amp;gt;0.171875&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 71/64&amp;lt;br&amp;gt;1.109375&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.89338&lt;br /&gt;
| [[Image:16x32.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -26/64&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -27/64&amp;lt;br&amp;gt;-0.421875&lt;br /&gt;
| -22/64&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| -14/64&amp;lt;br&amp;gt;-0.21875&lt;br /&gt;
| -5/64&amp;lt;br&amp;gt;-0.078125&lt;br /&gt;
| 58/64&amp;lt;br&amp;gt;0.90625&lt;br /&gt;
| 52/64&amp;lt;br&amp;gt;0.8125&lt;br /&gt;
| 45/64&amp;lt;br&amp;gt;0.703125&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 31/64&amp;lt;br&amp;gt;0.484375&lt;br /&gt;
| 23/64&amp;lt;br&amp;gt;0.359375&lt;br /&gt;
| 13/64&amp;lt;br&amp;gt;0.203125&lt;br /&gt;
| 3/2&amp;lt;br&amp;gt;1.5&lt;br /&gt;
| 77/64&amp;lt;br&amp;gt;1.203125&lt;br /&gt;
| 77/64&amp;lt;br&amp;gt;1.203125&lt;br /&gt;
| 1105/896&amp;lt;br&amp;gt;1.23326&lt;br /&gt;
| 218/192&amp;lt;br&amp;gt;1.135417&lt;br /&gt;
| 197/176&amp;lt;br&amp;gt;1.119318&lt;br /&gt;
| 1919/1664&amp;lt;br&amp;gt;1.153245&lt;br /&gt;
| 4351/3840&amp;lt;br&amp;gt;1.133073&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.79398&lt;br /&gt;
| [[Image:16x32r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&lt;br /&gt;
| -32/64&amp;lt;br&amp;gt;-0.5&lt;br /&gt;
| -28/64&amp;lt;br&amp;gt;-0.4375&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -32/64&amp;lt;br&amp;gt;-0.5&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -13/64&amp;lt;br&amp;gt;-0.203125&lt;br /&gt;
| -2/64&amp;lt;br&amp;gt;-0.03125&lt;br /&gt;
| 59/64&amp;lt;br&amp;gt;0.921875&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 46/64&amp;lt;br&amp;gt;0.71875&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 35/64&amp;lt;br&amp;gt;0.546875&lt;br /&gt;
| 24/64&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 12/64&amp;lt;br&amp;gt;0.1875&lt;br /&gt;
| 80/64&amp;lt;br&amp;gt;1.25&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 68/64&amp;lt;br&amp;gt;1.0625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 70/64&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.78294&lt;br /&gt;
| [[Image:16x32rd.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Type-IV Coding Gain ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!4x8&lt;br /&gt;
!4x8 Ramp&lt;br /&gt;
!8x16&lt;br /&gt;
!8x16 Ramp&lt;br /&gt;
!16x32&lt;br /&gt;
!16x32 Ramp&lt;br /&gt;
|-&lt;br /&gt;
|Real Valued&lt;br /&gt;
|8.6349&lt;br /&gt;
|8.60603&lt;br /&gt;
|9.6005&lt;br /&gt;
|9.56867&lt;br /&gt;
|9.9057&lt;br /&gt;
|9.81157&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (6-bit)&lt;br /&gt;
|8.63473&lt;br /&gt;
|8.59886&lt;br /&gt;
|9.60021&lt;br /&gt;
|9.56161&lt;br /&gt;
|9.89338&lt;br /&gt;
|9.78294&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|0.00017&lt;br /&gt;
|0.00717&lt;br /&gt;
|0.00029&lt;br /&gt;
|0.00706&lt;br /&gt;
|0.01232&lt;br /&gt;
|0.02863&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (5-bit)&lt;br /&gt;
|8.63409&lt;br /&gt;
|8.56068&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|0.00081&lt;br /&gt;
|0.04535&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 8x16 Type-III ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -25/64&amp;lt;br&amp;gt;-0.390625&lt;br /&gt;
| -20/64&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -7/64&amp;lt;br&amp;gt;-0.109375&lt;br /&gt;
| 49/64&amp;lt;br&amp;gt;0.765625&lt;br /&gt;
| 35/64&amp;lt;br&amp;gt;0.546875&lt;br /&gt;
| 21/64&amp;lt;br&amp;gt;0.328125&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.6112&lt;br /&gt;
| [[Image:8x16_type3.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Type-III Coding Gain ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!4x8&lt;br /&gt;
!8x16&lt;br /&gt;
!16x32&lt;br /&gt;
|-&lt;br /&gt;
|Real Valued&lt;br /&gt;
|8.6349&lt;br /&gt;
|9.6115&lt;br /&gt;
|9.9496&lt;br /&gt;
|-&lt;br /&gt;
|Approximate&lt;br /&gt;
|8.63473&lt;br /&gt;
|9.6112&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|0.00017&lt;br /&gt;
|0.00030&lt;br /&gt;
|&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Unlord</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=TDLT&amp;diff=13746</id>
		<title>TDLT</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=TDLT&amp;diff=13746"/>
		<updated>2012-11-04T06:48:47Z</updated>

		<summary type="html">&lt;p&gt;Unlord: /* Type-IV Coding Gain */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page holds the results of Time Domain Lapped Transform (TDLT) optimization problems looking for integer transform coefficients that provide optimal coding gain.  Wherever possible the assumptions are stated.  Later we should include testing against actual image data to verify the results (see test data [http://people.xiph.org/~tterribe/tmp/subset1-y4m.tar.gz here]).&lt;br /&gt;
&lt;br /&gt;
The coding gain objective used as the objective is taken from slide 13 of Tim&#039;s presentation [http://people.xiph.org/~tterribe/pubs/lca2012/auckland/intro_to_video1.pdf An Introduction to Video Coding]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;need figure with block matrix diagrams&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The free parameters are initially just the coefficients p_0,...,p_m,q_0,...,q_m where m=(n/2)-1.  We limit these to being dyadic rationals, e.g., x/2^d with d=6, between [-1,1].&lt;br /&gt;
&lt;br /&gt;
Given p&#039;s and q&#039;s and assuming a linear ramp constrains the s&#039;s.&lt;br /&gt;
 &lt;br /&gt;
== 4x8 ==&lt;br /&gt;
&lt;br /&gt;
Optimal real-valued coefficients for V:&lt;br /&gt;
&lt;br /&gt;
p0 = -0.18117338915051454&lt;br /&gt;
&lt;br /&gt;
q0 = 0.6331818230771687&lt;br /&gt;
&lt;br /&gt;
CG = 8.60603&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!q0&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!CG&lt;br /&gt;
!SBA&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -11/64&amp;lt;br&amp;gt;-0.171875&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 91/64&amp;lt;br&amp;gt;1.421875&lt;br /&gt;
| 85/64&amp;lt;br&amp;gt;1.328125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.63473&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;22.0331&lt;br /&gt;
| [[Image:4x8.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -5/32&amp;lt;br&amp;gt;-0.15625&lt;br /&gt;
| 18/32&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 46/32&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 42/32&amp;lt;br&amp;gt;1.3125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.63409&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;22.5715&lt;br /&gt;
| [[Image:4x8_5bits.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -12/64&amp;lt;br&amp;gt;-0.1875&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 92/64&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 1093/768&amp;lt;br&amp;gt;1.423177&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.60486&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;20.0573&lt;br /&gt;
| [[Image:4x8r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;max CG&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 92/64&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 93/64&amp;lt;br&amp;gt;1.453125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.59886&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;18.9411&lt;br /&gt;
| [[Image:4x8rd.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -8/32&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| 19/32&amp;lt;br&amp;gt;0.59375&lt;br /&gt;
| 52/32&amp;lt;br&amp;gt;1.625&lt;br /&gt;
| 47/32&amp;lt;br&amp;gt;1.46875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.56068&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;20.3279&lt;br /&gt;
| [[Image:4x8rd_5bits.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;max SBA&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 30/64&amp;lt;br&amp;gt;0.46875&lt;br /&gt;
| 136/64&amp;lt;br&amp;gt;2.125&lt;br /&gt;
| 91/64&amp;lt;br&amp;gt;1.421875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.23230&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;25.1934&lt;br /&gt;
| [[Image:4x8rd_sba.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 8x16 ==&lt;br /&gt;
&lt;br /&gt;
Optimal real-valued coefficients for V:&lt;br /&gt;
&lt;br /&gt;
p0 = -0.39460731547057293&lt;br /&gt;
&lt;br /&gt;
p1 = -0.33002212811740816&lt;br /&gt;
&lt;br /&gt;
p2 = -0.12391270981321137&lt;br /&gt;
&lt;br /&gt;
q0 = 0.822154737511288&lt;br /&gt;
&lt;br /&gt;
q1 = 0.632488694485779&lt;br /&gt;
&lt;br /&gt;
q2 = 0.40214668677553894&lt;br /&gt;
&lt;br /&gt;
CG = 9.56867&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -23/64&amp;lt;br&amp;gt;-0.359375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -6/64&amp;lt;br&amp;gt;-0.09375&lt;br /&gt;
| 48/64&amp;lt;br&amp;gt;0.75&lt;br /&gt;
| 34/64&amp;lt;br&amp;gt;0.53125&lt;br /&gt;
| 20/64&amp;lt;br&amp;gt;0.3125&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.60021&lt;br /&gt;
| [[Image:8x16.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -26/64&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -22/64&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 26/64&amp;lt;br&amp;gt;0.40625&lt;br /&gt;
| 11/8&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 879/768&amp;lt;br&amp;gt;1.14453125&lt;br /&gt;
| 1469/1280&amp;lt;br&amp;gt;1.14765625&lt;br /&gt;
| 275/224&amp;lt;br&amp;gt;1.2276785714285714&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56627&lt;br /&gt;
| [[Image:8x16r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -20/64&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -4/64&amp;lt;br&amp;gt;-0.0625&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 24/64&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 88/64&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56161&lt;br /&gt;
| [[Image:8x16rd.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 16x32 ==&lt;br /&gt;
&lt;br /&gt;
Best-known real-valued coefficients for V (R=t):&lt;br /&gt;
&lt;br /&gt;
p0 = -0.42111473798940136&lt;br /&gt;
&lt;br /&gt;
p1 = -0.4121736499899753&lt;br /&gt;
&lt;br /&gt;
p2 = -0.3350240707669929&lt;br /&gt;
&lt;br /&gt;
p3 = -0.3224547931861314&lt;br /&gt;
&lt;br /&gt;
p4 = -0.25883387978005545&lt;br /&gt;
&lt;br /&gt;
p5 = -0.20951913473498104&lt;br /&gt;
&lt;br /&gt;
p6 = -0.0598657149803332&lt;br /&gt;
&lt;br /&gt;
q0 = 0.9107782439906195&lt;br /&gt;
&lt;br /&gt;
q1 = 0.8109855829278226&lt;br /&gt;
&lt;br /&gt;
q2 = 0.715846584586721&lt;br /&gt;
&lt;br /&gt;
q3 = 0.6135951570714172&lt;br /&gt;
&lt;br /&gt;
q4 = 0.49846644853347627&lt;br /&gt;
&lt;br /&gt;
q5 = 0.3945215834922529&lt;br /&gt;
&lt;br /&gt;
q6 = 0.21822275136248082&lt;br /&gt;
&lt;br /&gt;
CG = 9.81157&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!p3&lt;br /&gt;
!p4&lt;br /&gt;
!p5&lt;br /&gt;
!p6&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!q3&lt;br /&gt;
!q4&lt;br /&gt;
!q5&lt;br /&gt;
!q6&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!s4&lt;br /&gt;
!s5&lt;br /&gt;
!s6&lt;br /&gt;
!s7&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -23/64&amp;lt;br&amp;gt;-0.359375&lt;br /&gt;
| -17/64&amp;lt;br&amp;gt;-0.265625&lt;br /&gt;
| -12/64&amp;lt;br&amp;gt;-0.1875&lt;br /&gt;
| -14/64&amp;lt;br&amp;gt;-0.21875&lt;br /&gt;
| -13/64&amp;lt;br&amp;gt;-0.203125&lt;br /&gt;
| -7/64&amp;lt;br&amp;gt;-0.109375&lt;br /&gt;
| 50/64&amp;lt;br&amp;gt;0.78125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 31/64&amp;lt;br&amp;gt;0.484375&lt;br /&gt;
| 22/64&amp;lt;br&amp;gt;0.34375&lt;br /&gt;
| 18/64&amp;lt;br&amp;gt;0.28125&lt;br /&gt;
| 16/64&amp;lt;br&amp;gt;0.25&lt;br /&gt;
| 11/64&amp;lt;br&amp;gt;0.171875&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 71/64&amp;lt;br&amp;gt;1.109375&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.89338&lt;br /&gt;
| [[Image:16x32.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -26/64&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -27/64&amp;lt;br&amp;gt;-0.421875&lt;br /&gt;
| -22/64&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| -14/64&amp;lt;br&amp;gt;-0.21875&lt;br /&gt;
| -5/64&amp;lt;br&amp;gt;-0.078125&lt;br /&gt;
| 58/64&amp;lt;br&amp;gt;0.90625&lt;br /&gt;
| 52/64&amp;lt;br&amp;gt;0.8125&lt;br /&gt;
| 45/64&amp;lt;br&amp;gt;0.703125&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 31/64&amp;lt;br&amp;gt;0.484375&lt;br /&gt;
| 23/64&amp;lt;br&amp;gt;0.359375&lt;br /&gt;
| 13/64&amp;lt;br&amp;gt;0.203125&lt;br /&gt;
| 3/2&amp;lt;br&amp;gt;1.5&lt;br /&gt;
| 77/64&amp;lt;br&amp;gt;1.203125&lt;br /&gt;
| 77/64&amp;lt;br&amp;gt;1.203125&lt;br /&gt;
| 1105/896&amp;lt;br&amp;gt;1.23326&lt;br /&gt;
| 218/192&amp;lt;br&amp;gt;1.135417&lt;br /&gt;
| 197/176&amp;lt;br&amp;gt;1.119318&lt;br /&gt;
| 1919/1664&amp;lt;br&amp;gt;1.153245&lt;br /&gt;
| 4351/3840&amp;lt;br&amp;gt;1.133073&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.79398&lt;br /&gt;
| [[Image:16x32r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&lt;br /&gt;
| -32/64&amp;lt;br&amp;gt;-0.5&lt;br /&gt;
| -28/64&amp;lt;br&amp;gt;-0.4375&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -32/64&amp;lt;br&amp;gt;-0.5&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -13/64&amp;lt;br&amp;gt;-0.203125&lt;br /&gt;
| -2/64&amp;lt;br&amp;gt;-0.03125&lt;br /&gt;
| 59/64&amp;lt;br&amp;gt;0.921875&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 46/64&amp;lt;br&amp;gt;0.71875&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 35/64&amp;lt;br&amp;gt;0.546875&lt;br /&gt;
| 24/64&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 12/64&amp;lt;br&amp;gt;0.1875&lt;br /&gt;
| 80/64&amp;lt;br&amp;gt;1.25&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 68/64&amp;lt;br&amp;gt;1.0625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 70/64&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.78294&lt;br /&gt;
| [[Image:16x32rd.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Type-IV Coding Gain ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!4x8&lt;br /&gt;
!4x8 Ramp&lt;br /&gt;
!8x16&lt;br /&gt;
!8x16 Ramp&lt;br /&gt;
!16x32&lt;br /&gt;
!16x32 Ramp&lt;br /&gt;
|-&lt;br /&gt;
|Real Valued&lt;br /&gt;
|8.6349&lt;br /&gt;
|8.60603&lt;br /&gt;
|9.6005&lt;br /&gt;
|9.56867&lt;br /&gt;
|9.9057&lt;br /&gt;
|9.81157&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (6-bit)&lt;br /&gt;
|8.63473&lt;br /&gt;
|8.59886&lt;br /&gt;
|9.60021&lt;br /&gt;
|9.56161&lt;br /&gt;
|9.89338&lt;br /&gt;
|9.78294&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|0.00017&lt;br /&gt;
|0.00717&lt;br /&gt;
|0.00029&lt;br /&gt;
|0.00706&lt;br /&gt;
|0.01232&lt;br /&gt;
|0.02863&lt;br /&gt;
|-&lt;br /&gt;
|Dyadic (5-bit)&lt;br /&gt;
|8.63409&lt;br /&gt;
|8.56068&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|0.00081&lt;br /&gt;
|0.04535&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 8x16 Type-III ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -25/64&amp;lt;br&amp;gt;-0.390625&lt;br /&gt;
| -20/64&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -7/64&amp;lt;br&amp;gt;-0.109375&lt;br /&gt;
| 49/64&amp;lt;br&amp;gt;0.765625&lt;br /&gt;
| 35/64&amp;lt;br&amp;gt;0.546875&lt;br /&gt;
| 21/64&amp;lt;br&amp;gt;0.328125&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.6112&lt;br /&gt;
| [[Image:8x16_type3.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Type-III Coding Gain ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!4x8&lt;br /&gt;
!8x16&lt;br /&gt;
!16x32&lt;br /&gt;
|-&lt;br /&gt;
|Real Valued&lt;br /&gt;
|8.6349&lt;br /&gt;
|9.6115&lt;br /&gt;
|9.9496&lt;br /&gt;
|-&lt;br /&gt;
|Approximate&lt;br /&gt;
|8.63473&lt;br /&gt;
|9.6112&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|0.00017&lt;br /&gt;
|0.00030&lt;br /&gt;
|&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Unlord</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=TDLT&amp;diff=13745</id>
		<title>TDLT</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=TDLT&amp;diff=13745"/>
		<updated>2012-11-04T06:30:47Z</updated>

		<summary type="html">&lt;p&gt;Unlord: /* 4x8 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page holds the results of Time Domain Lapped Transform (TDLT) optimization problems looking for integer transform coefficients that provide optimal coding gain.  Wherever possible the assumptions are stated.  Later we should include testing against actual image data to verify the results (see test data [http://people.xiph.org/~tterribe/tmp/subset1-y4m.tar.gz here]).&lt;br /&gt;
&lt;br /&gt;
The coding gain objective used as the objective is taken from slide 13 of Tim&#039;s presentation [http://people.xiph.org/~tterribe/pubs/lca2012/auckland/intro_to_video1.pdf An Introduction to Video Coding]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;need figure with block matrix diagrams&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The free parameters are initially just the coefficients p_0,...,p_m,q_0,...,q_m where m=(n/2)-1.  We limit these to being dyadic rationals, e.g., x/2^d with d=6, between [-1,1].&lt;br /&gt;
&lt;br /&gt;
Given p&#039;s and q&#039;s and assuming a linear ramp constrains the s&#039;s.&lt;br /&gt;
 &lt;br /&gt;
== 4x8 ==&lt;br /&gt;
&lt;br /&gt;
Optimal real-valued coefficients for V:&lt;br /&gt;
&lt;br /&gt;
p0 = -0.18117338915051454&lt;br /&gt;
&lt;br /&gt;
q0 = 0.6331818230771687&lt;br /&gt;
&lt;br /&gt;
CG = 8.60603&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!q0&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!CG&lt;br /&gt;
!SBA&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;6-bit&lt;br /&gt;
| -11/64&amp;lt;br&amp;gt;-0.171875&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 91/64&amp;lt;br&amp;gt;1.421875&lt;br /&gt;
| 85/64&amp;lt;br&amp;gt;1.328125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.63473&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;22.0331&lt;br /&gt;
| [[Image:4x8.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=f&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -5/32&amp;lt;br&amp;gt;-0.15625&lt;br /&gt;
| 18/32&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 46/32&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 42/32&amp;lt;br&amp;gt;1.3125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.63409&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;22.5715&lt;br /&gt;
| [[Image:4x8_5bits.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -12/64&amp;lt;br&amp;gt;-0.1875&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 92/64&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 1093/768&amp;lt;br&amp;gt;1.423177&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.60486&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;20.0573&lt;br /&gt;
| [[Image:4x8r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;max CG&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 92/64&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 93/64&amp;lt;br&amp;gt;1.453125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.59886&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;18.9411&lt;br /&gt;
| [[Image:4x8rd.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;5-bit&lt;br /&gt;
| -8/32&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| 19/32&amp;lt;br&amp;gt;0.59375&lt;br /&gt;
| 52/32&amp;lt;br&amp;gt;1.625&lt;br /&gt;
| 47/32&amp;lt;br&amp;gt;1.46875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.56068&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;20.3279&lt;br /&gt;
| [[Image:4x8rd_5bits.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;max SBA&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 30/64&amp;lt;br&amp;gt;0.46875&lt;br /&gt;
| 136/64&amp;lt;br&amp;gt;2.125&lt;br /&gt;
| 91/64&amp;lt;br&amp;gt;1.421875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.23230&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;25.1934&lt;br /&gt;
| [[Image:4x8rd_sba.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 8x16 ==&lt;br /&gt;
&lt;br /&gt;
Optimal real-valued coefficients for V:&lt;br /&gt;
&lt;br /&gt;
p0 = -0.39460731547057293&lt;br /&gt;
&lt;br /&gt;
p1 = -0.33002212811740816&lt;br /&gt;
&lt;br /&gt;
p2 = -0.12391270981321137&lt;br /&gt;
&lt;br /&gt;
q0 = 0.822154737511288&lt;br /&gt;
&lt;br /&gt;
q1 = 0.632488694485779&lt;br /&gt;
&lt;br /&gt;
q2 = 0.40214668677553894&lt;br /&gt;
&lt;br /&gt;
CG = 9.56867&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -23/64&amp;lt;br&amp;gt;-0.359375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -6/64&amp;lt;br&amp;gt;-0.09375&lt;br /&gt;
| 48/64&amp;lt;br&amp;gt;0.75&lt;br /&gt;
| 34/64&amp;lt;br&amp;gt;0.53125&lt;br /&gt;
| 20/64&amp;lt;br&amp;gt;0.3125&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.60021&lt;br /&gt;
| [[Image:8x16.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -26/64&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -22/64&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 26/64&amp;lt;br&amp;gt;0.40625&lt;br /&gt;
| 11/8&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 879/768&amp;lt;br&amp;gt;1.14453125&lt;br /&gt;
| 1469/1280&amp;lt;br&amp;gt;1.14765625&lt;br /&gt;
| 275/224&amp;lt;br&amp;gt;1.2276785714285714&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56627&lt;br /&gt;
| [[Image:8x16r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -20/64&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -4/64&amp;lt;br&amp;gt;-0.0625&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 24/64&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 88/64&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56161&lt;br /&gt;
| [[Image:8x16rd.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 16x32 ==&lt;br /&gt;
&lt;br /&gt;
Best-known real-valued coefficients for V (R=t):&lt;br /&gt;
&lt;br /&gt;
p0 = -0.42111473798940136&lt;br /&gt;
&lt;br /&gt;
p1 = -0.4121736499899753&lt;br /&gt;
&lt;br /&gt;
p2 = -0.3350240707669929&lt;br /&gt;
&lt;br /&gt;
p3 = -0.3224547931861314&lt;br /&gt;
&lt;br /&gt;
p4 = -0.25883387978005545&lt;br /&gt;
&lt;br /&gt;
p5 = -0.20951913473498104&lt;br /&gt;
&lt;br /&gt;
p6 = -0.0598657149803332&lt;br /&gt;
&lt;br /&gt;
q0 = 0.9107782439906195&lt;br /&gt;
&lt;br /&gt;
q1 = 0.8109855829278226&lt;br /&gt;
&lt;br /&gt;
q2 = 0.715846584586721&lt;br /&gt;
&lt;br /&gt;
q3 = 0.6135951570714172&lt;br /&gt;
&lt;br /&gt;
q4 = 0.49846644853347627&lt;br /&gt;
&lt;br /&gt;
q5 = 0.3945215834922529&lt;br /&gt;
&lt;br /&gt;
q6 = 0.21822275136248082&lt;br /&gt;
&lt;br /&gt;
CG = 9.81157&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!p3&lt;br /&gt;
!p4&lt;br /&gt;
!p5&lt;br /&gt;
!p6&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!q3&lt;br /&gt;
!q4&lt;br /&gt;
!q5&lt;br /&gt;
!q6&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!s4&lt;br /&gt;
!s5&lt;br /&gt;
!s6&lt;br /&gt;
!s7&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -23/64&amp;lt;br&amp;gt;-0.359375&lt;br /&gt;
| -17/64&amp;lt;br&amp;gt;-0.265625&lt;br /&gt;
| -12/64&amp;lt;br&amp;gt;-0.1875&lt;br /&gt;
| -14/64&amp;lt;br&amp;gt;-0.21875&lt;br /&gt;
| -13/64&amp;lt;br&amp;gt;-0.203125&lt;br /&gt;
| -7/64&amp;lt;br&amp;gt;-0.109375&lt;br /&gt;
| 50/64&amp;lt;br&amp;gt;0.78125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 31/64&amp;lt;br&amp;gt;0.484375&lt;br /&gt;
| 22/64&amp;lt;br&amp;gt;0.34375&lt;br /&gt;
| 18/64&amp;lt;br&amp;gt;0.28125&lt;br /&gt;
| 16/64&amp;lt;br&amp;gt;0.25&lt;br /&gt;
| 11/64&amp;lt;br&amp;gt;0.171875&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 71/64&amp;lt;br&amp;gt;1.109375&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.89338&lt;br /&gt;
| [[Image:16x32.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -26/64&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -27/64&amp;lt;br&amp;gt;-0.421875&lt;br /&gt;
| -22/64&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| -14/64&amp;lt;br&amp;gt;-0.21875&lt;br /&gt;
| -5/64&amp;lt;br&amp;gt;-0.078125&lt;br /&gt;
| 58/64&amp;lt;br&amp;gt;0.90625&lt;br /&gt;
| 52/64&amp;lt;br&amp;gt;0.8125&lt;br /&gt;
| 45/64&amp;lt;br&amp;gt;0.703125&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 31/64&amp;lt;br&amp;gt;0.484375&lt;br /&gt;
| 23/64&amp;lt;br&amp;gt;0.359375&lt;br /&gt;
| 13/64&amp;lt;br&amp;gt;0.203125&lt;br /&gt;
| 3/2&amp;lt;br&amp;gt;1.5&lt;br /&gt;
| 77/64&amp;lt;br&amp;gt;1.203125&lt;br /&gt;
| 77/64&amp;lt;br&amp;gt;1.203125&lt;br /&gt;
| 1105/896&amp;lt;br&amp;gt;1.23326&lt;br /&gt;
| 218/192&amp;lt;br&amp;gt;1.135417&lt;br /&gt;
| 197/176&amp;lt;br&amp;gt;1.119318&lt;br /&gt;
| 1919/1664&amp;lt;br&amp;gt;1.153245&lt;br /&gt;
| 4351/3840&amp;lt;br&amp;gt;1.133073&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.79398&lt;br /&gt;
| [[Image:16x32r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&lt;br /&gt;
| -32/64&amp;lt;br&amp;gt;-0.5&lt;br /&gt;
| -28/64&amp;lt;br&amp;gt;-0.4375&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -32/64&amp;lt;br&amp;gt;-0.5&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -13/64&amp;lt;br&amp;gt;-0.203125&lt;br /&gt;
| -2/64&amp;lt;br&amp;gt;-0.03125&lt;br /&gt;
| 59/64&amp;lt;br&amp;gt;0.921875&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 46/64&amp;lt;br&amp;gt;0.71875&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 35/64&amp;lt;br&amp;gt;0.546875&lt;br /&gt;
| 24/64&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 12/64&amp;lt;br&amp;gt;0.1875&lt;br /&gt;
| 80/64&amp;lt;br&amp;gt;1.25&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 68/64&amp;lt;br&amp;gt;1.0625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 70/64&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.78294&lt;br /&gt;
| [[Image:16x32rd.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Type-IV Coding Gain ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!4x8&lt;br /&gt;
!8x16&lt;br /&gt;
!16x32&lt;br /&gt;
|-&lt;br /&gt;
|Real Valued&lt;br /&gt;
|8.6349&lt;br /&gt;
|9.6005&lt;br /&gt;
|9.9057&lt;br /&gt;
|-&lt;br /&gt;
|Approximate&lt;br /&gt;
|8.63473&lt;br /&gt;
|9.60021&lt;br /&gt;
|9.89338&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|0.00017&lt;br /&gt;
|0.00029&lt;br /&gt;
|0.01232&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 8x16 Type-III ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -25/64&amp;lt;br&amp;gt;-0.390625&lt;br /&gt;
| -20/64&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -7/64&amp;lt;br&amp;gt;-0.109375&lt;br /&gt;
| 49/64&amp;lt;br&amp;gt;0.765625&lt;br /&gt;
| 35/64&amp;lt;br&amp;gt;0.546875&lt;br /&gt;
| 21/64&amp;lt;br&amp;gt;0.328125&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.6112&lt;br /&gt;
| [[Image:8x16_type3.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Type-III Coding Gain ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!4x8&lt;br /&gt;
!8x16&lt;br /&gt;
!16x32&lt;br /&gt;
|-&lt;br /&gt;
|Real Valued&lt;br /&gt;
|8.6349&lt;br /&gt;
|9.6115&lt;br /&gt;
|9.9496&lt;br /&gt;
|-&lt;br /&gt;
|Approximate&lt;br /&gt;
|8.63473&lt;br /&gt;
|9.6112&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|0.00017&lt;br /&gt;
|0.00030&lt;br /&gt;
|&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Unlord</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=TDLT&amp;diff=13743</id>
		<title>TDLT</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=TDLT&amp;diff=13743"/>
		<updated>2012-11-03T17:58:03Z</updated>

		<summary type="html">&lt;p&gt;Unlord: Adding Type-III comparison table&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page holds the results of Time Domain Lapped Transform (TDLT) optimization problems looking for integer transform coefficients that provide optimal coding gain.  Wherever possible the assumptions are stated.  Later we should include testing against actual image data to verify the results (see test data [http://people.xiph.org/~tterribe/tmp/subset1-y4m.tar.gz here]).&lt;br /&gt;
&lt;br /&gt;
The coding gain objective used as the objective is taken from slide 13 of Tim&#039;s presentation [http://people.xiph.org/~tterribe/pubs/lca2012/auckland/intro_to_video1.pdf An Introduction to Video Coding]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;need figure with block matrix diagrams&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The free parameters are initially just the coefficients p_0,...,p_m,q_0,...,q_m where m=(n/2)-1.  We limit these to being dyadic rationals, e.g., x/2^d with d=6, between [-1,1].&lt;br /&gt;
&lt;br /&gt;
Given p&#039;s and q&#039;s and assuming a linear ramp constrains the s&#039;s.&lt;br /&gt;
 &lt;br /&gt;
== 4x8 ==&lt;br /&gt;
&lt;br /&gt;
Optimal real-valued coefficients for V:&lt;br /&gt;
&lt;br /&gt;
p0 = -0.18117338915051454&lt;br /&gt;
&lt;br /&gt;
q0 = 0.6331818230771687&lt;br /&gt;
&lt;br /&gt;
CG = 8.60603&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!q0&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!CG&lt;br /&gt;
!SBA&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -11/64&amp;lt;br&amp;gt;-0.171875&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 91/64&amp;lt;br&amp;gt;1.421875&lt;br /&gt;
| 85/64&amp;lt;br&amp;gt;1.328125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.63473&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;22.0331&lt;br /&gt;
| [[Image:4x8.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -12/64&amp;lt;br&amp;gt;-0.1875&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 92/64&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 1093/768&amp;lt;br&amp;gt;1.423177&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.60486&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;20.0573&lt;br /&gt;
| [[Image:4x8r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;max CG&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 92/64&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 93/64&amp;lt;br&amp;gt;1.453125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.59886&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;18.9411&lt;br /&gt;
| [[Image:4x8rd.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;max SBA&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 30/64&amp;lt;br&amp;gt;0.46875&lt;br /&gt;
| 136/64&amp;lt;br&amp;gt;2.125&lt;br /&gt;
| 91/64&amp;lt;br&amp;gt;1.421875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.23230&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;25.1934&lt;br /&gt;
| [[Image:4x8rd_sba.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 8x16 ==&lt;br /&gt;
&lt;br /&gt;
Optimal real-valued coefficients for V:&lt;br /&gt;
&lt;br /&gt;
p0 = -0.39460731547057293&lt;br /&gt;
&lt;br /&gt;
p1 = -0.33002212811740816&lt;br /&gt;
&lt;br /&gt;
p2 = -0.12391270981321137&lt;br /&gt;
&lt;br /&gt;
q0 = 0.822154737511288&lt;br /&gt;
&lt;br /&gt;
q1 = 0.632488694485779&lt;br /&gt;
&lt;br /&gt;
q2 = 0.40214668677553894&lt;br /&gt;
&lt;br /&gt;
CG = 9.56867&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -23/64&amp;lt;br&amp;gt;-0.359375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -6/64&amp;lt;br&amp;gt;-0.09375&lt;br /&gt;
| 48/64&amp;lt;br&amp;gt;0.75&lt;br /&gt;
| 34/64&amp;lt;br&amp;gt;0.53125&lt;br /&gt;
| 20/64&amp;lt;br&amp;gt;0.3125&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.60021&lt;br /&gt;
| [[Image:8x16.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -26/64&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -22/64&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 26/64&amp;lt;br&amp;gt;0.40625&lt;br /&gt;
| 11/8&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 879/768&amp;lt;br&amp;gt;1.14453125&lt;br /&gt;
| 1469/1280&amp;lt;br&amp;gt;1.14765625&lt;br /&gt;
| 275/224&amp;lt;br&amp;gt;1.2276785714285714&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56627&lt;br /&gt;
| [[Image:8x16r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -20/64&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -4/64&amp;lt;br&amp;gt;-0.0625&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 24/64&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 88/64&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56161&lt;br /&gt;
| [[Image:8x16rd.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 16x32 ==&lt;br /&gt;
&lt;br /&gt;
Best-known real-valued coefficients for V (R=t):&lt;br /&gt;
&lt;br /&gt;
p0 = -0.42111473798940136&lt;br /&gt;
&lt;br /&gt;
p1 = -0.4121736499899753&lt;br /&gt;
&lt;br /&gt;
p2 = -0.3350240707669929&lt;br /&gt;
&lt;br /&gt;
p3 = -0.3224547931861314&lt;br /&gt;
&lt;br /&gt;
p4 = -0.25883387978005545&lt;br /&gt;
&lt;br /&gt;
p5 = -0.20951913473498104&lt;br /&gt;
&lt;br /&gt;
p6 = -0.0598657149803332&lt;br /&gt;
&lt;br /&gt;
q0 = 0.9107782439906195&lt;br /&gt;
&lt;br /&gt;
q1 = 0.8109855829278226&lt;br /&gt;
&lt;br /&gt;
q2 = 0.715846584586721&lt;br /&gt;
&lt;br /&gt;
q3 = 0.6135951570714172&lt;br /&gt;
&lt;br /&gt;
q4 = 0.49846644853347627&lt;br /&gt;
&lt;br /&gt;
q5 = 0.3945215834922529&lt;br /&gt;
&lt;br /&gt;
q6 = 0.21822275136248082&lt;br /&gt;
&lt;br /&gt;
CG = 9.81157&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!p3&lt;br /&gt;
!p4&lt;br /&gt;
!p5&lt;br /&gt;
!p6&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!q3&lt;br /&gt;
!q4&lt;br /&gt;
!q5&lt;br /&gt;
!q6&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!s4&lt;br /&gt;
!s5&lt;br /&gt;
!s6&lt;br /&gt;
!s7&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -23/64&amp;lt;br&amp;gt;-0.359375&lt;br /&gt;
| -17/64&amp;lt;br&amp;gt;-0.265625&lt;br /&gt;
| -12/64&amp;lt;br&amp;gt;-0.1875&lt;br /&gt;
| -14/64&amp;lt;br&amp;gt;-0.21875&lt;br /&gt;
| -13/64&amp;lt;br&amp;gt;-0.203125&lt;br /&gt;
| -7/64&amp;lt;br&amp;gt;-0.109375&lt;br /&gt;
| 50/64&amp;lt;br&amp;gt;0.78125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 31/64&amp;lt;br&amp;gt;0.484375&lt;br /&gt;
| 22/64&amp;lt;br&amp;gt;0.34375&lt;br /&gt;
| 18/64&amp;lt;br&amp;gt;0.28125&lt;br /&gt;
| 16/64&amp;lt;br&amp;gt;0.25&lt;br /&gt;
| 11/64&amp;lt;br&amp;gt;0.171875&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 71/64&amp;lt;br&amp;gt;1.109375&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.89338&lt;br /&gt;
| [[Image:16x32.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -26/64&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -27/64&amp;lt;br&amp;gt;-0.421875&lt;br /&gt;
| -22/64&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| -14/64&amp;lt;br&amp;gt;-0.21875&lt;br /&gt;
| -5/64&amp;lt;br&amp;gt;-0.078125&lt;br /&gt;
| 58/64&amp;lt;br&amp;gt;0.90625&lt;br /&gt;
| 52/64&amp;lt;br&amp;gt;0.8125&lt;br /&gt;
| 45/64&amp;lt;br&amp;gt;0.703125&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 31/64&amp;lt;br&amp;gt;0.484375&lt;br /&gt;
| 23/64&amp;lt;br&amp;gt;0.359375&lt;br /&gt;
| 13/64&amp;lt;br&amp;gt;0.203125&lt;br /&gt;
| 3/2&amp;lt;br&amp;gt;1.5&lt;br /&gt;
| 77/64&amp;lt;br&amp;gt;1.203125&lt;br /&gt;
| 77/64&amp;lt;br&amp;gt;1.203125&lt;br /&gt;
| 1105/896&amp;lt;br&amp;gt;1.23326&lt;br /&gt;
| 218/192&amp;lt;br&amp;gt;1.135417&lt;br /&gt;
| 197/176&amp;lt;br&amp;gt;1.119318&lt;br /&gt;
| 1919/1664&amp;lt;br&amp;gt;1.153245&lt;br /&gt;
| 4351/3840&amp;lt;br&amp;gt;1.133073&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.79398&lt;br /&gt;
| [[Image:16x32r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&lt;br /&gt;
| -32/64&amp;lt;br&amp;gt;-0.5&lt;br /&gt;
| -28/64&amp;lt;br&amp;gt;-0.4375&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -32/64&amp;lt;br&amp;gt;-0.5&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -13/64&amp;lt;br&amp;gt;-0.203125&lt;br /&gt;
| -2/64&amp;lt;br&amp;gt;-0.03125&lt;br /&gt;
| 59/64&amp;lt;br&amp;gt;0.921875&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 46/64&amp;lt;br&amp;gt;0.71875&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 35/64&amp;lt;br&amp;gt;0.546875&lt;br /&gt;
| 24/64&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 12/64&amp;lt;br&amp;gt;0.1875&lt;br /&gt;
| 80/64&amp;lt;br&amp;gt;1.25&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 68/64&amp;lt;br&amp;gt;1.0625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 70/64&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.78294&lt;br /&gt;
| [[Image:16x32rd.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Type-IV Coding Gain ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!4x8&lt;br /&gt;
!8x16&lt;br /&gt;
!16x32&lt;br /&gt;
|-&lt;br /&gt;
|Real Valued&lt;br /&gt;
|8.6349&lt;br /&gt;
|9.6005&lt;br /&gt;
|9.9057&lt;br /&gt;
|-&lt;br /&gt;
|Approximate&lt;br /&gt;
|8.63473&lt;br /&gt;
|9.60021&lt;br /&gt;
|9.89338&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|0.00017&lt;br /&gt;
|0.00029&lt;br /&gt;
|0.01232&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 8x16 Type-III ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -25/64&amp;lt;br&amp;gt;-0.390625&lt;br /&gt;
| -20/64&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -7/64&amp;lt;br&amp;gt;-0.109375&lt;br /&gt;
| 49/64&amp;lt;br&amp;gt;0.765625&lt;br /&gt;
| 35/64&amp;lt;br&amp;gt;0.546875&lt;br /&gt;
| 21/64&amp;lt;br&amp;gt;0.328125&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.6112&lt;br /&gt;
| [[Image:8x16_type3.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Type-III Coding Gain ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!4x8&lt;br /&gt;
!8x16&lt;br /&gt;
!16x32&lt;br /&gt;
|-&lt;br /&gt;
|Real Valued&lt;br /&gt;
|8.6349&lt;br /&gt;
|9.6115&lt;br /&gt;
|9.9496&lt;br /&gt;
|-&lt;br /&gt;
|Approximate&lt;br /&gt;
|8.63473&lt;br /&gt;
|9.6112&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|0.00017&lt;br /&gt;
|0.00030&lt;br /&gt;
|&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Unlord</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=TDLT&amp;diff=13742</id>
		<title>TDLT</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=TDLT&amp;diff=13742"/>
		<updated>2012-11-03T17:51:25Z</updated>

		<summary type="html">&lt;p&gt;Unlord: /* Type-IV Coding Gain */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page holds the results of Time Domain Lapped Transform (TDLT) optimization problems looking for integer transform coefficients that provide optimal coding gain.  Wherever possible the assumptions are stated.  Later we should include testing against actual image data to verify the results (see test data [http://people.xiph.org/~tterribe/tmp/subset1-y4m.tar.gz here]).&lt;br /&gt;
&lt;br /&gt;
The coding gain objective used as the objective is taken from slide 13 of Tim&#039;s presentation [http://people.xiph.org/~tterribe/pubs/lca2012/auckland/intro_to_video1.pdf An Introduction to Video Coding]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;need figure with block matrix diagrams&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The free parameters are initially just the coefficients p_0,...,p_m,q_0,...,q_m where m=(n/2)-1.  We limit these to being dyadic rationals, e.g., x/2^d with d=6, between [-1,1].&lt;br /&gt;
&lt;br /&gt;
Given p&#039;s and q&#039;s and assuming a linear ramp constrains the s&#039;s.&lt;br /&gt;
 &lt;br /&gt;
== 4x8 ==&lt;br /&gt;
&lt;br /&gt;
Optimal real-valued coefficients for V:&lt;br /&gt;
&lt;br /&gt;
p0 = -0.18117338915051454&lt;br /&gt;
&lt;br /&gt;
q0 = 0.6331818230771687&lt;br /&gt;
&lt;br /&gt;
CG = 8.60603&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!q0&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!CG&lt;br /&gt;
!SBA&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -11/64&amp;lt;br&amp;gt;-0.171875&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 91/64&amp;lt;br&amp;gt;1.421875&lt;br /&gt;
| 85/64&amp;lt;br&amp;gt;1.328125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.63473&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;22.0331&lt;br /&gt;
| [[Image:4x8.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -12/64&amp;lt;br&amp;gt;-0.1875&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 92/64&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 1093/768&amp;lt;br&amp;gt;1.423177&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.60486&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;20.0573&lt;br /&gt;
| [[Image:4x8r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;max CG&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 92/64&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 93/64&amp;lt;br&amp;gt;1.453125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.59886&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;18.9411&lt;br /&gt;
| [[Image:4x8rd.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;max SBA&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 30/64&amp;lt;br&amp;gt;0.46875&lt;br /&gt;
| 136/64&amp;lt;br&amp;gt;2.125&lt;br /&gt;
| 91/64&amp;lt;br&amp;gt;1.421875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.23230&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;25.1934&lt;br /&gt;
| [[Image:4x8rd_sba.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 8x16 ==&lt;br /&gt;
&lt;br /&gt;
Optimal real-valued coefficients for V:&lt;br /&gt;
&lt;br /&gt;
p0 = -0.39460731547057293&lt;br /&gt;
&lt;br /&gt;
p1 = -0.33002212811740816&lt;br /&gt;
&lt;br /&gt;
p2 = -0.12391270981321137&lt;br /&gt;
&lt;br /&gt;
q0 = 0.822154737511288&lt;br /&gt;
&lt;br /&gt;
q1 = 0.632488694485779&lt;br /&gt;
&lt;br /&gt;
q2 = 0.40214668677553894&lt;br /&gt;
&lt;br /&gt;
CG = 9.56867&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -23/64&amp;lt;br&amp;gt;-0.359375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -6/64&amp;lt;br&amp;gt;-0.09375&lt;br /&gt;
| 48/64&amp;lt;br&amp;gt;0.75&lt;br /&gt;
| 34/64&amp;lt;br&amp;gt;0.53125&lt;br /&gt;
| 20/64&amp;lt;br&amp;gt;0.3125&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.60021&lt;br /&gt;
| [[Image:8x16.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -26/64&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -22/64&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 26/64&amp;lt;br&amp;gt;0.40625&lt;br /&gt;
| 11/8&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 879/768&amp;lt;br&amp;gt;1.14453125&lt;br /&gt;
| 1469/1280&amp;lt;br&amp;gt;1.14765625&lt;br /&gt;
| 275/224&amp;lt;br&amp;gt;1.2276785714285714&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56627&lt;br /&gt;
| [[Image:8x16r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -20/64&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -4/64&amp;lt;br&amp;gt;-0.0625&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 24/64&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 88/64&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56161&lt;br /&gt;
| [[Image:8x16rd.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 16x32 ==&lt;br /&gt;
&lt;br /&gt;
Best-known real-valued coefficients for V (R=t):&lt;br /&gt;
&lt;br /&gt;
p0 = -0.42111473798940136&lt;br /&gt;
&lt;br /&gt;
p1 = -0.4121736499899753&lt;br /&gt;
&lt;br /&gt;
p2 = -0.3350240707669929&lt;br /&gt;
&lt;br /&gt;
p3 = -0.3224547931861314&lt;br /&gt;
&lt;br /&gt;
p4 = -0.25883387978005545&lt;br /&gt;
&lt;br /&gt;
p5 = -0.20951913473498104&lt;br /&gt;
&lt;br /&gt;
p6 = -0.0598657149803332&lt;br /&gt;
&lt;br /&gt;
q0 = 0.9107782439906195&lt;br /&gt;
&lt;br /&gt;
q1 = 0.8109855829278226&lt;br /&gt;
&lt;br /&gt;
q2 = 0.715846584586721&lt;br /&gt;
&lt;br /&gt;
q3 = 0.6135951570714172&lt;br /&gt;
&lt;br /&gt;
q4 = 0.49846644853347627&lt;br /&gt;
&lt;br /&gt;
q5 = 0.3945215834922529&lt;br /&gt;
&lt;br /&gt;
q6 = 0.21822275136248082&lt;br /&gt;
&lt;br /&gt;
CG = 9.81157&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!p3&lt;br /&gt;
!p4&lt;br /&gt;
!p5&lt;br /&gt;
!p6&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!q3&lt;br /&gt;
!q4&lt;br /&gt;
!q5&lt;br /&gt;
!q6&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!s4&lt;br /&gt;
!s5&lt;br /&gt;
!s6&lt;br /&gt;
!s7&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -23/64&amp;lt;br&amp;gt;-0.359375&lt;br /&gt;
| -17/64&amp;lt;br&amp;gt;-0.265625&lt;br /&gt;
| -12/64&amp;lt;br&amp;gt;-0.1875&lt;br /&gt;
| -14/64&amp;lt;br&amp;gt;-0.21875&lt;br /&gt;
| -13/64&amp;lt;br&amp;gt;-0.203125&lt;br /&gt;
| -7/64&amp;lt;br&amp;gt;-0.109375&lt;br /&gt;
| 50/64&amp;lt;br&amp;gt;0.78125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 31/64&amp;lt;br&amp;gt;0.484375&lt;br /&gt;
| 22/64&amp;lt;br&amp;gt;0.34375&lt;br /&gt;
| 18/64&amp;lt;br&amp;gt;0.28125&lt;br /&gt;
| 16/64&amp;lt;br&amp;gt;0.25&lt;br /&gt;
| 11/64&amp;lt;br&amp;gt;0.171875&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 71/64&amp;lt;br&amp;gt;1.109375&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.89338&lt;br /&gt;
| [[Image:16x32.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -26/64&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -27/64&amp;lt;br&amp;gt;-0.421875&lt;br /&gt;
| -22/64&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| -14/64&amp;lt;br&amp;gt;-0.21875&lt;br /&gt;
| -5/64&amp;lt;br&amp;gt;-0.078125&lt;br /&gt;
| 58/64&amp;lt;br&amp;gt;0.90625&lt;br /&gt;
| 52/64&amp;lt;br&amp;gt;0.8125&lt;br /&gt;
| 45/64&amp;lt;br&amp;gt;0.703125&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 31/64&amp;lt;br&amp;gt;0.484375&lt;br /&gt;
| 23/64&amp;lt;br&amp;gt;0.359375&lt;br /&gt;
| 13/64&amp;lt;br&amp;gt;0.203125&lt;br /&gt;
| 3/2&amp;lt;br&amp;gt;1.5&lt;br /&gt;
| 77/64&amp;lt;br&amp;gt;1.203125&lt;br /&gt;
| 77/64&amp;lt;br&amp;gt;1.203125&lt;br /&gt;
| 1105/896&amp;lt;br&amp;gt;1.23326&lt;br /&gt;
| 218/192&amp;lt;br&amp;gt;1.135417&lt;br /&gt;
| 197/176&amp;lt;br&amp;gt;1.119318&lt;br /&gt;
| 1919/1664&amp;lt;br&amp;gt;1.153245&lt;br /&gt;
| 4351/3840&amp;lt;br&amp;gt;1.133073&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.79398&lt;br /&gt;
| [[Image:16x32r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&lt;br /&gt;
| -32/64&amp;lt;br&amp;gt;-0.5&lt;br /&gt;
| -28/64&amp;lt;br&amp;gt;-0.4375&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -32/64&amp;lt;br&amp;gt;-0.5&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -13/64&amp;lt;br&amp;gt;-0.203125&lt;br /&gt;
| -2/64&amp;lt;br&amp;gt;-0.03125&lt;br /&gt;
| 59/64&amp;lt;br&amp;gt;0.921875&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 46/64&amp;lt;br&amp;gt;0.71875&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 35/64&amp;lt;br&amp;gt;0.546875&lt;br /&gt;
| 24/64&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 12/64&amp;lt;br&amp;gt;0.1875&lt;br /&gt;
| 80/64&amp;lt;br&amp;gt;1.25&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 68/64&amp;lt;br&amp;gt;1.0625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 70/64&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.78294&lt;br /&gt;
| [[Image:16x32rd.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Type-IV Coding Gain ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!4x8&lt;br /&gt;
!8x16&lt;br /&gt;
!16x32&lt;br /&gt;
|-&lt;br /&gt;
|Real Valued&lt;br /&gt;
|8.6349&lt;br /&gt;
|9.6005&lt;br /&gt;
|9.9057&lt;br /&gt;
|-&lt;br /&gt;
|Approximate&lt;br /&gt;
|8.63473&lt;br /&gt;
|9.60021&lt;br /&gt;
|9.89338&lt;br /&gt;
|-&lt;br /&gt;
|Loss&lt;br /&gt;
|0.00017&lt;br /&gt;
|0.00029&lt;br /&gt;
|0.01232&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 8x16 Type-III ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -25/64&amp;lt;br&amp;gt;-0.390625&lt;br /&gt;
| -20/64&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -7/64&amp;lt;br&amp;gt;-0.109375&lt;br /&gt;
| 49/64&amp;lt;br&amp;gt;0.765625&lt;br /&gt;
| 35/64&amp;lt;br&amp;gt;0.546875&lt;br /&gt;
| 21/64&amp;lt;br&amp;gt;0.328125&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.6112&lt;br /&gt;
| [[Image:8x16_type3.png|64px]]&lt;br /&gt;
|&lt;/div&gt;</summary>
		<author><name>Unlord</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=TDLT&amp;diff=13741</id>
		<title>TDLT</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=TDLT&amp;diff=13741"/>
		<updated>2012-11-03T17:47:51Z</updated>

		<summary type="html">&lt;p&gt;Unlord: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page holds the results of Time Domain Lapped Transform (TDLT) optimization problems looking for integer transform coefficients that provide optimal coding gain.  Wherever possible the assumptions are stated.  Later we should include testing against actual image data to verify the results (see test data [http://people.xiph.org/~tterribe/tmp/subset1-y4m.tar.gz here]).&lt;br /&gt;
&lt;br /&gt;
The coding gain objective used as the objective is taken from slide 13 of Tim&#039;s presentation [http://people.xiph.org/~tterribe/pubs/lca2012/auckland/intro_to_video1.pdf An Introduction to Video Coding]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;need figure with block matrix diagrams&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The free parameters are initially just the coefficients p_0,...,p_m,q_0,...,q_m where m=(n/2)-1.  We limit these to being dyadic rationals, e.g., x/2^d with d=6, between [-1,1].&lt;br /&gt;
&lt;br /&gt;
Given p&#039;s and q&#039;s and assuming a linear ramp constrains the s&#039;s.&lt;br /&gt;
 &lt;br /&gt;
== 4x8 ==&lt;br /&gt;
&lt;br /&gt;
Optimal real-valued coefficients for V:&lt;br /&gt;
&lt;br /&gt;
p0 = -0.18117338915051454&lt;br /&gt;
&lt;br /&gt;
q0 = 0.6331818230771687&lt;br /&gt;
&lt;br /&gt;
CG = 8.60603&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!q0&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!CG&lt;br /&gt;
!SBA&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -11/64&amp;lt;br&amp;gt;-0.171875&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 91/64&amp;lt;br&amp;gt;1.421875&lt;br /&gt;
| 85/64&amp;lt;br&amp;gt;1.328125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.63473&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;22.0331&lt;br /&gt;
| [[Image:4x8.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -12/64&amp;lt;br&amp;gt;-0.1875&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 92/64&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 1093/768&amp;lt;br&amp;gt;1.423177&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.60486&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;20.0573&lt;br /&gt;
| [[Image:4x8r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;max CG&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 92/64&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 93/64&amp;lt;br&amp;gt;1.453125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.59886&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;18.9411&lt;br /&gt;
| [[Image:4x8rd.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;max SBA&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 30/64&amp;lt;br&amp;gt;0.46875&lt;br /&gt;
| 136/64&amp;lt;br&amp;gt;2.125&lt;br /&gt;
| 91/64&amp;lt;br&amp;gt;1.421875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.23230&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;25.1934&lt;br /&gt;
| [[Image:4x8rd_sba.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 8x16 ==&lt;br /&gt;
&lt;br /&gt;
Optimal real-valued coefficients for V:&lt;br /&gt;
&lt;br /&gt;
p0 = -0.39460731547057293&lt;br /&gt;
&lt;br /&gt;
p1 = -0.33002212811740816&lt;br /&gt;
&lt;br /&gt;
p2 = -0.12391270981321137&lt;br /&gt;
&lt;br /&gt;
q0 = 0.822154737511288&lt;br /&gt;
&lt;br /&gt;
q1 = 0.632488694485779&lt;br /&gt;
&lt;br /&gt;
q2 = 0.40214668677553894&lt;br /&gt;
&lt;br /&gt;
CG = 9.56867&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -23/64&amp;lt;br&amp;gt;-0.359375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -6/64&amp;lt;br&amp;gt;-0.09375&lt;br /&gt;
| 48/64&amp;lt;br&amp;gt;0.75&lt;br /&gt;
| 34/64&amp;lt;br&amp;gt;0.53125&lt;br /&gt;
| 20/64&amp;lt;br&amp;gt;0.3125&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.60021&lt;br /&gt;
| [[Image:8x16.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -26/64&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -22/64&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 26/64&amp;lt;br&amp;gt;0.40625&lt;br /&gt;
| 11/8&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 879/768&amp;lt;br&amp;gt;1.14453125&lt;br /&gt;
| 1469/1280&amp;lt;br&amp;gt;1.14765625&lt;br /&gt;
| 275/224&amp;lt;br&amp;gt;1.2276785714285714&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56627&lt;br /&gt;
| [[Image:8x16r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -20/64&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -4/64&amp;lt;br&amp;gt;-0.0625&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 24/64&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 88/64&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56161&lt;br /&gt;
| [[Image:8x16rd.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 16x32 ==&lt;br /&gt;
&lt;br /&gt;
Best-known real-valued coefficients for V (R=t):&lt;br /&gt;
&lt;br /&gt;
p0 = -0.42111473798940136&lt;br /&gt;
&lt;br /&gt;
p1 = -0.4121736499899753&lt;br /&gt;
&lt;br /&gt;
p2 = -0.3350240707669929&lt;br /&gt;
&lt;br /&gt;
p3 = -0.3224547931861314&lt;br /&gt;
&lt;br /&gt;
p4 = -0.25883387978005545&lt;br /&gt;
&lt;br /&gt;
p5 = -0.20951913473498104&lt;br /&gt;
&lt;br /&gt;
p6 = -0.0598657149803332&lt;br /&gt;
&lt;br /&gt;
q0 = 0.9107782439906195&lt;br /&gt;
&lt;br /&gt;
q1 = 0.8109855829278226&lt;br /&gt;
&lt;br /&gt;
q2 = 0.715846584586721&lt;br /&gt;
&lt;br /&gt;
q3 = 0.6135951570714172&lt;br /&gt;
&lt;br /&gt;
q4 = 0.49846644853347627&lt;br /&gt;
&lt;br /&gt;
q5 = 0.3945215834922529&lt;br /&gt;
&lt;br /&gt;
q6 = 0.21822275136248082&lt;br /&gt;
&lt;br /&gt;
CG = 9.81157&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!p3&lt;br /&gt;
!p4&lt;br /&gt;
!p5&lt;br /&gt;
!p6&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!q3&lt;br /&gt;
!q4&lt;br /&gt;
!q5&lt;br /&gt;
!q6&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!s4&lt;br /&gt;
!s5&lt;br /&gt;
!s6&lt;br /&gt;
!s7&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -23/64&amp;lt;br&amp;gt;-0.359375&lt;br /&gt;
| -17/64&amp;lt;br&amp;gt;-0.265625&lt;br /&gt;
| -12/64&amp;lt;br&amp;gt;-0.1875&lt;br /&gt;
| -14/64&amp;lt;br&amp;gt;-0.21875&lt;br /&gt;
| -13/64&amp;lt;br&amp;gt;-0.203125&lt;br /&gt;
| -7/64&amp;lt;br&amp;gt;-0.109375&lt;br /&gt;
| 50/64&amp;lt;br&amp;gt;0.78125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 31/64&amp;lt;br&amp;gt;0.484375&lt;br /&gt;
| 22/64&amp;lt;br&amp;gt;0.34375&lt;br /&gt;
| 18/64&amp;lt;br&amp;gt;0.28125&lt;br /&gt;
| 16/64&amp;lt;br&amp;gt;0.25&lt;br /&gt;
| 11/64&amp;lt;br&amp;gt;0.171875&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 71/64&amp;lt;br&amp;gt;1.109375&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.89338&lt;br /&gt;
| [[Image:16x32.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -26/64&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -27/64&amp;lt;br&amp;gt;-0.421875&lt;br /&gt;
| -22/64&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| -14/64&amp;lt;br&amp;gt;-0.21875&lt;br /&gt;
| -5/64&amp;lt;br&amp;gt;-0.078125&lt;br /&gt;
| 58/64&amp;lt;br&amp;gt;0.90625&lt;br /&gt;
| 52/64&amp;lt;br&amp;gt;0.8125&lt;br /&gt;
| 45/64&amp;lt;br&amp;gt;0.703125&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 31/64&amp;lt;br&amp;gt;0.484375&lt;br /&gt;
| 23/64&amp;lt;br&amp;gt;0.359375&lt;br /&gt;
| 13/64&amp;lt;br&amp;gt;0.203125&lt;br /&gt;
| 3/2&amp;lt;br&amp;gt;1.5&lt;br /&gt;
| 77/64&amp;lt;br&amp;gt;1.203125&lt;br /&gt;
| 77/64&amp;lt;br&amp;gt;1.203125&lt;br /&gt;
| 1105/896&amp;lt;br&amp;gt;1.23326&lt;br /&gt;
| 218/192&amp;lt;br&amp;gt;1.135417&lt;br /&gt;
| 197/176&amp;lt;br&amp;gt;1.119318&lt;br /&gt;
| 1919/1664&amp;lt;br&amp;gt;1.153245&lt;br /&gt;
| 4351/3840&amp;lt;br&amp;gt;1.133073&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.79398&lt;br /&gt;
| [[Image:16x32r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&lt;br /&gt;
| -32/64&amp;lt;br&amp;gt;-0.5&lt;br /&gt;
| -28/64&amp;lt;br&amp;gt;-0.4375&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -32/64&amp;lt;br&amp;gt;-0.5&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -13/64&amp;lt;br&amp;gt;-0.203125&lt;br /&gt;
| -2/64&amp;lt;br&amp;gt;-0.03125&lt;br /&gt;
| 59/64&amp;lt;br&amp;gt;0.921875&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 46/64&amp;lt;br&amp;gt;0.71875&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 35/64&amp;lt;br&amp;gt;0.546875&lt;br /&gt;
| 24/64&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 12/64&amp;lt;br&amp;gt;0.1875&lt;br /&gt;
| 80/64&amp;lt;br&amp;gt;1.25&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 68/64&amp;lt;br&amp;gt;1.0625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 70/64&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.78294&lt;br /&gt;
| [[Image:16x32rd.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Type-IV Coding Gain ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!4x8&lt;br /&gt;
!8x16&lt;br /&gt;
!16x32&lt;br /&gt;
|-&lt;br /&gt;
|Real Valued&lt;br /&gt;
|8.6349&lt;br /&gt;
|9.6005&lt;br /&gt;
|9.9057&lt;br /&gt;
|-&lt;br /&gt;
|Approximate&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 8x16 Type-III ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -25/64&amp;lt;br&amp;gt;-0.390625&lt;br /&gt;
| -20/64&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -7/64&amp;lt;br&amp;gt;-0.109375&lt;br /&gt;
| 49/64&amp;lt;br&amp;gt;0.765625&lt;br /&gt;
| 35/64&amp;lt;br&amp;gt;0.546875&lt;br /&gt;
| 21/64&amp;lt;br&amp;gt;0.328125&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.6112&lt;br /&gt;
| [[Image:8x16_type3.png|64px]]&lt;br /&gt;
|&lt;/div&gt;</summary>
		<author><name>Unlord</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=File:8x16_type3.png&amp;diff=13740</id>
		<title>File:8x16 type3.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=File:8x16_type3.png&amp;diff=13740"/>
		<updated>2012-11-03T17:43:22Z</updated>

		<summary type="html">&lt;p&gt;Unlord: (8x16 Type-III CG=9.6112 SBA=-19.7585 BO=0.0139179)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;(8x16 Type-III CG=9.6112 SBA=-19.7585 BO=0.0139179)&lt;/div&gt;</summary>
		<author><name>Unlord</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=TDLT&amp;diff=13739</id>
		<title>TDLT</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=TDLT&amp;diff=13739"/>
		<updated>2012-11-03T17:39:43Z</updated>

		<summary type="html">&lt;p&gt;Unlord: 8x16 Type-III parameters&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page holds the results of Time Domain Lapped Transform (TDLT) optimization problems looking for integer transform coefficients that provide optimal coding gain.  Wherever possible the assumptions are stated.  Later we should include testing against actual image data to verify the results (see test data [http://people.xiph.org/~tterribe/tmp/subset1-y4m.tar.gz here]).&lt;br /&gt;
&lt;br /&gt;
The coding gain objective used as the objective is taken from slide 13 of Tim&#039;s presentation [http://people.xiph.org/~tterribe/pubs/lca2012/auckland/intro_to_video1.pdf An Introduction to Video Coding]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;need figure with block matrix diagrams&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The free parameters are initially just the coefficients p_0,...,p_m,q_0,...,q_m where m=(n/2)-1.  We limit these to being dyadic rationals, e.g., x/2^d with d=6, between [-1,1].&lt;br /&gt;
&lt;br /&gt;
Given p&#039;s and q&#039;s and assuming a linear ramp constrains the s&#039;s.&lt;br /&gt;
 &lt;br /&gt;
== 4x8 ==&lt;br /&gt;
&lt;br /&gt;
Optimal real-valued coefficients for V:&lt;br /&gt;
&lt;br /&gt;
p0 = -0.18117338915051454&lt;br /&gt;
&lt;br /&gt;
q0 = 0.6331818230771687&lt;br /&gt;
&lt;br /&gt;
CG = 8.60603&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!q0&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!CG&lt;br /&gt;
!SBA&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -11/64&amp;lt;br&amp;gt;-0.171875&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 91/64&amp;lt;br&amp;gt;1.421875&lt;br /&gt;
| 85/64&amp;lt;br&amp;gt;1.328125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.63473&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;22.0331&lt;br /&gt;
| [[Image:4x8.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -12/64&amp;lt;br&amp;gt;-0.1875&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 92/64&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 1093/768&amp;lt;br&amp;gt;1.423177&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.60486&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;20.0573&lt;br /&gt;
| [[Image:4x8r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;max CG&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 92/64&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 93/64&amp;lt;br&amp;gt;1.453125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.59886&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;18.9411&lt;br /&gt;
| [[Image:4x8rd.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;max SBA&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 30/64&amp;lt;br&amp;gt;0.46875&lt;br /&gt;
| 136/64&amp;lt;br&amp;gt;2.125&lt;br /&gt;
| 91/64&amp;lt;br&amp;gt;1.421875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.23230&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;25.1934&lt;br /&gt;
| [[Image:4x8rd_sba.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 8x16 ==&lt;br /&gt;
&lt;br /&gt;
Optimal real-valued coefficients for V:&lt;br /&gt;
&lt;br /&gt;
p0 = -0.39460731547057293&lt;br /&gt;
&lt;br /&gt;
p1 = -0.33002212811740816&lt;br /&gt;
&lt;br /&gt;
p2 = -0.12391270981321137&lt;br /&gt;
&lt;br /&gt;
q0 = 0.822154737511288&lt;br /&gt;
&lt;br /&gt;
q1 = 0.632488694485779&lt;br /&gt;
&lt;br /&gt;
q2 = 0.40214668677553894&lt;br /&gt;
&lt;br /&gt;
CG = 9.56867&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -23/64&amp;lt;br&amp;gt;-0.359375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -6/64&amp;lt;br&amp;gt;-0.09375&lt;br /&gt;
| 48/64&amp;lt;br&amp;gt;0.75&lt;br /&gt;
| 34/64&amp;lt;br&amp;gt;0.53125&lt;br /&gt;
| 20/64&amp;lt;br&amp;gt;0.3125&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.60021&lt;br /&gt;
| [[Image:8x16.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -26/64&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -22/64&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 26/64&amp;lt;br&amp;gt;0.40625&lt;br /&gt;
| 11/8&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 879/768&amp;lt;br&amp;gt;1.14453125&lt;br /&gt;
| 1469/1280&amp;lt;br&amp;gt;1.14765625&lt;br /&gt;
| 275/224&amp;lt;br&amp;gt;1.2276785714285714&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56627&lt;br /&gt;
| [[Image:8x16r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -20/64&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -4/64&amp;lt;br&amp;gt;-0.0625&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 24/64&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 88/64&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56161&lt;br /&gt;
| [[Image:8x16rd.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 16x32 ==&lt;br /&gt;
&lt;br /&gt;
Best-known real-valued coefficients for V (R=t):&lt;br /&gt;
&lt;br /&gt;
p0 = -0.42111473798940136&lt;br /&gt;
&lt;br /&gt;
p1 = -0.4121736499899753&lt;br /&gt;
&lt;br /&gt;
p2 = -0.3350240707669929&lt;br /&gt;
&lt;br /&gt;
p3 = -0.3224547931861314&lt;br /&gt;
&lt;br /&gt;
p4 = -0.25883387978005545&lt;br /&gt;
&lt;br /&gt;
p5 = -0.20951913473498104&lt;br /&gt;
&lt;br /&gt;
p6 = -0.0598657149803332&lt;br /&gt;
&lt;br /&gt;
q0 = 0.9107782439906195&lt;br /&gt;
&lt;br /&gt;
q1 = 0.8109855829278226&lt;br /&gt;
&lt;br /&gt;
q2 = 0.715846584586721&lt;br /&gt;
&lt;br /&gt;
q3 = 0.6135951570714172&lt;br /&gt;
&lt;br /&gt;
q4 = 0.49846644853347627&lt;br /&gt;
&lt;br /&gt;
q5 = 0.3945215834922529&lt;br /&gt;
&lt;br /&gt;
q6 = 0.21822275136248082&lt;br /&gt;
&lt;br /&gt;
CG = 9.81157&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!p3&lt;br /&gt;
!p4&lt;br /&gt;
!p5&lt;br /&gt;
!p6&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!q3&lt;br /&gt;
!q4&lt;br /&gt;
!q5&lt;br /&gt;
!q6&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!s4&lt;br /&gt;
!s5&lt;br /&gt;
!s6&lt;br /&gt;
!s7&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -23/64&amp;lt;br&amp;gt;-0.359375&lt;br /&gt;
| -17/64&amp;lt;br&amp;gt;-0.265625&lt;br /&gt;
| -12/64&amp;lt;br&amp;gt;-0.1875&lt;br /&gt;
| -14/64&amp;lt;br&amp;gt;-0.21875&lt;br /&gt;
| -13/64&amp;lt;br&amp;gt;-0.203125&lt;br /&gt;
| -7/64&amp;lt;br&amp;gt;-0.109375&lt;br /&gt;
| 50/64&amp;lt;br&amp;gt;0.78125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 31/64&amp;lt;br&amp;gt;0.484375&lt;br /&gt;
| 22/64&amp;lt;br&amp;gt;0.34375&lt;br /&gt;
| 18/64&amp;lt;br&amp;gt;0.28125&lt;br /&gt;
| 16/64&amp;lt;br&amp;gt;0.25&lt;br /&gt;
| 11/64&amp;lt;br&amp;gt;0.171875&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 71/64&amp;lt;br&amp;gt;1.109375&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.89338&lt;br /&gt;
| [[Image:16x32.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -26/64&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -27/64&amp;lt;br&amp;gt;-0.421875&lt;br /&gt;
| -22/64&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| -14/64&amp;lt;br&amp;gt;-0.21875&lt;br /&gt;
| -5/64&amp;lt;br&amp;gt;-0.078125&lt;br /&gt;
| 58/64&amp;lt;br&amp;gt;0.90625&lt;br /&gt;
| 52/64&amp;lt;br&amp;gt;0.8125&lt;br /&gt;
| 45/64&amp;lt;br&amp;gt;0.703125&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 31/64&amp;lt;br&amp;gt;0.484375&lt;br /&gt;
| 23/64&amp;lt;br&amp;gt;0.359375&lt;br /&gt;
| 13/64&amp;lt;br&amp;gt;0.203125&lt;br /&gt;
| 3/2&amp;lt;br&amp;gt;1.5&lt;br /&gt;
| 77/64&amp;lt;br&amp;gt;1.203125&lt;br /&gt;
| 77/64&amp;lt;br&amp;gt;1.203125&lt;br /&gt;
| 1105/896&amp;lt;br&amp;gt;1.23326&lt;br /&gt;
| 218/192&amp;lt;br&amp;gt;1.135417&lt;br /&gt;
| 197/176&amp;lt;br&amp;gt;1.119318&lt;br /&gt;
| 1919/1664&amp;lt;br&amp;gt;1.153245&lt;br /&gt;
| 4351/3840&amp;lt;br&amp;gt;1.133073&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.79398&lt;br /&gt;
| [[Image:16x32r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&lt;br /&gt;
| -32/64&amp;lt;br&amp;gt;-0.5&lt;br /&gt;
| -28/64&amp;lt;br&amp;gt;-0.4375&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -32/64&amp;lt;br&amp;gt;-0.5&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -13/64&amp;lt;br&amp;gt;-0.203125&lt;br /&gt;
| -2/64&amp;lt;br&amp;gt;-0.03125&lt;br /&gt;
| 59/64&amp;lt;br&amp;gt;0.921875&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 46/64&amp;lt;br&amp;gt;0.71875&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 35/64&amp;lt;br&amp;gt;0.546875&lt;br /&gt;
| 24/64&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 12/64&amp;lt;br&amp;gt;0.1875&lt;br /&gt;
| 80/64&amp;lt;br&amp;gt;1.25&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 68/64&amp;lt;br&amp;gt;1.0625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 70/64&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.78294&lt;br /&gt;
| [[Image:16x32rd.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 8x16 Type-III ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -25/64&amp;lt;br&amp;gt;-0.390625&lt;br /&gt;
| -20/64&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -7/64&amp;lt;br&amp;gt;-0.109375&lt;br /&gt;
| 49/64&amp;lt;br&amp;gt;0.765625&lt;br /&gt;
| 35/64&amp;lt;br&amp;gt;0.546875&lt;br /&gt;
| 21/64&amp;lt;br&amp;gt;0.328125&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.6112&lt;br /&gt;
| [[Image:8x16_type3.png|64px]]&lt;br /&gt;
|&lt;/div&gt;</summary>
		<author><name>Unlord</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=TDLT&amp;diff=13556</id>
		<title>TDLT</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=TDLT&amp;diff=13556"/>
		<updated>2012-08-15T13:18:39Z</updated>

		<summary type="html">&lt;p&gt;Unlord: /* 16x32 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page holds the results of Time Domain Lapped Transform (TDLT) optimization problems looking for integer transform coefficients that provide optimal coding gain.  Wherever possible the assumptions are stated.  Later we should include testing against actual image data to verify the results (see test data [http://people.xiph.org/~tterribe/tmp/subset1-y4m.tar.gz here]).&lt;br /&gt;
&lt;br /&gt;
The coding gain objective used as the objective is taken from slide 13 of Tim&#039;s presentation [http://people.xiph.org/~tterribe/pubs/lca2012/auckland/intro_to_video1.pdf An Introduction to Video Coding]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;need figure with block matrix diagrams&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The free parameters are initially just the coefficients p_0,...,p_m,q_0,...,q_m where m=(n/2)-1.  We limit these to being dyadic rationals, e.g., x/2^d with d=6, between [-1,1].&lt;br /&gt;
&lt;br /&gt;
Given p&#039;s and q&#039;s and assuming a linear ramp constrains the s&#039;s.&lt;br /&gt;
 &lt;br /&gt;
== 4x8 ==&lt;br /&gt;
&lt;br /&gt;
Optimal real-valued coefficients for V:&lt;br /&gt;
&lt;br /&gt;
p0 = -0.18117338915051454&lt;br /&gt;
&lt;br /&gt;
q0 = 0.6331818230771687&lt;br /&gt;
&lt;br /&gt;
CG = 8.60603&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!q0&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!CG&lt;br /&gt;
!SBA&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -11/64&amp;lt;br&amp;gt;-0.171875&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 91/64&amp;lt;br&amp;gt;1.421875&lt;br /&gt;
| 85/64&amp;lt;br&amp;gt;1.328125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.63473&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;22.0331&lt;br /&gt;
| [[Image:4x8.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -12/64&amp;lt;br&amp;gt;-0.1875&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 92/64&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 1093/768&amp;lt;br&amp;gt;1.423177&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.60486&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;20.0573&lt;br /&gt;
| [[Image:4x8r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;max CG&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 92/64&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 93/64&amp;lt;br&amp;gt;1.453125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.59886&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;18.9411&lt;br /&gt;
| [[Image:4x8rd.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;max SBA&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 30/64&amp;lt;br&amp;gt;0.46875&lt;br /&gt;
| 136/64&amp;lt;br&amp;gt;2.125&lt;br /&gt;
| 91/64&amp;lt;br&amp;gt;1.421875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.23230&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;25.1934&lt;br /&gt;
| [[Image:4x8rd_sba.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 8x16 ==&lt;br /&gt;
&lt;br /&gt;
Optimal real-valued coefficients for V:&lt;br /&gt;
&lt;br /&gt;
p0 = -0.39460731547057293&lt;br /&gt;
&lt;br /&gt;
p1 = -0.33002212811740816&lt;br /&gt;
&lt;br /&gt;
p2 = -0.12391270981321137&lt;br /&gt;
&lt;br /&gt;
q0 = 0.822154737511288&lt;br /&gt;
&lt;br /&gt;
q1 = 0.632488694485779&lt;br /&gt;
&lt;br /&gt;
q2 = 0.40214668677553894&lt;br /&gt;
&lt;br /&gt;
CG = 9.56867&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -23/64&amp;lt;br&amp;gt;-0.359375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -6/64&amp;lt;br&amp;gt;-0.09375&lt;br /&gt;
| 48/64&amp;lt;br&amp;gt;0.75&lt;br /&gt;
| 34/64&amp;lt;br&amp;gt;0.53125&lt;br /&gt;
| 20/64&amp;lt;br&amp;gt;0.3125&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.60021&lt;br /&gt;
| [[Image:8x16.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -26/64&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -22/64&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 26/64&amp;lt;br&amp;gt;0.40625&lt;br /&gt;
| 11/8&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 879/768&amp;lt;br&amp;gt;1.14453125&lt;br /&gt;
| 1469/1280&amp;lt;br&amp;gt;1.14765625&lt;br /&gt;
| 275/224&amp;lt;br&amp;gt;1.2276785714285714&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56627&lt;br /&gt;
| [[Image:8x16r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -20/64&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -4/64&amp;lt;br&amp;gt;-0.0625&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 24/64&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 88/64&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56161&lt;br /&gt;
| [[Image:8x16rd.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 16x32 ==&lt;br /&gt;
&lt;br /&gt;
Best-known real-valued coefficients for V (R=t):&lt;br /&gt;
&lt;br /&gt;
p0 = -0.42111473798940136&lt;br /&gt;
&lt;br /&gt;
p1 = -0.4121736499899753&lt;br /&gt;
&lt;br /&gt;
p2 = -0.3350240707669929&lt;br /&gt;
&lt;br /&gt;
p3 = -0.3224547931861314&lt;br /&gt;
&lt;br /&gt;
p4 = -0.25883387978005545&lt;br /&gt;
&lt;br /&gt;
p5 = -0.20951913473498104&lt;br /&gt;
&lt;br /&gt;
p6 = -0.0598657149803332&lt;br /&gt;
&lt;br /&gt;
q0 = 0.9107782439906195&lt;br /&gt;
&lt;br /&gt;
q1 = 0.8109855829278226&lt;br /&gt;
&lt;br /&gt;
q2 = 0.715846584586721&lt;br /&gt;
&lt;br /&gt;
q3 = 0.6135951570714172&lt;br /&gt;
&lt;br /&gt;
q4 = 0.49846644853347627&lt;br /&gt;
&lt;br /&gt;
q5 = 0.3945215834922529&lt;br /&gt;
&lt;br /&gt;
q6 = 0.21822275136248082&lt;br /&gt;
&lt;br /&gt;
CG = 9.81157&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!p3&lt;br /&gt;
!p4&lt;br /&gt;
!p5&lt;br /&gt;
!p6&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!q3&lt;br /&gt;
!q4&lt;br /&gt;
!q5&lt;br /&gt;
!q6&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!s4&lt;br /&gt;
!s5&lt;br /&gt;
!s6&lt;br /&gt;
!s7&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -23/64&amp;lt;br&amp;gt;-0.359375&lt;br /&gt;
| -17/64&amp;lt;br&amp;gt;-0.265625&lt;br /&gt;
| -12/64&amp;lt;br&amp;gt;-0.1875&lt;br /&gt;
| -14/64&amp;lt;br&amp;gt;-0.21875&lt;br /&gt;
| -13/64&amp;lt;br&amp;gt;-0.203125&lt;br /&gt;
| -7/64&amp;lt;br&amp;gt;-0.109375&lt;br /&gt;
| 50/64&amp;lt;br&amp;gt;0.78125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 31/64&amp;lt;br&amp;gt;0.484375&lt;br /&gt;
| 22/64&amp;lt;br&amp;gt;0.34375&lt;br /&gt;
| 18/64&amp;lt;br&amp;gt;0.28125&lt;br /&gt;
| 16/64&amp;lt;br&amp;gt;0.25&lt;br /&gt;
| 11/64&amp;lt;br&amp;gt;0.171875&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 71/64&amp;lt;br&amp;gt;1.109375&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.89338&lt;br /&gt;
| [[Image:16x32.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -26/64&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -27/64&amp;lt;br&amp;gt;-0.421875&lt;br /&gt;
| -22/64&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| -14/64&amp;lt;br&amp;gt;-0.21875&lt;br /&gt;
| -5/64&amp;lt;br&amp;gt;-0.078125&lt;br /&gt;
| 58/64&amp;lt;br&amp;gt;0.90625&lt;br /&gt;
| 52/64&amp;lt;br&amp;gt;0.8125&lt;br /&gt;
| 45/64&amp;lt;br&amp;gt;0.703125&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 31/64&amp;lt;br&amp;gt;0.484375&lt;br /&gt;
| 23/64&amp;lt;br&amp;gt;0.359375&lt;br /&gt;
| 13/64&amp;lt;br&amp;gt;0.203125&lt;br /&gt;
| 3/2&amp;lt;br&amp;gt;1.5&lt;br /&gt;
| 77/64&amp;lt;br&amp;gt;1.203125&lt;br /&gt;
| 77/64&amp;lt;br&amp;gt;1.203125&lt;br /&gt;
| 1105/896&amp;lt;br&amp;gt;1.23326&lt;br /&gt;
| 218/192&amp;lt;br&amp;gt;1.135417&lt;br /&gt;
| 197/176&amp;lt;br&amp;gt;1.119318&lt;br /&gt;
| 1919/1664&amp;lt;br&amp;gt;1.153245&lt;br /&gt;
| 4351/3840&amp;lt;br&amp;gt;1.133073&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.79398&lt;br /&gt;
| [[Image:16x32r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&lt;br /&gt;
| -32/64&amp;lt;br&amp;gt;-0.5&lt;br /&gt;
| -28/64&amp;lt;br&amp;gt;-0.4375&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -32/64&amp;lt;br&amp;gt;-0.5&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -13/64&amp;lt;br&amp;gt;-0.203125&lt;br /&gt;
| -2/64&amp;lt;br&amp;gt;-0.03125&lt;br /&gt;
| 59/64&amp;lt;br&amp;gt;0.921875&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 46/64&amp;lt;br&amp;gt;0.71875&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 35/64&amp;lt;br&amp;gt;0.546875&lt;br /&gt;
| 24/64&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 12/64&amp;lt;br&amp;gt;0.1875&lt;br /&gt;
| 80/64&amp;lt;br&amp;gt;1.25&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 68/64&amp;lt;br&amp;gt;1.0625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 70/64&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.78294&lt;br /&gt;
| [[Image:16x32rd.png|64px]]&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Unlord</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=File:16x32rd.png&amp;diff=13551</id>
		<title>File:16x32rd.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=File:16x32rd.png&amp;diff=13551"/>
		<updated>2012-08-04T18:18:24Z</updated>

		<summary type="html">&lt;p&gt;Unlord: uploaded a new version of &amp;amp;quot;File:16x32rd.png&amp;amp;quot;: 16x32 R=t,D=t CG=9.73109 SBA=-16.1398 BO=0.236722 W=20.7699&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Unlord</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=TDLT&amp;diff=13550</id>
		<title>TDLT</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=TDLT&amp;diff=13550"/>
		<updated>2012-08-04T18:13:28Z</updated>

		<summary type="html">&lt;p&gt;Unlord: /* 16x32 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page holds the results of Time Domain Lapped Transform (TDLT) optimization problems looking for integer transform coefficients that provide optimal coding gain.  Wherever possible the assumptions are stated.  Later we should include testing against actual image data to verify the results (see test data [http://people.xiph.org/~tterribe/tmp/subset1-y4m.tar.gz here]).&lt;br /&gt;
&lt;br /&gt;
The coding gain objective used as the objective is taken from slide 13 of Tim&#039;s presentation [http://people.xiph.org/~tterribe/pubs/lca2012/auckland/intro_to_video1.pdf An Introduction to Video Coding]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;need figure with block matrix diagrams&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The free parameters are initially just the coefficients p_0,...,p_m,q_0,...,q_m where m=(n/2)-1.  We limit these to being dyadic rationals, e.g., x/2^d with d=6, between [-1,1].&lt;br /&gt;
&lt;br /&gt;
Given p&#039;s and q&#039;s and assuming a linear ramp constrains the s&#039;s.&lt;br /&gt;
 &lt;br /&gt;
== 4x8 ==&lt;br /&gt;
&lt;br /&gt;
Optimal real-valued coefficients for V:&lt;br /&gt;
&lt;br /&gt;
p0 = -0.18117338915051454&lt;br /&gt;
&lt;br /&gt;
q0 = 0.6331818230771687&lt;br /&gt;
&lt;br /&gt;
CG = 8.60603&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!q0&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!CG&lt;br /&gt;
!SBA&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -11/64&amp;lt;br&amp;gt;-0.171875&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 91/64&amp;lt;br&amp;gt;1.421875&lt;br /&gt;
| 85/64&amp;lt;br&amp;gt;1.328125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.63473&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;22.0331&lt;br /&gt;
| [[Image:4x8.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -12/64&amp;lt;br&amp;gt;-0.1875&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 92/64&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 1093/768&amp;lt;br&amp;gt;1.423177&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.60486&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;20.0573&lt;br /&gt;
| [[Image:4x8r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;max CG&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 92/64&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 93/64&amp;lt;br&amp;gt;1.453125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.59886&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;18.9411&lt;br /&gt;
| [[Image:4x8rd.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;max SBA&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 30/64&amp;lt;br&amp;gt;0.46875&lt;br /&gt;
| 136/64&amp;lt;br&amp;gt;2.125&lt;br /&gt;
| 91/64&amp;lt;br&amp;gt;1.421875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.23230&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;25.1934&lt;br /&gt;
| [[Image:4x8rd_sba.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 8x16 ==&lt;br /&gt;
&lt;br /&gt;
Optimal real-valued coefficients for V:&lt;br /&gt;
&lt;br /&gt;
p0 = -0.39460731547057293&lt;br /&gt;
&lt;br /&gt;
p1 = -0.33002212811740816&lt;br /&gt;
&lt;br /&gt;
p2 = -0.12391270981321137&lt;br /&gt;
&lt;br /&gt;
q0 = 0.822154737511288&lt;br /&gt;
&lt;br /&gt;
q1 = 0.632488694485779&lt;br /&gt;
&lt;br /&gt;
q2 = 0.40214668677553894&lt;br /&gt;
&lt;br /&gt;
CG = 9.56867&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -23/64&amp;lt;br&amp;gt;-0.359375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -6/64&amp;lt;br&amp;gt;-0.09375&lt;br /&gt;
| 48/64&amp;lt;br&amp;gt;0.75&lt;br /&gt;
| 34/64&amp;lt;br&amp;gt;0.53125&lt;br /&gt;
| 20/64&amp;lt;br&amp;gt;0.3125&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.60021&lt;br /&gt;
| [[Image:8x16.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -26/64&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -22/64&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 26/64&amp;lt;br&amp;gt;0.40625&lt;br /&gt;
| 11/8&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 879/768&amp;lt;br&amp;gt;1.14453125&lt;br /&gt;
| 1469/1280&amp;lt;br&amp;gt;1.14765625&lt;br /&gt;
| 275/224&amp;lt;br&amp;gt;1.2276785714285714&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56627&lt;br /&gt;
| [[Image:8x16r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -20/64&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -4/64&amp;lt;br&amp;gt;-0.0625&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 24/64&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 88/64&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56161&lt;br /&gt;
| [[Image:8x16rd.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 16x32 ==&lt;br /&gt;
&lt;br /&gt;
Best-known real-valued coefficients for V (R=t):&lt;br /&gt;
&lt;br /&gt;
p0 = -0.42111473798940136&lt;br /&gt;
&lt;br /&gt;
p1 = -0.4121736499899753&lt;br /&gt;
&lt;br /&gt;
p2 = -0.3350240707669929&lt;br /&gt;
&lt;br /&gt;
p3 = -0.3224547931861314&lt;br /&gt;
&lt;br /&gt;
p4 = -0.25883387978005545&lt;br /&gt;
&lt;br /&gt;
p5 = -0.20951913473498104&lt;br /&gt;
&lt;br /&gt;
p6 = -0.0598657149803332&lt;br /&gt;
&lt;br /&gt;
q0 = 0.9107782439906195&lt;br /&gt;
&lt;br /&gt;
q1 = 0.8109855829278226&lt;br /&gt;
&lt;br /&gt;
q2 = 0.715846584586721&lt;br /&gt;
&lt;br /&gt;
q3 = 0.6135951570714172&lt;br /&gt;
&lt;br /&gt;
q4 = 0.49846644853347627&lt;br /&gt;
&lt;br /&gt;
q5 = 0.3945215834922529&lt;br /&gt;
&lt;br /&gt;
q6 = 0.21822275136248082&lt;br /&gt;
&lt;br /&gt;
CG = 9.81157&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!p3&lt;br /&gt;
!p4&lt;br /&gt;
!p5&lt;br /&gt;
!p6&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!q3&lt;br /&gt;
!q4&lt;br /&gt;
!q5&lt;br /&gt;
!q6&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!s4&lt;br /&gt;
!s5&lt;br /&gt;
!s6&lt;br /&gt;
!s7&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -23/64&amp;lt;br&amp;gt;-0.359375&lt;br /&gt;
| -17/64&amp;lt;br&amp;gt;-0.265625&lt;br /&gt;
| -12/64&amp;lt;br&amp;gt;-0.1875&lt;br /&gt;
| -14/64&amp;lt;br&amp;gt;-0.21875&lt;br /&gt;
| -13/64&amp;lt;br&amp;gt;-0.203125&lt;br /&gt;
| -7/64&amp;lt;br&amp;gt;-0.109375&lt;br /&gt;
| 50/64&amp;lt;br&amp;gt;0.78125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 31/64&amp;lt;br&amp;gt;0.484375&lt;br /&gt;
| 22/64&amp;lt;br&amp;gt;0.34375&lt;br /&gt;
| 18/64&amp;lt;br&amp;gt;0.28125&lt;br /&gt;
| 16/64&amp;lt;br&amp;gt;0.25&lt;br /&gt;
| 11/64&amp;lt;br&amp;gt;0.171875&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 71/64&amp;lt;br&amp;gt;1.109375&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.89338&lt;br /&gt;
| [[Image:16x32.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -26/64&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -27/64&amp;lt;br&amp;gt;-0.421875&lt;br /&gt;
| -22/64&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| -14/64&amp;lt;br&amp;gt;-0.21875&lt;br /&gt;
| -5/64&amp;lt;br&amp;gt;-0.078125&lt;br /&gt;
| 58/64&amp;lt;br&amp;gt;0.90625&lt;br /&gt;
| 52/64&amp;lt;br&amp;gt;0.8125&lt;br /&gt;
| 45/64&amp;lt;br&amp;gt;0.703125&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 31/64&amp;lt;br&amp;gt;0.484375&lt;br /&gt;
| 23/64&amp;lt;br&amp;gt;0.359375&lt;br /&gt;
| 13/64&amp;lt;br&amp;gt;0.203125&lt;br /&gt;
| 3/2&amp;lt;br&amp;gt;1.5&lt;br /&gt;
| 77/64&amp;lt;br&amp;gt;1.203125&lt;br /&gt;
| 77/64&amp;lt;br&amp;gt;1.203125&lt;br /&gt;
| 1105/896&amp;lt;br&amp;gt;1.23326&lt;br /&gt;
| 218/192&amp;lt;br&amp;gt;1.135417&lt;br /&gt;
| 197/176&amp;lt;br&amp;gt;1.119318&lt;br /&gt;
| 1919/1664&amp;lt;br&amp;gt;1.153245&lt;br /&gt;
| 4351/3840&amp;lt;br&amp;gt;1.133073&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.79398&lt;br /&gt;
| [[Image:16x32r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&lt;br /&gt;
| -28/64&amp;lt;br&amp;gt;-0.4375&lt;br /&gt;
| -34/64&amp;lt;br&amp;gt;-0.53125&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| -14/64&amp;lt;br&amp;gt;-0.21875&lt;br /&gt;
| -13/64&amp;lt;br&amp;gt;-0.203125&lt;br /&gt;
| -2/64&amp;lt;br&amp;gt;-0.03125&lt;br /&gt;
| 59/64&amp;lt;br&amp;gt;0.921875&lt;br /&gt;
| 54/64&amp;lt;br&amp;gt;0.84375&lt;br /&gt;
| 49/64&amp;lt;br&amp;gt;0.765625&lt;br /&gt;
| 38/64&amp;lt;br&amp;gt;0.59375&lt;br /&gt;
| 30/64&amp;lt;br&amp;gt;0.46875&lt;br /&gt;
| 24/64&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 12/64&amp;lt;br&amp;gt;0.1875&lt;br /&gt;
| 80/64&amp;lt;br&amp;gt;1.25&lt;br /&gt;
| 65/64&amp;lt;br&amp;gt;1.015625&lt;br /&gt;
| 65/64&amp;lt;br&amp;gt;1.015625&lt;br /&gt;
| 68/64&amp;lt;br&amp;gt;1.0625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 69/64&amp;lt;br&amp;gt;1.078125&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 70/64&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.73109&lt;br /&gt;
| [[Image:16x32rd.png|64px]]&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Unlord</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=File:16x32.png&amp;diff=13540</id>
		<title>File:16x32.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=File:16x32.png&amp;diff=13540"/>
		<updated>2012-07-27T05:43:44Z</updated>

		<summary type="html">&lt;p&gt;Unlord: uploaded a new version of &amp;amp;quot;File:16x32.png&amp;amp;quot;: 16x32 R=f CG=9.89338 SBA=-16.5126 BO=0.0705998 W=18.8955&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;16x32 R=f&lt;/div&gt;</summary>
		<author><name>Unlord</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=TDLT&amp;diff=13539</id>
		<title>TDLT</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=TDLT&amp;diff=13539"/>
		<updated>2012-07-27T05:39:16Z</updated>

		<summary type="html">&lt;p&gt;Unlord: /* 16x32 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page holds the results of Time Domain Lapped Transform (TDLT) optimization problems looking for integer transform coefficients that provide optimal coding gain.  Wherever possible the assumptions are stated.  Later we should include testing against actual image data to verify the results (see test data [http://people.xiph.org/~tterribe/tmp/subset1-y4m.tar.gz here]).&lt;br /&gt;
&lt;br /&gt;
The coding gain objective used as the objective is taken from slide 13 of Tim&#039;s presentation [http://people.xiph.org/~tterribe/pubs/lca2012/auckland/intro_to_video1.pdf An Introduction to Video Coding]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;need figure with block matrix diagrams&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The free parameters are initially just the coefficients p_0,...,p_m,q_0,...,q_m where m=(n/2)-1.  We limit these to being dyadic rationals, e.g., x/2^d with d=6, between [-1,1].&lt;br /&gt;
&lt;br /&gt;
Given p&#039;s and q&#039;s and assuming a linear ramp constrains the s&#039;s.&lt;br /&gt;
 &lt;br /&gt;
== 4x8 ==&lt;br /&gt;
&lt;br /&gt;
Optimal real-valued coefficients for V:&lt;br /&gt;
&lt;br /&gt;
p0 = -0.18117338915051454&lt;br /&gt;
&lt;br /&gt;
q0 = 0.6331818230771687&lt;br /&gt;
&lt;br /&gt;
CG = 8.60603&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!q0&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!CG&lt;br /&gt;
!SBA&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -11/64&amp;lt;br&amp;gt;-0.171875&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 91/64&amp;lt;br&amp;gt;1.421875&lt;br /&gt;
| 85/64&amp;lt;br&amp;gt;1.328125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.63473&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;22.0331&lt;br /&gt;
| [[Image:4x8.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -12/64&amp;lt;br&amp;gt;-0.1875&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 92/64&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 1093/768&amp;lt;br&amp;gt;1.423177&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.60486&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;20.0573&lt;br /&gt;
| [[Image:4x8r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;max CG&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 92/64&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 93/64&amp;lt;br&amp;gt;1.453125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.59886&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;18.9411&lt;br /&gt;
| [[Image:4x8rd.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;max SBA&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 30/64&amp;lt;br&amp;gt;0.46875&lt;br /&gt;
| 136/64&amp;lt;br&amp;gt;2.125&lt;br /&gt;
| 91/64&amp;lt;br&amp;gt;1.421875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.23230&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;25.1934&lt;br /&gt;
| [[Image:4x8rd_sba.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 8x16 ==&lt;br /&gt;
&lt;br /&gt;
Optimal real-valued coefficients for V:&lt;br /&gt;
&lt;br /&gt;
p0 = -0.39460731547057293&lt;br /&gt;
&lt;br /&gt;
p1 = -0.33002212811740816&lt;br /&gt;
&lt;br /&gt;
p2 = -0.12391270981321137&lt;br /&gt;
&lt;br /&gt;
q0 = 0.822154737511288&lt;br /&gt;
&lt;br /&gt;
q1 = 0.632488694485779&lt;br /&gt;
&lt;br /&gt;
q2 = 0.40214668677553894&lt;br /&gt;
&lt;br /&gt;
CG = 9.56867&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -23/64&amp;lt;br&amp;gt;-0.359375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -6/64&amp;lt;br&amp;gt;-0.09375&lt;br /&gt;
| 48/64&amp;lt;br&amp;gt;0.75&lt;br /&gt;
| 34/64&amp;lt;br&amp;gt;0.53125&lt;br /&gt;
| 20/64&amp;lt;br&amp;gt;0.3125&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.60021&lt;br /&gt;
| [[Image:8x16.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -26/64&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -22/64&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 26/64&amp;lt;br&amp;gt;0.40625&lt;br /&gt;
| 11/8&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 879/768&amp;lt;br&amp;gt;1.14453125&lt;br /&gt;
| 1469/1280&amp;lt;br&amp;gt;1.14765625&lt;br /&gt;
| 275/224&amp;lt;br&amp;gt;1.2276785714285714&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56627&lt;br /&gt;
| [[Image:8x16r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -20/64&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -4/64&amp;lt;br&amp;gt;-0.0625&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 24/64&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 88/64&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56161&lt;br /&gt;
| [[Image:8x16rd.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 16x32 ==&lt;br /&gt;
&lt;br /&gt;
Best-known real-valued coefficients for V (R=t):&lt;br /&gt;
&lt;br /&gt;
p0 = -0.42111473798940136&lt;br /&gt;
&lt;br /&gt;
p1 = -0.4121736499899753&lt;br /&gt;
&lt;br /&gt;
p2 = -0.3350240707669929&lt;br /&gt;
&lt;br /&gt;
p3 = -0.3224547931861314&lt;br /&gt;
&lt;br /&gt;
p4 = -0.25883387978005545&lt;br /&gt;
&lt;br /&gt;
p5 = -0.20951913473498104&lt;br /&gt;
&lt;br /&gt;
p6 = -0.0598657149803332&lt;br /&gt;
&lt;br /&gt;
q0 = 0.9107782439906195&lt;br /&gt;
&lt;br /&gt;
q1 = 0.8109855829278226&lt;br /&gt;
&lt;br /&gt;
q2 = 0.715846584586721&lt;br /&gt;
&lt;br /&gt;
q3 = 0.6135951570714172&lt;br /&gt;
&lt;br /&gt;
q4 = 0.49846644853347627&lt;br /&gt;
&lt;br /&gt;
q5 = 0.3945215834922529&lt;br /&gt;
&lt;br /&gt;
q6 = 0.21822275136248082&lt;br /&gt;
&lt;br /&gt;
CG = 9.81157&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!p3&lt;br /&gt;
!p4&lt;br /&gt;
!p5&lt;br /&gt;
!p6&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!q3&lt;br /&gt;
!q4&lt;br /&gt;
!q5&lt;br /&gt;
!q6&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!s4&lt;br /&gt;
!s5&lt;br /&gt;
!s6&lt;br /&gt;
!s7&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -23/64&amp;lt;br&amp;gt;-0.359375&lt;br /&gt;
| -17/64&amp;lt;br&amp;gt;-0.265625&lt;br /&gt;
| -12/64&amp;lt;br&amp;gt;-0.1875&lt;br /&gt;
| -14/64&amp;lt;br&amp;gt;-0.21875&lt;br /&gt;
| -13/64&amp;lt;br&amp;gt;-0.203125&lt;br /&gt;
| -7/64&amp;lt;br&amp;gt;-0.109375&lt;br /&gt;
| 50/64&amp;lt;br&amp;gt;0.78125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 31/64&amp;lt;br&amp;gt;0.484375&lt;br /&gt;
| 22/64&amp;lt;br&amp;gt;0.34375&lt;br /&gt;
| 18/64&amp;lt;br&amp;gt;0.28125&lt;br /&gt;
| 16/64&amp;lt;br&amp;gt;0.25&lt;br /&gt;
| 11/64&amp;lt;br&amp;gt;0.171875&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 71/64&amp;lt;br&amp;gt;1.109375&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.89338&lt;br /&gt;
| [[Image:16x32.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -26/64&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -27/64&amp;lt;br&amp;gt;-0.421875&lt;br /&gt;
| -22/64&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| -14/64&amp;lt;br&amp;gt;-0.21875&lt;br /&gt;
| -5/64&amp;lt;br&amp;gt;-0.078125&lt;br /&gt;
| 58/64&amp;lt;br&amp;gt;0.90625&lt;br /&gt;
| 52/64&amp;lt;br&amp;gt;0.8125&lt;br /&gt;
| 45/64&amp;lt;br&amp;gt;0.703125&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 31/64&amp;lt;br&amp;gt;0.484375&lt;br /&gt;
| 23/64&amp;lt;br&amp;gt;0.359375&lt;br /&gt;
| 13/64&amp;lt;br&amp;gt;0.203125&lt;br /&gt;
| 3/2&amp;lt;br&amp;gt;1.5&lt;br /&gt;
| 77/64&amp;lt;br&amp;gt;1.203125&lt;br /&gt;
| 77/64&amp;lt;br&amp;gt;1.203125&lt;br /&gt;
| 1105/896&amp;lt;br&amp;gt;1.23326&lt;br /&gt;
| 218/192&amp;lt;br&amp;gt;1.135417&lt;br /&gt;
| 197/176&amp;lt;br&amp;gt;1.119318&lt;br /&gt;
| 1919/1664&amp;lt;br&amp;gt;1.153245&lt;br /&gt;
| 4351/3840&amp;lt;br&amp;gt;1.133073&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.79398&lt;br /&gt;
| [[Image:16x32r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| -17/64&amp;lt;br&amp;gt;-0.265625&lt;br /&gt;
| -27/64&amp;lt;br&amp;gt;-0.421875&lt;br /&gt;
| -13/64&amp;lt;br&amp;gt;-0.203125&lt;br /&gt;
| -2/64&amp;lt;br&amp;gt;-0.03125&lt;br /&gt;
| 57/64&amp;lt;br&amp;gt;0.890625&lt;br /&gt;
| 50/64&amp;lt;br&amp;gt;0.78125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 32/64&amp;lt;br&amp;gt;0.5&lt;br /&gt;
| 32/64&amp;lt;br&amp;gt;0.5&lt;br /&gt;
| 28/64&amp;lt;br&amp;gt;0.4375&lt;br /&gt;
| 12/64&amp;lt;br&amp;gt;0.1875&lt;br /&gt;
| 112/64&amp;lt;br&amp;gt;1.75&lt;br /&gt;
| 84/64&amp;lt;br&amp;gt;1.3125&lt;br /&gt;
| 88/64&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 80/64&amp;lt;br&amp;gt;1.25&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 70/64&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.65884&lt;br /&gt;
| [[Image:16x32rd.png|64px]]&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Unlord</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=TDLT&amp;diff=13538</id>
		<title>TDLT</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=TDLT&amp;diff=13538"/>
		<updated>2012-07-27T05:36:46Z</updated>

		<summary type="html">&lt;p&gt;Unlord: /* 16x32 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page holds the results of Time Domain Lapped Transform (TDLT) optimization problems looking for integer transform coefficients that provide optimal coding gain.  Wherever possible the assumptions are stated.  Later we should include testing against actual image data to verify the results (see test data [http://people.xiph.org/~tterribe/tmp/subset1-y4m.tar.gz here]).&lt;br /&gt;
&lt;br /&gt;
The coding gain objective used as the objective is taken from slide 13 of Tim&#039;s presentation [http://people.xiph.org/~tterribe/pubs/lca2012/auckland/intro_to_video1.pdf An Introduction to Video Coding]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;need figure with block matrix diagrams&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The free parameters are initially just the coefficients p_0,...,p_m,q_0,...,q_m where m=(n/2)-1.  We limit these to being dyadic rationals, e.g., x/2^d with d=6, between [-1,1].&lt;br /&gt;
&lt;br /&gt;
Given p&#039;s and q&#039;s and assuming a linear ramp constrains the s&#039;s.&lt;br /&gt;
 &lt;br /&gt;
== 4x8 ==&lt;br /&gt;
&lt;br /&gt;
Optimal real-valued coefficients for V:&lt;br /&gt;
&lt;br /&gt;
p0 = -0.18117338915051454&lt;br /&gt;
&lt;br /&gt;
q0 = 0.6331818230771687&lt;br /&gt;
&lt;br /&gt;
CG = 8.60603&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!q0&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!CG&lt;br /&gt;
!SBA&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -11/64&amp;lt;br&amp;gt;-0.171875&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 91/64&amp;lt;br&amp;gt;1.421875&lt;br /&gt;
| 85/64&amp;lt;br&amp;gt;1.328125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.63473&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;22.0331&lt;br /&gt;
| [[Image:4x8.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -12/64&amp;lt;br&amp;gt;-0.1875&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 92/64&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 1093/768&amp;lt;br&amp;gt;1.423177&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.60486&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;20.0573&lt;br /&gt;
| [[Image:4x8r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;max CG&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 92/64&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 93/64&amp;lt;br&amp;gt;1.453125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.59886&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;18.9411&lt;br /&gt;
| [[Image:4x8rd.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;max SBA&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 30/64&amp;lt;br&amp;gt;0.46875&lt;br /&gt;
| 136/64&amp;lt;br&amp;gt;2.125&lt;br /&gt;
| 91/64&amp;lt;br&amp;gt;1.421875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.23230&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;25.1934&lt;br /&gt;
| [[Image:4x8rd_sba.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 8x16 ==&lt;br /&gt;
&lt;br /&gt;
Optimal real-valued coefficients for V:&lt;br /&gt;
&lt;br /&gt;
p0 = -0.39460731547057293&lt;br /&gt;
&lt;br /&gt;
p1 = -0.33002212811740816&lt;br /&gt;
&lt;br /&gt;
p2 = -0.12391270981321137&lt;br /&gt;
&lt;br /&gt;
q0 = 0.822154737511288&lt;br /&gt;
&lt;br /&gt;
q1 = 0.632488694485779&lt;br /&gt;
&lt;br /&gt;
q2 = 0.40214668677553894&lt;br /&gt;
&lt;br /&gt;
CG = 9.56867&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -23/64&amp;lt;br&amp;gt;-0.359375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -6/64&amp;lt;br&amp;gt;-0.09375&lt;br /&gt;
| 48/64&amp;lt;br&amp;gt;0.75&lt;br /&gt;
| 34/64&amp;lt;br&amp;gt;0.53125&lt;br /&gt;
| 20/64&amp;lt;br&amp;gt;0.3125&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.60021&lt;br /&gt;
| [[Image:8x16.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -26/64&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -22/64&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 26/64&amp;lt;br&amp;gt;0.40625&lt;br /&gt;
| 11/8&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 879/768&amp;lt;br&amp;gt;1.14453125&lt;br /&gt;
| 1469/1280&amp;lt;br&amp;gt;1.14765625&lt;br /&gt;
| 275/224&amp;lt;br&amp;gt;1.2276785714285714&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56627&lt;br /&gt;
| [[Image:8x16r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -20/64&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -4/64&amp;lt;br&amp;gt;-0.0625&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 24/64&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 88/64&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56161&lt;br /&gt;
| [[Image:8x16rd.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 16x32 ==&lt;br /&gt;
&lt;br /&gt;
Best-known real-valued coefficients for V (R=t):&lt;br /&gt;
&lt;br /&gt;
p0 = -0.42111473798940136&lt;br /&gt;
&lt;br /&gt;
p1 = -0.4121736499899753&lt;br /&gt;
&lt;br /&gt;
p2 = -0.3350240707669929&lt;br /&gt;
&lt;br /&gt;
p3 = -0.3224547931861314&lt;br /&gt;
&lt;br /&gt;
p4 = -0.25883387978005545&lt;br /&gt;
&lt;br /&gt;
p5 = -0.20951913473498104&lt;br /&gt;
&lt;br /&gt;
p6 = -0.0598657149803332&lt;br /&gt;
&lt;br /&gt;
q0 = 0.9107782439906195&lt;br /&gt;
&lt;br /&gt;
q1 = 0.8109855829278226&lt;br /&gt;
&lt;br /&gt;
q2 = 0.715846584586721&lt;br /&gt;
&lt;br /&gt;
q3 = 0.6135951570714172&lt;br /&gt;
&lt;br /&gt;
q4 = 0.49846644853347627&lt;br /&gt;
&lt;br /&gt;
q5 = 0.3945215834922529&lt;br /&gt;
&lt;br /&gt;
q6 = 0.21822275136248082&lt;br /&gt;
&lt;br /&gt;
CG = 9.81157&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!p3&lt;br /&gt;
!p4&lt;br /&gt;
!p5&lt;br /&gt;
!p6&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!q3&lt;br /&gt;
!q4&lt;br /&gt;
!q5&lt;br /&gt;
!q6&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!s4&lt;br /&gt;
!s5&lt;br /&gt;
!s6&lt;br /&gt;
!s7&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -23/64&amp;lt;br&amp;gt;-0.359375&lt;br /&gt;
| -17/64&amp;lt;br&amp;gt;-0.265625&lt;br /&gt;
| -12/64&amp;lt;br&amp;gt;-0.1875&lt;br /&gt;
| -14/64&amp;lt;br&amp;gt;-0.21875&lt;br /&gt;
| -13/64&amp;lt;br&amp;gt;-0.203125&lt;br /&gt;
| -7/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 50/64&amp;lt;br&amp;gt;0.78125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 31/64&amp;lt;br&amp;gt;0.484375&lt;br /&gt;
| 22/64&amp;lt;br&amp;gt;0.34375&lt;br /&gt;
| 18/64&amp;lt;br&amp;gt;0.28125&lt;br /&gt;
| 16/64&amp;lt;br&amp;gt;0.25&lt;br /&gt;
| 11/64&amp;lt;br&amp;gt;0.171875&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 71/64&amp;lt;br&amp;gt;1.109375&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.89338&lt;br /&gt;
| [[Image:16x32.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -26/64&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -27/64&amp;lt;br&amp;gt;-0.421875&lt;br /&gt;
| -22/64&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| -14/64&amp;lt;br&amp;gt;-0.21875&lt;br /&gt;
| -5/64&amp;lt;br&amp;gt;-0.078125&lt;br /&gt;
| 58/64&amp;lt;br&amp;gt;0.90625&lt;br /&gt;
| 52/64&amp;lt;br&amp;gt;0.8125&lt;br /&gt;
| 45/64&amp;lt;br&amp;gt;0.703125&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 31/64&amp;lt;br&amp;gt;0.484375&lt;br /&gt;
| 23/64&amp;lt;br&amp;gt;0.359375&lt;br /&gt;
| 13/64&amp;lt;br&amp;gt;0.203125&lt;br /&gt;
| 3/2&amp;lt;br&amp;gt;1.5&lt;br /&gt;
| 77/64&amp;lt;br&amp;gt;1.203125&lt;br /&gt;
| 77/64&amp;lt;br&amp;gt;1.203125&lt;br /&gt;
| 1105/896&amp;lt;br&amp;gt;1.23326&lt;br /&gt;
| 218/192&amp;lt;br&amp;gt;1.135417&lt;br /&gt;
| 197/176&amp;lt;br&amp;gt;1.119318&lt;br /&gt;
| 1919/1664&amp;lt;br&amp;gt;1.153245&lt;br /&gt;
| 4351/3840&amp;lt;br&amp;gt;1.133073&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.79398&lt;br /&gt;
| [[Image:16x32r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| -17/64&amp;lt;br&amp;gt;-0.265625&lt;br /&gt;
| -27/64&amp;lt;br&amp;gt;-0.421875&lt;br /&gt;
| -13/64&amp;lt;br&amp;gt;-0.203125&lt;br /&gt;
| -2/64&amp;lt;br&amp;gt;-0.03125&lt;br /&gt;
| 57/64&amp;lt;br&amp;gt;0.890625&lt;br /&gt;
| 50/64&amp;lt;br&amp;gt;0.78125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 32/64&amp;lt;br&amp;gt;0.5&lt;br /&gt;
| 32/64&amp;lt;br&amp;gt;0.5&lt;br /&gt;
| 28/64&amp;lt;br&amp;gt;0.4375&lt;br /&gt;
| 12/64&amp;lt;br&amp;gt;0.1875&lt;br /&gt;
| 112/64&amp;lt;br&amp;gt;1.75&lt;br /&gt;
| 84/64&amp;lt;br&amp;gt;1.3125&lt;br /&gt;
| 88/64&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 80/64&amp;lt;br&amp;gt;1.25&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 70/64&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.65884&lt;br /&gt;
| [[Image:16x32rd.png|64px]]&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Unlord</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=File:16x32.png&amp;diff=13532</id>
		<title>File:16x32.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=File:16x32.png&amp;diff=13532"/>
		<updated>2012-07-21T05:38:03Z</updated>

		<summary type="html">&lt;p&gt;Unlord: uploaded a new version of &amp;amp;quot;File:16x32.png&amp;amp;quot;: 16x32 R=f CG=9.89269 SBA=-16.5439 BO=0.072092 W=18.9268&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;16x32 R=f&lt;/div&gt;</summary>
		<author><name>Unlord</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=TDLT&amp;diff=13531</id>
		<title>TDLT</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=TDLT&amp;diff=13531"/>
		<updated>2012-07-21T05:33:47Z</updated>

		<summary type="html">&lt;p&gt;Unlord: /* 16x32 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page holds the results of Time Domain Lapped Transform (TDLT) optimization problems looking for integer transform coefficients that provide optimal coding gain.  Wherever possible the assumptions are stated.  Later we should include testing against actual image data to verify the results (see test data [http://people.xiph.org/~tterribe/tmp/subset1-y4m.tar.gz here]).&lt;br /&gt;
&lt;br /&gt;
The coding gain objective used as the objective is taken from slide 13 of Tim&#039;s presentation [http://people.xiph.org/~tterribe/pubs/lca2012/auckland/intro_to_video1.pdf An Introduction to Video Coding]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;need figure with block matrix diagrams&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The free parameters are initially just the coefficients p_0,...,p_m,q_0,...,q_m where m=(n/2)-1.  We limit these to being dyadic rationals, e.g., x/2^d with d=6, between [-1,1].&lt;br /&gt;
&lt;br /&gt;
Given p&#039;s and q&#039;s and assuming a linear ramp constrains the s&#039;s.&lt;br /&gt;
 &lt;br /&gt;
== 4x8 ==&lt;br /&gt;
&lt;br /&gt;
Optimal real-valued coefficients for V:&lt;br /&gt;
&lt;br /&gt;
p0 = -0.18117338915051454&lt;br /&gt;
&lt;br /&gt;
q0 = 0.6331818230771687&lt;br /&gt;
&lt;br /&gt;
CG = 8.60603&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!q0&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!CG&lt;br /&gt;
!SBA&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -11/64&amp;lt;br&amp;gt;-0.171875&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 91/64&amp;lt;br&amp;gt;1.421875&lt;br /&gt;
| 85/64&amp;lt;br&amp;gt;1.328125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.63473&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;22.0331&lt;br /&gt;
| [[Image:4x8.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -12/64&amp;lt;br&amp;gt;-0.1875&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 92/64&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 1093/768&amp;lt;br&amp;gt;1.423177&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.60486&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;20.0573&lt;br /&gt;
| [[Image:4x8r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;max CG&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 92/64&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 93/64&amp;lt;br&amp;gt;1.453125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.59886&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;18.9411&lt;br /&gt;
| [[Image:4x8rd.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;max SBA&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 30/64&amp;lt;br&amp;gt;0.46875&lt;br /&gt;
| 136/64&amp;lt;br&amp;gt;2.125&lt;br /&gt;
| 91/64&amp;lt;br&amp;gt;1.421875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.23230&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;25.1934&lt;br /&gt;
| [[Image:4x8rd_sba.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 8x16 ==&lt;br /&gt;
&lt;br /&gt;
Optimal real-valued coefficients for V:&lt;br /&gt;
&lt;br /&gt;
p0 = -0.39460731547057293&lt;br /&gt;
&lt;br /&gt;
p1 = -0.33002212811740816&lt;br /&gt;
&lt;br /&gt;
p2 = -0.12391270981321137&lt;br /&gt;
&lt;br /&gt;
q0 = 0.822154737511288&lt;br /&gt;
&lt;br /&gt;
q1 = 0.632488694485779&lt;br /&gt;
&lt;br /&gt;
q2 = 0.40214668677553894&lt;br /&gt;
&lt;br /&gt;
CG = 9.56867&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -23/64&amp;lt;br&amp;gt;-0.359375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -6/64&amp;lt;br&amp;gt;-0.09375&lt;br /&gt;
| 48/64&amp;lt;br&amp;gt;0.75&lt;br /&gt;
| 34/64&amp;lt;br&amp;gt;0.53125&lt;br /&gt;
| 20/64&amp;lt;br&amp;gt;0.3125&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.60021&lt;br /&gt;
| [[Image:8x16.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -26/64&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -22/64&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 26/64&amp;lt;br&amp;gt;0.40625&lt;br /&gt;
| 11/8&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 879/768&amp;lt;br&amp;gt;1.14453125&lt;br /&gt;
| 1469/1280&amp;lt;br&amp;gt;1.14765625&lt;br /&gt;
| 275/224&amp;lt;br&amp;gt;1.2276785714285714&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56627&lt;br /&gt;
| [[Image:8x16r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -20/64&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -4/64&amp;lt;br&amp;gt;-0.0625&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 24/64&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 88/64&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56161&lt;br /&gt;
| [[Image:8x16rd.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 16x32 ==&lt;br /&gt;
&lt;br /&gt;
Best-known real-valued coefficients for V (R=t):&lt;br /&gt;
&lt;br /&gt;
p0 = -0.42111473798940136&lt;br /&gt;
&lt;br /&gt;
p1 = -0.4121736499899753&lt;br /&gt;
&lt;br /&gt;
p2 = -0.3350240707669929&lt;br /&gt;
&lt;br /&gt;
p3 = -0.3224547931861314&lt;br /&gt;
&lt;br /&gt;
p4 = -0.25883387978005545&lt;br /&gt;
&lt;br /&gt;
p5 = -0.20951913473498104&lt;br /&gt;
&lt;br /&gt;
p6 = -0.0598657149803332&lt;br /&gt;
&lt;br /&gt;
q0 = 0.9107782439906195&lt;br /&gt;
&lt;br /&gt;
q1 = 0.8109855829278226&lt;br /&gt;
&lt;br /&gt;
q2 = 0.715846584586721&lt;br /&gt;
&lt;br /&gt;
q3 = 0.6135951570714172&lt;br /&gt;
&lt;br /&gt;
q4 = 0.49846644853347627&lt;br /&gt;
&lt;br /&gt;
q5 = 0.3945215834922529&lt;br /&gt;
&lt;br /&gt;
q6 = 0.21822275136248082&lt;br /&gt;
&lt;br /&gt;
CG = 9.81157&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!p3&lt;br /&gt;
!p4&lt;br /&gt;
!p5&lt;br /&gt;
!p6&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!q3&lt;br /&gt;
!q4&lt;br /&gt;
!q5&lt;br /&gt;
!q6&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!s4&lt;br /&gt;
!s5&lt;br /&gt;
!s6&lt;br /&gt;
!s7&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -23/64&amp;lt;br&amp;gt;-0.359375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -12/64&amp;lt;br&amp;gt;-0.1875&lt;br /&gt;
| -14/64&amp;lt;br&amp;gt;-0.21875&lt;br /&gt;
| -13/64&amp;lt;br&amp;gt;-0.203125&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 50/64&amp;lt;br&amp;gt;0.78125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 31/64&amp;lt;br&amp;gt;0.484375&lt;br /&gt;
| 22/64&amp;lt;br&amp;gt;0.34375&lt;br /&gt;
| 18/64&amp;lt;br&amp;gt;0.28125&lt;br /&gt;
| 15/64&amp;lt;br&amp;gt;0.234375&lt;br /&gt;
| 11/64&amp;lt;br&amp;gt;0.171875&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 68/64&amp;lt;br&amp;gt;1.0625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.89269&lt;br /&gt;
| [[Image:16x32.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -26/64&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -27/64&amp;lt;br&amp;gt;-0.421875&lt;br /&gt;
| -22/64&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| -14/64&amp;lt;br&amp;gt;-0.21875&lt;br /&gt;
| -5/64&amp;lt;br&amp;gt;-0.078125&lt;br /&gt;
| 58/64&amp;lt;br&amp;gt;0.90625&lt;br /&gt;
| 52/64&amp;lt;br&amp;gt;0.8125&lt;br /&gt;
| 45/64&amp;lt;br&amp;gt;0.703125&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 31/64&amp;lt;br&amp;gt;0.484375&lt;br /&gt;
| 23/64&amp;lt;br&amp;gt;0.359375&lt;br /&gt;
| 13/64&amp;lt;br&amp;gt;0.203125&lt;br /&gt;
| 3/2&amp;lt;br&amp;gt;1.5&lt;br /&gt;
| 77/64&amp;lt;br&amp;gt;1.203125&lt;br /&gt;
| 77/64&amp;lt;br&amp;gt;1.203125&lt;br /&gt;
| 1105/896&amp;lt;br&amp;gt;1.23326&lt;br /&gt;
| 218/192&amp;lt;br&amp;gt;1.135417&lt;br /&gt;
| 197/176&amp;lt;br&amp;gt;1.119318&lt;br /&gt;
| 1919/1664&amp;lt;br&amp;gt;1.153245&lt;br /&gt;
| 4351/3840&amp;lt;br&amp;gt;1.133073&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.79398&lt;br /&gt;
| [[Image:16x32r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| -17/64&amp;lt;br&amp;gt;-0.265625&lt;br /&gt;
| -27/64&amp;lt;br&amp;gt;-0.421875&lt;br /&gt;
| -13/64&amp;lt;br&amp;gt;-0.203125&lt;br /&gt;
| -2/64&amp;lt;br&amp;gt;-0.03125&lt;br /&gt;
| 57/64&amp;lt;br&amp;gt;0.890625&lt;br /&gt;
| 50/64&amp;lt;br&amp;gt;0.78125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 32/64&amp;lt;br&amp;gt;0.5&lt;br /&gt;
| 32/64&amp;lt;br&amp;gt;0.5&lt;br /&gt;
| 28/64&amp;lt;br&amp;gt;0.4375&lt;br /&gt;
| 12/64&amp;lt;br&amp;gt;0.1875&lt;br /&gt;
| 112/64&amp;lt;br&amp;gt;1.75&lt;br /&gt;
| 84/64&amp;lt;br&amp;gt;1.3125&lt;br /&gt;
| 88/64&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 80/64&amp;lt;br&amp;gt;1.25&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 70/64&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.65884&lt;br /&gt;
| [[Image:16x32rd.png|64px]]&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Unlord</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=File:16x32.png&amp;diff=13527</id>
		<title>File:16x32.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=File:16x32.png&amp;diff=13527"/>
		<updated>2012-07-19T22:36:43Z</updated>

		<summary type="html">&lt;p&gt;Unlord: uploaded a new version of &amp;amp;quot;File:16x32.png&amp;amp;quot;: 16x32 R=f CG=9.89242 SBA=-16.4861 BO=0.0707185 W=18.9345&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;16x32 R=f&lt;/div&gt;</summary>
		<author><name>Unlord</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=TDLT&amp;diff=13526</id>
		<title>TDLT</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=TDLT&amp;diff=13526"/>
		<updated>2012-07-19T22:34:50Z</updated>

		<summary type="html">&lt;p&gt;Unlord: /* 16x32 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page holds the results of Time Domain Lapped Transform (TDLT) optimization problems looking for integer transform coefficients that provide optimal coding gain.  Wherever possible the assumptions are stated.  Later we should include testing against actual image data to verify the results (see test data [http://people.xiph.org/~tterribe/tmp/subset1-y4m.tar.gz here]).&lt;br /&gt;
&lt;br /&gt;
The coding gain objective used as the objective is taken from slide 13 of Tim&#039;s presentation [http://people.xiph.org/~tterribe/pubs/lca2012/auckland/intro_to_video1.pdf An Introduction to Video Coding]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;need figure with block matrix diagrams&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The free parameters are initially just the coefficients p_0,...,p_m,q_0,...,q_m where m=(n/2)-1.  We limit these to being dyadic rationals, e.g., x/2^d with d=6, between [-1,1].&lt;br /&gt;
&lt;br /&gt;
Given p&#039;s and q&#039;s and assuming a linear ramp constrains the s&#039;s.&lt;br /&gt;
 &lt;br /&gt;
== 4x8 ==&lt;br /&gt;
&lt;br /&gt;
Optimal real-valued coefficients for V:&lt;br /&gt;
&lt;br /&gt;
p0 = -0.18117338915051454&lt;br /&gt;
&lt;br /&gt;
q0 = 0.6331818230771687&lt;br /&gt;
&lt;br /&gt;
CG = 8.60603&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!q0&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!CG&lt;br /&gt;
!SBA&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -11/64&amp;lt;br&amp;gt;-0.171875&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 91/64&amp;lt;br&amp;gt;1.421875&lt;br /&gt;
| 85/64&amp;lt;br&amp;gt;1.328125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.63473&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;22.0331&lt;br /&gt;
| [[Image:4x8.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -12/64&amp;lt;br&amp;gt;-0.1875&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 92/64&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 1093/768&amp;lt;br&amp;gt;1.423177&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.60486&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;20.0573&lt;br /&gt;
| [[Image:4x8r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;max CG&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 92/64&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 93/64&amp;lt;br&amp;gt;1.453125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.59886&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;18.9411&lt;br /&gt;
| [[Image:4x8rd.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;max SBA&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 30/64&amp;lt;br&amp;gt;0.46875&lt;br /&gt;
| 136/64&amp;lt;br&amp;gt;2.125&lt;br /&gt;
| 91/64&amp;lt;br&amp;gt;1.421875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.23230&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;25.1934&lt;br /&gt;
| [[Image:4x8rd_sba.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 8x16 ==&lt;br /&gt;
&lt;br /&gt;
Optimal real-valued coefficients for V:&lt;br /&gt;
&lt;br /&gt;
p0 = -0.39460731547057293&lt;br /&gt;
&lt;br /&gt;
p1 = -0.33002212811740816&lt;br /&gt;
&lt;br /&gt;
p2 = -0.12391270981321137&lt;br /&gt;
&lt;br /&gt;
q0 = 0.822154737511288&lt;br /&gt;
&lt;br /&gt;
q1 = 0.632488694485779&lt;br /&gt;
&lt;br /&gt;
q2 = 0.40214668677553894&lt;br /&gt;
&lt;br /&gt;
CG = 9.56867&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -23/64&amp;lt;br&amp;gt;-0.359375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -6/64&amp;lt;br&amp;gt;-0.09375&lt;br /&gt;
| 48/64&amp;lt;br&amp;gt;0.75&lt;br /&gt;
| 34/64&amp;lt;br&amp;gt;0.53125&lt;br /&gt;
| 20/64&amp;lt;br&amp;gt;0.3125&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.60021&lt;br /&gt;
| [[Image:8x16.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -26/64&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -22/64&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 26/64&amp;lt;br&amp;gt;0.40625&lt;br /&gt;
| 11/8&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 879/768&amp;lt;br&amp;gt;1.14453125&lt;br /&gt;
| 1469/1280&amp;lt;br&amp;gt;1.14765625&lt;br /&gt;
| 275/224&amp;lt;br&amp;gt;1.2276785714285714&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56627&lt;br /&gt;
| [[Image:8x16r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -20/64&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -4/64&amp;lt;br&amp;gt;-0.0625&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 24/64&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 88/64&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56161&lt;br /&gt;
| [[Image:8x16rd.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 16x32 ==&lt;br /&gt;
&lt;br /&gt;
Best-known real-valued coefficients for V (R=t):&lt;br /&gt;
&lt;br /&gt;
p0 = -0.42111473798940136&lt;br /&gt;
&lt;br /&gt;
p1 = -0.4121736499899753&lt;br /&gt;
&lt;br /&gt;
p2 = -0.3350240707669929&lt;br /&gt;
&lt;br /&gt;
p3 = -0.3224547931861314&lt;br /&gt;
&lt;br /&gt;
p4 = -0.25883387978005545&lt;br /&gt;
&lt;br /&gt;
p5 = -0.20951913473498104&lt;br /&gt;
&lt;br /&gt;
p6 = -0.0598657149803332&lt;br /&gt;
&lt;br /&gt;
q0 = 0.9107782439906195&lt;br /&gt;
&lt;br /&gt;
q1 = 0.8109855829278226&lt;br /&gt;
&lt;br /&gt;
q2 = 0.715846584586721&lt;br /&gt;
&lt;br /&gt;
q3 = 0.6135951570714172&lt;br /&gt;
&lt;br /&gt;
q4 = 0.49846644853347627&lt;br /&gt;
&lt;br /&gt;
q5 = 0.3945215834922529&lt;br /&gt;
&lt;br /&gt;
q6 = 0.21822275136248082&lt;br /&gt;
&lt;br /&gt;
CG = 9.81157&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!p3&lt;br /&gt;
!p4&lt;br /&gt;
!p5&lt;br /&gt;
!p6&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!q3&lt;br /&gt;
!q4&lt;br /&gt;
!q5&lt;br /&gt;
!q6&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!s4&lt;br /&gt;
!s5&lt;br /&gt;
!s6&lt;br /&gt;
!s7&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -23/64&amp;lt;br&amp;gt;-0.359375&lt;br /&gt;
| -17/64&amp;lt;br&amp;gt;-0.265625&lt;br /&gt;
| -12/64&amp;lt;br&amp;gt;-0.1875&lt;br /&gt;
| -14/64&amp;lt;br&amp;gt;-0.21875&lt;br /&gt;
| -13/64&amp;lt;br&amp;gt;-0.203125&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 50/64&amp;lt;br&amp;gt;0.78125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 31/64&amp;lt;br&amp;gt;0.484375&lt;br /&gt;
| 22/64&amp;lt;br&amp;gt;0.34375&lt;br /&gt;
| 18/64&amp;lt;br&amp;gt;0.28125&lt;br /&gt;
| 16/64&amp;lt;br&amp;gt;0.25&lt;br /&gt;
| 11/64&amp;lt;br&amp;gt;0.171875&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 68/64&amp;lt;br&amp;gt;1.0625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.89242&lt;br /&gt;
| [[Image:16x32.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -26/64&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -27/64&amp;lt;br&amp;gt;-0.421875&lt;br /&gt;
| -22/64&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| -14/64&amp;lt;br&amp;gt;-0.21875&lt;br /&gt;
| -5/64&amp;lt;br&amp;gt;-0.078125&lt;br /&gt;
| 58/64&amp;lt;br&amp;gt;0.90625&lt;br /&gt;
| 52/64&amp;lt;br&amp;gt;0.8125&lt;br /&gt;
| 45/64&amp;lt;br&amp;gt;0.703125&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 31/64&amp;lt;br&amp;gt;0.484375&lt;br /&gt;
| 23/64&amp;lt;br&amp;gt;0.359375&lt;br /&gt;
| 13/64&amp;lt;br&amp;gt;0.203125&lt;br /&gt;
| 3/2&amp;lt;br&amp;gt;1.5&lt;br /&gt;
| 77/64&amp;lt;br&amp;gt;1.203125&lt;br /&gt;
| 77/64&amp;lt;br&amp;gt;1.203125&lt;br /&gt;
| 1105/896&amp;lt;br&amp;gt;1.23326&lt;br /&gt;
| 218/192&amp;lt;br&amp;gt;1.135417&lt;br /&gt;
| 197/176&amp;lt;br&amp;gt;1.119318&lt;br /&gt;
| 1919/1664&amp;lt;br&amp;gt;1.153245&lt;br /&gt;
| 4351/3840&amp;lt;br&amp;gt;1.133073&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.79398&lt;br /&gt;
| [[Image:16x32r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| -17/64&amp;lt;br&amp;gt;-0.265625&lt;br /&gt;
| -27/64&amp;lt;br&amp;gt;-0.421875&lt;br /&gt;
| -13/64&amp;lt;br&amp;gt;-0.203125&lt;br /&gt;
| -2/64&amp;lt;br&amp;gt;-0.03125&lt;br /&gt;
| 57/64&amp;lt;br&amp;gt;0.890625&lt;br /&gt;
| 50/64&amp;lt;br&amp;gt;0.78125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 32/64&amp;lt;br&amp;gt;0.5&lt;br /&gt;
| 32/64&amp;lt;br&amp;gt;0.5&lt;br /&gt;
| 28/64&amp;lt;br&amp;gt;0.4375&lt;br /&gt;
| 12/64&amp;lt;br&amp;gt;0.1875&lt;br /&gt;
| 112/64&amp;lt;br&amp;gt;1.75&lt;br /&gt;
| 84/64&amp;lt;br&amp;gt;1.3125&lt;br /&gt;
| 88/64&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 80/64&amp;lt;br&amp;gt;1.25&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 70/64&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.65884&lt;br /&gt;
| [[Image:16x32rd.png|64px]]&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Unlord</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=File:16x32.png&amp;diff=13521</id>
		<title>File:16x32.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=File:16x32.png&amp;diff=13521"/>
		<updated>2012-07-16T16:09:28Z</updated>

		<summary type="html">&lt;p&gt;Unlord: uploaded a new version of &amp;amp;quot;File:16x32.png&amp;amp;quot;: 16x32 R=f CG=9.87871 SBA=-15.9328 BO=0.0969324 W=19.0401&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;16x32 R=f&lt;/div&gt;</summary>
		<author><name>Unlord</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=TDLT&amp;diff=13520</id>
		<title>TDLT</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=TDLT&amp;diff=13520"/>
		<updated>2012-07-16T16:01:37Z</updated>

		<summary type="html">&lt;p&gt;Unlord: /* 16x32 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page holds the results of Time Domain Lapped Transform (TDLT) optimization problems looking for integer transform coefficients that provide optimal coding gain.  Wherever possible the assumptions are stated.  Later we should include testing against actual image data to verify the results (see test data [http://people.xiph.org/~tterribe/tmp/subset1-y4m.tar.gz here]).&lt;br /&gt;
&lt;br /&gt;
The coding gain objective used as the objective is taken from slide 13 of Tim&#039;s presentation [http://people.xiph.org/~tterribe/pubs/lca2012/auckland/intro_to_video1.pdf An Introduction to Video Coding]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;need figure with block matrix diagrams&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The free parameters are initially just the coefficients p_0,...,p_m,q_0,...,q_m where m=(n/2)-1.  We limit these to being dyadic rationals, e.g., x/2^d with d=6, between [-1,1].&lt;br /&gt;
&lt;br /&gt;
Given p&#039;s and q&#039;s and assuming a linear ramp constrains the s&#039;s.&lt;br /&gt;
 &lt;br /&gt;
== 4x8 ==&lt;br /&gt;
&lt;br /&gt;
Optimal real-valued coefficients for V:&lt;br /&gt;
&lt;br /&gt;
p0 = -0.18117338915051454&lt;br /&gt;
&lt;br /&gt;
q0 = 0.6331818230771687&lt;br /&gt;
&lt;br /&gt;
CG = 8.60603&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!q0&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!CG&lt;br /&gt;
!SBA&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -11/64&amp;lt;br&amp;gt;-0.171875&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 91/64&amp;lt;br&amp;gt;1.421875&lt;br /&gt;
| 85/64&amp;lt;br&amp;gt;1.328125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.63473&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;22.0331&lt;br /&gt;
| [[Image:4x8.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -12/64&amp;lt;br&amp;gt;-0.1875&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 92/64&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 1093/768&amp;lt;br&amp;gt;1.423177&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.60486&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;20.0573&lt;br /&gt;
| [[Image:4x8r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;max CG&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 92/64&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 93/64&amp;lt;br&amp;gt;1.453125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.59886&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;18.9411&lt;br /&gt;
| [[Image:4x8rd.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;max SBA&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 30/64&amp;lt;br&amp;gt;0.46875&lt;br /&gt;
| 136/64&amp;lt;br&amp;gt;2.125&lt;br /&gt;
| 91/64&amp;lt;br&amp;gt;1.421875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.23230&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;25.1934&lt;br /&gt;
| [[Image:4x8rd_sba.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 8x16 ==&lt;br /&gt;
&lt;br /&gt;
Optimal real-valued coefficients for V:&lt;br /&gt;
&lt;br /&gt;
p0 = -0.39460731547057293&lt;br /&gt;
&lt;br /&gt;
p1 = -0.33002212811740816&lt;br /&gt;
&lt;br /&gt;
p2 = -0.12391270981321137&lt;br /&gt;
&lt;br /&gt;
q0 = 0.822154737511288&lt;br /&gt;
&lt;br /&gt;
q1 = 0.632488694485779&lt;br /&gt;
&lt;br /&gt;
q2 = 0.40214668677553894&lt;br /&gt;
&lt;br /&gt;
CG = 9.56867&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -23/64&amp;lt;br&amp;gt;-0.359375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -6/64&amp;lt;br&amp;gt;-0.09375&lt;br /&gt;
| 48/64&amp;lt;br&amp;gt;0.75&lt;br /&gt;
| 34/64&amp;lt;br&amp;gt;0.53125&lt;br /&gt;
| 20/64&amp;lt;br&amp;gt;0.3125&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.60021&lt;br /&gt;
| [[Image:8x16.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -26/64&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -22/64&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 26/64&amp;lt;br&amp;gt;0.40625&lt;br /&gt;
| 11/8&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 879/768&amp;lt;br&amp;gt;1.14453125&lt;br /&gt;
| 1469/1280&amp;lt;br&amp;gt;1.14765625&lt;br /&gt;
| 275/224&amp;lt;br&amp;gt;1.2276785714285714&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56627&lt;br /&gt;
| [[Image:8x16r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -20/64&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -4/64&amp;lt;br&amp;gt;-0.0625&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 24/64&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 88/64&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56161&lt;br /&gt;
| [[Image:8x16rd.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 16x32 ==&lt;br /&gt;
&lt;br /&gt;
Best-known real-valued coefficients for V (R=t):&lt;br /&gt;
&lt;br /&gt;
p0 = -0.42111473798940136&lt;br /&gt;
&lt;br /&gt;
p1 = -0.4121736499899753&lt;br /&gt;
&lt;br /&gt;
p2 = -0.3350240707669929&lt;br /&gt;
&lt;br /&gt;
p3 = -0.3224547931861314&lt;br /&gt;
&lt;br /&gt;
p4 = -0.25883387978005545&lt;br /&gt;
&lt;br /&gt;
p5 = -0.20951913473498104&lt;br /&gt;
&lt;br /&gt;
p6 = -0.0598657149803332&lt;br /&gt;
&lt;br /&gt;
q0 = 0.9107782439906195&lt;br /&gt;
&lt;br /&gt;
q1 = 0.8109855829278226&lt;br /&gt;
&lt;br /&gt;
q2 = 0.715846584586721&lt;br /&gt;
&lt;br /&gt;
q3 = 0.6135951570714172&lt;br /&gt;
&lt;br /&gt;
q4 = 0.49846644853347627&lt;br /&gt;
&lt;br /&gt;
q5 = 0.3945215834922529&lt;br /&gt;
&lt;br /&gt;
q6 = 0.21822275136248082&lt;br /&gt;
&lt;br /&gt;
CG = 9.81157&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!p3&lt;br /&gt;
!p4&lt;br /&gt;
!p5&lt;br /&gt;
!p6&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!q3&lt;br /&gt;
!q4&lt;br /&gt;
!q5&lt;br /&gt;
!q6&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!s4&lt;br /&gt;
!s5&lt;br /&gt;
!s6&lt;br /&gt;
!s7&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -23/64&amp;lt;br&amp;gt;-0.359375&lt;br /&gt;
| -23/64&amp;lt;br&amp;gt;-0.359375&lt;br /&gt;
| -17/64&amp;lt;br&amp;gt;-0.265625&lt;br /&gt;
| -12/64&amp;lt;br&amp;gt;-0.1875&lt;br /&gt;
| -14/64&amp;lt;br&amp;gt;-0.21875&lt;br /&gt;
| -15/64&amp;lt;br&amp;gt; -0.234375&lt;br /&gt;
| -12/64&amp;lt;br&amp;gt;-0.1875&lt;br /&gt;
| 50/64&amp;lt;br&amp;gt;0.78125&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 30/64&amp;lt;br&amp;gt;0.46875&lt;br /&gt;
| 20/64&amp;lt;br&amp;gt;0.3125&lt;br /&gt;
| 16/64&amp;lt;br&amp;gt;0.25&lt;br /&gt;
| 15/64&amp;lt;br&amp;gt;0.234375&lt;br /&gt;
| 11/64&amp;lt;br&amp;gt;0.171875&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 66/64&amp;lt;br&amp;gt;1.03125&lt;br /&gt;
| 68/64&amp;lt;br&amp;gt;1.0625&lt;br /&gt;
| 74/64&amp;lt;br&amp;gt;1.15625&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.87871&lt;br /&gt;
| [[Image:16x32.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -26/64&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -27/64&amp;lt;br&amp;gt;-0.421875&lt;br /&gt;
| -22/64&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| -14/64&amp;lt;br&amp;gt;-0.21875&lt;br /&gt;
| -5/64&amp;lt;br&amp;gt;-0.078125&lt;br /&gt;
| 58/64&amp;lt;br&amp;gt;0.90625&lt;br /&gt;
| 52/64&amp;lt;br&amp;gt;0.8125&lt;br /&gt;
| 45/64&amp;lt;br&amp;gt;0.703125&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 31/64&amp;lt;br&amp;gt;0.484375&lt;br /&gt;
| 23/64&amp;lt;br&amp;gt;0.359375&lt;br /&gt;
| 13/64&amp;lt;br&amp;gt;0.203125&lt;br /&gt;
| 3/2&amp;lt;br&amp;gt;1.5&lt;br /&gt;
| 77/64&amp;lt;br&amp;gt;1.203125&lt;br /&gt;
| 77/64&amp;lt;br&amp;gt;1.203125&lt;br /&gt;
| 1105/896&amp;lt;br&amp;gt;1.23326&lt;br /&gt;
| 218/192&amp;lt;br&amp;gt;1.135417&lt;br /&gt;
| 197/176&amp;lt;br&amp;gt;1.119318&lt;br /&gt;
| 1919/1664&amp;lt;br&amp;gt;1.153245&lt;br /&gt;
| 4351/3840&amp;lt;br&amp;gt;1.133073&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.79398&lt;br /&gt;
| [[Image:16x32r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| -17/64&amp;lt;br&amp;gt;-0.265625&lt;br /&gt;
| -27/64&amp;lt;br&amp;gt;-0.421875&lt;br /&gt;
| -13/64&amp;lt;br&amp;gt;-0.203125&lt;br /&gt;
| -2/64&amp;lt;br&amp;gt;-0.03125&lt;br /&gt;
| 57/64&amp;lt;br&amp;gt;0.890625&lt;br /&gt;
| 50/64&amp;lt;br&amp;gt;0.78125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 32/64&amp;lt;br&amp;gt;0.5&lt;br /&gt;
| 32/64&amp;lt;br&amp;gt;0.5&lt;br /&gt;
| 28/64&amp;lt;br&amp;gt;0.4375&lt;br /&gt;
| 12/64&amp;lt;br&amp;gt;0.1875&lt;br /&gt;
| 112/64&amp;lt;br&amp;gt;1.75&lt;br /&gt;
| 84/64&amp;lt;br&amp;gt;1.3125&lt;br /&gt;
| 88/64&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 80/64&amp;lt;br&amp;gt;1.25&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 70/64&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.65884&lt;br /&gt;
| [[Image:16x32rd.png|64px]]&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Unlord</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=Intra&amp;diff=13503</id>
		<title>Intra</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=Intra&amp;diff=13503"/>
		<updated>2012-06-27T17:35:57Z</updated>

		<summary type="html">&lt;p&gt;Unlord: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;In Daala, intra-frame predictors are coefficients that are used to predict the contents of a block based on its three neighboring blocks.  Consider a 4x4 block structure:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
\left(&lt;br /&gt;
\begin{array}{cccc|cccc}&lt;br /&gt;
x_{1}&amp;amp;x_{2}&amp;amp;x_{3}&amp;amp;x_{4}&amp;amp;x_{5}&amp;amp;x_{6}&amp;amp;x_{7}&amp;amp;x_{8}\\&lt;br /&gt;
x_{9}&amp;amp;x_{10}&amp;amp;x_{11}&amp;amp;x_{12}&amp;amp;x_{13}&amp;amp;x_{14}&amp;amp;x_{15}&amp;amp;x_{16}\\&lt;br /&gt;
x_{17}&amp;amp;x_{18}&amp;amp;x_{19}&amp;amp;x_{20}&amp;amp;x_{21}&amp;amp;x_{22}&amp;amp;x_{23}&amp;amp;x_{24}\\&lt;br /&gt;
x_{25}&amp;amp;x_{26}&amp;amp;x_{27}&amp;amp;x_{28}&amp;amp;x_{29}&amp;amp;x_{30}&amp;amp;x_{31}&amp;amp;x_{32}\\ \hline&lt;br /&gt;
x_{33}&amp;amp;x_{34}&amp;amp;x_{35}&amp;amp;x_{36}&amp;amp;y_{1}&amp;amp;y_{2}&amp;amp;y_{3}&amp;amp;y_{4}\\&lt;br /&gt;
x_{37}&amp;amp;x_{38}&amp;amp;x_{39}&amp;amp;x_{40}&amp;amp;y_{5}&amp;amp;y_{6}&amp;amp;y_{7}&amp;amp;y_{8}\\&lt;br /&gt;
x_{41}&amp;amp;x_{42}&amp;amp;x_{43}&amp;amp;x_{44}&amp;amp;y_{9}&amp;amp;y_{10}&amp;amp;y_{11}&amp;amp;y_{12}\\&lt;br /&gt;
x_{45}&amp;amp;x_{46}&amp;amp;x_{47}&amp;amp;x_{48}&amp;amp;y_{13}&amp;amp;y_{14}&amp;amp;y_{15}&amp;amp;y_{16}\\&lt;br /&gt;
\end{array}&lt;br /&gt;
\right)&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Assuming a linear predictor, we would like to find the 768 coefficients that best predict &amp;lt;math&amp;gt;y_i&amp;lt;/math&amp;gt; from the neighboring &amp;lt;math&amp;gt;x_i&amp;lt;/math&amp;gt;.  That is, for a given block with coefficients &amp;lt;math&amp;gt;\hat x&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;\hat y&amp;lt;/math&amp;gt;, we would like a 48x16 matrix &amp;lt;math&amp;gt;\beta&amp;lt;/math&amp;gt; such that the residual &amp;lt;math&amp;gt;\hat e=\hat y-\hat x \beta&amp;lt;/math&amp;gt; is minimized (for some &amp;lt;math&amp;gt;p&amp;lt;/math&amp;gt;-norm).  Because it is this residual &amp;lt;math&amp;gt;\hat e&amp;lt;/math&amp;gt; that is quantized and coded in the bitstream, we would prefer that most of its coefficients are zero.  This will be discussed further when comparing the different &amp;lt;math&amp;gt;p&amp;lt;/math&amp;gt;-norms.&lt;br /&gt;
&lt;br /&gt;
== Block Modes ==&lt;br /&gt;
&lt;br /&gt;
These predictors often follow certain geometry in the time-domain image space.  Imagine a vertical edge that runs through &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.  A natural predictor might be to simply copy the values &amp;lt;math&amp;gt;\begin{array}{cccc}x_{29}&amp;amp;x_{30}&amp;amp;x_{31}&amp;amp;x_{32}\end{array}&amp;lt;/math&amp;gt; down into each row of the 4x4 block &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.  In order to account for the different possible geometries, each block is assigned a &amp;lt;i&amp;gt;mode&amp;lt;/i&amp;gt; which indicates what set of prediction coefficients to use (the &amp;lt;math&amp;gt;\beta&amp;lt;/math&amp;gt;).  When encoding a block &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;, the encoder chooses a mode, computes &amp;lt;math&amp;gt;\hat e&amp;lt;/math&amp;gt; and writes both the block mode and the residual &amp;lt;math&amp;gt;\hat e&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Because the decoder must know the coefficients for each of the block modes, there is a tradeoff between how well we can predict the values in &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; (number of block modes) with decoder complexity.  Our hypothesis is that the optimal number of block modes will correspond to how closely we can fit different geometries inside the block.  For 4x4 blocks, this might correspond to a mode for each of the 8 cardinal directions (ask Jason to clarify) with larger blocks potentially supporting a larger number of directions.  In addition, we would like to support the DC and True Motion modes from WebM/VP8 as they are often the best fit.  For common video sequences, anywhere from 20% to 45% of the intra frames use the True Motion mode [1].&lt;br /&gt;
&lt;br /&gt;
This is slightly complicated by the fact that our coefficients are not in the time-domain, but are the result of a lapped transform, see [[TDLT]].  In practice all of these modes have an equivalent in the frequency domain.  As a starting point, we are using the 10 modes from Theora to classify the blocks from a set of sample images.  Each category of blocks will be used to construct a set of predictors &amp;lt;math&amp;gt;\beta&amp;lt;/math&amp;gt; which is then used to reclassify the blocks based on Sum of Absolute Transform Differences (SATD).  &amp;lt;i&amp;gt;Tim suggested weighting each blocks contribution based on SATD_bestfit-SATD_nearest&amp;lt;/i&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;math&amp;gt;L^2&amp;lt;/math&amp;gt;-norm ==&lt;br /&gt;
&lt;br /&gt;
Suppose for some mode we have &amp;lt;math&amp;gt;n&amp;lt;/math&amp;gt; blocks.  We can then construct the matrices &amp;lt;math&amp;gt;X&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;Y&amp;lt;/math&amp;gt; where the ith row of each contains the zero-mean values from the ith block.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
X=\begin{pmatrix}&lt;br /&gt;
 x_{1,1}-\bar{x_1} &amp;amp; x_{1,2}-\bar{x_2} &amp;amp; \cdots &amp;amp; x_{1,m}-\bar{x_m}\\&lt;br /&gt;
 x_{2,1}-\bar{x_1} &amp;amp; x_{2,2}-\bar{x_2} &amp;amp; \cdots &amp;amp; x_{2,m}-\bar{x_m}\\&lt;br /&gt;
 \vdots  &amp;amp; \vdots  &amp;amp; \ddots &amp;amp; \vdots \\&lt;br /&gt;
 x_{n,1}-\bar{x_1} &amp;amp; x_{n,2}-\bar{x_2} &amp;amp; \cdots &amp;amp; x_{n,m}-\bar{x_m}&lt;br /&gt;
\end{pmatrix}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
Y=\begin{pmatrix}&lt;br /&gt;
 y_{1,1}-\bar{y_1} &amp;amp; y_{1,2}-\bar{y_2} &amp;amp; \cdots &amp;amp; y_{1,l}-\bar{y_l}\\&lt;br /&gt;
 y_{2,1}-\bar{y_1} &amp;amp; y_{2,2}-\bar{y_2} &amp;amp; \cdots &amp;amp; y_{2,l}-\bar{y_l}\\&lt;br /&gt;
 \vdots  &amp;amp; \vdots  &amp;amp; \ddots &amp;amp; \vdots \\&lt;br /&gt;
 y_{n,1}-\bar{y_1} &amp;amp; y_{n,2}-\bar{y_2}  &amp;amp; \cdots &amp;amp; y_{n,l}-\bar{y_l}&lt;br /&gt;
\end{pmatrix}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In the case of 4x4 blocks, &amp;lt;math&amp;gt;m=48&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;l=16&amp;lt;/math&amp;gt;.   Let &amp;lt;math&amp;gt;C=X^T X&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;D=X^T Y&amp;lt;/math&amp;gt;.  Then &amp;lt;math&amp;gt;\beta=C^{-1} D&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[1] http://blog.webmproject.org/2010/07/inside-webm-technology-vp8-intra-and.html&lt;/div&gt;</summary>
		<author><name>Unlord</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=Intra&amp;diff=13502</id>
		<title>Intra</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=Intra&amp;diff=13502"/>
		<updated>2012-06-27T02:15:13Z</updated>

		<summary type="html">&lt;p&gt;Unlord: /* L^2-norm */ now subtracting the correct mean&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;In general, intra-frame predictors are coefficients that are used to predict the contents of a block based on its three neighboring blocks.  Consider a 4x4 block structure:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
\left(&lt;br /&gt;
\begin{array}{cccc|cccc}&lt;br /&gt;
x_{1}&amp;amp;x_{2}&amp;amp;x_{3}&amp;amp;x_{4}&amp;amp;x_{5}&amp;amp;x_{6}&amp;amp;x_{7}&amp;amp;x_{8}\\&lt;br /&gt;
x_{9}&amp;amp;x_{10}&amp;amp;x_{11}&amp;amp;x_{12}&amp;amp;x_{13}&amp;amp;x_{14}&amp;amp;x_{15}&amp;amp;x_{16}\\&lt;br /&gt;
x_{17}&amp;amp;x_{18}&amp;amp;x_{19}&amp;amp;x_{20}&amp;amp;x_{21}&amp;amp;x_{22}&amp;amp;x_{23}&amp;amp;x_{24}\\&lt;br /&gt;
x_{25}&amp;amp;x_{26}&amp;amp;x_{27}&amp;amp;x_{28}&amp;amp;x_{29}&amp;amp;x_{30}&amp;amp;x_{31}&amp;amp;x_{32}\\ \hline&lt;br /&gt;
x_{33}&amp;amp;x_{34}&amp;amp;x_{35}&amp;amp;x_{36}&amp;amp;y_{1}&amp;amp;y_{2}&amp;amp;y_{3}&amp;amp;y_{4}\\&lt;br /&gt;
x_{37}&amp;amp;x_{38}&amp;amp;x_{39}&amp;amp;x_{40}&amp;amp;y_{5}&amp;amp;y_{6}&amp;amp;y_{7}&amp;amp;y_{8}\\&lt;br /&gt;
x_{41}&amp;amp;x_{42}&amp;amp;x_{43}&amp;amp;x_{44}&amp;amp;y_{9}&amp;amp;y_{10}&amp;amp;y_{11}&amp;amp;y_{12}\\&lt;br /&gt;
x_{45}&amp;amp;x_{46}&amp;amp;x_{47}&amp;amp;x_{48}&amp;amp;y_{13}&amp;amp;y_{14}&amp;amp;y_{15}&amp;amp;y_{16}\\&lt;br /&gt;
\end{array}&lt;br /&gt;
\right)&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Assuming a linear predictor, we would like to find the 768 coefficients that best predict &amp;lt;math&amp;gt;y_i&amp;lt;/math&amp;gt; from the neighboring &amp;lt;math&amp;gt;x_i&amp;lt;/math&amp;gt;.  That is, for a given block with coefficients &amp;lt;math&amp;gt;\hat x&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;\hat y&amp;lt;/math&amp;gt;, we would like a 48x16 matrix &amp;lt;math&amp;gt;\beta&amp;lt;/math&amp;gt; such that the residual &amp;lt;math&amp;gt;\hat e=\hat y-\hat x \beta&amp;lt;/math&amp;gt; is minimized (for some &amp;lt;math&amp;gt;p&amp;lt;/math&amp;gt;-norm).  Because it is this residual &amp;lt;math&amp;gt;\hat e&amp;lt;/math&amp;gt; that is quantized and coded in the bitstream, we would prefer that most of its coefficients are zero.  This will be discussed further when comparing the different &amp;lt;math&amp;gt;p&amp;lt;/math&amp;gt;-norms.&lt;br /&gt;
&lt;br /&gt;
== Block Modes ==&lt;br /&gt;
&lt;br /&gt;
These predictors often follow certain geometry in the time-domain image space.  Imagine a vertical edge that runs through &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.  A natural predictor might be to simply copy the values &amp;lt;math&amp;gt;\begin{array}{cccc}x_{29}&amp;amp;x_{30}&amp;amp;x_{31}&amp;amp;x_{32}\end{array}&amp;lt;/math&amp;gt; down into each row of the 4x4 block &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.  In order to account for the different possible geometries, each block is assigned a &amp;lt;i&amp;gt;mode&amp;lt;/i&amp;gt; which indicates what set of prediction coefficients to use (the &amp;lt;math&amp;gt;\beta&amp;lt;/math&amp;gt;).  When encoding a block &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;, the encoder chooses a mode, computes &amp;lt;math&amp;gt;\hat e&amp;lt;/math&amp;gt; and writes both the block mode and the residual &amp;lt;math&amp;gt;\hat e&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Because the decoder must know the coefficients for each of the block modes, there is a tradeoff between how well we can predict the values in &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; (number of block modes) with decoder complexity.  Our hypothesis is that the optimal number of block modes will correspond to how closely we can fit different geometries inside the block.  For 4x4 blocks, this might correspond to a mode for each of the 8 cardinal directions (ask Jason to clarify) with larger blocks potentially supporting a larger number of directions.  In addition, we would like to support the DC and True Motion modes from Theora/VP3 and WebM/VP8 as they are often the best fit.  For common video sequences, In the case of True Motion, anywhere from 20% to 45% of the intra frames use this mode  are &lt;br /&gt;
&lt;br /&gt;
This is slightly complicated by the fact that our coefficients are not in the time-domain, but are the result of a lapped transform, see [[TDLT]].  In practice all of these modes have an equivalent in the frequency domain (even True Motion?).  As a starting point, we are using the 10 modes from Theora to classify the blocks from a set of sample images.  Each category of blocks will be used to construct a set of predictors &amp;lt;math&amp;gt;\beta&amp;lt;/math&amp;gt; which is then used to reclassify the blocks based on Sum of Absolute Transform Differences (SADT).  &amp;lt;i&amp;gt;Tim suggested weighting each blocks contribution based on SADT_bestfit-SADT_nearest&amp;lt;/i&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;math&amp;gt;L^2&amp;lt;/math&amp;gt;-norm ==&lt;br /&gt;
&lt;br /&gt;
Suppose for some mode we have &amp;lt;math&amp;gt;n&amp;lt;/math&amp;gt; blocks.  We can then construct the matrices &amp;lt;math&amp;gt;X&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;Y&amp;lt;/math&amp;gt; where the ith row of each contains the zero-mean values from the ith block.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
X=\begin{pmatrix}&lt;br /&gt;
 x_{1,1}-\bar{x_1} &amp;amp; x_{1,2}-\bar{x_2} &amp;amp; \cdots &amp;amp; x_{1,m}-\bar{x_m}\\&lt;br /&gt;
 x_{2,1}-\bar{x_1} &amp;amp; x_{2,2}-\bar{x_2} &amp;amp; \cdots &amp;amp; x_{2,m}-\bar{x_m}\\&lt;br /&gt;
 \vdots  &amp;amp; \vdots  &amp;amp; \ddots &amp;amp; \vdots \\&lt;br /&gt;
 x_{n,1}-\bar{x_1} &amp;amp; x_{n,2}-\bar{x_2} &amp;amp; \cdots &amp;amp; x_{n,m}-\bar{x_m}&lt;br /&gt;
\end{pmatrix}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
Y=\begin{pmatrix}&lt;br /&gt;
 y_{1,1}-\bar{y_1} &amp;amp; y_{1,2}-\bar{y_2} &amp;amp; \cdots &amp;amp; y_{1,l}-\bar{y_l}\\&lt;br /&gt;
 y_{2,1}-\bar{y_1} &amp;amp; y_{2,2}-\bar{y_2} &amp;amp; \cdots &amp;amp; y_{2,l}-\bar{y_l}\\&lt;br /&gt;
 \vdots  &amp;amp; \vdots  &amp;amp; \ddots &amp;amp; \vdots \\&lt;br /&gt;
 y_{n,1}-\bar{y_1} &amp;amp; y_{n,2}-\bar{y_2}  &amp;amp; \cdots &amp;amp; y_{n,l}-\bar{y_l}&lt;br /&gt;
\end{pmatrix}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In the case of 4x4 blocks, &amp;lt;math&amp;gt;m=48&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;l=16&amp;lt;/math&amp;gt;.   Let &amp;lt;math&amp;gt;C=X^T X&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;D=X^T Y&amp;lt;/math&amp;gt;.  Then &amp;lt;math&amp;gt;\beta=C^{-1} D&amp;lt;/math&amp;gt;.&lt;/div&gt;</summary>
		<author><name>Unlord</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=Intra&amp;diff=13501</id>
		<title>Intra</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=Intra&amp;diff=13501"/>
		<updated>2012-06-27T01:21:40Z</updated>

		<summary type="html">&lt;p&gt;Unlord: Created page with &amp;quot;In general, intra-frame predictors are coefficients that are used to predict the contents of a block based on its three neighboring blocks.  Consider a 4x4 block structure:  &amp;lt;mat...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;In general, intra-frame predictors are coefficients that are used to predict the contents of a block based on its three neighboring blocks.  Consider a 4x4 block structure:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
\left(&lt;br /&gt;
\begin{array}{cccc|cccc}&lt;br /&gt;
x_{1}&amp;amp;x_{2}&amp;amp;x_{3}&amp;amp;x_{4}&amp;amp;x_{5}&amp;amp;x_{6}&amp;amp;x_{7}&amp;amp;x_{8}\\&lt;br /&gt;
x_{9}&amp;amp;x_{10}&amp;amp;x_{11}&amp;amp;x_{12}&amp;amp;x_{13}&amp;amp;x_{14}&amp;amp;x_{15}&amp;amp;x_{16}\\&lt;br /&gt;
x_{17}&amp;amp;x_{18}&amp;amp;x_{19}&amp;amp;x_{20}&amp;amp;x_{21}&amp;amp;x_{22}&amp;amp;x_{23}&amp;amp;x_{24}\\&lt;br /&gt;
x_{25}&amp;amp;x_{26}&amp;amp;x_{27}&amp;amp;x_{28}&amp;amp;x_{29}&amp;amp;x_{30}&amp;amp;x_{31}&amp;amp;x_{32}\\ \hline&lt;br /&gt;
x_{33}&amp;amp;x_{34}&amp;amp;x_{35}&amp;amp;x_{36}&amp;amp;y_{1}&amp;amp;y_{2}&amp;amp;y_{3}&amp;amp;y_{4}\\&lt;br /&gt;
x_{37}&amp;amp;x_{38}&amp;amp;x_{39}&amp;amp;x_{40}&amp;amp;y_{5}&amp;amp;y_{6}&amp;amp;y_{7}&amp;amp;y_{8}\\&lt;br /&gt;
x_{41}&amp;amp;x_{42}&amp;amp;x_{43}&amp;amp;x_{44}&amp;amp;y_{9}&amp;amp;y_{10}&amp;amp;y_{11}&amp;amp;y_{12}\\&lt;br /&gt;
x_{45}&amp;amp;x_{46}&amp;amp;x_{47}&amp;amp;x_{48}&amp;amp;y_{13}&amp;amp;y_{14}&amp;amp;y_{15}&amp;amp;y_{16}\\&lt;br /&gt;
\end{array}&lt;br /&gt;
\right)&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Assuming a linear predictor, we would like to find the 768 coefficients that best predict &amp;lt;math&amp;gt;y_i&amp;lt;/math&amp;gt; from the neighboring &amp;lt;math&amp;gt;x_i&amp;lt;/math&amp;gt;.  That is, for a given block with coefficients &amp;lt;math&amp;gt;\hat x&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;\hat y&amp;lt;/math&amp;gt;, we would like a 48x16 matrix &amp;lt;math&amp;gt;\beta&amp;lt;/math&amp;gt; such that the residual &amp;lt;math&amp;gt;\hat e=\hat y-\hat x \beta&amp;lt;/math&amp;gt; is minimized (for some &amp;lt;math&amp;gt;p&amp;lt;/math&amp;gt;-norm).  Because it is this residual &amp;lt;math&amp;gt;\hat e&amp;lt;/math&amp;gt; that is quantized and coded in the bitstream, we would prefer that most of its coefficients are zero.  This will be discussed further when comparing the different &amp;lt;math&amp;gt;p&amp;lt;/math&amp;gt;-norms.&lt;br /&gt;
&lt;br /&gt;
== Block Modes ==&lt;br /&gt;
&lt;br /&gt;
These predictors often follow certain geometry in the time-domain image space.  Imagine a vertical edge that runs through &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.  A natural predictor might be to simply copy the values &amp;lt;math&amp;gt;\begin{array}{cccc}x_{29}&amp;amp;x_{30}&amp;amp;x_{31}&amp;amp;x_{32}\end{array}&amp;lt;/math&amp;gt; down into each row of the 4x4 block &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.  In order to account for the different possible geometries, each block is assigned a &amp;lt;i&amp;gt;mode&amp;lt;/i&amp;gt; which indicates what set of prediction coefficients to use (the &amp;lt;math&amp;gt;\beta&amp;lt;/math&amp;gt;).  When encoding a block &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;, the encoder chooses a mode, computes &amp;lt;math&amp;gt;\hat e&amp;lt;/math&amp;gt; and writes both the block mode and the residual &amp;lt;math&amp;gt;\hat e&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Because the decoder must know the coefficients for each of the block modes, there is a tradeoff between how well we can predict the values in &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; (number of block modes) with decoder complexity.  Our hypothesis is that the optimal number of block modes will correspond to how closely we can fit different geometries inside the block.  For 4x4 blocks, this might correspond to a mode for each of the 8 cardinal directions (ask Jason to clarify) with larger blocks potentially supporting a larger number of directions.  In addition, we would like to support the DC and True Motion modes from Theora/VP3 and WebM/VP8 as they are often the best fit.  For common video sequences, In the case of True Motion, anywhere from 20% to 45% of the intra frames use this mode  are &lt;br /&gt;
&lt;br /&gt;
This is slightly complicated by the fact that our coefficients are not in the time-domain, but are the result of a lapped transform, see [[TDLT]].  In practice all of these modes have an equivalent in the frequency domain (even True Motion?).  As a starting point, we are using the 10 modes from Theora to classify the blocks from a set of sample images.  Each category of blocks will be used to construct a set of predictors &amp;lt;math&amp;gt;\beta&amp;lt;/math&amp;gt; which is then used to reclassify the blocks based on Sum of Absolute Transform Differences (SADT).  &amp;lt;i&amp;gt;Tim suggested weighting each blocks contribution based on SADT_bestfit-SADT_nearest&amp;lt;/i&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;math&amp;gt;L^2&amp;lt;/math&amp;gt;-norm ==&lt;br /&gt;
&lt;br /&gt;
Suppose for some mode we have &amp;lt;math&amp;gt;n&amp;lt;/math&amp;gt; blocks.  We can then construct the matrices &amp;lt;math&amp;gt;X&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;Y&amp;lt;/math&amp;gt; where the ith row of each contains the zero-mean values from the ith block.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
X=\begin{pmatrix}&lt;br /&gt;
 x_{1,1}-\bar{x_1} &amp;amp; x_{1,2}-\bar{x_1} &amp;amp; \cdots &amp;amp; x_{1,m}-\bar{x_1}\\&lt;br /&gt;
 x_{2,1}-\bar{x_2} &amp;amp; x_{2,2}-\bar{x_2} &amp;amp; \cdots &amp;amp; x_{2,m}-\bar{x_2}\\&lt;br /&gt;
 \vdots  &amp;amp; \vdots  &amp;amp; \ddots &amp;amp; \vdots \\&lt;br /&gt;
 x_{n,1}-\bar{x_n} &amp;amp; x_{n,2}-\bar{x_n} &amp;amp; \cdots &amp;amp; x_{n,m}-\bar{x_n}&lt;br /&gt;
\end{pmatrix}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
Y=\begin{pmatrix}&lt;br /&gt;
 y_{1,1}-\bar y_1 &amp;amp; y_{1,2}-\bar y_1 &amp;amp; \cdots &amp;amp; y_{1,l}-\bar y_1\\&lt;br /&gt;
 y_{2,1}-\bar y_2 &amp;amp; y_{2,2}-\bar y_2 &amp;amp; \cdots &amp;amp; y_{2,l}-\bar y_2\\&lt;br /&gt;
 \vdots  &amp;amp; \vdots  &amp;amp; \ddots &amp;amp; \vdots \\&lt;br /&gt;
 y_{n,1}-\bar y_n &amp;amp; y_{n,2}-\bar y_n  &amp;amp; \cdots &amp;amp; y_{n,l}-\bar y_n &lt;br /&gt;
\end{pmatrix}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In the case of 4x4 blocks, &amp;lt;math&amp;gt;m=48&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;l=16&amp;lt;/math&amp;gt;.   Let &amp;lt;math&amp;gt;C=X^T X&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;D=X^T Y&amp;lt;/math&amp;gt;.  Then &amp;lt;math&amp;gt;\beta=C^{-1} D&amp;lt;/math&amp;gt;.&lt;/div&gt;</summary>
		<author><name>Unlord</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=File:16x32.png&amp;diff=13487</id>
		<title>File:16x32.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=File:16x32.png&amp;diff=13487"/>
		<updated>2012-06-12T03:19:32Z</updated>

		<summary type="html">&lt;p&gt;Unlord: uploaded a new version of &amp;amp;quot;File:16x32.png&amp;amp;quot;: 16x32 R=f CG=9.85161 SBA=-16.5091 BO=0.12764 W=18.7201&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;16x32 R=f&lt;/div&gt;</summary>
		<author><name>Unlord</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=TDLT&amp;diff=13486</id>
		<title>TDLT</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=TDLT&amp;diff=13486"/>
		<updated>2012-06-12T02:56:27Z</updated>

		<summary type="html">&lt;p&gt;Unlord: /* 16x32 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page holds the results of Time Domain Lapped Transform (TDLT) optimization problems looking for integer transform coefficients that provide optimal coding gain.  Wherever possible the assumptions are stated.  Later we should include testing against actual image data to verify the results (see test data [http://people.xiph.org/~tterribe/tmp/subset1-y4m.tar.gz here]).&lt;br /&gt;
&lt;br /&gt;
The coding gain objective used as the objective is taken from slide 13 of Tim&#039;s presentation [http://people.xiph.org/~tterribe/pubs/lca2012/auckland/intro_to_video1.pdf An Introduction to Video Coding]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;need figure with block matrix diagrams&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The free parameters are initially just the coefficients p_0,...,p_m,q_0,...,q_m where m=(n/2)-1.  We limit these to being dyadic rationals, e.g., x/2^d with d=6, between [-1,1].&lt;br /&gt;
&lt;br /&gt;
Given p&#039;s and q&#039;s and assuming a linear ramp constrains the s&#039;s.&lt;br /&gt;
 &lt;br /&gt;
== 4x8 ==&lt;br /&gt;
&lt;br /&gt;
Optimal real-valued coefficients for V:&lt;br /&gt;
&lt;br /&gt;
p0 = -0.18117338915051454&lt;br /&gt;
&lt;br /&gt;
q0 = 0.6331818230771687&lt;br /&gt;
&lt;br /&gt;
CG = 8.60603&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!q0&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!CG&lt;br /&gt;
!SBA&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -11/64&amp;lt;br&amp;gt;-0.171875&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 91/64&amp;lt;br&amp;gt;1.421875&lt;br /&gt;
| 85/64&amp;lt;br&amp;gt;1.328125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.63473&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;22.0331&lt;br /&gt;
| [[Image:4x8.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -12/64&amp;lt;br&amp;gt;-0.1875&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 92/64&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 1093/768&amp;lt;br&amp;gt;1.423177&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.60486&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;20.0573&lt;br /&gt;
| [[Image:4x8r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;max CG&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 92/64&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 93/64&amp;lt;br&amp;gt;1.453125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.59886&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;18.9411&lt;br /&gt;
| [[Image:4x8rd.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;max SBA&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 30/64&amp;lt;br&amp;gt;0.46875&lt;br /&gt;
| 136/64&amp;lt;br&amp;gt;2.125&lt;br /&gt;
| 91/64&amp;lt;br&amp;gt;1.421875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.23230&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;25.1934&lt;br /&gt;
| [[Image:4x8rd_sba.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 8x16 ==&lt;br /&gt;
&lt;br /&gt;
Optimal real-valued coefficients for V:&lt;br /&gt;
&lt;br /&gt;
p0 = -0.39460731547057293&lt;br /&gt;
&lt;br /&gt;
p1 = -0.33002212811740816&lt;br /&gt;
&lt;br /&gt;
p2 = -0.12391270981321137&lt;br /&gt;
&lt;br /&gt;
q0 = 0.822154737511288&lt;br /&gt;
&lt;br /&gt;
q1 = 0.632488694485779&lt;br /&gt;
&lt;br /&gt;
q2 = 0.40214668677553894&lt;br /&gt;
&lt;br /&gt;
CG = 9.56867&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -23/64&amp;lt;br&amp;gt;-0.359375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -6/64&amp;lt;br&amp;gt;-0.09375&lt;br /&gt;
| 48/64&amp;lt;br&amp;gt;0.75&lt;br /&gt;
| 34/64&amp;lt;br&amp;gt;0.53125&lt;br /&gt;
| 20/64&amp;lt;br&amp;gt;0.3125&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.60021&lt;br /&gt;
| [[Image:8x16.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -26/64&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -22/64&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 26/64&amp;lt;br&amp;gt;0.40625&lt;br /&gt;
| 11/8&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 879/768&amp;lt;br&amp;gt;1.14453125&lt;br /&gt;
| 1469/1280&amp;lt;br&amp;gt;1.14765625&lt;br /&gt;
| 275/224&amp;lt;br&amp;gt;1.2276785714285714&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56627&lt;br /&gt;
| [[Image:8x16r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -20/64&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -4/64&amp;lt;br&amp;gt;-0.0625&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 24/64&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 88/64&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56161&lt;br /&gt;
| [[Image:8x16rd.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 16x32 ==&lt;br /&gt;
&lt;br /&gt;
Best-known real-valued coefficients for V (R=t):&lt;br /&gt;
&lt;br /&gt;
p0 = -0.42111473798940136&lt;br /&gt;
&lt;br /&gt;
p1 = -0.4121736499899753&lt;br /&gt;
&lt;br /&gt;
p2 = -0.3350240707669929&lt;br /&gt;
&lt;br /&gt;
p3 = -0.3224547931861314&lt;br /&gt;
&lt;br /&gt;
p4 = -0.25883387978005545&lt;br /&gt;
&lt;br /&gt;
p5 = -0.20951913473498104&lt;br /&gt;
&lt;br /&gt;
p6 = -0.0598657149803332&lt;br /&gt;
&lt;br /&gt;
q0 = 0.9107782439906195&lt;br /&gt;
&lt;br /&gt;
q1 = 0.8109855829278226&lt;br /&gt;
&lt;br /&gt;
q2 = 0.715846584586721&lt;br /&gt;
&lt;br /&gt;
q3 = 0.6135951570714172&lt;br /&gt;
&lt;br /&gt;
q4 = 0.49846644853347627&lt;br /&gt;
&lt;br /&gt;
q5 = 0.3945215834922529&lt;br /&gt;
&lt;br /&gt;
q6 = 0.21822275136248082&lt;br /&gt;
&lt;br /&gt;
CG = 9.81157&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!p3&lt;br /&gt;
!p4&lt;br /&gt;
!p5&lt;br /&gt;
!p6&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!q3&lt;br /&gt;
!q4&lt;br /&gt;
!q5&lt;br /&gt;
!q6&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!s4&lt;br /&gt;
!s5&lt;br /&gt;
!s6&lt;br /&gt;
!s7&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -25/64&amp;lt;br&amp;gt;-0.390625&lt;br /&gt;
| -39/64&amp;lt;br&amp;gt;-0.609375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -12/64&amp;lt;br&amp;gt;-0.1875&lt;br /&gt;
| -10/64&amp;lt;br&amp;gt;-0.15625&lt;br /&gt;
| -9/64&amp;lt;br&amp;gt;-0.140625&lt;br /&gt;
| -6/64&amp;lt;br&amp;gt;-0.09375&lt;br /&gt;
| 50/64&amp;lt;br&amp;gt;0.78125&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 33/64&amp;lt;br&amp;gt;0.515625&lt;br /&gt;
| 20/64&amp;lt;br&amp;gt;0.3125&lt;br /&gt;
| 12/64&amp;lt;br&amp;gt;0.1875&lt;br /&gt;
| 9/64&amp;lt;br&amp;gt;0.140625&lt;br /&gt;
| 5/64&amp;lt;br&amp;gt;0.078125&lt;br /&gt;
| 93/64&amp;lt;br&amp;gt;1.453125&lt;br /&gt;
| 71/64&amp;lt;br&amp;gt;1.109375&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| 71/64&amp;lt;br&amp;gt;1.109375&lt;br /&gt;
| 70/64&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 71/64&amp;lt;br&amp;gt;1.109375&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.85161&lt;br /&gt;
| [[Image:16x32.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -26/64&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -27/64&amp;lt;br&amp;gt;-0.421875&lt;br /&gt;
| -22/64&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| -14/64&amp;lt;br&amp;gt;-0.21875&lt;br /&gt;
| -5/64&amp;lt;br&amp;gt;-0.078125&lt;br /&gt;
| 58/64&amp;lt;br&amp;gt;0.90625&lt;br /&gt;
| 52/64&amp;lt;br&amp;gt;0.8125&lt;br /&gt;
| 45/64&amp;lt;br&amp;gt;0.703125&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 31/64&amp;lt;br&amp;gt;0.484375&lt;br /&gt;
| 23/64&amp;lt;br&amp;gt;0.359375&lt;br /&gt;
| 13/64&amp;lt;br&amp;gt;0.203125&lt;br /&gt;
| 3/2&amp;lt;br&amp;gt;1.5&lt;br /&gt;
| 77/64&amp;lt;br&amp;gt;1.203125&lt;br /&gt;
| 77/64&amp;lt;br&amp;gt;1.203125&lt;br /&gt;
| 1105/896&amp;lt;br&amp;gt;1.23326&lt;br /&gt;
| 218/192&amp;lt;br&amp;gt;1.135417&lt;br /&gt;
| 197/176&amp;lt;br&amp;gt;1.119318&lt;br /&gt;
| 1919/1664&amp;lt;br&amp;gt;1.153245&lt;br /&gt;
| 4351/3840&amp;lt;br&amp;gt;1.133073&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.79398&lt;br /&gt;
| [[Image:16x32r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| -17/64&amp;lt;br&amp;gt;-0.265625&lt;br /&gt;
| -27/64&amp;lt;br&amp;gt;-0.421875&lt;br /&gt;
| -13/64&amp;lt;br&amp;gt;-0.203125&lt;br /&gt;
| -2/64&amp;lt;br&amp;gt;-0.03125&lt;br /&gt;
| 57/64&amp;lt;br&amp;gt;0.890625&lt;br /&gt;
| 50/64&amp;lt;br&amp;gt;0.78125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 32/64&amp;lt;br&amp;gt;0.5&lt;br /&gt;
| 32/64&amp;lt;br&amp;gt;0.5&lt;br /&gt;
| 28/64&amp;lt;br&amp;gt;0.4375&lt;br /&gt;
| 12/64&amp;lt;br&amp;gt;0.1875&lt;br /&gt;
| 112/64&amp;lt;br&amp;gt;1.75&lt;br /&gt;
| 84/64&amp;lt;br&amp;gt;1.3125&lt;br /&gt;
| 88/64&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 80/64&amp;lt;br&amp;gt;1.25&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 70/64&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.65884&lt;br /&gt;
| [[Image:16x32rd.png|64px]]&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Unlord</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=File:4x8_-8,36.png&amp;diff=13477</id>
		<title>File:4x8 -8,36.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=File:4x8_-8,36.png&amp;diff=13477"/>
		<updated>2012-06-05T07:44:38Z</updated>

		<summary type="html">&lt;p&gt;Unlord: 4x8 p=-8 q=36 CG=8.52182 SBA=23.80569257&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;4x8 p=-8 q=36 CG=8.52182 SBA=23.80569257&lt;/div&gt;</summary>
		<author><name>Unlord</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=TDLT&amp;diff=13476</id>
		<title>TDLT</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=TDLT&amp;diff=13476"/>
		<updated>2012-06-05T02:25:22Z</updated>

		<summary type="html">&lt;p&gt;Unlord: /* 4x8 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page holds the results of Time Domain Lapped Transform (TDLT) optimization problems looking for integer transform coefficients that provide optimal coding gain.  Wherever possible the assumptions are stated.  Later we should include testing against actual image data to verify the results (see test data [http://people.xiph.org/~tterribe/tmp/subset1-y4m.tar.gz here]).&lt;br /&gt;
&lt;br /&gt;
The coding gain objective used as the objective is taken from slide 13 of Tim&#039;s presentation [http://people.xiph.org/~tterribe/pubs/lca2012/auckland/intro_to_video1.pdf An Introduction to Video Coding]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;need figure with block matrix diagrams&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The free parameters are initially just the coefficients p_0,...,p_m,q_0,...,q_m where m=(n/2)-1.  We limit these to being dyadic rationals, e.g., x/2^d with d=6, between [-1,1].&lt;br /&gt;
&lt;br /&gt;
Given p&#039;s and q&#039;s and assuming a linear ramp constrains the s&#039;s.&lt;br /&gt;
 &lt;br /&gt;
== 4x8 ==&lt;br /&gt;
&lt;br /&gt;
Optimal real-valued coefficients for V:&lt;br /&gt;
&lt;br /&gt;
p0 = -0.18117338915051454&lt;br /&gt;
&lt;br /&gt;
q0 = 0.6331818230771687&lt;br /&gt;
&lt;br /&gt;
CG = 8.60603&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!q0&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!CG&lt;br /&gt;
!SBA&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -11/64&amp;lt;br&amp;gt;-0.171875&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 91/64&amp;lt;br&amp;gt;1.421875&lt;br /&gt;
| 85/64&amp;lt;br&amp;gt;1.328125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.63473&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;22.0331&lt;br /&gt;
| [[Image:4x8.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -12/64&amp;lt;br&amp;gt;-0.1875&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 92/64&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 1093/768&amp;lt;br&amp;gt;1.423177&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.60486&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;20.0573&lt;br /&gt;
| [[Image:4x8r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;max CG&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 92/64&amp;lt;br&amp;gt;1.4375&lt;br /&gt;
| 93/64&amp;lt;br&amp;gt;1.453125&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.59886&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;18.9411&lt;br /&gt;
| [[Image:4x8rd.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&amp;lt;br&amp;gt;max SBA&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 30/64&amp;lt;br&amp;gt;0.46875&lt;br /&gt;
| 136/64&amp;lt;br&amp;gt;2.125&lt;br /&gt;
| 91/64&amp;lt;br&amp;gt;1.421875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;8.23230&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;25.1934&lt;br /&gt;
| [[Image:4x8rd_sba.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 8x16 ==&lt;br /&gt;
&lt;br /&gt;
Optimal real-valued coefficients for V:&lt;br /&gt;
&lt;br /&gt;
p0 = -0.39460731547057293&lt;br /&gt;
&lt;br /&gt;
p1 = -0.33002212811740816&lt;br /&gt;
&lt;br /&gt;
p2 = -0.12391270981321137&lt;br /&gt;
&lt;br /&gt;
q0 = 0.822154737511288&lt;br /&gt;
&lt;br /&gt;
q1 = 0.632488694485779&lt;br /&gt;
&lt;br /&gt;
q2 = 0.40214668677553894&lt;br /&gt;
&lt;br /&gt;
CG = 9.56867&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -23/64&amp;lt;br&amp;gt;-0.359375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -6/64&amp;lt;br&amp;gt;-0.09375&lt;br /&gt;
| 48/64&amp;lt;br&amp;gt;0.75&lt;br /&gt;
| 34/64&amp;lt;br&amp;gt;0.53125&lt;br /&gt;
| 20/64&amp;lt;br&amp;gt;0.3125&lt;br /&gt;
| 90/64&amp;lt;br&amp;gt;1.40625&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.60021&lt;br /&gt;
| [[Image:8x16.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -26/64&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -22/64&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 26/64&amp;lt;br&amp;gt;0.40625&lt;br /&gt;
| 11/8&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 879/768&amp;lt;br&amp;gt;1.14453125&lt;br /&gt;
| 1469/1280&amp;lt;br&amp;gt;1.14765625&lt;br /&gt;
| 275/224&amp;lt;br&amp;gt;1.2276785714285714&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56627&lt;br /&gt;
| [[Image:8x16r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&lt;br /&gt;
| -24/64&amp;lt;br&amp;gt;-0.375&lt;br /&gt;
| -20/64&amp;lt;br&amp;gt;-0.3125&lt;br /&gt;
| -4/64&amp;lt;br&amp;gt;-0.0625&lt;br /&gt;
| 53/64&amp;lt;br&amp;gt;0.828125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 24/64&amp;lt;br&amp;gt;0.375&lt;br /&gt;
| 88/64&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| 76/64&amp;lt;br&amp;gt;1.1875&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.56161&lt;br /&gt;
| [[Image:8x16rd.png|64px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 16x32 ==&lt;br /&gt;
&lt;br /&gt;
Best-known real-valued coefficients for V (R=t):&lt;br /&gt;
&lt;br /&gt;
p0 = -0.42111473798940136&lt;br /&gt;
&lt;br /&gt;
p1 = -0.4121736499899753&lt;br /&gt;
&lt;br /&gt;
p2 = -0.3350240707669929&lt;br /&gt;
&lt;br /&gt;
p3 = -0.3224547931861314&lt;br /&gt;
&lt;br /&gt;
p4 = -0.25883387978005545&lt;br /&gt;
&lt;br /&gt;
p5 = -0.20951913473498104&lt;br /&gt;
&lt;br /&gt;
p6 = -0.0598657149803332&lt;br /&gt;
&lt;br /&gt;
q0 = 0.9107782439906195&lt;br /&gt;
&lt;br /&gt;
q1 = 0.8109855829278226&lt;br /&gt;
&lt;br /&gt;
q2 = 0.715846584586721&lt;br /&gt;
&lt;br /&gt;
q3 = 0.6135951570714172&lt;br /&gt;
&lt;br /&gt;
q4 = 0.49846644853347627&lt;br /&gt;
&lt;br /&gt;
q5 = 0.3945215834922529&lt;br /&gt;
&lt;br /&gt;
q6 = 0.21822275136248082&lt;br /&gt;
&lt;br /&gt;
CG = 9.81157&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!&lt;br /&gt;
!p0&lt;br /&gt;
!p1&lt;br /&gt;
!p2&lt;br /&gt;
!p3&lt;br /&gt;
!p4&lt;br /&gt;
!p5&lt;br /&gt;
!p6&lt;br /&gt;
!q0&lt;br /&gt;
!q1&lt;br /&gt;
!q2&lt;br /&gt;
!q3&lt;br /&gt;
!q4&lt;br /&gt;
!q5&lt;br /&gt;
!q6&lt;br /&gt;
!s0&lt;br /&gt;
!s1&lt;br /&gt;
!s2&lt;br /&gt;
!s3&lt;br /&gt;
!s4&lt;br /&gt;
!s5&lt;br /&gt;
!s6&lt;br /&gt;
!s7&lt;br /&gt;
!CG&lt;br /&gt;
!Filterbank&lt;br /&gt;
|-&lt;br /&gt;
|R=f&lt;br /&gt;
| -25/64&amp;lt;br&amp;gt;-0.390625&lt;br /&gt;
| -39/64&amp;lt;br&amp;gt;-0.609375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -13/64&amp;lt;br&amp;gt;-0.203125&lt;br /&gt;
| -11/64&amp;lt;br&amp;gt;-0.171875&lt;br /&gt;
| -9/64&amp;lt;br&amp;gt;-0.140625&lt;br /&gt;
| -9/64&amp;lt;br&amp;gt;-0.140625&lt;br /&gt;
| 51/64&amp;lt;br&amp;gt;0.796875&lt;br /&gt;
| 41/64&amp;lt;br&amp;gt;0.640625&lt;br /&gt;
| 33/64&amp;lt;br&amp;gt;0.515625&lt;br /&gt;
| 21/64&amp;lt;br&amp;gt;0.328125&lt;br /&gt;
| 12/64&amp;lt;br&amp;gt;0.1875&lt;br /&gt;
| 8/64&amp;lt;br&amp;gt;0.125&lt;br /&gt;
| 5/64&amp;lt;br&amp;gt;0.078125&lt;br /&gt;
| 93/64&amp;lt;br&amp;gt;1.453125&lt;br /&gt;
| 71/64&amp;lt;br&amp;gt;1.109375&lt;br /&gt;
| 75/64&amp;lt;br&amp;gt;1.171875&lt;br /&gt;
| 71/64&amp;lt;br&amp;gt;1.109375&lt;br /&gt;
| 70/64&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 67/64&amp;lt;br&amp;gt;1.046875&lt;br /&gt;
| 71/64&amp;lt;br&amp;gt;1.109375&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.84702&lt;br /&gt;
| [[Image:16x32.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=f&lt;br /&gt;
| -26/64&amp;lt;br&amp;gt;-0.40625&lt;br /&gt;
| -27/64&amp;lt;br&amp;gt;-0.421875&lt;br /&gt;
| -22/64&amp;lt;br&amp;gt;-0.34375&lt;br /&gt;
| -18/64&amp;lt;br&amp;gt;-0.28125&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| -14/64&amp;lt;br&amp;gt;-0.21875&lt;br /&gt;
| -5/64&amp;lt;br&amp;gt;-0.078125&lt;br /&gt;
| 58/64&amp;lt;br&amp;gt;0.90625&lt;br /&gt;
| 52/64&amp;lt;br&amp;gt;0.8125&lt;br /&gt;
| 45/64&amp;lt;br&amp;gt;0.703125&lt;br /&gt;
| 36/64&amp;lt;br&amp;gt;0.5625&lt;br /&gt;
| 31/64&amp;lt;br&amp;gt;0.484375&lt;br /&gt;
| 23/64&amp;lt;br&amp;gt;0.359375&lt;br /&gt;
| 13/64&amp;lt;br&amp;gt;0.203125&lt;br /&gt;
| 3/2&amp;lt;br&amp;gt;1.5&lt;br /&gt;
| 77/64&amp;lt;br&amp;gt;1.203125&lt;br /&gt;
| 77/64&amp;lt;br&amp;gt;1.203125&lt;br /&gt;
| 1105/896&amp;lt;br&amp;gt;1.23326&lt;br /&gt;
| 218/192&amp;lt;br&amp;gt;1.135417&lt;br /&gt;
| 197/176&amp;lt;br&amp;gt;1.119318&lt;br /&gt;
| 1919/1664&amp;lt;br&amp;gt;1.153245&lt;br /&gt;
| 4351/3840&amp;lt;br&amp;gt;1.133073&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.79398&lt;br /&gt;
| [[Image:16x32r.png|64px]]&lt;br /&gt;
|-&lt;br /&gt;
|R=t,D=t&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| -16/64&amp;lt;br&amp;gt;-0.25&lt;br /&gt;
| -8/64&amp;lt;br&amp;gt;-0.125&lt;br /&gt;
| -17/64&amp;lt;br&amp;gt;-0.265625&lt;br /&gt;
| -27/64&amp;lt;br&amp;gt;-0.421875&lt;br /&gt;
| -13/64&amp;lt;br&amp;gt;-0.203125&lt;br /&gt;
| -2/64&amp;lt;br&amp;gt;-0.03125&lt;br /&gt;
| 57/64&amp;lt;br&amp;gt;0.890625&lt;br /&gt;
| 50/64&amp;lt;br&amp;gt;0.78125&lt;br /&gt;
| 40/64&amp;lt;br&amp;gt;0.625&lt;br /&gt;
| 32/64&amp;lt;br&amp;gt;0.5&lt;br /&gt;
| 32/64&amp;lt;br&amp;gt;0.5&lt;br /&gt;
| 28/64&amp;lt;br&amp;gt;0.4375&lt;br /&gt;
| 12/64&amp;lt;br&amp;gt;0.1875&lt;br /&gt;
| 112/64&amp;lt;br&amp;gt;1.75&lt;br /&gt;
| 84/64&amp;lt;br&amp;gt;1.3125&lt;br /&gt;
| 88/64&amp;lt;br&amp;gt;1.375&lt;br /&gt;
| 80/64&amp;lt;br&amp;gt;1.25&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 72/64&amp;lt;br&amp;gt;1.125&lt;br /&gt;
| 73/64&amp;lt;br&amp;gt;1.140625&lt;br /&gt;
| 70/64&amp;lt;br&amp;gt;1.09375&lt;br /&gt;
| &amp;amp;nbsp;&amp;lt;br&amp;gt;9.65884&lt;br /&gt;
| [[Image:16x32rd.png|64px]]&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Unlord</name></author>
	</entry>
</feed>