Go Back   Cockos Incorporated Forums > REAPER Forums > REAPER Feature Requests

View Poll Results: Would you use this feature?
Yes, I would use it. 3 100.00%
No, I would not use it. 0 0%
I don't care. 0 0%
Voters: 3. You may not vote on this poll

Thread Tools Display Modes
Old 12-30-2019, 06:34 AM   #1
Human being with feelings
Join Date: Dec 2019
Posts: 1
Default FR: tempo automation/stretching for individual MIDI items

Add a feature that allows the tempo or playback rate of individual MIDI items to be automated or stretched, including gradual changes, similar to how stretch markers allow to stretch audio items.

Add a feature that allows to stretch MIDI items, or modify their playback rate, either as a square A to B, or as gradual transitions.
It could be a "simple" extension of stretch markers, allowing them to be used on MIDI items as with audio items. Having the full extent of point shapes - square, linear, fast start/end/both, bezier, etc... - would be ideal, of course, but even just linear stretching would already be incredibly useful.

Personally, I'd use it for implementing some classical music-inspired dynamic tempo effects, and plenty of poly-rhythmic or non-linear tempo experiments; but this feature could also be handy in common use, such as the creation of MIDI-based risers or fall effects, building up to drops and other such structural modulations.

As far as I can tell, there's currently no easy way to achieve this effect. The three closest option I see are:
1) Creating a subproject for a single or small group of midi items, and automating the tempo of the subproject.
This is a bit of a bother mainly in regards to having to render the subproject everytime something is change; but lining up the items can also be a challenge since you don't have the rest of the full project for direct reference as to how far or short you need to stretch
2) Using a tracker/sequencer plug-in FX and automating the internal BPM.
This method "outsources" MIDI items outside of the project, which can get in the way when you want to perform some global MIDI operations, like exporting all MIDI files from the project.
3) Rendering the audio and stretching the result with stretch markers.
This method requires some forward thinking if you want each note to sound the same - i.e. not time-stretched, just played at faster tempo. In the case of a synth sound with a noticeable attack, for example, you'd need to perform an inverted automation on the attack parameter before rendering. This is fiddly work, and requires re-rendering multiple times for testing.

For the most part, it'd probably look exactly the same as stretch markers on audio items, but simply applied to a MIDI item, and with the MIDI preview on the item stretching accordingly.
Nelfie is offline   Reply With Quote

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

All times are GMT -7. The time now is 01:39 PM.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2020, vBulletin Solutions Inc.