Csound Csound-dev Csound-tekno Search About

[Csnd] OT: partikkel texture

Date2013-06-24 12:21
Frompeiman khosravi
Subject[Csnd] OT: partikkel texture
Here's the seed of an idea. This is stereo of course, but I imagine a 6 channel set-up. Long live Partikkel!




<CsoundSynthesizer>
<CsOptions>
-odac -d
;-o test.aif -d -A -3
</CsOptions>
; ==============================================
<CsInstruments>

sr = 96000
ksmps = 10
nchnls = 2
0dbfs = 1

giSine ftgen 0, 0, 65537, 10, 1
giCosine ftgen 0, 0, 8193, 9, 1, 1, 90
gichanMask ftgen 0, 0, 16, -2, 0, 3, 0, 1, 1, 0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 0 
giwidow ftgen 0, 0, 8192, -20, 6
gimix ftgen 0, 0, 8, -2, 0, 0, 0, 0, 0, 0, 1 

giSigmoRise ftgen    1, 0, 8193, 19, 0.5, 1, 270, 1            ; rising sigmoid 
giSigmoFall ftgen    11, 0, 8193, 19, 0.5, 1, 90, 1            ; falling sigmoid 

giLinRise ftgen    2, 0, 8193, -7, 0, 8192, 1
giLinFall ftgen    12, 0, 8193, -7, 1, 8192, 0

giexpRise ftgen    3, 0, 8193, -5, .0001, 8192, 1
giexpFall ftgen    13, 0, 8193, -5, 1, 8192, .0001

instr 1
kgrainfreq = p5 ; 4 grains per second
kdistribution = 0 ; periodic grain distribution
idisttab = -1 ; (default) flat distribution used for grain distribution
async = 0 ; no sync input
kenv2amt = p7 ; no secondary enveloping
ienv2tab = giwidow ; default secondary envelope (flat)
ienv_attack = giSigmoRise ; default attack envelope (flat)
ienv_decay = giexpFall ; default decay envelope (flat)
ksustain_amount = p8 ; time (in fraction of grain dur) at sustain level for each grain
ka_d_ratio = p9 ; balance between attack and decay time
kduration = (.5+oscil(.5, .1, -1))* p11 + 70 ; set grain duration relative to grain rate
kamp = .5 ; amp
igainmasks = -1 ; (default) no gain masking
kwavfreq = 240 ; fundamental frequency of source waveform
ksweepshape = 0 ; shape of frequency sweep (0=no sweep)
iwavfreqstarttab = -1 ; default frequency sweep start (value in table = 1, which give no frequency modification)
iwavfreqendtab = -1 ; default frequency sweep end (value in table = 1, which give no frequency modification)
awavfm = 0 ; no FM input
ifmamptab = -1 ; default FM scaling (=1)
kfmenv = -1 ; default FM envelope (flat)
icosine = giCosine ; cosine ftable
kTrainCps = p4 ; set trainlet cps equal to grain rate for single-cycle trainlet in each grain
knumpartials = 50 ; number of partials in trainlet
kchroma = (.5+oscil(.5, 4.21, -1))*p12+p6 ; balance of partials in trainlet
ichannelmasks = gichanMask ; (default) no channel masking, all grains to output 1
krandommask = p10 ; no random grain masking
kwaveform1 = giSine ; source waveforms
kwaveform2 = giSine ;
kwaveform3 = giSine ;
kwaveform4 = giSine ;
iwaveamptab = gimix ; (default) equal mix of all 4 sourcve waveforms and no amp for trainlets
asamplepos1 = 0 ; phase offset for reading source waveform
asamplepos2 = 0 ;
asamplepos3 = 0 ;
asamplepos4 = 0 ;
kwavekey1 = 1 ; original key for source waveform
kwavekey2 = 1 ;
kwavekey3 = 1 ;
kwavekey4 = 1 ;
imax_grains = 100 ; max grains per k period

a1, a2 partikkel kgrainfreq, \
              kdistribution, idisttab, async, kenv2amt, ienv2tab, ienv_attack, \
              ienv_decay, ksustain_amount, ka_d_ratio, kduration, kamp, igainmasks, \
              kwavfreq, ksweepshape, iwavfreqstarttab, iwavfreqendtab, awavfm, \
              ifmamptab, kfmenv, icosine, kTrainCps, knumpartials, kchroma, \
              ichannelmasks, krandommask, kwaveform1, kwaveform2, kwaveform3, \
              kwaveform4, iwaveamptab, asamplepos1, asamplepos2, asamplepos3, \
              asamplepos4, kwavekey1, kwavekey2, kwavekey3, kwavekey4, imax_grains

outs a1, a2

endin

</CsInstruments>
; ==============================================
<CsScore>

i1 0 36000 65  10    .0  0.7 .3 0.001 0 500 .3
i1 0 36000 280 10    .01 .7 0 0.001 .1 10 1
i1 5 36000 280 10    .01 .7 0 0.001 .1 100 .5
i1 5 36000 500 10.01 .01 .7 0 0.002 .2 100 .5
i1 10 36000 550 10.02 .01 .5 0 0.001 .3 100 .8
i1 15 36000 650 10 .01 0 .1 0.1 .91 .6
i1 30 36000 1000 10 .01 0.3 .0 0.6 .98  300 .6
i1 35 36000 1300 10 .01 0.3 .0 0.6 .995 200 .6
i1 36 36000 1100 10 .3 0.5 .0 0.2 .99 200 .6

i1 50 36000 1400 10 2 0.5 .3 0.3 .995 10000 .6





</CsScore>
</CsoundSynthesizer>







www.peimankhosravi.co.uk || Subscribe to RSS Feed

To receive emails about upcoming concerts visit this page & enter your email address in the 'follow' section.


Date2013-06-24 12:23
Frompeiman khosravi
Subject[Csnd] Re: OT: partikkel texture
Csound6 only!






www.peimankhosravi.co.uk || Subscribe to RSS Feed

To receive emails about upcoming concerts visit this page & enter your email address in the 'follow' section.



On 24 June 2013 12:21, peiman khosravi <peimankhosravi@gmail.com> wrote:
Here's the seed of an idea. This is stereo of course, but I imagine a 6 channel set-up. Long live Partikkel!




<CsoundSynthesizer>
<CsOptions>
-odac -d
;-o test.aif -d -A -3
</CsOptions>
; ==============================================
<CsInstruments>

sr = 96000
ksmps = 10
nchnls = 2
0dbfs = 1

giSine ftgen 0, 0, 65537, 10, 1
giCosine ftgen 0, 0, 8193, 9, 1, 1, 90
gichanMask ftgen 0, 0, 16, -2, 0, 3, 0, 1, 1, 0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 0 
giwidow ftgen 0, 0, 8192, -20, 6
gimix ftgen 0, 0, 8, -2, 0, 0, 0, 0, 0, 0, 1 

giSigmoRise ftgen    1, 0, 8193, 19, 0.5, 1, 270, 1            ; rising sigmoid 
giSigmoFall ftgen    11, 0, 8193, 19, 0.5, 1, 90, 1            ; falling sigmoid 

giLinRise ftgen    2, 0, 8193, -7, 0, 8192, 1
giLinFall ftgen    12, 0, 8193, -7, 1, 8192, 0

giexpRise ftgen    3, 0, 8193, -5, .0001, 8192, 1
giexpFall ftgen    13, 0, 8193, -5, 1, 8192, .0001

