

{"id":113,"date":"2023-01-02T22:35:00","date_gmt":"2023-01-02T21:35:00","guid":{"rendered":"https:\/\/project.inria.fr\/codex\/?page_id=113"},"modified":"2023-01-04T11:57:25","modified_gmt":"2023-01-04T10:57:25","slug":"software","status":"publish","type":"page","link":"https:\/\/project.inria.fr\/codex\/software\/","title":{"rendered":"Software"},"content":{"rendered":"<p><\/p>\n<h4>qparse framework<\/h4>\n<p><span style=\"font-family: 'Source Sans Pro'; font-size: 17px;\">The qparse library implements an original approach for the transcription of symbolic music performances into structured music scores (see the page on\u00a0<a href=\"https:\/\/project.inria.fr\/codex\/activities\">activities<\/a> of the project)<\/span><\/p>\n<p>The C++ sources (77k loc) are available in a public<a href=\"https:\/\/gitlab.inria.fr\/qparse\/qparselib\"> gitlab repository<\/a>, see also the following page for a description of the tools.<\/p>\n<p><a href=\"https:\/\/qparse.gitlabpages.inria.fr\">https:\/\/qparse.gitlabpages.inria.fr<\/a><\/p>\n<p>The project provides the following transcription tools<\/p>\n<ul>\n<li><strong>monoparse<\/strong>, a command line tool for the\u00a0transcription of monophonic melodies,<\/li>\n<li><strong>drumparse<\/strong>, a command line tool for the\u00a0transcription of recordings of electronic drumkits,<\/li>\n<li><strong>pyqparse<\/strong>, a binding for running transcription from a Python interpreter, which is integrated with the toolkit <a href=\"http:\/\/web.mit.edu\/music21\">Music 21<\/a>\u00a0for computational musicology.\u00a0Some Pythons scripts and use cases of this binding can be found in the following repository.<\/li>\n<\/ul>\n<p><a href=\"https:\/\/gitlab.inria.fr\/lyrodrig\/pyqparse\">https:\/\/gitlab.inria.fr\/lyrodrig\/pyqparse<\/a><\/p>\n<p>The <strong>Score Model<\/strong> presented in\u00a0<span style=\"font-family: 'Source Sans Pro'; font-size: 17px;\">the page\u00a0<a href=\"https:\/\/project.inria.fr\/codex\/activities\">activities<\/a> is part of the qparse library, due to mutual dependencies: qparse is used to construct a Score Model from unstructured music content, by parsing, and the\u00a0Score Model export functionalities are used to provide scores in XML formats. This model is used in other activities and developments besides\u00a0our transcription tools.<\/span><\/p>\n<h4>Music score diff<\/h4>\n<p>A first version of a diff tool,\u00a0identifying differences between music scores,\u00a0<span style=\"font-family: 'Source Sans Pro';\">has been implemented in Python by Francesco Foscarin\u00a0on the top of the data structures of\u00a0<\/span><a href=\"http:\/\/web.mit.edu\/music21\">Music 21<\/a><span style=\"font-family: 'Source Sans Pro';\"> toolkit. It relies on original Dynamic Programming algorithms for computed an ad-hoc edit-distances on sequences of trees.<\/span><\/p>\n<p>A second version is in development on the top of our (C++) Score Model, for improved performances and better integration with our other tools.<\/p>\n<p><span style=\"font-family: 'Source Sans Pro';\">Another version is developed independently in the following fork:<\/span><\/p>\n<p><a href=\"https:\/\/github.com\/gregchapman-dev\/musicdiff\">https:\/\/github.com\/gregchapman-dev\/musicdiff<\/a><\/p>\n<h4>Pitch Spelling<\/h4>\n<p>The Pitch Spelling procedure mentioned in\u00a0<span style=\"font-family: 'Source Sans Pro'; font-size: 17px;\">the page\u00a0<a href=\"https:\/\/project.inria.fr\/codex\/activities\">activities<\/a>\u00a0has been implemented\u00a0<\/span>in C++, with a Python binding and Python scripts for experimentation.<\/p>\n<p><a href=\"https:\/\/gitlab.inria.fr\/pse\/pse\">https:\/\/gitlab.inria.fr\/pse\/pse<\/a><\/p>\n<p>An evaluation is ongoing in the following repository.<\/p>\n<p><a href=\"https:\/\/gitlab.inria.fr\/pse\/pseval\">https:\/\/gitlab.inria.fr\/pse\/pseval<\/a><\/p>\n<p><span style=\"color: #444444; font-family: inherit; font-size: 1.6835em;\">Neuma<\/span><\/p>\n<p>The digital library of music scores <a href=\"http:\/\/neuma.huma-num.fr\">Neuma<\/a> has been developed by a consortium involving <a href=\"https:\/\/cedric.cnam.fr\/lab\/\">CNAM<\/a> and <a href=\"https:\/\/iremus.cnrs.fr\">IReMus<\/a>, \u00a0long before the Codex project. Members of Codex are contributing to this library. One can mention in particular the development of a RESTful service for <a href=\"https:\/\/www.mdpi.com\/2504-2289\/6\/1\/23\">melodic search<\/a>.<\/p>\n<h4>Generation of performances<\/h4>\n<p>Our partners at Sakai Lab, Nagoya University, and Tojo Lab, JAIST Kanazawa are developing a toolkit for the generation of realistic music performances from XML scores, relying on segmentation into phrases, provided by automated musicological analyses performed in Tojo Lab, following the <a href=\"http:\/\/gttm.jp\/gttm\">GTTM<\/a> (Generative Theory of Tonal Music).<\/p>\n<p><a href=\"https:\/\/git.trs.css.i.nagoya-u.ac.jp\/transcription\/dm-env\">https:\/\/git.trs.css.i.nagoya-u.ac.jp\/transcription\/dm-env<\/a><\/p>\n<p>Such performances provide and are in particular limitless and various amounts of data for the evaluation of transcription.<\/p>\n<h4>Datasets<\/h4>\n<p><span style=\"font-family: 'Source Sans Pro'; font-size: 17px;\">See the page on\u00a0<a href=\"https:\/\/project.inria.fr\/codex\/activities\">activities<\/a> of the project for a description of the context of the creation of the following datasets, and their use in the Codex project.<\/span><\/p>\n<ul>\n<li>The dataset <a href=\"https:\/\/gitlab.inria.fr\/qparse\/corpus\">Lamarque-Goudard<\/a>, contains about 300 MusicXML scores of monophonic music, with several MIDI performances for each. The performances are generated automatically, or, more rarely, recorded by professional pianists on an electronic keyboard.<br \/>\nIt is called\u00a0by the\u00a0names of the authors of a <a href=\"https:\/\/lemoine-education.fr\/produit\/dun-rythme-a-lautre-1\/\">method<\/a> for teaching rhythm in french music schools.<\/li>\n<li>The dataset <a href=\"https:\/\/github.com\/fosfrancesco\/asap-dataset\">ASAP<\/a>\u00a0of Western classical piano music. contains 222 digital musical scores aligned with 1068 performances.<\/li>\n<li>The dataset scored GMD, containing scores transcription of the MIDI recordings in the <a href=\"https:\/\/magenta.tensorflow.org\/datasets\/groove\">Groove Midi Dataset<\/a>, is currently under development.<\/li>\n<\/ul>\n<p>&nbsp;<\/p>","protected":false},"excerpt":{"rendered":"<p>qparse framework The qparse library implements an original approach for the transcription of symbolic music performances into structured music scores (see the page on\u00a0activities of the project) The C++ sources (77k loc) are available in a public gitlab repository, see also the following page for a description of the tools&#8230;.<\/p>\n<p> <a class=\"continue-reading-link\" href=\"https:\/\/project.inria.fr\/codex\/software\/\"><span>Continue reading<\/span><i class=\"crycon-right-dir\"><\/i><\/a> <\/p>\n","protected":false},"author":2286,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-113","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/project.inria.fr\/codex\/wp-json\/wp\/v2\/pages\/113","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/project.inria.fr\/codex\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/project.inria.fr\/codex\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/project.inria.fr\/codex\/wp-json\/wp\/v2\/users\/2286"}],"replies":[{"embeddable":true,"href":"https:\/\/project.inria.fr\/codex\/wp-json\/wp\/v2\/comments?post=113"}],"version-history":[{"count":14,"href":"https:\/\/project.inria.fr\/codex\/wp-json\/wp\/v2\/pages\/113\/revisions"}],"predecessor-version":[{"id":207,"href":"https:\/\/project.inria.fr\/codex\/wp-json\/wp\/v2\/pages\/113\/revisions\/207"}],"wp:attachment":[{"href":"https:\/\/project.inria.fr\/codex\/wp-json\/wp\/v2\/media?parent=113"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}