Command line video player
Go to file
Uoti Urpala b6628f4e1e csputils/vo_gl: rewrite YUV->RGB matrix generation
Rewrite the csputils.c code generating a conversion matrix for
YUV->RGB conversions (currently used by vo_gl only). Functional
differences:
- The separate "mplayer default" colorspace is removed, and BT.601 is
  used instead (the default colorspace was in fact BT.601; see below).
- The old code was missing chroma scaling. As a result the "mplayer
  default" colorspace actually mapped to BT.601, and everything else
  was buggy (I guess the other colorspaces were added with particular
  coefficient semantics, without understanding that the original
  "default colorspace" was actually BT.601 and why its coefficients
  differed from the added version).
- The old code had a bug in the equalizer hue equations.
- The old code assumed that for specifying whether input and output
  were limited-range or full-range YUV or RGB it would make sense to
  specify "no conversion" meaning full-range YUV to full-range RGB or
  limited-range YUV to limited-range RGB. This isn't true; limited-
  range YUV has different ranges for luma and chroma (16-235
  vs 16-240) which means you have to scale chroma for limited->limited
  conversions. The new code assumes limited->limited conversions for
  the levelconv parameter 2. It'd probably make sense to change the
  API later to specify the ranges of input and output separately.
- The undocumented EBU and XYZ colorspaces are removed. I doubt any
  videos use these. Also the EBU colorspace looks like it'd expect
  a different input range - at least no input would map to full RGB
  red as it was.
