MPV

mpv:release/0.33

Last commit made on 2021-04-05
Get this branch:
git clone -b release/0.33 https://git.launchpad.net/mpv

Branch merges

Branch information

Name:
release/0.33
Repository:
lp:mpv

Recent commits

b5d3e43... by Sfan5

Release 0.33.1

cb3fa04... by "Avi Halachmi (:avih)" <email address hidden>

demux_mf: improve format string processing

Before this commit, the user could specify a printf format string
which wasn't verified, and could result in:
- Undefined behavior due to missing or non-matching arguments.
- Buffer overflow due to untested result length.

The offending code was added at commit 103a9609 (2002, mplayer svn):
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@4566 b3059339-0415-0410-9bf9-f77b7e298cf2

It moved around but was not modified meaningfully until now.

Now we reject all conversion specifiers at the format except %%
and a simple subset of the valid specifiers. Also, we now use
snprintf to avoid buffer overflow.

The format string is provided by the user as part of mf:// URI.

Report and initial patch by Stefan Schiller.
Patch reviewed by @jeeb, @sfan5, Stefan Schiller.

0728b51... by Sfan5

Release 0.33.0

6bb7304... by Sfan5

file2string: remove question mark from safe chars

Trigraphs such as "??=" (which are enabled by default with -std=c11)
can mess up strings, so avoid them entirely by escaping question marks.

This also drops Python 2 compatibility from file2string, making the
change to the waf rule necessary. The input file is now opened in
binary mode which is also more correct versus the old text mode
which just happened to work even on binary files.

4dcaf70... by Ridley Combs

Revert "options: disable vsfilter blur compat by default"

This reverts commit 3d17e19c2c5ca80f916411e7e61126cac8443baa.

The effect of turning off this setting is that mpv doesn't tell libass what
the video stream's resolution is. This happens to result in some files having
their transforms scaled in ways that give higher performance (as described
in #7435) because libass happened to guess a video resolution that resulted
in transforms yielding smaller bitmaps, but it's just as easy for the opposite
to happen depending on the resolutions and effects involved.

The option's name is also somewhat misleading: setting the storage size affects
blur, but it also affects stroke (which is far more important for the vast
majority of scripts) and 3D transforms (which look very screwy when done wrong).

2409300... by Uoti Urpala <email address hidden>

build: always run waf with python3

Upstream waf still ships with the default interpreter being "python",
though the script works with both Python 2 and Python 3 (they're not
changing the default choice during 2.0.x releases for compatibility
reasons apparently). Add code to bootstrap.py to change the
interpreter from "python" to "python3" when downloading the "waf"
file.

Running any mpv code under Python 2 should be considered unsupported
in the future (and any code added need not work under Python 2).

5ae6f04... by der richter <email address hidden>

build: fix macOS arm builds

remove the hardcoded swift target version and move the version
restriction to configure. this was a bad idea anyway and could lead to
mismatched object files between obj-c and swift. fix travis 10.12 legacy
build.

also update the SDK version parser to handle the new macOS 11 scheme.

Fixes #8281

959097c... by Shreesh Adiga <email address hidden>

vo_sixel: draw osd on the output frame

8a278c2... by Shreesh Adiga <email address hidden>

vo_sixel: return -1 instead of SIXELSTATUS on failure

Currently in mpv functions sixel failures return the
value status which is of type SIXELSTATUS. So changing
it to -1 which is explicit and compatible with mpv.
Also log the errors using MP_ERR/MP_LOG with the
error string returned by libsixel to have more info.

b48e0b1... by Shreesh Adiga <email address hidden>

vo_sixel: set --vo-sixel-fixedpalette=yes by default

fixedpalette seems to be slightly faster than dynamic
palette, and also in mlterm it avoids corruption of
too bright values overflowing to black. Hence setting
it to be default choice instead of dynamic palette.