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

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

  1. @Michael

    @Michael Well-Known Member

    Регистрация:
    14 дек 2010
    Сообщения:
    840
    Симпатии:
    1.266
    Пол:
    Мужской
    Адрес:
    Орёл / Москва
  2. BAYANBAYAN

    BAYANBAYAN Active Member

    Регистрация:
    4 мар 2010
    Сообщения:
    163
    Симпатии:
    67
    @@Michael, Большое человеческое спасибо! Это мне очень пригодится.
    Я правильно понял, что ID устройства вставляется в конец этой строчки, где кавычки?
    local retval, nameout = reaper.GetMIDIInputName( i, '' )
     
    Последнее редактирование: 1 ноя 2018
  3. BAYANBAYAN

    BAYANBAYAN Active Member

    Регистрация:
    4 мар 2010
    Сообщения:
    163
    Симпатии:
    67
    @@Michael, Подскажите, пожалуйста, куда вставлять ID MIDI устройства, а куда канал. Что-то не смог самостоятельно разобраться.
     
  4. fractala

    fractala Well-Known Member

    Регистрация:
    1 авг 2012
    Сообщения:
    1.302
    Симпатии:
    298
    Пол:
    Мужской
    Ребята, подскажите пожалуйста скрипт или экшен для online render.
    Ситуация такая - нужен именно онлайн рендер миди айтемов по отдельности или всей дорожки, так как работаю с железками (по midi или vst-midi)

    Все экшены (по слову bounce или render) из списка (это порядка 3000) перепробовал, они все делают offline render.

    ps: можно конечно лезть постоянно в настройки рендера рипера и вручную выставлять online рендер, менять настройки рендера (имя папки, wildcards, тип ресемплинга). А потом при рендере проекта снова возвращать все обратно. Это слишком муторный вариант
    Верю что есть скрипт или можно написать его.
     
  5. PianoIst

    PianoIst Well-Known Member

    Регистрация:
    19 май 2010
    Сообщения:
    2.834
    Симпатии:
    2.322
    Пол:
    Мужской
    Род занятий:
    Аранжировка, солист-пинанист
    Адрес:
    Новосибирск
    ну можно чутка легче: есть пресеты рендера.
    А про скрипт не подскажу...
     
  6. fractala

    fractala Well-Known Member

    Регистрация:
    1 авг 2012
    Сообщения:
    1.302
    Симпатии:
    298
    Пол:
    Мужской
    про пресеты знаю, хотелось бы вообще не лезть в настройки рендера микса , взял скрипт онлайн рендера, повесил его на кнопку тулбара и вперед.

    ps: или как вариант, в меню рендера подготовить заранее пресеты, а этим скриптом просто запускать нужный мне пресет рендера
     
  7. @Michael

    @Michael Well-Known Member

    Регистрация:
    14 дек 2010
    Сообщения:
    840
    Симпатии:
    1.266
    Пол:
    Мужской
    Адрес:
    Орёл / Москва
    @BAYANBAYAN вместо touchosc точное имя устройства или часть имени без пунктуации
     
    BAYANBAYAN нравится это.
  8. BAYANBAYAN

    BAYANBAYAN Active Member

    Регистрация:
    4 мар 2010
    Сообщения:
    163
    Симпатии:
    67
    @@Michael, Отлично, все работает! Скажите, а можно сделать изменение входа для всех выделенных треков? Сейчас переключается только первый выделенный трек.
     
  9. Snjuk

    Snjuk Member

    Регистрация:
    10 июн 2014
    Сообщения:
    48
    Симпатии:
    16
    Пол:
    Мужской
    Адрес:
    Житомир UA
    Здравствуйте, Есть экшн SWS/FNG: Time stretch selected items by 2
    можно сделать скрипт Time stretch selected items by 0,5 спасибо
     
  10. Archchie

    Archchie Active Member

    Регистрация:
    24 окт 2017
    Сообщения:
    352
    Симпатии:
    175
    Пол:
    Мужской
    Не совсем вопрос понятен. Как можно растянуть в 0.5 ?
    Ведь если мы растянем в 0.5, то он станет в 2 раза короче
    Может вы инели в виду в 1.5 раза ? (то есть к основному прибавить половину) или 1.25
     
    Последнее редактирование: 2 ноя 2018
  11. Snjuk

    Snjuk Member

    Регистрация:
    10 июн 2014
    Сообщения:
    48
    Симпатии:
    16
    Пол:
    Мужской
    Адрес:
    Житомир UA
    Я имел ввиду в 2 раза короче
     
  12. Archchie

    Archchie Active Member

    Регистрация:
    24 окт 2017
    Сообщения:
    352
    Симпатии:
    175
    Пол:
    Мужской
    @Snjuk, Archie_Item; Stretch time and reduce the selected item(s) by 2 times.lua
     
    Snjuk нравится это.
  13. Snjuk

    Snjuk Member

    Регистрация:
    10 июн 2014
    Сообщения:
    48
    Симпатии:
    16
    Пол:
    Мужской
    Адрес:
    Житомир UA
  14. HDVulcan

    HDVulcan Active Member

    Регистрация:
    23 окт 2016
    Сообщения:
    154
    Симпатии:
    31
    Пол:
    Мужской
    @Michael, я обновил реапак и протестировал новую версию скрипта "mpl_Send selected tracks to track under mouse cursor (channel 3-4)". Все работает хорошо.
    Теперь стало намного удобнее пользоваться.
    Спасибо большое,Михаил!
     
  15. arkaine

    arkaine Active Member

    Регистрация:
    13 сен 2007
    Сообщения:
    611
    Симпатии:
    119
    О нотах в MIDI Editor'е:

    Подскажите, пожалуйста, есть ли (или мог бы кто создать?) экшн/скрипт, который бы располагал все выделенные разновысотные ноты на высоте первой из выделенных нот?

    Стандартным функционалом это можно реализовать посредством Multiple Note Properties, но это всё же совершение нескольких действий, да и пока определишь высоту (точный номер) первой из них -- это значительно замедляет совершение данного действия, которое можно было бы реализовать одним экшном/скриптом при наличии такового.

    Test.gif
     
  16. Aleksandr Oleynik

    Aleksandr Oleynik Well-Known Member

    Регистрация:
    16 янв 2007
    Сообщения:
    16.914
    Симпатии:
    9.168
    Пол:
    Мужской
    Адрес:
    Киев
    @arkaine, сильно индивидуальная задача, врядли ещё кому то жто нужно.
     
  17. vitalker

    vitalker Well-Known Member

    Регистрация:
    8 окт 2013
    Сообщения:
    3.061
    Симпатии:
    1.183
    Адрес:
    Гродно
    @arkaine, пока можно выделить сначала одну ноту, скопировать её высоту, выделить все ноты и вставить высоту.
     
    BAYANBAYAN нравится это.
  18. BAYANBAYAN

    BAYANBAYAN Active Member

    Регистрация:
    4 мар 2010
    Сообщения:
    163
    Симпатии:
    67
    @vitalker, Кстати, точно! Я как-то не додумался до этого, определял ноту.
     
  19. @Michael

    @Michael Well-Known Member

    Регистрация:
    14 дек 2010
    Сообщения:
    840
    Симпатии:
    1.266
    Пол:
    Мужской
    Адрес:
    Орёл / Москва
    @arkaine не уверен, что будет работать с пересекающимися нотами, но с монофонией должно быть ок
    PHP:
      function main()
        
    local ME  reaper.MIDIEditor_GetActive()
        if 
    not ME then return end
        local take
    reaper.MIDIEditor_GetTakeME )
        if 
    not take or not reaper.TakeIsMIDI(takethen return end
     
        local gotAllOK
    MIDIstring reaper.MIDI_GetAllEvts(take"")
        if 
    not gotAllOK then return end
        local MIDIlen 
    MIDIstring:len()
        
    local fstselPP
        local s_unpack
    s_packout_strnextPosprevPosoffsetflagsmsg1 string.unpackstring.pack''11
        
    while nextPos <= MIDIlen do
          
    prevPos nextPos
          offset
    flagsmsg1nextPos s_unpack("i4Bs4"MIDIstringprevPos)
          if 
    not fstselP and flags&1==and msg1:byte(1)>>== 0x9 then fstselP msg1:byte(2end
          
    if fstselP and flags&1==1 then P fstselP else msg1:byte(2end
          str_per_msg 
    string.pack("i4Bi4BBB"offsetflags3,
                                            
    msg1:byte(1),
                                            
    P,
                                            
    msg1:byte(3))
          
    out_str out_str..str_per_msg
        end
        reaper
    .MIDI_SetAllEvts(takeout_str)
        
    reaper.MIDI_Sort(take)
      
    end

      main
    ()
     
    arkaine и BAYANBAYAN нравится это.
  20. borisuperful

    borisuperful Well-Known Member

    Регистрация:
    31 янв 2013
    Сообщения:
    1.044
    Симпатии:
    330
    Кто поможет создать скрипт - удаление папки, без удаления дочерних треков? В том числе если есть и подпапки, и я удаляю только подпапку - должно все корректно работать, чтобы дочерние треки тогда переместились в папку, в которой была подпапка. Также удаление несколько выделенных папок одновременно, желательно
     
  21. Archchie

    Archchie Active Member

    Регистрация:
    24 окт 2017
    Сообщения:
    352
    Симпатии:
    175
    Пол:
    Мужской
    Сегодня сделаю.

    P.S. Archie_Track; Delete folder(s) not removing child tracks.lua / ReaPack / Raw
     
    Последнее редактирование: 8 ноя 2018
  22. Maestro Sound

    Maestro Sound Active Member

    Регистрация:
    1 ноя 2007
    Сообщения:
    505
    Симпатии:
    54
    Archchie нравится это.
  23. Archchie

    Archchie Active Member

    Регистрация:
    24 окт 2017
    Сообщения:
    352
    Симпатии:
    175
    Пол:
    Мужской
    @Maestro Sound, "SWS: Delete track(s) with children (prompt)" С подпапками не умеет работать.
    Если удалить подпапку с помощью этого экшена, то последующие треки "из предыдущих папок" выкинет из папок
    222sdf.gif
     
    Maestro Sound нравится это.
  24. Maestro Sound

    Maestro Sound Active Member

    Регистрация:
    1 ноя 2007
    Сообщения:
    505
    Симпатии:
    54
    @Archchie, А можно сделать с запросом удалять childrens Tracks или нет 111111.png
     
  25. Archchie

    Archchie Active Member

    Регистрация:
    24 окт 2017
    Сообщения:
    352
    Симпатии:
    175
    Пол:
    Мужской
    Archie_Track; Delete folder (request for removal of child tracks).lua / ReaPack / Raw
     
    Maestro Sound нравится это.
  26. Maestro Sound

    Maestro Sound Active Member

    Регистрация:
    1 ноя 2007
    Сообщения:
    505
    Симпатии:
    54
  27. Maestro Sound

    Maestro Sound Active Member

    Регистрация:
    1 ноя 2007
    Сообщения:
    505
    Симпатии:
    54
    @Archchie, Я вот проверил. Плохо что скрипт работает только с Folder треками. Было бы лучше что бы он удалял и обычные треки
     
  28. borisuperful

    borisuperful Well-Known Member

    Регистрация:
    31 янв 2013
    Сообщения:
    1.044
    Симпатии:
    330
    @Maestro Sound,
    Чтобы чилдрен треки удалял сам по себе, это я уже и сам могу подправить. Сегодня посмотрю. Хотя... Есть еще одна ситуация, что если я хочу удалить фолдер трек с частью дочерних, и при этом остальные дочерние остались в правильном месте. Короче это уже дебри, но можно еще дорабатывать
     
    Последнее редактирование: 8 ноя 2018
  29. borisuperful

    borisuperful Well-Known Member

    Регистрация:
    31 янв 2013
    Сообщения:
    1.044
    Симпатии:
    330
    @Archchie, кажется все же неправильно треки распределяются из подпапок. Они остаются как бы в папке, но при этом следующие нижние (которые не были в папке) тоже в папку идут. Я понял в каком случае - если последний трек находится в подпапке, и дальше уже из предыдущей папки треков нет
     
  30. Archchie

    Archchie Active Member

    Регистрация:
    24 окт 2017
    Сообщения:
    352
    Симпатии:
    175
    Пол:
    Мужской
    Завтра посмотрю
     
  31. Archchie

    Archchie Active Member

    Регистрация:
    24 окт 2017
    Сообщения:
    352
    Симпатии:
    175
    Пол:
    Мужской
    Archie_Track; Delete only selected track(s) without deleting children.lua
    Archie_Track; Delete only selected tracks (show a request to delete child tracks).lua

    Поправил.
     
    Maestro Sound нравится это.
  32. Archchie

    Archchie Active Member

    Регистрация:
    24 окт 2017
    Сообщения:
    352
    Симпатии:
    175
    Пол:
    Мужской
    Archie_Options; Smart Multi script(Button 1).lua
     
    YuriOl, Supa75 и Maestro Sound нравится это.
  33. Maestro Sound

    Maestro Sound Active Member

    Регистрация:
    1 ноя 2007
    Сообщения:
    505
    Симпатии:
    54
    @Archchie, Класс! Только после назначения постоянно выскакивает разъяснительная таблица даже после нажатия ок
     

    Вложения:

    • 22222.png
      22222.png
      Размер файла:
      16,1 КБ
      Просмотров:
      12
    Archchie нравится это.
  34. Archchie

    Archchie Active Member

    Регистрация:
    24 окт 2017
    Сообщения:
    352
    Симпатии:
    175
    Пол:
    Мужской
    Исправил
     
    Maestro Sound нравится это.
  35. BAYANBAYAN

    BAYANBAYAN Active Member

    Регистрация:
    4 мар 2010
    Сообщения:
    163
    Симпатии:
    67
    Подскажите, пожалуйста, на форуме может быть обсуждалось - как удалить в проекте все айтемы вместе со всей автоматизацией, включая и изменения темпа. Пишу сейчас для одного состава инструментов и постоянно что-нибудь меняю, поэтому продолжаю следующую работу в этом же проекте, предварительно удалив весь предыдущий контент. Хотелось иметь такой скрипт на удаление всего контента, кроме треков, разумеется.
     
  36. Archchie

    Archchie Active Member

    Регистрация:
    24 окт 2017
    Сообщения:
    352
    Симпатии:
    175
    Пол:
    Мужской
    Archie_Item Remove all items, envelopes from project (including master track).lua
     
    BAYANBAYAN нравится это.
  37. BAYANBAYAN

    BAYANBAYAN Active Member

    Регистрация:
    4 мар 2010
    Сообщения:
    163
    Симпатии:
    67
    @Archchie, Спасибо, вечером попробую.
     
  38. BAYANBAYAN

    BAYANBAYAN Active Member

    Регистрация:
    4 мар 2010
    Сообщения:
    163
    Симпатии:
    67
    @Archchie, Отлично, все работает! Спасибо большое!
     
  39. Nordum

    Nordum Active Member

    Регистрация:
    28 окт 2016
    Сообщения:
    141
    Симпатии:
    29
    Пол:
    Мужской
    Род занятий:
    SD, CG, BB, GG.
    Доброго. Пользуюсь скриптом для компрессии линий автоматизации (Script: spk77_Compress or expand selected envelope points.lua)
    Работает отлично, но только с энвелопами волюма (что логично) не работает на точках автоматизации сторонних параметров. Может знает кто решения подобного плана для данной задачи?
     

    Вложения:

  40. Aleksandr Oleynik

    Aleksandr Oleynik Well-Known Member

    Регистрация:
    16 янв 2007
    Сообщения:
    16.914
    Симпатии:
    9.168
    Пол:
    Мужской
    Адрес:
    Киев
    Для какой задачи?
    Зачем компрессор на чём либо ином?
     
    Последнее редактирование: 14 ноя 2018 в 20:01
  41. Nordum

    Nordum Active Member

    Регистрация:
    28 окт 2016
    Сообщения:
    141
    Симпатии:
    29
    Пол:
    Мужской
    Род занятий:
    SD, CG, BB, GG.
    для задачи изменения диапазона между двумя и более точек. Например в процессе аранжировки автоматизируется cutoff фильтра, в последствии вносятся правки и требуется быстро уменьшить либо увеличить разгул конкретного фэйдера, сохраняя при этом рисунок который всех устраивает. Это может быть спектральная панорама, ручка стороннего триммера, фэйдер гейна частоты параллельного eq. что угодно
     
  42. feeleen

    feeleen Active Member

    Регистрация:
    11 ноя 2005
    Сообщения:
    904
    Симпатии:
    232
    Пол:
    Мужской
    Господа, просветите, требуется следующий функционал, может уже было где:
    есть миди партия хета, записанная с roland td30, открывание прописывается через CC04 контроллер. Нужно решение, позволяющее раскидать ноты по степеням открытости хета и отвязаться от СС. Т.е. я заселекчиваю все ноты с номером 26 и скрипт каждую ноту закидывает на соответствующую ноту текущей степени открытости, но уже в маппинге ВСТ ударки. К примеру величина СС04 сейчас 67, значит ноту с 26 запуливаем на 61 или какая там соответствует половине открытости.
    Пытаюсь разобраться с ЛУА, но пока не пойму с какой стороны подступиться к своей задаче
     
  43. @Michael

    @Michael Well-Known Member

    Регистрация:
    14 дек 2010
    Сообщения:
    840
    Симпатии:
    1.266
    Пол:
    Мужской
    Адрес:
    Орёл / Москва
    От бОльшего к меньшему.
    С каким тейком работать - reaper.GetActiveTake( ) или reaper.MIDIEditor_GetTake( )
    Прогонять и изменять ноты - reaper.MIDI_SetNote( ) для каждой ноты или reaper.MIDI_SetAllEvts( ) для всего тейка махом.
    Сходу ты такое вряд ли напишешь, проще сформулировать полностью продуманное ТЗ с маппингом, степенями открытости и прочим конкретно и изучать решение.
     
    feeleen нравится это.
  44. feeleen

    feeleen Active Member

    Регистрация:
    11 ноя 2005
    Сообщения:
    904
    Симпатии:
    232
    Пол:
    Мужской
    ну мне бы глянуть хотя бы частный случай, ситуация такая: я зашел в миди айтим и заселектил одну ноту, как будет выглядеть скрипт, перемещающий заселекченную ноту ну допустим на 10 позиций вверх?
     
  45. borisuperful

    borisuperful Well-Known Member

    Регистрация:
    31 янв 2013
    Сообщения:
    1.044
    Симпатии:
    330
    @Archchie, не поможешь создать скрипт? Просто жутко необходимо для пошаговой записи стирать с возвратом курсора, но кастом все таки как-то медленно работает. Задача повторить кастом.
    Код:
    SWS/FNG: Select notes nearest edit cursor
    Navigate: Move edit cursor to start of selected events
    Edit: Delete events
     
  46. Archchie

    Archchie Active Member

    Регистрация:
    24 окт 2017
    Сообщения:
    352
    Симпатии:
    175
    Пол:
    Мужской
    @borisuperful, Archie_MidiEditor; Delete note(s) nearest to edit cursor.lua
     
    Maestro Sound нравится это.
  47. Maestro Sound

    Maestro Sound Active Member

    Регистрация:
    1 ноя 2007
    Сообщения:
    505
    Симпатии:
    54
    @Archchie, А можно создать некий шаблонный скрипт для добавления VSTi на выделенный трек или треки, Для подстройки под себя 111111.png .
    пункт 1. Если скрипт назначается в тулбар , то указывать номер тулбара с возможностью закрывать тулбар или нет.
    пункт 2. Переименовывать трек или нет (если да то в скрипте вписывать имя)
    пункт 3. Добавлять VSTi в следующий не занятый слот Fx, в первый слот смещая остальные если есть или удалять все имеющиеся занятые слоты и ставить инструмент первым
    пункт 4. Имя Инструмента который нужно добавить на выделенный трек (треки) и если возможно с пресетом тоже самому прописав его в скрипте
    пункт 5. Активировать мониторинг на треке или нет
    пункт 6. Активировать запись arm record или....
    пункт 7. Открывать фейс плагина в chain или float Float (по умолчанию)
    ну и вообще в наглую пункт 8. Если нужно дать возможность прогрузить вдобавок в следующий слот Fx за VSTi свой Vst тоже указав имя в соответствующей строке скрипта (и его пресет). Спасибо........
     
    Последнее редактирование: 18 ноя 2018 в 12:33

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