---
 libavcodec/dirac.c          | 10 ++++++++++
 libavcodec/fraps.c          |  4 ++++
 libavcodec/h264.c           | 12 ++++++++++++
 libavcodec/hevc_ps.c        |  2 ++
 libavcodec/imgconvert.c     |  8 +++++++-
 libavcodec/libx264.c        |  8 ++++++++
 libavcodec/ljpegenc.c       | 12 +++++++++++-
 libavcodec/mdec.c           |  4 ++++
 libavcodec/mjpegdec.c       | 16 ++++++++++++++++
 libavcodec/mjpegenc.c       |  7 ++++++-
 libavcodec/mpegvideo_enc.c  |  9 ++++++++-
 libavcodec/raw.c            |  9 +++++++--
 libavcodec/svq3.c           |  6 ++++++
 libavcodec/utils.c          |  2 ++
 libavfilter/vf_boxblur.c    |  2 ++
 libavfilter/vf_crop.c       |  2 ++
 libavfilter/vf_cropdetect.c | 11 +++++++----
 libavfilter/vf_drawbox.c    |  6 ++++--
 libavfilter/vf_fade.c       |  6 ++++--
 libavfilter/vf_framepack.c  |  7 +++++--
 libavfilter/vf_hflip.c      |  2 ++
 libavfilter/vf_hqdn3d.c     |  2 ++
 libavfilter/vf_interlace.c  |  8 ++++++--
 libavfilter/vf_lut.c        |  7 +++++++
 libavfilter/vf_pad.c        |  2 ++
 libavfilter/vf_transpose.c  |  6 ++++--
 libavfilter/vf_unsharp.c    |  8 ++++++--
 libavfilter/vf_yadif.c      |  4 +++-
 libavfilter/vsrc_color.c    |  2 ++
 libavformat/rtpenc_jpeg.c   | 13 ++++++++++++-
 libavutil/pixdesc.c         |  4 ++++
 libavutil/pixfmt.h          |  4 ++++
 libavutil/version.h         |  3 +++
 libswscale/utils.c          |  6 ++++++
 34 files changed, 190 insertions(+), 24 deletions(-)

diff --git a/libavcodec/dirac.c b/libavcodec/dirac.c
index f0fb85d..2a94023 100644
--- a/libavcodec/dirac.c
+++ b/libavcodec/dirac.c
@@ -108,10 +108,16 @@ static const struct {
 };
 
 /* [DIRAC_STD] Table 10.2 Supported chroma sampling formats + luma Offset */
+#if FF_API_FULLSCALE_PIXFMT
 static const enum AVPixelFormat dirac_pix_fmt[2][3] = {
     { AV_PIX_FMT_YUV444P,  AV_PIX_FMT_YUV422P,  AV_PIX_FMT_YUV420P  },
     { AV_PIX_FMT_YUVJ444P, AV_PIX_FMT_YUVJ422P, AV_PIX_FMT_YUVJ420P },
 };
+#else
+static const enum AVPixelFormat dirac_pix_fmt[3] = {
+    { AV_PIX_FMT_YUV444P,  AV_PIX_FMT_YUV422P,  AV_PIX_FMT_YUV420P  },
+};
+#endif /* FF_API_FULLSCALE_PIXFMT */
 
 /* [DIRAC_STD] 10.3 Parse Source Parameters.
  * source_parameters(base_video_format) */
