Простой сэмплер c "Velocity" и "Random"

  • Автор темы Автор темы wacker
  • Дата начала Дата начала

wacker

Active Member
17 Апр 2008
328
63
28
Berlin
www.magdalena-recordz.de
Объясню поточнее. Ищу VST сэмплер, в который смогу загрузить свои сэмплы рабочего/бочки/томов. При этом он должен уметь на одну ноту грузить много сэмплов для распределения по velocity и ещё и уметь на одну и туже velocity грузить несколько сэмплов для "рандомного" проигрывания.

Короче получается что-то типа Драмагога, но как сэмплер с МИДИ на входе, а не триггер (да, я знаю, ДГ тоже умеет получать МИДИ по входу, но там вообще непонятно, какое значение velocity на слои получается. Предназначено то распределение по слоям для аудиосигнала на входе, уровень входа такой-то - слой такой то, итд).

Говорят, Батарейка 3 может. Но какие ещё есть альтернативы? Кто пользует свои собственные сэмплы для подклада, предварительно "подготовив" Миди-дорожку (не напрямую через триггер)?

Ещё нашёл "Poise", но не знаю, как у него с обоими критериями в связке...

Groove Agent One кубовский, я так понял, не умеет рандом.

Прошерстил Гуглю и отсеил почти всё, кроме "Shortcircuit", но непонятно, может ли он то, что мне надо или нет в полной мере.

Вобщем делитесь мыслями
Спасибо заранее
 
Можно использовать rgc audio SFZ, а под него делать простенький .sfz файлик, который редактируется в текстовом редакторе, типа такого:

в примере два слоя велосити 0-64 и 65-127 и в каждом слое два рандомных сэмпла.

//layer 1
<group>
lorand=0 hirand=0.50
lovel=0
hivel=64
<region> sample=sample1.wav loopmode=one_shot
pitch_keycenter=60
lokey=60 hikey=60

lorand=0 hirand=0.50
lovel=65
hivel=127
<region> sample=sample2.wav loopmode=one_shot
pitch_keycenter=60
lokey=60 hikey=60

//layer 2
<group>
lorand=0.50 hirand=1
lovel=0
hivel=64
<region> sample=sample1a.wav loopmode=one_shot
pitch_keycenter=60
lokey=60 hikey=60

lorand=0.50 hirand=1
lovel=65
hivel=127
<region> sample=sample2a.wav loopmode=one_shot
pitch_keycenter=60
lokey=60 hikey=60

Проще всего один раз сделать шаблон на нужное количество слоёв и рандомных сэмлов в каждом слое и потом подставлять только названия файлов.
 
  • Like
Реакции: wacker
Можно использовать rgc audio SFZ, а под него делать простенький .sfz файлик, который редактируется в текстовом редакторе, типа такого:

в примере два слоя велосити 0-64 и 65-127 и в каждом слое два рандомных сэмпла.

//layer 1
<group>
lorand=0 hirand=0.50
lovel=0
hivel=64
<region> sample=sample1.wav loopmode=one_shot
pitch_keycenter=60
lokey=60 hikey=60

lorand=0 hirand=0.50
lovel=65
hivel=127
<region> sample=sample2.wav loopmode=one_shot
pitch_keycenter=60
lokey=60 hikey=60

//layer 2
<group>
lorand=0.50 hirand=1
lovel=0
hivel=64
<region> sample=sample1a.wav loopmode=one_shot
pitch_keycenter=60
lokey=60 hikey=60

lorand=0.50 hirand=1
lovel=65
hivel=127
<region> sample=sample2a.wav loopmode=one_shot
pitch_keycenter=60
lokey=60 hikey=60

Проще всего один раз сделать шаблон на нужное количество слоёв и рандомных сэмлов в каждом слое и потом подставлять только названия файлов.

Во, спасибо.

Только вот вопросиков парочку:

вавки в вашем примере должны лежать рядом с сфц-файлом? А через папку он понимает (т.е. к примеру сэмплы/снаре1.вав)?

