Index: mppenc/branches/r2d/src/analy_filter.c
===================================================================
--- mppenc/branches/r2d/src/analy_filter.c	(revision 59)
+++ mppenc/branches/r2d/src/analy_filter.c	(revision 60)
@@ -249,5 +249,4 @@
 
     /************************* calculate L-signal ***************************/
-    ENTER(180);
     memcpy ( X_L + X_MEM, X_L, 480*sizeof(*X_L) );
     x      = X_L + X_MEM;
@@ -286,5 +285,4 @@
         Matrixing ( MaxBand, M, Y_R, &out[0].R[n] );    // matrixing
     }
-    LEAVE(180);
 }
 
@@ -304,5 +302,4 @@
 
     /************************* calculate L-signal ***************************/
-    ENTER(180);
     memcpy ( X_L + X_MEM, X_L, 480*sizeof(*X_L) );
     x      = X_L + X_MEM;
@@ -340,5 +337,4 @@
         Matrixing ( MaxBand, M, Y_R, &out[0].R[n] );    // matrixing
     }
-    LEAVE(180);
 }
 
Index: mppenc/branches/r2d/src/bitstream.c
===================================================================
--- mppenc/branches/r2d/src/bitstream.c	(revision 59)
+++ mppenc/branches/r2d/src/bitstream.c	(revision 60)
@@ -41,6 +41,4 @@
 Change_Endian32 ( unsigned int* dst, size_t words32bit )
 {
-    ENTER(160);
-
     for ( ; words32bit--; dst++ ) {
 # if  INT_MAX >= 2147483647L
@@ -59,5 +57,4 @@
 # endif
     }
-    LEAVE(160);
     return;
 }
Index: mppenc/branches/r2d/src/encode_sv7.c
===================================================================
--- mppenc/branches/r2d/src/encode_sv7.c	(revision 59)
+++ mppenc/branches/r2d/src/encode_sv7.c	(revision 60)
@@ -144,5 +144,5 @@
             if ( q[i] != 1 )
                 return;
-        fprintf ( stderr, "Alles Nullsamples, aber Auflösung = %u\n", *Res );
+        fprintf ( stderr, "Alles Nullsamples, aber Auflï¿œung = %u\n", *Res );
         *Res = 0;
         break;
@@ -151,5 +151,5 @@
             if ( q[i] != 2 )
                 return;
-        fprintf ( stderr, "Alles Nullsamples, aber Auflösung = %u\n", *Res );
+        fprintf ( stderr, "Alles Nullsamples, aber Auflï¿œung = %u\n", *Res );
         *Res = 0;
         break;
@@ -177,6 +177,4 @@
     unsigned char        SCFI_R [32];
 
-    ENTER(110);
-
     /************************************ Resolution *********************************/
     WriteBits ( (unsigned int)Res_L[0], 4 );                            // subband 0
@@ -415,6 +413,4 @@
 
     }
-
-    LEAVE(110);
     return;
 }
Index: mppenc/branches/r2d/src/mppdec.h
===================================================================
--- mppenc/branches/r2d/src/mppdec.h	(revision 59)
+++ mppenc/branches/r2d/src/mppdec.h	(revision 60)
@@ -1161,7 +1161,4 @@
 # endif
 
-//// Profiler include //////////////////////////////////////////////
-#include "profile.h"
-
 #ifdef _MSC_VER
 #pragma warning ( disable : 4244 )
Index: mppenc/branches/r2d/src/mppenc.c
===================================================================
--- mppenc/branches/r2d/src/mppenc.c	(revision 59)
+++ mppenc/branches/r2d/src/mppenc.c	(revision 60)
@@ -26,19 +26,12 @@
 
 /* G L O B A L  V A R I A B L E S */
-float         SNR_comp_L [32];
-float         SNR_comp_R [32];             // SNR-compensation after SCF-combination and ANS-gain
 float         Power_L    [32] [3];
 float         Power_R    [32] [3];
 float         PNS = 0.;
-int           Max_Band;                    // maximum bandwidth
 
 /* MS-Coding */
 unsigned int  MS_Channelmode;              // global flag for enhanced functionality
