Commit graph

2736 commits

Author SHA1 Message Date
Tim-Philipp Müller
2a78a3010d Merge commit '26d6add9457f00ce8ec13844368466f0e3816e5d' into 0.11
Conflicts:
	ext/rtmp/gstrtmpsink.c
2011-11-28 23:20:02 +00:00
Vincent Penquerc'h
9eb79984a8 kate: support for rendering on several YUV formats
This speeds up rendering a fair bit by not requiring colorspace
conversion, whether there is anything to overlay or not.

The blending code was nicked from textoverlay. I would think
this might be a helpful thing to put in, say, libgstvideo at
some point.

https://bugzilla.gnome.org/show_bug.cgi?id=660528
2011-11-28 15:28:39 +00:00
Vincent Penquerc'h
7521b597f4 various: fix pad template ref leaks
https://bugzilla.gnome.org/show_bug.cgi?id=662664
2011-11-28 13:08:27 +00:00
Julien Isorce
26d6add945 rtmp: add WSAStartup and WSACleanup on Win32
https://bugzilla.gnome.org/show_bug.cgi?id=661098
2011-11-28 10:34:45 +00:00
Tim-Philipp Müller
77361e2919 Merge remote-tracking branch 'origin/master' into 0.11
Conflicts:
	ext/opus/gstopusdec.c
	ext/opus/gstopusparse.c
	gst-libs/gst/video/gstbasevideodecoder.c
	gst-libs/gst/video/gstbasevideodecoder.h
2011-11-26 15:37:25 +00:00
Stefan Sauer
181be8d52b opencv: port baseclass to 0.11 2011-11-25 23:11:32 +01:00
Danilo Cesar Lemes de Paula
43190ea0f8 opusenc: Fixing "Unused var" compiling error for opus codec
https://bugzilla.gnome.org/show_bug.cgi?id=664815
2011-11-25 15:32:12 +00:00
Vincent Penquerc'h
631f42eee8 opusenc: only use mono streams for > 2 channels
I'm getting odd results with packing streams into stereo
streams, and using only mono streams is enough in all cases.
2011-11-25 15:31:59 +00:00
Vincent Penquerc'h
65079e3ada opus: add some more debug information about channel mapping 2011-11-25 15:31:59 +00:00
Vincent Penquerc'h
2e0e118676 opusparse: remove dead assigments
We now only keep a ref to the headers for later reuse.
2011-11-25 15:31:59 +00:00
Vincent Penquerc'h
f78c83a0b6 opusenc: do not cause the decoder to apply the channel mapping again
Since we already reorder channels, we do not want to write that
reordering in the header, or the decoder will do it again.
2011-11-25 15:31:59 +00:00
Vincent Penquerc'h
5f85454020 opusdec: fix bogus assertion 2011-11-25 15:31:59 +00:00
Edward Hervey
b78b980d72 Merge remote-tracking branch 'origin/master' into 0.11
Conflicts:
	ext/faac/gstfaac.c
	ext/opus/gstopusdec.c
	ext/opus/gstopusenc.c
	gst/audiovisualizers/gstspacescope.c
	gst/colorspace/colorspace.c
2011-11-25 12:48:58 +01:00
Tim-Philipp Müller
ca772ed321 vp8dec: use new basevideodecoder API to drop frames and get QoS messages posted 2011-11-25 11:37:57 +00:00
Vincent Penquerc'h
78337fc198 opus: pre-skip and output gain are little endian, remove reminder note 2011-11-24 13:40:34 +00:00
Vincent Penquerc'h
0ca385a970 opus: multichannel support 2011-11-24 13:40:34 +00:00
Vincent Penquerc'h
5da03cd2a4 opus: switch to multistream API
It's very similar to the basic API, and is a superset ot it,
which will allow encoding and decoding more than 2 channels.
2011-11-24 13:40:34 +00:00
Vincent Penquerc'h
745cc8d4e4 opusdec: shuffle supported sample rates to favor 48000 2011-11-24 13:40:34 +00:00
Vincent Penquerc'h
f1477522de opusenc: remove useless setup field 2011-11-24 13:40:34 +00:00
Tim-Philipp Müller
6b06fa1d34 neonhttpsrc: remove iradio-* properties
Should send tags instead.
2011-11-24 01:56:07 +00:00
Tim-Philipp Müller
7817bf24f3 neonhttpsrc: unconditionally send icecast request header, remove iradio-mode property 2011-11-24 01:53:36 +00:00
Tim-Philipp Müller
8235729ada mmssrc: make connection-speed property a guint64
Even if the library limits it to an int.
2011-11-24 01:22:13 +00:00
Tim-Philipp Müller
026af880b5 faac, rtmp: more printf format fixes in debug messages
https://bugzilla.gnome.org/show_bug.cgi?id=662618
2011-11-23 23:43:48 +00:00
Mark Nauwelaerts
9680108d77 faac: do not leak buffer when no encoded data yet or encoding error 2011-11-23 23:30:00 +01:00
Mark Nauwelaerts
8b5fbcaedd dtsdec: port to audiodecoder 2011-11-23 23:29:10 +01:00
Krzysztof Krakowiak
4286414e00 modplug: fix modules playing as mono instead of stereo
replaced broken if-return logic for fixating rate and number
of channels that caused that modules were always (after
successful fixation of rate) played as mono (instead of
stereo) by correct one with appropiate warnings.

https://bugzilla.gnome.org/show_bug.cgi?id=619035
2011-11-23 15:30:28 +00:00
Vincent Penquerc'h
4bd5ef9bc5 opusdec: implement replay gain
It would ideally be better to leave this to a rgvolume element,
but we don't control the pipeline. So do it by default, and allow
disabling it via a property, so the correct volume should always
be output.
2011-11-23 14:03:30 +00:00
Vincent Penquerc'h
b80f52a729 opusdec: add in-band FEC support
This allows reconstruction of lost packets if FEC info is included
in the next packet, at the cost of extra latency. Since we do not
know if the stream has FEC (and this can change at runtime), we
always incur the latency, even if we never lose any frame, or see
any FEC information. Off by default.
2011-11-23 12:08:01 +00:00
Wim Taymans
0a9387c43c Merge branch 'master' into 0.11
Conflicts:
	ext/opus/gstopusdec.c
	ext/opus/gstopusenc.c
	ext/opus/gstopusparse.c
	gst/audiovisualizers/gstwavescope.c
	gst/filter/Makefile.am
	gst/filter/gstfilter.c
	gst/filter/gstiir.c
	gst/playondemand/gstplayondemand.c
2011-11-23 11:08:39 +01:00
Tim-Philipp Müller
cd851cc712 opusenc: mark properties changeable at runtime with GST_PARAM_MUTABLE_PLAYING 2011-11-22 20:27:50 +00:00
Vincent Penquerc'h
5e1df00674 opusenc: allow setting most properties at PLAYING time
Opus allows these to be changed during encoding, transparently
to the decoder.
2011-11-22 17:04:09 +00:00
Vincent Penquerc'h
5367aa8dbf opusenc: bound the bitrate to more sensible values
Go from the bounds mentioned in the spec, and allow some more
variation.
In particular, don't allow silly low bitrates, and allow reaching
the maximum useful bitrate.
2011-11-22 16:14:06 +00:00
Vincent Penquerc'h
49e08a1835 opusenc: fix crash on pathological parameters
Asking for 1 bit/s would select a 0 byte buffer, leading
to a crash. Buffer size is now controlled by a max-payload-size
property, which can't be less than 2.
2011-11-22 15:33:20 +00:00
Vincent Penquerc'h
da5c41930c opusparse: do not send headers through data path
Additionally, since Opus packets may change between stereo
and mono as the encoder sees fit, assume two channels when
we do not see a header, and use the header value otherwise.
2011-11-22 13:20:32 +00:00
Vincent Penquerc'h
694775a7b1 opus: move header magic testing to gstopusheader 2011-11-22 13:20:31 +00:00
Vincent Penquerc'h
5ac7ff57fd opusdec: skip pre-skip samples 2011-11-22 13:20:31 +00:00
Vincent Penquerc'h
b98cc2d092 opusdec: read pre-skip from first header if available 2011-11-22 13:20:31 +00:00
Vincent Penquerc'h
6bcf813ed0 opusenc: reset tagsetter interface on stop 2011-11-21 12:02:28 +00:00
Vincent Penquerc'h
d95530bfbf opusdec: handle NULL packets (used for PLC) 2011-11-21 11:51:21 +00:00
Vincent Penquerc'h
b9d47a00ca opusdec: light cleanup 2011-11-21 11:51:21 +00:00
Vincent Penquerc'h
6c2c0aef53 opusparse: parse raw opus packets 2011-11-21 11:51:21 +00:00
Vincent Penquerc'h
c0695ba7f2 opusenc: do not push header buffers
Opus headers appear only when muxed in Ogg, so only place them
on the caps, where oggmux will find them, but other elements will
be blithely unaware of them.
2011-11-21 11:51:21 +00:00
Vincent Penquerc'h
bff6e3c628 opus: make opusparse set headers on caps
Header-on-caps code moved to a new shared location to avoid
duplicating the code.
2011-11-21 11:51:20 +00:00
Edward Hervey
501d5b2779 gme: Port to new pad function signatures 2011-11-21 10:54:56 +01:00
Vincent Penquerc'h
7664e28a0c opusenc: fix terminating NUL being written in signature 2011-11-19 15:59:53 +00:00
Vincent Penquerc'h
5dd147d705 opusenc: make frame-size an enum
It only supports a set number of specific values (including
a non integer one).
2011-11-19 15:59:52 +00:00
Vincent Penquerc'h
f8bb784135 opusenc: the encoder might not make use of all the bytes 2011-11-19 15:59:52 +00:00
Stefan Sauer
b7cb6ecedb opencv: use caps constants more 2011-11-18 20:57:31 +01:00
Stefan Sauer
4f69b60ac0 opencv: fixup doc blobs 2011-11-18 20:57:31 +01:00
Stefan Sauer
c613904c68 opencv: fixup gobject naming conventions 2011-11-18 20:57:31 +01:00
Stefan Sauer
ee91057526 opencv: remove empty finalize implementations 2011-11-18 08:30:37 +01:00
Mark Nauwelaerts
97279f1dfd voamrwbenc: port to audioencoder 2011-11-17 23:04:23 +01:00
Mark Nauwelaerts
53723f81eb voaacenc: some code shuffle cleanup 2011-11-17 23:04:21 +01:00
Mark Nauwelaerts
ea92249ee2 voaacenc: port to audioencoder 2011-11-17 23:04:18 +01:00
Mark Nauwelaerts
56701570e9 celtenc: properly report error case 2011-11-17 23:04:15 +01:00
Mark Nauwelaerts
8104d7a2ec celtdec: remove unused instance variable 2011-11-17 23:04:05 +01:00
Wim Taymans
bc6ed0bf97 Merge branch 'master' into 0.11
Conflicts:
	ext/celt/gstceltdec.c
	ext/opus/gstopusdec.c
	ext/opus/gstopusdec.h
	ext/opus/gstopusenc.c
	ext/opus/gstopusenc.h
	ext/opus/gstopusparse.c