лоранд/хайранд - это я так понимаю "случайное число" от 0 до 1? То есть если рандомов 4, то каждому по 25% (0.25). Но в Вашем примере если выпадет ровно 0.5, то ведь съиграют ОБА сэмпла. Не должно ли лоранд сл. слоя быть 0.51?

А если накладывать слои друг на друга (к примеру рум и ОХ отделить от топ и боттом), надо поставить одинаковые лоранд/хайранд? А громкость в таком случае между ними никак нельзя выставить (в интерфейсе или параметрами - неважно)?
 
wacker, боюсь что найти бесплатный простостой сэмплер который поддерживают рандомизацию сэмплов, да при этом ещё и синхронизирует выбор рандомных сэмплов в двух копиях плагина ( в одном румы в другом оверхэды например) -это будет большая удача.

но это конечно не повод прекратить поиски, просто задача не совсем тривиальная.
 
вавки в вашем примере должны лежать рядом с сфц-файлом? А через папку он понимает (т.е. к примеру сэмплы/снаре1.вав)?

лоранд/хайранд - это я так понимаю "случайное число" от 0 до 1? То есть если рандомов 4, то каждому по 25% (0.25). Но в Вашем примере если выпадет ровно 0.5, то ведь съиграют ОБА сэмпла. Не должно ли лоранд сл. слоя быть 0.51?

А если накладывать слои друг на друга (к примеру рум и ОХ отделить от топ и боттом), надо поставить одинаковые лоранд/хайранд? А громкость в таком случае между ними никак нельзя выставить (в интерфейсе или параметрами - неважно)?

в моём примере должны лежать рядом с файлами, папку можно задать следующим образом: sample=папка\sample.wav либо с вложениями sample=папка\папка1\sample.wav

лоранд/хайранд - всё правильно

по идее можно параметрами СС

во вложении базовые примеры с возможностями sfz

и вот ещё: http://www.cakewalk.com/devXchange/article.aspx?aid=108
 

Вложения

  • Like
Реакции: Nikolas Quemtri и wacker
wacker, боюсь что найти бесплатный простостой сэмплер который поддерживают рандомизацию сэмплов, да при этом ещё и синхронизирует выбор рандомных сэмплов в двух копиях плагина ( в одном румы в другом оверхэды например) -это будет большая удача.

но это конечно не повод прекратить поиски, просто задача не совсем тривиальная.

Cергей, здравствуйте

Да вот пока получается, что трщ. a-up попал в точку. То есть программить прийдётся конечно в эдиторе, но это не проблема. И в этом ргц как раз таки "случайное число" не совсем случайное :music:. То есть если директы и их румы будут иметь одно и то же число рандома, то и играть они будут вместе. Парами, тка скть :).

Я хочу позже купить слэйта. Но пока денег нема. Да и не решился пока, толи драмсы взять, а толи триггер (но склоняюсь всё таки к триггеру). Подождём 4.0.
 
wacker, что, даже синхронизируется случайный выбор сэмплов в двух независимых инстанциях плагина?
Спрашиваю потому, что это само собой не получится, это программист должен позаботиться. И если это так, то честь им и хвала! Без иронии!
А делать банк в текстовом редакторе кстати чаще удобнее чем в навороченном графическом, без шуток.
 
в SFZ есть seq_position параметр, аналог round-robin
<group>
seq_length=3
<region> sample=kick3.wav seq_position=3
<region> sample=kick1.wav seq_position=2
<region> sample=kick2.wav seq_position=1

в sfzed темплэйты есть
а в рипере можно визуально http://forum.cockos.com/showthread.php?t=11364

А можно вообще обойтись сэмплером без встроенного рандома, разбросав ноты ,например на 34,35,36 , а перед ним вставить или скрипт или плаг

screengrab_20110621134018.png


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

Неее, в двух инстанциях наверно не умеет. Но 2 инстанции и не нужны. Всё вписывается в одну. И директы и ОХ/румы. Все надо грузить в один sfz. И там румам+директам по парам прописывать одни и теже велосити и рандомное число.


А делать банк в текстовом редакторе кстати чаще удобнее чем в навороченном графическом, без шуток.

