Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.08.29;
Скачать: CL | DM;

Вниз

Звуковая карта   Найти похожие ветки 

 
darha ©   (2002-04-23 21:59) [0]

Помогите, пожалуйста! Есть ли у кого процедура, которая могла бы определить наличие звуковой карты на компьютере, чтобы исключить ошибку, при выполнения воспроизведения звукового файла. Заранее спасибо!


 
Anatoly Podgoretsky ©   (2002-04-23 22:23) [1]

waveOutGetNumDevs


 
Sergo ©   (2002-04-24 16:47) [2]

Вот примерный код:

uses Windows, MMSystem;
type
TModeDescr=record
mode: DWORD; // код режима работы
descr: string[32]; // словесное описание
end;

const
// массив содержит сопоставления режима работы и словесного описания
modes: array [1..12] of TModeDescr=((mode: WAVE_FORMAT_1M08; descr:"11.025 kHz, mono, 8-bit"),
(mode: WAVE_FORMAT_1M16; descr:"11.025 kHz, mono, 16-bit"),
(mode: WAVE_FORMAT_1S08; descr:"11.025 kHz, stereo, 8-bit"),
(mode: WAVE_FORMAT_1S16; descr:"11.025 kHz, stereo, 16-bit"),
(mode: WAVE_FORMAT_2M08; descr:"22.05 kHz, mono, 8-bit"),
(mode: WAVE_FORMAT_2M16; descr:"22.05 kHz, mono, 16-bit"),
(mode: WAVE_FORMAT_2S08; descr:"22.05 kHz, stereo, 8-bit"),
(mode: WAVE_FORMAT_2S16; descr:"22.05 kHz, stereo, 16-bit"),
(mode: WAVE_FORMAT_4M08; descr:"44.1 kHz, mono, 8-bit"),
(mode: WAVE_FORMAT_4M16; descr:"44.1 kHz, mono, 16-bit"),
(mode: WAVE_FORMAT_4S08; descr:"44.1 kHz, stereo, 8-bit"),
(mode: WAVE_FORMAT_4S16; descr:"44.1 kHz, stereo, 16-bit"));
procedure ShowInfo;
var
WaveNums, i, j: integer;
WaveInCaps: TWaveInCaps; // структура в которую помещается информация об устройстве
begin
WaveNums:=waveInGetNumDevs;
if WaveNums>0 then // если в системе есть устройства аудиоввода,то
begin
for i:=0 to WaveNums-1 do // получаем характеристики всех имеющихся устройств
begin
waveInGetDevCaps(i,@WaveInCaps,sizeof(TWaveInCaps));
// добавляем наименование устройства
MainForm.Memo.Lines.Add(PChar(@WaveInCaps.szPname));
for j:=1 to High(modes) do
begin
// выводим поддерживаемые устройством режимы работы
if (modes[j].mode and WaveInCaps.dwFormats)=modes[j].mode then
Memo.Lines.Add(modes[j].descr);
end;
end;
end;
end;



Страницы: 1 вся ветка

Текущий архив: 2002.08.29;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.01 c
3-95650
-=CrazyFish=-
2002-08-07 17:28
2002.08.29
UDF


3-95686
RDA
2002-08-08 11:50
2002.08.29
Использование справочников


4-96024
v0id
2002-06-25 22:04
2002.08.29
Внедрение DLL


1-95763
Olorin
2002-08-19 13:59
2002.08.29
Как реагировать на хот кей только при активной форме?


8-95918
darha
2002-04-23 21:59
2002.08.29
Звуковая карта