Page 1 of 2

Which Midi Sequencer

Posted: Mon Feb 24, 2014 8:48 pm
by cianoc
I want a midi sequencer that is really good at midi.

For the most part my synths are either external to my computer, or custom synths built in SuperCollider, CSound. So while I need plugins in my DAW for mixing/processing, I don't really need it in my sequencer (it would be nice, but).

Instead I want a sequencer that does midi editing really well. CC curves, transposing, ghost notes - all that stuff. The ability to mix time signatures in a song. Groove options. Ideally a note view, as well as piano roll and drum options. Multiple midi routing options. OSC would be a nice to have, but isn't essential. In many ways I guess I want a midi sequencer from the old Atari ST/Amiga days.

Then the plan would be feed audio, using Jack, into Ardour. And maybe host any plugins required in external hosts and route using Jack.

Is this crazy, and if not, does such a sequencer exist. Rosegarden is the closest that I can find. Am I missing something.

And Dave Phillips. I am considering that DOSEmu option you highlighted in a recent post.

Re: Which Midi Sequencer

Posted: Tue Feb 25, 2014 11:28 am
by StudioDave
cianoc wrote:... In many ways I guess I want a midi sequencer from the old Atari ST/Amiga days....Dave Phillips. I am considering that DOSEmu option you highlighted in a recent post.
You might find something here:

http://tamw.atari-users.net/timidi.htm

Most (all?) of the software listed will run under the STEEM emulator. Timing isn't all that great but you'll be able to run the original Atari version of MT Pro. :)

Let me know if you should ever want to try the DOSemu/SequencerPlus option, I'll help as much as I can.

Best,

dp

Re: Which Midi Sequencer

Posted: Tue Feb 25, 2014 5:32 pm
by pinellos
SORRY IF THIS IS OT BUT...
Hi Cianoc, i see you are using SuperCollider and Csound.... can we have your opinion about + and - for any language? What is more useful to do what? I've tried also Puredata and my 2 cents are:

- Supercollider: modern and object oriented language like ex. Java, class and methos like "SinOsc.ar(440).play" (it play a sinewave at 440hz)... great for people who came from hard-core-programming enviroment, maybe too hard to learn for a pure musician... great server-client structure, maybe too complex for an ordinary use... documentation: perfect, CTRL-D save me a lot of time. GUI support is fantastic and make easy to build complex interfaces. Under MAC OSX u can export your projects as stand-alone app or VST.

- CSound: old school language like C and Assembly, the projects are made of 2 files, the orchestra (that contains the synthdef and the instruments) and the score (that plays them). The main PLUS for CSound is (i think) the "double precision sample" feature, and the general quality of the sound generated by the OpCodes (the digital OSC, like SinOsc for SC). I think CSound is great to prototype audio plugins, and u can make esally them whit Cabbage enviroment. Great language, best audio quality, but not for pure musicians. GUI are easy to build like SC.

- Puredata: visual language, u can put blocks like "osc~" or "random" or "note" and patch them using the mouse. (apparently) very easy to learn, puredata is a fantastic enviroments that requires only a logical approach to the problem: you don't have to learn 10000 different types of classes to build a sequencer, just use and patching box the correct inlets/outlets. The difference is: in Supercollider i can (for example) make a random number in a range whit "rand(22-34)".... in puredata, to make this, i have to connect the "random" box (that generates ONLY random numbers from 0 to ..) to another box that sum 22 to the output of the random box, and etc etc....: it make more difficult to make EASY things, but easier to make COMPLEX projects. Great fot people that hate code and [*+-/];{..,..}blabla.... but u CANNOT easilly build standalone programs whit puredata (u can whit MAX, but is commercial).

