This article'sfactual accuracy may be compromised due to out-of-date information. The reason given is:This needs to be rewritten to primarily describe (and possibly be renamed to) VC-2, the SMPTE standard based on a subset of the Dirac spec intended for professional studio and post-production use. The original Dirac codec is more or less abandoned, but can and should be described in a §History section. Please help update this article to reflect recent events or newly available information.(December 2023) |
| Dirac | |
|---|---|
| Filename extension | drc |
| Developed by | BBC Research & Development |
| Initial release | 6 March 2008; 17 years ago (2008-03-06)[1] |
| Latest release | |
| Type of format | Video coding format |
| Contained by | |
| Extended to | VC-2 |
| Standard |
|
| Open format? | Yes |
| Free format? | Yes[3] |
Dirac (andDirac Pro, a subset standardised asSMPTEVC-2) is an open androyalty-freevideo compression format, specification and softwarevideo codec developed byBBC Research & Development.[4][5][6] Dirac aimed to provide high-quality video compression forUltra HDTV and competed with existing formats such asH.264.[3]
The specification was finalised in January 2008, and further developments were only bug fixes and constraints.[2] In September of that year, version 1.0.0 of anI-frame only subset known asDirac Pro was released and was standardised by theSMPTE asVC-2.[7][4][8] Version 2.2.3 of the full Dirac specification, includingmotion compensation and inter-frame coding, was issued a few days later.[2] Dirac Pro was used internally by the BBC to transmit HDTV pictures at theBeijing Olympics in 2008.[9][10]
Twoopen source and royalty-freevideo codec software implementations, libschrodinger and dirac-research, were developed. The format implementations were named in honour of the theoretical physicistsPaul Dirac andErwin Schrödinger, who shared the 1933Nobel Prize in Physics.
Dirac supports resolutions ofHDTV (1920×1080) and greater, and is claimed to provide significant savings in data rate and improvements in quality over video compression formats such asMPEG-2 Part 2,MPEG-4 Part 2 and its competitors such asTheora andWMV. Dirac's implementers made a preliminary claim of "a two-fold reduction in bit rate over MPEG-2 for high definition video", which makes it comparable toVC-1 and simpler profiles ofH.264.[11]
Dirac supports bothconstant bit rate andvariable bit rate operation. When the low delay syntax is used, the bit rate will be constant for each area (Dirac slice) in a picture to ensure constant latency. Dirac supportslossy andlossless compression modes.[2]
Dirac employswavelet compression, like theJPEG 2000 andPGF image formats and theCineform professional video codec, instead of thediscrete cosine transforms used inMPEG compression formats. Two of the specific wavelets Dirac can use are nearly identical to JPEG 2000's (known as the5/3 and 9/7 wavelets), as well as two more derived from them.[12]
Dirac can be used inOgg andMatroskacontainer formats and is also registered for use in theISO base media (MP4) file format andMPEG transport streams.[13][14]
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 have said they will try to ensure that Dirac does not infringe on any third party patents, enabling the public to use Dirac for any purpose.[5]
Dirac Pro, anI-frame only subset of the Dirac specification, was proposed to the SMPTE for standardisation.[4][15] Dirac Pro is designed for professional and studio use of high definition video in high bitrate applications.[6] In 2010, the SMPTE standardised Dirac Pro as VC-2.[8][16]
Although work on the original Dirac codec has largely stopped, the VC-2 codec has continued to be adapted and updated for HD and UHD post-production environments. The SMPTE standards (ST) and recommended practices (RP) are as follows:[17][18]
This article needs to beupdated. Please help update this article to reflect recent events or newly available information.(May 2010) |
| Schrödinger | |
|---|---|
| Developer | David Schleef |
| Stable release | 1.0.11 / 23 January 2012; 14 years ago (2012-01-23) |
| Type | Video codec |
| License | |
| Website | sourceforge |
Two software implementations were initially developed. The BBC's reference implementation, initially calledDirac but renameddirac-research to avoid confusion, was written in C++ and released under theMozilla Public License,GNU GPL 2 andGNU LGPLfree software licenses. Version 1.0.0 of this implementation was released on 17 September 2008 and defines the Dirac bitstream format.[7]
A second implementation calledSchrödinger was funded by the BBC and aimed to provide a high-performance, portable version of the codec whilst remaining 100% bitstream compatible. Schrödinger was written in ANSIC and released under the same licenses as dirac-research, as well as the highly-permissiveMIT License.GStreamer plugins were included to enable the library to be used with that framework. On 22 February 2008, Schrödinger 1.0.0 was released, and was able to decode HD720/25p in real-time on aCore Duo laptop.[19]
By the March 2010 release of Schrödinger version 1.0.9, it was outperforming dirac-research "in most encoding situations, both in terms of encoding speed and visual quality".[20] With that release, most of the encoding tools in dirac-research were ported over to Schrödinger, giving Schrödinger the same as or better compression efficiency than dirac-research. Development of Schrödinger ceased after the 1.0.11 release in 2012.
After the standardisation of Dirac Pro as SMPTE VC-2, development began on an open source reference VC-2 encoder. The code is provided in a git repository by the BBC and is available onGitHub.[21]
An encoder quality testing system has been put in place at BBC to check how well new encoding tools work and to make sure bugs that affect quality are quickly fixed.[22]
Dirac video playback is supported byVLC media player since version 0.9.2 (2008), and by applications using theGStreamer framework. Support has also been added toFFmpeg. Applications which can encode to Dirac includeFFmpeg,MediaCoder,LiVES andOggConvert.[23]
The algorithms in the original Dirac specification were intended to provide compression performance comparable to mainstream video compression standards of the time. A 2009 comparison of the Dirac and H.264 codecs, which used implementations from the second quarter of 2008, showedx264 scoring slightly higher than Dirac.[24] Another 2009 comparison found similar results for standard definition content, but did not compare high definition (HD) video content.[25]These studies show that Dirac compression performance is close to that ofMPEG-4 Part 2 Advanced Simple Profile (ASP, popularised asDivX). While also approaching low complexity H.264 encodes, a High Profile H.264 encoded video will have better compression for the same perceived quality.
Since 2010, royalty-free, open source video codecs such asVP8,VP9, andAV1 have been developed with better compression performance and more widespread adoption, including dominant streaming services such asYouTube andNetflix.[26][27]