Форум по Delphi программированию



Вернуться   Форум по Delphi программированию > Все о Delphi > Мультимедиа
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #16  
Старый 08.12.2014, 12:51
ProDaNTe ProDaNTe вне форума
Новичок
 
Регистрация: 25.12.2011
Сообщения: 75
Репутация: 10
По умолчанию

Alegun, спасибо за помощь вот так отрабатывает нормально

Код:
 VolumeTable      : Array[0..16]  of Integer = (-10000,-9000,-7500,-6500,-5500,-4500,-4000,-3000,-2000,-1000,-750,-500,-250,-125,-100,-50,0);


procedure TForm1.SetAudioStream(dsGraphBuilder: IGraphBuilder;  TrackID: Integer);
// Schaltet auf den angegebenen Kanal um
var
   pEnum : IEnumFilters;
   pFilter :IBaseFilter;
   cFetched : dword;
   CL:TGUID;
     i:integer;
     BA : IBasicAudio;
     z : integer;
  begin
i:=0;
   // Get filter enumerator
    dsGraphBuilder.EnumFilters(pEnum);
  while pEnum.Next(1, pFilter, @cFetched) = S_OK do
  begin
      pFilter.GetClassID(CL);
      if IsEqualGUID(CL,CLSID_DSoundRender) then
       begin
        If i<>TrackID then
         z:=0 else z:=16;

         pFilter.QueryInterface(IID_IBasicAudio,BA);
         BA.put_Volume(VolumeTable[z]);
         BA:=nil;
         inc(i);
       end;
      pFilter:=nil;
  end;
  pFilter:=nil;
  pEnum:=nil;
end;
Ответить с цитированием
Ответ



Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 23:54.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2021

ВКонтакте   Facebook   Twitter   Ссылка на Telegram