ffmpeg | branch: master | Andreas Rheinhardt <andreas.rheinha...@outlook.com> | 
Tue Jan 25 13:08:50 2022 +0100| [d3a2d066333061fe3d9248b52d23de1e363d5b84] | 
committer: Andreas Rheinhardt

avcodec/mpeg12enc: Return early if no Sequence Header is written

Allows to avoid one level of indentation.

Signed-off-by: Andreas Rheinhardt <andreas.rheinha...@outlook.com>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=d3a2d066333061fe3d9248b52d23de1e363d5b84
---

 libavcodec/mpeg12enc.c | 9 +++++----
 1 file 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)

_______________________________________________
ffmpeg-cvslog mailing list
ffmpeg-cvslog@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog

To unsubscribe, visit link above, or email
ffmpeg-cvslog-requ...@ffmpeg.org with subject "unsubscribe".

Reply via email to