KS_H264VIDEOINFO-Struktur (ksmedia.h)

Die KS_H264VIDEOINFO beschreibt die Gerätefunktionen, die für den aktuellen Medientyp gelten.

Syntax

typedef struct tagKS_H264VIDEOINFO {
  WORD  wWidth;
  WORD  wHeight;
  WORD  wSARwidth;
  WORD  wSARheight;
  WORD  wProfile;
  BYTE  bLevelIDC;
  WORD  wConstrainedToolset;
  DWORD bmSupportedUsages;
  WORD  bmCapabilities;
  DWORD bmSVCCapabilities;
  DWORD bmMVCCapabilities;
  DWORD dwFrameInterval;
  BYTE  bMaxCodecConfigDelay;
  BYTE  bmSupportedSliceModes;
  BYTE  bmSupportedSyncFrameTypes;
  BYTE  bResolutionScaling;
  BYTE  bSimulcastSupport;
  BYTE  bmSupportedRateControlModes;
  WORD  wMaxMBperSecOneResolutionNoScalability;
  WORD  wMaxMBperSecTwoResolutionsNoScalability;
  WORD  wMaxMBperSecThreeResolutionsNoScalability;
  WORD  wMaxMBperSecFourResolutionsNoScalability;
  WORD  wMaxMBperSecOneResolutionTemporalScalability;
  WORD  wMaxMBperSecTwoResolutionsTemporalScalablility;
  WORD  wMaxMBperSecThreeResolutionsTemporalScalability;
  WORD  wMaxMBperSecFourResolutionsTemporalScalability;
  WORD  wMaxMBperSecOneResolutionTemporalQualityScalability;
  WORD  wMaxMBperSecTwoResolutionsTemporalQualityScalability;
  WORD  wMaxMBperSecThreeResolutionsTemporalQualityScalablity;
  WORD  wMaxMBperSecFourResolutionsTemporalQualityScalability;
  WORD  wMaxMBperSecOneResolutionTemporalSpatialScalability;
  WORD  wMaxMBperSecTwoResolutionsTemporalSpatialScalability;
  WORD  wMaxMBperSecThreeResolutionsTemporalSpatialScalablity;
  WORD  wMaxMBperSecFourResolutionsTemporalSpatialScalability;
  WORD  wMaxMBperSecOneResolutionFullScalability;
  WORD  wMaxMBperSecTwoResolutionsFullScalability;
  WORD  wMaxMBperSecThreeResolutionsFullScalability;
  WORD  wMaxMBperSecFourResolutionsFullScalability;
} KS_H264VIDEOINFO, *PKS_H264VIDEOINFO;

Member

wWidth

Gibt die Breite von Bildern, die vom Decodierungsprozess ausgegeben werden, in Pixel an.

Der Wert für dieses Element muss ein Vielfaches von 2 sein, aber er muss kein ganzzahliges Vielfaches von 16 sein. Sie kann mithilfe eines Rahmenzuschneiderechtecks im aktiven Sequence Parameter Set (SPS) angegeben werden.

wHeight

Gibt die Höhe von Bildern, die aus dem Decodierungsprozess ausgegeben werden, in Pixel an.

Der Wert für dieses Element muss ein Vielfaches von 2 sein. Wenn die Feldcodierung oder die adaptive Frame/Field-Codierung verwendet wird, muss es sich um ein Vielfaches von 4 sein. Es muss kein ganzzahliges Vielfaches von 16 sein. Sie kann mithilfe eines Rahmenzuschneiderechtecks im aktiven SPS angegeben werden.

wSARwidth

Gibt die Breite des Stichprobenseitenverhältnisses gemäß der Definition in Anhang E H.264 an.

Sie muss in Bezug auf wSARheight relativ gut sein.

wSARheight

Gibt die Im H.264-Anhang E definierte Seitenverhältnishöhe des Stichprobenseitenverhältnisses an.

Sie muss in Bezug auf bSARwidth relativ gut sein.

wProfile

Gibt die ersten beiden Bytes des Sequenzparametersatzes an, wie durch profile_idc- und Einschränkungsflags in der H.264-Spezifikation beschrieben.

Dieses Element gibt das Profil und die anwendbaren Einschränkungen an, die verwendet werden sollen.

