| Charles Baker wrote:
> I personally found Dick Moore's "Mathematics of signal processing"
> article and *especially also* the Julius O. Smith Digital Filter theory
> article that follows
> in that book to be key in developing what understanding I have of
> D.S.P..
> ( my main background was as a performing classical musician and
> composer who used software synthesis languages )
> If (as has been said on this list ) this book is out of print, it is a
> shame.
It is out of print. I have been looking for it for a while. However,
the majority of articles in the book (Moore's "Mathematics of signal
processing," Moorer's "Signal Processing aspects of computer music - a
survey," Smith's "Introduction to Digital Filter Theory," Gordon and
Strawn's "An introduction to the phase vocoder") are available from
CCRMA (http://ccrma-www.stanford.edu/CCRMA/Overview/publications.html),
in nicely bound photocopy editions. The article on spiral synthesis is
missing, but since I have never found the Strawn book, I have no idea
what spiral synthesis is. I am going to pick up the above articles at
Stanford when I am in the Bay Area later this week; you can also order
them by email. Versions of most of the above articles can be found
elsewhere (Moore's in the first volume of Computer Music Journal,
Moorer's in the Proceedings of the IEEE, and an abridged version of
Smith's article in The Music Machine), but the phase vocoder info is
only available in the book and from CCRMA.
Sean Costello
Received: from shaun.maths.bath.ac.uk by omphalos.maths.Bath.AC.UK id aa16769;
17 Mar 99 19:10 GMT
Received: from [144.173.6.14] (helo=exeter.ac.uk)
by shaun.maths.bath.ac.uk with esmtp (Exim 1.92 #2)
for jpff@maths.bath.ac.uk
id 10NLhn-0003nO-00; Wed, 17 Mar 1999 19:10:15 +0000
Received: from noether [144.173.8.10] by hermes via SMTP (TAA06454); Wed, 17 Mar 1999 19:06:51 GMT
Received: from exeter.ac.uk by maths.ex.ac.uk; Wed, 17 Mar 1999 19:06:39 GMT
Received: from jaguars-int.cableinet.net [193.38.113.9] by hermes via SMTP (TAA06634); Wed, 17 Mar 1999 19:06:38 GMT
Received: (qmail 15628 invoked from network); 17 Mar 1999 19:03:06 -0000
Received: from unknown (HELO cableinet.co.uk) (194.117.146.19)
by jaguars with SMTP; 17 Mar 1999 19:03:06 -0000
Message-ID: <36EFFE93.16DE51E5@cableinet.co.uk>
Date: Wed, 17 Mar 1999 19:12:19 +0000
From: Richard Dobson
Organization: Composers Desktop Project
X-Mailer: Mozilla 4.5 [en] (WinNT; I)
X-Accept-Language: en
MIME-Version: 1.0
To: csound@maths.ex.ac.uk
Subject: Re: Linear Prediction in Csound
References: <002d01be7012$53c51620$79d496c0@Realizer.ngt.sungard.com>
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Sender: owner-csound-outgoing@maths.ex.ac.uk
Precedence: bulk
It's very simple, in fact: the particular subformat of
WAVE-FORMAT-EXTENSIBLE (a structure starting with the usual WAVEFORMATEX
elements) is identified by a GUID* - so one just has to define one for
the new format, and announce it to the world. I plan to do just this
soon (if nobody else does it first!), for the Ambisonic B-Format.
Strictly speaking it can't fit into the mainstream WAVE-EX because the
four (possibly six) channels are not speaker feeds.
Several concrete examples are given in the Microsoft document (latest
version is now on my website).
*For anyone who doesn't know:
GUID: a 128-bit Globally Unique IDentifier.
Richard Dobson
Michael Gogins wrote:
>
> The XML format is, by definition, extensible and is, with careful naming of
> tags, to a certain degree self-documenting. If Microsoft has created an
> extensible WAV chunk system that does not require pre-registration, then
> that is a big plus that should be seriously considered. Could you briefly
> explain how it works?
>
--
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
Received: from shaun.maths.bath.ac.uk by omphalos.maths.Bath.AC.UK id aa16840;
17 Mar 99 19:46 GMT
Received: from [144.173.6.14] (helo=exeter.ac.uk)
by shaun.maths.bath.ac.uk with esmtp (Exim 1.92 #2)
for jpff@maths.bath.ac.uk
id 10NMGe-0003oX-00; Wed, 17 Mar 1999 19:46:16 +0000
Received: from noether [144.173.8.10] by hermes via SMTP (TAA05242); Wed, 17 Mar 1999 19:39:43 GMT
Received: from exeter.ac.uk by maths.ex.ac.uk; Wed, 17 Mar 1999 19:39:32 GMT
Received: from exim@wallace.maths.bath.ac.uk [138.38.100.104] by hermes via ESMTP (TAA13329); Wed, 17 Mar 1999 19:39:31 GMT
Received: from [138.38.97.36] (helo=maths.Bath.AC.UK ident=mmdf)
by wallace.maths.bath.ac.uk with smtp (Exim 1.92 #2)
id 10NMA2-0007EN-00; Wed, 17 Mar 1999 19:39:26 +0000
From: jpff@maths.bath.ac.uk
To: sonicman001@att.net, csound@maths.ex.ac.uk
Subject: Re: Okay, now your fav' MATH books survey!
Date: Wed, 17 Mar 99 19:39:24 GMT
Source-Info: From (or Sender) name not authenticated.
Message-Id:
Sender: owner-csound-outgoing@maths.ex.ac.uk
Precedence: bulk
My favourite Mathematics books are probable
Apostol -- Mathematical Analysis
Hardy and Wright -- The Theory of Numbers
Kelley -- General Toplogy
Dirac -- Introduction to Quantum Mechanics
Minsky -- Finite and Infinite Machines (almost)
at least in the learning area. For real mathematics very little beats
Charles Delaunay's Theorie du Mouvement de la Lune. I never managed
tp read beyond chapter 2 or 3, but it is a lovely book. I still have
Principia Mathematica on my shelves but it is hard going.
None of these seem very useful for music though.......
==John ff
Received: from shaun.maths.bath.ac.uk by omphalos.maths.Bath.AC.UK id aa17413;
17 Mar 99 23:37 GMT
Received: from [144.173.6.14] (helo=exeter.ac.uk)
by shaun.maths.bath.ac.uk with esmtp (Exim 1.92 #2)
for jpff@maths.bath.ac.uk
id 10NPs6-0003sw-00; Wed, 17 Mar 1999 23:37:10 +0000
Received: from noether [144.173.8.10] by hermes via SMTP (XAA02319); Wed, 17 Mar 1999 23:33:29 GMT
Received: from exeter.ac.uk by maths.ex.ac.uk; Wed, 17 Mar 1999 23:33:17 GMT
Received: from jaguars-int.cableinet.net [193.38.113.9] by hermes via SMTP (XAA18228); Wed, 17 Mar 1999 23:33:16 GMT
Received: (qmail 753 invoked from network); 17 Mar 1999 23:29:40 -0000
Received: from unknown (HELO cableinet.co.uk) (194.117.146.203)
by jaguars with SMTP; 17 Mar 1999 23:29:40 -0000
Message-ID: <36F03D0D.1B821A67@cableinet.co.uk>
Date: Wed, 17 Mar 1999 23:38:53 +0000
From: Richard Dobson
Organization: Composers Desktop Project
X-Mailer: Mozilla 4.5 [en] (WinNT; I)
X-Accept-Language: en
MIME-Version: 1.0
To: csound
Subject: Bug-report and fix (was: Frequency Shifting & Hilbert Transforms)
References: <36E4BD02.565BF559@seanet.com> <36E8F70E.1B47218A@apas.no>
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Sender: owner-csound-outgoing@maths.ex.ac.uk
Precedence: bulk
It's just one of those things; I decide to run someone's orc, after a
~looong~ time of not doing such a thing... and I find a weee buglet.
If ksamps divides exactly into the number of samples in the infile,
diskin blows up. The fix is happily simple:
at the very end of the function soundinew() in diskin.c,
the block of code following the label 'filend' needs to be wrapped in
the test:
if(ntogo > 0) {
...
}
and all is well with the world.
The great musician and human being Yehudi Menuhin passed away last week
- I have only just heard about it. My father worked with him for most of
his professional life. We shall not see his like again. If it were a
practical thing, I would ask for a minute's internet silence.
Richard Dobson
--
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
Received: from shaun.maths.bath.ac.uk by omphalos.maths.Bath.AC.UK id aa17616;
18 Mar 99 0:52 GMT
Received: from [144.173.6.14] (helo=exeter.ac.uk)
by shaun.maths.bath.ac.uk with esmtp (Exim 1.92 #2)
for jpff@maths.bath.ac.uk
id 10NR2e-0003wi-00; Thu, 18 Mar 1999 00:52:08 +0000
Received: from noether [144.173.8.10] by hermes via SMTP (AAA05262); Thu, 18 Mar 1999 00:51:08 GMT
Received: from exeter.ac.uk by maths.ex.ac.uk; Thu, 18 Mar 1999 00:50:57 GMT
Received: from ella.mills.edu [144.91.3.20] by hermes via SMTP (AAA00815); Thu, 18 Mar 1999 00:50:55 GMT
Received: (qmail 2155699 invoked by uid 1964); 17 Mar 1999 16:50:22 -0800
Date: Wed, 17 Mar 1999 16:50:22 -0800 (PST)
From: "Matt J. Ingalls"
To: Richard Dobson
cc: csound
Subject: Re: Bug-report and fix (was: Frequency Shifting & Hilbert Transforms)
In-Reply-To: <36F03D0D.1B821A67@cableinet.co.uk>
Message-ID:
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
Sender: owner-csound-outgoing@maths.ex.ac.uk
Precedence: bulk
this fix probably needs to be in soundin as well - as that part of code is
directly lifted from soundin.
-matt
On Wed, 17 Mar 1999, Richard Dobson wrote:
> It's just one of those things; I decide to run someone's orc, after a
> ~looong~ time of not doing such a thing... and I find a weee buglet.
>
> If ksamps divides exactly into the number of samples in the infile,
> diskin blows up. The fix is happily simple:
>
> at the very end of the function soundinew() in diskin.c,
> the block of code following the label 'filend' needs to be wrapped in
> the test:
>
> if(ntogo > 0) {
> ...
>
> }
>
> and all is well with the world.
>
> The great musician and human being Yehudi Menuhin passed away last week
> - I have only just heard about it. My father worked with him for most of
> his professional life. We shall not see his like again. If it were a
> practical thing, I would ask for a minute's internet silence.
>
>
>
> Richard Dobson
>
>
>
> --
> 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
>
Received: from wallace.maths.bath.ac.uk by omphalos.maths.Bath.AC.UK id aa18571;
18 Mar 99 10:27 GMT
Received: from [144.173.6.14] (helo=exeter.ac.uk)
by wallace.maths.bath.ac.uk with esmtp (Exim 1.92 #2)
for jpff@maths.bath.ac.uk
id 10Na1F-0007h8-00; Thu, 18 Mar 1999 10:27:17 +0000
Received: from noether [144.173.8.10] by hermes via SMTP (KAA06660); Thu, 18 Mar 1999 10:06:19 GMT
Received: from exeter.ac.uk by maths.ex.ac.uk; Thu, 18 Mar 1999 10:06:01 GMT
Received: from hawk.glasnet.ru [193.124.5.50] by hermes via ESMTP (KAA09650); Thu, 18 Mar 1999 10:05:55 GMT
Received: from mail.glasnet.ru([193.124.5.37]) (3698 bytes) by hawk.glasnet.ru
via sendmail with P:esmtp/R:inet_hosts/T:inet_zone_smtp
(sender: )
id
for ; Thu, 18 Mar 1999 13:04:14 +0300 (WSU)
(Smail-3.2.0.104 1998-Nov-20 #2 built 1998-Nov-27)
Received: from default(src addr [195.218.251.124]) (3329 bytes) by mail.glasnet.ru
via sendmail with P\:esmtp/R:smart_host/T:smtp
(sender: )
id
for ; Thu, 18 Mar 1999 13:04:06 +0300 (WSU)
(Smail-3.2.0.96 1997-Jun-2 #11 built DST-Aug-25)
Message-Id:
From: Sergey Batov
To: csound@maths.ex.ac.uk
MMDF-Warning: Parse error in original version of preceding line at UK.AC.Bath.maths.omphalos
Subject: pitch in K-S algorithm
Date: Thu, 18 Mar 1999 13:05:00 +0300
X-MSMail-Priority: Normal
X-Priority: 3
X-Mailer: Microsoft Internet Mail 4.70.1155
MIME-Version: 1.0
Content-Type: text/plain; charset=KOI8-R
Content-Transfer-Encoding: 7bit
Sender: owner-csound-outgoing@maths.ex.ac.uk
Precedence: bulk
Hi, Csounders!
Excuse me for a big message, I just supposed that the attachments are not
good for everyone (?).
Here are two examples of Karplus Strong Algorithm (from List).
It seems that the pitches of notes are good enough in first example ,
but not in second example. Why?
In the beginning I thought that this is because of LPF y[n]=(x[n]+x[n-1])/2
in the second example, but using the 'tone' brings worst results.
May be the pair "delayr - delayw" works more exactly than "delay"?
BTW, LPF from second ex. works good in the first ex.
Does anybody know what is characteristics of this filter (cutoff frequency,
e.t.c.)?
Thanks,
Sergey Batov batov@glasnet.ru
;========= K-S_ex1.orc ===========
sr = 44100
kr = 4410
ksmps = 10
nchnls = 1
; Karplus Strong Algorithm Demonstration
instr 1
icps = cpspch(p5) ;desired pitch in PCH
asig init 0 ;initialize asig variable
kcount init 1/icps*kr ;and loop counter (see below)
;------- use a delay line of length 1/cps:
adel delayr 1/icps ;delay of 1/cps seconds
asig tone adel,sr/2 ;filter the output
;- but at the first k, fill the delay line with noise:
if (kcount < 0) kgoto continue ;skip over after line filled
kloop: ;loop to fill delay
asig rand p4,-1 ;with white noise
kcount = kcount - 1 ;decrement loop counter
;-------------------------------------------------
continue:
delayw asig ;delay line input (always get here)
if (kcount >= 0) kgoto kloop ;loop only kcount times at start
out asig
endin
;============ end of K-S_ex1.orc ===================
;================ K-S_ex1.sco ==============================
;Test score for Karplus Strong Demo Instrument
i1 1 5 30000 7.00
i1 7 5 30000 7.04
i1 13 5 30000 7.07
i1 19 5 30000 8.00
i1 25 5 30000 8.04
i1 31 5 30000 8.07
i1 37 5 30000 9.00
i1 43 5 30000 9.04
i1 49 5 30000 9.07
e
;============ end of K-S_ex1.sco ======================
THE SECOND EXAMPLE:
; Karplus.orc
;Simple versions of the Karplus Strong Algorithm
sr=44100
kr=4410
ksmps=10
nchnls=1
;The Karplus-Strong Plucked String
instr 1
afeedback init 0
anoise=0
ipitch=cpspch(p4)
ilooptime = 1/cpspch(p4)
iamp=p5
krandenv linseg 1, ilooptime, 1, 0, 0, p3-ilooptime, 0
anoise rand krandenv
a2 delay afeedback+anoise,ilooptime
a3 delay1 a2
afeedback=(a2+a3)*.5
;afeedback tone a2,sr/2
out a2*iamp
endin
; Karplus.sco
i1 1 5 7.00 5000
i1 7 5 7.04 5000
i1 13 5 7.07 5000
i1 19 5 8.00 5000
i1 25 5 8.04 5000
i1 31 5 8.07 5000
i1 37 5 9.00 5000
i1 43 5 9.04 5000
i1 49 5 9.07 5000
f 0 55
e
|