On 09/13/2013 04:56 PM, Luca Barbato wrote:
On 13/09/13 22:31, Justin Ruggles wrote:
---
  doc/general.texi  |    2 +-
  libavcodec/webp.c | 1173 ++++++++++++++++++++++++++++++++++++++++++++++++++++-
  2 files changed, 1164 insertions(+), 11 deletions(-)
[...]
+typedef struct ImageContext {
+    enum ImageRole role;
+    AVFrame *frame;
+    int color_cache_bits;
+    uint8_t *color_cache;
+    int num_huffman_groups;
+    HuffmanGroup *huffman_groups;
+} ImageContext;
+
+typedef union {
+    uint8_t u8;
+    int8_t  s8;
+} av_alias alias8;

Don't we have something like this in avutils?

No.

+static av_always_inline uint8_t add_comp(int a, int b)
+{
+    return (a + b) & 0xFF;
+}
+
+static av_always_inline uint8_t avg2_comp(int a, int b)
+{
+    return (a + b) / 2;
+}
+
+static av_always_inline uint8_t clamp_add_subtract_full(int a, int b, int c)
+{
+    return av_clip_uint8(a + b - c);
+}
+
+static av_always_inline uint8_t clamp_add_subtract_half(int a, int b, int c)
+{
+    int d = avg2_comp(a, b);
+    return av_clip_uint8(d + (d - c) / 2);
+}

Some of those above should be in avutil already.

I don't see anything.

-Justin

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

Reply via email to