Поделиться через


Пример WavSource

Показано, как создать пользовательский источник мультимедиа в Microsoft Media Foundation. В примере реализуется источник мультимедиа, который анализирует звуковые файлы WAV.

Этот пример является относительно простым примером источника мультимедиа:

  • Существует только один поток, поэтому нет кода для реализации выбора потока.
  • Источник мультимедиа не реализует управление скоростью (то есть быстрое или обратное воспроизведение).
  • Все исходные и потоковые методы реализуются как синхронные методы.
  • Так как часть данных WAV-файла является одним блоком несжатого звука PCM, источнику мультимедиа не нужно считывать заголовки пакетов или иным образом анализировать поток во время воспроизведения, кроме чтения начального заголовка WAVEFORMAT .

Более сложный пример источника мультимедиа см. в разделе Пример MPEG1Source.

Демонстрация API

В этом примере показаны следующие интерфейсы Media Foundation:

Использование

Пример WavSource создает библиотеку DLL, которая является COM-сервером для обработчика байтового потока источника мультимедиа и источника мультимедиа. Перед использованием источника мультимедиа необходимо зарегистрировать библиотеку DLL.

Чтобы использовать источник мультимедиа, можно запустить BasicPlayback. Сопоставитель источника автоматически загрузит источник мультимедиа, если выбрать WAV-файл для воспроизведения. (При возникновении ошибки убедитесь, что вы успешно зарегистрировали библиотеку DLL WavSource.)

Вы также можете использовать средство TopoEdit для создания топологии воспроизведения, содержащей источник мультимедиа. Дополнительные сведения о TopoEdit см. в разделе TopoEdit.

Требования

Продукт Version
Windows SDK Windows 7

 

Скачивание примера

Этот пример доступен в репозитории классических примеров Windows на GitHub.

Примеры пакетов SDK Media Foundation

Источники мультимедиа

Пример MPEG1Source

Обработчики схем и обработчики Byte-Stream

Создание пользовательского источника мультимедиа