mediagoblin-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Feature Request Idea - Server Sent Musical Scores


From: Ben Sturmfels
Subject: Re: Feature Request Idea - Server Sent Musical Scores
Date: Fri, 17 Sep 2021 13:31:12 -0400

> Sounds like a really interesting idea! A bit like https://musescore.com/
> but using video rather than a JS player that syncs the audio and
> notation.

There are some music notation renderers implemented in javascript such as:

https://www.vexflow.com/
https://www.abcjs.net/
https://chiselapp.com/user/moinejf/repository/abc2svg/doc/trunk/README.md

The following one is more of a computer-assisted music composition system 
running in the browser. It is a port of music21 to js. It uses vexflow to 
render 
scores:

https://github.com/cuthbertLab/music21j

But, we'd have to write a parser if we'd like to use them with GNU Lilypond.

Here's an ABC notation parser someone wrote in purescript for use with vexflow:

https://github.com/newlandsvalley/purescript-abc-parser
https://github.com/newlandsvalley/purescript-abc-scores

https://en.wikipedia.org/wiki/ABC_notation

There is also LilyBin, which is a web-based lilypond editor and hasn't been 
updated
since 2016:

https://github.com/LilyBin/LilyBin

It's live here:

http://lilybin.com/

The feature I mentioned in my previous email is less dynamic in scope from the 
above solutions. We're just serving server-processed videos from client uploads
of lilypond files.

> Is there anyone interested in doing some initial exploration on this?

I think as a first step, I'll look more closely into the softwares that hjenkins
mentioned.

hjenkins, thanks for sharing all those. I looked into 
lilypondToBandVideoConverter
a bit but haven't intalled it yet.

hjenkins, have you used or tested any of them?

abc2ly is not heavily maintained and has a few bugs. I'll have to try it out
and speak with the maintainer to see what is the current state of the project.

If all is good with abc2ly, I'll package it for GuixRUs Channel as a 
preliminary 
and also send to abc2ly to upstream guix for review.

https://git.sr.ht/~whereiseveryone/guixrus

Then, we can start thinking about how to integrate abc2ly as a media backend in 
MediaGoblin, if we choose to go that route.

Transposing scores with python-ly that users upload can be a feature to be 
added 
later once we have the musical score media backend functioning and integrated.

> (Just for context, I know a few readers are strongly against the use of
> JavaScript in web applications for security reasons. I appreciate this
> perspective, but that's *not* the reason we've been working to remove
> jQuery and other third party JS. That work is specifically to make it
> easier to package MediaGoblin as an OS package. I think it's useful if
> MediaGoblin works acceptably without JS, but our aim is not to remove JS
> outright, since its necessary to provide the interactivity that people
> expect from web apps.)

I'd like to support node packages and purescript packages in the future for 
guix.

Rome might be an option to look into in the future for guix as a way to 
circumvent
the issues in the js ecosystem: https://rome.tools/

If anyone wants an add free/more secure internet protocol, IMHO, I think gemini 
might be your island getaway:

https://samsai.eu/post/introduction-to-gemini/
https://thenewstack.io/souped-up-gopher-project-geminis-plan-to-revolutionize-internet-browsing/





reply via email to

[Prev in Thread] Current Thread [Next in Thread]