[FFmpeg-devel] libavcodec/blockdsp : add clear_blocks_prores func (SSE, AVX) for prores decoding
Ronald S. Bultje
rsbultje at gmail.com
Wed Oct 11 17:00:38 EEST 2017
Hi Martin,
(as you've probably noticed, I'm generally particularly interested in
optimization patches, not just the SIMD, but also the general algorithmic
thought behind it.)
On Thu, Oct 5, 2017 at 10:58 AM, Martin Vignali <martin.vignali at gmail.com>
wrote:
> In attach patchs to add a dedicated func for clear_block inside
> prores decoding (proresdec2)
>
The idea here is that N (where N=blocks_per_slice) calls is more expensive
than 1 call, which is indeed true. One way we've tried to "fix" this in
some decoders is to not call clear_blocks() at all, instead clearing the
coefficient arrays in the call to idct() - see e.g. h264/hevc, vp8/9, and
probably some more. Given that the prores idct lives in its own
proresdspcontext, we could adjust it here as well. The advantage of having
0 calls should be obvious. :-).
Ronald
More information about the ffmpeg-devel
mailing list