What are all the modules?
Samuel Hocevar
sam at zoy.org
Sun Jul 8 15:29:04 CEST 2001
On Sun, Jul 08, 2001, Chris Jensen wrote:
> There seems to be no reference as to what all the different output modules
> are and what their advantages are, is this information available anywhere?
> For instance I can only use the x11 module, but I've read suggestions to use
> sdl or xvideo - what is the difference in how these modules access the video
> hardware and how would these change the performance?
> Similarly I would like to find out what the difference is with all the other
> modules, eg yuv and yuvmmx.
Ok, here is a little list:
Modules with the INPUT capability
---------------------------------
dvd: allows for DVD access, chapter support, and so on
ps: reads MPEG1 and MPEG2 Program Stream files (most common MPEG
encapsulation format)
ts: reads MPEG1 and MPEG2 Transport Stream files (used by DVB and
satellite TV)
es: reads MPEG1 and MPEG2 Elementary streams (some files with only
video and no audio)
dummy: doesn't read any files, but recognizes special input patterns
such as `vlc:quit' or `vlc:pause:2'
Modules with the VOUT (video output) capability
-----------------------------------------------
x11: displays in an X Window System RGB window, needs an YUV to RGB
transformation module
xvideo: displays in an X Window System XVideo window, doesn't need
an YUV module since it is done in hardware; performances are
excellent
fb: displays on a Linux RGB framebuffer, needs an YUV module; can be
a bit faster than X11 on certain machines
beos: displays in a BeOS window; can use hardware YUV if available,
otherwise will fallback to using an YUV module
macosx: displays in a MacOS X window; currently needs an YUV module
sdl: displays using the SDL library; uses X11 or (if available) XVideo
under Unix, uses DirectX under Win32, or any other supported
output layer
directx: displays in a DirectX window; can use hardware YUV if
available, otherwise will fallback to using an YUV module
ggi: uses the GGI library; performances are poor but it might be
useful to people who know what they do; needs an YUV module
glide: uses the Glide library; same remarks as for ggi
dummy: displays in a memory buffer which won't be displayed on
screen; for testing purposes
Modules with the AOUT (audio output) capability
-----------------------------------------------
dsp: standard Linux and BSD OSS /dev/dsp support
alsa: uses the Advanced Linux Sound Architecture
esd: uses the Esound daemon; doesn't work properly due to latency issues
sdl: uses the SDL library; /dev/dsp under Unix, DirectSound under Win32
macosx: uses the OSX API
directx: uses DirectSound
beos: uses the BeOS API
dummy: plays sound in a memory buffer which won't be sent to the
soundcard; for testing purposes
Modules with the INTF (interface) capability
--------------------------------------------
gtk,gnome: most up-to-date interfaces, use either Gtk or GNOME
qt,kde: use the Qt or KDE libraries; haven't been updated for a while
beos: uses the BeOS API
macosx: minimal MacOS X GUI
rc: remote command interface
dummy: displays no interface, for testing purposes
Other modules
-------------
YUV modules: yuv, yuvmmx; used for YUV to RGB transformations
downmix modules: downmix, downmix3dn, downmixsse; used by the AC3 decoder
IMDCT modules: imdct, imdct3dn, imdctsse; used by the AC3 decoder
motion compensation modules: motion, motionmmx, motionmmxext; used by
the video decoder
IDCT modules: idct, idctclassic, idctmmx, idctmmxext; used by the
video decoder
mmx, mmxext, sse and 3dn are accelerated versions of the different
modules. vlc automatically chooses what it thinks is the best
implementation (assuming MMX and 3dn are faster than C, and assuming
MMX EXT and SSE are faster than MMX).
Hope everything was clear enough.
--
Sam.
More information about the vlc
mailing list