Standard from 2011: abcnotation.com/wiki/abc:standard:v2.1
A decent way to write diatonic music as plaintext!
No bend/vibratto/slides :-(
Multitrack volatile: abcnotation.com/wiki/abc:standard:v2.1#multiple_voices
Higher level than Csound: describes the notes only, not the exact waveforms it seems.
Therefore also a bit harder to convert to actual sound: stackoverflow.com/questions/33775336/convert-musicxml-to-wav but possibly easier to convert to LilyPond.
Now they need to create a "MusicCSS" that gives the waveforms! :-)
The usual "let's make a standard without a reference implementation" W3C approach.
ALSA can be thought as analogous to physical wires linking up machines.
The advantage of this setup is that separate programs can collaborate to make complex sounds.
The disadvantage of this setup is that it makes it very hard to reproduce results, you basically need a Docker image with the exact same version of everything. And some script to launch and connect all programs correctly.
Some composition systems like LMMS reduce that problem by having synthesizers as plugins, so that you don't have to setup any connections yourself.
Dominating awesome list: https-github-com-nodiscc-awesome-linuxaudio
A large part of these projects are on SourceForge as of 2020, it is scary. They just die.
Simulates vintage hardware synthesizers, and includes some pretty complex ones!
Aims to show an UI that looks exactly like the synthesizers in question.
This is a really good piece of software. You can search on YouTube how some classic synths, work, and the immediately start playing them!
Synthesizes MIDI input. vmpk +
aconnect+ Advanced Linux Sound Architecture hello world: askubuntu.com/questions/34391/virtual-midi-piano-keyboard-setup/1298026#1298026
Contains a large database of instruments, and allows you to edit them. This is a fun toy.
It is basically a superset of all popular hardware synthesizers ever made.
Has its own built-in MIDI keyboard which is nice.
On Ubuntu 20.04 Version: 3.0.5:
as per askubuntu.com/questions/220802/no-sound-zynaddsubfx-and-jack-wont-run/1297988#1297988 To do anything of interest, switch to the Advanced UI:
sudo apt install zynaddsubfx zynaddsubfx -O alsa
- Switch Interface Mode
The UI is completely different form what is shown on the website as of 2020: zynaddsubfx.sourceforge.io/, it looks instead like: www.youtube.com/watch?v=iVPr6iUuO3g Maybe on the website it is the new zyn-fusion UI... www.reddit.com/r/linuxaudio/comments/bxn3ur/some_help_for_installing_zynfusion_zynaddsubfx/ so confusing.
And they have some crappy policy of asking for 45 USD for binary downloads.
Compiling from source:
git clone https://github.com/zynaddsubfx/zynaddsubfx cd zynaddsubfx git checkout a789866de4d45a784c1f4d95fcf5a1938347baef sudo apt build-dep zynaddsubfx mkdir build cd build cmake .. make -j`nproc`
Ciro gives up for now.
Traceback (most recent call last): File "/usr/bin/cxxtestgen", line 7, in <module> import cxxtest.cxxtestgen File "/usr/share/cxxtest/cxxtest/__init__.py", line 33, in <module> from cxxtest.cxxtestgen import * File "/usr/share/cxxtest/cxxtest/cxxtestgen.py", line 18, in <module> import __release__ ModuleNotFoundError: No module named '__release__'
Basically a GUI music editor where you can specifically see and export classical music notation instead of tablature-style notation.
Best open source one found so far as of 2020: MuseScore.
This software feels amazing. You can really start composing very quickly, lots of features, good keyboard shortcuts.
GPL, and there's a backing company that makes money with an online and mobile version of it.
Ubuntu 20.04: sound preview worked, first hat that trailing Contra-like sound artifacts (like
spd-say), but then it went away?
Feels like a lot of effort was put into usability, including keyboard shortcuts by default, seems like a powerful and easy to start using software to compose music!
Glissando: yes: musescore.org/en/handbook/arpeggios-and-glissandi
Just use MuseScore instead.
sudo apt install tuxguitar tuxguitar-alsa tuxguitar-jsa tuxguitar-oss
tuxguitar-jsawas needed, otherwise no sound: askubuntu.com/questions/457321/tuxguitar-no-sound-in-14-04
Has OK step sequencer non-realtime up/down/left/right guitar based composition interface.
Has chord insertion.
Has bend editor.
Could be more amazing, but it is OK.
A bit limited by being very "guitar oriented". Shows you guitar strings, and you enter offset to each string. So to enter two adjacent notes you need to use two seprate strings and thing about the offsets. If only it had a more piano based interface.
Drum notation is also atrocious, you have to go to the top chord, and use high numbers starting at 36.
MIDI support is kind of secondary: www.youtube.com/watch?v=vnkJ0uYXMG8, e.g. how to export MIDI? discourse.ardour.org/t/export-an-entire-project-into-a-midi-file/88116
Very easy to use and pretty powerful MIDI creator!!!
One of the rare audio applications actually works with PulseAudio on Ubuntu 20.04 out-of-the-box, so you don't have to turn off every other audio application!!!
Has lot's of plugins built-in just working out of the box, e.g. ZynAddSubFX out-of-the-box without doing a gazillion complex setup connections.
TODO can you do liver performance with a virtual instrument?
TODO: what about recording the input MIDI? Yes, there is a record button on the piano roll!
Cannot hear any sound from it on Ubuntu 20.04: askubuntu.com/questions/510052/how-do-you-get-rosegarden-to-play-sound-when-playing-a-midi-in-it
So we can track the music in Git!
Allows you to easily define instruments with seemingly arbitrary mathematical functions, and then use them to play notes at given time intervals.
The instrument functions can be parametrized, and each note played can have different parameters.
The instrument definition actually defines a block diagram graph, much like a hardware synthesizer would.
Csound is so not-bloated that it contains an UI system. And it includes an interactive virtual MIDI keyboard that interacts with parameter knobs: www.csounds.com/manual/html/MidiTop.html
CSound states that one of its design goals is backward compatibility, and it shows. Some of the stuff is utterly arcane, e.g. you have to remember what
GEN11, etc. mean instead of having named enums.
It just worked on Ubuntu 20.04 no questions asked:
which runs this file: github.com/csound/csound/blob/92409ecce053d707360a5794f5f4f6bf5ebf5d24/examples/xanadu.csd and this plays a relly cool sound demo:
sudo apt install csound git clone https://github.com/csound/csound cd csound git checkout 92409ecce053d707360a5794f5f4f6bf5ebf5d24 csound examples/xanadu.csd
Save to file instead of playing:
or direct ogg output:
csound -o xanadu.wav xanadu.csd
or pipe to stdout to FFmpeg TODO: stackoverflow.com/questions/64970503/how-to-pipe-csound-output-to-ffmpeg-for-conversion-without-an-intermediate-file
csound --ogg -o xanadu.ogg xanadu.csd
TODO find the most amazing set of songs made with it on GitHub? Some examples:
- www.csounds.com/toots/index.html has a good 101 on instrument design
- Csound FLOSS manual
- iainmccurdy.org/csound.html about 100 CC BY-SA examples. Each is a minimal study showing a specific technique, not a full composition, some seem advanced. Dude's a beast.
- github.com/csound/csound/tree/f2e70825fb543a6b15011c6984371f61ab2a00dd/tests/soak in-tree minimal examples
- github.com/csound/manual/tree/4049b286493d972ff7248b5596e47e7ae97a0cf9/examples contains the examples for the manual which is rendered at: It's insane, but it's fun! Ah those newbs who separate manuals from main tree.
- linuxsynths.com/CsoundPatchesDemos/csound.html on LinuxSynths
- github.com/csound/examples/tree/ae578159328178142c1055c7f78e28b42eb29774/csd as a few dozen examples
- freaknet.org/martin/audio/csound/ 10 pieces with source
- csound/linen.csd: simple attack/release envelope, documented at: www.csounds.com/manual/html/linen.html
- csound/chorus.csd: chorus effect
- csound/bend.csd: bend using
Very good open source book: github.com/csound-flossmanual/csound-floss
Examples can also be downloaded all at once from: www.csound-tutorial.net/floss_manual/ Shame not in Git as standalone files.
2.5.0 manual prebuilt download install on Ubuntu 20.04 just worked. Launch directly from unzip without install. Play with examples under
Their docs are a reasonable way to learn Csound: cabbageaudio.com/docs/introduction/
Python library, therefore the nicest possible type of text interface.
stackoverflow.com/questions/32445375/pyo-server-boot-returns-error-on-ubuntu-14-04/64960589#64960589 God how to get it to fucking play a sine sound?!?!
How to play scores and save them to files is discussed at: doc.sccode.org/Guides/Non-Realtime-Synthesis.html
They have a nice looking IDE, but running anything from the command-line interface is super hard, much unlike Csound. How to get a decent hello world: stackoverflow.com/questions/65360414/how-to-play-a-supercollider-file-non-interactively-from-the-terminal-command-lin
Sample composition with custom synths + notes: sccode.org/1-5cl
Lots of demos.
God, Ciro Santilli respects this guy.
- Page One by Joe Henderson (1963)
Ciro Santilli's favorite musical genre.
Scientology music! So good.
- In the Court of the Crimson King by King Crimson (1969)
I.O.U, Road Games, and Metal Fatigue are also extremely worth it, they are so good that even the singing does not spoil them. s2 forever Allan.
There is of course no need to talk much more about the Jazz God, this one line of mandatory tribute is enough.
Until maybe one day we can actually get a decent education for everyone.
- Are you experienced. OMG that album...
Country at: China.
Technique to make cool sound instruments mathematically, either with electronic hardware components, or with a software synthesizer.
www.youtube.com/watch?v=0hfdSrK46EE How To Use A Minimoog Synthesizer by Doctor Mix (2020)
You have to know the language to appreciate them.
Bending, sliding and strumming just feel to good to not have.
And Ciro sucks are doing things in parallel, so the more single threaded approach of the guitar fits his brain/abilities better.
The piano is the most elegant non-electronic instrument. But it requires way too many strings, so expensive and not portable.
The guitar is kind of the opposite.
After computer sound synthesis however, all of these distinctions become meaningless.
OMG this is sick.
Full official album on YouTube: www.youtube.com/playlist?list=OLAK5uy_myUBkJ0UJbkV7O1q-hg7ONxxGBLGz4SzU. so glad he managed to upload it...