├── .github └── workflows │ ├── ci.yml │ └── pypi.yml ├── .gitignore ├── LICENSE ├── MANIFEST.in ├── Makefile ├── README.md ├── docs ├── Makefile ├── conf.py ├── devs │ ├── cache.rst │ ├── clib.rst │ ├── convs.rst │ ├── files.rst │ ├── render.rst │ ├── setup.rst │ └── specs.rst ├── general │ ├── about.rst │ ├── gallery.rst │ ├── install.rst │ ├── license.rst │ └── support.rst ├── index.rst ├── make.bat ├── manual │ ├── animation.rst │ ├── api.rst │ ├── cli.rst │ ├── first.rst │ ├── record.rst │ └── second.rst └── renders ├── examples ├── README.md ├── bach │ ├── audio.mp3 │ ├── info.txt │ ├── midi.mid │ └── video.mp4 ├── furelise │ ├── audio.mp3 │ ├── midi.mid │ └── video.mp4 ├── renders │ ├── clementi.jpg │ └── furelise.jpg └── short │ ├── audio.mp3 │ ├── info.txt │ └── midi.mid ├── pianoray ├── __init__.py ├── __main__.py ├── api │ ├── __init__.py │ ├── accessor.py │ ├── default.py │ ├── importer.py │ ├── interpolate.py │ ├── keyframe.py │ ├── modifiers.py │ ├── pgroup.py │ ├── props.py │ └── scene.py ├── cpp.py ├── cutils │ ├── blocks.cpp │ ├── composite.cpp │ ├── glare.cpp │ ├── keyboard.cpp │ ├── particles.cpp │ ├── pr_image.hpp │ ├── pr_math.hpp │ ├── pr_midi.hpp │ ├── pr_piano.hpp │ └── pr_random.hpp ├── effects │ ├── __init__.py │ ├── blocks.py │ ├── effect.py │ ├── glare.py │ ├── keyboard.py │ └── particles.py ├── logger.py ├── midi.py ├── render │ ├── __init__.py │ ├── composite.py │ ├── render.py │ └── video.py ├── utils.py └── view │ ├── __init__.py │ ├── info.py │ ├── preview.py │ ├── timeline.py │ ├── utils.py │ ├── video.py │ └── viewer.py ├── requirements.txt ├── scripts ├── docgen.py └── style.py ├── setup.py └── tests ├── furelise.py └── short.py /.github/workflows/ci.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/.github/workflows/ci.yml -------------------------------------------------------------------------------- /.github/workflows/pypi.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/.github/workflows/pypi.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/.gitignore -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/LICENSE -------------------------------------------------------------------------------- /MANIFEST.in: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/MANIFEST.in -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/Makefile -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/README.md -------------------------------------------------------------------------------- /docs/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/docs/Makefile -------------------------------------------------------------------------------- /docs/conf.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/docs/conf.py -------------------------------------------------------------------------------- /docs/devs/cache.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/docs/devs/cache.rst -------------------------------------------------------------------------------- /docs/devs/clib.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/docs/devs/clib.rst -------------------------------------------------------------------------------- /docs/devs/convs.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/docs/devs/convs.rst -------------------------------------------------------------------------------- /docs/devs/files.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/docs/devs/files.rst -------------------------------------------------------------------------------- /docs/devs/render.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/docs/devs/render.rst -------------------------------------------------------------------------------- /docs/devs/setup.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/docs/devs/setup.rst -------------------------------------------------------------------------------- /docs/devs/specs.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/docs/devs/specs.rst -------------------------------------------------------------------------------- /docs/general/about.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/docs/general/about.rst -------------------------------------------------------------------------------- /docs/general/gallery.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/docs/general/gallery.rst -------------------------------------------------------------------------------- /docs/general/install.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/docs/general/install.rst -------------------------------------------------------------------------------- /docs/general/license.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/docs/general/license.rst -------------------------------------------------------------------------------- /docs/general/support.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/docs/general/support.rst -------------------------------------------------------------------------------- /docs/index.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/docs/index.rst -------------------------------------------------------------------------------- /docs/make.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/docs/make.bat -------------------------------------------------------------------------------- /docs/manual/animation.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/docs/manual/animation.rst -------------------------------------------------------------------------------- /docs/manual/api.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/docs/manual/api.rst -------------------------------------------------------------------------------- /docs/manual/cli.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/docs/manual/cli.rst -------------------------------------------------------------------------------- /docs/manual/first.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/docs/manual/first.rst -------------------------------------------------------------------------------- /docs/manual/record.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/docs/manual/record.rst -------------------------------------------------------------------------------- /docs/manual/second.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/docs/manual/second.rst -------------------------------------------------------------------------------- /docs/renders: -------------------------------------------------------------------------------- 1 | ../examples/renders/ -------------------------------------------------------------------------------- /examples/README.md: -------------------------------------------------------------------------------- 1 | # Example Recordings 2 | 3 | Copyright Patrick Huang 2022 4 | 5 | Licensed as Creative Commons 0 (CC0) 6 | -------------------------------------------------------------------------------- /examples/bach/audio.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/examples/bach/audio.mp3 -------------------------------------------------------------------------------- /examples/bach/info.txt: -------------------------------------------------------------------------------- 1 | Audio start time: 10.02 2 | -------------------------------------------------------------------------------- /examples/bach/midi.mid: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/examples/bach/midi.mid -------------------------------------------------------------------------------- /examples/bach/video.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/examples/bach/video.mp4 -------------------------------------------------------------------------------- /examples/furelise/audio.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/examples/furelise/audio.mp3 -------------------------------------------------------------------------------- /examples/furelise/midi.mid: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/examples/furelise/midi.mid -------------------------------------------------------------------------------- /examples/furelise/video.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/examples/furelise/video.mp4 -------------------------------------------------------------------------------- /examples/renders/clementi.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/examples/renders/clementi.jpg -------------------------------------------------------------------------------- /examples/renders/furelise.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/examples/renders/furelise.jpg -------------------------------------------------------------------------------- /examples/short/audio.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/examples/short/audio.mp3 -------------------------------------------------------------------------------- /examples/short/info.txt: -------------------------------------------------------------------------------- 1 | Audio start time: 2.4 2 | -------------------------------------------------------------------------------- /examples/short/midi.mid: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/examples/short/midi.mid -------------------------------------------------------------------------------- /pianoray/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/pianoray/__init__.py -------------------------------------------------------------------------------- /pianoray/__main__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/pianoray/__main__.py -------------------------------------------------------------------------------- /pianoray/api/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/pianoray/api/__init__.py -------------------------------------------------------------------------------- /pianoray/api/accessor.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/pianoray/api/accessor.py -------------------------------------------------------------------------------- /pianoray/api/default.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/pianoray/api/default.py -------------------------------------------------------------------------------- /pianoray/api/importer.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/pianoray/api/importer.py -------------------------------------------------------------------------------- /pianoray/api/interpolate.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/pianoray/api/interpolate.py -------------------------------------------------------------------------------- /pianoray/api/keyframe.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/pianoray/api/keyframe.py -------------------------------------------------------------------------------- /pianoray/api/modifiers.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/pianoray/api/modifiers.py -------------------------------------------------------------------------------- /pianoray/api/pgroup.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/pianoray/api/pgroup.py -------------------------------------------------------------------------------- /pianoray/api/props.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/pianoray/api/props.py -------------------------------------------------------------------------------- /pianoray/api/scene.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/pianoray/api/scene.py -------------------------------------------------------------------------------- /pianoray/cpp.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/pianoray/cpp.py -------------------------------------------------------------------------------- /pianoray/cutils/blocks.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/pianoray/cutils/blocks.cpp -------------------------------------------------------------------------------- /pianoray/cutils/composite.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/pianoray/cutils/composite.cpp -------------------------------------------------------------------------------- /pianoray/cutils/glare.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/pianoray/cutils/glare.cpp -------------------------------------------------------------------------------- /pianoray/cutils/keyboard.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/pianoray/cutils/keyboard.cpp -------------------------------------------------------------------------------- /pianoray/cutils/particles.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/pianoray/cutils/particles.cpp -------------------------------------------------------------------------------- /pianoray/cutils/pr_image.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/pianoray/cutils/pr_image.hpp -------------------------------------------------------------------------------- /pianoray/cutils/pr_math.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/pianoray/cutils/pr_math.hpp -------------------------------------------------------------------------------- /pianoray/cutils/pr_midi.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/pianoray/cutils/pr_midi.hpp -------------------------------------------------------------------------------- /pianoray/cutils/pr_piano.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/pianoray/cutils/pr_piano.hpp -------------------------------------------------------------------------------- /pianoray/cutils/pr_random.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/pianoray/cutils/pr_random.hpp -------------------------------------------------------------------------------- /pianoray/effects/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/pianoray/effects/__init__.py -------------------------------------------------------------------------------- /pianoray/effects/blocks.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/pianoray/effects/blocks.py -------------------------------------------------------------------------------- /pianoray/effects/effect.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/pianoray/effects/effect.py -------------------------------------------------------------------------------- /pianoray/effects/glare.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/pianoray/effects/glare.py -------------------------------------------------------------------------------- /pianoray/effects/keyboard.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/pianoray/effects/keyboard.py -------------------------------------------------------------------------------- /pianoray/effects/particles.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/pianoray/effects/particles.py -------------------------------------------------------------------------------- /pianoray/logger.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/pianoray/logger.py -------------------------------------------------------------------------------- /pianoray/midi.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/pianoray/midi.py -------------------------------------------------------------------------------- /pianoray/render/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/pianoray/render/__init__.py -------------------------------------------------------------------------------- /pianoray/render/composite.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/pianoray/render/composite.py -------------------------------------------------------------------------------- /pianoray/render/render.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/pianoray/render/render.py -------------------------------------------------------------------------------- /pianoray/render/video.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/pianoray/render/video.py -------------------------------------------------------------------------------- /pianoray/utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/pianoray/utils.py -------------------------------------------------------------------------------- /pianoray/view/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/pianoray/view/__init__.py -------------------------------------------------------------------------------- /pianoray/view/info.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/pianoray/view/info.py -------------------------------------------------------------------------------- /pianoray/view/preview.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/pianoray/view/preview.py -------------------------------------------------------------------------------- /pianoray/view/timeline.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/pianoray/view/timeline.py -------------------------------------------------------------------------------- /pianoray/view/utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/pianoray/view/utils.py -------------------------------------------------------------------------------- /pianoray/view/video.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/pianoray/view/video.py -------------------------------------------------------------------------------- /pianoray/view/viewer.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/pianoray/view/viewer.py -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- 1 | mido 2 | numpy 3 | opencv-python 4 | pygame 5 | termcolor 6 | tqdm 7 | -------------------------------------------------------------------------------- /scripts/docgen.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/scripts/docgen.py -------------------------------------------------------------------------------- /scripts/style.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/scripts/style.py -------------------------------------------------------------------------------- /setup.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/setup.py -------------------------------------------------------------------------------- /tests/furelise.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/tests/furelise.py -------------------------------------------------------------------------------- /tests/short.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phuang1024/pianoray/HEAD/tests/short.py --------------------------------------------------------------------------------