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

  • Автор темы Автор темы @Michael
  • Дата начала Дата начала
@Aleksandr Oleynik, а можно Вас попросить, если не сложно, доделать два экшна выше (! Pan Group & revers & Vol Mute Solo Group" и ! Pan Group & revers), чтобы при каждой следующей группировке использовалась первая свободная группа (как аналогичный стандартный экшн SWS/S&M: Set selected tracks to first unused group (default flags), только чтобы флаги были не по-умолчанию, а согласно Ваших скриптов: в первом - реверс панорамы, а во втором - плюс громкость, соло и мьют. Спасибо.
 
@Supa75, эти мои скрипты очень сырые в принципе, в них не учтены ни какие исключения......
Что скрипту делать, когда все группы заняты?
Что ему делать, если вы выделили 1 или более 2-х треков?
Что ему делать если вы выделили один из треков, который уже состоит в какой-то группе?

Это я только лежащие на поверхности проблемы описал, которые за вас должен решать скрипт.

Если у вас есть о веты на все эти вопросы - опишите подробно, и я сделаю толковый скрипт, а так - это просто игрушка.
 
@Aleksandr Oleynik, Если можно переделайте скрипт ! Pan Group & revers & Vol Mute Solo Group
так же для двух выделенных треков но,чтоб для следующих двух треков выбирало бы
следующую свободную группу.
 
Ну, например мне было бы достаточно, если бы оно работало "как в Кубе" линковвание (пришлось даже вспоминать).

Что скрипту делать, когда все группы заняты?
ничего. писать Error. No unused group
Что ему делать, если вы выделили 1 или более 2-х треков?
- если выделен один трек - не исполнять скрипт. Куб например в этом случае так и делает, т.е. ничего не происходит.
- выделены 2 и более треков - группировать их все
Что ему делать если вы выделили один из треков, который уже состоит в какой-то группе?
в Кубе в этом случае работает принцип:
- если выделенный трек уже в группе из двух треков, то предыдущая группа распадается и создается новая на основании выделенных треков
- если выделенный трек уже в группе из более двух треков, то он залинкует выделенный трек в новую группу, а из старой его исключит.
 
- выделены 2 и более треков - группировать их все
По какому принципу линковать третий к первым двум? А четвёртый, пятый? Там числа сочетаний может быть куча.

в Кубе в этом случае работает принцип:
В Кубе кто-то головастый сидел и все эти условия ПРОДУМЫВАЛ.
Вы представить себе не можете, сколько условия я ещё не перечислил, которые будут влиять на эту функциюб и скрипту нужно принимать решение.
Я не хочу заниматься дурной работой, а если прописать ВСЕ в данном случаи возможные ситуации, то я просто на неделю утону в логике.... САМОЙ трудоёмкой частью любого скрипта является написание всех условий - "а что делать, если" и этих если может быть тысячи.
 
Согласен. Если всё предусмотреть, то работы на неделю. Можно заточить скрипт исключительно под два трека, т.е. не группировать или группировать первые два, если выделено более? Главное, чтобы каждая следующая группировка была в неиспользованную (новую группу). Не знаю, как для заказчика, а для меня теряется весь смысл от скриптов выше, если все будет работать в рамках только одной группы.
 
теряется весь смысл от скриптов выше, если все будет работать в рамках только одной группы.
Да! Игрушка, я так и написал.
ОК, я посмотрю что можно сделать. Я пока немогу разобраться как считывать принадлежность к конкретной группе.
 
Быстренько наваял кастом экшн на эту тему
group lr.jpg
перед этим нужно конечно же корректно настроить дефалт-режим в окне выбора параметров группировки - выделить что нужно и нажать на Save default flags.
group.jpg

Но вот беда. Ловлю конкретный глюк. Панорама не группируется в режиме реверса (даже без кастома, стандартным методом). Что я не так делаю? ниже мультик.
Pan.gif
 
@Supa75, выделили оба трека, когда включили галочку на пан реверсе, а нужно было только на одном из двух треков
 
  • Like
Реакции: Supa75
выделили оба трека, когда включили галочку на пан реверсе, а нужно было только на одном из двух треков
Спасибо. Мда, мой кастом развалился :)))) нет экшена "reverse pan into group for selected track"
Вообще конечно странно. Почему бы не сделать это в одном окне при группировке? сейчас чтобы реверснуть панораму, мне нужно кучу телодвижений сделать:
- выделить оба трека
- вызвать окно настройки параметров
- выбрать необходимые чек-боксы
- закрыть окно
- выделить один из треков группы
- вызвать окно настройки параметров
- проставить чек-бокс реверса панорамы для трека
- закрыть окно
ужас...... :)))))
 
может кто-то данный экшн сделать скриптом ?
 

Вложения

  • RPR1.jpg
    RPR1.jpg
    7,6 KB · Просмотры: 80
удобно зумировать проект по границам, а зачем скрипт просто если экшном в рипере то он движется плавно как анимация а не за раз. как-то так)
 
