Jump to content

Dirac (video compression format)

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by 84.44.153.128 (talk) at 17:37, 6 December 2009 (→‎External links: cleanup). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

dirac-research
Developer(s)BBC Research Department
Stable release
1.0.2 / February 12, 2009; 15 years ago (2009-02-12)
Operating systemCross-platform
TypeVideo codec, reference implementation
LicenseMPL 1.1, GNU GPL 2, GNU LGPL 2.1
Websitediracvideo.org
Schrödinger
Developer(s)David Schleef
Stable release
1.0.7 / April 23, 2009; 15 years ago (2009-04-23)
Operating systemCross-platform
TypeVideo codec
LicenseMPL 1.1, GNU GPL 2, GNU LGPL 2, MIT License
Websitediracvideo.org

Dirac is an open and royalty-free video compression format, specification and system developed by BBC Research at the BBC.[1][2] Schrödinger and dirac-research (formerly just called 'Dirac') are an open and royalty-free software implementations (video codecs) of Dirac. Dirac format aims to provide high-quality video compression from web video up to ultra HD[2] and beyond, and as such competes with existing formats such as H.264 and VC-1.

The specification was finalised on 21 January 2008, and further developments will only be bug fixes and constraints.[3] In September of that year version 1.0.0 of the reference implementation was released which corresponds to an intra-frame only subset known as Dirac Pro, which has been proposed to the SMPTE for standardisation as VC-2.[4][5][6] Version 2.2.3 of the full Dirac specification, including motion compensation and inter-frame coding, was issued a few days later.[7] Dirac Pro was used internally by the BBC to transmit HDTV pictures at the Beijing Olympics in 2008.[8][9][10]

The format is named in honour of the British scientist Paul Dirac, and the Austrian Erwin Schrödinger.

Technology

Dirac supports resolutions up to HDTV (1920x1080) and greater and is claimed to provide significant savings in data rate and improvements in quality over video compression formats such as MPEG-2 Part 2, MPEG-4 Part 2 and its derivatives, Theora, and WMV. Dirac's implementers make the preliminary claim of "a two-fold reduction in bit rate over MPEG-2 for high definition video",[11], which makes it comparable to the latest generation standards such as H.264/MPEG-4 AVC and VC-1.

Dirac supports both constant bit rate and variable bit rate operation. When the own delay syntax is used, the bit rate will be constant for each area (Dirac slice) in a picture to ensure constant latency.[12]

Dirac employs wavelet compression, instead of the discrete cosine transforms used in most older compression formats. Dirac is one of several projects attempting to apply wavelets to video compression. Others include Rududu,[13] Snow, RedCode and Tarkin. Wavelet compression is also used in the JPEG 2000 compression standard for photographic images.

Dirac can be used in various container formats (e.g., AVI, Ogg, MKV).[14] It was registered for the use in container formats based on the ISO base media file format (MPEG-4 Part 12; e.g., MP4).[15] It was also registered for use in MPEG-2 transport stream.[16]

Software implementations

Two software implementations of the specification currently exist. The first is the BBC's reference implementation, formerly just called Dirac but renamed dirac-research to avoid confusion. It is written in C++ and released under the Mozilla Public License, GNU GPL 2 and GNU LGPL free software licenses. Version 1.0.0 of this implementation was released on 17 September 2008.

A second implementation called Schrödinger was funded by the BBC and aims to provide high-performance, portable version of the codec whilst remaining 100% bitstream compatible. Schrödinger is written in ANSI C and released under the same licenses as dirac-research, as well as the highly-permissive MIT License. The Schrödinger project also provides GStreamer plugins to enable the library to be used with that framework. On 22 February 2008, Schrödinger 1.0.0 was released.[17] This release was able to decode HD720/25p in real-time on a Core Duo laptop.

While the official FAQ does not mention on the encoding difference between them, Schrödinger's developer David Schleef[18] said in his blog that "you either get slow and good (dirac-research) or fast and crappy (Schrödinger)."[19]

