login

online now

We have 115 guests and no members online

search

 
Welcome, Guest
Username: Password: Remember me
  • Page:
  • 1

TOPIC: Midi to Soundgin Synth translation

Midi to Soundgin Synth translation 7 years 1 month ago #15

  • flammpunkt
  • flammpunkt's Avatar
Any library that converts midi data to Soundgin Synthesizer data, it seems obvious to do, but I may be thinking too much like an end user.
Last Edit: 5 years 8 months ago by administrator.
The administrator has disabled public write access.

Re: Midi to Soundgin Synth translation 7 years 1 month ago #16

That definitely sounds like a useful bit of code, it was asked for earlier this week. I don't think it would be a huge thing to do for at least note/controller mappings as a start. I hope to get to some software development ASAP once I get the proto boards in and tested. I'll put it on my to do list. To help get started, could you give me an idea of what you might want the software interface to look like?
The administrator has disabled public write access.

Re: Midi to Soundgin Synth translation 7 years 1 month ago #17

  • flammpunkt
  • flammpunkt's Avatar
well I am interested mainly in setting my arduino to receive/generate midi information (either from the computer via usb or from a midi keyboard via a midi in shield on the arduino) and relay it to the soundgin shield directly and then have the soundgin make the apropriate synthesizer sounds, so i'm not sure exactly what you mean by "look," as i intend to use this library as arduino code...

but I guess a VST wrapper that allowed a computer to send midi info directly to the soundgin would "cut out the middle man"
The administrator has disabled public write access.

Re: Midi to Soundgin Synth translation 7 years 4 weeks ago #18

I too would be interested in a beginner example program that would take midi or class compliant usb and translate that to Ginsing. Some of us have the Midi Shield. The code to get midi information would be simple. What to do with it, i.e. which libraries to load, hooks to the ginseng hardware functions etc., may be more difficult for those of us with little or no coding experience.

I would like to see some sample code for every thing the chip is capable of with comments that could be chosen for use by simply un-commenting that section of code. Maybe that would be redundant, I don't know.
The administrator has disabled public write access.

Re: Midi to Soundgin Synth translation 7 years 4 weeks ago #19

It seems to me that an implementation all the way up to a VST plugin would be awesome, but probably outside the scope of what would make sense in the GinSing lib. Starting at the lowest level inside GinSing (poly mode), you have 6 (initially identical) waveform oscillators that have envelope generators. The code interface is very simple in that you have the basic trigger()/release() methods per oscillator (or voice). The voices have frequency (and/or musical note), and so that allows the basic implementation of note on/off.

So the simplest implementation might be a small bit of code that translates midi note on/off into GinSing trigger()/release()/setNote() calls. I could imagine mapping preset commands to waveform selection + envelope configurations ( setWaveform() , setEnvelope() ) to simulate simple instrument presets as well. I would say it would also need to implement voice management (stealing/dropping) within this interface as that is implied to be handled by the midi client. This is kind of what I envision the GinSing midi lib to contain.

I have not used the midi shield, so I don't know what the midi data looks like - I'm guessing is just the midi packet data or similar, which I hope would be easy to translate.

I do apologize for not having more robust examples; I wanted to get the library out there ASAP along with the hardware so that great developers like yall could help steer what features the library should contain. If you have downloaded the source code the methods are fairly well commented, and the sample for poly mode illustrates the basic idea behind making an instrument; check out GinSingPoly.h / GinSingDefs.h and let me know if you have any questions on how that might fit into the vision I have mentioned above.

Thanks again for the discussion - lets keep it going!
The administrator has disabled public write access.

Re: Midi to Soundgin Synth translation 7 years 4 weeks ago #21

This might be of some help - I wrote a simple description of how poly mode works and what functions are available:

poly mode overview
Last Edit: 7 years 4 weeks ago by administrator.
The administrator has disabled public write access.

Re: Midi to Soundgin Synth translation 7 years 4 weeks ago #22

  • flammpunkt
  • flammpunkt's Avatar
Wow!
Really looks like it could be an ultra powerful synth if there was a method of setting each parameter's range of values to accept as equivalent to midi cc# such as (cc1 would read as a value of 1-128) if the software automatically assigned the recived value for cc1 and knew to assign 1-43 = soundgin oscillator 1 sawform, 44-88 as oscillator 1 squarewave, 89-128 as sinewave, cc2 = oscillator2 (same algorythm) etc.

Assigning a cc# value range of 1-128 as equal to whatever the range of each parameter is like that would make this chip darn close to being able to clone my commercial synths. Read the manuals for the soundgin and speakjet quite a while back, and only have a basic understanding of midi (not to mention the only programming languages i know are basic and turbo pascal) but a library of code like that could be immeasurably valuable to me being able to build a working, great sounding synth that could be played by anyone with a cheap midi keyboard.
The administrator has disabled public write access.

Re: Midi to Soundgin Synth translation 7 years 4 weeks ago #23

Yes, I believe there are opportunities to map continuous controller inputs to various functions. Pitch bend and tremolo would be easy to implement as they would just be frequency variations off the base note. Vibrato could also be done, but it would have to be done w/o the use of ADSR because you'd have to set the amplitude explicitly or implement ADSR in software. You should have the bandwidth to pull it off, even at 9600 baud. It would also be interesting to use Portamento ( frequency tracking ) in some cases.

More synth-like functions, such as DCO or PWM would be better suited to non-polyphonic sounds since you'd use other oscillators as modulators. To me the harder thing to tackle would be voice stealing as you only have 6 voices, and if you send 10 note on commands you'd have to figure out which voices you'd drop.
Last Edit: 7 years 4 weeks ago by administrator.
The administrator has disabled public write access.

Re: Midi to Soundgin Synth translation 7 years 4 weeks ago #24

  • flammpunkt
  • flammpunkt's Avatar
well you could always use a chip for each hand. :evil:
I personally just use 3 note chords on left hand and melodic playing on right (so 1-2 at a time) so 6 shouldnt be an issue for me personally. Maybe the "Note stealing" that happens would give the synth it's "personality" (like the analog drift on a Moog or the undefinable phase from the early Roland digital synths.)
The administrator has disabled public write access.

Re: Midi to Soundgin Synth translation 6 years 6 months ago #128

The Link is bad for that.


I am interested in some way to make knobs and switches going. midi may be a good way to go.


-Gordo
The administrator has disabled public write access.

Re: Midi to Soundgin Synth translation 3 years 10 months ago #515

Hello.
Has this been implemented by anybody? I know it's been 3 years since this post but I'm interested in this.
Thanks!
Rob
The administrator has disabled public write access.
  • Page:
  • 1
Time to create page: 0.231 seconds