# Black Screen Dim Маленькая утилита для Windows: при запуске гасит экран до чёрного (яркость → 0), показывает чёрный безрамочный полноэкран, скрывает курсор. По `ESC` — выход, яркость и курсор возвращаются. ## Запуск из исходников (Windows) ```bat python -m venv venv venv\Scripts\activate pip install -r requirements.txt python black_screen_dim.py ``` ## Сборка в .exe ```bat pip install pyinstaller pyinstaller "Black Screen Dim.spec" ``` Готовый exe — в `dist\Black Screen Dim\`. ## Зависимости - Яркость — **гибрид**: сначала быстрый нативный DDC/CI (`dxva2.dll`, суб-миллисекунды), при отсутствии DDC/CI на мониторе (например, встроенный экран ноутбука) — откат на `screen-brightness-control` (WMI) для этого монитора. - чёрная заливка экрана — напрямую через Win32 API (ctypes, входит в стандартную библиотеку), pygame больше не нужен - лог пишется в `%TEMP%\black_screen_dim.log` > Управление яркостью работает только на Windows. На других ОС приложение > просто покажет чёрный экран без изменения яркости. > При нескольких мониторах чёрный экран накрывает **весь виртуальный рабочий стол** > (все мониторы сразу, включая те, что слева/сверху от основного), а яркость > гасится и восстанавливается **на каждом** мониторе по отдельности. ## Откат на WMI-только версию Если гибридная яркость работает некорректно, есть два варианта вернуться к проверенной версии (только WMI): - **Быстрый (на ноуте):** переименуй `black_screen_dim.py.bak` обратно в `black_screen_dim.py` и пересобери exe. - **Через git:** `git -C checkout v1-wmi-only -- black_screen_dim.py` (тег `v1-wmi-only` указывает на последний стабильный коммит до гибрида).