Freigeben über


Decoder-Lautstärkeregelung

[Das dieser Seite zugeordnete Feature DirectShow ist ein Legacyfeature. Es wurde durch MediaPlayer, IMFMediaEngine und Audio/Video Capture in Media Foundation ersetzt. Diese Features wurden für Windows 10 und Windows 11 optimiert. Microsoft empfiehlt dringend, dass neuer Code nach Möglichkeit MediaPlayer, IMFMediaEngine und Audio/Video Capture in Media Foundation anstelle von DirectShow verwendet. Microsoft schlägt vor, vorhandenen Code, der die Legacy-APIs verwendet, um nach Möglichkeit die neuen APIs zu verwenden.]

Anwendungen steuern die Audiolautstärke über die IBasicAudio-Schnittstelle . Für KSProxy wird ein IBasicAudio-Schnittstellenhandler bereitgestellt. Damit ein Decoder die Volumebefehle von KSProxy verarbeiten kann, muss er mehrere Registrierungsschlüssel im Setupskript hinzufügen und den KSPROPSETID_Wave-Eigenschaftssatz unterstützen.

Erstellen Sie einige neue Registrierungsschlüssel für den Treiber:

HKLM\SYSTEM\
  CurrentControlSet\Control
    DeviceClasses
      (decoder guid, eg 2721AE....)
        (Pnp id, eg ##?#VDGENDEV#...)
          #GLOBAL
            Device Parameters
              CLSID      REG_SZ   {17CCA...}
                FriendlyName   REG_SZ   WDM DVD Driver
                  Interfaces <--- create this key
                  {b9f8ac3e-0f71-11d2-b72c-00c04fb6bd3d} // Create this key.
    MediaInterfaces
      {b9f8ac3e-0f71-11d2-b72c-00c04fb6bd3d} // Create this key.
        (default)  REG_SZ   'KsProxy IBasicAudio handler' // Set this value.
        IID        REG_SZ   56 a8 68 b3 0a d4 11 ce b0 3a 00 20 af 0b a7 70 
                            // Create this key.

Um die Lautstärkeregelung zu implementieren, muss der Treiber auch KSPROPSETID_Wave sowie KsProperty.Id = KSPROPERTY_WAVE_VOLUME unterstützen. Diese Eigenschaft wird über die Methoden IKsPropertySet::Get und IKsPropertySet::Set an den Treiber übergeben. Die Felder LeftAttenuation und RightAttentuation geben die Lautstärken von links/rechts als lineare Werte von 0x0000 bis 0xffff an.

Decoderschnittstellen und -spezifikationen