Re: [FFmpeg-devel] [PATCH 2/2] lavfi/showinfo: support regions of interest sidedata
On Sat, Mar 9, 2019 at 11:44 PM Thomas Xu wrote: > > +for (int index = 0; index < nb_rois; index++) { > +av_log(ctx, AV_LOG_INFO, "index: %d, region: (%d %d)/(%d %d), qp > offset: %d/%d", > + index, roi->left, roi->top, roi->right, roi->bottom, > roi->qoffset.num, roi->qoffset.den); > +} > > pointer roi never ++, it always point to the first > AVRegionOfInterest structure. Thanks the catch, this issue have been solved in local repository, will update other version after some dependencies merge, ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".
Re: [FFmpeg-devel] [PATCH 2/2] lavfi/showinfo: support regions of interest sidedata
+for (int index = 0; index < nb_rois; index++) { +av_log(ctx, AV_LOG_INFO, "index: %d, region: (%d %d)/(%d %d), qp offset: %d/%d", + index, roi->left, roi->top, roi->right, roi->bottom, roi->qoffset.num, roi->qoffset.den); +} pointer roi never ++, it always point to the first AVRegionOfInterest structure. On Sat, Mar 9, 2019 at 5:36 PM Guo, Yejun wrote: > > > > -Original Message- > > From: ffmpeg-devel [mailto:ffmpeg-devel-boun...@ffmpeg.org] On Behalf > > Of Jun Zhao > > Sent: Saturday, March 09, 2019 4:34 PM > > To: ffmpeg-devel@ffmpeg.org > > Cc: Jun Zhao > > Subject: [FFmpeg-devel] [PATCH 2/2] lavfi/showinfo: support regions of > > interest sidedata > > > > From: Jun Zhao > > > > support regions of interest sidedata > > > > Signed-off-by: Jun Zhao > > --- > > libavfilter/vf_showinfo.c | 23 +++ > > 1 files changed, 23 insertions(+), 0 deletions(-) > > > > diff --git a/libavfilter/vf_showinfo.c b/libavfilter/vf_showinfo.c > > index 9e84197..b51c1ae 100644 > > --- a/libavfilter/vf_showinfo.c > > +++ b/libavfilter/vf_showinfo.c > > @@ -111,6 +111,26 @@ static void dump_stereo3d(AVFilterContext *ctx, > > AVFrameSideData *sd) > > av_log(ctx, AV_LOG_INFO, " (inverted)"); > > } > > > > +static void dump_roi(AVFilterContext *ctx, AVFrameSideData *sd) > > +{ > > +AVRegionOfInterest *roi; > > +int nb_rois; > > + > > +if (sd->size < sizeof(*roi)) { > > +av_log(ctx, AV_LOG_INFO, "invalid data"); > > +return; > > +} > > roi = (const AVRegionOfInterest *)sd->data; > if (roi->self_size == 0 || sd->size % roi->self_size != 0) { > //report error and return. > } > > > + > > +roi = (AVRegionOfInterest *)sd->data; > > +nb_rois = sd->size / sizeof(*roi); > > nb_rois = sd->size / roi->self_size; > > > + > > +av_log(ctx, AV_LOG_INFO, "Regions Of Interest(RoI) informations: "); > > +for (int index = 0; index < nb_rois; index++) { > > +av_log(ctx, AV_LOG_INFO, "index: %d, region: (%d %d)/(%d %d), qp > > offset: %d/%d", > > + index, roi->left, roi->top, roi->right, roi->bottom, > roi->qoffset.num, > > roi->qoffset.den); > > +} > > +} > > + > > static void dump_color_property(AVFilterContext *ctx, AVFrame *frame) > > { > > const char *color_range_str = av_color_range_name(frame- > > >color_range); > > @@ -246,6 +266,9 @@ static int filter_frame(AVFilterLink *inlink, AVFrame > > *frame) > > case AV_FRAME_DATA_AFD: > > av_log(ctx, AV_LOG_INFO, "afd: value of %"PRIu8, > sd->data[0]); > > break; > > +case AV_FRAME_DATA_REGIONS_OF_INTEREST: > > +dump_roi(ctx, sd); > > +break; > > default: > > av_log(ctx, AV_LOG_WARNING, "unknown side data type %d (%d > > bytes)", > > sd->type, sd->size); > > -- > > 1.7.1 > > > > ___ > > ffmpeg-devel mailing list > > ffmpeg-devel@ffmpeg.org > > https://ffmpeg.org/mailman/listinfo/ffmpeg-devel > ___ > ffmpeg-devel mailing list > ffmpeg-devel@ffmpeg.org > https://ffmpeg.org/mailman/listinfo/ffmpeg-devel > ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
Re: [FFmpeg-devel] [PATCH 2/2] lavfi/showinfo: support regions of interest sidedata
> -Original Message- > From: ffmpeg-devel [mailto:ffmpeg-devel-boun...@ffmpeg.org] On Behalf > Of Jun Zhao > Sent: Saturday, March 09, 2019 4:34 PM > To: ffmpeg-devel@ffmpeg.org > Cc: Jun Zhao > Subject: [FFmpeg-devel] [PATCH 2/2] lavfi/showinfo: support regions of > interest sidedata > > From: Jun Zhao > > support regions of interest sidedata > > Signed-off-by: Jun Zhao > --- > libavfilter/vf_showinfo.c | 23 +++ > 1 files changed, 23 insertions(+), 0 deletions(-) > > diff --git a/libavfilter/vf_showinfo.c b/libavfilter/vf_showinfo.c > index 9e84197..b51c1ae 100644 > --- a/libavfilter/vf_showinfo.c > +++ b/libavfilter/vf_showinfo.c > @@ -111,6 +111,26 @@ static void dump_stereo3d(AVFilterContext *ctx, > AVFrameSideData *sd) > av_log(ctx, AV_LOG_INFO, " (inverted)"); > } > > +static void dump_roi(AVFilterContext *ctx, AVFrameSideData *sd) > +{ > +AVRegionOfInterest *roi; > +int nb_rois; > + > +if (sd->size < sizeof(*roi)) { > +av_log(ctx, AV_LOG_INFO, "invalid data"); > +return; > +} roi = (const AVRegionOfInterest *)sd->data; if (roi->self_size == 0 || sd->size % roi->self_size != 0) { //report error and return. } > + > +roi = (AVRegionOfInterest *)sd->data; > +nb_rois = sd->size / sizeof(*roi); nb_rois = sd->size / roi->self_size; > + > +av_log(ctx, AV_LOG_INFO, "Regions Of Interest(RoI) informations: "); > +for (int index = 0; index < nb_rois; index++) { > +av_log(ctx, AV_LOG_INFO, "index: %d, region: (%d %d)/(%d %d), qp > offset: %d/%d", > + index, roi->left, roi->top, roi->right, roi->bottom, > roi->qoffset.num, > roi->qoffset.den); > +} > +} > + > static void dump_color_property(AVFilterContext *ctx, AVFrame *frame) > { > const char *color_range_str = av_color_range_name(frame- > >color_range); > @@ -246,6 +266,9 @@ static int filter_frame(AVFilterLink *inlink, AVFrame > *frame) > case AV_FRAME_DATA_AFD: > av_log(ctx, AV_LOG_INFO, "afd: value of %"PRIu8, sd->data[0]); > break; > +case AV_FRAME_DATA_REGIONS_OF_INTEREST: > +dump_roi(ctx, sd); > +break; > default: > av_log(ctx, AV_LOG_WARNING, "unknown side data type %d (%d > bytes)", > sd->type, sd->size); > -- > 1.7.1 > > ___ > ffmpeg-devel mailing list > ffmpeg-devel@ffmpeg.org > https://ffmpeg.org/mailman/listinfo/ffmpeg-devel ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
[FFmpeg-devel] [PATCH 2/2] lavfi/showinfo: support regions of interest sidedata
From: Jun Zhao support regions of interest sidedata Signed-off-by: Jun Zhao --- libavfilter/vf_showinfo.c | 23 +++ 1 files changed, 23 insertions(+), 0 deletions(-) diff --git a/libavfilter/vf_showinfo.c b/libavfilter/vf_showinfo.c index 9e84197..b51c1ae 100644 --- a/libavfilter/vf_showinfo.c +++ b/libavfilter/vf_showinfo.c @@ -111,6 +111,26 @@ static void dump_stereo3d(AVFilterContext *ctx, AVFrameSideData *sd) av_log(ctx, AV_LOG_INFO, " (inverted)"); } +static void dump_roi(AVFilterContext *ctx, AVFrameSideData *sd) +{ +AVRegionOfInterest *roi; +int nb_rois; + +if (sd->size < sizeof(*roi)) { +av_log(ctx, AV_LOG_INFO, "invalid data"); +return; +} + +roi = (AVRegionOfInterest *)sd->data; +nb_rois = sd->size / sizeof(*roi); + +av_log(ctx, AV_LOG_INFO, "Regions Of Interest(RoI) informations: "); +for (int index = 0; index < nb_rois; index++) { +av_log(ctx, AV_LOG_INFO, "index: %d, region: (%d %d)/(%d %d), qp offset: %d/%d", + index, roi->left, roi->top, roi->right, roi->bottom, roi->qoffset.num, roi->qoffset.den); +} +} + static void dump_color_property(AVFilterContext *ctx, AVFrame *frame) { const char *color_range_str = av_color_range_name(frame->color_range); @@ -246,6 +266,9 @@ static int filter_frame(AVFilterLink *inlink, AVFrame *frame) case AV_FRAME_DATA_AFD: av_log(ctx, AV_LOG_INFO, "afd: value of %"PRIu8, sd->data[0]); break; +case AV_FRAME_DATA_REGIONS_OF_INTEREST: +dump_roi(ctx, sd); +break; default: av_log(ctx, AV_LOG_WARNING, "unknown side data type %d (%d bytes)", sd->type, sd->size); -- 1.7.1 ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel