Mercurial > mplayer.hg
view tremor/tremor.diff @ 20752:0617c67ad68f
Fix code that cuts audio data if the filters produce too much.
It incorrectly used the channel count and sample size values from the
decoder even though the filters can change those.
author | uau |
---|---|
date | Tue, 07 Nov 2006 23:16:55 +0000 |
parents | fb837e2ab413 |
children | deb3d1cc2852 |
line wrap: on
line source
diff -ur orig/misc.h mod-2004-01-05/misc.h --- misc.h 2005-01-04 16:29:01.000000000 +0100 +++ misc.h 2004-12-30 13:09:20.000000000 +0100 @@ -29,8 +29,9 @@ /* 64 bit multiply */ #include <sys/types.h> +#include "config.h" -#if BYTE_ORDER==LITTLE_ENDIAN +#ifndef WORDS_BIGENDIAN union magic { struct { ogg_int32_t lo; @@ -38,9 +39,7 @@ } halves; ogg_int64_t whole; }; -#endif - -#if BYTE_ORDER==BIG_ENDIAN +#else union magic { struct { ogg_int32_t hi; diff -ur orig/os_types.h mod-2004-01-05/os_types.h --- os_types.h 2005-01-04 16:29:02.000000000 +0100 +++ os_types.h 2005-01-05 10:39:07.000000000 +0100 @@ -32,57 +32,11 @@ #define _ogg_realloc realloc #define _ogg_free free -#ifdef _WIN32 - -# ifndef __GNUC__ - /* MSVC/Borland */ - typedef __int64 ogg_int64_t; - typedef __int32 ogg_int32_t; - typedef unsigned __int32 ogg_uint32_t; - typedef __int16 ogg_int16_t; -# else - /* Cygwin */ - #include <_G_config.h> - typedef _G_int64_t ogg_int64_t; - typedef _G_int32_t ogg_int32_t; - typedef _G_uint32_t ogg_uint32_t; - typedef _G_int16_t ogg_int16_t; -# endif - -#elif defined(__MACOS__) - -# include <sys/types.h> - typedef SInt16 ogg_int16_t; - typedef SInt32 ogg_int32_t; - typedef UInt32 ogg_uint32_t; - typedef SInt64 ogg_int64_t; - -#elif defined(__MACOSX__) /* MacOS X Framework build */ - -# include <sys/types.h> - typedef int16_t ogg_int16_t; - typedef int32_t ogg_int32_t; - typedef u_int32_t ogg_uint32_t; + #include <inttypes.h> typedef int64_t ogg_int64_t; - -#elif defined(__BEOS__) - - /* Be */ -# include <inttypes.h> - -#elif defined (__EMX__) - - /* OS/2 GCC */ - typedef short ogg_int16_t; - typedef int ogg_int32_t; - typedef unsigned int ogg_uint32_t; - typedef long long ogg_int64_t; - -#else - -# include <sys/types.h> -# include "config_types.h" - -#endif + typedef int32_t ogg_int32_t; + typedef uint32_t ogg_uint32_t; + typedef uint16_t ogg_uint16_t; + typedef int16_t ogg_int16_t; #endif /* _OS_TYPES_H */ Index: sharedbook.c =================================================================== RCS file: /cvsroot/mplayer/main/tremor/sharedbook.c,v retrieving revision 1.1 diff -u -r1.1 sharedbook.c --- sharedbook.c 30 Dec 2004 12:09:20 -0000 1.1 +++ sharedbook.c 18 Aug 2005 16:13:54 -0000 @@ -208,7 +211,7 @@ int indexdiv=1; for(k=0;k<b->dim;k++){ int index= (j/indexdiv)%quantvals; - int point; + ogg_int32_t point; int val=VFLOAT_MULTI(delta,delpoint, abs(b->quantlist[index]),&point); @@ -242,7 +245,7 @@ int lastpoint=0; for(k=0;k<b->dim;k++){ - int point; + ogg_int32_t point; int val=VFLOAT_MULTI(delta,delpoint, abs(b->quantlist[j*b->dim+k]),&point);