Go Back   Cockos Incorporated Forums > REAPER Forums > ReaScript, JSFX, REAPER Plug-in Extensions, Developer Forum

Reply
 
Thread Tools Display Modes
Old 03-26-2020, 11:17 PM   #1
mpl
Human being with feelings
 
mpl's Avatar
 
Join Date: Oct 2013
Location: Moscow, Russia
Posts: 4,026
Default MPL Import Session Data (parsing and taking data from RPP file)

ImportSessionData is a Lua script for REAPER.

It is designed to take REAPER project data (project settings, track, items, FX) into current project.


Requirements:
REAPER 5.95+
ReaPack 1.2+
Download: ReaPack.com (MPL`s repository is embedded into default ReaPack configuration)

Install:
  • run ActionList > ReaPack: Browse packages...
  • navigate and install (rightclick) Import Session Data and Various_functions packages, then click 'Apply'
  • run ActionList > ReaPack: Synchronize packages

Telegram channel for MPL scripts: http://t.me/mplscripts_chat


Attached Images
File Type: jpg Untitled.jpg (111.1 KB, 2759 views)

Last edited by mpl; 07-30-2022 at 06:54 AM.
mpl is offline   Reply With Quote
Old 03-27-2020, 12:51 AM   #2
Triode
Human being with feelings
 
Triode's Avatar
 
Join Date: Jan 2012
Posts: 1,190
Default

This looks fabulous.

Definitely will try and post back here
__________________
Mixing / Brush and Beater Drums Online: www.outoftheboxsounds.com
Triode is offline   Reply With Quote
Old 03-27-2020, 02:22 AM   #3
Triode
Human being with feelings
 
Triode's Avatar
 
Join Date: Jan 2012
Posts: 1,190
Default

Donation sent and thank you mpl.

I have some suggestions:

It would be great if the script looked at the source tracks and automatically mapped them to the destination tracks based on the first few characters in the initial window. (like in PT). That would save a lot of clicking about.

Secondly it looks at the moment like the fx are added to whatever fx are already on the track. I think the script should remove the destination tracks' current fx first, then import from the source tracks.

It would also be great if the folder structure of the source tracks was copied for new tracks. Connected to this: new tracks that are child tracks would be placed in the session in the same position rather than at the end.

Lastly if the script would also import phase, input settings and monitor settings it would be more complete.

Edit: Also the script could include the master track fx as an option to import

If two destination tracks have the same name, ask the user which one to use


I'm on Reaper 6.05 and SWS 2.11.0.0
__________________
Mixing / Brush and Beater Drums Online: www.outoftheboxsounds.com

Last edited by Triode; 03-27-2020 at 02:31 AM.
Triode is offline   Reply With Quote
Old 03-27-2020, 09:36 AM   #4
Alez156
Human being with feelings
 
Alez156's Avatar
 
Join Date: Jun 2015
Location: Venezuela
Posts: 391
Default

This is honestly so amazing. I get a lot of people asking me how to do this in REAPER, and while using snapshots is great, it's just a lot of extra steps while importing session data you can just import any .rpp and select whatever you want from there.

I will be testing this later tonight and will let you know how it goes!

This script is muuuuch appreciated, MPL thank you!
__________________
💙 I run Reapertips.com | 🦋 Reapertips Theme | ☕️ Buy me a coffee
🎸 Modern Metal Songwriting REAPER Template
Alez156 is offline   Reply With Quote
Old 03-27-2020, 12:23 PM   #5
J Reverb
Human being with feelings
 
Join Date: Jul 2009
Posts: 1,071
Default

Spot on MPL ! Just been playing around with this it's really useful thanks !
Just one thing the GUI window sticks and then jumps to new position when moving it around on the screen. It seems it's not redrawing properly maybe as this is not happening with other plugins.

Anyway I have to say hats off ! cheers for another brill script
J Reverb is offline   Reply With Quote
Old 03-27-2020, 01:46 PM   #6
zookthespook
Human being with feelings
 
Join Date: Mar 2015
Location: India Mumbai
Posts: 819
Default

whoaaa !! MPL you are crazy !
Keep calm Keep coding..
Be safe

zook
zookthespook is offline   Reply With Quote
Old 03-29-2020, 01:03 PM   #7
todoublez
Human being with feelings
 
todoublez's Avatar
 
Join Date: Aug 2019
Location: beijing
Posts: 614
Default

Hi mpl, got this error right after I finished browsing data to import.

here's the video to perform the error


Code:
...portSessionData_functions/mpl_ImportSessionData_data.lua:218: invalid pattern capture
and here's my rpp file for u to test.
its in my attachment.

OS info and RP version are down below in my signature.
this is a promising feature
thx for the Script !!!!

w8 for u to solve it , so I can do further testing
Attached Files
File Type: zip mpl_test.zip (381.9 KB, 502 views)

Last edited by todoublez; 03-29-2020 at 01:08 PM.
todoublez is offline   Reply With Quote
Old 03-29-2020, 01:43 PM   #8
mpl
Human being with feelings
 
mpl's Avatar
 
Join Date: Oct 2013
Location: Moscow, Russia
Posts: 4,026
Default

Quote:
Originally Posted by todoublez View Post
Hi mpl, got this error right after I finished browsing data to import.
I tried with 1.07 and it seems to load fine.

Quote:
Originally Posted by Tone Ranger View Post
Quick question, what is meant by "Tracks RAW data (chunk)"? Thanks again!!
There is so much data in pieces of RPP related to the track (items stuff, envelopes etc - everything is inside track chunk), so there are two ways to import it.

1) translate rough text from one RPP to another (almost) without any decoding process. But in this case you can`t choose what you want to translate. It imports anything. And could bring some strange results (especially problems with routing and unique IDs, which I prevented by rough destroing such lines from track chunk while import). Not nice at all. But bring all the existing stuff.

2) When you check which parameters you want to translate, the script:
- insert new temporary track somewhere
- apply raw track chunk from source project to temporary track
- take only parameters or stuff you need using native APIs, no chunking
- remove temporary track.
More smart method. Works way carefully. But doesn`t import all functions, limited to API (I didn`t add support for all btw so ask if something you need still not in list)