2011-11-17 17:32:42 +01:00
Wim Taymans
940de5b195 add parent to pad functions 2011-11-17 15:53:42 +01:00
Stefan Sauer
c987a861d3 gme: port for pad_query api change 2011-11-17 09:56:34 +01:00
Stefan Sauer
fefa1df8b9 facedetect: detect face features
Also detect mouth, nose and eyes. Drop faces that don't have them. Fixes leaking the
cascades. Adds more docs.
2011-11-16 21:03:36 +01:00
Stefan Sauer
a857c90590 facedetect: Gstfacedetect -> GstFacedetect 2011-11-16 21:03:36 +01:00
Stefan Sauer
94534a0b83 facedetect: code maintenance
Update example to be useful. Draw colored ellipses instead of unicolor circles.
Reflow code for more local variables. Improve parameter descriptions.
2011-11-16 21:03:36 +01:00
Vincent Penquerc'h
15b5fecf30 opusenc: do not include variable fields in caps
Those can vary from one packet to the next, so have no reason
to be in the caps.
2011-11-16 18:51:16 +00:00
Vincent Penquerc'h
af8771ef2f opusenc: fix constrained-vbr property name typo 2011-11-16 18:51:16 +00:00
Vincent Penquerc'h
714ced7d19 opusdec: let the base class handle all timing 2011-11-16 18:35:29 +00:00
Mark Nauwelaerts
2842e14263 celtdec: port to audiodecoder 2011-11-16 19:19:15 +01:00
Mark Nauwelaerts
c90f45df00 celtenc: port to audioencoder 2011-11-16 19:13:02 +01:00
Vincent Penquerc'h
5efa9ebec8 opusparse: add opusparse element
A very simple element that parses Opus streams from the ad hoc
framing used by the Opus test vectors.
2011-11-16 17:58:15 +00:00
Vincent Penquerc'h
a02e18917f opusdec: allow negotiation of rate/channels with downstream
Since an opus stream may be decoded to any (sensible) rate,
and either stereo or mono, we try to accomodate downstream.
2011-11-16 17:45:00 +00:00
Vincent Penquerc'h
d10cbd0268 opusdec: rewrite logic
Parameters such as frame size, etc, are variable. Pretty much
everything can change within a stream, so be prepared about it,
and do not cache parameters in the decoder.
2011-11-16 17:45:00 +00:00
Vincent Penquerc'h
da1eaa2d78 opus: port to base audio encoder/decoder 2011-11-16 17:45:00 +00:00
Wim Taymans
6d92ecac75 add parent to query function 2011-11-16 17:30:38 +01:00
Vincent Penquerc'h
3c993f1c4a opusdec: allow negotiation of rate/channels with downstream
Since an opus stream may be decoded to any (sensible) rate,
and either stereo or mono, we try to accomodate downstream.
2011-11-16 13:43:36 +00:00
Vincent Penquerc'h
70ca2a6851 opusdec: rewrite logic
Parameters such as frame size, etc, are variable. Pretty much
everything can change within a stream, so be prepared about it,
and do not cache parameters in the decoder.
2011-11-16 13:43:36 +00:00
Vincent Penquerc'h
9e79a8ed01 opusdec: remove buffer pool, buffers are not constant size 2011-11-16 13:43:36 +00:00
Vincent Penquerc'h
a8e4d9bd3e opusparse: add opusparse element
A very simple element that parses Opus streams from the ad hoc
framing used by the Opus test vectors.
2011-11-16 13:43:36 +00:00
Vincent Penquerc'h
c5c67c1913 opusenc: fix pointer mismatch in memcpy on drain 2011-11-15 17:50:39 +00:00
Wim Taymans
5231ae7252 _peer_get_caps() -> _peer_query_caps() 2011-11-15 17:24:07 +01:00
Wim Taymans
03713e5045 change getcaps to query 2011-11-15 16:34:13 +01:00
Vincent Penquerc'h
ac9c7bbfef opus: port to encoder/decoder base classes 2011-11-14 13:50:23 +00:00
Tim-Philipp Müller
357d7bdfed Update for GstURIHandler get_protocols() changes 2011-11-13 23:55:56 +00:00
Vincent Penquerc'h
7b80e0773f opus: port to 0.11 2011-11-11 17:46:41 +00:00
Mart Raudsepp
61cc352902 mimic, opencv, vp8, acmmp3dec, linsys: Don't build static plugins
Pass --tag=disable-static to libtool everywhere where it's been forgotten

https://bugzilla.gnome.org/show_bug.cgi?id=663768
2011-11-11 11:54:15 +00:00
Edward Hervey
02de08aaaa gme: Remove query_types 2011-11-10 18:35:40 +01:00
Wim Taymans
2091480c54 Merge branch 'master' into 0.11 2011-11-10 18:34:48 +01:00
Wim Taymans
5684c1200b update for adapter api change 2011-11-10 18:25:53 +01:00
Vincent Penquerc'h
609ae9b812 opusenc: fix bandwidth property type mismatch 2011-11-10 17:14:10 +00:00
Wim Taymans
dbdaa23742 Merge branch 'master' into 0.11
Conflicts:
	gst/colorspace/colorspace.c
2011-11-09 12:19:04 +01:00
Vincent Penquerc'h
ab27c0da8e tiger: add a 'silent' property to skip rendering
https://bugzilla.gnome.org/show_bug.cgi?id=662857
2011-11-07 12:14:57 +00:00
Vincent Penquerc'h
cabc01f107 resindvdsrc: do not try to seek before the first chapter
https://bugzilla.gnome.org/show_bug.cgi?id=589064
2011-11-07 11:55:59 +00:00
Vincent Penquerc'h
826eb57183 celtenc: fix latency query
https://bugzilla.gnome.org/show_bug.cgi?id=616421
2011-11-07 11:21:27 +00:00
Vincent Penquerc'h
97d456bad2 opusenc: fix latency query
This makes live 'audiosrc ! opusenc ! opusdec ! audiosink' pipelines
actually work without all audio being dumped.

https://bugzilla.gnome.org/show_bug.cgi?id=660999
2011-11-07 11:21:27 +00:00
Vincent Penquerc'h
18c2d1ef9f opusenc: use debug level for debug info, not error
https://bugzilla.gnome.org/show_bug.cgi?id=660999
2011-11-07 11:21:27 +00:00
Vincent Penquerc'h
ac95f56d2e celtenc: fix calculation of filler data size
https://bugzilla.gnome.org/show_bug.cgi?id=660469
2011-11-07 11:21:26 +00:00
Vincent Penquerc'h
4a4b1f472e opusenc: fix calculation of filler data size
https://bugzilla.gnome.org/show_bug.cgi?id=660469
2011-11-07 11:21:26 +00:00
Stefan Sauer
9f73890892 controller: port to new controller location and api 2011-11-04 20:14:01 +01:00
Wim Taymans
eaad7e58b0 more template fixes 2011-11-04 12:31:19 +01:00
Wim Taymans
c8adc4f8c8 make request pads take _%u 2011-11-04 12:22:37 +01:00
Edward Hervey
9f72f309f6 gme: Fix for removal of gst_element_found_tags_for_pad() 2011-11-04 10:17:38 +01:00
Edward Hervey
9488a0356a vp8: Port to 0.11 2011-11-03 14:11:51 +01:00
Wim Taymans
b39f4a80f7 gme: update for taglist api changes 2011-11-02 09:14:41 +01:00
Tim-Philipp Müller
c186b74296 kate, bayer, tsdemux: update for caps and taglist API changes 2011-10-31 14:51:01 +00:00
Wim Taymans
9ca3734e52 make elements compile again 2011-10-28 15:16:43 +02:00
Wim Taymans
9b41017f9d assrender: fix compilation 2011-10-27 16:23:10 +02:00
Wim Taymans
ce41348f78 Merge branch 'master' into 0.11 2011-10-27 16:13:56 +02:00
Stefan Sauer
69f8921e2c interfaces: clean up the use of iface and class/klass 2011-10-21 15:04:05 +02:00
Tim-Philipp Müller
4060056ce6 assrender, nuvdemux: unref buffers with gst_buffer_unref() 2011-10-18 14:41:48 +01:00
Wim Taymans
9195c33d36 celt: start of 0.11 port 2011-10-18 14:28:29 +02:00
Wim Taymans
e856f6f475 faac: port to 0.11 2011-10-16 16:45:24 +02:00
Wim Taymans
a9fc805e36 kate: port to 0.11 2011-10-08 14:22:58 +02:00
Wim Taymans
f954f50ed6 zbar: port to 0.11 2011-10-08 12:07:58 +02:00
Wim Taymans
4b27b7edd4 gme: port to 0.11 2011-10-08 11:57:58 +02:00
Wim Taymans
7fe3a19c3d flite: port to 0.11 2011-10-08 11:46:23 +02:00
Wim Taymans
9ddfdfe60c rtmp: port to 0.11 2011-10-08 11:40:25 +02:00
Wim Taymans
67dac04012 assrender: port to 0.11 2011-10-06 10:59:58 +02:00
Wim Taymans
d934d76870 mmssrc: port to 0.11 2011-10-04 18:54:13 +02:00
Wim Taymans
395430d350 faad: use right caps 2011-10-04 13:33:09 +02:00
Wim Taymans
a7d614b963 Merge branch 'master' into 0.11 2011-10-04 13:29:21 +02:00
Wim Taymans
d26f7319e9 Merge branch 'master' into 0.11 2011-10-03 11:24:04 +02:00
Vincent Penquerc'h
9f9d52c6cb opusdec: fix decoding
A simple ... opusenc ! opusdec ... pipeline now works.

