maialib 1.5.0__cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of maialib might be problematic. Click here for more details.

@@ -0,0 +1,179 @@
1
+ Metadata-Version: 2.1
2
+ Name: maialib
3
+ Version: 1.5.0
4
+ Summary: A C++/Python library to manipulate sheet music data
5
+ Home-page: https://github.com/nyckmaia/maialib
6
+ Author: Nycholas Maia
7
+ Author-email: nyckmaia@gmail.com
8
+ License: GNU General Public License v3 or later (GPLv3+)
9
+ Project-URL: Bug Tracker, https://github.com/nyckmaia/maialib/issues
10
+ Keywords: music,score,sheet music,analysis
11
+ Classifier: Development Status :: 3 - Alpha
12
+ Classifier: Programming Language :: Python :: 3
13
+ Classifier: Programming Language :: C++
14
+ Classifier: License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)
15
+ Classifier: Operating System :: OS Independent
16
+ Classifier: Intended Audience :: Science/Research
17
+ Classifier: Natural Language :: English
18
+ Classifier: Topic :: Software Development :: Libraries
19
+ Requires-Python: >=3.8.0
20
+ Description-Content-Type: text/markdown
21
+ License-File: LICENSE.txt
22
+ Requires-Dist: pandas
23
+ Requires-Dist: plotly
24
+
25
+ # Maialib - Music Analysis Library {#mainpage}
26
+
27
+ ![Maialib CI/CD](https://github.com/nyckmaia/maialib/actions/workflows/wheels.yml/badge.svg)
28
+
29
+ This library is a multiplatform set of musical tools that enable musical score analisys and composition in a easy and fast way. <br>
30
+ The project **core** was wrote in `C++17`, but it also has a `Python` wrapper that allows a greater number of people (ie musicians not trained in IT) to also have in their hands the same power and musical tools available in `maialib`.
31
+
32
+ ## Advantages
33
+
34
+ - Easy to use to musicians and musical researchers
35
+ - High computer perfomance and fast calculations
36
+ - Read and write musical scores (MusicXML file format)
37
+
38
+ ## Get Python Package
39
+
40
+ ```python
41
+ pip install maialib
42
+ ```
43
+ Or, if you have a older `maialib` version installed on your system, please get the latest version running: `pip install maialib --upgrade`
44
+
45
+ ## Get Started
46
+
47
+ You can easily import your sheet music (`*.xml` file) to Python environment using:
48
+
49
+ ```python
50
+ import maialib as ml
51
+
52
+ myScore = ml.Score('./Beethoven/Symphony_9th.xml')
53
+ ```
54
+
55
+ Now you can explore some `maialib` features like:
56
+
57
+ - Find musical patterns
58
+ - Write your own scores from your custom algorithms
59
+ - Analyse scores in a musical statistical data perspective
60
+ - And much more!
61
+
62
+ ## Frequent Asked Questions
63
+
64
+ ### 1) Where can I find the XML file of a specific musical score?
65
+
66
+ To import musical scores the file extensions must be: `*.xml`, `*.mxl` or `*.musicxml` <br>
67
+ You can easily export your music files to these file formats above from score editors, like:
68
+
69
+ - MuseScore (free!)
70
+ - Sibelius
71
+ - Finale
72
+ - Others
73
+
74
+ Many `MusicXML` files are avaliable for free in the internet for download.
75
+
76
+ ### 2) What can I do if I don't have a `*.xml` file of my target music?
77
+ - First, make shure and look at different websites and online repositories trying to find the `*.xml` file
78
+ - You can find on the internet the desired MIDI file and import it in a score editor (like MuseScore, Sibelius, Finale, etc.) and then export the `MusicXML` file from it
79
+ - You can use scan the sheet music paper and get a PDF version of it, so:
80
+ - You can use a OMR software to try to convert the PDF file into a `*.xml` file
81
+ - You can pay for other people to type manually note-by-note the PDF into a musical software (link MuseScore, Sibelius, Finale, etc.)
82
+ - You can type manually note-by-note the music paper into a musical software (link MuseScore, Sibelius, Finale, etc.)
83
+
84
+ ## Documentation (in development)
85
+
86
+ This project have 2 documentation levels. One for each user type:
87
+
88
+ - **Level 1 - User documentation:** for musicians, musical researchers and non-professional IT people (help me to do that!)
89
+ - **Level 2 - Developer documentation:** A deeper information for professional C++ programmers (Doxygen)
90
+
91
+ ### Level 1: Python Tutorial
92
+
93
+ You can explore `maialib` features looking at `python-tutorial` folder ([link here](https://github.com/nyckmaia/maialib/tree/main/python-tutorial)). <br>
94
+ There you will learn how to use and mix `maialib` classes and functions to reach your musical goals
95
+ If you are starting, please check these 3 basic `maialib` Python tutorials:
96
+ - [Create Notes and Chords](https://github.com/nyckmaia/maialib/blob/main/python-tutorial/create_notes_chords.ipynb)
97
+ - [Create a Score](https://github.com/nyckmaia/maialib/blob/main/python-tutorial/create_score.ipynb)
98
+ - [Using Dataframes](https://github.com/nyckmaia/maialib/blob/main/python-tutorial/dataframe.ipynb)
99
+
100
+ ### Level 2: Developer Documentation
101
+
102
+ [Maialib Documentation WebSite](https://maialib.com/)
103
+
104
+ ----------------------------
105
+
106
+ Would you like to improve any maialib function?
107
+ =============================================
108
+
109
+ ## Are you a C++ developer?
110
+
111
+ ### Requirements to build from C++ sources:
112
+
113
+ - C++17 compatible compiler
114
+ - CMake 3.26
115
+ - Python 3.8
116
+ - Make
117
+ - Doxygen (Optional: To build documentation)
118
+ - Buildcache (Optional: To accelerate the build process)
119
+ - CppCheck (Optional: C++ Static Analyzer)
120
+
121
+ ## Are you a Python developer?
122
+
123
+ ### Python Dev-only dependencies
124
+
125
+ ```
126
+ pip install pathlib
127
+ pip install cpplint
128
+ pip install wheel
129
+ pip install mypy
130
+
131
+ # To generate Python stubs
132
+ pip install pybind11-stubgen
133
+ # Mac users: May be you have to add the coverage and pybind11-stubgen on your `PATH` - /etc/paths
134
+
135
+ pybind11_mkdoc (github)
136
+ sudo apt install clang (pybind11_mkdoc dependency) - Linux/Mac Only
137
+ ```
138
+
139
+ ## Tested Environments
140
+
141
+ | Operational System | Compilers |
142
+ | ------------------ | ------------------------------- |
143
+ | Windows 10 x64 | Clang 15.0 (MSYS2) |
144
+ | Linux Ubuntu 20.04 | GCC 9.3 |
145
+ | Apple OSX 10.15 | XCode 11.5 (Command Line Tools) |
146
+
147
+ ## Quick Start
148
+
149
+ ### Build Python module from C++ source
150
+
151
+ Open a terminal (or CMD in Windows), enter inside of the `maialib` folder. <br>
152
+ Type: `make` to build the Python module <br>
153
+ When the build process finishes, type: `make install` <br>
154
+ Done!
155
+
156
+ ## Known issues to build from source
157
+
158
+ ### All Platforms
159
+
160
+ - Multiple Python versions installed, like: `Official Python`, `Microsoft Python`, `MSYS2 Python` and others can direct the build system to choose a wrong version to build and install the library. <br>
161
+ To check all Python versions installed on your system, open the `Terminal` (or `CMD` on Windows) and type: - Linux or Mac: - `which python` - `which python3` - Windows: - `where.exe python` - `where.exe python3`
162
+
163
+ ### Windows-Only
164
+
165
+ - Disable your antivirus or create a exception (CMake permissions)
166
+
167
+ ## Contact
168
+
169
+ Nycholas Maia - nyckmaia@gmail.com
170
+
171
+ ## Contributing
172
+
173
+ - Fork this project
174
+ - Make your custumizations and improvments
175
+ - Please, send me a pull request
176
+
177
+ ## License
178
+
179
+ Maialib is licensed under [GPLv3 License](https://www.gnu.org/licenses/gpl-3.0.html)
@@ -0,0 +1,26 @@
1
+ maialib/setup.py,sha256=6Je6AH2kuRusn02fjJKIekGG8p6TjGH4uQNn-ZepGJM,2003
2
+ maialib/__init__.py,sha256=qiIEL1ZDvpDK0bkGUdZRib3bG973EtKQDFYPFfvJKQA,122
3
+ maialib/maiapy/__init__.pyi,sha256=L8YtZYJMw_9TrdejcKs2c5xTbu5WMRwlHhKz6Qzulf8,77
4
+ maialib/maiapy/sethares_dissonance.pyi,sha256=DMZtrHTGSAaJwcBWX_G-sHF15_eETp1OeRr2L5vwdF0,1171
5
+ maialib/maiapy/plots.py,sha256=laAt68-IiZ4vNLFPKcGCf4IcMDIIZ1uavJpROrS8tqs,23153
6
+ maialib/maiapy/other.py,sha256=6IpzBGQIxCzcfqkFiuMp84GBF-YOmcrxYkevxEBpG6A,4033
7
+ maialib/maiapy/sethares_dissonance.py,sha256=uRQLTQN55dk74hIFpzu9RlTWP0ZhRpVT3yTLI-su1ww,12830
8
+ maialib/maiapy/other.pyi,sha256=5QOvpxb7l9TlDVCn0ACeFgjI14c_7CW0gUb7GoI3gn8,684
9
+ maialib/maiapy/plots.pyi,sha256=7zchTew8-uvIvo0TmJXRd_SRlIX9w1AyOSplbL5YGNM,619
10
+ maialib/maiapy/__init__.py,sha256=L8YtZYJMw_9TrdejcKs2c5xTbu5WMRwlHhKz6Qzulf8,77
11
+ maialib/xml-scores-examples/Mozart_Requiem_Introitus.mxl,sha256=_wc4hMaPhtgocUoL94uVzfVN3TGb08z8Xa2BL4SHfgA,91112
12
+ maialib/xml-scores-examples/Bach_Cello_Suite_1.mxl,sha256=0XGNlcW8o0W7kkeG8j2V_M4eggdOnrxvvvCkpf6x_z4,29622
13
+ maialib/xml-scores-examples/Mahler_Symphony_8_Finale.mxl,sha256=F2-QBKNYjBv_sWT-z4LWi1rX84-P3msxtl-g6joA2FQ,229034
14
+ maialib/xml-scores-examples/Beethoven_Symphony_5_mov_1.xml,sha256=iZ2uqqHWMkDtmQVKovT-H_-zZp1SixASi1R7L3TmuOI,4775525
15
+ maialib/xml-scores-examples/Chopin_Fantasie_Impromptu.mxl,sha256=HkouQ_4bI6XDoGmzJITuU81CzQZE2lQjwl6WNlfZmJA,35727
16
+ maialib/xml-scores-examples/Dvorak_Symphony_9_mov_4.mxl,sha256=s7FGUEmFmgcIdmkZ-bv4sOGGj5HYKc2nc760V79DMtM,261438
17
+ maialib/xml-scores-examples/Strauss_Also_Sprach_Zarathustra.mxl,sha256=nOQra05RHHDe_dXFs5WBJG2l9R1KQk64urV7lWYC2vw,18863
18
+ maialib/maiacore/maiacore.cpython-312-x86_64-linux-gnu.so,sha256=Isi6sdEqp2QRtGJ4Ei2x3gyf16JZCSlnUUidrSfmJPc,4144584
19
+ maialib/maiacore/__init__.pyi,sha256=6ch7-K9458Bh_ReceKjaFGWROX9AbgKpJOI6t_4F3jk,1205
20
+ maialib/maiacore/maiacore.pyi,sha256=SKUFFo8dVG8uFL-W7Dj7Qc1wmP6rbYlM_0Hl7om495I,47052
21
+ maialib/maiacore/__init__.py,sha256=IW7E0LuzAttsn0b37SEthCA0LKuzSgkepSpq8DWExYQ,77
22
+ maialib-1.5.0.dist-info/LICENSE.txt,sha256=ixuiBLtpoK3iv89l7ylKkg9rs2GzF9ukPH7ynZYzK5s,35148
23
+ maialib-1.5.0.dist-info/WHEEL,sha256=B8ArxCF_7InJqP4ievx59sDebzJENUkfE_wbI31fy-8,151
24
+ maialib-1.5.0.dist-info/top_level.txt,sha256=sZWQaa-Up2ba00WpAxBhOLKM6qQYTpUKJMXgSE0Nc48,17
25
+ maialib-1.5.0.dist-info/RECORD,,
26
+ maialib-1.5.0.dist-info/METADATA,sha256=IsX5RcPKJOVpFdslsGFK8rTRzVg05fWMnqN_4p3uyog,6654
@@ -0,0 +1,6 @@
1
+ Wheel-Version: 1.0
2
+ Generator: setuptools (70.1.0)
3
+ Root-Is-Purelib: false
4
+ Tag: cp312-cp312-manylinux_2_17_x86_64
5
+ Tag: cp312-cp312-manylinux2014_x86_64
6
+
@@ -0,0 +1,2 @@
1
+ maiacore
2
+ maialib