Commit graph

2888 commits

Author SHA1 Message Date
Alessandro Decina
86a6abe32d gst/gstevent.c: Fix gst_mini_object_make_writable() and gst_event_copy() for events with event structures by setting ...
Original commit message from CVS:
Patch by: Alessandro Decina  <alessandro at nnva org>
* gst/gstevent.c: (_gst_event_copy):
Fix gst_mini_object_make_writable() and gst_event_copy() for events
with event structures by setting the parent refcount address of the
copied structure to the address of the refcount member of the newly
copied event rather than the address of the refcount member of the
original event. Fixes #358737.
* tests/check/gst/gstevent.c: (GST_START_TEST):
Unit test for the above.
2006-10-02 08:37:24 +00:00
Stefan Kost
6d3d058444 docs/design/Makefile.am: Dist some more files.
Original commit message from CVS:
* docs/design/Makefile.am:
Dist some more files.
2006-09-29 20:29:49 +00:00
Tim-Philipp Müller
c67ec73df6 tests/check/libs/controller.c: Add test for the previous fix; add some more tests for correct refcounting behaviour; ...
Original commit message from CVS:
* tests/check/libs/controller.c: (GST_START_TEST),
(gst_controller_suite):
Add test for the previous fix; add some more tests
for correct refcounting behaviour; fix a few leaks
in test cases; call gst_controller_init() at start
of all tests.
2006-09-29 12:31:18 +00:00
Tim-Philipp Müller
3040ad0e2d libs/gst/controller/gstcontroller.c: Don't g_return_val_if_fail() on timed values with invalid timestamps inside a cr...
Original commit message from CVS:
* libs/gst/controller/gstcontroller.c: (gst_controller_new_valist),
(gst_controller_set_from_list):
Don't g_return_val_if_fail() on timed values with invalid timestamps
inside a critical section without unlocking the mutex. Spotted by
René Stadler. (#357617)
Also, fix up refcounting properly: when returning an existing
controller, we should increase the reference only once and not
once per property and when trying to control a property again
we should also increase the refcount.
2006-09-29 12:24:50 +00:00
Wim Taymans
dd3b41efe1 libs/gst/net/: Stop reading commands when EOF as well.
Original commit message from CVS:
* libs/gst/net/gstnetclientclock.c: (gst_net_client_clock_thread):
* libs/gst/net/gstnettimeprovider.c:
(gst_net_time_provider_thread):
Stop reading commands when EOF as well.
* plugins/elements/gstfakesink.c: (gst_fake_sink_class_init):
* plugins/elements/gstfakesrc.c: (gst_fake_src_class_init):
* plugins/elements/gstidentity.c: (gst_identity_class_init):
Unify description of the dump property.
2006-09-29 08:22:22 +00:00
Jan Schmidt
fe92364e18 Mention bug number in previous commit
Original commit message from CVS:
Mention bug number in previous commit
2006-09-28 17:20:17 +00:00
Jan Schmidt
7242cc1520 tests/examples/manual/.cvsignore: OK, so it's actually cvsignore that needs changing. Stop laughing.
Original commit message from CVS:
* tests/examples/manual/.cvsignore:
OK, so it's actually cvsignore that needs changing. Stop laughing.
2006-09-28 15:52:04 +00:00
Jan Schmidt
0657ec204c tests/examples/manual/Makefile.am: Gah, declare vars *before* using them
Original commit message from CVS:
* tests/examples/manual/Makefile.am:
Gah, declare vars *before* using them
2006-09-28 15:27:12 +00:00
Jan Schmidt
d1effe5859 gst/: Re-commit the registry changes, along with an extra fix:
Original commit message from CVS:
* gst/gst.c: (init_pre), (scan_and_update_registry),
(ensure_current_registry_nonforking),
(ensure_current_registry_forking), (ensure_current_registry),
(init_post), (gst_debug_help), (gst_deinit):
* gst/gst_private.h:
* gst/gstregistry.c: (gst_registry_finalize),
(gst_registry_remove_features_for_plugin_unlocked),
(gst_registry_remove_plugin), (gst_registry_scan_path_level),
(gst_registry_scan_path),
(_priv_gst_registry_remove_cache_plugins),
(_priv_gst_registry_cleanup):
* gst/gstregistry.h:
Re-commit the registry changes, along with an extra fix:
When a cached plugin is encountered at a different file path,
update the stored path in the registry cache so that the parent
process knows where it actually is now when it re-reads the registry
cache. Fixes the thing that broke distcheck with the previous commit.
* tests/check/Makefile.am:
Clean up files named 'core' too when running make clean.
* tests/examples/manual/Makefile.am:
Set up a registry path for running these tests, and clean it properly
for distcheck.
2006-09-28 14:00:43 +00:00
Jan Schmidt
5ad1430ce9 configure.ac: Don't pull in gmodule-2.0.pc as a dependency in our .pc files - we want gmodule-no-export-2.0.pc instea...
Original commit message from CVS:
* configure.ac:
Don't pull in gmodule-2.0.pc as a dependency in our .pc files - we
want gmodule-no-export-2.0.pc instead so that we don't drag in
--export-dynamic on every project that links to GStreamer.
Also, make our export regex only match the start of symbols, rather
than any symbol that contains '_gst' somewhere.
* libs/gst/check/Makefile.am:
The libgstcheck we build does however need export-dynamic, as it
produces some symbols that don't match our _gst... style regex.
2006-09-28 11:11:28 +00:00
Jan Schmidt
a8bbbf2e2d gst/: Revert previous change until I figure out why it breaks distcheck.
Original commit message from CVS:
* gst/gst.c: (init_pre), (scan_and_update_registry),
(ensure_current_registry_nonforking),
(ensure_current_registry_forking), (ensure_current_registry),
(init_post), (gst_debug_help), (gst_deinit):
* gst/gst_private.h:
* gst/gstregistry.c: (gst_registry_finalize),
(gst_registry_remove_plugin), (gst_registry_scan_path_level),
(gst_registry_scan_path), (_gst_registry_remove_cache_plugins),
(_gst_registry_cleanup):
* gst/gstregistry.h:
Revert previous change until I figure out why it breaks distcheck.
2006-09-27 17:42:47 +00:00
Jan Schmidt
b5cd597ca9 gst/gst.c: Make init_pre and init_post take the full complement of GOptionFunc args so they can return useful GErrors...
Original commit message from CVS:
* gst/gst.c: (init_pre), (scan_and_update_registry),
(ensure_current_registry_nonforking),
(ensure_current_registry_forking), (ensure_current_registry),
(init_post), (gst_debug_help), (gst_deinit):
Make init_pre and init_post take the full complement of GOptionFunc
args so they can return useful GErrors. Make the registry updating
functions do so.
Call _priv_gst_registry_remove_cache_plugins after scanning files to
ensure that the registry we're about to write out doesn't contain
stale information about old-deleted plugin files.
Make _priv_gst_registry_remove_cache_plugins return a boolean so
that deletion of plugin files is considered a registry change.
* gst/gst_private.h:
* gst/gstregistry.c: (gst_registry_finalize),
(gst_registry_remove_features_for_plugin_unlocked),
(gst_registry_remove_plugin), (gst_registry_scan_path_level),
(gst_registry_scan_path),
(_priv_gst_registry_remove_cache_plugins),
(_priv_gst_registry_cleanup):
* gst/gstregistry.h:
Rename _gst_registry_remove_cache_plugins and _gst_registry_cleanup
by adding _priv prefix, so that they won't appear in the global
symbol table. They still do atm though because of #318031. Move the
prototypes to gst_private.h
When removing a plugin, remove all features for that plugin too.
Fixes #340878.
2006-09-27 16:52:59 +00:00
Wim Taymans
a0e5a4a964 docs/random/moving-plugins: Make it clear that the "compiled-in descriptions" really mean the element details.
Original commit message from CVS:
* docs/random/moving-plugins:
Make it clear that the "compiled-in descriptions" really mean
the element details.
* libs/gst/base/gstbasesink.c: (gst_base_sink_commit_state),
(gst_base_sink_wait_preroll):
Update docs.
* docs/libs/gstreamer-libs-sections.txt:
* libs/gst/base/gstbasesrc.c: (gst_base_src_wait_playing),
(gst_base_src_get_range), (gst_base_src_activate_push):
* libs/gst/base/gstbasesrc.h:
Added function to block while waiting for PLAYING, this function
is used by live sources that block on the clock.
API: gst_base_src_wait_playing()
2006-09-27 13:19:55 +00:00
Peter Kjellerstedt
05b05477eb Makefile.am: gst-element-check.m4 is generated and should therefore be copied from the build dir rather than the sour...
Original commit message from CVS:
Patch by: Peter Kjellerstedt <pkj at axis com>
* Makefile.am:
gst-element-check.m4 is generated and should therefore be
copied from the build dir rather than the source dir (#357593).
'make distcheck' hasn't noticed this because we were disting
the file as well, so stop doing that.
2006-09-27 10:13:13 +00:00
Tim-Philipp Müller
b74d2e83a6 tests/check/gst/gstcaps.c: Add some tests for gst_caps_intersect().
Original commit message from CVS:
* tests/check/gst/gstcaps.c: (GST_START_TEST), (gst_caps_suite):
Add some tests for gst_caps_intersect().
* tools/gst-launch.c: (event_loop):
Print all buffering percentages we get, even the 100% one.
2006-09-27 09:23:18 +00:00
Wim Taymans
2ab0b397bb tools/gst-inspect.c: Fix printing of flags to match the look of enums.
Original commit message from CVS:
* tools/gst-inspect.c: (print_element_properties_info),
(print_signal_info):
Fix printing of flags to match the look of enums.
2006-09-26 12:39:26 +00:00
Tim-Philipp Müller
9b8bf01253 gst/gstelementfactory.c: Fix typo in docs blurb.
Original commit message from CVS:
* gst/gstelementfactory.c:
Fix typo in docs blurb.
2006-09-25 13:08:29 +00:00
Tim-Philipp Müller
5c666e7f43 gst/gsturi.c: Don't assert/crash here if a uri handler doesn't return any supported protocols. The list of protocols ...
Original commit message from CVS:
* gst/gsturi.c: (search_by_entry):
Don't assert/crash here if a uri handler doesn't return any
supported protocols. The list of protocols could be generated
dynamically at runtime or at plugin registration, and an error
in the underlying library shouldn't be fatal (#353301).
2006-09-25 11:16:37 +00:00
Tim-Philipp Müller
e7fc450bc4 gst/gstinfo.c: Fix warning if HAVE_PRINTF_EXTENSION is undefined (spotted by Peter Kjellerstedt).
Original commit message from CVS:
* gst/gstinfo.c:
Fix warning if HAVE_PRINTF_EXTENSION is undefined
(spotted by Peter Kjellerstedt).
2006-09-25 10:36:23 +00:00
Antoine Tremblay
3a0f9058ba libs/gst/base/gstbasesrc.c: Match _start/_stop calls in the activate functions. Remove redundant _stop call from the ...
Original commit message from CVS:
Based on patch by: Antoine Tremblay <hexa00 at gmail dot com>
* libs/gst/base/gstbasesrc.c:
(gst_base_src_default_check_get_range), (gst_base_src_start),
(gst_base_src_activate_push), (gst_base_src_activate_pull),
(gst_base_src_change_state):
Match _start/_stop calls in the activate functions. Remove redundant
_stop call from the state change function. Fixes #356910.
Turn failure DEBUG into ERROR.
2006-09-23 09:30:40 +00:00
Wim Taymans
3f2eb6bdff Update docs about buffering.
Original commit message from CVS:
* docs/design/part-buffering.txt:
* gst/gstmessage.c: (gst_message_new_buffering),
(gst_message_parse_buffering):
Update docs about buffering.
* docs/design/part-trickmodes.txt:
Fix typo.
2006-09-22 15:29:23 +00:00
Stefan Kost
abfedeb4b8 libs/gst/controller/gstcontroller.c: Ref instances when returning them again (fixes #357180)
Original commit message from CVS:
* libs/gst/controller/gstcontroller.c: (gst_controller_new_valist),
(gst_controller_new_list):
Ref instances when returning them again (fixes #357180)
2006-09-22 13:32:43 +00:00
Tim-Philipp Müller
3d9910ecb9 gst/gstghostpad.c: Don't forget to release proxy lock when there's an error.
Original commit message from CVS:
* gst/gstghostpad.c: (gst_ghost_pad_set_target):
Don't forget to release proxy lock when there's an error.
2006-09-22 10:17:15 +00:00
Jan Schmidt
60fa209cbd gst/gstcaps.h: Add extra initialisers for Caps things, to fix some plugin warnings when using -Wextra
Original commit message from CVS:
* gst/gstcaps.h:
Add extra initialisers for Caps things, to fix some plugin warnings
when using -Wextra
2006-09-20 16:17:26 +00:00
Wim Taymans
2c5cdfe01f gst/gstghostpad.c: Also set template on the internal pad so that a getcaps from the target pad returns the template c...
Original commit message from CVS:
* gst/gstghostpad.c: (gst_ghost_pad_new_full):
Also set template on the internal pad so that a getcaps from the target
pad returns the template caps.
2006-09-18 13:56:26 +00:00
Wim Taymans
53bf2d570c gst/gstelement.c: Use _DEBUG_OBJECT some more.
Original commit message from CVS:
* gst/gstelement.c: (gst_element_post_message),
(gst_element_dispose):
Use _DEBUG_OBJECT some more.
* libs/gst/base/gstbasesrc.c: (gst_base_src_loop):
Avoid typechecks.
* tools/gst-launch.c: (main):
If the toplevel element is not a GstPipeline, it must be put in a
pipeline so that a bus and clock is selected.
2006-09-18 13:44:12 +00:00
Tim-Philipp Müller
285f89d900 libs/gst/base/gstbasesrc.c: JITTER, RATE, and LATENCY query should be handled by the default case and not by the CONV...
Original commit message from CVS:
* libs/gst/base/gstbasesrc.c: (gst_base_src_default_query):
JITTER, RATE, and LATENCY query should be handled by the
default case and not by the CONVERT query code.
2006-09-17 19:31:27 +00:00
Tim-Philipp Müller
f3c07d5d20 gst/gstformat.c: Fix locking order (must take lock before using n_values).
Original commit message from CVS:
* gst/gstformat.c: (gst_format_register):
Fix locking order (must take lock before using n_values).
* gst/gstvalue.c: (gst_value_serialize_enum),
(gst_value_deserialize_enum_iter_cmp),
(gst_value_deserialize_enum):
Fix serialisation/deserialisation of custom registered GstFormats.
* tests/check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
Unit test for custom format serialisation/deserialisation.
2006-09-17 19:26:16 +00:00
Stefan Kost
139e6f8be4 More G_OBJECT macro fixing. Also Fix some details on the plugin-stamp section.
Original commit message from CVS:
* docs/pwg/building-boiler.xml:
* plugins/elements/gstcapsfilter.c:
More G_OBJECT macro fixing. Also Fix some details on the plugin-stamp
section.
2006-09-16 21:38:09 +00:00
Edward Hervey
63b1a81cf8 libs/gst/base/gstbasetransform.c: Check if requested caps are the same as the sinks caps IF
Original commit message from CVS:
* libs/gst/base/gstbasetransform.c:
(gst_base_transform_buffer_alloc):
Check if requested caps are the same as the sinks caps IF
->have_same_caps is TRUE. If they are not, act as if have_same_caps
is FALSE.
This fixes the renegotiation issues stated in #352827.
2006-09-16 12:49:02 +00:00
Thomas Vander Stichele
147373d4a7 Extract the manual examples again like we used to do.
Original commit message from CVS:
* configure.ac:
* docs/manual/advanced-autoplugging.xml:
* tests/examples/Makefile.am:
* tests/examples/manual/.cvsignore:
* tests/examples/manual/Makefile.am:
* tests/examples/manual/extract.pl:
Extract the manual examples again like we used to do.
Fix one of them.
2006-09-16 10:49:47 +00:00
Thomas Vander Stichele
ec7655a542 win32/common/config.h: update for version
Original commit message from CVS:
* win32/common/config.h:
update for version
2006-09-16 10:47:36 +00:00
Stefan Kost
d42dbfb91a gst/gsterror.c: Documents how to receive errors.
Original commit message from CVS:
* gst/gsterror.c:
Documents how to receive errors.
2006-09-15 21:30:00 +00:00
Wim Taymans
9676117fff tools/gst-launch.c: Added some comments here and there.
Original commit message from CVS:
* tools/gst-launch.c: (sigint_handler_sighandler), (check_intr),
(event_loop), (main):
Added some comments here and there.
Post an application message when an interrupt is caught instead of doing
an uncontrolled state change.
Clean up the event loop.
Handle buffering messages, pause/resume the pipeline.
Make shutdown because of an interrupt more reliable.
2006-09-15 10:43:16 +00:00
Wim Taymans
3db585b2d9 libs/gst/base/gstbasesink.c: Make sure that our internal state is correct when we commit our state asynchronously. Th...
Original commit message from CVS:
* libs/gst/base/gstbasesink.c: (gst_base_sink_commit_state),
(gst_base_sink_wait_preroll), (gst_base_sink_do_sync),
(gst_base_sink_preroll_object):
Make sure that our internal state is correct when we commit our state
asynchronously. This solves a race where a state change to PLAYING
could cause the sink to remain blocked in preroll in some situations.
2006-09-15 09:49:14 +00:00
Wim Taymans
0e6d20b423 tools/gst-inspect.c: List flags as hex so it's easier to deal with.
Original commit message from CVS:
* tools/gst-inspect.c: (print_element_properties_info),
(print_signal_info):
List flags as hex so it's easier to deal with.
2006-09-15 08:50:21 +00:00
Wim Taymans
6efdf610a3 Expose logic to wait for preroll so that subclasses such as audiosink can also use this method.
Original commit message from CVS:
* docs/libs/gstreamer-libs-sections.txt:
* libs/gst/base/gstbasesink.c: (gst_base_sink_wait_preroll),
(gst_base_sink_do_sync):
* libs/gst/base/gstbasesink.h:
Expose logic to wait for preroll so that subclasses such as audiosink
can also use this method.
API: gst_base_sink_wait_preroll()
2006-09-15 08:47:36 +00:00
Wim Taymans
bb634398b7 gst/: Small cleanups in docs and code.
Original commit message from CVS:
* gst/gstobject.c: (gst_object_set_parent):
* gst/gstpipeline.c: (do_pipeline_seek):
Small cleanups in docs and code.
* gst/gstsegment.c: (gst_segment_clip):
* tests/check/gst/gstsegment.c: (GST_START_TEST):
if stop == start and start is in the segment, no clipping should be
done. Also add a test for this.
2006-09-15 08:43:44 +00:00
Wim Taymans
bc14daabe7 Added methods to create and parse BUFFERING messages.
Original commit message from CVS:
* docs/design/part-buffering.txt:
* docs/gst/gstreamer-sections.txt:
* gst/gstmessage.c: (gst_message_new_buffering),
(gst_message_parse_buffering):
* gst/gstmessage.h:
Added methods to create and parse BUFFERING messages.
Added preliminary docs about buffering.
API: gst_message_new_buffering
API: gst_message_parse_buffering
2006-09-15 08:39:56 +00:00
Wim Taymans
84fc21c3c1 gst/gstbin.c: Update documentation.
Original commit message from CVS:
* gst/gstbin.c:
Update documentation.
* gst/gstelement.c: (gst_element_class_init),
(gst_element_release_request_pad), (gst_element_set_clock),
(gst_element_get_index), (gst_element_add_pad),
(gst_element_remove_pad), (gst_element_get_random_pad),
(gst_element_send_event), (gst_element_get_query_types),
(gst_element_query), (gst_element_post_message),
(gst_element_message_full), (gst_element_continue_state),
(gst_element_lost_state), (gst_element_save_thyself),
(gst_element_restore_thyself):
Documentation updates.
Rename last bit of the new-pad -> pad-added signal rename.
Fix the case where an element query would only work if the source
pad was linked.
Avoid some useless type checking in message handling.
* gst/gstevent.c:
* gst/gstevent.h:
* gst/gstutils.c:
Documentation updates.
2006-09-15 08:32:57 +00:00
Thomas Vander Stichele
4754b38d74 add an INFO line for when we actually update the fd
Original commit message from CVS:
add an INFO line for when we actually update the fd
2006-09-14 20:12:04 +00:00
Thomas Vander Stichele
ce37c09168 back to trunk
Original commit message from CVS:
back to trunk
2006-09-14 20:11:10 +00:00
Thomas Vander Stichele
24703cdf92 releasing 0.10.10
Original commit message from CVS:
releasing 0.10.10
2006-09-14 20:08:14 +00:00
Tim-Philipp Müller
422f85898c docs/manual/advanced-position.xml: Fix typo in sample code.
Original commit message from CVS:
* docs/manual/advanced-position.xml:
Fix typo in sample code.
2006-09-05 14:11:06 +00:00
Wim Taymans
b1cb4a633c libs/gst/net/: Make stuff compile on windows. Fixes #345295.
Original commit message from CVS:
* libs/gst/net/gstnetclientclock.c: (inet_aton),
(gst_net_client_clock_init), (gst_net_client_clock_finalize),
(gst_net_client_clock_do_select), (gst_net_client_clock_new):
* libs/gst/net/gstnetclientclock.h:
* libs/gst/net/gstnettimepacket.c: (gst_net_time_packet_send):
* libs/gst/net/gstnettimepacket.h:
* libs/gst/net/gstnettimeprovider.c: (inet_aton),
(gst_net_time_provider_init), (gst_net_time_provider_finalize),
(gst_net_time_provider_thread), (gst_net_time_provider_new):
* libs/gst/net/gstnettimeprovider.h:
Make stuff compile on windows. Fixes #345295.
2006-09-05 08:35:20 +00:00
Tim-Philipp Müller
6ef1f92e88 gst/gst.c: Print better details when child was terminated by signal.
Original commit message from CVS:
* gst/gst.c: (ensure_current_registry_forking):
Print better details when child was terminated by signal.
2006-09-03 11:16:50 +00:00
Tim-Philipp Müller
3a6b921f63 gst/gstregistryxml.c: Print a warning rather than g_assert() if a plugin feature is a URI handler but returns no prot...
Original commit message from CVS:
* gst/gstregistryxml.c: (gst_registry_xml_save_feature):
Print a warning rather than g_assert() if a plugin feature
is a URI handler but returns no protocols (#353976).
2006-09-03 11:06:52 +00:00
Stefan Kost
d922c9780f docs/random/moving-plugins: Fix two typos.
Original commit message from CVS:
* docs/random/moving-plugins:
Fix two typos.
2006-09-02 19:10:56 +00:00
Tim-Philipp Müller
27dcfe7c7f ChangeLog surgery: fix typo
Original commit message from CVS:
ChangeLog surgery: fix typo
2006-09-01 16:03:49 +00:00
Tim-Philipp Müller
1c389318ec gst/gstinfo.c: Fix locking order, handle NULL function values properly.
Original commit message from CVS:
* gst/gstinfo.c: (_gst_debug_nameof_funcptr):
Fix locking order, handle NULL function values properly.
* gst/gstinfo.h:
Fix docs.
* gst/gstpad.c: (gst_pad_buffer_alloc_unchecked):
Initialised variable before using it and fix debug statement to
print the address of the function rather than the address of the
variable on the stack holding the address of the function.
2006-09-01 15:55:20 +00:00
Wim Taymans
1b623c3230 gst/gstghostpad.c: More cleanups.
Original commit message from CVS:
* gst/gstghostpad.c: (gst_proxy_pad_do_event),
(gst_proxy_pad_do_bufferalloc), (gst_proxy_pad_do_chain),
(gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
(gst_proxy_pad_set_target_unlocked), (gst_ghost_pad_parent_set),
(gst_ghost_pad_parent_unset),
(gst_ghost_pad_internal_do_activate_push),
(gst_ghost_pad_internal_do_activate_pull),
(gst_ghost_pad_do_activate_push), (gst_ghost_pad_do_activate_pull),
(gst_ghost_pad_do_link), (gst_ghost_pad_do_unlink),
(gst_ghost_pad_init), (gst_ghost_pad_dispose),
(gst_ghost_pad_new_full), (gst_ghost_pad_new_no_target),
(gst_ghost_pad_new), (gst_ghost_pad_new_from_template),
(gst_ghost_pad_new_no_target_from_template),
(gst_ghost_pad_get_target), (gst_ghost_pad_set_target):
More cleanups.
Avoid needless typechecking in macros.
Since the internal pad is always present and never changes, there is
no need to locking or ref when retrieving it.
Improve debugging a bit.
Handle link errors when setting the target. Fixes #341029.
2006-09-01 10:33:03 +00:00
Wim Taymans
41fbe76808 docs/: Fix docs some more.
Original commit message from CVS:
* docs/libs/gstreamer-libs-sections.txt:
* docs/plugins/gstreamer-plugins-sections.txt:
Fix docs some more.
* libs/gst/base/gstcollectpads.c: (gst_collect_pads_remove_pad),
(gst_collect_pads_event):
* libs/gst/base/gstcollectpads.h:
Documentation updates.
Free queued buffer when removing a pad.
2006-09-01 10:26:52 +00:00
Michael Smith
858de9793c gst/gstutils.c: Ensure that we set a capsfilter to NULL if we failed to link it when doing filtered linking, to avoid...
Original commit message from CVS:
* gst/gstutils.c: (gst_element_link_pads),
(gst_element_link_pads_filtered):
Ensure that we set a capsfilter to NULL if we failed to link it
when doing filtered linking, to avoid criticals.

No need to check for unreffing srcpad, which is explicly NULLed
above (a trivial code cleanup).
2006-08-31 17:13:34 +00:00
Wim Taymans
47e5ba2f15 docs/design/part-gstghostpad.txt: Update ascii art in documentation.
Original commit message from CVS:
* docs/design/part-gstghostpad.txt:
Update ascii art in documentation.
* gst/gstghostpad.c: (gst_proxy_pad_do_internal_link),
(gst_proxy_pad_set_target_unlocked), (gst_proxy_pad_init),
(gst_ghost_pad_parent_set), (gst_ghost_pad_parent_unset),
(gst_ghost_pad_internal_do_activate_push),
(gst_ghost_pad_internal_do_activate_pull),
(gst_ghost_pad_do_activate_push), (gst_ghost_pad_do_activate_pull),
(gst_ghost_pad_do_link), (gst_ghost_pad_do_unlink),
(gst_ghost_pad_dispose), (gst_ghost_pad_new_full),
(gst_ghost_pad_set_target):
Small cleanups and leak fixes.
Remove some checks now that the internal pad is never NULL.
Fix the case where linking pads without a target would create nasty
criticals. Fixes #341029.
Don't assign a GstPadLinkReturn to a gboolean and mess up the return
value of _set_target().
* tests/check/gst/gstghostpad.c: (GST_START_TEST),
(gst_ghost_pad_suite):
Some more tests for creating and linking untargeted ghostpads.
2006-08-31 15:19:44 +00:00
Edward Hervey
ce6e126d47 Refactored *_new() functions.
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* gst/gstghostpad.c: (gst_proxy_pad_do_getcaps),
(gst_proxy_pad_do_setcaps), (gst_proxy_pad_set_target_unlocked),
(gst_proxy_pad_dispose), (gst_ghost_pad_new_full),
(gst_ghost_pad_new_no_target), (gst_ghost_pad_new),
(gst_ghost_pad_new_from_template),
(gst_ghost_pad_new_no_target_from_template):
* gst/gstghostpad.h:
Refactored *_new() functions.
Templates are now used as a g_object_new() parameter.
Use template in _do_getcaps() if we don't have a target.
Small documentation cleanups.
Added two new constructors:
gst_ghost_pad_new_from_template()
gst_ghost_pad_new_no_target_from_template()
* tests/check/gst/gstghostpad.c: (GST_START_TEST),
(gst_ghost_pad_suite):
Added tests for new ghostpad instanciation functions.
API additions: gst_ghost_pad_new_from_template,
gst_ghost_pad_new_no_target_from_template
2006-08-31 10:59:11 +00:00
Stefan Kost
8a74297153 docs/random/ensonic/profiling.txt: Ideas about qos profiling.
Original commit message from CVS:
* docs/random/ensonic/profiling.txt:
Ideas about qos profiling.
2006-08-30 12:28:55 +00:00
Wim Taymans
cf85710b39 gst/gstcaps.c: Code cleanups.
Original commit message from CVS:
* gst/gstcaps.c: (gst_caps_structure_is_subset_field):
Code cleanups.
Fix memleak.
2006-08-29 14:39:42 +00:00
Tim-Philipp Müller
ab00f16f12 gst/gstxml.c: Improve and detypofy docs.
Original commit message from CVS:
* gst/gstxml.c:
Improve and detypofy docs.
* tests/check/Makefile.am:
* tests/check/gst/.cvsignore:
* tests/check/gst/gstxml.c: (GST_START_TEST), (gst_xml_suite):
Add a basic test suite for GstXML.
2006-08-29 10:49:03 +00:00
Wim Taymans
3f7a406618 gst/gstelement.c: Clear the pad caps when the element shut down all of the pads and is not streaming data that could ...
Original commit message from CVS:
* gst/gstelement.c: (activate_pads), (clear_caps),
(iterator_activate_fold_with_resync), (gst_element_pads_activate):
Clear the pad caps when the element shut down all of the pads and
is not streaming data that could modify the caps.
Fixes #352958.
2006-08-29 09:56:57 +00:00
Michael Smith
fa5a96c7e2 plugins/elements/gstidentity.c: Revert previous change; I misunderstood single-segment mode.
Original commit message from CVS:
* plugins/elements/gstidentity.c: (gst_identity_transform_ip):
Revert previous change; I misunderstood single-segment mode.
2006-08-28 18:20:00 +00:00
Michael Smith
094187845a plugins/elements/gstidentity.c: Unset DISCONT on buffers when using single-segment mode.
Original commit message from CVS:
* plugins/elements/gstidentity.c: (gst_identity_transform_ip):
Unset DISCONT on buffers when using single-segment mode.
2006-08-28 18:08:09 +00:00
Wim Taymans
a0dbcd9ee4 gst/gstcaps.*: Fix docs and indentation again.
Original commit message from CVS:
* gst/gstcaps.c: (gst_caps_merge_structure):
* gst/gstcaps.h:
Fix docs and indentation again.
* tests/check/gst/gstquery.c: (GST_START_TEST):
Fix leak in tests and add some more tests.
2006-08-28 16:39:20 +00:00
Edward Hervey
8b6246f275 libs/gst/base/gstbasesink.c: Inform GstSegment of the last stop position in order for the current segment to have a p...
Original commit message from CVS:
* libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times):
Inform GstSegment of the last stop position in order for the current
segment to have a proper duration if it doesn't have a specific stop
position from which a duration could be calculated.
This bug was noticeable when a non-flushing, non-update new segment was
followed by another segment (all buffers from the new segment were being
dropped).
2006-08-28 15:57:39 +00:00
Wim Taymans
4016e6c577 libs/gst/base/gstbasesrc.c: Small comment update.
Original commit message from CVS:
* libs/gst/base/gstbasesrc.c: (gst_base_src_perform_seek):
Small comment update.
* plugins/elements/gstidentity.c: (gst_identity_class_init),
(gst_identity_transform_ip):
Drop-probability is broken, mention this in the code with a
FIXME and also in the property description.
Make silent also be silent about the drop messages.
2006-08-28 15:48:24 +00:00
Tim-Philipp Müller
16b6310ae8 docs/manual/appendix-win32.xml: Remove mention of popt, we don't depend on that any longer (#353136). Add some commen...
Original commit message from CVS:
* docs/manual/appendix-win32.xml:
Remove mention of popt, we don't depend on that any
longer (#353136). Add some comments pointing out that
this section is slightly outdated.
2006-08-28 11:06:05 +00:00
Torsten Schoenfeld
481238cfce Initialize variables when creating a new segment query.
Original commit message from CVS:
Patch by: Torsten Schoenfeld <kaffeetisch at gmx dot de>
* gst/gstquery.c: (gst_query_new_segment):
* tests/check/gst/gstquery.c: (GST_START_TEST):
Initialize variables when creating a new segment query.
Fixes #353121.
2006-08-28 08:44:29 +00:00
Torsten Schoenfeld
7fc02489e3 Check for NULL before _reffing the bus. Fixes #353122.
Original commit message from CVS:
Patch by: Torsten Schoenfeld <kaffeetisch at gmx dot de>
* gst/gstelement.c: (gst_element_get_bus):
* tests/check/gst/gstelement.c: (GST_START_TEST):
Check for NULL before _reffing the bus. Fixes #353122.
2006-08-28 08:35:31 +00:00
Tim-Philipp Müller
4ff1d20852 docs/manual/basics-bus.xml: Docs update: fix wrong callback return value explanation; add some lines about the implic...
Original commit message from CVS:
* docs/manual/basics-bus.xml:
Docs update: fix wrong callback return value explanation; add
some lines about the implicit relationship between main loop
and main context; remove duplicate main loop variable declaration.
2006-08-25 16:46:09 +00:00
Tim-Philipp Müller
e8578fd5cf tests/check/gst/gstcaps.c: Don't leak caps in unit test; add a few more simple checks.
Original commit message from CVS:
* tests/check/gst/gstcaps.c: (GST_START_TEST):
Don't leak caps in unit test; add a few more simple
checks.
2006-08-24 12:30:04 +00:00
Stefan Kost
fc8d184bba implement caps merging (fixes #352580)
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* gst/gstcaps.c: (gst_caps_structure_is_subset_field),
(gst_caps_structure_is_subset), (gst_caps_merge),
(gst_caps_merge_structure):
* gst/gstcaps.h:
* libs/gst/base/gstbasetransform.c:
(gst_base_transform_transform_caps):
* tests/check/gst/gstcaps.c: (GST_START_TEST), (gst_caps_suite):
implement caps merging (fixes #352580)
2006-08-24 10:40:31 +00:00
Stefan Kost
7c84afffac tools/: add debug-log plotting developer tool (#340674)
Original commit message from CVS:
* tools/Makefile.am:
* tools/gst-plot-timeline.py:
add debug-log plotting developer tool (#340674)
2006-08-23 18:53:44 +00:00
Wim Taymans
f0f388b8ba gst/gstpad.c: Improve debugging for task functions.
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_start_task), (gst_pad_pause_task),
(gst_pad_stop_task):
Improve debugging for task functions.
* gst/gsttask.c: (gst_task_func), (gst_task_set_lock),
(gst_task_start), (gst_task_pause), (gst_task_join):
Make sure that the task function started and finished after a
join().
Don't try to push the task function on the threadpool multiple
times.
Improve the g_warning message with some useful suggestions
about how to fix the problem.
2006-08-23 16:51:19 +00:00
Wim Taymans
ca915c1969 gst/gstutils.c: Handle RESYNC correctly in _proxy_getcaps.
Original commit message from CVS:
* gst/gstutils.c: (gst_pad_proxy_getcaps):
Handle RESYNC correctly in _proxy_getcaps.
2006-08-23 10:59:47 +00:00
Tim-Philipp Müller
7424a01f0f gst/gstxml.c: Chain up to parent class in dispose function and also unref the elements in the toplevel_elements GList.
Original commit message from CVS:
* gst/gstxml.c: (gst_xml_dispose), (gst_xml_parse_file),
(gst_xml_parse_memory), (gst_xml_get_element):
Chain up to parent class in dispose function and also
unref the elements in the toplevel_elements GList.
Don't leak XmlDocPtr in _parse_file() and _parse_memory().
Always return a reference in gst_xml_get_element() rather
than only sometimes.
* tools/gst-launch.c: (xmllaunch_parse_cmdline):
Don't leak GstXml object.
2006-08-21 15:19:40 +00:00
Stefan Kost
38d2d33f22 API: Add gst_caps_merge() and use it in basetransform, fixes #345444 in a better way
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* gst/gstcaps.c: (gst_structure_is_equal_foreach),
(gst_caps_merge):
* gst/gstcaps.h:
* libs/gst/base/gstbasetransform.c:
(gst_base_transform_transform_caps):
API: Add gst_caps_merge() and use it in basetransform, fixes #345444
in a better way
2006-08-21 14:54:31 +00:00
Edward Hervey
9c590b226e gst/gstxml.c: Implement GObject::dispose virtual method in GstXML so we can free the top_elements GList.
Original commit message from CVS:
* gst/gstxml.c: (gst_xml_class_init), (gst_xml_dispose):
Implement GObject::dispose virtual method in GstXML so we can free the
top_elements GList.
2006-08-21 14:03:33 +00:00
Wim Taymans
87a78cc03d gst/gstbuffer.c: Copy duration/offset_end/caps when creating a subbuffer of the complete parent.
Original commit message from CVS:
* gst/gstbuffer.c: (gst_buffer_make_metadata_writable),
(gst_buffer_create_sub):
Copy duration/offset_end/caps when creating a subbuffer of the
complete parent.
Make the subbuffer read-only when we make the metadata writable for
now. Fixes #351768.
* tests/check/gst/gstbuffer.c: (GST_START_TEST):
Added check for metadata copy when creating subbuffers.
2006-08-21 09:30:04 +00:00
Edward Hervey
4abd3fb116 libs/gst/base/gstbasetransform.c: Only call downstream buffer_alloc if transform element is passthrough or always_in_...
Original commit message from CVS:
* libs/gst/base/gstbasetransform.c:
(gst_base_transform_buffer_alloc):
Only call downstream buffer_alloc if transform element is passthrough
or always_in_place. Closes #350449.
2006-08-21 09:20:42 +00:00
Stefan Kost
eca76aa115 ChangeLog: ChangeLog surgery to add comments to previous changes
Original commit message from CVS:
* ChangeLog:
ChangeLog surgery to add comments to previous changes
2006-08-20 19:36:21 +00:00
Stefan Kost
c789a10963 Simplify caps to get rid of duplicates, fixes #345444
Original commit message from CVS:
* gst/gst.c:
* gst/gstpad.c: (gst_pad_set_active):
* libs/gst/base/gstbasetransform.c:
(gst_base_transform_transform_caps):
Simplify caps to get rid of duplicates, fixes #345444
2006-08-20 19:30:09 +00:00
Stefan Kost
6ab8345121 gst/gstvalue.*: Use these optimizations only internaly.
Original commit message from CVS:
* gst/gstvalue.c:
* gst/gstvalue.h:
Use these optimizations only internaly.
2006-08-20 15:55:12 +00:00
Stefan Kost
fe851cf2e4 gst/gstvalue.*: Saves the expensive lookup of the compare function in many cases (#345444)
Original commit message from CVS:
* gst/gstvalue.c: (gst_value_compare_list),
(gst_value_compare_fraction_range),
(gst_value_intersect_fraction_fraction_range),
(gst_value_intersect_fraction_range_fraction_range),
(gst_value_subtract_fraction_fraction_range),
(gst_value_subtract_fraction_range_fraction_range),
(gst_value_get_compare_func), (gst_value_compare),
(gst_value_compare_with_func):
* gst/gstvalue.h:
Saves the expensive lookup of the compare function in many cases
(#345444)
2006-08-20 14:30:20 +00:00
Edward Hervey
b19d19a8b6 tests/check/gst/gstinfo.c: Disable test that require gstdebug if it wasn't built in core.
Original commit message from CVS:
* tests/check/gst/gstinfo.c: (gst_info_suite):
Disable test that require gstdebug if it wasn't built in core.
2006-08-18 13:41:02 +00:00
Stefan Kost
2d26569296 docs/random/ensonic/logging.txt: update ideas
Original commit message from CVS:
* docs/random/ensonic/logging.txt:
update ideas
* gst/gstinfo.c: (gst_debug_log_default):
reorder fields, save some columns, add optinal color codes for log-
levels
2006-08-18 10:52:33 +00:00
Stefan Kost
d019038427 docs/random/ensonic/logging.txt: add ideas about making the logs abit more useful
Original commit message from CVS:
* docs/random/ensonic/logging.txt:
add ideas about making the logs abit more useful
2006-08-18 08:07:12 +00:00
Tim-Philipp Müller
477870c544 docs/pwg/: Update for 0.10 API (#340627). Add myself to authors list.
Original commit message from CVS:
* docs/pwg/advanced-events.xml:
* docs/pwg/titlepage.xml:
Update for 0.10 API (#340627). Add myself
to authors list.
2006-08-17 18:11:11 +00:00
Tim-Philipp Müller
cf8df184c7 Make gstcheck stuff show up in docs (still needs to be documented properly though).
Original commit message from CVS:
* docs/libs/gstreamer-libs-docs.sgml:
* docs/libs/gstreamer-libs-sections.txt:
* libs/gst/check/gstbufferstraw.c:
Make gstcheck stuff show up in docs (still needs to
be documented properly though).
2006-08-17 10:46:19 +00:00
Jan Schmidt
5736de1957 Add internal helpers for pre-registering quarks from static strings and using the quark values directly instead of lo...
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* gst/Makefile.am:
* gst/gst.c: (init_post):
* gst/gst_private.h:
* gst/gstquark.c: (_priv_gst_quarks_initialize):
* gst/gstquark.h:
* gst/gstquery.c: (gst_query_new_position),
(gst_query_set_position), (gst_query_parse_position),
(gst_query_new_duration), (gst_query_set_duration),
(gst_query_parse_duration), (gst_query_new_convert),
(gst_query_set_convert), (gst_query_parse_convert),
(gst_query_new_segment), (gst_query_set_segment),
(gst_query_parse_segment), (gst_query_new_seeking),
(gst_query_set_seeking), (gst_query_parse_seeking):
Add internal helpers for pre-registering quarks from static strings
and using the quark values directly instead of looking them up when
creating and parsing queries. Can be used for event construction too.
Closes #350432.
2006-08-16 11:47:54 +00:00
Wim Taymans
6072def8ed gst/gstbin.c: Fix bogus docs.
Original commit message from CVS:
* gst/gstbin.c:
Fix bogus docs.
2006-08-16 08:54:56 +00:00
Tim-Philipp Müller
a8714f5195 gst/gstutils.c: Fix memleak (#351502).
Original commit message from CVS:
* gst/gstutils.c: (gst_util_set_value_from_string):
Fix memleak (#351502).
* tests/check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
Add unit test for most of gst_util_set_value_from_string()
(not that one would want to encourage use of this function).
2006-08-15 18:45:39 +00:00
Tim-Philipp Müller
8e2f05d8ce libs/gst/check/gstcheck.h: Use const gchar * variables in fail_unless_equals_string macro to avoid compiler warnings ...
Original commit message from CVS:
* libs/gst/check/gstcheck.h:
Use const gchar * variables in fail_unless_equals_string
macro to avoid compiler warnings (and don't use tabs for
indenting).
2006-08-15 18:29:22 +00:00
Tim-Philipp Müller
f7c34e5c14 tools/gst-launch.c: More space on the left for the tag names, to cater for the 'extended comment' tag (not touching t...
Original commit message from CVS:
* tools/gst-launch.c: (print_tag):
More space on the left for the tag names, to cater
for the 'extended comment' tag (not touching the
string for the first line since it's translated).
2006-08-15 10:08:34 +00:00
Tim-Philipp Müller
c4ff920a76 ChangeLog surgery: don't forget to mention the other change in the ChangeLog
Original commit message from CVS:
ChangeLog surgery: don't forget to mention the other change in the ChangeLog
2006-08-15 09:44:58 +00:00
Tim-Philipp Müller
a85462ec7f libs/gst/check/gstcheck.h: Fix ASSERT_CRITICAL and ASSERT_WARNING macros to actually print something when they fail.
Original commit message from CVS:
* libs/gst/check/gstcheck.h:
Fix ASSERT_CRITICAL and ASSERT_WARNING macros to actually
print something when they fail.
2006-08-15 09:33:24 +00:00
Tim-Philipp Müller
5d2860b050 API: add GST_TAG_EXTENDED_COMMENT (#350935).
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* gst/gsttaglist.c: (_gst_tag_initialize):
* gst/gsttaglist.h:
API: add GST_TAG_EXTENDED_COMMENT (#350935).
2006-08-14 19:04:56 +00:00
Tim-Philipp Müller
87e578704a gst/gstinfo.c: Make GST_PTR_FORMAT print messages as well.
Original commit message from CVS:
* gst/gstinfo.c: (gst_debug_print_object):
Make GST_PTR_FORMAT print messages as well.
* tests/check/gst/gstinfo.c: (printf_extension_log_func),
(GST_START_TEST), (gst_info_suite):
More tests.
2006-08-14 17:29:31 +00:00
Edward Hervey
b2bfb935b2 gst/gstelementfactory.c: If the GstElementClass doesn't have a GstElementDetails with all fields then error out nicel...
Original commit message from CVS:
* gst/gstelementfactory.c: (gst_element_register):
If the GstElementClass doesn't have a GstElementDetails with all fields
filled up correctly (longname, description AND author), then error out
nicely instead of crashing.
2006-08-14 15:33:17 +00:00
Tim-Philipp Müller
5f0bc06ae1 gst/gststructure.c: Fix typo in docs and re-wrap docs blurb to not exceed 80 chars/line.
Original commit message from CVS:
* gst/gststructure.c:
Fix typo in docs and re-wrap docs blurb to not exceed 80 chars/line.
* gst/gstvalue.h:
Expand on the difference between arrays and lists as we use them.
2006-08-14 12:35:06 +00:00
Wim Taymans
f85c2fd84d libs/gst/base/gstbasesrc.c: If the parent state change function failed, don't assume we can safely stop the source, t...
Original commit message from CVS:
* libs/gst/base/gstbasesrc.c: (gst_base_src_change_state):
If the parent state change function failed, don't assume we can safely
stop the source, this will be done when the pads are deactivated.
2006-08-14 07:44:14 +00:00
Wim Taymans
3254e4d752 gst/: Small doc updates.
Original commit message from CVS:
* gst/gstbuffer.c:
* gst/gsttask.c: (gst_task_join):
Small doc updates.

* gst/gstpad.c: (gst_pad_activate_pull), (gst_pad_activate_push),
(gst_pad_stop_task):
When pad (de)activation failed for some reason, restore the old
activation mode and set the pad to flushing instead of assuming the
pad is deactivated.
If the _task_join() failed, reinstall the task on the pad so that it can
be stopped later and return an error.
2006-08-14 07:35:09 +00:00