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

  • Автор темы Автор темы @Michael
  • Дата начала Дата начала
А чем это от Insert New MIDI Item отличается
[DOUBLEPOST=1450388086,1450387998][/DOUBLEPOST]
Стало свободное время уходить не на музыку,а на скрипты.
Я поэтому не хочу в скриптописание залазить.
Парни, у меня пока с музыкой пауза - по этому ---- валите всё на меня, но ПОМОГАЙТЕ, а то башка лопнет.
 
Последнее редактирование:
  • Like
Реакции: diggidon
Я поэтому не хочу в скриптописание залазить
Парни, у меня пока с музыкой пауза
Да,затягивает,хочется все сделать лучше,удобнее.Потом смотришь-а ты уже в ловушке.
Есть задача-нужно решить,и пока не решишь-покоя не дает.Потом понятно становится,что оно вообще раз в сто лет используется.Это и есть спортивный интерес.
Я использую на постоянной основе штук 10 скриптов и штук 40 кастомов,причем все самое простейшее,остальное валяется просто,и постепенно,блин, удаляется.
По сути,если,рассматривать глобально,какая разница,чем заниматься.Главное,чтобы было интересно.
А чем это от Insert New MIDI Item отличается
неопределенностью:)
 
По сути,если,рассматривать глобально,какая разница,чем заниматься.Главное,чтобы было интересно.
+1000000
[DOUBLEPOST=1450389609,1450389266][/DOUBLEPOST]
Да,затягивает,хочется все сделать лучше,удобнее.Потом смотришь-а ты уже в ловушке.
Есть задача-нужно решить,и пока не решишь-покоя не дает.Потом понятно становится,что оно вообще раз в сто лет используется.
Это де Мотивирует - это правда! Но Женя, поверь, на тебя и на Михаила многие смотрят как на волшебника и просто боятся что-то спросить или вставить свои пять копеек...
Что касается использования той или иной фичи - это зависит от многих факторов, в том числе от УДОБСТВА использования - если это одна кнопка в интерфейсе - будут использовать активно, если две - уже 50%, ну т.д.
Это и есть спортивный интерес.
Это есть самоутверждение! И это ОЧЕНЬ Достойное качество!
Я использую на постоянной основе штук 10 скриптов и штук 40 кастомов,причем все самое простейшее,остальное валяется просто,и постепенно,блин, удаляется.
Оно то удаляется, но ОПЫТ, Развитое Мышление, да и Уважение окружающих - остаются...
Я вот сегодня с Женей (digidon) разговаривал - он вас с Михаилом иначе как волшебниками и не называет!
 
поверь, на тебя и на Михаила многие смотрят как на волшебника
Про Михаила соглашусь,про себя-нет.
Мой первый вопрос про скрипты был -"чувствую себя полным дебилом,как это работает?"-и не так давно это было.
Просто я в программировании нулевый.
Мне это интересно и каждый момент стараюсь изучить.Но с графикой вообще ноль пока.
Что-то сложное не получится сделать,стараюсь упростить,чтобы не лезть в графику.
Думаю,потом и с графикой решится,не дебил же я все-таки,хотя...:rolleyes:
Это есть самоутверждение!
Больше самореализация.Когда интересуют сами задачи.
От момента,когда понятно,что задачу можно решить,до момента решения.За логически нерешаемое браться бесполезно
Кстати,еще момент-главное-постановка задачи и отсюда логически ищем простейшее решение,и у Вас в этом логика мне близкая.
 
