I think my original suggestion was an uncanny soprano vocal sound. Always wanted to do a track with that kind of sound but could never synthesise the sound properly.KBSoundSmith wrote: ↑Tue Jun 18, 2019 11:11 pmIf someone indeed wrote that... well I doubt they dug very deep. Or even surface level. If you're looking for a substitute for something like Plogue Chipspeech then maybe you'd be disappointed, but Hive can do plenty of vocal sounds quite easily.
Here are two quick examples. No effects or filters or anything, just small segments of two different wavetables being modulated by the shape sequencer.
Hive Vox 001.wav
https://bit.ly/2ZvqZqj
Hive FM Vox 001.wav
https://bit.ly/2KmgIcs
Tech Preview: Hive Wavetables
-
- KVRist
- 269 posts since 12 Nov, 2011
-
- KVRian
- 899 posts since 22 Nov, 2017
Hi.EvilDragon wrote: ↑Wed Jun 19, 2019 8:19 am You can't really make a GUI for generic UHM script making. You can do what, for example, cytospur made, which is GUI that parameterizes a particular way of building a wavetable with a single script. It's not an end-all-be-all solution.
You can already download user created wavetables and place them in the Wavetables folder and use them in Hive, I'm not sure what's your point?
I will check out cytospurs program some day.
Is a wavetable from his program sounding another way as if I record some patch outcome from another synth and use this wav file as a wavetable in Hive? I mean is the first example more organically fitting Hives engine?
What's my point you ask? To make things more convenient for users by doing an exchange (up- and download) of user-generated WT directly in HIVE where no further steps outside the box would be necessary. Wouldn't that be great? After all I took away from the earlier discussion that there is a high emphasis with HIVE about simplicity.
Would be nice as an addition if you pointed out where we can actually download those already existing WTs. Thank you.
Have joy and be sound.
Last edited by nichttuntun on Thu Jul 04, 2019 5:10 pm, edited 1 time in total.
-
- KVRian
- 899 posts since 22 Nov, 2017
Ahm. Thanks Evil Dragon for ... ahm...nothing?
- KVRAF
- 23101 posts since 7 Jan, 2009 from Croatia
Sorry, somehow didn't see your reply back there!
Yes, it's going to sound different, because .uhm scripts use Hive's internal interpolation engine, which is super-smooth and sounds better than most (if not all) other wavetable synths.nichttuntun wrote: ↑Wed Jun 19, 2019 9:28 amIs a wavetable from his program sounding another way as if I record some patch outcome from another synth and use this wav file as a wavetable in Hive? I mean is the first example more organically fitting Hives engine?>
-
- KVRian
- 899 posts since 22 Nov, 2017
Thank you. Than I think it´s worth to spent time with that.
Would you be so kind and help me out with the location of the downloadable WaveTable content you spoke of? Would be a pleasure
Would you be so kind and help me out with the location of the downloadable WaveTable content you spoke of? Would be a pleasure
-
Funkybot's Evil Twin Funkybot's Evil Twin https://www.kvraudio.com/forum/memberlist.php?mode=viewprofile&u=116627
- KVRAF
- 11508 posts since 16 Aug, 2006
On the flip side, if we create a 256 frame scripted wavetable in .uhm and export to .wav then use the .wav file in Hive (cause maybe I'll use it another synth some day and just want to be consistent)...same exact thing? Or do you lose resolution when interpolating in Hive with the uhm-generated .wav file compared to the original .uhm?EvilDragon wrote: ↑Thu Jul 04, 2019 5:13 pm Yes, it's going to sound different, because .uhm scripts use Hive's internal interpolation engine, which is super-smooth and sounds better than most (if not all) other wavetable synths.
- u-he
- Topic Starter
- 28062 posts since 8 Aug, 2002 from Berlin
wav equals uhm, soundwise. The interpolation method can be chosen independent of wavetable origin.Funkybot's Evil Twin wrote: ↑Thu Jul 04, 2019 5:41 pmOn the flip side, if we create a 256 frame scripted wavetable in .uhm and export to .wav then use the .wav file in Hive (cause maybe I'll use it another synth some day and just want to be consistent)...same exact thing? Or do you lose resolution when interpolating in Hive with the uhm-generated .wav file compared to the original .uhm?EvilDragon wrote: ↑Thu Jul 04, 2019 5:13 pm Yes, it's going to sound different, because .uhm scripts use Hive's internal interpolation engine, which is super-smooth and sounds better than most (if not all) other wavetable synths.
-
Funkybot's Evil Twin Funkybot's Evil Twin https://www.kvraudio.com/forum/memberlist.php?mode=viewprofile&u=116627
- KVRAF
- 11508 posts since 16 Aug, 2006
Thanks Urs.
-
- KVRian
- 899 posts since 22 Nov, 2017
Good to know. Thank you.
-
- KVRian
- 899 posts since 22 Nov, 2017
So basically we could record anything as a wav file and use it in HIVE as a wavetable. When doing that is there a recommended maximum length the audio should have and which bit rate should the sound file have?Urs wrote: ↑Thu Jul 04, 2019 8:17 pmwav equals uhm, soundwise. The interpolation method can be chosen independent of wavetable origin.Funkybot's Evil Twin wrote: ↑Thu Jul 04, 2019 5:41 pmOn the flip side, if we create a 256 frame scripted wavetable in .uhm and export to .wav then use the .wav file in Hive (cause maybe I'll use it another synth some day and just want to be consistent)...same exact thing? Or do you lose resolution when interpolating in Hive with the uhm-generated .wav file compared to the original .uhm?EvilDragon wrote: ↑Thu Jul 04, 2019 5:13 pm Yes, it's going to sound different, because .uhm scripts use Hive's internal interpolation engine, which is super-smooth and sounds better than most (if not all) other wavetable synths.
Again, can't state enough how cool it would be if HIVE would have an internal recorder for such purposes. Maybe, some day?
Thank you in advance.
- KVRist
- 429 posts since 4 Jun, 2018 from The UK
In the uhm manual it says:nichttuntun wrote: ↑Fri Jul 05, 2019 8:18 am So basically we could record anything as a wav file and use it in HIVE as a wavetable. When doing that is there a recommended maximum length the audio should have and which bit rate should the sound file have?
So each waveform/frame/cycle can be 64, 128, 256, 1024 or the default 2048 samples long (note the naming convention above to tell Hive which sample rate you're using).Mono or stereo WAV files are interpreted by default as having a cycle length
of 2048 samples per frame – the number of frames is calculated from the total size of the file and is limited
to 256. To specify other samples-per-frame values, the file name must end with “-WT” followed by the
number e.g. MyWavetable-WT512.wav (or 64, 128, 256, 1024)
I have in fact been making wavetables by trimming audio clips.
If you tune a sound so each single cycle is 2048 samples in length (detuned F1, -22 cents I think) and trim it to the right length in an audio editor, the simple calculation for the length in samples is:
2048 samples X 256 frames = 524,288 samples
So if you make a wave file 524,288 samples long then you can use it as a 256 frame wavetable at 2048 samples-per-frame.
You will need to adjust that based on the samplerate and number of frames you want.
Last edited by Ranoka on Fri Jul 05, 2019 9:44 am, edited 1 time in total.
- u-he
- Topic Starter
- 28062 posts since 8 Aug, 2002 from Berlin
We're actually toying with the idea of caching .uhm as .wav to improve preset loading times. Some .uhm based wavetables need a second or two for all calculations.
But yes, you can already load any .wav file, but Hive does not try to establish a base frequency or anything. We might add that as well, but maybe I just add a uhm script which lets one convert any .wav into a proper Hive-compatible wavetable as long as you know the base frequency of the sample.
But yes, you can already load any .wav file, but Hive does not try to establish a base frequency or anything. We might add that as well, but maybe I just add a uhm script which lets one convert any .wav into a proper Hive-compatible wavetable as long as you know the base frequency of the sample.
-
- KVRian
- 899 posts since 22 Nov, 2017
Thank you both. That would be awesome.
-
- KVRian
- 1461 posts since 26 Jun, 2002 from London, UK
Here's a neat script that does waveshaping:
The transfer function used is a low pass filtered random wave. Change the cutoff, resonance and seed values to get different transfer functions. You can use any function here, such as Chebyshev polynomials (see below).
The input signal is a sine wave, but can be anything else. Beware that input signals with lots of higher harmonics can get noisy and nasty, but maybe that's a good thing for some
The actual waveshaping occurs in the line labelled //Output
Here is the simpler version that does Chebyshev polynomial waveshaping, using 2op FM as an input signal:
Note the digital noise that appears at low modulation levels. Cool for that early-90s digital vibe
Enjoy!
Code: Select all
Info "By Mark Holt\nWaveshaping\n"
NumFrames=32
Seed=64
//Random transfer function
Wave "rands"
//Filtered
Wave "lowpass(main,0.5*table,0)"
Spectrum lowest=0 highest=0 "0"
Normalize Metric=peak Base=each
//Symmetrised - can be bypassed with //
Wave "(main_fi(frame,(1*index)%2047)-main_fi(frame,2047-(1*index)%2047))"
//Input
Wave target=aux1 "(0.9*table+0.1)*sin(2*pi*phase)"
//Output
Wave "main_fi(frame,1024*(aux1+1))"
Spectrum lowest=0 highest=0 "0"
Normalize Metric=peak Base=each
Export Source=main "MH Waveshaping.wav"
The input signal is a sine wave, but can be anything else. Beware that input signals with lots of higher harmonics can get noisy and nasty, but maybe that's a good thing for some
The actual waveshaping occurs in the line labelled //Output
Here is the simpler version that does Chebyshev polynomial waveshaping, using 2op FM as an input signal:
Code: Select all
Info "By Mark Holt\nChebyshev Polynomial Waveshaping\n"
NumFrames=32
Wave target=aux1 "acos(2*phase-1)"
//Transfer Function - Chebyshev style
Wave "0.5*cos(1*aux1)+0.5*cos(3*aux1)+0.65*cos(5*aux1)+0.25*cos(7*aux1)"
Spectrum lowest=0 highest=0 "0"
Normalize Metric=peak Base=each
//Input
Wave target=aux1 "(0.9*table+0.1)*sin(2*pi*phase+sin(2*pi*phase))"
//Output
Wave "main_fi(frame,1024*(aux1+1))"
Spectrum lowest=0 highest=0 "0"
Normalize Metric=peak Base=each
Export Source=main "MH Waveshaping.wav"
Enjoy!
Wavetables for DUNE2/3, Blofeld, IL Harmor, Hive and Serum etc: http://charlesdickens.neocities.org/
£10 for lifetime updates including wavetable editor for Windows.
Music: https://soundcloud.com/markholt
£10 for lifetime updates including wavetable editor for Windows.
Music: https://soundcloud.com/markholt
-
- KVRian
- 1461 posts since 26 Jun, 2002 from London, UK
Two more transfer functions that may be of interest, the first using Chebyshev terms based on the Fibonacci sequence, the second using terms based on the Lucas sequence.
Fibonacci:
Lucas:
Both give nice resonant sweeps. Place either one in to the Chebyshev Polynomial Waveshaping UHM script after where it states "//Transfer Function....".
Fibonacci:
Code: Select all
Wave "2*cos(1*aux1)+cos(2*aux1)+cos(3*aux1)+cos(5*aux1)+cos(8*aux1)+cos(13*aux1)+cos(21*aux1)+cos(34*aux1)+cos(55*aux1)+cos(89*aux1)+cos(144*aux1)+cos(233*aux1)"
Code: Select all
Wave "cos(1*aux1)+cos(3*aux1)+cos(4*aux1)+cos(7*aux1)+cos(11*aux1)+cos(18*aux1)+cos(29*aux1)+cos(47*aux1)+cos(76*aux1)+cos(123*aux1)+cos(199*aux1)"
Wavetables for DUNE2/3, Blofeld, IL Harmor, Hive and Serum etc: http://charlesdickens.neocities.org/
£10 for lifetime updates including wavetable editor for Windows.
Music: https://soundcloud.com/markholt
£10 for lifetime updates including wavetable editor for Windows.
Music: https://soundcloud.com/markholt