From 6bb6fb05ba66ce42ca17c930d81d3e9cf37ab34d Mon Sep 17 00:00:00 2001 From: Mans Rullgard Date: Mon, 9 May 2011 12:40:37 +0100 Subject: [PATCH] mpegaudio: remove CONFIG_MPEGAUDIO_HP option The low quality mode is off by default and never tested. The high quality mode is also plenty fast enough. Signed-off-by: Mans Rullgard --- configure | 3 --- libavcodec/Makefile | 8 ------- libavcodec/bfin/mathops.h | 10 --------- libavcodec/mpegaudio.h | 5 +---- libavcodec/mpegaudio_tablegen.h | 2 ++ libavcodec/mpegaudiodec.c | 37 --------------------------------- libavcodec/mpegaudioenc.c | 5 +++-- 7 files changed, 6 insertions(+), 64 deletions(-) diff --git a/configure b/configure index 29440d80a9..955a568684 100755 --- a/configure +++ b/configure @@ -94,7 +94,6 @@ Configuration options: --enable-w32threads use Win32 threads [no] --enable-x11grab enable X11 grabbing [no] --disable-network disable network support [no] - --disable-mpegaudio-hp faster (but less accurate) MPEG audio decoding [no] --enable-gray enable full grayscale support (slower color) --disable-swscale-alpha disable alpha channel support in swscale --disable-fastdiv disable table-based division @@ -953,7 +952,6 @@ CONFIG_LIST=" mdct memalign_hack mlib - mpegaudio_hp network nonfree pic @@ -1643,7 +1641,6 @@ enable ffmpeg enable ffplay enable ffprobe enable ffserver -enable mpegaudio_hp enable network enable optimizations enable protocols diff --git a/libavcodec/Makefile b/libavcodec/Makefile index 1d8452ac03..996b9b4d81 100644 --- a/libavcodec/Makefile +++ b/libavcodec/Makefile @@ -682,14 +682,6 @@ $(SUBDIR)cos_fixed_tables.c: $(SUBDIR)costablegen$(HOSTEXESUF) $(SUBDIR)sin_tables.c: $(SUBDIR)costablegen$(HOSTEXESUF) $(M)./$< sin > $@ -ifdef CONFIG_MPEGAUDIO_HP -$(SUBDIR)mpegaudio_tablegen$(HOSTEXESUF): HOSTCFLAGS += -DFRAC_BITS=23 -$(SUBDIR)mpegaudio_tablegen.ho: CPPFLAGS += -DFRAC_BITS=23 -else -$(SUBDIR)mpegaudio_tablegen$(HOSTEXESUF): HOSTCFLAGS += -DFRAC_BITS=15 -$(SUBDIR)mpegaudio_tablegen.ho: CPPFLAGS += -DFRAC_BITS=15 -endif - ifdef CONFIG_SMALL $(SUBDIR)%_tablegen$(HOSTEXESUF): HOSTCFLAGS += -DCONFIG_SMALL=1 else diff --git a/libavcodec/bfin/mathops.h b/libavcodec/bfin/mathops.h index db527bf249..bbee49380e 100644 --- a/libavcodec/bfin/mathops.h +++ b/libavcodec/bfin/mathops.h @@ -24,7 +24,6 @@ #include "config.h" -#if CONFIG_MPEGAUDIO_HP #define MULH(X,Y) ({ int xxo; \ __asm__ ( \ "a1 = %2.L * %1.L (FU);\n\t" \ @@ -34,15 +33,6 @@ "a1 = a1 >>> 16;\n\t" \ "%0 = (a0 += a1);\n\t" \ : "=d" (xxo) : "d" (X), "d" (Y) : "A0","A1"); xxo; }) -#else -#define MULH(X,Y) ({ int xxo; \ - __asm__ ( \ - "a1 = %2.H * %1.L (IS,M);\n\t" \ - "a0 = %1.H * %2.H, a1+= %1.H * %2.L (IS,M);\n\t"\ - "a1 = a1 >>> 16;\n\t" \ - "%0 = (a0 += a1);\n\t" \ - : "=d" (xxo) : "d" (X), "d" (Y) : "A0","A1"); xxo; }) -#endif /* signed 16x16 -> 32 multiply */ #define MUL16(a, b) ({ int xxo; \ diff --git a/libavcodec/mpegaudio.h b/libavcodec/mpegaudio.h index 870743ce38..f12b897e23 100644 --- a/libavcodec/mpegaudio.h +++ b/libavcodec/mpegaudio.h @@ -56,12 +56,9 @@ #define MP3_MASK 0xFFFE0CCF -#if CONFIG_MPEGAUDIO_HP +#ifndef FRAC_BITS #define FRAC_BITS 23 /* fractional bits for sb_samples and dct */ #define WFRAC_BITS 16 /* fractional bits for window */ -#else -#define FRAC_BITS 15 /* fractional bits for sb_samples and dct */ -#define WFRAC_BITS 14 /* fractional bits for window */ #endif #define FRAC_ONE (1 << FRAC_BITS) diff --git a/libavcodec/mpegaudio_tablegen.h b/libavcodec/mpegaudio_tablegen.h index ccaaf0ba78..6bde277916 100644 --- a/libavcodec/mpegaudio_tablegen.h +++ b/libavcodec/mpegaudio_tablegen.h @@ -38,6 +38,8 @@ static uint32_t expval_table[512][16]; static float exp_table_float[512]; static float expval_table_float[512][16]; +#define FRAC_BITS 23 + static void mpegaudio_tableinit(void) { int i, value, exponent; diff --git a/libavcodec/mpegaudiodec.c b/libavcodec/mpegaudiodec.c index 024d618502..c18d7525f4 100644 --- a/libavcodec/mpegaudiodec.c +++ b/libavcodec/mpegaudiodec.c @@ -31,7 +31,6 @@ /* * TODO: - * - in low precision mode, use more 16 bit multiplies in synth filter * - test lsf / mpeg25 extensively. */ @@ -540,24 +539,6 @@ static inline float round_sample(float *sum) #define MLSS(rt, ra, rb) rt-=(ra)*(rb) -#elif FRAC_BITS <= 15 - -static inline int round_sample(int *sum) -{ - int sum1; - sum1 = (*sum) >> OUT_SHIFT; - *sum &= (1< 32 multiply add accumulate */ -#define MACS(rt, ra, rb) MAC16(rt, ra, rb) - -/* signed 16x16 -> 32 multiply */ -#define MULS(ra, rb) MUL16(ra, rb) - -#define MLSS(rt, ra, rb) MLS16(rt, ra, rb) - #else static inline int round_sample(int64_t *sum) @@ -624,8 +605,6 @@ void av_cold RENAME(ff_mpa_synth_init)(MPA_INT *window) v = ff_mpa_enwindow[i]; #if CONFIG_FLOAT v *= 1.0 / (1LL<<(16 + FRAC_BITS)); -#elif WFRAC_BITS < 16 - v = (v + (1 << (16 - WFRAC_BITS - 1))) >> (16 - WFRAC_BITS); #endif window[i] = v; if ((i & 63) != 0) @@ -652,8 +631,6 @@ static void apply_window_mp3_c(MPA_INT *synth_buf, MPA_INT *window, OUT_INT *samples2; #if CONFIG_FLOAT float sum, sum2; -#elif FRAC_BITS <= 15 - int sum, sum2; #else int64_t sum, sum2; #endif @@ -710,25 +687,11 @@ void ff_mpa_synth_filter(MPA_INT *synth_buf_ptr, int *synth_buf_offset, { register MPA_INT *synth_buf; int offset; -#if FRAC_BITS <= 15 - int32_t tmp[32]; - int j; -#endif offset = *synth_buf_offset; synth_buf = synth_buf_ptr + offset; -#if FRAC_BITS <= 15 - dct32(tmp, sb_samples); - for(j=0;j<32;j++) { - /* NOTE: can cause a loss in precision if very high amplitude - sound */ - synth_buf[j] = av_clip_int16(tmp[j]); - } -#else dct32(synth_buf, sb_samples); -#endif - apply_window_mp3_c(synth_buf, window, dither_state, samples, incr); offset = (offset - 32) & 511; diff --git a/libavcodec/mpegaudioenc.c b/libavcodec/mpegaudioenc.c index 65fac2ad29..e6f2e3b9c2 100644 --- a/libavcodec/mpegaudioenc.c +++ b/libavcodec/mpegaudioenc.c @@ -27,8 +27,9 @@ #include "avcodec.h" #include "put_bits.h" -#undef CONFIG_MPEGAUDIO_HP -#define CONFIG_MPEGAUDIO_HP 0 +#define FRAC_BITS 15 /* fractional bits for sb_samples and dct */ +#define WFRAC_BITS 14 /* fractional bits for window */ + #include "mpegaudio.h" /* currently, cannot change these constants (need to modify