GP32 Softstudio For Gp32


doogle

Still Fresh
Joined
Oct 27, 2004
Messages
6
Right.. Didn't want to announce this yet (surefire way to doom a project), but I really need some input...

I've started working on a SoftStudio for the GP32. So far I've got a simple demo that plays out an 8 bar 'song' using a sampler generator and 2 filters with automation on the filters. Just a crappy beat, dodgy arpeggiated bassline and a cheesy roll :)

I've got the following parts working:

note and automation sequencing
patterns (including the song as a pattern)
generator and effect 'plugins'
effects channels
mixer (ok, so it's not really like a mixer as channels don't have their own volume, pan etc. yet, but it mixes all generators and effects on each channel (+ master channel))
audio 'drivers' for GP32 and Windows (so I can test it on my PC)
playing time (not mixing time... god that took longer than it should've!)
sampler that can load 16bit and 8bit .wav files (no envelope, looping or other features yet)
a fixed-point resonant filter using a lookup table for the precalculated values
a simple delay (actually using the algo from the VST SDK example :)

I'm very much used to FL Studio, so I've been incredibly influenced by it. This is probably mainly noticable in the way the effects channels work.

I've got loads of ideas for features and optimisations inside the audio engine, but I feel I've reached the point where I should start developing the GUI. I haven't developed a GUI toolkit yet, but I think that the look-and-feel of the GUI will dictate, to some extent, the internal workings of the GUI toolkit.

So here lies the problem... I absolutely suck at GUIs, and have the artistic ability of a squashed cockroach (whose crayons have all been broken). I'm much more of a command line kinda guy, so I usually don't bother making GUIs unless I absolutely have to. And of course in this case, I do.

So if anyone has any comments or suggestions for the GUI (or indeed the audio engine), please let me know. Of course if anyone can contribute creatively, that would be great, but don't expect results too soon, although I will give immediate feedback. Unfortunately (paid) work and (vague) social life gets in the way of getting this done as quickly as I'd like to.

(This is probably not worth reading--->) I'm currently thinking along the lines of L and R to switch between 'panels' (eg. transport, piano roll, time bar), Start for the menu, Select to navigate between screens (eg. Select on pattern to edit pattern, on Generator to edit generator params), Joystick to switch between controls, A and B to edit control values. Of course inside the piano roll/drum editor, the controls might be different. All very vague, but that reflects how I'm currently feeling about the GUI!

Remember that as screen space is small, rather than having windows on screen, it'll have to be one screen for the piano roll, one screen for the song arrangement, probably even a screen for each generator's and effect's params as well.

I know I could possibly go for a more tracker based approach, but I've never got on with those and I'd much rather make it a more modern SoftStudio type GUI. And as far as the GP32 actually managing to do all this.. I dunno.. I've got more performance out of it than I thought I would and I haven't even begun to recode parts in assembler.

Oh yeah.. Haven't settled on a name for it either.. Suggestions please! Current options are:

GPSS (GamePark SoftStudio or GamePark Sound System)
LoopPad
TunePad

The last two were suggested by a friend cos I keep describing it as a sketchpad for tunes. See, this is all about relieving boredom while travelling to and from work on the train every day (and not having a laptop).

Sorry for this being such a long post!
Doogle
 
Hi! Very nice idea you've got there. I always thought the GP32 would be a nice tool to quickly put some tunes together on the go.
I've tried stuff like nanoloop on my GP32 (via fGB32), and it was really fun to play with during my daily commute.

But you're right, creating a usable interface with 6 buttons and a D pad is quite a challenge, and it will certainly influence the way the app itself works.

Can't really help you there as I have no time to do so, but i'll keep an eye on this anyway :)

I think a screen for each element is the way to go. Maybe you could save L and R for additional functions on each screens, and use them to flip between screens while on the menu. So it would be like: press start, press L or R, press start again. A bit longer to switch screens, but if fast flipping isn't critical then it could be nice to save 2 buttons.

As for the name, I was thinking of SoundPark or something like that (i admit i'm a bit sick of GPSomething names or acronyms)

Anyway, keep us updated
 
this is a great idea,and one i was waiting for a long time.i use a lot of music sotware,so id be more than happy to betatest any version you have!
 
If you can create music i'll enlist you in my GP32 project how's that sound?
it'll need alot of music mostly stuff that's been made all ready so this will make you're job somewhat less difficult.
 
If you can create music i'll enlist you in my GP32 project how's that sound?
it'll need alot of music mostly stuff that's been made all ready so this will make you're job somewhat less difficult.

I've written enough of an audio engine now that it would be silly to just throw that away. Besides, half the reason for doing this is the fun and satisfaction of implementing the sequencing engine, sampler, soft synth and effects. The only bit that isn't so fun is the GUI... but thats just cos I don't like coding GUIs. Plus cos I'm developing as a cross-platform(ish) engine, theres some other projects I want to do that require a sequencing engine, and I just find it more interesting to roll my own.

I don't know what your project is... also a sequencer/softstudio? But it does seem as if a few people are releasing drum machines and other types of sequencers. Thanks for the offer :) , but I want to actually implement this, not just use someone elses software.

Doogle
 
Last edited by a moderator:
Back
Top