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

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

Audio Card [D5, Win95/98, WinME, WinXP]


Sergunja ©   (2002-12-24 18:46:00) 

Привет, народ! Помогите пожалуйста! проблема в том, что нужно узнать как можно больше о аудио карте программно!
И еще можно ли узнать не стоит ли Регулятор громкости Windows в положенн Mute и как его можно программно переключить!

Благодарен за любую помощь!


Sergunja   (2002-12-26 15:55:00) [1]

Opuhshii,
Спасибо тебе огромное!!! Выручил!


Opuhshii   (2002-12-26 08:51:00) [2]

"о аудио карте"...

uses MMSystem;
const
S=" Dev#%d, Name=%s,"#13+
" DriverVersion=%u,"#13+
" Manufacturer identifier = %u,"#13+
" Product identifier = %u,"#13+
" Has %u Channels"#13+
" Formats supported: "#13+
"%s ";
procedure TForm1.Button1Click(Sender: TObject);
var
I:Dword;
DevCount:Dword;
WaveCaps:TWaveOutCaps;
Formats:string;
begin
DevCount:=waveOutGetNumDevs;
ZeroMemory(@WaveCaps,SizeOf(WaveCaps));
for I:=0 to DevCount-1 do begin
waveOutGetDevCaps(I,@WaveCaps,SizeOf(WaveCaps));
if ((WaveCaps.dwFormats shl (32-12)) shr 31) = $00000001 then
Formats:=Formats+" 44.100kHz Stereo 16 bit"#13;
if ((WaveCaps.dwFormats shl (32-11)) shr 31) = $00000001 then
Formats:=Formats+" 44.100kHz Stereo 8 bit"#13;
if ((WaveCaps.dwFormats shl (32-10)) shr 31) = $00000001 then
Formats:=Formats+" 44.100kHz Mono 16 bit"#13;
if ((WaveCaps.dwFormats shl (32-9)) shr 31) = $00000001 then
Formats:=Formats+" 44.100kHz Mono 8 bit"#13;
if ((WaveCaps.dwFormats shl (32-8)) shr 31) = $00000001 then
Formats:=Formats+" 22.050kHz Stereo 16 bit"#13;
if ((WaveCaps.dwFormats shl (32-7)) shr 31) = $00000001 then
Formats:=Formats+" 22.050kHz Stereo 8 bit"#13;
if ((WaveCaps.dwFormats shl (32-6)) shr 31) = $00000001 then
Formats:=Formats+" 22.050kHz Mono 16 bit"#13;
if ((WaveCaps.dwFormats shl (32-5)) shr 31) = $00000001 then
Formats:=Formats+" 22.050kHz Mono 8 bit"#13;
if ((WaveCaps.dwFormats shl (32-4)) shr 31) = $00000001 then
Formats:=Formats+" 11.025kHz Stereo 16 bit"#13;
if ((WaveCaps.dwFormats shl (32-3)) shr 31) = $00000001 then
Formats:=Formats+" 11.025kHz Stereo 8 bit"#13;
if ((WaveCaps.dwFormats shl (32-2)) shr 31) = $00000001 then
Formats:=Formats+" 11.025kHz Mono 16 bit"#13;
if ((WaveCaps.dwFormats shl (32-1)) shr 31) = $00000001 then
Formats:=Formats+" 11.025kHz Mono 8 bit"#13;
ShowMessageFmt(S,[I,
WaveCaps.szPname,
WaveCaps.vDriverVersion,
WaveCaps.wMid,
WaveCaps.wPid,
WaveCaps.wChannels,
Formats]);
end;
end;


Sergunja   (2002-12-25 17:09:00) [3]

Блин! не выходит у меня ничего...кто нибудь примером может на мысль натолкнуть?


Sergunja   (2002-12-25 15:20:00) [4]

Спасибо! Щас гляну! а то с компонентами неохота


Opuhshii   (2002-12-25 14:55:00) [5]

посмотри там довольно понято MultimediaAPI WinSDK...

waveInGetDevCaps/XXXXXXGetDevCaps -"о аудио карте"...

mixerGetControlDetails - "Регулятор громкости Windows в положенн Mute"
mixerSetControlDetails - "его можно программно переключить!"...


Наверх

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