помогите со скриптом плиз. "Показать все активные энвелопы для выделенного тейка" по аналогии с Show All Active Envelope for Selected track.
На картинке ниже сама кнопка есть, но экшн для неё не нашел
Envelope.jpg
 
@Supa75, может это? Envelope: Toggle show all active envelopes for all tracks это для всех треков
Envelope: Toggle show all active envelopes for tracks это для выделенных
 
@Supa75, в субдорожках под треком есть выпадающее меню ,там выбрать: move to media lane и огибающая
перейдёт на трек.
 
@Supa75, в субдорожках под треком есть выпадающее меню ,там выбрать: move to media lane и огибающая
перейдёт на трек.
спасибо, я знаю как это сделать без скрипта...путем манипуляций мыши и вызова окон :) и даже знаю как сделать кастом, чтобы показать все энвелопы на тейке, но нужно показать именно активные, чтобы повесить это на хоткей
 
Последнее редактирование:
Ловите, проверяйте.
Я пока скрипту не дал возможность принимать самостоятельно решение что делать если выделенный трек (треки) уже находятся в какой-то группе - он просто говорит об этом пользователю и пользователь сам должен это решить.
Появится продуманное ТЗ на всякого рода условия и решение - пишите, возможно смогу внести.
 

Вложения

  • Like
Реакции: Supa75
Я могу рассказать как добовлять, исключать что угодно из настроек группы в моём скрипте - будете делать это сами.
Но нужно поставить Notepad +, так как в обычных текст редакторах скрипты писать нельзя
 
Я чуть поменял структуру скрипта, чтоб было проще править (в атаче)

Вам нужно добавлять (удалять) строки вот в эту часть скрипта -

PHP:
function SetTrackGroupMembership (track, stm_n)
  reaper.GetSetTrackGroupMembership(track, "PAN_MASTER", stm_n, stm_n )
  reaper.GetSetTrackGroupMembership(track, "PAN_SLAVE", stm_n, stm_n )
  reaper.GetSetTrackGroupMembership(track, "VOLUME_MASTER", stm_n, stm_n )
  reaper.GetSetTrackGroupMembership(track, "VOLUME_SLAVE", stm_n, stm_n )
  reaper.GetSetTrackGroupMembership(track, "MUTE_MASTER", stm_n, stm_n )
  reaper.GetSetTrackGroupMembership(track, "MUTE_SLAVE", stm_n, stm_n )
  reaper.GetSetTrackGroupMembership(track, "SOLO_MASTER", stm_n, stm_n )
  reaper.GetSetTrackGroupMembership(track, "SOLO_SLAVE", stm_n, stm_n )
end

В общем-то из текста понятно какая строка за что отвечает.

Вот перечень имён групп (тоже из имени ясно что это, думаю) -

PHP:
VOLUME_MASTER
VOLUME_SLAVE
VOLUME_VCA_MASTER
VOLUME_VCA_SLAVE
PAN_MASTER
PAN_SLAVE
WIDTH_MASTER
WIDTH_SLAVE
MUTE_MASTER
MUTE_SLAVE
SOLO_MASTER
SOLO_SLAVE
RECARM_MASTER
RECARM_SLAVE
POLARITY_MASTER
POLARITY_SLAVE
AUTOMODE_MASTER
AUTOMODE_SLAVE
VOLUME_REVERSE
PAN_REVERSE
WIDTH_REVERSE
NO_MASTER_WHEN_SLAVE
VOLUME_VCA_SLAVE_ISPREFX

По этому, если в линковку нужно добавить ещё Recarm, то эта часть кода изменится вот на такую -

PHP:
function SetTrackGroupMembership (track, stm_n)
  reaper.GetSetTrackGroupMembership(track, "PAN_MASTER", stm_n, stm_n )
  reaper.GetSetTrackGroupMembership(track, "PAN_SLAVE", stm_n, stm_n )
  reaper.GetSetTrackGroupMembership(track, "VOLUME_MASTER", stm_n, stm_n )
  reaper.GetSetTrackGroupMembership(track, "VOLUME_SLAVE", stm_n, stm_n )
  reaper.GetSetTrackGroupMembership(track, "MUTE_MASTER", stm_n, stm_n )
  reaper.GetSetTrackGroupMembership(track, "MUTE_SLAVE", stm_n, stm_n )
  reaper.GetSetTrackGroupMembership(track, "SOLO_MASTER", stm_n, stm_n )
  reaper.GetSetTrackGroupMembership(track, "SOLO_SLAVE", stm_n, stm_n )
  reaper.GetSetTrackGroupMembership(track, "RECARM_MASTER", stm_n, stm_n )
  reaper.GetSetTrackGroupMembership(track, "RECARM_SLAVE", stm_n, stm_n )
end

Попробуйте!
 

Вложения

Последнее редактирование:
  • Like
Реакции: Supa75

Сейчас просматривают