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

Вниз

регулировка звука(только не баньте тему плз)   Найти похожие ветки 

 
Змей ©   (2006-01-24 13:49) [0]

Доброго времени суток Мастера!
на конференции media мне уже 3 раза ничего не отвечали! вот мучаюсь уже с пол года! может быть ктонибудь знает? помогите чем могите:)
пользуюсь MediaPlayer"om
изменяю громкость звука в проге и в винде одновременно можно ли отдельно это делать?
Изменение громкости звуков в Windows

uses MMSystem;

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

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

procedure TForm1.Button1Click(Sender: TObject);
begin
Beep;
end;

procedure TForm1.Button2Click(Sender: TObject);
var LeftVolume: Word;
RightVolume: Word;
begin
LeftVolume := StrToInt(Edit1.Text);
RightVolume := StrToInt(Edit2.Text);
SetWaveVolume(MakeLong(LeftVolume, RightVolume));
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
Caption := IntToStr(GetWaveVolume);
end;

таким образом звук вырубается в винде. И нужно при нажатии клавиши ну к примеру “Тихо” вырубался звук, который проигрывается в tmediaplayer. И при нажатии еще раз звук обратно возвращался. Но при этом звук винды не изменялся. Потому как после закрытия приложения(например мы поставили на минимум), звук в винде тоже на минимуме.
Заранее Спасибо!!!


 
Digitman ©   (2006-01-24 14:07) [1]


> мучаюсь уже с пол года


За это время можно было прочитать кучу умных книжек и понять, что к чему есть на самом деле.


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


Нет в твоей "проге" никакой "громкости звука".
Используя tmediaplayer ты используешь MCI-интерфейс "винды", и с помощью этого интерфейса ты управляешь микшером, который един для ЛЮБЫХ программ, работающих под управлением ОС.


 
Змей ©   (2006-01-24 18:25) [2]

а можно ли какнидь в Media Player изменять громкость звука?
на Медиа спросил несколько раз раза 2 точно послали на...:)


 
Германн ©   (2006-01-24 18:46) [3]


> Змей ©   (24.01.06 18:25) [2]
>
> а можно ли какнидь в Media Player изменять громкость звука?
>  
> на Медиа спросил несколько раз раза 2 точно послали на..
> .:)

Можно.
Но нельзя изменить громкость только в нем! В любом случае громкость изменяется в Виндововском микшере.
Есть только возможность преобразовывать на лету поток медиа. Но это очень не просто!


 
Змей ©   (2006-01-24 20:21) [4]

блин опять в обломе :(((


 
МегаПупс   (2006-01-24 20:40) [5]

На не плач должно работать:)

var
 Form1: TForm1;
 volume: LongWord;

procedure TForm1.FormCreate(Sender: TObject);
begin
  volume := (TrackBar1.Position - TrackBar1.Max+1)* 6500;
  volume := volume +   (volume shl 16);
  waveOutSetVolume(WAVE_MAPPER,volume);
end;

procedure TForm1.TrackBar1Change(Sender: TObject);
begin
 volume := 6500* (TrackBar1.Max - TrackBar1.Position);
 volume := volume +   (volume shl 16);
 waveOutSetVolume(WAVE_MAPPER,volume);
end;


Не забудь mmSystem подключить:)
И вообще раз уж ты полгода надрывался мог готовый компонент скачать
я слышал таких уже много наделали. Но лучше конечно своими руками:)
Так что держи:)


 
Змей ©   (2006-01-25 01:09) [6]

пасиба но работает точно также как и тот код что я написал
блин


 
Змей ©   (2006-01-25 01:12) [7]

вот например в винампе регулирую звук, открываю виндовозовскую панель Volume control и там ничего не меняется
а тут если я закрыл свою прогу когда у меня звук на нуле и потом открываю винамп то ничего не слышу приходится лезть обратно Volume control  и увеличивать звук:( воть
ну лан буим думать


 
Змей ©   (2006-01-25 01:26) [8]

допустим даже понизил я громкость в 0 и сворачиваю программу и хочу открыть винамп или ченидь другое и послушать другую песню не трогая то что играет в моей программе :).
возможно ли это вообще с медиа плеером


 
ASoft   (2006-01-25 03:38) [9]

Поищи сторонние компоненты для работы со звуком. Наверняка найдешь что-то сногсшибательное и забудешь свои печали - 100%


 
Digitman ©   (2006-01-25 08:13) [10]


> вот например в винампе регулирую звук, открываю виндовозовскую
> панель Volume control и там ничего не меняется


потому что Winamp изменяет АЧХ звукового потока "на лету"


 
МегаПупс   (2006-01-25 08:43) [11]

Я говорю попробуй скачать готовый компонент.
Гугл тебе поможет:) могу дать прямой линк но я снего ничего не качал, поэтому не знаю насколько там компонент хороший:)

http://vabank3.narod.ru/com/volume.zip


 
Змей ©   (2006-02-04 01:56) [12]

этот компонент хороший! скачал и поставил DelphiX там есть DirectSound но он только wav юзает а делает то что нужно
вот если бы все форматы крутил было бы суппер



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

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

Наверх




Память: 0.5 MB
Время: 0.065 c
15-1138439436
Rentgen
2006-01-28 12:10
2006.02.19
Табло, наподобие уличных монохромных экранов.


2-1138555718
JEK2
2006-01-29 20:28
2006.02.19
TImage как рисовать поверх другой картинки?


2-1138653560
korban
2006-01-30 23:39
2006.02.19
Запуск программы только один раз


2-1138695523
Gydvin
2006-01-31 11:18
2006.02.19
Перебор


3-1135671102
alsov
2005-12-27 11:11
2006.02.19
Как сделать линк из MSSQL в Oracle