Simple GUI around OMXPlayer for Raspberry Pi
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
This repo is archived. You can view files and clone it, but cannot push or open issues/pull-requests.
Stefan Naumann bb15b5adc1 „“ ändern 1 year ago
cfg UI changes 3 years ago
pic added a window-icon 2 years ago
src updated Readme 2 years ago
.gitignore a bit cleanup and live-mode 3 years ago
Doxyfile added doxyfile 3 years ago
LICENSE Initial commit 3 years ago „“ ändern 1 year ago First version of piplayer 3 years ago added setup-file 3 years ago a bit cleanup and live-mode 3 years ago


PiPlayer is being succeeded by GTPlay. I would strongly suggest using that instead of PiPlayer.

PiPlayer is a very simple GUI around the OMXPlayer on the Raspberry Pi.

OMXPlayer is a quite basic player using the hardware decoding features of the Raspberry Pi for decoding HD videos. This GUI is intended to be used with other tools like smtube, which do not give you the opportunity to open a terminal for controlling OMXPlayer. You can now use PiPlayer for controlling OMXPlayer.

The file is not written by me! I take no authorship in that bash-skript. I copied it from popcornmix’s repository


You will need the following packages installed on your system:

  • FLTK (fltk1.3)

PiPlayer uses pyFLTK as a binding to FLTK for Python. At least under Arch Linux ARM there is no package for pyFLTK. Therefore you will need to install pyFLTK. This can be done using the file in this directory. Try (without root-priviliges):

bash prepare

Then you can try PiPlayer without “installing”, or install it with the command:

bash install

This will need root-privileges. By default it will copy the files to /opt/piplayer/. Try setting PiPlayer as default player for HD-files in your file manager.


You should be able to call it via a CPython3-interpreter (as far as I know the pypy-interpreter does not support pyFLTK):

Usage: src/ [parameters] file {files}

The following parameters are allowed:

  • --live - indicate that a livestream is played (i.e. Twitch), will be played using livestreamer
  • -q [qual] or --quality [qual] - indicate a quality for the stream (e.g. best, worst 480p, 720p. Will be handed to livestreamer directly)

Filenames: <url1> [-t <title1>]

  • -t <title> or --title <title> - specify a title for the last given URL

Technical mumbo-jumbo

PiPlayer quite litterely calls omxplayer and communicated to it via the DBus-interface. There are some functions not present in the GUI, which could be reached via the skript.

The window is placed on the screen and omxplayer is called with the --win parameter to fit exactly inside the window. On resize of the window a DBus-interface is called to adjust for the new size of the window. That works well for maximizing, resizing or moving the window, but not for restoring it from maximized setting to normal. For that reason the OMXPlayer-output cannot be placed in the background, whereas the player-window can be in the background.