mirror of
https://github.com/openembedded/meta-openembedded.git
synced 2026-07-27 07:57:27 +00:00
alsa-equal: Add recipe for version 0.6
Alsaequal is a real-time adjustable equalizer plugin for ALSA. It can be adjusted using an ALSA compatible mixer, like alsamixergui or alsamixer. Signed-off-by: Fabio Berton <fabio.berton@ossystems.com.br> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
This commit is contained in:
committed by
Martin Jansa
parent
def0e38c26
commit
7f5236bda3
@@ -0,0 +1,37 @@
|
|||||||
|
From c17129561e784bb9efebee2380349f121db0a9db Mon Sep 17 00:00:00 2001
|
||||||
|
From: Fabio Berton <fabio.berton@ossystems.com.br>
|
||||||
|
Date: Wed, 5 Oct 2016 10:56:33 -0300
|
||||||
|
Subject: [PATCH 1/3] Fix asneeded
|
||||||
|
Organization: O.S. Systems Software LTDA.
|
||||||
|
|
||||||
|
Patch from:
|
||||||
|
https://git.backbone.ws/portage/overlay/commit/7a069112054fbb5dc94a857e9c020a38cb1c6fde
|
||||||
|
|
||||||
|
Upstream-Status: Pending
|
||||||
|
|
||||||
|
Signed-off-by: Fabio Berton <fabio.berton@ossystems.com.br>
|
||||||
|
---
|
||||||
|
Makefile | 4 ++--
|
||||||
|
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/Makefile b/Makefile
|
||||||
|
index 3b2aa7d..0489fc1 100644
|
||||||
|
--- a/Makefile
|
||||||
|
+++ b/Makefile
|
||||||
|
@@ -29,11 +29,11 @@ dep:
|
||||||
|
|
||||||
|
$(SND_PCM_BIN): $(SND_PCM_OBJECTS)
|
||||||
|
@echo LD $@
|
||||||
|
- $(Q)$(LD) $(LDFLAGS) $(SND_PCM_LIBS) $(SND_PCM_OBJECTS) -o $(SND_PCM_BIN)
|
||||||
|
+ $(Q)$(LD) $(LDFLAGS) $(SND_PCM_OBJECTS) -o $(SND_PCM_BIN) $(SND_PCM_LIBS)
|
||||||
|
|
||||||
|
$(SND_CTL_BIN): $(SND_CTL_OBJECTS)
|
||||||
|
@echo LD $@
|
||||||
|
- $(Q)$(LD) $(LDFLAGS) $(SND_CTL_LIBS) $(SND_CTL_OBJECTS) -o $(SND_CTL_BIN)
|
||||||
|
+ $(Q)$(LD) $(LDFLAGS) $(SND_CTL_OBJECTS) -o $(SND_CTL_BIN) $(SND_CTL_LIBS)
|
||||||
|
|
||||||
|
%.o: %.c
|
||||||
|
@echo GCC $<
|
||||||
|
--
|
||||||
|
2.1.4
|
||||||
|
|
||||||
+83
@@ -0,0 +1,83 @@
|
|||||||
|
From d5c6c92045f9b6ad32365f39b8cc77f2fcd7d0f5 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Fabio Berton <fabio.berton@ossystems.com.br>
|
||||||
|
Date: Wed, 5 Oct 2016 10:57:29 -0300
|
||||||
|
Subject: [PATCH 2/3] Fix Eq CAPS plugin name
|
||||||
|
Organization: O.S. Systems Software LTDA.
|
||||||
|
|
||||||
|
Patch from:
|
||||||
|
https://git.backbone.ws/portage/overlay/commit/7a069112054fbb5dc94a857e9c020a38cb1c6fde
|
||||||
|
|
||||||
|
Upstream-Status: Pending
|
||||||
|
|
||||||
|
Signed-off-by: Fabio Berton <fabio.berton@ossystems.com.br>
|
||||||
|
---
|
||||||
|
README | 8 ++++----
|
||||||
|
ctl_equal.c | 2 +-
|
||||||
|
pcm_equal.c | 2 +-
|
||||||
|
3 files changed, 6 insertions(+), 6 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/README b/README
|
||||||
|
index b77fd2d..2df3dc5 100644
|
||||||
|
--- a/README
|
||||||
|
+++ b/README
|
||||||
|
@@ -1,11 +1,11 @@
|
||||||
|
Alsaequal is a real-time adjustable equalizer plugin for ALSA. It can
|
||||||
|
be adjusted using any ALSA compatible mixer, e.g. alsamixergui.
|
||||||
|
|
||||||
|
-Alsaequal uses the Eq CAPS LADSPA Plugin for audio processing, actually
|
||||||
|
+Alsaequal uses the Eq10 CAPS LADSPA Plugin for audio processing, actually
|
||||||
|
alsaequal is a generic LADSPA plugin interface with real-time access to
|
||||||
|
the LADSPA controls (the LADSPA plugin included with alsa doesn't allow
|
||||||
|
for real-time controls) but it was developed for and only tested with
|
||||||
|
-Eq CAPS LADSPA plugin. You are welcome to try it with other plugins, it
|
||||||
|
+Eq10 CAPS LADSPA plugin. You are welcome to try it with other plugins, it
|
||||||
|
may work. Let me know how it goes, you can reach me at
|
||||||
|
<charles@thedigitalmachine.net>.
|
||||||
|
|
||||||
|
@@ -66,7 +66,7 @@ ctl.<name_equal> {
|
||||||
|
library -- location of the LADSPA library, the default is
|
||||||
|
"/usr/lib/ladspa/caps.so"
|
||||||
|
module -- module name within the LADSPA library, the deafault
|
||||||
|
- is "Eq"
|
||||||
|
+ is "Eq10"
|
||||||
|
channels -- number of channels, the default is 2
|
||||||
|
}
|
||||||
|
|
||||||
|
@@ -81,7 +81,7 @@ pcm.<name_pcm> {
|
||||||
|
library -- location of the LADSPA library, the default is
|
||||||
|
"/usr/lib/ladspa/caps.so"
|
||||||
|
module -- module name within the LADSPA library, the deafault
|
||||||
|
- is "Eq"
|
||||||
|
+ is "Eq10"
|
||||||
|
channels -- number of channels, the default is 2
|
||||||
|
}
|
||||||
|
|
||||||
|
diff --git a/ctl_equal.c b/ctl_equal.c
|
||||||
|
index 40747d4..afba793 100644
|
||||||
|
--- a/ctl_equal.c
|
||||||
|
+++ b/ctl_equal.c
|
||||||
|
@@ -167,7 +167,7 @@ SND_CTL_PLUGIN_DEFINE_FUNC(equal)
|
||||||
|
snd_ctl_equal_t *equal;
|
||||||
|
const char *controls = ".alsaequal.bin";
|
||||||
|
const char *library = "/usr/lib/ladspa/caps.so";
|
||||||
|
- const char *module = "Eq";
|
||||||
|
+ const char *module = "Eq10";
|
||||||
|
long channels = 2;
|
||||||
|
const char *sufix = " Playback Volume";
|
||||||
|
int err, i, index;
|
||||||
|
diff --git a/pcm_equal.c b/pcm_equal.c
|
||||||
|
index 2bc87fb..b0b4265 100644
|
||||||
|
--- a/pcm_equal.c
|
||||||
|
+++ b/pcm_equal.c
|
||||||
|
@@ -151,7 +151,7 @@ SND_PCM_PLUGIN_DEFINE_FUNC(equal)
|
||||||
|
snd_config_t *sconf = NULL;
|
||||||
|
const char *controls = ".alsaequal.bin";
|
||||||
|
const char *library = "/usr/lib/ladspa/caps.so";
|
||||||
|
- const char *module = "Eq";
|
||||||
|
+ const char *module = "Eq10";
|
||||||
|
long channels = 2;
|
||||||
|
int err;
|
||||||
|
|
||||||
|
--
|
||||||
|
2.1.4
|
||||||
|
|
||||||
@@ -0,0 +1,92 @@
|
|||||||
|
From 665f68a863b4ac2e21b0a994dce7e2720c03aa9d Mon Sep 17 00:00:00 2001
|
||||||
|
From: Fabio Berton <fabio.berton@ossystems.com.br>
|
||||||
|
Date: Wed, 5 Oct 2016 11:02:18 -0300
|
||||||
|
Subject: [PATCH 3/3] Fix mixer
|
||||||
|
Organization: O.S. Systems Software LTDA.
|
||||||
|
|
||||||
|
Patch from:
|
||||||
|
https://git.backbone.ws/portage/overlay/commit/7a069112054fbb5dc94a857e9c020a38cb1c6fde
|
||||||
|
|
||||||
|
Upstream-Status: Pending
|
||||||
|
|
||||||
|
Signed-off-by: Fabio Berton <fabio.berton@ossystems.com.br>
|
||||||
|
---
|
||||||
|
ctl_equal.c | 9 ++++++---
|
||||||
|
ladspa_utils.c | 6 ++++--
|
||||||
|
pcm_equal.c | 6 ++++--
|
||||||
|
3 files changed, 14 insertions(+), 7 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/ctl_equal.c b/ctl_equal.c
|
||||||
|
index afba793..dd90e88 100644
|
||||||
|
--- a/ctl_equal.c
|
||||||
|
+++ b/ctl_equal.c
|
||||||
|
@@ -263,7 +263,8 @@ SND_CTL_PLUGIN_DEFINE_FUNC(equal)
|
||||||
|
for(i = 0; i < equal->num_input_controls; i++) {
|
||||||
|
if(equal->control_data->control[i].type == LADSPA_CNTRL_INPUT) {
|
||||||
|
index = equal->control_data->control[i].index;
|
||||||
|
- if(equal->klass->PortDescriptors[index] !=
|
||||||
|
+ if((equal->klass->PortDescriptors[index] &
|
||||||
|
+ (LADSPA_PORT_INPUT | LADSPA_PORT_CONTROL)) !=
|
||||||
|
(LADSPA_PORT_INPUT | LADSPA_PORT_CONTROL)) {
|
||||||
|
SNDERR("Problem with control file %s, %d.", controls, index);
|
||||||
|
return -1;
|
||||||
|
@@ -284,12 +285,14 @@ SND_CTL_PLUGIN_DEFINE_FUNC(equal)
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Make sure that the control file makes sense */
|
||||||
|
- if(equal->klass->PortDescriptors[equal->control_data->input_index] !=
|
||||||
|
+ if((equal->klass->PortDescriptors[equal->control_data->input_index] &
|
||||||
|
+ (LADSPA_PORT_INPUT | LADSPA_PORT_AUDIO))!=
|
||||||
|
(LADSPA_PORT_INPUT | LADSPA_PORT_AUDIO)) {
|
||||||
|
SNDERR("Problem with control file %s.", controls);
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
- if(equal->klass->PortDescriptors[equal->control_data->output_index] !=
|
||||||
|
+ if((equal->klass->PortDescriptors[equal->control_data->output_index] &
|
||||||
|
+ (LADSPA_PORT_OUTPUT | LADSPA_PORT_AUDIO))!=
|
||||||
|
(LADSPA_PORT_OUTPUT | LADSPA_PORT_AUDIO)) {
|
||||||
|
SNDERR("Problem with control file %s.", controls);
|
||||||
|
return -1;
|
||||||
|
diff --git a/ladspa_utils.c b/ladspa_utils.c
|
||||||
|
index 7b596da..0c00800 100644
|
||||||
|
--- a/ladspa_utils.c
|
||||||
|
+++ b/ladspa_utils.c
|
||||||
|
@@ -354,10 +354,12 @@ LADSPA_Control * LADSPAcontrolMMAP(const LADSPA_Descriptor *psDescriptor,
|
||||||
|
default_controls->control[index].type = LADSPA_CNTRL_OUTPUT;
|
||||||
|
}
|
||||||
|
index++;
|
||||||
|
- } else if(psDescriptor->PortDescriptors[i] ==
|
||||||
|
+ } else if((psDescriptor->PortDescriptors[i] &
|
||||||
|
+ (LADSPA_PORT_INPUT | LADSPA_PORT_AUDIO)) ==
|
||||||
|
(LADSPA_PORT_INPUT | LADSPA_PORT_AUDIO)) {
|
||||||
|
default_controls->input_index = i;
|
||||||
|
- } else if(psDescriptor->PortDescriptors[i] ==
|
||||||
|
+ } else if((psDescriptor->PortDescriptors[i] &
|
||||||
|
+ (LADSPA_PORT_OUTPUT | LADSPA_PORT_AUDIO)) ==
|
||||||
|
(LADSPA_PORT_OUTPUT | LADSPA_PORT_AUDIO)) {
|
||||||
|
default_controls->output_index = i;
|
||||||
|
}
|
||||||
|
diff --git a/pcm_equal.c b/pcm_equal.c
|
||||||
|
index b0b4265..8d98371 100644
|
||||||
|
--- a/pcm_equal.c
|
||||||
|
+++ b/pcm_equal.c
|
||||||
|
@@ -231,12 +231,14 @@ SND_PCM_PLUGIN_DEFINE_FUNC(equal)
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Make sure that the control file makes sense */
|
||||||
|
- if(equal->klass->PortDescriptors[equal->control_data->input_index] !=
|
||||||
|
+ if((equal->klass->PortDescriptors[equal->control_data->input_index] &
|
||||||
|
+ (LADSPA_PORT_INPUT | LADSPA_PORT_AUDIO)) !=
|
||||||
|
(LADSPA_PORT_INPUT | LADSPA_PORT_AUDIO)) {
|
||||||
|
SNDERR("Problem with control file %s.", controls);
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
- if(equal->klass->PortDescriptors[equal->control_data->output_index] !=
|
||||||
|
+ if((equal->klass->PortDescriptors[equal->control_data->output_index] &
|
||||||
|
+ (LADSPA_PORT_OUTPUT | LADSPA_PORT_AUDIO)) !=
|
||||||
|
(LADSPA_PORT_OUTPUT | LADSPA_PORT_AUDIO)) {
|
||||||
|
SNDERR("Problem with control file %s.", controls);
|
||||||
|
return -1;
|
||||||
|
--
|
||||||
|
2.1.4
|
||||||
|
|
||||||
@@ -0,0 +1,44 @@
|
|||||||
|
DESCRIPTION = "A real-time adjustable equalizer plugin for ALSA"
|
||||||
|
HOMEPAGE = "http://www.thedigitalmachine.net/alsaequal.html"
|
||||||
|
LICENSE = "LGPL-2.1"
|
||||||
|
LIC_FILES_CHKSUM = "file://COPYING;md5=243b725d71bb5df4a1e5920b344b86ad"
|
||||||
|
|
||||||
|
DEPENDS = "alsa-lib"
|
||||||
|
|
||||||
|
SRC_URI = " \
|
||||||
|
http://www.thedigitalmachine.net/tools/alsaequal-${PV}.tar.bz2 \
|
||||||
|
file://0001-Fix-asneeded.patch \
|
||||||
|
file://0002-Fix-Eq-CAPS-plugin-name.patch \
|
||||||
|
file://0003-Fix-mixer.patch \
|
||||||
|
"
|
||||||
|
|
||||||
|
SRC_URI[md5sum] = "d2edc7710c72cbf3ab297c414e35ebda"
|
||||||
|
SRC_URI[sha256sum] = "916e7d152added24617efc350142438a46099efe062bd8781d36dbf10b4e6ff0"
|
||||||
|
|
||||||
|
S = "${WORKDIR}/alsaequal"
|
||||||
|
|
||||||
|
EXTRA_OEMAKE = " \
|
||||||
|
Q='' \
|
||||||
|
CC='${CC}' \
|
||||||
|
LD='${CC}' \
|
||||||
|
LDFLAGS='${LDFLAGS} -shared -lasound' \
|
||||||
|
CFLAGS='${CFLAGS} -I. -funroll-loops -ffast-math -fPIC -DPIC' \
|
||||||
|
SND_PCM_LIBS='-lasound' \
|
||||||
|
SND_CTL_LIBS='-lasound' \
|
||||||
|
"
|
||||||
|
|
||||||
|
do_compile() {
|
||||||
|
oe_runmake all
|
||||||
|
}
|
||||||
|
|
||||||
|
do_install() {
|
||||||
|
install -Dm 0644 libasound_module_ctl_equal.so ${D}${libdir}/alsa-lib/libasound_module_ctl_equal.so
|
||||||
|
install -Dm 0644 libasound_module_pcm_equal.so ${D}${libdir}/alsa-lib/libasound_module_pcm_equal.so
|
||||||
|
}
|
||||||
|
|
||||||
|
RDEPENDS_${PN} += " \
|
||||||
|
alsa-utils \
|
||||||
|
caps \
|
||||||
|
"
|
||||||
|
|
||||||
|
FILES_${PN} = "${libdir}/alsa-lib/"
|
||||||
Reference in New Issue
Block a user