• Статья
  • Чтение занимает 6 мин

Декодер Dolby Audio — это Media Foundation преобразование (MFT), которое декодирует следующие типы потоков:

  • Dolby Digital, также называемая Dolby AC-3
  • Dolby Digital Plus, также называемый расширенным AC-3 (E-AC-3)

Важно!

для версий Windows, выпущенных до Windows 8, реализация технологии dolby digital в корпорации майкрософт ограничена условиями программы цифрового лицензирования dolby, используемой приложениями майкрософт.

Дополнительные сведения об этих форматах см. в документе по расширенному телевидению цифрового звука (AC-3, E-AC-3) версии B.

Декодер также может преобразовать поток Dolby Digital Plus в цифровой формат Dolby для вывода AC-3 S/ПИДФ или отформатировать поток Dolby Digital Plus для цифрового выхода HDMI.

Идентификатор класса

Идентификатором класса (CLSID) декодера Dolby Audio является CLSID _ кмсддплусдекмфт, определенный в файле заголовка вмкодекдсп. h.

Типы входных данных

Декодер Dolby Audio поддерживает следующие входные подтипы.

Subtype Описание Header
МЕДИАСУБТИПЕ _ Dolby _ AC3 Dolby Digital Audio. мфапи. h
МЕДИАСУБТИПЕ _ DVM Dolby Digital Audio; см. раздел аудио подтипы. Этот подтип можно использовать взаимозаменяемым с медиасубтипе _ Dolby _ AC3. вмкодекдсп. h
Мфаудиоформат _ Dolby _ Digital _ Plus Dolby Digital Plus Audio. мфапи. h

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

attribute Описание Remarks
MF_MT_MAJOR_TYPE Основной тип. Обязательный элемент. Необходимо MFMediaType_Audio.
MF_MT_SUBTYPE Подтип аудио. Обязательный элемент. Дополнительные сведения см. в предыдущей таблице.
MF_MT_AUDIO_SAMPLES_PER_SECOND Частота выборки, в примерах в секунду. Необязательный элемент. Допустимые значения: 48000, 44100, 32000, 24000, 22050 и 16000. Если этот атрибут не задан, по умолчанию используется значение 48000.

[!Note]
Потоки Dolby AC-3 ограничиваются тремя самыми высокими тарифами в этом списке.

MF_MT_AUDIO_NUM_CHANNELS Количество каналов, включая канал с низкой частотой (НИЗКОЧАСТОТный), если он есть. Необязательный параметр. Допустимые значения находятся в диапазоне от 1 (моно) до 8 (Конфигурация канала 7,1). Если этот атрибут не задан, по умолчанию используется значение 2 (стерео).
MF_MT_AUDIO_CHANNEL_MASK Указывает назначение звуковых каналов для позиционирования динамиков. Необязательный параметр. Если указано, значение должно соответствовать числу звуковых каналов. Если атрибут не задан, декодер использует маску канала по умолчанию на основе числа каналов.

В следующей таблице перечислены поддерживаемые конфигурации канала Dolby.

