diff options
author | wm4 <wm4@nowhere> | 2013-04-25 18:35:32 +0200 |
---|---|---|
committer | wm4 <wm4@nowhere> | 2013-04-25 20:38:53 +0200 |
commit | 848542a513b27ae9b2d573b626e06bd96a99ca1d (patch) | |
tree | babb03beda04e77fc9f699bf70f5d36f0a98efe9 /stream/network.h | |
parent | ba5493ff87343ecb2014cc25b50fa5a6686f9020 (diff) | |
download | mpv-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 'stream/network.h')
0 files changed, 0 insertions, 0 deletions