Partager via


structure AM_SAMPLE2_PROPERTIES (strmif.h)

[La fonctionnalité associée à cette page, DirectShow, est une fonctionnalité héritée. Il a été remplacé par MediaPlayer, IMFMediaEngine et Audio/Video Capture dans Media Foundation. Ces fonctionnalités ont été optimisées pour Windows 10 et Windows 11. Microsoft recommande vivement au nouveau code d’utiliser MediaPlayer, IMFMediaEngine et La capture audio/vidéo dans Media Foundation au lieu de DirectShow, lorsque cela est possible. Microsoft suggère que le code existant qui utilise les API héritées soit réécrit pour utiliser les nouvelles API si possible.]

La structure AM_SAMPLE2_PROPERTIES décrit les propriétés d’un exemple de média. L’interface IMediaSample2 utilise cette structure.

Syntaxe

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;

Membres

cbData

Longueur des données de propriété, en octets. Ce membre de structure est pour l’extensibilité.

dwTypeSpecificFlags

Indicateurs spécifiques au type. Les indicateurs sont définis séparément pour chaque type de média. La valeur par défaut est AM_VIDEO_FLAG_INTERLEAVED_FRAME (zéro). Les indicateurs suivants sont utilisés pour les flux vidéo. Ils sont définis dans le fichier d’en-tête dvdmedia.h.

Indicateur Signification
AM_VIDEO_FLAG_FIELD_MASK
0x0003
Utilisez ce masque pour case activée si l’exemple est un champ ou un cadre.
AM_VIDEO_FLAG_INTERLEAVED_FRAME
0x0000
L’exemple est un frame. (Utilisez le masque de bits AM_VIDEO_FLAG_FIELD_MASK pour tester cette valeur.)
AM_VIDEO_FLAG_FIELD1
0x0001
L’exemple est le champ 1. (Utilisez le masque de bits AM_VIDEO_FLAG_FIELD_MASK pour tester cette valeur.)
AM_VIDEO_FLAG_FIELD2
0x0002
L’exemple est le champ 2. (Utilisez le masque de bits AM_VIDEO_FLAG_FIELD_MASK pour tester cette valeur.)
AM_VIDEO_FLAG_FIELD1FIRST
0x0004
Si cet indicateur est défini, affichez d’abord le champ 1. Sinon, affichez d’abord le champ 2. (S’applique uniquement lorsqu’il existe deux champs par exemple.)
AM_VIDEO_FLAG_WEAVE
0x0008
Si cet indicateur est défini, utilisez le mode de tissage (autrement dit, ne désinterlacez pas l’exemple). Sinon, utilisez le mode bob. Cet indicateur s’applique uniquement lorsqu’il existe deux champs par exemple.
AM_VIDEO_FLAG_REPEAT_FIELD
0x0040
Si cet indicateur est défini, affichez à nouveau le premier champ après avoir affiché le deuxième champ. (S’applique uniquement lorsqu’il existe deux champs par exemple.)
AM_ReverseBlockStart
0x2
Signale le début d’un VOBU pendant la lecture inversée d’une vidéo DVD. Pour plus d’informations, consultez Améliorations de la lecture de DVD dans Windows Vista.
AM_ReverseBlockEnd
0x4
Signale la fin d’un VOBU pendant la lecture inversée d’une vidéo DVD. Le NAVIGATEUR DE DVD définit cet indicateur sur un exemple vide pour signaler la fin d’un VOBU. Pour plus d’informations, consultez Améliorations de la lecture de DVD dans Windows Vista.
AM_UseNewCSSKey
0x1
Pour la lecture de DVD, indique le point dans le flux où le décodeur doit appliquer une nouvelle clé CSS (Content Scramble System).

Le NAVIGATEUR DE DVD définit cet indicateur sur un exemple de média vide juste avant de renégocier une clé de titre CSS.

Auparavant, le NAVIGATEUR DVD envoyait incorrectement cette clé avant de négocier la clé de disque. À compter de Windows 7, si la propriété AM_PROPERTY_DVDCOPY_SUPPORTS_NEW_KEYCOUNT du décodeur retourne TRUE, le navigateur DVD n’envoie pas cet indicateur avant de négocier la clé de disque. Consultez Dvd Copy Protection Property Set.

 

D’autres indicateurs sont définis, mais pas actuellement utilisés. Consultez dvdmedia.h.

dwSampleFlags

Combinaison au niveau du bit des indicateurs AM_SAMPLE_PROPERTY_FLAGS type de données énuméré. Les bits non définis sont réservés et doivent être zéro.

lActual

Longueur des données valides dans la mémoire tampon.

tStart

Heure de début, si elle est valide. Le membre dwSampleFlags spécifie si ce membre est valide.

tStop

Arrêtez l’heure, si elle est valide. Le membre dwSampleFlags spécifie si ce membre est valide.

dwStreamId

identificateur Stream. Si la valeur est AM_STREAM_MEDIA, le flux contient des données multimédias. Si la valeur est AM_STREAM_CONTROL, le flux contient des informations de contrôle. Les applications peuvent définir des valeurs de 0x80000000 ou supérieures pour leur propre utilisation. (Voir AM_SAMPLE_PROPERTY_FLAGS.)

pMediaType

Pointeur vers une structure AM_MEDIA_TYPE qui spécifie le type de média si le format a changé. Si ce format n’a pas changé, ce membre a la valeur NULL.

pbBuffer

Pointeur vers l’exemple de mémoire tampon.

cbBuffer

Taille de l’exemple de mémoire tampon, en octets.

Configuration requise

Condition requise Valeur
En-tête strmif.h (include Dshow.h)

Voir aussi

DirectShow Structures