https://bugzilla.gnome.org/show_bug.cgi?id=660364
2011-10-03 11:21:37 +02:00
Vincent Penquerc'h
532e90a34d opusenc: moan if we get an unexpected amount of data
https://bugzilla.gnome.org/show_bug.cgi?id=660364
2011-10-03 11:21:24 +02:00
Vincent Penquerc'h
934144c352 opus: properly setup caps and init state from caps
https://bugzilla.gnome.org/show_bug.cgi?id=660364
2011-10-03 11:21:15 +02:00
Vincent Penquerc'h
85de20b8a1 opusenc: use the same frame size setup as the opus test code
https://bugzilla.gnome.org/show_bug.cgi?id=660364
2011-10-03 11:21:02 +02:00
Vincent Penquerc'h
8caa7adb5e opusdec: opus supports a select set of sampling rates
https://bugzilla.gnome.org/show_bug.cgi?id=660364
2011-10-03 11:20:52 +02:00
Vincent Penquerc'h
ae510870e9 opus: make it build against current, and remove cruft
https://bugzilla.gnome.org/show_bug.cgi?id=660364
2011-10-03 11:20:46 +02:00
Vincent Penquerc'h
fa3d661083 kate: avoid rendering when we know there is nothing to render
https://bugzilla.gnome.org/show_bug.cgi?id=660528
2011-10-03 10:38:43 +02:00
Vincent Penquerc'h
12bb47343d kate: fix race condition on PAUSED->READY state change
https://bugzilla.gnome.org/show_bug.cgi?id=660630
2011-10-03 10:36:35 +02:00
Wim Taymans
f03b320c8d faad: port to 0.11 2011-09-27 13:22:31 +02:00
Wim Taymans
7f4cf50496 Merge branch 'master' into 0.11 2011-09-26 22:31:17 +02:00
Sebastian Dröge
fc2434fd97 faac: Also set maximum number of samples that the subclass wants 2011-09-26 16:26:31 +02:00
Sebastian Dröge
874da87b25 faac: Simple fix for GstAudioEncoder API change 2011-09-26 16:05:40 +02:00
Tim-Philipp Müller
e37634e9f9 faad: fix compiler warning
gstfaad.c: In function 'gst_faad_parse':
gstfaad.c:615:11: error: 'len' may be used uninitialized in this function
2011-09-23 10:10:37 +01:00
Tim-Philipp Müller
c9f7e9b26d faad: parse wants a GstFlowReturn return value, not a gboolean 2011-09-23 09:57:01 +01:00
Mark Nauwelaerts
3900dc94ed faac: fixup misunderstanding in sample counting
... between codec and audioencoder regarding whether or not channel
count is already considered.

Fixes #659836.
2011-09-22 18:24:43 +02:00
Mark Nauwelaerts
131df954ce faad: use some more boilerplate 2011-09-22 16:06:07 +02:00
Mark Nauwelaerts
7234914e0f faad: port to audiodecoder 2011-09-22 16:06:04 +02:00
Mark Nauwelaerts
a7ed9677ba faac: use some more boilerplate 2011-09-22 16:02:52 +02:00
Mark Nauwelaerts
c8a3567923 faac: port to audioencoder 2011-09-22 16:02:49 +02:00
Vincent Penquerc'h
70be630427 kate: forward return code from setting src pad caps
https://bugzilla.gnome.org/show_bug.cgi?id=659606
2011-09-21 13:59:54 +02:00
Vincent Penquerc'h
fe0a2ec885 celt: a bit more error checking on header parsing
https://bugzilla.gnome.org/show_bug.cgi?id=659087
2011-09-19 09:39:16 +02:00
Vincent Penquerc'h
d8684fffa1 celtenc: cleanup header creation
Avoid an extra copy via a temporary fixed size stack buffer.
Use libcelt's header size to allocate a buffer of the correct
size in the first place (libcelt has an off by 4 there, so
account for this).
While there, make size unsigned, and granpos signed.

https://bugzilla.gnome.org/show_bug.cgi?id=659087
2011-09-19 09:39:00 +02:00
Vincent Penquerc'h
06764fcd3f celtenc: do not use invalid buffer timestamps
https://bugzilla.gnome.org/show_bug.cgi?id=659087
2011-09-19 09:37:16 +02:00
Vincent Penquerc'h
37e688197d celtdec: fix error checking with libcelt 0.11
The return value of celt_decode has changed, newer versions
now return positive values on success.

https://bugzilla.gnome.org/show_bug.cgi?id=659087
2011-09-19 09:36:59 +02:00
Vincent Penquerc'h
90b2484648 celtenc: allow actually overriding frame size
https://bugzilla.gnome.org/show_bug.cgi?id=659087
2011-09-19 09:36:45 +02:00
Vincent Penquerc'h
c8bda2ed76 kate: flush on seek, and ensure we cancel any waiting buffer
This is what pango textoverlay does, and I've had that condition
variable get stuck once.

https://bugzilla.gnome.org/show_bug.cgi?id=658940
2011-09-19 09:35:24 +02:00
Olivier Crête
b872f84c96 spanplc: Fix typos 2011-09-15 18:17:52 -04:00
Alessandro Decina
f33b78abd1 rtmpsink: don't block the main thread with RTMP_Connect
Move the RTMP_Connect call from the main thread (::start) to the streaming
thread (::render).
2011-09-12 11:23:03 +02:00
Youness Alaoui
61ee9918be spandsp: Adding spandsp plugin with spanplc element for packet loss concealment 2011-09-08 18:11:33 -04:00
Stefan Sauer
e21c4abc50 kateparse: fix crap in object macros 2011-09-07 15:50:42 +02:00
Wim Taymans
d4590a1959 Merge branch 'master' into 0.11 2011-09-06 16:13:28 +02:00
David Schleef
cd35839e98 vp8enc: fix drop-frame property
Fixes #656929.
2011-09-01 17:04:52 -07:00
Josep Torra
d663259d4b mms: fix warnings related to the format on the debug lines. 2011-08-31 23:06:53 +02:00
Jan Schmidt
8fbf3a3129 soundtouch: Handling incoming rate when requested.
Absorb inbound segments with rate != 1.0 and output a segment with
rate taken from the new output-rate property, adjusting the segment
applied_rate, stream duration and timestamps as necessary to
compensate
2011-08-30 17:49:29 +10:00
Nicola Murino
436620fff9 fix valgrind warning about Conditional jump or move depends on uninitialised value(s) 2011-08-26 15:54:19 +02:00
Nicola Murino
71a2a1be8e Move m_pprevFrame free just before the clone of the latest frame for readability 2011-08-26 15:54:19 +02:00
Wim Taymans
ad06ac2b4b Merge branch 'master' into 0.11
Conflicts:
	ext/resindvd/rsnwrappedbuffer.c
2011-08-25 12:49:26 +02:00
Tim-Philipp Müller
dc3db053b5 kate: make gst_kate_util_is_utf8_string() inline to fix compiler warning with older libkate versions
gstkateutil.c:230:1: error: 'gst_kate_util_is_utf8_string' defined but not used
2011-08-24 16:54:31 +01:00
Vincent Penquerc'h
04f7876f94 rsndvd: ensure metadata is writable when writing to it
https://bugzilla.gnome.org/show_bug.cgi?id=657250
2011-08-24 16:37:30 +01:00
Vincent Penquerc'h
d1a6ca2203 kate: pass on timed event metadata as tags when we can
Metadata attached to other objects that may be used in this
event are not passed, as is binary metadata.
2011-08-23 10:34:48 +02:00
Vincent Penquerc'h
c24d052bb7 vp8: probe for the new tuning API to keep building with older libvpx
https://bugzilla.gnome.org/show_bug.cgi?id=656928
2011-08-23 10:23:21 +02:00
Vincent Penquerc'h
e323efc353 rsvgdec: use input buffer timings if possible
SVG data may come through multiple buffers, so keep track of the
timestamp of the first buffer, and use it in preference.

