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

  • Автор темы Автор темы @Michael
  • Дата начала Дата начала
Не затруднит ли кого создать скрипт, который бы рандомно реверсил некоторые из выделенных (аудио) айтемов, либо тейки в них (как это в аналогичных скриптах, например, с рандомайзом плейрейта или панорамы в айтемах/тейках)?
 
@arkaine, Toggle random active takes reverse.lua

random takes reverse.gif
 
  • Like
Реакции: arkaine
@lil-burn, спасибо за очередной шедевр! Можно ссылку? На вашей странице скриптов не могу найти.
 
@Nagor, в ReaPack'е.

@lil-burn, огромное спасибо, теперь есть почти полный функционал для контролируемой рандомной генерации лупов. :)

LOOP CREATION 2.gif

Получаются интересные результаты:






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

Банально, но нет такого. А все Ваши скрипты, как правило, качественны (либо "допилены", если придётся :)), так что, смею полагать, создание Вами данного скрипта раз и навсегда закрыло бы поиск мною (и, наверное, другими пользователями) скрипта с таким функционалом.

В Реапаке есть 2 скрипта, предполагающих собой такой функционал, но: У одного не запускается GUI и вылезает оповещение об ошибке, а второй вообще никак не воздействует на айтемы.

В идеале мне нужно, чтобы скрипт рандомайзил питч в диапазоне ±7 полутонов. Но можно и несколько версий, одна на ±7 полутонов, а другая, допустим, на октаву или ещё на какой-нибудь "стандартный" интервал.


И, как написали ниже:
классный скрипт. Только почему-то после его активации перестает срабатывать Xenakios/SWS: Switch item source file to random in folder.
 

Вложения

Последнее редактирование:
  • Like
Реакции: Nagor
Toggle random active takes reverse.lua

классный скрипт. Только почему-то после его активации перестает срабатывать Xenakios/SWS: Switch item source file to random in folder.
Облом)
Дополню: иногда sws начинает срабатывать частично... допустим из 4-х тейков, 1. Но пока проследить не могу почему. Как будто игнорирует некоторые атеймы.
 
Последнее редактирование:
@arkaine, @MusPro,
перестает срабатывать Xenakios/SWS: Switch item source file to random in folder
это баг SWS.
мой скрипт делает реверс через риперовский экшен Item properties: Toggle take reverse и больше ничего.
попробуйте Toggle take reverse на любом айтеме, а затем например
Xenakios/SWS: Switch item source file to random in folder.

кстати, мой Switch item source file to random in folder.lua тоже не работает, посмотрю на днях.
какие еще SWS не работают, кроме
Xenakios/SWS: Switch item source file to random in folder
Xenakios/SWS: Switch item source file to previous in folder
Xenakios/SWS: Switch item source file to next in folder
?
 
@Aleksandr Oleynik, не не не) они такие штуки крутые начали делать, прикольных функций добавили в API
например, функции для копипаста текста в буфер обмена и из него. текст мгновенно копируется в буфер обмена, до этого питон для этих целей использовал, а сейчас это и в lua можно сделать.

Можно сейчас понаписать кучу скриптов например копировать в буфер обмена названия всех айтемов/треков/регионов, или например установить содержимое буфера как название для выделенного айтема/трека
но самая большая польза этой функции для GUI скриптов: теперь во всех местах где в GUI скриптах надо вводить текст (например поле фильтра), можно добавить вставку текста из буфера обмена, и это должно работать независимо от OS.

не хватает скрипта, который бы рандомизировал питч айтемов
Set active takes to random pitch (-7..+7).lua
Set active takes to random pitch (-12..+12).lua
если надо другой диапазон питча, просто поменяйте значения переменных min и max в начале скрипта.
 
  • Like
Реакции: arkaine
@lil-burn, я просто сразу с этим столкнулся в процессе лупа когда скрипт загрузил, поэтому и упомянул. Про остальное не скажу пока, если что, то сразу. Но.... две эти операции (случайный реверс и случайный семпл) у меня практически не пересекаются, поэтому врядли скоро)
 
