Commit graph

3437 commits

Author SHA1 Message Date
Wim Taymans
55bf3d095b Documented the clocks.
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* gst/gstclock.c:
* gst/gstclock.h:
Documented the clocks.
2005-10-28 17:35:05 +00:00
Michael Smith
55c8e8b41e Work around gtkdoc deficiencies, document a macro differently.
Original commit message from CVS:
Work around gtkdoc deficiencies, document a macro differently.
2005-10-28 17:20:45 +00:00
Michael Smith
f6021bd73c Improve GstBuffer documentation. It's now 100% Spiffier.
Original commit message from CVS:
Improve GstBuffer documentation. It's now 100% Spiffier.
2005-10-28 17:01:14 +00:00
Stefan Kost
0572e3c3ae docs/gst/gstreamer-sections.txt: move some macros to private sections
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
move some macros to private sections
* gst/gstminiobject.c:
* gst/gstminiobject.h:
add descriptions provided by ds and some more
* gst/gstpad.h:
mark macro as to be removed
2005-10-28 16:46:58 +00:00
Wim Taymans
b3354de0b7 docs/design/part-TODO.txt: Add an item to TODO.
Original commit message from CVS:
* docs/design/part-TODO.txt:
Add an item to TODO.

* gst/gstiterator.c: (gst_iterator_fold),
(gst_iterator_find_custom):
* gst/gstiterator.h:
Add iterator docs.
2005-10-28 16:21:29 +00:00
Wim Taymans
8ce45b472d gst/base/gstbasetransform.c: Don't leak class.
Original commit message from CVS:
* gst/base/gstbasetransform.c: (gst_base_transform_class_init),
(gst_base_transform_init):
Don't leak class.

* gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_loop):
An EOS event marks the queue as completely filled.
2005-10-28 10:45:33 +00:00
Wim Taymans
f2e8f7198f gst/base/gstbasesink.c: Some more debugging.
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_base_sink_handle_object),
(gst_base_sink_do_sync), (gst_base_sink_get_position):
Some more debugging.

* gst/base/gstbasetransform.c: (gst_base_transform_finalize),
(gst_base_transform_init), (gst_base_transform_buffer_alloc),
(gst_base_transform_event), (gst_base_transform_getrange),
(gst_base_transform_chain):
* gst/base/gstbasetransform.h:
Fix debugging,
Protect transform and concurrent buffer alloc with a new lock.
Try not to break ABI/API.
2005-10-27 20:59:00 +00:00
Wim Taymans
2e7411e8b8 gst/base/gstbasesrc.c: Move some stuff around and cleanup things.
Original commit message from CVS:
* gst/base/gstbasesrc.c: (gst_base_src_class_init),
(gst_base_src_init), (gst_base_src_query),
(gst_base_src_default_newsegment),
(gst_base_src_configure_segment), (gst_base_src_do_seek),
(gst_base_src_send_event), (gst_base_src_event_handler),
(gst_base_src_pad_get_range), (gst_base_src_loop),
(gst_base_src_unlock), (gst_base_src_default_negotiate),
(gst_base_src_start), (gst_base_src_deactivate),
(gst_base_src_activate_push), (gst_base_src_change_state):
Move some stuff around and cleanup things.
2005-10-27 19:37:25 +00:00
Tim-Philipp Müller
27918022a2 gst/base/gstbasesrc.c: Add missing break statements.
Original commit message from CVS:
* gst/base/gstbasesrc.c: (gst_base_src_query):
Add missing break statements.
2005-10-27 15:48:56 +00:00
Wim Taymans
67b27a2c01 check/gst/gstbin.c: An extra refcount is taken in basesrc.
Original commit message from CVS:
* check/gst/gstbin.c: (GST_START_TEST):
An extra refcount is taken in basesrc.

* gst/base/gstbasesrc.c: (gst_base_src_init), (gst_base_src_query),
(gst_base_src_get_range), (gst_base_src_pad_get_range),
(gst_base_src_loop):
Small cleanups, check for flushing after being unlocked from the
LIVE_LOCK. take refcounts correctly (not yet everywhere).
Don't send out EOS when going to READY.
2005-10-27 13:47:33 +00:00
Wim Taymans
7f22710f65 gst/base/gstbasesink.c: Some more debug.
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_base_sink_handle_object),
(gst_base_sink_get_position):
Some more debug.

* gst/gstbin.c: (message_check), (bin_replace_message),
(bin_remove_messages), (is_eos), (gst_bin_add_func),
(update_degree), (gst_bin_sort_iterator_next), (bin_bus_handler),
(bin_query_duration_init), (bin_query_duration_fold),
(bin_query_duration_done), (bin_query_generic_fold),
(gst_bin_query):
* tools/gst-launch.c: (main):
Remove old option.
2005-10-27 08:55:44 +00:00
Stefan Kost
349aa7e2e6 fixing examples fixing docs typos changing log priority in error situations
Original commit message from CVS:
* examples/controller/audio-example.c: (main):
* examples/queue/queue.c: (event_loop):
* gst/base/gstbasetransform.h:
* gst/gstelement.c: (gst_element_send_event):
* gst/gstevent.h:
* gst/gstpad.c: (gst_pad_send_event):
fixing examples
fixing docs typos
changing log priority in error situations
2005-10-26 18:57:43 +00:00
Wim Taymans
ef17d9b6bb gst/gstbin.c: Some doc and debug updates.
Original commit message from CVS:
* gst/gstbin.c: (message_check), (bin_replace_message),
(bin_remove_messages), (is_eos), (gst_bin_add_func),
(update_degree), (gst_bin_sort_iterator_next), (bin_bus_handler),
(bin_query_duration_init), (bin_query_duration_fold),
(bin_query_duration_done), (bin_query_generic_fold),
(gst_bin_query):
Some doc and debug updates.
Cache previously requested query DURATION for speed. invalidate
cached duration if element posts a DURATION message.
2005-10-25 17:41:24 +00:00
Wim Taymans
2803a5587e docs/design/part-TODO.txt: Update TODO.
Original commit message from CVS:
* docs/design/part-TODO.txt:
Update TODO.

* gst/gstbin.c: (message_check), (bin_replace_message),
(bin_remove_messages), (is_eos), (gst_bin_add_func),
(update_degree), (gst_bin_sort_iterator_next), (bin_bus_handler),
(bin_query_duration_init), (bin_query_duration_fold),
(bin_query_duration_done), (bin_query_generic_fold),
(gst_bin_query):
Handle SEGMENT_START/DONE messages correctly.
More evolved query algorithm that handles duration queries
correctly.

* gst/gstelement.c: (gst_element_send_event), (gst_element_query),
(gst_element_get_state_func), (gst_element_abort_state),
(gst_element_commit_state), (gst_element_lost_state):
Some more debugging.

* gst/gstmessage.h:
Added doc.
2005-10-25 15:39:36 +00:00
Wim Taymans
b204604572 gst/base/gstbasesink.c: Don't use invalid stream_time.
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_base_sink_get_position):
Don't use invalid stream_time.

* gst/gstevent.c: (gst_event_new_newsegment):
stream_time in newsegment cannot be undefined.
2005-10-25 10:15:45 +00:00
Wim Taymans
bb8289979b gst/gstbus.c: Doc fix.
Original commit message from CVS:
* gst/gstbus.c:
Doc fix.

* gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
(gst_queue_loop):
Fix potential deadlock when QUEUE_LOCK is taken before STREAM_LOCK.
2005-10-24 15:41:48 +00:00
Michael Smith
3d0989e9ef Fix some minor documentation typos
Original commit message from CVS:
Fix some minor documentation typos
2005-10-24 09:13:27 +00:00
Tim-Philipp Müller
7d5fda88d4 gst/elements/gstfilesink.c: Use fseeko() and ftello() if available. When falling back on lseek() to get the current o...
Original commit message from CVS:
* gst/elements/gstfilesink.c: (gst_file_sink_do_seek),
(gst_file_sink_get_current_offset):
Use fseeko() and ftello() if available. When falling back on
lseek() to get the current offset, fflush() first to make sure
everything is up-to-date and we get the right offset.
2005-10-23 10:29:51 +00:00
Thomas Vander Stichele
013e3acc3d remove prematurely added error category and clean up the instances
Original commit message from CVS:
remove prematurely added error category and clean up the instances
2005-10-23 09:08:44 +00:00
Wim Taymans
62cfdde715 gst/base/gstbasesink.c: Simply set the right flag when going to playing, that's all we need to do instead of calling ...
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_base_sink_commit_state),
(gst_base_sink_get_position), (gst_base_sink_query),
(gst_base_sink_change_state):
Simply set the right flag when going to playing, that's all
we need to do instead of calling a function inside the object
lock (that could take the lock as well and deadlock)
2005-10-21 17:53:31 +00:00
Wim Taymans
c1f08609d1 gst/base/gstbasesrc.c: Don't warn, the peer element knows what to do best when the seek failed, it might try somethin...
Original commit message from CVS:
* gst/base/gstbasesrc.c: (gst_base_src_do_seek),
(gst_base_src_loop):
Don't warn, the peer element knows what to do best when
the seek failed, it might try something else.
2005-10-21 16:18:54 +00:00
Wim Taymans
5b63b6489e gst/base/gstbasesrc.c: Fix seeking.
Original commit message from CVS:
* gst/base/gstbasesrc.c: (gst_base_src_init),
(gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
Fix seeking.
2005-10-21 16:14:34 +00:00
Wim Taymans
5cce351ef3 docs/design/part-segments.txt: More docs.
Original commit message from CVS:
* docs/design/part-segments.txt:
More docs.

* gst/elements/gstcapsfilter.c: (gst_capsfilter_prepare_buf):
Correctly set caps, even on the subbufer.
2005-10-21 15:13:08 +00:00
Wim Taymans
e1a166a584 And 2% more doc coverage.
Original commit message from CVS:
* docs/gst/gstreamer-docs.sgml:
* docs/gst/gstreamer-sections.txt:
* gst/gstelement.h:
* gst/gstevent.c:
* gst/gstevent.h:
* gst/gstmessage.h:
* gst/gstpad.h:
* gst/gstparse.h:
* gst/gsttask.c: (gst_task_finalize), (gst_task_func):
* gst/gsttask.h:
* gst/gstutils.c:
* gst/gstutils.h:
And 2% more doc coverage.
2005-10-21 11:36:32 +00:00
Andy Wingo
0e3178c111 gst/base/gstbasesrc.c (gst_base_src_query): Clean up percent position reporting.
Original commit message from CVS:
2005-10-21  Andy Wingo  <wingo@pobox.com>

* gst/base/gstbasesrc.c (gst_base_src_query): Clean up percent
position reporting.
2005-10-21 09:24:28 +00:00
Wim Taymans
c3fecfa6f8 gst/: More docs.
Original commit message from CVS:
* gst/gsterror.c: (gst_error_get_message):
* gst/gstparse.h:
* gst/gstquery.h:
* gst/gststructure.c:
* gst/gsttrace.c:
* gst/gstutils.c:
More docs.
2005-10-20 21:08:47 +00:00
Wim Taymans
df2df58966 gst/: Another 1% more coverage.
Original commit message from CVS:
* gst/gstbuffer.h:
* gst/gstpad.c:
* gst/gstparse.c:
Another 1% more coverage.
2005-10-20 20:46:17 +00:00
Wim Taymans
b8d492863b Yay! 1% more docs coverage.
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* gst/gstelement.c: (gst_element_get_state_func),
(gst_element_abort_state), (gst_element_commit_state),
(gst_element_lost_state):
* gst/gstevent.h:
* gst/gstquery.c: (gst_query_set_position),
(gst_query_parse_position), (gst_query_set_duration),
(gst_query_parse_duration), (gst_query_new_convert):
* gst/gstutils.c:
Yay! 1% more docs coverage.
2005-10-20 20:25:55 +00:00
Wim Taymans
8c96da05f2 gst/: Docs and consistency fixes.
Original commit message from CVS:
* gst/gstpad.h:
* gst/gstquery.c: (gst_query_set_position),
(gst_query_parse_position), (gst_query_set_duration),
(gst_query_parse_duration), (gst_query_new_convert):
* gst/gstquery.h:
* gst/gstutils.c: (gst_element_query_convert):
* gst/gstutils.h:
Docs and consistency fixes.
2005-10-20 19:47:07 +00:00
Wim Taymans
9e28a129a5 gst/gsttask.*: More docs.
Original commit message from CVS:
* gst/gsttask.c:
* gst/gsttask.h:
More docs.
2005-10-20 19:30:57 +00:00
Wim Taymans
40f11256e8 gst/gstbin.c: Reworked the message handling a bit, cache the messages instead of only the senders. alows us to do mor...
Original commit message from CVS:
* gst/gstbin.c: (message_check), (bin_replace_message),
(bin_remove_messages), (is_eos), (gst_bin_add_func),
(update_degree), (gst_bin_sort_iterator_next),
(gst_bin_change_state_func), (gst_bin_dispose), (bin_bus_handler):
Reworked the message handling a bit, cache the messages instead of
only the senders. alows us to do more in the future.
2005-10-20 17:22:40 +00:00
Wim Taymans
17b62f0353 docs/design/part-TODO.txt: Update TODO
Original commit message from CVS:
* docs/design/part-TODO.txt:
Update TODO

* gst/base/gstbasesink.c: (gst_base_sink_get_position),
(gst_base_sink_query):
Don't use clock time to report position when in EOS.
2005-10-20 17:18:12 +00:00
Wim Taymans
4dbc7a5bf8 gst/base/gstbasesink.c: Speed up current position calculation.
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_base_sink_get_position),
(gst_base_sink_query):
Speed up current position calculation.

* gst/base/gstbasesrc.c: (gst_base_src_query),
(gst_base_src_default_newsegment):
Correctly set stream position in newsegment.

* gst/gstbin.c: (gst_bin_add_func), (add_to_queue),
(update_degree), (gst_bin_sort_iterator_next),
(gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free):
* gst/gstmessage.c: (gst_message_new_custom):
Clean up debugging info

* gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
(gst_queue_loop), (gst_queue_handle_src_query):
Pause task faster.
2005-10-20 11:48:53 +00:00
Wim Taymans
ce3b4e17f6 gst/base/gstbasesink.c: Fix query handling again.
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_base_sink_commit_state),
(gst_base_sink_handle_object), (gst_base_sink_query), (do_playing):
Fix query handling again.
2005-10-19 17:06:56 +00:00
Wim Taymans
7612a38449 gst/: API change fix.
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_base_sink_commit_state),
(gst_base_sink_handle_object), (gst_base_sink_query), (do_playing):
* gst/base/gstbasesrc.c: (gst_base_src_query):
* gst/elements/gstfilesink.c: (gst_file_sink_query):
* gst/elements/gsttypefindelement.c:
(gst_type_find_handle_src_query), (find_element_get_length),
(gst_type_find_element_activate):
API change fix.

* 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_set_segment),
(gst_query_parse_segment):
* gst/gstquery.h:
Bundling query position/duration is not a good idea since duration
does not change much and we don't want to recalculate it for every
position query, so they are separated again..
Base value in segment query is not needed.

* gst/gstqueue.c: (gst_queue_handle_src_query):
* gst/gstutils.c: (gst_element_query_position),
(gst_element_query_duration), (gst_pad_query_position),
(gst_pad_query_duration):
* gst/gstutils.h:
Updates for query API change.
Added some docs here and there.
2005-10-19 15:50:10 +00:00
Thomas Vander Stichele
8f79484b52 log an if branch
Original commit message from CVS:
log an if branch
2005-10-19 11:42:39 +00:00
Wim Taymans
1cef8c5b5a check/: Small state change torture test.
Original commit message from CVS:
* check/Makefile.am:
* check/pipelines/stress.c: (GST_START_TEST),
(simple_launch_lines_suite), (main):
Small state change torture test.

* docs/design/part-states.txt:
* gst/base/gstbasesink.c: (gst_base_sink_commit_state),
(gst_base_sink_handle_object), (gst_base_sink_event), (do_playing),
(gst_base_sink_change_state):
Never take state lock from streaming thread, clean up ugly
hacks. Unfortunatly core does not yet support nice ways to
async commit state.

* gst/gstbin.c: (gst_bin_remove_func), (gst_bin_recalc_state),
(bin_bus_handler):
Start state recalc if a STATE_DIRTY message is posted, but only
on the toplevel bin.

* gst/gstelement.c: (gst_element_sync_state_with_parent),
(gst_element_get_state_func), (gst_element_abort_state),
(gst_element_commit_state), (gst_element_lost_state),
(gst_element_set_state_func), (gst_element_change_state):
* gst/gstelement.h:
State variables are now protected with the LOCK, the state
lock is only used to serialize _set_state().
2005-10-18 17:06:29 +00:00
Wim Taymans
0176d5a0cf Seriously, this is better than a previous commit as we only need to notify the fact that an element changed state in ...
Original commit message from CVS:
* check/gst/gstbin.c: (GST_START_TEST):
* check/gst/gstmessage.c: (GST_START_TEST):
* check/gst/gstpipeline.c: (GST_START_TEST), (message_received):
* gst/gstbin.c: (gst_bin_class_init), (gst_bin_recalc_func),
(bin_bus_handler):
* gst/gstelement.c: (gst_element_abort_state),
(gst_element_commit_state), (gst_element_lost_state):
* gst/gstmessage.c: (gst_message_new_state_changed),
(gst_message_new_state_dirty), (gst_message_new_segment_start),
(gst_message_new_segment_done), (gst_message_new_duration),
(gst_message_parse_state_changed),
(gst_message_parse_segment_start),
(gst_message_parse_segment_done), (gst_message_parse_duration):
* gst/gstmessage.h:
* tools/gst-launch.c: (event_loop):
Seriously, this is better than a previous commit as we only need
to notify the fact that an element changed state in a streaming
thread, marking the state of the parents dirty, hence the
STATE_DIRTY message instead of abusing a boolean in a STATE_CHANGE
message.
2005-10-18 16:25:38 +00:00
Wim Taymans
2c61a2f4d5 gst/: Cleanups, prepare for state change fixes.
Original commit message from CVS:
* gst/gstbin.c: (gst_bin_class_init), (gst_bin_get_state_func),
(gst_bin_recalc_func):
* gst/gstelement.c: (gst_element_set_clock),
(gst_element_abort_state), (gst_element_lost_state):
Cleanups, prepare for state change fixes.
2005-10-18 15:15:11 +00:00
Wim Taymans
74c74e189e gst/: Pending ABI changes.
Original commit message from CVS:
* gst/gstbin.h:
* gst/gstelement.c: (gst_element_class_init),
(gst_element_set_state), (gst_element_set_state_func):
* gst/gstelement.h:
Pending ABI changes.
GThreadPool in GstBinClass to monitor async state changes.
state_cookie in GstElement to detect concurrent gst/set state.
set_state is now virtual too in case a very complicated element
has to be constructed.
2005-10-18 14:29:21 +00:00
Wim Taymans
20aff65b34 Make messages future proof. state-change gets a flag if it was a message comming from the streaming thread.
Original commit message from CVS:
* check/gst/gstbin.c: (GST_START_TEST):
* check/gst/gstmessage.c: (GST_START_TEST):
* check/gst/gstpipeline.c: (GST_START_TEST), (message_received):
* gst/gstbin.c: (bin_bus_handler):
* gst/gstelement.c: (gst_element_commit_state),
(gst_element_lost_state):
* gst/gstmessage.c: (gst_message_new_state_changed),
(gst_message_new_segment_start), (gst_message_new_segment_done),
(gst_message_new_duration), (gst_message_parse_state_changed),
(gst_message_parse_segment_start),
(gst_message_parse_segment_done), (gst_message_parse_duration):
* gst/gstmessage.h:
* tools/gst-launch.c: (event_loop):
Make messages future proof.
state-change gets a flag if it was a message comming from the
streaming thread.
segment-start/stop can also be specified in other formats.
A message to notify an app that a pipeline changed playback
duration.
Also fix a GstMessage leak in -launch
2005-10-18 13:19:16 +00:00
Andy Wingo
265df9f026 gst/gstelement.c (gst_element_dispose): More helpful message.
Original commit message from CVS:
2005-10-18  Andy Wingo  <wingo@pobox.com>

* gst/gstelement.c (gst_element_dispose): More helpful message.
2005-10-18 10:32:48 +00:00
Thomas Vander Stichele
4606a2002b gst/gstregistry.c: unref a plug-in we get that was already initialized
Original commit message from CVS:

