1
0
mirror of https://github.com/mpv-player/mpv synced 2025-01-11 17:39:38 +00:00
Commit Graph

34286 Commits

Author SHA1 Message Date
wm4
62dc32250e mplayer: fix multiline terminal OSD
When an OSD message printed to the terminal was multiple lines, the
second line overwrote the status line. If that second line was shorter
than the status line, awkward looking remains of the status line were
left on the terminal.

Fix this by writing an empty status line before printing the OSD
message. This will clear the status line text.

Also, print the status line again after the OSD message is printed -
this makes output consistent with the single-line OSD message case.

Remaining caveat: only the last line of a multiline OSD message is
cleared when the OSD message is removed. But this is probably fine.
2012-10-30 20:10:24 +01:00
wm4
6367ade0b0 demux_lavf, ad_ffmpeg: don't change AVCodecContext.block_align
If block_align was 0, demux_lavf changed it to 1. This breaks at least
decoding of IMA ADPCM in LVF. Pass it through without changing instead.
(nBlockAlign as set in demux_lavf is put back into lavc's block_align
in ad_ffmpeg.)

This reverts 296f360f82. This commit gives no explanation why it does
things the way it does. But since nothing in mpv uses nBlockAlign
anymore except ad_ffmpeg, this is probably safe.
2012-10-30 19:50:24 +01:00
wm4
5f236b3a82 codecs.conf: cleanup: remove stale entry 2012-10-30 19:50:24 +01:00
wm4
219e1ab1e7 demux_lavf: add a hack to work around other hacks
mplayer (and all forks) use a single FourCC field to map codecs. This is
what sh_video->format and sh_audio->format is used for. Basically it's a
key into the codecs.conf table to find out what decoder to use. (There's
only one video codec and one major audio codec left - both libavcodec.
But we still have to deal with mapping coming from non-libavformat
demuxers.)

It seems this causes some video codecs to fail, such as WV1F in AVI [1].
demux_lavf generally throws away the codec_tag from libavformat if the
codec is MPEG-in-AVI. There are probably other cases like this. Add a
hack to enforce passing the correct codec tag when only ffmpeg demuxers
and decoders involved.

Note: the sample [1] needs to be flipped. With --demuxer=avi, this is
done correctly, because unlike demux_lavf, the demuxer uses the FourCC
directly for the sh_video->format tag, and finds the correct codecs.conf
entry (which contains the flip flag). We could just add a "whitelist" of
codec tags which can be passed through to sh_video->format, but I don't
want to do that just for such an obscure format as the sample at hand.

Note 2: when demux_lavf is used, the AVCodecContext could be passed
directly to vd_ffmpeg/ad_ffmpeg. The code to convert to/from the
internal mplayer stream headers is probably still needed, as there are
non-ffmpeg demuxers and audio decoders.

[1] http://samples.mplayerhq.hu/V-codecs/WV1F/AVI/title2.avi
2012-10-30 19:50:24 +01:00
wm4
0c95e139a9 configure: bump required ffmpeg library versions
libavutil: for av_get_packed_sample_fmt()
libavcodec: for avcodec_encode_video2()

It's actually untested whether these are really the minimum required
versions. I didn't want to bump them further yet.
2012-10-30 19:50:24 +01:00
wm4
13e84fbcec input: remove default bindings for sub_step
The sub_step command is not that useful, and accidentally hitting it
means that the subtitle delay gets completely messed up.
2012-10-30 19:50:24 +01:00
wm4
caf1398c20 command: make property "deinterlace" unavailable if deinterlacer absent
The "deinterlace" property was stuck at "no" if there wasn't actually
any switchable deinterlacer (like yadif or vdpau) in the video chain.

Also, take care of returning only 0/1 values. It appears yadif and vdpau
return their current deinterlacer mode, which is not always the value 0
or 1.
2012-10-30 19:50:24 +01:00
wm4
63a56048b2 options: remove --hr-mp3-seek
This didn't do anything anymore. Even before the internal audio demuxer
was removed, demux_lavf was used by default for mp3.

