Обнаружение аудиовыхода + предложение для библиотеки синтеза речи

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

Хотя я использую C #, я не против сделать обнаружение с использованием C ++ и затем интегрировать его.

Итак, вопросы:

1) Как я могу обнаружить аудио выход?
2) Какая библиотека для синтеза свободной речи лучше всего подходит для Windows?

0

Решение

Через некоторое время, просматривая MSDN, я нашел решение.

Используя петлевую запись, вы можете прослушивать то, что выводится на устройство вывода звука.

http://msdn.microsoft.com/en-gb/library/windows/desktop/dd316551(v=vs.85).aspx

Эта ссылка также ссылается на пример того, как захватить поток:

http://msdn.microsoft.com/en-gb/library/windows/desktop/dd370800(v=vs.85).aspx

Здесь вы можете получить данные буфера, как показано в примере, вызвав:

pCaptureClient-> GetBuffer (…)

Все, что вам нужно сделать, это проверить значение этих байтов. Если все они равны 0, то играть нечего ..

Для синтеза речи я использовал класс SpeechSynthesizer .NET

http://msdn.microsoft.com/en-us/library/system.speech.synthesis.speechsynthesizer.aspx

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]