Controlling values in a sfz file from the "outside"?

*** THIS FORUM HAS MOVED TO ARIAENGINE.COM ***
Discussion on the SFZ implementation and opcodes available in the ARIA engine. THIS IS NOT A SUPPORT FORUM FOR ARIA-BASED PRODUCTS.

Controlling values in a sfz file from the "outside"?

Postby rockdude » Thu Apr 21, 2011 9:35 am

Hi!

I recently found out about sfz and I love it's flexibility...and that it's free! I've started to experiment by mapping my first sfz drum kit. I wonder if there's a way to control values in a sfz file from the outside...with midi cc for example? Let's say I have a snare drum which is recorded with both top and bottom microphones. When I map those samples in a sfz file it would be nice to be able to for example decrease or raise the volume for the bottom samples or the top samples (maybe tweak the vel to amp values and so forth) Can I assign a cc to for example the volume opcode and control its value with midi cc?
rockdude
 
Posts: 21
Joined: Thu Apr 21, 2011 9:12 am

Re: Controlling values in a sfz file from the "outside"?

Postby pascal » Thu Apr 21, 2011 11:09 am

rockdude wrote:I wonder if there's a way to control values in a sfz file from the outside...with midi cc for example? Let's say I have a snare drum which is recorded with both top and bottom microphones. When I map those samples in a sfz file it would be nice to be able to for example decrease or raise the volume for the bottom samples or the top samples


Hi!
Take a look at this example,
Code: Select all
//Top microphone amplitude is controlled by CC1
//Bottom microphone amplitude is controlled by CC7
//Add the amplitude_curvecc to have a better mapping between CC values and amplitude
//If your player is ARIA, try amplitude_curveccX=4, I think it's about the same as curve 7

<region>
sample=TopMicSnareDrum.wav
amplitude_oncc1=100  //for 100%
amplitude_curvecc1=7

<region>
sample=BottomMicSnareDrum.wav
amplitude_oncc7=100
amplitude_curvecc7=7


<curve> curve_index=7
  v000=0             v001=4.8819e-007   v002=3.90552e-006  v003=1.31811e-005  v004=3.12442e-005
  v005=6.10237e-005  v006=0.000105449   v007=0.000167449   v008=0.000249953   v009=0.00035589 
  v010=0.00048819    v011=0.000649781   v012=0.000843592   v013=0.00107255    v014=0.00133959 
  v015=0.00164764    v016=0.00199963    v017=0.00239848    v018=0.00284712    v019=0.00334849 
  v020=0.00390552    v021=0.00452113    v022=0.00519825    v023=0.00593981    v024=0.00674874 
  v025=0.00762797    v026=0.00858043    v027=0.00960904    v028=0.0107167     v029=0.0119065   
  v030=0.0131811     v031=0.0145437     v032=0.015997      v033=0.0175441     v034=0.0191878   
  v035=0.0209311     v036=0.022777      v037=0.0247283     v038=0.026788      v039=0.0289589   
  v040=0.0312442     v041=0.0336465     v042=0.036169      v043=0.0388145     v044=0.041586   
  v045=0.0444863     v046=0.0475185     v047=0.0506853     v048=0.0539899     v049=0.0574351   
  v050=0.0610237     v051=0.0647589     v052=0.0686434     v053=0.0726803     v054=0.0768723   
  v055=0.0812226     v056=0.085734      v057=0.0904094     v058=0.0952517     v059=0.100264   
  v060=0.105449      v061=0.11081       v062=0.116349      v063=0.12207       v064=0.127976   
  v065=0.134069      v066=0.140353      v067=0.146829      v068=0.153503      v069=0.160375   
  v070=0.167449      v071=0.174729      v072=0.182216      v073=0.189914      v074=0.197826   
  v075=0.205955      v076=0.214304      v077=0.222875      v078=0.231672      v079=0.240697   
  v080=0.249953      v081=0.259444      v082=0.269172      v083=0.279141      v084=0.289352   
  v085=0.29981       v086=0.310516      v087=0.321475      v088=0.332688      v089=0.344159   
  v090=0.35589       v091=0.367886      v092=0.380148      v093=0.392679      v094=0.405483   
  v095=0.418562      v096=0.431919      v097=0.445558      v098=0.45948       v099=0.47369     
  v100=0.48819       v101=0.502983      v102=0.518071      v103=0.533458      v104=0.549147   
  v105=0.565141      v106=0.581442      v107=0.598054      v108=0.614979      v109=0.63222     
  v110=0.649781      v111=0.667664      v112=0.685872      v113=0.704408      v114=0.723275   
  v115=0.742476      v116=0.762014      v117=0.781891      v118=0.802112      v119=0.822678   
  v120=0.843592      v121=0.864858      v122=0.886479      v123=0.908457      v124=0.930795   
  v125=0.953496      v126=0.976563      v127=1
pascal
 
Posts: 31
Joined: Fri Jun 30, 2006 2:40 pm
Location: Montréal

Re: Controlling values in a sfz file from the "outside"?

Postby rockdude » Fri Apr 22, 2011 4:11 pm

