Csound Csound-dev Csound-tekno Search About

Re: Writing a large curve in a table

Date1999-03-31 14:40
FromGabriel Maldonado
SubjectRe: Writing a large curve in a table
Jean-Michel,
Use GEN23 with an external ascii file.
good luck
-- 
Gabriel Maldonado

http://www.agora.stm.it/G.Maldonado/home2.htm

JM&M DARRMONT wrote:
> 
> Hi,
> 
> I want to store a curve of (much)more than PMAX(150) in a table for making a wave.
> I can't find any way of doing this.
> Is it possible and how?
> 
> Thanks for any help.
> 
> --
> Jean-Michel DARREMONT




Received: from wallace.maths.bath.ac.uk by omphalos.maths.Bath.AC.UK id aa07556;
          1 Apr 99 6:34 BST
Received: from [144.173.6.14] (helo=exeter.ac.uk)
	by wallace.maths.bath.ac.uk with esmtp (Exim 2.12 #1)
	id 10Sa81-0006ba-00
	for jpff@maths.bath.ac.uk; Thu, 1 Apr 1999 06:34:57 +0100
Received: from noether [144.173.8.10] by hermes via SMTP (GAA05780); Thu, 1 Apr 1999 06:31:14 +0100 (BST)
Received: from exeter.ac.uk by maths.ex.ac.uk; Thu, 1 Apr 1999 06:31:02 +0100
Received: from exim@wallace.maths.bath.ac.uk [138.38.100.104] by hermes via ESMTP (GAA12318); Thu, 1 Apr 1999 06:31:01 +0100 (BST)
Received: from [138.38.97.36] (helo=maths.Bath.AC.UK ident=mmdf)
	by wallace.maths.bath.ac.uk with smtp (Exim 2.12 #1)
	id 10Sa4D-0006bP-00
	for csound@maths.ex.ac.uk; Thu, 1 Apr 1999 06:31:01 +0100
Date:     Thu, 1 Apr 99 6:31:00 BST
From: jpff@maths.bath.ac.uk
Subject:  [PBATISTA@colep.mailpac.pt: Re: neural nets]
To: csound@maths.ex.ac.uk
Message-Id: 
Sender: owner-csound-outgoing@maths.ex.ac.uk
Precedence: bulk

Message written at 31 Mar 1999 16:26:28 +0530

------- Start of forwarded message -------
Date: 29 Mar 99 08:56 GMT
Priority: normal
P1-Message-ID: pt*mailpac*gtw-ms;0922697806/0077436395/1
Original-Encoded-Information-Types: IA5-Text
From: Pedro Batista 
To: j.p.ffitch@maths.bath.ac.uk
Subject: Re: neural nets


__________________

>>do you have any ideas of what exactly you'll use the network for?
>
>Good point and maybe it isn't worth the effort although there are some
>people who claim to be doing some interesting things with them.  Check out

Surely there are a number of interesting projects around! I was concerned 
exclusively with practical uses, particularly within a csound environment
Some interesting projects involve physical modelling, analogue systems 
modelling, timbre recognition, all sorts of speech synth/resynthesis, etc; 
theres this guy using genetic algos to evolve vco+vcf patches to suit a 
particular target sound (not a bad idea, indeed); but all this work requires 
huge amounts of processing power, I mean who has a spare server to run this 
stuff? (I at least dont...)
which makes it kind of absurd (and since I perhaps naively, have started to 
make this attempts, all I get asked is 'what the hell for?') to use a neural 
model for any kind of synthesis process, when we have specific, efficient 
models to do the same thing already!

where can we use neural models in sonic domain, then? if its obviously 
inefficient (to me, anyway) to use nn's to do what synthesis algorithms 
already do well, then I'll try to use nn's to do what I cant do with a 
deterministic algorithm

I believe there are basically three applications worth a shot, corresponding 
to three different neural architectures: feature detection and unsupervised 
learning, which can lead to the field of ICA, feed-forward pattern 
associators in all flavours, which can be used for sound morphing and 'sound 
learning' (I'll explain this shortly), provided some clever symbolic coding 
is used, and finally recurrent nets (explicit or implicit like in FIR 
synapses) which have their field of excellence in time series prediction, 
and whose most obvious use would be sound modelling

Now, the feature detectors are easily implemented and fast, but relatively 
uninteresting, at least for what Id like to do; there are other more 
efficient stochastic methods for ICA, anyway

The recurrent models are very cool :) but bare in mind that a recurrent net 
computationally unfolds to several cascaded feed-forward nets, with the 
exponential growth in processing time; nevertheless (one never knows unless 
one tries) I've implemented a FIR network in csound: you dont wanna run it! 
I never got the chance to test it properly, cause it needs tenths of 
thousands of iterations to get close to the target, and I really dindnt have 
thetime

