mirror of
https://git.743378673.xyz/MeloNX/MeloNX.git
synced 2025-07-10 09:16:27 +02:00
Move solution and projects to src
This commit is contained in:
parent
cd124bda58
commit
cee7121058
3466 changed files with 55 additions and 55 deletions
8
src/Ryujinx.Graphics.Video/FrameField.cs
Normal file
8
src/Ryujinx.Graphics.Video/FrameField.cs
Normal file
|
@ -0,0 +1,8 @@
|
|||
namespace Ryujinx.Graphics.Video
|
||||
{
|
||||
public enum FrameField
|
||||
{
|
||||
Progressive,
|
||||
Interlaced
|
||||
}
|
||||
}
|
47
src/Ryujinx.Graphics.Video/H264PictureInfo.cs
Normal file
47
src/Ryujinx.Graphics.Video/H264PictureInfo.cs
Normal file
|
@ -0,0 +1,47 @@
|
|||
using Ryujinx.Common.Memory;
|
||||
|
||||
namespace Ryujinx.Graphics.Video
|
||||
{
|
||||
public struct H264PictureInfo
|
||||
{
|
||||
public Array2<int> FieldOrderCnt;
|
||||
public bool IsReference;
|
||||
public ushort ChromaFormatIdc;
|
||||
public ushort FrameNum;
|
||||
public bool FieldPicFlag;
|
||||
public bool BottomFieldFlag;
|
||||
public uint NumRefFrames;
|
||||
public bool MbAdaptiveFrameFieldFlag;
|
||||
public bool ConstrainedIntraPredFlag;
|
||||
public bool WeightedPredFlag;
|
||||
public uint WeightedBipredIdc;
|
||||
public bool FrameMbsOnlyFlag;
|
||||
public bool Transform8x8ModeFlag;
|
||||
public int ChromaQpIndexOffset;
|
||||
public int SecondChromaQpIndexOffset;
|
||||
public int PicInitQpMinus26;
|
||||
public uint NumRefIdxL0ActiveMinus1;
|
||||
public uint NumRefIdxL1ActiveMinus1;
|
||||
public uint Log2MaxFrameNumMinus4;
|
||||
public uint PicOrderCntType;
|
||||
public uint Log2MaxPicOrderCntLsbMinus4;
|
||||
public bool DeltaPicOrderAlwaysZeroFlag;
|
||||
public bool Direct8x8InferenceFlag;
|
||||
public bool EntropyCodingModeFlag;
|
||||
public bool PicOrderPresentFlag;
|
||||
public bool DeblockingFilterControlPresentFlag;
|
||||
public bool RedundantPicCntPresentFlag;
|
||||
public uint NumSliceGroupsMinus1;
|
||||
public uint SliceGroupMapType;
|
||||
public uint SliceGroupChangeRateMinus1;
|
||||
// TODO: Slice group map
|
||||
public bool FmoAsoEnable;
|
||||
public bool ScalingMatrixPresent;
|
||||
public Array6<Array16<byte>> ScalingLists4x4;
|
||||
public Array2<Array64<byte>> ScalingLists8x8;
|
||||
public uint FrameType;
|
||||
public uint PicWidthInMbsMinus1;
|
||||
public uint PicHeightInMapUnitsMinus1;
|
||||
public bool QpprimeYZeroTransformBypassFlag;
|
||||
}
|
||||
}
|
11
src/Ryujinx.Graphics.Video/IDecoder.cs
Normal file
11
src/Ryujinx.Graphics.Video/IDecoder.cs
Normal file
|
@ -0,0 +1,11 @@
|
|||
using System;
|
||||
|
||||
namespace Ryujinx.Graphics.Video
|
||||
{
|
||||
public interface IDecoder : IDisposable
|
||||
{
|
||||
bool IsHardwareAccelerated { get; }
|
||||
|
||||
ISurface CreateSurface(int width, int height);
|
||||
}
|
||||
}
|
9
src/Ryujinx.Graphics.Video/IH264Decoder.cs
Normal file
9
src/Ryujinx.Graphics.Video/IH264Decoder.cs
Normal file
|
@ -0,0 +1,9 @@
|
|||
using System;
|
||||
|
||||
namespace Ryujinx.Graphics.Video
|
||||
{
|
||||
public interface IH264Decoder : IDecoder
|
||||
{
|
||||
bool Decode(ref H264PictureInfo pictureInfo, ISurface output, ReadOnlySpan<byte> bitstream);
|
||||
}
|
||||
}
|
20
src/Ryujinx.Graphics.Video/ISurface.cs
Normal file
20
src/Ryujinx.Graphics.Video/ISurface.cs
Normal file
|
@ -0,0 +1,20 @@
|
|||
using System;
|
||||
|
||||
namespace Ryujinx.Graphics.Video
|
||||
{
|
||||
public interface ISurface : IDisposable
|
||||
{
|
||||
Plane YPlane { get; }
|
||||
Plane UPlane { get; }
|
||||
Plane VPlane { get; }
|
||||
|
||||
FrameField Field { get; }
|
||||
|
||||
int Width { get; }
|
||||
int Height { get; }
|
||||
int Stride { get; }
|
||||
int UvWidth { get; }
|
||||
int UvHeight { get; }
|
||||
int UvStride { get; }
|
||||
}
|
||||
}
|
14
src/Ryujinx.Graphics.Video/IVp9Decoder.cs
Normal file
14
src/Ryujinx.Graphics.Video/IVp9Decoder.cs
Normal file
|
@ -0,0 +1,14 @@
|
|||
using System;
|
||||
|
||||
namespace Ryujinx.Graphics.Video
|
||||
{
|
||||
public interface IVp9Decoder : IDecoder
|
||||
{
|
||||
bool Decode(
|
||||
ref Vp9PictureInfo pictureInfo,
|
||||
ISurface output,
|
||||
ReadOnlySpan<byte> bitstream,
|
||||
ReadOnlySpan<Vp9MvRef> mvsIn,
|
||||
Span<Vp9MvRef> mvsOut);
|
||||
}
|
||||
}
|
6
src/Ryujinx.Graphics.Video/Plane.cs
Normal file
6
src/Ryujinx.Graphics.Video/Plane.cs
Normal file
|
@ -0,0 +1,6 @@
|
|||
using System;
|
||||
|
||||
namespace Ryujinx.Graphics.Video
|
||||
{
|
||||
public readonly record struct Plane(IntPtr Pointer, int Length);
|
||||
}
|
11
src/Ryujinx.Graphics.Video/Ryujinx.Graphics.Video.csproj
Normal file
11
src/Ryujinx.Graphics.Video/Ryujinx.Graphics.Video.csproj
Normal file
|
@ -0,0 +1,11 @@
|
|||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>net7.0</TargetFramework>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\Ryujinx.Common\Ryujinx.Common.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
11
src/Ryujinx.Graphics.Video/Vp8PictureInfo.cs
Normal file
11
src/Ryujinx.Graphics.Video/Vp8PictureInfo.cs
Normal file
|
@ -0,0 +1,11 @@
|
|||
namespace Ryujinx.Graphics.Video
|
||||
{
|
||||
public ref struct Vp8PictureInfo
|
||||
{
|
||||
public bool KeyFrame;
|
||||
public uint FirstPartSize;
|
||||
public uint Version;
|
||||
public ushort FrameWidth;
|
||||
public ushort FrameHeight;
|
||||
}
|
||||
}
|
32
src/Ryujinx.Graphics.Video/Vp9BackwardUpdates.cs
Normal file
32
src/Ryujinx.Graphics.Video/Vp9BackwardUpdates.cs
Normal file
|
@ -0,0 +1,32 @@
|
|||
using Ryujinx.Common.Memory;
|
||||
|
||||
namespace Ryujinx.Graphics.Video
|
||||
{
|
||||
public struct Vp9BackwardUpdates
|
||||
{
|
||||
public Array4<Array10<uint>> YMode;
|
||||
public Array10<Array10<uint>> UvMode;
|
||||
public Array16<Array4<uint>> Partition;
|
||||
public Array4<Array2<Array2<Array6<Array6<Array4<uint>>>>>> Coef;
|
||||
public Array4<Array2<Array2<Array6<Array6<uint>>>>> EobBranch;
|
||||
public Array4<Array3<uint>> SwitchableInterp;
|
||||
public Array7<Array4<uint>> InterMode;
|
||||
public Array4<Array2<uint>> IntraInter;
|
||||
public Array5<Array2<uint>> CompInter;
|
||||
public Array5<Array2<Array2<uint>>> SingleRef;
|
||||
public Array5<Array2<uint>> CompRef;
|
||||
public Array2<Array4<uint>> Tx32x32;
|
||||
public Array2<Array3<uint>> Tx16x16;
|
||||
public Array2<Array2<uint>> Tx8x8;
|
||||
public Array3<Array2<uint>> Skip;
|
||||
public Array4<uint> Joints;
|
||||
public Array2<Array2<uint>> Sign;
|
||||
public Array2<Array11<uint>> Classes;
|
||||
public Array2<Array2<uint>> Class0;
|
||||
public Array2<Array10<Array2<uint>>> Bits;
|
||||
public Array2<Array2<Array4<uint>>> Class0Fp;
|
||||
public Array2<Array4<uint>> Fp;
|
||||
public Array2<Array2<uint>> Class0Hp;
|
||||
public Array2<Array2<uint>> Hp;
|
||||
}
|
||||
}
|
36
src/Ryujinx.Graphics.Video/Vp9EntropyProbs.cs
Normal file
36
src/Ryujinx.Graphics.Video/Vp9EntropyProbs.cs
Normal file
|
@ -0,0 +1,36 @@
|
|||
using Ryujinx.Common.Memory;
|
||||
|
||||
namespace Ryujinx.Graphics.Video
|
||||
{
|
||||
public struct Vp9EntropyProbs
|
||||
{
|
||||
public Array10<Array10<Array9<byte>>> KfYModeProb;
|
||||
public Array7<byte> SegTreeProb;
|
||||
public Array3<byte> SegPredProb;
|
||||
public Array10<Array9<byte>> KfUvModeProb;
|
||||
public Array4<Array9<byte>> YModeProb;
|
||||
public Array10<Array9<byte>> UvModeProb;
|
||||
public Array16<Array3<byte>> KfPartitionProb;
|
||||
public Array16<Array3<byte>> PartitionProb;
|
||||
public Array4<Array2<Array2<Array6<Array6<Array3<byte>>>>>> CoefProbs;
|
||||
public Array4<Array2<byte>> SwitchableInterpProb;
|
||||
public Array7<Array3<byte>> InterModeProb;
|
||||
public Array4<byte> IntraInterProb;
|
||||
public Array5<byte> CompInterProb;
|
||||
public Array5<Array2<byte>> SingleRefProb;
|
||||
public Array5<byte> CompRefProb;
|
||||
public Array2<Array3<byte>> Tx32x32Prob;
|
||||
public Array2<Array2<byte>> Tx16x16Prob;
|
||||
public Array2<Array1<byte>> Tx8x8Prob;
|
||||
public Array3<byte> SkipProb;
|
||||
public Array3<byte> Joints;
|
||||
public Array2<byte> Sign;
|
||||
public Array2<Array10<byte>> Classes;
|
||||
public Array2<Array1<byte>> Class0;
|
||||
public Array2<Array10<byte>> Bits;
|
||||
public Array2<Array2<Array3<byte>>> Class0Fp;
|
||||
public Array2<Array3<byte>> Fp;
|
||||
public Array2<byte> Class0Hp;
|
||||
public Array2<byte> Hp;
|
||||
}
|
||||
}
|
8
src/Ryujinx.Graphics.Video/Vp9Mv.cs
Normal file
8
src/Ryujinx.Graphics.Video/Vp9Mv.cs
Normal file
|
@ -0,0 +1,8 @@
|
|||
namespace Ryujinx.Graphics.Video
|
||||
{
|
||||
public struct Vp9Mv
|
||||
{
|
||||
public short Row;
|
||||
public short Col;
|
||||
}
|
||||
}
|
11
src/Ryujinx.Graphics.Video/Vp9MvRef.cs
Normal file
11
src/Ryujinx.Graphics.Video/Vp9MvRef.cs
Normal file
|
@ -0,0 +1,11 @@
|
|||
using Ryujinx.Common.Memory;
|
||||
|
||||
namespace Ryujinx.Graphics.Video
|
||||
{
|
||||
// This must match the structure used by NVDEC, do not modify.
|
||||
public struct Vp9MvRef
|
||||
{
|
||||
public Array2<Vp9Mv> Mvs;
|
||||
public Array2<int> RefFrames;
|
||||
}
|
||||
}
|
39
src/Ryujinx.Graphics.Video/Vp9PictureInfo.cs
Normal file
39
src/Ryujinx.Graphics.Video/Vp9PictureInfo.cs
Normal file
|
@ -0,0 +1,39 @@
|
|||
using Ryujinx.Common.Memory;
|
||||
|
||||
namespace Ryujinx.Graphics.Video
|
||||
{
|
||||
public ref struct Vp9PictureInfo
|
||||
{
|
||||
public ISurface LastReference;
|
||||
public ISurface GoldenReference;
|
||||
public ISurface AltReference;
|
||||
public bool IsKeyFrame;
|
||||
public bool IntraOnly;
|
||||
public Array4<sbyte> RefFrameSignBias;
|
||||
public int BaseQIndex;
|
||||
public int YDcDeltaQ;
|
||||
public int UvDcDeltaQ;
|
||||
public int UvAcDeltaQ;
|
||||
public bool Lossless;
|
||||
public int TransformMode;
|
||||
public bool AllowHighPrecisionMv;
|
||||
public int InterpFilter;
|
||||
public int ReferenceMode;
|
||||
public sbyte CompFixedRef;
|
||||
public Array2<sbyte> CompVarRef;
|
||||
public int Log2TileCols;
|
||||
public int Log2TileRows;
|
||||
public bool SegmentEnabled;
|
||||
public bool SegmentMapUpdate;
|
||||
public bool SegmentMapTemporalUpdate;
|
||||
public int SegmentAbsDelta;
|
||||
public Array8<uint> SegmentFeatureEnable;
|
||||
public Array8<Array4<short>> SegmentFeatureData;
|
||||
public bool ModeRefDeltaEnabled;
|
||||
public bool UsePrevInFindMvRefs;
|
||||
public Array4<sbyte> RefDeltas;
|
||||
public Array2<sbyte> ModeDeltas;
|
||||
public Vp9EntropyProbs Entropy;
|
||||
public Vp9BackwardUpdates BackwardUpdateCounts;
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue