View Full Version : Effect: Remove Vocals, aka "Karaoke"
Frank B
02-23-2016, 09:03 PM
Hi,
i wrote a new effect for the audio-lib. It removes the vocals from songs.
For some songs it work good, for others not. For a good effect, the vocals must be in the mid of both stereo-channels.
How does it work ?
Simple. It inverts the right channel and adds it to the left (the result is one mono channel - ideally, the vocals are the same on l+r and subtracting the values gives 0...).
Its the same way as the "Vocals Remover" in audacity works.
I added a enable(bool) function which enables or disables the effect.
That means, if you disable it, you can use the effect as a simple way to transform stereo to mono.
Link with additional example-sketch:
https://github.com/FrankBoesing/Teensy-Audio-Effect-Remove-Vocals
@Paul: it's MIT licence ;-)
Have fun,
Frank.
Frank B
02-23-2016, 09:52 PM
Recorded demo - mp3 here: https://drive.google.com/open?id=0Bx2Jw84lqebkTWFkN2I0ZHQ3OVU
Original here:https://www.pjrc.com/teensy/SDTEST1.WAV
alfa66
02-29-2016, 04:20 PM
Hi Frank B!
Great job, that's a clean implementation!
This is what I was able to concoct some time back, not as elegant, but good enough to impress my kids!
https://forum.pjrc.com/threads/24793-Audio-Library?p=48468&viewfull=1#post48468
Cheers,
Alfa66
Frank B
02-29-2016, 11:09 PM
oops..i did'nt know that this existed :)
alfa66
02-29-2016, 11:55 PM
oops..i did'nt know that this existed :)
Hey, no worries!
It turns out that we have both come up with something that maybe is not really needed - check this: http://www.pjrc.com/teensy/gui/?info=AudioEffectMidSide
Anyway (and off topic) what is the best way to display (oscillscope-like) the waveform in the audio buffer? Should I use queue?
Thanks!
PS Really appreciate your many contributions to the Audio Forum!
PaulStoffregen
03-01-2016, 12:36 AM
Anyway (and off topic) what is the best way to display (oscillscope-like) the waveform in the audio buffer? Should I use queue?
Yes, the queue object is the best way to get access to the raw audio samples.
PaulStoffregen
03-01-2016, 12:40 AM
Maybe we should put that remove vocals example into the library, using the existing mid-side object. My understanding is vocal elimination usually also involves a lowpass and highpass filter, to keep the non-vocal frequencies and try to lessen any vocals that get through the first part.
Anyone want to give that a try? Would love to include a really good vocal eliminator example with the library. :)
Frank B
04-24-2016, 10:40 PM
@Paul, I don't know, and I'm not familar with the new USB Audio - is it possible to take USB-Input, apply the effect and send it back to the PC ?
Would be a great example with mid-side, with the filters added. (But it works OK without filters, too - did you hear the example ? (Post #2)).
Audacity uses no filters for this effect.
PaulStoffregen
04-25-2016, 05:19 AM
@Paul, I don't know, and I'm not familar with the new USB Audio - is it possible to take USB-Input, apply the effect and send it back to the PC ?
Yes.
However, the USB objects don't implement update responsibility, so at least 1 regular input or output must also be present.
Powered by vBulletin® Version 4.2.2 Copyright © 2021 vBulletin Solutions, Inc. All rights reserved.