Csound Csound-dev Csound-tekno Search About

[Csnd] Wave terrain opcode

Date2020-06-16 22:40
FromdocB <000005d2745f1ec0-dmarc-request@LISTSERV.HEANET.IE>
Subject[Csnd] Wave terrain opcode
hi,

here is an enhancement of the wave terrain opcode

https://github.com/docb/csnd/tree/master/opcodes

changes:

- added curves: limacon with parameter, lemniskate (G), lissajous (4 
variants),  rhodonea (5 variants), cornoid with parameter, trisec (Ceva) 
with parameter
- tables are krate
- added k parameter for rotating the curve around the current x,y

example:

asigL wterr 0.5,  kcps, kx, ky, krx, kry, krot, kcurve, kparam, ktab0, 
ktab1

kx,ky center

krx,kry radius

krot - rotation [0-2PI]

kcurve 
0=ellipse,1=limacon,2=lemniskate,3=lissajous,4=rhodonea,5=cornoid,6=trisec

kparam limacon,cornoid,trisec -> curve parameter (continous 0-4),

              lissajous 0-4: selects  the curve parameters {1,2,M_PI/2}, 
{3,2,0}, {3,2,M_PI/2}, {3,2,M_PI/4},{3,4,M_PI/4}

              rhodonea 0-4: selects the curveparameters   {1,2}, {2,1}, 
{3,1}, {3,2}, {4,1}

ktab0, ktab1 the two tables

Note that the interface may change in order to make the usage easier 
(e.g. with the superformula ...)


in this raw demo i have choosen 2 plain sin waves with a low octave 
intervall (later a chord) and only a small amount of reverbsc

to demonstrate how the different curves add harmonic spektrum.

https://www.youtube.com/watch?v=r8ILSstAlw8

note that the curves behave much more different when other input waves 
come in.

best Christian

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here

Date2020-06-16 23:03
From"Jeanette C."
SubjectRe: [Csnd] Wave terrain opcode
Jun 16 2020, docB has written:
...
> https://www.youtube.com/watch?v=r8ILSstAlw8
...
Wow! This sounds lovely! I've never delved much into waveterrain
synthesis, but your opcode, even in such a raw form sounds fascinating!
It sounds like a good addition to the standard Csound distro.

Best wishes,

Jeanette

-- 
  * Website: http://juliencoder.de - for summer is a state of sound
  * Youtube: https://www.youtube.com/channel/UCMS4rfGrTwz8W7jhC1Jnv7g
  * SoundCloud: https://soundcloud.com/jeanette_c
  * Twitter: https://twitter.com/jeanette_c_s
  * Audiobombs: https://www.audiobombs.com/users/jeanette_c
  * GitHub: https://github.com/jeanette-c

If there's nothing missing in my life
Then why do these tears come at night <3
(Britney Spears)

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here

Date2020-06-17 16:19
Fromjohn
SubjectRe: [Csnd] Wave terrain opcode
Two questions:

1: Are you happy to have your code incorporate into the githu/csound 
repository?

2: Are you willing to reease under LGPL like the bulk of csound.

ANd a concern; your arguments are not compatible with the current terrain 
opcode as far as I can tell.  So it may need to be a new opcode.  I am 
willing to deal with that if the answers to the questions are positive


==John ff

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here

Date2020-06-17 16:48
From"Dr. Richard Boulanger"
SubjectRe: [Csnd] Wave terrain opcode
Christian,

It's a really beautiful and spectrally rich opcode!  I hope you will add it to the next version.  I would love to use it.

Dr. Richard Boulanger
Professor
Electronic Production and Design
Berklee College of Music

> On Jun 17, 2020, at 11:19 AM, john  wrote:
> 
> Two questions:
> 
> 1: Are you happy to have your code incorporate into the githu/csound repository?
> 
> 2: Are you willing to reease under LGPL like the bulk of csound.
> 
> ANd a concern; your arguments are not compatible with the current terrain opcode as far as I can tell.  So it may need to be a new opcode.  I am willing to deal with that if the answers to the questions are positive
> 
> 
> ==John ff
> 
> Csound mailing list
> Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> Send bugs reports to
>       https://github.com/csound/csound/issues
> Discussions of bugs and features can be posted here

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here

Date2020-06-17 23:33
FromdocB <000005d2745f1ec0-dmarc-request@LISTSERV.HEANET.IE>
SubjectRe: [Csnd] Wave terrain opcode
hi john,

> Two questions:
>
> 1: Are you happy to have your code incorporate into the githu/csound 
> repository?
sure. i really profit so much from csound so i don't care to give back.
>
> 2: Are you willing to reease under LGPL like the bulk of csound.

sure, i already have put the stuff in github under LPGL

>
> ANd a concern; your arguments are not compatible with the current 
> terrain opcode as far as I can tell.  So it may need to be a new 
> opcode.  I am willing to deal with that if the answers to the 
> questions are positive

sure. but i would like to discuss about your ideas, common sense how we 
could optimize the new opcode. the main issue is often usability e.g

i would like to add the superformula but it is not as easy as it might 
look.

i have checked with my ffmpeg framework which visualizes also the speed 
changes of the point running through --

which is indeed a topic in waveterrain synthesis. So i noticed the need 
of a separate investigation on that and

that usable parameter settings of such curves is not easy to find e.g 
the problem that parameter changes inside the sin/cos terms

are not continuous  and are instead dependent on their farey order.

bottom line -- here need some time for finding a solution (this also 
targets the lissajous and rhodonea curves).

however, in the current setup it adds value and the later addition of 
other curves it should not not cause incompatibliities.

best, christian

>
>
> ==John ff
>
> Csound mailing list
> Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> Send bugs reports to
>        https://github.com/csound/csound/issues
> Discussions of bugs and features can be posted here

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here