Er, just use whatever curve you want and interpolate. At 128 values, it doesn't need to be fancy. Create the curve you want in the plane that ranges from 0,0 to 1,1 and then find the y value for each x/127. You've got linear (y=x), quadratic (y=x^x), cubic (x^3) , or any number of other curves. (I'll leave the parabola as an exercise to the reader since I've a wicked headache at the moment. )
Leave sinc and Catmull-Rom sitting in the sample interpolation room where they belong.
Need some tips for generating curves that can change shape
DSP, Plugin and Host development discussion.
Moderator: KVR Moderators (Main)
Need some tips for generating curves that can change shape
2018-11-25T01:40:38+00:00
Hey all...
I'm trying to figure out the best way to generate a curve and fit the data points of the curve to an array size.
The curve I need is supposed to be for key scaling, so the size of my array should be 128 (X axis represents each note on the keyboard). Each value stored in the array should be a value between 0-1 (Y axis represent value for some arbitrary parameter).
The ideal curve for me would be a sort of upside down 'U' shape. (According to the internet, this might be called a parabolic curve?)
Building on this basic concept, I would then want to be able to plug in some values to adjust the shape of the curve e.g change the steepness of the slopes on either side, and change the central point of the curve. This would allow some flexibility to the key scaling functionality.
I'm finding it pretty difficult to get started because my mathematics knowledge is quite poor. For this reason, I am also probably not doing a great job of asking the question! In short, I just do not know 'how to math this'. :dog:
EchoGecko
https://www.kvraudio.com/forum/memberlist.php?mode=viewprofile&u=377132
- KVRAF
- 2207 posts since 25 Sep, 2014 from Specific Northwest
- Contact:
Return to “DSP and Plugin Development”
Jump to
- The Main Forums
- ↳ KVR Studio Manager
- ↳ KVR Experts
- ↳ Getting Started (AKA What is the best...?)
- ↳ Instruments
- ↳ Effects
- ↳ Hosts & Applications (Sequencers, DAWs, Audio Editors, etc.)
- ↳ Guitars
- ↳ Mobile Apps and Hardware
- ↳ Soundware
- ↳ Samplers, Sampling & Sample Libraries
- ↳ Hardware (Instruments and Effects)
- ↳ Modular Synthesis
- ↳ Sound Design
- ↳ Production Techniques
- ↳ Music Theory
- ↳ Computer Setup and System Configuration
- ↳ DSP and Plugin Development
- ↳ DIY: Build it and they will come
- ↳ Music Cafe
- ↳ Sell & Buy (+Special Offers, Deals & Promos)
- ↳ KVR Developer Challenge 2023
- ↳ Everything Else (Music related)
- ↳ Off Topic
- ↳ Off Topic Classics
- Official Company Forums
- ↳ 2getheraudio
- ↳ accSone
- ↳ Acon Digital
- ↳ AcousticsampleS
- ↳ AcousModules
- ↳ Agitated State
- ↳ AIR Music Technology
- ↳ AMG
- ↳ Ample Sound
- ↳ Antares Audio Technologies
- ↳ Apisonic Labs
- ↳ apulSoft
- ↳ AriesCode
- ↳ Arts Acoustic
- ↳ Arturia
- ↳ audioD3CK
- ↳ Audjoo
- ↳ AudioSpillage
- ↳ Audiority
- ↳ Back In Time Records
- ↳ Best Service
- ↳ Big Tick
- ↳ Bitwig
- ↳ Controller Scripting
- ↳ Blue Cat Audio
- ↳ CFA-Sound
- ↳ Cherry Audio
- ↳ CWITEC
- ↳ Drumdrops
- ↳ Embertone
- ↳ energyXT
- ↳ Eventide
- ↳ Expert Sleepers
- ↳ forward audio
- ↳ Futucraft
- ↳ Future Audio Workshop
- ↳ FXpansion
- ↳ g200kg
- ↳ Harrison Mixbus
- ↳ HG Fortune
- ↳ Homegrown Sounds
- ↳ HoRNet Plugins
- ↳ Ilya Efimov Production
- ↳ Image Line
- ↳ Impact Soundworks
- ↳ Indiginus
- ↳ Insert Piz Here
- ↳ Inspire Audio
- ↳ Ju-X
- ↳ Kirk Hunter Studios
- ↳ Kirnu
- ↳ Kong Audio
- ↳ Krakli
- ↳ Krotos
- ↳ Kuassa
- ↳ KV331 Audio
- ↳ LennarDigital
- ↳ Les Productions Zvon
- ↳ Liqube Audio
- ↳ Livelab.dk
- ↳ Loomer
- ↳ LVC-Audio
- ↳ Maizesoft
- ↳ Manytone Music
- ↳ MeldaProduction
- ↳ Mellowmuse
- ↳ MIDIMood
- ↳ moForte
- ↳ Mozaic Beats
- ↳ mucoder
- ↳ Muon Software
- ↳ MusicDevelopments
- ↳ Tips & Tricks
- ↳ MusicLab
- ↳ MUTOOLS
- ↳ New Sonic Arts
- ↳ NUSofting
- ↳ Oli Larkin Plugins
- ↳ Orange Tree Samples
- ↳ OverTone DSP
- ↳ patchpool
- ↳ Photosounder
- ↳ PlugInGuru
- ↳ Polyverse Music
- ↳ Precisionsound
- ↳ Premier Sound Factory
- ↳ Psychic Modulation
- ↳ RaXnTraX
- ↳ Realitone
- ↳ Resonance-Sound
- ↳ Reveal Sound
- ↳ Roger Linn Design
- ↳ rs-met
- ↳ S3A: Spatial Audio
- ↳ SaschArt
- ↳ Signaldust
- ↳ Skytopia
- ↳ Smart Electronix
- ↳ solar3d-software
- ↳ sonible
- ↳ SonicBirth
- ↳ Sonic Reality / eSoundz.com
- ↳ Sonigen
- ↳ Soundemote
- ↳ Soundiron
- ↳ SPC Plugins
- ↳ Squaredheads
- ↳ Sugar Bytes
- ↳ TAL Software
- ↳ Tokyo Dawn Labs
- ↳ Tracktion
- ↳ u-he
- ↳ u-he Linux support
- ↳ United Plugins
- ↳ VAZ Synths
- ↳ Virharmonic
- ↳ Westgatesounds.net
- ↳ Wolfgang Palm
- ↳ xoxos
- ↳ ZynAddSubFX
- Site Stuff
- ↳ Site Stuff
- Archived Forums
- ↳ AlgoMusic
- ↳ easytoolz
- ↳ Elevayta
- ↳ Hollow Sun
- ↳ Kazrog
- ↳ LinPlug
- ↳ Muse Research and Development
- ↳ Shuriken
- ↳ SoHa Sound Design
- ↳ Soniccouture
- ↳ Topten Software
- ↳ Tweakbench
- ↳ Valhalla DSP
- ↳ CK Modules & VST
- ↳ Sennheiser AMBEO
- KVR Forum index
- All times are UTC
- Delete cookies