Beispiel #1
0
 public static int GetHeightSubsample(this ColorSpaces colorSpace)
 {
     if (!colorSpace.IsRealPlanar())
     {
         return(1);
     }
     return(colorSpace.HasFlag(ColorSpaces.CS_Sub_Height_1) ? 1 :
            (colorSpace.HasFlag(ColorSpaces.CS_Sub_Height_4) ? 4 : 2));
 }
Beispiel #2
0
 public static YUVPlanes[] GetPlanes(ColorSpaces colorSpace)
 {
     if (colorSpace.HasFlag(ColorSpaces.CS_INTERLEAVED))
     {
         return new[] { default(YUVPlanes) }
     }
     ;
     return(new[] { YUVPlanes.PLANAR_Y, YUVPlanes.PLANAR_U, YUVPlanes.PLANAR_V });
 }
Beispiel #3
0
 public static int GetBitDepth(this ColorSpaces colorSpace)
 {
     return(bitDepths.First(p => colorSpace.HasFlag(p.Key)).Value);
 }
Beispiel #4
0
 public static int GetHeightSubsample(this ColorSpaces colorSpace)
 {
     return(colorSpace.HasFlag(ColorSpaces.CS_Sub_Height_1) ? 1 :
            (colorSpace.HasFlag(ColorSpaces.CS_Sub_Height_4) ? 4 : 2));
 }
Beispiel #5
0
 public static int GetWidthSubsample(this ColorSpaces colorSpace)
 {
     return(colorSpace.HasFlag(ColorSpaces.CS_Sub_Width_1) ? 1 :
            (colorSpace.HasFlag(ColorSpaces.CS_Sub_Width_4) ? 4 : 2));
 }
Beispiel #6
0
 public static bool IsRealPlanar(this ColorSpaces pixelType)
 {
     return(pixelType.HasFlag(ColorSpaces.CS_PLANAR) && !pixelType.HasFlag(ColorSpaces.CS_INTERLEAVED)); //Y8 is interleaved
 }