Im Folgenden sind Beispiele für zulässige Werte aufgeführt:

Wert BESCHREIBUNG
0x4240 Eingeschränktes Baselineprofil.
0x4200 Baselineprofil.
0x4D00 Hauptprofil.
0x6400 High Profile.
0x5300 Skalierbares Baselineprofil.
0x5600 Skalierbares High-Profile-Profil.
0x7600 Multiview High Profile.
0x8000 Stereo High Profile.

bLevelIDC

Gibt die Ebene an, wie durch das level_idc-Flag beschrieben.

Dieses Element gibt den Mindestwert an, der die Auflösung und die maximale Bitrate für diesen Framedeskriptor unterstützt.

Im Folgenden sind Beispiele für zulässige Werte aufgeführt:

Wert BESCHREIBUNG
0x1F Ebene 3.1.
0x28 Ebene 4.0.

wConstrainedToolset

Schränkt die von wProfile zulässigen Features ein.

Wert BESCHREIBUNG
0 Keine Einschränkungen. Alle durch die ausgewählten wProfile und die bmSetting-Gruppe definierten Tools sind zulässig.
1 Unified Communication (UC) – Eingeschränkter High-Toolset.
2 UC Scalable Constrained High1.
3 UC Scalable Constrained Baseline1.
4 bis 65535 Reserviert.

bmSupportedUsages

Definiert die Bitmap, die die unterstützten Verwendungen angibt.

Bits BESCHREIBUNG
D0 Echtzeit-/UCConfig-Modus (Unified Communication Configuration) 0.
D1 Echtzeit-/UCConfig-Modus 1.
D2 Echtzeit-/UCConfig-Modus 2Q.
D3 Echtzeit-/UCConfig-Modus 2S.
D4 Echtzeit-/UCConfig-Modus 3.
D7-D5 Reserviert; auf 0 festgelegt.
D15-D8 Übertragungsmodi.
D16 Dateispeichermodus mit I- und P-Slices (z. B. IPPP).
D17 Dateispeichermodus mit I-, P- und B-Slices (z. B. IB... IP).
D18 Dateispeichermodus mit all-I-Frame.
D23-D19 Reserviert; auf 0 festgelegt.
D24 MVC Stereo High Mode.
D25 MVC Multiview-Modus.
D31-D26 Reserviert; auf 0 festgelegt.

bmCapabilities

Definiert die Bitmap, die die Funktionen für diesen Framedeskriptor angibt.

Bits BESCHREIBUNG
D0 Nur kontextbasiertes Adaptives Variable Length Coding (CAVLC).
D1 Nur kontextbasierte adaptive binäre Arithmetische Codierung (CABAC).
D2 Konstante Bildfrequenz.
D3 Separate QP für Luma/Chroma.
D4 Separate QP für Cb/Cr.
D5 Keine Bildanordnung.
D15-D6 Reserviert; auf 0 festgelegt.

bmSVCCapabilities

Definiert die Bitmap, die die SVC-Funktionen (Scalable Video Coding) angibt.

Bits BESCHREIBUNG
D2-D0 Maximale Anzahl temporaler Ebenen minus 1.
D3 Unterstützung für ein erneutes Schreiben.
D6-D4 Maximale Anzahl von CGS-Ebenen (Coarse Grained Skalierbarkeit) minus 1.
D9-D7 Maximale Anzahl von MGS-Unterschichten (Medium Grained Skalierbarkeit).
D10 Zusätzliche SNR-Skalierbarkeitsunterstützung in räumlichen Erweiterungsebenen.
D13-D11 Maximale Anzahl räumlicher Ebenen minus 1.
D31-D14 Reserviert.

bmMVCCapabilities

Definiert die Bitmap, die die Multicastvideocodierungsfunktionen (MVC) angibt.

Bits BESCHREIBUNG
D2-D0 Maximale Anzahl temporaler Ebenen minus 1.
D11-D3 Maximale Anzahl von Ansichtskomponenten minus 1.
D31-D11 Reserviert.

dwFrameInterval

Gibt das unterstützte Frameintervall an.

Dies ist das kürzeste unterstützte Frameintervall bei der höchsten Bildfrequenz in Einheiten von 100 Nanosekunden.

