Существует ли простой фильтр DirectShow, который может смешивать аудио одного и того же формата? - PullRequest
2 голосов
/ 13 ноября 2011

У меня есть приложение DirectShow, написанное на Delphi 6 с использованием библиотеки компонентов DSPACK. Я хочу иметь возможность смешивать аудио, поступающее с выходных контактов от нескольких фильтров захвата, которые настроены на один и тот же формат мультимедиа. Существует ли фильтр с открытым исходным кодом или «sdk sample», который это делает?

Я знаю, что интеллектуальное микширование - это большое дело, и мне, скорее всего, придется купить коммерческую библиотеку, чтобы сделать это. Но все, что мне нужно, это фильтр DirectShow, который может принимать волновой аудиовход с нескольких выходных контактов и напрямую добавлять полученные сэмплы. Я знаю, что существуют фильтры Tee для разделения одного потока на несколько потоков (один-ко-многим), но мне нужно что-то, что делает противоположное (многие-к-одному), предпочтительно с проверкой формата при каждой попытке входного соединения, чтобы любой Попытка подключить выходной контакт с другим форматом мультимедиа, чем уже добавленные, не удалась. Там что-нибудь есть?

1 Ответ

2 голосов
/ 14 ноября 2011

Не уверен относительно чего-либо доступного из коробки, однако это определенно будет сторонний компонент.

Сложность создания этого пользовательского фильтра не очень высока (это не ракетостроение с точки зрения создания такого компонента самостоятельно для конкретных нужд). В основном вам необходимо преобразовать все входные аудиосигналы в один и тот же формат PCM, сопоставить временные метки, добавить данные и затем доставить через выходной контакт.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...