(sorry for this OT but i don't know where posting this - and sorry for my english, the italian school is so poor in English....)

Re: Which Midi Sequencer

Posted: Tue Feb 25, 2014 8:40 pm
by nbd
Way back when I was hoping to find a proper MIDI capable old-school type tracker, I think Tutka was the closest match. It had even JACK support. Nowadays the situation might be slightly better. At least the midi routing options could be handled externally (carla for instance)

From time to time I tend to browse this page and check latest development in this area: http://wiki.linuxaudio.org/apps/categories/trackers

Actually I'm going to check this out right now: https://bitbucket.org/paniq/jacker/wiki/Home

Re: Which Midi Sequencer

Posted: Wed Feb 26, 2014 1:31 am
by StudioDave
Greetings,

I'm not cianoc but I also know the systems you mentioned.
pinellos wrote:Supercollider: modern and object oriented language like ex. Java...
Indeed. SC is an OO language through & through. Any background in OOP is huge plus when it comes to working with SC3.
... maybe too hard to learn for a pure musician...
Never met one yet. :)
great server-client structure, maybe too complex for an ordinary use... documentation: perfect, CTRL-D save me a lot of time. GUI support is fantastic and make easy to build complex interfaces. Under MAC OSX u can export your projects as stand-alone app or VST.
Some work was going on recently to provide a similar standalone mechanism for Linux SC but I don't know how far along it got. Docs are great, and the scide is another great benefit of the system. The GUI components are integrated better in SC than in Csound, IMO.
CSound: old school language like C and Assembly
More like FORTRAN and assembly. The "C" in Csound refers to the source code.
...the projects are made of 2 files, the orchestra (that contains the synthdef and the instruments) and the score (that plays them).
Modern usage prefers the CSD file format, it includes orc and sco components in a single file. However, they are still separate sections of the file. The CSD format provides other benefits not available to the orc/sco format.
... The main PLUS for CSound is (i think) the "double precision sample" feature, and the general quality of the sound generated by the OpCodes...
Agree++

Csound is capable of awesome sounds. I can't get enough of it:

https://soundcloud.com/davephillips69/s ... rks-by-dlp

See esp. Vespers and Alba.
I think CSound is great to prototype audio plugins, and u can make esally them whit Cabbage enviroment.
Cabbage rocks. I think it will become the gateway for many introductions to Csound's powers.
... Great language, best audio quality, but not for pure musicians. GUI are easy to build like SC.
There's those "pure musicians" again. :) You mean like Elliott Carter and Tristan Murail ? ;) (Just kidding here.)

The "easy GUI" statement needs some clarification. GUIs for Csound are easily built if you use Andres Cabrera's CsoundQt, not so easy if you use the built-in FLTK opcodes. As I mentioned, IMO SC's graphics are 'way better implemented.

But Csound is my favorite. I use it frequently, primarily through the AVSynthesis program.
Puredata: visual language... (apparently) very easy to learn... a fantastic enviroment...
Indeed it is. And I agree that creating complex instruments is easier on Pd than in the other two languages.

Regarding (glibly) all three systems: SC3 strikes me as a COMPUTER music language, Csound strikes me as a computer MUSIC language, and Pd is somewhere in-between. IMO all are relatively easy to learn - none have been designed to be intentionally difficult - and each has its strengths and weaknesses. I rarely use SC on its own - I like the FScape and MEAPsoft programs, they require SC but don't require that the user code in it (though there's more power available to those who can). Ditto for Csound - though I have the background for using it at the CLI these days I prefer the facility offered by AVSynthesis, blue, CsoundQt, Cabbage, etc. Both systems are rich in support software. Pd benefits more from its association with MAX/MSP, and many patch authors compose their works to run in Pd and MAX.

All three systems are well-documented, with many on-line text & video tutorials, and with whole books dedicated to each. No-one learning these systems can cry "Foul!" wrt documentation. Most tutorials explore the synthesis aspects of these systems but they all include components more relevant to composition.

Other good systems to consider include RtCmix, CM/Grace, and OpenMusic. The last two are especially rich in composition-oriented features.

Apologies if all this is already known to you.

HTH,

dp

Re: Which Midi Sequencer

Posted: Wed Feb 26, 2014 3:59 am
by cianoc
I have a degree in Computer Science and know about a dozen computer languages, so I'm probably the last person to ask whether a language is easy or hard. That said, I know several pure musicians who learnt to code in SuperCollider and who are very good at it now. There are some excellent resources available for it (if interested, I'll point you in the direction of a great tutorial which is very reasonably priced). In my opinion SuperCollider is a very well designed language, with a lot of flexibility and power that suits musicians. I don't like the language of CSound much. I think its dated, verbose and ugly (sorry Dave). That's only my opinion, and if you like CSound there is a lot to be said for it.

