Прочитать процент громкости ПК?
есть ли способ прочитать текущую громкость ПК? Это будет частью проекта, который я имею в виду, который по сути считывает текущее значение громкости ПК и присваивает ему значение RGB (зеленый=>30, желтый=<30>60, красный=<60) и зажигает светодиод RGB соответственно.
@user3451403, 👍2
Обсуждение2 ответа
Лучший ответ:
Никакое аппаратное устройство, будь то Arduino или что-то другое, не может запросить подобную информацию у компьютера.
HID — это протокол, который (при использовании в качестве клавиатуры) позволяет вам отправлять нажатия клавиш, включая «медиа-клавиши», которые сообщают компьютеру об изменении громкости (помимо прочего). Не предусмотрено никаких средств, кроме трех светодиодов состояния, для получения каких-либо данных с компьютера.
Вам придется написать программное обеспечение для вашего компьютера, чтобы запрашивать эту информацию, используя любой API, доступный для вашей операционной системы, и передавать эту информацию через любой выбранный вами канал связи на Arduino (например, через последовательный порт).
Некоторые указания:
- C# получить уровень/процент основной громкости
- Основной том Windows 7
- Arduino: отправка и получение многозначных целых чисел
Есть внешние устройства, которые показывают громкость, но для этого нужен драйвер. Я не знаю, есть ли драйвер с открытым исходным кодом, который можно адаптировать для отправки громкости через последовательный порт в Arduino.
Windows PowerShell имеет возможность получить объем и передать его на последовательный порт. Вы можете делать это несколько раз в секунду. В Linux это может быть даже проще, скрипт bash с gawk с "amixer sget Master".
Еще одна проблема — выбрать правильный последовательный порт для Arduino. Я не знаю, как автоматически выбрать правильный порт.
- Как отправить команду AT на sim800l с помощью SoftwareSerial
- Как отправлять и получать беззнаковые целые (unsigned int) от одного arduino к другому arduino
- Проблема последовательной связи с общей землей SIM800L
- Связь Arduino UNO/Nano с модулем SP1ML-868
- Использую nRF2401, и в передатчике и приемнике Rx не мигает, а Tx мигает; почему Rx не мигает?
- Nano отправить 4 значения банка в Uno пожалуйста помогите с кодом
- преобразование последовательного сообщения, разделенного запятыми, в 7 переменных без знака Long
- avrdude ser_open() can't set com-state
Пожалуйста, опишите немного лучше, что вы хотите прочитать. ПК = ПК = Персональный компьютер (возможно, с Windows)? Вы хотите прочитать, установлен ли ползунок громкости, например, на 30%, или вы хотите "прочитать", какой уровень шума исходит из динамиков?, @Edgar
Я голосую за закрытие этого вопроса как не соответствующего теме, поскольку возможности операционных систем ПК здесь не по теме, и вдвойне, когда рассматриваемая операционная система не была идентифицирована. Само собой разумеется, если вы каким-то образом получите число, вы сможете передать его в свою встроенную систему. И нет, Ник Алексеев, это также не вопрос Arduino - это вопрос операционной системы ПК, и в настоящее время слишком широкий даже для сайта о них. Политика SE запрещает перенос вопросов, на которые нет ответа, и требует, чтобы они были закрыты в источнике., @Chris Stratton
Вы угадали, система — Windows, и я хочу прочитать процент, который Windows имеет в диспетчере громкости. Я знаю, что есть много библиотек HID, которые могут увеличивать или уменьшать громкость, но я не видел ни одной, которую можно было бы использовать для извлечения значения. @chris Stratton https://www.reddit.com/r/ProgrammerHumor/comments/2zp22c/how_im_sure_most_firstposters_on_stackoverflow/, @user3451403
Нет, я указал, что операционная система не указана. И не имеет значения здесь. Как получить информацию о настройках для операционных систем ПК, независимо от того, определены они или нет, не является разрешенной темой на этом сайте, точка. Сайты SE не являются традиционными форумами для обсуждения, они представляют собой *намеренно узкий* формат, строго разделенный темами, которые не могут пересекаться., @Chris Stratton
Ну разве ты не идеальный образец сообщества SE и репутации?, @user3451403
Похоже, SE не подходит для ваших нужд. И действительно, есть больше, чем *не* подходит для этой системы, чем очень узкий набор вещей, которые подходят. Но это то, о чем *это*. Это не значит, что я согласен с этим, но это то, что есть. Есть целый остаток, включающий просто... *каждый не-SE сайт в глобальном Интернете*, чтобы удовлетворить другие потребности и подходы., @Chris Stratton
Самый простой способ — написать программу, которая запускается на ПК и отправляет текущий уровень громкости и любые изменения на Arduino через последовательный порт. Изучите, как связать системный уровень громкости на ПК с выбранным вами языком программирования (например, python)., @chrisl
@ChrisStratton Этот вопрос идеально по теме. Он может быть не совсем удачно сформулирован, но по сути вопрос "Можно ли запрограммировать Arduino на выполнение X", где ответ "Нет, нельзя, но есть другие пути, которые вы могли бы исследовать". Вопрос не в том, "Как мне запрограммировать ПК на выполнение X", что *было бы* не по теме., @Majenko
@Majenko - извините, но вы совершенно не правы. Прочитайте вопрос еще раз "есть ли способ прочитать текущий объем ПК?" Это не имеет никакого отношения к Arduino. Если бы автор мог это сделать, то отправка результата на Arduino могла бы быть по теме (пусть и совершенно тривиальной), но это не тот вопрос, который был задан. Вместо этого был задан вопрос о неопознанной операционной системе ПК., @Chris Stratton
@ChrisStratton Что угодно. Если я так неправильно понял вопрос, как мой ответ принимается как правильный? Если бы вы обратили внимание на вопросы, которые здесь задают, вы бы знали, что люди часто спрашивают об Arduino, запрашивающем информацию с хост-компьютера таким образом. Вам нужно научиться читать между строк с пользователями Arduino., @Majenko
Этот вопрос получил ряд заслуженных голосов от людей, которые действительно понимают правила этого сайта. Их не следовало бы стирать., @Chris Stratton
@ChrisStratton: когда парень с самым высоким рейтингом на сайте (в 2 раза выше) поправляет вас по поводу практики сайта, подумайте о том, что он может знать о сайте немного больше, чем вы..., @dandavis