https://bugzilla.gnome.org/show_bug.cgi?id=628284
2011-08-23 10:21:04 +02:00
Vincent Penquerc'h
1ed91ad1db kate: do not consider an empty SPU to be a fatal error
Instead, just encode nothing and go on.

https://bugzilla.gnome.org/show_bug.cgi?id=657091
2011-08-23 10:16:30 +02:00
Vincent Penquerc'h
46cfb5fa4f kate: do not clear out high bits from display area
http://dvd.sourceforge.net/spu_notes does not mention that high bits
are to be masked, and not clearing them makes a sample work, where
clearing them yielded left > right.
History from the dvdspu plugin, from where this code was copied,
does not shed any light, as tracing this code's origin shows
the same bitmasks being there in 2007 when it was imported.

https://bugzilla.gnome.org/show_bug.cgi?id=657091
2011-08-23 10:16:22 +02:00
Vincent Penquerc'h
57ae8c4bf5 ofa: fingerprint creation can fail
There does not seem to be a way to retrieve information
about why failure occured, unfortunately.
When failure occurs, do not post a NULL fingerprint tag.

https://bugzilla.gnome.org/show_bug.cgi?id=656641
2011-08-18 11:10:52 +02:00
Vincent Penquerc'h
6ef56f56d7 ofa: cleanup
Avoid repeating casting to GstAudioFilter when one will do
Use object related logging to make it easier to get just the logs we want

https://bugzilla.gnome.org/show_bug.cgi?id=656641
2011-08-18 11:10:09 +02:00
Vincent Penquerc'h
683fbaa81a ofa: do not create fingerprint on EOS if record is FALSE
https://bugzilla.gnome.org/show_bug.cgi?id=656641
2011-08-18 11:07:48 +02:00
Sebastian Dröge
4476ca28df vp8enc: Remove unused and useless variable in tags handling 2011-08-18 10:39:26 +02:00
Wim Taymans
52d48bb142 Merge branch 'master' into 0.11 2011-08-17 19:01:39 +02:00
Vincent Penquerc'h
ffa9c81798 celtdec: make this compile with git libcelt
celt_mode_info was removed, in favor of a _ctl.

https://bugzilla.gnome.org/show_bug.cgi?id=656686
2011-08-16 20:27:03 +01:00
Vincent Penquerc'h
5a0a0aac19 ofa: don't crash when there's no data to create a fingerprint from
Fixes a crash when no data flowed through.

https://bugzilla.gnome.org/show_bug.cgi?id=656641
2011-08-16 20:12:38 +01:00
Sebastian Dröge
cc447af202 diracenc: Update for basevideoencoder ::get_caps() removal 2011-08-12 12:08:32 +02:00
Sebastian Dröge
935b3828a3 schroenc: Update for basevideoencoder ::get_caps() removal 2011-08-12 12:08:20 +02:00
Sebastian Dröge
896a0edbdc vp8enc: Update for basevideoencoder ::get_caps() removal 2011-08-12 12:08:08 +02:00
Sjoerd Simons
04b74947ad schroedinger: Fix set but unused variables
Remove some dead code that triggers "set but unused variables"
from Gcc 4.6.  Fixes #656166

Signed-off-by: David Schleef <ds@schleef.org>
2011-08-08 12:10:13 -07:00
Sjoerd Simons
27f40d8a57 dirac: Fix set but unused variables
Remove some dead code that triggers "set but unused variables" from Gcc
4.6.  Fixes #656164.

Signed-off-by: David Schleef <ds@schleef.org>
2011-08-08 12:09:46 -07:00
Stefan Sauer
f241dafe5c motioncells: turn two global vars into static variables
Move 2 variable to motioncells_warpper and make them static.
2011-08-04 13:36:05 +02:00
Wim Taymans
2ba07782cd Merge branch 'master' into 0.11 2011-08-04 09:40:46 +02:00
Wim Taymans
01b9b5002f Merge branch 'master' into 0.11
Conflicts:
	common
	configure.ac
	gst/colorspace/colorspace.c
	gst/colorspace/colorspace.h
	gst/colorspace/gstcolorspace.c
2011-08-04 09:36:07 +02:00
David Schleef
6a259e2a0d kateenc: Fix uninitialized error 2011-08-03 13:39:34 -07:00
David Schleef
10e23078e5 schroenc: remove shape_output handling 2011-08-03 13:39:33 -07:00
David Schleef
a4eea10af0 diracenc: Remove unused shape_output code 2011-08-03 13:39:33 -07:00
David Schleef
6b78923330 vp8enc: Add more properties 2011-08-03 13:39:33 -07:00
Alexey Fisher
69c9b2d9c9 vp8enc: add min/maxsection-pct option
This options should be good to redeuce decode CPU load.
for lowend hardware:
minsection-pct=15 maxsection-pct=400

for hiend hw:
minsection-pct=5 maxsection-pct=800

see example:
http://www.webmproject.org/tools/encoder-parameters/#2-pass_vbr_encoding_for_smooth_playback_on_low-end_hardware

Signed-off-by: Alexey Fisher <bug-track@fisher-privat.net>
Signed-off-by: David Schleef <ds@schleef.org>
2011-08-03 13:39:33 -07:00
Alexey Fisher
782af30aa2 vp8enc: add lag-in-frames option.
This option set maximum of frames codec should remember,
to make better prediktion for alt-ref frames.

See example:
http://www.webmproject.org/tools/encoder-parameters/#2-pass_best_quality_vbr_encoding

Signed-off-by: Alexey Fisher <bug-track@fisher-privat.net>
Signed-off-by: David Schleef <ds@schleef.org>
2011-08-03 13:39:33 -07:00
Alexey Fisher
7770eb91aa vp8enc: use multipass.cache file name as default for multipass mode.
Signed-off-by: Alexey Fisher <bug-track@fisher-privat.net>
Signed-off-by: David Schleef <ds@schleef.org>
2011-08-03 13:39:33 -07:00
Mukul Majmudar
5293f30f3f faac: Add properties for VBR encoding
Property "quality" to specify VBR quantizer quality and property
"brtype" to choose between ABR and VBR encoding. The default is now VBR
with quality=100.

Fixes bug #654310.

Signed-off-by: David Schleef <ds@schleef.org>
2011-08-03 13:39:33 -07:00
Tim-Philipp Müller
7e49dad23b Fix some more variable-set-but-not-used compiler warnings 2011-08-02 22:57:15 +01:00
Robert Jobbagy
4723a5d90c motioncells: new element to detect areas of motion 2011-07-28 10:28:50 +02:00
Sebastian Dröge
8ba4f9178f schroenc: Update for GstBaseVideoEncoder::finish() signature change 2011-07-21 08:09:11 +02:00
Sebastian Dröge
43e575319e vp8enc: Update for GstBaseVideoEncoder::finish() signature change 2011-07-21 08:09:11 +02:00
Sebastian Dröge
1333ef9bbf diracenc: Update for GstBaseVideoEncoder::finish() signature change 2011-07-21 08:09:11 +02:00
Nicolas Dufresne
e8d24859ca Fix compilation for unused but not set
https://bugzilla.gnome.org/show_bug.cgi?id=654572
2011-07-20 13:11:53 -04:00
Sreerenj Balachandran
8339ff458d dfbvideosink: fix harmless typo in variable initialization
https://bugzilla.gnome.org/show_bug.cgi?id=654840
2011-07-18 15:05:23 +01:00
Alessandro Decina
adc048eb64 neonhttpsrc: implement URI query 2011-07-14 23:14:13 +02:00
Sebastian Dröge
62224e66f9 schroedinger: Fix compilation and set-but-not-used compiler warnings 2011-07-13 10:42:36 +02:00
Sebastian Dröge
1f50564962 diracenc: Fix compilation by including the new gstbasevideoutils.h header and fixing some set but not used compiler warnings 2011-07-13 10:33:58 +02:00
Olivier Crête
98f19a3674 jp2k: Fix set-but-unused warnings 2011-07-12 18:20:23 -04:00
Olivier Crête
c4d00d06a7 resindvd: Fix set-but-unused warnings 2011-07-12 18:18:30 -04:00
Olivier Crête
27b8c96391 cog: Fix set-but-unused warnings 2011-07-12 18:16:54 -04:00
Olivier Crête
eba9cf06d4 vp8: Fix set-but-unused warnings 2011-07-12 18:05:25 -04:00
Sebastian Dröge
b0d619855c vp8enc: Use destroy notify to free the coder hook 2011-07-09 11:31:02 +02:00
David Schleef
3b6cd3d35c opus: duplicate from CELT
Copy the celt plugin and convert it to Opus.  Mostly works.
2011-07-07 12:05:53 -07:00
David Schleef
2a1d4c9b4a vp8enc: update for new libvpx api 2011-07-04 16:34:48 -07:00
Alexey Fisher
d1fe501eb7 vp8enc: generate a timestamp for alt-ref frames.
It will fix handling of altref/invisible frames since matroska-mux
drop any fram with no timestamp.

see also:
http://www.webmproject.org/code/specs/container/
The encoder will currently set the AR's timestamp as close as possible
to the previous frame while attempting to provide a timestamp that is
strictly increasing. In cases where the time base given to the encoder
at configure time is not granular enough to allow for this the AR
will share the same timestamp as D, but should be
treated as having no duration.

Fixes bug #652951

