1
0
Fork 0
mirror of https://github.com/Ryujinx/Ryujinx.git synced 2024-12-21 08:52:01 +00:00
Ryujinx/Ryujinx.Graphics.Video/Vp9EntropyProbs.cs
gdkchan 4d02a2d2c0
New NVDEC and VIC implementation (#1384)
* Initial NVDEC and VIC implementation

* Update FFmpeg.AutoGen to 4.3.0

* Add nvdec dependencies for Windows

* Unify some VP9 structures

* Rename VP9 structure fields

* Improvements to Video API

* XML docs for Common.Memory

* Remove now unused or redundant overloads from MemoryAccessor

* NVDEC UV surface read/write scalar paths

* Add FIXME comments about hacky things/stuff that will need to be fixed in the future

* Cleaned up VP9 memory allocation

* Remove some debug logs

* Rename some VP9 structs

* Remove unused struct

* No need to compile Ryujinx.Graphics.Host1x with unsafe anymore

* Name AsyncWorkQueue threads to make debugging easier

* Make Vp9PictureInfo a ref struct

* LayoutConverter no longer needs the depth argument (broken by rebase)

* Pooling of VP9 buffers, plus fix a memory leak on VP9

* Really wish VS could rename projects properly...

* Address feedback

* Remove using

* Catch OperationCanceledException

* Add licensing informations

* Add THIRDPARTY.md to release too

Co-authored-by: Thog <me@thog.eu>
2020-07-12 05:07:01 +02:00

36 lines
1.4 KiB
C#

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;
}
}