Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.135.190.135] |
|
Сообщ.
#1
,
|
|
|
Здравствуйте, уважаемые форумчане.
Посоветуйте - какой программой можно заставить среагировать - на звучание на компьютере определенной мелодии длинной 2 секунды (не голоса а именно мелодии) ? Это файл C:\Windows\Media\tada.wav (при условии конечно, что одновременно нет звуков больше ни от каких других процессов) Вот нашел такую программу, которая строит изображение - звукового спектра tada.wav Вопрос в том, как сопоставить этот "эталонный" спектр" - общему потоку звукового звучания ? (Чтобы вовремя среагировать на него, когда в ОС появится звук с похожим спектром.) https://dropmefiles.com/ybhlw Прикреплённый файл______.rar (4,55 Кбайт, скачиваний: 806) Или может быть есть какие-то программы ? Добавлено Ну вот например эта программа - реагирует на два быстрых хлопка, рядом с микрофоном. Она быстро распознает спектр с двумя резкими звуковыми возмущениями и реагирует на них. https://dropmefiles.com/UUvw3 Можно скриптом реализовать что-то похожее, только c реакцией на мелодию tada.wav ? |
Сообщ.
#2
,
|
|
|
Если сигнал известен, можно обнаружить его согласованным фильтром, в данном случае, выполнить свертку сигнала на выхода карты с сигналом из файла, развернутым наоборот. Но много вычислений получится, если файл большой. Можно взять небольшой характерый отрывок и искать его в звуковом потоке. Захват можно осуществить при помощи basswasapi.dll. Она умеет работать с loopback, из коробки.
|
Сообщ.
#3
,
|
|
|
Цитата Prince @ много вычислений получится, если файл большой. Нет файл небольшой - всего 3 секунды. Цитата Prince @ Захват можно осуществить при помощи basswasapi.dll. Она умеет работать с loopback, из коробки. А как это скриптом реализовать ? |
Сообщ.
#4
,
|
|
|
Здравствуйте, уважаемые форумчане.
Посоветуйте - какой программой можно заставить среагировать - на звучание на компьютере определенной мелодии длинной 2 секунды (не голоса а именно мелодии) ? Это файл C:\Windows\Media\tada.wav (при условии конечно, что одновременно нет звуков больше ни от каких других процессов) Вот нашел такую программу, которая строит изображение - звукового спектра tada.wav Вопрос в том, как сопоставить этот "эталонный" спектр" - общему потоку звукового звучания ? (Чтобы вовремя среагировать на него, когда в ОС появится звук с похожим спектром.) |
Сообщ.
#5
,
|
|
|
Не прошло и года.
Если это именно воспроизведение этого файла, то, может быть, достаточно отследить его открытие? Чревато ошибкой, если, например, открыть файл в каком-нибудь редакторе, но не воспроизводить, или антивирусник решит проверить файл. Или звук этот, но прийти может из другого источника? Тогда вешать на Output звучки анализатор. Но это тоже не 100% надёжно - пользователь может поменять настройки звучки так, что воспроизводимые звуки не будут попадать на запись, хотя и будут звучать. |
Сообщ.
#6
,
|
|
|
Цитата Mikle @ Или звук этот, но прийти может из другого источника? Тогда вешать на Output звучки анализатор. Но это тоже не 100% надёжно - пользователь может поменять настройки звучки так, что воспроизводимые звуки не будут попадать на запись, хотя и будут звучать Да этот звук проигрывается не из файла, а идет из другого источника - через микрофон. Вы пишите, что "Тогда вешать на Output звучки анализатор. Но это тоже не 100% надёжно" Ничего страшного, что ненадежно - лишь бы было хоть что-нибудь. (Никто вообще ничего не ответил - за несколько лет.) Как это сделать - этот "Output анализатор"? Как скриптом среагировать на данный звук tada.wav ? |
Сообщ.
#7
,
|
|
|
Этот самый звук "тада" - просто аккорд до мажор, можно посмотреть частоты его составляющих - да+ми+соль - и ждать появления этих частот.
Чтобы не получать ложное срабатывание при прослушивании музыки (до мажор - очень распространённый аккорд) засекать характерные длительности (короткий + длинный). |
Сообщ.
#8
,
|
|
|
Здравствуйте, уважаемые форумчане.
Посоветуйте - какой программой или скриптом можно заставить среагировать - на звучание на компьютере определенной мелодии длинной 2 секунды (не голоса а именно мелодии) ? Это файл C:\Windows\Media\tada.wav (при условии конечно, что одновременно нет звуков больше ни от каких других процессов) Вот нашел такую программу, которая строит изображение - звукового спектра tada.wav Вопрос в том, как сопоставить этот "эталонный" спектр" - общему потоку звукового звучания ? (Чтобы вовремя среагировать на него, когда в ОС появится звук с похожим спектром.) |
Сообщ.
#9
,
|
|
|
Программно открыть микшер, постоянно вести запись, анализировать чем-нить типа быстрым преобразованием фурье получив массив частот и амплитуд, сравнить с эталоном.
|
Сообщ.
#10
,
|
|
|
Gonarh здравствуйте.
Помогите написать скрипт который это делает. Я заплачу деньги. |
Сообщ.
#11
,
|
|
|
Не слышал, чтобы такое скриптами делалось. Опиши задачу. На что нужно среагировать и в чем реакция должна выражаться.
|
Сообщ.
#12
,
|
|
|
Prince задача такая.
Есть поток звука, который может идти от микрофона или от какой-то программы. Нужно среагировать на определенный конкретный звук, который может встретится в этом потоке (при условии что нет каких-то посторонних шумов или других звуков). То есть должна быть реакция на спектр конкретного звука - в звуковом потоке. В качестве примера рассматривается звук tada.wav (не файл tada.wav, а спектр звука из этого файла) А реакция на этот звук - это дело десятое. Например - это появление сообщения "Hello world" Самое главное - чтобы скрипт среагировал на конкретный звуковой спектр (длиной например - три секунды). |
Сообщ.
#13
,
|
|
|
Цитата ttt480 @ при условии что нет каких-то посторонних шумов или других звуков Это сильно облегчает задачу. Цитата ttt480 @ То есть должна быть реакция на спектр конкретного звука - в звуковом потоке. В качестве примера рассматривается звук tada.wav (не файл tada.wav, а спектр звука из этого файла) Этот пример конкретизирует задачу, возможно, в неверном направлении. Звук "tada.wav" действительно можно детектировать по спектру, это конкретный музыкальный сигнал. А вот, если нужно среагировать, например, на фразу "Алиса, выключи компьютер", то спектр тут не поможет. Так что нужно описать задачу ещё конкретнее. |
Сообщ.
#14
,
|
|
|
Mikle если речь идет о том, чтобы была реакция на "Алиса, выключи компьютер" - это не то.
Мне нужна не речь, а конкретный точный звуковой спектр. tada.wav - воспроизводится всегда с одинаковым спектром, сколько раз его не запусти. Допустим звуковой файл состоит из трех последовательно соединенных элементов: "Алиса, выключи компьютер" + "tada.wav" + "Алиса, выключи компьютер" Когда скрипт посередине проигрывания файла услышит нужный звуковой спектр - он среагирует. Звук из tada.wav - длится от силы 2 секунды. |
Сообщ.
#15
,
|
|
|
Первый аккорд гимна России - тоже до мажор, имеет примерно ту же длительность и диапазон. Тебя устроит, что скрипт будет реагировать заодно на гимн России? Понятно, что точного соответствия звуков нет, но, если написано:
Цитата ttt480 @ может идти от микрофона или от какой-то программы Значит так и предполагается, что не предвидится точного соответствия, особенно в случае прохода звука через микрофон. |
Сообщ.
#16
,
|
|
|
Mikleс микрофоном - это я наверное погорячился.
Скорее речь идет о какой либо программе. Если микшер громкости на компьютере открыть, то можно увидеть что от каких-то приложений исходит звук. Насчет гимна, в принципе - похожий звук. Навряд ли от приложения будет исходить звук гимна. Но если даже в приложении chrome.exe заиграет гимн - и скрипт среагирует - это будет нормально потому что звук действительно похож. Тут вопрос о том, что нужно как-то записывать спектр этого короткого звукового сигнала - чтобы потом среагировать на него. |
Сообщ.
#17
,
|
|
|
Вот спектр сигнала "тада":
При воспроизведении сигнал может пройти регулятор громкости, это повлияет на уровень кривой на графике. Так же возможно действие эквалайзера, тогда график будет в разных местах плавно изогнут вверх или вниз. Чтобы не зависеть от этого, я бы действовал так: Взял в средней области несколько пиков (отмечено зелёным и пронумеровано внизу). Между пиками отметил несколько характерных точек, можно просто взять середины промежутков (отмечено синим). Сделал бы резонансные фильтры по количеству отмеченных точек. Прогонял бы сигнал через фильтры и сравнивал уровни сигналов с усреднённым уровнем двух соседей, например, уровень сигнала между точками 2 и 3 должен быть на 20-30 Дб меньше полусуммы уровней 2 и 3. Такое измерение позволит обойти влияние эквалайзера. Если все фильтры показывают прохождение две секунды - считать, что сигнал детектирован. |
Сообщ.
#18
,
|
|
|
Mikleпонятно.
Сделайте мне этот скрипт ? Я заплачу деньги. |
Сообщ.
#19
,
|
|
|
Попробую на досуге что-нить придумать на эту тему, но это будет не скоро.
И да, никого не смущает слово скрипт? |
Сообщ.
#20
,
|
|
|
Цитата Prince @ никого не смущает слово скрипт? Да, слово неподходящее. Цитата ttt480 @ Сделайте мне этот скрипт ? Я заплачу деньги. Мне некогда. По деталям реализации могу подсказать, в том числе если Prince будет делать. |
Сообщ.
#21
,
|
|
|
Prince, Здравствуйте.
Вы уже сделали что-нибудь ? |
Сообщ.
#22
,
|
|
|
Тут через нейронные сети нужно. Нужен датасет ложных звуков что-бы на них не реагировал.
|
Сообщ.
#23
,
|
|
|
Помогите.
|
Сообщ.
#24
,
|
|
|
Здравствуйте, уважаемые форумчане.
Посоветуйте - какой программой или скриптом можно заставить среагировать - на звучание на компьютере определенной мелодии длинной 2 секунды (не голоса а именно мелодии) ? Это файл C:\Windows\Media\tada.wav (при условии конечно, что одновременно нет звуков больше ни от каких других процессов) Вот нашел такую программу, которая строит изображение - звукового спектра tada.wav Вопрос в том, как сопоставить этот "эталонный" спектр" - общему потоку звукового звучания ? (Чтобы вовремя среагировать на него, когда в ОС появится звук с похожим спектром.) |
Сообщ.
#25
,
|
|
|
Здравствуйте, уважаемые форумчане.
Посоветуйте - какой программой или скриптом можно заставить среагировать - на звучание на компьютере определенной мелодии длинной 2 секунды (не голоса а именно мелодии) ? Это файл C:\Windows\Media\tada.wav (при условии конечно, что одновременно нет звуков больше ни от каких других процессов) Вот нашел такую программу, которая строит изображение - звукового спектра tada.wav Вопрос в том, как сопоставить этот "эталонный" спектр" - общему потоку звукового звучания ? (Чтобы вовремя среагировать на него, когда в ОС появится звук с похожим спектром) |
Сообщ.
#26
,
|
|
|
ttt480, вы теперь каждую неделю будете одно и то же сообщение повторять?
Может, стоит найти фрилансера на специализированных сайтах? |
Сообщ.
#27
,
|
|
|
Jin X давайте тогда я заплачу деньги.
Сколько будет стоить ? |
Сообщ.
#28
,
|
|
|
ttt480, мне не надо платить, я же не предлагаю свои услуги.
Есть куча сайтов, где можно найти исполнителей. Они все легко гуглятся. |
Сообщ.
#29
,
|
|
|
Цитата Jin X @ Они все легко гуглятся. Ничего не могу найти. Помогите. |
Сообщ.
#30
,
|
|
|
Цитата ttt480 @ Помогите. За это время можно было бы самому научиться или денег накопить. Огласите Цитата ttt480 @ Ничего не могу найти. Если найдете и опять будет что-то про "скрипт", то я вам не завидую: узнаете много нового о себе. По теме: Вам пора бы определиться Цитата - достаточно если она будет ОДНОГОЛОСОЙ ? Или вам нужен целый "оркестр" распознать.на звучание на компьютере определенной мелодии Цитата ttt480 @ через микрофон А вот это совсем печально. Проскочит если микрофон будет в студии , а специально обученный "солист" -перед ним. Думаю, тут понадобится матрица из микрофонов и DSP. Как вариант : купите колонку с Алисой, и договоритесь с Яндексом. |
Сообщ.
#31
,
|
|
|
Цитата Alexei @ - достаточно если она будет ОДНОГОЛОСОЙ ? Или вам нужен целый "оркестр" распознать. Звук наподобие tada.wav - это короткий звук конкретной частоты. Я не очень разбираюсь в терминах - не знаю одноголосый он или многоголосый. Просто короткий звук, длительностью максимум 3 секунды. (если вы имеете ввиду - не играет ли что-ни будь на фоне этого звука. Нет - не играет. Только один этот звук и ничего другого на фоне.) Цитата Alexei @ Проскочит если микрофон будет в студии , а специально обученный "солист" -перед ним. Думаю, тут понадобится матрица из микрофонов и DSP. Нет, имеется ввиду не микрофон, а звук исходящий из какой-то программы. Я имел ввиду, что алгоритм должен висеть в трее и постоянно "слушать" звуки которые исходят из этой конкретной программы и среагировать тогда, когда она услышит нужный звук. (среагировать как угодно, например выдать окошко Msgbox с надписью "Hello world") В микрофоне могут быть шумы, искажения, фоновые звуки. А звук проигрываемый программой - хоть она тысячу раз его проиграет - это будет в точности тот же самый звук, в точности той же самой частоты без малейших отклонений. Про деньги уже много раз писал, что заплачу их. Все равно никто не помогает. |
Сообщ.
#32
,
|
|
|
Цитата ttt480 @ Нет, имеется ввиду не микрофон По моему, вы путаетесь в показаниях... Цитата ttt480 @ не знаю одноголосый он или многоголосый. Одноголосый , это когда вы один напеваете, или одним пальцем тыкаете в рояль... Цитата ttt480 @ Про деньги уже много раз писал В том-то и дело, что про деньги, а не про их количество... Можно сообщить в личку безмерно большую величину вашей благодарности. Может, заинтересуюсь, кое-какие мысли есть. |
Сообщ.
#33
,
|
|
|
Цитата Alexei @ По моему, вы путаетесь в показаниях... Нет не путаюсь. Вот - сообщение 14 Как среагировать на определенный звук wav на компьютере в системе Windows Речь идет о программе, которая производит некий звук. А в 15 сообщении человек примерно объяснил как можно детектировать звук, основываясь на его частоте. Цитата Alexei @ Может, заинтересуюсь, кое-какие мысли есть. Хорошо. Тогда делайте. А я вам все оплачу. |
Сообщ.
#34
,
|
|
|
Цитата ttt480 @ Речь идет о программе, которая производит некий звук. Может быть проще отследить обращение к файлу? |