SYNTH ZONE
Visit The Bar For Casual Discussion
Page 1 of 9 1 2 3 4 5 6 7 8 9 >
Topic Options
#365821 - 04/30/13 08:57 AM trying to write a software PC based arranger
stephen.hazel Offline
Member

Registered: 04/29/13
Posts: 45
Loc: WA, USA
Hello folks,

I'm new in town.
Finally got on here after MUCH bugging of Nigel smile

I have a pet piano practice program that's kind of my life's work. And I'm trying to add style playing to it's list of features (as my Yamaha CP-33 won't do it in hardware)

I have a pretty good understanding of
- yamaha style file format (thanks to JorgenS,PeterW)
- chord qualities (and yamaha's list of defined ones)
- midi software in general (see my pet in the sig)

What I'm not understanding is how the notes of the style are transposed into the notes of the chord you PLAY.

I understand that the style file is keysig=C based and you transpose from C to the root of the PLAYED chord.
And I get that the style chord channel is based on a particular chord quality - usually CMaj7 so you need to scoot around the 1,3,5,7 chordals.

But I don't understand what to do when:
1) the style note isn't on the 1,3,5 or 7 of the style chord quality.

2) the played chord type doesn't INCLUDE a chordal of the style note. For example, you have a 4 note style with CMaj7 based C,E,G,B. And you PLAY a Cmaj. The B gets totally scooted to a new chordal as the played chord has no 7th. I can see how you want to play all style notes on SOME note to keep the rhythm, etc. But I don't understand how the new note octave,step is picked.

If anybody can help me with this, I'd greatly appreciate it !!
_________________________
Yep, still workin on ole http://PianoCheetah.com

Top
#365823 - 04/30/13 09:09 AM Re: trying to write a software PC based arranger [Re: stephen.hazel]
Dnj Offline
Senior Member

Registered: 09/21/00
Posts: 43703

Top
#365825 - 04/30/13 09:16 AM Re: trying to write a software PC based arranger [Re: stephen.hazel]
stephen.hazel Offline
Member

Registered: 04/29/13
Posts: 45
Loc: WA, USA
Well, I'm looking for the logic of how a program like vArranger works.

Not looking for one to just use. Looking to code my own.

So ideally somebody who has composed a style can help me.
By telling me how they write arrangements in a chord channel so that they know it will sound good when transposed by the arranger.

My big problem I need to understand is when the style has a 5 notes chord and the PLAYED chord is major (only 3 notes) - how does the arranger software pick the new octave/halfstep for the extra 2 notes.


Edited by stephen.hazel (04/30/13 09:20 AM)
_________________________
Yep, still workin on ole http://PianoCheetah.com

Top
#365827 - 04/30/13 10:09 AM Re: trying to write a software PC based arranger [Re: stephen.hazel]
miden Offline
Senior Member

Registered: 01/31/06
Posts: 3354
Loc: The World
Welcome to the forum Stephen smile Sorry about your less than salubrious first reply above.... wink

The number of notes in the chord is not really relevant, as the algorithms are looking at individual notes played rather than a specific preset chord structure.

These are then analysed by the NTT (or Note Transposition Tables) which reads each note you are playing - even if it is 8 notes! - and transposes each one according to the "rules" set. IE Close harmony, parallel, moveable root, fixed root etc.

So it moves the notes you are playing from the style programmed C based patterns to the chord you ARE playing. If you check out the Recognised Chord charts from the manuals of any of the arranger manufacturers you will see how many different chord structures are recognised.

Dennis

Top
#365828 - 04/30/13 10:51 AM Re: trying to write a software PC based arranger [Re: stephen.hazel]
stephen.hazel Offline
Member

Registered: 04/29/13
Posts: 45
Loc: WA, USA
Hiya Dennis,

There are some chord trigger modes that mix your triggering with the output, but in general i THINK that your left hand ONLY picks a chord root and quality. The chord is first transposed from C to that root, but from what I've seen in some experiments, ALL of the style notes ALWAYS go out.

If there's an exact match between the chordal (1,3,5,7) in the style's channel's chord quality with the chord quality you PLAY, then the style notes go out with just the root transpose plus 3,5,7 adjustments due to chord type.

BUT if the style channel was recorded with CMaj7 C,E,G,B and you play a Cmajor, then since the 7 is extra, it gets mapped to a 1. That B gets remapped to the next C up.

(Then voice leading logic is thrown in on top).

Let's take a look at a relatively tricky example:
style channel is based on Cmin7(11) and has these notes:
3Eb 3F 3Bb(3,4,7)

now you play Cmaj, Cmin, Cadd9.

Major has the 3, but it's adjusted to a M3 instead of existing m3 so 3Eb=>3e
No 4 or 7 in Cmaj, so the 3f=>3g(4=>5) and the 3Bb=>4c(7=>1)

When Cminor is played, the same thing happens, but the 3 is left minor.

Now you play a Cadd9.
3Eb adjusts to major again.
3F is moved to a 5 again (3F=>3G)

=BUT= the 3Bb is moved to a 4D. (So 7=>2)
How did it decide to skip over the 4c which is IN the played chord???

Maybe that has to do with the voice leading logic?
Hmmmmmm............


Edited by stephen.hazel (04/30/13 10:52 AM)
_________________________
Yep, still workin on ole http://PianoCheetah.com

Top
#365830 - 04/30/13 12:28 PM Re: trying to write a software PC based arranger [Re: stephen.hazel]
stephen.hazel Offline
Member

Registered: 04/29/13
Posts: 45
Loc: WA, USA
I think what I'm gonna do is build an arranger that just redistributes the style notes onto new chordals from "as recorded in style" quality to "as wanted by PLAYED chord" quality in as plain a manner as possible - just pick the next dang chordal up valid in played chord. And see how it sounds. It won't be an identical arrangement to yamaha's. But it'll still sound good per chord quality.

If a style composer happens by later and can fill me in, I'll change my algorithm.

In addition to the weird yamaha "pick next chordal" thing, there are also cases where ONE (or some) of a style's note(s) are duplicated. Not just shifting the chordal, but making a whole new one.

Here's an example:
style channel was plain CMaj7 chord quality with 3g,4b,4e notes

when major chord is played, out come 3g,4c,4e as you'ld expect. As 7 is often hopped to 1

BUT when C79 is played, out comes 3Bb,4c,4e,4d

Where the heck did that extra note come from??? The style only had 3 notes...
_________________________
Yep, still workin on ole http://PianoCheetah.com

Top
#365837 - 04/30/13 09:49 PM Re: trying to write a software PC based arranger [Re: stephen.hazel]
adimatis Offline
Senior Member

Registered: 01/28/05
Posts: 1159
Loc: Oradea, RO
Hi Stephen,

I could only suggest that you try to discuss these and other stuff with people like Dan, that already did work in this area.

For regular users, the technicalities of chord recognition and whatever else might be an unknown or less familiar territory.

Do you need an GUI for the program? I could help you with that... wink
_________________________
Yamaha S770, Studio One 3, EMU 0404USB, ESI, ATH, Dell. And others.

Top
#365838 - 04/30/13 10:50 PM Re: trying to write a software PC based arranger [Re: adimatis]
stephen.hazel Offline
Member

Registered: 04/29/13
Posts: 45
Loc: WA, USA
Originally Posted By: adimatis
suggest that you try to discuss these and other stuff with people like Dan, that already did work in this area.

Do you need an GUI for the program? I could help you with that... wink


Who is Dan?

I'm planning on making this part of my PianoCheetah program. So you do some GUI sorts of things? Have any apps to show? smile

Thanks for your pointers,

...Steve
_________________________
Yep, still workin on ole http://PianoCheetah.com

Top
#365839 - 04/30/13 11:34 PM Re: trying to write a software PC based arranger [Re: stephen.hazel]
miden Offline
Senior Member

Registered: 01/31/06
Posts: 3354
Loc: The World
Send Rikki (rikkisbears) a message - she is an acknowledged whizz on style creation...

Top
#365844 - 05/01/13 08:47 AM Re: trying to write a software PC based arranger [Re: stephen.hazel]
stephen.hazel Offline
Member

