Xine Media Player
xine is a free GPL high-performance, portable and reusable multimedia playback engine. xine itself is a shared library with an easy to use, yet powerful API which is used by many applications for smooth video playback and video processing purposes. It plays back CDs, DVDs, and VCDs. It also decodes multimedia files like AVI, MOV, WMV, and MP3 from local disk drives, and displays multimedia streamed over the Internet. It interprets many of the most common multimedia formats available - and some of the most uncommon formats, too. xine is a free (gpl-licensed) high-performance, portable and reusable multimedia playback engine. xine itself is a shared library with an easy to use, yet powerful API which is used by many applications for smooth video playback and video processing purposes.
- xine-engin
The core of xine is responsible for synchronizing audio, video and overlays. It provides high performance comunication functionality between modules, logging capability, unified configuration system, On Screen Display support, fast MMX/MMXEXT/SSE memory transfers, among other important things.
-
input plugins They provide input data to xine and may be seen as an abstraction layer for DVDs, files, http, pipes, VCDs so that the rest of xine does not need to know from where the data is coming. Several input plugins for xine are already available over the internet from third party programmers.
-
demuxer plugins These plugins are responsible for understanding file formats like AVI, MOV, ASF and others. These file formats don't define how video and audio are encoded but how the encoded data is mixed together (multiplexed). An AVI file, for example, may have DivX4 video and MP3 audio, MPEG2 video and AC3 audio, etc.
-
decoder plugins These plugins receive the encoded data (video, audio or subtitles) and deliver them uncompressed to the engine to be played or shown. Examples of encoding formats (also called "codecs") are MPEG2, MP3, Ogg Vorbis and Windows Media Video 7/8/9.
-
output plugins xine runs on a wide variety of hardware and operating systems therefore it need to have different means of displaying video and audio. These plugins are like drivers, they talk directly to the system so xine-engine does not need to handle the details. Some video output plugins have been developed to utilize several hardware capabilities like color conversion, scaling and refresh sync to provide the best multimedia experience and at the same time, requiring less CPU processing.
-
post effect plugins These can be use to apply arbitrary effects to video and audio before they are sent to output. Examples include visual plugins like GOOM (generates colorful images from the music being played), audio filters like echo, equalizer or even a video picture-in-picture plugin playing more than one stream at the same time.
Advantages of this design:
- xine is fast
All included decoders are optimized to use MMX, MMXEXT, SSE and 3DNow! acceleration if available. The well designed architecture moves data efficiently across plugins without requiring extra memory copies to be made. Multi-threaded implementation provide big gains on SMP systems.
-
xine is extensible Plugins are probed on startup and new ones may be installed from third party (although the most important are already provided).
-
xine is reusable All described features are available from a library and may be called from other applications. A default X11 GUI (xine-ui) is available but any other frontend can use the xine-lib too. There are several of them already available: GTK+ 2 (gxine; sinek, GQoob), Gnome 2 (Totem), scriptable console (toxine), KDE (kxine), KDE multimedia (xine aRts plugin) and even a Netscape/Mozilla plugin. (Some frontends may be at beta stage.)
General features
- Skinnable GUI
- Download and installation of new skins from the internet
- Navigation controls (seeking, pause, fast, slow, next chapter, etc)
- Linux InfraRed Control support (LIRC)
- On Screen Display features
- DVD and external subtitles
- DVD/VCD menus
- Audio and subtitle channel selection
- Closed Caption support
- Brightness, contrast, audio volume, hue, saturation adjusting (requires hardware/driver support)
- Playlists
- Mediamarks
- Image snapshot
- Audio resampling
- Software deinterlacing algorithms
- 2-3 pulldown detection (tvtime plugin)
- Configuration dialog
- Aspect ratio changing
- Fullscreen display
- DTS passthrough
- TV fullscreen support using nvtvd
- Streaming playback support
File formats (System layer / media types) supported:
- direct DVD playback (of unlocked/unencrypted DVDs, see below)
- Video CD
- Audio CD
- mpeg program streams (.mpg, .mpeg)
- mpeg transport streams (.ts)
- ogg (.ogg, .ogm)
- avi (.avi)
- asf (.asf, .wmv, .wma)
- quicktime (.mov, .mp4)
- mpeg-video (.mpv, .m2v)
- mpeg-audio (.mp2, .mp3)
- Sega Saturn FILM (.cpk)
- Id Software RoQ (.roq)
- wav (.wav)
- Autodesk FLIC (.fli)
- real (.rm, .ra, .ram)
- raw dv (.dv)
- network graphics format (.png, .mng)
- Creative Voice (.voc)
- Sun/NeXT SND/AU (.snd, .au)
- Wing Commander III (.mve)
- Westwood Studios files (.vqa, .aud)
- Electronic Arts WVE (.wve)
- AIFF (.aif, .aiff)
- YUV4MPEG2 (.y4m)
- SMJPEG (.mjpg)
- raw AC3 (.ac3)
- Dialogic VOX (.vox)
- TechnoTrend PVA (.pva)
- Playstation STR (.str)
- Nullsoft Video (.nsv)
- 4X Technologies (.4xm)
Audio codecs supported:
- mpeg audio (layer 1,2,3)
- a/52 (aka ac3, dolby digital)
- aac (used in .mp4 files)
- dts (via external decoder)
- vorbis
- pcm
- adpcm (MS/IMA/DVI/Dialogic)
- mu-law and A-law
- roq dpcm
- Real Media dnet audio
- Real Media 28.8 audio
- DivX audio (WMA)
- GSM 6.10
- FLAC
- NSF (NES sound format)
- Speex via external binary/win32 codecs
- MS GSM
- Intel Music Coder
- Voxware Metasound
- ACELP.net
- Real Media Sipro/Cook/dnet
- QDesign Music 1/2 (QDM1/QDM2)
Video codecs supported:
- mpeg 1/2
- mpeg 4 (aka OpenDivX)
- ms mpeg 4
- divx 3/4/5
- windows media video 7 & 8
- motion jpeg
- Cinepak
- DV
- ms video 1 (msvc)
- ms rle
- Sorenson SVQ1/SVQ3 (often used in Quicktime trailers)
- creative yuv (cyuv)
- roq video
- QT RLE, SMC, RPZA
- theora via external binary/win32 codecs
- Indeo 3.1-5.0
- Window Media Video 8,9
- On2 VP3.1
- I263
- Real Media 2.0, 3.0, 4.0
Video drivers
- XVideo - XFree86 extension providing hardware YUV->RGB conversion and scaling.
- XShm - Standard X11 displaying with (optional) shared memory support.
- OpenGL - usefull on workstations
- SDL - Simple DirectMedia Library with multiplataform support.
- ASCII Art library - render video using console caracters.
- Syncfb - Matrox G200/G400 hardware overlay with color conversion, scaling and refresh sync using a special kernel module.
- Linux Framebuffer device - provide direct access to videocard memory through kernel drivers.
- VIDIX - Provides direct access to hardware including Matrox G200/400, ATI Mach64, 3DRage, Radeon and Rage128, 3DLabs Permedia3.
- pgx64 - Sun PGX64/PGX24 output plugin.
Audio drivers
- OSS (Open Sound System)
- ALSA 0.9 (Advanced Linux Sound Architecture)
- Irix Audio
- Sun Audio
- aRts (KDE soundserver)
- ESD (Enlightened Sound Daemon - not recommended)
Supported network (Webcasting/Streaming) protocols
- MMS (Microsoft Media)
- PNM (Real Media)
- RTSP (Real Media and others)
- HTTP
- raw TCP socket streaming
Many Linux distributions now include a version of Xine in their own native package manager format (.rpm, .deb, etc.)
Using Yum to install xine
start a terminal and type the following at the shell prompt:
# yum install xine
Using Apt to install xine
start a terminal and type the following at the shell prompt:
# apt-get install xine-ui or # sudo apt-get install xine-ui
Using Urpmi to install xine
start a terminal and type the following at the shell prompt:
# urpmi xine-ui
Other Open Source Multimedia Players
|