Module |
|
Header |
/Engine/Source/Runtime/Media/Public/IMediaTextureSample.h |
Include |
#include "IMediaTextureSample.h" |
enum EMediaTextureSampleFormat
{
Undefined,
CharAYUV,
CharBGRA,
CharBGR10A2,
CharBMP,
CharNV12,
CharNV21,
CharUYVY,
CharYUY2,
CharYVYU,
FloatRGB,
FloatRGBA,
YUVv210,
Y416,
}
Name |
Description |
---|---|
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. |
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. |
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). |
Y416 |
4:4:4:4 AY'CbCr 16-bit little endian full range alpha, video range Y'CbCr. |
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