DXVA_PictureParameters-Struktur (dxva.h)

Die DXVA_PictureParameters Struktur wird vom Hostdecoder an den Accelerator gesendet, um die Parameter auf Bildebene eines komprimierten Bilds für die Decodierung auf dem Beschleuniger bereitzustellen.

Syntax

typedef struct _DXVA_PictureParameters {
  WORD wDecodedPictureIndex;
  WORD wDeblockedPictureIndex;
  WORD wForwardRefPictureIndex;
  WORD wBackwardRefPictureIndex;
  WORD wPicWidthInMBminus1;
  WORD wPicHeightInMBminus1;
  BYTE bMacroblockWidthMinus1;
  BYTE bMacroblockHeightMinus1;
  BYTE bBlockWidthMinus1;
  BYTE bBlockHeightMinus1;
  BYTE bBPPminus1;
  BYTE bPicStructure;
  BYTE bSecondField;
  BYTE bPicIntra;
  BYTE bPicBackwardPrediction;
  BYTE bBidirectionalAveragingMode;
  BYTE bMVprecisionAndChromaRelation;
  BYTE bChromaFormat;
  BYTE bPicScanFixed;
  BYTE bPicScanMethod;
  BYTE bPicReadbackRequests;
  BYTE bRcontrol;
  BYTE bPicSpatialResid8;
  BYTE bPicOverflowBlocks;
  BYTE bPicExtrapolation;
  BYTE bPicDeblocked;
  BYTE bPicDeblockConfined;
  BYTE bPic4MVallowed;
  BYTE bPicOBMC;
  BYTE bPicBinPB;
  BYTE bMV_RPS;
  BYTE bReservedBits;
  WORD wBitstreamFcodes;
  WORD wBitstreamPCEelements;
  BYTE bBitstreamConcealmentNeed;
  BYTE bBitstreamConcealmentMethod;
} DXVA_PictureParameters, *LPDXVA_PictureParameters;

Member

wDecodedPictureIndex

Gibt den Zielframepuffer für die decodierten Makroblöcke an.

wDeblockedPictureIndex

Gibt den Zielrahmenpuffer für das entblockte Ausgabebild an, wenn bPicDeblocked 1 ist. Dieses Element hat keine Bedeutung und muss null sein, wenn bPicDeblocked null ist. Dieses Element kann mit wDecodedPictureIndex identisch sein.

wForwardRefPictureIndex

Gibt den Framepufferindex des Bilds an, das als Referenzbild für die Vorwärtsvorhersage des aktuellen Bilds verwendet werden soll. Darf nicht mit wDecodedPictureIndex identisch sein. Dieses Element muss 0xFFFF sein, wenn bPicIntra 1 ist.

wBackwardRefPictureIndex

Gibt den Framepufferindex des Bilds an, das als Referenzbild für die Rückwärtsvorhersage des aktuellen Bilds verwendet werden soll. Dieses Element darf nicht mit wDecodedPictureIndex identisch sein, wenn die Rückwärtsverweisbewegungsvorhersage verwendet wird. Dieses Element muss 0xFFFF werden, wenn bPicBackwardPrediction null ist.

wPicWidthInMBminus1

Gibt die Breite des aktuellen Bilds in Einheiten von Makroblocks an, minus 1. Die Breite des Bilds in Makroblocks wird durch Hinzufügen von 1 zu wPicWidthInMBminus1 abgeleitet.

wPicHeightInMBminus1

Gibt die Höhe des aktuellen Bilds in Einheiten von Makroblocks an, minus 1. Die Höhe des Bilds in Makroblocks wird durch Hinzufügen von 1 zu wPicHeightInMBminus1 abgeleitet.

bMacroblockWidthMinus1

Gibt die Breite der Zielleuchtigkeit eines Makroblocks (minus 1) an. Dies entspricht 15 für MPEG-1, MPEG-2, H.263 und MPEG-4.

bMacroblockHeightMinus1

Gibt die Zielleuchtigkeitsbeispielhöhe eines Makroblocks an, minus 1. Dies entspricht 15 für MPEG-1, MPEG-2, H.261, H.263 und MPEG-4.

bBlockWidthMinus1

