Commit graph

431 commits

Author SHA1 Message Date
Wim Taymans
0969106993 docs: update docs and defs 2011-02-27 12:21:32 +01:00
Wim Taymans
0210890840 defs: fix defs 2011-02-25 13:23:19 +01:00
Wim Taymans
d7b989bf40 defs: fix defs 2011-02-25 10:37:07 +01:00
Wim Taymans
8468dadc77 buffermeta: add beginnings of buffer metadata
Add first implementation of arbitrary buffer metadata. We use a simple linked
linked of slice allocated metadata chunks. Future implementations could use
something more performant.
Add get, remove, iterate methods to handle the metadata.
2011-02-25 10:34:47 +01:00
Tim-Philipp Müller
27027a2dd2 uri: add gst_filename_to_uri() that takes relative filenames
Add function that (unlike the GLib equivalent) also accepts paths that
aren't absolute and will clean up relative markers such as ./ and ../
before forming a URI.

Fixes warnings with e.g. filesrc location=foo ! typefind caused by the
recent switch to g_filename_to_uri(), but also actually creates valid
URIs for the first time.

Windows code paths could need some more work, e.g. we don't clean up
the relative markers there for now (because path could have \ and /
as separators).

API: gst_filename_to_uri()
2011-02-24 15:36:52 +00:00
Wim Taymans
bd028a7524 defs: fix defs 2011-02-23 12:08:03 +01:00
Wim Taymans
238b9a57cc Merge branch 'master' into 0.11
Conflicts:
	configure.ac
	gst/gstelement.c
	gst/gstelement.h
	gst/gstpad.c
	gst/gstutils.c
	libs/gst/base/Makefile.am
	libs/gst/check/Makefile.am
	libs/gst/controller/Makefile.am
	libs/gst/dataprotocol/Makefile.am
	libs/gst/net/Makefile.am
	win32/common/libgstreamer.def
2011-02-22 14:11:59 +01:00
Wim Taymans
401d73df7f defs: fix defs file for new symbols 2011-02-16 17:56:39 +01:00
Wim Taymans
f5b175972c message: add progress message functions 2011-02-15 18:55:22 +01:00
Wim Taymans
4ee5c61a2d basesink: add property to configure a throttle-time
Add a property to configure the throttle time on a sink. The
property is not yet used.

See #638891
2011-02-10 15:21:45 +01:00
Wim Taymans
56826a5ee6 event: add QoS event type
Add a parameter to the QoS event to specify the QoS event type.
Update docs and add unit test.

See #638891
2011-02-10 15:21:45 +01:00
Sebastian Dröge
8163e51bad clock: API: Add function to re-init periodic GstClockIDs 2011-01-24 19:15:29 +01:00
Tim-Philipp Müller
07c916be92 Back to development 2011-01-23 23:45:40 +00:00
Tim-Philipp Müller
5b04e61a35 Release 0.10.32 2011-01-21 10:25:32 +00:00
Tim-Philipp Müller
9774a8d510 0.10.31.4 pre-release 2011-01-18 10:10:05 +00:00
Tim-Philipp Müller
1e52eeabac 0.10.31.3 pre-release 2011-01-11 18:39:06 +00:00
Tim-Philipp Müller
39c22331c0 0.10.31.2 pre-release 2011-01-07 12:13:37 +00:00
Edward Hervey
04ebbc9f5a GstElement: Add a more flexible way to get request pads.
The new request_new_pad_full vmethod provides an additional caps field,
which allows elements to take better decision process.

Also, add a gst_element_request_pad() function to allow developers to be
able to specify which pad template they want a pad of.

Convert gstutils to use that new method instead of the old one when more
efficient.

This is useful for being able to request pads in a more flexible way,
especially when the element can provide pads whose caps depend on
runtime configuration and therefore can't provide pre-registered
pad templates.

API: GstElement::request_new_pad_full
API: gst_element_request_pad

https://bugzilla.gnome.org/show_bug.cgi?id=637300
2011-01-05 19:46:47 +01:00
Stefan Kost
373be6f14e tags: don't produce duplicated entries when merging same value twice
Add a variant of gst_value_list_concat() that skips duplicates and use that when
merging taglists.

API: gst_value_list_merge()
2011-01-02 22:35:08 +00:00
Wim Taymans
49e0573e74 defs: update defs 2010-12-07 18:33:51 +01:00
Wim Taymans
35d10af06d poll: add method to get a GPollFD 2010-12-03 15:50:38 +01:00
Edward Hervey
b4285611ad gstclock: New API to re-use a single shot GstClockID
API: gst_clock_single_shot_id_reinit

