MUSICAL ANDROID
  • BLOG
  • INTERVIEWS
  • ARTICLES
  • DOWNLOADS
  • Contact

Equations for finding seconds/line in SunVox

3/10/2014

0 Comments

 
Picture
So here is  a a little bit of equational strategy when using SunVox by the Handle.
In the walkthrough  he is also using Audacity a free audio editor that is a good thing to have if you do not have one... a link to it at the bottom of the post.
------------------------------------------------------------------------------------------------------------------------------------
These equations are useful for getting the appropriate song settings for extreme sound design. They increase your control over when pitch slides, parameter changes, etc. happen and for how long, making them perfect for helping with the creation of samples. They relate the bpm, ticks/line, and seconds/line to each other in 3 equations.

Variables:
X = Beats in a minute (ex: for 120 beats per minute, "X" would be 120 )
Y = number of ticks per line (ex: for 3 ticks/line, "Y" would be 3)
Z = seconds per line

Equations:
Z = (60 * Y) / (24 * X)
X = (60 * Y) / (24 * Z)
Y = (24 * Z * X) / 60

How I got "Z = (60 * Y) / (24 * X)":

Given:
Settings for song1: 120 bpm, 6 ticks/line, 4 lines/beat
Settings for song2: 120 bpm, 3 ticks/line, 8 lines/beat

Please note that the number of lines per beat is obtained through direct observation in SunVox.

Find:
Seconds/beat
Ticks/beat
Seconds/line

Work:
Seconds/beat for song1 and song2:
(120 beats / 1 minute) * (1 minute / 60 seconds) = 120 beats / 60 seconds = 2 beats / 1 second = 2 beats/second

We can use the reciprocal (the reverse) of the fraction representing bpm to get seconds/beat.

(1 minute / 120 beats) * (60 seconds / 1 minute) = 60 seconds / 120 beats = 1 second / 2 beats = 0.5 seconds/beat
Since the bpm is the same for song1 and song2, 0.5 seconds/beat is true for both of them.

Ticks/beat:
Song1: (6 ticks / 1 line) * (4 lines / 1 beat) = 24 ticks / 1 beat
Song2: (3 ticks / 1 line) * (8 lines / 1 beat) = 24 ticks / 1 beat

You can see that the ticks per beat remains constant. We can use the reciprocal (the reverse) of this fraction to cancel out "beats" in the following equation:

(60 seconds / 120 beats) * (1 beat / 24 ticks) = (60 seconds / [120 * 24] ticks) = 60 seconds / 2880 ticks = 0.0208333333 seconds/tick

But seconds/tick isn't what we want. We want seconds/line, so we have to do more work:

For song1:
(60 seconds / 2880 ticks) * (6 ticks / 1 line) = (60 seconds * 6) / 2880 lines = 360 seconds / 2880 lines = 0.125 seconds/line
Since it's 0.5 seconds/beat and 4 lines/beat for song1...
(0.125 seconds / 1 line) * (4 lines / 1 beat) = 0.5 seconds/beat

For song2:
(60 seconds / 2880 ticks) * (3 ticks / 1 line) = (60 seconds * 3) / 2880 lines = 180 seconds / 2880 lines = 0.0625 seconds/line
Since it's 0.5 seconds/beat and 8 lines/beat for song2...
(0.0625 seconds / 1 line) * (8 lines / 1 beat) = (0.0625 seconds * 8 ) / 1 beat = 0.5 seconds/beat

Now we can replace bpm, ticks/line, and seconds/line with variables, which gives us our equation:
Z = (60 * Y) / (24 * X)

So let's test it using song1!

Given:
Settings for song1: 120 bpm, 6 ticks/line, 4 lines/beat
(from these given settings we know that X = 128 beats and Y = 6 ticks/line)

Find:
Seconds/line

Equations:
Z = (60 * Y) / (24 * X)

Work:
Z = (60 seconds * 6 ticks/line) / (24 ticks/beat * 120 beats) = (360 seconds/line) / 2880 = 0.125 seconds/line
"Ticks" and "beats" get cancelled out, leaving "seconds/line" as the units for the result. The result we get matches up with our work from earlier.

Just in case, let's test the equation when all the variables are known. If it works, both sides should result in the same number.