Gibt die Blockbreite eines Restdifferenzblocks minus 1 an. Dies entspricht 7 für MPEG-1, MPEG-2, H.261, H.263 und MPEG-4. Dies ist 7, wenn das bConfig4GroupedCoefs-Element der DXVA_ConfigPictureDecode-Struktur 1 ist. Restdifferenzblöcke innerhalb eines Makroblocks werden in der reihenfolge gesendet, die in MPEG-2 Abbildungen 6-10 angegeben ist. 6-11 und 6-12 (Rasterscanreihenfolge für Y, gefolgt von allen 4:2:0 Blöcken von Cb in Raster-Scan-Reihenfolge, gefolgt von 4:2:0 Blöcken von Cr, gefolgt von 4:2:2:2 Blöcken von Cb, gefolgt von 4:2:2:2 Blöcken von Cr, gefolgt von 4:4:4:4 Blöcken von Cb, gefolgt von 4:4:4 Blöcken von Cr). Ein abgeleiteter Begriff namens WT wird durch Hinzufügen von 1 zu bBlockWidthMinus1 gebildet.

bBlockHeightMinus1

Gibt die Blockhöhe eines Restdifferenzblocks an, minus 1. Dies entspricht 7 für MPEG-1, MPEG-2, H.261, H.263 und MPEG-4. Dies ist 7, wenn bConfig4GroupedCoefs 1 ist. Ein abgeleiteter Begriff namens HT wird durch Hinzufügen von 1 zu bBlockHeightMinus1 gebildet.

bBPPminus1

Gibt die Anzahl der Bits pro Pixel für die Videobeispielwerte an, minus 1. Dies ist mindestens 7 (gibt 8-Bit-Pixel an). Dies entspricht 7 für MPEG-1, MPEG-2, H.261 und H.263. In einigen Betriebsmodi von MPEG-4 wird eine größere Anzahl von Bits pro Pixel unterstützt. Ein abgeleiteter Begriff namens BPP wird durch Hinzufügen von 1 zu bBPPminus1 gebildet.

bPicStructure

Gibt an, ob es sich bei dem aktuellen Bild um ein Bild im oberen Feld (Wert 1), ein Unterfeldbild (wert 2) oder um ein Rahmenbild (wert 3) handelt. Bei der framestrukturierten Progressive Scan-Codierung wie in H.261 ist bPicStructure 3. Ein abgeleiteter Wert PicCurrentField wird als null definiert, es sei denn , bPicStructure ist 2 (unteres Feld). In diesem Fall ist es 1. Dieses Element hat dieselbe Bedeutung wie die picture_structure Variable, die in Abschnitt 6.3.10 und Tabelle 6-14 von MPEG-2 (H.262) definiert ist.

bSecondField

Gibt an, ob bei feldstrukturierter Codierung (wenn bPicStructure 1 oder 2 ist) das aktuelle Feld das zweite Feld eines Bilds ist. Dies wird verwendet, um zu bestimmen, ob das Gegenparitätsfeld, das als Verweis für die Gegenparitätslinien für die Bewegungskompensationsvorhersage verwendet wird, das Gegenparitätsfeld des Referenzbilds oder das Gegenüberparitätsfeld des aktuellen Bilds ist. Wenn bSecondField 1 ist, ist das aktuelle Feld das zweite Feld eines Bilds, und das Feld, das als Verweis für die Gegenparitätslinien für die Bewegungskompensation verwendet wird, sind die gegensätzigen Paritätslinien des aktuellen Bilds. (In beiden Fällen sind das Feld, das als Verweis für die Gleichen Paritätslinien für die Bewegungskompensation verwendet wird, die gleichen Paritätslinien des Referenzbilds.) Andernfalls ist bSecondField 0.

bPicIntra

