Skip to main content

Lightweight and dynamic MPlayer wrapper with a Pythonic API

Project description

mplayer.py at a glance

>>> p = mplayer.Player()
>>> p.loadfile('/path/to/file.mkv')
>>> p.time_pos = 40
>>> print p.length

News

Version 0.7.2 Released! (March 28, 2019)

I will no longer update the PyPi releases. Just install it via pip like so:

$ pip install git+https://github.com/baudm/mplayer.py.git@0.7.2
  • Don't pause upon initially loading file (Fixes #32)

Version 0.7.1 Released! (May 8, 2017)

You can download it here: http://pypi.python.org/pypi/mplayer.py/0.7.1

  • Various MPlayer2 fixes
  • Fix subprocess.mswindows error in python3.5+
  • Add a gevent-friendly Player subclass.

Version 0.7.0 Released! (September 8, 2011)

You can download it here: http://pypi.python.org/pypi/mplayer.py/0.7.0

  • Expose ALL commands except get_* and *_property commands and those which have the same name as their corresponding property.
  • Better QPlayerView and GtkPlayerView widgets; the Player objects are now directly accessible via the player property.
  • Getting output from MPlayer is now thread-safe (a Queue is now used)
  • Data can now be obtained asynchronously from Player objects (via subscribers/callbacks)
  • Improved generation of properties (using functools.partial objects)
  • Added type checking to generated methods and properties
  • Added value checking to generated properties
  • Abstracted MPlayer type handling away from the core (see mtypes module)
  • Python 2.x unicode and str fixes

Don't forget to read the CHANGES file.

Switched to git (September 7, 2011)

The code of mplayer.py (formerly PyMPlayer/python-mplayer) is now hosted at GitHub.

NOTE: Issues and wiki are still hosted here at Google Code.

Since python-mplayer is a very verbose and long name, let's just call it mplayer.py :)

Version 0.6.0 Released! (March 3, 2011)

You can download it here: http://pypi.python.org/pypi/PyMPlayer/

  • Support for MPlayer property access (get_property, set_property, step_property) with automatic type conversion via standard Python properties (new-style classes)
  • Drop methods which have the same functionality as their corresponding properties (for cleaner API)
  • No more exposed command() and query() methods; use the higher-level methods and properties instead
  • Improved code generation; generated methods execute faster than in 0.5.0
  • Introspection now happens on module load, not on instantiation
  • MPlayer is now spawned automatically (See autospawn parameter)
  • Setting of command prefix globally (i.e. per class) and per method execution is supported
  • Full support for Windows (for get_ commands)

Don't forget to read the CHANGES file.

What is mplayer.py?

Initially known as PyMPlayer (http://pypi.python.org/pypi/PyMPlayer/ renamed to avoid confusion with other projects), mplayer.py provides several Pythonic interfaces to MPlayer. These are implemented as the following classes (see Introspection for more info):

  1. Player provides a clean, Pythonic interface to MPlayer.
  2. AsyncPlayer is a Player subclass with asyncore integration (POSIX only).
  3. GPlayer is a Player subclass with GTK/GObject integration.
  4. QtPlayer is a Player subclass with Qt integration (same usage as AsyncPlayer)
  5. GtkPlayerView provides a basic (as of now) PyGTK widget that embeds MPlayer.
  6. QPlayerView provides a PyQt4 widget similar to GtkPlayerView in functionality.

Show your appreciation by saying thanks or by donating a small amount.

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

mplayer.py-0.7.2.tar.gz (16.2 kB view hashes)

Uploaded Source

Built Distribution

mplayer.py-0.7.2-py3-none-any.whl (20.3 kB view hashes)

Uploaded Python 3

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