Skip to main content

SDL2 wrapper with cffi

Project description

pysdl2-cffi is a Python wrapper for SDL2 written using cffi, featuring:

  • A cffi interface to the underlying SDL2 libraries.

  • Automatically generated, consistent helper functions for SDL2, SDL_image, SDL_mixer, and SDL_ttf that hide most allocation and dereferencing.

  • Useful docstrings on every function, including the C function signature and (for SDL2 only) the library’s original doxygen documentation reformatted as Sphinx restructured text.

  • A small collection of libSDL2’s original example / test programs converted to Python using Eric S. Raymond’s ctopy.

The goal is to provide a flat, consistent, faithful-to-C binding with some more-Pythonic renaming and conveniences.

This wrapper won’t contain anything that doesn’t directly translate to part of the library’s API. The goal is to be a dependency for something like pygame, not a replacement.

This library should be compatible with Linux, OSX and Windows.

This library is licensed under the GPLv2 or (at your option) any later version. Alternatively a commercial license can be purchased from the author for $10.

Install with pip, or download from https://pypi.python.org/pypi/pysdl2-cffi

Source hosted at https://bitbucket.org/dholth/pysdl2-cffi

Documentation hosted at https://pythonhosted.org/pysdl2-cffi

0.8.0

  • The wrapper is now built with cffi 1.1’s verify() mode and requires a C compiler to build. It is much faster than the previous version on CPython.

  • Appveyor-built binary packages now available on Windows. On Windows, the necessary SDL2 DLLs are now a pip-installed dependency.

0.7.0

  • Struct wrappers now expose all the attributes of the C-level struct as properties. Great for tinkering, as the property names can now be inspected interactively.

  • Struct wrappers no longer pass all attribute access through getattr/setattr. Arbitrary data can be attached to the struct wrappers as is customary in Python.

  • Fix a capitalization error for the “classy” API to conform to the general binding rules. ob.gL_Function is now ob.GL_Function.

0.6.0

  • Windows is now supported! You must manually download the SDL2 dll’s and place them on PATH set PATH=%PATH%;C:\users\me\SDL2Dir but pysdl2-cffi will attempt to load the Windows .dll as well as the Unix .so.

0.5.1

  • Enums are no longer wrapped in (nonexistent) classes

  • Python 2 can also pass Unicode where char* is required; automatically encoded to utf-8.

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

pysdl2-cffi-0.8.0.tar.gz (195.3 kB view details)

Uploaded Source

Built Distributions

pysdl2_cffi-0.8.0-cp34-none-win_amd64.whl (291.4 kB view details)

Uploaded CPython 3.4 Windows x86-64

pysdl2_cffi-0.8.0-cp34-none-win32.whl (265.6 kB view details)

Uploaded CPython 3.4 Windows x86

pysdl2_cffi-0.8.0-cp27-none-win_amd64.whl (291.5 kB view details)

Uploaded CPython 2.7 Windows x86-64

pysdl2_cffi-0.8.0-cp27-none-win32.whl (265.8 kB view details)

Uploaded CPython 2.7 Windows x86

File details

Details for the file pysdl2-cffi-0.8.0.tar.gz.

File metadata

  • Download URL: pysdl2-cffi-0.8.0.tar.gz
  • Upload date:
  • Size: 195.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for pysdl2-cffi-0.8.0.tar.gz
Algorithm Hash digest
SHA256 18d4fc2f8cf19818a89b0e3461c3ad47bc78414dc9c1f58917cc4efa7dd8b985
MD5 8b833c45102c22c40bb9bc9e5a2e8e3f
BLAKE2b-256 4a210439f82441ee95802fa4a6efd1cec328bfd09d2e6ce6e098d55e479f975b

See more details on using hashes here.

File details

Details for the file pysdl2_cffi-0.8.0-cp34-none-win_amd64.whl.

File metadata

File hashes

Hashes for pysdl2_cffi-0.8.0-cp34-none-win_amd64.whl
Algorithm Hash digest
SHA256 ffeb53feaa39d78afe0a7725a527c445d6cd838eb8c1cc83328c1526646450a7
MD5 88f45797a41efb49cbe033945afa1150
BLAKE2b-256 aa1b595ff058dc3592293f1d214f098ca36109c9415e842a8dd66b7a9bbedf31

See more details on using hashes here.

File details

Details for the file pysdl2_cffi-0.8.0-cp34-none-win32.whl.

File metadata

File hashes

Hashes for pysdl2_cffi-0.8.0-cp34-none-win32.whl
Algorithm Hash digest
SHA256 ad735801167c153264e8d7b2823153fd965eded7410353bb50d8278fef0df153
MD5 b0559df6f9bbd6266ea58bd7ea575688
BLAKE2b-256 20bdcd3383242dbfd5a0bef2d3b3085e28472ed7d9a7522807be2920c3690547

See more details on using hashes here.

File details

Details for the file pysdl2_cffi-0.8.0-cp27-none-win_amd64.whl.

File metadata

File hashes

Hashes for pysdl2_cffi-0.8.0-cp27-none-win_amd64.whl
Algorithm Hash digest
SHA256 889087e77bd1efa78459e7fde7129c25f663a811080ca65fcbe6229ff4830cc8
MD5 37211e3536f9b93b54ea33e270c8a8e2
BLAKE2b-256 a1937ece4f92d52cf918db3038a846e46f83ae3e1733db3f1836839bcb275f13

See more details on using hashes here.

File details

Details for the file pysdl2_cffi-0.8.0-cp27-none-win32.whl.

File metadata

File hashes

Hashes for pysdl2_cffi-0.8.0-cp27-none-win32.whl
Algorithm Hash digest
SHA256 4858dccb1092f5be585dd4e7a01abdbad95167403a4ba70309a965774b91c5be
MD5 702ceec8fc4dd6f53f6e937eca5ed9a7
BLAKE2b-256 0dfff16e2cb47495781cbf7ff59fba7bb7ffbfefcef3712e2a6215d8938c1f44

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page