electro-music.org   Dedicated to experimental electro-acoustic
and electronic music
 
 Front Page  |  Radio  |  Forum  |  Media  |  Playlists  |  Wiki
Forum with support of Syndicator RSS
 FAQFAQ   CalendarCalendar   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   LinksLinks
 RegisterRegister   ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in  Chat RoomChat Room 
 Forum index » How-tos
Do you know CAL?
Post new topic   Reply to topic
Page 1 of 1 [15 Posts]
View unread posts
View new posts in the last week
Mark the topic unread :: View previous topic :: View next topic
Author Message
Dovdimus Prime



Joined: Jul 26, 2004
Posts: 664
Location: Bristol, UK
Audio files: 6

PostPosted: Thu Oct 14, 2004 8:29 am    Post subject: Do you know CAL? Reply with quote  Mark this post and the followings unread

Hi all

Can anyone here program CAL, the application language for Cakewalk? I would like to use it to select sections of a piece and apply transformations, e.g. flattening the 7th or whatever. Can it be used for this sort of thing? I just don't want to learn it if it can't do this sort of thing.

Thanks

Dovder

_________________
This message was brought to you from Beyond The Grave.
Back to top
View user's profile Send private message Visit poster's website MSN Messenger
mosc
Site Admin


Joined: Jan 31, 2003
Posts: 18523
Location: Durham, NC
Audio files: 266
G2 patch files: 60

PostPosted: Thu Oct 14, 2004 10:04 am    Post subject: Reply with quote  Mark this post and the followings unread

Use the search function.

Or, click the link below and you'll see that Bachus is pretty much a CAL expert...

http://electro-music.com/forum/topic-2754.html

_________________
--Howard
my music and other stuff
Back to top
View user's profile Send private message Visit poster's website AIM Address
Dovdimus Prime



Joined: Jul 26, 2004
Posts: 664
Location: Bristol, UK
Audio files: 6

PostPosted: Thu Oct 14, 2004 2:25 pm    Post subject: Reply with quote  Mark this post and the followings unread

mosc wrote:
Use the search function.


Err, Christ, that looks pretty complicated. Can you search for, say, any Bs, and then change them to Bflat instead? Still, that's still not quite as easy as having a function where you can change music in any scale straight into music in any other scale.

Might have to hit Bachus up and see if he knows if it can be done...

_________________
This message was brought to you from Beyond The Grave.
Back to top
View user's profile Send private message Visit poster's website MSN Messenger
bachus



Joined: Feb 29, 2004
Posts: 2924
Location: Up in that tree over there.
Audio files: 5

PostPosted: Thu Oct 14, 2004 3:14 pm    Post subject: Reply with quote  Mark this post and the followings unread

Dovdimus Prime wrote:
mosc wrote:
Use the search function.


Err, Christ, that looks pretty complicated. Can you search for, say, any Bs, and then change them to Bflat instead? Still, that's still not quite as easy as having a function where you can change music in any scale straight into music in any other scale.

Might have to hit Bachus up and see if he knows if it can be done...


Sure, CAL could do any of that. I would be surprised if there is not already a CAL routine, somewhere, that will transpose for you. Try some searching on the web. It's a lot more fun to download CAL than to write it Smile

_________________
The question is not whether they can talk or reason, but whether they can suffer. -- Jeremy Bentham
Back to top
View user's profile Send private message Visit poster's website
bachus



Joined: Feb 29, 2004
Posts: 2924
Location: Up in that tree over there.
Audio files: 5

PostPosted: Thu Oct 14, 2004 3:20 pm    Post subject: Reply with quote  Mark this post and the followings unread

Um... what do you want to do that SONAR's builtin transpose function won't already do?
_________________
The question is not whether they can talk or reason, but whether they can suffer. -- Jeremy Bentham
Back to top
View user's profile Send private message Visit poster's website
Dovdimus Prime



Joined: Jul 26, 2004
Posts: 664
Location: Bristol, UK
Audio files: 6

PostPosted: Fri Oct 15, 2004 1:04 am    Post subject: Reply with quote  Mark this post and the followings unread

Hi Bachus

