# Draw music in software

When we open up a song in an editor we see a wave track, if we zoom it we see that it's curves and bends at different places and etc. I wonder if it's possible to draw music this way? Theoretically i think it's possible.

If we record a note and look at its wave sample we can see what it looks like. If we try to draw an equal wave sample and play it, will it be the same note?

One more thing: i've noticed that if you play another note on top you get almost the same image but with just a slight change. Does that mean that even a small curve can change everything?

• You may be interested in the software Spear.
– syntonicC
Commented Feb 14, 2017 at 4:29
• Slightly different, but in case you hadn't seen it, this was designed by placing the image into the frequency domain: youtu.be/M9xMuPWAZW8?t=5m19s Commented Feb 14, 2017 at 10:55

Music is interesting because people can make musical expressions instinctively and in real time. A decent violinist can just think a tune and translate that thought into sound because (s)he has practiced to the point where the motion of the bow and positions of the fingers are second nature. This is directly related to the means of data input (the bow and the neck). If someone could master a wave-drawing interface to the same degree that someone could master a musical instrument, your idea may have merit. I doubt it is possible.

Now, for very trivial pieces, e.g. John Cage's 4'33" this procedure would work quite well, because the waveform is trivial (in the case of 4'33" it would just be a flat line).

However, for any sort of interesting music, this approach would yield problems for an ordinary human being who cannot do the necessary math in their head. You would need the ability to do all of the following:

1. If you want polyphony (more than one note at once), you'd need to be able to add waveforms together, often partially overlapping and out of phase.
2. If you want dynamics (e.g. forte vs. pianissimo), you'd need to be able to recompute the waveform with an attenuated amplitude and possibly other changes characteristics such as frequency response.
3. If you want notes of different timbres, you'd need to be able to recreate all sorts of different waveforms, which are often made up of dozens or hundreds of sine waves added together.
4. If you want notes of different pitch, you'd have to be able to change the underlying frequency of the waveform. Harmonics may or may not change along with it, depending on the sound you want.
5. In the case of non-pitched instruments, the harmonics may need to be expressed on two or even three dimensions.
6. The entire time you are doing this, you'd have to avoid certain types of numeric artifacts which would result in distracting clicks, pops, and hums.
7. If you are hoping to add detune, chorus, reverb, echo, or any other sort of effect, god help you, because the equipment that normally generates those effects generally perform millions of operations per second, and contain all sorts of boundary checks and anti-aliasing filters in order to sound pleasant.

This seems way too complicated for anyone to be able to generate anything other than purely abstract music. If you are trying to get from a musical idea to a musical sound, this would probably be the worst way to do it.