Конфигурация канала Число каналов Маски каналов
1/0 (моно) 1 0x4 (SPEAKER_FRONT_CENTER)
2/0 (стерео) или 1 + 1 (два Mono) 2 0x3 (SPEAKER_FRONT_LEFT SPEAKER_FRONT_RIGHT)
3/0 3 0x7 (SPEAKER_FRONT_LEFT SPEAKER_FRONT_RIGHT SPEAKER_FRONT_CENTER)
2/1 3 0x103 (SPEAKER_FRONT_LEFT SPEAKER_FRONT_RIGHT SPEAKER_BACK_CENTER)
3/1 4 0x107 (SPEAKER_FRONT_LEFT SPEAKER_FRONT_RIGHT SPEAKER_FRONT_CENTER SPEAKER_BACK_CENTER)
2/2 4 0x33 (SPEAKER_FRONT_LEFT SPEAKER_FRONT_RIGHT SPEAKER_BACK_LEFT SPEAKER_BACK_RIGHT)
или
0x603 (SPEAKER_FRONT_LEFT
SPEAKER_FRONT_RIGHT SPEAKER_SIDE_LEFT SPEAKER_SIDE_RIGHT)
3/2 5 0x37 (SPEAKER_FRONT_LEFT SPEAKER_FRONT_RIGHT SPEAKER_FRONT_CENTER SPEAKER_BACK_LEFT SPEAKER_BACK_RIGHT)
или
0x607 (SPEAKER_FRONT_LEFT
SPEAKER_FRONT_RIGHT SPEAKER_FRONT_CENTER SPEAKER_SIDE_LEFT SPEAKER_SIDE_RIGHT)
3/2 + НИЗКОЧАСТОТНЫЙ 6 0x3F (SPEAKER_FRONT_LEFT SPEAKER_FRONT_RIGHT SPEAKER_FRONT_CENTER SPEAKER_LOW_FREQUENCY SPEAKER_BACK_LEFT SPEAKER_BACK_RIGHT)
или
0x60F (SPEAKER_FRONT_LEFT
SPEAKER_FRONT_RIGHT SPEAKER_FRONT_CENTER SPEAKER_LOW_FREQUENCY SPEAKER_SIDE_LEFT SPEAKER_SIDE_RIGHT)
3/2/2 + НИЗКОЧАСТОТНЫЙ

[!Note]
Только Dolby Digital Plus.

8 0x63F (SPEAKER_FRONT_LEFT SPEAKER_FRONT_RIGHT SPEAKER_FRONT_CENTER SPEAKER_LOW_FREQUENCY SPEAKER_BACK_LEFT SPEAKER_BACK_RIGHT SPEAKER_SIDE_LEFT SPEAKER_SIDE_RIGHT)

Кроме того, конфигурации каналов 1/0, 2/0, 3/0, 2/1, 3/1 и 2/2 также могут отображаться с каналом НИЗКОЧАСТОТного канала.

Типы вывода

Декодер Dolby Audio поддерживает следующие выходные типы выходных данных.

Subtype Описание Header
Мфаудиоформат _ Dolby _ AC3 _ SPDIF Звук Dolby AC-3, отформатированный для цифрового выхода S/PDIF. мфапи. h
_ПОДТИП ксдатаформат _ IEC61937 _ Dolby _ Digital _ Plus Dolby Digital Plus Audio, форматированный для цифрового выхода HDMI. ксмедиа. h
Мфаудиоформат _ float IEEE 32-разрядный звук PCM с плавающей точкой
Windows 10: стерео, 5,1, 7,1
Предыдущие версии: стерео, 5,1
мфапи. h
Мфаудиоформат _ PCM 16-разрядный звук PCM
Windows 10: стерео, 5,1, 7,1
Предыдущие версии: стерео, 5,1
мфапи. h

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

attribute Описание Remarks
MF_MT_MAJOR_TYPE Основной тип. Обязательный элемент. Необходимо MFMediaType_Audio.
MF_MT_SUBTYPE Подтип аудио. Обязательный элемент. Дополнительные сведения см. в предыдущей таблице.
MF_MT_AUDIO_SAMPLES_PER_SECOND Частота выборки, в примерах в секунду. Обязательный элемент. Допустимые значения: 48000, 44100, 32000, 24000, 22050 и 16000. Частота выборки выходных данных должна совпадать с частотой выборки данных. Декодер не может изменить частоту выборки потока.
MF_MT_AUDIO_NUM_CHANNELS Количество каналов, включая канал с низкой частотой (НИЗКОЧАСТОТный), если он есть. Требуется для выходных данных PCM.
Не требуется для цифрового вывода.
Если входной тип — моно, стерео или Dual-Mono (все без канала НИЗКОЧАСТОТного звучания), единственное допустимое значение — 2 для стерео Output. В противном случае значение может быть следующим:

  • 2 для стерео довнмикс
  • 6 для конфигураций каналов 5,1
  • 8 для конфигураций каналов 7,1