Registered: 04/29/13
Posts: 45
Loc: WA, USA
will do smile
_________________________
Yep, still workin on ole http://PianoCheetah.com

Top
#365861 - 05/01/13 05:14 PM Re: trying to write a software PC based arranger [Re: stephen.hazel]
Diki Online   content


Registered: 04/25/05
Posts: 14212
Loc: NW Florida
Maybe walk before you try running?

A full software arranger is a mighty deep project, and Dan has already beaten you to the punch, making your efforts a less than guaranteed commercial success.

However, there's something that many arranger players could use that is FAR easier to program, and quite useful to a broad variety of arranger players... and nobody at ALL currently makes.

How about an add-on Chord Sequencer?

This is basically a program that would sync to the arranger's MIDI clock, scan the NTA channel (the Note to Arranger channel, which outputs whatever Part and Channel is being sent to the chord recognition engine - it's common on most decent arrangers) and on command, loop the input seamlessly with the output. Thus, you hit record WHILE you are playing, the program grabs the chords ONLY of what you play, then when you trigger 'Play', sends them back in again, to take over your LH chores, seamlessly.

Currently, only the PA3x and the BK-9 have one of these, they are incredibly useful for players that have other uses for their LH more than simple repetition of the same chords over and over, and no-one makes a software version so that those of us with arrangers without the feature could easily add it to arrangers we already have.

I would pay good money for this (I'd even buy a Windows notebook to run it on! eek2 ) and I am fairly sure many Yamaha and older arranger users would be very interested.

A full featured software arranger may be a HUGE bite to swallow, but this would give you much experience, target a market segment not already addressed, and give you insight into whether the full project is possible, for you...
_________________________
An arranger is just a tool. What matters is what you build with it..!

Top
#365864 - 05/01/13 06:05 PM Re: trying to write a software PC based arranger [Re: stephen.hazel]
miden Offline
Senior Member

Registered: 01/31/06
Posts: 3354
Loc: The World
yeah, +1 Diki...great suggestion smile

Dennis

Top
#365866 - 05/01/13 06:25 PM Re: trying to write a software PC based arranger [Re: stephen.hazel]
stephen.hazel Offline
Member

Registered: 04/29/13
Posts: 45
Loc: WA, USA
Holy crap - that sounds to me like actual user feedback.
That's a rare and treasured thing. I do appreciate it.

1) I don't need money. My day job pays just fine. I've tried to "market" what I already got and have proven to myself that marketing is harder than writing code.

2) Writing a full fledged arranger might be hard. But doing something somewhat simpler isn't. PianoCheetah already has an ok way to enter chords in time. That plus style files plus arranger logic is pretty much working right now. It doesn't do live chord recognition, but it does a VERY simplified version of what band in a box does. Given some text chords with timestamps and some style files, weave an arrangement of midi. That's in development and a couple weeks from ready for the public. (If the public is interested).

3) So aren't these "chord events" or whatever recordable by your off the shelf midi sequencer? I guess it's time to hit google. But are these control change events? sysex events? It probably wouldn't be too difficult to do something along those lines. But it seems kind of geared for those arranger keyboards, not something I'd probably want in PianoCheetah per se.

So if you wouldn't mind pointing me to some specs for this "chord sequencer" you speak of, that would be great.

In the mean time, gotta go finish my mini band in a box-ISH thingy.
_________________________
Yep, still workin on ole http://PianoCheetah.com

Top
#365867 - 05/01/13 06:26 PM Re: trying to write a software PC based arranger [Re: stephen.hazel]
stephen.hazel Offline
Member

Registered: 04/29/13
Posts: 45
Loc: WA, USA
Oh! So Dan must be the guy who wrote vArranger. Gotcha.
_________________________
Yep, still workin on ole http://PianoCheetah.com

Top
#365869 - 05/01/13 06:40 PM Re: trying to write a software PC based arranger [Re: stephen.hazel]
Diki Online   content


Registered: 04/25/05
Posts: 14212
Loc: NW Florida
They are simply MIDI notes. Nothing as fancy as sys-ex (which you have a very hard time outputting in sync) or controller codes.

Essentially, the arranger itself looks at the MIDI note output of one of the Parts (Chord recognition can be LRW, UPR or both - Whole - depending on Performance setup) called the NTA. The arranger then uses these notes played to feed to the Lookup Tables, where it determines what the chord and root is, depending again on arranger settings. These then get fed off to the NTT (the note transposition tables) where the output voicings are determined by tables that provide the MIDI notes output, depending on input and note range (there is usually a parameter that determines how high or low a chord inversion can be transposed as is, and what should be done with the overflow notes should it exceed that).

But, essentially, a Chord Sequencer doesn't need to bother its head with all that. Simple mirroring of the MIDI note input to output is all that is needed, as the arranger's own NTT's and lookup tables do all the work.

Probably the only complicated thing you'll need to work out is how to truncate notes that hang over the loop boundary, so that the first notes in the loop don't simply ADD to the notes still being played at the end of the loop, but cut them off and play alone.

Hope this gives you some ideas...
_________________________
An arranger is just a tool. What matters is what you build with it..!

Top
#365872 - 05/01/13 07:23 PM Re: trying to write a software PC based arranger [Re: stephen.hazel]
stephen.hazel Offline
Member

Registered: 04/29/13
Posts: 45
Loc: WA, USA
Wait, so the full gui is just a record and play button?

Hit record and it stores notes it receives on the channel into an in memory structure or something.

Hit play and it just sends out the midi it received upon clock pulse events (looping back to start)?

Is there more to it than that?


Edited by stephen.hazel (05/01/13 07:23 PM)
_________________________
Yep, still workin on ole http://PianoCheetah.com

Top
#365873 - 05/01/13 07:33 PM Re: trying to write a software PC based arranger [Re: stephen.hazel]
miden Offline
Senior Member

Registered: 01/31/06
Posts: 3354
Loc: The World
Essentially yes.

The CS records the midi data coming in from the part of the keyboard one is using to drive the arranger engine, and when the playback button is pressed it simply sends "BACK" to the arranger over a specified channel those notes.

So in effect the CS is now "playing the arranger" with those recorded midi notes, which then leaves the player free to play both hands without the need for one hand to be "tied" to generating chords...

Dennis

Top
#365874 - 05/01/13 07:36 PM Re: trying to write a software PC based arranger [Re: stephen.hazel]
miden Offline
Senior Member

Registered: 01/31/06
Posts: 3354
Loc: The World
The CS needs to be able to quantize a bit to account for slight timing glitches from the player, and it also needs to be able to continuously loop for as long as the play is active..

The premise is rather simple but in practice there is some tricky coding needed, especially when it comes to timing.

As you would know from your own experience, there is nothing worse than those chopped of notes at the start of a bar simply becasue a player was a few milliseconds off in playing the chord smile

By the by, I too would be happy to pay for software such as this, very happy smile

Top
#365876 - 05/01/13 07:52 PM Re: trying to write a software PC based arranger [Re: miden]
chasbee Offline
Member

Registered: 01/06/13
Posts: 35
Loc: Bristol UK.
Korg pa600 also has a chord sequencer.

Top
#365878 - 05/01/13 07:53 PM Re: trying to write a software PC based arranger [Re: stephen.hazel]
stephen.hazel Offline
Member

Registered: 04/29/13
Posts: 45
Loc: WA, USA
Hmmm, ok.

Thing is, I don't have an arranger keyboard. Any chance somebody could give me a midi recording of, say 3 chord changes?

This'd be a weird little extra program in the PianoCheetah install. I guess there'd just be an input device+channel picker, output device+channel picker, record and play buttons to start off with. When I get a midi recording I can see what the timer events look like and verify that it's just plain old notes and such that I send/receive.

Very eeeeeeeeeeeenterestin'
_________________________
Yep, still workin on ole http://PianoCheetah.com

Top
#365880 - 05/01/13 08:25 PM Re: trying to write a software PC based arranger [Re: stephen.hazel]
Diki Online   content


Registered: 04/25/05
Posts: 14212
Loc: NW Florida
I would say for operational simplicity, the spacebar to start recording and second tap to start playback would be optimal, then maybe return (or something easy to get to) for Stop of the loop...