I use Cakewalk 9 rather than one of the Sonar series, so it's possible that the Transpose fucntion doesn't do the same stuff. If memory serves, the Transpose function on the Edit menu does just that - transpose the selection up or down a specified number of semitones. I'll have to look into it. If you can do these kinds of transformations in CAL I think it's worth me learning how to do it, cos I'm always messing around with that sort of thing. I'm halfway nifty in other languages so it shouldn't be too hard, provided I can find a decent tutorial.

Which is what I was going to ask you. Do you know of a decent web resource for learning it? I had a look a couple of months ago and didn't find much, including on the Cakewalk website.

Just an aside. I was talking to my friend Chapman last night who is a computer programmer. I mentioned to him about CAL and that it is a cross between C and LISP and he instantly replied "Why don't they call it 'thee'?"

He's such a wag! Rolling Eyes

_________________
This message was brought to you from Beyond The Grave.
Back to top
View user's profile Send private message Visit poster's website MSN Messenger
bachus



Joined: Feb 29, 2004
Posts: 2924
Location: Up in that tree over there.
Audio files: 5

PostPosted: Fri Oct 15, 2004 4:36 am    Post subject: Reply with quote  Mark this post and the followings unread

Dovdimus Prime wrote:
Hi Bachus

Which is what I was going to ask you. Do you know of a decent web resource for learning it? I had a look a couple of months ago and didn't find much, including on the Cakewalk website.


No, sorry to say, I don't know of any tutorials. I had written many thousands of lines in C and Common Lisp when I started so I had no problems with it, other than its limitations. Must say I don’t see much relation between it and C. A tutorial on lisp or scheme might help you if you are not familiar with this class of languages. But CAL is at best the paraplegic brother of these.

_________________
The question is not whether they can talk or reason, but whether they can suffer. -- Jeremy Bentham
Back to top
View user's profile Send private message Visit poster's website
Dovdimus Prime



Joined: Jul 26, 2004
Posts: 664
Location: Bristol, UK
Audio files: 6

PostPosted: Fri Oct 15, 2004 6:24 am    Post subject: Reply with quote  Mark this post and the followings unread

It's cool, I've found a really good tutorial pdf written by a cheery Dutch chap. Nice one, cheery Dutch chap! Very Happy

Boy, this looks like one cack language! Bizarre syntax, limited flexibility, arbitrary changes between versions. What a joy! Shocked

Think I've got far enough to have a stab at implementing the sort of functions I want to write though. Although the codec will be quite tricky...

_________________
This message was brought to you from Beyond The Grave.
Back to top
View user's profile Send private message Visit poster's website MSN Messenger
Dovdimus Prime



Joined: Jul 26, 2004
Posts: 664
Location: Bristol, UK
Audio files: 6

PostPosted: Sat Oct 16, 2004 2:55 am    Post subject: Reply with quote  Mark this post and the followings unread

Hmmm. I really want to be able to input scales to my function as patterns of intervals, e.g.

101011010101 = ionian

But CAL doesn't do binary variables, and doesn't have any data types big enough to store 12 digit denary numbers!!

Evil or Very Mad Evil or Very Mad Evil or Very Mad Evil or Very Mad Evil or Very Mad

I get the impression from the tutorial I read that frustration is a constant companion of the CAL programmer.

_________________
This message was brought to you from Beyond The Grave.
Back to top
View user's profile Send private message Visit poster's website MSN Messenger
bachus



Joined: Feb 29, 2004
Posts: 2924
Location: Up in that tree over there.
Audio files: 5

PostPosted: Sat Oct 16, 2004 3:44 am    Post subject: Reply with quote  Mark this post and the followings unread

Dovdimus Prime wrote:
I get the impression from the tutorial I read that frustration is a constant companion of the CAL programmer.


Yea, My routines relied heavily on floating point ops and it has only integer arithmetic. So.... you learn to be clever and exercise your vocabulary of curse words.

_________________
The question is not whether they can talk or reason, but whether they can suffer. -- Jeremy Bentham
Back to top
View user's profile Send private message Visit poster's website
mosc
Site Admin


Joined: Jan 31, 2003
Posts: 18523
Location: Durham, NC
Audio files: 266
G2 patch files: 60

PostPosted: Sat Oct 16, 2004 6:50 am    Post subject: Reply with quote  Mark this post and the followings unread

