|
02 Feb 04 - 07:47 AM (#1107159) Subject: Tech: Inputting tunes to PC From: pavane I am currently enhancing HARMONY to allow users to play tunes into the program (and onto score) using a MIDI keyboard plugged into the PC. This is currently restricted to melody only, and in step time (I.e. all notes the same length). I can detect the actual note time, but it seems very difficult to play all notes at the correct length, even when a range of values is allowed. Before I go too far down this path, I would like to know if this facility is something which people would find useful. |
|
02 Feb 04 - 08:30 AM (#1107180) Subject: RE: Tech: Inputting tunes to PC From: JohnInKansas If by "all the notes the same length" you mean that: You can select the length you want for a note before you hit the key. All notes you put in will have that duration until you select a different note duration. You can select a different note duration when needed, for a single note or to continue with a new sequence. Then you've got a common, and preferred, method for input for notation programs. (By preferred method, I really mean that's the method I have preferred to use with several notation programs.) A few exisiting programs make you click an icon to select the note duration. This is okay, but it's a lot faster if you can use a PC keyboard key 1=whole, 2=half, 3=quarter, etc to select the duration while you're in "step input mode." That way you can use one hand on the midi keyboard and the other on the PC keyboard, without tangling with the mouse. Existing programs: Most use 1 for whole note, but a few use 0. Each step up divides by 2. Most of the "notation based" programs I've seen use higher numbered keys for shorter notes. I've seen a few "midi based" programs that seem to reverse the order, with lower numbers for shorter notes. This makes sense if you "think midi" (duration) but not if you "think in notation." Take your pick. A problem with a "simple" note duration is that it will be almost impossible to notate "musical sounding" stuff without a way to deal with "tuplets." They occur far too often to be ignored. You can usually at least "fake" about anything with triplets, but fourplets and fiveplets can be handy on rare occasions. I don't think most people will use more than triplet construction for the majority of stuff, so I wouldn't worry too much about generic n-tuples, but you might want to leave a "hook" open to generalize later, if you can see a way to do it. I'd say it sounds like a worthwhile addition to your program. John |
|
02 Feb 04 - 08:43 AM (#1107189) Subject: RE: Tech: Inputting tunes to PC From: GUEST,MMario ditto |
|
02 Feb 04 - 10:32 AM (#1107291) Subject: RE: Tech: Inputting tunes to PC From: pavane Thanks for the hints. I will see what I can do. HARMONY currently uses toolbar icons for selecting note length, but I could easily add the use of numbers, if that is standard. How about dotted notes? Dot on the keyboard? HARMONY currently has a 'convert to triplet' toolbar icon, which you hit after selecting 3 notes (Must be quaver/8th notes or shorter) |
|
02 Feb 04 - 11:40 AM (#1107353) Subject: RE: Tech: Inputting tunes to PC From: pavane Thinking logically, as the program knows how many notes are selected, it could create the tuple accordingly when you hit the Tuplet icon. (I will add Crotchet tuples later - I know they do occur.) |
|
02 Feb 04 - 03:21 PM (#1107513) Subject: RE: Tech: Inputting tunes to PC From: Mark Clark Finale does a neat trick with this. I have no idea how they process the input but they allow the keyboardist to tap the rhythm with a foot on the pedal while playing. There is an initialization dialog where the player taps the pedal so the program can sense the event to track. After that, the player can even speed up or slow down during the performance and the program still correctly tracks the rhythm because it counts, say, four even taps per measure even if the taps aren't really even. All the associated notes, then, are possitioned within the measure based on their proximity to the taps. The player is able to select a time value that helps control quantization of the notes so that small errors in precision of rhythm are rounded to the nearest note value based on the selected value. Finale has other, more complex, ways of converting MIDI input into a score but this one seems pretty straightforward. They have an even simpler mode in which the player holds a computer key to select the time value and a MIDI keyboard key to select the note. I found this to be really awkward in practice. Typing ABC into a text editor is faster for me than this second method although I've used the first method with some success even though I'm not a keyboard player. - Mark |
|
02 Feb 04 - 06:10 PM (#1107662) Subject: RE: Tech: Inputting tunes to PC From: JohnInKansas Pavane - One program that I liked a lot (but which unfortunately won't run on my new XP machine) let you use 1=whole, 2=half, 3=quarter, 4=eight, 5=16th, 6=32d, 7=64th, 8=128th notes. Hitting "D" made the selection a dotted note, and hitting "T" made it a "tuplet" at the default triplet value. The "D" and "T" were as toggles, so that hitting one again turned off that choice. In that program, changing the note duration also turned off dot or tuplet, so that you had to reselect to apply them to the new note value. This is probably more efficient than leaving them on through a note selection, since triplet eighths are seldom adjacent to triplet quarters, and dotted quarters are frequently adjacent to single undotted eighths, etc. The same choices were available by clicking on a toolbar to make the selections, but the "quick keys," turned on if you selected an input mode, and were much quicker and easier to use, once you got the right ones into your head. I don't know for sure how the "innards" of this feature were implemented, but the quick keys were generally "on" and turned off only when you selected a "text entry" mode. The program had a separate Lyric input mode, a generic Text mode for annotations, and a few "special notation" selections like the addition of a text note to a D.S. or other standard sign. Probably not of immediate interest, but quick-keys were also useful for mode selection, where "T" selected text, "L" selected lyrics, "C" selected insert chords, and "G" insert graphics (generally Guitar fret diagrams, plus a few others). (When you used a "mode select" key, the display also swapped to the toolbar for that mode, so you could click if you didn't remember a toolbar-specific key.) Users will probably never get to the keyboard shortcuts if you don't have the icon click means of running the program. A certain level of familiarity, from using the program a bit, seems to be a requirement to get a user interested enough to look for the "efficiency" features. People won't RTFM first. John |
|
03 Feb 04 - 02:50 AM (#1107933) Subject: RE: Tech: Inputting tunes to PC From: pavane I have now successfully implemented the following Keyboard input 0 = double note, 1 = full note, down to 6 = 32nd note, 7=grace note. (Harmony does not support notes shorter than 32nd) . = dotted toggle (I could add D for the same thing) M (Measure) = insert bar line Bar lines are necessary because the score function uses them to force line breaks. If you don't have any, the notes will pile up on the right of the screen! I must fix that sometime. Tuples: select n consecutive notes (where n in range 2 to 5), and click the icon. The program will convert to an n-tuple (or Unconvert, if the group is already a tuple) I hadn't thought as far ahead as adding chords and lyrics at the same time, but there is no reason why I couldn't. |
|
03 Feb 04 - 04:28 AM (#1107969) Subject: RE: Tech: Inputting tunes to PC From: JohnInKansas I'm not sure what the difficulties are with adding chords and lyrics, but my own observation is that programs I've tried generally "come apart" on the text and text-like stuff, if there's going to be any problem with them. The program I mentioned, that "doesn't run in XP" actually will run, as long as I only put in notes. Any text or lyric entries cause a program crash. While the basic cause of incompatibility with XP is probably that the program is attempting illegal (under XP) disk writes(?) or other direct hardware access, most of the inexpensive programs I've tried seem somewhat "unstable" in handling text, even when compatible with the OS on which you're using them. They are consistent in that "complex text" entries sometimes cause a "file explosion." Either the program stalls, the file self-corrupts, or the text simply won't stay where you put it. These programs all seem to use what Word would call a "text box" or a "frame" for all text-like entries, with the frame/box anchor point "attached" to a note (or to the note's own anchor point). This makes it easy(?) to synch a lyric syllable (in its own frame) or a chord symbol (in a separate frame) with a specific note, for a nice display, but the anchor points seem unstable if you exceed some minimal text limits. Most of these programs include automatic spacing, so that a measure can grow or shrink to accomodate the number of notes - and the length of linked lyric syllables - inserted; and I've suspected the problem relates to the "anchor" for "attached text" being lost when the autospacing moves a note (by moving the anchor point for the note). In the "normal" use in these programs, each text frame/box will contain only a very few characters - typically one syllable of lyric text per box, or one chord label, etc. Problems usually arise only when you try to put something like a paragraph (*a second verse below the score, perhaps) all into one text entry; but most of the "cheaper" programs I've used do have a "come-apart" point where more text blows up the file. In some of them, even a very long title/composer string (which of course you forgot to insert before you had all the notes in) will occasionally cause the file to fall apart. *In the programs of interest, even a verse below or beside the score is usually anchored to/with a note in the score - although it can be difficult to tell which note. Perhaps a separate "long text" box anchored to "page" would behave better? Note that for the most part I'm referring to commercially available score producing programs at low to moderate price levels. I haven't used a sufficient number of freeware/shareware programs to the point (large enough scores) where I can tell whether either the method or the result is the same in typical ones there. I'm not sure there's a suggestion here for what/how you should do anything, but perhaps the observation will help you to develop where you want to go with something. John |
|
03 Feb 04 - 07:14 AM (#1108044) Subject: RE: Tech: Inputting tunes to PC From: pavane I can't really see any problems in allowing entry of chords and/or text at the same time as notes in Harmony. I could arrange to put up a form which contains a text box for each, triggered by a key press, and which would apply by default to the last note input. (You already have the facility to add these later, including the title, by using the standard edit menus) HARMONY does not use text boxes and frames within the score display, the data is actually attached to the Note object and the display is generated dynamically. HARMONY does not yet allow graphics (e.g. Guitar chords) within the score, but I could look at this - it should be possible. |
|
03 Feb 04 - 08:33 AM (#1108089) Subject: RE: Tech: Inputting tunes to PC From: JohnInKansas I'm not really a big fan of frames for most of the stuff I do. If I'm creating a document, there are other ways of placing objects that, for me, seem simpler and less trouble-prone. If you're preparing a form in which you want to force someone else to use your placement, they're one way to lock the placement in. In a score writing program, they make some sense, if you need to force the location of more than one object to a common anchor point. The note, the lyric syllable, a chord "name", maybe a fret pic, all tied together to align with each other. This may not be something you need to do in your program. John |
|
03 Feb 04 - 02:51 PM (#1108434) Subject: RE: Tech: Inputting tunes to PC From: pavane Well, that's all done now as well. After playing a note, you can type E (for Edit) to bring up a form which lets you add lyric and/or chord to that note. Anything else before I package it up as a new version? (I do have to update the Help file, the What's new, the web site, etc, so it will take time - MORE time than changing the program!) The only reservation I have is that on my development machine, the score refresh is slower than I would like, but it is an old 266Mhz machine. On my son's 1.4 Ghz machine, it appears instantaneous. |
|
05 Feb 04 - 02:08 AM (#1109746) Subject: RE: Tech: Inputting tunes to PC From: pavane Slight change - it will be L to add Lyric or chord, so it will also work when entering notes from the PC keyboard (E is then used for a note, of course) Also added S (start of repeat) and T (End of repeat) And of course R for a rest, length will be as for the current note setting. Captured tunes will automatically be given key signature of C (Partly because all accidentals will be played in, not implied.) If there are no more requests for additions to this feature, I will go ahead and package it up for test. |
|
01 Mar 04 - 04:32 PM (#1127198) Subject: RE: Tech: Inputting tunes to PC From: Barbara Shaw How do I get midi input from a keyboard into my computer? None of the ports say "midi." Is there some sort of adaptor or do I need a special sound card with a midi port or what? |
|
01 Mar 04 - 04:37 PM (#1127208) Subject: RE: Tech: Inputting tunes to PC From: GUEST the joystick port on the machines I've worked with is the midi port |
|
01 Mar 04 - 05:45 PM (#1127265) Subject: RE: Tech: Inputting tunes to PC From: dick greenhaus I've never had much luck entering tunes from a MIDI instrument. A "granularity" or "accuracy" option would be most helpful, to avoud the dotted 128-note triplets that keep appearing. |
|
02 Mar 04 - 08:09 AM (#1127576) Subject: RE: Tech: Inputting tunes to PC From: pavane On a desktop PC, the games port is usually used. It has two spare wires which are used for MIDI IN and MIDI OUT. You can get a MIDI cable which has MIDI (DIN) connectors and a games connector. For a laptop, it is more of a problem. You CAN get USB to MIDI adaptors, but apparently these can suffer from timing errors known as Jitter, because the USB protocol only works in one direction at a time. If you are only using it in one direction, it may be OK. They cost about $39 in USA, £47 (!) in the UK. It is also possible to make a serial connector to MIDI adaptor, but I have no idea how you get the MIDI software to talk to it. DO NOT try USB to Games adaptors, they are cheaper but they don't usually have the MIDI wires connected. (True MIDI cables are more expensive because the specification requires them to have optical isolators in each connection, to prevent electrical mismatching.) Dick - HARMONY will only have step-time input. You choose the note length separately, on the PC keyboard - it stays the same for each note until you change it again. I tried real-time input, but it is IMPOSSIBLE to play notes sufficiently accurately. |
|
02 Mar 04 - 08:20 AM (#1127588) Subject: RE: Tech: Inputting tunes to PC From: Barbara Shaw Thanks, Guest and Pavane. Now I just have to find the cable that came with my son's keyboard. Dick, I'm planning to get an arrangement that someone is playing by ear into the software program and then worry about the note durations later. Seems like it would be easier to get a complex arrangment in this way. At least the chords would be identified, saving the lengthy steps of listening and guessing and then transcribing. Maybe I'm just asking for more trouble... |
|
02 Mar 04 - 09:48 AM (#1127660) Subject: RE: Tech: Inputting tunes to PC From: pavane See the threads on importing MIDI files into a scoring program. If played in from a MIDI instrument (exactly the same in concept), the results are likely to be VERY confusing. No-one can play the shorter notes and intervals sufficiently precisely and consistently that the software can recognise them properly. Better results are obtained if you can get hold of a MIDI file created directly by a sequencer program, as the note lengths are usually much more consistent. I have, in the past, written a program which will tell you what chords are being played in a MIDI file. This is a commercial program, available from Hands-on MIDI, but is reasonably priced. Midi Chords |
|
02 Mar 04 - 09:52 AM (#1127664) Subject: RE: Tech: Inputting tunes to PC From: pavane See, for example This thread |
|
02 Mar 04 - 04:21 PM (#1127942) Subject: RE: Tech: Inputting tunes to PC From: Barbara Shaw I can take midi files easily into MusicTime software. And the piece is one I wrote, so I know the melody and chords. What I'm trying to bring in is an original arrangement on piano of that song. I guess I'll find out more when I find that cord... |