I don't think that any CS's ever had input quantization. They basically left it up to you to be accurate enough. Might be nice as an option (with 1/4 through 1/16th resolution), but on the whole, not really important.
_________________________
An arranger is just a tool. What matters is what you build with it..!

Top
#365881 - 05/01/13 09:06 PM Re: trying to write a software PC based arranger [Re: stephen.hazel]
miden Offline
Senior Member

Registered: 01/31/06
Posts: 3354
Loc: The World
The Korg one from memory does to a degree Diki...Well I certainly do not recall any timing glitches with the times I used it, and my timing isn't THAT good wink

I agree that for the most part it would be un-necessary but might be a boon to some ?

D

Top
#365883 - 05/01/13 09:24 PM Re: trying to write a software PC based arranger [Re: stephen.hazel]
Diki Online   content


Registered: 04/25/05
Posts: 14212
Loc: NW Florida
All chord recognition divides its recognition into specific windows. Some to the 1/8th, some to the 1/16th, etc.. But to my knowledge, there's no quantization done to it. You either get it right (and most of us do with no input quantization) or, if you get it wrong the first time, every CS subsequent iteration of the loop had the same exact 'glitch'.

With the problem of syncopated chord changes and variable swing values, I'm not sure exactly how a CS could ever recognize a glitch if it saw one...

The quantization is useful if you are using the CS to generate SMF Parts to be further edited in a sequencer, because you could stop and edit those at your convenience. But during a performance, It's going to be hard to tell a CS in advance what quant value and swing factor you are going to need.

From an early look at the BK-9 manual, it seems some post editing to the CS might be possible, to generate SMF sections for song construction (not 100% sure yet, though) without the tiny glitches in, and if stephen.hazel can manage a simple 'record CS' and 'Load CS' in SMF form, some easy editing might be possible.

But live input quantization I am sure could be left off until the project is working, and more advanced features thought of...
_________________________
An arranger is just a tool. What matters is what you build with it..!

Top
#365884 - 05/01/13 09:33 PM Re: trying to write a software PC based arranger [Re: stephen.hazel]
Diki Online   content


Registered: 04/25/05
Posts: 14212
Loc: NW Florida
BTW, Dennis, there's a big difference between 'heard' and 'unheard' glitches. Most arrangers have a system where the part can receive the wrong chord (and that's what gets sent to the NTA's) but a split second (millisecond) later the correct one gets played late.

Most of them bend instantly the 'wrong' note to be the right note, or play the right note with poly portamento of zero speed (so that envelopes don't get re-triggered) and you are hard pressed to hear anything at all.

Of course, the problem comes when you export said sequence to a DAW, and there are a plethora of tiny little one tick notes, and codes for portamento and new notes with 0 velocity (or whatever system each arranger uses) cluttering up your key and list editors, and making cut and paste a dangerous thing if so much as one of these little code notes get missed... They can be quite a PITA to edit. Here's where post-quantization of the CS would eliminate them all. But I see it as more an offline process than anything that might be practical in live usage.

From years of using CS's live, I always knew to tighten up and concentrate a bit harder on that LH during the CS record cycle. Which, given that you usually lay it down BEFORE you solo your brains out, was never a huge deal..!
_________________________
An arranger is just a tool. What matters is what you build with it..!

Top
#365885 - 05/01/13 10:31 PM Re: trying to write a software PC based arranger [Re: Diki]
TedS Offline
Member

Registered: 04/28/06
Posts: 811
Loc: North Texas, USA
Diki to comment on your last post... I always found a lot of "one tick notes" in the quick (multi track) recordings I made on my Yamaha. The worst is when you don't get the lowest note down first, it sounds like the bass player screwed up! However, at least on my old Pa50 it appeared that Korg was "batching" the chord input. In other words, when I pressed the a note in the chord area it started a logic process where it waits and listens for additional notes for about 25-30 milliseconds. It then sounds the chord based on whatever keys are depressed at the end of that time period. So you're ok as long as you get all of the constituent notes down within about .02 seconds of the first one. You can release unwanted notes too. Thus you have an opportunity to correct your mistakes before they get "on paper."

In a direct comparison this approach feels a little less responsive, but you quickly adjust the timing of your chord input by "leading" the beat a bit more. The result sounds better because there are no smeary portamento sounds, and the recorded score was absolutely clean!

The best of all worlds would be to use Korg's approach but to make the length of this "Note to Arranger input window" *user-adjustable* from zero (real time, limited only by processor speed) to about 50 or 60 ms. (Personally I've never seen a piece where there were more than four chord changes in a measure!)

Stephen maybe your program will be the first one to embrace this feature. Good luck in your endeavor. -Ted


Edited by TedS (05/01/13 10:36 PM)

Top
#365887 - 05/02/13 02:42 AM Re: trying to write a software PC based arranger [Re: stephen.hazel]
Diki Online   content


Registered: 04/25/05
Posts: 14212
Loc: NW Florida
I found that using Pianostyle chord recognition does the best job of avoiding the 'glitches', as the arranger won't even TRY to play a chord until three notes have actually been played (it's usually guessing until the third one goes down in most other systems!). And 'Intelligent' or One Finger systems are the worst, as the arranger might see the root first, decide it's a major chord, then when it sees the minor 3rd, it will then glitch to that. Or whatever you end up playing...

Yes, leading by a hair is optimal, but hard to pull off and lay back the RH. Might be why most arranger user demos always sound a hair 'rushed'. Tough to anticipate with the left hand, but drag and sit back with the right!

TBH, whenever I prepare arranger output for sequencing and subsequent additional work, I always play the tune in full piano mode, as a full but simple piano part. That way, any inversions get played, and I can concentrate fully on simply having both hands push a tiny fraction, sit 'up' on the beat, and avoid most of the glitches...

Then I can add other parts and sounds, and do the solos, in the pocket that best works, independent of what my LH chording had to do.

I think most arrangers now try to do a 1/16th recognition of chord input syncopation... perhaps this might change to a 1/8th at very high tempos (be nice if they did, anyway!), so at a brisk tempo, you had better be on it anyway!
_________________________
An arranger is just a tool. What matters is what you build with it..!

Top
#365904 - 05/02/13 09:17 AM Re: trying to write a software PC based arranger [Re: stephen.hazel]
stephen.hazel Offline
Member

Registered: 04/29/13
Posts: 45
Loc: WA, USA
So do any of you folks have a midi sequencer that'll record all notes and timing events for a period of time?

So I get can get a midi recording of what's coming in?

If not, I'll start on this weird recorder/playerbacker thingy and just have it start off recording any dang thing coming in, without playback for now. Then once I know what to parse out and sync to, I'll add in the playbacker.

A midi recording would get me started faster.
I expect I can get a record-everything-er done in a week or 2. We'll seeeee.
_________________________
Yep, still workin on ole http://PianoCheetah.com

Top
#365906 - 05/02/13 09:37 AM Re: trying to write a software PC based arranger [Re: stephen.hazel]
stephen.hazel Offline
Member

Registered: 04/29/13
Posts: 45
Loc: WA, USA
As a new guy, let me just say that I'm glad I found this place.

I mean, I've been on pianoworld.com and although there are a TON of keyboard players there, I'd almost come to the conclusion that they just don't use midi. I'd say at LEAST 90% of those folk are totally afraid of midi and want nothing to do with it.

This place restores my faith in humanity smile
_________________________
Yep, still workin on ole http://PianoCheetah.com

Top
#365907 - 05/02/13 09:47 AM Re: trying to write a software PC based arranger [Re: stephen.hazel]
stephen.hazel Offline
Member

Registered: 04/29/13
Posts: 45
Loc: WA, USA
Well, I'm making pretty good progress.

I can throw styles through a blues lead sheet of chords and
it comes out pretty decent.

I see some weird really high and really low notes in the results, though.
I see some C9 notes in some styles.
Umm, that's too high for the piano, what the heck are those??

Could just be a bug, though.
I might have somethin for yall to play with by Sun. We'll see.

So do bass tracks and phrase tracks follow the chord note adjustments, too?
Or are they straight transpose to chord root only?

Thanks,

...Steve
_________________________
Yep, still workin on ole http://PianoCheetah.com