So I'm very biased. I use SuperCollider 95% of the time.

The things I like about SuperCollider:
1. Amazing sequencing abilities. If you want to write a tune it can be a little irritating (hence the request above - visual is good sometimes), but if you want to do complicated musical manipulations of musical notes, or any other musical data you can think of, SuperCollider is amazing. Some people simply use it for MIDI mangling. Not only is it powerful, but once you get your head around it the sequencing stuff is very readable and understandable.

2. It's a language that was written for real time synthesis. This means that you can improvise music in a way I find very creative. You can change patches while they're playing, connect them to different patches, modulate them from a GUI that you created dynamically. It's hard to describe, but it is wonderful. Dealing with soft synths just feels so painful in comparison.

3. It has a lot of really good abstractions. Whether it's the bus system for connecting patches, or the fact that creating an additive synthesizer is a couple of lines of code. It just allows you to do powerful stuff quickly and easily. That said, there is a learning curve in order to access this stuff.

It also as Dave says has a good IDE, a reasonable GUI system built in (and you can do stuff like tell it to dynamically create a GUI for a synthesizer that you just defined). OSC is very easy with SuperCollider, and MIDI is pretty good with some work. It works very well with Jack (I often will create multiple channels and just feed them in as separate tracks into Ardour). I don't know of any direct comparisons of SuperCollider sound quality vs CSound. However SuperCollider is very good indeed. The designer made some very smart decisions about things like interpolation, which result in a very clean sound. CSound may have the edge because of the 64bit sound (this is supposed to be coming to SuperCollider, but progress is slow), but I don't think you'd notice. The real limit is Nyquist, and that's an issue for any digital system.

Things I like about CSound. It has more developers. This means that if you want to use a synthesis technique, someone will have developed an opcode for it. SuperCollider has a LOT, but CSound has probably more than any on the planet. If you're not doing synthesis in real time (maybe because your piece is particularly demanding), it's easier to do in CSound as it was really designed for that originally. You can do it in SuperCollider, but it's annoying. There's a lot more documentation for CSound (though the documentation for SuperCollider is generally pretty good, and the mailing list is very helpful).

I hate PureData, never been able to use it for more than a few minutes without getting annoyed. I find the diagrams confusing and unwieldy. Creating a patch that would take me 30 minutes in SuperCollider, seems to take forever in PureData. Everyone I know who uses them find changing a patch extremely painful (and have an aversion to it), whereas in SuperCollider/CSound that's trivial. And there are things that you simply cannot do in PureData, that you can do quite easily in CSound/SuperCollider. However lots of people love it. You may too.

I haven't used Grace/CM/Open Music, but I agree with Dave. They look pretty incredible for composition, but are less powerful for synthesis maybe.

I would suggest looking at the documentation for all three, and pick the one that feels the most natural. PureData may be the easiest for the novice, particularly if synthesis concepts are unfamiliar. However if you ever find yourself getting frustrated with it, consider one of the programming languages.

Re: Which Midi Sequencer

Posted: Wed Feb 26, 2014 4:02 am
by cianoc
Regarding (glibly) all three systems: SC3 strikes me as a COMPUTER music language, Csound strikes me as a computer MUSIC language, and Pd is somewhere in-between.
You know it's funny, but I have exactly the opposite opinion. I wonder how much of this is familiarity.

Re: Which Midi Sequencer

Posted: Wed Feb 26, 2014 11:41 am
by StudioDave
cianoc wrote:
Regarding (glibly) all three systems: SC3 strikes me as a COMPUTER music language, Csound strikes me as a computer MUSIC language, and Pd is somewhere in-between.
You know it's funny, but I have exactly the opposite opinion. I wonder how much of this is familiarity.
I'm sure it's a major factor. I started using Csound in 1989, at the CLI, when it had about a thousand fewer opcodes. :) Not being able to afford a Mac meant that for me SC had to wait until JM's decision to open-source it. By then I was already familiar with Csound, and I had not yet learned Lisp.

Btw, I agree in principle re: Csound's language elements, but I wouldn't call it ugly. It's like me, *old*, and it shows its age at that level. However, using AVSynthesis removes me from operations at that level now, and I do think Csound's audio quality is delicious. I also agree that SC's audio is very good, very clean, but I've yet to hear anything from the SC community that really blows my mind for richness of sound (I'm tempted to refer to the more well-represented "glitchness"). Would love to hear otherwise though. (And I must add that William Mox Drossard's SC-based music definitely moves me.)

