Interface ICodecAPI (strmif.h)
[O uso do recurso CodecAPI com do DirectShow não é mais recomendado. O uso do DirectShow foi substituído por MediaPlayer, IMFMediaEnginee Audio/Video Capture no Media Foundation. Esses recursos foram otimizados para Windows 11 e Windows 10. Em vez de do DirectShow, a Microsoft recomenda fortemente, quando possível, que o novo código use MediaPlayer, IMFMediaEnginee Audio/Video Capture no Media Foundation. A Microsoft sugere que o código existente que usa as APIs herdadas seja reescrito para usar as novas APIs, se possível.]
O ICodecAPI define e recupera as configurações em um filtro de codificador ou decodificador.
Nota
ApIs declaradas em strmif.h não têm suporte para aplicativos da 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 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ê as propriedades de 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) |
Observações
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 é um VARIANT. A interpretação dos dados VARIANT depende do GUID da propriedade. Para obter uma lista de GUIDs de propriedade codec, consulte de propriedades da API Codec.
Perfis 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 ProfilesCada 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" |
Os recursos de codec padrão são armazenados em HLKM\Software\Classes\CLSID< categoria>\Instance< Filtrar>DO 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 {...} |
Requisitos
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Windows XP com SP2 [aplicativos da área de trabalho | Aplicativos UWP] |
servidor com suporte mínimo | Windows Server 2003 R2 [aplicativos da área de trabalho | Aplicativos UWP] |
da Plataforma de Destino | Windows |
cabeçalho | strmif.h (inclua Dshow.h) |
Consulte também
- de codificação de vídeo D3D12
- anunciando o novo recurso do DirectX 12 – Codificação de vídeo!