Top
#365909 - 05/02/13 09:52 AM Re: trying to write a software PC based arranger [Re: stephen.hazel]
stephen.hazel Offline
Member

Registered: 04/29/13
Posts: 45
Loc: WA, USA
Program name will beeeeeeeeeee......


ReChord.


(sorry smile )
_________________________
Yep, still workin on ole http://PianoCheetah.com

Top
#365911 - 05/02/13 11:00 AM Re: trying to write a software PC based arranger [Re: stephen.hazel]
miden Offline
Senior Member

Registered: 01/31/06
Posts: 3354
Loc: The World
Stephen those high notes are probably drum or percussion parts for a proprietary drum map...what is the base style (brand) you are using?

Also get hold of an app called Midi-Ox (free) as it is brilliant for capturing all midi and sysex data.

AS a rul Bass tracks follow the root, however there can also be slash chords ("On Bass") variations and the user can also set the bas to lowest note of the chord being entered..They sound similar, but are really quite different.

And for anything arranger based they are mandatory imo. Phrase tracks follow the chordal progressions using the same harmony rules mentioned earlier.

It is sounding like you are making good progress...have you had a chance to investigate a CS further? I agree with Diki in that this would be an ideal app to start off with, and it would prove to be quite popular I feel...

Dennis

Top
#365912 - 05/02/13 11:01 AM Re: trying to write a software PC based arranger [Re: stephen.hazel]
miden Offline
Senior Member

Registered: 01/31/06
Posts: 3354
Loc: The World
rotfl oh and apology accepted!!!

Top
#365914 - 05/02/13 11:49 AM Re: trying to write a software PC based arranger [Re: stephen.hazel]
stephen.hazel Offline
Member

Registered: 04/29/13
Posts: 45
Loc: WA, USA
Well I've found the C9 note - it's not in a drum channel, it's in a chord one. I've almost got it tracked down I think. Maybe it's just in this one .STY file and I'll just strip it out. We'll see.
If it's not an obvious thing, don't worry about it.

I do have some details to work out with how slash chords are arranged. Unless it's easy to explain, I think that'll happen a bit later.

As for ReChord, it's only in the "think it through" phase at the moment. But seems like it won't be too tough. I'll probably rip out the code in my MidiConfiger program that echoes midi events so you can tell if an input midi device is responding ok.

I'll make it dump whatever raw midi events it finds into a file and one of you folks can run it and send me that file. (As I don't have an arranger keyboard). Then once I can figure out the midi events to collect, respond to and send, I'll be good to go.
_________________________
Yep, still workin on ole http://PianoCheetah.com

Top
#365917 - 05/02/13 12:31 PM Re: trying to write a software PC based arranger [Re: stephen.hazel]
Diki Online   content


Registered: 04/25/05
Posts: 14212
Loc: NW Florida
A CS has no need to respond to anything other than simple MIDI notes, on the channel designated by the arranger as the NTA. It needs to clock TO the arranger (otherwise it will override your Performance tempo settings and any rits or accels you make) but other than doing that, the CS is nothing more than a simple MIDI looper.

You don't need 'Chord Events' or any of that malarkey. All you are doing is recording the MIDI notes played in the Chord Reception area of the arranger, and looping them back into the arranger unchanged.

Pretty simple, really....
_________________________
An arranger is just a tool. What matters is what you build with it..!

Top
#365921 - 05/02/13 01:26 PM Re: trying to write a software PC based arranger [Re: stephen.hazel]
stephen.hazel Offline
Member

Registered: 04/29/13
Posts: 45
Loc: WA, USA
but in order to sync to the arranger keyboard's clock, I need to listen for those midi clock events. I haven't messed with those in the past. PianoCheetah has never cared about them before.

So ReChord will need to do that correctly. So I'll kind of need a midi recording of, say, 3 chord changes.
_________________________
Yep, still workin on ole http://PianoCheetah.com

Top
#365923 - 05/02/13 01:50 PM Re: trying to write a software PC based arranger [Re: stephen.hazel]
miden Offline
Senior Member

Registered: 01/31/06
Posts: 3354
Loc: The World
Just thinking some more about this...I am not sure it is as easy as it sounds..

afaik, when the CS is engaged on the keyboards that use it, it does record the notes played, but then when you select play, the CS then automatically drops you out of having the keybed control the chord input to the CS controlling chord input, and the reverse when stopping the CS.

Now as I see it, if an external CS (which is as Diki said - essentially just a midi note recorder and playback app) is used, where is the command, (which I suspect is sysex), to perform this same function.

Seems to me when using an external CS one would also need to tap the chord recognition zone tabs to off so the user can use the full keyboard without it generating chord data to the arranger engine.....although I guess it may not really be a biggie as most of the arrangers have a button of this sort on the panel and it is a easy and quick task to do.

Dennis

Top
#365967 - 05/03/13 07:03 PM Re: trying to write a software PC based arranger [Re: stephen.hazel]
Diki Online   content


Registered: 04/25/05
Posts: 14212
Loc: NW Florida
Actually the Roland system would still respond to played input... At least I seem to remember that. Basically, to be able to use the LWR area to play on while the CS played uninterrupted, all you need to do is go from LWR1 to LWR2 and the MIDI channel should change, avoiding the chord recognition, or set the arranger to respond to NTA only.

TBH, most of the time you use the CS, it's for doing far more expressive lead sounds with a lot of bender use, or another instrument or keyboard, so confusing your arranger with unwanted notes isn't a huge issue.
_________________________
An arranger is just a tool. What matters is what you build with it..!

Top
#365972 - 05/03/13 10:03 PM Re: trying to write a software PC based arranger [Re: stephen.hazel]
miden Offline
Senior Member

Registered: 01/31/06
Posts: 3354
Loc: The World
I used it almost exclusively for playing piano solos and comping - I don't really get into playing other instrument solos...

I stick with piano EP and organ...there is just something odd about a sax or a trumpet or a flute....or whatever!!...coming out of a keyboard.

BUT....I do NOT criticise anyone who does choose to do them...so please don't read it the wrong way....only saying my preference

Top
#365974 - 05/04/13 12:08 AM Re: trying to write a software PC based arranger [Re: stephen.hazel]
rikkisbears Offline
Senior Member

Registered: 12/22/02
Posts: 6020
Loc: NSW,Australia
Hi Stephen,
the high notes you're hearing could be mega voices if it's
a Tyros or newer psr style?
How are you actually studying the Yamaha styles?

I used to do my Yamaha to korg style conversions, by changing the .sty extension to .mid. Good way of studying the style structure.

There's already at least 3 Yamaha style players around.
Dan's VArranger, which plays Ketron, Yamaha & Roland styles.
There's Live styler and One Man Band, though not sure if Jos is still supporting & doing upgrades??

I'm getting a tad rusty on Yammies as I've mainly been editing & converting styles across to my korg's for the last 3 to 4 years.

The style structure is different between the brands.


Originally Posted By: stephen.hazel
Well I've found the C9 note - it's not in a drum channel, it's in a chord one. I've almost got it tracked down I think. Maybe it's just in this one .STY file and I'll just strip it out. We'll see.
If it's not an obvious thing, don't worry about it.

I do have some details to work out with how slash chords are arranged. Unless it's easy to explain, I think that'll happen a bit later.

As for ReChord, it's only in the "think it through" phase at the moment. But seems like it won't be too tough. I'll probably rip out the code in my MidiConfiger program that echoes midi events so you can tell if an input midi device is responding ok.

I'll make it dump whatever raw midi events it finds into a file and one of you folks can run it and send me that file. (As I don't have an arranger keyboard). Then once I can figure out the midi events to collect, respond to and send, I'll be good to go.
_________________________
best wishes
Rikki 🧸

Korg PA5X 88 note
SX900
Band in a Box 2022

Top
#365975 - 05/04/13 07:36 AM Re: trying to write a software PC based arranger [Re: rikkisbears]
stephen.hazel Offline
Member

Registered: 04/29/13
Posts: 45
Loc: WA, USA
Hi RickisBears,

Ok, regardless of what those C9 notes are they sound terrible, so I put in some logic to strip notes outside the standard 88.