-float         SampleFreq      =  0.;
-float         Bandwidth       =  0.;
 int           PredictionBands =  0;
 int           CombPenalities  = -1;
-extern float  KBD1            =  2;
-extern float  KBD2            = -1.;
 int           DisplayUpdateTime = 1;
 int           APE_Version     = 2000;
@@ -410,6 +403,4 @@
     int    n;
     int    idx;
-
-    ENTER(2);
     for ( n = 0; n < BLOCK; n++, N++ ) {
         idx           = n + CENTER;
@@ -422,5 +413,4 @@
         data->S[idx] *= scale;
     }
-    LEAVE(2);
 }
 
@@ -434,6 +424,4 @@
     int    n;
     int    idx;
-
-    ENTER(3);
     for ( n = 0; n < BLOCK; n++, N++ ) {
         idx           = n + CENTER;
@@ -446,5 +434,4 @@
         data->S[idx] *= scale;
     }
-    LEAVE(3);
 }
 
@@ -493,6 +480,4 @@
     float  SL;
     float  SR;
-
-    ENTER(4);
 
     for ( Band = 0; Band <= MaxBand; Band++ ) {         // Suche nach Maxima
@@ -673,6 +658,4 @@
             }
     }
-
-    LEAVE(4);
     return;
 }
@@ -689,6 +672,4 @@
     static float  errorR [32] [36 + MAX_NS_ORDER];
     int           Band;
-
-    ENTER(5);
 
     // quantize Subband- and Subframe-samples
@@ -717,6 +698,4 @@
         }
     }
-
-    LEAVE(5);
     return;
 }
@@ -772,6 +751,4 @@
     float  save [36];   // to adjust the scalefactors
     float  MNR;         // Mask-to-Noise ratio
-
-    ENTER(6);
 
     for ( Band = 0; Band <= MaxBand; Band++, res++, comp++, smr++, scf += 3, x += 72 ) {
@@ -814,5 +791,4 @@
 
     }
-    LEAVE(6);
     return;
 }
@@ -1596,6 +1572,4 @@
 
 
-    ENTER(2);
-
     // initialize PCM-data
     memset ( &Main, 0, sizeof Main );
@@ -1860,12 +1834,11 @@
         if ( N == LastValidFrame - 1 ) {
             WriteBits ( LastValidSamples, 11 );
-            // fprintf ( stderr, "\nGültige Samples im letzten Frame: %4u   \n", LastValidSamples );
+            // fprintf ( stderr, "\nGltige Samples im letzten Frame: %4u   \n", LastValidSamples );
         }
         if ( N >= LastValidFrame ) {
-            // fprintf ( stderr, "Zusätzlicher Frame %u (von %u) angehängt.   \n", N, LastValidFrame );
-        }
-
-    }
-    LEAVE(2);
+            // fprintf ( stderr, "Zusï¿œzlicher Frame %u (von %u) angehï¿œgt.   \n", N, LastValidFrame );
+        }
+
+    }
 
     // write the last incomplete word to buffer, so it's written during the next flush
@@ -1936,7 +1909,4 @@
             SendStartupMessage ( MPPENC_VERSION, 7, MPPENC_BUILD );
     }
-
-    START();
-    ENTER(1);
 
     // Welcome message
@@ -1978,6 +1948,4 @@
         stderr_printf("\a\a\a");
 
-    LEAVE(1);
-    REPORT();
 #ifdef BUGBUG
     reppr ();
Index: mppenc/branches/r2d/src/mppenc.h
===================================================================
--- mppenc/branches/r2d/src/mppenc.h	(revision 59)
+++ mppenc/branches/r2d/src/mppenc.h	(revision 60)
@@ -36,96 +36,12 @@
 #define X_MEM            1152
 
