3

I'm so curious about music, and I also tried to learn to play some instruments, but due to some personal reasons I can't continue with it. Now I'm a software developer, which is my passion, but my love of music didn't end. Could you share any examples of music programming languages that professional musicians use?

enharmonic
  • 399
  • 3
  • 9
Ramesh KR
  • 161
  • 5
  • 2
    No idea, what you are asking for. Professional musician of course have mainly instruments, but the typical recording software they use in addition provides no benefit for you. Can you elaborate that? – guidot Nov 28 '18 at 12:57
  • Many compositions for TV and movies are done using computers today. Although in my experience the s/w is used to edit tracks that were created by a keyboard (piano not computer). It is not impossible to create music entirely using s/w (I did it for fun in the 80s with a Commodore 64) but it is very time consuming. –  Nov 28 '18 at 13:21
  • are you looking for something like fruityloops (fl studio), propellerhead's Reason, or apple Garageband? these can all be used to make music without a "real instrument" though having a midi keyboard controller would be a real help. Programs like ProTools or Logic can also do what these other programs do but also record audio from Microphones or other audio sources. having the software, i think you will find, is only half the battle (or less). you will need to understand how to make music, how music works, to really start making anything of quality. – b3ko Nov 28 '18 at 14:24
  • 2
    Possible duplicate of [Are there any music programming languages from after the SuperCollider era?](https://music.stackexchange.com/questions/47784/are-there-any-music-programming-languages-from-after-the-supercollider-era) – enharmonic Nov 28 '18 at 22:05
  • 1
    @enharmonic, doesn't seem a dup of that SuperCollieder question about programming languages. I think this one is simply about DAWs. – Michael Curtis Nov 28 '18 at 22:14
  • 1
    @MichaelCurtis: At least now *programming languages* is explicitly stated in the question, but the question is still rather blurry. – guidot Nov 29 '18 at 08:34
  • The code or language is usually dots on a stave and the software is usually something like Musescore or Sibelius. If you want to do things differently there are lots of options, you can bang a saucepan and make music, but you ask what the pros use. – PeterJ Nov 30 '18 at 13:25
  • Strangely, I was talking to a colleague about this recently. He can't play anything (by his own admission) but loves putting music togehter by programming. He uses FruityLoops to do this. I'm not faqmiliar witht he sfotware, but probably worth you taking a look. My friend has been doing it for years and gets a lot of enjoyment out of it. – user2808054 Nov 30 '18 at 13:42
  • 3
    OP, you might be interested in the [CSound](https://csound.com/) music development system. – John Wu Dec 01 '18 at 03:06
  • There's a concept of generative music which you might of interest to you – https://en.wikipedia.org/wiki/Generative_music – ᄂ ᄀ Dec 04 '18 at 06:07
  • Historical note: when credits on older recordings include "programmer", it's not programming as a software developer would understand it, but programming synthesizers to play the musician's ideas. Back in the day, user interfaces were primitive, difficult to use and having a separate person to specialize in it made sense. – ojs Feb 09 '20 at 13:54
  • Haskell? This guy is live-coding https://youtu.be/smQOiFt8e4Q – ZxJx Sep 13 '20 at 20:58

6 Answers6

5

Yes; it seems like you might be interested in trying some audio programming languages, such as Chuck, CSound or PD. These implement programming-based approaches to composing and performing music that are not dependent on using traditional instruments.

Another option would be Sonic Pi, a live-coding language for improvised music performance.

See Are there any music programming languages from after the SuperCollider era? for an overview.

enharmonic
  • 399
  • 3
  • 9
3

I think you can.

Maybe you want to use a DAW (Digital Audio Workstation).

There are free and paid DAWs out there, a good example of the free ones is LMMS. I personally use LMMS and I think it's quite decent but I didn't use any other, so this is only an advice. I can't afford instruments or a MIDI keyboard so I eather pick notes with mouse or use my pc keyboard.

For instruments you can use VST-s or samples (a good free, high quality orchestral sample library and VST: http://vis.versilstudios.net/vsco-community.html

The "most" professional I think is FL Studio but here's a list: https://www.musicradar.com/tuition/tech/the-20-best-daw-software-apps-in-the-world-today-238905

And this is only an advice but you might want to learn some music theory too. You don't have to read musical sheets in LMMS but I recommend to learn because there are things you can use for example chord progressions, scales.

You can for example make music like "Some japanase like, or egyptian like music...I should use a pentatonic scale." Then you choose the proper scale.

atanii
  • 489
  • 2
  • 12
  • There are many choices available, but this answer gets to the main point a DAW for editing the music and VST or other sound files for the instruments. – Michael Curtis Nov 28 '18 at 22:04
  • Wow, thanks for that Versilian link! How long has the Community Edition been available? I didn't know about it. – Michael Curtis Nov 28 '18 at 22:08
  • 1
    You're welcome. :) I found it around 2 weeks ago when I was looking for some good sample library or VST for orchestral instruments. It was a great surprise for me. I think the article about it wasn't older than a year so we can say it's fairly new. – atanii Nov 29 '18 at 04:45
2

In addition to all the answers, I would also point out the two systems (there are more) for writing music notation:

With these, you write plain-text files containing the syntax, which gets transcribed into score sheets. Other than that, they also generate MIDI files. MIDI files can be combined with a decent Sound Font to play the music you wrote.

Alen Siljak
  • 1,134
  • 6
  • 14
2

It will be very challenging to write software for a problem domain you don't understand. For example, if you write accounting software, you must be familiar with accounting as a problem domain: the what, where, who, how of it - what kind of actors there are, their interactions, roles, dependencies, purpose, limitations, etc. Music is one such problem domain. In order to write music software, you have to familiarize yourself with the elements of music and their interactions. I think that learning to play an instrument is a kind of a prerequisite for creating music software - but your instrument doesn't have to be any traditional physical instrument at all, it can be a piece of software. You must learn the musical phenomena and interactions that happen with that piece of software, and learn how it feels to you yourself, not by reading textual descriptions of how someone else felt it. You do something with your instrument, e.g. produce notes, and you listen to it and observe how each "operation" affects your feelings. You make changes, do something different, and observe again.

If you want to start the journey and make your own music-generating software, it might not be a bad idea to study conventional physical musical instruments and look at them as models for the program. For example the piano is a very important instrument to know, because in a sense, it is a physical embodiment of many essential concepts of Western music theory, like the 12-tone division of the octave, the white and black keys, the dynamics, etc. Similarly, look at other instruments. Many physical features and characteristics of instruments have a direct mapping to musically relevant concepts that you might model in your software.

However, before trying to create a completely new software instrument from scratch, I recommend you to take an existing software instrument and learn to play it. The most important thing, just like with any musical instrument, is to listen to the sounds you're creating. Listen to existing pieces of music and try to reproduce it in some way with your instrument, i.e. "by ear". Pick an existing melody line and recreate it with your instrument by ear. Jingle Bells, Yesterday, Twinkle Twinkle Little Star, things like that. Then learn to create harmony, i.e. chords, to accompany the melody line. Do not look at ready-made answers. Try to do it by ear. Listen. Make changes. Listen. Music is all about listening, no matter what your instrument is.

Edit: I need to add that you have to understand the word "instrument" very broadly. An entire DAW suite can be your instrument, in the way that some music producers have been described to use the whole studio as their instrument. A composer or arranger might look at an orchestra as the instrument. But whatever it is, the musician has command of it and knows how his actions result in musical phenomena, and what they feel like. If you set out to make a music-generating program, then you'll have to "teach " your program things about music, and to do that, you'll have to know the things yourself.

piiperi Reinstate Monica
  • 26,045
  • 1
  • 33
  • 85
0

Programming language: More ancient than you thnk ... Music score !

Software: Just find any bit of software where you can point-and click to make a music score (ie sheet music), and the software will play it. I can't recommend one as I don't know so much about this area, but I daresay there are lots to choose from.

user2808054
  • 5,299
  • 2
  • 17
  • 27
-1

Yes, it is entirely possible. I have done it. The following examples are of music entirely done with online tools. A Famicom synth, online tools to separate vocals from songs and KDENLive.

The following piano music is also adaptations of the guitar music I made. The actual piano sounds are nothing else than a midi engine from the program MuseScore. MIDI sure has come a long way over the years.

Neil Meyer
  • 14,365
  • 7
  • 40
  • 88