Gibt an, ob für dieses Bild eine bewegungskompensierte Vorhersage erforderlich ist. Wenn bPicIntra 1 ist, werden alle Makroblocks entweder mit der DXVA_MBctrl_I_OffHostIDCT_1 oder DXVA_MBctrl_I_HostResidDiff_1 Makroblock-Steuerungsstruktur gesendet, in der das IntraMacroblock-Flag gleich 1 ist. Das heißt, es wird keine bewegungskompensierte Vorhersage für das Bild durchgeführt. Andernfalls verfügen einige Makroblöcke des Bilds möglicherweise über den IntraMacroblock-Parameter des Makroblock-Steuerelementbefehls gleich 0, und die Struktur des Makroblock-Steuerelements verwendet die DXVA_MBctrl_P_HostResidDiff_1-Struktur oder die DXVA_MBctrl_P_OffHostIDCT_1-Struktur .

bPicBackwardPrediction

Gibt an, ob Makroblocks des aktuellen Bilds eine Rückwärtsvorhersage enthalten können. Wenn bPicIntra 1 ist, muss bPicBackwardPrediction null sein. Wenn bPicBackwardPrediction null ist, muss MotionBackward in allen Makroblocksteuerungsbefehlen des Bilds null sein (innerhalb jeder DXVA_MBctrl_I_HostResidDiff_1-, DXVA_MBctrl_I_OffHostIDCT_1-, DXVA_MBctrl_P_HostResidDiff_1- oder DXVA_MBctrl_P_OffHostIDCT_1-Struktur). Wenn bPicBackwardPrediction 1 ist, können einige Makroblöcke des Bilds MotionBackward gleich 1 aufweisen.

bBidirectionalAveragingMode

Gibt die Rundungsmethode zum Kombinieren von Vorhersageebenen in der bidirektionalen Bewegungskompensation an (wird für B-Bilder und Dual-Prime-Bewegungen verwendet). Der Wert 0 gibt mpeg-1 und MPEG-2 gerundete Mittelung an (bei der Werte auf halbem Weg zwischen zwei ganzen Zahlen auf die nächsthöhere ganze Zahl gerundet werden), und der Wert 1 gibt H.263 abgeschnittene Mittelung an (bei der Werte auf halbem Weg zwischen zwei ganzen Zahlen nach unten gerundet werden). bBidirectionalAveragingMode muss 0 sein, wenn keine bidirektionale Mittelung erforderlich ist.

bMVprecisionAndChromaRelation

Dieses Element gibt die Genauigkeit von Luminance-Bewegungsvektoren an und wie Chrominanz-Bewegungsvektoren von Luminance-Bewegungsvektoren abgeleitet werden.

In der folgenden Tabelle sind Werte für dieses Element mit der angegebenen Genauigkeit des Luminance-Bewegungsvektors und eine Beschreibung der Ableitung der Chrominanzbewegungsvektoren aufgeführt.

Wert Beschreibung
0 Luminance-Bewegungsvektoren haben eine Halbe Samplegenauigkeit. Chrominanz-Bewegungsvektoren werden von Luminance-Bewegungsvektoren gemäß MPEG-2 (H.262) abgeleitet.
1 Luminance-Bewegungsvektoren haben eine Halbe Samplegenauigkeit. Chrominanz-Bewegungsvektoren werden von Luminance-Bewegungsvektoren gemäß H.263 abgeleitet.
2 Luminance-Bewegungsvektoren verfügen über eine vollständige Stichprobengenauigkeit. Chrominanz-Bewegungsvektoren werden von Luminance-Bewegungsvektoren gemäß H.261 abgeleitet (dividiert durch zwei und abgeschnitten in Richtung 0 zu Vollprobenwerten).
3 Reserviert.

bChromaFormat

Wirkt sich auf die Anzahl der vom Accelerator erwarteten Vorhersagefehlerblöcke aus. Diese Variable ist in MPEG-2 (H.262) definiert. Für MPEG-1, MPEG-2 Main Profile, H.261 und H.263-Bitstreams muss dieser Wert immer auf 1 festgelegt werden, was das Format 4:2:0 angibt. Wenn ein Wert von 2 ist, gibt dies 4:2:2 an, und wenn ein Wert von 3 ist, gibt die Stichprobenerstellung 4:4:4 an. Dieser Member muss gleich 1 sein, wenn das bConfig4GroupedCoefs-Element von DXVA_ConfigPictureDecode 1 ist (da der bConfig4GroupedCoefs-Vorgang nicht die EOB-Angabe enthält, die innerhalb der Koeffizientendaten in den Formaten 4:2:2 und 4:4:4 erforderlich ist).

