{"id":28312,"library":"symusic","title":"symusic","description":"A high performance MIDI file parser with comprehensible interface. Current version 0.6.0, actively maintained on GitHub.","status":"active","version":"0.6.0","language":"python","source_language":"en","source_url":"https://github.com/Yikai-Liao/symusic.git","tags":["midi","music","parser","high-performance"],"install":[{"cmd":"pip install symusic","lang":"bash","label":"Install from PyPI"}],"dependencies":[{"reason":"Required for array representations.","package":"numpy","optional":true}],"imports":[{"note":"Score is a top-level class.","wrong":"import symusic.Score","symbol":"Score","correct":"from symusic import Score"},{"note":"","wrong":"","symbol":"Track","correct":"from symusic import Track"}],"quickstart":{"code":"from symusic import Score\nscore = Score('path/to/file.mid')\nprint(score.tracks, score.ticks_per_beat, score.time_signatures)\nfor track in score.tracks:\n    print(track.name, len(track.notes))","lang":"python","description":"Load a MIDI file and inspect its tracks, ticks per beat, and time signatures."},"warnings":[{"fix":"Update to 0.6.0 and adjust Score creation: Score('path') instead of deprecated Score.from_file().","message":"symusic 0.5.0 changed the internal API and may break code using earlier versions. The Score class now uses a different initialization signature.","severity":"breaking","affected_versions":"<0.5.0"},{"fix":"Use Score('path') or Score.from_str(data) but note the deprecation; future versions may remove them.","message":"The from_* methods (e.g., from_file, from_str) are deprecated as of 0.6.0. Direct constructor calls are preferred.","severity":"gotcha","affected_versions":">=0.6.0"}],"env_vars":null,"last_verified":"2026-05-09T00:00:00.000Z","next_check":"2026-08-07T00:00:00.000Z","problems":[{"fix":"Run 'pip install symusic' and use 'from symusic import Score'.","cause":"symusic not installed or imported incorrectly.","error":"ModuleNotFoundError: No module named 'symusic'"},{"fix":"Replace 'Score.from_file(path)' with 'Score(path)'.","cause":"Using deprecated API removed in 0.6.0.","error":"AttributeError: 'Score' object has no attribute 'from_file'"}],"ecosystem":"pypi","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}