bMaxCodecConfigDelay

Gibt die maximale Anzahl von Frames an, die der Encoder verwendet, um auf einen Befehl zu reagieren.

bmSupportedSliceModes

Definiert die Bitmap, die die Slicemodi angibt.

Bits BESCHREIBUNG
D0 Slicemodus 0.
D1 Slicemodus 1.
D7-D2 Reserviert.

bmSupportedSyncFrameTypes

Definiert das BYTE-ElementbmSupportedSyncFrameTypes.

bResolutionScaling

Definiert die Bitmap, die die Synchronisierungsrahmentypen angibt.

Bits BESCHREIBUNG
D0 Frame für sofortige Decodierungsaktualisierung (Instantaneous Decoding Refresh, IDR) mit Headern von Sequence Parameter Set (SPS) und Picture Parameter Set (PPS).
D1 IDR-Frame (mit SPS- und PPS-Headern), bei dem es sich um einen langfristigen Referenzrahmen handelt.
D2 Random-Access I-Frame (mit SPS- und PPS-Headern), bei dem es sich um einen IDR-Frame handeln kann oder nicht.
D3 P-Frame, der ein langfristiger Referenzrahmen ist.
D7-D4 Reserviert; auf 0 festgelegt.

bSimulcastSupport

Gibt die Anzahl der H.264-Videostreamingendpunkte und die Anzahl der Streams an, die dieser Endpunkt unterstützt.

Wert BESCHREIBUNG
0 Ein Endpunkt und ein Stream.
1 Ein Endpunkt und mehrere Streams.

bmSupportedRateControlModes

Definiert die Bitmap, die die Ratensteuerungsmodi angibt.

Bits BESCHREIBUNG
D0 Variable Bitrate (VBR) mit zulässigem Unterlauf (H.264 low_delay_hrd_flag = 1).
D1 Konstante Bitrate (CBR) (H.264 low_delay_hrd_flag = 0).
D2 Konstante QP.
D3 Globale VBR mit zulässigem Unterlauf (H.264 low_delay_hrd_flag = 1).
D4 VBR ohne Unterlauf (H.264 low_delay_hrd_flag = 0).
D5 Globale VBR ohne Unterlauf (H.264 low_delay_hrd_flag = 0).
D7-D6 Reserviert, auf 0 festgelegt.

wMaxMBperSecOneResolutionNoScalability

Gibt die maximale Makroblockverarbeitungsrate an, die für nicht skalierbare AVC-Datenströme (Advanced Video Coding) zulässig ist, und summiert sich auf alle Ebenen, wenn alle Ebenen dieselbe Auflösung haben.

wMaxMBperSecTwoResolutionsNoScalability

Gibt die maximale Makroblockverarbeitungsrate an, die für nicht skalierbare AVC-Datenströme zulässig ist, und summiert sich über alle Ebenen hinweg, wenn alle Ebenen aus zwei unterschiedlichen Auflösungen bestehen.

wMaxMBperSecThreeResolutionsNoScalability

Gibt die maximale Makroblockverarbeitungsrate an, die für nicht skalierbare AVC-Datenströme zulässig ist, und summiert sich über alle Ebenen hinweg, wenn alle Ebenen aus drei verschiedenen Auflösungen bestehen.

wMaxMBperSecFourResolutionsNoScalability

Gibt die maximale Makroblockverarbeitungsrate an, die für nicht skalierbare AVC-Streams zulässig ist, und summiert sich über alle Ebenen hinweg, wenn alle Ebenen aus vier verschiedenen Auflösungen bestehen.

wMaxMBperSecOneResolutionTemporalScalability

Gibt die maximale Makroblockverarbeitungsrate an, die für zeitlich skalierbare Datenströme zulässig ist, und summiert sich über alle Ebenen hinweg, wenn alle Ebenen die gleiche Auflösung haben.

wMaxMBperSecTwoResolutionsTemporalScalablility

Gibt die maximale Makroblockverarbeitungsrate an, die für zeitlich skalierbare Datenströme zulässig ist, und summiert sich auf alle Ebenen, wenn alle Ebenen aus zwei unterschiedlichen Auflösungen bestehen.

