![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Регуляция громкости [D5, D7, Win95/98, WinME, NT4, Win2k, WinXP]
DrFox © (2003-09-14 03:43:00)
Госпада, подскажите как можно програмно отрегулировть громкость,
а то хочу написать регулятор громкости а незнаю как
Kirich (2003-10-08 15:41:00) [1]
2 Думкин ©
Тык, тык. А как менять так называемый "Volume Control"?
handra (2003-09-24 12:10:00) [2]
забросил в Кладовку->Готовые программы пример
DrFox (2003-09-23 20:41:00) [3]
Всем спосибо....
Kremen (2003-09-15 11:42:00) [4]
Я уже писал такую прогу, хотел аналок винампа сделать в детстве. но регулятор громкости реализован вместе с балансом. Есть также прога с поканальной регулировкой звука. Кому исходники надо - пишите на мыло
Думкин (2003-09-15 08:56:00) [5]
Только ты так не пиши, как приведено. Это коряво.
Главное - понять идею. Винды часто передают указатели, а не сами значения.
-=[SDA]=- (2003-09-15 08:41:00) [6]
Спасибо! (за совет в том числе) Дальше будем стараться! Просто я ещё молод :), а занимаюсь в основном базами.
Думкин (2003-09-15 08:34:00) [7]
Писал еще в ... давно в общем, посему так:
var i:pointer;
j:^word;
begin
WaveOutGetVolume(0,i);
j:=i;
Button1.Caption:="Громкость "+IntTostr(j^);
А типы надо бы знать, АПИшные функции все такие.
-=[SDA]=- (2003-09-15 08:27:00) [8]
Опять встала проблема: А как получить текущий уровень громкости?
Логично было бы предположить, что есть WaveOutGetVolume. А ведь и правдо есть! Но опять проблема с параметрами
HWAVEOUT hwo - номер устройства (как я понял)
LPDWORD pdwVolume, а вот что такое pdwVolume и что за тип LPDWORD. Скорее всего в эту переменную и возвращается значение текущего уровня громкости, но тогда как его отобразить, сравнить и вообще обрабатывать текущий уровень. А объявив переменную, типа LPDWORD и запустив WaveOutGetVolume(0,s) вообще получаю ошибку: Access violation at address... ну в общем ламер я в этих вещах. Помогите плз... Хочу разобраться :)
-=[SDA]=- (2003-09-15 07:21:00) [9]
Большое спасибо Думкин, оказывается все было просто, вот ни когда бы не подумал!.
Да поможет мне F1.
Zergling (2003-09-15 07:21:00) [10]
Если память не изменяет в кладовке когдато что то было!
Думкин (2003-09-15 07:15:00) [11]
WaveOutSetVolume(0,5000);
У тебя может быть несколько устройств вывода Wav.
WaveOutGetNumDevs
нумерация с нуля. И нажми F1 - иногда полезно.
-=[SDA]=- (2003-09-15 07:04:00) [12]
MMRESULT waveOutSetVolume(
HWAVEOUT hwo,
DWORD dwVolume
);
This parameter can also be a device identifier.
Чего то не могу понять что такое HWO и где его взять?
Может кто-нибудь напишет небольшой пример с запуском waveOutSetVolume.
ЗЫ: А звук у меня Avance AC"97
Заранее спасибо!
Zergling (2003-09-15 06:52:00) [13]
MS DirectX X SDK с примерами + MSDN в придачу
Думкин (2003-09-15 06:27:00) [14]
FDSS : IDirectSoundBuffer;
FDSS.SetVolume(-500);
> Юрий Ж. (14.09.03 23:48)
http://msdn.microsoft.com/directx
Юрий Ж. (2003-09-14 23:48:00) [15]
Ну хоть кто-нить дайте ссылку хоть на Help по директу!
Все говорят но никто ничего не делает :(((
APTEMKA (2003-09-14 21:18:00) [16]
А можно глянуть на код, тот что под директ
DrFox (2003-09-14 20:53:00) [17]
Я думаю включить поддержку всех
Думкин (2003-09-14 17:25:00) [18]
> [4] DrFox © (14.09.03 16:27)
Какая громкость?
Volume Control, Wave Control, MIDI Control.....
DrFox (2003-09-14 16:27:00) [19]
Мне как раз нужено чтобы громкость регулировалась во всей системе
Думкин (2003-09-14 16:08:00) [20]
Если программа твоя - то юзай ДиректХ - и меняй звук хоть в нескольких своих потоках.