Last edited by mpl; 05-06-2020 at 02:22 PM.
mpl is offline   Reply With Quote
Old 03-30-2020, 12:45 AM   #9
todoublez
Human being with feelings
 
todoublez's Avatar
 
Join Date: Aug 2019
Location: beijing
Posts: 614
Default

Quote:
Originally Posted by mpl View Post
I tried with 1.07 and it seems to load fine.
oh Jes..sry I didn't see the update.
I'll test it with updates and report back to ya.
have a nice day.
todoublez is offline   Reply With Quote
Old 04-02-2020, 09:12 AM   #10
todoublez
Human being with feelings
 
todoublez's Avatar
 
Join Date: Aug 2019
Location: beijing
Posts: 614
Default

Hi mpl, after doing import session data,

all the audio items shown blank with no waveform and no sound,
is it normal ?

I checked the "media" in the session folder, seemed the audio files didn't copy into the target session.

Last edited by todoublez; 04-02-2020 at 09:24 AM.
todoublez is offline   Reply With Quote
Old 04-02-2020, 10:55 AM   #11
mpl
Human being with feelings
 
mpl's Avatar
 
Join Date: Oct 2013
Location: Moscow, Russia
Posts: 4,026
Default

Quote:
Originally Posted by todoublez View Post
Hi mpl, after doing import session data,
all the audio items shown blank with no waveform and no sound,
is it normal ?
I checked the "media" in the session folder, seemed the audio files didn't copy into the target session.
How the source path look like and what options supposed to be in this case? I think I can try handling copy files/set new source (can be tricky though). Currently items data ported directly with no handling paths, moving source etc.
mpl is offline   Reply With Quote
Old 04-02-2020, 10:58 AM   #12
Tone Ranger
Human being with feelings
 
Tone Ranger's Avatar
 
Join Date: Jan 2019
Location: Toronto, Canada
Posts: 548
Default

@mpl Thanks for all of your work on this so far! Really impressive. The only thing that's really holding me back from being able to use it in place of SWS Snapshots is sends/routing not importing. I do a LOT of busing when mixing, so being able to import routing (sends/receives as well as master/parent send on or off) is key. Just wanted to reinforce the importance of it that others brought up, fingers crossed there's a way to make it work! :-)

Also, a +1 on the idea that a simple click (maybe RMB) on a track option will set it to import as new track at the end of the session....or at least be able to select several tracks on the left and hold a modifier to set them all to import as new track when you set one of the selected tracks to that option....I hope that makes sense!

Again, thanks for tackling this, @mpl !!
Tone Ranger is online now   Reply With Quote
Old 04-03-2020, 01:32 PM   #13
pepe44
Human being with feelings
 
pepe44's Avatar
 
Join Date: Jul 2013
Location: Portugal
Posts: 1,827
Default

Thanks, following!
pepe44 is offline   Reply With Quote
Old 05-13-2020, 01:54 AM   #14
musicbynumbers
Human being with feelings
 
musicbynumbers's Avatar
 
Join Date: Jun 2009
Location: South, UK
Posts: 14,235
Default

Wow! Very useful script!