Signed-off-by: Alexey Fisher <bug-track@fisher-privat.net>
2011-06-26 16:56:33 +02:00
Alexey Fisher
f5391e135a vp8dec: add check if we have legal aspect-ratio before reset it.
the commit f9b552f049 (vp8dec: set par to 1/1)
will fix situation where no aspect-ratio is set, but it brake
stream with available aspect-ratio. This patch fix it.

Fixes: #652902.

Signed-off-by: Alexey Fisher <bug-track@fisher-privat.net>
2011-06-25 11:36:05 -07:00
Jan Schmidt
38bf3169ff RTMP: add rtmpsink element for output to an RTMP server 2011-06-18 01:09:51 +10:00
Wim Taymans
a2b7a672b8 Merge branch 'master' into 0.11
Conflicts:
	android/aacparse.mk
	android/amrparse.mk
	android/h264parse.mk
	android/metadata.mk
	android/qtmux.mk
	android/sdpelem.mk
	configure.ac
	gst/qtmux/gstqtmux.c
	win32/common/config.h
2011-06-15 16:06:36 +02:00
David Schleef
f9b552f049 vp8dec: set par to 1/1 2011-06-04 14:09:29 -07:00
Debarshi Ray
335293bf50 Remove unused but set variables
This is needed to satisfy the new -Wunused-but-set-variable added in
GCC 4.6: http://gcc.gnu.org/gcc-4.6/changes.html
2011-06-04 20:26:02 +01:00
Stefan Kost
45e87e8cce zbar: remove template stamp comment 2011-05-31 13:53:41 +03:00
Tom Deseyn
8f7183dc85 dfbvideosink: Also consider non-accelerated DirectFB surfaces
Fixes bug #631390.
2011-05-30 08:48:29 +02:00
Tim-Philipp Müller
e94245c264 faac: fix CFLAGS and LIBS order in Makefile.am 2011-05-27 10:44:28 +01:00
Sebastian Dröge
4093202e9d faac: Set the correct, valid sample rates in the pad template caps 2011-05-27 10:44:42 +02:00
Sebastian Dröge
77f20353f8 voaacenc: Make sure to also return only a subset of the pad template caps in getcaps 2011-05-27 10:41:02 +02:00
Sebastian Dröge
da03a46861 voaacenc: Set the correct, valid sample rates in the pad template caps 2011-05-27 10:35:31 +02:00
Sebastian Dröge
b87ff1a1df voaacenc: The encoder library currently only supports 1 or 2 channels 2011-05-27 10:32:26 +02:00
Sebastian Dröge
e3eabb6e6a voaacenc: Add profile and level to the caps
Fixes bug #650595.
2011-05-27 10:31:34 +02:00
Sebastian Dröge
6702de4237 faac: Add the profile and level to the caps
Also negotiate the profile from the downstream peer caps
instead of using a property.

Fixes bug #650594.
2011-05-27 10:11:32 +02:00
Sebastian Dröge
7f0aa4061e faac: Use PROP_ instead of ARG_ for the property enums 2011-05-27 09:40:38 +02:00
Sebastian Dröge
0bb2a4d229 dc1394src: Implement LATENCY query
Based on the LATENCY query code in v4l2src and the patch
by Tristan Matthews. Fixes bug #625520.
2011-05-26 09:23:49 +02:00
Stefan Kost
579188d436 lv2: ensure uniqe property names
Copy and adjust the code from ladspa plugin to ensure unique gobject property
names.
2011-05-25 23:26:39 +03:00
Tim-Philipp Müller
202a548030 mpeg2enc: fix build with 1.9.0 release again after recent fixes for mjpegtools 2.0.0
https://bugzilla.gnome.org/show_bug.cgi?id=650970
2011-05-25 14:44:50 +01:00
Götz Waschk
407b025786 mpeg2enc: support mjpegtools 2.0
This adds conditional includes for the renamed headers in mjpegtools 2.0.
Fixes: #650970.
2011-05-24 17:15:17 -07:00
Sebastian Dröge
4e01ce3fd2 xviddec: Add video/mpeg,mpegversion=4 to the caps
Fixes bug #609639.
2011-05-23 17:30:41 +02:00
Christian Fredrik Kalager Schaller
efb89cfd4c fix build of openal plugin from disted tarball 2011-05-23 14:58:47 +01:00
Sebastian Dröge
67f23a8539 teletextdec: Minor cleanup and indention fixes 2011-05-23 15:32:09 +02:00
Sebastian Dröge
827e2d13c1 teletextdec: Don't use GST_FLOW_IS_FATAL() 2011-05-23 15:24:12 +02:00
Sebastian Dröge
81134554db teletextdec: Fix buffer data leak 2011-05-23 15:20:37 +02:00
Andoni Morales Alastruey
d20de1087c teletextdec: Add support for pango
https://bugzilla.gnome.org/show_bug.cgi?id=619739
2011-05-23 15:17:41 +02:00
Andoni Morales Alastruey
f4e4fc44f7 teletextdec: add a new method to convert a page in a list of strings
https://bugzilla.gnome.org/show_bug.cgi?id=619739
2011-05-23 15:17:41 +02:00
Andoni Morales Alastruey
fb98c55f67 teletextdec: add some data in the preroll buffer
https://bugzilla.gnome.org/show_bug.cgi?id=619739
2011-05-23 15:17:41 +02:00
Andoni Morales Alastruey
126a98d967 teletextdec: fix deadlock on a stream error
https://bugzilla.gnome.org/show_bug.cgi?id=619739
2011-05-23 15:17:41 +02:00
Andoni Morales Alastruey
afd240c621 teletextdec: don't try to push an event on a pad that returned an error
https://bugzilla.gnome.org/show_bug.cgi?id=619739
2011-05-23 15:17:41 +02:00
Andoni Morales Alastruey
8bb6ff414f teletextdec: New teletext decoder plugin based in zvbi
https://bugzilla.gnome.org/show_bug.cgi?id=619739
2011-05-23 15:17:37 +02:00
Sebastian Dröge
0e596670ef openal: Add new openalsrc element
Based on patches by Victor Lin <bornstub@gmail.com>

Fixes bug #550230.
2011-05-23 14:30:11 +02:00
Sebastian Dröge
66a4ed47a3 openal: Add new OpenAL sink element
Based on a patch by Chris Robinson <chris.kcat@gmail.com>

Fixes bug #615615.
2011-05-23 14:30:11 +02:00
W. Michael Petullo
6e4a14d231 apexsink: Add support for generation 2 AirTunes hardware
Fixes bug #649931.
2011-05-20 10:00:02 +02:00
Stefan Kost
16331c0b9e jasperenc: remove unused 'mimetype' variable
As mimetype is not used, we don't need to fetch it and therefore neither need
the structure s.
2011-05-19 18:48:01 +03:00
Sebastian Dröge
23f9286d88 vp8enc: Name max/min quantizer properties {max,min}-quantizer
Also improve quality property description.
2011-05-18 13:27:20 +02:00
Alexey Fisher
1b650b6486 vp8enc: Add properties to select a maximum and minimum quantizer
Fixes bug #641405.
2011-05-18 13:26:23 +02:00
Alexey Fisher
a9ea882307 vp8enc: Fix quality to (constant) quantizer mapping
This now allows to select all possible quantizers between
0 and 63.

See bug #641405.
2011-05-18 13:18:58 +02:00
Stefan Kost
79e3b5b4bb various: fix author tag in element details 2011-05-18 10:31:38 +03:00
Mark Nauwelaerts
66fe878d88 vp8dec: debug code style fixes 2011-05-16 20:32:24 +02:00
Mark Nauwelaerts
772d92eeba vp8dec: propagate downstream flow return to upstream 2011-05-16 20:32:24 +02:00
Mark Nauwelaerts
1b151caf11 basevideodecoder: really and only set src pad caps whenever requested
... since subclass is expected to be wise enough to know when to do so.
2011-05-16 20:32:23 +02:00
Mark Nauwelaerts
f591361d2f basevideodecoder: invoke subclass start method at state change and use set_format
While this changes API slightly (e.g. actually uses set_format now), which is OK
for unstable API, it has following merits:
* symmetric w.r.t. stop at state change
* in line with other base class practice
* otherwise no subclass method at state change (global activation time)
Moreover, subclassese are either unaffected or trivially adjusted accordingly.
2011-05-16 20:32:22 +02:00
Mark Nauwelaerts
7862d9ed35 basevideodecoder: subsume skip_frame into finish_frame 2011-05-16 20:32:21 +02:00
Mark Nauwelaerts
d15b8c7ad3 basevideoencoder: provide proper upstream flow return handling 2011-05-16 20:32:21 +02:00
Mark Nauwelaerts
b7ae60f617 vp8enc: minor optimization in setting up image buffer 2011-05-16 20:32:21 +02:00
Mark Nauwelaerts
1cd8e12c19 vp8enc: refactor frame processing 2011-05-16 20:32:20 +02:00
Mark Nauwelaerts
424e3afe22 vp8enc: do init at set_format time 2011-05-16 20:32:20 +02:00
Mark Nauwelaerts
3d09056c70 vp8enc: fix keyframe forcing 2011-05-16 20:32:20 +02:00
Mark Nauwelaerts
4b5623d687 basevideoencoder: invoke subclass start method at state change
While this changes order w.r.t. set_format, which is OK for unstable API,
it has following merits:
* symmetric w.r.t. stop at state change
* in line with other base class practice
* little benefit in invoking 2 subclass virtual methods (set_format and start)
  in immediate succession; all actions in the second could be done in the first
  whereas subclass has no chance to do anything 'global' at activation time
