1
0
mirror of https://github.com/mpv-player/mpv synced 2024-12-27 01:22:30 +00:00
Commit Graph

207 Commits

Author SHA1 Message Date
Uoti Urpala
13221a7165 Merge svn changes up to r30663
Conflicts:
	gui/cfg.c
	libmpcodecs/vd_dmo.c
	mplayer.c
2010-03-10 00:13:11 +02:00
Uoti Urpala
c37f09693d Merge svn changes up to r30643 2010-03-10 00:00:06 +02:00
Uoti Urpala
42bf12c2d3 Merge svn changes up to r30595
Conflicts:
	mplayer.c
	vidix/nvidia_vid.c
2010-03-09 23:37:00 +02:00
komh
316e05b877 Replace platform preprocessor check by HAVE_DOS_PATHS.
This is both more elegant and more portable.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30650 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-02-19 09:14:01 +00:00
diego
93c1e23c47 Mark some more functions that are not used outside of their files as static.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30632 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-02-18 09:26:00 +00:00
diego
782c37899b Declare vf_menu_pause_update in libmenu/menu.h.
This avoids a forward declaration in mplayer.c.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30582 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-02-14 14:54:48 +00:00
Uoti Urpala
201bef7ee1 Implement vsync-aware frame timing for VDPAU
Main things added are custom frame dropping for VDPAU to work around
the display FPS limit, frame timing adjustment to avoid jitter when
video frame times keep falling near vsyncs, and use of VDPAU's timing
feature to keep one future frame queued in advance.

NVIDIA's VDPAU implementation refuses to change the displayed frame
more than once per vsync. This set a limit on how much video could be
sped up, and caused problems for nearly all videos on low-FPS video
projectors (playing 24 FPS video on a 24 FPS projector would not work
reliably as MPlayer may need to slightly speed up the video for AV
sync). This commit adds a framedrop mechanism that drops some frames
so that no more than one is sent for display per vsync. The code
tries to select the dropped frames smartly, selecting the best one to
show for each vsync. Because of the timing features needed the drop
functionality currently does not work if the correct-pts option is
disabled.

The code also adjusts frame timing slightly to avoid jitter. If you
for example play 24 FPS video content on a 72 FPS display then
normally a frame would be shown for 3 vsyncs, but if the frame times
happen to fall near vsyncs and change between just before and just
after then there could be frames alternating between 2 and 4
vsyncs. The code changes frame timing by up to one quarter vsync
interval to avoid this.

The above functionality depends on having reliable vsync timing
information available. The display refresh rate is not directly
provided by the VDPAU API. The current code uses information from the
XF86VidMode extension if available; I'm not sure how common cases
where that is inaccurate are. The refresh rate can be specified
manually if necessary.

After the changes in this commit MPlayer now always tries to keep one
frame queued for future display using VDPAU's internal timing
mechanism (however no more than 50 ms to the future). This should make
video playback somewhat more robust against timing inaccuracies caused
by system load.
2009-11-15 12:45:58 +02:00
Uoti Urpala
0eb321bf2c Remove trailing whitespace from most files 2009-07-07 02:34:35 +03:00
Amar Takhar
e306174952 Translation system changes part 2: replace macros by strings
Replace all MSGTR_ macros in the source by the corresponding English
string.
2009-07-07 01:38:20 +03:00
Amar Takhar
b5972d6f14 Translation system changes part 1: wrap translated strings
Replace mp_msg() calls which have a translated string as the format
argument with mp_tmsg and add _() around all other translated strings.
2009-07-07 01:28:07 +03:00
diego
6e9cbdc104 whitespace cosmetics: Remove all trailing whitespace.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29305 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-05-13 02:58:57 +00:00
Uoti Urpala
d136cf6882 Merge svn changes up to r29134 2009-04-02 23:55:13 +03:00
diego
2e903f7c75 Remove unnecessary malloc.h #includes and related #ifdeffery.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29126 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-04-02 09:20:48 +00:00
Uoti Urpala
186e5a998c Merge svn changes up to r28641
Convert vo_x11_border (used in vo_gl/gl2 though the vo_gl_border
macro) to use a wrapper macro in old-style VOs which do not provide a
VO object argument. Before this function had an explicit global_vo
argument in vo_gl/gl2. New vo_vdpau uses it too so use the same
mechanism as most other functions.
2009-02-18 01:45:36 +02:00
diego
be8c67909b Convert HAVE_MALLOC_H into a 0/1 definition, fixes the warning:
mem.c:32:5: warning: "HAVE_MALLOC_H" is not defined


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@28629 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-02-17 11:16:19 +00:00
Uoti Urpala
a3ab9e8e46 Merge svn changes up to r28149 2008-12-14 17:28:16 +02:00
diego
ea6c00a4b6 Add standard GPL headers.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@28147 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-12-13 18:40:19 +00:00
Uoti Urpala
0301309425 Merge svn changes up to 27824
Conflicts:
	cfg-common-opts.h
	libmpcodecs/dec_video.c
	libmpcodecs/vd.c
	libvo/x11_common.h
	mplayer.c
	stream/cache2.c