0.125 seconds/line = (60 seconds * 6 ticks/line) / (24 ticks/beat * 120 beats)
0.125 seconds/line = (360 seconds/line) / 2880
0.125 seconds/line = 0.125 seconds/line

So it works! Now we need to get the other two equations. Don't feel intimidated though, because now all we have to do is some algebra to move the variables around.
I'll explain what I'm doing in parenthesis ().

Z = (60 * Y) / (24 * X)

(Multiply both sides by "X")

Z * X = (60 * Y) / 24

(Divide both sides by "Z")

X = (60 * Y) / (24 * Z)

And BAM! We've got our second equation! This one is solving for "X", the number of beats in a minute. So if we know Y (ticks/line) and Z (seconds/line), we can solve for "X".

Now let's get the last equation:

X = (60 * Y) / (24 * Z)

(Multiply both sides by "(24 * Z)")

(24 * Z * X) = (60 * Y)

(Divide both sides by 60)

(24 * Z * X) / 60 = Y
Y = (24 * Z * X) / 60

So now we have our last equation! This one is solving for "Y", the number of ticks per line. So if we know X (beats in a minute) and Z (seconds/line), we can solve for "Y".

I'm assuming you're thinking something like "But Handle, wtf am I going to use these for?" Here's an example:

Suppose I want to recreate (or make something similar to) a sound from my favorite track, and I want to do this with SunVox. I want to get really close to the desired sound (and I can measure time in milliseconds with audacity), so I'll need to be as accurate as possible in the timing of pitch slides, effects, etc.

In order to get that timing to be accurate, I have to know how long each line in SunVox lasts....but since there's nothing indicating the time spent per line, I'd either have to guess or make equations (as I have done above).

So let's suppose I want each line to last 0.005 seconds...

Given:
Z = 0.005 seconds/line

Find:
BPM
ticks/line

Equations:
Z = (60 * Y) / (24 * X)

Work:
0.005 seconds/line = (60 * Y) / (24 * X)

(Multiply both sides by "(24 / 60)")

0.002 seconds/line = Y / X

(0.002 = 1/500)

(1/500) seconds/line = Y / X

So now we know that Y = 1, and X = 500. So we can set the ticks/line to 1, and the bpm to 500. This will get us the 0.005 seconds/line that we wanted.

But don't take my word for it, try it yourself!

This example will show that when you export the track (4 lines long) when the bpm is 500 and ticks/line is 1, the length of the exported track will be 0.020 seconds (0.005 seconds/line).

1.) Set BPM to 500 and ticks/line to 1.
Picture
2.) Change the length of the pattern to 4 lines.
Picture
3.) Export the track to WAV. Your export settings shouldn't matter as we are only interested in the length of the exported track.
Picture
4.) Import the track to Audacity.
Picture
5.) Right click the middle dropdown at the bottom to make sure the units are set to show milliseconds.
Picture
6.) Double click on the imported track to show the exact length of it (length shown at bottom where you changed the units).
Picture
Link to Audacity:
http://audacity.sourceforge.net/
0 Comments



