В следующем коде Python наличие или отсутствие строки из pygrabber.dshow_graph import FilterGraph определяет возникновение ошибки. Если я его не включаю, ошибка не появляется, но если я его включаю, возникает ошибка «Ошибка поиска устройства: поток настроен для графического интерфейса Windows, но обратные вызовы не работают».. Кажется, что pygrabber и bleak конфликтуют и вызывают ошибку. Мне нужны обе библиотеки. Что мне делать?
# -*- coding: utf-8 -*-
import multiprocessing
from multiprocessing import Process, Queue, Event
import asyncio
from bleak import BleakScanner
import time
import threading
#This is the cause of the error.
from pygrabber.dshow_graph import FilterGraph
async def bluetooth_receiver_start():
print("bluetooth_receiver_start")
try:
devices = await BleakScanner.discover()
print("scnanned devices:")
for device in devices:
print(f" - {device.name} ({device.address})")
except Exception as e:
print(f"device search error: {e}")
return
def bluetooth_process():
print("bluetooth_process started")
asyncio.run(bluetooth_receiver_start())
print("bluetooth_process finished")
if __name__ == '__main__':
process_bluetooth = multiprocessing.Process(target=bluetooth_process)
process_bluetooth.start()
try:
devices = FilterGraph().get_input_devices()
for device_index, device_name in enumerate(devices):
print(device_name)
except:
pass
Подробнее здесь: https://stackoverflow.com/questions/793 ... ed-for-win
При совместном использовании pygrabber и bleak появляется ошибка «Поток настроен для графического интерфейса Windows, но ⇐ Python
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение