Sample Snap-to-beat Point

Hi!

Probably you all met the same problem: Let’s say, you have a realistic sample (a flute, a shaker, or a bass drum), and you have to cut the “valuable” beginning of the sample (or place it upper in the pattern editor) to match the beat when playing the song.
Is there any well-tried solution?
If no, I have an idea: In the sample editor there would be an additional vertical line (similar to the loop start/end) which could be placed anywhere to mark the sample position which should be snapped to the beat. When you play the song, the sample would start earlier so that the marked point would match the beat.
In addition, with this method it would be much easier to edit tracks of slow pads, reversed samples, etc…

Blt

:drummer:

YES!! I suggested that aeons ago, it was completely ignored, so I pouted.

But it’s a new dawn, a new day, so I give this topic 6 stars and hope for the best.

09XX offset…? or simply cut by hand…?

You’re completely missing the point… the part you throw away makes a very sharp, unnatural attack. Re-read it plz?

I DRAWEDZ YOU A TYPICAL SHAKER.

So this is the sample as it is, nothing gets cut away, to preserve hi fidelity and good times for all.

The green line is that thing the Blt suggested. Now when you place the sample on line 5, Renoise starts playing the sample earlier than that, so that it will be at the green line exactly when line 5 has been reached.

I understand your point. Don’t forget that often a natural sound is natural BECAUSE it’s off-time.

Then just put the sample also at the bottom of the previous pattern (depending on the attack of the sample).
Else… volume column/automation/envelope…? short fade-in on sample…? I know the sample editor is quite
basic still, but there are enough tools to keep a ‘natural’ sound, without losing tightness.

Dude, it’s a feature suggestion. Yes, there are workarounds for it - that goes for all features. I mean, why not just create .wav’s in a hex editor and skip all the silly audio editor business. Sorry, but that’s a general thing I had to get off my chest haha.

In this case the workaround means manually and labourously doing what Renoise could do in split seconds.

Hence the suggestion.

What you are talking about are the transients. And I see your point. Ability to set sample preplay would be extremely useful.

My +1

Uhhhh…09XX, Use the LPB settings, go to the previose track and set the sample a lil further back, use a delay plugin and cut out the dry signal…the sky’s the limit…

Yeah, well, first learn to effin read before giving all high and mighty and completely irrelevant advice… use a delay plugin and cut out the dry signal?? That’s nearly as rich as “Don’t forget that often a natural sound is natural BECAUSE it’s off-time.” :lol:

It really sounds like the solution to this thread is… USER DEFINABLE SAMPLE OFFSETS! … yes, I’m pretty sure that’s what you guys need. And it’s been discussed in great lengths, and I’m pretty sure it’s close to being implemented.

That makes 3 peeps who can’t read.

or 1 that doesn’t understand the potential of the offset…?
no need to get all ‘boo baa’, we’re trying to HELP.

I agree with Byte: being able to manually set the XX for 09XX would be KILLA KILLA KILLA

i agree with Byte and Botb

I’ve certainly found myself in that situation before, having to manually line up special samples such as reverse reverb effects or reversed cymbal crashes - basically anything which has a lead/intro portion that needs to play before some kind of main “hit” that needs to occur precisely at the start of a new pattern or beat. The traditional solution for me has been to simply find the correct timing through trial and error, placing notes ahead of time in earlier patterns (already suggested here), but I agree this can be rather cumbersome.

So I understand what is being asked for here, and I think it could be pretty interesting. What I’m wondering about, though, is what sort of extra load this would place on Renoise? In order for this to work, would Renoise have to constantly scan ahead to future notes/patterns to check for samples which require this kind of pre-triggering? Given that sample lengths are totally arbitrary and could range from a few milliseconds to several minutes or more, it could be very tricky and time consuming. Perhaps some kind of cache system could be created, I’m not sure. If these special notes were to be cached internally, I also wonder about how intensive it might be when adjusting the sample itself. The song could potentially contain thousands of these special notes, which Renoise would have to search for and update each time we change the marker position. Etc.

I personally can’t think of a sensible and practical way to handle it at the moment, but it is definitely an interesting idea.

.

Yeah, it’s complex to implement. But there are ways:

  • “Virtual notes”. Which are calculated when user enters or edits a note using offset samples, or changes pattern order list. The virtual notes are never displayed, but they are kept in memory. When playback reaches virtual note it triggers it as if it was real note. When playback reaches real note of the same instrument, nothing happens.

This topic overlaps a bit with the concept of “permanent notes” which are audible even if they are triggered on previous pattern, and the playback is started on other pattern.

Algorithm gurus, think about those things. It may be something that renoise needs, but I don’t see it being implemented in near future unfortunately. :(

Thinking about it… Maybe the lookahead doesn’t have to be that big. What if renoise read data from two places. First when idle scan ahead for let’s say two patterns. Then when playback is initiated it reads data from current row and current row + X rows, so if it discovers the note with offset trasnsient, it pushes it to event heap together with offset from current position. The event is initiated when the playback gets to the row where the event was offset to.

Ok… I’m sorry, I didn’t read everything. Now that I have, I agree that this would be a nice feature to have… and IMO, because of the offset calculating it probably goes hand in hand with continuous audio (or audio track) support … I’d love to be able to use a feature for this for instruments like pads though, where there’s a noticeable fade-in to the actual hit.

… BUT I STILL WANT SAMPLE OFFSETS! :P

… btw, drums were a horrible example :P … should’ve used pads or wind instruments instead ;)

placing a ‘snap-point’ or an offset-point is practically the same, right?
except the offset would allow FF snap-points, or am I missing something obvious as well?

The difference is in when the sample gets triggered.

Normally, with 9xx or an offset point or whatever - a note triggers the sample at that point.

With what is being suggested, the sample would start playing earlier (before the actual note that has been entered) so that it reaches the marked point when the note is reached.

It’s in the first post really, hence the “plz read” :P

I’ve mostly just cut off the beginning parts of samples to align them - but this could really make it easier to make things sound more “natural”. +1.

From a programming point of view, Suva’s “ghost notes” idea sounds like a good way to implement it. I’m not sure how hard this would be. If one would have to completely rearrange Renoise’s internal playback structure it would probably not be worth the effort.

The initial request here is to be able to move the “start point” of the sample, but have renoise still play the material before the “start point” … so for instance, you’ve got that nasty vocal track where the singing starts at some arbitrary point before you want the first beat to hit… you could set the point where you want the beat to hit, place the vocal note-on in your pattern on the same row where the beat would hit, but still have Renoise play the vocal chunk before the beat hits. Make sense?