Exemple #1
0
 public MP3Class(Stream stream_1, int int_5, Enum4 enum4_0, int int_6)
 {
     this.class81_0 = new zzSoundClass81[int_5];
     for (int i = 0; i < this.class81_0.Length; i++)
     {
         this.class81_0[i] = new zzSoundClass81(new Class104(enum4_0));
     }
     this.fileStream = stream_1;
     this.class82_0 = new Class82(this.fileStream, int_6);
     this.int_2 = this.class82_0.method_2();
     this.long_0 = -1L;
     this.class107_0 = null;
     if (!this.method_0())
     {
         throw new Mp3Exception("Mp3 Decoder: Cannot read header.");
     }
     this.short_0 = 0;
     for (int j = 0; j < this.class81_0.Length; j++)
     {
         this.short_0 += (short)this.class81_0[j].method_2();
     }
     this.int_4 = this.class81_0[0].method_1();
     this.waveFormat_0 = new WaveFormat(this.int_4, (int)this.short_0);
     this.double_0 = (double)(this.waveFormat_0.int_0 * ((int)this.waveFormat_0.short_1 / this.class81_0.Length)) / ((double)this.int_3 / 8.0);
     this.long_1 = 0L;
     if (this.class107_0 != null && this.class107_0.method_10())
     {
         this.long_0 = Convert.ToInt64(this.class107_0.method_18((int)(this.fileStream.Length - (long)this.int_2) / this.class81_0.Length) * ((double)this.waveFormat_0.int_0 * ((double)this.waveFormat_0.short_1 / 1000.0)));
     }
     if (this.long_0 <= 0L)
     {
         this.long_0 = (long)((double)(this.fileStream.Length - (long)this.int_2) * this.double_0);
     }
 }
Exemple #2
0
 public MP3Stream(Stream stream_1, Enum4 enum4_0, int int_5)
 {
     this.class81_0 = new zzSoundClass81(new Class104(enum4_0));
     this.fileStream = stream_1;
     this.class82_0 = new Class82(this.fileStream, int_5);
     this.int_2 = this.class82_0.method_2();
     this.long_0 = -1L;
     this.class107_0 = null;
     if (!this.method_0())
     {
         throw new Mp3Exception("Mp3 Decoder: Cannot read header.");
     }
     this.short_0 = (short)this.class81_0.method_2();
     this.int_4 = this.class81_0.method_1();
     this.waveFormat_0 = new WaveFormat(this.int_4, (int)this.short_0);
     this.double_0 = (double)(this.waveFormat_0.int_0 * (int)this.waveFormat_0.short_1) / ((double)this.int_3 / 8.0);
     this.long_1 = 0L;
     if (this.class107_0 != null && this.class107_0.method_10())
     {
         this.long_0 = Convert.ToInt64(this.class107_0.method_18((int)(this.fileStream.Length - (long)this.int_2)) * ((double)this.waveFormat_0.int_0 * ((double)this.waveFormat_0.short_1 / 1000.0)));
         this.class83_0 = this.class107_0.method_11();
         if (this.class83_0 != null && this.class83_0.int_2 == -1)
         {
             this.class83_0.int_2 = (int)(this.fileStream.Length - (long)this.int_2);
         }
     }
     if (this.long_0 <= 0L)
     {
         this.long_0 = (long)((double)(this.fileStream.Length - (long)this.int_2) * this.double_0);
     }
 }
Exemple #3
0
 public virtual void vmethod_0(Class82 class82_1, zzSoundClass class107_1, Class80 class80_2, Class80 class80_3, Class84 class84_1, Enum4 enum4_1)
 {
     this.class82_0 = class82_1;
     this.class107_0 = class107_1;
     this.class80_0 = class80_2;
     this.class80_1 = class80_3;
     this.class84_0 = class84_1;
     this.enum4_0 = enum4_1;
 }
 public Class84 method_5(zzSoundClass class107_0, Class82 class82_0)
 {
     if (!this.bool_0)
     {
         this.method_3(class107_0);
     }
     int int_ = class107_0.method_4();
     this.class84_0.method_6();
     Interface7 @interface = this.method_4(class107_0, class82_0, int_);
     @interface.imethod_0();
     this.class84_0.method_5();
     return this.class84_0;
 }
 private void method_3(zzSoundClass class107_0)
 {
     Enum5 @enum = class107_0.method_8();
     class107_0.method_4();
     int num = (@enum == Enum5.const_3 || this.class104_1.method_0() != Enum4.const_0) ? 1 : 2;
     if (this.class84_0 == null)
     {
         this.class84_0 = new Class84(num);
     }
     float[] float_ = this.class105_0.method_0();
     this.class80_0 = new Class80(0, float_);
     if (num == 2)
     {
         this.class80_1 = new Class80(1, float_);
     }
     this.int_1 = num;
     this.int_0 = class107_0.method_7();
     this.bool_0 = true;
 }
 private Interface7 method_4(zzSoundClass class107_0, Class82 class82_0, int int_2)
 {
     Interface7 @interface = null;
     switch (int_2)
     {
     case 1:
         if (this.class92_0 == null)
         {
             this.class92_0 = new Class92();
             this.class92_0.vmethod_0(class82_0, class107_0, this.class80_0, this.class80_1, this.class84_0, this.class104_1.method_0());
         }
         @interface = this.class92_0;
         break;
     case 2:
         if (this.class93_0 == null)
         {
             this.class93_0 = new Class93();
             this.class93_0.vmethod_0(class82_0, class107_0, this.class80_0, this.class80_1, this.class84_0, this.class104_1.method_0());
         }
         @interface = this.class93_0;
         break;
     case 3:
         if (this.class85_0 == null)
         {
             this.class85_0 = new Class85(class82_0, class107_0, this.class80_0, this.class80_1, this.class84_0, this.class104_1.method_0());
         }
         @interface = this.class85_0;
         break;
     }
     if (@interface == null)
     {
         throw new DecoderException(DecoderError.UnsupportedLayer, null);
     }
     return @interface;
 }
Exemple #7
0
 private void method_0()
 {
     this.class101_0 = new Class101[1];
     this.byte_4 = new byte[4];
     this.byte_3 = new byte[1732];
     this.int_1 = new int[433];
     this.class107_0 = new zzSoundClass();
 }
Exemple #8
0
 public override void vmethod_1(Class82 class82_0, zzSoundClass class107_0)
 {
     if (this.int_6 == 0)
     {
         return;
     }
     switch (this.int_7)
     {
     case 0:
         this.float_22 = Class92.Class94.float_0[class82_0.method_13(6)];
         this.float_23 = Class92.Class94.float_0[class82_0.method_13(6)];
         this.float_24 = Class92.Class94.float_0[class82_0.method_13(6)];
         break;
     case 1:
         this.float_22 = (this.float_23 = Class92.Class94.float_0[class82_0.method_13(6)]);
         this.float_24 = Class92.Class94.float_0[class82_0.method_13(6)];
         break;
     case 2:
         this.float_22 = (this.float_23 = (this.float_24 = Class92.Class94.float_0[class82_0.method_13(6)]));
         break;
     case 3:
         this.float_22 = Class92.Class94.float_0[class82_0.method_13(6)];
         this.float_23 = (this.float_24 = Class92.Class94.float_0[class82_0.method_13(6)]);
         break;
     }
     this.vmethod_5(class107_0, this.int_6, 0, this.float_26, this.int_8, this.float_28, this.float_29);
 }
Exemple #9
0
 public bool method_1(int int_5)
 {
     zzSoundClass @class = this.class82_0.method_3();
     if (@class == null)
     {
         return false;
     }
     if (this.class107_0 == null)
     {
         this.class107_0 = @class;
     }
     try
     {
         this.int_3 = @class.method_21();
         this.class81_0[int_5].method_5(@class, this.class82_0);
     }
     finally
     {
         this.class82_0.method_7();
     }
     return true;
 }
Exemple #10
0
 public override void vmethod_0(Class82 class82_0, zzSoundClass class107_0, Class101 class101_0)
 {
     base.vmethod_0(class82_0, class107_0, class101_0);
 }
