Полный перенос сервиса на Python с сохранением API-эндпоинтов.
- FastAPI
- Uvicorn
- pycaw/comtypes (Windows Core Audio)
- python-vlc (воспроизведение аудио)
- httpx (скачивание MP3)
- Мониторинг громкости микрофона каждые 5 минут (автоподнятие до 100%)
- Очередь воспроизведения MP3 по URL с приоритетами
- Управление воспроизведением: queue/status/skip/stop/pause/resume/volume
- Mute/Unmute аудиосессий процессов
run.batrun.bat запускает сервер на http://localhost:30691.
Собранный AudioControllerPy.exe по умолчанию поднимается на http://localhost:30695.
Или вручную:
py -3 -m venv .venv
.venv\Scripts\activate
pip install -r requirements.txt
uvicorn main:app --host 0.0.0.0 --port 30691GET /POST /api/audioplayback/queueGET /api/audioplayback/statusPOST /api/audioplayback/skipPOST /api/audioplayback/stopPOST /api/audioplayback/pausePOST /api/audioplayback/resumeGET /api/audioplayback/queueGET /api/audioplayback/volumePOST /api/audioplayback/volume?volume=80GET /api/microphone/volumePOST /api/microphone/volume/maxPOST /api/microphone/volume/{volume}POST /api/soundbar/mutePOST /api/soundbar/unmuteGET /api/soundbar/bagcount
- Windows 10/11
- Установленный VLC media player (для
python-vlc) - Python 3.11+