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

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

Ещё вопросик по BASS.DLL [D6, WinXP]


Axer ©   (2004-11-22 16:36:00) 

Здравствуйте, Мастера. С помощью каких функций можно получить данные с микрофона? Примеры и файл BASS.CHM не помогли. Подскажите, пожалуйста. Спасибо.


Axer   (2004-11-23 10:13:00) [1]

Ой, спасибо мастер Progamania. Теперь мне всё ясно.


programania   (2004-11-22 20:30:00) [2]


PROCEDURE iniBASSmicro;
var
dName: PChar; i,n,dl,r:integer;
begin
BASS_Init(-1, 44100, 0, form1.handle);
BASS_RecordInit(-1);
i:=0; n:=-1;
dName:=BASS_RecordGetInputName(i);
while dName<>nil do begin
 s:=copy(ansiLowerCase(StrPas(dName)),1,5);
 if (s='micro')or(s='микро') then n:=i;
 inc(i);
 dName:=BASS_RecordGetInputName(i);
end;

i:=0; while BASS_RecordSetInput(i, BASS_INPUT_OFF) do inc(i);
BASS_RecordSetInput(n, BASS_INPUT_ON);
if not BASS_RecordStart(11000, 0, @RecordCallback, 0) then  showMessage('Не нашла микрофона') ;
end;

type tb=array[0..$FFFF] of smallInt; var utb=^tb;

function RecordCallback(Buffer: utb; Length, User: DWord): Bool; stdcall;
var
i,z: integer;
begin
for i := 0 to length div 2 - 1 do begin
 if odd(i) then begin
   z:=buffer^[i];
//тут обработка одного канала
 end;
end;
end;


Наверх

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