Да. согласен. Я вообще то по профессии инженер-симулянт (FEM). Так вот для моего FE солвера всё до сих пор в УльтраЭдите делается :) Обосаццо, каменный век блин. :mamba:

А можно вообще обойтись сэмплером без встроенного рандома, разбросав ноты ,например на 34,35,36 , а перед ним вставить или скрипт или плаг

А вот об этом и я думал! Но ещё не было времени просмотреть МИДИ-плагины Куба, которые бы делали то, что делает ваш скрипт. Надо глянуть вечером. Если есть мысли/знаете, какой плаг в Кубе это делает - пишите.
 
Последнее редактирование:
Всем спасибо.

Вчера решил проблему именно тем способом, что написал q_h. С rgz возиться не стал, хотя разобрался с кодом довольо хорошо.

Но всё таки сделал именно так, как написл q_h. На МИДИ дорогу с триггером поставил MIDI Modifier и "раздивнул" Д1 (для рабочего) от С#1 до E1 (4 удара) рандомом. А сэмплы закидал в GA1 на соответствующие пэды (по несколько лэйеров по велосити). Вот и всё. Работает :)

Тут же "подстелил" нижний микрофон (пружину) под верхний. Он при записи незаметно сдох посреди сешшена. А когда на пульт глянули - поздно было. Успели 2 песни записать :hunter:

Позже буду на те части, где надо было "колбасить", а друммер сдыхал, подкладывать свои же сэмплы из этой же записи. И с GA1 можно будет вывести директы и рум на разные выходы и рулить по воле мысли:new_russian:
 
Оживлю тему малость.

Пока справлялся тем, что в посте 13.

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

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

Но не очень удобно тот же рабочий вычленять из общей партии драмсов на отдельную МИДИ-дорогу, потому что часто приходится уже чуть ли не в готовом миксе партии переделывать (да, вот такие нонче клиенты :)))), а это значит опять при каждом маленьком изменении копи/пастэ, выделит/делит на отдельную дорогу итд итп. Поэтому удобнее через Миди-Сэнд с основной МИДИ-дороги барабанной партии послать ещё и на доп. сэмплер, в котором к примеру только сэмплы рабочего. Но для этого надо, чтобы высота ноты рабочего оставалась одной и той же

Вобщем ближе к телу: всё ещё нужен сэмплер, с рандомными сэмплами на одну и ту же ноту и значение велосити. При этом надо ещё и румы к директам засунуть, но вывести на отдельные выходы из сэмплера.

Тот же rgz в принципе может всё это, кроме одной вещи. Он не имеет мильтивыходов (если я всё правильно понял). То есть только стерео аут. (директы + рум в кучу).

Но нашёл вот это
http://www.store.cakewalk.com/b2cus/productinfo.aspx?productid=35-cwsz1.40-20e

Кто нибудь уже пользовал? Знаком кому инструмент?
 
Оживлю тему малость.

Тот же rgz в принципе может всё это, кроме одной вещи. Он не имеет мильтивыходов (если я всё правильно понял). То есть только стерео аут. (директы + рум в кучу).

А контакт плеер не вариант? Вроде идеально подходит (если ничего не путаю): умеет открывать sfz, бесплатный, с мультивыходом.
 
А контакт плеер не вариант? Вроде идеально подходит (если ничего не путаю): умеет открывать sfz, бесплатный, с мультивыходом.

То есть написать вручную sfz, как было описано до этого, с рандомными сэмплами, слоями по велосити и лэйерами из директов и румов и потом уже в самом плеере переназначить теже румовые сэмплы на отдельный выход? Или как? Сорри за тупизм, я просто Контакт плеером никогда толком не пользовался.
 
SFZ+ всем хорош, но файлы .sfz не понимает, только саундфонты (.sf2)

А саундфонты помоему - это один файл, в котором уже и сэмплы зашиты, так? То есть его сначала создать надо с помощью того же SFZ+? Но это же не проблема?

Там вообще вручную с помощью того же SFZ+ (оболочки) возможно создать именно то, за чем гоняюсь? То есть вручную загрузить все сэмплы, назначить рандом и велосити для них и вывести на разные выходы?
 
