Show HN: Hacklily – sheet music editor(hacklily.org) |
Show HN: Hacklily – sheet music editor(hacklily.org) |
I considered Lambda and similar, but keeping LilyPond running as a server allows for lower latency, which is important given how long it takes for LilyPond to start up.
I don't think I'd be able to have the kind of live reloading I implemented here with Lambda.
Hacklily is great! Obviously doing fine with the HN burst! I may just point people to yours at some point.
For example VexFlow (http://www.vexflow.com/) or, even with music, abcjs (https://abcjs.net/). Both of those use their own language.
A cursory look at the lilypond docs makes it seem like the language is pretty simple and straightforward... although, the source code looks nuts. How hard do you think a JS parser/vm for it would be?
Edit: been looking at some large lily projects from mutopiaproject linked below. Oof. There's more there than the docs let on. Still, would be a very interesting project...
Then I saw the play in the top bar :D
Pure awesomeness!
I think if this had existed back then, the much-faster feedback loop would have helped me finish it. :)
To me learning through programming is very natural so I'm excited to try my hands on composing using this language. Didn't ever occur to me that the notation would be that simple. With same effort and time you put into learning say C++ could you become a proficient composer with this?
Making community features is a natural next step which might help with finding examples.
LilyPond has a bit of a steep learning curve, but you can absolutely use it professionally. http://www.mutopiaproject.org/ shows what LilyPond can do. Personally, I find that I can be more productive with LilyPond than with Finale, and that the results look better.
I was never any good with Finale or Sibelius, so I feel like I'm unqualified to say whether Musescore is worth learning, but have been curious what an actual skilled Finale user thinks about it?
I use Frescobaldi ( http://frescobaldi.org ) for my Lilypond editing and find it pretty good.
At the time, the software that caught my attention was mainly the kind that helps users turn a scan of sheet music into something that could be transformed (with a text editor and some scripts) into a LilyPond source file with far less work than actually typing out all of the LilyPond input yourself.
I can envision software that does this, but it seems like a big project with very uncertain adoption outcomes.
Edit: I think software like this probably already exists, essentially, and definitely if you consider running one of the LilyPond command line conversion tools an acceptable step. The system's main differentiators would be being web-based (which isn't that uncommon anymore for music engraving software), and targeting LilyPond as the best-supported output.
The above system should be able to come up with coherent movement of voicings (and fingers...) although I can't imagien that it would sound very human.
I wonder for a classroom setting, if many people compile similar scores, if there's any opportunity to say "the first half of all these scores are the same, compile it once and concatenate it with the unique pieces"...caching composition...I'm sure I'll play with it someday.
Caching sheet music rendering is a hard problem. For example, a note later in the score can affect the spacing of notes before it.
I think one day, you'll be able to use emscripten or similar to run LilyPond in the browser. We are not there yet.
[1] See, for example, https://www.amazon.com/Behind-Bars-Definitive-Guide-Notation...
I've started work on a project of my own that will do online rendering of lilypond (rather different design objectives from yours, though). I've been worrying a bit about resource consumption of frequent renders, and your application is occupying a rather extreme point there. Do you have any data about this already?
Can you tell me more about your goals? I'm open to collaborating if practical.
Further details on my project in private e-mail.
Separately, a question, which you guys might know how to solve:
How can I convert a PDF music sheet to a MIDI? I.e., does there exist a music-sheet to digital-music converter? The pdf in question I want to convert is not a scanned copy, it's been digitally produced by some other program (I don't know which program)
There are solutions for converting sheet music images to MusicXML/Finale/etc., but I haven't had good results with any of them.