Symusic

Latest version: v0.4.8

Safety actively analyzes 638430 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 4 of 5

0.2.1

Add `end` property for Pedal requested by Natooz

v0.2.0-fix
* Writing back to midi files is now supported! (haven't been tested in various cases) lzqlzzq Yikai-Liao
* Convertion between different time unit by `Score(s, ttype='tick')` or `s.to('quarter')` Yikai-Liao
* Add property `degree` for `KeySignature`, which gives you a miditoolkit and pretty_midi style keysignature lzqlzzq

0.1.7

* Almost all the known parsing bugs (reported by Natooz ) are fixed in this version! Yikai-Liao

* `TrackFactory` now support more arguments! Yikai-Liao

* `Pianoroll` part is still under development lzqlzzq

0.1.6

* support `isintance` operation for factory instance Yikai-Liao Natooz
* support `==` and `!=` operator Yikai-Liao Natooz
* add Linux aarch64 (arm64) precompiled files lzqlzzq
python
from symusic import Note
isinstance(Note(1,1,1,1), Note) True
Note(1,1,1,1) == Note(1,1,1,1) True
Note(1,1,1,1) != Note(2,2,2,2) True


v0.1.5-fix
Make All objects in symusic pickable

* Add c++20 in github actions workflow lzqlzzq
* Add using `zpp_bits` as pickle backend Yikai-Liao
* pickle for symusic is now 10 times faster than loading from raw midi files
* Just use pickle for `multi-processing` and `cache`. Don't use pickle to store midi for a long time, the format might be changed in the future
* There is still a redundant copy in pickle serialization process, may try py::buffer_info to achieve zero_copy
* add tpq construtor in `ScoreFactory` Yikai-Liao
* add `PedalFactory` Natooz
* add `ttype` readonly property for all classes Yikai-Liao

0.1.4

* Add `inplace` argument to most batch operations, like `sort` and `shit_time`, suggested by Natooz
* remove old interface like `sort_inplace`

0.1.3

* Add support for `Pedal` Yikai-Liao
* Fix `pathlib.Path` parsing error when loading midi form file.
* Thanks for all the help on code writing and github actions furnished by lzqlzzq
* remove redundant debug information about `PitchBend` mentioned by Natooz
* There is a known error: number of parsed `control change` events is different from that in `miditoolkit`.

0.1.2

* Support `key` and `reverse` parameters for sort functions (required by Natooz)
* Use factory classes (defined in python) to dispatch all containers like `Score` and `Note` instead of methods with overloads in c++
* use `ttype`, short for time unit type, as the name for the original `time_unit` argument (similar to `dtype` in `numpy`)
* use `str` or `Score.Timeunit.tick`, `Score.Timeunit.quarter`, `Score.Timeunit.second` as valid `ttype`

Page 4 of 5

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.