Interface IMFPluginControl (mfobjects.h)
Controla como as fontes e transformações de mídia são enumeradas no Microsoft Media Foundation.
Para obter um ponteiro para essa interface, chame MFGetPluginControl.
Herança
A interface IMFPluginControl herda da interface IUnknown . IMFPluginControl também tem estes tipos de membros:
Métodos
A interface IMFPluginControl tem esses métodos.
IMFPluginControl::GetDisabledByIndex O IMFPluginControl::GetDisabledByIndex (mfobjects.h) obtém um CLSID (identificador de classe) da lista bloqueada. |
IMFPluginControl::GetPreferredClsid Pesquisa na lista preferencial um CLSID (identificador de classe) que corresponda a um nome de chave especificado. |
IMFPluginControl::GetPreferredClsidByIndex O método IMFPluginControl::GetPreferredClsidByIndex (mfobjects.h) obtém um CLSID (identificador de classe) da lista preferencial, especificado pelo valor de índice. |
IMFPluginControl::IsDisabled Consulta se um CLSID (identificador de classe) aparece na lista bloqueada. (IMFPluginControl.IsDisabled) |
IMFPluginControl::SetDisabled Adiciona um CLSID (identificador de classe) à lista bloqueada ou remove um CLSID da lista. (IMFPluginControl.SetDisabled) |
IMFPluginControl::SetPreferredClsid Adiciona um CLSID (identificador de classe) à lista preferencial ou remove um CLSID da lista. (IMFPluginControl.SetPreferredClsid) |
Comentários
O Media Foundation fornece um conjunto de fontes de mídia e decodificadores internos. Os aplicativos podem enumerá-los da seguinte maneira:
- As fontes de mídia são enumeradas por meio do Resolvedor de Origem.
- Transformações, como decodificadores, são enumeradas por meio das funções MFTEnum e MFTEnumEx .
Terceiros podem implementar suas próprias fontes de mídia e decodificadores personalizados e registrá-los para enumeração para que outros aplicativos possam usá-los.
Para controlar a ordem de enumeração, o Media Foundation mantém duas listas de CLSIDs em todo o processo: uma lista preferencial e uma lista bloqueada. Um objeto cujo CLSID aparece na lista preferencial aparece primeiro na ordem de enumeração. Um objeto cujo CLSID aparece na lista bloqueada não é enumerado.
As listas são inicialmente populadas do registro. Os aplicativos podem usar a interface IMFPluginControl para modificar as listas do processo atual.
A lista preferencial contém um conjunto de pares chave/valor, em que as chaves são cadeias de caracteres e os valores são CLSIDs. Esses pares chave/valor são definidos da seguinte maneira:
- Para fontes de mídia, o nome da chave é uma extensão de nome de arquivo, um esquema de protocolo ou um tipo MIME. O valor é o CLSID de um manipulador de esquema ou manipulador de fluxo de bytes para essa fonte de mídia.
- Para decodificadores, o nome da chave é um GUID de subtipo de mídia na forma de cadeia de caracteres canônica. (Para obter mais informações sobre subtipos de mídia, consulte Tipos de mídia.) O valor é o CLSID da MFT (transformação do Media Foundation) que implementa o decodificador.
- Extensão de arquivo: ".wmv"
- Esquema: "http:"
- Tipo MIME: "video/mp4"
- Subtipo de mídia: "{47504A4D-0000-0010-8000-00AA00389B71}"
A lista bloqueada contém uma lista de CLSIDs. Para enumerar a lista inteira, chame o método IMFPluginControl::GetDisabledByIndex em um loop. Para marcar se um CLSID específico aparece na lista, chame o método IMFPluginControl::IsDisabled.
Requisitos
Cliente mínimo com suporte | Windows 7 [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows Server 2008 R2 [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | mfobjects.h (include Mfidl.h) |