Command line video player
Go to file
wm4 a19f197cb1 core: show quvi page title in window title, clean up libquvi handling
Clean up handling of libquvi (which resolves URLs of streaming sites
into URLs to the actual media playable by mpv). Move the code out of
open.c to quvi.c, and invoke it explicitly from mplayer.c, instead of
trying to resolve every filename passed to open_stream().

This allows easily passing metadata from the quvi context to the
frontend. Expose QUVIPROP_PAGETITLE as "media-title" property, and use
that instead of "filename" for the mplayer window title. (For YouTube,
this is the video title.) It's cleaner too.

Handle a potential reliability issue: check quvi_getprop return values.

Since open.c contains barely anything but the open_stream() stub, move
that to stream.c and delete open.c.
2012-10-14 22:26:41 +02:00
DOCS core: show quvi page title in window title, clean up libquvi handling 2012-10-14 22:26:41 +02:00
TOOLS Merge branch 'input_changes' into master 2012-10-12 11:53:53 +02:00
etc Merge branch 'input_changes' into master 2012-10-12 11:53:53 +02:00
ffmpeg_files build: switch to libavutil bswap.h and intreadwrite.h 2012-02-01 22:46:27 +02:00
input input: don't warn on commands for disabled optional features 2012-10-14 21:43:15 +02:00
libaf Rename to "mpv" 2012-10-12 10:14:32 +02:00
libao2 Rename to "mpv" 2012-10-12 10:14:32 +02:00
libmpcodecs ad_ffmpeg: add support for planar sample formats 2012-10-14 21:30:47 +02:00
libmpdemux Rename to "mpv" 2012-10-12 10:14:32 +02:00
libvo vo_opengl: fix filter reinitialization 2012-10-14 21:43:15 +02:00
osdep Rename to "mpv" 2012-10-12 10:14:32 +02:00
stream core: show quvi page title in window title, clean up libquvi handling 2012-10-14 22:26:41 +02:00
sub sub: add --ass-style-override option to disable style overrides 2012-10-12 10:13:42 +02:00
timeline core, timeline: cache external ordered chapter files too 2012-09-18 21:07:30 +02:00
.gitignore Rename to "mpv" 2012-10-12 10:14:32 +02:00
AUTHORS documentation: remove Changelog, rewrite README 2011-02-15 12:04:32 +02:00
Copyright Rename to "mpv" 2012-10-12 10:14:32 +02:00
LICENSE Copyright, LICENSE: change binary license to GPL 3 2011-03-24 23:40:29 +02:00
Makefile core: show quvi page title in window title, clean up libquvi handling 2012-10-14 22:26:41 +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 Merge branch 'input_changes' into master 2012-10-12 11:53:53 +02:00
cfg-mplayer.h Merge branch 'input_changes' into master 2012-10-12 11:53:53 +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: show quvi page title in window title, clean up libquvi handling 2012-10-14 22:26:41 +02:00
command.h commands: change property expansion format string 2012-10-12 10:10:32 +02:00
configure Rename to "mpv" 2012-10-12 10:14: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 core: show quvi page title in window title, clean up libquvi handling 2012-10-14 22:26:41 +02:00
defaultopts.h
encode.h encode: video encoding now supported using mencoder-like options 2012-09-18 21:08:20 +02:00
encode_lavc.c encode: remove dependency on current ffmpeg 2012-10-01 11:04:48 +02:00
encode_lavc.h encode: add options --ovfirst and --oafirst 2012-09-29 15:04:40 +02:00
fmt-conversion.c cleanup: remove XvMC remains, reformat img_format.c 2012-08-28 23:26:16 +02:00
fmt-conversion.h fmt-conversion.h: fix pixfmt.h #include; fixes latest Libav 2012-10-14 21:27:02 +02: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 Merge branch 'input_changes' into master 2012-10-12 11:53:53 +02:00
m_config.h Merge branch 'input_changes' into master 2012-10-12 11:53:53 +02:00
m_option.c commands: handle property clamping in m_option 2012-10-12 10:10:31 +02:00
m_option.h Merge branch 'input_changes' into master 2012-10-12 11:53:53 +02:00
m_property.c commands: move legacy property wrapper to m_property.c 2012-10-12 10:10:33 +02:00
m_property.h commands: don't use dummy option declaration for properties 2012-10-12 10:10:32 +02: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
mixer.c mplayer: fix crash when muted and audio codec fails 2012-10-03 01:41:13 +02:00
mixer.h softvol, ao_pulse: prefer ao_pulse volume control by default 2012-09-23 14:57:01 +02:00
mp_core.h core: show quvi page title in window title, clean up libquvi handling 2012-10-14 22:26:41 +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 Rename to "mpv" 2012-10-12 10:14:32 +02:00
mp_msg.h encode: video encoding now supported using mencoder-like options 2012-09-18 21:08:20 +02:00
mp_osd.h commands: more user-control whether a command shows OSD bars/messages 2012-10-12 10:10:32 +02:00
mpbswap.h build: switch to libavutil bswap.h and intreadwrite.h 2012-02-01 22:46:27 +02:00
mpcommon.c core: remove duplicated format_time() functions 2012-09-18 21:04:47 +02:00
mpcommon.h Fix MP_TARRAY_GROW macro 2012-10-12 10:10:32 +02:00
mplayer.c core: show quvi page title in window title, clean up libquvi handling 2012-10-14 22:26:41 +02:00
mplayer.h core: show quvi page title in window title, clean up libquvi handling 2012-10-14 22:26:41 +02:00
options.h Merge branch 'input_changes' into master 2012-10-12 11:53:53 +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 options: fix "--" 2012-09-18 21:07:29 +02:00
parser-mpcmd.h options: get rid of ambiguous option parsing 2012-08-05 23:51:49 +02:00
path.c Rename to "mpv" 2012-10-12 10:14:32 +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
quvi.c core: show quvi page title in window title, clean up libquvi handling 2012-10-14 22:26:41 +02:00
screenshot.c commands: change property expansion format string 2012-10-12 10:10:32 +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: fix strndup group of functions 2012-10-12 10:10:32 +02:00
talloc.h windows: fix format string attributes on MinGW 2012-03-01 00:22:29 +02:00
version.c Rename to "mpv" 2012-10-12 10:14:32 +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.