dxva2: fix copying surfaces with different stride
audio: add command/function to reload audio output

Anticipated use: simple solution for dealing with audio APIs which
request configuration changes via events.
command: add audio-device property

Meant for changing the --audio-device at runtime.
dxva2: use gpu_memcpy with unmatched strides

Like memcpy_pic, this checks if the strides match first.
x11: fix display FPS detection for interlaced modes

In interlaced modes, we output fields, not complete frames, so the
framerate doubles.

The method to calculate this was borrowed from xrandr code.

Hopefully fixes #1224.
command: try 'icy-title' metadata for media-title as well
libmpv: cocoa: add basic menu
libmpv: cocoa: fix view leak on uninit

The code was lacking a -removeFromSuperview call which resulted in a leak on
our part if the parent view in the client was not released.
cocoa: fix small leak
player: don't spam video-reconfig event

Without --force-window, this is called on every iteration or so, and
calling uninit_video_out() sends the video-reconfig event. Avoid sending
redundant events.

Fixes #1225 (using an alternative patch).
command: play the correct entry with loadfile ... append-play

The playlist may be non-empty even if the player is idle. Instead of playing the
first entry, play the entry that was just added.
manpage: clarify loadfile append-play mode

Documents the behavior introduced with the previous commit.
coreaudio: only list output devices