FFmpeg/libavcodec
Vignesh Venkatasubramanian 7bcc1b4eb8 libsvtav1: Add workaround for gop_size == 1
In some versions of libsvtav1, setting intra_period_length to 0
does not produce the intended result (i.e.) all frames produced
are not keyframes.

Instead handle the gop_size == 1 as a special case by setting
the pic_type to EB_AV1_KEY_PICTURE when encoding each frame so
that all the output frames are keyframes.

SVT-AV1 Bug: https://gitlab.com/AOMediaCodec/SVT-AV1/-/issues/2076

Example command: ffmpeg -f lavfi -i testsrc=duration=1:size=64x64:rate=30 -c:v libsvtav1 -g 1 -y test.webm

Before: Only first frame is keyframe, rest are intraonly.
After: All frames are keyframes.

Signed-off-by: Vignesh Venkatasubramanian <vigneshv@google.com>
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2023-07-13 17:25:02 -04:00
..
2023-06-20 14:37:52 +02:00
2023-05-15 10:24:54 +02:00
2023-06-20 01:11:31 +02:00
2023-06-20 01:11:31 +02:00
2023-05-15 10:24:54 +02:00
2023-07-07 12:12:52 +02:00
2023-05-21 10:50:59 +02:00
2023-05-15 10:24:54 +02:00
2023-05-29 00:41:58 +02:00
2023-05-29 00:41:58 +02:00
2023-05-29 00:42:00 +02:00
2023-07-12 15:35:37 +02:00
2023-05-15 10:24:54 +02:00
2023-06-20 14:37:52 +02:00
2023-06-07 09:00:18 +02:00
2023-06-18 14:29:12 +02:00
2023-06-12 23:43:05 +02:00
2023-05-29 00:41:57 +02:00
2023-05-29 00:41:57 +02:00
2023-05-29 00:42:00 +02:00
2023-06-09 17:05:26 +02:00