I'm now on track to have a band-in-a-box-ISH style arranger next weekend (bare bones text lead sheet+.STY=>.MID). But it won't arrange chords EXACTLY as yamaha does. It will keep all .sty notes within the chord and follow the CASM, etc.

Regardless of whether it's actually done, I plan on starting a chord sequencer-ish program next weekend. We'll see how that goes.

So I think I'm good with my questions for now. I'll come back and bug everybody if I come across some more.

thanks !

...Steve
_________________________
Yep, still workin on ole http://PianoCheetah.com

Top
#365977 - 05/04/13 09:19 AM Re: trying to write a software PC based arranger [Re: stephen.hazel]
miden Offline
Senior Member

Registered: 01/31/06
Posts: 3354
Loc: The World
Good luck...and good on you for getting stuck in to create this software clap

Dennis

Top
#365997 - 05/04/13 03:48 PM Re: trying to write a software PC based arranger [Re: stephen.hazel]
stephen.hazel Offline
Member

Registered: 04/29/13
Posts: 45
Loc: WA, USA
Ok, you knew it was comin... the dreaded ntt,ntr question...

From what I can tell NTR just says "do voice leading or don't" and apparently ANY of the NTTs can have ntr=y/n and onbass=y/n

Onbass meaning "if you're playing a slash chord stomp on every note in this channel with the slash bass note preserving only the octave".

So I've done some stats of all the channels in all the .STY files I've currently got (not a ton, but a good sampling)

I'm seeing this:
Code:
count  NTT      bass NTR       
11666  off                     
22675  off           y         
   10  off      y              
   25  off      y    y         
 5800  melo                    
  822  melo          y         
 5222  melo     y              
   41  melo     y    y         
 9812  chrd                    
21855  chrd          y         
   25  chrd     y              
 7164  meloMin                 
   41  meloMin       y         
   12  meloMin  y              
 4256  harmMin                 
    4  harmMin       y         
    4  harmMin  y              
 2213  meloMin5                
    2  meloMin5      y         
    6  natrMin                 
   18  dorn5                   
   10  dorn5    y              

So NTT is off(bypass), melody(which turns to bass when onbass=y), and chord, plus some weirder scales which seem melody-ish

So I "get" what ntr/voice leading does
And what onbass does

But...

1) what's the diff between melody and chord?
2) how come there's an off(bypass) with voiceLeading AND without?
does one do no transposing at all and the other transpose only to the chord root(not adjusting any chordals)?
3) I don't seem to have any styles with guitar strums/arpeggios
can somebody email me one, please? stephen.hazel@gmail.com

thanks much,

...Steve


Edited by stephen.hazel (05/04/13 03:50 PM)
_________________________
Yep, still workin on ole http://PianoCheetah.com

Top
#365999 - 05/04/13 04:28 PM Re: trying to write a software PC based arranger [Re: stephen.hazel]
rikkisbears Offline
Senior Member

Registered: 12/22/02
Posts: 6020
Loc: NSW,Australia
Hi Stephen,
I know you're trying to write your own program, maybe a bit more research might help. The fact that you don't have an arranger makes it rather difficult for you to test things out.

This is the software arranger I used for at least a couple of years. Maybe there's something on this site that may help you also.

http://www.1manband.nl/omb.htm
_________________________
best wishes
Rikki 🧸

Korg PA5X 88 note
SX900
Band in a Box 2022

Top
#366000 - 05/04/13 06:04 PM Re: trying to write a software PC based arranger [Re: stephen.hazel]
Diki Online   content


Registered: 04/25/05
Posts: 14212
Loc: NW Florida
I know that this is maybe more a labor of love than a product, but don't you feel just a little bit redundant, walking (slowly!) where others have already gone?

Couple of full featured software arrangers already out there. Other than simply duplicating what already exists, do you have any ideas for a software arranger that no-one has yet implemented?

If not, what's the point?
_________________________
An arranger is just a tool. What matters is what you build with it..!

Top
#366003 - 05/04/13 07:11 PM Re: trying to write a software PC based arranger [Re: stephen.hazel]
stephen.hazel Offline
Member

Registered: 04/29/13
Posts: 45
Loc: WA, USA
Nope, not redundant. And I'm not walking slowly - I hope to have the first stab released tomorrow (we'll see:)

I don't plan on doing things the way Yamaha does. More the way band in a box does.

I eventually plan on making a style format that fits completely within the midi standard and can be edited with any midi editor. (There'll be a program to take plain .STYs and convert them.)

The idea is for a piano newb to find leadsheets, type em into a .txt file, find a random style that sounds good to them, and look at the style notes - picking them apart to figure out how to play the parts that look interesting (and still hearing the other parts).

Also, to be able to do things like, say, you're playing a melody from loud to soft... As you do the style playback's volume adjusts AS you play the melody, so it follows your "feel". That'll make it sound a lot less robotic. And other similar stuff.
_________________________
Yep, still workin on ole http://PianoCheetah.com

Top
#366004 - 05/04/13 07:12 PM Re: trying to write a software PC based arranger [Re: stephen.hazel]
miden Offline
Senior Member

Registered: 01/31/06
Posts: 3354
Loc: The World
Yeah, I agree with Diki...these days it is ALL about a niche product. Not trying to re-invent the mousetrap smile

To catch up to Dan and vA you probably have a good ten to twelve years in front of you , but start work on a niche product and you set your own pace and attract your own user base.

Not trying to teach a granny etc etc, but what Diki is saying has a lot of merit...

Dennis

Top
#366005 - 05/04/13 07:12 PM Re: trying to write a software PC based arranger [Re: stephen.hazel]
stephen.hazel Offline
Member

Registered: 04/29/13
Posts: 45
Loc: WA, USA
Also, I think I've got NTT,NTR,bassOn figured out now.
And have found some guitar .STYs

So I'm good with the questions again.

And, again, I'm not trying to compete with any existing products.
I'm just trying to expand my own to do cool (possibly similar) things. Probably going about things in pretty different ways, though. I mean, all the big synth makers seem to do styles, but they mostly all seem to do it pretty DANG similarly. I'll be doing things in (ideally) a less messy and more flexible way.

...Steve


Edited by stephen.hazel (05/04/13 07:17 PM)
_________________________
Yep, still workin on ole http://PianoCheetah.com

Top
#366009 - 05/04/13 11:21 PM Re: trying to write a software PC based arranger [Re: stephen.hazel]
DAN.2000 Offline
Senior Member

Registered: 08/09/01
Posts: 1134
Loc: FRANCE
Yamaha style format seems easy, because of the midifile structure, but in fact, it is very hard to create a perfect yamaha style player. All we can do it to tend toward the perfection.

I suggest you to start with old yamaha styles. Every new yamaha arranger model adds a layer of complexity.

I admit that it's a very exciting work for a single developer like you and me.

Good luck Stephen.
_________________________
Regards,

Dan
https://www.varranger.com

Top
#366020 - 05/05/13 08:45 AM Re: trying to write a software PC based arranger [Re: stephen.hazel]
stephen.hazel Offline
Member

Registered: 04/29/13
Posts: 45
Loc: WA, USA
Hi Dan smile

Nice of you to chime in.

Yeah, I see what you mean about "adds layers of complexity".
There are a LOT of weird adjustments to melodies, especially.

I'm going to start with simple .STY file playing that won't match Yamaha exactly, but will probably still sound, ummm, ok at least.

And from there, I'll probably just NOT do all the weird halfstep adjustments that Yamaha does.
Chords will be adjusted from the recorded chordal set to the played set.
But for phrases, you'll have to just come up with extra tracks when they start sounding bad against major.

Which means most style files will have problems playing directly. But I think with a few tweaks they'll play without the "yamaha complexity".

You would think that complexity would drive "style composers" insane.
_________________________
Yep, still workin on ole http://PianoCheetah.com

Top
#366021 - 05/05/13 08:53 AM Re: trying to write a software PC based arranger [Re: stephen.hazel]
Dnj Offline
Senior Member

Registered: 09/21/00
Posts: 43703
Will it be compatible with "Touch Screen" computer screens or Tablets (iPad etc,) and what sound source will it draw from?

Top
#366022 - 05/05/13 09:13 AM Re: trying to write a software PC based arranger [Re: stephen.hazel]
stephen.hazel Offline
Member

Registered: 04/29/13
Posts: 45
Loc: WA, USA
PianoCheetah is a windows app.

If you can get windows8pro to work with it, great. But no touchscreen specific stuff.

Sound source will be whatever midi devices you have hooked to your pc. Or else the built in .WAV playing softsynth that pianocheetah has.

I plan on moving PianoCheetah to Android tablets in about a year. But that'll take a while to convert all the c++ and win32 API into java and android API.

I don't plan on porting to mac/ios as it seems to be in a downward spiral to me.

Android still needs audio latency fixes and a decent midi api (not to mention hardware midi<=>usb interfaces). But I think I see those off in the future. I'm pretty sure I'll be rewriting all my dang code in about a year's time to get onto Android and drop Windows. In the mean time, windows doesn't suck too bad.
_________________________
Yep, still workin on ole http://PianoCheetah.com

Top
#366023 - 05/05/13 09:31 AM Re: trying to write a software PC based arranger [Re: stephen.hazel]
Dnj Offline
Senior Member

Registered: 09/21/00
Posts: 43703
Originally Posted By: stephen.hazel
I don't plan on porting to mac/ios as it seems to be in a downward spiral to me.


That's disappointing I was considering MAC as my next computer confused1 anyway good luck to you and your project keep us posted on your progress. cool2

Top
#366024 - 05/05/13 10:00 AM Re: trying to write a software PC based arranger [Re: stephen.hazel]
stephen.hazel Offline
Member

Registered: 04/29/13
Posts: 45
Loc: WA, USA
Well, don't rely on me as an authority on the future of computers smile


Look at my history - I picked Commodore 64 and Amiga, got really good at each OS. And then Commodore died. I picked Mac over windows95 at first. That ended horribly, too.

The reason I bet on Android over iOS is that

1) I don't want to learn Objective C and iOS. I already know Java and Android is a fun OS with beautiful free docs.