A young person studying computer science will find SC a good fit to current studies. One studying music might feel that Csound's more direct style suits his or her aims. Just a thought.

We also kind of skimmed the differences re: performance. SC is far better for live coding, improvisation, and algorithmic work. Very powerful in those domains, but it is definitely the weaker language for NRT work, and I must say that I was disappointed by its tools for working out of realtime (viz the CTK).

In the end, all these environments and systems are filled with wonderful tools awaiting only the imagination and skill of the user. I began using computers for music in 1986, I just can't find a lot to really complain about these days. :)

Btw, I enjoyed your response to the OP. Not many folks around with that much experience with the languages.

Best,

dp

Re: Which Midi Sequencer

Posted: Wed Feb 26, 2014 11:48 am
by StudioDave
re: SC3
cianoc wrote: 2. It's a language that was written for real time synthesis... This means that you can improvise music in a way I find very creative. You can change patches while they're playing, connect them to different patches, modulate them from a GUI that you created dynamically. It's hard to describe, but it is wonderful. Dealing with soft synths just feels so painful in comparison.
Had to nod and smile at that last line. So true !

Best,

dp

Re: Which Midi Sequencer

Posted: Wed Feb 26, 2014 12:02 pm
by pinellos
cianoc wrote: I find the diagrams confusing and unwieldy. Creating a patch that would take me 30 minutes in SuperCollider, seems to take forever in PureData. Everyone I know who uses them find changing a patch extremely painful (and have an aversion to it), whereas in SuperCollider/CSound that's trivial.
Agree: in puredata u can have patches whit a lot of (a LOT) of connections, and If u want to change something, probably u have to delete ANY single cable connection and re-patch them in to the new position: maybe an half hour of stupid “clik-DEL-reclick” work… in SC I can make this in one second… OK, BUT it’s equally true that if u have a bit of experience in pd, your work will be designed properly whit use of subpatches and abstractions and canvas, that help u to maintain order and make easy to do changes….
Things I cannot understand in pd : why there is no grid to lock objects and wires???????? The auto – align option is ridicolous (auto align…. Where??????? All the box in the top right edge of the scree???? WHY????) and u maybe will spend a lot of your time moving objects and wires whit the mouse instead of programming synth and sequencers….
However, pd is great precisely for his visual approach that make easy to approach them for people who don’t have any programming-background….
I was a bit 'skeptical about pd’s sound capabilities and final audio quality, and the general idea about this (in comparison to SC od Csound) is that pd want more system resources to have a decent sound, but I’ve heard some works - all made in pd- and the general quality of the sound is amazing – I think, as said, the real limit is Nyquist.
Good night and sorry for my english .

Re: Which Midi Sequencer

Posted: Wed Feb 26, 2014 1:07 pm
by StudioDave
Greetings,

Should also have mentioned ChucK and JMSL. Good stuff there too.

http://chuck.cs.princeton.edu/

http://www.algomusic.com/jmsl/

And the URL for the excellent RtCmix :

http://rtcmix.org/

Best,

dp

Re: Which Midi Sequencer

Posted: Wed Feb 26, 2014 3:58 pm
by cianoc
I'd add the extempore language for music composition (not used, early days, lacks documentation. But looks very nice).

And for DSP work, Faust is just incredible.

Re: Which Midi Sequencer

Posted: Wed Feb 26, 2014 3:59 pm
by cianoc
Btw, I enjoyed your response to the OP. Not many folks around with that much experience with the languages.
Thank you. I really enjoy all your writing on Linux music, and some of the stuff I use now I would never have used if you hadn't mentioned them in your columns. In fact there's no way I would use CSound for anything if it wasn't for you.

On sequencers, what are you thoughts about Muse vs Rosegarden? What do they lack that you need? Neither seems to mention groove, or good quanitization features, which for me is pretty much a show stopper.

And what are the issues with SPG. I don't need plugins, or OSC. But the memory limitation is a concern (what does that mean in practice). And no undo... Golly.

Re: Which Midi Sequencer