@@ -236,7 +242,11 @@ static int parse_source_parameters(AVCodecContext *avctx, 
GetBitContext *gb,
     if (luma_depth > 8)
         av_log(avctx, AV_LOG_WARNING, "Bitdepth greater than 8");
 
+#if FF_API_FULLSCALE_PIXFMT
     avctx->pix_fmt = dirac_pix_fmt[!luma_offset][source->chroma_format];
+#else
+    avctx->pix_fmt = dirac_pix_fmt[source->chroma_format];
+#endif /* FF_API_FULLSCALE_PIXFMT */
 
     /* [DIRAC_STD] 10.3.9 Colour specification. colour_spec(video_params) */
     if (get_bits1(gb)) { /* [DIRAC_STD] custom_colour_spec_flag */
diff --git a/libavcodec/fraps.c b/libavcodec/fraps.c
index 1005a56..cb61ebe 100644
--- a/libavcodec/fraps.c
+++ b/libavcodec/fraps.c
@@ -170,7 +170,11 @@ static int decode_frame(AVCodecContext *avctx,
     if (header_size == 8)
         buf += 4;
 
+#if FF_API_FULLSCALE_PIXFMT
     pix_fmt = version & 1 ? AV_PIX_FMT_BGR24 : AV_PIX_FMT_YUVJ420P;
+#else
+    pix_fmt = version & 1 ? AV_PIX_FMT_BGR24 : AV_PIX_FMT_YUV420P;
+#endif /* FF_API_FULLSCALE_PIXFMT */
     if (avctx->pix_fmt != pix_fmt && f->data[0]) {
         av_frame_unref(f);
     }
diff --git a/libavcodec/h264.c b/libavcodec/h264.c
index 9a84b11..b89207c 100644
--- a/libavcodec/h264.c
+++ b/libavcodec/h264.c
@@ -166,6 +166,7 @@ static const enum AVPixelFormat 
h264_hwaccel_pixfmt_list_420[] = {
     AV_PIX_FMT_NONE
 };
 
+#if FF_API_FULLSCALE_PIXFMT
 static const enum AVPixelFormat h264_hwaccel_pixfmt_list_jpeg_420[] = {
 #if CONFIG_H264_DXVA2_HWACCEL
     AV_PIX_FMT_DXVA2_VLD,
@@ -182,6 +183,7 @@ static const enum AVPixelFormat 
h264_hwaccel_pixfmt_list_jpeg_420[] = {
     AV_PIX_FMT_YUVJ420P,
     AV_PIX_FMT_NONE
 };
+#endif /* FF_API_FULLSCALE_PIXFMT */
 
 static void h264_er_decode_mb(void *opaque, int ref, int mv_dir, int mv_type,
                               int (*mv)[2][4][2],
@@ -3127,16 +3129,26 @@ static enum AVPixelFormat get_pixel_format(H264Context 
*h)
             if (h->avctx->colorspace == AVCOL_SPC_RGB) {
                 return AV_PIX_FMT_GBRP;
             } else
+#if FF_API_FULLSCALE_PIXFMT
                 return h->avctx->color_range == AVCOL_RANGE_JPEG ? 
AV_PIX_FMT_YUVJ444P
                                                                  : 
AV_PIX_FMT_YUV444P;
+#else
+                return AV_PIX_FMT_YUV444P;
+#endif /* FF_API_FULLSCALE_PIXFMT */
         } else if (CHROMA422(h)) {
+#if FF_API_FULLSCALE_PIXFMT
             return h->avctx->color_range == AVCOL_RANGE_JPEG ? 
AV_PIX_FMT_YUVJ422P
                                                              : 
AV_PIX_FMT_YUV422P;
+#else
+            return AV_PIX_FMT_YUV422P;
+#endif /* FF_API_FULLSCALE_PIXFMT */
         } else {
             return h->avctx->get_format(h->avctx, h->avctx->codec->pix_fmts ?
                                         h->avctx->codec->pix_fmts :
+#if FF_API_FULLSCALE_PIXFMT
                                         h->avctx->color_range == 
AVCOL_RANGE_JPEG ?
                                         h264_hwaccel_pixfmt_list_jpeg_420 :
+#endif /* FF_API_FULLSCALE_PIXFMT */
                                         h264_hwaccel_pixfmt_list_420);
         }
         break;
diff --git a/libavcodec/hevc_ps.c b/libavcodec/hevc_ps.c
index 5e5d4a7..85524e3 100644
--- a/libavcodec/hevc_ps.c
+++ b/libavcodec/hevc_ps.c
@@ -445,8 +445,10 @@ static void decode_vui(HEVCContext *s, HEVCSPS *sps)
         vui->video_format                    = get_bits(gb, 3);
         vui->video_full_range_flag           = get_bits1(gb);
         vui->colour_description_present_flag = get_bits1(gb);
+#if FF_API_FULLSCALE_PIXFMT
         if (vui->video_full_range_flag && sps->pix_fmt == AV_PIX_FMT_YUV420P)
             sps->pix_fmt = AV_PIX_FMT_YUVJ420P;
+#endif /* FF_API_FULLSCALE_PIXFMT */
         if (vui->colour_description_present_flag) {
             vui->colour_primaries        = get_bits(gb, 8);
             vui->transfer_characteristic = get_bits(gb, 8);
diff --git a/libavcodec/imgconvert.c b/libavcodec/imgconvert.c
index 3f5d035..b46910e 100644
--- a/libavcodec/imgconvert.c
+++ b/libavcodec/imgconvert.c
@@ -464,9 +464,11 @@ int avpicture_deinterlace(AVPicture *dst, const AVPicture 
*src,
     int i;
 
     if (pix_fmt != AV_PIX_FMT_YUV420P &&
-        pix_fmt != AV_PIX_FMT_YUVJ420P &&
         pix_fmt != AV_PIX_FMT_YUV422P &&
+#if FF_API_FULLSCALE_PIXFMT
+        pix_fmt != AV_PIX_FMT_YUVJ420P &&
         pix_fmt != AV_PIX_FMT_YUVJ422P &&
+#endif /* FF_API_FULLSCALE_PIXFMT */
         pix_fmt != AV_PIX_FMT_YUV444P &&
         pix_fmt != AV_PIX_FMT_YUV411P &&
         pix_fmt != AV_PIX_FMT_GRAY8)
@@ -477,13 +479,17 @@ int avpicture_deinterlace(AVPicture *dst, const AVPicture 
*src,
     for(i=0;i<3;i++) {
         if (i == 1) {
             switch(pix_fmt) {
+#if FF_API_FULLSCALE_PIXFMT
             case AV_PIX_FMT_YUVJ420P:
+#endif /* FF_API_FULLSCALE_PIXFMT */
             case AV_PIX_FMT_YUV420P:
                 width >>= 1;
                 height >>= 1;
                 break;
             case AV_PIX_FMT_YUV422P:
+#if FF_API_FULLSCALE_PIXFMT
             case AV_PIX_FMT_YUVJ422P:
+#endif /* FF_API_FULLSCALE_PIXFMT */
                 width >>= 1;
                 break;
             case AV_PIX_FMT_YUV411P:
diff --git a/libavcodec/libx264.c b/libavcodec/libx264.c
index 6233f1e..5528466 100644
--- a/libavcodec/libx264.c
+++ b/libavcodec/libx264.c
@@ -254,7 +254,9 @@ static int convert_pix_fmt(enum AVPixelFormat pix_fmt)
 {
     switch (pix_fmt) {
     case AV_PIX_FMT_YUV420P:
+#if FF_API_FULLSCALE_PIXFMT
     case AV_PIX_FMT_YUVJ420P:
+#endif /* FF_API_FULLSCALE_PIXFMT */
     case AV_PIX_FMT_YUV420P9:
     case AV_PIX_FMT_YUV420P10: return X264_CSP_I420;
     case AV_PIX_FMT_YUV422P:
@@ -454,8 +456,12 @@ static av_cold int X264_init(AVCodecContext *avctx)
 
     x4->params.i_slice_count  = avctx->slices;
 
+#if FF_API_FULLSCALE_PIXFMT
     x4->params.vui.b_fullrange = avctx->pix_fmt == AV_PIX_FMT_YUVJ420P ||
                                  avctx->color_range == AVCOL_RANGE_JPEG;
+#else
+    x4->params.vui.b_fullrange = avctx->color_range == AVCOL_RANGE_JPEG;
+#endif /* FF_API_FULLSCALE_PIXFMT */
 
     if (avctx->flags & CODEC_FLAG_GLOBAL_HEADER)
         x4->params.b_repeat_headers = 0;
@@ -520,7 +526,9 @@ static av_cold int X264_init(AVCodecContext *avctx)
 
 static const enum AVPixelFormat pix_fmts_8bit[] = {
     AV_PIX_FMT_YUV420P,
+#if FF_API_FULLSCALE_PIXFMT
     AV_PIX_FMT_YUVJ420P,
+#endif /* FF_API_FULLSCALE_PIXFMT */
     AV_PIX_FMT_YUV422P,
     AV_PIX_FMT_YUV444P,
     AV_PIX_FMT_NV12,
diff --git a/libavcodec/ljpegenc.c b/libavcodec/ljpegenc.c
index 6f01962..5ef36a8 100644
--- a/libavcodec/ljpegenc.c
+++ b/libavcodec/ljpegenc.c
@@ -264,10 +264,15 @@ static av_cold int ljpeg_encode_init(AVCodecContext 
*avctx)
     LJpegEncContext *s = avctx->priv_data;
     int chroma_v_shift, chroma_h_shift;
 
-    if ((avctx->pix_fmt == AV_PIX_FMT_YUV420P ||
+    if (
+#if FF_API_FULLSCALE_PIXFMT
+        (avctx->pix_fmt == AV_PIX_FMT_YUV420P ||
          avctx->pix_fmt == AV_PIX_FMT_YUV422P ||
          avctx->pix_fmt == AV_PIX_FMT_YUV444P ||
          avctx->color_range == AVCOL_RANGE_MPEG) &&
+#else
+        avctx->color_range == AVCOL_RANGE_MPEG &&
+#endif /* FF_API_FULLSCALE_PIXFMT */
         avctx->strict_std_compliance > FF_COMPLIANCE_UNOFFICIAL) {
         av_log(avctx, AV_LOG_ERROR,
                "Limited range YUV is non-standard, set strict_std_compliance 
to "
@@ -331,6 +336,11 @@ AVCodec ff_ljpeg_encoder = {
                                                     AV_PIX_FMT_YUV420P,
                                                     AV_PIX_FMT_YUV422P,
                                                     AV_PIX_FMT_YUV444P,
+#if FF_API_FULLSCALE_PIXFMT
+                                                    AV_PIX_FMT_YUVJ420P,
+                                                    AV_PIX_FMT_YUVJ422P,
+                                                    AV_PIX_FMT_YUVJ444P,
+#endif /* FF_API_FULLSCALE_PIXFMT */
                                                     AV_PIX_FMT_NONE },
     .pix_fmts_full  = (const enum AVPixelFormat[]) {
         AV_PIX_FMT_YUV420P, AV_PIX_FMT_YUV422P, AV_PIX_FMT_YUV444P, 
AV_PIX_FMT_NONE,
diff --git a/libavcodec/mdec.c b/libavcodec/mdec.c
index d6c6060..cc4a58d 100644
--- a/libavcodec/mdec.c
+++ b/libavcodec/mdec.c
@@ -218,7 +218,11 @@ static av_cold int decode_init(AVCodecContext *avctx)
 
     if (avctx->idct_algo == FF_IDCT_AUTO)
         avctx->idct_algo = FF_IDCT_SIMPLE;
+#if FF_API_FULLSCALE_PIXFMT
     avctx->pix_fmt  = AV_PIX_FMT_YUVJ420P;
+#else
+    avctx->pix_fmt  = AV_PIX_FMT_YUV420P;
+#endif /* FF_API_FULLSCALE_PIXFMT */
     avctx->color_range = AVCOL_RANGE_JPEG;
 
     return 0;
diff --git a/libavcodec/mjpegdec.c b/libavcodec/mjpegdec.c
index b1192c5..9b50c51 100644
--- a/libavcodec/mjpegdec.c
+++ b/libavcodec/mjpegdec.c
@@ -339,7 +339,11 @@ int ff_mjpeg_decode_sof(MJpegDecodeContext *s)
         if (s->rgb)
             s->avctx->pix_fmt = AV_PIX_FMT_BGRA;
         else {
+#if FF_API_FULLSCALE_PIXFMT
             s->avctx->pix_fmt = s->cs_itu601 ? AV_PIX_FMT_YUV444P : 
AV_PIX_FMT_YUVJ444P;
+#else
+            s->avctx->pix_fmt = AV_PIX_FMT_YUV444P;
+#endif /* FF_API_FULLSCALE_PIXFMT */
             s->avctx->color_range = s->cs_itu601 ? AVCOL_RANGE_MPEG : 
AVCOL_RANGE_JPEG;
         }
         assert(s->nb_components == 3);
@@ -348,15 +352,27 @@ int ff_mjpeg_decode_sof(MJpegDecodeContext *s)
         s->avctx->pix_fmt = AV_PIX_FMT_GRAY8;
         break;
     case 0x12111100:
+#if FF_API_FULLSCALE_PIXFMT
         s->avctx->pix_fmt = s->cs_itu601 ? AV_PIX_FMT_YUV440P : 
AV_PIX_FMT_YUVJ440P;
+#else
+        s->avctx->pix_fmt = AV_PIX_FMT_YUV440P;
+#endif /* FF_API_FULLSCALE_PIXFMT */
         s->avctx->color_range = s->cs_itu601 ? AVCOL_RANGE_MPEG : 
AVCOL_RANGE_JPEG;
         break;
     case 0x21111100:
+#if FF_API_FULLSCALE_PIXFMT
         s->avctx->pix_fmt = s->cs_itu601 ? AV_PIX_FMT_YUV422P : 
AV_PIX_FMT_YUVJ422P;
+#else
+        s->avctx->pix_fmt = AV_PIX_FMT_YUV422P;
+#endif /* FF_API_FULLSCALE_PIXFMT */
         s->avctx->color_range = s->cs_itu601 ? AVCOL_RANGE_MPEG : 
AVCOL_RANGE_JPEG;
         break;
     case 0x22111100:
+#if FF_API_FULLSCALE_PIXFMT
         s->avctx->pix_fmt = s->cs_itu601 ? AV_PIX_FMT_YUV420P : 
AV_PIX_FMT_YUVJ420P;
+#else
+        s->avctx->pix_fmt = AV_PIX_FMT_YUV420P;
+#endif /* FF_API_FULLSCALE_PIXFMT */
         s->avctx->color_range = s->cs_itu601 ? AVCOL_RANGE_MPEG : 
AVCOL_RANGE_JPEG;
         break;
     default:
diff --git a/libavcodec/mjpegenc.c b/libavcodec/mjpegenc.c
index cabdc1f..7067fb5 100644
--- a/libavcodec/mjpegenc.c
+++ b/libavcodec/mjpegenc.c
@@ -447,7 +447,12 @@ AVCodec ff_mjpeg_encoder = {
     .encode2        = ff_MPV_encode_picture,
     .close          = ff_MPV_encode_end,
     .pix_fmts       = (const enum AVPixelFormat[]){
-        AV_PIX_FMT_YUVJ420P, AV_PIX_FMT_YUVJ422P, AV_PIX_FMT_NONE
+#if FF_API_FULLSCALE_PIXFMT
+        AV_PIX_FMT_YUVJ420P, AV_PIX_FMT_YUVJ422P,
+#else
+        AV_PIX_FMT_YUV420P, AV_PIX_FMT_YUV422P,
+#endif /* FF_API_FULLSCALE_PIXFMT */
+        AV_PIX_FMT_NONE
     },
     .pix_fmts_full  = (const enum AVPixelFormat[]) {
         AV_PIX_FMT_YUV420P, AV_PIX_FMT_YUV422P, AV_PIX_FMT_NONE
diff --git a/libavcodec/mpegvideo_enc.c b/libavcodec/mpegvideo_enc.c
index f42bae0..b0350a0 100644
--- a/libavcodec/mpegvideo_enc.c
+++ b/libavcodec/mpegvideo_enc.c
@@ -242,8 +242,11 @@ av_cold int ff_MPV_encode_init(AVCodecContext *avctx)
         }
         break;
     case AV_CODEC_ID_MJPEG:
-        if (avctx->pix_fmt != AV_PIX_FMT_YUVJ420P &&
+        if (
+#if FF_API_FULLSCALE_PIXFMT
+            avctx->pix_fmt != AV_PIX_FMT_YUVJ420P &&
             avctx->pix_fmt != AV_PIX_FMT_YUVJ422P &&
+#endif /* FF_API_FULLSCALE_PIXFMT */
             ((avctx->pix_fmt != AV_PIX_FMT_YUV420P &&
               avctx->pix_fmt != AV_PIX_FMT_YUV422P &&
               avctx->color_range != AVCOL_RANGE_MPEG) ||
@@ -260,11 +263,15 @@ av_cold int ff_MPV_encode_init(AVCodecContext *avctx)
     }
 
     switch (avctx->pix_fmt) {
+#if FF_API_FULLSCALE_PIXFMT
     case AV_PIX_FMT_YUVJ422P:
+#endif /* FF_API_FULLSCALE_PIXFMT */
     case AV_PIX_FMT_YUV422P:
         s->chroma_format = CHROMA_422;
         break;
+#if FF_API_FULLSCALE_PIXFMT
     case AV_PIX_FMT_YUVJ420P:
+#endif /* FF_API_FULLSCALE_PIXFMT */
     case AV_PIX_FMT_YUV420P:
     default:
         s->chroma_format = CHROMA_420;
diff --git a/libavcodec/raw.c b/libavcodec/raw.c
index 69999b3..0a8719f 100644
--- a/libavcodec/raw.c
+++ b/libavcodec/raw.c
@@ -38,6 +38,7 @@ const PixelFormatTag ff_raw_pix_fmt_tags[] = {
     { AV_PIX_FMT_YUV422P, MKTAG('Y', '4', '2', 'B') },
     { AV_PIX_FMT_YUV422P, MKTAG('P', '4', '2', '2') },
     { AV_PIX_FMT_YUV422P, MKTAG('Y', 'V', '1', '6') },
+#if FF_API_FULLSCALE_PIXFMT
     /* yuvjXXX formats are deprecated hacks specific to libav*,
        they are identical to yuvXXX  */
     { AV_PIX_FMT_YUVJ420P, MKTAG('I', '4', '2', '0') }, /* Planar formats */
@@ -45,6 +46,8 @@ const PixelFormatTag ff_raw_pix_fmt_tags[] = {
     { AV_PIX_FMT_YUVJ420P, MKTAG('Y', 'V', '1', '2') },
     { AV_PIX_FMT_YUVJ422P, MKTAG('Y', '4', '2', 'B') },
     { AV_PIX_FMT_YUVJ422P, MKTAG('P', '4', '2', '2') },
+#endif /* FF_API_FULLSCALE_PIXFMT */
+
     { AV_PIX_FMT_GRAY8,    MKTAG('Y', '8', '0', '0') },
     { AV_PIX_FMT_GRAY8,    MKTAG('Y', '8', ' ', ' ') },
 
@@ -94,11 +97,13 @@ const PixelFormatTag ff_raw_pix_fmt_tags[] = {
     { AV_PIX_FMT_BGR24,    MKTAG('B', 'G', 'R', 24 ) },
     { AV_PIX_FMT_YUV411P,  MKTAG('4', '1', '1', 'P') },
     { AV_PIX_FMT_YUV422P,  MKTAG('4', '2', '2', 'P') },
-    { AV_PIX_FMT_YUVJ422P, MKTAG('4', '2', '2', 'P') },
     { AV_PIX_FMT_YUV440P,  MKTAG('4', '4', '0', 'P') },
-    { AV_PIX_FMT_YUVJ440P, MKTAG('4', '4', '0', 'P') },
     { AV_PIX_FMT_YUV444P,  MKTAG('4', '4', '4', 'P') },
+#if FF_API_FULLSCALE_PIXFMT
+    { AV_PIX_FMT_YUVJ422P, MKTAG('4', '2', '2', 'P') },
+    { AV_PIX_FMT_YUVJ440P, MKTAG('4', '4', '0', 'P') },
     { AV_PIX_FMT_YUVJ444P, MKTAG('4', '4', '4', 'P') },
+#endif
     { AV_PIX_FMT_MONOWHITE,MKTAG('B', '1', 'W', '0') },
     { AV_PIX_FMT_MONOBLACK,MKTAG('B', '0', 'W', '1') },
     { AV_PIX_FMT_BGR8,     MKTAG('B', 'G', 'R',  8 ) },
diff --git a/libavcodec/svq3.c b/libavcodec/svq3.c
index 18e6924..fc4afac 100644
--- a/libavcodec/svq3.c
+++ b/libavcodec/svq3.c
@@ -881,7 +881,11 @@ static av_cold int svq3_decode_init(AVCodecContext *avctx)
     h->flags           = avctx->flags;
     h->is_complex      = 1;
     h->picture_structure = PICT_FRAME;
+#if FF_API_FULLSCALE_PIXFMT
     avctx->pix_fmt     = AV_PIX_FMT_YUVJ420P;
+#else
+    avctx->pix_fmt     = AV_PIX_FMT_YUV420P;
+#endif
     avctx->color_range = AVCOL_RANGE_JPEG;
 
     h->chroma_qp[0] = h->chroma_qp[1] = 4;
@@ -1325,8 +1329,10 @@ AVCodec ff_svq3_decoder = {
     .capabilities   = CODEC_CAP_DRAW_HORIZ_BAND |
                       CODEC_CAP_DR1             |
                       CODEC_CAP_DELAY,
+#if FF_API_FULLSCALE_PIXFMT
     .pix_fmts       = (const enum AVPixelFormat[]) { AV_PIX_FMT_YUVJ420P,
                                                      AV_PIX_FMT_NONE},
+#endif
     .pix_fmts_full  = (const enum AVPixelFormat[]) {
         AV_PIX_FMT_YUV420P, AV_PIX_FMT_NONE
     },
diff --git a/libavcodec/utils.c b/libavcodec/utils.c
index 93e2324..e61e8f9 100644
--- a/libavcodec/utils.c
+++ b/libavcodec/utils.c
@@ -197,10 +197,12 @@ void avcodec_align_dimensions2(AVCodecContext *s, int 
*width, int *height,
     case AV_PIX_FMT_GRAY8:
     case AV_PIX_FMT_GRAY16BE:
     case AV_PIX_FMT_GRAY16LE:
+#if FF_API_FULLSCALE_PIXFMT
     case AV_PIX_FMT_YUVJ420P:
     case AV_PIX_FMT_YUVJ422P:
     case AV_PIX_FMT_YUVJ440P:
     case AV_PIX_FMT_YUVJ444P:
+#endif /* FF_API_FULLSCALE_PIXFMT */
     case AV_PIX_FMT_YUVA420P:
     case AV_PIX_FMT_YUVA422P:
     case AV_PIX_FMT_YUVA444P:
diff --git a/libavfilter/vf_boxblur.c b/libavfilter/vf_boxblur.c
index 1f26549..c59dfa6 100644
--- a/libavfilter/vf_boxblur.c
+++ b/libavfilter/vf_boxblur.c
@@ -119,8 +119,10 @@ static int query_formats(AVFilterContext *ctx)
         AV_PIX_FMT_YUV444P,  AV_PIX_FMT_YUV422P,  AV_PIX_FMT_YUV420P,
         AV_PIX_FMT_YUV411P,  AV_PIX_FMT_YUV410P,  AV_PIX_FMT_YUVA420P,
         AV_PIX_FMT_YUV440P,  AV_PIX_FMT_GRAY8,
+#if FF_API_FULLSCALE_PIXFMT
         AV_PIX_FMT_YUVJ444P, AV_PIX_FMT_YUVJ422P, AV_PIX_FMT_YUVJ420P,
         AV_PIX_FMT_YUVJ440P,
+#endif /* FF_API_FULLSCALE_PIXFMT */
         AV_PIX_FMT_NONE
     };
 
diff --git a/libavfilter/vf_crop.c b/libavfilter/vf_crop.c
index 1aa8466..190ba88 100644
--- a/libavfilter/vf_crop.c
+++ b/libavfilter/vf_crop.c
@@ -101,8 +101,10 @@ static int query_formats(AVFilterContext *ctx)
         AV_PIX_FMT_YUV444P,      AV_PIX_FMT_YUV422P,
         AV_PIX_FMT_YUV420P,      AV_PIX_FMT_YUV411P,
         AV_PIX_FMT_YUV410P,      AV_PIX_FMT_YUV440P,
+#if FF_API_FULLSCALE_PIXFMT
         AV_PIX_FMT_YUVJ444P,     AV_PIX_FMT_YUVJ422P,
         AV_PIX_FMT_YUVJ420P,     AV_PIX_FMT_YUVJ440P,
+#endif /* FF_API_FULLSCALE_PIXFMT */
         AV_PIX_FMT_YUVA420P,
         AV_PIX_FMT_RGB8,         AV_PIX_FMT_BGR8,
         AV_PIX_FMT_RGB4_BYTE,    AV_PIX_FMT_BGR4_BYTE,
diff --git a/libavfilter/vf_cropdetect.c b/libavfilter/vf_cropdetect.c
index ea9e47d..f7b0f8e 100644
--- a/libavfilter/vf_cropdetect.c
+++ b/libavfilter/vf_cropdetect.c
@@ -47,10 +47,13 @@ typedef struct {
 static int query_formats(AVFilterContext *ctx)
 {
     static const enum AVPixelFormat pix_fmts[] = {
-        AV_PIX_FMT_YUV420P, AV_PIX_FMT_YUVJ420P,
-        AV_PIX_FMT_YUV422P, AV_PIX_FMT_YUVJ422P,
-        AV_PIX_FMT_YUV444P, AV_PIX_FMT_YUVJ444P,
-        AV_PIX_FMT_YUV411P, AV_PIX_FMT_GRAY8,
+        AV_PIX_FMT_YUV420P, AV_PIX_FMT_YUV422P,
+        AV_PIX_FMT_YUV444P, AV_PIX_FMT_YUV411P,
+        AV_PIX_FMT_GRAY8,
+#if FF_API_FULLSCALE_PIXFMT
+        AV_PIX_FMT_YUVJ420P, AV_PIX_FMT_YUVJ422P,
+        AV_PIX_FMT_YUVJ444P,
+#endif /* FF_API_FULLSCALE_PIXFMT */
         AV_PIX_FMT_NV12,    AV_PIX_FMT_NV21,
         AV_PIX_FMT_NONE
     };
diff --git a/libavfilter/vf_drawbox.c b/libavfilter/vf_drawbox.c
index 2241974..d7422bb 100644
--- a/libavfilter/vf_drawbox.c
+++ b/libavfilter/vf_drawbox.c
@@ -64,9 +64,11 @@ static int query_formats(AVFilterContext *ctx)
 {
     enum AVPixelFormat pix_fmts[] = {
         AV_PIX_FMT_YUV444P,  AV_PIX_FMT_YUV422P,  AV_PIX_FMT_YUV420P,
-        AV_PIX_FMT_YUV411P,  AV_PIX_FMT_YUV410P,
+        AV_PIX_FMT_YUV411P,  AV_PIX_FMT_YUV410P,  AV_PIX_FMT_YUV440P,
+#if FF_API_FULLSCALE_PIXFMT
         AV_PIX_FMT_YUVJ444P, AV_PIX_FMT_YUVJ422P, AV_PIX_FMT_YUVJ420P,
-        AV_PIX_FMT_YUV440P,  AV_PIX_FMT_YUVJ440P,
+        AV_PIX_FMT_YUVJ440P,
+#endif /* FF_API_FULLSCALE_PIXFMT */
         AV_PIX_FMT_NONE
     };
 
diff --git a/libavfilter/vf_fade.c b/libavfilter/vf_fade.c
index b6bd775..713ebd2 100644
--- a/libavfilter/vf_fade.c
+++ b/libavfilter/vf_fade.c
@@ -69,9 +69,11 @@ static int query_formats(AVFilterContext *ctx)
 {
     static const enum AVPixelFormat pix_fmts[] = {
         AV_PIX_FMT_YUV444P,  AV_PIX_FMT_YUV422P,  AV_PIX_FMT_YUV420P,
-        AV_PIX_FMT_YUV411P,  AV_PIX_FMT_YUV410P,
+        AV_PIX_FMT_YUV411P,  AV_PIX_FMT_YUV410P,  AV_PIX_FMT_YUV440P,
+#if FF_API_FULLSCALE_PIXFMT
         AV_PIX_FMT_YUVJ444P, AV_PIX_FMT_YUVJ422P, AV_PIX_FMT_YUVJ420P,
-        AV_PIX_FMT_YUV440P,  AV_PIX_FMT_YUVJ440P,
+        AV_PIX_FMT_YUVJ440P,
+#endif /* FF_API_FULLSCALE_PIXFMT */
         AV_PIX_FMT_RGB24,    AV_PIX_FMT_BGR24,
         AV_PIX_FMT_NONE
     };
diff --git a/libavfilter/vf_framepack.c b/libavfilter/vf_framepack.c
index f5c761a..13b6c6d 100644
--- a/libavfilter/vf_framepack.c
+++ b/libavfilter/vf_framepack.c
@@ -53,8 +53,11 @@ typedef struct FramepackContext {
 
 static const enum AVPixelFormat formats_supported[] = {
     AV_PIX_FMT_YUV420P,  AV_PIX_FMT_YUV422P,  AV_PIX_FMT_YUV444P,
-    AV_PIX_FMT_YUV410P,  AV_PIX_FMT_YUVA420P, AV_PIX_FMT_YUVJ420P,
-    AV_PIX_FMT_YUVJ422P, AV_PIX_FMT_YUVJ444P, AV_PIX_FMT_YUVJ440P,
+    AV_PIX_FMT_YUV410P,  AV_PIX_FMT_YUVA420P,
+#if FF_API_FULLSCALE_PIXFMT
+    AV_PIX_FMT_YUVJ444P, AV_PIX_FMT_YUVJ422P,
+    AV_PIX_FMT_YUVJ420P, AV_PIX_FMT_YUVJ440P,
+#endif /* FF_API_FULLSCALE_PIXFMT */
     AV_PIX_FMT_NONE
 };
 
diff --git a/libavfilter/vf_hflip.c b/libavfilter/vf_hflip.c
index 6034b68..25eb280 100644
--- a/libavfilter/vf_hflip.c
+++ b/libavfilter/vf_hflip.c
@@ -59,8 +59,10 @@ static int query_formats(AVFilterContext *ctx)
         AV_PIX_FMT_YUV444P,      AV_PIX_FMT_YUV422P,
         AV_PIX_FMT_YUV420P,      AV_PIX_FMT_YUV411P,
         AV_PIX_FMT_YUV410P,      AV_PIX_FMT_YUV440P,
+#if FF_API_FULLSCALE_PIXFMT
         AV_PIX_FMT_YUVJ444P,     AV_PIX_FMT_YUVJ422P,
         AV_PIX_FMT_YUVJ420P,     AV_PIX_FMT_YUVJ440P,
+#endif /* FF_API_FULLSCALE_PIXFMT */
         AV_PIX_FMT_YUVA420P,
         AV_PIX_FMT_RGB8,         AV_PIX_FMT_BGR8,
         AV_PIX_FMT_RGB4_BYTE,    AV_PIX_FMT_BGR4_BYTE,
diff --git a/libavfilter/vf_hqdn3d.c b/libavfilter/vf_hqdn3d.c
index be6b761..83660c1 100644
--- a/libavfilter/vf_hqdn3d.c
+++ b/libavfilter/vf_hqdn3d.c
@@ -226,10 +226,12 @@ static int query_formats(AVFilterContext *ctx)
         AV_PIX_FMT_YUV410P,
         AV_PIX_FMT_YUV411P,
         AV_PIX_FMT_YUV440P,
+#if FF_API_FULLSCALE_PIXFMT
         AV_PIX_FMT_YUVJ420P,
         AV_PIX_FMT_YUVJ422P,
         AV_PIX_FMT_YUVJ444P,
         AV_PIX_FMT_YUVJ440P,
+#endif /* FF_API_FULLSCALE_PIXFMT */
         AV_NE( AV_PIX_FMT_YUV420P9BE, AV_PIX_FMT_YUV420P9LE ),
         AV_NE( AV_PIX_FMT_YUV422P9BE, AV_PIX_FMT_YUV422P9LE ),
         AV_NE( AV_PIX_FMT_YUV444P9BE, AV_PIX_FMT_YUV444P9LE ),
diff --git a/libavfilter/vf_interlace.c b/libavfilter/vf_interlace.c
index 8a16e19..7e93c37 100644
--- a/libavfilter/vf_interlace.c
+++ b/libavfilter/vf_interlace.c
@@ -79,8 +79,12 @@ static const AVClass class = {
 static const enum AVPixelFormat formats_supported[] = {
     AV_PIX_FMT_YUV420P,  AV_PIX_FMT_YUV422P,  AV_PIX_FMT_YUV444P,
     AV_PIX_FMT_YUV444P,  AV_PIX_FMT_YUV410P,  AV_PIX_FMT_YUVA420P,
-    AV_PIX_FMT_GRAY8,    AV_PIX_FMT_YUVJ420P, AV_PIX_FMT_YUVJ422P,
-    AV_PIX_FMT_YUVJ444P, AV_PIX_FMT_YUVJ440P, AV_PIX_FMT_NONE
+    AV_PIX_FMT_GRAY8,
+#if FF_API_FULLSCALE_PIXFMT
+    AV_PIX_FMT_YUVJ444P, AV_PIX_FMT_YUVJ422P,
+    AV_PIX_FMT_YUVJ420P, AV_PIX_FMT_YUVJ440P,
+#endif /* FF_API_FULLSCALE_PIXFMT */
+    AV_PIX_FMT_NONE
 };
 
 static int query_formats(AVFilterContext *ctx)
diff --git a/libavfilter/vf_lut.c b/libavfilter/vf_lut.c
index c59dcd6..9792d9e 100644
--- a/libavfilter/vf_lut.c
+++ b/libavfilter/vf_lut.c
@@ -128,12 +128,19 @@ static av_cold void uninit(AVFilterContext *ctx)
     }
 }
 
+#if FF_API_FULLSCALE_PIXFMT
 #define YUV_FORMATS                                         \
     AV_PIX_FMT_YUV444P,  AV_PIX_FMT_YUV422P,  AV_PIX_FMT_YUV420P,    \
     AV_PIX_FMT_YUV411P,  AV_PIX_FMT_YUV410P,  AV_PIX_FMT_YUV440P,    \
     AV_PIX_FMT_YUVA420P,                                       \
     AV_PIX_FMT_YUVJ444P, AV_PIX_FMT_YUVJ422P, AV_PIX_FMT_YUVJ420P,   \
     AV_PIX_FMT_YUVJ440P
+#else
+#define YUV_FORMATS                                         \
+    AV_PIX_FMT_YUV444P,  AV_PIX_FMT_YUV422P,  AV_PIX_FMT_YUV420P,    \
+    AV_PIX_FMT_YUV411P,  AV_PIX_FMT_YUV410P,  AV_PIX_FMT_YUV440P,    \
+    AV_PIX_FMT_YUVA420P
+#endif /* FF_API_FULLSCALE_PIXFMT */
 
 #define RGB_FORMATS                             \
     AV_PIX_FMT_ARGB,         AV_PIX_FMT_RGBA,         \
diff --git a/libavfilter/vf_pad.c b/libavfilter/vf_pad.c
index 0609767..3e2a02c 100644
--- a/libavfilter/vf_pad.c
+++ b/libavfilter/vf_pad.c
@@ -83,8 +83,10 @@ static int query_formats(AVFilterContext *ctx)
         AV_PIX_FMT_YUV444P,      AV_PIX_FMT_YUV422P,
         AV_PIX_FMT_YUV420P,      AV_PIX_FMT_YUV411P,
         AV_PIX_FMT_YUV410P,      AV_PIX_FMT_YUV440P,
+#if FF_API_FULLSCALE_PIXFMT
         AV_PIX_FMT_YUVJ444P,     AV_PIX_FMT_YUVJ422P,
         AV_PIX_FMT_YUVJ420P,     AV_PIX_FMT_YUVJ440P,
+#endif /* FF_API_FULLSCALE_PIXFMT */
         AV_PIX_FMT_YUVA420P,
 
         AV_PIX_FMT_NONE
diff --git a/libavfilter/vf_transpose.c b/libavfilter/vf_transpose.c
index 06a88c7..1988a14 100644
--- a/libavfilter/vf_transpose.c
+++ b/libavfilter/vf_transpose.c
@@ -70,10 +70,12 @@ static int query_formats(AVFilterContext *ctx)
         AV_PIX_FMT_RGB8,         AV_PIX_FMT_BGR8,
         AV_PIX_FMT_RGB4_BYTE,    AV_PIX_FMT_BGR4_BYTE,
         AV_PIX_FMT_YUV444P,      AV_PIX_FMT_YUV422P,
-        AV_PIX_FMT_YUV420P,      AV_PIX_FMT_YUVJ420P,
+        AV_PIX_FMT_YUV420P,      AV_PIX_FMT_YUV440P,
         AV_PIX_FMT_YUV411P,      AV_PIX_FMT_YUV410P,
+#if FF_API_FULLSCALE_PIXFMT
         AV_PIX_FMT_YUVJ444P,     AV_PIX_FMT_YUVJ422P,
-        AV_PIX_FMT_YUV440P,      AV_PIX_FMT_YUVJ440P,
+        AV_PIX_FMT_YUVJ420P,     AV_PIX_FMT_YUVJ440P,
+#endif /* FF_API_FULLSCALE_PIXFMT */
         AV_PIX_FMT_YUVA420P,     AV_PIX_FMT_GRAY8,
         AV_PIX_FMT_NONE
     };
diff --git a/libavfilter/vf_unsharp.c b/libavfilter/vf_unsharp.c
index 842ec7e..c93cbbb 100644
--- a/libavfilter/vf_unsharp.c
+++ b/libavfilter/vf_unsharp.c
@@ -150,8 +150,12 @@ static int query_formats(AVFilterContext *ctx)
 {
     enum AVPixelFormat pix_fmts[] = {
         AV_PIX_FMT_YUV420P,  AV_PIX_FMT_YUV422P,  AV_PIX_FMT_YUV444P,  
AV_PIX_FMT_YUV410P,
-        AV_PIX_FMT_YUV411P,  AV_PIX_FMT_YUV440P,  AV_PIX_FMT_YUVJ420P, 
AV_PIX_FMT_YUVJ422P,
-        AV_PIX_FMT_YUVJ444P, AV_PIX_FMT_YUVJ440P, AV_PIX_FMT_NONE
+        AV_PIX_FMT_YUV411P,  AV_PIX_FMT_YUV440P,
+#if FF_API_FULLSCALE_PIXFMT
+        AV_PIX_FMT_YUVJ444P, AV_PIX_FMT_YUVJ422P,
+        AV_PIX_FMT_YUVJ420P, AV_PIX_FMT_YUVJ440P,
+#endif /* FF_API_FULLSCALE_PIXFMT */
+        AV_PIX_FMT_NONE
     };
 
     ff_set_common_formats(ctx, ff_make_format_list(pix_fmts));
diff --git a/libavfilter/vf_yadif.c b/libavfilter/vf_yadif.c
index 53c567c..d17c00b 100644
--- a/libavfilter/vf_yadif.c
+++ b/libavfilter/vf_yadif.c
@@ -432,12 +432,14 @@ static int query_formats(AVFilterContext *ctx)
         AV_PIX_FMT_YUV410P,
         AV_PIX_FMT_YUV411P,
         AV_PIX_FMT_GRAY8,
+#if FF_API_FULLSCALE_PIXFMT
         AV_PIX_FMT_YUVJ420P,
         AV_PIX_FMT_YUVJ422P,
         AV_PIX_FMT_YUVJ444P,
+        AV_PIX_FMT_YUVJ440P,
+#endif /* FF_API_FULLSCALE_PIXFMT */
         AV_NE( AV_PIX_FMT_GRAY16BE, AV_PIX_FMT_GRAY16LE ),
         AV_PIX_FMT_YUV440P,
-        AV_PIX_FMT_YUVJ440P,
         AV_NE( AV_PIX_FMT_YUV420P10BE, AV_PIX_FMT_YUV420P10LE ),
         AV_NE( AV_PIX_FMT_YUV422P10BE, AV_PIX_FMT_YUV422P10LE ),
         AV_NE( AV_PIX_FMT_YUV444P10BE, AV_PIX_FMT_YUV444P10LE ),
diff --git a/libavfilter/vsrc_color.c b/libavfilter/vsrc_color.c
index d72d072..21cdb3a 100644
--- a/libavfilter/vsrc_color.c
+++ b/libavfilter/vsrc_color.c
@@ -100,8 +100,10 @@ static int query_formats(AVFilterContext *ctx)
         AV_PIX_FMT_YUV444P,      AV_PIX_FMT_YUV422P,
         AV_PIX_FMT_YUV420P,      AV_PIX_FMT_YUV411P,
         AV_PIX_FMT_YUV410P,      AV_PIX_FMT_YUV440P,
+#if FF_API_FULLSCALE_PIXFMT
         AV_PIX_FMT_YUVJ444P,     AV_PIX_FMT_YUVJ422P,
         AV_PIX_FMT_YUVJ420P,     AV_PIX_FMT_YUVJ440P,
+#endif /* FF_API_FULLSCALE_PIXFMT */
         AV_PIX_FMT_YUVA420P,
 
         AV_PIX_FMT_NONE
diff --git a/libavformat/rtpenc_jpeg.c b/libavformat/rtpenc_jpeg.c
index 04df658..0ed88a2 100644
--- a/libavformat/rtpenc_jpeg.c
+++ b/libavformat/rtpenc_jpeg.c
@@ -22,6 +22,7 @@
 #include "libavcodec/bytestream.h"
 #include "libavcodec/mjpeg.h"
 #include "libavutil/intreadwrite.h"
+#include "libavutil/version.h"
 #include "rtpenc.h"
 
 void ff_rtp_send_jpeg(AVFormatContext *s1, const uint8_t *buf, int size)
@@ -29,7 +30,7 @@ void ff_rtp_send_jpeg(AVFormatContext *s1, const uint8_t 
*buf, int size)
     RTPMuxContext *s = s1->priv_data;
     const uint8_t *qtables = NULL;
     int nb_qtables = 0;
-    uint8_t type = 1; /* default pixel format is AV_PIX_FMT_YUVJ420P */
+    uint8_t type = 1; /* default pixel format is AV_PIX_FMT_YUV420P full range 
*/
     uint8_t w, h;
     uint8_t *p;
     int off = 0; /* fragment offset of the current JPEG frame */
@@ -44,9 +45,19 @@ void ff_rtp_send_jpeg(AVFormatContext *s1, const uint8_t 
*buf, int size)
     h = s1->streams[0]->codec->height >> 3;
 
     /* check if pixel format is not the normal 420 case */
+#if FF_API_FULLSCALE_PIXFMT
     if (s1->streams[0]->codec->pix_fmt == AV_PIX_FMT_YUVJ422P) {
+#else
+    if (s1->streams[0]->codec->pix_fmt == AV_PIX_FMT_YUV422P &&
+        s1->streams[0]->codec->color_range == AVCOL_RANGE_JPEG) {
+#endif /* FF_API_FULLSCALE_PIXFMT */
         type = 0;
+#if FF_API_FULLSCALE_PIXFMT
     } else if (s1->streams[0]->codec->pix_fmt == AV_PIX_FMT_YUVJ420P) {
+#else
+    } else if (s1->streams[0]->codec->pix_fmt == AV_PIX_FMT_YUV420P &&
+        s1->streams[0]->codec->color_range == AVCOL_RANGE_JPEG) {
+#endif /* FF_API_FULLSCALE_PIXFMT */
         type = 1;
     } else {
         av_log(s1, AV_LOG_ERROR, "Unsupported pixel format\n");
diff --git a/libavutil/pixdesc.c b/libavutil/pixdesc.c
index d0e6919..3b189e3 100644
--- a/libavutil/pixdesc.c
+++ b/libavutil/pixdesc.c
@@ -264,6 +264,7 @@ const AVPixFmtDescriptor 
av_pix_fmt_descriptors[AV_PIX_FMT_NB] = {
         },
         .flags = AV_PIX_FMT_FLAG_PAL,
     },
+#if FF_API_FULLSCALE_PIXFMT
     [AV_PIX_FMT_YUVJ420P] = {
         .name = "yuvj420p",
         .nb_components = 3,
@@ -300,6 +301,7 @@ const AVPixFmtDescriptor 
av_pix_fmt_descriptors[AV_PIX_FMT_NB] = {
         },
         .flags = AV_PIX_FMT_FLAG_PLANAR,
     },
+#endif /* FF_API_FULLSCALE_PIXFMT */
 #if FF_API_XVMC
     [AV_PIX_FMT_XVMC_MPEG2_MC] = {
         .name = "xvmcmc",
@@ -511,6 +513,7 @@ const AVPixFmtDescriptor 
av_pix_fmt_descriptors[AV_PIX_FMT_NB] = {
         },
         .flags = AV_PIX_FMT_FLAG_PLANAR,
     },
+#if FF_API_FULLSCALE_PIXFMT
     [AV_PIX_FMT_YUVJ440P] = {
         .name = "yuvj440p",
         .nb_components = 3,
@@ -523,6 +526,7 @@ const AVPixFmtDescriptor 
av_pix_fmt_descriptors[AV_PIX_FMT_NB] = {
         },
         .flags = AV_PIX_FMT_FLAG_PLANAR,
     },
+#endif /* FF_API_FULLSCALE_PIXFMT */
     [AV_PIX_FMT_YUVA420P] = {
         .name = "yuva420p",
         .nb_components = 4,
diff --git a/libavutil/pixfmt.h b/libavutil/pixfmt.h
index e86ec7e..b4a7b55 100644
--- a/libavutil/pixfmt.h
+++ b/libavutil/pixfmt.h
@@ -74,9 +74,11 @@ enum AVPixelFormat {
     AV_PIX_FMT_MONOWHITE, ///<        Y        ,  1bpp, 0 is white, 1 is 
black, in each byte pixels are ordered from the msb to the lsb
     AV_PIX_FMT_MONOBLACK, ///<        Y        ,  1bpp, 0 is black, 1 is 
white, in each byte pixels are ordered from the msb to the lsb
     AV_PIX_FMT_PAL8,      ///< 8 bit with PIX_FMT_RGB32 palette
+#if FF_API_FULLSCALE_PIXFMT
     AV_PIX_FMT_YUVJ420P,  ///< planar YUV 4:2:0, 12bpp, full scale (JPEG), 
deprecated in favor of PIX_FMT_YUV420P and setting color_range
     AV_PIX_FMT_YUVJ422P,  ///< planar YUV 4:2:2, 16bpp, full scale (JPEG), 
deprecated in favor of PIX_FMT_YUV422P and setting color_range
     AV_PIX_FMT_YUVJ444P,  ///< planar YUV 4:4:4, 24bpp, full scale (JPEG), 
deprecated in favor of PIX_FMT_YUV444P and setting color_range
+#endif /* FF_API_FULLSCALE_PIXFMT */
 #if FF_API_XVMC
     AV_PIX_FMT_XVMC_MPEG2_MC,///< XVideo Motion Acceleration via common packet 
passing
     AV_PIX_FMT_XVMC_MPEG2_IDCT,
@@ -100,7 +102,9 @@ enum AVPixelFormat {
     AV_PIX_FMT_GRAY16BE,  ///<        Y        , 16bpp, big-endian
     AV_PIX_FMT_GRAY16LE,  ///<        Y        , 16bpp, little-endian
     AV_PIX_FMT_YUV440P,   ///< planar YUV 4:4:0 (1 Cr & Cb sample per 1x2 Y 
samples)
+#if FF_API_FULLSCALE_PIXFMT
     AV_PIX_FMT_YUVJ440P,  ///< planar YUV 4:4:0 full scale (JPEG), deprecated 
in favor of PIX_FMT_YUV440P and setting color_range
+#endif /* FF_API_FULLSCALE_PIXFMT */
     AV_PIX_FMT_YUVA420P,  ///< planar YUV 4:2:0, 20bpp, (1 Cr & Cb sample per 
2x2 Y & A samples)
 #if FF_API_VDPAU
     AV_PIX_FMT_VDPAU_H264,///< H.264 HW decoding with VDPAU, data[0] contains 
a vdpau_render_state struct which contains the bitstream of the slices as well 
as various fields extracted from headers
diff --git a/libavutil/version.h b/libavutil/version.h
index 7f439d7..b431d71 100644
--- a/libavutil/version.h
+++ b/libavutil/version.h
@@ -111,6 +111,9 @@
 #ifndef FF_API_OPT_TYPE_METADATA
 #define FF_API_OPT_TYPE_METADATA        (LIBAVUTIL_VERSION_MAJOR < 54)
 #endif
+#ifndef FF_API_FULLSCALE_PIXFMT
+#define FF_API_FULLSCALE_PIXFMT         (LIBAVUTIL_VERSION_MAJOR < 52)
+#endif
 
 /**
  * @}
diff --git a/libswscale/utils.c b/libswscale/utils.c
index 7534be9..fce33ce 100644
--- a/libswscale/utils.c
+++ b/libswscale/utils.c
@@ -89,9 +89,11 @@ static const FormatEntry format_entries[AV_PIX_FMT_NB] = {
     [AV_PIX_FMT_MONOWHITE]   = { 1, 1 },
     [AV_PIX_FMT_MONOBLACK]   = { 1, 1 },
     [AV_PIX_FMT_PAL8]        = { 1, 0 },
+#if FF_API_FULLSCALE_PIXFMT
     [AV_PIX_FMT_YUVJ420P]    = { 1, 1 },
     [AV_PIX_FMT_YUVJ422P]    = { 1, 1 },
     [AV_PIX_FMT_YUVJ444P]    = { 1, 1 },
+#endif /* FF_API_FULLSCALE_PIXFMT */
     [AV_PIX_FMT_UYVY422]     = { 1, 1 },
     [AV_PIX_FMT_UYYVYY411]   = { 0, 0 },
     [AV_PIX_FMT_BGR8]        = { 1, 1 },
@@ -109,7 +111,9 @@ static const FormatEntry format_entries[AV_PIX_FMT_NB] = {
     [AV_PIX_FMT_GRAY16BE]    = { 1, 1 },
     [AV_PIX_FMT_GRAY16LE]    = { 1, 1 },
     [AV_PIX_FMT_YUV440P]     = { 1, 1 },
+#if FF_API_FULLSCALE_PIXFMT
     [AV_PIX_FMT_YUVJ440P]    = { 1, 1 },
+#endif /* FF_API_FULLSCALE_PIXFMT */
     [AV_PIX_FMT_YUVA420P]    = { 1, 1 },
     [AV_PIX_FMT_YUVA422P]    = { 1, 1 },
     [AV_PIX_FMT_YUVA444P]    = { 1, 1 },
@@ -837,6 +841,7 @@ int sws_getColorspaceDetails(struct SwsContext *c, int 
**inv_table,
 static int handle_jpeg(enum AVPixelFormat *format)
 {
     switch (*format) {
+#if FF_API_FULLSCALE_PIXFMT
     case AV_PIX_FMT_YUVJ420P:
         *format = AV_PIX_FMT_YUV420P;
         return 1;
@@ -849,6 +854,7 @@ static int handle_jpeg(enum AVPixelFormat *format)
     case AV_PIX_FMT_YUVJ440P:
         *format = AV_PIX_FMT_YUV440P;
         return 1;
+#endif /* FF_API_FULLSCALE_PIXFMT */
     default:
         return 0;
     }
-- 
1.8.3.4 (Apple Git-47)

_______________________________________________
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to