Thanks Pascal,
I tried your advice, but I couldn't get it to work.
Do I have to put amplitude_oncc1=100 in a <region> or could it be place in a <group> as well? Are there any reasons why it's oncc1 or could I choose any cc number I want? And since it's set at 100% I should only be able to decrease the amplitube with cc1?
Is amplitude_curvecc1=7 optional? It's just there so I can finetune the response manually?
Sorry for all stupid questions. I'm trying to get an understanding on what's going on.

What I've tried so far is to set amplitude_oncc1=100 in a <group> for my High Tom samples. I then load my sfz file in Linux Sampler in my DAW which is Reaper. Then I load the CCRider vst and set it to Midi CC1 and choose Linux Sampler as the receiver so all my realtime cc-operations is send to The Linux Sampler vsti.
I can't hear any changes in the amplitude for my Hight Tom even if I change cc1 values in CCRider vst back and forth from 1-127 while playing. As far as I can tell amplitude_oncc is an implemented opcode in Linux Sampler so I don't know what I'm doing wrong?
rockdude
 
Posts: 21
Joined: Thu Apr 21, 2011 9:12 am

Re: Controlling values in a sfz file from the "outside"?

Postby davidv » Fri Apr 22, 2011 4:47 pm

amplitude_oncc is not part of SFZ 1.0 nor SFZ 2.0 but is an 'authorized' (by Rene Ceballos) idea. So i doubt very much its in linuxsampler's SFZ 1.0 implementation.

You can use volumce_oncc or volumecc instead, which is 1.0
David Viens,
Plogue Art et Technologie Inc. Montreal.
http://www.plogue.com
davidv
Site Admin
 
Posts: 1272
Joined: Tue Mar 02, 2004 7:23 pm

Re: Controlling values in a sfz file from the "outside"?

Postby rockdude » Fri Apr 22, 2011 4:57 pm

davidv wrote:amplitude_oncc is not part of SFZ 1.0 nor SFZ 2.0 but is an 'authorized' (by Rene Ceballos) idea. So i doubt very much its in linuxsampler's SFZ 1.0 implementation.

You can use volumce_oncc or volumecc instead, which is 1.0

Thanks David, I'll try that....but I actually think amplitude_oncc is valid in Linux Sampler.
It's in the LinuxSampler SFZ Reference
https://docs.google.com/Doc?docid=0AVrD ... bmsyd3Zmag
Maybe it's just mentioned there but not implemented. I'm not sure.

Btw, were my assumtions correct in my earlier response to Pascal?
rockdude
 
Posts: 21
Joined: Thu Apr 21, 2011 9:12 am

Re: Controlling values in a sfz file from the "outside"?

Postby davidv » Fri Apr 22, 2011 8:14 pm



Thanks for this its been a while since i've looked at what it supported.

You can put normal opcodes in any <region> <group> <global> etc, if you define it in a parent it just becomes the defaults for all the leaves underneath.

You can use nearly any CC you like, unless that CC is used for something else or is out of bounds With regards to normal MIDI.
Curve7 for amplitude is an ARIA ism, it makes a nice LIN to LOG response. you can omit it...

I really REALLy dont know if this could help you since i havent checked linuxsampler's implementation any.
This as you guess is not a linuxsampler support line, nor any per-engine support line, including ARIA...
really only a :SFZ is nice, heres a place you can chat:

However, since i know ARIA since i coded it, i feel more comfortable explaining things through it...
You can try in chipsounds 1.501 demo (full SFZ 2.x engine) under wine as a comparison....
David Viens,
Plogue Art et Technologie Inc. Montreal.
http://www.plogue.com
davidv
Site Admin
 
Posts: 1272
Joined: Tue Mar 02, 2004 7:23 pm

Re: Controlling values in a sfz file from the "outside"?

Postby rockdude » Sat Apr 23, 2011 4:49 pm

Thanks for your answer David. I'm using sfz player, Aria player and Linux Sampler (so far Linux Player has been the one who've managed to play most sfz files without complaining). I'm not demanding any support for any of them here. I just want to discuss and learn more about sfz programming and I think this is the most active and best place to do so. I very much appreciate all help and suggestions you and others can offer here. I'm about to order the book "Cakewalk Synthesizers" to read all about sfz 2.x.

I'll try your suggestions in all three players and get back here with my findings.
rockdude
 
Posts: 21
Joined: Thu Apr 21, 2011 9:12 am

Re: Controlling values in a sfz file from the "outside"?

Postby davidv » Sun Apr 24, 2011 10:06 am

Now im curious, which SFZ files worked in linuxsampler and not in ARIA?
David Viens,
Plogue Art et Technologie Inc. Montreal.
http://www.plogue.com
davidv
Site Admin
 
Posts: 1272
Joined: Tue Mar 02, 2004 7:23 pm

Re: Controlling values in a sfz file from the "outside"?

Postby rockdude » Sun Apr 24, 2011 4:37 pm

