* [FFmpeg-devel] [PATCH 2/3] avcodec/libuavs3d: use output_reorder_delay as has_b_frames [not found] <20220513094049.86179-1-quinkblack@foxmail.com> @ 2022-05-13 9:40 ` Zhao Zhili 2022-05-14 1:04 ` mypopy 2022-05-13 9:40 ` [FFmpeg-devel] [PATCH 3/3] avcodec/libdavs2: export has_b_frames info Zhao Zhili 1 sibling, 1 reply; 4+ messages in thread From: Zhao Zhili @ 2022-05-13 9:40 UTC (permalink / raw) To: ffmpeg-devel; +Cc: Zhao Zhili has_b_frames is more than a bool, it's the size of the frame reordering buffer in the decoder. --- libavcodec/libuavs3d.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavcodec/libuavs3d.c b/libavcodec/libuavs3d.c index 23de4c8cd5..e911963a41 100644 --- a/libavcodec/libuavs3d.c +++ b/libavcodec/libuavs3d.c @@ -206,7 +206,7 @@ static int libuavs3d_decode_frame(AVCodecContext *avctx, AVFrame *frm, avctx->framerate.num = ff_avs3_frame_rate_tab[seqh->frame_rate_code].num; avctx->framerate.den = ff_avs3_frame_rate_tab[seqh->frame_rate_code].den; } - avctx->has_b_frames = !seqh->low_delay; + avctx->has_b_frames = seqh->output_reorder_delay; avctx->pix_fmt = seqh->bit_depth_internal == 8 ? AV_PIX_FMT_YUV420P : AV_PIX_FMT_YUV420P10LE; ret = ff_set_dimensions(avctx, seqh->horizontal_size, seqh->vertical_size); if (ret < 0) -- 2.35.3 _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe". ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [FFmpeg-devel] [PATCH 2/3] avcodec/libuavs3d: use output_reorder_delay as has_b_frames 2022-05-13 9:40 ` [FFmpeg-devel] [PATCH 2/3] avcodec/libuavs3d: use output_reorder_delay as has_b_frames Zhao Zhili @ 2022-05-14 1:04 ` mypopy 2022-05-14 3:39 ` "zhilizhao(赵志立)" 0 siblings, 1 reply; 4+ messages in thread From: mypopy @ 2022-05-14 1:04 UTC (permalink / raw) To: FFmpeg development discussions and patches; +Cc: Zhao Zhili On Fri, May 13, 2022 at 5:41 PM Zhao Zhili <quinkblack@foxmail.com> wrote: > > has_b_frames is more than a bool, it's the size of the frame > reordering buffer in the decoder. > --- > libavcodec/libuavs3d.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/libavcodec/libuavs3d.c b/libavcodec/libuavs3d.c > index 23de4c8cd5..e911963a41 100644 > --- a/libavcodec/libuavs3d.c > +++ b/libavcodec/libuavs3d.c > @@ -206,7 +206,7 @@ static int libuavs3d_decode_frame(AVCodecContext *avctx, AVFrame *frm, > avctx->framerate.num = ff_avs3_frame_rate_tab[seqh->frame_rate_code].num; > avctx->framerate.den = ff_avs3_frame_rate_tab[seqh->frame_rate_code].den; > } > - avctx->has_b_frames = !seqh->low_delay; > + avctx->has_b_frames = seqh->output_reorder_delay; The same case, AVS3 uses output_reorder_delay but AVS2 uses low_delay, which is a bit strange > avctx->pix_fmt = seqh->bit_depth_internal == 8 ? AV_PIX_FMT_YUV420P : AV_PIX_FMT_YUV420P10LE; > ret = ff_set_dimensions(avctx, seqh->horizontal_size, seqh->vertical_size); > if (ret < 0) > -- _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe". ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [FFmpeg-devel] [PATCH 2/3] avcodec/libuavs3d: use output_reorder_delay as has_b_frames 2022-05-14 1:04 ` mypopy @ 2022-05-14 3:39 ` "zhilizhao(赵志立)" 0 siblings, 0 replies; 4+ messages in thread From: "zhilizhao(赵志立)" @ 2022-05-14 3:39 UTC (permalink / raw) To: FFmpeg development discussions and patches; +Cc: mypopy > On May 14, 2022, at 9:04 AM, mypopy@gmail.com wrote: > > On Fri, May 13, 2022 at 5:41 PM Zhao Zhili <quinkblack@foxmail.com> wrote: >> >> has_b_frames is more than a bool, it's the size of the frame >> reordering buffer in the decoder. >> --- >> libavcodec/libuavs3d.c | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/libavcodec/libuavs3d.c b/libavcodec/libuavs3d.c >> index 23de4c8cd5..e911963a41 100644 >> --- a/libavcodec/libuavs3d.c >> +++ b/libavcodec/libuavs3d.c >> @@ -206,7 +206,7 @@ static int libuavs3d_decode_frame(AVCodecContext *avctx, AVFrame *frm, >> avctx->framerate.num = ff_avs3_frame_rate_tab[seqh->frame_rate_code].num; >> avctx->framerate.den = ff_avs3_frame_rate_tab[seqh->frame_rate_code].den; >> } >> - avctx->has_b_frames = !seqh->low_delay; >> + avctx->has_b_frames = seqh->output_reorder_delay; > The same case, AVS3 uses output_reorder_delay but AVS2 uses low_delay, > which is a bit strange Patch 3/3 explains why: it should be picture_reorder_delay, but it’s not available in libdavs2’s public API. >> avctx->pix_fmt = seqh->bit_depth_internal == 8 ? AV_PIX_FMT_YUV420P : AV_PIX_FMT_YUV420P10LE; >> ret = ff_set_dimensions(avctx, seqh->horizontal_size, seqh->vertical_size); >> if (ret < 0) >> -- _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe". ^ permalink raw reply [flat|nested] 4+ messages in thread
* [FFmpeg-devel] [PATCH 3/3] avcodec/libdavs2: export has_b_frames info [not found] <20220513094049.86179-1-quinkblack@foxmail.com> 2022-05-13 9:40 ` [FFmpeg-devel] [PATCH 2/3] avcodec/libuavs3d: use output_reorder_delay as has_b_frames Zhao Zhili @ 2022-05-13 9:40 ` Zhao Zhili 1 sibling, 0 replies; 4+ messages in thread From: Zhao Zhili @ 2022-05-13 9:40 UTC (permalink / raw) To: ffmpeg-devel; +Cc: Zhao Zhili More precisely, we should use picture_reorder_delay, but it's unavailable yet. --- libavcodec/libdavs2.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/libavcodec/libdavs2.c b/libavcodec/libdavs2.c index a47027d300..bc31745a4f 100644 --- a/libavcodec/libdavs2.c +++ b/libavcodec/libdavs2.c @@ -78,6 +78,12 @@ static int davs2_dump_frames(AVCodecContext *avctx, davs2_picture_t *pic, int *g avctx->height = headerset->height; avctx->pix_fmt = headerset->output_bit_depth == 10 ? AV_PIX_FMT_YUV420P10 : AV_PIX_FMT_YUV420P; + /* It should be picture_reorder_delay, but libdavs2 doesn't export that + * info. + * Use FFMAX since has_b_frames could be set by AVS2 parser in theory, + * which doesn't do it yet. + */ + avctx->has_b_frames = FFMAX(avctx->has_b_frames, !headerset->low_delay); avctx->framerate = av_d2q(headerset->frame_rate,4096); *got_frame = 0; -- 2.35.3 _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe". ^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2022-05-14 3:39 UTC | newest] Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- [not found] <20220513094049.86179-1-quinkblack@foxmail.com> 2022-05-13 9:40 ` [FFmpeg-devel] [PATCH 2/3] avcodec/libuavs3d: use output_reorder_delay as has_b_frames Zhao Zhili 2022-05-14 1:04 ` mypopy 2022-05-14 3:39 ` "zhilizhao(赵志立)" 2022-05-13 9:40 ` [FFmpeg-devel] [PATCH 3/3] avcodec/libdavs2: export has_b_frames info Zhao Zhili
Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel This inbox may be cloned and mirrored by anyone: git clone --mirror https://master.gitmailbox.com/ffmpegdev/0 ffmpegdev/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 ffmpegdev ffmpegdev/ https://master.gitmailbox.com/ffmpegdev \ ffmpegdev@gitmailbox.com public-inbox-index ffmpegdev Example config snippet for mirrors. AGPL code for this site: git clone https://public-inbox.org/public-inbox.git