diff --git a/libavcodec/allcodecs.c b/libavcodec/allcodecs.c
index ef8c3a6d7d..45d5998943 100644
--- a/libavcodec/allcodecs.c
+++ b/libavcodec/allcodecs.c
@@ -61,10 +61,6 @@ extern const FFCodec ff_avrn_decoder;
 extern const FFCodec ff_avs_decoder;
 extern const FFCodec ff_avui_encoder;
 extern const FFCodec ff_avui_decoder;
-#if FF_API_AYUV_CODECID
-extern const FFCodec ff_ayuv_encoder;
-extern const FFCodec ff_ayuv_decoder;
-#endif
 extern const FFCodec ff_bethsoftvid_decoder;
 extern const FFCodec ff_bfi_decoder;
 extern const FFCodec ff_bink_decoder;
diff --git a/libavcodec/codec_desc.c b/libavcodec/codec_desc.c
index 033344304c..3bab86db62 100644
--- a/libavcodec/codec_desc.c
+++ b/libavcodec/codec_desc.c
@@ -1470,15 +1470,6 @@ static const AVCodecDescriptor codec_descriptors[] = {
         .long_name = NULL_IF_CONFIG_SMALL("Avid Meridien Uncompressed"),
         .props     = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
     },
-#if FF_API_AYUV_CODECID
-    {
-        .id        = AV_CODEC_ID_AYUV,
-        .type      = AVMEDIA_TYPE_VIDEO,
-        .name      = "ayuv",
-        .long_name = NULL_IF_CONFIG_SMALL("Uncompressed packed MS 4:4:4:4"),
-        .props     = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
-    },
-#endif
     {
         .id        = AV_CODEC_ID_TARGA_Y216,
         .type      = AVMEDIA_TYPE_VIDEO,
diff --git a/libavcodec/codec_id.h b/libavcodec/codec_id.h
index d96e49430e..c8dc21da74 100644
--- a/libavcodec/codec_id.h
+++ b/libavcodec/codec_id.h
@@ -253,9 +253,6 @@ enum AVCodecID {
     AV_CODEC_ID_AVRP,
     AV_CODEC_ID_012V,
     AV_CODEC_ID_AVUI,
-#if FF_API_AYUV_CODECID
-    AV_CODEC_ID_AYUV,
-#endif
     AV_CODEC_ID_TARGA_Y216,
     AV_CODEC_ID_V308,
     AV_CODEC_ID_V408,
diff --git a/libavcodec/v408dec.c b/libavcodec/v408dec.c
index 191c050fb2..4d8bccd650 100644
--- a/libavcodec/v408dec.c
+++ b/libavcodec/v408dec.c
@@ -29,10 +29,6 @@ static av_cold int v408_decode_init(AVCodecContext *avctx)
 {
     avctx->pix_fmt = AV_PIX_FMT_YUVA444P;
 
-#if FF_API_AYUV_CODECID
-    if (avctx->codec_id==AV_CODEC_ID_AYUV)
-        av_log(avctx, AV_LOG_WARNING, "This decoder is deprecated and will be removed.\n");
-#endif
     return 0;
 }
 
@@ -61,20 +57,10 @@ static int v408_decode_frame(AVCodecContext *avctx, AVFrame *pic,
 
     for (i = 0; i < avctx->height; i++) {
         for (j = 0; j < avctx->width; j++) {
-#if FF_API_AYUV_CODECID
-            if (avctx->codec_id==AV_CODEC_ID_AYUV) {
-                v[j] = *src++;
-                u[j] = *src++;
-                y[j] = *src++;
-                a[j] = *src++;
-            } else
-#endif
-            {
-                u[j] = *src++;
-                y[j] = *src++;
-                v[j] = *src++;
-                a[j] = *src++;
-            }
+            u[j] = *src++;
+            y[j] = *src++;
+            v[j] = *src++;
+            a[j] = *src++;
         }
 
         y += pic->linesize[0];
@@ -88,19 +74,6 @@ static int v408_decode_frame(AVCodecContext *avctx, AVFrame *pic,
     return avpkt->size;
 }
 
-#if FF_API_AYUV_CODECID
-#if CONFIG_AYUV_DECODER
-const FFCodec ff_ayuv_decoder = {
-    .p.name       = "ayuv",
-    CODEC_LONG_NAME("Uncompressed packed MS 4:4:4:4"),
-    .p.type       = AVMEDIA_TYPE_VIDEO,
-    .p.id         = AV_CODEC_ID_AYUV,
-    .init         = v408_decode_init,
-    FF_CODEC_DECODE_CB(v408_decode_frame),
-    .p.capabilities = AV_CODEC_CAP_DR1,
-};
-#endif
-#endif
 #if CONFIG_V408_DECODER
 const FFCodec ff_v408_decoder = {
     .p.name       = "v408",
diff --git a/libavcodec/v408enc.c b/libavcodec/v408enc.c
index 1faac7cc36..c1bf0f6158 100644
--- a/libavcodec/v408enc.c
+++ b/libavcodec/v408enc.c
@@ -33,11 +33,6 @@ static av_cold int v408_encode_init(AVCodecContext *avctx)
     avctx->bits_per_coded_sample = 32;
     avctx->bit_rate = ff_guess_coded_bitrate(avctx);
 
-#if FF_API_AYUV_CODECID
-    if (avctx->codec_id == AV_CODEC_ID_AYUV)
-        av_log(avctx, AV_LOG_WARNING, "This encoder is deprecated and will be removed.\n");
-#endif
-
     return 0;
 }
 
@@ -60,20 +55,10 @@ static int v408_encode_frame(AVCodecContext *avctx, AVPacket *pkt,
 
     for (i = 0; i < avctx->height; i++) {
         for (j = 0; j < avctx->width; j++) {
-#if FF_API_AYUV_CODECID
-           if (avctx->codec_id==AV_CODEC_ID_AYUV) {
-                *dst++ = v[j];
-                *dst++ = u[j];
-                *dst++ = y[j];
-                *dst++ = a[j];
-            } else
-#endif
-            {
-                *dst++ = u[j];
-                *dst++ = y[j];
-                *dst++ = v[j];
-                *dst++ = a[j];
-            }
+            *dst++ = u[j];
+            *dst++ = y[j];
+            *dst++ = v[j];
+            *dst++ = a[j];
         }
         y += pic->linesize[0];
         u += pic->linesize[1];
@@ -87,20 +72,6 @@ static int v408_encode_frame(AVCodecContext *avctx, AVPacket *pkt,
 
 static const enum AVPixelFormat pix_fmt[] = { AV_PIX_FMT_YUVA444P, AV_PIX_FMT_NONE };
 
-#if FF_API_AYUV_CODECID
-#if CONFIG_AYUV_ENCODER
-const FFCodec ff_ayuv_encoder = {
-    .p.name       = "ayuv",
-    CODEC_LONG_NAME("Uncompressed packed MS 4:4:4:4"),
-    .p.type       = AVMEDIA_TYPE_VIDEO,
-    .p.id         = AV_CODEC_ID_AYUV,
-    .p.capabilities = AV_CODEC_CAP_DR1 | AV_CODEC_CAP_ENCODER_REORDERED_OPAQUE,
-    .init         = v408_encode_init,
-    FF_CODEC_ENCODE_CB(v408_encode_frame),
-    .p.pix_fmts   = pix_fmt,
-};
-#endif
-#endif
 #if CONFIG_V408_ENCODER
 const FFCodec ff_v408_encoder = {
     .p.name       = "v408",
diff --git a/libavcodec/version_major.h b/libavcodec/version_major.h
index 03fe1e2a83..199a1a2714 100644
--- a/libavcodec/version_major.h
+++ b/libavcodec/version_major.h
@@ -38,7 +38,6 @@
  */
 
 #define FF_API_INIT_PACKET         (LIBAVCODEC_VERSION_MAJOR < 61)
-#define FF_API_AYUV_CODECID        (LIBAVCODEC_VERSION_MAJOR < 61)
 #define FF_API_VT_OUTPUT_CALLBACK  (LIBAVCODEC_VERSION_MAJOR < 61)
 #define FF_API_AVCODEC_CHROMA_POS  (LIBAVCODEC_VERSION_MAJOR < 61)
 #define FF_API_VT_HWACCEL_CONTEXT  (LIBAVCODEC_VERSION_MAJOR < 61)