* gst/gstregistry.c: (gst_registry_scan_path_level):
unref a plug-in we get that was already initialized
2005-10-18 07:13:25 +00:00
Stefan Kost
e000de4064 add new api entries hide internal macro
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* docs/libs/gstreamer-libs-sections.txt:
* gst/gstelement.h:
add new api entries
hide internal macro
2005-10-17 20:16:55 +00:00
Andy Wingo
839de99850 gst/base/gstcollectpads.c (gst_collectpads_chain): Slight cleanup.
Original commit message from CVS:
2005-10-17  Andy Wingo  <wingo@pobox.com>

* gst/base/gstcollectpads.c (gst_collectpads_chain): Slight
cleanup.

* gst/Makefile.am (gstenumtypes.c): Threadsafe now.

* gst/gstevent.c (gst_event_new, gst_event_finalize): LOG.

* gst/gstelement.c (gst_element_get_state_func): s/INFO/DEBUG/.
(gst_element_get_state_func): Better debug message.
(gst_element_commit_state): s/INFO/DEBUG/.
(gst_element_lost_state, gst_element_change_state):

* gst/gstmessage.c (gst_message_init): s/INFO/LOG/.
(gst_message_new_custom): s/INFO/LOG/.
2005-10-17 18:09:32 +00:00
Michael Smith
2992b384a6 Check validity of end time based on end time variable, not start time.
Original commit message from CVS:
Check validity of end time based on end time variable, not start time.
2005-10-17 17:46:37 +00:00
Thomas Vander Stichele
900aea46fa gst/: out. get out. you're fired. to the Attic !
Original commit message from CVS:

* gst/gstmemchunk.c:
* gst/gstmemchunk.h:
* gst/gsttrashstack.c:
* gst/gsttrashstack.h:
out.  get out.  you're fired.  to the Attic !
2005-10-17 14:42:22 +00:00
Thomas Vander Stichele
d81f2a6d5b gst/gstcaps.c: fix signedness issues in a (hopefully) correct way
Original commit message from CVS:

* gst/gstcaps.c: (gst_caps_intersect):
fix signedness issues in a (hopefully) correct way
* gst/gstelement.c: (gst_element_pads_activate):
some debugging
* gst/gstobject.c: (gst_object_set_parent):
some debugging
2005-10-17 14:37:06 +00:00
Michael Smith
e145f9f8a0 Fix a doc typo.
Original commit message from CVS:
Fix a doc typo.
2005-10-17 10:37:13 +00:00
Julien Moutte
3ecb7cbe6d gst/gstvalue.h: Fix prototypes.
Original commit message from CVS:
2005-10-17  Julien MOUTTE  <julien@moutte.net>

* gst/gstvalue.h: Fix prototypes.
2005-10-17 09:28:35 +00:00
Thomas Vander Stichele
8543a54a49 add gst_version_string ()
Original commit message from CVS:
add gst_version_string ()
2005-10-16 14:32:57 +00:00
Thomas Vander Stichele
8ceb90def1 configure.ac: clean up further
Original commit message from CVS:

* configure.ac:
clean up further
* gst/gst.c: (init_post):
* win32/common/config.h.in:
it's PLUGINDIR now
* gst/gstcaps.c: (gst_caps_intersect):
use gint64, the range could be bigger than a guint
2005-10-16 12:28:20 +00:00
Thomas Vander Stichele
9eea358a9e GStreamer consultants will make a lot of money in 2038
Original commit message from CVS:
GStreamer consultants will make a lot of money in 2038
2005-10-16 11:48:09 +00:00
Thomas Vander Stichele
d9ffe247f6 gst/gstcaps.c: Fix guint j diving under 0
Original commit message from CVS:

* gst/gstcaps.c: (gst_caps_intersect):
Fix guint j diving under 0
2005-10-16 10:58:41 +00:00
Thomas Vander Stichele
593932d3ed check for process.h, declares getpid() on Windows
Original commit message from CVS:

* configure.ac:
* win32/common/config.h:
* win32/common/config.h.in:
check for process.h, declares getpid() on Windows
* gst/gstinfo.c:
include process.h if we have it
* gst/gstmemchunk.c: (populate), (gst_mem_chunk_new):
* gst/gstmemchunk.h:
fix signedness issues
* win32/common/libgstreamer.def:
fix get_type's
2005-10-16 10:38:02 +00:00
Thomas Vander Stichele
7490994ce6 fix signedness
Original commit message from CVS:
fix signedness
2005-10-16 10:22:29 +00:00
Julien Moutte
c1e4762a6d gst/gstcaps.c: Fix a bad bug with a simple fix. Because of unsigned ints, caps intersection was going nuts and trying...
Original commit message from CVS:
2005-10-16  Julien MOUTTE  <julien@moutte.net>

* gst/gstcaps.c: (gst_caps_intersect): Fix a bad bug with a
simple
fix. Because of unsigned ints, caps intersection was going nuts
and
trying to access structures with G_MAXUINT index. That fixes
videotestsrc ! ffmpegcolorspace ! fakesink
* gst/gstpad.c: (gst_pad_link_check_compatible_unlocked): logs
consistency.
2005-10-16 09:56:33 +00:00
Thomas Vander Stichele
0ecb219505 configure.ac: use the gettext macro
Original commit message from CVS:
2005-10-16  Thomas Vander Stichele  <thomas at apestaart dot org>

* configure.ac:
use the gettext macro
* gst/elements/gstelements.c:
* gst/gst.c:
* gst/indexers/gstindexers.c:
update for GST_PACKAGE_NAME, GST_PACKAGE_ORIGIN
* win32/common/config.h:
updated config.h
* win32/common/config.h.in:
add the template to generate config.h
* win32/common/gstenumtypes.c:
* win32/common/gstversion.h:
updated copies
2005-10-16 09:20:52 +00:00
Thomas Vander Stichele
b2ec3849fd gst/: add the nano
Original commit message from CVS:
* gst/gst.c: (gst_version):
* gst/gstversion.h.in:
add the nano
2005-10-16 09:10:17 +00:00
Tim-Philipp Müller
34c8e29cec gst/gstevent.h: Oops, add missing closing bracket.
Original commit message from CVS:
* gst/gstevent.h:
Oops, add missing closing bracket.
2005-10-15 22:24:20 +00:00
Tim-Philipp Müller
45a07481db Add GST_EVENT_TYPE_NAME() macro.
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* gst/gstevent.h:
Add GST_EVENT_TYPE_NAME() macro.
2005-10-15 20:33:09 +00:00
Thomas Vander Stichele
92f4901b64 gst/: privatize more symbols
Original commit message from CVS:

* gst/gstinfo.c:
* gst/gstpluginfeature.c:
* gst/gsttask.c:
privatize more symbols
2005-10-15 19:57:03 +00:00
Thomas Vander Stichele
4df2acee2e give each value a _get_type, removes the DATA exports
Original commit message from CVS:

* docs/gst/gstreamer-sections.txt:
* gst/gstvalue.c: (gst_date_get_type), (_gst_value_initialize):
* gst/gstvalue.h:
give each value a _get_type, removes the DATA exports
2005-10-15 17:59:07 +00:00
Thomas Vander Stichele
cf83938008 fix link flags
Original commit message from CVS:
fix link flags
2005-10-15 17:22:34 +00:00
Thomas Vander Stichele
2ca1c89aac gst/gst.*: remove _gst_registry_auto_load, not used anymore
Original commit message from CVS:

* gst/gst.c:
* gst/gst.h:
remove _gst_registry_auto_load, not used anymore
* gst/gstbin.c: (gst_bin_get_type):
* gst/gstbin.h:
* gst/gstelement.c: (gst_element_get_type):
* gst/gstelement.h:
* gst/gstobject.c: (gst_object_get_type):
* gst/gstobject.h:
* gst/gstpad.c: (gst_pad_get_type):
* gst/gstpad.h:
make _get_type functions similar, fixes data export from library
2005-10-15 16:33:09 +00:00
Thomas Vander Stichele
3537119465 I'm too lazy to comment this
Original commit message from CVS:
gtk-doc insists on inserting <PARA> at every empty line, sigh
2005-10-15 16:16:04 +00:00
Thomas Vander Stichele
bef56ce78d various style fixes
Original commit message from CVS:
various style fixes
2005-10-15 16:01:57 +00:00
Thomas Vander Stichele
14bbecccf3 configure.ac: correctly make conditionals
Original commit message from CVS:

* configure.ac:
correctly make conditionals
* gst/elements/Makefile.am:
* gst/elements/gstelements.c:
fix typo causing fdsrc not to build
2005-10-15 15:52:08 +00:00
Thomas Vander Stichele
2dd1598c56 whitespace fixes
Original commit message from CVS:
whitespace fixes
2005-10-15 15:30:24 +00:00
Thomas Vander Stichele
e3e695a537 configure.ac: check for some headers
Original commit message from CVS:

* configure.ac:
check for some headers
* gst/elements/Makefile.am:
* gst/elements/gstelements.c:
don't compile fdsrc without sys/socket.h
* gst/indexers/Makefile.am:
* gst/indexers/gstindexers.c: (plugin_init):
don't compile fileindex without mmap
2005-10-15 15:01:39 +00:00
Thomas Vander Stichele
08479555e5 configure.ac: reorganize clean up document more remove cruft
Original commit message from CVS:

* configure.ac:
reorganize
clean up
document more
remove cruft
* check/Makefile.am:
* docs/gst/Makefile.am:
* examples/helloworld/Makefile.am:
* gst/Makefile.am:
* gst/base/Makefile.am:
* gst/check/Makefile.am:
* gst/elements/Makefile.am:
* gst/indexers/Makefile.am:
* gst/parse/Makefile.am:
* libs/gst/controller/Makefile.am:
* libs/gst/dataprotocol/Makefile.am:
* examples/helloworld/helloworld.c: (event_loop):
compile fixes, though it's not being compiled currently
2005-10-15 13:58:18 +00:00
Thomas Vander Stichele
2d8b674753 remove directory
Original commit message from CVS:
remove directory
2005-10-15 10:34:17 +00:00
Thomas Vander Stichele
4a74148bd4 signedness/type fixes
Original commit message from CVS:
signedness/type fixes
2005-10-15 00:22:02 +00:00
Thomas Vander Stichele
4ba0732136 signedness/type fixes
Original commit message from CVS:
signedness/type fixes
2005-10-15 00:20:45 +00:00
Thomas Vander Stichele
9ffd425b5d signedness fixes
Original commit message from CVS:
signedness fixes
2005-10-15 00:15:43 +00:00
Thomas Vander Stichele
58db19c2e7 signedness fixes
Original commit message from CVS:
signedness fixes
2005-10-15 00:12:22 +00:00
Tim-Philipp Müller
55c0c8ed51 gst/elements/: Beautify 'last-message' output: print 'none' for buffer timestamps and durations if none is set; impro...
Original commit message from CVS:
* gst/elements/gstfakesink.c: (gst_fake_sink_render):
* gst/elements/gstfakesrc.c: (gst_fake_src_create):
Beautify 'last-message' output: print 'none' for buffer timestamps
and durations if none is set; improve alignment with next messages.
2005-10-14 14:10:24 +00:00
Tim-Philipp Müller
45258dbc4c Add new API to check plugin feature version requirements.
Original commit message from CVS:
* gst/gstpluginfeature.c: (gst_plugin_feature_check_version):
* gst/gstpluginfeature.h:
* gst/gstregistry.c: (gst_default_registry_check_feature_version):
* gst/gstregistry.h:
* docs/gst/gstreamer-sections.txt:
Add new API to check plugin feature version requirements.
* check/gst/gstplugin.c: (test_version_checks), (gst_plugin_suite):
Some basic tests for the above.
2005-10-14 11:09:29 +00:00
Thomas Vander Stichele
b10cc10e8c gst/gststructure.c: guard against NULL printf - happens when for example a message structure with GstClock gets seria...
Original commit message from CVS:
2005-10-13  Thomas Vander Stichele  <thomas at apestaart dot org>

* gst/gststructure.c: (gst_structure_to_string):
guard against NULL printf - happens when for example
a message structure with GstClock gets serialized
2005-10-13 21:27:57 +00:00
Tim-Philipp Müller
26eb6ab26d gst/base/gstcollectpads.c: Fix presumable copy'n'pasto.
Original commit message from CVS:
* gst/base/gstcollectpads.c: (gst_collectpads_event):
Fix presumable copy'n'pasto.
2005-10-13 18:33:27 +00:00
Thomas Vander Stichele
82d7d35d64 add correct header for WIN32
Original commit message from CVS:
add correct header for WIN32
2005-10-13 17:51:51 +00:00
Thomas Vander Stichele
2bc75efbf3 gst/elements/: fix some signedness
Original commit message from CVS:

* gst/elements/gstfakesrc.h:
* gst/elements/gstfilesrc.c: (gst_file_src_create_read):
* gst/elements/gsttypefindelement.c:
fix some signedness
* gst/elements/gstfilesink.c: (gst_file_sink_render):
I wonder if this could actually write +2GB files before
2005-10-13 17:43:36 +00:00
Thomas Vander Stichele
ef8b2e27ec include header correctly; show me the name
Original commit message from CVS:
include header correctly; show me the name
2005-10-13 17:20:44 +00:00
Stefan Kost
d2cd55ab84 fixed typos
Original commit message from CVS:
* docs/design/draft-push-pull.txt:
* docs/design/part-overview.txt:
* docs/random/TODO-pre-0.9:
* docs/random/old/ChangeLog.gstreamer:
* gst/base/gstpushsrc.c:
* gst/gstclock.c:
fixed typos
2005-10-13 15:27:40 +00:00
Thomas Vander Stichele
eecd25e78f gst/: GLib 2.6 g_flags_get_first_value has a bug that triggers an infinite loop
Original commit message from CVS:

* gst/glib-compat.c: (gst_flags_get_first_value):
* gst/glib-compat.h:
* gst/gstvalue.c: (gst_value_deserialize_int_helper),
(gst_value_compare_double), (gst_value_serialize_flags):
GLib 2.6 g_flags_get_first_value has a bug that triggers an
infinite loop
2005-10-13 15:23:51 +00:00
Thomas Vander Stichele
d4ea9fbeba gst/base/: fix up debugging
Original commit message from CVS:
2005-10-13  Thomas Vander Stichele  <thomas at apestaart dot org>

* gst/base/gstbasesink.c: (gst_base_sink_handle_object):
* gst/base/gstbasesrc.c: (gst_base_src_get_range):
fix up debugging
* tools/gst-launch.c: (event_loop):
print out clock nicely
2005-10-13 15:22:26 +00:00
Tim-Philipp Müller
c32c04303c Added gst_tag_list_get_date() and gst_tag_list_get_date_index().
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* gst/gsttaglist.h:
* gst/gsttaglist.c: (_gst_tag_initialize), (gst_tag_list_get_date),
(gst_tag_list_get_date_index):
Added gst_tag_list_get_date() and gst_tag_list_get_date_index().
GST_TAG_DATE now has a tag type of GST_TYPE_DATE (#170777).
2005-10-13 15:13:32 +00:00
Julien Moutte
04f521f191 gst/base/gstcollectpads.*: Handle newsegment and store informations in CollectData.
Original commit message from CVS:
2005-10-13  Julien MOUTTE  <julien@moutte.net>

* gst/base/gstcollectpads.c: (gst_collectpads_event),
(gst_collectpads_chain):
* gst/base/gstcollectpads.h: Handle newsegment and store
informations
in CollectData.
2005-10-13 14:55:17 +00:00
Stefan Kost
2bc2709c85 fix GOption context leaks doc fixes
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* gst/gst.c:
* gst/gsterror.h:
* tools/gst-inspect.c: (main):
* tools/gst-launch.c: (main):
* tools/gst-run.c: (main):
* tools/gst-xmlinspect.c: (main):
fix GOption context leaks
doc fixes
2005-10-13 09:57:15 +00:00
Thomas Vander Stichele
feeb5f939e gst/gstbus.c: use HAVE_UNISTD_H
Original commit message from CVS:

* gst/gstbus.c:
use HAVE_UNISTD_H
* win32/common/config.h:
update config
* win32/vs6/grammar.dsp:
* win32/vs6/libgstelements.dsp:
* win32/vs6/libgstreamer.dsp:
update vs6 files
2005-10-12 22:34:47 +00:00
Thomas Vander Stichele
04a38508e1 gst/base/: fix more guint64<->gdouble conversions
Original commit message from CVS:

* gst/base/gstbasesink.c: (gst_base_sink_handle_object):
* gst/base/gstbasesrc.c: (gst_base_src_query):
fix more guint64<->gdouble conversions
2005-10-12 21:56:52 +00:00
Wim Taymans
f6e003890d gst/: Protect flags with proper lock. unref provided cached clock in dispose.
Original commit message from CVS:
* gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
(reset_degree), (gst_bin_dispose), (bin_bus_handler):
* gst/gstelement.c: (gst_element_commit_state),
(gst_element_set_state):
Protect flags with proper lock.
unref provided cached clock in dispose.
2005-10-12 19:38:44 +00:00
Thomas Vander Stichele
17e4681cdf layout cleanup
Original commit message from CVS:
layout cleanup
2005-10-12 19:14:23 +00:00
Stefan Kost
2aaf1df98f removed unused flags from miniobject doc fixes
Original commit message from CVS:
* gst/gst.c:
* gst/gstminiobject.h:
* gst/gstpad.h:
* win32/gstenumtypes.c: (gst_mini_object_flags_get_type):
removed unused flags from miniobject
doc fixes
2005-10-12 19:10:46 +00:00
Wim Taymans
e41e541dcc gst/elements/gstfilesink.c: Flush before seeking.
Original commit message from CVS:
* gst/elements/gstfilesink.c: (gst_file_sink_do_seek),
(gst_file_sink_event), (gst_file_sink_render):
Flush before seeking.
2005-10-12 16:03:39 +00:00
Andy Wingo
b5fcd112ae gst/gst.c (gst_init_check): Ignore unknown options, as has always been the case.
Original commit message from CVS:
2005-10-12  Andy Wingo  <wingo@pobox.com>

* gst/gst.c (gst_init_check): Ignore unknown options, as has
always been the case.
2005-10-12 15:58:24 +00:00
Stefan Kost
a98aef82db renamed GST_FLAGS macros to GST_OBJECT_FLAGS moved bitshift from macro to enum definition
Original commit message from CVS:
* check/gst/gstbin.c: (GST_START_TEST):
* docs/gst/gstreamer-sections.txt:
* gst/base/gstbasesink.c: (gst_base_sink_init):
* gst/base/gstbasesrc.c: (gst_base_src_init),
(gst_base_src_get_range), (gst_base_src_check_get_range),
(gst_base_src_start), (gst_base_src_stop):
* gst/base/gstbasesrc.h:
* gst/elements/gstfakesrc.c: (gst_fake_src_set_property):
* gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
(bin_element_is_sink), (reset_degree), (gst_bin_element_set_state),
(bin_bus_handler):
* gst/gstbin.h:
* gst/gstbuffer.h:
* gst/gstbus.c: (gst_bus_post), (gst_bus_set_flushing):
* gst/gstbus.h:
* gst/gstelement.c: (gst_element_is_locked_state),
(gst_element_set_locked_state), (gst_element_commit_state),
(gst_element_set_state):
* gst/gstelement.h:
* gst/gstindex.c: (gst_index_init):
* gst/gstindex.h:
* gst/gstminiobject.h:
* gst/gstobject.c: (gst_object_init), (gst_object_sink),
(gst_object_set_parent):
* gst/gstobject.h:
* gst/gstpad.c: (gst_pad_set_blocked_async), (gst_pad_is_blocked),
(gst_pad_get_caps_unlocked), (gst_pad_set_caps):
* gst/gstpad.h:
* gst/gstpadtemplate.h:
* gst/gstpipeline.c: (gst_pipeline_provide_clock_func),
(gst_pipeline_use_clock), (gst_pipeline_auto_clock):
* gst/gstpipeline.h:
* gst/indexers/gstfileindex.c: (gst_file_index_load),
(gst_file_index_commit):
* testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
* testsuite/pad/link.c: (gst_test_src_init),
(gst_test_filter_init), (gst_test_sink_init):
* testsuite/states/locked.c: (main):
renamed GST_FLAGS macros to GST_OBJECT_FLAGS
moved bitshift from macro to enum definition
2005-10-12 14:28:39 +00:00
Wim Taymans
427aa60014 gst/: Some more debugging info.
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_base_sink_handle_buffer):
* gst/elements/gstfilesink.c: (gst_file_sink_event),
(gst_file_sink_render):
Some more debugging info.
2005-10-12 14:12:37 +00:00
Wim Taymans
6d0be74351 Use GstClockTime in _get_state() instead of GTimeVal.
Original commit message from CVS:
* check/gst/gstbin.c: (GST_START_TEST):
* check/gst/gstelement.c: (GST_START_TEST):
* check/gst/gstevent.c: (GST_START_TEST), (test_event):
* check/gst/gstghostpad.c: (GST_START_TEST):
* check/gst/gstpipeline.c: (GST_START_TEST):
* check/pipelines/simple_launch_lines.c: (run_pipeline):
* check/states/sinks.c: (GST_START_TEST):
* gst/elements/gsttypefindelement.c: (stop_typefinding):
* gst/gstbin.c: (gst_bin_provide_clock_func), (gst_bin_add_func),
(gst_bin_remove_func), (gst_bin_get_state_func),
(gst_bin_recalc_state), (gst_bin_change_state_func),
(bin_bus_handler):
* gst/gstelement.c: (gst_element_get_state_func),
(gst_element_get_state), (gst_element_abort_state),
(gst_element_commit_state), (gst_element_set_state),
(gst_element_change_state), (gst_element_change_state_func):
* gst/gstelement.h:
* gst/gstpipeline.c: (gst_pipeline_class_init), (do_pipeline_seek),
(gst_pipeline_provide_clock_func):
* gst/gstutils.c: (gst_element_link_pads_filtered):
* tools/gst-launch.c: (main):
* tools/gst-typefind.c: (main):
Use GstClockTime in _get_state() instead of GTimeVal.
Remove old code in gstutils.c
2005-10-12 12:18:48 +00:00
Andy Wingo
c3cc492c7e gst/gstpad.c (gst_pad_pause_task): Actually return FALSE if there is no task. Shouldn't affect any code, as nothing i...
Original commit message from CVS:
2005-10-12  Andy Wingo  <wingo@pobox.com>

