Есть какие-нибудь простенькие примеры, для понять как оно варится? Интересует фильтрация сигналов с микрофонного входа звуковой карты. Теории в гугле валом, практических примеров не нашёл. Может есть либы для обработки звука с понятным интерфейсом?
На сканере много полезной инфы, но она мне если понадобится, то не сейчас. То есть аппаратно я эту теорию могу реализовать, мне нужно программно, причем не готовые программы, которые есть на тамошнем форуме, а чтобы я сам мог с нуля написать простейшую программу такого рода. В некотором роде аналог DDK, или Iczelion, только для аудиокарты. На данном этапе нужно простейшее: как добраться до звуковухи, получить с неё вх. сигнал и обработав по минимуму() вывести на экран/колонки результат обработки.
t00x до БПФ далеко ещё. Нужно с самого начала, подцепил микрофон ко входу звуковой карты и далее <??????> FMOD скачал, сейчас буду смотреть, что это такое и нужно оно мне или нет. abcd008 для себя (под винду), вернее для своей проги, чтобы из неё обрабатывать сигнал. Pavia Для начала самое простое: как, куда и откуда получить сигнал микрофона, чтобы можно было например отрисовать его спектр/ачх в окошке, померять амплитуду и может ещё какое-то простенькое действие с ним произвести, например, усилить или ослабить.
cresta и далее, если в винде читать/смотреть примеры по директ саунд. (или чтонибудь вроде waveInOpen и дальше по ссылкам) в лине - берете исходник диктофона попроще и смотрите. в п/и - просто читаете /dev/audio предварительно записав в /dev/audioctl желаемый формат и источник как видите, в разных осях это делается по разному. --- + дока по дх2 на ру. для микрофонных целей должно хватить http://narod.ru/disk/14727809000/dx2-ru.pdf.html дх3 сдк. 22 мб. опять же, для микрофонных целей вполне http://narod.ru/disk/14725970000/DX3_SDK.rar.html
простейшее, на мой взгляд, bass.dll. Там и примеры есть. На том же сканере, на форуме, выкладывался исходник простого ФМ-демодулятора.
спасибо за подсказки. bass.dll посмотрел вроде есть там то, что надо. с DX пока не разобрался (не нашёл нужных функций), но если bass использует DX, значит там они есть, буду искать.
S_Alex К сожалению The Intel® Signal Processing Library представляет собой набор подпрограмм обработки сигналов оптимизированных для процессоров Intel®. Он не ориентирован на приложения, работающие в реальном времени.
если ты пишешь под виндовс, то ты уже не напишешь приложение реального времени. ибо это не система реального времени.
http://www.eggheadcafe.com/software/aspnet/33723829/sampling-the-microphonedsp.aspx http://www.linux-sound.org/dsp.html ^ гогль первые ссылки. буки на ру ---------- http://frolov-lib.ru/books/bsp/v15/index.html гугль программирование звука в windows гордеев ну и мсдн, прочая дока, примеры.
Анализировать сигналы хочешь в реал-тайме или в оффлайне? Смотреть без подготовки различные библиотеки бессмысленно. Копай в сторону КИХ фильтров (оконных). Разберись что такое - временное и частотное представление сигнала. Что такое свертка. Что такое БПФ и для чего оно нужно. Фильтрацию сигнала можно осуществлять и без БПФ, но это оффайновый метод. Если что конкретное - спрашивай, постараюсь помочь.
Хм, в реальном времени я не подразумеваю, что забрать всё процессорное время. Сигнал со входа звуковой (не из файла) в полосе 48/96/192 kHz (частота дискретизации до 44kHz) без тормозов/заметных на слух прерываний обработать полосовыми фильтрами, режекторными, шумоподавление, визуализация исходного/обработанного сигнала. На сейчас попробовал на bass.dll - полосовые, визуализация работает, правда шумоподавление и режектор не нашёл. Какая либа лучше подходит для этих задач -пока не знаю. Bass - надстройка над DX и матлаб (судя по инклюдам). Напрямую с ними работать есть ли смысл? qqwe спасибо за ссылки. Первая вроде интересно. В общем пошёл разбираться со всем этим
ФВЧ, полосовые , режекторные - рассчитываются на основании импульсной характеристикм ФНЧ, коэффиценты которой обычно получают в матлабе (или же сразу кфц целевого). в любом случае если хочешь цос заниматься матлаб хороший выбор. из легкого софта могу порекомендовать sigview. анализатор спектра + разные няшки. В дх никаких фильтров нету, если что. ПС В реальном времяни - это значит ты к примеру говоришь в микрофон, сигнал обрабатывается ФНЧ и на монитор выводиться его график (либо АЧХ).
Може кому надо будет, нашёл тут инфу, куча материала http://dsp-book.narod.ru/books.html значит, dx просто предоставляет доступ к стриму, который пропускается через ф-ции матлаба?
cresta дх в данном случае дает возможность дотянуться и использовать буфера наиболее близкие к железу. те, без дополнительных посредников. также, оно вам предоставляет возможность аппаратного смешивания этих буферов. в доке и примерах описано что это для чего это и как с ним работать. в книге гордеева тоже есть. superakira (был както спор - что жe такое системы реального времени и сошлись на том, что это в основном рекламный слоган) вынь вполне нормально выводит график того, что говорится в микрофон.