diff options
author | Janne Grunau <janne-ffmpeg@jannau.net> | 2025-01-03 01:54:38 +0100 |
---|---|---|
committer | Ronald S. Bultje <rsbultje@gmail.com> | 2025-01-03 17:53:46 -0500 |
commit | 430c38f698a65d597e863330810b05e083682be6 (patch) | |
tree | e6c03d2b93cacbce6ad9b2ef7cc1be61ea47c499 /doc/APIchanges | |
parent | 2f4ec1683651e597dcdb13d1a4e679f3c1da0b16 (diff) | |
download | ffmpeg-430c38f698a65d597e863330810b05e083682be6.tar.gz |
aarch64: vp9mc: Load only 12 pixels in the 4 pixel wide horizontal filter
This reduces the amount the horizontal filters read beyond the filter
width to a consistent 1 pixel. The data is not used so this is usually
not noticeable. It becomes a problem when the application allocates
frame buffers only for the aligned picture size and the end of it is at
a page boundary. This happens for picture sizes which are a multiple of
the page size like 1280x640. The frame buffer allocation is based on
its most likely done via mmap + MAP_ANONYMOUS so start and end of the
buffer are page aligned and the previous and next page are not
necessarily mapped.
Under these conditions like seen by Firefox a read beyond the end of the
buffer results in a segfault.
After the over-read is reduced to a single pixel it's reasonable to use
VP9's emulated edge motion compensation for this.
Fixes: https://bugzilla.mozilla.org/show_bug.cgi?id=1881185
Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
Diffstat (limited to 'doc/APIchanges')
0 files changed, 0 insertions, 0 deletions