Signed-off-by: Paul B Mahol <[email protected]>
---
 libswscale/swscale.h          |   24 ----------------
 libswscale/swscale_unscaled.c |   61 +++++++++++++++++++++--------------------
 2 files changed, 31 insertions(+), 54 deletions(-)

diff --git a/libswscale/swscale.h b/libswscale/swscale.h
index b5a6a57..49614ca 100644
--- a/libswscale/swscale.h
+++ b/libswscale/swscale.h
@@ -326,30 +326,6 @@ struct SwsContext *sws_getCachedContext(struct SwsContext 
*context,
                                         SwsFilter *dstFilter, const double 
*param);
 
 /**
- * Convert an 8-bit paletted frame into a frame with a color depth of 32 bits.
- *
- * The output frame will have the same packed format as the palette.
- *
- * @param src        source frame buffer
- * @param dst        destination frame buffer
- * @param num_pixels number of pixels to convert
- * @param palette    array with [256] entries, which must match color 
arrangement (RGB or BGR) of src
- */
-void sws_convertPalette8ToPacked32(const uint8_t *src, uint8_t *dst, int 
num_pixels, const uint8_t *palette);
-
-/**
- * Convert an 8-bit paletted frame into a frame with a color depth of 24 bits.
- *
- * With the palette format "ABCD", the destination frame ends up with the 
format "ABC".
- *
- * @param src        source frame buffer
- * @param dst        destination frame buffer
- * @param num_pixels number of pixels to convert
- * @param palette    array with [256] entries, which must match color 
arrangement (RGB or BGR) of src
- */
-void sws_convertPalette8ToPacked24(const uint8_t *src, uint8_t *dst, int 
num_pixels, const uint8_t *palette);
-
-/**
  * Get the AVClass for swsContext. It can be used in combination with
  * AV_OPT_SEARCH_FAKE_OBJ for examining options.
  *
diff --git a/libswscale/swscale_unscaled.c b/libswscale/swscale_unscaled.c
index 5fe2b14..1a45980 100644
--- a/libswscale/swscale_unscaled.c
+++ b/libswscale/swscale_unscaled.c
@@ -298,6 +298,31 @@ static int packed_16bpc_bswap(SwsContext *c, const uint8_t 
*src[],
     return srcSliceH;
 }
 
+/* Convert the palette to the same packed 32-bit format as the palette */
+static void convertPalette8ToPacked32(const uint8_t *src, uint8_t *dst,
+                                   int num_pixels, const uint8_t *palette)
+{
+    int i;
+
+    for (i = 0; i < num_pixels; i++)
+        ((uint32_t *) dst)[i] = ((const uint32_t *) palette)[src[i]];
+}
+
+/* Palette format: ABCD -> dst format: ABC */
+static void convertPalette8ToPacked24(const uint8_t *src, uint8_t *dst,
+                                   int num_pixels, const uint8_t *palette)
+{
+    int i;
+
+    for (i = 0; i < num_pixels; i++) {
+        //FIXME slow?
+        dst[0] = palette[src[i] * 4 + 0];
+        dst[1] = palette[src[i] * 4 + 1];
+        dst[2] = palette[src[i] * 4 + 2];
+        dst += 3;
+    }
+}
+
 static int palToRgbWrapper(SwsContext *c, const uint8_t *src[], int 
srcStride[],
                            int srcSliceY, int srcSliceH, uint8_t *dst[],
                            int dstStride[])
@@ -321,12 +346,12 @@ static int palToRgbWrapper(SwsContext *c, const uint8_t 
*src[], int srcStride[],
         }
     } else if (usePal(srcFormat)) {
         switch (dstFormat) {
-        case PIX_FMT_RGB32  : conv = sws_convertPalette8ToPacked32; break;
-        case PIX_FMT_BGR32  : conv = sws_convertPalette8ToPacked32; break;
-        case PIX_FMT_BGR32_1: conv = sws_convertPalette8ToPacked32; break;
-        case PIX_FMT_RGB32_1: conv = sws_convertPalette8ToPacked32; break;
-        case PIX_FMT_RGB24  : conv = sws_convertPalette8ToPacked24; break;
-        case PIX_FMT_BGR24  : conv = sws_convertPalette8ToPacked24; break;
+        case PIX_FMT_RGB32  : conv = convertPalette8ToPacked32; break;
+        case PIX_FMT_BGR32  : conv = convertPalette8ToPacked32; break;
+        case PIX_FMT_BGR32_1: conv = convertPalette8ToPacked32; break;
+        case PIX_FMT_RGB32_1: conv = convertPalette8ToPacked32; break;
+        case PIX_FMT_RGB24  : conv = convertPalette8ToPacked24; break;
+        case PIX_FMT_BGR24  : conv = convertPalette8ToPacked24; break;
         }
     }
 
@@ -1042,27 +1067,3 @@ int attribute_align_arg sws_scale(struct SwsContext *c,
     }
 }
 
-/* Convert the palette to the same packed 32-bit format as the palette */
-void sws_convertPalette8ToPacked32(const uint8_t *src, uint8_t *dst,
-                                   int num_pixels, const uint8_t *palette)
-{
-    int i;
-
-    for (i = 0; i < num_pixels; i++)
-        ((uint32_t *) dst)[i] = ((const uint32_t *) palette)[src[i]];
-}
-
-/* Palette format: ABCD -> dst format: ABC */
-void sws_convertPalette8ToPacked24(const uint8_t *src, uint8_t *dst,
-                                   int num_pixels, const uint8_t *palette)
-{
-    int i;
-
-    for (i = 0; i < num_pixels; i++) {
-        //FIXME slow?
-        dst[0] = palette[src[i] * 4 + 0];
-        dst[1] = palette[src[i] * 4 + 1];
-        dst[2] = palette[src[i] * 4 + 2];
-        dst += 3;
-    }
-}
-- 
1.7.7

_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to