MusicString - Tunes packed into a bunch of ASCII characters (WIP) 02-14-2012, 03:45 AM
#1
Hi there!
MusicString is another of my many projects, it's an simple programming language designed for Music/Melody synthesis using a very compact ASCII strings (plus there's a compression version coming up, utilizing UTF-8), in another words - you can write music with just a few symbols!
This makes it deal for pasting on Twitter, sharing in social networks, IRC, instant messaging or even putting to your signature or in the post. The language is quite straightforward, but allows simple loops (repeating parts of the tunes), playing several notes at once (basically by forking) or even subroutines with arguments and conditional execution. It supports several instruments and also soundfonts for your own sounds/instruments! (and you can use several soundfonts in one song at once!)
Today, I finished the first working version of MusicString compiler and generated the first audio with MusicString ever. This is the MusicString that was used for the first one:
You can listen to generated audio here:
http://data.solirax.org/musicstring/First.wav
Here's another tune, which sounds more like a music and less like a testing piece:
You can listen to generated audio here:
http://data.solirax.org/musicstring/More.wav
For now, this is all, but stay tuned, because I'm gonna release specification and compiler binary soon, so you can begin making your very own tunes! ^^ If you're capable enough even now to understand the simple syntax of the MusicString language from the examples, feel free to type any of them here into the topic and I'll generate them now for you :3
I hope you'll like this project, 1llusion showed interest in integration with this forums using a bbcode tag [musicstring]
So... stay tuned for more tunes! >:3
------------------------------------------------------------------------------------------------------------------
UPDATE! Version 0.2.1a
Please update to the new version, DOWNLOAD HERE
[+] Linux binary is now available! The code compiles and works correctly both under Linux and Windows now, porting to Mac OS X is in progress
[*] Fixed a bug that caused incorrect loops to be terminated by the [loopname] statement
[*] Fixed a bug that caused parsing thread to hang by going into an unintended infinite loop under some circumstances
UPDATE! Version 0.2a
Please update to the new version, *snip*
[*] Rewrote the parsing thread scheduling code and (hopefully) resolved all timing issues that way, also made code more clean
[+] New noise generation, so it now has much better, frequency based noise and plucks!
[+] Now supports statement [loopname] to terminate any loop with that name (you can try it with tune.mstr)
[+] New and updated examples
MusicString is another of my many projects, it's an simple programming language designed for Music/Melody synthesis using a very compact ASCII strings (plus there's a compression version coming up, utilizing UTF-8), in another words - you can write music with just a few symbols!
This makes it deal for pasting on Twitter, sharing in social networks, IRC, instant messaging or even putting to your signature or in the post. The language is quite straightforward, but allows simple loops (repeating parts of the tunes), playing several notes at once (basically by forking) or even subroutines with arguments and conditional execution. It supports several instruments and also soundfonts for your own sounds/instruments! (and you can use several soundfonts in one song at once!)
Today, I finished the first working version of MusicString compiler and generated the first audio with MusicString ever. This is the MusicString that was used for the first one:
Code:
{test;a[$0.:3]a}abc{test:z}abc{test:8z}http://data.solirax.org/musicstring/First.wav
Here's another tune, which sounds more like a music and less like a testing piece:
Code:
->5dd.4abcfeg5ddd(bcd,egd)3dddefghaaabb(bbbc,ccca)5ddahttp://data.solirax.org/musicstring/More.wav
For now, this is all, but stay tuned, because I'm gonna release specification and compiler binary soon, so you can begin making your very own tunes! ^^ If you're capable enough even now to understand the simple syntax of the MusicString language from the examples, feel free to type any of them here into the topic and I'll generate them now for you :3
I hope you'll like this project, 1llusion showed interest in integration with this forums using a bbcode tag [musicstring]
So... stay tuned for more tunes! >:3
------------------------------------------------------------------------------------------------------------------
UPDATE! Version 0.2.1a
Please update to the new version, DOWNLOAD HERE
[+] Linux binary is now available! The code compiles and works correctly both under Linux and Windows now, porting to Mac OS X is in progress
[*] Fixed a bug that caused incorrect loops to be terminated by the [loopname] statement
[*] Fixed a bug that caused parsing thread to hang by going into an unintended infinite loop under some circumstances
UPDATE! Version 0.2a
Please update to the new version, *snip*
[*] Rewrote the parsing thread scheduling code and (hopefully) resolved all timing issues that way, also made code more clean
[+] New noise generation, so it now has much better, frequency based noise and plucks!
[+] Now supports statement [loopname] to terminate any loop with that name (you can try it with tune.mstr)
[+] New and updated examples
I love creativity and creating, I love science and rational thought, I am an open atheist and avid self-learner.



![[+]](https://sinister.li/images/modern/collapse_collapsed.png)