Moreover, current -bad subclass relevant methods either trivially commute
or are either trivially adjusted accordingly.
2011-05-16 20:32:20 +02:00
Mark Nauwelaerts
b0c982db5b basevideocodec: remove redundant caps field
... as it is already at hand as the src pad's negotiated caps.
2011-05-16 20:32:20 +02:00
Mark Nauwelaerts
404f491c19 vp8enc: use baseclass event virtual handler 2011-05-16 20:32:19 +02:00
Sreerenj Balachandran
c0f9c74ca6 facedetect: Remove dead code and some minor doc changes. 2011-05-14 12:08:39 +02:00
Sreerenj Balachandran
3320a03e20 edgedetect: Remove dead code and some minor doc changes 2011-05-14 12:08:39 +02:00
Sebastian Dröge
f085fa8a97 amrwbenc: Switch to the free vo-amrwbenc library
And rename everything to voamrwbenc instead of amrwbenc.
2011-05-14 12:08:39 +02:00
benjamin gaignard
31d408e22e faac: Detect output format from downstream caps change unit test 2011-05-14 12:08:28 +02:00
Sebastian Dröge
dc7f93c05b voaacenc: Only generate sinkcaps once and in a threadsafe way 2011-05-14 12:08:28 +02:00
Sebastian Dröge
adb3ac9237 voaacenc: Add NULL terminator to gst_structure_new() 2011-05-14 12:08:28 +02:00
Sebastian Dröge
41bb35f38c voaacenc: Some minor cleanup 2011-05-14 12:08:28 +02:00
Sebastian Dröge
55d8c52640 voaacenc: Fix CFLAGS and LIBS 2011-05-14 12:08:27 +02:00
benjamin gaignard
988516ca63 voaacenc: Add new plugin for audio AAC encoder based on vo-aacenc lib
Add plugin and unit test.

Fixes bug #647748.
2011-05-14 12:08:27 +02:00
Mark Nauwelaerts
e1d9574a9d xvidenc: do not leak peer pad reference 2011-05-04 12:36:01 +02:00
Sjoerd Simons
5ebff49162 xvidenc: Always return reffed caps from _getcaps
Not returning ref caps will leads to crashes and refcounting issues in
upstream elements
2011-05-03 15:47:05 +01:00
Tim-Philipp Müller
04a9b099b7 Update orc-generated disted C backup code to orc 0.4.14 2011-04-30 19:46:40 +01:00
Tim-Philipp Müller
954977127b 0.10.21.3 pre-release 2011-04-28 00:00:09 +01:00
Mihai Draghicioiu
412b37ff1b gme: fix infinite looping by fading out after two loops
https://bugzilla.gnome.org/show_bug.cgi?id=647364
2011-04-24 14:48:50 +01:00
Fabrizio Milo
7e5c7048d6 opencv: make work with openCV 2.2
https://bugzilla.gnome.org/show_bug.cgi?id=641796
2011-04-22 09:38:15 +01:00
Tim-Philipp Müller
e5813c9c2c ext, gst: update disted orc backup files 2011-04-17 01:09:33 +01:00
David Schleef
51e6acad1f assrender: refactor blitting, avoid writing past end of buffer
Previous blitting code could potentially write past the
end of the buffer if the x or y position was odd, and for
the same underlying reason, didn't get the chroma registration
correct in the odd position case.

https://bugzilla.gnome.org/show_bug.cgi?id=647830
2011-04-16 12:10:14 +01:00
Tim-Philipp Müller
5d6bdf6052 Fix some unused-but-set-variable warnings with gcc 4.6 2011-04-15 00:24:47 +01:00
Sebastian Dröge
d309cd5771 xvidenc: Implement getcaps function
This allows to set width/height/etc restrictions to be set downstream.

Fixes bug #647498.
2011-04-13 20:27:36 +02:00
Thibault Saunier
17fd7ebcb4 android: make it ready for androgenizer
Remove the android/ top dir
Fixe the Makefile.am to be androgenized

To build gstreamer for android we are now using androgenizer which generates the needed Android.mk files.
Androgenizer can be found here: http://git.collabora.co.uk/?p=user/derek/androgenizer.git
2011-04-11 07:27:11 +02:00
David Schleef
a8f047f689 Remove setting of plugindir from Makefiles 2011-04-01 13:54:02 -07:00
David Schleef
83d6a5099b basevideo: Add function to allocate src buffer 2011-04-01 13:54:02 -07:00
Sreerenj Balachandran
d6a1eebf37 opencv text overlay: rename and docuemnt
Rename the element textwrite to opencvtextoverlay. Add proper structuring to
opencv textoverlay element.

Fixes: #640561
2011-03-28 20:31:35 +03:00
Arun Raghavan
969578d84c dtsdec: Don't export bitrate if open/variable/lossless
libdca returns the bitrate as 1/2/3 for open/variable/lossless files
respectively. This makes sure we don't emit these values.
2011-03-24 13:54:25 +05:30
Sebastian Dröge
f543ac34f3 celtdec: Read the additional, optional extra headers from the caps too 2011-03-24 09:22:56 +01:00
Sebastian Dröge
f7473a6102 celtdec: Get and use streamheaders from the caps if possible
This allows playback of files where the streamheader buffers were
dropped for some reason and also sets the srcpad caps earlier.
2011-03-24 09:14:10 +01:00
David Schleef
bcd4baec47 schroenc: Revert previous commit
It appears the patch, which I've been carrying around forever,
had been already applied.
2011-03-23 22:57:10 -07:00
David Schleef
3ada35cc0e basevideo: merge utils header into basevideocodec 2011-03-23 21:33:49 -07:00
David Schleef
d1a78aa3f9 schroenc: Output element message with frame stats 2011-03-23 21:33:49 -07:00
David Schleef
9ed93db1d0 logoinsert: Fix memleaks, add test 2011-03-23 21:33:48 -07:00
David Schleef
7405d643dd logoinsert: Add data property 2011-03-23 21:33:48 -07:00
Edward Hervey
261431ef17 mpeg2enc: Lower the rank to MARGINAL
The rationale is that it can't be properly used right now when using
it to encode mpeg2video because of the needs-to-be-rewritten properties
and format negotiation. Other encoders will negotiate in a much saner
fashion.

One such example is that when you pick mpeg2enc for mpeg2video, the
default value for the 'format' property is "Generic MPEG-1", which is
completely wrong if downstream caps are mpeg2. The whole negotiation
code needs some serious loving before this plugin can be bumped back
up to a higher rank.
2011-03-21 10:42:59 +01:00
Tim-Philipp Müller
9c554b7378 vp8: fix LIBADD order in Makefile.am 2011-03-17 20:52:07 +00:00
Tim-Philipp Müller
53a9b430f3 build: remove more tarkin/theoraexp build cruft 2011-03-11 10:26:01 +00:00
David Schleef
d247cf8e6d theora,tarkin: Remove ancient unused code 2011-03-10 13:44:16 -08:00
Wim Taymans
bbf9cd7f13 Merge branch 'master' into 0.11 2011-03-08 17:29:20 +00:00
Wim Taymans
d0e2f7f2dc meta: update for new API 2011-03-08 17:03:22 +00:00
Stefan Kost
fcf7b11a55 lv2: update url for port-groups extension 2011-03-07 22:41:30 +02:00
Edward Hervey
b45e5833c2 ext: Always dist the curl directory
Event if we can't build it. Fixes make dist
2011-03-04 17:37:04 +01:00
Wim Taymans
82027ebfeb sfsink: use basesink preroll lock 2011-03-04 17:26:41 +01:00
Wim Taymans
357fcbc306 Merge branch 'master' into 0.11 2011-03-04 13:29:28 +01:00
Edward Hervey
d9a930aa25 curlsink: Fix print-related issues 2011-03-04 12:15:32 +01:00
Sebastian Dröge
1eb3f7f41f celtenc: Fix compilation with celt >= 0.11.0
Fixes bug #643607.
2011-03-02 23:44:12 +01:00
Tim-Philipp Müller
c6d7071d93 docs: add new curl plugin and curlsink element to docs 2011-03-01 11:16:56 +00:00
Tim-Philipp Müller
eb5b3be384 curlsink: no need for a private instance structure
The entire instance structure is private anyway.
2011-03-01 10:03:07 +00:00
Tim-Philipp Müller
6f01abd85d curlsink: clean up property registration code
Fix some typos, use same style as in all other plugins, avoiding
unnecessary temporary GParamSpec variables; use G_PARAM_SPEC_STATIC_STRINGS.
2011-03-01 09:56:51 +00:00
Tim-Philipp Müller
56c2cc0f83 curl: add configure check and hook up to build system 2011-02-28 23:56:38 +00:00
Patricia Muscalu
16b79f6f2d curl: add libcurl-based sink element
Sink acts as a client and can connect to servers to
upload media.

https://bugzilla.gnome.org/show_bug.cgi?id=641496
2011-02-28 23:55:33 +00:00
Tim-Philipp Müller
b2be3e2f1a jp2kdec: post proper error when the image's colour space is not supported
https://bugzilla.gnome.org/show_bug.cgi?id=643115
2011-02-28 23:54:32 +00:00
Wim Taymans
a5c1e5fd86 meta: fix for new metadata api 2011-02-28 12:06:57 +01:00
Wim Taymans
c6859960fa miniobject: port rsndvd 2011-02-28 12:06:57 +01:00
Wim Taymans
cbb7fa5701 miniobject: port to new 0.11 API
Remove miniobject and buffer subclassesusing GObject subclasses and
metadata.
2011-02-28 12:06:57 +01:00
Vincent Penquerc'h
c696b54fa7 xviddec: bodge to avoid crashes
It seems xvidcore overreads its input buffer, so a nasty workaround
is to allocate some more memory (16 bytes seem to be enough).
There is no apparent image corruption with these extra bytes set to 0,
valgrind is much happier, and the crashes go away.
It is ugly, and slower though. But then, xviddec is currently
not autoplugged for playback anyway.