Leave a Reply.

    Please, pretty please make a donation to
    ​Musical android You can do it! It will feel amazing afterwards!!!

    RSS Feed

    Follow @MusicalAndroid1

    MAIN BLOG 

    All
    1 Bit
    303
    4 Bit
    7Pad
    8 Bit
    Ableton Link
    Ambient
    Android Emulator
    Animation
    Anmation
    Apk
    Arduino
    Art
    Article
    Audio Editing
    Audio Evolution Mobile
    Audioroute
    Audiotool
    Augmented Reality
    BandLab
    Bass
    Beatonal
    Beat Snap
    Beta
    Binaura
    Blacbeard
    Bluestacks
    Bluetooth
    Bytebeat
    Caustic 2
    Caustic 3
    Caustic Core
    Chiptune
    Chiptune Sunday
    Choir
    Collaboration
    Collaborative
    Common Fm
    Composing
    Contest
    Controller
    Cosmo Koroly
    Csound
    DAW
    Design
    DIY
    D.I.Y.
    DJ
    Documentary
    Downloads
    DRC
    Drone
    Drum Machine
    Drums
    Dub
    Easy Sundays
    Eclipse
    Effects
    EiPStudios
    Emulator
    Experimental
    Film Making
    Films
    Fl Studio Mobile
    FM Synthesis
    Forums
    Frank Malm
    Game
    Generative
    Gilzad
    Glitch
    Google
    Granular
    Graphic
    Groove Box
    Groove Machine Mobile
    G Stomper
    G-stomper
    Gstomper 3
    G Stomper Producer
    G-Stomper Producer
    G Stomper Rhythm
    G-Stomper Rhythm
    G Stomper Studio
    G Stomper Studio
    Guitar
    Happy Sunday
    Hardware
    Ideas
    Ideas-to-develop
    Ik Multimedia
    Imageline
    Interesting
    Interview
    Jasuto Modular
    Korg
    Laweffect
    Loopstack
    Magick
    Mastering
    Mazetools Soniface
    Metamodules
    Microtonal
    Midi
    Mikrowave
    Mixing
    Mobile Devices
    Mobmuplat
    Modular
    Monthly Compilations
    Moon Dub Media
    Multi Media
    Multi Track
    Musical Android
    Musical Interlude
    Music Band
    Music Maker Jam
    Music Releases
    Music Reviews
    Music Studio
    Music Theory
    Mysterious Saturday
    Mysterious Saturday
    Nanoloop
    Nature Oscillator
    Nightradio
    Ninja Jamm
    Noise
    Notation
    Note Recognition
    N Track Studio
    N-track Studio
    On Sale
    Oscilab
    Other
    Palm Sounds
    Phase 84
    PhonoPaper
    Photo
    Physical Modeling
    Piano
    Pixelwave
    Pixilang
    Pixitracker
    Pixivisor
    Playstore
    PPP
    Practice
    Presets
    Production
    Programming
    Promo Codes
    Promotional
    Pure Data
    PureSynth
    Quantum VJ HD
    Radio
    Ramblings
    Rd 4
    Reactable
    Recording
    Record Label
    Reloop
    Remixlive
    Roli Noise
    Sample Instrument
    Sampler
    Samples
    Samsung
    Sequencer
    SFZ
    Skarabee
    Social Media
    Software
    Songtree
    Soundcamp
    Soundcloud
    Sound Design
    Sound Effects
    Soundfont
    Soundtestroom
    Soundtrap
    SpaceCraft
    SpaceCraft Granular
    Spc Music Sketchpad
    Spectrumgen
    Stagelight
    Strings
    Sunday Film
    Sunday Relax
    Sundays
    SunVox
    Supreme Mpa
    Syntheogen
    Synthesizer
    The-hidden-master-samples
    Theremin
    Training
    Tuner
    Tutorial
    Ufxloops
    Updates
    USB
    Utilities
    VA Beast Synthesizer
    VA Beast Synthesizer
    Va-beast Synthesizer
    Video
    Virtual ANS
    Virtual Instrument
    Virtual Reality
    Visuals
    Vocal
    Vocoder
    VST
    Vsti
    VuKNOB
    Waveforms
    Websites
    Wejaam Sequencer
    Wotja
    Yellofier
    Zenbeats
    Zombie Queen

    Archives

    July 2020
    December 2019
    November 2019
    October 2019
    September 2019
    August 2019
    July 2019
    June 2019
    May 2019
    April 2019
    March 2019
    February 2019
    January 2019
    December 2018
    November 2018
    October 2018
    September 2018
    August 2018
    July 2018
    June 2018
    May 2018
    April 2018
    March 2018
    February 2018
    January 2018
    December 2017
    November 2017
    October 2017
    September 2017
    August 2017
    July 2017
    June 2017
    May 2017
    April 2017
    March 2017
    February 2017
    January 2017
    December 2016
    November 2016
    October 2016
    September 2016
    August 2016
    July 2016
    June 2016
    May 2016
    April 2016
    March 2016
    February 2016
    January 2016
    December 2015
    November 2015
    October 2015
    September 2015
    August 2015
    July 2015
    June 2015
    May 2015
    April 2015
    March 2015
    February 2015
    January 2015
    December 2014
    November 2014
    October 2014
    September 2014
    August 2014
    July 2014
    June 2014
    May 2014
    April 2014
    March 2014
    February 2014
    January 2014
    December 2013
    November 2013
    October 2013
    September 2013
    August 2013
    July 2013
    June 2013
    May 2013
    April 2013
    March 2013
    February 2013

Powered by Create your own unique website with customizable templates.