Математическая основа Ogg Vorbis

Список разделов Ogg Vorbis Тех-поддержка

Описание: Инструменты, кодеки, сопроводительная информация, алгоритмы, программирование.

Сообщение #16 VEG » 23.02.2007, 16:02

Не думал, что есть и такое. Спасибо за ссылки. Кому-нибудь еще они обязательно пригодятся.
VEG M
Администратор
Аватара
Откуда: Finland
Репутация: 40
С нами: 18 лет 4 месяца

Сообщение #17 cranium » 03.05.2007, 14:54

Черт, возникла небольшая проблемка, может есть у кого что мне нужно, буду очень признателен. А требуется общая схема кодера Ogg Vorbis.
И вот еще, пока переводил документацию по Ogg Vorbis возникло пару вопросов. Много где читаю, что MPEG-1 Layer III и Ogg Vorbis очень отличаются в плане алгоритмов, особенно психоакустическими моделями. Тогда что считать такой моделью? Аппроксимацию т.н. абсолютного порога слышимости (ATH)? Или имеется ввиду алгоритм обработки сигнала в соответствии со свойствами слуха? Или же это учет ATH + различных эффектов маскировки (временных, частотных, пространственных) И там и там используются взвешивающие окна переменной длины, но разной формы(!). И ам и там используется VBR для улучшения обработки мест где имеются резкие скачки (но в МP3 это наз-ся "псевдо" VBR, из-за резервуара с выдел. битами для кодирования). И там и там исп-ся MDCT и IMDCT, в Ogg Vorbis есть предпосылки в качестве ортогонального перобразования использовать ДВП (дискр. вейвлет преобразование) или гибридный кодер с ДВП и ДКП-подобных преобразований. В MP3 не видел, чтобы применялось векторное квантование (VQ).
К тому же в Ogg Vorbis имеются такие понятия как Floor и Residue, я точно не знаю пока, но предполагаю что это как-то связано с VQ. Т.е. отдельно кодируется передается в отдельных секциях информация о НЧ-составляющей сигнала (сигнал floor) и информация о ВЧ-насадке (residues). Затем они распаковываются (декоируются) складываются и получается что-то вроде спектального отображения сигнала. Ну и затем к этой сумме применяется обратное MDCT (возможно с какой-нить фильтрацией и коррекцией.)

Спрашивал у доцента нашей кафедры, по каким критериям мона срвнивать эти форматы. Он говорит, что только на слух мона субъективно оценить. Скорее всего так, обидно...
У меня была мысль (и еще остается), не обращая внимания на процессы, которые происходят в кодеке просто сравнить входной и выходной сигналы (в частотной или временной областях) при различных параметрах кодирования. Обрабатывая отсчеты сигнала, взятые с audio-CD сначала одним кодеком, затем вторым. Каким параметром (математическим) можно охарактеризовать такое сравнение (степень различия напр.)? Мне ничего в голову не приходит, кроме как коэффициента корреляции. И, может, для сравнения взять какой-нить отрывок на пару секунд где слышны резкие звуки? Ведь насколько я понял основная проблема кодеков состоит в правильности передачи таких вот "сложных" моментов.
cranium
Откуда: Minsk
Репутация: 0
С нами: 17 лет 1 месяц

Сообщение #18 VEG » 03.05.2007, 17:16

cranium:А требуется общая схема кодера Ogg Vorbis.
http://stoffke.port5.com/en_block/block_en.html
Но это уж слишком общая, наверное :)
VEG M
Администратор
Аватара
Откуда: Finland
Репутация: 40
С нами: 18 лет 4 месяца

Сообщение #19 cranium » 03.05.2007, 19:32

VEG, спасибо
это лучше, чем объяснять на общей схеме сжатия с потерями)
cranium
Откуда: Minsk
Репутация: 0
С нами: 17 лет 1 месяц

Сообщение #20 cranium » 04.05.2007, 10:14

копался вчера на hydrogenaudio.org в надежде увидеть интересующие вопросы. Увидел... ) с ответами типа "обратись к разработчику и т.п.". Хотел найти более-менее подробное описание блока психоакустики (или психоакустическую модель). Потом нашел, но описание на... c (или c++, я не програмер, поэтому могу ошибаться). lib\modes\psych_44 для 44.1/48kHz. Тут и алгоритм и точные значения. Неужели не проще выложить в классическом математическом варианте? :-)
Могу только догадываться о назначении матриц коэффициентов. (есть предположение, что это эталонные значения(предельные, пороговые) с которыми впоследствие будут сравниваться вычисленные данные.) Из названий видно, что учитываются шумовые составляющие, и тональные (впрочем, как и на общей схеме). Впринципе, принятие решений что не будет слышно и след-но будет "отброшено" в соотв. с психоак. моделью, думаю, выполняет алгоритм lib\psy.
Нашел вчера какую-то документацию по Speex, в которой есть описание психоакустической модели Vorbis (блок-схема). Но ведь проект Ogg Vorbis есть 2 составляющие: Ogg - формат контейнера данных, Vorbis - психоакустический аудио-кодек. Так вот, у меня мысль, используемый в Speex и Ogg аудио-кодек Vorbis один и тот же? Другими словами, можно ли рассматривать найденную схему под Ogg Vorbis? (что-то я запутался)

P.S: жалко, что нельзя прикрепить изображение
cranium
Откуда: Minsk
Репутация: 0
С нами: 17 лет 1 месяц

Пред.

Вернуться в Тех-поддержка



cron