https://bugzilla.gnome.org/show_bug.cgi?id=334107
2011-02-21 00:16:33 +00:00
David Schleef
5b90c31ca2 basevideocodec: remove parser in favor of baseparse 2011-02-20 12:16:08 -08:00
Olivier Aubert
5ac1c96e84 rsvgoverlay: allow negative values for x/y/width/height 2011-02-18 14:43:08 +02:00
Mark Nauwelaerts
a887fc157e faac: remove extraneous buffer unref 2011-02-17 13:00:21 +01:00
Stefan Kost
07f797bf39 rsvgdec: add basic doc-blob 2011-02-14 11:49:10 +02:00
Olivier Aubert
a96fb3b472 rsvgoverlay: implement x/y/width/height (absolute and relative) positioning and dimensioning
Signed-off-by: Olivier Aubert <olivier.aubert@liris.cnrs.fr>
2011-02-14 11:49:09 +02:00
Alexey Fisher
2b4c854146 vp8enc: Add description for bitrate units. 2011-02-04 00:24:04 -08:00
Tim-Philipp Müller
5d754e549a jp2kdec, jp2kenc: add support v308 (4:4:4 YUV)
Because we can.
2011-01-27 14:45:30 +00:00
Thiago Santos
a875342c54 rsvgoverlay: Do not segfault on unexistent files
When passing an unexistent file to rsvgoverlay it would
crash because the svg loading would fail without setting
an error.

This patch makes it check if the handle was actually created
and logs an error in case it didn't. Maybe it should post an
error to the bus, but the previous error handling didn't, so
I just followed the same logic.
2011-01-24 23:51:53 -03:00
Vincent Penquerc'h
0b790b663c kate: ensure the kate pad does not shoot ahead of the video pad
Sync both pads by waiting in the kate chain function.
Do not reset our internal segment from segment updates, in order
to be able to map video running time to kate running time, to
give libtiger the timestamp it expects. This allows us to use
running time to sync to video, which is The Right Way.

https://bugzilla.gnome.org/show_bug.cgi?id=600929
2011-01-14 00:28:41 +00:00
Tim-Philipp Müller
b9af27719d cog, schroedinger: fix warnings when compiling with -DG_DISABLE_ASSERT 2011-01-08 03:12:11 +00:00
Tim-Philipp Müller
62c289f71d 0.10.20.2 pre-release 2011-01-08 03:10:00 +00:00
Tim-Philipp Müller
3145eac577 directfb: don't put code with side-effects into g_assert()
It will all be turned into a NOOP if -DG_DISABLE_ASSERT is used
(as it is for pre-releases and releases).
2011-01-08 00:01:01 +00:00
Tim-Philipp Müller
1498cbcc2d xvidenc: don't put code with side effects into g_return_val_if_fail()
And don't use g_return*_if_fail() for error handling in elements.
2011-01-07 23:57:21 +00:00
Vincent Penquerc'h
73923c4a6e tiger: outline text by default, to make it easier to read
https://bugzilla.gnome.org/show_bug.cgi?id=638527
2011-01-02 19:44:22 +00:00
Tim-Philipp Müller
a197901b82 jack: move plugin to gst-plugins-good
https://bugzilla.gnome.org/show_bug.cgi?id=621929
2011-01-02 15:11:52 +00:00
Tim-Philipp Müller
992c05f840 kate: fix caps and string leaks and some minor clean-ups
Don't leak source caps. Use GST_PTR_FORMAT to log caps, so
we don't need to leak strings from gst_caps_to_string().
No need to use GST_DEBUG_FUNCPTR for vfuncs where the base
class will never look them up (like property getters/setters).
Don't use g_return_*_if_fail() for things that aren't directly
programming errors (by the application developer).

Fixes kate unit test under valgrind.
2011-01-02 13:57:58 +00:00
Vincent Penquerc'h
4b56970d58 kate: reenable the sending of a message for tags
https://bugzilla.gnome.org/show_bug.cgi?id=638412
2011-01-02 13:34:53 +00:00
David Schleef
272086b121 cog: Use math-compat.h 2010-12-30 19:25:46 -08:00
Vincent Penquerc'h
857e3dda46 tiger: fallback on headers in caps to initialize if headers are absent
When Totem switches streams, tiger will be reset, and start receiving
buffers from the middle of the stream, without being sent headers.
If this happens, try to get headers from the caps.

https://bugzilla.gnome.org/show_bug.cgi?id=638004
2010-12-26 21:47:53 +00:00
Vincent Penquerc'h
74d82c4c1e kate: if seeking with GST_SEEK_TYPE_CUR, flush everything
We don't know how to calculate the target, so be safe.

https://bugzilla.gnome.org/show_bug.cgi?id=600929
2010-12-25 17:21:41 +00:00
Tim-Philipp Müller
5dac64b20a tiger: move #if #else bits outside of macro
Some compilers/preprocessors don't like if/else/endif preprocessor
directives in the middle of macros.
2010-12-25 16:44:03 +00:00
Vincent Penquerc'h
2a2c76cdbd tiger: Give tiger primary rank 2010-12-25 17:00:22 +01:00
Vincent Penquerc'h
8574e8f991 kate: add segment tracking, and various other improvements
https://bugzilla.gnome.org/show_bug.cgi?id=600929
2010-12-25 16:59:22 +01:00
Edward Hervey
a7baa891a9 rsvgoverlay: Don't set uint on an int property 2010-12-15 16:48:15 +01:00
Jan Schmidt
7e3472d772 resindvd: Defer pushing tag updates until streaming.
Push tag/title info updates in the streaming thread, avoiding
spurious losses of the downstream events when flushing.

See: https://bugzilla.gnome.org/show_bug.cgi?id=594222
2010-12-12 02:21:53 +11:00
Jan Schmidt
4810fa4c51 resindvd: Attempt to use glib language setting for DVD menus/audio 2010-12-12 02:21:53 +11:00
Jan Schmidt
c12fc9edda resindvd: Fix silly typo in button state tracking. 2010-12-12 02:21:53 +11:00
Wim Taymans
0c36c70f63 jasperdec: don't fail hard on decoding error
don't post an error and return GST_FLOW_ERROR on a simple decoding error. We can
just resume and continue decoding the next image.
2010-12-09 18:09:18 +01:00
David Schleef
159e2768d6 Fix pad template memleaks
Pad templates returned by gst_static_pad_template_get() were not
being unreffed.
2010-11-30 18:54:46 -08:00
David Schleef
4eee2dc95d vp8enc: Readd setting of granulepos
Revert parts of last patch that removed setting of granulepos.
oggmux still requires correct granulepos in incoming packet.
2010-11-30 18:43:24 -08:00
David Schleef
01574dc012 vp8enc: Don't override timestamps set by base class
Because the base class does it correctly.
Fixes: #635720, #625558.
2010-11-30 18:34:34 -08:00
Sebastian Dröge
7593d092df jp2kenc: Emit SOP markers in every codestream packet
This makes parsing much easier, faster and more reliable.
2010-11-30 12:07:49 +01:00
David Schleef
cb3bac56bf schroenc: minor memleak fix 2010-11-27 19:09:51 -08:00
Edward Hervey
7a88aca460 vp8: Remove dead assignments 2010-11-25 18:52:47 +01:00
Edward Hervey
1bdf82db77 sdlaudiosink: Remove dead assignments 2010-11-25 18:49:23 +01:00
Edward Hervey
52239c16af schroedinger: Remove dead assignments 2010-11-25 18:47:15 +01:00
Edward Hervey
c9aa47505a mimenc: Remove dead assignment 2010-11-25 18:43:30 +01:00
Edward Hervey
818d03ceec cogdownsample: Remove dead assignment 2010-11-25 18:43:18 +01:00
Edward Hervey
4067ef886d opencv: Remove dead assignments
... and fix indentation
2010-11-25 18:43:05 +01:00
Edward Hervey
3d3b46db39 cogcolorspace: Remove dead assignment 2010-11-25 18:33:37 +01:00
Edward Hervey
9ede66840f cogframe: Remove dead assignments 2010-11-25 18:30:56 +01:00
Edward Hervey
b8c0b33536 celtenc: Initialize variable
In the case the tag_setter returns something, empty_tags would be
garbage value.
2010-11-25 18:29:31 +01:00
Edward Hervey
28e000d18e celtenc: Remove dead assignment 2010-11-25 18:29:22 +01:00
Edward Hervey
6158953f58 assrender: Remove dead assignments 2010-11-25 18:26:21 +01:00
Josh Doe
6e43f75df3 opencv: fix caps issues and extend supported caps for some elements
Some elements had vague caps, such as "video/x-raw-rgb", which caused problems
at least with textwrite. For other elements, the underlying OpenCV functions
support more than just one image type, so I increased the number of supported
caps.

I created a utility function "gst_opencv_caps_from_cv_image_type", so each
element creates caps directly from OpenCV image types, such as CV_8UC1 for
8-bit grayscale. This function uses gstvideo to create uniform caps.

