From 5b69c07d12b1e505fd7468828ed85d6d8d634621 Mon Sep 17 00:00:00 2001
From: Peter Ross <pross@xvid.org>
Date: Mon, 7 Jan 2013 22:08:39 +1100
Subject: [PATCH] frmdec: tag 5 is AV_PIX_FMT_BGRA with reversed alpha
 (0=solid/opaque ..  255=transparent)

---
 libavformat/frmdec.c | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/libavformat/frmdec.c b/libavformat/frmdec.c
index 914bab5cd4..9c29842734 100644
--- a/libavformat/frmdec.c
+++ b/libavformat/frmdec.c
@@ -33,7 +33,7 @@ static const AVCodecTag frm_pix_fmt_tags[] = {
     { AV_PIX_FMT_RGB0,   2 },
     { AV_PIX_FMT_RGB24,  3 },
     { AV_PIX_FMT_BGR0,   4 },
-    { AV_PIX_FMT_BGR0,   5 },
+    { AV_PIX_FMT_BGRA,   5 },
     { AV_PIX_FMT_NONE,   0 },
 };
 
@@ -88,6 +88,12 @@ static int frm_read_packet(AVFormatContext *avctx, AVPacket *pkt)
     if (ret < 0)
         return ret;
 
+    if (stc->pix_fmt == AV_PIX_FMT_BGRA) {
+        int i;
+        for (i = 3; i + 1 <= pkt->size; i += 4)
+            pkt->data[i] = 0xFF - pkt->data[i];
+    }
+
     pkt->stream_index = 0;
     s->count++;