Кодировщик звука Windows Media

Кодировщик аудиокодировщика Windows Media кодирует звуковые потоки. Кодировщик поддерживает три категории закодированных выходных данных: Windows Media Audio Standard, Windows Media Audio Professional и Windows Media Audio Lossless.

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

Идентификатор класса (CLSID) для кодировщика звука Windows Media представлен константой CLSID_CWMAEncMediaObject. Экземпляр звукового кодировщика можно создать, вызвав CoCreateInstance.

Форматы входных данных

В следующей таблице показаны теги формата звука, представляющие входные категории, поддерживаемые кодировщиком звука Windows Media. Сведения о настройке входных и выходных типов кодировщика см. в разделе "Настройка кодирования звука".

Форматирование константы тегов Форматирование значения тега Формат аудио
WAVE_FORMAT_PCM 0x0001 Формат PCM
WAVE_FORMAT_IEEE_FLOAT 0x0003 Плавающая точка IEEE
WAVE_FORMAT_EXTENSIBLE 0xFFFE Формат PCM/IEEE в структуре WAVEFORMATEXTENSIBLE

 

Форматы выходных данных

В следующей таблице показаны теги формата звука, представляющие выходные категории, поддерживаемые кодировщиком звука Windows Media.

Форматирование константы тегов Форматирование значения тега Формат аудио
WAVE_FORMAT_WMAUDIO2 0x0161 Windows Media Audio Standard
WAVE_FORMAT_WMAUDIO3 0x0162 Windows Media Audio Professional
WAVE_FORMAT_WMAUDIO_LOSSLESS 0x0163 Без потери звука в Windows Media

 

Интерфейсы

Объект аудиокондера предоставляет интерфейс IMediaObject , чтобы объект можно было использовать как объект DirectX Media Object (DMO), и предоставляет интерфейс МВФTransform , чтобы объект можно было использовать в качестве преобразования Media Foundation (MFT).

Кодировщик звука Windows Media ведет себя как DMO или MFT в зависимости от того, какие интерфейсы вы получаете и какая версия Windows запущена. В следующей таблице показаны условия, при которых кодировщик звука ведет себя как DMO или MFT.

Операционная система Поведение кодировщика
Windows XP Кодировщик звука Windows Media всегда ведет себя как DMO.
Windows Vista По умолчанию кодировщик звука Windows Media ведет себя как DMO. Если вы получаете интерфейс IMFTransform или интерфейс IPropertyStore в звуковом кодировщике, он ведет себя как MFT.
Windows 7 По умолчанию кодировщик звука Windows Media ведет себя как DMO. Если вы получаете интерфейс IMFTransform на звуковом кодировщике, он ведет себя как MFT.

 

Свойства кодировщика

Кодировщик звука Windows Media поддерживает следующие свойства.

