Csound Csound-dev Csound-tekno Search About

poscil for FM?

Date1999-08-25 11:37
FromTorsten Anders
Subjectposcil for FM?
Hi,

thought it would be a good idea to use the precise oscillator opcode poscil of
FM, but in fact it is really not, the opcode produces awful distortion or
similar treated in that way. poscil3 is only a little better. Am I missusing it
or is that a bug? 


 sr = 44100
 kr = 44100
 ksmps = 1

 instr 3                         ; works well with old oscili
 idur          = p3
 iamp          = 20000
 ifqc          = cpspch(8.00)
 icar          = 1
 imod          = 2.7
 indx =  4
 ifn            = 1
      kmod      oscili      indx*imod*ifqc, ifqc*imod, ifn        ; modulator
      kenv      linen        iamp, .1, idur, .1            
      a1          oscili      kenv, ifqc*icar+kmod, ifn        ; carrier
                      out            a1
 endin

 instr 4                         ; sounds really bad
 idur          = p3
 iamp          = 20000
 ifqc          = cpspch(8.00)
 icar          = 1
 imod          = 2.7
 indx = 4
 ifn            = 1
      kmod      poscil      indx*imod*ifqc, ifqc*imod, ifn        ; modulator
      kenv      linen        iamp, .1, idur, .1            
      a1          poscil      kenv, ifqc*icar+kmod, ifn        ; carrier
                      out            a1
 endin

BTW: oscil3 seems to interpolate to well, it reduces the signal almost to
sine waves...

instr 5
idur      = p3
iamp      = 20000
ifqc      = cpspch(8.00)
icar      = 1
imod      = 2.7
indx = 4
ifn       = 1
    kmod    oscil3    indx*imod*ifqc, ifqc*imod, ifn     ; modulator
    kenv    linen     iamp, .1, idur, .1       
    a1      oscil3    kenv, ifqc*icar+kmod, ifn     ; carrier
            out       a1
endin

Torsten Anders


Received: from shaun.maths.bath.ac.uk by omphalos.maths.Bath.AC.UK id aa04548;
          25 Aug 99 18:02 BST
