1
0
mirror of https://github.com/mpv-player/mpv synced 2025-04-01 00:07:33 +00:00
Commit Graph

30329 Commits

Author SHA1 Message Date
Uoti Urpala
34279a8ce3 cosmetics: remove some unused variables 2009-11-17 06:56:29 +02:00
Uoti Urpala
53ecafadc8 vo_vdpau: Check return value when setting video attributes
Check the return value when setting any video mixer attribute and
print an error message if the operation failed. Also simplify code by
changing update_csc_matrix() to use the utility function added for
this.
2009-11-17 06:25:15 +02:00
Uoti Urpala
ce77a7ab39 vo_xv: Support yuv colorspace changes on ATI cards
Use the "XV_COLORSPACE" xv attribute if it exists, in addition to
previously supported "XV_ITURBT_709" (which works on NVIDIA cards).
2009-11-17 01:17:45 +02:00
cehoyos
69e86099e2 Set display size in sh_video when decoding H264.
This fixes H264 VDPAU decoding with some native demuxers.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29920 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-11-16 21:38:32 +00:00
cehoyos
2cba321003 Clarify new VDPAU MPEG4 ASP and DVB teletext decoding features.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29919 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-11-16 21:36:27 +00:00
Gabrov
4507c8aa2f synced with r29912
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29918 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-11-16 15:20:57 +00:00
ptt
ff8b4384d8 synced with help_mp-en.h r29912
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29917 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-11-16 14:26:18 +00:00
ptt
04c6f1f979 added -name, -title, -use-filename-title options to Changelog
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29916 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-11-16 14:22:38 +00:00
Uoti Urpala
a1af75d83e mplayer.c: Fix compilation with dvdnav enabled
I had forgotten to check dvdnav-specific code after last merge of svn
changes.
2009-11-16 15:10:35 +02:00
compn
32cc984c71 more changes
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29915 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-11-16 11:15:53 +00:00
reimar
9a2be82856 Use calloc instead of initializing each struct member individually to 0.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29914 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-11-16 10:44:00 +00:00
reimar
4eac890e07 Try to detect broken files with unaligned chunks.
This patch hopefully makes them playable as long as they have and index without
breaking any other files.
Fixes http://samples.mplayerhq.hu/avi/invalid_unaligned.avi with native demuxer.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29913 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-11-16 10:41:06 +00:00
Uoti Urpala
287b62163e Merge svn changes up to r29912 2009-11-16 07:01:46 +02:00
Uoti Urpala
507f4fe6c7 Merge branch 'vdpau' 2009-11-16 04:18:13 +02:00
Uoti Urpala
b8861ce8e2 Support VDPAU MPEG4 hardware decoding
Original patch by NVIDIA.
2009-11-16 02:46:33 +02:00
Uoti Urpala
19b4d70e01 vo_vdpau: Remove custom help message
Remove the help text explaining -vo vdpau suboptions that was printed
in case of parsing errors. It did perhaps have some value, but there
are also reasons to remove it: it was printed in an ugly manner in the
middle of output, most other MPlayer options do not have such internal
help texts either, and it was detailed enough that it required
maintaining documentation about the options in two separate places
(the man page and the help message).
2009-11-16 00:50:01 +02:00
Uoti Urpala
14bb3416c7 vo_vdpau: Add support for high-quality scaling feature
Part of the code is currently under #ifdef to allow compilation with
older VDPAU library versions; that can be removed later.

Partially based on a patch by Carl Eugen Hoyos.
2009-11-15 18:39:48 +02:00
Uoti Urpala
82ee2e217f vo_vdpau: add support for VFCAP_FLIP
Patch by Carl Eugen Hoyos.
2009-11-15 17:05:29 +02:00
Uoti Urpala
7038c57a0c vo_vdpau: Free buffers allocated by FFmpeg on uninit 2009-11-15 17:05:29 +02:00
Uoti Urpala
98ee8dd159 Add yuv_colorspace property, implemented in vo_vdpau and vo_xv
Add a property to select YUV colorspace. Currently implemented only in
vo_vdpau and vo_xv. Allows switching between BT.601, BT.709 and
SMPTE-240M (vdpau only).

The xv support uses the "XV_ITURBT_709" attribute. At least my NVIDIA
card supports that; I don't know whether other xv implementations do.

Bind the colorspace switch to the 'c' key by default. 'c' is currently
used by vo_sdl for some fullscreen mode change thing, but at the moment
that does not conflict and if it will in the future then vo_sdl can
change.

VDPAU part based on a patch from Lauri Mylläri <lauri.myllari@gmail.com>
2009-11-15 17:03:41 +02: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
b87ce8bc96 vo_vdpau: Modify frame buffering code
Clean up code related to frame buffering and generate pts information
also for the next frame in the output queue. The timing information
will be used in a following framedrop patch.

