AC3Filter ver 0.70b

SourceForge Logo
English   Russian   Italian  
Download Sourceforge project Project forum Author's homepage


AC3Filter - это DirectShow фильтр для декодирования AC3. Возможность воспроизведения .AVI с аудио-треками в формате AC3 и MPEG2 (DVD). Распространяется абсолютно бесплатно, то есть - даром (FREEWARE, OpenSource).

Основные особенности:



Содержание



Близкие проекты:

    MatrixMixer - Позволяет микшировать любой аудио источник в формат 5.1.
    WinampAC3 - Мультиканальный ac3 деколер для Winamp.
    LibA52 - Кроссплатформенная библиотека декодирования ac3 (by Michel LESPINASSE).



Скачать.

Новые версии программы можно найти на сайте:
http://ac3filter.sourceforge.net - домашняя страница
http://sourceforge.net/projects/ac3filter - страница проекта на Sourceforge - ошибки, пожелания...
http://sourceforge.net/forum/?group_id=66022 - форум AC3Filter


Все версии:
http://sourceforge.net/projects/ac3filter

ac3filter ver 0.70b
http://prdownloads.sourceforge.net/ac3filter/ac3filter_0_70b.exe?download - Инсталлятор
http://prdownloads.sourceforge.net/ac3filter/ac3filter_0_70b_src.zip?download - Исходники



Установка.

    Просто запустить программу установки.

    Для нормальной работы фильтра все сопроводительные файлы не являются обязательными и поставляются исключительно для удобства использования. Единственный необходимый модуль - ac3filter.ax. Сам модуль также является собственным модулем конфигурации для Панели Управления. В W2K+ его можно прописать в ветке реестра 'HKLM\Software\Microsoft\Windows\CurrentVersion\Control Panel\Cpls'. Но для совместимости с W98 при установке он копируется в системный каталог с расширением .cpl.



Удаление.

    Запустить программу удаления из меню Пуск или из Панели Управления.

    ! Все записанные настройки матриц, эквалайзеров и т.д. будут удалены !

    Возможно, что фильтр был установлен вместе с каким-либо кодек-паком. В этом случае проще всего удалить сам кодек-пак. Если необходимо удалить фильтр отдельно, то это можно проделать вручную:


