Navigation
API > API/Runtime > API/Runtime/Media
Available formats for media texture samples.
Depending on the decoder, the pixel data of a media texture frame may be stored in one of the listed formats. Some of these may be supported natively by the renderer, others may require a conversion step to a natively supported format. The media texture sink is responsible for performing any necessary conversions.
For details on the various YUV packings see: https://www.fourcc.org/yuv.php
| Name | EMediaTextureSampleFormat |
| Type | enum |
| Header File | /Engine/Source/Runtime/Media/Public/IMediaTextureSample.h |
| Include Path | #include "IMediaTextureSample.h" |
Syntax
enum EMediaTextureSampleFormat
{
Undefined,
CharAYUV,
CharBGRA,
CharRGBA,
CharBGR10A2,
CharBMP,
CharNV12,
CharNV21,
CharUYVY,
CharYUY2,
Char2VUY,
CharYVYU,
FloatRGB,
FloatRGBA,
YUVv210,
YUVv216,
Y416,
R4FL,
P010,
DXT1,
DXT5,
BC4,
YCoCg_DXT5,
YCoCg_DXT5_Alpha_BC4,
P010_RGB1010102,
RGBA16,
ABGR16,
ARGB16_BIG,
ExternalVYU,
}
Values
| Name | Remarks |
|---|---|
| Undefined | Format not defined. |
| CharAYUV | Four 8-bit unsigned integer components (AYUV packing) per texel. |
| CharBGRA | Four 8-bit unsigned integer components (Blue, Green, Red, Alpha) per texel. |
| CharRGBA | Four 8-bit unsigned integer components (Blue, Green, Red, Alpha) per texel. |
| CharBGR10A2 | Four 10-bit unsigned integer components (Blue, Green, Red) & 2-bit alpha per texel. |
| CharBMP | Windows bitmap (like CharBGRA, but flipped vertically). |
| CharNV12 | NV12 encoded monochrome texture with 8 bits per channel. |
| CharNV21 | NV21 encoded monochrome texture with 8 bits per channel. |
| CharUYVY | Four 8-bit unsigned integer components (UYVY packing aka. HDYC, IUYV, UYNV, Y422) per texel. |
| CharYUY2 | Four 8-bit unsigned integer components (YUY2 packing aka. YUNV, YUYV) per texel. |
| Char2VUY | Four 8-bit unsigned integer components (UYVY) per texel. |
| CharYVYU | Four 8-bit unsigned integer components (YVYU packing) per texel. |
| FloatRGB | Three 16-bit floating point components (Red, Green, Blue) per texel. |
| FloatRGBA | Four 16-bit floating point components (Red, Green, Blue, Alpha) per texel. |
| YUVv210 | YUV v210 format which pack 6 pixel using 12 x 10bits components (128 bits block). |
| YUVv216 | YUV v216 format which pack 2 pixel using 4 x 16bits components |
| Y416 | 4:4:4:4 AY'CbCr 16-bit little endian full range alpha, video range Y'CbCr. |
| R4FL | 4:4:4:4 AY'CbCr 32-bit little endian full range alpha, video range Y'CbCr. |
| P010 | NV12-style encoded monochrome texture with 16 bits per channel, with the upper 10 bits used. |
| DXT1 | DXT1. |
| DXT5 | DXT5. |
| BC4 | BC4. |
| YCoCg_DXT5 | YCoCg colour space encoded in DXT5. |
| YCoCg_DXT5_Alpha_BC4 | YCoCg colour space encoded in DXT5, with a separate alpha texture encoded in BC4. |
| P010_RGB1010102 | 3 planes of RGB1010102 data representing Y, U & V at 4:2:0 sampling. |
| RGBA16 | RGBA 16-bit per component |
| ABGR16 | ABGR 16-bit per component |
| ARGB16_BIG | ARGB 16-bit per component, big endian |
| ExternalVYU | External texture with 4 components (VYUX) per texel. |