Dirac

Dirac
Расширение .drc
Разработчик BBC
Тип формата алгоритм сжатия видео
Сайт dirac.com
dirac-research
Тип Видеокодек, эталонная реализация
Разработчик BBC Research Department
Операционная система Кроссплатформенное ПО
Последняя версия 1.0.2 (12 февраля 2010)
Лицензия MPL 1.1, GNU GPL 2, GNU LGPL 2.1
Сайт diracvideo.org
Schrödinger
Тип Видеокодек
Разработчик David Schleef
Операционная система Кроссплатформенное ПО
Последняя версия 1.0.11 (23 января 2012)
Лицензия MPL 1.1, GNU GPL 2, GNU LGPL 2, MIT License
Сайт diracvideo.org

Diracалгоритм для кодирования и декодирования несжатого видео. Он был представлен BBC в январе 2004 как основа нового кодека, предназначенного для передачи видео через Интернет. Кодек был завершён 21 января 2008 года и последующие разработки будут включать только исправление ошибок и другие критические факторы[1]. Первоначальной целью было обеспечить возможность декодировать видео в стандартном разрешении PAL TV (720x576i пикселей при 25 кадрах в секунду) в режиме реального времени. Текущая реализация позволяет декодировать видео на скорости около 17 кадров в секунду при использовании 3 ГГц процессора, но также планируется усиленная оптимизация. Данная реализация написана на C++ и выпущена на SourceForge.net 11 марта 2004 года. Имеется версия[2], написанная с использованием технологии CUDA, ускоряющей вычисления путём использования возможностей видеокарты, за счёт чего скорость декодирования в несколько раз больше.

Кодек назван в честь английского физика Поля Дирака.

Технология

[править | править код]

Также как и другие распространённые кодеки, такие так MPEG-4 Part 2 или WMV 7, Dirac может сжимать любой размер картинки от низкого разрешения QCIF (176x144 пикселей) до HDTV (1920x1080) и выше.

Dirac использует сжатие с помощью вейвлетов вместо дискретного косинусного преобразования, применяющегося в большинстве старых кодеков (таких как H.264 или VC-1). Dirac является одним из нескольких проектов, пытающихся использовать вейвлеты для сжатия видео. Другими проектами являются Rududu, Snow и Tarkin. Сжатие с помощью вейвлетов уже доказало свою жизнеспособность в стандарте JPEG 2000, применяющемся для компрессии фотографических изображений.

Профессиональный профиль кодека Dirac Pro был реализован в сентябре 2008 года.[3] Профиль рассчитан на применение в монтажных, архивных и вещательных системах, где существуют повышенные требования к качеству сжатого видео. Алгоритм сжатия имеет открытый код и распространяется по лицензии Royalty-free.

Кодек отличается от его бытовой версии использованием только внутрикадрового сжатия, то есть поток содержит только I-кадры. В кодеке применяется упрощенное статистическое кодирование, пригодное для декодирования в реальном времени при очень высокой скорости потока. Степень сжатия — от 2:1 до 16:1, но при большей степени сжатия усложняются вычисления и увеличивается время кодирования.

При передаче сигналов стандарта 1080p/50 вместо требуемых каналов Dual Link HD-SDI (две линии по 1,5 Гбит/с) или 3G-SDI (3 Гбит/с) возможно применять HD-SDI (1,5 Гбит/с). В таком случае коэффициент компрессии составляет 2,5:1. А сигналы 1080i/50 могут быть сжаты и переданы со скорость 600 Мбит/с по гигабитной Ethernet сети. Также в случае применения сжатия возможно уменьшения потока до 270 Мбит/с для передачи сигналов 1080i/50 по каналу SDI. В этом случае коэффициент компрессии будет 5:1.

Согласно спецификации поддерживаются форматы от QSIF525 (176 × 120 пикселей) вплоть до последних UHDTV 8K-50 (7680 × 4320 пикселей, 50 кадров/с) и цифровых киноформатов 2K и 4K D-Cinema.[4]

Кодек поддерживает значительное число форматов:

Кодек Dirac Pro был направлен в SMPTE для стандартизации как VC-2 Codec. В 2010 году SMPTE приняли в качестве стандарта видеокомпрессии VC-2.

  • SMPTE 2042-1-2009 VC-2 Video Compression
  • SMPTE 2042-2-2009 VC-2 Level Definitions
  • RP (Recommended Practices) 2047-1-2009 — VC-2 Mezzanine Level Compression of 1080P High Definition Video Sources
  • SMPTE 2047-2-2010 Carriage of VC-2 Compressed Video over HD-SDI — Передача сжатого видео VC-2 по интерфейсу HD-SDI
  • RP 2042-3-2010 — VC-2 Conformance Specification

Проект Schrödinger

[править | править код]

Вторая реализация кодека dirac, названная «Schrödinger» (Шрёдингер), была нацелена на создание переносимых библиотек, а также плагинов для GStreamer. Проект был написан на языке программирования C. Также стало возможным использовать Dirac внутри Ogg-контейнеров. Проект был назван в честь австрийского физика Эрвина Шрёдингера.

22 февраля 2008 года была выпущена финальная версия Schrödinger 1.0.0. Данная версия может декодировать видео с разрешением HD720/25p в режиме реального времени на ноутбуке с процессором класса Core Duo.

Примечания

[править | править код]
  1. Спецификация Dirac. Дата обращения: 17 мая 2008. Архивировано 14 мая 2008 года.
  2. GPU-Accelerated Dirac Video Codec Архивировано 4 июня 2008 года.
  3. Dirac 1.0.0 released. [LWN.net]. Дата обращения: 4 января 2011. Архивировано 6 июня 2012 года.
  4. Dirac Specification Version 2.2.3 Issued: September 23, 2008 Архивировано 3 мая 2015 года.

Литература

[править | править код]