diff --git a/libavcodec/ass.c b/libavcodec/ass.c
index 336c3084e4861fb981c005efa8a65208dddb77d3..56d452f7015002e37d93bb05880a9dda79c3eea5 100644
--- a/libavcodec/ass.c
+++ b/libavcodec/ass.c
@@ -30,7 +30,7 @@ int ff_ass_subtitle_header(AVCodecContext *avctx,
                            const char *font, int font_size,
                            int color, int back_color,
                            int bold, int italic, int underline,
-                           int alignment)
+                           int border_style, int alignment)
 {
     avctx->subtitle_header = av_asprintf(
              "[Script Info]\r\n"
@@ -59,7 +59,7 @@ int ff_ass_subtitle_header(AVCodecContext *avctx,
              "%d,%d,%d,0,"          /* Bold, Italic, Underline, StrikeOut */
              "100,100,"             /* Scale{X,Y} */
              "0,0,"                 /* Spacing, Angle */
-             "1,1,0,"               /* BorderStyle, Outline, Shadow */
+             "%d,1,0,"              /* BorderStyle, Outline, Shadow */
              "%d,10,10,10,"         /* Alignment, Margin[LRV] */
              "0\r\n"                /* Encoding */
 
@@ -69,7 +69,7 @@ int ff_ass_subtitle_header(AVCodecContext *avctx,
              !(avctx->flags & AV_CODEC_FLAG_BITEXACT) ? AV_STRINGIFY(LIBAVCODEC_VERSION) : "",
              ASS_DEFAULT_PLAYRESX, ASS_DEFAULT_PLAYRESY,
              font, font_size, color, color, back_color, back_color,
-             -bold, -italic, -underline, alignment);
+             -bold, -italic, -underline, border_style, alignment);
 
     if (!avctx->subtitle_header)
         return AVERROR(ENOMEM);
@@ -86,6 +86,7 @@ int ff_ass_subtitle_header_default(AVCodecContext *avctx)
                                ASS_DEFAULT_BOLD,
                                ASS_DEFAULT_ITALIC,
                                ASS_DEFAULT_UNDERLINE,
+                               ASS_DEFAULT_BORDERSTYLE,
                                ASS_DEFAULT_ALIGNMENT);
 }
 
diff --git a/libavcodec/ass.h b/libavcodec/ass.h
index 14a1ed2c162b528d4f1b04193ae1cc7fe2fcec1b..621a7ba7f3df125521c20e76a1327e6847bc5e30 100644
--- a/libavcodec/ass.h
+++ b/libavcodec/ass.h
@@ -40,6 +40,7 @@
 #define ASS_DEFAULT_ITALIC      0
 #define ASS_DEFAULT_UNDERLINE   0
 #define ASS_DEFAULT_ALIGNMENT   2
+#define ASS_DEFAULT_BORDERSTYLE 1
 /** @} */
 
 /**
@@ -61,7 +62,7 @@ int ff_ass_subtitle_header(AVCodecContext *avctx,
                            const char *font, int font_size,
                            int color, int back_color,
                            int bold, int italic, int underline,
-                           int alignment);
+                           int border_style, int alignment);
 
 /**
  * Generate a suitable AVCodecContext.subtitle_header for SUBTITLE_ASS
diff --git a/libavcodec/ccaption_dec.c b/libavcodec/ccaption_dec.c
index e3cdcc1669b9a6fdbaac0a37c413358b1666dabb..ca497e5de256c38a95cedd95a173223786a498b6 100644
--- a/libavcodec/ccaption_dec.c
+++ b/libavcodec/ccaption_dec.c
@@ -145,7 +145,15 @@ static av_cold int init_decoder(AVCodecContext *avctx)
     /* taking by default roll up to 2 */
     ctx->mode = CCMODE_ROLLUP;
     ctx->rollup = 2;
-    ret = ff_ass_subtitle_header_default(avctx);
+    ret = ff_ass_subtitle_header(avctx, "Monospace",
+                                 ASS_DEFAULT_FONT_SIZE,
+                                 ASS_DEFAULT_COLOR,
+                                 ASS_DEFAULT_BACK_COLOR,
+                                 ASS_DEFAULT_BOLD,
+                                 ASS_DEFAULT_ITALIC,
+                                 ASS_DEFAULT_UNDERLINE,
+                                 3,
+                                 ASS_DEFAULT_ALIGNMENT);
     if (ret < 0) {
         return ret;
     }
diff --git a/libavcodec/microdvddec.c b/libavcodec/microdvddec.c
index 903589220586d4955bfb0b2822efa71d0c028856..46d6d1473b424a336345e4b0c5482954c49fdca7 100644
--- a/libavcodec/microdvddec.c
+++ b/libavcodec/microdvddec.c
@@ -370,7 +370,8 @@ static int microdvd_init(AVCodecContext *avctx)
     }
     return ff_ass_subtitle_header(avctx, font_buf.str, font_size, color,
                                   ASS_DEFAULT_BACK_COLOR, bold, italic,
-                                  underline, alignment);
+                                  underline, ASS_DEFAULT_BORDERSTYLE,
+                                  alignment);
 }
 
 AVCodec ff_microdvd_decoder = {
diff --git a/libavcodec/movtextdec.c b/libavcodec/movtextdec.c
index 257d5986f5471b430e66ffba7ea2a33c4c88cb32..8d0e8141d318de0d886878ffee6b81dbd9ef178c 100644
--- a/libavcodec/movtextdec.c
+++ b/libavcodec/movtextdec.c
@@ -413,7 +413,8 @@ static int mov_text_init(AVCodecContext *avctx) {
     if (ret == 0) {
         return ff_ass_subtitle_header(avctx, m->d.font, m->d.fontsize, m->d.color,
                                 m->d.back_color, m->d.bold, m->d.italic,
-                                m->d.underline, m->d.alignment);
+                                m->d.underline, ASS_DEFAULT_BORDERSTYLE,
+                                m->d.alignment);
     } else
         return ff_ass_subtitle_header_default(avctx);
 }
diff --git a/tests/ref/fate/sub-cc b/tests/ref/fate/sub-cc
index e8086a8527ae71a7bd7bd8458db57bcc6275987c..c60c6606b26624c28bdfbf49508b8df8ecbab84c 100644
--- a/tests/ref/fate/sub-cc
+++ b/tests/ref/fate/sub-cc
@@ -6,7 +6,7 @@ PlayResY: 288
 
 [V4+ Styles]
 Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, OutlineColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, Encoding
-Style: Default,Arial,16,&Hffffff,&Hffffff,&H0,&H0,0,0,0,0,100,100,0,0,1,1,0,2,10,10,10,0
+Style: Default,Arial,16,&Hffffff,&Hffffff,&H0,&H0,0,0,0,0,100,100,0,0,3,1,0,2,10,10,10,0
 
 [Events]
 Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text