JORGE, то что вы описываете - это дискретное преобразование фурье (ну и много методов вокруг - дискретное косинусное преобразование, хартли, вейвлеты и т.п.)
Задвиги про "переводчик" с такими вопросами выглядят просто смешно.
Я не против пусть методы называются как угодно я не могу быть специалистом во всех областях. Поэтому в данном случае мне проще купить такой готовый продукт. Мои программисты не спецы по звуку на даже поручив это фанатам звука которые про фурье только и говорят я не получил пока пригодного продукта.
Спектроанализаторы с БПФ не обязательно поручать супер-программистам, они в виде библиотек существуют для разных языков. http://alglib.sources.ru/fasttransforms/fft.php а вот пример на Processing-е http://pmcg.mantrid.ru/index.php/pcb/118?task=view всё уже сделано до нас Кстати Processing покупать не нужно, он бесплатный в комплекте с кучей библиотек и примеров работы со звуком... Можно как синтезировать звуки, так и анализировать... по моему вам это и требуется и видимо не для МК...
обычно в таких случаях имеет смысл обращатся к людям, способным быстро въехать и перевести это на язык, понятный исполнителям рекомендую, очень много сил и времени экономит.
Последний раз редактировалось Angel71 06 апр 2010, 23:41, всего редактировалось 1 раз.
Спасибо большое за содействие! Возможно там где про цветомузыку - это может и подойдет. Только цветов должно быть не 3 конечно:) Мне кажется главный недостаток программ для спекрт анализа - они могут это делать медленнее чем нужно. У человека все проще и быстрее... Ну попробуем увидим
Добавлено спустя 6 минут 12 секунд: Насчет понятности для исполнителей если бы знать что это за исполнители... Если я пишу алгоритмы своим программистам они пишут программу. Тут все понятно. Я понимаю как из 1000 частот в каждый момент времени выбирать только одну и могу это описать алгоритмом и соответственно программой. Но вот как иметь эти частоты я могу понимать только со слов других и пытаюсь описывать понятными для этих других терминах. Возможно не очень удачно.
Добавлено спустя 1 минуту 18 секунд: Насчет количества трубок или струн вот сколько их у рояля плюс еще примерно столько же думаю этого хватит. Разве это такое уж большое число?
зачем же сразу в данном контексте человека с компьютером сравнивать? анализаторы не могут работь ни слишком быстро ни слишком медленно, берём более производительный проц и всё пучком будет. не уверен, но что-то мне подсказывает, что нужный анализатор вполне реализуем на видюхе. это, если алгоритм нормально написан и действительно цп слишком сильно грузит
Еще раз спасибо господин Vadinator программист говорит что вроде все подошло. Если получится с нас магарыч. Насчет того что это можно реализовать на видюхе - я не совсем понял но конечно мы будем цеплять к своему процессору все новые пары не только динамик-микрофоны, но и камеры-руки, гироскопы-ноги и тд. Если бы была шерсть как описано в одном из ваших форумов прицепили бы и шерсть-руки или шерсть-камеры. В итоге оно все равно объединяется. Просто звук по моему мнению это самое важное, и в то же время простое и доступное и иимеет много самостоятельных применений кроме роботов.
смысл в том, что работает "слишком медленно". основные причины могут быть слабенький проц или неправильно написаный не оптимизированный код. может не используете многопоточность или у вас постоянные взаимоблокировки, может натыкаетесь на узкое горлышко,... тут вариантов масса. может у вас оперативы мало. вот если с кодом всё нормально и действительно проца нехватает, то первый вариант - сменить проц на более производительный, второй - подумать над использованием ресурсов видеокарты. на энвидевских давно есть cuda. есть еще opencl, его поддерживают как ати, так и энвидиевские крты. ещё возможно использование шейдеров, но тут посложней - нужно смотреть какие шейдеры поддерживает видюха и собственно на сами вычисления, вполне возможно что шейдеры не помогут. вычислительные шейдеры стартуют с 4.x версии. вершинные, геометрические и пиксельные использовать тоже можно, но... много возни и мало толка
Angel71 писал(а):смысл в том, что работает "слишком медленно". основные причины могут быть слабенький проц...
Да не в этом дело.
Он хочет получить разрешение по частоте, скажем, один герц, при этом он хочет получать новый результат с частотой, скажем 20 Герц. Понятно, что отличить 1000Гц от 999Гц на 50 периодах трудно... Но можно (с некоторыми ограничениями). Простейший способ - тупо добивать данные нулями до нужной длины. АЧХ при этом, конечно, сглаженная выйдет.
Последний раз редактировалось Michael_K 10 апр 2010, 18:07, всего редактировалось 1 раз.
Да человек просто не понимает, что программисты разные бывают. Человек, который всю жизнь программает 1С-ку, вряд ли с ходу освоит ЦОС, точно так же как эмбеддер вряд ли с ходу освоит высоконагруженные базы данных и т.п.
Да нет пока вопрос не встал так остро это просто мои опасения. надо просто закончить и посмотреть. Разрешение в 1 Гц и не требуется, человек отличает 0,3% в диапазоне 500 - 5000Гц и можно при необходимости еще уменьшить количество точек. Хотя программисты безусловно как и все люди разные и как правило могут делать только то чему научены. Ну посмотрим сам по себе процессор небольшой думаю недели 2 на него хватит.