diff options
author | jstebbins <[email protected]> | 2010-04-14 16:47:02 +0000 |
---|---|---|
committer | jstebbins <[email protected]> | 2010-04-14 16:47:02 +0000 |
commit | 18a10c15de751301f5a67ede5f917a761bf060a5 (patch) | |
tree | 92a4099768f87cf66f45b4055c81339d3daf33b6 /contrib/faac | |
parent | abeea8ddf0b918eeb48b438d72f8db7a4c166997 (diff) |
patch to allow higher bitrates with faac
2 channel allows up to 320kbps, 6 channel allows up to 768kbps
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3222 b64f7644-9d1e-0410-96f1-a4d463321fa5
Diffstat (limited to 'contrib/faac')
-rw-r--r-- | contrib/faac/A00-bitrates.patch | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/contrib/faac/A00-bitrates.patch b/contrib/faac/A00-bitrates.patch new file mode 100644 index 000000000..50b11ec78 --- /dev/null +++ b/contrib/faac/A00-bitrates.patch @@ -0,0 +1,60 @@ +diff -Naur faac-1.28/libfaac/frame.c ../build.debug/contrib/faac/faac-1.28/libfaac/frame.c +--- faac-1.28.orig/libfaac/frame.c 2004-11-17 06:26:06.000000000 -0800 ++++ faac-1.28/libfaac/frame.c 2010-04-10 12:26:28.200614437 -0700 +@@ -196,6 +196,8 @@ + {47000, 10000}, + {64000, 16000}, + {76000, 20000}, ++ {128000, 22000}, ++ {160000, 22000}, + #endif + {0, 0} + }; +@@ -242,8 +244,6 @@ + config->bitRate = tmpbitRate * hEncoder->sampleRate / 44100; + #endif + +- if (config->bandWidth > bwbase) +- config->bandWidth = bwbase; + } + + hEncoder->config.bitRate = config->bitRate; +@@ -251,6 +251,7 @@ + if (!config->bandWidth) + { + config->bandWidth = (config->quantqual - 100) * bwmult + bwbase; ++ config->bandWidth *= (double)hEncoder->sampleRate / 44100; + } + + hEncoder->config.bandWidth = config->bandWidth; +@@ -261,8 +262,8 @@ + if (hEncoder->config.bandWidth > (hEncoder->sampleRate / 2)) + hEncoder->config.bandWidth = hEncoder->sampleRate / 2; + +- if (config->quantqual > 500) +- config->quantqual = 500; ++ if (config->quantqual > 700) ++ config->quantqual = 700; + if (config->quantqual < 10) + config->quantqual = 10; + +@@ -328,8 +329,6 @@ + hEncoder->config.useTns = 0; + hEncoder->config.bitRate = 0; /* default bitrate / channel */ + hEncoder->config.bandWidth = bwfac * hEncoder->sampleRate; +- if (hEncoder->config.bandWidth > bwbase) +- hEncoder->config.bandWidth = bwbase; + hEncoder->config.quantqual = 100; + hEncoder->config.psymodellist = (psymodellist_t *)psymodellist; + hEncoder->config.psymodelidx = 0; +@@ -888,8 +887,8 @@ + if (((diff > 0) && (fix > 0.0)) || ((diff < 0) && (fix < 0.0))) + { + hEncoder->aacquantCfg.quality *= (1.0 - fix); +- if (hEncoder->aacquantCfg.quality > 300) +- hEncoder->aacquantCfg.quality = 300; ++ if (hEncoder->aacquantCfg.quality > 700) ++ hEncoder->aacquantCfg.quality = 700; + if (hEncoder->aacquantCfg.quality < 50) + hEncoder->aacquantCfg.quality = 50; + } |