Jump to content

Daala: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
Flugaal (talk | contribs)
No edit summary
→‎History: The video sourced states 0.5 bpp, not 5 bpp
Line 53: Line 53:
On May 30 an [[Software release life cycle#Alpha|alpha]] prototype of Daala was used to [[Streaming media|stream]] video over the Internet.<ref name="IntroducingDaalaJune2013Xiph"/>
On May 30 an [[Software release life cycle#Alpha|alpha]] prototype of Daala was used to [[Streaming media|stream]] video over the Internet.<ref name="IntroducingDaalaJune2013Xiph"/>


On September 17, 2014, it was generally stated that it could produce better results than its peers up to about 5 bits per pixel.<ref name="AreWeCompressedYet"/>
On September 17, 2014, it was generally stated that it could produce better results than its peers up to about 0.5 bits per pixel.<ref name="AreWeCompressedYet"/>


According to Timothy Terriberry, another year of development is needed as of January 2015.<ref name="LinuxConfAu2015"/>
According to Timothy Terriberry, another year of development is needed as of January 2015.<ref name="LinuxConfAu2015"/>

Revision as of 00:16, 6 August 2015

Daala
Filename extension
.ogv
Internet media type
video/ogg
Developed byXiph.Org, Mozilla, IETF
Type of formatlossily compressed video
Contained byOgg
Free format?Yes
Websitexiph.org/daala

Daala is the current working name of a video coding format and accompanying reference codec implementation under development by the Xiph.Org Foundation and main sponsor Mozilla Corporation under the lead of Timothy B. Terriberry.[1] Among three dozens of other contributors there are also engineers from Google, Inc. and Cisco Systems. The name is taken from the female fictional character of Admiral Natasi Daala from the Star Wars universe.

The reference implementation is written in C and published, together with its source code, as free software under the terms of a BSD-like license.

Software patents are being filed for techniques used in and developed for Daala. Those patents are freely licensed to everybody to use for any purpose. However the patent holders reserve the right to use them to counter patent infringement lawsuits filed by others.

Since June 20, 2013, the development is accompanied by a series of irregularly published posts on the underlying technology on the website of the Xiph.Org Foundation.[2][3][4] Also, participants of the project give talks at IT conferences from time to time.

Design goals

Daala is aimed to be a suitable proposal for a new for video coding standard for the Internet and real-time applications. Therefore it is meant to be useable free from patent licensing constraints and to be openly documented to enable widespread adoption.[5] Also, it is being designed to cover a broad spectrum of use cases.

Daala is projected to eventually perform competitive or superior in comparison to other modern formats. The developers want to rely less on incremental improvements on traditional design principles. They are observed to show decreasing returns after many years of exploitation or tend to come with growing increases in complexity. (All widely adopted designs to date share the same basic design that dates back to H.261 from two decades ago.) Instead, the higher risk of researching and trying new basic techniques is expected to yield more new and potentially more rewarding algorithms. The approach is also thought to be of advantage in order to avoid infringing on existing software patents.

Moreover, possibilities for parallel processing are considered and hardware support is being pursued.

Daala is intended to be a high-efficiency video coding format for use cases similar to those of High Efficiency Video Coding (HEVC or H.265) and VP9.[6] It has been stated that the performance goal is to be a generation beyond HEVC and VP9, though.[7]

Technology

Daala is a block-based transform coding scheme based on a discrete cosine transform.

As a basic technology Daala uses an unconventional frequency transform with overlapping blocks. This reduces the blocking artifacts characteristic of other video codecs that use the discrete cosine transform (DCT) directly, without the need for additional filtering against blocking artefacts.[8]

The coefficients are coded by Perceptual Vector Quantisation (PVQ, a spherical vector quantisation), which models human perception.

All substreams that the encoder produces are coded to one bitstream by a range encoder.

History

Within the family of Xiph.Org multimedia formats, Daala is the successor to Theora from 2004. Problems with agreeing on video formats for WebRTC and successes in the development of the audio coding standard Opus are being cited as motivations for developing a video coding standard. Following up on the successful standardisation of Opus at the Internet Engineering Task Force (IETF), it was planned to also be develop a worldwide video coding standard there.[5] The purpose of Daala is to provide an initial proposal for the development of that standard. Therefore it is hoped to be transformed by or reassembled with a lot of useful contributions by other parties.

First experimental code already existed in 2010.[9] First steps in moving from merely investigating coding techniques to having a functional prototype were planned to start on May 27, 2013.[10] On May 30 an alpha prototype of Daala was used to stream video over the Internet.[2]

On September 17, 2014, it was generally stated that it could produce better results than its peers up to about 0.5 bits per pixel.[11]

According to Timothy Terriberry, another year of development is needed as of January 2015.[12]

After several preliminary meetings, a respective working group with the mission to develop an „Internet Video Codec“ („NetVC“) officially commenced activity on May 18, 2015.[13] Among other contributions, a series of coding techniques from Daala were officially proposed to the group.[14]

NetVC

The IETF has established a working group for the development of an Internet Standard for video coding, which Daala is supposed to be merged into.

The July 2015 basic draft requirements for NetVC are support for a bit depth of 8-bits to 10-bits per sample, 4:2:0 and 4:2:2 chroma subsampling, low coding delay capability, feasible real time decoder/encoder software implementations, temporal scalability, and error resilience tools.[15] The July 2015 optional draft requirements for NetVC is support for a bit depth of up to 16-bits per sample, 4:4:4 chroma sampling, RGB video, auxiliary channel planes, high dynamic range, and parallel processing tools.[15]

At the IETF there are now also other partners involved in the development of Daala (and its successor). E. g. there's now technology being incorporated into Daala that has been contributed by the company Cisco Systems, which was also involved in the development of HEVC.[16]

Schedule

The planned schedule for the development of NetVC:[17]

  • July 2016: Informational document on requirements and evaluation criteria.
  • May 2017: Standards documents on codec specification and storage format specification. Informational document on reference implementation.
  • December 2017: Informational document on test results.

See also

Further reading

  • Malvar, Henrique S. (November 1992). "Extended Lapped Transforms: Properties, Applications, and Fast Algorithms" (PDF). IEEE Transactions on Signal Processing. pp. 2703–2714. doi:10.1109/78.165657. Retrieved April 20, 2014.
  • Tran, Trac D.; Liang, Jie; Tu, Chengjie (June 2003). "Lapped Transform via Time-Domain Pre- and Post-Filtering" (PDF). IEEE Transactions on Signal Processing. 51 (6). Retrieved April 20, 2014.

References

  1. ^ Roettgers, Janko (2013-10-15). "Open codec pioneer leaves Red Hat, joins Mozilla to work on next-generation video codec". GigaOm. Retrieved 2014-04-20.
  2. ^ a b Monty (2013-06-20). "Introducing Daala". Xiph.Org Foundation. Retrieved 2013-06-21.
  3. ^ Lapped Transform via Time-Domain Pre- and Post-Filtering, Trac D. Tran, Jie Liang, Chengjie Tu, IEEE Transactions on Signal Processing, vol. 51, no. 6, June 2003, accessed 2013-06-22.
  4. ^ Extended Lapped Transforms: Properties, Applications, and Fast Algorithms, Henrique S. Malvar, Dept. of Electrical Engineering, Universidade de Brasília. in: IEEE Trans. on Signal Processing, vol. 40, no. 11, pp. 2703–2714, Nov. 1992.
  5. ^ a b Lucian Armasu (2015-03-25). "IETF Begins Standardization Process For Next-Generation 'NETVC' Video Codec (Daala)". Tom's Hardware. Retrieved 2015-03-28.
  6. ^ Shankland, Stephen (2013-11-15). "VLC steps into next-gen video wars with VP9, HEVC support". CNet. Retrieved 2014-04-20.
  7. ^ Parfeni, Lucian (2013-10-30). "Mozilla Announces Next-Generation Video Codec to Leapfrog Google's VP9 and H.265". Softpedia. Retrieved 2014-04-20.
  8. ^ Willis, Nathan (2013-10-30). "Developing the Opus and Daala codecs". LWN.net. Retrieved 2014-04-20.
  9. ^ "Initial import of Timothy Terriberry's daala-exp code". github.com. GitHub. 2010-10-13. Retrieved 2015-08-01.
  10. ^ message from Timothy B. Terriberry from May 20, 2013 over the video-codec mailinglist of the IETF: Daala Coding Party
  11. ^ "Daala: Are We Compressed Yet?". Mozilla Foundation. 2014-09-17. Retrieved 2014-12-15.
  12. ^ "The Daala Video Codec Still Needs At Least Another Year Of Development". Phoronix. 2015-01-19. Retrieved 2015-03-12.
  13. ^ Internet Video Codec (netvc) – History
  14. ^ NetVC Working Group Documents
  15. ^ a b A. Filippov (2015-07-06). "Video Codec Requirements". IETF. Retrieved 2015-08-02.
  16. ^ NETVC Hackathon Results IETF 93 (Prague) (PDF)
  17. ^ "Internet Video Codec (netvc)". IETF. Retrieved 2015-08-02.