Модераторы: Snowy, Alexeis, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как выключить master volume в звуковой карте? 
:(
    Опции темы
Poseidon
Дата 9.6.2005, 21:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Delphi developer
****


Профиль
Группа: Комодератор
Сообщений: 5273
Регистрация: 4.2.2005
Где: Гомель, Беларусь

Репутация: нет
Всего: 133



Код
uses 
  MMSystem; 

function GetMasterMute( 
  Mixer: hMixerObj; 
  var Control: TMixerControl): MMResult; 
  // Returns True on success 
var 
  Line: TMixerLine; 
  Controls: TMixerLineControls; 
begin 
  ZeroMemory(@Line, SizeOf(Line)); 
  Line.cbStruct := SizeOf(Line); 
  Line.dwComponentType := MIXERLINE_COMPONENTTYPE_DST_SPEAKERS; 
  Result := mixerGetLineInfo(Mixer, @Line, 
    MIXER_GETLINEINFOF_COMPONENTTYPE); 
  if Result = MMSYSERR_NOERROR then 
  begin 
    ZeroMemory(@Controls, SizeOf(Controls)); 
    Controls.cbStruct := SizeOf(Controls); 
    Controls.dwLineID := Line.dwLineID; 
    Controls.cControls := 1; 
    Controls.dwControlType := MIXERCONTROL_CONTROLTYPE_MUTE; 
    Controls.cbmxctrl := SizeOf(Control); 
    Controls.pamxctrl := @Control; 
    Result := mixerGetLineControls(Mixer, @Controls, 
      MIXER_GETLINECONTROLSF_ONEBYTYPE); 
  end; 
end; 

procedure SetMasterMuteValue( 
  Mixer: hMixerObj; 
  Value: Boolean); 
var 
  MasterMute: TMixerControl; 
  Details: TMixerControlDetails; 
  BoolDetails: TMixerControlDetailsBoolean; 
  Code: MMResult; 
begin 
  Code := GetMasterMute(0, MasterMute); 
  if Code = MMSYSERR_NOERROR then 
  begin 
    with Details do 
    begin 
      cbStruct := SizeOf(Details); 
      dwControlID := MasterMute.dwControlID; 
      cChannels := 1; 
      cMultipleItems := 0; 
      cbDetails := SizeOf(BoolDetails); 
      paDetails := @BoolDetails; 
    end; 
    LongBool(BoolDetails.fValue) := Value; 
    Code := mixerSetControlDetails(0, @Details, 
MIXER_SETCONTROLDETAILSF_VALUE); 
  end; 
  if Code <> MMSYSERR_NOERROR then 
    raise Exception.CreateFmt('SetMasterMuteValue failure, '+ 
      'multimedia system error #%d', [code=delphi]); 
end; 


Example: 

Код

procedure TForm1.Button1Click(Sender: TObject); 
begin 
  SetMasterMuteValue(0, CheckBox1.Checked); // Mixer device #0 mute on/off 
end; 



--------------------
Если хочешь, что бы что-то работало - используй написанное, 
если хочешь что-то понять - пиши сам...
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Звук, графика и видео"
Girder
Snowy
Alexeis

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делится вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • По вопросам разработки игр стоит заглянуть сюда

FAQ раздела лежит здесь!


Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Girder, Snowy.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Звук, графика и видео | Следующая тема »


 




[ Время генерации скрипта: 0.0606 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.