instr 1
kgrainfreq = p5 ; 4 grains per second
kdistribution = 0 ; periodic grain distribution
idisttab = -1 ; (default) flat distribution used for grain distribution
async = 0 ; no sync input
kenv2amt = p7 ; no secondary enveloping
ienv2tab = giwidow ; default secondary envelope (flat)
ienv_attack = giSigmoRise ; default attack envelope (flat)
ienv_decay = giexpFall ; default decay envelope (flat)
ksustain_amount = p8 ; time (in fraction of grain dur) at sustain level for each grain
ka_d_ratio = p9 ; balance between attack and decay time
kduration = (.5+oscil(.5, .1, -1))* p11 + 70 ; set grain duration relative to grain rate
kamp = .5 ; amp
igainmasks = -1 ; (default) no gain masking
kwavfreq = 240 ; fundamental frequency of source waveform
ksweepshape = 0 ; shape of frequency sweep (0=no sweep)
iwavfreqstarttab = -1 ; default frequency sweep start (value in table = 1, which give no frequency modification)
iwavfreqendtab = -1 ; default frequency sweep end (value in table = 1, which give no frequency modification)
awavfm = 0 ; no FM input
ifmamptab = -1 ; default FM scaling (=1)
kfmenv = -1 ; default FM envelope (flat)
icosine = giCosine ; cosine ftable
kTrainCps = p4 ; set trainlet cps equal to grain rate for single-cycle trainlet in each grain
knumpartials = 50 ; number of partials in trainlet
kchroma = (.5+oscil(.5, 4.21, -1))*p12+p6 ; balance of partials in trainlet
ichannelmasks = gichanMask ; (default) no channel masking, all grains to output 1
krandommask = p10 ; no random grain masking
kwaveform1 = giSine ; source waveforms
kwaveform2 = giSine ;
kwaveform3 = giSine ;
kwaveform4 = giSine ;
iwaveamptab = gimix ; (default) equal mix of all 4 sourcve waveforms and no amp for trainlets
asamplepos1 = 0 ; phase offset for reading source waveform
asamplepos2 = 0 ;
asamplepos3 = 0 ;
asamplepos4 = 0 ;
kwavekey1 = 1 ; original key for source waveform
kwavekey2 = 1 ;
kwavekey3 = 1 ;
kwavekey4 = 1 ;
imax_grains = 100 ; max grains per k period

a1, a2 partikkel kgrainfreq, \
              kdistribution, idisttab, async, kenv2amt, ienv2tab, ienv_attack, \
              ienv_decay, ksustain_amount, ka_d_ratio, kduration, kamp, igainmasks, \
              kwavfreq, ksweepshape, iwavfreqstarttab, iwavfreqendtab, awavfm, \
              ifmamptab, kfmenv, icosine, kTrainCps, knumpartials, kchroma, \
              ichannelmasks, krandommask, kwaveform1, kwaveform2, kwaveform3, \
              kwaveform4, iwaveamptab, asamplepos1, asamplepos2, asamplepos3, \
              asamplepos4, kwavekey1, kwavekey2, kwavekey3, kwavekey4, imax_grains

outs a1, a2

endin

</CsInstruments>
; ==============================================
<CsScore>

i1 0 36000 65  10    .0  0.7 .3 0.001 0 500 .3
i1 0 36000 280 10    .01 .7 0 0.001 .1 10 1
i1 5 36000 280 10    .01 .7 0 0.001 .1 100 .5
i1 5 36000 500 10.01 .01 .7 0 0.002 .2 100 .5
i1 10 36000 550 10.02 .01 .5 0 0.001 .3 100 .8
i1 15 36000 650 10 .01 0 .1 0.1 .91 .6
i1 30 36000 1000 10 .01 0.3 .0 0.6 .98  300 .6
i1 35 36000 1300 10 .01 0.3 .0 0.6 .995 200 .6
i1 36 36000 1100 10 .3 0.5 .0 0.2 .99 200 .6

i1 50 36000 1400 10 2 0.5 .3 0.3 .995 10000 .6





</CsScore>
</CsoundSynthesizer>







www.peimankhosravi.co.uk || Subscribe to RSS Feed

To receive emails about upcoming concerts visit this page & enter your email address in the 'follow' section.



Date2013-06-24 18:23
FromTarmo Johannes
SubjectRe: [Csnd] Re: OT: partikkel texture

very nice example,

thanks for sharing!

tarmo

 

On Monday 24 June 2013 12:23:56 peiman khosravi wrote:

Csound6 only!







www.peimankhosravi.co.uk || Subscribe to RSS Feed

To receive emails about upcoming concerts visit this page & enter your email address in the 'follow' section.



On 24 June 2013 12:21, peiman khosravi <peimankhosravi@gmail.com> wrote:

Here's the seed of an idea. This is stereo of course, but I imagine a 6 channel set-up. Long live Partikkel!





<CsoundSynthesizer>

<CsOptions>

-odac -d

;-o test.aif -d -A -3

</CsOptions>

; ==============================================

<CsInstruments>


sr = 96000

ksmps = 10

nchnls = 2

0dbfs = 1


giSine ftgen 0, 0, 65537, 10, 1

giCosine ftgen 0, 0, 8193, 9, 1, 1, 90

gichanMask ftgen 0, 0, 16, -2, 0, 3, 0, 1, 1, 0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 0 

giwidow ftgen 0, 0, 8192, -20, 6

gimix ftgen 0, 0, 8, -2, 0, 0, 0, 0, 0, 0, 1 


giSigmoRise ftgen    1, 0, 8193, 19, 0.5, 1, 270, 1            ; rising sigmoid 

giSigmoFall ftgen    11, 0, 8193, 19, 0.5, 1, 90, 1            ; falling sigmoid 


giLinRise ftgen    2, 0, 8193, -7, 0, 8192, 1

giLinFall ftgen    12, 0, 8193, -7, 1, 8192, 0


giexpRise ftgen    3, 0, 8193, -5, .0001, 8192, 1

giexpFall ftgen    13, 0, 8193, -5, 1, 8192, .0001


instr 1

kgrainfreq = p5 ; 4 grains per second

kdistribution = 0 ; periodic grain distribution

idisttab = -1 ; (default) flat distribution used for grain distribution

async = 0 ; no sync input

kenv2amt = p7 ; no secondary enveloping

ienv2tab = giwidow ; default secondary envelope (flat)

ienv_attack = giSigmoRise ; default attack envelope (flat)

ienv_decay = giexpFall ; default decay envelope (flat)

ksustain_amount = p8 ; time (in fraction of grain dur) at sustain level for each grain

ka_d_ratio = p9 ; balance between attack and decay time

kduration = (.5+oscil(.5, .1, -1))* p11 + 70 ; set grain duration relative to grain rate

kamp = .5 ; amp

igainmasks = -1 ; (default) no gain masking

kwavfreq = 240 ; fundamental frequency of source waveform

ksweepshape = 0 ; shape of frequency sweep (0=no sweep)

iwavfreqstarttab = -1 ; default frequency sweep start (value in table = 1, which give no frequency modification)

iwavfreqendtab = -1 ; default frequency sweep end (value in table = 1, which give no frequency modification)

awavfm = 0 ; no FM input

ifmamptab = -1 ; default FM scaling (=1)

kfmenv = -1 ; default FM envelope (flat)

icosine = giCosine ; cosine ftable

kTrainCps = p4 ; set trainlet cps equal to grain rate for single-cycle trainlet in each grain

knumpartials = 50 ; number of partials in trainlet

kchroma = (.5+oscil(.5, 4.21, -1))*p12+p6 ; balance of partials in trainlet

ichannelmasks = gichanMask ; (default) no channel masking, all grains to output 1

krandommask = p10 ; no random grain masking

kwaveform1 = giSine ; source waveforms

kwaveform2 = giSine ;

kwaveform3 = giSine ;

kwaveform4 = giSine ;

iwaveamptab = gimix ; (default) equal mix of all 4 sourcve waveforms and no amp for trainlets

asamplepos1 = 0 ; phase offset for reading source waveform

asamplepos2 = 0 ;

asamplepos3 = 0 ;

asamplepos4 = 0 ;

kwavekey1 = 1 ; original key for source waveform

kwavekey2 = 1 ;

kwavekey3 = 1 ;

kwavekey4 = 1 ;

imax_grains = 100 ; max grains per k period


a1, a2 partikkel kgrainfreq, \

              kdistribution, idisttab, async, kenv2amt, ienv2tab, ienv_attack, \

              ienv_decay, ksustain_amount, ka_d_ratio, kduration, kamp, igainmasks, \

              kwavfreq, ksweepshape, iwavfreqstarttab, iwavfreqendtab, awavfm, \

              ifmamptab, kfmenv, icosine, kTrainCps, knumpartials, kchroma, \

              ichannelmasks, krandommask, kwaveform1, kwaveform2, kwaveform3, \

              kwaveform4, iwaveamptab, asamplepos1, asamplepos2, asamplepos3, \

              asamplepos4, kwavekey1, kwavekey2, kwavekey3, kwavekey4, imax_grains


