From 34bead485987b416685e73ca918610fff75d618d Mon Sep 17 00:00:00 2001 From: wm4 Date: Wed, 27 Jan 2016 21:07:17 +0100 Subject: vo_opengl: replace tscale-interpolates-only with interpolation-threshold The previous approach was too naive, and can e.g. ruin playback if scheduling switches e.g. between 1 and 2 vsync per frame. --- DOCS/man/vo.rst | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) (limited to 'DOCS/man') diff --git a/DOCS/man/vo.rst b/DOCS/man/vo.rst index 0725cf19e6..58bd91cd55 100644 --- a/DOCS/man/vo.rst +++ b/DOCS/man/vo.rst @@ -549,9 +549,19 @@ Available video output drivers are: manifest themselves as short flashes or fringes of black, mostly around moving edges) in exchange for potentially adding more blur. - ``tscale-interpolates-only=`` - If set, then don't perform interpolation if the playback rate matches - the display refresh rate (default: yes). + ``interpolation-threshold=<0..1,-1>`` + Threshold below which frame ratio interpolation gets disabled (default: + ``0.0001``). This is calculated as ``abs(disphz/vfps - 1) < threshold``, + where ``vfps`` is the speed-adjusted display FPS, and ``disphz`` the + display refresh rate. + + The default is intended to almost always enable interpolation if the + playback rate is even slightly different from the display refresh rate. + But note that if you use e.g. ``--video-sync=display-vdrop``, small + deviations in the rate can disable interpolation and introduce a + discontinuity every other minute. + + Set this to ``-1`` to disable this logic. ``dscale-radius``, ``cscale-radius``, ``tscale-radius``, etc. Set filter parameters for ``dscale``, ``cscale`` and ``tscale``, -- cgit v1.2.3