Help Wanted - Casiotone Replica Patcher (alpha) - Full of Bugs
Hey Cycling74 Forums,
I'm a music production student who took a semester of computer music programming, and spent months with my graphic designer friend developing this Full Scale Casiotone MT-100 replica using single cycle samples of the tone bank and samples of ndividual kit pieces from the rhythm bank.
After a few months break, I am over the frustration and exhaustion my effort into this caused. I'd really like to get it finished, and we have plans to place an oscilloscope graphic on top that will display the waveforms by default, and feature an arpeggiator for the tone bank and step sequencer for the rhythm bank.
My questions are:
I sampled each C at different loudness levels (my mistake, has to be done in multiple sessions) thus, must sample them all again. Is there a more efficient way to record and cut single cycle waveforms than recording the entire envelope of the note for four beats, and using "slice at zero crossing" in audacity at the cleanest cycle?
I know my high CPU usage is likely due to the abundance of poly~ objects, but I haven't found a work around that will respond to the tonebank buttons being selected, and can incorporate all of my samples (while altering playback speed to change pitch). Are there any more CPU-efficient means of playback, that will also allow me to edit the envelopes? Grooveduck and ramps, pong, etc. haven't been adequate solutions for the clicks and pops either, I'd love some more insight on fixing that. Also -- are my Rhythm Bank presets programmed in an efficient manner? I intend to program the accompaniment in similar fashion, using makenote or a similar object triggering a tonebank patch -- would that be viable?
Can anyone who recognizes this Casiotone or understands how these keyboards work better advise on how I might program the "Smith chord" aka Casiochord (some sort of chord trigger) that seems to respond differently when a key is held while a new one is pressed in "fingered" and "on" mode?
Graphically, I was able to get the keyboard body 1:1 compared to the physical keyboard, but I'm having issues getting the keys uniform. Is there any way I can force their size? Also, is there a way to make the EQ function knob full length, but the proper width for its slot? Is there any programming I can add to force-adjust the window size or lock the keyboard in it so it's always full width/fully visible in the window and smaller screens than mine don't need to horizontally scroll?
Lastly... Say we finish this, and get to the export stage... I was told to open the patch on Max 5 in our lab and export to vst via pluggo. Is there anything in my programming that wouldn't be compatible? If I wanted to get this to AU, are there any easy wrappers/workarounds from VST? .Exe and .App, just open in Windows/Mac and compile right? I was told I might need to go to gen level and get c++ code to do all of that (at least plugins) but feel fairly incapable of doing any of those things.
Sorry for all the questions, and especially that this patch is crashing on start up / when audio is turned on... My current work computer is offline, so I haven't been able to get any revisions up. It should run (very slowly) with a sample rate of 44,100 and a vector size of 2048.
I really appreciate your guys' help... We are both very hopeful to finish this.
the question after the compatibility with pluggo is identically with the question after the compatibility with max 5.
open main patch in max 5 and see if there is any external object reported missing in the console. if yes, try to replace them.
about the single cycle stuff, arent they all of the same length? then why not calculate how many samples that is and cut them right in max?