AM_SAMPLE2_PROPERTIES estrutura (strmif.h)

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 da propriedade, em bytes. Esse membro da 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
AM_VIDEO_FLAG_FIELD_MASK
0x0003
Use essa máscara para verificar se o exemplo é um campo ou um quadro.
AM_VIDEO_FLAG_INTERLEAVED_FRAME
0x0000
O exemplo é um quadro. (Use a AM_VIDEO_FLAG_FIELD_MASK máscara de bits para testar esse valor.)
AM_VIDEO_FLAG_FIELD1
0x0001
O exemplo é o campo 1. (Use a AM_VIDEO_FLAG_FIELD_MASK máscara de bits para testar esse valor.)
AM_VIDEO_FLAG_FIELD2
0x0002
O exemplo é o campo 2. (Use a AM_VIDEO_FLAG_FIELD_MASK máscara de bits para testar esse valor.)
AM_VIDEO_FLAG_FIELD1FIRST
0x0004
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.)
AM_VIDEO_FLAG_WEAVE
0x0008
Se esse sinalizador estiver definido, use o modo de tecelagem (ou seja, não intercalar o exemplo). Caso contrário, use o modo bob. Esse sinalizador só se aplica quando há dois campos por exemplo.
AM_VIDEO_FLAG_REPEAT_FIELD
0x0040
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.)
AM_ReverseBlockStart
0x2
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.
AM_ReverseBlockEnd
0x4
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.
AM_UseNewCSSKey
0x1
Para reprodução de DVD, indica o ponto no fluxo quando o decodificador deve aplicar uma nova chave CSS (Content Scramble System).

O Dvd Navigator define esse sinalizador em um exemplo de mídia vazio pouco antes de renegociar uma chave de título do CSS.

Anteriormente, o Navegador de DVD 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. Consulte a propriedade Proteção de Cópia de DVD definida.

 

Outros sinalizadores são definidos, mas não são usados no momento. Consulte dvdmedia.h.

dwSampleFlags

Combinação bit a bit de sinalizadores AM_SAMPLE_PROPERTY_FLAGS tipo de dados enumerados. 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

Identificador de fluxo. 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 maior 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 foi 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

   
Cabeçalho strmif.h (inclua Dshow.h)

Confira também

Estruturas do DirectShow