[FFmpeg-devel] [PATCH v1] avfilter/showinfo: support Content Light Level information

Limin Wang lance.lmwang at gmail.com
Fri Aug 9 06:05:44 EEST 2019


On Fri, Aug 09, 2019 at 10:50:10AM +0800, mypopy at gmail.com wrote:
> On Fri, Aug 9, 2019 at 10:36 AM <lance.lmwang at gmail.com> wrote:
> >
> > From: Limin Wang <lance.lmwang at gmail.com>
> >
> > show real information instead of the unknown side data type message for HDR10 stream
> >
> > Signed-off-by: Limin Wang <lance.lmwang at gmail.com>
> > ---
> >  libavfilter/vf_showinfo.c | 12 ++++++++++++
> >  1 file changed, 12 insertions(+)
> >
> > diff --git a/libavfilter/vf_showinfo.c b/libavfilter/vf_showinfo.c
> > index 9fa322e404..3c13f11524 100644
> > --- a/libavfilter/vf_showinfo.c
> > +++ b/libavfilter/vf_showinfo.c
> > @@ -160,6 +160,15 @@ static void dump_mastering_display(AVFilterContext *ctx, AVFrameSideData *sd)
> >             av_q2d(mastering_display->min_luminance), av_q2d(mastering_display->max_luminance));
> >  }
> >
> > +static void dump_content_light_metadata(AVFilterContext *ctx, AVFrameSideData *sd)
> > +{
> > +    AVContentLightMetadata* metadata = (AVContentLightMetadata*)sd->data;
> > +
> Add invaild data check? other part is Ok for me

IMO, the medata memory is allocate by av_content_light_metadata_create_side_data() api, it's valid already,
there is no need to check the size.

> > +    av_log(ctx, AV_LOG_INFO, "Content Light Level information: "
> > +           "MaxCLL=%d, MaxFALL=%d",
> > +           metadata->MaxCLL, metadata->MaxFALL);
> > +}
> > +
> >  static void dump_color_property(AVFilterContext *ctx, AVFrame *frame)
> >  {
> >      const char *color_range_str     = av_color_range_name(frame->color_range);
> > @@ -301,6 +310,9 @@ static int filter_frame(AVFilterLink *inlink, AVFrame *frame)
> >          case AV_FRAME_DATA_MASTERING_DISPLAY_METADATA:
> >              dump_mastering_display(ctx, sd);
> >              break;
> > +        case AV_FRAME_DATA_CONTENT_LIGHT_LEVEL:
> > +            dump_content_light_metadata(ctx, sd);
> > +            break;
> >          default:
> >              av_log(ctx, AV_LOG_WARNING, "unknown side data type %d (%d bytes)",
> >                     sd->type, sd->size);
> > --
> > 2.21.0
> >


More information about the ffmpeg-devel mailing list