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

backport of 43918c106a3c1d303b3cd087c89b9db7eb0a4029

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)