-// ans.c
-#define MAX_NS_ORDER        6                   // maximum order of the Adaptive Noise Shaping Filter (IIR)
-#define MAX_ANS_BANDS      16
-#define MAX_ANS_LINES    (32 * MAX_ANS_BANDS)   // maximum number of noiseshaped FFT-lines
-///////// 16 * MAX_ANS_BANDS not sufficient? //////////////////
-#define MS2SPAT1             0.5f
-#define MS2SPAT2             0.25f
-#define MS2SPAT3             0.125f
-#define MS2SPAT4             0.0625f
-
 // bitstream.c
 #define BUFFER_ALMOST_FULL  8192
 #define BUFFER_FULL         (BUFFER_ALMOST_FULL + 4352)         // 34490 bit/frame  1320.3 kbps
 
-// cvd.c
-#define MAX_CVD_LINE      300                   // maximum FFT-Index for CVD
-#define CVD_UNPRED          0.040f              // unpredictability (cw) for CVD-detected bins, e33 (04)
-#define MIN_ANALYZED_IDX   12                   // maximum base-frequency = 44100/MIN_ANALYZED_IDX ^^^^^^
-#define MED_ANALYZED_IDX   50                   // maximum base-frequency = 44100/MED_ANALYZED_IDX ^^^^^^
-#define MAX_ANALYZED_IDX  900                   // minimum base-frequency = 44100/MAX_ANALYZED_IDX  (816 for Amnesia)
-
-// mppenc.h
-#define CENTER            448                   // offset for centering current data in Main-array
-#define BLOCK            1152                   // blocksize
-#define ANABUFFER    (BLOCK + CENTER)           // size of PCM-data array for analysis
-
-// psy.c
-#define SHORTFFT_OFFSET   168                   // fft-offset for short FFT's
-#define PREFAC_LONG        10                   // preecho-factor for long partitions
-
-// psy_tab.h
-#define PART_LONG          57                   // number of partitions for long
-#define PART_SHORT     (PART_LONG / 3)          // number of partitions for short
-#define MAX_SPL            20                   // maximum assumed Sound Pressure Level
-
 // quant.h
 #define SCFfac              0.832980664785f     // = SCF[n-1]/SCF[n]
 
 // wave_in.h
-
-
-// fast but maybe more inaccurate, use if you need speed
-#if defined(__GNUC__) && !defined(__APPLE__)
-#  define SIN(x)      sinf ((float)(x))
-#  define COS(x)      cosf ((float)(x))
-#  define ATAN2(x,y)  atan2f ((float)(x), (float)(y))
-#  define SQRT(x)     sqrtf ((float)(x))
-#  define LOG(x)      logf ((float)(x))
-#  define LOG10(x)    log10f ((float)(x))
-#  define POW(x,y)    expf (logf(x) * (y))
-#  define POW10(x)    expf (M_LN10 * (x))
-#  define FLOOR(x)    floorf ((float)(x))
-#  define IFLOOR(x)   (int) floorf ((float)(x))
-#  define FABS(x)     fabsf ((float)(x))
-#else
-# define SIN(x)      (float) sin (x)
-# define COS(x)      (float) cos (x)
-# define ATAN2(x,y)  (float) atan2 (x, y)
-# define SQRT(x)     (float) sqrt (x)
-# define LOG(x)      (float) log (x)
-# define LOG10(x)    (float) log10 (x)
-# define POW(x,y)    (float) pow (x,y)
-# define POW10(x)    (float) pow (10., (x))
-# define FLOOR(x)    (float) floor (x)
-# define IFLOOR(x)   (int)   floor (x)
-# define FABS(x)     (float) fabs (x)
-#endif
-
-#define SQRTF(x)      SQRT (x)
-#ifdef FAST_MATH
-# define TABSTEP      64
-# define COSF(x)      my_cos ((float)(x))
-# define ATAN2F(x,y)  my_atan2 ((float)(x), (float)(y))
-# define IFLOORF(x)   my_ifloor ((float)(x))
-#else
-# undef  TABSTEP
-# define COSF(x)      COS (x)
-# define ATAN2F(x,y)  ATAN2 (x,y)
-# define IFLOORF(x)   IFLOOR (x)
-#endif
-
-typedef struct {
-    float  L [ANABUFFER];
-    float  R [ANABUFFER];
-    float  M [ANABUFFER];
-    float  S [ANABUFFER];
-} PCMDataTyp;
-
-typedef struct {
-    float  L [36];
-    float  R [36];
-} SubbandFloatTyp;
 
 typedef struct {
@@ -133,11 +49,4 @@
     unsigned int  R [36];
 } SubbandQuantTyp;
