Тема: DirectSound
Показать сообщение отдельно
  #1  
Старый 27.01.2013, 18:25
dima564 dima564 вне форума
Прохожий
 
Регистрация: 27.01.2013
Сообщения: 2
Репутация: 10
По умолчанию DirectSound

необходимо сгенерировать синусоиду в два канала и воспроизвести с эффектом перетекания из одной колонки в другую.
http://www.delphisources.ru/pages/so...generator.html
как я понял если указать nChannels:=2;
то при выводе надо смиксовать два буфера в один первичный, верно ли это?
какие методы для миксования использовать (без asm вставок)?
Код:
wh : array [0..1] of TWAVEHDR;
если соединить каналы миксом зачем потом заголовки менять @wh[0],@wh[1] и почему если сразу написать waveOutWrite для каждого wh то воспроизведение будет последовательным
Код:
waveOutWrite(hwo, @wh[i], sizeof(WAVEHDR));
?
почему для первичного буфера используют виртуальную память процессора?
как создать эффект перетикания если:
S(t)=Amp*sin(omega*t+Fi);
omega=2*pi*hz;
t=i/fd;
чему должно равнятся fi?
если можно кодом показать и объяснить как это работает и почему именно так. прочел много статей, ссылки на материалы нежелательны
Ответить с цитированием