2) Apple no longer seems to have a stranglehold on hardware manufacturers as Android devices (Nexus 10) seem nearly as fancy. Google is no slouch in design.

3) Android's java and (really weird)linux seem more in tune with "work junk" programming. Not a big deal, but a bit of an influence.


Make your OS choice based on the software you use right now. Or just get em all - honestly, computers are dirt cheap these days. And keep in mind that I'm a developer - I'm weird.
_________________________
Yep, still workin on ole http://PianoCheetah.com

Top
#366025 - 05/05/13 10:04 AM Re: trying to write a software PC based arranger [Re: stephen.hazel]
DAN.2000 Offline
Senior Member

Registered: 08/09/01
Posts: 1134
Loc: FRANCE
As you said, Android still need low latency Audio and MIDI interface native support.
_________________________
Regards,

Dan
https://www.varranger.com

Top
#366026 - 05/05/13 10:10 AM Re: trying to write a software PC based arranger [Re: stephen.hazel]
Dnj Offline
Senior Member

Registered: 09/21/00
Posts: 43703
May I ask...what are the benefits of using a computer based software Arranger program versus an all in one conventional Arranger KB?

Top
#366027 - 05/05/13 10:28 AM Re: trying to write a software PC based arranger [Re: stephen.hazel]
stephen.hazel Offline
Member

Registered: 04/29/13
Posts: 45
Loc: WA, USA
Well, nothing - if your keyboard supports all the sounds and style formats you need.

If your keyboard doesn't (my Yamaha CP-33 doesn't "do" styles) then you can use a software based arranger.

Also, a software arranger can acquire new features over time. With a keyboard, you may have to buy the next model.
_________________________
Yep, still workin on ole http://PianoCheetah.com

Top
#366032 - 05/05/13 04:19 PM Re: trying to write a software PC based arranger [Re: stephen.hazel]
TedS Offline
Member

Registered: 04/28/06
Posts: 811
Loc: North Texas, USA
Stephen,
If you search the Web a you'll find a handful of very smart folks have already put a lot of effort into deconstructing and understanding Yamaha styles. Look at sites like psrtutorial.com. Google names like Jorgen Sorensen, Michael Bedesem, Ocenenko Evgeny, Paul Tumelty, not to mention posts by Dan who wrote and supports vArranger. I forget where I downloaded it from, but in my reference folder I have a 30+ page document that describes the Yamaha Style File Format (SFF), at least pre-SFF2 when they introduced guitar mode.) It explains how to edit the CASM to get Yamaha styles to behave like Korg and Roland (where you can have different pattern variations for different chord types.)

I agree with the poster who encouraged you to work with the earlier styles first. I will further advise you to download all of the manuals for the QY-700 sequencer, PSR-730, and PSR-8000. Look at stuff from around 1995 when SFF and XF/XG were new technologies. It seems that back then, Yamaha put more detail in the manuals, perhaps in an effort to allow users to fully understand the new style format and get the most out of it. If you do the research that I'm suggesting (and TEST your hypotheses on an actual machine) you'll know as much about SFF, NTT, NTR as anyone here.

Good luck and we would love you to share your findings, sincerely,
Ted

Top
#366033 - 05/05/13 04:37 PM Re: trying to write a software PC based arranger [Re: stephen.hazel]
stephen.hazel Offline
Member

Registered: 04/29/13
Posts: 45
Loc: WA, USA
Hi Ted,

nice ta meet ya.

Yeah, I've already been all over JorgenS and PeterW's sites. (Peter is the one who doc'd the .STY format).

Thanks for the pointer about looking in some of the older reference manuals. That'll probably help if I want to make things as "yamaha" as possible.

My little .txt leadsheet+.STY => midi program seems to work. It doesn't do all the chordal adjustments that yamaha does, but it sounds ok. Sometimes you'll need to mute some tracks...:)

But it at least will keep chordals in the played chord's set for chord tracks, do onbass for bass tracks (although it's not very smart about melody tracks yet).

Code is done, just gotta do the "release stuff". It's still probably buggy, but, eh, that's life. When it's on my site, I'll bug everybody (yet again:) )
_________________________
Yep, still workin on ole http://PianoCheetah.com

Top
#366035 - 05/05/13 06:21 PM Re: trying to write a software PC based arranger [Re: stephen.hazel]
TedS Offline
Member

Registered: 04/28/06
Posts: 811
Loc: North Texas, USA
Yes of course. I didn't mean to omit Peter Wierzba and Heiko Plate, who also contributed to our knowledge of and ability to manipulate Yamaha styles. And hopefully you will add to that body of work!

Top
#366052 - 05/06/13 09:20 AM Re: trying to write a software PC based arranger [Re: stephen.hazel]
stephen.hazel Offline
Member

Registered: 04/29/13
Posts: 45
Loc: WA, USA
Well, I don't have much to add to PeterW's doc.
I did figure out the Ctb2 format. Variation of the Ctab format.
I'll ship it his way.


Ok, next questions...

Are .STY files copyrighted? They usually don't have melodies. Typically, chord changes can't be copyrighted.

Also, if anybody has some links to good groovy pop styles, I'd appreciate em smile
_________________________
Yep, still workin on ole http://PianoCheetah.com

Top
#366056 - 05/06/13 12:15 PM Re: trying to write a software PC based arranger [Re: stephen.hazel]
Diki Online   content


Registered: 04/25/05
Posts: 14212
Loc: NW Florida
It rather sounds as if you are going for an offline 'BIAB' approach?

Quote:
I don't plan on doing things the way Yamaha does. More the way band in a box does.


If so, this isn't really an 'arranger', at least in the way we all use the word. And BIAB has been around a VERY long time and is incredibly mature and complex. You sure you want to go up against that?