The feed-forward nets are the most viable application; I have been coding 
several back-prop nets, and have achieved good results with rprop (one of 
the optimized versions of backprop); I have it coded in C as well as csound, 
and I can help you code it, if you want
but what can be done with it? (again, having fast sound apps targeted at 
csound, in mind)

well, 90% of what can be done, results from the symbolic coding we use; It 
is more or less obvious to me that some sort of time/freq mapping must be 
established 1st, like a multiresolution parsing of the sound, that would 
break it to manageable 'symbols', leaving to the net the task of uncovering 
the 'grammar' behind these symbols
we have a number of such methods, from vocoders and filterbanks, to wavelets 
and FFT's, it just remains to figure out the best
The major limitation I come across, is the need to have the network see the 
sound in its globallity (something that would be appropriate for a 
time-dependent net) without resorting to recurrent methods;
What I mean, is having the output of the net depend not only of the present 
input, but also on the past history of inputs; now, this is what recurrent 
or time-delayed nets are used for in the 1st place, but as I said, I dont 
have a server on me right now
So to overcome it, I want to place more emphasis on the symbolic coding 
(that is, have this coding already reflect the evolution of the sound over 
time) and sticking with a static neural architecture; perhaps the most 
obvious way of doing this is by training the net with spectral data

an example: a neural vocoder
we separate the sound over several bands, have a network learn each band's 
behaviour, and then run each band thru a resynthesis process, controlled by 
the network's output; unless we use freq values as the network material, we 
wont take advantage of the multiband analysis, since we wont be able to make 
assumptions to the range of values each band will have

another example: learning a modular patch
inspired by the paper at narx, I started to contemplate the idea of making 
of a neural based patch learner in csound; we would have a symbolic coding 
which would describe one possible architecture; the net would for instance 
learn combinations of vco's and vcf's together with their connections and 
gains between units, to reach a specified target sound; what is needed here 
is a measure of how well the network is performing, something like a way of 
mathematically comparing two spectra and have some quantity measure how much 
they sound alike! (the ga paper uses the euclidian distance between both 
fft's)
that solved, and with an appropriate mapping, we could use a neural ugen, to 
learn, say, fof settings within a fof bank to suit a particular sound
I have this notion (I need to think more thoroughly of this) we could have a 
generic neural opcode in csound, which would learn suitable parameters to 
synthesize some kind of target sound
Actually thats the beauty of distributed processing: you can have it learn 
things you dont know in the first place!

>I got the Stuttgart package working and trained their demo network with it
>now, so I understand a little more about what the network is doing.  I had
>forgotten that neurons are binary so as far as I can tell it must take a
>bunch of neurons to do anything useful.

man, if that simulator only works with binary neurons than its use is even 
more limited than I thought! the rprop algo's I was talking about works with 
a continuous input and output range (limited: the input should work in the 
 -5.0 to +5.0 range, for instance, and the output is -1.0 to +1.0, but its 
just a simple scaling process)
binary neurons have their own problems: how do you code a continuous value 
to a binary pattern? you can just binary code it, but then you have the 
problem of binary 1000 being very far from binary 0000, while for the 
network they are very similar; you can use grey codes, but that wont help 
much, and you can have 'termometer' scales which solve the problem of 
discrepancies between input values proximity, but require small input 
ranges, or huge input dimensions

>Still learning,

same here... actually, I hope I can say that till the day I die!
then again, even longer :)

