XHip--Please finish your synth!!

VST, AU, AAX, CLAP, etc. Plugin Virtual Instruments Discussion
Post Reply New Topic
RELATED
PRODUCTS

Post

questions are good! i love questions. you should have noticed by now how much i like talking about my own projects :lol:. always long-winded answers to everything containing vast amounts of information.

i can implement that behaviour fairly easy,i just implemented it this way since someone requested it and it wasnt capable of that, so i wanted to do it in order to make sure it worked. we can do just about anything with overlay (always-on-top) and background (always behind) layers now. the dropbox isnt specifc to what can be held inside the "drop" control. in this case it is a region with a 3d effect, containing 16 textboxes with the letters, but it can be _anything_. it is possible to have the dropbox control open and close only when it is clicked, making it like a window. i can also make it possible to drag it around, or make the down-arrow the only possible way to open/close the drop meaning it will have pretty full window behaviour.

so remember absolutely anything can go in that drop window, anything can also go in the dropbox control. currently i'm actually using a region with 3d effect, a textbox and an imagebox (bitmap) for the arrow. the arrow is automatically drawn so it isnt nessicary to store a bitmap for it. anything that can be drawn by xhip anywhere on the gui can be drawn into an offscreen bitmap. anything that can be placed anywhere in the main gui window can be placed in any sub-window, which includes any type of control. the base object called a "frame" is abstract and can contain other "frame" objects. this means any object can contain any other object. i've recently added a background (drawn before everything else) and overlay (drawn after) list of objects to the base frame object. events like the mouse and keyboard are not sent to the background and overlay, so they are only intended to display graphics.

if you prefer your gui to have that behaviour, that is the behaviour it will have of course. it might be a good idea for us to use the config/ini to have the other behaviour selected by the user though since it was requested.
Are Waveshaper Symmetry and Keytracking going to be implemented?
- i dont know yet, if i knew i'd implement them :)

just leave them off the gui. it doesnt matter if the gui you do lacks full functionality, that is the good thing about the way xhip is designed. you can ignore the 2nd osc for example and xhip will still work perfectly. in the gui code i would just set to always disable the 2nd osc. the gui code controls loading patches, banks and other files, so the patch parameters can be filtered by the gui. the gui is a "control" layer for the synth remember, so the synth is owned by the gui. the gui has absolute control - it can do anything you want it to.
Will initial phase for oscillators/LFOs be available as parameters?
i have not decided yet. i think it will be better to remove the inital phase options completely once the event-routing system is working since it will be possible to use it for those purposes instead - with much greater flexibility.
Will sample editing be per oscillator or per sample?
samples are stored in a sample-bank, not by the oscillators or by the patches. so it will be per-sample. it will be easy of course to create duplicate samples when editing with maybe a "duplicate pcm" button or something, so that sample can be edited while maintaining the original. there are problems with the current pcm system, samples should be selected by some id code, not by their position in the sample-bank. i've considered using filenames and other things but i have not decided on the best solution yet.
Is there a reason why the oscillators' Invert controls are in the mixer section? Would it be better to put them attached to each oscillator? And do they work with PCM waves?
they're in the mixer because they adjust the mixer amplitdes, it makes most sense this way. the oscillators are unchanged. yes, the invert controls work with every signal because they simply change the amplitude of the mixer to negative range. so they switch osca * amplitudea into osca * (-amplitudea). you should notice the parameter-filter actually is applied on this, so when you use the switch you should hear the signal quickly fade out and then fade back in inverted.
Do negative values in Pulse Width have a meaning when the waveform is ramp or triangle?
no, they do not at this time. this is a kludge and it should really be changed. i was thinking maybe we could use a oscillator panel which changes it's contents based upon which waveform is selected. for now it doesnt matter, we can always make changes as changes are made to xhip. our only major concern with the guis will be with beta releases which occur infrequently, so it isnt something we need to worry about. the default auto-generated gui needs changes to be made sometimes too like when the parameters no longer fit into the panels i allocated for them. i've changed it several times over it's lifetime so far. i just did not want to develop a complex discrete gui since i would need to make more changes when testing - when testing i prefer to immediately have the gui update itself so i can concentrate on the code i'm working on instead of worrying about the gui.
What does Reset in Envelope Trigger do?
it resets the envelope position to zero on a new note. this will of course make very loud clicks, but it is required if you want the envelope to be reproduced exactly the same way every time. i added several new options to allow new notes to reproduce perfectly every time for drum sounds and others as requested by.. well, i cant remember who requested it, was it brok? have a look back a few pages and you'll see it.
Does Poly 1 mode make sense?
yes, in poly 1 mode the polyphonic options for glide apply instead of the monophonic options. every new note retriggers, and old notes are not remembered. only the newest note plays, and after another note is played it is the only one active. if you play C D E and release D, then release E, in monophonic mode you will hear C. in poly 1, all the notes will be shut off.
xhip is always changing, etc
- not an exact quote :lol:

