<?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=Tdaede</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=Tdaede"/>
	<link rel="alternate" type="text/html" href="https://wiki.xiph.org/Special:Contributions/Tdaede"/>
	<updated>2026-04-20T07:27:55Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.45.1</generator>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=XiphInfra:List_of_services&amp;diff=16819</id>
		<title>XiphInfra:List of services</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=XiphInfra:List_of_services&amp;diff=16819"/>
		<updated>2025-01-31T18:47:43Z</updated>

		<summary type="html">&lt;p&gt;Tdaede: update based on current status&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
! Service&lt;br /&gt;
! URL&lt;br /&gt;
! VM&lt;br /&gt;
! Host&lt;br /&gt;
! Maintainer(s)&lt;br /&gt;
|-&lt;br /&gt;
| [[AreWeCompressedYet]]&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://arewecompressedyet.com&lt;br /&gt;
| awcy&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| catfish&lt;br /&gt;
| TD-Linux&lt;br /&gt;
|-&lt;br /&gt;
| Git Repos&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://git.xiph.org&lt;br /&gt;
| &lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| mf4&lt;br /&gt;
| ePirat, rillian&lt;br /&gt;
|-&lt;br /&gt;
| Home Pages&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://people.xiph.org&lt;br /&gt;
| &lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| mf4&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Icecast]] Streams&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| http://dir.xiph.org&lt;br /&gt;
| &lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| catfish&lt;br /&gt;
| tbr&lt;br /&gt;
|-&lt;br /&gt;
| [[Icecast]] Streams (Beta)&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| http://dir-test.xiph.org&lt;br /&gt;
| &lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| catfish&lt;br /&gt;
| ePirat, tbr&lt;br /&gt;
|-&lt;br /&gt;
| Jenkins&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://mf4.xiph.org/jenkins/&lt;br /&gt;
| jenkins&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| mf4&lt;br /&gt;
| TD-Linux&lt;br /&gt;
|-&lt;br /&gt;
| Mail&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| xiph.org&lt;br /&gt;
| mailfish&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| catfish&lt;br /&gt;
| ePirat, tbr&lt;br /&gt;
|-&lt;br /&gt;
| MailMan&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| http://lists.xiph.org&lt;br /&gt;
| mailfish&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| catfish&lt;br /&gt;
| ePirat, tbr&lt;br /&gt;
|-&lt;br /&gt;
| Media&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://media.xiph.org&lt;br /&gt;
| &lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| beaufish&lt;br /&gt;
| TD-Linux, rillian&lt;br /&gt;
|-&lt;br /&gt;
| Opus Boodler Streams&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://opus-codec.org&lt;br /&gt;
| &lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| mf4&lt;br /&gt;
| gmaxwell&lt;br /&gt;
|-&lt;br /&gt;
| Subversion Repos&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://svn.xiph.org&lt;br /&gt;
| &lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| mf4&lt;br /&gt;
| rillian&lt;br /&gt;
|-&lt;br /&gt;
| [[XiphWiki:Features|Wiki]]&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://wiki.xiph.org&lt;br /&gt;
| [[XiphInfra:Wiki VM|wiki]]&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| catfish&lt;br /&gt;
| ePirat&lt;br /&gt;
|-&lt;br /&gt;
| Xiph Mirror Repos&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://github.com/xiph&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| ePirat, rillian&lt;br /&gt;
|-&lt;br /&gt;
| XiphBot-ng&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| XiphWiki on freenode.net&lt;br /&gt;
| &lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| mf4&lt;br /&gt;
| TD-Linux&lt;br /&gt;
|-&lt;br /&gt;
| [[XiphInfra:Gitlab|Gitlab]]&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://gitlab.xiph.org&lt;br /&gt;
| [[XiphInfra:GitLab VM|gitlab]]&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| catfish&lt;br /&gt;
| ePirat, tbr, TD-Linux, rillian&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==External services==&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
! Service&lt;br /&gt;
! URL&lt;br /&gt;
! Users with admin rights&lt;br /&gt;
|-&lt;br /&gt;
| Github&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://github.com&lt;br /&gt;
| TD-Linux, unlord, ePirat&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;noinclude&amp;gt;See the [[XiphInfra:Overview|Overview]] page for more information.&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tdaede</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=Summer_of_Code_2021&amp;diff=16775</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=16775"/>
		<updated>2021-05-26T07:17:52Z</updated>

		<summary type="html">&lt;p&gt;Tdaede: &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. Please join #xiph in Libera.Chat IRC for more. If you don&#039;t have IRC set up you can easily connect from your [https://kiwiirc.com/ web browser].&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;
