[FFmpeg-devel] [PATCH] avcodec/dnxhdenc: DNxHR 444 and HQX support
Mark Reid
mindmark at gmail.com
Tue Mar 28 02:43:47 EEST 2017
On Mon, Mar 27, 2017 at 3:14 PM, Paul B Mahol <onemda at gmail.com> wrote:
> On 3/27/17, Paul B Mahol <onemda at gmail.com> wrote:
> > On 3/27/17, Mark Reid <mindmark at gmail.com> wrote:
> >> On Mon, Mar 27, 2017 at 11:08 AM, Paul B Mahol <onemda at gmail.com>
> wrote:
> >>
> >>> Signed-off-by: Paul B Mahol <onemda at gmail.com>
> >>> ---
> >>> libavcodec/dnxhdenc.c | 227 ++++++++++++++++++++++++++++++
> >>> +++++---------------
> >>> libavcodec/dnxhdenc.h | 6 +-
> >>> 2 files changed, 163 insertions(+), 70 deletions(-)
> >>>
> >
> > [...]
> >
> >>> + case AV_PIX_FMT_YUV444P10:
> >>> + case AV_PIX_FMT_GBRP10:
> >>> + ctx->bit_depth = 10;
> >>>
> >>
> >> Am I missing something, I thought the dnxhr HQX and 444 profiles were
> >> 12bit?
> >> http://avid.force.com/pkb/articles/en_US/White_Paper/
> DNxHR-Codec-Bandwidth-Specifications
> >>
> >
> > They are both 10 and 12 bit.
> >
> >> I get a failed Assertion here,
> >>
> >> Assertion nbits < ctx->bit_depth + 4 failed at libavcodec/dnxhdenc.c:837
> >> when I try the following command
> >> ./ffmpeg_g -y -f rawvideo -video_size 2048x1556 -pixel_format yuv444p10
> >> -i
> >> /dev/urandom \
> >> -loglevel debug \
> >> -vframes 5 \
> >> -profile:v "dnxhr_444" \
> >> -vcodec dnxhd \
> >> -pix_fmt yuv444p10 \
> >> test.mov
> >>
> >
> > What could be cause of that? If I try to avoid that I get ratecontrol
> > error.
>
> Actually that command is invalid as it passes > (2^10 - 1) values to
> video frame.
> Use geq="lum=random(x)*1023:cb=random(y):cr=random(z)*1023" instead.
>
okay, well I tried instead
./ffmpeg_g -y -f lavfi -i
nullsrc=s=2048x1556,geq="lum=random(1)*1023:cb=random(1):cr=random(1)*1023"
\
-vframes 5 \
-profile:v "dnxhr_444" \
-vcodec dnxhd \
-pix_fmt yuv444p10 \
test.mov
and now I get a different failed assertion:
Assertion block_w * sizeof(uint16_t) <= ((buf_linesize) >= 0 ?
(buf_linesize) : (-(buf_linesize))) failed at
libavcodec/videodsp_template.c:35
same thing happens if I use a testsrc
./ffmpeg_g -y -f lavfi -i "testsrc=size=2048x1556" \
-vframes 5 \
-profile:v "dnxhr_444" \
-vcodec dnxhd \
-pix_fmt yuv444p10 \
test.mov
also get the same assertion for the hqx profile
_______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
More information about the ffmpeg-devel
mailing list