https://bugzilla.gnome.org/show_bug.cgi?id=632778
2010-12-02 19:04:56 +01:00
Tim-Philipp Müller
a538abad86 Back to development 2010-12-01 23:56:45 +00:00
Tim-Philipp Müller
0dec58311f Release 0.10.31 2010-11-30 17:40:47 +00:00
Tim-Philipp Müller
a7f9e83a2a 0.10.30.5 pre-release 2010-11-18 00:29:41 +00:00
Thiago Santos
1b27e1e792 datetime: Add _from_unix_epoch variants
Adds 2 variants for the gst_date_time_from_unix_epoch function,
one for UTC and another for local time.

API: gst_date_time_new_from_unix_epoch_utc
API: gst_date_time_new_from_unix_epoch_local_time

Fixes #653031

https://bugzilla.gnome.org/show_bug.cgi?id=635031
2010-11-17 09:58:32 -03:00
Tim-Philipp Müller
e250e9c5ba 0.10.30.4 pre-release 2010-11-01 16:06:43 +00:00
Tim-Philipp Müller
029fcf433d 0.10.30.3 pre-release 2010-10-22 17:35:23 +01:00
Tim-Philipp Müller
349899e735 0.10.30.2 pre-release 2010-10-16 00:25:52 +01:00
Tim-Philipp Müller
8834567cd4 win32: define GST_PACKAGE_RELEASE_DATETIME in win32 config.h as well 2010-09-24 00:23:22 +01:00
Wim Taymans
0447e72c97 bufferlist: add function to add a list of buffers
Add a function to add a list of buffers to the bufferlist.
2010-09-17 17:35:45 +02:00
Wim Taymans
1afaa1680f adapter: add function to get a list of buffers
Add a function to retrieve a list of buffers containing the first N bytes from
the adapter. This can be done without a memcpy and should make it possible to
transfer the list to a GstBufferList later.
2010-09-17 17:35:41 +02:00
Tim-Philipp Müller
7e5a9580ef structure: add gst_structure_{id_}take_value()
Add _set_value() variants that take ownership of the value passed
instead of making a copy of the value. This is useful for setting
values to things that aren't refcounted (e.g. GValueArrays or
strings or string arrays, etc.).

API: gst_structure_take_value()
API: gst_structure_id_take_value()

https://bugzilla.gnome.org/show_bug.cgi?id=629831
2010-09-16 19:39:58 +01:00
Stefan Kost
65356fbb7a element-details: allow for arbitrary element details
Add a GstStructure to GstElementClass and GstElementFactory. Add setters/getter.
Handle it in the registry code. Print items in gst-inspect.
Fixes #396774.

API: gst_element_class_set_meta_data(), gst_element_factory_get_meta_data_detail()
2010-09-06 12:31:04 +03:00
Edward Hervey
e724175cd1 win32: Add new symbols from GstElementFactoryList
And here's a reminder since I forgot to put them in my previous
commit.

API: gst_element_factory_list_filter
API: gst_element_factory_list_get_elements
API: gst_element_factory_list_is_type
API: gst_plugin_feature_list_debug
API: gst_plugin_feature_rank_compare_func
API: GstElementFactoryListType
API: GST_ELEMENT_FACTORY_TYPE_ANY
API: GST_ELEMENT_FACTORY_TYPE_AUDIOVIDEO_SINKS
API: GST_ELEMENT_FACTORY_TYPE_AUDIO_ENCODER
API: GST_ELEMENT_FACTORY_TYPE_DECODABLE
API: GST_ELEMENT_FACTORY_TYPE_DECODER
API: GST_ELEMENT_FACTORY_TYPE_DEMUXER
API: GST_ELEMENT_FACTORY_TYPE_DEPAYLOADER
API: GST_ELEMENT_FACTORY_TYPE_ENCODER
API: GST_ELEMENT_FACTORY_TYPE_FORMATTER
API: GST_ELEMENT_FACTORY_TYPE_MAX_ELEMENTS
API: GST_ELEMENT_FACTORY_TYPE_MEDIA_AUDIO
API: GST_ELEMENT_FACTORY_TYPE_MEDIA_IMAGE
API: GST_ELEMENT_FACTORY_TYPE_MEDIA_METADATA
API: GST_ELEMENT_FACTORY_TYPE_MEDIA_SUBTITLE
API: GST_ELEMENT_FACTORY_TYPE_MEDIA_VIDEO
API: GST_ELEMENT_FACTORY_TYPE_MEDIA_ANY
API: GST_ELEMENT_FACTORY_TYPE_MUXER
API: GST_ELEMENT_FACTORY_TYPE_PARSER
API: GST_ELEMENT_FACTORY_TYPE_PAYLOADER
API: GST_ELEMENT_FACTORY_TYPE_SINK
API: GST_ELEMENT_FACTORY_TYPE_SRC
API: GST_ELEMENT_FACTORY_TYPE_VIDEO_ENCODER
2010-09-05 10:25:23 +02:00
Philippe Normand
9ef1c47079 gstquery: new buffering_ranges API
Added a new query type to retrieve informations about the areas of the
media currently buffered. See bug 623121.