Use --hr-seek instead.
2012-10-30 19:50:23 +01:00
wm4
7985d4fd34 options: remove --adapter
This probably didn't do anything. Maybe OpenGL VOs on win32 actually
could make use of it, but even then it probably didn't work.
2012-10-30 19:50:23 +01:00
wm4
0502b69672 cleanup: remove M_OPT_NOCMD
Unused.
2012-10-30 19:50:22 +01:00
wm4
f211733123 manpage: -benchmark was renamed to -untimed 2012-10-30 19:50:22 +01:00
wm4
e719d3610d options: rename -ni to -avi-ni
The -ni option does something with the AVI demuxer only.

Also fix misleading error messages when the packet queue overflows (it
suggests using -ni, which in the typical case of playing NI AVI files
will not work, as demux_lavf is used by default).
2012-10-30 19:50:22 +01:00
wm4
042901940f options, avi: remove -loadidx/-saveidx
This was probably useless even many years ago.
2012-10-30 19:50:21 +01:00
wm4
a04ad728c5 cleanup: remove references to CONFIG_TV_DSHOW 2012-10-30 19:50:20 +01:00
wm4
bf4cf84573 cleanup: remove references to CONFIG_XVID4 2012-10-30 19:50:20 +01:00
wm4
b0317a8bee screenshot: printf format "%.*s" takes an int, not ptrdiff_t 2012-10-30 19:50:20 +01:00
reimar
82d47895e4 stream: fix redirection for proxy URLs
Fix redirection for proxy URLs.

Should fix bug #2091.

git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@35207 b3059339-0415-0410-9bf9-f77b7e298cf2

Conflicts:
	stream/url.c
2012-10-30 19:50:20 +01:00
cboesch
5a6dde54af url: simplify
Use mp_asprintf in make_noauth_url and make_http_proxy_url.

git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32971 b3059339-0415-0410-9bf9-f77b7e298cf2
Author: cboesch

Conflicts:
	stream/url.c

Note: the mp_asprintf() function was introduced in r32970, and put
into its own files. We just put that directly into url.c, as we use
talloc_asprintf() in general, and mp_asprintf() is for url.c code only.
(Making url.c use talloc would probably result in a big mess.)

Make proxy and url parameter const in get_noauth_url and get_http_proxy_url.

git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32972 b3059339-0415-0410-9bf9-f77b7e298cf2
Author: cboesch
2012-10-30 19:50:20 +01:00
reimar
a0d7595206 libmpcodecs: fix coverity issues
Fix check for empty log file (n contains a start offset of 15).

git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@35269 b3059339-0415-0410-9bf9-f77b7e298cf2
Author: reimar

Add missing ().

git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@35270 b3059339-0415-0410-9bf9-f77b7e298cf2
Author: reimar

Conflicts:
	libmpcodecs/vf_down3dright.c

Add comment to silence coverity (and it generally doesn't
hurt to make intentional fallthrough cases explicit).

git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@35271 b3059339-0415-0410-9bf9-f77b7e298cf2
Author: reimar

Make uninit function handle vf->priv being NULL.

This happens in the case where memory allocation for it fails.

git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@35272 b3059339-0415-0410-9bf9-f77b7e298cf2
Author: reimar

Remove useless variable.

git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@35273 b3059339-0415-0410-9bf9-f77b7e298cf2
Author: reimar

Conflicts:
	libmpcodecs/vf_softpulldown.c
2012-10-30 19:50:20 +01:00
ib
1215f0871c stream: add STREAM_CTRL_GET_CURRENT_TITLE
Add new stream control command STREAM_CTRL_GET_CURRENT_TITLE for DVDs.

This provides the current title (aka track) number of a DVD.

git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@35263 b3059339-0415-0410-9bf9-f77b7e298cf2
2012-10-30 19:50:20 +01:00
ib
d509a7867b cache: enable STREAM_CTRL_GET_NUM_TITLES
Allow STREAM_CTRL_GET_NUM_TITLES with cache enabled.

This is missing in r34474.

git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@35258 b3059339-0415-0410-9bf9-f77b7e298cf2
2012-10-30 19:50:19 +01:00
reimar
43c7c3c041 vf_screenshot: fix handling of out-of-order slice rendered frames
Fix handling of out-of-order slice rendered frames.

git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@35208 b3059339-0415-0410-9bf9-f77b7e298cf2
2012-10-30 19:50:19 +01:00
reimar
7b5e4a8044 vf_delogo, vf_unsharp: clear mpi->priv for consistency
For consistency clear mpi->priv after it was used.