Exemple #11
0
 public override void vmethod_0(Class82 class82_0, zzSoundClass class107_0, Class101 class101_0)
 {
     if ((this.int_2 = class82_0.method_13(4)) == 15)
     {
         throw new DecoderException(DecoderError.IllegalSubbandAllocation, null);
     }
     if (class101_0 != null)
     {
         class101_0.method_0(this.int_2, 4);
     }
     if (this.int_2 != 0)
     {
         this.int_3 = this.int_2 + 1;
         this.float_5 = Class92.Class95.float_1[this.int_2];
         this.float_6 = Class92.Class95.float_2[this.int_2];
     }
 }
Exemple #12
0
 public abstract void vmethod_1(Class82 class82_0, zzSoundClass class107_0);
Exemple #13
0
 public override void vmethod_0(Class82 class82_0, zzSoundClass class107_0, Class101 class101_0)
 {
     int num = this.vmethod_4(class107_0);
     this.int_6 = class82_0.method_13(num);
     this.int_11 = class82_0.method_13(num);
     if (class101_0 != null)
     {
         class101_0.method_0(this.int_6, num);
         class101_0.method_0(this.int_11, num);
     }
 }
Exemple #14
0
 public override void vmethod_1(Class82 class82_0, zzSoundClass class107_0)
 {
     if (this.int_6 == 0)
     {
         return;
     }
     base.vmethod_1(class82_0, class107_0);
     switch (this.int_11)
     {
     case 0:
         this.float_30 = Class92.Class94.float_0[class82_0.method_13(6)];
         this.float_31 = Class92.Class94.float_0[class82_0.method_13(6)];
         this.float_32 = Class92.Class94.float_0[class82_0.method_13(6)];
         return;
     case 1:
         this.float_30 = (this.float_31 = Class92.Class94.float_0[class82_0.method_13(6)]);
         this.float_32 = Class92.Class94.float_0[class82_0.method_13(6)];
         return;
     case 2:
         this.float_30 = (this.float_31 = (this.float_32 = Class92.Class94.float_0[class82_0.method_13(6)]));
         return;
     case 3:
         this.float_30 = Class92.Class94.float_0[class82_0.method_13(6)];
         this.float_31 = (this.float_32 = Class92.Class94.float_0[class82_0.method_13(6)]);
         return;
     default:
         return;
     }
 }
Exemple #15
0
 public virtual void vmethod_5(zzSoundClass class107_0, int int_11, int int_12, float[] float_30, int[] int_13, float[] float_31, float[] float_32)
 {
     int num = class107_0.method_5();
     if (class107_0.method_8() != Enum5.const_3)
     {
         if (num == 4)
         {
             num = 1;
         }
         else
         {
             num -= 4;
         }
     }
     if (num != 1)
     {
         if (num != 2)
         {
             if (this.int_5 <= 2)
             {
                 this.float_25[int_12] = Class93.Class98.float_4[int_11];
                 float_30[0] = Class93.Class98.float_5[int_11];
                 int_13[0] = Class93.Class98.int_0[int_11];
                 float_31[0] = Class93.Class98.float_6[int_11];
                 float_32[0] = Class93.Class98.float_7[int_11];
                 return;
             }
             this.float_25[int_12] = Class93.Class98.float_8[int_11];
             if (this.int_5 <= 10)
             {
                 float_30[0] = Class93.Class98.float_9[int_11];
                 int_13[0] = Class93.Class98.int_1[int_11];
                 float_31[0] = Class93.Class98.float_10[int_11];
                 float_32[0] = Class93.Class98.float_11[int_11];
                 return;
             }
             if (this.int_5 <= 22)
             {
                 float_30[0] = Class93.Class98.float_12[int_11];
                 int_13[0] = Class93.Class98.int_2[int_11];
                 float_31[0] = Class93.Class98.float_13[int_11];
                 float_32[0] = Class93.Class98.float_14[int_11];
                 return;
             }
             float_30[0] = Class93.Class98.float_15[int_11];
             int_13[0] = Class93.Class98.int_3[int_11];
             float_31[0] = Class93.Class98.float_16[int_11];
             float_32[0] = Class93.Class98.float_17[int_11];
             return;
         }
     }
     this.float_25[int_12] = Class93.Class98.float_18[int_11];
     float_30[0] = Class93.Class98.float_19[int_11];
     int_13[0] = Class93.Class98.int_4[int_11];
     float_31[0] = Class93.Class98.float_20[int_11];
     float_32[0] = Class93.Class98.float_21[int_11];
 }
