[FFmpeg-trac] #7280(avcodec:new): dnxhdenc.c forces DNxHR HQX to 10-bit, but it should be 12-bit

FFmpeg trac at avcodec.org
Tue Jun 26 23:28:42 EEST 2018


#7280: dnxhdenc.c forces DNxHR HQX to 10-bit, but it should be 12-bit
-------------------------------------+-------------------------------------
             Reporter:               |                     Type:  defect
  electron.rotoscope                 |                 Priority:  important
               Status:  new          |                  Version:
            Component:  avcodec      |  unspecified
             Keywords:  DNxHR HQX    |               Blocked By:
  depth yuv422p12le                  |  Reproduced by developer:  0
             Blocking:               |
Analyzed by developer:  0            |
-------------------------------------+-------------------------------------
 According to the Avid specifications for the DNxHR HQX and DNxHR 444
 formats, they should always be 12-bit as shown on
 http://avid.force.com/pkb/articles/en_US/White_Paper/DNxHR-Codec-
 Bandwidth-Specifications in the section "DNxHR Key"

 The current version of ffmpeg forces the output to 10-bit. This is
 referenced (as far as I can tell) in lines 385 to 398 of
 libavcodec\dnxhdenc.c

 {{{
     if ((ctx->profile == FF_PROFILE_DNXHR_444 && (avctx->pix_fmt !=
 AV_PIX_FMT_YUV444P10 &&
                                                   avctx->pix_fmt !=
 AV_PIX_FMT_GBRP10)) ||
         (ctx->profile != FF_PROFILE_DNXHR_444 && (avctx->pix_fmt ==
 AV_PIX_FMT_YUV444P10 ||
                                                   avctx->pix_fmt ==
 AV_PIX_FMT_GBRP10))) {
         av_log(avctx, AV_LOG_ERROR,
                "pixel format is incompatible with DNxHD profile\n");
         return AVERROR(EINVAL);
     }

     if (ctx->profile == FF_PROFILE_DNXHR_HQX && avctx->pix_fmt !=
 AV_PIX_FMT_YUV422P10) {
         av_log(avctx, AV_LOG_ERROR,
                "pixel format is incompatible with DNxHR HQX profile\n");
         return AVERROR(EINVAL);
     }
 }}}

 It looks like this may have been discussed in 2016 but maybe never
 implemented, not sure https://ffmpeg.org/pipermail/ffmpeg-
 devel/2016-August/197897.html

--
Ticket URL: <https://trac.ffmpeg.org/ticket/7280>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list