Hinweis

Die horizontale Farbigkeit unterscheidet sich geringfügig zwischen H.261, H.263 und MPEG-1 im Vergleich zu MPEG-2 und MPEG-4. Es wird angenommen, dass dieser Unterschied klein genug ist, um sie zu ignorieren.

bPicScanFixed

Bei Verwendung der acceleratorbasierten IDCT-Verarbeitung von Restdifferenzblöcken gibt der Wert 1 für dieses Flag an, dass die Inverse-Scan-Methode für alle Makroblocks im Bild identisch ist. Ein Wert von 0 gibt an, dass er nicht ist. Dieser Member muss 1 sein, wenn der bConfigHostInverseScan-Member 1 ist oder wenn der bConfigResidDiffAccelerator-Member in DXVA_ConfigPictureDecode 0 ist.

bPicScanMethod

Gibt die fixed inverse Scan-Methode für das Bild an, wenn bPicScanFixed 1 ist. Wenn bPicScanFixed null ist, hat dieses Element keine Bedeutung und muss den Wert 0 aufweisen.

Wenn das bConfigHostInverseScan-Element von DXVA_ConfigPictureDecode 0 ist, kann die von diesem Member definierte Scanmethode eine der folgenden sein.

bPicScanMethod Überprüfungsmethode
0 Zickzackscan (MPEG-2)
1 Alternative vertikale Überprüfung (MPEG-2)
2 Alternative horizontale Überprüfung (H.263)

Wenn das bConfigHostInverseScan-Element von DXVA_ConfigPictureDecode 1 ist, muss die von bPicScanMethod definierte Scanmethode wie folgt festgelegt werden.

bPicScanMethod Überprüfungsmethode
3 Beliebiger Scan mit absoluter Koeffizientenadresse.

bPicReadbackRequests

Gibt an, ob Rücklesesteuerungsanforderungen für das aktuelle Bild ausgegeben werden. Der Wert 1 gibt an, dass Rückleseanforderungen vorhanden sind, und der Wert 0 gibt an, dass sie nicht sind. Rückleseanforderungen geben an, dass Werte von Makroblocks im endgültigen decodierten und deblockierten Bild zurückgelesen werden (wenn die Deblockierung mit wDeblockedPictureIndex gleich wDecodedPictureIndex angewendet wird).

bRcontrol

Definiert die Rundungsmethode, die für die Bewegungskompensation in der Hälfte der Stichproben verwendet werden soll. Diese Variable ist in H.263 Abschnitt 6.1.2 definiert. Ein Wert von 0 gibt die Halbstichrundenmethode in MPEG-1, MPEG-2 und der ersten Version von H.263 an. Der Wert 1 gibt die Rundungsmethode an, die eine Mittelwertverzerrung nach unten enthält, die in einigen optionalen Modi von H.263 und MPEG-4 ausgewählt werden kann. Für H.261 ist dies bedeutungslos, da H.261 keine Kompensation der Halbprobebewegung aufweist. Er muss für alle MPEG-1- und MPEG-2-Bitstreams auf Null festgelegt werden, um dem in diesen Standards definierten Rundungsoperator zu entsprechen.

bPicSpatialResid8

Gibt an, wie Blöcke mit räumlichen Domänenunterschieden vom Host an den Accelerator gesendet werden. Der Wert 1 gibt an, dass Blöcke mit räumlicher Domänendifferenz für die hostbasierte Restdifferenzdecodierung mithilfe von 8-Bit-Beispielen gesendet werden können, und der Wert 0 gibt an, dass dies nicht möglich ist.

Dieser Member muss 0 sein, wenn das bConfigResidDiffHost-Element von DXVA_ConfigPictureDecode 0 ist oder wenn BPP größer als 8 ist. Dieser Member muss 1 sein, wenn BPP 8, bPicIntra 1 und bConfigResidDiffHost 1 ist. Dieser Member muss 1 sein, wenn das bConfigSpatialResid8-Element von DXVA_ConfigPictureDecode 1 ist.