The BBC does not own any patents on Dirac. They previously had some patent applications with plans to irrevocably grant a royalty-free licence for their Dirac-related patents to everyone, but they let the applications lapse. In addition, the developers will try to ensure that Dirac does not infringe any third party patents, enabling the public to use Dirac for any imaginable purpose.[20]

Desktop playback and encoding

As of November 2008, Dirac video playback is supported by VLC media player (version 0.9.2 or newer), and by applications using the GStreamer framework (such as Totem and Banshee). Support has also been added to FFmpeg.[21]

Applications which can encode to Dirac include MediaCoder, LiVES and OggConvert.

A DirectShow filter exists for both Dirac and Schroedinger, although this is not supported on versions of Windows prior to Windows 2000[citation needed] and has seemingly not been updated since early 2009.

Performance

The algorithms in the Dirac specification have been designed with the intention to provide a competitive performance as compared to state-of-the-art international standards. Whether they succeeded is an open question; while at least one comparison exists which used implementations from second quarter of 2008 - it shows x264 scoring more highly than Dirac[22] - it is now somewhat out of date, and in any case of questionable scientific merit[23]

References

  1. ^ "FAQ - Diracvideo". diracvideo.org. Retrieved 2009-08-30.
  2. ^ a b "About Dirac". diracvideo.org. Retrieved 2009-08-30.
  3. ^ Dirac Specification
  4. ^ "Dirac 1.0.0 released" (Press release). BBC. 2009-09-17.
  5. ^ BBC (2008-04-02). "Dirac Specification: Dirac Pro (Intra coding only)" (PDF). 1.1.0. BBC. Retrieved 2008-09-15. {{cite journal}}: Cite journal requires |journal= (help)
  6. ^ "Advancements in Compression and Transcoding: 2008 and Beyond - Supporting the March to 8K with SMPTE VC2 / Dirac". SMPTE. Retrieved 2009-08-30.
  7. ^ "Dirac Specification, Version 2.2.3" (PDF). BBC. 2008-09-23. Retrieved 2009-07-05. {{cite journal}}: Cite journal requires |journal= (help)
  8. ^ "Dirac Pro to bolster BBC HD links". Broadcast Magazine (East Midland Allied Press).
  9. ^ BBC pushes Dirac to the forefront
  10. ^ And now, Dirac from the Olympics, a new free codec!
  11. ^ "Dirac Overview". BBC R&D. Retrieved 2009-01-14.
  12. ^ BBC Research (2008-09-23). "Dirac Specification" (PDF). diracvideo.org. Retrieved 2009-10-04. {{cite journal}}: Cite journal requires |journal= (help)
  13. ^ [1]
  14. ^ Dirac specification - integration of Dirac encoded video into commonly used container formats Retrieved on 2009-07-05
  15. ^ MP4 Registration Authority - Dirac Retrieved on 2009-07-05
  16. ^ SMPTE Registration Authority, LLC; Registration for format_identifier drac Retrieved on 2009-07-05
  17. ^ Diracvideo.org Download section - schroedinger-1.0.0.tar.gz, 22-Feb-2008 13:52, 739K, Retrieved on 2009-08-07
  18. ^ "Who are you guys? in official FAQ". Retrieved 2009-01-14.
  19. ^ "Dirac in the news". 2008-09-20. Retrieved 2009-01-14.
  20. ^ "Do you infringe any patents? in official FAQ". Retrieved 2009-01-14.
  21. ^ "Dirac Compatibility Matrix in official wiki". Retrieved 2009-01-14.
  22. ^ "A performance assessment of the royalty-free and open video compression specifications Dirac, Dirac Pro, and Theora and their open-source implementations in Video on the Web". Retrieved 2009-08-20.
  23. ^ "Theora update". Retrieved 2009-08-20..

Template:Fossportal