Sunday, September 22, 2013

Sargam JFugue update

The HindustaniSubParser is updated with new features. Here is a quick change list:

  1. Bug Fixed: The "Teevra Ma" was not recognized .
  2. "Ati" (Extra) higher or lower octaves can be defined using qualifiers "<<", "<<<", ">>" and so on.
  3. It is possible to set the "Base Sa" specifying the note name. Ex. "sa=C#"
  4. Possible to define the note duration. Ex. "saw reh gaq...." following the usual JFugue convention on duration. The default duration is "q".
  5. Recursive and mixed duration allowed. Ex. "saqq, reqi...." and so on. Duration should be the last qualifier.
  6. An implicit divider is allowed, to ease manual duration setting. Ex. "sa,re" will split to "sai" and "rei". Since "q" is the default duration, the two "swars" are split to two notes of 1/8th duration. Still need to sort out duration for multiple splits (Ex. "sa,re,ga").
The code is now moved to github under stdcode/HindustaniSubParser. Once JFugue arrives on github, I will fork it and maintain Sargam JFugue there. This repo as of now contains the standalone file changes I am making till then. Of course to use it, one will need to use the JFugue 5 source code and comment out the NoteSubParser and the MicrotonePreProcessor in the Staccato parser. Also one will need to instantiate and "load" the DisjoinSwarsPreProcessor in the Staccato parser.

As an example, with the new changes one can have a pattern like:
T100 ni< re ga,re ni< re sah ni< re matw ni< dh pa ma,ga re ni
T180 ni< re ga,re ni< re sah ni< re matw ni< dh pa ma,ga re niThe output of both the patterns separated by a Rest note of half duration in midi is here.

I hope to add many more soon!

No comments:

Post a Comment

1706 Days

 I am posting a new blog after 1706 days here! So many things have happened during these years! We have COVID and waves of them one after an...