Последнее редактирование:
@EUGEN27771,
Так Самоутверждение и идёт через самореализацию!
Думаешь я ложусь спать, если вижу что могу вот сейчас ещё чуть чуть и - готово.... :)
[DOUBLEPOST=1450392650,1450392568][/DOUBLEPOST]
Думаю,потом и с графикой решится
А разве может быть иначе? Ктож этому может помешать? ну разве что временно необходимость что-то заработать на жизнь :(
 
Думаешь я ложусь спать, если вижу что могу вот сейчас ещё чуть чуть и - готово....
необходимость что-то заработать на жизнь
Значит,я не один такой.На жизнь все-равно не музыкой зарабатываю,это только увлечение.Мне,в общем-то все-равно,чем заниматься.Музыка,скрипты и т.п.
 
Значит,я не один такой.На жизнь все-равно не музыкой зарабатываю,это только увлечение.Мне,в общем-то все-равно,чем заниматься.Музыка,скрипты и т.п.
Безусловно не один! И это очень круто!
 
  • Like
Реакции: EUGEN27771
Вот вопрос-комменты в кодах кто-то читает?
Читаю очень часто. На русском, так это в двойне приятно :). Комменты очень нужная вещь для начинающих и не только.


Извините если не во время, но не могли бы уважаемые уделить внимание к Delete Overlaps (poly)?
Может быть,через пару дней сделаю.Кстати,что значит Overlaps poly?Убрать полифониию вообще или что-то другое?

Вот описание из мануала Nuendo;
Delete Overlaps (poly)
This function shortens notes when required, so that no
note begins before another ends. This happens regardless of which pitch the notes have
 
Последнее редактирование:
  • Like
Реакции: Aleksandr Oleynik
Вот вопрос-комменты в кодах кто-то читает?
Не могу написать на английском толково.Писать что-то трудно-понимаемое на русском?
Я пишу обязательно, на русском, часто для себя самого, чтоб через неделю вообще вспомнить что я такое там натворил.... Ну и тем, кто пытается чему-то научиться по чужим работам - это не оценимая помощь.....
[DOUBLEPOST=1450399905,1450399834][/DOUBLEPOST]@Beckoff, посмотрим.....
 
  • Like
Реакции: Beckoff и diggidon
Я вот пока замутил аудио-буфер с циклической перезаписью.
Пишет последние 6.5 или 13 мин (стерео или моно) независимо от проигрывания.Чего-то уже сам не пойму зачем,как-то по инерции.
А это потому что цели нет. Вернее цель стоит написать скрипт ради написания скрипта - хобби так сказать, а что там получится в принципе не важно, главное процесс.
Женя, я же предлагал, давай сформулируем задачу, определимся с алгоритмом, опросим людей, но всё кануло в лету. В итоге имеем два варианта ПреРекордАудио от тебя и полу рабочий от меня.

На самом деле алгоритм должен быть строго определён, что бы в процессе эксплуатации не возникло недопонимания. А то вон я написал экшн для ифрита Соурс/Дестинэйшн, сегодня самому понадобилось, а вспомнить не могу как оно работает. Пока разбирался, проскользнула мысля что вникание уже занимает больше времени чем если бы я это сделал стандартными средствами. По старинке через копи паст порешал. Кстати смарт копи очумелая вещица я вам скажу.
[DOUBLEPOST=1450424772,1450424682][/DOUBLEPOST]Вобщем, ребята, посыл мой таков - нужна стандартизация. А то сами запутаемся.
[DOUBLEPOST=1450425808][/DOUBLEPOST]@Aleksandr Oleynik, Я тут немного поправил твой экшн по созданию гроуп айтема. Надеюсь получилось как надо.
Creat folder item.gif

__________________
[DOUBLEPOST=1450426221][/DOUBLEPOST]
Про двигание одного трека в папке - там с какой-то доп клавишей двигается
@SKlogic, Без всяких клавиш двигается, только сначала надо кликнуть по айтему, а потом двигать. (кликалку надо переделать как на картинке предложил Саша Олейник) Сразу двигать не получится.
Create%20folder%20items2.png
_________________________
[DOUBLEPOST=1450426545][/DOUBLEPOST]Учите матчасть ребята!!!!

В рипере есть очень интересная галочка, после которой не нужно заморачиваться с изменением мауз модифаерса.
Group Item.gif

