Compartilhar via


Interface ICodecAPI (strmif.h)

[O recurso associado a esta página, DirectShow, é um recurso herdado. Foi substituído por MediaPlayer, IMFMediaEngine e Audio/Video Capture in Media Foundation. Esses recursos foram otimizados para Windows 10 e Windows 11. A Microsoft recomenda fortemente que o novo código use MediaPlayer, IMFMediaEngine e Audio/Video Capture in Media Foundation em vez de DirectShow, quando possível. A Microsoft sugere que o código existente que usa as APIs herdadas seja reescrito para usar as novas APIs, se possível.]

A interface ICodecAPI define e recupera as configurações em um filtro de codificador ou decodificador.

Observação

ApIs declaradas em strmif.h não têm suporte para aplicativos Plataforma Universal do Windows (UWP). Para usar ICodecAPI em um aplicativo UWP, use a versão declarada em icodecapi.h.

Herança

A interface ICodecAPI herda da interface IUnknown . ICodecAPI também tem estes tipos de membros:

Métodos

A interface ICodecAPI tem esses métodos.

 
ICodecAPI::GetAllSettings

O método GetAllSettings obtém as propriedades atuais do codec e as grava em um fluxo. (ICodecAPI.GetAllSettings)
ICodecAPI::GetDefaultValue

O método GetDefaultValue obtém o valor padrão de uma propriedade codec. (ICodecAPI.GetDefaultValue)
ICodecAPI::GetParameterRange

O método GetParameterRange obtém o intervalo de valores de uma propriedade codec. (ICodecAPI.GetParameterRange)
ICodecAPI::GetParameterValues

O método GetParameterValues obtém a lista de valores possíveis para uma propriedade codec. (ICodecAPI.GetParameterValues)
ICodecAPI::GetValue

O método GetValue obtém o valor atual de uma propriedade codec.
ICodecAPI::IsModifiable

O método IsModifiable consulta se uma propriedade codec pode ser alterada, dada a configuração atual do codec. (ICodecAPI.IsModifiable)
ICodecAPI::IsSupported

O método IsSupported consulta se um codec dá suporte a uma determinada propriedade. (ICodecAPI.IsSupported)
ICodecAPI::RegisterForEvent

O método RegisterForEvent registra o aplicativo para receber eventos do codec. (ICodecAPI.RegisterForEvent)
ICodecAPI::SetAllDefaults

O método SetAllDefaults redefine todas as propriedades de codec para seus valores padrão. (ICodecAPI.SetAllDefaults)
ICodecAPI::SetAllDefaultsWithNotify

O método SetAllDefaultsWithNotify redefine todas as propriedades codec para seus valores padrão e retorna uma lista das propriedades que foram alteradas. (ICodecAPI.SetAllDefaultsWithNotify)
ICodecAPI::SetAllSettings

O método SetAllSettings lê as propriedades de codec de um fluxo e as define no codec. (ICodecAPI.SetAllSettings)
ICodecAPI::SetAllSettingsWithNotify

O método SetAllSettingsWithNotify lê propriedades codec de um fluxo, define-as no codec e retorna uma lista das propriedades que foram alteradas. (ICodecAPI.SetAllSettingsWithNotify)
ICodecAPI::SetValue

O método SetValue define o valor de uma propriedade codec. (ICodecAPI.SetValue)
ICodecAPI::SetValueWithNotify

O método SetValueWithNotify define uma propriedade em um codec e retorna uma lista de outras propriedades que foram alteradas como resultado. (ICodecAPI.SetValueWithNotify)
ICodecAPI::UnregisterForEvent

O método UnregisterForEvent cancela o registro do aplicativo para um evento de codificador especificado. (ICodecAPI.UnregisterForEvent)

Comentários

Essa interface define um mecanismo genérico para definir propriedades em um codec (codificador ou decodificador). Uma propriedade codec é um par chave/valor, em que a chave é um GUID e o valor é variant. A interpretação dos dados VARIANT depende do GUID da propriedade. Para obter uma lista de GUIDs da propriedade codec, consulte Propriedades da API do Codec.

Perfis do Codec

Os codecs podem, opcionalmente, armazenar informações de perfil e funcionalidade no registro do sistema. Essas informações permitem que os aplicativos consultem o dispositivo durante a enumeração do dispositivo. Os perfis padrão são armazenados na seguinte chave do Registro:
HKEY_LOCAL_MACHINE
   Software
      Classes
         CLSID
            Category
               Profiles
Cada perfil é uma chave do Registro cuja cadeia de caracteres padrão é uma descrição de texto do perfil. Cada valor tem um nome GUID, seguido por um valor de cadeia de caracteres que contém o valor guid numérico. Por exemplo:
C++
  HLKM\Software\Classes\CLSID\<category>\Profiles\DVD
    default "HQ DVD"
    REG_SZ {...} = "0"
    REG_SZ {...} = "1234"
em que {...} é um GUID de propriedade que o aplicativo pode mapear para sua interface do usuário. No momento, a Microsoft está considerando a definição de um conjunto de perfis padrão.

Os recursos de codec padrão são armazenados em HLKM\Software\Classes\CLSID< category>\Instance< Filtrar CLSID>\Capabilities. Cada valor tem um nome GUID, seguido por um valor de cadeia de caracteres que contém o valor guid numérico. Por exemplo:

C++
HLKM\Software\Classes\CLSID\<category>\Instance\<My DVD encoder>\Capabilities
     default "My DVD encoder"
     REG_SZ_MULTI {...}
em que {...} é um GUID de propriedade que o aplicativo pode mapear para sua interface do usuário.

Requisitos

   
Cliente mínimo com suporte Windows XP com SP2 [aplicativos da área de trabalho | Aplicativos UWP]
Servidor mínimo com suporte Windows Server 2003 R2 [aplicativos da área de trabalho | Aplicativos UWP]
Plataforma de Destino Windows
Cabeçalho strmif.h (inclua Dshow.h)

Confira também

Configurações do decodificador para Windows Media Center Edition

API do codificador