Now I managed to get amplitude_oncc and volume_oncc to work in Aria, but not in Linux Sampler.
I'll get back to you on what worked in Linux Sampler but not in Aria. It was when I experimented with my hihat mapping with cross fades between the different levels of openness and groups that should mute each other. The instrument parser showed a few warnings and Aria refused to mute the different hihat groups. I guess it's my inexperience in sfz programming and choice of opcodes that caused it :oops: (I'll try to find the code and show you later). Generally my impression is that Aria complains more with messages...which don't have to be a bad thing. Aria don't seem to like xfout and off_by. Just read that xfout is not an implemented sfz 1.0 opcode in Aria. What can I use instead of xfout, xfin?

(Cakewalk Synthesizers book is now on it's way to me 8) )
rockdude
 
Posts: 21
Joined: Thu Apr 21, 2011 9:12 am

Re: Controlling values in a sfz file from the "outside"?

Postby rockdude » Mon Apr 25, 2011 6:05 am

I wonder if there's a way to add controls in the instruments control section in Aria Player? It's so empty when I look at it :)
Let's say I've added volume_oncc and transpose_oncc in my sfz instrument kit piece. Is it possible to add knobs with the chosen cc's in the instrument control section that can control the amount of volume and transpose?
rockdude
 
Posts: 21
Joined: Thu Apr 21, 2011 9:12 am

Re: Controlling values in a sfz file from the "outside"?

Postby davidv » Mon Apr 25, 2011 7:58 am

rockdude wrote:I wonder if there's a way to add controls in the instruments control section in Aria Player? It's so empty when I look at it :)
Let's say I've added volume_oncc and transpose_oncc in my sfz instrument kit piece. Is it possible to add knobs with the chosen cc's in the instrument control section that can control the amount of volume and transpose?


You can only add UI controls if you create a user xml bank and hack the registry a bit, the exact details have not been disclosed yet, since these are officially ARIA 3rd party benefits.
David Viens,
Plogue Art et Technologie Inc. Montreal.
http://www.plogue.com
davidv
Site Admin
 
Posts: 1272
Joined: Tue Mar 02, 2004 7:23 pm

Re: Controlling values in a sfz file from the "outside"?

Postby davidv » Mon Apr 25, 2011 8:01 am

rockdude wrote: Generally my impression is that Aria complains more with messages...which don't have to be a bad thing. Aria don't seem to like xfout and off_by. Just read that xfout is not an implemented sfz 1.0 opcode in Aria.

I think ARIA correctly implements off_by and that all those off_by warnings are there to help you :)

rockdude wrote:What can I use instead of xfout, xfin?


Neither is in, the last time i tried Dimension Pro/Drop Zone didnt behave the same on xfin/xfout so i didnt have a correct example to go with my implementation, seems like one of those things ill have to implement by 'feel'
David Viens,
Plogue Art et Technologie Inc. Montreal.
http://www.plogue.com
davidv
Site Admin
 
Posts: 1272
Joined: Tue Mar 02, 2004 7:23 pm

Re: Controlling values in a sfz file from the "outside"?

Postby rockdude » Mon Apr 25, 2011 9:07 am

davidv wrote:
rockdude wrote:I wonder if there's a way to add controls in the instruments control section in Aria Player? It's so empty when I look at it :)
Let's say I've added volume_oncc and transpose_oncc in my sfz instrument kit piece. Is it possible to add knobs with the chosen cc's in the instrument control section that can control the amount of volume and transpose?


You can only add UI controls if you create a user xml bank and hack the registry a bit, the exact details have not been disclosed yet, since these are officially ARIA 3rd party benefits.

Ok I see. Will they ever be disclosed? It would be a nice addition for sfz mapped instruments.
rockdude
 
Posts: 21
Joined: Thu Apr 21, 2011 9:12 am

Re: Controlling values in a sfz file from the "outside"?

Postby rockdude » Mon Apr 25, 2011 9:08 am

davidv wrote:
rockdude wrote: Generally my impression is that Aria complains more with messages...which don't have to be a bad thing. Aria don't seem to like xfout and off_by. Just read that xfout is not an implemented sfz 1.0 opcode in Aria.

I think ARIA correctly implements off_by and that all those off_by warnings are there to help you :)

rockdude wrote:What can I use instead of xfout, xfin?


Neither is in, the last time i tried Dimension Pro/Drop Zone didnt behave the same on xfin/xfout so i didnt have a correct example to go with my implementation, seems like one of those things ill have to implement by 'feel'

So you're planning to put it in there in the future? It would be good for drums (the only thing I'm currently interested in mapping right now)
rockdude
 
Posts: 21
Joined: Thu Apr 21, 2011 9:12 am

Re: Controlling values in a sfz file from the "outside"?

Postby davidv » Mon Apr 25, 2011 5:09 pm

rockdude wrote:So you're planning to put it in there in the future? It would be good for drums (the only thing I'm currently interested in mapping right now)


xfin/xfout on cc will be added in next build of ARIA.
David Viens,
Plogue Art et Technologie Inc. Montreal.
http://www.plogue.com
davidv
Site Admin
 
Posts: 1272
Joined: Tue Mar 02, 2004 7:23 pm

Next

Return to SFZ Programming (THIS FORUM HAS MOVED TO ARIAENGINE.COM)

Who is online

Users browsing this forum: No registered users and 1 guest

cron