20#define NUM_MEDIA_SHADERS_CONVERSION_OP 5
109 FRHIBufferCreateDesc::CreateVertex<FMediaElementVertex>(
TEXT(
"TempMediaVertexBuffer"), 4)
116 Vertices[0].Position.Set(-1.0f, 1.0f, 1.0f, 1.0f);
117 Vertices[1].Position.Set(1.0f, 1.0f, 1.0f, 1.0f);
118 Vertices[2].Position.Set(-1.0f, -1.0f, 1.0f, 1.0f);
119 Vertices[3].Position.Set(1.0f, -1.0f, 1.0f, 1.0f);
121 Vertices[0].TextureCoordinate.Set(
ULeft,
VTop);
122 Vertices[1].TextureCoordinate.Set(
URight,
VTop);
129UE_DEPRECATED(5.6,
"CreateTempMediaVertexBuffer requires a Command List argument")
488 RENDERCORE_API void SetParameters(
FRHIBatchedShaderParameters&
BatchedParameters,
TRefCountPtr<FRHITexture> YUVTexture,
const FIntPoint&
OutputDimensions,
const FMatrix44f&
ColorTransform,
UE::Color::EEncoding Encoding,
const FMatrix44f&
CSTransform,
bool bIsCbY0CrY1,
bool bIsARGBFmt,
bool bSwapChroma,
MediaShaders::EToneMapMethod ToneMapMethod =
MediaShaders::EToneMapMethod::None,
bool bUseBilinearSamplingForChroma =
false);
720 RENDERCORE_API FModifyAlphaSwizzleRgbaPS::FParameters* AllocateAndSetParameters(FRDGBuilder& GraphBuilder, FRDGTextureRef RGBATexture, FRDGTextureRef OutputTexture);
#define UE_DEPRECATED(Version, Message)
Definition CoreMiscDefines.h:302
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
#define SHADER_PARAMETER_RDG_TEXTURE(ShaderType, MemberName)
Definition ShaderParameterMacros.h:1752
#define SHADER_PARAMETER_SAMPLER(ShaderType, MemberName)
Definition ShaderParameterMacros.h:1740
#define BEGIN_SHADER_PARAMETER_STRUCT(StructTypeName, DllStorage)
Definition ShaderParameterMacros.h:1482
#define SHADER_PARAMETER_STRUCT_INCLUDE(StructType, MemberName)
Definition ShaderParameterMacros.h:1895
#define RENDER_TARGET_BINDING_SLOTS()
Definition ShaderParameterMacros.h:1955
#define END_SHADER_PARAMETER_STRUCT()
Definition ShaderParameterMacros.h:1485
#define SHADER_PARAMETER(MemberType, MemberName)
Definition ShaderParameterMacros.h:1684
@ SPF_Mandatory
Definition ShaderParameters.h:51
#define SHADER_PERMUTATION_INT(InDefineName, Count)
Definition ShaderPermutation.h:492
#define DECLARE_EXPORTED_SHADER_TYPE(ShaderClass, ShaderMetaTypeShortcut, RequiredAPI,...)
Definition Shader.h:1683
uint32 Offset
Definition VulkanMemory.cpp:4033
Definition MediaShaders.h:564
FARGB16BigConvertPS(const ShaderMetaType::CompiledShaderInitializerType &Initializer)
Definition MediaShaders.h:570
FARGB16BigConvertPS()
Definition MediaShaders.h:568
RENDERCORE_API void SetParameters(FRHIBatchedShaderParameters &BatchedParameters, FShaderResourceViewRHIRef SRV, const FIntPoint &OutputDimensions, UE::Color::EEncoding Encoding, const FMatrix44f &CSTransform, MediaShaders::EToneMapMethod ToneMapMethod=MediaShaders::EToneMapMethod::None)
Definition MediaShaders.cpp:765
Definition MediaShaders.h:181
RENDERCORE_API void SetParameters(FRHIBatchedShaderParameters &BatchedParameters, TRefCountPtr< FRHITexture > AYUVTexture, const FMatrix &ColorTransform, const FVector &YUVOffset, bool SrgbToLinear)
Definition MediaShaders.cpp:155
FAYUVConvertPS()
Definition MediaShaders.h:185
FAYUVConvertPS(const ShaderMetaType::CompiledShaderInitializerType &Initializer)
Definition MediaShaders.h:187
Definition MediaShaders.h:202
FBMPConvertPS()
Definition MediaShaders.h:206
RENDERCORE_API void SetParameters(FRHIBatchedShaderParameters &BatchedParameters, TRefCountPtr< FRHITexture > BMPTexture, const FIntPoint &OutputDimensions, bool SrgbToLinear)
Definition MediaShaders.cpp:184
FBMPConvertPS(const ShaderMetaType::CompiledShaderInitializerType &Initializer)
Definition MediaShaders.h:208
Definition GlobalShader.h:269
Definition MediaShaders.h:703
SHADER_USE_PARAMETER_STRUCT(FModifyAlphaSwizzleRgbaPS, FGlobalShader)
DECLARE_EXPORTED_GLOBAL_SHADER(FModifyAlphaSwizzleRgbaPS, RENDERCORE_API)
Definition MediaShaders.h:248
FNV12ConvertAsBytesPS()
Definition MediaShaders.h:253
FNV12ConvertAsBytesPS(const ShaderMetaType::CompiledShaderInitializerType &Initializer)
Definition MediaShaders.h:255
RENDERCORE_API void SetParameters(FRHIBatchedShaderParameters &BatchedParameters, TRefCountPtr< FRHITexture > NV12Texture, const FIntPoint &OutputDimensions, const FMatrix44f &ColorTransform, UE::Color::EEncoding Encoding, const FMatrix44f &CSTransform, bool bSwapChroma, MediaShaders::EToneMapMethod ToneMapMethod=MediaShaders::EToneMapMethod::None)
Definition MediaShaders.cpp:278
Definition MediaShaders.h:225
FNV12ConvertPS(const ShaderMetaType::CompiledShaderInitializerType &Initializer)
Definition MediaShaders.h:231
FNV12ConvertPS()
Definition MediaShaders.h:229
RENDERCORE_API void SetParameters(FRHIBatchedShaderParameters &BatchedParameters, const FIntPoint &TexDim, FShaderResourceViewRHIRef SRV_Y, FShaderResourceViewRHIRef SRV_UV, const FIntPoint &OutputDimensions, const FMatrix44f &ColorTransform, UE::Color::EEncoding Encoding, const FMatrix44f &CSTransform, bool bSwapChroma, MediaShaders::EToneMapMethod ToneMapMethod=MediaShaders::EToneMapMethod::None)
Definition MediaShaders.cpp:219
Definition MediaShaders.h:272
FNV21ConvertPS()
Definition MediaShaders.h:276
FNV21ConvertPS(const ShaderMetaType::CompiledShaderInitializerType &Initializer)
Definition MediaShaders.h:278
RENDERCORE_API void SetParameters(FRHIBatchedShaderParameters &BatchedParameters, TRefCountPtr< FRHITexture > NV21Texture, const FIntPoint &OutputDimensions, const FMatrix &ColorTransform, const FVector &YUVOffset, bool SrgbToLinear)
Definition MediaShaders.cpp:316
Definition MediaShaders.h:309
FP010ConvertAsUINT16sPS()
Definition MediaShaders.h:314
RENDERCORE_API void SetParameters(FRHIBatchedShaderParameters &BatchedParameters, const FIntPoint &TexDim, TRefCountPtr< FRHITexture > NV12Texture, const FIntPoint &OutputDimensions, const FMatrix44f &ColorTransform, const FMatrix44f &CSTransform, UE::Color::EEncoding Encoding, MediaShaders::EToneMapMethod ToneMapMethod=MediaShaders::EToneMapMethod::None)
Definition MediaShaders.cpp:390
FP010ConvertAsUINT16sPS(const ShaderMetaType::CompiledShaderInitializerType &Initializer)
Definition MediaShaders.h:316
Definition MediaShaders.h:290
RENDERCORE_API void SetParameters(FRHIBatchedShaderParameters &BatchedParameters, const FIntPoint &TexDim, FShaderResourceViewRHIRef SRV_Y, FShaderResourceViewRHIRef SRV_UV, const FIntPoint &OutputDimensions, const FMatrix44f &ColorTransform, const FMatrix44f &CSTransform, UE::Color::EEncoding Encoding, MediaShaders::EToneMapMethod ToneMapMethod=MediaShaders::EToneMapMethod::None)
Definition MediaShaders.cpp:352
FP010ConvertPS()
Definition MediaShaders.h:295
FP010ConvertPS(const ShaderMetaType::CompiledShaderInitializerType &Initializer)
Definition MediaShaders.h:297
Definition MediaShaders.h:328
RENDERCORE_API void SetParameters(FRHIBatchedShaderParameters &BatchedParameters, const FIntPoint &TexDim, FShaderResourceViewRHIRef SRV_Y, FShaderResourceViewRHIRef SRV_U, FShaderResourceViewRHIRef SRV_V, const FIntPoint &OutputDimensions, const FMatrix44f &ColorTransform, const FMatrix44f &CSTransform, UE::Color::EEncoding Encoding, MediaShaders::EToneMapMethod ToneMapMethod=MediaShaders::EToneMapMethod::None)
Definition MediaShaders.cpp:431
FP010_2101010ConvertPS()
Definition MediaShaders.h:333
FP010_2101010ConvertPS(const ShaderMetaType::CompiledShaderInitializerType &Initializer)
Definition MediaShaders.h:335
Definition MemoryImage.h:49
Definition RenderGraphBuilder.h:49
Definition RenderGraphResources.h:571
Definition MediaShaders.h:680
SHADER_USE_PARAMETER_STRUCT(FRGB10toYUVv210ConvertPS, FGlobalShader)
DECLARE_EXPORTED_GLOBAL_SHADER(FRGB10toYUVv210ConvertPS, RENDERCORE_API)
Definition MediaShaders.h:659
SHADER_USE_PARAMETER_STRUCT(FRGB8toUYVY8ConvertPS, FGlobalShader)
DECLARE_EXPORTED_GLOBAL_SHADER(FRGB8toUYVY8ConvertPS, RENDERCORE_API)
Definition MediaShaders.h:609
RENDERCORE_API void SetParameters(FRHIBatchedShaderParameters &BatchedParameters, TRefCountPtr< FRHITexture > RGBATexture, const FVector4f &ColorTransform, bool LinearToSrgb)
Definition MediaShaders.cpp:862
FRGB8toY8ConvertPS()
Definition MediaShaders.h:613
FRGB8toY8ConvertPS(const ShaderMetaType::CompiledShaderInitializerType &Initializer)
Definition MediaShaders.h:615
Definition MediaShaders.h:350
FRGBConvertPS(const ShaderMetaType::CompiledShaderInitializerType &Initializer)
Definition MediaShaders.h:356
FRGBConvertPS()
Definition MediaShaders.h:354
RENDERCORE_API void SetParameters(FRHIBatchedShaderParameters &BatchedParameters, TRefCountPtr< FRHITexture > RGBTexture, const FIntPoint &OutputDimensions, UE::Color::EEncoding Encoding, const FMatrix44f &CSTransform, MediaShaders::EToneMapMethod ToneMapMethod=MediaShaders::EToneMapMethod::None)
Definition MediaShaders.cpp:474
Definition RHICommandList.h:455
FRHIBufferInitializer CreateBufferInitializer(const FRHIBufferCreateDesc &CreateDesc)
Definition RHICommandList.h:792
Definition MediaShaders.h:628
LAYOUT_FIELD(FShaderResourceParameter, InTexture)
RENDERCORE_API void SetParameters(FRHIBatchedShaderParameters &BatchedParameters, FTextureRHIRef TextureExt, FSamplerStateRHIRef SamplerState, const FLinearColor &ScaleRotation, const FLinearColor &Offset)
Definition MediaShaders.cpp:890
FReadTextureExternalPS()
Definition MediaShaders.h:632
FReadTextureExternalPS(const ShaderMetaType::CompiledShaderInitializerType &Initializer)
Definition MediaShaders.h:634
Definition RenderResource.h:37
Definition ShaderParameters.h:87
Definition MediaShaders.h:434
FUYVYConvertPS(const ShaderMetaType::CompiledShaderInitializerType &Initializer)
Definition MediaShaders.h:440
RENDERCORE_API void SetParameters(FRHIBatchedShaderParameters &BatchedParameters, TRefCountPtr< FRHITexture > UYVYTexture, const FMatrix &ColorTransform, const FVector &YUVOffset, bool SrgbToLinear)
Definition MediaShaders.cpp:577
FUYVYConvertPS()
Definition MediaShaders.h:438
Definition MediaShaders.h:733
RENDERCORE_API void SetParameters(FRHIBatchedShaderParameters &BatchedParameters, TRefCountPtr< FRHITexture > VYUTexture, const FIntPoint &OutputDimensions, const FMatrix44f &ColorTransform, UE::Color::EEncoding Encoding, const FMatrix44f &CSTransform, MediaShaders::EToneMapMethod ToneMapMethod=MediaShaders::EToneMapMethod::None, const FLinearColor &UVRotation=FLinearColor(1.0f, 0.0f, 0.0f, 1.0f), const FLinearColor &UVRotOffset=FLinearColor(0.0f, 0.0f, 0.0f, 0.0f))
Definition MediaShaders.cpp:986
FVYUConvertPS()
Definition MediaShaders.h:737
FVYUConvertPS(const ShaderMetaType::CompiledShaderInitializerType &Initializer)
Definition MediaShaders.h:739
Definition MediaShaders.h:412
FYCbCrConvertPS_4x4Matrix(const ShaderMetaType::CompiledShaderInitializerType &Initializer)
Definition MediaShaders.h:418
FYCbCrConvertPS_4x4Matrix()
Definition MediaShaders.h:416
Definition MediaShaders.h:398
FYCbCrConvertPS(const ShaderMetaType::CompiledShaderInitializerType &Initializer)
Definition MediaShaders.h:404
RENDERCORE_API void SetParameters(FRHIBatchedShaderParameters &BatchedParameters, TRefCountPtr< FRHITexture > LumaTexture, TRefCountPtr< FRHITexture > CbCrTexture, const FMatrix &ColorTransform, const FVector &YUVOffset, bool SrgbToLinear)
Definition MediaShaders.cpp:541
FYCbCrConvertPS()
Definition MediaShaders.h:402
Definition MediaShaders.h:372
FYCoCgConvertPS()
Definition MediaShaders.h:376
FYCoCgConvertPS(const ShaderMetaType::CompiledShaderInitializerType &Initializer)
Definition MediaShaders.h:378
RENDERCORE_API void SetParameters(FRHIBatchedShaderParameters &BatchedParameters, TRefCountPtr< FRHITexture > YCoCgTexture, const FIntPoint &OutputDimensions, UE::Color::EEncoding Encoding, const FMatrix44f &CSTransform, MediaShaders::EToneMapMethod ToneMapMethod=MediaShaders::EToneMapMethod::None)
Definition MediaShaders.cpp:507
Definition MediaShaders.h:456
FYUVConvertPS()
Definition MediaShaders.h:460
RENDERCORE_API void SetParameters(FRHIBatchedShaderParameters &BatchedParameters, TRefCountPtr< FRHITexture > YTexture, TRefCountPtr< FRHITexture > UTexture, TRefCountPtr< FRHITexture > VTexture, const FIntPoint &OutputDimensions, const FMatrix &ColorTransform, const FVector &YUVOffset, bool SrgbToLinear)
Definition MediaShaders.cpp:613
FYUVConvertPS(const ShaderMetaType::CompiledShaderInitializerType &Initializer)
Definition MediaShaders.h:462
Definition MediaShaders.h:521
RENDERCORE_API void SetParameters(FRHIBatchedShaderParameters &BatchedParameters, FShaderResourceViewRHIRef SRV_Y, const FMatrix44f &ColorTransform, UE::Color::EEncoding Encoding, const FMatrix44f &CSTransform, bool bIsARGBFmt, MediaShaders::EToneMapMethod ToneMapMethod=MediaShaders::EToneMapMethod::None)
Definition MediaShaders.cpp:732
FYUVY416ConvertPS()
Definition MediaShaders.h:525
FYUVY416ConvertPS(const ShaderMetaType::CompiledShaderInitializerType &Initializer)
Definition MediaShaders.h:527
Definition MediaShaders.h:500
FYUVv210ConvertPS(const ShaderMetaType::CompiledShaderInitializerType &Initializer)
Definition MediaShaders.h:506
RENDERCORE_API void SetParameters(FRHIBatchedShaderParameters &BatchedParameters, TRefCountPtr< FRHITexture > YUVTexture, const FIntPoint &OutputDimensions, const FMatrix44f &ColorTransform, UE::Color::EEncoding Encoding, const FMatrix44f &CSTransform, bool bIsCbY0CrY1, MediaShaders::EToneMapMethod ToneMapMethod=MediaShaders::EToneMapMethod::None)
Definition MediaShaders.cpp:696
FYUVv210ConvertPS()
Definition MediaShaders.h:504
Definition MediaShaders.h:478
FYUVv216ConvertPS(const ShaderMetaType::CompiledShaderInitializerType &Initializer)
Definition MediaShaders.h:484
RENDERCORE_API void SetParameters(FRHIBatchedShaderParameters &BatchedParameters, TRefCountPtr< FRHITexture > YUVTexture, const FIntPoint &OutputDimensions, const FMatrix44f &ColorTransform, UE::Color::EEncoding Encoding, const FMatrix44f &CSTransform, bool bIsCbY0CrY1, bool bIsARGBFmt, bool bSwapChroma, MediaShaders::EToneMapMethod ToneMapMethod=MediaShaders::EToneMapMethod::None, bool bUseBilinearSamplingForChroma=false)
Definition MediaShaders.cpp:655
FYUVv216ConvertPS()
Definition MediaShaders.h:482
Definition MediaShaders.h:544
FYUY2ConvertPS()
Definition MediaShaders.h:548
FYUY2ConvertPS(const ShaderMetaType::CompiledShaderInitializerType &Initializer)
Definition MediaShaders.h:550
RENDERCORE_API void SetParameters(FRHIBatchedShaderParameters &BatchedParameters, TRefCountPtr< FRHITexture > YUY2Texture, const FIntPoint &OutputDimensions, const FMatrix &ColorTransform, const FVector &YUVOffset, bool SrgbToLinear, MediaShaders::EToneMapMethod ToneMapMethod=MediaShaders::EToneMapMethod::None)
Definition MediaShaders.cpp:798
Definition MediaShaders.h:588
RENDERCORE_API void SetParameters(FRHIBatchedShaderParameters &BatchedParameters, TRefCountPtr< FRHITexture > YVYUTexture, const FMatrix &ColorTransform, const FVector &YUVOffset, bool SrgbToLinear)
Definition MediaShaders.cpp:831
FYVYUConvertPS(const ShaderMetaType::CompiledShaderInitializerType &Initializer)
Definition MediaShaders.h:594
FYVYUConvertPS()
Definition MediaShaders.h:592
Definition RenderResource.h:543
Definition Texture.h:1219
EEncoding
Definition ColorManagementDefines.h:20
Definition AdvancedWidgetsModule.cpp:13
Definition RHIShaderParameters.h:241
Definition RHIResources.h:1417
FRHIBufferCreateDesc & SetInitActionInitializer()
Definition RHIResources.h:1542
FRHIBufferCreateDesc & DetermineInitialState()
Definition RHIResources.h:1529
FRHIBufferCreateDesc & AddUsage(EBufferUsageFlags InUsage)
Definition RHIResources.h:1524
RHI_API FBufferRHIRef Finalize()
Definition RHIBufferInitializer.cpp:17
Definition RHIBufferInitializer.h:110
Definition ShaderPermutation.h:229