As I said earlier... If you have the programming skills for this kind of work, why not find something (doesn't HAVE to be my suggestion!) that no-one is already doing?
_________________________
An arranger is just a tool. What matters is what you build with it..!

Top
#366058 - 05/06/13 12:33 PM Re: trying to write a software PC based arranger [Re: stephen.hazel]
stephen.hazel Offline
Member

Registered: 04/29/13
Posts: 45
Loc: WA, USA
Yes. It's not an arranger in the traditional sense (yet).

It'll just turn a lead sheet + .STY into a midi arrangement to begin with. That part is pretty much done. Next, I see if I can scale the arrangement's volume based on the melody(or whatever) you play live. I plan on starting the chord sequencer mid week. And I gotta find and set up some dang examples to explain this thing with in the next release. That's kind of holding me up more than I thought it would.

Keep in mind that PianoCheetah is freeware. I'm planning to sell it SOME day if enough people ever start using it. But not until then (if that ever happens).
_________________________
Yep, still workin on ole http://PianoCheetah.com

Top
#366068 - 05/06/13 01:24 PM Re: trying to write a software PC based arranger [Re: stephen.hazel]
Diki Online   content


Registered: 04/25/05
Posts: 14212
Loc: NW Florida
Please be aware that the 'Chord Sequencer' is a LIVE, realtime app, not simply another BIAB type project.

The CS is used as you play, to record and take over your LH chores while you go do something else with the LH. It isn't something that you type the chords in in advance, and then it plays them when you ask for it. It is an utterly interactive arranger feature, that can be switched in and out on the fly, while you play...
_________________________
An arranger is just a tool. What matters is what you build with it..!

Top
#366070 - 05/06/13 02:02 PM Re: trying to write a software PC based arranger [Re: stephen.hazel]
stephen.hazel Offline
Member

Registered: 04/29/13
Posts: 45
Loc: WA, USA
Sorry, I shoulda been more clear smile

I'm adding the arrangement stuff to PianoCheetah now.

ReChord will be a seperate program (still included with PianoCheetah install, but not the "main pianocheetah program")

ReChord will be a live "record a buncha midi, send a buncha midi" program. Which may grow to include other "live performance-ish" stuff. We'll see how it goes.
_________________________
Yep, still workin on ole http://PianoCheetah.com

Top
#366075 - 05/06/13 03:38 PM Re: trying to write a software PC based arranger [Re: stephen.hazel]
rikkisbears Offline
Senior Member

Registered: 12/22/02
Posts: 6020
Loc: NSW,Australia
Hi Stephen,
are you trying to put together something more similar to this
http://www.1manband.nl/busker/index.htm
rather than an actual arranger.
_________________________
best wishes
Rikki 🧸

Korg PA5X 88 note
SX900
Band in a Box 2022

Top
#366076 - 05/06/13 03:57 PM Re: trying to write a software PC based arranger [Re: stephen.hazel]
Diki Online   content


Registered: 04/25/05
Posts: 14212
Loc: NW Florida
You want to make something for live arranger play we don't already have?

How about, once you have the 'live input to live output' thing down, how about a traditional arpeggiator..?

Thing is, all arrangers use look-up tables to sort of figure out the chord you want, from the notes you play... but arpeggiators don't bother with that step (or at least, old school traditional arpeggiators). They simply arpeggiate the notes you play, in a variety of forms (up, down, up/down, down/up, random, etc.).

This makes for quite a different effect than the traditional lookup table method in arrangers. Currently, I think, only the Audya arranger can do traditional arps as well as arranger play.

Maybe if you took a look at some of the workstation arpeggiators, and maybe tried to incorporate their ideas into an arranger, again, this is something as LOT of arranger players would be extremely interested in.

Essentially, again, you would be looking at the NTA channel for the played note input, then some sort of arpeggiated output to a designated MIDI output channel, along with a PC/00/32 code for patch selection and the usual effects send codes.

You want to get fancy, most REALLY modern workstations will run multiple independent arpeggiators at the same time, to different sounds, with different patterns (some of them do strumming type voicings, or melodic figures, or even percussion patterns), so there's room to grow once you get the basics down.

But here again is something no arranger player has, quite a lot could use, and no-one (to my knowledge) already makes specifically for arrangers...
_________________________
An arranger is just a tool. What matters is what you build with it..!

Top
#366077 - 05/06/13 04:06 PM Re: trying to write a software PC based arranger [Re: rikkisbears]
stephen.hazel Offline
Member

Registered: 04/29/13
Posts: 45
Loc: WA, USA
Originally Posted By: rikkisbears
Hi Stephen,
are you trying to put together something more similar to this
http://www.1manband.nl/busker/index.htm
rather than an actual arranger.


For now, yes. It'll get performance-ish stuff added on later.
_________________________
Yep, still workin on ole http://PianoCheetah.com

Top
#366078 - 05/06/13 04:09 PM Re: trying to write a software PC based arranger [Re: Diki]
stephen.hazel Offline
Member

Registered: 04/29/13
Posts: 45
Loc: WA, USA
Heya Diki,

I was thinking along those lines already kind of smile

PianoCheetah has a (very) rudimentary arpeggiator in it now. But so far PianoCheetah's main deal is practicing songs. So it's constructing a background track of the arpeggio.

So fancy arps (multiple sounds, fx, pan, etc) are definitely on the "to do" list.
_________________________
Yep, still workin on ole http://PianoCheetah.com

Top
#366088 - 05/06/13 11:35 PM Re: trying to write a software PC based arranger [Re: stephen.hazel]
Nigel Offline
Admin

Registered: 06/01/98
Posts: 6483
Loc: Ventura CA USA
Originally Posted By: stephen.hazel
Well, don't rely on me as an authority on the future of computers smile


Look at my history - I picked Commodore 64 and Amiga, got really good at each OS. And then Commodore died. I picked Mac over windows95 at first. That ended horribly, too.


Hey at the time Commodore were a creative force in home computing. I programmed a graphical DX7 patch editor for the C64 and also a number of commercial games for it published by a company called Melbourne House. I even wrote a baseball game for the Amiga ( TV Sports Baseball by Cinemaware ). So many years ago lol wink

Top
#366098 - 05/07/13 09:05 AM Re: trying to write a software PC based arranger [Re: Nigel]
stephen.hazel Offline
Member

Registered: 04/29/13
Posts: 45
Loc: WA, USA
Originally Posted By: Nigel
Hey at the time Commodore were a creative force in home computing. I programmed a graphical DX7 patch editor for the C64 and also ...


I absolutely agree - The C64 and Amiga were the absolute best machines of their respective times. Don't get me all nostalgic. I'll start crying and NObody wants to read that smile
_________________________
Yep, still workin on ole http://PianoCheetah.com

Top
#366145 - 05/10/13 09:44 AM Re: trying to write a software PC based arranger [Re: stephen.hazel]
stephen.hazel Offline
Member

Registered: 04/29/13
Posts: 45
Loc: WA, USA
Ok, I finally have the next release of PianoCheetah up.

If somebody could help me out and record their arranger keyboard for, oh, let's say 3 bars of about 6 chord changes or so, well, that'll get me started on what EXACTLY to record so I can send back the right stuff when you go from record to play mode.

So when ya have time, hit http://PianoCheetah.com
click the download button
save the SETUP_PIANOCHEETAH.exe somewhere and run it.
Hit the install button, then you'll be thrown into my
MidiConfiger program - put your arranger keyboard at the top of the list of midi input devices.
(Playing the keyboard will move it to the top of the list).


Find ReChord in the Start menu under PianoCheetah. Currently it just records every dang midi event (excluding sysex) from that top midiin device of MidiConfiger. (as soon as you start ReChord) and put it all in a c:\ReChord.txt file when you exit.

Then if you could attach that file in an email to me - stephen.hazel@gmail.com
Oh, please include your keyboard model.

Thanks much smile

...Steve
_________________________
Yep, still workin on ole http://PianoCheetah.com

Top
#366442 - 05/18/13 04:04 PM Re: trying to write a software PC based arranger [Re: stephen.hazel]
stephen.hazel Offline
Member

Registered: 04/29/13
Posts: 45
Loc: WA, USA
Hmmmm, pretty quiet.

I can't write a chord sequencer without seeing what an arranger keyboard generates...

If you're interested in a (probably free) chord sequencer, you'll need to hit http://PianoCheetah.com and download and install and run the Start/PianoCheetah/ReChord program; play 3 bars of chords; exit the program and send me your c:\ReChord.txt file pleeeeease smile

If you have any troubles, email me stephen.hazel@gmail.com

In the mean time, I'm workin on making my leadsheet+.STY=>background tracks thingy easier to deal with.

...Steve
_________________________
Yep, still workin on ole http://PianoCheetah.com

Top
#366444 - 05/18/13 04:22 PM Re: trying to write a software PC based arranger [Re: stephen.hazel]
miden Offline
Senior Member

Registered: 01/31/06
Posts: 3354
Loc: The World
Hi Steve...NP

Only just noticed this post - I will knock something out for you in a sec smile

Dennis

Top
#366445 - 05/18/13 04:29 PM Re: trying to write a software PC based arranger [Re: stephen.hazel]
miden Offline
Senior Member

Registered: 01/31/06
Posts: 3354
Loc: The World
You do realise that all arrangers send the arranger data over different channels for each part, yes?

So you program will nee d to be able to record either MIDI Omni, or be set up to record all 16 channels simultaneously...

Top
#366447 - 05/18/13 05:18 PM Re: trying to write a software PC based arranger [Re: stephen.hazel]
stephen.hazel Offline
Member

Registered: 04/29/13
Posts: 45
Loc: WA, USA
No worries (yet:)
ReChord currently records all channels from the top input device picked in my MidiConfiger program.

thanks much smile

...Steve
_________________________
Yep, still workin on ole http://PianoCheetah.com

Top
#366451 - 05/18/13 10:36 PM Re: trying to write a software PC based arranger [Re: miden]
TedS Offline
Member

Registered: 04/28/06
Posts: 811
Loc: North Texas, USA
Stephen, I'm pretty sure what you should be recording is what Roland refers to as the "NTA" (Note To Arranger.) These are the notes played in the chord recognition area of the keyboard which are interpreted as input by the logic engine.

For example, a I vi ii V7 progression, two bars in 4/4 time might be: C2-E2-G2 (for two beats), C2-E2-A2 (for two beats), C2-D2-F2-A2 (for two beats), and (D2-F2-G2-B2) for two beats. Presumably the arranger would interpret this as C major, A minor, D minor 7th, and G7.

What exactly comes out of the style tracks depends on the style and what was initially recorded. Hope this helps. -Ted

Top
#366452 - 05/18/13 11:02 PM Re: trying to write a software PC based arranger [Re: stephen.hazel]
stephen.hazel Offline
Member

Registered: 04/29/13
Posts: 45
Loc: WA, USA
Thanks Ted,

I kinda get that part.
I'd just like to see how the midi clock messages come across, too.

I think I'll need to use them to calc tempo, and make sure I'm in sync with beat #1 when ya hit play after recording.
_________________________
Yep, still workin on ole http://PianoCheetah.com

Top
#366568 - 05/21/13 02:35 PM Re: trying to write a software PC based arranger [Re: stephen.hazel]
stephen.hazel Offline
Member

Registered: 04/29/13
Posts: 45
Loc: WA, USA
Ok, I think I've figured out how to sync to the arranger keyboard's clock. And I guess I'm just gonna record the chord picking notes off one picked channel, play em back on that same channel in a loop, (and clear it all out).

I'd still like to get a ReChord.txt file and look at the details. I think Dennis is workin on that, but is running into PianoCheetah bugs which I'm furiously trying to stomp.


So let me take a step back and ask about arranger keyboards in general:

1) Since styles have to be at least a bar long, I'm guessing that you really have to adjust your playing so that YOU stay sync'd to the keyboard's master time, right? You can't really "lead" and mess with rubato?

