Dai <dai.q...@gmail.com> writes:

> On 22/05/16 17:32, Rémi Vanicat wrote:
>> dave <dai.q...@gmail.com> writes:
>>
>>> Package: xmms2
>>> Version: 0.8+dfsg-15+b3
>>> Severity: normal
>>>
>>> Dear Maintainer,
>>>
>>>     * What led up to the situation?
>>>
>>> I installed xmms2 from apt and when using a skin (home made)
>> You meant a home made client? not sure what is a skin in the case of
>> xmms2.
> Sorry, yes a home made client
>>
>>> I could not access equalizer settings, I also tried the eq.py file
>>> from xmms2 client list which also failed.
>> eq.py seem to work here. Is python-xmmsclient installed on your system?
>> What went wrong with eq.py?

> The equalizer bars do not even display, and I installed promoe from
> the repositories and while it did show the bars and allowed me to
> "turn on" the equalizer, no changes were made to the sound produced.

Okay, more testing show that this is the case for me too.
xmms2.log contain

   09:37:22 ERROR: ../src/xmms/plugin.c:375: Failed to open plugin 
/usr/lib/xmms2/libxmms_equalizer.so: /usr/lib/xmms2/libxmms_equalizer.so: 
undefined symbol: iir

followed by a lot of

   19:26:40 ERROR: ../src/xmms/xform.c:1501: Couldn't find any effect named 
'equalizer'

Mmm, could try the attached patches and confirm it fix your problem
>From 1e083b58ab01fc2dda31a7ed01381788c85994a8 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?R=C3=A9mi=20Vanicat?= <vani...@debian.org>
Date: Sun, 22 May 2016 19:46:26 +0200
Subject: [PATCH] Removing some inline declaration.

It seem it broke the equalizer.
---
 debian/changelog                                   |  8 +++
 ...et-the-compiler-figure-out-what-to-inline.patch | 73 ++++++++++++++++++++++
 debian/patches/series                              |  1 +
 3 files changed, 82 insertions(+)
 create mode 100644 debian/patches/0018-OTHER-Let-the-compiler-figure-out-what-to-inline.patch

diff --git a/debian/changelog b/debian/changelog
index 4b92be6..dfa7d2d 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,11 @@
+xmms2 (0.8+dfsg-16) unstable; urgency=medium
+
+  * OTHER: Let the compiler figure out what to inline.
+    (thanks to Daniel Svensson <dsvens...@gmail.com>,
+    fix: "equalizer not working", thanks to dave (Closes: #825017).
+
+ -- Rémi Vanicat <vani...@debian.org>  Sun, 22 May 2016 19:50:17 +0200
+
 xmms2 (0.8+dfsg-15) unstable; urgency=medium
 
   * remove samba on hurd-i386 (Closes: #815410).
diff --git a/debian/patches/0018-OTHER-Let-the-compiler-figure-out-what-to-inline.patch b/debian/patches/0018-OTHER-Let-the-compiler-figure-out-what-to-inline.patch
new file mode 100644
index 0000000..2cb8c55
--- /dev/null
+++ b/debian/patches/0018-OTHER-Let-the-compiler-figure-out-what-to-inline.patch
@@ -0,0 +1,73 @@
+From: Daniel Svensson <dsvens...@gmail.com>
+Date: Thu, 30 Jan 2014 01:03:26 +0100
+Subject: OTHER: Let the compiler figure out what to inline.
+
+No change in CPU usage on Linux, and skipping inline unbreaks
+the build on Mac OS X.
+---
+ src/plugins/equalizer/iir.c     | 2 +-
+ src/plugins/equalizer/iir.h     | 6 +++---
+ src/plugins/equalizer/iir_fpu.c | 2 +-
+ src/plugins/equalizer/iir_sse.c | 2 +-
+ 4 files changed, 6 insertions(+), 6 deletions(-)
+
+diff --git a/src/plugins/equalizer/iir.c b/src/plugins/equalizer/iir.c
+index 0518147..6ce9e5d 100644
+--- a/src/plugins/equalizer/iir.c
++++ b/src/plugins/equalizer/iir.c
+@@ -65,7 +65,7 @@ void config_iir(int srate, int bands, int original)
+ /* Round function provided by Frank Klemm which saves around 100K
+  * CPU cycles in my PIII for each call to the IIR function with 4K samples
+  */
+-__inline__ int round_trick(float floatvalue_to_round)
++int round_trick(float floatvalue_to_round)
+ {
+   float   floattmp ;
+   int     rounded_value ;
+diff --git a/src/plugins/equalizer/iir.h b/src/plugins/equalizer/iir.h
+index d6ae98f..95e4b5e 100644
+--- a/src/plugins/equalizer/iir.h
++++ b/src/plugins/equalizer/iir.h
+@@ -57,13 +57,13 @@ void set_gain(int index, int chn, float val);
+ void set_preamp(int chn, float val);
+ 
+ 
+-__inline__ int iir(void *d, int length, int nch, int extra_filtering);
++int iir(void *d, int length, int nch, int extra_filtering);
+ 
+ #ifdef ARCH_X86
+-__inline__ int round_trick(float floatvalue_to_round);
++int round_trick(float floatvalue_to_round);
+ #endif
+ #ifdef ARCH_PPC
+-__inline__ int round_ppc(float x);
++int round_ppc(float x);
+ #endif
+ 
+ #define EQ_CHANNELS 2
+diff --git a/src/plugins/equalizer/iir_fpu.c b/src/plugins/equalizer/iir_fpu.c
+index 119193e..3b4f55f 100644
+--- a/src/plugins/equalizer/iir_fpu.c
++++ b/src/plugins/equalizer/iir_fpu.c
+@@ -55,7 +55,7 @@ void clean_history(void)
+   di = 0;
+ }
+ 
+-__inline__ int iir(void *d, int length, int nch, int extra_filtering)
++int iir(void *d, int length, int nch, int extra_filtering)
+ {
+ /*  FTZ_ON; */
+   short *data = d;
+diff --git a/src/plugins/equalizer/iir_sse.c b/src/plugins/equalizer/iir_sse.c
+index 64054a2..878e8a9 100644
+--- a/src/plugins/equalizer/iir_sse.c
++++ b/src/plugins/equalizer/iir_sse.c
+@@ -100,7 +100,7 @@ static void setup_gain(int count_start)
+       gain[count_start/4][j].f[count_start%4] = 0.;
+ }
+ 
+-__inline__ int iir(void *d, int length, int nch, int extra_filtering)
++int iir(void *d, int length, int nch, int extra_filtering)
+ {
+   /* Turn ON Flush-to-zero mode to avoid exceptions on underflow */
+   FTZ_ON;
diff --git a/debian/patches/series b/debian/patches/series
index beba115..e12a85d 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -15,3 +15,4 @@ samba-with-pkg-cfg.patch
 ruby2-multiarch.patch
 libav10.patch
 ruby2.2-RbConfig.patch
+0018-OTHER-Let-the-compiler-figure-out-what-to-inline.patch
-- 
2.8.1

-- 
Rémi Vanicat

Reply via email to