Свойство Description
MFPKEY_AVGCONSTRAINED Указывает, использует ли кодировщик кодировку VBR со средним контролем.
Windows Vista и более поздние версии.
Стандартный, профессиональный, без потери.
Read/write.
MFPKEY_BMAX Указывает окно буфера (в миллисекундах) ограниченного потока переменной скорости (VBR) с пиковой скоростью.
Windows XP и более поздние версии.
Стандартный, профессиональный.
Read/write.
MFPKEY_CHECKDATACONSISTENCY2P Указывает, должен ли кодировщик проверка для согласованности данных во время двухпроходной кодирования VBR.
Windows Vista и более поздние версии.
Стандартный, профессиональный, без потери.
Только чтение.
MFPKEY_CONSTRAINDECLATENCY Указывает, ограничен ли кодировщик максимальным требованием задержки декодера.
Windows Vista и более поздние версии.
Стандартный, профессиональный, без потери.
Read/write.
MFPKEY_CONSTRAINENCCOMPLEXITY Указывает, ограничена ли сложность алгоритма кодирования.
Windows Vista и более поздние версии.
Стандартный, профессиональный, без потери.
Read/write.
MFPKEY_CONSTRAINENCLATENCY Указывает, ограничивается ли кодировщик требованием максимальной задержки.
Windows Vista и более поздние версии.
Стандартный, профессиональный, без потери.
Read/write.
MFPKEY_CONSTRAIN_ENUMERATED_VBRQUALITY Указывает, ограничены ли режимы, перечисленные кодировщиком, теми, которые соответствуют требованиям к качеству.
Windows Vista и более поздние версии.
Стандартный, профессиональный, без потери.
Read/write.
MFPKEY_DECODERCOMPLEXITYPROFILE Задает профиль сложности закодированного содержимого.
Windows XP и более поздние версии.
Стандартный, профессиональный, без потери.
Только чтение.
MFPKEY_DESIRED_VBRQUALITY Задает требуемый уровень качества для кодирования VBR.
Windows Vista и более поздние версии.
Стандартный, профессиональный, без потери.
Доступный только на запись.
MFPKEY_DYN_ALLOW_NOISESUB Указывает, используется ли кодировщик подстановка шума.
Windows Vista и более поздние версии.
Стандартный, профессиональный, без потери.
Read/write.
MFPKEY_DYN_ALLOW_PCMRANGELIMITING Указывает, использует ли кодировщик ограничение диапазона PCM.
Windows Vista и более поздние версии.
Стандартный, профессиональный, без потери.
Read/write.
MFPKEY_DYN_BANDTRUNC_BWCEIL Указывает максимальную закодированную пропускную способность, разрешенную усечением полосы в кодировщике.
Windows Vista и более поздние версии.
Стандартный, профессиональный, без потери.
Read/write.
MFPKEY_DYN_BANDTRUNC_BWFLOOR Указывает минимальную закодированную пропускную способность, разрешенную усечением полосы в кодировщике.
Windows Vista и более поздние версии.
Стандартный, профессиональный, без потери.
Read/write.
MFPKEY_DYN_BANDTRUNC_QCEIL Указывает качество, по которому разрешена минимальная закодированная пропускная способность.
Windows Vista и более поздние версии.
Стандартный, профессиональный, без потери.
Read/write.
MFPKEY_DYN_BANDTRUNC_QFLOOR Указывает качество, при котором разрешена максимальная закодированная пропускная способность.
Windows Vista и более поздние версии.
Стандартный, профессиональный, без потери.
Read/write.
MFPKEY_DYN_BANDTRUNCATION Указывает, выполняет ли кодировщик усечение полосы.
Windows Vista и более поздние версии.
Стандартный, профессиональный, без потери.
Read/write.
MFPKEY_DYN_SIMPLEMASK Указывает, использует ли кодировщик стиль вычисления маски, выполняемый кодировщиком звука Windows Media версии 7.
Windows Vista и более поздние версии.
Стандартный, профессиональный, без потери.
Read/write.
MFPKEY_DYN_STEREO_PREPROC Указывает, выполняет ли кодировщик обработку стерео изображение.
Windows Vista и более поздние версии.
Стандартный, профессиональный, без потери.
Read/write.
MFPKEY_DYN_VBR_BAVG Указывает окно буфера в миллисекундах для кодировщика, настроенного для использования кодирования VBR со средним контролем.
Windows Vista и более поздние версии.
Стандартный, профессиональный, без потери.
Read/write.
MFPKEY_DYN_VBR_RAVG Указывает среднюю скорость битов в битах в секунду для кодировщика, настроенного для использования кодирования VBR со средним контролем.
Windows Vista и более поздние версии.
Стандартный, профессиональный, без потери.
Read/write.
MFPKEY_ENCCOMPLEXITY Указывает сложность алгоритма кодирования.
Windows Vista и более поздние версии.
Стандартный, профессиональный, без потери.
Read/write.
MFPKEY_ENDOFPASS Указывает конец передачи кодировки.
Windows XP и более поздние версии.
Стандартный, профессиональный.
Доступный только на запись.
MFPKEY_ENHANCED_WMA Указывает, использует ли основной кодировщик функцию "Плюс".
Windows Vista и более поздние версии.
Professional.
Read/write.
MFPKEY_MAXDECLATENCYMS Указывает максимальную задержку декодера в миллисекундах.
Windows Vista и более поздние версии.
Стандартный, профессиональный, без потери.
Доступный только на запись.
MFPKEY_MAXENCLATENCYMS Указывает максимальную задержку для кодировщика в миллисекундах.
Windows Vista и более поздние версии.
Стандартный, профессиональный, без потери.
Доступный только на запись.
MFPKEY_MOST_RECENTLY_ENUMERATED_VBRQUALITY Указывает уровень качества VBR последнего перечисленного выходного типа.
Windows Vista и более поздние версии.
Стандартный, профессиональный, без потери.
Только чтение.
MFPKEY_PASSESRECOMMENDED Указывает максимальное количество проходов, поддерживаемых кодировщиком.
Windows XP и более поздние версии.
Стандартный, профессиональный, без потери.
Только чтение.
MFPKEY_PASSESUSED Указывает количество проходов, которые кодировщик будет использовать для кодирования содержимого.
Windows XP и более поздние версии.
Стандартный, профессиональный, без потери.
Read/write.
MFPKEY_PEAKCONSTRAINED Указывает, ограничен ли кодировщик пиковой скоростью.
Windows Vista и более поздние версии.
Стандартный, профессиональный.
Read/write.
MFPKEY_PREFERRED_FRAMESIZE Указывает предпочтительное количество выборок на кадр.
Windows Vista и более поздние версии.
Professional.
Read/write.
MFPKEY_REQUESTING_A_FRAMESIZE Указывает, должен ли кодировщик использовать предпочтительный размер кадра.
Windows Vista и более поздние версии.
Professional.
Read/write.
MFPKEY_RMAX Указывает пиковую скорость передачи битов в битах в секунду, используемую для кодирования ограниченной переменной 2-проходной переменной (VBR).
Windows XP и более поздние версии.
Стандартный, профессиональный.
Read/write.
MFPKEY_STAT_BAVG Задает среднее окно буфера в миллисекундах закодированного потока.
Windows XP и более поздние версии.
Стандартный, профессиональный, без потери.
Только чтение.
MFPKEY_STAT_BMAX Задает максимальное окно буфера в миллисекундах закодированного потока.
Windows XP и более поздние версии.
Стандартный, профессиональный, без потери.
Только чтение.
MFPKEY_STAT_RAVG Задает среднюю скорость битов в битах в секунду в кодированном потоке.
Windows XP и более поздние версии.
Стандартный, профессиональный, без потери.
Только чтение.
MFPKEY_STAT_RMAX Указывает максимальную скорость битов в битах в секунду в кодированном потоке.
Windows XP и более поздние версии.
Стандартный, профессиональный, без потери.
Только чтение.
MFPKEY_VBRENABLED Указывает, использует ли кодировщик кодировку VBR.
Windows XP и более поздние версии.
Стандартный, профессиональный, без потери.
Read/write.
MFPKEY_WMA_ELEMENTARY_STREAM Это свойство в настоящее время не используется кодеком Windows Media Audio.
MFPKEY_WMADRC_AVGREF Указывает средний уровень громкости звукового содержимого.
Windows XP и более поздние версии.
Стандартный, профессиональный, без потери.
Только чтение.
MFPKEY_WMADRC_PEAKREF Указывает самый высокий уровень громкости, происходящий в звуковом содержимом.
Windows XP и более поздние версии.
Стандартный, профессиональный, без потери.
Только чтение.
MFPKEY_WMAENC_AVGBYTESPERSEC Задает средние байты в секунду для аудио в кодировке VBR.
Windows XP и более поздние версии.
Стандартный, профессиональный, без потери.
Только чтение.
MFPKEY_WMAENC_BUFFERLESSCBR Указывает, должен ли кодировщик создавать 1 пакет WMA на кадр.
Windows Vista и более поздние версии.
Стандартный, профессиональный, без потери.
Read/write.
MFPKEY_WMAENC_GENERATE_DRC_PARAMS Указывает, должен ли кодировщик создавать параметры управления динамическим диапазоном.
Windows Vista и более поздние версии.
Стандартный, профессиональный, без потери.
Read/write.
MFPKEY_WMAENC_ORIGWAVEFORMAT Указывает структуру WAVEFORMATEX , описывающую входное звуковое содержимое.
Windows XP и более поздние версии.
Стандартный, профессиональный.
Read/write.
MFPKEY_WMAENC_RTSPDIF Указывает, должен ли кодировщик включить кодировку S/PDIF в режиме реального времени.
Windows Vista и более поздние версии.
Professional.
Read/write.

 

Требования

Требование Значение
клиент
Windows XP, Windows Vista или Windows 7
Заголовок
Wmcodecdsp.h
DLL-библиотеки
Wmadmoe.dll

См. также

Объекты Codec

Реализация codec