Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Генерация двух тонов одновременно. Консольное приложение. [D6, D7, Win95/98, Win2k, WinXP]


ut1wpr ©   (2005-03-29 11:50:00) 

Как все засекречено!
Перерыл много форумов, почемучек и прочего. Мало толку.
Задача:
Необходимо при помощи звуковой карты генерировать два ОДНОВРЕМЕННО ЗВУЧАЩИХ синусоидальных сигнала.
Начало звучания с запуском программы, окончание и выход - по нажатию любой клавиши.
Приложение хочется иметь консольное. Требования для исполнения под "чистым" ДОС-ом нет. В командной строке в качестве параметров указать частоты 1 и 2 и амплитуды 1 и 2.
То, что я нарыл - это "проигрывание" заранее сформированного звукового файла, или "подставка" вместо файла некоего буфера, заполненного данными по форме колебания.
Я-то думал, что используя стандартный синтезатор звуковой карты можно просто подать ряд команд, описывающих форму выходного колебания (из ряда стандартных: синус, пила, меандр, треугольник, переменная скважность), форму огибающей (attack, sustain, desay, release), времена элементов огибающей и далее наслаждаться сотворенным.
Неужели нельзя?
Куда конкретнее ткнуться. (С английским нет проблем, промлемы с местами поиска или с формированием критерия поиска в гуглях/яндексах).
Всем спецам заранее огромное спасибо!

Вик/ut1wpr


Digitman   (2005-03-29 14:11:00) [1]


> в этом направлении и поищу


может и в направлении MS DirectSound стоит пошукать ... тоже не самый худший вариант ... по кр.мере самому месить вэйвформы не придется ..


WondeRu   (2005-03-29 14:06:00) [2]

к [5] посоветую использовать OpenAL ( только им пользуюсь), но все-таки форму сигнала всегда нужно формировать самому или паять железяку на сигнальном проце!


ut1wpr   (2005-03-29 14:04:00) [3]

>смотри справку по Microsoft Multimedia API

Спасибо. Вот в этом направлении и поищу.

Вик/ut1wpr


Digitman   (2005-03-29 13:38:00) [4]


> ut1wpr ©   (29.03.05 13:26) [4]


> Уже второй наезд за последние полчаса


какой еще "наезд" ? мало ли что ты под "стандартом" подразумеваешь !

если ты взаимодействуешь с аудиокартой штатным образом (т.е. средствами, предоставляемыми Win32 MultimediaAPI), выбор у тебя невелик - либо синтезировать звук программно и использовать для вывода синт.звука зарегистрированное в системе WaveOut-устройство, либо использовать стандартнеы MIDI-спецификации и положиться на синтезирующие алгоритмы того или иного зарегистрированного MidiOut-устройства

смотри справку по Microsoft Multimedia API

есть и третий вариант - использовать спецификацию MS DirectSound, но она принципиально мало чем отличается от использования WaveOut - точно так же тебе придется самому программно синтезировать сигналы, с той лишь разницей что DirectSound избавит тебя от необходимости программно смешивать две твои "синусоиды"


ut1wpr   (2005-03-29 13:26:00) [5]

2 Digitman:
Вроде я первый просил меня просветить... :-)
Уже второй наезд за последние полчаса. Весьма "дружелюбный" форум.
Если я выразился "вне" Вашей терминологии - поправьте, пожалуйста.

Благодарю.


Digitman   (2005-03-29 13:08:00) [6]


> стандартный синтезатор звуковой карты


ну и какой же такой "стандартный" ? просвети уж ...


ut1wpr   (2005-03-29 12:45:00) [7]

Ответ сказочно информативен!
Трудно. Подскажите как, если знаете.


WondeRu   (2005-03-29 12:41:00) [8]

блин, а самому трудно чтоли формировать сигнал???!!!


Наверх

Титульная страница Поиск, карта сайта Написать письмо