This commit adds one frame of buffering delay in vo_vdpau and
increases the number of buffered vdpau video surfaces from 3 to 4. The
delay increase makes it more important to fix remaining code in
MPlayer that doesn't deal well with filter/VO delay; OTOH it should
help any decoding/filtering parallelism in the underlying VDPAU
implementation as now filtering a frame for display can happen while
the next one is being decoded.
2009-11-15 12:45:47 +02:00
cehoyos
b411278fbb Show OSD message when enabling/disabling de-interlacing.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29912 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-11-14 12:46:14 +00:00
ptt
c6bb4950bd cosmetics and grammar fixes
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29911 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-11-13 15:26:16 +00:00
reimar
2acbece5fb Add -tsprog support for lavf to mencoder, similar to what SVN r29846 did for mplayer.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29910 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-11-13 14:36:38 +00:00
jrash
1de7fb056b sync with en/mplayer.1 r29905
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29909 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-11-13 14:12:25 +00:00
reimar
fd35beaf0a Check that mpctx->audio_out is not NULL when trying to uninit it.
Make audio uninit consistent with e.g. the demuxer uninit code and
also avoids a possible crash.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29908 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-11-13 13:21:59 +00:00
ptt
327414a214 synced with r29905
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29907 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-11-13 07:54:30 +00:00
ptt
cbda7a7bf4 synced with r29885
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29906 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-11-12 17:04:41 +00:00
ptt
4147bee3e9 cosmetic fixes as pointed out by diego
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29905 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-11-12 10:39:52 +00:00
ptt
ab4bdb64e1 Added -name, -title and -use-filename-title options and implementation in X11 vos
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29904 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-11-12 09:21:53 +00:00
cehoyos
153cac185c Do not dynamically load libvdpau.so.1, but link at compile time.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29903 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-11-11 22:26:38 +00:00
tack
629eee5817 Replace dead link explaining why not to use HTML on the mailing lists.
New link is http://efn.no/html-bad.html


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29902 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-11-11 15:15:46 +00:00
reimar
30ffc2dea4 Fix declarations in mp_taglists.h and include it in mp_taglists.c to
make such mismatches impossible in the future.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29901 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-11-11 11:52:36 +00:00
reimar
c62952a9ac Add a "tips and tricks" section to the slave mode documentation.
Hopefully will help in using some of its rather obscure features.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29900 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-11-11 11:38:41 +00:00
reimar
a63f28b99a Whitespace cosmetics: fix pause_loop indentation/remove inconsistently used tabs.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29899 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-11-11 11:35:28 +00:00
reimar
376aa9416f Do not call resume on unpausing if we have already reached eof while
being paused (e.g. because of a "pausing_keep_force pt_step 1").


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29898 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-11-11 11:31:36 +00:00
reimar
254b4855b1 Remember which subtitle was auto-selected for dvdnav due to -slang
and if it is unchanged re-apply -slang on stream reset.
This makes -slang work when used with menu navigation or in general
when the subtitle is not available for parts of the playback or the
subtitle stream ID changes during playback.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29897 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-11-11 11:22:12 +00:00
reimar
d1e5bdf365 Factor out code that decides which subtitle to play.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29896 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-11-11 11:19:50 +00:00
reimar
05721f9672 Avoid modifying dvdsub_id in command.c where possible.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29895 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-11-11 11:09:36 +00:00
reimar
7694e9074d Move headers related to setting dvd speed to dvd_common.
This makes -dvd-speed work again.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29894 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-11-11 09:28:21 +00:00
reimar
2bf260398b Set the EOF flag when dvdnav reached the end of the requested title.
Otherwise it would just hang, either at the menu or trying to play the
last played frame as a still frame.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29893 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-11-11 09:09:08 +00:00
reimar
92ac5a8c20 Support the range syntax (like dvd://2-5) also for dvdnav.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29892 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-11-11 09:03:39 +00:00
cehoyos
977c12c628 10l: Fix compilation without VDPAU.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29891 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-11-11 00:30:54 +00:00
reimar
0d40667c8c Move dvd_speed and dvd_set_speed to dvd_common and implement -dvd-speed
support for dvdnav.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29890 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-11-10 23:20:05 +00:00
reimar
36ec821836 Move arrays used by both dvd and dvdnav to dvd_common.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29889 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-11-10 23:15:48 +00:00
reimar
80217b4240 Remove unused extern declarations.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29888 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-11-10 23:12:01 +00:00
reimar
8f164e07a0 Share dvd_device extern declaration between dvd and dvdnav.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29887 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-11-10 23:10:57 +00:00
reimar
6e8f1e844f Remove an unused variable.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29886 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-11-10 23:03:52 +00:00
cehoyos
2b93a48ac8 Support VDPAU hardware accelerated decoding of MPEG-4 ASP on capable
hardware.

Original patch by NVIDIA corporation.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29885 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-11-10 19:11:13 +00:00