2008-10-25 05:12:34 +03:00
diego
2093097cfb Remove pointless attribute_used from variable declaration.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27780 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-10-16 18:08:18 +00:00
Uoti Urpala
f6dfaf26f8 Make various functions static 2008-08-12 14:57:12 +03:00
Uoti Urpala
17d3e4b36d Merge svn changes up to r27441
Conflicts:

	cfg-common-opts.h
	command.c
	configure
	input/input.c
	libmpcodecs/dec_video.c
	libmpcodecs/vd.c
	libmpdemux/stheader.h
	libvo/sub.c
	libvo/video_out.c
	libvo/vo_xv.c
	libvo/vosub_vidix.c
	libvo/x11_common.c
	libvo/x11_common.h
	mp_core.h
	mplayer.c
	stream/stream.h
2008-08-08 02:13:09 +03:00
diego
091d352d06 Rename font-related preprocessor directives.
Switch them from a HAVE_ to a CONFIG_ prefix.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27425 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-08-07 10:36:07 +00:00
diego
02135001b4 Change a bunch of video/audio-output-specific preprocessor directives from
a HAVE_ prefix to a CONFIG_ prefix.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27402 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-08-03 15:21:40 +00:00
Uoti Urpala
6cce822505 Merge svn changes up to r27399
Conflicts:

	libmpcodecs/vd.c
	libmpcodecs/ve_raw.c
	libvo/video_out.c
	libvo/x11_common.c
	mplayer.c
2008-08-02 22:04:35 +03:00
diego
d17f9943af Rename some preprocessor directives from CONFIG_* to HAVE_* where appropriate;
CONFIG_ prefix for configurable options, HAVE_ for system-dependent stuff.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27391 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-08-01 20:28:58 +00:00
Uoti Urpala
04f3909a72 Merge svn changes up to r27374
Conflicts:

	cfg-common-opts.h
	cfg-mplayer.h
	command.c
	configure
	libmpcodecs/dec_video.c
	libmpcodecs/vd.c
	libmpcodecs/vf_vo.c
	libmpdemux/demuxer.h
	libmpdemux/stheader.h
	mp_core.h
	mplayer.c
	stream/stream_radio.c
2008-07-30 16:39:24 +03:00
diego
4b141479da Start unifying names of internal preprocessor directives.
Replace all USE_ prefixes by CONFIG_ prefixes to indicate
options which are configurable.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27373 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-07-30 12:01:30 +00:00
Uoti Urpala
de560e8167 Merge svn changes up to r27123
Conflicts:

	libmenu/menu_filesel.c
	libmenu/menu_pt.c
2008-06-23 03:58:44 +03:00
ben
9e0e5b028c fixes two bugs:
1. doesn't add \ before spaces when showing dirname in interface title.
2. when replace_path() string is to be parsed by input command,
I assume that the path is to be run in shell,
and I do special escaping of 'into \'\\\'\'

(tested useful and ok with geexbox for last 3 years ...)



git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27118 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-06-20 20:36:05 +00:00
ben
6f70e50e6d Add auto-close option to libmenu playlist handling part.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27104 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-06-20 19:43:19 +00:00
Uoti Urpala
af3fcdf2de Merge svn changes up to r27025
Conflicts:

	command.c
	libvo/vosub_vidix.c
	libvo/vosub_vidix.h
	mplayer.c
2008-06-07 19:57:57 +03:00
ben
a3e6050aa1 Removed unused freepath variable.
Patch by Guillaume Lecerf <foxcore at gmail com>



