diff --git a/libavcodec/mpeg12.c b/libavcodec/mpeg12.c
index a4d878ba8b45216b4982d0d8ae02d3efab44676b..8ec8f56755e7a5bca2020f619b1748b53b038a72 100644
--- a/libavcodec/mpeg12.c
+++ b/libavcodec/mpeg12.c
@@ -2150,7 +2150,7 @@ static void mpeg_decode_sequence_extension(Mpeg1Context *s1)
     s->width |= (horiz_size_ext << 12);
     s->height |= (vert_size_ext << 12);
     bit_rate_ext = get_bits(&s->gb, 12);  /* XXX: handle it */
-    s->bit_rate += (bit_rate_ext << 12) * 400;
+    s->bit_rate += (bit_rate_ext << 18) * 400;
     skip_bits1(&s->gb); /* marker */
     s->avctx->rc_buffer_size += get_bits(&s->gb, 8)*1024*16<<10;