outs a1, a2


endin


</CsInstruments>

; ==============================================

<CsScore>


i1 0 36000 65  10    .0  0.7 .3 0.001 0 500 .3

i1 0 36000 280 10    .01 .7 0 0.001 .1 10 1

i1 5 36000 280 10    .01 .7 0 0.001 .1 100 .5

i1 5 36000 500 10.01 .01 .7 0 0.002 .2 100 .5

i1 10 36000 550 10.02 .01 .5 0 0.001 .3 100 .8

i1 15 36000 650 10 .01 0 .1 0.1 .91 .6

i1 30 36000 1000 10 .01 0.3 .0 0.6 .98  300 .6

i1 35 36000 1300 10 .01 0.3 .0 0.6 .995 200 .6

i1 36 36000 1100 10 .3 0.5 .0 0.2 .99 200 .6


i1 50 36000 1400 10 2 0.5 .3 0.3 .995 10000 .6






</CsScore>

</CsoundSynthesizer>








www.peimankhosravi.co.uk || Subscribe to RSS Feed

To receive emails about upcoming concerts visit this page & enter your email address in the 'follow' section.





Date2013-06-24 18:32
FromMichael Gogins
SubjectRe: [Csnd] Re: OT: partikkel texture
This seems to run just fine on Csound6 for Android on my phone.

I have no idea at all what is going on here... perhaps I'll be able to get an idea if I study it.

Can I use this as an example for the app?

Would it make sense to put things on sliders or buttons? Which things?

Regards,
Mike


===========================
Michael Gogins
Irreducible Productions
http://michaelgogins.tumblr.com
Michael dot Gogins at gmail dot com


On Mon, Jun 24, 2013 at 1:23 PM, Tarmo Johannes <tarmo.johannes@otsakool.edu.ee> wrote:

very nice example,

thanks for sharing!

tarmo

 

On Monday 24 June 2013 12:23:56 peiman khosravi wrote:

Csound6 only!







www.peimankhosravi.co.uk || Subscribe to RSS Feed

To receive emails about upcoming concerts visit this page & enter your email address in the 'follow' section.



On 24 June 2013 12:21, peiman khosravi <peimankhosravi@gmail.com> wrote:

Here's the seed of an idea. This is stereo of course, but I imagine a 6 channel set-up. Long live Partikkel!





<CsoundSynthesizer>

<CsOptions>

-odac -d

;-o test.aif -d -A -3

</CsOptions>

; ==============================================

<CsInstruments>


sr = 96000

ksmps = 10

nchnls = 2

0dbfs = 1


giSine ftgen 0, 0, 65537, 10, 1

giCosine ftgen 0, 0, 8193, 9, 1, 1, 90

gichanMask ftgen 0, 0, 16, -2, 0, 3, 0, 1, 1, 0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 0 

giwidow ftgen 0, 0, 8192, -20, 6

gimix ftgen 0, 0, 8, -2, 0, 0, 0, 0, 0, 0, 1 


giSigmoRise ftgen    1, 0, 8193, 19, 0.5, 1, 270, 1            ; rising sigmoid 

giSigmoFall ftgen    11, 0, 8193, 19, 0.5, 1, 90, 1            ; falling sigmoid 


giLinRise ftgen    2, 0, 8193, -7, 0, 8192, 1

giLinFall ftgen    12, 0, 8193, -7, 1, 8192, 0


giexpRise ftgen    3, 0, 8193, -5, .0001, 8192, 1

giexpFall ftgen    13, 0, 8193, -5, 1, 8192, .0001


instr 1

kgrainfreq = p5 ; 4 grains per second

kdistribution = 0 ; periodic grain distribution

idisttab = -1 ; (default) flat distribution used for grain distribution

async = 0 ; no sync input

kenv2amt = p7 ; no secondary enveloping

ienv2tab = giwidow ; default secondary envelope (flat)

ienv_attack = giSigmoRise ; default attack envelope (flat)

ienv_decay = giexpFall ; default decay envelope (flat)

ksustain_amount = p8 ; time (in fraction of grain dur) at sustain level for each grain

ka_d_ratio = p9 ; balance between attack and decay time

kduration = (.5+oscil(.5, .1, -1))* p11 + 70 ; set grain duration relative to grain rate

kamp = .5 ; amp

igainmasks = -1 ; (default) no gain masking

kwavfreq = 240 ; fundamental frequency of source waveform

ksweepshape = 0 ; shape of frequency sweep (0=no sweep)

iwavfreqstarttab = -1 ; default frequency sweep start (value in table = 1, which give no frequency modification)

iwavfreqendtab = -1 ; default frequency sweep end (value in table = 1, which give no frequency modification)

awavfm = 0 ; no FM input

ifmamptab = -1 ; default FM scaling (=1)

kfmenv = -1 ; default FM envelope (flat)

icosine = giCosine ; cosine ftable

kTrainCps = p4 ; set trainlet cps equal to grain rate for single-cycle trainlet in each grain

knumpartials = 50 ; number of partials in trainlet

kchroma = (.5+oscil(.5, 4.21, -1))*p12+p6 ; balance of partials in trainlet

ichannelmasks = gichanMask ; (default) no channel masking, all grains to output 1

krandommask = p10 ; no random grain masking

kwaveform1 = giSine ; source waveforms

kwaveform2 = giSine ;

kwaveform3 = giSine ;

kwaveform4 = giSine ;

iwaveamptab = gimix ; (default) equal mix of all 4 sourcve waveforms and no amp for trainlets

asamplepos1 = 0 ; phase offset for reading source waveform

asamplepos2 = 0 ;

asamplepos3 = 0 ;

asamplepos4 = 0 ;

kwavekey1 = 1 ; original key for source waveform

kwavekey2 = 1 ;

kwavekey3 = 1 ;

kwavekey4 = 1 ;

imax_grains = 100 ; max grains per k period


a1, a2 partikkel kgrainfreq, \

              kdistribution, idisttab, async, kenv2amt, ienv2tab, ienv_attack, \

              ienv_decay, ksustain_amount, ka_d_ratio, kduration, kamp, igainmasks, \

              kwavfreq, ksweepshape, iwavfreqstarttab, iwavfreqendtab, awavfm, \

              ifmamptab, kfmenv, icosine, kTrainCps, knumpartials, kchroma, \

              ichannelmasks, krandommask, kwaveform1, kwaveform2, kwaveform3, \

              kwaveform4, iwaveamptab, asamplepos1, asamplepos2, asamplepos3, \

              asamplepos4, kwavekey1, kwavekey2, kwavekey3, kwavekey4, imax_grains


outs a1, a2


endin


</CsInstruments>

; ==============================================

<CsScore>


i1 0 36000 65  10    .0  0.7 .3 0.001 0 500 .3

i1 0 36000 280 10    .01 .7 0 0.001 .1 10 1

i1 5 36000 280 10    .01 .7 0 0.001 .1 100 .5

i1 5 36000 500 10.01 .01 .7 0 0.002 .2 100 .5

i1 10 36000 550 10.02 .01 .5 0 0.001 .3 100 .8

i1 15 36000 650 10 .01 0 .1 0.1 .91 .6

i1 30 36000 1000 10 .01 0.3 .0 0.6 .98  300 .6

i1 35 36000 1300 10 .01 0.3 .0 0.6 .995 200 .6

i1 36 36000 1100 10 .3 0.5 .0 0.2 .99 200 .6


i1 50 36000 1400 10 2 0.5 .3 0.3 .995 10000 .6






</CsScore>

</CsoundSynthesizer>








www.peimankhosravi.co.uk || Subscribe to RSS Feed

To receive emails about upcoming concerts visit this page & enter your email address in the 'follow' section.






Date2013-06-24 23:42
Frompeiman khosravi
SubjectRe: [Csnd] Re: OT: partikkel texture
Hi Mike, 

Yes of course, you can do anything you want with it! It would make a lot of sense to add some sliders to it. In fact I was going to add some so I'll post another version here later tomorrow or the day after. 

