Displaying 6 results from an estimated 6 matches for "cairo_surface_reference".
2007 Nov 10
1
3 commits - libswfdec/swfdec_image.c libswfdec/swfdec_image.h
...dth * image->height);
- image->rowstride = image->width * 4;
+ image->surface = cairo_image_surface_create_for_data (data, CAIRO_FORMAT_RGB24,
+ image->width, image->height, image->width * 4);
+ cairo_surface_set_user_data (image->surface, &key, data, g_free);
+ cairo_surface_reference (image->surface);
SWFDEC_LOG (" width = %d", image->width);
SWFDEC_LOG (" height = %d", image->height);
@@ -219,16 +220,19 @@ static void
swfdec_image_jpeg2_load (SwfdecImage *image)
{
gboolean ret;
+ guint8 *data;
ret = swfdec_jpeg_decode_argb (ima...
2007 Mar 02
0
12 commits - libswfdec/Makefile.am libswfdec/swfdec_audio_flv.c libswfdec/swfdec_flv_decoder.c libswfdec/swfdec_js.c libswfdec/swfdec_js.h libswfdec/swfdec_js_video.c libswfdec/swfdec_loader.c libswfdec/swfdec_loader_internal.h
...e, cairo_surface_t *image,
+ guint width, guint height)
{
g_return_if_fail (SWFDEC_IS_VIDEO_MOVIE (movie));
g_return_if_fail (image != NULL);
+ g_return_if_fail (width > 0);
+ g_return_if_fail (height > 0);
if (movie->image)
cairo_surface_destroy (movie->image);
cairo_surface_reference (image);
movie->image = image;
+ movie->image_width = width;
+ movie->image_height = height;
swfdec_movie_invalidate (SWFDEC_MOVIE (movie));
}
diff --git a/libswfdec/swfdec_video_movie.h b/libswfdec/swfdec_video_movie.h
index 9db5d45..87ee9c9 100644
--- a/libswfdec/swfdec_video_...
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
...+swfdec_image_create_surface (SwfdecImage *image)
{
+ static const cairo_user_data_key_t key;
+
g_return_val_if_fail (SWFDEC_IS_IMAGE (image), NULL);
+ if (!swfdec_image_ensure_loaded (image))
+ return NULL;
if (image->surface) {
- swfdec_cached_use (SWFDEC_CACHED (image));
+ cairo_surface_reference (image->surface);
return image->surface;
}
- switch (image->type) {
- case SWFDEC_IMAGE_TYPE_JPEG:
- swfdec_image_jpeg_load (image);
- break;
- case SWFDEC_IMAGE_TYPE_JPEG2:
- swfdec_image_jpeg2_load (image);
- break;
- case SWFDEC_IMAGE_TYPE_JPEG3:...
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
...+swfdec_image_create_surface (SwfdecImage *image)
{
+ static const cairo_user_data_key_t key;
+
g_return_val_if_fail (SWFDEC_IS_IMAGE (image), NULL);
+ if (!swfdec_image_ensure_loaded (image))
+ return NULL;
if (image->surface) {
- swfdec_cached_use (SWFDEC_CACHED (image));
+ cairo_surface_reference (image->surface);
return image->surface;
}
- switch (image->type) {
- case SWFDEC_IMAGE_TYPE_JPEG:
- swfdec_image_jpeg_load (image);
- break;
- case SWFDEC_IMAGE_TYPE_JPEG2:
- swfdec_image_jpeg2_load (image);
- break;
- case SWFDEC_IMAGE_TYPE_JPEG3:...
2007 Apr 06
0
3 commits - libswfdec-gtk/swfdec_gtk_loader.c libswfdec/Makefile.am libswfdec/swfdec_codec.c libswfdec/swfdec_codec_ffmpeg.c libswfdec/swfdec_codec_gst.c libswfdec/swfdec_codec.h libswfdec/swfdec_codec_screen.c libswfdec/swfdec_codec_video.c
...ew_image (SwfdecVideoMovie *movie, cairo_surface_t *image)
{
g_return_if_fail (SWFDEC_IS_VIDEO_MOVIE (movie));
g_return_if_fail (image != NULL);
- g_return_if_fail (width > 0);
- g_return_if_fail (height > 0);
if (movie->image)
cairo_surface_destroy (movie->image);
cairo_surface_reference (image);
movie->image = image;
- movie->image_width = width;
- movie->image_height = height;
+ movie->image_width = cairo_image_surface_get_width (image);
+ movie->image_height = cairo_image_surface_get_height (image);
swfdec_movie_invalidate (SWFDEC_MOVIE (movie));
}
di...
2007 Oct 18
0
18 commits - doc/swfdec-sections.txt libswfdec/Makefile.am libswfdec/swfdec_as_interpret.c libswfdec/swfdec_as_strings.c libswfdec/swfdec_button_movie.c libswfdec/swfdec_event.c libswfdec/swfdec_event.h libswfdec/swfdec_flash_security.c
...!= NULL) {
+ if (movie->input->set_ratio)
+ movie->input->set_ratio (movie->input, movie);
+
+ if (movie->image)
+ cairo_surface_destroy (movie->image);
+ movie->image = movie->input->get_image (movie->input);
+ if (movie->image)
+ cairo_surface_reference (movie->image);
+ }
+ movie->needs_update = FALSE;
+}
+
+static void
swfdec_video_movie_render (SwfdecMovie *mov, cairo_t *cr,
const SwfdecColorTransform *trans, const SwfdecRect *inval)
{
SwfdecVideoMovie *movie = SWFDEC_VIDEO_MOVIE (mov);
+ swfdec_video_movie_update_image (m...