API: gst_query_add_buffering_range
API: gst_query_get_n_buffering_ranges
API: gst_query_parse_nth_buffering_range
2010-09-03 19:55:25 +02:00
Philippe Normand
b2e6379be8 gstvalue: Add new GstInt64Range type
new GstInt64Range to store gint64 ranges.

API: GST_TYPE_INT64_RANGE
API: gst_value_set_int64_range
API: gst_value_get_int64_range_min
API: gst_value_get_int64_range_max

Fixes bug #627826.
2010-09-01 11:07:37 +02:00
Sebastian Dröge
4e861cefbd utils: Add gst_util_fraction_compare() to the docs and exported symbols 2010-08-28 10:16:37 +02:00
Arun Raghavan
904c1a7a1d gst: Add a gst_is_initialized() API
For one, this will allow libraries that expect applications to
initialize GStreamer before using their API to have a check for this
condition.

https://bugzilla.gnome.org/show_bug.cgi?id=627438
2010-08-20 19:35:01 +02:00
Thiago Santos
f2c18c6c98 gststructure: Adds datetime getter function
Adds gst_structure_get_date_time function

API: gst_structure_get_date_time

Fixes #594504
2010-07-26 11:57:52 -03:00
Thiago Santos
3449bfc30e taglist: Add datetime get functions
Adds _date_time_get and _date_time_get_index functions to
taglist.

API: gst_tag_list_get_date_time
API: gst_tag_list_get_date_time_index

Fixes #594504
2010-07-26 11:57:51 -03:00
Thiago Santos
b4870282cb gstvalue: Adds datetime functions
Adds a datetime functions to gstvalue

Fixes #594504
2010-07-26 11:57:50 -03:00
Thiago Santos
6425bde6ec gstdatetime: Adds GstDateTime
Adds GstDateTime to represent dates + time + timezone
information.

Tests included.

API: GstDateTime
API: gst_date_time_get_day
API: gst_date_time_get_month
API: gst_date_time_get_year
API: gst_date_time_get_hour
API: gst_date_time_get_microsecond
API: gst_date_time_get_minute
API: gst_date_time_get_second
API: gst_date_time_get_time_zone_offset
API: gst_date_time_new
API: gst_date_time_new_local_time
API: gst_date_time_new_from_unix_epoch
API: gst_date_time_new_now_local_time
API: gst_date_time_new_now_utc
API: gst_date_time_ref
API: gst_date_time_unref

Fixes #594504
2010-07-26 11:57:49 -03:00
Tim-Philipp Müller
068e1a6384 Back to development. 2010-07-16 11:16:15 +01:00
Tim-Philipp Müller
5ca0726648 Release 0.10.30 2010-07-15 10:18:12 +01:00
Tim-Philipp Müller
e688f6fb2b 0.10.29.4 pre-release
Also bump libtool versions now (which I meant to do for the first
pre-release but forgot).
2010-07-06 23:52:04 +01:00
Alessandro Decina
3a553f4eda basesink: add accessors for the enable-last-buffer property.
API: gst_base_sink_set_last_buffer_enabled
API: gst_base_sink_is_last_buffer_enabled
2010-07-06 16:39:18 +02:00
Alessandro Decina
7acde37fc1 win32: export gst_clock_id_wait_async_full 2010-07-06 10:46:42 +02:00
Tim-Philipp Müller
dbaae8f244 0.10.29.3 pre-release 2010-06-29 18:48:05 +01:00
Tim-Philipp Müller
484ab2a561 0.10.29.2 pre-release 2010-06-26 17:48:31 +01:00
Edward Hervey
5faf5620f3 gstutils: New gst_element_link_pads_full method
Links the elements with the specified pad linking checks.