• Keyboard players do not "draw" waves. They may choose a limited set of parameters that affect waveforms (e.g. a sweep filter), or supply inputs to an equation that generates a wave (e.g. FM or subtractive synthesis), or generate events that trigger predefined waves (a.k.a samples). Using that UI is limited and isn't so different from blowing into a flute (which also generates a wave). The idea I have trouble with is the free-form nature of actually drawing a wave, and expecting that act to be a creative and artistic act.
– John Wu
Commented Feb 14, 2017 at 3:39
• But don't you think if someone ever researched the wave form he could actually create a software where you could draw the waveform and have a good melody in result? Purely theoretically if we play three keys on the piano at the same time, let them be C,E, and G and look at the waveform, we csn see just one sampke with a lot if curves, bends and different shapes. If we construct this same waveform ourselves we should get the very same sound with whatever reverb or chorus that was applied.
– SovereignSun
Commented Feb 14, 2017 at 5:00
• Based on this we can try playing each note separately and then combining them by overlapping and we again should get the absolutely same result. So we go further on, we draw the waveform for each of the three notes and overlap them we should get the same sound. We take a note and look at its waveform, then we add reverb and see what changes to the waveform have been made, thus we can easily analizy how the waveform changes.
– SovereignSun
Commented Feb 14, 2017 at 5:00
• (Actually, there mostly is ambient sound/noise during a performance of Cage's 4'33".)
– Karlo
Commented Feb 14, 2017 at 12:48
• I think it would be a fun experiment to take a known waveform and cut and paste it over and over and pitch shift it to make a melody. Why don't you try it? There's a dozen programs that'll let tyou do it. (I think you may be surprised at how it sounds) Commented Feb 14, 2017 at 17:41

Yes, you are absolutely right. As a matter of fact, in many simple audio editing programs (my personal favourites are Logic and Audacity, depending whether I'm using my Mac or my Ubuntu), it is very simple to draw a simple wave, zoom in, and grab and move the individual points of the wave to the point which you want.

Because the sound is indeed totally represented by this analog curve, it is (as you suggested) possible to draw the exact wave you want in just about any audio editing program.

That being said, generating the exact wave you want is an extremely long, tedious process: to draw a second or two of sound exactly how you want it (depending on your skill level) could easily take an hour or two.

### Bottom line:

You are 100% right. You can at least theoretically draw your own sound waves (with much difficulty), and, yes, even an apparently small change to the curve can make a huge difference, as you suggested.

an attempt at a simpler answer...

what audacity is showing you is the sample of the whoooole song jammed together in time. every sample for every note (of every instrument) has already been mixed down into ONE wave. This is the wave your speaker plays out.

So showing music this way is a terrible idea. A human can't separate out which note of which instrument is being played. A computer even has a difficult time doing this. Especially with reverb and lots of instruments involved.

Music needs to show which instruments are used and which notes are played on them and when. Etc, etc, etc.

So at the point of it going out the speaker, everything has been mixed together and it's too late to see which notes are involved. At least, you know, easily.

And there's ENOUGH going on playing music. Making it simpler for the instrumentalist is a high priority. Hence, the music notation we have.

Well, not really - when you're looking at a waveform, you're seeing a zoomed out summary of the data on disc. If you zoom in, you'll see many more details and gradations that you couldn't tell from far away. It's kinda like trying to describe all the beaches of California, in detail, by drawing how the coastline looks on a map of the U.S.

If you zoom really deep down you'll get a more accurate picture, and yeah it would be possible to create music that way - but drawing at that level would be extremely tedious and time consuming and likely impossible for the average human.

To understand why - it'll help to do a little napkin math to get the possible variations, and we'll see that they become too enormous over the time of a song (and what is music if not creative choices over time).

Let's assume a relatively standard digital format - 44.1khz mono at 32bit depth.

That means the value can change every 1/44100 or 0.00002267573 of a second - and that the possible values at that interval are between 0 and 2,147,483,647 (though this 32bit range is usually represented as a floating point range between -1 and 1, the possible gradation is there)

So, given our chosen file format (44.1kz 32 bit mono) - in order to be able to actually paint music with control, it means you need to make creative decisions among 2,147,483,647 choices every 0.00002267573 of a second. Otherwise, the strokes are too broad to be conscious. That's 5,682,241,729,962,000 possibilities for 1 minute of music (2147483647 x 44100 x 60). Zooming in and drawing and fine tuning to creatively control that might be possible, but it's impracticable.

That said, there are a number of other alternatives which allow you to "shape" the waveform in larger sections without being so brutal. For example - you could have two sine waves of different frequencies and/or amplitudes and/or phase, and add or subtract them... this is a whole other topic of things like additive synthesis, but the general idea of thinking in terms of shapes rather than notes does allow for some interesting tooling (though imho it's more on the side of creating virtual instruments and gear rather than music composition)

I present to you, CHIP32, A free audio unit that I found on the internet.

Just drag your mouse around to change the waveform and use a midi keyboard of some sort to play notes!

Try changing the frequencies.

What happens if you put all the boxes in the wave table at the same level?

What happens if you have more frequent ups and downs?

If you really want, I could make a video for you.

• I'll try it. Though it looks DOS-like I hope it works.
– SovereignSun
Commented Feb 14, 2017 at 4:47
• usually, any manual editing of wavs results in clicks and pops. unless you smoothly change eeeeevery sample in a long period (like a half second or something you can hear as a whole note). typically, human edited wavs sound like buzzing with pops and clicks. Not really worth pursuing unfortunately unless you're a computer... Commented Feb 14, 2017 at 6:43
• @StephenHazel What is a square wave? Pops and clicks are the only thing in it, yet it sounds pretty sweet. The synth linked does not edit an existing wave, it creates a synth based on a waveform that you give it. It plays notes by playing the waveform at different frequencies. Commented Feb 14, 2017 at 11:16
• well i see your point. that's true. it's just 0s and 1s. (-1s and 1s? youuu knowwww). But I'd still say the best source of samples is a recording or algorithmically generated by a computer program. And those samples are best put to use in a sample set of a software synthesizer, not as, a whole dang song. Good luck adding a C#4 played by a piano for a quarter beat into that sample :) Commented Feb 14, 2017 at 17:28

The graphical representation of the wave sample in Digital Audio editing software is showing the sample bits relative positions of each sample.

If you were just looking at a single sine wave, you could draw an approximation that would sound similar.

Musical instruments have more than one wave produced for each note however. There are harmonic frequencies and partials that contribute to the timbre of the instrument, creating a distinct sound that makes a violin sound like a violin.

The combination of the various frequencies and their related volumes shows up as a single wave pattern in the software, but it is really a sum of the total waves. Small edits will change the relationships and alter the sound.

Synthesizers use the combined waves to create representative sounds of an actual instrument, so yes, you can create the music by drawing out the waves you want. Starting with the fundamental frequency of the note you want, you would then layer on additional frequencies to add timbre.

If your wave editor has a tone generator, you can play with this by generating different tones and then combining them to see what they sound like.

I know this question is answered, but I just though I'd add an example from a modular, multi-type synth I created in Reactor a few years back and a bit more info about drawing sound.

When sound waves are drawn like this in synthesizers, only a single cycle is drawn. There is no variance as the cycle loops (although in mine, I did create an interesting read direction oscillator and distortion). The pitch is changed and mapped to the keyboard by simply changing the wavelength.

Many people who are used to viewing simple waveforms can imagine how it's going to sound. For example, if it's square-like, the odd harmonics will give a hollow sound. Less complex, smooth waves will have a smoother sound.

Obviously, A/D converters simply map discrete points of a real-world signal, essentially copying it. How accurately depends on the resolution. So a signal could be copied by hand in the same way. You couldn't practically copy a whole song by hand though, and personally, I find it much easier and more creatively pleasing to create a synth sound through addition, subtraction and modulation. I only used the operator shown above twice while creating a sound. The rest of the time I used the other, more traditional operators.

The Roland S330 and S550 (and also at least one sampling keyboard by Roland on witch I cannot remember the name) lets You draw waveforms or editing sampled waveforms with a mouse. They a fantastic instruments. Just a little Old.

The before mentioned Roland samplers lets You loop Your drawings so You don't have to draw the whole length of a waveforms (witch would take very Long time) simply loop a short time and experiment with drawing the waveform inside the loop and it Will appear as a tone You Can play with on midikeyboard. You Can also use the sampledraw utility to remove scratches on a vinyl record sample manually if You have some skills. The scratches Will be seen on the sample wave as a peak. Zoom in, flatten the peak with the mouse and the scratch Will be removed. You Will not really hear the drawen line