Skip to content

Parsing and writing UST (UTAU Sequence Text) files in C.

Notifications You must be signed in to change notification settings

Dreamtonics/libutaust

 
 

Repository files navigation

libutaust

Parsing and writing UST (UTAU Sequence Text) files in C.

This is one of the subprojects under Synthesizer V that I had to implement in order to make use of the vast amount of community-sourced lyric-embedded music scores for the testing of the said software.

  • BSD license.

  • No dependency other than the standard library.

  • Does not yet support the parsing of attribute Envelope, VBR, etc. These attributes are stored as strings in structure utaust_note.

  • Note duration and position are stored in double-precision floating points. Use of utaust_iterator to compute the onset time of a note is recommended since it implements high-accuracy Kahan summation algorithm; accumulated summation/subtraction errors are on the order of O(1). However, errors will accumulate linearly if the calling program switches back and forth between utaust_iterator_next and utaust_iterator_prev.

  • You may need to tweak compiler optimization settings if you see an error greater than 1e-15 sec when running the test. I highly doubt if the accumulated error would ever be an issue though, and writing this explanation is taking probably longer than what it took to implement the sum algorithm.

About

Parsing and writing UST (UTAU Sequence Text) files in C.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 82.9%
  • CMake 13.0%
  • Makefile 4.1%