* gst/gstpad.c (gst_pad_pause_task): Actually return FALSE if
there is no task. Shouldn't affect any code, as nothing in our
plugins checks this return value.
(gst_pad_stop_task): Also take the stream lock if the pad has no
task. Docs updated.
2005-10-12 11:49:35 +00:00
Wim Taymans
e11ddea888 gst/gstpad.c: Cleanup activation code. Reset old state if activation failed.
Original commit message from CVS:
* gst/gstpad.c: (pre_activate), (post_activate),
(gst_pad_activate_pull), (gst_pad_activate_push):
Cleanup activation code. Reset old state if
activation failed.
2005-10-12 10:05:36 +00:00
Wim Taymans
0fd18045b1 gst/base/gstbasesink.c: No need to prerol after receiving EOS.
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_base_sink_handle_object),
(gst_base_sink_change_state):
No need to prerol after receiving EOS.

* gst/elements/gstfakesink.c: (gst_fake_sink_event):
* gst/elements/gstfakesrc.c: (gst_fake_src_event_handler):
* gst/elements/gstidentity.c: (gst_identity_event):
Print events more verbosely.
2005-10-12 09:02:42 +00:00
Wim Taymans
cc28efc239 check/: Moved sinks2 testcode in sinks check.
Original commit message from CVS:
* check/Makefile.am:
* check/states/sinks.c: (GST_START_TEST), (gst_object_suite):
* check/states/sinks2.c:
Moved sinks2 testcode in sinks check.

* gst/gstbin.c: (gst_bin_provide_clock_func), (gst_bin_add_func),
(gst_bin_remove_func), (gst_bin_recalc_state),
(gst_bin_change_state_func), (bin_bus_handler):
Fix potential race condition when _get_state() iterated over an
ASYNC element right before it posted a state completion.

* gst/gstclock.h:
Do proper cast here.

* gst/gstevent.c: (gst_event_new_newsegment),
(gst_event_parse_newsegment):
A playback rate of 0.0 is not allowed.
2005-10-12 08:38:06 +00:00
Wim Taymans
7a2e55a750 forgot this one
Original commit message from CVS:
forgot this one
2005-10-11 17:33:25 +00:00
Wim Taymans
9decf461f5 gst/base/gstbasesink.*: Correctly parse newsegment info.
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_base_sink_handle_object),
(gst_base_sink_do_sync), (gst_base_sink_query),
(gst_base_sink_change_state):
* gst/base/gstbasesink.h:
Correctly parse newsegment info.
2005-10-11 17:32:00 +00:00
Thomas Vander Stichele
593c714746 gst/gst.c: split plugin paths correctly
Original commit message from CVS:
2005-10-11  Thomas Vander Stichele  <thomas at apestaart dot org>

* gst/gst.c: (init_post):
split plugin paths correctly
2005-10-11 16:54:41 +00:00
Wim Taymans
c97e237a14 Added extra flag to newsegment for future API freeze.
Original commit message from CVS:
* check/gst/gstevent.c: (GST_START_TEST):
* gst/base/gstbasesink.c: (gst_base_sink_handle_object),
(gst_base_sink_change_state):
* gst/base/gstbasesrc.c: (gst_base_src_default_newsegment):
* gst/base/gstbasetransform.c: (gst_base_transform_event):
* gst/elements/gstfilesink.c: (gst_file_sink_event):
* gst/gstevent.c: (gst_event_new_newsegment),
(gst_event_parse_newsegment):
* gst/gstevent.h:
Added extra flag to newsegment for future API freeze.
Updated check and base elements.
2005-10-11 16:28:49 +00:00
Julien Moutte
5706cb69b4 gst/base/gstcollectpads.*: Handle EOS correctly.
Original commit message from CVS:
2005-10-11  Julien MOUTTE  <julien@moutte.net>

* gst/base/gstcollectpads.c: (gst_collectpads_init),
(gst_collectpads_add_pad), (gst_collectpads_pop),
(gst_collectpads_event), (gst_collectpads_chain):
* gst/base/gstcollectpads.h: Handle EOS correctly.
2005-10-11 16:25:35 +00:00
Thomas Vander Stichele
03159ca232 gst/gst-i18n-lib.h: check for ENABLE_NLS, not GETTEXT_PACKAGE
Original commit message from CVS:

* gst/gst-i18n-lib.h:
check for ENABLE_NLS, not GETTEXT_PACKAGE
* gst/gstregistry.c: (gst_registry_add_plugin),
(gst_registry_scan_path_level),
(_gst_registry_remove_cache_plugins):
protect possibly NULL strings
* gst/parse/types.h:
config.h already included before
* tools/gst-inspect.c: (main):
sys/wait.h also doesnt exist on mingw, so change the ifdef check
check for ENABLE_NLS, not GETTEXT_PACKAGE
* tools/gst-launch.c: (main):
check for ENABLE_NLS, not GETTEXT_PACKAGE


This commit brought to you from msys/mingw
2005-10-11 16:05:16 +00:00
Thomas Vander Stichele
3b9e6b3eff configure.ac: if we don't have glib, fail before testing 2.8
Original commit message from CVS:

* configure.ac:
if we don't have glib, fail before testing 2.8
* gst/base/gstbasetransform.c: (gst_base_transform_change_state):
fix a leak, should fix plugins-base testsuite
2005-10-11 15:26:58 +00:00
Andy Wingo
3ef37179a1 gst/gstpad.c (pre_activate): Renamed from pre_activate_switch, take the mode we're going to as an arg. Go head and se...
Original commit message from CVS:
2005-10-11  Andy Wingo  <wingo@pobox.com>

* gst/gstpad.c (pre_activate): Renamed from pre_activate_switch,
take the mode we're going to as an arg. Go head and set the mode
and flushing flags now, so that if the activate function starts a
thread all the flags will be in the right state.
(post_activate): Renamed also. Just handle making sure streaming
finishes for the deactivation case, and setting the deactivated
mode.
(gst_pad_set_active): Complain loudly if deactivation fails.
(gst_pad_activate_pull): Adapt to pre/post_activate changes.
(gst_pad_activate_push): Adapt to pre/post_activate changes,
remove the terrible hack.
2005-10-11 15:23:10 +00:00
Wim Taymans
4dd6c2a587 gst/gstbin.*: Prepare to make current EOS message queue more generic.
Original commit message from CVS:
* gst/gstbin.c: (gst_bin_init), (gst_bin_provide_clock_func),
(is_eos), (gst_bin_add_func), (gst_bin_remove_func),
(gst_bin_recalc_state), (gst_bin_change_state_func),
(gst_bin_dispose), (bin_bus_handler):
* gst/gstbin.h:
Prepare to make current EOS message queue more generic.
Fix some typos.

* gst/gstevent.c: (gst_event_new_newsegment),
(gst_event_parse_newsegment):
* gst/gstevent.h:
Rename base to stream_time.

* gst/gstmessage.h:
Fix typo in docs.
2005-10-11 15:05:55 +00:00
Wim Taymans
fc5dc6de66 gst/gstbin.*: Work on proper clock selection.
Original commit message from CVS:
* gst/gstbin.c: (gst_bin_init), (gst_bin_provide_clock_func),
(gst_bin_add_func), (gst_bin_remove_func), (gst_bin_recalc_state),
(gst_bin_change_state_func), (bin_bus_handler):
* gst/gstbin.h:
Work on proper clock selection.
2005-10-11 12:58:44 +00:00
Wim Taymans
fd1a66e8b5 docs/design/part-states.txt: Some more docs.
Original commit message from CVS:
* docs/design/part-states.txt:
Some more docs.

* gst/gstbin.c: (gst_bin_set_clock_func), (gst_bin_recalc_state),
(gst_bin_change_state_func), (bin_bus_handler):
Doc updates. Don't distribute the same clock over and over again.

* gst/gstclock.c:
* gst/gstclock.h:
Doc updates.

* gst/gstpad.c: (gst_flow_get_name), (gst_flow_to_quark),
(gst_pad_get_type), (gst_pad_push), (gst_pad_push_event),
(gst_pad_send_event):
* gst/gstpad.h:
Make probe emission threadsafe again.
Register quarks and move _get_name() from utils.
Doc updates.

* gst/gstpipeline.c: (gst_pipeline_class_init),
(gst_pipeline_change_state), (gst_pipeline_provide_clock_func):
Only redistribute the clock of it changed.

* gst/gstsystemclock.h:
Doc updates.

* gst/gstutils.c:
* gst/gstutils.h:
Moved the _flow_get_name() to GstPad.
2005-10-11 11:08:52 +00:00
Thomas Vander Stichele
c43e9db780 if we log our init, should also log finalize
Original commit message from CVS:
if we log our init, should also log finalize
2005-10-11 09:14:59 +00:00
Thomas Vander Stichele
33a77b7a01 don't declare on the proper define
Original commit message from CVS:
don't declare on the proper define
2005-10-10 23:11:33 +00:00
Thomas Vander Stichele
5fb2b32a1f unmangle the nesting a little
Original commit message from CVS:
unmangle the nesting a little
2005-10-10 22:59:22 +00:00
Thomas Vander Stichele
1b27dd60dd gst/parse/grammar.y: some cleanup before the hacking
Original commit message from CVS:

* gst/parse/grammar.y:
some cleanup before the hacking
2005-10-10 22:49:42 +00:00
Thomas Vander Stichele
e2af9ca6c6 gst/base/gstbasesrc.c: use conversions
Original commit message from CVS:

* gst/base/gstbasesrc.c: (gst_base_src_query):
use conversions
* gst/gstutils.c: (gst_guint64_to_gdouble),
(gst_gdouble_to_guint64), (gst_util_uint64_scale):
* gst/gstutils.h:
externalize, basesrc uses it
obviously the implementation needs testing
2005-10-10 18:16:37 +00:00
Thomas Vander Stichele
78c180ea28 another cast bites the dust
Original commit message from CVS:
another cast bites the dust
2005-10-10 17:05:04 +00:00
Thomas Vander Stichele
8808565b44 another cast bites the dust
Original commit message from CVS:
another cast bites the dust
2005-10-10 16:45:45 +00:00
Thomas Vander Stichele
0d129e5757 gst/gstutils.c: apparently converting from guint64 to double is not implemented on MSVC
Original commit message from CVS:

* gst/gstutils.c: (guint64_to_gdouble), (gst_util_uint64_scale):
apparently converting from guint64 to double is not implemented
on MSVC
2005-10-10 16:38:59 +00:00
Wim Taymans
2153c45964 check/: Check fixes, use API as stated in design docs, remove hacks.
Original commit message from CVS:
* check/Makefile.am:
* check/generic/states.c: (GST_START_TEST):
* check/gst/gstbin.c: (GST_START_TEST):
* check/gst/gstpipeline.c: (GST_START_TEST), (gst_pipeline_suite):
* check/states/sinks.c: (GST_START_TEST):
* check/states/sinks2.c: (GST_START_TEST), (gst_object_suite),
(main):
Check fixes, use API as stated in design docs, remove hacks.

* gst/base/gstbasesink.c: (gst_base_sink_handle_object),
(gst_base_sink_change_state):
Catch stopping our task while we're shutting down.

