<?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=Mdinger</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=Mdinger"/>
	<link rel="alternate" type="text/html" href="https://wiki.xiph.org/Special:Contributions/Mdinger"/>
	<updated>2026-05-15T09:43:07Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.45.1</generator>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=DaalaRoadmap&amp;diff=16040</id>
		<title>DaalaRoadmap</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=DaalaRoadmap&amp;diff=16040"/>
		<updated>2015-09-23T20:33:42Z</updated>

		<summary type="html">&lt;p&gt;Mdinger: /* Daala Planning */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Daala Planning ==&lt;br /&gt;
&lt;br /&gt;
This is an overview of the Daala project roadmap.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Information on this page is highly subject to update and change.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Please help reach out to us if you are interested in contributing to the project.  We would love your help!&lt;br /&gt;
&lt;br /&gt;
=== Plans for 2014 ===&lt;br /&gt;
&lt;br /&gt;
See [https://daala.etherpad.mozilla.org/daala-plan-2014 this etherpad] for details. Most information has moved there. See also the [[Daala Weekly Meetings|weekly meeting minutes]] on [[Daala]] for current efforts.&lt;br /&gt;
&lt;br /&gt;
=== Plans for September, 2013 to March, 2014 ===&lt;br /&gt;
&lt;br /&gt;
==== Improve existing techniques ==== &lt;br /&gt;
&lt;br /&gt;
Examining and significantly modifying some of the basic coding tools within Daala to improve efficiency and quality:&lt;br /&gt;
&lt;br /&gt;
1) Lapped Transforms&lt;br /&gt;
* [https://people.xiph.org/~xiphmont/demo/daala/demo1.shtml Monty&#039;s LT demo]&lt;br /&gt;
* [[TDLT|Time-Domain Lapped Transforms]] wiki page&lt;br /&gt;
* https://thanglong.ece.jhu.edu/Tran/Pub/prepost.pdf&lt;br /&gt;
* https://research.microsoft.com/pubs/102075/malvar_elt_tsp1192.pdf&lt;br /&gt;
&lt;br /&gt;
2) Frequency Domain Intra-prediction &lt;br /&gt;
* [https://people.xiph.org/~xiphmont/demo/daala/demo2.shtml Monty&#039;s Intra-prediction demo]&lt;br /&gt;
* [[Intra|Intra-prediction]] wiki page&lt;br /&gt;
&lt;br /&gt;
3) Time/Frequency resolution switching &lt;br /&gt;
* [https://people.xiph.org/~xiphmont/demo/daala/demo3.shtml Monty&#039;s TF switching demo]&lt;br /&gt;
&lt;br /&gt;
4) Chroma from Luma (CfL)&lt;br /&gt;
* [https://people.xiph.org/~xiphmont/demo/daala/demo4.shtml Monty&#039;s CfL demo]&lt;br /&gt;
&lt;br /&gt;
5) Motion Compensation tools&lt;br /&gt;
&lt;br /&gt;
==== Research new techniques ====&lt;br /&gt;
&lt;br /&gt;
Investigate the following to see if they should be adopted into Daala:&lt;br /&gt;
&lt;br /&gt;
1) Edge-directed Interpolation &lt;br /&gt;
* https://elynxsdk.free.fr/ext-docs/Demosaicing/more/news0/New%20Edge-Directed%20Interpolation.pdf&lt;br /&gt;
* [https://exp.martres.me/edi/ smarter&#039;s EDI demo in Javascript]&lt;br /&gt;
&lt;br /&gt;
2) Multi-frame Motion Compensation&lt;br /&gt;
&lt;br /&gt;
==== Testing tools ====&lt;br /&gt;
&lt;br /&gt;
1) Experiment with command-line encode/decode/performance tools&lt;br /&gt;
* Help people try the codec&lt;br /&gt;
* Self-testing&lt;br /&gt;
* Improvement metrics for casual contributors to verify changes&lt;br /&gt;
&lt;br /&gt;
2) Prototype RTP in GIPS/webrtc.org/browser code&lt;br /&gt;
&lt;br /&gt;
3) Prototype HTTP streaming.&lt;br /&gt;
&lt;br /&gt;
=== Plans for March, 2014 to September, 2014 ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
From March, 2014 to June, 2014: Tuning the various coding tools and components of Daala (assumes investigation and major modifications of the basic coding tools are completed)&lt;br /&gt;
&lt;br /&gt;
By September, 2014: Be able to show significant quality improvements compared to Daala&#039;s performance today (September, 2013).&lt;br /&gt;
&lt;br /&gt;
=== Plans for 2015 ===&lt;br /&gt;
&lt;br /&gt;
[https://people.xiph.org/~tterribe/daala/daala-schedule-20150313/Daala%20Schedule.pdf Schedule by task]&lt;br /&gt;
&lt;br /&gt;
[https://people.xiph.org/~tterribe/daala/daala-schedule-20150313/Daala%20Schedule2.pdf Schedule by person]&lt;br /&gt;
&lt;br /&gt;
=== Progress and Planning Tools ===&lt;br /&gt;
* Every week a [[Daala_Weekly_Meetings|Mumble meeting]] will occur to discuss current development.&lt;br /&gt;
* Every month the team will create a detailed task list of what they plan to do for that month.&lt;br /&gt;
* Every 6-8 weeks the team will report on what they have accomplished.&lt;br /&gt;
&lt;br /&gt;
=== Estimates of Technique Effectiveness ===&lt;br /&gt;
&lt;br /&gt;
These estimates are mostly guessing, based on no actual data. Take them with an entire salt shaker full of salt.&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Technique&lt;br /&gt;
! % of bitrate est.&lt;br /&gt;
! risk&lt;br /&gt;
|-&lt;br /&gt;
| intraprediction&lt;br /&gt;
| 10% &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| rate control&lt;br /&gt;
| 10%&lt;br /&gt;
| low&lt;br /&gt;
|-&lt;br /&gt;
| multiple reference frames&lt;br /&gt;
| 10%&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| alternate motion predictors&lt;br /&gt;
| 5%&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| multi-resolution blending&lt;br /&gt;
| 2%&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| edge-directed interpolation&lt;br /&gt;
| 4-5%&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| sub-pel search&lt;br /&gt;
| 2%&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| mixed prediction (intra+inter)&lt;br /&gt;
| 12%&lt;br /&gt;
| high&lt;br /&gt;
|-&lt;br /&gt;
| generic encoder replacement/optimization&lt;br /&gt;
| 1%&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| skip work&lt;br /&gt;
| 5%&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| deringing&lt;br /&gt;
| 10%&lt;br /&gt;
| medium&lt;br /&gt;
|-&lt;br /&gt;
| bi-prediction&lt;br /&gt;
| 15%&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| k-tokenizer&lt;br /&gt;
| +/- 1%&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| 32x32 motion&lt;br /&gt;
| 10%&lt;br /&gt;
| low&lt;br /&gt;
|-&lt;br /&gt;
| don&#039;t code outside frame&lt;br /&gt;
| 1-2%&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| adaptive motion compensation work&lt;br /&gt;
adjacent blocks differing by more than 1 level&lt;br /&gt;
| 10%&lt;br /&gt;
| high&lt;br /&gt;
|-&lt;br /&gt;
| don&#039;t use SAD (Sum of Absolute Differences)&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== September 2015 ===&lt;br /&gt;
* [https://www.videolan.org/videolan/events/vdd15/ Videolan Dev Days] took place. There are videos on [https://www.youtube.com/playlist?list=PLQLpBN3oI7E44HIdTOovThc1MNHLchgHE youtube].&lt;br /&gt;
* [https://arewecompressedyet.com/ arewecompressedyet.com] got a new images tab for comparing images between different Daala builds&lt;br /&gt;
&lt;br /&gt;
[[Category:Daala]]&lt;/div&gt;</summary>
		<author><name>Mdinger</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=Daala_Quickstart&amp;diff=16002</id>
		<title>Daala Quickstart</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=Daala_Quickstart&amp;diff=16002"/>
		<updated>2015-08-22T18:43:30Z</updated>

		<summary type="html">&lt;p&gt;Mdinger: /* Obtaining dependencies for Ubuntu*/&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a guide to getting a copy of the latest code and encoding a video.&lt;br /&gt;
&lt;br /&gt;
There is also a &#039;&#039;&#039;[[Daala Quickstart Windows]]&#039;&#039;&#039; page.&lt;br /&gt;
&lt;br /&gt;
== Installation ==&lt;br /&gt;
&lt;br /&gt;
=== Obtaining dependencies ===&lt;br /&gt;
==== Linux ====&lt;br /&gt;
You&#039;ll need:&lt;br /&gt;
&lt;br /&gt;
* Standard build tools (autoconf, automake v1.11 or later, libtool, pkg-config, and a C compiler)&lt;br /&gt;
* git&lt;br /&gt;
* libogg (v1.3 or later)&lt;br /&gt;
* libpng&lt;br /&gt;
* libjpeg&lt;br /&gt;
* libcheck (v0.9.8 or later, can be skipped if you pass --disable-unit-tests to ./configure)&lt;br /&gt;
* libsdl2 (can by skipped if you pass --disable-player to ./configure)&lt;br /&gt;
* libwxgtk2.8 (optional: only needed if --enable-analyzer is passed to ./configure)&lt;br /&gt;
&lt;br /&gt;
Do not use linuxbrew.&lt;br /&gt;
&lt;br /&gt;
Instructions for installing these packages are OS-specific (feel free to contribute some here, especially if you tried installing these somewhere and ran into difficulties; you will likely save other people some pain). If you have a package manager that has separate -dev versions with the public headers, make sure you install those in addition to the actual libraries.&lt;br /&gt;
&lt;br /&gt;
===== Ubuntu =====&lt;br /&gt;
&lt;br /&gt;
Run the following command to install dependencies:&lt;br /&gt;
  sudo apt-get install autoconf libsdl2-gfx-dev libogg-dev libjpeg-dev check&lt;br /&gt;
&lt;br /&gt;
==== Mac OS X ====&lt;br /&gt;
Install Apple&#039;s command line developer tools. E.g. install [https://developer.apple.com/xcode/ Xcode] from the App Store and select &#039;Command Line Tools&#039; from the Preferences::Downloads panel, or download and install the pkg directly from [https://developer.apple.com/downloads/ developer.apple.com].&lt;br /&gt;
&lt;br /&gt;
Install [http://brew.sh/ Homebrew]&lt;br /&gt;
&lt;br /&gt;
Run the following command to install dependencies:&lt;br /&gt;
  brew install autoconf automake libtool libogg libpng libjpeg check sdl2&lt;br /&gt;
&lt;br /&gt;
=== Installation Procedure ===&lt;br /&gt;
&lt;br /&gt;
Just run these commands:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
git clone https://git.xiph.org/daala.git&lt;br /&gt;
cd daala&lt;br /&gt;
./autogen.sh&lt;br /&gt;
./configure&lt;br /&gt;
make&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that the git clone can take several minutes to complete.&lt;br /&gt;
&lt;br /&gt;
And optionally&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
make tools&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Make sure you run the git clone operation on the same machine where you intend to use the code. Checking out a copy on Windows and then trying to use it on Linux will not work, as executable permissions and line-endings will not be set properly.&lt;br /&gt;
&lt;br /&gt;
{{Encoding with Daala}}&lt;br /&gt;
&lt;br /&gt;
{{Decoding with Daala}}&lt;br /&gt;
&lt;br /&gt;
== The Stream Analyzer ==&lt;br /&gt;
There is a bitstream analyzer, with a GUI based on wxWidgets available.&lt;br /&gt;
&lt;br /&gt;
To run it:&lt;br /&gt;
&lt;br /&gt;
    ./examples/analyzer video.ogv&lt;br /&gt;
&lt;br /&gt;
where video.ogv is the file you want to open. If you omit it, you can open it via the analyzer&#039;s GUI.&lt;br /&gt;
&lt;br /&gt;
The analyser may only work correctly with videos encoded using the same Daala version as itself, as the bitstream is still being changed regularly by the ongoing code development.&lt;br /&gt;
&lt;br /&gt;
== Using PNG Images ==&lt;br /&gt;
&lt;br /&gt;
To encode a series of images:&lt;br /&gt;
&lt;br /&gt;
    make tools&lt;br /&gt;
    ./tools/png2y4m video%05d.png -o video.y4m&lt;br /&gt;
&lt;br /&gt;
where %05d means your input images are named video00000.png, video00001.png, etc. You can leave out the %05d tag if you only want to convert a single image (which does not need to be numbered).&lt;br /&gt;
&lt;br /&gt;
To convert a y4m back to PNGs:&lt;br /&gt;
&lt;br /&gt;
    ./tools/y4m2png video.y4m -o video%05d.png&lt;br /&gt;
&lt;br /&gt;
If you are converting a .y4m file that only contains a single frame (e.g., from one of the still-image subsets linked above), you can leave out the %05d tag. Conversion from PNG to Y4M uses the Rec 709 matrix with video levels, a box filter for chroma subsampling, and a triangular dither. Conversion back from Y4M to PNG uses the same matrix, levels, and box filter, but does not dither.&lt;br /&gt;
&lt;br /&gt;
{{Converting to y4m}}&lt;br /&gt;
&lt;br /&gt;
{{Merging two y4m videos side-by-side}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Daala]]&lt;/div&gt;</summary>
		<author><name>Mdinger</name></author>
	</entry>
</feed>