Версия для печати
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум на Исходниках.RU > Программирование звука > Как получить уровень звука с микрофона? |
Автор: tsvigo 23.08.14, 19:12 |
Как получить уровень звука с микрофона? |
Автор: Prince 24.08.14, 05:41 |
Записать звук и посчитать уровень. |
Автор: tsvigo 24.08.14, 11:12 |
А подробней знаете? |
Автор: Prince 24.08.14, 13:05 |
Знаю. Достаточное количество народа знает, но ваш вопрос не подразумевает подробностей, он общего плана. Спросите как-то иначе, опишите задачу подробно(не забывая про 7-й пункт правил раздела), напишите, что вызывает затруднения, какого рода помощь вам нужна(теория, информация, советы, готовый кусок кода). Пока вообще не от чего отталкиваться. |
Автор: tsvigo 24.08.14, 14:01 |
Платформа конечно Windows, язык желательно C++. Идея в том чтобы получать уровень звука с микрофона и если больше определённого сразу приглушать весь уровень громкости в системе. То есть вообще не давать компьютеру издавать звуки больше определённой громкости. Помощь мне нужна в готовом куске кода. |
Автор: Prince 24.08.14, 19:44 |
Цитата Помощь мне нужна в готовом куске кода. C++ Я пас. Цитата Идея в том чтобы получать уровень звука с микрофона и если больше определённого сразу приглушать весь уровень громкости в системе. То есть вообще не давать компьютеру издавать звуки больше определённой громкости. Для того, чтобы не давать компьютеру издавать звуки больше определенной громкости, необходимо мониторить уровень на выходе. Чтобы мониторить уровень на выходе, необходимо записывать сигнал с выхода. Одновременно с мониторингом выхода необходимо мониторить(записывать) ещё и сигнал микрофона, который служит триггером включения/выключения limiter-а по выходу. Однако раздельная(независимая) запись с нескольких входов в обычных звуковухах не предусмотрена. В настройках микшеров Realtek есть настройка limited output и в принципе до неё можно попробовать добраться програмно, но никаких регулировок она не имеет, работает as is, что может оказаться препятствием для практического применения. Или же я не понял идею. Если limiter не нужен, а достаточно двинуть ползунок в микшере на некоторую величину, тогда как я и говорил, задача сводится к записи сигнала с микрофонного входа, вычислению уровня и принятию решения(выставить регулятор громкости в заданное положение). Ещё один подводный камень: другая программа(например, скайп) может попытаться "елозить" настройками микшера одновременно с вашей программой; может быть нехорошо. Какова цель, практическая, вашей идеи? |
Автор: MIF 24.08.14, 19:47 |
А микрофон то причем? |
Автор: raxp 25.08.14, 10:32 |
...такое нано? |
Автор: tsvigo 07.09.14, 13:12 |
Ну скажем не знаю как у Вас а у меня бывает что уровни громкости в разных источниках разные - файлы которые проигрываются напоминалкой звуковые, кино, в веб-браузере не знаю... любые. И бывает что компьютер начинает орать. Так вот чтоб такого не было. Добавлено Я попробовал так: испытывал на микрофоне в веб-камере. Результаты такие: вроде бы видно что программа работает - уровни бегают, но эффекта физического (реального) я не почувствовал. А проверял на микрофоне веб-камеры, так как чего-то не нашёл обычный микрофон. А потом операционная система у меня заплохела. Я и всё стёр при её переустановке. Может ещё раз пошлёте а я уж сохраню на Yandex.Диск или на Google.Диск? |
Автор: Prince 07.09.14, 15:08 |
Цитата Ну скажем не знаю как у Вас а у меня бывает что уровни громкости в разных источниках разные - файлы которые проигрываются напоминалкой звуковые, кино, в веб-браузере не знаю... любые. И бывает что компьютер начинает орать. Так вот чтоб такого не было. Limited output в настройках звуковой карты, если realtek. "Орать" комп будет в любом случае, в том смысле, что внезапное "громко" на фоне "тихо" субъективно всегда воспринимается как "ор". Но лимитер объективно ограничит максимальный уровень на выходе, как вы и хотите. Если вы имели в виду поставить микрофон перед колонками и записывать с него звук(чтобы узнать, насколько громко "орёт компьютер") - это лишнее. Достаточно выбрать соответствующий вход(stereo out, stereo mix, what i hear и т.п.)в настройках звуковой карты и писать звук с этого входа. |
Автор: raxp 08.09.14, 06:24 |
Цитата а следует проверять для условий о которых вы оговорили, на кинофильмах, браузере и прочем.Я попробовал так http://rghost.ru/57905002 Цитата все питомцев разводите А потом операционная система у меня заплохела |