Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Мультимедиа в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.12.2011, 00:17   #11
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,713
По умолчанию

...вывести что?
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation
raxp вне форума Ответить с цитированием
Старый 05.12.2011, 18:44   #12
KWN, lnc
Delphi 7
Форумчанин
 
Аватар для KWN, lnc
 
Регистрация: 10.02.2009
Сообщений: 354
По умолчанию

как реализовать данную возможность?
Дайте мне власть и я переверну ваш мир!...
KWN, lnc вне форума Ответить с цитированием
Старый 05.12.2011, 21:45   #13
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,713
По умолчанию

Ответ уже дан выше.
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation
raxp вне форума Ответить с цитированием
Старый 06.12.2011, 10:50   #14
KWN, lnc
Delphi 7
Форумчанин
 
Аватар для KWN, lnc
 
Регистрация: 10.02.2009
Сообщений: 354
По умолчанию

а исходник можно?
Дайте мне власть и я переверну ваш мир!...
KWN, lnc вне форума Ответить с цитированием
Старый 06.12.2011, 21:08   #15
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

используйте BASS, примеров масса по нему и изменение громкости и воспроизведение.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 08.12.2011, 21:49   #16
KWN, lnc
Delphi 7
Форумчанин
 
Аватар для KWN, lnc
 
Регистрация: 10.02.2009
Сообщений: 354
По умолчанию

все равно ничего не могу сделать. выведите меня из-этого замкнутого круга
Дайте мне власть и я переверну ваш мир!...
KWN, lnc вне форума Ответить с цитированием
Старый 09.12.2011, 10:38   #17
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,713
По умолчанию

...вместе в BASS включается хороший HELP и готовые демки.
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation
raxp вне форума Ответить с цитированием
Старый 13.12.2011, 00:51   #18
KWN, lnc
Delphi 7
Форумчанин
 
Аватар для KWN, lnc
 
Регистрация: 10.02.2009
Сообщений: 354
По умолчанию

скачал компонент и посмотрел все демки. нет ни одного нормального примера! там пролько проигрыватели mp3 и радио
Дайте мне власть и я переверну ваш мир!...
KWN, lnc вне форума Ответить с цитированием
Старый 22.12.2011, 09:56   #19
Aliens_wolfs
Форумчанин
 
Регистрация: 16.12.2009
Сообщений: 902
По умолчанию

Передавать окну игры громкость не для всех игр может получится методами PostMessage отправляя сообщения окну, например в игре CS я так и не смог подобраться этими методами до изменения определенных параметров.

Вот простой пример, таймер следит что игра загружена и меняет общую громкость на нужную, если игра закрыта то нужная громкость возвращается.
Может этот пример тебе подойдет.
Либо следить как уже предлогалось по активности окна методом GetForegroundWindow но тогда нужно доработать мой код ловить Хендел в таймере а затем менять громкость.

В свой проект добавь в uses MMSystem, TlHelp32;
Код:
implementation

{$R *.dfm}

//Процедура подтверждающая что нужная программа загружена или нет
Function ProcessExists(ExeFileName: String): Boolean;
Var
ContinueLoop: Bool;
FSnapshotHandle: THandle;
FProcessEntry32: TProcessEntry32;
Begin
Result:=False;
FSnapshotHandle:=CreateToolHelp32Snapshot(TH32CS_SNAPPROCESS,0);
FProcessEntry32.DwSize:=SizeOf(FProcessEntry32);
ContinueLoop:=Process32First(FSnapshotHandle,FProcessEntry32);
While Integer(ContinueLoop) <> 0 Do
Begin
If ((AnsiUpperCase(ExtractFileName(FProcessEntry32.SzExeFile)) =
AnsiUpperCase(ExeFileName)) Or (AnsiUpperCase(FProcessEntry32.SzExeFile) =
AnsiUpperCase(ExeFileName))) Then
Begin
Result:=True;
End;
ContinueLoop:=Process32Next(FSnapshotHandle,FProcessEntry32);
End;
CloseHandle(FSnapshotHandle);
End;

//Процедура для изменения общей громкости левого и правого каналов
procedure SetVolume(const volL, volR: Word);
 var
   hWO: HWAVEOUT;
   waveF: TWAVEFORMATEX;
   vol: DWORD;
 begin
   // init TWAVEFORMATEX
  FillChar(waveF, SizeOf(waveF), 0);
   // open WaveMapper = std output of playsound
  waveOutOpen(@hWO, WAVE_MAPPER, @waveF, 0, 0, 0);
   vol := volL + volR shl 16;
   // set volume
  waveOutSetVolume(hWO, vol);
   waveOutClose(hWO);
 end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
//Следим за загрузкой игры, имя игры введи ниже и подбери нужную громкость меняя значения в параметре SetVolume
If ProcessExists('твоя игра.exe') then
SetVolume(10000, 10000) //Громкость когда игра загружена
else
SetVolume(65000, 65000); //Громкость когда игра закрыта
end;

Последний раз редактировалось Aliens_wolfs; 22.12.2011 в 14:31.
Aliens_wolfs вне форума Ответить с цитированием
Старый 25.12.2011, 21:39   #20
KWN, lnc
Delphi 7
Форумчанин
 
Аватар для KWN, lnc
 
Регистрация: 10.02.2009
Сообщений: 354
По умолчанию

у меня чета не пашет! (( регулирует только окошко проекта
Дайте мне власть и я переверну ваш мир!...
KWN, lnc вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как выключить компъютер команлдой в С++ angelada Помощь студентам 10 19.01.2011 19:47
Как в окне delphi открыть приложение word Juliya_1_04 Компоненты Delphi 5 04.10.2010 22:36
Как выключить один из двух мониторов? Silentdi Общие вопросы Delphi 3 17.09.2010 14:02
Как програмно выключить комп?? Дима я Общие вопросы Delphi 3 23.10.2009 00:14
как выключить/перезагрузить компьютер motaro Паскаль, Turbo Pascal, PascalABC.NET 1 28.03.2008 02:01