Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Dirac (video compression format)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
{{short description|Video compression format}} {{Update |inaccurate=yes |reason=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 |date=December 2023 }} {{Use British English|date=December 2023}} {{Use dmy dates|date=November 2023}} {{Infobox file format | name = Dirac | icon = | logo = | extension = drc | mime = | type code = | uniform type = | magic = | owner = [[BBC Research & Development]] | released = {{Start date and age|2008|03|06|df=yes}}<ref name="dirac-sf-press">{{cite press release |title=Worlds first high performance Dirac video codec implementation available |url=http://schrodinger.sourceforge.net/press/DiracAnnounce060308.html |access-date=14 December 2021 |work=Schrödinger project |publisher=SourceForge |date=6 March 2008 |archive-date=14 December 2021 |archive-url=https://web.archive.org/web/20211214233732/http://schrodinger.sourceforge.net/press/DiracAnnounce060308.html |url-status=live }}</ref> | latest release version = 2.2.3<ref name="Dirac-2.2.3"/> | latest release date = {{Start date and age|2008|09|23|df=yes}} | type = [[Video coding format]] | container for = | contained by = {{hlist | [[MPEG-TS]] | [[Ogg]] | [[Matroska]] | [[QuickTime File Format|MOV]] | [[ISO base media file format|ISO/MPEG-4]] }} | extended from = | extended to = VC-2 | standard = {{hlist | SMPTE 2042-1-2022 | SMPTE 2042-2-2017 (Level Definitions) }} | open = Yes | free = Yes<ref name="bbc-wp-124">{{Cite web |title=White Paper 124: Dirac video compression |last1=Davies |first1=T.J. |last2=Borer |first2=Tim |last3=Suraparaju |first3=A. |work=[[BBC Research & Development]] |publisher=[[BBC]] |date=September 2005 |url=https://www.bbc.co.uk/rd/publications/whitepaper124 |access-date=18 December 2023 |archive-date=29 June 2023 |archive-url=https://web.archive.org/web/20230629054340/http://www.bbc.co.uk/rd/publications/whitepaper124 |url-status=live }}</ref> }} '''Dirac''' (and '''Dirac Pro''', a subset standardised as [[Society of Motion Picture and Television Engineers|SMPTE]] '''VC-2''') is an open and [[royalty-free]] [[video compression format]], specification and software [[video codec]] developed by [[BBC Research & Development]].<ref name="bbc-wp-159">{{Cite web |title=White Paper 159: Open Technology video compression for production and post production |first=Tim |last=Borer |work=[[BBC Research & Development]] |date=November 2007 |publisher=[[BBC]] |url=https://www.bbc.co.uk/rd/publications/whitepaper159 |access-date=18 December 2023 |archive-date=11 September 2017 |archive-url=https://web.archive.org/web/20170911213042/http://www.bbc.co.uk/rd/publications/whitepaper159 |url-status=live }}</ref><ref name="FAQ">{{cite web |work=diracvideo.org |publisher=[[BBC Research & Development]] |title=Frequently Asked Questions |url= http://diracvideo.org/wiki/index.php/FAQ |access-date=30 August 2009 |archive-url= https://web.archive.org/web/20100723110316/http://diracvideo.org/wiki/index.php/FAQ |archive-date=23 July 2010 |url-status=usurped }}</ref><ref name="bbc-vc-2">{{Cite web |title=Project: VC-2 |work=BBC Research & Development |date=January 2009 |publisher=[[BBC]] |url=https://www.bbc.co.uk/rd/projects/vc-2 |access-date=18 December 2023 |archive-date=12 July 2022 |archive-url=https://web.archive.org/web/20220712195759/https://www.bbc.co.uk/rd/projects/vc-2 |url-status=live }}</ref> Dirac aimed to provide high-quality video compression for [[Ultra High Definition Television|Ultra HDTV]] and competed with existing formats such as [[H.264]].<ref name="bbc-wp-124"/> The specification was finalised in January 2008, and further developments were only bug fixes and constraints.<ref name="Dirac-2.2.3"/> In September of that year, version 1.0.0 of an [[I-frame]] only subset known as '''Dirac Pro''' was released and was standardised by the [[Society of Motion Picture and Television Engineers|SMPTE]] as '''VC-2'''.<ref name="Dirac-1.0.0">{{cite web |url=https://lwn.net/Articles/298755/ |title=Dirac 1.0.0 released. |last=Edge |first=Jake |date=17 September 2008 |website=LWN.net |access-date=7 July 2017 |archive-date=14 September 2016 |archive-url=https://web.archive.org/web/20160914141853/https://lwn.net/Articles/298755/ |url-status=live }}</ref><ref name="bbc-wp-159" /><ref name="smpte-vc2" >{{cite web |url=https://pub.smpte.org/pub/st2042-1/ |title=SMPTE Standard: 2042-1:2022, VC-2 Video Compression |date=2022 |publisher=[[Society of Motion Picture and Television Engineers]] |access-date=18 December 2023 |archive-date=18 December 2023 |archive-url=https://web.archive.org/web/20231218230038/https://pub.smpte.org/pub/st2042-1/ |url-status=live }}</ref> Version 2.2.3 of the full Dirac specification, including [[motion compensation]] and inter-frame coding, was issued a few days later.<ref name="Dirac-2.2.3">{{cite web |title=Dirac Specification, Version 2.2.3 |date=23 September 2008 |work=diracvideo.org |publisher=[[BBC Research & Development]] |url= http://diracvideo.org/download/specification/dirac-spec-latest.pdf |access-date=5 July 2009 |url-status=usurped |archive-url= https://web.archive.org/web/20150503015104/http://diracvideo.org/download/specification/dirac-spec-latest.pdf |archive-date=3 May 2015 }}</ref> Dirac Pro was used internally by the BBC to transmit HDTV pictures at the [[2008 Summer Olympics|Beijing Olympics]] in 2008.<ref name="broadcast-2008">{{cite web |work=Broadcast Magazine |title=Dirac Pro to bolster BBC HD links |date=16 July 2008 |publisher=[[EMAP|East Midland Allied Press]] |url=https://www.broadcastnow.co.uk/dirac-pro-to-bolster-bbc-hd-links/1732462.article |access-date=18 December 2023 |archive-date=2 December 2021 |archive-url=https://web.archive.org/web/20211202155651/https://www.broadcastnow.co.uk/dirac-pro-to-bolster-bbc-hd-links/1732462.article |url-status=live }}</ref><ref>{{Cite news |title=And now, Dirac from the Olympics, a new free codec! |first=Junko |last=Yoshida |date=15 September 2008 |work=EE Times |publisher=UBM Tech |url=https://www.eetimes.com/and-now-dirac-from-the-olympics-a-new-free-codec/ |access-date=18 December 2023 }}</ref> Two [[open source]] and royalty-free [[video codec]] software implementations, libschrodinger and dirac-research, were developed. The format implementations were named in honour of the theoretical physicists [[Paul Dirac]] and [[Erwin Schrödinger]], who shared the 1933 [[Nobel Prize in Physics]]. ==Technology== Dirac supports resolutions of [[HDTV]] (1920×1080) 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 competitors such as [[Theora]] and [[Windows Media Video|WMV]]. 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 to [[VC-1]] and simpler profiles of [[H.264/MPEG-4 AVC|H.264]].<ref name="dirac-overview">{{cite web |url=http://www.bbc.co.uk/rd/projects/dirac/overview.shtml |title=Dirac Overview |publisher=[[BBC Research & Development]] |access-date=14 January 2009 |url-status=dead |archive-url=https://web.archive.org/web/20130109021949/http://www.bbc.co.uk/rd/projects/dirac/overview.shtml |archive-date=9 January 2013 }}</ref> Dirac supports both [[constant bit rate]] and [[variable 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 supports [[lossy]] and [[lossless]] compression modes.<ref name="Dirac-2.2.3"/> Dirac employs [[wavelet compression]], like the [[JPEG 2000]] and [[Progressive Graphics File|PGF]] image formats and the [[Cineform]] professional video codec, instead of the [[discrete cosine transform]]s used in [[MPEG]] compression formats. Two of the specific wavelets Dirac can use are nearly identical to JPEG 2000's (known as the [[Cohen-Daubechies-Feauveau wavelet|5/3 and 9/7 wavelets]]), as well as two more derived from them.<ref>{{cite web |url=http://dirac.sourceforge.net/documentation/algorithm/algorithm/wlt_transform.xht |title=Dirac: Wavelet transform |first=Thomas |last=Davies |date=6 February 2008 |access-date=9 September 2015 |archive-date=8 May 2015 |archive-url=https://web.archive.org/web/20150508094001/http://dirac.sourceforge.net/documentation/algorithm/algorithm/wlt_transform.xht |url-status=live }}</ref> Dirac can be used in [[Ogg]] and [[Matroska]] [[container format (digital)|container formats]] and is also registered for use in the [[ISO base media file format|ISO base media (MP4)]] file format and [[MPEG transport stream]]s.<ref name="MP4RA-codecs">{{Cite web |url=https://mp4ra.org/#/codecs |work=MP4 Registration Authority |title=Codecs |publisher=[[International Standards Organisation]] |access-date=18 December 2023 |archive-date=7 October 2023 |archive-url=https://web.archive.org/web/20231007124717/https://mp4ra.org/#/codecs |url-status=live }}</ref><ref name="TS-ids">{{Cite web |title=List of Registered MPEG TS Identifiers |url= https://smpte-ra.org/registered-mpeg-ts-ids |work=SMPTE Registration Authority |publisher=[[Society of Motion Picture and Television Engineers]] |archive-url= https://web.archive.org/web/20090421041153/http://smpte-ra.org/mpegreg/drac.html |archive-date=21 April 2009 |access-date=18 December 2023 |url-status=live }}</ref> ===Patents=== 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.<ref name="FAQ"/> ==VC-2== Dirac Pro, an [[I-frame]] only subset of the Dirac specification, was proposed to the SMPTE for standardisation.<ref name="bbc-wp-159" /><ref name="smpte-conf-2008">{{cite conference |publisher=[[IEEE]] |title=Advancements in Compression and Transcoding 2008 and Beyond – Supporting the March to 8K with Dirac and Dirac Pro (SMPTE VC2): The Dirac Family |conference=SMPTE Technical Conference |year=2008 |url=https://ieeexplore.ieee.org/xpl/conhome/7269233/proceeding |access-date=18 December 2023 |archive-date=18 December 2023 |archive-url=https://web.archive.org/web/20231218230037/https://ieeexplore.ieee.org/xpl/conhome/7269233/proceeding |url-status=live }}</ref> Dirac Pro is designed for professional and studio use of high definition video in high bitrate applications.<ref name="bbc-vc-2"/> In 2010, the SMPTE standardised Dirac Pro as VC-2.<ref name="smpte-vc2" /><ref>{{cite web |title=Schroedinger-1.0.9 Released, Other news – SMPTE VC-2 |date=4 March 2010 |work=diracvideo.org |publisher=[[BBC Research & Development]] |url= http://diracvideo.org/2010/03/schroedinger-1-0-9-released/ |access-date=18 October 2010 |archive-date=8 March 2010 |archive-url= https://web.archive.org/web/20100308063136/http://diracvideo.org/2010/03/schroedinger-1-0-9-released/ |url-status=usurped }}</ref> 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:<ref name="smpte-2042">{{Cite web |title=SMPTE 2042 family of documents (VC-2) |work=SMPTE Document Library |publisher=[[Society of Motion Picture and Television Engineers]] |url=https://pub.smpte.org/doc/2042/ |access-date=18 December 2023 |archive-url=https://web.archive.org/web/20231218075206/https://pub.smpte.org/doc/2042/ |archive-date=18 December 2023 |url-status=live }}</ref><ref name="smpte-2047">{{Cite web |title=SMPTE 2047 family of documents (VC-2) |work=SMPTE Document Library |publisher=[[Society of Motion Picture and Television Engineers]] |url=https://pub.smpte.org/doc/2047/ |access-date=18 December 2023 |archive-url=https://web.archive.org/web/20231218075258/https://pub.smpte.org/doc/2047/ |archive-date=18 December 2023 |url-status=live }}</ref> * SMPTE ST 2042-1:2022 – VC-2 Video Compression * SMPTE ST 2042-2:2017 – VC-2 Level Definitions * SMPTE RP 2042-3:2022 – VC-2 Conformance Specification * SMPTE ST 2042-4:2018 — Mapping a VC-2 Stream into the MXF Generic Container * SMPTE RP 2047-1:2023 – VC-2 Mezzanine Level Compression of 1080P High Definition Video Sources * SMPTE ST 2047-2:2010 — Carriage of VC-2 Compressed Video over HD-SDI * SMPTE RP 2047-3:2023 — VC-2 Level 65 Compression of High Definition Video Sources for Use with a Standard Definition Infrastructure * SMPTE ST 2047-4:2011 — Carriage of Level 65 VC-2 Compressed Video Over the SDTV SDI * SMPTE RP 2047-5:2022 — VC-2 Level 66 Compression of Ultra-High Definition Video Sources for Use with a High Definition Infrastructure * IETF {{IETF RFC|8450}} — RTP Payload Format for VC-2 High Quality (HQ) Profile ==Software implementations== {{Update|date=May 2010}} {{Infobox software | name = Schrödinger | developer = David Schleef | latest_release_version = 1.0.11 | latest_release_date = {{Start date and age|df=yes|2012|01|23}} | genre = [[Video codec]] | license = {{hlist | [[Mozilla Public Licence|MPL 1.1]] | [[GNU General Public License|GNU GPL]] 2 | [[GNU Lesser General Public License|GNU LGPL]] 2 | [[MIT License]] }} | website = {{URL|https://sourceforge.net/projects/dirac}} }} Two software implementations were initially developed. The BBC's reference implementation, initially called ''Dirac'' but renamed ''dirac-research'' to avoid confusion, was written in C++ and released under the [[Mozilla Public License]], [[GNU GPL]] 2 and [[GNU LGPL]] [[free software license]]s. Version 1.0.0 of this implementation was released on 17 September 2008 and defines the Dirac bitstream format.<ref name="Dirac-1.0.0"/> A second implementation called ''Schrö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 ANSI [[C (programming language)|C]] and released under the same licenses as dirac-research, as well as the highly-permissive [[MIT 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 a [[Core Duo]] laptop.<ref name="schrodinger-1.0.0">{{Cite web |title=Schroedinger 1.0.0 released |work=LWN.net |publisher=Eklektix |date=27 February 2008 |url=https://lwn.net/Articles/271058/ |access-date=18 December 2023 |archive-date=13 March 2016 |archive-url=https://web.archive.org/web/20160313124647/http://lwn.net/Articles/271058/ |url-status=live }}</ref> 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".<ref>{{cite web |title = ''Schrödinger-1.0.9 Released'' |date=4 March 2010 |work=diracvideo.org |publisher=[[BBC Research & Development]] |url= http://diracvideo.org/2010/03/schroedinger-1-0-9-released/ |access-date=11 March 2010 |archive-url= https://web.archive.org/web/20100308063136/http://diracvideo.org/2010/03/schroedinger-1-0-9-released/ |archive-date=8 March 2010 |url-status=usurped }}</ref> 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 on [[GitHub]].<ref name="vc2-ref">{{Cite web |title=VC-2 Reference Encoder and Decoder |publisher=[[BBC]] |url=https://github.com/bbc/vc2-reference |access-date=18 December 2023 |via=[[GitHub]] |archive-date=5 August 2023 |archive-url=https://web.archive.org/web/20230805002138/https://github.com/bbc/vc2-reference |url-status=live }}</ref> 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.<ref name="testing-tools">{{Cite web |title=VC-2 Video coding: Getting it right |last=Heathcote |first=Jonathan |work=[[BBC Reaearch & Development]] |publisher=[[BBC]] |date=7 April 2021 |access-date=18 December 2023 |url=https://www.bbc.co.uk/rd/blog/2021-04-vc-2-video-coding-testing-tools |archive-date=20 June 2022 |archive-url=https://web.archive.org/web/20220620224546/https://www.bbc.co.uk/rd/blog/2021-04-vc-2-video-coding-testing-tools |url-status=live }}</ref> ===Desktop playback and encoding=== Dirac video playback is supported by [[VLC media player]] since version 0.9.2 (2008), and by applications using the [[GStreamer]] framework. Support has also been added to [[FFmpeg]]. Applications which can encode to Dirac include [[FFmpeg]], [[MediaCoder]], [[LiVES]] and [[OggConvert]].<ref>{{cite web |url= http://diracvideo.org/wiki/index.php/Dirac_Compatibility_Matrix |title=Wiki: Dirac Compatibility Matrix |work=diracvideo.org |publisher=[[BBC Research & Development]] |access-date=14 January 2009 |archive-date=8 November 2008 |archive-url= https://web.archive.org/web/20081108133806/http://diracvideo.org/wiki/index.php/Dirac_Compatibility_Matrix |url-status=usurped }}</ref> ==Performance== 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, showed [[x264]] scoring slightly higher than Dirac.<ref name=etil>{{cite web |first=Till |last=Halbach |url= http://etill.net/projects/dirac_theora_evaluation/ |title=A performance assessment of the royalty-free and open video compression specifications Dirac, Dirac Pro, and Theora and their open-source implementations |date=March 2009 |archive-url= https://archive.today/20120707194336/http://etill.net/projects/dirac_theora_evaluation/ |archive-date=7 July 2012 |url-status=dead }}</ref> Another 2009 comparison found similar results for standard definition content, but did not compare high definition (HD) video content.<ref name="Ravi-MS-thesis">{{cite journal |last1=Ravi |first1=Aruna |last2=Rao |first2=K. R. |title=Performance Analysis and Comparison of the Dirac Video Codec with H.264/MPEG-4 Part 10 AVC |journal=International Journal of Wavelets, Multiresolution and Information Processing |date=July 2011 |volume=9 |issue=4 |pages=635–654 |doi=10.1142/S0219691311004341 |url=https://www.worldscientific.com/doi/abs/10.1142/S0219691311004341 |hdl=10106/1740 |hdl-access=free |access-date=18 December 2023 |archive-date=3 August 2023 |archive-url=https://web.archive.org/web/20230803072839/https://www.worldscientific.com/doi/abs/10.1142/S0219691311004341 |url-status=live }}</ref> These studies show that Dirac compression performance is close to that of [[MPEG-4 Part 2]] Advanced Simple Profile (ASP, popularised as [[DivX]]). 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 as [[VP8]], [[VP9]], and [[AV1]] have been developed with better compression performance and more widespread adoption, including dominant streaming services such as [[YouTube]] and [[Netflix]].<ref name="cnet-google-vp9">{{Cite web |title=Google's new VP9 video technology reaches public view |last=Shankland |first=Stephen |work=[[CNET]] |date=28 December 2012 |url= https://www.cnet.com/tech/services-and-software/googles-new-vp9-video-technology-reaches-public-view/ |access-date=19 December 2023 }}</ref><ref name="verge-nexflix-av1">{{Cite web |title=You can see Netflix's new AV1 streaming tech on select TVs and the PS4 Pro |first=Jay |last=Peters |work=[[The Verge]] |publisher=[[Vox Media]] |date=11 November 2021 |url= https://www.theverge.com/2021/11/10/22775150/netflix-av1-codec-tv-streaming-ps4-pro |access-date=19 December 2023 }}</ref> ==References== {{Reflist}} ==External links== * {{Internet Archive film clip|id=LRL_USA_2008_Dirac|description=where David Schleef talks about Dirac}} * [http://www.bbc.co.uk/rd/projects/vc-2 BBC Research & Development page on VC-2] {{Portal|Free and open-source software}} {{Compression formats}} {{Compression Software Implementations}} [[Category:BBC Research & Development]] [[Category:Free video codecs]] [[Category:Lossless compression algorithms]] [[Category:SMPTE standards]] [[Category:Wavelets]] [[Category:Open formats]]
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)
Pages transcluded onto the current version of this page
(
help
)
:
Template:Cite conference
(
edit
)
Template:Cite journal
(
edit
)
Template:Cite news
(
edit
)
Template:Cite web
(
edit
)
Template:Compression Software Implementations
(
edit
)
Template:Compression formats
(
edit
)
Template:IETF RFC
(
edit
)
Template:Infobox
(
edit
)
Template:Infobox file format
(
edit
)
Template:Infobox software
(
edit
)
Template:Internet Archive film clip
(
edit
)
Template:Main other
(
edit
)
Template:Portal
(
edit
)
Template:Reflist
(
edit
)
Template:Short description
(
edit
)
Template:Template other
(
edit
)
Template:Update
(
edit
)
Template:Use British English
(
edit
)
Template:Use dmy dates
(
edit
)