About PlayShell

[ playshell screenshot ]
A screenshot of PlayShell

PlayShell is an application that can be used to play media files in a virtual terminal or console in Linux. It makes use of known media players like VLC, MPlayer, SoX, and FFPlay as backend to play the files.

It is written in Bash and can run in any Linux system having normal configurations and running Bash version 3.2 or newer. That could include minimal Live systems that are completely text-based, and some embedded systems. It can be installed into the system, but it’s only optional. PlayShell can run in the exact directory where it was extracted.


PlayShell attempts to emulate most functions of a media player, and these are most of its features:

  • Basic playback features – Includes playing, pausing, stopping, fast-forwarding, and rewinding.
  • Basic playlist sequencing features – Includes repeating, shuffling, looping (single-track repeat), and manual mode.
  • Queuing – Allows users to set items that would play after the current playing entry ends.
  • Enabling and disabling of playlist entries – Which would be helpful in cases where you would want to exclude entries from being played but not exactly remove them from the playlist.
  • Video disabling – Which would allow us to exclude the video from playback and not show it. This would allow us to prevent switching to another virtual terminal in the console, or prevent opening of a new window for the video.
  • History-based traversal – Which would allow us to select the exact playlist entry that was previously selected or played, instead of selecting it based on shuffling or on the current arrangement of entries in the playlist.
  • Random and constant intervals between plays – When set could help make listening to songs less predictable, and prevent us from memorizing the continuity of the beginning and ending of adjacent tracks.
  • Stop, quit, and halt after play – Users can set an action to execute after the currently playing entry ends: stop playing, exit PlayShell, or halt the system (may require privileges).
  • Dynamic logging mode – Can allow users to set logging mode to silent, quiet, normal, verbose and debug. Quiet mode is not exactly the same as silent mode as it still shows errors and warnings but silent mode does not.

Next Page: News