2011-08-29 06:34:36 +03:00
DOCS options, subs: add --ass-vsfilter-aspect-compat 2011-08-12 14:19:10 +03:00
TOOLS TOOLS/matroska.py: recognize CodecName 2011-04-08 01:20:35 +03:00
debian
drivers
etc options, subs: add --ass-vsfilter-aspect-compat 2011-08-12 14:19:10 +03:00
ffmpeg_files ffmpeg_files/intreadwrite.h: fix AV_RL32/AV_RB32 signedness 2011-06-15 00:10:47 +03:00
input options, subs: add --ass-vsfilter-aspect-compat 2011-08-12 14:19:10 +03:00
libaf cleanup: do libav* initialization on startup 2011-07-18 00:57:05 +03:00
libao2 ao_pcm: fix pointless message due to uninitialize variable 2011-08-11 20:58:05 +03:00
libmenu options: change option parsing to use bstr 2011-07-29 05:50:38 +03:00
libmpcodecs ad_ffmpeg: free resources on init failure 2011-08-21 23:04:20 +03:00
libmpdemux demuxer.h: raise pad amount to allow compiling against FFmpeg 2011-08-26 06:29:36 +03:00
libvo csputils/vo_gl: rewrite YUV->RGB matrix generation 2011-08-29 06:34:36 +03:00
loader loader/module.c: Fix compilation with --disable-qtx 2011-07-06 13:01:08 +03:00
osdep osdep/mplayer.rc: change to use "mplayer2" name 2011-08-21 02:18:00 +03:00
rpm vo_xvmc: drop XvMC support 2011-05-09 20:27:16 +03:00
stream stream_cdda: fix incorrectly allocated option field 2011-07-30 04:03:47 +03:00
sub aviheader.h: avoid including demuxer.h 2011-08-19 21:37:16 +03:00
timeline demuxer.h: avoid including stream.h 2011-08-19 21:37:16 +03:00
.gitignore .gitignore: add /cpuinfo 2011-03-13 22:20:51 +02:00
AUTHORS documentation: remove Changelog, rewrite README 2011-02-15 12:04:32 +02:00
Copyright mp3lib: drop internal mp3lib tree 2011-04-02 07:28:53 +03:00
LICENSE Copyright, LICENSE: change binary license to GPL 3 2011-03-24 23:40:29 +02:00
Makefile vf_qp: enable compilation depending on libavutil eval API 2011-07-18 00:57:05 +03:00
README documentation: remove Changelog, rewrite README 2011-02-15 12:04:32 +02:00
access_mpcontext.h cleanup: remove warnings under libmenu/ 2011-06-24 22:55:09 +03:00
asxparser.c asxparser: remove code confusing asx/player options 2011-07-26 05:31:30 +03:00
asxparser.h
av_log.c av_log: don't crash if called with NULL AVClass 2011-08-15 02:58:51 +03:00
av_log.h cleanup: do libav* initialization on startup 2011-07-18 00:57:05 +03:00
av_opts.c Update libav API uses 2011-04-20 04:36:05 +03:00
av_opts.h
bstr.c options: fix failure to parse trailing ',' in string list 2011-07-31 20:25:22 +03:00
bstr.h options: change option parsing to use bstr 2011-07-29 05:50:38 +03:00
cfg-mplayer.h options, subs: add --ass-vsfilter-aspect-compat 2011-08-12 14:19:10 +03:00
codec-cfg.c build: Revert "codec-cfg.c: avoid including aviheader.h" 2011-07-07 07:38:24 +03:00
codec-cfg.h
command.c options, subs: add --ass-vsfilter-aspect-compat 2011-08-12 14:19:10 +03:00
command.h
configure configure: libav: use "pkg-config --print-errors", "Libav" name 2011-08-21 00:36:23 +03:00
cpudetect.c cpudetect.c: check OS SSE support only with runtime detection 2011-07-06 13:01:07 +03:00
cpudetect.h loader: Reuse do_cpuid from cpudetect.c in loader/win32.c 2010-11-02 04:15:01 +02:00
cpuinfo.c
defaultopts.c options, subs: add --ass-vsfilter-aspect-compat 2011-08-12 14:19:10 +03:00
defaultopts.h cleanup: remove unused MEncoder-related code 2011-01-25 02:29:31 +02:00
edl.c
edl.h
fmt-conversion.c video/colorspaces: add new 9/10-bit formats from libavcodec 2011-06-26 06:27:50 +03:00
fmt-conversion.h
m_config.c options: change option parsing to use bstr 2011-07-29 05:50:38 +03:00
m_config.h options: change option parsing to use bstr 2011-07-29 05:50:38 +03:00
m_option.c options: commandline: don't print video filter list twice 2011-07-31 20:45:15 +03:00
m_option.h options: commandline: print error type for parse failures 2011-07-29 07:58:56 +03:00
m_property.c commands: osd_show_property_text: fix \xNN escapes 2011-08-05 03:46:06 +03:00
m_property.h
m_struct.c options: change option parsing to use bstr 2011-07-29 05:50:38 +03:00
m_struct.h options: change option parsing to use bstr 2011-07-29 05:50:38 +03:00
mangle.h
metadata.h
mixer.c audio: change external AO interface to "ao_[method](ao, ...)" 2011-04-09 03:03:22 +03:00
mixer.h audio: change external AO interface to "ao_[method](ao, ...)" 2011-04-09 03:03:22 +03:00
mp_core.h core: audio: improve audio-only seeks and position reporting 2011-07-31 01:06:12 +03:00
mp_fifo.c input: rework event reading and command queuing 2011-07-17 07:36:09 +03:00
mp_fifo.h input: rework event reading and command queuing 2011-07-17 07:36:09 +03:00
mp_msg.c cleanup: shut up more warnings 2011-05-06 18:33:16 +03:00
mp_msg.h mp_msg: change mp_dbg() to inline function to check syntax 2011-06-29 09:51:49 +03:00
mp_osd.h options: more mplayer.c options moved to option struct 2010-11-14 00:14:56 +02:00
mpbswap.h
mpcommon.c cleanup: remove unused MEncoder-related code 2011-01-25 02:29:31 +02:00
mpcommon.h subs: move vobsub loading logic down to find_subfiles.c 2011-04-20 04:22:52 +03:00
mplayer.c core: remove bad workaround for files without FPS set 2011-08-25 02:45:13 +03:00
mplayer.h options: move sub_name, sub_auto and vobsub_name to struct 2011-04-20 04:22:52 +03:00
options.h options, subs: add --ass-vsfilter-aspect-compat 2011-08-12 14:19:10 +03:00
parser-cfg.c build: fix --enable-debug, remove some "#ifdef MP_DEBUG" 2011-07-30 19:03:20 +03:00
parser-cfg.h options: move command line preparse together with parse 2011-07-26 06:02:03 +03:00
parser-mpcmd.c options: commandline: don't set bogus playtree option params 2011-07-31 01:19:13 +03:00
parser-mpcmd.h options: move command line preparse together with parse 2011-07-26 06:02:03 +03:00
path.c bstr: rename BSTR() -> bstr() 2011-07-27 08:38:12 +03:00
path.h bstr.[ch], path.[ch]: add string and path handling functions 2011-02-26 16:40:31 +02:00
playtree.c build: fix --enable-debug, remove some "#ifdef MP_DEBUG" 2011-07-30 19:03:20 +03:00
playtree.h options: commandline: accept --foo=xyz style options 2011-07-29 07:24:09 +03:00
playtreeparser.c build: fix --enable-debug, remove some "#ifdef MP_DEBUG" 2011-07-30 19:03:20 +03:00
playtreeparser.h options: commandline: accept --foo=xyz style options 2011-07-29 07:24:09 +03:00
pnm_loader.c vo_gl: Move the read_pnm function into a separate file 2010-11-02 04:18:37 +02:00
pnm_loader.h vo_gl: Move the read_pnm function into a separate file 2010-11-02 04:18:37 +02:00
subopt-helper.c cleanup: don't check for NULL before free() 2010-11-08 18:05:12 +02:00
subopt-helper.h
talloc.c talloc.[ch]: remove "type safety" hack that violates C types 2011-08-19 03:01:16 +03:00
talloc.h talloc.[ch]: remove "type safety" hack that violates C types 2011-08-19 03:01:16 +03:00
version.sh build: change version number generation 2011-02-19 19:07:12 +02:00

README

Compiling with full features requires development files for several
external libraries. Below is a list of some important requirements. For
more information see the output of './configure --help' for a list of options,
or look at the list of enabled and disabled features printed after running
'./configure'. If you think you have support for some feature installed
but configure fails to detect it, the file config.log may contain information
about the reasons for the failure.

Libraries specific to particular video output methods
(you'll want at least one of VDPAU, GL or Xv):
 - libvdpau (for VDPAU output, best choice for NVIDIA cards)
 - libGL (OpenGL output)
 - libXv (XVideo output)
general:
 - libasound   (ALSA audio output)
 - various general X development libraries
 - libfreetype
 - libfontconfig
 - libass
 - FFmpeg libraries (libavutil libavcodec libavformat libswscale libpostproc)

Most of the above libraries are available in suitable versions on normal
Linux distributions. However FFmpeg is an exception (distro versions may be
too old to work at all or work well). For that reason you may want to use
the separately available build wrapper that first compiles FFmpeg libraries
and libass, and then compiles the player statically linked against those.