pedro
------- End of forwarded message -------


Received: from shaun.maths.bath.ac.uk by omphalos.maths.Bath.AC.UK id aa07583;
          1 Apr 99 6:38 BST
Received: from [144.173.6.14] (helo=exeter.ac.uk)
	by shaun.maths.bath.ac.uk with esmtp (Exim 2.12 #1)
	id 10SaB5-0001hw-00
	for jpff@maths.bath.ac.uk; Thu, 1 Apr 1999 06:38:07 +0100
Received: from noether [144.173.8.10] by hermes via SMTP (GAA14700); Thu, 1 Apr 1999 06:35:19 +0100 (BST)
Received: from exeter.ac.uk by maths.ex.ac.uk; Thu, 1 Apr 1999 06:35:08 +0100
Received: from exim@wallace.maths.bath.ac.uk [138.38.100.104] by hermes via ESMTP (GAA03603); Thu, 1 Apr 1999 06:35:08 +0100 (BST)
Received: from [138.38.97.36] (helo=maths.Bath.AC.UK ident=mmdf)
	by wallace.maths.bath.ac.uk with smtp (Exim 2.12 #1)
	id 10Sa8F-0006be-00
	for csound@maths.ex.ac.uk; Thu, 1 Apr 1999 06:35:11 +0100
Date:     Thu, 1 Apr 99 6:35:11 BST
From: jpff@maths.bath.ac.uk
Subject:  Re: Macro question
To: csound@maths.ex.ac.uk
Message-Id: 
Sender: owner-csound-outgoing@maths.ex.ac.uk
Precedence: bulk

Message written at 31 Mar 1999 19:57:21 +0530

>>>>> "rasmus" == rasmus ekman  writes:

 rasmus> Either # or ' works for me (Csound 3.53, earlier it was just # ).

 rasmus> #define tryit(A'B'C) #
 rasmus> 	$A. = $A. * ($B. + $C.) 
 rasmus> #

 rasmus> $tryit(kfrq ' kfrmod ' 1.2)

 rasmus> Compiles (with or without the spaces around separators), 
 rasmus> given that kfrq and kfrmod exist in the orc.

and of course the soace will appear in the expansion which is why
Gabriel and I tried to find a character which did not have Csound
syntactic meaning

==John ffitch


Received: from shaun.maths.bath.ac.uk by omphalos.maths.Bath.AC.UK id aa07589;
          1 Apr 99 6:38 BST
Received: from [144.173.6.14] (helo=exeter.ac.uk)
	by shaun.maths.bath.ac.uk with esmtp (Exim 2.12 #1)
	id 10SaB6-0001hy-00
	for jpff@maths.bath.ac.uk; Thu, 1 Apr 1999 06:38:08 +0100
Received: from noether [144.173.8.10] by hermes via SMTP (GAA01657); Thu, 1 Apr 1999 06:35:41 +0100 (BST)
Received: from exeter.ac.uk by maths.ex.ac.uk; Thu, 1 Apr 1999 06:35:29 +0100
Received: from exim@wallace.maths.bath.ac.uk [138.38.100.104] by hermes via ESMTP (GAA03114); Thu, 1 Apr 1999 06:35:29 +0100 (BST)
Received: from [138.38.97.36] (helo=maths.Bath.AC.UK ident=mmdf)
	by wallace.maths.bath.ac.uk with smtp (Exim 2.12 #1)
	id 10Sa8b-0006bp-00
	for csound@maths.ex.ac.uk; Thu, 1 Apr 1999 06:35:33 +0100
Date:     Thu, 1 Apr 99 6:35:32 BST
From: jpff@maths.bath.ac.uk
Subject:  Re: Writing a large curve in a table
To: csound@maths.ex.ac.uk
Message-Id: 
Sender: owner-csound-outgoing@maths.ex.ac.uk
Precedence: bulk

Message written at 31 Mar 1999 22:33:52 +0530
--- Copy of mail to jmdbrady@club-internet.fr ---

If I understand your question correctly, th eanswer is to try Gen23
==John ffitch
>>>>> "JM&M" == JM&M DARRMONT  writes:

 JM&M> I want to store a curve of (much)more than PMAX(150) in a table
 for making a wave. 



Received: from shaun.maths.bath.ac.uk by omphalos.maths.Bath.AC.UK id aa07632;
          1 Apr 99 7:05 BST
Received: from [144.173.6.14] (helo=exeter.ac.uk)
	by shaun.maths.bath.ac.uk with esmtp (Exim 2.12 #1)
	id 10Saba-0001iA-00
	for jpff@maths.bath.ac.uk; Thu, 1 Apr 1999 07:05:30 +0100
Received: from noether [144.173.8.10] by hermes via SMTP (HAA14920); Thu, 1 Apr 1999 07:03:10 +0100 (BST)
Received: from exeter.ac.uk by maths.ex.ac.uk; Thu, 1 Apr 1999 07:02:59 +0100
Received: from howl.werewolf.net [12.23.152.10] by hermes via ESMTP (HAA18221); Thu, 1 Apr 1999 07:02:57 +0100 (BST)
Received: from default (dial324.werewolf.net [12.23.154.24])
	by howl.werewolf.net (8.9.0/8.9.0) with SMTP id XAA29738
	for ; Wed, 31 Mar 1999 23:55:27 -0600 (CST)
Message-ID: <001101be7c06$204826c0$189a170c@default>
From: Hans Mikelson 
To: Csound 
Subject: Csound Magazine Spring 1999
Date: Thu, 1 Apr 1999 00:08:54 -0600
MIME-Version: 1.0
Content-Type: text/plain;
	charset="iso-8859-1"
Content-Transfer-Encoding: 7bit
X-Priority: 3
X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook Express 4.72.3110.5
X-MimeOLE: Produced By Microsoft MimeOLE V4.72.3110.3
Sender: owner-csound-outgoing@maths.ex.ac.uk
Precedence: bulk

Hi,

The spring 1999 issue of Csound Magazine is now complete and available at
the following site:

http://www.werewolf.net/~hljmm/Ezine/

Contents:

Columns

  Beginners: Oscillators by Hans Mikelson
  Synthesis: Parametric Equation Oscillators by Hans Mikelson
  Processing: The Talk-Box and Formant Filtering by Hans Mikelson
  Real-Time: Real-Time Analog Modeling by Hans Mikelson
  Internals: Adding Opcodes to Csound by Hans Mikelson

Features

  Anything2Score: A Guide for the Perplexed by Dave Phillips
  Depletion in Within by Grant Chu Covell

Enjoy,
Hans Mikelson
Csound Magazine Editor



Received: from wallace.maths.bath.ac.uk by omphalos.maths.Bath.AC.UK id aa07863;
          1 Apr 99 9:02 BST
Received: from [144.173.6.14] (helo=exeter.ac.uk)
	by wallace.maths.bath.ac.uk with esmtp (Exim 2.12 #1)
	id 10ScQh-0006eK-00
	for jpff@maths.bath.ac.uk; Thu, 1 Apr 1999 09:02:23 +0100
Received: from noether [144.173.8.10] by hermes via SMTP (JAA10507); Thu, 1 Apr 1999 09:01:28 +0100 (BST)
Received: from exeter.ac.uk by maths.ex.ac.uk; Thu, 1 Apr 1999 09:01:20 +0100
Received: from root@lix.intercom.es [194.179.21.2] by hermes via ESMTP (JAA14213); Thu, 1 Apr 1999 09:01:18 +0100 (BST)
Received: from intercom.es (iv2-140.intercom.es [195.76.206.140]) by lix.intercom.es (8.7.3/8.6.12) with ESMTP id KAA05103; Thu, 1 Apr 1999 10:00:15 +0100
Message-ID: <370326B7.3A650B96@intercom.es>
Date: Thu, 01 Apr 1999 09:56:40 +0200
From: Josep M Comajuncosas 
X-Mailer: Mozilla 4.05 [en] (Win95; I)
MIME-Version: 1.0
To: Hans Mikelson 
CC: Csound 
Subject: Re: Csound Magazine Spring 1999
References: <001101be7c06$204826c0$189a170c@default>
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Sender: owner-csound-outgoing@maths.ex.ac.uk
Precedence: bulk

This new issue looks equally great. Congratulations to Hans and to all the
contributors!

Josep M Comajuncosas


Hans Mikelson wrote:

> Hi,
>
> The spring 1999 issue of Csound Magazine is now complete and available at
> the following site:
>
> http://www.werewolf.net/~hljmm/Ezine/
>
> Contents:
>
> Columns
>
>   Beginners: Oscillators by Hans Mikelson
>   Synthesis: Parametric Equation Oscillators by Hans Mikelson
>   Processing: The Talk-Box and Formant Filtering by Hans Mikelson
>   Real-Time: Real-Time Analog Modeling by Hans Mikelson
>   Internals: Adding Opcodes to Csound by Hans Mikelson
>
> Features
>
>   Anything2Score: A Guide for the Perplexed by Dave Phillips
>   Depletion in Within by Grant Chu Covell
>
> Enjoy,
> Hans Mikelson
> Csound Magazine Editor



--
Josep M Comajuncosas
C/ Circumval.lacio 75  08790 Gelida - Penedes
Catalunya - SPAIN
home phone : 93 7792243 / 00 34 3 7792243

Csound page at http://members.tripod.com/csound/




Received: from wallace.maths.bath.ac.uk by omphalos.maths.Bath.AC.UK id aa08057;
          1 Apr 99 10:10 BST
Received: from [144.173.6.14] (helo=exeter.ac.uk)
	by wallace.maths.bath.ac.uk with esmtp (Exim 2.12 #1)
	id 10SdUI-0006hn-00
	for jpff@maths.bath.ac.uk; Thu, 1 Apr 1999 10:10:10 +0100
Received: from noether [144.173.8.10] by hermes via SMTP (KAA02430); Thu, 1 Apr 1999 10:09:18 +0100 (BST)
Received: from exeter.ac.uk by maths.ex.ac.uk; Thu, 1 Apr 1999 10:09:05 +0100
Received: from popeye.latrobe.edu.au [131.172.4.60] by hermes via ESMTP (KAA10869); Thu, 1 Apr 1999 10:09:02 +0100 (BST)
Received: from [131.172.160.53] ([131.172.160.53] (may be forged)) by popeye.latrobe.edu.au (8.8.6/8.6.9) with ESMTP id TAA13445 for ; Thu, 1 Apr 1999 19:08:54 +1000 (EST)
X-Sender: mustpm@pop.latrobe.edu.au
Message-Id: 
In-Reply-To: <001101be7c06$204826c0$189a170c@default>
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Date: Thu, 1 Apr 1999 19:11:23 +1000
To: csound@maths.ex.ac.uk
From: Terry McDermott 
Subject: Re: Csound Magazine Spring 1999
Sender: owner-csound-outgoing@maths.ex.ac.uk
Precedence: bulk

Hans-
Is it possible to get back-issues of the magazine? I had a browse but would
like to print up hard copy of the previous issue.
Thanks in advance
 --Terry

>Hi,
>
>The spring 1999 issue of Csound Magazine is now complete and available at
>the following site:
>
>http://www.werewolf.net/~hljmm/Ezine/
>
>Contents:
>
>Columns
>
>  Beginners: Oscillators by Hans Mikelson
>  Synthesis: Parametric Equation Oscillators by Hans Mikelson
>  Processing: The Talk-Box and Formant Filtering by Hans Mikelson
>  Real-Time: Real-Time Analog Modeling by Hans Mikelson
>  Internals: Adding Opcodes to Csound by Hans Mikelson
>
>Features
>
>  Anything2Score: A Guide for the Perplexed by Dave Phillips
>  Depletion in Within by Grant Chu Covell
>
>Enjoy,
>Hans Mikelson
>Csound Magazine Editor


Terry McDermott

Music Department
School of Arts & Media
Latrobe University
Bundoora, Victoria, 3083
Australia

email: T.McDermott@latrobe.edu.au

Telephone	+61 3 9479 2167
Fax		+61 3 9479 3651




Received: from wallace.maths.bath.ac.uk by omphalos.maths.Bath.AC.UK id aa08194;
          1 Apr 99 11:17 BST
Received: from [144.173.6.14] (helo=exeter.ac.uk)
	by wallace.maths.bath.ac.uk with esmtp (Exim 2.12 #1)
	id 10SeWy-0006ka-00
	for jpff@maths.bath.ac.uk; Thu, 1 Apr 1999 11:17:00 +0100
Received: from noether [144.173.8.10] by hermes via SMTP (LAA02363); Thu, 1 Apr 1999 11:12:26 +0100 (BST)
Received: from exeter.ac.uk by maths.ex.ac.uk; Thu, 1 Apr 1999 11:12:14 +0100
Received: from jaguars-int.cableinet.net [193.38.113.9] by hermes via SMTP (LAA15478); Thu, 1 Apr 1999 11:12:13 +0100 (BST)
Received: (qmail 21686 invoked from network); 1 Apr 1999 09:51:19 -0000
Received: from unknown (HELO cableinet.co.uk) (194.117.146.49)
  by jaguars with SMTP; 1 Apr 1999 09:51:19 -0000
Message-ID: <37034696.3363CFB6@cableinet.co.uk>
Date: Thu, 01 Apr 1999 11:12:38 +0100
From: Richard Dobson 
Organization: Composers Desktop Project
X-Mailer: Mozilla 4.51 [en] (WinNT; I)
X-Accept-Language: en
MIME-Version: 1.0
To: csound@maths.ex.ac.uk
Subject: Re: [PBATISTA@colep.mailpac.pt: Re: neural nets]
References: 
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Sender: owner-csound-outgoing@maths.ex.ac.uk
Precedence: bulk

I haven't actually read all this post yet, but just thought I would
mention the one music-related n-network project I know of: at Bristol
'Digital  Music Research' group, doing feature extraction:


http://www.fen.bris.ac.uk/elec/research/ccr/dmr/news3.html

their site has not been updated for a while, so they may be further on
than they indicate.

I have been passively interested in n-nets ever since I was given the
opportunity to review 'Music and Connectionism'.

I would think Csound is not really ideally suited to ~researching~ n-net
algorithms (or training them), any more than you would want to code an
fft in it step by step; but a fully-trained net implemented as an opcode
should be able to run in Csound on a decent machine. So the interesting
question is - how would that be implemented. It is a plugin opcode, but
with a difference!


Richard Dobson


jpff@maths.bath.ac.uk wrote:
> 
> Message written at 31 Mar 1999 16:26:28 +0530
> 
> ------- Start of forwarded message -------
> Date: 29 Mar 99 08:56 GMT
> Priority: normal
> P1-Message-ID: pt*mailpac*gtw-ms;0922697806/0077436395/1
> Original-Encoded-Information-Types: IA5-Text
> From: Pedro Batista 
> To: j.p.ffitch@maths.bath.ac.uk
> Subject: Re: neural nets
> 
> __________________
> 
> >>do you have any ideas of what exactly you'll use the network for?
> >
> >Good point and maybe it isn't worth the effort although there are some
> >people who claim to be doing some interesting things with them.  Check out
> 
> Surely there are a number of interesting projects around! 

-- 
Test your DAW with my Soundcard Attrition Page!
http://wkweb5.cableinet.co.uk/rwd
CDP homepage: http://www.bath.ac.uk/~masjpf/CDP/CDP.htm