wacker, не получится, в SF2 нет рандом параметра. Там много чего нет по сравнению с sfz.

Контакт плеер без ограничений работает только c активированными лицензионными инструменты.Свои патчи только 15 мин будут работать,потом надо будет перезагружать.
 
Последнее редактирование:
А саундфонты помоему - это один файл, в котором уже и сэмплы зашиты, так? То есть его сначала создать надо с помощью того же SFZ+? Но это же не проблема?

Там вообще вручную с помощью того же SFZ+ (оболочки) возможно создать именно то, за чем гоняюсь? То есть вручную загрузить все сэмплы, назначить рандом и велосити для них и вывести на разные выходы?

Да, в sf2 уже зашиты сэмплы, причём стерео сэмплы он раскладывает на левый и правый, возможностей гораздо меньше , чем в sfz. И делаются банки sf2 в специальной программе Vienna Soundfont Studio, которая привязана к звуковым картам creative. Может быть есть ещё редакторы саундфонтов, но всё равно формат sf2 очень ограничен по возможностям в сравнении с современными сэмплерами.

А что Вам мешает загрузить несколько копий SFZ плеера и в каждую загрузить свою порцию сэмплов и разложить по каналам?
 
А что Вам мешает загрузить несколько копий SFZ плеера и в каждую загрузить свою порцию сэмплов и разложить по каналам?

До тех пор, пока "род" сэмплов один и тот же (к примеру только Снэйр топ, или готовый снэйр на одном канале) - ничего.

Как только охота и боттом и румы ещё иметь и рулить отдельно и при этом чтобы они все друг к другу подходили - то приехали. То есть если 2 плеера открыть: 1 - топ, 2 - боттом, то рандом у них будет разный. А посему вместе будут играть "не те" пары. Хотя может это даже и хорошо :) "Живее" будет звучать.

Короче этот путь всегда можно выбрать, если не выйдет сделать всё в одном.

Ну так я и не понял, SFZ + Professional нельзя чтоли эти вещи сделать? Просто на странице написано, что это типпа rgz + ещё и мультиауты итд итп. И типа разные моды для загруза сэмплов.

Я просто только к выходным доберусь до возможности в нём порыться.
 
wacker, не получится, в SF2 нет рандом параметра. Там много чего нет по сравнению с sfz.

Контакт плеер без ограничений работает только c активированными лицензионными инструменты.Свои патчи только 15 мин будут работать,потом надо будет перезагружать.

Ндасс. Тогда я не понимаю, как вот такое можно писать, блин:

" ...rgc:audio’s revolutionary SoundFont player sample-playback engine, packed in a professional VST/DXi instrument. Outstanding sound quality, stereo built-in effects, adjustable CPU/quality settings to adjust it to your hardware, fully multitimbral operation, multiple stereo outputs, several loading modes including direct-from-disk streaming and a beautiful interface make sfz+ the perfect choice for SoundFont users and professional composers..."

Такие дураки, как я (а их думаю не мало :)), прочитав это, подумают, что это rgс плеер в своей оболочке с кучей дополнительных возможностей, а само имя уж никак не предпологает, что как раз таки sfz то он и не читает :))))
 
Последнее редактирование:
Я использую миди-плагин для Рипера собственного изготовления, который позволяет создать на каждой "барабанной точке" 4 велосити-лэйера, для каждого из которых ты задаешь свою кривую громкости от велосити (можно делать морфинг). В свою очередь, каждый из этих лэйеров содержит 16 сэмплов, перебираемых случайным образом. Поскольку это миди-плагин, то его можно поставить перед любым количеством сэмплеров и все они будут синхронизированы :)
Плагин с подробным описанием (находится в теле плагина, правда по-английски) здесь
 
Вобщем первый блин комом :(

поставил SFZ плеер (назывался sfz197, во вложении картинка). Написал в эдиторе файлы (2 во вложении).

Конклюжн :):
- с seq_lenght не хочет вообще работать. В моём примере длинна секвенции - 4. Так вот плеер каждый четвёртый удар и играет :) Остальные три нет. Почему, хз.

