[FFmpeg-devel] Hacks on FATE

Reimar Döffinger Reimar.Doeffinger
Thu Sep 24 22:04:20 CEST 2009


On Thu, Sep 24, 2009 at 11:42:30PM +0400, Michael Kostylev wrote:
> > Michael Kostylev runs the machine, maybe he can comment...
> 
> The issue was discussed on MPlayer-dev-eng:
> http://lists.mplayerhq.hu/pipermail/mplayer-dev-eng/2009-July/061865.html
> 
> On i386 (HAVE_7REGS && HAVE_TEN_OPERANDS) may be equal to zero
> (for example, on my machine %ebp is not available), then
> libavcodec/x86/mlpdsp.c can be built without -Wa,--divide.

Hm. It seems to me that mlp assumes that the max samplerate is a multiple
of 48000, thus I think the following patch improves the code and
fixes this issue:
Index: libavcodec/mlp.h
===================================================================
--- libavcodec/mlp.h	(revision 19461)
+++ libavcodec/mlp.h	(working copy)
@@ -47,13 +47,15 @@
  */
 #define MAX_SUBSTREAMS      3
 
+/** which multiple of 48000 the maximum sample rate is */
+#define MAX_RATEFACTOR      4
 /** maximum sample frequency seen in files */
-#define MAX_SAMPLERATE      192000
+#define MAX_SAMPLERATE      (MAX_RATEFACTOR * 48000)
 
 /** maximum number of audio samples within one access unit */
-#define MAX_BLOCKSIZE       (40 * (MAX_SAMPLERATE / 48000))
+#define MAX_BLOCKSIZE       (40 * MAX_RATEFACTOR)
 /** next power of two greater than MAX_BLOCKSIZE */
-#define MAX_BLOCKSIZE_POW2  (64 * (MAX_SAMPLERATE / 48000))
+#define MAX_BLOCKSIZE_POW2  (64 * MAX_RATEFACTOR)
 
 /** number of allowed filters */
 #define NUM_FILTERS         2



More information about the ffmpeg-devel mailing list