abcsound, new and improved

A new release of abcsound is in the usual place: http://www.kneuro.net/ezscore. This version fixes repeats (again). It also implements default Q: and L: tags, and a simple default orchestra (a plucked instrument), so running

python abcsound.py someFile.abc > out.csd

should produce a playable out.csd file.

The default note-length tag L: was not being interpreted correctly; this is fixed (I think).

I increased the default tempo from 60 to 100. Better too fast than too slow, I always say.

Finally, I have officially released abcsound under the GPLv3.

I tested this version with a couple of existing tunes scored by others. There were some quirks (it looks like I'll have to support chord notation pretty soon), but basically life is good.

Next release should have in-line pfield editing.

Grrrr...

Sorry, tempo is still a mess... And I have to do Real Work for awhile, even though abcsound is way more fun :-( Make sure you put the Q: directive before any L: directive.

Tempo fixed

...I hope.

Many useful improvements

Nice work on this module. I tried it out on a few folk tunes, and just as advertised, it created a good default .csd file.

ABC notation is in a state of flux, and has been for some time. Supposedly there's a version 2.0 specification, due out Real Soon Now [?!?]. However, I think your initial idea of making this into a tool for Csound composition is a good one. The existing abc files should fall through transparently; the additional markup should allow abcsound some finer control of instruments, voices, and dynamics.

The choice of a simple plucked instrument for the default was a good one as well. All in all, it's been a pretty enjoyable trip so far. I'm looking forward to your future efforts.

If I had a recommendation, it would be to allow the option to output the notes in pch format (eg 8.00, 7.09, 8.07...) instead of cps. I can reinterpret pch in a number of different intonation systems -- raw frequencies are a bit more challenging.

---
http://www.jamendo.com/en/artist/bruce.h.mccosar
http://bmccosar.wordpress.com/

Thanks again....

Encouragement is always appreciated!


If I had a recommendation, it would be to allow the option to output the notes in pch format (eg 8.00, 7.09, 8.07...) instead of cps. I can reinterpret pch in a number of different intonation systems -- raw frequencies are a bit more challenging.

I think the ability to do this will fall out of an idea that's taking shape...

Basically, everything in an abc score amounts (in Csound terms) to setting some i-statement's pfield. So I want to make that explicit, and let the user define the exact effects of each note (with reasonable defaults in effect, of course). Ideally, each note could imply a set of pfield values or pfield deltas in a user-defined way, and those values need not necessarily correspond to pitch. So one could, for example, write two parallel lines of music for a single FM instrument (exactly as if one were writing for two voices), except with one line representing the melody and the other "playing" the modulation index as if it were a second instrument. I need to think about how to make everything fit together in this new landscape, though...

Another thing -- there are probably GUIs out there that allow one to do all this already, but I'm a programmer. GUIs usually just annoy and frustrate me; text feels much more powerful. This is the basic motivation for abcsound.

I hear you!

Agreed on the GUI thing. I decided to learn Csound from the ground up. That way, if I burn it down to the rebar, at least it's my rebar ;-) However, Steven Yi's Blue is certainly a promising environment for later work.

If someone really wanted to, they could convert the abc file to MIDI, then use the standard MIDI opcodes to run the file (or even Pete Goodeve's excellent midi2sco utility). However, I think the attraction of abcsound is to be able to do all those extra bits that MIDI (or especially abc) can't handle, and to do it within a note-by-note, barline-by-barline interface. For example, some cool feature not in regular abc might be staccato, legato, swing rhythms, humanization, crescendo/decrescendo, and so on ... you know, the language of music!

But hey, I'm just giving you extra work ... must be the school teacher in me ;-)

---
http://www.jamendo.com/en/artist/bruce.h.mccosar
http://bmccosar.wordpress.com/

Staccato etc.

Staccato and sustain are already implemented, though in a very lame way -- staccato cuts a note's duration in half (leaving the start time of the following note alone), and sustain does exactly the opposite, doubling the note duration while leaving the following note's start time unchanged. They sound OK with the simple plucked instrument in the default score, but I would certainly appreciate suggestions on better ways to do this kind of thing; I am a baby in terms of my Csound experience. (I didn't happen to recall seeing syntax for sustain in abc, so I used * after a note to indicate sustain.)

generic cialis zpak generic viagra staxyn z-pack buy zithromax zpack z pak ed drugs ed pills cheap generic viagra cialis uk Canadian pharmacy viagra viagra online kamagra uk avanafil pharmacy uk cialis online buy viagra uk z pack viagra uk z-pak Canadian pharmacy