MF_MT_AUDIO_CHANNEL_MASK Указывает назначение звуковых каналов для позиционирования динамиков. Требуется для вывода PCM, если число каналов больше 2. Значение должно быть следующим:

  • 0x3 для стерео вывода
  • 0x3F для выходных данных канала 5,1
  • 0x63F для выходных данных канала 7,1

Не требуется для цифрового вывода.

MF_MT_AUDIO_BITS_PER_SAMPLE Число битов на аудио выборка. Требуется для выходных данных PCM. Значение должно быть 32 для MFAudioFormat_Floatи 16 для MFAudioFormat_PCM.
Не требуется для цифрового вывода.
MF_MT_AUDIO_VALID_BITS_PER_SAMPLE Количество допустимых битов звуковых данных в каждом звуковом примере. Необязательно для выходных данных PCM. Если значение задано, оно должно быть идентично значению MF_MT_AUDIO_BITS_PER_SAMPLE.
Не требуется для подтипов цифровых выходных данных.
MF_MT_AUDIO_BLOCK_ALIGNMENT Выравнивание блокировки в байтах. Необязательно для выходных данных PCM. Не требуется для цифрового вывода.
MF_MT_AUDIO_AVG_BYTES_PER_SECOND Среднее число байтов в секунду. Необязательно для выходных данных PCM. Не требуется для цифрового вывода.

Атрибуты преобразования

Декодер Dolby Audio реализует метод имфтрансформ:: OutAttribute . Приложение может использовать этот метод для получения или установки следующих атрибутов.

Декодер принимает только необработанные потоки Dolby, как определено параметром/52B. полезные данные, такие как пакетированные простые Потоки (PES), не поддерживаются. Для Dolby Digital Plus декодер декодировать до 5,1 каналов. в Windows 10 потоки каналов 7,1 декодированы без довнмикс. В предыдущих версиях ОС, если поток 7,1 каналов, будет декодирован только довнмикс-канал 5,1. Если поток — Dolby Digital Plus с более чем одним независимым подпотоком, декодирован только независимый подпоток 0. Декодер пропускает другие независимые подпотоки. Кроме того, декодер пропускает все зависимые подпотоки. Декодер поддерживает расшифровку и декодирование потоков, защищенных с помощью технологии Digital Rights Management (DRM).

Если тип входного носителя имеет конфигурацию канала, отличную от Mono, стерео или Dual-Mono (без канала НИЗКОЧАСТОТного звучания), декодер предоставляет два варианта конфигураций выходного канала:

  • 8-канальный вывод (Конфигурация канала 7,1)
  • 6-канальный вывод (Конфигурация канала 5,1)
  • Стерео довнмикс

Если выбрано стерео довнмикс, то тип довнмикс можно задать в MFT с помощью свойства кодекапи _ авдекддстереодовнмиксмоде .

Если тип выходных данных — мфаудиоформат _ Dolby _ AC3 _ SPDIF, то каждый выходной буфер содержит 6 144 байт. Буфер начинается с 8-байтового заголовка S/PDIF, за которым следует сжатый кадр AC-3, за которым следует ноль заполнения до 6 144 байт.

Если тип выходных данных — ксдатаформат подтип _ _ IEC61937 _ Dolby _ Digital _ PLUS, каждый выходной буфер содержит 24 576 байт. Буфер начинается с 8-байтового заголовка S/PDIF, за которым следуют 1 – 6 сжатые кадры Dolby Digital Plus, соответствующие примерам PCM 1 536, за которыми следует ноль заполнения до 24 576 байт. Для выходных данных HDMI упаковывается только независимый подпоток 0.

Таблица MFT декодера зарегистрирована с флагом _ перечисления MFT Enum _ _ фиелдофусе, который указывает, что Таблица MFT, которая должна быть разблокирована приложением перед использованием. Дополнительные сведения см. в разделе ограничения использования.

Требования

Требование Значение
Минимальная версия клиента Windows 8 [ приложения UWP для классических приложений |]
Минимальная версия сервера Ни одна версия не поддерживается
DLL
Msauddecmft.dll

См. также раздел

Объекты кодека