Цитата R.i.m.s.k.y.:
подскажите, пожалуйста, как узнать "канальность" звука в windows »
|
R.i.m.s.k.y., с bass.dll:
Код:
![Выделить весь код](images/misc/selectcode.png)
type
BASS_CHANNELINFO = record
freq, chans, flags, ctype, origres, plugin, sample: DWORD;
filename: String;
end;
function BASS_Init(device: Integer; freq, flags: DWORD; win: HWND; CLSID: Integer): BOOL; external 'BASS_Init@files:bass.dll stdcall delayload';
function BASS_StreamCreateFile(mem: BOOL; file: String; offset, length: Single; flags: DWORD): DWORD; external 'BASS_StreamCreateFile@files:bass.dll stdcall delayload';
function BASS_ChannelGetInfo(handle: DWORD; var info: BASS_CHANNELINFO): BOOL; external 'BASS_ChannelGetInfo@files:bass.dll stdcall delayload';
function BASS_Free(): BOOL; external 'BASS_Free@files:bass.dll stdcall delayload';
procedure InitializeWizard();
var
hStream: DWORD;
info: BASS_CHANNELINFO;
begin
BASS_Init(-1, 44100, 0, 0, 0);
hStream := BASS_StreamCreateFile(False, ExpandConstant('{win}\media\start.wav'), 0, 0, 0);
BASS_ChannelGetInfo(hStream, info);
BASS_Free;
MsgBox('Channels: ' + IntToStr(info.chans), mbInformation, MB_OK);
end;