Распознаватель высоты звуков, интеграция с Друпал

Главные вкладки

Аватар пользователя univerico univerico 24 мая 2019 в 13:14

Здравствуйте! Есть вопрос, даже не знаю, в какую сторону гуглить. Нужно как-то реализовать на сайте на Друпал 7 или 8 распознавание нот как звуков (т. е. распознаватель высоты звуков, а не распознаватель картинки).

Комментарии

Аватар пользователя univerico univerico 24 мая 2019 в 16:56

Что есть "звук" на Drupal-сайте?

Предполагается найти готовый распознаватель высоты звука бесплатный или платный и как-то его прикрутить на сайт. Просто вывести.
По этому принципу работает например программа "абсолютный слух" в приложениях Андроид и IOS, приложения для тренировки пения интервалов.
Отображать это потом графически пока не планируется.

Аватар пользователя bumble bumble 24 мая 2019 в 17:00

Еще раз...
Каким боком, сайт на Drupal, должен участвовать в этом процессе "распознавания"?
Что именно он (Drupal) должен "распознавать"?
Каков источник данных?
Какой формат?

Аватар пользователя univerico univerico 24 мая 2019 в 17:38

Имею ввиду, например, тюнеры, которые распознают высоту звука и сравнивают с эталоном
а)либо выбранным вручную пользователем фиксированным,
б) либо с ближайшим эталоном, "чистой нотой" в зависимости от строя.
Т.е. например, звучит звук, 425 Гц, а эталон заданный для данного задания 435, программа эту разницу определяет и как-то выводит на экран Например, тюнер https://online-tuner.ru/ . Вот здесь он сравнивает с ближайшей "чистой нотой"
И еще есть приложения типа "абсолютного слуха" где можно вручную задать с какой нотой сравнивать или даже есть заданная последовательность, но там ограничен функционал, я хочу с помощью друпал расширить его. Именно по части правил, с чем сравнивать звук. Механизм оценки высоты звука в Гц взять готовый. "Вход" просто через микрофон, как аудио. Т.е. в минимуме Друпал просто выводит этот функционал (типа тюнера) на сайт (например так же, как выводится флэш, в фрейме и т.д.). В более предпочтительном варианте сделать что-то типа API или еще как-то и именно с помощью Друпал
а)воспроизводить какие-то определенные звуки
б)и с ними же (или с их высотами Гц) сравнивать, при этом на сайте задавать правило, с какой последовательностью нужно сравнивать.

Аватар пользователя bumble bumble 24 мая 2019 в 17:54
1

Ок...
У Вас есть реальное понимание того как именно это должно работать?
Возможно Вы знаете реальные примеры такого функционала (даже не с Drupal, а с PHP, в принципе)?

Я вот лично, не встречал еще никаких компонентов позволяющих хоть сколько сносно работать со звуком при помощи PHP.
Преимущественно, из-за того что PHP это совсем не о таких вещах как "звук".
А если не PHP, то есть ли у Вас понимание того как другие средства интегрировать с PHP и Drupal, в частности? Есть ли тому обоснования? (Только без примеров каких-то там "приложений в айфрейме", никто не побежит бекинжинирить их для ответа на форуме).

Ну и в целом, надеюсь у Вас есть понимание того, где находится условный "микрофон", а где Drupal, и что их может связывать. Так же, справедливо и для "воспроизводителей звуков".

На данном этапе, скорее похоже на то, что Вы собираетесь делать ерунду (ИМХО, конечно).

Аватар пользователя bumble bumble 30 июня 2019 в 22:02

Это ближе к истине, согласен. Но:

univerico wrote:
В более предпочтительном варианте сделать что-то типа API или еще как-то и именно с помощью Друпал

Кагбэ предполагает что это на стороне Drupal (читать PHP), в ином случае - это совершенно не касается ни Друпала, ни этого форума в принципе.

Аватар пользователя univerico univerico 24 мая 2019 в 22:31

Еще раз уточню, что предполагалось, что непосредственно со звуком все будет делаться не с помощью Друпал
(а, например, как здесь на swift), потом этот сторонний функционал выдавал бы результат в виде численного значения в Герцах, например, или в виде "смыслового" (возможно я не совсем корректно формулирую с точки зрения терминологии) (или как в миди "номером" ноты на клавиатуре или словом " do-re-mi", а уже алгоритм обработки этого результата определять с помощью Друпал, например, если первая нота больше 420 Гц, то ..., если меньше 420 Гц, то ... и т.д. ).

