Totem is a media player (audio and video) for the GNOME computer desktop environment which runs on Linux and other Unix-like operating systems. Totem uses the Clutter and the GTK+ toolkits. It is officially included in GNOME starting from version 2.10 (released in March 2005), but de facto it was already included in most GNOME environments. Totem utilizes the GStreamer framework for playback, though until version 2.27.1, it could alternatively be configured to use the Xine libraries instead of GStreamer.
Until recently there were two distinct versions of Totem, though the difference was not visible at the user interface level. One of them was based on GStreamer, which is a plugin-based multimedia framework. This version has superior extensibility and supports a larger variety of media formats. The other one was based on xine, which is a regular multimedia library. At the time it had better encrypted DVD playback support, DVD navigation support and could play some files the GStreamer version couldn't handle. Due to enhancements in GStreamer including the ability to play back encrypted DVDs, the Totem development team dropped support for the xine backend.
An outstanding feature of Totem is its close integration with the GNOME desktop environment and its file manager, Nautilus. This includes generating thumbnails of video files when browsing in Nautilus and a video plugin for Netscape-compatible browsers (e.g. Firefox).
Full-screen video playback is supported on nearly all X configurations, including multi-head Xinerama setups, and on displays connected to the TV-Out. Brightness, contrast and saturation of the video can be dynamically adjusted during playback. 4.0, 4.1, 5.0, 5.1 and stereo sound is supported. On computers with an infrared port, Totem can be remotely controlled via LIRC. Stills can be easily captured without resorting to external programs. There is also a plugin for telestrator-like functionality using Gromit. The loading of external SubRipsubtitles, both automatic and manual (via the command-line), is also supported.