Правой клавишей по значку группы и выбираете нижний пункт Selecting one item select group. Что в переводе означает Выбор одного айтема выбирает все айтемы в группе.
 

Вложения

короче- если копировать фолдер айтем-то ничего не копируется кроме него самого.. переносится нормально.. если фнурти фолдера выделить один айтем и скопировать-да он копируется один. если переместить-перемещается все айтемы в группе

PS: поправочка-ничего не копируется если этот айтем был выделен перед копированием
 
короче- если копировать фолдер айтем-то ничего не копируется кроме него самого.. переносится нормально.. если фнурти фолдера выделить один айтем и скопировать-да он копируется один. если переместить-перемещается все айтемы в группе
Специально для слепцов ещё раз

Правой клавишей по значку группы и выбираете нижний пункт Selecting one item select group. Что в переводе означает Выбор одного айтема выбирает все айтемы в группе.
Картинку с кнопкой группы репостить не буду и так видно.
 
смотри поправку и сам попробуй
PS: поправочка-ничего не копируется если этот айтем был выделен перед копированием
 
А это потому что цели нет. Вернее цель стоит написать скрипт ради написания скрипта - хобби так сказать, а что там получится в принципе не важно, главное процесс.Женя, я же предлагал, давай сформулируем задачу, определимся с алгоритмом, опросим людей, но всё кануло в лету. В итоге имеем два варианта ПреРекордАудио от тебя и полу рабочий от меня.
Да,это правильно.Надо один универсальный вариант.Могу выложить JS и скрипт,чтобы допилить совместно.Тем более,я скрипт начал для эксперимента на Луа писать,там пока не совсем правильно
 
JS записывает в буфер все входящее аудио(для теста-только моно) независимо от проигрывания,для тестов буфер специально! ограничен,вообще он может быть 256m.Это около 13 мин моно или 6.5 стерео в 44100.
===
Принцип работы вкратце,если надо,опишу подробно,потому что там куча мелких,но очень важных нюансов!
У нас есть буфер на 256m.В буфер записывается информация о входном сигнале.
Если буфер исчерпан,он перезаписывается.
По итогу,буфер всегда состоит из двух частей.От нуля до текущей позиции и от текущей позиции до max.
Чтобы получить последние данные,нужно выложить на трек оба куска в правильные позиции и в правильной последовательности,тут и есть куча нюансов.
===
Скрипт и выкладывает буфер(оба куска в правильные позиции и в правильной последовательности), на выделенный трек.
 
Последнее редактирование:
Мой первый вопрос про скрипты был -"чувствую себя полным дебилом,как это работает?"-и не так давно это было.
Так и я начал изучать в феврале -марте. И сам ноль в программировании. Что-то конечно знаю по Lua, но это несерьёзно всё. Тру - это С и сопутствующее.
 
  • Like
Реакции: Beckoff и EUGEN27771
@Beckoff, да,я помню,конечно,чуть позже сделаю обязательно
[DOUBLEPOST=1450545801,1450442835][/DOUBLEPOST]
Спойлер: Delete Overlaps (poly) гифка
Посмотреть вложение 108272
Вот описание из мануала Nuendo;
Delete Overlaps (poly)
This function shortens notes when required, so that no
note begins before another ends. This happens regardless of which pitch the notes have
Как поступать в таком случае?
(как оно работает в Nuendo я проверить не могу)
1.PNG
Так?
v1.gif
Или так?
v2.gif
 
Последнее редактирование:
  • Like
Реакции: Aliko, nounaim и Beckoff
В Nuendo работает как в третьей гифке, но то что вы сделали (2 ая гифка), это ещё круче как по мне! Получается два в одном - Delete Overlaps Mono/Poly !!!
@EUGEN27771, СПАСИБО ВАМ ОГРОМНОЕ!!!
 
Последнее редактирование:
  • Like
