|
Subject: Tech: What would YOU like music software to do From: GUEST,pavane Date: 19 Dec 03 - 07:26 AM I am coming to the end of the current phase of development of my program HARMONY, and would like to know if there are any new facilities which would be useful to you. Summary of existing features: (Items marked * are in version 3.2.6, which will be available soon) Import: Read most abc single-voice tunes, including aligned lyrics and chord symbols * Import abc tunes with with chords (notes) and multiple voices * Read multi-voice abc tunes which have aligned lyrics in each voice Import simple MIDI files Open several tunes at a time Create: Create a new (empty) tune ready to add notes Fast keyboard entry of tunes or additions to tunes Create a random tune in a selected style (including chords & percussion) and mode Display: Display the score, either one voice or several voices (Scalable) Colour the notes depending on pitch Select font for headings and lyrics Automatically beam notes correctly, and re-beam when editing Lyric: Import and align lyrics from text file Display score including aligned lyrics in any or all voices Display several verses of aligned lyrics * Display tonic sol-fa names instead of lyrics Display abc note names (when imported from abc) instead of lyric Display actual note names instead of lyric Modify: Edit/add/delete individual notes and other musical items (with full undo) Copy and paste notes and groups of notes within a tune Copy and paste between different tunes Automatically add chords (notes and/or symbols) to a melody (HARMONY is aware of and supports modal tunes) Automatically add harmony voices (e.g. 3rd, 4ths, 5ths, above the melody, or unison) Add a percussion voice based on repeating a single bar pattern throughout the tune Apply user-defined styles to notes, to allow use of all MIDI facilities (such as pitch bend, tremelo) Select MIDI Instrument Print: Print score (scalable) Show Preview Create and print Melodeon or anglo concertina tablature Tune Processing: Transpose, either in steps or to a named key Convert reel to hornpipe (many hornpipes have been wrongly transcribed as reels) Make tune into a round (2 or 3 parts) Audit the tune structure, reporting on wrong length bars Reverse the tune Play: Play complete tune via MIDI (optionally with or without repeats) * Play selected voices * Play parts according to abc part specification (P: command) Play selected notes Save and Export: Save in HARMONY format Export to MIDI, Export to abc, several options available Export to songwright (limited) Bulk processing: Add chords (names) to all or selected tunes in an abc tunebook * Rewrite abc tunebook sorted into title sequence |
|
Subject: RE: Tech: What would YOU like music software to do From: Geoff the Duck Date: 19 Dec 03 - 07:56 AM Sounds Good. Can you get it to pour a pint of beer whilst you are listening to the tune? Quack! Geoff the Duck. |
|
Subject: RE: Tech: What would YOU like music software to do From: GUEST,pavane Date: 19 Dec 03 - 08:00 AM That would require dedicated hardware, namely the IBM (Integrated Beer Machine) |
|
Subject: RE: Tech: What would YOU like music software to do From: Geoff the Duck Date: 19 Dec 03 - 08:04 AM Where can I buy one - and how much? |
|
Subject: RE: Tech: What would YOU like music software to do From: GUEST Date: 19 Dec 03 - 09:06 AM Seriously, though, any hardware which responds to MIDI commands could be operated from a tune. I do know someone who sold MIDI-controlled lights (i.e. not operated by the sound, but by specific MIDI commands on a dedicated channel) |
|
Subject: RE: Tech: What would YOU like music software to do From: Dead Horse Date: 19 Dec 03 - 03:11 PM I would like it to be able to plug in to my chosen instrument, play any tune I wanted it to, at any speed, and make it look & sound like I was actually playing it myself. That would cut out all that tiresome trouble of having to endure years of learning & practise. Instant genius, that's what I want. And I want it now, please. |
|
Subject: RE: Tech: What would YOU like music software to do From: Ed. Date: 19 Dec 03 - 03:22 PM LOL, Dead Horse. I'd like it to write me a song that makes £ millions so that I can retire to the country and keep pigs. |
|
Subject: RE: Tech: What would YOU like music software to do From: mg Date: 19 Dec 03 - 03:31 PM I want to just play a simple melody line on a keyboard and have it print out the melody. mg |
|
Subject: RE: Tech: What would YOU like music software to do From: Mark Clark Date: 19 Dec 03 - 05:28 PM Okay, Neil, just for grins. First, you are the author of HARMONY and you will know best what features might make the program unstable or be very difficult to integrate in any meaningful way. I'm pretty happy just letting you take HARMONY in any direction that moves you because then we get the benefit of your thoughts. The fewer designers there are for a piece of software, the better it usually turns out. But that said… I want music software that:
- Mark |
|
Subject: RE: Tech: What would YOU like music software to do From: pavane Date: 20 Dec 03 - 09:55 AM Mark, Thank you for your thoughts. 1. HARMONY now has about 80,000 lines of VB5 code. I would love to rewrite in a portable language, but it would take years! 2. see 1 3. Harmony does everything you mention - but it is not a specialist scoring program. 4. I wll consider tablature. (but does abc provide it?) 5. I am working on XML export. Import is more of a problem because of parsing. 6. HARMONY evolved from a DOS program where fonts where not available, so it does all its own drawing. I will look into using music fonts, but it may take some time! 7. I am not familiar with the package you mention. What about the special functions - any comments? Random tunes, adding chords and so on. |
|
Subject: RE: Tech: What would YOU like music software to do From: Mark Clark Date: 20 Dec 03 - 03:08 PM Hi, Neil,
Okay, first the editor. Emacs (originally for Editing macros) is the brainchild of Richard Stallman of the Free Software Foundation and GNU (GNU’s Not UNIX) fame. It is free and available for nearly every computer in use today. To quote from the O’Reilly book by Cameron, Rosenblatt & Raymond, Emacs is the most powerful text editor available today. Unlike most other editors (in particular, unlike the standard UNIX editor, vi), Emacs is a complete working environment.GNU Emacs is written entirely in LISP and is completely extensible using LISP functions. You can get this editor to perform any task you need (except maybe changing the flush float in the loo). I recommend you check this out and spend the time needed to master it’s use. Assuming you work in a MS Windows environment, and don’t use a UNIX-like environment like Cygwin within Windows, you’ll want the NT Emacs distribution.
A huge amount of work has been done by programmers all over the world to provide specialized functionality for Emacs and these edit modes are made freely available to everyone. There are edit modes for every programming language and markup language (e.g., ABC, LilyPond, HTML) so functinality really is nearly unlimited. It isn’t like the Windows-based IDE you’re probably used to but it’s much more flexible and powerful. I use Emacs for all my work in ABC, LilyPond, HTML and TeX/LaTeX as well as for program development. I even use it to prepare long Mudcat posts, like this one, so I don’t risk losing my work. It lets me render the page automatically when I save so I can be certain of the appearance of the final post.
Second, I see the browser plugin as a really important feature. I think work is being done to get ABC accepted as an official MIME type so plugins can be readilly developed. The availability of a plugin will let music sites such as Mudcat and the Digital Tradition truly live up to their potential and provide every user with high-quality, properly notated music that may be printed out without needing the help of a list of arcane command-line programs and specialized Web sites to do the job. And for those of us interested in sharing playing techniques, it would allow us to embed pretty looking tablature right in our posts without needing to resort to images or funky typewriter pictures.
I completely understand about the difficulty of rewriting HARMONY. Still, it might be easier than you think. If you employ free CASE tools such as NetBeans and ArgoUML you can probably get the job done in a few months. The time-consuming part is working out the design details and you’ve already done most of that. Consider also that you could develop the plugin from scratch and integrate it with existing HARMONY code for Windows users.
We’ve talked about ABC tablature programs in other threads. John in Brisbane and Jon Freeman both seem to stay on top of developments in the ABC arena. John in Brisbane maintains the Mudcat ABC PermaThread® (Mudcat ABC Tune Guide). ABC2Tab provides tablature based on a simple string/fret rendering of the specified notes. It can help novices find a melody on an instrument but may not show how a piece is actually performed. Another and perhaps better tablature implementation is provided by abctab2ps. Originally based on abc2ps, this will at least provide good insights into how tablature is generated from ABC code. I think there are also proposals for adding to the ABC specification so that the encoder can specify particular fingering needed to duplicate an actual performance but I forget what they are called. Jon Freeman will know what they are.
Most of the ABC programs that produce nicely engraved output do so by rendering PostScript output. This lets the authors make use of high-quality type 1 fonts without needing to do special programming to incorporate them. Of course PostScript (Adobe) or GhostScript (GNU) software is needed to render the PostScript. Chris Walshaw’s original ABC program created intermediate output in the TeX/MusicTeX typesetting language and then relied on TeX to render the output using either Knuth’s Computer Modern fonts or Adobe type 1 fonts. I would think there has now been enough open-source work done in this area that the pieces you need can probably be found.
You shouldn’t be writing code to handle XML. Use the standard and free parsers that convert between XML and your internal data structure using the published DTD for the particular XML type. If this is new to you, you’ll want to pick up a couple of books on XML development.
I’m guessing that, on an hourly basis, HARMONY has been more a labor of love than a big income generator. You might want to consider taking the HARMONY project open-source and get a bunch of interested developers to help. You can still offer users the opportunity to donate money to the work and I think you’ll find that many people actually do donate. With the open-source model, you’ll have a lot of existing code at your disposal and the work will likely develop more quickly. You’ll also encrease the number of interested users.
I’ll be looking forward to developments. Feel free to PM me if any of this needs clairification.
- Mark |
|
Subject: RE: Tech: What would YOU like music software to do From: Barry T Date: 20 Dec 03 - 04:20 PM One printing feature that won me over to the ABC format is the ability to control the end-of-line break. Most traditonal tunes that I play have parts consistiing of eight measure preceded by one or two introductory notes. I hate sequencing programs (including the one I use) that force a fixed number of measures per line. That means that any tune with introductory notes has its parts break in the middle of a line. All too frequently the tune ends in the middle of a line, too! 'Not visually intuitive, even if musically correct. This frustration has resulted in my using one program for sequencing (multi-track arrangements) and a second one for printing the separate tracks for melody and harmony. Great results... but what a waste of time! |
|
Subject: RE: Tech: What would YOU like music software to do From: GUEST,Frank Date: 20 Dec 03 - 08:51 PM Pavanne, I've been an Encore user for many years and one of it's prominent features for me is instant playback of what I've written. With Encore, you just hit the space bar and what you've written on the staff is immediately played. Finale isn't so easy to do this or Sibelius for that matter. Being able to imput four, five or six note chords on a staff would be advantageous. Having various independent voices on the same staff is an advantage in notating lead sheets. Lyrics that can be stacked (two or three lines) under the notes is an advantage. Encore does this fairly well. Having a General Midi capability would be helpful of course. An option as to score size would be helpful also. Being able to copy a score onto legal size paper would be useful. Here's a crazy idea and I haven't got the slightest clue as to how it can be done. A CD transcriber. Put in a CD and have it write out what's on it. Obviously it would be years to develop a program that could generate a full score from a CD into notation. It's not a practical idea but wouldn't it be something? Put on your fave recording and see it scored? I'd like to see ease in importing and exporting to a sequencer such as Pro-Tools or Performer. I like the option of step entry as well as real time entry. Most of the stuff I do are small scores and lead sheets. Encore goes about 16 staves. Finale and Sibelius can produce symphonic size but I don't have that need. I find Encore's chord symbol generator somewhat awkward. Wish there was a faster way than mouse key selection from a pallette. Something on the qwerty keyboard would be nice or from MIDI keyboard. Here, you run into the problem of extended chords used in jazz such as M7(+11)(b9). Maybe a custom option could be available. Automatic diagonal beaming of eighths and sixteenths would be nice for the look. Please let us know when a program is ready to go for sale. Frank Hamilton |
|
Subject: RE: Tech: What would YOU like music software to do From: pavane Date: 21 Dec 03 - 01:34 PM Frank & Barry, I will compose a reply offline. Thanks for the thoughts. Pavane PS I am uploading v3.2.6 tonight |
|
Subject: RE: Tech: What would YOU like music software to do From: pavane Date: 21 Dec 03 - 02:10 PM Thank you all for your input. Mark, I am familiar with the UNIX EMACS (and Vi) editor, but don't understand the relevance. HARMONY has an onscreen mouse-driven note edit facility. I should reiterate that HARMONY was intended to be a tune processor,(originally to add chords) not a scoring package. I would like to leave the scoring to more specialist programs, like Chris did. For the reasons already mentioned, Harmony is written in Visual Basic. I haven't yet found out how to interface with an XML parser. I am progressing with XML output though. I am not sure if there is an open-source community for VB5. It would certainly assist development if so, but I don't know how willing they would be to wade through my 150 modules and 80k lines of code. I have made some progress in developing classes for the tune data, but there is a lot of work still to do. Barry, HARMONY does have some spacing commands, but they are a bit hidden. You can edit the text line @F into a voice to force a line break. You can also adjust the inter-note spacing from the menus, but only globally, not per line. You can obtain more precise control by using editing spacing commands into the voice text – see the manual for details. Frank, A previous version did allow instant playback, and one-finger play, but I lost the source in a disk crash (backup was corrupt!) and haven't yet rewritten it. HARMONY can put more than one note on a staff, but not very successfully yet. This is an area I am working on. HARMONY does now stack several verses of aligned lyrics (from v3.2.6) HARMONY does output General MIDI files, which include proper reset sequences to prevent problems with settings left over from previous files. Pitch to note conversion would be wonderful, but the technology is still not developed even for a single melody to be captured, let alone a full polyphonic music track. HARMONY can export MIDI, which should be readable on most sequencers HARMONY can recognise a range of chords input as text (qwerty), and display them, but does not generate notes for the more complex examples given. HARMONY does do full automatic beaming, but uses horizontal beams. I could add an option for diagonal beams if there is a demand HARMONY currently allows 10 staves, and I am working on the assignment of voices to staves, as specified in the abc verion2 draft HARMONY takes its page size from the printer setup. If you set the printer to letter, HARMONY should prepare the score for letter size. And yes, 3.2.6 is now available at my site. Happy Christmas all |
|
Subject: RE: Tech: What would YOU like music software to do From: Mark Clark Date: 21 Dec 03 - 02:29 PM Happy Christmas to you and Dawne, too, Neil. I didn't mean to suggest that my wish list should be incorporated into HARMONY, I was only responding to your thread title and initial post. And I don't think there is an open-source community around Visual Basic. VB isn't, well… open. Still I think you could call standard XML parsers from VB and save youself a lot of unnecessary work. VB can call any DLL and I'm sure you can use any parser that would run under Linux or Cygwin just as written but include the small Cygwin dll in your distribution. Not only will you save yourself a lot of unnecessary effort but you'll inherit any improvements the open-source community makes in the parsers. Keep up the good work. - Mark |
|
Subject: RE: Tech: What would YOU like music software to do From: GUEST,pavane Date: 22 Dec 03 - 06:23 AM Thanks Mark, and Happy Christmas to you. I do welcome any suggestions, as there may be some which are easy to implement. I just can't guess what people want or need (Not necessarily the same thing!) You're right about HARMONY not being an income generator, too. But there are encouraging signs with a few registrations beginning to come in. When I am happy that it is possible to output XML from HARMONY data structures, I will look into interfacing with existing XML parsers. I believe Microsoft do provide one. There is obviously a VB community, but I am not in touch with it. I did get some useful tips and examples from a VB source disk which I bought. Regards Neil |
|
Subject: RE: Tech: What would YOU like music software to do From: Steve Parkes Date: 22 Dec 03 - 07:56 AM The ability to print verse 1 beneath the music and the other verses (or v1 again + the rest) as text below that would be handy. Steve |
|
Subject: RE: Tech: What would YOU like music software to do From: GUEST,Les B. Date: 22 Dec 03 - 04:23 PM |
|
Subject: RE: Tech: What would YOU like music software to do From: GUEST,Les B. Date: 22 Dec 03 - 04:28 PM Sorry, hit the right key at the wrong time ! Maybe this has been covered in the technical discussions up above, but what I would like would be to scan in music notation from a book or sheet music, or other source and then hit a key and hear it played back. I realize this is tough because of all the differences in staff size, notes, etc., but as an "ear learner" rather than an "eye learner." This would be a neat way to learn tunes that I now only wonder about until I can find a piano player to do them. |
|
Subject: RE: Tech: What would YOU like music software to do From: Mark Clark Date: 22 Dec 03 - 05:43 PM Les, SharpEye Music Reader is probably the best known of the type of program you're looking for. It is sometimes bundled with high-end music sofrware like Finale. SharpEye works as well as other OCR software but you need engraved originals, hand-drawn or jazz-font scores won't scan well. - Mark |
|
Subject: RE: Tech: What would YOU like music software to do From: GUEST Date: 22 Dec 03 - 06:01 PM Too confusing for me. I just want something I can put down a rythm track and then a lead track and then sing the song. Maybe one more for another instrument. And all without having to read a book the size of the New York phone book and not spend two days on the puter getting it "set up" correctly. |
|
Subject: RE: Tech: What would YOU like music software to do From: GUEST Date: 23 Dec 03 - 02:17 AM Steve, HARMONY can do this, working from abc input. You use aligned lyrics (w: command) for the first verse, and non-aligned lyrics (W: command) for the rest. But HARMONY does put the non-aligned lyrics on a new page, not on the same page. LesB - yes, there are packages which can scan and perform OCR on music. I tried an old MIDIscan demo. Worked reasonably well on a 'simple piano' book, but got lost with O'Neill's Music of Ireland. Guest - I think any Music software which provides more than elementary functions is going to be complex, because of the complexity of music itself. But I think you would find that abc format would be one of the easiest ways of defining a lead track. HARMONY can create the rest with little effort. A drum track can be added by just defining one bar and letting it repeat for the whole tune. Certainly, I would like to improve the instructions, but you know what they say? If all else fails, RTFM (read the Flaming (or similar) manual) |
|
Subject: RE: Tech: What would YOU like music software to do From: GUEST Date: 23 Dec 03 - 12:52 PM Yes RTFM - BTDT - I think I'm consigned to that of a guitar picker and singer amongst friends. And I aspire to no more. My recording has been with the basic recording unit that came on my computer. One track and no editing. Means I have to pay attention but that's OK - no one buys what I record and my friends enjoy it - Be well and have success in your venture - |
|
Subject: RE: Tech: What would YOU like music software to do From: GUEST,pavane Date: 24 Dec 03 - 02:59 AM Thank you and Merry Christmas to all |
|
Subject: RE: Tech: What would YOU like music software to do From: Mark Clark Date: 09 Jan 04 - 12:45 PM My participation in another thread—Tech: A good music writing program?—and in Susan's Slave Songs project has me thinking more about music software, ABC and the like.
The music performance community really needs a standard, open and extensible notation, within the ABC standard, to express the finer details of performance on a particular instrument. The mechanism most often used to provide performance details is tablature. For stringed instruments, it details how a note is placed on the fingerboard (string and fret or position) and how the note is sounded in performance (hammer-on, pull-off, slide, thumb stroke, finger stroke, plectrum, etc.).
Jon Freeman pointed out that the current crop of ABC tablature notation programs is either inadequate or results in ABC that is so far from standard as to be problematical for most ABC software. Software quality issues asside, there are a couple of problems with ABC tablature schemes. Either they attempt to generate tablature from the raw notes or they modify the coding of notes to include performance information. Neither of these ideas is really satisfactory.
In the first case, we rely on the software developer to make performance choices for us—not
Slowly, it's come to me that the performance details we expect in tablature should be coded seperately from the notes rather than coded as note modifiers or extensions. Synchronized lyrics in ABC notation are coded on a separate line, using the w: command, but the software places them in the printed score at the proper place. How about an additional line type in the ABC code to specify the details of tablature? The details of pitch, rhythm, ties, slurs, chords and beaming are already coded in the basic ABC notation. What's needed is a way to specify the additional performance information and have it synchronized with the score, much like the lyrics. I don't pretend to have a complete and satisfactory system at hand but it might be something like the following:
I don't think this proposal adds unnecessary complexity either to the ABC standard or to software designed to implement it. It does, however, serve to integrate tablature representation into the evolving ABC Plus conventions and has the potential to really integrate the requirements of score and performance. Software developers still have the option of generating the
Naturally I expect to see all this implemented in software very soon. <g> - Mark |
|
Subject: RE: Tech: What would YOU like music software to do From: The Fooles Troupe Date: 10 Jan 04 - 07:41 AM I'd like it to have a little slider control called "talent" - which may help the end product be more listenable. Robin |
|
Subject: RE: Tech: What would YOU like music software to do From: Mark Clark Date: 20 Jan 04 - 12:15 PM I was hoping some the ABC wonks would pop in here and comment on my ABC tablature proposal. I don't really follow the standards list very closely and don't really know whether the participants are considering any tablature support or not. - Mark |
|
Subject: RE: Tech: What would YOU like music software to do From: GUEST,pavane Date: 20 Jan 04 - 12:58 PM An interesting proposal. But the abc format (draft 2.0) is becoming so complex that it is getting increasingly difficult to extend existing programs to cope. HARMONY does provide what looks like a suitable facility, that of note styles, which can be used to apply ANY MIDI control or set of controls to a specified note. I had intended that it would be used for slides, trills, pull-on and off, modulation (tremelo/vibrato) and so on. I did include an example in the latest release of a tune which uses styles to bend notes(Apache) The problem is that someone has to create the style files in the first place! I have started writing a style editor, but it hasn't got very far yet. I believe that I could create suitable styles to map to any of the additional performance information mentioned. I have also been planning the addition of Tablature to the Harmony score display,but that is still some way off. It would require more instrument definition files, to define the number of strings and tuning of each string. |
|
Subject: RE: Tech: What would YOU like music software to do From: Peter Woodruff Date: 20 Jan 04 - 05:44 PM Guest, pavane, I would like all of the above, and write tablature from my ramblings in open tunings on my guitar. Peter |
|
Subject: RE: Tech: What would YOU like music software to do From: GUEST,leeneia Date: 21 Jan 04 - 12:15 AM Don't know if anyone else mentioned these already, but -- 1. Print a square notehead on a selected note - for example, the C# which appears only once in Flow Gently Sweet Afton 2. Print the crescendo and decrescendo signs which look like V's lying on their sides. 3. "Listen" to me play a tune and display a reasonable facsimile of its pitches and timing. 4. Change a line from one clef to another automatically. 5. I use Noteworthy. Sometimes I download a MIDI and get a crazy-looking version in which MIDI apparently interpreted every tiny change in the creator's timing literally. I have tried dealing with this by tinkering with note resolution, but it doesn't help. I would like a program that handles this better. 6. My Golden Rule for programmers: if a word or phrase appears on the screen or in a dialogue box, then it MUST be listed in the index to Help. For example, Noteworthy has "measure numbers" buried under File - Page Setup - Options, but it doesn't have "measure numbers" listed under "Search for Help on..." This is dumb. |
|
Subject: RE: Tech: What would YOU like music software to do From: GUEST,pavane Date: 21 Jan 04 - 02:59 AM leenia Thank you for your wish-list! 1: Unlikely, it is a lot of work for a very unusual circumstance 2: I never intended HARMONY to be a scoring package - there are many programs out there which can take the output abc and display it beautifully (especially now HARMONY can write multi-voice abc). The score display is best regarded as a draft mode. 3: Experiments on this are being done elsewhere, e.g. by Mr Red. Live music to score conversion, (e.g. wav to MIDI) is a very complex problem. 4: HARMONY does change from bass to treble and vice versa automatically, but only in one of the available display modes, and if you uncheck the Display Leger lines option. 5: This is one of the problems with your point 3. HARMONY will import simple MIDI and attempt to make sense of it, but must take notice of timing changes. (You could always delete them from the score later?) 6: Agreed. Making a HELP system is very labour-intensive, and the result is difficult to test. I am still a long way from ensuring that every relevant phrase is indexed in the HARMONY help file, particularly because it was added at a late stage. Releases up to 3.0 didn't have ANY help! My current development priorities (not in order) are a) Capture MIDI directly to score from a MIDI input device, e.g. keyboard. Related to your point 3. b) Add tablature for strings c) Provide a note style editor but this may change if I get other requests |
| Translate Thread |