1
0
mirror of https://git.ffmpeg.org/ffmpeg.git synced 2026-10-24 02:09:03 +03:00
Files
ffmpeg/libavcodec
Bogdan Lisman 11b24e9b93 avcodec/snowenc: fix SIGFPE in get_dc() when a block lies outside the plane
get_dc() divides the accumulated, OBMC-weighted DC by aa, the sum of the
squared OBMC weights taken over the in-plane pixels.  When an OBMC block
falls entirely outside the plane - e.g. a tiny chroma plane after mcdeint
splits a frame into fields - no pixel contributes, aa stays 0 and the
ROUNDED_DIV() divides by zero (SIGFPE).  ab is 0 in exactly the same case,
so the result degenerates to 0; return it directly.

Reproducible with the GPL mcdeint filter in slow/extra_slow mode, e.g.

    ffmpeg -f lavfi -i testsrc=s=128x2 -vf mcdeint=mode=slow -f null -

Add a self-contained lavfi-based FATE regression test for the slow mode,
which previously crashed and is therefore not covered by the existing
sample-based fast/medium tests.

Fixes trac ticket #7779.

Signed-off-by: Bogdan Lisman <bogdan@pydevsolutions.com>
(cherry picked from commit a62d996927)
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-06-18 04:03:05 +02:00
..
2025-08-03 13:48:47 +02:00
…
…
2025-08-03 13:48:47 +02:00
2025-08-03 13:48:47 +02:00
2025-08-03 13:48:47 +02:00
…
…
…
…
…
…
2025-08-03 13:48:47 +02:00
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
2025-08-08 18:29:41 +09:00
2025-08-03 13:48:47 +02:00
…
2025-08-03 13:48:47 +02:00
2025-07-29 23:38:16 +02:00
…
…
…
…
…
…
2025-08-03 13:48:47 +02:00
…
…
2025-04-27 15:52:30 +01:00
2025-04-27 15:52:30 +01:00
…
…
2025-08-03 13:48:47 +02:00
2025-08-03 13:48:47 +02:00
…
…
…
…
…
…
…
…
2025-08-03 13:48:47 +02:00
…
…
…
…
…
2025-08-03 13:48:47 +02:00
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
2026-05-03 19:50:03 +02:00
…
…
…
…
…
…
…
…
…
…
…
…
2025-08-03 13:48:47 +02:00
…
…
…
…
…
…
…
…
…
…
2025-05-15 01:51:34 +02:00
2025-08-03 13:48:47 +02:00
…
…
…
…
…
2025-08-03 13:48:47 +02:00
…
…
…
…
2025-08-03 13:48:47 +02:00
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
2025-08-03 13:48:47 +02:00
…
…
…
…
…
…
…
…
…
2026-05-03 19:57:07 +02:00
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
2025-08-03 13:48:47 +02:00
…
2025-08-03 13:48:47 +02:00
2025-08-03 13:48:47 +02:00
…
…
…
…
…
…
…
…
…
…
…
…
…
2025-08-07 19:44:59 +00:00
…
2025-08-03 13:19:25 +00:00
…
…
…
2025-08-03 13:48:47 +02:00
…
…
…
…
…
2025-07-03 20:35:23 +02:00
…
…
…
…
…
…
…
…
…
2025-11-19 02:05:00 +01:00
2025-08-19 17:56:43 +02:00
2025-06-23 17:16:42 +10:00
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
2025-05-13 00:20:23 +02:00
2025-08-03 13:48:47 +02:00
…
…
2025-08-03 13:48:47 +02:00
2025-08-03 13:48:47 +02:00
…
…
…
…
…
2025-08-03 13:48:47 +02:00
…
…
…
…
…
2025-06-06 17:21:37 +02:00
…
…
…
2025-08-03 13:19:25 +00:00
2025-08-03 13:19:25 +00:00
…
…
…
…
…
…
…
…
2025-07-20 01:05:23 +02:00
…
2025-08-03 13:48:47 +02:00
…
…
…
…
…
…
…
…
…
…
…
…
2026-05-03 19:56:51 +02:00
…
…
…
…
…
…
…
…
2025-08-03 13:48:47 +02:00
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
2026-06-14 04:59:13 +02:00
…
…
…
…
…
…
…
2025-08-03 13:48:47 +02:00
…
2025-05-09 22:26:51 +02:00
2025-08-03 13:48:47 +02:00
…
2025-08-06 21:04:56 +00:00
…
…
…
…
…
…
…
…
…
…
2025-08-03 13:48:47 +02:00
…
…
…
…
…
…
…
…
…
…
…
…
2025-08-03 13:48:47 +02:00
2025-08-03 13:48:47 +02:00
2026-05-03 19:57:01 +02:00
…
…
…
2025-08-03 13:48:47 +02:00
…
2025-11-19 02:05:02 +01:00
2025-08-03 13:48:47 +02:00
…
…
…
…
2025-08-08 01:06:11 +09:00
…
…
…
2025-08-03 13:48:47 +02:00
…
…
2025-08-03 13:48:47 +02:00
…
…
…
…
…
…
…
…
…
…
2025-08-08 18:29:40 +09:00
2025-08-08 18:29:40 +09:00
2025-08-03 13:48:47 +02:00
…
…
…
…
…
…
…
…
…
…
…
…
…
…
2025-08-03 13:48:47 +02:00
2025-08-03 13:48:47 +02:00
…
…
…
…
…
…
…
…
…
…
…
…
…
2025-07-03 20:34:51 +02:00
…
…
…
…
2025-08-03 13:48:47 +02:00
…
…
…
…
2025-07-03 20:35:23 +02:00
…
…
…
…
…
…
2026-05-03 19:50:05 +02:00
…
…
…
…
…
…
…
2025-04-02 09:25:46 +02:00
2025-04-02 09:25:46 +02:00
…
…
…
…
2025-08-19 17:56:42 +02:00
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
2025-08-03 13:48:47 +02:00
…
…
…
…
…
…
…
2025-08-03 13:48:47 +02:00
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
2025-08-03 13:48:47 +02:00
…
2025-06-21 22:08:52 +02:00
…
…
…
2025-08-03 13:48:47 +02:00
…
…
…
2026-05-04 01:01:49 +02:00
…
…
…
…
…
…
2025-08-03 13:48:47 +02:00
2026-05-03 19:50:10 +02:00
…
…
…
…
…
…
2025-04-25 23:01:37 +02:00
…
…
2025-08-03 13:48:47 +02:00
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
2025-08-08 18:29:40 +09:00
2025-08-08 18:29:40 +09:00
…
2025-08-03 13:48:47 +02:00
…
…
…
…
…
…
2025-04-25 23:01:38 +02:00
2025-08-04 09:12:17 +00:00
…
…
…
…
2025-07-03 20:35:23 +02:00
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
2026-05-03 19:56:54 +02:00
…
…
…
…
…
…
…