Thanks!
P







www.peimankhosravi.co.uk || Subscribe to RSS Feed

To receive emails about upcoming concerts visit this page & enter your email address in the 'follow' section.



On 24 June 2013 18:32, Michael Gogins <michael.gogins@gmail.com> wrote:
This seems to run just fine on Csound6 for Android on my phone.

I have no idea at all what is going on here... perhaps I'll be able to get an idea if I study it.

Can I use this as an example for the app?

Would it make sense to put things on sliders or buttons? Which things?

Regards,
Mike


===========================
Michael Gogins
Irreducible Productions
http://michaelgogins.tumblr.com
Michael dot Gogins at gmail dot com


On Mon, Jun 24, 2013 at 1:23 PM, Tarmo Johannes <tarmo.johannes@otsakool.edu.ee> wrote:

very nice example,

thanks for sharing!

tarmo

 

On Monday 24 June 2013 12:23:56 peiman khosravi wrote:

Csound6 only!







www.peimankhosravi.co.uk || Subscribe to RSS Feed

To receive emails about upcoming concerts visit this page & enter your email address in the 'follow' section.



On 24 June 2013 12:21, peiman khosravi <peimankhosravi@gmail.com> wrote:

Here's the seed of an idea. This is stereo of course, but I imagine a 6 channel set-up. Long live Partikkel!





<CsoundSynthesizer>

<CsOptions>

-odac -d

;-o test.aif -d -A -3

</CsOptions>

; ==============================================

<CsInstruments>


sr = 96000

ksmps = 10

nchnls = 2

0dbfs = 1


giSine ftgen 0, 0, 65537, 10, 1

giCosine ftgen 0, 0, 8193, 9, 1, 1, 90

gichanMask ftgen 0, 0, 16, -2, 0, 3, 0, 1, 1, 0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 0 

giwidow ftgen 0, 0, 8192, -20, 6

gimix ftgen 0, 0, 8, -2, 0, 0, 0, 0, 0, 0, 1 


giSigmoRise ftgen    1, 0, 8193, 19, 0.5, 1, 270, 1            ; rising sigmoid 

giSigmoFall ftgen    11, 0, 8193, 19, 0.5, 1, 90, 1            ; falling sigmoid 


giLinRise ftgen    2, 0, 8193, -7, 0, 8192, 1

giLinFall ftgen    12, 0, 8193, -7, 1, 8192, 0


giexpRise ftgen    3, 0, 8193, -5, .0001, 8192, 1

giexpFall ftgen    13, 0, 8193, -5, 1, 8192, .0001


instr 1

kgrainfreq = p5 ; 4 grains per second

kdistribution = 0 ; periodic grain distribution

idisttab = -1 ; (default) flat distribution used for grain distribution

async = 0 ; no sync input

kenv2amt = p7 ; no secondary enveloping

ienv2tab = giwidow ; default secondary envelope (flat)

ienv_attack = giSigmoRise ; default attack envelope (flat)

ienv_decay = giexpFall ; default decay envelope (flat)

ksustain_amount = p8 ; time (in fraction of grain dur) at sustain level for each grain

ka_d_ratio = p9 ; balance between attack and decay time

kduration = (.5+oscil(.5, .1, -1))* p11 + 70 ; set grain duration relative to grain rate

kamp = .5 ; amp

igainmasks = -1 ; (default) no gain masking

kwavfreq = 240 ; fundamental frequency of source waveform

ksweepshape = 0 ; shape of frequency sweep (0=no sweep)

iwavfreqstarttab = -1 ; default frequency sweep start (value in table = 1, which give no frequency modification)

iwavfreqendtab = -1 ; default frequency sweep end (value in table = 1, which give no frequency modification)

awavfm = 0 ; no FM input

ifmamptab = -1 ; default FM scaling (=1)

kfmenv = -1 ; default FM envelope (flat)

icosine = giCosine ; cosine ftable

kTrainCps = p4 ; set trainlet cps equal to grain rate for single-cycle trainlet in each grain

knumpartials = 50 ; number of partials in trainlet

kchroma = (.5+oscil(.5, 4.21, -1))*p12+p6 ; balance of partials in trainlet

ichannelmasks = gichanMask ; (default) no channel masking, all grains to output 1

krandommask = p10 ; no random grain masking

kwaveform1 = giSine ; source waveforms

kwaveform2 = giSine ;

kwaveform3 = giSine ;

kwaveform4 = giSine ;

iwaveamptab = gimix ; (default) equal mix of all 4 sourcve waveforms and no amp for trainlets

asamplepos1 = 0 ; phase offset for reading source waveform

asamplepos2 = 0 ;

asamplepos3 = 0 ;

asamplepos4 = 0 ;

kwavekey1 = 1 ; original key for source waveform

kwavekey2 = 1 ;

kwavekey3 = 1 ;

kwavekey4 = 1 ;

imax_grains = 100 ; max grains per k period


a1, a2 partikkel kgrainfreq, \

              kdistribution, idisttab, async, kenv2amt, ienv2tab, ienv_attack, \

              ienv_decay, ksustain_amount, ka_d_ratio, kduration, kamp, igainmasks, \

              kwavfreq, ksweepshape, iwavfreqstarttab, iwavfreqendtab, awavfm, \

              ifmamptab, kfmenv, icosine, kTrainCps, knumpartials, kchroma, \

              ichannelmasks, krandommask, kwaveform1, kwaveform2, kwaveform3, \

              kwaveform4, iwaveamptab, asamplepos1, asamplepos2, asamplepos3, \

              asamplepos4, kwavekey1, kwavekey2, kwavekey3, kwavekey4, imax_grains


outs a1, a2


endin


</CsInstruments>

; ==============================================

<CsScore>


i1 0 36000 65  10    .0  0.7 .3 0.001 0 500 .3

i1 0 36000 280 10    .01 .7 0 0.001 .1 10 1

i1 5 36000 280 10    .01 .7 0 0.001 .1 100 .5

i1 5 36000 500 10.01 .01 .7 0 0.002 .2 100 .5

i1 10 36000 550 10.02 .01 .5 0 0.001 .3 100 .8

i1 15 36000 650 10 .01 0 .1 0.1 .91 .6

i1 30 36000 1000 10 .01 0.3 .0 0.6 .98  300 .6

i1 35 36000 1300 10 .01 0.3 .0 0.6 .995 200 .6

i1 36 36000 1100 10 .3 0.5 .0 0.2 .99 200 .6


i1 50 36000 1400 10 2 0.5 .3 0.3 .995 10000 .6






</CsScore>

</CsoundSynthesizer>








www.peimankhosravi.co.uk || Subscribe to RSS Feed

To receive emails about upcoming concerts visit this page & enter your email address in the 'follow' section.







Date2013-06-25 00:10
Frompeiman khosravi
SubjectRe: [Csnd] Re: OT: partikkel texture
BTW here's what's going on. The pulses are created by a low grain rate. Each grain is either in the right or the left channel, read in a loop from the table 'gichanMask' (0=left, 1=right). I'm only using trainlets here, with the chroma (brightness) and grain duration modulated with LF sine oscillators. Each note generates a different layer with a different pitch and envelop shape.
 
Best,
Peiman      

 






www.peimankhosravi.co.uk || Subscribe to RSS Feed

To receive emails about upcoming concerts visit this page & enter your email address in the 'follow' section.



On 24 June 2013 23:42, peiman khosravi <peimankhosravi@gmail.com> wrote:
Hi Mike, 

Yes of course, you can do anything you want with it! It would make a lot of sense to add some sliders to it. In fact I was going to add some so I'll post another version here later tomorrow or the day after. 

Thanks!
P







www.peimankhosravi.co.uk || Subscribe to RSS Feed

To receive emails about upcoming concerts visit this page & enter your email address in the 'follow' section.



On 24 June 2013 18:32, Michael Gogins <michael.gogins@gmail.com> wrote:
This seems to run just fine on Csound6 for Android on my phone.

I have no idea at all what is going on here... perhaps I'll be able to get an idea if I study it.

Can I use this as an example for the app?