- С рандомным числом всё работает. НО!!! Непонятно каким боком, но загруженный сэмпл через этот плеер звучит не так, как он в оригинале звучит :shok:. Сначала думал - гоню. Потом сделал sfz с одним единственным сэмплом, параллельно загрузил этот же сэмпл на соседнюю аудио-дорожку и сравнил, выровняв грубо громкость:girl_wacko: Трындец. Вдруг откуда не возьмись, появился ... не сотрёшь, "куча" верха после 10к. Попробовал на оригинале Эквалайзером тоже самое сделать. Не получилось, будто это гармоники:wacko2: Ничего не понятно. Перепроверил и на сэмпле с бочкой и на рабочем, и там и там верха появляются нешуточные, которых нет в оригинальном сэмпле. Я в шокке :pilot: ОТКУДА ЭТТО?

Короче, люди, кто пользуется этим штуком, помогите выловить вредителя. Где собака порылась? Файлы в аттаче, если кому интересно.

Спасибо заранее
 

Вложения

Ндасс.

Второй обломчик за вечер:)

Скачал AlchimyPlayer. Поставил, загрузил свои поделки :) Круглый робин работает :) Гружу тот же файл в СФЦ плеер - не работает. Ага, уже хорошо. Дальше слушаю, верха дебильного, как в ргц плеере тоже нет, Звучит почти как оригинал. Обрадовался. Покрутил ручки "Атака" и "Релиз". Во, вроде всё как оригинал. Прислушался, ан нет, что-то подозрительно атака звучит.

Записал выход с плеера на дорожку. Результат в атаче:tease:

Блин, ну что за яйки??? Ну почему Алхимист двигает сэмпл вперёд Миди сообщения? То есть создаёт задержку и репортует её кубу, а сам, сволочь, сэмпл с меньшей задержкой проигрывает. И атаку жрёт:hang1: Ставишь "Атак" на 0, он создаёт щелчок (картинка). То есть атаку в 0 ставить нельзя:sorry:. А если не в ноль, то сэмплы, которые обрезаны довольно коротко, первой полуволны лишатся железно.

Скомпенсировал сдиг вперёд в самом сэмпле добавкой тишины в начале, атаку спас, но вот эта пресловутая "недозадержка" оказалась нифига не постоянной. То 68 сэмплов, то 74, то 34. Ну и нафиг мне такой плеер для подклада барабасов? Все фазы плавать будут.

В конце включил Грув Агент Ван, прописал с него выход для сравнения. Нифига никто никуда не прыгает, ни задержки, ни переноса в "будующее", всё железно там, где и Миди-ноты.

Короче я в отчаянии. Ну почему у ГА нет круглого Робина??? Ведь это само собой разумеющаяся вещь в барабанных библах. И почему так трудно сделать тупой сэмплер, не начинающий что-то куда-то двигать и играть через попу, если его не просят :sorry:

Короче посыл с МИДИ пока отменяется (пока не разберёмся, что к чему с этими "загадочными" сфцетами). Копируется дорожка барабасов. Фильтруется Миди плагами на нужный инструмент и потом рандомом рассеивается на соседние ноты и оттуда в ГА1. Пока другого выхода не вижу.
 

Вложения

  • AlchemyPlayer.jpg
    AlchemyPlayer.jpg
    15,8 KB · Просмотры: 2
ещё одно неприятное своство миди : минимальный шаг миди сообщений при 120 бпм ( при частосте семплирвоания 44100 гц) где то 20 сэмплов, точную цифру не помню а считать лень. что для кошерного подклада сэмплов под барабаны тоже может оказаться не айс.
 
А мин. шаг - это к чему относится?

Только к тому, как быстро можно послать новое/следующее МИДИ-сообщение?

Или это относится также и к расположению самой ноты в проекте? То есть начало МИДИ-ноты возможно позиционировать только с точностью в пределах 20 сэмплов? (что-то типа сэмпловой сетки получается).