Wenn dieser Member gleich 1 ist, werden räumliche Domänen-Intra-Makroblocks als 8-Bit-Werte gesendet (die entweder signiert oder unsigned sind, wie durch das bConfigIntraResidUnsigned-Element von DXVA_ConfigPictureDecode bestimmt), und räumliche Domänen-Nonintra-Makroblockunterschiede werden als 8-Bit-Differenzwerte im Verhältnis zu einer motion-kompensationsbasierten Vorhersage gesendet.

Das bPicSpatialResid8-Element unterscheidet sich vom bConfigSpatialResid8-Member von DXVA_ConfigPictureDecode darin, dass es sich um einen Hinweis für ein bestimmtes Bild und nicht um einen globalen Hinweis für die gesamte Videosequenz handelt. In einigen Fällen, z. B. in einem Intra-Bild mit BPP gleich 8, ist bPicSpatialResid8 1, obwohl bConfigSpatialResid8 0 sein kann.

bPicOverflowBlocks

Gibt an, ob räumliche Domänendifferenzblöcke vom Host mithilfe von Überlaufblöcken an den Accelerator gesendet werden. Der Wert 1 gibt an, dass räumliche Differenzblöcke für die hostbasierte Restdifferenzdecodierung eines Bilds mithilfe von Überlaufblöcken gesendet werden können. Der Wert 0 gibt an, dass räumliche Domänendifferenzblöcke nicht mithilfe von Überlaufblöcken gesendet werden. Dieser Member muss 0 sein, wenn bConfigResidDiffHost 0 oder bConfigSpatialResid8 0 ist oder wenn BPP größer als 8 ist. Die Parameter bConfigResidDiffHost und bConfigSpatialResid8 sind Mitglieder von DXVA_ConfigPictureDecode. bPicOverflowBlocks gibt an, ob für das jeweilige Bild Überlaufblöcke vorhanden sein können. In einem Intrabild mit BPP gleich 8 muss bPicOverflowBlocks null sein, da in diesem Fall keine Überlaufblöcke erforderlich sind.

bPicExtrapolation

Gibt an, ob Bewegungsvektoren über Bildgrenzen gemäß H.263 Annex D und MPEG-4 zulässig sind. Dies erfordert entweder die Zuordnung von Bildebenen, die zwei Makroblöcke breiter sind (ein zusätzlicher Makroblock links und ein anderer rechts) und zwei Makroblöcke höher (ein zusätzlicher Makroblock oben und ein anderer am unteren Rand) als die decodierte Bildgröße oder das Abschneiden der Adresse der einzelnen Pixelzugriffe innerhalb der Bildgrenzen. Makroblockadressen in dieser Spezifikation gelten für Makroblocks im Inneren des Bilds, ohne Füllung.

bPicDeblocked

Gibt an, ob Deblockierungsbefehle für dieses Bild gesendet werden, um ein entblocktes Ausgabebild zu erstellen. Das entblockte Ausgabebild wird im Bildpuffer platziert, der von wDeblockedPictureIndex angegeben wird. Wenn bPicDeblocked 1 ist, werden Deblockierungsbefehle gesendet, und der entblockte Frame wird generiert. Wenn bPicDeblocked null ist, werden keine Deblockierungsbefehle gesendet und kein entblocktes Bild generiert.

bPicDeblockConfined

Gibt an, ob das Aufheben der Blockierung von Filterbefehlpuffern die Auswirkungen der Deblockierung von Filtervorgängen auf den Satz von Makroblöcken beschränken, die im Befehlspuffer für den Entsperrungsfilter enthalten sind.

bPic4MVallowed

Gibt an, ob vier Vorwärtsverweisbewegungsvektoren pro Makroblock zulässig sind, wie sie in den H.263-Anhängen F und J verwendet werden.

bPicOBMC

Gibt an, ob die Bewegungskompensation für das aktuelle Bild mithilfe der überlappenden Blockbewegungskompensation (OBMC) funktioniert, wie in H.263 Anhang F angegeben. Muss 0 sein, wenn bPic4MVallowed null ist.

bPicBinPB