Would it make sense to put things on sliders or buttons? Which things?

Regards,
Mike


===========================
Michael Gogins
Irreducible Productions
http://michaelgogins.tumblr.com
Michael dot Gogins at gmail dot com


On Mon, Jun 24, 2013 at 1:23 PM, Tarmo Johannes <tarmo.johannes@otsakool.edu.ee> wrote:

very nice example,

thanks for sharing!

tarmo

 

On Monday 24 June 2013 12:23:56 peiman khosravi wrote:

Csound6 only!







www.peimankhosravi.co.uk || Subscribe to RSS Feed

To receive emails about upcoming concerts visit this page & enter your email address in the 'follow' section.



On 24 June 2013 12:21, peiman khosravi <peimankhosravi@gmail.com> wrote:

Here's the seed of an idea. This is stereo of course, but I imagine a 6 channel set-up. Long live Partikkel!





<CsoundSynthesizer>

<CsOptions>

-odac -d

;-o test.aif -d -A -3

</CsOptions>

; ==============================================

<CsInstruments>


sr = 96000

ksmps = 10

nchnls = 2

0dbfs = 1


giSine ftgen 0, 0, 65537, 10, 1

giCosine ftgen 0, 0, 8193, 9, 1, 1, 90

gichanMask ftgen 0, 0, 16, -2, 0, 3, 0, 1, 1, 0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 0 

giwidow ftgen 0, 0, 8192, -20, 6

gimix ftgen 0, 0, 8, -2, 0, 0, 0, 0, 0, 0, 1 


giSigmoRise ftgen    1, 0, 8193, 19, 0.5, 1, 270, 1            ; rising sigmoid 

giSigmoFall ftgen    11, 0, 8193, 19, 0.5, 1, 90, 1            ; falling sigmoid 


giLinRise ftgen    2, 0, 8193, -7, 0, 8192, 1

giLinFall ftgen    12, 0, 8193, -7, 1, 8192, 0


giexpRise ftgen    3, 0, 8193, -5, .0001, 8192, 1

giexpFall ftgen    13, 0, 8193, -5, 1, 8192, .0001


instr 1

kgrainfreq = p5 ; 4 grains per second

kdistribution = 0 ; periodic grain distribution

idisttab = -1 ; (default) flat distribution used for grain distribution

async = 0 ; no sync input

kenv2amt = p7 ; no secondary enveloping

ienv2tab = giwidow ; default secondary envelope (flat)

ienv_attack = giSigmoRise ; default attack envelope (flat)

ienv_decay = giexpFall ; default decay envelope (flat)

ksustain_amount = p8 ; time (in fraction of grain dur) at sustain level for each grain

ka_d_ratio = p9 ; balance between attack and decay time

kduration = (.5+oscil(.5, .1, -1))* p11 + 70 ; set grain duration relative to grain rate

kamp = .5 ; amp

igainmasks = -1 ; (default) no gain masking

kwavfreq = 240 ; fundamental frequency of source waveform

ksweepshape = 0 ; shape of frequency sweep (0=no sweep)

iwavfreqstarttab = -1 ; default frequency sweep start (value in table = 1, which give no frequency modification)

iwavfreqendtab = -1 ; default frequency sweep end (value in table = 1, which give no frequency modification)

awavfm = 0 ; no FM input

ifmamptab = -1 ; default FM scaling (=1)

kfmenv = -1 ; default FM envelope (flat)

icosine = giCosine ; cosine ftable

kTrainCps = p4 ; set trainlet cps equal to grain rate for single-cycle trainlet in each grain

knumpartials = 50 ; number of partials in trainlet

kchroma = (.5+oscil(.5, 4.21, -1))*p12+p6 ; balance of partials in trainlet

ichannelmasks = gichanMask ; (default) no channel masking, all grains to output 1

krandommask = p10 ; no random grain masking

kwaveform1 = giSine ; source waveforms

kwaveform2 = giSine ;

kwaveform3 = giSine ;

kwaveform4 = giSine ;

iwaveamptab = gimix ; (default) equal mix of all 4 sourcve waveforms and no amp for trainlets

asamplepos1 = 0 ; phase offset for reading source waveform

asamplepos2 = 0 ;

asamplepos3 = 0 ;

asamplepos4 = 0 ;

kwavekey1 = 1 ; original key for source waveform

kwavekey2 = 1 ;

kwavekey3 = 1 ;

kwavekey4 = 1 ;

imax_grains = 100 ; max grains per k period


a1, a2 partikkel kgrainfreq, \

              kdistribution, idisttab, async, kenv2amt, ienv2tab, ienv_attack, \

              ienv_decay, ksustain_amount, ka_d_ratio, kduration, kamp, igainmasks, \

              kwavfreq, ksweepshape, iwavfreqstarttab, iwavfreqendtab, awavfm, \

              ifmamptab, kfmenv, icosine, kTrainCps, knumpartials, kchroma, \

              ichannelmasks, krandommask, kwaveform1, kwaveform2, kwaveform3, \

              kwaveform4, iwaveamptab, asamplepos1, asamplepos2, asamplepos3, \

              asamplepos4, kwavekey1, kwavekey2, kwavekey3, kwavekey4, imax_grains


outs a1, a2


endin


</CsInstruments>

; ==============================================

<CsScore>


i1 0 36000 65  10    .0  0.7 .3 0.001 0 500 .3

i1 0 36000 280 10    .01 .7 0 0.001 .1 10 1

i1 5 36000 280 10    .01 .7 0 0.001 .1 100 .5

i1 5 36000 500 10.01 .01 .7 0 0.002 .2 100 .5

i1 10 36000 550 10.02 .01 .5 0 0.001 .3 100 .8

i1 15 36000 650 10 .01 0 .1 0.1 .91 .6

i1 30 36000 1000 10 .01 0.3 .0 0.6 .98  300 .6

i1 35 36000 1300 10 .01 0.3 .0 0.6 .995 200 .6

i1 36 36000 1100 10 .3 0.5 .0 0.2 .99 200 .6


i1 50 36000 1400 10 2 0.5 .3 0.3 .995 10000 .6






</CsScore>

</CsoundSynthesizer>








www.peimankhosravi.co.uk || Subscribe to RSS Feed

To receive emails about upcoming concerts visit this page & enter your email address in the 'follow' section.








Date2013-06-25 06:47
FromEnrico Francioni
Subject[Csnd] Re: OT: partikkel texture
Peiman sorry, 
but what is this?

oscil(.5, .1, -1)



--
View this message in context: http://csound.1045644.n5.nabble.com/OT-partikkel-texture-tp5724767p5724800.html
Sent from the Csound - General mailing list archive at Nabble.com.

Date2013-06-25 07:33
FromOeyvind Brandtsegg
SubjectRe: [Csnd] OT: partikkel texture
Great idea, and it sounds good. Thanks for sharing!

How did you come up with the value 4.21 for the chroma LFO frequency? It makes all the difference.

... and you example finally got me testing Csound6.

best
Oeyvind


2013/6/24 peiman khosravi <peimankhosravi@gmail.com>
Here's the seed of an idea. This is stereo of course, but I imagine a 6 channel set-up. Long live Partikkel!




<CsoundSynthesizer>
<CsOptions>
-odac -d
;-o test.aif -d -A -3
</CsOptions>
; ==============================================
<CsInstruments>

sr = 96000
ksmps = 10
nchnls = 2
0dbfs = 1

giSine ftgen 0, 0, 65537, 10, 1
giCosine ftgen 0, 0, 8193, 9, 1, 1, 90
gichanMask ftgen 0, 0, 16, -2, 0, 3, 0, 1, 1, 0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 0 
giwidow ftgen 0, 0, 8192, -20, 6
gimix ftgen 0, 0, 8, -2, 0, 0, 0, 0, 0, 0, 1 

giSigmoRise ftgen    1, 0, 8193, 19, 0.5, 1, 270, 1            ; rising sigmoid 
giSigmoFall ftgen    11, 0, 8193, 19, 0.5, 1, 90, 1            ; falling sigmoid 

giLinRise ftgen    2, 0, 8193, -7, 0, 8192, 1
giLinFall ftgen    12, 0, 8193, -7, 1, 8192, 0