API:gst_element_link_pads_full

https://bugzilla.gnome.org/show_bug.cgi?id=622504
2010-06-23 18:42:40 +02:00
Edward Hervey
625c4e2d80 GstPad: Add new pad linking method with configurable checks.
To be used for cases where we don't need all checks to be validated.

API: gst_pad_link_full
API: GstPadLinkCheck

https://bugzilla.gnome.org/show_bug.cgi?id=622504
2010-06-23 18:42:35 +02:00
Thiago Santos
9ee11a2af4 taglist: add gst_tag_list_peek_string_index to avoid a copy
Adds a variation of the _get_string_index function that doesn't copy
the string.

API: gst_tag_list_peek_string_index

https://bugzilla.gnome.org/show_bug.cgi?id=621896
2010-06-18 11:49:21 -03:00
Edward Hervey
4a11063768 Revert "GstPad: Add GST_PAD_NEGOTIABLE GstPadFlag"
This reverts commit dc38e75d88.

boom
2010-06-15 11:54:19 +02:00
Edward Hervey
dc38e75d88 GstPad: Add GST_PAD_NEGOTIABLE GstPadFlag
A pad is 'negotiable' when its container element is in a state greater
than GST_STATE_READY

API:gst_pad_is_negotiable
API:gst_pad_set_negotiable
API:GST_PAD_NEGOTIABLE

https://bugzilla.gnome.org/show_bug.cgi?id=618644
2010-06-14 17:08:14 +02:00
Mark Nauwelaerts
d5ed339f20 adapter: add extended masked_scan_uint32_peek that also provides matching value
Also add to .def and docs.

Fixes #619828.

API: gst_adapter_masked_scan_uint32_peek
2010-06-14 15:09:38 +02:00
Edward Hervey
c11723aab7 win32: fix .def file 2010-06-14 13:39:07 +02:00
Edward Hervey
32adac81ee gstcaps: New gst_caps_steal_structure() method
This allows removing structures from caps without them being freed. Helpful when
plugins need to move around structures without having to do an expensive structure
copy.

API:gst_caps_steal_structure

https://bugzilla.gnome.org/show_bug.cgi?id=621527
2010-06-14 13:16:18 +02:00
Tim-Philipp Müller
6773a8c6a2 win32: add pre-generated versions of gstmarshal.[ch] as well
and put them next to the pre-generated enumtypes files for those
not using autotools for buildling GStreamer.
2010-05-31 15:17:31 +01:00
Sebastian Dröge
e35fe4ef9c structure: API: Add gst_structure_fixate_field_string() 2010-05-22 10:01:44 +02:00
Tim-Philipp Müller
24814d22be Back to development. 2010-04-29 15:53:06 +01:00
Tim-Philipp Müller
4e3266345d Release 0.10.29 2010-04-27 23:42:12 +01:00
Tim-Philipp Müller
18c775cbf8 0.10.28.3 pre-release 2010-04-25 21:15:51 +01:00
Tim-Philipp Müller
24f67f76bf 0.10.28.2 pre-release 2010-04-14 23:53:38 +01:00
Robert Swain
1a3257132d message: add QoS message to inform apps of lost data
This has been implemented as per part-qos.txt and partially addresses
bug #322947
2010-03-17 19:16:42 +01:00
Benjamin Otte
7e7f51f617 Fixes for -Wmissing-declarations -Wmissing-prototypes
Also adds those flags to the configure warning flags

https://bugzilla.gnome.org/show_bug.cgi?id=611692
2010-03-11 10:59:57 +01:00
Benjamin Otte
5c01dcb1f7 remove unused gst_element_default_error()
https://bugzilla.gnome.org/show_bug.cgi?id=611692
2010-03-10 15:24:11 +01:00
Tim-Philipp Müller
b74d73980b Back to development 2010-03-09 17:37:45 +00:00
Tim-Philipp Müller
3d9213ffa2 Release 0.10.28 2010-03-08 23:09:01 +00:00
Tim-Philipp Müller
cebc1a1396 Release 0.10.27 2010-03-05 23:43:26 +00:00
Tim-Philipp Müller
2586004e85 0.10.26.4 pre-release 2010-03-03 19:54:50 +00:00
Tim-Philipp Müller
4818f60cd5 0.10.26.3 pre-release 2010-02-24 00:30:02 +00:00
Tim-Philipp Müller
6a4491efa9 0.10.26.2 pre-release 2010-02-18 20:08:39 +00:00
Thiago Santos
bfff7a1b4e bytewriter: add _fill function
Adds a new function to GstByteWriter that writes
a constant value to a memory area (aka memset).
Useful for adding padding to buffers.

