CrutziPlayer - Standalone Player for Browser Plugins

This is the homepage of CrutziPlayer, my own standalone player for NPAPI (and maybe Pepper) based browser plugins (like libflashplayer.so).

Current Release is 0.3.0 - Changelog - Open Issues - Screenshots

Why CrutziPlayer?
Well, because there wasn't anything available, that...

  • doesn't need width/height parameters, but retrieves them from the content media (e.g. .swf files)
  • uses the Xcomposite extension for hardware accelerated fullscreen, instead of e.g. slow flash based scaling
  • provides low latency sound with PulseAudio

Why is it written in Python?
I just wanted to learn Python, and the language provides a beautiful interface to C function calls as well as callbacks... perfect for using plugins!
And, of course, as XBMC uses Python for plugins, it will be easier to integrate it later on ;-)

Which OS's are supported?
Seriously?

  • Linux
  • and ... no, that's it :-)

How to use it?
First, install the .deb package below.
Then, run it on any .swf file, either installed locally or remote.

I really like games from Amanita Design, especially Machinarium.
To play their demo fullscreen, just run

crutziplayer -f http://machinarium.net/demo/machweb.swf

F11 toggles fullscreen, F12 switches between cario zoom and plugin resize.

Comments

Nice, I love it :D
Oh, could you integrate the program with a GUI?
Like running it from the Dash, Ctrl+O and choose the .swf file :D

What about Linux distros that don't use DEBs?

Tried to install the crutziplayer_0.3.0_all.deb in Debian jessie.
Its not installing, because packages for flash-plugin have been renamed ...
That's sad! I liked this tool and used it a lot in wheezy

Thanks for creating this program! Is there any chance you'll continue to work on this? I would love to see pepper support, and a fix for the normal flash scaling, because that generally works better and I think for vector graphics it's also better in theory, but currently that mode gives the content a bit too much width.

It would also be nice if the program remembered which zoom mode you set, and for the menu bar to disappear in fullscreen.

I'm a developer myself, and would love to contribute :)

1. Please make some settings box, because its annoying to turn off each time "Zoom" Plugin
2. For Pepper (PAPI Google Chrome version of Flash) you can use FreshPluginPlayer which is wrapper for PAPI plugins in NAPI - I should this because Flash for NAPI on Linux Stop on version 11.x, and Pepper's Flash version is 16.x
3. Please make PPA

I'm a Python developer myself, and would love to contribute :)
You can find Python Projects on Github as Jeremi360.
The most done project is "cRoWBaR" my Python 3 and Gtk 3.12+ web browser.

The deb file seems to have problems - I'm warned of the following issues when trying to install it:

Lintian check results for /home/vincent/Software/crutziplayer_0.3.0_all.deb:
E: crutziplayer: control-file-has-bad-owner postinst jwagner/jwagner != root/root
E: crutziplayer: control-file-has-bad-owner prerm jwagner/jwagner != root/root
E: crutziplayer: wrong-file-owner-uid-or-gid usr/ 1000/1000
E: crutziplayer: wrong-file-owner-uid-or-gid usr/bin/ 1000/1000
E: crutziplayer: wrong-file-owner-uid-or-gid usr/bin/crutziplayer 1000/1000
E: crutziplayer: wrong-file-owner-uid-or-gid usr/share/ 1000/1000
E: crutziplayer: wrong-file-owner-uid-or-gid usr/share/applications/ 1000/1000
E: crutziplayer: wrong-file-owner-uid-or-gid usr/share/applications/crutziplayer.desktop 1000/1000
E: crutziplayer: wrong-file-owner-uid-or-gid usr/share/doc/ 1000/1000
E: crutziplayer: wrong-file-owner-uid-or-gid usr/share/doc/crutziplayer/ 1000/1000
E: crutziplayer: wrong-file-owner-uid-or-gid usr/share/doc/crutziplayer/copyright 1000/1000
E: crutziplayer: wrong-file-owner-uid-or-gid usr/share/icons/ 1000/1000
E: crutziplayer: wrong-file-owner-uid-or-gid usr/share/icons/crutziplayer/ 1000/1000
E: crutziplayer: wrong-file-owner-uid-or-gid usr/share/icons/crutziplayer/128.png 1000/1000
E: crutziplayer: wrong-file-owner-uid-or-gid usr/share/icons/crutziplayer/16.png 1000/1000
E: crutziplayer: wrong-file-owner-uid-or-gid usr/share/icons/crutziplayer/22.png 1000/1000
E: crutziplayer: wrong-file-owner-uid-or-gid usr/share/icons/crutziplayer/256.png 1000/1000
E: crutziplayer: wrong-file-owner-uid-or-gid usr/share/icons/crutziplayer/32.png 1000/1000
E: crutziplayer: wrong-file-owner-uid-or-gid usr/share/icons/crutziplayer/48.png 1000/1000
E: crutziplayer: wrong-file-owner-uid-or-gid usr/share/pyshared/ 1000/1000
E: crutziplayer: wrong-file-owner-uid-or-gid usr/share/pyshared/crutziplayer/ 1000/1000
E: crutziplayer: wrong-file-owner-uid-or-gid usr/share/pyshared/crutziplayer/__init__.py 1000/1000
E: crutziplayer: wrong-file-owner-uid-or-gid usr/share/pyshared/crutziplayer/app/ 1000/1000
E: crutziplayer: wrong-file-owner-uid-or-gid usr/share/pyshared/crutziplayer/app/__init__.py 1000/1000
E: crutziplayer: wrong-file-owner-uid-or-gid usr/share/pyshared/crutziplayer/app/aboutdialog.py 1000/1000
E: crutziplayer: wrong-file-owner-uid-or-gid usr/share/pyshared/crutziplayer/app/logo.png 1000/1000
E: crutziplayer: wrong-file-owner-uid-or-gid usr/share/pyshared/crutziplayer/app/pluginwindow.py 1000/1000
E: crutziplayer: wrong-file-owner-uid-or-gid usr/share/pyshared/crutziplayer/gtk/ 1000/1000
E: crutziplayer: wrong-file-owner-uid-or-gid usr/share/pyshared/crutziplayer/gtk/__init__.py 1000/1000
E: crutziplayer: wrong-file-owner-uid-or-gid usr/share/pyshared/crutziplayer/gtk/cairozoom.py 1000/1000
E: crutziplayer: wrong-file-owner-uid-or-gid usr/share/pyshared/crutziplayer/gtk/cairozoom.save 1000/1000
E: crutziplayer: wrong-file-owner-uid-or-gid usr/share/pyshared/crutziplayer/gtk/npluginsocket.py 1000/1000
E: crutziplayer: wrong-file-owner-uid-or-gid usr/share/pyshared/crutziplayer/gtk/read_cursor_image.py 1000/1000
E: crutziplayer: wrong-file-owner-uid-or-gid usr/share/pyshared/crutziplayer/gtk/x.py 1000/1000

That's awesome, but where can I see the license.
(Sorry my bad English.)

Tested it on Ubuntu 16.04 with an SWF that gnash couldn't display properly. Works like a charm. The official, stand-alone player doesn't work on 64-bit environments so this is a very useful project even if Flash is "dying".

crutziplayer works well on fedora 24 but crashes in fullscreen-mode:

Create Stream Orbitaltheorie.swf None
Found dll for application/x-shockwave-flash:
/usr/lib64/mozilla/plugins/libflashplayer.so
Vector smash protection is enabled.
Create Stream javascript:top.location+"__flashplugin_unique__" None

Add new comment