Gibt an, ob bidirektional vorhergesagte Makroblocks im Bild B-Bild in PB-Frame Motion Compensation verwenden. Dadurch wird der bidirektional vorhergesagte Bereich für jeden Makroblock auf den Bereich des entsprechenden Makroblocks im Rückwärtsbezugsbild beschränkt, wie in den Anhängen G und M von H.263 angegeben.

bMV_RPS

Gibt die Verwendung der Bewegungsvektorreferenzbildauswahl an. Wenn bMV_RPS 1 ist, bedeutet dies, dass ein Referenzbildindex für jeden Bewegungsvektor gesendet wird, anstatt nur vorwärts- und möglicherweise rückwärts bewegte Bildindizes für das Bild als Ganzes. Wenn bMV_RPS 1 ist, haben die Elemente wForwardRefPictureIndex und wBackwardRefPictureIndex keine Bedeutung und müssen null sein.

bReservedBits

Dies ist für Verpackung und Ausrichtung reserviert. Muss Null sein.

wBitstreamFcodes

Gibt den Bewegungsvektor f_code Werte an, die in MPEG-2 für die Rohbitstreamverarbeitung definiert sind. Jeder f_code Wert benötigt 4 Bits. Diese Werte werden wie folgt in ein 16-Bit-Wort gepackt.

Bits BESCHREIBUNG
12 bis 15 (die wichtigsten Bits) f_code[0][0]: Die horizontale f_code
8 bis 11 f_code[0][1]: Die vertikale f_code
4 bis 7 f_code[1][0]: Die rückwärts horizontale f_code
0 bis 3 (die am wenigsten signifikanten Bits) f_code[1][1]: Die rückwärts vertikale f_code

Wenn das bConfigBitstreamRaw-Element der DXVA_ConfigPictureDecode-Struktur 1 ist, enthält wBitstreamFcodes vier Bewegungsvektoren f_code-Werte . Wenn bConfigBitstreamRaw 1 ist und einer der vier f_code-Werte aufgrund der Struktur der Bitstreamdaten oder aufgrund des f_code Werts, der in der relevanten Bitstreamsyntax für Videocodierung nicht benötigt wird (z. B. in H.261 oder H.263), unnötig oder irrelevant ist, wird jeder irrelevante f_code Wert 0xF.

Wenn das bConfigBitstreamRaw-Element der DXVA_ConfigPictureDecode-Struktur 0 ist, wird wBitstreamFcodes auf 0xFFFF festgelegt (alle f_code Werte sind auf 0xF festgelegt).

Hinweis

MPEG-1-Bitstreams stellen diese Informationen in einer anderen Form bereit. Daher sind für MPEG-1-Bitstreams f_code[0][0] und f_code[0][1] gleich dem forward_f_code von MPEG-1, und f_code[1][0] und f_code[1][1] entsprechen dem backward_f_code von MPEG-1.

wBitstreamPCEelements

Wenn das bConfigBitstreamRaw-Element von DXVA_ConfigPictureDecode 1 ist, enthält dieses Element eine Reihe von Flags, die für den Bitstreamdecodierungsprozess von MPEG-2-Video erforderlich sind. Es wird nicht verwendet und muss null sein, wenn bConfigBitstreamRaw 0 und für Nicht-MPEG-2-Videos ist. Die Bits in diesem Member werden durch ihre Übereinstimmung mit Bitstreamelementen der MPEG-2-Bildcodierungserweiterung wie folgt definiert.

Bits BESCHREIBUNG
14 und 15 IntraDCprecision ist gleich intra_dc_precision.
12 und 13 AnotherPicStructure ist gleich picture_structure. Dies muss gleich dem bPicStructure-Element dieser Struktur sein.
11 TopFieldFirst entspricht top_field_first.
10 FrameDCTprediction entspricht frame_pred_frame_dct.
9 ConcealmentMVs entspricht concealment_motion_vectors.
8 QuantScaleType entspricht q_scale_type.
7 IntraVLCformat entspricht intra_vlc_format.
6 AlternateScan entspricht alternate_scan.
5 RepeatFirstField entspricht repeat_first_field (vom Accelerator nicht benötigt).
4 Chroma420type ist gleich chroma_420_type (vom Accelerator nicht benötigt und durch MPEG-2 eingeschränkt, um gleich progressive_frame zu sein).
3 ProgressiveFrame entspricht progressive_frame.
0, 1 und 2 Reservierte Bits. Dies sind die am wenigsten signifikanten Bits.