Also updates .def file and docs.

API: gst_byte_writer_fill()
2010-02-12 17:23:29 -03:00
Tim-Philipp Müller
d0ed2b0fd6 Release 0.10.26 2010-02-10 19:17:28 +00:00
Tim-Philipp Müller
edfabdfca9 0.10.25.3 pre-release 2010-02-04 18:30:56 +00:00
Tim-Philipp Müller
10287a9c81 win32: update windows headers to latest version 2010-01-26 19:36:42 +00:00
Stefan Kost
e60216bce8 bin: also remove private function from def file 2010-01-24 23:12:22 +02:00
Wim Taymans
8fff434835 typefind: add a new method that also uses the file extension
Add a method to perform get_range typefinding that also uses the
uri/location extension as an extra hint. It will first try to call the
typefind functions of the factories that handle the given extension. The result
is that in the common case, we only call one typefind function, which speeds up
the typefinding a lot.
2010-01-12 17:34:39 +01:00
Wim Taymans
4718b7ef09 collectpads: add ability to install clipping functions
Add a method to install a clipping function that is called when a buffer is
received. Users of collectpads can then perform clipping on the incomming
buffers.

Also retab the header file a little.

See #590265
2009-12-24 15:25:14 +01:00
Jan Schmidt
332eb4ea4d basesrc: Add gst_base_src_new_seamless_segment()
Merge new function from resindvd into the primary GstBaseSrc for
starting a new seamless segment.

API: gst_base_src_new_seamless_segment()
2009-11-21 18:23:51 +01:00
Sebastian Dröge
fee1ad3a0a event: API: Add sink-message event
gst_event_new_sink_message()
gst_event_parse_sink_message()

This event is used for sending a GstMessage downstream and synchronized
with the stream, to be posted by the sink once it reaches the sink.

Fixes bug #602275.
2009-11-18 13:12:27 +01:00
Sebastian Dröge
0ed24bc50e utils: API: Add multiplication and addition functions for fractions
gst_util_fraction_add()
gst_util_fraction_multiply()

These work on plain integers instead of GValues to
keep the overhead as low as possible.
2009-11-16 09:56:32 +01:00
Sebastian Dröge
e4257e8d5f gstutils: API: Add fraction helper functions
gst_util_greatest_common_divisor()
gst_util_double_to_fraction()
gst_util_fraction_to_double()

Using these instead of going over GValue has much lower overhead.

Also add float<->fraction transform functions for GValue.
2009-11-16 09:56:32 +01:00
Sebastian Dröge
039ef83523 registry: API: Add gst_{default,}_registry_get_feature_list_cookie()
This returns the internal feature list cookie, which changes every
time a feature is added or removed. This can be used by elements
to check if they should update their cached feature lists.
2009-11-10 18:17:26 +01:00
Stefan Kost
f63ecd04a8 pad: rename new api from _refed to _reffed.
Due to popular demand rename the new api as we still can.
API: gst_pad_get_caps_reffed(), gst_pad_peer_get_caps_reffed()
2009-11-05 12:54:32 +02:00
Sebastian Dröge
f9e3b72ff6 structure: API: Add gst_structure_id_has_field{,_typed} 2009-11-02 09:24:10 +01:00
Edward Hervey
ebee258806 gstpluginfeature: API : new gst_plugin_feature_list_copy() method
This allows copying AND incrementing the refcount at the same time,
avoiding a double iteratio of the GList
2009-10-24 10:39:30 +02:00
Edward Hervey
db8a25a0a4 win32: Add new API symbol 2009-10-16 09:43:08 +02:00
Stefan Kost
fcc5d783df pad: add variants of gst_pad_get_caps() that don't copy caps. Fixes #590941
In most places in core and baseclasses we just need the caps to do caps-
intersections. In that case ref'ed caps are enough (no need to copy).
This patch also switches the code to use the new functions.
API: gst_pad_get_caps_refed(), gst_pad_peer_get_caps_refed()
2009-10-07 22:41:30 +03:00
Tim-Philipp Müller
ed636d6f65 win32: add new byte writer and reader API to .def file
API: gst_byte_writer_*()
2009-10-07 19:45:22 +01:00
Tim-Philipp Müller
3977d6d884 win32: add new API to .def file
And add API: marker in commit message that was omitted in the original
commit:

