Compartir a través de


Control de volumen de descodificador

[La característica asociada a esta página, DirectShow, es una característica heredada. Se ha reemplazado por MediaPlayer, IMFMediaEngine y Captura de audio/vídeo en Media Foundation. Esas características se han optimizado para Windows 10 y Windows 11. Microsoft recomienda encarecidamente que el nuevo código use MediaPlayer, IMFMediaEngine y Audio/Video Capture en Media Foundation en lugar de DirectShow, siempre que sea posible. Microsoft sugiere que el código existente que usa las API heredadas se reescriba para usar las nuevas API si es posible.

Las aplicaciones controlan el volumen de audio a través de la interfaz IBasicAudio . Se proporciona un controlador de interfaz IBasicAudio para KSProxy. Para que un descodificador controle los comandos de volumen de KSProxy, debe agregar varias claves del Registro en su script de instalación y admitir el conjunto de propiedades KSPROPSETID_Wave .

Cree algunas claves del Registro para el controlador:

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.

Para implementar el control de volumen, el controlador también debe admitir KSPROPSETID_Wave, junto con KsProperty.Id = KSPROPERTY_WAVE_VOLUME. Esta propiedad se pasa al controlador a través de los métodos IKsPropertySet::Get e IKsPropertySet::Set . Los campos LeftAttenuation y RightAttentuation especifican los volúmenes del altavoz izquierdo o derecho como valores lineales de 0x0000 a 0xffff.

Interfaces y especificaciones del descodificador