Jump to content

Visual Music String Concept - voo


 Share

Recommended Posts

It certainly would help a lot. I'm currently half way through writing a tutorial. It starts very easy with the musical version of Hello World. The Mozart sample is actually quite advanced.

Then it may help to think about highlighting it, or highlighting key components. I don't know about you, but looking at that in black and white is just mind boggling ;)
Link to comment
Share on other sites

Indeed I can't deny that it looks confusing. It's a hybrid language after all. Looking at esperanto has the same effect on me: it might as well be written in chinise. However the system has logic behind it. Once you know the syntax, it is easy to follow. Using voo syntax it is possible to write the same music with bad, incomplete or simpler syntax, just as you can with other scripts. When I finish the tutorial all will become clear.

This tutorial is work in progress (musical version of Hello World).

; Virtuoso Music Script Tutorial

; In voo scripts single line comments begin with a semicolon.
; In voo files all pieces of music must begin with a title wrapped in double quotes.
; The pitch of the notes is written on the next line, and the rhythm on the line below that.

; Line 0 ··· Title (or other text)
; Line 1 ··· Pitch values
, Line 2 ··· Rhythmic duration

; Note names use the upper case letters A to G. voo is case sensitive.
; A B C D E F G

; The default beat value is a quarter note indicated by a single bullet point.
; • • • • • • •

; Notes values should line up visually with the letter names above.
; This is not forced but it makes it easier to locate errors.
; Using word wrap should be avoided.

"Double Line Notation"
A B C D E F G
• • • • • • •
Edited by czardas
Link to comment
Share on other sites

The problem is, you'd really need a bespoke editor to write this, since the characters you use aren't easily available to most, without using ASCII codes, or being able to copy and paste them.

On a side not, I really fancy messing with making music. Have you ever used Ableton Live?

Edited by JamesBrooks
Link to comment
Share on other sites

The problem is, you'd really need a bespoke editor to write this, since the characters you use aren't easily available to most, without using ASCII codes, or being able to copy and paste them.

On a side not, I really fancy messing with making music. Have you ever used Ableton Live?

I watched a couple of demos. To me this is more of an editing program (it looks good though). I'm glad you posted it because it provides the answer to your first point about typing issues. Notice that he is using a specializsed keyboard called a piano. I don't know of any music software that has adequately solved the note input problem. I also don't plan on typing much voo. That can be automated.

I also have some experiments I wish to conduct and ideas I want to try out.

I typed the code using this made specifically for this kind of thing.

Edit

The end of 5 lines from the previous Mozart example miss some spaces, so the ends of those line should read:

Ø DS/Ø|Ø DC/fin

Which is interpreted as follows::

CODA, Del Segno al CODA, Bar line, CODA, Da Capo al fin

These terms are understood internationally by many people, regardless of nationality. Therein lies the strength of voo. To the interpreter these terms just mean GoTo (more or less).

Did you listen to the midi file BTW? - It's easier to understand voo if you can hear it. ;)

Edited by czardas
Link to comment
Share on other sites

I have a first language beta release. How easy it will be to implement these specs is not clear to me yet. Some of the work on the interpreter is done, but I have other commitments to attend to, so progress in that area may be slow. Anyway voo has kind of arrived.

voo_specs.zip

Edited by czardas
Link to comment
Share on other sites

I have come up with one or two additions as yet undocumented in the above specs. The first is double backslash which represents a multi-line break. I have modified the code in as an example. It is possible to make a voo tidy function to align everything for visual clarity.

The next feature is the ability to tune the notes. Pitch values can be raised or lowered by as many cents as you wish. One cent is equal to 1/100th of a semitone. I don't know if this is possible with midi. I would have thought not, although this can be done using beep.

Not only will you be able to make your instruments sound out of tune (depending on one's perspective of course), you could also have them play out of time ;) since the synchronization of voices is not forced.

Edited by czardas
Link to comment
Share on other sites

JamesBrooks, thanks for thinking about this. I have been quite busy with work, so I haven't had much time to think about this lately. I took a quick look at the link and it seems complicated. However I read some bits and pieces.

The author mentions waves, and waves are good! :) It would be totally awesome to have wave equations in voo. Unfortunately that's a bit over my head. Something like that would remove the dependancy on sound libraries altogether. The only way I can imagine making this practical would be to have something like a colour chart where you could blend waveforms by clicking on different areas to create new instruments. The resulting mathematical formulas would then appear in your voo code. That's some highly complicated and heavy duty coding (or so it seems to me at least). I need to think about it, and it may also not work the way one might expect.

I was planning on using midiOutShortMsg to begin with, but (although recommended by Microsoft for desktop apps) this method is extremely limited and also somewhat dated. It will not be possible to implement the full range of voo commands. Missing wil be tuning (temperament), playing the same note on two instruments simultaneously (unison BAH!) and dynamics could also be problematic. With a midi stream some of these problems may be overcome, however it turns out that different problems will be encountered, such as using free time (no time signature) or out of sync voices (not that I would personally need that). Also the number of voices is restricted to a maximum of 32 (that's only 3.2 pianists, since they normally have eight fingers and two thumbs each ;) ).

I imagine that there are several sound libraries that could be suitable for this project. There must be! They will all have strengths and weaknesses. Nobody can deny that midi sounds like tripe. It's good enough to create music software aids and tools for a variety of purposes, but it doesn't exactly produce sound recording quality. Really my main aim is to have a flexible system that I can integrate into my own apps, but a more professional sound and additional features are without a doubt worth pursuing for the future.

Edited by czardas
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...