Настройка системы

    Если установка прошла успешно то в большинстве случаев фильтр немедленно готов к работе и в общем случае не требует настроек (разве что изменить конфигурацию колонок).

    Наиболее совместимым является стерео режим. Он должен работать на любой версии Windows и любой звуковой картой.

    Некоторые драйвера (Creative!) при переключении режима колонок со стерео на многоканальные не изменяют настроек системы 'Control Panel->Sounds and Multimedia->Audio->Sound Playback->Advanced'. Поэтому необходимо проверить эти настройки.

    Некоторые аудио фильтры не поддерживают (или поддерживают некорректно) многоканальные режимы . Некоторые плееры могут подключать свои собственные фильтры для аудио-процессинга (например эквалайзеры), которые опять могут не поддерживать многоканальные режимы. В этих случаях может, например, загадочно исчезнуть центральный канал, или станет невозможно переключать режим колонок. Чтобы этого не происходило не устанавливайте фильтр-паки и отключайте лишние фильтры!

    Один из таких проблемных фильтров является mmswitch (тот, который позволяет смотреть .avi и DVD с несколькими аудио-треками и переключать их (в основном для мультиязычных фильмов). Если Вы в основном смотрите DVD, то лучше использовать mpeg2 парсер, который поддерживает переключение языков самостоятельно (например, стандартный MPEG2 Splitter [mpg2splt.ax]поддерживает возможность переключения аудио-потоков, а Elecard MPEG2 demultiplexor [mpg2dmx.ax] - нет) а mmswitsh дерегистрировать - кроме всего прочего спадет нагрузка на процессор. Дело в том, что если mpeg2 парсер не поддерживает переключения потоков то для каждого аудио-потока создается по собственной цепочке декодирования, все они будут работать паралельно и нагружать процессор, несмотря на то, что на слышен будет только один.

    Если же наличие mmswitch необходимо, то возможны следующие варианты:

    Некоторые из системных настроек могут настраиваться из свойств фильтра (как их вызывать см. Настройки фильтра):



* Filter merit (приоритет фильтра)

    Фильтр устанавливается в систему с наивысшим приоритетом, т.е. будет использоваться вместо других установленных фильтров. Если по каким-то причинам необходимо использовать другие фильтры, то приоритет можно понизить до минимального при помощи опции 'Prefer other decoder'. Фильтр останется в системе и будет использоваться только если не установлено других AC3 декодеров. 'Prefer AC3Filter' - вернуть высокий приоритет. Понижать приоритет необходимо, например, при использовании NVDVD плеера. NVDVD может работать только со своим собственным декодером, а при установленном AC3Filter пытвется загрузить его и не может работать.
    Эта опция требует выйти и зайти в систему заново под W2k/XP и перезагрузки системы под W98.

* Default audio renderer (устройство вывода по умолчанию)

    Звуковая карта может работать в двух режимах: DirectSound и WaveOut. Если при использовании фильтра возникают проблемы (например не работает SPDIF), то переключение режима работы может помочь. Некоторые плееры (например, BSPlayer) имеют соответствующие настройки, прочие же используют системные умолчания. Для переключения режима работы используются  опции 'Use DirectSound' - для использования интерфейса DirectSound по умолчанию и 'Use WaveOut' для использования интерфейса WaveOut.
    Эта опция требует выйти и зайти в систему заново под W2k/XP и перезагрузки системы под W98.

* Audio/Video sync (синхронизация аудио и видео).

    В некоторых случаях возможно что аудио и видео рассинхронизированы. В основном это случается из-за немправильного микширования видео файла, но возможны и аппаратные причины десинхронизации. Эта опция предназначена для решения аппаратных проблем. Эта опция может быть применена для исправления дефекта файла, но необходимо не забывать изменить ее обратно! Здесь указывается сдвиг аудио относительно видео в мс. Если звук слышен до видео, то необходимо увеличить это значение. Если звук происходит после событий на экране, то необходимо уменьшить это значение. Эта опция может исправить только постоянный временной сдвиг.
    Эта опция действует немедленно. При изменении значения задержки  возможно, что изображение замрет или будет двигаться скачками в течении нескольких секунд.

* System options (системные опции)

    Auto load movie configuration files - При включенной опции фильтр будет искать файл настроек фильтра с тем же именем, что и открытый видео файл и автоматически его загрузит.

    Generate timestamps - Эта опция может повлиять на 'дрожание' видео. Можно попробовать переключить эту опцию если наблюдается 'дрожание', неплавное течение видео. При включенной опции обеспечивается наиболее совместимый режим. Фильтр будет вычислять значения временных меток для каждого декодированного ac3 фрейма. Но в этом случае возможно, что эти значения не будут совпадать со значениями временных меток, полученных из файла (фактически они всегда будут расходиться для .avi файлов) и это может привести в 'дрожанию' видео на некоторых системах. Это не означает, что фильтр неправильно считает временные метки, или, что они неправильно проставлены в исходном файле, это общая проблема .avi файлов с кадровым чередованием (frame-based interleave). Частично эта проблема может быть решена при помощи опции 'Jitter correction'.
    При отключенной опции фильтр будеть использовать только временные метки из исходного файла. Это может исправить проблему 'дрожания' видео, связанную с различием временных меток. Но в этом случае часть ac3 фреймов не будет временных меток вообще и некоторые плееры/драйверы могут некорректно отрабатывать такую ситуацию, что опять может привести к 'дрожанию' или 'замороженному' изображению.

    Jitter Correction - Имеет смысл только при включенной опции 'Generate timestamps'. Уменьшает дрожание из-за раницы рассчетного времени и времени, полученного из файла. 'Current jitter' показывает текущую среднюю амплитуду отклонений на выходе.

    Use WAVEFORMATEXTENSIBLE - Для многоканальных режимов используется структура WAVEFORMATEXTENSIBLE (описанная в http://www.microsoft.com/hwdev/tech/audio/multichaud.asp). Некоторые старые драйвера не с ней умеют работать (некоторые новые же, напротив, в многоканальных режимах работают только с ней).

Windows 98

    По умолчанию в Windows98 не поддерживает многоканальные режимы и SPDIF.
    Первое, что необходимо сделать - это установить патч от microsoft:
server1: ftp://ftp.asus.com.tw/pub/ASUS/beta/mb/driver/269601USA8.EXE
server1: ftp://download.intel.com/design/motherbd/bt2/269601USA8.EXE
server1: http://ac3filter.sourceforge.net/download/269601USA8.EXE

    Действие этого патча описано в http://www.microsoft.com/hwdev/tech/audio/Non-PCM.asp.
    Второе - необходимо использовать WaveOut Device в качестве устройства вывода аудио.
    После этих действий в большинстве плееров должны работать многоканальное воспроизведение и таже режим spdif.

WinNT4

    Требуется ServicePack6.

Win2K

    Настоятельно рекомендуется ServicePack2

Vortex

    Если фильтр не работает в многоканальных режимах, можно попробовать выключить опцию 'Use WAVEFORMATEXTENSIBLE' на странице настроек 'System'.



Настройки плееров.

    Большинство плееров не требуют настройки - фильтр определяется автоматически.

BSPlayer

    В настройках плеера (Options->Preferences) установить:

ZoomPlayer

    Для проигрывания AVI файлов никаких настроек произвадить не нужно. Однако этот плеер может использоваться как DVD плеер (вместо широко известных WinDVD и PowerDVD). Для использования AC3Filter для проигрывания DVD необходимы файлы:

http://ac3filter.sourceforge.net/download/zoom/AC3Filter-CyberLink-DirectSound.dvdgraph
http://ac3filter.sourceforge.net/download/zoom/AC3Filter-InterVideo-DirectSound.dvdgraph
http://ac3filter.sourceforge.net/download/zoom/AC3Filter-CyberLink-Waveout.dvdgraph
http://ac3filter.sourceforge.net/download/zoom/AC3Filter-InterVideo-Waveout.dvdgraph

    Эти файлы необходимо поместить в каталог ...\ZoomPlayer\DVDGraph. В настройках плеера Player Options->DVD->DVD Setup необходимо выбрать нужный вариант настроек (в зависимости от того, какой видео декодер используется).



Настройки фильтра.


    Два самых главных правила настройки:
    1. Если вы не понимаете, что делает какая-либо настройка не трогайте ее.
    2. Если вы не послушались первого правила и что-то сломалось, и непонятно, как все починить обратно, загрузите пресет 'standart'.
    :))).

    Настраивать фильтр можно несколькими способами. Лучше всего, если плеер предоставляет доступ к свойствам фильтров (WMP 6.4, BSP, Sasami, и т.д., нет в WMP 7, 8, 9!). Например, из WMP 6.4 список фильтров вызывается через меню File->Properties->Advanced:



    Если плеер не предоставляет доступа к свойствам фильтра то настройку можно произваодить из меню Пуск 'AC3Filter Config' или по иконке в Панели Управления. Однако эти методы не отображают текущей активности и не влияют на нее! Т.е. уровни сигнала не будут отображаться, информация о потоке заполнена нулями, и т.д. Более того, конфигурирование должно произвадиться когда плеер закрыт. (при закрытии плеера фильтр записывает свою конфигурацию в реестр, поэтому измененные настройки будут перезаписаны старыми, прочитанными в момент открытия плеера) Потому крайне рекомендуется производить настройки из плеера, который предоставляет доступ к настройкам фильтра - это практически любой из широко растространенных: BSPlayer, Sasami, ZoomPlayer, LighAlloy, и т.д. Вы также получите возможность сразу услышать, как влияет тот или иной параметр на звук. Не рекомендуются плееры WMP версий 7, 8, 9.