-
-typedef struct {
-    float  L [32];
-    float  R [32];
-    float  M [32];
-    float  S [32];
-} SMRTyp;
 
 typedef struct {
@@ -207,13 +116,4 @@
 void   rdft                ( const int, float*, int*, float* );
 void   Generate_FFT_Tables ( const int, int*, float* );
-
-
-// fft_routines.c
-void   Init_FFT      ( void );
-void   PowSpec256    ( const float*, float* );
-void   PowSpec1024   ( const float*, float* );
-void   PowSpec2048   ( const float*, float* );
-void   PolarSpec1024 ( const float*, float*, float* );
-void   Cepstrum2048  ( float* cep, const int );
 
 
Index: mppenc/branches/r2d/src/profile.c
===================================================================
--- mppenc/branches/r2d/src/profile.c	(revision 59)
+++ 	(revision )
@@ -1,174 +1,0 @@
-/*
- * Musepack audio compression
- * Copyright (C) 1999-2004 Buschmann/Klemm/Piecha/Wolf
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
- */
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <signal.h>
-#include <string.h>
-#include "mppdec.h"
-#include "profile.h"
-
-/*
- *  For every architecture you want to profile/checkpoint you need the following items:
- *
- *  uintmax_t:
- *      A type which is used for time calculation, mostly 32 bit or 64 bit,
- *      should be large enough so that no overruns occures during the measurement
- *  STD_TIMER_CLK:
- *      Clock frequency of the used timer in MHz
- *  RDTSC():
- *      A macro reading the current time into a local variable timetemp with the type uintmax_t,
- *      Time is in 1.e-6/STD_TIMER_CLK seconds.
- *
- *  Places:
- *      typedef of uintmax_t:     profile.h
- *      RDTSC():                  profile.h
- *      STD_TIMER_CLK:            profile.c
- *      no-inline functions maybe needed by RDTSC():
- *                                profile.c
- */
-
-#ifdef PROFILE
-
-#ifdef __TURBOC__
-# define STD_TIMER_CLK  1.193181667 /* MHz */
-
-uintmax_t
-readtime ( void )               /* PC onboard timer */
-{
-    asm  XOR   AX, AX
-    asm  MOV   ES, AX
-    asm  OUT   67, AL
-    asm  MOV   DX, ES:[46Ch]
-    asm  IN    AL, 64
-    asm  XCHG  AL, AH
-    asm  IN    AL, 64
-    asm  XCHG  AL, AH
-    asm  NEG   AX
-}
-
-#elif defined USE_SYSV_TIMER
-# define STD_TIMER_CLK    1.0000000 /* MHz */
-
-# include <sys/time.h>
-# include <unistd.h>
-
-uintmax_t
-readtime ( void )               /* System V timer */
-{
-    struct timeval  tv;
-
-    gettimeofday ( &tv, NULL );
-    return tv.tv_sec * (uintmax_t)1000000LU + tv.tv_usec;
-}
-
-#else
-# define STD_TIMER_CLK  233.3333333 /* MHz */
-#endif
-
-
-uintmax_t       timecounter    [256];
-const char*     timename       [256];
-unsigned char   functionstack [1024];
-unsigned char*  functionstack_pointer = functionstack;
-
-
-static void Cdecl
-signal_handler ( int signum )
-{
-    char            name [128];
-    char            file [128];
-    char            no   [ 32];
-    unsigned char*  f;
-
-    (void) stderr_printf ( "\n\nSignal %d detected. Call stack:\n", signum );
-    for ( f = functionstack+1; f <= functionstack_pointer; f++ ) {
-        (void) sscanf        ( timename[*f], "%128[^|]|%128[^|]|%32[0-9]", name, file, no );
-        (void) stderr_printf ( "%-24.24s%12.12s:%s\n", name, file, no );
-    }
-    _exit ( 128+signum );
-}
-
-
-void
-set_signal ( void )
-{
-    signal ( SIGILL , signal_handler );
-    signal ( SIGINT , signal_handler );
-    signal ( SIGSEGV, signal_handler );
-    signal ( SIGFPE , signal_handler );
-}
-
-
-void
-report ( void )
-{
-    static char  dash [] = "---------------------------------------";
-    uintmax_t    sum;
-    uintmax_t    max;
-    int          i;
-    int          j;
-    int          k;
-    char         name [128];
-    char         file [128];
-    char         no   [ 32];
-    size_t       filelen;
-    double       MHz = STD_TIMER_CLK;
-
-#ifdef __linux__
-    FILE*        fp;
-
-    // read out CPU frequency if proc-FS is present
-    if ( (fp = fopen ("/proc/cpuinfo", "r")) != NULL ) {
-        while ( fgets(name, sizeof(name), fp) )
-            if ( 1 == sscanf ( name, "cpu MHz : %lf", &MHz ) )
-                break;
-        (void) fclose (fp);
-    }
-#endif
-
-    // calculate total time
-    for ( sum = 0, i = 1; i < sizeof(timecounter)/sizeof(*timecounter); i++ )
-        sum += timecounter [i];
-
-    (void) fprintf ( stderr, "\n%s%s\n", dash, dash );
-    (void) fprintf ( stderr, "100.0%%   %13.6f ms   *** TOTAL ***%25s[%.1f MHz]\n", sum/(MHz*1000.), "", MHz );
-
-    // output sorted
-    while ( 1 ) {
-        for ( max = 0, j = 1; j < sizeof(timecounter)/sizeof(*timecounter); j++ )
-            if ( timecounter [j] > max )
-                max = timecounter [k = j];
-        if (max == 0)
-            break;
-        sscanf ( timename [k], "%128[^|]|%128[^|]|%32[0-9]", name, file, no );
-        filelen = strlen (file);
-        (void) fprintf ( stderr, "%6.2f%%  %13.6f ms   %-28.28s%18.18s:%s\n",
-                         100. * timecounter[k] / sum, timecounter[k] / (MHz*1000.),
-                         name, filelen < 18 ? file : file+filelen-18, no );
-        timecounter [k] = 0;
-    }
-
-    (void) fprintf ( stderr, "%s%s\n", dash, dash );
-    (void) fflush  ( stderr );
-}
-
-#endif /* PROFILE */
-
-/* end of profile.c */
Index: mppenc/branches/r2d/src/profile.h
===================================================================
--- mppenc/branches/r2d/src/profile.h	(revision 59)
+++ 	(revision )
@@ -1,98 +1,0 @@
-/*
- * Musepack audio compression
- * Copyright (C) 1999-2004 Buschmann/Klemm/Piecha/Wolf
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
- */
-
-#ifndef MPPDEC_PROFILE_H
-#define MPPDEC_PROFILE_H
-
-#ifdef PROFILE
-
-/* T I M E C O U N T - F U N C T I O N */
-# if   defined _WIN32
-typedef /*unsigned*/ __int64  uintmax_t;
-#pragma warning ( disable: 4035 )
-static __inline uintmax_t  rdtscll ( void ) { __asm { rdtsc }; }
-#pragma warning ( default: 4035 )
-#  define RDTSC()  timetemp = rdtscll ()
-#  define __FUNCTION__  "?"
-# elif defined __TURBOC__
-typedef signed long  uintmax_t;
-uintmax_t readtime ( void );
-#  define RDTSC()  timetemp = readtime ()
-#  define __FUNCTION__  "?"
-# else
-typedef unsigned long long  uintmax_t;
-#  include <asm/msr.h>
-#  define RDTSC()  rdtscll (timetemp)
-# endif /* _WIN32 */
-
-
-/* M A C R O S */
-# define _STR(x)    #x
-# define __STR(x)   _STR(x)
-
-# define ENTER(x)  do {                                                             \
-                     uintmax_t  timetemp;                                           \
-                     RDTSC();                                                       \
-                     timecounter[*functionstack_pointer]       += timetemp;         \
-                     timecounter[*++functionstack_pointer = x] -= timetemp;         \
-                     timename[x] = __FUNCTION__ "()|" __FILE__ "|" __STR(__LINE__); \
-                   } while (0)
-
-# define NEXT(x,n) do {                                                      \
-                     uintmax_t  timetemp;                                    \
-                     RDTSC();                                                \
-                     timecounter[*functionstack_pointer]     += timetemp;    \
-                     timecounter[*functionstack_pointer = x] -= timetemp;    \
-                     timename[x] = __FUNCTION__ "-" __STR(n) "|" __FILE__ "|" __STR(__LINE__); \
-                   } while (0)
-
-# define LEAVE(x)  do {                                                  \
-                     uintmax_t  timetemp;                                \
-                     RDTSC();                                            \
-                     timecounter[x]                        += timetemp;  \
-                     timecounter[*--functionstack_pointer] -= timetemp;  \
-                   } while (0)
-
-# define START()   set_signal ()
-# define REPORT()  report ()
-
-/* V A R I A B L E S */
-extern uintmax_t       timecounter    [256];
-extern const char*     timename       [256];
-extern unsigned char   functionstack [1024];
-extern unsigned char*  functionstack_pointer;
-
-/* F U N C T I O N S */
-void  set_signal ( void );
-void  report     ( void );
-
-#else
-
-/* M A C R O S */
-# define START()
-# define ENTER(x)
-# define NEXT(x,n)
-# define LEAVE(x)
-# define REPORT()
-
-#endif /* PROFILE */
-
-#endif /* MPPDEC_PROFILE_H */
-
-/* end of profile.h */
Index: mppenc/branches/r2d/src/tools.c
===================================================================
--- mppenc/branches/r2d/src/tools.c	(revision 59)
+++ mppenc/branches/r2d/src/tools.c	(revision 60)
@@ -88,5 +88,4 @@
 Change_Endian32 ( Uint32_t* dst, size_t words32bit )
 {
-    ENTER(160);
 
     for ( ; words32bit--; dst++ ) {
@@ -106,5 +105,4 @@
 # endif
     }
-    LEAVE(160);
     return;
 }
