Введение

Формат сжатия видео Dirac (и Dirac Pro, подмножество, стандартизированное как SMPTE VC 2) — это открытый и не требующий выплаты роялти формат сжатия видео, спецификация и программный видеокодек, разработанный BBC Research & Development. Dirac был разработан для обеспечения высококачественного сжатия видео для Ultra HDTV и конкурировал с существующими форматами, такими как H.264. Версия 2.2.3 полной спецификации Dirac, включая компенсацию движения и межкадровое кодирование, была выпущена через несколько дней. Dirac Pro использовался внутри BBC для передачи HDTV-изображений во время Олимпийских игр в Пекине в 2008 году. Были разработаны две программные реализации видеокодеков с открытым исходным кодом и без роялти: libschrodinger и dirac research. Реализации формата были названы в честь теоретических физиков Пола Дирака и Эрвина Шрёдингера, которые разделили Нобелевскую премию по физике в 1933 году.

Технология

Dirac поддерживает разрешения HDTV (1920×1080) и выше, и заявляется, что обеспечивает значительное снижение скорости передачи данных и повышение качества по сравнению с форматами сжатия видео, такими как MPEG 2 Part 2, MPEG 4 Part 2 и их конкурентами, такими как Theora и WMV. Разработчики Dirac предварительно заявили о "двукратном снижении битрейта по сравнению с MPEG 2 для видео высокой четкости", что делает его сопоставимым с VC-1 и более простыми профилями H.264. Dirac поддерживает как постоянный, так и переменный битрейт. При использовании синтаксиса низкой задержки битрейт будет постоянным для каждой области (фрагмента Dirac) в кадре, чтобы обеспечить постоянную задержку. Dirac поддерживает режимы сжатия с потерями и без потерь. Dirac может использоваться в контейнерных форматах Ogg и Matroska, а также зарегистрирован для использования в формате базовых медиафайлов ISO (MP4) и транспортных потоках MPEG.

Реализация программного обеспечения

Первоначально были разработаны две программные реализации. Референтная реализация BBC, первоначально называвшаяся Dirac, но переименованная в dirac research во избежание путаницы, была написана на C++ и выпущена под лицензиями Mozilla Public License, GNU GPL 2 и GNU LGPL. Версия 1.0.0 этой реализации была выпущена 17 сентября 2008 года и определяет формат битового потока Dirac. К марту 2010 года, с выпуском версии Schrödinger 1.0.9, она превзошла dirac research "в большинстве сценариев кодирования как по скорости, так и по визуальному качеству". С этим выпуском большинство инструментов кодирования из dirac research были портированы в Schrödinger, что обеспечило Schrödinger такую же или более высокую эффективность сжатия, чем dirac research. Разработка Schrödinger была прекращена после выпуска 1.0.11 в 2012 году. После стандартизации Dirac Pro как SMPTE VC 2 началась разработка эталонного кодера VC 2 с открытым исходным кодом. Код предоставляется BBC в репозитории git и доступен на GitHub. На BBC была внедрена система тестирования качества кодирования для оценки эффективности новых инструментов кодирования и оперативного исправления ошибок, влияющих на качество.

Просмотр и кодирование на рабочем столе

Просмотр видео в формате Dirac поддерживается VLC media player, начиная с версии 0.9.2 (2008), и приложениями, использующими фреймворк GStreamer. Поддержка также добавлена в FFmpeg. Приложения, способные кодировать видео в формат Dirac, включают FFmpeg, MediaCoder, LiVES и OggConvert.

Выступление

Алгоритмы в оригинальной спецификации Dirac были разработаны для обеспечения производительности сжатия, сопоставимой с основными стандартами сжатия видео того времени. Сравнение кодеков Dirac и H.264, проведенное в 2009 году с использованием реализаций со второго квартала 2008 года, показало, что x264 продемонстрировал незначительно более высокие результаты, чем Dirac. Другое сравнение, выполненное в 2009 году, выявило схожие результаты для контента стандартной четкости, однако не включало сравнение видеоконтента высокой четкости (HD). Эти исследования показывают, что производительность сжатия Dirac близка к производительности MPEG-4 Part 2 Advanced Simple Profile (ASP, известного как DivX). Хотя Dirac приближается к кодированию H.264 с низкой сложностью, видео, закодированное в H.264 с высоким профилем, обеспечит лучшее сжатие при сопоставимом воспринимаемом качестве. С 2010 года были разработаны свободно распространяемые открытые видеокодеки, такие как VP8, VP9 и AV1, которые обладают более высокой производительностью сжатия и получили более широкое распространение, включая такие доминирующие потоковые сервисы, как YouTube и Netflix.