Основные настройки (страница Main)

    Окно настроек выглядит следующим образом (уровни и информация о потоке показываются только при вызове окна свойств из плеера):



* Информация о потоке (Bitstream information).

    Слева сверху - информация о потоке (bitstream information, BSI):

* Переключение конфигурации колонок (Output speakers).

    Слева снизу - настройка выходной конфигурации колонок. Это - реально присутствующие колонки, куда будут микшироваться. каналы ac3-потока. Формат колонок записывается в виде передние_каналы/тыловые_каналы + сабвуфер, (SW), для некоторых конфигураций приведены общепринятые названия. Чем отличается сабвуфер и канал LFE, а также как производить настройку читайте в разделе Что такое LFE?

    Режим 'Dolby Surround/ProLogic' задает режим микширования в 2 канала так, чтобы Dolby Surround/Pro Logic декодер мог выделить тыловой канал. Режим 'Dolby ProLogic II' - аналогично для декодера DPLII. Поддержка DPLII пока экспериментальна из-за отсутствия надежной информации.

    Режим 'SPDIF' - означает, что AC3 поток будет передаваться непосредственно на цифровой выход аудиокарты (без изменений). То есть все остальные настройки не будут действовать.

    Список выбора 'Sample format' задает выходной формат сэмпла. На настоящее время поддерживаются PCM 16, 24, 32 бит и формат с плавающей точкой. На некоторых картах некоторые форматы не поддерживаются, поэтому используйте эту опцию осторожно.

    Необходимо отметить, что корректное переключение режима колонок при проигрывании возможно не всегда.

* Уровни усиления (Gains).

    Снизу посередине находятся уровни усиления.
    Master и Gain отвечают за общий уровень усиления. Master устанавливает желаемый уровень усиления. Если уровень усиления слишком высок и происходит переполнение, то текущий уровень усиления уменьшается. Текущий уровень усиления отображает Gain.

