[BCB]Zmiana głośnosci.....

0

Witam.....

jak zmienic głośność w BCB??....

WaveOutSetVolume(); nie działa :(

0

Oto fragmencik z mojego odtwarzacza:

void TForm1::SetVolume(int proc1) {
   DWORD levels;
   WORD  lev1;
   double flev1;
   int    poziomnow,wyn;
   switch(TypMuz) {
      case MUZ_NONE:
         return;
      case MUZ_WAV:
      case MUZ_MID:
         flev1 = 15.0 * ((double)proc1 / 100.0);
         lev1 = (WORD)min( 15, (WORD)(flev1+0.5) );
         lev1 <<= 12;
         levels = MAKELONG(lev1,lev1);
         break;
      default:
         poziomnow = (int)((double)(proc1 * 10 + 0.5));
   }
   switch(TypMuz) {
      case MUZ_WAV:
         wyn = waveOutSetVolume((HWAVEOUT)DevId, levels);
         break;
      case MUZ_MID:
         wyn = midiOutSetVolume((HMIDIOUT)DevId, levels);
         break;
      default:
         wyn = MCIWndSetVolume(HwndMci,poziomnow);
   }
   if(wyn != 0) {
      char opis[1024],opurz[512],opbyk[512];
      MCIWndGetDevice(HwndMci,opurz,sizeof(opurz) );
      MCIWndGetError(HwndMci,opbyk, sizeof(opbyk) );
      wsprintf(opis,"NIEUDANE ustawienie poziomu na %d\n"
                    "dla urządzenia"%s"\n"
                    "DeviceID = %u\n\n"
                    "%s",
                     poziomnow,OpS(opurz),MP3Dev.deviceID(),opbyk);
      Application->MessageBox(opis,"BcbPlay - UWAGA !!!",MB_OK);
   } else {
      if(Vtest) {
         char opis[1024],opurz[512];
         MCIWndGetDevice(HwndMci, opurz,sizeof(opurz) );
         wsprintf(opis,"Zmiana poziomu na %d\n"
                       "dla urządzenia"%s"\n"
                       "DeviceID = %u\n\n",
                        poziomnow,OpS(opurz), MP3Dev.deviceID() );
         Application->MessageBox(opis,"BcbPlay - TEST !!!",MB_OK);
      }
   }
   PobierzVolume();
   return;
}

Działał pod 98 i XP

// Tag <c p="p"> - Q

1 użytkowników online, w tym zalogowanych: 0, gości: 1