Exemple #16
0
 public virtual int vmethod_4(zzSoundClass class107_0)
 {
     if (class107_0.method_3() == Enum3.const_1)
     {
         int num = class107_0.method_5();
         if (class107_0.method_8() != Enum5.const_3)
         {
             if (num == 4)
             {
                 num = 1;
             }
             else
             {
                 num -= 4;
             }
         }
         if (num != 1)
         {
             if (num != 2)
             {
                 if (this.int_5 <= 10)
                 {
                     return 4;
                 }
                 if (this.int_5 > 22)
                 {
                     return 2;
                 }
                 return 3;
             }
         }
         if (this.int_5 > 1)
         {
             return 3;
         }
         return 4;
     }
     else
     {
         if (this.int_5 <= 3)
         {
             return 4;
         }
         if (this.int_5 > 10)
         {
             return 2;
         }
         return 3;
     }
 }
Exemple #17
0
 public Class85(Class82 class82_1, zzSoundClass class107_1, Class80 class80_2, Class80 class80_3, Class84 class84_1, Enum4 enum4_1)
     : base()
 {
     int[] array = new int[1];
     this.int_12 = array;
     int[] array2 = new int[1];
     this.int_13 = array2;
     int[] array3 = new int[1];
     this.int_14 = array3;
     int[] array4 = new int[1];
     this.int_15 = array4;
     this.int_16 = new int[576];
     this.float_7 = new float[576];
     this.float_8 = new float[18];
     this.float_9 = new float[36];
     //base..ctor();
     Class103.smethod_0();
     this.int_2 = new int[580];
     this.float_0 = new float[2][,];
     this.float_0[0] = new float[32, 18];
     this.float_0[1] = new float[32, 18];
     this.float_1 = new float[2][,];
     this.float_1[0] = new float[32, 18];
     this.float_1[1] = new float[32, 18];
     this.float_2 = new float[576];
     this.float_3 = new float[2, 576];
     this.float_4 = new float[2, 576];
     this.int_3 = new int[2];
     this.class90_0 = new Class85.Class90[2];
     this.class90_0[0] = new Class85.Class90();
     this.class90_0[1] = new Class85.Class90();
     this.class90_1 = this.class90_0;
     this.class86_0 = new Class85.Class86[9];
     int[] array5 = new int[]
     {
         0,
         6,
         12,
         18,
         24,
         30,
         36,
         44,
         54,
         66,
         80,
         96,
         116,
         140,
         168,
         200,
         238,
         284,
         336,
         396,
         464,
         522,
         576
     };
     int[] array6 = new int[]
     {
         0,
         4,
         8,
         12,
         18,
         24,
         32,
         42,
         56,
         74,
         100,
         132,
         174,
         192
     };
     int[] array7 = new int[]
     {
         0,
         6,
         12,
         18,
         24,
         30,
         36,
         44,
         54,
         66,
         80,
         96,
         114,
         136,
         162,
         194,
         232,
         278,
         330,
         394,
         464,
         540,
         576
     };
     int[] array8 = new int[]
     {
         0,
         4,
         8,
         12,
         18,
         26,
         36,
         48,
         62,
         80,
         104,
         136,
         180,
         192
     };
     int[] array9 = new int[]
     {
         0,
         6,
         12,
         18,
         24,
         30,
         36,
         44,
         54,
         66,
         80,
         96,
         116,
         140,
         168,
         200,
         238,
         284,
         336,
         396,
         464,
         522,
         576
     };
     int[] array10 = new int[]
     {
         0,
         4,
         8,
         12,
         18,
         26,
         36,
         48,
         62,
         80,
         104,
         134,
         174,
         192
     };
     int[] array11 = new int[]
     {
         0,
         4,
         8,
         12,
         16,
         20,
         24,
         30,
         36,
         44,
         52,
         62,
         74,
         90,
         110,
         134,
         162,
         196,
         238,
         288,
         342,
         418,
         576
     };
     int[] array12 = new int[]
     {
         0,
         4,
         8,
         12,
         16,
         22,
         30,
         40,
         52,
         66,
         84,
         106,
         136,
         192
     };
     int[] array13 = new int[]
     {
         0,
         4,
         8,
         12,
         16,
         20,
         24,
         30,
         36,
         42,
         50,
         60,
         72,
         88,
         106,
         128,
         156,
         190,
         230,
         276,
         330,
         384,
         576
     };
     int[] array14 = new int[]
     {
         0,
         4,
         8,
         12,
         16,
         22,
         28,
         38,
         50,
         64,
         80,
         100,
         126,
         192
     };
     int[] array15 = new int[]
     {
         0,
         4,
         8,
         12,
         16,
         20,
         24,
         30,
         36,
         44,
         54,
         66,
         82,
         102,
         126,
         156,
         194,
         240,
         296,
         364,
         448,
         550,
         576
     };
     int[] array16 = new int[]
     {
         0,
         4,
         8,
         12,
         16,
         22,
         30,
         42,
         58,
         78,
         104,
         138,
         180,
         192
     };
     int[] array17 = new int[]
     {
         0,
         6,
         12,
         18,
         24,
         30,
         36,
         44,
         54,
         66,
         80,
         96,
         116,
         140,
         168,
         200,
         238,
         284,
         336,
         396,
         464,
         522,
         576
     };
     int[] array18 = new int[]
     {
         0,
         4,
         8,
         12,
         18,
         26,
         36,
         48,
         62,
         80,
         104,
         134,
         174,
         192
     };
     int[] array19 = new int[]
     {
         0,
         6,
         12,
         18,
         24,
         30,
         36,
         44,
         54,
         66,
         80,
         96,
         116,
         140,
         168,
         200,
         238,
         284,
         336,
         396,
         464,
         522,
         576
     };
     int[] array20 = new int[]
     {
         0,
         4,
         8,
         12,
         18,
         26,
         36,
         48,
         62,
         80,
         104,
         134,
         174,
         192
     };
     int[] array21 = new int[]
     {
         0,
         12,
         24,
         36,
         48,
         60,
         72,
         88,
         108,
         132,
         160,
         192,
         232,
         280,
         336,
         400,
         476,
         566,
         568,
         570,
         572,
         574,
         576
     };
     int[] array22 = new int[]
     {
         0,
         8,
         16,
         24,
         36,
         52,
         72,
         96,
         124,
         160,
         162,
         164,
         166,
         192
     };
     this.class86_0[0] = new Class85.Class86(array5, array6);
     this.class86_0[1] = new Class85.Class86(array7, array8);
     this.class86_0[2] = new Class85.Class86(array9, array10);
     this.class86_0[3] = new Class85.Class86(array11, array12);
     this.class86_0[4] = new Class85.Class86(array13, array14);
     this.class86_0[5] = new Class85.Class86(array15, array16);
     this.class86_0[6] = new Class85.Class86(array17, array18);
     this.class86_0[7] = new Class85.Class86(array19, array20);
     this.class86_0[8] = new Class85.Class86(array21, array22);
     if (Class85.int_22 == null)
     {
         Class85.int_22 = new int[9][];
         for (int i = 0; i < 9; i++)
         {
             Class85.int_22[i] = Class85.smethod_1(this.class86_0[i].int_1);
         }
     }
     int[] array23 = new int[]
     {
         0,
         6,
         11,
         16,
         21
     };
     int[] array24 = new int[]
     {
         0,
         6,
         12
     };
     this.class91_0 = new Class85.Class91(this, array23, array24);
     this.int_0 = new int[54];
     this.class82_0 = class82_1;
     this.class107_0 = class107_1;
     this.class80_0 = class80_2;
     this.class80_1 = class80_3;
     this.class84_0 = class84_1;
     this.enum4_0 = enum4_1;
     this.int_5 = 0;
     this.int_7 = ((this.class107_0.method_8() == Enum5.const_3) ? 1 : 2);
     this.int_4 = ((this.class107_0.method_3() == Enum3.const_1) ? 2 : 1);
     this.int_10 = this.class107_0.method_6() + ((this.class107_0.method_3() == Enum3.const_1) ? 3 : ((this.class107_0.method_3() == Enum3.const_2) ? 6 : 0));
     if (this.int_7 == 2)
     {
         switch (this.enum4_0)
         {
         case Enum4.const_0:
             IL_4E3:
             this.int_8 = 0;
             this.int_9 = 1;
             goto IL_521;
         case Enum4.const_1:
         case Enum4.const_3:
             this.int_9 = 0;
             this.int_8 = 0;
             goto IL_521;
         case Enum4.const_2:
             this.int_9 = 1;
             this.int_8 = 1;
             goto IL_521;
         }
     //  goto IL_4E3
         this.int_8 = 0;
         this.int_9 = 1;
         goto IL_521;
     }
     this.int_9 = 0;
     this.int_8 = 0;
     IL_521:
     Array.Clear(this.float_3, 0, 1152);
     int[] arg_54B_0 = this.int_3;
     int arg_54B_1 = 0;
     this.int_3[1] = 576;
     arg_54B_0[arg_54B_1] = 576;
     this.class102_0 = new Class102();
     this.class89_0 = new Class85.Class89();
 }
