Vorbis

Vorbis
Изображение логотипа
Расширение .ogg, .oga или .sb0
MIME-тип audio/vorbis[1], application/ogg, audio/vorbis-config[1] и audio/ogg
Разработчик Кристофер Монтгомери[вд] и Xiph.Org
Опубликован 2000
Тип формата Аудиокодек
Содержится в Ogg, WebM, Matroska
Стандарт(ы) Спецификация
Сайт xiph.org/vorbis/ (англ.)
Логотип Викисклада Медиафайлы на Викискладе

Vorbis — свободный формат сжатия звука с потерями, официально появившийся летом 2002 года. По функциональности и качеству аналогичен таким кодекам, как AAC, AC3 и VQF, превосходящим MP3. Психоакустическая модель, используемая в Vorbis, по принципам действия близка к MP3 и подобным, однако математическая обработка и практическая реализация этой модели существенно отличаются, что позволило авторам объявить свой формат совершенно независимым от всех предшественников.

Для хранения аудиоданных в формате Vorbis чаще всего применяется медиаконтейнер Ogg, такой файл обычно имеет расширение .ogg и называется двойным именем «Ogg/Vorbis»[2] или «Ogg Vorbis»[3]. Однако «Ogg Vorbis» называют и сам кодек без контейнера, так как он является частью проекта Ogg[2].

Применение

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

На 2013 год распространён существенно меньше, чем MP3. Используется в компьютерных играх, для подкастов.

Vorbis идеален для применения в качестве звуковых дорожек фильмов, так как не изменяет их длину при переменном битрейте, что позволяет сохранять синхронность с видеодорожкой, и применим для многоканального звука (например, 6-канальный звук).

Используется для звуковой дорожки файлов в формате WebM вместе с видеокодеком VP8 (с VP9 в формат добавили поддержку нового свободного кодека Opus).

Метаданные

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

Формат изначально разрабатывался с возможностью потокового вещания. Это даёт формату достаточно полезный побочный эффект — в одном файле можно хранить несколько композиций с собственными метками. При загрузке такого файла в плеер должны отобразиться все композиции, будто их загрузили из нескольких различных файлов.

Формат имеет гибкую систему меток. Заголовок меток легко расширяется и позволяет включать тексты любой длины и сложности (например, текст песни), перемежающиеся изображениями (например, фотографиями обложек альбомов). Текстовые метки хранятся в UTF-8, что позволяет писать на нескольких языках одновременно и исключает возможные проблемы с кодировками.

Ogg Vorbis по умолчанию использует переменный битрейт, при этом значения последнего не ограничены какими-то жёсткими значениями, и он может варьироваться даже на 1 kbps. При этом стоит заметить, что форматом жёстко не ограничен максимальный битрейт, и при максимальных настройках кодирования он может варьировать от 500 до 1000 кбит/с. Такой же гибкостью обладает частота дискретизации — пользователям предоставляется любой выбор в пределах от 2 до 192 кГц.

Цель разработки

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

Vorbis был разработан сообществом «Xiph.Org» для того, чтобы заменить все платные запатентованные аудиоформаты. Несмотря на то, что это самый молодой формат из всех конкурентов MP3, Ogg Vorbis имеет полную поддержку на всех популярных платформах (Microsoft Windows, Linux, Apple Mac OS, Android[4], PocketPC, Palm, Symbian, DOS, FreeBSD, BeOS и др.), а также большое количество аппаратных реализаций.

Vorbis является частью мультимедиапроекта Ogg, в который также входят свободные кодировщики: Speex — для сжатия голоса; FLAC — для сжатия звука без потерь; Theora — для сжатия видео.

Для хранения звука в Vorbis используется формат‐контейнер Ogg.

Преимущества Vorbis

[править | править код]
  • Отсутствие патентных ограничений.
  • До 255 каналов.
  • «Sample accurate» — звуковые данные не будут иметь смещений, дополнительных или потерянных семплов относительно друг друга.
  • «Streamable» — поддержка поточного воспроизведения.
  • Эффективные алгоритмы переменного битрейта.
  • Частота дискретизации до 192 кГц.
  • Разрядность до 32 бит.
  • Гибкий Joint stereo.
  • Гибкая психоакустическая модель.
  • Метки хранятся в Юникоде, а не в национальной кодировке.
  • Большая степень компрессии по сравнению с MP3 при равном качестве (размер файла меньше)

Реализации

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

Благодаря открытой модели разработки и распространения существуют несколько вариантов программных кодеров и декодеров Vorbis.

Официальные программы и библиотеки

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

Официальная реализация от разработчиков стандартов Ogg и Vorbis, фонда Xiph.Org, распространяется под лицензиями типа BSD и GNU LGPL.

Официальной программой-кодировщиком является свободная oggdropXPd, существующая в разных вариантах исполнения: используются библиотеки libVorbis или aoTuVb, и оптимизация под разные процессоры. Последняя версия libVorbis 1.3.7 выпущена 6 июля 2020 года[5].

Версия от японского разработчика Aoyumi. Благодаря улучшенной психоакустической модели достигается значительно более высокое качество звука, при этом aoTuV не нарушает совместимости с официальным стандартом. Хотя Aoyumi не является официальным разработчиком кодека Vorbis, его заслуги оказались настолько высоки, что в официальные библиотеки версии 1.1.0 от 22 сентября 2004 года был добавлен разработанный им код (beta 2). Последняя версия — Beta 6.03 от 25 апреля 2011 года. Однако, код aoTuV использовался в официальных и сторонних реализациях последующих версий кодера[5].

Японский разработчик Nyaochi[6] работает над увеличением скорости кодирования в формат Vorbis. Его версия, называемая Lancer, основывается на актуальных версиях aoTuV. Благодаря оптимизациям кода под современные процессоры достигается существенное увеличение скорости кодирования и декодирования (на десятки процентов, в некоторых условиях в несколько раз). Качество при этом страдает весьма незначительно. Его последняя разработка датирована 10 ноября 2006 года. Код Nyaochi также использовался в сторонних реализациях последующих версий кодировщика[7].

Реализация декодера Ogg Vorbis с использованием чисел с фиксированной запятой, созданная для платформ, которые не поддерживают числа с плавающей запятой[8].

Будущее кодека

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

Разработчик проекта Ogg фонд Xiph.Org Foundation рекомендует использовать вместо Vorbis новый royalty-free кодек Opus[9].

Примечания

[править | править код]
  1. 1 2 Barbato L. RTP Payload Format for Vorbis Encoded Audio (англ.)IETF, 2008. — 26 p. — doi:10.17487/RFC5215
  2. 1 2 Vorbis I specification (англ.). Xiph.Org Foundation. Дата обращения: 29 марта 2008. Архивировано 21 августа 2011 года.
  3. FAQ (англ.). Vorbis.com. Xiph.Org (3 октября 2003). Дата обращения: 29 марта 2008. Архивировано 21 августа 2011 года.
  4. Supported Media Formats | Android Developers. Дата обращения: 10 марта 2014. Архивировано 20 декабря 2016 года.
  5. 1 2 oggdropXPd. www.rarewares.org. Дата обращения: 4 августа 2019. Архивировано 29 июля 2019 года.
  6. Ogg Vorbis 高速化プロジェクト Архивировано 29 декабря 2005 года.
  7. oggenc2. www.rarewares.org. Дата обращения: 4 августа 2019. Архивировано 25 июля 2019 года.
  8. Tremor. Дата обращения: 29 января 2015. Архивировано 7 января 2015 года.
  9. Vorbis. xiph.org. Дата обращения: 4 августа 2019. Архивировано 8 июня 2017 года.