player: simplify audio uninit on segment switches

The purpose of temporarily setting stop_play was to make the audio
uninit code to explicitly drain audio if needed. This was the only way
to do it before ao_drain() was made a separate function; now we can just
do it explicitly instead.
manpage: adjust --hwdec docs
vf: minor simplification

Remove the extra vf_chain.output field - there's absolutely no need for
it, because there is always a last filter which will buffer the output.

For some reason, vf_chain.last was never set, which we now need to fix
too.
video: move formatting of image parameters to separate function
mp_image: slightly better image params verbose info
af: check audio params for validity

Normally, these should be valid anyway, so this is just being cautious.
af: remove redundant function
demux: update cache state when paused

This was removed in commit 480f82fa. This caused the cache display not
to update while paused, because the update_cache() function is never
called in the thread (now I remember why the extra call was "needed").

The old implementation intentionally run update_cache() only before
waiting on a mutex, with no further checks for the condition variable.
In theory, this is strictly not sane, but since it was just for the
retrieval of the very fuzzy cache status, it was ok. Now we want to call
update_cache() outside of the mutex though - which means that in order
to avoid missed wakeups, a proper condition has to be used.
terminal-unix: Fix initial terminal state.

When mpv is backgrounded initially (via & in the shell), do no longer
change terminal settings on startup. This fixes broken local echo after
launching a backgrounded mpv.
terminal-unix: Add some comments about FD use.
command: export mpv configure arguments as property

It seems strange that a client API user can't get this string, other
than analyzing the mpv log output.
command: fix weird stuff

Happens to fix some aspects of some properties (especially reading
"option-flags/x" as native value).
command: make sub-properties more flexible

This makes it work with all kind of types, instead of just some simple
ones.
command: rename "option-flags" property to "option-info"
command: export some option metadata

This might be interesting for GUIs and such.

It's probably still a little bit insufficient. For example, the filter
and audio/video output lists are not available through this.
command: list filters/VOs/AOs with option-info

Another special-case, but pretty simple after all.
vo_opengl: allow setting different filters for downscaling
demux_mkv: adjust subtitle preroll again (2)

Make the changes started in commit c827ae5f more eloborate, and provide
an option to control the amount of data read before the seek-target. To
achieve this, rewrite the loop that finds the lowest still acceptable
target cluster. It is now searched by time instead of file position. The
behavior (both with and without preroll option) may be different from
before this change, although it shouldn't be worse.

The change demux_mkv_read_cues() fixes a bug: when seeking after playing
normally, the code would erroneously assume that durations are set. This
doesn't happen if the first operation after loading was a seek instead
of playback.