Received: from [144.173.6.14] (helo=exeter.ac.uk)
	by shaun.maths.bath.ac.uk with esmtp (Exim 2.12 #1)
	id 11JfXg-0007x7-00
	for jpff@maths.bath.ac.uk; Wed, 25 Aug 1999 17:04:52 +0100
Received: from noether [144.173.8.10] by hermes via SMTP (RAA04950); Wed, 25 Aug 1999 17:01:22 +0100 (BST)
Received: from exeter.ac.uk by maths.ex.ac.uk; Wed, 25 Aug 1999 17:01:09 +0100
Received: from ella.mills.edu [144.91.3.20] by hermes via SMTP (RAA11414); Wed, 25 Aug 1999 17:01:08 +0100 (BST)
Received: (qmail 529282 invoked by uid 1964); 25 Aug 1999 09:01:01 -0700
Date: Wed, 25 Aug 1999 09:01:01 -0700 (PDT)
From: "Matt J. Ingalls" 
To: Rich Weisgerber 
cc: csound@maths.ex.ac.uk
Subject: Re: csound surround module: 8chan decoding
In-Reply-To: <001a01beee8f$702d3ee0$0200a8c0@madgello2>
Message-ID: 
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
Sender: owner-csound-outgoing@maths.ex.ac.uk
Precedence: bulk


im probably not the best to respond to all this, but oh well:

> page 321-322 of "Computer Music" (book) by Dodge & Jerse (ISBN 0-02-864682-7) shows this instead.

wow. im surprised its in there!
> 
> Ambisonics B-format encode:

i might point out that this encode formula is for panning a mono source,
which i am guessing would sound pretty much like a
chowning-type "mover" orchestra...(although you have the speakers
working together rather than just 1 or2)

there are methods to take a mono source and synthesize image "width" - but
maybe someone else would be better to explain this...
> 
> I still don't have a very good handle on what W is, some kind of
>Omnidirectional characteristic, but Huh?

yes - one way to think of it is as 4 microphones stacked on top of each
other: 3 figure of 8s pointed forward, left, and up and one
omni. (basically thats what i soundfield mic does - although i think the
capsules are arranged in a tetragon[or whatever the 4 sided regular
polygon-thing is called] and then does a translation to B-Format)
 > 
 > I imagine further discussion on whether this is accurate belongs in
>sursound list as they Are Ambisonics over there.

it doesnt really occur that much on sursound list (but it should!) - most
of sursound list talk is about recording/etc.. not
synthesis/manipulation/etc

 > They'd probably be able to give us some clues on the licensing aspects
>of this information and how it's used foir what purpose.

as far as i understand, B-format/etc patent has run out and is public
domain - the only current patents exist for converting B-Format into Dolby
Surrond (g-Format)
 > 
-matt



Received: from wallace.maths.bath.ac.uk by omphalos.maths.Bath.AC.UK id aa04604;
          25 Aug 99 18:39 BST
Received: from [144.173.6.14] (helo=exeter.ac.uk)
	by wallace.maths.bath.ac.uk with esmtp (Exim 2.12 #1)
	id 11JfwE-0006T2-00
	for jpff@maths.bath.ac.uk; Wed, 25 Aug 1999 17:30:14 +0100
Received: from noether [144.173.8.10] by hermes via SMTP (SAA13448); Wed, 25 Aug 1999 18:36:35 +0100 (BST)
From: N8pease@aol.com
Received: from exeter.ac.uk by maths.ex.ac.uk; Wed, 25 Aug 1999 18:36:24 +0100
Received: from imo17.mx.aol.com [198.81.17.7] by hermes via ESMTP (SAA01964); Wed, 25 Aug 1999 18:36:23 +0100 (BST)
Received: from N8pease@aol.com
	by imo17.mx.aol.com (mail_out_v22.4.) id 9DJWa09417 (2617)
	 for ; Wed, 25 Aug 1999 13:35:40 -0400 (EDT)
Message-ID: <810b17fc.24f5836b@aol.com>
Date: Wed, 25 Aug 1999 13:35:39 EDT
Subject: Fwd: getting started with Granule
To: csound@maths.ex.ac.uk
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="part1_810b17fc.24f5836b_boundary"
X-Mailer: Windows AOL sub 24
Sender: owner-csound-outgoing@maths.ex.ac.uk
Precedence: bulk


--part1_810b17fc.24f5836b_boundary
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit

Pat-
If I could see what you have been using for igskip and ilength parameters 
that would help troubleshooting, but here's some thoughts:

your source soundfile must be longer than ilength + igskip, be sure to take 
igskip_os into account, this could put you over.

your igskip_os (*offset*) is .005 (sec), if igskip is 0 this might cause 
problems ...?

if that doesn't work, ask again, post the full instrument and the ftable (not 
necessarily the soundfile, but the ftable values) and I'll look more.

also, 64 voices may take a long time to compute (if it doesn't now, when you 
get longer files or more instruments it will).  I've found that using 15 or 
20, or even 10, voices sounds about the same and runs a lot faster.  Even if 
you decide you want a lot of voices in the end, it can make tweaking the 
instrument a lot easier/faster.

Good luck-
nate 




Hi folks
 been using Grain for a while and wanted to try to start to fool with
 Granule for the pitch shift possibilities
 but i keep getting   an illegal combination between   and ilength
 
 asig granule 3000, 64, 1, 0, 0, 3, 0, ?, .005, ?, 0.02, 50, 0.04, 50,
 30, .31
 
 can someone give me an appropriate settings or an idea of the
 relationship?
 thanks >>


--part1_810b17fc.24f5836b_boundary
Content-Type: message/rfc822
Content-Disposition: inline

Return-Path: 
Received: from  rly-yd02.mx.aol.com (rly-yd02.mail.aol.com [172.18.150.2]) by
	air-yd02.mail.aol.com (v60.28) with ESMTP; Tue, 24 Aug 1999 21:31:58
	-0400
Received: from  exeter.ac.uk (hermes.ex.ac.uk [144.173.6.14]) by
	rly-yd02.mx.aol.com (v60.25) with ESMTP; Tue, 24 Aug 1999 21:31:47
	2000
Received: from noether [144.173.8.10] by hermes via SMTP (CAA11031); Wed, 25
	Aug 1999 02:31:02 +0100 (BST)
Received: from exeter.ac.uk by maths.ex.ac.uk; Wed, 25 Aug 1999 02:30:36
	+0100
Received: from mail1.lig.bellsouth.net [205.152.0.55] by hermes via ESMTP
	(CAA10859); Wed, 25 Aug 1999 02:30:35 +0100 (BST)
Received: from bellsouth.net (host-216-78-87-72.gnv.bellsouth.net
	[216.78.87.72])
	by mail1.lig.bellsouth.net (3.3.2/8.9.3) with ESMTP id VAA26049
	for ; Tue, 24 Aug 1999 21:31:04 -0400 (EDT)
Message-ID: <37C371C1.86FE3396@bellsouth.net>
Date: Tue, 24 Aug 1999 21:32:01 -0700
From: patrick pagano 
X-Mailer: Mozilla 4.5 [en] (Win98; I)
X-Accept-Language: en
MIME-Version: 1.0
To: "csound@maths.ex.ac.uk" 
Subject: getting started with Granule
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Sender: owner-csound-outgoing@maths.ex.ac.uk
Precedence: bulk

Hi folks
been using Grain for a while and wanted to try to start to fool with
Granule for the pitch shift possibilities
but i keep getting   an illegal combination between iskip and ilength

asig granule 3000, 64, 1, 0, 0, 3, 0, ?, .005, ?, 0.02, 50, 0.04, 50,
30, .31

can someone give me an appropriate settings or an idea of the
relationship?
thanks
Pat



--part1_810b17fc.24f5836b_boundary--


Received: from shaun.maths.bath.ac.uk by omphalos.maths.Bath.AC.UK id aa04610;
          25 Aug 99 18:39 BST
Received: from [144.173.6.14] (helo=exeter.ac.uk)
	by shaun.maths.bath.ac.uk with esmtp (Exim 2.12 #1)
	id 11Jh1O-00081v-00
	for jpff@maths.bath.ac.uk; Wed, 25 Aug 1999 18:39:38 +0100
Received: from noether [144.173.8.10] by hermes via SMTP (SAA00686); Wed, 25 Aug 1999 18:37:02 +0100 (BST)
Received: from exeter.ac.uk by maths.ex.ac.uk; Wed, 25 Aug 1999 18:36:52 +0100
Received: from agora.stm.it [195.62.32.1] by hermes via ESMTP (SAA00752); Wed, 25 Aug 1999 18:36:46 +0100 (BST)
Received: from agora.stm.it (rm1-422.tiscalinet.it [212.123.79.42]) by agora.stm.it (8.9.2/8.8.5) with ESMTP id TAA09520; Wed, 25 Aug 1999 19:35:18 +0200 (ITADST)
Message-ID: <37C42977.5F18BFC2@agora.stm.it>
Date: Wed, 25 Aug 1999 19:35:51 +0200
From: Gabriel Maldonado 
X-Mailer: Mozilla 4.5 [en] (Win95; I)
X-Accept-Language: en
MIME-Version: 1.0
To: peter@orpheus.selene.cube.net
CC: csound@maths.ex.ac.uk
Subject: Re: new adsynt opcode
References: <9908250812.AA23100@orpheus.selene.cube.net>
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Sender: owner-csound-outgoing@maths.ex.ac.uk
Precedence: bulk

I will put your great opcode in next DirectCsound version,
congratulations!
P.S. How do you intend to continously vary parameters stored in the
table?

Gab


Peter Neubacker wrote:

> I put a version of DirectCsound compiled with my
> new opcodes adsynt and hsboscil for download to:
>
> http://www.harmonik.de/femc/femcdown.html
>
> With DirectCsound, I get about 2000 individual
> sines running with adsynt in realtime...
>
> (Gabriel, could you build them into your release?)
>
> I am preparing an example orchestra!
>
> Peter



Received: from wallace.maths.bath.ac.uk by omphalos.maths.Bath.AC.UK id aa05474;
          26 Aug 99 1:53 BST
Received: from [144.173.6.14] (helo=exeter.ac.uk)
	by wallace.maths.bath.ac.uk with esmtp (Exim 2.12 #1)
	id 11JmiQ-0006eC-00
	for jpff@maths.bath.ac.uk; Thu, 26 Aug 1999 00:44:26 +0100
Received: from noether [144.173.8.10] by hermes via SMTP (BAA03654); Thu, 26 Aug 1999 01:51:06 +0100 (BST)
Received: from exeter.ac.uk by maths.ex.ac.uk; Thu, 26 Aug 1999 01:50:56 +0100
Received: from vcn.bc.ca [207.102.64.2] by hermes via ESMTP (BAA02994); Thu, 26 Aug 1999 01:50:54 +0100 (BST)
Received: from localhost (wfreno@localhost)
	by vcn.bc.ca (8.9.2/8.9.2) with ESMTP id RAA17906
	for ; Wed, 25 Aug 1999 17:50:58 -0700 (PDT)
Date: Wed, 25 Aug 1999 17:50:58 -0700 (PDT)
From: Wayne Freno 
To: Csound List 
Subject: Scores on paper
Message-ID: 
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
Sender: owner-csound-outgoing@maths.ex.ac.uk
Precedence: bulk

I have heard about the importance of having a printed score
if one is going to get one's music either heard or performed
(even tape music I understand) and I am curious about how 
people on the list go about this.  Do any of you use a graphic
representation, (or traditional notation etc), of your csound
scores on paper?

Wayne





Received: from shaun.maths.bath.ac.uk by omphalos.maths.Bath.AC.UK id aa05667;
          26 Aug 99 3:29 BST
Received: from [144.173.6.14] (helo=exeter.ac.uk)
	by shaun.maths.bath.ac.uk with esmtp (Exim 2.12 #1)
	id 11JpHj-0008Ar-00
	for jpff@maths.bath.ac.uk; Thu, 26 Aug 1999 03:29:03 +0100
Received: from noether [144.173.8.10] by hermes via SMTP (DAA06874); Thu, 26 Aug 1999 03:26:09 +0100 (BST)
Received: from exeter.ac.uk by maths.ex.ac.uk; Thu, 26 Aug 1999 03:25:59 +0100
Received: from rothko.bestweb.net [209.94.100.160] by hermes via ESMTP (DAA05886); Thu, 26 Aug 1999 03:25:57 +0100 (BST)
Received: from goodguy ([216.179.14.91])
	by rothko.bestweb.net (8.9.1a/8.9.0) with SMTP id WAA12031
	for ; Wed, 25 Aug 1999 22:25:51 -0400 (EDT)
Message-ID: <37C4A495.3FF3794@westnet.com>
Date: Thu, 26 Aug 1999 02:21:09 +0000
From: Larry Troxler 
X-Mailer: Mozilla 3.01 (X11; I; Linux 2.0.36 i586)
MIME-Version: 1.0
To: csound@maths.ex.ac.uk
Subject: wgpluck : unwanted freq quantization?
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Sender: owner-csound-outgoing@maths.ex.ac.uk
Precedence: bulk

Hi all, it seems that either the wgpluck opcode is not generating the
compensating all-pass filter correctly (I assume that this opcode is a
translation of Perry Cook's pluck instrument), or I am doing some thing
more basically wrong. See the PLUCKM instrument in the following orc,
and let me know if there's anything wrong.

I do think it's some sort of frequency quantization problem, because it
gets worse as the pitch gets higher.

There are more than one opcodes, it seems, for a physically modeled
pluck, so if wgpluck is not the one I should use, let me know, please!
Thanks :-) Really, I'm looking for the equivalent of Cook's pluck
instrument that he included with his C++ toolkit - it generates an
all-pass filter in the feedback loop which implements a
fractional-sample delay, to correct the frequency quantisation which
would otherwise result from using a delay line which is fixed at an
integer number of samples.

Thanks in advance, people!!

~~~~

ksmps = 10
nchnls= 1


#define PLUCKM #1#
#define PLUCK1 #2#

instr $PLUCK1
         aexcite   init 0.0
         a1        wgpluck  p4, 0.4, p5, p6, p7, p8, aexcite
         a2   =    32000 * a1
        out       a2
endin

 
instr $PLUCKM
       aexcite   init 0.0
       inum      notnum
       icps      cpsmidi
       a1       wgpluck icps, 0.3, 0.35, 0.12, 5, 20, aexcite
      out      32000 * a1
endin



Received: from wallace.maths.bath.ac.uk by omphalos.maths.Bath.AC.UK id aa05857;
          26 Aug 99 5:39 BST
Received: from [144.173.6.14] (helo=exeter.ac.uk)
	by wallace.maths.bath.ac.uk with esmtp (Exim 2.12 #1)
	id 11JqEP-0006jQ-00
	for jpff@maths.bath.ac.uk; Thu, 26 Aug 1999 04:29:41 +0100
Received: from noether [144.173.8.10] by hermes via SMTP (FAA03586); Thu, 26 Aug 1999 05:36:49 +0100 (BST)
Received: from exeter.ac.uk by maths.ex.ac.uk; Thu, 26 Aug 1999 05:36:38 +0100
Received: from howl.werewolf.net [12.23.152.10] by hermes via ESMTP (FAA12656); Thu, 26 Aug 1999 05:36:37 +0100 (BST)
Received: from default (dial39.werewolf.net [12.23.153.39])
	by howl.werewolf.net (8.9.0/8.9.0) with SMTP id XAA21073
	for ; Wed, 25 Aug 1999 23:30:53 -0500 (CDT)
Message-ID: <000701beef7d$c6897440$2799170c@default>
From: Hans Mikelson 
To: Csound list 
Subject: Another drum
Date: Wed, 25 Aug 1999 23:45:07 -0500
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,

Here is another drum.  This one is much simpler and should be easier to
modify and play around with, and perhaps sounds fatter.  It basically takes
noise, sweeps a resonant low-pass filter over it, sweeping both frequency
and resonance with exponential envelopes, applies an amplitude envelope and
finally applies compression/limiting.  The p-fields should be useful for
generating a variety of sounds.  Try changing the limiting curve for more or
less compression.

Happy Csounding,
Hans Mikelson

; ORC
;---------------------------------------------------------
; Kick Drum
; Coded by Hans Mikelson August 25, 1999
;---------------------------------------------------------
sr      =        44100                      ; Sample rate
kr      =        44100                      ; Kontrol rate
ksmps   =        1                          ; Samples/Kontrol period
nchnls  =        2                          ; Normal stereo
        zakinit  50,50                      ; May need this later

;---------------------------------------------------------
; Kick Drum 1
;---------------------------------------------------------
       instr     10

idur   =         p3                         ; Duration
iamp   =         p4                         ; Amplitude
iacc   =         p5                         ; Accent
irez   =         p6                         ; Resonance

kfenv  expseg    1500*iacc,  .04, 200, .04, 120, idur-.04, 40 ; Freq
Envelope
krenv  expseg    .7,  idur, 1                                 ; Q Envelope
kaenv  expseg    .1, .001, 1, .02, 1, .04, .7, idur-.062, .7  ; Amp Envelope
kdclck linseg    0, .002, 1, idur-.004, 1, .002, 0            ; Declick
asig   rand      2                                            ; Random
number
; I use rand 2 to rely on moogvcf built in limiter

aflt   moogvcf   asig, kfenv, irez*krenv         ; Moog filter

aout1  =         aflt*kaenv*3                    ; Scale the sound

krms   rms       aout1, 1000                     ; Limiter, get rms
klim   table3    krms*.5, 5, 1                    ; Get limiting value
aout   =         aout1*klim*iamp*kdclck          ; Scale again and ouput

       outs      aout, aout                      ; Output the sound

       endin

; SCO
f1 0 65536 10 1
f5 0 1024 -8 1 256 1 256 .7 256 .1 256 .01 ; Compression/Limiting curve

;    Sta   Dur  Amp    Accent  Q
i10  0.0   .18  24000  1       1.2
i10  0.5   .    .      .8      1.5
i10  1.0   .    .      .5      1.8
i10  1.5   .    .      .4      2.2

i10  2.0   .18  24000  1       1.2
i10  2.5   .    .      .8      1.5
i10  3.0   .    .      .5      1.8
i10  3.75  .    .      .4      2.2
i10  3.5   .    .      .4      2.2

i10  4.0   .18  24000  1       1.2
i10  4.5   .    .      .8      1.5
i10  5.0   .    .      .5      1.8
i10  5.5   .    .      .4      2.2

i10  6.0   .18  24000  1       1.2
i10  6.5   .    .      .8      1.5
i10  7.0   .    .      .5      1.8
i10  7.75  .    .      .4      2.2
i10  7.5   .    .      .4      2.2