amm_sdk

Crates.ioamm_sdk
lib.rsamm_sdk
version0.3.9
sourcesrc
created_at2024-11-04 03:27:41.593181
updated_at2024-11-05 21:50:54.260322
descriptionAbstract Music Manipulation (AMM) Rust SDK
homepagehttps://github.com/hedgetechllc/amm-sdk
repositoryhttps://github.com/hedgetechllc/amm-sdk
max_upload_size
id1434513
size9,996,238
Will Hedgecock (hedgecrw)

documentation

https://docs.rs/amm_sdk/latest/

README

amm-sdk

Abstract Music Manipulation (AMM) SDK

Under heavy development - Updates forthcoming

Under Development

  • Create WASM build

  • Finish iter_timeslices() to work with playback

    • Make get_slices_for_playback(): Create implicit slices for things like glissandos and mordents
      • Determines that fastest possible timeslice and use that as the time quantization level
      • Can also select ranges of timeslices
  • Implement get_pcm_samples() on Timeslice to create audio buffer for note + mods to use in direct playback

  • Finish MIDI Reader Implementation

  • Make fully no_std compatible

  • Add a test containing Glissandos and/or multi-note tremolos and/or implicit + explicit tempo changes

  • Finish MusicXML Reader Implementation

    • Take into account time-only attributes
    • Scan text attributes for common items (rall., etc.)
    • Scan sound attributes for items maybe not recognized otherwise (rall., etc.)
  • Remove pub(crate) from Phrase and make MultiVoice okay with this

  • Make composition timeslice iterator a real iterator (and check that staff timeslices line up correctly)

Commit count: 0

cargo fmt