Author Topic: How do Ticks per row translate into normal bpm?  (Read 543 times)

Offline Louigi Verona

  • Extreme artist
  • *****
  • Posts: 1,276
  • Gender: Male
    • http://www.louigiverona.com/
How do Ticks per row translate into normal bpm?
« on: October 05, 2019, 12:22:41 »
When working in a traditional DAW, you have bpms. So, let's say I have a 125 bpm track.

From what I understand, a tracker tempo corresponding to this would be 125 bpm 6 ticks per row. So, what does changing ticks per row do to the tempo? I did read the manual, but I found it very difficult to understand. I also played around with trying to expand the pattern so that I can do shuffled notes without the tick per row change trick, but simply by placing the notes in the shuffle positions, but then all the notes begin to be played differently, since you need to multiply the tempo by 2 so that you effectively "zoom in".

Anyway, quite confused about this whole thing. If someone could help with a link or an explanation, please!  :-*

Offline Exhale

  • Workaholic artist
  • ***
  • Posts: 170
    • http://www.exhale7.110mb.com
Re: How do Ticks per row translate into normal bpm?
« Reply #1 on: October 06, 2019, 03:51:10 »
Ok I am no programmer, and cannot give you definitive answers on this, but the way I have understood ticks per row the whole time I have used modplug is like this: (I will use mptm/it code in this set of examples)
Each row on modplug is quite obvious, it is the place you can put all your information so... C-5 01 v32 ... | A#4 02 v64 ... | and so on... We start with 64 rows in a pattern by default ...that is the row, the ticks per row is the measure between each of those rows and the time I tend to need to consider this is when using the effect SD0-SDF - note delay... As far as I remember, classic timing does change timing if you change the ticks per row but I think that has been discontinued in the modern timing - I noticed this first when I made a song in modern timing one of the first times and went to change the speed by changing the ticks per row and suddenly the only thing changing was my instrument note offs and other filters - I went with it and made it a feature of the song. These days if you are on modern timing, the way to change the timing mid song is the TXX command in your effects column... if this hasn't answered your question then I apologize - and guys with more technical knowledge, I hope I haven't butchered things - if I did, I apologize to you too.
___________________
The turtle moves!

Offline Saga Musix

  • OpenMPT Developers
  • *****
  • Posts: 6,792
  • aka Jojo
    • Download music, samples, VST plugins: Saga Musix Website
  • Operating System: Windows 10 x64
Re: How do Ticks per row translate into normal bpm?
« Reply #2 on: October 06, 2019, 08:55:32 »
Louigi, did you read this part? It explains everything how each part of tempo commands make up the tempo in the various tempo modes. https://wiki.openmpt.org/Manual:_Song_Properties#Tempo_Mode
» No support, bug reports, feature requests via private messages - they will not be answered. Use the forums and the issue tracker so that everyone can benefit from your post.

Offline Louigi Verona

  • Extreme artist
  • *****
  • Posts: 1,276
  • Gender: Male
    • http://www.louigiverona.com/
Re: How do Ticks per row translate into normal bpm?
« Reply #3 on: October 06, 2019, 10:47:11 »
Louigi, did you read this part? It explains everything how each part of tempo commands make up the tempo in the various tempo modes. https://wiki.openmpt.org/Manual:_Song_Properties#Tempo_Mode

I have. And I find the description to be very confusing. In fact, the way trackers handle playback is just objectively complex.

Specifically, these things are unclear:

1. What is "faster note playback speed" in this context?
2. What are "instrument envelope ticks": does faster or slower "note playback speed" mean the amount of ticks per row?
3. In the Classic mode it says there are "24 ticks per minute". How can there be a fixed amount of ticks per minute when you can clearly change the amount of ticks per row?

Offline dem1

  • Shy artist
  • Posts: 1
  • Operating System: Windows 7
Re: How do Ticks per row translate into normal bpm?
« Reply #4 on: October 08, 2019, 03:29:01 »
I've attached a module which will hopefully clarify. Channel 2 has a tremor effect in it, which turns on/off every six ticks. The effect column in Channel 1 gradually increases the Speed (ticks/row) throughout each pattern. The effect column in Channel 2 sets the Tempo to 96 in pattern 1, and 128 in pattern 2. It's in modern tempo mode, so the bpm in each pattern is just the Tempo, while the tremor effect gets faster and faster. Change it to Classic, and the tremor effect stays the same speed while the song plays slower and slower. Instrument envelopes behave like the tremolo too - take a look at the Instruments tab while the song plays. Play around with the Tempo and Speed settings to get a feel for this.

I have. And I find the description to be very confusing. In fact, the way trackers handle playback is just objectively complex.

Yes it is. However, if you are not concerned with making music for older formats or doing anything really fancy with instrument envelopes, just use MPTM format with Modern tempo mode. That way, Tempo = BPM, regardless of what Speed setting you use.

Quote
1. What is "faster note playback speed" in this context?

I think all that phrase is supposed to indicate is that tempo works generally how you'd expect, no matter what tempo mode you use. High tempo songs play faster.
"Note playback speed" is used to avoid ambiguities: the pattern scrolls by quicker when you make the note playback speed faster. In modern tempo mode, the song can contain things which don't care about how fast the pattern is scrolling. For details, see my response to 2.
"Beats per minute" and "Rows per minute" are units used to measure note playback speed.

