[FFmpeg-devel] [PATCH v5 2/2] avcodec/libvpxenc: add a way to explicitly set temporal layer id

Wonkap Jang wonkap at google.com
Thu Feb 6 18:35:40 EET 2020


Hi James,

On Wed, Feb 5, 2020 at 5:29 PM James Zern <jzern-at-google.com at ffmpeg.org>
wrote:

> On Mon, Feb 3, 2020 at 5:45 PM Wonkap Jang
> <wonkap-at-google.com at ffmpeg.org> wrote:
> >
> > Hi
> >
> > On Mon, Feb 3, 2020 at 12:45 PM James Zern <
> jzern-at-google.com at ffmpeg.org>
> > wrote:
> >
> > > On Mon, Feb 3, 2020 at 10:02 AM Wonkap Jang
> > > <wonkap-at-google.com at ffmpeg.org> wrote:
> > > >
> > > > In order for rate control to correctly allocate bitrate to each
> temporal
> > > > layer, correct temporal layer id has to be set to each frame. This
> > > > commit provides the ability to set correct temporal layer id for each
> > > > frame.
> > > > ---
> > > >  libavcodec/libvpxenc.c | 13 ++++++++++++-
> > > >  1 file changed, 12 insertions(+), 1 deletion(-)
> > > >
> > > > diff --git a/libavcodec/libvpxenc.c b/libavcodec/libvpxenc.c
> > > > index 6fca05e6b1..2093aa8bca 100644
> > > > --- a/libavcodec/libvpxenc.c
> > > > +++ b/libavcodec/libvpxenc.c
> > > > @@ -1519,11 +1519,22 @@ static int vpx_encode(AVCodecContext *avctx,
> > > AVPacket *pkt,
> > > >  #endif
> > > >          if (frame->pict_type == AV_PICTURE_TYPE_I)
> > > >              flags |= VPX_EFLAG_FORCE_KF;
> > > > -        if (CONFIG_LIBVPX_VP8_ENCODER && avctx->codec_id ==
> > > AV_CODEC_ID_VP8 && frame->metadata) {
> > > > +        if (frame->metadata) {
> > > >              AVDictionaryEntry* en = av_dict_get(frame->metadata,
> > > "vp8-flags", NULL, 0);
> > >
> > > I think you'll want to check the codec being used for this one still.
> > > _______________________________________________
> > > ffmpeg-devel mailing list
> > > ffmpeg-devel at ffmpeg.org
> > > https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
> > >
> > > To unsubscribe, visit link above, or email
> > > ffmpeg-devel-request at ffmpeg.org with subject "unsubscribe".
> >
> >
> > You want me to check whether it is vp8 or vp9? because... the flags will
> > work for both, right?
> >
>
> I meant specifically the field called 'vp8-flags', but looking again
> that looks mostly like it was misnamed. I think there's a mention in
> doc/encoders.texi about metadata, should that be updated to make
> explicit reference to this field?
>
> > If the flags work for both vp8 and vp9, the codec type doesn't have to be
> > checked, no?
> >
> > Thanks,
> >
> > Wonkap
> > _______________________________________________
> > ffmpeg-devel mailing list
> > ffmpeg-devel at ffmpeg.org
> > https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
> >
> > To unsubscribe, visit link above, or email
> > ffmpeg-devel-request at ffmpeg.org with subject "unsubscribe".
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
> To unsubscribe, visit link above, or email
> ffmpeg-devel-request at ffmpeg.org with subject "unsubscribe".


So.. what is your suggestion?
just mention in the doc that the vp8-flags is used for both vp8 and vp9 and
how it is used?

Wonkap


More information about the ffmpeg-devel mailing list