After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 343471 - REQUEST: voice removal filter (for karaoke)
REQUEST: voice removal filter (for karaoke)
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-bad
0.10.7
Other All
: Normal enhancement
: NONE
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2006-05-31 03:01 UTC by Benjamin Creekmore
Modified: 2011-05-27 08:49 UTC
See Also:
GNOME target: ---
GNOME version: Unversioned Enhancement



Description Benjamin Creekmore 2006-05-31 03:01:30 UTC
for use in amarok: a great music library player that supports gstreamer, as well as downloads lyrics to every song you play, A GREAT Karaoke plugin (voice removal) plugin is in-demand. One that takes away vocal frequencies without destroying the audio of the song.
Comment 1 Christophe Dehais 2006-12-17 18:40:29 UTC
There is a ladspa plugin doing that and it's made available by ladspa-karaoke element (plugins-good). However, I didn't manage to build a working pipeline using it...

gst-launch --gst-debug-level=2 filesrc location=song.mp3 ! decodebin ! audioconvert ! ladspa-karaoke ! audioconvert ! alsasink

loops with WARN message (no sound produced):

gst-dsp gstsignalprocessor.c:585:gst_signal_processor_pen_buffer: Pad ladspa-karaoke0:Right-in already has penned buffer
0:00:04.664787000  5522 0x8082fa0 WARN   

then stops after a while.
Comment 2 René Stadler 2006-12-17 19:35:43 UTC
This is due to how LADSPA elements work: They only process one channel per pad.  The karaoke element needs stereo, so you need to split the input channels (deinterleave) and link two pads for input and two pads for output to make use of it.  The (de)interleave elements are not ported to 0.10 yet, however.
Comment 3 Christophe Dehais 2006-12-17 23:43:20 UTC
I though that was something like that. Pads number for each elements simply does not match.

I tried to surround the filter like this:
... ladspa-split ! ladspa-karaoke ! ladspa-mixer ...
It didn't help either but I guess I'm missing something.
Comment 4 Wim Taymans 2008-05-27 10:29:38 UTC
I checked in the audiovoice plugin in -good but I have some other algorithm that mght give better results.
Comment 5 Sebastian Dröge (slomo) 2008-05-27 11:59:52 UTC
Where can one get the ladspa karaoka plugin btw? Would be nice to get the gstreamer ladspa wrapper working with it ;)
Comment 6 Sebastian Dröge (slomo) 2008-05-29 10:25:50 UTC
Ok, found it... things are playing at least with

gst-launch-0.10 -v filesrc location=/path/to/file ! decodebin ! audioconvert ! "audio/x-raw-float,channels=2" ! deinterleave name=d  ladspa-karaoke name=k  interleave name=i ! queue ! audioconvert ! alsasink  d. ! queue ! audioconvert ! k.  d. ! queue ! audioconvert ! k.  k. ! queue ! audioconvert ! i. k. ! queue ! audioconvert ! i.

...but at a far too high speed.

Whatever, this looks more like a bug in the gstreamer ladspa plugin... can this bug here be closed now that we have a voice removal element (it was renamed to audiokaraoke btw).
Comment 7 Stefan Sauer (gstreamer, gtkdoc dev) 2011-05-27 08:49:03 UTC
We do have the audiokarakoke plugin in good since quiet a while.