Errr. Hmmm. I haven't used CAL nor do I expect to, but Dovster, if you're just getting started with this, you might take a look at Keykit by our own TJT. It is a great language for doing manipulations on MIDI information. If you want to do things like transpose, invert, and rescaling it's a natural. Keykit is suitable for realtime MIDI processing too.


Keykit was written for algorithmic composition. It is more like C than LISP (fortunately IMHO). Actually, it's more like AWK. It has built in constructs for notes and phrases, The language is very well documented, there are superb tutorials, and there is an email list for support. I've used keykit for years and it is a thing of beauty.

Tim started working on that when he was at Bell Labs, which is known for the C, C++, and AWK languages. I think I'd put Keykit in that list as well, but it's not that well know because of its specialized target application - MIDI music.

It is free too. See: http://nosuch.com/keykit/

I thought I heard that the Cakewalk people are not going to continue with support of CAL. Anywho, if you are going to spend time learing something, you might as well learn something cool and imaginative, not something where you have to expand your vocabulary for more curse words. Laughing

Just my opinion, of course.

_________________
--Howard
my music and other stuff
Back to top
View user's profile Send private message Visit poster's website AIM Address
diskonext



Joined: Aug 26, 2004
Posts: 306
Location: London, UK

PostPosted: Sun Oct 17, 2004 4:22 am    Post subject: Reply with quote  Mark this post and the followings unread

Hmmm,

keykit sounds... interesting. Thanks for that link, checking it out!

For MIDI-mangling you could use PD (pure data) as well, the open-source version of Max/MSP.

Of course, both these methods would force you to play a track in your sequencer, filter it through one of these programs and record to a new track, but they work Wink

If you go the PD route I can hook you up with some examples real quick.

-diskonext

_________________
:wq
Back to top
View user's profile Send private message Visit poster's website
mosc
Site Admin


Joined: Jan 31, 2003
Posts: 18523
Location: Durham, NC
Audio files: 266
G2 patch files: 60

PostPosted: Sun Oct 17, 2004 8:22 am    Post subject: Reply with quote  Mark this post and the followings unread

CAL is dependent on prerecorded MIDI, but Keykit can process the MIDI on the fly in real time. I guess PD would be able to do that as well. In Keykit here is even a nice MIDI echo tool that Tim wrote to some design requests by me. It's great for realtime playing. I don't use it much anymore because I can use the G2 to do those things now.
_________________
--Howard
my music and other stuff
Back to top
View user's profile Send private message Visit poster's website AIM Address
diskonext



Joined: Aug 26, 2004
Posts: 306
Location: London, UK

PostPosted: Sun Oct 17, 2004 11:03 am    Post subject: Reply with quote  Mark this post and the followings unread

Ahem,

and I just found out Jan has written a beatiful tool to do MIDI-mangling and generation:

midimod

http://www.iaf.nl/Users/BlueHell/ goto: Software->MidiMod

Way to go, Jan!

-diskonext

_________________
:wq
Back to top
View user's profile Send private message Visit poster's website
blue hell
Former site admin


Joined: Apr 03, 2004
Posts: 24864
Location: The Netherlands, Enschede
Audio files: 353
G2 patch files: 320

PostPosted: Sun Oct 17, 2004 11:19 am    Post subject: Reply with quote  Mark this post and the followings unread

diskonext wrote:
Ahem,

and I just found out Jan has written a beatiful tool to do MIDI-mangling and generation:

midimod



... ehm ... a sin of youth lets say ... it needs a lot of work to make it ok ... I even managed to mess up the source code for it. A _long_ way to go :-)

If only there could be just a few more hours in a day (without selling my soul for it) ...

Jan.
Back to top
View user's profile Send private message Visit poster's website
Display posts from previous:   
Post new topic   Reply to topic
Page 1 of 1 [15 Posts]
View unread posts
View new posts in the last week
Mark the topic unread :: View previous topic :: View next topic
 Forum index » How-tos
Jump to:  

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum
Log in
Username:     Password:      Log me on automatically each visit    


Forum with support of Syndicator RSS
Powered by phpBB © 2001, 2005 phpBB Group
Copyright © 2003 through 2026 by electro-music.org