aboutsummaryrefslogtreecommitdiffstats
path: root/libavcodec/mpegvideo_enc.c
diff options
context:
space:
mode:
authorAndreas Rheinhardt <andreas.rheinhardt@outlook.com>2022-10-02 22:26:14 +0200
committerAndreas Rheinhardt <andreas.rheinhardt@outlook.com>2022-10-06 15:00:21 +0200
commitaaf4109a5f36f4a481c6d278fda6f180d31c5802 (patch)
treea278ea50e612ea8044886e8891059832ab0d0bd5 /libavcodec/mpegvideo_enc.c
parent4e26bd7ad72daf707afa664076be56e40d548fb5 (diff)
downloadffmpeg-aaf4109a5f36f4a481c6d278fda6f180d31c5802.tar.gz
avcodec/mpegvideo_enc: Call ff_mpeg1_encode_init() earlier
It does not require anything that is being set between the new position where it is called and the old position where it used to be called; and nothing that it sets gets overwritten between these two positions. Doing so allows to remove a check lateron. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
Diffstat (limited to 'libavcodec/mpegvideo_enc.c')
-rw-r--r--libavcodec/mpegvideo_enc.c17
1 files changed, 7 insertions, 10 deletions
diff --git a/libavcodec/mpegvideo_enc.c b/libavcodec/mpegvideo_enc.c
index 2d305b9bf2..2cbb856866 100644
--- a/libavcodec/mpegvideo_enc.c
+++ b/libavcodec/mpegvideo_enc.c
@@ -647,17 +647,17 @@ av_cold int ff_mpv_encode_init(AVCodecContext *avctx)
s->time_increment_bits = av_log2(avctx->time_base.den - 1) + 1;
switch (avctx->codec->id) {
- case AV_CODEC_ID_MPEG1VIDEO:
- s->out_format = FMT_MPEG1;
- s->low_delay = !!(avctx->flags & AV_CODEC_FLAG_LOW_DELAY);
- avctx->delay = s->low_delay ? 0 : (s->max_b_frames + 1);
- break;
+#if CONFIG_MPEG1VIDEO_ENCODER || CONFIG_MPEG2VIDEO_ENCODER
case AV_CODEC_ID_MPEG2VIDEO:
+ s->rtp_mode = 1;
+ /* fallthrough */
+ case AV_CODEC_ID_MPEG1VIDEO:
s->out_format = FMT_MPEG1;
s->low_delay = !!(avctx->flags & AV_CODEC_FLAG_LOW_DELAY);
avctx->delay = s->low_delay ? 0 : (s->max_b_frames + 1);
- s->rtp_mode = 1;
+ ff_mpeg1_encode_init(s);
break;
+#endif
#if CONFIG_MJPEG_ENCODER || CONFIG_AMV_ENCODER
case AV_CODEC_ID_MJPEG:
case AV_CODEC_ID_AMV:
@@ -895,10 +895,7 @@ av_cold int ff_mpv_encode_init(AVCodecContext *avctx)
ff_set_cmp(&s->mecc, s->mecc.ildct_cmp, avctx->ildct_cmp);
ff_set_cmp(&s->mecc, s->mecc.frame_skip_cmp, s->frame_skip_cmp);
- if ((CONFIG_MPEG1VIDEO_ENCODER || CONFIG_MPEG2VIDEO_ENCODER)
- && s->out_format == FMT_MPEG1) {
- ff_mpeg1_encode_init(s);
- } else if (CONFIG_H263_ENCODER && s->out_format == FMT_H263) {
+ if (CONFIG_H263_ENCODER && s->out_format == FMT_H263) {
ff_h263_encode_init(s);
if (CONFIG_MSMPEG4ENC && s->msmpeg4_version)
ff_msmpeg4_encode_init(s);