Message ID | 20240229124706.524355-1-jdek@itanimul.li |
---|---|
State | New |
Headers | show |
Series | [FFmpeg-devel] avcodec: deprecate sonic | expand |
Context | Check | Description |
---|---|---|
yinshiyou/make_loongarch64 | success | Make finished |
yinshiyou/make_fate_loongarch64 | success | Make fate finished |
andriy/make_x86 | success | Make finished |
andriy/make_fate_x86 | success | Make fate finished |
On Thu, Feb 29, 2024 at 01:47:06PM +0100, J. Dekker wrote: > This is an experimental and research codec of which ffmpeg is the only > encoder and decoder, development has stalled since 2013 and these files > don't exist in the wild. > > Deprecate the encoders to be removed next major bump, decoders to be > removed one bump afterwards. We also disable the the encoders by default > in configure, the decoders should be disabled by default next bump. > > Signed-off-by: J. Dekker <jdek@itanimul.li> > --- > > Since this codec was added in 2004, there has only been one major > non-maintenance, non-bugfix commit in 2013 (6026a5ad4f). That's 1 out of 107 > total commits touching this file. > > This isn't a matter of the codec being unpopular like a niche game codec or > some other codec with media found in the wild, it's an experiment which didn't > continue and we continue to pay the maintenance cost. > > Deprecating the codec instead of immediate removal gives a grace period for > anyone interested to pick up the format and make it the most advanced audio > codec in FFmpeg if they so wish. It encourages an action to be taken whether > that be improving the codec, or leaving it to be removed later. > > configure | 3 +++ > libavcodec/version_major.h | 4 ++++ > 2 files changed, 7 insertions(+) > > diff --git a/configure b/configure > index bb5e630bad..f11c035796 100755 > --- a/configure > +++ b/configure > @@ -4234,6 +4234,9 @@ do_random(){ > $action $(rand_list "$@" | awk "BEGIN { srand($random_seed) } \$1 == \"prob\" { prob = \$2; next } rand() < prob { print }") > } > > +# deprecated components (disabled by default) > +disable sonic_encoder sonic_ls_encoder > + > for opt do > optval="${opt#*=}" > case "$opt" in > diff --git a/libavcodec/version_major.h b/libavcodec/version_major.h > index 161442df95..97e4c47d45 100644 > --- a/libavcodec/version_major.h > +++ b/libavcodec/version_major.h > @@ -57,5 +57,9 @@ > > // reminder to remove CrystalHD decoders on next major bump > #define FF_CODEC_CRYSTAL_HD (LIBAVCODEC_VERSION_MAJOR < 61) > +// reminder to remove Sonic Lossy/Lossless encoders on next major bump > +#define FF_CODEC_SONIC_ENC (LIBAVCODEC_VERSION_MAJOR < 62) > +// reminder to remove Sonic decoder on next-next major bump > +#define FF_CODEC_SONIC_DEC (LIBAVCODEC_VERSION_MAJOR < 63) id like to ask for a later deadline (or no deadline) because if we get accepted by STF, i will have many things to do this year and developing a new codec disimilar to existing codecs in FFmpeg will not be possible in 2024 in parallel to STF thx [...]
diff --git a/configure b/configure index bb5e630bad..f11c035796 100755 --- a/configure +++ b/configure @@ -4234,6 +4234,9 @@ do_random(){ $action $(rand_list "$@" | awk "BEGIN { srand($random_seed) } \$1 == \"prob\" { prob = \$2; next } rand() < prob { print }") } +# deprecated components (disabled by default) +disable sonic_encoder sonic_ls_encoder + for opt do optval="${opt#*=}" case "$opt" in diff --git a/libavcodec/version_major.h b/libavcodec/version_major.h index 161442df95..97e4c47d45 100644 --- a/libavcodec/version_major.h +++ b/libavcodec/version_major.h @@ -57,5 +57,9 @@ // reminder to remove CrystalHD decoders on next major bump #define FF_CODEC_CRYSTAL_HD (LIBAVCODEC_VERSION_MAJOR < 61) +// reminder to remove Sonic Lossy/Lossless encoders on next major bump +#define FF_CODEC_SONIC_ENC (LIBAVCODEC_VERSION_MAJOR < 62) +// reminder to remove Sonic decoder on next-next major bump +#define FF_CODEC_SONIC_DEC (LIBAVCODEC_VERSION_MAJOR < 63) #endif /* AVCODEC_VERSION_MAJOR_H */
This is an experimental and research codec of which ffmpeg is the only encoder and decoder, development has stalled since 2013 and these files don't exist in the wild. Deprecate the encoders to be removed next major bump, decoders to be removed one bump afterwards. We also disable the the encoders by default in configure, the decoders should be disabled by default next bump. Signed-off-by: J. Dekker <jdek@itanimul.li> --- Since this codec was added in 2004, there has only been one major non-maintenance, non-bugfix commit in 2013 (6026a5ad4f). That's 1 out of 107 total commits touching this file. This isn't a matter of the codec being unpopular like a niche game codec or some other codec with media found in the wild, it's an experiment which didn't continue and we continue to pay the maintenance cost. Deprecating the codec instead of immediate removal gives a grace period for anyone interested to pick up the format and make it the most advanced audio codec in FFmpeg if they so wish. It encourages an action to be taken whether that be improving the codec, or leaving it to be removed later. configure | 3 +++ libavcodec/version_major.h | 4 ++++ 2 files changed, 7 insertions(+)