summaryrefslogtreecommitdiffstats
path: root/core
diff options
context:
space:
mode:
authorwm4 <wm4@nowhere>2013-04-25 18:35:32 +0200
committerwm4 <wm4@nowhere>2013-04-25 20:38:53 +0200
commit848542a513b27ae9b2d573b626e06bd96a99ca1d (patch)
treebabb03beda04e77fc9f699bf70f5d36f0a98efe9 /core
parentba5493ff87343ecb2014cc25b50fa5a6686f9020 (diff)
downloadmpv-848542a513b27ae9b2d573b626e06bd96a99ca1d.tar.bz2
mpv-848542a513b27ae9b2d573b626e06bd96a99ca1d.tar.xz
vf_lavfi: recreate filter graph on seek
Resetting the filter graph helps dealing with filters which save state between frames. This is important especially if they modify frame timing or emit additional frames. Unfortunately the libavfilter API doesn't have a way to do this directly, so we have to use a dirty trick: we recreate the whole graph, including format negotiation down and filter string parsing. ffplay does this too. If libavfilter somehow decides to change output format or size from what the first run in config() returned, mpv will explode. The same applies to vf_next_query_format() return values (although this could be mitigated, should it really happen).
Diffstat (limited to 'core')
0 files changed, 0 insertions, 0 deletions