assume that FFmpeg is already patched with SVT-VP9 patch
As a side effect, the SVT-VP9 patch doesn't need to be patched (these
patches conflicted because VP9 applied after HEVC, which is now not
the case).
The patch no longer compiles with upstream FFmpeg (moreover the history
of 5000 commits is now too shallow.
Use a updated custom version now - the SVT-HEVC is archived, anyways so
the upstream won't be updated.
Since the pulsation issue, it was not much usable, anyways and this
clean-ups the code a bit.
Also the behavior will be now more deterministic - it behaved differently
with patched FFmpeg (most likely GH Linux builds), othewrise differntly.
+ enable the header-inserter if user expliclty requesetd intra-refresh
refers to GH-114
Avoid pulsation with inra-refresh by repeating the missing SPS/PPS with
header inseter.
Unfortunately this is doesn't work well with HEVC because it seems that
the NVIDIA encoder keeps the reference almost forever in specific cases,
eg. `testcard:patt=text`. However, it _may_ work under some circumstances.
This reverts commit e457ab87f7 but the
patch is updated to match current FFmpeg.
The FFmpeg commit that seemed to do the same (7eeef72c6) is not working
correctly because it assigns idrPeriod cc->gopLength, which was set to
NVENC_INFINITE_GOPLENGTH above in case of intra-refresh.
refer to GH-330
Since the FFmpeg commit 7eeef72c6, the IDR period is set to gopLength
unconditinally even for intra-refresh mode, which is what the removed
patch did.
+ do not check if FFmpeg is patched (the macro is )
see commits e3c926c8 and 1f735a93
We patch FFmpeg in Linux CI builds so if it is patched, intra-refresh
sitll can be enabled, even though not by default.