giexpRise ftgen    3, 0, 8193, -5, .0001, 8192, 1
giexpFall ftgen    13, 0, 8193, -5, 1, 8192, .0001

instr 1
kgrainfreq = p5 ; 4 grains per second
kdistribution = 0 ; periodic grain distribution
idisttab = -1 ; (default) flat distribution used for grain distribution
async = 0 ; no sync input
kenv2amt = p7 ; no secondary enveloping
ienv2tab = giwidow ; default secondary envelope (flat)
ienv_attack = giSigmoRise ; default attack envelope (flat)
ienv_decay = giexpFall ; default decay envelope (flat)
ksustain_amount = p8 ; time (in fraction of grain dur) at sustain level for each grain
ka_d_ratio = p9 ; balance between attack and decay time
kduration = (.5+oscil(.5, .1, -1))* p11 + 70 ; set grain duration relative to grain rate
kamp = .5 ; amp
igainmasks = -1 ; (default) no gain masking
kwavfreq = 240 ; fundamental frequency of source waveform
ksweepshape = 0 ; shape of frequency sweep (0=no sweep)
iwavfreqstarttab = -1 ; default frequency sweep start (value in table = 1, which give no frequency modification)
iwavfreqendtab = -1 ; default frequency sweep end (value in table = 1, which give no frequency modification)
awavfm = 0 ; no FM input
ifmamptab = -1 ; default FM scaling (=1)
kfmenv = -1 ; default FM envelope (flat)
icosine = giCosine ; cosine ftable
kTrainCps = p4 ; set trainlet cps equal to grain rate for single-cycle trainlet in each grain
knumpartials = 50 ; number of partials in trainlet
kchroma = (.5+oscil(.5, 4.21, -1))*p12+p6 ; balance of partials in trainlet
ichannelmasks = gichanMask ; (default) no channel masking, all grains to output 1
krandommask = p10 ; no random grain masking
kwaveform1 = giSine ; source waveforms
kwaveform2 = giSine ;
kwaveform3 = giSine ;
kwaveform4 = giSine ;
iwaveamptab = gimix ; (default) equal mix of all 4 sourcve waveforms and no amp for trainlets
asamplepos1 = 0 ; phase offset for reading source waveform
asamplepos2 = 0 ;
asamplepos3 = 0 ;
asamplepos4 = 0 ;
kwavekey1 = 1 ; original key for source waveform
kwavekey2 = 1 ;
kwavekey3 = 1 ;
kwavekey4 = 1 ;
imax_grains = 100 ; max grains per k period

a1, a2 partikkel kgrainfreq, \
              kdistribution, idisttab, async, kenv2amt, ienv2tab, ienv_attack, \
              ienv_decay, ksustain_amount, ka_d_ratio, kduration, kamp, igainmasks, \
              kwavfreq, ksweepshape, iwavfreqstarttab, iwavfreqendtab, awavfm, \
              ifmamptab, kfmenv, icosine, kTrainCps, knumpartials, kchroma, \
              ichannelmasks, krandommask, kwaveform1, kwaveform2, kwaveform3, \
              kwaveform4, iwaveamptab, asamplepos1, asamplepos2, asamplepos3, \
              asamplepos4, kwavekey1, kwavekey2, kwavekey3, kwavekey4, imax_grains

outs a1, a2

endin

</CsInstruments>
; ==============================================
<CsScore>

i1 0 36000 65  10    .0  0.7 .3 0.001 0 500 .3
i1 0 36000 280 10    .01 .7 0 0.001 .1 10 1
i1 5 36000 280 10    .01 .7 0 0.001 .1 100 .5
i1 5 36000 500 10.01 .01 .7 0 0.002 .2 100 .5
i1 10 36000 550 10.02 .01 .5 0 0.001 .3 100 .8
i1 15 36000 650 10 .01 0 .1 0.1 .91 .6
i1 30 36000 1000 10 .01 0.3 .0 0.6 .98  300 .6
i1 35 36000 1300 10 .01 0.3 .0 0.6 .995 200 .6
i1 36 36000 1100 10 .3 0.5 .0 0.2 .99 200 .6

i1 50 36000 1400 10 2 0.5 .3 0.3 .995 10000 .6





</CsScore>
</CsoundSynthesizer>







www.peimankhosravi.co.uk || Subscribe to RSS Feed

To receive emails about upcoming concerts visit this page & enter your email address in the 'follow' section.




--

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

Date2013-06-25 07:54
FromRory Walsh
SubjectRe: [Csnd] Re: OT: partikkel texture
> but what is this?
>
> oscil(.5, .1, -1)

Csound6 allows for calling opcodes inline(is that the correct
technical term for this?). Users can for example do:

k1 oscil 10000, oscil(.5, .1, -1), -1

Which is the same as

k0 oscil .5, .1, -1
k1 oscil 10000, k0, -1

Btw, the -1 as function table number means that oscil will use a
default sine table. That's also new to Csound6 I believe.

Date2013-06-25 09:11
Frompeiman khosravi
SubjectRe: [Csnd] OT: partikkel texture
It's the square root of...

By ear :-p






www.peimankhosravi.co.uk || Subscribe to RSS Feed

To receive emails about upcoming concerts visit this page & enter your email address in the 'follow' section.



On 25 June 2013 07:33, Oeyvind Brandtsegg <oyvind.brandtsegg@ntnu.no> wrote:
Great idea, and it sounds good. Thanks for sharing!

How did you come up with the value 4.21 for the chroma LFO frequency? It makes all the difference.

... and you example finally got me testing Csound6.

best
Oeyvind


2013/6/24 peiman khosravi <peimankhosravi@gmail.com>
Here's the seed of an idea. This is stereo of course, but I imagine a 6 channel set-up. Long live Partikkel!




<CsoundSynthesizer>
<CsOptions>
-odac -d
;-o test.aif -d -A -3
</CsOptions>
; ==============================================
<CsInstruments>

sr = 96000
ksmps = 10
nchnls = 2
0dbfs = 1

giSine ftgen 0, 0, 65537, 10, 1
giCosine ftgen 0, 0, 8193, 9, 1, 1, 90
gichanMask ftgen 0, 0, 16, -2, 0, 3, 0, 1, 1, 0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 0 
giwidow ftgen 0, 0, 8192, -20, 6
gimix ftgen 0, 0, 8, -2, 0, 0, 0, 0, 0, 0, 1 

giSigmoRise ftgen    1, 0, 8193, 19, 0.5, 1, 270, 1            ; rising sigmoid 
giSigmoFall ftgen    11, 0, 8193, 19, 0.5, 1, 90, 1            ; falling sigmoid 

giLinRise ftgen    2, 0, 8193, -7, 0, 8192, 1
giLinFall ftgen    12, 0, 8193, -7, 1, 8192, 0

giexpRise ftgen    3, 0, 8193, -5, .0001, 8192, 1
giexpFall ftgen    13, 0, 8193, -5, 1, 8192, .0001

instr 1
kgrainfreq = p5 ; 4 grains per second
kdistribution = 0 ; periodic grain distribution
idisttab = -1 ; (default) flat distribution used for grain distribution
async = 0 ; no sync input
kenv2amt = p7 ; no secondary enveloping
ienv2tab = giwidow ; default secondary envelope (flat)
ienv_attack = giSigmoRise ; default attack envelope (flat)
ienv_decay = giexpFall ; default decay envelope (flat)
ksustain_amount = p8 ; time (in fraction of grain dur) at sustain level for each grain
ka_d_ratio = p9 ; balance between attack and decay time
kduration = (.5+oscil(.5, .1, -1))* p11 + 70 ; set grain duration relative to grain rate
kamp = .5 ; amp
igainmasks = -1 ; (default) no gain masking
kwavfreq = 240 ; fundamental frequency of source waveform
ksweepshape = 0 ; shape of frequency sweep (0=no sweep)
iwavfreqstarttab = -1 ; default frequency sweep start (value in table = 1, which give no frequency modification)
iwavfreqendtab = -1 ; default frequency sweep end (value in table = 1, which give no frequency modification)
awavfm = 0 ; no FM input
ifmamptab = -1 ; default FM scaling (=1)
kfmenv = -1 ; default FM envelope (flat)
icosine = giCosine ; cosine ftable
kTrainCps = p4 ; set trainlet cps equal to grain rate for single-cycle trainlet in each grain
knumpartials = 50 ; number of partials in trainlet
kchroma = (.5+oscil(.5, 4.21, -1))*p12+p6 ; balance of partials in trainlet
ichannelmasks = gichanMask ; (default) no channel masking, all grains to output 1
krandommask = p10 ; no random grain masking
kwaveform1 = giSine ; source waveforms
kwaveform2 = giSine ;
kwaveform3 = giSine ;
kwaveform4 = giSine ;
iwaveamptab = gimix ; (default) equal mix of all 4 sourcve waveforms and no amp for trainlets
asamplepos1 = 0 ; phase offset for reading source waveform
asamplepos2 = 0 ;
asamplepos3 = 0 ;
asamplepos4 = 0 ;
kwavekey1 = 1 ; original key for source waveform
kwavekey2 = 1 ;
kwavekey3 = 1 ;
kwavekey4 = 1 ;
imax_grains = 100 ; max grains per k period