Просто визуально Куб позволяет позиционировать начало Миди ноты хоть как, а вот как он её потом сиграет, вопрос конечно другой.
 
wacker,<group> не правильно применяешь
<group> lovel=0 hivel=60 pitch_keycenter=35 lokey=35 hikey=35 loopmode=one_shot
<region> sample=SQ_Kick\Hybrid_Kick-09.wav seq_length=4 seq_position=4
<region> sample=SQ_Kick\Hybrid_Kick-10.wav seq_length=4 seq_position=3
<region> sample=SQ_Kick\Hybrid_Kick-11.wav seq_length=4 seq_position=2
<region> sample=SQ_Kick\Hybrid_Kick-12.wav seq_length=4 seq_position=1

<group> lovel=61 hivel=100 pitch_keycenter=35 lokey=35 hikey=35 loopmode=one_shot
<region> sample=SQ_Kick\Hybrid_Kick-05.wav seq_length=4 seq_position=4
<region> sample=SQ_Kick\Hybrid_Kick-06.wav seq_length=4 seq_position=3
<region> sample=SQ_Kick\Hybrid_Kick-07.wav seq_length=4 seq_position=2
<region> sample=SQ_Kick\Hybrid_Kick-08.wav seq_length=4 seq_position=1

<group> lovel=101 hivel=127 pitch_keycenter=35 lokey=35 hikey=35 loopmode=one_shot
<region> sample=SQ_Kick\Hybrid_Kick-01.wav seq_length=4 seq_position=4
<region> sample=SQ_Kick\Hybrid_Kick-02.wav seq_length=4 seq_position=3
<region> sample=SQ_Kick\Hybrid_Kick-03.wav seq_length=4 seq_position=2
<region> sample=SQ_Kick\Hybrid_Kick-04.wav seq_length=4 seq_position=1
хотя можно еще упростить
 
wacker,<group> не правильно применяешь
<group> lovel=0 hivel=60 pitch_keycenter=35 lokey=35 hikey=35 loopmode=one_shot
<region> sample=SQ_Kick\Hybrid_Kick-09.wav seq_length=4 seq_position=4
<region> sample=SQ_Kick\Hybrid_Kick-10.wav seq_length=4 seq_position=3
<region> sample=SQ_Kick\Hybrid_Kick-11.wav seq_length=4 seq_position=2
<region> sample=SQ_Kick\Hybrid_Kick-12.wav seq_length=4 seq_position=1

<group> lovel=61 hivel=100 pitch_keycenter=35 lokey=35 hikey=35 loopmode=one_shot
<region> sample=SQ_Kick\Hybrid_Kick-05.wav seq_length=4 seq_position=4
<region> sample=SQ_Kick\Hybrid_Kick-06.wav seq_length=4 seq_position=3
<region> sample=SQ_Kick\Hybrid_Kick-07.wav seq_length=4 seq_position=2
<region> sample=SQ_Kick\Hybrid_Kick-08.wav seq_length=4 seq_position=1

<group> lovel=101 hivel=127 pitch_keycenter=35 lokey=35 hikey=35 loopmode=one_shot
<region> sample=SQ_Kick\Hybrid_Kick-01.wav seq_length=4 seq_position=4
<region> sample=SQ_Kick\Hybrid_Kick-02.wav seq_length=4 seq_position=3
<region> sample=SQ_Kick\Hybrid_Kick-03.wav seq_length=4 seq_position=2
<region> sample=SQ_Kick\Hybrid_Kick-04.wav seq_length=4 seq_position=1
хотя можно еще упростить

Да я скопировал то, что в начале A-Up давал.

Но как уже писал, после незначительного изменения файлов (как раз примерно то, что Вы написали, скопировал из одного примера из сети) раунд робин сразу заиграл в Алхимике без проблем. А вот в ргц-плеере тот же самый файл с сек_позишн как играл каждый 4ый удар, так и дальше это делал. Короче у меня ргц плеер отказывается слушаться :) Да и то, что он со звуком делает - вообще кошмар. Короче не могу себе представить, что это так "нормально".

Мысли какие есть по пунктам из Постов 25 и 26?
 

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