Vowels

If you require help or assistance with anything then please post here

Moderators: electrogear, exonerate

Re: Vowels

Postby martinvicanek on Sat Feb 25, 2012 10:06 am

Another nice feature about the decomposition into five 2-pole filters is that you can morph any two (or more) vowels by linear interpolation of the filter coefficients. The filter is stable by design. :) Attached is a human sounding wah-wah demo.
Attachments
VowelFilterMorph.osm
(33.78 KiB) Downloaded 147 times
VowelMorph.png
VowelMorph.png (6.68 KiB) Viewed 1730 times
martinvicanek
essemilian
 
Posts: 316
Joined: Sun Mar 13, 2011 1:15 pm

Re: Vowels

Postby tester on Sat Feb 25, 2012 1:06 pm

But... there are more vowels.
http://en.wikipedia.org/wiki/Vowel_diagram

or to emphasize the understanding through google search:
http://www.google.pl/search?q=vowel+cha ... 18&bih=676

I mention this, because my language speaks differently english vowels.
Need to take a break? Looking for relaxing sounds? I have something right for you.
(by purchasing, you are also supporting further development of related projects).
Thank you for your contribution.
tester
smanatic
 
Posts: 762
Joined: Wed Jan 18, 2012 9:52 pm
Location: Poland, internet

Re: Vowels

Postby MegaHurtz on Sat Feb 25, 2012 2:06 pm

I have wondered a couple of times which filters would be best to do this with, it seems linear phase isnt quite it.
User avatar
MegaHurtz
smaniac
 
Posts: 1610
Joined: Mon Aug 11, 2008 5:29 pm
Location: Eindhoven/Netherlands

Re: Vowels

Postby stw on Sat Feb 25, 2012 2:16 pm

martinvicanek wrote:Another nice feature about the decomposition into five 2-pole filters is that you can morph any two (or more) vowels by linear interpolation of the filter coefficients. The filter is stable by design. :) Attached is a human sounding wah-wah demo.


Nice work Martin! Thanks for sharing... ;)
stw
smanatic
 
Posts: 641
Joined: Mon Jun 30, 2008 2:55 pm

Re: Vowels

Postby martinvicanek on Sat Feb 25, 2012 3:19 pm

tester wrote:But... there are more vowels.

Absolutely. A rough representation of the IPA chart would be this XY pad morphing with the four corner vowels spanning the possible space:
VowelMorphXY.png
VowelMorphXY.png (5.58 KiB) Viewed 1689 times

MegaHurtz wrote:I have wondered a couple of times which filters would be best to do this with, it seems linear phase isnt quite it.

An allpole filter (the one used here) is also the natural choice in LPC, refer to this thread.
Attachments
VowelFilterMorphXY.osm
(31.97 KiB) Downloaded 153 times
martinvicanek
essemilian
 
Posts: 316
Joined: Sun Mar 13, 2011 1:15 pm

Re: Vowels

Postby RunBeerRun2 on Sat Feb 25, 2012 5:17 pm

Pretty cool! I like the 2-way one best, cpu-wise.
Here are plugins made by Superman and Catwoman--> http://runbeerrun.blogspot.com
RunBeerRun2
essemist
 
Posts: 167
Joined: Wed Mar 21, 2007 8:53 pm

Re: Vowels

Postby tester on Sat Feb 25, 2012 5:35 pm

This one is cool, thanks ;-)

Now some pitch changer and we have singing whispers and vocals :-)

The pitch changer must be designed to understand formants of human voice as far I remember. Or the formnat scheme could include pitch changing via shifting the filter values (correlated with input frequency change).
Need to take a break? Looking for relaxing sounds? I have something right for you.
(by purchasing, you are also supporting further development of related projects).
Thank you for your contribution.
tester
smanatic
 
Posts: 762
Joined: Wed Jan 18, 2012 9:52 pm
Location: Poland, internet

Re: Vowels

Postby cyto on Sat Feb 25, 2012 7:48 pm

Very cool examples, Martin, as always. I wonder, though, if it is really necessary to have all the coefficients declared and interpolated, etc in code. Couldn't it be just as effectively be done in green? Also, I'm assuming this isn't compatible across sample rates. What rate is it tuned to? 44.1kHz?

-cyto
User avatar
cyto
essemilian
 
Posts: 317
Joined: Sun Nov 28, 2010 4:36 am
Location: CIN | OH | USA

Re: Vowels

Postby MegaHurtz on Sat Feb 25, 2012 8:25 pm

It does sound lovely, even on my standard laptop speakers :D
Works nice on an impulse as well.
Aliassing.. No, Bad logics.. Yes.
User avatar
MegaHurtz
smaniac
 
Posts: 1610
Joined: Mon Aug 11, 2008 5:29 pm
Location: Eindhoven/Netherlands

Re: Vowels

Postby infuzion on Sun Feb 26, 2012 3:33 am

martinvicanek wrote:
tester wrote:But... there are more vowels.

