Skip to main content

bewegung_logo

BEWEGUNG

/bəˈveːɡʊŋ/ (German, noun, feminine: motion/movement/animation)

docs_master license status pypi_version conda_version pypi_versions chat mailing_list

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:

bewegung standard demo

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.

Release files for bewegung 0.0.7

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for bewegung 0.0.7
File Size Uploaded Provenance
bewegung-0.0.7.tar.gz 202.5 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for bewegung 0.0.7
File Interpreter ABI Platform
bewegung-0.0.7-py3-none-any.whl Python 3 none any Details

Total release size: 294.6 kB

Release files / bewegung-0.0.7.tar.gz

Download URL bewegung-0.0.7.tar.gz
Size 202.5 kB
Tags Source
SHA-256 checksum
How to use checksums
137c6f2df36568dcd5ce55b289ad5ff7102e0d14632d9731fb1e1f6f622dffc4
BLAKE2b-256 checksum
How to use checksums
16c9f524486947acbcef0e1e31f40f345b1891d32737d3097dbdb967ae12b3dc
Upload date
Uploaded using Trusted Publishing?
What is 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

Release files / bewegung-0.0.7-py3-none-any.whl

Download URL bewegung-0.0.7-py3-none-any.whl
Size 92.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
a38efee35054addf48e3062174d77b759e0677e13d2f1060f7573c6e6ff9f708
BLAKE2b-256 checksum
How to use checksums
394e1283d9cc8bad8393ec3e7b1f9d92b9eeb6a12901164eb50b19134c30da6a
Upload date
Uploaded using Trusted Publishing?
What is 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

Security for bewegung 0.0.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page