I'll give it a try when I've got time and donate when I get round to using it in real life as I'm sure it will be useful at some point for sure!
__________________
subproject FRs click here
note: don't search for my pseudonym on the web. The "musicbynumbers" you find is not me or the name I use for my own music.
musicbynumbers is offline   Reply With Quote
Old 12-28-2021, 03:14 PM   #15
Reflected
Human being with feelings
 
Reflected's Avatar
 
Join Date: Jul 2009
Posts: 3,297
Default

big love! subscribed. will test soon
Reflected is offline   Reply With Quote
Old 12-28-2021, 03:28 PM   #16
Reflected
Human being with feelings
 
Reflected's Avatar
 
Join Date: Jul 2009
Posts: 3,297
Default

donation sent
Reflected is offline   Reply With Quote
Old 03-21-2023, 12:31 PM   #17
Reflected
Human being with feelings
 
Reflected's Avatar
 
Join Date: Jul 2009
Posts: 3,297
Default

Dear Michael

Can you make this work on track templates too?
Reflected is offline   Reply With Quote
Old 04-01-2023, 01:18 PM   #18
mpl
Human being with feelings
 
mpl's Avatar
 
Join Date: Oct 2013
Location: Moscow, Russia
Posts: 4,026
Default

Quote:
Originally Posted by Reflected View Post
Dear Michael

Can you make this work on track templates too?
added support RtrackTemplates for 2.11
mpl is offline   Reply With Quote
Old 09-20-2023, 01:43 PM   #19
Gass n Klang
Human being with feelings
 
Gass n Klang's Avatar
 
Join Date: Nov 2015
Location: Cologne
Posts: 1,680
Default

perfect i missed that one!
__________________
https://juliusgass.de
Gass n Klang is offline   Reply With Quote
Old 09-24-2023, 10:23 PM   #20
The Bunker
Human being with feelings
 
Join Date: Nov 2016
Posts: 443
Default

Hi, firstly thanks for the awesome script. Its really helped me speed up some of my process. Was just wondering, do you have any idea why when it imports things like group names from one project to another, it puts those names in quotation marks? Its not a huge deal but seems odd and I was wondering if I was doing something incorrectly or if it is intended behaviour.
The Bunker is offline   Reply With Quote
Old 03-30-2020, 10:19 AM   #21
Tone Ranger
Human being with feelings
 
Tone Ranger's Avatar
 
Join Date: Jan 2019
Location: Toronto, Canada
Posts: 548
Default

Quote:
Originally Posted by mpl View Post
There is a so much data in a pieces of RPP related to track, so instead of decoding LOT of parameters, items stuff which is also iside track, simpliest way is to translate rough text from one RPP to another (almost) without any decoding process. But in this case you can`t choose what you want to translate. When you check which parameters you want to translate, the script also copy RAW chunk, but it does that for newly created track and THEN use native API ways to translate some parameters carefully.
Thanks MPL!!
Tone Ranger is online now   Reply With Quote
Old 03-30-2020, 11:56 AM   #22
timothys_monster
Human being with feelings
 
timothys_monster's Avatar
 
Join Date: Jan 2012
Location: Germany
Posts: 1,166
Default

Hey MPL,

yesterday I used the script for the first time in my workflow and it is really super helpful. Donation sent

So, just to be sure: the only way to select tracks to import them to your project is by choosing "New track at the end of tracklist"?

I am looking for the super straight forward import function in PT by simply clicking the desired track and in the end choosing "import". That way maybe one could even import after the last selected tracks.

Would be amazing to have it a bit less clicky if you know what I mean... unless I don't get it and it has already been implemented.
timothys_monster is offline   Reply With Quote
Old 03-31-2020, 11:44 AM   #23
mpl
Human being with feelings
 
mpl's Avatar
 
Join Date: Oct 2013
Location: Moscow, Russia
Posts: 4,026
Default

Quote:
Originally Posted by timothys_monster View Post
I am looking for the super straight forward import function in PT by simply clicking the desired track and in the end choosing "import". That way maybe one could even import after the last selected tracks.
For 1.11 I added select function for tracklist. You can match selected tracks (if nothing selected, script try to match all tracks) or set new track as a destination (see tracklist menu).
mpl is offline   Reply With Quote
Old 03-23-2024, 10:03 AM   #24
martotarto
Human being with feelings
 
Join Date: Jul 2020
Posts: 2
Default

Tried and love it, I use it quite often to insert a template into a project.
Please, I am asking MPL to include the routing as well as the folder track,because when I load, it doesn't route my sends and returns, and it doesn't give me the track folder with child track,everything is tha same and everything go into M (master0
martotarto is offline   Reply With Quote
Reply

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 03:56 PM.


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