Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/tristancacqueray/pycf
Context Free Art rendering tool
https://github.com/tristancacqueray/pycf
Last synced: 14 days ago
JSON representation
Context Free Art rendering tool
- Host: GitHub
- URL: https://github.com/tristancacqueray/pycf
- Owner: TristanCacqueray
- License: gpl-2.0
- Created: 2010-10-16T07:36:40.000Z (about 14 years ago)
- Default Branch: master
- Last Pushed: 2017-12-03T07:23:36.000Z (almost 7 years ago)
- Last Synced: 2024-10-11T01:45:53.196Z (27 days ago)
- Language: Python
- Homepage:
- Size: 504 KB
- Stars: 1
- Watchers: 4
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README
- License: COPYING
Awesome Lists containing this project
README
Python Context Free Art rendering tool
======================================pycf is a tool that render image with cfdg (http://www.contextfreeart.org)
it use musical wave to morph the shape.
Requierement
------------
* cfdg installed in PATH
* python 2.6 with Tk
* numpy
* scipy
* imaging (PIL)
* pyaudio
* mplayer (mencoder)Optional:
* gnuplot-py
* pyopenglHow-to Use
----------
python -OO main/context_free.pyThere are several parameter:
--list: list input/output audio devices
--input-device index select input devices
--output-device index select output devices
--fps num 25 by default, must be a multiple of 44100
--wave path read and play the wave file
--render png_tmp_path specify where the frames will be written (path must contain %06d)
--render mode require the use of a wav file--opengl opengl shapes
Preset for rendering:
--gains master low mid high set default gainHow it work
-----------context_free.py: cf_inputs.audio_process():
| while True: | while True:
| | grab_wave (input_device or wav file)
| Queue.pop() <-------------> | Queue.push(filter//fft) : cf_dsp.py
| controllers.get_state(): cf_ihm.py
| shape = generate_shape(): cf_shapes.py
| png_file = render(shape): cf_render.py
| viewer.show(png_file): cf_ihm.pyif --render mode is activated, all shape are store, then at the end of stream (press ^C)
all png are rendered in high res then encoded with the audio file into a video