a versatile video renderer
Project description
BEWEGUNG
/bəˈveːɡʊŋ/ (German, noun, feminine: motion/movement/animation)
Synopsis
bewegung is a versatile video renderer, primarily targeting scientific visualizations of large quantities of data. Its core concepts are sequences and layers. Sequences describe a certain time span within a video and can overlap. Each sequence can hold multiple layers. Layers can be generated with cairo, Pillow, datashader, matplotlib and bewegung's internal drawing system DrawingBoard. Final compositing of every video frame and video effects are implemented via Pillow. Video encoding is handled by ffmpeg. bewegung also includes a simple vector algebra system and a "camera" for 3D to 2D projections. bewegung is developed with ease of use, compute time and memory efficiency in mind.
Installation
bewegung can be installed both via conda and via pip.
Via conda
An almost complete installation can be triggered by running:
conda install -c conda-forge bewegung
Please note that mplcairo, a dependency of bewegung and alternative backend for matplotlib, is currently not available via conda and must be installed manually. bewegung does also work without mplcairo present and falls back to the cairo backend of matplotlib.
Via pip
A bare minimum of bewegung can be installed with Python's package manager pip:
pip install -vU bewegung
A complete installation of all optional Python components and development tools can be triggered by running:
pip install -vU bewegung[all]
Certain non-Python prerequisites must installed separately and before invoking the above command. For detailed instructions, see documentation. Most notably, ffmpeg should be installed for producing actual video files instead of video frames as individual files. See download section of the ffmpeg project website for further instructions.
Example
See demo.py.
You can directly test it by running:
curl https://raw.githubusercontent.com/pleiszenburg/bewegung/master/demo/demo.py | python3
This resulting video.mp4 file should look like this:
Usage
See documentation.
bewegung's development status is "well-tested alpha". Its API should not be considered stable until the project is labeled "beta" or better.
bewegung can be drastically accelerated by deactivating debugging features. See relevant section in the documentation.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file bewegung-0.0.7.tar.gz.
File metadata
- Download URL: bewegung-0.0.7.tar.gz
- Upload date:
- Size: 202.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.9.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
137c6f2df36568dcd5ce55b289ad5ff7102e0d14632d9731fb1e1f6f622dffc4
|
|
| MD5 |
4db1868112f257df5f62fa4ed4ae1561
|
|
| BLAKE2b-256 |
16c9f524486947acbcef0e1e31f40f345b1891d32737d3097dbdb967ae12b3dc
|
File details
Details for the file bewegung-0.0.7-py3-none-any.whl.
File metadata
- Download URL: bewegung-0.0.7-py3-none-any.whl
- Upload date:
- Size: 92.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.9.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a38efee35054addf48e3062174d77b759e0677e13d2f1060f7573c6e6ff9f708
|
|
| MD5 |
703444835dec9bbbc79728758ee97bb2
|
|
| BLAKE2b-256 |
394e1283d9cc8bad8393ec3e7b1f9d92b9eeb6a12901164eb50b19134c30da6a
|