estrutura AM_SAMPLE2_PROPERTIES (strmif.h)
[O recurso associado a esta página, DirectShow, é um recurso herdado. Ele foi substituído por MediaPlayer, IMFMediaEngine e Captura de Áudio/Vídeo na 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 Captura de Áudio/Vídeo no 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 estrutura AM_SAMPLE2_PROPERTIES descreve as propriedades de um exemplo de mídia. A interface IMediaSample2 usa essa estrutura.
Sintaxe
typedef struct tagAM_SAMPLE2_PROPERTIES {
DWORD cbData;
DWORD dwTypeSpecificFlags;
DWORD dwSampleFlags;
LONG lActual;
REFERENCE_TIME tStart;
REFERENCE_TIME tStop;
DWORD dwStreamId;
AM_MEDIA_TYPE *pMediaType;
BYTE *pbBuffer;
LONG cbBuffer;
} AM_SAMPLE2_PROPERTIES;
Membros
cbData
Comprimento dos dados de propriedade, em bytes. Esse membro de estrutura é para extensibilidade.
dwTypeSpecificFlags
Sinalizadores específicos do tipo. Os sinalizadores são definidos separadamente para cada tipo de mídia. O valor padrão é AM_VIDEO_FLAG_INTERLEAVED_FRAME (zero). Os sinalizadores a seguir são usados para fluxos de vídeo. Eles são definidos no arquivo de cabeçalho dvdmedia.h.
Sinalizador | Significado |
---|---|
|
Use essa máscara para marcar se o exemplo é um campo ou um quadro. |
|
O exemplo é um quadro. (Use a máscara de bits AM_VIDEO_FLAG_FIELD_MASK para testar esse valor.) |
|
O exemplo é o campo 1. (Use a máscara de bits AM_VIDEO_FLAG_FIELD_MASK para testar esse valor.) |
|
O exemplo é o campo 2. (Use a máscara de bits AM_VIDEO_FLAG_FIELD_MASK para testar esse valor.) |
|
Se esse sinalizador estiver definido, exiba o campo 1 primeiro. Caso contrário, exiba o campo 2 primeiro. (Aplica-se somente quando há dois campos por exemplo.) |
|
Se esse sinalizador estiver definido, use o modo de tecelagem (ou seja, não desinterlacear o exemplo). Caso contrário, use o modo bob. Esse sinalizador só se aplica quando há dois campos por exemplo. |
|
Se esse sinalizador estiver definido, exiba o primeiro campo novamente depois de exibir o segundo campo. (Aplica-se somente quando há dois campos por exemplo.) |
|
Sinaliza o início de um VOBU durante a reprodução inversa do vídeo de DVD. Para obter mais informações, consulte Aprimoramentos de reprodução de DVD no Windows Vista. |
|
Sinaliza o fim de um VOBU durante a reprodução inversa do vídeo de DVD. O Navegador de DVD define esse sinalizador em um exemplo vazio para sinalizar o fim de um VOBU. Para obter mais informações, consulte Aprimoramentos de reprodução de DVD no Windows Vista. |
|
Para reprodução de DVD, indica o ponto no fluxo quando o decodificador deve aplicar uma nova chave CSS (Sistema de Embaralhamento de Conteúdo).
O Navegador de DVD define esse sinalizador em uma amostra de mídia vazia pouco antes de renegociar uma chave de título do CSS. Anteriormente, o DVD Navigator enviava incorretamente essa chave antes de negociar a chave de disco. A partir do Windows 7, se a propriedade AM_PROPERTY_DVDCOPY_SUPPORTS_NEW_KEYCOUNT do decodificador retornar TRUE, o Navegador de DVD não enviará esse sinalizador antes de negociar a chave de disco. Confira Conjunto de propriedades de proteção de cópia de DVD. |
Outros sinalizadores são definidos, mas não são usados no momento. Consulte dvdmedia.h.
dwSampleFlags
Combinação bit a bit de sinaliza o tipo de dados enumerado AM_SAMPLE_PROPERTY_FLAGS . Os bits indefinidos são reservados e devem ser zero.
lActual
Comprimento dos dados válidos no buffer.
tStart
Hora de início, se válida. O membro dwSampleFlags especifica se esse membro é válido.
tStop
Tempo de parada, se válido. O membro dwSampleFlags especifica se esse membro é válido.
dwStreamId
Stream identificador. Se o valor for AM_STREAM_MEDIA, o fluxo conterá dados de mídia. Se o valor for AM_STREAM_CONTROL, o fluxo conterá informações de controle. Os aplicativos podem definir valores de 0x80000000 ou superiores para uso próprio. (Consulte AM_SAMPLE_PROPERTY_FLAGS.)
pMediaType
Ponteiro para uma estrutura AM_MEDIA_TYPE que especifica o tipo de mídia se o formato tiver sido alterado. Se esse formato não tiver sido alterado, esse membro será NULL.
pbBuffer
Ponteiro para o buffer de exemplo.
cbBuffer
Tamanho do buffer de exemplo, em bytes.
Requisitos
Requisito | Valor |
---|---|
Cabeçalho | strmif.h (inclua Dshow.h) |