Old 09-25-2017, 06:35 AM   #1
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 1,695
Default No Master Track GUID

Anyone know why this is ?

It sure would come in handy for remote mixing to have a per project Master Track GUID.
__________________
The control surface integration thread: https://forum.cockos.com/showthread.php?t=183143 It's open source, feel free to donate: geoffwaddington.ca
Geoff Waddington is offline   Reply With Quote
Old 09-25-2017, 09:25 AM   #2
nofish
Human being with feelings
 
nofish's Avatar
 
Join Date: Oct 2007
Location: home is where the heart is
Posts: 7,292
Default

Maybe I'm misunderstanding (or do something wrong) but this seems to work here for getting Master Track GUID (as string here for test):

nofish is offline   Reply With Quote
Old 09-25-2017, 01:28 PM   #3
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 1,695
Default

So I thought, call it three different times and you will get three different answers.

To be fair, there are comments sprinkled throughout the SDK (reaper_plugin_functions.h)
about not using the master Track GUID.

Be nice to have one though.
__________________
The control surface integration thread: https://forum.cockos.com/showthread.php?t=183143 It's open source, feel free to donate: geoffwaddington.ca
Geoff Waddington is offline   Reply With Quote
Old 09-25-2017, 02:02 PM   #4
nofish
Human being with feelings
 
nofish's Avatar
 
Join Date: Oct 2007
Location: home is where the heart is
Posts: 7,292
Default

Ah you mean the fact that it's not constant during session.
Didn't quite get that sorry, but seems so indeed.

https://forum.cockos.com/showthread.php?t=176622

Last edited by nofish; 09-25-2017 at 02:23 PM.
nofish is offline   Reply With Quote
Old 09-25-2017, 05:38 PM   #5
Xenakios
Human being with feelings
 
Xenakios's Avatar
 
Join Date: Feb 2007
Location: Oulu, Finland
Posts: 6,789
Default

Quote:
Originally Posted by Geoff Waddington View Post
So I thought, call it three different times and you will get three different answers.

To be fair, there are comments sprinkled throughout the SDK (reaper_plugin_functions.h)
about not using the master Track GUID.

Be nice to have one though.
Couldn't you generate your own GUID per project that would represent the master track? (Extension plugins can store custom data into the .rpp, so once the GUID has been generated, it can persist.)
__________________
For info on SWS Reaper extension plugin (including Xenakios' previous extension/actions) :
http://www.sws-extension.org/
https://github.com/Jeff0S/sws
--
Xenakios blog (about HourGlass and λ) :
http://xenakios.wordpress.com/
Xenakios is online now   Reply With Quote
Old 09-25-2017, 07:27 PM   #6
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 1,695
Default

Quote:
Originally Posted by Xenakios View Post
Couldn't you generate your own GUID per project that would represent the master track? (Extension plugins can store custom data into the .rpp, so once the GUID has been generated, it can persist.)
Not according to reaper_plugin_functions.h.

Excerpt:
// GUID : GUID * : 16-byte GUID, can query or update (do not use on master though).
void* (*GetSetMediaTrackInfo)(MediaTrack* tr, const char* parmname, void* setNewVanue);
__________________
The control surface integration thread: https://forum.cockos.com/showthread.php?t=183143 It's open source, feel free to donate: geoffwaddington.ca
Geoff Waddington is offline   Reply With Quote
Old 09-26-2017, 07:17 AM   #7
Xenakios
Human being with feelings
 
Xenakios's Avatar
 
Join Date: Feb 2007
Location: Oulu, Finland
Posts: 6,789
Default

Quote:
Originally Posted by Geoff Waddington View Post
Not according to reaper_plugin_functions.h.

Excerpt:
// GUID : GUID * : 16-byte GUID, can query or update (do not use on master though).
void* (*GetSetMediaTrackInfo)(MediaTrack* tr, const char* parmname, void* setNewVanue);
No, I mean bypassing the Reaper internal GUID system for the master track. Reaper has a function to generate a GUID, but you would manage that yourself in some suitable way. Custom script/extension data can be stored and loaded from the project file with SetProjExtState and GetProjExtState etc...
__________________
For info on SWS Reaper extension plugin (including Xenakios' previous extension/actions) :
http://www.sws-extension.org/
https://github.com/Jeff0S/sws
--
Xenakios blog (about HourGlass and λ) :
http://xenakios.wordpress.com/
Xenakios is online now   Reply With Quote
Old 09-26-2017, 08:00 AM   #8
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 1,695
Default

Quote:
Originally Posted by Xenakios View Post
No, I mean bypassing the Reaper internal GUID system for the master track. Reaper has a function to generate a GUID, but you would manage that yourself in some suitable way. Custom script/extension data can be stored and loaded from the project file with SetProjExtState and GetProjExtState etc...
Ah, gotcha', good idea, thanks.
__________________
The control surface integration thread: https://forum.cockos.com/showthread.php?t=183143 It's open source, feel free to donate: geoffwaddington.ca
Geoff Waddington is offline   Reply With Quote
Old 10-08-2017, 07:32 AM   #9
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 1,695
Default

Quote:
Originally Posted by Xenakios View Post
No, I mean bypassing the Reaper internal GUID system for the master track. Reaper has a function to generate a GUID, but you would manage that yourself in some suitable way. Custom script/extension data can be stored and loaded from the project file with SetProjExtState and GetProjExtState etc...
Been thinking about this, I don't see how you overcome the following problem:

We assign GUID to Master Track.

We save this info in our config file, pseudo script = Master Track lock "$GUID3s-eRte- whatever a gUID looks like"

We also update ProjExt.

Users goes to quit Reaper, Reaper notices dirty flag due to ProjExt, ask if User wants to save, user declines because they didn't think they changed anything.

Houston, we have a problem.

We now have a GUID in our config file that points nowhere.

Have I missed something obvious ?
__________________
The control surface integration thread: https://forum.cockos.com/showthread.php?t=183143 It's open source, feel free to donate: geoffwaddington.ca
Geoff Waddington 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 01:43 PM.


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