Absolutely. A rough representation of the IPA chart would be this XY pad morphing with the four corner vowels spanning the possible space:
Nice 10 vowel filter! I do think you can make the XY value setting in one Code block with lots of reduction, rather than 5 modules that you have now. Tip: I'd try a Float Array to select between banks of vowel values, since you don't expect that to change too much. Get Troggie to do some SSE array compressing if you can get him to stroke the keyboard instead of his new woman long enough.

Interesting that it uses 10 poles. Usually I've seen 3, though I hope for 4 (SSE) for 10+ vowels. Google is not helping though.

The OSM is giving me a flashback:
Image
Need help? First search the forum & WiKi, then post in the help forum with a clear topic, request, & OSM. Then please WiKi the correct solution. If you want my personal assistance, I charge by the hour or for an exchange of services.
infuzion
smstar
smstar
 
Posts: 6169
Joined: Wed May 04, 2005 8:02 pm
Location: Earth, USA, CO, Denver

Re: Vowels

Postby martinvicanek on Sun Feb 26, 2012 6:05 am

Thanks for your good feedback guys! Yes, the 4 way interpolator looks a little bulky with 46 inputs, hehe. It could be done in a cascade of two blocks half the size each, but that would just be cosmetics without CPU gain. Yes, it could also be done in green, and in fact that was my first thought. I discarded that idea, though, because in green, operations are not done synchronously, resulting in an inconsistent parameter set for a short period of time when you change the xy too fast. I was afraid that this transient could make the filter unstable. However, thinking again, the two pole filters are so docile it should not be a problem. Hmmm.
@Cyto: well spotted, it' for 44.1 kHz only. I'll upload a sample rate independent version later. Thanks!
@infuzion: the original filter is from musicdsp, not mine. The 10 poles are in fact 5 formants (pairs of complex conjugates). Which is still one too many for SSE :( Each formant is characterized by its frequency and strength (the latter is less well documented in the literature).
martinvicanek
essemilian
 
Posts: 316
Joined: Sun Mar 13, 2011 1:15 pm

Re: Vowels

Postby infuzion on Sun Feb 26, 2012 12:59 pm

I was thinking the data would be in green, but the XY crossover would be in Code/ASM.
Need help? First search the forum & WiKi, then post in the help forum with a clear topic, request, & OSM. Then please WiKi the correct solution. If you want my personal assistance, I charge by the hour or for an exchange of services.
infuzion
smstar
smstar
 
Posts: 6169
Joined: Wed May 04, 2005 8:02 pm
Location: Earth, USA, CO, Denver

Re: Vowels

Postby trogluddite on Sun Feb 26, 2012 1:49 pm

Sounds great!
I'd be tempted not to bother with using all the SSE channels - the filter code is very economical, and could be really beautiful used on a poly synth - a nice multi-stage envelope for each of the two crossfade axes would make some great evolving pad sounds!
One trick does occur to me - getting the correct coefficient values to the 'corner' variables of the crossfader could be done using a routine that is executed only upon changing the selections (or from a note trigger when used in a synth).
Feel free to use any schematics and algorithms I post on the forum in your own designs - a credit is appreciated (but not a requirement).
Don't stagnate, mutate to create. Without randomness and serendipity the earth would be just another barren rock.
User avatar
trogluddite
smychopath
 
Posts: 3032
Joined: Mon Oct 20, 2008 3:52 pm
Location: Yorkshire, UK

Re: Vowels

Postby martinvicanek on Sun Feb 26, 2012 2:00 pm

Okay, here is my next (and probably last) update:
- filter coefficients are handled completely in green
- coefficients are adjusted so the filter works independent of sample rate
- schematic is now better organized
Not that it'd improve on CPU or sound any different though. ;)
I am sure there is still potential to cut down a few cycles in the filter processing. Packing 4 of the 5 filters into Mono4 has not proved efficient, however. Obviously that optimizing part is beyond me. ;)
Attachments
VowelFilterMorphXY2.osm
(23.27 KiB) Downloaded 137 times
martinvicanek
essemilian
 
Posts: 316
Joined: Sun Mar 13, 2011 1:15 pm

Re: Vowels

Postby martinvicanek on Sun Feb 26, 2012 2:12 pm

trogluddite wrote:a nice multi-stage envelope for each of the two crossfade axes would make some great evolving pad sounds!
One trick does occur to me - getting the correct coefficient values to the 'corner' variables of the crossfader could be done using a routine that is executed only upon changing the selections (or from a note trigger when used in a synth).

Yeah, I can almost hear it! Trog, you are so creative. I wish I had read this before, and also infuzion's comment. Looks like one should do the corners in green and the xy-mixing in code - that would leave all options open. Hmmm.
martinvicanek
essemilian
 
Posts: 316
Joined: Sun Mar 13, 2011 1:15 pm

PreviousNext

Return to Help

Who is online

Users browsing this forum: Google [Bot] and 2 guests