Jump to content
Please note: You can easily log in to MPN using your Facebook account!

Really, *nobody* made a CP4 software utility yet ?!


Theo Verelst

Recommended Posts

  • Replies 35
  • Created
  • Last Reply
Write one. You can become the John Melas of the CP4. The editable processes may be limited compared to the Motif but if it is at all useful you could probably sell for 30-35 Euros each. The Motif waveform editor is 60 EUR

"It doesn't have to be difficult to be cool" - Mitch Towne

 

"A great musician can bring tears to your eyes!!!

So can a auto Mechanic." - Stokes Hunt

 

Link to comment
Share on other sites

Yeah yeah, ok. Hmm, I did make commercial Midi software long ago, and there must be some packages around that existed in the 90s already to quickly define a midi editor with some sysex request/response messages and some editable fields and knobs on an automated graphical interface.

 

I just figured some handy programmers would have made a nice full screen parameter overview for the machine, preferably with the option to change programs in performances from other performances or a database so that you can chose the effects that are active in a layer. To compensate for the lack of the ability to store named programs and named effects (the few provided effects presets aren't very useful to me).

 

Would the wave editor maker get a lot of turnover? Yamaha Motif series is one of the bigger synth markets, but would he sell thousands of copies in this nerdy keyboard world ?

 

I'm sure there would be Open Source programmers willing to make a nice editor for the CP4 that allows deep editing of it's internals, if only the Midi protocol existed (or made available with a OS upgrade)!

 

T.V.

Link to comment
Share on other sites

I doubt there will ever be "deep editing" of CP4 voices. That'd sure be nice, though. It might be technically feasible, but even if it was, Marketing would probably put a stop to it. You want a Motif? Buy a Motif!

 

If I don't land another contract after my current one expires, I might give it a go while looking for work.

Link to comment
Share on other sites

I might also spend some time on a CP4 librarian.

 

If there are Yamaha dudes hanging out here who can share technical info, that would make it a lot more likely to happen. I can sign an NDA....PM me. :D

 

Wes

 

Hammond: L111, M100, M3, BC, CV, Franken CV, A100, D152, C3, B3

Leslie: 710, 760, 51C, 147, 145, 122, 22H, 31H

Yamaha: CP4, DGX-620, DX7II-FD-E!, PF85, DX9

Roland: VR-09, RD-800

 

Link to comment
Share on other sites

I didn't check the MIDI spec lately, IIRC the message formats are there, I might have a look at it myself.

 

The normal, traditional Midi connected with preferably for me a Linux (or android ?) machine would be fine: no hum and enough speed to send over the limited parameter set involved in most of the menus.

 

And yeah, well, and I'm not quite sure the architecture is exactly a Motif: the Spectral Component Modeling is quite powerful, up to the point that some of my latest edits are getting strong and deep enough, which I'm not sure a Motif could do.

 

My main thing of the moment is that I'd like to use effect settings I've made with other sounds, so I load in another program for a layer, leaving the global effect settings the way they are, and that new sound in the layer is then to preserve the layer-effect types and settings from the previous program in that layer, to scroll through sounds with the same effects remaining effective. Maybe a simple midi request challenge with a storing of some sysex or parameters, and a resend of the effects and it's settings after a layer level program change would be enough. Sort of like changing a layer in a Kurzweil Setup or what is it a again, a Roland Multi, with effect override for that layer in effect.

 

T.V.

Link to comment
Share on other sites

I am much more interested in the formats of the files on the USB sticks. Running a 150' MIDI cable from my keyboard room to my computer has limited appeal. The tool I want most is a librarian to organize performances quickly, either for upcoming gigs to share with other users online. Editing performances is a secondary concern, I can use the CP4 for that.

 

It is likely that the data on USB is very similar to the MIDI bulk dump data, so that would obviously be the place to start.

 

Based on the MIDI data chart (which pays typographic hommage to the DX7's manual!) I think what you want to do should be relatively easy to accomplish.

 

Wes

Hammond: L111, M100, M3, BC, CV, Franken CV, A100, D152, C3, B3

Leslie: 710, 760, 51C, 147, 145, 122, 22H, 31H

Yamaha: CP4, DGX-620, DX7II-FD-E!, PF85, DX9

Roland: VR-09, RD-800

 

Link to comment
Share on other sites

  • 3 months later...
My main thing of the moment is that I'd like to use effect settings I've made with other sounds, so I load in another program for a layer, leaving the global effect settings the way they are, and that new sound in the layer is then to preserve the layer-effect types and settings from the previous program in that layer, to scroll through sounds with the same effects remaining effective.
Me too. For example, once I've programmed the ideal Leslie effect, whenever I build an organ preset I'll want to apply that same Leslie effect. The CP4 by itself lets us copy a part from another performance, but not just the effects from a performance. There's no way to save an FX setup.

 

You can pull up a part from a performance with the desired FX, and then edit the voice. But you can't play mix & match, between voices and FX that are altered from the presets.

 

Wes, I'd find file-based utilities useful as well. For example, I had saved two different total setups but couldn't remember which was later, and thought the later one might even be missing some changes to the earlier one. Sadly, the timestamps on the two were the same, as are all files created on the CP4 since it doesn't have a time-of-day clock. Fortunately I remembered the last thing I did and was able to figure it out.

 

But yeah, it'd be nice, and hopefully the format would be a trivial envelope around the MIDI data dump. (That's a testable hypothesis!)

Link to comment
Share on other sites

Having been into serious software since about 12 years old, having worked in it in a few ways, done presentations and some open source work, even FOS hardware, I can safely say I just haven't felt like doing that job I mentioned (yet).

 

Well, it's now a matter of choosing your weapons, deciding on the scope of the little program, or maybe, testing some basic stuff out. I've thought about a simplistic coupling of (Linux, but Windows shouldn't overly hard either) Tcl(/Tk) with a basic MIDI handler, so as to experiment a bit.

 

T.

 

Link to comment
Share on other sites

If I do it, it'll be in Java, which I just happen to like, and is portable. Plus later maybe I can port it to Android (I'd also like to learn how to write an Android app). Clearly, a small phone screen isn't ideal for all the purposes of this kind of program, but it could be very handy for some of it.

 

I'd start with meager ambitions and grow it as desired.

 

I wouldn't sell it. I might put it up on GitHub, which is something I'd like to put on my resume anyway.

Link to comment
Share on other sites

Having tried the Android compiler suite and the coupling with a pad device, I can say it's reasonably doable, though I doubt the simulator will allow MIDI to be tested any way at all, In fact the few Android devices I've access to would need some sort of MIDI connection to be faked or constructed via the network.

 

There is a compiler in the recent standard Android compile chain (it's been a while since I tested some examples and a few changed ones on an actual device), so it should be possible to use that for critical code, but that influences the portability.

 

If I'd make a Tcl/Tk simple sound manager program, I could also run it on the Android, and maybe use a (software) socket to an embedded device or a Intel machine with USB MIDI interface.

 

T.

Link to comment
Share on other sites

Are there any iOS (ObjectiveC) programmer interested ?

I can contribute some MIDI infrastructure code and basic application tubing.

If i end up buying CP4 (on my short list, waiting for some payment to pass to the final choose and act) i also can contribute coding time :->

 

Maurizio

Nord Wave 2, Nord Electro 6D 61,, Rameau upright,  Hammond Pro44H Melodica.

Too many Arturia, NI and AAS plugins

http://www.barbogio.org/

https://barbogio.bandcamp.com/follow_me

 

Link to comment
Share on other sites

Are there any iOS (ObjectiveC) programmer interested ?

I can contribute some MIDI infrastructure code and basic application tubing.

If i end up buying CP4 (on my short list, waiting for some payment to pass to the final choose and act) i also can contribute coding time :->

 

Maurizio

 

To avoid nasty doubts: all this for a non commercial project to be distributed for free in the App Store :->

 

Maurizio

Nord Wave 2, Nord Electro 6D 61,, Rameau upright,  Hammond Pro44H Melodica.

Too many Arturia, NI and AAS plugins

http://www.barbogio.org/

https://barbogio.bandcamp.com/follow_me

 

Link to comment
Share on other sites

Can't run Java on iOS? :(
Hell, no.

"I'm so crazy, I don't know this is impossible! Hoo hoo!" - Daffy Duck

 

"The good news is that once you start piano you never have to worry about getting laid again. More time to practice!" - MOI

Link to comment
Share on other sites

I'm grateful. I don't have Java on my Macs, either. I don't have time to plug those holes.

"I'm so crazy, I don't know this is impossible! Hoo hoo!" - Daffy Duck

 

"The good news is that once you start piano you never have to worry about getting laid again. More time to practice!" - MOI

Link to comment
Share on other sites

It happens that application security is currently what allows me to get a salary each month, and, between other, to be able to pay my keyboard toys and music teachers :->.

 

In general, Java code is a lot of a hell safer than Objective-C/C code, because the Java execution environment take care of a number of things the developers do not need to worry about (technically, Java is memory safe and type safe). The problem is that when you put the Java execution environment in a browser and execute code coming from the Internet (thing that you usually do not do with ObjectiveC code, for a reason), there a number of problems and ways to screw up that are specific to this situation, that brings to all the security problems we hear about, that are specific to Java in the Browser.

 

Going back to the original subject, there are frameworks and ways to run under some form Java code under iOS, but i am not sure you could get the integration you want with native frameworks like Core MIDI. Anyway, i have an objective C code base that i can reuse, no Java code, sorry :->.

 

If i buy a CP4 and start such a project, i'll repost here :->.

 

Maurizio

Nord Wave 2, Nord Electro 6D 61,, Rameau upright,  Hammond Pro44H Melodica.

Too many Arturia, NI and AAS plugins

http://www.barbogio.org/

https://barbogio.bandcamp.com/follow_me

 

Link to comment
Share on other sites

Thanks, Maurizio. If I start something I'll start a new thread on it. Saw your resume on LinkedIn; it's impressive. If I do this, your advice would be greatly appreciated! But I suspect instead I'll be doing open source work on OpenStack/Nova. Less fun but better for my career.
Link to comment
Share on other sites

Maybe that's what I'm talking about (I've been out of the real [non-web] code game for ages), that Java is most often used as an executable in the browser and it seems to have more problems than it's worth in that regard. I definitely don't want Java fired up by some malicious web site especially without me even realizing it, and it's easier to just not have on any of my devices. I don't miss it.

 

ALL iOS stuff is supposed to be sandboxed, that's been a big selling point all along. The extensions they allowed in iOS 8 were a big deal because of that. The Mac has been going in that direction for a while too, but slowly.

"I'm so crazy, I don't know this is impossible! Hoo hoo!" - Daffy Duck

 

"The good news is that once you start piano you never have to worry about getting laid again. More time to practice!" - MOI

Link to comment
Share on other sites

I recall Objective C from before the "NeXT" computer, and long before the OS versions, but prefer to be a bit more accurate: the language problem has 3 sides to it. The language can be compiled for intermediate code or not, there is to be some connection with the outside world, which is usually not as safe as the whole pro level Unix should have been. And then there's the program distribution program.

 

Download a program, and you can be in trouble with it, because it can do system things that might be out of control and even unknown to the user. So on Android you run code that's been verified before it ends up in the play-store (or whatever they call it now) which is also intermediate code, which makes shielding the system off without a fool proof multi-user operating system with proper process memory management and a kernel with no holes and perfect file system possible.

 

Compiling or Java aren't the only option, scripting with an interpreted language is another.

 

T.

 

Link to comment
Share on other sites

Thanks, Maurizio. If I start something I'll start a new thread on it. Saw your resume on LinkedIn; it's impressive.

 

Just because i haven't put my musical CV on linkedin; you would be less impressed ;->

 

In any case, feel free to contact me if you need (or anybody) need an hand with such software

 

Nord Wave 2, Nord Electro 6D 61,, Rameau upright,  Hammond Pro44H Melodica.

Too many Arturia, NI and AAS plugins

http://www.barbogio.org/

https://barbogio.bandcamp.com/follow_me

 

Link to comment
Share on other sites

  • 2 weeks later...

I was looking at the Midi implementation manual and saw it's possible to change layer 1 2,3's midi channel over Midi, and also to put in "lowest" and "highest" note parameters, according to the manual (IIRC I looked it up the day before yesterday) those are "midi only" parameters. Would that interest somebody ?

 

T.

Link to comment
Share on other sites

This is going on the back burner for me.

 

I'm getting started working on open source OpenStack. Whee, for the first time I'm running Linux (Ubuntu) on my laptop, in VirtualBox. What I'm working on (OpenStack Nova) manages virtual computers running on a set of Linux boxes, so I'll have a set of virtual computers running on a set of virtual computers running on a real computer. Nerdy enough?

Link to comment
Share on other sites

Linux I was on early, and I use it more than all others, but I have no experience with OpenStack. I am a bit familiar with advanced unix/linux communication and programming, as well as the ideas present in process and processor control, as well as parallel programming on a heterogeneous farm, and the issues at hand, I know OS is popular, but I think I would not want to aim at a job in it.

 

It's that I recall some of the limitations of the CP4, so I read the Midi specs and thought there might be some solutions. I'll probably connect a Tcl/Tk program up with a very small "normal" program doing the midi, over a socket.

 

T.

Link to comment
Share on other sites

Once I've got something maybe a new thread, but I've looked at the Linux midi programming (which makes sense and isn't the way I thoroughly enjoy at the same time), and have like I wanted a simple Tcl/Tk script for testing some sliders and buttons, connected over a network connection with a small program that can connect up with midi programs and devices.

 

Is there anything you guys feel is important to think about making ? I'm just going to push the same effect-2 "EQ" settings in every performance I run through when that is easy enough, but maybe there's something else I can think about implementing (besides the for me obvious scaffolding for a patch editing program, for the few parameters that are available, and effect editing) ?

 

T.

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...