Csound Csound-dev Csound-tekno Search About

[Csnd] Wave Sequencing - waveseq UDO

Date2012-11-02 15:47
FromSteven Yi
Subject[Csnd] Wave Sequencing - waveseq UDO
Hi All,

I've just completed and initial version of a User-Defined Opcode for doing wave sequencing (i.e. Korg Wavestation, other Dave Smith synthesizers). I posted a blog entry on my site that has some audio examples and a zip to download:


Regarding the code, it certainly can be cleaned up further and optimized in a couple places. However, I got to a point where I finally got it working for all wave types I wanted to support (single-cycle, single-shot, looped) and felt it complete enough to release this version at this time. 

BTW: This is probably the most I've spent with wavetables in a long time.  I do find this type of synthesis curious, and perhaps a version of this UDO might be useful for others, especially if you're learning to use f-tables or teaching it. Whoever is using this UDO will certainly have to create a fair number of f-tables. :)

Thanks and enjoy!
steven

Date2012-11-02 16:48
FromOeyvind Brandtsegg
SubjectRe: [Csnd] Wave Sequencing - waveseq UDO
Ah, nice.
I used a wavestation A/D for many many years before finally ditching it for a Csound/laptop-only live setup. Great to have this kind of synthesis in Csound now.
Thanks Steven.
Oeyvind

2012/11/2 Steven Yi <stevenyi@gmail.com>
Hi All,

I've just completed and initial version of a User-Defined Opcode for doing wave sequencing (i.e. Korg Wavestation, other Dave Smith synthesizers). I posted a blog entry on my site that has some audio examples and a zip to download:


Regarding the code, it certainly can be cleaned up further and optimized in a couple places. However, I got to a point where I finally got it working for all wave types I wanted to support (single-cycle, single-shot, looped) and felt it complete enough to release this version at this time. 

BTW: This is probably the most I've spent with wavetables in a long time.  I do find this type of synthesis curious, and perhaps a version of this UDO might be useful for others, especially if you're learning to use f-tables or teaching it. Whoever is using this UDO will certainly have to create a fair number of f-tables. :)

Thanks and enjoy!
steven



--

Oeyvind Brandtsegg
Professor of Music Technology
NTNU
7491 Trondheim
Norway
Cell: +47 92 203 205

http://flyndresang.no/
http://www.partikkelaudio.com/
http://soundcloud.com/brandtsegg
http://soundcloud.com/t-emp

Date2012-11-02 21:14
FromJim Aikin
Subject[Csnd] Re: Wave Sequencing - waveseq UDO
That's very interesting! I've always been a big fan of the Wavestation ...
and of the late, lamented Steinberg Xphraze plug-in, which was a Wavestation
on steroids. (Xphraze fell victim to corporate rivalries when Peter Gorges
was hired by Avid.)

>From reading your page, I get the impression you've implemented a wave
sequence as a static object; values for the waves, their pitch (not yet
implemented), and amplitude are in a table rather than being addressable in
real time. Unless I'm wrong about that, that will limit the musical
versatility of the UDO.

Xphraze had a couple of other parameters for each wave in the sequence,
including, if memory serves, a filter cutoff offset. One might also want to
change the start or end point of the sequence in real time.

This is a great, and under-utilized, synthesis technique. I hope you'll have
time to pursue the idea further.

--JA



--
View this message in context: http://csound.1045644.n5.nabble.com/Wave-Sequencing-waveseq-UDO-tp5717601p5717624.html
Sent from the Csound - General mailing list archive at Nabble.com.

Date2012-11-04 15:54
FromSteven Yi
SubjectRe: [Csnd] Re: Wave Sequencing - waveseq UDO
Hi Oeyvind and Jim,

Thanks for the replies!  

To answer Jim, yes, things like the table pitch and amplitude adjustments are static. I modelled it fairly closely to what is available in the Wavestation. I don't consider it too much of a limitation though; most of the the wave sequencing instruments I've looked so far have the waves be static but the path through the sequence configurable. At the moment, that path through is limited to the loop points and loop direction.  I think with the Wavestation and others, one of the big parts to playing them was using the mod wheel, which could map to the changing the start/range for the loop points.  So the tables might be put in a sequence going from brighter to darker with a loop near the end of those tables, then with a mod wheel used to bring it back up to the brighter tables (as an example).  

I have not looked at Xphraze until you mentioned it.  I didn't have too much luck in finding a manual, but did see Electronic Musician review from 2004.  It seems it adds a little bit more than just simple wavetable playback.  I have also meant to look a little more into how wave sequencing is employed in Korg's Karma synthesis; I imagine similar additions to what each wave can have for parameters.

For myself, I was attracted to the instrument but found it doesn't quite have a place in the current piece I'm working on.  However, I do think it will work very well for another piece I have started to imagine.  I'll probably take a little break from the waveseq instrument design, as I can take care of some other needs for the current piece.  That will give me a little time to figure out what new widgets I'll need in BlueSynthBuilder to make a more robust waveseq instrument, as well as consider other wave sequencing instrument to study.

Otherwise, if you or others would like to work on this instrument with me, I could put my .blue project and CSD's on bitbucket or github or something and we can collaborate on it. I'm sure it'd move along more quickly with others' inputs. :)

Thanks!
steven


On Fri, Nov 2, 2012 at 9:14 PM, Jim Aikin <midiguru23@sbcglobal.net> wrote:
That's very interesting! I've always been a big fan of the Wavestation ...
and of the late, lamented Steinberg Xphraze plug-in, which was a Wavestation
on steroids. (Xphraze fell victim to corporate rivalries when Peter Gorges
was hired by Avid.)

>From reading your page, I get the impression you've implemented a wave
sequence as a static object; values for the waves, their pitch (not yet
implemented), and amplitude are in a table rather than being addressable in
real time. Unless I'm wrong about that, that will limit the musical
versatility of the UDO.

Xphraze had a couple of other parameters for each wave in the sequence,
including, if memory serves, a filter cutoff offset. One might also want to
change the start or end point of the sequence in real time.

This is a great, and under-utilized, synthesis technique. I hope you'll have
time to pursue the idea further.

--JA



--
View this message in context: http://csound.1045644.n5.nabble.com/Wave-Sequencing-waveseq-UDO-tp5717601p5717624.html
Sent from the Csound - General mailing list archive at Nabble.com.


Send bugs reports to the Sourceforge bug tracker
            https://sourceforge.net/tracker/?group_id=81968&atid=564599
Discussions of bugs and features can be posted here
To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"



Date2012-11-04 17:36
FromJim Aikin
Subject[Csnd] Re: Wave Sequencing - waveseq UDO
> I have not looked at Xphraze until you mentioned it.  I didn't have too
much luck in finding a
> manual, but did see Electronic Musician review from 2004.

I may have an old PC lying around that still has Xphraz installed. I'll look
into that -- maybe I can extract some useful ideas.

If you put the code up on bitbucket, please let me know via email. God knows
I'm a terrible duffer as a programmer, but I can tinker with it a bit.

--JA



--
View this message in context: http://csound.1045644.n5.nabble.com/Wave-Sequencing-waveseq-UDO-tp5717601p5717669.html
Sent from the Csound - General mailing list archive at Nabble.com.