eyesim
This is a simulator for the eyesy visual synth. Its purpose is to allow you to develop new eyesy visualization modes when you're too lazy to get out of bed and plug in audio, video, and power cables.
The simulator is a command line tool. As input, you give it a path to the mode folder containing a main.py file conforming to the eyesy API. You can also give it a path to an audio file to use. Currently, only 16 bit WAV are usable. The audio file input is optional.
Install
pip install eyesim
Usage
You can run a test mode by supplying "test" as the path.
eyesim --mode-folder test
However, normally you would invoke it like:
eyesim --mode-folder "/path/to/S - Nice Mode/" --audio-file "/path/to/song.wav"
When the simulator is running, pressing the space bar to toggle visibility of the sliders and buttons that simulate the knobs on the physical eyesy device.
The full command line usage is:
$ eyesim --help
usage: eyesim [-h] -m MODE_FOLDER [-a AUDIO_FILE] [-w WIDTH] [-t HEIGHT]
Start eyesy simulation
optional arguments:
-h, --help show this help message and exit
-m MODE_FOLDER, --mode-folder MODE_FOLDER
path to folder containing mode's main.py script
-a AUDIO_FILE, --audio-file AUDIO_FILE
path to audio file to play (optional)
-w WIDTH, --width WIDTH
window width in pixels
-t HEIGHT, --height HEIGHT
window height in pixels
Caveats
The eyesy code runs Python 2, and all the stock modes are Python 2. But, this package is written in Python 3. I did this in order to use the pygame widgets package and to use the latest scipy for reading wav files. The result is that you might find your mode or a stock mode breaks. In my experience, this is almost always due to one of two things:
- a Python 2 style print statement, i.e.,
print "foo"rather thanprint("foo") - assumed integer division, i.e., assuming
1/2results in an integer
The latter is easily fixed by explicitly using integer division (the // operator), which is compatible with both Python 2 and 3. Or, you can explicitly convert to int by int(1/2).
References
- eyes OS: https://github.com/critterandguitari/EYESY_OS/
- stock eyes modes: https://github.com/critterandguitari/EYESY_Modes_Pygame
Metadata
Release files for eyesim 0.0.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| eyesim-0.0.3.tar.gz | 2.5 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| eyesim-0.0.3-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 7.4 MB
Release files / eyesim-0.0.3.tar.gz
| Download URL | eyesim-0.0.3.tar.gz |
|---|---|
| Size | 2.5 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
0ef0dc9d165c08722b0fd86af4b472b65560c63e68bb0f1eb5982ca32baa9bbc
|
|
BLAKE2b-256 checksum How to use checksums |
e1392ce83287f64b4d1d11c4d6a4927593e775e6a124c197c3c4e6b3701e4f23
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.1 CPython/3.9.12
|
Release files / eyesim-0.0.3-py3-none-any.whl
| Download URL | eyesim-0.0.3-py3-none-any.whl |
|---|---|
| Size | 4.9 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
30901a372be9cd85b2cfc4eee00fc7bc294258a608697e9cadb57c53fbee7397
|
|
BLAKE2b-256 checksum How to use checksums |
4a0b92ee3a6a1c38dd29cb402a41ca09cd13a7ab5b257a71014a32105d75a70f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.1 CPython/3.9.12
|