Render, Bounce in place, Mixdown selection и тому подобное

Тема в разделе "Cockos Reaper", создана пользователем borisuperful, 3 янв 2019.

  1. borisuperful

    borisuperful Well-Known Member

    Регистрация:
    31 янв 2013
    Сообщения:
    1.297
    Симпатии:
    462
    Долгое время тыкал разные экшны и создавал всякие доп меню для конкретного рендера. Поэтому пришлось все это как-то унифицировать. Создал такие специфичные скрипты (по мере своих способностей на данный момент кодить):) Пока без GUI. Может быть кому нибудь пригодится в качестве замены Bounce in place в кубе, ну и Mixdown selection в Studio one. Внес в эти фичи несколько собственный концепт. Самое главное для меня в скриптах - выбор хвоста и mono/stereo/multichanel.

    Итак, четыре основных скрипта. Пока полностью ориентированы на использование в аудио или миди (инструмент) треке. Если рендерить просто шину (звучащий трек без айтемов), то либо ставить тайм селекшн + хвост, либо тайм селекшн, либо ничего не менять. То есть один хвост больше 0 ставить нельзя. Потом доделаю этот момент.

    Render to new track - рендерит весь трек или по тайм селекту. С группой треков тоже сработает, аналогично штатному рендеру расположит стемы над каждым треком.

    Bounce selection - очень похожий скрипт, но идентификация идет по выделенным айтемам. По сути более продвинутый скрипт. При этом если вы из 3х айтемов друг за другом выделите 1ый и 3ий - то второй не будет рендерится между ними. Также может учитываться тайм селект. Для группы треков правда будет один и тот же хвост по самому дальнестоящему айтему (если не учитывается тайм селект). Доделаю этот момент.

    Mixdown selection - полностью повторяет фичу S1, но также добавил окно для выбора хвоста, учитывать/не учитывать тайм селект, и моно/стерео. Суть фичи в том, что все выделенные айтемы будут рендерится в один трек, перед мастером. При этом не будут учитываться промежуточные айтемы, если они не выделены (аналогично Bounce selection). Принцип работы через Global folder :) Поэтому не получится сделать multichannel, т.к. папка в рипере не принимает сигнал мультиканально.

    Render to new take - рендер в тейк. Подходит для инструмента.

    Тему создал, т.к. возможно потом буду эту идею модифицировать. Это касается особенно GUI. Рад буду, если кто-то идею подхватит или уже подхватил и создаст более совершенные скрипты :)

    По инструкции мне кажется все будет и так понятно :) Вводить нужное число (если tail в секундах, то можно дробное), либо 1 и 0 в качестве "да" и "нет". В качестве "да" вроде можно что угодно больше 0 вводить :)
     

    Вложения:

    Последнее редактирование: 17 янв 2019
    Andernik, Aliko, bura6nikov и 9 другим нравится это.
  2. borisuperful

    borisuperful Well-Known Member

    Регистрация:
    31 янв 2013
    Сообщения:
    1.297
    Симпатии:
    462
    Обновил по части того, чтобы все было правильно после cancel render :)
     
    Последнее редактирование: 4 янв 2019
  3. borisuperful

    borisuperful Well-Known Member

    Регистрация:
    31 янв 2013
    Сообщения:
    1.297
    Симпатии:
    462
    Еще раз обновил - теперь есть опция копировать автоматизации эффектов (в случае, если мы рендерим без эффектов и копируем их).
     
  4. borisuperful

    borisuperful Well-Known Member

    Регистрация:
    31 янв 2013
    Сообщения:
    1.297
    Симпатии:
    462
    Вновь обновил - более изящно обошел один баг, который возникает с копированием эффектов вместе с FX автоматизациями (баг с чанками) в пустой Fx chain. Заключается он в том, что когда копируются эффекты в пустой FX chain (на котором ранее не было эффектов) - после копирования эффектов удаляются все айтемы на треке. Ранее скрипт для обхода бага добавлял и удалял ReaEq.
    Также была ошибка в скрипте Bounce selection с копированием без автоматизаций - два раза копировалось. Опечатался - поправил
     
    Последнее редактирование: 6 янв 2019
    lamamama и Gavruseff нравится это.
  5. borisuperful

    borisuperful Well-Known Member

    Регистрация:
    31 янв 2013
    Сообщения:
    1.297
    Симпатии:
    462
    Bounce selection перезалил снова, поправлял его и еще ошибку нашел :)
    Также в Render и Bounce поправил удаление точек вне time selection, когда если кривая envelope была написана вогнуто/выпукло, и поверх этой вогнутости/выпуклости была точка, попадающая на левую границу time selection - после удаления точек кривая в этом месте становилась ровной.
     
    Последнее редактирование: 6 янв 2019
    Maestro Sound нравится это.
  6. Maestro Sound

    Maestro Sound Active Member

    Регистрация:
    1 ноя 2007
    Сообщения:
    577
    Симпатии:
    63
    Хорошая плюша. Спасибо!
     
    Намасте_намасте нравится это.
  7. Андрей Макаров

    Андрей Макаров New Member

    Регистрация:
    21 дек 2017
    Сообщения:
    11
    Симпатии:
    8
    Пол:
    Мужской
    Адрес:
    Кишинёв
    Спасибо! Полезная вещь.
    Если бы её ещё вот так оформить:)
     
    YuriOl, fractala и borisuperful нравится это.
  8. borisuperful

    borisuperful Well-Known Member

    Регистрация:
    31 янв 2013
    Сообщения:
    1.297
    Симпатии:
    462
    @Андрей Макаров, можно, но меня настораживает эта библиотека :) Relauncher например написан на ней, и он очень некрасво запускается (мелькает все до него). Хотя может в другом дело
    Возможно буду свое рисовать.
    А можешь скинуть этот шаблон? Я посмотрю как работает
     
    Maestro Sound нравится это.
  9. Андрей Макаров

    Андрей Макаров New Member

    Регистрация:
    21 дек 2017
    Сообщения:
    11
    Симпатии:
    8
    Пол:
    Мужской
    Адрес:
    Кишинёв
    Вот ссылка:
    drive.google.com/open?id=1JBgPCMcRjUyawqWCvfJsp2XCNH7ZmaKm
     
    Maestro Sound и borisuperful нравится это.
  10. borisuperful

    borisuperful Well-Known Member

    Регистрация:
    31 янв 2013
    Сообщения:
    1.297
    Симпатии:
    462
    @Андрей Макаров, нормально запускается :) Значит ReaLauncher так запускается видимо из-за каких-то процессов, которые он зрит перед этим, то есть в reaper.ini
     
  11. Андрей Макаров

    Андрей Макаров New Member

    Регистрация:
    21 дек 2017
    Сообщения:
    11
    Симпатии:
    8
    Пол:
    Мужской
    Адрес:
    Кишинёв
    Я, к сожалению, в скриптах вообще не шарю:( Только умные советы давать могу:) Кроме кастом-экшнов ничего наваять сам не умею... А то бы помог, чем мог.
     
    Maestro Sound нравится это.
  12. borisuperful

    borisuperful Well-Known Member

    Регистрация:
    31 янв 2013
    Сообщения:
    1.297
    Симпатии:
    462
    Еще раз обновил - по просьбе добавил опцию Pre-render length и trim начала айтема (имеет смысл только при наличии тайм селекта, иначе тишина)
     
    Последнее редактирование: 8 янв 2019
  13. Maestro Sound

    Maestro Sound Active Member

    Регистрация:
    1 ноя 2007
    Сообщения:
    577
    Симпатии:
    63
    @borisuperful, А как на счет отрендеренного трека его, Замутировать, залочить,, перевести его в какую нибудь из 32 групп выделенную для отрендеренных и скрыть их визуально??????
     
  14. borisuperful

    borisuperful Well-Known Member

    Регистрация:
    31 янв 2013
    Сообщения:
    1.297
    Симпатии:
    462
    @Maestro Sound, очень громоздко будет. Что нибудь может еще добавлю. Это все можно сделать. Типа добавить пункт - запаковать и скрыть в группу и номер.
     
    Maestro Sound нравится это.
  15. Maestro Sound

    Maestro Sound Active Member

    Регистрация:
    1 ноя 2007
    Сообщения:
    577
    Симпатии:
    63
    @borisuperful, Да!! но перед этим замютировать или вывести в оффлайн чтоб не жрал ресурсы
     
  16. borisuperful

    borisuperful Well-Known Member

    Регистрация:
    31 янв 2013
    Сообщения:
    1.297
    Симпатии:
    462
    На след неделе добавлю пока просто дополнительно к mute - disable или delete оригинала
     
  17. borisuperful

    borisuperful Well-Known Member

    Регистрация:
    31 янв 2013
    Сообщения:
    1.297
    Симпатии:
    462
    Обновил - добавил скрипт рендер в тейк. Используется штатный экшн Item: Apply track/take FX to items c вариациями каналов, но скрипт в отличие от экшна не рендрит эффекты трека, а временно уводит в bypass (кроме инструмента). Аналогично предыдущим скриптам - правильно восстанавливает bypass состояние эффектов (например если до этого инструмент уже находился в bypass). Также есть опция увести инструмент в оффлайн
    Фишка подходит исключительно для инструмента
     
    Последнее редактирование: 10 янв 2019
    jeko, Андрей Макаров и Maestro Sound нравится это.
  18. borisuperful

    borisuperful Well-Known Member

    Регистрация:
    31 янв 2013
    Сообщения:
    1.297
    Симпатии:
    462
    Вновь обновил - как и обещал, добавил опцию Disable и Delete оригинала. Также добавил скрипты, чтобы вернуть или задать disable состояние трека
     
    Последнее редактирование: 14 янв 2019
  19. YuriOl

    YuriOl Active Member

    Регистрация:
    6 май 2005
    Сообщения:
    627
    Симпатии:
    156
    Пол:
    Мужской
    Адрес:
    Луганск
    @borisuperful, классно сделал! Уже в работе! :) А есть возможность воплотить запоминание последних выбранных опций по умолчанию например в Script: Yanick_Bounce selection.lua и Script: Yanick_Render to new take.lua?
    Очень бы помогло при работе с items вокала, которые в моно записаны. Каждый раз не выставлять выставленный по умолчанию Stereo-2 или Mute... И Mute не трека, а Item, который рендеришь? Типа - Script: gen_Render selected item as new take, up to last VSTi.lua? Было бы вообще супер!!! ✌️:)
     
    Последнее редактирование: 16 янв 2019
  20. borisuperful

    borisuperful Well-Known Member

    Регистрация:
    31 янв 2013
    Сообщения:
    1.297
    Симпатии:
    462
    @YuriOl, запоминание опций не в курсе как делать :) Можешь себе сам составить набор. Я обновил, там в верху скрипта можно менять. Также версии без окна сделал.
    Можно сделать, в Bounce, подумаю потом
     
    YuriOl нравится это.
  21. borisuperful

    borisuperful Well-Known Member

    Регистрация:
    31 янв 2013
    Сообщения:
    1.297
    Симпатии:
    462
    @YuriOl, можешь посмотреть мут айтема
     
    YuriOl нравится это.
  22. YuriOl

    YuriOl Active Member

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

    Отлично!
     
  23. borisuperful

    borisuperful Well-Known Member

    Регистрация:
    31 янв 2013
    Сообщения:
    1.297
    Симпатии:
    462
    @YuriOl, да, я там не тот код скопировал из рендер трека :) Посмотри ща еще раз
     
    YuriOl нравится это.
  24. YuriOl

    YuriOl Active Member

    Регистрация:
    6 май 2005
    Сообщения:
    627
    Симпатии:
    156
    Пол:
    Мужской
    Адрес:
    Луганск
    Я так и подумал. Поведение скрипта стало как Script: Yanick_Render track to new track... :)
    --- добавлено 16 янв 2019 ---
    @borisuperful, конечно не принципиально, наверное дело привычки, а не трудно сделать чтобы рендеренный трек (Item) создавался под а не над айтемом, который рендеришь?
     
  25. borisuperful

    borisuperful Well-Known Member

    Регистрация:
    31 янв 2013
    Сообщения:
    1.297
    Симпатии:
    462
    Геморройно :) Это лишний код для перемещения еще. Нативно так работает
     
  26. YuriOl

    YuriOl Active Member

    Регистрация:
    6 май 2005
    Сообщения:
    627
    Симпатии:
    156
    Пол:
    Мужской
    Адрес:
    Луганск
    Ок! :)
    @borisuperful, спасибо тебе! Наконец-то я упорядочился с рендерами))
     
    Последнее редактирование: 16 янв 2019
  27. borisuperful

    borisuperful Well-Known Member

    Регистрация:
    31 янв 2013
    Сообщения:
    1.297
    Симпатии:
    462
    @YuriOl, хотя на самом деле можно сделать, но если ты типа будешь рендерить несколько треков, то они переместятся не один по другим, а встанут как бы кучей под последним. Точно также как duplicate tracks в Studio One работает.
    ReorderSelectedTracks работает для выделенных треков, как бы задает куче треков одно место для перемещения. И чтобы заставить его работать для каждого индивидуально, получается надо лепить код, в котором у нас будет цикл - выделить каждый трек из выделенных и переместить, что само по себе не очень быстро может быть, т.к. перемещение происходит не одновременно.
     
    Последнее редактирование: 16 янв 2019
  28. Archchie

    Archchie Well-Known Member

    Регистрация:
    24 окт 2017
    Сообщения:
    648
    Симпатии:
    365
    @borisuperful,
    PHP:

    local 
    function ArcMoveTrackUpDown(track,number);
        
    reaper.PreventUIRefresh(54684879);
        
    local sel_tracks = {};
        for 
    reaper.CountSelectedTracks(0)-1,0,-do;
            
    local Seltrack reaper.GetSelectedTrack(0,i);
            
    sel_tracks[i] = reaper.GetTrackGUID(Seltrack);
            
    reaper.SetMediaTrackInfo_Value(Seltrack,"I_SELECTED",0);
        
    end;
        
    local numb reaper.GetMediaTrackInfo_Value(track,"IP_TRACKNUMBER");
        
    reaper.SetMediaTrackInfo_Value(track,"I_SELECTED",1);
        if 
    number 0 then numb numb-1 end ;
        if 
    numb+number <= reaper.CountTracks(0)and number or
           
    numb+number >= and number 0 then
           
    reaper.ReorderSelectedTracks(numb+number,0);
        
    end;
        
    reaper.SetMediaTrackInfo_Value(track,"I_SELECTED",0);
        for 
    #sel_tracks,0,-1 do;
            
    local TrackByGUID reaper.BR_GetMediaTrackByGUID(0,sel_tracks[i]);
            if 
    TrackByGUID then;
                
    reaper.SetTrackSelected(TrackByGUID,1);
            
    end;
        
    end;
        
    reaper.PreventUIRefresh(-54684879);
    end;



    local track reaper.GetTrack0);

    --
    ArcMoveTrackUpDown(track, -1) -- в верх на один
    --ArcMoveTrackUpDown(track, -5) -- в верх на пять
    --ArcMoveTrackUpDown(track,  1) -- в низ на один
    --ArcMoveTrackUpDown(track5) -- в низ на пять

     
    borisuperful нравится это.
  29. YuriOl

    YuriOl Active Member

    Регистрация:
    6 май 2005
    Сообщения:
    627
    Симпатии:
    156
    Пол:
    Мужской
    Адрес:
    Луганск
    Да и так нормально. Меня не рендер треков именно интересовал, а рендер айтемов. Наверно очень привык к скрипту - gen_Render selected item as new take, up to last VSTi.lua :)
     
  30. borisuperful

    borisuperful Well-Known Member

    Регистрация:
    31 янв 2013
    Сообщения:
    1.297
    Симпатии:
    462
    @YuriOl, так там мой вариант есть с рендер тейком :)
    Посмотрел от Евгения, нашел отличия такие:
    1) Вроде не умеет рендерить тейки с разных треков разом
    2) Не имеет выбора моно/стерео/мутильканал
    3) Ну и не уводит инструмент в оффлайн + сам инструмент идентифицируется по названию VSTi (видать в 2016 году не было еще API). Как только ты уберешь приставку, то есть переименуешь инструмент и уберешь VSTi или AUi - все будет неправильно работать
    В моем же скрипте не будет разницы :)
     
    Последнее редактирование: 16 янв 2019
  31. YuriOl

    YuriOl Active Member

    Регистрация:
    6 май 2005
    Сообщения:
    627
    Симпатии:
    156
    Пол:
    Мужской
    Адрес:
    Луганск
    @borisuperful, да я и говорю, что твоя идея мне пришлась ко двору)) Пользуюсь твоим скриптом. Единственно хотелось бы при рендере Bounce selection.lua учитывать цвет айтема. Можно по умолчанию везде сделать как в твоём же Yanick_Render to new take?
     
    Последнее редактирование: 16 янв 2019
  32. borisuperful

    borisuperful Well-Known Member

    Регистрация:
    31 янв 2013
    Сообщения:
    1.297
    Симпатии:
    462
    @YuriOl, а в чем отличие? Копировать цвет айтема?
     
  33. YuriOl

    YuriOl Active Member

    Регистрация:
    6 май 2005
    Сообщения:
    627
    Симпатии:
    156
    Пол:
    Мужской
    Адрес:
    Луганск
    Ну да! :) Если был например зелёный, то и рендеренный такой же стал. И имя айтема как в скрипте Script: gen_Render selected item on new track, up to last VSTi.lua
     
    Последнее редактирование: 16 янв 2019
  34. Maestro Sound

    Maestro Sound Active Member

    Регистрация:
    1 ноя 2007
    Сообщения:
    577
    Симпатии:
    63
    ausbaxter_Render item columns.lua @borisuperful, Можно потихоньку и на такой концептуал переходить
     
  35. YuriOl

    YuriOl Active Member

    Регистрация:
    6 май 2005
    Сообщения:
    627
    Симпатии:
    156
    Пол:
    Мужской
    Адрес:
    Луганск
    Из скриптов borisuperful и Archchie для выбранного айтема сделал кастом с сохранением цвета и имени айтема, который рендерится.
    Спасибо вам ребята! Bounce.gif
     
  36. borisuperful

    borisuperful Well-Known Member

    Регистрация:
    31 янв 2013
    Сообщения:
    1.297
    Симпатии:
    462
    @YuriOl, ок :) Я тогда не буду это пилить - во всяком случае красить айтемы я люблю исключительно по трекам
     
    YuriOl нравится это.
  37. YuriOl

    YuriOl Active Member

    Регистрация:
    6 май 2005
    Сообщения:
    627
    Симпатии:
    156
    Пол:
    Мужской
    Адрес:
    Луганск
    @borisuperful, если будет время и желание, то допили, чтобы всё так сказать в одном флаконе было :) Если больше не надо никому, то не мучайся! :)
     
  38. borisuperful

    borisuperful Well-Known Member

    Регистрация:
    31 янв 2013
    Сообщения:
    1.297
    Симпатии:
    462
    Обновил скрипты, теперь мелодайн находится в исключении при копировании или отключении эффектов при рендере, также как инструмент
     
  39. fractala

    fractala Well-Known Member

    Регистрация:
    1 авг 2012
    Сообщения:
    1.419
    Симпатии:
    330
    Пол:
    Мужской
    @borisuperful, огромное спасибо за скрипты!!!

    подскажите а можно как то реализовать подобное? хочу повесить на тулбар кнопку, при нажатии на которую выпадает кликабельный список с вашими скриптами.
    С обычными скриптами на кнопках тулбара все просто, а тут как бы меню при нажатии на кнопку.
    Лепить кнопки под каждый рендер - нет места уже на экране) и так все в тулбарах, хочется разгрузить рабочее пространство
    Буду очень благодарен за помощь.
     
  40. vitalker

    vitalker Well-Known Member

    Регистрация:
    8 окт 2013
    Сообщения:
    3.651
    Симпатии:
    1.389
    Адрес:
    Гродно
    fractala нравится это.
  41. borisuperful

    borisuperful Well-Known Member

    Регистрация:
    31 янв 2013
    Сообщения:
    1.297
    Симпатии:
    462
    @vitalker, да, и если использовать мои скрипты с windowless, где в шапке скрипта сам задаешь параметры, можно. Если тот скрипт годен для main тулбаров, я просто еще не смотрел
     
    Последнее редактирование: 23 фев 2019
  42. YuriOl

    YuriOl Active Member

    Регистрация:
    6 май 2005
    Сообщения:
    627
    Симпатии:
    156
    Пол:
    Мужской
    Адрес:
    Луганск
    А где обновленные, в шапке? Там - Последнее редактирование: 17 янв 2019
     
  43. borisuperful

    borisuperful Well-Known Member

    Регистрация:
    31 янв 2013
    Сообщения:
    1.297
    Симпатии:
    462
    @YuriOl, там новые уже. Видимо форум бажит
     
    YuriOl нравится это.
  44. YuriOl

    YuriOl Active Member

    Регистрация:
    6 май 2005
    Сообщения:
    627
    Симпатии:
    156
    Пол:
    Мужской
    Адрес:
    Луганск
    Я себе так сделал: float doc.gif
     
    fractala нравится это.
  45. vitalker

    vitalker Well-Known Member

    Регистрация:
    8 окт 2013
    Сообщения:
    3.651
    Симпатии:
    1.389
    Адрес:
    Гродно
    @YuriOl, круто, а ведь можно ещё через контекстные менюшки :)
     
    YuriOl нравится это.
  46. borisuperful

    borisuperful Well-Known Member

    Регистрация:
    31 янв 2013
    Сообщения:
    1.297
    Симпатии:
    462
    @vitalker, проблема вообще тулбаров еще в том, что иконки не могут помещать длинные названия пунктов. Постепенно при большом кол-ве фич визуалка начнет подводить - память ограничивается, и в таком случае контекстное меню, которое можно всегда прочитать, выручает
     
  47. @Michael

    @Michael Well-Known Member

    Регистрация:
    14 дек 2010
    Сообщения:
    890
    Симпатии:
    1.342
    Пол:
    Мужской
    Адрес:
    Орёл / Москва
    С новыми API можешь чуть более грамотно сделать настройки рендера. Я добавил в свой репозиторий несколько для примеров.
     
  48. Wefilev

    Wefilev Member

    Регистрация:
    22 мар 2015
    Сообщения:
    187
    Симпатии:
    21
    Пол:
    Мужской
    Подскажите, существует ли скрипт чтоб баунсить выделение в треке точно как в Лоджике?
     
  49. borisuperful

    borisuperful Well-Known Member

    Регистрация:
    31 янв 2013
    Сообщения:
    1.297
    Симпатии:
    462
    @Wefilev, существует :) В данном топике. Посмотрите внимательно, на опцию time selection.
     

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