[vlc-commits] contribs: faad2: disable DRC extensions

Francois Cartegnie git at videolan.org
Thu Feb 23 10:47:38 CET 2017


vlc | branch: master | Francois Cartegnie <fcvlcdev at free.fr> | Thu Feb 23 10:41:32 2017 +0100| [43918c106a3c1d303b3cd087c89b9db7eb0a4029] | committer: Francois Cartegnie

contribs: faad2: disable DRC extensions

Implementation is broken due to use of
arbitrary reference level instead of
normalized level.
Fallback to not better than libav.
fixes #9629

> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=43918c106a3c1d303b3cd087c89b9db7eb0a4029
---

 contrib/src/faad2/faad2-disable-drc.patch | 35 +++++++++++++++++++++++++++++++
 contrib/src/faad2/rules.mak               |  1 +
 2 files changed, 36 insertions(+)

diff --git a/contrib/src/faad2/faad2-disable-drc.patch b/contrib/src/faad2/faad2-disable-drc.patch
new file mode 100644
index 0000000..b70dc64
--- /dev/null
+++ b/contrib/src/faad2/faad2-disable-drc.patch
@@ -0,0 +1,35 @@
+diff -Naur faad2-2.7.orig/libfaad/specrec.c faad2-2.7/libfaad/specrec.c
+--- faad2-2.7.orig/libfaad/specrec.c	2009-01-27 00:51:15.000000000 +0100
++++ faad2-2.7/libfaad/specrec.c	2017-02-23 10:31:40.527397266 +0100
+@@ -1000,12 +1000,13 @@
+         spec_coef, hDecoder->frameLength);
+ 
+     /* drc decoding */
++#if 0
+     if (hDecoder->drc->present)
+     {
+         if (!hDecoder->drc->exclude_mask[sce->channel] || !hDecoder->drc->excluded_chns_present)
+             drc_decode(hDecoder->drc, spec_coef);
+     }
+-
++#endif
+     /* filter bank */
+ #ifdef SSR_DEC
+     if (hDecoder->object_type != SSR)
+@@ -1241,6 +1242,7 @@
+         spec_coef2, hDecoder->frameLength);
+ 
+     /* drc decoding */
++#if 0
+     if (hDecoder->drc->present)
+     {
+         if (!hDecoder->drc->exclude_mask[cpe->channel] || !hDecoder->drc->excluded_chns_present)
+@@ -1248,7 +1250,7 @@
+         if (!hDecoder->drc->exclude_mask[cpe->paired_channel] || !hDecoder->drc->excluded_chns_present)
+             drc_decode(hDecoder->drc, spec_coef2);
+     }
+-
++#endif
+     /* filter bank */
+ #ifdef SSR_DEC
+     if (hDecoder->object_type != SSR)
diff --git a/contrib/src/faad2/rules.mak b/contrib/src/faad2/rules.mak
index 3ec5821..86ee035 100644
--- a/contrib/src/faad2/rules.mak
+++ b/contrib/src/faad2/rules.mak
@@ -20,6 +20,7 @@ faad2: faad2-$(FAAD2_VERSION).tar.gz .sum-faad2
 ifndef HAVE_FPU
 	$(APPLY) $(SRC)/faad2/faad2-fixed.patch
 endif
+	$(APPLY) $(SRC)/faad2/faad2-disable-drc.patch
 	cd $(UNPACK_DIR) && $(CC) -iquote . -E - </dev/null || sed -i 's/-iquote /-I/' libfaad/Makefile.am
 	$(MOVE)
 



More information about the vlc-commits mailing list