Реакции: Aliko
@@Michael, @EUGEN27771,
пытаюсь осваивать логику LUA, помогайте...
По скрипту ниже сразу несколько вопросов -
PHP:
preset_tracks = {}
control_tracks = {}
counttrack = reaper.CountTracks(0)
if counttrack  ~= nil then
  for i=1, counttrack do
    tr = reaper.GetTrack(0,i-1)
    if tr ~= nil then
      _, tr_name = reaper.GetSetMediaTrackInfo_String(tr, 'P_NAME', '', false)
      if tr_name:match("%u%u%u%d%d_P1") then table.insert(preset_tracks, i) end
      -- if tr_name:match("%u%u%u%d%d_P2") then table.insert(preset_tracks, i) end
      if tr_name:match("%u%u%u%d%d_Control") then table.insert(control_tracks, i) end
    end
  end
end

reaper.ShowConsoleMsg(table.concat(preset_tracks, '\n'))
reaper.ShowConsoleMsg("\n\n")
reaper.ShowConsoleMsg(table.concat(control_tracks, '\n'))
reaper.ShowConsoleMsg("\n\n")

if preset_tracks ~= nil then
  for n = 1, #preset_tracks do
    tr = reaper.GetTrack(0, preset_tracks[n]-1)
    if tr ~= nil then
      vol = reaper.GetMediaTrackInfo_Value(tr, 'D_VOL')
      reaper.SetMediaTrackInfo_Value(tr, "D_VOL", vol*0.3)
    end
  end
end

if control_tracks ~= nil then
  for n = 1, #control_tracks do
    tr = reaper.GetTrack(0, control_tracks[n]-1)
    if tr ~= nil then
      vol = reaper.GetMediaTrackInfo_Value(tr, 'D_VOL')
      reaper.SetMediaTrackInfo_Value(tr, "D_VOL", vol/0.3)
    end
  end
end

1. Как сделать так, чтобы патерн - "%u%u%u%d%d_P1" не принимал в конце имени после P1 ни чего?
Сейчас принимает и P10 и P11.
2. Как сделать так, чтоб в таблицу записи ложились не в порядке прохождения по номерам треков, а в соответствии с такой схемой - в начале легли все, что заканчиваются на P1, потом на P2, ну и так до P11.
3. Я тут обошёлся без reaper.BR_GetMediaTrackByGUID - просто пишу в таблицу не имена треков, а соответствующие им номера треков и потом прямо к ним и обращаюсь.
Нет ли тут какой-то скрытой проблемы на дальнейшее развитие скрипта?

Ну и вообще - может есть какие-то замечания, буду благодарен - ох....., что-то тяжко мне LUA пока даётся. Это вот плод проб и ошибок в течении дня :(
 
как перевести
Код:
GetResourcePath(#retval);
sprintf(#fullpath, "%s\\Scripts\\!_Shotcut_key-1_test.eel", #retval);
f = fopen(#fullpath, "w");
fwrite(f, "Main_OnCommand(40939, 0);", 0);
fclose(f);
в lua,

либо
Код:
function action(id) reaper.Main_OnCommand(id, 0) end
_,_,_,_,_,_,val = reaper.get_action_context()
if val > 0 then action(1007) else action(1016) end
в eel?
=========
И, кстати, мы умеем запускать скрипты секции Main из других секций, а наоборот - пока не умеем?
(перебирал достаточно большую папку с семплами, появилась идея назначить Next/Previous file на колесо мыши)
 
Последнее редактирование:
Вот думаю почему производитель сам не "допиливает " такие вещи ................
rec 4.gif

Я понимаю что скрипт @diggidon, (Hide/Show Tracks in Folder v2.) работает как кастом экшн , но от этого же не легче....
Был вопрос о кастомизации единой , мое мнение что именно производитель первоначально должен кастомизировать свое творение , с условием что юзер может это изменить ......

Но а по теме , возможно как допилить этот кастом ? для того что бы положения папок сохранялось ?
 

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