API: gst_data_queue_new_full()
2009-10-07 09:58:44 +01:00
Jan Schmidt
51675e0c2a registry: Add registry helper phase 1
Phase 1 of adding the registry scan helper
2009-10-06 19:51:42 +01:00
Wim Taymans
43354dd197 defs: add gst_iterator_new_single to defs 2009-08-28 18:06:45 +02:00
Sebastian Dröge
76338950f9 gstutils: Add new scaling functions to the docs 2009-08-13 16:32:28 +02:00
Stefan Kost
568202cb47 caps: add gst_caps_can_intersect()
Often we don't need the result of the intersection. Add a variant that only
tries to intersect. It can break out earlier and does less GValue copying.
API: gst_caps_can_intersect()
2009-08-06 15:30:33 +03:00
Jan Schmidt
ab6d3c736b 0.10.23.3 pre-release 2009-07-20 17:05:31 +01:00
Stefan Kost
2cb16ad7aa info: allow getting other log categories. Fixes #587417
Add a new macro GST_DEBUG_CATEGORY_GET to get a log category by name. This
allows plugins to use e.g. core categories like PERFORMANCE or CLOCK.
API: GST_DEBUG_CATEGORY_GET
2009-07-06 19:54:30 +01:00
Stefan Kost
3e21ddf81f logging: add a performace log category
This category can be used to log slow code path and help auditing the
performance. Add FIXME-0.11 to some questionable categories.
2009-06-29 11:28:01 +03:00
Wim Taymans
3afa91d7aa trace: use proper locking in GstTrace
Protect the allocated list of objects with a lock so that trace actually works
reliably.
Shortcut the alloc trace sooner when disabled.
2009-06-23 13:46:28 +02:00
Wim Taymans
c825cc18c6 defs: add new byte reader methods 2009-06-23 10:05:03 +02:00
Wim Taymans
6438f6f9b9 bufferlist: Various cleanups
Add new method to iterate a bufferlist without having to allocate an iterator.
Add convenience method for getting an item from the list based on the group and
index.
Remove redundant _do_data callback and method.
Update unit-tests and add some more for the new methods.
2009-06-19 15:31:53 +02:00
Tim-Philipp Müller
dccea0406b taglist: add functions to create a new taglist with tags in one go
Add functions to create a new tag list and set tags in one go, which
is nice for use in combination with functions that take ownership of
the taglist, such as gst_event_new_tag() or gst_element_found_tags().

API: add gst_tag_list_new_full()
API: add gst_tag_list_new_full_valist()
2009-06-14 16:17:50 +01:00
Tim-Philipp Müller
674447fafe bytereader: add gst_byte_reader_masked_scan_uint32()
Add a pattern scan function similar to the one recently added to
GstAdapter, and a unit test (based on the adapter one).
Fixes #585592.

API: add gst_byte_reader_masked_scan_uint32()
2009-06-13 10:53:49 +01:00
Wim Taymans
e969b3a399 message: add step-start message 2009-06-12 13:16:29 +02:00
Tim-Philipp Müller
cdd47a37e9 structure: add gst_structure_*_get*() vararg functions
Add a bunch of vararg getter convenience functions to complement
the vararg setter functions, and a basic unit test. Fixes #534208.

API: gst_structure_get()
API: gst_structure_id_get()
API: gst_structure_get_valist()
API: gst_structure_id_get_valist()
2009-06-10 09:39:12 +01:00
Stefan Kost
ed88db818b registry: allow plugins to cache extra data in registry. Fixes #570233
Add a GstStructure to GstPlugin. Plugins can retieve it in plugin_init and
access the cached info or build the cache and store it there.
2009-06-07 23:48:59 +03:00
Stefan Kost
55577a48ea registry: don't recreate features on first use. Fixes #584389
The first time one calls gst_element_factory_make(), gst recreates the plugin
feature and the element factory. As a side effect we ref the class to fill
in detail we already have filled from the registry cache. This patch changes
the behaviour to just update the existing entries. The factory is now attached
to the type and set in gst_element_base_class_init().
2009-06-07 23:48:59 +03:00
Tim-Philipp Müller
c9915b767f configure: remove AC_C_INLINE and update win32 files to git
Remove AC_C_INLINE check, so we don't end up with an #undef inline in
config.h, which causes problems with some versions of MSCV apparently.
GLib defines inline for us in a suitable way already anyway.
Fixes #584835.