Posted: Wed Feb 26, 2014 4:00 pm
by cianoc
tw, I agree in principle re: Csound's language elements, but I wouldn't call it ugly. It's like me, *old*, and it shows its age at that level.
I'm really using 'ugly' in the Computer Science, or Mathematical, sense. As a language it's clunky and verbose (it's not just an age thing - I find Java pretty ugly also) and makes abstraction (which is where beauty emerges) difficult. Lisp is older than CSound, but is very beautiful. SuperCollider is less beautiful than LISP, but nonetheless has some really nice qualities. This might be something that only programmers can appreciate though.

In practice it means that a lot of things which are very quick and easy in SuperCollider, *once you've learnt it well, are far harder in CSound. And SuperCollider has much better abstraction qualities, which makes it easier to think about the music/sound. But CSound may have a lower initial learning curve. And CSound can totally get the job done, no question. I just find it gets in my way more. I do want to do more CSound though.
I've yet to hear anything from the SC community that really blows my mind for richness of sound.
Paul Lansky uses it. As does Anthony Braxton (though that's more in a live improv sense). And in another world entirely, the Aphex Twin used to use it (and may still - he got banned from the SuperCollider mailing list). There are some other names from that world who also like it. It definitely has its niches.

But you're right, CSound is used a lot more widely. Probably because it's older and taught in far more places. My impression is that SuperCollider tends to pick people up in the worlds of improv (particularly with things like live coding), and refugees from MAX/PD who want to create particular patches for some purpose.
A young person studying computer science will find SC a good fit to current studies. One studying music might feel that Csound's more direct style suits his or her aims. Just a thought.
I think this used to be true, as the sequencing possibilities in SuperCollider were relatively weak. However patterns have changed that dynamic. If you haven't looked at those, you might want to. They're very readable, have lots of musical abstractions baked in and are beautifully modular. As I said, there are people who use SuperCollider solely for patterns, to control external synths (using either MIDI, or OSC), or MAX/MSP patches.

I also think that SuperCollider might work better for people who have experience working with modular synthesis.
We also kind of skimmed the differences re: performance. SC is far better for live coding, improvisation, and algorithmic work. Very powerful in those domains, but it is definitely the weaker language for NRT work, and I must say that I was disappointed by its tools for working out of realtime (viz the CTK).
And also SuperCollider works beautifully with modular JACK setups.

On NRT. Absolutely, though this is improving in SuperCollider. Long way to go though.

Re: Which Midi Sequencer

Posted: Wed Feb 26, 2014 5:08 pm
by StudioDave
cianoc wrote:On sequencers, what are you thoughts about Muse vs Rosegarden? What do they lack that you need? Neither seems to mention groove, or good quanitization features, which for me is pretty much a show stopper.
Honestly, you'll have to ask someone who really uses them. It's been a very long while since I looked at either seriously.
And what are the issues with SPG. I don't need plugins, or OSC. But the memory limitation is a concern (what does that mean in practice). And no undo... Golly.
I can't seriously recommend it to anyone who hasn't used it or anything like it. SPG dates from the days of severe limitations, yet I got an enormous amount of work done with it.

The memory limit is due to its DOS heritage. In practice I've only hit the ceiling when using extraordinary amounts of controller data. Most of the time I use it for straightforward "pitches & rhythms" compositions, though it can handle some pretty hairy stuff:

http://linux-sound.org/audio/sw-form1.ogg

(An old recording of Stefan Wolpe's Form for Piano, manually entered into SPG one note at a time. I have no music keyboard skills, I'm a guitarist.)

Undo was not widely implemented at that time - IIRC Cakewalk was one of the first to provide unlimited undo, though it may well have appeared on the Atari sequencers previously. I followed the manual's advice and worked on copies of material. Btw, the manual is excellent, a model of what a manual should be.

I've sync'd it to Ardour via MIDI clock and also to MTC. Even running under the emulator it worked well. I'm sure the timing is somewhat skewed but it's accurate enough for most of my purposes. These days I've been using it to drive AVSynthesis (which has some great composition features but lacks a MIDI sequencer).

One further note: SPG + DOSemu performs quite differently on my different systems here, Ubuntu being the worst. Performance on AVLinux and Fedora 19 (Planet CCRMA kernel) is much better.

HTH,

dp