&lt;br /&gt;
Difficulty: Medium to difficult depending on the novel ideas implemented and complexity of the final implementation.&lt;br /&gt;
&lt;br /&gt;
==== Possible Mentors ====&lt;br /&gt;
&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 to high depending on which targets the student chooses to follow.&lt;br /&gt;
&lt;br /&gt;
==== Possible Mentors ====&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== Make rav1e-by-gop expose a rav1e API ===&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;
&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: Medium.&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;
=== Improve fast scene detection modes for rav1e ===&lt;br /&gt;
&lt;br /&gt;
Scene detection method determine where it&#039;s necessary to split video sequences for optimal encoding efficiency.&lt;br /&gt;
&lt;br /&gt;
==== Problem / Intro ====&lt;br /&gt;
Currently implemented fast scene detection method is not optimal and sometimes give false results. This is also detrimental to per scene visual metric quality targeting.&lt;br /&gt;
&lt;br /&gt;
==== Solution / Task ====&lt;br /&gt;
Reevaluate current fast scene detection method. Fast method correctness can be improved.&lt;br /&gt;
Possible features:&lt;br /&gt;
* Adaptive resolution scaling for fast scene detection.&lt;br /&gt;
* Implementing additional methods/metrics for fast scene detection.&lt;br /&gt;
* Adaptive threshold for scene detection&lt;br /&gt;
* Better external scene detection for rav1e-by-gop per scene visual metric quality targeting.&lt;br /&gt;
&lt;br /&gt;
==== Requirements ====&lt;br /&gt;
&lt;br /&gt;
The student should be familiar with Rust.&lt;br /&gt;
Video knowledge is preferable.&lt;br /&gt;
&lt;br /&gt;
Complexity: Medium.&lt;br /&gt;
&lt;br /&gt;
==== Possible Mentors ====&lt;br /&gt;
&lt;br /&gt;
----&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;
[[User:phschafft|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&lt;br /&gt;
* Icecast instances of the same cluster.&lt;br /&gt;
&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;
[[User:phschafft|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;
[[User:phschafft|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;
&lt;br /&gt;
==== Possible Mentors ====&lt;br /&gt;
[[User:phschafft|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;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== Deploy Opus-in-MP4 in WebAssembly for Safari ===&lt;br /&gt;
&lt;br /&gt;
Implement the missing Opus support for Safari.&lt;br /&gt;
&lt;br /&gt;
==== Problem / Intro ====&lt;br /&gt;
&lt;br /&gt;
Safari supports decoding Opus streams, but only when packed in CAF with no support for Media Source Extension. It would be nice to deploy a middleware in WASM that remuxes non-fragmented MP4 to CAF to support progressive streams, and to determine if enough hooks exist for fragmented MP4s as well. Needless to say, audio and video need to remain in sync throughout the whole process.&lt;br /&gt;
&lt;br /&gt;
==== Solution / Task ====&lt;br /&gt;
&lt;br /&gt;
* Make sure the underlying Opus decoder works in Safari.&lt;br /&gt;
* Implement a minimal mp4-to-caf demuxer/muxer in your language of choice.&lt;br /&gt;
* Compile this remuxer to Javascript/WebAssembly/WASM.&lt;br /&gt;
* Develop a proof of concept streaming for a non-fragmented mp4 file.&lt;br /&gt;
* Package the system to a reusable library.&lt;br /&gt;
* Investigate if it&#039;s possible to port this functionality to fragmented mp4 as well.&lt;br /&gt;
&lt;br /&gt;
==== Requirements ====&lt;br /&gt;
&lt;br /&gt;
The student should be familiar with streaming protocols, encapsulation, WebAssembly. Expect lots of hacking in Javascript.&lt;br /&gt;
&lt;br /&gt;
==== Possible Mentors ====&lt;br /&gt;
&lt;br /&gt;
[[User:Koda]]&lt;br /&gt;
&lt;br /&gt;
----&lt;/div&gt;</summary>
		<author><name>Tdaede</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=Daala&amp;diff=16774</id>
		<title>Daala</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=Daala&amp;diff=16774"/>
		<updated>2021-05-26T04:24:22Z</updated>

		<summary type="html">&lt;p&gt;Tdaede: /* Communication */&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.libera.chat/daala &#039;&#039;&#039;#daala&#039;&#039;&#039; IRC channel at libera.chat].&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;
* [https://jmvalin.ca/video/haar_example/ Still Image Screenshots] - comparison between Daala&#039;s Lapped Transform and Haar methods, and JPEG/x264/x265.&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;
* [https://jmvalin.ca/video/mmsp2016_poster.pdf Daala Technologies Poster]&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-11-15 - IETF 100 - [https://www.youtube.com/watch?v=_wRLR8ypCg0&amp;amp;t=4682s Video] - [https://docs.google.com/presentation/d/12BsMrcGo27bgf7OMpOmlIZUEBblMmBXESCeG3_FZ5cI/edit#slide=id.p Slides]&lt;br /&gt;
* 2017-05-25 - IETF 98 - [https://datatracker.ietf.org/meeting/98/materials/slides-98-hackathon-netvc/ NetVC Hackathon Slides], [https://jmvalin.ca/video/cdef_slides.pdf CDEF Slides]&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>Tdaede</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=XiphInfra:List_of_services&amp;diff=16757</id>
		<title>XiphInfra:List of services</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=XiphInfra:List_of_services&amp;diff=16757"/>
		<updated>2021-03-10T17:59:06Z</updated>

		<summary type="html">&lt;p&gt;Tdaede: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
! Service&lt;br /&gt;
! URL&lt;br /&gt;
! VM&lt;br /&gt;
! Host&lt;br /&gt;
! Maintainer(s)&lt;br /&gt;
|-&lt;br /&gt;
| [[AreWeCompressedYet]]&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://arewecompressedyet.com&lt;br /&gt;
| awcy&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| catfish&lt;br /&gt;
| TD-Linux&lt;br /&gt;
|-&lt;br /&gt;
| Git Repos&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://git.xiph.org&lt;br /&gt;
| &lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| mf4&lt;br /&gt;
| ePirat, rillian&lt;br /&gt;
|-&lt;br /&gt;
| Home Pages&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://people.xiph.org&lt;br /&gt;
| &lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| mf4&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Icecast]] Streams&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| http://dir.xiph.org&lt;br /&gt;
| &lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| mf4&lt;br /&gt;
| tbr&lt;br /&gt;
|-&lt;br /&gt;
| [[Icecast]] Streams (Beta)&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| http://dir-test.xiph.org&lt;br /&gt;
| &lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| catfish&lt;br /&gt;
| ePirat, tbr&lt;br /&gt;
|-&lt;br /&gt;
| Jenkins&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://mf4.xiph.org/jenkins/&lt;br /&gt;
| jenkins&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| mf4&lt;br /&gt;
| TD-Linux&lt;br /&gt;
|-&lt;br /&gt;
| Mail&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| xiph.org&lt;br /&gt;
| mailfish&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| catfish&lt;br /&gt;
| ePirat, tbr&lt;br /&gt;
|-&lt;br /&gt;
| MailMan&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| http://lists.xiph.org&lt;br /&gt;
| mailfish&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| catfish&lt;br /&gt;
| ePirat, tbr&lt;br /&gt;
|-&lt;br /&gt;
| Media&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://media.xiph.org&lt;br /&gt;
| &lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| beaufish&lt;br /&gt;
| TD-Linux, rillian&lt;br /&gt;
|-&lt;br /&gt;
| Opus Boodler Streams&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://opus-codec.org&lt;br /&gt;
| &lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| mf4&lt;br /&gt;
| gmaxwell&lt;br /&gt;
|-&lt;br /&gt;
| Rietveld&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://review.xiph.org&lt;br /&gt;
| jenkins&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| mf4&lt;br /&gt;
| TD-Linux&lt;br /&gt;
|-&lt;br /&gt;
| Social&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://social.xiph.org&lt;br /&gt;
| social&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| catfish&lt;br /&gt;
| tbr&lt;br /&gt;
|-&lt;br /&gt;
| Subversion Repos&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://svn.xiph.org&lt;br /&gt;
| &lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| mf4&lt;br /&gt;
| rillian&lt;br /&gt;
|-&lt;br /&gt;
| Trac Bug Tracker&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://trac.xiph.org&lt;br /&gt;
| &lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| mf4&lt;br /&gt;
| tbr&lt;br /&gt;
|-&lt;br /&gt;
| [[XiphWiki:Features|Wiki]]&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://wiki.xiph.org&lt;br /&gt;
| [[XiphInfra:Wiki VM|wiki]]&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| catfish&lt;br /&gt;
| ePirat&lt;br /&gt;
|-&lt;br /&gt;
| Xiph Mirror Repos&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://github.com/xiph&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| ePirat, rillian&lt;br /&gt;
|-&lt;br /&gt;
| XiphBot-ng&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| XiphWiki on freenode.net&lt;br /&gt;
| &lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| mf4&lt;br /&gt;
| TD-Linux&lt;br /&gt;
|-&lt;br /&gt;
| [[XiphInfra:Gitlab|Gitlab]]&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://gitlab.xiph.org&lt;br /&gt;
| gitlab&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| catfish&lt;br /&gt;
| ePirat, tbr, TD-Linux, rillian&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==External services==&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
! Service&lt;br /&gt;
! URL&lt;br /&gt;
! Users with admin rights&lt;br /&gt;
|-&lt;br /&gt;
| Github&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://github.com&lt;br /&gt;
| TD-Linux, unlord&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;noinclude&amp;gt;See the [[XiphInfra:Overview|Overview]] page for more information.&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tdaede</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=Summer_of_Code_2021&amp;diff=16726</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=16726"/>
		<updated>2021-02-19T17:58:39Z</updated>

		<summary type="html">&lt;p&gt;Tdaede: Created page with &amp;quot;== Introduction ==  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 t...&amp;quot;&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;
In our previous participation we focused a lot on our multimedia codec projects. This turned out to be very challenging for students. So this year we&#039;re not offering project ideas from those. If you&#039;re a student interested in codec work, have previous experience in it and are confident, that you can convince us, you&#039;re welcome to get in touch.&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;
=== rav1e-by-gop integration ===&lt;br /&gt;
&lt;br /&gt;
rav1e-by-gop is an implementation of simple GOP (think short segment of frames) parallelism, as a wrapper around rav1e.&lt;br /&gt;
&lt;br /&gt;
==== Problem / Intro ====&lt;br /&gt;
&lt;br /&gt;
Rather than a wrapper, rav1e-by-gop could instead be a part of the base encoder, and take advantage of additional efficiencies and potentially quality improvements with a deeper integration.&lt;br /&gt;
&lt;br /&gt;
==== Solution / Task ====&lt;br /&gt;
&lt;br /&gt;
Functionality similar to rav1e-by-gop should be accessible both via the rav1e binary and the librav1e C API, ideally with additional features and/or performance.&lt;br /&gt;
&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]]&lt;br /&gt;
----&lt;/div&gt;</summary>
		<author><name>Tdaede</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=Unimplemented_x264_features_in_rav1e&amp;diff=16691</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=16691"/>
		<updated>2019-02-12T21:15:19Z</updated>

		<summary type="html">&lt;p&gt;Tdaede: Created page with &amp;quot;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]  === Motion Estimation ===  *Se...&amp;quot;&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>Tdaede</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=AreWeCompressedYet/Sets&amp;diff=16669</id>
		<title>AreWeCompressedYet/Sets</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=AreWeCompressedYet/Sets&amp;diff=16669"/>
		<updated>2018-05-03T23:44:39Z</updated>

		<summary type="html">&lt;p&gt;Tdaede: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Sets are enumerated in the [https://github.com/tdaede/rd_tool/blob/master/sets.json sets.json] file in the rd_tool repository. This page also provides a brief summary of the test sets.&lt;br /&gt;
&lt;br /&gt;
Downloads are available at the bottom of [https://media.xiph.org/video/derf/ Derf&#039;s test video page].&lt;br /&gt;
&lt;br /&gt;
* objective-1-fast - Official test set.&lt;br /&gt;
* objective-1.1 - Slow version of official test set. Has 4k video, and twice as many sequences.&lt;br /&gt;
* subset1/2/3/4 - Official still image sets.&lt;br /&gt;
* objective-1-smc - objective-1-fast, but monochrome and only 30 frames. Useful for testing.&lt;br /&gt;
* video-1-short - Deprecated collection of 30 frame video clips @ 720p or below&lt;br /&gt;
* video-hd-1, video-hd-2, video-hd-3 - Deprecated collection similar to video-1-short, but up to 1080p&lt;br /&gt;
* length-test-1 - One 540p video clip at 15, 30, 60, 120, and 240 frames. Useful for debugging.&lt;br /&gt;
* netflix-4k-1 - All of the Netflix 4k clips at 10 bit, 120 frame length. Not recommended to use as it&#039;s painfully slow.&lt;br /&gt;
* netflix-2k-1 - Same, but scaled to 2k.&lt;br /&gt;
* twitch-1 - All twitch clips, 120 frame length, 4:2:0 YUV.&lt;br /&gt;
* vc-360p-1, vc-720p-1 - Video conferencing clips, 300 frames and 250 frames respectively. Useful for testing rate control.&lt;br /&gt;
* screenshots - A bunch of screenshots of software taken from Wikimedia.&lt;/div&gt;</summary>
		<author><name>Tdaede</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=AreWeCompressedYet&amp;diff=16612</id>
		<title>AreWeCompressedYet</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=AreWeCompressedYet&amp;diff=16612"/>
		<updated>2017-08-29T22:48:47Z</updated>

		<summary type="html">&lt;p&gt;Tdaede: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[https://arewecompressedyet.com/ AreWeCompressedYet] is an automatic service for compressing videos with AV1, VP9, Daala, Thor, and other codecs.&lt;br /&gt;
&lt;br /&gt;
It generates graphs using different metrics, to enable comparisons between different versions of codec source code.&lt;br /&gt;
&lt;br /&gt;
For bugs and enhancements, see its [https://github.com/tdaede/awcy/issues GitHub Issues] page.&lt;br /&gt;
&lt;br /&gt;
==Usage==&lt;br /&gt;
&lt;br /&gt;
===Submitting a Run===&lt;br /&gt;
&lt;br /&gt;
[[File:Awcy submit new job.png|right|frameless|450px]]&lt;br /&gt;
&lt;br /&gt;
Choose the &#039;&#039;&#039;Active Runs&#039;&#039;&#039; tab, then the green &#039;&#039;&#039;Submit New Job&#039;&#039;&#039; button.&lt;br /&gt;
&lt;br /&gt;
[[File:Awcy options.png|right|frameless|450px]]&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Run ID&#039;&#039;&#039; - A unique name for your run (this is filled with the current date and time as a default)&lt;br /&gt;
* &#039;&#039;&#039;Git Commit Hash&#039;&#039;&#039; - The hash of the commit to be tested. This must be visible either on Gerrit or a specially installed personal repo. This is the &amp;quot;Commit&amp;quot; on Gerrit and not the Change-Id or tree hash.&lt;br /&gt;
* &#039;&#039;&#039;Codec&#039;&#039;&#039; - The codec you want to test and certain default options.&lt;br /&gt;
* &#039;&#039;&#039;Set&#039;&#039;&#039; - The set of videos or images you want to test the codec with.&lt;br /&gt;
* &#039;&#039;&#039;Extra CLI options&#039;&#039;&#039; - Optional parameters, which are passed to the encoder along with the defaults. Usually not needed.&lt;br /&gt;
* &#039;&#039;&#039;Extra build options&#039;&#039;&#039; - Optional parameters, which are passed to the configure script. For AV1, pass flags to enable experiments here. (for example, --enable-experimental --enable-feature)&lt;br /&gt;
* &#039;&#039;&#039;IRC nick&#039;&#039;&#039; - Name to notify on #daala. This can also be used to sort your runs.&lt;br /&gt;
* &#039;&#039;&#039;Custom qualities&#039;&#039;&#039; - Optional list of quantizers to use (these override the default list of quantisers).&lt;br /&gt;
&lt;br /&gt;
==Repos==&lt;br /&gt;
https://github.com/tdaede/awcy&lt;br /&gt;
&lt;br /&gt;
https://github.com/tdaede/rd_tool&lt;br /&gt;
&lt;br /&gt;
==Command-line tools==&lt;br /&gt;
===submit_awcy.py===&lt;br /&gt;
Usage:&lt;br /&gt;
  DAALA_ROOT=./ submit_awcy.py --help&lt;br /&gt;
&lt;br /&gt;
You must have a secret_key file in the current directory, containing your key to access AreWeCompressedYet.&lt;br /&gt;
&lt;br /&gt;
By default, the prefix used for the run is your local branch name.&lt;br /&gt;
&lt;br /&gt;
==Internal tools==&lt;br /&gt;
* rd_server.py: the backend server process.&lt;br /&gt;
&lt;br /&gt;
* rd_tool.py: an alternate way to invoke the same tests as rd_server.py, it&#039;s no longer maintained and may be broken. This was used by previous versions of AWCY, and can only run one test at a time.&lt;br /&gt;
&lt;br /&gt;
* metrics_gather.sh: A script called by rd_tool.py, contains the command line parameters for all testable codecs.&lt;br /&gt;
&lt;br /&gt;
== Output Format ==&lt;br /&gt;
For an explanation of AWCY&#039;s metrics output format, see the &#039;&#039;&#039;[[RD_Curve_Data_Format]]&#039;&#039;&#039; page.&lt;br /&gt;
&lt;br /&gt;
==Maintenance==&lt;br /&gt;
The server is a CentOS 7 virtual machine running on catfish.xiph.org. There are few config file changes, so the CentOS machine should be easily upgradeable to get security fixes.&lt;br /&gt;
&lt;br /&gt;
===Daemons===&lt;br /&gt;
&lt;br /&gt;
====awcy====&lt;br /&gt;
The AWCY server has a unit file at &#039;&#039;&#039;/etc/systemd/system/awcy.service&#039;&#039;&#039;. It listens at &#039;&#039;&#039;localhost:3000&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
====rd_server====&lt;br /&gt;
The backend has a unit file at &#039;&#039;&#039;/etc/systemd/system/rdserver.service&#039;&#039;&#039;. It listens at &#039;&#039;&#039;localhost:4000&#039;&#039;&#039;. It currently has no authentication and should not be exposed to the Internet.&lt;br /&gt;
&lt;br /&gt;
====nginx====&lt;br /&gt;
NGINX is configured to be a TLS endpoint and &#039;&#039;&#039;proxy_pass&#039;&#039;&#039; to &#039;&#039;&#039;localhost:3000&#039;&#039;&#039;. Certificates are managed by the EFF&#039;s [https://certbot.eff.org certbot] and issued by [https://letsencrypt.org/ Let&#039;s Encrypt].&lt;br /&gt;
&lt;br /&gt;
====firewalld====&lt;br /&gt;
Firewalld is configured to allow ports 22, 80, and 443 only.&lt;br /&gt;
&lt;br /&gt;
====chrony====&lt;br /&gt;
Chrony is required to keep the system time in sync. Amazon Web Services signatures require an accurate system clock.&lt;br /&gt;
&lt;br /&gt;
====journald====&lt;br /&gt;
See AWCY logs with&lt;br /&gt;
  journalctl -u awcy.service&lt;br /&gt;
and&lt;br /&gt;
  journalctl -u rdserver.service&lt;br /&gt;
&lt;br /&gt;
===Directory Structure===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
-rw-rw-r--.  1 awcy awcy 3078 Aug 19 19:06 awcy_server.js&lt;br /&gt;
-rwxrwxr-x.  1 awcy awcy  169 Aug 17 23:43 create_test_branch.sh&lt;br /&gt;
drwxrwxr-x. 12 awcy awcy 4096 Aug 20 16:31 daala&lt;br /&gt;
-rw-------.  1 root root 1692 Aug 18 16:26 daala.pem&lt;br /&gt;
drwxrwxr-x. 14 awcy awcy 4096 Aug 19 15:02 daalatool&lt;br /&gt;
-rw-rw-r--.  1 awcy awcy 1079 Aug  7 19:31 LICENSE&lt;br /&gt;
drwxrwxr-x.  5 awcy awcy   48 Aug 17 23:47 node_modules&lt;br /&gt;
-rwxrwxr-x.  1 awcy awcy  124 Aug 18 17:22 nuke_branch.sh&lt;br /&gt;
drwxrwxr-x.  3 awcy awcy 4096 Aug 18 17:17 rd_tool&lt;br /&gt;
-rw-rw-r--.  1 awcy awcy   10 Aug  7 19:31 README.md&lt;br /&gt;
drwxrwxr-x. 25 awcy awcy 4096 Aug 20 19:49 runs&lt;br /&gt;
-rwxrwxr-x.  1 awcy awcy  148 Aug 17 23:43 run_video_test.sh&lt;br /&gt;
-rw-rw-r--.  1 awcy awcy   23 Aug 17 23:48 secret_key&lt;br /&gt;
-rwxrwxr-x.  1 awcy awcy 1212 Aug 19 14:27 submit_awcy.py&lt;br /&gt;
drwxrwxr-x.  2 awcy awcy 4096 Aug 19 21:33 www&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Files not part of github repo===&lt;br /&gt;
* node_modules: created by npm when you install the necessary node modules to run awcy_server.js.&lt;br /&gt;
* daala.pem: Private SSH key used to connect to the AWS instances.&lt;br /&gt;
* daalatool: A local clone of Daala, used for the contents of the tools/ directory.&lt;br /&gt;
* secret_key: File containing the secret key used on the main website.&lt;br /&gt;
* config.json: Contains IRC channel to connect to. TODO: put secret_key and other stuff in here too.&lt;br /&gt;
&lt;br /&gt;
* rd_tool/daala.pem: same file as in higher level directory&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
.ssh/config contents:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Host *&lt;br /&gt;
      	StrictHostKeyChecking no&lt;br /&gt;
        UserKnownHostsFile=/dev/null&lt;br /&gt;
        LogLevel ERROR&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Common issues ==&lt;br /&gt;
&lt;br /&gt;
=== Runs don&#039;t display ===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo su awcy&lt;br /&gt;
cd ~/awcy&lt;br /&gt;
node generate_list.js&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Daala]]&lt;/div&gt;</summary>
		<author><name>Tdaede</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=Oggless&amp;diff=16609</id>
		<title>Oggless</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=Oggless&amp;diff=16609"/>
		<updated>2017-07-29T00:25:59Z</updated>

		<summary type="html">&lt;p&gt;Tdaede: /* Explicit mappings */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{draft}}&lt;br /&gt;
&lt;br /&gt;
==Explicit mappings==&lt;br /&gt;
The preferred method to map Xiph formats into other containers is to write an explicit mapping. Some mappings are documented below.&lt;br /&gt;
&lt;br /&gt;
===FLAC===&lt;br /&gt;
* MP4: https://bug1286097.bmoattachments.org/attachment.cgi?id=8805161&lt;br /&gt;
&lt;br /&gt;
===Opus===&lt;br /&gt;
* MP4: [[Mp4Opus]]&lt;br /&gt;
* TS: [[OpusTS]]&lt;br /&gt;
&lt;br /&gt;
The rest of the page describes a generic mapping. It is strongly preferred to instead write an explicit mapping. The generic mapping is not compatible with the explicit mappings above.&lt;br /&gt;
&lt;br /&gt;
==Abstract==&lt;br /&gt;
This page documents how to embed the different Xiph codecs like Vorbis or Theora in containers other than Ogg.  It&#039;s still in the drafting stage, and most of it was taken from a [http://svn.mplayerhq.hu/nut/docs/oggless-xiph-codecs.txt?revision=486&amp;amp;pathrev=577 version] that was previously a part of the NUT Subversion repository.&lt;br /&gt;
Said document was originally authored by Michael Niedermayer.&lt;br /&gt;
&lt;br /&gt;
==Current Version==&lt;br /&gt;
* 2007-07-21&lt;br /&gt;
&lt;br /&gt;
==Status==&lt;br /&gt;
Information on how to convert losslessly from one format to another is missing, as is Ogg timestamping.  Regardless, it is mostly finished and likely won&#039;t be updated further.&lt;br /&gt;
&lt;br /&gt;
==Minimum container requirements==&lt;br /&gt;
This appendix only explains how to store Xiph codecs in containers which &lt;br /&gt;
support at least one global header per stream, can separate individual codec packets and in principle support the codec. So for example in the case of Vorbis, that would be variable bitrate and variable number of samples/packet.  Storage in other containers is outside the scope of this appendix.&lt;br /&gt;
&lt;br /&gt;
===Global header:===&lt;br /&gt;
If the container can store 3 headers per stream in an unambiguous and ordered way then they shall be stored in that way. If OTOH the container is only capable of storing a single global header, then the 3 codec headers shall be concatenated without any additional header, footer or separator between them. To recover the 3 headers from such a global header the following procedure shall be used:&lt;br /&gt;
&lt;br /&gt;
: 1) Search for the 1st occurrence of ID1. The found match and the following ID1_LEN bytes are the 1st header packet.&lt;br /&gt;
: 2) search for the 1st occurrence of ID2 after here&lt;br /&gt;
:: 3) read an unsigned integer of 32 bits and skip that many bytes&lt;br /&gt;
:: 4) [user_comment_list_length] = read an unsigned integer of 32 bits&lt;br /&gt;
:: 5) iterate [user_comment_list_length] times {&lt;br /&gt;
::: 6) read an unsigned integer of 32 bits and skip that many bytes&lt;br /&gt;
:: }&lt;br /&gt;
:: 7) skip 1 byte&lt;br /&gt;
: 8) the match in 2) and what follows until here is the 2nd header packet&lt;br /&gt;
: 9) Search for the 1st occurrence of ID3 after here. The matching part and what follows is the 3rd header packet.&lt;br /&gt;
&lt;br /&gt;
====Constants:====&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;4&amp;quot;&lt;br /&gt;
! Codec&lt;br /&gt;
! ID1&lt;br /&gt;
! ID2&lt;br /&gt;
! ID3&lt;br /&gt;
! ID1_LEN&lt;br /&gt;
|-&lt;br /&gt;
| Vorbis&lt;br /&gt;
| 0x01,&#039;v&#039;,&#039;o&#039;,&#039;r&#039;,&#039;b&#039;,&#039;i&#039;,&#039;s&#039;&lt;br /&gt;
| 0x03,&#039;v&#039;,&#039;o&#039;,&#039;r&#039;,&#039;b&#039;,&#039;i&#039;,&#039;s&#039;     &lt;br /&gt;
| 0x05,&#039;v&#039;,&#039;o&#039;,&#039;r&#039;,&#039;b&#039;,&#039;i&#039;,&#039;s&#039;&lt;br /&gt;
| 23&lt;br /&gt;
|-&lt;br /&gt;
| Theora&lt;br /&gt;
| 0x80,&#039;t&#039;,&#039;h&#039;,&#039;e&#039;,&#039;o&#039;,&#039;r&#039;,&#039;a&#039;&lt;br /&gt;
| 0x81,&#039;t&#039;,&#039;h&#039;,&#039;e&#039;,&#039;o&#039;,&#039;r&#039;,&#039;a&#039;&lt;br /&gt;
| 0x82,&#039;t&#039;,&#039;h&#039;,&#039;e&#039;,&#039;o&#039;,&#039;r&#039;,&#039;a&#039;&lt;br /&gt;
| 35&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
If the container needs an identifier for the global header, for example a fourcc for a global header chunk then glbl shall be used.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Storing packets:===&lt;br /&gt;
Each codec packet shall be stored in exactly one &amp;quot;container packet&amp;quot; and one &amp;quot;container packet&amp;quot; must not contain more then one codec packet. &amp;quot;container packet&amp;quot; here means the smallest separable data unit in the container.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Codec Identifier:===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;4&amp;quot;&lt;br /&gt;
! Xiph codec&lt;br /&gt;
! fourcc ID&lt;br /&gt;
! long ID&lt;br /&gt;
|-&lt;br /&gt;
| Vorbis      &lt;br /&gt;
| vrbs        &lt;br /&gt;
| vorbis&lt;br /&gt;
|-&lt;br /&gt;
| Theora&lt;br /&gt;
| ther&lt;br /&gt;
| theora&lt;br /&gt;
|-&lt;br /&gt;
| Tarkin&lt;br /&gt;
| trkn&lt;br /&gt;
| tarkin&lt;br /&gt;
|-&lt;br /&gt;
| FLAC&lt;br /&gt;
| flac&lt;br /&gt;
| flac&lt;br /&gt;
|-&lt;br /&gt;
| Speex&lt;br /&gt;
| spex&lt;br /&gt;
| speex&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
If the container uses 4-character codes, the fourcc identifier from the table above shall be used. If the container uses arbitrary length strings as identifiers, then the long ID from the table above shall be used.&lt;br /&gt;
&lt;br /&gt;
===Examples and Discussions about specific containers===&lt;br /&gt;
What follows are some notes about specific containers, these notes are just informative as they just repeat what is written above or in the &lt;br /&gt;
specification of the specific container.&lt;br /&gt;
&lt;br /&gt;
====Example and Discussion of the AVI container====&lt;br /&gt;
AVI supports everything needed to store Vorbis, this does not mean that all applications will support Vorbis in AVI, as Vorbis is rather different from other audio codecs commonly stored in AVI.&lt;br /&gt;
&lt;br /&gt;
AVI supports a single global header like WAV does, the 3 Vorbis headers&lt;br /&gt;
shall be stored in it and only in it as described above.  dwSampleSize must be set to zero as vorbis is VBR, many applications do this incorrectly for other VBR codecs and consequently VBR audio in AVI&lt;br /&gt;
becomes problematic.&lt;br /&gt;
&lt;br /&gt;
AVI does not have timestamps, but each chunk has a constant duration,&lt;br /&gt;
while Vorbis packets can have one of 2 durations.&lt;br /&gt;
If now the AVI header is set up in a way that each AVI chunk has the&lt;br /&gt;
same duration as the smaller duration of the 2 possibilities in Vorbis,&lt;br /&gt;
then simply inserting empty AVI chunks will allow every AVI chunk to&lt;br /&gt;
have the correct duration.&lt;br /&gt;
This is of course not the most beautiful solution but it is the only way&lt;br /&gt;
to keep things exact.&lt;br /&gt;
Additionally, note that empty chunks have been used since ages in AVI to&lt;br /&gt;
lengthen the duration of video chunks.&lt;br /&gt;
&lt;br /&gt;
Some Links:&lt;br /&gt;
* [http://svn.xiph.org/tags/vorbisacm_20020708/ Vorbisacm]&lt;br /&gt;
* [http://www.alexander-noe.com/video/documentation/avi.pdf AVI File Format] (PDF), 5.7 (p.21) VFR Audio - Storing Vorbis in AVI&lt;br /&gt;
&lt;br /&gt;
====Example and Discussion of the ASF container====&lt;br /&gt;
ASF supports a single global header per stream and has timestamps, so&lt;br /&gt;
storing Xiph codecs in it should be possible, but ASF is patented and &lt;br /&gt;
Microsoft has already threatened individuals, so we strongly urge you to &lt;br /&gt;
avoid this container.&lt;br /&gt;
&lt;br /&gt;
====Example and Discussion of the Matroska container====&lt;br /&gt;
Matroska supports storing 3 headers using a codec-specific format.&lt;br /&gt;
This should be used for storing the 3 headers.&lt;br /&gt;
&lt;br /&gt;
Note that the above procedure to split one header into 3 works with the&lt;br /&gt;
Vorbis-Matroska-specific format, too.&lt;br /&gt;
&lt;br /&gt;
====Example and Discussion of the NUT container====&lt;br /&gt;
NUT supports a single global header per stream so the 1&amp;lt;-&amp;gt;3 merge/split&lt;br /&gt;
procedure above must be used. Except that there is nothing special with &lt;br /&gt;
storing Xiph codecs in NUT.&lt;br /&gt;
&lt;br /&gt;
====Example and Discussion of MPEG-PS / MPEG-TS container====&lt;br /&gt;
These containers neither support a global header nor do they provide&lt;br /&gt;
the necessary packet separation / framing.&lt;br /&gt;
Storing Xiph codecs in them is thus outside the scope of this appendix.&lt;br /&gt;
&lt;br /&gt;
====Example and Discussion of WAV container====&lt;br /&gt;
WAV does not provide the necessary packet separation / framing, so storing Xiph codecs in it is outside the scope of this appendix.&lt;br /&gt;
&lt;br /&gt;
====Example and Discussion of the MOV container====&lt;br /&gt;
A single glbl atom shall be placed in the stsd atom in which the the global header shall be stored.&lt;/div&gt;</summary>
		<author><name>Tdaede</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=Oggless&amp;diff=16608</id>
		<title>Oggless</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=Oggless&amp;diff=16608"/>
		<updated>2017-07-29T00:25:16Z</updated>

		<summary type="html">&lt;p&gt;Tdaede: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{draft}}&lt;br /&gt;
&lt;br /&gt;
==Explicit mappings==&lt;br /&gt;
The preferred method to map Xiph formats into other containers is to write an explicit mapping. Some mappings are documented below.&lt;br /&gt;
&lt;br /&gt;
===FLAC===&lt;br /&gt;
* MP4: https://bug1286097.bmoattachments.org/attachment.cgi?id=8805161&lt;br /&gt;
&lt;br /&gt;
===Opus===&lt;br /&gt;
* MP4: [[Mp4Opus]]&lt;br /&gt;
&lt;br /&gt;
The rest of the page describes a generic mapping. It is strongly preferred to instead write an explicit mapping. The generic mapping is not compatible with the explicit mappings above.&lt;br /&gt;
&lt;br /&gt;
==Abstract==&lt;br /&gt;
This page documents how to embed the different Xiph codecs like Vorbis or Theora in containers other than Ogg.  It&#039;s still in the drafting stage, and most of it was taken from a [http://svn.mplayerhq.hu/nut/docs/oggless-xiph-codecs.txt?revision=486&amp;amp;pathrev=577 version] that was previously a part of the NUT Subversion repository.&lt;br /&gt;
Said document was originally authored by Michael Niedermayer.&lt;br /&gt;
&lt;br /&gt;
==Current Version==&lt;br /&gt;
* 2007-07-21&lt;br /&gt;
&lt;br /&gt;
==Status==&lt;br /&gt;
Information on how to convert losslessly from one format to another is missing, as is Ogg timestamping.  Regardless, it is mostly finished and likely won&#039;t be updated further.&lt;br /&gt;
&lt;br /&gt;
==Minimum container requirements==&lt;br /&gt;
This appendix only explains how to store Xiph codecs in containers which &lt;br /&gt;
support at least one global header per stream, can separate individual codec packets and in principle support the codec. So for example in the case of Vorbis, that would be variable bitrate and variable number of samples/packet.  Storage in other containers is outside the scope of this appendix.&lt;br /&gt;
&lt;br /&gt;
===Global header:===&lt;br /&gt;
If the container can store 3 headers per stream in an unambiguous and ordered way then they shall be stored in that way. If OTOH the container is only capable of storing a single global header, then the 3 codec headers shall be concatenated without any additional header, footer or separator between them. To recover the 3 headers from such a global header the following procedure shall be used:&lt;br /&gt;
&lt;br /&gt;
: 1) Search for the 1st occurrence of ID1. The found match and the following ID1_LEN bytes are the 1st header packet.&lt;br /&gt;
: 2) search for the 1st occurrence of ID2 after here&lt;br /&gt;
:: 3) read an unsigned integer of 32 bits and skip that many bytes&lt;br /&gt;
:: 4) [user_comment_list_length] = read an unsigned integer of 32 bits&lt;br /&gt;
:: 5) iterate [user_comment_list_length] times {&lt;br /&gt;
::: 6) read an unsigned integer of 32 bits and skip that many bytes&lt;br /&gt;
:: }&lt;br /&gt;
:: 7) skip 1 byte&lt;br /&gt;
: 8) the match in 2) and what follows until here is the 2nd header packet&lt;br /&gt;
: 9) Search for the 1st occurrence of ID3 after here. The matching part and what follows is the 3rd header packet.&lt;br /&gt;
&lt;br /&gt;
====Constants:====&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;4&amp;quot;&lt;br /&gt;
! Codec&lt;br /&gt;
! ID1&lt;br /&gt;
! ID2&lt;br /&gt;
! ID3&lt;br /&gt;
! ID1_LEN&lt;br /&gt;
|-&lt;br /&gt;
| Vorbis&lt;br /&gt;
| 0x01,&#039;v&#039;,&#039;o&#039;,&#039;r&#039;,&#039;b&#039;,&#039;i&#039;,&#039;s&#039;&lt;br /&gt;
| 0x03,&#039;v&#039;,&#039;o&#039;,&#039;r&#039;,&#039;b&#039;,&#039;i&#039;,&#039;s&#039;     &lt;br /&gt;
| 0x05,&#039;v&#039;,&#039;o&#039;,&#039;r&#039;,&#039;b&#039;,&#039;i&#039;,&#039;s&#039;&lt;br /&gt;
| 23&lt;br /&gt;
|-&lt;br /&gt;
| Theora&lt;br /&gt;
| 0x80,&#039;t&#039;,&#039;h&#039;,&#039;e&#039;,&#039;o&#039;,&#039;r&#039;,&#039;a&#039;&lt;br /&gt;
| 0x81,&#039;t&#039;,&#039;h&#039;,&#039;e&#039;,&#039;o&#039;,&#039;r&#039;,&#039;a&#039;&lt;br /&gt;
| 0x82,&#039;t&#039;,&#039;h&#039;,&#039;e&#039;,&#039;o&#039;,&#039;r&#039;,&#039;a&#039;&lt;br /&gt;
| 35&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
If the container needs an identifier for the global header, for example a fourcc for a global header chunk then glbl shall be used.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Storing packets:===&lt;br /&gt;
Each codec packet shall be stored in exactly one &amp;quot;container packet&amp;quot; and one &amp;quot;container packet&amp;quot; must not contain more then one codec packet. &amp;quot;container packet&amp;quot; here means the smallest separable data unit in the container.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Codec Identifier:===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;4&amp;quot;&lt;br /&gt;
! Xiph codec&lt;br /&gt;
! fourcc ID&lt;br /&gt;
! long ID&lt;br /&gt;
|-&lt;br /&gt;
| Vorbis      &lt;br /&gt;
| vrbs        &lt;br /&gt;
| vorbis&lt;br /&gt;
|-&lt;br /&gt;
| Theora&lt;br /&gt;
| ther&lt;br /&gt;
| theora&lt;br /&gt;
|-&lt;br /&gt;
| Tarkin&lt;br /&gt;
| trkn&lt;br /&gt;
| tarkin&lt;br /&gt;
|-&lt;br /&gt;
| FLAC&lt;br /&gt;
| flac&lt;br /&gt;
| flac&lt;br /&gt;
|-&lt;br /&gt;
| Speex&lt;br /&gt;
| spex&lt;br /&gt;
| speex&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
If the container uses 4-character codes, the fourcc identifier from the table above shall be used. If the container uses arbitrary length strings as identifiers, then the long ID from the table above shall be used.&lt;br /&gt;
&lt;br /&gt;
===Examples and Discussions about specific containers===&lt;br /&gt;
What follows are some notes about specific containers, these notes are just informative as they just repeat what is written above or in the &lt;br /&gt;
specification of the specific container.&lt;br /&gt;
&lt;br /&gt;
====Example and Discussion of the AVI container====&lt;br /&gt;
AVI supports everything needed to store Vorbis, this does not mean that all applications will support Vorbis in AVI, as Vorbis is rather different from other audio codecs commonly stored in AVI.&lt;br /&gt;
&lt;br /&gt;
AVI supports a single global header like WAV does, the 3 Vorbis headers&lt;br /&gt;
shall be stored in it and only in it as described above.  dwSampleSize must be set to zero as vorbis is VBR, many applications do this incorrectly for other VBR codecs and consequently VBR audio in AVI&lt;br /&gt;
becomes problematic.&lt;br /&gt;
&lt;br /&gt;
AVI does not have timestamps, but each chunk has a constant duration,&lt;br /&gt;
while Vorbis packets can have one of 2 durations.&lt;br /&gt;
If now the AVI header is set up in a way that each AVI chunk has the&lt;br /&gt;
same duration as the smaller duration of the 2 possibilities in Vorbis,&lt;br /&gt;
then simply inserting empty AVI chunks will allow every AVI chunk to&lt;br /&gt;
have the correct duration.&lt;br /&gt;
This is of course not the most beautiful solution but it is the only way&lt;br /&gt;
to keep things exact.&lt;br /&gt;
Additionally, note that empty chunks have been used since ages in AVI to&lt;br /&gt;
lengthen the duration of video chunks.&lt;br /&gt;
&lt;br /&gt;
Some Links:&lt;br /&gt;
* [http://svn.xiph.org/tags/vorbisacm_20020708/ Vorbisacm]&lt;br /&gt;
* [http://www.alexander-noe.com/video/documentation/avi.pdf AVI File Format] (PDF), 5.7 (p.21) VFR Audio - Storing Vorbis in AVI&lt;br /&gt;
&lt;br /&gt;
====Example and Discussion of the ASF container====&lt;br /&gt;
ASF supports a single global header per stream and has timestamps, so&lt;br /&gt;
storing Xiph codecs in it should be possible, but ASF is patented and &lt;br /&gt;
Microsoft has already threatened individuals, so we strongly urge you to &lt;br /&gt;
avoid this container.&lt;br /&gt;
&lt;br /&gt;
====Example and Discussion of the Matroska container====&lt;br /&gt;
Matroska supports storing 3 headers using a codec-specific format.&lt;br /&gt;
This should be used for storing the 3 headers.&lt;br /&gt;
&lt;br /&gt;
Note that the above procedure to split one header into 3 works with the&lt;br /&gt;
Vorbis-Matroska-specific format, too.&lt;br /&gt;
&lt;br /&gt;
====Example and Discussion of the NUT container====&lt;br /&gt;
NUT supports a single global header per stream so the 1&amp;lt;-&amp;gt;3 merge/split&lt;br /&gt;
procedure above must be used. Except that there is nothing special with &lt;br /&gt;
storing Xiph codecs in NUT.&lt;br /&gt;
&lt;br /&gt;
====Example and Discussion of MPEG-PS / MPEG-TS container====&lt;br /&gt;
These containers neither support a global header nor do they provide&lt;br /&gt;
the necessary packet separation / framing.&lt;br /&gt;
Storing Xiph codecs in them is thus outside the scope of this appendix.&lt;br /&gt;
&lt;br /&gt;
====Example and Discussion of WAV container====&lt;br /&gt;
WAV does not provide the necessary packet separation / framing, so storing Xiph codecs in it is outside the scope of this appendix.&lt;br /&gt;
&lt;br /&gt;
====Example and Discussion of the MOV container====&lt;br /&gt;
A single glbl atom shall be placed in the stsd atom in which the the global header shall be stored.&lt;/div&gt;</summary>
		<author><name>Tdaede</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=XiphInfra:List_of_services&amp;diff=16592</id>
		<title>XiphInfra:List of services</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=XiphInfra:List_of_services&amp;diff=16592"/>
		<updated>2017-06-20T02:04:07Z</updated>

		<summary type="html">&lt;p&gt;Tdaede: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
! Service&lt;br /&gt;
! URL&lt;br /&gt;
! VM&lt;br /&gt;
! Host&lt;br /&gt;
! Maintainer(s)&lt;br /&gt;
|-&lt;br /&gt;
| [[AreWeCompressedYet]]&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://arewecompressedyet.com&lt;br /&gt;
| awcy&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://catfish.xiph.org&lt;br /&gt;
| TD-Linux&lt;br /&gt;
|-&lt;br /&gt;
| Git Repos&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://git.xiph.org&lt;br /&gt;
| &lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://mf4.xiph.org&lt;br /&gt;
| rillian&lt;br /&gt;
|-&lt;br /&gt;
| Home Pages&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://people.xiph.org&lt;br /&gt;
| &lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://mf4.xiph.org&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Icecast]] Streams&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| http://dir.xiph.org&lt;br /&gt;
| &lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| http://mf4.xiph.org&lt;br /&gt;
| tbr&lt;br /&gt;
|-&lt;br /&gt;
| [[Icecast]] Streams (Beta)&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| http://dir-test.xiph.org&lt;br /&gt;
| &lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| http://catfish.xiph.org&lt;br /&gt;
| ePirat, tbr&lt;br /&gt;
|-&lt;br /&gt;
| Jenkins&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://mf4.xiph.org/jenkins/&lt;br /&gt;
| jenkins&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://mf4.xiph.org&lt;br /&gt;
| TD-Linux&lt;br /&gt;
|-&lt;br /&gt;
| Mail&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| xiph.org&lt;br /&gt;
| mailfish&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://catfish.xiph.org&lt;br /&gt;
| ePirat, tbr&lt;br /&gt;
|-&lt;br /&gt;
| MailMan&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| http://lists.xiph.org&lt;br /&gt;
| mailfish&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://catfish.xiph.org&lt;br /&gt;
| ePirat, tbr&lt;br /&gt;
|-&lt;br /&gt;
| Media&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://media.xiph.org&lt;br /&gt;
| &lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://media.xiph.org&lt;br /&gt;
| TD-Linux&lt;br /&gt;
|-&lt;br /&gt;
| Opus Boodler Streams&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://opus-codec.org&lt;br /&gt;
| &lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://mf4.xiph.org&lt;br /&gt;
| gmaxwell&lt;br /&gt;
|-&lt;br /&gt;
| Rietveld&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://review.xiph.org&lt;br /&gt;
| jenkins&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://mf4.xiph.org&lt;br /&gt;
| TD-Linux&lt;br /&gt;
|-&lt;br /&gt;
| Subversion Repos&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://svn.xiph.org&lt;br /&gt;
| &lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://mf4.xiph.org&lt;br /&gt;
| rillian&lt;br /&gt;
|-&lt;br /&gt;
| Trac Bug Tracker&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://trac.xiph.org&lt;br /&gt;
| &lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://mf4.xiph.org&lt;br /&gt;
| tbr&lt;br /&gt;
|-&lt;br /&gt;
| [[XiphWiki:Features|Wiki]]&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://wiki.xiph.org&lt;br /&gt;
| [[XiphInfra:Wiki VM|wiki]]&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://mf4.xiph.org&lt;br /&gt;
| ePirat&lt;br /&gt;
|-&lt;br /&gt;
| Xiph Mirror Repos&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://github.com/xiph&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| rillian&lt;br /&gt;
|-&lt;br /&gt;
| XiphBot-ng&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| XiphWiki on freenode.net&lt;br /&gt;
| &lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://mf4.xiph.org&lt;br /&gt;
| TD-Linux&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;noinclude&amp;gt;See the [[XiphInfra:Overview|Overview]] page for more information.&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tdaede</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=XiphInfra:List_of_services&amp;diff=16591</id>
		<title>XiphInfra:List of services</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=XiphInfra:List_of_services&amp;diff=16591"/>
		<updated>2017-06-20T02:01:56Z</updated>

		<summary type="html">&lt;p&gt;Tdaede: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
! Service&lt;br /&gt;
! URL&lt;br /&gt;
! VM&lt;br /&gt;
! Host&lt;br /&gt;
! Maintainer(s)&lt;br /&gt;
|-&lt;br /&gt;
| [[AreWeCompressedYet]]&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://arewecompressedyet.com&lt;br /&gt;
| awcy&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://catfish.xiph.org&lt;br /&gt;
| TD-Linux&lt;br /&gt;
|-&lt;br /&gt;
| Git Repos&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://git.xiph.org&lt;br /&gt;
| &lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://mf4.xiph.org&lt;br /&gt;
| rillian&lt;br /&gt;
|-&lt;br /&gt;
| Home Pages&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://people.xiph.org&lt;br /&gt;
| &lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://mf4.xiph.org&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Icecast]] Streams&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| http://dir.xiph.org&lt;br /&gt;
| &lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| http://dir.xiph.org&lt;br /&gt;
| tbr&lt;br /&gt;
|-&lt;br /&gt;
| [[Icecast]] Streams (Beta)&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| http://dir-test.xiph.org&lt;br /&gt;
| &lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| http://mailfish.xiph.org&lt;br /&gt;
| ePirat, tbr&lt;br /&gt;
|-&lt;br /&gt;
| Jenkins&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://mf4.xiph.org/jenkins/&lt;br /&gt;
| jenkins&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://mf4.xiph.org&lt;br /&gt;
| TD-Linux&lt;br /&gt;
|-&lt;br /&gt;
| Mail&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| xiph.org&lt;br /&gt;
| mailfish&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://catfish.xiph.org&lt;br /&gt;
| ePirat, tbr&lt;br /&gt;
|-&lt;br /&gt;
| MailMan&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| http://lists.xiph.org&lt;br /&gt;
| mailfish&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://catfish.xiph.org&lt;br /&gt;
| ePirat, tbr&lt;br /&gt;
|-&lt;br /&gt;
| Media&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://media.xiph.org&lt;br /&gt;
| &lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://media.xiph.org&lt;br /&gt;
| TD-Linux&lt;br /&gt;
|-&lt;br /&gt;
| Opus Boodler Streams&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://opus-codec.org&lt;br /&gt;
| &lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://mf4.xiph.org&lt;br /&gt;
| gmaxwell&lt;br /&gt;
|-&lt;br /&gt;
| Rietveld&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://review.xiph.org&lt;br /&gt;
| jenkins&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://mf4.xiph.org&lt;br /&gt;
| TD-Linux&lt;br /&gt;
|-&lt;br /&gt;
| Subversion Repos&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://svn.xiph.org&lt;br /&gt;
| &lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://mf4.xiph.org&lt;br /&gt;
| rillian&lt;br /&gt;
|-&lt;br /&gt;
| Trac Bug Tracker&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://trac.xiph.org&lt;br /&gt;
| &lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://mf4.xiph.org&lt;br /&gt;
| tbr&lt;br /&gt;
|-&lt;br /&gt;
| [[XiphWiki:Features|Wiki]]&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://wiki.xiph.org&lt;br /&gt;
| [[XiphInfra:Wiki VM|wiki]]&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://mf4.xiph.org&lt;br /&gt;
| ePirat&lt;br /&gt;
|-&lt;br /&gt;
| Xiph Mirror Repos&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://github.com/xiph&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| rillian&lt;br /&gt;
|-&lt;br /&gt;
| XiphBot-ng&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| XiphWiki on freenode.net&lt;br /&gt;
| &lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://mf4.xiph.org&lt;br /&gt;
| TD-Linux&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;noinclude&amp;gt;See the [[XiphInfra:Overview|Overview]] page for more information.&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tdaede</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=XiphInfra:List_of_services&amp;diff=16590</id>
		<title>XiphInfra:List of services</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=XiphInfra:List_of_services&amp;diff=16590"/>
		<updated>2017-06-20T02:01:14Z</updated>

		<summary type="html">&lt;p&gt;Tdaede: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
! Service&lt;br /&gt;
! URL&lt;br /&gt;
! VM&lt;br /&gt;
! Host&lt;br /&gt;
! Maintainer(s)&lt;br /&gt;
|-&lt;br /&gt;
| [[AreWeCompressedYet]]&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://arewecompressedyet.com&lt;br /&gt;
| awcy&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://catfish.xiph.org&lt;br /&gt;
| TD-Linux&lt;br /&gt;
|-&lt;br /&gt;
| Git Repos&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://git.xiph.org&lt;br /&gt;
| &lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://mf4.xiph.org&lt;br /&gt;
| rillian&lt;br /&gt;
|-&lt;br /&gt;
| Home Pages&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://people.xiph.org&lt;br /&gt;
| &lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://mf4.xiph.org&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Icecast]] Streams&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| http://dir.xiph.org&lt;br /&gt;
| &lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| http://dir.xiph.org&lt;br /&gt;
| tbr&lt;br /&gt;
|-&lt;br /&gt;
| [[Icecast]] Streams (Beta)&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| http://dir-test.xiph.org&lt;br /&gt;
| &lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| http://mailfish.xiph.org&lt;br /&gt;
| ePirat, tbr&lt;br /&gt;
|-&lt;br /&gt;
| Jenkins&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://mf4.xiph.org/jenkins/&lt;br /&gt;
| jenkins&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://mf4.xiph.org&lt;br /&gt;
| TD-Linux&lt;br /&gt;
|-&lt;br /&gt;
| Mail&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| xiph.org&lt;br /&gt;
| mailfish&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://catfish.xiph.org&lt;br /&gt;
| ePirat, tbr&lt;br /&gt;
|-&lt;br /&gt;
| MailMan&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| http://lists.xiph.org&lt;br /&gt;
| mailfish&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://catfish.xiph.org&lt;br /&gt;
| ePirat, tbr&lt;br /&gt;
|-&lt;br /&gt;
| Media&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://media.xiph.org&lt;br /&gt;
| &lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://media.xiph.org&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Opus Boodler Streams&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://opus-codec.org&lt;br /&gt;
| &lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://mf4.xiph.org&lt;br /&gt;
| gmaxwell&lt;br /&gt;
|-&lt;br /&gt;
| Rietveld&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://review.xiph.org&lt;br /&gt;
| jenkins&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://mf4.xiph.org&lt;br /&gt;
| TD-Linux&lt;br /&gt;
|-&lt;br /&gt;
| Subversion Repos&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://svn.xiph.org&lt;br /&gt;
| &lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://mf4.xiph.org&lt;br /&gt;
| rillian&lt;br /&gt;
|-&lt;br /&gt;
| Trac Bug Tracker&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://trac.xiph.org&lt;br /&gt;
| &lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://mf4.xiph.org&lt;br /&gt;
| tbr&lt;br /&gt;
|-&lt;br /&gt;
| [[XiphWiki:Features|Wiki]]&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://wiki.xiph.org&lt;br /&gt;
| [[XiphInfra:Wiki VM|wiki]]&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://mf4.xiph.org&lt;br /&gt;
| ePirat&lt;br /&gt;
|-&lt;br /&gt;
| Xiph Mirror Repos&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://github.com/xiph&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| rillian&lt;br /&gt;
|-&lt;br /&gt;
| XiphBot-ng&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| XiphWiki on freenode.net&lt;br /&gt;
| &lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://mf4.xiph.org&lt;br /&gt;
| TD-Linux&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;noinclude&amp;gt;See the [[XiphInfra:Overview|Overview]] page for more information.&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tdaede</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=XiphInfra:List_of_services&amp;diff=16589</id>
		<title>XiphInfra:List of services</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=XiphInfra:List_of_services&amp;diff=16589"/>
		<updated>2017-06-20T01:59:09Z</updated>

		<summary type="html">&lt;p&gt;Tdaede: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
! Service&lt;br /&gt;
! URL&lt;br /&gt;
! VM&lt;br /&gt;
! Host&lt;br /&gt;
! Maintainer(s)&lt;br /&gt;
|-&lt;br /&gt;
| [[AreWeCompressedYet]]&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://arewecompressedyet.com&lt;br /&gt;
| awcy&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://catfish.xiph.org&lt;br /&gt;
| TD-Linux&lt;br /&gt;
|-&lt;br /&gt;
| Git Repos&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://git.xiph.org&lt;br /&gt;
| &lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://mf4.xiph.org&lt;br /&gt;
| rillian&lt;br /&gt;
|-&lt;br /&gt;
| Home Pages&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://people.xiph.org&lt;br /&gt;
| &lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://mf4.xiph.org&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Icecast]] Streams&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| http://dir.xiph.org&lt;br /&gt;
| &lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| http://dir.xiph.org&lt;br /&gt;
| tbr&lt;br /&gt;
|-&lt;br /&gt;
| [[Icecast]] Streams (Beta)&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| http://dir-test.xiph.org&lt;br /&gt;
| &lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| http://mailfish.xiph.org&lt;br /&gt;
| ePirat, tbr&lt;br /&gt;
|-&lt;br /&gt;
| Jenkins&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://mf4.xiph.org/jenkins/&lt;br /&gt;
| jenkins&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://mf4.xiph.org&lt;br /&gt;
| TD-Linux&lt;br /&gt;
|-&lt;br /&gt;
| Mail&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| xiph.org&lt;br /&gt;
| &lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| mailfish.xiph.org&lt;br /&gt;
| ePirat, tbr&lt;br /&gt;
|-&lt;br /&gt;
| MailMan&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| http://lists.xiph.org&lt;br /&gt;
| &lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| mailfish.xiph.org&lt;br /&gt;
| ePirat, tbr&lt;br /&gt;
|-&lt;br /&gt;
| Media&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://media.xiph.org&lt;br /&gt;
| &lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://media.xiph.org&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Opus Boodler Streams&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://opus-codec.org&lt;br /&gt;
| &lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://mf4.xiph.org&lt;br /&gt;
| gmaxwell&lt;br /&gt;
|-&lt;br /&gt;
| Rietveld&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://review.xiph.org&lt;br /&gt;
| jenkins&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://mf4.xiph.org&lt;br /&gt;
| TD-Linux&lt;br /&gt;
|-&lt;br /&gt;
| Subversion Repos&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://svn.xiph.org&lt;br /&gt;
| &lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://mf4.xiph.org&lt;br /&gt;
| rillian&lt;br /&gt;
|-&lt;br /&gt;
| Trac Bug Tracker&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://trac.xiph.org&lt;br /&gt;
| &lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://mf4.xiph.org&lt;br /&gt;
| tbr&lt;br /&gt;
|-&lt;br /&gt;
| [[XiphWiki:Features|Wiki]]&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://wiki.xiph.org&lt;br /&gt;
| [[XiphInfra:Wiki VM|wiki]]&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://mf4.xiph.org&lt;br /&gt;
| ePirat&lt;br /&gt;
|-&lt;br /&gt;
| Xiph Mirror Repos&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://github.com/xiph&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| rillian&lt;br /&gt;
|-&lt;br /&gt;
| XiphBot-ng&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| XiphWiki on freenode.net&lt;br /&gt;
| &lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| https://mf4.xiph.org&lt;br /&gt;
| TD-Linux&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;noinclude&amp;gt;See the [[XiphInfra:Overview|Overview]] page for more information.&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tdaede</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=AreWeCompressedYet&amp;diff=16547</id>
		<title>AreWeCompressedYet</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=AreWeCompressedYet&amp;diff=16547"/>
		<updated>2017-01-17T23:35:55Z</updated>

		<summary type="html">&lt;p&gt;Tdaede: /* Submitting a Run */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[https://arewecompressedyet.com/ AreWeCompressedYet] is an automatic service for compressing videos with AV1, VP9, Daala, Thor, and other codecs.&lt;br /&gt;
&lt;br /&gt;
It generates graphs using different metrics, to enable comparisons between different versions of codec source code.&lt;br /&gt;
&lt;br /&gt;
For bugs and enhancements, see its [https://github.com/tdaede/awcy/issues GitHub Issues] page.&lt;br /&gt;
&lt;br /&gt;
==Usage==&lt;br /&gt;
&lt;br /&gt;
===Submitting a Run===&lt;br /&gt;
&lt;br /&gt;
Choose the Active Runs tab, then the green &amp;quot;Submit New Job&amp;quot; button.&lt;br /&gt;
&lt;br /&gt;
[[File:Awcy submit new job.png|409px]]&lt;br /&gt;
&lt;br /&gt;
[[File:Awcy options.png|432px]]&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Run ID&#039;&#039;&#039; - A unique name for the run, prefilled with date.&lt;br /&gt;
* &#039;&#039;&#039;Git Commit Hash&#039;&#039;&#039; - The hash of the commit to be tested. This must be visible either on Gerrit or a specially installed personal repo. This is the &amp;quot;Commit&amp;quot; on Gerrit and not the Change-Id or tree hash.&lt;br /&gt;
* &#039;&#039;&#039;Codec&#039;&#039;&#039; - Selects both Codec and default options.&lt;br /&gt;
* &#039;&#039;&#039;Set&#039;&#039;&#039; - videos to run.&lt;br /&gt;
* &#039;&#039;&#039;Extra CLI options&#039;&#039;&#039; - Passed to encoder binary along with the defaults. Usually not needed.&lt;br /&gt;
* &#039;&#039;&#039;Extra build options&#039;&#039;&#039; - Passed to configure script. For AV1, pass flags to enable experiments here. (for example, --enable-experimental --enable-feature)&lt;br /&gt;
* &#039;&#039;&#039;IRC nick&#039;&#039;&#039; - Name to notify on #daala, also for sorting runs.&lt;br /&gt;
* &#039;&#039;&#039;Custom qualities&#039;&#039;&#039; - optional, specifies quantizers to use instead of the defaults.&lt;br /&gt;
&lt;br /&gt;
==Repos==&lt;br /&gt;
https://github.com/tdaede/awcy&lt;br /&gt;
&lt;br /&gt;
https://github.com/tdaede/rd_tool&lt;br /&gt;
&lt;br /&gt;
==Command-line tools==&lt;br /&gt;
===submit_awcy.py===&lt;br /&gt;
Usage:&lt;br /&gt;
  DAALA_ROOT=./ submit_awcy.py --help&lt;br /&gt;
&lt;br /&gt;
You must have a secret_key file in the current directory, containing your key to access AreWeCompressedYet.&lt;br /&gt;
&lt;br /&gt;
By default, the prefix used for the run is your local branch name.&lt;br /&gt;
&lt;br /&gt;
==Internal tools==&lt;br /&gt;
* rd_server.py: the backend server process.&lt;br /&gt;
&lt;br /&gt;
* rd_tool.py: an alternate way to invoke the same tests as rd_server.py, it&#039;s no longer maintained and may be broken. This was used by previous versions of AWCY, and can only run one test at a time.&lt;br /&gt;
&lt;br /&gt;
* metrics_gather.sh: A script called by rd_tool.py, contains the command line parameters for all testable codecs.&lt;br /&gt;
&lt;br /&gt;
== Output Format ==&lt;br /&gt;
For an explanation of AWCY&#039;s metrics output format, see the &#039;&#039;&#039;[[RD_Curve_Data_Format]]&#039;&#039;&#039; page.&lt;br /&gt;
&lt;br /&gt;
==Maintenance==&lt;br /&gt;
The server is a CentOS 7 virtual machine running on catfish.xiph.org. There are few config file changes, so the CentOS machine should be easily upgradeable to get security fixes.&lt;br /&gt;
&lt;br /&gt;
===Daemons===&lt;br /&gt;
&lt;br /&gt;
====awcy====&lt;br /&gt;
The AWCY server has a unit file at &#039;&#039;&#039;/etc/systemd/system/awcy.service&#039;&#039;&#039;. It listens at &#039;&#039;&#039;localhost:3000&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
====rd_server====&lt;br /&gt;
The backend has a unit file at &#039;&#039;&#039;/etc/systemd/system/rdserver.service&#039;&#039;&#039;. It listens at &#039;&#039;&#039;localhost:4000&#039;&#039;&#039;. It currently has no authentication and should not be exposed to the Internet.&lt;br /&gt;
&lt;br /&gt;
====nginx====&lt;br /&gt;
NGINX is configured to be a TLS endpoint and &#039;&#039;&#039;proxy_pass&#039;&#039;&#039; to &#039;&#039;&#039;localhost:3000&#039;&#039;&#039;. Certificates are managed by the EFF&#039;s [https://certbot.eff.org certbot] and issued by [https://letsencrypt.org/ Let&#039;s Encrypt].&lt;br /&gt;
&lt;br /&gt;
====firewalld====&lt;br /&gt;
Firewalld is configured to allow ports 22, 80, and 443 only.&lt;br /&gt;
&lt;br /&gt;
====chrony====&lt;br /&gt;
Chrony is required to keep the system time in sync. Amazon Web Services signatures require an accurate system clock.&lt;br /&gt;
&lt;br /&gt;
====journald====&lt;br /&gt;
See AWCY logs with&lt;br /&gt;
  journalctl -u awcy.service&lt;br /&gt;
and&lt;br /&gt;
  journalctl -u rdserver.service&lt;br /&gt;
&lt;br /&gt;
===Directory Structure===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
-rw-rw-r--.  1 awcy awcy 3078 Aug 19 19:06 awcy_server.js&lt;br /&gt;
-rwxrwxr-x.  1 awcy awcy  169 Aug 17 23:43 create_test_branch.sh&lt;br /&gt;
drwxrwxr-x. 12 awcy awcy 4096 Aug 20 16:31 daala&lt;br /&gt;
-rw-------.  1 root root 1692 Aug 18 16:26 daala.pem&lt;br /&gt;
drwxrwxr-x. 14 awcy awcy 4096 Aug 19 15:02 daalatool&lt;br /&gt;
-rw-rw-r--.  1 awcy awcy 1079 Aug  7 19:31 LICENSE&lt;br /&gt;
drwxrwxr-x.  5 awcy awcy   48 Aug 17 23:47 node_modules&lt;br /&gt;
-rwxrwxr-x.  1 awcy awcy  124 Aug 18 17:22 nuke_branch.sh&lt;br /&gt;
drwxrwxr-x.  3 awcy awcy 4096 Aug 18 17:17 rd_tool&lt;br /&gt;
-rw-rw-r--.  1 awcy awcy   10 Aug  7 19:31 README.md&lt;br /&gt;
drwxrwxr-x. 25 awcy awcy 4096 Aug 20 19:49 runs&lt;br /&gt;
-rwxrwxr-x.  1 awcy awcy  148 Aug 17 23:43 run_video_test.sh&lt;br /&gt;
-rw-rw-r--.  1 awcy awcy   23 Aug 17 23:48 secret_key&lt;br /&gt;
-rwxrwxr-x.  1 awcy awcy 1212 Aug 19 14:27 submit_awcy.py&lt;br /&gt;
drwxrwxr-x.  2 awcy awcy 4096 Aug 19 21:33 www&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Files not part of github repo===&lt;br /&gt;
* node_modules: created by npm when you install the necessary node modules to run awcy_server.js.&lt;br /&gt;
* daala.pem: Private SSH key used to connect to the AWS instances.&lt;br /&gt;
* daalatool: A local clone of Daala, used for the contents of the tools/ directory.&lt;br /&gt;
* secret_key: File containing the secret key used on the main website.&lt;br /&gt;
* config.json: Contains IRC channel to connect to. TODO: put secret_key and other stuff in here too.&lt;br /&gt;
&lt;br /&gt;
* rd_tool/daala.pem: same file as in higher level directory&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
.ssh/config contents:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Host *&lt;br /&gt;
      	StrictHostKeyChecking no&lt;br /&gt;
        UserKnownHostsFile=/dev/null&lt;br /&gt;
        LogLevel ERROR&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Daala]]&lt;/div&gt;</summary>
		<author><name>Tdaede</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=AreWeCompressedYet&amp;diff=16546</id>
		<title>AreWeCompressedYet</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=AreWeCompressedYet&amp;diff=16546"/>
		<updated>2017-01-17T23:35:04Z</updated>

		<summary type="html">&lt;p&gt;Tdaede: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[https://arewecompressedyet.com/ AreWeCompressedYet] is an automatic service for compressing videos with AV1, VP9, Daala, Thor, and other codecs.&lt;br /&gt;
&lt;br /&gt;
It generates graphs using different metrics, to enable comparisons between different versions of codec source code.&lt;br /&gt;
&lt;br /&gt;
For bugs and enhancements, see its [https://github.com/tdaede/awcy/issues GitHub Issues] page.&lt;br /&gt;
&lt;br /&gt;
==Usage==&lt;br /&gt;
&lt;br /&gt;
===Submitting a Run===&lt;br /&gt;
&lt;br /&gt;
Choose the Active Runs tab, then the green &amp;quot;Submit New Job&amp;quot; button.&lt;br /&gt;
&lt;br /&gt;
[[File:Awcy submit new job.png|414px]]&lt;br /&gt;
&lt;br /&gt;
[[File:Awcy options.png|432px]]&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Run ID&#039;&#039;&#039; - A unique name for the run, prefilled with date.&lt;br /&gt;
* &#039;&#039;&#039;Git Commit Hash&#039;&#039;&#039; - The hash of the commit to be tested. This must be visible either on Gerrit or a specially installed personal repo. This is the &amp;quot;Commit&amp;quot; on Gerrit and not the Change-Id or tree hash.&lt;br /&gt;
* &#039;&#039;&#039;Codec&#039;&#039;&#039; - Selects both Codec and default options.&lt;br /&gt;
* &#039;&#039;&#039;Set&#039;&#039;&#039; - videos to run.&lt;br /&gt;
* &#039;&#039;&#039;Extra CLI options&#039;&#039;&#039; - Passed to encoder binary along with the defaults. Usually not needed.&lt;br /&gt;
* &#039;&#039;&#039;Extra build options&#039;&#039;&#039; - Passed to configure script. For AV1, pass flags to enable experiments here. (for example, --enable-experimental --enable-feature)&lt;br /&gt;
* &#039;&#039;&#039;IRC nick&#039;&#039;&#039; - Name to notify on #daala, also for sorting runs.&lt;br /&gt;
* &#039;&#039;&#039;Custom qualities&#039;&#039;&#039; - optional, specifies quantizers to use instead of the defaults.&lt;br /&gt;
&lt;br /&gt;
==Repos==&lt;br /&gt;
https://github.com/tdaede/awcy&lt;br /&gt;
&lt;br /&gt;
https://github.com/tdaede/rd_tool&lt;br /&gt;
&lt;br /&gt;
==Command-line tools==&lt;br /&gt;
===submit_awcy.py===&lt;br /&gt;
Usage:&lt;br /&gt;
  DAALA_ROOT=./ submit_awcy.py --help&lt;br /&gt;
&lt;br /&gt;
You must have a secret_key file in the current directory, containing your key to access AreWeCompressedYet.&lt;br /&gt;
&lt;br /&gt;
By default, the prefix used for the run is your local branch name.&lt;br /&gt;
&lt;br /&gt;
==Internal tools==&lt;br /&gt;
* rd_server.py: the backend server process.&lt;br /&gt;
&lt;br /&gt;
* rd_tool.py: an alternate way to invoke the same tests as rd_server.py, it&#039;s no longer maintained and may be broken. This was used by previous versions of AWCY, and can only run one test at a time.&lt;br /&gt;
&lt;br /&gt;
* metrics_gather.sh: A script called by rd_tool.py, contains the command line parameters for all testable codecs.&lt;br /&gt;
&lt;br /&gt;
== Output Format ==&lt;br /&gt;
For an explanation of AWCY&#039;s metrics output format, see the &#039;&#039;&#039;[[RD_Curve_Data_Format]]&#039;&#039;&#039; page.&lt;br /&gt;
&lt;br /&gt;
==Maintenance==&lt;br /&gt;
The server is a CentOS 7 virtual machine running on catfish.xiph.org. There are few config file changes, so the CentOS machine should be easily upgradeable to get security fixes.&lt;br /&gt;
&lt;br /&gt;
===Daemons===&lt;br /&gt;
&lt;br /&gt;
====awcy====&lt;br /&gt;
The AWCY server has a unit file at &#039;&#039;&#039;/etc/systemd/system/awcy.service&#039;&#039;&#039;. It listens at &#039;&#039;&#039;localhost:3000&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
====rd_server====&lt;br /&gt;
The backend has a unit file at &#039;&#039;&#039;/etc/systemd/system/rdserver.service&#039;&#039;&#039;. It listens at &#039;&#039;&#039;localhost:4000&#039;&#039;&#039;. It currently has no authentication and should not be exposed to the Internet.&lt;br /&gt;
&lt;br /&gt;
====nginx====&lt;br /&gt;
NGINX is configured to be a TLS endpoint and &#039;&#039;&#039;proxy_pass&#039;&#039;&#039; to &#039;&#039;&#039;localhost:3000&#039;&#039;&#039;. Certificates are managed by the EFF&#039;s [https://certbot.eff.org certbot] and issued by [https://letsencrypt.org/ Let&#039;s Encrypt].&lt;br /&gt;
&lt;br /&gt;
====firewalld====&lt;br /&gt;
Firewalld is configured to allow ports 22, 80, and 443 only.&lt;br /&gt;
&lt;br /&gt;
====chrony====&lt;br /&gt;
Chrony is required to keep the system time in sync. Amazon Web Services signatures require an accurate system clock.&lt;br /&gt;
&lt;br /&gt;
====journald====&lt;br /&gt;
See AWCY logs with&lt;br /&gt;
  journalctl -u awcy.service&lt;br /&gt;
and&lt;br /&gt;
  journalctl -u rdserver.service&lt;br /&gt;
&lt;br /&gt;
===Directory Structure===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
-rw-rw-r--.  1 awcy awcy 3078 Aug 19 19:06 awcy_server.js&lt;br /&gt;
-rwxrwxr-x.  1 awcy awcy  169 Aug 17 23:43 create_test_branch.sh&lt;br /&gt;
drwxrwxr-x. 12 awcy awcy 4096 Aug 20 16:31 daala&lt;br /&gt;
-rw-------.  1 root root 1692 Aug 18 16:26 daala.pem&lt;br /&gt;
drwxrwxr-x. 14 awcy awcy 4096 Aug 19 15:02 daalatool&lt;br /&gt;
-rw-rw-r--.  1 awcy awcy 1079 Aug  7 19:31 LICENSE&lt;br /&gt;
drwxrwxr-x.  5 awcy awcy   48 Aug 17 23:47 node_modules&lt;br /&gt;
-rwxrwxr-x.  1 awcy awcy  124 Aug 18 17:22 nuke_branch.sh&lt;br /&gt;
drwxrwxr-x.  3 awcy awcy 4096 Aug 18 17:17 rd_tool&lt;br /&gt;
-rw-rw-r--.  1 awcy awcy   10 Aug  7 19:31 README.md&lt;br /&gt;
drwxrwxr-x. 25 awcy awcy 4096 Aug 20 19:49 runs&lt;br /&gt;
-rwxrwxr-x.  1 awcy awcy  148 Aug 17 23:43 run_video_test.sh&lt;br /&gt;
-rw-rw-r--.  1 awcy awcy   23 Aug 17 23:48 secret_key&lt;br /&gt;
-rwxrwxr-x.  1 awcy awcy 1212 Aug 19 14:27 submit_awcy.py&lt;br /&gt;
drwxrwxr-x.  2 awcy awcy 4096 Aug 19 21:33 www&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Files not part of github repo===&lt;br /&gt;
* node_modules: created by npm when you install the necessary node modules to run awcy_server.js.&lt;br /&gt;
* daala.pem: Private SSH key used to connect to the AWS instances.&lt;br /&gt;
* daalatool: A local clone of Daala, used for the contents of the tools/ directory.&lt;br /&gt;
* secret_key: File containing the secret key used on the main website.&lt;br /&gt;
* config.json: Contains IRC channel to connect to. TODO: put secret_key and other stuff in here too.&lt;br /&gt;
&lt;br /&gt;
* rd_tool/daala.pem: same file as in higher level directory&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
.ssh/config contents:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Host *&lt;br /&gt;
      	StrictHostKeyChecking no&lt;br /&gt;
        UserKnownHostsFile=/dev/null&lt;br /&gt;
        LogLevel ERROR&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Daala]]&lt;/div&gt;</summary>
		<author><name>Tdaede</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=File:Awcy_options.png&amp;diff=16545</id>
		<title>File:Awcy options.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=File:Awcy_options.png&amp;diff=16545"/>
		<updated>2017-01-17T23:27:29Z</updated>

		<summary type="html">&lt;p&gt;Tdaede: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Licensing ==&lt;br /&gt;
{{PD}}&lt;/div&gt;</summary>
		<author><name>Tdaede</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=File:Awcy_submit_new_job.png&amp;diff=16544</id>
		<title>File:Awcy submit new job.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=File:Awcy_submit_new_job.png&amp;diff=16544"/>
		<updated>2017-01-17T23:24:59Z</updated>

		<summary type="html">&lt;p&gt;Tdaede: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Licensing ==&lt;br /&gt;
{{PD}}&lt;/div&gt;</summary>
		<author><name>Tdaede</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=AreWeCompressedYet&amp;diff=16532</id>
		<title>AreWeCompressedYet</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=AreWeCompressedYet&amp;diff=16532"/>
		<updated>2016-12-06T23:39:54Z</updated>

		<summary type="html">&lt;p&gt;Tdaede: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[https://arewecompressedyet.com/ AreWeCompressedYet] is an automatic service for compressing videos with AV1, VP9, Daala, Thor, and other codecs.&lt;br /&gt;
&lt;br /&gt;
It generates graphs using different metrics, to enable comparisons between different versions of codec source code.&lt;br /&gt;
&lt;br /&gt;
For bugs and enhancements, see its [https://github.com/tdaede/awcy/issues GitHub Issues] page.&lt;br /&gt;
&lt;br /&gt;
==Repos==&lt;br /&gt;
https://github.com/tdaede/awcy&lt;br /&gt;
&lt;br /&gt;
https://github.com/tdaede/rd_tool&lt;br /&gt;
&lt;br /&gt;
==Command-line tools==&lt;br /&gt;
===submit_awcy.py===&lt;br /&gt;
Usage:&lt;br /&gt;
  DAALA_ROOT=./ submit_awcy.py --help&lt;br /&gt;
&lt;br /&gt;
You must have a secret_key file in the current directory, containing your key to access AreWeCompressedYet.&lt;br /&gt;
&lt;br /&gt;
By default, the prefix used for the run is your local branch name.&lt;br /&gt;
&lt;br /&gt;
==Internal tools==&lt;br /&gt;
* rd_server.py: the backend server process.&lt;br /&gt;
&lt;br /&gt;
* rd_tool.py: an alternate way to invoke the same tests as rd_server.py, it&#039;s no longer maintained and may be broken. This was used by previous versions of AWCY, and can only run one test at a time.&lt;br /&gt;
&lt;br /&gt;
* metrics_gather.sh: A script called by rd_tool.py, contains the command line parameters for all testable codecs.&lt;br /&gt;
&lt;br /&gt;
== Output Format ==&lt;br /&gt;
For an explanation of AWCY&#039;s metrics output format, see the &#039;&#039;&#039;[[RD_Curve_Data_Format]]&#039;&#039;&#039; page.&lt;br /&gt;
&lt;br /&gt;
==Maintenance==&lt;br /&gt;
The server is a CentOS 7 virtual machine running on catfish.xiph.org. There are few config file changes, so the CentOS machine should be easily upgradeable to get security fixes.&lt;br /&gt;
&lt;br /&gt;
===Daemons===&lt;br /&gt;
&lt;br /&gt;
====awcy====&lt;br /&gt;
The AWCY server has a unit file at &#039;&#039;&#039;/etc/systemd/system/awcy.service&#039;&#039;&#039;. It listens at &#039;&#039;&#039;localhost:3000&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
====rd_server====&lt;br /&gt;
The backend has a unit file at &#039;&#039;&#039;/etc/systemd/system/rdserver.service&#039;&#039;&#039;. It listens at &#039;&#039;&#039;localhost:4000&#039;&#039;&#039;. It currently has no authentication and should not be exposed to the Internet.&lt;br /&gt;
&lt;br /&gt;
====nginx====&lt;br /&gt;
NGINX is configured to be a TLS endpoint and proxy_pass to localhost:3000. Certificates are managed by certbot and issued by Let&#039;s Encrypt.&lt;br /&gt;
&lt;br /&gt;
====firewalld====&lt;br /&gt;
Firewalld is configured to allow ports 22, 80, and 443 only.&lt;br /&gt;
&lt;br /&gt;
====chrony====&lt;br /&gt;
Chrony is required to keep the system time in sync. Amazon Web Services signatures require an accurate system clock.&lt;br /&gt;
&lt;br /&gt;
====journald====&lt;br /&gt;
See AWCY logs with&lt;br /&gt;
  journalctl -u awcy.service&lt;br /&gt;
and&lt;br /&gt;
  journalctl -u rdserver.service&lt;br /&gt;
&lt;br /&gt;
===Directory Structure===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
-rw-rw-r--.  1 awcy awcy 3078 Aug 19 19:06 awcy_server.js&lt;br /&gt;
-rwxrwxr-x.  1 awcy awcy  169 Aug 17 23:43 create_test_branch.sh&lt;br /&gt;
drwxrwxr-x. 12 awcy awcy 4096 Aug 20 16:31 daala&lt;br /&gt;
-rw-------.  1 root root 1692 Aug 18 16:26 daala.pem&lt;br /&gt;
drwxrwxr-x. 14 awcy awcy 4096 Aug 19 15:02 daalatool&lt;br /&gt;
-rw-rw-r--.  1 awcy awcy 1079 Aug  7 19:31 LICENSE&lt;br /&gt;
drwxrwxr-x.  5 awcy awcy   48 Aug 17 23:47 node_modules&lt;br /&gt;
-rwxrwxr-x.  1 awcy awcy  124 Aug 18 17:22 nuke_branch.sh&lt;br /&gt;
drwxrwxr-x.  3 awcy awcy 4096 Aug 18 17:17 rd_tool&lt;br /&gt;
-rw-rw-r--.  1 awcy awcy   10 Aug  7 19:31 README.md&lt;br /&gt;
drwxrwxr-x. 25 awcy awcy 4096 Aug 20 19:49 runs&lt;br /&gt;
-rwxrwxr-x.  1 awcy awcy  148 Aug 17 23:43 run_video_test.sh&lt;br /&gt;
-rw-rw-r--.  1 awcy awcy   23 Aug 17 23:48 secret_key&lt;br /&gt;
-rwxrwxr-x.  1 awcy awcy 1212 Aug 19 14:27 submit_awcy.py&lt;br /&gt;
drwxrwxr-x.  2 awcy awcy 4096 Aug 19 21:33 www&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Files not part of github repo===&lt;br /&gt;
* node_modules: created by npm when you install the necessary node modules to run awcy_server.js.&lt;br /&gt;
* daala.pem: Private SSH key used to connect to the AWS instances.&lt;br /&gt;
* daalatool: A local clone of Daala, used for the contents of the tools/ directory.&lt;br /&gt;
* secret_key: File containing the secret key used on the main website.&lt;br /&gt;
* config.json: Contains IRC channel to connect to. TODO: put secret_key and other stuff in here too.&lt;br /&gt;
&lt;br /&gt;
* rd_tool/daala.pem: same file as in higher level directory&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
.ssh/config contents:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Host *&lt;br /&gt;
      	StrictHostKeyChecking no&lt;br /&gt;
        UserKnownHostsFile=/dev/null&lt;br /&gt;
        LogLevel ERROR&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Daala]]&lt;/div&gt;</summary>
		<author><name>Tdaede</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=AreWeCompressedYet&amp;diff=16531</id>
		<title>AreWeCompressedYet</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=AreWeCompressedYet&amp;diff=16531"/>
		<updated>2016-12-06T23:33:52Z</updated>

		<summary type="html">&lt;p&gt;Tdaede: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[https://arewecompressedyet.com/ AreWeCompressedYet] is an automatic service for compressing videos with Daala and other codecs.&lt;br /&gt;
&lt;br /&gt;
It generates graphs using different metrics, to enable comparisons between different versions of the Daala source code.&lt;br /&gt;
&lt;br /&gt;
For bugs and enhancements, see its [https://github.com/tdaede/awcy/issues GitHub Issues] page.&lt;br /&gt;
&lt;br /&gt;
==Repos==&lt;br /&gt;
https://github.com/tdaede/awcy&lt;br /&gt;
&lt;br /&gt;
https://github.com/tdaede/rd_tool&lt;br /&gt;
&lt;br /&gt;
==Command-line tools==&lt;br /&gt;
===submit_awcy.py===&lt;br /&gt;
Usage:&lt;br /&gt;
  DAALA_ROOT=./ submit_awcy.py --help&lt;br /&gt;
&lt;br /&gt;
You must have a secret_key file in the current directory, containing your key to access AreWeCompressedYet.&lt;br /&gt;
&lt;br /&gt;
By default, the prefix used for the run is your local branch name.&lt;br /&gt;
&lt;br /&gt;
==Internal tools==&lt;br /&gt;
* rd_tool.py:  is the main script that controls the AWCY machines and gathers the results. It has a similar interface to rd_collect.sh in the Daala repository.&lt;br /&gt;
&lt;br /&gt;
* metrics_gather.sh: A script called by rd_tool.py, contains the command line parameters for all testable codecs.&lt;br /&gt;
&lt;br /&gt;
== Output Format ==&lt;br /&gt;
For an explanation of AWCY&#039;s metrics output format, see the &#039;&#039;&#039;[[RD_Curve_Data_Format]]&#039;&#039;&#039; page.&lt;br /&gt;
&lt;br /&gt;
==Machine==&lt;br /&gt;
The server is a CentOS 7 virtual machine running on catfish.xiph.org. There are few config file changes, so the CentOS machine should be easily upgradeable to get security fixes.&lt;br /&gt;
&lt;br /&gt;
===Daemons===&lt;br /&gt;
&lt;br /&gt;
====awcy====&lt;br /&gt;
The AWCY server has a unit file at &#039;&#039;&#039;/etc/systemd/system/awcy.service&#039;&#039;&#039;. It listens at &#039;&#039;&#039;localhost:3000&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
====nginx====&lt;br /&gt;
NGINX is configured to be a TLS endpoint and proxy_pass to localhost:3000.&lt;br /&gt;
&lt;br /&gt;
====firewalld====&lt;br /&gt;
&lt;br /&gt;
====chrony====&lt;br /&gt;
Chrony is required to keep the system time in sync. Amazon Web Services signatures require an accurate system clock.&lt;br /&gt;
&lt;br /&gt;
====journald====&lt;br /&gt;
See AWCY logs with&lt;br /&gt;
  journalctl -u awcy.service&lt;br /&gt;
&lt;br /&gt;
===Directory Structure===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
-rw-rw-r--.  1 awcy awcy 3078 Aug 19 19:06 awcy_server.js&lt;br /&gt;
-rwxrwxr-x.  1 awcy awcy  169 Aug 17 23:43 create_test_branch.sh&lt;br /&gt;
drwxrwxr-x. 12 awcy awcy 4096 Aug 20 16:31 daala&lt;br /&gt;
-rw-------.  1 root root 1692 Aug 18 16:26 daala.pem&lt;br /&gt;
drwxrwxr-x. 14 awcy awcy 4096 Aug 19 15:02 daalatool&lt;br /&gt;
-rw-rw-r--.  1 awcy awcy 1079 Aug  7 19:31 LICENSE&lt;br /&gt;
drwxrwxr-x.  5 awcy awcy   48 Aug 17 23:47 node_modules&lt;br /&gt;
-rwxrwxr-x.  1 awcy awcy  124 Aug 18 17:22 nuke_branch.sh&lt;br /&gt;
drwxrwxr-x.  3 awcy awcy 4096 Aug 18 17:17 rd_tool&lt;br /&gt;
-rw-rw-r--.  1 awcy awcy   10 Aug  7 19:31 README.md&lt;br /&gt;
drwxrwxr-x. 25 awcy awcy 4096 Aug 20 19:49 runs&lt;br /&gt;
-rwxrwxr-x.  1 awcy awcy  148 Aug 17 23:43 run_video_test.sh&lt;br /&gt;
-rw-rw-r--.  1 awcy awcy   23 Aug 17 23:48 secret_key&lt;br /&gt;
-rwxrwxr-x.  1 awcy awcy 1212 Aug 19 14:27 submit_awcy.py&lt;br /&gt;
drwxrwxr-x.  2 awcy awcy 4096 Aug 19 21:33 www&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Files not part of github repo===&lt;br /&gt;
* node_modules: created by npm when you install the necessary node modules to run awcy_server.js.&lt;br /&gt;
* daala.pem: Private SSH key used to connect to the AWS instances.&lt;br /&gt;
* daalatool: A local clone of Daala, used for the contents of the tools/ directory.&lt;br /&gt;
* secret_key: File containing the secret key used on the main website.&lt;br /&gt;
* config.json: Contains IRC channel to connect to. TODO: put secret_key and other stuff in here too.&lt;br /&gt;
&lt;br /&gt;
* rd_tool/daala.pem: same file as in higher level directory&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
.ssh/config contents:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Host *&lt;br /&gt;
      	StrictHostKeyChecking no&lt;br /&gt;
        UserKnownHostsFile=/dev/null&lt;br /&gt;
        LogLevel ERROR&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Daala]]&lt;/div&gt;</summary>
		<author><name>Tdaede</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=AreWeCompressedYet/Sets&amp;diff=16530</id>
		<title>AreWeCompressedYet/Sets</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=AreWeCompressedYet/Sets&amp;diff=16530"/>
		<updated>2016-12-06T23:31:38Z</updated>

		<summary type="html">&lt;p&gt;Tdaede: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Sets are enumerated in the [https://github.com/tdaede/rd_tool/blob/master/sets.json sets.json] file in the rd_tool repository. This page also provides a brief summary of the test sets.&lt;br /&gt;
&lt;br /&gt;
Downloads are available at the bottom of [https://media.xiph.org/video/derf/ Derf&#039;s test video page].&lt;br /&gt;
&lt;br /&gt;
* objective-1-fast - Official test set.&lt;br /&gt;
* objective-1.1 - Slow version of official test set. Has 4k video, and twice as many sequences.&lt;br /&gt;
* subset1/2/3/4 - Official still image sets.&lt;br /&gt;
* objective-1-smc - objective-1-fast, but monochrome and only 30 frames. Useful for testing.&lt;br /&gt;
* video-1-short - Deprecated collection of 30 frame video clips @ 720p or below&lt;br /&gt;
* video-hd-1, video-hd-2, video-hd-3 - Deprecated collection similar to video-1-short, but up to 1080p&lt;br /&gt;
* length-test-1 - One 540p video clip at 15, 30, 60, 120, and 240 frames. Useful for debugging.&lt;br /&gt;
* netflix-4k-1 - All of the Netflix 4k clips at 10 bit, 120 frame length. Not recommended to use as it&#039;s painfully slow.&lt;br /&gt;
* netflix-2k-1 - Same, but scaled to 2k.&lt;br /&gt;
* twitch-1 - All twitch clips, 120 frame length, 4:4:4 YUV.&lt;br /&gt;
* vc-360p-1, vc-720p-1 - Video conferencing clips, 300 frames and 250 frames respectively. Useful for testing rate control.&lt;br /&gt;
* screenshots - A bunch of screenshots of software taken from Wikimedia.&lt;/div&gt;</summary>
		<author><name>Tdaede</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=AreWeCompressedYet/Sets&amp;diff=16529</id>
		<title>AreWeCompressedYet/Sets</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=AreWeCompressedYet/Sets&amp;diff=16529"/>
		<updated>2016-12-06T22:40:19Z</updated>

		<summary type="html">&lt;p&gt;Tdaede: Created page with &amp;quot;Sets are enumerated in the [https://github.com/tdaede/rd_tool/blob/master/sets.json sets.json] file in the rd_tool repository. This page also provides a brief summary of the t...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Sets are enumerated in the [https://github.com/tdaede/rd_tool/blob/master/sets.json sets.json] file in the rd_tool repository. This page also provides a brief summary of the test sets.&lt;br /&gt;
&lt;br /&gt;
* objective-1-fast - Official test set.&lt;br /&gt;
* objective-1.1 - Slow version of official test set. Has 4k video, and twice as many sequences.&lt;br /&gt;
* subset1/2/3/4 - Official still image sets.&lt;br /&gt;
* objective-1-smc - objective-1-fast, but monochrome and only 30 frames. Useful for testing.&lt;br /&gt;
* video-1-short - Deprecated collection of 30 frame video clips @ 720p or below&lt;br /&gt;
* video-hd-1, video-hd-2, video-hd-3 - Deprecated collection similar to video-1-short, but up to 1080p&lt;br /&gt;
* length-test-1 - One 540p video clip at 15, 30, 60, 120, and 240 frames. Useful for debugging.&lt;br /&gt;
* netflix-4k-1 - All of the Netflix 4k clips at 10 bit, 120 frame length. Not recommended to use as it&#039;s painfully slow.&lt;br /&gt;
* netflix-2k-1 - Same, but scaled to 2k.&lt;br /&gt;
* twitch-1 - All twitch clips, 120 frame length, 4:4:4 YUV.&lt;br /&gt;
* vc-360p-1, vc-720p-1 - Video conferencing clips, 300 frames and 250 frames respectively. Useful for testing rate control.&lt;br /&gt;
* screenshots - A bunch of screenshots of software taken from Wikimedia.&lt;/div&gt;</summary>
		<author><name>Tdaede</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=Games_that_use_Vorbis&amp;diff=16380</id>
		<title>Games that use Vorbis</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=Games_that_use_Vorbis&amp;diff=16380"/>
		<updated>2016-06-03T06:12:26Z</updated>

		<summary type="html">&lt;p&gt;Tdaede: add a couple of popular games from my steam directory&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The following games use [[Vorbis]], most frequently for their in-game music or sound effects:&lt;br /&gt;
&lt;br /&gt;
* All Games By [http://www.reflexive.com/index.php?CAT=Search&amp;amp;SEARCH=dev%3AReflexive+Entertainment&amp;amp;PAGE=GameList Reflexive Entertainment].&lt;br /&gt;
&lt;br /&gt;
* [http://www.mobygames.com/game/windows/007-nightfire 007: Nightfire]: Uses Ogg Vorbis for background soundtrack.&lt;br /&gt;
&lt;br /&gt;
* [http://www.asciisector.net/ Ascii Sector]: Space combat/exploration/trading game.  Uses Ogg Vorbis for music.&lt;br /&gt;
&lt;br /&gt;
* [http://www.ageofconan.com/ Age of Conan — Hyborian Adventures]: Uses Ogg Vorbis for all audio.&lt;br /&gt;
&lt;br /&gt;
* [http://www.americasarmy.com/ America’s Army]: Uses Ogg Vorbis for main theme.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amnesiagame.com/ Amnesia: The Dark Descent]: Uses Ogg Vorbis for all audio.&lt;br /&gt;
&lt;br /&gt;
* [http://assault.cubers.net/ AssaultCube]: A free fast paced first-person shooter with little hardware requirements for Windows, Linux and OS X. Uses Ogg Vorbis for all game sounds and music.&lt;br /&gt;
&lt;br /&gt;
* [http://www.lionhead.com/bw2/ Black &amp;amp; White 2]: Uses Ogg Vorbis for music.&lt;br /&gt;
&lt;br /&gt;
* [http://www.pyrogon.com/games/candycruncher/ Candy Cruncher]: This cute puzzle game from Brian Hook’s company, Pyrogon, uses Vorbis for the addictive music you hear while you race the clock.&lt;br /&gt;
&lt;br /&gt;
* [http://www.callofcthulhu.com/ Call of Cthulhu] is a first-person horror game that combines intense action and adventure elements. It uses Ogg Vorbis for music and speech.&lt;br /&gt;
&lt;br /&gt;
* [http://www.mobygames.com/game/windows/catechumen Catechumen] is a Christian-themed FPS that uses Ogg Vorbis.&lt;br /&gt;
&lt;br /&gt;
* [http://www.civilization5.com/ Civilization V] is a turn-based strategy game that uses Ogg Vorbis for music.&lt;br /&gt;
&lt;br /&gt;
* [http://www.atari.com/crashday/ Crashday]: Stunt racing game, developed by independent German studio Moon Byte. Uses Ogg Vorbis for music.&lt;br /&gt;
&lt;br /&gt;
* [http://buenavistagames.go.com/product/chickenLittlePC.html Chicken Litte]: Adventure game for children inspired by the motion picture in PC edition uses Vorbis for dialogs and music. (not sure if sound effects too)&lt;br /&gt;
&lt;br /&gt;
* [http://www.cossacks2.de/ Cossacks 2]: “Cossacks II: Napoleonic Wars” is a sequel of “Cossacks: European Wars”. Ogg Vorbis 1.0 files are in \data\music\&lt;br /&gt;
&lt;br /&gt;
* [http://www.darwinia.co.uk/ Darwinia]: The second title from Indy developer Introversion Software. Darwinia is a stylised retro — Tron meets Cannon Fodder. It uses Vorbis for all in game sound effects and music.&lt;br /&gt;
&lt;br /&gt;
* [http://www.introversion.co.uk/defcon/ DEFCON]: The third title from Introversion Software.  Uses Vorbis for music, effects, everything, like Darwinia.&lt;br /&gt;
&lt;br /&gt;
* [http://devilmaycry.com/ Devil May Cry 4] (for the PC, at least): Uses (occasionally multichannel) Ogg Vorbis for ingame and cutscene music.&lt;br /&gt;
&lt;br /&gt;
* [http://www.eidos.co.uk/gss/dxiw/ Deus Ex: Invisible War] by Ion Storm/Eidos: Uses Ogg Vorbis for music and voice (and possibly for sound fx too).&lt;br /&gt;
&lt;br /&gt;
* [http://diablo3.com Diablo III] uses Vorbis for audio.&lt;br /&gt;
&lt;br /&gt;
* [http://www.idsoftware.com/games/doom/doom3/ DOOM 3]:  The latest version of this famous first person shooter game from id software uses Vorbis for the theme music as well as their ambient and game sounds.&lt;br /&gt;
&lt;br /&gt;
* [http://mobygames.com/game/sheet/p,3/gameId,6505/ Duke Nukem: Manhattan Project]: This game from 3D Realms was released in 2002 and used Vorbis for their music. (Official website is down, using  Mobygames link)&lt;br /&gt;
&lt;br /&gt;
* [http://www.popcap.com/games/free/dynomite Dynomite]: Puzzle Bobble/Bust A Move clone for Windows by PopCap Games, with mouse control. Uses Ogg Vorbis for nearly all sound effects.&lt;br /&gt;
&lt;br /&gt;
* [http://en.wikipedia.org/wiki/Eschalon:_Book_I Eschalon]: A classic-style roleplaying game, for Windows, Mac, and Linux.  Music is in &#039;&#039;Ogg Vorbis&#039;&#039; format.&lt;br /&gt;
&lt;br /&gt;
* [http://www.mobygames.com/game/enclave/ Enclave] by Starbreeze/Black Label Games: Uses Ogg Vorbis for music (and possibly for sound fx and voice too).&lt;br /&gt;
&lt;br /&gt;
* [http://www.eve-online.com EVE Online] by CCP Games, the Icelandic-homed space-based single-shard persistent world game uses Ogg Vorbis for its music.&lt;br /&gt;
&lt;br /&gt;
* [http://www.lionhead.com/fabletlc/ Fable: The Lost Chapters]: Uses Ogg Vorbis for music and cutscenes (Ancient libVorbis version, 1.0 RC2).&lt;br /&gt;
&lt;br /&gt;
* [http://farcry.ubi.com/ FarCry] by Crytek: uses Ogg Vorbis for music and effects.&lt;br /&gt;
&lt;br /&gt;
* [http://www.freedom-fighters.co.uk/ Freedom Fighters] by IO Interactive: String search reveals “libVorbis I 20011217” in freedom.exe.&lt;br /&gt;
&lt;br /&gt;
* [http://www.siriusgames.dk/index.php?pageid=67 Gangland] by MediaMobsters: Uses Ogg Vorbis for music and cutscenes (Data\streams\). Encoded with Xiph.Org libVorbis I 20020717. Decoder library: FMOD 3.71.&lt;br /&gt;
&lt;br /&gt;
* [http://www.rockstargames.com/vicecity/ Grand Theft Auto: Vice City] by Rockstar Games/Rockstar North uses Ogg Vorbis to store music, radio, ambient sounds, police messages and cutscene audio. Players can also store their custom tracks (accessible in-game via the “User Track Player” radio station) in Ogg Vorbis.&lt;br /&gt;
&lt;br /&gt;
* [http://www.rockstargames.com/sanandreas/ Grand Theft Auto: San Andreas] by Rockstar Games/Rockstar North uses Ogg Vorbis to store music, radio, ambient sounds, police messages and cutscene audio. Players can also store their custom tracks (accessible in-game via the “User Track Player” radio station) in Ogg Vorbis.&lt;br /&gt;
&lt;br /&gt;
* [http://www.gothic3.com/ Gothic 3] by Piranha Bytes: Vorbis is used in the ogg container for everything (music, speech, effects) except of the intro video. For example: Music @ 256 kb/s, Speech @ 86 kb/s. About 18 hours of speech compressed to 700 MB.&lt;br /&gt;
&lt;br /&gt;
* [http://www.guiltygearx2reload.com/ Guilty Gear XX]: The PC version, at least, uses Ogg Vorbis for all the music.&lt;br /&gt;
&lt;br /&gt;
* [http://www.guitarherogame.com/gh2/ Guitar Hero II] by Red Octane (Activision), XBox360 platform only (multichannel Vorbis with 5 or 6 channels per song)&lt;br /&gt;
&lt;br /&gt;
* [http://halo.bungie.org/ Halo]: Mac and PC versions of Halo use Ogg Vorbis for all audio, it seems. The Xiph license and dynamically linked libraries of Ogg and Vorbis are included in the Halo directory. XBox version does not use Ogg Vorbis.&lt;br /&gt;
&lt;br /&gt;
* [http://harrypotter.ea.com/cofs/index.html Harry Potter II (Chamber of Secrets)]: This is unsubstantiated, it was reported on one of the vorbis mailing lists, but there is little evidence either way on this title.  EA has been supportive of Vorbis though, so it’s not entirely impossible.  If anyone can give us a yay or nay on this, please do.&lt;br /&gt;
&lt;br /&gt;
* [http://www.mightandmagicgame.com/HeroesV/ Heroes of Might and Magic V]: Uses Vorbis for audio and Theora for video.&lt;br /&gt;
&lt;br /&gt;
* [http://www.eidosinteractive.com/games/info.html?gmid=118 Hitman 2]: uses Vorbis. (PC only or consoles too?)&lt;br /&gt;
&lt;br /&gt;
* [http://www.codemasters.com/igi2/front.htm IGI2: Covert Strike]: Not a Norwegian first-person shooter.&lt;br /&gt;
&lt;br /&gt;
* [http://www.inthegroove.com In The Groove]: The premier dance game created by [http://www.roxorgames.com Roxor Games, Inc.] Uses Vorbis for all of the in-game music.&lt;br /&gt;
&lt;br /&gt;
* [http://www.agdinteractive.com/games/kq1/ King&#039;s Quest I]: King&#039;s Quest I: Quest for the Crown (Enchanced) is a fan remake of the original Sierra classic.  Uses Ogg Vorbis for sound and Ogg Theora for cutscene movies.&lt;br /&gt;
&lt;br /&gt;
* [http://www.p3int.com/KULT/ KULT Heretic Kingdoms] by 3D People/Project 3 Interactive: Uses Vorbis (1.0) for music, voice and sound effects.&lt;br /&gt;
&lt;br /&gt;
* Recent Legacy of Kain Games: On the PC, both &amp;lt;b&amp;gt;Soul Reaver 2&amp;lt;/b&amp;gt; and &amp;lt;b&amp;gt;Blood Omen 2&amp;lt;/b&amp;gt; by Crystal Dynamics/Eidos use Ogg Vorbis for music and sound effects. (Source: [http://www.thelostworlds.net/FAQ.HTML#ogg])&lt;br /&gt;
&lt;br /&gt;
* [http://www.ncsoft.net/eng/ncgames/lineage2_intro.asp Lineage II]: NCSoft Corporation’s 3D MMORPG Lineage II uses Ogg Vorbis for its music. They use 1.0beta3, though.&lt;br /&gt;
&lt;br /&gt;
* [http://www.liveforspeed.net/ Live for Speed]: Online racing simulator uses Ogg for all audio and sound effects.&lt;br /&gt;
&lt;br /&gt;
* [http://www.mobygames.com/game/lock-on-modern-air-combat Lock On: Modern Air Combat]: Published by Ubisoft; CD-ROM contains over 1800 Ogg Vorbis files for speech.&lt;br /&gt;
&lt;br /&gt;
* [http://www.mafia-game.com/ Mafia: The City Of Lost Heaven]: Not sure about any console version, but PC version is reported to use Ogg Vorbis.&lt;br /&gt;
&lt;br /&gt;
* [http://www.popcap.com/games/magicmatch Magic Match]: A very elaborate &amp;quot;Match 3&amp;quot; casual game that uses Ogg Vorbis for its audio.&lt;br /&gt;
&lt;br /&gt;
* [http://www.capcom.co.jp/rockmanx8/ Mega Man X8]: The PC version of Mega Man X8 makes use of Vorbis for music and dialogue during cutscenes.&lt;br /&gt;
&lt;br /&gt;
* [http://www.mobygames.com/game/gamecube/metal-gear-solid-the-twin-snakes Metal Gear Solid: The Twin Snakes]: Uses Ogg Vorbis for all speech in the game.&lt;br /&gt;
&lt;br /&gt;
* [http://minecraft.net Minecraft]: Uses Ogg Vorbis for music and sound effects.&lt;br /&gt;
&lt;br /&gt;
* MotoGP: This motorcycle racing sim uses Vorbis for the music and allows players to drop their own .ogg files into the music dir to listen to them in-game.&lt;br /&gt;
&lt;br /&gt;
* [http://www.mystrevelation.com/ Myst IV: Revelation]: Fourth game in the Myst series. Uses Ogg Vorbis for all music, speech and sound effects.&lt;br /&gt;
&lt;br /&gt;
* [http://www.mystvgame.com/ Myst V: End of Ages]: Fifth and final game in the Myst series. Uses Ogg Vorbis for all music, speech and sound effects.&lt;br /&gt;
&lt;br /&gt;
* Nascar Racing Games from Papyrus: They had this to say about their decision and experience:&lt;br /&gt;
  &lt;br /&gt;
  “We’re using a lot of spoken audio in this title (a first for us) and&lt;br /&gt;
  your codec has allowed us to reduce more than 350MB of audio data to&lt;br /&gt;
  about 40MB, a huge savings of memory and disk space! We are very&lt;br /&gt;
  impressed.” —Tom Faiano, Producer 	 &lt;br /&gt;
 &lt;br /&gt;
  “Incorprating Ogg Vorbis into our codebase was quite painless, and in the&lt;br /&gt;
  end, even refreshing. No fuss no muss. Thank you for your efforts!”&lt;br /&gt;
  —Bill Farquhar, Soundguy du jour&lt;br /&gt;
&lt;br /&gt;
* [http://www.nexuiz.com/ Nexuiz], a fast-paced FPS with roots in Quake I, uses Vorbis for background music. The minstagib mod uses Vorbis for all of its sound.&lt;br /&gt;
&lt;br /&gt;
* [http://www.codemasters.com/flashpoint/ Operation Flashpoint]: This highly successful military simulation/action game from Codemasters uses Vorbis for the in-game music.&lt;br /&gt;
&lt;br /&gt;
* [http://www.orunner.com/ Ostrich Runner] by Geleos: This funny Russian cartoon-style game for kids and not only kids uses Ogg Vorbis for sound, speech and music.&lt;br /&gt;
&lt;br /&gt;
* [http://www.ysagoon.com/glob2/ Globulation 2]: State of the art GPL-ed strategy game!&lt;br /&gt;
&lt;br /&gt;
* [http://www.penumbragame.com Penumbra: Black Plague]: Uses Ogg Vorbis for all audio.&lt;br /&gt;
&lt;br /&gt;
* [http://www.psobb.com/index.php Phantasy Star Online: Blue Burst]:  Uses Ogg Vorbis for music, stored in data/ogg.&lt;br /&gt;
&lt;br /&gt;
* [http://www.gopostal.com/ Postal 2]: Probably not the game we want to use to showcase Vorbis, but it’s being used in this Unreal-engine-powered ultra-violent game.&lt;br /&gt;
&lt;br /&gt;
* [http://www.praetoriansgame.com/ Praetorians]: This very successful game from Pyro Studios uses Vorbis for its music.&lt;br /&gt;
&lt;br /&gt;
* [http://www.psychonauts.com/ Psychonauts]: Has vorbis.dll and vorbisfile.dll.&lt;br /&gt;
&lt;br /&gt;
* [http://www.quake4game.com/ Quake 4]: Quake 4 is the fourth title in the series of Quake FPS computer games. All game music, speech and sound effects make use of Vorbis.&lt;br /&gt;
&lt;br /&gt;
* [http://www.restricted-area.net/ Restricted Area]: by Master Creating uses Ogg Vorbis for music and VP3 for videos.&lt;br /&gt;
&lt;br /&gt;
* Ricochet: An addictive version of Break out.&lt;br /&gt;
&lt;br /&gt;
* [http://www.rockband.com/ Rock Band]: XBox360 version uses the same type of multichannel Vorbis files as Guitar Hero II, but with more channels to handle the drums and vocals separately.&lt;br /&gt;
&lt;br /&gt;
* [http://www.rockmanager.net/ Rock Manager]: Vorbis is used in this “new rock ’n roll management sim for PC from Pan Vision and Monsterland”.&lt;br /&gt;
&lt;br /&gt;
* [http://www.sacred2.com/ Sacred 2] by Studio II: uses multichannel(!) Ogg Vorbis for music, speech and sound effects.&lt;br /&gt;
&lt;br /&gt;
* [http://www.s2games.com/savage/ Savage]: This S2 Games “RTSS” hybrid genre game uses Vorbis for all the in-game music.&lt;br /&gt;
&lt;br /&gt;
* [http://www.serioussam.com/se/ Serious Sam: The Second Encounter]: uses Vorbis for the music, although it is slightly obfuscated so as not to be easily playable by standard Ogg Vorbis players.&lt;br /&gt;
&lt;br /&gt;
* [http://www.serioussam2.com/ Serious Sam 2]: not only uses Vorbis for the music but even Theora for the videos&lt;br /&gt;
&lt;br /&gt;
* [http://www.totalwar.com/community/warlord.htm Shogun: Total War]: Shogun uses Vorbis, but only to distribute — everything is decompressed to wav during the install.&lt;br /&gt;
 &lt;br /&gt;
* [http://www.singles2.com/englisch/index.html Singles 2]: Uses ogg vorbis for sound&lt;br /&gt;
&lt;br /&gt;
* [http://www.lart.pl/en/portfolioItem.php?id=91 Ski Jumping 2004]: A commerical game that accurately models the activity of ski jumping. The game also contains over 700 Ogg Vorbis files.&lt;br /&gt;
&lt;br /&gt;
* [http://mobygames.com/game/sheet/p,3/gameId,3453/ Star Trek: Away Team]: Vorbis is used for all sound in the game — music, voiceover and SFX. This squad-based strategy game is set in the Star Trek Next Generation universe. (Official website is down, using Mobygames link)&lt;br /&gt;
&lt;br /&gt;
* [http://starcraft2.com/ StarCraft II]: Uses Vorbis for audio&lt;br /&gt;
&lt;br /&gt;
* StoneLoops! Of Jurassica ([http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=315210057&amp;amp;mt=8 Apple iTunes App Store link]): Colorful puzzle game for the iPhone/iPod Touch that uses Ogg Vorbis for audio.&lt;br /&gt;
&lt;br /&gt;
* [http://supertux.lethargik.org/ Super Tux]: Uses Vorbis for music.&lt;br /&gt;
&lt;br /&gt;
* [http://www.splintercell3.com/ Tom Clancy’s Splinter Cell Chaos Theory]: .LS0 files are in fact Ogg Vorbis files.&lt;br /&gt;
&lt;br /&gt;
* [http://www.lucasarts.com/games/swrepubliccommando/ Star Wars Republic Commando]: Vorbis is used in the ambient and game music in this latest action game from LucasArts.&lt;br /&gt;
&lt;br /&gt;
* [http://www.reflexive.net/index.php?PAGE=game_detail&amp;amp;AID=30 Swarm]: A fun little arcade shooter.&lt;br /&gt;
&lt;br /&gt;
* [http://www.swat4.com/ SWAT 4]: SWAT 4 uses Ogg Vorbis for audio files.&lt;br /&gt;
&lt;br /&gt;
* [http://www.croteam.com/talosprinciple/ The Talos Principle] is a first-person puzzle game that uses Ogg Vorbis for music.&lt;br /&gt;
&lt;br /&gt;
* [http://www.there.com/ There]: uses both Ogg Vorbis for the sound effects and Ogg Speex for realtime group voice chat, a first for an immersive consumer-oriented world. Voice has become a very popular part of our product! ** posted by [http://david.weekly.org David Weekly], a There developer.&lt;br /&gt;
&lt;br /&gt;
* [http://www.wesnoth.org The Battle for Wesnoth]: uses Ogg Vorbis for it&#039;s music and for most of it&#039;s sounds.&lt;br /&gt;
&lt;br /&gt;
* [http://www.riddickgame.com/ The Chronicles of Riddick: Escape From Butcher’s Bay (Director’s Cut)]: Uses Vorbis for all audio and Theora for cutscenes.&lt;br /&gt;
&lt;br /&gt;
* [http://www.thethinggames.com/ The Thing]: Uses Vorbis&lt;br /&gt;
&lt;br /&gt;
  “The original multilanguage distro took three CDs, and went down to &lt;br /&gt;
  only one after I converted all wavs to oggs. Nifty :) Sadly enough, &lt;br /&gt;
  marketing decided to not have one language per CD anyway (probably to &lt;br /&gt;
  annoy people who migrate) :/ Thanks for a very cool (and easy to use)&lt;br /&gt;
  lib/format!”&lt;br /&gt;
 &lt;br /&gt;
  —Vincent Penquerc’h&lt;br /&gt;
&lt;br /&gt;
* [http://www.asahi-net.or.jp/~cs8k-cyu/windows/tt_e.html Torus Trooper]: Frantic 3D shootemup, using Vorbis for the music. (see also the [http://www.emhsoft.net/ttrooper/ Linux port] and [http://www.apple.com/downloads/macosx/games/action_adventure/torustrooper.html MacOS version])&lt;br /&gt;
&lt;br /&gt;
* [http://www.trackmania.com/ TrackMania] uses Vorbis for music in menu and tracks. [music in self-made tracks also need to be in Vorbis]&lt;br /&gt;
&lt;br /&gt;
* [http://www.mikeoldfield.com/ Tr3s Lunas] (aka Music VR episode 1): This game, featuring the music of Mike Oldfield, uses Vorbis for the music.&lt;br /&gt;
&lt;br /&gt;
* [http://www.tribesvengeance.com Tribes: Vengance] by Irration Games/Sierra use Ogg Vorbis for music.&lt;br /&gt;
&lt;br /&gt;
* [http://www.mobygames.com/game/gamecube/true-crime-new-york-city True Crime: New York City]: GameCube version contains over 11,500 Ogg Vorbis files. It is likely that other platform ports also use the same files (note that the [http://www.mobygames.com/game/xbox/true-crime-new-york-city Xbox version] uses Windows Media Audio files in place of Ogg Vorbis files)&lt;br /&gt;
&lt;br /&gt;
* [http://tuxtype.sourceforge.net/ Tuxtyping 2]: Educational typing tutor for kids of all ages! &lt;br /&gt;
&lt;br /&gt;
* [http://www.ufo-aftershock.com/ UFO: Aftershock]: Uses Vorbis for music.&lt;br /&gt;
&lt;br /&gt;
* [http://www.ufo-afterlight.com/ UFO: Afterlight]: Uses Vorbis for music.&lt;br /&gt;
&lt;br /&gt;
* [http://www.atari.com/us/games/unreal2/pc Unreal 2]: PC version uses Vorbis, usage on consoles not confirmed.&lt;br /&gt;
&lt;br /&gt;
  “We went with Ogg Vorbis due to its excellent playback and compression,&lt;br /&gt;
  and we used it not only for music but also all of the in-game voice.&lt;br /&gt;
  Without it, we never would have been able to fit on two CDs.”&lt;br /&gt;
 &lt;br /&gt;
  — http://www.4unrealers.com/entrevistas/263/&lt;br /&gt;
&lt;br /&gt;
* [http://www.unrealtournament.com/ut2003/ Unreal Tournament 2003]: This overwhelmingly-popular multiplayer first person shooter PC title uses Vorbis for its music.&lt;br /&gt;
&lt;br /&gt;
* [http://www.unrealtournament.com/ut2004/ Unreal Tournament 2004]: Yet another Unreal game which uses Vorbis for the music (What about effects and voice? Does anyone know?). The readme file of the demo even mentions Speex!&lt;br /&gt;
&lt;br /&gt;
* [http://sc2.sourceforge.net/ The Ur-Quan Masters]: Port of Star Control 2 to modern computers. Toys for Bob released the source of this amazing game under the GPL in 2002. Ogg Vorbis is used for the dialogue and the background music.&lt;br /&gt;
&lt;br /&gt;
* [http://uru.ubi.com/ Uru: Ages Beyond Myst]: Spinoff from the Myst series. Uses Ogg Vorbis for all music, speech and sound effects.&lt;br /&gt;
&lt;br /&gt;
* [http://mobygames.com/game/sheet/p,3/gameId,8635/ Lionheart — Legacy of the Crusader]: An 3/4 RPG from Black Isle. Uses Vorbis for all audio. Thanks to all the guys that made Vorbis great.. (I even donated money myself, someday maybe I can convince the company to kick in some bucks as well). Official site is down, using mobygames link.&lt;br /&gt;
&lt;br /&gt;
* [http://www.global-gaming.com/Dominion/ Urban Dominion] (beta): First Person Massively Multiplayer Online Role-Playing Game by Global-Gaming. Uses Ogg Vorbis for the sound system.&lt;br /&gt;
&lt;br /&gt;
* [http://www.vietcong-game.com/ Vietcong]: Vietnam War First Person Shooter by Pterodon. Uses Ogg Vorbis I believe for the background music.&lt;br /&gt;
&lt;br /&gt;
* [http://vegastrike.sourceforge.net/ Vega Strike]: It is a free spacesim. Ogg Vorbis files are stored in \music\ .&lt;br /&gt;
&lt;br /&gt;
* [http://www.gathering.com/wingsofwar/ Wings Of War]: It is an arcade shooter in times of WWI. Game has ogg.dll, vorbis.dll and vorbisfile.dll — but *.ogg files are not accesible.&lt;br /&gt;
&lt;br /&gt;
* [http://jonof.edgenetwork.org/winbuild/ WinBuild]: Winbuild is a port of Ken Silverman’s [http://www.advsys.net/ken/buildsrc/default.htm original Build engine demo] (for DOS) to Windows. It uses Vorbis compression for the music.&lt;br /&gt;
&lt;br /&gt;
* [http://www.worldofwarcraft.com/ World of Warcraft]: popular massively multiplayer online role-playing game from Blizzard Entertainment use Vorbis for speech and sound effects.&lt;br /&gt;
&lt;br /&gt;
* [http://www.zax-game.com/ Zax — The Alien Hunter]: A large 3/4 view action adventure game.&lt;br /&gt;
&lt;br /&gt;
[[Category:Vorbis]]&lt;/div&gt;</summary>
		<author><name>Tdaede</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=Daala_Quickstart&amp;diff=16134</id>
		<title>Daala Quickstart</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=Daala_Quickstart&amp;diff=16134"/>
		<updated>2015-10-31T01:39:05Z</updated>

		<summary type="html">&lt;p&gt;Tdaede: /* Ubuntu */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a guide to getting a copy of the latest Daala source code and encoding a video with it.&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;
=== 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 libtool libsdl2-gfx-dev libogg-dev libjpeg-dev libpng-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>Tdaede</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=Daala&amp;diff=16127</id>
		<title>Daala</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=Daala&amp;diff=16127"/>
		<updated>2015-10-27T19:58:03Z</updated>

		<summary type="html">&lt;p&gt;Tdaede: /* 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;
&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;
&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;
* 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] - 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>Tdaede</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=XiphInfra:List_of_services&amp;diff=16057</id>
		<title>XiphInfra:List of services</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=XiphInfra:List_of_services&amp;diff=16057"/>
		<updated>2015-10-17T18:12:12Z</updated>

		<summary type="html">&lt;p&gt;Tdaede: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
!Service!&lt;br /&gt;
!URL!&lt;br /&gt;
!VM!&lt;br /&gt;
!Host!&lt;br /&gt;
!Maintainer&lt;br /&gt;
|-&lt;br /&gt;
| [[XiphWiki:Features|Wiki]]&lt;br /&gt;
| wiki.xiph.org&lt;br /&gt;
| wiki&lt;br /&gt;
| mf4.xiph.org&lt;br /&gt;
| ePirat&lt;br /&gt;
|-&lt;br /&gt;
| Rietveld&lt;br /&gt;
| review.xiph.org&lt;br /&gt;
| jenkins&lt;br /&gt;
| mf4.xiph.org&lt;br /&gt;
| unlord&lt;br /&gt;
|-&lt;br /&gt;
| Git&lt;br /&gt;
| git.xiph.org&lt;br /&gt;
| -&lt;br /&gt;
| mf4.xiph.org&lt;br /&gt;
| rillian&lt;br /&gt;
|-&lt;br /&gt;
| Subversion&lt;br /&gt;
| svn.xiph.org&lt;br /&gt;
| -&lt;br /&gt;
| mf4.xiph.org&lt;br /&gt;
| rillian&lt;br /&gt;
|-&lt;br /&gt;
| [[AreWeCompressedYet]]&lt;br /&gt;
| arewecompressedyet.com&lt;br /&gt;
| awcy&lt;br /&gt;
| catfish.xiph.org&lt;br /&gt;
| TD-Linux&lt;br /&gt;
|-&lt;br /&gt;
| Opus boodler streams&lt;br /&gt;
| opus-codec.org&lt;br /&gt;
| -&lt;br /&gt;
| mf4.xiph.org&lt;br /&gt;
| gmaxwell&lt;br /&gt;
|-&lt;br /&gt;
| Home pages&lt;br /&gt;
| people.xiph.org&lt;br /&gt;
| -&lt;br /&gt;
| mf4.xiph.org&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| Media&lt;br /&gt;
| media.xiph.org&lt;br /&gt;
| -&lt;br /&gt;
| media.xiph.org&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| Mail&lt;br /&gt;
| xiph.org&lt;br /&gt;
| -&lt;br /&gt;
| westfish.xiph.org&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| Mailman&lt;br /&gt;
| lists.xiph.org&lt;br /&gt;
| -&lt;br /&gt;
| westfish.xiph.org&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| Trac&lt;br /&gt;
| trac.xiph.org&lt;br /&gt;
| -&lt;br /&gt;
| mf4.xiph.org&lt;br /&gt;
| tbr&lt;br /&gt;
|-&lt;br /&gt;
| Jenkins&lt;br /&gt;
| jenkins.xiph.org&lt;br /&gt;
| jenkins&lt;br /&gt;
| mf4.xiph.org&lt;br /&gt;
| TD-Linux&lt;br /&gt;
|-&lt;br /&gt;
| XiphBot-ng&lt;br /&gt;
| XiphWiki on freenode&lt;br /&gt;
| -&lt;br /&gt;
| mf4.xiph.org&lt;br /&gt;
| TD-Linux&lt;br /&gt;
|-&lt;br /&gt;
| Xiph-mirror&lt;br /&gt;
| github.com/xiph&lt;br /&gt;
| ?&lt;br /&gt;
| ?&lt;br /&gt;
| rillian&lt;br /&gt;
|-&lt;br /&gt;
| Icecast directory&lt;br /&gt;
| dir.xiph.org&lt;br /&gt;
| -&lt;br /&gt;
| dir.xiph.org&lt;br /&gt;
| tbr&lt;br /&gt;
|-&lt;br /&gt;
| Icecast directory beta&lt;br /&gt;
| dir-test.xiph.org&lt;br /&gt;
| ?&lt;br /&gt;
| mailfish.xiph.org&lt;br /&gt;
| ePirat, tbr&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Tdaede</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=XiphInfra:List_of_services&amp;diff=16056</id>
		<title>XiphInfra:List of services</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=XiphInfra:List_of_services&amp;diff=16056"/>
		<updated>2015-10-17T18:09:36Z</updated>

		<summary type="html">&lt;p&gt;Tdaede: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
!Service!&lt;br /&gt;
!URL!&lt;br /&gt;
!VM!&lt;br /&gt;
!Host!&lt;br /&gt;
!Maintainer&lt;br /&gt;
|-&lt;br /&gt;
| [[XiphWiki:Features|Wiki]]&lt;br /&gt;
| wiki.xiph.org&lt;br /&gt;
| wiki&lt;br /&gt;
| mf4.xiph.org&lt;br /&gt;
| ePirat&lt;br /&gt;
|-&lt;br /&gt;
| Rietveld&lt;br /&gt;
| review.xiph.org&lt;br /&gt;
| jenkins&lt;br /&gt;
| mf4.xiph.org&lt;br /&gt;
| unlord&lt;br /&gt;
|-&lt;br /&gt;
| Git&lt;br /&gt;
| git.xiph.org&lt;br /&gt;
| -&lt;br /&gt;
| mf4.xiph.org&lt;br /&gt;
| rillian&lt;br /&gt;
|-&lt;br /&gt;
| Subversion&lt;br /&gt;
| svn.xiph.org&lt;br /&gt;
| -&lt;br /&gt;
| mf4.xiph.org&lt;br /&gt;
| rillian&lt;br /&gt;
|-&lt;br /&gt;
| [[AreWeCompressedYet]]&lt;br /&gt;
| arewecompressedyet.com&lt;br /&gt;
| awcy&lt;br /&gt;
| catfish.xiph.org&lt;br /&gt;
| TD-Linux&lt;br /&gt;
|-&lt;br /&gt;
| Opus boodler streams&lt;br /&gt;
| opus-codec.org&lt;br /&gt;
| -&lt;br /&gt;
| mf4.xiph.org&lt;br /&gt;
| gmaxwell&lt;br /&gt;
|-&lt;br /&gt;
| Home pages&lt;br /&gt;
| people.xiph.org&lt;br /&gt;
| -&lt;br /&gt;
| mf4.xiph.org&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| Media&lt;br /&gt;
| media.xiph.org&lt;br /&gt;
| -&lt;br /&gt;
| media.xiph.org&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| Mail&lt;br /&gt;
| xiph.org&lt;br /&gt;
| -&lt;br /&gt;
| westfish.xiph.org&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| Trac&lt;br /&gt;
| trac.xiph.org&lt;br /&gt;
| -&lt;br /&gt;
| mf4.xiph.org&lt;br /&gt;
| tbr&lt;br /&gt;
|-&lt;br /&gt;
| Jenkins&lt;br /&gt;
| jenkins.xiph.org&lt;br /&gt;
| jenkins&lt;br /&gt;
| mf4.xiph.org&lt;br /&gt;
| TD-Linux&lt;br /&gt;
|-&lt;br /&gt;
| XiphBot-ng&lt;br /&gt;
| XiphWiki on freenode&lt;br /&gt;
| -&lt;br /&gt;
| mf4.xiph.org&lt;br /&gt;
| TD-Linux&lt;br /&gt;
|-&lt;br /&gt;
| Xiph-mirror&lt;br /&gt;
| github.com/xiph&lt;br /&gt;
| ?&lt;br /&gt;
| ?&lt;br /&gt;
| rillian&lt;br /&gt;
|-&lt;br /&gt;
| Icecast directory&lt;br /&gt;
| dir.xiph.org&lt;br /&gt;
| -&lt;br /&gt;
| dir.xiph.org&lt;br /&gt;
| tbr&lt;br /&gt;
|-&lt;br /&gt;
| Icecast directory beta&lt;br /&gt;
| dir-test.xiph.org&lt;br /&gt;
| ?&lt;br /&gt;
| mailfish.xiph.org&lt;br /&gt;
| ePirat, tbr&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Tdaede</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=Daala_Quickstart&amp;diff=16052</id>
		<title>Daala Quickstart</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=Daala_Quickstart&amp;diff=16052"/>
		<updated>2015-10-14T22:30:37Z</updated>

		<summary type="html">&lt;p&gt;Tdaede: /* 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 libtool 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>Tdaede</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=XiphInfra:List_of_services&amp;diff=16046</id>
		<title>XiphInfra:List of services</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=XiphInfra:List_of_services&amp;diff=16046"/>
		<updated>2015-10-14T18:14:09Z</updated>

		<summary type="html">&lt;p&gt;Tdaede: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Service&lt;br /&gt;
! URL&lt;br /&gt;
! VM&lt;br /&gt;
! Host&lt;br /&gt;
! Maintainer&lt;br /&gt;
|-&lt;br /&gt;
| Wiki&lt;br /&gt;
| wiki.xiph.org&lt;br /&gt;
| wiki&lt;br /&gt;
| mf4.xiph.org&lt;br /&gt;
| ePirat&lt;br /&gt;
|-&lt;br /&gt;
| Rietveld&lt;br /&gt;
| review.xiph.org&lt;br /&gt;
| jenkins&lt;br /&gt;
| mf4.xiph.org&lt;br /&gt;
| unlord&lt;br /&gt;
|-&lt;br /&gt;
| Git&lt;br /&gt;
| git.xiph.org&lt;br /&gt;
| -&lt;br /&gt;
| mf4.xiph.org&lt;br /&gt;
| rillian&lt;br /&gt;
|-&lt;br /&gt;
| Subversion&lt;br /&gt;
| svn.xiph.org&lt;br /&gt;
| -&lt;br /&gt;
| mf4.xiph.org&lt;br /&gt;
| rillian&lt;br /&gt;
|-&lt;br /&gt;
| [[AreWeCompressedYet]]&lt;br /&gt;
| arewecompressedyet.com&lt;br /&gt;
| awcy&lt;br /&gt;
| catfish.xiph.org&lt;br /&gt;
| TD-Linux&lt;br /&gt;
|-&lt;br /&gt;
| Opus boodler streams&lt;br /&gt;
| opus-codec.org&lt;br /&gt;
| -&lt;br /&gt;
| mf4.xiph.org&lt;br /&gt;
| gmaxwell&lt;br /&gt;
|-&lt;br /&gt;
| Home pages&lt;br /&gt;
| people.xiph.org&lt;br /&gt;
| -&lt;br /&gt;
| mf4.xiph.org&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| Media&lt;br /&gt;
| media.xiph.org&lt;br /&gt;
| -&lt;br /&gt;
| media.xiph.org&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| Mail&lt;br /&gt;
| xiph.org&lt;br /&gt;
| -&lt;br /&gt;
| mf4.xiph.org&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| Trac&lt;br /&gt;
| trac.xiph.org&lt;br /&gt;
| -&lt;br /&gt;
| mf4.xiph.org&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| Jenkins&lt;br /&gt;
| jenkins.xiph.org&lt;br /&gt;
| jenkins&lt;br /&gt;
| mf4.xiph.org&lt;br /&gt;
| TD-Linux&lt;br /&gt;
|-&lt;br /&gt;
| XiphBot-ng&lt;br /&gt;
| XiphWiki on freenode&lt;br /&gt;
| -&lt;br /&gt;
| mf4.xiph.org&lt;br /&gt;
| TD-Linux&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Tdaede</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=XiphInfra:List_of_services&amp;diff=16045</id>
		<title>XiphInfra:List of services</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=XiphInfra:List_of_services&amp;diff=16045"/>
		<updated>2015-10-14T18:12:22Z</updated>

		<summary type="html">&lt;p&gt;Tdaede: Created page with &amp;quot;{| class=&amp;quot;wikitable&amp;quot; |- ! Service ! URL ! VM ! Host ! Maintainer |- | Wiki | wiki.xiph.org | wiki | mf4.xiph.org | ePirat |- | Rietveld | review.xiph.org | jenkins | mf4.xiph....&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Service&lt;br /&gt;
! URL&lt;br /&gt;
! VM&lt;br /&gt;
! Host&lt;br /&gt;
! Maintainer&lt;br /&gt;
|-&lt;br /&gt;
| Wiki&lt;br /&gt;
| wiki.xiph.org&lt;br /&gt;
| wiki&lt;br /&gt;
| mf4.xiph.org&lt;br /&gt;
| ePirat&lt;br /&gt;
|-&lt;br /&gt;
| Rietveld&lt;br /&gt;
| review.xiph.org&lt;br /&gt;
| jenkins&lt;br /&gt;
| mf4.xiph.org&lt;br /&gt;
| unlord&lt;br /&gt;
|-&lt;br /&gt;
| Git&lt;br /&gt;
| git.xiph.org&lt;br /&gt;
| -&lt;br /&gt;
| mf4.xiph.org&lt;br /&gt;
| rillian&lt;br /&gt;
|-&lt;br /&gt;
| Subversion&lt;br /&gt;
| svn.xiph.org&lt;br /&gt;
| -&lt;br /&gt;
| mf4.xiph.org&lt;br /&gt;
| rillian&lt;br /&gt;
|-&lt;br /&gt;
| [[AreWeCompressedYet]]&lt;br /&gt;
| arewecompressedyet.com&lt;br /&gt;
| awcy&lt;br /&gt;
| catfish.xiph.org&lt;br /&gt;
| TD-Linux&lt;br /&gt;
|-&lt;br /&gt;
| Opus boodler streams&lt;br /&gt;
| opus-codec.org&lt;br /&gt;
| -&lt;br /&gt;
| mf4.xiph.org&lt;br /&gt;
| gmaxwell&lt;br /&gt;
|-&lt;br /&gt;
| Home pages&lt;br /&gt;
| people.xiph.org&lt;br /&gt;
| -&lt;br /&gt;
| mf4.xiph.org&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| Media&lt;br /&gt;
| media.xiph.org&lt;br /&gt;
| -&lt;br /&gt;
| media.xiph.org&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| Mail&lt;br /&gt;
| xiph.org&lt;br /&gt;
| -&lt;br /&gt;
| mf4.xiph.org&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| Trac&lt;br /&gt;
| trac.xiph.org&lt;br /&gt;
| -&lt;br /&gt;
| mf4.xiph.org&lt;br /&gt;
|&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Tdaede</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=Template:Converting_to_y4m&amp;diff=16044</id>
		<title>Template:Converting to y4m</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=Template:Converting_to_y4m&amp;diff=16044"/>
		<updated>2015-10-08T04:18:30Z</updated>

		<summary type="html">&lt;p&gt;Tdaede: /* Converting to y4m from other formats */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Converting to y4m from other formats ==&lt;br /&gt;
&lt;br /&gt;
You can use the [https://www.ffmpeg.org/ ffmpeg] tool to generate y4m from any of its supported video formats:&lt;br /&gt;
&lt;br /&gt;
    ffmpeg -i video.webm -pix_fmt yuv420p video.y4m&lt;br /&gt;
&lt;br /&gt;
Or just encode directly without an intermediate file:&lt;br /&gt;
&lt;br /&gt;
    ffmpeg -i video.webm -pix_fmt yuv420p -f yuv4mpegpipe - | ./encoder_example - -o video.ogv&lt;br /&gt;
&lt;br /&gt;
Note that ffmpeg is optimized for speed. You may not get comparable results across machines.&lt;/div&gt;</summary>
		<author><name>Tdaede</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=Daala_Quickstart_Windows&amp;diff=16039</id>
		<title>Daala Quickstart Windows</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=Daala_Quickstart_Windows&amp;diff=16039"/>
		<updated>2015-09-18T21:52:50Z</updated>

		<summary type="html">&lt;p&gt;Tdaede: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a simple guide to getting the code and encoding a simple video within Windows.&lt;br /&gt;
&lt;br /&gt;
There is also a &#039;&#039;&#039;[[Daala Quickstart]]&#039;&#039;&#039; page for Linux/MacOS.&lt;br /&gt;
&lt;br /&gt;
If you wish to use Cygwin to compile Daala within Windows, there is a guide at &#039;&#039;&#039;[[Daala and Cygwin]]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
You can also use mingw64 to compile Daala on Windows. To do so, follow the &#039;&#039;[[Daala Quickstart]]&#039;&#039; guide for Unix operating systems.&lt;br /&gt;
&lt;br /&gt;
Note that using MSVC to build Daala will result in a slower binary, due to the lack of MSVC compatible CPU detection [https://github.com/xiph/daala/issues/106]. Patches welcome!&lt;br /&gt;
&lt;br /&gt;
=== Prerequisites ===&lt;br /&gt;
* &#039;&#039;&#039;[http://git-scm.com/downloads Git]&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;[http://www.visualstudio.com/en-us/downloads/download-visual-studio-vs.aspx Visual Studio]&#039;&#039;&#039; (2008 or 2010)&lt;br /&gt;
* &#039;&#039;&#039;[http://downloads.xiph.org/releases/ogg/?C=M;O=D libogg]&#039;&#039;&#039; v1.3.0 or later (VS solutions tested with &#039;&#039;&#039;[http://downloads.xiph.org/releases/ogg/libogg-1.3.2.zip libogg-1.3.2]&#039;&#039;&#039;)&lt;br /&gt;
* &#039;&#039;&#039;[https://www.wxwidgets.org/downloads/ wxWidgets]&#039;&#039;&#039; is only required if you want to run the Daala bitstream analyser (VS solutions tested with version &#039;&#039;&#039;[http://sourceforge.net/projects/wxwindows/files/3.0.2/ 3.0.2]&#039;&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
The VS solution files were created using &#039;&#039;&#039;Visual Studio 2008 Team System&#039;&#039;&#039; and &#039;&#039;&#039;Visual Studio 2010 Ultimate&#039;&#039;&#039;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Even though the provided solutions might work with the express versions of VS, this has not been tested.&lt;br /&gt;
&lt;br /&gt;
=== Installation Procedure ===&lt;br /&gt;
* Clone the Daala.git repository (this can take several minutes)&lt;br /&gt;
&lt;br /&gt;
    git clone https://git.xiph.org/daala.git&lt;br /&gt;
&lt;br /&gt;
Make sure you run git clone operations on the same machine you intend to use the code on.&amp;lt;br /&amp;gt;&lt;br /&gt;
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;
* Unpack libogg into a folder named &#039;&#039;&#039;ogg&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
* Unpack wxWidgets into a folder named &#039;&#039;&#039;wxWidgets&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Your folder structure should now look like this:&lt;br /&gt;
&lt;br /&gt;
    &amp;lt;your folder&amp;gt;\daala&lt;br /&gt;
    &amp;lt;your folder&amp;gt;\ogg&lt;br /&gt;
    &amp;lt;your folder&amp;gt;\wxWidgets&lt;br /&gt;
&lt;br /&gt;
== Building the executables ==&lt;br /&gt;
&lt;br /&gt;
* Open the file &#039;&#039;&#039;Daala_static.sln&#039;&#039;&#039; located at &#039;&#039;&#039;daala\win32\Visual Studio\VS20xx&#039;&#039;&#039; folder.&lt;br /&gt;
* Build the solution.&lt;br /&gt;
&lt;br /&gt;
This will generate 3 executables and 3 static libraries: &lt;br /&gt;
&lt;br /&gt;
* analyser.exe&lt;br /&gt;
* encoder_example.exe&lt;br /&gt;
* decoder_example.exe&lt;br /&gt;
* LibDaalaBase.lib&lt;br /&gt;
* libdaaladec.lib&lt;br /&gt;
* libdaalaenc.lib&lt;br /&gt;
&lt;br /&gt;
{{Encoding with Daala}}&lt;br /&gt;
&lt;br /&gt;
{{Decoding with Daala}}&lt;br /&gt;
&lt;br /&gt;
== Using batch files to encode/decode a video at different compression levels ==&lt;br /&gt;
&lt;br /&gt;
Save the following 2 batch files to your &#039;&#039;&#039;daala\win32\Visual Studio\VS20xx\Release&#039;&#039;&#039; directory.(you can also use &#039;&#039;&#039;Debug&#039;&#039;&#039;, but the Release executables will be MUCH faster)&lt;br /&gt;
&lt;br /&gt;
This is where the &#039;&#039;&#039;encode_example.exe&#039;&#039;&#039; and &#039;&#039;&#039;decode_example.exe&#039;&#039;&#039; files should be after you successfully build the &#039;&#039;&#039;Daala_static.sln&#039;&#039;&#039; solution (see notes above).&lt;br /&gt;
&lt;br /&gt;
To use the below batch files, drag-and-drop a couple of y4m video or image files onto &#039;&#039;&#039;EncodeDecode.bat&#039;&#039;&#039; and go grab a coffee, &#039;cause video encoding/decoding takes a while!&lt;br /&gt;
&lt;br /&gt;
=== EncodeDecode.bat ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;dos&amp;quot;&amp;gt;&lt;br /&gt;
::Drag-and-drop .y4m files onto this .bat file to auto-process them!&lt;br /&gt;
&lt;br /&gt;
::turn off auto command-outputting&lt;br /&gt;
@echo off&lt;br /&gt;
&lt;br /&gt;
::if we have no input files, go to the :end pointer&lt;br /&gt;
if [%~1]==[] (&lt;br /&gt;
	echo No input files given!&lt;br /&gt;
	goto end&lt;br /&gt;
)&lt;br /&gt;
&lt;br /&gt;
::make an out folder to keep our files in&lt;br /&gt;
if not exist out mkdir out&lt;br /&gt;
&lt;br /&gt;
::store the path to this batch file&lt;br /&gt;
set batchLocation=%~dp0&lt;br /&gt;
&lt;br /&gt;
::this marks the start of our input-file loop&lt;br /&gt;
:inputFileLoop&lt;br /&gt;
&lt;br /&gt;
::loop the commands after the &amp;quot;do&amp;quot; using a compression factor %%i&lt;br /&gt;
::starting at 0 (daala lossless quality), in increments of 20, up to 511 (max daala lossy compression)&lt;br /&gt;
	::write the current compression factor into a log file (&amp;gt;&amp;gt; appends to file, &amp;gt; truncates data in file then writes to it)&lt;br /&gt;
&lt;br /&gt;
	::call = call another bit of code, but return to this file when done!&lt;br /&gt;
	::timecmd = time how long the following command takes&lt;br /&gt;
	::encoder_example.exe = encode using daala!&lt;br /&gt;
	::-v %%i = using this amount of compression&lt;br /&gt;
	::&amp;quot;%~1&amp;quot; = the input file&#039;s name and extension, double quotes guard against spaces in name&lt;br /&gt;
	::-o &amp;quot;%~n1%%i.ogv&amp;quot; = output the daala-encoded video to this file&lt;br /&gt;
	::dp within %~dp1 = grab input file drive and path only&lt;br /&gt;
	::n within %~n1 = grab input file name only&lt;br /&gt;
&lt;br /&gt;
	::x (within %~x1) = grab input file extension only&lt;br /&gt;
for /l %%i in (0,20,511) do (&lt;br /&gt;
	echo Encoding %~n1 using -v %%i... &amp;gt;&amp;gt; out\Log.txt&lt;br /&gt;
&lt;br /&gt;
	call &amp;quot;%batchLocation%timecmd&amp;quot; &amp;quot;%batchLocation%encoder_example.exe&amp;quot; -v %%i &amp;quot;%~1&amp;quot; -o &amp;quot;%~dp1out\%~n1_%%i.ogv&amp;quot; &amp;gt;&amp;gt; out\Log.txt&lt;br /&gt;
&lt;br /&gt;
	echo Decoding %~n1, which was encoded using -v %%i... &amp;gt;&amp;gt; out\Log.txt&lt;br /&gt;
&lt;br /&gt;
	call &amp;quot;%batchLocation%timecmd&amp;quot; &amp;quot;%batchLocation%decoder_example.exe&amp;quot; &amp;quot;%~dp1out\%~n1_%%i.ogv&amp;quot; -o &amp;quot;%~dp1out\%~n1_%%i%~x1&amp;quot; &amp;gt;&amp;gt; out\Log.txt&lt;br /&gt;
)&lt;br /&gt;
::shift the files in our input file list, file %~2 becomes %~1&lt;br /&gt;
shift&lt;br /&gt;
&lt;br /&gt;
::if we have another file, go to the :inputFileLoop label to encode it!&lt;br /&gt;
if not [%~1]==[] goto inputFileLoop&lt;br /&gt;
&lt;br /&gt;
:end&lt;br /&gt;
&lt;br /&gt;
::when all the above encodes/decodes are done, don&#039;t close the command window!&lt;br /&gt;
pause&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== timecmd.bat ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;dos&amp;quot;&amp;gt;&lt;br /&gt;
:: this code was obtained from https://stackoverflow.com/questions/673523/how-to-measure-execution-time-of-command-in-windows-command-line&lt;br /&gt;
&lt;br /&gt;
@echo off&lt;br /&gt;
@setlocal&lt;br /&gt;
&lt;br /&gt;
:: start timing!&lt;br /&gt;
set start=%time%&lt;br /&gt;
&lt;br /&gt;
:: runs your command&lt;br /&gt;
cmd /c &amp;quot;%*&amp;quot;&lt;br /&gt;
&lt;br /&gt;
:: stop timing!&lt;br /&gt;
set end=%time%&lt;br /&gt;
&lt;br /&gt;
:: spawn variables to hold start- and end-date parts&lt;br /&gt;
set options=&amp;quot;tokens=1-4 delims=:.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
for /f %options% %%a in (&amp;quot;%start%&amp;quot;) do (&lt;br /&gt;
	set start_h=%%a&lt;br /&gt;
	set /a start_m=100%%b %% 100&lt;br /&gt;
	set /a start_s=100%%c %% 100&lt;br /&gt;
	set /a start_cs=100%%d %% 100&lt;br /&gt;
)&lt;br /&gt;
&lt;br /&gt;
for /f %options% %%a in (&amp;quot;%end%&amp;quot;) do (&lt;br /&gt;
	set end_h=%%a&lt;br /&gt;
	set /a end_m=100%%b %% 100&lt;br /&gt;
	set /a end_s=100%%c %% 100&lt;br /&gt;
	set /a end_cs=100%%d %% 100&lt;br /&gt;
)&lt;br /&gt;
&lt;br /&gt;
:: calculate duration in different units&lt;br /&gt;
set /a hours=%end_h%-%start_h%&lt;br /&gt;
set /a mins=%end_m%-%start_m%&lt;br /&gt;
set /a secs=%end_s%-%start_s%&lt;br /&gt;
set /a cs=%end_cs%-%start_cs%&lt;br /&gt;
&lt;br /&gt;
if %hours% lss 0 set /a hours = 24%hours%&lt;br /&gt;
if %mins% lss 0 set /a hours = %hours% - 1 &amp;amp; set /a mins = 60%mins%&lt;br /&gt;
if %secs% lss 0 set /a mins = %mins% - 1 &amp;amp; set /a secs = 60%secs%&lt;br /&gt;
if %cs% lss 0 set /a secs = %secs% - 1 &amp;amp; set /a cs = 100%cs%&lt;br /&gt;
&lt;br /&gt;
if %hours% lss 10 set hours=0%hours%&lt;br /&gt;
if %mins% lss 10 set mins=0%mins%&lt;br /&gt;
if %secs% lss 10 set secs=0%secs%&lt;br /&gt;
if %cs% lss 10 set cs=0%cs%&lt;br /&gt;
&lt;br /&gt;
:: mission accomplished&lt;br /&gt;
set /a totalsecs = %hours%*3600 + %mins%*60 + %secs%&lt;br /&gt;
echo Command took %hours%:%mins%:%secs%.%cs% (%totalsecs%.%cs%s total)&lt;br /&gt;
echo.&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&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>Tdaede</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=Cross_Compiling&amp;diff=16038</id>
		<title>Cross Compiling</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=Cross_Compiling&amp;diff=16038"/>
		<updated>2015-09-15T01:44:48Z</updated>

		<summary type="html">&lt;p&gt;Tdaede: Created page with &amp;quot;Most Xiph.Org projects can be cross compiled for native platforms. You can either use the autotools build system provided, or use a custom build system or IDE with the sources...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Most Xiph.Org projects can be cross compiled for native platforms. You can either use the autotools build system provided, or use a custom build system or IDE with the sources directly.&lt;br /&gt;
&lt;br /&gt;
==Using Autotools==&lt;br /&gt;
Autotools generally only works with GCC-like toolchains.&lt;br /&gt;
&lt;br /&gt;
First, make sure your $PATH environment variable contains the path to your toolchain binaries (arm-none-eabi-gcc or similar).&lt;br /&gt;
&lt;br /&gt;
You will need an install path to put the final headers and libraries. Your main project might have a spot already, or you can create a directory:&lt;br /&gt;
 mkdir install&lt;br /&gt;
&lt;br /&gt;
Then, run the configure script with the host triple, install directory, and necessary CFLAGS:&lt;br /&gt;
&lt;br /&gt;
 ./configure --host=arm-none-eabi --prefix=/home/thomas/sandbox/opus/install CFLAGS=&amp;quot;-mcpu=cortex-a15 --specs=nosys.specs&amp;quot;&lt;br /&gt;
&lt;br /&gt;
You might also need extra options specific to the library you are compiling.&lt;br /&gt;
&lt;br /&gt;
Then,&lt;br /&gt;
 make&lt;br /&gt;
 make install&lt;br /&gt;
&lt;br /&gt;
You should now have a lib/ and include/ dir under your installation prefix, containing the built library and header files.&lt;br /&gt;
&lt;br /&gt;
==Using your own build system==&lt;br /&gt;
This is highly dependent on the project you are compiling. Many have simple Unix makefiles for reference.&lt;/div&gt;</summary>
		<author><name>Tdaede</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=Mp4Opus&amp;diff=15944</id>
		<title>Mp4Opus</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=Mp4Opus&amp;diff=15944"/>
		<updated>2015-08-17T23:35:22Z</updated>

		<summary type="html">&lt;p&gt;Tdaede: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{draft}}&lt;br /&gt;
[http://vfrmaniac.fushizen.eu/contents/opus_in_isobmff.html Paranoialmaniac&#039;s draft] is the current draft encapsulation guide for [[Opus]] audio in the mp4 (ISO Base) media container.&lt;br /&gt;
&lt;br /&gt;
Below are some of the motivations behind the draft.&lt;br /&gt;
&lt;br /&gt;
[http://wiki.multimedia.cx/index.php?title=MP4 MP4] already has support for declaring encoder delay and pre-roll.&lt;br /&gt;
&lt;br /&gt;
For pre-roll I believe we can use &#039;AudioRollRecoveryEntry&#039; for pre-roll.&lt;br /&gt;
&lt;br /&gt;
For delay, Daemon404 suggested &amp;quot;whatever l-smash maps encoder delay to.&amp;quot;&lt;br /&gt;
yusuke says, &amp;quot;ISO and Apple recommend the use of edit list for removing priming samples from the presentation.&amp;quot; libavformat&#039;s demuxer supports *one* edit list entry.&lt;br /&gt;
&lt;br /&gt;
There&#039;s some work on codec-independent channel mapping, downmix and dynamic range control as part of [http://mpeg.chiariglione.org/standards/mpeg-4/iso-base-media-file-format/text-isoiec-14496-122012-pdam-4-enhanced-audio-support ISO 14496-12 Amd4] We might be able use some of that, but it doesn&#039;t support the Opus case of needing to indicated which streams are coupled pairs. We&#039;ll still need to define our own extension for this.&lt;br /&gt;
&lt;br /&gt;
Question: Better to reuse the channel mapping header entirely, or just report the coupled stream count and use the downmix table to do the mapping?&lt;br /&gt;
&lt;br /&gt;
Possible registration process, send an email to http://mp4ra.org/request.html. Possible registrar is &#039;Opus&#039;.&lt;br /&gt;
&lt;br /&gt;
Internally everything is resampled at 48000, this is always output by the decoder, floating point numbers. But the original sample rate is stored so that the decoder can act upon it. Atom AudioSampleEntry will have 48 and the original one will be stored in the codec&#039;s one.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Global Header&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;AudioRollRecoveryEntry&#039;&#039; - shall have a value of 3840 (80ms * 48k)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;AudioSampleEntry&#039;&#039; - hardcoded at 16fp&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;descriptor&#039;&#039; - same as ogg rather than as ts, to keep things simple&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;channel count&#039;&#039; - already included &lt;br /&gt;
&#039;&#039;pre skip&#039;&#039; - already included&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Gain&#039;&#039; - volume atom? unused in practice - oggheader - not in ts (TODO?)&lt;br /&gt;
when you decode samples you&#039;re supposed to multiply against this value, so that decoder can apply post volume&lt;br /&gt;
Reusing the one in ogg.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;mapping family&#039;&#039; (with vorbis mapping)&lt;br /&gt;
 - mono/stereo no channel config&lt;br /&gt;
 - specify # channel&lt;br /&gt;
 - map to the # ouput&lt;br /&gt;
&lt;br /&gt;
audio channel layout https://developer.apple.com/library/mac/documentation/musicaudio/reference/CoreAudioDataTypesRef/Reference/reference.html - too complex&lt;br /&gt;
plug it from ogg and put it in our custom atom&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Things to put in custom atom&#039;&#039;&#039;&lt;br /&gt;
 - input sr&lt;br /&gt;
 - output gain&lt;br /&gt;
 - channel mappaing&lt;br /&gt;
 - channel count (for backup)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Opus&#039;&#039;&#039; is the name of the atom, like in TS&lt;br /&gt;
&lt;br /&gt;
what about album art? quicktime/mp4/mp3&lt;/div&gt;</summary>
		<author><name>Tdaede</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=Daala&amp;diff=15850</id>
		<title>Daala</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=Daala&amp;diff=15850"/>
		<updated>2015-05-24T19:28:14Z</updated>

		<summary type="html">&lt;p&gt;Tdaede: /* Project Communication */&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;
* [[Daala_on_Wheels|Historical Daala wiki page]]&lt;br /&gt;
&lt;br /&gt;
* [[Videos|Digital Primers]] - educational videos about audio/video technology&lt;br /&gt;
&lt;br /&gt;
== Project Communication ==&lt;br /&gt;
&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]&lt;br /&gt;
** If you don&#039;t have an IRC client, you can use Freenode&#039; [http://webchat.freenode.net/?channels=%23daala&amp;amp;uio=MT11bmRlZmluZWQb1 webchat] instead.&lt;br /&gt;
* [http://lists.xiph.org/mailman/listinfo/daala Daala Email List]&lt;br /&gt;
&lt;br /&gt;
You are also welcome to attend the [[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 can be found at &#039;&#039;&#039;[https://daala.etherpad.mozilla.org/weekly-meeting this Etherpad]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== Websites ==&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;].&lt;br /&gt;
&lt;br /&gt;
* [https://review.xiph.org/ Xiph Code Reviews] - there is a proposal on the review process &#039;&#039;&#039;[[DaalaReview|here]]&#039;&#039;&#039;&lt;br /&gt;
* [https://people.xiph.org/~xiphmont/demo/ Monty&#039;s Demo Pages] - explanations on certain techniques used in Daala&lt;br /&gt;
* [https://github.com/xiph/daala/issues Daala&#039;s issues] - Issue/bug tracker on Github&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;
* [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.&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;
* [http://forum.doom9.org/showthread.php?t=168004 Doom9 Forum discussion] - generic forum thread regarding Daala&lt;br /&gt;
&lt;br /&gt;
== JavaScript Demos ==&lt;br /&gt;
&lt;br /&gt;
* [https://people.xiph.org/~xiphmont/demo/daala/player-demo.shtml Daala Video Player]&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;
&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;
&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;
== Presentations ==&lt;br /&gt;
* 2015-03-24 IETF 92 NetVC Meeting - 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_pvq_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;
[[Category:Daala]]&lt;/div&gt;</summary>
		<author><name>Tdaede</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=Daala_MinGW64_Environment&amp;diff=15795</id>
		<title>Daala MinGW64 Environment</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=Daala_MinGW64_Environment&amp;diff=15795"/>
		<updated>2015-04-30T20:59:11Z</updated>

		<summary type="html">&lt;p&gt;Tdaede: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Debian Jessie (jenkins)==&lt;br /&gt;
&lt;br /&gt;
=== libogg 1.3.2 ===&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
./configure --host=x86_64-w64-mingw32 --prefix=/usr/x86_64-w64-mingw32/&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== SDL 1.2.15 ===&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
./configure --host=x86_64-w64-mingw32 --prefix=/usr/x86_64-w64-mingw32/&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== check 0.9.14 ===&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
./configure --host=x86_64-w64-mingw32 --prefix=/usr/x86_64-w64-mingw32/&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== libiconv 1.14 ===&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
./configure --host=x86_64-w64-mingw32 --prefix=/usr/x86_64-w64-mingw32/ &lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== SDL2 2.0.3 ===&lt;br /&gt;
Use this patch: http://stackoverflow.com/questions/22446008/winapifamily-h-no-such-file-or-directory-when-compiling-sdl-in-codeblocks&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
./configure --host=x86_64-w64-mingw32 --prefix=/usr/x86_64-w64-mingw32/ &lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category: Daala]]&lt;/div&gt;</summary>
		<author><name>Tdaede</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=Daala&amp;diff=15735</id>
		<title>Daala</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=Daala&amp;diff=15735"/>
		<updated>2015-04-22T22:27:15Z</updated>

		<summary type="html">&lt;p&gt;Tdaede: /* 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;
* [[Daala_on_Wheels|Historical Daala wiki page]]&lt;br /&gt;
&lt;br /&gt;
== Project Communication ==&lt;br /&gt;
&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]&lt;br /&gt;
* [http://lists.xiph.org/mailman/listinfo/daala Daala Email List]&lt;br /&gt;
&lt;br /&gt;
You are also welcome to attend the [[Daala Weekly Meetings|weekly progress meetings]] using [http://wiki.mumble.info Mumble]. The address is &#039;&#039;&#039;mf4.xiph.org&#039;&#039;&#039; and the port is &#039;&#039;&#039;64738&#039;&#039;&#039;.&amp;lt;br /&amp;gt;&lt;br /&gt;
They 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=20150210T09&amp;amp;p1=1241 9AM Pacific Time]&#039;&#039;&#039; (5PM UTC/GMT).&lt;br /&gt;
&lt;br /&gt;
== Websites ==&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;].&lt;br /&gt;
&lt;br /&gt;
* [https://review.xiph.org/ Xiph Code Reviews] - there is a proposal on the review process &#039;&#039;&#039;[[DaalaReview|here]]&#039;&#039;&#039;&lt;br /&gt;
* [https://people.xiph.org/~xiphmont/demo/ Monty&#039;s Demo Pages] - explanations on certain techniques used in Daala&lt;br /&gt;
* [https://github.com/xiph/daala/issues Daala&#039;s issues] - Issue/bug tracker on Github&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;
* [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.&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;
* [http://forum.doom9.org/showthread.php?t=168004 Doom9 Forum discussion] - generic forum thread regarding Daala&lt;br /&gt;
&lt;br /&gt;
== JavaScript Demos ==&lt;br /&gt;
&lt;br /&gt;
* [https://people.xiph.org/~xiphmont/demo/daala/player-demo.shtml Daala Video Player]&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;
&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;
&lt;br /&gt;
=== IETF Drafts ===&lt;br /&gt;
* [https://tools.ietf.org/html/draft-egge-videocodec-tdlt-00 Time-Domain Lapped Transforms (TDLT)]&lt;br /&gt;
* [https://tools.ietf.org/html/draft-valin-videocodec-pvq-01 Perceptual Vector Quantisation (PVQ)]&lt;br /&gt;
* [https://tools.ietf.org/html/draft-terriberry-codingtools-02 Coding Tools] - entropy coding, integer transforms etc.&lt;br /&gt;
* [https://tools.ietf.org/html/draft-moffitt-netvc-requirements-00 Internet Video Codec (NetVC) Requirements]&lt;br /&gt;
* [https://tools.ietf.org/html/draft-daede-netvc-testing-00 Internet Video Codec (NetVC) Testing and Quality Measurement]&lt;br /&gt;
* [https://tools.ietf.org/html/draft-terriberry-ipr-license-00 Example IPR Licence Terms]&lt;br /&gt;
&lt;br /&gt;
== Presentations ==&lt;br /&gt;
* 2015-03-24 IETF 92 NetVC Meeting - 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_pvq_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;
[[Category:Daala]]&lt;/div&gt;</summary>
		<author><name>Tdaede</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=Template:Decoding_with_Daala&amp;diff=15722</id>
		<title>Template:Decoding with Daala</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=Template:Decoding_with_Daala&amp;diff=15722"/>
		<updated>2015-04-18T04:06:41Z</updated>

		<summary type="html">&lt;p&gt;Tdaede: /* Decoding/Playing a Video */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Decoding/Playing a Video ==&lt;br /&gt;
&lt;br /&gt;
Play the video in a window:&lt;br /&gt;
&lt;br /&gt;
    ./examples/player_example video.ogv&lt;br /&gt;
&lt;br /&gt;
For information on the controls available while playing, run&lt;br /&gt;
&lt;br /&gt;
    ./examples/player_example --help&lt;br /&gt;
&lt;br /&gt;
If you want to use a different player, you can decode the video back to .y4m with&lt;br /&gt;
&lt;br /&gt;
    ./examples/dump_video video.ogv -o decoded_video.y4m&lt;br /&gt;
&lt;br /&gt;
Or you can pipe the raw video stream directly to the player of your choice:&lt;br /&gt;
&lt;br /&gt;
    ./examples/dump_video video.ogv | mpv -&lt;br /&gt;
&lt;br /&gt;
Many other players can play back these .y4m files, and other tools can convert them to various other formats.&lt;/div&gt;</summary>
		<author><name>Tdaede</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=Daala_MinGW64_Environment&amp;diff=15721</id>
		<title>Daala MinGW64 Environment</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=Daala_MinGW64_Environment&amp;diff=15721"/>
		<updated>2015-04-17T22:38:00Z</updated>

		<summary type="html">&lt;p&gt;Tdaede: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Debian Jessie (jenkins)==&lt;br /&gt;
&lt;br /&gt;
=== libogg 1.3.2 ===&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
./configure --host=x86_64-w64-mingw32 --prefix=/usr/x86_64-w64-mingw32/&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== SDL 1.2.15 ===&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
./configure --host=x86_64-w64-mingw32 --prefix=/usr/x86_64-w64-mingw32/&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== check 0.9.14 ===&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
./configure --host=x86_64-w64-mingw32 --prefix=/usr/x86_64-w64-mingw32/&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== libiconv 1.14 ===&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
./configure --host=x86_64-w64-mingw32 --prefix=/usr/x86_64-w64-mingw32/ &lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category: Daala]]&lt;/div&gt;</summary>
		<author><name>Tdaede</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=Daala_MinGW64_Environment&amp;diff=15627</id>
		<title>Daala MinGW64 Environment</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=Daala_MinGW64_Environment&amp;diff=15627"/>
		<updated>2015-04-09T21:03:36Z</updated>

		<summary type="html">&lt;p&gt;Tdaede: Created page with &amp;quot;==Debian Jessie (jenkins)== libogg 1.3.2: ./configure --host=x86_64-w64-mingw32 --prefix=/usr/x86_64-w64-mingw32/ SDL 1.2.15: ./configure --host=x86_64-w64-mingw32 --prefix=/usr/...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Debian Jessie (jenkins)==&lt;br /&gt;
libogg 1.3.2:&lt;br /&gt;
./configure --host=x86_64-w64-mingw32 --prefix=/usr/x86_64-w64-mingw32/&lt;br /&gt;
SDL 1.2.15:&lt;br /&gt;
./configure --host=x86_64-w64-mingw32 --prefix=/usr/x86_64-w64-mingw32/&lt;br /&gt;
check 0.9.14:&lt;br /&gt;
./configure --host=x86_64-w64-mingw32 --prefix=/usr/x86_64-w64-mingw32/&lt;/div&gt;</summary>
		<author><name>Tdaede</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=Daala&amp;diff=15626</id>
		<title>Daala</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=Daala&amp;diff=15626"/>
		<updated>2015-04-09T20:53:46Z</updated>

		<summary type="html">&lt;p&gt;Tdaede: /* Wiki Pages */&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;
== Resources ==&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;
* [[Daala Weekly Meetings|Daala Weekly Meetings]]&lt;br /&gt;
* [[AreWeCompressedYet]]&lt;br /&gt;
* [[DaalaTodo|Daala To-do List]]&lt;br /&gt;
* [[DaalaRoadmap|Daala Roadmap]]&lt;br /&gt;
* [[Intra|Intra-prediction within Daala]]&lt;br /&gt;
 &lt;br /&gt;
* [[Daala_on_Wheels|Historical Daala wiki page]]&lt;br /&gt;
&lt;br /&gt;
=== Project Communication ===&lt;br /&gt;
&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]&lt;br /&gt;
* [http://lists.xiph.org/mailman/listinfo/daala Daala Email List]&lt;br /&gt;
&lt;br /&gt;
You are also welcome to attend the [[Daala Weekly Meetings|weekly progress meetings]] using [http://wiki.mumble.info Mumble]. The address is &#039;&#039;&#039;mf4.xiph.org&#039;&#039;&#039; and the port is &#039;&#039;&#039;64738&#039;&#039;&#039;.&amp;lt;br /&amp;gt;&lt;br /&gt;
They 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=20150210T09&amp;amp;p1=1241 9AM Pacific Time]&#039;&#039;&#039; (5PM UTC/GMT).&lt;br /&gt;
&lt;br /&gt;
=== Websites ===&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;].&lt;br /&gt;
&lt;br /&gt;
* [https://review.xiph.org/ Xiph Code Reviews] - there is a proposal on the review process &#039;&#039;&#039;[[DaalaReview|here]]&#039;&#039;&#039;&lt;br /&gt;
* [https://people.xiph.org/~xiphmont/demo/ Monty&#039;s Demo Pages] - explanations on certain techniques used in Daala&lt;br /&gt;
* [https://github.com/xiph/daala/issues Daala&#039;s issues] - Issue/bug tracker on Github&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;
* [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.&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;
&lt;br /&gt;
=== JavaScript Demos ===&lt;br /&gt;
&lt;br /&gt;
* [https://people.xiph.org/~xiphmont/demo/daala/player-demo.shtml Daala Video Player]&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/~unlord/demo/intra.html Intra-prediction]&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;
* [https://mf4.xiph.org/jenkins/job/daala-autotools/ws/doc/html/index.html C API Documentation]&lt;br /&gt;
* [http://arxiv.org/pdf/1411.4290v1.pdf Maximising Coding Efficiency Through Block Rotation] - [http://lists.xiph.org/pipermail/daala/2015-January/000054.html why it won&#039;t work well within Daala]&lt;br /&gt;
&lt;br /&gt;
==== IETF Drafts ====&lt;br /&gt;
* [https://tools.ietf.org/html/draft-egge-videocodec-tdlt-00 Time-Domain Lapped Transforms (TDLT)]&lt;br /&gt;
* [https://tools.ietf.org/html/draft-valin-videocodec-pvq-01 Perceptual Vector Quantisation (PVQ)] - there is also a [http://jmvalin.ca/papers/spie_pvq.pdf PDF file]&lt;br /&gt;
* [https://tools.ietf.org/html/draft-terriberry-codingtools-02 Coding Tools] - entropy coding, integer transforms etc.&lt;br /&gt;
* [https://tools.ietf.org/html/draft-moffitt-netvc-requirements-00 Internet Video Codec (NetVC) Requirements]&lt;br /&gt;
* [https://tools.ietf.org/html/draft-daede-netvc-testing-00 Internet Video Codec (NetVC) Testing and Quality Measurement]&lt;br /&gt;
* [https://tools.ietf.org/html/draft-terriberry-ipr-license-00 Example IPR Licence Terms]&lt;br /&gt;
&lt;br /&gt;
=== Video Presentations ===&lt;br /&gt;
* 2015-03-24 IETF 92 NetVC Meeting - [https://people.xiph.org/~tdaede/audio/ietf92-venetian-20150324-0900-am1.opus Audio] (Opus, 29MB) - [https://www.ietf.org/audio/ietf92/ietf92-venetian-20150324-0900-am1.mp3 Audio] (mp3, 119MB, action starts at about 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 talk about Chroma from Luma (video not available yet) - [https://people.xiph.org/~unlord/SPIE-2015-CfL.pdf slides]&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 Tim Terriberry&#039;s presentation at 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;
-------&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 accompanying 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 unlord&#039;s 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 accompanying slides] (no video for slides 1-50 unfortunately)&lt;br /&gt;
&lt;br /&gt;
[[Category:Daala]]&lt;/div&gt;</summary>
		<author><name>Tdaede</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=Daala_Quickstart&amp;diff=15478</id>
		<title>Daala Quickstart</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=Daala_Quickstart&amp;diff=15478"/>
		<updated>2015-02-18T23:09:31Z</updated>

		<summary type="html">&lt;p&gt;Tdaede: /* Linux */&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;
=== Linux ===&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;
* libsdl (can by skipped if you pass --disable-player to ./configure)&lt;br /&gt;
&lt;br /&gt;
Do not use linuxbrew. 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;
==== 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 sdl&lt;br /&gt;
&lt;br /&gt;
=== Installation Procedure ===&lt;br /&gt;
&lt;br /&gt;
Just run these commands:&lt;br /&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;
&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;
    make tools&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 a Video ==&lt;br /&gt;
&lt;br /&gt;
If you do not have one, get a sample video or two in .y4m format from [https://media.xiph.org/video/derf/ media.xiph.org]. These videos are relatively large and will take a long time to encode. There are also subsets of 1 second long videos for faster encoding:&lt;br /&gt;
* [https://people.xiph.org/~tdaede/video-1-short/ video-1-short]&lt;br /&gt;
&lt;br /&gt;
We also maintain a set of still-image collections in .y4m format:&lt;br /&gt;
* [https://people.xiph.org/~tterribe/daala/subset1-y4m.tar.gz Subset 1] (50 images, small training set)&lt;br /&gt;
* [https://people.xiph.org/~tterribe/daala/subset2-y4m.tar.gz Subset 2] (50 images, small testing set)&lt;br /&gt;
* [https://people.xiph.org/~tterribe/daala/subset3-y4m.tar.gz Subset 3] (1000 images, large training set)&lt;br /&gt;
* [https://people.xiph.org/~tterribe/daala/subset4-y4m.tar.gz Subset 4] (1000 images, large testing set)&lt;br /&gt;
&lt;br /&gt;
Encode the video:&lt;br /&gt;
&lt;br /&gt;
    ./examples/encoder_example -v 30 video.y4m -o video.ogv&lt;br /&gt;
&lt;br /&gt;
where&lt;br /&gt;
* video.y4m is the input video you want to encode,&lt;br /&gt;
* video.ogv is the name of the encoded video file to output,&lt;br /&gt;
* -v specifies the quality (currently from 0 to 511, where 0 is lossless)&lt;br /&gt;
&lt;br /&gt;
== Decoding/Playing a Video ==&lt;br /&gt;
&lt;br /&gt;
Play the video in a window:&lt;br /&gt;
&lt;br /&gt;
    ./examples/player_example video.ogv&lt;br /&gt;
&lt;br /&gt;
For information on the controls available while playing, run&lt;br /&gt;
&lt;br /&gt;
    ./examples/player_example --help&lt;br /&gt;
&lt;br /&gt;
If you want to use a different player, you can decode the video back to .y4m with&lt;br /&gt;
&lt;br /&gt;
    ./examples/dump_video video.ogv -o decoded_video.y4m&lt;br /&gt;
&lt;br /&gt;
Many other players can play back these .y4m files, and other tools can convert them to various other formats.&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;
== Creating y4m from other formats ==&lt;br /&gt;
&lt;br /&gt;
You can use the ffmpeg tool to generate y4m from any of it supported video formats:&lt;br /&gt;
&lt;br /&gt;
    ffmpeg -i video.webm -pix_fmt yuv420p video.y4m&lt;br /&gt;
&lt;br /&gt;
Note that ffmpeg is optimized for speed. You may not get repeatable results across machines.&lt;br /&gt;
&lt;br /&gt;
[[Category:Daala]]&lt;/div&gt;</summary>
		<author><name>Tdaede</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=Daala_Quickstart&amp;diff=15477</id>
		<title>Daala Quickstart</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=Daala_Quickstart&amp;diff=15477"/>
		<updated>2015-02-18T23:09:00Z</updated>

		<summary type="html">&lt;p&gt;Tdaede: /* Pre-requisites */&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;
=== Linux ===&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;
* libsdl (can by skipped if you pass --disable-player to ./configure)&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;
==== 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 sdl&lt;br /&gt;
&lt;br /&gt;
=== Installation Procedure ===&lt;br /&gt;
&lt;br /&gt;
Just run these commands:&lt;br /&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;
&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;
    make tools&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 a Video ==&lt;br /&gt;
&lt;br /&gt;
If you do not have one, get a sample video or two in .y4m format from [https://media.xiph.org/video/derf/ media.xiph.org]. These videos are relatively large and will take a long time to encode. There are also subsets of 1 second long videos for faster encoding:&lt;br /&gt;
* [https://people.xiph.org/~tdaede/video-1-short/ video-1-short]&lt;br /&gt;
&lt;br /&gt;
We also maintain a set of still-image collections in .y4m format:&lt;br /&gt;
* [https://people.xiph.org/~tterribe/daala/subset1-y4m.tar.gz Subset 1] (50 images, small training set)&lt;br /&gt;
* [https://people.xiph.org/~tterribe/daala/subset2-y4m.tar.gz Subset 2] (50 images, small testing set)&lt;br /&gt;
* [https://people.xiph.org/~tterribe/daala/subset3-y4m.tar.gz Subset 3] (1000 images, large training set)&lt;br /&gt;
* [https://people.xiph.org/~tterribe/daala/subset4-y4m.tar.gz Subset 4] (1000 images, large testing set)&lt;br /&gt;
&lt;br /&gt;
Encode the video:&lt;br /&gt;
&lt;br /&gt;
    ./examples/encoder_example -v 30 video.y4m -o video.ogv&lt;br /&gt;
&lt;br /&gt;
where&lt;br /&gt;
* video.y4m is the input video you want to encode,&lt;br /&gt;
* video.ogv is the name of the encoded video file to output,&lt;br /&gt;
* -v specifies the quality (currently from 0 to 511, where 0 is lossless)&lt;br /&gt;
&lt;br /&gt;
== Decoding/Playing a Video ==&lt;br /&gt;
&lt;br /&gt;
Play the video in a window:&lt;br /&gt;
&lt;br /&gt;
    ./examples/player_example video.ogv&lt;br /&gt;
&lt;br /&gt;
For information on the controls available while playing, run&lt;br /&gt;
&lt;br /&gt;
    ./examples/player_example --help&lt;br /&gt;
&lt;br /&gt;
If you want to use a different player, you can decode the video back to .y4m with&lt;br /&gt;
&lt;br /&gt;
    ./examples/dump_video video.ogv -o decoded_video.y4m&lt;br /&gt;
&lt;br /&gt;
Many other players can play back these .y4m files, and other tools can convert them to various other formats.&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;
== Creating y4m from other formats ==&lt;br /&gt;
&lt;br /&gt;
You can use the ffmpeg tool to generate y4m from any of it supported video formats:&lt;br /&gt;
&lt;br /&gt;
    ffmpeg -i video.webm -pix_fmt yuv420p video.y4m&lt;br /&gt;
&lt;br /&gt;
Note that ffmpeg is optimized for speed. You may not get repeatable results across machines.&lt;br /&gt;
&lt;br /&gt;
[[Category:Daala]]&lt;/div&gt;</summary>
		<author><name>Tdaede</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=RD_Curve_Data_Format&amp;diff=15476</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=15476"/>
		<updated>2015-02-18T22:00:03Z</updated>

		<summary type="html">&lt;p&gt;Tdaede: Created page with &amp;quot;RD curves produced by rd_collect.sh and AreWeCompressedYet are text files with one data point per line, separated by spaces.  &amp;lt;quantizer&amp;gt; &amp;lt;number of pixels&amp;gt; &amp;lt;size in bytes&amp;gt; &amp;lt;psnr...&amp;quot;&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;
&amp;lt;quantizer&amp;gt; &amp;lt;number of pixels&amp;gt; &amp;lt;size in bytes&amp;gt; &amp;lt;psnr&amp;gt; &amp;lt;psnrhvs&amp;gt; &amp;lt;ssim&amp;gt; &amp;lt;fastssim&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that the units for all metric results are in dB. See the tools directory in the Daala source code for how they are calculated.&lt;/div&gt;</summary>
		<author><name>Tdaede</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=AreWeCompressedYet&amp;diff=15473</id>
		<title>AreWeCompressedYet</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=AreWeCompressedYet&amp;diff=15473"/>
		<updated>2015-02-17T20:07:06Z</updated>

		<summary type="html">&lt;p&gt;Tdaede: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[https://arewecompressedyet.com/ AreWeCompressedYet] is an automatic service for compressing videos with Daala and other codecs.&lt;br /&gt;
&lt;br /&gt;
It generates graphs using different metrics, to enable comparisons between different versions of the Daala source code.&lt;br /&gt;
&lt;br /&gt;
For bugs and enhancements, see its [https://github.com/tdaede/awcy/issues GitHub Issues] page.&lt;br /&gt;
&lt;br /&gt;
==Command-line tools==&lt;br /&gt;
===submit_awcy.py===&lt;br /&gt;
Usage:&lt;br /&gt;
  DAALA_ROOT=./ submit_awcy.py --help&lt;br /&gt;
&lt;br /&gt;
You must have a secret_key file in the current directory, containing your key to access AreWeCompressedYet.&lt;br /&gt;
&lt;br /&gt;
By default, the prefix used for the run is your local branch name.&lt;br /&gt;
&lt;br /&gt;
==Repos==&lt;br /&gt;
https://github.com/tdaede/awcy&lt;br /&gt;
&lt;br /&gt;
https://github.com/tdaede/rd_tool&lt;br /&gt;
&lt;br /&gt;
==Internal tools==&lt;br /&gt;
* rd_tool.py:  is the main script that controls the AWCY machines and gathers the results. It has a similar interface to rd_collect.sh in the Daala repository.&lt;br /&gt;
&lt;br /&gt;
* metrics_gather.sh: A script called by rd_tool.py, contains the command line parameters for all testable codecs.&lt;br /&gt;
&lt;br /&gt;
==Machine==&lt;br /&gt;
The server is a CentOS 7 virtual machine running on catfish.xiph.org. There are few config file changes, so the CentOS machine should be easily upgradeable to get security fixes.&lt;br /&gt;
&lt;br /&gt;
===Daemons===&lt;br /&gt;
&lt;br /&gt;
====awcy====&lt;br /&gt;
The AWCY server has a unit file at &#039;&#039;&#039;/etc/systemd/system/awcy.service&#039;&#039;&#039;. It listens at &#039;&#039;&#039;localhost:3000&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
====nginx====&lt;br /&gt;
NGINX is configured to be a TLS endpoint and proxy_pass to localhost:3000.&lt;br /&gt;
&lt;br /&gt;
====firewalld====&lt;br /&gt;
&lt;br /&gt;
====chrony====&lt;br /&gt;
Chrony is required to keep the system time in sync. Amazon Web Services signatures require an accurate system clock.&lt;br /&gt;
&lt;br /&gt;
====journald====&lt;br /&gt;
See AWCY logs with&lt;br /&gt;
  journalctl -u awcy.service&lt;br /&gt;
&lt;br /&gt;
===Directory Structure===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
-rw-rw-r--.  1 awcy awcy 3078 Aug 19 19:06 awcy_server.js&lt;br /&gt;
-rwxrwxr-x.  1 awcy awcy  169 Aug 17 23:43 create_test_branch.sh&lt;br /&gt;
drwxrwxr-x. 12 awcy awcy 4096 Aug 20 16:31 daala&lt;br /&gt;
-rw-------.  1 root root 1692 Aug 18 16:26 daala.pem&lt;br /&gt;
drwxrwxr-x. 14 awcy awcy 4096 Aug 19 15:02 daalatool&lt;br /&gt;
-rw-rw-r--.  1 awcy awcy 1079 Aug  7 19:31 LICENSE&lt;br /&gt;
drwxrwxr-x.  5 awcy awcy   48 Aug 17 23:47 node_modules&lt;br /&gt;
-rwxrwxr-x.  1 awcy awcy  124 Aug 18 17:22 nuke_branch.sh&lt;br /&gt;
drwxrwxr-x.  3 awcy awcy 4096 Aug 18 17:17 rd_tool&lt;br /&gt;
-rw-rw-r--.  1 awcy awcy   10 Aug  7 19:31 README.md&lt;br /&gt;
drwxrwxr-x. 25 awcy awcy 4096 Aug 20 19:49 runs&lt;br /&gt;
-rwxrwxr-x.  1 awcy awcy  148 Aug 17 23:43 run_video_test.sh&lt;br /&gt;
-rw-rw-r--.  1 awcy awcy   23 Aug 17 23:48 secret_key&lt;br /&gt;
-rwxrwxr-x.  1 awcy awcy 1212 Aug 19 14:27 submit_awcy.py&lt;br /&gt;
drwxrwxr-x.  2 awcy awcy 4096 Aug 19 21:33 www&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Files not part of github repo===&lt;br /&gt;
* node_modules: created by npm when you install the necessary node modules to run awcy_server.js.&lt;br /&gt;
* daala.pem: Private SSH key used to connect to the AWS instances.&lt;br /&gt;
* daalatool: A local clone of Daala, used for the contents of the tools/ directory.&lt;br /&gt;
* secret_key: File containing the secret key used on the main website.&lt;br /&gt;
* config.json: Contains IRC channel to connect to. TODO: put secret_key and other stuff in here too.&lt;br /&gt;
&lt;br /&gt;
* rd_tool/daala.pem: same file as in higher level directory&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
.ssh/config contents:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Host *&lt;br /&gt;
      	StrictHostKeyChecking no&lt;br /&gt;
        UserKnownHostsFile=/dev/null&lt;br /&gt;
        LogLevel ERROR&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Daala]]&lt;/div&gt;</summary>
		<author><name>Tdaede</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=AreWeCompressedYet&amp;diff=15450</id>
		<title>AreWeCompressedYet</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=AreWeCompressedYet&amp;diff=15450"/>
		<updated>2015-02-08T22:07:32Z</updated>

		<summary type="html">&lt;p&gt;Tdaede: /* Directory Structure */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[https://arewecompressedyet.com/ AreWeCompressedYet] is an automatic service for compressing videos with Daala and other codecs.&lt;br /&gt;
&lt;br /&gt;
It generates graphs using different metrics, to enable comparisons between different versions of the Daala source code.&lt;br /&gt;
&lt;br /&gt;
For bugs and enhancements, see its [https://github.com/tdaede/awcy/issues GitHub Issues] page.&lt;br /&gt;
&lt;br /&gt;
==Command-line tools==&lt;br /&gt;
===submit_awcy.py===&lt;br /&gt;
Usage:&lt;br /&gt;
  DAALA_ROOT=./ submit_awcy.py --help&lt;br /&gt;
&lt;br /&gt;
You must have a secret_key file in the current directory, containing your key to access AreWeCompressedYet.&lt;br /&gt;
&lt;br /&gt;
By default, the prefix used for the run is your local branch name.&lt;br /&gt;
&lt;br /&gt;
==Repos==&lt;br /&gt;
https://github.com/tdaede/awcy&lt;br /&gt;
&lt;br /&gt;
https://github.com/tdaede/rd_tool&lt;br /&gt;
&lt;br /&gt;
==Machine==&lt;br /&gt;
The server is a CentOS 7 virtual machine running on catfish.xiph.org. There are few config file changes, so the CentOS machine should be easily upgradeable to get security fixes.&lt;br /&gt;
&lt;br /&gt;
===Daemons===&lt;br /&gt;
&lt;br /&gt;
====awcy====&lt;br /&gt;
The AWCY server has a unit file at &#039;&#039;&#039;/etc/systemd/system/awcy.service&#039;&#039;&#039;. It listens at &#039;&#039;&#039;localhost:3000&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
====nginx====&lt;br /&gt;
NGINX is configured to be a TLS endpoint and proxy_pass to localhost:3000.&lt;br /&gt;
&lt;br /&gt;
====firewalld====&lt;br /&gt;
&lt;br /&gt;
====chrony====&lt;br /&gt;
Chrony is required to keep the system time in sync. Amazon Web Services signatures require an accurate system clock.&lt;br /&gt;
&lt;br /&gt;
====journald====&lt;br /&gt;
See AWCY logs with&lt;br /&gt;
  journalctl -u awcy.service&lt;br /&gt;
&lt;br /&gt;
===Directory Structure===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
-rw-rw-r--.  1 awcy awcy 3078 Aug 19 19:06 awcy_server.js&lt;br /&gt;
-rwxrwxr-x.  1 awcy awcy  169 Aug 17 23:43 create_test_branch.sh&lt;br /&gt;
drwxrwxr-x. 12 awcy awcy 4096 Aug 20 16:31 daala&lt;br /&gt;
-rw-------.  1 root root 1692 Aug 18 16:26 daala.pem&lt;br /&gt;
drwxrwxr-x. 14 awcy awcy 4096 Aug 19 15:02 daalatool&lt;br /&gt;
-rw-rw-r--.  1 awcy awcy 1079 Aug  7 19:31 LICENSE&lt;br /&gt;
drwxrwxr-x.  5 awcy awcy   48 Aug 17 23:47 node_modules&lt;br /&gt;
-rwxrwxr-x.  1 awcy awcy  124 Aug 18 17:22 nuke_branch.sh&lt;br /&gt;
drwxrwxr-x.  3 awcy awcy 4096 Aug 18 17:17 rd_tool&lt;br /&gt;
-rw-rw-r--.  1 awcy awcy   10 Aug  7 19:31 README.md&lt;br /&gt;
drwxrwxr-x. 25 awcy awcy 4096 Aug 20 19:49 runs&lt;br /&gt;
-rwxrwxr-x.  1 awcy awcy  148 Aug 17 23:43 run_video_test.sh&lt;br /&gt;
-rw-rw-r--.  1 awcy awcy   23 Aug 17 23:48 secret_key&lt;br /&gt;
-rwxrwxr-x.  1 awcy awcy 1212 Aug 19 14:27 submit_awcy.py&lt;br /&gt;
drwxrwxr-x.  2 awcy awcy 4096 Aug 19 21:33 www&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Files not part of github repo===&lt;br /&gt;
node_modules: created by npm when you install the necessary node modules to run awcy_server.js.&lt;br /&gt;
daala.pem: Private SSH key used to connect to the AWS instances.&lt;br /&gt;
daalatool: A local clone of Daala, used for the contents of the tools/ directory.&lt;br /&gt;
secret_key: File containing the secret key used on the main website.&lt;br /&gt;
config.json: Contains IRC channel to connect to. TODO: put secret_key and other stuff in here too.&lt;br /&gt;
&lt;br /&gt;
rd_tool/daala.pem: same file as in higher level directory&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
.ssh/config contents:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Host *&lt;br /&gt;
      	StrictHostKeyChecking no&lt;br /&gt;
        UserKnownHostsFile=/dev/null&lt;br /&gt;
        LogLevel ERROR&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Daala]]&lt;/div&gt;</summary>
		<author><name>Tdaede</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=DaalaTodo&amp;diff=15043</id>
		<title>DaalaTodo</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=DaalaTodo&amp;diff=15043"/>
		<updated>2014-10-24T03:13:40Z</updated>

		<summary type="html">&lt;p&gt;Tdaede: /* AreWeCompressedYet */&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;br /&gt;
&lt;br /&gt;
= AreWeCompressedYet =&lt;br /&gt;
Bug tracker: https://github.com/tdaede/awcy/issues&lt;br /&gt;
* Huge batch run of all versions of Daala&lt;br /&gt;
* Look at rd_tool options and improve&lt;br /&gt;
* Add realtime constraint options for x265&lt;/div&gt;</summary>
		<author><name>Tdaede</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=AreWeCompressedYet&amp;diff=15041</id>
		<title>AreWeCompressedYet</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=AreWeCompressedYet&amp;diff=15041"/>
		<updated>2014-10-21T15:58:03Z</updated>

		<summary type="html">&lt;p&gt;Tdaede: /* Directory Structure */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[https://arewecompressedyet.com/ AreWeCompressedYet] is a service for compressing videos with Daala.&lt;br /&gt;
&lt;br /&gt;
==Command-line tools==&lt;br /&gt;
===submit_awcy.py===&lt;br /&gt;
Usage:&lt;br /&gt;
  DAALA_ROOT=./ submit_awcy.py --help&lt;br /&gt;
&lt;br /&gt;
You must have a secret_key file in the current directory, containing your key to access AreWeCompressedYet.&lt;br /&gt;
&lt;br /&gt;
By default, the prefix used for the run is your local branch name.&lt;br /&gt;
&lt;br /&gt;
==Repos==&lt;br /&gt;
https://github.com/tdaede/awcy&lt;br /&gt;
&lt;br /&gt;
https://github.com/tdaede/rd_tool&lt;br /&gt;
&lt;br /&gt;
==Machine==&lt;br /&gt;
The server is a CentOS 7 virtual machine running on catfish.xiph.org. There are few config file changes, so the CentOS machine should be easily upgradeable to get security fixes.&lt;br /&gt;
&lt;br /&gt;
===Daemons===&lt;br /&gt;
====awcy====&lt;br /&gt;
The AWCY server has a unit file at /etc/systemd/system/awcy.service. It listens at localhost:3000.&lt;br /&gt;
====nginx====&lt;br /&gt;
NGINX is configured to be a TLS endpoint and proxy_pass to localhost:3000.&lt;br /&gt;
====firewalld====&lt;br /&gt;
====chrony====&lt;br /&gt;
Chrony is required to keep the system time in sync. Amazon Web Services signatures require an accurate system clock.&lt;br /&gt;
====journald====&lt;br /&gt;
See AWCY logs with&lt;br /&gt;
  journalctl -u awcy.service&lt;br /&gt;
&lt;br /&gt;
===Directory Structure===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
-rw-rw-r--.  1 awcy awcy 3078 Aug 19 19:06 awcy_server.js&lt;br /&gt;
-rwxrwxr-x.  1 awcy awcy  169 Aug 17 23:43 create_test_branch.sh&lt;br /&gt;
drwxrwxr-x. 12 awcy awcy 4096 Aug 20 16:31 daala&lt;br /&gt;
-rw-------.  1 root root 1692 Aug 18 16:26 daala.pem&lt;br /&gt;
drwxrwxr-x. 14 awcy awcy 4096 Aug 19 15:02 daalatool&lt;br /&gt;
-rw-rw-r--.  1 awcy awcy 1079 Aug  7 19:31 LICENSE&lt;br /&gt;
drwxrwxr-x.  5 awcy awcy   48 Aug 17 23:47 node_modules&lt;br /&gt;
-rwxrwxr-x.  1 awcy awcy  124 Aug 18 17:22 nuke_branch.sh&lt;br /&gt;
drwxrwxr-x.  3 awcy awcy 4096 Aug 18 17:17 rd_tool&lt;br /&gt;
-rw-rw-r--.  1 awcy awcy   10 Aug  7 19:31 README.md&lt;br /&gt;
drwxrwxr-x. 25 awcy awcy 4096 Aug 20 19:49 runs&lt;br /&gt;
-rwxrwxr-x.  1 awcy awcy  148 Aug 17 23:43 run_video_test.sh&lt;br /&gt;
-rw-rw-r--.  1 awcy awcy   23 Aug 17 23:48 secret_key&lt;br /&gt;
-rwxrwxr-x.  1 awcy awcy 1212 Aug 19 14:27 submit_awcy.py&lt;br /&gt;
drwxrwxr-x.  2 awcy awcy 4096 Aug 19 21:33 www&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
.ssh/config contents:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Host *&lt;br /&gt;
      	StrictHostKeyChecking no&lt;br /&gt;
        UserKnownHostsFile=/dev/null&lt;br /&gt;
        LogLevel ERROR&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tdaede</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=DaalaTodo&amp;diff=15040</id>
		<title>DaalaTodo</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=DaalaTodo&amp;diff=15040"/>
		<updated>2014-10-20T17:45:38Z</updated>

		<summary type="html">&lt;p&gt;Tdaede: &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;br /&gt;
&lt;br /&gt;
= AreWeCompressedYet =&lt;br /&gt;
* Huge batch run of all versions of Daala&lt;br /&gt;
* Look at rd_tool options and improve&lt;br /&gt;
* Add realtime constraint options for x265&lt;/div&gt;</summary>
		<author><name>Tdaede</name></author>
	</entry>
	<entry>
		<id>https://wiki.xiph.org/index.php?title=Daala&amp;diff=15019</id>
		<title>Daala</title>
		<link rel="alternate" type="text/html" href="https://wiki.xiph.org/index.php?title=Daala&amp;diff=15019"/>
		<updated>2014-10-07T19:44:20Z</updated>

		<summary type="html">&lt;p&gt;Tdaede: /* Wiki Resources */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Daala is the code-name for a new video compression technology. The effort is a collaboration between Mozilla Foundation, Xiph.Org Foundation and other contributors.&lt;br /&gt;
&lt;br /&gt;
The goal of the project is to provide a free to implement, use and distribute digital media format and reference implementation with technical performance superior to h.265. &lt;br /&gt;
&lt;br /&gt;
Please see the [https://www.xiph.org/daala/ main page] for more information.&lt;br /&gt;
&lt;br /&gt;
==Wiki Resources==&lt;br /&gt;
&lt;br /&gt;
[[Daala Quickstart]]&lt;br /&gt;
&lt;br /&gt;
[[Daala Weekly Meetings|Daala Weekly Meetings]]&lt;br /&gt;
&lt;br /&gt;
[[AreWeCompressedYet]]&lt;br /&gt;
&lt;br /&gt;
[[Daala_on_Wheels|Historical Daala wiki page]]&lt;br /&gt;
&lt;br /&gt;
[[DaalaTodo|Daala To-do List]]&lt;/div&gt;</summary>
		<author><name>Tdaede</name></author>
	</entry>
</feed>