diff options
author | Fabio Berton <fabio.berton@ossystems.com.br> | 2016-10-06 14:40:39 -0300 |
---|---|---|
committer | Martin Jansa <Martin.Jansa@gmail.com> | 2016-10-21 18:20:43 +0200 |
commit | 7f5236bda38821fd9826b5d96469511e9d28fa93 (patch) | |
tree | 319b36bacf0c2f2635486ad6c03ae08f7c4cbe96 /meta-multimedia/recipes-multimedia/alsa-equal | |
parent | def0e38c264f559163cb20b5bff840e33287aab7 (diff) | |
download | meta-openembedded-7f5236bda38821fd9826b5d96469511e9d28fa93.tar.gz |
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>
Diffstat (limited to 'meta-multimedia/recipes-multimedia/alsa-equal')
4 files changed, 256 insertions, 0 deletions
diff --git a/meta-multimedia/recipes-multimedia/alsa-equal/alsa-equal/0001-Fix-asneeded.patch b/meta-multimedia/recipes-multimedia/alsa-equal/alsa-equal/0001-Fix-asneeded.patch new file mode 100644 index 000000000..64130d900 --- /dev/null +++ b/meta-multimedia/recipes-multimedia/alsa-equal/alsa-equal/0001-Fix-asneeded.patch | |||
@@ -0,0 +1,37 @@ | |||
1 | From c17129561e784bb9efebee2380349f121db0a9db Mon Sep 17 00:00:00 2001 | ||
2 | From: Fabio Berton <fabio.berton@ossystems.com.br> | ||
3 | Date: Wed, 5 Oct 2016 10:56:33 -0300 | ||
4 | Subject: [PATCH 1/3] Fix asneeded | ||
5 | Organization: O.S. Systems Software LTDA. | ||
6 | |||
7 | Patch from: | ||
8 | https://git.backbone.ws/portage/overlay/commit/7a069112054fbb5dc94a857e9c020a38cb1c6fde | ||
9 | |||
10 | Upstream-Status: Pending | ||
11 | |||
12 | Signed-off-by: Fabio Berton <fabio.berton@ossystems.com.br> | ||
13 | --- | ||
14 | Makefile | 4 ++-- | ||
15 | 1 file changed, 2 insertions(+), 2 deletions(-) | ||
16 | |||
17 | diff --git a/Makefile b/Makefile | ||
18 | index 3b2aa7d..0489fc1 100644 | ||
19 | --- a/Makefile | ||
20 | +++ b/Makefile | ||
21 | @@ -29,11 +29,11 @@ dep: | ||
22 | |||
23 | $(SND_PCM_BIN): $(SND_PCM_OBJECTS) | ||
24 | @echo LD $@ | ||
25 | - $(Q)$(LD) $(LDFLAGS) $(SND_PCM_LIBS) $(SND_PCM_OBJECTS) -o $(SND_PCM_BIN) | ||
26 | + $(Q)$(LD) $(LDFLAGS) $(SND_PCM_OBJECTS) -o $(SND_PCM_BIN) $(SND_PCM_LIBS) | ||
27 | |||
28 | $(SND_CTL_BIN): $(SND_CTL_OBJECTS) | ||
29 | @echo LD $@ | ||
30 | - $(Q)$(LD) $(LDFLAGS) $(SND_CTL_LIBS) $(SND_CTL_OBJECTS) -o $(SND_CTL_BIN) | ||
31 | + $(Q)$(LD) $(LDFLAGS) $(SND_CTL_OBJECTS) -o $(SND_CTL_BIN) $(SND_CTL_LIBS) | ||
32 | |||
33 | %.o: %.c | ||
34 | @echo GCC $< | ||
35 | -- | ||
36 | 2.1.4 | ||
37 | |||
diff --git a/meta-multimedia/recipes-multimedia/alsa-equal/alsa-equal/0002-Fix-Eq-CAPS-plugin-name.patch b/meta-multimedia/recipes-multimedia/alsa-equal/alsa-equal/0002-Fix-Eq-CAPS-plugin-name.patch new file mode 100644 index 000000000..efce38070 --- /dev/null +++ b/meta-multimedia/recipes-multimedia/alsa-equal/alsa-equal/0002-Fix-Eq-CAPS-plugin-name.patch | |||
@@ -0,0 +1,83 @@ | |||
1 | From d5c6c92045f9b6ad32365f39b8cc77f2fcd7d0f5 Mon Sep 17 00:00:00 2001 | ||
2 | From: Fabio Berton <fabio.berton@ossystems.com.br> | ||
3 | Date: Wed, 5 Oct 2016 10:57:29 -0300 | ||
4 | Subject: [PATCH 2/3] Fix Eq CAPS plugin name | ||
5 | Organization: O.S. Systems Software LTDA. | ||
6 | |||
7 | Patch from: | ||
8 | https://git.backbone.ws/portage/overlay/commit/7a069112054fbb5dc94a857e9c020a38cb1c6fde | ||
9 | |||
10 | Upstream-Status: Pending | ||
11 | |||
12 | Signed-off-by: Fabio Berton <fabio.berton@ossystems.com.br> | ||
13 | --- | ||
14 | README | 8 ++++---- | ||
15 | ctl_equal.c | 2 +- | ||
16 | pcm_equal.c | 2 +- | ||
17 | 3 files changed, 6 insertions(+), 6 deletions(-) | ||
18 | |||
19 | diff --git a/README b/README | ||
20 | index b77fd2d..2df3dc5 100644 | ||
21 | --- a/README | ||
22 | +++ b/README | ||
23 | @@ -1,11 +1,11 @@ | ||
24 | Alsaequal is a real-time adjustable equalizer plugin for ALSA. It can | ||
25 | be adjusted using any ALSA compatible mixer, e.g. alsamixergui. | ||
26 | |||
27 | -Alsaequal uses the Eq CAPS LADSPA Plugin for audio processing, actually | ||
28 | +Alsaequal uses the Eq10 CAPS LADSPA Plugin for audio processing, actually | ||
29 | alsaequal is a generic LADSPA plugin interface with real-time access to | ||
30 | the LADSPA controls (the LADSPA plugin included with alsa doesn't allow | ||
31 | for real-time controls) but it was developed for and only tested with | ||
32 | -Eq CAPS LADSPA plugin. You are welcome to try it with other plugins, it | ||
33 | +Eq10 CAPS LADSPA plugin. You are welcome to try it with other plugins, it | ||
34 | may work. Let me know how it goes, you can reach me at | ||
35 | <charles@thedigitalmachine.net>. | ||
36 | |||
37 | @@ -66,7 +66,7 @@ ctl.<name_equal> { | ||
38 | library -- location of the LADSPA library, the default is | ||
39 | "/usr/lib/ladspa/caps.so" | ||
40 | module -- module name within the LADSPA library, the deafault | ||
41 | - is "Eq" | ||
42 | + is "Eq10" | ||
43 | channels -- number of channels, the default is 2 | ||
44 | } | ||
45 | |||
46 | @@ -81,7 +81,7 @@ pcm.<name_pcm> { | ||
47 | library -- location of the LADSPA library, the default is | ||
48 | "/usr/lib/ladspa/caps.so" | ||
49 | module -- module name within the LADSPA library, the deafault | ||
50 | - is "Eq" | ||
51 | + is "Eq10" | ||
52 | channels -- number of channels, the default is 2 | ||
53 | } | ||
54 | |||
55 | diff --git a/ctl_equal.c b/ctl_equal.c | ||
56 | index 40747d4..afba793 100644 | ||
57 | --- a/ctl_equal.c | ||
58 | +++ b/ctl_equal.c | ||
59 | @@ -167,7 +167,7 @@ SND_CTL_PLUGIN_DEFINE_FUNC(equal) | ||
60 | snd_ctl_equal_t *equal; | ||
61 | const char *controls = ".alsaequal.bin"; | ||
62 | const char *library = "/usr/lib/ladspa/caps.so"; | ||
63 | - const char *module = "Eq"; | ||
64 | + const char *module = "Eq10"; | ||
65 | long channels = 2; | ||
66 | const char *sufix = " Playback Volume"; | ||
67 | int err, i, index; | ||
68 | diff --git a/pcm_equal.c b/pcm_equal.c | ||
69 | index 2bc87fb..b0b4265 100644 | ||
70 | --- a/pcm_equal.c | ||
71 | +++ b/pcm_equal.c | ||
72 | @@ -151,7 +151,7 @@ SND_PCM_PLUGIN_DEFINE_FUNC(equal) | ||
73 | snd_config_t *sconf = NULL; | ||
74 | const char *controls = ".alsaequal.bin"; | ||
75 | const char *library = "/usr/lib/ladspa/caps.so"; | ||
76 | - const char *module = "Eq"; | ||
77 | + const char *module = "Eq10"; | ||
78 | long channels = 2; | ||
79 | int err; | ||
80 | |||
81 | -- | ||
82 | 2.1.4 | ||
83 | |||
diff --git a/meta-multimedia/recipes-multimedia/alsa-equal/alsa-equal/0003-Fix-mixer.patch b/meta-multimedia/recipes-multimedia/alsa-equal/alsa-equal/0003-Fix-mixer.patch new file mode 100644 index 000000000..1c2503ed9 --- /dev/null +++ b/meta-multimedia/recipes-multimedia/alsa-equal/alsa-equal/0003-Fix-mixer.patch | |||
@@ -0,0 +1,92 @@ | |||
1 | From 665f68a863b4ac2e21b0a994dce7e2720c03aa9d Mon Sep 17 00:00:00 2001 | ||
2 | From: Fabio Berton <fabio.berton@ossystems.com.br> | ||
3 | Date: Wed, 5 Oct 2016 11:02:18 -0300 | ||
4 | Subject: [PATCH 3/3] Fix mixer | ||
5 | Organization: O.S. Systems Software LTDA. | ||
6 | |||
7 | Patch from: | ||
8 | https://git.backbone.ws/portage/overlay/commit/7a069112054fbb5dc94a857e9c020a38cb1c6fde | ||
9 | |||
10 | Upstream-Status: Pending | ||
11 | |||
12 | Signed-off-by: Fabio Berton <fabio.berton@ossystems.com.br> | ||
13 | --- | ||
14 | ctl_equal.c | 9 ++++++--- | ||
15 | ladspa_utils.c | 6 ++++-- | ||
16 | pcm_equal.c | 6 ++++-- | ||
17 | 3 files changed, 14 insertions(+), 7 deletions(-) | ||
18 | |||
19 | diff --git a/ctl_equal.c b/ctl_equal.c | ||
20 | index afba793..dd90e88 100644 | ||
21 | --- a/ctl_equal.c | ||
22 | +++ b/ctl_equal.c | ||
23 | @@ -263,7 +263,8 @@ SND_CTL_PLUGIN_DEFINE_FUNC(equal) | ||
24 | for(i = 0; i < equal->num_input_controls; i++) { | ||
25 | if(equal->control_data->control[i].type == LADSPA_CNTRL_INPUT) { | ||
26 | index = equal->control_data->control[i].index; | ||
27 | - if(equal->klass->PortDescriptors[index] != | ||
28 | + if((equal->klass->PortDescriptors[index] & | ||
29 | + (LADSPA_PORT_INPUT | LADSPA_PORT_CONTROL)) != | ||
30 | (LADSPA_PORT_INPUT | LADSPA_PORT_CONTROL)) { | ||
31 | SNDERR("Problem with control file %s, %d.", controls, index); | ||
32 | return -1; | ||
33 | @@ -284,12 +285,14 @@ SND_CTL_PLUGIN_DEFINE_FUNC(equal) | ||
34 | } | ||
35 | |||
36 | /* Make sure that the control file makes sense */ | ||
37 | - if(equal->klass->PortDescriptors[equal->control_data->input_index] != | ||
38 | + if((equal->klass->PortDescriptors[equal->control_data->input_index] & | ||
39 | + (LADSPA_PORT_INPUT | LADSPA_PORT_AUDIO))!= | ||
40 | (LADSPA_PORT_INPUT | LADSPA_PORT_AUDIO)) { | ||
41 | SNDERR("Problem with control file %s.", controls); | ||
42 | return -1; | ||
43 | } | ||
44 | - if(equal->klass->PortDescriptors[equal->control_data->output_index] != | ||
45 | + if((equal->klass->PortDescriptors[equal->control_data->output_index] & | ||
46 | + (LADSPA_PORT_OUTPUT | LADSPA_PORT_AUDIO))!= | ||
47 | (LADSPA_PORT_OUTPUT | LADSPA_PORT_AUDIO)) { | ||
48 | SNDERR("Problem with control file %s.", controls); | ||
49 | return -1; | ||
50 | diff --git a/ladspa_utils.c b/ladspa_utils.c | ||
51 | index 7b596da..0c00800 100644 | ||
52 | --- a/ladspa_utils.c | ||
53 | +++ b/ladspa_utils.c | ||
54 | @@ -354,10 +354,12 @@ LADSPA_Control * LADSPAcontrolMMAP(const LADSPA_Descriptor *psDescriptor, | ||
55 | default_controls->control[index].type = LADSPA_CNTRL_OUTPUT; | ||
56 | } | ||
57 | index++; | ||
58 | - } else if(psDescriptor->PortDescriptors[i] == | ||
59 | + } else if((psDescriptor->PortDescriptors[i] & | ||
60 | + (LADSPA_PORT_INPUT | LADSPA_PORT_AUDIO)) == | ||
61 | (LADSPA_PORT_INPUT | LADSPA_PORT_AUDIO)) { | ||
62 | default_controls->input_index = i; | ||
63 | - } else if(psDescriptor->PortDescriptors[i] == | ||
64 | + } else if((psDescriptor->PortDescriptors[i] & | ||
65 | + (LADSPA_PORT_OUTPUT | LADSPA_PORT_AUDIO)) == | ||
66 | (LADSPA_PORT_OUTPUT | LADSPA_PORT_AUDIO)) { | ||
67 | default_controls->output_index = i; | ||
68 | } | ||
69 | diff --git a/pcm_equal.c b/pcm_equal.c | ||
70 | index b0b4265..8d98371 100644 | ||
71 | --- a/pcm_equal.c | ||
72 | +++ b/pcm_equal.c | ||
73 | @@ -231,12 +231,14 @@ SND_PCM_PLUGIN_DEFINE_FUNC(equal) | ||
74 | } | ||
75 | |||
76 | /* Make sure that the control file makes sense */ | ||
77 | - if(equal->klass->PortDescriptors[equal->control_data->input_index] != | ||
78 | + if((equal->klass->PortDescriptors[equal->control_data->input_index] & | ||
79 | + (LADSPA_PORT_INPUT | LADSPA_PORT_AUDIO)) != | ||
80 | (LADSPA_PORT_INPUT | LADSPA_PORT_AUDIO)) { | ||
81 | SNDERR("Problem with control file %s.", controls); | ||
82 | return -1; | ||
83 | } | ||
84 | - if(equal->klass->PortDescriptors[equal->control_data->output_index] != | ||
85 | + if((equal->klass->PortDescriptors[equal->control_data->output_index] & | ||
86 | + (LADSPA_PORT_OUTPUT | LADSPA_PORT_AUDIO)) != | ||
87 | (LADSPA_PORT_OUTPUT | LADSPA_PORT_AUDIO)) { | ||
88 | SNDERR("Problem with control file %s.", controls); | ||
89 | return -1; | ||
90 | -- | ||
91 | 2.1.4 | ||
92 | |||
diff --git a/meta-multimedia/recipes-multimedia/alsa-equal/alsa-equal_0.6.bb b/meta-multimedia/recipes-multimedia/alsa-equal/alsa-equal_0.6.bb new file mode 100644 index 000000000..637d029ba --- /dev/null +++ b/meta-multimedia/recipes-multimedia/alsa-equal/alsa-equal_0.6.bb | |||
@@ -0,0 +1,44 @@ | |||
1 | DESCRIPTION = "A real-time adjustable equalizer plugin for ALSA" | ||
2 | HOMEPAGE = "http://www.thedigitalmachine.net/alsaequal.html" | ||
3 | LICENSE = "LGPL-2.1" | ||
4 | LIC_FILES_CHKSUM = "file://COPYING;md5=243b725d71bb5df4a1e5920b344b86ad" | ||
5 | |||
6 | DEPENDS = "alsa-lib" | ||
7 | |||
8 | SRC_URI = " \ | ||
9 | http://www.thedigitalmachine.net/tools/alsaequal-${PV}.tar.bz2 \ | ||
10 | file://0001-Fix-asneeded.patch \ | ||
11 | file://0002-Fix-Eq-CAPS-plugin-name.patch \ | ||
12 | file://0003-Fix-mixer.patch \ | ||
13 | " | ||
14 | |||
15 | SRC_URI[md5sum] = "d2edc7710c72cbf3ab297c414e35ebda" | ||
16 | SRC_URI[sha256sum] = "916e7d152added24617efc350142438a46099efe062bd8781d36dbf10b4e6ff0" | ||
17 | |||
18 | S = "${WORKDIR}/alsaequal" | ||
19 | |||
20 | EXTRA_OEMAKE = " \ | ||
21 | Q='' \ | ||
22 | CC='${CC}' \ | ||
23 | LD='${CC}' \ | ||
24 | LDFLAGS='${LDFLAGS} -shared -lasound' \ | ||
25 | CFLAGS='${CFLAGS} -I. -funroll-loops -ffast-math -fPIC -DPIC' \ | ||
26 | SND_PCM_LIBS='-lasound' \ | ||
27 | SND_CTL_LIBS='-lasound' \ | ||
28 | " | ||
29 | |||
30 | do_compile() { | ||
31 | oe_runmake all | ||
32 | } | ||
33 | |||
34 | do_install() { | ||
35 | install -Dm 0644 libasound_module_ctl_equal.so ${D}${libdir}/alsa-lib/libasound_module_ctl_equal.so | ||
36 | install -Dm 0644 libasound_module_pcm_equal.so ${D}${libdir}/alsa-lib/libasound_module_pcm_equal.so | ||
37 | } | ||
38 | |||
39 | RDEPENDS_${PN} += " \ | ||
40 | alsa-utils \ | ||
41 | caps \ | ||
42 | " | ||
43 | |||
44 | FILES_${PN} = "${libdir}/alsa-lib/" | ||