Command line video player
Go to file
wm4 827faa3843 vf_expand: always clear the added borders
Using the "expand" filter makes the image area larger by adding
borders to the video frame. These borders are supposed to be always
black. The filter relied on the borders in its output buffer staying
black without redrawing them for each frame. However, when using
direct rendering, a video filter inserted after vf_expand can draw
into these borders, for example the "unsharp" and "ass" filters. These
changes incorrectly stayed visible in the the following video frames.

Fix this by always clearing the borders in vf_expand. In some cases,
this might be more work than necessary, but vf_expand has no way of
detecting whether a subsequent filter draws into the borders or not,
and this avoids fragile assumptions about the existing contents of the
output buffer(s).

This also deals with frame size changes when config() is called again.
Before this commit, remains of the old video were visible if the new
video frame size was smaller than before.

Since we now always clear the borders, there's no more need for the
complicated code that cleared only the regions that were covered by the
OSD. Delete that.
2011-12-19 21:56:00 +02:00
DOCS core: add screenshot mode for actual VO window contents 2011-11-25 23:56:28 +02:00
TOOLS vo_vdpau: implement screenshots 2011-11-25 23:56:28 +02:00
debian debian: remove leftover references to deleted OSD menu files 2011-11-14 20:24:39 +02:00
drivers
etc libmenu: remove OSD menu functionality (--menu) 2011-10-25 07:05:47 +03:00
ffmpeg_files
input core: add screenshot mode for actual VO window contents 2011-11-25 23:56:28 +02:00
libaf configure, build: remove --disable-libav support 2011-12-11 07:48:26 +02:00
libao2 ao_coreaudio: fix crash when using mute with S/PDIF output 2011-11-25 05:20:23 +02:00
libmpcodecs vf_expand: always clear the added borders 2011-12-19 21:56:00 +02:00
libmpdemux configure, build: remove --disable-libav support 2011-12-11 07:48:26 +02:00
libvo configure, build: remove --disable-libav support 2011-12-11 07:48:26 +02:00
loader
osdep getch2.c: fix negative keycodes returned for non-ascii 2011-10-03 04:12:15 +03:00
rpm libmenu: remove OSD menu functionality (--menu) 2011-10-25 07:05:47 +03:00
stream configure, build: remove --disable-libav support 2011-12-11 07:48:26 +02:00
sub core, vo: modify OSD redraw architecture, support EOSD 2011-12-06 05:03:39 +02:00
timeline
.gitignore
AUTHORS
Copyright
LICENSE
Makefile configure, build: remove --disable-libav support 2011-12-11 07:48:26 +02:00
README
access_mpcontext.h
asxparser.c
asxparser.h
av_log.c configure, build: remove --disable-libav support 2011-12-11 07:48:26 +02:00
av_log.h terminal output: show libav version numbers in verbose mode 2011-10-01 20:03:49 +03:00
av_opts.c
av_opts.h
bstr.c
bstr.h
cfg-mplayer.h configure, build: remove --disable-libav support 2011-12-11 07:48:26 +02:00
codec-cfg.c
codec-cfg.h
command.c commands: playback speed: better responsiveness without audio 2011-12-06 07:47:46 +02:00
command.h
configure configure, build: remove --disable-libav support 2011-12-11 07:48:26 +02:00
cpudetect.c
cpudetect.h
cpuinfo.c
defaultopts.c options: change --ass-hinting default to 0 2011-12-07 00:25:38 +02:00
defaultopts.h
edl.c
edl.h
fmt-conversion.c
fmt-conversion.h
m_config.c options: add "disabled option" functionality 2011-09-04 14:36:09 +03:00
m_config.h options: add "disabled option" functionality 2011-09-04 14:36:09 +03:00
m_option.c options: make "choice" option type parsing ignore case 2011-09-11 16:35:44 +03:00
m_option.h options: add "disabled option" functionality 2011-09-04 14:36:09 +03:00
m_property.c
m_property.h
m_struct.c
m_struct.h
mangle.h
metadata.h
mixer.c
mixer.h
mp_core.h core: add infrastructure to get screenshots from VOs 2011-11-25 23:56:28 +02:00
mp_fifo.c
mp_fifo.h
mp_msg.c
mp_msg.h libmenu: remove OSD menu functionality (--menu) 2011-10-25 07:05:47 +03:00
mp_osd.h
mpbswap.h
mpcommon.c
mpcommon.h
mplayer.c configure, build: remove --disable-libav support 2011-12-11 07:48:26 +02:00
mplayer.h
options.h options, core/hrseek: add --hr-seek-demuxer-offset 2011-11-14 20:24:39 +02:00
parser-cfg.c
parser-cfg.h
parser-mpcmd.c
parser-mpcmd.h
path.c
path.h
playtree.c
playtree.h
playtreeparser.c
playtreeparser.h
pnm_loader.c
pnm_loader.h
screenshot.c core: add screenshot mode for actual VO window contents 2011-11-25 23:56:28 +02:00
screenshot.h core: add screenshot mode for actual VO window contents 2011-11-25 23:56:28 +02:00
subopt-helper.c subopt-helper: support "no-" prefix to negate suboptions 2011-11-14 20:24:39 +02:00
subopt-helper.h
talloc.c
talloc.h
version.sh

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.