* Сжатие динамического диапазона (DRC).

    По сути, ac3 - логарифмический формат, сэмплы хранятся в формате экспоненты и мантиссы. В пересчете на нормальную битность один сэмпл может занимать до 40бит (чисто теоретически) или до 24бит (норма), что обеспечивает огромный динамический диапазон (хотя, как любил говорить великий дедушка Эйнштейн - все хорошее в этом мире относительно :-). Это означает, что тихая запись с низким уровнем при воспроизведении на 16-битной звуковой карте будет совершенно не слышна или воспроизводиться с очень низким абсолютным уровнем сигнала (=> большими искажениями). Для решения этой проблемы в ac3 существует понятие сжатия динамического диапазона. Идея заключается в том, чтобы при воспроизведении тихого звука с низким уровнем поднимать уровень до преобразования сэмпла в 16-битную форму (для громких звуков - соответственно, наоборот). В ac3 потоке передаются специальные маркеры, насколько изменять текущий уровень. Эти маркеры записываются режисером на стадии мастеринга, потому гарантируют достаточно высокое качество. Индикатор DRC level (Dynamic Range Compression level) отображает этот уровень. При помощи чекбокса Use DRC можно включать и выключать использование сжатия динамического диапазона. (конечно, все вышесказанное только приблизительное и грубое описание проблемы).

    Уровень DRC Power отвечает за то, насколько уровень сжатия динамического диапазона влияет на выходную громкость. При увеличении этого параметра тихие звуки будут подчеркиваться еще больше, а громкие - еще более затеняться. При уменьшении DRC Power влияние сжатия динамического диапазона будет уменьшаться. Нулевое значение DRC Power означает нормальное применение сжатия динамического диапазона.

* Загрузка процессора (CPU usage).

    Индикатор показывает загрузку процессора декодером. В эту нагрузку также включается вся последующая обработка (если есть) до непосредственного воспроизведения.

* Индикаторы уровней (Levels).

    Правая часть - индикация уровней. Необходимо отметить, что уровни здесь - логарифмические. По входным уровням хорошо видна реальная конфигурация каналов в потоке. Так, бывает, что формат потока выставлен как 5.1, однако фактически низкочастотный канал отсутствует. (см. также Что такое LFE?). Красные индикаторы означают переполнение.

* Пресеты (Preset)

    Здесь можно загружать/записывать/удалять пресеты. Вместе с фильтром устанавливается несколько стандартных пресетов:
    При помощи конпки file можно записывать/загружать пресеты в/из файла:



    Если файл конфигурации записан под тем же именем, что и видео файл (это имя предлагается по умолчанию) то такой файл конфигурации будет загружен автоматически при открытии этого файла в будущем.
    Все настройки фильтра разделены на несколько категорий. В автоматически загружаемый файл рекомендуется записывать только основные настройки (General options), и, возможно, эквалайзер потому как в будущем этот файл может просматриваться на другой системе. Те настройки, которые отсутствуют в файле конфигурации не меняются при загрузке этого файла.

Настройки микшера (Mixer)

    Вторая закладка - настройки микшера:

 

    Основной элемент этой страницы - матрица микширования. Она представлена в форме матричного умножения: S' = M S, где S = { L, C, R, SL, SR, LFE } - входной сэмпл, S' = { L', C', R', SL', SR', SW' } - выходной сэмпл.

    Более приземленно это означает, что для каждой клетки действет следующее правило: мы микширует канал заданный колонкой в канал заданный строкой с усилением заданным в клетке. Так, если мы хотим направить левый канал в правый, то мы должны поставить 1 в клетке на пересечении колонки 'L' и строки 'R'. Если мы больше не хотим слышать левый канала слева, то ставим 0 на пересечении строки и столбца 'L'. Проделав аналогичную операцию для правого тыловых каналов мы полностью поменяем местами левую и правую колонки. (Заметьте, что при этом поменяются местами строки, соответствующие левой и правой колонке).

    Нужно четко разделять понятия входного и выходного канала. Входной канал - это то, что было закодировано в AC3 потоке. Выходной канал - это то, что мы будем слышать в колонках.

    Строка определяет что мы будем слышать из выходного канала заданного этой строкой. Так, для матрицы, указанной на рисунке мы из левого канала мы услышим одну часть входного левого канала, часть центрального, немного приглушенный левый тыл и низкочастотный канал.

    Столбец означает куда будет микшироваться входной канал. Так, центральный канал направляется одновременно и на левую и на правую колонку с множителем 0.7 (иначе центр идущий из двух колонок будет звучать громче, чем если бы у нас была честная третья колонка). Таким образом мы услышим центральный канал посередине между левой и правой колонками. Изменяя множитель в левом или правом выходном канале 'подвинуть' центр. Так, если поставить 1 в столбце 'С' строки 'L', то центр будет слышен громче из левого канала и будет казаться 'сдвинутым' влево.

    При включенной опции Auto matrix матрица автоматически обновляется при изменении параметров. Так, изменив уровень для центрального канала мы также увидим изменения в коэффициентах матрицы (столбец 'C').

    Для удобства на эту страницу вынесены некоторые элементы управления со страницы основных настроек, поэтому за их описанием обращайтесь в разделу Основные настройки.

    Описание настроек:
    Комбо-бокс позволяет сохранять и загружать сохраненные матрицы.

