Old 08-19-2021, 11:30 AM   #1
daxliniere
Human being with feelings
 
daxliniere's Avatar
 
Join Date: Nov 2008
Location: London, UK
Posts: 2,272
Default Implode multiple items to takes?

Hey everyone,

You ever had that issue where you have multiple takes for something like a live drum kit and you want to put them into a single 'set' of items as individual takes?

I was thinking of a script that would automate this process for most situations:

User selects all desired multitrack items,
Script is run and it asks how many sets of takes there are,
User enters 2, 3, 4, etc and presses OK,
Script counts the number of media items elected and divides it by the number of takes. Example; 33 tracks(items), 3 takes = 11 items each with 3 takes,
Script implodes item #12 (1+11) into a new take inside item #1, then implodes item #23 (1+ 2x11) into item #1. Script selects item #2 and implodes items #13 (2+11) and #24 (2+ 2x11), selects item #3, etc..

Anyone up for the challenge?


All the best,
Dax.
__________________
Puzzle Factory Sound Studios, London [Website] [Instagram]
[AMD 5800X, 32Gb RAM, Win10x64, NVidia GTX1080ti, UAD2-OCTO, FireFaceUCX, REAPER x64]
[AMD 5600X, 16Gb RAM, Win10x64, NVidia GTX710, FireFaceUFX, REAPER x64]

Last edited by daxliniere; 12-07-2021 at 09:28 AM.
daxliniere is offline   Reply With Quote
Old 12-07-2021, 08:20 AM   #2
daxliniere
Human being with feelings
 
daxliniere's Avatar
 
Join Date: Nov 2008
Location: London, UK
Posts: 2,272
Default

Anyone have time and inclination to take a look at this script, by any chance?
__________________
Puzzle Factory Sound Studios, London [Website] [Instagram]
[AMD 5800X, 32Gb RAM, Win10x64, NVidia GTX1080ti, UAD2-OCTO, FireFaceUCX, REAPER x64]
[AMD 5600X, 16Gb RAM, Win10x64, NVidia GTX710, FireFaceUFX, REAPER x64]
daxliniere is offline   Reply With Quote
Old 12-07-2021, 08:30 AM   #3
vitalker
Human being with feelings
 
vitalker's Avatar
 
Join Date: Dec 2012
Posts: 8,122
Default

Quote:
Originally Posted by daxliniere View Post
Script counts the number of media items selected and divides it by the number of takes. Example; 33 tracks(items), 3 takes = 11 items each with 3 takes.
Script implodes item #12 (1+11) into a new take inside item #1, then implodes item #23 (1+ 2x11) into item #1. Script selects item #2 and implodes items #13 (2+11) and #24 (2+ 2x11), selects item #3, etc..
I don't quite understand this part. A simple image would be helpful.
vitalker is online now   Reply With Quote
Old 12-07-2021, 08:34 AM   #4
Yanick
Human being with feelings
 
Yanick's Avatar
 
Join Date: May 2018
Location: Moscow, Russia
Posts: 520
Default

rodilab_Implode items on same track into takes (align with snap offset).lua

This script from the ReaPack does not match the task?
Yanick is online now   Reply With Quote
Old 12-07-2021, 08:35 AM   #5
Yanick
Human being with feelings
 
Yanick's Avatar
 
Join Date: May 2018
Location: Moscow, Russia
Posts: 520
Default

Quote:
Originally Posted by vitalker View Post
I don't quite understand this part. A simple image would be helpful.
Agree
Yanick is online now   Reply With Quote
Old 12-07-2021, 09:27 AM   #6
daxliniere
Human being with feelings
 
daxliniere's Avatar
 
Join Date: Nov 2008
Location: London, UK
Posts: 2,272
Default

Sure thing! Here's a quick video of doing the multitrack implode process manually:

__________________
Puzzle Factory Sound Studios, London [Website] [Instagram]
[AMD 5800X, 32Gb RAM, Win10x64, NVidia GTX1080ti, UAD2-OCTO, FireFaceUCX, REAPER x64]
[AMD 5600X, 16Gb RAM, Win10x64, NVidia GTX710, FireFaceUFX, REAPER x64]
daxliniere is offline   Reply With Quote
Old 12-07-2021, 09:29 AM   #7
daxliniere
Human being with feelings
 
daxliniere's Avatar
 
Join Date: Nov 2008
Location: London, UK
Posts: 2,272
Default

I've also refined the description in the first post.
__________________
Puzzle Factory Sound Studios, London [Website] [Instagram]
[AMD 5800X, 32Gb RAM, Win10x64, NVidia GTX1080ti, UAD2-OCTO, FireFaceUCX, REAPER x64]
[AMD 5600X, 16Gb RAM, Win10x64, NVidia GTX710, FireFaceUFX, REAPER x64]
daxliniere is offline   Reply With Quote
Old 12-07-2021, 09:31 AM   #8
daxliniere
Human being with feelings
 
daxliniere's Avatar
 
Join Date: Nov 2008
Location: London, UK
Posts: 2,272
Default

It's possible that mpl_Select items by pattern might be a good starting point for this, but it would need the UI to be refined to ask you how many takes there are in the selection, rather than the current 'suuuuuuuuu' pattern method.
__________________
Puzzle Factory Sound Studios, London [Website] [Instagram]
[AMD 5800X, 32Gb RAM, Win10x64, NVidia GTX1080ti, UAD2-OCTO, FireFaceUCX, REAPER x64]
[AMD 5600X, 16Gb RAM, Win10x64, NVidia GTX710, FireFaceUFX, REAPER x64]
daxliniere is offline   Reply With Quote
Old 12-07-2021, 10:38 AM   #9
daxliniere
Human being with feelings
 
daxliniere's Avatar
 
Join Date: Nov 2008
Location: London, UK
Posts: 2,272
Default

Quote:
Originally Posted by Yanick View Post
rodilab_Implode items on same track into takes (align with snap offset).lua

This script from the ReaPack does not match the task?
If they are on the same track, then I don't believe this will work. It needs to work vertically rather than horizontally.
__________________
Puzzle Factory Sound Studios, London [Website] [Instagram]
[AMD 5800X, 32Gb RAM, Win10x64, NVidia GTX1080ti, UAD2-OCTO, FireFaceUCX, REAPER x64]
[AMD 5600X, 16Gb RAM, Win10x64, NVidia GTX710, FireFaceUFX, REAPER x64]
daxliniere is offline   Reply With Quote
Old 01-10-2022, 11:25 AM   #10
daxliniere
Human being with feelings
 
daxliniere's Avatar
 
Join Date: Nov 2008
Location: London, UK
Posts: 2,272
Default

Hey everyone, happy new year.

Anyone had any thoughts on this script request?


Cheers!
Dax.
__________________
Puzzle Factory Sound Studios, London [Website] [Instagram]
[AMD 5800X, 32Gb RAM, Win10x64, NVidia GTX1080ti, UAD2-OCTO, FireFaceUCX, REAPER x64]
[AMD 5600X, 16Gb RAM, Win10x64, NVidia GTX710, FireFaceUFX, REAPER x64]
daxliniere is offline   Reply With Quote
Old 01-11-2022, 04:06 AM   #11
vitalker
Human being with feelings
 
vitalker's Avatar
 
Join Date: Dec 2012
Posts: 8,122
Default

This was hard as hell and I spent a lot of time doing it, but it looks like working something.

Code:
reaper.Undo_BeginBlock2( 0 )
reaper.PreventUIRefresh(1)

local sel_items = reaper.CountSelectedMediaItems( 0 )
local ok, takes_n = reaper.GetUserInputs("", 1, 'How many takes for '..sel_items..' items?', '')
if not tonumber(takes_n) then
  reaper.ShowMessageBox('Please enter only numbers','',0)
  return 0
end
if tonumber(takes_n) <= 0 or  tonumber(takes_n) > sel_items then
  reaper.ShowMessageBox('You have less than '..takes_n..' selected items','',0)
  return 0
end

for i = 1, takes_n do
  counter = i + takes_n 
  while counter <= sel_items do
    local base_item = reaper.GetSelectedMediaItem( 0, i - 1 )
    local active_take = reaper.GetActiveTake( base_item )
    local source = reaper.GetMediaItemTake_Source( active_take )
    local new_take = reaper.AddTakeToMediaItem( base_item )
    local new_item_take = reaper.GetActiveTake( reaper.GetSelectedMediaItem( 0, counter - 1 ) )
    local new_take_source = reaper.GetMediaItemTake_Source( new_item_take )
    reaper.SetMediaItemTake_Source( new_take, new_take_source )
    counter = counter + takes_n
  end
end

for i = sel_items, takes_n + 1, -1 do
  item_remove = reaper.GetSelectedMediaItem( 0, i - 1 )
  track_remove = reaper.GetMediaItem_Track( item_remove )
  if reaper.CountTrackMediaItems( track_remove ) == 1 then
    reaper.DeleteTrack( track_remove )
  end
end

reaper.Undo_EndBlock2( 0, 'Implode items to '..takes_n..' takes', -1 )--..dupl_times.." times", 0 )
reaper.UpdateArrange()
reaper.PreventUIRefresh(-1)
vitalker is online now   Reply With Quote
Old 01-12-2022, 04:45 AM   #12
daxliniere
Human being with feelings
 
daxliniere's Avatar
 
Join Date: Nov 2008
Location: London, UK
Posts: 2,272
Default

Thanks so much, Vitali! I'll test it out and send you a donation.

Speak soon!
__________________
Puzzle Factory Sound Studios, London [Website] [Instagram]
[AMD 5800X, 32Gb RAM, Win10x64, NVidia GTX1080ti, UAD2-OCTO, FireFaceUCX, REAPER x64]
[AMD 5600X, 16Gb RAM, Win10x64, NVidia GTX710, FireFaceUFX, REAPER x64]
daxliniere is offline   Reply With Quote
Old 01-12-2022, 04:51 AM   #13
vitalker
Human being with feelings
 
vitalker's Avatar
 
Join Date: Dec 2012
Posts: 8,122
Default

Quote:
Originally Posted by daxliniere View Post
Thanks so much, Vitali! I'll test it out and send you a donation.

Speak soon!
Fingers crossed. What do you think of these items just moved to these 3 tracks without imploding items to takes? It is possible to have multiple items in separate lanes on the same track.
The script also removes tracks if there are no other items besides those moved to takes.
vitalker is online now   Reply With Quote
Old 01-12-2022, 10:03 AM   #14
daxliniere
Human being with feelings
 
daxliniere's Avatar
 
Join Date: Nov 2008
Location: London, UK
Posts: 2,272
Default

Vitali, you are very close!

The auto-removal of empty tracks was a brilliant idea!

The dialogbox asked how many takes for n items, but the result is how many tracks.
It would probably be better if the text stayed the same and the script was changed to ask for the number of takes.

Alternatively, I guess there could be TWO text boxes so a user could enter either number of takes or number of tracks? If that's too much work, then I'd be happy for it to be changed to ask for the number of takes.
__________________
Puzzle Factory Sound Studios, London [Website] [Instagram]
[AMD 5800X, 32Gb RAM, Win10x64, NVidia GTX1080ti, UAD2-OCTO, FireFaceUCX, REAPER x64]
[AMD 5600X, 16Gb RAM, Win10x64, NVidia GTX710, FireFaceUFX, REAPER x64]
daxliniere is offline   Reply With Quote
Old 01-12-2022, 10:05 AM   #15
daxliniere
Human being with feelings
 
daxliniere's Avatar
 
Join Date: Nov 2008
Location: London, UK
Posts: 2,272
Default

One little detail; if you click Cancel, it acts as if you have pressed OK with invalid text entry ("Please enter only numbers").
__________________
Puzzle Factory Sound Studios, London [Website] [Instagram]
[AMD 5800X, 32Gb RAM, Win10x64, NVidia GTX1080ti, UAD2-OCTO, FireFaceUCX, REAPER x64]
[AMD 5600X, 16Gb RAM, Win10x64, NVidia GTX710, FireFaceUFX, REAPER x64]
daxliniere is offline   Reply With Quote
Old 01-12-2022, 10:25 AM   #16
vitalker
Human being with feelings
 
vitalker's Avatar
 
Join Date: Dec 2012
Posts: 8,122
Default

Quote:
Originally Posted by daxliniere View Post
The dialogbox asked how many takes for n items, but the result is how many tracks.
It would probably be better if the text stayed the same and the script was changed to ask for the number of takes.

Alternatively, I guess there could be TWO text boxes so a user could enter either number of takes or number of tracks? If that's too much work, then I'd be happy for it to be changed to ask for the number of takes.
Well in this case the number of takes equals to number of tracks. Not sure what are you asking to change here.

Tell me or better show what would you expect.
vitalker is online now   Reply With Quote
Old 01-12-2022, 10:26 AM   #17
vitalker
Human being with feelings
 
vitalker's Avatar
 
Join Date: Dec 2012
Posts: 8,122
Default

Quote:
Originally Posted by daxliniere View Post
One little detail; if you click Cancel, it acts as if you have pressed OK with invalid text entry ("Please enter only numbers").
If it is important, I'll change it.
vitalker is online now   Reply With Quote
Old 01-12-2022, 10:51 AM   #18
daxliniere
Human being with feelings
 
daxliniere's Avatar
 
Join Date: Nov 2008
Location: London, UK
Posts: 2,272
Default

Quote:
Originally Posted by vitalker View Post
Well in this case the number of takes equals to number of tracks. Not sure what are you asking to change here.

Tell me or better show what would you expect.
Let's say you have 3 takes of a drum part that had 10 tracks (kick in, kick out, snare top, snare bottom, etc). After selecting the 30 items, I would want to enter either 3 Takes or 10 Tracks. Currently, when I enter 3 in the Takes text box, I end up with 3 tracks, but I'm expecting to end up with 10 tracks composed of 3 takes.

Quote:
Originally Posted by vitalker View Post
If it is important, I'll change it.
Nah, just mentioning it for completeness.
__________________
Puzzle Factory Sound Studios, London [Website] [Instagram]
[AMD 5800X, 32Gb RAM, Win10x64, NVidia GTX1080ti, UAD2-OCTO, FireFaceUCX, REAPER x64]
[AMD 5600X, 16Gb RAM, Win10x64, NVidia GTX710, FireFaceUFX, REAPER x64]
daxliniere is offline   Reply With Quote
Old 01-12-2022, 10:59 AM   #19
vitalker
Human being with feelings
 
vitalker's Avatar
 
Join Date: Dec 2012
Posts: 8,122
Default

Quote:
Originally Posted by daxliniere View Post
Let's say you have 3 takes of a drum part that had 10 tracks (kick in, kick out, snare top, snare bottom, etc). After selecting the 30 items, I would want to enter either 3 Takes or 10 Tracks. Currently, when I enter 3 in the Takes text box, I end up with 3 tracks, but I'm expecting to end up with 10 tracks composed of 3 takes.
If you don't mind, I'd rather watch it. You know, I'm visual.
I mean show me those two cases, cause I was sure you were showing only one in one of the previous comments.

Last edited by vitalker; 01-12-2022 at 11:07 AM.
vitalker is online now   Reply With Quote
Old 01-12-2022, 11:12 AM   #20
daxliniere
Human being with feelings
 
daxliniere's Avatar
 
Join Date: Nov 2008
Location: London, UK
Posts: 2,272
Default

Of course!

In the first implosion, I enter the number of takes (3) and end up with 3 tracks.

__________________
Puzzle Factory Sound Studios, London [Website] [Instagram]
[AMD 5800X, 32Gb RAM, Win10x64, NVidia GTX1080ti, UAD2-OCTO, FireFaceUCX, REAPER x64]
[AMD 5600X, 16Gb RAM, Win10x64, NVidia GTX710, FireFaceUFX, REAPER x64]
daxliniere is offline   Reply With Quote
Old 01-12-2022, 11:15 AM   #21
daxliniere
Human being with feelings
 
daxliniere's Avatar
 
Join Date: Nov 2008
Location: London, UK
Posts: 2,272
Default

Also, I just realised that take name is only preserved for take 1.
__________________
Puzzle Factory Sound Studios, London [Website] [Instagram]
[AMD 5800X, 32Gb RAM, Win10x64, NVidia GTX1080ti, UAD2-OCTO, FireFaceUCX, REAPER x64]
[AMD 5600X, 16Gb RAM, Win10x64, NVidia GTX710, FireFaceUFX, REAPER x64]
daxliniere is offline   Reply With Quote
Old 01-12-2022, 11:52 AM   #22
vitalker
Human being with feelings
 
vitalker's Avatar
 
Join Date: Dec 2012
Posts: 8,122
Default

Quote:
Originally Posted by daxliniere View Post
Of course!

In the first implosion, I enter the number of takes (3) and end up with 3 tracks.
All right, sorry. I'll investigate.

Quote:
Originally Posted by daxliniere View Post
Also, I just realised that take name is only preserved for take 1.
I think I know how to change this behaviour. The API isn't very helpful for dealing with takes.
vitalker is online now   Reply With Quote
Old 01-12-2022, 05:24 PM   #23
vitalker
Human being with feelings
 
vitalker's Avatar
 
Join Date: Dec 2012
Posts: 8,122
Default

Everything should be fixed now (tracks and takes, no parameter entered, takes' names). It is also possible to set default values for parameters.
Change this
local values_ok, values = reaper.GetUserInputs('Implode '..sel_items..' selected items', 2, 'Tracks OR,Maximum takes per item', '')
to
local values_ok, values = reaper.GetUserInputs('Implode '..sel_items..' selected items', 2, 'Tracks OR,Maximum takes per item', '10,20')
10 tracks or 20 takes per item, but the script won't allow them simultaneously, so it makes sense to set only one: '10' for 10 tracks, ',20' for 20 takes per item or any other value. It makes sense if you mostly need same value.
If you choose maximum takes per item, the script will divide selected items by maximum takes per item numer and if there is any remainder, the number will be increased by 1.
Examples: 29/3 = 9+, so the number of final items with takes = 9 + 1 = 10.
30/3 = 10
31/3 = 10+, so final items = 10 + 1.
Let me know if it's okay, because I couldn't find a good way to calculate the tracks number for numbers with remainders after division. I could also make it like this: if there is any remainder, then the script will round the last digit of selected items number in 0=<x<=4
to 0 and 5<=x<=9 to 1 increasing the ten by 1.
Examples:
29/3 = 30/3
31/3 = 30/3
155/6 = 160/6
etc.

PHP Code:
reaper.Undo_BeginBlock2)
reaper.PreventUIRefresh(1)

local sel_items reaper.CountSelectedMediaItems)
local values_okvalues reaper.GetUserInputs('Implode '..sel_items..' selected items'2'Tracks OR,Maximum takes per item''')

values_t={}
for 
value in values:gmatch("([^,]*)") do
 
values_t[#values_t+1]=value
end

if values_t[1] ~= '' and values_t[2] ~= '' then
  reaper
.ShowMessageBox('Enter a number of tracks OR maximum takes per item','',0)
  return 
0
end
if not values_ok or values == ',' then
  
return 0
end

if values_t[1] ~= '' then
  chosen_value 
values_t[1]
  
chosen 'tracks'
elseif values_t[2] ~= '' then
  chosen_value 
values_t[2]
  
chosen 'maximum takes per item'
end

if not tonumber(chosen_value) or tonumber(chosen_value) <= 0 then
  reaper
.ShowMessageBox('Only positive numbers are allowed','',0)
  return 
0
end
if tonumber(chosen_value) > sel_items or (tonumber(chosen_value) == sel_items and chosen == 'tracks'then
  reaper
.ShowMessageBox('Not possible to implode '..sel_items..
                        
' selected items to '..chosen_value..' '..chosen,'',0)
  return 
0
end

item_ids 
= {}
track_ids = {}
for 
0sel_items do
  
table.insert(item_idsreaper.BR_GetMediaItemGUIDreaper.GetSelectedMediaItem0) ))
  
local track_id reaper.GetTrackGUIDreaper.GetMediaItem_Trackreaper.GetSelectedMediaItem0) ) )
  
table.insert(track_idstrack_id)  
end

if chosen == 'tracks' then
  
for 1chosen_value do
    
reaper.SelectAllMediaItems0)
    
counter chosen_value
    reaper
.SetMediaItemSelectedreaper.BR_GetMediaItemByGUID0item_ids[i] ), )
    while 
counter <= sel_items do
      
reaper.SetMediaItemSelectedreaper.BR_GetMediaItemByGUID0item_ids[counter] ), )
      
counter counter chosen_value
    end
    reaper
.Main_OnCommand(40438,0)
  
end
  
for chosen_value 1sel_items do
    if 
reaper.CountTrackMediaItemsreaper.BR_GetMediaTrackByGUID0track_ids[i] ) ) == 0 then
      reaper
.DeleteTrackreaper.BR_GetMediaTrackByGUID0track_ids[i] ) )
    
end 
  end
elseif chosen == 'maximum takes per item' then
  track_conv 
math.floor(sel_items chosen_value)
  if 
sel_items chosen_value 0 then
    track_conv 
track_conv 1  
  end
  
for 1track_conv do
    
reaper.SelectAllMediaItems0)
    
counter track_conv
    reaper
.SetMediaItemSelectedreaper.BR_GetMediaItemByGUID0item_ids[i] ), )
    while 
counter <= sel_items do
      
reaper.SetMediaItemSelectedreaper.BR_GetMediaItemByGUID0item_ids[counter] ), )
      
counter counter track_conv
    end
    reaper
.Main_OnCommand(40438,0)
  
end 
  
for track_conv 1sel_items do
    if 
reaper.CountTrackMediaItemsreaper.BR_GetMediaTrackByGUID0track_ids[i] ) ) == 0 then
      reaper
.DeleteTrackreaper.BR_GetMediaTrackByGUID0track_ids[i] ) )
    
end 
  end
end

if chosen == 'tracks' then
  reaper
.Undo_EndBlock20'Implode '..sel_items..' items to '..chosen_value..' '..chosen, -)
elseif 
chosen == 'maximum takes per item' then
  reaper
.Undo_EndBlock20'Implode '..sel_items..' items to '..chosen_value..' '..chosen, -)
end
reaper
.UpdateArrange()
reaper.PreventUIRefresh(-1

Last edited by vitalker; 01-12-2022 at 05:57 PM.
vitalker is online now   Reply With Quote
Old 01-13-2022, 01:33 AM   #24
mpl
Human being with feelings
 
mpl's Avatar
 
Join Date: Oct 2013
Location: Moscow, Russia
Posts: 3,162
Default

There could be some clever logic around item names (collect takes with same chunks and implode them respectively).

+comp them if course, so the selection follow comping ID
mpl is offline   Reply With Quote
Old 01-13-2022, 01:47 AM   #25
vitalker
Human being with feelings
 
vitalker's Avatar
 
Join Date: Dec 2012
Posts: 8,122
Default

Quote:
Originally Posted by mpl View Post
There could be some clever logic around item names (collect takes with same chunks and implode them respectively).

+comp them if course, so the selection follow comping ID
I don't quite follow. The final code is based on Reaper action, so no need to invent anything. The names are already included in takes.
Or do you mean the script would check item/take names and implode them based on the name?
vitalker is online now   Reply With Quote
Old 01-13-2022, 05:53 AM   #26
mpl
Human being with feelings
 
mpl's Avatar
 
Join Date: Oct 2013
Location: Moscow, Russia
Posts: 3,162
Default

Quote:
Originally Posted by vitalker View Post
I don't quite follow. The final code is based on Reaper action, so no need to invent anything. The names are already included in takes.
Or do you mean the script would check item/take names and implode them based on the name?
yes i mean name checking
mpl is offline   Reply With Quote
Old 01-14-2022, 06:10 AM   #27
daxliniere
Human being with feelings
 
daxliniere's Avatar
 
Join Date: Nov 2008
Location: London, UK
Posts: 2,272
Default

Hey Vitali.
The new script has a problem when the destination item is shorter than the source item. This seems to be a REAPER issue. I've brought it up with Schwa before and he said it made sense to him that a longer item can't implode into a shorter one, which admittedly doesn't make sense to me since it's just adding another audio files to the original item, plus I'm sure I've done it a thousand times before. Further, as you can see in the video below, it DOES work sometimes.
I might reach out to Schwa again about this.



Here's the demo project I've been using: https://stash.reaper.fm/43695/Implod...%20project.rpp
__________________
Puzzle Factory Sound Studios, London [Website] [Instagram]
[AMD 5800X, 32Gb RAM, Win10x64, NVidia GTX1080ti, UAD2-OCTO, FireFaceUCX, REAPER x64]
[AMD 5600X, 16Gb RAM, Win10x64, NVidia GTX710, FireFaceUFX, REAPER x64]
daxliniere is offline   Reply With Quote
Old 01-14-2022, 06:30 AM   #28
daxliniere
Human being with feelings
 
daxliniere's Avatar
 
Join Date: Nov 2008
Location: London, UK
Posts: 2,272
Default

Also, I now noticed that if there are other items on the tracks, then the imploded items (takes 2 and above) aren't removed from their source tracks. They are, however, correctly added as takes to the destination items.

Here's a quick screencap as I know you're a visual person.

__________________
Puzzle Factory Sound Studios, London [Website] [Instagram]
[AMD 5800X, 32Gb RAM, Win10x64, NVidia GTX1080ti, UAD2-OCTO, FireFaceUCX, REAPER x64]
[AMD 5600X, 16Gb RAM, Win10x64, NVidia GTX710, FireFaceUFX, REAPER x64]
daxliniere is offline   Reply With Quote
Old 01-14-2022, 07:13 AM   #29
vitalker
Human being with feelings
 
vitalker's Avatar
 
Join Date: Dec 2012
Posts: 8,122
Default

Quote:
Originally Posted by daxliniere View Post
Hey Vitali.
The new script has a problem when the destination item is shorter than the source item. This seems to be a REAPER issue. I've brought it up with Schwa before and he said it made sense to him that a longer item can't implode into a shorter one, which admittedly doesn't make sense to me since it's just adding another audio files to the original item, plus I'm sure I've done it a thousand times before. Further, as you can see in the video below, it DOES work sometimes.
I might reach out to Schwa again about this.
That's right. For some reason Reaper will create an item with length based on the shortest take.
vitalker is online now   Reply With Quote
Old 01-14-2022, 07:17 AM   #30
vitalker
Human being with feelings
 
vitalker's Avatar
 
Join Date: Dec 2012
Posts: 8,122
Default

Quote:
Originally Posted by daxliniere View Post
Also, I now noticed that if there are other items on the tracks, then the imploded items (takes 2 and above) aren't removed from their source tracks. They are, however, correctly added as takes to the destination items.

Here's a quick screencap as I know you're a visual person.
Thanks, but it looks like you are showing me the old script.
There is only one line/parameter and there is no window title.
vitalker is online now   Reply With Quote
Old 01-14-2022, 07:26 AM   #31
daxliniere
Human being with feelings
 
daxliniere's Avatar
 
Join Date: Nov 2008
Location: London, UK
Posts: 2,272
Default

Quote:
Originally Posted by vitalker View Post
That's right. For some reason Reaper will create an item with length based on the shortest take.
Yes, exactly. I mean, it makes perfect sense to me. Imploding a longer item should never extend the original item (which it does not).
__________________
Puzzle Factory Sound Studios, London [Website] [Instagram]
[AMD 5800X, 32Gb RAM, Win10x64, NVidia GTX1080ti, UAD2-OCTO, FireFaceUCX, REAPER x64]
[AMD 5600X, 16Gb RAM, Win10x64, NVidia GTX710, FireFaceUFX, REAPER x64]
daxliniere is offline   Reply With Quote
Old 01-14-2022, 07:29 AM   #32
daxliniere
Human being with feelings
 
daxliniere's Avatar
 
Join Date: Nov 2008
Location: London, UK
Posts: 2,272
Default

Quote:
Originally Posted by vitalker View Post
Thanks, but it looks like you are showing me the old script.
There is only one line/parameter and there is no window title.
Yes, this is true, though the v0.2 script doesn't really work at all, so no point showing you that.


Can I make another request? (Feel free to say no )
It would be cool if the item colour (or track colour if item colour is not set) was also preserved in the destination item after implode.
__________________
Puzzle Factory Sound Studios, London [Website] [Instagram]
[AMD 5800X, 32Gb RAM, Win10x64, NVidia GTX1080ti, UAD2-OCTO, FireFaceUCX, REAPER x64]
[AMD 5600X, 16Gb RAM, Win10x64, NVidia GTX710, FireFaceUFX, REAPER x64]
daxliniere is offline   Reply With Quote
Old 01-14-2022, 08:26 AM   #33
nofish
Human being with feelings
 
nofish's Avatar
 
Join Date: Oct 2007
Location: home is where the heart is
Posts: 10,976
Default

Quote:
Originally Posted by daxliniere View Post
Imploding a longer item should never extend the original item (which it does not).
I beg to differ. :P
https://forum.cockos.com/showthread....67#post1464667

Optimal would be a preference I guess.
nofish is offline   Reply With Quote
Old 01-14-2022, 08:33 AM   #34
daxliniere
Human being with feelings
 
daxliniere's Avatar
 
Join Date: Nov 2008
Location: London, UK
Posts: 2,272
Default

Quote:
Originally Posted by nofish View Post
I beg to differ. :P
https://forum.cockos.com/showthread....67#post1464667

Optimal would be a preference I guess.
Well, considering items implode "upwards", I think it should become the length of the target media item. So if that happens to be shorter, that makes sense. Does that make sense, nofish?
__________________
Puzzle Factory Sound Studios, London [Website] [Instagram]
[AMD 5800X, 32Gb RAM, Win10x64, NVidia GTX1080ti, UAD2-OCTO, FireFaceUCX, REAPER x64]
[AMD 5600X, 16Gb RAM, Win10x64, NVidia GTX710, FireFaceUFX, REAPER x64]
daxliniere is offline   Reply With Quote
Old 01-14-2022, 08:52 AM   #35
nofish
Human being with feelings
 
nofish's Avatar
 
Join Date: Oct 2007
Location: home is where the heart is
Posts: 10,976
Default

Hm..not sure what makes most sense here tbh.
All I can say is that the current way implode into takes works often doesn't fit my needs (which may be a special case though, not sure).
Anyway in the thread I linked spk77 made me an implode script that works more like I was looking for, so I'm settled already in this regard.

https://forum.cockos.com/showthread....13#post1465713
(You can see his script does extend the target item if the imploded item is longer. edit: Or better said, doesn't omit it.)
nofish is offline   Reply With Quote
Old 01-14-2022, 01:56 PM   #36
vitalker
Human being with feelings
 
vitalker's Avatar
 
Join Date: Dec 2012
Posts: 8,122
Default

For me the most logical thing would be setting a length of the longest take and if any is shorter, the rest would be just silence.
vitalker is online now   Reply With Quote
Old 01-14-2022, 05:44 PM   #37
daxliniere
Human being with feelings
 
daxliniere's Avatar
 
Join Date: Nov 2008
Location: London, UK
Posts: 2,272
Default

A script that moves the longest item to the top track before imploding would also solve this, nofish.

Maybe some of this could be used as the foundation? https://forums.cockos.com/showthread.php?t=101674
__________________
Puzzle Factory Sound Studios, London [Website] [Instagram]
[AMD 5800X, 32Gb RAM, Win10x64, NVidia GTX1080ti, UAD2-OCTO, FireFaceUCX, REAPER x64]
[AMD 5600X, 16Gb RAM, Win10x64, NVidia GTX710, FireFaceUFX, REAPER x64]
daxliniere is offline   Reply With Quote
Old 01-14-2022, 08:26 PM   #38
nofish
Human being with feelings
 
nofish's Avatar
 
Join Date: Oct 2007
Location: home is where the heart is
Posts: 10,976
Default

Quote:
Originally Posted by daxliniere View Post
A script that moves the longest item to the top track before imploding would also solve this, nofish.

Maybe some of this could be used as the foundation? https://forums.cockos.com/showthread.php?t=101674
Now as you say, seems so obvious, but somehow this idea never occured to me lol.
Thanks.
nofish is offline   Reply With Quote
Old 01-15-2022, 01:49 AM   #39
vitalker
Human being with feelings
 
vitalker's Avatar
 
Join Date: Dec 2012
Posts: 8,122
Default

Quote:
Originally Posted by daxliniere View Post
A script that moves the longest item to the top track before imploding would also solve this, nofish.

Maybe some of this could be used as the foundation? https://forums.cockos.com/showthread.php?t=101674
Yeah, the longest item could be first, but it will ruin your task, no?
vitalker is online now   Reply With Quote
Old 01-15-2022, 05:17 AM   #40
daxliniere
Human being with feelings
 
daxliniere's Avatar
 
Join Date: Nov 2008
Location: London, UK
Posts: 2,272
Default

Quote:
Originally Posted by vitalker View Post
Yeah, the longest item could be first, but it will ruin your task, no?
It would ruin mine, but solve nofish's problem.
__________________
Puzzle Factory Sound Studios, London [Website] [Instagram]
[AMD 5800X, 32Gb RAM, Win10x64, NVidia GTX1080ti, UAD2-OCTO, FireFaceUCX, REAPER x64]
[AMD 5600X, 16Gb RAM, Win10x64, NVidia GTX710, FireFaceUFX, REAPER x64]
daxliniere 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 02:20 PM.


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