aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndreas Rheinhardt <andreas.rheinhardt@outlook.com>2022-01-25 13:08:50 +0100
committerAndreas Rheinhardt <andreas.rheinhardt@outlook.com>2022-01-29 18:34:30 +0100
commitd3a2d066333061fe3d9248b52d23de1e363d5b84 (patch)
treec87ea6781ad3d6d02ddb6e84bc8296cbef1b78b9
parentf05ba7b169f95a980dac8193a1065737fb9d3435 (diff)
downloadffmpeg-d3a2d066333061fe3d9248b52d23de1e363d5b84.tar.gz
avcodec/mpeg12enc: Return early if no Sequence Header is written
Allows to avoid one level of indentation. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
-rw-r--r--libavcodec/mpeg12enc.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/libavcodec/mpeg12enc.c b/libavcodec/mpeg12enc.c
index a19100a42d..e30e41027c 100644
--- a/libavcodec/mpeg12enc.c
+++ b/libavcodec/mpeg12enc.c
@@ -264,16 +264,18 @@ static void mpeg1_encode_sequence_header(MpegEncContext *s)
MPEG12EncContext *const mpeg12 = (MPEG12EncContext*)s;
unsigned int vbv_buffer_size, fps, v;
int i, constraint_parameter_flag;
+ AVRational framerate = ff_mpeg12_frame_rate_tab[s->frame_rate_index];
uint64_t time_code;
int64_t best_aspect_error = INT64_MAX;
AVRational aspect_ratio = s->avctx->sample_aspect_ratio;
+ int aspect_ratio_info;
+
+ if (!s->current_picture.f->key_frame)
+ return;
if (aspect_ratio.num == 0 || aspect_ratio.den == 0)
aspect_ratio = (AVRational){1,1}; // pixel aspect 1.1 (VGA)
- if (s->current_picture.f->key_frame) {
- AVRational framerate = ff_mpeg12_frame_rate_tab[s->frame_rate_index];
- int aspect_ratio_info;
/* MPEG-1 header repeated every GOP */
put_header(s, SEQ_START_CODE);
@@ -414,7 +416,6 @@ static void mpeg1_encode_sequence_header(MpegEncContext *s)
put_bits(&s->pb, 6, (uint32_t)((time_code % fps)));
put_bits(&s->pb, 1, !!(s->avctx->flags & AV_CODEC_FLAG_CLOSED_GOP) || s->intra_only || !s->gop_picture_number);
put_bits(&s->pb, 1, 0); // broken link
- }
}
static inline void encode_mb_skip_run(MpegEncContext *s, int run)