0 Members and 1 Guest are viewing this topic.
И еще ставит на паузу при простое, несмотря что выбрано ничего не делать.
[AutoPause]cbxPCLock=0cbPCLock=1cbxPCIdle=0cbPCIdle=1
Но не работает продолжение воспроизведения после разблокировки и возобновления активности.
Дополнительно не помешает добавить настройку времени бездействия. Например, если кто-то засыпает под музыку или текст, то 5 минут недостаточно.
Тут я пока хз, это системное.
Странно, у меня на Win10 работает. Иначе бы не выкладывал.
Версия 0.6:- в 0.5 не учитывались настройки простоя
У меня win11
Ждите, когда у меня будет время взгромоздить на своё старьё Windows 11...
Версия 0.7:- в 0.6 при выходе из режима ожидания трек перезапускался+ обработка запуска заставки
Версия 0.8:- в 0.7- не обновлялась локализация выпадающих списков при смене языка
but if you change language it wont change language of drop down menu until you close settings window.
Версия 0.8.2:- исправлено случайное падение при обработке заставки- исправлено поведение при включении нескольких опций, а также паузе вручную
Hello, "шапке" is the first post?, if i download from first post i still get 0.7 version.
При воспроизведении потока (интернет-радио) и блокировке экрана (Win + L) воспроизведение приостанавливается, но при разблокировке не возобновляется.
Особенность обработки потока плеером (останов вместо паузы), будет исправлено в ближайших обновлениях плеера (в релизе точно).
Или это не стабильная?!
Это альфа.
Предполагаю, что возможность ставить радио на паузу, появившаяся в звуковом движке, решила возникшую проблему.
В итоге, просьба: если сложно сделать кнопки, ведущие в какое-то из этих мест,то хотя бы повторите фразы из системы, а если несложно, то сделайте, пожалуйста,дорогой дед Мороз, новые кнопки в плагин, чтоб он стал круче.
Спасибо, КорнейСан! Буду ждать! Наверняка, не я один.
у меня, при простое, он ставит воспроизведение на паузу ровно через 5 минут, хотя в настройках перехода в спящий режим
Скринсейвер настраивали? Отключение монитора настраивали? Проверьте.
Доброго времени суток. Плагин хороший и нужный. Но у меня, при простое, он ставит воспроизведение на паузу ровно через 5 минут, хотя в настройках перехода в спящий режим стоит 60 минут (1 час). Насколько я понял из чтения темы, он берет значения именно из этих настроек (переход в спящий режим).
не через полчаса, а через 4-5 минут (откуда это время, почему именно оно?).
Обработка выключения монитора вовсе не указана в описании плагина
1 Какая операционка? В 10 винде есть несколько мест, в которых можно настроить отключение устройств.2 Возможно запущены какие-нибудь приблуды-драйвера, которые управляют железом.3 У всех плагин нормально плагинит, у вас нет, значит что?
Только что проверил
а проверь-ка плагин на другом таком же компе
принудительной установки времени[/b] остановки аудиопотока
Планировщик на выключение/остановку запускай, да и все. Планировщик-то встроенный у тебя пашет?
okbko, давайте по порядку
плагин останавливает аудиопоток ориентируясь на какие-то непонятные данные (конкретно у меня)
отсутствию активности пользователя, которые ... считаются плагином как простой
Вот не хватает таймера настройки этой неактивности - 5 минут это, или пол часа, или..
Вероятно, мне придётся собрать под Вас тестовую версию плагина, чтобы досконально разобраться в Вашем вопросе
Я думаю, что стоит сделать (если это возможно) принудительную остановку по заданному времени (возможность выбрать эту функцию как дополнительную опцию).
Вам привели такую функцию, уже встроенную в плеер. Зачем мне её повторять?
On Modern Standby systems on DC power, power requests are terminated after 5 minutes.
Вы просите добавит какой-то более усложнённый функционал плеера.
Некорректно работает плагин: у меня после галки "Простой ПК - пауза", АИМП делает паузу через 5 минут
У плагина свои настройкиПростой ПК - я конечно точно не знаю, но видимо, это и есть недвижимая мышь и клавиатура 5 минут, а не отключение монитораОбработка выключения монитора вовсе не указана в описании плагина
У меня нигде в операционке не стоит 5 минут.
Простой ПК не настраивается в ОС
стоит в настройках заставка через 25 минут, но ничего не происходит. Комп всю ночь проработал и не выключился.
После паузы должно начаться бездействие системы, которое должно кончится сном.
Дело не во мне. Все настройки должны быть проще.
как открывать настройки операционной системы, связанные с работой плагина
If the machine has entered power saving mode or system lock state, an ERROR_OPERATION_IN_PROGRESS exception occurs.
A screensaver will not automatically start after a period of user inactivity.
SetThreadExecutionState(EX_STATE.ES_CONTINUOUS Or EX_STATE.ES_SYSTEM_REQUIRED Or EX_STATE.ES_DISPLAY_REQUIRED)
Retrieves a BOOL indicating whether an application can reset the screensaver's timer by calling the SendInput function to simulate keyboard or mouse input.
Могу накинуть сюда или через репозиторий azure или gitlab латышский и испанкйи перевод в самом крайнем случае через сервер как лучше? В гитхабе и за принципа не хочу регится с телефоном.
Что именно нужно открыть?
Время блокировки ПК, время простоя.
В Win10/11: ShellExecute в качестве имени файла - ms-settings:powersleep
ms-settings:powersleep
Через GetSystemMetrics. Погляди на SPI_SETPOWEROFFTIMEOUT ну и прочие TIMEOUT-ы
using System; // Подключение пространства имен System, содержащего основные типы и функциональность языка C#using System.Runtime.InteropServices; // Подключение пространства имен для работы с межпроцессным взаимодействиемclass Program{ // Будем использовать функцию SystemParametersInfo для получения информации о времени до включения заставки [DllImport("user32.dll", SetLastError = true)] // Атрибут, указывающий что метод вызывает функцию из user32.dll static extern bool SystemParametersInfo(uint uiAction, uint uiParam, ref uint pvParam, uint fWinIni); // Объявление метода для доступа к системным параметрам const uint SPI_GETSCREENSAVETIMEOUT = 14; // Константа для получения времени до включения заставки static void Main() // Основной метод программы { uint screenSaverTime = 0; // Переменная для хранения времени до включения заставки if (SystemParametersInfo(SPI_GETSCREENSAVETIMEOUT, 0, ref screenSaverTime, 0)) // Вызов функции для получения времени до включения заставки { Console.WriteLine("Время до включения заставки (в секундах): " + screenSaverTime); } else { Console.WriteLine("Не удалось получить время до включения заставки."); } }}
По идее, заставка - это "реакция" на бездействие. Тут не хватает знаний, что "в голове" у ПК, когда срабатывает такое "бездействие" (заставка) и внутренний таймер по параметрам электропитания, а плагин (плеер) читает параметры системы. Тем более, что этих "статусов" возможности сна и гибернации несколько в различных вариациях для разного железа, а также система может запрещать усыплять ПК при проверке параметров. Также драйвера и программы вносят своё участие в этот процесс. Вот это всё усугубляет получить желаемое простыми способами.Плеер не отключает заставку, а значит система в условно активном режиме, т.е. период бездействия по электропитанию не начинается.Даже в документации указывается, что эти режимы с собой плохо уживаются. https://learn.microsoft.com/en-us/windows/win32/api/winuser/nf-winuser-systemparametersinfoahttps://learn.microsoft.com/en-us/windows-hardware/drivers/ddi/wdm/ne-wdm-_power_request_typeВот примеры в одну сторону, но найти пример в обратную сторону сложней. Только упоминания, что в программах может быть код прерывания таймеров ожидания и заставки, либо что заставка может быть прервана имитацией действий пользователя.https://learn.microsoft.com/en-us/answers/questions/784797/how-to-disable-screensaver-and-screen-inactivity-pПо первой ссылке.Так, что, по идее, можно реализовать в плагине доп. условия. Но можно наткнуться на ряд "подводных камней".Готовый вариант реализации не видел, но вот пара ссылок.https://stackoverflow.com/questions/57888044/how-to-put-a-win10-pc-into-standby-mode-from-delphihttps://www.tek-tips.com/faqs.cfm?fid=6881В принципе, автор плеера может обсудить код с автором плагина в личной переписке, если посчитают нужным.Думаю, можно начать без комбинирования заставки и режима бездействия.1. Добавить опции действий с ПК. Выключить, усыпить и т.п.2. Добавить таймер задержки после простоя ПК. Можно даже двухэтапный. Сразу пауза/стоп, позже заставка/действие с состоянием ПК.3. Опция прерывания заставки через имитацию действий пользователя. Словно пользователь сам поставил на паузу/стоп.P.S. По идее, в стандартном плагине достаточно было бы добавить функции проверки статуса ПК из этого плагина. Добавить описание системного бездействия ПК и задержку срабатывания действия. Остальные действия уже реализованы. Остаётся только загвоздка узнать будет ли адекватно работать система по таймерам, если плеер будет запрашивать их состояние и не придётся ли "сбрасывать" некоторые "состояния" смежных параметров.Опять куча рассуждений, теорий. Может быть кто-то найдёт пользу, а может быть чушь получилась.
1) подписываемся на события - SystemEvents.SessionSwitch += SystemEvents_SessionSwitch;2) сам метод private static async void SystemEvents_SessionSwitch(object sender, SessionSwitchEventArgs e)3) и в нём уже пишем условия SessionSwitchReason.SessionLock, SessionSwitchReason.SessionUnlock, и так далее