search for: swfdecimag

Displaying 20 results from an estimated 31 matches for "swfdecimag".

Did you mean: swfdecimage
2007 Nov 10
1
3 commits - libswfdec/swfdec_image.c libswfdec/swfdec_image.h
...nome.org> Date: Sun Nov 11 00:21:54 2007 +0100 implement reading from PNG files diff --git a/libswfdec/swfdec_image.c b/libswfdec/swfdec_image.c index bff9fa6..0d0362d 100644 --- a/libswfdec/swfdec_image.c +++ b/libswfdec/swfdec_image.c @@ -558,10 +558,28 @@ swfdec_image_colormap_decode (SwfdecImage * image, } } +static cairo_status_t +swfdec_image_png_read (void *bitsp, unsigned char *data, unsigned int length) +{ + SwfdecBits *bits = bitsp; + const guint8 *ptr; + + ptr = bits->ptr; + if (swfdec_bits_skip_bytes (bits, length) != length) + return CAIRO_STATUS_READ_ERROR; + +...
2007 Jan 26
0
libswfdec/swfdec_image.c libswfdec/swfdec_image.h libswfdec/swfdec_pattern.c
...d be good enough for most uses diff --git a/libswfdec/swfdec_image.c b/libswfdec/swfdec_image.c index 6c2dcae..0cf6502 100644 --- a/libswfdec/swfdec_image.c +++ b/libswfdec/swfdec_image.c @@ -185,15 +185,15 @@ tag_func_define_bits_jpeg (SwfdecSwfDeco } static void -swfdec_image_create_surface (SwfdecImage *image, guint8 *data) +swfdec_image_create_surface (SwfdecImage *image, guint8 *data, gboolean has_alpha) { static const cairo_user_data_key_t key; g_assert (image->surface == NULL); image->surface = cairo_image_surface_create_for_data (data, - CAIRO_FORMAT_ARGB32, image-&...
2007 Feb 06
0
21 commits - configure.ac libswfdec/swfdec_audio_event.c libswfdec/swfdec_bits.c libswfdec/swfdec_button_movie.c libswfdec/swfdec_color.c libswfdec/swfdec_color.h libswfdec/swfdec_compiler.c libswfdec/swfdec_edittext.c libswfdec/swfdec_image.c
...iplied - Use swfdec_color_apply_transform_premultiplied since the image is premultiplied diff --git a/libswfdec/swfdec_image.c b/libswfdec/swfdec_image.c index 224e101..4463228 100644 --- a/libswfdec/swfdec_image.c +++ b/libswfdec/swfdec_image.c @@ -588,24 +588,6 @@ swfdec_image_ensure_loaded (SwfdecImage return TRUE; } -static void -swfdec_image_premultiply (guint8 *data, guint n) -{ - guint i; - - for (i = 0; i < n; i++, data += 4) { - if (data[SWFDEC_COLOR_INDEX_ALPHA] == 0xFF) - continue; - if (data[SWFDEC_COLOR_INDEX_ALPHA] == 0) { - data[SWFDEC_COLOR_INDEX_RED] = d...
2007 Feb 06
0
Branch 'interpreter' - 8 commits - libswfdec/swfdec_bits.c libswfdec/swfdec_color.c libswfdec/swfdec_color.h libswfdec/swfdec_edittext.c libswfdec/swfdec_image.c libswfdec/swfdec_image.h libswfdec/swfdec_pattern.c libswfdec/swfdec_sprite.c test/dump.c
...Color swfdec_bits_get_rgba (SwfdecBits * bits) { - int r, g, b, a; + unsigned int r, g, b, a; r = swfdec_bits_get_u8 (bits); g = swfdec_bits_get_u8 (bits); diff --cc libswfdec/swfdec_image.c index 23602c4,224e101..53dad98 @@@ -290,18 -288,19 +267,17 @@@ swfdec_image_jpeg3_load (SwfdecImage *image) { JpegRGBDecoder *dec; - unsigned char *image_data; unsigned char *alpha_data; SwfdecBits bits; - int len; + SwfdecBuffer *buffer; int jpeg_length; - bits.buffer = image->raw_data; - bits.ptr = image->raw_data->data; - bits.idx = 0; - bits.end =...
2007 Jan 29
0
Branch 'interpreter' - 18 commits - libswfdec/swfdec_image.c libswfdec/swfdec_image.h libswfdec/swfdec_js.c libswfdec/swfdec_js_color.c libswfdec/swfdec_js_sound.c libswfdec/swfdec_pattern.c libswfdec/swfdec_scriptable.c libswfdec/swfdec_script.c
...way diff --git a/libswfdec/swfdec_image.c b/libswfdec/swfdec_image.c index 725ce74..23602c4 100644 --- a/libswfdec/swfdec_image.c +++ b/libswfdec/swfdec_image.c @@ -168,10 +168,18 @@ tag_func_define_bits_jpeg (SwfdecSwfDeco return SWFDEC_STATUS_OK; } +static gboolean +swfdec_image_has_alpha (SwfdecImage *image) +{ + return image->type == SWFDEC_IMAGE_TYPE_LOSSLESS2 || + image->type == SWFDEC_IMAGE_TYPE_JPEG3; +} + static void -swfdec_image_create_surface (SwfdecImage *image, guint8 *data, gboolean has_alpha) +swfdec_image_create_surface (SwfdecImage *image, guint8 *data) { static...
2007 Nov 12
0
13 commits - libswfdec/Makefile.am libswfdec/swfdec_decoder.c libswfdec/swfdec_decoder.h libswfdec/swfdec_flv_decoder.c libswfdec/swfdec_flv_decoder.h libswfdec/swfdec_image.c libswfdec/swfdec_image_decoder.c libswfdec/swfdec_image_decoder.h
...); + swfdec_resource_emit_signal (resource, SWFDEC_AS_STR_onLoadInit, FALSE, NULL, 0); resource->state = SWFDEC_RESOURCE_DONE; - if (movie && SWFDEC_IS_IMAGE_DECODER (resource->decoder)) { + if (resource->movie && SWFDEC_IS_IMAGE_DECODER (resource->decoder)) { SwfdecImage *image = SWFDEC_IMAGE_DECODER (resource->decoder)->image; if (image) { - movie->image = g_object_ref (image); - swfdec_movie_queue_update (movie, SWFDEC_MOVIE_INVALID_CONTENTS); + SWFDEC_MOVIE (resource->movie)->image = g_object_ref (image); + swfdec_movie_q...
2007 Mar 21
0
5 commits - README libswfdec/jpeg libswfdec/swfdec_image.c
...->bits.ptr - dec->data; dec->data = realloc (dec->data, dec->data_len + len); diff --git a/libswfdec/swfdec_image.c b/libswfdec/swfdec_image.c index dc96fb6..79e353a 100644 --- a/libswfdec/swfdec_image.c +++ b/libswfdec/swfdec_image.c @@ -137,8 +137,22 @@ swfdec_image_jpeg_load (SwfdecImage *ima dec = jpeg_decoder_new (); - jpeg_decoder_addbits (dec, image->jpegtables->data, - image->jpegtables->length); + if (image->jpegtables) { + if (image->jpegtables->data[0] != 0xff || image->jpegtables->data[1] != 0xd8) { + SWFDEC_ERROR("not...
2007 Jan 16
0
9 commits - libswfdec/js libswfdec/Makefile.am libswfdec/swfdec_audio_stream.c libswfdec/swfdec_audio_stream.h libswfdec/swfdec_cache.c libswfdec/swfdec_cached.c libswfdec/swfdec_cached.h libswfdec/swfdec_edittext_movie.c libswfdec/swfdec_image.c
...cached); void swfdec_cached_set_cache (SwfdecCached * cached, SwfdecCache * cache); diff --git a/libswfdec/swfdec_image.c b/libswfdec/swfdec_image.c index 64daf19..6c2dcae 100644 --- a/libswfdec/swfdec_image.c +++ b/libswfdec/swfdec_image.c @@ -597,7 +597,7 @@ swfdec_image_get_surface (SwfdecImage *i g_return_val_if_fail (SWFDEC_IS_IMAGE (image), NULL); if (image->surface) { - swfdec_cached_reload (SWFDEC_CACHED (image)); + swfdec_cached_use (SWFDEC_CACHED (image)); return image->surface; } diff-tree 5f2def54b59ff4937c94f6366206aaf29933f682 (from 89329b9198530b...
2007 Jun 15
0
Branch 'as' - 5 commits - libswfdec/swfdec_as_native_function.c libswfdec/swfdec_edittext.c libswfdec/swfdec_edittext.h libswfdec/swfdec_font.c libswfdec/swfdec_font.h libswfdec/swfdec_image.c libswfdec/swfdec_image.h libswfdec/swfdec_morphshape.h
...tag); +int tag_func_define_font_3 (SwfdecSwfDecoder * s, + guint tag); G_END_DECLS #endif diff --git a/libswfdec/swfdec_image.c b/libswfdec/swfdec_image.c index 5a60681..075f771 100644 --- a/libswfdec/swfdec_image.c +++ b/libswfdec/swfdec_image.c @@ -90,19 +90,23 @@ swfdec_image_init (SwfdecImage * image) } int -swfdec_image_jpegtables (SwfdecSwfDecoder * s) +swfdec_image_jpegtables (SwfdecSwfDecoder * s, guint tag) { SwfdecBits *bits = &s->b; SWFDEC_DEBUG ("swfdec_image_jpegtables"); + if (s->jpegtables) { + SWFDEC_FIXME ("duplicate DefineJPEGTa...
2007 Apr 17
0
15 commits - libswfdec/jpeg libswfdec/swfdec_bits.c libswfdec/swfdec_edittext.c libswfdec/swfdec_font.c libswfdec/swfdec_image.c libswfdec/swfdec_root_sprite.c libswfdec/swfdec_script.c libswfdec/swfdec_shape.c libswfdec/swfdec_sprite.c
...es = swfdec_buffer_ref (s->jpegtables); } - image->raw_data = swfdec_buffer_ref (bits->buffer); - - bits->ptr += bits->buffer->length - 2; + image->raw_data = swfdec_bits_get_buffer (bits, -1); return SWFDEC_STATUS_OK; } @@ -146,14 +144,14 @@ swfdec_image_jpeg_load (SwfdecImage *ima jpeg_decoder_addbits (dec, image->jpegtables->data, image->jpegtables->length); } - if (image->raw_data->data[2] != 0xff || image->raw_data->data[3] != 0xd8) { + if (image->raw_data->data[0] != 0xff || image->raw_data->data[1] != 0xd8) {...
2007 Apr 17
0
Branch 'as' - 17 commits - libswfdec/jpeg libswfdec/swfdec_bits.c libswfdec/swfdec_font.c libswfdec/swfdec_image.c libswfdec/swfdec_root_sprite.c libswfdec/swfdec_script.c libswfdec/swfdec_shape.c libswfdec/swfdec_sound.c libswfdec/swfdec_sprite.c
...es = swfdec_buffer_ref (s->jpegtables); } - image->raw_data = swfdec_buffer_ref (bits->buffer); - - bits->ptr += bits->buffer->length - 2; + image->raw_data = swfdec_bits_get_buffer (bits, -1); return SWFDEC_STATUS_OK; } @@ -146,14 +144,14 @@ swfdec_image_jpeg_load (SwfdecImage *ima jpeg_decoder_addbits (dec, image->jpegtables->data, image->jpegtables->length); } - if (image->raw_data->data[2] != 0xff || image->raw_data->data[3] != 0xd8) { + if (image->raw_data->data[0] != 0xff || image->raw_data->data[1] != 0xd8) {...
2007 Jan 18
0
Branch 'interpreter' - 4 commits - libswfdec/js libswfdec/swfdec_bits.c libswfdec/swfdec_bits.h libswfdec/swfdec_codec_screen.c libswfdec/swfdec_image.c libswfdec/swfdec_script.c libswfdec/swfdec_swf_decoder.c libswfdec/swfdec_tag.c
...et == %d", ret); } + inflateEnd (&z); - if (plen) - (*plen) = z->total_out; - - inflateEnd (z); - - g_free (z); return data; } @@ -278,11 +262,8 @@ int tag_func_define_bits_jpeg_3 (SwfdecSwfDecoder * s) { SwfdecBits *bits = &s->b; - int id; + guint id; SwfdecImage *image; - unsigned char *endptr; - - endptr = bits->ptr + bits->buffer->length; id = swfdec_bits_get_u16 (bits); SWFDEC_LOG (" id = %d", id); @@ -292,9 +273,7 @@ tag_func_define_bits_jpeg_3 (SwfdecSwfDe return SWFDEC_STATUS_OK; image->type = SWFDEC_IMAGE_...
2007 Feb 13
0
9 commits - libswfdec/js libswfdec/swfdec_bits.c libswfdec/swfdec_bits.h libswfdec/swfdec_codec_screen.c libswfdec/swfdec_image.c libswfdec/swfdec_script.c test/Makefile.am test/swfdec_out.c test/swfdec_out.h test/swfedit.c test/swfedit_file.c
...te: Fri Feb 9 14:03:11 2007 +0100 use swfdec_bits_decompress contains various bugfixing diff --git a/libswfdec/swfdec_image.c b/libswfdec/swfdec_image.c index ab62969..0dee685 100644 --- a/libswfdec/swfdec_image.c +++ b/libswfdec/swfdec_image.c @@ -89,47 +89,6 @@ swfdec_image_init (SwfdecImage * image) { } - -static void * -zalloc (void *opaque, unsigned int items, unsigned int size) -{ - return g_malloc (items * size); -} - -static void -zfree (void *opaque, void *addr) -{ - g_free (addr); -} - -static guint8 * -lossless (const guint8 *zptr, int zlen, int len) -{ - guint8 *data;...
2007 Dec 10
0
5 commits - libswfdec/jpeg libswfdec/swfdec_as_interpret.c libswfdec/swfdec_bits.c libswfdec/swfdec_cached.c libswfdec/swfdec_codec_adpcm.c libswfdec/swfdec_codec_audio.c libswfdec/swfdec_flash_security.c libswfdec/swfdec_image.c
...ched (); + allowed = FALSE; + break; } callback (url, allowed, user_data); diff --git a/libswfdec/swfdec_image.c b/libswfdec/swfdec_image.c index ee200d9..be63312 100644 --- a/libswfdec/swfdec_image.c +++ b/libswfdec/swfdec_image.c @@ -451,18 +451,21 @@ swfdec_image_lossless_load (SwfdecImage *image) } else if (format == 5) { SwfdecBuffer *buffer; int i, j; + guint32 *p; + buffer = swfdec_bits_decompress (&bits, -1, 4 * image->width * image->height); if (buffer == NULL) { SWFDEC_ERROR ("failed to decompress data"); data = g_ma...
2007 Dec 11
1
libswfdec/swfdec_image.c
...+0100 forgot to fix one line when changing data access from uint8 to uint32 diff --git a/libswfdec/swfdec_image.c b/libswfdec/swfdec_image.c index be63312..f3d27fc 100644 --- a/libswfdec/swfdec_image.c +++ b/libswfdec/swfdec_image.c @@ -662,7 +662,7 @@ swfdec_image_create_surface_transformed (SwfdecImage *image, const SwfdecColorTr for (i = 0; i < n; i++) { tdata[i] = swfdec_color_apply_transform_premultiplied (sdata[i], trans); /* optimization: check for alpha channel to speed up compositing */ - has_alpha = tdata[4 * i + SWFDEC_COLOR_INDEX_ALPHA] != 0xFF; + has_alpha |= SWF...
2007 Feb 06
0
Branch 'interpreter' - 15 commits - configure.ac libswfdec/swfdec_audio_event.c libswfdec/swfdec_button_movie.c libswfdec/swfdec_color.c libswfdec/swfdec_color.h libswfdec/swfdec_compiler.c libswfdec/swfdec_image.c libswfdec/swfdec_sprite_movie.c
...iplied - Use swfdec_color_apply_transform_premultiplied since the image is premultiplied diff --git a/libswfdec/swfdec_image.c b/libswfdec/swfdec_image.c index 224e101..4463228 100644 --- a/libswfdec/swfdec_image.c +++ b/libswfdec/swfdec_image.c @@ -588,24 +588,6 @@ swfdec_image_ensure_loaded (SwfdecImage return TRUE; } -static void -swfdec_image_premultiply (guint8 *data, guint n) -{ - guint i; - - for (i = 0; i < n; i++, data += 4) { - if (data[SWFDEC_COLOR_INDEX_ALPHA] == 0xFF) - continue; - if (data[SWFDEC_COLOR_INDEX_ALPHA] == 0) { - data[SWFDEC_COLOR_INDEX_RED] = d...
2007 Jun 19
0
Branch 'as' - test/dump.c
..._REMOVEOBJECT) + swfdec_bits_get_u16 (&bits); + g_print (" %4u %5u remove\n", j, swfdec_bits_get_u16 (&bits)); + } + break; + case SWFDEC_TAG_SHOWFRAME: + j++; + break; + default: + g_assert_not_reached (); } } } @@ -323,7 +338,7 @@ dump_image (SwfdecImage *image) } static void -dump_object (gpointer key, gpointer value, gpointer unused) +dump_object (gpointer key, gpointer value, gpointer dec) { SwfdecCharacter *c = value; @@ -337,7 +352,7 @@ dump_object (gpointer key, gpointer valu dump_image (SWFDEC_IMAGE (c)); } if (SWFDEC_...
2007 Feb 13
0
libswfdec/jpeg libswfdec/swfdec_image.c
...lt;string.h> -#include "jpeg_rgb_decoder.h" +#include "jpeg.h" #include "swfdec_image.h" #include "swfdec_cache.h" #include "swfdec_debug.h" @@ -133,24 +133,24 @@ tag_func_define_bits_jpeg (SwfdecSwfDeco static void swfdec_image_jpeg_load (SwfdecImage *image) { - JpegRGBDecoder *dec; + JpegDecoder *dec; - dec = jpeg_rgb_decoder_new (); + dec = jpeg_decoder_new (); - jpeg_rgb_decoder_addbits (dec, image->jpegtables->data, + jpeg_decoder_addbits (dec, image->jpegtables->data, image->jpegtables->length); - jpeg...
2007 Nov 20
0
4 commits - libswfdec/swfdec_movie.c libswfdec/swfdec_movie.h libswfdec/swfdec_resource.c test/image test/trace
...if (resource->state != SWFDEC_RESOURCE_COMPLETE) return FALSE; - swfdec_resource_emit_signal (resource, SWFDEC_AS_STR_onLoadInit, FALSE, NULL, 0); - resource->state = SWFDEC_RESOURCE_DONE; if (resource->movie && SWFDEC_IS_IMAGE_DECODER (resource->decoder)) { SwfdecImage *image = SWFDEC_IMAGE_DECODER (resource->decoder)->image; if (image) { @@ -565,6 +563,8 @@ swfdec_resource_emit_on_load_init (SwfdecResource *resource) swfdec_movie_queue_update (SWFDEC_MOVIE (resource->movie), SWFDEC_MOVIE_INVALID_CONTENTS); } } + swfdec_resource_emi...
2007 Apr 17
0
8 commits - configure.ac doc/Makefile.am libswfdec/jpeg libswfdec/swfdec_debug.h libswfdec/swfdec_image.c
..._DEBUG_H__ +#include <glib.h> + enum { SWFDEC_LEVEL_NONE = 0, SWFDEC_LEVEL_ERROR, diff --git a/libswfdec/swfdec_image.c b/libswfdec/swfdec_image.c index 6d15e27..3ca16b1 100644 --- a/libswfdec/swfdec_image.c +++ b/libswfdec/swfdec_image.c @@ -152,12 +152,13 @@ swfdec_image_jpeg_load (SwfdecImage *ima } jpeg_decoder_addbits (dec, image->raw_data->data, image->raw_data->length); - jpeg_decoder_parse (dec); + jpeg_decoder_decode (dec); jpeg_decoder_get_image_size (dec, &image->width, &image->height); if (image->width == 0 || image->height...