Эквалайзер и задержки (Equalizer).



    Правая часть полностью посявящена непосредственно эквалайзеру. Что все это означает и так очвидно, посему не буду утомлять себя описанием ;-).

    Левый верхний угол - настройка задержек. Необходима для компенсации разных расстояний до колонок. В идеале все колонки должны находиться на равном расстоянии от слушателя, чтобы звук изданный в определенный момент времени одновременно изо всех колонок дошел до слушателя также одновременно. В противном случае звуки будут позиционироваться неверно. Однако, на практике расстояние до колонок может быть разным. Для компенсации разных расстояний до колонок звук в них должен воспроизводиться с небольшими задержками.

    Величину задержки можно задавать непосредственно - в миллисекундах или сэмплах. Отрицательное значение задержки означает, что канал должен воспроизводиться 'раньше' нулевого времени (чем дальше находится колонка, тем раньше она должна начать работать, чтобы звук успел пройти большее расстояние).

    Для удобства, можно указывать расстояние до колонок. В этом случае положительное значение задает 'отрицательную' задержку, чтобы удаленная колонка начала воспроизводить звук раньше. Отрицательные значения означают положительную задержку воспроизведения канала.



Что такое LFE?


    Первое, что необходимо отметить - LFE это не то же самое, что сабвуфер! И то, что 5.1 в случае с AC3 это совсем не те же самые 5.1 акустической системы. Поэтому начнем с рассмотрения этой разницы.

    Формат AC3 создавался для кинотеатров, а совсем не для компьютера. А в кинотеатрах акустика вполне адекватно может воспроизвадить низкие частоты. LFE же был задуман как канал для мощных низкочастотных эффектов, то есть эффектов, с которыми обычная акустика уже не может справиться. Чтобы стены тряслись, народ вопил от ужаса, а слабонервные барышни падали в обморок. Таким образом все каналы ac3-кодированного потока содержат низкие частоты, и только иногда (в особо взрывоопасные моменты) в работу вступает канал LFE и только для того, чтобы помочь основной акустике потрясать стены. Вполне может случиться так, что канал LFE вообще не включится ни разу за весь фильм. И это также будет нормальным.

    У компьютерной же акустики совсем другая специфика. Большинство современных компьютерных 5.1 наборов просто не в состоянии воспроизвести низкие частоты через сателлиты. То есть саб должен полностью отвечать за воспроизведение низких частот.

    Таким образом если мы подключим 5.1 акустику, и станем смотреть фильм с 5.1 зауковой дорожкой назначив канал LFE на сабвуфер, то мы рискуем не услышать низких частот вообще!

    Поэтому, если акустическая система имеет отдельный сабвуфер крайне рекомендуется перенаправлять туда басы со всех каналов (т.к. низкочастотная информация содержится во всех каналах). Т.е. включить опцию Bass redirection в настройках фильтра. Либо использовать аналогичную опцию в настройках драйвера звуковой карты, если там такая опция есть, а опцию фильтра выключить. Многие могут возразить - "А как же правильное воспроизведение?". Сомневающихся отправляю к документу (http://www.dolby.com/tech/c.in.0011.LFE.pdf), где разъясняется роль LFE и саба при воспроизведении звука.



Рецепты.

Микшируем LFE.

    При отсутствии саба в выходной конфигурации по умолчанию LFE микшируется только в передние колонки. Если остальные колонки также имеют достаточную мощность, то можно микшировать его и туда:

Меняем местами колонки.

    Для понимания этого раздела рекомендуется внимательно прочитать раздел Настройки микшера (в части описания работы матрицы).

    Вы хотите получить полноценный центральный канал на карте, не поддерживающей только 4 канала? Это возможно. Но для этого придется пожертвовать одним из задних каналов. Т.е. из конфигурации 2/2 (два передних канала, два занних) будем делать 3/1 (три передних, один задний). Для этого:

Максимальная громкость

    Если кажется, что стандартные настройки дают слишком тихий звук, то это можно исправить. На самом деле стандартные настройки дают звук, максимально приближенный к стандарту, потому любые манипуляции - это отклонение от стандарта и можно услышать совсем не то, что задумывалось. Но если обстоятельства вынуждают, то посмотрим, что можно сделать...

    Первое, что необходимо знать - большинство фильмов нормировано так, чтобы не происходило переполнения. Потому если в данном моменте звук кажется слишком тихим, то подняв уровень в другом месте может возникнуть переполнение. Поэтому важно уметь пользоваться всеми возможностями в меру.

    Основных методов борьбы с переполнением реализовано три:

    Самый простой метод поднять громкость - это выключить автоматическую регулировку усиления (Auto gain control) и поднять уровень усиления Master. В этом случае переполнение будет просто обрезаться. Этот метод подходит только для того, чтобы слушать на максимальной громкости в ущерб качеству.

    Следующий метод, более качественный - поднять уровень Master (можно сразу до максимума), включить автоматическю регулировку усиления и включить однопроходную нормализацию (Normalize). В этом случае при возникновении переполнения уменьшится усиление. После определенного промежутка времени усиление почти перестанет изменяться. В этом случае мы получим максимальное качество при максимуме громкости. Этот метод также имеет недостатки - во первых для того, чтобы усиление стабилизировалось необходимо время, а во вторых, тихие звуки могут оказаться слишком тихими и главная задача - слышать четко все будет не выполнена. Этот метод рекомендуется как самый быстрый способ получить максимальную громкость при максимальном же качестве.

    Как разновидность предыдущего метода можно выключить однопроходную нормализацию. В этом случае усиление будет понемногу восстанавливаться после переполнения до уровня Master. Этот метод мало чем отличается от предыдущего, но здесь более важно правильно выбрать уровень Master. При большом количестве переполнений, когда уровень Master слишком высок, будут происходить частые и неприятные смены громкости (предыдущий же метод от этого в некоторой мере избавлен, поскольку восстановления уровня не происходит). Зато часть недостатков предыдущего метода можно сгладить. Так, нормально слышно будет и взрывы и тихий разговор. Но, разговор сразу после взрывов слышно опять будет плохо. Этот метод можно рекомендовать при небольшом изменении громкости, когда переполнений не ожидается или ожидается достаточно мало.

    Следующее, что можно сделать - при поднятом уровне Master включить сжатие динамического диапазона (Use DRC, см раздел Основные настройки). Текущий уровень усиления отображается на соответствующем индикаторе. На громких сценах он должен уменьшаться, а на тихих увеличиваться. Может оказаться, что DRC задает слишком малое усиление, поэтому можно увеличить эффект уровнем DRC Level.  Подбирать этот уровень нужно исходя из того, чтобы скачки громкости, вызванные работой самого DRC и блоком управления  усилением были минимальны при максимальном уровне самого звука. Понятно, что при увеличении эффекта DRC скачки грмкости становятся более заметными. Однако, таким образом можно добиться четкого звучания самых тихих звуков (разумеется из тех, которые посчитал важными звукорежиссер), и избавиться от скачков громкости автоматической регулировки усиления. Например, отчетливо разбирать речь на фоне шумных сцен (взрывы, стрельба). Как вариант - можно вообще выключить автоматическую регулировку усиления. В этом случае баланс нужно выбирать между громкостью Master, скачками громкости DRC и ухудшением качества из-за обрезания сигнала.

    Т.о. следующие параметры влияют на громкость и четкость тихих звуков: Master, Auto gain control, Normalize, Use DRC, DRC Level. Подбор этих параметров должен производиться исключительно индивидуально - в зависимости от типа акустической системы (высококлассная АС, или пассивные колонки), восприятия самого слушателя (некоторых раздражают скачки громкости, другим же болше важно слышать, что говорят), и фильма (ленивый звукорежиссер не проставил метки DRC в звуковом потоке ;-).



Реестр и файлы конфигурации

    Фильтр сохраняет свои настройки в разделе реестра: [HKEY_CURRENT_USER\Software\AC3Filter]. Все настройки фильтра разделены на 4 части: общие, матрица, эквалайзер, задержки. Каждая из частей сохраняется в отдельной ветке. Кажая часть настроек формирует свои пресеты. Т.е. возможно несколько эквалайзеров или матриц. Особое назначение имеет пресет '_default'. При загрузке фильтра загружаются все '_default' пресеты (общие настройки, матрица, эквалайзер и задержки) и сохраняются там же при выгрузке.

    Файлы конфигурации также разделены на несколько частей, каждая из которых содержит тот же набор настроек, что и ветки реестра.

    Все уровни храняться в реестре в виде коэффициентов (не в dB).
    Все значения с плавающей точкой сохраняются в реестре в виде значений 'REG_SZ'.
    Значения 'bool' записываются как целые в реестр и как 'true'/'false' значения в файл конфигурации.

    Как часть исени некоторых настроек используются следующие сокращения имен каналов:
Сокращение
Значение
L
Передний левый
C
Центральный
R
Передний правый
SL
Левый тыл
SR
Правый тыл
LFE
Канал LFE или
сабвуфер

Пресеты

    Ключи реестра:

Матрицы микширования.

    Ключи матрицы именуются следующим образом: [from_channel]_[to_channel], где канал from_channel микшируется в канал to_channel, с коэффициентом, указанным в ключе.



Разное.

    Фильтр был основан на OpenSource библиотеке LibA/52 (http://liba52.sourceforge.net) и во многом наследует его свойства. Многое было переписано, но основные положительные свойства я старался сохранить. Можно отметить очень высокое качество этой библиотеки, и весьма последовательное следование стандарту (http://www.atsc.org/standards/a_52a.pdf). Благодарности Aaron Holtzman и Michel Lespinasse за нее.
   
    Хочу отдельно поблагодарить Марселло Мота (Marcello Mota) за моральную поддержку и огромную помощь в тяжком деле тестирования и отладки.
    Огромная благодарность Gabest за поддержку проигрывания DVD.
    Fank'у (форум doom9) за матрицу микширования Dolby ProLogic II.
    Valery Shabaev за скрипт инсталлятора.
    Участникам формумов Doom9 и iXBT, а также из создателям.
    А также всем остальным, без чьей помощи этот проект не был бы таким какой он есть.



Условия распространения.

    Даный программный продукт распространяется под лицензией GNU General Public Licence v2, текст которой прилагается в файле GNU_eng.txt - на английском языке и GNU_rus.txt - на русском языке. Вариант на русском языке прилагается только в справочных целях, поэтому при всех возможных разночтениях приоритет имеет версия на английском языке.

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

    Даный программный продукт распространяется исключительно в надежде, что он будет полезен, однако безо всяких гарантий работы на конкретном оборудовании, соответствия каким-либо условиям, стандартам или нуждам. Я не обязуюсь обеспечивать круглосуточную (и вообще, какую либо) поддержку, исправление ошибок, восстановление потерянных из-за работы программы данных, отвечать за испорченное железо, а также за потерянное рабочее вермя. Я не несу ответственности за легальность воспроизводимой при помощи данной программы мультимедиа-продукции.



Связь с автором.

    По всем вопросам, связанным с программой просьба писать по адресу: под заголовком 'AC3Filter'. Большая просьба сообщать обо всех ошибках в программе, и крайне желательно приводить следующую информацию:
    Это поможет мне в исправлении ошибки. Послания типа 'У меня ничего не работает. Что делать?' без подробного описания что и как делалось будут игнорироваться.



Changelog.

0.69b - 18.08.2003
  ! Исправлен серьезный баг в декодере. Звучание, особенно на
    низких битрейтах значительно лучше.
  * Немного оптимизации.
  * Обновлена матрица микширования DPLII по
    http://forum.doom9.org/showthread.php?s=&threadid=57988


0.69b - 09.07.2003
  + Добавлена система подавления джиттера
  + Добавлена документация на итальянском языке
  + Звук иногда пропадал в MediaPlayerClassic
  ! Кнопка 'File' теперь работает при вызове конфигурации из 
    Панели Управления


0.68b - 03.04.2003
  ! Самопроизвально переключался на spdif при включенной
    загрузке файлов конфигурации. Починено.


0.67b - 31.03.2003
  - Автоматическле переключение на стерео убрано.
  + Добавлены кнопки для удаления ненужных пресетов.
  + Возможность записывать/читать настройки в/из файла
  + Автоматическая загрузка настроек из файла лежащего 
    рядом с файлом фильма. Т.е. можно создавать собственные 
    настройки для проигрывания конкретного файла.
  + Добавлена страница системных настроек.
  + Индикаторы выходных уровней могут показывать переполнение.
  + Сдвиг аудио относительновидео видео.


0.66b - 19.03.2003
  ! Исправлено самопроизваольное переключение с SPDIF на стерео
    при перемотке.


0.65b - 18.03.2003
  ! Проигрывание DVD вернулось на место


0.64b - 17.03.2003
  * Обширное тестирование.
  + Конфигурация колонок может быть выставлена во время работы
    (не нужно останавливать проигрывание).
  + Добавлена опция перенаправления басов на сабвуфер.
  + 100Hz-7000Hz фильтр для микширования в Dolby Surround/ProLogic
  + Переключение в PCM 16bit stereo если заданный формат не 
    поддерживается (ошибка 'Some streams are in unsupported format')
  + Задержки могут задаваться в виде расстояния до колонки
    (автоматический пересчет)
  + Можно переключать предпочтительное использование ac3fitler или
    других установленных декодеров (для NVDVD).
  ! Отказ работать с SPDIF на некоторых системах.
    (ошибка 'Some streams are in unsupported format')
  ! Подергание видео при работе с SPDIF исправлено.
  ! Тихий центр/тыл (убран -3dB для центра/тыла)
  ! Обновлена матрица разложения стерео на многоканальный звук
  ! W98/ME крах диалога конфигурации починен.
  ! W98/ME иконка в панели управления теперь работает
  ! W98/ME 'Use WaveOut' & 'Use DirectShound' починены.


0.63b - 23.12.2002
  ! Починен SPDIF.


0.62b - 22.12.2002
  + Реализовано отсечение при переполнении.
  + Автоматическое регулировка усиления темерь может быть отключена.
  * filter_merit теперь использует общепринятые сокращения для корневых
    ключей реестра.
  * Повышена устойчивость у ошибкам.
  ! Исправлен баг с перемещением по фильму
  ! Исправлен баг: иногда временные метки могли теряться.
  ! Исправлен баг с SPDIF'ом (неправильный размер фрейма)
  ! WaveOut/DirectSound переключение теперь работает более корректно под W98
    (спасибо Mario *LigH* Rohkramer!)
  ! Небольшой глюк в деинсталяторе.


0.61 - 20.12.2002
  + Инсталлятор
  * Изменены алгоритмы синхронизации.
  ! Исправлена ошибка при работе с WaveOut и ReClock.


0.6b - 17.12.2002
  + Эквалайзер
  + Настройка задержек
  + Поддержка различных форматов сэмплов: PCM16, PCM 24, Float
  + Режимы микшировани Dolby Surround/ProLogic/ProLogicII
  + Иконка в Панели Управления
  * Страница настроек микшека переделана
  * Немного меньший размер модуля
  ! Починен баг с моно выходом
  ! Починен баг с WMP9


0.55b - 25.11.2002
  ! Исправлен баг - неверное декодирование стерео ac3 файлов.
  ! Исправлено: Упровни усиления Sorround и Voice не работали в 
    пятиканальном режиме.


0.54b - 01.10.2002
  + Сделан вывод на SPDIF.
  + Сделана загрузка пресетов + несколько стандартных пресетов.
  * Конфигурация колонок теперь запоминается в реестре.
  + Отдельная программа для конфигурации колонок.
  + Патч для коррекции размера диалога для Win98 Chieneese.
  ! Исправлен баг - в некоторых случаях настройки не записывались.


0.53b - 14.09.2002
  * Фильтр теперь распространяется под лицензией GPL.
  + Сохранение настроек в реестре.
  + Добавлена страница настроек микшера с матрицей микширования.
  * Канал LFE сейчас микшируется только в передние колонки.
  * Чекбокс 'Normalize' на главной странице теперь означает 
    однопроходую нормализацию.
  ! Часть багов исправлена, новые добавлены.


0.52b - 01.09.2002
  ! Исправлен баг, приводящий к зависанию на испорченных PES-потоках.
  + Добавлен контроль переполнения и автоматическая регулировка усиления.
  + Добавлено управление уровнем усиления.
  + Добавлено управление мощностью сжатия динамического диапазона.
  * Увеличена громкость 


0.51b - 18.07.2002
  ! Исправлен баг приводящий к краху на некоторых ac3.


0.5b - 07.07.2002
  * Полностью переписан код декодера.
  + Добавлена поддержка PES.
  + Уровни LFE, Surround и Voice по умолчанию берутся из BSI.
  + Индикатор загрузки процессора.
  + Индикаторы входных и выходных уровней.
  + Индикатор уровня DRC.
  + Добавлены несколько полей с информацией о потоке.
  ! Исправлена куча всякой мелочи.


0.4a  - 23.06.2002
  + Добавлена поддержка LFE и регулятор усиления LFE.
  + Добавлены кнопки сброса регуляторов до значений заданных в BSI
  * Формат стерео теперь передается в стандартном формате, т.о. возможна 
    работа фильтра с системами не поддерживающими многоколоночный 
    формат (Win9x/WinNT).
  + Добавлена поддержка декодирования DVD
  ! Исправлена проблема с синхронизацией
  + Добавлена опция отлючения сжатия динамического диапазона и индикатор 
    текущего уровня.


0.3a  - 03.04.2002
  + Сделаны регулировки балансов громкости Voice (центральный канал) и
    Surround (задние колонки).
  + Сделано изменение конфигурации колонок. Работает только если
    промежуточными фильтрами поддерживается динамическое реконфигурирование
    и только в режиме остановки (не паузы!).


0.2a  - 01.04.2002
  * Код библиотеки LibA52 переписан для многопоточного исполнения,
    соответственно появилась возможность создавать несколько экзкмпляров
    фильтра для многоязычных фильмов.
  + Добавлено окно информации (настройки пока не работают)


0.1a  - первая альфа-версия фильтра.




Полезные ссылки.

Сайт AC3Filter (rus+eng): (http://xvalex.hotbox.ru/programs/ac3filter)
Сайт AC3Filter (rus+eng): (http://ac3filter.sourceforge.net)
Сайт AC3 декодера для Winamp (rus+eng): (http://xvalex.hotbox.ru/programs/winampac3)
Сайт AC3 декодера для Winamp (rus+eng): (http://winampac3.sourceforge.net)

Стандарт A/52a (AC3) (eng): (http://www.atsc.org/standards/a_52a.pdf).
Разъяснения Dolby по поводу LFE (eng): (http://www.dolby.com/tech/c.in.0011.LFE.pdf)
Библиотека LibA52 (бывший ac3dec) (eng): (http://liba52.sourceforge.net).
Многоканальное воспроизведение под Windows (eng): (http://www.microsoft.com/hwdev/tech/audio/multichaudP.asp)
Просто полезный сайт по видео (eng): (http://www.doom9.org).


Copyright (c) 2002-2003 by Vigovsky Alexander.
Last updated 18.08.2003