From 68e75e4dec6b5f46a190118eecbba1e95c396e3d Mon Sep 17 00:00:00 2001 From: Oded Shimon Date: Mon, 2 Oct 2006 06:08:55 +0000 Subject: Original Commit: r90 | ods15 | 2006-09-29 22:14:40 +0300 (Fri, 29 Sep 2006) | 3 lines much better magic for floor, the first psychoacoustic in this encoder! now creates valid, 175kbps audio, which sounds good! :) Originally committed as revision 6494 to svn://svn.ffmpeg.org/ffmpeg/trunk --- libavcodec/vorbis_enc.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) (limited to 'libavcodec/vorbis_enc.c') diff --git a/libavcodec/vorbis_enc.c b/libavcodec/vorbis_enc.c index 4e45c7e628..581ab41bb1 100644 --- a/libavcodec/vorbis_enc.c +++ b/libavcodec/vorbis_enc.c @@ -780,13 +780,11 @@ static void floor_fit(venc_context_t * venc, floor_t * fc, float * coeffs, int * int end = fc->list[fc->list[FFMIN(i+1, fc->values - 1)].sort].x; int j; float average = 0; - begin = (position + begin) / 2; - end = (position + end ) / 2; assert(end <= samples); for (j = begin; j < end; j++) average += fabs(coeffs[j]); average /= end - begin; - average /= 32; // MAGIC! + average /= pow(4, 1 - position/400.); // MAGIC! for (j = 0; j < range - 1; j++) if (floor1_inverse_db_table[j * fc->multiplier] > average) break; posts[fc->list[i].sort] = j; } -- cgit v1.2.3