Commit graph

2470 commits

Author SHA1 Message Date
Michael Smith 5fc678a6a7 gst/parse/grammar.y: Fix a leak in parse-launch for any source-or-sink named element references used.
Original commit message from CVS:
* gst/parse/grammar.y:
Fix a leak in parse-launch for any source-or-sink named element
references used.

* tests/check/pipelines/parse-launch.c: (expected_fail_pipe):
Unref the pipeline if it exists after we've failed parsing.
2006-04-06 10:38:54 +00:00
Michael Smith 96d945bc58 gst/gstpipeline.c: When we create a pipeline bus, initially create it in flushing mode.
Original commit message from CVS:
* gst/gstpipeline.c: (gst_pipeline_init):
When we create a pipeline bus, initially create it in flushing mode.
Fixes leaks in at least one test, and makes a new pipeline work the
same as one that has gone to READY and then back to NULL.

* gst/gstelement.c:
Typo fix in docs.
2006-04-05 15:46:00 +00:00
Michael Smith 763b2d3278 tests/check/gst/gstghostpad.c: Unref a pad we reffed.
Original commit message from CVS:
* tests/check/gst/gstghostpad.c: (GST_START_TEST):
Unref a pad we reffed.
* tests/check/gst/gstutils.c: (GST_START_TEST):
Unref bins
2006-04-05 15:12:39 +00:00
Michael Smith add30e0328 gst/gstquery.c: Fix leaking GValues in queries, as shown by valgrind/testsuite.
Original commit message from CVS:
* gst/gstquery.c: (gst_query_set_formats),
(gst_query_set_formatsv):
Fix leaking GValues in queries, as shown by valgrind/testsuite.
2006-04-05 13:18:29 +00:00
Michael Smith 26bb3efc1a tests/check/generic/sinks.c: Fix a variety of memleaks in sinks check, which are only sometimes shown by running the ...
Original commit message from CVS:
* tests/check/generic/sinks.c: (GST_START_TEST):
Fix a variety of memleaks in sinks check, which are only sometimes
shown by running the tests under valgrind (weird?).
2006-04-05 12:11:20 +00:00
Jan Schmidt 0173129d09 docs/version.entities.in: Fix the substituted entity name after thomas' changes on the weekend.
Original commit message from CVS:
* docs/version.entities.in:
Fix the substituted entity name after thomas' changes on the
weekend.
2006-04-05 11:04:19 +00:00
Zaheer Abbas Merali 248a70724d gst/gstinfo.c: Use printf instead of
Original commit message from CVS:
2006-04-05  Zaheer Abbas Merali  <zaheerabbas at merali dot org>

* gst/gstinfo.c: (__gst_in_valgrind): Use printf instead of
VALGRIND_PRINTF
2006-04-05 10:31:20 +00:00
Andy Wingo 75b96e0efd gst/gstpad.c (gst_pad_set_blocked_async): More debug. libs/gst/base/gstbasetransform.c
Original commit message from CVS:
2006-04-05  Andy Wingo  <wingo@pobox.com>

* gst/gstpad.c (gst_pad_set_blocked_async): More debug.

