Latest changes: now looks in /usr/share/pixmaps/xhippo for its button icons (which are stored there by this dotpet).

xhippo is a very resource-efficient versatile and extensible media player both in terms of its tiny download size and RAM usage. xhippo, in its original form, was first introduced to Puppy forum many years ago by forum member tempestuous, as far as I know. In its current form, the main binary was compiled on an early Puppy Slacko and the included backends and recording frontend created on DebianDog, where the overall system is used as a core media player/recording application.

In practice, xhippo uses less system resources than any gtkdialog-based media player, so works nicely on low-powered systems, but is nice to have on any system in my opinion. Some reasons are provided below.

The attached xhippo dotpet contains a modified version of xhippo, a generic playlist manager program/process control program (source in C).

xhippo (with the included backends: xhplay, and xhrecord) can play all sorts of audio and video media (the playlist can contain a mix of audio and video types) and also record audio (mp3, wav, ogg, aac, and flac) via the included xhrecord (with xrecord gui frontend) assuming the appropriate commandline encoders are available. It can also save and load playlists, and play streaming media such as Internet radio streams.

The easiest way to try xhippo is simply to drag and drop a folder containing media tracks onto its open window.

Alternatively, right-click on xhippo's open window and select "Load playlist". By default, a streaming media (radio) playlist is provided called 0.default.d.xplist; just select that and Open it by double-clicking it or pressing OK button and you can then play any of the radio stations provided. You can easily create your own playlists.

You can also add directories or individual media tracks to the active playlist by using that right-click on xhippo open window method (using 'Add directory' or 'Add song'). And you can clear the active playlist, at any time, from the same right-click dropdown menu. Note well, however, that the right-click menu option 'Preferences' only applies to the current active session. Any preferences you temporarily set are not saved in the current version of xhippo.

You can also right-click on any folder or media file in Rox filemanager and immediately send it to play in xhippo (thanks to shinobar's examples of how to arrange that in Rox configs).

Hovering the mouse over the xhippo buttons provides a summary of their function.

The provided xhippo dotpet also includes:

1. xhplay, which is the backend script used here by xhippo for playing all sorts of media files, including audio and video. Note that xhplay can also be run straight from the commandline (albeit then without the start, stop, pause etc controls provided by xhippo). For commandline usage instructions enter: xhplay --help

2. xhrecord, which is the backend script used here by xhippo for recording audio. Note that xhrecord can also be run straight from the commandline (albeit then without the start, stop, pause etc controls provided by xhippo). For commandline usage instructions enter: xhrecord --help

3. xrecord, a frontend gtkdialog gui (similar to Precord but without the start, stop, pause buttons) for recording via xhippo (which provides the control functionality). Xrecord is provided with a desktop file for the desktop menu and/or desktop inclusion. The first time xrecord is run it copies some config files from /etc/xrecord to $HOME/.xrecord and similary the first time xhrecord is run it copies some config files from /etc/xhrecord to $HOME/.xhrecord. Note that, xrecord simply sets up the recording parameters for xhrecord, and uses xhippo to provide the start, stop, pause etc controls. The xrecord gtkdialog gui immediately terminates when recording begins, so the recording system is extremely resource efficient (though running xhrecord backend on its own via the commandline is even more resource efficient of course). Note further that during a recording, xhippo, somewhat confusingly, indicates that a recording is taking place by stating that it is "Playing with xhrecord". The wording is just a result of xhippo originally being intended for audio playing only, despite the fact it is really a very useful generic process control program.

4. make-xhippo-playlist is a radio playlist converter script for xhippo. It converts common playlists to the format xhippo/new_xhplay uses. The converted playlist is automatically stored in the correct default ${HOME}/.xhippo/playlists folder no matter where your to-be-converted playlist is stored.

Once I've made a dotpet from the DebianDog version, I'll soon be uploading a simple/flexible gtkdialog GUI (DoMyFile) for driving the make-xhippo-playlist script (and more). For the moment, should you need or wish to, you can run make-xhippo-playlist from the commandline. It is very simple to use. For usage help, just enter:

Code:

make-xhippo-playlist --help

You can find lots of radio playlists, that this program can easily convert for xhippo use, in the Simple GTK Radio thread here:

(It can also directly convert Simple GTK Radio playlist format, which uses | as a URL/playlist_name field separator, as well as formats that use # as the separator)

Note that since xhippo doesn't include a streaming media playlist search facility, it is advised to keep such playlists reasonably short (you can easily do so by editing any of the many large playlists you can find on the Internet, prior to running the result through the make-xhippo-playlist converter). Of course if you want a streaming radio program that includes a playlist search facility, I would recommend 'Simple GTK Radio', which is a nice little gtkdialog program, by puppy forum member Dejan, created especially for streaming radio playing/recording, though for short to medium length playlists, xhippo/xhplay does a pretty reasonable job and uses less resources than any gtkdialog-based player.

The source code for this modified version of xhippo control executable itself (including some patches provided by puppy forum member goingnuts and other patches by myself) can be downloading from here:

For full functionality, xhplay and xhrecord (and thus this xhippo media player system) depend on the following underlying commandline encoding/decoding utilities/apps (though will work with less functionality if some of these are not on your system; most are in Puppy by default):

Note that in the reasonably near future, especially for Akita users, I plan to modify xhplay itself to allow it to work with cvlc as an alternative to mplayer for video media playback.

If you want to make xhippo your default audio player (not that I'm suggesting you should or should not) just edit /usr/local/bin/defaultaudio player and replace word "pmusic" with "xhippo".

If you wish mplayer to always start fullscreen you can add the mplayer option fs=yes to /root/.mplayer/config

Mplayer itself can also be controlled via the keyboard. For example, use keyboard key F to toggle in and out of fullscreen mode), P to Pause, and the Left and Right cursor keys to jump back and forwards in increments through a video. Please refer to mplayer man page for other options and keyboard control keys: http://www.mplayerhq.hu/DOCS/man/en/mplayer.1.html#INTERACTIVE%20CONTROL

Note that you can drop an many folders as you like onto xhippo (or load them from its dropdown menu) and xhippo will then play through them all one after the other or by random shuffle_________________Non enim propter gloriam, diuicias aut honores pugnamus set propter libertatem solummodo quam Nemo bonus nisi simul cum vita amittit.

Hello there, I've been trying the mod 5 version in Dpup Wheezy, I used Preferences to select ' start with random off' and 'start playing automatically', but the selections don't appear to be saved when XHippo is closed and restarted.

Also, I've been trying to play .wav files I looked in Xhippo config, I 'think' it's included but I can't play them... it's quite likely I'm doing something wrong, most technical things go right over my head.

Yes, cvlc could be used instead of mplayer with a minor modification to xhplay backend, which I'm planning to implement soon (posted 29 June 2014).

Actually, xhippo can use almost any commandline program as a backend - commandline image viewers for example, any kind of shell script (I use a shell script called xhippo_mp3 to pipe lame to aplay for mp3s) - like I said: very versatile and extensible._________________Non enim propter gloriam, diuicias aut honores pugnamus set propter libertatem solummodo quam Nemo bonus nisi simul cum vita amittit.Edited_time_total

mod 6 works nice with the random/shuffle turned off, and wav files enabled.

I'm not sure if it matters about the automatic play feature when using drag and drop... It might be nice, but since it only takes about a second to actually physically click on the first track to make it play, it sounds a little bit like nit-picking... I must be getting lazy...

I like using this, set it up in the background and let it run, hassle free. Very useful, thank you.