While we're at it, also update the other win32 files to git (bump
version, add new defines and enums).
2009-06-04 19:47:11 +01:00
Wim Taymans
0e74bfe248 segment: add gst_segment_set_running_time
Added new method for closing the segment to a specific running time.

API: GstSegment::gst_segment_set_running_time()
2009-06-04 12:53:20 +02:00
Wim Taymans
92984a116b segment: add method for converting to position
Add gst_segment_to_position() that converts a running_time to a position in the
segment. A faulty variant of this function is currently used in inputselector
but we'll need it for frame stepping too.

API: GstSegment::gst_segment_to_position()
2009-06-03 19:06:30 +02:00
Wim Taymans
386c516e51 add new API for framestepping
Add new STEP event and methods for creating/parsing the event
Update design docs.
Add new STEP_DONE message and method to create/parse.

API: GstEvent::gst_event_new_step()
API: GstEvent::gst_event_parse_step()
API: GstMessage::gst_message_new_step_done()
API: GstMessage::gst_message_parse_step_done()
2009-06-01 13:36:49 +02:00
Tim-Philipp Müller
c8acbbfde0 structure: add gst_structure_id_new() convenience function
Add convenience wrapper for gst_structure_id_empty_new() plus
gst_structure_id_set() and use it in a few places.

API: gst_structure_id_new()
2009-05-29 19:28:10 +01:00
Wim Taymans
83b2c63a30 element: add start_time field an methods
Add a start_time field and some methods. The start_time will contain the
running_time of when the element last went to paused. This time can be user to
report the position in PAUSED but also to do more correct clipping and
stepping later.
2009-05-29 11:55:38 +02:00
Sebastian Dröge
1d05e05b3e Add missing symbol to the win32 exports
This was accidentially removed by my last commit.
2009-05-27 16:34:54 +02:00
Sebastian Dröge
4e8f547f98 API: Add gst_message_{new,parse}_tag_full() to get/set the source pad
Fixes bug #582588.
2009-05-27 14:32:51 +02:00
Wim Taymans
fca63abbe7 defs: add new symbol 2009-05-20 00:45:27 +02:00
Wim Taymans
ae08561ae6 element: add gst_element_lost_state_full()
Add a gst_element_lost_state_full() with an extra argument to control
distribution of a new base_time. We will need this for flushing step
operations.

API: GstElement::gst_element_lost_state_full()
2009-05-14 11:36:28 +02:00
Wim Taymans
bf8cbbc74d defs: add new symbol 2009-05-13 16:26:00 +02:00
Jonas Holmberg
22a48fb08c bufferlist: hook up the pad functions
Reuse buffer code for bufferlists. Not sure if this measurably impacts performance
for the simple buffer case, if it does after doing some benchmarks, we can
decouple it later.

Fixes #572285
2009-05-12 15:18:53 +02:00
Jonas Holmberg
d99cf4db1b bufferlist: add docs/build/debug/unittest
See #572285
2009-05-12 15:18:52 +02:00
Sebastian Dröge
8e766e2d61 Add new functions to the win32 exports 2009-05-12 09:02:45 +02:00
Wim Taymans
d2c5ea9a40 TaskPool: remove _set_func()
Remove the static function set on the TaskPool before _prepare() is called and
allow for assigning a function to a Task when we _push().
Update the examples
2009-05-12 00:27:38 +02:00
Wim Taymans
88d158f6f3 defs: add new task methods 2009-05-12 00:27:04 +02:00
Wim Taymans
8ada09abac defs: update .defs file with taskpool methods 2009-05-12 00:26:40 +02:00
Wim Taymans
2d8a22c1da Task: add method to set the priority
Add a method to configure a priority for the threads used by GstTask.
2009-05-12 00:08:35 +02:00
Wim Taymans
e72efeccd1 GstMessage: Add STREAM_STATUS message methods
Add methods to handle the stream_status message types.
2009-05-11 23:47:22 +02:00
Wim Taymans
657c689b7f defs: add new symbol to defs file 2009-05-11 23:23:20 +02:00
Wim Taymans
c31c3f215f GstTask: unify task state functions
Add new gst_task_set_state() to change the state of the task instead of
duplicating the code in each function.

API: GstTask::gst_task_set_state()
2009-05-11 22:59:35 +02:00
Wim Taymans
54401df78c gstobject: add gst_object_ref_sink
Add the gst_object_ref_sink() method to match the glib one.

