Fixar Conjunto de Propriedades

[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.]

O conjunto de propriedades de pino retorna a categoria de pino para um pino em um filtro. A categoria é definida pelo filtro quando cria o pino; a categoria indica que tipo de dados o pino é entregue ou recebe por esse pino.

Rótulo Valor
GUID do Conjunto de Propriedades AMPROPSETID_Pin

 

ID da propriedade Descrição
AMPROPERTY_PIN_CATEGORY Especifica a categoria de um pino.

 

O DirectShow define as seguintes categorias de pino no arquivo de cabeçalho Uuids.h.

GUID de categoria Descrição
PIN_CATEGORY_ANALOGVIDEOIN Pino de entrada do filtro de captura que usa analógico e o digitaliza.
PIN_CATEGORY_CAPTURE Marcador de captura.
PIN_CATEGORY_CC Fixar fornecendo dados de legendagem oculta da Linha 21.
PIN_CATEGORY_EDS Fixar fornecendo Serviços de Dados Estendidos (Linha 21, campos pares).
PIN_CATEGORY_NABTS Fixar fornecendo dados do Videotext Standard norte-americano.
PIN_CATEGORY_PREVIEW Pino de visualização.
PIN_CATEGORY_STILL Fixar que fornece uma imagem parada. O pin de captura do filtro deve ser conectado antes que o pino de imagem ainda esteja conectado.
PIN_CATEGORY_TELETEXT Fixar fornecendo teletexto (uma variante de legendagem oculta).
PIN_CATEGORY_TIMECODE Fixar fornecendo dados de código de tempo.
PIN_CATEGORY_VBI Fixar fornecendo dados de intervalo de espaços em branco verticais.
PIN_CATEGORY_VIDEOPORT Pino de saída de vídeo a ser conectado ao pino de entrada zero no Mixer de Sobreposição.
PIN_CATEGORY_VIDEOPORT_VBI Fixe para ser conectado ao Alocador de Superfície de VBI, o filtro do alocador de superfície da VBI necessário para alocar a memória de vídeo correta para itens como sobreposições de legendas ocultas em cenários em que uma porta de vídeo está sendo usada. Cenários PCI, IEEE 1394 e USB não usam esse filtro.
PINNAME_VIDEO_CC_CAPTURE Pino de legendagem oculta de divisão de hardware

 

Esta propriedade é somente para leitura.

Código de exemplo

O código a seguir mostra como marcar se um pin dá suporte a esse conjunto de propriedades e, em caso afirmativo, como obter a categoria de pino:

HRESULT GetPinCategory(IPin *pPin, GUID *pPinCategory)
{
    IKsPropertySet *pKs = NULL;

    HRESULT hr = pPin->QueryInterface(IID_PPV_ARGS(&pKs));
    if (FAILED(hr))
    {
        return hr;
    }

    // Try to retrieve the pin category.
    DWORD cbReturned = 0;
    hr = pKs->Get(AMPROPSETID_Pin, AMPROPERTY_PIN_CATEGORY, NULL, 0, 
        pPinCategory, sizeof(GUID), &cbReturned);
    
    // If this succeeded, pPinCategory now contains the category GUID.

    SafeRelease(&pKs);
    return hr;
}

Observação

Este exemplo usa a função SafeRelease para liberar ponteiros de interface.

 

Requisitos de fixação para filtros de captura

Conjuntos de propriedades

Trabalhando com categorias de pino