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

Вниз

Громкость и эквалайзер   Найти похожие ветки 

 
Масяня ©   (2005-07-25 14:03) [0]

Господа, подскажите пожалуйста, как программно реализовать регулятор громкости и/или эквалайзера? Очень надо. Заранее благодарен


 
Antonn ©   (2005-07-25 19:35) [1]


> как программно реализовать регулятор громкости

function GetWaveVolume: DWord;
var
Woc : TWAVEOUTCAPS;
Volume : DWord;
begin
result:=0;
if WaveOutGetDevCaps(WAVE_MAPPER, @Woc, sizeof(Woc)) =
MMSYSERR_NOERROR then
if Woc.dwSupport and WAVECAPS_VOLUME = WAVECAPS_VOLUME then
begin
  WaveOutGetVolume(WAVE_MAPPER,@Volume);
  Result := Volume;
end;
end;

procedure SetWaveVolume(const AVolume: DWord);
var
Woc : TWAVEOUTCAPS;
begin
if WaveOutGetDevCaps(WAVE_MAPPER, @Woc, sizeof(Woc)) =
MMSYSERR_NOERROR then
if Woc.dwSupport and WAVECAPS_VOLUME = WAVECAPS_VOLUME then
WaveOutSetVolume(WAVE_MAPPER, AVolume);
end;

//??????????? ? ??????? Spin ? Gauge

procedure TForm1.SpinButton1DownClick(Sender: TObject);
begin
if Gauge1.Progress <> Gauge1.MinValue then
  begin
    Gauge1.Progress:= Gauge1.Progress-5;
    SetWaveVolume(MakeLong  (Gauge1.Progress*655,Gauge1.Progress*655));
  end;
end;

ЗЫ не мое, но работаеть


 
Irinka ©   (2005-07-26 07:31) [2]

Выставь на форму 2 тракбара и двигай их. Если у тебя звучит музыка, ты должен услышать изменения громкости правого и левого каналов.

procedure TForm1.TrackBar1Change(Sender: TObject);
var
s: dword;
a,b: word;
h: hWnd;
begin
a:=trackbar1.position;
b:=trackbar2.position;
s:=(a shl 16) or b;
waveOutSetVolume(h,s);
end;


 
Domkrat ©   (2005-08-19 13:40) [3]

А как реализовать эквалайзер, мож кто подскажет?


 
thaddy   (2005-08-19 13:53) [4]

If your soundcard supports hardware equalizer (not all do) you can use the TAudioMixer control by vit Kowalcik available from torry.
If it does not support hardware equalizer, you can use the DC_DSP components available from www.dsp-worx.de



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

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

Наверх




Память: 0.47 MB
Время: 0.076 c
2-1136978527
dr D
2006-01-11 14:22
2006.01.29
Как распарсить строку (WideString)?


2-1137198269
psyBNC
2006-01-14 03:24
2006.01.29
Помогите с базой данны)(


2-1137064344
Practicant
2006-01-12 14:12
2006.01.29
Узнать ширину текста...


6-1129475109
Klopan
2005-10-16 19:05
2006.01.29
узнать какая ОС стоит на удаленном IP


9-1124145529
keal
2005-08-16 02:38
2006.01.29
Отсечение невидимых граней в OpenGL