a1, a2 partikkel kgrainfreq, \
              kdistribution, idisttab, async, kenv2amt, ienv2tab, ienv_attack, \
              ienv_decay, ksustain_amount, ka_d_ratio, kduration, kamp, igainmasks, \
              kwavfreq, ksweepshape, iwavfreqstarttab, iwavfreqendtab, awavfm, \
              ifmamptab, kfmenv, icosine, kTrainCps, knumpartials, kchroma, \
              ichannelmasks, krandommask, kwaveform1, kwaveform2, kwaveform3, \
              kwaveform4, iwaveamptab, asamplepos1, asamplepos2, asamplepos3, \
              asamplepos4, kwavekey1, kwavekey2, kwavekey3, kwavekey4, imax_grains

outs a1, a2

endin

</CsInstruments>
; ==============================================
<CsScore>

i1 0 36000 65  10    .0  0.7 .3 0.001 0 500 .3
i1 0 36000 280 10    .01 .7 0 0.001 .1 10 1
i1 5 36000 280 10    .01 .7 0 0.001 .1 100 .5
i1 5 36000 500 10.01 .01 .7 0 0.002 .2 100 .5
i1 10 36000 550 10.02 .01 .5 0 0.001 .3 100 .8
i1 15 36000 650 10 .01 0 .1 0.1 .91 .6
i1 30 36000 1000 10 .01 0.3 .0 0.6 .98  300 .6
i1 35 36000 1300 10 .01 0.3 .0 0.6 .995 200 .6
i1 36 36000 1100 10 .3 0.5 .0 0.2 .99 200 .6

i1 50 36000 1400 10 2 0.5 .3 0.3 .995 10000 .6





</CsScore>
</CsoundSynthesizer>







www.peimankhosravi.co.uk || Subscribe to RSS Feed

To receive emails about upcoming concerts visit this page & enter your email address in the 'follow' section.




--

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


Date2013-06-25 09:45
FromOeyvind Brandtsegg
SubjectRe: [Csnd] OT: partikkel texture
Excellent ear.


2013/6/25 peiman khosravi <peimankhosravi@gmail.com>
It's the square root of...

By ear :-p






www.peimankhosravi.co.uk || Subscribe to RSS Feed

To receive emails about upcoming concerts visit this page & enter your email address in the 'follow' section.



On 25 June 2013 07:33, Oeyvind Brandtsegg <oyvind.brandtsegg@ntnu.no> wrote:
Great idea, and it sounds good. Thanks for sharing!

How did you come up with the value 4.21 for the chroma LFO frequency? It makes all the difference.

... and you example finally got me testing Csound6.

best
Oeyvind


2013/6/24 peiman khosravi <peimankhosravi@gmail.com>
Here's the seed of an idea. This is stereo of course, but I imagine a 6 channel set-up. Long live Partikkel!




<CsoundSynthesizer>
<CsOptions>
-odac -d
;-o test.aif -d -A -3
</CsOptions>
; ==============================================
<CsInstruments>

sr = 96000
ksmps = 10
nchnls = 2
0dbfs = 1

giSine ftgen 0, 0, 65537, 10, 1
giCosine ftgen 0, 0, 8193, 9, 1, 1, 90
gichanMask ftgen 0, 0, 16, -2, 0, 3, 0, 1, 1, 0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 0 
giwidow ftgen 0, 0, 8192, -20, 6
gimix ftgen 0, 0, 8, -2, 0, 0, 0, 0, 0, 0, 1 

giSigmoRise ftgen    1, 0, 8193, 19, 0.5, 1, 270, 1            ; rising sigmoid 
giSigmoFall ftgen    11, 0, 8193, 19, 0.5, 1, 90, 1            ; falling sigmoid 

giLinRise ftgen    2, 0, 8193, -7, 0, 8192, 1
giLinFall ftgen    12, 0, 8193, -7, 1, 8192, 0

giexpRise ftgen    3, 0, 8193, -5, .0001, 8192, 1
giexpFall ftgen    13, 0, 8193, -5, 1, 8192, .0001

instr 1
kgrainfreq = p5 ; 4 grains per second
kdistribution = 0 ; periodic grain distribution
idisttab = -1 ; (default) flat distribution used for grain distribution
async = 0 ; no sync input
kenv2amt = p7 ; no secondary enveloping
ienv2tab = giwidow ; default secondary envelope (flat)
ienv_attack = giSigmoRise ; default attack envelope (flat)
ienv_decay = giexpFall ; default decay envelope (flat)
ksustain_amount = p8 ; time (in fraction of grain dur) at sustain level for each grain
ka_d_ratio = p9 ; balance between attack and decay time
kduration = (.5+oscil(.5, .1, -1))* p11 + 70 ; set grain duration relative to grain rate
kamp = .5 ; amp
igainmasks = -1 ; (default) no gain masking
kwavfreq = 240 ; fundamental frequency of source waveform
ksweepshape = 0 ; shape of frequency sweep (0=no sweep)
iwavfreqstarttab = -1 ; default frequency sweep start (value in table = 1, which give no frequency modification)
iwavfreqendtab = -1 ; default frequency sweep end (value in table = 1, which give no frequency modification)
awavfm = 0 ; no FM input
ifmamptab = -1 ; default FM scaling (=1)
kfmenv = -1 ; default FM envelope (flat)
icosine = giCosine ; cosine ftable
kTrainCps = p4 ; set trainlet cps equal to grain rate for single-cycle trainlet in each grain
knumpartials = 50 ; number of partials in trainlet
kchroma = (.5+oscil(.5, 4.21, -1))*p12+p6 ; balance of partials in trainlet
ichannelmasks = gichanMask ; (default) no channel masking, all grains to output 1
krandommask = p10 ; no random grain masking
kwaveform1 = giSine ; source waveforms
kwaveform2 = giSine ;
kwaveform3 = giSine ;
kwaveform4 = giSine ;
iwaveamptab = gimix ; (default) equal mix of all 4 sourcve waveforms and no amp for trainlets
asamplepos1 = 0 ; phase offset for reading source waveform
asamplepos2 = 0 ;
asamplepos3 = 0 ;
asamplepos4 = 0 ;
kwavekey1 = 1 ; original key for source waveform
kwavekey2 = 1 ;
kwavekey3 = 1 ;
kwavekey4 = 1 ;
imax_grains = 100 ; max grains per k period

a1, a2 partikkel kgrainfreq, \
              kdistribution, idisttab, async, kenv2amt, ienv2tab, ienv_attack, \
              ienv_decay, ksustain_amount, ka_d_ratio, kduration, kamp, igainmasks, \
              kwavfreq, ksweepshape, iwavfreqstarttab, iwavfreqendtab, awavfm, \
              ifmamptab, kfmenv, icosine, kTrainCps, knumpartials, kchroma, \
              ichannelmasks, krandommask, kwaveform1, kwaveform2, kwaveform3, \
              kwaveform4, iwaveamptab, asamplepos1, asamplepos2, asamplepos3, \
              asamplepos4, kwavekey1, kwavekey2, kwavekey3, kwavekey4, imax_grains

