]> git.sesse.net Git - ffmpeg/commitdiff
lavc/movtextdec: fix ass header colors
authorJohn Stebbins <jstebbins@jetheaddev.com>
Sat, 4 Apr 2020 16:51:04 +0000 (10:51 -0600)
committerPhilip Langdale <philipl@overt.org>
Fri, 10 Apr 2020 16:32:13 +0000 (09:32 -0700)
A conversion from rgb to bgr is necessary

Signed-off-by: Philip Langdale <philipl@overt.org>
libavcodec/movtextdec.c

index c38c5edce67838f169bfcd1d79668c782980b893..05becaf64d17751501fac9f3edb8a4c4c1d4f824 100644 (file)
@@ -48,6 +48,8 @@
 #define TOP_CENTER      8
 #define TOP_RIGHT       9
 
+#define RGB_TO_BGR(c) (((c) & 0xff) << 16 | ((c) & 0xff00) | (((c) >> 16) & 0xff))
+
 typedef struct {
     char *font;
     int fontsize;
@@ -448,10 +450,11 @@ static int mov_text_init(AVCodecContext *avctx) {
     MovTextContext *m = avctx->priv_data;
     ret = mov_text_tx3g(avctx, m);
     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, ASS_DEFAULT_BORDERSTYLE,
-                                m->d.alignment);
+        return ff_ass_subtitle_header(avctx, m->d.font, m->d.fontsize,
+                    RGB_TO_BGR(m->d.color),
+                    RGB_TO_BGR(m->d.back_color),
+                    m->d.bold, m->d.italic, m->d.underline,
+                    ASS_DEFAULT_BORDERSTYLE, m->d.alignment);
     } else
         return ff_ass_subtitle_header_default(avctx);
 }