i know, this sucks. this is what i was refering to when i was talking about the dfficulties of taking on such a project. my advice is, do not stress yourself over issues which are not important. the current design is pretty stable, and we can of course discuss things when you have questions or issues. what you should do is try to implement the things you know are in xhip already, already used and well understood. leaving things out of the gui isnt a problem, if they're features like the waveshaper symetry nobody will notice since i have not implemented that yet anyway.

once we have a good gui working, we can always go back and make minor (or even major!) changes. i do not think adding or subtracting a control in some places will create major issues for your design. this is the constant engineering problem every software developer will face, the problem of how to make refactorization most easy, or to avoid it as much as possible. it isnt possible to completely avoid it, if it were, there would be so such thing as software bugs, only one version (windows 1.0) of every peice of software. this of course doesnt just apply to software.. imagine the horrors of a city-works engineer in a large city as entire districts of his/her city are reconstructed in new forms every year.

Post

aciddose wrote:i added several new options to allow new notes to reproduce perfectly every time for drum sounds and others as requested by.. well, i cant remember who requested it, was it brok? have a look back a few pages and you'll see it.
yes, it was me ... like i said, a big enhancement, very underrated, but once realized what it can do, it's indispensably for a lot of uses ...
same to the supersaw-count we've been talking about ... ;)
regards,
brok landers
BIGTONEsounddesign
gear is as good as the innovation behind it-the man

Post

brok, how about if i quickly make it so only 7 oscs (or what number do you want?) are used when the pw slider is negative? that'll be a quick temp solution until i add the other stuff.

Post

i don't think that'll help ... just take your time and think about my solution, it's not urgent ... i'm not requesting this for only my particular needs, i just want to help make xhipsynth a synth that delivers the underesthimated small but very neccesary things too, as they're often forgotten ... in the end the sounds that are done with it have to convince, and when it's ready, i think xhipsynth will get some serious sounds done by me over the time, which i most likely will contribute to the public ... then this will be important for me, but to others it will also be important ...
so no hurry ...
in general:
if i suggest to implement something, it's well thought over and mostly based on a lot of experiance (blabla ;) ), and, stuff i request is mostly no astronomic unrealistic stuff ... it mostly comes from my work as a sounddesigner, and some stuff is just not beeing paid too much respect to, as a lot of people just don't know what can easily help to make the sound better ... they just hear the sound, tweaking as long as possible, and then they'll reach a point where the sound is good "somehow" ... but the point is, it could be way easier to realize a certain sound, when the feature is there, cos one will find out very fast what the feature is doing while tweaking it ...
so again, just relax, put it on the list, and implement it when the time is there ... if you at all wanna do so ... :)

btw, can you maybe limk me to the env-filter thread? i can't find it anymore ... i could post it here, but in a matter of correctness i'd better post it into the respective thread ... ;)
regards,
brok landers
BIGTONEsounddesign
gear is as good as the innovation behind it-the man

Post

xhips n fish for you, pwnin' the pwnage with pwnsauce.

http://www.zshare.net/audio/xhipsnfish-mp3.html

just four xhips, no fx.
FREE MUSIC NO MONEY DOWN
http://joeyhoney.blogspot.com/

Post

bengeorge wrote:xhips n fish for you, pwnin' the pwnage with pwnsauce.

http://www.zshare.net/audio/xhipsnfish-mp3.html

