Как проверить, воспроизводится ли какой-нибудь musi c на компьютере с помощью winapi? - PullRequest
0 голосов
/ 05 августа 2020

Я хотел бы знать, играет ли на этом компьютере какая-нибудь музыка c. Я думаю о musi c (конечно, я думаю о любых голосах, так что mov ie тоже в порядке), проигрываемом в моем браузере (например, youtube), таких приложениях, как vl c player, musi c, играемых с использованием кода и все другие способы воспроизведения музыки c.

Я знаю, что могу изменить громкость, так что, возможно, есть способ проверить музыку c?

1 Ответ

1 голос
/ 06 августа 2020

Я хотел бы знать, воспроизводится ли музыка c на этом компьютере.

Когда клиент инициализирует аудиопоток, он назначает аудиопоток аудиосеанс .

Таким образом, вы можете достичь этого с помощью аудиосеанса монитора.

Аудиосеанс содержит либо потоки рендеринга, либо потоки захвата, но не оба сразу. Поэтому необходимо различать guish направление потока .

Состояние активно, если в сеансе есть один или несколько запущенных потоков. Состояние меняется с активного на неактивное при остановке последнего запущенного потока в сеансе. Состояние сеанса меняется на истекшее, когда клиент уничтожает последний поток в сеансе, освобождая все ссылки на объект потока.

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

Если приложение хочет получать уведомления о создании новых сеансов, оно должно зарегистрировать свою реализацию IAudioSessionNotification в диспетчере сеансов.

Ниже приведен простой пример использования метода pull для перечисления всех доступных сеансов и проверки каждого состояния, чтобы определить, воспроизводит ли он звук или нет. Для начала вы можете обратиться к * Интерфейс IAudioSessionManager2 .

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