API: GstObject::gst_object_ref_sink()
2009-05-11 22:35:08 +02:00
Jan Schmidt
88e4e53fc2 Release 0.10.23 2009-05-10 22:41:04 +01:00
Jan Schmidt
5b477d97b5 0.10.22.4 pre-release 2009-05-06 16:10:11 +01:00
Jan Schmidt
2633d77126 0.10.22.3 pre-release 2009-04-21 22:15:44 +01:00
Jan Schmidt
b3751bc330 win32: Update win32 build files 2009-04-16 00:49:47 +01:00
Tim-Philipp Müller
116c8be6bf API: add FIXME and DUMPMEM log levels and convenience macros
Two new log levels to dump FIXMEs into the log and to log data
in form of a hex dump (#578114).

API: GST_CAT_FIXME_OBJECT
API: GST_CAT_MEMDUMP_OBJECT
API: GST_CAT_FIXME
API: GST_CAT_MEMDUMP
API: GST_FIXME_OBJECT
API: GST_MEMDUMP_OBJECT
API: GST_FIXME
API: GST_MEMDUMP
2009-04-08 21:32:05 +01:00
Tim-Philipp Müller
c4e10b9535 API: add gst_tag_list_get_buffer{_index}
Convenience API, mostly for image tags, so people don't have to
figure out the whole GValue/GstValue thing just for this.
2009-03-26 14:21:10 +00:00
Wim Taymans
4eacc03558 defs: add new symbol to windows .def file
Add the new windows cmd.exe coloring method to the .def file.
2009-03-19 11:25:01 +01:00
Tim-Philipp Müller
646a746965 win32: update enumtypes and config.h 2009-03-08 17:22:43 +00:00
Sebastian Dröge
3c6448c64e API: Add gst_util_array_binary_search() for binary searchs on a sorted array
This will be mostly useful in all elements that have some kind of internal
seek/index table. Currently almost all of them (or even all of them)
are using a linear search although the used array is already sorted,
wasting some CPU time without good reason.

Fixes bug #573623.
2009-03-02 16:17:45 +01:00
David Schleef
81d012ecd9 Change how win32/common/config.h is updated
Generate win32/common/config.h-new directly from config.h.in,
using shell variables in configure and some hard-coded information.
Change top-level makefile so that 'make win32-update' copies the
generated file to win32/common/config.h, which we keep in source
control.  It's kept in source control so that the git tree is
buildable from VS.
2009-02-23 13:08:00 -08:00
Alessandro Decina
d3940f520b GstPad: Add gst_pad_set_blocked_async_full
This allows connecting a GDestroyNotify for when the callback is removed/replaced.
Partially fixes #514717
2009-02-22 20:01:05 +01:00
Wim Taymans
1005fb0971 Add new symbols to def files
Add the new request_message symbols to the windows def file.
2009-02-19 10:25:34 +01:00
Tim-Philipp Müller
49110bbdb9 win32: add new GstPoll API to libgstreamer.def 2009-02-05 16:12:02 +00:00
Jan Schmidt
23ea96655c Update the win32 config.h.in template from the main config.h.in 2009-01-31 21:35:21 +00:00
Jan Schmidt
00c8689688 add gst_type_find_helper_for_extension to the win32 defs file 2009-01-23 21:44:11 +00:00
Jan Schmidt
8341b6ee3a Update win32 config.h for 0.10.22.1 dev cycle... 2009-01-23 16:09:35 +00:00
Jan Schmidt
e9a393398e Release 0.10.22
Original commit message from CVS:
Release 0.10.22
2009-01-19 22:58:59 +00:00
Tim-Philipp Müller
b8b0c80b29 gst/gst.c: Ref new enum type in gst_init.
Original commit message from CVS:
* gst/gst.c: (init_post):
Ref new enum type in gst_init.
* win32/common/libgstreamer.def:
Add recently-added API.
2009-01-06 18:10:22 +00:00
Sebastian Dröge
b8272d5805 win32/common/libgstreamer.def: Add gst_tag_setter_reset_tags to the list of exported symbols.
Original commit message from CVS:
* win32/common/libgstreamer.def:
Add gst_tag_setter_reset_tags to the list of exported symbols.
2008-12-19 09:44:49 +00:00
Wim Taymans
e538502f02 win32/common/libgstreamer.def: Add new symbols to .def file.
Original commit message from CVS:
* win32/common/libgstreamer.def:
Add new symbols to .def file.
2008-11-18 13:36:29 +00:00