just four xhips, no fx.
clickity click click click
[====[\\\\\\\\]>------,

Ay caramba !

Post

i didnt notice it wasnt on the todo list - i'll add it.

http://www.kvraudio.com/forum/viewtopic ... c&start=45

beng; totally awesome. reminds me of a number of chiptunes. its funny that i actually initially intended xhip to be used for this specific set of timbres. it does it really well. the 'chip' in the name "eXtended cHIP"is still there i guess.

i wish i could get the tracker working good again.. damn i suck at composing in a piano roll. other trackers seem to be lame, i've tried a few :(

i can play back some stuff using it though.
http://xhip.cjb.net/temp/public/extendedchipsynth.mp3
http://xhip.cjb.net/temp/public/extende ... diddle.mp3

hah.. actually maybe the world is a better place without me having my tracker working.

Post

yay, i made retrigger work :hyper:

http://xhip.cjb.net/temp/public/cpufunk.mp3

rofl, xhiptracker has ten different kinds of arpeggio :O

per sixteenth (aka row), triads entered in the format xAB. A and B are hexidecimal, x is the type.

types are:
six-up
three-up
four-updown
six-down
three-down
three-up-octave-three-up
three-down-octave-three-down
three-up-twooctave-three-up
three-down-twooctave-three-down
random

:hyper:

Post

wtf! how did i miss the xhip_filter?! its teh pwnsauce!

xhip ftw!

david v goliath in 1337speak
FREE MUSIC NO MONEY DOWN
http://joeyhoney.blogspot.com/

Post

xhiptracker what? where? hey? link?
FREE MUSIC NO MONEY DOWN
http://joeyhoney.blogspot.com/

Post

it isnt in a usable state. so.. i do have this, an older version that almost-works.

http://xhip.cjb.net/temp/public/archive/xhiptracker.zip

press f9 for a shell, type "load song garbage" and press enter. press f9 again, then press f5 to play, f8 to stop. that is all the help i'll offer since that binary is from 9/28/2003

the whole dir of everything i have from that time (everything i DO have.. most of it is long erased) is here http://xhip.cjb.net/temp/public/wholetrackerthing.zip

a shame in some ways, but i have erased my whole mp3s dir several times since 1998, and that always feels like a shame after i do it too. probably because i havent had a chance to hear how terrible the stuff was again since then :lol:

Post

http://xhip.cjb.net/xhip/releases/v0/b6 ... 6.11.9.dll

0.6.11.9

- fixed denormal issue with highpass on output
- added options to resync several parts of xhip on note-on
- added slider to control page for adjustment of unison saws for the 'supersaw'.
- improved gui even more, you might notice many small differences
- fixed loading of "class files", registry database files for gui/other configuration
- experimenting with changes to the default gui layout. will be creating a new auto-generated gui with all controls on one screen soon. for now, i have replaced on/off controls with a textbox/checkbox combo.
- may have forgotten something. seems stable again, this version is usable for everyone.

Post

ad; is there an option to stop dragging/dropping of the blocks of the UI? like i always miss and click on the container box and drag shit on top of other shit. drives me nuts :)

Post

i only enabled that in one version.. none of the other versions had it enabled, including this one. you cant move the boxes here, they're all set fixed = 1.

Post

Image

kvr-flavored xhip :O

i should really implement the whole of the configuration system so that we can all make our own 'skins'. you can even change the shading of different elements. i have to define more styles, but as you can see in this one i'm using the basic "3d" effect instead of a shade. once i finish what i'm doing with the gui elements, anything with a background will own a "background" element, meaning you'll be able to configure with the same options any form of background. anything with text will have a "text" element, same thing, you'll be able to change font, colors, highlighting, all the styles available for text.

i need to get the config layers working too, so that you'll be able to do

Code: Select all

text
{
 yadda = whatever;
}

pages
{
 background
 {
  yadda = somethingelse;
 }
 oscillators
 {
  slider
 { 
  this = that;  
  }
 }
}
the configuration at each step will fall back to the last stage until it finds what it is looking for. so if you have the text in the sliders, it'll find no entry for "text" in "slider" or in "oscillators" or "pages", but it'll then find "text" defined at the root level and use that.

Post Reply

Return to “Instruments”