Commit dd762268 authored by Limin Wang's avatar Limin Wang

avcodec/mpeg12enc: support mpeg2 encoder const profile

Reviewed-by: 's avatarMarton Balint <cus@passwd.hu>
Signed-off-by: 's avatarLimin Wang <lance.lmwang@gmail.com>
parent b8d6d937
...@@ -2740,6 +2740,20 @@ MPEG-2 video encoder. ...@@ -2740,6 +2740,20 @@ MPEG-2 video encoder.
@subsection Options @subsection Options
@table @option @table @option
@item profile @var{integer}
Select the mpeg2 profile to encode:
@table @samp
@item 422
@item main
@item ss
Spatially Scalable
@item snr
SNR Scalable
@item high
@item simple
@end table
@item seq_disp_ext @var{integer} @item seq_disp_ext @var{integer}
Specifies if the encoder should write a sequence_display_extension to the Specifies if the encoder should write a sequence_display_extension to the
output. output.
......
...@@ -41,6 +41,7 @@ ...@@ -41,6 +41,7 @@
#include "mpeg12data.h" #include "mpeg12data.h"
#include "mpegutils.h" #include "mpegutils.h"
#include "mpegvideo.h" #include "mpegvideo.h"
#include "profiles.h"
static const uint8_t svcd_scan_offset_placeholder[] = { static const uint8_t svcd_scan_offset_placeholder[] = {
0x10, 0x0E, 0x00, 0x80, 0x81, 0x00, 0x80, 0x10, 0x0E, 0x00, 0x80, 0x81, 0x00, 0x80,
...@@ -1167,6 +1168,7 @@ static const AVOption mpeg2_options[] = { ...@@ -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" }, { "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" }, { "unspecified", NULL, 0, AV_OPT_TYPE_CONST, {.i64 = VIDEO_FORMAT_UNSPECIFIED}, 0, 0, VE, "video_format" },
FF_MPV_COMMON_OPTS FF_MPV_COMMON_OPTS
FF_MPEG2_PROFILE_OPTS
{ NULL }, { NULL },
}; };
......
...@@ -43,6 +43,14 @@ ...@@ -43,6 +43,14 @@
FF_AVCTX_PROFILE_OPTION("mpeg4_main", NULL, VIDEO, FF_PROFILE_MPEG4_MAIN)\ 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)\ FF_AVCTX_PROFILE_OPTION("mpeg4_asp", NULL, VIDEO, FF_PROFILE_MPEG4_ADVANCED_SIMPLE)\
#define FF_MPEG2_PROFILE_OPTS \
FF_AVCTX_PROFILE_OPTION("422", NULL, VIDEO, FF_PROFILE_MPEG2_422)\
FF_AVCTX_PROFILE_OPTION("high", NULL, VIDEO, FF_PROFILE_MPEG2_HIGH)\
FF_AVCTX_PROFILE_OPTION("ss", NULL, VIDEO, FF_PROFILE_MPEG2_SS)\
FF_AVCTX_PROFILE_OPTION("snr", NULL, VIDEO, FF_PROFILE_MPEG2_SNR_SCALABLE)\
FF_AVCTX_PROFILE_OPTION("main", NULL, VIDEO, FF_PROFILE_MPEG2_MAIN)\
FF_AVCTX_PROFILE_OPTION("simple", NULL, VIDEO, FF_PROFILE_MPEG2_SIMPLE)\
extern const AVProfile ff_aac_profiles[]; extern const AVProfile ff_aac_profiles[];
extern const AVProfile ff_dca_profiles[]; extern const AVProfile ff_dca_profiles[];
extern const AVProfile ff_dnxhd_profiles[]; extern const AVProfile ff_dnxhd_profiles[];
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment