Помогите создать экшн / кастом экшн / скрипт

Тема в разделе "Cockos Reaper", создана пользователем @Michael, 2 авг 2015.

  1. borisuperful

    borisuperful Well-Known Member

    Регистрация:
    31 янв 2013
    Сообщения:
    1.297
    Симпатии:
    462
    @Archchie, хотя вот что - если уж не учитывать масштаб треков с lock height, то тогда и сами эти треки тоже не изменять :)
     
    RJ Baker нравится это.
  2. Archchie

    Archchie Well-Known Member

    Регистрация:
    24 окт 2017
    Сообщения:
    648
    Симпатии:
    365
    Поправил.
    В скрипте настройка, отключить / включить игнорирование "Lock track height"
     
    borisuperful и Maestro Sound нравится это.
  3. borisuperful

    borisuperful Well-Known Member

    Регистрация:
    31 янв 2013
    Сообщения:
    1.297
    Симпатии:
    462
    Кто нибудь подскажет, возможно ли и как перед запуском скрипта проверить, установлен ли SWS, чтобы ошибку выдать?
    UPD: Решил так
    Код:
    function OpenURL(url)
      local OS = reaper.GetOS()
      if OS == "OSX32" or OS == "OSX64" then
        os.execute('open "" "' .. url .. '"')
      else
        os.execute('start "" "' .. url .. '"')
      end
    end
         
         
    local test = reaper.BR_SetArrangeView
    if not test then 
    window = reaper.MB('Please install SWS extension', 'Error', 0) end
    if window  then
    OpenURL("http://www.sws-extension.org/") return
    end
    
    Либо любая пустая SWS функция
     
    Последнее редактирование: 5 янв 2019
  4. Maksimilian12

    Maksimilian12 New Member

    Регистрация:
    19 мар 2018
    Сообщения:
    5
    Симпатии:
    0
    Пол:
    Мужской
    Доброго времени суток,начал изучать программу Reaper, пересмотрел много материала,но пока кое-какие вещи непонятны,осваиваюсь.
    Хотел попросить помощи в создании кастом экшена,если он нужен,или показать встроенный,чтобы одной горячей клавишей переключать горизонтальный зум и вертикальный скролл
    Заранее спасибо
     
  5. Supa75

    Supa75 Active Member

    Регистрация:
    21 мар 2017
    Сообщения:
    579
    Симпатии:
    134
    Пол:
    Мужской
    Адрес:
    Днепр, Украина
    Хочу почистить папку со скриптами. По началу столько всего накачал с Риапака :) Но есть проблема. Можно ли как то узнать (с помощью какого-то скрипта или каким другим вариантом) какие скрипты используются в кастом и цикл-экшинах, чтобы их не прибить заодно. Вопрос: есть ли какой либо способ определить скрипты, которые используются в кастом и цикл-экшенах?
     
  6. smrz1

    smrz1 Banned

    Регистрация:
    25 янв 2010
    Сообщения:
    915
    Симпатии:
    130
    @Supa75, ещё вчера думал над этим и хотел задать такой же вопрос, практически слово в слово... Так что присоеденяюсь!
     
  7. Snjuk

    Snjuk Member

    Регистрация:
    10 июн 2014
    Сообщения:
    88
    Симпатии:
    49
    Пол:
    Мужской
    Адрес:
    Житомир UA
    @Supa75, Делаеш папку снуля - старую в архив, Хорошо чистит
     
  8. Supa75

    Supa75 Active Member

    Регистрация:
    21 мар 2017
    Сообщения:
    579
    Симпатии:
    134
    Пол:
    Мужской
    Адрес:
    Днепр, Украина
    ниче не понял. В смысле, вытереть все скрипты из соотв. папки и запускать по одному все кастомы и потом смотреть на что ругается при запуске? Тот еще способ...
     
  9. borisuperful

    borisuperful Well-Known Member

    Регистрация:
    31 янв 2013
    Сообщения:
    1.297
    Симпатии:
    462
    Нет. Ручками. Я это один раз сделал
     
  10. Archchie

    Archchie Well-Known Member

    Регистрация:
    24 окт 2017
    Сообщения:
    648
    Симпатии:
    365
    PHP:
    -- Learn what script are used in custom actions and cycle action




        
    ------------------------------------------------------------------------------
        
    local function No_Undo()endlocal function no_undo()reaper.defer(No_Undo)end;
        ------------------------------------------------------------------------------


        function 
    GetScriptNameByID(id);
            
    local Path reaper.GetResourcePath()..'/reaper-kb.ini';
            
    local file io.open(Path,'r');
            if 
    not file then no_undo() return end;
            
    local text file:read('a');file:close();
            return 
    text:match(id:match('[^_](%S+)')..'%s"Custom:%s(.-)"'); 
        
    end;


        function 
    GetScriptNameByCastom();
            
    local kb_ini reaper.GetResourcePath()..'/reaper-kb.ini';
            
    local file io.open(kb_ini,'r');
            if 
    not file then no_undo() return end;
            
    local line_T,TableCast,TabCastom,Nil = {},{},{};
            for var 
    in file:lines() do;
                
    table.insert(line_T,var);
            
    end;
            ----
            for 
    1#line_T do;
                
    if line_T[i]:match('ACT')then;
                    for 
    NameScript in string.gmatch(line_T[i],"%S+") do;
                        
    local double nil;
                        if 
    string.sub(NameScript,0,1) == "_" then;
                            
    local NameByID GetScriptNameByID(NameScript);
                            if 
    NameByID then;
                                for 
    i2 1#TableCast do;
                                    
    if NameByID == TableCast[i2]then;
                                       
    double break;
                                    
    end;
                                
    end;
                                if 
    not double then;
                                    
    table.insert(TableCast,NameByID);
                                    if 
    #TabCastom+1 < 10 then Nil = "00" elseif #TabCastom+1 >= 10 and #TabCastom+1 < 100 then Nil = "0" else Nil = ""end;
                                    
    table.insert(TabCastom,Nil..#TabCastom+1 .." - "..NameByID);
                                
    end;
                            
    end;
                        
    end;
                    
    end;
                
    end;
            
    end;
            return 
    TabCastom;
        
    end;


        
    local function GetScriptNameByCycle();
            
    local kb_ini reaper.GetResourcePath()..'/S&M_Cyclactions.ini';
            
    local file io.open(kb_ini,'r');
            if 
    not file then no_undo() return end;
            
    local text file:read('a');
            
    file:close();
            
    local TableCicle,TableCycle,Nil = {},{};
            ----------------------------------
            for 
    S in string.gmatch (text"[^|]+") do;
                if 
    string.sub(S,0,1) == "_" then
                    local NameByID 
    GetScriptNameByID(S);
                    if 
    NameByID then;
                        
    local double nil;
                        for 
    i2 1#TableCicle do;
                            
    if NameByID == TableCicle[i2]then;
                               
    double break;
                            
    end;
                        
    end;
                        if 
    not double then;
                            
    table.insert(TableCicle,NameByID);
                            if 
    #TableCycle+1 < 10 then Nil = "00" elseif #TableCycle+1 >= 10 and #TableCycle+1 < 100 then Nil = "0" else Nil = ""end;
                            
    table.insert(TableCycle,Nil..#TableCycle+1 .." - "..NameByID);
                        
    end;
                    
    end;
                
    end;
            
    end;
            return 
    TableCycle;
        
    end;


        
    local Castom GetScriptNameByCastom();
        
    local Cycle GetScriptNameByCycle();
        
    local header "[Archie_UsedScriptsInActions:]\n\n"..
                       
    "Скрипты использующиеся в пользовательских действиях и в цикл действиях:\n"..
                       
    "Scripts used in custom actions and cycle actions:\n\n\n";   
        
    table.insert(Castom,1,header.."CASTOM ACTION: ".. #Castom.."-Scripts\n");
        
    table.insert(Cycle,1,"\n\n\nCYCLE ACTION: "..#Cycle.."-Scripts\n");
        
    local CastList table.concat(Castom,"\n"); 
        
    local CyclList table.concat(Cycle,"\n");
        ----------------------
        
    local path reaper.GetResourcePath()..'/Archie_UsedScriptsInActions.ini';
        
    local ini io.open(path,'w');
        
    ini:write(CastList..CyclList);
        
    ini:close();

        
    local OS,cmd reaper.GetOS();
        if 
    OS == "OSX32" or OS == "OSX64" then;
            
    cmd os.execute('open "" '..path);
        else;
            
    cmd os.execute('start "" '..path);
        
    end;
        if 
    not cmd then;
            
    reaper.ClearConsole(); 
            
    reaper.ShowConsoleMsg(CastList..CyclList);
        
    end;
       
        
    no_undo();
     
    Последнее редактирование: 18 янв 2019
    Supa75 нравится это.
  11. YuriOl

    YuriOl Active Member

    Регистрация:
    6 май 2005
    Сообщения:
    627
    Симпатии:
    156
    Пол:
    Мужской
    Адрес:
    Луганск
    Ребята, а есть скрипты типа - запомнить (копировать) цвет айтема и восстановить (вставить) цвет в айтем? И такое же, но с именем айтема.
     
  12. Archchie

    Archchie Well-Known Member

    Регистрация:
    24 окт 2017
    Сообщения:
    648
    Симпатии:
    365
    Сегодня сделаю
     
    Maestro Sound и YuriOl нравится это.
  13. Archchie

    Archchie Well-Known Member

    Регистрация:
    24 окт 2017
    Сообщения:
    648
    Симпатии:
    365
    @YuriOl,
    Archie_Take; Copy color item active take.lua
    Archie_Take; Paste color to selected item active take.lua
    Archie_Take; Paste color to selected item all take.lua
    Archie_Take; Reset color default in all take in selected items.lua

    Archie_Take; Copy Name item active take.lua
    Archie_Take; Paste Name to selected items active take.lua
    Archie_Take; Delete name in selected items in active take.lua
    ________________________
    Требуется: Arc_Function_lua v.2.1.7
    ¯↓↓↓¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
     
    Последнее редактирование: 17 янв 2019
    YuriOl и Maestro Sound нравится это.
  14. Maestro Sound

    Maestro Sound Active Member

    Регистрация:
    1 ноя 2007
    Сообщения:
    577
    Симпатии:
    63
    @Archchie, ПОДСКАЖИ ГДЕ ВЗЯТЬ SWS 2.9.8 32bit?
     
  15. muzicgrand

    muzicgrand Well-Known Member

    Регистрация:
    26 ноя 2009
    Сообщения:
    346
    Симпатии:
    512
    Пол:
    Мужской
    Адрес:
    СССР
    Тут !
     
  16. YuriOl

    YuriOl Active Member

    Регистрация:
    6 май 2005
    Сообщения:
    627
    Симпатии:
    156
    Пол:
    Мужской
    Адрес:
    Луганск
    @Archchie, спасибо! То, что надо и не хватало часто!!! :)
     
  17. Maestro Sound

    Maestro Sound Active Member

    Регистрация:
    1 ноя 2007
    Сообщения:
    577
    Симпатии:
    63
  18. shuco

    shuco Active Member

    Регистрация:
    26 ноя 2005
    Сообщения:
    285
    Симпатии:
    46
    Адрес:
    Новосибирск
    Не могу ни где найти кастом квантайза миди из окна проекта, поделитесь, плиззз.
     
  19. borisuperful

    borisuperful Well-Known Member

    Регистрация:
    31 янв 2013
    Сообщения:
    1.297
    Симпатии:
    462
    @shuco, никакой кастом не нужен, есть один экшн. Впрочем, если интересует конкретная сетка, можно сделать с save/restore grid - а так просто перед экшном подгоняете нужную частоту сетки
    SWS/FNG: Quantize item positions and MIDI note positions to grid
     
    shuco нравится это.
  20. Andernik

    Andernik Member

    Регистрация:
    7 апр 2009
    Сообщения:
    43
    Симпатии:
    25
    Quantize item positions and MIDI note positions to grid Как-то он странно работает, чють двинет нотки, но не по сетке, а рандомно. Почему так? Скрипт кривой или я сломал Рипер?
    me2beats_Quantize MIDI note positions to project grid.lua Чётко квантует, но только по сетке в проекте. Можно его изменить чтоб независимо от сетки квантовал по 1/16 со свингом который в Grid Setings указан?
     
  21. borisuperful

    borisuperful Well-Known Member

    Регистрация:
    31 янв 2013
    Сообщения:
    1.297
    Симпатии:
    462
    Свинг не учитывает, видать старый уже

     

    Вложения:

    Последнее редактирование: 20 янв 2019
  22. Andernik

    Andernik Member

    Регистрация:
    7 апр 2009
    Сообщения:
    43
    Симпатии:
    25
    К сожалению всё ещё квантует по сетке, в зависимости от зума в проекте. :(
     
  23. BAYANBAYAN

    BAYANBAYAN Active Member

    Регистрация:
    4 мар 2010
    Сообщения:
    251
    Симпатии:
    87
    Помогите, пожалуйста, со скриптом или кастом экшеном. Хотел сделать следующее: 1 - выделенный мидиайтем должен открыться в миди редакторе, 2 - сам миди редактор должен переключиться в режим докер, 3 - в миди редакторе должен включиться режим MIDI inputs as step input mode.
    И второй скрипт обратное действие - 1 - выключить режим MIDI inputs as step input mode, 2 - миди редактор выключить из режима докер, 3- закрыть миди редактор.
    Может можно и стандартными экенами решить, я соответствующие экшены нашел, но застрял на том, что не могу добавить в кастом экшены из разных секций. Потому как первый относится к секции экшенов Main, а следующие к секции экшенов Midi Editor.
    P.S. Вроде сам через скрипт сделал. Разобрался)
     
    Последнее редактирование: 21 янв 2019
  24. Archchie

    Archchie Well-Known Member

    Регистрация:
    24 окт 2017
    Сообщения:
    648
    Симпатии:
    365
    PHP:
        -----------------------------------------------------------------------------
        
    local function No_Undo()endlocal function no_undo()reaper.defer(No_Undo)end
        
    -----------------------------------------------------------------------------

        
    local SelItem reaper.GetSelectedMediaItem(0,0);
        if 
    not SelItem then no_undo() return end;

        
    reaper.Main_OnCommand(40153,-1);
        
    reaper.Main_OnCommand(40153,-1);

        
    local toggle_state reaper.GetToggleCommandStateEx(32060,40018);
        
    local MidiEditor reaper.MIDIEditor_GetActive();
        if 
    toggle_state == 0 then;                              
            
    reaper.MIDIEditor_OnCommand(MidiEditor,40018);
        
    end;

        
    local toggle_state reaper.GetToggleCommandStateEx(32060,40481);
        if 
    toggle_state == 0 then;    
            
    reaper.MIDIEditor_OnCommand(MidiEditor,40481);
        
    end;
    PHP:
        -----------------------------------------------------------------------------
        
    local function No_Undo()endlocal function no_undo()reaper.defer(No_Undo)end
        
    -----------------------------------------------------------------------------

      
        
    local MidiEditor reaper.MIDIEditor_GetActive();
        if 
    not MidiEditor then no_undo() return end;


        
    local toggle_state reaper.GetToggleCommandStateEx(32060,40018);
        if 
    toggle_state == 1 then;                                      
        
    reaper.MIDIEditor_OnCommand(MidiEditor,40018);
        
    end;

        
    local toggle_state reaper.GetToggleCommandStateEx(32060,40481);
        if 
    toggle_state == 1 then;    
            
    reaper.MIDIEditor_OnCommand(MidiEditor,40481);
        
    end;

        
    reaper.MIDIEditor_OnCommandMidiEditor40794 );
     
    BAYANBAYAN нравится это.
  25. BAYANBAYAN

    BAYANBAYAN Active Member

    Регистрация:
    4 мар 2010
    Сообщения:
    251
    Симпатии:
    87
    @Archchie, Отлично, все работает. А как бы мне это на одну кнопку сделать, типа со статусом Toggle. Нажал кнопку - работает первое условие, отжал - работает второе. Через цикл экшн что-то не пойму как сделать.
     
  26. Archchie

    Archchie Well-Known Member

    Регистрация:
    24 окт 2017
    Сообщения:
    648
    Симпатии:
    365
    Screenshot_1.png
    PHP:
        -----------------------------------------------------------------------------
        
    local function No_Undo()endlocal function no_undo()reaper.defer(No_Undo)end
        
    -----------------------------------------------------------------------------


        
    local function SetToggleButtonOnOff(numb);
            
    local value,ScriptWay,sec,cmd,mod,res,val reaper.get_action_context();
            
    reaper.SetToggleCommandState(sec,cmd,numb or 0);
            
    reaper.RefreshToolbar2(sec,cmd);
        
    end;


        
    local MidiEditor reaper.MIDIEditor_GetActive();
        if 
    not MidiEditor then;

            if 
    reaper.GetSelectedMediaItem(0,0then;
                
    reaper.Main_OnCommand(40153,-1);
                
    reaper.Main_OnCommand(40153,-1);
        
                
    local toggle_state reaper.GetToggleCommandStateEx(32060,40018);
                
    local MidiEditor reaper.MIDIEditor_GetActive();
                if 
    toggle_state == 0 then;                            
                    
    reaper.MIDIEditor_OnCommand(MidiEditor,40018);
                
    end;

                
    local toggle_state reaper.GetToggleCommandStateEx(32060,40481);
                if 
    toggle_state == 0 then;  
                    
    reaper.MIDIEditor_OnCommand(MidiEditor,40481);
                
    end;
                
    SetToggleButtonOnOff(1);
            
    end;
        else;
        
            
    local toggle_state reaper.GetToggleCommandStateEx(32060,40018);
            if 
    toggle_state == 1 then;                                    
            
    reaper.MIDIEditor_OnCommand(MidiEditor,40018);
            
    end;
        
            
    local toggle_state reaper.GetToggleCommandStateEx(32060,40481);
            if 
    toggle_state == 1 then;  
                
    reaper.MIDIEditor_OnCommand(MidiEditor,40481);
            
    end;
        
            
    reaper.MIDIEditor_OnCommandMidiEditor40794 );
            
    SetToggleButtonOnOff(0);
        
        
    end;


        function 
    loop();
            if 
    not reaper.MIDIEditor_GetActive() then;
                
    SetToggleButtonOnOff(0);
                return;
            
    end;
            
    reaper.defer(loop);
        
    end;

        
    loop();
     
    Последнее редактирование: 21 янв 2019
    BAYANBAYAN и smrz1 нравится это.
  27. BAYANBAYAN

    BAYANBAYAN Active Member

    Регистрация:
    4 мар 2010
    Сообщения:
    251
    Симпатии:
    87
    @Archchie, Отлично! Огромное спасибо!
     
  28. Supa75

    Supa75 Active Member

    Регистрация:
    21 мар 2017
    Сообщения:
    579
    Симпатии:
    134
    Пол:
    Мужской
    Адрес:
    Днепр, Украина
    Подскажите как можно организовать такую штуку. Пишу в режиме вставки, поэтому Рипер отключает запись на трек в конце тайм-селекшина. Однако воспроизведение продолжается после отключения записи. Как сделать так, чтобы в конце тайм-селекшн останавливалась и запись, и воспроизведение?
    Экшн "Xenakios/SWS: Toggle stop playback at end of time selection" естественно такого поведения не дает. Что-то должно висеть и анализировать тайм-лайн и при достижении правого края тайм-селекшн отключить воспроизведение и запись
     
  29. BAYANBAYAN

    BAYANBAYAN Active Member

    Регистрация:
    4 мар 2010
    Сообщения:
    251
    Симпатии:
    87
    @Supa75, кстати, да. Тоже сталкивался с тем, что это не удобно.
     
  30. Archchie

    Archchie Well-Known Member

    Регистрация:
    24 окт 2017
    Сообщения:
    648
    Симпатии:
    365
    @Supa75, Archie_Playback; Toggle stop playback at end of time selection.lua
     
    Последнее редактирование: 22 янв 2019
    Supa75 нравится это.
  31. shuco

    shuco Active Member

    Регистрация:
    26 ноя 2005
    Сообщения:
    285
    Симпатии:
    46
    Адрес:
    Новосибирск
    Подскажите, возможно ли сделать что бы экшн выполнялся по умолчанию, без хоткеев и кнопок?
     
  32. Aleksandr Oleynik

    Aleksandr Oleynik Well-Known Member

    Регистрация:
    16 янв 2007
    Сообщения:
    18.125
    Симпатии:
    10.203
    Пол:
    Мужской
    Адрес:
    Киев
    @shuco, можно - загрузите его в старт вашего проекта.
     
    shuco нравится это.
  33. shuco

    shuco Active Member

    Регистрация:
    26 ноя 2005
    Сообщения:
    285
    Симпатии:
    46
    Адрес:
    Новосибирск
    Я не правильно выразился... Скорее с кнопкой, что бы нажал-команда выполняется, отжал-не выполняется. И если можно, подскажите, как загрузить экшн в старт проекта?
     
  34. Aleksandr Oleynik

    Aleksandr Oleynik Well-Known Member

    Регистрация:
    16 янв 2007
    Сообщения:
    18.125
    Симпатии:
    10.203
    Пол:
    Мужской
    Адрес:
    Киев
    Для этого ТАК должен быть написан скрипт. В общем ЛЮБОЙ скрипт можно сделать ТАКИМ, как вы хотите, только нужно ведь понимать, что есть ведь действия скриптов, которые если вы вот так повесите на исполнение до вашего останова, просто чудеса начнут творить в вашем проекте и работать не дадут. По этому - всё это индивидуально и с подключением людей, которые уже прониклись пониманием скриптов.
    В Экстеншинах SWS есть такая опция - внимательно посмотрите.
     
    shuco нравится это.
  35. Supa75

    Supa75 Active Member

    Регистрация:
    21 мар 2017
    Сообщения:
    579
    Симпатии:
    134
    Пол:
    Мужской
    Адрес:
    Днепр, Украина
    данный экшн не работает для записи (что собственно следует из названия), т.е. в режиме вставки Рипер всё же думает, что идет запись, а не воспроизведение, поэтому ничего не останавливает даже после отключения записи.
     
  36. Archchie

    Archchie Well-Known Member

    Регистрация:
    24 окт 2017
    Сообщения:
    648
    Симпатии:
    365
    А причем тут экшен, это не экшен а скрипт, название то надо читать внимательней от начала до конца!!!
    Это экшен:
    "Xenakios/SWS: Toggle stop playback at end of time selection"
    Он просто с багом, он как запись не видит, так и когда "repeat" включен, то тоже не работает.​
    А это скрипт:
    Archie_Playback; Toggle stop playback at end of time selection.lua
    Он и запись видит и при включенном "repeat" не ломается.​
     
    Supa75 нравится это.
  37. Supa75

    Supa75 Active Member

    Регистрация:
    21 мар 2017
    Сообщения:
    579
    Симпатии:
    134
    Пол:
    Мужской
    Адрес:
    Днепр, Украина
    блин, не досмотрел. Все супер. Работает! Спасибо большое
     
    Archchie нравится это.
  38. Supa75

    Supa75 Active Member

    Регистрация:
    21 мар 2017
    Сообщения:
    579
    Симпатии:
    134
    Пол:
    Мужской
    Адрес:
    Днепр, Украина
    @Archchie, странно, что данный скрипт не работает у Cycle-action для условий. При сохранении, цикл-редактор пишет, что экшн не может быть зарегестрирован, т.к. не видит статуса on/off в скрипте. Но в экшинах видно, что такой статус существует (on/off). Что может быть не так?
    Screenshot_3.jpg
     
  39. Archchie

    Archchie Well-Known Member

    Регистрация:
    24 окт 2017
    Сообщения:
    648
    Симпатии:
    365
    Cycle-action не у одного скрипта не видит этот статус. Почему я не знаю. Где то не так давно это уже обсуждали.
    В принципе если сильно надо, то я могу сделать тебе этот статус через экшен dummy, то тогда цикл экшен увидит его, вот только если ты где нибудь еще в кастомах используешь экшен dummy, то они могут конфликтовать
     
  40. Supa75

    Supa75 Active Member

    Регистрация:
    21 мар 2017
    Сообщения:
    579
    Симпатии:
    134
    Пол:
    Мужской
    Адрес:
    Днепр, Украина
    даже не понимаю, в чем смысл dummy. Если это эти экшены SWS/S&M: Dummy toggle 1...8, - то нет, нигде не использую. Сделай плиз, чтобы можно было использовать в циклах для условий. Спасибо
     
  41. Archchie

    Archchie Well-Known Member

    Регистрация:
    24 окт 2017
    Сообщения:
    648
    Симпатии:
    365
    Да именно эти экшены Dummy toggle 1...8
    Cycle-action должен выглядеть примерно так
    upload_2019-1-22_18-16-31.png
    Когда включаешь экшен, то в условие на первое место ставишь не скрипт, а dummy toggle 1, а за нам уже скрипт.
    А вот когда выключаешь, то dummy уже вставлять не надо
     

    Вложения:

  42. Supa75

    Supa75 Active Member

    Регистрация:
    21 мар 2017
    Сообщения:
    579
    Симпатии:
    134
    Пол:
    Мужской
    Адрес:
    Днепр, Украина
    @Archchie, а что делать с самим скриптом Toggle(DUMMY) stop playback at the end of time selection.lua ?
     
  43. Archchie

    Archchie Well-Known Member

    Регистрация:
    24 окт 2017
    Сообщения:
    648
    Симпатии:
    365
    upload_2019-1-22_19-5-24.png
     
    BAYANBAYAN и Supa75 нравится это.
  44. smrz1

    smrz1 Banned

    Регистрация:
    25 янв 2010
    Сообщения:
    915
    Симпатии:
    130
    @Archchie, скрипт Archie_View; Enable spectral peaks on selected tracks.lua работает у меня не так как надо. Долго не писал по этому поводу, да и непонятно было, как это объяснить. В двух словах не получалось (отсутствие знаний по работе скриптов), но что происходит у меня в Reaper, снял в картинках, как мог, подробней. Придётся пользоваться спойлером...
    1. Для «чистоты эксперимента» я удалил все reapeaks файлы, так как иногда пользовался Peaks: Toggle spectral peaks и этот экшен дописывает spectral peaks во все reapeaks файлы. При открытии проекта, Рипер восстановил их в оригинале (только normal peaks).
    Начинаю применять скрипт Enable spectral peaks on selected tracks к выбранному треку (Bass.wav) и он сканирует все айтемы проекта. Его файл reapeaks увеличился в двое, но остальные reapeaks файлы остаются с прежним размером, зачем то он их просто сканировал, но не добавлял прорисовку spectral peaks.
    Захват4.png
    Применяю скрипт к следующему, выделенному треку S7_8 L Kick – с ним ничего не происходит. Как был в виде normal peaks (709 006), так и остаётся!
    Захват6.png
    Остальные треки, так же не реагируют… Смотрю в Action list… а там экшен Peaks: Toggle spectral peaks оказывается в положении (State) – on! Хотя он, изначально, был off. Получается, что при запуске, скрипт включает этот экшен и оставляет включенным, но не даёт ему дописывать данные spectral peaks в reapeaks файлы.
    Захват15.png
    Решил продолжить свой «эксперимент» и отключил Peaks: Toggle spectral peaks в off. Опять применяю скрипт к треку S7_8 L Kick, снова идёт сканирование всех файлов и теперь он переписывает свой reapeaks и появляется в виде spectral peaks. Между ними, двумя, теперь можно переключаться скриптом с normal peaks на spectral peaks, как и хотелось.
    Гиф Запись_2.gif
    П. с. Результат моих так сказать «экспериментов»:
    Скрипт, после запуска, на выделенном треке, сканирует все айтемы пректа в пустую, но добавляет данные spectral peaks, в файл reapeaks, только выделенного трека, данные spectral peaks в другие файлы reapeaks не добавляются – их нет.
    Просто, при повторном включении скрипта ничего не происходит, пока экшен Toggle spectral peaks не выключишь в ручную. Получается, на каждом выделенном треке будет идти «пустое» сканирование всех айтемов пректа, а измениться только один трек с айтемами и его файл reapeaks.

    Как я могу использовать скрипт сейчас:
    1. При открытии проекта, с самого начала, запускаю экшен Toggle spectral peaks, он прорисовывает все дорожки и добавляет данные картинок spectral peaks во все reapeaks файлы, я выключаю Toggle spectral peaks, возвращаются normal peaks.
    2. Убираю из TCP Трек-Менеджером все Трек-папки, делаю треки максимально узкими и все их выделяю. Потом запускаю скрипт Archie_View; Enable spectral peaks on selected tracks на все дорожки, они опять становятся spectral peaks.
    3. Снимаю выделение всех треков, запускаю Archie_View; Auto enable spectral peaks on selected tracks (с Auto enable гораздо удобней) на выделенном треке, можно работать и расширить как угодно все треки - скрипт работает без ошибок.
    Запись_2019_01_26_22_41_26_982.gif
    Но стоит вернуть из Трек-Менеджера все Трек-папки в TCP – опять начинается свистопляска – в каких то треках появляется spectral peaks, в каких то нет (в большинстве).
    Иногда прорисовывает только, почему то, айтемы Mute, а работающие - нет. Факт главный: скрипт перестаёт нормально работать с треком, если в TCP есть его Трек-папка!
    Гиф Запись_3.gif
    Расширять треки можно сколько угодно, хоть на весь экран – всё работает…, главный враг этого скрипта - Трек-папка. Без неё - всё чётко.
    Вопрос:
    Можно ли сделать так, что бы при первом включении скрипта Auto enable spectral peaks on selected tracks, запускалась прорисовка всех дорожек в spectral peaks и добавлялись эти данные во все reapeaks файлы (а не пустое их сканирование), как это делает экшен Peaks: Toggle spectral peaks?
    А когда скрипт выключаешь, демонстрация spectral peaks должна прекратится и вернуться к normal peaks (как при выключении экшена Peaks: Toggle spectral peaks).
    И самое главное, как избавиться от зависимости скрипта к трекам, в "присутствии" их Трек-папки? Что то мешает ему корректно работать с треками при папке - стоит убрать папку из ТСР - всё нормально...
    п. с. В проекте чуть больше 80 аудио-треков и с убранными папками работать неудобно.
     
    Последнее редактирование: 26 янв 2019
  45. Wefilev

    Wefilev Member

    Регистрация:
    22 мар 2015
    Сообщения:
    187
    Симпатии:
    21
    Пол:
    Мужской
    Вроде раньше в паке был скрипт создающий стретч-маркеры на выделеном айтеме по сетке, сейчас не найду.. Поделитесь пожалуйста))
     
  46. zenykmusic

    zenykmusic Member

    Регистрация:
    16 авг 2018
    Сообщения:
    117
    Симпатии:
    2
    Пол:
    Мужской
    Друзья помогите.Хочу сделать кнопку вст эфекта(не инструмента) нашол такое видео
    но есть одно но.как сделать что б добавленый еффект по умолчанию открывался автоматически. а может есть еще какие то способы.Подскажите пожалуйста.Спасибо
     
  47. Archchie

    Archchie Well-Known Member

    Регистрация:
    24 окт 2017
    Сообщения:
    648
    Симпатии:
    365
    @zenykmusic,
    ПКМ по нужному плагину
    upload_2019-1-28_20-43-31.png
    назначаешь шоткат и ищешь этот плагин в экшенах
    upload_2019-1-28_20-44-43.png
    --- добавлено 28 янв 2019 ---
    В каком смысле "по умолчанию открывался автоматически"?
     
  48. zenykmusic

    zenykmusic Member

    Регистрация:
    16 авг 2018
    Сообщения:
    117
    Симпатии:
    2
    Пол:
    Мужской
    вот это тема спасибо.А как сделать что б плагин открывался без рамочки цепи эффектов.Спасибо
     
  49. Archchie

    Archchie Well-Known Member

    Регистрация:
    24 окт 2017
    Сообщения:
    648
    Симпатии:
    365
    upload_2019-1-28_20-59-9.png
     
  50. zenykmusic

    zenykmusic Member

    Регистрация:
    16 авг 2018
    Сообщения:
    117
    Симпатии:
    2
    Пол:
    Мужской
    Огромнишое спасибо Вы мне очень помогли.Простите за наглость но ище вопрос.Адля айтемов тоже самое можно сделать.Спасибо
     

Поделиться этой страницей