Я вот лично, не встречал еще никаких компонентов позволяющих хоть сколько сносно работать со звуком

Ясно. Тогда видимо готовых средств для интеграции с Друпал такого функционала нет, ну или я его сейчас не смогу найти, придется сначала по специализированным источникам определиться со способом обработки звука и потом уже думать, как это прикрутить на сайт.

Аватар пользователя univerico univerico 24 мая 2019 в 22:40

Ищите библиотеку на js

Спасибо большое!
А под какую операционку указывается в описании имеет значение?
Или если это будет web, то все равно?
Как еще сузить поиск?
По запросу "library for the website tuner" выдается что-то типа этого
1) Вот это для web
https://github.com/FerCa/tuner
Можно его будет прикрутить на Друпал сайт?

2)Для Андроида https://github.com/gstraube/cythara

Аватар пользователя sas@drupal.org sas@drupal.org 25 мая 2019 в 8:08
1

Вот не наступил Вам соловей на глаза, а так то ..

js web запись звука https://github.com/mattdiamond/Recorderjs
flash https://github.com/michalstocki/FlashWavRecorder
Модуль для друпал для записи аудио https://github.com/michalstocki/FlashWavRecorder
Через них можно получить доступ к звуку + нужен еще компонент который будет определять частоту

Аватар пользователя univerico univerico 25 мая 2019 в 8:53

Вот не наступил Вам соловей на глаза, а так то ..

Если я верно понимаю вашу шутку, то в моем случае сначала руки должны вбить в поиске нужное, чтобы глаза увидели. Спасибо. Все буду тестировать и изучать.

Аватар пользователя univerico univerico 13 февраля 2021 в 15:28

Еще мысль возникла, как описать ТЗ: самый близкий существующий функционал - оценка качества пения в караоке. Может из этой области какую-то библиотеку прикрутить и перепилить? Только у меня цель все же - проверка, как поет человек учебные задания, поэтому на стороне сайта фонограмма не обязательна, можно только проверять высоту исполнения нот голосом.

И если искать специалиста по JS, то как формулировать ТЗ, что именно должен настроить специалист по JS?
И где размещать ТЗ? На каком сайте или бирже? Здесь же но топик как-то назвать особым образом?

Потому что в этой теме на drupal.ru пока не удалось найти, кто взялся бы за это.

Аватар пользователя bumble bumble 13 февраля 2021 в 15:33
1

Вы не решите эту задачу "подключив библиотеку". Нет ни js скриптов под такое, ни тем более Друпал-модулей.
Единственный вариант который я вижу - искать специалистов по ml, обучать на это дело нейронку и разворачивать сервис с анализом переданной записи.
Затратное предприятие.

Аватар пользователя adano adano 13 февраля 2021 в 15:41

пока не удалось найти, кто взялся бы за это

Так это никому не надо, т.к. на выходе получится типичная программка для караоке, которая баллы расставляет, которых на винде и так помойка...
Это ещё не говоря о том, что от произношения до оцифровки должно быть установлено оборудование в несколько тысяч баксов.
P.S. Короче, тут основная масса - это веб-разработчики... Не там ищите.

Аватар пользователя adano adano 13 февраля 2021 в 15:54

Или вы серьезно думаете, что пропев что-то в микрофон от наушников, можно оценить "качество пения"?

Аватар пользователя univerico univerico 13 февраля 2021 в 21:36

"Единственный вариант который я вижу - искать специалистов по ml, обучать на это дело нейронку и разворачивать сервис с анализом переданной записи.
Затратное предприятие."

Спасибо. Это наверное, если нужно конкретно, чтобы на ходу настройки подстраивались под человека.
Но меня устроит и более простой вариант, как в тюнере мобильников (вот демо) для настройки инструментов.

Нет ни js скриптов под такое, ни тем более Друпал-модулей.

Я ищу любую opensource технологию. Просто выше писали, что есть какие-то варианты с JS...
Не обязательно JS. Ну или можно узнать сколько будет стоить своя такая технология или купить у кого-то код этого "тюнера", чтобы не изобретать велосипед.
Просто вопрос в том, как управление настройками этого тюнера вывести через UI Друпал сайта...
На сайте уже есть другой функционал, и нужно, чтобы всё было в одном месте, поэтому функционал тюнера нужно тоже к сайту прикрутить.

В поисковике вот что-то такое предлагается для windows
Я уж не знаю, можно и сервер сайта на Windows перенести если что... если это поможет