Symusic

Latest version: v0.4.8

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

Scan your dependencies

Page 3 of 5

0.3.2

* fix second conversion error when `tempos` is empty lzqlzzq Yikai-Liao
* fix start and end property when `tracks` is empty lzqlzzq

0.3.1

* fix errors in copy and sort methods Natooz Yikai-Liao
* set the default key of sorting TrackList to `is_durm, program, name, note_num()`

0.3.0

After a long period of development, we have finally merge the librarify branch 19 into the main branch and we release it here as v0.3.0 🎉

* We finally split the original `Score.hpp` into multiple files successfully, and make them a c++ library, which means now you could use symusic easily in your own c++ project! Yikai-Liao lzqlzzq
* A branch new [SoA](https://en.wikipedia.org/wiki/AoS_and_SoA) interface #18 in this version Yikai-Liao, and more `SoA` based functions will be introduced in the future 10.
Here is an example:
python
note_arr: Dict[str, np.ndarray] = score.tracks[0].notes.numpy()

* Re-implement Pianoroll 16 lzqlzzq
* Second is fully supported now 17 Yikai-Liao ilya16
* [nanobind](https://github.com/wjakob/nanobind) is introduced as the new python binding framework instead of pybind11, to reduce overhead. Yikai-Liao The overhead benchmark is available in #18
* A yet to be completed [document](https://yikai-liao.github.io/symusic/) is added to github pages. We choose [mdbook](https://github.com/rust-lang/mdBook) as the framework. Yikai-Liao
* A filter method is added for all the List like objects in symusic Yikai-Liao , you can use them like this:
python
score.tracks[0].notes.filter(lambda note: note.pitch > 60, inplace=True)
`

0.2.5

We copy key performance improvements from the `librarify` branch manually , basecaus the new pianoroll interface design is stuck 16
And we want to let all enjoy the new midi parsing speed, which would be several times faster.

In this version:
* Midi parsing performance is significantly improved Yikai-Liao lzqlzzq
* utf8 path on windows is supported (this issue is found by Natooz)

Here, we would like to thank [intel vtune](https://www.intel.com/content/www/us/en/developer/tools/oneapi/vtune-profiler.html) for its accurate analysis of hotspot functions, which allows us to quickly optimize the performance of our code.

0.2.4

* Fix empty score dump error 15
* Change the default sort key of note and pedal. Natooz/MidiTok116
* (time, pitch, duration) for note
* (time, duration) for pedal
* Sort note and pedal while parsing midi files, suggested [here](https://github.com/Natooz/MidiTok/pull/116#issuecomment-1869666791)

v0.2.3-fix
* Fix `TempoFactory.__call__`, users now can create `Tempo` by `qpm` or `mspq` 14
* Add `resample(self, tpq: int, min_dur: int)` for `Score`. Now it is still a naive version, which rounds start and duration directly. 14 10

0.2.2

read dump test` is now passed!

* Fix note order error in dump operation 13 Natooz Yikai-Liao lzqlzzq
* Fix tempo precession loss issue 13 Natooz Yikai-Liao
* Using `pyporject.toml` instead of `setup.py` 12 lzqlzzq
* Add python test scripts and corresponding ci config 6 11 Natooz

Page 3 of 5

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.