Command line video player
Go to file
Uoti Urpala 89a5714893 subs: always use sub decoder framework for libass rendering
Remove subtitle selection code setting osd->ass_track directly and
vf_ass/vf_vo code rendering the track directly with libass. Instead,
do track selection and rendering with dec_sub.c functions.

Before, mpctx->set_of_ass_tracks[] contained bare libass tracks
generated from external subtitle files. For use with dec_sub.c, it now
contains struct sh_sub instances with decoder already initialized.

This commit breaks the sub_step command ('g' and 'y' keys) for
libass-rendered subtitles. It could be fixed, but it's so useless -
especially as with the existing implementation there's no practical
way to get subtitle delay back to normal after using it - that I
didn't bother.

Conflicts:
	command.c
	mp_core.h
	mplayer.c
2012-09-18 21:04:46 +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 core: runtime Matroska edition switching 2012-09-18 21:04:45 +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 cleanup: remove pointless #defines 2012-09-18 21:04:46 +02:00
libmpcodecs subs: always use sub decoder framework for libass rendering 2012-09-18 21:04:46 +02:00
libmpdemux core: fix DVD subtitle selection 2012-09-18 21:04:45 +02:00
libvo subs: always use sub decoder framework for libass rendering 2012-09-18 21:04:46 +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 core: fix DVD subtitle selection 2012-09-18 21:04:45 +02:00
sub subs: always use sub decoder framework for libass rendering 2012-09-18 21:04:46 +02:00
timeline core: move implementation for -audiofile to the frontend 2012-09-18 21:04:45 +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 sd_lavc: use subtitle framework for former av_sub.c code 2012-09-18 21:04:46 +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 cleanup: remove pointless #defines 2012-09-18 21:04:46 +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 subs: always use sub decoder framework for libass rendering 2012-09-18 21:04:46 +02:00
command.h
configure cleanup: remove pointless #defines 2012-09-18 21:04:46 +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 subs: always use sub decoder framework for libass rendering 2012-09-18 21:04:46 +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
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
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
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 subs: always use sub decoder framework for libass rendering 2012-09-18 21:04:46 +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 subs: always use sub decoder framework for libass rendering 2012-09-18 21:04:46 +02:00
mplayer.h libvo: remove exit_player_bad() 2012-07-30 15:46:05 +02:00
options.h subs: always use sub decoder framework for libass rendering 2012-09-18 21:04:46 +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
pnm_loader.h
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.