Renaming Markers... is there a more efficient way?


#1

Hello fellow humans.
We’re approaching the heavy part of implementing our soundtrack and, while I’m new to FMOD, I’m hoping there might be a way to improve the efficiency of naming markers (or maybe this option exists somewhere?)… Currently I am creating a LOT of markers, and will be doing so for the remainder of the project. We’ve only just started, and I can already see this as a potential issue that is going to take a toll on my sanity. Making destination markers (or any custom marker) at the moment and then renaming it (I don’t know of many projects that wouldn’t want to rename their markers) is a 2 step process. Is there an option (or could you please make one) that assumes renaming is going to take place immediately upon creating the marker?

In the same way creating a new pattern in FL Studio immediately highlights the default “Pattern X” and invites the user to immediately start typing a new name, this simple feature would save me thousands of extra mouse clicks (and possibly my wrists from RSI)… Perhaps there is already a keyboard shortcut to create and rename the marker in one step?

Please and thanks!
Andrew =)


#2

Thanks for the suggestion. We’ll streamline the process of creating and naming destination markers in an upcoming release of FMOD Studio.

In the meantime, here’s a simple FMOD Studio script that creates a destination marker at the timeline cursor position, and allows you to name it immediately. If you copy this script into a text file with the .js filename extension in one of your FMOD Studio script directories, you’ll be able to use the listed keyboard shortcut (currently Ctrl+Shift+M) to create and name a marker more easily.

/* -------------------------------------------
Add and rename a destination marker
-------------------------------------------
*/

studio.menu.addMenuItem({ name: "FMOD Examples\\Add and Rename Destination Marker",
    keySequence: "Ctrl+Shift+M",
    isEnabled: function() { var event = studio.window.browserCurrent(); return event && event.isOfExactType("Event"); },
    execute: function() {
        var markerName = studio.system.getText("Name of new destination marker:", "New Marker");
        if(markerName) {
            var event = studio.window.browserCurrent();
            event.markerTracks[0].addNamedMarker(markerName, event.getCursorPosition(event.timeline))
        }
    },
});

#4

Thank you for that! =)

Our talented yet capricious programmer would like me to ask:
“Is there a function to call for adding transition markers too? I can’t seem to find any in the scripting documentation”

Thank you again. =)


#5

“Is there a function to call for adding transition markers too? I can’t seem to find any in the scripting documentation.”

There’s no helper function specific to transition markers, but your programmer can use project.create(entityName) to make a new managed object of any type. In this case, they’ll want to use project.create(TransitionMarker), then set the new marker’s position, markerTrack, timeline, and other properties such that the transition marker is on the correct event’s timeline and in the correct position.

For more information about how to correctly set the properties of a managedObject, I recommend using .dump() to get the properties of other objects of that kind.