I updated the package with the backward-compatible changes (please see my initial post on this subject). The updated script adds a prompt to ask if you want to work with 3 beats per bar instead of 4 (e.g. if the song is is 3/4 meter). Unfortunately, the script only supports meters with 3 or 4 beats per bar and does not support meter changes within a song. Also, the script ignores chord changes that do not occur on a beat boundary.crossovercable wrote: Mon Jun 07, 2021 10:28 pmIt's 4.5 I'm testing on, best to have it backward compatible I suppose.
Scripting in Studio One
- KVRAF
- 1724 posts since 21 Sep, 2007 from USA
[Core i7 8700 | 32GB DDR4 | Win11 x64 | Studio One 7 Pro | WASAPI ]
-
crossovercable crossovercable https://www.kvraudio.com/forum/memberlist.php?mode=viewprofile&u=329708
- KVRian
- 576 posts since 26 May, 2014
Thanks I appreciate the help !
EDIT: I copied the chords to a new song and they printed fine so thanks again, if you have a PayPal I will send you a donation.
It's just going wrong at the start and at the end where the G goes for a bar and a half then the A starts on beat 3, but don't worry too much as I will try and work it out.
Start

End

EDIT: I copied the chords to a new song and they printed fine so thanks again, if you have a PayPal I will send you a donation.
It's just going wrong at the start and at the end where the G goes for a bar and a half then the A starts on beat 3, but don't worry too much as I will try and work it out.
Start

End

-
crossovercable crossovercable https://www.kvraudio.com/forum/memberlist.php?mode=viewprofile&u=329708
- KVRian
- 576 posts since 26 May, 2014
I copied the chords to a new song and they printed fine so thanks again, if you have a PayPal I will send you a donation.
-
crossovercable crossovercable https://www.kvraudio.com/forum/memberlist.php?mode=viewprofile&u=329708
- KVRian
- 576 posts since 26 May, 2014
I fixed a couple of things:
Added "|" after new line
Changed "♯" to "#" and "♭" to "b" for it to take.

Code: Select all
// Add a new line after every 8 bars (except if last beat)
textBuffer.push(nl);
textBuffer.push("|");Code: Select all
var chordName = chord.name;
if (chordName != previousChordName) {
// Print the new chord name
chordName1 = chordName.replace(/\u266f/, '#');
chordName1 = chordName1.replace(/\u266d/, 'b');
textBuffer.push(chordName1);
previousChordName = chordName;
}
You do not have the required permissions to view the files attached to this post.
- KVRAF
- 1724 posts since 21 Sep, 2007 from USA
Thanks for sharing your changes; regretfully, I did not thoroughly test my script against many edge cases; also I was unable to test an import into BIAB since I do not own the a recent version of the product (I did purchase the first 16-bit Windows version of the product back in the 1990s). I have updated the download attachment in my initial post to be current with your fixes.crossovercable wrote: Thu Jun 10, 2021 3:34 am I fixed a couple of things:
ChordsToBiabTextFile.package.zip
I had discovered that I do not need to change the extension from ".zip" to ".package"; at least not with Studio 5 anyway. Does ".zip" as the extension not work for you?
[Core i7 8700 | 32GB DDR4 | Win11 x64 | Studio One 7 Pro | WASAPI ]
-
crossovercable crossovercable https://www.kvraudio.com/forum/memberlist.php?mode=viewprofile&u=329708
- KVRian
- 576 posts since 26 May, 2014
I'm used to Beta testing, that's how the Biab Plugin came around, it's all good.
I tried it with zip in 4.5 and it works as you say, it may of been an early version I tried it in before ?
Has the version of Biab you have got the RealTracks ?
If you think this is possible below I will have a go at it, was looking at the free Prime version it has no chord track but you can have empty midi items that you can name and color, if the pos, name and color events can be read, so this could be use as an entry for users if the below can be done as the scripts work in Prime.
I tried it with zip in 4.5 and it works as you say, it may of been an early version I tried it in before ?
Has the version of Biab you have got the RealTracks ?
If you think this is possible below I will have a go at it, was looking at the free Prime version it has no chord track but you can have empty midi items that you can name and color, if the pos, name and color events can be read, so this could be use as an entry for users if the below can be done as the scripts work in Prime.
crossovercable wrote: Mon Jun 07, 2021 10:50 pm Also I made a script in Reaper to fit pre recorded audio to the chord track (region track),
The audio file has a csv with the same name with it, the file is imported then start time and end time is adjusted to fit the chord region. The color are for different song sections verse, chorus, ending etc.. Users/musicians create the source tracks with a variety of popular chords and share them. With S1 using Melodyne any unavailable chords can be created from another chord.
If S1 can import media via script, set the start end time and read the color integer of the chords this would be great.
Guitar, Strum, Ev8 4-4 120bpm.wav
Guitar, Strum, Ev8 4-4 120bpm.csv
![]()
Code: Select all
#,Name,Start,End,Length,Color R1,,1.1.00,3.1.00,2.0.00,FF80C0 R2,A,3.1.00,5.1.00,2.0.00,E41A27 R3,A#,5.1.00,7.1.00,2.0.00,E41A27 R4,B,7.1.00,9.1.00,2.0.00,E41A27 R5,C,9.1.00,11.1.00,2.0.00,E41A27 R6,C#,11.1.00,13.1.00,2.0.00,E41A27 R7,D,13.1.00,15.1.00,2.0.00,E41A27
-
crossovercable crossovercable https://www.kvraudio.com/forum/memberlist.php?mode=viewprofile&u=329708
- KVRian
- 576 posts since 26 May, 2014
This is Studio One 4/4 to 3/4 to 4/4 then the same bars set in the BBPlugin.
In the BiabVST the bar settings are changed to 3 beats and the Style to a 3/4 then back to 4 beats and a 4/4 Style
Choose 4 beats in the script.
Full Screen