Quote
2. What are "instrument envelope ticks": does faster or slower "note playback speed" mean the amount of ticks per row?

Do you know what an instrument envelope is? That might make this easier to understand. See https://wiki.openmpt.org/Manual:_Instruments#Envelope_Editor and https://en.wikipedia.org/wiki/Envelope_(music)

There are two different notions of speed here.

On the one hand, you have information about the rhythm, metre, tempo, &c. of a song. This is the stuff that's normally included on sheet music - it indicates how long a sixteenth note should last, say. This is the notion of speed that "note playback speed" is trying to capture. The relationship between note playback speed and ticks per row (capital S Speed) depends on the tempo mode. In Modern mode, there is no relationship. In Classic and Alternative modes, increasing the Speed decreases the note playback speed.

On the other hand, you have other timing information that would not be included in sheet music, but must be specified when you ask a computer to play music. Things like "exactly how long does this grace note last?", "during this drum roll, exactly how often should I hit the drum?", "if I press this key on the 'piano' right now, how loud should the note be exactly five eighths of a beat later?". To answer these questions, you probably need finer control over timing than can be conveniently specified by sheet music. Trackers use ticks, a subdivision of the row, when talking about these very specific lengths of time. With the default time signature and Speed settings, a tick is the length of a "ninety-sixth note".

Ticks are the time measurement used when creating an instrument's envelope. In Modern tempo mode, the row is a constant amount of time (all else being equal), and changing the Speed changes the span of time encompassed by a tick. Instrument envelopes (and anything else whose timing is specified by ticks, like Sample Auto-Vibrato, the Note Delay effect, and Instrument Fade Out) play faster when you increase the Speed. In Classic and Alternative modes, the tick is a constant amount of time (again, all else being equal), and changing the Speed changes the span of time encompassed by a row.

Quote
3. In the Classic mode it says there are "24 ticks per minute". How can there be a fixed amount of ticks per minute when you can clearly change the amount of ticks per row?

You can change the number of ticks per row, yes. The number of ticks per minute stays the same. So in order to keep the ticks per minute constant, the number of rows per minute (i.e. the "note playback speed") must change, too! This applies to Alternative mode, which is Classic with a more convenient number of ticks per minute.

Offline Saga Musix

  • OpenMPT Developers
  • *****
  • Posts: 6,792
  • aka Jojo
    • Download music, samples, VST plugins: Saga Musix Website
  • Operating System: Windows 10 x64
Re: How do Ticks per row translate into normal bpm?
« Reply #5 on: October 08, 2019, 08:06:19 »
Thanks dem1 for the great explanation. I hope that will clear up most of the confusion. In addition:

Quote
3. In the Classic mode it says there are "24 ticks per minute". How can there be a fixed amount of ticks per minute when you can clearly change the amount of ticks per row?
As the description of the row says, this is the tempo unit, i.e. what one unit of "tempo" means. In modern tempo mode, one unit is a BPM, and that doesn't mean that there is a fixed number of beats per minute in modern tempo mode but it means that it's the base unit from which all tempo calculations derive from.
» No support, bug reports, feature requests via private messages - they will not be answered. Use the forums and the issue tracker so that everyone can benefit from your post.

Offline LPChip

  • Administrator
  • *****
  • Posts: 5,077
    • http://lpchip.nl
  • Operating System: Windows 10 Pro x64
Re: How do Ticks per row translate into normal bpm?
« Reply #6 on: October 08, 2019, 09:54:49 »
Also, small addendum.. Keep in mind, that although 125 tempo with speed 6 is considered 125 BPM, due to how trackers work, it is not exactly 125 BPM, but comes very close to it. Modern tempo will always be exactly 125 BPM.
"Heh, maybe I should've joined the compo only because it would've meant I wouldn't have had to worry about a damn EQ or compressor for a change. " - Atlantis
"yes.. I think in this case it was wishful thinking: MPT is makng my life hard so it must be wrong" - Rewbs

Offline Saga Musix

  • OpenMPT Developers
  • *****
  • Posts: 6,792
  • aka Jojo
    • Download music, samples, VST plugins: Saga Musix Website
  • Operating System: Windows 10 x64
Re: How do Ticks per row translate into normal bpm?
« Reply #7 on: October 08, 2019, 10:03:03 »
You almost got it right... at tempo 125, the tempo is a precise 125 BPM... but at most other tempos there will be rounding errors. You can see the actual BPM by going to Player -> Approximate Real BPM. It's also important to keep in mind that the rounding errors will differ depending on the audio mix rate. However, unless the tempo goes well into the 1000s (which it can't at the moment) this different isn't very obvious.

Yes, tracker tempo is a mess. And there is nothing we can do about that because that's how things were done in the 80s. Use modern tempo if you can, it avoids all of those headaches.
» No support, bug reports, feature requests via private messages - they will not be answered. Use the forums and the issue tracker so that everyone can benefit from your post.

Offline Louigi Verona

  • Extreme artist
  • *****
  • Posts: 1,276
  • Gender: Male
    • http://www.louigiverona.com/
Re: How do Ticks per row translate into normal bpm?
« Reply #8 on: October 09, 2019, 09:13:59 »
Thank you for all the responses, folks. dem1, huge thanks for the example, I downloaded it and will study it.