YCbCr-Effekt
Wandelt planare und farbuntersampelte JPEG YCbCr Daten in RGB um. Bei diesem Effekt wird davon ausgegangen, dass die YC-bCr Daten entsprechend dem JPEG-Standard formatiert ist. Daten für die Eingaben können von IWICPlanarBitmapSourceTransform abgerufen werden. Der YCbCr Effekt erfordert zwei Eingaben; Die erste muss eine DXGI_FORMAT_R8 Bitmap sein, die Luma-Daten enthält, und die zweite muss eine DXGI_FORMAT_R8G8 Bitmap sein, die subsampelte Chromadaten enthält. Weitere Informationen zur Verwendung dieses Effekts finden Sie unter JPEG YCbCr Support.
Die CLSID für diesen Effekt ist CLSID_D2D1YCbCr.
- Effekteigenschaften
- Untersamplingmodi
- Interpolationsmodi
- Ausgabebitmap-
- Anforderungen
- Verwandte Themen
Effekteigenschaften
Anzeigename und Indexenumeration | Beschreibung |
---|---|
ChromaSubsampling D2D1_YCBCR_CHROMA_SUBSAMPLING |
Gibt die Farbuntersampling des Eingabechrombilds an. Der Typ ist D2D1_YCBCR_CHROMA_SUBSAMPLING. Der Standardwert ist D2D1_YCBCR_CHROMA_SUBSAMPLING_AUTO. |
TransformMatrix D2D1_YCBCR_PROP_TRANSFORM_MATRIX |
Eine 3x2-Matrix die achsenausrichtungsaffine Transformation des Bilds angibt. Achsenausrichtungstransformationen umfassen Skalierungs-, Flips- und 90-Grad-Drehungen. Der Typ ist D2D1_MATRIX_3X2_F. Der Standardwert ist Matrix3x2F::Identity(). |
InterpolationMode D2D1_YCBCR_INTERPOLATION_MODE |
Der Interpolationsmodus. Der Typ ist D2D1_YCBCR_INTERPOLATION_MODE. |
Untersamplingmodi
Aufzählung | Beschreibung |
---|---|
D2D1_YCBCR_CHROMA_SUBSAMPLING_AUTO |
Dieser Modus versucht, die Farbuntersampling von den Grenzen der Eingabebilder abzuleiten. Wenn diese Option ausgewählt ist, wird die kleinere Ebene auf die Größe der größeren Ebene aufgesampelt, und dieses Ausgaberechteck ist die Schnittmenge der beiden Ebenen. Bei Verwendung dieses Modus sollten Sie beim Anwenden von Effekten auf die Eingabeebenen achten, die die Bildgrenzen ändern, z. B. die Rahmentransformation, damit das gewünschte Größenverhältnis zwischen den Ebenen beibehalten wird. |
D2D1_YCBCR_CHROMA_SUBSAMPLING_420 |
Die Chromaebene wird horizontal durch und vertikal unterstempelt. Wenn diese Option ausgewählt ist, wird die Chromaebene horizontal und vertikal um 2x aufgestempelt, und dieses Ausgaberechteck ist die Schnittmenge der beiden Ebenen. |
D2D1_YCBCR_CHROMA_SUBSAMPLING_422 |
Die Chromaebene wird horizontal unterstempelt. Wenn diese Option ausgewählt ist, wird die Farbebene horizontal um 2x aufgesampelt, und dieses Effekt-Ausgaberechteck ist die Schnittmenge der beiden Ebenen. |
D2D1_YCBCR_CHROMA_SUBSAMPLING_444 |
Die Chromaebene ist nicht untersampelt. Wenn diese Option ausgewählt ist, ist das Ausgaberechteck dieses Effekts die Schnittmenge der beiden Ebenen. |
D2D1_YCBCR_CHROMA_SUBSAMPLING_440 |
Die Chromaebene wird vertikal unterstempelt. Wenn diese Option ausgewählt ist, wird die Farbebene vertikal um 2x aufgesampelt, und dieses Effekt-Ausgaberechteck ist die Schnittmenge der beiden Ebenen. |
Interpolationsmodi
Aufzählung | Beschreibung |
---|---|
D2D1_YCBCR_INTERPOLATION_MODE_NEAREST_NEIGHBOR | Gibt den nächstgelegenen einzelnen Punkt an und verwendet dies. Dieser Modus verwendet weniger Verarbeitungszeit, gibt jedoch das bild mit der niedrigsten Qualität aus. |
D2D1_YCBCR_INTERPOLATION_MODE_LINEAR | Verwendet ein Beispiel mit vier Punkten und eine lineare Interpolation. Dieser Modus verwendet mehr Verarbeitungszeit als der nächste Nachbarmodus, gibt jedoch ein Bild mit höherer Qualität aus. |
D2D1_YCBCR_INTERPOLATION_MODE_CUBIC | Verwendet einen 16 Beispiel-Kubikkern für die Interpolation. Dieser Modus verwendet die meiste Verarbeitungszeit, gibt jedoch ein Bild mit höherer Qualität aus. |
D2D1_YCBCR_INTERPOLATION_MODE_MULTI_SAMPLE_LINEAR | Verwendet vier lineare Beispiele innerhalb eines einzelnen Pixels für eine gute Antialiasierung am Rand. Dieser Modus eignet sich gut für die Skalierung von kleinen Mengen an Bildern mit wenigen Pixeln. |
D2D1_YCBCR_INTERPOLATION_MODE_ANISOTROPIC | Verwendet die anisotrope Filterung, um ein Muster gemäß der transformierten Form der Bitmap zu probieren. |
D2D1_YCBCR_INTERPOLATION_MODE_HIGH_QUALITY_CUBIC | Verwendet einen kubischen Kernel mit variabler Größe mit hoher Qualität, um ein Bild vorab zu verkleinern, wenn die Downscaling an der Transformationsmatrix beteiligt ist. Verwendet dann den kubischen Interpolationsmodus für die endgültige Ausgabe. |
Ausgabebitmap
Die Größe der Ausgabebitmap hängt von der Transformationsmatrix ab, die auf das Bild angewendet wird.
Der Effekt führt den Transformationsvorgang aus und wendet dann ein umgebendes Feld um das Ergebnis an. Die Ausgabebitmap ist die Größe des umgebenden Felds.
Anforderungen
Anforderung | Wert |
---|---|
Mindestens unterstützter Client | Windows 8.1 [Desktop-Apps | Windows Store-Apps] |
Mindestens unterstützter Server | Windows Server 2012 R2 [Desktop-Apps | Windows Store-Apps] |
Kopfball | d2d1effects_1.h |
Bibliothek | d2d1.lib, dxguid.lib |