![]() |
Модераторы: Snowy, Alexeis, MetalFan |
![]() ![]() ![]() |
|
Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 18 Всего: 484 |
Ну то, что воспроизводить будет - это я не сомневался.
А вот будет ли именно это значение на выходе звуковухи - это нужно замерять. А приборов у меня нет ![]() |
|||
|
||||
HmeL |
|
|||
Новичок Профиль Группа: Участник Сообщений: 29 Регистрация: 21.12.2006 Репутация: нет Всего: нет |
Snowy, а ты не пытался избавиться от щелчков в начале и в конце звуковой волны? мои эксперименты ничего хорошего не дали...
|
|||
|
||||
Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 18 Всего: 484 |
У меня нет никаких щелчков.
Попробуй потестить код на другой звуковой карте. Вероятно, проблема скорее аппаратная, нежели софтовая. |
|||
|
||||
Alexeis |
|
|||
![]() Амеба ![]() Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 55 Всего: 459 |
HmeL, Щелчки возникают при переключении буферов, вероятно не своевременно переключаются.
-------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
HmeL |
|
|||
Новичок Профиль Группа: Участник Сообщений: 29 Регистрация: 21.12.2006 Репутация: нет Всего: нет |
Snowy, попробую дома, на работе встроенный звук.
alexeis1, а программно это можно исправить? |
|||
|
||||
Alexeis |
|
|||
![]() Амеба ![]() Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 55 Всего: 459 |
Ой я и не обратил внимание, что тут используется playsound ![]() -------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
HmeL |
|
|||
Новичок Профиль Группа: Участник Сообщений: 29 Регистрация: 21.12.2006 Репутация: нет Всего: нет |
alexeis1, т.е. ты имеешь в виду, чтобы синусоида завершалась под конец волны? Точно! в Саунд Форже это помагало, надо бы и здесь попробовать. Спасибо!
|
|||
|
||||
HedgeR |
|
|||
Новичок Профиль Группа: Участник Сообщений: 6 Регистрация: 3.2.2007 Где: Москва Репутация: нет Всего: нет |
я пишу подобную программу, но она должна еще уметь выдавать стерео звук, с возможностью сдвига фаз каналов относительно друг друга. Вопрос:
1.как это реализовать модификацией кода, приведенного выше? 2. если проверить генерируемый сигнал прогой (xttp://zeitnitz.de/Christian/Scope/Scope_en.html - там есть оч. много всего для генерации/анализа звука), то он не синусоидальный, как должен быть, а скорее квадратный. Дело в колебаниях, возникающих на частотах, кратных генерируемой. Вот что показывает та прога при анализе генерируемого моей прогой звука 500 гц: спектр: ![]() А это сигнал: ![]() Если же "срезать" при анализе генерируемого сигнала все "лишние" частоты (напр., Band Pass 350-600 Гц), то получится собссно то требуется генерировать в чистом виде: ![]() Вопрос №2: откуда берутся эти "лишние" колебания и как с ними бороться (программно))? |
|||
|
||||
Alexeis |
|
|||
![]() Амеба ![]() Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 55 Всего: 459 |
HedgeR, Очень вероятно, что вы неверно настрили генератор.
Я только, что вывел на экран аудио данные, которые должны направляться на проигрывание, и вот что получил ![]() Генератор настроен следующим образом
Единственое, я убрал из модуля, воспроизведение звука и запись заголовков. Все остальное осталось как было. Масимально допустимый уровень при таких настройках 127, а частота 5000 Гц, но хорошее качество будет на частоте до 1000Гц. Вот еще один момент. Тут генерируется короткий импульс, спектр которого может быть похожим скорее на гаусовский колокол, чем на линейчатый, но гармоник такой большой амплитуды быть не должно, они могли возникнуть, только если указали омплитуду выше 127, при этом сигнал должен получиться сильно искаженный и соотв. иметь много гармоник. Это сообщение отредактировал(а) Alexeis - 5.2.2007, 11:35 -------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
HedgeR |
|
|||
Новичок Профиль Группа: Участник Сообщений: 6 Регистрация: 3.2.2007 Где: Москва Репутация: нет Всего: нет |
забавно, но у меня прога, как и у Alexeis, рисует идеальную синусоиду, а реально получается - см выше... Настройки генератора: част. дискретизации - 44100 гц, звука - 500 гц, громкость- 100 (из 127). Непонятно откуда берутся гармоники... Хотя это, по сути, в необходимом мне применении генератора не суть важно, куда важнее сделать стерео звук со сдвигом фаз... вот с этим
![]() |
|||
|
||||
Alexeis |
|
|||
![]() Амеба ![]() Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 55 Всего: 459 |
Показанная выше синусойда бывает только при ограничении сигнала на выходе. Изучите акустический тракт после звуковой карты. Вероятно у вас чувствительный высокоомный вход, и транзисторы входного каскада переходят в режим насыщения, либо по входу стоят защитные диоды включенные встречно. Такого ограничения быть не может в звуковухе, иначе бы вместо музыки она бы воспроизводила какафонию
![]() Добавлено @ 22:51 Гармоники всегда содержаться при любой форме сигнала отличной от синусоиды. Только синус и косинус при разложении в ряд фурье дают одну частоту, все остальные имеют широкий спектр и конечно гармоники сигнала с наибольшей амплитудой. -------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
HedgeR |
|
||||
Новичок Профиль Группа: Участник Сообщений: 6 Регистрация: 3.2.2007 Где: Москва Репутация: нет Всего: нет |
после звуковой карты сигнал идет обратно в эту же звуковую карту на анализ. а внутри куда он идет изучать не буду - счас, разберу я новый ноутбук ![]()
можт я чего и не понимаю, но на анализ звук с генератора для проверки я подавал 2мя способами: через провод-петлю (выход-вход) и без оного, выбрав как канал записи "stereo mix" (естессно, музыка на фоне не играла ![]() ![]()
а ПОЧЕМУ она отличается от синусоиды? насколько я понимаю, идет загон в буфер звуковухи сигнала именно синусоидальной формы... да и судя по вашему скриншоту это именно так... да, все тесты повторно проводились и на десктопе с неплохой звуковухой, с ровно тем же результатом ![]() и вообще вешать все косяки на звуковуху неправильно, тк в той же проге-анализаторе есть генератор, который мне и требуется на делфях реализовать. так вот, он выдает идеальный синус... Это сообщение отредактировал(а) HedgeR - 6.2.2007, 02:27 |
||||
|
|||||
Alexeis |
|
|||
![]() Амеба ![]() Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 55 Всего: 459 |
Про звуковую карту я ничего не говорил. Но режим насыщения, на лицо. Нужно пробовать, менять амплитуду сигнала и т.д. Может вместо Line in, сигнал подавался на микрофон? У микрофона чувствительный усилитель и наверняка есть ограничитель по входу, ведь его рабочее напряжение исчисляются мВ, а диоды имеют ступеньку, около 0,5в. Т.е. вполне вероятно, что там он есть. -------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
HedgeR |
|
|||
Новичок Профиль Группа: Участник Сообщений: 6 Регистрация: 3.2.2007 Где: Москва Репутация: нет Всего: нет |
Alexeis, а вы пробовали сами проанализировать генерируемый сигнал той прогой? (xttp://zeitnitz.de/Christian/Scope/Scope_en.html)
Очень интересен результат ![]() |
|||
|
||||
Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 18 Всего: 484 |
ИМХО, лишние шумы вносятся на аппаратном уровне.
Рекомендую захватить выход какой-нибудь программой, типа Total Recorder и проанализировать полученный результат. Это и будет результат до прохождения через звуковую карту. А анализировать выведенный аналоговый сигнал и заново оцифрованный - дело неблагодарное ![]() Особенно для встроенных звуковух. |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Delphi: Звук, графика и видео" | |
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делится вскрытыми компонентами
FAQ раздела лежит здесь! Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Girder, Snowy. |
2 Пользователей читают эту тему (2 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Delphi: Звук, графика и видео | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |