On Sun, Jul 4, 2021 at 8:16 PM Lynne <d...@lynne.ee> wrote: > > 4 Jul 2021, 03:40 by mypopy...@gmail.com: > > > From: Jun Zhao <barryjz...@tencent.com> > > > > Enabled the svtav1-params, then we can set all the params > > > > The whole purpose of the params field was to give it off to the encoder > and have it do its own parsing, such that we wouldn't have to keep up > adding more and more options. > But svt-av1 cannot parse a generic option field on its own, so no, add > those as separate options rather than a generic text field. > Will split the options as the comments, thx > > > Signed-off-by: Jun Zhao <barryjz...@tencent.com> > > --- > > libavcodec/libsvtav1.c | 337 +++++++++++++++++++++++++++++++++++++++++ > > 1 file changed, 337 insertions(+) > > > > diff --git a/libavcodec/libsvtav1.c b/libavcodec/libsvtav1.c > > index fabc4e6428..9d72a35f6c 100644 > > --- a/libavcodec/libsvtav1.c > > +++ b/libavcodec/libsvtav1.c > > @@ -71,6 +71,8 @@ typedef struct SvtContext { > > > > int tile_columns; > > int tile_rows; > > + > > + AVDictionary *svt_av1_params; > > } SvtContext; > > > > static const struct { > > @@ -146,11 +148,334 @@ static int alloc_buffer(EbSvtAv1EncConfiguration > > *config, SvtContext *svt_enc) > > > > } > > > > +static void set_asm_type(EbSvtAv1EncConfiguration *p, const char *value) > > +{ > > + const struct { > > + const char *name; > > + CPU_FLAGS flags; > > + } param_maps[] = { > > + {"c", 0}, > > + {"0", 0}, > > + > > + {"mmx", (CPU_FLAGS_MMX << 1) - 1}, > > + {"1", (CPU_FLAGS_MMX << 1) - 1}, > > + > > + {"sse", (CPU_FLAGS_SSE << 1) - 1}, > > + {"2", (CPU_FLAGS_SSE << 1) - 1}, > > + > > + {"sse2", (CPU_FLAGS_SSE2 << 1) - 1}, > > + {"3", (CPU_FLAGS_SSE2 << 1) - 1}, > > + > > + {"sse3", (CPU_FLAGS_SSE3 << 1) - 1}, > > + {"4", (CPU_FLAGS_SSE3 << 1) - 1}, > > + > > + {"ssse3", (CPU_FLAGS_SSSE3 << 1) - 1}, > > + {"5", (CPU_FLAGS_SSSE3 << 1) - 1}, > > + > > + {"sse4_1", (CPU_FLAGS_SSE4_1 << 1) - 1}, > > + {"6", (CPU_FLAGS_SSE4_1 << 1) - 1}, > > + > > + {"sse4_2", (CPU_FLAGS_SSE4_2 << 1) - 1}, > > + {"7", (CPU_FLAGS_SSE4_2 << 1) - 1}, > > + > > + {"avx", (CPU_FLAGS_AVX << 1) - 1}, > > + {"8", (CPU_FLAGS_AVX << 1) - 1}, > > + > > + {"avx2", (CPU_FLAGS_AVX2 << 1) - 1}, > > + {"9", (CPU_FLAGS_AVX2 << 1) - 1}, > > + > > + {"avx512", (CPU_FLAGS_AVX512VL << 1) - 1}, > > + {"10", (CPU_FLAGS_AVX512VL << 1) - 1}, > > + > > + {"max", CPU_FLAGS_ALL}, > > + {"11", CPU_FLAGS_ALL}, > > + }; > > > > We already have a generic way to set up cpuflags, you should use that > instead of adding another field.
Good suggestion! _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".