wMaxMBperSecThreeResolutionsTemporalScalability

Gibt die maximale Makroblockverarbeitungsrate an, die für zeitlich skalierbare Datenströme zulässig ist, und summiert sich über alle Ebenen hinweg, wenn alle Ebenen aus drei verschiedenen Auflösungen bestehen.

wMaxMBperSecFourResolutionsTemporalScalability

Gibt die maximale Makroblockverarbeitungsrate an, die für vollständig skalierbare Datenströme zulässig ist, und summiert sich über alle Ebenen hinweg, wenn alle Ebenen aus vier verschiedenen Auflösungen bestehen.

wMaxMBperSecOneResolutionTemporalQualityScalability

Gibt die maximale Makroblockverarbeitungsrate an, die für temporale und qualitativ skalierbare SVC-Datenströme zulässig ist, und summiert sich auf alle Ebenen, wenn alle Ebenen die gleiche Auflösung haben.

wMaxMBperSecTwoResolutionsTemporalQualityScalability

Gibt die maximale Makroblockverarbeitungsrate an, die für zeitliche und qualitativ skalierbare SVC-Datenströme zulässig ist, und summiert sich über alle Ebenen hinweg, wenn alle Ebenen aus zwei unterschiedlichen Auflösungen bestehen.

wMaxMBperSecThreeResolutionsTemporalQualityScalablity

Gibt die maximale Makroblockverarbeitungsrate an, die für temporale und qualitativ skalierbare SVC-Datenströme zulässig ist, und summiert sich über alle Ebenen hinweg, wenn alle Ebenen aus drei verschiedenen Auflösungen bestehen.

wMaxMBperSecFourResolutionsTemporalQualityScalability

Gibt die maximale Makroblockverarbeitungsrate an, die für zeitliche und qualitativ skalierbare SVC-Datenströme zulässig ist, und summiert sich über alle Ebenen hinweg, wenn alle Ebenen aus vier verschiedenen Auflösungen bestehen.

wMaxMBperSecOneResolutionTemporalSpatialScalability

Definiert das WORD-ElementwMaxMBperSecOneResolutionTemporalSpatialScalability.

wMaxMBperSecTwoResolutionsTemporalSpatialScalability

Definiert das WORD-ElementwMaxMBperSecTwoResolutionsTemporalSpatialScalability.

wMaxMBperSecThreeResolutionsTemporalSpatialScalablity

Definiert das WORD-ElementwMaxMBperSecThreeResolutionsTemporalSpatialScalablity.

wMaxMBperSecFourResolutionsTemporalSpatialScalability

Definiert das WORD-ElementwMaxMBperSecFourResolutionsTemporalSpatialScalability.

wMaxMBperSecOneResolutionFullScalability

Gibt die maximale Makroblockverarbeitungsrate an, die für vollständig skalierbare Datenströme zulässig ist, und summiert sich auf alle Ebenen, wenn alle Ebenen die gleiche Auflösung haben.

wMaxMBperSecTwoResolutionsFullScalability

Gibt die maximale Makroblockverarbeitungsrate an, die für vollständig skalierbare Datenströme zulässig ist, und summiert sich auf alle Ebenen, wenn alle Ebenen aus zwei unterschiedlichen Auflösungen bestehen.

wMaxMBperSecThreeResolutionsFullScalability

Gibt die maximale Makroblockverarbeitungsrate an, die für vollständig skalierbare Datenströme zulässig ist, und summiert sich auf alle Ebenen, wenn alle Ebenen aus drei verschiedenen Auflösungen bestehen.

wMaxMBperSecFourResolutionsFullScalability

Gibt die maximale Makroblockverarbeitungsrate an, die für vollständig skalierbare Datenströme zulässig ist, und summiert sich auf alle Ebenen, wenn alle Ebenen aus vier verschiedenen Auflösungen bestehen.

Hinweise

Die KS_H264VIDEOINFO-Struktur enthält den Frame und die Formatdeskriptorinformationen.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 8
Unterstützte Mindestversion (Server) Windows Server 2012
Kopfzeile ksmedia.h (include Ksmedia.h)

Weitere Informationen

KS_DATAFORMAT_H264VIDEOINFO

KS_DATARANGE_H264_VIDEO