mirror of
https://git.ffmpeg.org/ffmpeg.git
synced 2025-01-08 00:00:49 +00:00
45df7adc1d
Black isn't always just memset(ptr, 0, size). Limited YUV in particular requires relatively non-obvious values, and filling a frame with repeating 0 bytes is disallowed in some contexts. With component sizes larger than 8 or packed YUV, this can become relatively complicated. So having a generic function for this seems helpful. In order to handle the complex cases in a generic way without destroying performance, this code attempts to compute a black pixel, and then uses that value to clear the image data quickly by using a function like memset. Common cases like yuv410p10 or rgba can't be handled with a simple memset, so there is some code to fill memory with 2/4/8 byte patterns. For the remaining cases, a generic slow fallback is used. Signed-off-by: Anton Khirnov <anton@khirnov.net> |
||
---|---|---|
.. | ||
doxy | ||
examples | ||
.gitignore | ||
APIchanges | ||
avconv.texi | ||
avplay.texi | ||
avprobe.texi | ||
avtools-common-opts.texi | ||
avutil.txt | ||
bitstream_filters.texi | ||
build_system.txt | ||
decoders.texi | ||
demuxers.texi | ||
developer.texi | ||
doxy-wrapper.sh | ||
Doxyfile | ||
encoders.texi | ||
eval.texi | ||
faq.texi | ||
fate.texi | ||
filters.texi | ||
general.texi | ||
git-howto.texi | ||
git-howto.txt | ||
indevs.texi | ||
libavfilter.texi | ||
Makefile | ||
metadata.texi | ||
multithreading.txt | ||
muxers.texi | ||
nut.texi | ||
optimization.txt | ||
outdevs.texi | ||
platform.texi | ||
print_options.c | ||
protocols.texi | ||
rate_distortion.txt | ||
RELEASE_NOTES | ||
soc.txt | ||
swscale.txt | ||
t2h.init | ||
tablegen.txt | ||
texi2pod.pl | ||
viterbi.txt |