[FFmpeg-cvslog] lavc: deprecate CrystalHD decoders

Anton Khirnov git at videolan.org
Sat Feb 4 15:01:44 EET 2023


ffmpeg | branch: master | Anton Khirnov <anton at khirnov.net> | Tue Jan 31 13:11:20 2023 +0100| [82da22066c0818b606812d479674929a229386e2] | committer: Anton Khirnov

lavc: deprecate CrystalHD decoders

The hardware is old and not relevant today. The decoders also have many
special quirks and are effectively unmaintained.

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=82da22066c0818b606812d479674929a229386e2
---

 Changelog                  | 1 +
 MAINTAINERS                | 2 --
 configure                  | 4 +++-
 libavcodec/crystalhd.c     | 4 ++++
 libavcodec/version_major.h | 3 +++
 5 files changed, 11 insertions(+), 3 deletions(-)

diff --git a/Changelog b/Changelog
index 7c3bd7f80c..df9cd69da2 100644
--- a/Changelog
+++ b/Changelog
@@ -38,6 +38,7 @@ version <next>:
 - media100 to mjpegb bsf
 - ffmpeg CLI new option: -fix_sub_duration_heartbeat
 - WavArc 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 c726076da1..d67855c729 100755
--- a/configure
+++ b/configure
@@ -7001,7 +7001,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 */



More information about the ffmpeg-cvslog mailing list