Exemple #18
0
 public override void vmethod_0(Class82 class82_0, zzSoundClass class107_0, Class101 class101_0)
 {
     this.int_2 = class82_0.method_13(4);
     this.int_4 = class82_0.method_13(4);
     if (class101_0 != null)
     {
         class101_0.method_0(this.int_2, 4);
         class101_0.method_0(this.int_4, 4);
     }
     if (this.int_2 != 0)
     {
         this.int_3 = this.int_2 + 1;
         this.float_5 = Class92.Class95.float_1[this.int_2];
         this.float_6 = Class92.Class95.float_2[this.int_2];
     }
     if (this.int_4 != 0)
     {
         this.int_5 = this.int_4 + 1;
         this.float_9 = Class92.Class95.float_1[this.int_4];
         this.float_10 = Class92.Class95.float_2[this.int_4];
     }
 }
Exemple #19
0
 public override void vmethod_1(Class82 class82_0, zzSoundClass class107_0)
 {
     if (this.int_2 != 0)
     {
         this.float_3 = Class92.Class94.float_0[class82_0.method_13(6)];
     }
     if (this.int_4 != 0)
     {
         this.float_7 = Class92.Class94.float_0[class82_0.method_13(6)];
     }
 }
Exemple #20
0
 public override void vmethod_1(Class82 class82_0, zzSoundClass class107_0)
 {
     base.vmethod_1(class82_0, class107_0);
     if (this.int_11 != 0)
     {
         switch (this.int_12)
         {
         case 0:
             this.float_30 = Class92.Class94.float_0[class82_0.method_13(6)];
             this.float_31 = Class92.Class94.float_0[class82_0.method_13(6)];
             this.float_32 = Class92.Class94.float_0[class82_0.method_13(6)];
             break;
         case 1:
             this.float_30 = (this.float_31 = Class92.Class94.float_0[class82_0.method_13(6)]);
             this.float_32 = Class92.Class94.float_0[class82_0.method_13(6)];
             break;
         case 2:
             this.float_30 = (this.float_31 = (this.float_32 = Class92.Class94.float_0[class82_0.method_13(6)]));
             break;
         case 3:
             this.float_30 = Class92.Class94.float_0[class82_0.method_13(6)];
             this.float_31 = (this.float_32 = Class92.Class94.float_0[class82_0.method_13(6)]);
             break;
         }
         this.vmethod_5(class107_0, this.int_11, 1, this.float_33, this.int_13, this.float_35, this.float_36);
     }
 }