The 2014 MusicXML Meetingwpmedia.musicxml.com/wp-content/uploads/2014/03/MusicXML...fonts: e.g....
Transcript of The 2014 MusicXML Meetingwpmedia.musicxml.com/wp-content/uploads/2014/03/MusicXML...fonts: e.g....
The MusicXML Meeting
M I C H A E L G O O D !V I C E P R E S I D E N T O F R E S E A R C H A N D D E V E L O P M E N T !!M A R C H 1 4 , 2 0 1 4 !
Agenda • Introduction to MusicXML
• MusicXML community progress in the past year
• MusicXML and the Standard Music Font Layout (SMuFL) – With Daniel Spreadbury, Steinberg
• A tool for cleaning MusicXML files from older applications – With Bob Hamblok, neoScores
• MusicXML and the MIDI Manufacturers Association / Association of Musical Electronics Industry (MMA/AMEI)
• Interactive discussions throughout
What is MusicXML? • The standard open format for exchanging digital sheet
music between applications
• Invented by Michael Good at Recordare in 2000
• Developed collaboratively by a community of hundreds of musicians and software developers over the past 14 years
• Available under an open, royalty-free license that is friendly for both open-source and proprietary software
• Supported by over 170 applications worldwide
MusicXML Is a Notation Format • Music is represented using the semantic concepts
behind common Western music notation
• Includes both how a score looks and how it plays back
• Includes low-level details of the appearance of a particular engraving, or the nuances of a particular performance
– Allows transfer of music between applications with high visual fidelity
– Also allows the visual details to be ignored when appropriate
– The best display for paper is often not the best for an interactive application
MusicXML as an Archival Format • MusicXML is an XML format, with all its advantages:
– Files can be opened in any computer text editor – Fully internationalized via Unicode – Files are human-readable as well as machine-readable – Can use all the standard XML tools developed by larger
industries than the music industry
• Backward compatibility: all valid MusicXML 1.0 files are also valid MusicXML 3.0 files
• MusicXML license allows continued development of the format by anyone, not just MakeMusic
• Already implemented by over 170 programs
Who Uses MusicXML
Usage map as of March 2014
Publishing Scores in MusicXML • MusicXML is the way that scores get from desktop
applications like Finale and Sibelius to the new wave of mobile applications
• No DRM controls built-in, though these have been added in the MusicXML-based Open Score Format
• For copyrighted music, MusicXML has usually been a Business-to-Business format, not Business-to-Consumer
• Many sites available with public domain MusicXML scores: see www.musicxml.com/music-in-musicxml
Original Finale file
MusicXML Reflowed in SeeScore
What’s New With MusicXML? • New and improved application support
• New MusicXML Forum replacing the MusicXML mailing list
• New possibilities for MusicXML 4.0 due to SMuFL 1.0 project
New MusicXML Writers • Reads and Writes MusicXML
– NoteWorthy Composer via MusicXML2NWC and other third party software (formerly beta)
• Writes MusicXML – Logic Pro X – NotateMe – Cadencii
New MusicXML Readers – Avid Scorch – Blackbinder – EarMaster – Frescobaldi – Mobile Music Trainer – OveScore – Singer’s Mate – Jellynote (beta) – Quantified Artist (protototype)
New MusicXML Forum – Replacing the MusicXML mailing list with a web-based
forum was one of the most popular requests from last year’s meetings
– New forum launched one week ago using phpBB – Brings over entire MusicXML mailing list archive:
• 12 years • Over 1,400 topics • Over 5,300 posts
– Now indexed by Google and other search engines – Allows pictures and other media to be included
MusicXML Forum – Index View
MusicXML Forum – Topic View
MusicXML Forum in Google Index
MusicXML Forum Launch – Launch appears to have gone smoothly
• New topics and replies are being created – Some people had problems associating their
MakeMusic account to the phpBB account with their old posts
• We’ve updated the web interface to reduce confusion • If you have a problem with your forum registration,
email me and our IT staff can correct it quickly – We plan to shut down the mailing list later this month
• New discussions on the mailing list will not be transferred to the forum
• Mailing list archives will go away as the archives have all been transferred to the forum
MusicXML and Music Fonts • MusicXML provides a standard interchange format
for music notation semantics, layout, and performance
• But when translating between MusicXML and a music notation application, fonts complicate things
• What code point do I use for a particular MusicXML element in a particular music notation font?
• What do MusicXML’s positioning attributes mean specifically with regards to any particular music font?
• Enter the Standard Music Font Layout (SMuFL)
Standard Music Font Layout
MusicXML community meeting 14 March 2014
Daniel Spreadbury
A brief history of music fonts
• First commercial music font was Sonata from Adobe in 1985, with 176 glyphs, organised mnemonically for a Latin keyboard
• Became de facto standard for mapping of most music fonts: e.g. Petrucci (Finale, 1988), Opus (Sibelius, 1993)
• Range of 220 musical symbols was added to Unicode in 1998; to date, no font has completely implemented this Unicode range
Problems to be solved
• Lack of a real standard makes sharing music fonts between applications difficult
• Sonata’s 170 glyphs and Unicode’s 220 glyphs are insufficiently broad in scope
• No agreement on how to expand beyond these initial sets
What is SMuFL?
• A standard way of mapping musical symbols to the Private Use Area of the Basic Multilingual Plane in Unicode
• A set of technical guidelines for how music fonts should be designed and built
• Simple JSON metadata formats to help applications use SMuFL fonts easily
• Released under MIT license, free to use/modify
What’s included
• 108 discrete sub-ranges of glyphs
• 2554 glyphs… and counting! • Includes all 220 glyphs from the Unicode
Musical Symbols range
• Also includes recommendations for ligatures, stylistic alternates/sets, etc.
What’s included
Bravura
Bravura • The first SMuFL font (OpenType/SVG/WOFF) • Includes all SMuFL recommended glyphs, and
hundreds of optional glyphs • Released under the SIL Open Font License
– Free to use, bundle, embed, create derivative versions, etc.
– Only licensing restrictions are that the font cannot be sold on its own; derivative versions cannot use the same name; and derivative versions must be released under the same licensing terms
Current status
• Version 0.85; targeting 1.0 release in 1H 2014
• After 1.0, existing code points/glyph names won’t change
• Remaining milestones to 1.0 release – Technical guidelines for SMuFL fonts for text-
based applications – Release of a version of Bravura for text-based
applications
Current status
• Supported already in LilyPond by way of openLilyLib
• Support coming in MuseScore 2.0, Steinberg’s in-development scoring app, other as-yet unannounced projects
• Bravura already shipping with commercial products, e.g. from Rising Software
Font-specific JSON metadata {
""fontName" : "Bravura”,"""fontVersion": "0.8", """engravingDefaults": {"" ""staffLineThickness": 0.1,"" ""stemThickness": 0.1,"" ""beamThickness": 0.5,"" ""beamSpacing": 0.25, ... ""}, """glyphs": {"" ""noteheadBlack": { "" " ""stemDownNW": [ 0.0, -0.184 ], "" " ""stemUpSE": [ 1.328, 0.184 ] "" "}, ... ""}, "
} "
Font-specific JSON metadata
More information
www.smufl.org
Thank you!
MusicXML 4.0 and SMuFL 1.0 • SMuFL addresses many standardization issues that
have troubled MusicXML developers for years
• What does it mean for MusicXML to support SMuFL? – Does MusicXML add support for all of SMuFL’s
thousands of glyphs? – If not, what guidelines to determine which ones? – How about standardization on areas such as font
metadata? – Should documentation reference SMuFL canonical
glyph names to clarify the graphical appearance of different MusicXML elements?
MusicXML 4.0 • SMuFL provides motivation for a major new
MusicXML release
• What else besides SMuFL support? – Features and fixes as discussed at last year’s
meetings – Improved online documentation
A Tool for Sanitizing MusicXML Files • Bob Hamblok, neoScores
MusicXML - Sanitizer"Open source tool to ‘cleanup / update’ MusicXML files
Bob Hamblok, neoScores"
MusicXML - Sanitizer!
Why?
- Implementation-quality of MusicXML? - Quality progresses, but what to do with the old files / still existing problems?"
EXAMPLE 1, words vs credits"
<work> <work-title>Toccata</work-title></work>...<direction> <direction-type> <words default-y="167" valign="middle" font-family="Times" font-style="normal" font-size="25" font-weight="bold">Toccata</words> </direction-type> <voice>1</voice> <staff>1</staff> </direction>...
MusicXML - Sanitizer
...<measure number="67" width="131"> <direction> <direction-type> <words font-family="Times New Roman">mp</words> </direction-type> </direction> ...</measure>...
EXAMPLE 2, words vs dynamics
MusicXML - Sanitizer
...<note default-x="89.83" default-y="5.00"> … <notations> <technical> <fingering>ARIA</fingering> </technical> </notations></note>...
EXAMPLE 3, fingerings vs credits
MusicXML - Sanitizer
...<note default-x="16"> ... <duration>768</duration> <type>half</type> ...</note><note default-x="16"> <chord /> <duration>512</duration> <type>half</type> ...</note>...
EXAMPLE 4, chord notes duration
MusicXML - Sanitizer
...<note default-x="200"> <notations> <slur number="1" placement="below" type="start"> <slur number="1" type="stop"> </notations></note>...
EXAMPLE 4, slurs starting AND stopping on the same note
MusicXML - Sanitizer
... <attributes> <key> <fifths>-1</fifths> <mode>minor</mode> </key> </attributes>… <note> <pitch> <step>B</step> <octave>4</octave> </pitch> </note>...
EXAMPLE 5, missing accidentals
MusicXML - Sanitizer
- note duration in time modifications - lyric – extender lines without end - brackets used as barline, glissandos, tenuto, extender line - measure numbering - recalculate divisions to smallest possible entity - tieds without stop, laissez vibrer? - broken cross-system slurs - consequent default-x of a direction in the first measure of a new system - missing stems / flags / beams - incorrect number of beams"
- missing elisions - missing/wrong voicing within a chord - arpeggiate - words used as a lyric hyphen - accidental-mark used as accidental - missing composer, search in credits and
match against database - whole notes with stem - single eighth note with beam instead of flag - part-group without stop - changing stem direction under one beam (should be possible in some situations) - ...
MusicXML - Sanitizer
EXAMPLE 6
How? (proposal)
- JavaScript/HTML 5
- Make use of MusicJSON https://github.com/saebekassebil/musicjson
- Selection list of modules (plug-ins)
- 2 modes:
- auto-fix ambiguous problems
- user chooses how to fix ambiguous problems. Do we need a UI for this?
- Batch?"
MusicXML - Sanitizer
Conclusion - Nothing is decided - Open questions:
* upgrade files to MusicXML last version?
* Which license to use?"
MusicXML - Sanitizer
MusicXML and MMA / AMEI • The MIDI Manufacturers Association (MMA) and
Association of Musical Electronics Industry (AMEI) are the home of MIDI and its related standards.
• Industry association that is open to MIDI hardware and software manufacturers
• Affordable for independent software developers
• Can move quickly on new standards when someone is driving and there is consensus
• Moves slowly when there is industry division
• Leader in musical interoperability across generations of equipment
AMEI E-Score Proposal • New idea from AMEI to create more business:
– IEC interested in eBook Standards – W3C interested in web music notation standards – AMEI suggests MusicXML might be a good solution – Other solutions may also be needed
• This proposal was introduced at the MMA Annual General Meeting held at NAMM last January
Possible Standards Homes • MMA / AMEI
• W3C
• ISO / IEC – already has unused e-score standard
• MPEG – already has unused e-score standard
• IEEE – already has unused e-score standard
• MMA and AMEI are the only standards bodies with experts in symbolic music representation
Thoughts for MusicXML Home • Always planned that MusicXML would move to a
standards body when mature, like PDF
• Requires a standards body that is interested and capable, respecting compatibility with existing MusicXML implementations
• AMEI / MMA proposal is first indication of interest
• What are thoughts on: – Organizations? – Timing?
Staying in Touch • MusicXML forum: http://forums.makemusic.com
• Shows: Musikmesse, NAMM, SF MusicTech
• Twitter: @MusicXML
• Facebook: www.facebook.com/MusicXML