outs a1, a2

endin

</CsInstruments>
; ==============================================
<CsScore>

i1 0 36000 65  10    .0  0.7 .3 0.001 0 500 .3
i1 0 36000 280 10    .01 .7 0 0.001 .1 10 1
i1 5 36000 280 10    .01 .7 0 0.001 .1 100 .5
i1 5 36000 500 10.01 .01 .7 0 0.002 .2 100 .5
i1 10 36000 550 10.02 .01 .5 0 0.001 .3 100 .8
i1 15 36000 650 10 .01 0 .1 0.1 .91 .6
i1 30 36000 1000 10 .01 0.3 .0 0.6 .98  300 .6
i1 35 36000 1300 10 .01 0.3 .0 0.6 .995 200 .6
i1 36 36000 1100 10 .3 0.5 .0 0.2 .99 200 .6

i1 50 36000 1400 10 2 0.5 .3 0.3 .995 10000 .6





</CsScore>
</CsoundSynthesizer>







www.peimankhosravi.co.uk || Subscribe to RSS Feed

To receive emails about upcoming concerts visit this page & enter your email address in the 'follow' section.




--

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




--

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

Date2013-06-25 09:55
Frompeiman khosravi
SubjectRe: [Csnd] OT: partikkel texture
only the right one is :-)






www.peimankhosravi.co.uk || Subscribe to RSS Feed

To receive emails about upcoming concerts visit this page & enter your email address in the 'follow' section.



On 25 June 2013 09:45, Oeyvind Brandtsegg <oyvind.brandtsegg@ntnu.no> wrote:
Excellent ear.


2013/6/25 peiman khosravi <peimankhosravi@gmail.com>
It's the square root of...

By ear :-p






www.peimankhosravi.co.uk || Subscribe to RSS Feed

To receive emails about upcoming concerts visit this page & enter your email address in the 'follow' section.



On 25 June 2013 07:33, Oeyvind Brandtsegg <oyvind.brandtsegg@ntnu.no> wrote:
Great idea, and it sounds good. Thanks for sharing!

How did you come up with the value 4.21 for the chroma LFO frequency? It makes all the difference.

... and you example finally got me testing Csound6.

best
Oeyvind


2013/6/24 peiman khosravi <peimankhosravi@gmail.com>
Here's the seed of an idea. This is stereo of course, but I imagine a 6 channel set-up. Long live Partikkel!




<CsoundSynthesizer>
<CsOptions>
-odac -d
;-o test.aif -d -A -3
</CsOptions>
; ==============================================
<CsInstruments>

sr = 96000
ksmps = 10
nchnls = 2
0dbfs = 1

giSine ftgen 0, 0, 65537, 10, 1
giCosine ftgen 0, 0, 8193, 9, 1, 1, 90
gichanMask ftgen 0, 0, 16, -2, 0, 3, 0, 1, 1, 0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 0 
giwidow ftgen 0, 0, 8192, -20, 6
gimix ftgen 0, 0, 8, -2, 0, 0, 0, 0, 0, 0, 1 

giSigmoRise ftgen    1, 0, 8193, 19, 0.5, 1, 270, 1            ; rising sigmoid 
giSigmoFall ftgen    11, 0, 8193, 19, 0.5, 1, 90, 1            ; falling sigmoid 

giLinRise ftgen    2, 0, 8193, -7, 0, 8192, 1
giLinFall ftgen    12, 0, 8193, -7, 1, 8192, 0

giexpRise ftgen    3, 0, 8193, -5, .0001, 8192, 1
giexpFall ftgen    13, 0, 8193, -5, 1, 8192, .0001

instr 1
kgrainfreq = p5 ; 4 grains per second
kdistribution = 0 ; periodic grain distribution
idisttab = -1 ; (default) flat distribution used for grain distribution
async = 0 ; no sync input
kenv2amt = p7 ; no secondary enveloping
ienv2tab = giwidow ; default secondary envelope (flat)
ienv_attack = giSigmoRise ; default attack envelope (flat)
ienv_decay = giexpFall ; default decay envelope (flat)
ksustain_amount = p8 ; time (in fraction of grain dur) at sustain level for each grain
ka_d_ratio = p9 ; balance between attack and decay time
kduration = (.5+oscil(.5, .1, -1))* p11 + 70 ; set grain duration relative to grain rate
kamp = .5 ; amp
igainmasks = -1 ; (default) no gain masking
kwavfreq = 240 ; fundamental frequency of source waveform
ksweepshape = 0 ; shape of frequency sweep (0=no sweep)
iwavfreqstarttab = -1 ; default frequency sweep start (value in table = 1, which give no frequency modification)
iwavfreqendtab = -1 ; default frequency sweep end (value in table = 1, which give no frequency modification)
awavfm = 0 ; no FM input
ifmamptab = -1 ; default FM scaling (=1)
kfmenv = -1 ; default FM envelope (flat)
icosine = giCosine ; cosine ftable
kTrainCps = p4 ; set trainlet cps equal to grain rate for single-cycle trainlet in each grain
knumpartials = 50 ; number of partials in trainlet
kchroma = (.5+oscil(.5, 4.21, -1))*p12+p6 ; balance of partials in trainlet
ichannelmasks = gichanMask ; (default) no channel masking, all grains to output 1
krandommask = p10 ; no random grain masking
kwaveform1 = giSine ; source waveforms
kwaveform2 = giSine ;
kwaveform3 = giSine ;
kwaveform4 = giSine ;
iwaveamptab = gimix ; (default) equal mix of all 4 sourcve waveforms and no amp for trainlets
asamplepos1 = 0 ; phase offset for reading source waveform
asamplepos2 = 0 ;
asamplepos3 = 0 ;
asamplepos4 = 0 ;
kwavekey1 = 1 ; original key for source waveform
kwavekey2 = 1 ;
kwavekey3 = 1 ;
kwavekey4 = 1 ;
imax_grains = 100 ; max grains per k period

a1, a2 partikkel kgrainfreq, \
              kdistribution, idisttab, async, kenv2amt, ienv2tab, ienv_attack, \
              ienv_decay, ksustain_amount, ka_d_ratio, kduration, kamp, igainmasks, \
              kwavfreq, ksweepshape, iwavfreqstarttab, iwavfreqendtab, awavfm, \
              ifmamptab, kfmenv, icosine, kTrainCps, knumpartials, kchroma, \
              ichannelmasks, krandommask, kwaveform1, kwaveform2, kwaveform3, \
              kwaveform4, iwaveamptab, asamplepos1, asamplepos2, asamplepos3, \
              asamplepos4, kwavekey1, kwavekey2, kwavekey3, kwavekey4, imax_grains

outs a1, a2

endin

</CsInstruments>
; ==============================================
<CsScore>

i1 0 36000 65  10    .0  0.7 .3 0.001 0 500 .3
i1 0 36000 280 10    .01 .7 0 0.001 .1 10 1
i1 5 36000 280 10    .01 .7 0 0.001 .1 100 .5
i1 5 36000 500 10.01 .01 .7 0 0.002 .2 100 .5
i1 10 36000 550 10.02 .01 .5 0 0.001 .3 100 .8
i1 15 36000 650 10 .01 0 .1 0.1 .91 .6
i1 30 36000 1000 10 .01 0.3 .0 0.6 .98  300 .6
i1 35 36000 1300 10 .01 0.3 .0 0.6 .995 200 .6
i1 36 36000 1100 10 .3 0.5 .0 0.2 .99 200 .6

i1 50 36000 1400 10 2 0.5 .3 0.3 .995 10000 .6





</CsScore>
</CsoundSynthesizer>







www.peimankhosravi.co.uk || Subscribe to RSS Feed

To receive emails about upcoming concerts visit this page & enter your email address in the 'follow' section.




--

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




--

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


Date2013-06-25 09:56
FromRory Walsh
SubjectRe: [Csnd] OT: partikkel texture
isn't there an app for that :)

Date2013-06-25 10:06
Frompeiman khosravi
SubjectRe: [Csnd] OT: partikkel texture
I'm waiting for you to invent it Rory.