(@@lil-burn, огромное спасибо, теперь есть почти полный функционал для контролируемой рандомной генерации лупов. :))
Что за скрипт? Название можно?
 
@Maestro Sound, просто расположенные на Toolbar'е подряд следующие экшны и скрипты:

1. Random Item Source -- Xenakios/SWS: Switch Item Source File to Random in Folder
2. Pan Randomize -- Nagasaki45_Randomize active takes pan in selected items
... (по совместительству рандомизирует и Volume айтемов)
3. Pitch Randomize -- me2beats_Set active takes to random pitch (-7..+7)
4. Playrate Randomize -- X-Raym_Randomize take playback rate
5. Shuffle Order of Selected Items -- Xenakios/SWS: Shuffle Order of Selected Items
6. Reverse Order of Selected Items -- Xenakios/SWS: Reverse Order of Selected Items
7. Xenakios/SWS: Randomize Item Positions
... (для особых ценителей)
8. Reset Item Properties -- экшн, состоящий из: Reset Items Volume to 0, Reset Item Length and Media Offset, Set Item Playrate Based on Item Pitch (and Reset Pitch).

Untitled.jpg
 
Прикольно Спасиб А Вот по поводу me2beats_Set active takes to random pitch (-7..+7) неплохо бы еще каждый следующий айтм питчился на пол тона выше предыдущего
 
скрипт который квантайзит начало нот(ы), чтобы хвост оставался на месте
вот такой нашел, подойдет?
PHP:
ME = reaper.MIDIEditor_GetActive()
if ME == nil then return end
take = reaper.MIDIEditor_GetTake(ME)
if take ~= nil then 
  fng_take = reaper.FNG_AllocMidiTake(take)
  count_notes = reaper.FNG_CountMidiNotes(fng_take)
  if count_notes == nil then return end
  for i = 1, count_notes do
    note = reaper.FNG_GetMidiNote(fng_take, i-1)
    sel = reaper.FNG_GetMidiNoteIntProperty(note, "SELECTED")
    len = reaper.FNG_GetMidiNoteIntProperty(note, "LENGTH")
    pos = reaper.MIDI_GetProjTimeFromPPQPos(take, reaper.FNG_GetMidiNoteIntProperty(note, "POSITION"))
    ppq1 = reaper.MIDI_GetPPQPosFromProjTime(take, pos)
    if sel == 1 then
      snap = reaper.BR_GetClosestGridDivision(pos)
      ppq2 = reaper.MIDI_GetPPQPosFromProjTime(take, snap)
      reaper.FNG_SetMidiNoteIntProperty(note, "POSITION",ppq2) 
      reaper.FNG_SetMidiNoteIntProperty(note, "LENGTH", len + (ppq1-ppq2))   
    end
  end
  reaper.FNG_FreeMidiTake(fng_take)
end
насколько понял, делает квантайз нот по сетке аранжа (не по сетке миди редактора)
 
@lil-burn, нужно чтобы к первому гриду квантайзилось, а этот скрипт делает в самое начало партии.
 

Вложения

  • Скрин.JPG
    Скрин.JPG
    3,1 KB · Просмотры: 86
Наверное так:
- сохранить текущее положение выделения трека
- дублировать трек
- возвратить сохраненное выделение трека
- выставить фейдер в ноль
- собственно рендер
 
Выделенный трек поставить последним по счету???? Вниз треков и последним в микшере????
 
Последнее редактирование:
кто нибудь может написать скрипт для реампинга? как мне, абсолютно несведущему в плане скрипотписания, это видится:
1. я режу диай айтемы от пустоты, выделаю полученые айтемы с только нужным мне полезным сигналом и каналы на которых они располагаются
2. запускаю скрипт. открывается окошко, в котором я выбираю созданный мною заранее темплейт с определенной конфигурацией входов (например 1 канал Gtr Amp 1: input 1 или комбинации из двух и более каналов)
3. этот темплейт добавляется под каждый канал где есть айтемы
4. от первого выделенного канала до последнеего прогоняет запись (реампинг) только в тех моментах где есть айтемы. вероятно при помощи маркеров это можно сделать.
 
