Command line video player
Go to file
wm4 0f155921b0 core: manage tracks in the frontend
Introduce a general track struct for every audio/video/subtitle track
known to the frontend. External files (subtitles) are now represented
as tracks too. This mainly serves to clean up the subtitle selection
code: now every subtitle is simply a track, instead of using a messy
numbering that goes by subtitle type (as it was stored in the
global_sub_pos field). The mplayer fontend will list external subtitle
files as additional tracks.

The timeline code now tries to match the exact demuxer IDs of all
tracks. This may cause problems when Matroska files with different
track numberings are used with EDL timelines. Change demux_lavf not
to set demuxer IDs, since most time they are not set.
2012-09-18 21:04:45 +02:00
DOCS libaf: rename af_format.h to format.h 2012-08-29 00:50:26 +02:00
TOOLS vf_dlopen: add a generic filter to load external filters 2012-08-23 13:13:53 +02:00
debian debian: remove leftover references to deleted OSD menu files 2011-11-14 20:24:39 +02:00
etc libmpcodecs: remove redundant audio and video decoders 2012-08-20 15:36:04 +02:00
ffmpeg_files build: switch to libavutil bswap.h and intreadwrite.h 2012-02-01 22:46:27 +02:00
input core: manage tracks in the frontend 2012-09-18 21:04:45 +02:00
libaf libaf: rename af_format.h to format.h 2012-08-29 00:50:26 +02:00
libao2 libaf: rename af_format.h to format.h 2012-08-29 00:50:26 +02:00
libmpcodecs libaf: rename af_format.h to format.h 2012-08-29 00:50:26 +02:00
libmpdemux core: manage tracks in the frontend 2012-09-18 21:04:45 +02:00
libvo cocoa_common: improve conditional dock hiding from 3259e4a7a 2012-08-28 23:21:07 +02:00
osdep timer: remove timer_name 2012-09-07 16:06:36 +02:00
rpm libmenu: remove OSD menu functionality (--menu) 2011-10-25 07:05:47 +03:00
stream libaf: rename af_format.h to format.h 2012-08-29 00:50:26 +02:00
sub core: manage tracks in the frontend 2012-09-18 21:04:45 +02:00
timeline core, timeline: don't keep separate stream field 2012-09-07 16:06:36 +02:00
.gitignore manpage: merge new manpage 2012-08-02 22:05:27 +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_dlopen: add a generic filter to load external filters 2012-08-23 13:13:53 +02:00
README osd: remove freetype font rendering code 2012-07-28 23:36:08 +02:00
asxparser.c Remove dead code 2012-08-01 17:07:35 +02:00
asxparser.h mplayer: turn playtree into a list, and change per-file option handling 2012-07-31 21:33:26 +02:00
av_log.c stream_ffmpeg: fix broken line from 30afc64532 2012-04-18 01:27:55 +03:00
av_log.h terminal output: show libav version numbers in verbose mode 2011-10-01 20:03:49 +03:00
av_opts.c Update Libav API uses 2012-02-01 22:46:27 +02:00
av_opts.h
bstr.c Adjust ffmpeg/libav #includes to work with recent upstream changes 2012-08-21 18:22:00 +02:00
bstr.h bstr.h: fix compilation with C++ 2012-08-03 03:34:38 +02:00
cfg-mplayer.h Remove support for libnemesi RTSP streaming 2012-08-20 15:36:03 +02:00
codec-cfg.c options, codecs.conf, img_format: unify imgfmt name handling 2012-08-29 00:14:11 +02:00
codec-cfg.h video, audio: use lavc decoders without codecs.conf entries 2012-07-24 09:01:47 +03:00
command.c core: manage tracks in the frontend 2012-09-18 21:04:45 +02:00
command.h Merge svn changes up to r30475 2010-03-09 19:18:43 +02:00
configure configure: disable optimization if --enable-debug is used 2012-08-25 20:04:32 +02:00
cpudetect.c cpudetect: remove unused/forgotten crap 2012-08-01 23:49:06 +02:00
cpudetect.h cpudetect: remove unused/forgotten crap 2012-08-01 23:49:06 +02:00
defaultopts.c image_writer: add option parsing 2012-08-06 17:48:30 +02:00
defaultopts.h cleanup: remove unused MEncoder-related code 2011-01-25 02:29:31 +02:00
fmt-conversion.c cleanup: remove XvMC remains, reformat img_format.c 2012-08-28 23:26:16 +02:00
fmt-conversion.h Add license header to all top-level files missing them. 2010-01-30 23:24:23 +00:00
image_writer.c image_writer: make JPG default and increase quality (for screenshots) 2012-08-16 00:01:19 +02:00
image_writer.h image_writer: rename "filetype" option to "format" 2012-08-06 19:05:32 +02:00
m_config.c m_config: support auto-allocated sub-structs 2012-08-06 17:45:17 +02:00
m_config.h m_config: support auto-allocated sub-structs 2012-08-06 17:45:17 +02:00
m_option.c libaf: rename af_format.h to format.h 2012-08-29 00:50:26 +02:00
m_option.h m_config: support auto-allocated sub-structs 2012-08-06 17:45:17 +02:00
m_property.c options: get rid of ambiguous option parsing 2012-08-05 23:51:49 +02:00
m_property.h Add license header to all top-level files missing them. 2010-01-30 23:24:23 +00:00
m_struct.c options: get rid of ambiguous option parsing 2012-08-05 23:51:49 +02:00
m_struct.h Remove dead code 2012-08-01 17:07:35 +02:00
mangle.h mangle: change preprocessor define for macosx 2012-08-01 08:46:20 +02:00
metadata.h Remove trailing whitespace from most files 2009-07-07 02:34:35 +03:00
mixer.c mixer: silence message about inserting volume filter 2012-07-30 01:46:04 +02:00
mixer.h mixer: support native audio driver mute 2012-04-11 03:56:28 +03:00
mp_core.h core: manage tracks in the frontend 2012-09-18 21:04:45 +02:00
mp_fifo.c input: allow unicode keys and reassign internal key codes 2012-03-25 22:30:37 +03:00
mp_fifo.h VO: remove old VO glue 2012-08-07 01:29:56 +02:00
mp_msg.c mp_msg: remove filename_recode 2012-07-31 01:35:53 +02:00
mp_msg.h mp_msg: remove filename_recode 2012-07-31 01:35:53 +02:00
mp_osd.h mplayer: make OSD stack a member of MPContext 2012-08-04 19:59:56 +02:00
mpbswap.h build: switch to libavutil bswap.h and intreadwrite.h 2012-02-01 22:46:27 +02:00
mpcommon.c Change version string 2012-07-29 00:04:17 +02:00
mpcommon.h options: get rid of ambiguous option parsing 2012-08-05 23:51:49 +02:00
mplayer.c core: manage tracks in the frontend 2012-09-18 21:04:45 +02:00
mplayer.h libvo: remove exit_player_bad() 2012-07-30 15:46:05 +02:00
options.h image_writer: add option parsing 2012-08-06 17:48:30 +02:00
parser-cfg.c parser-cfg: specify which config file contains the unknown option 2012-08-20 15:36:05 +02:00
parser-cfg.h options: move command line preparse together with parse 2011-07-26 06:02:03 +03:00
parser-mpcmd.c Remove dvdnav support (DVD menus) 2012-08-16 17:17:49 +02:00
parser-mpcmd.h options: get rid of ambiguous option parsing 2012-08-05 23:51:49 +02:00
path.c Remove win32/qt/xanim/real binary codecs loading 2012-08-16 17:16:33 +02:00
path.h Remove win32/qt/xanim/real binary codecs loading 2012-08-16 17:16:33 +02:00
playlist.c playlist: do not add playlist base path to URLs 2012-08-07 03:14:53 +02:00
playlist.h playlist: rename params_count field to num_params for consistency 2012-08-04 19:59:55 +02:00
playlist_parser.c mplayer: turn playtree into a list, and change per-file option handling 2012-07-31 21:33:26 +02:00
playlist_parser.h mplayer: turn playtree into a list, and change per-file option handling 2012-07-31 21:33:26 +02: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
screenshot.c image_writer: add option parsing 2012-08-06 17:48:30 +02:00
screenshot.h screenshot: make screenshot filenames configurable 2012-02-29 04:14:54 +01:00
subopt-helper.c Remove dead code 2012-08-01 17:07:35 +02:00
subopt-helper.h Remove dead code 2012-08-01 17:07:35 +02:00
talloc.c talloc.[ch]: remove "type safety" hack that violates C types 2011-08-19 03:01:16 +03:00
talloc.h windows: fix format string attributes on MinGW 2012-03-01 00:22:29 +02:00
version.sh Change version string 2012-07-29 00:04:17 +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 (for libass)
 - libfontconfig (for libass)
 - 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.