[FFmpeg-devel] [PATCH] lavfi/gradfun: fix direct writing in buffer.
nicolas.george at normalesup.org
Sun Dec 2 11:48:03 CET 2012
Le duodi 12 frimaire, an CCXXI, Clément Bœsch a écrit :
> - first, the use of AV_PERM_PRESERVE looks inappropriate, so we can remove it.
> - then it seems assumed that gradfun can do filtering in-place (see the direct
> flag). Though, that direct flag isn't passed to the filtering functions, and
The direct flag is there to check whether the input buffer must be freed.
> the filter doesn't seem to assume/support dst=src, so we need to get a new
> temporary buffer (allocated with ff_get_video_buffer) all the time.
If the filter did not work when direct is set, I believe we would probably
have noticed it. Right now, a quick glance seems to show that it does work.
This kind of construct seems typical of filters ported from MPlayer, where
the permissions and buffer allocation system is different. That explains why
you find the same thing in hqdn3d.
Some benchmark would probably help to know whether this kind of complexity
is useful, compared to requiring PERM_WRITE or always allocating a new
> - the out->video->w=outlink->w, out->video->h=outlink->h look uneeded since
> avfilter_copy_buffer_ref_props handle this (and the filter doesn't change
> the video size).
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Size: 198 bytes
Desc: Digital signature
More information about the ffmpeg-devel