@@ -124,6 +122,4 @@
 {
     size_t  wordsread;
-
-    ENTER(161);
     wordsread = READ ( fp, dst, words32bit * sizeof(*dst) ) / sizeof(*dst);
 
@@ -132,5 +128,4 @@
 #endif
 
-    LEAVE(161);
     return wordsread;
 }
@@ -219,6 +214,4 @@
     Float  mid;
     Float  side;
-
-    ENTER(162);
 
     for ( Band = 0; Band <= Stop_Band; Band++ ) {
@@ -398,6 +391,4 @@
 
     }
-
-    LEAVE(162);
     return;
 }
@@ -438,6 +429,4 @@
     Float  ML;
     Float  MR;
-
-    ENTER(163);
 
     for ( Band = Start_Band; Band <= Stop_Band; Band++ ) {
@@ -471,5 +460,4 @@
 
     }
-    LEAVE(163);
     return;
 }
Index: mppenc/branches/r2d/src/wave_in.c
===================================================================
--- mppenc/branches/r2d/src/wave_in.c	(revision 59)
+++ mppenc/branches/r2d/src/wave_in.c	(revision 60)
@@ -272,6 +272,4 @@
     float*  s = data -> S + offset;
 
-    ENTER(120);
-
     // Read PCM data
 #ifdef _WIN32
@@ -376,6 +374,4 @@
         }
     }
-
-    LEAVE(120);
     return ReadSamples;
 }
@@ -453,6 +449,6 @@
 
 														// finally calculate number of samples
-    if (type->PCMBytes >= 0xFFFFFF00  ||  
-			type->PCMBytes == 0  ||  
+    if (type->PCMBytes >= 0xFFFFFF00  ||
+			type->PCMBytes == 0  ||
 			(Uint32_t)type->PCMBytes % (type -> Channels * type->BytesPerSample) != 0) {
 		type->PCMSamples = 36000000 * type->SampleFreq;
