Модераторы: Rickert, Alexeis, BorisVorontsov

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> проигрывание звука, визуализация звука 
:(
    Опции темы
Guest
Дата 31.3.2005, 18:23 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Хотя CloseFile() погорячился, правильно CloseHandle()
  Вверх
planer
Дата 31.3.2005, 18:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 28.3.2005

Репутация: нет
Всего: нет



BBC
Файл нормально открывается. Проблема заключается в том как именно извлечь из него информацию об амплитуде сигнала в конкретный момент времени.

Объясните пожалуйста кто-нибудь популярно, как извлечь из файла (например из D:\1.mp3)
амплитуду сигнала в конкретный момент времени. Приведите конкретный пример, а там уж я думаю, я разберусь.
PM MAIL ICQ   Вверх
BBC
Дата 31.3.2005, 18:58 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Из mp3 по-моему никак. Из wav без проблем указанным выше способом. На сколько я знаю плеер mp3 переводит звук сначала в wav (Microsoft PCM) а потом кидает на звуковуху. Вот там он амплитуды для визуализации и достает.
  Вверх
PILOT
Дата 31.3.2005, 19:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


производство
****


Профиль
Группа: Модератор
Сообщений: 2724
Регистрация: 4.4.2002
Где: москва

Репутация: нет
Всего: 54



Цитата(BBC @ 31.3.2005, 10:45)
А кто же подает на звуковую плату сигнал выше половины частоты дискретизации?

Ты и подаешь... любой подает, когда записывает, но то что выше половины частоты дискретизации "уходит в гудок".

СУВ.
Добавлено @ 19:21
Цитата(BBC @ 31.3.2005, 10:45)
Тут мне подсказали применить цифровой НЧ фильтр. Может кто выскажется на эту тему или подскажет алгоритм цифровой фильтрации?

Собственно, метод скользящей медианы (заданной степени вложенности)... и иже с ними...

СУВ.


--------------------
тут могла быть Ваша реклама...
PM MAIL WWW ICQ   Вверх
Guest
Дата 31.3.2005, 19:32 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Цитата(PILOT @ 31.3.2005, 19:18)
Собственно, метод скользящей медианы (заданной степени вложенности)...


А это еще что за зверь? Можно по подробнее? И этот метод точно воспроизведет огибающую или с каким то приближением?

  Вверх
PILOT
Дата 31.3.2005, 19:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


производство
****


Профиль
Группа: Модератор
Сообщений: 2724
Регистрация: 4.4.2002
Где: москва

Репутация: нет
Всего: 54



Это фильтр высоких частот... smile

СУВ.


--------------------
тут могла быть Ваша реклама...
PM MAIL WWW ICQ   Вверх
Guest
Дата 31.3.2005, 19:56 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











По моему ты хотел сказать нижних. Частота среза половина частоты дискретизациии.
Вот это я завтра и попробую. А метод скользящей медианы, я уже прочитал - "Сглаживание скользящей медианой позволяет удалить отдельные пиковые выбросы" , а мне их надо максимально точно отобразить.
  Вверх
PILOT
Дата 31.3.2005, 20:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


производство
****


Профиль
Группа: Модератор
Сообщений: 2724
Регистрация: 4.4.2002
Где: москва

Репутация: нет
Всего: 54



Тогда дифференцируй, получишь фильтр НЧ, а скользящая медиана это фильтр ВЧ (потому что почти интеграл).

СУВ.



--------------------
тут могла быть Ваша реклама...
PM MAIL WWW ICQ   Вверх
planer
Дата 31.3.2005, 20:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 28.3.2005

Репутация: нет
Всего: нет



BBC и остальные
а как хотя бы из wav файлов получать амплитуду? Хотябы функции скажите, а еще лучше приведите кусок кода.
PM MAIL ICQ   Вверх
PILOT
Дата 31.3.2005, 22:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


производство
****


Профиль
Группа: Модератор
Сообщений: 2724
Регистрация: 4.4.2002
Где: москва

Репутация: нет
Всего: 54





--------------------
тут могла быть Ваша реклама...
PM MAIL WWW ICQ   Вверх
BBC
Дата 31.3.2005, 23:00 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Ну с интегралом конечно не поспоришь, но при чем здесь фильтр ВЧ? Мне что низшие гармоники отфильтровывать надо? Сглаживает как раз фильтр НЧ, за счет удаления высших гармоник. Ты сам то "Сглаживание скользящей медианой" делал?
  Вверх
PILOT
Дата 31.3.2005, 23:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


производство
****


Профиль
Группа: Модератор
Сообщений: 2724
Регистрация: 4.4.2002
Где: москва

Репутация: нет
Всего: 54



Хм...что-то ты совсем запутался...
Для того чтобы убрать ВЧ составляющую используй метод скользящей медианы (сумма нескольких последних значений деленная на кол-во просуммированых элементов),
для того, чтобы убрать НЧ составляющую используй дифференцирование (в самом простом случае разница между соседними точками).
Цитата
Ты сам то "Сглаживание скользящей медианой" делал?
А ты сам как думаешь? smile

СУВ.


--------------------
тут могла быть Ваша реклама...
PM MAIL WWW ICQ   Вверх
BBC
Дата 31.3.2005, 23:25 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











planer,

В этих ссылках все, что нужно имеется. А дальше просто читай из файла, там записаны именно значения амплитуд, приводи их к размеру твоего экранчика и рисуй. Для проверки открой в CoolEdite тот же wav файл, проще для начала 8 битный моно, разверни его, найди самую первую точку, при щелчке мышью она покажет амплитуду. Далее открой файл в каком нибудь редакторе в бинарном виде, поставь указатель на 44 байта (сразу после заголовка) и посмотри следующий байт. Переведи его из 16-ричной в десятичную - значения должны совпасть. А дальше сделай это программно. Читать из файла надеюсь умеешь, иначе все это я объяснял зря. Если хочешь спектр ищи алгоритм БПФ. Спектр даже покрасивей выглядит, но придется разбираться с преобразованием Фурье.
  Вверх
PILOT
Дата 31.3.2005, 23:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


производство
****


Профиль
Группа: Модератор
Сообщений: 2724
Регистрация: 4.4.2002
Где: москва

Репутация: нет
Всего: 54



Цитата(BBC @ 31.3.2005, 20:25)
Переведи его из 16-ричной в десятичную - значения должны совпасть. А дальше сделай это программно.

Программно переводить из hex в dec?
Ого! А нафига? Нафига переводить то?

СУВ.


--------------------
тут могла быть Ваша реклама...
PM MAIL WWW ICQ   Вверх
BBC
Дата 31.3.2005, 23:42 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











PILOT
Теперь я понял, что ты предлагаешь - это не лишено смысла и в winampe на маленьком экранчике будет нормально выглядеть. У меня же экранчик довольно большой и выводятся туда гармонические сигналы, где малейшие искажения сразу видны. А по состоянию сигнала оператор принимает решение о работоспособности аппаратуры. По этому я повторюсь мне необходима точная передача сигнала.
А для того, чтобы отфильтровать ВЧ необходимо разложить в спектр, выкинуть все гармоники выше необходимой частоты среза и собрать обратно.
  Вверх
Страницы: (3) Все 1 [2] 3 
Ответ в темуСоздание новой темы Создание опроса
Вы можете найти полезным что...
Alexeis
Rickert
  • Английская документация по DirectX лежит где-то здесь.
  • Английская документация по OpenGL лежит где-то там.
  • Гейм-дев у нас обсуждают где-то тут

Ждём вас! С уважением, Alexeis, Rickert.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Мультимедия, OpenGL/DirectX | Следующая тема »


 




[ Время генерации скрипта: 0.0881 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.