diff mbox series

[FFmpeg-devel] lavc: deprecate CrystalHD decoders

Message ID 20230131121756.1212-1-anton@khirnov.net
State New
Headers show
Series [FFmpeg-devel] lavc: deprecate CrystalHD decoders | expand

Checks

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

Commit Message

Anton Khirnov Jan. 31, 2023, 12:17 p.m. UTC
The hardware is old and not relevant today. The decoders also have many
special quirks and are effectively unmaintained.
---
Philip confirmed on IRC that he no longer has the hardware for
maintaining this and does not believe it is relevant today.
---
 Changelog                  | 1 +
 MAINTAINERS                | 2 --
 configure                  | 4 +++-
 libavcodec/crystalhd.c     | 4 ++++
 libavcodec/version_major.h | 3 +++
 5 files changed, 11 insertions(+), 3 deletions(-)

Comments

Jean-Baptiste Kempf Jan. 31, 2023, 4:40 p.m. UTC | #1
On Tue, 31 Jan 2023, at 13:17, Anton Khirnov wrote:
> The hardware is old and not relevant today. The decoders also have many
> special quirks and are effectively unmaintained.

Yes. LGTM.
Philip Langdale Feb. 3, 2023, 2:37 a.m. UTC | #2
On Tue, 31 Jan 2023 13:17:56 +0100
Anton Khirnov <anton@khirnov.net> wrote:

> The hardware is old and not relevant today. The decoders also have
> many special quirks and are effectively unmaintained.
> ---
> Philip confirmed on IRC that he no longer has the hardware for
> maintaining this and does not believe it is relevant today.
> ---
>  Changelog                  | 1 +
>  MAINTAINERS                | 2 --
>  configure                  | 4 +++-
>  libavcodec/crystalhd.c     | 4 ++++
>  libavcodec/version_major.h | 3 +++
>  5 files changed, 11 insertions(+), 3 deletions(-)

Ack. Thanks for doing this.

--phil
diff mbox series

Patch

diff --git a/Changelog b/Changelog
index aa0dad13a1..323effec05 100644
--- a/Changelog
+++ b/Changelog
@@ -35,6 +35,7 @@  version <next>:
 - ffmpeg CLI new options: -enc_stats_pre[_fmt], -enc_stats_post[_fmt]
 - hstack_vaapi, vstack_vaapi and xstack_vaapi filters
 - XMD ADPCM decoder and demuxer
+- CrystalHD decoders deprecated
 
 
 version 5.1:
diff --git a/MAINTAINERS b/MAINTAINERS
index 48e2ec4fd4..f87d43fce5 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -151,7 +151,6 @@  Codecs:
   ccaption_dec.c                        Anshul Maheshwari, Aman Gupta
   cljr                                  Alex Beregszaszi
   cpia.c                                Stephan Hilb
-  crystalhd.c                           Philip Langdale
   cscd.c                                Reimar Doeffinger
   cuviddec.c                            Timo Rothenpieler
   dca*                                  foo86
@@ -265,7 +264,6 @@  Codecs:
   xwd*                                  Paul B Mahol
 
 Hardware acceleration:
-  crystalhd.c                           Philip Langdale
   dxva2*                                Hendrik Leppkes, Laurent Aimar, Steve Lhomme
   d3d11va*                              Steve Lhomme
   mediacodec*                           Matthieu Bouron, Aman Gupta
diff --git a/configure b/configure
index 47790d10f5..a4ce3b5b32 100755
--- a/configure
+++ b/configure
@@ -6999,7 +6999,9 @@  enabled vdpau &&
 enabled vdpau &&
     check_lib vdpau_x11 "vdpau/vdpau.h vdpau/vdpau_x11.h" vdp_device_create_x11 -lvdpau -lX11
 
-enabled crystalhd && check_lib crystalhd "stdint.h libcrystalhd/libcrystalhd_if.h" DtsCrystalHDVersion -lcrystalhd
+enabled crystalhd && check_lib crystalhd "stdint.h libcrystalhd/libcrystalhd_if.h" DtsCrystalHDVersion -lcrystalhd && \
+    warn "CrystalHD support is deprecated and will be removed, please contact the developers if you are interested"   \
+         "in maintaining it."
 
 if enabled vulkan; then
     check_pkg_config_header_only vulkan "vulkan >= 1.2.189" "vulkan/vulkan.h" "defined VK_VERSION_1_2" ||
diff --git a/libavcodec/crystalhd.c b/libavcodec/crystalhd.c
index 8673a491d4..688cdffbcb 100644
--- a/libavcodec/crystalhd.c
+++ b/libavcodec/crystalhd.c
@@ -329,6 +329,10 @@  static av_cold int init(AVCodecContext *avctx)
     av_log(avctx, AV_LOG_VERBOSE, "CrystalHD Init for %s\n",
            avctx->codec->name);
 
+    av_log(avctx, AV_LOG_WARNING, "CrystalHD support is deprecated and will "
+           "be removed. Please contact the developers if you are interested in "
+           "maintaining it.\n");
+
     avctx->pix_fmt = AV_PIX_FMT_YUYV422;
 
     /* Initialize the library */
diff --git a/libavcodec/version_major.h b/libavcodec/version_major.h
index 2c0443c4c8..f38566f62c 100644
--- a/libavcodec/version_major.h
+++ b/libavcodec/version_major.h
@@ -55,4 +55,7 @@ 
 #define FF_API_VT_HWACCEL_CONTEXT  (LIBAVCODEC_VERSION_MAJOR < 60)
 #define FF_API_AVCODEC_CHROMA_POS  (LIBAVCODEC_VERSION_MAJOR < 60)
 
+// reminder to remove CrystalHD decoders on next major bump
+#define FF_CODEC_CRYSTAL_HD        (LIBAVCODEC_VERSION_MAJOR < 61)
+
 #endif /* AVCODEC_VERSION_MAJOR_H */