2) You have freedom to chord change at any time, but during the keyboard's recognition phase, notes CAN glitch out and are "tweaked" in real time to adjust to the right notes of final recognized chord?

3) I'm curious how often you change the chord sequence live in a song. Can you think back on the majority of songs you play and tell me if you ever change the chord progression much for a given song? Maybe looping a chorus an extra time would be useful... But how often are you changing the main chord progression of the song you're playing?


I think I'll try to get a VERY basic chord sequencer working as a proof of concept. This will be messy enough with no dang arranger keyboard. After that's done, I'd like to take a step back, and try to solve some of the "not as live as I'd like" problems inherent in style players. (That'd be the longer run, of course).


I'm thinkin a conversion program to turn a .STY into a .MID with particular markers and conventions that make it directly editable in any midi editor. These will be the background tracks and follow your live played velocity. (as you play the melody from quiet to loud, the style tracks' note velocities are scaled the same).

What styles are really doing is arpeggiating chords. They sound like regular background music, but you're -actually- picking when to use the 1,3,5,7,(etc) of the chord of whatever chord type. So another component will be a program to make crazy wild (hopefully musical) arpeggio arrangements jammed into a style-LIKE midi file.

And finally, there's a "main song" you are gonna play live that says "use this list of midi styles as my background". It's got the keysig, timesig, and song sections(intro,verse,trans1,chorus,bridge,coda) with their component chord progressions.

But the main thing it has is the notes you plan on playing live in a single (maybe 2 for LH,RH) track. Just the "to play live" notes are shown on screen.

As you play them, the song position moves showing where you are. Since the sequencer knows where you are, you can play with rubato and time will keep sync with YOU. This will consequently force the style events in the background to follow your rubato. As you play this "lead track" song, you can have options like "play this section again" to loop a chorus an extra time, etc. And a "swap to background loop X" to pick a new style/arpeggio. This is just me typin' out loud and shootin my mouth off (for now). But it seems possible and might be pretty cool.

If you could give me your answers to 1) 2) 3) above and lemme know if you think I'm on the right track, that'd be cool.

...Steve
_________________________
Yep, still workin on ole http://PianoCheetah.com

Top
#366633 - 05/22/13 08:45 PM Re: trying to write a software PC based arranger [Re: stephen.hazel]
TedS Offline
Member

Registered: 04/28/06
Posts: 811
Loc: North Texas, USA
Regarding your questions 1) and 2): On most modern arrangers, it IS possible to play rubato and trigger a syncopated chord. How cleanly it comes off depends on the model, and also the notes recorded in the style. For more insight, search my other posts with regard to the "batching" of chord input and the "retrigger" parameter.

On some of its latest models Yamaha has included something called "free play styles" with no drum track and a very subtle rhythm to facilitate this type of play.

3) I'm not a songwriter. Heck I'm not really a musician! I have noticed chord progressions repeating but it varies from song to song. That being said, I agree with Diki that being able to record a chord progression and play it back in real time is a highly useful feature.

Top
#366634 - 05/22/13 09:00 PM Re: trying to write a software PC based arranger [Re: stephen.hazel]
stephen.hazel Offline
Member

Registered: 04/29/13
Posts: 45
Loc: WA, USA
Thanks TedS, I'll go a'searchin
_________________________
Yep, still workin on ole http://PianoCheetah.com

Top
#366764 - 05/26/13 01:24 PM Re: trying to write a software PC based arranger [Re: stephen.hazel]
stephen.hazel Offline
Member

Registered: 04/29/13
Posts: 45
Loc: WA, USA
Ok!

I've got the basics of a Chord Sequencer done.
It's pretty bare bones and probably needs some more work.
But as I don't even HAVE an arranger keyboard, if you want
it developed further, you'll need to try it out and let me
know what it needs.

http://PianoCheetah.com
download
run the install
that'll throw you into MidiConfiger.
Put your arranger keyboard's midi in connection at the
top of the midi in list.
Name the midi out for it the SAME thing as the midi in name.

You'll get thrown into PianoCheetah, so just exit that.
Start => Programs => PianoCheetah => ReChord

pick the channel.
space bar / button click to "arm".
If your channel is right, you should see the chord notes you play.

Try it out and ask me questions ya come across either here
or on stephen.hazel@gmail.com

Also some release notes are here:
http://PianoCheetah.com/news/


...Steve
_________________________
Yep, still workin on ole http://PianoCheetah.com

Top
#366788 - 05/27/13 10:05 AM Re: trying to write a software PC based arranger [Re: stephen.hazel]
stephen.hazel Offline
Member

Registered: 04/29/13
Posts: 45
Loc: WA, USA
eh, this thread is gettin pretty long in the tooth... Let's try a new one...
_________________________
Yep, still workin on ole http://PianoCheetah.com

Top
Page 1 of 9 1 2 3 4 5 6 7 8 9 >

Moderator:  Admin, Diki, Kerry 



Help keep Synth Zone Online