https://bugzilla.gnome.org/show_bug.cgi?id=635304
2010-11-22 22:25:18 -03:00
Olivier Aubert
c86b12ac95 rsvgoverlay: scalable and relative svg overlay with cairo
Add a cairo+librsvg based overlay element to the rsvg plugin.
2010-11-22 17:08:06 +02:00
Mart Raudsepp
c364f2b46b assrender: Remove unused src_stride variable from blit functions 2010-11-09 23:36:59 +00:00
Stefan Kost
fedcff79d7 rsvgdec: avoid reffing the element in chain 2010-11-08 16:02:07 +02:00
Stefan Kost
9ddeba2407 rsvgdec: add some minimal logging to track what it is doing 2010-11-08 16:02:07 +02:00
Tim-Philipp Müller
2363d97da1 zbar: handle more formats that start with an 8-bit Y plane
We can handle most planar YUV layouts too, as long as we don't
tell zbar about the chroma planes.
2010-11-02 17:46:11 +00:00
Tim-Philipp Müller
7ddd7f7809 zbar: use correct stride
Fixes detection for images with a width that's not a multiple of four.

Based on patch by: Kaj-Michael Lang <milang@tal.org>
Based on patch by: Stefan Kost <ensonic@users.sf.net>

https://bugzilla.gnome.org/show_bug.cgi?id=630830
2010-11-02 17:23:12 +00:00
Tim-Philipp Müller
a97ece29cc zbar: minor clean-up
Fix typo and use DEFAULT_FOO define for property default.
2010-11-02 16:36:05 +00:00
Tim-Philipp Müller
2122c1eb9a zbar: disable cache by default
Since it breaks still image bar code detection.
2010-11-02 16:32:55 +00:00
Tim-Philipp Müller
c627604ea9 cog, colorspace: update orc backup functions for latest changes
Should fix build on systems without the latest orc.
2010-11-01 15:54:18 +00:00
Stefan Kost
0387a89cad various (ext): add missing G_PARAM_STATIC_STRINGS flags
Canonicalize property names as needed.
2010-10-19 17:13:26 +03:00
Stefan Kost
92634ff92a various: wrap property registration and add a single fixme for long desc. 2010-10-19 15:36:18 +03:00
David Schleef
fe50055715 basevideo: Move common fields/functions to basecodec 2010-10-15 16:30:57 -07:00
Kaj-Michael Lang
18c3302608 zbar: Make scanner cache optional 2010-10-14 23:51:01 +03:00
Mark Nauwelaerts
8a6c490962 faad: reflow opening and closing decoder
In particular, this reconfigures quite forcefully when renegotiation is needed.

Fixes #631501.
2010-10-14 11:27:17 +02:00
Mark Nauwelaerts
7499f2b09b faad: cater for renegotiation
At least, whenever either stream (e.g. ADTS) or upstream provides necessary
info for doing so.

Fixes #631501.
2010-10-12 18:19:54 +02:00
Mark Nauwelaerts
bc6549a108 faac: handle trailing encoder output 2010-10-11 17:13:10 +02:00
Sebastian Dröge
d7d28ea4db switchsrc: Set the GST_ELEMENT_IS_SOURCE flag 2010-10-11 14:26:59 +02:00
Tim-Philipp Müller
a3f9fab72f alsaspdif: remove alsaspdifsink element
Remove alsaspdifsink, it's not needed any longer. alsasink in -base
has been able to handle SPDIF for a while now.
2010-10-05 11:42:42 +01:00
Mark Nauwelaerts
de97a994ba faad: reverse playback; cater for decoder delay
... thereby actually using the gather and decode queues.
2010-09-29 11:30:06 +02:00
Mark Nauwelaerts
636d1caf0d faad: tweak output buffer timestamping
In particular, avoid packetised input leading to initial to non-0 output ts.
2010-09-29 11:30:00 +02:00
Tim-Philipp Müller
887fc8e6e7 resindvdsrc: improve error messages on read erros
Provide i18n-ed error messages when a read error happens,
and point out that the error could be happening because the
DVD is scrambled.

https://bugzilla.gnome.org/show_bug.cgi?id=613633
2010-09-26 20:43:43 +01:00
Sebastian Dröge
1d189c9e75 ofa: Call g_object_notify() after the fingerprint was created 2010-09-25 12:33:58 +02:00
David Schleef
09ed8e87e7 schrodec: Fix class definition
Class structures should include parent class, not the parent
instance structure.
2010-09-22 11:58:55 -07:00
Edward Hervey
9db0d94364 sdlvideosink: Fix function prototype for touchy compilers 2010-09-21 18:45:03 +02:00
Edward Hervey
a96c0ab9fe sdl: Port to new XOverlay API
Fixes #630253
2010-09-21 16:31:57 +02:00
Sebastian Dröge
4376506183 spc: Don't use GST_FLOW_IS_FATAL() 2010-09-21 12:27:56 +02:00
Sebastian Dröge
160b5ee560 mplex: Don't use GST_FLOW_IS_SUCCESS() 2010-09-21 12:27:20 +02:00
Sebastian Dröge
2aea590153 timidity: Don't post an error message on the bus for UNEXPECTED
Also don't use GST_FLOW_IS_FATAL()
2010-09-21 12:26:36 +02:00
Sebastian Dröge
e0694abd0a wildmidi: Don't use GST_FLOW_IS_FATAL() 2010-09-21 12:26:36 +02:00
Sebastian Dröge
e618365a19 gme: Post an error message on the bus for fatal errors
Also don't use GST_FLOW_IS_FATAL().
2010-09-21 12:26:36 +02:00
Sebastian Dröge
2137ae524d sfsink: Don't use GST_FLOW_IS_FATAL() 2010-09-21 12:26:36 +02:00
David Schleef
62a9383527 basevideodecoder: add capture pattern handling
Move typical scan_for_sync() usage into base class, which just
calls gst_adapter_masked_scan_uint32().
2010-09-18 19:27:07 -07:00
David Schleef
7cd2e0dd3e basevideo: Move deadline to frame structure 2010-09-18 19:27:07 -07:00
Sebastian Dröge
c28c480eb9 cog: Allow compilation without orc
Also don't ignore --disable-orc. Fixes bug #629897.
2010-09-17 08:43:48 +02:00
Stefan Kost
bc1c9ac18e metadata: remove metadata plugin
This plugins functionality is replaced by utility libraries in base for exif
and xmp. Jpeg images can use this via jpegformat plugin.
Fixes #486659
2010-09-15 18:22:51 +03:00
Tristan Matthews
0f9a31880a jack: added translatable text for server not found error 2010-09-14 17:40:27 +03:00
Olivier Crête
3cb4a7aefd celtenc: Change bitrate to bits/sec 2010-09-13 17:22:40 -04:00
Tim-Philipp Müller
960ccc118f opencv: define CV_NO_BACKWARD_COMPATIBILITY to suppress warnings caused by compat header
Compile with -DCV_NO_BACKWARD_COMPATIBILITY for now, so that the compat header
doesn't get included, which causes compiler warnings that (it seems) can't be
switched off easily. As a result, we also specify a max. version in configure,
so the build doesn't break if our code doesn't compile against newer opencv
versions any more with that flag.
2010-09-09 15:29:31 +01:00
Tim-Philipp Müller
41b9b76fa5 opencv: avoid 'unused' compiler warnings with inline functions in opencv headers
Override CV_INLINE to avoid 'unused' gcc warnings. GLib will take care of defining
'inline' sufficiently and OpenCV's define isn't good enough to avoid 'unused'
compiler warnings (at least in version 2.1.0).
2010-09-09 15:29:31 +01:00
Tim-Philipp Müller
e2b45f5155 opencv: update plugin source package name and origin 2010-09-09 15:29:31 +01:00
Thiago Santos
19ba4c8d19 facedetect: Add more parameters
Expose the parameters of cvHaarDetectObjects in facedetect
element.
2010-09-08 23:59:38 -03:00
Thiago Santos
27fedbb352 opencv: Refactor files structure
Remove internal folders and put all code inside the main plugin
folder. Also fixes some building warnings.
2010-09-08 17:15:51 -03:00
Thiago Santos
cf86df2d00 opencv: Adds new plugin opencv
Moves opencv plugin from http://github.com/Elleo/gst-opencv
into -bad module.
2010-09-08 17:15:51 -03:00
Thiago Santos
0c61434945 facedetect: Post an useful message
Add a message to be post when faces are found on a frame that
contains all faces on a single message and also has
timestamp/running/segment times for that buffer so it
can be identified.

This message is called 'facedetect' and has a 'faces' list
of structures with all faces.

The old 'face' message is still posted for each face found, but
it is not really useful as it doesn't have any reference to the
buffer that generated it.
2010-09-08 17:15:51 -03:00
Thiago Santos
77fe3e6a07 facedetect: Use GstOpencvVideoFilter as the base class
Port facedetect to use GstOpencvVideoFilter as the base class
to inherit all the goodness that GstBaseTransform/GstVideoFilter
already handles.
2010-09-08 17:15:51 -03:00
Thiago Santos
dcb97354bf opencvbasetrans: Use GstVideoFilter as the base class
Port from GstBaseTransform to GstVideoFilter as the base class.
2010-09-08 17:15:50 -03:00
Thiago Santos
4c03c980ce cvlaplace: adds new cvlaplace element
Adds new cvlaplace element.

Also adds a new opencvbasetransform function to be overriden
by children classes: the cv_set_caps, it allows children classes
to know what are they going to handle and prepare properly.
2010-09-08 17:15:50 -03:00