[FFmpeg-devel] [PATCH v5] avcodec/mpeg12enc: support mpeg2 encoder const profile

lance.lmwang at gmail.com lance.lmwang at gmail.com
Sat May 30 17:00:01 EEST 2020


On Fri, May 29, 2020 at 09:07:52PM +0200, Marton Balint wrote:
> 
> 
> On Fri, 29 May 2020, lance.lmwang at gmail.com wrote:
> 
> > From: Limin Wang <lance.lmwang at gmail.com>
> > 
> > Signed-off-by: Limin Wang <lance.lmwang at gmail.com>
> > ---
> > libavcodec/mpeg12enc.c | 2 ++
> > libavcodec/profiles.h  | 6 ++++++
> > 2 files changed, 8 insertions(+)
> > 
> > diff --git a/libavcodec/mpeg12enc.c b/libavcodec/mpeg12enc.c
> > index cab7076..9fbbcef 100644
> > --- a/libavcodec/mpeg12enc.c
> > +++ b/libavcodec/mpeg12enc.c
> > @@ -41,6 +41,7 @@
> > #include "mpeg12data.h"
> > #include "mpegutils.h"
> > #include "mpegvideo.h"
> > +#include "profiles.h"
> > 
> > static const uint8_t svcd_scan_offset_placeholder[] = {
> >     0x10, 0x0E, 0x00, 0x80, 0x81, 0x00, 0x80,
> > @@ -1167,6 +1168,7 @@ static const AVOption mpeg2_options[] = {
> >     {     "mac",          NULL, 0, AV_OPT_TYPE_CONST,  {.i64 = VIDEO_FORMAT_MAC        },  0, 0, VE, "video_format" },
> >     {     "unspecified",  NULL, 0, AV_OPT_TYPE_CONST,  {.i64 = VIDEO_FORMAT_UNSPECIFIED},  0, 0, VE, "video_format" },
> >     FF_MPV_COMMON_OPTS
> > +    FF_MPEG2_PROFILE_OPTS
> >     { NULL },
> > };
> > 
> > diff --git a/libavcodec/profiles.h b/libavcodec/profiles.h
> > index e414ea7..d6a139e 100644
> > --- a/libavcodec/profiles.h
> > +++ b/libavcodec/profiles.h
> > @@ -43,6 +43,12 @@
> >     FF_AVCTX_PROFILE_OPTION("mpeg4_main",    NULL, VIDEO, FF_PROFILE_MPEG4_MAIN)\
> >     FF_AVCTX_PROFILE_OPTION("mpeg4_asp",     NULL, VIDEO, FF_PROFILE_MPEG4_ADVANCED_SIMPLE)\
> > 
> > +#define FF_MPEG2_PROFILE_OPTS \
> > +    FF_AVCTX_PROFILE_OPTION("mpeg2_422",     NULL, VIDEO, FF_PROFILE_MPEG2_422)\
> > +    FF_AVCTX_PROFILE_OPTION("mpeg2_high",    NULL, VIDEO, FF_PROFILE_MPEG2_HIGH)\
> > +    FF_AVCTX_PROFILE_OPTION("mpeg2_main",    NULL, VIDEO, FF_PROFILE_MPEG2_MAIN)\
> > +    FF_AVCTX_PROFILE_OPTION("mpeg2_simple",  NULL, VIDEO, FF_PROFILE_MPEG2_SIMPLE)\
> 
> You no longer need the mpeg2 prefix. Also please add the supported profiles
> to the documentation of the mpeg2 encoder. There are also some profiles
> (spatially scalable and snr scalable) missing. Is it intentional?

I have update the patch, after further consideration, I add ss and snr scalable profile,
as user can set it by integer(2 and 3) still, so it's better to keep them consistent.
> 
> Thanks,
> Marton
> 
> > +
> > extern const AVProfile ff_aac_profiles[];
> > extern const AVProfile ff_dca_profiles[];
> > extern const AVProfile ff_dnxhd_profiles[];
> > -- 
> > 1.8.3.1
> > 
> > _______________________________________________
> > 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".

-- 
Thanks,
Limin Wang


More information about the ffmpeg-devel mailing list