From c86aacde76b5f8e503e2b412385c8491ecc86b3b Mon Sep 17 00:00:00 2001 From: gdkchan Date: Mon, 3 Dec 2018 00:38:47 -0200 Subject: NVDEC implementation using FFmpeg (#443) * Initial nvdec implementation using FFmpeg * Fix swapped channels on the video decoder and the G8R8 texture format * Fix texture samplers not being set properly (regression) * Rebased * Remove unused code introduced on the rebase * Add support for RGBA8 output format on the video image composer * Correct spacing * Some fixes for rebase and other tweaks * Allow size mismatch on frame copy * Get rid of GetHostAddress calls on VDec --- Ryujinx.Graphics/Vic/SurfaceOutputConfig.cs | 33 +++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 Ryujinx.Graphics/Vic/SurfaceOutputConfig.cs (limited to 'Ryujinx.Graphics/Vic/SurfaceOutputConfig.cs') diff --git a/Ryujinx.Graphics/Vic/SurfaceOutputConfig.cs b/Ryujinx.Graphics/Vic/SurfaceOutputConfig.cs new file mode 100644 index 00000000..0a232744 --- /dev/null +++ b/Ryujinx.Graphics/Vic/SurfaceOutputConfig.cs @@ -0,0 +1,33 @@ +namespace Ryujinx.Graphics.Vic +{ + struct SurfaceOutputConfig + { + public SurfacePixelFormat PixelFormat; + + public int SurfaceWidth; + public int SurfaceHeight; + public int GobBlockHeight; + + public long SurfaceLumaAddress; + public long SurfaceChromaUAddress; + public long SurfaceChromaVAddress; + + public SurfaceOutputConfig( + SurfacePixelFormat PixelFormat, + int SurfaceWidth, + int SurfaceHeight, + int GobBlockHeight, + long OutputSurfaceLumaAddress, + long OutputSurfaceChromaUAddress, + long OutputSurfaceChromaVAddress) + { + this.PixelFormat = PixelFormat; + this.SurfaceWidth = SurfaceWidth; + this.SurfaceHeight = SurfaceHeight; + this.GobBlockHeight = GobBlockHeight; + this.SurfaceLumaAddress = OutputSurfaceLumaAddress; + this.SurfaceChromaUAddress = OutputSurfaceChromaUAddress; + this.SurfaceChromaVAddress = OutputSurfaceChromaVAddress; + } + } +} \ No newline at end of file -- cgit v1.2.3