1 2006-03-13 Wim Taymans <wim@fluendo.com>
3 * libs/gst/base/gstbasesink.c: (gst_base_sink_init),
4 (gst_base_sink_do_sync):
6 Use QOS debug category.
8 2006-03-13 Wim Taymans <wim@fluendo.com>
10 * plugins/elements/gstqueue.c:
11 Very small doc update.
13 2006-03-13 Wim Taymans <wim@fluendo.com>
16 * gst/gstinfo.c: (_gst_debug_init):
17 Added QOS debug category
19 2006-03-13 Wim Taymans <wim@fluendo.com>
21 * docs/gst/gstreamer-sections.txt:
22 * gst/gstbin.c: (bin_bus_handler), (gst_bin_handle_message_func):
24 * gst/gstbus.c: (gst_bus_class_init):
27 * gst/gstelement.c: (gst_element_set_locked_state):
29 Documentation updates.
31 * gst/gstpipeline.c: (gst_pipeline_get_type),
32 (gst_pipeline_class_init), (gst_pipeline_init),
33 (gst_pipeline_dispose), (gst_pipeline_set_property),
34 (gst_pipeline_get_property), (do_pipeline_seek),
35 (gst_pipeline_send_event), (gst_pipeline_change_state),
36 (gst_pipeline_provide_clock_func), (gst_pipeline_set_delay),
37 (gst_pipeline_get_delay):
39 Added methods for setting the delay.
40 API: gst_pipeline_set_delay
41 API: gst_pipeline_get_delay
42 Add pipeline debug category
45 Don't reset stream time when seek failed.
47 2006-03-13 Wim Taymans <wim@fluendo.com>
49 * docs/design/draft-klass.txt:
50 * docs/design/part-clocks.txt:
51 * docs/design/part-events.txt:
52 * docs/design/part-gstbin.txt:
53 * docs/design/part-gstpipeline.txt:
54 * docs/design/part-messages.txt:
55 * docs/design/part-negotiation.txt:
56 * docs/design/part-overview.txt:
57 * docs/design/part-preroll.txt:
58 * docs/design/part-seeking.txt:
59 * docs/design/part-states.txt:
60 * docs/design/part-streams.txt:
61 Documentation updates.
63 2006-03-12 Julien MOUTTE <julien@moutte.net>
65 * gst/gsttaglist.c: Fix rubbish docs that are encouraging
68 2006-03-12 Thomas Vander Stichele <thomas at apestaart dot org>
70 * libs/gst/net/gstnettimeprovider.c:
72 * win32/common/config.h:
75 2006-03-12 Tim-Philipp Müller <tim at centricular dot net>
77 Patch by: Julio M. Merino Vidal <jmmv at netbsd org>
80 Don't check for libgnomeui (leftover from old examples
81 that aren't built or disted any longer) (#334303).
83 2006-03-11 Tim-Philipp Müller <tim at centricular dot net>
85 * plugins/elements/gstfdsink.c: (gst_fd_sink_render):
86 * plugins/elements/gstfilesink.c: (gst_file_sink_render):
87 Emit RESOURCE_NO_SPACE_LEFT error here as well when
88 there's no space left on the device.
90 2006-03-10 Tim-Philipp Müller <tim at centricular dot net>
93 Fix GST_CLOCK_TIME_IS_VALID signedness issues - we need
94 to cast the input to GstClockTime before comparing with
95 another GstClockTime value.
97 2006-03-10 Thomas Vander Stichele <thomas at apestaart dot org>
102 === release 0.10.4 ===
104 2006-03-10 Thomas Vander Stichele <thomas at apestaart dot org>
107 releasing 0.10.4, "Light"
109 2006-03-10 Michael Smith <msmith@fluendo.com>
111 * libs/gst/dataprotocol/dataprotocol.c:
112 Fix docs for dataprocotol to not get the return types completely
113 wrong for a few functions.
115 2006-03-09 Tim-Philipp Müller <tim at centricular dot net>
117 * docs/gst/gstreamer-sections.txt:
118 * gst/gstpipeline.c: (gst_pipeline_class_init),
119 (gst_pipeline_init), (gst_pipeline_set_property),
120 (gst_pipeline_get_property), (gst_pipeline_change_state),
121 (gst_pipeline_set_auto_flush_bus),
122 (gst_pipeline_get_auto_flush_bus):
124 Add new API: gst_pipeline_set_auto_flush_bus() and
125 gst_pipeline_get_auto_flush_bus() to disable automatic
126 flushing of the pipeline's GstBus when going from READY
127 to NULL state (#332045).
129 2006-03-09 Tim-Philipp Müller <tim at centricular dot net>
131 * docs/gst/gstreamer-sections.txt:
132 * gst/gsturi.c: (gst_uri_has_protocol):
134 Add new API: gst_uri_has_protocol() (#333779).
136 2006-03-09 Wim Taymans <wim@fluendo.com>
138 * gst/gstclock.c: (gst_clock_entry_new),
139 (gst_clock_id_compare_func), (gst_clock_id_wait),
140 (gst_clock_id_wait_async), (gst_clock_id_unschedule),
141 (gst_clock_init), (gst_clock_get_internal_time),
142 (gst_clock_set_master), (do_linear_regression),
143 (gst_clock_add_observation), (gst_clock_set_property):
147 Fix a possible segfault when the window-size is made smaller.
148 Calculate jitter before performing the clock wait. Ideally
149 the clock implementation should calculate jitter but we need
150 API breakage for that.
152 * gst/gstsystemclock.c: (gst_system_clock_init):
155 * libs/gst/base/gstbasesink.c: (gst_base_sink_do_sync):
158 * tests/check/gst/gstsystemclock.c: (GST_START_TEST),
159 (gst_systemclock_suite):
160 Added check to test GST_CLOCK_DIFF.
162 2006-03-09 Tim-Philipp Müller <tim at centricular dot net>
164 * libs/gst/base/gsttypefindhelper.c: (helper_find_get_length),
165 (gst_type_find_helper_get_range):
166 If we are provided with the size, we should implement
167 GstTypeFind::get_length, so that typefind functions who
168 want to can actually peek at the middle of a file.
170 2006-03-08 Tim-Philipp Müller <tim at centricular dot net>
172 * docs/manual/advanced-dataaccess.xml:
173 Add some very very basic error checking.
175 * docs/pwg/appendix-checklist.xml:
176 Some updates to the list of things to check when writing an element.
178 2006-03-08 Wim Taymans <wim@fluendo.com>
180 * docs/design/part-element-transform.txt:
181 Added some docs about the design of tranform elements.
183 * libs/gst/base/gstbasesrc.c: (gst_base_src_perform_seek),
184 (gst_base_src_loop), (gst_base_src_change_state):
185 Mark buffers with the DISCONT flag.
187 2006-03-08 Michael Smith <msmith@fluendo.com>
190 * gst/gstregistryxml.c: (gst_registry_save),
191 (gst_registry_save_escaped), (gst_registry_xml_save_caps),
192 (gst_registry_xml_save_pad_template),
193 (gst_registry_xml_save_feature), (gst_registry_xml_save_plugin),
194 (gst_registry_xml_write_cache):
195 Rewrite registry-saving to avoid race conditions and check for
198 2006-03-08 Wim Taymans <wim@fluendo.com>
200 * libs/gst/base/gstbasetransform.c:
201 (gst_base_transform_transform_caps),
202 (gst_base_transform_transform_size),
203 (gst_base_transform_prepare_output_buffer),
204 (gst_base_transform_get_unit_size),
205 (gst_base_transform_buffer_alloc),
206 (gst_base_transform_handle_buffer),
207 (gst_base_transform_change_state):
208 Cleanups, separate normal flow from errors, add sensible
210 Don't try to renegotiate when allocating an output buffer.
211 Also copy DISCONT buffer flag when copying a buffer.
212 Reset the transform after we finish streaming, not during.
214 2006-03-08 Wim Taymans <wim@fluendo.com>
216 * libs/gst/base/gstbasesink.c: (gst_base_sink_do_sync):
217 Use last buffer timestamp in qos message.
219 2006-03-07 Wim Taymans <wim@fluendo.com>
221 Patch by: Christophe Fergeau
223 * docs/pwg/advanced-tagging.xml:
224 * docs/pwg/building-pads.xml:
227 2006-03-07 Wim Taymans <wim@fluendo.com>
229 * docs/libs/gstreamer-libs-sections.txt:
230 Added basesink new methods.
234 Docs updates. Flesh out the QoS docs.
236 * libs/gst/base/gstadapter.c:
237 Small doc clarification about ownership and flushing.
239 * libs/gst/base/gstbasesink.c: (gst_base_sink_set_sync),
240 (gst_base_sink_get_sync), (gst_base_sink_set_max_lateness),
241 (gst_base_sink_get_max_lateness), (gst_base_sink_set_property),
242 (gst_base_sink_get_property), (gst_base_sink_do_sync):
243 * libs/gst/base/gstbasesink.h:
245 Added new methods to allow subclass to control max-lateness
247 Generate very basic QoS events based on last sync observation.
248 Updated docs, fix typo, added some QoS blurb.
250 * libs/gst/base/gstbasesrc.c:
251 Remove obsolete _get_state() calls from docs.
253 2006-03-07 Wim Taymans <wim@fluendo.com>
255 * docs/libs/gstreamer-libs-sections.txt:
256 * libs/gst/base/gstbasetransform.h:
257 API addition: Fix #333669, Add pad accessor defines for GstBaseTransform
258 Fix docs for GstBaseSrc.
260 2006-03-07 Wim Taymans <wim@fluendo.com>
262 * docs/gst/gstreamer-sections.txt:
265 * libs/gst/base/gstbasetransform.h:
266 Small documentation fixes.
268 2006-03-07 Tim-Philipp Müller <tim at centricular dot net>
271 Document thread-unsafety of gst_value_register_foo_func()
272 when used at the same time as gst_value_foo() (#322628).
274 2006-03-07 Tim-Philipp Müller <tim at centricular dot net>
276 * libs/gst/base/gstpushsrc.c: (gst_push_src_class_init),
277 (gst_push_src_check_get_range):
278 Push sources don't support pull mode by default.
280 2006-03-06 Tim-Philipp Müller <tim at centricular dot net>
282 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
283 (gst_base_src_init), (gst_base_src_pad_check_get_range),
284 (gst_base_src_default_check_get_range):
285 * libs/gst/base/gstbasesrc.h:
286 API addition: Add ::check_get_range() vfunc to GstBaseSrc (#332611),
287 provide default implementation, and rename
288 gst_base_src_check_get_range() to
289 gst_base_src_pad_check_get_range() for clarity.
291 2006-03-06 Wim Taymans <wim@fluendo.com>
293 * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init):
294 Make property overridable.
296 2006-03-06 Wim Taymans <wim@fluendo.com>
298 * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init),
299 (gst_base_sink_init), (gst_base_sink_set_property),
300 (gst_base_sink_get_property), (gst_base_sink_do_sync):
301 * libs/gst/base/gstbasesink.h:
302 API addition: Make max-lateness a property.
304 2006-03-06 Wim Taymans <wim@fluendo.com>
306 * libs/gst/base/gstbasesink.c: (gst_base_sink_wait_clock),
307 (gst_base_sink_do_sync), (gst_base_sink_render_object):
308 Don't ever draw a frame that is >10ms late.
310 2006-03-06 Michael Smith <msmith@fluendo.com>
312 * gst/gstmessage.c: (_gst_message_copy):
313 When copying a message, set the parent_refcount of the enclosed
314 structure to point at the copy, not the original message.
316 2006-03-06 Tim-Philipp Müller <tim at centricular dot net>
318 Patch by: Christophe Fergeau
321 Do proper cast here to make GST_BOILERPLATE_WITH_INTERFACE
322 usable in c++ code (#333417)
324 2006-03-06 Thomas Vander Stichele <thomas at apestaart dot org>
327 Show GST_CLOCK_TIME_NONE as 99:99:99.999999999
329 2006-03-05 Tim-Philipp Müller <tim at centricular dot net>
331 * libs/gst/base/gstbasetransform.c:
332 (gst_base_transform_transform_caps):
333 Make sure caps are writable before passing them to
336 2006-03-04 Tim-Philipp Müller <tim at centricular dot net>
339 Fix some minor docs errors.
341 2006-03-04 Tim-Philipp Müller <tim at centricular dot net>
343 Patch by: Ross Burton <ross at burtonini dot com>
345 * gst/gsterror.c: (_gst_resource_errors_init):
347 Add GST_RESOURCE_ERROR_NO_SPACE_LEFT (for #333352;
349 2006-03-03 Jan Schmidt <thaytan@mad.scientist.com>
352 Add a check and output a g_warning when GStreamer is built
353 against GLib 2.6 but running against 2.8 or higher, and vice
354 versa. (Closes: #323542)
356 2006-03-03 Jan Schmidt <thaytan@mad.scientist.com>
359 Commit patch for parse_launch syntax from #331255. Removes
360 support for quoted strings and mimetypes when writing filtered
361 caps. See the bug report for more details - I'm pretty sure this
362 obscure feature is not in use by _anyone_ anywhere.
364 With this simple change, the size of the gstreamer.so here
365 drops from 2193KB to 1565KB.
367 2006-03-03 Tim-Philipp Müller <tim at centricular dot net>
369 * plugins/elements/gsttypefindelement.h:
370 * plugins/elements/gsttypefindelement.c:
371 (gst_type_find_element_src_event), (start_typefinding),
372 (stop_typefinding), (gst_type_find_element_handle_event),
373 (gst_type_find_element_chain),
374 (gst_type_find_element_chain_do_typefinding):
375 Use gst_type_find_helper_for_buffer() for chain-based
378 2006-03-03 Tim-Philipp Müller <tim at centricular dot net>
380 * plugins/elements/gsttypefindelement.c:
381 (gst_type_find_element_class_init),
382 (gst_type_find_element_set_property),
383 (gst_type_find_element_get_property):
384 Deprecate "maximum" property (not only was it only taken into
385 account for typefinding in push-mode anyway, it also was never
386 actually possible to set it in the first place because the
387 property was registered with the numeric property ID for the
388 "minimum" property). Register "maximum" property correctly,
389 for the sake of future copy'n'pasters. Remove some cruft
390 from property get/set functions.
392 2006-03-03 Tim-Philipp Müller <tim at centricular dot net>
394 * plugins/elements/gsttypefindelement.c:
395 (gst_type_find_element_activate):
396 Use gst_type_find_helper_get_range() here, so we
397 can honour the "minimum" property and also emit
398 the signal with the correct probability of the found caps.
400 2006-03-02 Tim-Philipp Müller <tim at centricular dot net>
402 * docs/libs/gstreamer-libs-sections.txt:
403 * libs/gst/base/gsttypefindhelper.c: (helper_find_peek),
404 (helper_find_suggest), (gst_type_find_helper_get_range),
405 (gst_type_find_helper):
406 * libs/gst/base/gsttypefindhelper.h:
407 New API: gst_type_find_helper_get_range() (#333042).
409 2006-03-02 Michael Smith <msmith@fluendo.com>
411 * gst/gstregistryxml.c: (load_feature):
412 Asserting on a failure to read part of the registry is Not Cool.
413 Just log a warning and return NULL (which is already handled)
415 2006-02-28 Sebastien Moutte <sebastien@moutte.net>
417 * win32/common/libgstbase.def:
418 added export of gst_type_find_helper_for_buffer
419 * win32/common/libgstbase.def:
420 added some exports : gst_bin_iterate_elements, gst_iterator_resync,
421 gst_ghost_pad_get_target
423 2006-02-28 Wim Taymans <wim@fluendo.com>
425 * docs/design/draft-klass.txt:
427 Added Connector to mark elements that are only used to
428 allow pipeline connections.
429 Moved Debug to extra feature since most of them are
430 functionally something else.
432 2006-02-28 Wim Taymans <wim@fluendo.com>
434 * docs/design/draft-klass.txt:
435 Some updates and clarifications.
437 2006-02-28 Wim Taymans <wim@fluendo.com>
439 * docs/design/draft-klass.txt:
440 Proposal for klass field values.
442 * docs/design/part-streams.txt:
443 Start of a doc describing stream anatomy.
445 2006-02-28 Wim Taymans <wim@fluendo.com>
447 * gst/gstbin.c: (gst_bin_get_type), (gst_bin_handle_message_func):
448 Help the compiler a bit with type registration.
449 Use existing forward cod path instead of duplicating it when
452 * gst/gstbus.c: (gst_bus_get_type):
453 * gst/gstcaps.c: (gst_caps_get_type), (gst_static_caps_get_type):
454 * gst/gstchildproxy.c: (gst_child_proxy_get_type):
455 * gst/gstclock.c: (gst_clock_get_type):
456 * gst/gstelement.c: (gst_element_get_type),
457 * gst/gstelementfactory.c: (gst_element_factory_get_type):
458 * gst/gstindexfactory.c: (gst_index_factory_get_type):
459 * gst/gstminiobject.c: (gst_mini_object_get_type):
460 * gst/gstpad.c: (gst_pad_get_type):
461 * gst/gstsegment.c: (gst_segment_get_type):
462 * gst/gststructure.c: (gst_structure_get_type):
463 * gst/gstsystemclock.c: (gst_system_clock_get_type):
464 * gst/gsttask.c: (gst_task_get_type), (gst_task_join):
466 Help compiler with type registration.
468 * plugins/elements/gstqueue.c: (gst_queue_handle_sink_event):
471 2006-02-27 Tim-Philipp Müller <tim at centricular dot net>
473 * plugins/elements/gsttypefindelement.c:
474 (gst_type_find_element_handle_event):
475 When we get an EOS event and have not found a type yet
476 (most likely because we had not yet accumulated
477 TYPE_FIND_MIN_SIZE of data yet), try to determine the
478 type given the data we have so far. Fixes typefinding
479 for very short streams again, most notably quicktime
480 redirections as used on Apple's trailer site (#331701).
482 2006-02-27 Tim-Philipp Müller <tim at centricular dot net>
484 * libs/gst/base/gsttypefindhelper.c: (type_find_factory_rank_cmp),
485 (gst_type_find_helper):
486 Try typefinding factories with the highest rank first.
488 2006-02-27 Tim-Philipp Müller <tim at centricular dot net>
490 * docs/libs/gstreamer-libs-docs.sgml:
491 * docs/libs/gstreamer-libs-sections.txt:
492 * libs/gst/base/gsttypefindhelper.c:
493 Add section for typefind helper and add documentation
494 for the old and the new function.
496 2006-02-27 Tim-Philipp Müller <tim at centricular dot net>
498 * libs/gst/base/gsttypefindhelper.c: (buf_helper_find_peek),
499 (buf_helper_find_suggest), (type_find_factory_rank_cmp),
500 (gst_type_find_helper_for_buffer):
501 * libs/gst/base/gsttypefindhelper.h:
502 New API: gst_type_find_helper_for_buffer() (#332723).
504 2006-02-27 Michael Smith <msmith@fluendo.com>
506 Patch by: Loïc Minier
510 * docs/slides/Makefile.am:
511 prevent CVS directories getting disted.
513 2006-02-27 Tim-Philipp Müller <tim at centricular dot net>
515 * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref):
516 Use the REFCOUNTING category for caps refcounting.
518 2006-02-26 Tim-Philipp Müller <tim at centricular dot net>
520 * plugins/elements/gsttypefindelement.c: (stop_typefinding):
521 This should be 0 not GST_CLOCK_TIME_NONE (see #331701).
523 2006-02-26 Tim-Philipp Müller <tim at centricular dot net>
525 * plugins/elements/gsttypefindelement.c:
526 (gst_type_find_element_activate):
527 Use gst_pad_check_pull_range() before _activate_pull()
528 to avoid unnecessary open/close (see #331690).
530 2006-02-24 Tim-Philipp Müller <tim at centricular dot net>
533 Docs enhancement: make it crystal clear what the
534 gst_pad_add_*_probe() callbacks should look like.
536 2006-02-24 Tim-Philipp Müller <tim at centricular dot net>
538 * libs/gst/base/gstbasesrc.c:
539 Document how applications can stop recording from
540 live sources (see #330996).
542 2006-02-23 Tim-Philipp Müller <tim at centricular dot net>
544 * tests/check/Makefile.am:
545 * tests/check/libs/basesrc.c: (eos_event_counter),
546 (basesrc_eos_events_pull), (basesrc_eos_events_push),
547 (basesrc_eos_events_push_live_op), (basesrc_eos_events_pull_live_op),
548 (gst_basesrc_suite), (main):
549 ... and add some tests for the base source EOS stuff.
551 2006-02-23 Tim-Philipp Müller <tim at centricular dot net>
553 * tests/check/gst/gstutils.c: (test_buffer_probe_n_times):
554 Test case originally showed the problem fixed below,
555 but was then amended. Add checks back at the place
556 where they used to be.
558 2006-02-23 Tim-Philipp Müller <tim at centricular dot net>
560 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
561 (gst_base_src_init), (gst_base_src_loop),
562 (gst_base_src_activate_push), (gst_base_src_activate_pull),
563 (gst_base_src_change_state):
564 * libs/gst/base/gstbasesrc.h:
565 Don't unconditionally send EOS when going from PAUSED to
566 READY state, esp. make sure we don't send two EOS events
567 in some cases (e.g. one when reaching EOS and one when
568 going from PAUSED to READY). Also, we don't want to send
569 EOS events when operating in pull mode. However, we do
570 want to send an EOS event when shutting down a live
571 source explicitly, for example (fixes #330996).
573 2006-02-23 Tim-Philipp Müller <tim at centricular dot net>
575 * plugins/elements/gstfilesrc.c: (gst_file_src_create_read):
576 Update src->read_position after a seek when not using mmap.
577 Fixes #332277, patch by: Renchi Raju <renchi gmail com>
579 2006-02-21 Jan Schmidt <thaytan@mad.scientist.com>
585 Make things work with --disable-parse as they do with
586 --disable-load-save - the symbols involved disappear, but the
587 header is still installed and GST_DISABLE_PARSE is included via
590 2006-02-20 Julien MOUTTE <julien@moutte.net>
592 * libs/gst/base/gstbasetransform.c:
593 (gst_base_transform_change_state): Fix a stupid bug. I was
594 sure I compiled that.
596 2006-02-20 Julien MOUTTE <julien@moutte.net>
598 * gst/gstpad.c: (gst_pad_set_blocked_async):
599 * gst/gstutils.c: (gst_pad_add_data_probe),
600 (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
601 (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
602 (gst_pad_remove_buffer_probe): Make those function act on the
603 ghostpad target when it's a ghostpad. (Closes #331727)
605 2006-02-20 Julien MOUTTE <julien@moutte.net>
607 * libs/gst/base/gstbasetransform.c:
608 (gst_base_transform_change_state): Make basetransform reusable.
611 2006-02-20 Jan Schmidt <thaytan@mad.scientist.com>
613 * docs/random/release:
614 Move the current documentation of how to do a release to the top
617 * gst/gstbin.c: (gst_bin_class_init),
618 (gst_bin_handle_message_func):
619 Allow multiple state-recalculation threads. (Closes #328873)
621 2006-02-19 Julien MOUTTE <julien@moutte.net>
623 * gst/gstinfo.h: Add GST_STR_NULL to the second string.
624 * gst/gstpad.c: (gst_pad_set_event_function),
625 (gst_pad_set_query_function), (gst_pad_set_query_type_function),
626 (gst_pad_set_getcaps_function): GST_DEBUG_PAD_NAME evaluates to
627 2 strings. You can't use the STR_NULL macro on that.
629 2006-02-19 Sebastien Moutte <sebastien@moutte.net>
631 * gst/gstpad.c: (gst_pad_set_event_function),
632 (gst_pad_set_query_function), (gst_pad_set_query_type_function),
633 (gst_pad_set_getcaps_function)
634 * gst/parse/grammar.y: (gst_parse_found_pad), (gst_parse_perform_delayed_link)
635 Fixed NULL pointer used in GST_CAT_DEBUG using GST_STR_NULL macro
636 So now, we can use --gst-debug-level=5 on Windows
637 * win32/common/libgstcontroller.def:
638 Added export of gst_controller_init
639 * win32/vs6/libgstcontroller.dsp:
640 Fixed Release post build configuration
642 2006-02-17 Wim Taymans <wim@fluendo.com>
644 * tests/check/gst/gstquery.c: (GST_START_TEST):
647 2006-02-15 Tim-Philipp Müller <tim at centricular dot net>
649 * plugins/elements/gsttypefindelement.c: (find_peek):
650 We can do peeks at non-zero offsets, as long as they
651 fall within the buffer we have.
653 2006-02-15 Jan Schmidt <thaytan@mad.scientist.com>
655 * tests/check/Makefile.am:
656 * tests/check/pipelines/parse-launch.c: (setup_pipeline),
657 (expected_fail_pipe), (check_pipeline_runs), (GST_START_TEST),
658 (parse_suite), (main):
659 Add testsuite for parse launch syntax
661 2006-02-14 Tim-Philipp Müller <tim at centricular dot net>
663 * plugins/elements/gsttypefindelement.c:
664 (gst_type_find_element_chain):
665 When typefinding is unsuccessful in the chain function, don't
666 error out immediately. Only error out with NO_CAPS_FOUND if
667 the amount of data is at least MAX_TYPEFIND_SIZE bytes,
668 otherwise simply wait for more data so we can try typefinding
669 again with more data later. Also, don't attempt to typefind
670 if we have less than MIN_TYPEFIND_SIZE data available. Overall,
671 this should improve typefinding from network sources where the
672 size of the first buffer can be somewhat random.
674 2006-02-14 Wim Taymans <wim@fluendo.com>
676 * docs/gst/gstreamer-sections.txt:
677 * gst/gstpadtemplate.c:
678 * gst/gstpadtemplate.h:
679 Fix padtemplate docs, fixes #328805.
681 2006-02-14 Wim Taymans <wim@fluendo.com>
683 * tools/gst-launch.c: (main):
684 NO_PREROLL is not an ERROR so don't send confusing messages
687 2006-02-14 Wim Taymans <wim@fluendo.com>
689 Patch by: Torsten Schoenfeld
691 * gst/gstregistry.c: (gst_registry_get_default),
692 (_gst_registry_cleanup):
693 Protect default registry with lock and ref/sink it.
696 2006-02-14 Wim Taymans <wim@fluendo.com>
699 * gst/gstquery.c: (gst_query_list_add_format),
700 (gst_query_set_formatsv), (gst_query_parse_formats_length),
701 (gst_query_parse_formats_nth):
702 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times):
705 2006-02-14 Wim Taymans <wim@fluendo.com>
707 * docs/gst/gstreamer-sections.txt:
710 * gst/gstquery.c: (gst_query_new_formats),
711 (gst_query_list_add_format), (gst_query_set_formats),
712 (gst_query_set_formatsv), (gst_query_parse_formats_length),
713 (gst_query_parse_formats_nth):
715 Flesh out formats query, added some new methods.
718 * tests/check/gst/gstquery.c: (GST_START_TEST), (gstquery_suite):
719 Added query creation tests.
721 2006-02-14 Jan Schmidt <thaytan@mad.scientist.com>
723 * gst/gstpad.c: (fixate_value):
724 Add a default fixation for fraction lists.
726 2006-02-13 Wim Taymans <wim@fluendo.com>
728 * gst/gsttask.c: (gst_task_init), (gst_task_func),
729 (gst_task_set_lock), (gst_task_start), (gst_task_pause),
732 Detect and warn for obvious deadlocks. fixes #320340
733 Fix error case where lock was not released.
735 * tests/check/Makefile.am:
736 * tests/check/gst/gsttask.c: (task_func2), (GST_START_TEST),
737 (task_func), (gst_element_suite), (main):
740 2006-02-13 Wim Taymans <wim@fluendo.com>
742 * docs/gst/gstreamer-sections.txt:
744 Add new functions to docs.
746 2006-02-13 Wim Taymans <wim@fluendo.com>
748 * docs/design/part-TODO.txt:
749 Updated TODO list, basesrc supports seeking to non-bytes
752 * docs/design/part-element-sink.txt:
755 * gst/gstbin.c: (bin_replace_message),
756 (gst_bin_handle_message_func):
757 * gst/gstbus.c: (gst_bus_post), (gst_bus_pop):
758 * gst/gstevent.c: (gst_event_finalize):
759 * gst/gstpad.c: (gst_pad_event_default_dispatch),
760 (gst_pad_send_event):
761 Use shiny new _TYPE_NAME macros.
763 * libs/gst/base/gstbasesrc.c: (gst_base_src_get_range):
764 Move debug statement up.
766 * gst/gstelement.c: (gst_element_set_locked_state):
769 2006-02-13 Tim-Philipp Müller <tim at centricular dot net>
771 * docs/gst/gstreamer-sections.txt:
774 New API: add GST_MESSAGE_TYPE_NAME and GST_QUERY_TYPE_NAME
775 macros (#330906). Also, document the already existing
776 GST_QUERY_TYPE macro.
778 2006-02-13 Wim Taymans <wim@fluendo.com>
780 * tests/check/gst/gstutils.c: (data_probe), (buffer_probe),
781 (event_probe), (GST_START_TEST):
782 Only events up to the pipeline EOS are counted, there are
783 some more when going to NULL currently which we don't care
786 2006-02-13 Wim Taymans <wim@fluendo.com>
788 * gst/gstpad.c: (gst_pad_send_event):
789 Correctly check flushing and emit probes. fixes #330125
791 2006-02-10 Andy Wingo <wingo@pobox.com>
793 * gst/gstbus.c (gst_bus_class_init): Declare our private data
795 (gst_bus_init): Cache the location of the private data in the
797 (gst_bus_enable_sync_message_emission)
798 (gst_bus_disable_sync_message_emission): Implement new public
800 (gst_bus_post): Emit the sync-message signal if the user asked for
803 * gst/gstbus.h (GstBus): Use a padding pointer to cache the
804 location of the bus-private structure.
805 (gst_bus_enable_sync_message_emission)
806 (gst_bus_disable_sync_message_emission): API addition
808 2006-02-10 Jan Schmidt <thaytan@mad.scientist.com>
810 Patch by: Vincent Torri
812 * docs/pwg/building-boiler.xml:
813 PWG patch from #326800
815 2006-02-09 Tim-Philipp Müller <tim at centricular dot net>
819 * docs/design/Makefile.am:
822 2006-02-08 Jan Schmidt <thaytan@mad.scientist.com>
827 === release 0.10.3 ===
829 2006-02-08 Jan Schmidt <thaytan@mad.scientist.com>
832 releasing 0.10.3, "Like a virgin"
834 2006-02-08 Jan Schmidt <thaytan@mad.scientist.com>
837 2nd prerelease of 0.10.3
838 Bump libtool versioning.
840 2006-02-07 Andy Wingo <wingo@pobox.com>
842 * libs/gst/base/gstcollectpads.c (gst_collect_pads_chain): Only
843 update last_stop if we're in TIME format and the timestamp is
846 * libs/gst/base/gstcollectpads.c (gst_collect_pads_event)
847 * libs/gst/base/gstbasetransform.c (gst_base_transform_eventfunc):
848 * libs/gst/base/gstbasesink.c (gst_base_sink_configure_segment):
849 If we get a new newsegment with a different format, adapt
852 * gst/gstclock.c (gst_clock_set_calibration): Accept a numerator
853 of 0. Not a problem, really.
855 * libs/gst/base/gstbasesink.c (gst_base_sink_chain_unlocked): Only
858 2006-02-06 Jan Schmidt <thaytan@mad.scientist.com>
863 2006-02-06 Sebastien Moutte <sebastien@moutte.net>
866 project files updated to the default vs7 configuration
867 * win32/common/libgstbase.def:
868 * win32/common/libgstreamer.def:
871 sorted all exported symbols alphabetically
872 * win32/common/dirent.c:
873 * win32/common/dirent.h:
874 * win32/common/gchar.h:
875 use windows line end.
877 2006-02-06 Tim-Philipp Müller <tim at centricular dot net>
879 * libs/gst/base/gstbasesrc.c: (gst_base_src_change_state):
880 Send EOS event when stopping.
882 2006-02-06 Tim-Philipp Müller <tim at centricular dot net>
885 Tell folks what to do if the plugin-foobar.xml file
886 hasn't been generated for a newly-added plugin.
888 2006-02-05 Julien MOUTTE <julien@moutte.net>
890 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_finalize),
891 (gst_collect_pads_add_pad), (gst_collect_pads_remove_pad),
892 (gst_collect_pads_start), (gst_collect_pads_stop),
893 (gst_collect_pads_event): Collectpads now holds a reference
894 to the GstPad that was added. Indeed we don't want to look
895 at pads that might just go away with no warning...
897 2006-02-05 Julien MOUTTE <julien@moutte.net>
899 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_add_pad),
900 (gst_collect_pads_start), (gst_collect_pads_stop),
901 (gst_collect_pads_event), (gst_collect_pads_chain):
902 * libs/gst/base/gstcollectpads.h: Handle flush. Adapted from
903 Mark Nauwelaerts's patch on bug #328491.
905 2006-02-04 Tim-Philipp Müller <tim at centricular dot net>
907 * tests/check/gst/gstutils.c: (test_parse_bin_from_description),
909 Add some simple tests for gst_parse_bin_from_description() and
910 gst_bin_find_unconnected_pad() (#329069).
912 2006-02-04 Tim-Philipp Müller <tim at centricular dot net>
914 * tools/gst-launch.c: (event_loop), (main):
915 Catch errors during preroll (#320084).
917 2006-02-03 Tim-Philipp Müller <tim at centricular dot net>
919 * plugins/elements/gsttypefindelement.c:
920 (gst_type_find_element_activate):
921 Post TYPE_NOT_FOUND error message when typefinding
922 is unsuccessful in the activate function as well.
924 2006-02-02 Wim Taymans <wim@fluendo.com>
926 * docs/design/part-element-sink.txt:
929 2006-02-02 Wim Taymans <wim@fluendo.com>
931 * libs/gst/base/gstbasesink.c: (gst_base_sink_do_sync),
932 (gst_base_sink_render_object),
933 (gst_base_sink_queue_object_unlocked):
934 Only keep track of prerollable items when we are
936 Before rendering after preroll, always check if we
938 Added some more debugging.
940 2006-02-02 Wim Taymans <wim@fluendo.com>
942 * gst/gstelement.c: (gst_element_continue_state),
943 (gst_element_set_state_func), (gst_element_change_state):
944 Fixed #326576, been running this for quite some time with
945 no regressions at all.
947 2006-02-02 Wim Taymans <wim@fluendo.com>
950 Added more suppressions
952 2006-02-02 Wim Taymans <wim@fluendo.com>
954 * docs/design/part-element-sink.txt:
957 * libs/gst/base/gstbasesink.c: (gst_base_sink_init),
958 (gst_base_sink_finalize), (gst_base_sink_preroll_queue_flush),
959 (gst_base_sink_configure_segment), (gst_base_sink_commit_state),
960 (gst_base_sink_get_sync_times), (gst_base_sink_wait_clock),
961 (gst_base_sink_do_sync), (gst_base_sink_render_object),
962 (gst_base_sink_preroll_object),
963 (gst_base_sink_queue_object_unlocked),
964 (gst_base_sink_queue_object), (gst_base_sink_event),
965 (gst_base_sink_chain_unlocked), (gst_base_sink_chain),
966 (gst_base_sink_loop), (gst_base_sink_activate_pull),
967 (gst_base_sink_get_position), (gst_base_sink_change_state):
968 * libs/gst/base/gstbasesink.h:
969 Totally refactored matching the design doc.
970 Use two segments, one to clip incomming buffers and another to
972 Handle queueing correctly, bypass the queue when playing.
974 Handle errors correctly when operating in pull based mode.
976 * tests/check/elements/fakesink.c: (GST_START_TEST),
978 Added new check for sinks.
980 2006-02-02 Wim Taymans <wim@fluendo.com>
982 * gst/gstsegment.c: (gst_segment_clip):
983 No reason to refuse to clip when start == -1
985 2006-02-02 Stefan Kost <ensonic@users.sf.net>
988 * docs/manual/intro-basics.xml:
989 * docs/manual/intro-preface.xml:
990 * docs/manual/manual.xml:
991 * docs/pwg/advanced-dparams.xml:
992 * docs/pwg/intro-basics.xml:
993 * docs/pwg/intro-preface.xml:
995 describe dparams (controller) for plugins
996 unify docs a little more
998 2006-02-02 Tim-Philipp Müller <tim at centricular dot net>
1000 * docs/gst/gstreamer-sections.txt:
1001 * gst/gstutils.c: (element_find_unconnected_pad),
1002 (gst_bin_find_unconnected_pad), (gst_parse_bin_from_description):
1004 Add new API: gst_parse_bin_from_description() and
1005 gst_bin_find_unconnected_pad() (#329069).
1007 2006-02-01 Stefan Kost <ensonic@users.sf.net>
1009 * docs/manual/README:
1010 uncover a nasty detail of the docs build
1012 2006-01-31 Wim Taymans <wim@fluendo.com>
1014 * gst/gstbin.c: (bin_remove_messages), (bin_query_duration_done):
1015 Don't cache duration messages if we're not going to use or
1018 2006-01-31 Stefan Kost <ensonic@users.sf.net>
1020 * docs/manual/advanced-dparams.xml:
1021 * docs/pwg/advanced-dparams.xml:
1025 * libs/gst/controller/lib.c: (gst_controller_init):
1028 2006-01-31 Thomas Vander Stichele <thomas at apestaart dot org>
1030 * gst/gstelement.c: (gst_element_message_full):
1031 also show file/line/func if no additional debug was given
1033 2006-01-31 Sebastien Moutte <sebastien@moutte.net>
1035 * win32/vs7/grammar.vcproj:
1036 activate copy of autogenerated files for Release mode
1038 2006-01-30 Sebastien Moutte <sebastien@moutte.net>
1040 * win32/common/libgstreamer.def:
1041 export gst_value_compare
1043 2006-01-30 Jan Schmidt <thaytan@mad.scientist.com>
1045 * plugins/elements/Makefile.am:
1046 * plugins/elements/gstelements.c:
1047 * plugins/elements/gstfdsink.c: (_do_init),
1048 (gst_fd_sink_base_init), (gst_fd_sink_class_init),
1049 (gst_fd_sink_init), (gst_fd_sink_dispose), (gst_fd_sink_query),
1050 (gst_fd_sink_render), (gst_fd_sink_check_fd), (gst_fd_sink_start),
1051 (gst_fd_sink_stop), (gst_fd_sink_unlock), (gst_fd_sink_update_fd),
1052 (gst_fd_sink_set_property), (gst_fd_sink_uri_get_type),
1053 (gst_fd_sink_uri_get_protocols), (gst_fd_sink_uri_get_uri),
1054 (gst_fd_sink_uri_set_uri), (gst_fd_sink_uri_handler_init):
1055 * plugins/elements/gstfdsink.h:
1056 Port fdsink to 0.10 (patch by Philippe Rouquier) (Fixes #325490)
1058 2006-01-30 Stefan Kost <ensonic@users.sf.net>
1060 * docs/manual/advanced-dparams.xml:
1062 * docs/manual/advanced-position.xml:
1063 * docs/manual/basics-init.xml:
1064 * docs/manual/manual.xml:
1065 * docs/manual/titlepage.xml:
1067 * docs/pwg/titlepage.xml:
1068 cleanup xml (more to come)
1069 * libs/gst/controller/gstcontroller.c:
1072 2006-01-30 Sebastien Moutte <sebastien@moutte.net>
1074 * win32/vs6/grammar.dsp:
1075 add autogen of gstmarshal.c,h for Release mode
1077 2006-01-30 Wim Taymans <wim@fluendo.com>
1079 * libs/gst/base/gstbasesink.c: (gst_base_sink_init),
1080 (gst_base_sink_preroll_queue_empty), (gst_base_sink_commit_state),
1081 (gst_base_sink_handle_object), (gst_base_sink_event),
1082 (gst_base_sink_is_prerolled), (gst_base_sink_wait),
1083 (gst_base_sink_do_sync), (gst_base_sink_handle_event),
1084 (gst_base_sink_handle_buffer), (gst_base_sink_set_flushing),
1085 (gst_base_sink_deactivate), (gst_base_sink_activate),
1086 (gst_base_sink_activate_pull), (gst_base_sink_get_position),
1087 (gst_base_sink_query), (gst_base_sink_change_state):
1088 Basesink cleanups, remove some old code.
1089 Handle the case where a subclass can preroll in the render
1090 method (mostly audiosinks).
1092 Remove some locks around variables that are now protected
1093 with the PREROLL_LOCK (clock_id, flushing, ..).
1094 Optimize position query some more, do correct locking.
1095 Remove old code to push queue in state change, this is not
1096 needed anymore since preroll blocks on all prerollable items
1098 Almost implemented as described in design doc.
1100 2006-01-30 Wim Taymans <wim@fluendo.com>
1102 * tests/check/gst/gstbin.c: (GST_START_TEST):
1103 Wait for refcount to settle down before checking.
1105 2006-01-30 Wim Taymans <wim@fluendo.com>
1107 * docs/design/part-element-sink.txt:
1108 Pseudo code overview of desired sink behaviour regarding
1111 2006-01-29 Sebastien Moutte <sebastien@moutte.net>
1112 * win32/vs6/grammar.dsp:
1113 fix some bugs in Release mode for autogenerated files
1115 2006-01-29 Sebastien Moutte <sebastien@moutte.net>
1116 * win32/common/libgstbase.def:
1117 * win32/common/libgstreamer.def:
1118 export some new symbols: gst_base_src_set_format,
1119 gst_iterator_next, gst_structure_set_valist
1121 2006-01-29 Julien MOUTTE <julien@moutte.net>
1123 * gst/gstghostpad.c: (gst_proxy_pad_set_target_unlocked):
1124 Set pad functions unconditionally. Fixes #329105.
1126 2006-01-29 Sebastien Moutte <sebastien@moutte.net>
1128 add vs8 project files created by Sergey Scobich
1130 2006-01-28 Jan Schmidt <thaytan@mad.scientist.com>
1132 * gst/gstutils.c: (gst_element_unlink_pads):
1133 Don't leak pad references.
1135 * tests/check/elements/fakesink.c: (GST_START_TEST):
1136 * tests/check/generic/sinks.c: (GST_START_TEST):
1137 * tests/check/generic/states.c: (GST_START_TEST):
1138 * tests/check/gst/gstbin.c: (GST_START_TEST):
1139 * tests/check/gst/gstcaps.c: (GST_START_TEST):
1140 * tests/check/gst/gstelement.c: (GST_START_TEST):
1141 * tests/check/gst/gstghostpad.c: (GST_START_TEST):
1142 * tests/check/gst/gstiterator.c: (GST_START_TEST):
1143 * tests/check/gst/gstvalue.c: (GST_START_TEST):
1144 Fix a bunch of leaks. Make generic/sinks.c
1145 use a bit less cpu by slowing the buffer rate
1146 between fakesrc and fakesink.
1148 2006-01-27 Stefan Kost <ensonic@users.sf.net>
1150 * gst/gstelement.c: (gst_element_send_event):
1153 * gst/gstiterator.c:
1154 * gst/gstiterator.h:
1155 * gst/gstpad.c: (gst_pad_send_event):
1156 * gst/gststructure.c:
1160 * libs/gst/base/gstadapter.c:
1161 doc fixes, to link to function, just write gst_cool_function(), don't
1164 2006-01-27 Jan Schmidt <thaytan@mad.scientist.com>
1166 * plugins/elements/gsttee.c: (gst_tee_do_push),
1167 (gst_tee_handle_buffer):
1168 Always prefer an actual return value from a src
1169 pad in place of NOT_LINKED. This means we return
1170 WRONG_STATE when all src pads are WRONG_STATE
1171 instead of NOT_LINKED.
1173 Lock when replacing the last message to prevent
1174 racing with the get_property method.
1178 2006-01-27 Jan Schmidt <thaytan@mad.scientist.com>
1180 * tests/check/Makefile.am:
1181 * tests/check/gst/gstquery.c: (GST_START_TEST), (gstquery_suite),
1183 Add a very simple check that should have caught the memleak I fixed
1184 last night (if not for the slice allocator hiding it)
1186 2006-01-27 Jan Schmidt <thaytan@mad.scientist.com>
1188 * gst/gstbin.c: (gst_bin_dispose), (gst_bin_provide_clock_func),
1189 (gst_bin_remove_func), (gst_bin_handle_message_func),
1190 (bin_query_duration_fold), (bin_query_generic_fold):
1191 Clean up references to the clock provider when disposed or when
1192 handling a clock-lost message from it.
1194 Unref sinks when performing a query via gst_iterator_fold, as the
1195 gst_bin_iterate_sinks iterator refs each item. (Fixes #323874)
1197 * gst/gstclock.c: (gst_clock_class_init), (gst_clock_dispose),
1198 (gst_clock_set_master):
1199 Drop our reference to the master clock, if any, when we are disposed.
1201 * gst/gsttypefindfactory.c: (gst_type_find_factory_dispose):
1202 Chain up in dispose.
1204 2006-01-26 Wim Taymans <wim@fluendo.com>
1206 * libs/gst/base/gstbasesrc.c: (gst_base_src_get_range):
1209 2006-01-26 Julien MOUTTE <julien@moutte.net>
1211 * plugins/elements/gsttee.c: (gst_tee_do_push),
1212 (gst_tee_handle_buffer): Apply patch from #328715. Tee now
1213 handles pad being NOT_LINKED or in WRONG_STATE.
1215 2006-01-26 Stefan Kost <ensonic@users.sf.net>
1220 2006-01-26 Stefan Kost <ensonic@users.sf.net>
1223 remove obsolete entry
1225 2006-01-26 Stefan Kost <ensonic@users.sf.net>
1227 * docs/gst/gstreamer-sections.txt:
1228 * gst/gstbin.c: (bin_element_is_src), (src_iterator_filter),
1229 (gst_bin_iterate_sources), (gst_bin_send_event):
1231 * gst/gstelement.c: (gst_element_send_event):
1233 * gst/gstpad.c: (gst_pad_send_event):
1234 added code for downstream events, reviewed docs in gstevent.c
1236 2006-01-25 Julien MOUTTE <julien@moutte.net>
1238 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_position):
1239 We only query position using the clock in the playing state.
1240 Query peer in the other cases.
1241 * win32/common/config.h: Updates.
1243 2006-01-24 Wim Taymans <wim@fluendo.com>
1245 * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
1246 A clock entry that is scheduled for the exact time of the
1247 clock is still in time.
1249 * libs/gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1250 (gst_base_sink_do_sync):
1251 Add some more debug info.
1253 2006-01-23 Sebastien Moutte <sebastien@moutte.net>
1256 Add new vs7 project files and solution.
1258 2006-01-23 Sebastien Moutte <sebastien@moutte.net>
1261 all files removed as they were out-dated.
1263 2006-01-20 Thomas Vander Stichele <thomas at apestaart dot org>
1265 * docs/random/release:
1267 * gst/gstbin.c: (gst_bin_init):
1268 * gst/gstbus.c: (gst_bus_new):
1270 * gst/gstpipeline.c: (gst_pipeline_init):
1271 use gst_bus_new(), improve logging, fix docs
1272 * win32/common/config.h:
1273 update for cvs build
1275 2006-01-20 Thomas Vander Stichele <thomas at apestaart dot org>
1278 up required version of automake to 1.7
1280 2006-01-20 Sebastien Moutte <sebastien@moutte.net>
1282 * win32/common/libgstreamer.def:
1283 export gst_buffer_is_metadata_writable
1285 2006-01-20 Tim-Philipp Müller <tim at centricular dot net>
1287 * docs/gst/gstreamer-sections.txt:
1289 Add gst_event_replace() (#327001)
1291 2006-01-20 Wim Taymans <wim@fluendo.com>
1293 * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
1294 Make it actually compile too..
1296 2006-01-20 Wim Taymans <wim@fluendo.com>
1299 Clarify behaviour of _is_equal() when passing NULL parameters.
1301 * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
1303 Cleanups. Don't unref NULL caps.
1304 When setting the same caps, protect caps of the pad with
1306 Use full functionality of _is_equal() when comparing caps.
1308 2006-01-20 Jan Schmidt <thaytan@mad.scientist.com>
1310 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_is_collected):
1311 Don't loop infinitely if there are no buffers to present. Partially
1312 fixes #327197, but collectpads is just broken for reusing elements
1313 to do multiple encodes atm.
1315 2006-01-20 Jan Schmidt <thaytan@mad.scientist.com>
1317 * tools/gst-inspect.c: (print_element_features):
1318 * tools/gst-xmlinspect.c: (main):
1319 URL_HANDLER is not a plugin feature we can search for in
1322 2006-01-19 Edward Hervey <edward@fluendo.com>
1324 * gst/gstelement.c: (gst_element_pads_activate):
1325 When activating, do src pads first, then sink pads.
1326 When de-activating, do sink pads first, then src pads.
1328 2006-01-19 Jan Schmidt <thaytan@mad.scientist.com>
1330 * docs/gst/gstreamer-sections.txt:
1331 Add gst_index_add_associationv to the docs
1333 2006-01-19 Jan Schmidt <thaytan@mad.scientist.com>
1338 * plugins/elements/gstqueue.c: (gst_queue_handle_sink_event),
1339 (gst_queue_chain), (gst_queue_push_one), (gst_queue_loop):
1340 Do some refactoring. Doesn't actually change functionality,
1341 but makes landing the DRAIN event easier later.
1343 2006-01-19 Tim-Philipp Müller <tim at centricular dot net>
1345 * docs/pwg/advanced-scheduling.xml:
1346 Update from 0.9.x to 0.10 API and make example a bit
1349 2006-01-19 Jan Schmidt <thaytan@mad.scientist.com>
1351 * docs/gst/gstreamer-sections.txt:
1352 Add gst_buffer_(is|make)_metadata_writable methods.
1354 2006-01-19 Jan Schmidt <thaytan@mad.scientist.com>
1356 * docs/design/part-sparsestreams.txt:
1357 Update sparse streams doc, hopefully for greater clarity
1359 2006-01-18 Jan Schmidt <thaytan@mad.scientist.com>
1361 * docs/design/part-events.txt:
1362 Remove mention of FILLER events.
1365 * docs/design/part-sparsestreams.txt:
1366 Write some things about using NEWSEGMENT to keep sparse streams
1369 2006-01-18 Tim-Philipp Müller <tim at centricular dot net>
1371 * gst/gstbin.c: (gst_bin_dispose):
1372 Guard gst_object_unref call against a NULL object (dispose
1373 can theoretically be called multiple times).
1375 2006-01-18 Wim Taymans <wim@fluendo.com>
1377 * gst/gstbin.c: (gst_bin_element_set_state):
1378 * gst/gstclock.c: (gst_clock_id_wait):
1379 Added some more debug info.
1381 * libs/gst/base/gstadapter.c:
1384 * libs/gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1385 (gst_base_sink_do_sync), (gst_base_sink_chain):
1386 Added some comments.
1388 2006-01-18 Wim Taymans <wim@fluendo.com>
1390 * tests/check/Makefile.am:
1391 * tests/check/elements/fakesink.c: (chain_async_buffer),
1392 (chain_async), (chain_async_return), (GST_START_TEST),
1393 (fakesink_suite), (main):
1394 Added fakesink test that checks prerolling and clipping
1397 * tests/check/gst/gstutils.c: (GST_START_TEST):
1398 Make check run faster so that buildbots don't timeout.
1400 2006-01-18 Wim Taymans <wim@fluendo.com>
1402 * libs/gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1403 (gst_base_sink_do_sync):
1405 When the sink finishes blocking on the preroll buffer, it can
1406 immediatly render it instead of rendering when the next buffer
1409 2006-01-18 Wim Taymans <wim@fluendo.com>
1411 * libs/gst/base/gstbasesink.c: (gst_base_sink_set_property),
1412 (gst_base_sink_get_property), (gst_base_sink_do_sync),
1413 (gst_base_sink_chain):
1415 GST_ELEMENT_CLOCK and sync are protected with LOCK.
1416 Don't store _last_stop if the buffer is dropped.
1418 2006-01-18 Tim-Philipp Müller <tim at centricular dot net>
1420 * plugins/elements/gsttypefindelement.c:
1421 (gst_type_find_element_class_init):
1422 'have-type' signal needs to be G_SIGNAL_RUN_FIRST, as it is the
1423 object method handler that sets the caps on the pad and we want
1424 that to happen before we emit the signal (fixes e.g. feeding a
1425 plain text file to decodebin).
1427 2006-01-18 Christian Schaller <Christian@fluendo.com>
1429 * gst/gstplugin.c: Add MPL and Proprietary as license options
1431 2006-01-18 Andy Wingo <wingo@pobox.com>
1433 * gst/gstindex.h (gst_index_add_associationv): Add to header. The
1434 symbol was exported before, it appears this was just an oversight.
1436 Patch by: Torsten Schoenfeld <kaffeetisch at gmx.de>
1438 * gst/gstindex.c (gst_index_add_associationv): Changed int in
1439 prototype to gint. OK since this prototype was not in the header.
1441 2006-01-17 Andy Wingo <wingo@pobox.com>
1443 * gst/gstregistry.c (_gst_registry_remove_cache_plugins): Lock the
1444 registry while we remove plugins.
1446 * tools/gst-inspect.c (print_element_info): Don't unref the
1447 factory arg, that should be the responsibility of whatever code
1448 received the ref. Fixes a double-free when called from
1449 print_element_list via gst-inspect-0.10 -a. Fixes #327324.
1450 (main): Unref the factory if we have one.
1451 (print_element_list): No change -- relies on the
1452 plugin_feature_list_free to free the list of features.
1454 2006-01-17 Jan Schmidt <thaytan@mad.scientist.com>
1456 * gst/gstbuffer.c: (gst_buffer_is_metadata_writable),
1457 (gst_buffer_make_metadata_writable):
1459 * libs/gst/base/gstbasetransform.c:
1460 (gst_base_transform_prepare_output_buf):
1461 * plugins/elements/gstcapsfilter.c: (gst_capsfilter_prepare_buf):
1462 * tests/check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
1463 Replace gst_buffer_(make|is)_metadata_writable patch now
1464 that the release is out.
1466 2006-01-17 Andy Wingo <wingo@pobox.com>
1468 * gst/gstregistry.c: Reflow design comment. Update so as to speak
1469 in the present tense without reference to versions.
1471 * gst/gstregistry.c (gst_registry_add_plugin)
1472 (gst_registry_remove_plugin, gst_registry_remove_feature)
1473 (gst_registry_find_feature, gst_registry_get_feature_list)
1474 (gst_registry_get_plugin_list, gst_registry_lookup_feature)
1475 (gst_registry_lookup, gst_registry_scan_path)
1476 (_gst_registry_remove_cache_plugins)
1477 (gst_registry_get_feature_list_by_plugin): Add argument
1480 === release 0.10.2 ===
1482 2006-01-16 Thomas Vander Stichele <thomas at apestaart dot org>
1485 releasing 0.10.2, "If man is five"
1487 2006-01-16 Jan Schmidt <thaytan@mad.scientist.com>
1491 * libs/gst/base/gstbasetransform.c:
1492 (gst_base_transform_prepare_output_buf):
1493 * plugins/elements/gstcapsfilter.c: (gst_capsfilter_prepare_buf):
1494 * tests/check/gst/gstbuffer.c: (gst_test_suite):
1495 Back out patch until after the release.
1497 2006-01-16 Jan Schmidt <thaytan@mad.scientist.com>
1499 * gst/gstminiobject.c:
1500 Spelling fix in docs.
1501 * ChangeLog - remove conflict indicator
1503 2006-01-16 Jan Schmidt <thaytan@mad.scientist.com>
1505 Reviewed By: Andy Wingo
1507 * gst/gstbuffer.c: (gst_buffer_is_metadata_writable),
1508 (gst_buffer_make_metadata_writable):
1510 Add gst_buffer_(is|make)_metadata_writable as analogues of
1511 gst_buffer_(is|make)_writable.
1513 * libs/gst/base/gstbasetransform.c:
1514 (gst_base_transform_prepare_output_buf):
1515 * plugins/elements/gstcapsfilter.c: (gst_capsfilter_prepare_buf):
1516 Use name gst_buffer_(is|make)_metadata_writable functions.
1518 * tests/check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
1519 Test gst_buffer_(is|make)_metadata_writable
1523 2006-01-14 Thomas Vander Stichele <thomas at apestaart dot org>
1525 * docs/manual/Makefile.am:
1526 don't do parallel make
1529 * win32/common/config.h.in:
1530 add generations for HOST_CPU and GST_MAJORMINOR
1531 * win32/common/config.h:
1532 commit generated result
1534 2006-01-13 Tim-Philipp Müller <tim at centricular dot net>
1536 * docs/manual/appendix-integration.xml:
1537 Update GNOME integration section to use gst_init_get_option_group()
1538 instead of the old popt stuff (#322911). Also, GNOME applications
1539 should now use gconf*sink and gconf*src instead of the old gconf
1542 2006-01-13 Stefan Kost <ensonic@users.sf.net>
1545 * docs/gst/gstreamer-docs.sgml:
1546 * docs/gst/gstreamer-sections.txt:
1547 * docs/libs/gstreamer-libs-sections.txt:
1548 add new API entries to the docs
1549 * libs/gst/controller/Makefile.am:
1550 * libs/gst/controller/gstcontroller.c:
1551 * libs/gst/controller/gstcontroller.h:
1552 * libs/gst/controller/gstcontrollerprivate.h:
1553 * libs/gst/controller/gsthelper.c:
1554 * libs/gst/controller/gstinterpolation.c:
1555 move private structs to private header
1557 gstreamer-0.7 -> gstreamer-0.10
1558 * tests/check/libs/struct_i386.h:
1559 remove private structs
1561 2006-01-13 Thomas Vander Stichele <thomas at apestaart dot org>
1563 * plugins/indexers/Makefile.am:
1564 Fixes as part of #317048
1566 2006-01-13 Thomas Vander Stichele <thomas at apestaart dot org>
1568 * plugins/indexers/Makefile.am:
1569 fix #316086 - compilation when mmap is missing
1571 2006-01-12 Sebastien Moutte <sebastien@moutte.net>
1573 * libs/gst/base/gstbasesink.c:
1574 *cur = (now - base) * basesink->segment.abs_rate + time; replaced by
1575 *cur = gst_guint64_to_gdouble(now - base) * basesink->segment.abs_rate + time; for vs6
1576 * win32/common/config.h:
1577 added some defines GST_MAJORMINOR and HOST_CPU
1578 * win32/common/libgstbase.def:
1579 * win32/common/libgstreamer.def:
1580 added some exported functions.
1582 2006-01-12 Stefan Kost <ensonic@users.sf.net>
1584 * libs/gst/controller/gstcontroller.c:
1585 (gst_controlled_property_set_interpolation_mode),
1586 (gst_controlled_property_new):
1587 * libs/gst/controller/gstcontroller.h:
1588 * libs/gst/controller/gstinterpolation.c:
1589 (interpolate_none_get_string_value_array):
1590 make G_TYPE_STRING controlable
1592 2006-01-12 Stefan Kost <ensonic@users.sf.net>
1595 * tools/gst-feedback.1.in:
1596 * tools/gst-inspect.1.in:
1597 * tools/gst-launch.1.in:
1598 * tools/gst-md5sum.1.in:
1599 * tools/gst-typefind.1.in:
1600 * tools/gst-xmlinspect.1.in:
1601 * tools/gst-xmllaunch.1.in:
1602 cleanup man-pages, remove reference to gst-register, document env-vars
1604 2006-01-12 Jan Schmidt <thaytan@mad.scientist.com>
1606 * gst/gstbuffer.c: (gst_buffer_span):
1607 gst_buffer_span should copy the timestamp of the first buffer
1608 if they were both originally overlapping subbuffers of the
1609 same parent, using the same logic as the 'slow copy' case.
1611 2006-01-11 Jan Schmidt <thaytan@mad.scientist.com>
1613 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_pop):
1614 Need to awaken ALL the pads when we pop a buffer, otherwise
1615 collectpads only works when there is 2 input streams.
1617 2006-01-11 Stefan Kost <ensonic@users.sf.net>
1619 * docs/random/ensonic/media-device-daemon.txt:
1622 fix doc example, add clarification
1623 * tools/gst-launch.1.in:
1624 add initial info about GST_PLUGIN_PATH, needs more work
1626 2006-01-11 Tim-Philipp Müller <tim at centricular dot net>
1628 * docs/manual/basics-bins.xml:
1629 * docs/manual/basics-elements.xml:
1630 * docs/manual/intro-basics.xml:
1631 Some more minor docs additions and updates.
1633 2006-01-11 Wim Taymans <wim@fluendo.com>
1635 * docs/manual/basics-bins.xml:
1636 * docs/manual/basics-elements.xml:
1637 Some small fixes as pointed out by Ser-ver on IRC.
1639 2006-01-10 Edward Hervey <edward@fluendo.com>
1641 * plugins/elements/gstidentity.c: (gst_identity_transform_ip):
1642 Set the buffer offset/offset_end to GST_CLOCK_TIME_NONE when using
1643 the single-segment mode.
1645 2006-01-10 Brian Cameron <brian dot cameron at sun dot com>
1647 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
1649 * libs/gst/base/gstbasesrc.c: (gst_base_src_init),
1650 (gst_base_src_perform_seek), (gst_base_src_send_event),
1651 (gst_base_src_set_property), (gst_base_src_get_property),
1652 (gst_base_src_loop), (gst_base_src_start),
1653 (gst_base_src_activate_push):
1654 * libs/gst/base/gstbasesrc.h:
1655 Name (private) union; makes Sun's Forte compiler happy (#324900).
1657 2006-01-09 Tim-Philipp Müller <tim at centricular dot net>
1660 gst-register is gone.
1662 2006-01-07 Thomas Vander Stichele <thomas at apestaart dot org>
1664 * gst/gstvalue.c: (_gst_value_initialize):
1665 make the G_TYPE_DATE instantiation work if debug is disabled
1667 2006-01-06 Tim-Philipp Müller <tim at centricular dot net>
1669 * gst/gstmessage.c: (gst_message_parse_tag),
1670 (gst_message_parse_error), (gst_message_parse_warning):
1671 Don't crash when return location for error/warning debug
1672 string is NULL; add fact that return locations can be
1673 NULL to docs where appropriate.
1675 2006-01-05 Wim Taymans <wim@fluendo.com>
1677 * gst/gstplugin.c: (gst_plugin_load_file):
1678 Replace strdup by g_strdup.
1680 2006-01-05 Thomas Vander Stichele <thomas at apestaart dot org>
1682 * docs/pwg/advanced-types.xml:
1685 2006-01-05 Thomas Vander Stichele <thomas at apestaart dot org>
1687 submitted by: Abel Cheung
1691 Added Chinese (traditional) translation
1693 2006-01-04 Wim Taymans <wim@fluendo.com>
1695 * docs/manual/basics-pads.xml:
1696 * docs/plugins/Makefile.am:
1697 * docs/plugins/gstreamer-plugins-docs.sgml:
1698 * docs/plugins/gstreamer-plugins-sections.txt:
1699 * docs/pwg/advanced-clock.xml:
1700 * docs/pwg/advanced-scheduling.xml:
1701 * docs/pwg/advanced-types.xml:
1702 * plugins/elements/gstfdsink.c:
1703 * plugins/elements/gstfdsrc.c:
1704 * plugins/elements/gstfdsrc.h:
1705 * plugins/elements/gstidentity.c: (gst_identity_class_init):
1706 * plugins/elements/gstidentity.h:
1707 * plugins/elements/gstqueue.h:
1708 * plugins/elements/gsttee.c:
1709 * plugins/elements/gsttee.h:
1710 * plugins/elements/gsttypefindelement.c:
1711 (gst_type_find_element_class_init):
1712 * plugins/elements/gsttypefindelement.h:
1713 Small updates to various docs.
1714 Added core plugins to docs.
1716 2006-01-03 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
1719 add a suppression for liboil's uninitialized variable
1721 2006-01-02 James Livingston <jrl at ids dot org dot au>
1723 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
1726 Add prototype for _get_type() function to GST_BOILERPLATE_FULL
1727 macro, so that gcc doesn't complain if the -Wmissing-prototypes
1728 compiler switch is being used (#325429).
1730 2005-12-29 Tim-Philipp Müller <tim at centricular dot net>
1732 * gst/gstbin.c: (gst_bin_query):
1733 Disable duration query caching in bins until it gets
1734 fixed (see #324807).
1736 2005-12-27 Tim-Philipp Müller <tim at centricular dot net>
1738 * tools/gst-inspect.c: (print_element_properties_info):
1739 Handle properties of POINTER and BOXED type.
1741 2005-12-27 Tim-Philipp Müller <tim at centricular dot net>
1743 * gst/gst.c: (init_post):
1744 Init tags stuff and some other things before loading
1745 any static plugins (there may be other static plugins
1746 than just the GStreamer ones, and they may want to
1747 register their own tags or formats or whatever, and
1748 preferably without segfaulting).
1750 * plugins/elements/gstqueue.c: (gst_queue_handle_src_query):
1751 Print at least a warning in the debug logs if we drop a
1752 query just because we don't know how to adjust the value
1753 in the particular format.
1755 2005-12-24 David Schleef <ds@schleef.org>
1757 * tools/gstreamer-completion:
1758 Replacement for gst-complete written in sh and sed. Only
1759 completes names of features, but that's 90% of what I want
1760 it for. Properties are not available in registry.xml. (Maybe
1763 === release 0.10.1 ===
1765 2005-12-23 Thomas Vander Stichele <thomas at apestaart dot org>
1768 releasing 0.10.1, "Nollaig chridheil"
1770 2005-12-22 Tim-Philipp Müller <tim at centricular dot net>
1773 Add missing quote, should be make ERROR_CFLAGS="".
1775 2005-12-20 Wim Taymans <wim@fluendo.com>
1777 * docs/design/part-trickmodes.txt:
1778 More documentation on trickmodes.
1780 2005-12-20 Edward Hervey <edward@fluendo.com>
1782 * gst/gstcaps.c: (gst_static_caps_get_type):
1784 API addition: GST_TYPE_STATIC_CAPS
1785 Added gpointer GType for GstStaticCaps so we can wrap them in bindings.
1786 * gst/gstpadtemplate.c: (gst_static_pad_template_get_type):
1787 * gst/gstpadtemplate.h:
1788 API addition: GST_TYPE_STATIC_PAD_TEMPLATE
1789 Added gpointer GType for GstStaticPadTemplate so we can wrap them in
1792 2005-12-18 Wim Taymans <wim@fluendo.com>
1794 * libs/gst/base/gstadapter.c:
1795 * libs/gst/base/gstadapter.h:
1796 * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init),
1797 (gst_base_sink_get_position):
1798 * libs/gst/base/gstbasesink.h:
1799 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
1800 (gst_base_src_default_query), (gst_base_src_default_do_seek),
1801 (gst_base_src_do_seek), (gst_base_src_perform_seek),
1802 (gst_base_src_send_event), (gst_base_src_update_length),
1803 (gst_base_src_get_range), (gst_base_src_loop),
1804 (gst_base_src_start):
1805 * libs/gst/base/gstbasesrc.h:
1806 * libs/gst/base/gstbasetransform.h:
1807 * libs/gst/base/gstcollectpads.h:
1808 * libs/gst/base/gstpushsrc.c:
1809 * libs/gst/base/gstpushsrc.h:
1810 * libs/gst/dataprotocol/dataprotocol.c:
1811 * libs/gst/dataprotocol/dataprotocol.h:
1812 * libs/gst/net/gstnetclientclock.h:
1813 * libs/gst/net/gstnettimeprovider.h:
1814 Documentation updates.
1816 2005-12-18 Tim-Philipp Müller <tim at centricular dot net>
1818 * docs/manual/basics-helloworld.xml:
1819 Remove superfluous closing bracket in helloworld example.
1821 2005-12-17 Tim-Philipp Müller <tim at centricular dot net>
1823 * tools/gst-launch.1.in:
1824 Update gst-launch man page; add a section with useful
1825 environment variables. Fixes #323882.
1827 2005-12-16 Stefan Kost <ensonic@users.sf.net>
1830 * gst/gst_private.h:
1831 change some char* into char[]
1833 2005-12-16 Wim Taymans <wim@fluendo.com>
1835 * gst/gstregistryxml.c: (load_feature):
1837 Don't use g_object_unref on GstObjects so that we avoid
1838 leaks on unsafe glibs.
1840 2005-12-16 Wim Taymans <wim@fluendo.com>
1842 * gst/gstbin.c: (gst_bin_recalc_state):
1845 2005-12-16 Wim Taymans <wim@fluendo.com>
1848 Added make forever target for check.
1850 2005-12-16 Thomas Vander Stichele <thomas at apestaart dot org>
1852 * gst/gst.c: (init_post):
1853 make the registry cache file HOST_CPU-dependent
1855 2005-12-16 Andy Wingo <wingo@pobox.com>
1857 * plugins/elements/gstbufferstore.c
1858 (gst_buffer_store_cleared_func): Pay attention to g_list_append
1861 * tests/check/gst/gstobject.c
1862 (test_fake_object_name_threaded_unique): Pay attention to
1863 g_list_sort return value.
1865 2005-12-16 Tim-Philipp Müller <tim at centricular dot net>
1867 * tools/gst-feedback-m.m:
1868 Update for 0.9/0.10 (fixes #323870).
1870 2005-12-15 Tim-Philipp Müller <tim at centricular dot net>
1872 * gst/gstminiobject.c: (gst_value_mini_object_lcopy):
1873 Fix lcopy for mini objects, the mini object needs to be ref'ed.
1875 * tests/check/gst/gstminiobject.c: (my_foo_init),
1876 (my_foo_get_property), (my_foo_set_property), (my_foo_class_init),
1877 (test_value_collection), (gst_mini_object_suite):
1878 Add test to ensure refcounts end up as expected when passing
1879 GstMiniObjects through g_object_get() and g_object_set().
1881 2005-12-14 Julien MOUTTE <julien@moutte.net>
1883 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_base_init),
1884 (gst_collect_pads_remove_pad), (gst_collect_pads_is_collected),
1885 (gst_collect_pads_event), (gst_collect_pads_chain): Refactoring
1886 of collectpads. This version removes a lot of races without
1887 touching API/ABI. Yay !
1889 2005-12-14 Jan Schmidt <thaytan@mad.scientist.com>
1891 * gst/gstpad.c: (gst_pad_activate_pull), (gst_pad_link_prepare):
1892 Don't allow activation of a srcpad in pull_range if it has no
1894 Change some debug statements to be a little clearer
1896 * plugins/elements/gsttypefindelement.c:
1897 (gst_type_find_handle_src_query):
1898 Check that we have a peer before executing queries thereupon.
1900 * tests/examples/metadata/read-metadata.c: (message_loop):
1901 Use gst_bus_pop instead of gst_bus_poll when we just want it to
1902 immediately return us any available message with 0 timeout.
1904 2005-12-12 Michael Smith <msmith@fluendo.com>
1906 * gst/gsttypefindfactory.c: (gst_type_find_factory_call_function):
1907 Don't unref factories after calling them.
1908 * libs/gst/base/gsttypefindhelper.c: (gst_type_find_helper):
1909 * plugins/elements/gsttypefindelement.c:
1910 (gst_type_find_element_chain):
1911 Free lists of factories after using them. Fixing typefinding memory
1914 2005-12-12 Stefan Kost <ensonic@users.sf.net>
1916 * gst/gstpluginfeature.c: (gst_plugin_feature_finalize),
1917 (gst_plugin_feature_load):
1918 more meaningful debug output
1920 * tests/Makefile.am:
1921 * tests/old/examples/Makefile.am:
1922 make make distcheck happy again
1924 2005-12-12 Tim-Philipp Müller <tim at centricular dot net>
1926 * plugins/elements/gsttypefindelement.c: (stop_typefinding):
1927 Catch the special case where we are operating chain-based,
1928 but the downstream peer pad has no chain function. Emit a
1929 custom error message in this case instead of letting the
1930 core generate one implying that this is some sort of core
1931 bug. It's not, it just means that whatever got plugged
1932 into the pipeline downstream when we announced the type
1933 can only operate pull-based, while our source can only
1934 operate push-based (e.g. http://foo/bar.mov ! qtdemux ! ...)
1935 Error string has not been marked for translation yet, as
1936 it probably needs some more work first.
1938 (gst_type_find_element_get_best_possibility):
1939 Add helper function to find the best of all available
1940 found possibilities that qualify given the min. threshold.
1942 (gst_type_find_element_handle_event):
1943 Fix the case where we get an EOS while still in TYPEFIND
1944 mode (we want to chose the best of all possible types,
1945 not just the first type that happens to be in our unsorted
1946 list of possible types).
1948 (gst_type_find_element_chain):
1949 Make sure we return GST_FLOW_ERROR when we errored out
1950 in stop_typefinding(); also, don't just find the best of
1951 all found type entries and then use the last examined
1952 type entry, but actually use the best entry.
1954 2005-12-12 Tim-Philipp Müller <tim at centricular dot net>
1956 * tests/examples/typefind/typefind.c: (type_found):
1957 * tests/examples/xml/runxml.c: (xml_loaded):
1958 More gcc4 fixes and a mem leak fix.
1960 2005-12-12 Stefan Kost <ensonic@users.sf.net>
1962 * tests/examples/xml/createxml.c: (object_saved):
1965 2005-12-12 Stefan Kost <ensonic@users.sf.net>
1967 * tests/Makefile.am:
1968 enable the examples even more
1970 2005-12-12 Andy Wingo <wingo@pobox.com>
1972 * libs/gst/net/gstnettimeprovider.c
1973 (gst_net_time_provider_class_init, gst_net_time_provider_init)
1974 (gst_net_time_provider_set_property)
1975 (gst_net_time_provider_get_property):
1976 API addition: Export "active" as a GObject property.
1977 (gst_net_time_provider_thread): Only respond to time queries if
1978 the time provider is active.
1980 * libs/gst/net/gstnettimeprovider.h: Add an "active" boolean to
1981 NetTimeProvider, preserving binary compat.
1983 2005-12-12 Stefan Kost <ensonic@users.sf.net>
1985 * tests/examples/controller/audio-example.c: (main):
1986 * tests/examples/launch/Makefile.am:
1987 convert comments again
1989 2005-12-12 Wim Taymans <wim@fluendo.com>
1991 * libs/gst/base/gstpushsrc.c:
1994 2005-12-12 Wim Taymans <wim@fluendo.com>
1996 * docs/libs/gstreamer-libs-sections.txt:
1997 Added new symbol to docs.
1999 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
2000 (gst_base_src_init), (gst_base_src_set_format),
2001 (gst_base_src_default_query), (gst_base_src_query),
2002 (gst_base_src_default_do_seek), (gst_base_src_do_seek),
2003 (gst_base_src_perform_seek), (gst_base_src_send_event),
2004 (gst_base_src_default_event), (gst_base_src_event_handler),
2005 (gst_base_src_set_property), (gst_base_src_get_property),
2006 (gst_base_src_wait), (gst_base_src_do_sync),
2007 (gst_base_src_update_length), (gst_base_src_get_range),
2008 (gst_base_src_check_get_range), (gst_base_src_loop),
2009 (gst_base_src_default_negotiate), (gst_base_src_start),
2010 (gst_base_src_activate_push), (gst_base_src_activate_pull),
2011 (gst_base_src_change_state):
2012 * libs/gst/base/gstbasesrc.h:
2013 Implement seeking to other formats than _BYTES.
2014 Implement more seeking methods correctly.
2016 Added query vmethod.
2017 Added do_seek vmethod to make life easier for subclasses
2019 API addition: gst_base_src_set_format()
2021 2005-12-12 Stefan Kost <ensonic@users.sf.net>
2023 * tests/examples/Makefile.am:
2026 2005-12-12 Stefan Kost <ensonic@users.sf.net>
2029 * docs/random/ensonic/media-device-daemon.txt:
2030 * tests/examples/controller/.cvsignore:
2031 * tests/examples/controller/Makefile.am:
2032 * tests/examples/controller/audio-example.c: (main):
2033 * tests/examples/helloworld/.cvsignore:
2034 * tests/examples/helloworld/Makefile.am:
2035 * tests/examples/helloworld/helloworld.c: (event_loop), (main):
2036 * tests/examples/launch/.cvsignore:
2037 * tests/examples/launch/Makefile.am:
2038 * tests/examples/launch/mp3parselaunch.c: (event_loop), (main):
2039 * tests/examples/metadata/.cvsignore:
2040 * tests/examples/metadata/Makefile.am:
2041 * tests/examples/metadata/read-metadata.c: (message_loop),
2042 (make_pipeline), (print_tag), (main):
2043 * tests/examples/queue/.cvsignore:
2044 * tests/examples/queue/Makefile.am:
2045 * tests/examples/queue/queue.c: (event_loop), (main):
2046 * tests/examples/typefind/.cvsignore:
2047 * tests/examples/typefind/Makefile.am:
2048 * tests/examples/typefind/typefind.c: (type_found), (event_loop),
2050 * tests/examples/xml/.cvsignore:
2051 * tests/examples/xml/Makefile.am:
2052 * tests/examples/xml/createxml.c: (object_saved), (main):
2053 * tests/examples/xml/runxml.c: (xml_loaded), (event_loop), (main):
2054 * tests/old/examples/Makefile.am:
2055 * tests/old/examples/TODO:
2056 * tests/old/examples/controller/.cvsignore:
2057 * tests/old/examples/controller/Makefile.am:
2058 * tests/old/examples/controller/audio-example.c:
2059 * tests/old/examples/helloworld/.cvsignore:
2060 * tests/old/examples/helloworld/Makefile.am:
2061 * tests/old/examples/helloworld/helloworld.c:
2062 * tests/old/examples/launch/.cvsignore:
2063 * tests/old/examples/launch/Makefile.am:
2064 * tests/old/examples/launch/mp3parselaunch.c:
2065 * tests/old/examples/launch/mp3play:
2066 * tests/old/examples/manual/Makefile.am:
2067 * tests/old/examples/metadata/Makefile.am:
2068 * tests/old/examples/metadata/read-metadata.c:
2069 * tests/old/examples/queue/.cvsignore:
2070 * tests/old/examples/queue/Makefile.am:
2071 * tests/old/examples/queue/queue.c:
2072 * tests/old/examples/typefind/.cvsignore:
2073 * tests/old/examples/typefind/Makefile.am:
2074 * tests/old/examples/typefind/typefind.c:
2075 * tests/old/examples/xml/.cvsignore:
2076 * tests/old/examples/xml/Makefile.am:
2077 * tests/old/examples/xml/createxml.c:
2078 * tests/old/examples/xml/runxml.c:
2079 applied some simple fixing to some examples
2080 re-enabled the working examples
2082 2005-12-12 Wim Taymans <wim@fluendo.com>
2084 * gst/gstsegment.c: (gst_segment_init),
2085 (gst_segment_set_last_stop), (gst_segment_set_seek),
2086 (gst_segment_set_newsegment), (gst_segment_to_stream_time),
2087 (gst_segment_to_running_time):
2088 Added more documentation.
2089 Make sure the last_pos value is updated properly.
2090 Make sure to_stream_time and to_running_time don't
2091 operate on wrong values.
2093 * tests/check/gst/gstsegment.c: (GST_START_TEST):
2096 2005-12-12 Michael Smith <msmith@fluendo.com>
2098 * plugins/elements/gsttypefindelement.c: (free_entry),
2099 (gst_type_find_element_chain):
2100 Now that we're not leaking factories, make sure we keep references
2101 to them while we need them.
2103 2005-12-12 Thomas Vander Stichele <thomas at apestaart dot org>
2105 * tests/check/gst/struct_i386.h:
2106 ifdef out the XML structs
2108 2005-12-12 Thomas Vander Stichele <thomas at apestaart dot org>
2110 * gst/gstvalue.c: (gst_value_transform_double_fraction):
2111 floor is not needed, F is always positive; this obviates the
2112 need for adding -lm when building without libxml
2114 2005-12-12 Wim Taymans <wim@fluendo.com>
2116 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_position):
2117 Take current playback rate into account when reporting
2120 2005-12-11 Tim-Philipp Müller <tim at centricular dot net>
2122 * docs/manual/mime-world.fig:
2123 Let's try this again, this time with a file that is
2124 actually in XFig format.
2126 2005-12-11 Tim-Philipp Müller <tim at centricular dot net>
2128 * docs/manual/mime-world.fig:
2129 Add audioconvert element to diagram so that it
2130 matches the text and the code (fixes #319526).
2132 2005-12-11 Tim-Philipp Müller <tim at centricular dot net>
2134 * docs/pwg/building-chainfn.xml:
2135 * docs/pwg/building-pads.xml:
2136 * docs/pwg/building-state.xml:
2137 * docs/pwg/other-source.xml:
2138 Update state change stuff for 0.10 (fixes #322969).
2140 2005-12-11 Tim-Philipp Müller <tim at centricular dot net>
2142 * docs/manual/advanced-dataaccess.xml:
2143 * docs/manual/appendix-checklist.xml:
2144 * docs/manual/appendix-programs.xml:
2145 * docs/manual/basics-pads.xml:
2146 * docs/manual/highlevel-components.xml:
2147 * docs/manual/manual.xml:
2148 Update for 0.10: s/0.9/0.10/; s/audioscale/audiorsample/;
2149 add converters in front of pipelines; remove curly
2150 brackets for threads stuff, they no longer exist; use
2151 GST_TYPE_FRACTION for framerates; update some pieces of
2152 code to 0.10, but there's plenty more to do.
2154 * docs/manual/appendix-porting.xml:
2155 Expand on asynchroneous state changes; s/0.9/0.10/;
2156 mention disappearance of gst_init_get_popt_table()
2159 2005-12-11 Tim-Philipp Müller <tim at centricular dot net>
2161 * docs/faq/using.xml:
2162 Spider no longer exists, and neither does gst-launch-ext.
2163 Update examples to use decodebin and playbin and put
2164 converters in front of sinks (fixes #323726).
2166 2005-12-09 Michael Smith <msmith@fluendo.com>
2168 * plugins/elements/gsttypefindelement.c: (find_peek),
2169 (gst_type_find_element_chain):
2170 Fix leaking element factories in typefinding.
2171 Fix problem where we forgot about a probable type on non-seekable
2172 files, and thus later mis-typefound it.
2174 2005-12-09 Michael Smith <msmith@fluendo.com>
2176 * common/m4/gst-makecontext.m4:
2177 * common/m4/gst-mcsc.m4:
2179 * win32/common/config.h:
2180 * win32/common/config.h.in:
2181 Remove makecontext stuff; not used in 0.10 and causes problems on
2182 HPUX according to bug #322441
2184 2005-12-07 Wim Taymans <wim@fluendo.com>
2186 * tests/check/Makefile.am:
2187 * tests/check/libs/libsabi.c: (GST_START_TEST), (gstabi_suite),
2189 * tests/check/libs/struct_i386.h:
2190 Added ABI check for libs
2192 2005-12-07 Wim Taymans <wim@fluendo.com>
2194 * tests/check/Makefile.am:
2195 And add the struct_i386.h to dist.
2197 2005-12-07 Wim Taymans <wim@fluendo.com>
2199 * tests/check/Makefile.am:
2200 * tests/check/gst/.cvsignore:
2201 * tests/check/gst/gstabi.c: (GST_START_TEST), (gstabi_suite),
2203 * tests/check/gst/struct_i386.h:
2204 Added check for ABI compatibility.
2206 2005-12-07 Wim Taymans <wim@fluendo.com>
2208 * plugins/elements/gstfakesrc.c: (gst_fake_src_class_init),
2209 (gst_fake_src_get_times), (gst_fake_src_create):
2210 Fix broken sync option, fixes #323259
2212 2005-12-07 Wim Taymans <wim@fluendo.com>
2217 * gst/gstcaps.c: (gst_caps_is_equal):
2218 Don't assert on NULL <--> X. Fixes #323260
2220 * gst/gstminiobject.c: (gst_mini_object_replace):
2221 If we're doing atomic operations, we might just as well use
2222 the proper way to get an atomic pointer.
2224 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_position):
2227 2005-12-07 Michael Smith <msmith@fluendo.com>
2229 * gst/parse/grammar.y:
2230 Remove handling of { } for threads.
2232 2005-12-06 David Schleef <ds@schleef.org>
2234 * libs/gst/base/gstbasetransform.c: speling fix.
2236 2005-12-06 Thomas Vander Stichele <thomas at apestaart dot org>
2238 * docs/libs/tmpl/gstdataprotocol.sgml:
2239 * docs/random/omega/testing/gstobject.c:
2243 * gst/gstelementfactory.c:
2246 * gst/gstghostpad.c:
2248 * gst/gstpadtemplate.c:
2249 * gst/gstregistryxml.c:
2251 * gst/gsttagsetter.c:
2252 * gst/gsttypefind.c:
2254 * libs/gst/base/gstbasesrc.c:
2255 * libs/gst/net/gstnetclientclock.c:
2256 * libs/gst/net/gstnettimeprovider.c:
2257 * plugins/elements/gstfakesrc.c:
2258 * plugins/elements/gstfdsrc.c:
2259 * plugins/elements/gstfilesrc.c:
2260 * plugins/elements/gstidentity.c:
2261 * plugins/elements/gstqueue.c:
2262 * plugins/elements/gsttypefindelement.c:
2263 * plugins/indexers/gstfileindex.c:
2264 * plugins/indexers/gstmemindex.c:
2265 * tests/check/gst/gsttag.c:
2266 * tests/old/examples/cutter/cutter.c:
2267 * tests/old/examples/mixer/mixer.c:
2268 * tests/old/examples/xml/runxml.c: (main):
2269 * tests/old/testsuite/caps/normalisation.c:
2270 * tests/old/testsuite/debug/global.c:
2271 * tests/old/testsuite/parse/parse1.c:
2272 * tools/gst-xmlinspect.c:
2273 * win32/common/dirent.c:
2276 === release 0.10.0 ===
2278 2005-12-05 <thomas (at) apestaart (dot) org>
2281 releasing 0.10.0, "Maroilles"
2283 2005-12-05 Thomas Vander Stichele <thomas at apestaart dot org>
2285 submitted by: Funda Wang <fundawang@linux.net.cn>
2289 added Chinese (Traditional) translation
2291 2005-12-05 Thomas Vander Stichele <thomas at apestaart dot org>
2293 * docs/gst/gstreamer-sections.txt:
2294 * docs/libs/tmpl/gstdataprotocol.sgml:
2295 * docs/random/thomasvs/TODO:
2300 2005-12-05 Andy Wingo <wingo@pobox.com>
2302 patch by: Wim Taymans <wim@fluendo.com>
2304 * libs/gst/base/gstbasetransform.c
2305 (gst_base_transform_prepare_output_buf)
2306 (gst_base_transform_buffer_alloc):
2307 * plugins/elements/gstqueue.c (gst_queue_bufferalloc): Call
2308 alloc_buffer_and_set_caps.
2310 * gst/gstpad.c (gst_pad_alloc_buffer): Changed to not call
2311 set_caps on the source pad.
2312 (gst_pad_alloc_buffer_and_set_caps): New function, does what
2313 alloc_buffer used to do. Fixes #322874.
2315 * docs/gst/gstreamer-sections.txt:
2316 * docs/design/part-negotiation.txt:
2317 * docs/pwg/advanced-negotiation.xml: Update for the alloc_buffer
2320 2005-12-05 Thomas Vander Stichele <thomas at apestaart dot org>
2322 patch by: Sebastien Moutte
2325 * win32/common/config.h.in:
2326 * win32/vs6/libgstcontroller.dsp:
2329 2005-12-05 Wim Taymans <wim@fluendo.com>
2331 * gst/gstcaps.c: (gst_caps_is_equal):
2332 * plugins/elements/gstfakesrc.c: (gst_fake_src_class_init),
2333 (gst_fake_src_create):
2334 Back out previous code changes, leave doc updates, file bugs
2337 2005-12-05 Wim Taymans <wim@fluendo.com>
2339 * plugins/elements/gstfakesrc.c: (gst_fake_src_class_init),
2340 (gst_fake_src_get_times), (gst_fake_src_create):
2341 * plugins/elements/gstfakesrc.h:
2342 Fix broken sync code.
2344 2005-12-05 Wim Taymans <wim@fluendo.com>
2346 * gst/gstcaps.c: (gst_caps_is_equal):
2347 Comparing NULL against !NULL yields different caps, not a
2350 2005-12-05 Wim Taymans <wim@fluendo.com>
2352 * gst/gstpipeline.c:
2353 Fix small typo in docs.
2355 2005-12-05 Andy Wingo <wingo@pobox.com>
2357 patch by: Thomas Vander Stichele <thomas at apestaart dot org>
2359 * gst/gst.c (init_post): remove hard-coded 0.9 location for
2360 registries/plugins with a MAJORMINOR one.
2361 (plugin_desc): Rename library from gstcoreleements to
2362 staticelements. Fixes #323222.
2364 2005-12-05 Tim-Philipp Müller <tim at centricular dot net>
2366 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_base_init):
2367 Change debug category to 'collectpads' from 'collect_pads'
2370 2005-12-04 Thomas Vander Stichele <thomas at apestaart dot org>
2372 patch by: Sebastien Moutte
2374 * libs/gst/controller/gstinterpolation.c:
2375 use convert function for uint64/double
2376 * win32/vs6/libgstcontroller.dsp:
2379 2005-12-04 Thomas Vander Stichele <thomas at apestaart dot org>
2381 * gst/gstutils.c: (gst_util_guint64_to_gdouble),
2382 (gst_util_gdouble_to_guint64), (gst_util_uint64_scale_int64):
2384 * tests/check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
2385 add tests that seem to show that the guint64/gdouble conversions
2388 2005-12-02 Wim Taymans <wim@fluendo.com>
2390 * gst/gstregistry.c: (gst_registry_add_path):
2391 * gst/gstregistry.h:
2392 * gst/gstregistryxml.c:
2395 2005-12-02 Wim Taymans <wim@fluendo.com>
2397 * gst/gstutils.c: (gst_util_uint64_scale_int64),
2398 (gst_util_uint64_scale_int):
2401 * libs/gst/base/gstbasesink.c: (gst_base_sink_handle_object):
2404 * libs/gst/base/gstbasetransform.c: (gst_base_transform_event):
2407 2005-12-02 Thomas Vander Stichele <thomas at apestaart dot org>
2410 * win32/common/config.h:
2411 * win32/vs6/gstreamer.dsw:
2412 * win32/vs6/libgstcoreelements.dsp:
2413 * win32/vs6/libgstelements.dsp:
2414 renamed core elements plugin
2416 2005-12-02 Thomas Vander Stichele <thomas at apestaart dot org>
2418 * tools/gst-run.c: (compare_major_minor), (find_highest_version),
2420 do piece-wise major/minor comparison so 0.9 < 0.10
2421 also allow .exe extensions for tools
2423 2005-12-02 Michael Smith <msmith@fluendo.com>
2426 Escape a % to make gtkdoc happier; bug 322958.
2428 === release 0.9.7 ===
2430 2005-12-01 <thomas (at) apestaart (dot) org>
2433 releasing 0.9.7, "My Dog Has No Nose"
2435 2005-12-01 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
2437 * common/gst-xmlinspect.py:
2439 * docs/libs/tmpl/gstdataprotocol.sgml:
2440 * docs/random/release:
2459 * win32/common/config.h:
2460 * win32/common/config.h.in:
2461 * win32/vs6/gst_inspect.dsp:
2462 * win32/vs6/gst_launch.dsp:
2463 * win32/vs6/libgstbase.dsp:
2464 * win32/vs6/libgstelements.dsp:
2465 * win32/vs6/libgstreamer.dsp:
2466 * win32/vs7/GStreamer.vcproj:
2467 * win32/vs7/gst-inspect.vcproj:
2468 * win32/vs7/gst-launch.vcproj:
2469 * win32/vs7/libgstbase.vcproj:
2470 bump GST_MAJORMINOR to 0.10
2471 reset libtool version
2473 2005-12-01 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
2477 Added Bulgarian translation by (Alexander Shopov)
2479 2005-12-01 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
2481 * tests/check/gst/gstplugin.c:
2484 2005-12-01 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
2486 * common/gst-xmlinspect.py:
2487 * common/gtk-doc-plugins.mak:
2490 * docs/gst/Makefile.am:
2491 * docs/gst/gstreamer-docs.sgml:
2492 * docs/gst/gstreamer-sections.txt:
2493 * docs/gst/gstreamer.types:
2494 * docs/gst/gstreamer.types.in:
2495 * docs/plugins/Makefile.am:
2496 * docs/plugins/gstreamer-plugins-docs.sgml:
2497 * docs/plugins/gstreamer-plugins-sections.txt:
2498 * docs/plugins/gstreamer-plugins.types:
2499 * docs/plugins/inspect.stamp:
2500 * docs/plugins/inspect/plugin-coreelements.xml:
2501 * docs/plugins/inspect/plugin-coreindexers.xml:
2502 * docs/plugins/scanobj-build.stamp:
2503 * gstreamer.spec.in:
2504 * plugins/elements/Makefile.am:
2505 * plugins/elements/gstelements.c:
2506 * plugins/elements/gstfakesink.c:
2507 * plugins/elements/gstfakesrc.c:
2508 * plugins/elements/gstfilesink.c:
2509 * plugins/elements/gstfilesrc.c:
2510 * plugins/elements/gstqueue.c:
2511 * plugins/indexers/Makefile.am:
2512 * plugins/indexers/gstindexers.c:
2513 document core plugins in a separate document just like all the
2515 rename these plugins to something starting with core
2517 2005-12-01 Andy Wingo <wingo@pobox.com>
2519 * gst/gstevent.h (struct _GstEvent): Meant to remove the extra
2520 padding here before, but it missed the commit.
2522 2005-12-01 Thomas Vander Stichele <thomas at apestaart dot org>
2524 * libs/gst/controller/gstinterpolation.c:
2525 whitespace prices have crashed, we should feel free to use some now
2526 use gst_guint64_to_gdouble
2528 2005-12-01 Thomas Vander Stichele <thomas at apestaart dot org>
2530 * libs/gst/controller/gstcontroller.c:
2531 * libs/gst/controller/gsthelper.c:
2532 * libs/gst/controller/gstinterpolation.c:
2533 * libs/gst/controller/lib.c:
2534 wrap config.h include
2536 2005-12-01 Thomas Vander Stichele <thomas at apestaart dot org>
2538 * docs/gst/gstreamer-sections.txt:
2541 2005-12-01 Thomas Vander Stichele <thomas at apestaart dot org>
2543 * plugins/elements/gstelements.c:
2544 * plugins/elements/gstfdsink.c: (gst_fd_sink__base_init),
2545 (gst_fd_sink__class_init), (gst_fd_sink__init),
2546 (gst_fd_sink__chain), (gst_fd_sink__set_property),
2547 (gst_fd_sink__get_property):
2548 * plugins/elements/gstfdsink.h:
2549 * plugins/elements/gstfdsrc.c: (_do_init), (gst_fd_src_base_init),
2550 (gst_fd_src_class_init), (gst_fd_src_init), (gst_fd_src_dispose),
2551 (gst_fd_src_update_fd), (gst_fd_src_start), (gst_fd_src_stop),
2552 (gst_fd_src_unlock), (gst_fd_src_set_property),
2553 (gst_fd_src_get_property), (gst_fd_src_create),
2554 (gst_fd_src_is_seekable), (gst_fd_src_get_size),
2555 (gst_fd_src_uri_get_type), (gst_fd_src_uri_get_protocols),
2556 (gst_fd_src_uri_get_uri), (gst_fd_src_uri_set_uri),
2557 (gst_fd_src_uri_handler_init):
2558 * plugins/elements/gstfdsrc.h:
2559 * plugins/elements/gstqueue.c: (gst_queue_get_type):
2562 2005-11-30 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
2564 * docs/gst/Makefile.am:
2565 * docs/gst/gstreamer.types.in:
2569 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
2575 * gst/gstregistry.h:
2576 * tests/benchmarks/complexity.c:
2577 * tests/benchmarks/mass-elements.c:
2578 * tests/check/Makefile.am:
2579 * tools/Makefile.am:
2580 * tools/gst-inspect.c:
2581 * tools/gst-xmlinspect.c:
2582 various fixes to make
2583 --disable-nls --disable-registry --disable-loadsave
2584 --disable-parse --disable-gst-debug
2585 work and get the core .so down to 360444 bytes after stripping
2587 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
2592 * docs/random/thomasvs/TODO:
2593 * tests/Makefile.am:
2597 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
2599 * win32/GStreamer.vcproj:
2602 * win32/Makefile.inspect:
2603 * win32/Makefile.launch:
2604 * win32/Makefile.register:
2606 * win32/gst-inspect.vcproj:
2607 * win32/gst-launch.vcproj:
2608 * win32/gst-register.vcproj:
2609 * win32/gstelements.vcproj:
2610 * win32/gstgetbits.def:
2611 * win32/gstgetbits.vcproj:
2612 * win32/gstreamer-dbg.def:
2613 * win32/gstreamer.def:
2614 * win32/libgstbase.def:
2615 * win32/libgstbase.vcproj:
2616 * win32/link_oldruntime.c:
2621 move even more stuff, win32/ is nice and clean now
2623 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
2625 * libs/gst/control/.cvsignore:
2630 * win32/gstbytestream.def:
2631 * win32/gstbytestream.vcproj:
2632 * win32/gstconfig.h:
2633 * win32/gstenumtypes.c:
2634 * win32/gstenumtypes.h:
2635 * win32/gstoptimalscheduler.vcproj:
2636 * win32/gstversion.h:
2638 * win32/testsuite/bins.vcproj:
2639 * win32/testsuite/bytestream.vcproj:
2640 * win32/testsuite/caps.vcproj:
2641 * win32/testsuite/cleanup.vcproj:
2642 * win32/testsuite/clock.vcproj:
2643 * win32/testsuite/debug.vcproj:
2644 * win32/testsuite/dlopen.vcproj:
2645 * win32/testsuite/dynparams.vcproj:
2646 * win32/testsuite/elements.vcproj:
2647 * win32/testsuite/ghostpads.vcproj:
2648 * win32/testsuite/indexers.vcproj:
2649 * win32/testsuite/negotiation.vcproj:
2650 * win32/testsuite/parse.vcproj:
2651 * win32/testsuite/plugin.vcproj:
2652 * win32/testsuite/refcounting.vcproj:
2653 * win32/testsuite/schedulers.vcproj:
2654 * win32/testsuite/states.vcproj:
2655 * win32/testsuite/tags.vcproj:
2656 * win32/testsuite/threads.vcproj:
2657 remove old win32 stuff that isn't maintained and should be
2660 2005-11-30 Andy Wingo <wingo@pobox.com>
2662 * configure.ac (GST_PKG_DEPS): Revert previous patch, makes
2663 loading the gst.interfaces python module bork.
2665 * configure.ac (GST_PKG_DEPS): Use gmodule-no-export-2.0.pc,
2666 available since GLib 2.2. Fixes #318031.
2668 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
2672 * check/Makefile.am:
2673 * check/elements/.cvsignore:
2674 * check/elements/fakesrc.c:
2675 * check/elements/fdsrc.c:
2676 * check/elements/identity.c:
2677 * check/generic/.cvsignore:
2678 * check/generic/states.c:
2679 * check/gst-libs/.cvsignore:
2680 * check/gst-libs/controller.c:
2681 * check/gst-libs/gdp.c:
2682 * check/gst/.cvsignore:
2683 * check/gst/capslist.h:
2685 * check/gst/gstbin.c:
2686 * check/gst/gstbuffer.c:
2687 * check/gst/gstbus.c:
2688 * check/gst/gstcaps.c:
2689 * check/gst/gstelement.c:
2690 * check/gst/gstevent.c:
2691 * check/gst/gstghostpad.c:
2692 * check/gst/gstiterator.c:
2693 * check/gst/gstmessage.c:
2694 * check/gst/gstminiobject.c:
2695 * check/gst/gstobject.c:
2696 * check/gst/gstpad.c:
2697 * check/gst/gstpipeline.c:
2698 * check/gst/gstplugin.c:
2699 * check/gst/gstsegment.c:
2700 * check/gst/gststructure.c:
2701 * check/gst/gstsystemclock.c:
2702 * check/gst/gsttag.c:
2703 * check/gst/gstutils.c:
2704 * check/gst/gstvalue.c:
2705 * check/net/.cvsignore:
2706 * check/net/gstnetclientclock.c:
2707 * check/net/gstnettimeprovider.c:
2708 * check/pipelines/.cvsignore:
2709 * check/pipelines/cleanup.c:
2710 * check/pipelines/simple_launch_lines.c:
2711 * check/pipelines/stress.c:
2712 * check/states/.cvsignore:
2713 * check/states/sinks.c:
2715 * examples/Makefile.am:
2716 * examples/appreader/.cvsignore:
2717 * examples/appreader/Makefile.am:
2718 * examples/appreader/appreader.c:
2719 * examples/controller/.cvsignore:
2720 * examples/controller/Makefile.am:
2721 * examples/controller/audio-example.c:
2722 * examples/cutter/.cvsignore:
2723 * examples/cutter/Makefile.am:
2724 * examples/cutter/cutter.c:
2725 * examples/cutter/cutter.h:
2726 * examples/events/Makefile.am:
2727 * examples/events/seek.c:
2728 * examples/helloworld/.cvsignore:
2729 * examples/helloworld/Makefile.am:
2730 * examples/helloworld/helloworld.c:
2731 * examples/helloworld2/.cvsignore:
2732 * examples/helloworld2/Makefile.am:
2733 * examples/helloworld2/helloworld2.c:
2734 * examples/launch/.cvsignore:
2735 * examples/launch/Makefile.am:
2736 * examples/launch/mp3parselaunch.c:
2737 * examples/launch/mp3play:
2738 * examples/manual/.cvsignore:
2739 * examples/manual/Makefile.am:
2740 * examples/manual/extract.pl:
2741 * examples/metadata/Makefile.am:
2742 * examples/metadata/read-metadata.c:
2743 * examples/mixer/.cvsignore:
2744 * examples/mixer/Makefile.am:
2745 * examples/mixer/mixer.c:
2746 * examples/mixer/mixer.h:
2747 * examples/pingpong/.cvsignore:
2748 * examples/pingpong/Makefile.am:
2749 * examples/pingpong/pingpong.c:
2750 * examples/plugins/.cvsignore:
2751 * examples/plugins/Makefile.am:
2752 * examples/plugins/example.c:
2753 * examples/plugins/example.h:
2754 * examples/pwg/.cvsignore:
2755 * examples/pwg/Makefile.am:
2756 * examples/pwg/extract.pl:
2757 * examples/queue/.cvsignore:
2758 * examples/queue/Makefile.am:
2759 * examples/queue/queue.c:
2760 * examples/queue2/.cvsignore:
2761 * examples/queue2/Makefile.am:
2762 * examples/queue2/queue2.c:
2763 * examples/queue3/.cvsignore:
2764 * examples/queue3/Makefile.am:
2765 * examples/queue3/queue3.c:
2766 * examples/queue4/.cvsignore:
2767 * examples/queue4/Makefile.am:
2768 * examples/queue4/queue4.c:
2769 * examples/retag/.cvsignore:
2770 * examples/retag/Makefile.am:
2771 * examples/retag/retag.c:
2772 * examples/retag/transcode.c:
2773 * examples/thread/.cvsignore:
2774 * examples/thread/Makefile.am:
2775 * examples/thread/thread.c:
2776 * examples/typefind/.cvsignore:
2777 * examples/typefind/Makefile.am:
2778 * examples/typefind/typefind.c:
2779 * examples/xml/.cvsignore:
2780 * examples/xml/Makefile.am:
2781 * examples/xml/createxml.c:
2782 * examples/xml/runxml.c:
2783 * tests/Makefile.am:
2784 * tests/check/Makefile.am:
2785 * testsuite/.cvsignore:
2786 * testsuite/Makefile.am:
2788 * testsuite/caps/.cvsignore:
2789 * testsuite/caps/Makefile.am:
2790 * testsuite/caps/app_fixate.c:
2791 * testsuite/caps/audioscale.c:
2792 * testsuite/caps/caps.c:
2793 * testsuite/caps/caps.h:
2794 * testsuite/caps/caps_strings:
2795 * testsuite/caps/compatibility.c:
2796 * testsuite/caps/deserialize.c:
2797 * testsuite/caps/enumcaps.c:
2798 * testsuite/caps/eratosthenes.c:
2799 * testsuite/caps/filtercaps.c:
2800 * testsuite/caps/fixed.c:
2801 * testsuite/caps/fraction-convert.c:
2802 * testsuite/caps/fraction-multiply-and-zero.c:
2803 * testsuite/caps/intersect2.c:
2804 * testsuite/caps/intersection.c:
2805 * testsuite/caps/normalisation.c:
2806 * testsuite/caps/random.c:
2807 * testsuite/caps/renegotiate.c:
2808 * testsuite/caps/sets.c:
2809 * testsuite/caps/simplify.c:
2810 * testsuite/caps/string-conversions.c:
2811 * testsuite/caps/structure.c:
2812 * testsuite/caps/subtract.c:
2813 * testsuite/caps/union.c:
2814 * testsuite/debug/.cvsignore:
2815 * testsuite/debug/Makefile.am:
2816 * testsuite/debug/category.c:
2817 * testsuite/debug/commandline.c:
2818 * testsuite/debug/global.c:
2819 * testsuite/debug/output.c:
2820 * testsuite/debug/printf_extension.c:
2821 * testsuite/dlopen/.cvsignore:
2822 * testsuite/dlopen/Makefile.am:
2823 * testsuite/dlopen/dlopen_gst.c:
2824 * testsuite/dlopen/loadgst.c:
2825 * testsuite/elements/.cvsignore:
2826 * testsuite/elements/Makefile.am:
2827 * testsuite/elements/gst-inspect-check.in:
2828 * testsuite/elements/struct_i386.h:
2829 * testsuite/elements/struct_size.c:
2830 * testsuite/indexers/.cvsignore:
2831 * testsuite/indexers/Makefile.am:
2832 * testsuite/indexers/cache1.c:
2833 * testsuite/indexers/indexdump.c:
2834 * testsuite/parse/.cvsignore:
2835 * testsuite/parse/Makefile.am:
2836 * testsuite/parse/parse1.c:
2837 * testsuite/parse/parse2.c:
2838 * testsuite/plugin/.cvsignore:
2839 * testsuite/plugin/Makefile.am:
2840 * testsuite/plugin/README:
2841 * testsuite/plugin/dynamic.c:
2842 * testsuite/plugin/linked.c:
2843 * testsuite/plugin/loading.c:
2844 * testsuite/plugin/registry.c:
2845 * testsuite/plugin/static.c:
2846 * testsuite/plugin/static2.c:
2847 * testsuite/plugin/testplugin.c:
2848 * testsuite/plugin/testplugin2.c:
2849 * testsuite/plugin/testplugin2_s.c:
2850 * testsuite/plugin/testplugin_s.c:
2851 * testsuite/refcounting/.cvsignore:
2852 * testsuite/refcounting/Makefile.am:
2853 * testsuite/refcounting/bin.c:
2854 * testsuite/refcounting/element.c:
2855 * testsuite/refcounting/element_pad.c:
2856 * testsuite/refcounting/mainloop.c:
2857 * testsuite/refcounting/mem.c:
2858 * testsuite/refcounting/mem.h:
2859 * testsuite/refcounting/object.c:
2860 * testsuite/refcounting/pad.c:
2861 * testsuite/refcounting/sched.c:
2862 * testsuite/refcounting/thread.c:
2863 * testsuite/states/.cvsignore:
2864 * testsuite/states/Makefile.am:
2865 * testsuite/states/bin.c:
2866 * testsuite/states/locked.c:
2867 * testsuite/states/parent.c:
2868 * testsuite/threads/.cvsignore:
2869 * testsuite/threads/159566.c:
2870 * testsuite/threads/159852.c:
2871 * testsuite/threads/Makefile.am:
2872 * testsuite/threads/queue.c:
2873 * testsuite/threads/signals.c:
2874 * testsuite/threads/staticrec.c:
2875 * testsuite/threads/thread.c:
2876 * testsuite/threads/threadb.c:
2877 * testsuite/threads/threadc.c:
2878 * testsuite/threads/threadd.c:
2879 * testsuite/threads/threade.c:
2880 * testsuite/threads/threadf.c:
2881 * testsuite/threads/threadg.c:
2882 * testsuite/threads/threadh.c:
2883 * testsuite/threads/threadi.c:
2884 move all of these under tests
2886 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
2889 * tests/Makefile.am:
2892 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
2894 * docs/gst/gstreamer-sections.txt:
2895 * tests/sched/.cvsignore:
2896 * tests/sched/Makefile.am:
2897 * tests/sched/cases/(fs-fs).xml:
2898 * tests/sched/cases/(fs-i-fs).xml:
2899 * tests/sched/cases/(fs-i-i-fs).xml:
2900 * tests/sched/cases/(fs-i-q[i-fs]).xml:
2901 * tests/sched/dynamic-pipeline.c:
2902 * tests/sched/interrupt1.c:
2903 * tests/sched/interrupt2.c:
2904 * tests/sched/interrupt3.c:
2905 * tests/sched/runtestcases:
2906 * tests/sched/runxml.c:
2907 * tests/sched/sched-stress.c:
2908 * tests/sched/sort.c:
2909 * tests/sched/testcases:
2910 * tests/sched/testcases1.tc:
2911 * tests/seeking/.cvsignore:
2912 * tests/seeking/Makefile.am:
2913 * tests/seeking/seeking1.c:
2914 * tests/threadstate/.cvsignore:
2915 * tests/threadstate/Makefile.am:
2916 * tests/threadstate/test1.c:
2917 * tests/threadstate/test2.c:
2918 * tests/threadstate/threadstate1.c:
2919 * tests/threadstate/threadstate2.c:
2920 * tests/threadstate/threadstate3.c:
2921 * tests/threadstate/threadstate4.c:
2922 * tests/threadstate/threadstate5.c:
2923 remove obsolete tests
2925 * tests/bench-complexity.scm:
2926 * tests/bench-mass_elements.scm:
2927 * tests/complexity.c:
2928 * tests/complexity.gnuplot:
2929 * tests/instantiate/.cvsignore:
2930 * tests/instantiate/Makefile.am:
2931 * tests/instantiate/caps.c:
2932 * tests/mass_elements.c:
2933 * tests/network-clock-utils.scm:
2934 * tests/network-clock.scm:
2936 First pass at cleaning up tests/ dir before moving the rest
2937 Combined with CVS surgery
2939 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
2942 queue has moved, update
2944 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
2946 * docs/gst/gstreamer-sections.txt:
2947 remove double entries from the docs
2948 * gst/gst_private.h:
2949 * gst/gstinfo.c: (_gst_debug_init):
2950 remove the THREAD debug category
2954 * docs/gst/gstreamer.types:
2955 * plugins/elements/gstqueue.c: (gst_queue_get_type),
2956 (gst_queue_init), (gst_queue_finalize), (gst_queue_change_state):
2957 completely move queue and fix up debugging categories
2959 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
2961 * plugins/elements/gstidentity.c: (gst_identity_transform_ip):
2962 make initialization portable, using LL is not
2964 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
2966 * win32/common/gstconfig.h:
2969 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
2971 * win32/common/libgstreamer.def:
2972 rename symbols; sort base section
2974 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
2976 * gst/gstclock.c: (do_linear_regression):
2977 remove crack non-portable handrolled DEBUG macro
2979 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
2981 * docs/random/release:
2983 * win32/common/gstenumtypes.c: (register_gst_object_flags),
2984 (gst_object_flags_get_type), (register_gst_bin_flags),
2985 (gst_bin_flags_get_type), (register_gst_buffer_flag),
2986 (gst_buffer_flag_get_type), (register_gst_bus_flags),
2987 (gst_bus_flags_get_type), (register_gst_bus_sync_reply),
2988 (gst_bus_sync_reply_get_type), (register_gst_caps_flags),
2989 (gst_caps_flags_get_type), (register_gst_clock_return),
2990 (gst_clock_return_get_type), (register_gst_clock_entry_type),
2991 (gst_clock_entry_type_get_type), (register_gst_clock_flags),
2992 (gst_clock_flags_get_type), (register_gst_state),
2993 (gst_state_get_type), (register_gst_state_change_return),
2994 (gst_state_change_return_get_type), (register_gst_state_change),
2995 (gst_state_change_get_type), (register_gst_element_flags),
2996 (gst_element_flags_get_type), (register_gst_core_error),
2997 (gst_core_error_get_type), (register_gst_library_error),
2998 (gst_library_error_get_type), (register_gst_resource_error),
2999 (gst_resource_error_get_type), (register_gst_stream_error),
3000 (gst_stream_error_get_type), (register_gst_event_type_flags),
3001 (gst_event_type_flags_get_type), (register_gst_event_type),
3002 (gst_event_type_get_type), (register_gst_seek_type),
3003 (gst_seek_type_get_type), (register_gst_seek_flags),
3004 (gst_seek_flags_get_type), (register_gst_format),
3005 (gst_format_get_type), (register_gst_index_certainty),
3006 (gst_index_certainty_get_type), (register_gst_index_entry_type),
3007 (gst_index_entry_type_get_type),
3008 (register_gst_index_lookup_method),
3009 (gst_index_lookup_method_get_type), (register_gst_assoc_flags),
3010 (gst_assoc_flags_get_type), (register_gst_index_resolver_method),
3011 (gst_index_resolver_method_get_type), (register_gst_index_flags),
3012 (gst_index_flags_get_type), (register_gst_debug_level),
3013 (gst_debug_level_get_type), (register_gst_debug_color_flags),
3014 (gst_debug_color_flags_get_type), (register_gst_iterator_result),
3015 (gst_iterator_result_get_type), (register_gst_iterator_item),
3016 (gst_iterator_item_get_type), (register_gst_message_type),
3017 (gst_message_type_get_type), (register_gst_mini_object_flags),
3018 (gst_mini_object_flags_get_type), (register_gst_pad_link_return),
3019 (gst_pad_link_return_get_type), (register_gst_flow_return),
3020 (gst_flow_return_get_type), (register_gst_activate_mode),
3021 (gst_activate_mode_get_type), (register_gst_pad_direction),
3022 (gst_pad_direction_get_type), (register_gst_pad_flags),
3023 (gst_pad_flags_get_type), (register_gst_pad_presence),
3024 (gst_pad_presence_get_type), (register_gst_pad_template_flags),
3025 (gst_pad_template_flags_get_type), (register_gst_pipeline_flags),
3026 (gst_pipeline_flags_get_type), (register_gst_plugin_error),
3027 (gst_plugin_error_get_type), (register_gst_plugin_flags),
3028 (gst_plugin_flags_get_type), (register_gst_rank),
3029 (gst_rank_get_type), (register_gst_query_type),
3030 (gst_query_type_get_type), (register_gst_tag_merge_mode),
3031 (gst_tag_merge_mode_get_type), (register_gst_tag_flag),
3032 (gst_tag_flag_get_type), (register_gst_task_state),
3033 (gst_task_state_get_type), (register_gst_alloc_trace_flags),
3034 (gst_alloc_trace_flags_get_type),
3035 (register_gst_type_find_probability),
3036 (gst_type_find_probability_get_type), (register_gst_uri_type),
3037 (gst_uri_type_get_type), (register_gst_parse_error),
3038 (gst_parse_error_get_type):
3039 * win32/common/gstenumtypes.h:
3040 * win32/common/gstversion.h:
3041 update visual studio generated files
3043 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
3045 * win32/vs6/libgstbase.dsp:
3046 * win32/vs6/libgstelements.dsp:
3047 update project files for new locations
3049 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
3054 reinstate and update
3059 * docs/random/LICENSE:
3062 2005-11-30 Edward Hervey <edward@fluendo.com>
3064 * gst/gsttypefind.c: (gst_type_find_register):
3065 * gst/gsttypefind.h:
3066 * gst/gsttypefindfactory.c: (gst_type_find_factory_init),
3067 (gst_type_find_factory_dispose):
3068 * gst/gsttypefindfactory.h:
3069 Fix memory leak in GstTypeFindFactory.
3071 2005-11-29 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
3074 * plugins/elements/Makefile.am:
3075 * plugins/elements/gstelements.c:
3076 * plugins/elements/gstqueue.c:
3077 move queue from core to the elements plugin
3079 2005-11-29 Andy Wingo <wingo@pobox.com>
3081 * libs/gst/base/gstbasetransform.h:
3082 * libs/gst/base/gstbasesrc.h:
3083 * libs/gst/base/gstbasesink.h: en-LARGE the padding.
3085 * gst/gstconfig.h.in (GST_PADDING_LARGE): New define, the number
3086 of pointers by which to pad very extensible base classes (like the
3087 ones in libs/gst/base).
3089 2005-11-29 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
3091 * docs/gst/gstreamer-docs.sgml:
3092 * docs/gst/gstreamer-sections.txt:
3093 * docs/libs/gstreamer-libs-docs.sgml:
3094 * docs/libs/gstreamer-libs-sections.txt:
3095 moving documentation from core to lib
3097 2005-11-29 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
3099 * check/Makefile.am:
3101 * docs/gst/Makefile.am:
3103 * gst/base/.cvsignore:
3104 * gst/base/Makefile.am:
3106 * gst/base/gstadapter.c:
3107 * gst/base/gstadapter.h:
3108 * gst/base/gstbasesink.c:
3109 * gst/base/gstbasesink.h:
3110 * gst/base/gstbasesrc.c:
3111 * gst/base/gstbasesrc.h:
3112 * gst/base/gstbasetransform.c:
3113 * gst/base/gstbasetransform.h:
3114 * gst/base/gstcollectpads.c:
3115 * gst/base/gstcollectpads.h:
3116 * gst/base/gstpushsrc.c:
3117 * gst/base/gstpushsrc.h:
3118 * gst/base/gsttypefindhelper.c:
3119 * gst/base/gsttypefindhelper.h:
3120 * gst/check/Makefile.am:
3121 * gst/check/gstcheck.c:
3122 * gst/check/gstcheck.h:
3123 * gst/net/Makefile.am:
3125 * gst/net/gstnetclientclock.c:
3126 * gst/net/gstnetclientclock.h:
3127 * gst/net/gstnettimepacket.c:
3128 * gst/net/gstnettimepacket.h:
3129 * gst/net/gstnettimeprovider.c:
3130 * gst/net/gstnettimeprovider.h:
3131 * libs/gst/Makefile.am:
3132 * libs/gst/base/Makefile.am:
3133 * libs/gst/base/gstbasetransform.c:
3134 * libs/gst/check/Makefile.am:
3135 * plugins/elements/Makefile.am:
3137 CVS surgery + support to move base, check, and net out of gst
3140 2005-11-29 Andy Wingo <wingo@pobox.com>
3142 * gst/gstevent.h (struct _GstEvent): Only one pointer of padding.
3144 * gst/gststructure.h (struct _GstStructure): Only one pointer of
3147 * gst/gstquery.h (struct _GstQuery): Only one pointer of padding.
3149 * gst/gstpluginfeature.h: Remove a comment in PluginFeature.
3151 * gst/gstplugin.h (struct _GstPluginClass): Add some padding.
3153 * gst/gstobject.h: (struct _GstObject): Only one pointer of
3154 padding; reduces object size by about 30%. We don't expect
3155 anything else to go into gstobject.
3157 * gst/gstminiobject.h (struct _GstMiniObject)
3158 (struct _GstMiniObjectClass): Only one pointer of padding; the
3159 payload is only a pointer and two ints anyway. For the class there
3160 are only two methods as well.
3162 * gst/gstelement.h (struct _GstElementClass): Removed
3163 the state_changed signal callback, it is not used.
3165 2005-11-29 Thomas Vander Stichele <thomas at apestaart dot org>
3167 * docs/gst/gstreamer.types:
3168 fix includes, though they are a little dinky
3170 2005-11-29 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
3172 * check/Makefile.am:
3173 look in the right place for elements, a lot more chance of
3176 remove indexers and elements subdirs
3177 * plugins/Makefile.am:
3178 make indexers conditional
3180 2005-11-29 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
3184 * plugins/elements/Makefile.am:
3185 * plugins/elements/gstcapsfilter.c:
3186 * plugins/elements/gstfilesink.c:
3187 * plugins/elements/gstfilesrc.c:
3188 * plugins/elements/gstidentity.c:
3189 * plugins/indexers/Makefile.am:
3190 do CVS surgery and related build fixery to move elements
3191 and indexers in a new gstreamer/plugins directory, out of the
3194 2005-11-29 Andy Wingo <wingo@pobox.com>
3196 * check/Makefile.am:
3197 * pkgconfig/gstreamer-net-uninstalled.pc.in:
3198 * pkgconfig/gstreamer-net.pc.in:
3199 * gst/net/Makefile.am: Rename gstnet-tempname to gstnet. Fixes
3202 2005-11-29 Thomas Vander Stichele <thomas at apestaart dot org>
3204 * tools/Makefile.am:
3205 * tools/gst-complete.1.in:
3206 * tools/gst-complete.c:
3207 * tools/gst-compprep.1.in:
3208 * tools/gst-compprep.c:
3209 removing -compprep and -complete
3211 2005-11-29 Thomas Vander Stichele <thomas at apestaart dot org>
3213 * gst/gstevent.c: (gst_event_new_new_segment),
3214 (gst_event_parse_new_segment):
3216 fix #320529 - clean up new_segment API and structure.
3217 Let's hope everyone was using the methods, and not the structure.
3219 2005-11-29 Edward Hervey <edward@fluendo.com>
3221 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
3222 (gst_base_sink_event), (gst_base_sink_do_sync),
3223 (gst_base_sink_activate_pull), (gst_base_sink_change_state):
3224 Properly handle non GST_FORMAT_TIME segment
3225 * gst/elements/gstidentity.c: (gst_identity_transform_ip):
3226 Properly handle non GST_FORMAT_TIME segment
3228 This function is valid if the accumulator is 0 and the format
3229 is different from the requested format.
3231 2005-11-29 Jan Schmidt <thaytan@mad.scientist.com>
3233 * docs/gst/gstreamer-sections.txt:
3234 Add gst_query_new_seeking and gst_query_parse_seeking to the
3237 2005-11-29 Jan Schmidt <thaytan@mad.scientist.com>
3239 * gst/base/gstbasetransform.c: (gst_base_transform_buffer_alloc):
3240 Treat a pad alloc with new caps the same as if we were not
3241 negotiated, in order to allow a changing upstream output
3242 to produce a new format of data.
3244 2005-11-29 Edward Hervey <edward@fluendo.com>
3246 * gst/base/gstbasetransform.c: (gst_base_transform_class_init),
3247 (gst_base_transform_event), (gst_base_transform_eventfunc):
3248 The event virtual method is now properly implemented, with a default
3250 Sub classes should call the parent_class event method. They should
3251 return FALSE if they had a problem handling the given event, or don't
3252 want GstBaseTransform to send that even downstream
3253 * gst/elements/gstidentity.c: (gst_identity_class_init),
3254 (gst_identity_init), (gst_identity_event),
3255 (gst_identity_transform_ip), (gst_identity_set_property),
3256 (gst_identity_get_property):
3257 * gst/elements/gstidentity.h:
3258 Added the single-segment boolean property.
3259 If set to TRUE, it will output a single segment of data, starting from
3260 0, will eat up all incoming newsegment, and modify the timestamp of the
3263 2005-11-29 Tim-Philipp Müller <tim at centricular dot net>
3265 * gst/gstghostpad.c: (gst_proxy_pad_get_target):
3266 Don't ref NULL target pad (#322751). Improve docs.
3268 2005-11-29 Michael Smith <msmith@fluendo.com>
3270 * gst/gstregistryxml.c: (load_plugin):
3271 Don't crash if we failed to load a feature from a plugin.
3273 2005-11-28 Thomas Vander Stichele <thomas at apestaart dot org>
3275 * check/pipelines/simple_launch_lines.c: (setup_pipeline),
3277 use more check API and less GLib API
3279 2005-11-28 Thomas Vander Stichele <thomas at apestaart dot org>
3282 don't run checks if we don't have check
3284 remove the registry when running make torture
3285 * docs/gst/gstreamer-sections.txt:
3286 remove second multiply
3287 * gst/gstqueue.c: (gst_queue_loop):
3288 fix a compile warning when disabling debug
3290 2005-11-28 Jan Schmidt <thaytan@mad.scientist.com>
3293 Hey! Let's print the pad name if the pointer != NULL instead
3294 of when it == NULL :-)
3296 2005-11-28 Wim Taymans <wim@fluendo.com>
3298 * check/gst/gstutils.c: (GST_START_TEST):
3299 Updated check, add some scaling accuracy checking code.
3301 * gst/gstutils.c: (gst_util_div128_64),
3302 (gst_util_uint64_scale_int64), (gst_util_uint64_scale),
3303 (gst_util_uint64_scale_int):
3304 Fix 6 times faster division code. Optimize for common
3305 1/1 and less common X/1 cases.
3307 2005-11-28 Wim Taymans <wim@fluendo.com>
3309 * check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
3312 * gst/gstclock.c: (gst_clock_finalize), (gst_clock_set_master),
3313 (do_linear_regression), (gst_clock_add_observation):
3315 Release lock when the clock cannot be slaved.
3316 Catch the case where the regression returned an invalid denominator.
3318 * gst/gstutils.c: (gst_util_div128_64_iterate),
3319 (gst_util_div128_64), (gst_util_uint64_scale_int64),
3320 (gst_util_uint64_scale), (gst_util_uint64_scale_int):
3321 Add protentially more performant non-iterative 128/64 divide function
3322 that unfortunatly does not work yet.
3323 Shortcut the trivial 0/X = 0 case.
3324 Remove the warnings on overflow.
3326 2005-11-28 Thomas Vander Stichele <thomas at apestaart dot org>
3328 * gst/gstplugin.c: (gst_plugin_register_func):
3329 everything causing a plugin not to load should be at least a WARNING
3331 2005-11-28 Stefan Kost <ensonic@users.sf.net>
3333 * docs/random/ensonic/dparams.txt:
3334 some TODOs for the next dev cycle
3335 * libs/gst/controller/gstcontroller.c:
3336 (gst_controlled_property_set_interpolation_mode),
3337 (gst_controlled_property_new):
3338 * libs/gst/controller/gstcontroller.h:
3339 use base type to assign acccessor functions
3341 2005-11-28 Jan Schmidt <thaytan@mad.scientist.com>
3343 * check/Makefile.am:
3344 Oops, that should have been top_srcdir
3346 2005-11-28 Jan Schmidt <thaytan@mad.scientist.com>
3348 * check/Makefile.am:
3349 * check/elements/fdsrc.c: (GST_START_TEST):
3350 Use a cmdline define to specify the location of a file to use for
3351 testing, to avoid breaking distcheck.
3353 2005-11-28 Andy Wingo <wingo@pobox.com>
3355 * gst/gstpad.c (fixate_value): Use array functions for arrays.
3357 2005-11-28 Edward Hervey <edward@fluendo.com>
3359 * tools/gst-launch.c: (main):
3360 Clarify the output strings, makes it easier to translate.
3363 2005-11-28 Thomas Vander Stichele <thomas at apestaart dot org>
3366 don't try and build net if we don't even have <sys/socket.h>
3368 2005-11-27 Jan Schmidt <thaytan@mad.scientist.com>
3370 * check/Makefile.am:
3371 * check/elements/fdsrc.c: (event_func), (setup_fdsrc),
3372 (cleanup_fdsrc), (GST_START_TEST), (fdsrc_suite), (main):
3373 Add tests for fdsrc seekability
3375 * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
3376 (gst_fdsrc_init), (gst_fdsrc_update_fd), (gst_fdsrc_start),
3377 (gst_fdsrc_set_property), (gst_fdsrc_is_seekable),
3378 (gst_fdsrc_get_size), (gst_fdsrc_uri_set_uri):
3379 * gst/elements/gstfdsrc.h:
3380 fdsrc should not be a 'live' source.
3381 Implement seeking on seekable fd's.
3383 * gst/gstquery.c: (gst_query_new_seeking),
3384 (gst_query_parse_seeking):
3386 Implement SEEKING query functions:
3387 *_new_seeking and *_parse_seeking
3389 2005-11-27 Stefan Kost <ensonic@users.sf.net>
3391 * gst/gstelement.c: (gst_element_dispose):
3394 * gst/gstiterator.c:
3395 * gst/gststructure.c:
3398 * libs/gst/controller/gstcontroller.c:
3399 (gst_controlled_property_set_interpolation_mode):
3400 * libs/gst/controller/gstcontroller.h:
3401 * libs/gst/controller/gstinterpolation.c:
3402 (interpolate_none_get_enum_value_array):
3403 support controlling enums
3405 2005-11-27 Tim-Philipp Müller <tim at centricular dot net>
3408 Improve documentation for gst_value_union().
3411 Change return value for union, intersect and subtract functions
3412 from gint to gboolean.
3414 2005-11-27 Tim-Philipp Müller <tim at centricular dot net>
3416 * gst/gstvalue.c: (gst_value_serialize_any_list),
3417 (gst_value_transform_any_list_string),
3418 (gst_value_deserialize_list), (gst_value_deserialize_array),
3419 (gst_value_set_int_range), (gst_value_deserialize_int_range),
3420 (gst_value_set_double_range), (gst_value_deserialize_double_range),
3421 (gst_value_set_fraction_range_full),
3422 (gst_value_deserialize_fraction_range),
3423 (gst_value_deserialize_caps), (gst_value_deserialize_buffer),
3424 (gst_value_deserialize_boolean),
3425 (gst_value_deserialize_int_helper), (gst_value_deserialize_double),
3426 (gst_value_serialize_float), (gst_value_deserialize_float),
3427 (gst_string_wrap), (gst_value_deserialize_string),
3428 (gst_value_deserialize_enum), (gst_value_deserialize_flags),
3429 (gst_value_union_int_range_int_range),
3430 (gst_value_intersect_int_range_int_range),
3431 (gst_value_intersect_double_range_double_range),
3432 (gst_value_create_new_range), (gst_value_subtract_int_range_int),
3433 (gst_value_subtract_int_range_int_range),
3434 (gst_value_subtract_double_double_range),
3435 (gst_value_subtract_double_range_double_range),
3436 (gst_value_deserialize_fraction):
3438 Use gint, gdouble and gchar in our API instead of int, double and
3439 char (and make usage in gstvalue.c more consistent).
3441 2005-11-27 Thomas Vander Stichele <thomas at apestaart dot org>
3443 * check/Makefile.am:
3444 * libs/gst/controller/Makefile.am:
3445 * libs/gst/dataprotocol/Makefile.am:
3446 fix up Makefile.am and remove GST_ENABLE_NEW
3448 2005-11-27 Thomas Vander Stichele <thomas at apestaart dot org>
3452 * gst/base/Makefile.am:
3453 * gst/check/Makefile.am:
3454 * gst/elements/Makefile.am:
3455 * gst/net/Makefile.am:
3456 update LDFLAGS use some more
3458 2005-11-27 Thomas Vander Stichele <thomas at apestaart dot org>
3460 * common/m4/gst-doc.m4:
3463 2005-11-26 Edward Hervey <edward@fluendo.com>
3465 * gst/gstpluginfeature.c: (gst_plugin_feature_load):
3466 This shouldn't issue a g_warning since it returns NULL if it
3467 couldn't find the plugin, and all functions using this behave
3468 properly on a NULL return. Switching to a GST_WARNING.
3470 2005-11-25 Jan Schmidt <thaytan@mad.scientist.com>
3472 * gst/gstbin.c: (gst_bin_handle_message_func):
3473 Don't leak clock messages.
3475 2005-11-25 Wim Taymans <wim@fluendo.com>
3477 * gst/gstutils.c: (gst_util_uint64_scale_int64),
3478 (gst_util_uint64_scale_int):
3479 Optimisations, remove unneeded vars.
3481 2005-11-25 Wim Taymans <wim@fluendo.com>
3483 * check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
3484 Added more checks for the high precision uint64 cases.
3486 * gst/gstutils.c: (gst_util_uint64_scale_int64),
3487 (gst_util_uint64_scale), (gst_util_uint64_scale_int):
3488 Implement high precision (guint64 * guint64) / guint64.
3490 2005-11-24 Wim Taymans <wim@fluendo.com>
3492 * gst/base/gstbasesrc.c: (gst_base_src_query):
3493 Fix wrong percentage query.
3495 * gst/gstutils.c: (gst_util_uint64_scale),
3496 (gst_util_uint64_scale_int):
3497 Add some more common cases that can be handled
3498 efficiently to _scale.
3500 2005-11-24 Thomas Vander Stichele <thomas at apestaart dot org>
3502 * check/gst/gstminiobject.c: (thread_ref), (GST_START_TEST),
3503 (gst_mini_object_suite):
3504 don't use check calls from threads; check probably isn't
3505 threadsafe and using a lock to make it threadsafe would
3506 defeat the purpose of this check
3507 * gst/check/gstcheck.c:
3508 * gst/check/gstcheck.h:
3509 use GST_DEBUG some more
3511 2005-11-24 Wim Taymans <wim@fluendo.com>
3513 * gst/gstutils.c: (gst_util_uint64_scale),
3514 (gst_util_uint64_scale_int):
3515 Chain trivial case to _scale_int.
3517 2005-11-24 Wim Taymans <wim@fluendo.com>
3519 * check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
3520 Added test for scaling.
3525 * gst/gstutils.c: (gst_util_uint64_scale_int):
3526 Implemented high precision scaling code.
3528 2005-11-24 Stefan Kost <ensonic@users.sf.net>
3531 do not crash on pad==NULL
3533 2005-11-24 Thomas Vander Stichele <thomas at apestaart dot org>
3535 Patch by: Stefan Kost
3537 * common/gtk-doc.mak:
3538 * docs/gst/Makefile.am:
3539 * docs/libs/Makefile.am:
3540 Fix distcheck issues for the libraries docs build
3543 2005-11-24 Michael Smith <msmith@fluendo.com>
3545 * docs/manual/basics-helloworld.xml:
3546 Fix bug #315027: memory leak in example code in docs.
3548 2005-11-24 Michael Smith <msmith@fluendo.com>
3550 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
3551 Unlock the PREROLL_LOCK in a failure case.
3553 2005-11-24 Wim Taymans <wim@fluendo.com>
3555 * docs/gst/gstreamer-sections.txt:
3556 * gst/base/gstadapter.h:
3557 * gst/base/gstbasesink.h:
3558 * gst/base/gstbasesrc.h:
3559 * gst/base/gstbasetransform.h:
3560 * gst/base/gstpushsrc.h:
3561 * gst/elements/gstfakesink.h:
3562 * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type):
3563 * gst/elements/gstfakesrc.h:
3564 * gst/elements/gstfilesink.h:
3565 * gst/elements/gstfilesrc.h:
3568 * gst/gstbuffer.c: (_gst_buffer_copy):
3571 * gst/gstchildproxy.c:
3574 * gst/gstelementfactory.c:
3575 * gst/gstelementfactory.h:
3577 * gst/gstghostpad.h:
3579 * gst/gstinterface.h:
3580 * gst/gstminiobject.c:
3581 * gst/gstminiobject.h:
3584 * gst/gstpadtemplate.h:
3585 * gst/gstpipeline.h:
3586 * gst/gstpluginfeature.h:
3591 * gst/gsttagsetter.c:
3592 * gst/gsttagsetter.h:
3595 * gst/gsttypefind.h:
3598 * gst/net/gstnetclientclock.c:
3599 * gst/net/gstnetclientclock.h:
3600 * gst/net/gstnettimepacket.c:
3601 * gst/net/gstnettimeprovider.c:
3602 * gst/net/gstnettimeprovider.h:
3605 2005-11-23 Thomas Vander Stichele <thomas at apestaart dot org>
3607 * configure.ac: back to HEAD
3609 === release 0.9.6 ===
3611 2005-11-23 Thomas Vander Stichele <thomas at apestaart dot org>
3614 releasing 0.9.6, "Always On Time"
3616 2005-11-23 Wim Taymans <wim@fluendo.com>
3618 * docs/gst/gstreamer-sections.txt:
3619 * gst/glib-compat.c:
3620 * gst/gsttagsetter.c:
3622 * gst/net/gstnetclientclock.c:
3623 * gst/net/gstnettimepacket.h:
3626 2005-11-23 Thomas Vander Stichele <thomas at apestaart dot org>
3628 * docs/faq/using.xml:
3629 * docs/libs/tmpl/gstcontrol.sgml:
3630 * docs/manual/advanced-dparams.xml:
3631 * docs/manual/appendix-checklist.xml:
3632 * docs/manual/basics-elements.xml:
3633 * docs/pwg/other-source.xml:
3634 * docs/random/moving-plugins:
3636 * tools/gst-launch.1.in:
3637 remove mentions of sinesrc
3639 2005-11-23 Michael Smith <msmith@fluendo.com>
3641 * docs/gst/gstreamer-sections.txt:
3642 Update for new API and API changes.
3644 Documentation fix: GST_TRYLOCK -> GST_OBJECT_TRYLOCK
3646 Documentation typo fix.
3647 * gst/net/gstnettimepacket.c:
3648 Documentation fixes for arguments.
3650 2005-11-23 Jan Schmidt <thaytan@mad.scientist.com>
3652 * gst/gststructure.c: (gst_structure_get_fraction),
3653 (gst_structure_parse_value),
3654 (gst_structure_fixate_field_nearest_fraction):
3655 * gst/gststructure.h:
3656 * gst/gstutils.c: (gst_util_uint64_scale_int):
3658 * scripts/update-funcnames:
3660 Rename gst_util_clock_time_scale to gst_util_uint64_scale_int
3661 Make gst_structure_fixate_field_nearest_fraction take a numerator
3662 and denominator argument instead of a GValue
3663 add gst_structure_get_fraction helper function.
3665 2005-11-23 Wim Taymans <wim@fluendo.com>
3667 * docs/design/part-TODO.txt:
3670 * gst/net/gstnetclientclock.c: (gst_net_client_clock_thread):
3671 * gst/net/gstnetclientclock.h:
3672 Use parent fields for timeout and window_size.
3674 2005-11-23 Andy Wingo <wingo@pobox.com>
3676 * check/net/gstnetclientclock.c (test_functioning): Adjust to
3677 rate_num/rate_denom change.
3679 * gst/net/gstnetclientclock.c
3680 (gst_net_client_clock_observe_times): Take the SLAVE_LOCK not the
3681 OBJECT_LOCK. Don't call add_observation with the lock.
3683 * gst/gstclock.c (gst_clock_init): Initialize the rate as a
3685 (gst_clock_adjust_unlocked): Adjust using uint64_scale and the
3687 (gst_clock_set_calibration, gst_clock_get_calibration): Change to
3688 deal with rate as a fraction whose numerator and denominator are
3689 GstClockTime values.
3690 (gst_clock_set_master): Only use the OBJECT_LOCK to set the
3691 master; the other fields are protected by the SLAVE_LOCK.
3692 (do_linear_regression): Note that this must be called with the
3694 (gst_clock_add_observation): Take the SLAVE_LOCK, not the
3695 OBJECT_LOCK. Call set_calibration instead of touching the
3697 (gst_clock_set_property, gst_clock_get_property): Protect
3698 master/slave parameters with the SLAVE_LOCK.
3700 * gst/gstclock.h (GstClock): Remove rate, add rate_numerator and
3701 rate_denominator. PR3C1S3. Add a new lock, the SLAVE_LOCK, and
3702 note that all of the instance variables that add_observation and
3703 the set_master functions use are protected by that lock and not
3705 (GST_CLOCK_SLAVE_LOCK, GST_CLOCK_SLAVE_UNLOCK): New macros.
3707 * gst/gstclock.c (gst_clock_add_observation): No longer requires
3708 the caller to take the object lock.
3710 2005-11-23 Wim Taymans <wim@fluendo.com>
3712 * gst/gsterror.c: (_gst_core_errors_init):
3714 Add error for clock stuff.
3716 * gst/gstpipeline.c: (gst_pipeline_change_state),
3717 (gst_pipeline_set_clock):
3718 Post clock error when clock cannot be used in a pipeline.
3720 2005-11-23 Stefan Kost <ensonic@users.sf.net>
3722 * docs/gst/gstreamer-sections.txt:
3723 make two symbols from gstinfo private for the docs
3724 * gst/base/gstcollectpads.h:
3726 fix doc typos, update docs
3728 2005-11-22 Wim Taymans <wim@fluendo.com>
3730 * gst/base/gstbasesink.c: (gst_base_sink_class_init),
3731 (gst_base_sink_wait), (gst_base_sink_do_sync),
3732 (gst_base_sink_handle_event):
3733 * gst/base/gstbasesink.h:
3734 No need to store the clock, the parent element class already
3737 * gst/gstbin.c: (gst_bin_set_clock_func), (gst_bin_add_func):
3738 Updates for clock_set returning a gboolean
3740 * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_wait),
3741 (gst_clock_id_wait_async), (gst_clock_class_init),
3742 (gst_clock_init), (gst_clock_finalize),
3743 (gst_clock_get_internal_time), (gst_clock_get_time),
3744 (gst_clock_slave_callback), (gst_clock_set_master),
3745 (gst_clock_get_master), (do_linear_regression),
3746 (gst_clock_add_observation), (gst_clock_set_property),
3747 (gst_clock_get_property):
3749 Implement master/slave. When setting a clock as a slave, a
3750 periodic timeout is scheduled to sample master and slave times.
3751 Then the slave clock is recalibrated to match offset and rate
3752 of the master clock.
3753 Update logging a bit.
3754 Add flag so that a clock can state that is cannot be slaved to
3757 * gst/gstelement.c: (gst_element_set_clock):
3759 The set clock returns a gboolean for when an element cannot
3760 deal with the selected clock in the pipeline.
3762 * gst/gstpipeline.c: (gst_pipeline_change_state),
3763 (gst_pipeline_set_clock):
3764 * gst/gstpipeline.h:
3765 Handle the case where the selected clock cannot be set on
3768 * gst/net/gstnetclientclock.c: (gst_net_client_clock_class_init),
3769 (gst_net_client_clock_init), (gst_net_client_clock_finalize),
3770 (gst_net_client_clock_set_property),
3771 (gst_net_client_clock_get_property),
3772 (gst_net_client_clock_observe_times):
3773 * gst/net/gstnetclientclock.h:
3774 Use regression code in GstClock parent, remove duplicated
3777 2005-11-22 Michael Smith <msmith@fluendo.com>
3779 * gst/gstutils.c: (gst_util_clock_time_scale):
3781 * docs/gst/gstreamer-sections.txt:
3782 Rename method to have extra underscore.
3784 2005-11-22 Thomas Vander Stichele <thomas at apestaart dot org>
3786 * gst/elements/Makefile.am:
3787 * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type):
3788 * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
3789 (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
3790 (gst_fake_src_init), (gst_fake_src_prepare_buffer),
3791 (gst_fake_src_alloc_buffer), (gst_fake_src_get_size):
3792 * gst/elements/gstfakesrc.h:
3793 * gst/gstqueue.c: (queue_leaky_get_type):
3794 correctly fix GEnumValues so that nick is the short lowercase
3796 * tools/gst-inspect.c: (print_element_properties_info):
3797 also show the nick, since it's useful to use from parse_launch
3801 2005-11-22 Michael Smith <msmith@fluendo.com>
3803 * gst/gstutils.c: (gst_util_clocktime_scale):
3805 * docs/gst/gstreamer-sections.txt:
3806 Add util method for scaling a clocktime by a fraction. Useful
3807 implementation is left as an exercise for the reader.
3809 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
3811 * gst/gstvalue.c: (gst_value_collect_fraction_range):
3812 If needed, allocate storage in the destination value during
3815 2005-11-22 Edward Hervey <edward@fluendo.com>
3817 * docs/gst/gstreamer-sections.txt:
3822 * gst/gstutils.c: (gst_util_set_object_arg):
3823 * tools/gst-compprep.c: (main):
3824 * tools/gst-inspect.c: (print_element_properties_info):
3825 Removed GstURI, closes bug #321061
3827 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
3829 * check/gst/gststructure.c: (GST_START_TEST):
3830 * gst/gststructure.c: (gst_structure_parse_value):
3831 Oops, broke automatic string type parsing.
3832 Add a test to catch it in future.
3834 2005-11-22 Andy Wingo <wingo@pobox.com>
3836 * gst/gsttagsetter.c (gst_tag_setter_get_tag_merge_mode)
3837 (gst_tag_setter_set_tag_merge_mode, gst_tag_setter_get_tag_list):
3838 Actually rename the function implementations. Grr.
3840 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
3842 * check/gst/capslist.h:
3844 * check/gst/gststructure.c: (GST_START_TEST),
3845 (gst_structure_suite):
3846 Test automatic value type detection in gst_structure_from_string.
3847 * gst/gststructure.c: (gst_structure_parse_value):
3848 Add fraction as a type we try and guess automatically in
3849 caps/structure strings.
3851 2005-11-22 Andy Wingo <wingo@pobox.com>
3853 patch by: Torsten Schoenfeld <kaffeetisch gmx de>
3855 * gst/gsttagsetter.h:
3856 * gst/gsttagsetter.c: (gst_tag_setter_merge_tags)
3857 (gst_tag_setter_add_tags, gst_tag_setter_add_tag_values)
3858 (gst_tag_setter_add_tag_valist)
3859 (gst_tag_setter_add_tag_valist_values): Renamed from _merge, _add,
3860 _add_values, _add_valist, and _add_valist_values. Since this is an
3861 interface the function suffixes should be more explicit so
3862 language binding don't end up with element.add_valist ->
3863 gst_tag_setter_add_valist, for example. Fixes #322069.
3865 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
3867 * check/gst/gstcaps.c: (GST_START_TEST):
3868 Extend caps string tests to check that a caps to string
3869 conversion is reversible and produces the same caps.
3871 * gst/gststructure.c: (gst_structure_value_get_generic_type):
3872 Output "fraction" as the generic type fraction range, so caps
3873 serialisation and deserialisation works.
3874 * check/gst/capslist.h:
3875 * gst/gstvalue.c: (gst_value_deserialize_fraction):
3876 Support 'MIN' and 'MAX' for deserialising fractions.
3878 2005-11-22 Andy Wingo <wingo@pobox.com>
3880 * gst/gstevent.h (gst_event_new_new_segment)
3881 (gst_event_parse_new_segment, gst_event_new_buffer_size)
3882 (gst_event_parse_buffer_size, gst_ghost_pad_new_no_target):
3883 Renamed from *_newsegment, *_buffersize, *_notarget.
3885 * scripts/update-funcnames: New script, performs the changes
3888 2005-11-22 Wim Taymans <wim@fluendo.com>
3890 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
3891 Make sure the GstFlowReturn is returned.
3893 * gst/gstbus.c: (gst_bus_add_signal_watch_full),
3894 (gst_bus_add_signal_watch):
3896 add gst_bus_add_signal_watch_full.
3898 * gst/gstplugin.c: (gst_plugin_load_file):
3899 Small style cleanup.
3901 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
3903 * check/gst/gstevent.c: (test_event), (GST_START_TEST):
3904 Block the fakesrc srcpad when we send an event, to avoid
3905 contention on the stream_lock causing random test failures.
3907 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
3909 * check/gst/gstvalue.c: (GST_START_TEST):
3910 * gst/gstvalue.c: (gst_value_fraction_subtract):
3913 2005-11-22 Stefan Kost <ensonic@users.sf.net>
3916 include "gstchildproxy.h"
3917 * gst/gstchildproxy.h:
3918 * libs/gst/controller/gstcontroller.h:
3919 use G_GNUC_NULL_TERMINATED
3921 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
3923 * check/gst/capslist.h:
3924 * check/gst/gstcaps.c: (GST_START_TEST):
3925 * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
3926 * gst/gststructure.c: (gst_structure_parse_range),
3927 (gst_structure_fixate_field_nearest_fraction):
3928 * gst/gststructure.h:
3929 * gst/gstvalue.c: (gst_value_init_fraction_range),
3930 (gst_value_free_fraction_range), (gst_value_copy_fraction_range),
3931 (gst_value_collect_fraction_range),
3932 (gst_value_lcopy_fraction_range), (gst_value_set_fraction_range),
3933 (gst_value_set_fraction_range_full),
3934 (gst_value_get_fraction_range_min),
3935 (gst_value_get_fraction_range_max),
3936 (gst_value_serialize_fraction_range),
3937 (gst_value_transform_fraction_range_string),
3938 (gst_value_compare_fraction_range),
3939 (gst_value_deserialize_fraction_range),
3940 (gst_value_intersect_fraction_fraction_range),
3941 (gst_value_intersect_fraction_range_fraction_range),
3942 (gst_value_subtract_fraction_fraction_range),
3943 (gst_value_subtract_fraction_range_fraction),
3944 (gst_value_subtract_fraction_range_fraction_range),
3945 (gst_value_collect_fraction), (gst_value_fraction_multiply),
3946 (gst_value_fraction_subtract), (gst_value_deserialize_fraction),
3947 (gst_value_transform_string_fraction), (_gst_value_initialize):
3949 Implement fraction ranges and extend GstFraction to support
3950 arithmetic subtraction, as well as deserialization from integer
3951 strings such as "100"
3952 Add a testsuite as for int and double range set operations
3954 2005-11-21 Andy Wingo <wingo@pobox.com>
3958 * gst/gststructure.h: Add glib-compat.h.
3960 2005-11-21 Wim Taymans <wim@fluendo.com>
3962 * gst/gstbin.c: (gst_bin_change_state_func):
3965 2005-11-21 Wim Taymans <wim@fluendo.com>
3968 And add a nice define too.
3970 2005-11-21 Wim Taymans <wim@fluendo.com>
3972 * gst/gstsegment.c: (gst_segment_copy), (gst_segment_get_type),
3973 (gst_segment_new), (gst_segment_free), (gst_segment_init),
3974 (gst_segment_set_duration), (gst_segment_set_last_stop),
3975 (gst_segment_set_seek), (gst_segment_set_newsegment),
3976 (gst_segment_to_stream_time), (gst_segment_to_running_time),
3979 Make binding friendly.
3981 2005-11-21 Andy Wingo <wingo@pobox.com>
3983 * gst/gsttagsetter.h:
3985 * gst/gststructure.h:
3987 * gst/gstutils.h: Sprinkle NULL_TERMINATED to taste. Fixes
3990 * gst/gsterror.c (_gst_core_errors_init):
3991 * gst/gsterror.h (GST_CORE_ERROR_MISSING_PLUGIN): New error
3994 * gst/Makefile.am (gst_headers): Add glib-compat.h.
3995 (noinst_HEADERS): noinst the -private.
3997 2005-11-21 Michael Smith <msmith@fluendo.com>
4000 * gst/gstregistry.h:
4001 Remove unimplemented declarations for which we can see no sensible
4004 2005-11-21 Andy Wingo <wingo@pobox.com>
4006 * gst/gst.h: Include glib-compat.h.
4008 * gst/glib-compat.h: Add G_GNUC_NULL_TERMINATED.
4010 * gst/glib-compat.c: Include the public and the private header.
4012 * gst/glib-compat-private.h: Copied here from glib-compat.h.
4016 * gst/gstregistryxml.c: s/glib-compat/glib-compat-private/.
4018 * check/gst/gstevent.c (create_custom_events): Check that
4019 FLUSH_STOP is serialized.
4021 * check/elements/identity.c (event_func):
4022 * check/elements/fakesrc.c (event_func): No stream lock, the core
4025 * gst/base/gstbasetransform.c (gst_base_transform_event): No more
4026 stream lock taking, yay.
4028 * gst/gstevent.h (GST_EVENT_FLUSH_STOP): Marked as serialized to
4029 ensure that core takes the stream lock.
4031 * gst/base/gstbasesrc.c (gst_base_src_do_seek): Update for stream
4034 * gst/base/gstbasesink.c (gst_base_sink_event): No need to take
4035 the stream lock for EOS, NEWSEGMENT, or FLUSH_STOP, the core does
4036 it already. For the flush start we do take it though so we get the
4037 right preroll state change messages.
4039 * gst/gstqueue.c (gst_queue_sink_activate_push): No need to take
4040 the stream lock here, the core does it for us.
4042 * gst/gstpad.h (GST_PAD_GET_STREAM_LOCK): Renamed from
4043 GST_STREAM_GET_LOCK.
4044 (GST_PAD_STREAM_LOCK, GST_PAD_STREAM_TRYLOCK)
4045 (GST_PAD_STREAM_UNLOCK, GST_PAD_STREAM_UNLOCK_FULL)
4046 (GST_PAD_STREAM_LOCK_FULL): Renamed from GST_STREAM_*.
4047 (GST_PAD_GET_PREROLL_LOCK): Renamed from GST_PREROLL_GET_LOCK.
4048 (GST_PAD_PREROLL_LOCK, GST_PAD_PREROLL_TRYLOCK)
4049 (GST_PAD_PREROLL_UNLOCK): Renamed from GST_PREROLL_*.
4051 * gst/gstpad.c: Update for stream lock name change.
4053 * gst/base/gstbasesink.c: Update for preroll lock name change.
4055 2005-11-21 Wim Taymans <wim@fluendo.com>
4057 * gst/gstclock.c: (gst_clock_init), (gst_clock_set_master),
4058 (gst_clock_get_master):
4060 * gst/gstsystemclock.c: (gst_system_clock_init):
4061 Convert Clock flags to object flags.
4062 Added methods to manage master/slave clocks.
4064 2005-11-21 Wim Taymans <wim@fluendo.com>
4066 * check/gst/gstsegment.c: (GST_START_TEST):
4067 * docs/design/part-TODO.txt:
4068 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
4069 (gst_base_sink_event), (gst_base_sink_do_sync),
4070 (gst_base_sink_activate_pull), (gst_base_sink_get_position),
4071 (gst_base_sink_query), (gst_base_sink_change_state):
4072 * gst/base/gstbasesink.h:
4073 * gst/base/gstbasesrc.c: (gst_base_src_init), (gst_base_src_query),
4074 (gst_base_src_default_newsegment),
4075 (gst_base_src_configure_segment), (gst_base_src_do_seek),
4076 (gst_base_src_get_range), (gst_base_src_loop),
4077 (gst_base_src_change_state):
4078 * gst/base/gstbasesrc.h:
4079 * gst/base/gstbasetransform.c:
4080 (gst_base_transform_prepare_output_buf),
4081 (gst_base_transform_event), (gst_base_transform_change_state):
4082 * gst/base/gstbasetransform.h:
4083 * gst/base/gstcollectpads.c: (gst_collect_pads_add_pad),
4084 (gst_collect_pads_event):
4085 * gst/base/gstcollectpads.h:
4086 * gst/elements/gstfakesrc.c: (gst_fake_src_init),
4087 (gst_fake_src_create):
4088 * gst/elements/gstfakesrc.h:
4089 * gst/elements/gstidentity.c: (gst_identity_transform_ip):
4090 * gst/gstsegment.c: (gst_segment_init), (gst_segment_set_duration),
4091 (gst_segment_set_last_stop), (gst_segment_set_seek),
4092 (gst_segment_set_newsegment), (gst_segment_to_stream_time),
4093 (gst_segment_to_running_time), (gst_segment_clip):
4095 More segment updates, replace code in plugins with segment
4098 2005-11-21 Jan Schmidt <thaytan@mad.scientist.com>
4100 * gst/elements/gstfdsrc.c: (gst_fdsrc_uri_set_uri):
4101 Don't ignore sscanf results
4103 2005-11-21 Andy Wingo <wingo@pobox.com>
4105 * gst/gstpad.h (GST_IS_PAD_FAST): Removed.
4108 * *.c: Ran scripts/update-macros. Oh yes.
4110 * gst/gstobject.h (GST_OBJECT_GET_LOCK, GST_OBJECT_LOCK)
4111 (GST_OBJECT_TRYLOCK, GST_OBJECT_UNLOCK): Renamed from
4114 * scripts/update-macros: New script. Run it on your files to
4115 change GST_LOCK to GST_OBJECT_LOCK, and the same for UNLOCK as
4118 2005-11-21 Stefan Kost <ensonic@users.sf.net>
4120 * docs/gst/Makefile.am:
4121 * docs/gst/gstreamer-docs.sgml:
4122 * docs/gst/gstreamer-sections.txt:
4123 * docs/gst/gstreamer.types:
4125 more docs fixes, add new api to the docs
4127 2005-11-21 Andy Wingo <wingo@pobox.com>
4129 * gst/gstbin.c (gst_bin_remove_func): Wim claims I can remove this
4130 state_broadcast call.
4132 * gst/gstsegment.c (gst_segment_init): Initialize abs_rate.
4134 2005-11-21 Julien MOUTTE <julien@moutte.net>
4136 * gst/gstvalue.c: (gst_value_intersect_array): Fix wrong
4137 function calls for arrays.
4139 2005-11-21 Stefan Kost <ensonic@users.sf.net>
4141 * docs/random/ensonic/media-device-daemon.txt:
4142 wild idea, can this be done?
4143 * docs/gst/gstreamer-sections.txt:
4148 * gst/gstpluginfeature.c:
4152 doc fixes and additions
4154 2005-11-21 Andy Wingo <wingo@pobox.com>
4156 * gst/base/gstbasesrc.c (GST_LIVE_BROADCAST, GST_LIVE_SIGNAL)
4157 (GST_LIVE_TIMED_WAIT, GST_LIVE_WAIT, GST_LIVE_GET_COND)
4158 (GST_LIVE_UNLOCK, GST_LIVE_TRYLOCK, GST_LIVE_LOCK)
4159 (GST_LIVE_GET_LOCK): Moved here from gstbasesrc.h. They are
4160 private to the basesrc implementation.
4162 * gst/gstpad.c (gst_pad_send_event): Doc more. Take stream lock on
4163 behalf of event function if necessary. It should no longer be
4164 necessary to take the stream lock in pad's event functions. Fixes
4167 2005-11-21 Jan Schmidt <thaytan@mad.scientist.com>
4168 * docs/gst/gstreamer-sections.txt:
4169 * gst/gststructure.c: (gst_structure_fixate_field_nearest_int),
4170 (gst_structure_fixate_field_nearest_double),
4171 (gst_structure_fixate_field_boolean):
4172 * gst/gststructure.h:
4173 * win32/common/libgstreamer.def:
4174 * win32/gstreamer.def:
4176 Rename gst_caps_structure_fixate_* to gst_structure_fixate_*
4179 2005-11-21 Jan Schmidt <thaytan@mad.scientist.com>
4181 * gst/elements/gstfdsrc.c: (_do_init), (gst_fdsrc_class_init),
4182 (gst_fdsrc_init), (gst_fdsrc_dispose), (gst_fdsrc_set_property),
4183 (gst_fdsrc_uri_get_type), (gst_fdsrc_uri_get_protocols),
4184 (gst_fdsrc_uri_get_uri), (gst_fdsrc_uri_set_uri),
4185 (gst_fdsrc_uri_handler_init):
4186 * gst/elements/gstfdsrc.h:
4187 Port fd:// URI handler from 0.8 to fdsrc
4189 2005-11-21 Tim-Philipp Müller <tim at centricular dot net>
4191 * gst/gstvalue.c: (gst_value_transform_fourcc_string),
4192 (gst_value_serialize_fourcc):
4194 Drop leading '%' from GST_FOURCC_FORMAT, thus making it
4195 consistent with our other format defines (#320324).
4197 2005-11-21 Tim-Philipp Müller <tim at centricular dot net>
4199 * gst/gstvalue.c: (gst_value_is_fixed):
4200 Revert previous commit. Value lists are by definition
4201 not fixed, as they are a list of possible values.
4203 2005-11-21 Andy Wingo <wingo@pobox.com>
4205 * gst/gstevent.h (GST_EVENT_FILLER): Removed. Can be added back
4206 during the stable series if we need it. Fixes #319178.
4208 * gst/gstevent.c (gst_event_new_filler): Removed.
4210 * check/gst/gstevent.c: Update comment about filler events.
4212 2005-11-21 Tim-Philipp Müller <tim at centricular dot net>
4214 * gst/gstvalue.c: (gst_value_is_fixed):
4215 Should handle both value arrays and value lists.
4217 2005-11-21 Andy Wingo <wingo@pobox.com>
4219 patch by: Alessandro Dessina <alessandro nnva org>
4221 * gst/gstvalue.c (gst_value_is_fixed): Use gst_value_array
4222 functions to access arrays. Fixes #321962.
4224 2005-11-21 Tim-Philipp Müller <tim at centricular dot net>
4226 * docs/gst/gstreamer.types:
4227 gst_collectpads_get_type => gst_collect_pads_get_type.
4229 * gst/base/gstbasetransform.c:
4230 Remove unused SIGNAL_HANDOFF enum.
4232 2005-11-21 Andy Wingo <wingo@pobox.com>
4234 * gst/gstevent.h (GstEventTypeFlags): New data type, the flags of
4235 the event type (upstream, downstream, serialized). Renamed
4236 GST_EVDIR_* and GST_EVSER to GST_EVENT_TYPE_*.
4237 (GstEventType): Use GstEventTypeFlags. Rename CUSTOM_UP to
4238 CUSTOM_UPSTREAM, CUSTOM_DS to CUSTOM_DOWNSTREAM, etc.
4240 * gst/gstevent.c: Update for new CUSTOM event names.
4242 * check/gst/gstevent.c: Update check for new CUSTOM event names.
4245 * gst/gstevent.c (gst_event_type_get_flags): New function. Fixes
4248 2005-11-21 Tim-Philipp Müller <tim at centricular dot net>
4250 * docs/gst/gstreamer-sections.txt:
4251 * win32/common/libgstbase.def:
4252 * win32/libgstbase.def:
4253 * gst/base/gstcollectpads.c: (gst_collect_pads_base_init),
4254 (gst_collect_pads_class_init), (gst_collect_pads_init),
4255 (gst_collect_pads_finalize), (gst_collect_pads_new),
4256 (gst_collect_pads_set_function), (gst_collect_pads_add_pad),
4257 (gst_collect_pads_remove_pad), (gst_collect_pads_is_active),
4258 (gst_collect_pads_collect), (gst_collect_pads_collect_range),
4259 (gst_collect_pads_start), (gst_collect_pads_stop),
4260 (gst_collect_pads_peek), (gst_collect_pads_pop),
4261 (gst_collect_pads_available), (gst_collect_pads_read),
4262 (gst_collect_pads_flush), (gst_collect_pads_event),
4263 (gst_collect_pads_chain):
4264 * gst/base/gstcollectpads.h:
4265 Rename gst_collecpads_foo() => gst_collect_pads_foo(). Document
4266 unimplemented functions as unimplemented. Add padding to
4267 GstCollectData. (#320766, #320423)
4269 2005-11-21 Tim-Philipp Müller <tim at centricular dot net>
4272 Improve docs for DURATION message (usage of duration parameter)
4275 2005-11-20 Wim Taymans <wim@fluendo.com>
4277 * check/Makefile.am:
4278 * check/gst/gstsegment.c: (GST_START_TEST), (gstevents_suite),
4282 * gst/gstsegment.c: (gst_segment_init), (gst_segment_set_duration),
4283 (gst_segment_set_seek), (gst_segment_set_newsegment),
4284 (gst_segment_to_stream_time), (gst_segment_to_running_time),
4287 Added segment helper structure and methods. Not fully implemented
4289 Added segment check.
4291 2005-11-20 Jan Schmidt <thaytan@mad.scientist.com>
4293 * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
4294 Add a deserialisation test for fractions
4295 * examples/metadata/read-metadata.c: (message_loop),
4296 (make_pipeline), (main):
4297 Fix up metadata reading sample.
4298 * gst/base/gstbasesink.c: (gst_base_sink_do_sync):
4300 * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
4301 Don't try and fixate empty caps
4302 * gst/gst_private.h:
4303 Wrap in G_BEGIN_DECLS/G_END_DECLS
4304 * gst/gstvalue.c: (gst_value_collect_fraction),
4305 (gst_value_set_fraction), (gst_value_get_fraction_denominator),
4306 (gst_value_transform_string_fraction),
4307 (gst_value_compare_fraction):
4308 Add some extra guards to ensure that we don't end up
4309 with an invalid denominator of 0 in a gstfraction and
4310 that fractions always get reduced.
4312 2005-11-20 Wim Taymans <wim@fluendo.com>
4314 * docs/gst/gstreamer-sections.txt:
4325 2005-11-20 Wim Taymans <wim@fluendo.com>
4327 * docs/design/part-TODO.txt:
4329 Make a proper enum of the flag.
4331 2005-11-19 Wim Taymans <wim@fluendo.com>
4333 * docs/design/part-TODO.txt:
4334 * gst/gstformat.c: (_gst_format_initialize), (gst_format_get_name),
4335 (gst_format_to_quark), (gst_format_register):
4337 * gst/gstquery.c: (_gst_query_initialize),
4338 (gst_query_type_get_name), (gst_query_type_to_quark),
4339 (gst_query_type_register):
4341 Add type to quark and type to string conversions.
4343 2005-11-19 Andy Wingo <wingo@pobox.com>
4345 * gst/gstbuffer.h (GST_BUFFER_FLAG_ORIGINAL): Removed. Fixes
4348 2005-11-19 Wim Taymans <wim@fluendo.com>
4350 * docs/design/part-TODO.txt:
4351 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_provide_clock_func),
4352 (gst_bin_add_func), (gst_bin_remove_func), (bin_bus_handler),
4353 (gst_bin_handle_message_func):
4355 Make message handling overridable.
4357 2005-11-19 Andy Wingo <wingo@pobox.com>
4359 * gst/gstpad.h (GST_PAD_IS_USABLE): Removed. Fixes #321235.
4362 * gst/gstclock.c (GstClock, GstClockClass): Change resolution to
4364 (gst_clock_set_resolution, gst_clock_get_resolution): Resolution
4365 is a GstClockTime. Fixes #321710.
4367 * gst/gstclock.h (GstClock): Remove offset property. Add
4368 internal_calibration and external_calibration. Fix padding. Pad
4369 also by GstClockTime so we don't run into problems.
4371 * gst/gstclock.c (gst_clock_set_rate_offset): Remove.
4372 (gst_clock_get_rate_offset): Remove.
4373 (gst_clock_set_time_adjust): Remove. Fixes #321712.
4376 * gst/gstutils.c (g_static_rec_cond_wait)
4377 (g_static_rec_cond_timed_wait): Removed, no longer needed.
4379 * gst/gstbin.c: Remove terrible continue_state prototype.
4381 * gst/gstelement.h (gst_element_continue_state): Make public.
4384 * gst/gstelement.c (gst_element_commit_state): Removed, replaced
4385 by continue_state. Fixes #319389.
4387 * gst/gstindex.h (GstIndexFilter): Actually pass on the user_data.
4388 Really fixes #168438. However I don't see anywhere where the
4389 filter function is called... stupid GStreamer...
4391 * gst/gstindex.h (GstIndex): Add field for user_data_destroy. We
4392 don't have a dispose function, so it won't get called when the
4393 object is unreffed, but oh well!
4395 * gst/gstindex.c (gst_index_set_filter_full): New API function,
4396 allows a destroy function to be set so user_data can be freed.
4398 (gst_index_set_filter): Call gst_index_set_filter_full.
4400 * check/gst/gstvalue.c (test_string): Add test for bug #165650.
4402 * gst/gstvalue.c (gst_string_wrap): Trying to serialize a NULL
4403 string should produce an error, given the lack of a way to
4404 represent NULL strings. Fixes #165650.
4407 * gst/gstvalue.c (gst_value_array_append_value)
4408 (gst_value_array_prepend_value, gst_value_array_get_size)
4409 (gst_value_array_get_value): New API, copied from
4410 gst_value_list_*, only operates on arrays.
4411 (gst_value_list_append_value, gst_value_list_prepend_value)
4412 (gst_value_list_concat, gst_value_list_get_size)
4413 (gst_value_list_get_value): Only operate on lists. Fixes #156633.
4415 * gst/gstvalue.c (gst_value_init_list_or_array): Renamed from
4416 init_list, because it works on both.
4417 (copy_garray_of_gstvalue): Renamed from gst_value_list_copy_array.
4418 (gst_value_copy_list_or_array): Renamed from copy_list.
4419 (gst_value_free_list_or_array): Renamed from free_list.
4420 (gst_value_collect_list_or_array): Renamed from collect_list.
4421 (gst_value_lcopy_list_or_array): Renamed from lcopy_list.
4422 (gst_value_list_or_array_peek_pointer): Renamed from
4424 (_gst_value_array_value_table, _gst_value_list_value_table):
4425 Update value table functions.
4426 (gst_value_compare_list_or_array): Renamed from compare_list.
4428 * gsttaglist.h: Whoops, foreach function returns void. Also fix
4432 * gst/gsttaglist.h (gst_tag_list_foreach): Operates on a const
4433 GstTagList*. Fixes #143472.
4435 * gst/gststructure.h: Clarify what the foreach/map functions can
4436 or can't do to their arguments.
4438 2005-11-18 Wim Taymans <wim@fluendo.com>
4440 * gst/gstclock.c: (gst_clock_set_calibration),
4441 (gst_clock_get_calibration):
4443 Calibration can be set with internal time equal to current
4446 2005-11-18 Thomas Vander Stichele <thomas at apestaart dot org>
4452 2005-11-18 Andy Wingo <wingo@pobox.com>
4455 * pkgconfig/gstreamer-net.pc.in:
4456 * pkgconfig/gstreamer-net-uninstalled.pc.in:
4457 * pkgconfig/Makefile.am: Add net pkgconfig files.
4459 2005-11-18 Stefan Kost <ensonic@users.sf.net>
4462 * gst/gstghostpad.c:
4468 2005-11-18 Andy Wingo <wingo@pobox.com>
4470 * gst/net/gstnetclientclock.c: Turn off debugging.
4472 * check/net/gstnetclientclock.c (test_functioning): Assert that the
4473 times connverge somewhat. Can't make a real test.
4475 * gst/net/gstnetclientclock.c (do_linear_regression): Use all
4476 integer arithmetic. Return the minimum of the domain, which can be
4477 set as "internal" for gst_clock_set_calibration.
4478 (gst_net_client_clock_observe_times): Call _set_calibration.
4479 (gst_net_client_clock_new): Call _set_calibration instead of
4482 * check/net/gstnetclientclock.c (test_functioning): Use the right
4486 * gst/gstclock.c (gst_clock_get_calibration)
4487 (gst_clock_set_calibration): New functions, obsolete the ones I
4488 added yesterday. Doh. Precision issues mean we have to extrapolate
4489 from a point in the more recent past than 1970.
4490 (gst_clock_get_rate_offset, gst_clock_set_rate_offset): Mark as
4492 (gst_clock_adjust_unlocked): Use the right calibration data.
4494 2005-11-18 Edward Hervey <edward@fluendo.com>
4496 * gst/base/gstbasesink.c: (gst_base_sink_change_state):
4497 Also reset the ->current_* values in READY->PAUSED
4499 2005-11-18 Andy Wingo <wingo@pobox.com>
4501 * gst/net/gstnetclientclock.c (gst_net_client_clock_thread):
4502 Whoops, check the right fd. Also add some debugging.
4503 (gst_net_client_clock_observe_times): Adjust for int64 offset.
4504 (do_linear_regression): Add a crapload of debugging. Subtract off
4505 the minimum values from the input series to discard unneeded bits.
4506 Use only int arithmetic. There is still double arithmetic when
4507 calculating the intercept that needs fixing. Return boolean to
4508 indicate success; FALSE would mean the domain or range is too
4509 great. Still needs fixes.
4511 2005-11-18 Wim Taymans <wim@fluendo.com>
4513 * gst/base/gstbasesink.c: (gst_base_sink_get_position):
4514 For the current position in stream time, we need to subtract
4517 * gst/gstsystemclock.c: (gst_system_clock_async_thread):
4518 Release lock before calling the callback function of async
4521 2005-11-18 Andy Wingo <wingo@pobox.com>
4523 * gst/net/gstnetclientclock.c (gst_net_client_clock_class_init):
4524 Port goes all the way to MAXUINT16.
4526 * gst/net/gstnettimeprovider.c: Make the port range the same as
4527 for the kernel: 0 assigns, otherwise ports are less than
4530 * check/net/gstnettimeprovider.c: Adapt for 0 == kernel assigns
4533 * check/net/gstnetclientclock.c (test_functioning): Add the start
4536 2005-11-18 Wim Taymans <wim@fluendo.com>
4538 * gst/gstbin.c: (gst_bin_provide_clock_func), (gst_bin_add_func),
4539 (gst_bin_remove_func), (bin_bus_handler):
4541 Removing a clock provider from a bin, triggers a clock lost message
4542 so that a new clock will be selected.
4543 Adding a clock to a bin triggers a clock provider message.
4544 Make sure we reselect a clock when we received a clock lost message.
4545 Keep a reference to the element that provided the clock.
4547 2005-11-18 Andy Wingo <wingo@pobox.com>
4549 * gst/net/gstnetclientclock.c (gst_net_client_clock_new): Adjust
4550 the clock initially so it produces values around the base time.
4551 (gst_net_client_clock_class_init): Typo fix.
4552 (gst_net_client_clock_thread): Add note on when the socket gets
4555 2005-11-17 Wim Taymans <wim@fluendo.com>
4557 * gst/net/gstnetclientclock.c: (gst_net_client_clock_finalize):
4558 Free remote and local time arrays.
4560 2005-11-17 Wim Taymans <wim@fluendo.com>
4562 * gst/net/gstnetclientclock.c: (do_linear_regression),
4563 (gst_net_client_clock_do_select), (gst_net_client_clock_thread):
4564 Fix compilation, uninitialized vars and a forgotten continue.
4566 2005-11-17 Andy Wingo <wingo@pobox.com>
4568 * check/Makefile.am (check_PROGRAMS):
4569 * check/net/gstnetclientclock.c: Add a most minimal test for the
4570 net client clock. More to come later.
4573 * gst/net/Makefile.am: Add netclientclock.
4575 * gst/net/gstnetclientclock.h:
4576 * gst/net/gstnetclientclock.c: New files, implement an untested
4577 GstClock that takes its time from a network time provider.
4578 Implements the algorithm in network-clock.scm.
4580 * tests/network-clock.scm (*window-size*): Rename from
4582 * tests/network-clock.scm (network-time):
4583 * tests/network-clock-utils.scm (q-push): Update callers.
4585 2005-11-17 Wim Taymans <wim@fluendo.com>
4587 * gst/gstbin.c: (gst_bin_provide_clock_func),
4588 (gst_bin_sort_iterator_new):
4589 And unref the child too..
4591 2005-11-17 Wim Taymans <wim@fluendo.com>
4593 * gst/gstbin.c: (gst_bin_dispose), (gst_bin_provide_clock_func),
4594 (gst_bin_sort_iterator_new), (gst_bin_iterate_sorted):
4595 Refactor the sort iterator so it can be used while holding the
4597 Make clock selection select a clock closest to the source.
4599 2005-11-17 Michael Smith <msmith@fluendo.com>
4601 * gst/gstclock.c: (gst_clock_init), (gst_clock_adjust_unlocked),
4602 (gst_clock_set_rate_offset), (gst_clock_get_rate_offset):
4604 Anonymous structs are a gcc (and some other compilers) extension, so
4605 don't use them. Since this is only for ABI-compatibility, and our
4606 API/ABI freeze is over in a few days, this whole thing will only
4607 last a few days, so don't bother trying to think up a meaningful
4608 name for the struct.
4610 2005-11-17 Andy Wingo <wingo@pobox.com>
4612 * gst/gstclock.h (GstClock): Add rate and offset properties,
4613 preserving ABI stability. Add rate/offset accessors. Will file bug
4614 for the freeze break.
4616 * gst/gstclock.c (gst_clock_adjust_unlocked): Implement using rate
4617 and offset, trying to keep precision and avoiding
4619 (gst_clock_set_rate_offset, gst_clock_get_rate_offset): New
4620 functions. Make gst_clock_set_time_adjust obsolete.
4621 (gst_clock_set_time_adjust): Note that this function is obsolete.
4624 * gst/base/gstbasetransform.h: Make the ABI-stability hack
4625 greppable by using GST_PADDING-1+1.
4627 2005-11-17 Torsten Schoenfeld <kaffeetisch at gmx dot net>
4629 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
4631 * gst/gstmessage.c: (gst_message_parse_clock_lost):
4632 Assertion should check for CLOCK_LOST, not NEW_CLOCK (#321648).
4634 * gst/gstpadtemplate.h:
4635 * gst/gstpluginfeature.h:
4636 Don't use c++ style comments in headers (#321638).
4638 2005-11-16 Andy Wingo <wingo@pobox.com>
4640 * gst/net/gstnettimepacket.c (gst_net_time_packet_send): Free
4643 * check/net/gstnettimeprovider.c: Check to see that the time
4644 provider actually provides times. Works, yo!
4646 2005-11-16 Wim Taymans <wim@fluendo.com>
4648 * check/Makefile.am:
4651 * check/elements/fakesrc.c: (GST_START_TEST):
4652 Set element to NULL before disposing it.
4654 2005-11-16 Andy Wingo <wingo@pobox.com>
4656 * gst/net/Makefile.am:
4658 * gst/net/gstnettimeprovider.c:
4659 * gst/net/gstnettimeprovider.h: Use the timepacket stuff in the
4660 provider, include it from gstnet.h, and add it to the build.
4662 * gst/net/gstnettimepacket.h:
4663 * gst/net/gstnettimepacket.c: New files, abstracts out the packet
4664 sending and receiving.
4666 2005-11-16 Wim Taymans <wim@fluendo.com>
4668 * check/Makefile.am:
4669 Enable valgrind check.
4671 * gst/elements/gstfakesrc.c: (gst_fake_src_alloc_parent),
4672 (gst_fake_src_alloc_buffer):
4675 2005-11-16 Wim Taymans <wim@fluendo.com>
4677 * gst/net/gstnettimeprovider.c: (gst_net_time_provider_finalize):
4678 Call parent finalize too.
4680 2005-11-16 Wim Taymans <wim@fluendo.com>
4682 * check/Makefile.am:
4683 Enable valgrind check that should work fine now.
4685 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init):
4686 * gst/gstqueue.c: (gst_queue_init):
4687 Fix memleaks in pad allocation.
4689 2005-11-16 Andy Wingo <wingo@pobox.com>
4691 * gst/net/Makefile.am:
4692 * gst/net/gstnet.h: New part of core to hold network elements and
4693 objects. Put in core because it exposes API that applications want
4694 to use. The library is named libgstnet-tempname right now because
4695 of the existing libgstnet in gst-plugins-base. Solution is
4696 probably to rename the one in plugins-base; will file a bug for
4699 * gst/net/gstnettimeprovider.c:
4700 * gst/net/gstnettimeprovider.h: New object to export a GstClock's
4701 get_time call over the network.
4704 * gst/Makefile.am (lib_LTLIBRARIES): Add gstnet to the build.
4706 * check/Makefile.am:
4707 * check/net/gstnettimeprovider.c: A most minimal test suite. Will
4708 get additions shortly.
4710 2005-11-16 Thomas Vander Stichele <thomas at apestaart dot org>
4712 * gst/gstpad.c: (gst_pad_new_from_static_template):
4714 add gst_pad_new_from_static_template functions
4715 * gst/check/gstcheck.c: (gst_check_setup_src_pad),
4716 (gst_check_setup_sink_pad):
4717 * gst/elements/gsttee.c: (gst_tee_init):
4720 2005-11-16 Wim Taymans <wim@fluendo.com>
4722 * gst/gstpad.c: (gst_pad_pause_task):
4723 Removed warning, it's not really an error either.
4725 2005-11-16 Wim Taymans <wim@fluendo.com>
4727 * gst/base/gstbasetransform.c:
4728 (gst_base_transform_prepare_output_buf),
4729 (gst_base_transform_event):
4730 Check if the caps are NULL, this can happen if the element
4731 is shutting down and the pad caps are set to NULL.
4733 2005-11-16 Thomas Vander Stichele <thomas at apestaart dot org>
4735 * gst/elements/gsttee.c: (gst_tee_init):
4736 fix pad template leak in tee
4738 2005-11-16 Thomas Vander Stichele <thomas at apestaart dot org>
4740 * gst/glib-compat.c: (g_value_dup_gst_object):
4741 * gst/glib-compat.h:
4742 * gst/gstpad.c: (gst_pad_set_property):
4743 use gst_object_ref when setting the pad template; this will
4744 trigger the pad template leaks on GLib 2.6 and the slaves
4746 2005-11-16 Thomas Vander Stichele <thomas at apestaart dot org>
4748 * gst/glib-compat.c: (gst_flags_get_first_value):
4749 * gst/glib-compat.h:
4750 * gst/gstregistryxml.c:
4751 remove functions copied from GLib 2.6
4753 2005-11-16 Michael Smith <msmith@fluendo.com>
4756 Don't link against VALGRIND_LIBS. That was always the wrong thing to
4757 do, but only breaks with newer valgrind versions. We're not a
4758 valgrind tool, we have no link-time dependencies on libcoregrind.
4760 2005-11-16 Thomas Vander Stichele <thomas at apestaart dot org>
4762 * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
4767 2005-11-16 Thomas Vander Stichele <thomas at apestaart dot org>
4769 * gst/base/gstbasesrc.c: (gst_base_src_init):
4770 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init):
4771 * gst/gstqueue.c: (gst_queue_init):
4772 * gst/gstregistryxml.c: (load_feature):
4773 Revert all these unrefs, they don't even pass make check !
4775 2005-11-15 Johan Dahlin <johan@gnome.org>
4777 * gst/base/gstbasesrc.c: (gst_base_src_init):
4778 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init):
4779 * gst/gstqueue.c: (gst_queue_init):
4780 Free pad templates, fixes a couple of leaks.
4782 2005-11-15 Daniel Fischer <dan at f3c dot com>
4784 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
4786 * gst/gstpad.c: (gst_pad_get_property):
4787 GST_PAD_PAD_TEMPLATE(pad) gets the pad template, while
4788 GST_PAD_TEMPLATE(pad) does a cast. We want the former here.
4791 2005-11-15 Wim Taymans <wim@fluendo.com>
4796 2005-11-15 Andy Wingo <wingo@pobox.com>
4798 * gst/gstelement.c (gst_element_set_base_time): Add debugging.
4800 * gst/gstpipeline.c (gst_pipeline_set_new_stream_time): Document
4801 using GST_CLOCK_TIME_NONE to disable base time management.
4802 (do_pipeline_seek, gst_pipeline_change_state): Don't reset stream
4803 time if it was NONE before.
4804 (gst_pipeline_change_state): Only munge the base time if
4805 stream_time != GST_CLOCK_TIME_NONE.
4807 * check/gst/gstpipeline.c (test_base_time): Punt around the
4808 problem of the probe not being called, because that's not the
4809 issue I'm looking at. Add a check that setting stream_time to NONE
4810 disables base time management.
4812 2005-11-15 Wim Taymans <wim@fluendo.com>
4814 * gst/base/gstbasesink.c: (gst_base_sink_change_state):
4815 segment_stop == -1 at startup.
4817 * gst/base/gstbasetransform.c: (gst_base_transform_event),
4818 (gst_base_transform_change_state):
4819 Init segment values at start.
4821 2005-11-15 Wim Taymans <wim@fluendo.com>
4823 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
4824 0 segment values are 0 in any format.
4826 * gst/base/gstbasetransform.c: (gst_base_transform_event):
4827 * gst/base/gstbasetransform.h:
4828 Parse newsegment correctly in basetransform
4830 * gst/elements/gstidentity.c: (gst_identity_transform_ip):
4831 Sync to clock using updated segment values.
4833 2005-11-15 Andy Wingo <wingo@pobox.com>
4835 * check/gst/gstpipeline.c (test_base_time): Add check that the
4836 base time and stream time are reset correctly.
4838 2005-11-15 Wim Taymans <wim@fluendo.com>
4840 * docs/design/part-TODO.txt:
4841 Some more TODO items.
4843 2005-11-15 Andy Wingo <wingo@pobox.com>
4845 * gst/elements/gstfakesrc.c (gst_fake_src_create): It's not an
4846 error if the user selected "no clock" as the clocking method.
4848 * check/gst/gstpipeline.c (test_base_time): New test for buffer
4849 timestamps with live capture.
4851 * gst/elements/gstfakesrc.c (gst_fake_src_create): If the datarate
4852 is 0 but we are a live source, timestamp the buffers using the
4855 2005-11-14 Stefan Kost <ensonic@users.sf.net>
4857 * docs/gst/gstreamer-sections.txt:
4859 * gst/gstghostpad.c:
4864 2005-11-14 Wim Taymans <wim@fluendo.com>
4867 add suppressions from Wim's Debian machine
4869 2005-11-14 Thomas Vander Stichele <thomas at apestaart dot org>
4872 add suppressions from Andy's AMD64 Ubuntu machine
4874 2005-11-14 Andy Wingo <wingo@pobox.com>
4876 * gst/gstpad.c (gst_pad_set_active): Change docs; parent's
4877 STATE_LOCK not necessary. Fixes #311489.
4879 * gst/gsterror.c (FILE_A_BUG): Be polite *and* helpful. Fixes
4882 * gst/gstindex.c (gst_index_add_object): Note in the docs that
4883 this function is not implemented.
4885 2005-11-14 Julien MOUTTE <julien@moutte.net>
4887 * gst/base/gstbasetransform.c:
4888 (gst_base_transform_prepare_output_buf):
4889 Ref the source pad caps while we need them.
4892 2005-11-11 Wim Taymans <wim@fluendo.com>
4894 * docs/gst/gstreamer-sections.txt:
4895 Added some docs for GstCollectData.
4897 * gst/base/gstadapter.c:
4898 Some small code example fix.
4900 * gst/base/gstcollectpads.c:
4901 * gst/base/gstcollectpads.h:
4904 2005-11-11 Thomas Vander Stichele <thomas at apestaart dot org>
4906 * configure.ac: back to HEAD
4908 === release 0.9.5 ===
4910 2005-11-11 Thomas Vander Stichele <thomas at apestaart dot org>
4913 releasing 0.9.5, "Bike Lunch Day"
4915 2005-11-11 Wim Taymans <wim@fluendo.com>
4917 * gst/gstbuffer.c: (_gst_buffer_copy):
4920 * gst/gstcaps.c: (gst_caps_is_equal):
4922 Make _is_equal fast in the trivial cases.
4924 * gst/gstminiobject.c:
4925 * gst/gstminiobject.h:
4926 More docs. Spifify .h file.
4931 2005-11-11 Wim Taymans <wim@fluendo.com>
4933 * gst/base/gstbasetransform.c:
4934 (gst_base_transform_prepare_output_buf),
4935 (gst_base_transform_handle_buffer):
4937 If we're processing a buffer and need to allocate an output
4938 buffer, we cannot accept a format change. If we did get a
4939 format change, we have to alloc a buffer ourselves of the
4942 2005-11-11 Wim Taymans <wim@fluendo.com>
4944 * gst/gstpad.c: (gst_pad_get_caps), (gst_pad_peer_get_caps):
4945 While checking the flag for reentrancy in the gstcaps function
4946 is nice to detect recursive invocations, it also makes it
4947 impossible to call getcaps from multiple threads, which must be
4948 possible. So, checking for recursive calls has to go.
4950 2005-11-11 Michael Smith <msmith@fluendo.com>
4952 * gst/base/gstbasesink.c: (gst_base_sink_do_sync):
4953 Don't sync on buffers that fall partially outside our current
4954 segment. Prevents an assertion failure/abort playing some files.
4956 2005-11-10 Andy Wingo <wingo@pobox.com>
4958 * check/gst/gstbin.c (test_message_state_changed_children): Style
4961 * gst/gstbus.c (poll_destroy, poll_func, gst_bus_poll): Implement
4962 gst_bus_poll with the signal watch. Ensures that poll and a signal
4963 watch see the same messages.
4965 * check/gst/gstbus.c (test_watch_with_poll): New test, checks that
4966 a poll and a watch at the same time get the same messages.
4968 2005-11-10 Thomas Vander Stichele <thomas at apestaart dot org>
4970 * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps):
4971 * gst/gstcaps.c: (gst_caps_intersect):
4972 Don't call gst_caps_do_simplify - it doesn't respect order of caps
4973 and it's not needed.
4975 2005-11-10 Wim Taymans <wim@fluendo.com>
4977 * docs/design/part-TODO.txt:
4980 2005-11-10 Wim Taymans <wim@fluendo.com>
4982 * gst/base/gstbasesink.c: (gst_base_sink_do_sync):
4983 * gst/base/gstbasesrc.c: (gst_base_src_wait),
4984 (gst_base_src_do_sync), (gst_base_src_get_range):
4985 Implement clock sync in base class.
4987 2005-11-10 Thomas Vander Stichele <thomas at apestaart dot org>
4989 patch by: Tim-Philipp Müller <tim at centricular dot net>
4991 * gst/gststructure.c: (gst_structure_parse_field),
4992 (gst_structure_from_string):
4993 Forward-port a 0.8 patch to handle escaped spaces in structure string,
4994 so that gst_parse_launch() can deal with spaces in filtered link
4995 caps (fixes #164479)
4996 * check/gst/capslist.h:
4997 * check/gst/gststructure.c: (GST_START_TEST):
4998 add unit tests for this change
5000 2005-11-10 Wim Taymans <wim@fluendo.com>
5002 * docs/gst/gstreamer-sections.txt:
5005 Fix docs, move some STATE macros to private.
5007 2005-11-10 Wim Taymans <wim@fluendo.com>
5009 * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
5010 Added check for bug #317341
5014 Some more spiffifying.
5016 * gst/gstghostpad.c: (gst_ghost_pad_do_link):
5017 Call peer linkfunction if we are a source pad. Totally fixes
5021 Update docs, source pads should call the peer linkfunction
5022 so they can atomically perform the pad link.
5024 2005-11-09 Wim Taymans <wim@fluendo.com>
5028 Uber-spiffy-spiffify some more.
5030 2005-11-09 Tim-Philipp Müller <tim at centricular dot net>
5032 * gst/base/gstcollectpads.c: (gst_collectpads_add_pad):
5033 * gst/elements/gstfilesink.c: (gst_file_sink_init):
5034 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init):
5035 * gst/gstghostpad.c: (gst_ghost_pad_set_internal),
5036 (gst_ghost_pad_init), (gst_ghost_pad_new_notarget):
5037 * gst/gstpad.c: (gst_pad_init):
5038 Use GST_DEBUG_FUNCPTR() more extensively.
5040 2005-11-09 Wim Taymans <wim@fluendo.com>
5042 * gst/gstobject.c: (gst_object_class_init):
5044 Documentation fixes.
5046 2005-11-09 Edward Hervey <edward@fluendo.com>
5048 * gst/gsttypefindfactory.c:
5051 2005-11-09 Edward Hervey <edward@fluendo.com>
5053 * gst/base/gsttypefindhelper.c:
5054 * gst/gsttypefind.c:
5055 * gst/gsttypefind.h:
5058 2005-11-09 Wim Taymans <wim@fluendo.com>
5060 * gst/gstiterator.c:
5067 2005-11-09 Wim Taymans <wim@fluendo.com>
5073 2005-11-09 Wim Taymans <wim@fluendo.com>
5075 * docs/gst/gstreamer-sections.txt:
5076 Moved the message async delivery private lock and cond
5077 to the private section.
5083 2005-11-09 Edward Hervey <edward@fluendo.com>
5085 * docs/gst/gstreamer-sections.txt:
5088 Document GstURIHandler
5090 2005-11-09 Wim Taymans <wim@fluendo.com>
5092 * gst/gstiterator.c: (gst_iterator_fold), (gst_iterator_foreach),
5093 (gst_iterator_find_custom):
5094 * gst/gstiterator.h:
5097 2005-11-09 Wim Taymans <wim@fluendo.com>
5100 Document another field.
5102 * gst/gststructure.c:
5103 * gst/gststructure.h:
5106 2005-11-09 Wim Taymans <wim@fluendo.com>
5111 2005-11-09 Wim Taymans <wim@fluendo.com>
5113 * docs/gst/gstreamer-sections.txt:
5114 Added some new macros.
5121 2005-11-09 Wim Taymans <wim@fluendo.com>
5123 * docs/design/part-TODO.txt:
5124 Some more items for the TODO
5130 2005-11-09 Andy Wingo <wingo@pobox.com>
5132 * gst/base/gstbasesink.c: Add the beginning of docs here -- have
5133 to work on something else now tho...
5135 * gst/base/gstadapter.c: More adapter docs.
5137 * gst/elements/gstfilesink.c (gst_file_sink_start)
5138 (gst_file_sink_stop): New functions, replace the state change
5140 (gst_file_sink_class_init): Hook up the start and stop functions.
5141 (gst_file_sink_base_init): Don't set the state change handler any
5142 more. It was a bit ugly too, being set from here...
5143 (gst_file_sink_get_property, gst_file_sink_set_property):
5145 (gst_file_sink_set_location): More robust check that doesn't call
5148 2005-11-08 Tim-Philipp Müller <tim at centricular dot net>
5150 * gst/base/gstbasetransform.c: (gst_base_transform_event):
5151 Hold STREAM_LOCK while pushing newsegment or tag events as well.
5153 2005-11-08 Wim Taymans <wim@fluendo.com>
5155 * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
5156 (gst_base_sink_do_sync), (gst_base_sink_handle_event),
5157 (gst_base_sink_chain), (gst_base_sink_change_state):
5158 * gst/base/gstbasesink.h:
5159 * gst/base/gstbasesrc.h:
5162 Avoid excessive typechecking in macros.
5164 * gst/gstminiobject.c: (gst_mini_object_get_type),
5165 (gst_mini_object_init), (gst_mini_object_new),
5166 (gst_mini_object_free):
5167 * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
5168 (gst_object_finalize):
5169 Remove cruft code, optimize alloc_trace.
5171 2005-11-07 Thomas Vander Stichele <thomas at apestaart dot org>
5173 * docs/faq/gst-uninstalled:
5174 fix up PS1 for systems that try to reset it
5176 2005-11-07 Wim Taymans <wim@fluendo.com>
5178 * gst/base/gstbasesrc.c: (gst_base_src_init),
5179 (gst_base_src_get_range):
5180 Set the segment_end to -1 initially. Fixed typefind.
5182 2005-11-07 Tim-Philipp Müller <tim at centricular dot net>
5184 * gst/base/gstadapter.c:
5185 Debug category should be 'adapter', not 'GstAdapter'.
5187 * gst/base/gstcollectpads.c: (gst_collectpads_base_init),
5188 (gst_collectpads_class_init), (gst_collectpads_init),
5189 (gst_collectpads_peek), (gst_collectpads_pop),
5190 (gst_collectpads_event), (gst_collectpads_chain):
5191 Add debug category and some debugging output. Use boilerplate
5192 macros. Remove some extraneous words from docs.
5194 2005-11-05 Andy Wingo <wingo@pobox.com>
5196 * gst/base/gstpushsrc.c: Shorten by 30% via use of boilerplate
5199 2005-11-04 Stefan Kost <ensonic@users.sf.net>
5201 * docs/gst/gstreamer-sections.txt:
5204 * gst/gstminiobject.h:
5209 2005-11-04 Wim Taymans <wim@fluendo.com>
5211 * gst/base/gstbasesrc.c: (gst_base_src_get_range):
5212 Small update to stop at the configured segment_end
5215 2005-11-04 Stefan Kost <ensonic@users.sf.net>
5217 * gst/gstregistry.c:
5218 * gst/gstregistry.h:
5221 2005-11-04 Edward Hervey <edward@fluendo.com>
5223 * gst/base/gstbasesrc.c: (gst_base_src_get_range):
5224 Check if we are doing a segment seek and have arrived at the
5225 end of that segment.
5227 2005-11-04 Wim Taymans <wim@fluendo.com>
5229 * gst/gstbus.c: (gst_bus_post), (gst_bus_set_sync_handler):
5230 Don't leak a mutex unlock in case of an error.
5235 2005-11-04 Wim Taymans <wim@fluendo.com>
5237 * gst/gstbus.c: (gst_bus_class_init), (gst_bus_init),
5239 Get the context to wake up only once.
5241 2005-11-03 Wim Taymans <wim@fluendo.com>
5243 * check/states/sinks.c: (GST_START_TEST):
5244 Uncomment fixed check.
5246 * docs/design/part-TODO.txt:
5249 * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
5250 (gst_base_sink_handle_object), (gst_base_sink_do_sync),
5251 (gst_base_sink_get_position):
5252 If we are going to PLAYING, post the right pending state
5253 when we post the intermediate paused message.
5255 * gst/gstelement.c: (gst_element_continue_state),
5256 (gst_element_set_state_func), (gst_element_change_state):
5257 Don't post state changes that were between the same state
5260 2005-11-03 Stefan Kost <ensonic@users.sf.net>
5262 * docs/gst/gstreamer-sections.txt:
5265 * gst/gstminiobject.h:
5268 more docs and doc style fixes
5270 2005-11-03 Stefan Kost <ensonic@users.sf.net>
5272 * docs/gst/gstreamer-sections.txt:
5274 * gst/gstminiobject.c:
5277 2005-11-03 Andy Wingo <wingo@pobox.com>
5279 * check/states/sinks.c (test_livesrc_sink): Add checks that the
5280 state-changed messages actually have the right order and the right
5283 2005-11-03 Wim Taymans <wim@fluendo.com>
5285 * check/states/sinks.c: (GST_START_TEST), (gst_object_suite):
5286 Added some more checks. Specifically the case where NO_PREROLL
5287 elements are in the pipeline.
5289 * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
5290 (gst_base_sink_handle_object), (gst_base_sink_do_sync),
5291 (gst_base_sink_get_position):
5292 Post READY->PAUSED state change messages too.
5293 Fix bug where VOID was posted as pending state...
5295 * gst/gstbin.c: (gst_bin_recalc_state):
5296 use _element_continue_state() to continue the state change.
5298 * gst/gstelement.c: (gst_element_continue_state),
5299 (gst_element_commit_state), (gst_element_set_state_func),
5300 (gst_element_change_state), (gst_element_change_state_func):
5301 Lots of state change cleanups, assign the STATE_RETURN in
5302 a new continue_state() function that also propagates the
5303 last return value from a state change to the app.
5304 Update some debug statements with proper category.
5306 2005-11-03 Wim Taymans <wim@fluendo.com>
5308 * docs/design/part-events.txt:
5309 * docs/design/part-gstpipeline.txt:
5310 * docs/design/part-messages.txt:
5311 * docs/design/part-overview.txt:
5312 * docs/design/part-seeking.txt:
5313 * docs/design/part-states.txt:
5314 * docs/design/part-trickmodes.txt:
5315 * docs/manual/advanced-position.xml:
5319 People think !! is ugly, this looks better.
5321 * gst/gstpad.c: (gst_pad_set_blocked_async):
5322 Remove !! since it's fixed elsewhere now.
5324 2005-11-03 Tim-Philipp Müller <tim at centricular dot net>
5326 * gst/gstminiobject.h:
5328 Add !! to _FLAG_IS_SET macros to make the result boolean.
5330 2005-11-03 Edward Hervey <edward@fluendo.com>
5332 * gst/gstpad.c: (gst_pad_set_blocked_async):
5333 comparing a flag and a gboolean rarely returns coherent results...
5334 Added two characters (!!) to make that work correctly.
5336 2005-11-03 Tim-Philipp Müller <tim at centricular dot net>
5338 * gst/gstbus.c: (gst_bus_class_init):
5341 * gst/gstqueue.c: (gst_queue_loop):
5342 Don't assume a miniobject that isn't a buffer is an
5343 event (it could be that there is a refcounting
5344 problem somewhere and the pointer is stale and
5345 refers to an already destroyed miniobject).
5347 2005-11-03 Julien MOUTTE <julien@moutte.net>
5349 * gst/gstpad.c: (gst_pad_alloc_buffer): Fix some typos.
5351 2005-11-03 Tim-Philipp Müller <tim at centricular dot net>
5353 * docs/manual/advanced-position.xml:
5354 Update seek example and explanations to current 0.9 API.
5356 * gst/elements/gsttypefindelement.c:
5357 (gst_type_find_element_activate):
5358 Remove FIXME comment now that the found caps
5361 2005-11-03 Thomas Vander Stichele <thomas at apestaart dot org>
5363 * gst/gstregistryxml.c: (load_feature):
5364 Add another GST_STR_NULL instance
5366 2005-11-02 Edward Hervey <edward@fluendo.com>
5368 * gst/gstpad.c: (handle_pad_block):
5369 Follow-up to Wim's patch, solves deadlock for blocked and flushing pads
5371 2005-11-02 Wim Taymans <wim@fluendo.com>
5376 * gst/gstelement.c: (gst_element_commit_state):
5377 Remove unused value.
5379 * gst/gstiterator.c:
5380 Mention that the returned element is reffed in the docs.
5382 2005-11-02 Wim Taymans <wim@fluendo.com>
5384 * gst/gstpad.c: (gst_pad_alloc_buffer), (handle_pad_block),
5385 (gst_pad_push), (gst_pad_push_event):
5386 Unlock blocked pads when they are flushed.
5388 2005-11-02 Thomas Vander Stichele <thomas at apestaart dot org>
5391 * docs/gst/gstreamer-sections.txt:
5394 * gst/gstregistry.c: (gst_registry_scan_path_level):
5395 fix for a nasty little missed situation where an installed plug-in
5396 which was in the cache did not get overridden by an uninstalled one
5397 which was earlier in the plugin path because the newly created plugin
5398 for the uninstalled one (not in the registry) didn't get its
5399 ->registered set to TRUE
5401 2005-11-02 Tim-Philipp Müller <tim at centricular dot net>
5403 * gst/base/gstcollectpads.c: (gst_collectpads_set_function),
5404 (gst_collectpads_add_pad), (gst_collectpads_remove_pad),
5405 (gst_collectpads_is_active), (gst_collectpads_collect),
5406 (gst_collectpads_collect_range), (gst_collectpads_start),
5407 (gst_collectpads_stop), (gst_collectpads_peek),
5408 (gst_collectpads_pop), (gst_collectpads_available),
5409 (gst_collectpads_read), (gst_collectpads_flush):
5410 Guard public API with assertions.
5413 Fix docs for gst_pad_set_link_function().
5415 2005-11-02 Johan Dahlin <johan@gnome.org>
5417 * gst/elements/gsttypefindelement.c (gst_type_find_element_activate):
5418 Unref found_caps after we used it.
5420 2005-11-02 Tim-Philipp Müller <tim at centricular dot net>
5422 * gst/base/gstcollectpads.c: (gst_collectpads_peek):
5423 Don't try to ref NULL.
5425 2005-11-02 Thomas Vander Stichele <thomas at apestaart dot org>
5427 * win32/common/config.h.in:
5428 provide a GST_FUNCTION that just gives a string for now
5430 2005-11-02 Thomas Vander Stichele <thomas at apestaart dot org>
5432 * win32/common/gstenumtypes.c: (register_gst_object_flags),
5433 (gst_object_flags_get_type), (register_gst_bin_flags),
5434 (gst_bin_flags_get_type), (register_gst_buffer_flag),
5435 (gst_buffer_flag_get_type), (register_gst_bus_flags),
5436 (gst_bus_flags_get_type), (register_gst_bus_sync_reply),
5437 (gst_bus_sync_reply_get_type), (register_gst_clock_return),
5438 (gst_clock_return_get_type), (register_gst_clock_entry_type),
5439 (gst_clock_entry_type_get_type), (register_gst_clock_flags),
5440 (gst_clock_flags_get_type), (register_gst_state),
5441 (gst_state_get_type), (register_gst_state_change_return),
5442 (gst_state_change_return_get_type), (register_gst_state_change),
5443 (gst_state_change_get_type), (register_gst_element_flags),
5444 (gst_element_flags_get_type), (register_gst_core_error),
5445 (gst_core_error_get_type), (register_gst_library_error),
5446 (gst_library_error_get_type), (register_gst_resource_error),
5447 (gst_resource_error_get_type), (register_gst_stream_error),
5448 (gst_stream_error_get_type), (register_gst_event_type),
5449 (gst_event_type_get_type), (register_gst_seek_type),
5450 (gst_seek_type_get_type), (register_gst_seek_flags),
5451 (gst_seek_flags_get_type), (register_gst_format),
5452 (gst_format_get_type), (register_gst_index_certainty),
5453 (gst_index_certainty_get_type), (register_gst_index_entry_type),
5454 (gst_index_entry_type_get_type),
5455 (register_gst_index_lookup_method),
5456 (gst_index_lookup_method_get_type), (register_gst_assoc_flags),
5457 (gst_assoc_flags_get_type), (register_gst_index_resolver_method),
5458 (gst_index_resolver_method_get_type), (register_gst_index_flags),
5459 (gst_index_flags_get_type), (register_gst_debug_level),
5460 (gst_debug_level_get_type), (register_gst_debug_color_flags),
5461 (gst_debug_color_flags_get_type), (register_gst_iterator_result),
5462 (gst_iterator_result_get_type), (register_gst_iterator_item),
5463 (gst_iterator_item_get_type), (register_gst_message_type),
5464 (gst_message_type_get_type), (register_gst_mini_object_flags),
5465 (gst_mini_object_flags_get_type), (register_gst_pad_link_return),
5466 (gst_pad_link_return_get_type), (register_gst_flow_return),
5467 (gst_flow_return_get_type), (register_gst_activate_mode),
5468 (gst_activate_mode_get_type), (register_gst_pad_direction),
5469 (gst_pad_direction_get_type), (register_gst_pad_flags),
5470 (gst_pad_flags_get_type), (register_gst_pad_presence),
5471 (gst_pad_presence_get_type), (register_gst_pad_template_flags),
5472 (gst_pad_template_flags_get_type), (register_gst_pipeline_flags),
5473 (gst_pipeline_flags_get_type), (register_gst_plugin_error),
5474 (gst_plugin_error_get_type), (register_gst_plugin_flags),
5475 (gst_plugin_flags_get_type), (register_gst_rank),
5476 (gst_rank_get_type), (register_gst_query_type),
5477 (gst_query_type_get_type), (register_gst_tag_merge_mode),
5478 (gst_tag_merge_mode_get_type), (register_gst_tag_flag),
5479 (gst_tag_flag_get_type), (register_gst_task_state),
5480 (gst_task_state_get_type), (register_gst_alloc_trace_flags),
5481 (gst_alloc_trace_flags_get_type),
5482 (register_gst_type_find_probability),
5483 (gst_type_find_probability_get_type), (register_gst_uri_type),
5484 (gst_uri_type_get_type), (register_gst_parse_error),
5485 (gst_parse_error_get_type):
5486 * win32/common/gstversion.h:
5489 2005-11-01 Luca Ognibene <luogni@tin.it>
5492 fix docs. popt is dead, long live GOption.
5494 2005-10-31 Wim Taymans <wim@fluendo.com>
5499 2005-10-31 Andy Wingo <wingo@pobox.com>
5503 * gst/gstqueue.c (gst_queue_chain): Fix downstream leaky mode.
5505 * gst/gstobject.c (gst_object_dispatch_properties_changed): No
5506 need to serialize property notifications on GLib 2.8. GLib 2.6 has
5507 the possibility of deadlocks here if code calling notify() or
5508 set() has a lock that can be taken in another notify handler (ABBA
5509 with class lock and e.g. python GIL state lock).
5511 2005-10-28 Julien MOUTTE <julien@moutte.net>
5513 * gst/gstbus.c: Doc updates.
5515 2005-10-28 Wim Taymans <wim@fluendo.com>
5517 * docs/design/part-TODO.txt:
5518 * gst/gstiterator.c:
5519 * gst/gstsystemclock.c:
5520 * gst/gstsystemclock.h:
5523 2005-10-28 Edward Hervey <edward@fluendo.com>
5525 * docs/gst/gstreamer-docs.sgml:
5526 * docs/gst/gstreamer-sections.txt:
5527 the GstURIType documentation page is private, it only defines GstURIType
5528 which should be defined in the GstURIHandler page
5530 2005-10-28 Thomas Vander Stichele <thomas at apestaart dot org>
5532 * gst/gstbin.c: (gst_bin_class_init):
5535 Documentation updates.
5537 2005-10-28 Wim Taymans <wim@fluendo.com>
5539 * docs/gst/gstreamer-sections.txt:
5542 Documented the clocks.
5544 2005-10-28 Stefan Kost <ensonic@users.sf.net>
5546 * docs/gst/gstreamer-sections.txt:
5547 move some macros to private sections
5548 * gst/gstminiobject.c:
5549 * gst/gstminiobject.h:
5550 add descriptions provided by ds and some more
5552 mark macro as to be removed
5554 2005-10-28 Wim Taymans <wim@fluendo.com>
5556 * docs/design/part-TODO.txt:
5557 Add an item to TODO.
5559 * gst/gstiterator.c: (gst_iterator_fold),
5560 (gst_iterator_find_custom):
5561 * gst/gstiterator.h:
5564 2005-10-28 Wim Taymans <wim@fluendo.com>
5566 * gst/base/gstbasetransform.c: (gst_base_transform_class_init),
5567 (gst_base_transform_init):
5570 * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_loop):
5571 An EOS event marks the queue as completely filled.
5573 2005-10-27 Wim Taymans <wim@fluendo.com>
5575 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
5576 (gst_base_sink_do_sync), (gst_base_sink_get_position):
5577 Some more debugging.
5579 * gst/base/gstbasetransform.c: (gst_base_transform_finalize),
5580 (gst_base_transform_init), (gst_base_transform_buffer_alloc),
5581 (gst_base_transform_event), (gst_base_transform_getrange),
5582 (gst_base_transform_chain):
5583 * gst/base/gstbasetransform.h:
5585 Protect transform and concurrent buffer alloc with a new lock.
5586 Try not to break ABI/API.
5588 2005-10-27 Wim Taymans <wim@fluendo.com>
5590 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
5591 (gst_base_src_init), (gst_base_src_query),
5592 (gst_base_src_default_newsegment),
5593 (gst_base_src_configure_segment), (gst_base_src_do_seek),
5594 (gst_base_src_send_event), (gst_base_src_event_handler),
5595 (gst_base_src_pad_get_range), (gst_base_src_loop),
5596 (gst_base_src_unlock), (gst_base_src_default_negotiate),
5597 (gst_base_src_start), (gst_base_src_deactivate),
5598 (gst_base_src_activate_push), (gst_base_src_change_state):
5599 Move some stuff around and cleanup things.
5601 2005-10-27 Tim-Philipp Müller <tim at centricular dot net>
5603 * gst/base/gstbasesrc.c: (gst_base_src_query):
5604 Add missing break statements.
5606 2005-10-27 Wim Taymans <wim@fluendo.com>
5608 * check/gst/gstbin.c: (GST_START_TEST):
5609 An extra refcount is taken in basesrc.
5611 * gst/base/gstbasesrc.c: (gst_base_src_init), (gst_base_src_query),
5612 (gst_base_src_get_range), (gst_base_src_pad_get_range),
5613 (gst_base_src_loop):
5614 Small cleanups, check for flushing after being unlocked from the
5615 LIVE_LOCK. take refcounts correctly (not yet everywhere).
5616 Don't send out EOS when going to READY.
5618 2005-10-27 Wim Taymans <wim@fluendo.com>
5620 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
5621 (gst_base_sink_get_position):
5624 * gst/gstbin.c: (message_check), (bin_replace_message),
5625 (bin_remove_messages), (is_eos), (gst_bin_add_func),
5626 (update_degree), (gst_bin_sort_iterator_next), (bin_bus_handler),
5627 (bin_query_duration_init), (bin_query_duration_fold),
5628 (bin_query_duration_done), (bin_query_generic_fold),
5630 * tools/gst-launch.c: (main):
5633 2005-10-26 Stefan Kost <ensonic@users.sf.net>
5635 * examples/controller/audio-example.c: (main):
5636 * examples/queue/queue.c: (event_loop):
5637 * gst/base/gstbasetransform.h:
5638 * gst/gstelement.c: (gst_element_send_event):
5640 * gst/gstpad.c: (gst_pad_send_event):
5643 changing log priority in error situations
5645 2005-10-25 Wim Taymans <wim@fluendo.com>
5647 * gst/gstbin.c: (message_check), (bin_replace_message),
5648 (bin_remove_messages), (is_eos), (gst_bin_add_func),
5649 (update_degree), (gst_bin_sort_iterator_next), (bin_bus_handler),
5650 (bin_query_duration_init), (bin_query_duration_fold),
5651 (bin_query_duration_done), (bin_query_generic_fold),
5653 Some doc and debug updates.
5654 Cache previously requested query DURATION for speed. invalidate
5655 cached duration if element posts a DURATION message.
5657 2005-10-25 Wim Taymans <wim@fluendo.com>
5659 * docs/design/part-TODO.txt:
5662 * gst/gstbin.c: (message_check), (bin_replace_message),
5663 (bin_remove_messages), (is_eos), (gst_bin_add_func),
5664 (update_degree), (gst_bin_sort_iterator_next), (bin_bus_handler),
5665 (bin_query_duration_init), (bin_query_duration_fold),
5666 (bin_query_duration_done), (bin_query_generic_fold),
5668 Handle SEGMENT_START/DONE messages correctly.
5669 More evolved query algorithm that handles duration queries
5672 * gst/gstelement.c: (gst_element_send_event), (gst_element_query),
5673 (gst_element_get_state_func), (gst_element_abort_state),
5674 (gst_element_commit_state), (gst_element_lost_state):
5675 Some more debugging.
5680 2005-10-25 Wim Taymans <wim@fluendo.com>
5682 * gst/base/gstbasesink.c: (gst_base_sink_get_position):
5683 Don't use invalid stream_time.
5685 * gst/gstevent.c: (gst_event_new_newsegment):
5686 stream_time in newsegment cannot be undefined.
5688 2005-10-24 Wim Taymans <wim@fluendo.com>
5693 * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
5695 Fix potential deadlock when QUEUE_LOCK is taken before STREAM_LOCK.
5697 2005-10-24 Stefan Kost <ensonic@users.sf.net>
5699 * docs/libs/tmpl/gstdparam.sgml:
5700 * docs/libs/tmpl/gstdplinint.sgml:
5701 * docs/libs/tmpl/gstdpman.sgml:
5702 * docs/libs/tmpl/gstdpsmooth.sgml:
5703 * docs/libs/tmpl/gstunitconvert.sgml:
5706 2005-10-24 Thomas Vander Stichele <thomas at apestaart dot org>
5711 === release 0.9.4 ===
5713 2005-10-23 Thomas Vander Stichele <thomas at apestaart dot org>
5716 releasing 0.9.4, "Tyrannosaurus Rex"
5718 2005-10-23 Tim-Philipp Müller <tim at centricular dot net>
5720 * gst/elements/gstfilesink.c: (gst_file_sink_do_seek),
5721 (gst_file_sink_get_current_offset):
5722 Use fseeko() and ftello() if available. When falling back on
5723 lseek() to get the current offset, fflush() first to make sure
5724 everything is up-to-date and we get the right offset.
5726 2005-10-23 Thomas Vander Stichele <thomas at apestaart dot org>
5728 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
5729 * gst/base/gstbasesrc.c: (gst_base_src_loop):
5730 * gst/gsterror.c: (_gst_stream_errors_init):
5732 * gst/gstqueue.c: (gst_queue_loop):
5734 remove prematurely added error category and clean up the instances
5736 2005-10-21 Wim Taymans <wim@fluendo.com>
5738 * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
5739 (gst_base_sink_get_position), (gst_base_sink_query),
5740 (gst_base_sink_change_state):
5741 Simply set the right flag when going to playing, that's all
5742 we need to do instead of calling a function inside the object
5743 lock (that could take the lock as well and deadlock)
5745 2005-10-21 Wim Taymans <wim@fluendo.com>
5747 * gst/base/gstbasesrc.c: (gst_base_src_do_seek),
5748 (gst_base_src_loop):
5749 Don't warn, the peer element knows what to do best when
5750 the seek failed, it might try something else.
5752 2005-10-21 Wim Taymans <wim@fluendo.com>
5754 * gst/base/gstbasesrc.c: (gst_base_src_init),
5755 (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
5758 2005-10-21 Wim Taymans <wim@fluendo.com>
5760 * docs/design/part-segments.txt:
5763 * gst/elements/gstcapsfilter.c: (gst_capsfilter_prepare_buf):
5764 Correctly set caps, even on the subbufer.
5766 2005-10-21 Wim Taymans <wim@fluendo.com>
5768 * docs/gst/gstreamer-docs.sgml:
5769 * docs/gst/gstreamer-sections.txt:
5776 * gst/gsttask.c: (gst_task_finalize), (gst_task_func):
5780 And 2% more doc coverage.
5782 2005-10-21 Andy Wingo <wingo@pobox.com>
5784 * gst/base/gstbasesrc.c (gst_base_src_query): Clean up percent
5787 2005-10-20 Wim Taymans <wim@fluendo.com>
5789 * gst/gsterror.c: (gst_error_get_message):
5792 * gst/gststructure.c:
5797 2005-10-20 Wim Taymans <wim@fluendo.com>
5802 Another 1% more coverage.
5804 2005-10-20 Wim Taymans <wim@fluendo.com>
5806 * docs/gst/gstreamer-sections.txt:
5807 * gst/gstelement.c: (gst_element_get_state_func),
5808 (gst_element_abort_state), (gst_element_commit_state),
5809 (gst_element_lost_state):
5811 * gst/gstquery.c: (gst_query_set_position),
5812 (gst_query_parse_position), (gst_query_set_duration),
5813 (gst_query_parse_duration), (gst_query_new_convert):
5815 Yay! 1% more docs coverage.
5817 2005-10-20 Wim Taymans <wim@fluendo.com>
5820 * gst/gstquery.c: (gst_query_set_position),
5821 (gst_query_parse_position), (gst_query_set_duration),
5822 (gst_query_parse_duration), (gst_query_new_convert):
5824 * gst/gstutils.c: (gst_element_query_convert):
5826 Docs and consistency fixes.
5828 2005-10-20 Wim Taymans <wim@fluendo.com>
5834 2005-10-20 Wim Taymans <wim@fluendo.com>
5836 * gst/gstbin.c: (message_check), (bin_replace_message),
5837 (bin_remove_messages), (is_eos), (gst_bin_add_func),
5838 (update_degree), (gst_bin_sort_iterator_next),
5839 (gst_bin_change_state_func), (gst_bin_dispose), (bin_bus_handler):
5840 Reworked the message handling a bit, cache the messages instead of
5841 only the senders. alows us to do more in the future.
5843 2005-10-20 Wim Taymans <wim@fluendo.com>
5845 * docs/design/part-TODO.txt:
5848 * gst/base/gstbasesink.c: (gst_base_sink_get_position),
5849 (gst_base_sink_query):
5850 Don't use clock time to report position when in EOS.
5852 2005-10-20 Tim-Philipp Müller <tim at centricular dot net>
5854 * tools/gst-inspect.c: (print_interfaces),
5855 (print_element_properties_info), (print_element_info):
5856 Fix interface output with gst-inspect -a; don't print
5857 newlines after double/float properties.
5859 2005-10-20 Wim Taymans <wim@fluendo.com>
5861 * gst/base/gstbasesink.c: (gst_base_sink_get_position),
5862 (gst_base_sink_query):
5863 Speed up current position calculation.
5865 * gst/base/gstbasesrc.c: (gst_base_src_query),
5866 (gst_base_src_default_newsegment):
5867 Correctly set stream position in newsegment.
5869 * gst/gstbin.c: (gst_bin_add_func), (add_to_queue),
5870 (update_degree), (gst_bin_sort_iterator_next),
5871 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free):
5872 * gst/gstmessage.c: (gst_message_new_custom):
5873 Clean up debugging info
5875 * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
5876 (gst_queue_loop), (gst_queue_handle_src_query):
5879 2005-10-19 Wim Taymans <wim@fluendo.com>
5881 * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
5882 (gst_base_sink_handle_object), (gst_base_sink_query), (do_playing):
5883 Fix query handling again.
5885 2005-10-19 Wim Taymans <wim@fluendo.com>
5887 * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
5888 (gst_base_sink_handle_object), (gst_base_sink_query), (do_playing):
5889 * gst/base/gstbasesrc.c: (gst_base_src_query):
5890 * gst/elements/gstfilesink.c: (gst_file_sink_query):
5891 * gst/elements/gsttypefindelement.c:
5892 (gst_type_find_handle_src_query), (find_element_get_length),
5893 (gst_type_find_element_activate):
5896 * gst/gstquery.c: (gst_query_new_position),
5897 (gst_query_set_position), (gst_query_parse_position),
5898 (gst_query_new_duration), (gst_query_set_duration),
5899 (gst_query_parse_duration), (gst_query_set_segment),
5900 (gst_query_parse_segment):
5902 Bundling query position/duration is not a good idea since duration
5903 does not change much and we don't want to recalculate it for every
5904 position query, so they are separated again..
5905 Base value in segment query is not needed.
5907 * gst/gstqueue.c: (gst_queue_handle_src_query):
5908 * gst/gstutils.c: (gst_element_query_position),
5909 (gst_element_query_duration), (gst_pad_query_position),
5910 (gst_pad_query_duration):
5912 Updates for query API change.
5913 Added some docs here and there.
5915 2005-10-19 Thomas Vander Stichele <thomas at apestaart dot org>
5917 * check/gst/gstbin.c: (GST_START_TEST):
5918 * check/gst/gstghostpad.c: (GST_START_TEST):
5919 * check/pipelines/cleanup.c: (GST_START_TEST):
5920 wait on thread to die so we can check refcount correctly
5922 2005-10-18 Wim Taymans <wim@fluendo.com>
5924 * check/pipelines/stress.c: (GST_START_TEST):
5925 Make check a little more time consuming.
5927 2005-10-18 Wim Taymans <wim@fluendo.com>
5929 * check/Makefile.am:
5930 * check/pipelines/stress.c: (GST_START_TEST),
5931 (simple_launch_lines_suite), (main):
5932 Small state change torture test.
5934 * docs/design/part-states.txt:
5935 * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
5936 (gst_base_sink_handle_object), (gst_base_sink_event), (do_playing),
5937 (gst_base_sink_change_state):
5938 Never take state lock from streaming thread, clean up ugly
5939 hacks. Unfortunatly core does not yet support nice ways to
5942 * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_recalc_state),
5944 Start state recalc if a STATE_DIRTY message is posted, but only
5945 on the toplevel bin.
5947 * gst/gstelement.c: (gst_element_sync_state_with_parent),
5948 (gst_element_get_state_func), (gst_element_abort_state),
5949 (gst_element_commit_state), (gst_element_lost_state),
5950 (gst_element_set_state_func), (gst_element_change_state):
5952 State variables are now protected with the LOCK, the state
5953 lock is only used to serialize _set_state().
5955 2005-10-18 Wim Taymans <wim@fluendo.com>
5957 * check/gst/gstbin.c: (GST_START_TEST):
5958 * check/gst/gstmessage.c: (GST_START_TEST):
5959 * check/gst/gstpipeline.c: (GST_START_TEST), (message_received):
5960 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_recalc_func),
5962 * gst/gstelement.c: (gst_element_abort_state),
5963 (gst_element_commit_state), (gst_element_lost_state):
5964 * gst/gstmessage.c: (gst_message_new_state_changed),
5965 (gst_message_new_state_dirty), (gst_message_new_segment_start),
5966 (gst_message_new_segment_done), (gst_message_new_duration),
5967 (gst_message_parse_state_changed),
5968 (gst_message_parse_segment_start),
5969 (gst_message_parse_segment_done), (gst_message_parse_duration):
5971 * tools/gst-launch.c: (event_loop):
5972 Seriously, this is better than a previous commit as we only need
5973 to notify the fact that an element changed state in a streaming
5974 thread, marking the state of the parents dirty, hence the
5975 STATE_DIRTY message instead of abusing a boolean in a STATE_CHANGE
5978 2005-10-18 Wim Taymans <wim@fluendo.com>
5980 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_get_state_func),
5981 (gst_bin_recalc_func):
5982 * gst/gstelement.c: (gst_element_set_clock),
5983 (gst_element_abort_state), (gst_element_lost_state):
5984 Cleanups, prepare for state change fixes.
5986 2005-10-18 Wim Taymans <wim@fluendo.com>
5989 * gst/gstelement.c: (gst_element_class_init),
5990 (gst_element_set_state), (gst_element_set_state_func):
5992 Pending ABI changes.
5993 GThreadPool in GstBinClass to monitor async state changes.
5994 state_cookie in GstElement to detect concurrent gst/set state.
5995 set_state is now virtual too in case a very complicated element
5996 has to be constructed.
5998 2005-10-18 Wim Taymans <wim@fluendo.com>
6000 * check/gst/gstbin.c: (GST_START_TEST):
6001 * check/gst/gstmessage.c: (GST_START_TEST):
6002 * check/gst/gstpipeline.c: (GST_START_TEST), (message_received):
6003 * gst/gstbin.c: (bin_bus_handler):
6004 * gst/gstelement.c: (gst_element_commit_state),
6005 (gst_element_lost_state):
6006 * gst/gstmessage.c: (gst_message_new_state_changed),
6007 (gst_message_new_segment_start), (gst_message_new_segment_done),
6008 (gst_message_new_duration), (gst_message_parse_state_changed),
6009 (gst_message_parse_segment_start),
6010 (gst_message_parse_segment_done), (gst_message_parse_duration):
6012 * tools/gst-launch.c: (event_loop):
6013 Make messages future proof.
6014 state-change gets a flag if it was a message comming from the
6016 segment-start/stop can also be specified in other formats.
6017 A message to notify an app that a pipeline changed playback
6019 Also fix a GstMessage leak in -launch
6021 2005-10-18 Andy Wingo <wingo@pobox.com>
6023 * gst/gstelement.c (gst_element_dispose): More helpful message.
6025 2005-10-18 Thomas Vander Stichele <thomas at apestaart dot org>
6027 reviewed by: <delete if not using a buddy>
6029 * common/gtk-doc.mak:
6031 2005-10-18 Thomas Vander Stichele <thomas at apestaart dot org>
6033 * gst/gstregistry.c: (gst_registry_scan_path_level):
6034 unref a plug-in we get that was already initialized
6036 2005-10-18 Stefan Kost <ensonic@users.sf.net>
6038 * docs/gst/gstreamer-sections.txt:
6039 * docs/libs/gstreamer-libs-sections.txt:
6044 2005-10-17 Andy Wingo <wingo@pobox.com>
6046 * gst/base/gstcollectpads.c (gst_collectpads_chain): Slight
6049 * gst/Makefile.am (gstenumtypes.c): Threadsafe now.
6051 * gst/gstevent.c (gst_event_new, gst_event_finalize): LOG.
6053 * gst/gstelement.c (gst_element_get_state_func): s/INFO/DEBUG/.
6054 (gst_element_get_state_func): Better debug message.
6055 (gst_element_commit_state): s/INFO/DEBUG/.
6056 (gst_element_lost_state, gst_element_change_state):
6058 * gst/gstmessage.c (gst_message_init): s/INFO/LOG/.
6059 (gst_message_new_custom): s/INFO/LOG/.
6061 2005-10-17 Michael Smith <msmith@fluendo.com>
6063 * gst/base/gstbasesink.c: (gst_base_sink_do_sync):
6064 Check if end time is valid using end time, not start time.
6066 2005-10-17 Stefan Kost <ensonic@users.sf.net>
6068 * check/gst-libs/controller.c: (GST_START_TEST),
6069 (gst_controller_suite):
6070 * libs/gst/controller/gstcontroller.c:
6071 (gst_controlled_property_set_interpolation_mode):
6072 * libs/gst/controller/gstcontroller.h:
6073 * libs/gst/controller/gstinterpolation.c:
6074 * testsuite/controller/.cvsignore:
6075 * testsuite/controller/Makefile.am:
6076 * testsuite/controller/interpolator.c:
6077 merge controller testsuites
6079 remove mem-chunk from docs
6081 2005-10-17 Thomas Vander Stichele <thomas at apestaart dot org>
6083 * gst/gstmemchunk.c:
6084 * gst/gstmemchunk.h:
6085 * gst/gsttrashstack.c:
6086 * gst/gsttrashstack.h:
6087 out. get out. you're fired. to the Attic !
6089 2005-10-17 Thomas Vander Stichele <thomas at apestaart dot org>
6091 * gst/gstcaps.c: (gst_caps_intersect):
6092 fix signedness issues in a (hopefully) correct way
6093 * gst/gstelement.c: (gst_element_pads_activate):
6095 * gst/gstobject.c: (gst_object_set_parent):
6098 2005-10-17 Julien MOUTTE <julien@moutte.net>
6100 * gst/gstvalue.h: Fix prototypes.
6102 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
6104 * docs/gst/gstreamer-sections.txt:
6105 * gst/gst.c: (gst_version_string):
6107 * gst/gstversion.h.in:
6108 * win32/common/libgstreamer.def:
6109 add gst_version_string ()
6111 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
6115 * gst/gst.c: (init_post):
6116 * win32/common/config.h.in:
6118 * gst/gstcaps.c: (gst_caps_intersect):
6119 use gint64, the range could be bigger than a guint
6121 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
6124 document potential problem in 2038
6126 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
6128 * gst/gstcaps.c: (gst_caps_intersect):
6129 Fix guint j diving under 0
6131 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
6134 * win32/common/config.h:
6135 * win32/common/config.h.in:
6136 check for process.h, declares getpid() on Windows
6138 include process.h if we have it
6139 * gst/gstmemchunk.c: (populate), (gst_mem_chunk_new):
6140 * gst/gstmemchunk.h:
6141 fix signedness issues
6142 * win32/common/libgstreamer.def:
6145 2005-10-16 Julien MOUTTE <julien@moutte.net>
6147 * gst/gstcaps.c: (gst_caps_intersect): Fix a bad bug with a simple
6148 fix. Because of unsigned ints, caps intersection was going nuts and
6149 trying to access structures with G_MAXUINT index. That fixes
6150 videotestsrc ! ffmpegcolorspace ! fakesink
6151 * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked): logs
6154 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
6157 use the gettext macro
6158 * gst/elements/gstelements.c:
6160 * gst/indexers/gstindexers.c:
6161 update for GST_PACKAGE_NAME, GST_PACKAGE_ORIGIN
6162 * win32/common/config.h:
6164 * win32/common/config.h.in:
6165 add the template to generate config.h
6166 * win32/common/gstenumtypes.c:
6167 * win32/common/gstversion.h:
6170 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
6172 * gst/gst.c: (gst_version):
6173 * gst/gstversion.h.in:
6176 2005-10-15 Tim-Philipp Müller <tim at centricular dot net>
6179 Oops, add missing closing bracket.
6181 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
6184 use common m4's for argument checking
6186 2005-10-15 Tim-Philipp Müller <tim at centricular dot net>
6188 * docs/gst/gstreamer-sections.txt:
6190 Add GST_EVENT_TYPE_NAME() macro.
6192 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
6195 * gst/gstpluginfeature.c:
6197 privatize more symbols
6199 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
6202 add srcdir, builddir includes to GST_ALL_CFLAGS, since
6203 everything that uses GStreamer API should have the includes
6205 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
6207 * docs/gst/gstreamer-sections.txt:
6208 * gst/gstvalue.c: (gst_date_get_type), (_gst_value_initialize):
6210 give each value a _get_type, removes the DATA exports
6212 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
6216 remove _gst_registry_auto_load, not used anymore
6217 * gst/gstbin.c: (gst_bin_get_type):
6219 * gst/gstelement.c: (gst_element_get_type):
6221 * gst/gstobject.c: (gst_object_get_type):
6223 * gst/gstpad.c: (gst_pad_get_type):
6225 make _get_type functions similar, fixes data export from library
6227 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
6230 correctly make conditionals
6231 * gst/elements/Makefile.am:
6232 * gst/elements/gstelements.c:
6233 fix typo causing fdsrc not to build
6235 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
6237 * testsuite/Makefile.am:
6238 * testsuite/bytestream/.cvsignore:
6239 * testsuite/bytestream/Makefile.am:
6240 * testsuite/bytestream/filepadsink.c:
6241 * testsuite/bytestream/gstbstest.c:
6242 * testsuite/bytestream/test1.c:
6243 * testsuite/bytestream/testfile1:
6244 * testsuite/caps/normalisation.c:
6245 * testsuite/caps/random.c: (main):
6246 * testsuite/cleanup/.cvsignore:
6247 * testsuite/cleanup/Makefile.am:
6248 * testsuite/cleanup/cleanup1.c:
6249 * testsuite/cleanup/cleanup2.c:
6250 * testsuite/cleanup/cleanup3.c:
6251 * testsuite/cleanup/cleanup4.c:
6252 * testsuite/cleanup/cleanup5.c:
6253 * testsuite/controller/interpolator.c:
6254 * testsuite/debug/printf_extension.c: (main):
6255 * testsuite/elements/tee.c:
6256 * testsuite/negotiation/.cvsignore:
6257 * testsuite/negotiation/Makefile.am:
6258 * testsuite/negotiation/pad_link.c:
6259 * testsuite/pad/Makefile.am:
6260 * testsuite/pad/chainnopull.c:
6261 * testsuite/pad/getnopush.c:
6262 * testsuite/pad/link.c:
6263 * testsuite/refcounting/sched.c: (create_pipeline):
6264 * testsuite/registry/Makefile.am:
6265 * testsuite/registry/gst-print-formats.c:
6266 * testsuite/schedulers/.cvsignore:
6267 * testsuite/schedulers/142183-2.c:
6268 * testsuite/schedulers/142183.c:
6269 * testsuite/schedulers/143777-2.c:
6270 * testsuite/schedulers/143777.c:
6271 * testsuite/schedulers/147713.c:
6272 * testsuite/schedulers/147819.c:
6273 * testsuite/schedulers/147894-2.c:
6274 * testsuite/schedulers/147894.c:
6275 * testsuite/schedulers/Makefile.am:
6276 * testsuite/schedulers/group_link.c:
6277 * testsuite/schedulers/queue_link.c:
6278 * testsuite/schedulers/relink.c:
6279 * testsuite/schedulers/unlink.c:
6280 * testsuite/schedulers/unref.c:
6281 * testsuite/schedulers/useless_iteration.c:
6282 * testsuite/states/bin.c:
6283 clean out/remove some stuff from the testsuite directories
6285 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
6288 check for some headers
6289 * gst/elements/Makefile.am:
6290 * gst/elements/gstelements.c:
6291 don't compile fdsrc without sys/socket.h
6292 * gst/indexers/Makefile.am:
6293 * gst/indexers/gstindexers.c: (plugin_init):
6294 don't compile fileindex without mmap
6296 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
6303 * check/Makefile.am:
6304 * docs/gst/Makefile.am:
6305 * examples/helloworld/Makefile.am:
6307 * gst/base/Makefile.am:
6308 * gst/check/Makefile.am:
6309 * gst/elements/Makefile.am:
6310 * gst/indexers/Makefile.am:
6311 * gst/parse/Makefile.am:
6312 * libs/gst/controller/Makefile.am:
6313 * libs/gst/dataprotocol/Makefile.am:
6314 * examples/helloworld/helloworld.c: (event_loop):
6315 compile fixes, though it's not being compiled currently
6317 2005-10-14 Tim-Philipp Müller <tim at centricular dot net>
6319 * check/gst/gsttag.c: (test_date_tags), (gst_tag_suite):
6320 Add some simple tests for the new taglist date API.
6322 2005-10-14 Tim-Philipp Müller <tim at centricular dot net>
6324 * gst/elements/gstfakesink.c: (gst_fake_sink_render):
6325 * gst/elements/gstfakesrc.c: (gst_fake_src_create):
6326 Beautify 'last-message' output: print 'none' for buffer timestamps
6327 and durations if none is set; improve alignment with next messages.
6329 2005-10-14 Tim-Philipp Müller <tim at centricular dot net>
6331 * gst/gstpluginfeature.c: (gst_plugin_feature_check_version):
6332 * gst/gstpluginfeature.h:
6333 * gst/gstregistry.c: (gst_default_registry_check_feature_version):
6334 * gst/gstregistry.h:
6335 * docs/gst/gstreamer-sections.txt:
6336 Add new API to check plugin feature version requirements.
6338 * check/gst/gstplugin.c: (test_version_checks), (gst_plugin_suite):
6339 Some basic tests for the above.
6341 2005-10-13 Thomas Vander Stichele <thomas at apestaart dot org>
6343 * gst/gststructure.c: (gst_structure_to_string):
6344 guard against NULL printf - happens when for example
6345 a message structure with GstClock gets serialized
6347 2005-10-13 Tim-Philipp Müller <tim at centricular dot net>
6349 * gst/base/gstcollectpads.c: (gst_collectpads_event):
6350 Fix presumable copy'n'pasto.
6352 2005-10-13 Thomas Vander Stichele <thomas at apestaart dot org>
6354 * gst/elements/gstfakesrc.h:
6355 * gst/elements/gstfilesrc.c: (gst_file_src_create_read):
6356 * gst/elements/gsttypefindelement.c:
6358 * gst/elements/gstfilesink.c: (gst_file_sink_render):
6359 I wonder if this could actually write +2GB files before
6361 2005-10-13 Andy Wingo <wingo@pobox.com>
6363 * libs/gst/dataprotocol/dataprotocol.c (gst_dp_packet_from_caps):
6364 Fix Timmeke Waymans bug.
6365 (gst_dp_caps_from_packet): Make sure we pass a NUL-terminated
6366 string of the proper length to gst_caps_from_string. There's a
6367 potential for, before this fix, that this could cause someone
6368 connecting over the network to cause a segfault if the payload is
6371 2005-10-13 Stefan Kost <ensonic@users.sf.net>
6373 * docs/design/draft-push-pull.txt:
6374 * docs/design/part-overview.txt:
6375 * docs/random/TODO-pre-0.9:
6376 * docs/random/old/ChangeLog.gstreamer:
6377 * gst/base/gstpushsrc.c:
6381 2005-10-13 Thomas Vander Stichele <thomas at apestaart dot org>
6383 * gst/glib-compat.c: (gst_flags_get_first_value):
6384 * gst/glib-compat.h:
6385 * gst/gstvalue.c: (gst_value_deserialize_int_helper),
6386 (gst_value_compare_double), (gst_value_serialize_flags):
6387 GLib 2.6 g_flags_get_first_value has a bug that triggers an
6390 2005-10-13 Thomas Vander Stichele <thomas at apestaart dot org>
6392 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
6393 * gst/base/gstbasesrc.c: (gst_base_src_get_range):
6395 * tools/gst-launch.c: (event_loop):
6396 print out clock nicely
6398 2005-10-13 Tim-Philipp Müller <tim at centricular dot net>
6400 * docs/gst/gstreamer-sections.txt:
6402 * gst/gsttaglist.c: (_gst_tag_initialize), (gst_tag_list_get_date),
6403 (gst_tag_list_get_date_index):
6404 Added gst_tag_list_get_date() and gst_tag_list_get_date_index().
6405 GST_TAG_DATE now has a tag type of GST_TYPE_DATE (#170777).
6407 2005-10-13 Julien MOUTTE <julien@moutte.net>
6409 * gst/base/gstcollectpads.c: (gst_collectpads_event),
6410 (gst_collectpads_chain):
6411 * gst/base/gstcollectpads.h: Handle newsegment and store informations
6414 2005-10-13 Stefan Kost <ensonic@users.sf.net>
6416 * docs/gst/gstreamer-sections.txt:
6419 * tools/gst-inspect.c: (main):
6420 * tools/gst-launch.c: (main):
6421 * tools/gst-run.c: (main):
6422 * tools/gst-xmlinspect.c: (main):
6423 fix GOption context leaks
6426 2005-10-13 Thomas Vander Stichele <thomas at apestaart dot org>
6430 * win32/common/config.h:
6432 * win32/vs6/grammar.dsp:
6433 * win32/vs6/libgstelements.dsp:
6434 * win32/vs6/libgstreamer.dsp:
6437 2005-10-12 Thomas Vander Stichele <thomas at apestaart dot org>
6439 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
6440 * gst/base/gstbasesrc.c: (gst_base_src_query):
6441 fix more guint64<->gdouble conversions
6443 2005-10-12 Thomas Vander Stichele <thomas at apestaart dot org>
6446 add win32-update target
6447 * win32/common/gstconfig.h:
6448 * win32/common/gstenumtypes.c:
6449 * win32/common/gstenumtypes.h:
6450 * win32/common/gstversion.h:
6451 add files that visual studio can't generate
6453 2005-10-12 Thomas Vander Stichele <thomas at apestaart dot org>
6456 add a win32-update target
6459 2005-10-12 Wim Taymans <wim@fluendo.com>
6461 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
6462 (reset_degree), (gst_bin_dispose), (bin_bus_handler):
6463 * gst/gstelement.c: (gst_element_commit_state),
6464 (gst_element_set_state):
6465 Protect flags with proper lock.
6466 unref provided cached clock in dispose.
6468 2005-10-12 Stefan Kost <ensonic@users.sf.net>
6471 * gst/gstminiobject.h:
6473 * win32/gstenumtypes.c: (gst_mini_object_flags_get_type):
6474 removed unused flags from miniobject
6477 2005-10-12 Wim Taymans <wim@fluendo.com>
6479 * gst/elements/gstfilesink.c: (gst_file_sink_do_seek),
6480 (gst_file_sink_event), (gst_file_sink_render):
6481 Flush before seeking.
6483 2005-10-12 Andy Wingo <wingo@pobox.com>
6485 * gst/gst.c (gst_init_check): Ignore unknown options, as has
6486 always been the case.
6488 2005-10-12 Stefan Kost <ensonic@users.sf.net>
6490 * check/gst/gstbin.c: (GST_START_TEST):
6491 * docs/gst/gstreamer-sections.txt:
6492 * gst/base/gstbasesink.c: (gst_base_sink_init):
6493 * gst/base/gstbasesrc.c: (gst_base_src_init),
6494 (gst_base_src_get_range), (gst_base_src_check_get_range),
6495 (gst_base_src_start), (gst_base_src_stop):
6496 * gst/base/gstbasesrc.h:
6497 * gst/elements/gstfakesrc.c: (gst_fake_src_set_property):
6498 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
6499 (bin_element_is_sink), (reset_degree), (gst_bin_element_set_state),
6503 * gst/gstbus.c: (gst_bus_post), (gst_bus_set_flushing):
6505 * gst/gstelement.c: (gst_element_is_locked_state),
6506 (gst_element_set_locked_state), (gst_element_commit_state),
6507 (gst_element_set_state):
6509 * gst/gstindex.c: (gst_index_init):
6511 * gst/gstminiobject.h:
6512 * gst/gstobject.c: (gst_object_init), (gst_object_sink),
6513 (gst_object_set_parent):
6515 * gst/gstpad.c: (gst_pad_set_blocked_async), (gst_pad_is_blocked),
6516 (gst_pad_get_caps_unlocked), (gst_pad_set_caps):
6518 * gst/gstpadtemplate.h:
6519 * gst/gstpipeline.c: (gst_pipeline_provide_clock_func),
6520 (gst_pipeline_use_clock), (gst_pipeline_auto_clock):
6521 * gst/gstpipeline.h:
6522 * gst/indexers/gstfileindex.c: (gst_file_index_load),
6523 (gst_file_index_commit):
6524 * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
6525 * testsuite/pad/link.c: (gst_test_src_init),
6526 (gst_test_filter_init), (gst_test_sink_init):
6527 * testsuite/states/locked.c: (main):
6528 renamed GST_FLAGS macros to GST_OBJECT_FLAGS
6529 moved bitshift from macro to enum definition
6531 2005-10-12 Wim Taymans <wim@fluendo.com>
6533 * gst/base/gstbasesink.c: (gst_base_sink_handle_buffer):
6534 * gst/elements/gstfilesink.c: (gst_file_sink_event),
6535 (gst_file_sink_render):
6536 Some more debugging info.
6538 2005-10-12 Wim Taymans <wim@fluendo.com>
6540 * docs/design/part-states.txt:
6541 * tools/gst-launch.c: (main):
6543 Revert non-intentional change.
6545 2005-10-12 Wim Taymans <wim@fluendo.com>
6547 * check/gst/gstbin.c: (GST_START_TEST):
6548 * check/gst/gstelement.c: (GST_START_TEST):
6549 * check/gst/gstevent.c: (GST_START_TEST), (test_event):
6550 * check/gst/gstghostpad.c: (GST_START_TEST):
6551 * check/gst/gstpipeline.c: (GST_START_TEST):
6552 * check/pipelines/simple_launch_lines.c: (run_pipeline):
6553 * check/states/sinks.c: (GST_START_TEST):
6554 * gst/elements/gsttypefindelement.c: (stop_typefinding):
6555 * gst/gstbin.c: (gst_bin_provide_clock_func), (gst_bin_add_func),
6556 (gst_bin_remove_func), (gst_bin_get_state_func),
6557 (gst_bin_recalc_state), (gst_bin_change_state_func),
6559 * gst/gstelement.c: (gst_element_get_state_func),
6560 (gst_element_get_state), (gst_element_abort_state),
6561 (gst_element_commit_state), (gst_element_set_state),
6562 (gst_element_change_state), (gst_element_change_state_func):
6564 * gst/gstpipeline.c: (gst_pipeline_class_init), (do_pipeline_seek),
6565 (gst_pipeline_provide_clock_func):
6566 * gst/gstutils.c: (gst_element_link_pads_filtered):
6567 * tools/gst-launch.c: (main):
6568 * tools/gst-typefind.c: (main):
6569 Use GstClockTime in _get_state() instead of GTimeVal.
6570 Remove old code in gstutils.c
6572 2005-10-12 Andy Wingo <wingo@pobox.com>
6574 * gst/gstregistry.h (gst_registry_scan_paths): Not implemented, so
6577 * gst/gstpad.c (gst_pad_pause_task): Actually return FALSE if
6578 there is no task. Shouldn't affect any code, as nothing in our
6579 plugins checks this return value.
6580 (gst_pad_stop_task): Also take the stream lock if the pad has no
6583 2005-10-12 Wim Taymans <wim@fluendo.com>
6585 * gst/gstpad.c: (pre_activate), (post_activate),
6586 (gst_pad_activate_pull), (gst_pad_activate_push):
6587 Cleanup activation code. Reset old state if
6590 2005-10-12 Wim Taymans <wim@fluendo.com>
6592 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
6593 (gst_base_sink_change_state):
6594 No need to prerol after receiving EOS.
6596 * gst/elements/gstfakesink.c: (gst_fake_sink_event):
6597 * gst/elements/gstfakesrc.c: (gst_fake_src_event_handler):
6598 * gst/elements/gstidentity.c: (gst_identity_event):
6599 Print events more verbosely.
6601 2005-10-12 Wim Taymans <wim@fluendo.com>
6603 * check/Makefile.am:
6604 * check/states/sinks.c: (GST_START_TEST), (gst_object_suite):
6605 * check/states/sinks2.c:
6606 Moved sinks2 testcode in sinks check.
6608 * gst/gstbin.c: (gst_bin_provide_clock_func), (gst_bin_add_func),
6609 (gst_bin_remove_func), (gst_bin_recalc_state),
6610 (gst_bin_change_state_func), (bin_bus_handler):
6611 Fix potential race condition when _get_state() iterated over an
6612 ASYNC element right before it posted a state completion.
6615 Do proper cast here.
6617 * gst/gstevent.c: (gst_event_new_newsegment),
6618 (gst_event_parse_newsegment):
6619 A playback rate of 0.0 is not allowed.
6621 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
6623 * win32/common/config.h:
6624 * win32/common/dirent.c: (_topendir), (_treaddir), (_tclosedir),
6625 (_trewinddir), (_ttelldir), (_tseekdir):
6626 * win32/common/dirent.h:
6627 * win32/common/gtchar.h:
6628 * win32/common/libgstbase.def:
6629 * win32/common/libgstreamer.def:
6630 * win32/vs6/grammar.dsp:
6631 * win32/vs6/gst_inspect.dsp:
6632 * win32/vs6/gst_launch.dsp:
6633 * win32/vs6/gstreamer.dsw:
6634 * win32/vs6/libgstbase.dsp:
6635 * win32/vs6/libgstelements.dsp:
6636 * win32/vs6/libgstreamer.dsp:
6637 Visual Studio 6 project files, and a new common directory.
6640 2005-10-11 Wim Taymans <wim@fluendo.com>
6642 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
6643 (gst_base_sink_do_sync), (gst_base_sink_query),
6644 (gst_base_sink_change_state):
6645 * gst/base/gstbasesink.h:
6646 Correctly parse newsegment info.
6648 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
6650 * gst/gst.c: (init_post):
6651 split plugin paths correctly
6653 2005-10-11 Wim Taymans <wim@fluendo.com>
6655 * check/gst/gstevent.c: (GST_START_TEST):
6656 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
6657 (gst_base_sink_change_state):
6658 * gst/base/gstbasesrc.c: (gst_base_src_default_newsegment):
6659 * gst/base/gstbasetransform.c: (gst_base_transform_event):
6660 * gst/elements/gstfilesink.c: (gst_file_sink_event):
6661 * gst/gstevent.c: (gst_event_new_newsegment),
6662 (gst_event_parse_newsegment):
6664 Added extra flag to newsegment for future API freeze.
6665 Updated check and base elements.
6667 2005-10-11 Julien MOUTTE <julien@moutte.net>
6669 * gst/base/gstcollectpads.c: (gst_collectpads_init),
6670 (gst_collectpads_add_pad), (gst_collectpads_pop),
6671 (gst_collectpads_event), (gst_collectpads_chain):
6672 * gst/base/gstcollectpads.h: Handle EOS correctly.
6674 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
6676 * tools/gst-launch.c: (main):
6677 more null protecting
6679 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
6681 * gst/gst-i18n-lib.h:
6682 check for ENABLE_NLS, not GETTEXT_PACKAGE
6683 * gst/gstregistry.c: (gst_registry_add_plugin),
6684 (gst_registry_scan_path_level),
6685 (_gst_registry_remove_cache_plugins):
6686 protect possibly NULL strings
6687 * gst/parse/types.h:
6688 config.h already included before
6689 * tools/gst-inspect.c: (main):
6690 sys/wait.h also doesn�t exist on mingw, so change the ifdef check
6691 check for ENABLE_NLS, not GETTEXT_PACKAGE
6692 * tools/gst-launch.c: (main):
6693 check for ENABLE_NLS, not GETTEXT_PACKAGE
6695 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
6698 if we don't have glib, fail before testing 2.8
6699 * gst/base/gstbasetransform.c: (gst_base_transform_change_state):
6700 fix a leak, should fix plugins-base testsuite
6702 2005-10-11 Andy Wingo <wingo@pobox.com>
6704 * gst/gstpad.c (pre_activate): Renamed from pre_activate_switch,
6705 take the mode we're going to as an arg. Go head and set the mode
6706 and flushing flags now, so that if the activate function starts a
6707 thread all the flags will be in the right state.
6708 (post_activate): Renamed also. Just handle making sure streaming
6709 finishes for the deactivation case, and setting the deactivated
6711 (gst_pad_set_active): Complain loudly if deactivation fails.
6712 (gst_pad_activate_pull): Adapt to pre/post_activate changes.
6713 (gst_pad_activate_push): Adapt to pre/post_activate changes,
6714 remove the terrible hack.
6716 2005-10-11 Wim Taymans <wim@fluendo.com>
6718 * gst/gstbin.c: (gst_bin_init), (gst_bin_provide_clock_func),
6719 (is_eos), (gst_bin_add_func), (gst_bin_remove_func),
6720 (gst_bin_recalc_state), (gst_bin_change_state_func),
6721 (gst_bin_dispose), (bin_bus_handler):
6723 Prepare to make current EOS message queue more generic.
6726 * gst/gstevent.c: (gst_event_new_newsegment),
6727 (gst_event_parse_newsegment):
6729 Rename base to stream_time.
6734 2005-10-11 Wim Taymans <wim@fluendo.com>
6736 * gst/gstbin.c: (gst_bin_init), (gst_bin_provide_clock_func),
6737 (gst_bin_add_func), (gst_bin_remove_func), (gst_bin_recalc_state),
6738 (gst_bin_change_state_func), (bin_bus_handler):
6740 Work on proper clock selection.
6742 2005-10-11 Edward Hervey <edward@fluendo.com>
6744 * libs/gst/controller/gstcontroller.c: (gst_controller_remove_properties_list):
6745 * libs/gst/controller/gstcontroller.h:
6746 Added GList* version of _remove_properties() in order to be able to wrap
6749 2005-10-11 Wim Taymans <wim@fluendo.com>
6751 * docs/design/part-states.txt:
6754 * gst/gstbin.c: (gst_bin_set_clock_func), (gst_bin_recalc_state),
6755 (gst_bin_change_state_func), (bin_bus_handler):
6756 Doc updates. Don't distribute the same clock over and over again.
6762 * gst/gstpad.c: (gst_flow_get_name), (gst_flow_to_quark),
6763 (gst_pad_get_type), (gst_pad_push), (gst_pad_push_event),
6764 (gst_pad_send_event):
6766 Make probe emission threadsafe again.
6767 Register quarks and move _get_name() from utils.
6770 * gst/gstpipeline.c: (gst_pipeline_class_init),
6771 (gst_pipeline_change_state), (gst_pipeline_provide_clock_func):
6772 Only redistribute the clock of it changed.
6774 * gst/gstsystemclock.h:
6779 Moved the _flow_get_name() to GstPad.
6781 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
6783 * check/gst-libs/gdp.c: (GST_START_TEST):
6784 * check/gst/gstcaps.c: (GST_START_TEST):
6785 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
6786 (gst_dp_dump_byte_array), (gst_dp_header_from_buffer),
6787 (gst_dp_packet_from_caps):
6788 fix more valgrind warnings before turning up the heat
6790 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
6792 * gst/parse/grammar.y:
6793 some cleanup before the hacking
6795 2005-10-10 Thomas Vander Stichele <thomas at apestaart dot org>
6797 * gst/base/gstbasesrc.c: (gst_base_src_query):
6799 * gst/gstutils.c: (gst_guint64_to_gdouble),
6800 (gst_gdouble_to_guint64), (gst_util_uint64_scale):
6802 externalize, basesrc uses it
6803 obviously the implementation needs testing
6805 2005-10-10 Wim Taymans <wim@fluendo.com>
6807 * tests/sched/Makefile.am:
6808 * tests/sched/sort.c: (make_pipeline1), (make_pipeline2),
6809 (make_pipeline3), (make_pipeline4), (print_elem), (main):
6811 2005-10-10 Thomas Vander Stichele <thomas at apestaart dot org>
6813 * gst/gstutils.c: (guint64_to_gdouble), (gst_util_uint64_scale):
6814 apparently converting from guint64 to double is not implemented
6817 2005-10-10 Wim Taymans <wim@fluendo.com>
6819 * check/Makefile.am:
6820 * check/generic/states.c: (GST_START_TEST):
6821 * check/gst/gstbin.c: (GST_START_TEST):
6822 * check/gst/gstpipeline.c: (GST_START_TEST), (gst_pipeline_suite):
6823 * check/states/sinks.c: (GST_START_TEST):
6824 * check/states/sinks2.c: (GST_START_TEST), (gst_object_suite),
6826 Check fixes, use API as stated in design docs, remove hacks.
6828 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
6829 (gst_base_sink_change_state):
6830 Catch stopping our task while we're shutting down.
6832 * gst/gstbin.c: (gst_bin_init), (gst_bin_add_func),
6833 (gst_bin_remove_func), (gst_bin_get_state_func),
6834 (gst_bin_recalc_state), (gst_bin_change_state_func),
6837 * gst/gstelement.c: (gst_element_init),
6838 (gst_element_get_state_func), (gst_element_abort_state),
6839 (gst_element_commit_state), (gst_element_lost_state),
6840 (gst_element_set_state), (gst_element_change_state),
6841 (gst_element_change_state_func):
6843 New state change algorithm (see #318116)
6845 * gst/gstpipeline.c: (gst_pipeline_class_init),
6846 (gst_pipeline_init), (gst_pipeline_set_property),
6847 (gst_pipeline_get_property), (do_pipeline_seek),
6848 (gst_pipeline_change_state), (gst_pipeline_provide_clock_func):
6849 * gst/gstpipeline.h:
6850 Remove crude state change hacks.
6855 * tools/gst-launch.c: (main):
6856 Fixes for state change. Needs some more work to fully use the
6859 2005-10-10 Andy Wingo <wingo@pobox.com>
6861 * tests/Makefile.am (noinst_PROGRAMS): No more init.c.
6863 * gst/gst.c (G_OPTION_FLAG_NO_ARG): Apparently GLib 2.8 requires
6864 this flag, but it's not even in GLib 2.6. Odd. Hack around the
6867 2005-10-10 Tim-Philipp Müller <tim at centricular dot net>
6869 * gst/gstiterator.c: (gst_iterator_new):
6870 Fix my previous commit: GTypes passed to gst_iterator_new()
6871 can be fundamental types.
6873 2005-10-10 Wim Taymans <wim@fluendo.com>
6875 * gst/gstelement.c: (gst_element_iterate_pad_list),
6876 (gst_element_iterate_pads), (gst_element_iterate_src_pads),
6877 (gst_element_iterate_sink_pads):
6878 Use src/sink pads lists for the respective iterators instead
6881 2005-10-10 Andy Wingo <wingo@pobox.com>
6883 Merged in popt removal + GOption addition patch from Ronald, bug
6886 * docs/gst/gstreamer-sections.txt: Add STATE_(UN)LOCK_FULL, move
6887 GstElement macros around, remove popt-related symbols, add goption
6890 * configure.ac: Remove popt checks, require GLib 2.6 for GOption.
6892 * docs/gst/Makefile.am:
6893 * docs/libs/Makefile.am: No POPT_CFLAGS.
6895 * examples/manual/Makefile.am:
6896 * docs/manual/basics-init.xml: Doc updates with an example.
6898 * gst/gst.c: (gst_init_get_option_group), (gst_init_check),
6899 (gst_init), (parse_one_option), (parse_goption_arg):
6900 * gst/gst.h: Removed gst_init_with_popt_table and friends. Took a
6901 bit of hand merging and debugging to get the GOption stuff working
6904 * tests/Makefile.am:
6905 * tools/Makefile.am:
6906 * tools/gst-inspect.c: (main):
6907 * tools/gst-launch.c: (main):
6908 * tools/gst-run.c: (main):
6909 * tools/gst-xmlinspect.c: (main): Thanks Ronald!
6911 2005-10-10 Tim-Philipp Müller <tim at centricular dot net>
6913 * gst/gstiterator.c: (gst_iterator_new):
6914 Add assertions to make sure passed GType is likely to really
6915 be a GType (as the compiler won't catch it if the size and
6916 GType arguments get mixed up, see #318447).
6918 2005-10-10 Josef Zlomek <josef dot zlomek at xeris dot cz>
6920 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
6922 * gst/gstbin.c: (gst_bin_iterate_sorted):
6923 Pass GType and size arguments to gst_iterator_new() in the right
6924 order (maybe we should make _new() take the GType as first argument
6925 just like _new_list()?) (#318447).
6928 2005-10-10 Wim Taymans <wim@fluendo.com>
6930 * gst/gstelement.c: (gst_element_finalize):
6931 And free the GStaticRecMutex too
6933 2005-10-10 Andy Wingo <wingo@pobox.com>
6935 * gst/gstelement.c (gst_element_init, gst_element_finalize):
6936 Allocate and free the mutex properly.
6938 * gst/gstelement.h (GST_STATE_UNLOCK_FULL, GST_STATE_LOCK_FULL):
6940 (GstElement): The state_lock is now recursive. Rebuild your
6941 plugins, suckers. Old macros adapted.
6943 * docs/gst/gstreamer-sections.txt: Doc updates.
6946 * gst/gstutils.c (g_static_rec_cond_timed_wait)
6947 (g_static_rec_cond_wait): Ported from state changes patch, while
6948 we wait on bug #317802 to be solved in a well-distributed GLib.
6950 * gst/gstelement.c (gst_element_change_state_func): Renamed from
6951 gst_element_change_state, variable name changes.
6952 (gst_element_change_state): Split out of gst_element_set_state in
6953 preparation for the state change merge. Doesn't pay attention to
6954 the 'transition' argument.
6955 (gst_element_set_state): Updates, hopefully purely cosmetic.
6956 (gst_element_sync_state_with_parent): MT-safety. Ported from the
6958 (gst_element_get_state_func): Renamed from get_state, cosmetic
6961 2005-10-10 Thomas Vander Stichele <thomas at apestaart dot org>
6963 * gst/elements/gstelements.c:
6964 * win32/GStreamer.vcproj:
6966 * win32/dirent.c: (_tseekdir):
6967 * win32/gst-inspect.vcproj:
6968 * win32/gst-launch.vcproj:
6969 * win32/gstconfig.h:
6970 * win32/gstelements.vcproj:
6971 * win32/gstenumtypes.c: (gst_object_flags_get_type):
6972 * win32/gstreamer.def:
6974 updates for the win32 build (patch from Sebastien Moutte)
6976 2005-10-10 Andy Wingo <wingo@pobox.com>
6978 * gst/gstbin.c (gst_bin_get_state_func): Renamed from
6979 gst_bin_get_state, cleaned up (but no logic changes).
6980 (bin_element_is_sink): Comment updates.
6981 (sink_iterator_filter): Remove needless cast.
6982 (gst_bin_iterate_sinks): Doc update.
6983 (gst_bin_change_state_func): Renamed from gst_bin_change_state,
6984 cleaned up (but no logic changes).
6986 * check/states/sinks.c (test_src_sink): Cleanups from the state
6988 (test_livesrc_sink): Sync on the state.
6990 * check/pipelines/simple_launch_lines.c (run_pipeline): Merge from
6991 the state change patch.
6993 * check/gst/gstghostpad.c (test_ghost_pads): Merge from the state
6996 * check/gst/gstbin.c: Merge in some style fixes and additional
6997 checks from Wim's state change patch.
6999 2005-10-10 Tim-Philipp Müller <tim at centricular dot net>
7001 * gst/base/gsttypefindhelper.c: (helper_find_peek),
7002 (gst_type_find_helper):
7003 Check whether we have the requested data already in our list of
7004 cached buffers before pulling a new buffer; also make the buffer
7005 list a GSList. Speeds up typefinding by ca. 5-10% altogether.
7007 2005-10-10 Thomas Vander Stichele <thomas at apestaart dot org>
7012 * gst/gstvalue.c: (gst_value_deserialize_int_helper):
7013 don't use long long, it's not portable. Replacing with
7014 gint64 seems to work; let's hope no skeletons fall out of the closet.
7016 2005-10-10 Andy Wingo <wingo@pobox.com>
7018 * autogen.sh (CONFIGURE_DEF_OPT): No more --plugin-buiddir, yay
7020 2005-10-09 Stefan Kost <ensonic@users.sf.net>
7022 * docs/gst/gstreamer-sections.txt:
7027 * gst/gstmessage.c: (gst_message_parse_state_changed):
7030 more docs, fix compilation
7032 2005-10-09 Philippe Khalaf <burger@speedy.org>
7034 Fixed a few forgotten variables on previous commit
7036 2005-10-09 Tim-Philipp Müller <tim at centricular dot net>
7038 * gst/base/gsttypefindhelper.c: (helper_find_peek):
7039 Fix evil typefind crasher: getrange() might return a short
7040 buffer at the end of a file, but gst_type_find_peek() must
7041 either return the full data as requested or NULL, but
7042 never a short buffer.
7044 2005-10-09 Thomas Vander Stichele <thomas at apestaart dot org>
7046 * gst/gstmessage.c: (gst_message_new_state_changed),
7047 (gst_message_parse_state_changed):
7049 don't use "new", it's a C++ keyword
7051 2005-10-08 Wim Taymans <wim@fluendo.com>
7053 * gst/gstbin.c: (is_eos), (update_degree), (gst_bin_query):
7054 * gst/gstelement.c: (gst_element_post_message):
7055 * gst/gstpipeline.c: (gst_pipeline_change_state):
7056 Small docs and debug updates.
7058 2005-10-08 Stefan Kost <ensonic@users.sf.net>
7060 * docs/gst/gstreamer-sections.txt:
7061 * gst/gstelementfactory.c:
7066 2005-10-08 Wim Taymans <wim@fluendo.com>
7068 * gst/gstbin.c: (is_eos), (update_degree), (gst_bin_change_state),
7069 (gst_bin_dispose), (bin_bus_handler):
7070 Fix typos, add comments.
7071 Clear EOS list when going to PAUSED from any direction and do it
7072 in a threadsafe way.
7073 Get base time in a threadsafe way too.
7074 Fix confusing debug in the change_state function.
7075 Various other small cleanups.
7077 * gst/gstelement.c: (gst_element_post_message):
7078 Fix very verbose bus posting code.
7080 * gst/gstpipeline.c: (gst_pipeline_class_init),
7081 (gst_pipeline_set_property), (gst_pipeline_get_property),
7082 (gst_pipeline_change_state):
7083 Small ARG_ -> PROP_ cleanup
7085 2005-10-08 Wim Taymans <wim@fluendo.com>
7087 * gst/gstbin.c: (is_eos), (bin_bus_handler):
7088 Do a less CPU demanding EOS check because we can.
7090 2005-10-08 Wim Taymans <wim@fluendo.com>
7092 * libs/gst/dataprotocol/dataprotocol.c:
7093 (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
7094 (gst_dp_packet_from_event):
7095 * libs/gst/dataprotocol/dataprotocol.h:
7096 * libs/gst/dataprotocol/dp-private.h:
7097 It's about time we bump the version number.
7098 Since event types don't fit in the guint8 anymore describing
7099 the payload type, make payload type 16 bits wide.
7101 2005-10-08 Wim Taymans <wim@fluendo.com>
7103 * docs/design/part-TODO.txt:
7104 * docs/design/part-clocks.txt:
7105 * docs/design/part-events.txt:
7106 * docs/design/part-gstbin.txt:
7107 * docs/design/part-gstelement.txt:
7108 * docs/design/part-gstpipeline.txt:
7109 * docs/design/part-live-source.txt:
7110 * docs/design/part-messages.txt:
7111 * docs/design/part-overview.txt:
7112 * docs/design/part-states.txt:
7115 2005-10-08 Wim Taymans <wim@fluendo.com>
7119 Fix event quark registration.
7120 Add some space between events so we can insert them in the
7123 2005-10-08 Wim Taymans <wim@fluendo.com>
7125 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
7126 (gst_base_sink_handle_buffer):
7133 * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
7134 (gst_queue_set_property), (gst_queue_get_property):
7136 Remove old unused properties.
7138 2005-10-08 Stefan Kost <ensonic@users.sf.net>
7139 * docs/gst/gstreamer-sections.txt:
7142 * gst/gstminiobject.c:
7143 * gst/gstminiobject.h:
7147 lots of new docs and doc fixes
7149 2005-10-08 Thomas Vander Stichele <thomas at apestaart dot org>
7151 * gst/gstplugin.c: (gst_plugin_finalize), (gst_plugin_load_file):
7153 * gst/gstregistry.c: (gst_registry_lookup_locked),
7154 (gst_registry_scan_path_level):
7155 * gst/gstregistryxml.c: (load_plugin):
7156 Only ever load one plugin for a given plugin basename.
7157 This ensures correct overriding of GST_PLUGIN_PATH over
7158 GST_PLUGIN_SYSTEM_PATH and of home dir plugins over
7159 system installed plugins.
7161 2005-10-08 Wim Taymans <wim@fluendo.com>
7163 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
7164 (gst_base_sink_do_sync), (gst_base_sink_handle_buffer):
7165 Prepare for doing QOS.
7167 2005-10-08 Wim Taymans <wim@fluendo.com>
7169 * check/gst/gstbin.c: (GST_START_TEST):
7170 * check/pipelines/cleanup.c: (GST_START_TEST):
7171 * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
7172 Allow new clock message too.
7174 2005-10-08 Wim Taymans <wim@fluendo.com>
7176 * gst/gstmessage.c: (gst_message_new_error),
7177 (gst_message_new_warning), (gst_message_new_tag),
7178 (gst_message_new_state_changed), (gst_message_new_clock_provide),
7179 (gst_message_new_clock_lost), (gst_message_new_new_clock),
7180 (gst_message_new_segment_start), (gst_message_new_segment_done),
7181 (gst_message_parse_state_changed),
7182 (gst_message_parse_clock_provide), (gst_message_parse_clock_lost),
7183 (gst_message_parse_new_clock):
7185 Also carry the clock in question.
7187 2005-10-08 Wim Taymans <wim@fluendo.com>
7189 * gst/gstmessage.c: (gst_message_new_custom),
7190 (gst_message_new_eos), (gst_message_new_error),
7191 (gst_message_new_warning), (gst_message_new_tag),
7192 (gst_message_new_state_changed), (gst_message_new_clock_provide),
7193 (gst_message_new_new_clock), (gst_message_new_segment_start),
7194 (gst_message_new_segment_done), (gst_message_parse_state_changed),
7195 (gst_message_parse_clock_provide), (gst_message_parse_new_clock):
7198 Added clock related messages.
7200 * gst/gstpipeline.c: (gst_pipeline_change_state):
7201 Post message when the clock changed.
7203 * tools/gst-launch.c: (event_loop):
7206 2005-10-08 Tim-Philipp Müller <tim at centricular dot net>
7208 * tools/gst-inspect.c: (print_element_properties_info):
7209 Can't pass NULL strings to g_print() on windows.
7211 2005-10-08 Thomas Vander Stichele <thomas at apestaart dot org>
7214 * docs/gst/Makefile.am:
7215 * docs/gst/gstreamer-docs.sgml:
7216 * docs/gst/running.xml:
7217 * docs/version.entities.in:
7218 add a chapter on running GStreamer.
7219 document GST_DEBUG and GST_PLUGIN* env vars
7221 2005-10-08 Thomas Vander Stichele <thomas at apestaart dot org>
7226 remove PLUGINS_BUILDDIR stuff
7227 * gst/gst.c: (init_post):
7228 reorder parsing of GST_PLUGIN_PATH and GST_PLUGIN_SYSTEM_PATH
7230 remove, it was condescending and not needed
7232 2005-10-08 Wim Taymans <wim@fluendo.com>
7234 * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_flush),
7235 (gst_base_sink_handle_object), (gst_base_sink_event),
7236 (gst_base_sink_wait), (gst_base_sink_handle_event),
7237 (gst_base_sink_change_state):
7238 * gst/base/gstbasesink.h:
7239 Repost EOS message while going to PLAYING if still EOS.
7240 Make sure that when receiving a FLUSH_START we don't attempt
7241 to sync on the clock anymore.
7243 2005-10-08 Wim Taymans <wim@fluendo.com>
7245 * tools/gst-launch.c: (event_loop):
7246 Better message printout.
7248 2005-10-08 Wim Taymans <wim@fluendo.com>
7250 * gst/gstbin.c: (gst_bin_child_proxy_get_child_by_index),
7251 (gst_bin_child_proxy_get_children_count):
7252 * gst/gstchildproxy.c: (gst_child_proxy_get_child_by_name),
7253 (gst_child_proxy_lookup), (gst_child_proxy_get_property),
7254 (gst_child_proxy_get_valist), (gst_child_proxy_set_property),
7255 (gst_child_proxy_set_valist):
7256 * gst/parse/grammar.y:
7257 Make ChildProxy threadsafe and fix mem leaks.
7259 2005-10-08 Thomas Vander Stichele <thomas at apestaart dot org>
7261 * gst/gst.c: (init_post):
7262 debug the GST_PLUGIN_ env vars
7264 2005-10-08 Wim Taymans <wim@fluendo.com>
7266 * check/gst/gstbin.c: (GST_START_TEST):
7267 * check/gst/gstmessage.c: (GST_START_TEST):
7268 * check/gst/gstpipeline.c: (GST_START_TEST), (message_received):
7269 * gst/gstelement.c: (gst_element_commit_state),
7270 (gst_element_lost_state):
7271 * gst/gstmessage.c: (gst_message_new_state_changed),
7272 (gst_message_parse_state_changed):
7274 * tools/gst-launch.c: (event_loop):
7275 Added extra field to STATE_CHANGE message with the pending
7276 state, which will be different from the new state soon.
7278 2005-10-08 Wim Taymans <wim@fluendo.com>
7280 * gst/gstbus.c: (gst_bus_pop):
7282 * gst/gstsystemclock.c: (gst_system_clock_async_thread):
7283 Small cleanups and doc updates.
7285 2005-10-08 Thomas Vander Stichele <thomas at apestaart dot org>
7287 * gst/gst.c: (init_pre):
7288 * gst/gstbin.c: (gst_bin_add_func):
7289 log distributing clocks and base time
7290 * gst/gstregistry.c: (gst_registry_add_plugin),
7291 (gst_registry_scan_path_level), (gst_registry_scan_path):
7292 clean up the debugging output a little
7293 * gst/gstutils.c: (gst_element_state_get_name):
7294 warn about a memleak (I've actually seen this be used, though
7295 it was probably a bug)
7297 2005-10-07 Wim Taymans <wim@fluendo.com>
7299 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
7300 (gst_base_src_init), (gst_base_src_default_newsegment),
7301 (gst_base_src_newsegment), (gst_base_src_do_seek),
7302 (gst_base_src_loop), (gst_base_src_start):
7303 * gst/base/gstbasesrc.h:
7304 Make the newsegment event customizable by subclasses.
7306 2005-10-07 Wim Taymans <wim@fluendo.com>
7308 * gst/gstevent.c: (gst_event_new_buffersize),
7309 (gst_event_parse_buffersize):
7311 New event for future idea.
7313 2005-10-07 Andy Wingo <wingo@pobox.com>
7315 * gst/gstelement.c (gst_element_post_message): Doc update.
7317 * docs/gst/gstreamer-sections.txt: Update.
7319 * gst/gstmessage.c (gst_message_new_application): Made into a
7320 function like honest API calls.
7321 (gst_message_new_element): New message type.
7323 * gst/gstmessage.h (enum): Add GST_MESSAGE_ELEMENT type.
7325 * check/elements/fakesrc.c (test_no_preroll): New check, checks
7326 that setting a live fakesrc to PAUSED returns NO_PREROLL both
7329 * gst/base/gstbasesrc.c (gst_base_src_change_state): Allow a
7330 NO_PREROLL from gst_element_change_state to fall through.
7332 2005-10-07 Wim Taymans <wim@fluendo.com>
7334 * gst/gstghostpad.c: (gst_ghost_pad_get_internal),
7335 (gst_ghost_pad_do_activate_push):
7336 Activating a ghostpad with no internal pad in push mode
7339 2005-10-07 Thomas Vander Stichele <thomas at apestaart dot org>
7342 there's no point in wrapping FLAG_SET/_UNSET in STMT macros.
7343 Fixes compilation on Windows.
7345 2005-10-07 Michael Smith <msmith@fluendo.com>
7347 * tools/gst-inspect.c:
7348 Print out feature and plugin count at the end when printing out
7351 2005-10-04 Michael Smith <msmith@fluendo.com>
7353 * gst/gsterror.c: (_gst_stream_errors_init):
7354 Add another error string used in a few existing plugins.
7357 * gst/gstpluginfeature.c: (gst_plugin_feature_load):
7358 * tools/gst-inspect.c: (print_element_info):
7359 When a feature disappears from a plugin (and the feature exists in
7360 the cached registry file), things went horribly wrong. This isn't a
7361 complete fix, we should actually be removing the 'missing' features
7362 from the features list when we load the actual plugin. That's not
7365 2005-10-04 Johan Dahlin <johan@gnome.org>
7367 * check/gst/gstiterator.c: (GST_START_TEST):
7368 * gst/gstbin.c: (gst_bin_iterate_elements),
7369 (gst_bin_iterate_recurse), (gst_bin_iterate_sorted):
7370 * gst/gstelement.c: (gst_element_iterate_pads):
7371 * gst/gstformat.c: (gst_format_iterate_definitions):
7372 * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
7373 (gst_iterator_new_list), (gst_iterator_filter):
7374 * gst/gstiterator.h:
7375 * gst/gstquery.c: (gst_query_type_iterate_definitions):
7376 Add a GType to GstIterator, update callsites and tests.
7378 2005-10-06 Thomas Vander Stichele <thomas at apestaart dot org>
7380 * gst/gstpad.c: (gst_pad_event_default_dispatch):
7381 give events a chance to be handled by event probes when the pad
7384 2005-10-06 Thomas Vander Stichele <thomas at apestaart dot org>
7386 * gst/gstevent.c: (gst_event_type_get_name),
7387 (gst_event_type_to_quark), (gst_event_finalize), (gst_event_new):
7389 add string representations for event types
7391 2005-10-06 Wim Taymans <wim@fluendo.com>
7393 * gst/elements/gstfilesink.c: (gst_file_sink_close_file):
7394 Don't use NULL pointers.
7396 2005-10-06 Thomas Vander Stichele <thomas at apestaart dot org>
7398 * gst/gst_private.h:
7402 * gst/gstpluginfeature.c:
7403 widen the debug category in output to fit the biggest one we have
7404 add a bus category and use it
7405 play with the colors
7406 fix up some categories
7408 2005-10-06 Thomas Vander Stichele <thomas at apestaart dot org>
7410 * gst/gstghostpad.c: (gst_ghost_pad_internal_do_activate_push):
7411 add push activation of sink ghost pads.
7412 Andye, please verify
7414 2005-10-05 Thomas Vander Stichele <thomas at apestaart dot org>
7416 * gst/gstutils.c: (gst_element_link_pads):
7417 fix a bug in the case where neither element has a pad
7418 * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
7419 add a test for that case
7421 2005-10-05 Thomas Vander Stichele <thomas at apestaart dot org>
7423 * gst/gstpad.c: (gst_pad_push), (gst_pad_push_event):
7424 emit have-data before checking for peers. This allows
7425 for probe handlers to connect elements. This helps autopluggers.
7426 * check/gst/gstpad.c: (GST_START_TEST), (_probe_handler),
7428 add six checks, linked/unlinked with no/true/false probe
7430 2005-10-04 Wim Taymans <wim@fluendo.com>
7432 * gst/elements/gstfakesink.c: (gst_fake_sink_get_property),
7433 (gst_fake_sink_event), (gst_fake_sink_preroll),
7434 (gst_fake_sink_render), (gst_fake_sink_change_state):
7435 * gst/elements/gstfakesrc.c: (gst_fake_src_event_handler),
7436 (gst_fake_src_get_property), (gst_fake_src_create),
7437 (gst_fake_src_stop):
7438 * gst/elements/gstidentity.c: (gst_identity_stop):
7439 Protect last_message with lock.
7441 2005-10-04 Edward Hervey <edward@fluendo.com>
7444 Added precision in the comments for GST_FORMAT_DEFAULT
7446 2005-10-04 Tim-Philipp Müller <tim at centricular dot net>
7448 * tools/gst-launch.c: (main):
7449 Don't try to run erroneous pipelines.
7451 2005-10-04 Julien MOUTTE <julien@moutte.net>
7453 * gst/gstbus.c: We don't need this header.
7455 2005-10-03 Thomas Vander Stichele <thomas at apestaart dot org>
7460 === release 0.9.3 ===
7462 2005-10-03 Thomas Vander Stichele <thomas at apestaart dot org>
7466 Releasing 0.9.3, "Unregistered"
7468 2005-10-03 Andy Wingo <wingo@pobox.com>
7470 * gst/gstpad.c (gst_pad_activate_push): There is a race condition
7471 whereby calling a pad's activatepush() function can start a thread
7472 that starts to push or pull before the pad gets the FLUSHING flag
7473 unset. Hack around it by holding the stream lock until the flag is
7474 set. Need to replace this with a proper solution. Together with
7475 the ghost pad fixes, this fixes mp3 playing/tagreading.
7477 * docs/design/part-gstghostpad.txt: Add a note about activation of
7478 proxy pads outside of ghost pads.
7480 * gst/gstghostpad.c: Implement the ghost pad activation design.
7482 2005-10-02 Andy Wingo <wingo@pobox.com>
7484 * gst/gstobject.h (GST_OBJECT_REFCOUNT_VALUE): Just use the int.
7485 It is volatile, after all.
7487 * docs/design/part-gstghostpad.txt: Flesh out activation with
7490 * gst/base/gstbasesrc.c (gst_base_src_init): Use
7493 2005-10-02 Tim-Philipp Müller <tim at centricular dot net>
7496 Fix (unused) AM_CONDITIONAL tests.
7498 2005-10-01 Alessandro Decina <alessandro at nnva dot org>
7500 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
7502 * gst/gstutils.c: (gst_pad_query_convert):
7503 Add assertion that makes sure src_val is >=0, just like
7504 gst_query_new_convert() has. (#315895)
7506 2005-09-30 Edward Hervey <edward@fluendo.com>
7508 * gst/elements/gsttee.c: (gst_tee_do_push), (gst_tee_handle_buffer):
7509 Let's not iterate pads we're not interested in, it avoids getting
7510 sky-high refcounts on sinkpad.
7512 2005-09-30 Wim Taymans <wim@fluendo.com>
7514 * gst/gstelement.c: (gst_element_set_state),
7515 (gst_element_change_state):
7516 Small tweak, element in ASYNC remains ASYNC.
7518 2005-09-30 Wim Taymans <wim@fluendo.com>
7520 * gst/base/gstbasesink.c: (gst_base_sink_change_state):
7521 Only error is an error.
7523 * gst/gstbin.c: (gst_bin_change_state):
7526 * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_chain):
7527 Also call pad_block in pad alloc.
7529 * gst/gstutils.c: (gst_flow_get_name):
7532 2005-09-29 Tim-Philipp Müller <tim at centricular dot net>
7534 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
7535 (gst_base_src_get_range):
7536 Fix documentation typos. Add some more debug info.
7538 2005-09-29 David Schleef <ds@schleef.org>
7540 * gst/gstplugin.c: (gst_plugin_load_file): Make some error messages
7541 more end-user friendly.
7542 * tools/gst-inspect.c: (main): Check if command-line argument is
7543 a file and attempt to load that file as a plugin.
7545 2005-09-29 Thomas Vander Stichele <thomas at apestaart dot org>
7547 * check/gst/gstbin.c:
7548 * check/states/sinks.c:
7549 fix tests for the new warning
7550 * check/gst/gstpipeline.c:
7551 add a test for pipeline and bus interaction
7553 elements should be NULL if they get disposed; add a warning if not
7555 2005-09-29 Thomas Vander Stichele <thomas at apestaart dot org>
7558 for 2.6 refcounting, make debug log more correct by printing
7559 the actual refcounts at the time of swap (Wim)
7561 2005-09-29 Andy Wingo <wingo@pobox.com>
7563 * gst/gstbus.c (gst_bus_remove_signal_watch): New function,
7564 removes signal watches previously added via
7565 gst_bus_add_signal_watch.
7566 (gst_bus_add_signal_watch): Don't return the source id, just store
7567 it on the bus if there wasn't an id already.
7569 * gst/gstbus.h (GstBus): Add a couple new fields. API changes for
7570 add_signal_watch and remove_signal_watch.
7572 2005-09-29 Edward Hervey <edward@fluendo.com>
7574 * libs/gst/controller/gstcontroller.c: (gst_controller_new_list):
7575 Better if we actually iterate the list :)
7577 2005-09-29 Wim Taymans <wim@fluendo.com>
7579 * check/gst/gstbin.c: (GST_START_TEST):
7580 Change for new bus API.
7582 * check/gst/gstbus.c: (message_func_eos), (message_func_app),
7583 (send_messages), (GST_START_TEST), (gstbus_suite):
7584 Change for new bus signal API.
7586 * gst/gstbus.c: (gst_bus_class_init), (gst_bus_have_pending),
7587 (gst_bus_source_prepare), (gst_bus_source_check),
7588 (gst_bus_create_watch), (gst_bus_add_watch_full),
7589 (gst_bus_add_watch), (gst_bus_poll), (gst_bus_async_signal_func),
7590 (gst_bus_sync_signal_handler), (gst_bus_add_signal_watch):
7592 Remove support for multiple GSources operating on different
7593 message types as it is too complex and unneeded when using
7595 Added support for receiving signals from the bus.
7597 2005-09-29 Thomas Vander Stichele <thomas at apestaart dot org>
7599 * docs/libs/tmpl/gstdataprotocol.sgml:
7600 * docs/manual/advanced-dataaccess.xml:
7601 * gst/elements/gstcapsfilter.c:
7603 rename filter-caps to caps property
7605 2005-09-29 Tim-Philipp Müller <tim at centricular dot net>
7607 * gst/gstvalue.c: (gst_value_deserialize_fraction):
7608 More robust fraction string parsing.
7610 * docs/pwg/appendix-porting.xml:
7611 Mention gst_pad_use_explicit_caps() => gst_pad_use_fixed_caps()
7613 2005-09-29 Tim-Philipp Müller <tim at centricular dot net>
7615 * gst/gstcaps.c: (gst_caps_do_simplify):
7616 Thou shalt not free a structure and then continue using it
7617 in the next loop iteration.
7619 * check/gst/gstcaps.c: (check_fourcc_list), (test_simplify),
7621 Add test case for caps simplification.
7623 2005-09-29 Wim Taymans <wim@fluendo.com>
7625 * check/gst/gstbin.c: (GST_START_TEST):
7628 2005-09-29 Wim Taymans <wim@fluendo.com>
7630 * check/gst/gstbin.c: (GST_START_TEST):
7633 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init),
7634 (add_to_queue), (clear_queue), (reset_degree), (update_degree),
7635 (find_element), (gst_bin_sort_iterator_next),
7636 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
7637 (gst_bin_iterate_sorted), (gst_bin_element_set_state),
7638 (gst_bin_change_state), (gst_bin_dispose):
7639 A bin does not have a bus, it gets the bus from the parent.
7641 * gst/gstelement.c: (gst_element_requires_clock),
7642 (gst_element_provides_clock), (gst_element_is_indexable),
7643 (gst_element_is_locked_state), (gst_element_change_state),
7644 (gst_element_set_bus_func):
7647 * gst/gstpipeline.c: (gst_pipeline_class_init),
7648 (gst_pipeline_init), (gst_pipeline_provide_clock_func):
7649 The pipeline provides a bus.
7651 2005-09-28 Johan Dahlin <johan@gnome.org>
7653 * gst/gstmessage.c (gst_message_parse_state_changed): Use
7654 gst_structure_get_enum instead of gst_structure_get_int
7656 * gst/gststructure.c (gst_structure_get_enum): Impl.
7658 * gst/gststructure.h (gst_structure_get_enum): Add
7660 * docs/gst/gstreamer-sections.txt: Ditto
7662 * gst/gstmessage.c (gst_message_new_state_changed): Use
7663 GST_TYPE_STATE instead of G_TYPE_INT, mainly for language bindings
7664 which does introspection.
7665 Reviewed by Christian Schaller
7667 2005-09-28 Stefan Kost <ensonic@users.sf.net>
7669 * gst/gstinfo.c: (gst_debug_log_default):
7670 don't do dummy g_strdup()s
7671 * libs/gst/controller/gstcontroller.c:
7672 (on_object_controlled_property_changed),
7673 (gst_controlled_property_new), (gst_controller_new_valist),
7674 (gst_controller_new_list),
7675 (gst_controller_remove_properties_valist), (gst_controller_set),
7676 (gst_controller_get), (gst_controller_sync_values),
7677 (gst_controller_get_value_array), (_gst_controller_class_init),
7678 (gst_controller_get_type):
7679 * libs/gst/controller/gstcontroller.h:
7680 * libs/gst/controller/gstinterpolation.c:
7681 (gst_controlled_property_find_timed_value_node):
7682 convert // to /**/ comments
7684 2005-09-28 Wim Taymans <wim@fluendo.com>
7686 * gst/gstbus.c: (marshal_VOID__MINIOBJECT), (gst_bus_class_init),
7687 (gst_bus_post), (poll_func), (gst_bus_async_signal_func),
7688 (gst_bus_sync_signal_handler):
7690 Added async-message and sync-message signals to the bus.
7691 Added helper BusFunc to emit signals for all posted messages.
7693 * gst/gstmessage.c: (gst_message_type_get_name),
7694 (gst_message_type_to_quark), (gst_message_get_type):
7696 Register quarks for message names.
7698 2005-09-28 Stefan Kost <ensonic@users.sf.net>
7700 * docs/libs/gstreamer-libs-sections.txt:
7701 * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist),
7702 (gst_controller_new_list):
7703 * libs/gst/controller/gstcontroller.h:
7704 added another constructor for language bindings
7706 2005-09-28 Thomas Vander Stichele <thomas at apestaart dot org>
7708 * check/gst/gstpipeline.c: (GST_START_TEST), (gst_pipeline_suite):
7712 * gst/gstinfo.c: (_gst_debug_init):
7713 slightly more readable color for refcount debugging
7715 2005-09-28 Wim Taymans <wim@fluendo.com>
7717 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_provide_clock_func),
7718 (add_to_queue), (clear_queue), (reset_degree), (update_degree),
7719 (find_element), (gst_bin_sort_iterator_next),
7720 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
7721 (gst_bin_iterate_sorted), (gst_bin_element_set_state),
7722 (gst_bin_change_state), (gst_bin_dispose):
7723 Small doc fixes. get_clock -> provide_clock.
7725 * gst/gstelement.c: (gst_element_class_init),
7726 (gst_element_provides_clock), (gst_element_provide_clock),
7727 (gst_element_get_clock), (gst_element_commit_state),
7728 (gst_element_lost_state):
7730 Make get/set_clock() symetric. Add provide_clock vmethod since
7731 that is actually what this function does.
7733 * gst/gstpipeline.c: (gst_pipeline_class_init),
7734 (gst_pipeline_change_state), (gst_pipeline_provide_clock_func),
7735 (gst_pipeline_get_clock):
7736 get_clock -> provide_clock.
7738 2005-09-28 Andy Wingo <wingo@pobox.com>
7740 * gst/base/gstbasesrc.c (gst_base_src_unlock): Comment a bit in
7741 lieu of real docs...
7743 * gst/elements/gstfdsrc.c: Cleaned up a bit.
7745 2005-09-28 Tim-Philipp Müller <tim at centricular dot net>
7747 * gst/elements/gstcapsfilter.c:
7748 * gst/elements/gstfakesink.c:
7749 * gst/elements/gstfakesrc.c:
7750 * gst/elements/gstfdsink.c:
7751 * gst/elements/gstfdsrc.c:
7752 * gst/elements/gstfilesink.c:
7753 * gst/elements/gstfilesrc.c:
7754 * gst/elements/gstidentity.c:
7755 * gst/elements/gsttee.c:
7756 * gst/elements/gsttypefindelement.c:
7757 Make element details static.
7759 2005-09-28 Wim Taymans <wim@fluendo.com>
7761 * gst/gstbin.c: (add_to_queue), (clear_queue), (reset_outdegree),
7762 (update_outdegree), (find_element), (gst_bin_sort_iterator_next),
7763 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
7764 (gst_bin_iterate_sorted), (gst_bin_element_set_state),
7765 (gst_bin_change_state), (gst_bin_dispose):
7766 Some documentation updates.
7767 Clean up dispose handlers.
7769 * gst/gstobject.c: (gst_object_ref), (gst_object_unref):
7770 * gst/gstpad.c: (gst_pad_dispose):
7771 Clean up dispose handler.
7773 * gst/gstpipeline.c: (gst_pipeline_change_state):
7774 Removed spurious UNLOCK.
7776 2005-09-27 Stefan Kost <ensonic@users.sf.net>
7778 * docs/gst/gstreamer-sections.txt:
7779 * gst/base/gstbasesrc.h:
7784 * gst/gstpipeline.c:
7785 * gst/gstpipeline.h:
7788 added two new functions to the docs
7789 documents all undocumented GstXXXFlags
7790 completed some incomplete docs
7792 2005-09-27 Thomas Vander Stichele <thomas at apestaart dot org>
7794 * gst/gstbin.c: (gst_bin_dispose):
7795 * gst/gstelement.c: (gst_element_dispose):
7796 remove now useless and leaky resurrection code in dispose
7797 * gst/base/gstbasesrc.c: (gst_base_src_init):
7798 * gst/gstelementfactory.c: (gst_element_factory_create):
7799 * gst/gstobject.c: (gst_object_set_parent):
7802 2005-09-27 Wim Taymans <wim@fluendo.com>
7804 * docs/design/part-TODO.txt:
7807 * gst/gstbin.c: (add_to_queue), (clear_queue), (reset_outdegree),
7808 (update_outdegree), (find_element), (gst_bin_sort_iterator_next),
7809 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
7810 (gst_bin_iterate_sorted), (gst_bin_element_set_state),
7811 (gst_bin_change_state):
7813 Remove element variable, we keep element info in the iterator now.
7815 2005-09-27 Andy Wingo <wingo@pobox.com>
7817 * libs/gst/dataprotocol/dataprotocol.c: Fix error-checking return
7820 2005-09-27 Wim Taymans <wim@fluendo.com>
7822 * check/gst/gstbin.c: (GST_START_TEST):
7823 Enable check that works now.
7825 * gst/gstbin.c: (add_to_queue), (clear_queue), (reset_outdegree),
7826 (update_outdegree), (find_element), (gst_bin_sort_iterator_next),
7827 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
7828 (gst_bin_iterate_sorted), (gst_bin_element_set_state),
7829 (gst_bin_change_state):
7831 Redid the state change algorithm using a topological sort algo.
7832 Handles all cases correctly.
7833 Exposed iterator for state change order.
7836 Temp storage for state changes. Need to get rid of this soon.
7838 2005-09-27 Wim Taymans <wim@fluendo.com>
7840 * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_do_push):
7841 * gst/gstutils.c: (intersect_caps_func), (gst_pad_proxy_getcaps),
7842 (link_fold_func), (gst_pad_proxy_setcaps):
7843 Leak fixes, the fold functions need to unref the passed object and
7844 _get_parent_*() returns ref to parent.
7846 2005-09-27 Tim-Philipp Müller <tim at centricular dot net>
7848 * check/gst/gstbuffer.c: (test_make_writable):
7849 Plug leak in test case and fix 'make check-valgrind'
7851 2005-09-27 Tim-Philipp Müller <tim at centricular dot net>
7853 * gst/gstbuffer.c: (gst_subbuffer_init):
7854 Set READONLY flag on subbuffers, so that gst_buffer_make_writable()
7855 works correctly in all circumstances (we could have just copied
7856 the parent buffer's readonly flag, but conceptually it seems
7857 cleaner to mark all subbuffers as read-only). (based on patch
7858 by Alessandro Decina, #314710).
7860 * check/gst/gstbuffer.c: (create_read_only_buffer),
7861 (test_make_writable), (test_subbuffer_make_writable),
7863 Add some tests for gst_buffer_make_writable().
7865 2005-09-27 Wim Taymans <wim@fluendo.com>
7867 * gst/gstbin.c: (bin_element_is_semi_sink), (gst_bin_change_state):
7868 use gst_object_has_ancestor().
7870 * gst/gstobject.c: (gst_object_has_ancestor):
7872 gst_object_has_ancestor() copied from gstbin.c as it is a
7875 * tests/instantiate/create.c: (create_all_elements):
7876 * tests/lat.c: (handoff_src), (handoff_sink):
7877 * tests/sched/runxml.c: (main):
7878 * tests/seeking/seeking1.c: (main):
7879 * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
7881 Fix compilation of some tests.
7883 2005-09-27 Tim-Philipp Müller <tim at centricular dot net>
7886 Remove comment. GST_TYPE_G_ERROR is here to stay,
7887 G_TYPE_ERROR has been WONTFIX'ed by the GLib folks
7890 2005-09-26 Wim Taymans <wim@fluendo.com>
7892 * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
7893 Added check that shows error in state change order.
7895 2005-09-26 Wim Taymans <wim@fluendo.com>
7897 * gst/gstbin.c: (gst_bin_change_state):
7898 Make state change function use 3 queues again, we were
7899 adding elements in the wrong order.
7901 * gst/gstghostpad.c: (gst_ghost_pad_do_unlink):
7904 * gst/gstpad.c: (gst_pad_dispose):
7905 Added some debug info first.
7907 2005-09-26 Tim-Philipp Müller <tim at centricular dot net>
7909 * docs/design/draft-push-pull.txt:
7910 * docs/design/part-events.txt:
7911 * docs/design/part-overview.txt:
7912 * docs/design/part-scheduling.txt:
7913 Replace all _pull_region() with _pull_range()
7915 2005-09-26 Andy Wingo <wingo@pobox.com>
7917 * gst/gstvalue.c (_gst_value_initialize): Better fakeout.
7919 * check/gst-libs/controller.c: Update for controller api change.
7922 * tests/Makefile.am:
7923 * tests/memchunk: Remove memchunk benchmark stuff, this is taken
7924 over by GLib bug 118439.
7926 * gst/base/gstbasesink.c (gst_base_sink_wait): Factor out the wait
7927 routines to a function.
7929 * docs/libs/gstreamer-libs-sections.txt: I am a good person today.
7931 * libs/gst/controller/gsthelper.c:
7932 * libs/gst/controller/gstcontroller.h (gst_controller_sync_values)
7933 (gst_object_sync_values): Renamed from sink_values. Ugh.
7935 * libs/gst/controller/gsthelper.c: Update for __gst_controller_key.
7937 * libs/gst/controller/gstcontroller.c (__gst_controller_key):
7938 Renamed from controller_key, as it is exported.
7940 * gst/gstvalue.c (_gst_value_initialize): Fake out the compiler.
7942 2005-09-26 Thomas Vander Stichele <thomas at apestaart dot org>
7947 * gst/gstpadtemplate.h:
7950 * gst/gstqueryutils.c:
7951 * gst/gstqueryutils.h:
7952 remove queryutils headers after moving the two used functions
7953 to gstquery. also fixes build problem for gstsiddec
7955 2005-09-26 Michael Smith <msmith@fluendo.com>
7957 * tools/gst-launch.1.in:
7958 Correct documentation in manpage of debug syntax
7960 2005-09-26 Wim Taymans <wim@fluendo.com>
7962 * gst/base/gstbasesrc.c: (gst_base_src_get_range),
7963 (gst_base_src_is_seekable), (gst_base_src_change_state):
7964 Some more debugging info.
7966 2005-09-25 Stefan Kost <ensonic@users.sf.net>
7968 * docs/gst/gstreamer-sections.txt:
7969 * gst/base/gstbasetransform.h:
7973 2005-09-25 Stefan Kost <ensonic@users.sf.net>
7975 * docs/gst/.cvsignore:
7976 * docs/gst/tmpl/.cvsignore:
7977 * docs/gst/tmpl/gstpipeline.sgml:
7978 * docs/gst/tmpl/gstplugin.sgml:
7979 * gst/gstpipeline.c:
7982 inlined the last two docs files
7983 removed the tmpl directory from cvs (no more conflicts here!)
7985 2005-09-25 Stefan Kost <ensonic@users.sf.net>
7987 * docs/gst/gstreamer-sections.txt:
7988 * docs/gst/tmpl/.cvsignore:
7989 * docs/gst/tmpl/gstpad.sgml:
7990 * docs/gst/tmpl/gstpadtemplate.sgml:
7992 * gst/gstpad.c: (gst_pad_class_init), (gst_pad_dispose),
7993 (gst_pad_finalize), (gst_pad_set_pad_template):
7995 * gst/gstpadtemplate.c: (gst_pad_template_get_type),
7996 (gst_pad_template_class_init), (gst_pad_template_init),
7997 (gst_pad_template_dispose), (name_is_valid),
7998 (gst_static_pad_template_get), (gst_pad_template_new),
7999 (gst_static_pad_template_get_caps), (gst_pad_template_get_caps),
8000 (gst_pad_template_pad_created):
8001 * gst/gstpadtemplate.h:
8002 inlined two more docs
8003 factored gstpadtemplate out of gstpad
8005 2005-09-24 Tim-Philipp Müller <tim at centricular dot net>
8007 * check/gst/gstbin.c: (test_children_state_change_order_flagged_sink),
8008 (test_children_state_change_order_semi_sink):
8009 Fix test case: we can't rely on a fixed state change order when
8010 going from READY => PAUSED because the sink might commit its
8011 new state first when the first buffer created by the source
8012 reaches the sink before the source has finished its change state.
8013 (Test case still fails at times, see #316856, comment 5 onwards)
8015 2005-09-24 Wim Taymans <wim@fluendo.com>
8017 * docs/design/part-events.txt:
8018 * docs/design/part-gstbus.txt:
8019 * docs/design/part-gstpipeline.txt:
8020 * docs/design/part-messages.txt:
8021 * docs/design/part-overview.txt:
8022 * docs/design/part-segments.txt:
8029 * gst/gstiterator.c:
8030 Various documentation updates.
8032 2005-09-24 Thomas Vander Stichele <thomas at apestaart dot org>
8035 Well, that's embarassing. Luckily we weren't using
8036 GST_CLOCK_DIFF anywhere.
8038 2005-09-23 Thomas Vander Stichele <thomas at apestaart dot org>
8040 * common/gtk-doc.mak:
8041 don't fail on building XML, FC4 slave shows a bunch of doc
8042 missing bits that I don't get
8044 * gst/gstpipeline.c:
8045 * gst/gststructure.c:
8048 2005-09-23 Tim-Philipp Müller <tim at centricular dot net>
8050 * docs/design/part-gstbin.txt:
8051 * docs/design/part-gstbus.txt:
8053 Add blurb about how the bus goes into flushing mode and
8054 drops all messages when its bin goes from READY into NULL
8057 2005-09-23 Thomas Vander Stichele <thomas at apestaart dot org>
8059 * docs/gst/gstreamer-sections.txt:
8060 * gst/gststructure.c: (gst_structure_get_clock_time):
8061 * gst/gststructure.h:
8062 add a method to get a GstClockTime out of a structure
8064 2005-09-23 Tim-Philipp Müller <tim at centricular dot net>
8066 * check/gst/gstbin.c: (test_children_state_change_order_flagged_sink),
8067 (test_children_state_change_order_semi_sink), (gst_bin_suite):
8068 Added test to check state change order in bins (can still be made
8069 to fail here under heavy disk load; bails out with 'Push on pad
8070 fakesink:sink0, but it was not activated in push mode').
8072 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_change_state):
8073 Fix state change order when there is only a semi sink (#316856)
8075 * gst/gstbus.c: (gst_bus_class_init):
8076 Use _class_peek_parent(), not _class_ref(); fix docs to say
8077 'default main context' instead of 'mainloop' where that is
8080 * gst/gstelement.c: (gst_element_commit_state),
8081 (gst_element_set_state):
8082 Fix typos in debug messages
8084 2005-09-23 Thomas Vander Stichele <thomas at apestaart dot org>
8087 * gst/gstpad.c: (gst_pad_class_init), (gst_pad_chain):
8088 * gst/gstpluginfeature.c:
8091 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
8092 change an assert into an error until it gets fixed properly
8094 2005-09-23 Stefan Kost <ensonic@users.sf.net>
8096 * docs/gst/gstreamer-sections.txt:
8097 * docs/gst/tmpl/.cvsignore:
8098 * docs/gst/tmpl/gstelement.sgml:
8099 * docs/gst/tmpl/gstinfo.sgml:
8100 * docs/gst/tmpl/gstobject.sgml:
8105 * gst/gstobject.c: (gst_object_class_init):
8107 inlined 3 more biiiig doc files and added some missing docs on the fly
8109 2005-09-23 Thomas Vander Stichele <thomas at apestaart dot org>
8111 * check/gst/.cvsignore:
8112 * check/gst/gstplugin.c: (GST_START_TEST), (gst_plugin_suite):
8113 * gst/gstregistryxml.c: (load_plugin),
8114 (gst_registry_xml_save_plugin):
8115 put back source in registry. add checks for find_plugin.
8116 * testsuite/states/bin.c: (assert_state), (empty_bin),
8117 (test_adding_one_element), (main):
8118 * testsuite/states/locked.c: (main):
8119 some compile/run fixes
8121 2005-09-22 Thomas Vander Stichele <thomas at apestaart dot org>
8123 * check/gst/gstvalue.c: (GST_START_TEST):
8124 fix leaks in the test itself
8126 2005-09-22 Wim Taymans <wim@fluendo.com>
8128 * gst/base/gstbasesink.c: (gst_base_sink_class_init),
8129 (gst_base_sink_send_event), (gst_base_sink_peer_query),
8130 (gst_base_sink_query):
8131 Prepare for more accurate position reporting and query
8134 * gst/gstelement.c: (gst_element_send_event),
8135 (gst_element_set_state):
8138 2005-09-22 Wim Taymans <wim@fluendo.com>
8140 * gst/gstquery.c: (gst_query_new_segment), (gst_query_set_segment),
8141 (gst_query_parse_segment):
8144 Add segment query for future use.
8146 2005-09-22 Wim Taymans <wim@fluendo.com>
8148 * gst/gstbin.c: (gst_bin_add_func):
8149 Some more debug info.
8151 * gst/gstelement.c: (gst_element_send_event):
8155 Don't know how flags got broken.
8160 2005-09-22 Tim-Philipp Müller <tim at centricular dot net>
8162 * check/gst/gstvalue.c: (test_date), (gst_value_suite):
8163 Add simplistic test suite for GST_TYPE_DATE serialisation and
8166 2005-09-22 Tim-Philipp Müller <tim at centricular dot net>
8168 * docs/gst/gstreamer-sections.txt:
8169 * gst/gststructure.c: (gst_structure_set_valist),
8170 (gst_structure_get_date):
8171 * gst/gststructure.h:
8172 * gst/gstvalue.c: (gst_value_set_date), (gst_value_get_date),
8173 (gst_date_copy), (gst_value_compare_date),
8174 (gst_value_serialize_date), (gst_value_deserialize_date),
8175 (gst_value_transform_date_string),
8176 (gst_value_transform_string_date), (_gst_value_initialize):
8178 Add GST_TYPE_DATE, a boxed type that wraps GDate, and the usual
8179 bunch of utility functions along with a hack that checks that
8180 developers don't accidentally use G_TYPE_DATE where GST_TYPE_DATE
8181 is required. Part of the grand scheme in #170777.
8183 2005-09-22 Andy Wingo <wingo@pobox.com>
8185 * gst/gstconfig.h.in: Psych out gtk-doc.
8187 * docs/gst/gstreamer-sections.txt: Add GST_HAVE_GLIB_2_8.
8189 * check/Makefile.am (check_PROGRAMS): Add gstplugin to the tests.
8191 * tools/gst-inspect.c (print_element_list): Plug some
8192 inconsequential leaks.
8194 * gst/gstregistry.c (gst_registry_get_default): Doc.
8196 * check/gst/gstplugin.c:
8197 * gst/gsttypefindfactory.c (gst_type_find_factory_call_function):
8198 * gst/gstelementfactory.c (gst_element_factory_create):
8199 * gst/gstindexfactory.c (gst_index_factory_create): Update for
8202 * gst/gstpluginfeature.c (gst_plugin_feature_list_free): Doc.
8203 (gst_plugin_feature_load): Doc, don't eat refs.
8205 * gst/gstplugin.c (gst_plugin_load): Doc, don't eat refs.
8206 (gst_plugin_list_free): Doc.
8207 (gst_plugin_load_file): Doc updates.
8209 * gst/gstbuffer.c (gst_buffer_get_caps): Like all our _get
8210 accessors returning refcounted objects, return a ref.
8212 * check/gst/gstbuffer.c (GST_START_TEST): Use refcount-idempotent
8213 accessor for caps. IDEMPOTENCE. Oh yes.
8215 2005-09-21 Francis Labonte <francis_labonte at hotmail dot com>
8217 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
8219 * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
8220 (_gst_debug_register_funcptr):
8221 Add mutex to serialise access to the hash table with
8222 the function pointer => function name string mapping;
8223 make that hash table static scope (#316809).
8225 * gst/registries/.cvsignore:
8226 Remove left-over file.
8228 2005-09-21 Tim-Philipp Müller <tim at centricular dot net>
8230 * docs/pwg/appendix-porting.xml:
8231 And something about newsegment events and caps-on-buffers to
8232 the porting guide (feel free to improve).
8234 2005-09-21 Andy Wingo <wingo@pobox.com>
8236 * check/gst/gstutils.c (test_buffer_probe_n_times): Add tests for
8237 data and event probes on the same pad.
8238 (test_buffer_probe_once): Test that removing probes from within
8239 the probe functions works.
8241 2005-09-21 Andy Wingo <wingo@pobox.com>
8243 * check/gst/gstutils.c: New file.
8244 (test_buffer_probe_n_times): A simple buffer probe test. More to
8247 * gst/gstutils.c (gst_pad_add_buffer_probe): Connect to
8248 have-data::buffer, not have-data.
8249 (gst_pad_add_event_probe): Likewise for have-data::event.
8250 (gst_pad_add_data_probe): More docs. The part about 'resolving the
8251 peer' isn't quite right yet though.
8252 (gst_pad_remove_buffer_probe, gst_pad_remove_event_probe)
8253 (gst_pad_remove_data_probe): Change to take the guint handler_id
8254 as their arg, not the function+data, which is more glib-like.
8256 * gst/gstpad.c (gst_pad_emit_have_data_signal): Add a detail to
8257 the signal emission to indicate if the data is a buffer or an
8259 (gst_pad_get_type): Initialize buffer and event quarks.
8260 (gst_pad_class_init): have-data is now a detailed signal, yes it
8263 2005-09-21 Tim-Philipp Müller <tim at centricular dot net>
8265 * gst/base/gstbasetransform.c: (gst_base_transform_transform_size):
8266 * gst/gstutils.c: (gst_util_set_value_from_string),
8267 (gst_util_set_object_arg):
8268 Don't put functional code in g_return_if_fail() or
8269 g_return_val_if_fail() statements, otherwise things will
8270 break when G_DISABLE_CHECKS is defined during compilation.
8272 2005-09-21 Stefan Kost <ensonic@users.sf.net>
8274 * docs/gst/tmpl/.cvsignore:
8275 * docs/gst/tmpl/gstvalue.sgml:
8278 inlied another one and added some obvious docs
8280 2005-09-21 Wim Taymans <wim@fluendo.com>
8282 * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
8283 (gst_fdsrc_init), (gst_fdsrc_start), (gst_fdsrc_stop),
8284 (gst_fdsrc_unlock), (gst_fdsrc_set_property),
8285 (gst_fdsrc_get_property), (gst_fdsrc_create):
8286 * gst/elements/gstfdsrc.h:
8287 Properly implement fdsrc. Removed signal and timeout,
8288 better implemented somewhere else.
8290 2005-09-21 Stefan Kost <ensonic@users.sf.net>
8292 * docs/gst/tmpl/.cvsignore:
8293 * docs/gst/tmpl/gstimplementsinterface.sgml:
8294 * gst/gstinterface.c:
8297 2005-09-21 Stefan Kost <ensonic@users.sf.net>
8299 * docs/gst/gstreamer-sections.txt:
8300 * docs/gst/tmpl/.cvsignore:
8301 * docs/gst/tmpl/gstenumtypes.sgml:
8302 remove obsolete doc file
8304 2005-09-21 David Schleef <ds@schleef.org>
8306 * gst/gstelementfactory.c: (gst_element_factory_make): Drink a
8307 little beer, fix a little leak.
8309 2005-09-21 Stefan Kost <ensonic@users.sf.net>
8311 * docs/gst/gstreamer-docs.sgml:
8312 * docs/gst/gstreamer-sections.txt:
8313 * docs/gst/tmpl/.cvsignore:
8318 * gst/gstindex.c: (gst_index_class_init):
8320 * gst/gstindexfactory.c: (gst_index_factory_get_type),
8321 (gst_index_factory_class_init), (gst_index_factory_init),
8322 (gst_index_factory_finalize), (gst_index_factory_new),
8323 (gst_index_factory_destroy), (gst_index_factory_find),
8324 (gst_index_factory_create), (gst_index_factory_make):
8325 * gst/gstindexfactory.h:
8326 * gst/gstpluginfeature.c:
8327 * gst/gstpluginfeature.h:
8328 * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist):
8329 more docs inlined, splitted gstindex.{c,h}
8331 2005-09-20 Thomas Vander Stichele <thomas at apestaart dot org>
8333 * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist):
8336 2005-09-20 Tim-Philipp Müller <tim at centricular dot net>
8338 * gst/elements/gstfilesink.c: (gst_file_sink_init):
8339 Set sync to FALSE by default.
8341 2005-09-20 Wim Taymans <wim@fluendo.com>
8343 * gst/base/gstbasesink.c: (gst_base_sink_class_init),
8344 (gst_base_sink_init):
8345 Make sync property settable from subclass.
8347 * gst/elements/gstfakesink.c: (gst_fake_sink_init),
8348 (gst_fake_sink_change_state):
8349 Set sync to FALSE by default.
8351 2005-09-20 Wim Taymans <wim@fluendo.com>
8353 * gst/gstbus.c: (poll_func), (poll_timeout), (gst_bus_poll):
8354 * tools/gst-launch.c: (main):
8355 The timeout handler should have lower priority than the source
8356 so we don't timeout before popping a message with 0 timeout.
8357 Dump error messages after failed state change.
8359 2005-09-20 Tim-Philipp Müller <tim at centricular dot net>
8361 * tools/gst-inspect.c: (print_element_properties_info):
8364 2005-09-20 Thomas Vander Stichele <thomas at apestaart dot org>
8366 * check/gst/gstevent.c:
8367 * gst/elements/gstfakesink.c:
8368 * gst/elements/gstfakesink.h:
8369 remove the sync property from fakesink.
8370 has the side effect of setting sync TRUE
8371 for fakesink, which is a change. Anyone who knows how
8372 to fix this nicely in a GObject-y way, feel free.
8374 2005-09-20 Stefan Kost <ensonic@users.sf.net>
8376 * docs/gst/gstreamer-docs.sgml:
8377 remove probe refsection
8379 2005-09-20 Stefan Kost <ensonic@users.sf.net>
8381 * check/Makefile.am:
8382 disable valgrinding the controller test again
8383 * docs/gst/gstreamer-sections.txt:
8384 update for api-changes
8386 2005-09-20 Wim Taymans <wim@fluendo.com>
8388 * gst/base/gstbasesink.c: (gst_base_sink_class_init),
8389 (gst_base_sink_set_property), (gst_base_sink_get_property),
8390 (gst_base_sink_do_sync):
8391 * gst/base/gstbasesink.h:
8392 Added sync property to basesink to disable clock sync.
8394 2005-09-20 Andy Wingo <wingo@pobox.com>
8396 * gst/gstelementfactory.c (gst_element_factory_create): Avoid
8397 eating the caller's refcount.
8399 * gst/gstobject.h (GST_OBJECT_REFCOUNT)
8400 (GST_OBJECT_REFCOUNT_VALUE): Conditionally fondle the right
8403 * gst/gstconfig.h.in (GST_HAVE_GLIB_2_8):
8404 * configure.ac (GST_HAVE_GLIB_2_8_DEFINE): Make the availability
8405 of GLib 2.8 public, so we can know which refcount to check in
8408 * gst/gstobject.c: Use the GST_HAVE_GLIB_2_8 define.
8409 (gst_object_init): Only set the gst refcount if we're going ahead
8410 with the refcount hack.
8412 2005-09-20 Stefan Kost <ensonic@users.sf.net>
8414 * check/gst-libs/controller.c: (plugin_init), (GST_START_TEST):
8415 * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist):
8416 more leaks plumbed, added more debug-logging
8420 2005-09-20 Thomas Vander Stichele <thomas at apestaart dot org>
8423 remove include of gstmemchunk.h
8425 2005-09-20 Thomas Vander Stichele <thomas at apestaart dot org>
8427 * gst/gstclock.c: (_gst_clock_id_free):
8428 Commit from the Political Party For More Atomic CVS Commits,
8429 so that people don't waste too much of their day fishing
8430 out obvious leaks out of massive commits.
8431 Oh, and fix a pretty damn obvious leak in the memchunk
8434 2005-09-20 Stefan Kost <ensonic@users.sf.net>
8436 * check/Makefile.am:
8437 * check/gst-libs/controller.c: (plugin_init), (GST_START_TEST):
8438 plug mem-leak, re-add to valgrindable tests
8440 2005-09-20 Thomas Vander Stichele <thomas at apestaart dot org>
8443 unbreak the build for those who have chronic arthritis
8444 and typing "make check" is just too taxing on the hands
8446 2005-09-20 Andy Wingo <wingo@pobox.com>
8448 * gst/gst.h: Re-add marshal to gst.h's include list -- if we
8449 really want it out, you should fix plugins at the same time.
8451 2005-09-19 Stefan Kost <ensonic@users.sf.net>
8454 * docs/gst/gstreamer-sections.txt:
8456 added missing symbols to api docs
8457 disable ref-count hack if we have glib >= 2.8
8459 2005-09-19 David Schleef <ds@schleef.org>
8461 * docs/gst/Makefile.am: Ignore a few more internal headers
8462 * docs/gst/gstreamer-docs.sgml: Remove old sections
8463 * docs/gst/gstreamer-sections.txt: Remove old sections
8464 * docs/gst/tmpl/gstobject.sgml: update
8465 * docs/gst/tmpl/gstplugin.sgml: update
8466 * docs/gst/tmpl/gstpluginfeature.sgml: update
8467 * docs/random/ds/0.9-suggested-changes: update.
8468 * gst/Makefile.am: remove memchunk and trashstack, since they're
8470 * gst/gst.c: (gst_deinit): rename gst_registry_deinit to _cleanup
8471 * gst/gst.h: don't include some headers
8472 * gst/gstchildproxy.c: add gstmarshal.h
8473 * gst/gstclock.c: Don't use memchunks
8474 * gst/gstminiobject.c: Add some docs
8475 * gst/gstobject.c: remove DESTROYED flag, since it's redundant
8476 * gst/gstobject.h: same
8477 * gst/gstplugin.c: include gstmacros.h
8478 * gst/gstplugin.h: don't include gstmacros.h, since it's private
8479 * gst/gstquery.c: don't use memchunks
8480 * gst/gstregistry.c: rename gst_registry_deinit()
8481 * gst/gstregistry.h: same
8483 2005-09-19 David Schleef <ds@schleef.org>
8485 * docs/libs/gstreamer-libs-docs.sgml: Remove docs for getbits
8486 * docs/libs/gstreamer-libs-sections.txt:
8487 * docs/libs/tmpl/gstgetbits.sgml:
8488 * docs/libs/tmpl/gstputbits.sgml:
8490 2005-09-19 Tim-Philipp Müller <tim at centricular dot net>
8492 * win32/gstenumtypes.c:
8493 * win32/gstenumtypes.h:
8496 2005-09-19 Wim Taymans <wim@fluendo.com>
8498 * gst/gstpipeline.c: (do_pipeline_seek), (gst_pipeline_send_event):
8499 Automatically PAUSE and RESUME a pipeline when a flushing seek
8502 2005-09-19 Andy Wingo <wingo@pobox.com>
8504 * gst/gstregistry.h: Spacing fixen.
8506 2005-09-19 Wim Taymans <wim@fluendo.com>
8508 * gst/base/gstbasesrc.c: (gst_base_src_change_state):
8509 Handle state change failure more correctly.
8511 2005-09-19 Thomas Vander Stichele <thomas at apestaart dot org>
8513 * check/Makefile.am:
8514 * check/pipelines/cleanup.c: (run_pipeline):
8515 * check/pipelines/simple_launch_lines.c: (run_pipeline),
8517 enable cleanup again after fixing the leak
8519 some more info on docs
8521 2005-09-19 Thomas Vander Stichele <thomas at apestaart dot org>
8523 * check/Makefile.am:
8524 re-enable tests now that leaks are plugged
8526 * check/gst/gstbin.c:
8527 * check/gst/gstpipeline.c:
8528 add some more tests while fixing leaks
8530 make sure binaries are uptodate when valgrinding/gdbing
8532 * gst/gstelementfactory.c:
8533 remove a ref too many, and add a FIXME for when we get
8534 round to disposing of classes
8536 fix the refcounting when loading a plugin from a file and
8537 the code pretends that the pointer is the same even though
8538 of course it can change
8539 * gst/gstpluginfeature.c:
8540 unref plugins marked cached (a bit confusing as a name)
8541 as the docs state should be done
8542 various doc additions to explain refcounting
8543 * gst/gstregistry.c:
8544 * gst/gstregistryxml.c:
8547 2005-09-19 Wim Taymans <wim@fluendo.com>
8549 * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
8550 * check/gst/gstbus.c: (message_func_eos), (message_func_app),
8551 (send_messages), (GST_START_TEST), (gstbus_suite):
8552 * check/gst/gstpipeline.c: (GST_START_TEST):
8553 * check/pipelines/cleanup.c: (run_pipeline):
8554 * check/pipelines/simple_launch_lines.c: (run_pipeline),
8556 * gst/gstbus.c: (gst_bus_have_pending), (gst_bus_source_prepare),
8557 (gst_bus_source_check), (gst_bus_source_dispatch),
8558 (gst_bus_create_watch), (gst_bus_add_watch_full),
8559 (gst_bus_add_watch), (poll_func), (poll_timeout), (gst_bus_poll):
8561 * tools/gst-launch.c: (event_loop):
8562 * tools/gst-md5sum.c: (event_loop):
8563 GstBusHandler -> GstBusFunc, return value has the same meaning as
8564 any other GSource (FALSE == remove source).
8565 _add_watch() and _add_watch_full() now take a MessageType mask to
8566 only handle specific types of messages.
8567 _poll() returns the GstMessage instead of the message type to avoid
8569 _have_pending() takes a MessageType mask now too.
8570 Added testsuite for multiple bus watches.
8571 Fix testsuites and applications for new bus API.
8573 2005-09-19 Thomas Vander Stichele <thomas at apestaart dot org>
8575 * check/Makefile.am:
8576 mark a bunch of the tests as to fix until we fix them
8578 2005-09-18 Thomas Vander Stichele <thomas at apestaart dot org>
8581 use GST_PLUGIN settings for valgrind tests as well, so we're
8582 valgrinding the correct thing
8583 * gst/gst.c: (init_post):
8586 2005-09-18 Thomas Vander Stichele <thomas at apestaart dot org>
8588 * gst/gst.c: (init_post), (gst_deinit):
8589 * gst/gstelementfactory.c: (gst_element_factory_class_init),
8590 (gst_element_factory_finalize), (gst_element_factory_cleanup):
8591 * gst/gstindex.c: (gst_index_factory_class_init),
8592 (gst_index_factory_finalize):
8593 * gst/gstobject.c: (gst_object_dispose):
8594 * gst/gstplugin.c: (gst_plugin_finalize), (gst_plugin_class_init),
8595 (gst_plugin_load_file), (gst_plugin_desc_free):
8596 * gst/gstpluginfeature.c: (gst_plugin_feature_class_init),
8597 (gst_plugin_feature_finalize):
8598 * gst/gstregistry.c: (gst_registry_class_init),
8599 (gst_registry_init), (gst_registry_finalize),
8600 (gst_registry_get_default), (gst_registry_deinit):
8601 * gst/gstregistry.h:
8602 * gst/gstregistryxml.c: (load_feature), (load_plugin):
8603 various cleanups and memleak plugging. make valgrind is happy now.
8605 2005-09-18 Thomas Vander Stichele <thomas at apestaart dot org>
8608 add a check-valgrind target
8610 2005-09-18 David Schleef <ds@schleef.org>
8612 * tools/gst-inspect.c: Revert the GOption code.
8614 2005-09-17 David Schleef <ds@schleef.org>
8616 * check/Makefile.am: Fix environment variables.
8617 * check/gst/gstplugin.c: Fix for API changes.
8618 * tools/gst-inspect.c: Fix for API changes.
8619 * tools/gst-xmlinspect.c: Fix for API changes.
8620 * gst/gstelementfactory.c:
8623 * gst/gstpluginfeature.c:
8624 * gst/gstpluginfeature.h:
8625 * gst/gstregistry.c:
8626 * gst/gstregistry.h:
8627 * gst/gstregistryxml.c:
8628 * gst/gsttypefind.c:
8629 * gst/gsttypefindfactory.c:
8630 * gst/indexers/gstfileindex.c:
8631 * gst/indexers/gstmemindex.c:
8632 * gst/schedulers/Makefile.am:
8633 Change registry to keep track of both plugins and features,
8634 removing the feature tracking from plugins themselves.
8636 2005-09-16 Thomas Vander Stichele <thomas at apestaart dot org>
8638 * check/Makefile.am:
8639 * tools/gst-register.1.in:
8642 2005-09-15 David Schleef <ds@schleef.org>
8644 * check/gst/gstplugin.c:
8645 * gst/gstelementfactory.c:
8647 * gst/gstpluginfeature.c:
8648 * gst/gstregistry.c:
8649 Getting tired of debugging. Disabled all the unreffing of
8650 plugins and features, which fixes the segfaults, but of
8651 course leaks like crazy. At least playbin works.
8653 2005-09-15 David Schleef <ds@schleef.org>
8655 * check/gst/gstplugin.c: (register_check_elements),
8656 (GST_START_TEST), (peek), (suggest), (gst_plugin_suite):
8658 * gst/elements/gsttypefindelement.c: Fix refcounting.
8659 * gst/gsttypefind.c:
8660 * gst/gsttypefindfactory.c:
8661 * gst/gsttypefindfactory.h:
8663 2005-09-15 David Schleef <ds@schleef.org>
8665 * gst/gstindex.c: get refcounting correct.
8666 * gst/gstregistry.c: Handle the case where a feature/plugin is
8669 2005-09-15 David Schleef <ds@schleef.org>
8671 * check/Makefile.am:
8672 * check/gst/gstplugin.c: Add test
8673 * gst/gstplugin.c: Fix problems noticed by testsuite
8675 * gst/gstregistry.c:
8676 * gst/gstregistry.h:
8678 2005-09-15 David Schleef <ds@schleef.org>
8680 * gst/gstplugin.c: Implement semi-decent recounting and locking
8681 in plugins and plugin features.
8683 * gst/gstpluginfeature.c:
8684 * gst/gstpluginfeature.h:
8685 * gst/gstregistry.c:
8687 2005-09-15 Michael Smith <msmith@fluendo.com>
8689 * gst/gstregistry.c: (gst_registry_get_feature_list):
8690 Implement this. Makes oggdemux work; decodebin still broken.
8692 2005-09-14 David Schleef <ds@schleef.org>
8694 * configure.ac: Add -no-undefined to GST_PLUGIN_LDFLAGS (bug
8696 * gst/base/Makefile.am: Add -no-undefined to LDFLAGS for libs
8697 * gst/check/Makefile.am:
8698 * libs/gst/controller/Makefile.am:
8699 * libs/gst/dataprotocol/Makefile.am:
8701 2005-09-14 David Schleef <ds@schleef.org>
8703 * configure.ac: Remove getbits library. Nothing uses it, and
8704 it should be in something like liboil if someone did want
8706 * libs/gst/Makefile.am:
8707 * libs/gst/getbits/Makefile.am:
8708 * libs/gst/getbits/gbtest.c:
8709 * libs/gst/getbits/getbits.c:
8710 * libs/gst/getbits/getbits.h:
8711 * libs/gst/getbits/gstgetbits_generic.c:
8712 * libs/gst/getbits/gstgetbits_i386.s:
8713 * libs/gst/getbits/gstgetbits_inl.h:
8715 2005-09-14 David Schleef <ds@schleef.org>
8717 * gst/Makefile.am: Dist glib-compat.h
8719 2005-09-14 David Schleef <ds@schleef.org>
8721 * configure.ac: Remove gst/registries, since it's no longer used.
8722 * gst/registries/Makefile.am:
8723 * gst/registries/gstlibxmlregistry.c:
8724 * gst/registries/gstlibxmlregistry.h:
8725 * gst/registries/gstxmlregistry.c:
8726 * gst/registries/gstxmlregistry.h:
8727 * gst/registries/registrytest.c:
8729 2005-09-14 David Schleef <ds@schleef.org>
8731 * gst/glib-compat.h:
8732 * gst/gstregistryxml.c:
8733 Convergence is near. Seriously.
8735 2005-09-14 David Schleef <ds@schleef.org>
8737 * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
8738 * gst/glib-compat.h:
8739 Attempt #4 to appease the buildbots.
8741 2005-09-14 David Schleef <ds@schleef.org>
8743 * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
8746 2005-09-14 David Schleef <ds@schleef.org>
8748 * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
8751 2005-09-14 David Schleef <ds@schleef.org>
8753 * gst/Makefile.am: Oh yeah, libgstreamer.so needs to contain
8756 2005-09-14 David Schleef <ds@schleef.org>
8758 * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
8759 * gst/glib-compat.h: Add some functions that are in newer versions
8760 of glib than we care to require.
8761 * gst/gstregistryxml.c: Use them.
8763 2005-09-14 David Schleef <ds@schleef.org>
8765 * po/POTFILES.in: remove gst-register.c
8767 2005-09-14 David Schleef <ds@schleef.org>
8769 * docs/gst/gstreamer-docs.sgml:
8770 * docs/gst/gstreamer-sections.txt:
8771 * docs/gst/gstreamer.types:
8772 * docs/gst/tmpl/gstelement.sgml:
8773 * docs/gst/tmpl/gstplugin.sgml:
8774 * docs/gst/tmpl/gstpluginfeature.sgml:
8775 Documentation updates for registry changes.
8777 2005-09-14 David Schleef <ds@schleef.org>
8779 * gst/gstregistryxml.c: Copy g_mkdir_with_parent() from glib,
8780 because we don't require glib-2.8.
8782 2005-09-14 David Schleef <ds@schleef.org>
8784 * gst/gstregistryxml.c: Added. Essentially moved out of the
8785 registries directory.
8787 2005-09-14 David Schleef <ds@schleef.org>
8789 * check/Makefile.am:
8790 * check/generic/states.c:
8794 * gst/gst_private.h:
8795 * gst/gstelementfactory.c:
8800 * gst/gstpluginfeature.c:
8801 * gst/gstpluginfeature.h:
8802 * gst/gstregistry.c:
8803 * gst/gstregistry.h:
8804 * gst/gstregistrypool.c: remove
8805 * gst/gstregistrypool.h: remove
8806 * gst/gsttypefind.c:
8807 * gst/gsttypefindfactory.c:
8809 * tools/Makefile.am:
8810 * tools/gst-compprep.c:
8811 * tools/gst-inspect.c:
8812 * tools/gst-register.c: remove
8813 * tools/gst-xmlinspect.c:
8814 Registry rewrite. Changes registry from being a file created
8815 by a tool into a simple cache file created automatically by
8816 libgstreamer. Removed gst-register (because it's no longer
8817 needed). Remove registry pools, because we only have one
8818 registry implementation (XML). Fix up other subsystems as
8821 2005-09-13 Michael Smith <msmith@fluendo.com>
8823 * gst/gstconfig.h.in:
8824 Don't Use windows linking attributes for MinGW. Fixes #316157
8826 2005-09-13 Thomas Vander Stichele <thomas at apestaart dot org>
8828 * gst/gstutils.c: (set_state_async_thread_func),
8829 (gst_element_set_state_async):
8830 Apparently people think it's better if this function doesn't
8831 try to set the state to whatever state was asked for on the first
8832 call to this function for any object. Seriously.
8834 2005-09-12 Thomas Vander Stichele <thomas at apestaart dot org>
8836 * check/gst/gstpipeline.c: (GST_START_TEST):
8837 * docs/gst/gstreamer-sections.txt:
8838 * gst/gstutils.c: (set_state_async_thread_func),
8839 (gst_element_set_state_async):
8841 add a "gst_element_set_state_async" method that
8842 sets the state and starts a thread to make sure the state
8843 change completes as best as it can
8845 2005-09-12 Thomas Vander Stichele <thomas at apestaart dot org>
8847 * check/gst/gstpipeline.c: (GST_START_TEST), (gst_pipeline_suite):
8848 codify design+behaviour in testsuite after discussion
8850 2005-09-12 Thomas Vander Stichele <thomas at apestaart dot org>
8852 * docs/gst/tmpl/gstelement.sgml:
8853 * docs/manual/appendix-quotes.xml:
8855 * gst/gstelement.c: (gst_element_set_state):
8858 2005-09-12 Jan Schmidt <thaytan@mad.scientist.com>
8860 * gst/base/gstbasetransform.c: (gst_base_transform_class_init),
8861 (gst_base_transform_prepare_output_buf),
8862 (gst_base_transform_handle_buffer):
8863 * gst/elements/gstcapsfilter.c: (gst_capsfilter_transform_ip),
8864 (gst_capsfilter_prepare_buf):
8865 Remove the requirement for sub-classes to call the parent
8866 implementation of prepare_output_buffer with a wrapper function.
8869 * gst/gsttagsetter.h:
8872 2005-09-11 Stefan Kost <ensonic@users.sf.net>
8874 * docs/gst/gstreamer-sections.txt:
8877 2005-09-11 Thomas Vander Stichele <thomas at apestaart dot org>
8879 * docs/gst/gstreamer-sections.txt:
8880 * docs/gst/tmpl/gstelement.sgml:
8881 * docs/gst/tmpl/gstplugin.sgml:
8882 * gst/gstminiobject.c:
8884 docs now stop throwing warnings
8886 2005-09-11 Thomas Vander Stichele <thomas at apestaart dot org>
8888 * docs/gst/gstreamer-sections.txt:
8889 * docs/gst/gstreamer.types:
8890 * docs/gst/tmpl/gstpad.sgml:
8891 * docs/gst/tmpl/gsttypes.sgml:
8892 * gst/base/gstadapter.h:
8893 * gst/base/gstbasesink.h:
8894 * gst/base/gstbasesrc.h:
8904 * gst/gststructure.c:
8905 * gst/registries/gstlibxmlregistry.h:
8906 various documentation fixes
8908 2005-09-11 Thomas Vander Stichele <thomas at apestaart dot org>
8910 * docs/gst/gstreamer-sections.txt:
8911 * docs/gst/tmpl/gstvalue.sgml:
8912 rearrange gstvalue section
8913 * gst/gstutils.c: (gst_element_state_get_name):
8915 * gst/gstvalue.c: (_gst_value_initialize):
8919 2005-09-10 Jan Schmidt <thaytan@mad.scientist.com>
8921 * check/gst-libs/controller.c:
8923 * gst/base/gstbasetransform.c:
8924 (gst_base_transform_default_prepare_buf),
8925 (gst_base_transform_handle_buffer):
8926 * gst/base/gstbasetransform.h:
8927 Some more basetransform changes and fixes to enable sub-classes
8928 that modify buffer metadata only.
8929 * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
8930 (gst_capsfilter_init), (gst_capsfilter_transform_ip),
8931 (gst_capsfilter_prepare_buf):
8932 If the output pad has fixed allowed caps and input buffers
8933 don't have any, set the fixed caps on outgoing buffers.
8935 2005-09-09 Jan Schmidt <thaytan@mad.scientist.com>
8936 * check/elements/identity.c: (GST_START_TEST):
8937 Make the error a little clearer when the test fails because
8938 identity made a copy of the buffer.
8939 * docs/gst/gstreamer-sections.txt:
8940 New symbols in gstbasetransform.h
8941 * gst/base/gstbasetransform.c: (gst_base_transform_class_init),
8942 (gst_base_transform_init), (gst_base_transform_transform_size),
8943 (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
8944 (gst_base_transform_default_prepare_buf),
8945 (gst_base_transform_get_unit_size),
8946 (gst_base_transform_buffer_alloc),
8947 (gst_base_transform_handle_buffer), (gst_base_transform_chain),
8948 (gst_base_transform_change_state),
8949 (gst_base_transform_set_passthrough),
8950 (gst_base_transform_set_in_place),
8951 (gst_base_transform_is_in_place):
8952 * gst/base/gstbasetransform.h:
8953 Change BaseTransform to separate in_place operate from same_caps
8954 output. in_place implies that the element can perform the transform
8955 on incoming buffers in-place, even if the caps on the output are
8957 Sub-class elements can now implement special buffer allocation
8958 methods for outgoing buffers if they wish to.
8959 Big documentation addition.
8960 * gst/elements/gstcapsfilter.c: (gst_capsfilter_transform_ip):
8961 * gst/elements/gstelements.c:
8962 Changes for basetransform modifications.
8963 * gst/elements/Makefile.am:
8964 * gst/elements/gstfdsrc.c: (gst_fdsrc_init), (gst_fdsrc_create):
8965 Compile fix. Extra debug output.
8967 2005-09-09 Thomas Vander Stichele <thomas at apestaart dot org>
8969 * check/gst/gstpad.c: (GST_START_TEST), (name_is_valid),
8971 add tests for valid pad naming
8972 * gst/check/gstcheck.c: (gst_check_log_message_func),
8973 (gst_check_log_critical_func):
8975 remove printing of code, it is fragile when the code contains
8976 % and the line number is enough info
8977 * gst/check/gstcheck.h:
8978 * gst/gstpad.c: (gst_pad_template_new):
8981 2005-09-09 Thomas Vander Stichele <thomas at apestaart dot org>
8984 say what CHECK flags we use
8985 * docs/libs/gstreamer-libs.types:
8986 * libs/gst/controller/Makefile.am:
8987 * libs/gst/controller/gst-controller.c:
8988 * libs/gst/controller/gst-controller.h:
8989 * libs/gst/controller/gst-helper.c:
8990 * libs/gst/controller/gst-interpolation.c:
8991 * libs/gst/controller/gstcontroller.c:
8992 * libs/gst/controller/gsthelper.c:
8993 * libs/gst/controller/gstinterpolation.c:
8994 * tools/gst-inspect.c: (print_plugin_info):
8995 we don't use dashes in header names
8997 2005-09-09 Thomas Vander Stichele <thomas at apestaart dot org>
8999 * check/Makefile.am:
9000 * check/gst/.cvsignore:
9001 * check/gst/gstpipeline.c: (pop_messages), (GST_START_TEST),
9002 (gst_pipeline_suite), (main):
9003 adding a test for pipelines and state changes
9004 * gst/gstutils.c: (get_state_func):
9006 * gstreamer.spec.in:
9009 2005-09-08 Michael Smith <msmith@fluendo.com>
9011 * gst/elements/gstfilesrc.c: (gst_file_src_map_region),
9012 (gst_file_src_map_small_region), (gst_file_src_create_mmap),
9013 (gst_file_src_is_seekable), (gst_file_src_get_size),
9014 (gst_file_src_start):
9015 * gst/elements/gstfilesrc.h:
9016 Various fixes for unseekable, unmmapable, and non-normal files, so
9017 that fallback to read() rather than mmap() works.
9018 * gst/gstevent.c: (gst_event_new_newsegment):
9019 Allow newsegment events with segment_start == segment_end, as will
9020 correctly happen if you use filesrc on a zero-size file, for
9023 2005-09-07 Jan Schmidt <thaytan@mad.scientist.com>
9025 * gst/gstplugin.c: (gst_plugin_load_file):
9026 Call g_module_close when we don't load the module
9028 * gst/registries/gstlibxmlregistry.c:
9029 (gst_xml_registry_get_property):
9030 Port leak fix from 0.8
9032 2005-09-07 Stefan Kost <ensonic@users.sf.net>
9034 * docs/gst/gstreamer-docs.sgml:
9035 * docs/gst/tmpl/.cvsignore:
9036 * docs/gst/tmpl/gsttrace.sgml:
9037 * docs/gst/tmpl/gsttrashstack.sgml:
9046 * gst/gsttaginterface.c:
9047 * gst/gsttaginterface.h:
9050 * gst/gsttagsetter.c:
9051 * gst/gsttagsetter.h:
9054 * gst/gsttrashstack.c:
9055 renamed gsttag -> gsttaglist, gsttaginterface -> gsttagsetter
9056 inlined docs for gsttrace, gsttrashstack
9058 2005-09-07 Stefan Kost <ensonic@users.sf.net>
9061 * gst/elements/gstbufferstore.h:
9062 * gst/elements/gsttypefindelement.c:
9063 * gst/elements/gsttypefindelement.h:
9065 * gst/gsttypefind.c:
9066 * gst/gsttypefind.h:
9067 * gst/gsttypefindfactory.c: (gst_type_find_factory_get_type),
9068 (gst_type_find_factory_class_init), (gst_type_find_factory_init),
9069 (gst_type_find_factory_dispose),
9070 (gst_type_find_factory_unload_thyself),
9071 (gst_type_find_load_plugin), (gst_type_find_factory_get_list),
9072 (gst_type_find_factory_get_caps),
9073 (gst_type_find_factory_get_extensions),
9074 (gst_type_find_factory_call_function):
9075 * gst/gsttypefindfactory.h:
9076 * gst/registries/gstlibxmlregistry.c:
9077 * gst/registries/gstxmlregistry.c:
9078 splitted gsttypefind into gsttypefind, gsttypefindfactory
9080 2005-09-07 Andy Wingo <wingo@pobox.com>
9082 * gst/base/gstbasesink.c (gst_base_sink_activate_pull): Fix a race
9083 condition whereby the pad's task function is entered before the
9084 pad_mode variable was set.
9086 2005-09-07 Jan Schmidt <thaytan@mad.scientist.com>
9088 * gst/gstpad.c: (gst_pad_alloc_buffer):
9089 Catch misbehaving pad_alloc functions that don't
9090 set up caps and do it for them.
9092 2005-09-07 Stefan Kost <ensonic@users.sf.net>
9094 * check/pipelines/simple_launch_lines.c: (run_pipeline):
9096 * docs/gst/tmpl/.cvsignore:
9097 * docs/gst/tmpl/gstmemchunk.sgml:
9098 * docs/gst/tmpl/gstparse.sgml:
9099 * docs/gst/tmpl/gsttaglist.sgml:
9100 * docs/gst/tmpl/gsttagsetter.sgml:
9101 * docs/gst/tmpl/gsttypefind.sgml:
9102 * docs/gst/tmpl/gsttypefindfactory.sgml:
9103 * gst/gstmemchunk.c:
9106 * gst/gsttaginterface.c:
9107 * gst/gsttypefind.c:
9108 * gst/gsttypefind.h:
9111 === release 0.9.2 ===
9113 2005-09-06 Thomas Vander Stichele <thomas at apestaart dot org>
9118 releasing 0.9.2, "South"
9120 2005-09-05 Andy Wingo <wingo@pobox.com>
9122 * gst/registries/gstxmlregistry.h:
9123 * gst/registries/gstxmlregistry.c: Um... resurrect...
9125 * gst/registries/gstxmlregistry.h:
9126 * gst/registries/gstxmlregistry.c: and update to newer API.
9127 Incidentally they should be a bit faster now that they don't have
9130 2005-09-05 Andy Wingo <wingo@pobox.com>
9132 * gst/registries/gstxmlregistry.h:
9133 * gst/registries/gstxmlregistry.c: Remove from CVS, they were
9134 replaced by the libxml registry a while back
9136 2005-09-03 Thomas Vander Stichele <thomas at apestaart dot org>
9138 * docs/gst/tmpl/gstplugin.sgml:
9139 * gst/elements/gstelements.c:
9141 * gst/gstplugin.c: (gst_plugin_register_func),
9142 (gst_plugin_desc_copy), (gst_plugin_desc_free),
9143 (gst_plugin_get_source):
9145 * gst/registries/gstlibxmlregistry.c: (load_plugin),
9146 (gst_xml_registry_save_plugin):
9147 * gst/registries/gstxmlregistry.c: (gst_xml_registry_parse_plugin),
9148 (gst_xml_registry_save_plugin):
9149 * tools/gst-inspect.c: (print_plugin_info):
9150 add a "source" plugin description field, to represent the source
9151 module this plugin is a part of. By default GST_PLUGIN_DEFINE
9152 will set it to PACKAGE, which is automake's idea of the name of
9155 2005-09-03 Thomas Vander Stichele <thomas at apestaart dot org>
9161 * docs/faq/Makefile.am:
9162 * docs/gst/tmpl/gstelement.sgml:
9163 * docs/gst/tmpl/gsttypes.sgml:
9164 * docs/htmlinstall.mak:
9165 * docs/manual/Makefile.am:
9166 * docs/pwg/Makefile.am:
9167 reorganize doc build a little
9168 split out docbook and gtk-doc stuff
9169 have two separate --enable's and enable them through autogen
9170 but disable by default in configure (to be similar to other
9172 * gstreamer.spec.in:
9173 clean up docs install
9193 2005-09-03 Tim-Philipp Müller <tim at centricular dot net>
9195 * gst/base/gstbasesink.c: (gst_base_sink_pad_buffer_alloc):
9198 * gst/elements/gstfakesink.c: (gst_fake_sink_init),
9199 (gst_fake_sink_change_state):
9200 Make state change function thread-safe.
9202 * gst/gstpad.c: (gst_pad_alloc_buffer):
9203 Set offset on generic buffer allocated by fallback.
9205 2005-09-03 Stefan Kost <ensonic@users.sf.net>
9207 * docs/gst/gstreamer-sections.txt:
9208 * docs/gst/tmpl/gstelement.sgml:
9210 * libs/gst/controller/gst-controller.c:
9211 (gst_controlled_property_set_interpolation_mode),
9212 (gst_controlled_property_new),
9213 (gst_controller_find_controlled_property):
9214 run the wingo-magic script against the docs
9216 2005-09-02 Stefan Kost <ensonic@users.sf.net>
9218 * docs/gst/gstreamer-docs.sgml:
9219 * docs/gst/gstreamer-sections.txt:
9220 * docs/gst/tmpl/.cvsignore:
9221 * docs/gst/tmpl/gstelementdetails.sgml:
9222 * docs/gst/tmpl/gstelementfactory.sgml:
9225 * gst/gstelementfactory.c:
9226 * gst/gstelementfactory.h:
9227 merged elementdetails docs into elementfactory docs
9230 2005-09-02 Andy Wingo <wingo@pobox.com>
9232 * gst/gstelement.h: Add magical pixie dust to make glib-mkenums
9233 consider this enum an enum and not a flags.
9235 2005-09-02 Stefan Kost <ensonic@users.sf.net>
9237 * docs/gst/gstreamer-docs.sgml:
9238 * docs/gst/tmpl/.cvsignore:
9239 * docs/gst/tmpl/gstghostpad.sgml:
9240 * docs/gst/tmpl/gstiterator.sgml:
9241 * docs/gst/tmpl/gstmacros.sgml:
9242 * docs/gst/tmpl/gstrealpad.sgml:
9243 * docs/gst/tmpl/gstregistry.sgml:
9244 * docs/gst/tmpl/gstregistrypool.sgml:
9245 * docs/gst/tmpl/gststructure.sgml:
9246 * docs/gst/tmpl/gstsystemclock.sgml:
9247 * docs/gst/tmpl/gsttrace.sgml:
9248 * gst/gstghostpad.c:
9250 * gst/gstmemchunk.c:
9251 * gst/gstmemchunk.h:
9253 * gst/gstregistry.c:
9254 * gst/gstregistrypool.c:
9255 * gst/gststructure.c:
9256 * gst/gstsystemclock.c:
9259 2005-09-02 Andy Wingo <wingo@pobox.com>
9261 * gst/gstelement.h (GstState): Renamed from GstElementState,
9262 changed to be a normal enum instead of flags.
9263 (GstStateChangeReturn): Renamed from GstElementStateReturn, names
9264 munged to be GST_STATE_CHANGE_*.
9265 (GST_STATE_CHANGE): Renamed from GST_STATE_TRANSITION, updated to
9266 work with the new state representation.
9267 (GstStateChange): New enumeration of possible state transitions.
9268 Replaces GST_STATE_FOO_TO_BAR with GST_STATE_CHANGE_FOO_TO_BAR.
9269 (GstElementClass::change_state): Pass the GstStateChange along as
9270 an argument. Helps language bindings, so they don't have to use
9271 tricky lock-needing macros like GST_STATE_CHANGE ().
9273 * scripts/update-states (file): New script. Run it on a file to
9274 update it for state naming and API changes. Updates files in
9277 * All files updated for the new API.
9279 2005-09-02 Thomas Vander Stichele <thomas at apestaart dot org>
9281 * gst/gsttrace.c: (gst_trace_flush), (gst_trace_text_flush):
9282 * gst/gstutils.c: (gst_util_set_value_from_string),
9283 (gst_util_set_object_arg):
9284 fix a bunch of unchecked return values
9285 * tools/gst-complete.c: (main):
9286 * gstreamer.spec.in:
9289 2005-09-01 Wim Taymans <wim@fluendo.com>
9291 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
9292 (gst_base_sink_event), (gst_base_sink_do_sync),
9293 (gst_base_sink_handle_event):
9294 * gst/base/gstbasesink.h:
9295 Handle newsegments more correctly.
9300 * gst/gstevent.c: (gst_event_new_newsegment):
9301 A newsegment cannot have a start_time of -1
9303 2005-09-01 Tim-Philipp Müller <tim at centricular dot net>
9305 * win32/gstenumtypes.c:
9306 * win32/gstenumtypes.h:
9309 2005-08-31 Stefan Kost <ensonic@users.sf.net>
9311 * libs/gst/controller/gst-controller.c:
9312 (gst_controlled_property_set_interpolation_mode),
9313 (gst_controlled_property_new):
9316 2005-08-31 Thomas Vander Stichele <thomas at apestaart dot org>
9318 * docs/faq/gst-uninstalled:
9323 * gst/gstutils.c: (gst_element_link_filtered):
9325 add gst_element_link_filtered
9327 2005-08-31 Stefan Kost <ensonic@users.sf.net>
9329 * docs/gst/gstreamer-docs.sgml:
9330 * docs/gst/gstreamer-sections.txt:
9331 * docs/gst/tmpl/.cvsignore:
9332 * docs/gst/tmpl/gsterror.sgml:
9333 * docs/gst/tmpl/gstfilter.sgml:
9334 * docs/gst/tmpl/gsturihandler.sgml:
9335 * docs/gst/tmpl/gsturitype.sgml:
9336 * docs/gst/tmpl/gstutils.sgml:
9337 * docs/gst/tmpl/gstxml.sgml:
9345 inlined more docs, fixed double id-ref
9347 2005-08-31 Wim Taymans <wim@fluendo.com>
9349 * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
9350 (gst_base_transform_handle_buffer):
9351 Passthrough elements don't need the caps as they don't care.
9353 2005-08-31 Wim Taymans <wim@fluendo.com>
9355 * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
9356 (gst_base_transform_handle_buffer), (gst_base_transform_chain):
9357 Don't leak refcounts on buffers.
9359 2005-08-31 Wim Taymans <wim@fluendo.com>
9361 * gst/base/gstbasetransform.c: (gst_base_transform_configure_caps),
9362 (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
9363 (gst_base_transform_chain), (gst_base_transform_change_state):
9364 * gst/base/gstbasetransform.h:
9365 Handle the case where we are not negotiated more gracefully.
9367 2005-08-31 Tim-Philipp Müller <tim at centricular dot net>
9369 * gst/elements/gstfilesrc.c: (gst_mmap_buffer_init),
9370 (gst_file_src_map_region):
9371 Set READONLY flag on mmap'ed buffers, otherwise
9372 gst_buffer_make_writable() won't work properly (#314708).
9374 2005-08-31 Wim Taymans <wim@fluendo.com>
9376 * gst/base/gstbasetransform.c: (gst_base_transform_handle_buffer):
9377 passthrough elements can even do inplace on non writable
9378 buffers (as they don't touch them).
9380 2005-08-31 Stefan Kost <ensonic@users.sf.net>
9382 * check/gst-libs/controller.c: (gst_test_mono_source_get_property),
9383 (gst_test_mono_source_set_property),
9384 (gst_test_mono_source_class_init), (GST_START_TEST),
9385 (gst_controller_suite):
9386 more tests (hehe I have the most)
9388 describe popping messages whenusing mulltiple sources
9389 * libs/gst/controller/gst-controller.c:
9390 (gst_controlled_property_set_interpolation_mode),
9391 (gst_controlled_property_new):
9392 * libs/gst/controller/gst-controller.h:
9393 * libs/gst/controller/gst-interpolation.c:
9394 implement boolean properties
9396 2005-08-31 Wim Taymans <wim@fluendo.com>
9398 * gst/gstminiobject.c: (gst_mini_object_ref):
9399 Cannot assert that the refcount has to be positive
9400 since a disposed object can be resurrected.
9402 2005-08-31 Wim Taymans <wim@fluendo.com>
9404 * gst/gstpad.c: (gst_pad_init):
9405 Revert change, need to first fix badly behaving
9408 2005-08-30 Wim Taymans <wim@fluendo.com>
9410 * check/elements/fakesrc.c: (setup_fakesrc):
9411 * check/elements/identity.c: (setup_identity):
9412 Activate pads before using them.
9414 2005-08-30 Wim Taymans <wim@fluendo.com>
9416 * gst/base/gstadapter.c: (gst_adapter_flush):
9417 Flushing out 0 bytes is ok for this function.
9419 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
9420 no newsegment gives a warning and sets the start/stop to
9423 * gst/base/gstbasetransform.c: (gst_base_transform_change_state),
9424 (gst_base_transform_set_passthrough):
9427 * gst/gstminiobject.c: (gst_mini_object_ref):
9428 Check refcount here too.
9430 * gst/gstpad.c: (gst_pad_init):
9431 Pads are initially flushing and refusing data.
9433 * gst/gstutils.c: (gst_element_link_pads_filtered):
9434 When adding a capsfilter element make sure it has the
9435 same state as the parent bin.
9437 2005-08-30 Stefan Kost <ensonic@users.sf.net>
9439 * docs/gst/tmpl/.cvsignore:
9440 * docs/gst/tmpl/gstformat.sgml:
9441 * docs/gst/tmpl/gstversion.sgml:
9445 * gst/gstversion.h.in:
9446 more docs and two more inlined
9448 2005-08-30 Wim Taymans <wim@fluendo.com>
9450 * gst/elements/gstfilesink.c: (gst_file_sink_class_init):
9451 Don't sync to clock.
9453 2005-08-30 Stefan Kost <ensonic@users.sf.net>
9455 * docs/gst/gstreamer-sections.txt:
9456 ultral33t func10ns deserve to appear in the docs actually
9457 * docs/gst/tmpl/.cvsignore:
9458 * docs/gst/tmpl/gstcompat.sgml:
9459 * docs/gst/tmpl/gstconfig.sgml:
9460 * gst/check/gstcheck.c:
9462 * gst/gstconfig.h.in:
9465 2005-08-30 Stefan Kost <ensonic@users.sf.net>
9467 * docs/gst/tmpl/.cvsignore:
9468 * docs/gst/tmpl/gstquery.sgml:
9469 * docs/gst/tmpl/gstutils.sgml:
9472 inlined and extended docs
9474 2005-08-30 Stefan Kost <ensonic@users.sf.net>
9476 * check/gst-libs/controller.c: (GST_START_TEST),
9477 (gst_controller_suite):
9479 * docs/gst/tmpl/gstutils.sgml:
9480 * docs/libs/gstreamer-libs-sections.txt:
9481 * docs/libs/tmpl/gstdataprotocol.sgml:
9483 * examples/controller/audio-example.c: (main):
9484 controller example works now
9487 * tools/gst-inspect.c: (print_element_properties_info):
9488 show param spec flags
9490 2005-08-29 Andy Wingo <wingo@pobox.com>
9492 * gst/gstutils.c (gst_util_uint64_scale): New 3733t funct10n.
9494 2005-08-28 Andy Wingo <wingo@pobox.com>
9496 * gst/gstutils.h (GST_BOILERPLATE_FULL): Prototype instance_init
9497 as having two arguments instead of just one. Allows superclasses
9498 to access information on subclasses -- see the terrible for() loop
9499 in gtype.c:g_type_create_instance for the reason why. All callers
9502 2005-08-27 Stefan Kost <ensonic@users.sf.net>
9504 * docs/design/part-messages.txt:
9506 * docs/gst/tmpl/.cvsignore:
9507 * docs/gst/tmpl/gstcaps.sgml:
9508 * docs/gst/tmpl/gstclock.sgml:
9515 added descriptions for bus and message
9516 inline caps and clock docs
9518 2005-08-27 Stefan Kost <ensonic@users.sf.net>
9524 2005-08-27 Stefan Kost <ensonic@users.sf.net>
9526 * gst/base/gstbasetransform.c: (gst_base_transform_transform_size):
9529 2005-08-26 Andy Wingo <wingo@pobox.com>
9531 * check/pipelines/simple_launch_lines.c (run_pipeline): Check
9532 element_set_state's return val.
9533 (test_2_elements): Add test that's been disabled for months.
9535 * gst/elements/gstfakesink.c: Cleanups. Add can-activate-push and
9536 can-activate-pull properties.
9538 * gst/elements/gstfakesrc.c: Cleanups. Add can-activate-push and
9539 can-activate-pull properties. Implement is_seekable so fakesrc can
9540 operate in pull mode.
9542 * gst/base/gstbasesink.c (GstBaseSink): Remove has-loop, has-chain
9544 (gst_base_sink_activate, gst_base_sink_activate_pull)
9545 (gst_base_sink_activate_push): Make activation mode choosing work.
9547 (gst_base_sink_chain, gst_base_sink_loop): Assert activation mode
9548 is right. Make pull mode work. Post an eos before pausing in pull
9550 (gst_base_sink_change_state): Pay attention to the core's
9551 change_state() return val.
9553 * gst/base/gstbasesrc.c (GstBaseSrc): Remove has-loop,
9554 has-getrange properties. Cleanups.
9556 * gst/base/gstbasesrc.h (GstBaseSrc): Remove has_loop,
9557 has_getrange and replace with can_activate_pull and
9560 * gst/base/gstbasesink.h (GstBaseSink): Rearrange fields, add
9561 locking comments. Remove has_loop, has_chain and replace with
9562 can_activate_pull and can_activate_push.
9564 2005-08-26 Jan Schmidt <thaytan@mad.scientist.com>
9567 * examples/Makefile.am:
9568 * examples/metadata/Makefile.am:
9569 * examples/metadata/read-metadata.c: (message_loop),
9570 (have_pad_handler), (make_pipeline), (print_tag), (main):
9571 Add metadata reading example that loops over a list of filenames,
9572 dumping any tags found.
9574 * gst/gstbus.c: (gst_bus_dispose):
9575 * gst/gstelement.c: (gst_element_dispose):
9576 Release a few potentially-held references in dispose.
9578 2005-08-26 Stefan Kost <ensonic@users.sf.net>
9580 * docs/gst/tmpl/gstminiobject.sgml:
9581 do *not* add tmpl/*.sgml files to CVS!
9583 2005-08-26 Stefan Kost <ensonic@users.sf.net>
9585 * libs/gst/bytestream/.cvsignore:
9586 * libs/gst/bytestream/Makefile.am:
9587 * libs/gst/bytestream/adapter.c:
9588 * libs/gst/bytestream/adapter.h:
9589 * libs/gst/bytestream/bytestream.c:
9590 * libs/gst/bytestream/bytestream.h:
9591 * libs/gst/bytestream/filepad.c:
9592 * libs/gst/bytestream/filepad.h:
9593 removing obsolete files
9595 2005-08-26 Stefan Kost <ensonic@users.sf.net>
9597 * docs/gst/gstreamer-docs.sgml:
9598 * docs/libs/gstreamer-libs-docs.sgml:
9599 disabed additional index entries again, as this makes docs-gen just
9600 slow and they aren't useful yet
9601 * docs/libs/gstreamer-libs-sections.txt:
9602 little -section.txt cleanup for libs
9604 2005-08-26 Thomas Vander Stichele <thomas at apestaart dot org>
9606 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
9607 * gst/base/gstbasetransform.c: (gst_base_transform_transform_size),
9608 fix up some debugging
9609 (gst_base_transform_get_unit_size),
9610 (gst_base_transform_buffer_alloc), (gst_base_transform_event),
9611 (gst_base_transform_handle_buffer):
9612 * gst/base/gstbasetransform.h:
9613 handle and store timed NEWSEGMENT events so that subclasses that
9614 calculate time by counting samples have a segment_start time they
9615 need to add to their timestamps - see audioresample
9617 2005-08-26 Stefan Kost <ensonic@users.sf.net>
9620 removed ';' from the end of macro defs
9621 * docs/gst/gstreamer-docs.sgml:
9622 * docs/gst/gstreamer-sections.txt:
9623 * docs/gst/tmpl/.cvsignore:
9625 * gst/gstelement.c: (gst_element_class_init),
9626 (gst_element_set_state), (activate_pads),
9627 (gst_element_save_thyself):
9628 * gst/gstevent.c: (gst_event_new_newsegment):
9630 * gst/gstiterator.c:
9631 * gst/gstiterator.h:
9634 * gst/gstutils.c: (gst_pad_query_convert):
9636 fixed parameter name mismatches between source, header and docs
9637 added some more docs, resolved the last batch of unused elements in
9638 docs (now someone needs to doc them)
9640 2005-08-25 Thomas Vander Stichele <thomas at apestaart dot org>
9642 * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_rebuild):
9643 * gst/registries/gstxmlregistry.c: (gst_xml_registry_rebuild):
9644 don't walk through the plugins backwards. Where is all this
9645 reversed logic coming from ?
9647 2005-08-25 Wim Taymans <wim@fluendo.com>
9649 * gst/base/gstbasetransform.c: (gst_base_transform_init),
9650 (gst_base_transform_transform_size),
9651 (gst_base_transform_configure_caps),
9652 (gst_base_transform_get_unit_size),
9653 (gst_base_transform_buffer_alloc),
9654 (gst_base_transform_change_state):
9655 * gst/base/gstbasetransform.h:
9656 Cache caps unit_size.
9657 Make sure we cannot negotiate up and downstream at the
9660 2005-08-25 Thomas Vander Stichele <thomas at apestaart dot org>
9662 * gst/gst.c: (init_pre), (init_post):
9663 register the installed plugin path after the env var
9664 * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_save):
9665 * gst/registries/gstxmlregistry.c: (gst_xml_registry_save):
9666 don't reverse order of paths; conserve the order of GST_PLUGIN_PATH
9667 directories, so the tests can prefer uninstalled over installed
9669 2005-08-25 Thomas Vander Stichele <thomas at apestaart dot org>
9671 * gst/base/gstbasetransform.h:
9676 2005-08-25 Wim Taymans <wim@fluendo.com>
9678 * gst/gstbin.c: (bin_bus_handler):
9679 Be a bit more conservative about the posted message.
9681 * gst/gstbus.c: (gst_bus_post):
9682 Some cleanups, warn wrong return values.
9684 2005-08-25 Jan Schmidt <thaytan@mad.scientist.com>
9686 * check/gst/gstbin.c: (GST_START_TEST):
9687 * gst/gstbin.c: (bin_bus_handler):
9688 * gst/gstmessage.c: (gst_message_finalize), (_gst_message_copy),
9689 (gst_message_new), (gst_message_new_eos), (gst_message_new_error),
9690 (gst_message_new_warning), (gst_message_new_tag),
9691 (gst_message_new_state_changed), (gst_message_new_segment_start),
9692 (gst_message_new_segment_done), (gst_message_new_custom):
9694 * tools/gst-launch.c: (event_loop):
9695 * tools/gst-md5sum.c: (event_loop):
9696 Revert unpopular change for GST_MESSAGE_SRC to GObject.
9698 2005-08-25 Wim Taymans <wim@fluendo.com>
9700 * check/generic/states.c: (GST_START_TEST):
9701 Cleanup can be done at the end.
9703 * gst/gsttask.c: (gst_task_get_type), (gst_task_finalize),
9704 (gst_task_func), (gst_task_cleanup_all), (gst_task_set_lock),
9705 (gst_task_get_state), (gst_task_start), (gst_task_pause):
9706 Oh boy.. Thanks for finding this, Thomas.
9708 2005-08-25 Stefan Kost <ensonic@users.sf.net>
9710 * docs/gst/gstreamer.types:
9713 2005-08-25 Stefan Kost <ensonic@users.sf.net>
9715 * docs/gst/gstreamer-docs.sgml:
9716 * docs/gst/gstreamer-sections.txt:
9717 * docs/gst/tmpl/.cvsignore:
9719 * gst/gstiterator.c:
9721 * gst/registries/gstxmlregistry.h:
9722 added missing classes and symbols (123 more to go)
9723 removed removed symbols from section file
9724 fixed many doc-comments
9726 2005-08-24 Wim Taymans <wim@fluendo.com>
9728 * check/generic/states.c: (GST_START_TEST):
9729 Make sure all tasks are stopped.
9731 * check/gst/gstbin.c: (GST_START_TEST):
9732 Unref after usage for proper valgrinding.
9734 * gst/gstpad.c: (gst_pad_finalize), (gst_pad_stop_task):
9735 Really wait for the task to stop before destroying the
9738 * gst/gstqueue.c: (gst_queue_sink_activate_push),
9739 (gst_queue_src_activate_push):
9740 Small cleanups. Don't stop the task when we did not start
9743 * gst/gsttask.c: (gst_task_get_type), (gst_task_init),
9744 (gst_task_func), (gst_task_cleanup_all), (gst_task_set_lock),
9745 (gst_task_get_state), (gst_task_start), (gst_task_pause),
9748 Protect the stream lock with the object lock.
9749 Disallow setting the stream lock when running.
9750 Add cleanup_all to wait for the threadpool to finish.
9751 Remove code to autoallocate a mutex if none was provided.
9752 Add _join() to wait for a task to stop.
9753 Protect the thread pool with a global lock.
9755 2005-08-24 Wim Taymans <wim@fluendo.com>
9757 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
9758 (gst_base_sink_get_times), (gst_base_sink_do_sync),
9759 (gst_base_sink_handle_buffer), (gst_base_sink_change_state):
9760 * gst/base/gstbasesink.h:
9761 Handle newsegment events correctly.
9762 Drop buffers out of the segment range.
9764 2005-08-22 Andy Wingo <wingo@pobox.com>
9766 * gst/gstutils.h (GST_BOILERPLATE_WITH_INTERFACE): New ghetto
9767 macro, implements an interface and gstimplementsinterface for a
9770 2005-08-24 Thomas Vander Stichele <thomas at apestaart dot org>
9772 * check/Makefile.am:
9773 * check/generic/states.c: (GST_START_TEST), (states_suite), (main):
9774 add a test that does a bunch of state changes on elements
9775 needs some fixing for valgrind
9776 * check/states/sinks.c: (gst_object_suite):
9779 add prototype for gst_caps_is_equal_fixed
9781 * gst/gstregistrypool.c:
9784 2005-08-24 Andy Wingo <wingo@pobox.com>
9786 * gst/gstquery.c (gst_query_new_convert): Spew if we try to
9787 convert a negative value. Doesn't make much sense. Mostly this is
9788 here to force callers to ensure -1 maps to -1.
9790 2005-08-24 Jan Schmidt <thaytan@mad.scientist.com>
9792 * docs/pwg/advanced-types.xml:
9793 Well done to Michael for catching my deliberate introduction
9794 of this spelling mistake.
9795 * gst/gstbin.c: (gst_bin_remove_func), (bin_bus_handler):
9797 Add GST_ELEMENT_UNPARENTING to prevent races so that we can
9798 unlink pads before removing the element from the bin.
9800 2005-08-24 Andy Wingo <wingo@pobox.com>
9802 * gst/gst.c (parse_debug_list): Accept e.g. GST_DEBUG=4 to mean
9803 the same thing as GST_DEBUG=*:4.
9804 (parse_debug_level, parse_debug_category): New helper parsers.
9806 2005-08-24 Thomas Vander Stichele <thomas at apestaart dot org>
9808 * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
9809 (gst_base_transform_transform_size), (gst_base_transform_getcaps),
9810 (gst_base_transform_setcaps), (gst_base_transform_get_unit_size),
9811 (gst_base_transform_buffer_alloc),
9812 (gst_base_transform_handle_buffer):
9813 use gboolean return values and pointers to size so we can use the
9814 full GST_BUFFER_SIZE range (guint) for buffer sizes
9815 use GstPadDirection for transform_caps
9816 * gst/base/gstbasetransform.h:
9817 rename get_size to get_unit_size since that's what it is
9818 * gst/elements/gstcapsfilter.c: (gst_capsfilter_transform_caps):
9819 use GstPadDirection for transform_caps
9820 * gst/gstbuffer.c: (gst_buffer_new_and_alloc):
9822 cleanup and debugging
9824 2005-08-24 Stefan Kost <ensonic@users.sf.net>
9826 * gst/gstelement.c: (gst_element_class_init),
9827 (gst_element_set_state), (activate_pads),
9828 (gst_element_save_thyself):
9829 * tools/gst-compprep.c: (main):
9830 * tools/gst-inspect.c: (print_element_properties_info):
9831 * tools/gst-xmlinspect.c: (print_element_properties):
9832 Fixed long standing mem-leak
9834 2005-08-24 Jan Schmidt <thaytan@mad.scientist.com>
9836 * check/gst/gstbin.c: (GST_START_TEST):
9837 * gst/gstbin.c: (bin_bus_handler):
9838 * gst/gstmessage.c: (gst_message_finalize), (_gst_message_copy),
9839 (gst_message_new), (gst_message_new_eos), (gst_message_new_error),
9840 (gst_message_new_warning), (gst_message_new_tag),
9841 (gst_message_new_state_changed), (gst_message_new_segment_start),
9842 (gst_message_new_segment_done), (gst_message_new_custom):
9844 * tools/gst-launch.c: (event_loop):
9845 * tools/gst-md5sum.c: (event_loop):
9846 Change GST_MESSAGE_SRC to be a GObject rather than a GstObject, so
9847 that applications can sensibly post custom messages with references
9848 to their own objects.
9850 2005-08-24 Andy Wingo <wingo@pobox.com>
9852 * gst/gstpad.c (gst_pad_fixate_caps): Check if the caps is fixed
9855 2005-08-24 Wim Taymans <wim@fluendo.com>
9857 * gst/base/gstbasetransform.c: (gst_base_transform_init),
9858 (gst_base_transform_transform_caps),
9859 (gst_base_transform_transform_size),
9860 (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
9861 (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
9862 (gst_base_transform_handle_buffer):
9863 * gst/base/gstbasetransform.h:
9864 Many fixes and new features added by Thomas. Can now also do
9865 transforms with variable sizes and a custom fixate_caps function.
9867 2005-08-24 Wim Taymans <wim@fluendo.com>
9869 * gst/gstbuffer.c: (gst_buffer_new_and_alloc):
9873 Cast to ClockTime before formatting to time.
9878 2005-08-24 Stefan Kost <ensonic@users.sf.net>
9880 * check/gst-libs/controller.c: (GST_START_TEST),
9881 (gst_controller_suite):
9882 * docs/gst/tmpl/gstcaps.sgml:
9883 * docs/gst/tmpl/gstghostpad.sgml:
9884 * docs/gst/tmpl/gstquery.sgml:
9885 * docs/gst/tmpl/gstutils.sgml:
9886 * libs/gst/controller/gst-helper.c: (gst_object_set_controller),
9887 (gst_object_sink_values), (gst_object_get_value_arrays),
9888 (gst_object_get_value_array):
9889 gracefully handle helper method calls to objects that are not beeing
9890 controlled, added test case for that
9892 2005-08-23 Wim Taymans <wim@fluendo.com>
9894 * gst/gstevent.c: (_gst_event_copy), (gst_event_new_custom),
9895 (gst_event_new_newsegment), (gst_event_parse_newsegment),
9896 (gst_event_new_tag), (gst_event_parse_tag), (gst_event_new_qos),
9897 (gst_event_parse_qos), (gst_event_new_seek),
9898 (gst_event_parse_seek):
9900 Some more debugging output and doc cleanups.
9902 * gst/gstqueue.c: (gst_queue_handle_sink_event):
9903 Fix possible deadlock.
9905 2005-08-23 Stefan Kost <ensonic@users.sf.net>
9907 * docs/gst/gstreamer-docs.sgml:
9908 * docs/gst/gstreamer-sections.txt:
9909 * docs/gst/gstreamer.types:
9910 * docs/gst/tmpl/.cvsignore:
9915 added 100 symbols from gstreamer-unused.txt to the right sections
9916 fixed more broken comments
9917 added GstBus to docs
9919 2005-08-23 Stefan Kost <ensonic@users.sf.net>
9921 * docs/gst/gstreamer-sections.txt:
9922 * docs/gst/tmpl/.cvsignore:
9923 * docs/gst/tmpl/gstbin.sgml:
9924 * docs/gst/tmpl/gstbuffer.sgml:
9925 * gst/base/gstbasesrc.c:
9926 * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init):
9929 * tools/gst-launch.1.in:
9930 inlined more doc comments, added missing comments and fixed comments
9933 2005-08-23 Thomas Vander Stichele <thomas at apestaart dot org>
9935 * gst/gstbuffer.c: (gst_buffer_new_and_alloc):
9939 * gst/gstpad.c: (gst_pad_activate_push), (gst_pad_alloc_buffer):
9941 * gst/gststructure.c: (gst_caps_structure_fixate_field_boolean):
9942 * gst/gststructure.h:
9943 add a fixate function for booleans; add a FIXME that these func
9944 names should probably be gst_structure_fixate_*
9946 2005-08-23 Stefan Kost <ensonic@users.sf.net>
9948 * docs/gst/gstreamer-docs.sgml:
9949 * docs/gst/gstreamer-sections.txt:
9951 * gst/gstbin.c: (gst_bin_get_type),
9952 (gst_bin_child_proxy_get_child_by_index),
9953 (gst_bin_child_proxy_get_children_count),
9954 (gst_bin_child_proxy_init):
9955 * gst/gstchildproxy.c: (gst_child_proxy_get_child_by_name),
9956 (gst_child_proxy_get_child_by_index),
9957 (gst_child_proxy_get_children_count), (gst_child_proxy_lookup),
9958 (gst_child_proxy_get_property), (gst_child_proxy_get_valist),
9959 (gst_child_proxy_get), (gst_child_proxy_set_property),
9960 (gst_child_proxy_set_valist), (gst_child_proxy_set),
9961 (gst_child_proxy_child_added), (gst_child_proxy_child_removed),
9962 (gst_child_proxy_base_init), (gst_child_proxy_get_type):
9963 * gst/gstchildproxy.h:
9964 * gst/parse/grammar.y:
9965 * tools/gst-inspect.c: (print_interfaces),
9966 (print_element_properties_info), (print_element_info):
9967 ported gstchildproxy over from 0.8
9968 ported gst-inspect fixes and enhancements over from 0.8
9970 2005-08-22 Wim Taymans <wim@fluendo.com>
9972 * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
9973 (gst_base_transform_handle_buffer):
9974 Also call the transform function if we have ANY caps.
9976 * gst/gstpipeline.c: (gst_pipeline_set_new_stream_time):
9979 2005-08-22 Jan Schmidt <thaytan@mad.scientist.com>
9981 * gst/base/gstbasesrc.c: (gst_base_src_event_handler)
9982 Don't pretend to handle seek events if the source is not seekable
9984 2005-08-22 Jan Schmidt <thaytan@mad.scientist.com>
9986 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
9987 Remove extra parameter to debug output
9989 * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
9990 (gst_base_src_do_seek), (gst_base_src_activate_push):
9991 Fix seek event handling.
9993 * gst/gstpipeline.c: (gst_pipeline_change_state):
9994 * gst/gstqueue.c: (gst_queue_handle_sink_event),
9995 (gst_queue_src_activate_push):
9996 Don't start the src pad task on FLUSH_STOP if the pad
10000 2005-08-22 Wim Taymans <wim@fluendo.com>
10002 * check/gst/gstcaps.c: (GST_START_TEST), (gst_caps_suite):
10003 Added check for gst_static_caps_get() refcounting.
10005 2005-08-22 Wim Taymans <wim@fluendo.com>
10007 * gst/gstcaps.c: (gst_static_caps_get), (gst_caps_to_string):
10008 Make _static_caps_get() refcounting sane.
10010 * gst/gstelement.c: (gst_element_set_state):
10011 Add g_return_val_if_fail() to protect against segfaults.
10013 2005-08-22 Stefan Kost <ensonic@users.sf.net>
10015 * docs/gst/tmpl/gstevent.sgml:
10018 inlined remaining docs, added missing doc comments
10020 2005-08-22 Thomas Vander Stichele <thomas at apestaart dot org>
10022 * check/gst/gstbin.c: (GST_START_TEST):
10023 since we don't know when preroll is done, use refcount range
10025 * gst/check/gstcheck.h:
10026 add macro for checking refcount range
10028 2005-08-21 Thomas Vander Stichele <thomas at apestaart dot org>
10030 * check/Makefile.am:
10031 clean up environment for when registry gets built versus
10032 when actual tests are run; valgrind seems to not report
10033 leaks if GST_PLUGIN_PATH is set to some specific values
10034 * check/gst/gstbin.c: (GST_START_TEST):
10035 add more refcounting checks; maybe this exposes a
10037 * common/check.mak:
10038 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
10039 * gst/check/gstcheck.h:
10040 * gst/gstbin.c: (bin_element_is_semi_sink), (gst_bin_get_state),
10041 (gst_bin_change_state):
10042 * gst/gstpad.c: (gst_pad_activate_push), (gst_pad_chain):
10043 add/fix debugging/whitespace
10045 2005-08-21 Jan Schmidt <thaytan@mad.scientist.com>
10047 * check/gst/gstevent.c: (event_probe), (test_event),
10049 Er, don't call gst_bin_watch_for_state_change you idiot.
10051 2005-08-21 Jan Schmidt <thaytan@mad.scientist.com>
10053 * check/Makefile.am:
10054 Use CHECK_CFLAGS and CHECK_LIBS
10055 * check/gst/gstevent.c: (event_probe), (test_event),
10058 * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
10059 (gst_base_src_start), (gst_base_src_stop),
10060 (gst_base_src_activate_push), (gst_base_src_activate_pull),
10061 (gst_base_src_change_state):
10062 Sprinkle gst_base_src_stop liberally around error paths to fix
10063 problems reusing a source after failed state changes.
10064 * gst/base/gsttypefindhelper.c: (helper_find_peek),
10065 (helper_find_suggest), (gst_type_find_helper):
10066 Extra debug output. Don't segfault on GST_PAD_GETRANGEFUNC = NULL
10068 * docs/gst/tmpl/gstevent.sgml:
10069 Migrate part of the docs from the SGML file. Wait for ensonic to
10070 tell me how I did it wrong ;)
10071 * tools/gst-typefind.c: (main):
10072 Extra robustness to state changes between files.
10074 2005-08-21 Thomas Vander Stichele <thomas at apestaart dot org>
10076 * check/Makefile.am:
10077 don't valgrind the controller test - it's leaking - Stefan, HELP
10078 * gst/check/gstcheck.c: (gst_check_message_error),
10079 (gst_check_chain_func), (gst_check_setup_element),
10080 (gst_check_teardown_element), (gst_check_setup_src_pad),
10081 (gst_check_teardown_src_pad), (gst_check_setup_sink_pad),
10082 (gst_check_teardown_sink_pad):
10083 * gst/check/gstcheck.h:
10084 add a bunch of methods to set up elements, and src and sink pads
10085 * check/elements/fakesrc.c: (setup_fakesrc), (cleanup_fakesrc):
10086 * check/elements/identity.c: (setup_identity), (cleanup_identity),
10089 * gst/gstmessage.c:
10091 whitespace/doc fixes
10093 2005-08-20 Thomas Vander Stichele <thomas at apestaart dot org>
10095 * gst/gstelement.h:
10096 make GST_ELEMENT_ERROR not do GST_ERROR_OBJECT - these errors should
10097 be handled by the application and not always printed as well
10099 2005-08-20 Thomas Vander Stichele <thomas at apestaart dot org>
10101 * check/Makefile.am:
10103 * gst/check/gstcheck.c: (gst_check_message_error):
10104 * gst/check/gstcheck.h:
10105 add a fail_unless_equals_int
10106 add fail_unless for error messages
10108 2005-08-20 Thomas Vander Stichele <thomas at apestaart dot org>
10110 * check/Makefile.am:
10112 * common/Makefile.am:
10113 * common/check.mak:
10115 factor out some of the common stuff so we can use it
10117 2005-08-20 Thomas Vander Stichele <thomas at apestaart dot org>
10119 * check/Makefile.am:
10120 * check/gst/gstiterator.c: (GST_START_TEST):
10121 * check/gst/gstsystemclock.c: (GST_START_TEST),
10122 (gst_systemclock_suite):
10123 * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
10125 valgrind more tests
10127 2005-08-20 Thomas Vander Stichele <thomas at apestaart dot org>
10129 * check/elements/.cvsignore:
10130 * check/elements/gstfakesrc.c:
10131 rename to name of element
10132 * check/elements/identity.c: (chain_func), (event_func),
10133 (setup_identity), (cleanup_identity), (GST_START_TEST),
10134 (identity_suite), (main):
10135 add a test for identity
10136 * check/Makefile.am:
10137 * pkgconfig/Makefile.am:
10138 * pkgconfig/gstreamer-check.pc.in:
10139 * pkgconfig/gstreamer-check-uninstalled.pc.in:
10143 move the check stuff to a library that gets installed
10144 * check/gst-libs/controller.c: (GST_START_TEST):
10145 * check/gst-libs/gdp.c:
10146 * check/gst/gst.c: (GST_START_TEST):
10147 * check/gst/gstbin.c:
10148 * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
10149 * check/gst/gstbus.c:
10150 * check/gst/gstcaps.c: (GST_START_TEST):
10151 * check/gst/gstelement.c:
10152 * check/gst/gstghostpad.c:
10153 * check/gst/gstiterator.c:
10154 * check/gst/gstmessage.c:
10155 * check/gst/gstminiobject.c: (thread_ref), (GST_START_TEST):
10156 * check/gst/gstobject.c:
10157 * check/gst/gstpad.c: (GST_START_TEST):
10158 * check/gst/gststructure.c: (GST_START_TEST):
10159 * check/gst/gstsystemclock.c: (GST_START_TEST),
10160 (gst_systemclock_suite):
10161 * check/gst/gsttag.c: (gst_tag_suite):
10162 * check/gst/gstvalue.c:
10163 * check/pipelines/cleanup.c:
10164 * check/pipelines/simple_launch_lines.c:
10165 * check/states/sinks.c:
10166 change include statement
10168 * docs/gst/gstreamer-sections.txt:
10169 * docs/gst/tmpl/gstpad.sgml:
10170 document more pad stuff
10171 * gst/gstminiobject.c: (gst_mini_object_ref),
10172 (gst_mini_object_unref):
10175 2005-08-19 Stefan Kost <ensonic@users.sf.net>
10177 * docs/gst/tmpl/gst.sgml:
10179 eliminate another tmpl file, fix spelling in the long-description
10181 2005-08-18 Jan Schmidt <thaytan@mad.scientist.com>
10183 * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
10184 (test_event), (timediff), (gstevents_suite):
10185 Should fix build on 64-bit arch's
10187 2005-08-18 Andy Wingo <wingo@pobox.com>
10189 Make sure that when a pipeline goes to PLAYING, that data has
10190 actually hit the sink.
10192 * check/states/sinks.c (test_sink): A sink that doesn't get any
10193 data shouldn't return SUCCESS for going to either PLAYING or
10194 PAUSED. Test also the return values on the way back down.
10196 * gst/gstelement.c (gst_element_set_state): When changing the
10197 state of an element currently changing state asynchronously, go to
10198 lost-state after commiting the pending state. Makes future calls
10199 to get_state continue to return ASYNC.
10201 * gst/base/gstbasesink.c (gst_base_sink_change_state): Return
10202 ASYNC when going to PLAYING if we still don't have preroll, as can
10203 happen with live sources.
10205 2005-08-18 Jan Schmidt <thaytan@mad.scientist.com>
10207 * docs/pwg/advanced-types.xml:
10208 Hack long paragraph into 2 chunks as a workaround for buggy
10209 jadetex version in sid and breezy that loops infinitely and
10212 2005-08-18 Jan Schmidt <thaytan@mad.scientist.com>
10214 * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
10215 (test_event), (timediff), (gstevents_suite):
10216 Provide more error margin in clock measurements to allow for
10217 g_get_current_time inaccuracies.
10219 2005-08-18 Jan Schmidt <thaytan@mad.scientist.com>
10221 * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
10222 (test_event), (timediff), (gstevents_suite):
10223 Fix error message output so I might be able to tell why the
10224 test works here but fails on the build farm.
10226 2005-08-18 Jan Schmidt <thaytan@mad.scientist.com>
10228 * check/Makefile.am:
10229 * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
10230 (test_event), (timediff), (gstevents_suite), (main):
10233 * docs/design/part-seeking.txt:
10234 Spelling correction
10236 * docs/gst/tmpl/gstevent.sgml:
10237 * docs/gst/tmpl/gstfakesrc.sgml:
10240 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
10241 Treat a buffer-without-newsegment the same as a receiving
10242 a newsegment not in time format, and disable syncing to the clock
10245 * gst/gstbus.c: (gst_bus_set_sync_handler):
10246 Assert if anyone tries to replace the existing sync_handler for bus,
10247 as only the owner should be setting it.
10250 Have a fixed set of custom event enums with events identified by
10251 their structure name (as in 0.8), rather than a free-for-all
10252 allowing collisions between enum values from different plugins.
10254 * gst/gstpad.c: (gst_pad_class_init):
10257 * gst/gstqueue.c: (gst_queue_handle_sink_event):
10258 Handle out-of-band downstream events from the sending thread.
10260 2005-08-17 Andy Wingo <wingo@pobox.com>
10262 * gst/gstpipeline.c (gst_pipeline_change_state): Interpret
10263 play-timeout==0 to mean no timeout at all. In that case, don't
10264 bother with a get_state or a warning, just return directly, even
10267 * gst/base/gstbasetransform.c: Debug changes.
10270 * gst/gstutils.c (gst_bin_watch_for_state_change): Add function to
10271 ensure bins post state change messages. A bit of a hack but I can't
10272 think of a way to avoid it.
10274 * check/gst/gstbin.c (test_watch_for_state_change): Added test.
10276 2005-08-16 Andy Wingo <wingo@pobox.com>
10278 * gst/base/gstadapter.h:
10279 * gst/base/gstadapter.c (gst_adapter_take): New function, like
10280 peek() but you own the data. Not terribly efficient atm.
10282 2005-08-16 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
10284 * gst/gstutils.c: (gst_element_found_tags_for_pad), (push_and_ref),
10285 (gst_element_found_tags):
10287 Add two utility functions for tag handling.
10289 2005-08-16 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
10291 * docs/manual/advanced-dataaccess.xml:
10292 * docs/manual/basics-helloworld.xml:
10293 Fix docs to use _bin_add() before _link(), which fixes the examples
10294 with recent core versions (reported by Madhan Raj M
10295 <raj_madan@rediffmail.com>, #313199).
10297 2005-08-16 Wim Taymans <wim@fluendo.com>
10299 * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
10300 Added subtract checks.
10302 * docs/design/part-events.txt:
10303 Some more docs about newsegment
10305 * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
10308 * gst/gstcaps.c: (gst_caps_to_string):
10309 Add comments, cleanups.
10311 * gst/gstelement.c: (gst_element_save_thyself):
10314 * gst/gstvalue.c: (gst_value_collect_int_range),
10315 (gst_string_unwrap), (gst_value_union_int_int_range),
10316 (gst_value_union_int_range_int_range),
10317 (gst_value_intersect_int_int_range),
10318 (gst_value_intersect_int_range_int_range),
10319 (gst_value_intersect_double_double_range),
10320 (gst_value_intersect_double_range_double_range),
10321 (gst_value_intersect_list), (gst_value_subtract_int_int_range),
10322 (gst_value_subtract_int_range_int),
10323 (gst_value_subtract_double_range_double),
10324 (gst_value_subtract_double_range_double_range),
10325 (gst_value_subtract_from_list), (gst_value_subtract_list),
10326 (gst_value_can_compare), (gst_value_compare_fraction):
10327 Cleanups, add comments, remove unneeded asserts.
10329 2005-08-15 Thomas Vander Stichele <thomas at apestaart dot org>
10331 * tools/gst-launch.c: (event_loop):
10332 don't convert NULL structures to strings
10334 2005-08-15 Stefan Kost <ensonic@users.sf.net>
10336 * docs/gst/gstreamer-sections.txt:
10337 made some defines private
10338 * docs/gst/tmpl/gstconfig.sgml:
10339 * docs/gst/tmpl/gstqueue.sgml:
10340 * docs/gst/tmpl/gsttaglist.sgml:
10341 * docs/gst/tmpl/gsttypes.sgml:
10342 * docs/gst/tmpl/gstutils.sgml:
10343 * docs/pwg/appendix-porting.xml:
10344 * gst/base/gstbasesink.h:
10345 * gst/base/gstbasesrc.c:
10346 * gst/base/gstbasesrc.h:
10347 * gst/elements/gstfakesink.c: (gst_fake_sink_class_init):
10348 * gst/elements/gstfakesrc.c: (gst_fake_src_class_init):
10349 * gst/gstelement.c: (gst_element_class_init):
10350 * gst/gstpad.c: (gst_pad_class_init):
10351 * gst/gstqueue.c: (gst_queue_class_init):
10352 * gst/gstxml.c: (gst_xml_class_init):
10353 documented all undocumented signal inline
10354 * libs/gst/controller/gst-controller.h:
10357 2005-08-15 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
10359 * docs/pwg/appendix-porting.xml:
10360 Document _set_link_function -> _set_setcaps_function.
10362 2005-08-15 Thomas Vander Stichele <thomas at apestaart dot org>
10364 * check/Makefile.am:
10365 add a .check target for running the check
10366 * check/gst-libs/controller.c: (GST_START_TEST):
10368 * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
10369 complete checks for gstbuffer; would be nice if I could get the
10370 gcov stuff to work so I can see if I actually completed gstbuffer.c
10371 * check/gstcheck.h:
10372 add ASSERT_BUFFER_REFCOUNT
10374 2005-08-13 Tim-Philipp Müller <tim at centricular dot net>
10376 * docs/gst/gstreamer-sections.txt:
10377 * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
10379 Add GST_TAG_LANGUAGE_CODE as we have in 0.8, and don't
10380 spew out a warning if a tag that is already registered
10381 is re-registered, unless it is re-registered with a
10382 different type (#308438).
10384 2005-08-12 Tim-Philipp Müller <tim at centricular dot net>
10386 * docs/pwg/appendix-porting.xml:
10387 * docs/pwg/building-state.xml:
10388 Add some paragraphs about state changes in 0.9 to the PWG
10389 and the porting guide, in particular about the new meaning
10390 of GST_STATE_PAUSED and how to write state change functions
10391 with concurrent access by multiple threads in mind.
10393 2005-08-11 Stefan Kost <ensonic@users.sf.net>
10395 * docs/gst/gstreamer-docs.sgml:
10396 * docs/libs/gstreamer-libs-docs.sgml:
10397 added deprecation and since indexes
10398 * libs/gst/controller/gst-controller.c:
10399 * libs/gst/controller/gst-helper.c:
10403 2005-08-11 Wim Taymans <wim@fluendo.com>
10405 * gst/gstghostpad.c: (gst_proxy_pad_set_target_unlocked),
10406 (gst_proxy_pad_set_target), (gst_proxy_pad_get_target),
10407 (gst_proxy_pad_dispose), (gst_ghost_pad_do_activate_push),
10408 (gst_ghost_pad_do_link), (gst_ghost_pad_set_internal),
10409 (gst_ghost_pad_new_notarget), (gst_ghost_pad_get_target),
10410 (gst_ghost_pad_set_target):
10411 Actually implement (re)setting the target on a ghostpad
10412 as described in the docs.
10414 2005-08-10 Tim-Philipp Müller <tim at centricular dot net>
10416 * gst/gst.c: (gst_init_check_with_popt_table), (init_pre):
10417 Check whether GST_DEBUG_NO_COLOR environment variable is
10418 set and disable coloured debug output if that is the case.
10420 2005-08-10 Tim-Philipp Müller <tim at centricular dot net>
10422 * gst/base/gsttypefindhelper.c: (helper_find_peek),
10423 (gst_type_find_helper):
10424 The memory returned by gst_type_find_peek() needs to
10425 stay valid until the end of a typefind function, and
10426 typefind functions may keep results from different
10427 offsets around, so we can't just unref the buffer from
10428 the previous _peek(), but have to save all buffers
10429 returned by _peek() until typefinding is done and only
10432 2005-08-09 Tim-Philipp Müller <tim at centricular dot net>
10434 * docs/gst/gstreamer-sections.txt:
10436 New macros: GST_ROUND_UP_2() through GST_ROUND_UP_64().
10438 2005-08-08 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
10440 * gst/base/gstbasetransform.c: (gst_base_transform_buffer_alloc):
10441 Fix a pretty good memleak.
10443 2005-08-08 Tim-Philipp Müller <tim at centricular dot net>
10445 * gst/gstiterator.h:
10446 Fix wrong include and 'make distcheck'.
10448 2005-08-08 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
10450 * gst/gstbin.c: (bin_bus_handler):
10451 Use gst_element_post_message() instead.
10453 2005-08-08 Tim-Philipp Müller <tim at centricular dot net>
10455 * gst/base/gstadapter.h:
10456 * gst/base/gstbasesink.h:
10457 * gst/base/gstbasesrc.h:
10458 * gst/base/gstbasetransform.h:
10459 * gst/base/gstcollectpads.h:
10460 * gst/base/gstpushsrc.h:
10461 * gst/gstiterator.h:
10462 Add padding to our base elements' class and instance structs and
10463 to GstIterator (you will need to rebuild all plugins and apps!)
10465 2005-08-08 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
10467 * gst/gstbin.c: (bin_bus_handler):
10468 Make default message forwarding from child->bus to bin->bus
10469 threadsafe and make it not emit warnings if the parent has no bus.
10471 2005-08-08 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
10473 * gst/gstelement.c: (activate_pads):
10474 On paused->ready, set pad->caps to NULL, as is the documented
10475 behaviour in this state change. Fixes playback of series of
10476 media files when visualization is enabled in Totem.
10478 2005-08-07 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
10480 * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
10481 Allow NULL as filter-caps (which means "any").
10483 2005-08-05 Stefan Kost <ensonic@users.sf.net>
10485 * docs/libs/gstreamer-libs-sections.txt:
10486 * libs/gst/controller/gst-controller.c:
10487 * libs/gst/controller/gst-controller.h:
10488 * libs/gst/controller/gst-helper.c:
10489 adding more entries to the docs and fix small doc-bugs
10491 2005-08-05 Stefan Kost <ensonic@users.sf.net>
10493 * docs/gst/gstreamer-docs.sgml:
10494 * docs/gst/gstreamer-sections.txt:
10495 * docs/gst/gstreamer.types:
10496 * docs/gst/tmpl/gstbasesink.sgml:
10497 * docs/gst/tmpl/gstbasesrc.sgml:
10498 * docs/gst/tmpl/gstbasetransform.sgml:
10499 * docs/gst/tmpl/gstfakesrc.sgml:
10500 * gst/base/gstcollectpads.c:
10501 * gst/base/gstcollectpads.h:
10502 * libs/gst/controller/gst-controller.c:
10503 * libs/gst/controller/gst-controller.h:
10504 * libs/gst/controller/gst-helper.c:
10505 * libs/gst/controller/gst-interpolation.c:
10506 * libs/gst/controller/lib.c:
10507 added long/short desc for controller docs
10508 added collectpads base class docs
10509 added correct includes to base-class docs
10511 2005-08-05 Stefan Kost <ensonic@users.sf.net>
10513 * check/gst-libs/controller.c: (gst_test_mono_source_get_property),
10514 (gst_test_mono_source_set_property),
10515 (gst_test_mono_source_class_init), (GST_START_TEST),
10516 (gst_controller_suite):
10517 * docs/gst/gstreamer-docs.sgml:
10518 * docs/gst/gstreamer-sections.txt:
10519 * docs/gst/gstreamer.types:
10520 * docs/libs/gstreamer-libs-docs.sgml:
10521 * docs/libs/gstreamer-libs-sections.txt:
10522 * gst/base/gstadapter.c:
10523 * libs/gst/controller/gst-controller.c:
10524 (gst_controlled_property_new), (gst_controlled_property_free),
10525 (gst_controller_new_valist),
10526 (gst_controller_remove_properties_valist),
10527 (gst_controller_sink_values), (_gst_controller_finalize):
10528 * libs/gst/controller/gst-controller.h:
10529 * libs/gst/controller/gst-helper.c:
10530 (gst_object_control_properties), (gst_object_uncontrol_properties),
10531 (gst_object_get_controller), (gst_object_set_controller),
10532 (gst_object_sink_values), (gst_object_get_value_arrays),
10533 (gst_object_get_value_array):
10534 more tests (and fixes) for the controller
10535 more docs for the controller
10536 integrated companies docs for the adapter
10538 2005-08-05 Thomas Vander Stichele <thomas at apestaart dot org>
10540 * check/elements/gstfakesrc.c: (setup_fakesrc), (cleanup_fakesrc),
10541 (GST_START_TEST), (fakesrc_suite):
10542 add tests for sizetype
10544 2005-08-04 Andy Wingo <wingo@pobox.com>
10546 * gst/elements/gstcapsfilter.c: Reimplement using basetransform,
10547 fixes buffer_alloc proxying among other things.
10549 * gst/base/gstbasetransform.c:
10550 * gst/base/gstbasetransform.h:
10551 Revert patch to gstbasetransform from 7-28 removing
10554 * gst/base/gstbasetransform.h (GstBaseTransformClass.get_size):
10555 * gst/base/gstbasetransform.c (gst_base_transform_get_size):
10556 Semantics changed, should return not the size of the output buffer
10557 but the byte size of a buffer with a given caps.
10559 * gst/base/gstbasetransform.c (gst_base_transform_getcaps): Better
10561 (gst_base_transform_configure_caps): Don't set out_size here: (in,
10562 out) are not the pad caps until setcaps finishes.
10563 (gst_base_transform_buffer_alloc): Proxy the buffer_alloc for the
10564 not-in-place case as well. Deal with changing from in-place to
10565 not-in-place within calling pad_alloc_buffer. Still a bit
10566 concerned about the overhead here...
10568 2005-08-03 Andy Wingo <wingo@pobox.com>
10570 * gst/base/gstbasetransform.c (gst_base_transform_setcaps): Not
10571 fixating is an error.
10573 2005-08-04 Edward Hervey <edward@fluendo.com>
10575 * gst/base/gstadapter.h:
10576 Added gst_adapter_get_type() to the header
10578 2005-08-03 Stefan Kost <ensonic@users.sf.net>
10580 * check/Makefile.am:
10581 * check/gst-libs/controller.c:
10582 * libs/gst/controller/gst-controller.c:
10583 (gst_controller_new_valist):
10584 added check test suite for the controller
10585 * gst/base/gstpushsrc.c:
10588 2005-08-03 Stefan Kost <ensonic@users.sf.net>
10590 * docs/gst/Makefile.am:
10591 * docs/gst/gstreamer-docs.sgml:
10592 * docs/gst/gstreamer-sections.txt:
10593 * docs/gst/gstreamer.types:
10594 * docs/gst/tmpl/gstfakesrc.sgml:
10596 * gst/base/gstbasesink.c:
10597 * gst/base/gstbasesink.h:
10598 * gst/base/gstbasesrc.c:
10599 * gst/base/gstbasesrc.h:
10600 * gst/base/gstbasetransform.c:
10601 * gst/base/gstpushsrc.c:
10602 * gst/base/gstpushsrc.h:
10603 add short/long description docs to base classes
10604 add pushsrc to the docs
10605 remove consolidated doc fragments
10607 2005-08-03 Stefan Kost <ensonic@users.sf.net>
10610 * docs/libs/Makefile.am:
10611 * docs/libs/gstreamer-libs-docs.sgml:
10612 * docs/libs/gstreamer-libs-sections.txt:
10613 * docs/libs/gstreamer-libs.types:
10614 * examples/Makefile.am:
10615 * examples/controller/.cvsignore:
10616 * examples/controller/Makefile.am:
10617 * examples/controller/audio-example.c: (main):
10618 * libs/gst/Makefile.am:
10619 * libs/gst/controller/.cvsignore:
10620 * libs/gst/controller/Makefile.am:
10621 * libs/gst/controller/gst-controller.c:
10622 (on_object_controlled_property_changed), (gst_timed_value_compare),
10623 (gst_timed_value_find),
10624 (gst_controlled_property_set_interpolation_mode),
10625 (gst_controlled_property_new), (gst_controlled_property_free),
10626 (gst_controller_find_controlled_property),
10627 (gst_controller_new_valist), (gst_controller_new),
10628 (gst_controller_remove_properties_valist),
10629 (gst_controller_remove_properties), (gst_controller_set),
10630 (gst_controller_set_from_list), (gst_controller_unset),
10631 (gst_controller_get), (gst_controller_get_all),
10632 (gst_controller_sink_values), (gst_controller_get_value_arrays),
10633 (gst_controller_get_value_array),
10634 (gst_controller_set_interpolation_mode),
10635 (_gst_controller_finalize), (_gst_controller_init),
10636 (_gst_controller_class_init), (gst_controller_get_type):
10637 * libs/gst/controller/gst-controller.h:
10638 * libs/gst/controller/gst-helper.c: (g_object_control_properties),
10639 (g_object_uncontrol_properties), (g_object_get_controller),
10640 (g_object_set_controller), (g_object_sink_values),
10641 (g_object_get_value_arrays), (g_object_get_value_array):
10642 * libs/gst/controller/gst-interpolation.c:
10643 (gst_controlled_property_find_timed_value_node),
10644 (interpolate_none_get), (interpolate_trigger_get),
10645 (interpolate_trigger_get_value_array):
10646 * libs/gst/controller/lib.c: (gst_controller_init):
10647 * pkgconfig/Makefile.am:
10648 * pkgconfig/gstreamer-control-uninstalled.pc.in:
10649 * pkgconfig/gstreamer-control.pc.in:
10650 * testsuite/Makefile.am:
10651 * testsuite/controller/.cvsignore:
10652 * testsuite/controller/Makefile.am:
10653 * testsuite/controller/interpolator.c: (main):
10654 added controller code
10655 removed dparam pc files
10657 2005-08-01 Jan Schmidt <thaytan@mad.scientist.com>
10658 * gst/base/gstcollectpads.c: (gst_collectpads_finalize),
10659 (gst_collectpads_stop):
10660 Broadcast the condition when shutting down, to make sure we wake all
10661 threads up. Shut down pads on finalize, for safety.
10663 2005-08-01 Jan Schmidt <thaytan@mad.scientist.com>
10664 * gst/base/gstbasetransform.c: (gst_base_transform_init),
10665 (gst_base_transform_handle_buffer),
10666 (gst_base_transform_change_state):
10667 Handle PAUSED->READY->PAUSED transition after negotiation
10669 * gst/gstmessage.c: (gst_message_init):
10670 Extra piece of debug for new messages.
10672 2005-08-01 Stefan Kost <ensonic@users.sf.net>
10675 * docs/gst/tmpl/gstbasesrc.sgml:
10676 * docs/gst/tmpl/gstelement.sgml:
10677 * docs/gst/tmpl/gstevent.sgml:
10678 * docs/gst/tmpl/gstfakesrc.sgml:
10679 * docs/gst/tmpl/gstformat.sgml:
10680 * docs/gst/tmpl/gstghostpad.sgml:
10681 * docs/gst/tmpl/gstpad.sgml:
10682 * docs/gst/tmpl/gstquery.sgml:
10683 * docs/gst/tmpl/gststructure.sgml:
10684 * docs/gst/tmpl/gsttaglist.sgml:
10685 * docs/gst/tmpl/gstvalue.sgml:
10686 * docs/libs/gstreamer-libs-docs.sgml:
10687 * docs/libs/gstreamer-libs-sections.txt:
10688 * docs/libs/gstreamer-libs.types:
10689 * libs/gst/Makefile.am:
10690 * libs/gst/control/.cvsignore:
10691 * libs/gst/control/Makefile.am:
10692 * libs/gst/control/control.c:
10693 * libs/gst/control/control.h:
10694 * libs/gst/control/dparam.c:
10695 * libs/gst/control/dparam.h:
10696 * libs/gst/control/dparam_smooth.c:
10697 * libs/gst/control/dparam_smooth.h:
10698 * libs/gst/control/dparamcommon.h:
10699 * libs/gst/control/dparammanager.c:
10700 * libs/gst/control/dparammanager.h:
10701 * libs/gst/control/dplinearinterp.c:
10702 * libs/gst/control/dplinearinterp.h:
10703 * libs/gst/control/unitconvert.c:
10704 * libs/gst/control/unitconvert.h:
10705 * testsuite/Makefile.am:
10706 * testsuite/dynparams/.cvsignore:
10707 * testsuite/dynparams/Makefile.am:
10708 * testsuite/dynparams/dparamstest.c:
10709 * tools/Makefile.am:
10710 * tools/gst-inspect.c: (print_element_info), (main):
10711 * tools/gst-xmlinspect.c: (print_element_info), (main):
10712 deactivate and remove dparams (libgstcontrol)
10714 2005-08-01 Tim-Philipp Müller <tim at centricular dot net>
10716 * gst/elements/gsttypefindelement.c:
10717 (gst_type_find_element_have_type), (gst_type_find_element_init),
10718 (stop_typefinding), (gst_type_find_element_handle_event),
10719 (gst_type_find_element_chain), (gst_type_find_element_getrange):
10720 * gst/elements/gsttypefindelement.h:
10721 Set caps on all outgoing buffers, not just the first one.
10723 2005-08-01 Tim-Philipp Müller <tim at centricular dot net>
10725 * gst/elements/gsttypefindelement.c:
10726 (gst_type_find_element_have_type),
10727 (gst_type_find_element_check_set_buffer_caps),
10728 (gst_type_find_element_init), (stop_typefinding),
10729 (gst_type_find_element_handle_event),
10730 (gst_type_find_element_chain), (gst_type_find_element_getrange):
10731 * gst/elements/gsttypefindelement.h:
10732 Set caps on first outgoing buffer when we've found the type.
10734 2005-08-01 Tim-Philipp Müller <tim at centricular dot net>
10736 * docs/gst/gstreamer-docs.sgml:
10737 * docs/gst/gstreamer-sections.txt:
10738 * docs/gst/tmpl/gstscheduler.sgml:
10739 * docs/gst/tmpl/gstschedulerfactory.sgml:
10740 Remove some old cruft from docs.
10742 2005-07-31 Tim-Philipp Müller <tim at centricular dot net>
10745 Fix inline docs for GstPadLinkReturn.
10747 * gst/gststructure.c: (gst_structure_has_name):
10748 * gst/gststructure.h:
10749 * docs/gst/gstreamer-sections.txt:
10750 New API: gst_structure_has_name().
10752 2005-07-30 Tim-Philipp Müller <tim at centricular dot net>
10755 Use AC_SYS_LARGEFILE, which will set _FILE_OFFSET_BITS=64
10756 and _LARGEFILE_SOURCE in config.h as required. Do not
10757 export those flags in our .pc files any longer (#142209).
10759 Remove unused GST_DISABLE_OMEGA_COTHREADS stuff.
10761 * gst/elements/gstfilesink.c: (gst_file_sink_class_init),
10762 (gst_file_sink_do_seek), (gst_file_sink_event),
10763 (gst_file_sink_get_current_offset), (gst_file_sink_render):
10764 Redo seek/tell calls with large file support in mind; add some
10765 debugging messages; add log message that tells us when large
10766 file support is unavailable or not enabled for some reason.
10768 * gst/elements/gstfilesrc.c: (gst_file_src_class_init):
10769 Add log message that tells us when large file support
10770 is unavailable or not enabled for some reason.
10772 2005-07-29 Wim Taymans <wim@fluendo.com>
10774 * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
10775 Added test for removing an element with ghostpad from a bin.
10776 Fixed test as current implementation does the right thing.
10778 * gst/gstghostpad.c: (gst_proxy_pad_class_init),
10779 (gst_proxy_pad_do_query_type), (gst_proxy_pad_do_event),
10780 (gst_proxy_pad_do_query), (gst_proxy_pad_do_internal_link),
10781 (gst_proxy_pad_do_bufferalloc), (gst_proxy_pad_do_activate),
10782 (gst_proxy_pad_do_activatepull), (gst_proxy_pad_do_activatepush),
10783 (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange),
10784 (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_getcaps),
10785 (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
10786 (gst_proxy_pad_do_setcaps), (gst_proxy_pad_set_target),
10787 (gst_proxy_pad_get_target), (gst_proxy_pad_init),
10788 (gst_proxy_pad_dispose), (gst_proxy_pad_finalize),
10789 (gst_ghost_pad_class_init), (gst_ghost_pad_do_activate_push),
10790 (gst_ghost_pad_do_link), (gst_ghost_pad_do_unlink),
10791 (gst_ghost_pad_set_internal), (gst_ghost_pad_dispose),
10792 (gst_ghost_pad_new_notarget), (gst_ghost_pad_new),
10793 (gst_ghost_pad_get_target), (gst_ghost_pad_set_target):
10794 * gst/gstghostpad.h:
10795 Clean up ghostpads, remove properties for internal stuff.
10798 Prepare for switching targets, not all use cases work yet.
10800 2005-07-29 Wim Taymans <wim@fluendo.com>
10802 * docs/design/part-gstghostpad.txt:
10805 * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
10806 (gst_bin_remove_func):
10807 Unlinking pads while holding the bin LOCK is not a good
10810 * gst/gstpad.c: (gst_pad_class_init),
10811 (gst_pad_link_check_hierarchy), (gst_pad_get_caps_unlocked),
10812 (gst_pad_accept_caps), (gst_pad_set_caps), (gst_pad_send_event):
10813 No prob setting template after creating the pad.
10815 2005-07-29 Jan Schmidt <thaytan@mad.scientist.com>
10817 * gst/gstbus.c: (gst_bus_set_flushing), (gst_bus_pop),
10818 (gst_bus_peek), (gst_bus_source_dispatch),
10819 (gst_bus_add_watch_full), (poll_handler), (poll_timeout),
10820 (poll_destroy), (poll_destroy_timeout), (gst_bus_poll):
10821 gst_bus_poll may be called from other threads. Handle
10822 this nicely by not making poll_data disappear off the
10823 stack once gst_bus_poll returns.
10824 gst_bus_peek now increments the refcount on the returned
10827 2005-07-29 Wim Taymans <wim@fluendo.com>
10829 * docs/design/part-gstghostpad.txt:
10830 Overview of current GhostPad datastructures and use
10831 cases for changing the target.
10833 2005-07-28 Wim Taymans <wim@fluendo.com>
10835 * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
10836 Added checks for hierarchy consistency whan adding linked
10839 * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
10840 Added check to test element scheduling without bin/pipeline.
10842 * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
10843 First add elements to bin, then link.
10845 * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
10846 (gst_bin_remove_func):
10847 Unlink pads from elements added/removed from bin to maintain
10848 hierarchy consistency.
10850 2005-07-28 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
10852 * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
10853 (gst_base_transform_handle_buffer):
10854 * gst/base/gstbasetransform.h:
10855 Remove broken delay_configure (fixes renegotiation of software
10856 scaling pipelines); remove some leftover printf()s.
10858 2005-07-28 Wim Taymans <wim@fluendo.com>
10860 * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
10861 Added some more tests for wrong hierarchy
10863 * docs/design/part-overview.txt:
10866 * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_dispose):
10869 * gst/gstelement.c: (gst_element_remove_pad), (gst_element_seek),
10870 (gst_element_dispose):
10871 Some more cleanups.
10873 * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
10874 (gst_pad_link_check_hierarchy), (gst_pad_link_prepare),
10875 (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
10876 (gst_pad_set_caps), (gst_pad_send_event):
10877 Check for correct hierarchy when linking pads. Moving to
10878 strict requirement for ghostpads when linking elements in
10882 Clean ups. Added WRONG_HIERARCHY return value.
10884 2005-07-28 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
10886 * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
10887 Better debug if no transform is possible.
10889 2005-07-27 Wim Taymans <wim@fluendo.com>
10891 * docs/random/wtay/network-transp:
10892 Some old doc I had.
10894 2005-07-27 Wim Taymans <wim@fluendo.com>
10896 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
10897 (gst_dp_event_from_packet):
10898 Fix serialization of seek events.
10900 2005-07-27 Wim Taymans <wim@fluendo.com>
10902 * check/gst-libs/gdp.c: (GST_START_TEST):
10903 * gst/elements/gstfakesink.c: (gst_fake_sink_event):
10904 Fix compilation and fix event serialization.
10906 2005-07-27 Wim Taymans <wim@fluendo.com>
10909 * docs/design/part-TODO.txt:
10910 * docs/design/part-events.txt:
10913 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
10914 (gst_base_sink_event), (gst_base_sink_do_sync),
10915 (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
10916 * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
10917 (gst_base_src_do_seek), (gst_base_src_event_handler),
10918 (gst_base_src_loop):
10919 * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
10920 (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
10921 (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
10922 (gst_base_transform_event), (gst_base_transform_handle_buffer),
10923 (gst_base_transform_set_passthrough),
10924 (gst_base_transform_is_passthrough):
10925 * gst/elements/gstfakesink.c: (gst_fake_sink_event):
10926 * gst/elements/gstfilesink.c: (gst_file_sink_event):
10932 * gst/gstelement.c: (gst_element_seek):
10933 * gst/gstelement.h:
10934 Update gst_element_seek.
10936 * gst/gstevent.c: (gst_event_finalize), (_gst_event_copy),
10937 (gst_event_new), (gst_event_new_custom), (gst_event_get_structure),
10938 (gst_event_new_flush_start), (gst_event_new_flush_stop),
10939 (gst_event_new_eos), (gst_event_new_newsegment),
10940 (gst_event_parse_newsegment), (gst_event_new_tag),
10941 (gst_event_parse_tag), (gst_event_new_filler), (gst_event_new_qos),
10942 (gst_event_parse_qos), (gst_event_new_seek),
10943 (gst_event_parse_seek), (gst_event_new_navigation):
10945 Make GstEvent use GstStructure. Add parsing code, make sure the
10946 API is sufficiently generic.
10947 Mark possible directions of events and serialization.
10949 * gst/gstmessage.c: (gst_message_init), (gst_message_finalize),
10950 (_gst_message_copy), (gst_message_new_segment_start),
10951 (gst_message_new_segment_done), (gst_message_new_custom),
10952 (gst_message_parse_segment_start),
10953 (gst_message_parse_segment_done):
10956 * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
10957 (gst_pad_set_caps), (gst_pad_send_event):
10958 Update for new events.
10959 Catch events sent in wrong directions.
10961 * gst/gstqueue.c: (gst_queue_link_src),
10962 (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
10963 (gst_queue_handle_src_query):
10968 Remove event code from this file.
10970 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
10971 (gst_dp_event_from_packet):
10974 2005-07-27 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
10976 * gst/base/gstbasetransform.c: (gst_base_transform_getcaps),
10977 (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
10978 (gst_base_transform_get_size), (gst_base_transform_handle_buffer):
10979 Make debugging actually useful.
10981 2005-07-25 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
10983 * gst/gstpad.c: (fixate_value), (gst_pad_default_fixate),
10984 (gst_pad_fixate_caps):
10985 Implement default fixation once again, so that gst_pad_fixate()
10986 actually does anything at all. This probably needs to be some
10987 sort of a last resort, and use profile-based fixation first, but
10988 since that doesn't exist yet, this is the best we have. Fixes
10989 visualization in Totem.
10991 2005-07-22 Wim Taymans <wim@fluendo.com>
10993 * docs/design/part-events.txt:
10996 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
10997 (gst_base_sink_do_sync), (gst_base_sink_activate_push),
10998 (gst_base_sink_activate_pull):
10999 Some more comments.
11001 * gst/elements/gstfakesrc.c: (gst_fake_src_class_init),
11002 (gst_fake_src_create):
11003 Fix handoff marshall.
11005 * gst/elements/gstidentity.c: (gst_identity_class_init),
11006 (gst_identity_transform_ip):
11007 We're a real inplace element.
11009 * gst/gstbus.c: (gst_bus_post):
11010 Added some comments.
11012 * tests/lat.c: (fakesrc), (fakesink), (simple), (queue), (main):
11013 * tests/muxing/case1.c: (main):
11014 * tests/sched/dynamic-pipeline.c: (main):
11015 * tests/sched/interrupt1.c: (main):
11016 * tests/sched/interrupt2.c: (main):
11017 * tests/sched/interrupt3.c: (main):
11018 * tests/sched/runxml.c: (main):
11019 * tests/sched/sched-stress.c: (main):
11020 * tests/seeking/seeking1.c: (event_received), (main):
11021 * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
11023 * tests/threadstate/threadstate3.c: (main):
11024 * tests/threadstate/threadstate4.c: (main):
11025 * tests/threadstate/threadstate5.c: (main):
11028 2005-07-21 Wim Taymans <wim@fluendo.com>
11030 * docs/design/part-seeking.txt:
11031 Some small additions.
11033 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
11034 (gst_base_sink_get_times), (gst_base_sink_do_sync),
11035 (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
11036 * gst/base/gstbasesink.h:
11037 discont values are gint64, handle the math correctly.
11039 * gst/base/gstbasesrc.c: (gst_base_src_loop):
11040 Make the basesrc report error if the source pad is not linked.
11042 * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
11043 (gst_queue_loop), (gst_queue_handle_src_query),
11044 (gst_queue_src_activate_push):
11045 Make queue collect data even if the srcpad is not linked.
11046 Start pushing out data as soon as it is linked.
11048 * gst/gstutils.c: (gst_element_unlink), (gst_flow_get_name):
11050 Added gst_flow_get_name() to ease error reporting.
11052 2005-07-20 Wim Taymans <wim@fluendo.com>
11054 * gst/gstmessage.c: (gst_message_new_segment_start),
11055 (gst_message_new_segment_done), (gst_message_parse_segment_start),
11056 (gst_message_parse_segment_done):
11057 * gst/gstmessage.h:
11058 Added a bunch of messages for advanced seeking.
11060 * gst/parse/grammar.y:
11061 * libs/gst/control/dparammanager.c: (gst_dpman_set_parent),
11062 (gst_dpman_state_changed):
11063 Fix some new-pad -> pad-added signals
11065 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
11067 * docs/manual/appendix-porting.xml:
11068 * docs/pwg/appendix-porting.xml:
11069 Document new-pad/state-change signal renames and the FixedList
11072 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
11074 * docs/manual/advanced-autoplugging.xml:
11075 * docs/manual/basics-helloworld.xml:
11076 * docs/manual/basics-pads.xml:
11077 * docs/random/ds/0.9-suggested-changes:
11078 * gst/gstelement.c: (gst_element_class_init), (gst_element_seek):
11079 * gst/gstelement.h:
11083 * gst/gststructure.c: (gst_structure_value_get_generic_type),
11084 (gst_structure_parse_array), (gst_structure_parse_value):
11085 * gst/gstvalue.c: (gst_type_is_fixed),
11086 (gst_value_list_prepend_value), (gst_value_list_append_value),
11087 (gst_value_list_get_size), (gst_value_list_get_value),
11088 (gst_value_transform_array_string), (gst_value_serialize_array),
11089 (gst_value_deserialize_array), (gst_value_intersect_array),
11090 (gst_value_is_fixed), (_gst_value_initialize):
11092 GstElement::new-pad -> pad-added, GstElement::state-change ->
11093 state-changed, GstValueFixedList -> GstValueArray, add format and
11094 flags as their own arguments in gst_element_seek() (should improve
11095 "bindeability"), remove function generators since they don't work
11096 under a whole bunch of compilers (they were deprecated already
11099 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
11101 * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
11102 (_gst_debug_register_funcptr):
11104 Fix illegal cast on some platforms (#309253).
11106 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
11108 * gst/gstmessage.c: (gst_message_new_custom):
11109 * gst/gstmessage.h:
11110 Add _new_custom, make _new_application a macro to _new_custom.
11112 2005-07-20 Wim Taymans <wim@fluendo.com>
11114 * gst/base/gstbasesrc.c: (gst_base_src_init),
11115 (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
11116 * gst/base/gstbasesrc.h:
11117 Add a gboolean to decide when to push out a discont.
11119 * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
11120 (gst_queue_loop), (gst_queue_handle_src_query),
11121 (gst_queue_sink_activate_push), (gst_queue_src_activate_push),
11122 (gst_queue_set_property), (gst_queue_get_property):
11125 * tests/threadstate/threadstate1.c: (main):
11126 Make a thread test compile and run... very silly..
11129 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
11131 * docs/manual/appendix-porting.xml:
11132 Mention removal of libgstgconf-0.9.la and existence of gconf
11135 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
11137 * docs/pwg/advanced-clock.xml:
11138 * docs/pwg/appendix-porting.xml:
11139 * docs/pwg/intro-preface.xml:
11140 * docs/pwg/other-base.xml:
11141 * docs/pwg/other-manager.xml:
11142 * docs/pwg/other-nton.xml:
11143 * docs/pwg/other-ntoone.xml:
11144 * docs/pwg/other-oneton.xml:
11145 * docs/pwg/pwg.xml:
11146 Document base classes, update sections of n-to-1 and 1-to-n (muxer,
11147 demuxer), remove n-to-n (was never written), fix some code examples
11148 and links and update the porting section to include all this.
11150 2005-07-19 Wim Taymans <wim@fluendo.com>
11152 * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_sink_event),
11153 (gst_queue_chain), (gst_queue_loop), (gst_queue_handle_src_event),
11154 (gst_queue_handle_src_query), (gst_queue_sink_activate_push),
11155 (gst_queue_src_activate_push), (gst_queue_change_state),
11156 (gst_queue_get_property):
11158 Propagate GstFlowReturn more intelligently upstream and output
11159 an ERROR/EOS when streaming stopped due to fatal error.
11161 2005-07-19 Wim Taymans <wim@fluendo.com>
11163 * tools/gst-launch.c: (check_intr), (event_loop), (main):
11164 Don't block forever for the state change to complete, the
11165 pipeline already did with a sensible timeout.
11167 2005-07-19 Wim Taymans <wim@fluendo.com>
11169 * gst/base/gstbasesrc.c: (gst_base_src_get_range):
11170 Make sure we never call the create function is we
11173 2005-07-19 Andy Wingo <wingo@pobox.com>
11175 * gst/parse/parse.l: Attempt to solve bug #172815.
11177 2005-07-19 Wim Taymans <wim@fluendo.com>
11179 * docs/design/part-clocks.txt:
11180 * docs/design/part-events.txt:
11181 * gst/base/gstbasesrc.c: (gst_base_src_do_seek):
11182 Small docs updates.
11183 Only update the seeking values when we are not
11186 2005-07-19 Jan Schmidt <thaytan@mad.scientist.com>
11188 * gst/base/gstbasesrc.c: (gst_base_src_loop):
11189 Oops, ignore the result of gst_pad_push_event here.
11191 2005-07-19 Jan Schmidt <thaytan@mad.scientist.com>
11193 * gst/base/gstbasesrc.c: (gst_base_src_loop),
11194 (gst_base_src_activate_push):
11195 Send discont event from the loop function, as pads
11196 aren't activated yet in the activate_push handler.
11198 * gst/gstbin.c: (bin_bus_handler):
11199 Don't leak element name.
11201 2005-07-18 Andy Wingo <wingo@pobox.com>
11203 * configure.ac: Use AS_LIBTOOL_TAGS.
11205 2005-07-18 Wim Taymans <wim@fluendo.com>
11207 * docs/gst/gstreamer.types:
11208 Remove deleted types.
11210 2005-07-18 Wim Taymans <wim@fluendo.com>
11212 * check/elements/gstfakesrc.c: (GST_START_TEST):
11215 * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
11216 (init_popt_callback):
11218 * gst/gst_private.h:
11219 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_add_func),
11220 (gst_bin_remove_func), (gst_bin_get_state), (gst_bin_change_state):
11223 * gst/gstconfig.h.in:
11224 * gst/gstelement.c: (gst_element_class_init),
11225 (gst_element_set_base_time), (gst_element_get_base_time),
11226 (iterator_fold_with_resync), (gst_element_change_state),
11227 (gst_element_dispose), (gst_element_get_bus):
11228 * gst/gstelement.h:
11229 * gst/gstelementfactory.h:
11230 * gst/gsterror.c: (_gst_core_errors_init):
11233 * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
11235 * gst/gstinfo.c: (_gst_debug_init):
11236 * gst/gstmessage.c: (_gst_message_copy):
11237 * gst/gstmessage.h:
11238 * gst/gstminiobject.h:
11241 * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
11242 (gst_pad_set_caps), (gst_pad_start_task), (gst_pad_stop_task):
11245 * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
11246 (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
11247 (gst_pipeline_get_last_stream_time):
11248 * gst/gstpipeline.h:
11249 * gst/gstpluginfeature.h:
11251 * gst/gstscheduler.c:
11252 * gst/gstscheduler.h:
11253 * gst/gststructure.h:
11254 * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
11255 (gst_task_finalize), (gst_task_func), (gst_task_create),
11256 (gst_task_set_lock), (gst_task_get_state), (gst_task_start),
11257 (gst_task_stop), (gst_task_pause):
11259 * gst/gsttypefind.h:
11261 * gst/registries/gstlibxmlregistry.c: (load_feature),
11262 (gst_xml_registry_load), (gst_xml_registry_save_feature):
11263 * gst/registries/gstxmlregistry.c:
11264 (gst_xml_registry_start_element), (gst_xml_registry_save_feature):
11265 * gst/schedulers/threadscheduler.c:
11266 * libs/gst/control/dparammanager.h:
11267 * tools/gst-inspect.c: (print_element_list),
11268 (print_plugin_features), (print_element_features):
11269 * tools/gst-xmlinspect.c: (print_element_list),
11270 (print_plugin_info), (main):
11271 Removed plugable schedulers.
11272 Removed Scheduler/Manager from elements.
11273 Removed gsttypes.h, rearranged includes.
11274 Removed dependency pad<->element, element<>pipeline, and
11275 various others, fix includes.
11276 implement gst_pad_get_parent() with gst_object_get_parent()
11277 Make GstTask sefcontained.
11278 Fix _get_state() on GstBin, it did not return ASYNC with a 0
11280 Fix endless loop in iterator_fold_with_resync.
11283 2005-07-18 Wim Taymans <wim@fluendo.com>
11289 2005-07-18 Wim Taymans <wim@fluendo.com>
11292 No more cothreads.h
11294 2005-07-18 Wim Taymans <wim@fluendo.com>
11298 Let's remove these.
11300 2005-07-18 Wim Taymans <wim@fluendo.com>
11302 * docs/design/part-dynamic.txt:
11303 * docs/design/part-events.txt:
11304 * docs/design/part-seeking.txt:
11305 Some more docs in the works.
11307 * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
11308 (gst_base_transform_getcaps), (gst_base_transform_configure_caps),
11309 (gst_base_transform_setcaps), (gst_base_transform_get_size),
11310 (gst_base_transform_buffer_alloc), (gst_base_transform_event),
11311 (gst_base_transform_handle_buffer),
11312 (gst_base_transform_sink_activate_push),
11313 (gst_base_transform_src_activate_pull),
11314 (gst_base_transform_set_passthrough),
11315 (gst_base_transform_is_passthrough):
11318 * gst/gstbus.c: (gst_bus_source_dispatch), (gst_bus_poll):
11321 * gst/gstevent.c: (gst_event_finalize):
11324 * gst/gstutils.c: (gst_element_unlink),
11325 (gst_pad_get_parent_element), (gst_pad_proxy_getcaps),
11326 (gst_pad_proxy_setcaps):
11328 Add _get_parent_element() to get a pads parent as an element.
11330 2005-07-18 Wim Taymans <wim@fluendo.com>
11332 * check/gst/gstbin.c: (GST_START_TEST):
11335 2005-07-18 Wim Taymans <wim@fluendo.com>
11337 * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
11338 (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
11339 (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
11340 (gst_base_sink_event), (gst_base_sink_do_sync),
11341 (gst_base_sink_chain), (gst_base_sink_loop),
11342 (gst_base_sink_deactivate), (gst_base_sink_activate_push),
11343 (gst_base_sink_activate_pull), (gst_base_sink_change_state):
11345 Fix logic for returning ASYNC when not prerolled.
11347 2005-07-18 Wim Taymans <wim@fluendo.com>
11349 * gst/gstqueue.c: (gst_queue_handle_sink_event):
11350 Fix nasty refcount bug.
11352 2005-07-16 Philippe Khalaf <burger@speedy.org>
11354 * gst/elements/gstfdsrc.c:
11355 * gst/elements/gstfdsrc.h:
11356 * gst/elements/gstelements.c:
11357 * gst/elements/Makefile.am:
11358 Ported fdsrc to 0.9.
11360 2005-07-16 Wim Taymans <wim@fluendo.com>
11362 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
11363 (gst_base_sink_do_sync):
11366 2005-07-16 Wim Taymans <wim@fluendo.com>
11368 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
11369 (gst_base_sink_event), (gst_base_sink_get_times),
11370 (gst_base_sink_do_sync), (gst_base_sink_change_state):
11371 * gst/base/gstbasesink.h:
11372 Store and use discont values when syncing buffers as described
11375 * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
11376 (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
11377 (gst_base_src_activate_push):
11378 Push discont event when starting.
11380 * gst/elements/gstidentity.c: (gst_identity_transform):
11383 * gst/gstbin.c: (gst_bin_change_state):
11384 Small cleanups in base_time distribution.
11386 * gst/gstelement.c: (gst_element_set_base_time),
11387 (gst_element_get_base_time), (gst_element_change_state):
11388 * gst/gstelement.h:
11389 Added methods for the base_time of the element.
11392 * gst/gstpipeline.c: (gst_pipeline_send_event),
11393 (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
11394 (gst_pipeline_get_last_stream_time):
11395 * gst/gstpipeline.h:
11397 Handle seeking as described in design doc, remove stream_time
11399 Cleanups clock and stream_time selection code. Added accessors
11400 for the stream_time.
11403 2005-07-16 Andy Wingo <wingo@pobox.com>
11405 * gst/gsterror.c (_gst_core_errors_init): Use the magic word
11408 2005-07-16 Wim Taymans <wim@fluendo.com>
11410 * check/gst/gstbin.c: (GST_START_TEST):
11411 Make elements silent as the deep_notify refs the
11412 parent, which might make the test fail.
11414 * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
11415 Don't hold the lock for too long.
11417 2005-07-16 Tim-Philipp Müller <tim at centricular dot net>
11419 * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
11420 Don't unref the caps we passed to gst_caps_make_writable() after
11421 passing them. gst_caps_make_writable() will do that for us.
11423 2005-07-15 Andy Wingo <wingo@pobox.com>
11425 * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
11428 * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
11429 own marshalling function for the handoff signal. Properly type the
11430 buffer as a buffer. Fixes some warnings. Should do a more general
11432 (gst_identity_class_init): Plug into the right marshaller.
11434 2005-07-15 Wim Taymans <wim@fluendo.com>
11436 * docs/design/part-TODO.txt:
11437 * docs/design/part-clocks.txt:
11438 * docs/design/part-element-sink.txt:
11439 * docs/design/part-events.txt:
11440 * docs/design/part-gstpipeline.txt:
11441 Updated docs, mostly DISCONT related.
11443 2005-07-15 Tim-Philipp Müller <tim at centricular dot net>
11445 * docs/pwg/building-pads.xml:
11446 s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
11448 2005-07-15 Andy Wingo <wingo@pobox.com>
11450 * tools/gst-typefind.c: Update, add copyright block.
11452 * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
11453 Normalize and truncate caps before fixation.
11456 * gst/gstcaps.c (gst_caps_truncate): New function, destructively
11457 discards all but the first structure from its argument.
11459 2005-07-15 Wim Taymans <wim@fluendo.com>
11461 * gst/base/gstbasetransform.c: (gst_base_transform_init),
11462 (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
11463 (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
11464 (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
11465 (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
11466 (gst_base_transform_chain), (gst_base_transform_change_state),
11467 (gst_base_transform_set_passthrough),
11468 (gst_base_transform_is_passthrough):
11469 * gst/base/gstbasetransform.h:
11470 Make passthrough work using the bufferpools.
11471 Changed API a bit, subclasses have to write into a buffer
11472 provided by the base class.
11473 More debug info in nego functions.
11475 * gst/elements/gstidentity.c: (gst_identity_init),
11476 (gst_identity_transform):
11477 Port to new base class.
11479 2005-07-15 Wim Taymans <wim@fluendo.com>
11481 * gst/gstmessage.c: (gst_message_new_state_changed):
11482 * tools/gst-launch.c: (event_loop), (main):
11483 Totally dump messages in -launch with the -m option.
11484 Fix message name for State messages,
11486 2005-07-14 Wim Taymans <wim@fluendo.com>
11488 * gst/base/gstbasesrc.c: (gst_base_src_loop):
11489 Post error messages on errors.
11491 2005-07-14 Wim Taymans <wim@fluendo.com>
11493 * gst/gstcaps.c: (gst_caps_do_simplify):
11497 Define error for stream stopped.
11499 * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
11500 (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
11501 Do proper return values.
11503 * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
11504 (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
11505 (gst_pad_get_range):
11506 Better return values.
11509 Reorganise return values, add macro to check for fatal errors.
11511 * gst/gstqueue.c: (gst_queue_chain):
11512 Return proper GstFlowReturn values,
11514 2005-07-14 Thomas Vander Stichele <thomas at apestaart dot org>
11516 * docs/gst/gstreamer-sections.txt:
11517 * docs/gst/gstreamer.types:
11518 * docs/gst/tmpl/gst.sgml:
11519 * docs/gst/tmpl/gstbasesink.sgml:
11520 * docs/gst/tmpl/gstbasesrc.sgml:
11521 * docs/gst/tmpl/gstbasetransform.sgml:
11522 * docs/gst/tmpl/gstbin.sgml:
11523 * docs/gst/tmpl/gstbuffer.sgml:
11524 * docs/gst/tmpl/gstcaps.sgml:
11525 * docs/gst/tmpl/gstclock.sgml:
11526 * docs/gst/tmpl/gstcompat.sgml:
11527 * docs/gst/tmpl/gstconfig.sgml:
11528 * docs/gst/tmpl/gstelement.sgml:
11529 * docs/gst/tmpl/gstelementdetails.sgml:
11530 * docs/gst/tmpl/gstelementfactory.sgml:
11531 * docs/gst/tmpl/gstenumtypes.sgml:
11532 * docs/gst/tmpl/gsterror.sgml:
11533 * docs/gst/tmpl/gstevent.sgml:
11534 * docs/gst/tmpl/gstfakesink.sgml:
11535 * docs/gst/tmpl/gstfakesrc.sgml:
11536 * docs/gst/tmpl/gstfilesink.sgml:
11537 * docs/gst/tmpl/gstfilesrc.sgml:
11538 * docs/gst/tmpl/gstfilter.sgml:
11539 * docs/gst/tmpl/gstformat.sgml:
11540 * docs/gst/tmpl/gstghostpad.sgml:
11541 * docs/gst/tmpl/gstimplementsinterface.sgml:
11542 * docs/gst/tmpl/gstindex.sgml:
11543 * docs/gst/tmpl/gstindexfactory.sgml:
11544 * docs/gst/tmpl/gstinfo.sgml:
11545 * docs/gst/tmpl/gstiterator.sgml:
11546 * docs/gst/tmpl/gstmacros.sgml:
11547 * docs/gst/tmpl/gstmemchunk.sgml:
11548 * docs/gst/tmpl/gstminiobject.sgml:
11549 * docs/gst/tmpl/gstobject.sgml:
11550 * docs/gst/tmpl/gstpad.sgml:
11551 * docs/gst/tmpl/gstpadtemplate.sgml:
11552 * docs/gst/tmpl/gstparse.sgml:
11553 * docs/gst/tmpl/gstpipeline.sgml:
11554 * docs/gst/tmpl/gstplugin.sgml:
11555 * docs/gst/tmpl/gstpluginfeature.sgml:
11556 * docs/gst/tmpl/gstquery.sgml:
11557 * docs/gst/tmpl/gstqueue.sgml:
11558 * docs/gst/tmpl/gstregistry.sgml:
11559 * docs/gst/tmpl/gstregistrypool.sgml:
11560 * docs/gst/tmpl/gstscheduler.sgml:
11561 * docs/gst/tmpl/gstschedulerfactory.sgml:
11562 * docs/gst/tmpl/gststructure.sgml:
11563 * docs/gst/tmpl/gstsystemclock.sgml:
11564 * docs/gst/tmpl/gsttaglist.sgml:
11565 * docs/gst/tmpl/gsttagsetter.sgml:
11566 * docs/gst/tmpl/gsttrace.sgml:
11567 * docs/gst/tmpl/gsttrashstack.sgml:
11568 * docs/gst/tmpl/gsttypefind.sgml:
11569 * docs/gst/tmpl/gsttypefindfactory.sgml:
11570 * docs/gst/tmpl/gsttypes.sgml:
11571 * docs/gst/tmpl/gsturihandler.sgml:
11572 * docs/gst/tmpl/gsturitype.sgml:
11573 * docs/gst/tmpl/gstutils.sgml:
11574 * docs/gst/tmpl/gstvalue.sgml:
11575 * docs/gst/tmpl/gstversion.sgml:
11576 * docs/gst/tmpl/gstxml.sgml:
11577 * docs/libs/tmpl/gstcontrol.sgml:
11578 * docs/libs/tmpl/gstdataprotocol.sgml:
11579 * docs/libs/tmpl/gstdparam.sgml:
11580 * docs/libs/tmpl/gstdplinint.sgml:
11581 * docs/libs/tmpl/gstdpman.sgml:
11582 * docs/libs/tmpl/gstdpsmooth.sgml:
11583 * docs/libs/tmpl/gstgetbits.sgml:
11584 * docs/libs/tmpl/gstunitconvert.sgml:
11585 * gst/base/gstpushsrc.c: (gst_push_src_get_type),
11586 (gst_push_src_base_init), (gst_push_src_class_init),
11587 (gst_push_src_init), (gst_push_src_create):
11588 * gst/base/gstpushsrc.h:
11589 * gst/elements/gstelements.c:
11590 * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
11591 (gst_fake_sink_base_init), (gst_fake_sink_class_init),
11592 (gst_fake_sink_init), (gst_fake_sink_set_property),
11593 (gst_fake_sink_get_property), (gst_fake_sink_get_times),
11594 (gst_fake_sink_event), (gst_fake_sink_preroll),
11595 (gst_fake_sink_render), (gst_fake_sink_change_state):
11596 * gst/elements/gstfakesink.h:
11597 * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
11598 (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
11599 (gst_fake_src_base_init), (gst_fake_src_class_init),
11600 (gst_fake_src_init), (gst_fake_src_event_handler),
11601 (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
11602 (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
11603 (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
11604 (gst_fake_src_create_buffer), (gst_fake_src_create),
11605 (gst_fake_src_start), (gst_fake_src_stop):
11606 * gst/elements/gstfakesrc.h:
11607 * gst/elements/gstfilesink.c: (_do_init),
11608 (gst_file_sink_base_init), (gst_file_sink_class_init),
11609 (gst_file_sink_init), (gst_file_sink_dispose),
11610 (gst_file_sink_set_location), (gst_file_sink_set_property),
11611 (gst_file_sink_get_property), (gst_file_sink_open_file),
11612 (gst_file_sink_close_file), (gst_file_sink_query),
11613 (gst_file_sink_event), (gst_file_sink_render),
11614 (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
11615 (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
11616 (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
11617 * gst/elements/gstfilesink.h:
11618 * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
11619 (gst_file_src_class_init), (gst_file_src_init),
11620 (gst_file_src_finalize), (gst_file_src_set_location),
11621 (gst_file_src_set_property), (gst_file_src_get_property),
11622 (gst_file_src_map_region), (gst_file_src_map_small_region),
11623 (gst_file_src_create_mmap), (gst_file_src_create_read),
11624 (gst_file_src_create), (gst_file_src_is_seekable),
11625 (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
11626 (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
11627 (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
11628 (gst_file_src_uri_handler_init):
11629 * gst/elements/gstfilesrc.h:
11630 more autistic cleanliness in functions/names/defines
11632 2005-07-13 Andy Wingo <wingo@pobox.com>
11634 * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
11635 source couldn't negotiate.
11637 * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
11641 * gst/gstutils.c (gst_element_link_pads_filtered): New old
11642 function. I am channeling Hades. Put your boots on suckers!!!
11644 2005-07-13 Thomas Vander Stichele <thomas at apestaart dot org>
11646 * testsuite/caps/Makefile.am:
11647 * testsuite/caps/value_compare.c:
11648 * testsuite/caps/value_intersect.c:
11649 * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
11650 move two testsuite apps over to the check dir
11652 2005-07-12 Wim Taymans <wim@fluendo.com>
11654 * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
11655 Added more debug info in the negotiate process.
11657 * gst/gstmessage.h:
11658 Prepare for segment playback.
11660 * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
11666 * tools/gst-launch.c: (main):
11667 NULL pipeline on errors.
11669 2005-07-12 Andy Wingo <wingo@pobox.com>
11671 * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
11672 not it comes from a malloc region. Make sure our copy gets freed.
11674 2005-07-12 Thomas Vander Stichele <thomas at apestaart dot org>
11676 * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
11677 * check/gst/gstmessage.c: (GST_START_TEST):
11678 * check/gst/gststructure.c: (GST_START_TEST),
11679 (gst_structure_suite), (main):
11681 * gst/gstelement.c: (gst_element_message_full):
11682 clean up GError and debug string now that they get copied
11683 * gst/gstmessage.c: (gst_message_new_error),
11684 (gst_message_new_warning), (gst_message_parse_error),
11685 (gst_message_parse_warning):
11686 use GST_TYPE_G_ERROR for structure_new, and take copies of
11687 arguments, so that we don't mess up refcounting
11689 2005-07-12 Thomas Vander Stichele <thomas at apestaart dot org>
11691 * check/Makefile.am:
11692 add per-test valgrind targets
11693 * check/gst-libs/gdp.c: (GST_START_TEST),
11694 (gst_data_protocol_suite), (main):
11697 2005-07-12 Thomas Vander Stichele <thomas at apestaart dot org>
11699 * check/Makefile.am:
11700 instate more valgrindable tests
11701 * check/elements/gstfakesrc.c: (chain_func), (event_func),
11702 (GST_START_TEST), (fakesrc_suite):
11703 * check/gst/gstpad.c: (GST_START_TEST):
11704 * check/gst/gststructure.c: (GST_START_TEST):
11706 * docs/gst/tmpl/gstminiobject.sgml:
11707 * gst/gstpad.c: (gst_pad_finalize):
11708 fix the static mutex leak
11710 2005-07-11 Thomas Vander Stichele <thomas at apestaart dot org>
11712 * check/Makefile.am:
11713 add two more tests for valgrinding
11714 * check/gst/gstvalue.c: (GST_START_TEST):
11715 test refcount of deserialized buffer, found a leak
11716 * docs/gst/gstreamer-docs.sgml:
11717 * docs/gst/gstreamer-sections.txt:
11718 * docs/gst/gstreamer.types:
11719 * docs/gst/tmpl/gstminiobject.sgml:
11720 add miniobject to docs
11721 * gst/gstminiobject.c:
11723 * gst/gstvalue.c: (gst_value_deserialize_buffer),
11724 (gst_string_unwrap):
11725 fix a hard-to-find invalid write for one of the tests
11726 fix a leak for deserialized buffers
11728 2005-07-11 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
11730 * docs/pwg/advanced-events.xml:
11731 * docs/pwg/advanced-request.xml:
11732 * docs/pwg/advanced-scheduling.xml:
11733 * docs/pwg/appendix-porting.xml:
11734 * docs/pwg/building-boiler.xml:
11735 * docs/pwg/intro-preface.xml:
11736 * docs/pwg/other-ntoone.xml:
11737 Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
11738 of example code and explanation for pad activation, loop() and
11739 getrange() functions and a bit more. Remove old comments pointing
11741 * examples/pwg/Makefile.am:
11742 Add loop/getrange examples.
11744 2005-07-11 Thomas Vander Stichele <thomas at apestaart dot org>
11747 check for valgrind binary + some fixes
11749 valgrind suppressions for the tests
11750 * check/Makefile.am:
11751 add a valgrind: target that valgrinds the unit tests
11752 * check/gst/gst.c: (GST_START_TEST), (gst_suite):
11753 * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
11754 * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
11755 * check/gst/gstghostpad.c:
11757 * check/gst/gstdata.c:
11759 * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
11760 (thread_unref), (gst_mini_object_suite), (main):
11762 * gst/gst.c: (gst_deinit):
11764 add a method to clean up.
11765 * gst/gstsystemclock.c: (gst_system_clock_dispose),
11766 (gst_system_clock_obtain):
11767 allow for disposing the system clock.
11768 * tools/gst-launch.c: (main):
11771 2005-07-11 Thomas Vander Stichele <thomas at apestaart dot org>
11773 * docs/gst/tmpl/gstbasesrc.sgml:
11774 * docs/gst/tmpl/gstfakesrc.sgml:
11775 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
11776 (gst_base_src_init), (gst_base_src_set_property),
11777 (gst_base_src_get_property), (gst_base_src_get_range),
11778 (gst_base_src_start):
11779 * gst/base/gstbasesrc.h:
11780 add num-buffers property
11781 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
11782 (gst_fakesrc_init), (gst_fakesrc_set_property),
11783 (gst_fakesrc_get_property), (gst_fakesrc_create),
11784 (gst_fakesrc_start):
11785 remove num-buffers property
11787 2005-07-10 Thomas Vander Stichele <thomas at apestaart dot org>
11789 * docs/gst/gstreamer-sections.txt:
11790 * docs/gst/tmpl/gstbasesink.sgml:
11791 * docs/gst/tmpl/gstbasesrc.sgml:
11792 * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
11793 (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
11794 (gst_base_sink_finalize), (gst_base_sink_set_clock),
11795 (gst_base_sink_set_property), (gst_base_sink_get_property),
11796 (gst_base_sink_handle_object), (gst_base_sink_event),
11797 (gst_base_sink_do_sync), (gst_base_sink_handle_event),
11798 (gst_base_sink_handle_buffer), (gst_base_sink_chain),
11799 (gst_base_sink_loop), (gst_base_sink_deactivate),
11800 (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
11801 (gst_base_sink_change_state):
11802 * gst/base/gstbasesink.h:
11803 * gst/base/gstbasesrc.h:
11804 * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
11805 * gst/elements/gstfilesink.c: (gst_filesink_class_init),
11806 (gst_filesink_init):
11807 more macro splitting
11809 2005-07-10 Thomas Vander Stichele <thomas at apestaart dot org>
11811 * gst/gstelement.c: (gst_element_get_bus):
11813 * tools/gst-launch.c: (check_intr), (event_loop):
11816 2005-07-10 Thomas Vander Stichele <thomas at apestaart dot org>
11818 * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
11821 2005-07-10 Thomas Vander Stichele <thomas at apestaart dot org>
11823 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
11824 (gst_base_src_finalize):
11825 add finalize method and clean up properly
11826 * gst/gstpipeline.c: (gst_pipeline_dispose):
11829 2005-07-09 Thomas Vander Stichele <thomas at apestaart dot org>
11831 * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
11833 add more things to check
11834 * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
11835 * gst/gstelement.c:
11838 2005-07-09 Thomas Vander Stichele <thomas at apestaart dot org>
11840 * check/elements/gstfakesrc.c: (chain_func), (event_func),
11841 (GST_START_TEST), (fakesrc_suite):
11842 * check/gst-libs/gdp.c: (GST_START_TEST):
11843 * check/gst/gst.c: (GST_START_TEST):
11844 * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
11845 * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
11846 * check/gst/gstbus.c: (GST_START_TEST):
11847 * check/gst/gstcaps.c: (GST_START_TEST):
11848 * check/gst/gstdata.c: (GST_START_TEST):
11849 * check/gst/gstelement.c: (GST_START_TEST):
11850 * check/gst/gstghostpad.c: (GST_START_TEST):
11851 * check/gst/gstiterator.c: (GST_START_TEST):
11852 * check/gst/gstmessage.c: (GST_START_TEST):
11853 * check/gst/gstobject.c: (GST_START_TEST):
11854 * check/gst/gstpad.c: (GST_START_TEST):
11855 * check/gst/gststructure.c: (GST_START_TEST):
11856 * check/gst/gstsystemclock.c: (GST_START_TEST),
11857 (gst_systemclock_suite):
11858 * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
11859 * check/gst/gstvalue.c: (GST_START_TEST):
11860 * check/pipelines/cleanup.c: (GST_START_TEST):
11861 * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
11862 * check/states/sinks.c: (GST_START_TEST):
11863 * check/gstcheck.c: (gst_check_init):
11864 * check/gstcheck.h:
11865 add debugging category
11866 use GST_START_TEST now, so we add a debug line
11868 2005-07-09 Thomas Vander Stichele <thomas at apestaart dot org>
11870 * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
11871 add test for state change message on a bin
11872 * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
11874 * gst/gstbin.c: (gst_bin_init):
11875 * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
11876 * gst/gstelement.c: (gst_element_post_message),
11877 (gst_element_set_state):
11878 * gst/gstelementfactory.c: (gst_element_factory_create):
11879 * gst/gstmessage.c: (gst_message_new):
11880 * gst/gstscheduler.c:
11881 various debugging additions and cleanups
11883 2005-07-08 Thomas Vander Stichele <thomas at apestaart dot org>
11885 * check/Makefile.am:
11886 * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
11888 adding tests for elements
11889 * gst/gstelement.c: (gst_element_dispose):
11891 2005-07-08 Thomas Vander Stichele <thomas at apestaart dot org>
11893 * gst/registries/gstlibxmlregistry.c: (load_feature):
11894 plug more leaks. A simple gst_init() now is leakfree, yay.
11896 2005-07-08 Thomas Vander Stichele <thomas at apestaart dot org>
11898 * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
11899 (gst_xml_registry_load):
11900 plug another memleak
11902 2005-07-08 Thomas Vander Stichele <thomas at apestaart dot org>
11905 use GST_SET_ERROR_CFLAGS
11906 * docs/faq/cvs.xml:
11907 change to ERROR_CFLAGS
11909 2005-07-08 Thomas Vander Stichele <thomas at apestaart dot org>
11912 make GST_ERROR_CFLAGS overridable and re-enable Werror
11913 * docs/faq/cvs.xml:
11914 add a note about error CFLAGS
11915 * docs/gst/tmpl/gstfakesrc.sgml:
11916 * gst/elements/gstfakesrc.c:
11917 comment out some unused code
11918 * gst/gst.c: (split_and_iterate):
11919 * gst/registries/gstlibxmlregistry.c: (load_pad_template),
11923 2005-07-07 Thomas Vander Stichele <thomas at apestaart dot org>
11925 * common/Makefile.am:
11926 * common/gtk-doc.mak:
11927 * docs/gst/Makefile.am:
11928 factor out gtk-doc.mak
11930 2005-07-07 Wim Taymans <wim@fluendo.com>
11932 * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
11933 (gst_thread_scheduler_dispose):
11934 Unlock the STREAM_LOCK completely.
11936 2005-07-07 Thomas Vander Stichele <thomas at apestaart dot org>
11938 * check/Makefile.am:
11939 * check/elements/.cvsignore:
11940 * check/elements/gstfakesrc.c: (chain_func), (event_func),
11941 (START_TEST), (fakesrc_suite), (main):
11942 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
11943 (gst_fakesrc_set_property), (gst_fakesrc_get_property),
11944 (gst_fakesrc_create), (gst_fakesrc_start):
11945 * gst/elements/gstfakesrc.h:
11946 adding a first element test
11948 2005-07-07 Andy Wingo <wingo@pobox.com>
11950 * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
11953 2005-07-07 Wim Taymans <wim@fluendo.com>
11959 2005-07-07 Wim Taymans <wim@fluendo.com>
11961 * gst/base/gstbasesrc.c: (gst_base_src_get_range),
11962 (gst_base_src_default_negotiate), (gst_base_src_negotiate):
11963 Allow subclasses to implement their own negotiation.
11965 2005-07-07 Jan Schmidt <thaytan@mad.scientist.com>
11967 * docs/design/part-gstbin.txt:
11968 * docs/design/part-gstpipeline.txt:
11969 Update design notes to reflect the movement of
11970 responsibility for bus handling from GstPipeline to
11973 2005-07-07 Jan Schmidt <thaytan@mad.scientist.com>
11976 Remove unnecessary queue2/3/4 examples.
11978 2005-07-07 Jan Schmidt <thaytan@mad.scientist.com>
11980 * examples/Makefile.am:
11981 * examples/helloworld/helloworld.c: (event_loop), (main):
11982 * examples/queue/queue.c: (event_loop), (main):
11983 * examples/queue2/queue2.c: (main):
11984 Update a couple of the examples to work again.
11986 * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
11987 (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
11988 Spelling corrections and extra debug.
11990 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
11991 (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
11992 (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
11994 * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
11995 (gst_pipeline_change_state):
11996 * gst/gstpipeline.h:
11997 Move the bus handler for children to the GstBin, and create a
11998 separate bus for receiving messages from children to the one the
11999 bus sends 'upwards' on.
12001 2005-07-06 Wim Taymans <wim@fluendo.com>
12004 * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
12005 (gst_base_sink_handle_object), (gst_base_sink_loop),
12006 (gst_base_sink_change_state):
12007 * gst/base/gstbasesink.h:
12008 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
12009 (gst_base_src_init), (gst_base_src_setcaps),
12010 (gst_base_src_getcaps), (gst_base_src_loop),
12011 (gst_base_src_default_negotiate), (gst_base_src_negotiate),
12012 (gst_base_src_start), (gst_base_src_change_state):
12013 * gst/base/gstbasesrc.h:
12014 Make basesrc negotiate.
12015 Handle the case where preroll fails in basesink.
12018 2005-07-06 Wim Taymans <wim@fluendo.com>
12020 * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
12021 Implement the fixate function.
12022 Clean up acceptcaps.
12024 2005-07-06 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
12026 * docs/pwg/building-filterfactory.xml:
12027 * docs/pwg/pwg.xml:
12028 Remove never-written filter-factory chapter; I'll add the various
12029 base classes to part 4 ("other element types") later on.
12031 2005-07-06 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
12033 * docs/pwg/advanced-negotiation.xml:
12034 * docs/pwg/building-boiler.xml:
12035 * docs/pwg/building-pads.xml:
12036 * docs/pwg/pwg.xml:
12037 * examples/pwg/Makefile.am:
12038 Add a chapter on caps negotiation, simplify the original code
12039 samples a bit w.r.t. caps negotiation, add link to the advanced
12040 section. Add a bunch of examples showing different use cases of
12041 different types of caps negotiation. Upstream renegotiation isn't
12042 fully documented yet since nobody knows how that works.
12044 2005-07-06 Thomas Vander Stichele <thomas at apestaart dot org>
12046 * check/gst/gstpad.c:
12047 * check/gstcheck.c:
12048 * gst/gstpad.c: (gst_pad_get_internal_links_default):
12049 if pad has no parent, return NULL as list of internal links
12051 2005-07-05 Andy Wingo <wingo@pobox.com>
12053 * gst/elements/gstfilesrc.c:
12054 * gst/elements/gstfakesrc.c:
12055 * gst/base/gstpushsrc.c:
12056 * gst/base/gstbasesrc.h:
12057 * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
12059 2005-07-05 Stefan Kost <ensonic@users.sf.net>
12062 better report generation target (lcov needs a patch)
12064 2005-07-05 Andy Wingo <wingo@pobox.com>
12066 * gst/elements, testsuite: Null if we got it...
12068 2005-07-05 Wim Taymans <wim@fluendo.com>
12071 * libs/gst/dataprotocol/Makefile.am:
12072 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
12073 * libs/gst/dataprotocol/dataprotocol.h:
12074 * pkgconfig/Makefile.am:
12075 * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
12076 * pkgconfig/gstreamer-dataprotocol.pc.in:
12077 Ported dataprotol to 0.9.
12078 Added pkgconfig files.
12080 2005-07-05 Andy Wingo <wingo@pobox.com>
12082 * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
12083 Default to returning TRUE for the case when tranform_caps returns
12084 a fixed caps, like for identity or volume.
12086 * check/gst/gstbus.c (pound_bus_with_messages):
12087 * check/gst/gstmessage.c (START_TEST):
12088 * check/pipelines/simple_launch_lines.c (got_handoff): Application
12089 message API change.
12091 * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
12092 logic weaks here: always run transform_caps, trying passthrough
12093 operation only if the original caps intersects with the transform.
12095 * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
12096 source and sink caps.
12098 * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
12099 Intersect the peer caps with the pad template before going into
12101 (gst_base_transform_transform_caps): More debugging.
12103 * gst/gstmessage.h (gst_message_new_application): Take a GstObject
12106 2005-07-04 Edward Hervey <edward@fluendo.com>
12110 (gst_pad_add_*_probe): now returns the signal id for better wrapping
12113 2005-07-04 Andy Wingo <wingo@pobox.com>
12115 * check/gst/gstpad.c: Only set explicit caps on pads.
12117 2005-07-01 Andy Wingo <wingo@pobox.com>
12119 * tests/network-clock.scm: Commentary update.
12121 * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
12122 Didn't really make sense, not implementable with basetransform,
12124 (gst_identity_transform): Unref inbuf via make_writable. Feeble
12125 attempt at implementing the sync property, needs an unlock method.
12127 * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
12128 New func, by default returns the same caps (the identity
12130 (gst_base_transform_getcaps): Uses transform_caps to return
12131 something sensible.
12132 (gst_base_transform_setcaps): Complicated logic to get caps on
12133 both pads, even if they are different, and to call set_caps once
12134 for every time both pads get their caps set.
12135 (gst_base_transform_handle_buffer): Give the ref to the transform
12136 function. Allows in-place modification of the buffer.
12138 * gst/base/gstbasetransform.h (transform_caps): New class method.
12139 Given caps on one side, what can I do on the other.
12140 (set_caps): Take two caps, one for each side of the element.
12143 * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
12144 caps in place. This is safe because we can check the mutability of
12145 the caps, and a good idea because fixate functions are just called
12146 as a matter of last resort. (Not actually implemented.)
12147 (gst_pad_set_caps): If the caps we're setting is actually the same
12148 as the existing pad caps, just update the pointer without calling
12149 setcaps. Assert that caps is either NULL or fixed, as per the
12152 * gst/gstghostpad.c: Update for fixate changes.
12154 2005-07-02 Andy Wingo <wingo@pobox.com>
12157 * gst/gstcaps.h (gst_static_caps_get): Not const return, having
12158 two refcounts makes it immutable, which is enough. Doc more.
12160 2005-07-02 Jan Schmidt <thaytan@mad.scientist.com>
12162 * gst/gstpad.c: (gst_pad_emit_have_data_signal):
12163 Put the mini_object into GValue as a mini_object,
12164 not a gpointer, since that's how we declared
12167 2005-07-01 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
12169 * examples/pwg/Makefile.am:
12170 Fix buildbot again.
12172 2005-07-01 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
12174 * docs/pwg/building-testapp.xml:
12176 * examples/pwg/Makefile.am:
12179 2005-07-01 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
12182 * examples/Makefile.am:
12183 * examples/pwg/Makefile.am:
12184 * examples/pwg/extract.pl:
12185 Enable building the PWG examples.
12186 * docs/pwg/advanced-interfaces.xml:
12187 Add URI interface stub.
12188 * docs/pwg/advanced-types.xml:
12189 * docs/pwg/other-autoplugger.xml:
12190 * docs/pwg/appendix-porting.xml:
12191 * docs/pwg/pwg.xml:
12192 Add porting guide (mostly stubs), remove autoplugging (see ADM).
12193 * docs/pwg/building-boiler.xml:
12194 * docs/pwg/building-chainfn.xml:
12195 * docs/pwg/building-pads.xml:
12196 * docs/pwg/building-props.xml:
12197 * docs/pwg/building-state.xml:
12198 * docs/pwg/building-testapp.xml:
12199 Update the building-*.xml parts for 0.9 changes. All examples
12200 code blocks compile in examples/pwg/*.
12202 2005-06-30 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
12204 * docs/manual/advanced-autoplugging.xml:
12205 * docs/manual/appendix-checklist.xml:
12206 * docs/manual/appendix-integration.xml:
12207 * docs/manual/highlevel-components.xml:
12208 Fix playbin/decodebin examples, update docs a bit, mention bus
12209 instead of signals in various places, mention kmplayer and
12210 kaffeine since they have a working GStreamer backend in the KDE
12213 2005-06-30 Wim Taymans <wim@fluendo.com>
12216 * docs/design/draft-ghostpads.txt:
12217 * docs/design/draft-push-pull.txt:
12218 * docs/design/draft-query.txt:
12219 * docs/design/part-TODO.txt:
12220 * docs/design/part-query.txt:
12221 Added CHANGES-0.9 doc, updated status of other docs.
12226 2005-06-30 Wim Taymans <wim@fluendo.com>
12228 * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
12229 (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
12230 (gst_base_sink_change_state):
12231 * gst/base/gstbasesink.h:
12232 Some tweaks, only EOS and a buffer complete a preroll.
12234 2005-06-30 Andy Wingo <wingo@pobox.com>
12236 * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
12237 activate_push down to the internal pad as well.
12239 2005-06-30 Torsten Schoenfeld <kaffeetisch@gmx.de>
12241 Reviewed by: Ronald S. Bultje <rbultje@ronald.bitfreak.net>
12243 * gst/gsttaginterface.c:
12244 Some documentation fixes (#307394 and #307397).
12246 2005-06-30 Antoine Tremblay <hexa00@gmail.com>
12248 Reviewed by: Ronald S. Bultje <rbultje@ronald.bitfreak.net>
12250 * gst/gstvalue.c: (gst_value_intersect_list):
12251 Fix memleak (#309125).
12253 2005-06-30 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
12255 * docs/manual/advanced-dataaccess.xml:
12256 Fix fakesrc example to compile; doesn't work, bug somewhere...?
12257 * docs/manual/basics-pads.xml:
12258 Add reference for filtered caps to above chapter.
12260 2005-06-30 Wim Taymans <wim@fluendo.com>
12262 * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
12263 (gst_bin_change_state):
12265 Lame attempt at making the state change function a bit
12268 2005-06-30 Wim Taymans <wim@fluendo.com>
12270 * docs/design/part-clocks.txt:
12271 * docs/design/part-element-sink.txt:
12272 * docs/design/part-events.txt:
12273 * docs/design/part-preroll.txt:
12274 * docs/design/part-states.txt:
12275 Some more tweeks and additions to the docs.
12277 2005-06-30 Wim Taymans <wim@fluendo.com>
12279 * gst/gstpad.c: (_gst_do_pass_data_accumulator),
12280 (default_have_data), (gst_pad_class_init), (gst_pad_init),
12281 (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
12282 (gst_pad_check_pull_range), (gst_pad_get_range),
12283 (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
12285 * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
12286 (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
12287 (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
12288 (gst_pad_remove_buffer_probe):
12289 Removed atomic operations, use existing LOCK.
12290 Move exception handling out of main code path.
12292 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
12294 * gst/gstpad.c: (_gst_do_pass_data_accumulator),
12295 (silly_return_true_function), (gst_pad_class_init),
12296 (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
12297 (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
12298 (gst_pad_send_event):
12299 Fix accumulator, add default value by using _emitv() instead
12300 of _emit() for signal emission.
12302 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
12304 * docs/manual/advanced-dataaccess.xml:
12305 * examples/manual/Makefile.am:
12307 * gst/gstpad.c: (_gst_do_pass_data_accumulator):
12310 2005-06-29 Tim-Philipp Müller <tim at centricular dot net>
12312 * gst/elements/gstfilesink.c: (gst_filesink_render):
12313 Simplify code so that we don't have to handle short
12314 writes and return GST_FLOW_ERROR if an error occured.
12316 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
12318 * docs/gst/gstreamer-docs.sgml:
12319 Remove probes more.
12321 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
12323 * docs/gst/gstreamer-sections.txt:
12324 * docs/gst/tmpl/gstpad.sgml:
12325 * docs/gst/tmpl/gstprobe.sgml:
12327 * gst/gstpad.c: (_gst_do_pass_data_accumulator),
12328 (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
12329 (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
12330 (gst_pad_push_event), (gst_pad_send_event):
12332 * gst/gstutils.c: (gst_pad_add_data_probe),
12333 (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
12334 (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
12335 (gst_pad_remove_buffer_probe):
12337 Remove old probes, add new g-signal-based probes and some utility
12340 2005-06-29 Edward Hervey <edward@fluendo.com>
12342 * gst/gstelementfactory.c:
12345 Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
12346 the definition to the header file.
12348 2005-06-29 Andy Wingo <wingo@pobox.com>
12350 * docs/gst/Makefile.am (scan-build.stamp): Totally only check
12351 plugins from the source directory.
12353 2005-06-29 Wim Taymans <wim@fluendo.com>
12355 * docs/gst/tmpl/gstbuffer.sgml:
12356 * docs/gst/tmpl/gstclock.sgml:
12357 Some fixings for blantently wrong text.
12359 2005-06-29 Thomas Vander Stichele <thomas at apestaart dot org>
12361 * check/Makefile.am:
12362 * gst/gst.c: (add_path_func), (init_pre):
12363 * gst/gstregistry.c: (gst_registry_add_path):
12364 add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
12365 only scan the GST_PLUGIN_PATH locations, and not add
12368 2005-06-29 Thomas Vander Stichele <thomas at apestaart dot org>
12370 * docs/gst/gstreamer-sections.txt:
12371 * docs/gst/tmpl/gstbasesrc.sgml:
12372 * gst/gstelement.c:
12373 * gst/gstelement.h:
12378 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
12380 * docs/manual/advanced-autoplugging.xml:
12381 Fix autoplugging example.
12383 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
12385 * docs/manual/advanced-autoplugging.xml:
12386 * docs/manual/mime-world.fig:
12387 Try to get autoplugging working, fix type detection. Fix text
12388 in hello-world image.
12390 2005-06-29 Wim Taymans <wim@fluendo.com>
12392 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
12393 (gst_base_sink_change_state):
12397 map SIGNAL and BROADCAST to the right function.
12400 Remove redundant braces.
12402 * gst/gstpad.c: (gst_pad_set_caps):
12403 Don't call setcaps function when reseting caps to NULL.
12405 * gst/gstsystemclock.c: (gst_system_clock_dispose),
12406 (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
12407 (gst_system_clock_id_unschedule):
12408 Use BROADCAST as this is what we do.
12410 2005-06-29 Wim Taymans <wim@fluendo.com>
12412 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
12413 We are actually prerolling before commiting the state
12416 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
12418 * docs/manual/advanced-clocks.xml:
12419 * docs/manual/advanced-interfaces.xml:
12420 * docs/manual/advanced-metadata.xml:
12421 * docs/manual/advanced-position.xml:
12422 * docs/manual/advanced-schedulers.xml:
12423 * docs/manual/advanced-threads.xml:
12424 * docs/manual/appendix-porting.xml:
12425 * docs/manual/basics-bins.xml:
12426 * docs/manual/basics-bus.xml:
12427 * docs/manual/basics-elements.xml:
12428 * docs/manual/basics-helloworld.xml:
12429 * docs/manual/basics-pads.xml:
12430 * docs/manual/highlevel-components.xml:
12431 * docs/manual/manual.xml:
12432 * docs/manual/thread.fig:
12433 Update (until threads/scheduling) Application Development Manual;
12434 remove GstThread, add GstBus, add simple porting checklist, add
12435 documentation for tag writing, clocks, make all examples until this
12436 part compile and run.
12437 * examples/manual/Makefile.am:
12438 Update from changes to Application Development Manual; add bus
12439 example, remove thread example.
12441 2005-06-28 Wim Taymans <wim@fluendo.com>
12443 * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
12444 (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
12445 (gst_bus_source_dispatch):
12446 Add debugging messages.
12447 Make internal methods static.
12448 Handle the case where the bus is flushed in the handler.
12450 * gst/gstelement.c: (gst_element_get_bus):
12451 Fix refcount in _get_bus();
12453 * gst/gstpipeline.c: (gst_pipeline_change_state),
12454 (gst_pipeline_get_clock_func):
12455 Clock refcounting fixes.
12456 Handle the case where preroll timed out more gracefully.
12458 * gst/gstsystemclock.c: (gst_system_clock_dispose):
12459 Clean up the internal thread in dispose. This is needed
12460 for subclasses that actually get disposed.
12462 * gst/schedulers/threadscheduler.c:
12463 (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
12464 (gst_thread_scheduler_dispose):
12465 Free thread pool in dispose.
12467 2005-06-28 Andy Wingo <wingo@pobox.com>
12469 * tests/network-clock-utils.scm (debug, print-event): New utils.
12471 * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
12472 (*packet-loss*): Unified loss probability.
12473 (network-time): Report out-of-band events.
12475 * tests/plot-data: Add support for out-of-band events. Hack it
12476 into this script instead of passing it down the pipe; should fix
12479 2005-06-28 Wim Taymans <wim@fluendo.com>
12481 * docs/gst/gstreamer.types:
12482 * docs/gst/tmpl/gstbasesrc.sgml:
12483 * docs/gst/tmpl/gstpad.sgml:
12486 2005-06-28 Wim Taymans <wim@fluendo.com>
12488 * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
12489 (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
12490 (gst_proxy_pad_do_fixatecaps):
12491 Correctly proxy the check_pull_range function.
12493 2005-06-28 Andy Wingo <wingo@pobox.com>
12495 * tests/network-clock.scm: Removed need for slib.
12497 2005-06-28 Wim Taymans <wim@fluendo.com>
12499 * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
12500 (gst_basesink_preroll_queue_flush):
12501 * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
12502 * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
12503 * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
12504 (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
12505 (gst_proxy_pad_set_property):
12508 * gst/gstqueue.c: (gst_queue_init):
12509 The deprecated pad loop function is removed now.
12511 2005-06-28 Andy Wingo <wingo@pobox.com>
12513 * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
12514 New parameters, simulate network packet loss.
12516 * tests/network-clock-utils.scm: Initialize the RNG.
12518 2005-06-28 Wim Taymans <wim@fluendo.com>
12520 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
12521 (gst_basesink_event), (gst_basesink_deactivate):
12522 Flushing the preroll queue always needs to unlock the waiters.
12524 2005-06-28 Edward Hervey <edward@fluendo.com>
12526 * gst/gstpipeline.c: (gst_pipeline_send_event):
12527 Wheen a seek was successful on a pipeline, set the stream_time to the
12528 seek offset in order to have a synchronized stream_time.
12530 2005-06-28 Wim Taymans <wim@fluendo.com>
12532 * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
12533 (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
12534 (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
12535 (gst_proxy_pad_do_fixatecaps):
12536 Call wrapper function instead of just calling the function
12537 pointers. This takes care of any locking and whatmore.
12539 2005-06-28 Wim Taymans <wim@fluendo.com>
12541 * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
12542 (gst_pad_pull_range):
12544 CONNECTED -> LINKED.
12546 2005-06-28 Andy Wingo <wingo@pobox.com>
12548 * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
12549 source-munging commit!!!
12551 * gst/gstobject.c (gst_object_unref, gst_object_ref)
12552 (gst_object_sink): Take gpointer arguments, not GstObject --
12553 avoids casts. Like GLib.
12555 * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
12558 2005-06-27 Andy Wingo <wingo@pobox.com>
12560 * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
12563 * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
12564 returns a sorted copy of the trace list.
12565 (gst_alloc_trace_print_live): New API, only prints traces with
12566 live objects. Sort the list.
12567 (gst_alloc_trace_print_all): Sort the list.
12568 (gst_alloc_trace_print): Align columns.
12570 * gst/elements/gstttypefindelement.c:
12571 * gst/elements/gsttee.c:
12572 * gst/base/gstbasesrc.c:
12573 * gst/base/gstbasesink.c:
12574 * gst/base/gstbasetransform.c:
12575 * gst/gstqueue.c: Adapt for pad activation changes.
12577 * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
12579 (gst_pipeline_dispose): Drop ref on sched.
12581 * gst/gstpad.c (gst_pad_init): Set the default activate func.
12582 (gst_pad_activate_default): Push mode by default.
12583 (pre_activate_switch, post_activate_switch): New stubs, things to
12584 do before and after switching activation modes on pads.
12585 (gst_pad_set_active): Take a boolean and not a mode, dispatch to
12586 the pad's activate function to choose which mode to activate.
12587 Shortcut on deactivation and call the right function directly.
12588 (gst_pad_activate_pull): New API, (de)activates a pad in pull
12590 (gst_pad_activate_push): New API, same for push mode.
12591 (gst_pad_set_activate_function)
12592 (gst_pad_set_activatepull_function)
12593 (gst_pad_set_activatepush_function): Setters for new API.
12595 * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
12596 Trace all miniobjects.
12597 (gst_mini_object_make_writable): Unref the arg if we copy, like
12598 gst_caps_make_writable.
12600 * gst/gstmessage.c (_gst_message_initialize): No trace init.
12602 * gst/gstghostpad.c (gst_proxy_pad_do_activate)
12603 (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
12604 Adapt for new pad API.
12606 * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
12608 * gst/gstelement.h:
12609 * gst/gstelement.c (gst_element_iterate_src_pads)
12610 (gst_element_iterate_sink_pads): New API functions.
12612 * gst/gstelement.c (iterator_fold_with_resync): New utility,
12613 should fold into gstiterator.c in some form.
12614 (gst_element_pads_activate): Simplified via use of fold and
12615 delegation of decisions to gstpad->activate.
12617 * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
12620 * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
12621 class once in init, like gstmessage. Didn't run into this issue
12622 but it seems correct. Don't initialize a trace, gstminiobject does
12625 * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
12626 test, runs fakesrc ! fakesink, stopping on ::handoff via a message
12628 (assert_live_count): New util function, uses alloc traces to check
12631 * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
12632 To be modified when unlink drops the internal pad.
12634 2005-06-27 Wim Taymans <wim@fluendo.com>
12636 * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
12637 (gst_bin_change_state):
12638 Cleanup the get_state() function a little, make sure it
12639 iterates the same set of elements.
12640 Added stub iterate_state_order().
12642 2005-06-27 Thomas Vander Stichele <thomas at apestaart dot org>
12644 * docs/gst/gstreamer-docs.sgml:
12645 * docs/gst/gstreamer-sections.txt:
12646 * docs/gst/gstreamer.types:
12647 * docs/gst/tmpl/gstbasesink.sgml:
12648 * docs/gst/tmpl/gstbasesrc.sgml:
12649 * docs/gst/tmpl/gstbasetransform.sgml:
12650 * docs/gst/tmpl/gstelement.sgml:
12651 * docs/gst/tmpl/gstiterator.sgml:
12652 * gst/base/gstbasesrc.c:
12653 * gst/base/gstbasesrc.h:
12654 * gst/base/gstbasetransform.h:
12655 * gst/gstelement.c:
12656 * gst/gstiterator.h:
12657 adding basetransform and iterator docs
12659 2005-06-27 Andy Wingo <wingo@pobox.com>
12661 * docs/design/part-activation.txt: Notes on how activation should
12662 work -- not quite implemented yet.
12664 2005-06-25 Wim Taymans <wim@fluendo.com>
12666 * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
12667 At least get the chain function correct, needs more
12670 2005-06-25 Wim Taymans <wim@fluendo.com>
12672 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
12673 (gst_basesink_handle_object), (gst_basesink_event),
12674 (gst_basesink_do_sync), (gst_basesink_handle_event),
12675 (gst_basesink_change_state):
12677 Right, two problems here: ghostpads don't take locks and
12678 glib _rec_mutex_lock_full() with depth==0 still locks.
12679 Catch illegal locking and g_warn them.
12681 2005-06-25 Wim Taymans <wim@fluendo.com>
12683 * check/states/sinks.c: (START_TEST), (gst_object_suite):
12684 Have to check for completion now...
12686 2005-06-25 Wim Taymans <wim@fluendo.com>
12688 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
12689 (gst_basesink_handle_object), (gst_basesink_event),
12690 (gst_basesink_do_sync), (gst_basesink_handle_event),
12691 (gst_basesink_change_state):
12693 Unlock STREAM_LOCK whatever the recursion was.
12695 2005-06-25 Wim Taymans <wim@fluendo.com>
12697 * gst/base/gstbasesink.c: (gst_basesink_set_property),
12698 (gst_basesink_preroll_queue_empty),
12699 (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
12700 (gst_basesink_event), (gst_basesink_do_sync),
12701 (gst_basesink_handle_event), (gst_basesink_handle_buffer),
12702 (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
12703 (gst_basesink_change_state):
12704 Reworked the base sink, handle event and buffer serialisation
12705 correctly and removed possible deadlock.
12706 Handle EOS correctly.
12708 2005-06-25 Wim Taymans <wim@fluendo.com>
12710 * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
12711 (gst_pipeline_change_state):
12712 * tools/gst-launch.c: (check_intr), (event_loop), (main):
12713 Allow elements to post EOS in the state change function.
12714 Fix up -launch, make it exit the poll loop when the
12715 pipeline actually changed state.
12716 Fix up warning parsing in -launch.
12718 2005-06-25 Wim Taymans <wim@fluendo.com>
12720 * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
12721 (gst_tee_sink_activate):
12722 Core takes STREAM_LOCK for us now.
12724 2005-06-25 Wim Taymans <wim@fluendo.com>
12726 * gst/gstelement.c: (gst_element_get_state_func),
12727 (gst_element_set_state):
12728 * gst/gstelement.h:
12729 * gst/gstmessage.c: (gst_message_parse_error),
12730 (gst_message_parse_warning):
12731 Keep track of current target state while performing a state
12732 change so that subclasses can do something interesting.
12733 Fix parsing of warning/error messages when GError is NULL.
12735 2005-06-24 Thomas Vander Stichele <thomas at apestaart dot org>
12737 * docs/gst/Makefile.am:
12738 * docs/gst/gstreamer-docs.sgml:
12739 * docs/gst/gstreamer-sections.txt:
12740 * docs/gst/gstreamer.types:
12741 * docs/gst/tmpl/gstbasesink.sgml:
12742 * docs/gst/tmpl/gstbasesrc.sgml:
12743 * docs/gst/tmpl/gstbin.sgml:
12744 * docs/gst/tmpl/gstcompat.sgml:
12745 * docs/gst/tmpl/gstfakesink.sgml:
12746 * docs/gst/tmpl/gstfakesrc.sgml:
12747 * docs/gst/tmpl/gstfilesink.sgml:
12748 * docs/gst/tmpl/gstfilesrc.sgml:
12749 * docs/gst/tmpl/gstindex.sgml:
12750 * docs/manual/appendix-quotes.xml:
12751 * gst/base/gstbasesrc.h:
12752 * gst/elements/gstfakesrc.h:
12753 * gst/gstmessage.h:
12754 start pulling in base classes and elements in our docs
12756 2005-06-24 Stefan Kost <ensonic@users.sf.net>
12758 * docs/gst/Makefile.am:
12759 * docs/libs/Makefile.am:
12760 fixed make distcheck with gtk-doc 1.3
12762 2005-06-23 Wim Taymans <wim@fluendo.com>
12764 * gst/gstelement.c: (gst_element_get_state_func),
12765 (gst_element_set_state), (gst_element_change_state):
12766 When the state did not change, also report NO_PREROLL
12769 2005-06-23 Wim Taymans <wim@fluendo.com>
12771 * gst/gstpad.c: (gst_pad_event_default):
12772 * gst/gstqueue.c: (gst_queue_loop):
12773 No unsafe task pausing please.
12775 2005-06-23 Wim Taymans <wim@fluendo.com>
12777 * gst/schedulers/threadscheduler.c:
12778 (gst_thread_scheduler_task_start),
12779 (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
12780 Ref the task before pushing it on the threadpool. This
12781 makes sure that we have a ref when the threadfunction is
12784 2005-06-23 Andy Wingo <wingo@pobox.com>
12786 * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
12787 offset is greater than the file's size.
12789 * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK)
12790 (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
12791 * gst/gstobject.c (gst_object_class_init): Make the class lock
12792 recursive. Wim won't let me drop deep_notify. Decodebin works
12793 again, whoopdy doo.
12795 * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
12796 internal pad, and hacks accordingly. Doesn't do it on the target
12797 pad because we change its caps. Probably catches all cases of
12799 (gst_ghost_pad_set_property): Connect to notify::caps as
12802 * tests/network-clock.scm (plot-simulation): Pipe data to the
12803 elite python skript.
12805 * tests/network-clock-utils.scm (define-parameter): New macro,
12806 defines a parameter that can be set via the command line.
12807 (set-parameter!, parse-parameter-arguments): Command line args
12810 * tests/plot-data: Simple matplotlib-based plotter, takes input on
12813 2005-06-23 Jan Schmidt <thaytan@mad.scientist.com>
12815 * gst/elements/gsttypefindelement.c:
12816 (gst_type_find_element_handle_event):
12817 Don't restart typefinding on a discont.
12818 * gst/gstelement.c: (gst_element_set_state):
12819 Debug spelling fix.
12820 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
12821 Allow changing mode of an active pad.
12822 Debug output fixes.
12823 * gst/registries/gstlibxmlregistry.c: (load_feature):
12824 Don't cast a static pad template to a normal pad template.
12826 2005-06-23 Thomas Vander Stichele <thomas at apestaart dot org>
12828 * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
12829 * gst/gstvalue.c: (gst_value_deserialize_int_helper):
12830 remove gst_strtoll completely, since it didn't actually do
12831 anything more than what g_ascii_strtoull already does.
12832 check for range errors when deserializing
12833 do a cast for the unsigned cases; but further fixing needs
12834 a decision on what the interpretation of "(int)" and
12835 deserialization should be for values that fall outside the
12836 type's boundaries (ie, refuse, or interpret as casting)
12838 2005-06-23 Wim Taymans <wim@fluendo.com>
12840 * check/Makefile.am:
12841 * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
12842 * docs/design/part-live-source.txt:
12843 * docs/design/part-states.txt:
12844 * gst/base/gstbasesrc.c: (gst_basesrc_init),
12845 (gst_basesrc_set_live), (gst_basesrc_is_live),
12846 (gst_basesrc_get_range), (gst_basesrc_activate),
12847 (gst_basesrc_change_state):
12848 * gst/base/gstbasesrc.h:
12849 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
12850 (gst_fakesrc_set_property), (gst_fakesrc_get_property):
12851 * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
12852 * gst/gstelement.c: (gst_element_get_state_func),
12853 (gst_element_set_state):
12854 * gst/gstelement.h:
12856 * tools/gst-launch.c: (event_loop), (main):
12857 Added support for live sources and other elements that
12859 Updated design docs, added live-source design doc.
12860 Implemented live source functionality in basesrc
12861 Fix error condition in _bin_get_state()
12862 Implement live source handling in -launch.
12863 Added check for live sources.
12864 Fixed case in GstBin where elements were changed state
12868 2005-06-23 Andy Wingo <wingo@pobox.com>
12870 * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
12871 borken refcounting.
12873 * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
12874 gst_caps_replace takes care of this for us.
12876 * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
12877 gst_pad_set_caps on the target, not just its setcaps() function.
12879 * tests/network-clock.scm:
12880 * tests/network-clock-utils.scm: A network clock simulator.
12881 Something of an algorithmic testbed before doing something in C.
12883 2005-06-22 Thomas Vander Stichele <thomas at apestaart dot org>
12885 * check/Makefile.am:
12886 * check/gst/capslist.h:
12887 copy over from 0.8, and add two with bitmasks specified with
12889 * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
12890 add test to parse everything from capslist.h
12891 * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
12893 add test for structure deserialization
12894 * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
12895 add tests for deserialization of strings to int types
12896 * gst/gststructure.c: (gst_structure_nth_field_name):
12897 * gst/gststructure.h:
12898 add a way to get the name of a field referenced by index
12899 * gst/gstvalue.c: (gst_value_deserialize_int_helper):
12900 instead of checking if the resulting long long lies between
12901 min and max, we check if the long long would fit into
12902 a number of bytes for the final type.
12903 This fixes cases where a string represents 2^32 - 1, which
12904 when cast to int would be the (valid) -1, but is bigger than
12907 2005-06-22 Thomas Vander Stichele <thomas at apestaart dot org>
12909 * gst/parse/grammar.y:
12910 add a log line for type deserialization
12912 2005-06-22 Thomas Vander Stichele <thomas at apestaart dot org>
12914 * check/gst/gstvalue.c: (START_TEST):
12915 * gst/gstvalue.c: (gst_value_deserialize):
12916 return long long, not int, so gint64 deserialization actually
12917 works. Is there any flag that makes the compiler check this ?
12920 2005-06-22 Wim Taymans <wim@fluendo.com>
12923 Added convenience macros for setting buffers in GValue.
12925 2005-06-21 Thomas Vander Stichele <thomas at apestaart dot org>
12927 * check/gst/.cvsignore:
12928 * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
12929 add a test deserializing int64, and comment part out because
12932 2005-06-21 Thomas Vander Stichele <thomas at apestaart dot org>
12934 * check/Makefile.am:
12935 * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
12936 * testsuite/Makefile.am:
12937 * testsuite/caps/Makefile.am:
12938 * testsuite/caps/value_serialize.c:
12939 * testsuite/test_gst_init.c:
12940 move a value_serialize test over
12942 2005-06-20 Wim Taymans <wim@fluendo.com>
12947 * gst/gstvalue.c: (gst_value_compare_buffer),
12948 (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
12949 (gst_value_compare_flags), (gst_value_serialize_flags),
12950 (gst_value_deserialize_flags), (_gst_value_initialize):
12951 Fix serialisation of buffers, they are not boxed types anymore
12953 2005-06-20 Wim Taymans <wim@fluendo.com>
12955 * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
12956 Testcase to show error in buffer-on-caps serialisation.
12958 2005-06-20 Andy Wingo <wingo@pobox.com>
12960 * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
12961 will be adding to later.
12963 * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
12964 if its socks fill with rocks.
12965 (gst_system_clock_obtain): Set the name on object construction.
12966 Avoid double-checked locking.
12968 2005-06-20 Tim-Philipp Müller <tim at centricular dot net>
12970 * gst/gsturi.c: (gst_element_make_from_uri):
12971 Fix potential endless loop.
12973 2005-06-19 Thomas Vander Stichele <thomas at apestaart dot org>
12975 * check/Makefile.am:
12977 * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
12979 move over from testsuite dir and clean up
12982 * testsuite/Makefile.am:
12983 * testsuite/tags/.cvsignore:
12984 * testsuite/tags/Makefile.am:
12985 * testsuite/tags/merge.c:
12986 remove testsuite/tags
12988 2005-06-19 Thomas Vander Stichele <thomas at apestaart dot org>
12990 * docs/gst/gstreamer-sections.txt:
12991 * docs/gst/tmpl/gstenumtypes.sgml:
12992 * win32/gstenumtypes.c:
12993 clean up documentation build a little
12995 2005-06-19 Thomas Vander Stichele <thomas at apestaart dot org>
12997 * check/gstcheck.h:
12998 add macros for checking refcounts on objects and caps
12999 * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
13000 add some more unit tests
13001 * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
13002 (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
13003 fix leaked refcounts (I hope :)) so unittest works
13007 2005-06-19 Thomas Vander Stichele <thomas at apestaart dot org>
13009 * configure.ac: back to HEAD
13011 === release 0.9.1 ===
13013 2005-06-17 Thomas Vander Stichele <thomas at apestaart dot org>
13019 2005-06-17 Andy Wingo <wingo@pobox.com>
13021 * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
13022 assert; it's always possible that the pad gets deactivated in
13023 between the checks in gstpad.c and the implementation. Rely on
13024 finish_preroll() to return a FLUSHING or similar instead of on the
13027 * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
13028 clock and post an EOS message if we come out of finish_preroll in
13031 2005-06-16 David Schleef <ds@schleef.org>
13033 * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
13034 (gst_capsfilter_set_property): Allow NULL as possible value
13035 for filter_caps property, indicating GST_CAPS_ANY.
13037 2005-06-09 Thomas Vander Stichele <thomas at apestaart dot org>
13039 * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
13041 * gst/schedulers/Makefile.am:
13043 * gstreamer.spec.in:
13046 2005-06-09 Thomas Vander Stichele <thomas at apestaart dot org>
13048 * gstreamer.spec.in:
13051 2005-06-08 Andy Wingo <wingo@pobox.com>
13053 * gst/gstutils.c: RPAD fixes all around.
13054 (gst_element_link_pads): Refcounting fixes.
13056 * tools/gst-inspect.c:
13057 * tools/gst-xmlinspect.c:
13059 * gst/base/gsttypefindhelper.c:
13060 * gst/base/gstbasesink.c:
13061 * gst/gstqueue.c: RPAD fixes.
13063 * gst/gstghostpad.h:
13064 * gst/gstghostpad.c: New ghost pad implementation as full proxy
13065 pads. The tricky thing is they provide both source and sink
13066 interfaces, since they proxy the internal pad for the external
13067 pad, and vice versa. Implement with lower-level ProxyPad objects,
13068 with the interior proxy pad as a child of the exterior ghost pad.
13069 Should write a doc on this.
13071 * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
13072 (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
13075 * gst/gstpad.c: Big changes. No more stub base GstPad, now all
13076 pads are real pads. No ghost pads in this file. Not documenting
13077 the myriad s/RPAD/PAD/ and REALIZE fixes.
13078 (gst_pad_class_init): Add properties for "direction" and
13079 "template". Both are construct-only, so they can't change during
13080 the life of the pad. Fixes properly deriving from GstPad.
13081 (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
13082 derived objects, just set properties when creating the objects via
13084 (gst_pad_get_parent): Implement as a function, return NULL if the
13085 parent is not an element.
13086 (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
13087 (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
13089 * gst/gstobject.c (gst_object_class_init): Make name a construct
13090 property. Don't set it in the object init.
13092 * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
13093 with UNKNOWN direction.
13094 (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
13095 with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
13096 (gst_element_remove_pad): Remove ghost-pad special cases.
13097 (gst_element_pads_activate): Remove rpad cruft.
13099 * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
13100 catch the pad's-parent-not-an-element case.
13102 * gst/gst.h: Include gstghostpad.h.
13104 * gst/gst.c (init_post): No more real, ghost pads.
13106 * gst/Makefile.am: Add gstghostpad.[ch].
13108 * check/Makefile.am:
13109 * check/gst/gstbin.c:
13110 * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
13111 into a bin creates ghost pads, and that the refcounts are right.
13112 Partly moved from gstbin.c.
13114 2005-06-08 Thomas Vander Stichele <thomas at apestaart dot org>
13116 * check/gst-libs/.cvsignore:
13117 * check/gst/.cvsignore:
13118 * check/pipelines/.cvsignore:
13120 * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
13121 (START_TEST), (cleanup_suite), (main):
13122 add some tests related to cleanup after running pipelines
13124 2005-06-08 Thomas Vander Stichele <thomas at apestaart dot org>
13126 * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
13127 add a testsuite for GstBuffer
13129 2005-06-08 Thomas Vander Stichele <thomas at apestaart dot org>
13131 * gst/gstminiobject.h:
13132 add defines for accessing the refcount
13134 2005-06-03 Stefan Kost <ensonic@users.sf.net>
13136 * Makefile.am: added support for html unit test coverage reports
13138 2005-06-03 Jan Schmidt <thaytan@mad.scientist.com>
13140 * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
13141 Free existing caps if the capsfilter changes. Add a FIXME about
13142 setting those caps on the pads.
13144 * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
13145 Before adding a ghost pad to a parent bin, check that there isn't
13146 already one for the element on the bin. Prevents infinite recursion
13147 when using decodebin in parse pipelines. Andy says he'll rewrite the
13148 way this works anyway, so ignore the hack.
13150 2005-06-02 Andy Wingo <wingo@pobox.com>
13152 * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
13153 file size, pass it on to the type find helper.
13155 * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
13156 segment_start and segment_end properly according to the seek
13157 method. Segment_end is still a bit flaky because offset can be
13158 negative for CUR and END cases, but it takes -1 as an "unset"
13161 2005-06-02 Wim Taymans <wim@fluendo.com>
13163 * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
13164 (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
13165 (gst_basesink_activate):
13166 * gst/base/gstbasesink.h:
13167 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
13168 (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
13169 (gst_pad_query), (gst_pad_start_task):
13171 * gst/gstqueue.c: (gst_queue_bufferalloc),
13172 (gst_queue_handle_sink_event), (gst_queue_chain):
13173 Bufferalloc: return GstFlowReturn to more accuratly report
13174 why allocation failed.
13176 2005-06-02 Wim Taymans <wim@fluendo.com>
13178 * gst/gstpipeline.c: (gst_pipeline_send_event):
13179 Take snapshot of state without blocking.
13181 2005-06-02 Wim Taymans <wim@fluendo.com>
13183 * docs/design/part-TODO.txt:
13184 * docs/design/part-caps.txt:
13185 * docs/design/part-clocks.txt:
13186 * docs/design/part-negotiation.txt:
13187 * docs/design/part-preroll.txt:
13190 2005-05-30 Wim Taymans <wim@fluendo.com>
13192 * gst/elements/gstidentity.c: (gst_identity_event),
13193 (gst_identity_transform), (gst_identity_get_property):
13194 Protect last_message property as it is accessed from
13197 2005-05-30 Wim Taymans <wim@fluendo.com>
13199 * gst/gstelement.c: (gst_element_init),
13200 (gst_element_pads_activate), (gst_element_change_state):
13201 Slicker pad activation code.
13203 2005-05-30 Wim Taymans <wim@fluendo.com>
13206 * gst/gstelement.h:
13207 * gst/gstelementfactory.h:
13209 Move elementfactory methods to separate .h file.
13211 2005-05-30 Wim Taymans <wim@fluendo.com>
13213 * docs/design/part-overview.txt:
13214 * gst/gstsystemclock.h:
13215 Small typo fixes, doc updates.
13217 2005-05-30 Wim Taymans <wim@fluendo.com>
13219 * gst/gst.c: (gst_init_get_popt_table), (init_post),
13220 (init_popt_callback):
13221 Remove cpu-opt flag.
13223 2005-05-30 Wim Taymans <wim@fluendo.com>
13225 * gst/gstbuffer.c: (gst_subbuffer_finalize),
13226 (gst_buffer_create_sub), (gst_buffer_is_span_fast):
13228 Avoid typechecking in places where not needed.
13229 Added accessor for malloc_data.
13231 2005-05-30 Wim Taymans <wim@fluendo.com>
13233 * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
13234 (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
13235 (gst_pad_configure_sink), (gst_pad_configure_src),
13236 (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
13237 (gst_pad_start_task):
13238 Propagate errors from _set_caps() in configure_src/sink
13239 functions instead of returning TRUE.
13240 FLUSH events can travel up and downstream
13243 2005-05-30 Wim Taymans <wim@fluendo.com>
13245 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
13246 (gst_basesink_activate):
13247 Handle EOS in preroll.
13249 2005-05-30 Wim Taymans <wim@fluendo.com>
13251 * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
13252 (gst_queue_loop), (gst_queue_handle_src_event):
13253 Remove old pieces of code
13254 Flushing the queue in an upstream event is a very bad idea.
13256 2005-05-26 Andy Wingo <wingo@pobox.com>
13258 * gst/gstminiobject.c (gst_value_mini_object_collect): Use
13259 gst_value_set_mini_object so as to add a ref on the object (which
13260 will be removed when the value is unset).
13262 * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
13263 arg type in ::handoff.
13265 * gst/gstelement.c (gst_element_change_state): Also deactivate
13266 pads in READY->NULL, just in case the element didn't make it to
13267 PAUSED. Wingo tested, Wim approved.
13269 2005-05-26 Wim Taymans <wim@fluendo.com>
13271 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
13272 (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
13273 (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
13274 A flushing pad cannot be used to alloc_buffer from.
13276 2005-05-26 Wim Taymans <wim@fluendo.com>
13278 * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
13279 (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
13280 (gst_bus_source_dispatch), (gst_bus_source_finalize),
13281 (gst_bus_create_watch), (gst_bus_add_watch_full):
13283 Implement a real GSource and use g_main_context_wakeup() to
13284 signal new messages instead of the socketpair.
13286 2005-05-25 Wim Taymans <wim@fluendo.com>
13288 * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
13289 (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
13290 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
13291 (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
13292 (gst_pad_send_event), (gst_pad_start_task):
13293 * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
13294 (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
13295 (gst_queue_sink_activate), (gst_queue_src_activate),
13296 (gst_queue_change_state):
13298 Fix state changes for non sinks. We now change sinks, then elements
13299 with unconnected srcpads, then the rest.
13300 More efficient queue unlocking in flush and state changes.
13301 Set the pad activate mode even if it does not have an activate
13304 2005-05-25 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13306 * gst/base/gstbasesrc.c: (gst_basesrc_activate):
13307 Don't go in pull mode for non-seekable sources.
13308 * gst/elements/gsttypefindelement.h:
13309 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
13310 (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
13311 (free_entry), (stop_typefinding),
13312 (gst_type_find_element_handle_event), (find_peek),
13313 (gst_type_find_element_chain), (do_pull_typefind),
13314 (gst_type_find_element_change_state):
13315 Allow typefinding (w/o seeking) in push-mode, simplified version
13316 of what was in 0.8.
13317 * gst/gstutils.c: (gst_buffer_join):
13319 gst_buffer_join() from 0.8.
13321 2005-05-25 Wim Taymans <wim@fluendo.com>
13323 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
13324 (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
13325 (gst_pad_send_event), (gst_pad_start_task):
13326 Disable attempt at mode switching until it is figured out.
13328 2005-05-25 Wim Taymans <wim@fluendo.com>
13330 * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
13331 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
13332 (gst_basesink_finish_preroll), (gst_basesink_chain),
13333 (gst_basesink_loop), (gst_basesink_activate),
13334 (gst_basesink_change_state):
13335 * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
13336 (gst_basesrc_get_range), (gst_basesrc_loop),
13337 (gst_basesrc_activate):
13338 * gst/elements/gsttee.c: (gst_tee_sink_activate):
13339 * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
13340 (gst_real_pad_init), (gst_real_pad_set_property),
13341 (gst_real_pad_get_property), (gst_pad_set_active),
13342 (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
13343 (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
13344 (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
13345 (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
13346 (gst_pad_event_default_dispatch), (gst_pad_event_default),
13347 (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
13348 (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
13349 (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
13350 (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
13351 (gst_pad_stop_task):
13353 * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
13354 (gst_queue_loop), (gst_queue_src_activate):
13355 * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
13356 (gst_task_get_state):
13358 * gst/schedulers/threadscheduler.c:
13359 (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
13360 Implement gst_pad_pause/start/stop_task(), take STREAM lock
13362 Remove ACTIVE pad flag, use FLUSHING everywhere
13363 Added _pad_chain(), _pad_get_range() to call chain/getrange
13365 Add locks around IS_FLUSHING when reading.
13366 Take STREAM lock in chain(), get_range() functions so plugins
13367 don't need to take it anymore.
13371 2005-05-25 Wim Taymans <wim@fluendo.com>
13373 * tools/gst-launch.c: (event_loop):
13374 Unref message after using its contents instead of
13377 2005-05-24 Wim Taymans <wim@fluendo.com>
13379 * docs/design/draft-ghostpads.txt:
13380 * docs/design/draft-push-pull.txt:
13381 * docs/design/draft-query.txt:
13382 * docs/design/part-overview.txt:
13383 Docs updates, added general overview doc.
13385 2005-05-21 David Schleef <ds@schleef.org>
13387 * docs/gst/tmpl/old/GstBin.sgml:
13388 * docs/gst/tmpl/old/GstBuffer.sgml:
13389 * docs/gst/tmpl/old/GstCaps.sgml:
13390 * docs/gst/tmpl/old/GstClock.sgml:
13391 * docs/gst/tmpl/old/GstCompat.sgml:
13392 * docs/gst/tmpl/old/GstData.sgml:
13393 * docs/gst/tmpl/old/GstElement.sgml:
13394 * docs/gst/tmpl/old/GstEvent.sgml:
13395 * docs/gst/tmpl/old/GstIndex.sgml:
13396 * docs/gst/tmpl/old/GstStructure.sgml:
13397 * docs/gst/tmpl/old/GstTag.sgml:
13398 * docs/gst/tmpl/old/cothreads.sgml:
13399 * docs/gst/tmpl/old/cothreads_compat.sgml:
13400 * docs/gst/tmpl/old/gettext.sgml:
13401 * docs/gst/tmpl/old/gobject2gtk.sgml:
13402 * docs/gst/tmpl/old/grammar.tab.sgml:
13403 * docs/gst/tmpl/old/gst-i18n-app.sgml:
13404 * docs/gst/tmpl/old/gst-i18n-lib.sgml:
13405 * docs/gst/tmpl/old/gst_private.sgml:
13406 * docs/gst/tmpl/old/gstaggregator.sgml:
13407 * docs/gst/tmpl/old/gstarch.sgml:
13408 * docs/gst/tmpl/old/gstatomic_impl.sgml:
13409 * docs/gst/tmpl/old/gstbufferstore.sgml:
13410 * docs/gst/tmpl/old/gstdata_private.sgml:
13411 * docs/gst/tmpl/old/gstdisksink.sgml:
13412 * docs/gst/tmpl/old/gstdisksrc.sgml:
13413 * docs/gst/tmpl/old/gstelementfactory.sgml:
13414 * docs/gst/tmpl/old/gstextratypes.sgml:
13415 * docs/gst/tmpl/old/gstfakesink.sgml:
13416 * docs/gst/tmpl/old/gstfakesrc.sgml:
13417 * docs/gst/tmpl/old/gstfdsink.sgml:
13418 * docs/gst/tmpl/old/gstfdsrc.sgml:
13419 * docs/gst/tmpl/old/gstfilesink.sgml:
13420 * docs/gst/tmpl/old/gstfilesrc.sgml:
13421 * docs/gst/tmpl/old/gsthttpsrc.sgml:
13422 * docs/gst/tmpl/old/gstidentity.sgml:
13423 * docs/gst/tmpl/old/gstindexfactory.sgml:
13424 * docs/gst/tmpl/old/gstmarshal.sgml:
13425 * docs/gst/tmpl/old/gstmd5sink.sgml:
13426 * docs/gst/tmpl/old/gstmultidisksrc.sgml:
13427 * docs/gst/tmpl/old/gstmultifilesrc.sgml:
13428 * docs/gst/tmpl/old/gstpadtemplate.sgml:
13429 * docs/gst/tmpl/old/gstpipefilter.sgml:
13430 * docs/gst/tmpl/old/gstschedulerfactory.sgml:
13431 * docs/gst/tmpl/old/gstsearchfuncs.sgml:
13432 * docs/gst/tmpl/old/gstshaper.sgml:
13433 * docs/gst/tmpl/old/gstspider.sgml:
13434 * docs/gst/tmpl/old/gstspideridentity.sgml:
13435 * docs/gst/tmpl/old/gststatistics.sgml:
13436 * docs/gst/tmpl/old/gsttee.sgml:
13437 * docs/gst/tmpl/old/gsttimecache.sgml:
13438 * docs/gst/tmpl/old/gsttypefindfactory.sgml:
13439 * docs/gst/tmpl/old/gstxmlregistry.sgml:
13440 * docs/gst/tmpl/old/gthread-cothreads.sgml:
13441 * docs/gst/tmpl/old/types.sgml:
13442 I didn't intend to add these or check them in.
13444 2005-05-19 David Schleef <ds@schleef.org>
13446 * configure.ac: Use -no-common everywhere. In a sane world, it
13447 would be the default in libtool, because without it, you can't
13448 build DLLs on Windows.
13449 * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
13450 * docs/gst/gstreamer-sections.txt:
13451 * docs/gst/tmpl/gstcpu.sgml:
13452 * docs/gst/tmpl/gstdata.sgml:
13453 * docs/gst/tmpl/gstthread.sgml:
13455 2005-05-19 David Schleef <ds@schleef.org>
13457 * gst/gstminiobject.c: (gst_value_set_mini_object),
13458 (gst_value_take_mini_object), (gst_value_get_mini_object):
13459 * gst/gstminiobject.h: Add GValue set/get functions.
13461 2005-05-19 Wim Taymans <wim@fluendo.com>
13463 * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
13464 (gst_subbuffer_class_init), (gst_subbuffer_finalize),
13465 (gst_subbuffer_init), (gst_buffer_is_span_fast):
13467 * gst/gstbus.c: (gst_bus_post):
13468 * gst/gstelement.c: (gst_element_get_random_pad):
13469 * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
13470 Make subbufer unref the parent in finalize.
13471 some more debugging info.
13474 2005-05-19 Wim Taymans <wim@fluendo.com>
13476 * gst/base/gstbasesink.c: (gst_basesink_class_init),
13477 (gst_basesink_init), (gst_basesink_finalize),
13478 (gst_basesink_activate), (gst_basesink_change_state):
13479 Don't free preroll queue too early.
13481 2005-05-19 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13485 Hi, I'm outdated. Please shoot me.
13487 2005-05-19 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13489 * gst/gstpipeline.c: (gst_pipeline_send_event):
13490 Do not access variables after they have been deleted.
13492 2005-05-19 Wim Taymans <wim@fluendo.com>
13494 * tools/gst-inspect.c: (print_plugin_features):
13495 A plugin feature does unfortunatly not use the
13498 2005-05-18 Wim Taymans <wim@fluendo.com>
13500 * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
13501 Port _span() functions to new subbuffers.
13503 2005-05-18 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13505 * gst/gstbin.c: (gst_bin_add_func):
13506 Fix clock settery in bins when adding kids after the clock has
13509 2005-05-18 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13511 * gst/elements/gstidentity.c: (gst_identity_class_init):
13512 Workaround until signals support GstMiniObject.
13514 2005-05-18 Jan Schmidt <thaytan@mad.scientist.com>
13517 Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
13519 2005-05-18 Wim Taymans <wim@fluendo.com>
13521 * gst/base/Makefile.am:
13522 * gst/base/gstadapter.c: (gst_adapter_base_init),
13523 (gst_adapter_class_init), (gst_adapter_init),
13524 (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
13525 (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
13526 (gst_adapter_flush), (gst_adapter_available),
13527 (gst_adapter_available_fast):
13528 * gst/base/gstadapter.h:
13529 Ported and added adapter to the base classes.
13531 2005-05-17 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
13534 * gst/gstmessage.c:
13535 Make sure the class is reffed/unreffed once before threads can be
13536 used. Fixes #304551.
13538 2005-05-17 Wim Taymans <wim@fluendo.com>
13540 * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
13541 (gst_basesink_chain_unlocked), (gst_basesink_activate):
13542 * gst/gstminiobject.c: (gst_mini_object_get_type),
13543 (gst_mini_object_free):
13544 * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
13545 (gst_pad_push), (gst_pad_push_event):
13546 * gst/gstqueue.c: (gst_queue_change_state):
13547 Don't queue buffers in basesink when we are flushing.
13548 Unref buffer when flushing in basesink.
13549 Flush queue when going to READY
13550 Unref buffer when _push() returns an error.
13551 Don't free MiniObject instance when refcount is incremented
13552 in _finalize() so that we can recover objects.
13554 2005-05-17 Thomas Vander Stichele <thomas at apestaart dot org>
13556 * docs/manual/advanced-schedulers.xml:
13557 * docs/manual/appendix-checklist.xml:
13558 * docs/pwg/advanced-clock.xml:
13559 * docs/pwg/advanced-interfaces.xml:
13560 * docs/pwg/advanced-request.xml:
13561 * docs/pwg/advanced-types.xml:
13562 * docs/pwg/intro-preface.xml:
13563 * examples/plugins/example.c: (gst_example_get_type),
13564 (gst_example_class_init), (gst_example_chain),
13565 (gst_example_set_property), (gst_example_get_property),
13566 (gst_example_change_state), (plugin_init):
13567 * examples/plugins/example.h:
13570 2005-05-17 Wim Taymans <wim@fluendo.com>
13572 * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
13573 (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
13574 * gst/gstqueue.c: (gst_queue_change_state):
13575 Clear queue when going to READY.
13576 Remove IN_SETCAPS flag too.
13578 2005-05-17 Tim-Philipp Müller <tim at centricular dot net>
13580 * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
13581 Remove implicit cast from gboolean to GstElementStateReturn;
13582 make sure we still return failure in paused => ready case if
13583 the parent class fails to change state and our own stop
13586 2005-05-17 Wim Taymans <wim@fluendo.com>
13588 * tools/gst-launch.c: (event_loop):
13589 Message was unreffed too soon.
13591 2005-05-16 Andy Wingo <wingo@pobox.com>
13593 * gst/gstbin.c (sink_iterator_filter): Err... um...
13595 * check/gst/gstbin.c (test_ghost_pads): New test for the
13596 ghosting-if-elements-not-in-same-bin behavior.
13598 2005-05-16 David Schleef <ds@schleef.org>
13600 * gst/gstminiobject.c: Use g_atomic_int_get() instead of
13601 accessing refcount directly.
13603 2005-05-15 David Schleef <ds@schleef.org>
13605 * check/Makefile.am: remove GstData checks
13606 * check/gst-libs/gdp.c: (START_TEST): fix for API changes
13607 * gst/Makefile.am: add miniobject, remove data
13608 * gst/gst.h: add miniobject, remove data
13609 * gst/gstdata.c: remove
13610 * gst/gstdata.h: remove
13611 * gst/gstdata_private.h: remove
13612 * gst/gsttypes.h: remove GstEvent and GstMessage
13613 * gst/gstelement.c: (gst_element_post_message): fix for API changes
13614 * gst/gstmarshal.list: change BOXED -> OBJECT
13616 Implement GstMiniObject.
13617 * gst/gstminiobject.c:
13618 * gst/gstminiobject.h:
13620 Modify to be subclasses of GstMiniObject.
13621 * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
13622 (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
13623 (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
13624 (gst_subbuffer_get_type), (gst_subbuffer_init),
13625 (gst_buffer_create_sub), (gst_buffer_is_span_fast),
13628 * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
13629 (gst_event_class_init), (gst_event_init), (gst_event_finalize),
13630 (_gst_event_copy), (gst_event_new):
13632 * gst/gstmessage.c: (_gst_message_initialize),
13633 (gst_message_get_type), (gst_message_class_init),
13634 (gst_message_init), (gst_message_finalize), (_gst_message_copy),
13635 (gst_message_new), (gst_message_new_error),
13636 (gst_message_new_warning), (gst_message_new_tag),
13637 (gst_message_new_state_changed), (gst_message_new_application):
13638 * gst/gstmessage.h:
13639 * gst/gstprobe.c: (gst_probe_perform),
13640 (gst_probe_dispatcher_dispatch):
13642 * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
13643 (gst_query_class_init), (gst_query_finalize), (gst_query_init),
13644 (_gst_query_copy), (gst_query_new):
13646 Update elements for GstData -> GstMiniObject changes
13648 * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
13649 (gst_queue_chain), (gst_queue_loop):
13650 * gst/elements/gstbufferstore.c:
13651 (gst_buffer_store_add_buffer_func),
13652 (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
13653 * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
13654 (gst_fakesink_render):
13655 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
13656 * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
13657 (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
13658 (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
13659 (gst_filesrc_create_read):
13660 * gst/elements/gstidentity.c: (gst_identity_class_init):
13661 * gst/elements/gsttypefindelement.c:
13662 (gst_type_find_element_src_event), (free_entry_buffers),
13663 (gst_type_find_element_handle_event):
13664 * libs/gst/dataprotocol/dataprotocol.c:
13665 (gst_dp_header_from_buffer):
13666 * libs/gst/dataprotocol/dataprotocol.h:
13667 * libs/gst/dataprotocol/dp-private.h:
13669 2005-05-15 David Schleef <ds@schleef.org>
13671 * gst/elements/gstelements.c: Don't include headers that were
13674 2005-05-15 David Schleef <ds@schleef.org>
13676 * gst/elements/Makefile.am: Remove some elements that don't
13677 need to be in the core (or even exist at all).
13678 * gst/elements/gstaggregator.c:
13679 * gst/elements/gstaggregator.h:
13680 * gst/elements/gstmd5sink.c:
13681 * gst/elements/gstmd5sink.h:
13682 * gst/elements/gstmultifilesrc.c:
13683 * gst/elements/gstmultifilesrc.h:
13684 * gst/elements/gstpipefilter.c:
13685 * gst/elements/gstpipefilter.h:
13686 * gst/elements/gstshaper.c:
13687 * gst/elements/gstshaper.h:
13688 * gst/elements/gststatistics.c:
13689 * gst/elements/gststatistics.h:
13690 * po/POTFILES.in: Remove above files.
13692 2005-05-14 Andy Wingo <wingo@pobox.com>
13694 * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
13695 so as to get the refs right.
13696 (sink_iterator_filter): New function, wraps bin_element_is_sink,
13697 unreffing objects that don't pass the filter.
13699 * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
13700 gst_element_set_bus.
13701 (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
13702 normal cases, this will destroy the bus.
13704 * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
13707 * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
13710 2005-05-13 Andy Wingo <wingo@pobox.com>
13712 * gst/gstutils.c (gst_element_link_pads): Instead of calling
13713 gst_pad_link, call pad_link_maybe_ghosting,
13714 (pad_link_maybe_ghosting): Links pads, making sure that the
13715 elements being linked are in the same bin.
13716 (find_common_root, object_has_ancestor, ghost_up, remove_pad):
13717 Helpers for pad_link_maybe_ghosting.
13719 2005-05-13 Tim-Philipp Müller <tim at centricular dot net>
13722 Require GLib >= 2.4.0 (for the g_atomic_* funcs)
13724 2005-05-13 Tim-Philipp Müller <tim at centricular dot net>
13726 * docs/design/part-element-source.txt:
13729 2005-05-12 Wim Taymans <wim@fluendo.com>
13731 * gst/base/gstbasesink.c: (gst_basesink_init),
13732 (gst_basesink_activate):
13733 * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
13734 (gst_basesrc_is_seekable):
13735 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
13736 (bin_element_is_sink), (gst_bin_change_state):
13737 * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
13738 * gst/gstelement.h:
13739 Identify sinks by their flag to avoid overly complicated
13741 Do state changes even for elements not reachable from the
13743 BaseSink is a sink now :)
13744 Some more debugging info in the basesrc.
13747 2005-05-12 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13749 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
13750 Implement _query on a bin, similar to _send_event.
13752 2005-05-12 Tim-Philipp Müller <tim at centricular dot net>
13754 * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
13755 Discont event offset format should be GST_FORMAT_BYTES,
13756 not GST_FORMAT_TIME.
13758 2005-05-12 Wim Taymans <wim@fluendo.com>
13760 * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
13761 Same fix as Ronald's but without the signal.
13763 2005-05-12 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13765 * gst/gstutils.c: (gst_element_query_position):
13766 No, an element is not a pad.
13768 2005-05-12 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13770 * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
13771 (gst_bin_get_state):
13772 If a child is removed from a bin while we remove the child from
13773 the bin and while we're retrieving its state, signal this to the
13774 get_state function so we abort the wait (instead of waiting for
13775 a timeout) and can immediately re-iterate over all other elements.
13777 2005-05-12 Wim Taymans <wim@fluendo.com>
13779 * gst/base/Makefile.am:
13780 * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
13781 (gst_basesrc_start):
13782 * gst/base/gstbasesrc.h:
13783 * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
13784 (gst_pushsrc_base_init), (gst_pushsrc_class_init),
13785 (gst_pushsrc_init), (gst_pushsrc_create):
13786 * gst/base/gstpushsrc.h:
13787 Added is_seekable to BaseSrc
13788 Added simple PushSrc.
13790 2005-05-11 Wim Taymans <wim@fluendo.com>
13792 * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
13793 * gst/gstutils.c: (gst_element_get_compatible_pad_template),
13794 (gst_element_link_pads), (gst_element_query_position),
13795 (gst_element_query_convert), (intersect_caps_func),
13796 (gst_pad_query_position), (gst_pad_query_convert):
13797 Fix refcounting in utils function.
13798 No point in trying to activate a pad when it's added, it could
13799 be added from the state change function and then we deadlock, the
13800 element has to decide what to do.
13802 2005-05-10 Andy Wingo <wingo@pobox.com>
13804 * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
13805 *all* the arguments.
13807 * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
13808 stream lock if it's a FLUSH_DONE; normal flushes don't get the
13809 lock (according to the docs -- if this is wrong change the docs).
13811 * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
13812 flush messages in the NULL state.
13814 * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
13815 message immediately and return.
13816 (gst_bus_set_flushing): New function. If a bus is flushing, it
13817 flushes out any queued messages and immediately unrefs new
13818 messages. This is so when an element goes to NULL, all of the
13819 unhandled messages coming from it can be freed, and their
13820 references to the element dropped. In other words: message source
13821 ref considered harmful :P
13823 * gst/gstbin.c (gst_bin_change_state): Unref peer element when
13824 we're finished with it.
13826 * gst/gstmessage.c (gst_message_new_state_changed):
13828 2005-05-10 Wim Taymans <wim@fluendo.com>
13830 * gst/gstvalue.c: (gst_value_compare_flags),
13831 (gst_value_serialize_flags), (gst_value_deserialize_flags),
13832 (_gst_value_initialize):
13833 Added flags serialize/deserialize/compare code.
13835 2005-05-09 Andy Wingo <wingo@pobox.com>
13837 * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
13838 Intersect the peer's caps with our caps.
13840 2005-05-09 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13842 * gst/base/gsttypefindhelper.c: (helper_find_peek):
13843 * gst/elements/gsttypefindelement.c: (find_peek):
13844 Handle negative offsets better. Fixes decodebin.
13846 2005-05-09 Wim Taymans <wim@fluendo.com>
13848 * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
13849 (gst_base_transform_event):
13850 * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
13851 Implement accept_caps.
13852 Fix silly lock/unlock mismatch in base class.
13854 2005-05-09 Wim Taymans <wim@fluendo.com>
13856 * docs/design/draft-push-pull.txt:
13857 * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
13858 * gst/elements/gstfilesink.c: (gst_filesink_init),
13859 (gst_filesink_query):
13860 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
13861 (gst_type_find_handle_src_query), (find_element_get_length):
13862 * gst/gstelement.c: (gst_element_seek), (gst_element_query):
13863 * gst/gstelement.h:
13864 * gst/gstmessage.c:
13865 * gst/gstmessage.h:
13866 * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
13867 (gst_real_pad_get_caps_unlocked),
13868 (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
13869 (gst_pad_event_default_dispatch), (gst_pad_event_default),
13870 (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
13871 (gst_real_pad_dispose), (gst_real_pad_finalize),
13872 (gst_pad_load_and_link), (gst_pad_save_thyself),
13873 (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
13874 (gst_pad_check_pull_range), (gst_pad_pull_range),
13875 (gst_pad_template_get_type), (gst_pad_template_class_init),
13876 (gst_pad_template_init), (gst_pad_template_dispose),
13877 (name_is_valid), (gst_static_pad_template_get),
13878 (gst_pad_template_new), (gst_static_pad_template_get_caps),
13879 (gst_pad_template_get_caps), (gst_pad_set_element_private),
13880 (gst_pad_get_element_private), (gst_pad_start_task),
13881 (gst_pad_pause_task), (gst_pad_stop_task),
13882 (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
13883 (gst_ghost_pad_init), (gst_ghost_pad_dispose),
13884 (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
13885 (gst_ghost_pad_new):
13887 * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
13888 (gst_query_new_position), (gst_query_set_position),
13889 (gst_query_parse_position), (gst_query_new_convert),
13890 (gst_query_set_convert), (gst_query_parse_convert):
13892 * gst/gstqueryutils.c:
13893 * gst/gstqueryutils.h:
13894 * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
13895 (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
13896 (gst_queue_handle_src_query):
13897 * gst/gstutils.c: (gst_element_get_compatible_pad_template),
13898 (gst_element_query_position), (gst_element_query_convert),
13899 (intersect_caps_func), (gst_pad_query_position),
13900 (gst_pad_query_convert):
13902 * tools/gst-inspect.c: (print_pad_info):
13903 * tools/gst-xmlinspect.c: (print_element_info):
13904 Remove old query functions. Ported old code.
13905 Added position/convert helper functions to gstutils.
13906 Reordered gstpad.c code, grouping relevant things.
13907 Remove gst_message_new(), always need to speficy a specific
13911 2005-05-09 Andy Wingo <wingo@pobox.com>
13913 * gst/gstiterator.h: Add some includes.
13915 * gst/gstqueryutils.h: Include more headers.
13918 * gst/gstpad.c (gst_pad_query_position): New routine, replaces
13919 some uses of gst_pad_query.
13921 * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
13922 NULL out parameters.
13923 (gst_query_new_position): New proc, allocates a new position
13926 * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
13927 gstqueryutils.c to the build.
13929 * gst/gststructure.c (gst_structure_set_valist): Implement with
13930 the generic G_VALUE_COLLECT.
13932 2005-05-08 Edward Hervey <bilboed@bilboed.com>
13934 * gst/Makefile.am: (gst_headers):
13935 Added gstqueryutils.h to the list of headers to install, that was
13936 a 'nachty' move wingo :)
13938 2005-05-06 Andy Wingo <wingo@pobox.com>
13941 * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
13942 GstData, init a memchunk.
13943 (standard_definitions): Add a few query types, deprecate a few.
13944 (gst_query_get_type): New proc.
13945 (_gst_query_copy, _gst_query_free, gst_query_new): GstData
13947 (gst_query_new_application, gst_query_get_structure): New public
13950 * docs/design/draft-query.txt: Removed LINKS from the query types,
13951 because all the rest can be dispatched to other pads -- seemed
13952 ugly to have a query that couldn't be dispatched. internal_links
13953 is fine as a pad method.
13955 * gst/gstpad.h: Add query2 as a pad method, add the new functions
13956 in gstpad.c, but maintain binary compatibility for the moment.
13957 Will fix before 0.9 is out.
13959 * gst/gstqueryutils.c:
13960 * gst/gstqueryutils.h: New files, implement 3 methods for each
13961 query type: parse_query, parse_response, and set. Probably need an
13964 * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
13966 * gst/elements/gstfilesink.c (gst_filesink_query2):
13967 * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
13968 query_types, and formats methods.
13970 * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
13971 (gst_pad_set_query2_function): New functions.
13972 (gst_real_pad_init): Set query2_default as the default query2
13973 function. Basically just dispatches to internally linked pads.
13977 * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
13978 without using the atomic operations. Only one thread can possibly
13979 be accessing the data at this point. Changed so as to avoid
13980 gst_atomic operations.
13982 2005-05-06 Wim Taymans <wim@fluendo.com>
13984 * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
13985 Also set caps if we use the fallback buffer alloc.
13987 2005-05-06 Tim-Philipp Müller <tim at centricular dot net>
13989 * docs/gst/Makefile.am:
13990 * docs/gst/gstreamer-docs.sgml:
13991 * docs/gst/gstreamer-sections.txt:
13992 * docs/gst/tmpl/gstatomic.sgml:
13993 * docs/gst/tmpl/gstmemchunk.sgml:
13994 * testsuite/elements/struct_i386.h:
13995 * win32/GStreamer.vcproj:
13997 Purge GstAtomic stuff from docs and win32 makefiles as well
13999 2005-05-06 Wim Taymans <wim@fluendo.com>
14001 * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
14002 * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
14003 * gst/gstpad.c: (gst_pad_peer_get_caps):
14004 * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
14005 (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
14006 (gst_queue_src_activate), (gst_queue_change_state):
14008 * gst/gstutils.c: (gst_element_get_compatible_pad_template),
14009 (intersect_caps_func):
14010 Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
14011 Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
14012 Some fixes for the peer_get_caps() change.
14014 2005-05-06 Wim Taymans <wim@fluendo.com>
14016 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
14017 (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
14018 (gst_basesink_activate):
14019 Actually do something with error codes returned from the push
14022 2005-05-06 Wim Taymans <wim@fluendo.com>
14024 * docs/design/part-element-sink.txt:
14025 * docs/design/part-element-source.txt:
14026 * gst/base/gstbasesink.c: (gst_basesink_class_init),
14027 (gst_basesink_event), (gst_basesink_activate):
14028 * gst/base/gstbasesink.h:
14029 * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
14030 (gst_basesrc_activate):
14031 * gst/base/gstbasesrc.h:
14032 * gst/gstelement.c: (gst_element_pads_activate):
14033 Some more documentation.
14034 Fixed scheduling decision in _pads_activate().
14036 2005-05-05 Andy Wingo <wingo@pobox.com>
14038 * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
14041 2005-05-05 Wim Taymans <wim@fluendo.com>
14043 * gst/base/Makefile.am:
14044 * gst/base/gstbasesink.h:
14045 * gst/base/gstbasesrc.c: (gst_basesrc_init),
14046 (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
14047 * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
14048 (gst_collectpads_class_init), (gst_collectpads_init),
14049 (gst_collectpads_finalize), (gst_collectpads_new),
14050 (gst_collectpads_set_function), (gst_collectpads_add_pad),
14051 (find_pad), (gst_collectpads_remove_pad),
14052 (gst_collectpads_is_active), (gst_collectpads_collect),
14053 (gst_collectpads_collect_range), (gst_collectpads_start),
14054 (gst_collectpads_stop), (gst_collectpads_peek),
14055 (gst_collectpads_pop), (gst_collectpads_available),
14056 (gst_collectpads_read), (gst_collectpads_flush),
14057 (gst_collectpads_chain):
14058 * gst/base/gstcollectpads.h:
14059 * gst/elements/Makefile.am:
14060 * gst/elements/gstelements.c:
14061 * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
14062 (gst_fakesink_get_times), (gst_fakesink_event),
14063 (gst_fakesink_preroll), (gst_fakesink_render):
14064 * gst/elements/gstfilesink.c: (gst_filesink_class_init),
14065 (gst_filesink_init), (gst_filesink_set_location),
14066 (gst_filesink_open_file), (gst_filesink_close_file),
14067 (gst_filesink_pad_query), (gst_filesink_event),
14068 (gst_filesink_render), (gst_filesink_change_state):
14069 * gst/elements/gstfilesink.h:
14070 Added object to help in making collect pad based elements.
14072 Make event function in sink baseclass return gboolean.
14074 2005-05-05 Wim Taymans <wim@fluendo.com>
14076 * gst/gstbin.c: (gst_bin_send_event), (compare_name),
14077 (gst_bin_get_by_name):
14079 * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
14080 (gst_clock_finalize):
14081 * gst/gstdata.c: (gst_data_replace):
14083 * gst/gstelement.c: (gst_element_request_pad),
14084 (gst_element_pads_activate):
14085 * gst/gstobject.c: (gst_object_init), (gst_object_ref),
14086 (gst_object_unref):
14087 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
14088 (gst_pad_set_checkgetrange_function),
14089 (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
14090 (gst_pad_check_pull_range), (gst_pad_pull_range),
14091 (gst_static_pad_template_get_caps), (gst_pad_start_task),
14092 (gst_pad_pause_task), (gst_pad_stop_task):
14093 * gst/gstutils.c: (gst_element_get_compatible_pad_template),
14094 (gst_element_request_pad), (gst_pad_proxy_getcaps):
14095 Fix name lookup in GstBin.
14096 Added _data_replace() function and _buffer_replace()
14097 Use finalize method to clean up clock.
14098 Fix refcounting on request pads.
14099 Fix pad schedule mode error.
14100 Some more object refcounting debug info,
14103 2005-05-04 Andy Wingo <wingo@pobox.com>
14105 * check/Makefile.am:
14106 * docs/gst/tmpl/gstatomic.sgml:
14107 * docs/gst/tmpl/gstplugin.sgml:
14108 * gst/base/gstbasesink.c: (gst_basesink_activate):
14109 * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
14110 (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
14111 (gst_basesrc_query), (gst_basesrc_set_property),
14112 (gst_basesrc_get_property), (gst_basesrc_check_get_range),
14113 (gst_basesrc_activate):
14114 * gst/base/gstbasesrc.h:
14115 * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
14116 (gst_base_transform_src_activate):
14117 * gst/elements/gstelements.c:
14118 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
14119 (gst_fakesrc_set_property), (gst_fakesrc_get_property):
14120 * gst/elements/gsttee.c: (gst_tee_sink_activate):
14121 * gst/elements/gsttypefindelement.c: (find_element_get_length),
14122 (gst_type_find_element_checkgetrange),
14123 (gst_type_find_element_activate):
14124 * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
14125 * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
14126 (gst_caps_load_thyself):
14127 * gst/gstelement.c: (gst_element_pads_activate),
14128 (gst_element_save_thyself), (gst_element_restore_thyself):
14129 * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
14130 (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
14132 * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
14133 (gst_xml_parse_file), (gst_xml_parse_memory),
14134 (gst_xml_get_element), (gst_xml_make_element):
14135 * gst/indexers/gstfileindex.c: (gst_file_index_load),
14136 (_file_index_id_save_xml), (gst_file_index_commit):
14137 * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
14138 (read_enum), (load_pad_template), (load_feature), (load_plugin),
14140 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
14141 (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
14142 * tools/gst-complete.c: (main):
14143 * tools/gst-compprep.c: (main):
14144 * tools/gst-inspect.c: (print_element_properties_info):
14145 * tools/gst-launch.c: (xmllaunch_parse_cmdline):
14146 * tools/gst-xmlinspect.c: (print_element_properties):
14149 2005-05-03 Thomas Vander Stichele <thomas at apestaart dot org>
14151 * gst/gstplugin.c: (gst_plugin_check_module),
14152 (gst_plugin_check_file), (gst_plugin_load_file):
14153 apply patch from #172526 to make register work on MacOSX
14155 2005-05-02 Thomas Vander Stichele <thomas at apestaart dot org>
14157 * docs/gst/tmpl/gstconfig.sgml:
14158 * gst/gstconfig.h.in:
14159 move documentation for some symbols. Add doc for GST_PTR_FORMAT
14160 * testsuite/debug/printf_extension.c: (main):
14161 Do not use GST_PTR_FORMAT on pointers to types with
14162 sizeof < sizeof(gpointer). Fixes test on 64-bit
14163 * testsuite/elements/property.h:
14164 use correct printf format
14166 2005-05-02 Wim Taymans <wim@fluendo.com>
14168 * docs/design/draft-push-pull.txt:
14169 * docs/design/draft-query.txt:
14170 * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
14171 (gst_basesrc_start):
14172 Added draft for new query API.
14173 Added draft for better selecting scheduling methods.
14174 Make basesrc ignore length if the subclass does not support
14177 2005-05-02 Thomas Vander Stichele <thomas at apestaart dot org>
14180 possible fixes for automake-1.5 - _LIBADD is reserved
14182 2005-05-02 Thomas Vander Stichele <thomas at apestaart dot org>
14184 * docs/faq/Makefile.am:
14185 * docs/manual/Makefile.am:
14186 * docs/manuals.mak:
14187 * docs/pwg/Makefile.am:
14189 possible fixes for automake-1.5
14191 2005-04-28 Wim Taymans <wim@fluendo.com>
14193 * gst/base/gstbasesink.c: (gst_basesink_base_init),
14194 (gst_basesink_pad_getcaps), (gst_basesink_init),
14195 (gst_basesink_do_sync):
14196 * gst/gstclock.c: (gst_clock_entry_new):
14197 * gst/gstevent.c: (gst_event_discont_get_value):
14198 * gst/gstpipeline.c: (pipeline_bus_handler),
14199 (gst_pipeline_change_state):
14200 * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
14201 Better debugging of clocking info.
14202 Allow NULL values when getting discont values.
14204 2005-04-27 Wim Taymans <wim@fluendo.com>
14206 * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
14207 * check/gst/gstpad.c: (gst_pad_suite):
14208 Increase timeout for checks.
14210 2005-04-27 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
14212 * check/Makefile.am:
14213 fix the broken rule for cleanup. Apparently this rule is
14214 only needed on FC2, so maybe this warrants further autotool
14217 2005-04-26 Wim Taymans <wim@fluendo.com>
14219 * gst/gsttrashstack.h:
14220 Ooohh. a nasty one! After having a failed pop() from the stack,
14221 it's possible that the stack is empty. In that case, don't
14222 follow the NULL pointer.
14224 2005-04-25 Wim Taymans <wim@fluendo.com>
14226 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
14227 (gst_pad_set_checkgetrange_function),
14228 (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
14229 (gst_pad_check_pull_range), (gst_pad_pull_range),
14230 (gst_static_pad_template_get_caps), (gst_pad_start_task),
14231 (gst_pad_pause_task), (gst_pad_stop_task):
14232 * gst/gstplugin.c: (gst_plugin_load):
14234 Remove gst_library_load as it does more harm than good with
14235 the new g_module flags.
14236 Revert bogus caps template check in pad linking, pad caps
14237 are important when linking not the template, which is more
14238 general than the current caps.
14240 2005-04-25 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14242 * gst/autoplug/.cvsignore:
14243 * gst/autoplug/Makefile.am:
14244 * gst/autoplug/gstsearchfuncs.c:
14245 * gst/autoplug/gstsearchfuncs.h:
14246 * gst/autoplug/gstspider.c:
14247 * gst/autoplug/gstspider.h:
14248 * gst/autoplug/gstspideridentity.c:
14249 * gst/autoplug/gstspideridentity.h:
14250 * gst/autoplug/spidertest.c:
14253 2005-04-25 Wim Taymans <wim@fluendo.com>
14255 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
14256 (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
14257 (gst_pad_pull_range), (gst_static_pad_template_get_caps),
14258 (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
14260 Added stubs for unimplemented functions.
14262 2005-04-24 David Schleef <ds@schleef.org>
14264 * gst/gstpad.h: Disable some unimplemented functions. Wim,
14267 2005-04-24 David Schleef <ds@schleef.org>
14269 Convert everything from GstAtomicInt to g_atomic_int_*, and
14274 * gst/gstatomic_impl.h:
14282 * gst/gstdata_private.h:
14286 * gst/gstmessage.c:
14289 * gst/gststructure.c:
14290 * gst/gststructure.h:
14291 * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
14294 2005-04-24 David Schleef <ds@schleef.org>
14296 * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
14297 make the regressions tests work. Remove some code that is no
14299 * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
14300 Disable warning for pads without templates.
14302 2005-04-24 David Schleef <ds@schleef.org>
14304 * gst/gstpad.c: Remove handling of filtered caps. Fix/merge
14305 functions that handle filtered links.
14306 * gst/gstpad.h: Remove 'appfilter' field and prototypes of
14308 * gst/gstutils.c: Fix/remove utility functions that handle
14311 * gst/gstvalue.c: Add serialization/deserialization of caps
14312 * gst/parse/grammar.y: Ignore filtered caps when linking. This
14313 requires fixing so that the filter caps notation creates
14314 a capsfilter element and sets the filter_caps property. I
14315 think everyone probably wants to keep the shorthand notation.
14316 * docs/gst/tmpl/gstelement.sgml: updates for API changes.
14317 * docs/gst/tmpl/gstpad.sgml:
14319 * gst/elements/gstelements.c: Register capsfilter element.
14320 * gst/Makefile.am: fix spacing
14321 * docs/random/ds/0.9-suggested-changes: random
14323 2005-04-23 David Schleef <ds@schleef.org>
14325 * gst/elements/Makefile.am:
14326 * gst/elements/gstcapsfilter.c: New element that acts like an
14327 identity, but filters caps. Will eventually replace filtered
14328 caps in pad linking.
14329 * gst/gstutils.c: (gst_element_create_all_pads): New function
14330 to create all the ALWAYS pads that are registered with an
14331 element class. This functionality should eventually be
14332 merged in with GstElement initialization.
14334 * testsuite/trigger/README: part of trigger test code that should
14335 have been checked in a long time ago.
14337 2005-04-23 David Schleef <ds@schleef.org>
14339 * gst/Makefile.am: Remove as-libtool stuff. It's likely not
14340 needed with new versions of libtool (nobody will confirm this),
14341 and hard to carry around.
14342 * gst/autoplug/Makefile.am:
14343 * gst/base/Makefile.am:
14344 * gst/elements/Makefile.am:
14345 * gst/indexers/Makefile.am:
14346 * gst/schedulers/Makefile.am:
14347 * libs/gst/bytestream/Makefile.am:
14348 * libs/gst/control/Makefile.am:
14349 * libs/gst/dataprotocol/Makefile.am:
14350 * libs/gst/getbits/Makefile.am:
14352 2005-04-21 Wim Taymans <wim@fluendo.com>
14354 * docs/design/draft-push-pull.txt:
14355 * docs/design/part-MT-refcounting.txt:
14356 * docs/design/part-TODO.txt:
14357 * docs/design/part-caps.txt:
14358 * docs/design/part-events.txt:
14359 * docs/design/part-gstbus.txt:
14360 * docs/design/part-gstpipeline.txt:
14361 * docs/design/part-messages.txt:
14362 * docs/design/part-push-pull.txt:
14363 * docs/design/part-query.txt:
14366 2005-04-21 Wim Taymans <wim@fluendo.com>
14368 * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
14369 (gst_message_new), (gst_message_new_error),
14370 (gst_message_new_warning), (gst_message_new_tag),
14371 (gst_message_new_state_changed), (gst_message_new_application),
14372 (gst_message_get_structure):
14373 * gst/gstmessage.h:
14374 * gst/gststructure.c: (gst_structure_set_parent_refcount),
14375 (gst_structure_copy_conditional):
14376 Use parent refcount in GstMessage to ensure GstStructure
14378 Cleaned up headers a bit.
14381 2005-04-20 Wim Taymans <wim@fluendo.com>
14383 * gst/base/gstbasesink.c: (gst_basesink_base_init),
14384 (gst_basesink_pad_getcaps), (gst_basesink_init),
14385 (gst_basesink_chain_unlocked):
14386 * gst/base/gsttypefindhelper.c: (helper_find_suggest),
14387 (gst_type_find_helper):
14388 * gst/elements/gsttypefindelement.c:
14389 (gst_type_find_element_have_type), (gst_type_find_element_init),
14390 (stop_typefinding), (gst_type_find_element_handle_event),
14391 (find_suggest), (gst_type_find_element_chain),
14392 (gst_type_find_element_checkgetrange),
14393 (gst_type_find_element_getrange), (do_typefind),
14394 (gst_type_find_element_activate):
14395 * gst/gstbuffer.c: (_gst_buffer_sub_free),
14396 (gst_buffer_default_free), (gst_buffer_default_copy),
14397 (gst_buffer_set_caps):
14398 * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
14399 (gst_caps_replace):
14400 * gst/gstmessage.c: (gst_message_new),
14401 (gst_message_new_state_changed):
14402 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
14403 (gst_pad_set_checkgetrange_function),
14404 (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
14405 (gst_pad_set_caps), (gst_pad_check_pull_range),
14406 (gst_pad_pull_range), (gst_static_pad_template_get_caps):
14408 * gst/gsttypefind.c: (gst_type_find_register):
14409 Make gst_caps_replace() work like other _replace() functions.
14410 Use _caps_replace() where possible.
14411 Make sure _message_new() initialises its field.
14412 Add gst_static_pad_template_get_caps()
14415 2005-04-18 Andy Wingo <wingo@pobox.com>
14417 * gst/gstelement.c (gst_element_pads_activate): Check pull_range
14418 on the peer, not the pad. I think that was a typo. Pass an extra
14419 arg to see if random access is possible. Activate the pads as
14420 PULL_RANGE if possible.
14422 * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
14424 * gst/base/gstbasesrc.c (gst_basesrc_set_property)
14425 (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
14428 2005-04-14 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14430 * docs/faq/using.xml:
14431 Add note on gstreamer-properties (#154996).
14433 2005-04-13 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14435 * docs/random/bbb/optional-properties:
14436 Some analysis on optional properties.
14438 2005-04-12 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14440 * docs/gst/tmpl/gstelementfactory.sgml:
14441 * gst/gstelement.h:
14442 * gst/gstelementfactory.c: (gst_element_factory_init),
14443 (gst_element_factory_cleanup), (gst_element_register),
14444 (__gst_element_factory_add_static_pad_template),
14445 (gst_element_factory_get_static_pad_templates),
14446 (gst_element_factory_can_src_caps),
14447 (gst_element_factory_can_sink_caps):
14448 * gst/registries/Makefile.am:
14449 * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
14450 (gst_xml_registry_class_init), (gst_xml_registry_init),
14451 (gst_xml_registry_new), (gst_xml_registry_set_property),
14452 (gst_xml_registry_get_property), (get_time), (make_dir),
14453 (gst_xml_registry_get_perms_func),
14454 (plugin_times_older_than_recurse), (plugin_times_older_than),
14455 (gst_xml_registry_open_func), (gst_xml_registry_load_func),
14456 (gst_xml_registry_save_func), (gst_xml_registry_close_func),
14457 (add_to_char_array), (read_string), (read_uint), (read_enum),
14458 (load_pad_template), (load_feature), (load_plugin), (load_paths),
14459 (gst_xml_registry_load), (gst_xml_registry_load_plugin),
14460 (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
14461 (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
14462 (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
14463 (gst_xml_registry_rebuild):
14464 * gst/registries/gstlibxmlregistry.h:
14465 * tools/gst-compprep.c: (main):
14466 * tools/gst-inspect.c: (print_pad_templates_info):
14467 * tools/gst-xmlinspect.c: (print_element_info):
14468 Use libxml2 for registry parsing, use staticpadtemplates in
14469 elementfactories. Makes gst_init() +/- 10x faster.
14471 2005-04-12 Wim Taymans <wim@fluendo.com>
14473 * gst/base/Makefile.am:
14474 * gst/base/gstbasesink.c: (gst_basesink_base_init),
14475 (gst_basesink_pad_getcaps), (gst_basesink_init),
14476 (gst_basesink_event), (gst_basesink_change_state):
14477 * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
14478 (gst_basesrc_init), (gst_basesrc_query),
14479 (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
14480 (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
14481 (gst_basesrc_check_get_range), (gst_basesrc_loop),
14482 (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
14483 (gst_basesrc_stop), (gst_basesrc_activate),
14484 (gst_basesrc_change_state):
14485 * gst/base/gsttypefindhelper.c: (helper_find_peek),
14486 (helper_find_suggest), (gst_type_find_helper):
14487 * gst/base/gsttypefindhelper.h:
14488 * gst/elements/Makefile.am:
14489 * gst/elements/gstelements.c:
14490 * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
14491 (gst_fakesink_get_times), (gst_fakesink_event),
14492 (gst_fakesink_preroll), (gst_fakesink_render):
14493 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
14494 (gst_fakesrc_init), (gst_fakesrc_event_handler),
14495 (gst_fakesrc_get_property), (gst_fakesrc_create),
14496 (gst_fakesrc_start), (gst_fakesrc_stop):
14497 * gst/elements/gstfakesrc.h:
14498 * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
14499 (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
14500 (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
14501 (gst_filesrc_create_read), (gst_filesrc_create),
14502 (gst_filesrc_is_seekable), (gst_filesrc_get_size),
14503 (gst_filesrc_start):
14504 * gst/elements/gsttypefindelement.c:
14505 (gst_type_find_element_have_type), (gst_type_find_element_init),
14506 (start_typefinding), (stop_typefinding), (push_buffer_store),
14507 (gst_type_find_element_handle_event),
14508 (gst_type_find_element_chain),
14509 (gst_type_find_element_checkgetrange),
14510 (gst_type_find_element_getrange), (do_typefind),
14511 (gst_type_find_element_activate),
14512 (gst_type_find_element_change_state):
14513 * gst/elements/gsttypefindelement.h:
14514 * gst/gstpipeline.c: (pipeline_bus_handler):
14515 Added typefind helper.
14516 Small preroll fix in the base sink.
14517 Disable typefind code in basesrc.
14518 Crude port of typefindelement.
14522 2005-04-11 Wim Taymans <wim@fluendo.com>
14524 * check/gst/gstbus.c: (gstbus_suite):
14525 * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
14526 * check/gstcheck.h:
14527 Fix up the timeout so that the test does not fail.
14529 2005-04-06 Wim Taymans <wim@fluendo.com>
14532 * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
14533 (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
14534 (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
14535 (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
14536 (gst_basesrc_check_get_range), (gst_basesrc_loop),
14537 (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
14538 (gst_basesrc_stop), (gst_basesrc_activate),
14539 (gst_basesrc_change_state), (basesrc_find_peek),
14540 (basesrc_find_suggest), (gst_basesrc_type_find):
14541 * gst/base/gstbasesrc.h:
14542 * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
14543 (gst_filesrc_class_init), (gst_filesrc_init),
14544 (gst_filesrc_finalize), (gst_filesrc_set_location),
14545 (gst_filesrc_set_property), (gst_filesrc_get_property),
14546 (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
14547 (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
14548 (gst_filesrc_create_read), (gst_filesrc_create),
14549 (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
14550 * gst/elements/gstfilesrc.h:
14551 * gst/gstelement.c: (gst_element_get_state_func),
14552 (gst_element_lost_state), (gst_element_pads_activate):
14553 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
14554 (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
14555 (gst_pad_pull_range):
14557 More work on the generic source base class, implement seeking,
14559 Make filesrc extend the base source class.
14560 Added gst_pad_set_checkgetrange_function to GstPad.
14562 2005-04-06 Andy Wingo <wingo@pobox.com>
14564 * pkgconfig/gstreamer-base.pc.in:
14565 * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
14567 * pkgconfig/Makefile.am:
14568 * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
14570 2005-04-04 Wim Taymans <wim@fluendo.com>
14572 * gst/base/Makefile.am:
14574 * gst/base/gstbasesink.c: (gst_basesink_base_init),
14575 (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
14576 (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
14577 (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
14578 * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
14579 (gst_basesrc_base_init), (gst_basesrc_class_init),
14580 (gst_basesrc_init), (gst_basesrc_get_formats),
14581 (gst_basesrc_get_query_types), (gst_basesrc_query),
14582 (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
14583 (gst_basesrc_set_property), (gst_basesrc_get_property),
14584 (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
14585 (gst_basesrc_loop), (gst_basesrc_activate),
14586 (gst_basesrc_change_state):
14587 * gst/base/gstbasesrc.h:
14588 * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
14589 (gst_fakesrc_class_init), (gst_fakesrc_init),
14590 (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
14591 (gst_fakesrc_get_property), (gst_fakesrc_create):
14592 * gst/elements/gstfakesrc.h:
14593 * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
14594 (gst_filesrc_open_file), (gst_filesrc_loop),
14595 (gst_filesrc_activate), (filesrc_find_peek),
14596 (gst_filesrc_type_find):
14597 Made base source class, make fakesrc extend it.
14598 Add comments to basesink class.
14599 Some filesrc cleanup.
14601 2005-03-31 David Schleef <ds@schleef.org>
14603 * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
14604 Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
14605 expected to link against libgstreamer.
14606 * gst/base/Makefile.am: link against libgstreamer
14607 * gst/elements/Makefile.am: same
14609 2005-03-31 Andy Wingo <wingo@pobox.com>
14611 * tests/instantiate/Makefile.am:
14612 * tests/instantiate/caps.c: Add test to test speed of caps copy
14615 * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
14616 GMemChunk to be fair.
14618 * gst/gsttrashstack.h: Remove warning about using the fallback
14619 trash stack implementation, it's still faster than malloc.
14621 2005-03-30 Andy Wingo <wingo@pobox.com>
14623 * tests/complexity.c: Add a copyright.
14625 2005-03-31 Wim Taymans <wim@fluendo.com>
14627 * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
14628 (gst_base_transform_class_init), (gst_base_transform_init),
14629 (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
14630 (gst_base_transform_get_property),
14631 (gst_base_transform_sink_activate),
14632 (gst_base_transform_src_activate),
14633 (gst_base_transform_change_state):
14634 * gst/base/gstbasetransform.h:
14635 * gst/elements/gstidentity.c: (gst_identity_class_init),
14636 (gst_identity_event), (gst_identity_check_perfect),
14637 (gst_identity_transform), (gst_identity_start),
14638 (gst_identity_stop):
14639 Added start/stop methods to transform base class so subclasses
14640 don't need to deal with state changes even.
14642 2005-03-31 Wim Taymans <wim@fluendo.com>
14644 * gst/gstevent.c: (gst_event_new_discontinuous_valist),
14645 (gst_event_new_discontinuous), (gst_event_discont_get_value):
14647 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
14648 (gst_pad_pull_range):
14649 Added rate to the discont event to prepare for variable speed
14650 and reverse playback.
14652 2005-03-29 David Schleef <ds@schleef.org>
14655 * testsuite/trigger/Makefile.am:
14656 * testsuite/trigger/trigger.c: A little example program to show
14657 how trigger-based elements can work.
14659 2005-03-29 Wim Taymans <wim@fluendo.com>
14661 * gst/base/Makefile.am:
14663 * gst/base/gstbasesink.c: (gst_basesink_get_type),
14664 (gst_basesink_base_init), (gst_basesink_class_init),
14665 (gst_basesink_pad_getcaps), (gst_basesink_init),
14666 (gst_basesink_activate), (gst_basesink_change_state):
14667 * gst/base/gstbasesink.h:
14668 * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
14669 (gst_base_transform_base_init), (gst_base_transform_finalize),
14670 (gst_base_transform_class_init), (gst_base_transform_init),
14671 (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
14672 (gst_base_transform_event), (gst_base_transform_getrange),
14673 (gst_base_transform_chain), (gst_base_transform_handle_buffer),
14674 (gst_base_transform_set_property),
14675 (gst_base_transform_get_property),
14676 (gst_base_transform_sink_activate),
14677 (gst_base_transform_src_activate),
14678 (gst_base_transform_change_state):
14679 * gst/base/gstbasetransform.h:
14680 * gst/elements/gstidentity.c: (gst_identity_finalize),
14681 (gst_identity_class_init), (gst_identity_init),
14682 (gst_identity_event), (gst_identity_check_perfect),
14683 (gst_identity_transform), (gst_identity_set_property),
14684 (gst_identity_get_property), (gst_identity_change_state):
14685 * gst/elements/gstidentity.h:
14686 * gst/gstelement.c: (gst_element_get_state_func),
14687 (gst_element_lost_state), (gst_element_pads_activate):
14688 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
14689 (gst_pad_check_pull_range), (gst_pad_pull_range):
14691 Simplify pad activation.
14692 Added function to check if pull_range can be performed.
14693 Error out when pulling inactive or flushing pads.
14694 Removed const from refcounted types as it does not make sense.
14695 Simplify pad templates in basesink
14696 Added base class for simple 1-to-1 transforms.
14697 Make identity subclass the base transform.
14699 2005-03-29 Andy Wingo <wingo@pobox.com>
14701 * docs/libs/gstreamer-libs-overrides.txt:
14702 * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
14703 really don't understand what's going on, but like whatever. I want
14706 * docs/gst/Makefile.am:
14707 * docs/libs/Makefile.am: Dist the overrides files.
14709 * check/Makefile.am (clean-local): Remove .libs directories.
14711 * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
14712 elements to EXTRA_DIST, so po/ files are happy.
14714 * po/POTFILES.in: Er, remove it here.
14716 * po/POTFILES: Remove gstspider.c.
14718 * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
14720 * docs/libs/gstreamer-libs-docs.sgml:
14721 * docs/libs/gstreamer-libs-sections.txt: Remove the section on
14724 * tests/complexity.c (main): Set the length of the preroll queue
14725 on the sinks to prevent a lockup.
14727 * libs/gst/dataprotocol/Makefile.am:
14728 * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
14729 the same as the one in check/gst-libs/gdp.c.
14731 * po/, docs/gst/: Commit automatic changes to docs and po files.
14733 * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
14734 the versioned libgstbase.
14736 * check/Makefile.am: Depend on an unversioned gst-register, seems
14737 to make autoconf happier.
14739 * gst/base/Makefile.am: Make libgstbase a versioned lib.
14741 2005-03-28 Wim Taymans <wim@fluendo.com>
14744 * docs/design/part-gstelement.txt:
14745 * docs/design/part-negotiation.txt:
14746 * docs/design/part-preroll.txt:
14747 * docs/design/part-scheduling.txt:
14748 * docs/design/part-states.txt:
14750 * gst/base/Makefile.am:
14752 * gst/base/gstbasesink.c: (gst_basesink_get_template),
14753 (gst_basesink_base_init), (gst_basesink_class_init),
14754 (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
14755 (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
14756 (gst_basesink_set_pad_functions),
14757 (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
14758 (gst_basesink_set_property), (gst_basesink_get_property),
14759 (gst_base_sink_get_template), (gst_base_sink_get_caps),
14760 (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
14761 (gst_basesink_preroll_queue_push),
14762 (gst_basesink_preroll_queue_empty),
14763 (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
14764 (gst_basesink_event), (gst_basesink_get_times),
14765 (gst_basesink_do_sync), (gst_basesink_handle_buffer),
14766 (gst_basesink_chain_unlocked), (gst_basesink_chain),
14767 (gst_basesink_loop), (gst_basesink_activate),
14768 (gst_basesink_change_state):
14769 * gst/base/gstbasesink.h:
14770 * gst/elements/Makefile.am:
14771 * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
14772 (gst_fakesink_class_init), (gst_fakesink_init),
14773 (gst_fakesink_set_property), (gst_fakesink_get_property),
14774 (gst_fakesink_get_times), (gst_fakesink_event),
14775 (gst_fakesink_preroll), (gst_fakesink_render),
14776 (gst_fakesink_change_state):
14777 * gst/elements/gstfakesink.h:
14778 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
14779 (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
14780 * gst/gstelement.c: (gst_element_add_pad),
14781 (gst_element_get_state_func), (gst_element_abort_state),
14782 (gst_element_commit_state), (gst_element_lost_state),
14783 (gst_element_set_state), (gst_element_pads_activate):
14784 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
14785 * gst/gstpipeline.c: (gst_pipeline_send_event),
14786 (gst_pipeline_change_state):
14787 Added state change code.
14788 Added/updated docs.
14789 Added sink base class, make fakesink extend the base class.
14790 Small cleanups in GstPipeline.
14792 2005-03-26 David Schleef <ds@schleef.org>
14794 * gst/Makefile.am: remove gstcpu.[ch]. The gst_cpu functionality
14795 is broken and should be implemented in a different library.
14796 * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
14797 * gst/gst.h: remove gstcpu.h
14798 * gst/gstcpu.c: remove
14799 * gst/gstcpu.h: remove
14800 * gst/Makefile.am.future: Remove this file. It's ancient.
14802 2005-03-25 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14804 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
14805 (gst_bin_send_event):
14806 Add default event/set_manager handlers. The set_manager handler
14807 takes care that the manager is distributed over kids that were
14808 already in the bin before the manager was set. The event handler
14809 is a utility virtual function that sends the event over all sinks,
14810 so that gst_element_send_event (bin, event); has the expected
14812 * gst/gstpad.c: (gst_pad_event_default):
14813 Re-install default event handling for discontinuities, so that
14814 seeking works without requiring hacks in applications or extra
14816 * gst/gstpipeline.c: (gst_pipeline_class_init),
14817 (gst_pipeline_send_event):
14818 Half hack, half utility: set a pipeline to PAUSED for seek events,
14819 since that is the only way we can guarantee a/v sync. Means that
14820 you can do gst_element_seek (pipeline, method, pos); on a pipeline
14821 and it "just works".
14823 2005-03-25 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14825 * gst/gstpipeline.c: (gst_pipeline_use_clock):
14826 Lock/unlock mismatch.
14828 2005-03-25 Thomas Vander Stichele <thomas at apestaart dot org>
14830 * docs/faq/gst-uninstalled:
14831 add gst-plugins-base
14832 * docs/gst/Makefile.am:
14833 don't error out until docs are fixed
14834 * docs/gst/gstreamer.types:
14837 2005-03-22 Wim Taymans <wim@fluendo.com>
14839 * check/Makefile.am:
14840 * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
14841 * gst/gststructure.c: (gst_structure_set_valist),
14842 (gst_structure_copy_conditional):
14843 Activated more tests.
14844 Added message test.
14845 Added G_TYPE_POINTER to GstStructure.
14848 2005-03-22 Wim Taymans <wim@fluendo.com>
14850 * docs/design/part-TODO.txt:
14851 * docs/design/part-events.txt:
14852 * docs/design/part-gstbin.txt:
14853 * docs/design/part-gstbus.txt:
14854 * docs/design/part-gstpipeline.txt:
14855 * docs/design/part-messages.txt:
14857 * gst/gstmessage.c:
14860 2005-03-21 Wim Taymans <wim@fluendo.com>
14862 * gst/gstbus.c: (gst_bus_post):
14863 Fix copy-and-paste error.
14865 2005-03-21 Wim Taymans <wim@fluendo.com>
14867 * check/Makefile.am:
14869 * gst/elements/Makefile.am:
14870 * gst/elements/gstelements.c:
14871 * gst/elements/gstfakesink.c: (gst_fakesink_init),
14872 (gst_fakesink_event), (gst_fakesink_chain):
14873 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
14874 (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
14875 (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
14876 (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
14877 (gst_fakesrc_set_property), (gst_fakesrc_get_property),
14878 (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
14879 (gst_fakesrc_loop), (gst_fakesrc_activate),
14880 (gst_fakesrc_change_state):
14881 * gst/elements/gstfakesrc.h:
14882 * gst/elements/gstfilesrc.c: (gst_filesrc_init),
14883 (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
14884 (gst_filesrc_open_file), (gst_filesrc_loop),
14885 (gst_filesrc_activate), (gst_filesrc_change_state),
14886 (filesrc_find_peek), (filesrc_find_suggest),
14887 (gst_filesrc_type_find):
14888 * gst/elements/gstidentity.c: (gst_identity_finalize),
14889 (gst_identity_class_init), (gst_identity_init),
14890 (gst_identity_proxy_getcaps), (identity_queue_push),
14891 (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
14892 (gst_identity_getrange), (gst_identity_chain),
14893 (gst_identity_sink_loop), (gst_identity_src_loop),
14894 (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
14895 (gst_identity_set_property), (gst_identity_get_property),
14896 (gst_identity_change_state):
14897 * gst/elements/gstidentity.h:
14898 * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
14899 (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
14900 (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
14901 (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
14902 (gst_tee_sink_activate):
14903 * gst/elements/gsttee.h:
14904 * gst/gst.c: (gst_register_core_elements), (init_post):
14906 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
14907 (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
14908 (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
14909 (gst_bin_change_state):
14911 * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
14912 (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
14913 (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
14914 (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
14915 (gst_bus_set_sync_handler), (gst_bus_create_watch),
14916 (bus_watch_callback), (bus_watch_destroy),
14917 (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
14918 (poll_timeout), (gst_bus_poll):
14922 * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
14923 (gst_element_post_message), (gst_element_message_full),
14924 (gst_element_get_state_func), (gst_element_get_state),
14925 (gst_element_abort_state), (gst_element_commit_state),
14926 (gst_element_lost_state), (gst_element_set_state),
14927 (gst_element_pads_activate), (gst_element_change_state),
14928 (gst_element_dispose), (gst_element_set_manager_func),
14929 (gst_element_set_bus_func), (gst_element_set_scheduler_func),
14930 (gst_element_set_manager), (gst_element_get_manager),
14931 (gst_element_set_bus), (gst_element_get_bus),
14932 (gst_element_set_scheduler), (gst_element_get_scheduler):
14933 * gst/gstelement.h:
14934 * gst/gstevent.c: (gst_event_new_segment_seek),
14935 (gst_event_new_flush):
14937 * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
14938 (_gst_message_free), (gst_message_get_type), (gst_message_new),
14939 (gst_message_new_eos), (gst_message_new_error),
14940 (gst_message_new_warning), (gst_message_new_tag),
14941 (gst_message_new_state_changed), (gst_message_new_application),
14942 (gst_message_get_structure), (gst_message_parse_tag),
14943 (gst_message_parse_state_changed), (gst_message_parse_error),
14944 (gst_message_parse_warning):
14945 * gst/gstmessage.h:
14946 * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
14947 (gst_real_pad_set_property), (gst_pad_set_active),
14948 (gst_pad_is_active), (gst_pad_set_blocked_async),
14949 (gst_pad_set_blocked), (gst_pad_is_blocked),
14950 (gst_pad_set_activate_function), (gst_pad_set_loop_function),
14951 (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
14952 (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
14953 (gst_pad_unlink), (gst_pad_link_prepare_filtered),
14954 (gst_pad_link_filtered), (gst_pad_relink_filtered),
14955 (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
14956 (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
14957 (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
14958 (gst_pad_set_caps), (gst_pad_configure_sink),
14959 (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
14960 (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
14961 (gst_real_pad_dispose), (gst_real_pad_finalize),
14962 (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
14963 (gst_pad_event_default_dispatch), (gst_pad_event_default),
14964 (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
14966 * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
14967 (pipeline_bus_handler), (gst_pipeline_change_state),
14968 (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
14969 * gst/gstpipeline.h:
14971 * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
14972 (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
14973 (gst_queue_link_src), (gst_queue_bufferalloc),
14974 (gst_queue_locked_flush), (gst_queue_handle_sink_event),
14975 (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
14976 (gst_queue_loop), (gst_queue_handle_src_event),
14977 (gst_queue_handle_src_query), (gst_queue_src_activate),
14978 (gst_queue_change_state):
14980 * gst/gstscheduler.c: (gst_scheduler_init),
14981 (gst_scheduler_dispose), (gst_scheduler_create_task),
14982 (gst_scheduler_factory_create):
14983 * gst/gstscheduler.h:
14984 * gst/gststructure.c: (gst_structure_get_type),
14985 (gst_structure_copy_conditional):
14986 * gst/gststructure.h:
14987 * gst/gsttaginterface.h:
14988 * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
14989 (gst_task_init), (gst_task_dispose), (gst_task_create),
14990 (gst_task_get_state), (gst_task_start), (gst_task_stop),
14996 * gst/schedulers/Makefile.am:
14997 * gst/schedulers/cothreads_compat.h:
14998 * gst/schedulers/entryscheduler.c:
14999 * gst/schedulers/faircothreads.c:
15000 * gst/schedulers/faircothreads.h:
15001 * gst/schedulers/fairscheduler.c:
15002 * gst/schedulers/gstbasicscheduler.c:
15003 * gst/schedulers/gstoptimalscheduler.c:
15004 * gst/schedulers/gthread-cothreads.h:
15005 * gst/schedulers/threadscheduler.c:
15006 (gst_thread_scheduler_task_get_type),
15007 (gst_thread_scheduler_task_class_init),
15008 (gst_thread_scheduler_task_init),
15009 (gst_thread_scheduler_task_start),
15010 (gst_thread_scheduler_task_stop),
15011 (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
15012 (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
15013 (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
15014 (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
15016 * libs/gst/Makefile.am:
15017 * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
15018 * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
15019 (gst_file_pad_parent_set):
15020 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
15021 (gst_dp_event_from_packet):
15022 * tests/complexity.c: (main):
15023 * tests/mass_elements.c: (main):
15024 * testsuite/states/locked.c: (message_received), (main):
15025 * testsuite/states/parent.c: (main):
15026 * tools/gst-inspect.c: (print_element_flag_info),
15027 (print_implementation_info), (print_pad_info):
15028 * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
15030 * tools/gst-md5sum.c: (event_loop), (main):
15031 * tools/gst-typefind.c: (main):
15032 * tools/gst-xmlinspect.c: (print_element_info):
15034 Added GstBus for mainloop integration.
15035 Added GstMessage for sending notifications on the bus.
15036 Added GstTask as an abstraction for pipeline entry points.
15038 Removed Schedulers.
15039 Simplified GstQueue for multithreaded core.
15040 Made _link threadsafe, removed old capsnego.
15041 Added STREAM_LOCK and PREROLL_LOCK in GstPad.
15042 Added pad blocking functions.
15043 Reworked scheduling functions in GstPad to prepare for
15044 scheduling updates soon.
15045 Moved events out of data stream.
15046 Simplified GstEvent types.
15047 Added return values to push/pull.
15048 Removed clocking from GstElement.
15049 Added prototypes for state change function for next merge.
15050 Removed iterate from bins and state change management.
15051 Fixed some elements, disabled others for now.
15052 Fixed -inspect and -launch.
15053 Added check for GstBus.
15055 2005-03-10 Wim Taymans <wim@fluendo.com>
15057 * docs/design/part-MT-refcounting.txt:
15058 * docs/design/part-clocks.txt:
15059 * docs/design/part-gstelement.txt:
15060 * docs/design/part-gstobject.txt:
15061 * docs/design/part-standards.txt:
15062 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
15063 (gst_bin_remove_func), (gst_bin_remove):
15067 * testsuite/clock/clock1.c: (main):
15068 * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
15070 * testsuite/dlopen/loadgst.c: (do_test):
15071 * testsuite/refcounting/bin.c: (add_remove_test1),
15072 (add_remove_test2), (main):
15073 * testsuite/refcounting/element.c: (main):
15074 * testsuite/refcounting/element_pad.c: (main):
15075 * testsuite/refcounting/pad.c: (main):
15076 * tools/gst-launch.c: (sigint_handler_sighandler):
15077 * tools/gst-typefind.c: (main):
15079 Added doc about clock.
15080 removed gst_bin_iterate_recurse_up(), marked methods
15082 Fix more testsuites.
15084 2005-03-09 Wim Taymans <wim@fluendo.com>
15086 * gst/gstpad.c: (gst_pad_get_direction),
15087 (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
15088 (gst_pad_collect_valist):
15089 * testsuite/bins/interface.c: (main):
15090 * testsuite/caps/audioscale.c: (test_caps):
15091 * testsuite/caps/caps.c: (test1), (test2), (test3):
15092 * testsuite/caps/deserialize.c: (main):
15093 * testsuite/caps/enumcaps.c: (main):
15094 * testsuite/caps/filtercaps.c: (main):
15095 * testsuite/caps/intersect2.c: (main):
15096 * testsuite/caps/random.c: (main):
15097 * testsuite/caps/renegotiate.c: (my_fixate), (main):
15098 * testsuite/caps/sets.c: (check_caps):
15099 * testsuite/caps/simplify.c: (check_caps), (main):
15100 * testsuite/caps/subtract.c: (check_caps):
15101 Fix _pad_get_direction wrt ghostpads.
15102 Fix caps testsuite.
15104 2005-03-09 Wim Taymans <wim@fluendo.com>
15106 * check/Makefile.am:
15107 * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
15108 * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
15109 (ok_callback), (error_callback), (gst_systemclock_suite), (main):
15110 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
15111 (gst_bin_set_clock_func), (gst_bin_get_clock_func),
15112 (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
15113 (gst_bin_remove), (gst_bin_iterate_recurse_up),
15114 (bin_element_is_sink), (gst_bin_iterate_sinks),
15115 (gst_bin_iterate_all_by_interface):
15117 * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
15118 (gst_element_change_state), (gst_element_dispose),
15119 (gst_element_finalize), (gst_element_set_loop_function):
15120 * gst/gstelement.h:
15121 * gst/gstiterator.c: (find_custom_fold_func):
15122 * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
15123 (gst_pad_collectv), (gst_pad_collect_valist),
15124 (gst_pad_template_new):
15125 * gst/gstpipeline.c: (gst_pipeline_class_init),
15126 (gst_pipeline_dispose), (gst_pipeline_set_property),
15127 (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
15128 (gst_pipeline_get_clock), (gst_pipeline_use_clock),
15129 (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
15131 * gst/schedulers/entryscheduler.c:
15132 * gst/schedulers/gstbasicscheduler.c:
15133 (gst_basic_scheduler_cothreaded_chain),
15134 (gst_basic_scheduler_chain_add_element):
15135 * testsuite/bins/interface.c: (main):
15137 Added GstSystemClock test.
15138 Implemented clock distribution code in GstBin.
15139 Implemented iterate sinks method for future use.
15140 Rearranged gstelement.h
15141 Fix GstIterator comparison bug.
15142 Moved some code to GstPipeline, mostly clocking related.
15144 2005-03-09 Wim Taymans <wim@fluendo.com>
15147 * gst/gst_private.h:
15148 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
15149 (gst_bin_remove_func), (gst_bin_remove),
15150 (gst_bin_get_by_name_recurse_up):
15151 * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
15152 (gst_clock_id_compare_func), (gst_clock_id_wait),
15153 (gst_clock_id_wait_async), (gst_clock_init),
15154 (gst_clock_adjust_unlocked), (gst_clock_get_time):
15155 * gst/gstelement.h:
15156 * gst/gstinfo.c: (_gst_debug_init):
15158 * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
15159 (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
15161 Bump version number, we're now 0.9.0
15162 Add future debugging category.
15163 Fix NULL _unref() in _get_by_name_recurse_up
15164 Rearrange gstpad.h.
15167 2005-03-08 Wim Taymans <wim@fluendo.com>
15169 * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
15170 * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
15171 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
15172 * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
15173 * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
15174 * gst/elements/gstfilesink.c: (gst_filesink_class_init):
15175 * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
15176 * gst/elements/gstidentity.c: (gst_identity_class_init):
15177 * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
15178 * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
15179 * gst/elements/gstshaper.c: (gst_shaper_class_init):
15180 * gst/elements/gststatistics.c: (gst_statistics_class_init):
15181 * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
15183 * gst/gstelement.c: (gst_element_class_init),
15184 (gst_element_base_class_init), (gst_element_init),
15185 (gst_element_get_random_pad), (gst_element_wait_state_change),
15186 (gst_element_change_state), (gst_element_dispose),
15187 (gst_element_finalize), (gst_element_set_loop_function):
15188 * gst/gstelement.h:
15189 * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
15190 * gst/gstthread.c: (gst_thread_class_init),
15191 (gst_thread_release_children_locks), (gst_thread_change_state):
15192 * gst/schedulers/gstbasicscheduler.c:
15193 (gst_basic_scheduler_loopfunc_wrapper),
15194 (gst_basic_scheduler_chain_wrapper),
15195 (gst_basic_scheduler_src_wrapper),
15196 (gst_basic_scheduler_remove_element):
15197 * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
15198 Remove threadsafe properties. Fix elements because GObject
15199 complains when installing a property before declaring a
15200 set/get_property handler.
15201 Rearrange gstelement.h file, use STATE macros for state locks.
15202 Free mutexes in the finalize method instead of dispose.
15204 2005-03-08 Wim Taymans <wim@fluendo.com>
15206 * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
15207 * gst/gstthread.c: (gst_thread_release_children_locks):
15208 Added parentage check.
15209 Fix build og GstThread again.
15211 2005-03-08 Wim Taymans <wim@fluendo.com>
15213 * docs/design/part-MT-refcounting.txt:
15214 * docs/design/part-conventions.txt:
15215 * docs/design/part-gstobject.txt:
15216 * docs/design/part-relations.txt:
15217 * docs/design/part-standards.txt:
15218 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
15219 (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
15220 (gst_bin_get_by_name), (gst_bin_get_by_interface),
15221 (gst_bin_iterate_all_by_interface):
15224 * gst/gstelement.c: (gst_element_class_init),
15225 (gst_element_change_state), (gst_element_set_loop_function):
15226 * gst/gstelement.h:
15227 * gst/gstiterator.c:
15228 * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
15229 (gst_object_unref), (gst_object_sink), (gst_object_dispose),
15230 (gst_object_dispatch_properties_changed), (gst_object_set_name),
15231 (gst_object_set_parent), (gst_object_unparent),
15232 (gst_object_check_uniqueness):
15234 Docs updates, clean up some headers.
15236 2005-03-07 Wim Taymans <wim@fluendo.com>
15238 * check/.cvsignore:
15239 * check/Makefile.am:
15240 * check/gst-libs/.cvsignore:
15241 * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
15242 * check/gst/.cvsignore:
15243 * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
15244 (START_TEST), (gstbus_suite), (main):
15245 * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
15246 * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
15247 (gst_data_suite), (main):
15248 * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
15249 (add_fold_func), (gstiterator_suite), (main):
15250 * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
15251 (thread_name_object), (thread_name_object_default),
15252 (gst_object_name_compare), (gst_object_suite), (main):
15253 * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
15254 (gst_pad_suite), (main):
15255 * check/gstcheck.c: (gst_check_log_message_func),
15256 (gst_check_log_critical_func), (gst_check_init):
15257 * check/gstcheck.h:
15258 * check/pipelines/simple_launch_lines.c: (setup_pipeline),
15259 (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
15262 2005-03-07 Wim Taymans <wim@fluendo.com>
15264 * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
15265 (gst_list_iterator_next), (gst_list_iterator_resync),
15266 (gst_list_iterator_free), (gst_iterator_new_list),
15267 (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
15268 (gst_iterator_free), (gst_iterator_push), (filter_next),
15269 (filter_resync), (filter_uninit), (filter_free),
15270 (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
15271 (gst_iterator_foreach), (find_custom_fold_func),
15272 (gst_iterator_find_custom):
15273 * gst/gstiterator.h:
15274 Added missing files.
15276 2005-03-07 Wim Taymans <wim@fluendo.com>
15280 * docs/design/part-MT-refcounting.txt:
15281 * docs/design/part-conventions.txt:
15282 * docs/design/part-gstobject.txt:
15283 * docs/design/part-relations.txt:
15284 * examples/mixer/mixer.c: (main):
15285 * examples/thread/thread.c: (eos), (main):
15287 * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
15288 * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
15289 (gst_spider_plug_from_srcpad):
15290 * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
15291 (gst_spider_identity_change_state),
15292 (gst_spider_identity_sink_loop_type_finding):
15293 * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
15294 * gst/elements/gstidentity.c: (gst_identity_init):
15295 * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
15296 (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
15297 * gst/elements/gsttypefindelement.c: (free_entry):
15300 * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
15301 (gst_bin_set_clock_func), (gst_bin_auto_clock),
15302 (gst_bin_set_index), (gst_bin_set_element_sched),
15303 (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
15304 (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
15305 (gst_bin_iterate_elements), (iterate_child_recurse),
15306 (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
15307 (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
15308 (compare_interface), (gst_bin_get_by_interface),
15309 (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
15311 * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
15312 (gst_buffer_default_free), (gst_buffer_default_copy),
15313 (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
15314 (gst_buffer_create_sub):
15316 * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
15317 (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
15318 (gst_caps_unref), (gst_static_caps_get),
15319 (gst_caps_remove_and_get_structure), (gst_caps_append),
15320 (gst_caps_append_structure), (gst_caps_remove_structure),
15321 (gst_caps_copy_nth), (gst_caps_set_simple),
15322 (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
15323 (gst_structure_is_equal_foreach), (gst_caps_is_subset),
15324 (gst_caps_structure_intersect_field), (gst_caps_intersect),
15325 (gst_caps_structure_subtract_field), (gst_caps_subtract),
15326 (gst_caps_normalize_foreach), (gst_caps_compare_structures),
15327 (gst_caps_structure_figure_out_union),
15328 (gst_caps_switch_structures), (gst_caps_do_simplify),
15329 (gst_caps_replace), (gst_caps_from_string),
15330 (gst_caps_copy_conditional):
15332 * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
15333 (_gst_clock_id_free), (gst_clock_id_unref),
15334 (gst_clock_id_compare_func), (gst_clock_id_wait),
15335 (gst_clock_id_wait_async), (gst_clock_class_init),
15336 (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
15337 (gst_clock_get_time), (gst_clock_set_time_adjust),
15338 (gst_clock_set_property), (gst_clock_get_property):
15341 * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
15342 * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
15344 * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
15345 (gst_element_requires_clock), (gst_element_provides_clock),
15346 (gst_element_set_clock), (gst_element_clock_wait),
15347 (gst_element_wait), (gst_element_set_time_delay),
15348 (gst_element_is_indexable), (gst_element_add_pad),
15349 (gst_element_add_ghost_pad), (gst_element_remove_pad),
15350 (pad_compare_name), (gst_element_get_static_pad),
15351 (gst_element_request_pad), (gst_element_get_request_pad),
15352 (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
15353 (gst_element_class_get_pad_template_list),
15354 (gst_element_class_get_pad_template), (gst_element_error_func),
15355 (gst_element_get_random_pad), (gst_element_get_event_masks),
15356 (gst_element_send_event), (gst_element_seek),
15357 (gst_element_get_query_types), (gst_element_query),
15358 (gst_element_get_formats), (gst_element_convert),
15359 (gst_element_is_locked_state), (gst_element_set_locked_state),
15360 (gst_element_sync_state_with_parent), (gst_element_change_state),
15361 (gst_element_finalize), (gst_element_yield),
15362 (gst_element_interrupt), (gst_element_set_scheduler),
15363 (gst_element_get_scheduler), (gst_element_set_loop_function):
15364 * gst/gstelement.h:
15366 * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
15367 (gst_format_get_by_nick), (gst_format_get_details),
15368 (gst_format_iterate_definitions):
15370 * gst/gstindex.c: (gst_index_gtype_resolver):
15373 * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
15374 (gst_mem_chunk_free):
15375 * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
15376 (gst_object_ref), (gst_object_unref), (gst_object_sink),
15377 (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
15378 (gst_object_dispatch_properties_changed),
15379 (gst_object_set_name_default), (gst_object_set_name),
15380 (gst_object_get_name), (gst_object_set_name_prefix),
15381 (gst_object_get_name_prefix), (gst_object_set_parent),
15382 (gst_object_get_parent), (gst_object_unparent),
15383 (gst_object_check_uniqueness), (gst_object_save_thyself),
15384 (gst_object_restore_thyself), (gst_object_real_restore_thyself),
15385 (gst_object_set_property), (gst_object_get_property),
15386 (gst_object_get_path_string):
15388 * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
15389 (gst_real_pad_init), (gst_real_pad_get_property),
15390 (gst_pad_custom_new), (gst_pad_get_direction),
15391 (gst_pad_set_active), (gst_pad_is_active),
15392 (gst_pad_set_event_function), (gst_pad_is_linked),
15393 (gst_pad_link_free), (gst_pad_link_intersect),
15394 (gst_pad_link_fixate), (gst_pad_set_caps),
15395 (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
15396 (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
15397 (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
15398 (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
15399 (gst_pad_get_caps), (gst_pad_peer_get_caps),
15400 (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
15401 (gst_pad_realize), (gst_pad_get_allowed_caps),
15402 (gst_real_pad_dispose), (gst_real_pad_finalize),
15403 (gst_pad_collectv), (gst_pad_collect_valist),
15404 (gst_pad_template_dispose), (gst_pad_template_new),
15405 (gst_pad_get_internal_links):
15407 * gst/gstpipeline.c: (gst_pipeline_dispose),
15408 (gst_pipeline_change_state):
15409 * gst/gstpipeline.h:
15411 * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
15412 (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
15413 * gst/gstpluginfeature.h:
15414 * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
15415 * gst/gstquery.c: (_gst_query_type_initialize),
15416 (gst_query_type_register), (gst_query_type_get_by_nick),
15417 (gst_query_type_get_details), (gst_query_type_iterate_definitions):
15419 * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
15420 * gst/gstscheduler.c: (gst_scheduler_add_element),
15421 (gst_scheduler_factory_create):
15422 * gst/gststructure.c: (gst_structure_set_parent_refcount),
15423 (gst_structure_free), (gst_structure_set_name),
15424 (gst_structure_id_set_value), (gst_structure_set_value),
15425 (gst_structure_set_valist), (gst_structure_remove_field),
15426 (gst_structure_remove_fields),
15427 (gst_structure_remove_fields_valist),
15428 (gst_structure_remove_all_fields), (gst_structure_foreach),
15429 (gst_structure_map_in_place),
15430 (gst_caps_structure_fixate_field_nearest_int),
15431 (gst_caps_structure_fixate_field_nearest_double):
15432 * gst/gststructure.h:
15433 * gst/gstsystemclock.c: (gst_system_clock_class_init),
15434 (gst_system_clock_init), (gst_system_clock_dispose),
15435 (gst_system_clock_async_thread),
15436 (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
15437 (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
15438 * gst/gstsystemclock.h:
15439 * gst/gsttag.c: (gst_tag_list_add_value_internal),
15440 (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
15441 * gst/gsttaginterface.c:
15442 * gst/gstthread.c: (gst_thread_dispose),
15443 (gst_thread_release_children_locks), (gst_thread_change_state),
15444 (gst_thread_main_loop):
15445 * gst/gsttrashstack.h:
15446 * gst/gsttypefind.c: (gst_type_find_factory_dispose):
15448 * gst/gstutils.c: (gst_element_get_compatible_pad_template),
15449 (gst_element_request_pad), (gst_element_get_pad_from_template),
15450 (gst_element_request_compatible_pad),
15451 (gst_element_get_compatible_pad_filtered),
15452 (gst_element_get_compatible_pad), (gst_element_state_get_name),
15453 (gst_element_link_pads_filtered), (gst_element_link_filtered),
15454 (gst_element_link_many), (gst_element_link),
15455 (gst_element_link_pads), (gst_element_unlink_pads),
15456 (gst_element_unlink_many), (gst_element_unlink),
15457 (gst_pad_can_link_filtered), (gst_pad_can_link),
15458 (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
15459 (gst_object_default_error), (gst_bin_add_many),
15460 (gst_bin_remove_many), (gst_element_populate_std_props),
15461 (gst_element_class_install_std_props), (gst_buffer_merge),
15462 (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
15463 (link_fold_func), (gst_pad_proxy_setcaps):
15465 * gst/gstvalue.c: (gst_value_deserialize_string):
15466 * gst/parse/grammar.y:
15467 * gst/schedulers/gstbasicscheduler.c:
15468 (gst_basic_scheduler_cothreaded_chain),
15469 (gst_basic_scheduler_chain_recursive_add),
15470 (gst_basic_scheduler_pad_link):
15471 * gst/schedulers/gstoptimalscheduler.c:
15472 (get_group_schedule_function),
15473 (gst_opt_scheduler_state_transition),
15474 (gst_opt_scheduler_add_element), (element_get_reachables_func):
15475 * libs/gst/bytestream/bytestream.c:
15476 * libs/gst/dataprotocol/dataprotocol.c:
15477 (gst_dp_header_from_buffer):
15480 * tests/threadstate/threadstate2.c: (eos):
15481 * tools/gst-compprep.c: (main):
15482 * tools/gst-inspect.c: (print_field), (print_element_flag_info),
15483 (print_pad_info), (print_children_info):
15484 * tools/gst-launch.c: (idle_func), (main):
15485 * tools/gst-md5sum.c: (idle_func), (main):
15486 * tools/gst-xmlinspect.c: (print_element_info):
15487 First THREADED backport attempt, focusing on adding locks and
15488 making sure the API is threadsafe. Needs more work. More docs
15491 2005-02-24 Andy Wingo <wingo@pobox.com>
15493 * tests/bench-complexity.scm:
15494 * tests/complexity.gnuplot: New files, good for running complexity
15497 * tests/Makefile.am:
15498 * tests/complexity.c: New test, sets up N elements, at each level
15499 teeing into M streams per element. Eeeenteresting.
15501 * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
15502 benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
15503 running bench-mass_elements.scm.
15505 * tests/bench-mass_elements.scm: New script, runs mass_elements
15506 for various numbers of identities, outputting the results to a
15507 file. Requires guile 1.6. Just for testing.
15509 2005-02-23 Thomas Vander Stichele <thomas at apestaart dot org>
15511 * gst/schedulers/fairscheduler.c:
15512 compile with debug disabled
15514 2005-02-22 Thomas Vander Stichele <thomas at apestaart dot org>
15517 hunting season on 0.9 is now OPEN