From 1d531d5b24320126d6167dfc5830490e460431a7 Mon Sep 17 00:00:00 2001 From: Julien Moutte Date: Tue, 18 Oct 2005 22:44:11 +0000 Subject: ext/libpng/gstpngdec.*: Complete rewrite of pngdec. It's now very nice and handle push/pull based model. if you have ... Original commit message from CVS: 2005-10-19 Julien MOUTTE * ext/libpng/gstpngdec.c: (gst_pngdec_class_init), (gst_pngdec_init), (user_error_fn), (user_warning_fn), (user_info_callback), (user_endrow_callback), (user_end_callback), (user_read_data), (gst_pngdec_caps_create_and_set), (gst_pngdec_task), (gst_pngdec_chain), (gst_pngdec_sink_event), (gst_pngdec_libpng_clear), (gst_pngdec_libpng_init), (gst_pngdec_change_state), (gst_pngdec_sink_activate_push), (gst_pngdec_sink_activate_pull), (gst_pngdec_sink_activate): * ext/libpng/gstpngdec.h: Complete rewrite of pngdec. It's now very nice and handle push/pull based model. if you have filesrc connected to it, it will do random access to load the png file. If you have a network source that can't do _getrange, it does progressive loading through the chain function. * gst/alpha/gstalphacolor.c: (gst_alpha_color_transform_caps), (transform_rgb), (transform_bgr): Fix caps negotiation correctly thanks to Master Wim Taymans ;-) --- ext/libpng/gstpngdec.h | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'ext/libpng/gstpngdec.h') diff --git a/ext/libpng/gstpngdec.h b/ext/libpng/gstpngdec.h index 62232c48f..5f5cdca92 100644 --- a/ext/libpng/gstpngdec.h +++ b/ext/libpng/gstpngdec.h @@ -41,12 +41,18 @@ struct _GstPngDec GstPad *sinkpad, *srcpad; - GstBuffer *buffer_in; + /* Progressive */ + GstBuffer *buffer_out; + GstFlowReturn ret; + png_uint_32 rowbytes; + + /* Pull range */ gint offset; png_structp png; png_infop info; png_infop endinfo; + gboolean setup; gint width; gint height; -- cgit v1.2.1