Old 12-05-2021, 09:33 AM   #1
mpl
Human being with feelings
 
mpl's Avatar
 
Join Date: Oct 2013
Location: Moscow, Russia
Posts: 3,960
Default API: GeStuffByGUID / GetStuffGUID

There are a bunch of 3rd party functions (or just plain coded snippets) for getting pointers` GUID or pointers by GUID. However, they all uses chunking which is hell slow in various cases. I would replace SWS functions written by Breeder (and my ones) to a native function allowing to get GUID directly from memory, also get a pointer from given GUID.

so here we go:
GetTrackGUID(track) - exists
GetTrackbyGUID(project, GUID)
TrackFX_GetFXGUID( track, fx ) / TakeFX_GetFXGUID( take, fx ) - exists
track_ptr, fx_id, take_ptr,take_fxid = GetFXbyGUID(project, GUID)
GetMediaItemTakeGUID(take) - recently added
GetMediaItemTakeByGUID( project, GUID ) - exists
GetMediaItemGUID(item) - recently added
GetMediaItemByGUID( project, GUID )
GetMediaItemTakePoolGUID(take)

Last edited by mpl; 09-18-2022 at 03:21 AM.
mpl is offline   Reply With Quote
Old 08-10-2022, 11:32 PM   #2
mpl
Human being with feelings
 
mpl's Avatar
 
Join Date: Oct 2013
Location: Moscow, Russia
Posts: 3,960
Default

still valid request, so bump here
mpl is offline   Reply With Quote
Old 08-15-2022, 07:36 AM   #3
Buy One
Human being with feelings
 
Buy One's Avatar
 
Join Date: Sep 2019
Posts: 1,134
Default

Quote:
Originally Posted by mpl View Post

GetMediaItemTakeGUID(take)

GetMediaItemGUID(item)
Do these native functions

Code:
reaper.GetSetMediaItemTakeInfo_String(take, 'GUID', '', false)

reaper.GetSetMediaItemInfo_String(item, 'GUID', '', false)
use chunks to get the GUID?
__________________
https://github.com/Buy-One/REAPER-scripts (175)
REAPER is a DAW whose user guide file is larger than its installation file

Last edited by Buy One; 08-15-2022 at 11:37 PM.
Buy One is online now   Reply With Quote
Old 09-18-2022, 03:21 AM   #4
mpl
Human being with feelings
 
mpl's Avatar
 
Join Date: Oct 2013
Location: Moscow, Russia
Posts: 3,960
Default

Quote:
Originally Posted by Buy One View Post
Do these native functions

Code:
reaper.GetSetMediaItemTakeInfo_String(take, 'GUID', '', false)

reaper.GetSetMediaItemInfo_String(item, 'GUID', '', false)
use chunks to get the GUID?
Aha that was relatively recently added, changed post a bit, thanks
Afaik all API functions take all the data directly from memory, thats why they working fast.
mpl 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 10:19 AM.


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