Python pycaw обнаруживает ошибку AttributeError при попытке использовать метод Activate для объекта AudioDevicePython

Программы на Python
Ответить
Anonymous
 Python pycaw обнаруживает ошибку AttributeError при попытке использовать метод Activate для объекта AudioDevice

Сообщение Anonymous »

Я пытаюсь установить громкость микрофона на 100 %, используя библиотеку pycaw в Python. Однако я сталкиваюсь с ошибкой AttributeError при попытке использовать метод Activate для объекта AudioDevice. Вот подробности:
Код:

Код: Выделить всё

import os
import time
from ctypes import cast, POINTER
from comtypes import CLSCTX_ALL
from pycaw.pycaw import AudioUtilities, IAudioEndpointVolume

def set_microphone_volume(volume_level):
devices = AudioUtilities.GetAllDevices()
print("Found devices:")
for device in devices:
print(f"Device name: {device.FriendlyName}")
if any(keyword in device.FriendlyName for keyword in ["Microphone", "Mikrofon", "Kopfhörermikrofon"]):
try:
interface = device.Activate(IAudioEndpointVolume._iid_, CLSCTX_ALL, None)
volume = interface.QueryInterface(IAudioEndpointVolume)
volume.SetMasterVolumeLevelScalar(volume_level / 100.0, None)
print(f"Volume for {device.FriendlyName} set to {volume_level}%")
except Exception as e:
print(f"Failed to set volume for {device.FriendlyName}: {e}")

while True:
set_microphone_volume(100)
time.sleep(5)
Ошибка:

Код: Выделить всё

Traceback (most recent call last):
File "C:\path\to\StaticMicVolume.py", line 43, in 
set_microphone_volume(100)
File "C:\path\to\StaticMicVolume.py", line 36, in set_microphone_volume
interface = device.Activate(IAudioEndpointVolume._iid_, CLSCTX_ALL, None)
AttributeError: 'AudioDevice' object has no attribute 'Activate'
Будем благодарны за любую помощь или предложения!


Подробнее здесь: https://stackoverflow.com/questions/792 ... e-activate
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»