In the BiabVST the bar settings are changed to 3 beats and the Style to a 3/4 then back to 4 beats and a 4/4 Style
Choose 4 beats in the script.
Full Screen

-
- KVRer
- 1 posts since 24 Jul, 2022
LawrenceF, Any chance you could re-post the Studio One scripting video, Part 1 the Basics, that was linked in this forum? It is is no longer available on YouTube. I know this is an old post, but there still is not much info out there on S1 scripting.
Dale
Dale
-
crossovercable crossovercable https://www.kvraudio.com/forum/memberlist.php?mode=viewprofile&u=329708
- KVRian
- 576 posts since 26 May, 2014
I have all the source file names, tempo, start position, end position in source file, source position in project and pitch shift amount in a text file.
With Reaper I use
reaper.InsertMedia( source_file, 0 )
then set
reaper.SetMediaItemTakeInfo_Value( sel_take, "D_PITCH", pitch )
reaper.SetMediaItemTakeInfo_Value( sel_take, "D_STARTOFFS", source_time_pos )
reaper.SetMediaItemInfo_Value( sel_item, "D_POSITION", track_time_pos )
reaper.SetMediaItemLength(sel_item, source_time_length, true)
So I want to do the same with Studio One, anyone know if this is possible ?

With Reaper I use
reaper.InsertMedia( source_file, 0 )
then set
reaper.SetMediaItemTakeInfo_Value( sel_take, "D_PITCH", pitch )
reaper.SetMediaItemTakeInfo_Value( sel_take, "D_STARTOFFS", source_time_pos )
reaper.SetMediaItemInfo_Value( sel_item, "D_POSITION", track_time_pos )
reaper.SetMediaItemLength(sel_item, source_time_length, true)
So I want to do the same with Studio One, anyone know if this is possible ?
-
crossovercable crossovercable https://www.kvraudio.com/forum/memberlist.php?mode=viewprofile&u=329708
- KVRian
- 576 posts since 26 May, 2014
In Studio One you have an Arranger mode that you can split your song up into regions and go to them in live playback.
Just wondering if this can be controlled with a midi keyboard with scripting using the midi chord input detection function to go to that chord section within the timeline that is set to loop until the next chord is entered.
I know I'm probably asking on the wrong planet for this as Studio One scripting information is virtually non existent, but none the less I'll give it a go, again.
I have heard rumors about CIA clearance needed and users going missing after asking in the Presonus forum about scripting
Just wondering if this can be controlled with a midi keyboard with scripting using the midi chord input detection function to go to that chord section within the timeline that is set to loop until the next chord is entered.
I know I'm probably asking on the wrong planet for this as Studio One scripting information is virtually non existent, but none the less I'll give it a go, again.
I have heard rumors about CIA clearance needed and users going missing after asking in the Presonus forum about scripting
- KVRian
- 1277 posts since 10 Oct, 2002 from Barcelona
Not that bad. I tried for some weeks and they finally gave me a contact to the Germany developer team. Once I get in contact with them, they told me the reason:crossovercable wrote: Tue Jan 09, 2024 2:06 am I have heard rumors about CIA clearance needed and users going missing after asking in the Presonus forum about scripting![]()
- There's no documentation available. Thanks for your interest.
-
crossovercable crossovercable https://www.kvraudio.com/forum/memberlist.php?mode=viewprofile&u=329708
- KVRian
- 576 posts since 26 May, 2014
I do scripting in Reaper and users always ask if I can do that with Studio One.
Look how easy this is:
https://www.extremraym.com/cloud/reascript-doc/
Look how easy this is:
https://www.extremraym.com/cloud/reascript-doc/
-
- KVRist
- 180 posts since 12 Mar, 2014
Was able to successfully vibe code a Flam Tool that mimics the behavior of the FL Studio Flam Tool.
You do not have the required permissions to view the files attached to this post.
- KVRian
- 1277 posts since 10 Oct, 2002 from Barcelona
Would you like to share the code?Fidelitymusic wrote: Mon Apr 06, 2026 2:58 am Was able to successfully vibe code a Flam Tool that mimics the behavior of the FL Studio Flam Tool.
Studio Pro - Flam Tool Script.pngpianoroll_flam.png
-
- KVRist
- 180 posts since 12 Mar, 2014
Once I'm done I will, I wanna update the UI. I'm building up the SkinFile documentation, made a lot of progress so far.