Daala: Difference between revisions

From XiphWiki
Jump to navigation Jump to search
(added slides and unlord's intra demo links)
 
(162 intermediate revisions by 10 users not shown)
Line 1: Line 1:
Daala is the code-name for a new video compression technology.
Daala is the codename for a new video compression technology.


The effort is a collaboration between [https://www.mozilla.org/en-US/research/ Mozilla Foundation], [https://www.xiph.org/ Xiph.Org Foundation] and other contributors.
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.


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 [https://en.wikipedia.org/wiki/High_Efficiency_Video_Coding H.265].  
The goal of the project is to provide a video format that'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].  


Please see the [https://www.xiph.org/daala/ main page] for more information.
Please see the links below or the [https://www.xiph.org/daala/ main page] for more information.
 
==Wiki Resources==


== Wiki Pages ==
* [[Daala Quickstart|Daala Quickstart (Linux/MacOS)]]
* [[Daala Quickstart|Daala Quickstart (Linux/MacOS)]]
* [[Daala Quickstart Windows|Daala Quickstart (Windows)]]
* [[Daala Quickstart Windows|Daala Quickstart (Windows)]]
* [[Daala MinGW64 Environment]]
* [[Daala Weekly Meetings|Daala Weekly Meetings]]
* [[Daala Weekly Meetings|Daala Weekly Meetings]]
* [[AreWeCompressedYet]]
* [[AreWeCompressedYet]]
* [[RD Curve Data Format]]
* [[DaalaTodo|Daala To-do List]]
* [[DaalaTodo|Daala To-do List]]
* [[DaalaRoadmap|Daala Roadmap]]
* [[DaalaRoadmap|Daala Roadmap]]
* [[Intra|Intra-prediction within Daala]]
* [[Intra|Intra-prediction within Daala]]
* [[Daala_on_Wheels|Historical Daala wiki page]]


==External Resources==
* [[Videos|Digital Primers]] - educational videos about audio/video technology
 
== Communication ==
You are '''encouraged''' to join the
* [irc://irc.libera.chat/daala '''#daala''' IRC channel at libera.chat].
* [http://lists.xiph.org/mailman/listinfo/daala Daala Email List]
 
=== Weekly Meetings ===
You are also welcome to attend the public [[Daala Weekly Meetings|weekly progress meetings]] by installing and using [http://wiki.mumble.info Mumble].<br />
The address is '''mf4.xiph.org''' and the port is '''64738''' (you can run '''mumble://mf4.xiph.org:64738''' within your browser as a shortcut).<br />
The meetings occur on '''Tuesdays''' at '''[http://www.timeanddate.com/worldclock/fixedtime.html?msg=Daala+Weekly+Meeting&iso=20150428T09&p1=1241 9AM Pacific Time]''' (5PM UTC/GMT).
The meeting agenda used to be available at '''[https://daala.etherpad.mozilla.org/weekly-meeting this Etherpad]''', 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].
 
=== Other ===
* [http://forum.doom9.org/showthread.php?t=168004 Doom9 Forum discussion] - generic forum thread regarding Daala
* <del>[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.</del> Mozilla are transitioning to Etherpad Lite.
* [http://benjamin.smedbergs.us/weekly-updates.fcgi/project/daala Daala Project Status Board] - what Daala bits the Mozilla people are working on
 
== Coding ==
You can get a copy of the latest Daala Source Code from [https://git.xiph.org/?p=daala.git;a=summary '''git.xiph.org'''] or [https://github.com/xiph/daala '''GitHub''']. Please stick to the '''[https://git.xiph.org/?p=daala.git;a=blob_plain;f=doc/coding_style.html Coding Style Guide]'''.
 
* [https://review.xiph.org/all?limit=100 Xiph Code Reviews] - there is a proposal on the review process '''[[DaalaReview|here]]'''
* [https://github.com/xiph/daala/issues Daala's issues] - Issue/bug tracker on Github
* [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't broken existing functionality.
* [[OggDaala]] - definitions for embedding Daala video within an [[Ogg]] container.
 
== Demos ==
* [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].
 
=== Codec Techniques ===
* [https://people.xiph.org/~xiphmont/demo/ Demo Articles] - explanations on certain techniques used in Daala (and other Xiph.Org projects)
* [http://exp.martres.me/edi/ Edge-Directed Interpolation] ([https://github.com/smarter/edi source code])
* [https://people.xiph.org/~ds/edi/info.html More Edge-Directed Interpolation]
* [https://people.xiph.org/~unlord/demo/intra.html Intra-prediction]
* [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.
* [https://jmvalin.ca/video/haar_example/ Still Image Screenshots] - comparison between Daala's Lapped Transform and Haar methods, and JPEG/x264/x265.
 
== Documents ==
* [https://people.xiph.org/~unlord/spie_cfl.pdf Chroma from Luma (CfL)]
* [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]
* [https://people.xiph.org/~tterribe/daala/vbsobmc.pdf Overlapped Block Motion Compensation (OBMC)]
* [https://mf4.xiph.org/jenkins/job/daala-autotools/ws/doc/html/index.html C API Documentation]
* [https://people.xiph.org/~yushin/tmp__/yushin_phd_thesis.pdf Image Coding Thesis] by Yushin Cho
* [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't work well within Daala]
* [http://jmvalin.ca/video/theoretical_results.pdf JMSpeex' Journal of Dubious Theoretical Results] - "take with an entire shaker-full of salt"
* [https://people.xiph.org/~unlord/pcs_daala.pdf Using Daala Intra Frames for Still Picture Coding]
* [http://arxiv.org/abs/1602.05975 The Daala Directional Deringing Filter]
* [https://people.xiph.org/~unlord/icip2016.pdf Daala: A Perceptually-Driven Still Image Codec](draft) - submitted at [http://2016.ieeeicip.org/ ICIP 2016].
* [http://people.xiph.org/~tterribe/daala/neon_tutorial.pdf SIMD Assembly Tutorial: ARM NEON]
* [https://jmvalin.ca/video/mmsp2016_poster.pdf Daala Technologies Poster]
 
=== IETF Drafts ===
* [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
* [https://tools.ietf.org/html/draft-valin-videocodec-pvq Perceptual Vector Quantisation (PVQ)] -
* [https://tools.ietf.org/html/draft-terriberry-codingtools Coding Tools] - documents Entropy Coding, Integer Transforms and other techniques
* [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
* [https://tools.ietf.org/html/draft-daede-netvc-testing Internet Video Codec (NetVC) Testing and Quality Measurement]
* [https://tools.ietf.org/html/draft-terriberry-ipr-license Example IPR Licence Terms]
 
Additional drafts can be found at the [https://datatracker.ietf.org/wg/netvc/documents/ IETF DataTracker].
 
== Presentations ==
For a more in-depth look at the IETF's NetVC Meetings, use the [https://datatracker.ietf.org/wg/netvc/meetings/ IETF DataTracker].
 
* 2017-11-15 - IETF 100 - [https://www.youtube.com/watch?v=_wRLR8ypCg0&t=4682s Video] - [https://docs.google.com/presentation/d/12BsMrcGo27bgf7OMpOmlIZUEBblMmBXESCeG3_FZ5cI/edit#slide=id.p Slides]
* 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]
* 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]
* 2017-01-17 - Linux Conf AU - [https://www.youtube.com/watch?v=lzPaldsmJbk Video] - [https://people.xiph.org/~tterribe/pubs/lca2017/aom.pdf Slides]
-------
* 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&chapter=chapter_1 Video and Chat] - [https://datatracker.ietf.org/meeting/97/session/netvc/ Slides]
* 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]
* 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&t=41m40s Video] - [http://people.xiph.org/~tterribe/daala/daala-spie-adip2016-slides.pdf Slides]
* 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&chapter=chapter_1 Video and Chat] - [https://datatracker.ietf.org/meeting/96/session/netvc/ Slides]
* 2016-06-27 - Daala's Entropy Coder - [http://people.xiph.org/~tterribe/daala/daala_ec.pdf Slides]
* 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&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]
* 2016-04-01 - DCC 2016 - [https://people.xiph.org/~unlord/Daala-DCC2016.pdf Slides] - [https://people.xiph.org/~unlord/1853a466.pdf Paper]
* 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]
-------
* 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]
* 2015-10-24 - LinuxDay 24 (Turin) - [https://people.xiph.org/~tterribe/daala/linuxday24.pdf Slides]
* 2015-10-21 - MPEG 113 - Future Video Coding Workshop - [https://people.xiph.org/~tterribe/daala/mpeg113.pdf Slides]
* 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]
* 2015-07-22 - IETF 93 - [http://recordings.conf.meetecho.com/Playout/watch.jsp?recording=IETF93_NETVC_II&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]
* 2015-07-20 - IETF 93 - [http://recordings.conf.meetecho.com/Playout/watch.jsp?recording=IETF93_NETVC&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]
* 2015-03-24 - IETF 92 - [http://recordings.conf.meetecho.com/Playout/watch.jsp?recording=IETF92_NETVC&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]
* 2015-02-11 - SPIE talks:
<!-- Originals of these 3 videos can be found at http://people.xiph.org/~unlord/ -->
<!-- Someday, should do a better encode... -->
** [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]
** [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]
** [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]
* 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]
* 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]
-------
* 2014-09-16 - [https://air.mozilla.org/daala-are-we-compressed-yet/ Daala: Are We Compressed Yet?]
* 2014-06-25 - [https://air.mozilla.org/sparsity-induced-prediction-for-images-and-video/ Sparsity Induced Prediction for Images and Video]
* 2014-06-06 - VP9 Summit (no video available) - [https://people.xiph.org/~xiphmont/demo/daala/daala-vp9summit-20140606.pdf Slides]
-------
* 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]
* 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]
* 2013-05-02 - [https://people.xiph.org/~xiphmont/tim-terriberry-presents-daala/ Tim Terriberry Presents Daala]
-------
* 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)


* [https://review.xiph.org/ Xiph Code Reviews] - there is a proposal on the review process '''[[DaalaReview|here]]'''
== Other Websites ==
* [https://git.xiph.org/?p=daala.git;a=summary Daala Git Repository]
* [https://www.youtube.com/playlist?list=PLEeMksZoEQ1xQEuLF50w0RwDwLgDGwSG- Daala Presentations on YouTube]
* [https://people.xiph.org/~xiphmont/demo/ Monty's Demo Pages]
* [https://www.youtube.com/playlist?list=PLOU2XLYxmsIJGErt5rrCqaSGTMyyqNt2H Google's Compressor Head videos] - a beginner's introduction to the world of data compression
* [https://people.xiph.org/~xiphmont/demo/daala/player-demo.shtml Daala Player] demo in JavaScript
* [https://www.zazzle.com/daala_tee_shirt-235139149596175944 Daala T-shirts] - if you'd like a free one, help out with the project and ask the Mozilla guys nicely for one :-)
* [https://exp.martres.me/edi/ Edge-directed Interpolation] demo in JavaScript
* [https://www.xiph.org/donate/ Donate to Xiph.Org]  
* [https://people.xiph.org/~unlord/demo/intra.html Intra-prediction] demo in Javascript
* [[Daala_on_Wheels|Historical Daala wiki page]]
* [https://lists.xiph.org/mailman/listinfo/daala Daala Emailing List] - join up for fresh emails!


==Video Presentations==
[[Category:Daala]]
* 2014-09-16 [https://air.mozilla.org/daala-are-we-compressed-yet/ Daala: Are We Compressed Yet?]
* 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]
* 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's slides]
* 2013-05-02 [https://people.xiph.org/~xiphmont/tim-terriberry-presents-daala/ Tim Terriberry Presents Daala]
* 2012-01-24 [https://media.basilgohar.com/derf-talks/?C=M;O=A Tim Terriberry Talks] (in 3 different formats) - [https://people.xiph.org/~tterribe/pubs/lca2012/auckland/intro_to_video1.pdf accompanying slides] (no video for slides 1-50 unfortunately)

Latest revision as of 20:24, 25 May 2021

Daala is the codename for a new video compression technology.

The effort is a collaboration between the Mozilla Foundation, the Xiph.Org Foundation and any other contributors that wish to help.

The goal of the project is to provide a video format that's free to implement, use and distribute, and a reference implementation with technical performance superior to H.265.

Please see the links below or the main page for more information.

Wiki Pages

Communication

You are encouraged to join the

Weekly Meetings

You are also welcome to attend the public weekly progress meetings by installing and using Mumble.
The address is mf4.xiph.org and the port is 64738 (you can run mumble://mf4.xiph.org:64738 within your browser as a shortcut).
The meetings occur on Tuesdays at 9AM Pacific Time (5PM UTC/GMT). The meeting agenda used to be available at this Etherpad, the October 13, 2015 meeting is available on Google Docs and, following the migration to Etherpad Lite, the meeting agenda and minutes are now available at this Etherpad.

Other

Coding

You can get a copy of the latest Daala Source Code from git.xiph.org or GitHub. Please stick to the Coding Style Guide.

Demos

Codec Techniques

Documents

IETF Drafts

Additional drafts can be found at the IETF DataTracker.

Presentations

For a more in-depth look at the IETF's NetVC Meetings, use the IETF DataTracker.






Other Websites