summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCoprDistGit <infra@openeuler.org>2023-05-10 09:22:50 +0000
committerCoprDistGit <infra@openeuler.org>2023-05-10 09:22:50 +0000
commit858d1f50c9899595aabcc1debd842103b2ecbb9d (patch)
tree1be38d2bc24763aec5bda818eb517cbd4c2fd773
parent2c95b60b8675d4a7f365dc356a5fcc5f056990b5 (diff)
automatic import of python-mutwo
-rw-r--r--.gitignore1
-rw-r--r--python-mutwo.spec382
-rw-r--r--sources1
3 files changed, 384 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
index e69de29..1b1bf3f 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/mutwo-0.50.1.tar.gz
diff --git a/python-mutwo.spec b/python-mutwo.spec
new file mode 100644
index 0000000..74fc952
--- /dev/null
+++ b/python-mutwo.spec
@@ -0,0 +1,382 @@
+%global _empty_manifest_terminate_build 0
+Name: python-mutwo
+Version: 0.50.1
+Release: 1
+Summary: event based framework for generative art
+License: GPL
+URL: https://github.com/mutwo-org/mutwo
+Source0: https://mirrors.nju.edu.cn/pypi/web/packages/29/07/7a401781f9e8137d5e130192ac44cb23254a2a39ff0dd9dcd2075d6afdff/mutwo-0.50.1.tar.gz
+BuildArch: noarch
+
+Requires: python3-nose
+
+%description
+# mutwo
+
+[![Build Status](https://circleci.com/gh/mutwo-org/mutwo.svg?style=shield)](https://circleci.com/gh/mutwo-org/mutwo)
+[![docs](https://readthedocs.org/projects/docs/badge/?version=latest)](https://mutwo.readthedocs.io/en/latest/)
+[![License: GPL v3](https://img.shields.io/badge/License-GPLv3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0)
+[![PyPI version](https://badge.fury.io/py/mutwo.svg)](https://badge.fury.io/py/mutwo)
+[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)
+
+### disclaimer: This framework is still in an early stage of development and the API may still change until version 1.0.0.
+
+**Mutwo** is a flexible, modular, event based framework for composing music or other time-based arts in Python.
+It aims to help composers to build musical structures in a meaningful way and translate those structures to different third party objects (e.g. midi files, [csound](https://csound.com/) scores, musical notation with [Lilypond](https://lilypond.org/) via [abjad](https://github.com/Abjad/abjad)).
+The general design philosophy stresses out the independence and freedom of the user with the help of generic data structures and an easily extensible and tweakable software design.
+
+The following example generates a short midi file:
+
+```python3
+from mutwo.core.events import basic
+from mutwo.ext.events import music
+from mutwo.ext.converters import frontends
+simple_melody = basic.SequentialEvent(
+ [
+ music.NoteLike(pitch_name, duration=duration, volume="mf")
+ for pitch_name, duration in (
+ ("c", 0.75),
+ ("a", 0.25),
+ ("g", 1 / 6),
+ ("es", 1 / 12),
+ )
+ ]
+)
+midi_file_converter = frontends.midi.MidiFileConverter()
+midi_file_converter.convert(simple_melody, "my_simple_melody.mid")
+```
+
+Making Western notation via [abjad](https://github.com/Abjad/abjad) of the same melody:
+
+```python3
+import abjad
+abjad_voice_converter = frontends.abjad.SequentialEventToAbjadVoiceConverter()
+abjad_voice = abjad_voice_converter.convert(simple_melody)
+abjad_score = abjad.Score([abjad.Staff([abjad_voice])])
+abjad.show(abjad_score)
+```
+
+![Lilypond engraving](docs/pictures/readme_abjad_example.png)
+
+
+### Plugins
+
+Starting from version 0.43.0 mutwo uses a modular design.
+Only basic and internal functionality is provided by the main mutwo core package.
+For adding various third party converter or better representation for certain areas the mutwo ecosystem supports plugin-like extensions.
+The following list gives an overview of currently supported extensions:
+
+- [mutwo.ext-music](https://github.com/mutwo-org/mutwo.ext-music): Improve workflow in writing traditional note based music by adding the `mutwo.ext.events.music` module
+- [mutwo.ext-common-generators](https://github.com/mutwo-org/mutwo.ext-common-generators): Algorithmic generation of data to be used for artistic works
+- [mutwo.ext-midi](https://github.com/mutwo-org/mutwo.ext-midi): Render mutwo events to midi files
+- [mutwo.ext-abjad](https://github.com/mutwo-org/mutwo.ext-abjad): Build [Lilypond based](lilypond.org/) Western score notation via [Abjad](abjad.github.io/)
+- [mutwo.ext-csound](https://github.com/mutwo-org/mutwo.ext-csound): Create electronic music parts via [csound](csound.com/)
+- [mutwo.ext-isis](https://github.com/mutwo-org/mutwo.ext-isis): Use singing synthesis via [ISiS](https://forum.ircam.fr/projects/detail/isis/)
+- [mutwo.ext-reaper](https://github.com/mutwo-org/mutwo.ext-reaper): Helpful converters for the [Reaper](https://www.reaper.fm/) DAW
+- [mutwo.ext-ekmelily](https://github.com/mutwo-org/mutwo.ext-ekmelily): Simplify writing microtonal notation in Lilypond by rendering files for the Lilypond extension [Ekmelily](http://ekmelic-music.org/en/extra/ekmelily.htm)
+- [mutwo.ext-mmml](https://github.com/mutwo-org/mutwo.ext-mmml): Write music in plain text files and convert it to mutwo events (experimental)
+
+Writing new plugins is simple, its basic structure can be understood at the [mutwo.ext-example](https://github.com/mutwo-org/mutwo.ext-example) repo.
+
+### Documentation
+
+For more information how to use mutwo read the [documentation](https://mutwo.readthedocs.io/en/latest/).
+
+
+### Installation
+
+Mutwo is available on [pypi](https://pypi.org/project/mutwo/) and can be installed via pip:
+
+```sh
+pip3 install mutwo
+```
+
+This only installs the core functionality (see plugins above).
+
+
+### Similar projects
+
+There are a many similar composition frameworks. Maybe one of them fits better to your particular use-case:
+
+**Python based composition frameworks:**
+
+- [scamp](http://scamp.marcevanstein.com/): "SCAMP is a computer-assisted composition framework in Python designed to act as a hub, flexibly connecting the composer-programmer to a variety of resources for playback and notation."
+- [isobar](https://github.com/ideoforms/isobar): "isobar is a Python library for creating and manipulating musical patterns, designed for use in algorithmic composition, generative music and sonification."
+- [JythonMusic](https://jythonmusic.me/): "JythonMusic is an environment for music making and creative programming."
+
+
+**Composition frameworks in other languages:**
+
+- [slippery-chicken](https://michael-edwards.org/sc/): "a Common Lisp and CLOS package for algorithmic composition."
+- [OpenMusic](https://openmusic-project.github.io/): "OpenMusic (OM) is a visual programming language for computer-assisted music composition created at IRCAM, inheriting from a long tradition of computer-assisted composition research."
+- [Euterpea](http://www.euterpea.com/): "Euterpea is a cross-platform, domain-specific language for computer music applications embedded in the Haskell programming language."
+- [jMusic](http://explodingart.com/jmusic/): "jMusic is a project designed to provide composers and software developers with a library of compositional and audio processing tools."
+- [Comic](https://github.com/simonbahr/Comic): "A Lisp-Environment for Inter-Media Composition."
+
+
+
+
+%package -n python3-mutwo
+Summary: event based framework for generative art
+Provides: python-mutwo
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-pip
+%description -n python3-mutwo
+# mutwo
+
+[![Build Status](https://circleci.com/gh/mutwo-org/mutwo.svg?style=shield)](https://circleci.com/gh/mutwo-org/mutwo)
+[![docs](https://readthedocs.org/projects/docs/badge/?version=latest)](https://mutwo.readthedocs.io/en/latest/)
+[![License: GPL v3](https://img.shields.io/badge/License-GPLv3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0)
+[![PyPI version](https://badge.fury.io/py/mutwo.svg)](https://badge.fury.io/py/mutwo)
+[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)
+
+### disclaimer: This framework is still in an early stage of development and the API may still change until version 1.0.0.
+
+**Mutwo** is a flexible, modular, event based framework for composing music or other time-based arts in Python.
+It aims to help composers to build musical structures in a meaningful way and translate those structures to different third party objects (e.g. midi files, [csound](https://csound.com/) scores, musical notation with [Lilypond](https://lilypond.org/) via [abjad](https://github.com/Abjad/abjad)).
+The general design philosophy stresses out the independence and freedom of the user with the help of generic data structures and an easily extensible and tweakable software design.
+
+The following example generates a short midi file:
+
+```python3
+from mutwo.core.events import basic
+from mutwo.ext.events import music
+from mutwo.ext.converters import frontends
+simple_melody = basic.SequentialEvent(
+ [
+ music.NoteLike(pitch_name, duration=duration, volume="mf")
+ for pitch_name, duration in (
+ ("c", 0.75),
+ ("a", 0.25),
+ ("g", 1 / 6),
+ ("es", 1 / 12),
+ )
+ ]
+)
+midi_file_converter = frontends.midi.MidiFileConverter()
+midi_file_converter.convert(simple_melody, "my_simple_melody.mid")
+```
+
+Making Western notation via [abjad](https://github.com/Abjad/abjad) of the same melody:
+
+```python3
+import abjad
+abjad_voice_converter = frontends.abjad.SequentialEventToAbjadVoiceConverter()
+abjad_voice = abjad_voice_converter.convert(simple_melody)
+abjad_score = abjad.Score([abjad.Staff([abjad_voice])])
+abjad.show(abjad_score)
+```
+
+![Lilypond engraving](docs/pictures/readme_abjad_example.png)
+
+
+### Plugins
+
+Starting from version 0.43.0 mutwo uses a modular design.
+Only basic and internal functionality is provided by the main mutwo core package.
+For adding various third party converter or better representation for certain areas the mutwo ecosystem supports plugin-like extensions.
+The following list gives an overview of currently supported extensions:
+
+- [mutwo.ext-music](https://github.com/mutwo-org/mutwo.ext-music): Improve workflow in writing traditional note based music by adding the `mutwo.ext.events.music` module
+- [mutwo.ext-common-generators](https://github.com/mutwo-org/mutwo.ext-common-generators): Algorithmic generation of data to be used for artistic works
+- [mutwo.ext-midi](https://github.com/mutwo-org/mutwo.ext-midi): Render mutwo events to midi files
+- [mutwo.ext-abjad](https://github.com/mutwo-org/mutwo.ext-abjad): Build [Lilypond based](lilypond.org/) Western score notation via [Abjad](abjad.github.io/)
+- [mutwo.ext-csound](https://github.com/mutwo-org/mutwo.ext-csound): Create electronic music parts via [csound](csound.com/)
+- [mutwo.ext-isis](https://github.com/mutwo-org/mutwo.ext-isis): Use singing synthesis via [ISiS](https://forum.ircam.fr/projects/detail/isis/)
+- [mutwo.ext-reaper](https://github.com/mutwo-org/mutwo.ext-reaper): Helpful converters for the [Reaper](https://www.reaper.fm/) DAW
+- [mutwo.ext-ekmelily](https://github.com/mutwo-org/mutwo.ext-ekmelily): Simplify writing microtonal notation in Lilypond by rendering files for the Lilypond extension [Ekmelily](http://ekmelic-music.org/en/extra/ekmelily.htm)
+- [mutwo.ext-mmml](https://github.com/mutwo-org/mutwo.ext-mmml): Write music in plain text files and convert it to mutwo events (experimental)
+
+Writing new plugins is simple, its basic structure can be understood at the [mutwo.ext-example](https://github.com/mutwo-org/mutwo.ext-example) repo.
+
+### Documentation
+
+For more information how to use mutwo read the [documentation](https://mutwo.readthedocs.io/en/latest/).
+
+
+### Installation
+
+Mutwo is available on [pypi](https://pypi.org/project/mutwo/) and can be installed via pip:
+
+```sh
+pip3 install mutwo
+```
+
+This only installs the core functionality (see plugins above).
+
+
+### Similar projects
+
+There are a many similar composition frameworks. Maybe one of them fits better to your particular use-case:
+
+**Python based composition frameworks:**
+
+- [scamp](http://scamp.marcevanstein.com/): "SCAMP is a computer-assisted composition framework in Python designed to act as a hub, flexibly connecting the composer-programmer to a variety of resources for playback and notation."
+- [isobar](https://github.com/ideoforms/isobar): "isobar is a Python library for creating and manipulating musical patterns, designed for use in algorithmic composition, generative music and sonification."
+- [JythonMusic](https://jythonmusic.me/): "JythonMusic is an environment for music making and creative programming."
+
+
+**Composition frameworks in other languages:**
+
+- [slippery-chicken](https://michael-edwards.org/sc/): "a Common Lisp and CLOS package for algorithmic composition."
+- [OpenMusic](https://openmusic-project.github.io/): "OpenMusic (OM) is a visual programming language for computer-assisted music composition created at IRCAM, inheriting from a long tradition of computer-assisted composition research."
+- [Euterpea](http://www.euterpea.com/): "Euterpea is a cross-platform, domain-specific language for computer music applications embedded in the Haskell programming language."
+- [jMusic](http://explodingart.com/jmusic/): "jMusic is a project designed to provide composers and software developers with a library of compositional and audio processing tools."
+- [Comic](https://github.com/simonbahr/Comic): "A Lisp-Environment for Inter-Media Composition."
+
+
+
+
+%package help
+Summary: Development documents and examples for mutwo
+Provides: python3-mutwo-doc
+%description help
+# mutwo
+
+[![Build Status](https://circleci.com/gh/mutwo-org/mutwo.svg?style=shield)](https://circleci.com/gh/mutwo-org/mutwo)
+[![docs](https://readthedocs.org/projects/docs/badge/?version=latest)](https://mutwo.readthedocs.io/en/latest/)
+[![License: GPL v3](https://img.shields.io/badge/License-GPLv3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0)
+[![PyPI version](https://badge.fury.io/py/mutwo.svg)](https://badge.fury.io/py/mutwo)
+[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)
+
+### disclaimer: This framework is still in an early stage of development and the API may still change until version 1.0.0.
+
+**Mutwo** is a flexible, modular, event based framework for composing music or other time-based arts in Python.
+It aims to help composers to build musical structures in a meaningful way and translate those structures to different third party objects (e.g. midi files, [csound](https://csound.com/) scores, musical notation with [Lilypond](https://lilypond.org/) via [abjad](https://github.com/Abjad/abjad)).
+The general design philosophy stresses out the independence and freedom of the user with the help of generic data structures and an easily extensible and tweakable software design.
+
+The following example generates a short midi file:
+
+```python3
+from mutwo.core.events import basic
+from mutwo.ext.events import music
+from mutwo.ext.converters import frontends
+simple_melody = basic.SequentialEvent(
+ [
+ music.NoteLike(pitch_name, duration=duration, volume="mf")
+ for pitch_name, duration in (
+ ("c", 0.75),
+ ("a", 0.25),
+ ("g", 1 / 6),
+ ("es", 1 / 12),
+ )
+ ]
+)
+midi_file_converter = frontends.midi.MidiFileConverter()
+midi_file_converter.convert(simple_melody, "my_simple_melody.mid")
+```
+
+Making Western notation via [abjad](https://github.com/Abjad/abjad) of the same melody:
+
+```python3
+import abjad
+abjad_voice_converter = frontends.abjad.SequentialEventToAbjadVoiceConverter()
+abjad_voice = abjad_voice_converter.convert(simple_melody)
+abjad_score = abjad.Score([abjad.Staff([abjad_voice])])
+abjad.show(abjad_score)
+```
+
+![Lilypond engraving](docs/pictures/readme_abjad_example.png)
+
+
+### Plugins
+
+Starting from version 0.43.0 mutwo uses a modular design.
+Only basic and internal functionality is provided by the main mutwo core package.
+For adding various third party converter or better representation for certain areas the mutwo ecosystem supports plugin-like extensions.
+The following list gives an overview of currently supported extensions:
+
+- [mutwo.ext-music](https://github.com/mutwo-org/mutwo.ext-music): Improve workflow in writing traditional note based music by adding the `mutwo.ext.events.music` module
+- [mutwo.ext-common-generators](https://github.com/mutwo-org/mutwo.ext-common-generators): Algorithmic generation of data to be used for artistic works
+- [mutwo.ext-midi](https://github.com/mutwo-org/mutwo.ext-midi): Render mutwo events to midi files
+- [mutwo.ext-abjad](https://github.com/mutwo-org/mutwo.ext-abjad): Build [Lilypond based](lilypond.org/) Western score notation via [Abjad](abjad.github.io/)
+- [mutwo.ext-csound](https://github.com/mutwo-org/mutwo.ext-csound): Create electronic music parts via [csound](csound.com/)
+- [mutwo.ext-isis](https://github.com/mutwo-org/mutwo.ext-isis): Use singing synthesis via [ISiS](https://forum.ircam.fr/projects/detail/isis/)
+- [mutwo.ext-reaper](https://github.com/mutwo-org/mutwo.ext-reaper): Helpful converters for the [Reaper](https://www.reaper.fm/) DAW
+- [mutwo.ext-ekmelily](https://github.com/mutwo-org/mutwo.ext-ekmelily): Simplify writing microtonal notation in Lilypond by rendering files for the Lilypond extension [Ekmelily](http://ekmelic-music.org/en/extra/ekmelily.htm)
+- [mutwo.ext-mmml](https://github.com/mutwo-org/mutwo.ext-mmml): Write music in plain text files and convert it to mutwo events (experimental)
+
+Writing new plugins is simple, its basic structure can be understood at the [mutwo.ext-example](https://github.com/mutwo-org/mutwo.ext-example) repo.
+
+### Documentation
+
+For more information how to use mutwo read the [documentation](https://mutwo.readthedocs.io/en/latest/).
+
+
+### Installation
+
+Mutwo is available on [pypi](https://pypi.org/project/mutwo/) and can be installed via pip:
+
+```sh
+pip3 install mutwo
+```
+
+This only installs the core functionality (see plugins above).
+
+
+### Similar projects
+
+There are a many similar composition frameworks. Maybe one of them fits better to your particular use-case:
+
+**Python based composition frameworks:**
+
+- [scamp](http://scamp.marcevanstein.com/): "SCAMP is a computer-assisted composition framework in Python designed to act as a hub, flexibly connecting the composer-programmer to a variety of resources for playback and notation."
+- [isobar](https://github.com/ideoforms/isobar): "isobar is a Python library for creating and manipulating musical patterns, designed for use in algorithmic composition, generative music and sonification."
+- [JythonMusic](https://jythonmusic.me/): "JythonMusic is an environment for music making and creative programming."
+
+
+**Composition frameworks in other languages:**
+
+- [slippery-chicken](https://michael-edwards.org/sc/): "a Common Lisp and CLOS package for algorithmic composition."
+- [OpenMusic](https://openmusic-project.github.io/): "OpenMusic (OM) is a visual programming language for computer-assisted music composition created at IRCAM, inheriting from a long tradition of computer-assisted composition research."
+- [Euterpea](http://www.euterpea.com/): "Euterpea is a cross-platform, domain-specific language for computer music applications embedded in the Haskell programming language."
+- [jMusic](http://explodingart.com/jmusic/): "jMusic is a project designed to provide composers and software developers with a library of compositional and audio processing tools."
+- [Comic](https://github.com/simonbahr/Comic): "A Lisp-Environment for Inter-Media Composition."
+
+
+
+
+%prep
+%autosetup -n mutwo-0.50.1
+
+%build
+%py3_build
+
+%install
+%py3_install
+install -d -m755 %{buildroot}/%{_pkgdocdir}
+if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi
+if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi
+if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi
+if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi
+pushd %{buildroot}
+if [ -d usr/lib ]; then
+ find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/lib64 ]; then
+ find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/bin ]; then
+ find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/sbin ]; then
+ find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+touch doclist.lst
+if [ -d usr/share/man ]; then
+ find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst
+fi
+popd
+mv %{buildroot}/filelist.lst .
+mv %{buildroot}/doclist.lst .
+
+%files -n python3-mutwo -f filelist.lst
+%dir %{python3_sitelib}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Wed May 10 2023 Python_Bot <Python_Bot@openeuler.org> - 0.50.1-1
+- Package Spec generated
diff --git a/sources b/sources
new file mode 100644
index 0000000..87e3d6b
--- /dev/null
+++ b/sources
@@ -0,0 +1 @@
+5ed7066a48bcac7112ef456e9e728039 mutwo-0.50.1.tar.gz