git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27002 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-06-06 23:24:39 +00:00
ben
45509b2576 Remove useless braces on if() statement.
Patch by Guillaume Lecerf <foxcore at gmail com>



git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@26993 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-06-05 19:47:04 +00:00
ben
8d4cdcc158 Ensure 'path' string is 0 terminated.
Patch by Guillaume Lecerf <foxcore at gmail com>



git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@26992 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-06-05 19:46:16 +00:00
Uoti Urpala
d5c868325c Merge svn changes up to r26979
Most of the conflicts are trivial.

Conflicts:

	Makefile
	cfg-mplayer.h
	input/input.c
	libmenu/vf_menu.c
	libmpcodecs/dec_video.c
	libmpcodecs/vf_expand.c
	libmpcodecs/vf_vo.c
	libmpdemux/demux_mkv.c
	libmpdemux/demuxer.c
	libmpdemux/demuxer.h
	libvo/vo_directfb2.c
	libvo/vo_gl.c
	libvo/vo_winvidix.c
	libvo/vo_xv.c
	libvo/vo_xvidix.c
	libvo/vo_xvmc.c
	libvo/x11_common.c
	mplayer.c
	osdep/timer-linux.c
	stream/cache2.c
2008-06-04 08:10:48 +03:00
diego
15525ae9aa Use size_t instead of int for a variable that is compared to the result
of strlen. Fixes a warning about signed and unsigned comparison.
patch by Guillaume LECERF, foxcore gmail com


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@26977 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-06-03 22:35:02 +00:00
diego
5423c418c2 cosmetics: Remove useless parentheses from return statements.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@26791 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-05-16 09:42:28 +00:00
Uoti Urpala
a41db36b22 Merge svn changes up to r26783
Conflicts:

	Makefile
	common.mak
	configure
	libmpcodecs/vd_ffmpeg.c
	libmpdemux/demux_mkv.c
	libvo/vo_xv.c
	mplayer.c
2008-05-15 21:19:35 +03:00
diego
b10c35e0ed Use standard license headers with standard formatting.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@26775 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-05-14 18:02:27 +00:00
Uoti Urpala
bec3b84f5e Merge svn changes up to r26624
Conflicts:

	Makefile
2008-05-01 08:18:50 +03:00
Uoti Urpala
423b95bf5c input: Move cmd_queue to context struct
Menu instances now also need a input context pointer to queue commands.
2008-04-30 14:46:21 +03:00
diego
7d560418f6 Remove unnecessary version.h #includes.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@26602 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-04-30 11:03:41 +00:00
Uoti Urpala
80d43e8632 Move global filename to mpctx 2008-04-26 15:17:51 +03:00
Uoti Urpala
fb33e286b5 Move global mconfig to mpctx
The global was used in the function cfg_include which handles the
-include option. Make the address available in that function by
creating a new dynamically allocated option in m_config_new that has
the address in the option's private data.

asxparser.c also used the global. Making it available through all ways
the code could get called required a number of relatively straightforward
changes to playtree and menu code.
2008-04-26 10:44:59 +03:00
Uoti Urpala
0e757bf9da Remove _s/_st suffix from some struct names
Since the names are always used after the keyword "struct" having a
suffix as in "struct demuxer_st" is almost completely pointless.
2008-04-25 03:34:22 +03:00
Uoti Urpala
2bcfe1e077 Add new video driver API
Create new video driver API that has a per-instance context structure
and does not rely on keeping status in global or static variables.
Existing drivers are not yet converted to this API; instead there is a
wrapper which translates calls to them.

In the new API, an old API call vo_functions->xyz(args) is generally
replaced by vo_xyz(vo_instance, args).

The changes to keep the vesa, dxr2 and xover drivers compiling have
not been tested.
2008-04-23 13:41:04 +03:00
diego
f827599b48 Build all parts in the libmenu subdirectory nonrecursively.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@26343 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-04-07 08:28:54 +00:00
diego
55e29f6103 Add missing header #includes to fix 'make checkheaders'.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@26171 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-03-05 08:24:59 +00:00
diego
8efb2fa21c Add MPLAYER_ prefix to multiple inclusion guards.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@26061 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-02-22 09:09:46 +00:00
diego
77eb726c3d Remove pointless #ifdefs around extern declarations.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@26039 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-02-20 08:51:53 +00:00