Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to add "Arabian" or "Microtone" or "Quarter-tone" support to jMusic? [closed]

I have been working lately on a program that transcribes WAV files having a single and monophonic instrument, more likely this instrument is Vocal.

This program converts the given WAV file into Sheet Music or "SCORE".

The thing is:

  • I want to draw sheet music of every note in the WAV file, for example:

    • the WAV file contains the following notes:

      • C D E F G# Bb
    • E is neither natural nor sharp nor flat, it is Half-Flat.

Such note can be represented in MIDI using the PITCH BEND as follows:


MIDI REPRESENTATION

NOTE_ON 60 PITCHBEND 25

This means that note number 60 which is effectively "C4" is pressed with pitch bend value of 25 making it C Half-Sharp or C Half-Flat.


Using jMusic, I was able to draw the sheet music of everything except Half-Flat and Half-Sharp notes.

I used jMusic to get the sheet music in the following pattern :

FIRST STAGE:

RECORD >> SAMPLE >> SEGMENTATION >> FFT >> MIDI

SECOND STAGE (USING JMUSIC):

MIDI-TO-SMF >> SMF-TO-SCORE >> NOTATE(SCORE)

I figured out how does jMusic really work, and I figured out that it uses images saved in "GIF format" having size of "18 x 56" in the following directory: " jm.gui.cpn.graphics "

My Question:How can I make jMusic detect "pitch-bend value" and draw the corresponding Half-Flat or Half-Sharp accidentals?

Thanks all :)

like image 462
Xtremeaiy Avatar asked Mar 02 '11 10:03

Xtremeaiy


2 Answers

I don't know how popular jMusic is but in case you can't find anyone who knows about it have you tried searching the docs for 'Accidentals' or similar? E.g. try:

http://www.google.com/search?q=accidentals+site:http%3A%2F%2Fjmusic.ci.qut.edu.au

like image 68
Ben Page Avatar answered Nov 11 '22 10:11

Ben Page


If you really want to 'notate' arabic/microtonal music automatically: good luck

If you are having problems with 'just-off' intonation in the input, I suggest a pitch shift filter to globally center the intonation to your tuning (e.g. using Ardour, LADSPA filters, sox (commandline) or many others)

Otherwise you could look into a kind of rounding algorithm. Also look at the documentation using the search keyword 'cents' since that should lead you to info pertaining to nonstandard tunings.

like image 31
sehe Avatar answered Nov 11 '22 09:11

sehe