@Aleksandr Oleynik, что именно не понятно?
Я же написал - ни чего.
В первую очередь про каналы - какой может быть input у items? У него только output есть.
И что за темплейт?
Вы бы человеческим языком описали что вам нужно делать.
 
Я же написал - ни чего.
В первую очередь про каналы - какой может быть input у items? У него только output есть.
И что за темплейт?
Вы бы человеческим языком описали что вам нужно делать.
у item и не должно быть никакого инпута, вы все напутали. еще раз
я выделяю нужные мне айтемы и дорожи, скрипт должен под каждой из выделенных дорожек создать канал(-ы) определенной конфигурации входа и начать процесс реампинга по порядку айтемов, запуская запись только там где есть айтемы и без моего участия перескакивая все места где нет айтемов. в картинках по порядку
1. я нарезал айтемы от пустоты, выделил дорожки и айтемы
2. запустил скрипт, он добавил нужные дорожки в проект и погнал запись
3. финальный результат.
там еще мелочи вроде солирования, рекорд арм и тд, ту суть должна быть ясна.
 

Вложения

  • 2017-10-07_18-54-37.png
    2017-10-07_18-54-37.png
    64,5 KB · Просмотры: 235
  • 2017-10-07_18-56-24.png
    2017-10-07_18-56-24.png
    101,6 KB · Просмотры: 293
  • 2017-10-07_18-59-07.png
    2017-10-07_18-59-07.png
    128,2 KB · Просмотры: 82
Очень интересует следующий вопрос.
Буду рад и благодарен, если отзовётся кто-нибудь из опытных скриптописцев.

Сделал такой экшн.
Paste at Mouse Cursor.gif
Он вставляет (Paste) ноты туда, где располагается курсор мышки.

Сам макро-экшн состоит из элементарных экшнов:
Save Edit Cursor Position
Move Edit Cursor to Mouse Cursor
Paste
Restore Edit Cursor Position

Как бы сделать привязку вставления (Paste) нот к вертикали?

Меня интересует возможность вставлять ноты туда, где располагается курсор мышки (в т.ч. вертикально). Например так, чтобы скопированное/вырезанное До мажорное трезвучие становилось Соль мажорным (вставлялось на высоте Соль), если курсор мышки будет напротив ноты Соль.

На всякий про всякий случай, как мне кажется, информация, могущая быть полезной человеку, взявшемуся за этот скрипт (хотя скорее всего он и сам досконально знает функционал Рипера):

В MIDI Editor'е есть такое понятие как Selected Pitch -- это когда в MIDI Editor'е выделяется высота, по которой был совершён клик мышью. Возможно, можно как-нибудь привязать вставляемые MIDI-ноты к актуальному Selected Pitch'у.

Ну, либо был бы рад целому скрипту.
 
Последнее редактирование:
Возможно скопировать выделенный кусок с Media Explorer на окно аранжировки, драгн-дропом или ctrl+лкм(перетаскивание) не делается. Может скриптом возможно как то это реализовать ? (например, выделил кусок, нажал на скрипт, и в окне аранжировки создаётся трек с этим аудио, под эдит курсором).
 

Вложения

  • Media Explorer.png
    Media Explorer.png
    15,1 KB · Просмотры: 235
Возможно скопировать выделенный кусок с Media Explorer на окно аранжировки, драгн-дропом или ctrl+лкм(перетаскивание) не делается.
У меня всё делается, причём простым драг-н-дропом лкм, без всяких Ctrl/Alt/Shift.
Win 10, Reaper портабельный, запущен не от админа.
 
  • Like
Реакции: Martin111
помогите плиз со скриптом.
Необходимо запомнить и потом вернуть состояние громкости и панорамы выделенного трека.
Типа
Save volume and pan for selected track, slot 1
Restore volume and pan on selected track
 

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