Files
FFmpeg/libavcodec
Andreas Rheinhardt 34953e195f avcodec/mpeg4videoenc: Fix data race when using AC prediction
The check for whether we can use the fast path to process
AC coefficients used the qscale value belonging to a different
slice; this worked in practice, because the predicted AC values
are zero in this case, so it does not matter whether we use
the fast or the slow path.

Fix this by checking for first_slice_line instead. This fixes all
the races in the encoding part of the vsynth*-mpeg4-thread tests
(and fixes them if no frame threading is in use for the decoding part).

(The left prediction check may use data from a different slice, too,
but said slice is always processed by the same thread, so that no race
can happen. Given that out-of-slice AC values are zero, it does not
matter whether we use the fast path or the slow path either.)

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
2025-06-21 22:08:52 +02:00
..
2025-04-13 22:49:21 +02:00
2025-06-12 21:17:07 +08:00
2025-06-20 21:09:39 +08:00
2025-02-26 17:12:08 +01:00
2024-08-14 18:21:01 +02:00
2025-02-04 00:14:14 +01:00
2025-04-27 15:52:30 +01:00
2025-04-27 15:52:30 +01:00
2025-04-27 15:52:30 +01:00
2025-04-27 15:52:30 +01:00
2025-05-15 01:51:34 +02:00
2025-04-27 15:52:30 +01:00
2025-04-27 15:52:30 +01:00
2025-05-04 16:21:35 -03:00
2025-05-26 05:03:29 +02:00
2025-05-26 05:03:29 +02:00
2025-05-13 00:20:23 +02:00
2024-09-28 18:35:35 +02:00
2024-09-28 18:35:35 +02:00
2025-01-01 20:31:08 +01:00
2025-06-06 17:21:37 +02:00
2025-03-17 08:51:23 +01:00
2024-07-12 22:42:28 +02:00
2024-09-24 15:37:19 +02:00
2025-05-09 22:26:51 +02:00
2025-04-10 03:01:33 +02:00
2025-05-01 22:42:34 -03:00
2024-11-03 10:53:15 +11:00
2024-11-03 10:53:15 +11:00
2024-11-03 10:53:15 +11:00
2024-11-03 10:53:15 +11:00
2025-06-06 22:07:15 +02:00
2025-04-02 09:25:46 +02:00
2025-04-02 09:25:46 +02:00
2025-03-20 07:10:17 +01:00
2025-05-15 03:03:56 +02:00
2024-10-12 11:21:14 -03:00
2024-10-12 11:21:14 -03:00
2024-10-12 11:21:14 -03:00
2024-11-01 12:13:07 +08:00
2024-09-24 15:37:19 +02:00
2025-06-21 22:08:52 +02:00
2025-06-21 22:08:52 +02:00
2025-06-21 22:08:52 +02:00
2025-05-16 01:37:35 +02:00
2025-06-21 22:08:52 +02:00
2025-06-21 22:08:52 +02:00
2025-02-09 20:27:49 -06:00
2024-10-31 17:49:48 +11:00
2025-04-25 23:01:37 +02:00
2024-10-31 17:49:48 +11:00
2025-04-25 23:01:38 +02:00
2024-09-24 15:37:20 +02:00