* gst/gstbin.c: (gst_bin_init), (gst_bin_add_func),
(gst_bin_remove_func), (gst_bin_get_state_func),
(gst_bin_recalc_state), (gst_bin_change_state_func),
(bin_bus_handler):
* gst/gstbin.h:
* gst/gstelement.c: (gst_element_init),
(gst_element_get_state_func), (gst_element_abort_state),
(gst_element_commit_state), (gst_element_lost_state),
(gst_element_set_state), (gst_element_change_state),
(gst_element_change_state_func):
* gst/gstelement.h:
New state change algorithm (see #318116)

* gst/gstpipeline.c: (gst_pipeline_class_init),
(gst_pipeline_init), (gst_pipeline_set_property),
(gst_pipeline_get_property), (do_pipeline_seek),
(gst_pipeline_change_state), (gst_pipeline_provide_clock_func):
* gst/gstpipeline.h:
Remove crude state change hacks.

* gst/gstutils.h:
Remove crude hacks.

* tools/gst-launch.c: (main):
Fixes for state change. Needs some more work to fully use the
new stuff.
2005-10-10 16:38:26 +00:00
Andy Wingo
e415bd9957 gst/gst.c (G_OPTION_FLAG_NO_ARG): Apparently GLib 2.8 requires this flag, but it's not even in GLib 2.6. Odd. Hack ar...
Original commit message from CVS:
2005-10-10  Andy Wingo  <wingo@pobox.com>

* gst/gst.c (G_OPTION_FLAG_NO_ARG): Apparently GLib 2.8 requires
this flag, but it's not even in GLib 2.6. Odd. Hack around the
issue.
2005-10-10 16:04:28 +00:00
Tim-Philipp Müller
29e78cb4b0 gst/gstiterator.c: Fix my previous commit: GTypes passed to gst_iterator_new() can be fundamental types.
Original commit message from CVS:
* gst/gstiterator.c: (gst_iterator_new):
Fix my previous commit: GTypes passed to gst_iterator_new()
can be fundamental types.
2005-10-10 15:58:32 +00:00
Wim Taymans
63f02ce9ad gst/gstelement.c: Use src/sink pads lists for the respective iterators instead of filtering.
Original commit message from CVS:
* gst/gstelement.c: (gst_element_iterate_pad_list),
(gst_element_iterate_pads), (gst_element_iterate_src_pads),
(gst_element_iterate_sink_pads):
Use src/sink pads lists for the respective iterators instead
of filtering.
2005-10-10 15:55:37 +00:00
Ronald
ac8289c7a9 Merged in popt removal + GOption addition patch from Ronald, bug #169772.
Original commit message from CVS:
2005-10-10  Andy Wingo  <wingo@pobox.com>

Merged in popt removal + GOption addition patch from Ronald, bug
#169772.

* docs/gst/gstreamer-sections.txt: Add STATE_(UN)LOCK_FULL, move
GstElement macros around, remove popt-related symbols, add goption
stuff.

* configure.ac: Remove popt checks, require GLib 2.6 for GOption.

* docs/gst/Makefile.am:
* docs/libs/Makefile.am: No POPT_CFLAGS.

* examples/manual/Makefile.am:
* docs/manual/basics-init.xml: Doc updates with an example.

* gst/gst.c: (gst_init_get_option_group), (gst_init_check),
(gst_init), (parse_one_option), (parse_goption_arg):
* gst/gst.h: Removed gst_init_with_popt_table and friends. Took a
bit of hand merging and debugging to get the GOption stuff working
tho.

* tests/Makefile.am:
* tools/Makefile.am:
* tools/gst-inspect.c: (main):
* tools/gst-launch.c: (main):
* tools/gst-run.c: (main):
* tools/gst-xmlinspect.c: (main): Thanks Ronald!
2005-10-10 15:53:59 +00:00
Tim-Philipp Müller
a1702b7646 gst/gstiterator.c: Add assertions to make sure passed GType is likely to really be a GType (as the compiler won't cat...
Original commit message from CVS:
* gst/gstiterator.c: (gst_iterator_new):
Add assertions to make sure passed GType is likely to really
be a GType (as the compiler won't catch it if the size and
GType arguments get mixed up, see #318447).
2005-10-10 15:30:45 +00:00
Tim-Philipp Müller
ee379a13b6 gst/gstbin.c: Pass GType and size arguments to gst_iterator_new() in the right order (maybe we should make _new() tak...
Original commit message from CVS:
Reviewed by: Tim-Philipp Müller  <tim at centricular dot net>
* gst/gstbin.c: (gst_bin_iterate_sorted):
Pass GType and size arguments to gst_iterator_new() in the right
order (maybe we should make _new() take the GType as first argument
just like _new_list()?) (#318447).
2005-10-10 15:27:12 +00:00
Wim Taymans
9e17ca91dd gst/gstelement.c: And free the GStaticRecMutex too
Original commit message from CVS:
* gst/gstelement.c: (gst_element_finalize):
And free the GStaticRecMutex too
2005-10-10 15:17:35 +00:00
Andy Wingo
cfd14e0fd3 gst/gstelement.c (gst_element_init, gst_element_finalize): Allocate and free the mutex properly.
Original commit message from CVS:
2005-10-10  Andy Wingo  <wingo@pobox.com>

* gst/gstelement.c (gst_element_init, gst_element_finalize):
Allocate and free the mutex properly.

* gst/gstelement.h (GST_STATE_UNLOCK_FULL, GST_STATE_LOCK_FULL):
New macros.
(GstElement): The state_lock is now recursive. Rebuild your
plugins, suckers. Old macros adapted.
2005-10-10 14:33:13 +00:00
Andy Wingo
16dfb8d4df docs/gst/gstreamer-sections.txt: Doc updates.
Original commit message from CVS:
2005-10-10  Andy Wingo  <wingo@pobox.com>

* docs/gst/gstreamer-sections.txt: Doc updates.

* gst/gstutils.h:
* gst/gstutils.c (g_static_rec_cond_timed_wait)
(g_static_rec_cond_wait): Ported from state changes patch, while
we wait on bug #317802 to be solved in a well-distributed GLib.
2005-10-10 14:23:26 +00:00
Andy Wingo
addf0c460b gst/gstelement.c (gst_element_change_state_func): Renamed from gst_element_change_state, variable name changes.
Original commit message from CVS:
2005-10-10  Andy Wingo  <wingo@pobox.com>

* gst/gstelement.c (gst_element_change_state_func): Renamed from
gst_element_change_state, variable name changes.
(gst_element_change_state): Split out of gst_element_set_state in
preparation for the state change merge. Doesn't pay attention to
the 'transition' argument.
(gst_element_set_state): Updates, hopefully purely cosmetic.
(gst_element_sync_state_with_parent): MT-safety. Ported from the
state change patch.
(gst_element_get_state_func): Renamed from get_state, cosmetic
changes.
2005-10-10 14:03:25 +00:00
Sebastien Moutte
b4e68ab0a3 updates for the win32 build (patch from Sebastien Moutte)
Original commit message from CVS:

* gst/elements/gstelements.c:
* win32/GStreamer.vcproj:
* win32/config.h:
* win32/dirent.c: (_tseekdir):
* win32/gst-inspect.vcproj:
* win32/gst-launch.vcproj:
* win32/gstconfig.h:
* win32/gstelements.vcproj:
* win32/gstenumtypes.c: (gst_object_flags_get_type):
* win32/gstreamer.def:
* win32/msvc71.sln:
updates for the win32 build (patch from Sebastien Moutte)
2005-10-10 13:52:18 +00:00
Andy Wingo
933bf92949 gst/gstbin.c (gst_bin_get_state_func): Renamed from gst_bin_get_state, cleaned up (but no logic changes).
Original commit message from CVS:
2005-10-10  Andy Wingo  <wingo@pobox.com>

* gst/gstbin.c (gst_bin_get_state_func): Renamed from
gst_bin_get_state, cleaned up (but no logic changes).
(bin_element_is_sink): Comment updates.
(sink_iterator_filter): Remove needless cast.
(gst_bin_iterate_sinks): Doc update.
(gst_bin_change_state_func): Renamed from gst_bin_change_state,
cleaned up (but no logic changes).
2005-10-10 11:52:58 +00:00
Tim-Philipp Müller
b846fed997 gst/base/gsttypefindhelper.c: Check whether we have the requested data already in our list of cached buffers before p...
Original commit message from CVS:
* gst/base/gsttypefindhelper.c: (helper_find_peek),
(gst_type_find_helper):
Check whether we have the requested data already in our list of
cached buffers before pulling a new buffer; also make the buffer
list a GSList. Speeds up typefinding by ca. 5-10% altogether.
2005-10-10 10:43:15 +00:00
Thomas Vander Stichele
2b7c3ac5e5 gst/: doc updates
Original commit message from CVS:

* gst/gstcaps.c:
* gst/gstevent.c:
doc updates
* gst/gstvalue.c: (gst_value_deserialize_int_helper):
don't use long long, it's not portable.  Replacing with
gint64 seems to work; let's hope no skeletons fall out of the closet.
2005-10-10 09:48:21 +00:00
Stefan Kost
f9c812c51c more docs, fix compilation
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* gst/gstevent.c:
* gst/gstevent.h:
* gst/gstinfo.c:
* gst/gstinfo.h:
* gst/gstmessage.c: (gst_message_parse_state_changed):
* gst/gstpad.c:
* gst/gstpad.h:
more docs, fix compilation
2005-10-09 20:49:46 +00:00
Philippe Kalaf
b6ea453bc1 gst/gstmessage.c: Fixed a few forgotten variables on previous commit
Original commit message from CVS:
2005-10-09  Philippe Khalaf <burger@speedy.org>
* gst/gstmessage.c:
Fixed a few forgotten variables on previous commit
2005-10-09 20:19:48 +00:00
Tim-Philipp Müller
2b41c044a2 gst/base/gsttypefindhelper.c: Fix evil typefind crasher: getrange() might return a short buffer at the end of a file,...
Original commit message from CVS:
* gst/base/gsttypefindhelper.c: (helper_find_peek):
Fix evil typefind crasher: getrange() might return a short
buffer at the end of a file, but gst_type_find_peek() must
either return the full data as requested or NULL, but
never a short buffer.
2005-10-09 17:59:08 +00:00
Thomas Vander Stichele
d8efd5cc51 gst/gstmessage.*: don't use new, it's a C++ keyword
Original commit message from CVS:

* gst/gstmessage.c: (gst_message_new_state_changed),
(gst_message_parse_state_changed):
* gst/gstmessage.h:
don't use new, it's a C++ keyword
2005-10-09 17:53:33 +00:00
Wim Taymans
e823f47cdd gst/: Small docs and debug updates.
Original commit message from CVS:
* gst/gstbin.c: (is_eos), (update_degree), (gst_bin_query):
* gst/gstelement.c: (gst_element_post_message):
* gst/gstpipeline.c: (gst_pipeline_change_state):
Small docs and debug updates.
2005-10-08 18:21:20 +00:00
Stefan Kost
796a232d59 more docs
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* gst/gstelementfactory.c:
* gst/gstevent.c:
* gst/gsttaglist.c:
more docs
2005-10-08 18:07:20 +00:00
Wim Taymans
ae25867a05 gst/gstbin.c: Fix typos, add comments.
Original commit message from CVS:
* gst/gstbin.c: (is_eos), (update_degree), (gst_bin_change_state),
(gst_bin_dispose), (bin_bus_handler):
Fix typos, add comments.
Clear EOS list when going to PAUSED from any direction and do it
in a threadsafe way.
Get base time in a threadsafe way too.
Fix confusing debug in the change_state function.
Various other mall cleanups.

* gst/gstelement.c: (gst_element_post_message):
Fix very verbose bus posting code.

* gst/gstpipeline.c: (gst_pipeline_class_init),
(gst_pipeline_set_property), (gst_pipeline_get_property),
(gst_pipeline_change_state):
Small ARG_ -> PROP_ cleanup
2005-10-08 18:01:04 +00:00
Wim Taymans
3988477b17 gst/gstbin.c: Do a less CPU demanding EOS check because we can.
Original commit message from CVS:
* gst/gstbin.c: (is_eos), (bin_bus_handler):
Do a less CPU demanding EOS check because we can.
2005-10-08 17:30:29 +00:00
Wim Taymans
bed8c238f0 gst/gstevent.*: Fix event quark registration.
Original commit message from CVS:
* gst/gstevent.c:
* gst/gstevent.h:
Fix event quark registration.
Add some space between events so we can insert them in the
right groups.
2005-10-08 16:13:50 +00:00
Wim Taymans
06bc343e3f gst/base/gstbasesink.c: Better log message.
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_base_sink_handle_object),
(gst_base_sink_handle_buffer):
Better log message.

* gst/gstbus.h:
* gst/gstelement.h:
More docs.

* gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
(gst_queue_set_property), (gst_queue_get_property):
* gst/gstqueue.h:
Remove old unused properties.
2005-10-08 14:57:09 +00:00
Stefan Kost
8167fcdd78 lots of new docs and doc fixes
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* gst/gstmessage.c:
* gst/gstmessage.h:
* gst/gstminiobject.c:
* gst/gstminiobject.h:
* gst/gstobject.h:
* gst/gstpad.h:
* gst/gstutils.h:
lots of new docs and doc fixes
2005-10-08 14:48:17 +00:00
Thomas Vander Stichele
c7d09f7c4f fix a leak I introduced
Original commit message from CVS:
fix a leak I introduced
2005-10-08 14:41:56 +00:00
Thomas Vander Stichele
871217319a gst/: Only ever load one plugin for a given plugin basename.
Original commit message from CVS:

* gst/gstplugin.c: (gst_plugin_finalize), (gst_plugin_load_file):
* gst/gstplugin.h:
* gst/gstregistry.c: (gst_registry_lookup_locked),
(gst_registry_scan_path_level):
* gst/gstregistryxml.c: (load_plugin):
Only ever load one plugin for a given plugin basename.
This ensures correct overriding of GST_PLUGIN_PATH over
GST_PLUGIN_SYSTEM_PATH and of home dir plugins over
system installed plugins.
2005-10-08 13:57:17 +00:00
Wim Taymans
5d5dbe9bc0 gst/base/gstbasesink.c: Prepare for doing QOS.
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_base_sink_handle_object),
(gst_base_sink_do_sync), (gst_base_sink_handle_buffer):
Prepare for doing QOS.
2005-10-08 13:39:02 +00:00
Wim Taymans
dafe104298 gst/gstmessage.*: Also carry the clock in question.
Original commit message from CVS:
* gst/gstmessage.c: (gst_message_new_error),
(gst_message_new_warning), (gst_message_new_tag),
(gst_message_new_state_changed), (gst_message_new_clock_provide),
(gst_message_new_clock_lost), (gst_message_new_new_clock),
(gst_message_new_segment_start), (gst_message_new_segment_done),
(gst_message_parse_state_changed),
(gst_message_parse_clock_provide), (gst_message_parse_clock_lost),
(gst_message_parse_new_clock):
* gst/gstmessage.h:
Also carry the clock in question.
2005-10-08 12:56:37 +00:00
Wim Taymans
677becd06a gst/gstmessage.*: Clean up.
Original commit message from CVS:
* gst/gstmessage.c: (gst_message_new_custom),
(gst_message_new_eos), (gst_message_new_error),
(gst_message_new_warning), (gst_message_new_tag),
(gst_message_new_state_changed), (gst_message_new_clock_provide),
(gst_message_new_new_clock), (gst_message_new_segment_start),
(gst_message_new_segment_done), (gst_message_parse_state_changed),
(gst_message_parse_clock_provide), (gst_message_parse_new_clock):
* gst/gstmessage.h:
Clean up.
Added clock related messages.

* gst/gstpipeline.c: (gst_pipeline_change_state):
Post message when the clock changed.

* tools/gst-launch.c: (event_loop):
Print new clock.
2005-10-08 12:36:36 +00:00
Thomas Vander Stichele
e1d580ab0e Makefile.am: remove include dir
Original commit message from CVS:

* Makefile.am:
remove include dir
* configure.ac:
remove PLUGINS_BUILDDIR stuff
* gst/gst.c: (init_post):
reorder parsing of GST_PLUGIN_PATH and GST_PLUGIN_SYSTEM_PATH
* idiottest.mak:
remove, it was condescending and not needed
2005-10-08 11:10:17 +00:00
Wim Taymans
d80f874fc8 gst/base/gstbasesink.*: Repost EOS message while going to PLAYING if still EOS.
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_flush),
(gst_base_sink_handle_object), (gst_base_sink_event),
(gst_base_sink_wait), (gst_base_sink_handle_event),
(gst_base_sink_change_state):
* gst/base/gstbasesink.h:
Repost EOS message while going to PLAYING if still EOS.
Make sure that when receiving a FLUSH_START we don't attempt
to sync on the clock anymore.
2005-10-08 09:58:30 +00:00
Wim Taymans
65006292ce gst/: Make ChildProxy threadsafe and fix mem leaks.
Original commit message from CVS:
* gst/gstbin.c: (gst_bin_child_proxy_get_child_by_index),
(gst_bin_child_proxy_get_children_count):
* gst/gstchildproxy.c: (gst_child_proxy_get_child_by_name),
(gst_child_proxy_lookup), (gst_child_proxy_get_property),
(gst_child_proxy_get_valist), (gst_child_proxy_set_property),
(gst_child_proxy_set_valist):
* gst/parse/grammar.y:
Make ChildProxy threadsafe and fix mem leaks.
2005-10-08 09:24:25 +00:00
Thomas Vander Stichele
9e539e0202 gst/gst.c: debug the GST_PLUGIN_ env vars
Original commit message from CVS:
* gst/gst.c: (init_post):
debug the GST_PLUGIN_ env vars
2005-10-08 09:09:55 +00:00
Wim Taymans
ce081d6341 Added extra field to STATE_CHANGE message with the pending state, which will be different from the new state soon.
Original commit message from CVS:
* check/gst/gstbin.c: (GST_START_TEST):
* check/gst/gstmessage.c: (GST_START_TEST):
* check/gst/gstpipeline.c: (GST_START_TEST), (message_received):
* gst/gstelement.c: (gst_element_commit_state),
(gst_element_lost_state):
* gst/gstmessage.c: (gst_message_new_state_changed),
(gst_message_parse_state_changed):
* gst/gstmessage.h:
* tools/gst-launch.c: (event_loop):
Added extra field to STATE_CHANGE message with the pending
state, which will be different from the new state soon.
2005-10-08 08:58:45 +00:00
Wim Taymans
8e213e710b gst/: Small cleanups and doc updates.
Original commit message from CVS:
* gst/gstbus.c: (gst_bus_pop):
* gst/gstclock.c:
* gst/gstsystemclock.c: (gst_system_clock_async_thread):
Small cleanups and doc updates.
2005-10-08 08:00:37 +00:00
Thomas Vander Stichele
80ca485dad gst/: log distributing clocks and base time
Original commit message from CVS:

* gst/gst.c: (init_pre):
* gst/gstbin.c: (gst_bin_add_func):
log distributing clocks and base time
* gst/gstregistry.c: (gst_registry_add_plugin),
(gst_registry_scan_path_level), (gst_registry_scan_path):
clean up the debugging output a little
* gst/gstutils.c: (gst_element_state_get_name):
warn about a memleak (I've actually seen this be used, though
it was probably a bug)
2005-10-08 06:49:09 +00:00
Wim Taymans
5a74215411 gst/base/gstbasesrc.*: Make the newsegment event customizable by subclasses.
Original commit message from CVS:
* gst/base/gstbasesrc.c: (gst_base_src_class_init),
(gst_base_src_init), (gst_base_src_default_newsegment),
(gst_base_src_newsegment), (gst_base_src_do_seek),
(gst_base_src_loop), (gst_base_src_start):
* gst/base/gstbasesrc.h:
Make the newsegment event customizable by subclasses.
2005-10-07 18:17:23 +00:00
Wim Taymans
c6ae655d0a gst/gstevent.*: New event for future idea.
Original commit message from CVS:
* gst/gstevent.c: (gst_event_new_buffersize),
(gst_event_parse_buffersize):
* gst/gstevent.h:
New event for future idea.
2005-10-07 18:02:14 +00:00
Andy Wingo
7fe57d86a0 gst/gstelement.c (gst_element_post_message): Doc update.
Original commit message from CVS:
2005-10-07  Andy Wingo  <wingo@pobox.com>

* gst/gstelement.c (gst_element_post_message): Doc update.
2005-10-07 16:28:56 +00:00
Andy Wingo
5ba9a47aaa docs/gst/gstreamer-sections.txt: Update.
Original commit message from CVS:
2005-10-07  Andy Wingo  <wingo@pobox.com>

* docs/gst/gstreamer-sections.txt: Update.

* gst/gstmessage.c (gst_message_new_application): Made into a
function like honest API calls.
(gst_message_new_element): New message type.

* gst/gstmessage.h (enum): Add GST_MESSAGE_ELEMENT type.
2005-10-07 16:13:51 +00:00
Thomas Vander Stichele
3976fb1c3e fdsrc does not build currently on win32 due to socketpair
Original commit message from CVS:
fdsrc does not build currently on win32 due to socketpair
2005-10-07 15:25:49 +00:00
Andy Wingo
ab96505bce check/elements/fakesrc.c (test_no_preroll): New check, checks that setting a live fakesrc to PAUSED returns NO_PREROL...
Original commit message from CVS:
2005-10-07  Andy Wingo  <wingo@pobox.com>

* check/elements/fakesrc.c (test_no_preroll): New check, checks
that setting a live fakesrc to PAUSED returns NO_PREROLL both
times.

* gst/base/gstbasesrc.c (gst_base_src_change_state): Allow a
NO_PREROLL from gst_element_change_state to fall through.
2005-10-07 15:22:38 +00:00
Wim Taymans
45867cc853 gst/gstghostpad.c: Activating a ghostpad with no internal pad in push mode is ok.
Original commit message from CVS:
* gst/gstghostpad.c: (gst_ghost_pad_get_internal),
(gst_ghost_pad_do_activate_push):
Activating a ghostpad with no internal pad in push mode
is ok.
2005-10-07 12:52:15 +00:00
Thomas Vander Stichele
100a96c969 gst/gstobject.h: there's no point in wrapping FLAG_SET/_UNSET in STMT macros.
Original commit message from CVS:

* gst/gstobject.h:
there's no point in wrapping FLAG_SET/_UNSET in STMT macros.
Fixes compilation on Windows.
2005-10-07 12:45:49 +00:00
Johan Dahlin
25a0f8c57f Add a GType to GstIterator, update callsites and tests.
Original commit message from CVS:
* check/gst/gstiterator.c: (GST_START_TEST):
* gst/gstbin.c: (gst_bin_iterate_elements),
(gst_bin_iterate_recurse), (gst_bin_iterate_sorted):
* gst/gstelement.c: (gst_element_iterate_pads):
* gst/gstformat.c: (gst_format_iterate_definitions):
* gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
(gst_iterator_new_list), (gst_iterator_filter):
* gst/gstiterator.h:
* gst/gstquery.c: (gst_query_type_iterate_definitions):
Add a GType to GstIterator, update callsites and tests.
2005-10-07 00:14:45 +00:00
Thomas Vander Stichele
2effd1018d initialize quarks
Original commit message from CVS:
initialize quarks
2005-10-06 14:20:15 +00:00
Thomas Vander Stichele
68e6852e0e gst/gstpad.c: give events a chance to be handled by event probes when the pad is not linked
Original commit message from CVS:

* gst/gstpad.c: (gst_pad_event_default_dispatch):
give events a chance to be handled by event probes when the pad
is not linked
2005-10-06 14:01:44 +00:00
Thomas Vander Stichele
37c3c87edb gst/gstevent.*: add string representations for event types
Original commit message from CVS:

* gst/gstevent.c: (gst_event_type_get_name),
(gst_event_type_to_quark), (gst_event_finalize), (gst_event_new):
* gst/gstevent.h:
add string representations for event types
2005-10-06 13:55:43 +00:00
Thomas Vander Stichele
c6f9c38da2 whitespace fixes
Original commit message from CVS:
whitespace fixes
2005-10-06 13:42:56 +00:00
Wim Taymans
cb64b2a586 gst/elements/gstfilesink.c: Don't use NULL pointers.
Original commit message from CVS:
* gst/elements/gstfilesink.c: (gst_file_sink_close_file):
Don't use NULL pointers.
2005-10-06 13:24:28 +00:00
Thomas Vander Stichele
93c6b88036 gst/: widen the debug category in output to fit the biggest one we have add a bus category and use it play with the c...
Original commit message from CVS:

* gst/gst_private.h:
* gst/gstbus.c:
* gst/gstelement.c:
* gst/gstinfo.c:
* gst/gstpluginfeature.c:
widen the debug category in output to fit the biggest one we have
add a bus category and use it
play with the colors
fix up some categories
2005-10-06 09:49:42 +00:00
Thomas Vander Stichele
f22af4c0bb gst/gstghostpad.c: add push activation of sink ghost pads.
Original commit message from CVS:
2005-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>

* gst/gstghostpad.c: (gst_ghost_pad_internal_do_activate_push):
add push activation of sink ghost pads.
Andye, please verify
2005-10-06 07:13:01 +00:00
Thomas Vander Stichele
6eb5fb3112 doc updates
Original commit message from CVS:
doc updates
2005-10-05 22:35:14 +00:00
Thomas Vander Stichele
8b0f1ffe11 gst/gstutils.c: fix a bug in the case where neither element has a pad
Original commit message from CVS:
* gst/gstutils.c: (gst_element_link_pads):
fix a bug in the case where neither element has a pad
* check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
add a test for that case
2005-10-05 21:34:42 +00:00
Thomas Vander Stichele
06c7f2231b gst/gstpad.c: emit have-data before checking for peers. This allows for probe handlers to connect elements. This he...
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_push), (gst_pad_push_event):
emit have-data before checking for peers.  This allows
for probe handlers to connect elements.  This helps autopluggers.
* check/gst/gstpad.c: (GST_START_TEST), (_probe_handler),
(gst_pad_suite):
add six checks, linked/unlinked with no/true/false probe
2005-10-05 16:16:58 +00:00
Thomas Vander Stichele
593cdc30dd indent ifdefs
Original commit message from CVS:
indent ifdefs
2005-10-05 11:50:49 +00:00
Wim Taymans
aabe6fe013 gst/elements/: Protect last_message with lock.
Original commit message from CVS:
* gst/elements/gstfakesink.c: (gst_fake_sink_get_property),
(gst_fake_sink_event), (gst_fake_sink_preroll),
(gst_fake_sink_render), (gst_fake_sink_change_state):
* gst/elements/gstfakesrc.c: (gst_fake_src_event_handler),
(gst_fake_src_get_property), (gst_fake_src_create),
(gst_fake_src_stop):
* gst/elements/gstidentity.c: (gst_identity_stop):
Protect last_message with lock.
2005-10-04 18:46:09 +00:00
Edward Hervey
c07a5da265 gst/gstformat.h: Added precision in the comments for GST_FORMAT_DEFAULT
Original commit message from CVS:
* gst/gstformat.h:
Added precision in the comments for GST_FORMAT_DEFAULT
2005-10-04 15:04:50 +00:00
Michael Smith
35188bbe39 gst/gsterror.c: Add another error string used in a few existing plugins.
Original commit message from CVS:
* gst/gsterror.c: (_gst_stream_errors_init):
Add another error string used in a few existing plugins.

* gst/gstplugin.c:
* gst/gstpluginfeature.c: (gst_plugin_feature_load):
* tools/gst-inspect.c: (print_element_info):
When a feature disappears from a plugin (and the feature exists in
the cached registry file), things went horribly wrong. This isn't a
complete fix, we should actually be removing the 'missing' features
from the features list when we load the actual plugin. That's not
yet implemented.
2005-10-04 11:10:04 +00:00
Julien Moutte
0a55c5f642 gst/gstbus.c: We don't need this header.
Original commit message from CVS:
2005-10-04  Julien MOUTTE  <julien@moutte.net>

* gst/gstbus.c: We don't need this header.
2005-10-04 11:09:41 +00:00
Andy Wingo
60f3c2b541 gst/gstpad.c (gst_pad_activate_push): There is a race condition whereby calling a pad's activatepush() function can s...
Original commit message from CVS:
2005-10-03  Andy Wingo  <wingo@pobox.com>

* gst/gstpad.c (gst_pad_activate_push): There is a race condition
whereby calling a pad's activatepush() function can start a thread
that starts to push or pull before the pad gets the FLUSHING flag
unset. Hack around it by holding the stream lock until the flag is
set. Need to replace this with a proper solution. Together with
the ghost pad fixes, this fixes mp3 playing/tagreading.
2005-10-02 23:24:25 +00:00
Andy Wingo
9d28c696bd docs/design/part-gstghostpad.txt: Add a note about activation of proxy pads outside of ghost pads.
Original commit message from CVS:
2005-10-03  Andy Wingo  <wingo@pobox.com>

* docs/design/part-gstghostpad.txt: Add a note about activation of
proxy pads outside of ghost pads.

* gst/gstghostpad.c: Implement the ghost pad activation design.
2005-10-02 23:20:26 +00:00
Andy Wingo
381006822b gst/gstobject.h (GST_OBJECT_REFCOUNT_VALUE): Just use the int.
Original commit message from CVS:
2005-10-02  Andy Wingo  <wingo@pobox.com>

* gst/gstobject.h (GST_OBJECT_REFCOUNT_VALUE): Just use the int.
It is volatile, after all.

* docs/design/part-gstghostpad.txt: Flesh out activation with
ghost pads.

* gst/base/gstbasesrc.c (gst_base_src_init): Use
GST_DEBUG_FUNCPTR.
2005-10-02 18:57:07 +00:00
Tim-Philipp Müller
5b5e1702fe gst/gstutils.c: Add assertion that makes sure src_val is >=0, just like gst_query_new_convert() has. (#315895)
Original commit message from CVS:
Reviewed by: Tim-Philipp Müller  <tim at centricular dot net>
* gst/gstutils.c: (gst_pad_query_convert):
Add assertion that makes sure src_val is >=0, just like
gst_query_new_convert() has. (#315895)
2005-10-01 17:11:07 +00:00
Edward Hervey
6fcaf333b1 gst/elements/gsttee.c: Let's not iterate pads we're not interested in, it avoids getting sky-high refcounts on sinkpad.
Original commit message from CVS:
* gst/elements/gsttee.c: (gst_tee_do_push), (gst_tee_handle_buffer):
Let's not iterate pads we're not interested in, it avoids getting
sky-high refcounts on sinkpad.
2005-09-30 15:43:03 +00:00
Wim Taymans
93823de17e gst/gstelement.c: Small tweak, element in ASYNC remains ASYNC.
Original commit message from CVS:
* gst/gstelement.c: (gst_element_set_state),
(gst_element_change_state):
Small tweak, element in ASYNC remains ASYNC.
2005-09-30 08:29:02 +00:00
Wim Taymans
2d3e9f6438 gst/base/gstbasesink.c: Only error is an error.
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_base_sink_change_state):
Only error is an error.

* gst/gstbin.c: (gst_bin_change_state):
Better debugging.

* gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_chain):
Also call pad_block in pad alloc.

* gst/gstutils.c: (gst_flow_get_name):
Better debugging.
2005-09-30 08:00:12 +00:00
Tim-Philipp Müller
428cf34142 gst/base/gstbasesrc.c: Fix documentation typos. Add some more debug info.
Original commit message from CVS:
* gst/base/gstbasesrc.c: (gst_base_src_class_init),
(gst_base_src_get_range):
Fix documentation typos. Add some more debug info.
2005-09-29 20:26:12 +00:00
David Schleef
1ba0964a87 gst/gstplugin.c: Make some error messages more end-user friendly.
Original commit message from CVS:
* gst/gstplugin.c: (gst_plugin_load_file): Make some error messages
more end-user friendly.
* tools/gst-inspect.c: (main): Check if command-line argument is
a file and attempt to load that file as a plugin.
2005-09-29 19:45:27 +00:00
Thomas Vander Stichele
18682cacc1 check/: fix tests for the new warning
Original commit message from CVS:

* check/gst/gstbin.c:
* check/states/sinks.c:
fix tests for the new warning
* check/gst/gstpipeline.c:
add a test for pipeline and bus interaction
* gst/gstelement.c:
elements should be NULL if they get disposed; add a warning if not
2005-09-29 18:37:48 +00:00
Thomas Vander Stichele
91e8b0bb91 gst/gstobject.c: for 2.6 refcounting, make debug log more correct by printing the actual refcounts at the time of swa...
Original commit message from CVS:

* gst/gstobject.c:
for 2.6 refcounting, make debug log more correct by printing
the actual refcounts at the time of swap (Wim)
2005-09-29 18:35:38 +00:00
Thomas Vander Stichele
8c2deca31b use message type names
Original commit message from CVS:
use message type names
2005-09-29 18:25:50 +00:00
Andy Wingo
410315b375 gst/gstbus.c (gst_bus_remove_signal_watch): New function, removes signal watches previously added via gst_bus_add_sig...
Original commit message from CVS:
2005-09-29  Andy Wingo  <wingo@pobox.com>

* gst/gstbus.c (gst_bus_remove_signal_watch): New function,
removes signal watches previously added via
gst_bus_add_signal_watch.
(gst_bus_add_signal_watch): Don't return the source id, just store
it on the bus if there wasn't an id already.

* gst/gstbus.h (GstBus): Add a couple new fields. API changes for
add_signal_watch and remove_signal_watch.
2005-09-29 16:04:31 +00:00
Wim Taymans
4d6a030306 check/gst/gstbin.c: Change for new bus API.
Original commit message from CVS:
* check/gst/gstbin.c: (GST_START_TEST):
Change for new bus API.

* check/gst/gstbus.c: (message_func_eos), (message_func_app),
(send_messages), (GST_START_TEST), (gstbus_suite):
Change for new bus signal API.

* gst/gstbus.c: (gst_bus_class_init), (gst_bus_have_pending),
(gst_bus_source_prepare), (gst_bus_source_check),
(gst_bus_create_watch), (gst_bus_add_watch_full),
(gst_bus_add_watch), (gst_bus_poll), (gst_bus_async_signal_func),
(gst_bus_sync_signal_handler), (gst_bus_add_signal_watch):
* gst/gstbus.h:
Remove support for multiple GSources operating on different
message types as it is too complex and unneeded when using
signals.
Added support for receiving signals from the bus.
2005-09-29 13:07:37 +00:00
Thomas Vander Stichele
482d36244d rename filter-caps to caps property
Original commit message from CVS:

* docs/libs/tmpl/gstdataprotocol.sgml:
* docs/manual/advanced-dataaccess.xml:
* gst/elements/gstcapsfilter.c:
* gst/gstutils.c:
rename filter-caps to caps property
2005-09-29 12:37:38 +00:00
Tim-Philipp Müller
fa0afcafb4 gst/gstvalue.c: More robust fraction string parsing.
Original commit message from CVS:
* gst/gstvalue.c: (gst_value_deserialize_fraction):
More robust fraction string parsing.
* docs/pwg/appendix-porting.xml:
Mention gst_pad_use_explicit_caps() => gst_pad_use_fixed_caps()
2005-09-29 12:05:51 +00:00
Tim-Philipp Müller
356893d5f8 gst/gstcaps.c: Thou shalt not free a structure and then continue using it in the next loop iteration.
Original commit message from CVS:
* gst/gstcaps.c: (gst_caps_do_simplify):
Thou shalt not free a structure and then continue using it
in the next loop iteration.
* check/gst/gstcaps.c: (check_fourcc_list), (test_simplify),
(gst_caps_suite):
Add test case for caps simplification.
2005-09-29 10:56:57 +00:00
Wim Taymans
92836e5172 check/gst/gstbin.c: Add bus to bin.
Original commit message from CVS:
* check/gst/gstbin.c: (GST_START_TEST):
Add bus to bin.

* gst/gstbin.c: (gst_bin_class_init), (gst_bin_init),
(add_to_queue), (clear_queue), (reset_degree), (update_degree),
(find_element), (gst_bin_sort_iterator_next),
(gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
(gst_bin_iterate_sorted), (gst_bin_element_set_state),
(gst_bin_change_state), (gst_bin_dispose):
A bin does not have a bus, it gets the bus from the parent.

* gst/gstelement.c: (gst_element_requires_clock),
(gst_element_provides_clock), (gst_element_is_indexable),
(gst_element_is_locked_state), (gst_element_change_state),
(gst_element_set_bus_func):
Small cleanups.

* gst/gstpipeline.c: (gst_pipeline_class_init),
(gst_pipeline_init), (gst_pipeline_provide_clock_func):
The pipeline provides a bus.
2005-09-29 09:39:36 +00:00
Johan Dahlin
d52d4b4a4d gst/gstmessage.c (gst_message_parse_state_changed): Use gst_structure_get_enum instead of gst_structure_get_int
Original commit message from CVS:
* gst/gstmessage.c (gst_message_parse_state_changed): Use
gst_structure_get_enum instead of gst_structure_get_int

* gst/gststructure.c (gst_structure_get_enum): Impl.

* gst/gststructure.h (gst_structure_get_enum): Add

* docs/gst/gstreamer-sections.txt: Ditto
2005-09-29 02:32:37 +00:00
Johan Dahlin
bdb214775d gst/gstmessage.c (gst_message_new_state_changed): Use
Original commit message from CVS:
* gst/gstmessage.c (gst_message_new_state_changed): Use
GST_TYPE_STATE instead of G_TYPE_INT, mainly for language bindings
which does introspection.
Reviewed by Christian Schaller
2005-09-29 01:57:00 +00:00
Stefan Kost
e37803d652 gst/gstinfo.c: don't do dummy g_strdup()s
Original commit message from CVS:
* gst/gstinfo.c: (gst_debug_log_default):
don't do dummy g_strdup()s
* libs/gst/controller/gstcontroller.c:
(on_object_controlled_property_changed),
(gst_controlled_property_new), (gst_controller_new_valist),
(gst_controller_new_list),
(gst_controller_remove_properties_valist), (gst_controller_set),
(gst_controller_get), (gst_controller_sync_values),
(gst_controller_get_value_array), (_gst_controller_class_init),
(gst_controller_get_type):
* libs/gst/controller/gstcontroller.h:
* libs/gst/controller/gstinterpolation.c:
(gst_controlled_property_find_timed_value_node):
convert // to /**/ comments
2005-09-28 17:30:13 +00:00
Wim Taymans
bf443a4639 gst/gstbus.*: Added async-message and sync-message signals to the bus.
Original commit message from CVS:
* gst/gstbus.c: (marshal_VOID__MINIOBJECT), (gst_bus_class_init),
(gst_bus_post), (poll_func), (gst_bus_async_signal_func),
(gst_bus_sync_signal_handler):
* gst/gstbus.h:
Added async-message and sync-message signals to the bus.
Added helper BusFunc to emit signals for all posted messages.

* gst/gstmessage.c: (gst_message_type_get_name),
(gst_message_type_to_quark), (gst_message_get_type):
* gst/gstmessage.h:
Register quarks for message names.
2005-09-28 16:43:20 +00:00
Thomas Vander Stichele
5ae3bc47ec check/gst/gstpipeline.c: add another check
Original commit message from CVS:

* check/gst/gstpipeline.c: (GST_START_TEST), (gst_pipeline_suite):
add another check
* gst/gstbus.c:
add some doc
* gst/gstinfo.c: (_gst_debug_init):
slightly more readable color for refcount debugging
2005-09-28 15:45:21 +00:00
Wim Taymans
de789ca484 gst/gstbin.c: Small doc fixes. get_clock -> provide_clock.
Original commit message from CVS:
* gst/gstbin.c: (gst_bin_class_init), (gst_bin_provide_clock_func),
(add_to_queue), (clear_queue), (reset_degree), (update_degree),
(find_element), (gst_bin_sort_iterator_next),
(gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
(gst_bin_iterate_sorted), (gst_bin_element_set_state),
(gst_bin_change_state), (gst_bin_dispose):
Small doc fixes. get_clock -> provide_clock.

* gst/gstelement.c: (gst_element_class_init),
(gst_element_provides_clock), (gst_element_provide_clock),
(gst_element_get_clock), (gst_element_commit_state),
(gst_element_lost_state):
* gst/gstelement.h:
Make get/set_clock() symetric. Add provide_clock vmethod since
that is actually what this function does.

* gst/gstpipeline.c: (gst_pipeline_class_init),
(gst_pipeline_change_state), (gst_pipeline_provide_clock_func),
(gst_pipeline_get_clock):
get_clock -> provide_clock.
2005-09-28 13:41:27 +00:00
Andy Wingo
5111420fa2 gst/base/gstbasesrc.c (gst_base_src_unlock): Comment a bit in lieu of real docs...
Original commit message from CVS:
2005-09-28  Andy Wingo  <wingo@pobox.com>

* gst/base/gstbasesrc.c (gst_base_src_unlock): Comment a bit in
lieu of real docs...

* gst/elements/gstfdsrc.c: Cleaned up a bit.
2005-09-28 13:05:12 +00:00
Tim-Philipp Müller
99d855fdc9 gst/elements/: Make element details static.
Original commit message from CVS:
* gst/elements/gstcapsfilter.c:
* gst/elements/gstfakesink.c:
* gst/elements/gstfakesrc.c:
* gst/elements/gstfdsink.c:
* gst/elements/gstfdsrc.c:
* gst/elements/gstfilesink.c:
* gst/elements/gstfilesrc.c:
* gst/elements/gstidentity.c:
* gst/elements/gsttee.c:
* gst/elements/gsttypefindelement.c:
Make element details static.
2005-09-28 12:52:51 +00:00
Wim Taymans
cacb844d6f gst/gstbin.c: Some documentation updates.
Original commit message from CVS:
* gst/gstbin.c: (add_to_queue), (clear_queue), (reset_outdegree),
(update_outdegree), (find_element), (gst_bin_sort_iterator_next),
(gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
(gst_bin_iterate_sorted), (gst_bin_element_set_state),
(gst_bin_change_state), (gst_bin_dispose):
Some documentation updates.
Clean up dispose handlers.

* gst/gstobject.c: (gst_object_ref), (gst_object_unref):
* gst/gstpad.c: (gst_pad_dispose):
Clean up dispose handler.

* gst/gstpipeline.c: (gst_pipeline_change_state):
Removed spurious UNLOCK.
2005-09-28 11:03:58 +00:00
Stefan Kost
6de84a3d83 added two new functions to the docs documents all undocumented GstXXXFlags completed some incomplete docs
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* gst/base/gstbasesrc.h:
* gst/gstelement.h:
* gst/gstevent.h:
* gst/gstobject.h:
* gst/gstpad.h:
* gst/gstpipeline.c:
* gst/gstpipeline.h:
* gst/gstutils.h:
* gst/gstxml.h:
added two new functions to the docs
documents all undocumented GstXXXFlags
completed some incomplete docs
2005-09-27 20:40:35 +00:00
Thomas Vander Stichele
daadaad81b gst/: remove now useless and leaky resurrection code in dispose
Original commit message from CVS:

* gst/gstbin.c: (gst_bin_dispose):
* gst/gstelement.c: (gst_element_dispose):
remove now useless and leaky resurrection code in dispose
* gst/base/gstbasesrc.c: (gst_base_src_init):
* gst/gstelementfactory.c: (gst_element_factory_create):
* gst/gstobject.c: (gst_object_set_parent):
add some debugging
2005-09-27 18:33:48 +00:00
Wim Taymans
1da84c7e67 docs/design/part-TODO.txt: Update TODO.
Original commit message from CVS:
* docs/design/part-TODO.txt:
Update TODO.

* gst/gstbin.c: (add_to_queue), (clear_queue), (reset_outdegree),
(update_outdegree), (find_element), (gst_bin_sort_iterator_next),
(gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
(gst_bin_iterate_sorted), (gst_bin_element_set_state),
(gst_bin_change_state):
* gst/gstelement.h:
Remove element variable, we keep element info in the iterator now.
2005-09-27 17:00:13 +00:00
Wim Taymans
4d4a60f6c9 check/gst/gstbin.c: Enable check that works now.
Original commit message from CVS:
* check/gst/gstbin.c: (GST_START_TEST):
Enable check that works now.

* gst/gstbin.c: (add_to_queue), (clear_queue), (reset_outdegree),
(update_outdegree), (find_element), (gst_bin_sort_iterator_next),
(gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
(gst_bin_iterate_sorted), (gst_bin_element_set_state),
(gst_bin_change_state):
* gst/gstbin.h:
Redid the state change algorithm using a topological sort algo.
Handles all cases correctly.
Exposed iterator for state change order.

* gst/gstelement.h:
Temp storage for state changes. Need to get rid of this soon.
2005-09-27 16:16:39 +00:00
Wim Taymans
590a0cfb57 gst/: Leak fixes, the fold functions need to unref the passed object and _get_parent_*() returns ref to parent.
Original commit message from CVS:
* gst/elements/gsttee.c: (gst_tee_init), (gst_tee_do_push):
* gst/gstutils.c: (intersect_caps_func), (gst_pad_proxy_getcaps),
(link_fold_func), (gst_pad_proxy_setcaps):
Leak fixes, the fold functions need to unref the passed object and
_get_parent_*() returns ref to parent.
2005-09-27 15:37:40 +00:00
Tim-Philipp Müller
246fee258f gst/gstbuffer.c: Set READONLY flag on subbuffers, so that gst_buffer_make_writable() works correctly in all circumsta...
Original commit message from CVS:
* gst/gstbuffer.c: (gst_subbuffer_init):
Set READONLY flag on subbuffers, so that gst_buffer_make_writable()
works correctly in all circumstances (we could have just copied
the parent buffer's readonly flag, but conceptually it seems
cleaner to mark all subbuffers as read-only). (based on patch
by Alessandro Decina, #314710).
* check/gst/gstbuffer.c: (create_read_only_buffer),
(test_make_writable), (test_subbuffer_make_writable),
(gst_test_suite):
Add some tests for gst_buffer_make_writable().
2005-09-27 13:07:14 +00:00
Wim Taymans
01085fa26a gst/gstbin.c: use gst_object_has_ancestor().
Original commit message from CVS:
* gst/gstbin.c: (bin_element_is_semi_sink), (gst_bin_change_state):
use gst_object_has_ancestor().

* gst/gstobject.c: (gst_object_has_ancestor):
* gst/gstobject.h:
gst_object_has_ancestor() copied from gstbin.c as it is a
usefull function.

* tests/instantiate/create.c: (create_all_elements):
* tests/lat.c: (handoff_src), (handoff_sink):
* tests/sched/runxml.c: (main):
* tests/seeking/seeking1.c: (main):
* tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
(main):
Fix compilation of some tests.
2005-09-27 09:57:20 +00:00
Tim-Philipp Müller
f9a16f0ac7 gst/gsterror.h: Remove comment. GST_TYPE_G_ERROR is here to stay,
Original commit message from CVS:
* gst/gsterror.h:
Remove comment. GST_TYPE_G_ERROR is here to stay,
G_TYPE_ERROR has been WONTFIX'ed by the GLib folks
(#316961, #300610).
2005-09-27 09:29:04 +00:00
Wim Taymans
e32e0a17ed gst/gstbin.c: Make state change function use 3 queues again, we were adding elements in the wrong order.
Original commit message from CVS:
* gst/gstbin.c: (gst_bin_change_state):
Make state change function use 3 queues again, we were
adding elements in the wrong order.

* gst/gstghostpad.c: (gst_ghost_pad_do_unlink):
Some debug info,

* gst/gstpad.c: (gst_pad_dispose):
Added some debug info first.
2005-09-26 17:46:27 +00:00
Andy Wingo
7e27440c9e try the fourth
Original commit message from CVS:
try the fourth
2005-09-26 16:19:27 +00:00
Andy Wingo
a62823e0c9 foo
Original commit message from CVS:
foo
2005-09-26 16:12:07 +00:00
Andy Wingo
eab3bde7af gst/gstvalue.c (_gst_value_initialize): Better fakeout.
Original commit message from CVS:
2005-09-26  Andy Wingo  <wingo@pobox.com>

* gst/gstvalue.c (_gst_value_initialize): Better fakeout.
2005-09-26 16:07:54 +00:00
Andy Wingo
2f46ef713d Remove memchunk benchmark stuff, this is taken over by GLib bug 118439.
Original commit message from CVS:
2005-09-26  Andy Wingo  <wingo@pobox.com>

* configure.ac:
* tests/Makefile.am:
* tests/memchunk: Remove memchunk benchmark stuff, this is taken
over by GLib bug 118439.

* gst/base/gstbasesink.c (gst_base_sink_wait): Factor out the wait
routines to a function.

* docs/libs/gstreamer-libs-sections.txt: I am a good person today.

* libs/gst/controller/gsthelper.c:
* libs/gst/controller/gstcontroller.h (gst_controller_sync_values)
(gst_object_sync_values): Renamed from sink_values. Ugh.

* libs/gst/controller/gsthelper.c: Update for __gst_controller_key.

* libs/gst/controller/gstcontroller.c (__gst_controller_key):
Renamed from controller_key, as it is exported.

* gst/gstvalue.c (_gst_value_initialize): Fake out the compiler.
2005-09-26 15:43:30 +00:00
Thomas Vander Stichele
b98900a0a0 remove queryutils headers after moving the two used functions to gstquery. also fixes build problem for gstsiddec
Original commit message from CVS:
remove queryutils headers after moving the two used functions
to gstquery.  also fixes build problem for gstsiddec
2005-09-26 15:03:43 +00:00
Wim Taymans
dade05062a gst/base/gstbasesrc.c: Some more debugging info.
Original commit message from CVS:
* gst/base/gstbasesrc.c: (gst_base_src_get_range),
(gst_base_src_is_seekable), (gst_base_src_change_state):
Some more debugging info.
2005-09-26 11:21:42 +00:00
Stefan Kost
2a7a17ce2b added more docs
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* gst/base/gstbasetransform.h:
* gst/gstindex.h:
added more docs
2005-09-25 18:34:49 +00:00
Stefan Kost
788bac107d inlined the last two docs files removed the tmpl directory from cvs (no more conflicts here!)
Original commit message from CVS:
* docs/gst/.cvsignore:
* docs/gst/tmpl/.cvsignore:
* docs/gst/tmpl/gstpipeline.sgml:
* docs/gst/tmpl/gstplugin.sgml:
* gst/gstpipeline.c:
* gst/gstplugin.c:
* gst/gstplugin.h:
inlined the last two docs files
removed the tmpl directory from cvs (no more conflicts here!)
2005-09-25 12:11:39 +00:00
Stefan Kost
41aca72772 inlined two more docs factored gstpadtemplate out of gstpad
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* docs/gst/tmpl/.cvsignore:
* docs/gst/tmpl/gstpad.sgml:
* docs/gst/tmpl/gstpadtemplate.sgml:
* gst/Makefile.am:
* gst/gstpad.c: (gst_pad_class_init), (gst_pad_dispose),
(gst_pad_finalize), (gst_pad_set_pad_template):
* gst/gstpad.h:
* gst/gstpadtemplate.c: (gst_pad_template_get_type),
(gst_pad_template_class_init), (gst_pad_template_init),
(gst_pad_template_dispose), (name_is_valid),
(gst_static_pad_template_get), (gst_pad_template_new),
(gst_static_pad_template_get_caps), (gst_pad_template_get_caps),
(gst_pad_template_pad_created):
* gst/gstpadtemplate.h:
inlined two more docs
factored gstpadtemplate out of gstpad
2005-09-25 11:19:22 +00:00
Wim Taymans
84770e8437 Various documentation updates.
Original commit message from CVS:
* docs/design/part-events.txt:
* docs/design/part-gstbus.txt:
* docs/design/part-gstpipeline.txt:
* docs/design/part-messages.txt:
* docs/design/part-overview.txt:
* docs/design/part-segments.txt:
* gst/gstbin.c:
* gst/gstbuffer.c:
* gst/gstclock.c:
* gst/gstelement.c:
* gst/gstevent.c:
* gst/gstfilter.c:
* gst/gstiterator.c:
Various documentation updates.
2005-09-24 14:14:03 +00:00
Thomas Vander Stichele
be19f39e5c gst/gstclock.h: Well, that's embarassing. Luckily we weren't using
Original commit message from CVS:
* gst/gstclock.h:
Well, that's embarassing.  Luckily we weren't using
GST_CLOCK_DIFF anywhere.
2005-09-24 11:41:01 +00:00
Thomas Vander Stichele
446ddc915f common/gtk-doc.mak: don't fail on building XML, FC4 slave shows a bunch of doc missing bits that I don't get
Original commit message from CVS:

* common/gtk-doc.mak:
don't fail on building XML, FC4 slave shows a bunch of doc
missing bits that I don't get
* gst/gstpad.c:
* gst/gstpipeline.c:
* gst/gststructure.c:
some doc updates
2005-09-23 18:08:59 +00:00
Tim-Philipp Müller
2c202f9120 Add blurb about how the bus goes into flushing mode and drops all messages when its bin goes from READY into NULL state.
Original commit message from CVS:
* docs/design/part-gstbin.txt:
* docs/design/part-gstbus.txt:
* gst/gstbus.c:
Add blurb about how the bus goes into flushing mode and
drops all messages when its bin goes from READY into NULL
state.
2005-09-23 18:02:18 +00:00
Thomas Vander Stichele
3694e3b45c add a method to get a GstClockTime out of a structure
Original commit message from CVS:

* docs/gst/gstreamer-sections.txt:
* gst/gststructure.c: (gst_structure_get_clock_time):
* gst/gststructure.h:
add a method to get a GstClockTime out of a structure
2005-09-23 17:46:06 +00:00
Tim-Philipp Müller
705936d1bf check/gst/gstbin.c: Added test to check state change order in bins (can still be made to fail here under heavy disk l...
Original commit message from CVS:
* check/gst/gstbin.c: (test_children_state_change_order_flagged_sink),
(test_children_state_change_order_semi_sink), (gst_bin_suite):
Added test to check state change order in bins (can still be made
to fail here under heavy disk load; bails out with 'Push on pad
fakesink:sink0, but it was not activated in push mode').
* gst/gstbin.c: (gst_bin_class_init), (gst_bin_change_state):
Fix state change order when there is only a semi sink (#316856)
* gst/gstbus.c: (gst_bus_class_init):
Use _class_peek_parent(), not _class_ref(); fix docs to say
'default main context' instead of 'mainloop' where that is
what's meant.
* gst/gstelement.c: (gst_element_commit_state),
(gst_element_set_state):
Fix typos in debug messages
2005-09-23 17:17:42 +00:00
Thomas Vander Stichele
f74399ea55 fix docs
Original commit message from CVS:
fix docs
2005-09-23 16:35:43 +00:00
Thomas Vander Stichele
eb06116c2f don't break docs build
Original commit message from CVS:
don't break docs build
2005-09-23 15:48:14 +00:00
Thomas Vander Stichele
3f519e30e9 various doc updates
Original commit message from CVS:

* docs/README:
* gst/gstpad.c: (gst_pad_class_init), (gst_pad_chain):
* gst/gstpluginfeature.c:
* gst/gstutils.c:
various doc updates
* gst/base/gstbasesink.c: (gst_base_sink_handle_object):
change an assert into an error until it gets fixed properly
2005-09-23 15:36:28 +00:00
Stefan Kost
5afb6e6809 inlined 3 more biiiig doc files and added some missing docs on the fly
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* docs/gst/tmpl/.cvsignore:
* docs/gst/tmpl/gstelement.sgml:
* docs/gst/tmpl/gstinfo.sgml:
* docs/gst/tmpl/gstobject.sgml:
* gst/gstelement.c:
* gst/gstelement.h:
* gst/gstinfo.c:
* gst/gstinfo.h:
* gst/gstobject.c: (gst_object_class_init):
* gst/gstobject.h:
inlined 3 more biiiig doc files and added some missing docs on the fly
2005-09-23 14:31:21 +00:00
Thomas Vander Stichele
6570aadc78 put back source in registry. add checks for find_plugin.
Original commit message from CVS:

* check/gst/.cvsignore:
* check/gst/gstplugin.c: (GST_START_TEST), (gst_plugin_suite):
* gst/gstregistryxml.c: (load_plugin),
(gst_registry_xml_save_plugin):
put back source in registry.  add checks for find_plugin.
* testsuite/states/bin.c: (assert_state), (empty_bin),
(test_adding_one_element), (main):
* testsuite/states/locked.c: (main):
some compile/run fixes
2005-09-23 11:41:30 +00:00
Wim Taymans
43c8433a07 gst/base/gstbasesink.c: Prepare for more accurate position reporting and query handling.
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_base_sink_class_init),
(gst_base_sink_send_event), (gst_base_sink_peer_query),
(gst_base_sink_query):
Prepare for more accurate position reporting and query
handling.

* gst/gstelement.c: (gst_element_send_event),
(gst_element_set_state):
Add some comment.
2005-09-22 18:07:22 +00:00
Wim Taymans
1901cd0471 gst/gstquery.*: More documentation.
Original commit message from CVS:
* gst/gstquery.c: (gst_query_new_segment), (gst_query_set_segment),
(gst_query_parse_segment):
* gst/gstquery.h:
More documentation.
Add segment query for future use.
2005-09-22 17:40:42 +00:00
Wim Taymans
4793bc208d gst/gstbin.c: Some more debug info.
Original commit message from CVS:
* gst/gstbin.c: (gst_bin_add_func):
Some more debug info.

* gst/gstelement.c: (gst_element_send_event):
Simplify send_event

* gst/gstelement.h:
Don't know how flags got broken.

* gst/gstquery.h:
Added new query.
2005-09-22 16:51:27 +00:00
Tim-Philipp Müller
7390d68eee Add GST_TYPE_DATE, a boxed type that wraps GDate, and the usual bunch of utility functions along with a hack that che...
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* gst/gststructure.c: (gst_structure_set_valist),
(gst_structure_get_date):
* gst/gststructure.h:
* gst/gstvalue.c: (gst_value_set_date), (gst_value_get_date),
(gst_date_copy), (gst_value_compare_date),
(gst_value_serialize_date), (gst_value_deserialize_date),
(gst_value_transform_date_string),
(gst_value_transform_string_date), (_gst_value_initialize):
* gst/gstvalue.h:
Add GST_TYPE_DATE, a boxed type that wraps GDate, and the usual
bunch of utility functions along with a hack that checks that
developers don't accidentally use G_TYPE_DATE where GST_TYPE_DATE
is required. Part of the grand scheme in #170777.
2005-09-22 15:08:02 +00:00
Andy Wingo
59479d47a3 gst/gstconfig.h.in: Psych out gtk-doc.
Original commit message from CVS:
2005-09-22  Andy Wingo  <wingo@pobox.com>

* gst/gstconfig.h.in: Psych out gtk-doc.

* docs/gst/gstreamer-sections.txt: Add GST_HAVE_GLIB_2_8.

* check/Makefile.am (check_PROGRAMS): Add gstplugin to the tests.

* tools/gst-inspect.c (print_element_list): Plug some
inconsequential leaks.

* gst/gstregistry.c (gst_registry_get_default): Doc.

* gst/gsttypefindfactory.c (gst_type_find_factory_call_function):
* gst/gstelementfactory.c (gst_element_factory_create):
* gst/gstindexfactory.c (gst_index_factory_create): Update for
refcount changes.

* gst/gstpluginfeature.c (gst_plugin_feature_list_free): Doc.
(gst_plugin_feature_load): Doc, don't eat refs.

* gst/gstplugin.c (gst_plugin_load): Doc, don't eat refs.
(gst_plugin_list_free): Doc.
(gst_plugin_load_file): Doc updates.
2005-09-22 12:05:05 +00:00
Andy Wingo
54a2e06698 gst/gstbuffer.c (gst_buffer_get_caps): Like all our _get accessors returning refcounted objects, return a ref.
Original commit message from CVS:
2005-09-22  Andy Wingo  <wingo@pobox.com>

* gst/gstbuffer.c (gst_buffer_get_caps): Like all our _get
accessors returning refcounted objects, return a ref.

* check/gst/gstbuffer.c (GST_START_TEST): Use refcount-idempotent
accessor for caps. IDEMPOTENCE. Oh yes.
2005-09-22 09:30:41 +00:00
Tim-Philipp Müller
b907cd9815 gst/gstinfo.c: Add mutex to serialise access to the hash table with the function pointer => function name string mapp...
Original commit message from CVS:
Reviewed by: Tim-Philipp Müller  <tim at centricular dot net>
* gst/gstinfo.c: (_gst_debug_nameof_funcptr),
(_gst_debug_register_funcptr):
Add mutex to serialise access to the hash table with
the function pointer => function name string mapping;
make that hash table static scope (#316809).
* gst/registries/.cvsignore:
Remove left-over file.
2005-09-21 21:39:06 +00:00
Andy Wingo
5b77a67125 check/gst/gstutils.c: New file.
Original commit message from CVS:
2005-09-21  Andy Wingo  <wingo@pobox.com>

* check/gst/gstutils.c: New file.
(test_buffer_probe_n_times): A simple buffer probe test. More to
come, foolios.

* gst/gstutils.c (gst_pad_add_buffer_probe): Connect to
have-data::buffer, not have-data.
(gst_pad_add_event_probe): Likewise for have-data::event.
(gst_pad_add_data_probe): More docs. The part about 'resolving the
peer' isn't quite right yet though.
(gst_pad_remove_buffer_probe, gst_pad_remove_event_probe)
(gst_pad_remove_data_probe): Change to take the guint handler_id
as their arg, not the function+data, which is more glib-like.

* gst/gstpad.c (gst_pad_emit_have_data_signal): Add a detail to
the signal emission to indicate if the data is a buffer or an
event.
(gst_pad_get_type): Initialize buffer and event quarks.
(gst_pad_class_init): have-data is now a detailed signal, yes it
is.
2005-09-21 12:21:10 +00:00
Tim-Philipp Müller
9894c90109 gst/: Don't put functional code in g_return_if_fail() or g_return_val_if_fail() statements, otherwise things will bre...
Original commit message from CVS:
* gst/base/gstbasetransform.c: (gst_base_transform_transform_size):
* gst/gstutils.c: (gst_util_set_value_from_string),
(gst_util_set_object_arg):
Don't put functional code in g_return_if_fail() or
g_return_val_if_fail() statements, otherwise things will
break when G_DISABLE_CHECKS is defined during compilation.
2005-09-21 11:52:04 +00:00
Stefan Kost
d13c1a7b10 inlied another one and added some obvious docs
Original commit message from CVS:
* docs/gst/tmpl/.cvsignore:
* docs/gst/tmpl/gstvalue.sgml:
* gst/gstvalue.c:
* gst/gstvalue.h:
inlied another one and added  some obvious docs
2005-09-21 09:48:40 +00:00
Wim Taymans
71491998d5 gst/elements/gstfdsrc.*: Properly implement fdsrc. Removed signal and timeout, better implemented somewhere else.
Original commit message from CVS:
* gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
(gst_fdsrc_init), (gst_fdsrc_start), (gst_fdsrc_stop),
(gst_fdsrc_unlock), (gst_fdsrc_set_property),
(gst_fdsrc_get_property), (gst_fdsrc_create):
* gst/elements/gstfdsrc.h:
Properly implement fdsrc. Removed signal and timeout,
better implemented somewhere else.
2005-09-21 09:13:32 +00:00
Stefan Kost
0371ed76ee inlined more docs
Original commit message from CVS:
* docs/gst/tmpl/.cvsignore:
* docs/gst/tmpl/gstimplementsinterface.sgml:
* gst/gstinterface.c:
inlined more docs
2005-09-21 08:58:48 +00:00
David Schleef
95c71e3b0f gst/gstelementfactory.c: Drink a little beer, fix a little leak.
Original commit message from CVS:
* gst/gstelementfactory.c: (gst_element_factory_make): Drink a
little beer, fix a little leak.
2005-09-21 07:37:02 +00:00
Stefan Kost
0838cd0b74 more docs inlined, splitted gstindex.{c,h}
Original commit message from CVS:
* docs/gst/gstreamer-docs.sgml:
* docs/gst/gstreamer-sections.txt:
* docs/gst/tmpl/.cvsignore:
* gst/Makefile.am:
* gst/gst.h:
* gst/gstbin.c:
* gst/gstelement.h:
* gst/gstindex.c: (gst_index_class_init):
* gst/gstindex.h:
* gst/gstindexfactory.c: (gst_index_factory_get_type),
(gst_index_factory_class_init), (gst_index_factory_init),
(gst_index_factory_finalize), (gst_index_factory_new),
(gst_index_factory_destroy), (gst_index_factory_find),
(gst_index_factory_create), (gst_index_factory_make):
* gst/gstindexfactory.h:
* gst/gstpluginfeature.c:
* gst/gstpluginfeature.h:
* libs/gst/controller/gstcontroller.c: (gst_controller_new_valist):
more docs inlined, splitted gstindex.{c,h}
2005-09-20 20:40:00 +00:00
Tim-Philipp Müller
bd2986edb7 gst/elements/gstfilesink.c: Set sync to FALSE by default.
Original commit message from CVS:
* gst/elements/gstfilesink.c: (gst_file_sink_init):
Set sync to FALSE by default.
2005-09-20 19:16:43 +00:00
Wim Taymans
46d159afce gst/base/gstbasesink.c: Make sync property settable from subclass.
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_base_sink_class_init),
(gst_base_sink_init):
Make sync property settable from subclass.

* gst/elements/gstfakesink.c: (gst_fake_sink_init),
(gst_fake_sink_change_state):
Set sync to FALSE by default.
2005-09-20 17:38:51 +00:00
Wim Taymans
4fd77c1920 The timeout handler should have lower priority than the source so we don't timeout before popping a message with 0 ti...
Original commit message from CVS:
* gst/gstbus.c: (poll_func), (poll_timeout), (gst_bus_poll):
* tools/gst-launch.c: (main):
The timeout handler should have lower priority than the source
so we don't timeout before popping a message with 0 timeout.
Dump error messages after failed state change.
2005-09-20 17:30:35 +00:00
Thomas Vander Stichele
440b1e419a remove the sync property from fakesink.
Original commit message from CVS:

* check/gst/gstevent.c:
* gst/elements/gstfakesink.c:
* gst/elements/gstfakesink.h:
remove the sync property from fakesink.
has the side effect of setting sync TRUE
for fakesink, which is a change.  Anyone who knows how
to fix this nicely in a GObject-y way, feel free.
2005-09-20 15:45:42 +00:00
Wim Taymans
3a3b15c8a3 gst/base/gstbasesink.*: Added sync property to basesink to disable clock sync.
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_base_sink_class_init),
(gst_base_sink_set_property), (gst_base_sink_get_property),
(gst_base_sink_do_sync):
* gst/base/gstbasesink.h:
Added sync property to basesink to disable clock sync.
2005-09-20 12:05:47 +00:00
Andy Wingo
b12471008b gst/gstelementfactory.c (gst_element_factory_create): Avoid eating the caller's refcount.
Original commit message from CVS:
2005-09-20  Andy Wingo  <wingo@pobox.com>

* gst/gstelementfactory.c (gst_element_factory_create): Avoid
eating the caller's refcount.

* gst/gstobject.h (GST_OBJECT_REFCOUNT)
(GST_OBJECT_REFCOUNT_VALUE): Conditionally fondle the right
refcount.

* gst/gstconfig.h.in (GST_HAVE_GLIB_2_8):
* configure.ac (GST_HAVE_GLIB_2_8_DEFINE): Make the availability
of GLib 2.8 public, so we can know which refcount to check in
tests.

* gst/gstobject.c: Use the GST_HAVE_GLIB_2_8 define.
(gst_object_init): Only set the gst refcount if we're going ahead
with the refcount hack.
2005-09-20 11:09:50 +00:00
Stefan Kost
2ed824baac more leaks plumbed, added more debug-logging
Original commit message from CVS:
* check/gst-libs/controller.c: (plugin_init), (GST_START_TEST):
* libs/gst/controller/gstcontroller.c: (gst_controller_new_valist):
more leaks plumbed, added more debug-logging
* gst/gstmacros.h:
whitespace fix
2005-09-20 10:41:03 +00:00
Thomas Vander Stichele
46dc9f7c73 remove include of removed header
Original commit message from CVS:
remove include of removed header
2005-09-20 09:47:13 +00:00
Thomas Vander Stichele
5526c2dbe4 gst/gstclock.c: Commit from the Political Party For More Atomic CVS Commits, so that people don't waste too much of t...
Original commit message from CVS:
* gst/gstclock.c: (_gst_clock_id_free):
Commit from the Political Party For More Atomic CVS Commits,
so that people don't waste too much of their day fishing
out obvious leaks out of massive commits.
Oh, and fix a pretty damn obvious leak in the memchunk
removal code.
2005-09-20 09:28:56 +00:00
Thomas Vander Stichele
334be0e3ed unbreak the build for those who have chronic arthritis and typing "make check" is just too taxing on the hands
Original commit message from CVS:
unbreak the build for those who have chronic arthritis
and typing "make check" is just too taxing on the hands
2005-09-20 09:08:25 +00:00
Andy Wingo
c5eccd76cc gst/gst.h: Re-add marshal to gst.h's include list -- if we really want it out, you should fix plugins at the same time.
Original commit message from CVS:
2005-09-20  Andy Wingo  <wingo@pobox.com>

* gst/gst.h: Re-add marshal to gst.h's include list -- if we
really want it out, you should fix plugins at the same time.
2005-09-20 08:25:32 +00:00
Stefan Kost
a52725ea45 added missing symbols to api docs disable ref-count hack if we have glib >= 2.8
Original commit message from CVS:
* configure.ac:
* docs/gst/gstreamer-sections.txt:
* gst/gstobject.c:
added missing symbols to api docs
disable ref-count hack if we have glib >= 2.8
2005-09-20 07:32:48 +00:00
David Schleef
6e96e1bff5 docs/gst/Makefile.am: Ignore a few more internal headers
Original commit message from CVS:
* docs/gst/Makefile.am: Ignore a few more internal headers
* docs/gst/gstreamer-docs.sgml: Remove old sections
* docs/gst/gstreamer-sections.txt: Remove old sections
* docs/gst/tmpl/gstobject.sgml: update
* docs/gst/tmpl/gstplugin.sgml: update
* docs/gst/tmpl/gstpluginfeature.sgml: update
* docs/random/ds/0.9-suggested-changes: update.
* gst/Makefile.am: remove memchunk and trashstack, since they're
not used.
* gst/gst.c: (gst_deinit): rename gst_registry_deinit to _cleanup
* gst/gst.h: don't include some headers
* gst/gstchildproxy.c: add gstmarshal.h
* gst/gstclock.c: Don't use memchunks
* gst/gstminiobject.c: Add some docs
* gst/gstobject.c: remove DESTROYED flag, since it's redundant
* gst/gstobject.h: same
* gst/gstplugin.c: include gstmacros.h
* gst/gstplugin.h: don't include gstmacros.h, since it's private
* gst/gstquery.c: don't use memchunks
* gst/gstregistry.c: rename gst_registry_deinit()
* gst/gstregistry.h: same
2005-09-20 06:28:33 +00:00
Jan Schmidt
b2e01db401 check/generic/states.c: Add a sleep to ensure elements have a chance to start their pad tasks before shutdown. Reduce...
Original commit message from CVS:
* check/generic/states.c: (GST_START_TEST), (states_suite):
Add a sleep to ensure elements have a chance to start their
pad tasks before shutdown. Reduces racy test results.

* gst/elements/gstfdsrc.c: (gst_fdsrc_init), (gst_fdsrc_create):
Time out the select every now and then to check for shutdown.
2005-09-20 00:27:37 +00:00
Wim Taymans
2bd297144f gst/gstpipeline.c: Automatically PAUSE and RESUME a pipeline when a flushing seek is performed.
Original commit message from CVS:
* gst/gstpipeline.c: (do_pipeline_seek), (gst_pipeline_send_event):
Automatically PAUSE and RESUME a pipeline when a flushing seek
is performed.
Removed old files.
2005-09-19 16:32:44 +00:00
Thomas Vander Stichele
7e031e25c0 whitespace fix
Original commit message from CVS:
whitespace fix
2005-09-19 16:28:58 +00:00
Andy Wingo
39c04c8b2f gst/gstregistry.h: Spacing fixen.
Original commit message from CVS:
2005-09-19  Andy Wingo  <wingo@pobox.com>

* gst/gstregistry.h: Spacing fixen.
2005-09-19 15:12:25 +00:00
Wim Taymans
74d0352327 gst/base/gstbasesrc.c: Handle state change failure more correctly.
Original commit message from CVS:
* gst/base/gstbasesrc.c: (gst_base_src_change_state):
Handle state change failure more correctly.
2005-09-19 14:55:26 +00:00
Thomas Vander Stichele
af5d456533 don't complain about my ARM .so files. Another reason why it does make sense to have plugins follow a standard file ...
Original commit message from CVS:
don't complain about my ARM .so files.  Another reason why it does make sense
to have plugins follow a standard file name pattern like libgst(whatever).so
2005-09-19 14:20:37 +00:00
Thomas Vander Stichele
91cc8f969e check/Makefile.am: re-enable tests now that leaks are plugged
Original commit message from CVS:
* check/Makefile.am:
re-enable tests now that leaks are plugged
* check/gst/gst.c:
* check/gst/gstbin.c:
* check/gst/gstpipeline.c:
add some more tests while fixing leaks
* common/check.mak:
make sure binaries are uptodate when valgrinding/gdbing
* gst/gst.c:
* gst/gstelementfactory.c:
remove a ref too many, and add a FIXME for when we get
round to disposing of classes
* gst/gstplugin.c:
fix the refcounting when loading a plugin from a file and
the code pretends that the pointer is the same even though
of course it can change
* gst/gstpluginfeature.c:
unref plugins marked cached (a bit confusing as a name)
as the docs state should be done
various doc additions to explain refcounting
* gst/gstregistry.c:
* gst/gstregistryxml.c:
debugging
2005-09-19 14:09:54 +00:00
Wim Taymans
1c1af875d4 GstBusHandler -> GstBusFunc, return value has the same meaning as any other GSource (FALSE == remove source).
Original commit message from CVS:
* check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
* check/gst/gstbus.c: (message_func_eos), (message_func_app),
(send_messages), (GST_START_TEST), (gstbus_suite):
* check/gst/gstpipeline.c: (GST_START_TEST):
* check/pipelines/cleanup.c: (run_pipeline):
* check/pipelines/simple_launch_lines.c: (run_pipeline),
(GST_START_TEST):
* gst/gstbus.c: (gst_bus_have_pending), (gst_bus_source_prepare),
(gst_bus_source_check), (gst_bus_source_dispatch),
(gst_bus_create_watch), (gst_bus_add_watch_full),
(gst_bus_add_watch), (poll_func), (poll_timeout), (gst_bus_poll):
* gst/gstbus.h:
* tools/gst-launch.c: (event_loop):
* tools/gst-md5sum.c: (event_loop):
GstBusHandler -> GstBusFunc, return value has the same meaning as
any other GSource (FALSE == remove source).
_add_watch() and _add_watch_full() now take a MessageType mask to
only handle specific types of messages.
_poll() returns the GstMessage instead of the message type to avoid
race conditions.
_have_pending() takes a MessageType mask now too.
Added testsuite for multiple bus watches.
Fix testsuites and applications for new bus API.
2005-09-19 11:18:03 +00:00
Thomas Vander Stichele
3919d13394 common/check.mak: use GST_PLUGIN settings for valgrind tests as well, so we're valgrinding the correct thing
Original commit message from CVS:

* common/check.mak:
use GST_PLUGIN settings for valgrind tests as well, so we're
valgrinding the correct thing
* gst/gst.c: (init_post):
plug another leak
2005-09-18 21:40:58 +00:00
Thomas Vander Stichele
87ec30aa38 various cleanups and memleak plugging. make valgrind is happy now.
Original commit message from CVS:
various cleanups and memleak plugging.  make valgrind is happy now.
2005-09-18 21:24:55 +00:00
Thomas Vander Stichele
0f0f00e2e8 loading a plugin can return NULL
Original commit message from CVS:
loading a plugin can return NULL
2005-09-18 09:15:10 +00:00
David Schleef
cb798ac570 check/Makefile.am: Fix environment variables.
Original commit message from CVS:
* check/Makefile.am: Fix environment variables.
* check/gst/gstplugin.c: Fix for API changes.
* tools/gst-inspect.c: Fix for API changes.
* tools/gst-xmlinspect.c: Fix for API changes.
* gst/gstelementfactory.c:
* gst/gstplugin.c:
* gst/gstplugin.h:
* gst/gstpluginfeature.c:
* gst/gstpluginfeature.h:
* gst/gstregistry.c:
* gst/gstregistry.h:
* gst/gstregistryxml.c:
* gst/gsttypefind.c:
* gst/gsttypefindfactory.c:
* gst/indexers/gstfileindex.c:
* gst/indexers/gstmemindex.c:
* gst/schedulers/Makefile.am:
Change registry to keep track of both plugins and features,
removing the feature tracking from plugins themselves.
2005-09-18 06:59:25 +00:00
Thomas Vander Stichele
1987f50ca9 add mising include
Original commit message from CVS:
add mising include
2005-09-16 11:24:10 +00:00
David Schleef
277ab581df Getting tired of debugging. Disabled all the unreffing of plugins and features, which fixes the segfaults, but of co...
Original commit message from CVS:
* check/gst/gstplugin.c:
* gst/gstelementfactory.c:
* gst/gstplugin.c:
* gst/gstpluginfeature.c:
* gst/gstregistry.c:
Getting tired of debugging.  Disabled all the unreffing of
plugins and features, which fixes the segfaults, but of
course leaks like crazy.  At least playbin works.
2005-09-16 04:54:24 +00:00
David Schleef
02bde78085 check/gst/gstplugin.c: More testing
Original commit message from CVS:
* check/gst/gstplugin.c: (register_check_elements),
(GST_START_TEST), (peek), (suggest), (gst_plugin_suite):
More testing
* gst/elements/gsttypefindelement.c: Fix refcounting.
* gst/gsttypefind.c:
* gst/gsttypefindfactory.c:
* gst/gsttypefindfactory.h:
2005-09-16 03:46:14 +00:00
Thomas Vander Stichele
01f775f41b some whitespace to trigger a build
Original commit message from CVS:
some whitespace to trigger a build
2005-09-16 00:08:15 +00:00
David Schleef
107444fe44 gst/gstindex.c: get refcounting correct.
Original commit message from CVS:
* gst/gstindex.c: get refcounting correct.
* gst/gstregistry.c: Handle the case where a feature/plugin is
not found.
2005-09-16 00:02:27 +00:00
David Schleef
c43514eb59 check/: Add test
Original commit message from CVS:
* check/Makefile.am:
* check/gst/gstplugin.c: Add test
* gst/gstplugin.c: Fix problems noticed by testsuite
* gst/gstplugin.h:
* gst/gstregistry.c:
* gst/gstregistry.h:
2005-09-15 23:51:24 +00:00
David Schleef
a08786c391 gst/gstplugin.c: Implement semi-decent recounting and locking in plugins and plugin features.
Original commit message from CVS:
* gst/gstplugin.c: Implement semi-decent recounting and locking
in plugins and plugin features.
* gst/gstplugin.h:
* gst/gstpluginfeature.c:
* gst/gstpluginfeature.h:
* gst/gstregistry.c:
2005-09-15 20:56:30 +00:00
Michael Smith
269ec283eb Implement missing function. This is enough to get the basics of typefinding working - oggdemux succeeds now. decodebi...
Original commit message from CVS:
Implement missing function. This is enough to get the basics of
typefinding working - oggdemux succeeds now. decodebin is still broken.
2005-09-15 14:21:08 +00:00
David Schleef
20acc0ae7e configure.ac: Add -no-undefined to GST_PLUGIN_LDFLAGS (bug #316076)
Original commit message from CVS:
* configure.ac: Add -no-undefined to GST_PLUGIN_LDFLAGS (bug
#316076)
* gst/base/Makefile.am: Add -no-undefined to LDFLAGS for libs
* gst/check/Makefile.am:
* libs/gst/controller/Makefile.am:
* libs/gst/dataprotocol/Makefile.am:
2005-09-15 05:58:37 +00:00
David Schleef
e245175fa3 gst/Makefile.am: Dist glib-compat.h
Original commit message from CVS:
* gst/Makefile.am: Dist glib-compat.h
2005-09-15 05:42:13 +00:00
David Schleef
c9a150e83f configure.ac: Remove gst/registries, since it's no longer used.
Original commit message from CVS:
* configure.ac: Remove gst/registries, since it's no longer used.
* gst/registries/Makefile.am:
* gst/registries/gstlibxmlregistry.c:
* gst/registries/gstlibxmlregistry.h:
* gst/registries/gstxmlregistry.c:
* gst/registries/gstxmlregistry.h:
* gst/registries/registrytest.c:
2005-09-15 03:20:49 +00:00
David Schleef
ce43b11741 gst/: Convergence is near. Seriously.
Original commit message from CVS:
* gst/glib-compat.h:
* gst/gstregistryxml.c:
Convergence is near.  Seriously.
2005-09-15 01:38:33 +00:00
David Schleef
3558f6a0b4 gst/glib-compat.*: Attempt #4 to appease the buildbots.
Original commit message from CVS:
* gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
* gst/glib-compat.h:
Attempt #4 to appease the buildbots.
2005-09-15 01:34:52 +00:00
David Schleef
c8c43231fe gst/glib-compat.c: Attempt #3.
Original commit message from CVS:
* gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
Attempt #3.
2005-09-15 01:26:42 +00:00
David Schleef
a430dcc5d6 gst/glib-compat.c: Attempt #2.
Original commit message from CVS:
* gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
Attempt #2.
2005-09-15 01:20:22 +00:00
David Schleef
162462e549 gst/Makefile.am: Oh yeah, libgstreamer.so needs to contain the new functions.
Original commit message from CVS:
* gst/Makefile.am: Oh yeah, libgstreamer.so needs to contain
the new functions.
2005-09-15 01:14:17 +00:00
David Schleef
584cc93574 gst/glib-compat.*: Add some functions that are in newer versions of glib than we care to require.
Original commit message from CVS:
* gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
* gst/glib-compat.h: Add some functions that are in newer versions
of glib than we care to require.
* gst/gstregistryxml.c: Use them.
2005-09-15 01:10:52 +00:00
David Schleef
faeaea4498 gst/gstregistryxml.c: Copy g_mkdir_with_parent() from glib, because we don't require glib-2.8.
Original commit message from CVS:
* gst/gstregistryxml.c: Copy g_mkdir_with_parent() from glib,
because we don't require glib-2.8.
2005-09-15 00:35:11 +00:00
David Schleef
c4304be0ef gst/gstregistryxml.c: Added. Essentially moved out of the registries directory.
Original commit message from CVS:
* gst/gstregistryxml.c: Added.  Essentially moved out of the
registries directory.
2005-09-15 00:20:14 +00:00
David Schleef
a3bac0703c remove
Original commit message from CVS:
* check/Makefile.am:
* check/generic/states.c:
* gst/Makefile.am:
* gst/gst.c:
* gst/gst.h:
* gst/gst_private.h:
* gst/gstelementfactory.c:
* gst/gstindex.c:
* gst/gstinfo.c:
* gst/gstplugin.c:
* gst/gstplugin.h:
* gst/gstpluginfeature.c:
* gst/gstpluginfeature.h:
* gst/gstregistry.c:
* gst/gstregistry.h:
* gst/gstregistrypool.c: remove
* gst/gstregistrypool.h: remove
* gst/gsttypefind.c:
* gst/gsttypefindfactory.c:
* gst/gsturi.c:
* tools/Makefile.am:
* tools/gst-compprep.c:
* tools/gst-inspect.c:
* tools/gst-register.c: remove
* tools/gst-xmlinspect.c:
Registry rewrite.  Changes registry from being a file created
by a tool into a simple cache file created automatically by
libgstreamer.  Removed gst-register (because it's no longer
needed).  Remove registry pools, because we only have one
registry implementation (XML).  Fix up other subsystems as
necessary.
2005-09-15 00:13:26 +00:00
Michael Smith
93ca1da67c Rest of the fix for 316155: don't confuse MinGW when running glib-mkenums
Original commit message from CVS:
Rest of the fix for 316155: don't confuse MinGW when running glib-mkenums
2005-09-14 15:16:33 +00:00
Michael Smith
46ad549037 Don't use windows linking attributes in MinGW
Original commit message from CVS:
Don't use windows linking attributes in MinGW
2005-09-13 14:49:23 +00:00
Thomas Vander Stichele
ab38914069 gst/gstutils.c: Apparently people think it's better if this function doesn't try to set the state to whatever state w...
Original commit message from CVS:

* gst/gstutils.c: (set_state_async_thread_func),
(gst_element_set_state_async):
Apparently people think it's better if this function doesn't
try to set the state to whatever state was asked for on the first
call to this function for any object.  Seriously.
2005-09-13 11:00:44 +00:00
Thomas Vander Stichele
cf231073c2 add a gst_element_set_state_async method that sets the state and starts a thread to make sure the state change comple...
Original commit message from CVS:
* check/gst/gstpipeline.c: (GST_START_TEST):
* docs/gst/gstreamer-sections.txt:
* gst/gstutils.c: (set_state_async_thread_func),
(gst_element_set_state_async):
* gst/gstutils.h:
add a gst_element_set_state_async method that
sets the state and starts a thread to make sure the state
change completes as best as it can
2005-09-12 18:14:03 +00:00
Thomas Vander Stichele
361d0f2922 docs/: add a quote
Original commit message from CVS:

* docs/gst/tmpl/gstelement.sgml:
* docs/manual/appendix-quotes.xml:
add a quote
* gst/gstelement.c: (gst_element_set_state):
add some debug
2005-09-12 16:10:18 +00:00
Jan Schmidt
f6d5e3c3c5 gst/: Remove the requirement for sub-classes to call the parent implementation of prepare_output_buffer with a wrappe...
Original commit message from CVS:
* gst/base/gstbasetransform.c: (gst_base_transform_class_init),
(gst_base_transform_prepare_output_buf),
(gst_base_transform_handle_buffer):
* gst/elements/gstcapsfilter.c: (gst_capsfilter_transform_ip),
(gst_capsfilter_prepare_buf):
Remove the requirement for sub-classes to call the parent
implementation of prepare_output_buffer with a wrapper function.

* gst/gsttaglist.h:
* gst/gsttagsetter.h:
Fix #define wrapper
2005-09-12 13:45:04 +00:00
Thomas Vander Stichele
b5939385ff doc build clean, hurray
Original commit message from CVS:
doc build clean, hurray
2005-09-11 13:07:25 +00:00
Thomas Vander Stichele
9b3e3a2613 various doc fixes
Original commit message from CVS:
various doc fixes
2005-09-11 12:57:36 +00:00
Thomas Vander Stichele
ff783ad5fa docs/gst/: rearrange gstvalue section
Original commit message from CVS:

* docs/gst/gstreamer-sections.txt:
* docs/gst/tmpl/gstvalue.sgml:
rearrange gstvalue section
* gst/gstutils.c: (gst_element_state_get_name):
NONE -> VOID
* gst/gstvalue.c: (_gst_value_initialize):
* gst/gstvalue.h:
doc updates
2005-09-11 12:01:12 +00:00
Thomas Vander Stichele
574cabacba debug fixes
Original commit message from CVS:
debug fixes
2005-09-11 11:57:08 +00:00
Jan Schmidt
1feeaffc7f check/gst-libs/controller.c: Header include fix.
Original commit message from CVS:
* check/gst-libs/controller.c:
Header include fix.
* gst/base/gstbasetransform.c:
(gst_base_transform_default_prepare_buf),
(gst_base_transform_handle_buffer):
* gst/base/gstbasetransform.h:
Some more basetransform changes and fixes to enable sub-classes
that modify buffer metadata only.
* gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
(gst_capsfilter_init), (gst_capsfilter_transform_ip),
(gst_capsfilter_prepare_buf):
If the output pad has fixed allowed caps and input buffers
don't have any, set the fixed caps on outgoing buffers.
2005-09-09 23:45:15 +00:00
Thomas Vander Stichele
ffd3d7b3c7 object debugging is good
Original commit message from CVS:
object debugging is good
2005-09-09 18:05:40 +00:00
Jan Schmidt
6ed5bee3b0 check/elements/identity.c: Make the error a little clearer when the test fails because identity made a copy of the bu...
Original commit message from CVS:
* check/elements/identity.c: (GST_START_TEST):
Make the error a little clearer when the test fails because
identity made a copy of the buffer.
* docs/gst/gstreamer-sections.txt:
New symbols in gstbasetransform.h
* gst/base/gstbasetransform.c: (gst_base_transform_class_init),
(gst_base_transform_init), (gst_base_transform_transform_size),
(gst_base_transform_configure_caps), (gst_base_transform_setcaps),
(gst_base_transform_default_prepare_buf),
(gst_base_transform_get_unit_size),
(gst_base_transform_buffer_alloc),
(gst_base_transform_handle_buffer), (gst_base_transform_chain),
(gst_base_transform_change_state),
(gst_base_transform_set_passthrough),
(gst_base_transform_set_in_place),
(gst_base_transform_is_in_place):
* gst/base/gstbasetransform.h:
Change BaseTransform to separate in_place operate from same_caps
output. in_place implies that the element can perform the transform
on incoming buffers in-place, even if the caps on the output are
different.
Sub-class elements can now implement special buffer allocation
methods for outgoing buffers if they wish to.
Big documentation addition.
* gst/elements/gstcapsfilter.c: (gst_capsfilter_transform_ip):
* gst/elements/gstelements.c:
Changes for basetransform modifications.
* gst/elements/Makefile.am:
* gst/elements/gstfdsrc.c: (gst_fdsrc_init), (gst_fdsrc_create):
Compile fix. Extra debug output.
2005-09-09 17:42:20 +00:00
Thomas Vander Stichele
9cc64e4bec check/gst/gstpad.c: add tests for valid pad naming
Original commit message from CVS:

* check/gst/gstpad.c: (GST_START_TEST), (name_is_valid),
(gst_pad_suite):
add tests for valid pad naming
* gst/check/gstcheck.c: (gst_check_log_message_func),
(gst_check_log_critical_func):
add ASSERT_WARNING
remove printing of code, it is fragile when the code contains
% and the line number is enough info
* gst/check/gstcheck.h:
* gst/gstpad.c: (gst_pad_template_new):
fix memleaks
2005-09-09 14:34:43 +00:00
Thomas Vander Stichele
8b61247c78 check/: adding a test for pipelines and state changes
Original commit message from CVS:

* check/Makefile.am:
* check/gst/.cvsignore:
* check/gst/gstpipeline.c: (pop_messages), (GST_START_TEST),
(gst_pipeline_suite), (main):
adding a test for pipelines and state changes
* gst/gstutils.c: (get_state_func):
add some debugging
* gstreamer.spec.in:
fix up spec file
2005-09-09 12:02:41 +00:00
Michael Smith
4e78d6183f Various fixes for unseekable, unmmapable, and non-normal files, so that fallback to read() rather than mmap() works.
Original commit message from CVS:
Various fixes for unseekable, unmmapable, and non-normal files, so that
fallback to read() rather than mmap() works.

Allow newsegment events with start == end, so that cases where that's
correct work (e.g. filesrc on a zero-size file).
2005-09-08 17:23:57 +00:00
Jan Schmidt
d5da128644 gst/gstplugin.c: Call g_module_close when we don't load the module
Original commit message from CVS:
* gst/gstplugin.c: (gst_plugin_load_file):
Call g_module_close when we don't load the module

* gst/registries/gstlibxmlregistry.c:
(gst_xml_registry_get_property):
Port leak fix from 0.8
2005-09-07 15:22:29 +00:00
Stefan Kost
b5454f7c5c renamed gsttag -> gsttaglist, gsttaginterface -> gsttagsetter inlined docs for gsttrace, gsttrashstack
Original commit message from CVS:
* docs/gst/gstreamer-docs.sgml:
* docs/gst/tmpl/.cvsignore:
* docs/gst/tmpl/gsttrace.sgml:
* docs/gst/tmpl/gsttrashstack.sgml:
* gst/Makefile.am:
* gst/gst.h:
* gst/gstelement.h:
* gst/gstevent.h:
* gst/gstmessage.c:
* gst/gstmessage.h:
* gst/gsttag.c:
* gst/gsttag.h:
* gst/gsttaginterface.c:
* gst/gsttaginterface.h:
* gst/gsttaglist.c:
* gst/gsttaglist.h:
* gst/gsttagsetter.c:
* gst/gsttagsetter.h:
* gst/gsttrace.c:
* gst/gsttrace.h:
* gst/gsttrashstack.c:
renamed gsttag -> gsttaglist, gsttaginterface -> gsttagsetter
inlined docs for gsttrace, gsttrashstack
2005-09-07 13:22:16 +00:00
Stefan Kost
628f773e65 gst/: splitted gsttypefind into gsttypefind, gsttypefindfactory
Original commit message from CVS:
* gst/Makefile.am:
* gst/elements/gstbufferstore.h:
* gst/elements/gsttypefindelement.c:
* gst/elements/gsttypefindelement.h:
* gst/gst.h:
* gst/gsttypefind.c:
* gst/gsttypefind.h:
* gst/gsttypefindfactory.c: (gst_type_find_factory_get_type),
(gst_type_find_factory_class_init), (gst_type_find_factory_init),
(gst_type_find_factory_dispose),
(gst_type_find_factory_unload_thyself),
(gst_type_find_load_plugin), (gst_type_find_factory_get_list),
(gst_type_find_factory_get_caps),
(gst_type_find_factory_get_extensions),
(gst_type_find_factory_call_function):
* gst/gsttypefindfactory.h:
* gst/registries/gstlibxmlregistry.c:
* gst/registries/gstxmlregistry.c:
splitted gsttypefind into gsttypefind, gsttypefindfactory
2005-09-07 12:35:23 +00:00
Andy Wingo
c477a458d7 gst/base/gstbasesink.c (gst_base_sink_activate_pull): Fix a race condition whereby the pad's task function is entered...
Original commit message from CVS:
2005-09-07  Andy Wingo  <wingo@pobox.com>

* gst/base/gstbasesink.c (gst_base_sink_activate_pull): Fix a race
condition whereby the pad's task function is entered before the
pad_mode variable was set.
2005-09-07 10:06:56 +00:00
Jan Schmidt
9f96921e90 gst/gstpad.c: Catch misbehaving pad_alloc functions that don't set up caps and do it for them.
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_alloc_buffer):
Catch misbehaving pad_alloc functions that don't
set up caps and do it for them.
2005-09-06 22:57:05 +00:00
Stefan Kost
6f89a64207 check/pipelines/simple_launch_lines.c: test for pipe!=NULL
Original commit message from CVS:
* check/pipelines/simple_launch_lines.c: (run_pipeline):
test for pipe!=NULL
* docs/gst/tmpl/.cvsignore:
* docs/gst/tmpl/gstmemchunk.sgml:
* docs/gst/tmpl/gstparse.sgml:
* docs/gst/tmpl/gsttaglist.sgml:
* docs/gst/tmpl/gsttagsetter.sgml:
* docs/gst/tmpl/gsttypefind.sgml:
* docs/gst/tmpl/gsttypefindfactory.sgml:
* gst/gstmemchunk.c:
* gst/gstparse.c:
* gst/gsttag.c:
* gst/gsttaginterface.c:
* gst/gsttypefind.c:
* gst/gsttypefind.h:
inlined more docs
2005-09-06 22:03:01 +00:00
Andy Wingo
0b03315981 gst/registries/gstxmlregistry.*: and update to newer API.
Original commit message from CVS:
* gst/registries/gstxmlregistry.h:
* gst/registries/gstxmlregistry.c: and update to newer API.
Incidentally they should be a bit faster now that they don't have
to parse the caps.
2005-09-05 16:54:54 +00:00
Andy Wingo
a43d430d06 gst/registries/gstxmlregistry.*: Um... resurrect...
Original commit message from CVS:
2005-09-05  Andy Wingo  <wingo@pobox.com>

* gst/registries/gstxmlregistry.h:
* gst/registries/gstxmlregistry.c: Um... resurrect...
2005-09-05 16:52:56 +00:00
Andy Wingo
2ed742742e gst/registries/gstxmlregistry.*: Remove from CVS, they were replaced by the libxml registry a while back
Original commit message from CVS:
2005-09-05  Andy Wingo  <wingo@pobox.com>

* gst/registries/gstxmlregistry.h:
* gst/registries/gstxmlregistry.c: Remove from CVS, they were
replaced by the libxml registry a while back
2005-09-05 16:36:47 +00:00
Thomas Vander Stichele
0fcba6ca57 fix for a critical when a module returns NULL on opening
Original commit message from CVS:
fix for a critical when a module returns NULL on opening
2005-09-03 17:36:20 +00:00
Thomas Vander Stichele
25169fe885 add a source plugin description field, to represent the source module this plugin is a part of. By default GST_PLUGI...
Original commit message from CVS:
add a source plugin description field, to represent the source
module this plugin is a part of.  By default GST_PLUGIN_DEFINE
will set it to PACKAGE, which is automake's idea of the name of
the source project.
2005-09-03 17:00:52 +00:00
Thomas Vander Stichele
2a7078e1e7 whitespace cleanups
Original commit message from CVS:
whitespace cleanups
2005-09-02 23:36:24 +00:00
Tim-Philipp Müller
46616180d1 gst/base/gstbasesink.c: Add comment.
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_base_sink_pad_buffer_alloc):
Add comment.
* gst/elements/gstfakesink.c: (gst_fake_sink_init),
(gst_fake_sink_change_state):
Make state change function thread-safe.
* gst/gstpad.c: (gst_pad_alloc_buffer):
Set offset on generic buffer allocated by fallback.
2005-09-02 23:17:26 +00:00
Thomas Vander Stichele
64a74152c2 whitespace fixes
Original commit message from CVS:
whitespace fixes
2005-09-02 23:03:36 +00:00
Stefan Kost
49127d2e3e run the wingo-magic script against the docs
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* docs/gst/tmpl/gstelement.sgml:
* gst/gstpad.c:
* libs/gst/controller/gst-controller.c:
(gst_controlled_property_set_interpolation_mode),
(gst_controlled_property_new),
(gst_controller_find_controlled_property):
run the wingo-magic script against the docs
2005-09-02 21:37:55 +00:00
Stefan Kost
407c5a4116 merged elementdetails docs into elementfactory docs inlined both
Original commit message from CVS:
* docs/gst/gstreamer-docs.sgml:
* docs/gst/gstreamer-sections.txt:
* docs/gst/tmpl/.cvsignore:
* docs/gst/tmpl/gstelementdetails.sgml:
* docs/gst/tmpl/gstelementfactory.sgml:
* gst/gst.c:
* gst/gstbus.c:
* gst/gstelementfactory.c:
* gst/gstelementfactory.h:
merged elementdetails docs into elementfactory docs
inlined both
2005-09-02 17:23:06 +00:00
Andy Wingo
1b38cd4afa gst/gstelement.h: Add magical pixie dust to make glib-mkenums consider this enum an enum and not a flags.
Original commit message from CVS:
2005-09-02  Andy Wingo  <wingo@pobox.com>

* gst/gstelement.h: Add magical pixie dust to make glib-mkenums
consider this enum an enum and not a flags.
2005-09-02 16:44:57 +00:00
Stefan Kost
c253951dcd more docs inlined
Original commit message from CVS:
* docs/gst/gstreamer-docs.sgml:
* docs/gst/tmpl/.cvsignore:
* docs/gst/tmpl/gstghostpad.sgml:
* docs/gst/tmpl/gstiterator.sgml:
* docs/gst/tmpl/gstmacros.sgml:
* docs/gst/tmpl/gstrealpad.sgml:
* docs/gst/tmpl/gstregistry.sgml:
* docs/gst/tmpl/gstregistrypool.sgml:
* docs/gst/tmpl/gststructure.sgml:
* docs/gst/tmpl/gstsystemclock.sgml:
* docs/gst/tmpl/gsttrace.sgml:
* gst/gstghostpad.c:
* gst/gstmacros.h:
* gst/gstmemchunk.c:
* gst/gstmemchunk.h:
* gst/gstqueue.c:
* gst/gstregistry.c:
* gst/gstregistrypool.c:
* gst/gststructure.c:
* gst/gstsystemclock.c:
more docs inlined
2005-09-02 16:17:23 +00:00
Andy Wingo
e040bb2dbe gst/gstelement.h (GstState): Renamed from GstElementState, changed to be a normal enum instead of flags.
Original commit message from CVS:
2005-09-02  Andy Wingo  <wingo@pobox.com>

* gst/gstelement.h (GstState): Renamed from GstElementState,
changed to be a normal enum instead of flags.
(GstStateChangeReturn): Renamed from GstElementStateReturn, names
munged to be GST_STATE_CHANGE_*.
(GST_STATE_CHANGE): Renamed from GST_STATE_TRANSITION, updated to
work with the new state representation.
(GstStateChange): New enumeration of possible state transitions.
Replaces GST_STATE_FOO_TO_BAR with GST_STATE_CHANGE_FOO_TO_BAR.
(GstElementClass::change_state): Pass the GstStateChange along as
an argument. Helps language bindings, so they don't have to use
tricky lock-needing macros like GST_STATE_CHANGE ().

* scripts/update-states (file): New script. Run it on a file to
update it for state naming and API changes. Updates files in
place.

* All files updated for the new API.
2005-09-02 15:42:00 +00:00
Thomas Vander Stichele
57efe08cd0 gst/: fix a bunch of unchecked return values
Original commit message from CVS:

* gst/gsttrace.c: (gst_trace_flush), (gst_trace_text_flush):
* gst/gstutils.c: (gst_util_set_value_from_string),
(gst_util_set_object_arg):
fix a bunch of unchecked return values
* tools/gst-complete.c: (main):
* gstreamer.spec.in:
clean up a little
2005-09-02 12:08:45 +00:00
Wim Taymans
8099c34220 gst/base/gstbasesink.*: Handle newsegments more correctly.
Original commit message from CVS:
* gst/base/gstbasesink.c: (gst_base_sink_handle_object),
(gst_base_sink_event), (gst_base_sink_do_sync),
(gst_base_sink_handle_event):
* gst/base/gstbasesink.h:
Handle newsegments more correctly.

* gst/gstbus.c:
Fix docs.

* gst/gstevent.c: (gst_event_new_newsegment):
A newsegment cannot have a start_time of -1
2005-09-01 18:12:18 +00:00
Thomas Vander Stichele
e5d298f4f4 docs/faq/gst-uninstalled: add -good
Original commit message from CVS:

* docs/faq/gst-uninstalled:
add -good
* gst/gstevent.c:
* gst/gstevent.h:
remove wrong docs
* gst/gstutils.c: (gst_element_link_filtered):
* gst/gstutils.h:
add gst_element_link_filtered
2005-08-31 15:27:55 +00:00
Stefan Kost
1561a0767a inlined more docs, fixed double id-ref
Original commit message from CVS:
* docs/gst/gstreamer-docs.sgml:
* docs/gst/gstreamer-sections.txt:
* docs/gst/tmpl/.cvsignore:
* docs/gst/tmpl/gsterror.sgml:
* docs/gst/tmpl/gstfilter.sgml:
* docs/gst/tmpl/gsturihandler.sgml:
* docs/gst/tmpl/gsturitype.sgml:
* docs/gst/tmpl/gstutils.sgml:
* docs/gst/tmpl/gstxml.sgml:
* gst/gsterror.c:
* gst/gsterror.h:
* gst/gstfilter.c:
* gst/gsturi.c:
* gst/gsturitype.c:
* gst/gstutils.c:
* gst/gstxml.c:
inlined more docs, fixed double id-ref
2005-08-31 14:08:45 +00:00
Wim Taymans
6116cdc149 gst/base/gstbasetransform.c: Passthrough elements don't need the caps as they don't care.
Original commit message from CVS:
* gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
(gst_base_transform_handle_buffer):
Passthrough elements don't need the caps as they don't care.
2005-08-31 13:53:39 +00:00
Wim Taymans
8cd2dc7a81 gst/base/gstbasetransform.c: Don't leak refcounts on buffers.
Original commit message from CVS:
* gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
(gst_base_transform_handle_buffer), (gst_base_transform_chain):
Don't leak refcounts on buffers.
2005-08-31 13:50:40 +00:00
Wim Taymans
2db910992f gst/base/gstbasetransform.*: Handle the case where we are not negotiated more gracefully.
Original commit message from CVS:
* gst/base/gstbasetransform.c: (gst_base_transform_configure_caps),
(gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
(gst_base_transform_chain), (gst_base_transform_change_state):
* gst/base/gstbasetransform.h:
Handle the case where we are not negotiated more gracefully.
2005-08-31 13:41:19 +00:00
Tim-Philipp Müller
09f803fd76 gst/elements/gstfilesrc.c: Set READONLY flag on mmap'ed buffers, otherwise gst_buffer_make_writable() won't work prop...
Original commit message from CVS:
* gst/elements/gstfilesrc.c: (gst_mmap_buffer_init),
(gst_file_src_map_region):
Set READONLY flag on mmap'ed buffers, otherwise
gst_buffer_make_writable() won't work properly (#314708).
2005-08-31 12:55:54 +00:00
Wim Taymans
cd599c3718 gst/base/gstbasetransform.c: passthrough elements can even do inplace on non writable buffers (as they don't touch th...
Original commit message from CVS:
* gst/base/gstbasetransform.c: (gst_base_transform_handle_buffer):
passthrough elements can even do inplace on non writable
buffers (as they don't touch them).
2005-08-31 10:07:24 +00:00
Stefan Kost
f02b655fc0 check/gst-libs/controller.c: more tests (hehe I have the most)
Original commit message from CVS:
* check/gst-libs/controller.c: (gst_test_mono_source_get_property),
(gst_test_mono_source_set_property),
(gst_test_mono_source_class_init), (GST_START_TEST),
(gst_controller_suite):
more tests (hehe I have the most)
* gst/gstbus.c:
describe popping messages whenusing mulltiple sources
* libs/gst/controller/gst-controller.c:
(gst_controlled_property_set_interpolation_mode),
(gst_controlled_property_new):
* libs/gst/controller/gst-controller.h:
* libs/gst/controller/gst-interpolation.c:
implement boolean properties
2005-08-31 10:00:08 +00:00
Wim Taymans
42dee8bf71 gst/gstminiobject.c: Cannot assert that the refcount has to be positive since a disposed object can be resurected.
Original commit message from CVS:
* gst/gstminiobject.c: (gst_mini_object_ref):
Cannot assert that the refcount has to be positive
since a disposed object can be resurected.
2005-08-31 08:57:14 +00:00
Wim Taymans
5711214593 gst/gstpad.c: Revert change, need to first fix badly behaving apps.
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_init):
Revert change, need to first fix badly behaving
apps.
2005-08-31 08:38:39 +00:00
Wim Taymans
d7cfd8a12e gst/base/gstadapter.c: Flushing out 0 bytes is ok for this function.
Original commit message from CVS:
* gst/base/gstadapter.c: (gst_adapter_flush):
Flushing out 0 bytes is ok for this function.

* gst/base/gstbasesink.c: (gst_base_sink_handle_object):
no newsegment gives a warning and sets the start/stop to
invalid.

* gst/base/gstbasetransform.c: (gst_base_transform_change_state),
(gst_base_transform_set_passthrough):
Some debug info.

* gst/gstminiobject.c: (gst_mini_object_ref):
Check refcount here too.

* gst/gstpad.c: (gst_pad_init):
Pads are initially flushing and refusing data.

* gst/gstutils.c: (gst_element_link_pads_filtered):
When adding a capsfilter element make sure it has the
same state as the parent bin.
2005-08-30 19:29:59 +00:00
Stefan Kost
a44593349c more docs and two more inlined
Original commit message from CVS:
* docs/gst/tmpl/.cvsignore:
* docs/gst/tmpl/gstformat.sgml:
* docs/gst/tmpl/gstversion.sgml:
* gst/gstbus.h:
* gst/gstformat.c:
* gst/gstformat.h:
* gst/gstversion.h.in:
more docs and two more inlined
2005-08-30 17:23:19 +00:00
Wim Taymans
da88afccc5 gst/elements/gstfilesink.c: Don't sync to clock.
Original commit message from CVS:
* gst/elements/gstfilesink.c: (gst_file_sink_class_init):
Don't sync to clock.
2005-08-30 17:12:33 +00:00
Stefan Kost
219c0c1947 docs/gst/gstreamer-sections.txt: ultral33t func10ns deserve to appear in the docs actualy
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
ultral33t func10ns deserve to appear in the docs actualy
* docs/gst/tmpl/.cvsignore:
* docs/gst/tmpl/gstcompat.sgml:
* docs/gst/tmpl/gstconfig.sgml:
* gst/check/gstcheck.c:
* gst/gstcompat.h:
* gst/gstconfig.h.in:
inlined more docs
2005-08-30 08:17:48 +00:00