Wim Taymans
f3a770a20c
update for allocation query changes
2012-03-15 20:37:56 +01:00
Wim Taymans
751fcf035b
take padding into account
2012-03-14 19:56:56 +01:00
Wim Taymans
9365f12d6e
GST_FLOW_WRONG_STATE -> GST_FLOW_FLUSHING
2012-02-08 16:43:30 +01:00
Wim Taymans
f87ab74add
png: port to new memory API
2012-01-25 12:41:42 +01:00
Mark Nauwelaerts
a31a9e1f33
pngenc: disably snapshot behaviour by default
...
... since such behaviour is not consistent, if allowable at all.
2012-01-24 18:25:04 +01:00
Mark Nauwelaerts
2fcb5fa05b
pngdec: port to 0.11
2012-01-24 18:25:04 +01:00
Mark Nauwelaerts
a1797459cb
pngenc: port to 0.11
2012-01-24 18:25:04 +01:00
Wim Taymans
47a1da9076
GST_FLOW_UNEXPECTED -> GST_FLOW_EOS
2012-01-04 10:01:48 +01:00
René Stadler
41116224c8
pngenc: increase arbitrary resolution limits
...
Apparently libpng can technically do up to 2^31-1 rows and columns. However it
imposes an (arbitrary) default limit of 1 million (that could theoretically be
lifted by using some additional API).
Moved array allocation to the heap now.
2011-10-21 10:27:04 +02:00
René Stadler
db1f10adc8
pngenc: don't unconditionally allocate 4096 pointers on the stack
...
Instead allocate as many as needed (on the stack still).
2011-10-21 10:26:48 +02:00
René Stadler
65f9354803
pngenc: ensure setcaps was called before chain function
...
This is needed to properly error out for e.g. "fakesrc ! pngenc ! fakesink".
2011-10-21 10:26:20 +02:00
René Stadler
7e390c4635
pngenc: validate input buffer size
...
Just for safety; of course such mismatch represents a bug in another element.
2011-10-21 10:25:51 +02:00
René Stadler
9eb55c3d8f
pngenc: make setcaps more robust, use gstvideo functions
...
A setcaps function needs to actually verify the caps carefully. In this case,
it was possible to e.g. link a video decoder with YUV+RGB template caps to
pngenc. That would cause a crash when the decoder pushes a YUV buffer. Same
thing when pushing a valid buffer that exceeds the resolution limits.
Also, missing framerate caps field would cause a glib critical warning due to
invalid GValue. This fails hard now.
2011-10-21 10:25:08 +02:00
David Schleef
24d57ac961
pngdec: Remove temporary code
...
Now that we depend on (what will be) -base-0.10.33.
2011-04-24 18:53:50 -07:00
David Schleef
13d441315f
pngdec: Handle 16-bit-per-channel images
2011-02-20 12:12:51 -08:00
Edward Hervey
ca9a3806b5
pngenc: Use proper framerate range in caps
2010-12-03 15:06:19 +01:00
Stefan Kost
a513a7be75
pngdec: use png_error() as recommended by libpng docs to signal an error
...
Without that the element loops endlessly on broekn pngs. Fixes #634314
2010-12-03 09:49:26 +02:00
Stefan Kost
45f6707784
various (ext): add a missing G_PARAM_STATIC_STRINGS flags
2010-10-13 17:39:36 +03:00
Sebastian Dröge
58427ee02d
pngdec: Don't use GST_FLOW_IS_FATAL()
...
And don't post an error message if downstream returns UNEXPECTED.
2010-09-04 14:52:11 +02:00
Thiago Santos
ca0652a572
pngenc: Support 8 bit grayscale
...
Adds support to 8 bit grayscale input
2010-06-01 09:06:04 -03:00
Benjamin Otte
cccfeaa59c
gst_element_class_set_details => gst_element_class_set_details_simple
2010-03-18 14:32:00 +01:00
Руслан Ижбулатов
bc873f7133
pngenc: Use png_get_io_ptr() instead of accessing io_ptr directly
...
Fixes #612700 (for the last time!)
2010-03-16 15:20:21 +01:00
Руслан Ижбулатов
43e3e5c0d7
pngenc: Call png_jmpbuf() instead of accessing png_struct_ptr directly
...
Fixes #612700 (again)
2010-03-14 20:09:32 +01:00
Руслан Ижбулатов
0ce782383f
pngenc: Call png_error() instead of using longjmp() directly.
...
Fixes #612700
2010-03-13 06:13:00 +01:00
Benjamin Otte
2a5f368bc7
png: fractions don't allow doubles
2010-03-09 19:15:07 +01:00
David Hoyt
2514421c13
png: fix compilation with libpng 1.4
...
png_set_gray_1_2_4_to_8() has been deprecated for a while and was
finally removed in libpng 1.4.x. Use png_set_expand_gray_1_2_4_to_8()
instead.
Fixes #608629 .
2010-02-02 00:04:34 +00:00
Jan Schmidt
d9544bcc44
pngdec: Avoid possible overflow in calculations
...
A malformed (or simply huge) PNG file can lead to integer overflow in
calculating the size of the output buffer, leading to crashes or buffer
overflows later. Fixes SA35205 security advisory.
2009-06-02 13:44:39 +01:00
John Keeping
32491d5a51
pngdec: match g_malloc() with g_free()
...
Matching g_malloc() with a g_free() is important when a custom allocator is
installed.
Fixes #583803
2009-05-25 16:33:35 +02:00
Christian Schaller
bdf1698f35
Add RANKS for various encoders and muxers
2009-05-07 18:10:08 +01:00
Andy Wingo
034a4a771e
fix format string in pngdec
...
* ext/libpng/gstpngdec.c: Fix size_t vs unsigned int format in error message.
2009-04-20 15:54:31 +02:00
Edward Hervey
0cb5b42d54
Remove trivial unused variables detected by CLang static analyzer.
2009-04-18 18:51:28 +02:00
Edward Hervey
4a9e80720a
Remove unused variables in _class_init
...
Detected by LLVM's CLang static analyzer
2009-04-18 18:51:27 +02:00
Wim Taymans
18571b9e4f
pngdec: various cleanups.
...
Make some code more readable.
Fix a leak when pull range returns a shot buffer.
Push EOS after posting the error.
2009-03-10 11:03:14 +01:00
Stefan Kost
9cf73bdd8f
Update and add documentation for plugins with deps (ext).
...
Link to properties. Correct titles for examples. Document a few trivial cases. Keep lists in section file and docs/plugins/Makefile.am alphabetically ordered. Fix warnings that gtk-doc points out.
2009-01-28 18:05:09 +02:00
Jan Schmidt
006861f235
ext/libpng/gstpngenc.c: Don't flush downstream after every buffer - that's not what this libpng callback is for at all!
...
Original commit message from CVS:
* ext/libpng/gstpngenc.c:
Don't flush downstream after every buffer - that's not what
this libpng callback is for at all!
2008-11-20 13:46:47 +00:00
Stefan Kost
084812bffd
Don't install static libs for plugins. Fixes #550851 for -good.
...
Original commit message from CVS:
* ext/aalib/Makefile.am:
* ext/annodex/Makefile.am:
* ext/cairo/Makefile.am:
* ext/dv/Makefile.am:
* ext/esd/Makefile.am:
* ext/flac/Makefile.am:
* ext/gconf/Makefile.am:
* ext/gdk_pixbuf/Makefile.am:
* ext/hal/Makefile.am:
* ext/jpeg/Makefile.am:
* ext/ladspa/Makefile.am:
* ext/libcaca/Makefile.am:
* ext/libmng/Makefile.am:
* ext/libpng/Makefile.am:
* ext/mikmod/Makefile.am:
* ext/pulse/Makefile.am:
* ext/raw1394/Makefile.am:
* ext/shout2/Makefile.am:
* ext/soup/Makefile.am:
* ext/speex/Makefile.am:
* ext/taglib/Makefile.am:
* ext/wavpack/Makefile.am:
* gst/alpha/Makefile.am:
* gst/apetag/Makefile.am:
* gst/audiofx/Makefile.am:
* gst/auparse/Makefile.am:
* gst/autodetect/Makefile.am:
* gst/avi/Makefile.am:
* gst/cutter/Makefile.am:
* gst/debug/Makefile.am:
* gst/effectv/Makefile.am:
* gst/equalizer/Makefile.am:
* gst/flx/Makefile.am:
* gst/goom/Makefile.am:
* gst/goom2k1/Makefile.am:
* gst/icydemux/Makefile.am:
* gst/id3demux/Makefile.am:
* gst/interleave/Makefile.am:
* gst/law/Makefile.am:
* gst/level/Makefile.am:
* gst/matroska/Makefile.am:
* gst/median/Makefile.am:
* gst/monoscope/Makefile.am:
* gst/multifile/Makefile.am:
* gst/multipart/Makefile.am:
* gst/oldcore/Makefile.am:
* gst/qtdemux/Makefile.am:
* gst/replaygain/Makefile.am:
* gst/rtp/Makefile.am:
* gst/rtsp/Makefile.am:
* gst/smpte/Makefile.am:
* gst/spectrum/Makefile.am:
* gst/udp/Makefile.am:
* gst/videobox/Makefile.am:
* gst/videocrop/Makefile.am:
* gst/videofilter/Makefile.am:
* gst/videomixer/Makefile.am:
* gst/wavenc/Makefile.am:
* gst/wavparse/Makefile.am:
* sys/directdraw/Makefile.am:
* sys/directsound/Makefile.am:
* sys/oss/Makefile.am:
* sys/osxaudio/Makefile.am:
* sys/osxvideo/Makefile.am:
* sys/sunaudio/Makefile.am:
* sys/v4l2/Makefile.am:
* sys/waveform/Makefile.am:
* sys/ximage/Makefile.am:
Don't install static libs for plugins. Fixes #550851 for -good.
2008-11-04 12:28:34 +00:00
Jan Schmidt
7d08894b38
ext/libpng/gstpngdec.c: Don't return GST_FLOW_ERROR when buffer_alloc fails - return whatever it returned.
...
Original commit message from CVS:
* ext/libpng/gstpngdec.c:
Don't return GST_FLOW_ERROR when buffer_alloc fails - return
whatever it returned.
2008-06-30 22:53:39 +00:00
Alessandro Decina
3ad8e778d7
ext/libpng/gstpngenc.*: Preallocate the output buffer so that g_memdup() and gst_buffer_merge() aren't needed anymore...
...
Original commit message from CVS:
Patch by: Alessandro Decina <alessandro at nnva dot org>
* ext/libpng/gstpngenc.c: (user_write_data), (gst_pngenc_chain):
* ext/libpng/gstpngenc.h:
Preallocate the output buffer so that g_memdup() and
gst_buffer_merge() aren't needed anymore. This greatly improves
performances and fixes #512544 .
2008-01-29 18:43:32 +00:00
Wim Taymans
b3c5184b6f
ext/libpng/gstpngdec.c: Post error before sending EOS. Fixes #499178 .
...
Original commit message from CVS:
* ext/libpng/gstpngdec.c: (gst_pngdec_task):
Post error before sending EOS. Fixes #499178 .
2007-11-29 10:34:18 +00:00
Stefan Kost
dfdc0fa8c9
ext/libpng/gstpngdec.*: Don't release the png-memory from within the callback.
...
Original commit message from CVS:
* ext/libpng/gstpngdec.c:
* ext/libpng/gstpngdec.h:
Don't release the png-memory from within the callback.
2007-11-20 12:20:38 +00:00
René Stadler
696e4b0236
ext/libpng/gstpngenc.c: Don't leak buffer data memory. Fixes #498395 .
...
Original commit message from CVS:
Patch by: René Stadler <mail at renestadler dot de>
* ext/libpng/gstpngenc.c:
Don't leak buffer data memory. Fixes #498395 .
2007-11-20 12:11:13 +00:00
Stefan Kost
546bc7dbc1
ext/annodex/Makefile.am: Fix CFLAGS/LIBS.
...
Original commit message from CVS:
* ext/annodex/Makefile.am:
Fix CFLAGS/LIBS.
* ext/cdio/gstcdiocddasrc.c:
* ext/libpng/gstpngdec.c: (gst_pngdec_task):
Include stdlib
* ext/cairo/Makefile.am:
* gst/videofilter/Makefile.am:
* tests/examples/level/Makefile.am:
Use $(LIBM) instead of -lm
2007-07-20 07:41:58 +00:00
Stefan Kost
73ec6b7a1d
More docs. More logs in pngdec.
...
Original commit message from CVS:
* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-good-plugins-docs.sgml:
* docs/plugins/gst-plugins-good-plugins-sections.txt:
* docs/plugins/inspect/plugin-jpeg.xml:
* docs/plugins/inspect/plugin-png.xml:
* ext/jpeg/gstjpegdec.c:
* ext/libpng/gstpngdec.c: (gst_pngdec_task),
(gst_pngdec_sink_setcaps):
More docs. More logs in pngdec.
2007-07-18 09:21:23 +00:00
Tim-Philipp Müller
09c161dac1
Fix build against core CVS.
...
Original commit message from CVS:
* ext/cairo/gsttimeoverlay.c: (gst_cairo_time_overlay_transform):
* ext/jpeg/gstjpegenc.c: (gst_jpegenc_chain):
* ext/libpng/gstpngenc.c: (gst_pngenc_chain):
* ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_chain):
* gst/debug/gstnavigationtest.c: (gst_navigationtest_transform):
* gst/effectv/gstaging.c: (gst_agingtv_transform):
* gst/effectv/gstdice.c: (gst_dicetv_transform):
* gst/effectv/gstedge.c: (gst_edgetv_transform):
* gst/effectv/gstquark.c: (gst_quarktv_transform):
* gst/effectv/gstrev.c: (gst_revtv_transform):
* gst/effectv/gstshagadelic.c: (gst_shagadelictv_transform):
* gst/effectv/gstvertigo.c: (gst_vertigotv_transform):
* gst/effectv/gstwarp.c: (gst_warptv_transform):
* gst/matroska/matroska-demux.c:
(gst_matroska_demux_add_wvpk_header),
(gst_matroska_demux_check_subtitle_buffer),
(gst_matroska_decode_buffer):
* gst/videofilter/gstvideoflip.c: (gst_video_flip_transform):
Fix build against core CVS.
2007-07-11 22:31:06 +00:00
Jan Schmidt
5e32a710d7
ext/libpng/gstpngdec.c: Remove endianness-flipping hack that seems to have been required only because of a bug in ffm...
...
Original commit message from CVS:
* ext/libpng/gstpngdec.c: (gst_pngdec_caps_create_and_set):
Remove endianness-flipping hack that seems to have been required
only because of a bug in ffmpegcolorspace.
Partially Fixes : #451908
2007-07-06 11:42:53 +00:00
Tim-Philipp Müller
08d5dedbaa
ext/: When operating in pull mode, error out correct on not-linked.
...
Original commit message from CVS:
* ext/dv/gstdvdemux.c: (gst_dvdemux_loop):
* ext/libpng/gstpngdec.c: (user_read_data), (gst_pngdec_task):
When operating in pull mode, error out correct on not-linked.
2007-06-08 10:43:26 +00:00
Edward Hervey
ee21b60cd7
ext/libpng/gstpngdec.c: Fix build on macosx.
...
Original commit message from CVS:
* ext/libpng/gstpngdec.c: (user_endrow_callback), (user_read_data):
Fix build on macosx.
2007-05-16 16:50:23 +00:00
Tim-Philipp Müller
3f55b6e912
ext/libpng/gstpngdec.c: If we get a fatal flow return in the loop function, first post the error message and only the...
...
Original commit message from CVS:
* ext/libpng/gstpngdec.c: (gst_pngdec_task):
If we get a fatal flow return in the loop function, first post the
error message and only then send the EOS event downstream, otherwise
applications might get an eos message before the error message and
think everything was ok (related to #429319 ).
2007-04-25 15:08:22 +00:00
Wim Taymans
82ad65b262
ext/libpng/gstpngenc.*: Fix strides. Fixes #364856 .
...
Original commit message from CVS:
* ext/libpng/gstpngenc.c: (gst_pngenc_setcaps), (gst_pngenc_chain):
* ext/libpng/gstpngenc.h:
Fix strides. Fixes #364856 .
Cleanup capsnego.
Set caps on outgoing buffers.
2006-10-27 17:10:42 +00:00
Tim-Philipp Müller
82f5a3508c
Printf format fixes.
...
Original commit message from CVS:
* ext/cairo/gsttimeoverlay.c:
(gst_cairo_time_overlay_update_font_height):
* ext/gdk_pixbuf/pixbufscale.c: (gst_pixbufscale_transform_caps):
* ext/jpeg/gstjpegdec.c: (gst_jpeg_dec_parse_image_data):
* ext/jpeg/gstjpegenc.c: (gst_jpegenc_chain):
* ext/jpeg/gstsmokedec.c: (gst_smokedec_chain):
* ext/jpeg/gstsmokeenc.c: (gst_smokeenc_chain):
* ext/libpng/gstpngdec.c: (user_endrow_callback):
* gst/auparse/gstauparse.c: (gst_au_parse_parse_header):
* gst/avi/gstavidemux.c: (gst_avi_demux_parse_superindex),
(gst_avi_demux_parse_subindex), (gst_avi_demux_parse_stream),
(gst_avi_demux_stream_data):
* gst/cutter/gstcutter.c: (gst_cutter_chain):
* gst/debug/efence.c: (gst_efence_buffer_alloc),
(gst_fenced_buffer_copy):
* gst/id3demux/id3v2frames.c: (id3demux_id3v2_parse_frame):
* gst/matroska/matroska-demux.c: (gst_matroska_demux_add_stream):
* gst/matroska/matroska-mux.c: (gst_matroska_mux_start):
* gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_send),
(gst_rtspsrc_handle_message):
* gst/wavparse/gstwavparse.c: (gst_wavparse_stream_headers):
* sys/ximage/ximageutil.c: (ximageutil_xcontext_get):
Printf format fixes.
2006-10-05 16:37:33 +00:00