bBitstreamConcealmentNeed

Gibt die Wahrscheinlichkeit von Fehlern in den Bitstreamdaten an, wenn das bConfigBitstreamRaw-Element der DXVA_ConfigPictureDecode-Struktur 1 ist. Muss null sein, wenn bConfigBitstreamRaw 0 ist.

Videobeschleunigungen müssen so konzipiert sein, dass sie nicht ausfallen oder sperren, unabhängig vom Inhalt der ihnen bereitgestellten Daten. Daher kann es für einen Videobeschleuniger hilfreich sein, Informationen über die Bewertung der Wahrscheinlichkeit syntaktischer Fehler durch den Host zu erhalten. Dies ist, um zu ermitteln, ob ein komplexerer Fehlerverschleierungsalgorithmus aufgerufen werden muss, der den Bitstream-Decodierungsprozess verlangsamen könnte. Zulässige Werte für dieses Element sind wie folgt (alle anderen Werte sind reserviert).

Wert Bedeutung
0 Es ist unwahrscheinlich, dass der Bitstream eine signifikante Anzahl von Fehlern in seinem syntaktischen Format enthält.
1 Der Bitstream kann einige Fehler enthalten. Diese Fehler sind wahrscheinlich selten (z. B. ein- oder zweimal pro Stunde).
2 Der Bitstream enthält wahrscheinlich einige Fehler. Diese Fehler treten wahrscheinlich mit einer Häufigkeit auf, die sich auf die Benutzererfahrung auswirken kann (z. B. alle fünf bis zehn Minuten ein Fehler).
3 Der Bitstream enthält wahrscheinlich relativ signifikante, schwerwiegende und häufige syntaktische Formatfehler (z. B. einen oder mehrere Fehler pro Minute).

bBitstreamConcealmentMethod

Gibt eine bevorzugte Standardmethode für die Fehlerverschleierungsverarbeitung an, wenn das bConfigBitstreamRaw-Element der DXVA_ConfigPictureDecode-Struktur 1 ist. Muss null sein, wenn bConfigBitstreamRaw null ist. Zulässige Werte für diesen Member sind wie folgt (alle anderen Werte sind reserviert).

Wert Error Concealment-Methode
0 Unbekannt oder nicht angegeben.
1 Räumliche intra-bildinterne Verschleierung innerhalb des Bilds.
2 Vorwärtsgerichtetes Referenzbild für die Verschleierung zwischen Bildern (wird in der Regel in einem P-Bild oder in einem B-Bild verwendet, das näher an seinem Vorwärtsbewegungsreferenzbild als an seinem rückwärts bewegten Referenzbild liegt).
3 Rückwärts bewegtes Referenzbild für die Verschleierung zwischen Bildern (wird in der Regel in einem B-Bild verwendet, das näher an seinem rückwärts bewegten Referenzbild als an seinem vorwärtsgerichteten Referenzbild liegt).

Hinweise

Bestimmte Member dieser Struktur werden durch die Mithilfe der DXVA_ConfigPictureDecode-Struktur erstellte Konfiguration auf bestimmte Werte beschränkt. Nachdem die Parameter auf Bildebene mit DXVA_PictureParameters übermittelt wurden, wird der Bilddecodierungsprozess in erster Linie durch Makroblocksteuerungsbefehle gesteuert, die mithilfe der strukturen DXVA_MBctrl_I_HostResidDiff_1, DXVA_MBctrl_I_OffHostIDCT_1, DXVA_MBctrl_P_HostResidDiff_1 oder DXVA_MBctrl_P_OffHostIDCT_1 gebildet werden.

Anforderungen

Anforderung Wert
Header dxva.h (dxva.h einschließen)

Weitere Informationen

DXVA_ConfigPictureDecode

DXVA_MBctrl_I_HostResidDiff_1

DXVA_MBctrl_I_OffHostIDCT_1

DXVA_MBctrl_P_HostResidDiff_1

DXVA_MBctrl_P_OffHostIDCT_1