git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@35203 b3059339-0415-0410-9bf9-f77b7e298cf2
2012-10-30 19:50:19 +01:00
reimar
bed026b9e3 vf_delogo: fix using with numbered mpi
Fix delogo filter with numbered mpi.

Should fix bug #2087.

git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@35202 b3059339-0415-0410-9bf9-f77b7e298cf2
2012-10-30 19:50:19 +01:00
reimar
ef15c9c8ee demux_ts: fix reading teletext language
Fix reading language from teletext descriptor when it is not
the first descriptor in the block.

git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@35198 b3059339-0415-0410-9bf9-f77b7e298cf2
2012-10-30 19:50:19 +01:00
reimar
b7462fe2da demux_ts: cosmetics
Remove "inline" from functions that are definitely not
absolutely critical for performance.

The compiler should be able to make a more intelligent
decision on its own.

git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@35197 b3059339-0415-0410-9bf9-f77b7e298cf2
2012-10-30 19:50:19 +01:00
reimar
2e663a3181 mp_image: update description of MP_IMGFLAG_READABLE
Update description of MP_IMGFLAG_READABLE.

git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@35150 b3059339-0415-0410-9bf9-f77b7e298cf2
2012-10-30 19:50:19 +01:00
reimar
1cb11c53b6 vf: fix usage count for passthrough-only filters
Fix usage count for passthrough-only filters.

git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@35135 b3059339-0415-0410-9bf9-f77b7e298cf2

Conflicts:
	libmpcodecs/vf.c
2012-10-30 19:50:18 +01:00
reimar
1b57e80cb8 vd_ffmpeg: detect broken mpi usage count
Detect broken mpi usage count also in decoder.

git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@35134 b3059339-0415-0410-9bf9-f77b7e298cf2
2012-10-30 19:50:18 +01:00
cehoyos
354b118b28 demuxer: add missing newline in error message
Add missing newline in error message.

git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@35120 b3059339-0415-0410-9bf9-f77b7e298cf2
2012-10-30 19:50:18 +01:00
reimar
5aab9eafb0 cache: fix long hangs
Avoid sleeping 0 ms, this can cause sleep to be not called at all.

This will then cause long hangs e.g. when sleeping on single-CPU/core computers.
Should fix bug #2084.
Patch suggested by Visenri [visenri yahoo es]

git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@35119 b3059339-0415-0410-9bf9-f77b7e298cf2
2012-10-30 19:50:18 +01:00
reimar
9b8967a7de demux_lavf: support SRT subtitles
Support subrip format subtitles.

Patch by Philip Langdale [philipl overt org].

git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@35118 b3059339-0415-0410-9bf9-f77b7e298cf2

Conflicts:
	libmpdemux/demux_lavf.c
2012-10-30 19:50:18 +01:00
reimar
570c907609 demux_lavf: do not special case ID_TEXT subs on program switching
When switching programs select subtitle stream regardless of
whether the format is text, ASS, bitmap or whatever.

There probably was some good reason for the condition but
it got lost in time and special-casing CODEC_ID_TEXT over other
test-based subtitles doesn't seem to make much sense.

git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@35117 b3059339-0415-0410-9bf9-f77b7e298cf2

Conflicts:
	libmpdemux/demux_lavf.c
2012-10-30 19:50:18 +01:00
reimar
ff08d0c34a stream_file: explicitly signal EOF
Explicitly signal EOF when reaching the end of a file/pipe.

Fixes a 4 second delay due to stream_reconnect for e.g.
echo | mplayer -

git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@35112 b3059339-0415-0410-9bf9-f77b7e298cf2
2012-10-30 19:50:18 +01:00
reimar
5104699646 demux_ts: add support for PCM variant found on BluRay
TS demuxer: Add support for PCM variant found on BluRay.

git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@35106 b3059339-0415-0410-9bf9-f77b7e298cf2
2012-10-30 19:50:17 +01:00
reimar
7bc7d9955a vf_stereo3d: add another anaglyph color variant
Make compiler give the ana_coeff array automatically the right size.
Makes adding more colour schemes easier.

git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@35078 b3059339-0415-0410-9bf9-f77b7e298cf2
Author: reimar

Convert comments into designated initializers.