* libs/gst/base/gstbasetransform.c
(gst_base_transform_sink_eventfunc): When resetting our segment on
FLUSH_STOP, also update the flag saying we haven't seen a
newsegment.
2006-04-05 10:26:29 +00:00
Paolo Borelli 0f2b215959 gst/gstplugin.c: minor clean-ups: G_DEFINE_TYPE already takes care of the parent_class stuff, no need to do it twice....
Original commit message from CVS:
Patch by: Paolo Borelli  <pborelli at katamail dot com>
* gst/gstplugin.c: (gst_plugin_finalize), (gst_plugin_class_init),
(gst_plugin_check_license):
minor clean-ups: G_DEFINE_TYPE already takes care of the
parent_class stuff, no need to do it twice. Mark array of
license strings as constant. (#337103)
2006-04-04 18:02:07 +00:00
Michael Smith 3c048726f5 tools/gst-inspect.c: Free the right plugin list; fixes a memory leak.
Original commit message from CVS:
* tools/gst-inspect.c: (print_element_list):
Free the right plugin list; fixes a memory leak.
2006-04-04 17:54:30 +00:00
Mark Nauwelaerts 39a6b5414c plugins/elements/gstfilesink.c: Don't error out on empty buffers (#336945).
Original commit message from CVS:
Patch by: Mark Nauwelaerts  <manauw at skynet dot be>
* plugins/elements/gstfilesink.c: (gst_file_sink_render):
Don't error out on empty buffers (#336945).
2006-04-04 15:45:36 +00:00
Jan Schmidt fb8ad07b59 Documentation updates. Make BaseSink and BaseSrc docs contain the class structure so that people can actually see the...
Original commit message from CVS:
* docs/libs/gstreamer-libs-sections.txt:
* gst/gsttaglist.c:
* libs/gst/base/gstbasesink.c:
* libs/gst/base/gstbasesink.h:
* libs/gst/base/gstbasesrc.c:
* libs/gst/base/gstbasesrc.h:
Documentation updates. Make BaseSink and BaseSrc docs contain the
class structure so that people can actually see the prototypes for
virtual functions they're supposed to be overriding.
2006-04-04 14:58:50 +00:00
Tim-Philipp Müller 3b67b0ad82 plugins/elements/gsttypefindelement.c: More debug info; when skipping typefinding, send cached events in all cases.
Original commit message from CVS:
* plugins/elements/gsttypefindelement.c:
(gst_type_find_element_chain):
More debug info; when skipping typefinding, send cached
events in all cases.
2006-04-04 08:55:44 +00:00
Thomas Vander Stichele f5bf786c85 configure.ac: use new AS_VERSION and AS_NANO macros
Original commit message from CVS:

* configure.ac:
use new AS_VERSION and AS_NANO macros
* gst/gst-i18n-lib.h:
* gst/gst.c:
* gst/gsterror.c:
* gst/gstversion.h.in:
* win32/common/config.h:
* win32/common/config.h.in:
update accordingly
2006-04-01 09:41:43 +00:00
Michael Smith 5b86e7bf4e plugins/elements/gsttypefindelement.c: Do not typefind content if the buffers already have caps. and the right thing ...
Original commit message from CVS:
* plugins/elements/gsttypefindelement.c:
(gst_type_find_element_chain):
Do not typefind content if the buffers already have caps.
Neccesary for icydemux (#333657), and the right thing to do anyway.
2006-03-31 15:26:04 +00:00
Wim Taymans 0a4ba6610f libs/gst/base/gstbasesink.c: More QoS measurements as described in the design doc.
Original commit message from CVS:
* libs/gst/base/gstbasesink.c: (gst_base_sink_init),
(gst_base_sink_finalize), (gst_base_sink_set_qos_enabled),
(gst_base_sink_is_qos_enabled), (gst_base_sink_do_sync),
(gst_base_sink_record_qos_observation),
(gst_base_sink_perform_qos), (gst_base_sink_reset_qos),
(gst_base_sink_is_too_late), (gst_base_sink_render_object),
(gst_base_sink_change_state):
More QoS measurements as described in the design doc.
Get rid of ringbuffer with observations, running average is
more simple and equally good.
Calculates valid proportion now.
Added beginning of flood measurement.
2006-03-30 16:36:12 +00:00
Wim Taymans 9c9290f52f Small documentation updates and additions.
Original commit message from CVS:
* docs/design/part-qos.txt:
* gst/gstclock.c:
Small documentation updates and additions.
2006-03-29 13:45:15 +00:00
Wim Taymans 72d0c78c0f libs/gst/base/gstbasesrc.c: Perform the EOS logic when we reach the segment stop position.
Original commit message from CVS:
* libs/gst/base/gstbasesrc.c: (gst_base_src_finalize),
(gst_base_src_send_event), (gst_base_src_loop),
(gst_base_src_change_state):
Perform the EOS logic when we reach the segment stop position.
Fix compilation on gcc4.1
2006-03-29 13:39:05 +00:00
Tommi Myöhänen 92064c7169 plugins/elements/gstqueue.*: In queue, when EOS is received, if minimum threshold > max_size - current_level, there i...
Original commit message from CVS:
Patch by Tommi Myöhänen <ext-tommi dot myohanen at nokia dot com>
* plugins/elements/gstqueue.c: (gst_queue_init),
(gst_queue_locked_flush), (gst_queue_handle_sink_event),
(gst_queue_set_property):
* plugins/elements/gstqueue.h:
In queue, when EOS is received, if minimum threshold > max_size -
current_level, there is chance that queue blocks forever in conditional item
del wait. This is because the queue is not emptied completely due to minimum
threshold.
Here is another approach. Instead of setting cur_levels to max in EOS, just
zero all minimum threshold levels. This should make sure that queue gives out
all data. When going to READY (stop) state, just reset the original minimum
threshold levels.
Fixes #336336.
2006-03-29 11:02:33 +00:00
Tim-Philipp Müller 30ae52d1b9 plugins/elements/gsttypefindelement.*: When typefinding is done in push mode, we should cache events we receive durin...
Original commit message from CVS:
* plugins/elements/gsttypefindelement.c: (stop_typefinding),
(gst_type_find_element_handle_event),
(gst_type_find_element_send_cached_events),
(gst_type_find_element_change_state):
* plugins/elements/gsttypefindelement.h:
When typefinding is done in push mode, we should cache
events we receive during typefinding instead of just
dropping them (e.g. newsegment, custom events from
dvdreadsrc etc.) and then send them out once we've
determined the type of the stream (and decodebin
has had a chance to plug in a decoder/demuxer).
2006-03-29 10:33:19 +00:00
Wim Taymans 3dea59868b docs/design/part-qos.txt: First QoS ideas.
Original commit message from CVS:
* docs/design/part-qos.txt:
First QoS ideas.
2006-03-27 18:38:49 +00:00
Wim Taymans 6b3b2678bb libs/gst/base/gstbasesrc.c: Handle element seek correctly when we are streaming.
Original commit message from CVS:
Inspired by a patch of: Lutz Mueller <lutz at topfrose dot de>
* libs/gst/base/gstbasesrc.c: (gst_base_src_finalize),
(gst_base_src_send_event), (gst_base_src_change_state):
Handle element seek correctly when we are streaming.
Fixes #326998.
2006-03-27 11:48:10 +00:00
Michael Smith d5aa0e9723 docs/faq/gst-uninstalled: Set up LD_LIBRARY_PATH to point at all the gstreamer libs. This will allow you to correctly...
Original commit message from CVS:
* docs/faq/gst-uninstalled:
Set up LD_LIBRARY_PATH to point at all the gstreamer libs. This will
allow you to correctly run intalled applications built against old           core, using plugins that require updated core (e.g. running
installed totem against a full uninstalled gstreamer stack)
2006-03-24 18:38:12 +00:00
Thomas Vander Stichele a9fe8575cc add API: marker in ChangeLog
Original commit message from CVS:
add API: marker in ChangeLog
2006-03-24 17:29:25 +00:00
Stefan Kost 6a55dddc1c libs/gst/base/gstcollectpads.c: more debug details
Original commit message from CVS:
* libs/gst/base/gstcollectpads.c: (gst_collect_pads_is_collected):
more debug details
2006-03-24 17:10:46 +00:00
Wim Taymans 615dd47858 docs/gst/gstreamer-sections.txt: Rearrange the order of the methods so that related methods are grouped together in s...
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
Rearrange the order of the methods so that related methods
are grouped together in sections.
2006-03-24 11:02:42 +00:00
Stefan Kost a7004ec5a2 gst/gstelement.c: Little clarification in the docs
Original commit message from CVS:
* gst/gstelement.c:
Little clarification in the docs
2006-03-24 10:44:17 +00:00
Stefan Kost cfbd7ba925 docs/README: formatting fix
Original commit message from CVS:
* docs/README:
formatting fix
* plugins/elements/gstidentity.c:
* plugins/elements/gstqueue.c:
* plugins/elements/gsttee.c:
* plugins/elements/gsttypefindelement.c:
GST_ELEMENT_DETAILS formatting
2006-03-24 10:38:20 +00:00
Wim Taymans 171d23cf77 libs/gst/base/gstbasesink.h: Only add fields, not insert or we break ABI.
Original commit message from CVS:
* libs/gst/base/gstbasesink.h:
Only add fields, not insert or we break ABI.
2006-03-24 09:48:33 +00:00
Tim-Philipp Müller 56a4bbcc65 win32/common/: Update, add recently added functions.
Original commit message from CVS:
* win32/common/libgstbase.def:
* win32/common/libgstreamer.def:
Update, add recently added functions.
2006-03-23 18:51:05 +00:00
Tim-Philipp Müller 18132911b4 API: add some new utility functions:
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* gst/gstutils.c: (gst_pad_query_peer_position),
(gst_pad_query_peer_duration), (gst_pad_query_peer_convert):
* gst/gstutils.h:
API: add some new utility functions:
- gst_pad_query_peer_position
- gst_pad_query_peer_duration
- gst_pad_query_peer_convert
2006-03-23 18:45:02 +00:00
Wim Taymans ac8e65f3eb Forgot to mention the previous commit fixed #326311
Original commit message from CVS:
Forgot to mention the previous commit fixed #326311
2006-03-23 16:32:41 +00:00
Wim Taymans 3a21be3b8c libs/gst/base/gstbasesink.c: Decouple max-lateness and the fact that QoS messages are generated with a new property (...
Original commit message from CVS:
* libs/gst/base/gstbasesink.c: (gst_base_sink_class_init),
(gst_base_sink_init), (gst_base_sink_finalize),
(gst_base_sink_set_qos_enabled), (gst_base_sink_is_qos_enabled),
(gst_base_sink_set_property), (gst_base_sink_get_property),
(gst_base_sink_commit_state), (gst_base_sink_get_sync_times),
(gst_base_sink_wait_clock), (gst_base_sink_do_sync),
(gst_base_sink_add_qos_observation), (gst_base_sink_send_qos),
(gst_base_sink_perform_qos), (gst_base_sink_reset_qos),
(gst_base_sink_is_too_late), (gst_base_sink_render_object),
(gst_base_sink_preroll_object), (gst_base_sink_event),
(gst_base_sink_chain_unlocked), (gst_base_sink_get_position_last),
(gst_base_sink_get_position_paused), (gst_base_sink_get_position),
(gst_base_sink_query), (gst_base_sink_change_state):
Decouple max-lateness and the fact that QoS messages are generated
with a new property (qos).
Add vmethod so subclasses can be notified of ASYNC playing
state changes.
Collect timestamp start and stop to report better current
position in EOS/PLAYING/PAUSED/READY/NULL.
Refactor QoS/frame dropping and other measurements.
API: GstBaseSrc::qos
* libs/gst/base/gstbasesink.h:
Added Private struct.
API: gst_base_sink_set_qos_enabled
API: gst_base_sink_is_qos_enabled
2006-03-23 16:20:40 +00:00
Tim-Philipp Müller a1e4bb5d04 gst/gstregistryxml.c: If compiling against GLib-2.8 or newer, try to read the registry file using GMappedFile first b...
Original commit message from CVS:
* gst/gstregistryxml.c: (gst_registry_xml_read_cache):
If compiling against GLib-2.8 or newer, try to read the
registry file using GMappedFile first before falling back
to fopen() + fread() (#332151).
2006-03-23 11:54:51 +00:00
Wim Taymans 2c2fdbf7da gst/gstinfo.c: Disable debugging unless explicitly activated.
Original commit message from CVS:
* gst/gstinfo.c: (gst_debug_set_active),
(gst_debug_category_set_threshold):
Disable debugging unless explicitly activated.
Fixes #335480.
2006-03-22 18:25:04 +00:00
Wim Taymans 0e984d3026 gst/gstelement.c: Cleanup the error case.
Original commit message from CVS:
* gst/gstelement.c: (gst_element_set_locked_state),
(gst_element_dispose):
Cleanup the error case.
* gst/gstobject.c: (gst_object_dispose):
print a critical when some object was disposed with
a parent, also revive the object since it might
crash the parent.
2006-03-22 13:10:16 +00:00
Tim-Philipp Müller 2bafa6ab0d tools/gst-launch.1.in: Fix another typo.
Original commit message from CVS:
* tools/gst-launch.1.in:
Fix another typo.
2006-03-22 09:03:10 +00:00
Thomas Vander Stichele 07bb30df7e disable some tests when we don't have a registry
Original commit message from CVS:

* configure.ac:
* tests/check/Makefile.am:
disable some tests when we don't have a registry
* tests/check/gst/gstutils.c: (gst_utils_suite):
don't build the part that needs parsing
2006-03-21 19:27:15 +00:00
Thomas Vander Stichele 94cb0d62f0 gst/Makefile.am
Original commit message from CVS:

* gst/Makefile.am
* tests/examples/Makefile.am:
fix --disable-parse build
2006-03-21 17:25:22 +00:00
Tim-Philipp Müller 1b89702383 tools/gst-feedback.1.in: Fix typo: s/feeback/feedback/ (#133494).
Original commit message from CVS:
* tools/gst-feedback.1.in:
Fix typo: s/feeback/feedback/ (#133494).
2006-03-21 15:42:02 +00:00
Tim-Philipp Müller 899f2f8244 tools/: Add FILES section and correct entry about GST_REGISTRY_PATH environment variable (#133495; #133494).
Original commit message from CVS:
* tools/Makefile.am:
* tools/gst-launch.1.in:
Add FILES section and correct entry about GST_REGISTRY_PATH
environment variable (#133495; #133494).
2006-03-21 15:04:20 +00:00
Tim-Philipp Müller 779842dbb3 tools/: Remove gst-md5sum and man page (the md5sink element required was removed ages ago)
Original commit message from CVS:
* tools/Makefile.am:
* tools/gst-md5sum.1.in:
* tools/gst-md5sum.c:
Remove gst-md5sum and man page (the md5sink element
required was removed ages ago)
2006-03-21 14:41:58 +00:00
Tim-Philipp Müller 1f1dfef0dc gst/gststructure.c: Make sure that string fields in structures/taglists contain valid UTF-8 - we don't want to pass r...
Original commit message from CVS:
* gst/gststructure.c: (gst_structure_id_set_value):
Make sure that string fields in structures/taglists
contain valid UTF-8 - we don't want to pass rubbish to
applications because of a buggy plugin (cp. #334167).
2006-03-21 14:24:41 +00:00
Edward Hervey ac377b0cdc Series of fixes for dereferenced pointers that gcc 4.1 complains about.
Original commit message from CVS:
reviewed by: <delete if not using a buddy>
* gst/gstbin.c: (gst_bin_dispose), (gst_bin_provide_clock_func),
(gst_bin_handle_message_func):
* gst/gstclock.c: (gst_clock_dispose), (gst_clock_set_master):
* gst/gstelement.c: (gst_element_set_clock), (gst_element_dispose),
(gst_element_set_bus_func):
* gst/gstghostpad.c: (gst_proxy_pad_dispose):
* gst/gstminiobject.c: (gst_value_set_mini_object),
(gst_value_take_mini_object):
* gst/gstpad.c: (gst_pad_set_pad_template):
* gst/gstpipeline.c: (gst_pipeline_dispose),
(gst_pipeline_use_clock), (gst_pipeline_auto_clock):
* libs/gst/base/gstcollectpads.c: (gst_collect_pads_pop),
(gst_collect_pads_chain):
* libs/gst/net/gstnettimeprovider.c:
(gst_net_time_provider_set_property):
Series of fixes for dereferenced pointers that gcc 4.1 complains about.
It's in fact all issues with gst_*object_replace().
2006-03-21 14:14:49 +00:00
Loïc Minier 88b5b1082e pkgconfig/: Use @CHECK_LIBS@ here instead of hard-coding -lcheck (#334109).
Original commit message from CVS:
Patch by: Loïc Minier  <lool + gnome at via dot ecp dot fr>
* pkgconfig/gstreamer-check-uninstalled.pc.in:
* pkgconfig/gstreamer-check.pc.in:
Use @CHECK_LIBS@ here instead of hard-coding -lcheck (#334109).
2006-03-21 13:55:44 +00:00
Edward Hervey 067db77499 gst/: gst_[buffer|event|message]_ref() macros are replaced by a static inline functions because gcc-4.1 will about if...
Original commit message from CVS:
* gst/gstbuffer.h:
* gst/gstevent.h:
* gst/gstmessage.h:
gst_[buffer|event|message]_ref() macros are replaced by a static
inline functions because gcc-4.1 will about if the return value
isn't used.
* tests/check/gst/gstevent.c: (event_probe):
gst_event_ref now has to be given a GstEvent* , fix check accordingly.
2006-03-21 13:50:52 +00:00
Jan Schmidt 3bf7e221ad gst/gstutils.h: Add G_UNLIKELY to our boilerplate to optimise the 'already registered the type' case. (Closes: #33519...
Original commit message from CVS:
* gst/gstutils.h:
Add G_UNLIKELY to our boilerplate to optimise the 'already registered
the type' case. (Closes: #335195 for now). In the future, when we
depend on GLib 2.10, we could also intern the type name using
g_intern_static_string()
2006-03-20 16:45:15 +00:00
Wim Taymans f35fc7a902 gst/gstbin.c: Position query should also take max of all streams.
Original commit message from CVS:
* gst/gstbin.c: (gst_bin_handle_message_func),
(bin_query_max_init), (bin_query_position_fold),
(bin_query_position_done), (gst_bin_query):
Position query should also take max of all streams.
2006-03-20 10:56:08 +00:00
Wim Taymans b7edbd2caf plugins/elements/gstfakesrc.c: Fix leaks in fakesrc.
Original commit message from CVS:
* plugins/elements/gstfakesrc.c: (gst_fake_src_class_init),
(gst_fake_src_finalize):
Fix leaks in fakesrc.
* tests/check/pipelines/parse-launch.c: (GST_START_TEST):
Fix leaks in the testcase.
2006-03-20 09:28:41 +00:00
Sébastien Moutte 93ff4560cc gst/gst_private.h: add win32 specific import decoration(__declspec(dllimport)) for all extern GstDebugCategory * vari...
Original commit message from CVS:
* gst/gst_private.h:
add win32 specific import decoration(__declspec(dllimport))
for all extern GstDebugCategory * variables
* win32/common/libgstbase.def:
* win32/common/libgstcontroller.def:
* win32/common/libgstreamer.def:
Add some exports, remove empty lines
* win32/common/libgstdataprotocol.def:
* win32/common/libgstdataprotocol.dsp:
* win32/common/libgstnet.def:
* win32/common/libgstnet.dsp:
new project files and exportation files added
2006-03-19 21:39:21 +00:00
Wim Taymans ef30ca111a tests/check/libs/basesrc.c: Use proper return value for probe.
Original commit message from CVS:
* tests/check/libs/basesrc.c: (eos_event_counter):
Use proper return value for probe.
2006-03-19 16:05:23 +00:00
Wim Taymans c815b879fe gst/gstpad.c: Don't leak buffers, caps and pads on negotiation errors.
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_alloc_buffer_full),
(gst_pad_push):
Don't leak buffers, caps and pads on negotiation errors.
2006-03-17 19:27:51 +00:00
Stefan Kost 0dbc4f8321 docs/faq/: Faq review and update.
Original commit message from CVS:
* docs/faq/cvs.xml:
* docs/faq/dependencies.xml:
* docs/faq/developing.xml:
* docs/faq/faq.xml:
* docs/faq/general.xml:
* docs/faq/getting.xml:
* docs/faq/legal.xml:
* docs/faq/troubleshooting.xml:
* docs/faq/using.xml:
Faq review and update.
2006-03-16 15:33:55 +00:00
Jan Schmidt f4987a5399 gst/gstpad.c: Don't pound the cpu to pieces by checking get_caps when accept_caps is called with the same caps as the...
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_alloc_buffer_full),
(gst_pad_push):
Don't pound the cpu to pieces by checking get_caps when accept_caps
is called with the same caps as the pad already has.
Use GST_DEBUG_OBJECT when outputting caps change information.
2006-03-16 10:18:27 +00:00
Wim Taymans 126088c311 gst/gstclock.c: Fix docs.
Original commit message from CVS:
* gst/gstclock.c: (gst_clock_class_init):
Fix docs.
2006-03-15 20:17:40 +00:00
Jan Schmidt 30643217ba gst/gstbuffer.h: Documentation fix.
Original commit message from CVS:
* gst/gstbuffer.h:
Documentation fix.

* gst/gstpad.c: (gst_pad_init), (gst_pad_acceptcaps_default),
(gst_pad_accept_caps), (gst_pad_configure_sink),
(gst_pad_configure_src), (gst_pad_chain), (gst_pad_push):
Make the default acceptcaps behaviour be to check the requested
caps against the gst_pad_get_caps output.

Ensure that gst_pad_accept_caps is used to check caps when a pad
doesn't have a setcaps function, so that pads automatically refuse
caps that they don't allow in their pad template. (Fixes #332986)

When a buffer with attached caps is pushed, ensure that the source
pad receives those caps even if the element didn't call
gst_pad_set_caps first.
2006-03-15 16:29:02 +00:00
Wim Taymans 006b34dc3f libs/gst/base/gstadapter.c: Add some docs.
Original commit message from CVS:
* libs/gst/base/gstadapter.c:
Add some docs.
2006-03-15 16:22:26 +00:00
Tim-Philipp Müller d84e29915d win32/common/: Add a whole bunch of missing functions (#334434).
Original commit message from CVS:
* win32/common/libgstbase.def:
* win32/common/libgstcontroller.def:
* win32/common/libgstreamer.def:
Add a whole bunch of missing functions (#334434).
2006-03-15 15:57:51 +00:00
Wim Taymans 1d86546801 libs/gst/base/gstbasesink.c: Better debug info when we receive a segment event.
Original commit message from CVS:
* libs/gst/base/gstbasesink.c: (gst_base_sink_configure_segment),
(gst_base_sink_get_sync_times), (gst_base_sink_wait_clock),
(gst_base_sink_do_sync), (gst_base_sink_do_qos):
Better debug info when we receive a segment event.
Reorganize a bit so we can pass the get_times() results around.
Use the segment format when calculating the running time.
Don't do QoS is sync is disabled or we have no clock or the
element does not want us to sync to the clock.
Don't drop buffers if QoS is disabled for now.
2006-03-14 19:36:05 +00:00
Wim Taymans 8c3e91c8ea gst/gstclock.c: Marked the stats property as unimplemented so people don't get wild ideas.
Original commit message from CVS:
* gst/gstclock.c: (gst_clock_class_init), (do_linear_regression):
Marked the stats property as unimplemented so people don't get
wild ideas.
Add debug message when regression goes wrong.
Added some more docs.
2006-03-14 19:28:20 +00:00
Wim Taymans c8456d4371 gst/gstsegment.c: Return correct return type in case of errors.
Original commit message from CVS:
* gst/gstsegment.c: (gst_segment_to_stream_time):
Return correct return type in case of errors.
2006-03-14 19:26:17 +00:00
Wim Taymans 34e8d485cc gst/gstformat.c: Don't segfault on invalid formats.
Original commit message from CVS:
* gst/gstformat.c: (gst_format_get_name), (gst_format_to_quark):
Don't segfault on invalid formats.
2006-03-14 19:16:45 +00:00
Tim-Philipp Müller 9394a81b82 libs/gst/base/gstbasesink.c: Can't use gst_segment_to_running_time() when the segment is not in GST_TIME_FORMAT (like...
Original commit message from CVS:
* libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times):
Can't use gst_segment_to_running_time() when the segment
is not in GST_TIME_FORMAT (like with filesink, for example).
Stops flac encoding pipelines from spewing critical warnings
at EOS (#331248).
2006-03-14 18:25:54 +00:00
Tim-Philipp Müller e2b2ce11f1 gst/gstpipeline.c: Add 'Since: 0.10.5' to gtk-doc blurb for added property.
Original commit message from CVS:
* gst/gstpipeline.c: (gst_pipeline_class_init):
Add 'Since: 0.10.5' to gtk-doc blurb for added property.
* plugins/elements/gsttypefindelement.c:
(gst_type_find_element_handle_event):
Don't try to typefind empty streams.
2006-03-14 16:32:58 +00:00
Wim Taymans 926ef9413a libs/gst/base/gstbasesink.c: Separate QoS calculation.
Original commit message from CVS:
* libs/gst/base/gstbasesink.c: (gst_base_sink_do_sync),
(gst_base_sink_do_qos):
Separate QoS calculation.
Only drop buffers when lateness is bigger than the
duration of the buffer.
2006-03-14 11:18:07 +00:00
Wim Taymans e9c4493586 gst/gstpipeline.c: Don't deadlock when reading properties.
Original commit message from CVS:
* gst/gstpipeline.c: (gst_pipeline_set_property),
(gst_pipeline_get_property), (do_pipeline_seek),
(gst_pipeline_change_state), (gst_pipeline_set_delay),
(gst_pipeline_get_delay):
Don't deadlock when reading properties.
2006-03-13 15:17:45 +00:00
Wim Taymans 1dcaa1fc4b libs/gst/base/gstbasetransform.*: Make basetransform virtual method for src events too.
Original commit message from CVS:
* libs/gst/base/gstbasetransform.c:
(gst_base_transform_class_init), (gst_base_transform_init),
(gst_base_transform_sink_event),
(gst_base_transform_sink_eventfunc),
(gst_base_transform_src_event), (gst_base_transform_src_eventfunc),
(gst_base_transform_handle_buffer), (gst_base_transform_chain),
(gst_base_transform_set_property),
(gst_base_transform_get_property),
(gst_base_transform_change_state), (gst_base_transform_update_qos),
(gst_base_transform_set_qos_enabled),
(gst_base_transform_is_qos_enabled):
* libs/gst/base/gstbasetransform.h:
Make basetransform virtual method for src events too.
Handle QOS in basetransform.
API: gst_base_transform_update_qos
API: gst_base_transform_set_qos_enabled
API: gst_base_transform_is_qos_enabled
2006-03-13 11:27:57 +00:00
Wim Taymans 7c9402d5ab libs/gst/base/gstbasesink.c: Small cleanups.
Original commit message from CVS:
* libs/gst/base/gstbasesink.c: (gst_base_sink_init),
(gst_base_sink_do_sync):
Small cleanups.
Use QOS debug category.
2006-03-13 11:16:45 +00:00
Wim Taymans 526cf6506e plugins/elements/gstqueue.c: Very small doc update.
Original commit message from CVS:
* plugins/elements/gstqueue.c:
Very small doc update.
2006-03-13 11:11:16 +00:00
Wim Taymans ccb9d70195 gst/: Added QOS debug category
Original commit message from CVS:
* gst/gst_private.h:
* gst/gstinfo.c: (_gst_debug_init):
Added QOS debug category
2006-03-13 11:08:28 +00:00
Wim Taymans 429ebfff2c Documentation updates.
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* gst/gstbin.c: (bin_bus_handler), (gst_bin_handle_message_func):
* gst/gstbin.h:
* gst/gstbus.c: (gst_bus_class_init):
* gst/gstbus.h:
* gst/gstclock.c:
* gst/gstelement.c: (gst_element_set_locked_state):
* gst/gstsegment.c:
Documentation updates.
* gst/gstpipeline.c: (gst_pipeline_get_type),
(gst_pipeline_class_init), (gst_pipeline_init),
(gst_pipeline_dispose), (gst_pipeline_set_property),
(gst_pipeline_get_property), (do_pipeline_seek),
(gst_pipeline_send_event), (gst_pipeline_change_state),
(gst_pipeline_provide_clock_func), (gst_pipeline_set_delay),
(gst_pipeline_get_delay):
* gst/gstpipeline.h:
Added methods for setting the delay.
API: gst_pipeline_set_delay
API: gst_pipeline_get_delay
Add pipeline debug category
Various cleanups.
Updated docs.
Don't reset stream time when seek failed.
2006-03-13 11:04:38 +00:00
Wim Taymans b69033434f docs/design/: Documentation updates.
Original commit message from CVS:
* docs/design/draft-klass.txt:
* docs/design/part-clocks.txt:
* docs/design/part-events.txt:
* docs/design/part-gstbin.txt:
* docs/design/part-gstpipeline.txt:
* docs/design/part-messages.txt:
* docs/design/part-negotiation.txt:
* docs/design/part-overview.txt:
* docs/design/part-preroll.txt:
* docs/design/part-seeking.txt:
* docs/design/part-states.txt:
* docs/design/part-streams.txt:
Documentation updates.
2006-03-13 10:32:26 +00:00
Julien Moutte ff2e4288ed gst/gsttaglist.c: Fix rubbish docs that are encouraging us to leak strings...
Original commit message from CVS:
2006-03-12  Julien MOUTTE  <julien@moutte.net>

* gst/gsttaglist.c: Fix rubbish docs that are encouraging
us to leak strings...
2006-03-12 20:44:46 +00:00
Thomas Vander Stichele 1fc26101c0 libs/gst/net/gstnettimeprovider.c: fix docs
Original commit message from CVS:

* libs/gst/net/gstnettimeprovider.c:
fix docs
* win32/common/config.h:
update
2006-03-12 20:40:19 +00:00
Julio M. Merino Vidal a93efc69ba configure.ac: Don't check for libgnomeui (leftover from old examples that aren't built or disted any longer) (#334303).
Original commit message from CVS:
Patch by: Julio M. Merino Vidal <jmmv at netbsd org>
* configure.ac:
Don't check for libgnomeui (leftover from old examples
that aren't built or disted any longer) (#334303).
2006-03-12 14:32:37 +00:00
Tim-Philipp Müller 22482e1bbd plugins/elements/: Emit RESOURCE_NO_SPACE_LEFT error here as well when there's no space left on the device.
Original commit message from CVS:
* plugins/elements/gstfdsink.c: (gst_fd_sink_render):
* plugins/elements/gstfilesink.c: (gst_file_sink_render):
Emit RESOURCE_NO_SPACE_LEFT error here as well when
there's no space left on the device.
2006-03-11 13:02:28 +00:00
Tim-Philipp Müller 61ce17d6f3 gst/gstclock.h: Fix GST_CLOCK_TIME_IS_VALID signedness issues - we need to cast the input to GstClockTime before comp...
Original commit message from CVS:
* gst/gstclock.h:
Fix GST_CLOCK_TIME_IS_VALID signedness issues - we need
to cast the input to GstClockTime before comparing with
another GstClockTime value.
2006-03-10 23:44:00 +00:00
Thomas Vander Stichele 485f6d33cd log what we're waiting on
Original commit message from CVS:
log what we're waiting on
2006-03-10 19:12:01 +00:00
Thomas Vander Stichele 2826d0b65e releasing 0.10.4
Original commit message from CVS:
releasing 0.10.4
2006-03-10 19:03:13 +00:00
Michael Smith 70df662991 libs/gst/dataprotocol/dataprotocol.c: Fix docs for dataprocotol to not get the return types completely wrong for a fe...
Original commit message from CVS:
* libs/gst/dataprotocol/dataprotocol.c:
Fix docs for dataprocotol to not get the return types completely
wrong for a few functions.
2006-03-10 15:30:27 +00:00
Tim-Philipp Müller 3bced21cea Add new API: gst_pipeline_set_auto_flush_bus() and gst_pipeline_get_auto_flush_bus() to disable automatic flushing of...
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* gst/gstpipeline.c: (gst_pipeline_class_init),
(gst_pipeline_init), (gst_pipeline_set_property),
(gst_pipeline_get_property), (gst_pipeline_change_state),
(gst_pipeline_set_auto_flush_bus),
(gst_pipeline_get_auto_flush_bus):
* gst/gstpipeline.h:
Add new API: gst_pipeline_set_auto_flush_bus() and
gst_pipeline_get_auto_flush_bus() to disable automatic
flushing of the pipeline's GstBus when going from READY
to NULL state (#332045).
2006-03-09 16:53:05 +00:00
Tim-Philipp Müller 09bc0d93af Add new API: gst_uri_has_protocol() (#333779).
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* gst/gsturi.c: (gst_uri_has_protocol):
* gst/gsturi.h:
Add new API: gst_uri_has_protocol() (#333779).
2006-03-09 12:08:54 +00:00
Wim Taymans 99a61247bc gst/gstclock.*: Review docs.
Original commit message from CVS:
* gst/gstclock.c: (gst_clock_entry_new),
(gst_clock_id_compare_func), (gst_clock_id_wait),
(gst_clock_id_wait_async), (gst_clock_id_unschedule),
(gst_clock_init), (gst_clock_get_internal_time),
(gst_clock_set_master), (do_linear_regression),
(gst_clock_add_observation), (gst_clock_set_property):
* gst/gstclock.h:
Review docs.
Small cleanups.
Fix a possible segfault when the window-size is made smaller.
Calculate jitter before performing the clock wait. Ideally
the clock implementation should calculate jitter but we need
API breakage for that.
* gst/gstsystemclock.c: (gst_system_clock_init):
Docs review.
* libs/gst/base/gstbasesink.c: (gst_base_sink_do_sync):
Remove leftover else
* tests/check/gst/gstsystemclock.c: (GST_START_TEST),
(gst_systemclock_suite):
Added check to test GST_CLOCK_DIFF.
2006-03-09 11:45:14 +00:00
Tim-Philipp Müller b53dc49d8d libs/gst/base/gsttypefindhelper.c: If we are provided with the size, we should implement
Original commit message from CVS:
* libs/gst/base/gsttypefindhelper.c: (helper_find_get_length),
(gst_type_find_helper_get_range):
If we are provided with the size, we should implement
GstTypeFind::get_length, so that typefind functions who
want to can actually peek at the middle of a file.
2006-03-09 10:46:35 +00:00
Tim-Philipp Müller fe20af8eae docs/manual/advanced-dataaccess.xml: Add some very very basic error checking.
Original commit message from CVS:
* docs/manual/advanced-dataaccess.xml:
Add some very very basic error checking.
* docs/pwg/appendix-checklist.xml:
Some updates to the list of things to check when writing an element.
2006-03-08 14:30:40 +00:00
Wim Taymans 3f3536bf73 docs/design/part-element-transform.txt: Added some docs about the design of tranform elements.
Original commit message from CVS:
* docs/design/part-element-transform.txt:
Added some docs about the design of tranform elements.
* libs/gst/base/gstbasesrc.c: (gst_base_src_perform_seek),
(gst_base_src_loop), (gst_base_src_change_state):
Mark buffers with the DISCONT flag.
2006-03-08 13:44:55 +00:00
Michael Smith 81cc6d92ba gst/: Rewrite registry-saving to avoid race conditions and check for failed writes.
Original commit message from CVS:
* gst/gstregistry.h:
* gst/gstregistryxml.c: (gst_registry_save),
(gst_registry_save_escaped), (gst_registry_xml_save_caps),
(gst_registry_xml_save_pad_template),
(gst_registry_xml_save_feature), (gst_registry_xml_save_plugin),
(gst_registry_xml_write_cache):
Rewrite registry-saving to avoid race conditions and check for
failed writes.
2006-03-08 12:57:37 +00:00
Wim Taymans 21a646d674 libs/gst/base/gstbasetransform.c: Cleanups, separate normal flow from errors, add sensible
Original commit message from CVS:
* libs/gst/base/gstbasetransform.c:
(gst_base_transform_transform_caps),
(gst_base_transform_transform_size),
(gst_base_transform_prepare_output_buffer),
(gst_base_transform_get_unit_size),
(gst_base_transform_buffer_alloc),
(gst_base_transform_handle_buffer),
(gst_base_transform_change_state):
Cleanups, separate normal flow from errors, add sensible
DEBUG lines.
Don't try to renegotiate when allocating an output buffer.
Also copy DISCONT buffer flag when copying a buffer.
Reset the transform after we finish streaming, not during.
2006-03-08 10:17:41 +00:00
Wim Taymans 06aa56aca4 libs/gst/base/gstbasesink.c: Use last buffer timestamp in qos message.
Original commit message from CVS:
* libs/gst/base/gstbasesink.c: (gst_base_sink_do_sync):
Use last buffer timestamp in qos message.
2006-03-08 09:46:54 +00:00
Wim Taymans 2ee0cdf799 docs/pwg/: Applied patch from Christophe Fergeau, fixes #333416
Original commit message from CVS:
* docs/pwg/advanced-tagging.xml:
* docs/pwg/building-pads.xml:
Applied patch from Christophe Fergeau, fixes #333416
2006-03-07 17:06:53 +00:00
Wim Taymans 7a88e2a762 docs/libs/gstreamer-libs-sections.txt: Added basesink new methods.
Original commit message from CVS:
* docs/libs/gstreamer-libs-sections.txt:
Added basesink new methods.
* gst/gstevent.c:
* gst/gstevent.h:
Docs updates. Flesh out the QoS docs.
* libs/gst/base/gstadapter.c:
Small doc clarification about ownership and flushing.
* libs/gst/base/gstbasesink.c: (gst_base_sink_set_sync),
(gst_base_sink_get_sync), (gst_base_sink_set_max_lateness),
(gst_base_sink_get_max_lateness), (gst_base_sink_set_property),
(gst_base_sink_get_property), (gst_base_sink_do_sync):
* libs/gst/base/gstbasesink.h:
Added new methods to allow subclass to control max-lateness
and sync.
Generate very basic QoS events based on last sync observation.
Updated docs, fix typo, added some QoS blurb.
* libs/gst/base/gstbasesrc.c:
Remove obsolete _get_state() calls from docs.
2006-03-07 16:21:02 +00:00
Wim Taymans c45bd3fb9f Fix #333669, Add pad accessor defines for GstBaseTransform
Original commit message from CVS:
* docs/libs/gstreamer-libs-sections.txt:
* libs/gst/base/gstbasetransform.h:
Fix #333669, Add pad accessor defines for GstBaseTransform
Fix docs for GstBaseSrc.
2006-03-07 15:14:51 +00:00
Wim Taymans 37d77aaeee Small documentation fixes.
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* gst/gstbuffer.h:
* gst/gstvalue.c:
* libs/gst/base/gstbasetransform.h:
Small documentation fixes.
2006-03-07 15:08:57 +00:00
Tim-Philipp Müller a4957224a8 gst/gstvalue.c: Document thread-unsafety of gst_value_register_foo_func() when used at the same time as gst_value_foo...
Original commit message from CVS:
* gst/gstvalue.c:
Document thread-unsafety of gst_value_register_foo_func()
when used at the same time as gst_value_foo() (#322628).
2006-03-07 11:47:24 +00:00
Tim-Philipp Müller 7789e9eb94 libs/gst/base/gstpushsrc.c: Push sources don't support pull mode by default.
Original commit message from CVS:
* libs/gst/base/gstpushsrc.c: (gst_push_src_class_init),
(gst_push_src_check_get_range):
Push sources don't support pull mode by default.
2006-03-07 09:28:44 +00:00
Tim-Philipp Müller b5161fda6a libs/gst/base/gstbasesrc.*: Add ::check_get_range() vfunc to GstBaseSrc (#332611), provide default implementation, an...
Original commit message from CVS:
* libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
(gst_base_src_init), (gst_base_src_pad_check_get_range),
(gst_base_src_default_check_get_range):
* libs/gst/base/gstbasesrc.h:
Add ::check_get_range() vfunc to GstBaseSrc (#332611),
provide default implementation, and rename
gst_base_src_check_get_range() to
gst_base_src_pad_check_get_range() for clarity.
2006-03-06 19:55:06 +00:00
Wim Taymans 991af9aab5 libs/gst/base/gstbasesink.c: Make property overridable.
Original commit message from CVS:
* libs/gst/base/gstbasesink.c: (gst_base_sink_class_init):
Make property overridable.
2006-03-06 16:10:42 +00:00
Wim Taymans 3290a06b36 libs/gst/base/gstbasesink.*: Make max-lateness a property.
Original commit message from CVS:
* libs/gst/base/gstbasesink.c: (gst_base_sink_class_init),
(gst_base_sink_init), (gst_base_sink_set_property),
(gst_base_sink_get_property), (gst_base_sink_do_sync):
* libs/gst/base/gstbasesink.h:
Make max-lateness a property.
2006-03-06 16:02:37 +00:00
Wim Taymans 6367b03096 libs/gst/base/gstbasesink.c: Don't ever draw a frame that is >10ms late.
Original commit message from CVS:
* libs/gst/base/gstbasesink.c: (gst_base_sink_wait_clock),
(gst_base_sink_do_sync), (gst_base_sink_render_object):
Don't ever draw a frame that is >10ms late.
2006-03-06 15:16:23 +00:00
Michael Smith bed06b24d8 gst/gstmessage.c: When copying a message, set the parent_refcount of the enclosed structure to point at the copy, not...
Original commit message from CVS:
* gst/gstmessage.c: (_gst_message_copy):
When copying a message, set the parent_refcount of the enclosed
structure to point at the copy, not the original message.
2006-03-06 14:51:36 +00:00