Question about features implementation

• Oct 29, 2017 - 22:24

Hello,
for more than 20 years I used for notation the score part of the Logic program ver. 3.0 up to 5.5.1 (made by emagic) for Windows. Because working with it is a bit complicated and the final graphic look takes a lot of editing steps/time, I decided to move to/use another notation software. I tried about 15 worldwide known programs and found out, that the best one, that suits my needs is the MuseScore.
I read the whole handbook and learned how well and quickly to create a music part. Unfortunately, I miss several really good and helpful features from the previous program. Do you think it would be possible to implement them in the MuseScore (I'm using the version 2.1.0)?:
- insert a note into an empty bar (measure) directly on another beat (for another time) than the first one without having to put a rest on the first beat; the program should automatically fill in a rest/s before the inserted note
- directly insert a note with an accidental for example by this method -> click+hold and "slowly" drag the desired note-lenght on the right beat and pitch position; the note might sound until the mouse button is released
- change by mouse the pitch of already inserted note on semitones
- insert the copied notes directly on a different beat than the first one
- stop playback after the last written note
- show a mark or the last note/s played in another color where playback has ended
- copy notes by holding and dragging the mouse to the desired location and pitch
- clicking on the "play from the beginning" button, the first bar of the music part should be displayed
Thank you for your reply in advance and sorry for my cumbersome english; it's not my native language.


Comments

Your English is fine. I have seen nearly everything you requested discussed through the past couple of years I've been watching the forums. The only thing that doesn't make sense to me it the first request. How would you tell the program you want the note on beat two rather than beat one when there is a measure rest?

As far as copying a note by dragging, I'm surprised you can't copy a note or chord by pressing ctrl-shift and dragging it like you can almost everything else in the program. I don't remember seeing this mentioned.

It doesn't make sense to me that clicking Rewind (play from the beginning) doesn't automatically change the display to the first note.

In reply to by mike320

In the previous program I used there was an "imaginary" invisible quantization grid, that one could set up any time to any note lenght to make the program know which rests(-lenghts) it has to place before and/or after the just inserted note.

When I click on the Rewind button, nothing happens; only when I press after that the Play button, display jumps to the first bar&beat and starts to play.

Thanks for the comments! BTW, I too started with Emagic (the predecessor to Logic - "Notator" for Atari ST), and agree they did a lot of things well.

I would say the first request makes more sense for a sequencer that happens to offer notation - basically, for Logic - than it does for a notation program. The idea of putting a note in the middle of a measure with no rest before simply makes no sense in music notation. Music is read - and therefore written - left to right.

The idea of entering a note with accidental directly is interesting, but I am not sure I like an entry method that requires something to be done "slowly". I'd be more interested if someone could come up with a way to do this fast. In general, nothing involving the mouse is likely to be as fast as the keyboard, and of course most of what you describe is already way more efficient to do by keyboard than by mouse, but certainly there is room for improvement in how things do work with mouse.

In reply to by Marc Sabatella

As far as entering accidentals with the notes, I have suggested permitting the user to define notes with accidentals since I can think of no shortcuts that would make everyone happy but this would allow everyone to decide if they want it and what the shortcuts would be. For example, I suspect most Germans already change the shortcut for B-natural to H. I would if I were German.

One problem with my idea that would need to be overcome is that right now shift-A add an A to the current chord, so I guess this would take some more thought...

In reply to by mike320

To me a way might be to have a new command that puts note input into a temporary "add sharp to next note" mode, also a corresponding "add flat to next note" command. The cursor could even change to show this. The next note entered would automatically get the sharp or flat, then the mode would clear itself. Pretty sure I've seen other programs do this.

To it's easier to simply adjust to entering accidentals after the note than to implement such a feature, and I imagine that's been the case for anyone else too, which is why it hasn't happened yet. But someday, maybe someone will take it on...

In reply to by mike320

Of course what I suggested doesn't make it one key, it just changes the order from "F #" to "# F". Others have requested this, so it was on my mind already. Actually adding a full set of one-stroke shortcuts for F# as well as Gb etc would be possible but that's a lot of shortcuts. We could always add the command then let users decide if they want to assign shortcuts to them. But then, there is always MIDI or the piano keyboard.

In reply to by Marc Sabatella

“add accidental to next note” would be really nice. Especially when inputting notes with audio playback, because they'd all sound correct without the mandatory accidental-free notes in between. I thought about suggesting that, along with “raise/lower next note by octave” for that reason, but thought it might be tricky to implement.

In reply to by Marc Sabatella

I don't think it makes sense just or more for a sequencer. I see this as simplification / faster insertion of notes in the "digital" stave.

For more than 10 years I wrote notes with a pencil on the paper; then I started to use the Logic program for writing and printing the parts/scores.
I inserted or edited pitches of notes very often with the mouse, because it was in a way similar to the writing of notes by a pencil, but mainly because the mouse had amazing editing abilities like
changing the pitch of any note/s on semitones (without having to mark it/them first or to move the blinking cursor on it/them),
inserting a note directly on another beat in a bar than the first one without having to put a rest/s on the first or other beats before inserting of a note, and so on.
During inserting of a note (or copying/moving a note or group of notes) the status bar on the bottom showed actual position and pitch of the (cursor=) note to be inserted (; in case of/during copying/moving of a note/s it showed actual position and pitch of the grabbed note).
I know that entering of notes by keyboard is faster than by mouse, but the mouse has its indisputable advantages not only for editation but also for inserting of notes.

In reply to by Vehudis

My point about the difference between a sequencer and a notation program is that entering a note on a specific beat is something that music notation has absolutely no concept of. There is literally nothing that exists in music notation that says, "this note is to be played on beat four". All that exists is linear left-to-right reading and writing. It is only sequencers that have a notion of notes not requiring rests before them in order to denote their position in time. So while it's not impossible for a notation program to implement such a feature, it's just a much less natural way for a user of a notation program to think, whereas it is very logical for a user of a sequencer to think that way. As such, while it's not impossible such a feature could be implemented, its appeal is likely limited to people who are using MuseScore but "thinking" like a sequencer - not really our core user base. Thus its not likely to be a high priority. But if someone who does have that sort of sequencer mentality and also has the necessary programming skills feels like taking this on and can come up with a way of doing it that neither confuses other users nor complicates the code base for future developers, I'm sure it would be considered.

As for the other aspects of mouse entry you mention, I'm not really understanding the advantages you speak of - to me the keyboard wins in virtually all respects with the possible exception of initial selection of a position for editing to then take place. Maybe understanding the advantage you perceive for mouse entry would help prioritize features like these.

In reply to by Marc Sabatella

So what I hear you saying: Your core user base is clasical musicians (only).
Most folk and jazz musicians know that you should quantizise notatation in order to get it to sound just barable when listening to a midi file. Especially the dotted quaver followed by a semiquaver causes problem if not played tripletized. (two bound triplets on the dotted quaver, )
See the attached dotted quaver example.mscz below.

The idea is that bar # 1. should sound like bar # 2.

I have tried to make a plugin (also attached) that would do the job but I have a problem that you maybe can help me with: I think I can change the length of the notes alright, but the cursor object's tick property is read only. When exporting the midi file there is no change. (maybe I am doing something wrong there too)

We have a lot of users on our site who just listen to the music (they cannot read music) They send us music sheets, that we write for them so they can learn by listening. I would like those users to be musescore users, and we are strongly considereing to move to musescore as entry software, but we need to solve the midi file quantisation issue. We presently use a software that can do it, but musescore seems much smarter, and we need to change software anyway.

Traditional jazz musician always quantizie quavers in "swing style", and don't bother about putting in the dotted notation.
If the quatizise.qml would be brought to work, We could solve that issue as well In another qml.

I am pretty new to Musescore,

Maybe you can help and point the direction to follow to get the quantisizer.qml to work.
For me allowing writing to the tick property seems like the easiest, but there may be other ways...

Attachment Size
dotted_quaver_example.mscz 5.17 KB
quantisize.qml 4.19 KB

In reply to by oleviolin_

There are a couple of ways to have the score played back swing.

https://musescore.org/en/handbook/swing has instructions on how to use text to add swing. You can also use the menu Style->General... and choose the swing setting to set for the entire score.

MuseScore is not a classical music only notation program. There are also several other features useful for Jazz scores such as special fonts, templates and chords (which are never found in classical music).

In reply to by oleviolin_

I'm not sure where you got the idea the core user base is classical only - actually, jazz & pop are a huge portion of the user base. That's one reason we support swing eighth notation natively, no need to use awkward dotted-eighth or triplet notation or even more the awkward manual MIDI quantization. Just enter eighth notes, and then add the swing text from the Text palette and customize its properties or use Style / General as mentioned above.

In reply to by Marc Sabatella

Thanks for the reply. My audience in this case is not the jazz-musicians, but Scandinavian folk music players.
Where there may be some big differences between what you play and what you score.
For example: The "swing" notation goes both ways, (a semiquaver followed by a dottet quaver should also translated into triplet "Swing" feel but where the first triplet is single and the second is crotchet with the length of two quaver triplets. Look at the third beat in my litle example above.
There are other examples in Scandinavian folk music genre, but this one is the most common.

Why we don't write it like it should sound?
Answer: it get to complicated to read.

Anyway you have answered above that you would (maybe) accept it, if we simply do it in C++.

(But Javascript is easier to learn)

In reply to by oleviolin_

What I don't understand is why you are writing dotted eighths if you want simplicity - why not just write eighths, as most other people (not just jazz musicians) do? Then it would just work.

But if you really do prefer writing dotted eighths, then indeed, you'll need to figure out a way to do the quantization. Personally I'd probably export to MIDI and use a sequencer to do that.

In reply to by Marc Sabatella

Hi,
finally, I had a little time and I thoroughly read the instructions once more and tried it right away. I think I understand the concept of this program better. Still, I would like to ask you if you could add these improvements to the program (I would try to do it myself, if I could program or if I knew someone who could, but unfortunately none of these is feasible):
- change the pitch of already inserted note/s by mouse on semitones
- stop playback on or immediately after the last written note
- show a mark or the last note played in another color where playback has ended
- clicking the Rewind button -> the first bar of the music part should be displayed; not until I press the Play button
- copy or move the selected notes/bars by holding and dragging the mouse to the desired position (and ideally also a pitch) between already written notes or at least behind the last written note (like copying or moving word/s by mouse anywhere in a sentence in the MS Word)
I think not only I would greatly appreciate and welcome the implementation of these improvements.

In reply to by Vehudis

Thanks for your suggestions. In general, the more efficient way of interacting with MsueScore is via the keyboard rather than the mouse, so if you are trying to improve your efficiency, that would be my recommendation. For instance, changing itch using the arrow keys, or copy and paste using Ctrl+C/Ctrl+V or the shortcut "R" to repeat a selection. Some day further improvements may well be made to the mouse interaction as well.

The other requests are possible too but please realize playback is secondary in importance to notation and hence these requests tend to be prioritized accordingly. Anyhow, while a few others have also asked for playback to stop even though the score isn't actually over, there are other use cases where it makes sense to keep scrolling, so I am not personally a fan of this change. Similarly, rewind is about playback, the Home key is normally how you position the score normally. There are sometimes reasons one might want independent control of these, so it is good to have that ability and I personally would not want to give that up.

Feel free to make any of these requests individually in the issue tracker so they don't get lost (but please don't combine them).

Do you still have an unanswered question? Please log in first to post your question.