That is a simple way to ensure they always correspond
to what the compiler actually does.

git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@35079 b3059339-0415-0410-9bf9-f77b7e298cf2
Author: reimar

Add another anaglyph color variant.

Patch by Bob [mpbob ezpi net].

git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@35080 b3059339-0415-0410-9bf9-f77b7e298cf2
Author: reimar
2012-10-30 19:50:17 +01:00
reimar
ceca8f6757 vf_expand: remove outdated code causing crashes
Remove outdated code that instead of preventing now causes crashes.

The problem it was trying to catch (next filter not supporting slices)
was fixed already in r10141 (by implementing a fallback version
of vf_next_draw_slice).
This should fix Debian Bug#683907.
Example command-line:
mencoder big_buck_bunny_480p_stereo.avi -o a.mpg -vf crop=346:240:2:24 -oac copy -ovc lavc

git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@35061 b3059339-0415-0410-9bf9-f77b7e298cf2
Author: reimar

Conflicts:
	libmpcodecs/vf_expand.c
2012-10-30 19:50:17 +01:00
Uoti Urpala
7470b02ef4 options: fix URL user/password parsing
Code parsing the optional user/password part for some URL types given
as files to play, such as "ftp://user:password@host/filename", was
broken. Fix. I guess this isn't used much as nobody reported it
earlier.
2012-10-30 19:50:17 +01:00
Uoti Urpala
85dbd9b8f6 stream_ftp: fix double free in one error case 2012-10-30 19:50:17 +01:00
Uoti Urpala
616047c618 af_scaletempo: reset latency info when reconfiguring
af_scaletempo kept outdated values in the af->delay field after
reconfiguration until some audio was fed through the filter. This
could affect audio sync code after a playback speed change.
Additionally, in the special case speed=1 the code did not set the
af->mul field at all. Initialize both fields after reconfiguration.
2012-10-28 17:36:28 +01:00
Uoti Urpala
6903319c66 stream_ffmpeg: handle rtsp:// URLs by default, add lavf://
Make stream_ffmpeg handle rtsp:// URLs by default, without requiring
ffmpeg://rtsp://. Previously (after removal of other rtsp
implementations) rtsp:// fell back to using HTTP, which was unlikely
to work.

Also add lavf:// as an alternative to ffmpeg:// to force the stream
implementation. Since libavformat can come from Libav rather than
FFmpeg, using the ffmpeg name in the prefix is misleading.
2012-10-28 17:35:56 +01:00
wm4
d9839fe862 mp_image: add fields to pass colorspace down the filter chain
Note that this also adds a RGB colorspace for general symmetry. The
frontend (colormatrix property and options) and
mp_get_yuv2rgb_coeffs() don't support this.
2012-10-28 15:31:32 +01:00
wm4
1ba8090df7 mp_image: use uint8_t instead of unsigned char for plane pointers
Purely cosmetic.
2012-10-28 15:31:32 +01:00
wm4
d072e857d7 csputils: better support for integer color values 2012-10-28 15:31:32 +01:00
wm4
65b313a8b0 draw_bmp, csputils: use function instead of macro 2012-10-28 15:31:32 +01:00
wm4
18d4eebedb draw_bmp: cosmetics, refactor
Mostly pedantic bikeshedding issues.

Move some code around, so that the sub_bitmap_to_mp_images() function
can be split into two parts. This is better than having a big function
with many input and outputs, of which only half are used in each code
path.

Also, try to make code simpler by using a mp_rect type.
2012-10-28 15:31:31 +01:00
wm4
06a4526519 mpcommon: add mp_rect type 2012-10-27 21:17:58 +02:00
wm4
f50d0b16e0 draw_bmp: remove CONDITIONAL2 code
This was sometimes slower, sometimes slightly faster. Remove it.
2012-10-24 23:12:26 +02:00
wm4
0e81d62c53 Merge branch 'master' into osd_changes
Conflicts:
	libvo/vo_xv.c
2012-10-24 22:38:45 +02:00
wm4
bcf447d7e8 vo_lavc: never draw OSD
This guarantees that only subtitles are drawn. (Before this change, we
relied on the fact that OSD is only visible on user interaction, or if
explicitly request with --osd-level.)
2012-10-24 21:56:35 +02:00