1
0
mirror of https://github.com/mpv-player/mpv synced 2024-12-25 08:12:17 +00:00
mpv/video/filter
wm4 e1f1b0c275 vf_vapoursynth: handle destruction more gracefully
We were relying on vsscript_freeScript() to take care of proper
termination. But it doesn't do that: it doesn't wait for the filters to
finish and exit at all. Instead, it just destroys all objects, which
causes the worker threads to crash sometimes.

Also, we're supposed to wait for the frame callback to finish before
freeing the associated node.

Handle this by explicitly waiting as far as we can. Probably fixes
crashes on seeking, although VapourSynth itself might also need some
work to make this case completely stable.
2014-04-14 20:51:27 +02:00
..
pullup.c Kill all tabs 2014-04-13 18:03:01 +02:00
pullup.h Kill all tabs 2014-04-13 18:03:01 +02:00
vf_crop.c Kill all tabs 2014-04-13 18:03:01 +02:00
vf_delogo.c vf_delogo: remove internal implementation 2014-03-16 13:19:29 +01:00
vf_divtc.c Kill all tabs 2014-04-13 18:03:01 +02:00
vf_dlopen.c video/filter: mp_msg conversions 2013-12-21 20:50:10 +01:00
vf_dlopen.h
vf_dsize.c Split mpvcore/ into common/, misc/, bstr/ 2013-12-17 02:39:45 +01:00
vf_eq.c vf_eq: don't malloc priv struct 2014-03-30 10:19:02 +02:00
vf_expand.c Kill all tabs 2014-04-13 18:03:01 +02:00
vf_flip.c Split mpvcore/ into common/, misc/, bstr/ 2013-12-17 02:39:45 +01:00
vf_format.c Kill all tabs 2014-04-13 18:03:01 +02:00
vf_gradfun.c vf_gradfun: remove internal implementation 2014-03-16 13:19:29 +01:00
vf_hqdn3d.c vf_hqdn3d: remove internal implementation 2014-03-16 13:19:29 +01:00
vf_ilpack.c Split mpvcore/ into common/, misc/, bstr/ 2013-12-17 02:39:45 +01:00
vf_lavfi.c vf_lavfi: copy AVFrame metadata into vf_lavfi priv 2014-04-13 18:03:01 +02:00
vf_lavfi.h build: simplify libavfilter configure checks 2014-03-16 13:19:29 +01:00
vf_mirror.c Split mpvcore/ into common/, misc/, bstr/ 2013-12-17 02:39:45 +01:00
vf_noformat.c Kill all tabs 2014-04-13 18:03:01 +02:00
vf_noise.c Kill all tabs 2014-04-13 18:03:01 +02:00
vf_phase.c Kill all tabs 2014-04-13 18:03:01 +02:00
vf_pp.c Kill all tabs 2014-04-13 18:03:01 +02:00
vf_pullup.c Kill all tabs 2014-04-13 18:03:01 +02:00
vf_rotate.c Kill all tabs 2014-04-13 18:03:01 +02:00
vf_scale.c sws_utils: mp_msg conversions 2013-12-21 20:50:10 +01:00
vf_screenshot.c video/filter: make vf->control non-recursive 2013-12-07 19:33:38 +01:00
vf_softpulldown.c Kill all tabs 2014-04-13 18:03:01 +02:00
vf_stereo3d.c video/filter: mp_msg conversions 2013-12-21 20:50:10 +01:00
vf_sub.c Kill all tabs 2014-04-13 18:03:01 +02:00
vf_swapuv.c Split mpvcore/ into common/, misc/, bstr/ 2013-12-17 02:39:45 +01:00
vf_unsharp.c vf_unsharp: remove internal implementation 2014-03-16 13:19:29 +01:00
vf_vapoursynth.c vf_vapoursynth: handle destruction more gracefully 2014-04-14 20:51:27 +02:00
vf_vavpp.c vaapi: make struct va_surface private 2014-03-17 18:22:35 +01:00
vf_yadif.c vf_yadif: remove internal implementation 2014-03-16 13:19:29 +01:00
vf.c vf: auto-label video filters if no label is specified 2014-04-13 18:03:01 +02:00
vf.h vf_lavfi: copy AVFrame metadata into vf_lavfi priv 2014-04-13 18:03:01 +02:00