IPB
ЛогинПароль:

> ВНИМАНИЕ!

Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.

Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.

> Звуки в дельфи
сообщение
Сообщение #1


Злостный любитель
*****

Группа: Пользователи
Сообщений: 1 755
Пол: Мужской

Репутация: -  62  +


Как реализовать на дельфе проигрыш звука заданной частоты? Я вот через писиспикер попробовал, таким вот модулем (текст взял с какого-то сайта), но он вылетает с ошибкой привеллегед инструктион.


Прикрепленные файлы
Прикрепленный файл  UPCSpeaker.pas ( 395 байт ) Кол-во скачиваний: 259


--------------------
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
сообщение
Сообщение #2


Гость






Цитата
я надеюсь, там можно обойтись трёмя процедурами, или 20 строк подключения и проверок?
Использовал в проекте на чистом API - инициализация в 2 строки + 2 основных процедуры (MidiNoteOff, MidiNoteOn) вида:

function MidiOutMessage(hMidi: HMIDIOUT;  iStatus: integer;  iChannel: integer;
iData1: integer; iData2: integer): DWORD;
var
dwMessage: DWORD;
begin
dwMessage:= iStatus or iChannel or (iData1 shl 8) or (LongInt(iData2) Shl 16);
result := midiOutShortMsg(hMidi,dwMessage);
end;


function MidiNoteOff(hMidi: HMIDIOUT; iChannel: integer; iOct: integer;
iNote: integer; iVel: integer): DWORD;
begin
result := MidiOutMessage(hMidi,$080,iChannel,12*iOct+iNote,iVel);
end;
function MidiNoteOn(hMidi: HMIDIOUT; iChannel: integer; iOct: integer;
iNote: integer; iVel: integer): DWORD;
begin
result := MidiOutMessage(hMidi,$090,iChannel,12*iOct+iNote,iVel);
end;

использование совершенно прозрачно...
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 29.04.2024 5:46
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name