1 2007-03-08 Wim Taymans <wim@fluendo.com>
3 * tools/gst-launch.c: (event_loop):
6 2007-03-08 Wim Taymans <wim@fluendo.com>
8 * libs/gst/base/gstbasetransform.c:
9 (gst_base_transform_sink_eventfunc),
10 (gst_base_transform_handle_buffer), (gst_base_transform_chain),
11 (gst_base_transform_activate):
12 * libs/gst/base/gstbasetransform.h:
13 Add support for dropping buffers with custom GstFlowReturn.
14 Set DISCONT flags on outgoing buffers based on QoS, incomming DISCONT
15 buffers or dropped buffers.
17 * docs/libs/gstreamer-libs-sections.txt:
18 docs for new custom return code.
20 * plugins/elements/gstidentity.c: (gst_identity_transform_ip):
21 Use drop support in base class to implement drop-probability.
23 2007-03-07 Tim-Philipp Müller <tim at centricular dot net>
25 * gst/gst.c: (load_plugin_func):
26 * gst/gstplugin.c: (gst_plugin_load_by_name), (gst_plugin_load):
27 * gst/gstregistrybinary.c: (gst_registry_binary_read_cache):
28 * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
29 Remove newlines at end of debug log strings.
31 2007-03-07 Zaheer Abbas Merali <zaheerabbas at merali dot org>
33 * plugins/elements/gstidentity.c: (gst_identity_check_perfect):
34 Only post bus message at max, once per buffer received.
36 2007-03-07 Wim Taymans <wim@fluendo.com>
38 * docs/design/Makefile.am:
39 * docs/design/part-synchronisation.txt:
40 Add doc about synchronisation
42 * docs/design/draft-latency.txt:
43 * docs/design/part-TODO.txt:
44 * docs/design/part-clocks.txt:
45 * docs/design/part-events.txt:
46 * docs/design/part-gstbus.txt:
47 * docs/design/part-gstpipeline.txt:
48 * docs/design/part-live-source.txt:
49 * docs/design/part-messages.txt:
50 * docs/design/part-overview.txt:
51 * docs/design/part-streams.txt:
52 * docs/design/part-trickmodes.txt:
53 Documentation updates.
55 2007-03-07 Jan Schmidt <thaytan@mad.scientist.com>
60 2007-03-07 Zaheer Abbas Merali <zaheerabbas at merali dot org>
62 * plugins/elements/gstidentity.c: (gst_identity_check_perfect):
63 Rename non-perfect to imperfect for Mike and for the sanctity of the
65 Also make sure bus message gets emitted for data-incontiguities.
67 2007-03-07 Zaheer Abbas Merali <zaheerabbas at merali dot org>
69 * plugins/elements/gstidentity.c: (gst_identity_check_perfect),
71 * plugins/elements/gstidentity.h:
72 Emit bus message if check-perfect is true and we encounter a
73 non-perfect stream between 2 consecutive buffers.
76 2007-03-07 Jan Schmidt <thaytan@mad.scientist.com>
81 === release 0.10.12 ===
83 2007-03-07 Jan Schmidt <thaytan@mad.scientist.com>
86 releasing 0.10.12, "Inevitable Demise"
88 2007-03-01 Jan Schmidt <thaytan@mad.scientist.com>
91 Version 0.10.11.2 (0.10.12 pre-release)
92 Bump libtool versioning.
94 2007-03-01 Stefan Kost <ensonic@users.sf.net>
96 * libs/gst/base/gstbasesrc.c: (gst_base_src_loop):
97 Log flow-names and not numbers.
99 2007-02-28 Thomas Vander Stichele <thomas at apestaart dot org>
102 Convert to new AG_GST style.
104 2007-02-28 Wim Taymans <wim@fluendo.com>
106 * libs/gst/base/gstbasesink.c: (gst_base_sink_query_latency):
107 Don't unref query twice.
109 2007-02-28 Wim Taymans <wim@fluendo.com>
111 * gst/gstvalue.c: (gst_value_transform_object_string),
112 (_gst_value_initialize):
113 Implement GstObject -> string transform so we print object names
114 when serializing GValues containing GstObjects.
116 2007-02-28 Wim Taymans <wim@fluendo.com>
118 * docs/gst/gstreamer-sections.txt:
119 Add new stuff to docs.
121 2007-02-28 Wim Taymans <wim@fluendo.com>
123 * libs/gst/base/gstbasesink.c: (gst_base_sink_query_latency),
124 (gst_base_sink_queue_object_unlocked), (gst_base_sink_send_event),
125 (gst_base_sink_change_state):
126 Improve latency query code.
127 Don't leak latency events.
129 * tests/check/gst/gstbin.c: (GST_START_TEST):
132 2007-02-28 Wim Taymans <wim@fluendo.com>
134 * gst/gstelement.c: (gst_element_message_full),
135 (gst_element_get_state_func):
137 Improve docs a little. Added Since: for new macro.
139 * gst/gstobject.c: (gst_object_sink):
140 * gst/gstpipeline.c: (gst_pipeline_change_state),
141 (gst_pipeline_set_new_stream_time):
143 Improve debugging and docs.
145 * gst/gstutils.c: (gst_element_state_change_return_get_name):
148 2007-02-28 Wim Taymans <wim@fluendo.com>
150 * gst/gstelement.c: (gst_element_message_full),
151 (gst_element_set_locked_state), (gst_element_get_state_func),
152 (gst_element_change_state):
153 Handle INFO messages from the GST_ELEMENT_INFO macro as well.
154 Documentation updates.
157 * gst/gstmessage.c: (gst_message_new_info),
158 (gst_message_parse_info):
160 API: gst_message_new_info()
161 API: gst_message_parse_info()
162 Add INFO message create and parse code.
164 2007-02-28 Wim Taymans <wim@fluendo.com>
166 * gst/gstbin.c: (bin_query_min_max_init), (bin_query_latency_fold),
167 (bin_query_latency_done):
168 Also report the live parameter of a latency query.
170 2007-02-28 Thomas Vander Stichele <thomas at apestaart dot org>
172 * tests/check/generic/states.c: (GST_START_TEST), (states_suite):
173 Copy the current generic/states example from -base and adapt so
174 we can use the exact same code everywhere.
175 Check a STATES_IGNORE_ELEMENTS env var which can be used
176 to ignore certain element factories for this test, which is
177 what is being done in -base
178 * tests/check/Makefile.am:
179 Mention this environment variable.
181 2007-02-27 Wim Taymans <wim@fluendo.com>
183 * docs/gst/gstreamer-sections.txt:
184 * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
185 (gst_bus_timed_pop), (gst_bus_pop):
187 API: gst_bus_timed_pop()
188 Implement gst_bus_timed_pop() to do a blocking timed wait for a
189 message to arrive on the bus.
191 * tests/check/gst/gstbus.c: (GST_START_TEST), (pop_thread),
193 Two unit tests for new _timed_pop() function.
195 2007-02-23 Wim Taymans <wim@fluendo.com>
197 * gst/gstpipeline.c: (gst_pipeline_change_state),
198 (gst_pipeline_provide_clock_func), (gst_pipeline_set_delay):
199 Don't ref a NULL clock in _provide_clock_func().
200 Don't allow an INVALID delay.
201 Don't try to calculate base_time with an invalid start_time.
202 Also distribute and notify a NULL clock when it was selected.
204 * tools/gst-launch.c: (event_loop):
205 Don't crash when a NULL clock was selected in the pipeline.
207 2007-02-23 Tim-Philipp Müller <tim at centricular dot net>
209 * docs/design/Makefile.am:
210 * docs/design/draft-missing-plugins.txt:
211 * docs/random/draft-missing-plugins.txt:
212 Some small updates: update plugin system identifier prefix
213 ('gstreamer.net' to 'gstreamer'), mention our new install
214 API in libgstbaseutils rather than libgimme-codec, add
215 reference to the online docs.
217 2007-02-21 Thomas Vander Stichele <thomas at apestaart dot org>
219 * win32/common/config.h:
220 Pretty sure Bill never made a powerpc version. Powerpc hackers,
221 use moap cl ci to only check in what is mentioned in the ChangeLog.
223 2007-02-21 Thomas Vander Stichele <thomas at apestaart dot org>
225 * docs/gst/gstreamer-sections.txt:
227 Fix up documentation to link to the correct GstGError section.
228 Add GST_ELEMENT_INFO macro since someone else added a Info message.
230 2007-02-21 Thomas Vander Stichele <thomas at apestaart dot org>
232 * tools/gst-launch.c: (event_loop):
233 Make sure that we actually show the important message part of a
235 No need to check if the gerror is not NULL to free; first of all
236 g_free accepts NULL; and second the default error handler would
237 segfault if gerror was NULL.
239 2007-02-21 Wim Taymans <wim@fluendo.com>
241 * docs/gst/gstreamer-sections.txt:
242 Removed docs as well.
244 2007-02-21 Wim Taymans <wim@fluendo.com>
246 * gst/gstmessage.c: (gst_message_parse_duration):
248 Remove new messages for release.
250 2007-02-20 Wim Taymans <wim@fluendo.com>
252 * docs/design/part-gstghostpad.txt:
253 * gst/gstghostpad.c: (gst_ghost_pad_dispose),
254 (gst_ghost_pad_new_full):
255 Make the ghostpad a parent of the internal pad again for better backward
256 compatibility. Don't write code that relies on this however.
258 * gst/gstpad.c: (gst_pad_activate_pull), (gst_pad_activate_push),
259 (gst_pad_link_check_hierarchy):
260 Require that parents should be GstElements in the hierarchy check.
262 2007-02-20 Wim Taymans <wim@fluendo.com>
264 * gst/gstbin.c: (bin_replace_message), (gst_bin_add_func),
265 (gst_bin_change_state_func), (bin_query_min_max_init),
266 (bin_query_latency_fold), (bin_query_latency_done),
269 Implement latency query.
271 2007-02-20 Wim Taymans <wim@fluendo.com>
273 * docs/design/part-gstghostpad.txt:
274 * gst/gstghostpad.c: (gst_ghost_pad_class_init),
275 (gst_ghost_pad_internal_do_activate_push),
276 (gst_ghost_pad_internal_do_activate_pull),
277 (gst_ghost_pad_do_activate_push), (gst_ghost_pad_do_activate_pull),
278 (gst_ghost_pad_do_link), (gst_ghost_pad_dispose),
279 (gst_ghost_pad_new_full), (gst_ghost_pad_set_target):
280 Do not set the internal pad as a parent anymore so we can avoid
281 hierarchy linking errors when the ghostpad has no parent yet. This also
282 fixes failed activation because of unlinked internal pads, which in
283 turn fixes the impossible case where you have to activate a pad before
284 you can add it to a running element.
287 * gst/gstpad.c: (pre_activate), (post_activate),
288 (gst_pad_set_active), (gst_pad_activate_pull),
289 (gst_pad_activate_push), (gst_pad_check_pull_range):
290 Add some more debug info.
291 Mark activation mode in pre_activate so that we don't try to activate in
292 endless loops. Fixes #385084.
294 2007-02-19 Wim Taymans <wim@fluendo.com>
296 * libs/gst/base/gstbasetransform.c: (gst_base_transform_init),
297 (gst_base_transform_check_get_range):
298 Implement a checkgetrange function instead of relying on the default
299 core behaviour that assumes we can operate in pull mode if we have a
300 getrange function. First step at fixing #385084.
302 2007-02-15 Stefan Kost <ensonic@users.sf.net>
304 * gst/gstchildproxy.h:
305 * libs/gst/base/gstbasesink.h:
306 * libs/gst/base/gstbasesrc.h:
307 * libs/gst/base/gstbasetransform.h:
308 More docs coverage and some ChangeLog surgery (add missing names)
310 2007-02-15 Wim Taymans <wim@fluendo.com>
312 * docs/design/part-TODO.txt:
313 * docs/design/part-activation.txt:
314 * docs/design/part-block.txt:
315 * docs/design/part-buffering.txt:
316 * docs/design/part-clocks.txt:
317 * docs/design/part-element-source.txt:
318 * docs/design/part-events.txt:
319 * docs/design/part-gstbin.txt:
320 * docs/design/part-gstbus.txt:
321 * docs/design/part-gstpipeline.txt:
322 * docs/design/part-live-source.txt:
323 * docs/design/part-messages.txt:
324 * docs/design/part-overview.txt:
325 * docs/design/part-qos.txt:
326 * docs/design/part-query.txt:
327 * docs/design/part-states.txt:
328 * docs/design/part-trickmodes.txt:
329 Some doc updates. Start renaming from stream_time to running_time where
332 2007-02-15 Wim Taymans <wim@fluendo.com>
334 * libs/gst/base/gstbasesrc.c: (gst_base_src_default_query):
335 Answer LATENCY query.
337 2007-02-15 Wim Taymans <wim@fluendo.com>
339 * tests/check/gst/gstevent.c: (event_probe), (test_event),
343 2007-02-15 Wim Taymans <wim@fluendo.com>
345 * gst/gstpad.c: (gst_pad_get_internal_links_default),
346 (gst_pad_dispatcher):
347 Improve debugging of default pad dispatcher and query functions.
349 2007-02-15 Wim Taymans <wim@fluendo.com>
351 * docs/gst/gstreamer-sections.txt:
352 Remove old unused method.
354 2007-02-13 Wim Taymans <wim@fluendo.com>
356 * tests/check/gst/gstsegment.c: (GST_START_TEST):
359 2007-02-13 Wim Taymans <wim@fluendo.com>
361 * docs/design/part-seeking.txt:
364 * gst/gstsegment.c: (gst_segment_set_seek):
365 Revert old bogus change that should make seeking work again.
367 2007-02-13 Stefan Kost <ensonic@users.sf.net>
369 * docs/random/ensonic/dynlink.txt:
370 * docs/random/ensonic/interfaces.txt:
371 * docs/random/ensonic/receipies.txt:
372 Possible dynamic reconnection api, plus some type fixes the other two
375 2007-02-13 Sebastian Dröge <slomo@circular-chaos.org>
377 * plugins/elements/gstfilesink.c: (gst_file_sink_uri_set_uri):
378 * plugins/elements/gstfilesrc.c: (gst_file_src_uri_set_uri):
379 Also check for an absolute path following file:// in the filesrc
380 element. Remove redundant check and call g_path_is_absolute() on the
383 2007-02-13 Stefan Kost <ensonic@users.sf.net>
385 * docs/design/draft-klass.txt:
386 Add existing category analysis.
389 Fix doc example, framerate is a fraction.
391 2007-02-12 Stefan Kost <ensonic@users.sf.net>
394 * docs/gst/Makefile.am:
395 * docs/libs/Makefile.am:
396 * docs/plugins/Makefile.am:
397 Add crossreferences to glib/gobject docs.
399 2007-02-12 Wim Taymans <wim@fluendo.com>
401 * docs/design/draft-latency.txt:
404 * docs/libs/gstreamer-libs-sections.txt:
405 * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init),
406 (gst_base_sink_get_latency), (gst_base_sink_query_latency),
407 (gst_base_sink_wait_clock), (gst_base_sink_send_qos),
408 (gst_base_sink_perform_qos), (gst_base_sink_queue_object_unlocked),
409 (gst_base_sink_chain_unlocked), (gst_base_sink_send_event),
410 (gst_base_sink_get_position), (gst_base_sink_query),
411 (gst_base_sink_change_state):
412 * libs/gst/base/gstbasesink.h:
413 API: gst_base_sink_query_latency() to let subclasses query the upstream
415 API: gst_base_sink_get_latency() to let subclasses query the configured
417 Implement query and set latency.
419 As spotted by Will Newton <will dot newton at gmail dot com>: Make sure we
420 don't continue preroll when we are flushing. Fixes #405284.
422 * tests/check/pipelines/stress.c: (change_state_timeout),
423 (quit_timeout), (GST_START_TEST), (stress_suite):
426 2007-02-09 Tim-Philipp Müller <tim at centricular dot net>
428 Patch by: René Stadler <mail at renestadler de>
430 * docs/gst/gstreamer-sections.txt:
431 * gst/gsttaglist.c: (_gst_tag_initialize):
433 API: add GST_TAG_REFERENCE_LEVEL (#403597).
435 2007-02-11 Stefan Kost <ensonic@users.sf.net>
437 * docs/libs/Makefile.am:
438 Fix path to core docs.
440 * gst/gstbin.c: (gst_bin_get_by_interface),
441 (gst_bin_iterate_all_by_interface):
442 Refix docs by also renaming 'interface' to 'iface' in implementation.
444 * docs/gst/gstreamer-sections.txt:
446 * gst/gstchildproxy.c: (gst_child_proxy_base_init):
447 * gst/gstchildproxy.h:
448 * gst/gstelementfactory.c:
449 * gst/gstpadtemplate.h:
450 * libs/gst/controller/gstcontroller.c:
451 (gst_controlled_property_new):
454 2007-02-10 Sébastien Moutte <sebastien@moutte.net>
456 * gst/gstbin.h:(gst_bin_get_by_interface),
457 (gst_bin_iterate_all_by_interface):
458 Replace interface parameter name by iface as interface is
459 a reserved keyword in Visual Studio for C++ projects so it removes
460 a build error for application developpers using VS.
461 * plugins/elements/gstfilesrc.c:(gst_file_src_uri_set_uri):
462 Fix a bug on Windows in uri format check. Now the prefix checked
463 is file:// and next we check if the path after file:// is absolute.
464 * win32/common/libgstbase.def:
465 * win32/common/libgstdataprotocol.def:
466 * win32/common/libgstgstreamer.def:
467 Add new exported functions.
469 2007-02-09 Andy Wingo <wingo@pobox.com>
471 * tests/check/pipelines/simple-launch-lines.c
472 (simple_launch_lines_suite, test_tee): Disable tee test until I
473 have time to fix it :-(
475 * tests/check/Makefile.am (noinst_HEADERS):
476 * tests/check/libs/libsabi.c:
477 * tests/check/libs/struct_ppc32.h: Add ABI checks for PPC32.
478 * tests/check/gst/gstabi.c:
479 * tests/check/gst/struct_ppc32.h: Add ABI checks for PPC32.
481 * tests/check/pipelines/simple-launch-lines.c (test_tee): Add
482 tests for push and pull tee behavior.
484 * plugins/elements/gsttee.h:
485 * plugins/elements/gsttee.c: Describe has-sink-loop better, and
486 mark as deprecated as well as unimplemented. It was a crack idea.
487 Add support for tee operating in pull mode, off by default.
489 * gst/gstregistryxml.c (load_feature, load_plugin): Drop some
490 normal-case logs down to LOG, raise errors to WARNING.
491 (gst_registry_xml_read_cache): Don't log before calling a function
494 * gst/gstregistry.c (gst_registry_finalize): Less debug on program
495 exit (registry finalize).
496 (gst_registry_add_plugin, gst_registry_add_feature): No need for a
497 DEBUG log when we emit signals that people don't even have the
498 chance to connect to.
499 (gst_registry_scan_path_level): Less logging in the normal case.
501 2007-02-05 Sebastian Dröge <slomo@circular-chaos.org>
503 Patch by: Michal Benes <michal dot benes at itonis dot tv>
505 * plugins/elements/gstfilesrc.c: (gst_file_src_create_read):
506 Correctly generate EOS for non-seekable files. We don't have a total
507 length for them and would get an unexpected end of file if we only
508 special-cased for regular files. (Fixes: #404569)
510 2007-02-05 Sebastian Dröge <slomo@circular-chaos.org>
512 * tests/check/elements/filesrc.c: (GST_START_TEST),
514 Add unit test for the GstURIHandler interface in filesrc. This also
515 tests the newly added file://localhost/foo/bar support.
517 2007-02-04 Tim-Philipp Müller <tim at centricular dot net>
519 * gst/gstelementfactory.h:
520 The klass string is not a hierarchy. Add reference to the design doc
521 for more information and common types.
523 2007-02-02 Wim Taymans <wim@fluendo.com>
525 * gst/gstquery.c: (gst_query_new_latency):
526 Remove old structure field.
528 2007-02-02 Stefan Kost <ensonic@users.sf.net>
530 * tools/gst-launch.1.in:
531 Give example for network streaming (#351998)
533 2007-02-02 Wim Taymans <wim@fluendo.com>
535 * docs/gst/gstreamer-sections.txt:
536 Add docs for new methods.
538 * gst/gstevent.c: (gst_event_new_latency),
539 (gst_event_parse_latency):
541 Add new LATENCY event to configure latency in a pipeline.
542 API: gst_event_new_latency
543 API: gst_event_parse_latency
545 * gst/gstmessage.c: (gst_message_new_buffering),
546 (gst_message_new_lost_preroll), (gst_message_new_prerolled),
547 (gst_message_new_latency), (gst_message_parse_buffering),
548 (gst_message_parse_lost_preroll):
550 Added messages used in draft-latency.
551 API: gst_message_new_lost_preroll
552 API: gst_message_parse_lost_preroll
553 API: gst_message_new_prerolled
554 API: gst_message_new_latency
556 * gst/gstquery.c: (gst_query_new_latency), (gst_query_set_latency),
557 (gst_query_parse_latency):
559 Implemented new latency query as in design doc.
560 API: gst_query_new_latency
561 API: gst_query_set_latency
562 API: gst_query_parse_latency
564 2007-02-02 Wim Taymans <wim@fluendo.com>
566 * docs/design/draft-latency.txt:
567 Slight redesign to allow for dynamic latency adjustments.
569 * docs/design/part-negotiation.txt:
572 2007-02-02 Sebastian Dröge <slomo@circular-chaos.org>
574 reviewed by: Wim Taymans <wim@fluendo.com>
576 * plugins/elements/gstfilesink.c: (gst_file_sink_uri_set_uri):
577 * plugins/elements/gstfilesrc.c: (gst_file_src_uri_set_uri):
578 Allow file://localhost/foo/bar URLs and correctly fail for every other
579 hostname that one sets. This was gnomevfssrc is linked for those if
580 installed as it can handle it (#403172)
582 2007-02-01 Sebastian Dröge <slomo@circular-chaos.org>
584 reviewed by: Tim-Philipp Müller <tim at centricular dot net>
586 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_finalize),
587 (unref_data), (gst_collect_pads_add_pad_full):
588 * libs/gst/base/gstcollectpads.h:
589 Don't put the previously added destroy notify in the GstCollectData
590 struct as all it's padding is already used and we don't want to break
591 ABI. Instead put in the pad's GObject data for now. This should be
592 cleaned up for 0.11 (#402393).
594 2007-02-01 Sebastian Dröge <slomo@circular-chaos.org>
596 reviewed by: Wim Taymans <wim@fluendo.com>
598 * docs/libs/gstreamer-libs-sections.txt:
599 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_finalize),
600 (unref_data), (gst_collect_pads_add_pad),
601 (gst_collect_pads_add_pad_full):
602 * libs/gst/base/gstcollectpads.h:
603 API: Add function to specify a destroy notification for custom
604 GstCollectData when adding new pads in GstCollectPads (#402393).
606 2007-02-01 Tim-Philipp Müller <tim at centricular dot net>
609 Update Swedish translation (#378255).
611 2007-01-31 Stefan Kost <ensonic@users.sf.net>
613 * docs/design/draft-klass.txt:
614 Fix the previous change, this is a list of categories and not a hierarchy.
616 2007-01-31 Stefan Kost <ensonic@users.sf.net>
618 * docs/design/draft-klass.txt:
619 Add info about how to get a list of used classes.
621 2007-01-30 Tim-Philipp Müller <tim at centricular dot net>
623 * plugins/elements/gsttypefindelement.c:
624 (gst_type_find_element_chain_do_typefinding),
625 (gst_type_find_element_change_state):
626 Don't leak found caps in chain function (no idea why that never
627 showed up as a leak anywhere).
629 2007-01-30 Stefan Kost <ensonic@users.sf.net>
632 Fix and expand GstPluginDesc API docs.
634 2007-01-29 Stefan Kost <ensonic@users.sf.net>
637 * gst/gstelementfactory.c:
638 * gst/gstpadtemplate.h:
641 * libs/gst/controller/gstcontroller.c:
642 (gst_controlled_property_new):
643 * tests/examples/controller/audio-example.c:
646 2007-01-29 Stefan Kost <ensonic@users.sf.net>
649 comment about refining the xml deps
652 comments about moving away from jade for docs
655 recommit the ifdefs to use the binary registry
657 * gst/gstbin.c: (gst_bin_change_state_func):
658 this break is obsolete
660 * gst/gstelementfactory.h:
661 better GST_ELEMENT_DETAILS docs, add comment about translation
666 * gst/gstobject.c: (gst_signal_object_get_type):
667 add G_UNLIKELY as usual
669 * gst/gstpad.c: (gst_pad_event_default):
670 add fall trhu comment
672 * gst/gstregistrybinary.c: (gst_registry_binary_write),
673 (gst_registry_binary_initialize_magic),
674 (gst_registry_binary_save_string),
675 (gst_registry_binary_save_pad_template),
676 (gst_registry_binary_save_feature),
677 (gst_registry_binary_save_plugin),
678 (gst_registry_binary_write_cache),
679 (gst_registry_binary_check_magic),
680 (gst_registry_binary_load_pad_template),
681 (gst_registry_binary_load_feature),
682 (gst_registry_binary_load_plugin),
683 (gst_registry_binary_read_cache):
684 comment typo and formatting
686 * gst/gstutils.c: (gst_element_state_get_name),
687 (gst_element_state_change_return_get_name):
688 remove obsolete breaks
690 * gst/gstvalue.c: (gst_date_get_type), (_gst_value_initialize):
691 add FIXME 0.11 and remove cpp comment
693 2007-01-29 Edward Hervey <edward@fluendo.com>
695 * gst/gstregistrybinary.c: (gst_registry_binary_read_cache):
696 Fix print statement in an even more portable way.
698 2007-01-29 Tim-Philipp Müller <tim at centricular dot net>
700 * docs/gst/gstreamer-sections.txt:
702 API: add GST_ROUND_DOWN_* macros (#401781).
704 2007-01-27 Tim-Philipp Müller <tim at centricular dot net>
706 * docs/gst/gstreamer.types.in:
707 * gst/gstregistry.c: (gst_registry_class_init):
708 Document registry signals and make gtk-doc pick them up (#401381).
710 2007-01-26 Tim-Philipp Müller <tim at centricular dot net>
712 * docs/pwg/building-testapp.xml:
713 Add some audioconverts and audioresample to the pipeline, and some
714 more comments and error handling.
716 2007-01-26 Tim-Philipp Müller <tim at centricular dot net>
718 * docs/manual/manual.xml:
722 2007-01-26 Wim Taymans <wim@fluendo.com>
724 * gst/gstcaps.c: (gst_static_caps_get):
727 2007-01-25 Sebastian Dröge <slomo@circular-chaos.org>
729 Patch by: Jindrich Makovicka <jindrich.makovick at itonis dot tv>
731 * plugins/elements/gstfilesrc.c: (gst_file_src_start):
732 If not using mmap'ed files try to seek to the end instead of the
733 start to determine whether we can seek at all. This fixes the case
734 of 2GB+ files over NFS, where seeks in the first 2GB can succeed but
735 seeks for everything afterwards fail. Fixes #400656
737 2007-01-25 Wim Taymans <wim@fluendo.com>
739 * gst/gstcaps.c: (_gst_caps_free), (gst_static_caps_get):
740 Add some refcount debugging.
741 Make gst_static_caps_get threadsafe, which is needed when autoplugging
742 in multiple streaming threads.
744 2007-01-25 Wim Taymans <wim@fluendo.com>
746 Patch by: David Schleef <ds at schleef dot org>
748 * docs/libs/gstreamer-libs-sections.txt:
749 * libs/gst/base/gstadapter.c: (gst_adapter_copy):
750 * libs/gst/base/gstadapter.h:
751 API: gst_adapter_copy() that can reduce the amount of memcpy when
752 getting data from the adapter. Fixes #388201.
754 2007-01-25 Edward Hervey <edward@fluendo.com>
756 * gst/gstregistrybinary.c: (gst_registry_binary_read_cache):
757 In print statements, "%x" is for guint. Fixes build on macosx.
759 2007-01-24 Edward Hervey <edward@fluendo.com>
761 * plugins/elements/gstmultiqueue.c:
762 (gst_multi_queue_loop):
764 (single_queue_overrun_cb), (single_queue_underrun_cb),
765 (single_queue_check_full), (gst_single_queue_new):
766 Implement single queue growth system.
767 This uses the extra-size properties, and will grow single queues by
768 that much if one goes full whereas there are others empty. This is
769 called extra-mode in the code.
770 When a single queue's levels go back below the initial max-size
771 limits, it is no longer in extra-mode. This is to ensure we don't
772 consume too much memory.
775 2007-01-23 Tim-Philipp Müller <tim at centricular dot net>
777 * gst/gst.c: (gst_init_get_option_group):
778 Make warning about late g_thread_init() calls a bit more explicit,
779 so that it's more obvious to application developers what they need
780 to do if a user files a bug against their application.
782 2007-01-22 Edward Hervey <edward@fluendo.com>
784 * plugins/elements/gstmultiqueue.c:
785 (gst_multi_queue_src_activate_push), (gst_single_queue_new):
786 Remove previous hack of unsetting the flushing flag for the source pad
787 instead of activating it. Instead, fix the source pad activate function
788 so that it no longer depends on having a parent set or not.
790 2007-01-22 Tim-Philipp Müller <tim at centricular dot net>
792 Patch by: Carlos Sanmartin Dominguez <csanmartin@igalia.com>
794 * docs/manual/basics-bus.xml:
795 Fix example code, gst_element_unref() doesn't exist any longer.
797 2007-01-21 Tim-Philipp Müller <tim at centricular dot net>
799 Patch by: Mark Nauwelaerts <manauw at skynet be>
802 Fix two docs typoes (#399094).
804 2007-01-19 Edward Hervey <edward@fluendo.com>
806 * docs/faq/gst-uninstalled:
807 Add gst-plugins-base/gst/utils/ to LD_LIBRARY_PATH so that plugins
808 depending on libgstbaseutils can work in uninstalled environment.
810 2007-01-18 Stefan Kost <ensonic@users.sf.net>
813 * gst/gsttagsetter.c:
814 Add more docs regarding tag merge-modes and when to send tags. Fix 'since'
815 statement for new tag.
817 2007-01-17 Edward Hervey <edward@fluendo.com>
819 * plugins/elements/gstmultiqueue.c: (gst_single_queue_new):
820 When dynamically creating single queues, activate sinkpad before adding
822 We should be doing the same thing for the source pad, but we can't
823 since it would call a method which needs the parent to be set in order
824 to work propertly. Instead of activating the source pad, we just unset
825 the flushing flag, which is the minimal requirement for adding a pad
826 to an element in a state greater than READY.
828 2007-01-17 Edward Hervey <edward@fluendo.com>
830 * docs/faq/gst-uninstalled:
831 Add DYLD_LIBRARY_PATH declarations so we can also use this script on
834 2007-01-17 Tim-Philipp Müller <tim at centricular dot net>
836 * tests/check/gst/gstabi.c:
837 * tests/check/gst/struct_hppa.h:
838 * tests/check/libs/libsabi.c:
839 * tests/check/libs/struct_hppa.h:
840 Add ABI structs for HPPA (see #393796).
842 2007-01-16 Tim-Philipp Müller <tim at centricular dot net>
844 * libs/gst/check/gstcheck.c: (gst_check_abi_list):
845 Actually write ABI structs to the file specified in the GST_ABI
846 environment variable, as the message we print claims we would.
848 2007-01-15 Stefan Kost <ensonic@users.sf.net>
850 * tests/check/gst/gsttask.c:
853 2007-01-15 Stefan Kost <ensonic@users.sf.net>
855 * gst/gsttaglist.c: (_gst_tag_initialize):
856 Change tag type from STRING to DOUBLE. Apply ChangeLog surgery for my
857 previous two entries.
859 2007-01-15 Stefan Kost <ensonic@users.sf.net>
861 * docs/gst/gstreamer-sections.txt:
862 * gst/gsttaglist.c: (_gst_tag_initialize):
864 Add tag support for beat-per-minute.
866 2007-01-15 Stefan Kost <ensonic@users.sf.net>
868 * gst/gstregistrybinary.c: (gst_registry_binary_write),
869 (gst_registry_binary_initialize_magic),
870 (gst_registry_binary_save_string), (gst_registry_binary_make_data),
871 (gst_registry_binary_save_pad_template),
872 (gst_registry_binary_save_feature),
873 (gst_registry_binary_save_plugin),
874 (gst_registry_binary_write_cache),
875 (gst_registry_binary_check_magic),
876 (gst_registry_binary_load_pad_template),
877 (gst_registry_binary_load_feature),
878 (gst_registry_binary_load_plugin),
879 (gst_registry_binary_read_cache):
880 * gst/gstregistrybinary.h:
881 Use glib types, cleanup comments, impement interfaces and uri-types.
883 2007-01-13 Andy Wingo <wingo@pobox.com>
885 * gst/gstpad.c (gst_pad_get_range, gst_pad_pull_range): Allow
886 getrange() to return buffers with other caps, while we fix
887 demuxers and typefind, or otherwise change part-negotiation.txt.
889 2007-01-12 Andy Wingo <wingo@pobox.com>
891 * libs/gst/base/gstbasetransform.c (gst_base_transform_activate):
892 Factor start/stop into this private function instead of partially
893 in activate functions and partially in the change_state function.
894 Fixes setup before the element has changed from READY->PAUSED, as
895 is the case in pull-mode pipelines.
896 (gst_base_transform_sink_activate_push)
897 (gst_base_transform_src_activate_pull): Refactor to use
898 gst_base_transform_activate().
899 (gst_base_transform_change_state): Removed, not needed any more.
901 * libs/gst/base/gstbasesink.c (gst_base_sink_negotiate_pull):
902 Truncate before fixating.
904 * libs/gst/base/gstbasesink.c (gst_base_sink_negotiate_pull):
905 Don't set_caps() if the result of fixating is ANY, as it's not
906 supported, and not necessary in the case of a link with no
907 template caps on either side. Fixes tests/check/libs/basesrc in
908 some pull-mode tests.
910 * libs/gst/base/gstbasetransform.c (_GstBaseTransformPrivate):
911 (gst_base_transform_init, gst_base_transform_sink_activate_push)
912 (gst_base_transform_src_activate_pull):
913 Track the activation mode.
914 (gst_base_transform_setcaps): In pull mode, when activating the
915 src pad, after activating the sink pad, activate the sink pad's
916 peer, as discussed in part-negotiation.txt.
918 * libs/gst/base/gstbasesrc.h:
919 * libs/gst/base/gstbasesrc.c (gst_base_src_fixate): Add fixate
920 vmethod, as in basesink.
922 * libs/gst/base/gstbasesink.h: Reformat docs, add fixate vmethod.
924 * libs/gst/base/gstbasesink.c (gst_base_sink_pad_setcaps): In pull
925 mode, first proxy the setcaps to the peer pad.
926 (gst_base_sink_pad_fixate): Add a fixate function that calls the
928 (gst_base_sink_default_activate_pull): Rename from
929 gst_base_sink_activate_pull.
930 (gst_base_sink_negotiate_pull): New function, performs negotiation
931 in pull mode before calling ::activate_pull().
932 (gst_base_sink_pad_activate_pull): Actually call the activate_pull
933 vmethod instead of the default implementation. I have no idea how
934 this worked before. Negotiate before calling activate_pull.
936 * gst/gstpad.c (gst_pad_activate_pull): Refuse to activate unlinked
937 sink pads in pull mode. In addition to being correct, fixes
938 filesrc ! decodebin ! identity ! fakesink.
939 (gst_pad_get_range, gst_pad_pull_range): Don't call
940 gst_pad_set_caps() if the caps changes; instead error out with
941 GST_FLOW_NOT_NEGOTIATED, as discussed in part-negotiation.txt.
943 2007-01-12 Andy Wingo <wingo@pobox.com>
945 * docs/design/part-negotiation.txt: Update with more policy.
947 2007-01-12 Tim-Philipp Müller <tim at centricular dot net>
949 * libs/gst/check/gstbufferstraw.h:
950 * libs/gst/check/gstcheck.h:
951 Add G_BEGIN_DECLS and G_END_DECLS. Move GST_CHECK_MAIN where it
954 2007-01-12 Tim-Philipp Müller <tim at centricular dot net>
956 * tests/check/Makefile.am:
957 * tests/check/gst/.cvsignore:
958 * tests/check/gst/gsttagsetter.c: (gst_dummy_enc_add_interfaces),
959 (gst_dummy_enc_base_init), (gst_dummy_enc_class_init),
960 (gst_dummy_enc_init), (tag_list_foreach), (tag_setter_list_length),
961 (GST_START_TEST), (gst_tag_setter_suite):
962 Add minimal unit test for beforementioned GstTagSetter bug.
964 2007-01-12 Tim-Philipp Müller <tim at centricular dot net>
966 Patch by: René Stadler <mail at renestadler dot de>
968 * gst/gsttagsetter.c: (gst_tag_setter_merge_tags):
969 gst_tag_list_merge() returns a new list, so it's not the best idea
970 to ingore its return value. Effectively meant that tags could only
971 be merged on a GstTagSetter once using _merge_tags(). Fixes #395554.
972 Also add function guard to require a non-NULL taglist as input (has
973 always been so due to gst_tag_list_copy(), just making it explicit).
975 2007-01-11 Tim-Philipp Müller <tim at centricular dot net>
977 * docs/random/draft-missing-plugins.txt:
978 Some additions: mention new API that is supposed to be used at the
979 various stages; short blob about new gst-inspect introspection
980 option; mention potential future problem with plugins that have
981 a dynamic list of elements (such as ladspa, pitfdll, libvisual).
983 2007-01-11 Tim-Philipp Müller <tim at centricular dot net>
985 * tools/gst-inspect.c:
986 (print_plugin_automatic_install_info_codecs),
987 (print_plugin_automatic_install_info_protocols),
988 (print_plugin_automatic_install_info), (main):
989 Add --print-plugin-auto-install-info option to gst-inspect, so we can
990 introspect plugin files and get machine-parsable output that corresponds
991 to the last bit of the missing-plugin installer string (small gotcha:
992 doesn't take into account ranks).
994 2007-01-11 Stefan Kost <ensonic@users.sf.net>
997 * docs/gst/gstreamer-sections.txt:
999 * gst/gstregistry.c: (gst_registry_lookup_feature_locked),
1000 (gst_registry_lookup_locked):
1001 * gst/gstregistry.h:
1002 * gst/gstregistrybinary.c: (gst_registry_binary_write),
1003 (gst_registry_binary_initialize_magic),
1004 (gst_registry_binary_save_string),
1005 (gst_registry_binary_save_pad_template),
1006 (gst_registry_binary_save_feature),
1007 (gst_registry_binary_save_plugin),
1008 (gst_registry_binary_write_cache),
1009 (gst_registry_binary_check_magic),
1010 (gst_registry_binary_load_pad_template),
1011 (gst_registry_binary_load_feature),
1012 (gst_registry_binary_load_plugin),
1013 (gst_registry_binary_read_cache):
1014 * gst/gstregistrybinary.h:
1015 * gst/gstregistryxml.c: (load_feature),
1016 (gst_registry_xml_read_cache):
1017 commit binary registry (disabled by default, see #359653)
1019 2007-01-11 Tim-Philipp Müller <tim at centricular dot net>
1021 * tests/check/gst/gstpad.c: (test_get_allowed_caps):
1022 Fix 'make check' too.
1024 2007-01-10 Andy Wingo <wingo@pobox.com>
1026 * docs/design/part-negotiation.txt: Fix a typo, add a couple
1029 * docs/design/part-negotiation.txt: Update with, um, one way that
1030 pull-mode negotiation might work?
1033 * gst/gstpad.c (gst_pad_get_allowed_caps): Remove the restriction
1034 that the pad must be a src pad; makes sense to call it the other
1035 way in pull mode, and the logic is symmetric anyway.
1037 2007-01-10 Tim-Philipp Müller <tim at centricular dot net>
1039 * plugins/elements/gstfilesink.c:
1040 Include <stdio.h> for fseeko().
1042 2007-01-10 Wim Taymans <wim@fluendo.com>
1046 Reserve LATENCY event.
1048 2007-01-09 Wim Taymans <wim@fluendo.com>
1050 * docs/design/draft-latency.txt:
1053 2007-01-09 Wim Taymans <wim@fluendo.com>
1055 * docs/design/draft-latency.txt:
1059 * gst/gststructure.c:
1063 2007-01-09 Tim-Philipp Müller <tim at centricular dot net>
1065 * tests/check/.cvsignore:
1066 Ignore test-registry.xml as well.
1068 2007-01-09 Wim Taymans <wim@fluendo.com>
1070 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_remove_pad):
1071 unref data at the end when we are done with the pad.
1073 2007-01-08 Tim-Philipp Müller <tim at centricular dot net>
1075 * docs/gst/gstreamer-sections.txt:
1076 * gst/gst.c: (load_plugin_func), (scan_and_update_registry),
1077 (init_post), (gst_deinit), (gst_update_registry):
1079 API: add gst_update_registry() (#391296).
1081 * tests/check/Makefile.am:
1082 * tests/check/gst/gstregistry.c:
1083 * tests/check/gst/.cvsignore:
1084 Simple unit test for the above.
1086 2007-01-08 Tim-Philipp Müller <tim at centricular dot net>
1088 * gst/gstregistry.c: (gst_registry_scan_path_level):
1089 Plugin extension on HP-UX is .sl, add that to the list of approved
1090 plugin extensions (see #393796).
1092 * tests/check/gst/gstpad.c: (GST_START_TEST):
1093 ulong => gulong. Fixes compilation with HP-UX compiler.
1095 * tests/check/pipelines/parse-launch.c: (GST_START_TEST):
1096 Fix compilation if valgrind headers are not available.
1098 2007-01-07 Sébastien Moutte <sebastien@moutte.net>
1100 * win32/common/libgstreamer.def:
1101 Add new exported function.
1102 * win32/vs6/libgstbase.dsp:
1103 Add gstdataqueue.c to the build.
1104 * win32/vs6/libgstcoreelements.dsp:
1105 Add gstmultiqueue.c to the build.
1107 2007-01-06 Andy Wingo <wingo@pobox.com>
1109 * libs/gst/base/gstbasesink.h: New GstBaseSinkClass vmethod,
1110 activate_pull(), providing for a way to specialize the process of
1111 spawning a thread to pull on the sink pad. There is a default
1114 * libs/gst/base/gstbasesink.c (gst_base_sink_pad_activate_pull)
1115 (gst_base_sink_pad_activate_push, gst_base_sink_pad_activate)
1116 (gst_base_sink_init): Renamed pad activation functions (inserting
1117 "_pad" in their names). Refactor to use the new activate_pull
1118 vmethod, as appropriate.
1119 (gst_base_sink_class_init, gst_base_sink_activate_pull): Set the
1120 default activate_pull function to start a task pulling from the
1121 sink pad, as before.
1123 * gst/gstpad.c (gst_pad_get_range, gst_pad_pull_range): Set caps
1124 on the pads if necessary, as in push()/chain(). Update docs.
1125 Shouldn't affect existing pull() usage as it is currently only
1126 being used on buffers without caps.
1128 2007-01-05 Tim-Philipp Müller <tim at centricular dot net>
1130 * gst/gst.c: (gst_init_get_option_group), (gst_init_check),
1132 Call g_thread_init() first thing in gst_init() / gst_check_init().
1133 When initialisation is done via gst_init_get_option_group() and
1134 GOption parsing, issue a warning if the GLib thread system has not
1135 been initialised yet by the time gst_init_get_option_group() is
1136 called, as it's quite likely other GLib functions such as
1137 g_option_context_new() have been called already then, and
1138 g_thread_init() must be called before any other GLib function. The
1139 application in question must be fixed in that case, since memory
1140 corruption might happen otherwise.
1141 We issue the warning because even if the GLib folks decide to work
1142 around the problem on their end in future, this is still an issue
1143 with all GLib versions >= 2.10.0, so we should warn until we depend
1144 on a GLib version we know to be safe.
1145 Update documentation as well.
1148 2007-01-05 Tim-Philipp Müller <tim at centricular dot net>
1150 * tools/gst-inspect.c: (main):
1151 * tools/gst-launch.c: (main):
1152 * tools/gst-typefind.c: (main):
1153 * tools/gst-xmlinspect.c: (main):
1154 Call g_thread_init() really really early, before any other GLib
1155 function (see #342564 and recent discussion on gtk-devel-list).
1157 2007-01-05 Tim-Philipp Müller <tim at centricular dot net>
1159 Patch by: Vincent Torri <vtorri at univ-evry dot fr>
1161 * gst/gst_private.h:
1162 * gst/gstconfig.h.in:
1164 On win32, all the __declspec stuff for symbol exporting is
1165 apparently only needed with MSVC, but doesn't work with MingW.
1166 Fixes compilation with MingW and #391909.
1168 2007-01-05 Tim-Philipp Müller <tim at centricular dot net>
1170 * libs/gst/base/gstbasesrc.c: (gst_base_src_activate_push):
1171 Change some GST_ERROR_OBJECT that aren't really errors to
1172 GST_WARNING_OBJECT in order to reduce terminal spam.
1174 2007-01-04 Stefan Kost <ensonic@users.sf.net>
1176 * tests/check/Makefile.am:
1177 disable test again, as there seem to be still race problems
1179 2007-01-04 Stefan Kost <ensonic@users.sf.net>
1181 * tests/check/Makefile.am:
1182 * tests/check/elements/queue.c: (queue_overrun), (queue_underrun),
1183 (GST_START_TEST), (queue_suite):
1184 enable queue test again, add tests for the leaky behaviour
1186 2007-01-02 Tim-Philipp Müller <tim at centricular dot net>
1189 * tests/examples/Makefile.am:
1190 Compile adapter test/example only if the required headers are
1191 available (fixes #391915).
1193 2007-01-01 David Schleef <ds@schleef.org>
1196 Restore the previous signal handler for SIGSEGV instead of
1197 setting to default, since we may have stolen it away from
1198 someone. (i.e., Mono)
1200 2006-12-26 Tim-Philipp Müller <tim at centricular dot net>
1202 * docs/random/draft-missing-plugins.txt:
1203 Some small additions and clarifications.
1205 2006-12-26 Tim-Philipp Müller <tim at centricular dot net>
1207 * gst/gstregistryxml.c: (gst_registry_save_escaped):
1208 Make sure we don't pass non-UTF-8 strings to g_markup_escape(),
1209 since that can lead to random memory corruptions and crashes
1210 (may or may not be related to #383244, #386711, and #386711).
1212 2006-12-21 Stefan Kost <ensonic@users.sf.net>
1214 * tests/check/.cvsignore:
1215 * tests/check/Makefile.am:
1216 sync .cvsignome and CLEANFILES
1218 2006-12-21 Stefan Kost <ensonic@users.sf.net>
1220 * tests/check/Makefile.am:
1223 2006-12-21 Stefan Kost <ensonic@users.sf.net>
1225 * docs/design/part-states.txt:
1226 two tiny additional comments
1228 * gst/gststructure.c:
1231 * tests/check/Makefile.am:
1232 * tests/check/elements/queue.c: (queue_overrun), (queue_underrun),
1234 disable test for now, unless it gets fixed
1236 2006-12-21 Stefan Kost <ensonic@users.sf.net>
1238 * tests/check/elements/queue.c: (queue_overrun), (queue_underrun),
1240 fix race in underrun test
1242 2006-12-21 Stefan Kost <ensonic@users.sf.net>
1244 * tests/check/elements/.cvsignore:
1247 * tests/check/elements/queue.c: (queue_overrun), (queue_underrun),
1249 try to narrow test failure
1251 2006-12-21 David Schleef <ds@schleef.org>
1253 * plugins/elements/gstfakesrc.c:
1254 Use g_random_int_range(), since it produces better random
1255 numbers in a range than almost-correct floating point code.
1257 2006-12-21 Stefan Kost <ensonic@users.sf.net>
1259 * libs/gst/check/gstcheck.c: (gst_check_setup_src_pad),
1260 (gst_check_teardown_src_pad), (gst_check_setup_sink_pad),
1261 (gst_check_teardown_sink_pad):
1262 do not automatically (de)activate pads
1264 * tests/check/Makefile.am:
1265 * tests/check/elements/queue.c: (queue_overrun), (queue_underrun),
1266 (setup_queue), (cleanup_queue), (GST_START_TEST), (queue_suite):
1267 add new, yet simple tests for queue
1269 * tests/check/elements/fakesrc.c: (cleanup_fakesrc):
1270 * tests/check/elements/fdsrc.c: (cleanup_fdsrc):
1271 * tests/check/elements/filesrc.c: (cleanup_filesrc),
1273 * tests/check/elements/identity.c: (cleanup_identity):
1274 consistent pad (de)activation
1276 2006-12-20 Tim-Philipp Müller <tim at centricular dot net>
1278 Patch by: Sebastian Dröge <slomo ubuntu com>
1280 * libs/gst/base/gstcollectpads.c:
1281 Fix two doc typos (#387866).
1283 2006-12-19 Tim-Philipp Müller <tim at centricular dot net>
1285 * docs/manual/advanced-dparams.xml:
1286 Fix typo (g_object_control_properties() doesn't exist).
1288 2006-12-19 Edward Hervey <edward@fluendo.com>
1290 * gst/gstsegment.c: (gst_segment_set_seek):
1291 Fine tune the cases where the segment start/stop values are really
1293 * tests/check/gst/gstsegment.c: (GST_START_TEST):
1294 Add tests for the return values of gst_segment_set_seek().
1296 2006-12-19 Tim-Philipp Müller <tim at centricular dot net>
1301 * plugins/elements/gstqueue.c: (gst_queue_class_init),
1303 Fix incorrect documentation and flesh it out a bit more.
1304 Set default values for the max properties on the GParamSpec as well,
1305 so it shows up correctly in gst-inspect.
1307 2006-12-18 Stefan Kost <ensonic@users.sf.net>
1309 * plugins/elements/gstqueue.c: (queue_leaky_get_type):
1310 Correct docs of queue, add more detail and crosslink it more.
1312 2006-12-16 Tim-Philipp Müller <tim at centricular dot net>
1314 * plugins/elements/gstidentity.c: (gst_identity_check_perfect):
1315 Print additional debug info when the stream isn't perfectly
1316 timestamped; don't try to use invalid durations.
1318 2006-12-16 Tim-Philipp Müller <tim at centricular dot net>
1320 * docs/design/Makefile.am:
1321 Dist new design docs.
1323 2006-12-16 Wim Taymans <wim@fluendo.com>
1325 Patch by: Sjoerd Simons <sjoerd at luon dot net>
1327 * libs/gst/base/gstcollectpads.c: (ref_data), (unref_data),
1328 (gst_collect_pads_add_pad), (gst_collect_pads_remove_pad),
1329 (gst_collect_pads_stop), (gst_collect_pads_event),
1330 (gst_collect_pads_chain):
1331 * libs/gst/base/gstcollectpads.h:
1332 Add refcounting to the collectpads data so we can track when it's safe
1333 to free the data. Fixes #383382.
1335 2006-12-15 Wim Taymans <wim@fluendo.com>
1337 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_add_pad),
1338 (gst_collect_pads_remove_pad):
1339 Automatically activate/deactivate pads when they are added to a
1340 started/stoped collectpads.
1342 2006-12-15 Wim Taymans <wim@fluendo.com>
1344 * gst/gstelement.c: (gst_element_add_pad):
1345 * gst/gstghostpad.c: (gst_ghost_pad_new_full):
1346 * gst/gstpad.c: (gst_pad_init):
1347 Set pads to FLUSHING when they are created. Check, warn and fix when a
1348 demuxer adds an inactive pad to itself when running. Fixes #339326.
1350 2006-12-15 Wim Taymans <wim@fluendo.com>
1352 * gst/gstelement.c: (gst_element_class_init),
1353 (gst_element_default_send_event), (gst_element_send_event),
1354 (gst_element_default_query), (gst_element_query):
1355 Expose default element send_event and query handling as vmethods that
1356 subclasses can chain up to.
1358 2006-12-15 Wim Taymans <wim@fluendo.com>
1360 * gst/gstelement.c: (gst_element_set_state_func):
1361 Small documentation fixes.
1363 2006-12-15 Wim Taymans <wim@fluendo.com>
1365 * docs/design/draft-latency.txt:
1366 Checked in draft for handling latency in pipelines.
1368 2006-12-15 Thomas Vander Stichele <thomas at apestaart dot org>
1372 * gstreamer.spec.in:
1375 2006-12-14 Tim-Philipp Müller <tim at centricular dot net>
1377 * gst/gst.c: (init_pre), (init_post):
1378 init_pre() and init_post() might be called via our GOptionGroup or
1379 from gst_init(), and we should skip both of them if we've already
1380 been initialised, otherwise we will init some things twice or add
1381 two default log functions.
1383 2006-12-13 Edward Hervey <edward@fluendo.com>
1385 * docs/manual/basics-bus.xml:
1386 No, gst_main_loop does not exist. Its g_main_loop.
1387 Discovered by somebody who abused the copy-paste technique of coding :)
1389 2006-12-13 Tim-Philipp Müller <tim at centricular dot net>
1391 * gst/gstghostpad.c:
1392 Log ghostpad debug stuff to the GST_PADS category as well rather
1393 than just to the default category.
1395 2006-12-12 Tim-Philipp Müller <tim at centricular dot net>
1398 * gst/gst.c: (init_pre):
1399 Add some basic system details such as OS and architecture
1400 to the debug output if possible, courtesy of uname().
1402 2006-12-11 Tim-Philipp Müller <tim at centricular dot net>
1404 * docs/gst/running.xml:
1405 Document GST_REGISTRY_FORK and GST_DEBUG_NO_COLOR
1406 environment variables.
1408 2006-12-09 Jan Schmidt <thaytan@mad.scientist.com>
1410 * tests/check/gst/gstbin.c: (GST_START_TEST):
1411 It is acceptable to have a refcount of 2 or 3 at this point in the
1412 test, because the pipeline might be just posting its state_change
1413 message. The next line then waits for that message to appear using
1414 bus_poll, so that should be fine too.
1416 2006-12-09 Jan Schmidt <thaytan@mad.scientist.com>
1418 * gst/gst.c: (ensure_current_registry_forking):
1419 Ignore EINTR when reading from the child registry pipe.
1420 Explicitly ignore the return value from close, since it makes no
1423 * gst/gstminiobject.c: (gst_mini_object_ref),
1424 (gst_mini_object_unref):
1425 When debugging refcounts, check GST_IS_MINI_OBJECT and warn.
1427 * gst/gstregistry.c: (_priv_gst_registry_remove_cache_plugins):
1428 When removing cached plugins, remove their features too, so they're
1429 not visible after they've disappeared.
1431 * gst/gstutils.c: (prepare_link_maybe_ghosting):
1432 In the unlikely case that we are linking pads with no parents, don't
1433 crash trying to get the non-existent parent bin.
1435 * gst/parse/grammar.y:
1436 Output debug in the PIPELINE category
1438 2005-03-08 Wim Taymans <wim@fluendo.com>
1440 Patch by: René Stadler <mail at renestadler dot de>
1442 * gst/gstclock.c: (gst_clock_new_periodic_id):
1443 Reject invalid clock times for interval of periodic ids.
1446 2006-12-07 Jan Schmidt <thaytan@mad.scientist.com>
1448 * gst/gstelementfactory.c: (gst_element_factory_create):
1449 * gst/gstpluginfeature.c: (gst_plugin_feature_load):
1450 * gst/gsttypefindfactory.c: (gst_type_find_factory_call_function):
1451 * tools/gst-inspect.c: (print_element_info):
1452 Fix refcounting of gst_plugin_feature_load to match the docs.
1455 2006-12-07 Wim Taymans <wim@fluendo.com>
1457 * libs/gst/base/gstbasesink.c: (gst_base_sink_event),
1458 (gst_base_sink_get_position):
1459 Improve debugging of events.
1461 2006-12-07 Wim Taymans <wim@fluendo.com>
1463 Patch by: René Stadler <mail at renestadler dot de>
1465 * gst/gstclock.c: (gst_clock_id_wait):
1466 Make period ids add the interval to the origial requested time instead
1467 of the possibly updated time which can be wrong when there are multiple
1468 waiters for the same id. Fixes #382592.
1470 * gst/gstsystemclock.c: (gst_system_clock_async_thread),
1471 (gst_system_clock_id_wait_jitter_unlocked),
1472 (gst_system_clock_id_wait_jitter):
1473 Fix restart in the async notify thread when an async entry is added to
1474 the front of the list. Fixes #381492.
1476 * tests/check/gst/gstsystemclock.c: (store_callback),
1477 (notify_callback), (GST_START_TEST), (gst_systemclock_suite):
1478 Added test for multiple async waits.
1479 Added test for async wait order.
1481 2006-12-07 Wim Taymans <wim@fluendo.com>
1483 * gst/gstbin.c: (gst_bin_query):
1484 Add some more docs about the POSITION query.
1486 2006-12-07 Jan Schmidt <thaytan@mad.scientist.com>
1489 Bump version nano - back to CVS.
1491 === release 0.10.11 ===
1493 2006-12-06 Jan Schmidt <thaytan@mad.scientist.com>
1496 releasing 0.10.11, "Love never runs on time"
1498 2006-12-01 Jan Schmidt <thaytan@mad.scientist.com>
1500 * win32/common/libgstbase.def:
1501 * win32/common/libgstreamer.def:
1502 * win32/vs8/libgstbase.vcproj:
1503 * win32/vs8/libgstcoreelements.vcproj:
1504 * win32/vs8/libgstreamer.vcproj:
1505 Fix compilation on win32 under VS8
1506 Patch by: Sergey Scobich <sergey dot scobich at gmail dot com>
1507 Partially fixes #381175
1509 2006-11-29 Jan Schmidt <thaytan@mad.scientist.com>
1511 * gst/gstvalue.c: (gst_value_compare_fraction):
1512 If someone is foolish enough to compare 2 fractions with denominator =
1513 0, return UNORDERED rather than aborting.
1515 2006-11-28 Edward Hervey <edward@fluendo.com>
1517 * libs/gst/base/Makefile.am:
1518 * libs/gst/base/gstdataqueue.c: (gst_data_queue_get_type),
1519 (gst_data_queue_base_init), (gst_data_queue_class_init),
1520 (gst_data_queue_init), (gst_data_queue_new),
1521 (gst_data_queue_cleanup), (gst_data_queue_finalize),
1522 (gst_data_queue_locked_flush), (gst_data_queue_locked_is_empty),
1523 (gst_data_queue_locked_is_full), (gst_data_queue_flush),
1524 (gst_data_queue_is_empty), (gst_data_queue_is_full),
1525 (gst_data_queue_set_flushing), (gst_data_queue_push),
1526 (gst_data_queue_pop), (gst_data_queue_drop_head),
1527 (gst_data_queue_set_property), (gst_data_queue_get_property):
1528 * libs/gst/base/gstdataqueue.h:
1529 New GstDataQueue object for threadsafe queueing. Most useful for
1530 elements that need some queueing functionnality.
1531 * docs/libs/gstreamer-libs-docs.sgml:
1532 * docs/libs/gstreamer-libs-sections.txt:
1533 Insert documentation for GstDataQueue
1534 * plugins/elements/Makefile.am:
1535 * plugins/elements/gstelements.c:
1536 * plugins/elements/gstmultiqueue.c: (gst_multi_queue_base_init),
1537 (gst_multi_queue_class_init), (gst_multi_queue_init),
1538 (gst_multi_queue_finalize), (gst_multi_queue_set_property),
1539 (gst_multi_queue_get_property), (gst_multi_queue_request_new_pad),
1540 (gst_multi_queue_release_pad), (gst_single_queue_push_one),
1541 (gst_multi_queue_item_destroy), (gst_multi_queue_item_new),
1542 (gst_multi_queue_loop), (gst_multi_queue_chain),
1543 (gst_multi_queue_sink_activate_push), (gst_multi_queue_sink_event),
1544 (gst_multi_queue_getcaps), (gst_multi_queue_bufferalloc),
1545 (gst_multi_queue_src_activate_push), (gst_multi_queue_acceptcaps),
1546 (gst_multi_queue_src_event), (gst_multi_queue_src_query),
1547 (wake_up_next_non_linked), (compute_next_non_linked),
1548 (single_queue_overrun_cb), (single_queue_underrun_cb),
1549 (single_queue_check_full), (gst_single_queue_new):
1550 * plugins/elements/gstmultiqueue.h:
1551 New multiqueue element, using GstDataQueue. Used for queuing multiple
1553 Closes #344639 and #347785
1555 2006-11-22 Stefan Kost <ensonic@users.sf.net>
1557 * docs/pwg/advanced-types.xml:
1558 add more missing type details
1560 * tools/gst-run.c: (main):
1561 remove unused variable
1563 2006-11-21 Stefan Kost <ensonic@users.sf.net>
1565 * docs/libs/Makefile.am:
1566 * docs/libs/gstreamer-libs.types:
1567 add types of base classes to enable gobject specific stuff in the docs
1569 * docs/random/ensonic/embedded.txt:
1570 more ideas about isolating platform specific things
1572 2006-11-20 Wim Taymans <wim@fluendo.com>
1574 Patch by: Sebastian Dröge <slomo at ubuntu dot com>
1576 * libs/gst/check/gstcheck.h:
1577 Fix compilation and running against 0.9.4. Fixes #377332.
1579 2006-11-20 Wim Taymans <wim@fluendo.com>
1581 * gst/gstsegment.c: (gst_segment_set_seek),
1582 (gst_segment_set_newsegment_full), (gst_segment_to_stream_time),
1583 (gst_segment_to_running_time):
1584 Fix boundary checking in to_running_time() and to_stream_time().
1587 * tests/check/gst/gstsegment.c: (GST_START_TEST):
1588 stream and running time can now be calculated for the complete
1591 2006-11-15 Tim-Philipp Müller <tim at centricular dot net>
1593 * gst/gstpad.c: (gst_pad_push_event):
1594 Can't access event structure after giving away ownership of
1597 2006-11-15 Stefan Kost <ensonic@users.sf.net>
1599 * docs/random/ensonic/embedded.txt:
1600 * docs/random/ensonic/profiling.txt:
1601 * docs/random/ensonic/receipies.txt:
1604 2006-11-13 Wim Taymans <wim@fluendo.com>
1606 Patch by: Mark Nauwelaerts <manauw at skynet dot be>
1609 Fix documentation for gst_pad_dispatcher. Fixes #374475.
1611 2006-11-13 Wim Taymans <wim@fluendo.com>
1613 Patch by: Jonathan Matthew <jonathan at kaolin dot wh9 dot net>
1615 * libs/gst/base/gstbasesrc.c: (gst_base_src_update_length):
1616 Store new length in segment duration so we don't keep on calling the
1617 potentially expensize get_size() call. Fixes #370865.
1619 2006-11-10 Tim-Philipp Müller <tim at centricular dot net>
1621 Patch by: Sergey Scobich <sergey.scobich at gmail com>
1623 * win32/common/libgstreamer.def:
1624 Add two missing symbols (#366492).
1626 2006-11-10 Jan Schmidt <thaytan@mad.scientist.com>
1628 * libs/gst/base/gstadapter.c: (gst_adapter_flush),
1629 (gst_adapter_take_buffer):
1630 Fix format string to use all its arguments.
1631 Remove useless >= check on a guint
1633 2006-11-09 Jan Schmidt <thaytan@mad.scientist.com>
1635 * tests/examples/adapter/.cvsignore:
1636 Ignore build file as commanded by the build-bot
1638 2006-11-09 Jan Schmidt <thaytan@mad.scientist.com>
1640 * tests/examples/adapter/Makefile.am:
1641 * tests/examples/adapter/adapter_test.c: (run_test_take),
1642 (run_test_take_buffer), (run_tests), (main):
1644 Add new files from the previous commit
1646 2006-11-09 Jan Schmidt <thaytan@mad.scientist.com>
1650 * libs/gst/base/gstadapter.c: (gst_adapter_clear),
1651 (gst_adapter_push), (gst_adapter_peek_into), (gst_adapter_peek),
1652 (gst_adapter_flush), (gst_adapter_take), (gst_adapter_take_buffer):
1653 * libs/gst/base/gstadapter.h:
1654 * tests/check/libs/adapter.c: (create_and_fill_adapter),
1655 (GST_START_TEST), (gst_adapter_suite):
1656 * tests/examples/Makefile.am:
1657 Do some optimisation work in GstAdapter to avoid copies in more cases.
1658 It could still do slightly better by merging buffers when
1659 gst_buffer_is_span_fast is true, but is already faster.
1661 Also, avoid traversing a single-linked list to append each incoming
1662 buffer inside the adapter.
1664 Add simple test app that times the adapter behaviour in different
1665 situations, and extend the unit test to check that bytes enter and
1666 exit the adapter in their original order.
1668 2006-11-08 Tim-Philipp Müller <tim at centricular dot net>
1670 * docs/random/draft-missing-plugins.txt:
1671 Update: use element message instead of adding a new message
1672 type to the core; don't provide GStreamer API to initiate the
1673 plugin download, just provide API to compose the strings needed
1674 and let an external libgimmestuff handle the rest.
1676 2006-11-08 Jan Schmidt <thaytan@mad.scientist.com>
1678 * tools/gst-inspect.c: (print_element_properties_info):
1679 Print a string instead of 'unknown type' for GValueArray properties
1681 2006-11-08 Christian F.K. Schaller <christian@fluendo.com>
1683 * docs/random/draft-missing-plugins.txt:
1686 2006-11-07 Tim-Philipp Müller <tim at centricular dot net>
1688 * tests/examples/typefind/typefind.c: (type_found), (main):
1689 Make typefind element example work again (#371894); add a
1692 2006-11-07 Tim-Philipp Müller <tim at centricular dot net>
1694 * docs/random/draft-missing-plugins.txt:
1695 Commit initial draft about how to deal with missing plugins,
1696 needs work (API too).
1698 2006-11-07 Stefan Kost <ensonic@users.sf.net>
1700 * docs/pwg/advanced-types.xml:
1701 documents the new caps elements (see #363118)
1703 2006-11-06 Tim-Philipp Müller <tim at centricular dot net>
1705 * gst/gstplugin.c: (gst_plugin_load_file):
1706 * plugins/elements/gstfilesrc.c: (gst_mmap_buffer_finalize),
1707 (gst_file_src_map_region), (gst_file_src_start):
1708 * plugins/indexers/gstfileindex.c: (gst_file_index_load),
1709 (gst_file_index_commit):
1710 Use g_strerror() instead of strerror() - we want UTF-8.
1712 2006-11-06 Tim-Philipp Müller <tim at centricular dot net>
1714 Patch by: Peter Kjellerstedt <pkj at axis com>
1716 * plugins/elements/gstfdsrc.c: (gst_fd_src_create):
1717 Another printf fix (#371493).
1719 2006-11-06 Stefan Kost <ensonic@users.sf.net>
1721 * tests/check/gst/gsttag.c:
1722 relicence (okay with author=company)
1724 2006-11-06 Stefan Kost <ensonic@users.sf.net>
1726 * gst/gstpad.c: (gst_pad_event_default_dispatch),
1727 (gst_pad_push_event):
1728 Enhance debug and improve docs
1733 2006-11-06 Stefan Kost <ensonic@users.sf.net>
1735 * docs/random/ensonic/distributed.txt:
1736 * docs/random/ensonic/profiling.txt:
1739 2006-11-06 Stefan Kost <ensonic@users.sf.net>
1741 * docs/gst/gstreamer-sections.txt:
1742 add new API and fix the build
1744 * gst/gstbin.c: (gst_bin_recalc_state):
1745 * gst/gstelement.c: (gst_element_message_full),
1746 (gst_element_get_state_func), (gst_element_set_state_func):
1747 use new API and improve logging
1749 * gst/gstutils.c: (gst_element_state_change_return_get_name):
1751 API: add function to get StateChangereturn names to improve logs
1753 2006-11-04 Thomas Vander Stichele <thomas at apestaart dot org>
1755 * plugins/elements/gstfilesrc.c: (gst_file_src_start):
1756 I'm considering shooting the next person to put strerror stuff
1757 in the translateable part of the message.
1759 2006-11-03 Wim Taymans <wim@fluendo.com>
1761 * plugins/elements/gstfdsrc.c: (gst_fd_src_create):
1762 Get the type and printf conversion specifiers right.
1764 2006-11-03 Wim Taymans <wim@fluendo.com>
1766 Patch by: Mark Nauwelaerts <manauw at skynet dot be>
1768 * gst/gstpad.c: (gst_pad_init), (pre_activate),
1769 (gst_pad_set_blocked_async), (gst_pad_acceptcaps_default),
1770 (gst_pad_accept_caps), (handle_pad_block), (gst_pad_push_event):
1771 Some small cleanups. Improve debugging.
1773 Signal all waiting threads with a broadcast instead of just one.
1776 2006-11-03 Wim Taymans <wim@fluendo.com>
1778 * plugins/elements/gstfdsrc.c: (gst_fd_src_update_fd),
1779 (gst_fd_src_create):
1781 Only update fd when it's different from the old.
1783 2006-11-02 Tim-Philipp Müller <tim at centricular dot net>
1785 * plugins/elements/gstfilesrc.c: (gst_file_src_create_mmap):
1786 Printf fixes for PPC/OSX, take two (#369366).
1788 2006-11-02 Tim-Philipp Müller <tim at centricular dot net>
1790 Based on patch by: Jan David Mol <j.j.d.mol at tudelft nl>
1792 * plugins/elements/gstfilesink.c: (gst_file_sink_class_init):
1793 * plugins/elements/gstfilesrc.c: (gst_file_src_class_init),
1794 (gst_file_src_map_small_region), (gst_file_src_create_mmap):
1795 Printf fixes for gsize parameters on PPC/OSX (#369366). Also,
1796 don't cast to long long for portability reasons, but use
1797 GLib's types instead.
1799 2006-10-30 Michael Smith <msmith@fluendo.com>
1801 * plugins/elements/gstfdsrc.c: (gst_fd_src_update_fd):
1802 Get the arguments to lseek() the right way around.
1805 2006-10-30 Wim Taymans <wim@fluendo.com>
1807 Patch by: gorshkov <gorshkov at oghma dot on dot ca>
1810 _declspec should be __declspec (two underscores, not one). Fixes 366572.
1812 2006-10-28 Tim-Philipp Müller <tim at centricular dot net>
1814 Patch by: Kjartan Maraas <kmaraas at gnome org>
1816 * docs/design/part-MT-refcounting.txt:
1817 * docs/random/wtay/capsnego2-docs:
1820 Typo fixes (#366212).
1822 2006-10-28 Wim Taymans <wim@fluendo.com>
1824 Patch by: Sergey Scobich <sergey dot scobich at gmail dot com>
1827 * win32/common/libgstbase.def:
1828 * win32/common/libgstreamer.def:
1829 * win32/vs8/libgstbase.vcproj:
1830 * win32/vs8/libgstcontroller.vcproj:
1831 Add needed entries in .def files.
1833 Rearrange def files in vs8 solutions. Fixes #366286.
1835 2006-10-28 Tim-Philipp Müller <tim at centricular dot net>
1837 * win32/common/gstconfig.h:
1838 Add GST_SEGMENT_FORMAT and GST_USING_PRINTF_EXTENSION to the
1839 hand-made win32 gstconfig.h. Fixes #366321.
1841 2006-10-27 Wim Taymans <wim@fluendo.com>
1843 * gst/gstghostpad.c: (gst_proxy_pad_do_acceptcaps),
1844 (gst_ghost_pad_new_full):
1845 Make acceptcaps return TRUE when we don't have a target, just like
1848 2006-10-27 Wim Taymans <wim@fluendo.com>
1850 * libs/gst/base/gstbasetransform.c: (gst_base_transform_chain):
1851 Revert previous commit, 0 sized buffers are allowed. Reopens #363095.
1853 2006-10-26 Tim-Philipp Müller <tim at centricular dot net>
1855 * gst/gststructure.c: (gst_structure_id_set_value):
1856 If someone tries to set a non-UTF8 string field on a structure,
1857 don't just print a warning, but also ignore the request and do
1858 not change/add that field to the structure.
1860 * tests/check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
1863 2006-10-25 David Schleef <ds@schleef.org>
1866 g_hash_table_insert() needs a cast to a non-const pointer duh.
1868 2006-10-25 David Schleef <ds@schleef.org>
1872 Change name parameter of _gst_debug_register_funcptr to const
1873 to reflect the constness of its use in the function as well
1874 as to quiet a gcc warning.
1876 2006-10-25 Edward Hervey <edward@fluendo.com>
1878 * libs/gst/base/gstbasetransform.c: (gst_base_transform_chain):
1879 Don't push the buffer if it's empty.
1882 2006-10-24 Wim Taymans <wim@fluendo.com>
1887 * libs/gst/base/gstbasetransform.c:
1888 (gst_base_transform_sink_eventfunc):
1889 Debug segment values *after* updating them as this is more
1892 2006-10-23 Wim Taymans <wim@fluendo.com>
1894 * docs/design/part-events.txt:
1897 * docs/design/part-block.txt:
1898 * gst/gstpad.c: (gst_pad_is_blocking), (handle_pad_block),
1899 (gst_pad_push_event):
1900 Revert BLOCKING patch, it tries to be smart without really having a
1901 clear idea what or how. So, now we discard all FLUSHING events again on
1902 a blocking pad. Should fix gnonlin again.
1904 2006-10-23 Wim Taymans <wim@fluendo.com>
1906 Patch by: Sergey Scobich <sergey dot scobich at gmail dot com>
1908 * libs/gst/base/gstbasesrc.c: (gst_base_src_wait_playing),
1909 (gst_base_src_start), (gst_base_src_activate_push):
1910 Make sure size is always initialized. Fixes #364388.
1912 2006-10-20 Stefan Kost <ensonic@users.sf.net>
1914 * docs/random/ensonic/distributed.txt:
1915 add some ideas about doing distributed processing
1917 * docs/random/ensonic/profiling.txt:
1918 get_rusage look promising
1920 2006-10-18 Stefan Kost <ensonic@users.sf.net>
1922 * docs/manual/basics-helloworld.xml:
1923 Add a cast in example to fix compile warning
1925 2006-10-18 Wim Taymans <wim@fluendo.com>
1927 * gst/gstsegment.c: (gst_segment_set_last_stop),
1928 (gst_segment_set_seek), (gst_segment_set_newsegment_full):
1929 Relax arg checking again, -1 is allowed.
1931 2006-10-18 Wim Taymans <wim@fluendo.com>
1933 * gst/gstsegment.c: (gst_segment_set_last_stop),
1934 (gst_segment_set_seek), (gst_segment_set_newsegment_full):
1935 _set_last_stop() must be with a value != -1
1936 A _TYPE_SET to -1 means seek to 0.
1937 Calc last_stop correctly for negative rates.
1938 Make sure we work with positive durations when updating a segment.
1940 2006-10-18 Wim Taymans <wim@fluendo.com>
1942 * docs/design/part-live-source.txt:
1946 2006-10-18 Tim-Philipp Müller <tim at centricular dot net>
1949 Add an explicit cast to GstBuffer** to keep old code that added an
1950 explicit cast to GstMiniObject** for gst_mini_object_replace()
1951 compiling without warning.
1953 2006-10-18 Stefan Kost <ensonic@users.sf.net>
1955 * gst/gstvalue.c: (gst_value_set_date), (gst_date_copy):
1956 check for validity of dates
1958 2006-10-17 Tim-Philipp Müller <tim at centricular dot net>
1960 * docs/gst/gstreamer-sections.txt:
1961 Forgot this one, makes gtk-doc shut up.
1963 2006-10-17 Tim-Philipp Müller <tim at centricular dot net>
1965 Patch by: Peter Kjellerstedt <pkj at axis com>
1968 Don't define xmlNodePtr to gpointer if the core was built with
1969 --disable-loadsave and --disable-registry, this will break
1970 applications that want to use libxml2 but are buildling against a
1971 core that doesn't use libxml2. Use an intermediary type GstXmlNodePtr
1972 instead so we don't have to mess with the libxml2 namespace
1975 2006-10-17 Tim-Philipp Müller <tim at centricular dot net>
1978 Fix gst_buffer_replace() macro to avoid gst_mini_object_replace()-related
1979 type-punned pointer warnings.
1981 2006-10-16 Tim-Philipp Müller <tim at centricular dot net>
1984 Add casts to the correct return type to state <=> state transition
1987 2006-10-16 Stefan Kost <ensonic@users.sf.net>
1989 * docs/design/part-live-source.txt:
1990 describe howto handle latency
1992 * docs/random/ensonic/profiling.txt:
1995 * tools/gst-plot-timeline.py:
1996 fix log parsing for solaris, remove unused function
1998 2006-10-16 Wim Taymans <wim@fluendo.com>
2000 * docs/design/part-trickmodes.txt:
2002 Update some docs regarding reverse playback.
2004 2006-10-15 Tim-Philipp Müller <tim at centricular dot net>
2006 Patch by: Marcus Granado <mrc dot gran at gmail com>
2008 * win32/vs8/grammar.vcproj:
2009 Error out with a warning if glib-genmarshal.exe is not in path,
2010 instead of creating bogus gstmarshal.[ch] files. Fixes #361720.
2012 2006-10-13 Wim Taymans <wim@fluendo.com>
2014 * gst/gstsegment.c: (gst_segment_set_seek):
2015 When seeking to stop -1, set last_stop (current position) to the
2016 duration of the segment.
2018 2006-10-13 Wim Taymans <wim@fluendo.com>
2021 Clarify _NO_PREROLL a bit more.
2026 * gst/gstpad.c: (gst_pad_link_check_hierarchy),
2027 (gst_pad_get_caps_unlocked), (gst_pad_save_thyself),
2028 (handle_pad_block), (gst_pad_push_event), (gst_pad_send_event):
2029 Patch by: Yves Lefebvre <ivanohe at abacom dot com> Fix possible deadlock
2030 due to wrong locking order. Fixes #361769.
2031 Remove some redundant/misplaced checks in pad_block.
2033 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_position):
2034 For negative rates, count backwards from the duration.
2036 2006-10-13 Tim-Philipp Müller <tim at centricular dot net>
2038 * gst/gsterror.c: (_gst_library_errors_init):
2039 Fix error message for GST_LIBRARY_ERROR_SETTINGS (feel free to come
2040 up with something better).
2042 2006-10-12 Tim-Philipp Müller <tim at centricular dot net>
2044 * win32/vs6/libgstreamer.dsp:
2045 * win32/vs7/libgstreamer.vcproj:
2046 * win32/vs8/libgstreamer.vcproj:
2047 Don't reference glib-compat.c which is currently not used and not
2048 disted; add gstquark.c which was recently added. Fixes #361730.
2050 2006-10-12 Tim-Philipp Müller <tim at centricular dot net>
2052 * win32/common/libgstbase.def:
2053 * win32/common/libgstcontroller.def:
2054 * win32/common/libgstreamer.def:
2055 Add gst_caps_merge() and a bunch of other recently-added functions.
2058 2006-10-11 Wim Taymans <wim@fluendo.com>
2060 * docs/plugins/gstreamer-plugins.args:
2061 * docs/plugins/inspect/plugin-coreelements.xml:
2062 * docs/plugins/inspect/plugin-coreindexers.xml:
2063 Update element args.
2065 * gst/gstsystemclock.c:
2066 Small comment update.
2068 * plugins/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
2069 (gst_tee_request_new_pad), (gst_tee_release_pad),
2070 (gst_tee_buffer_alloc), (gst_tee_sink_activate_push),
2071 (gst_tee_sink_activate_pull):
2072 * plugins/elements/gsttee.h:
2074 Add default property defines.
2075 Implement release pad function.
2076 Give properties better blubs etc.
2077 Activate pads before adding them to a running tee.
2078 Do simple buffer_alloc on the first requested pad.
2079 Post error when activation fails.
2081 2006-10-11 Tim-Philipp Müller <tim at centricular dot net>
2083 * gst/gst.c: (ensure_current_registry_forking):
2084 Check return value of write() to make compiler happy.
2086 2006-10-11 Wim Taymans <wim@fluendo.com>
2088 Patch by: Sjoerd Simons <sjoerd at luon dot net>
2090 * plugins/elements/gstqueue.c: (gst_queue_chain):
2091 Recheck queue filledness after signalling the overrun when we're about
2092 to leak downstream because we released the lock when emitting the signal
2093 and the queue could be empty again. Fixes #352345.
2095 2006-10-11 Tim-Philipp Müller <tim at centricular dot net>
2097 * libs/gst/controller/gstcontroller.c: (gst_controller_new_list):
2098 Fix refcounting here too, just like we did for _new_valist() a few
2099 days ago (#357180) (thanks to René Stadler). Also remove all those
2100 'Since: 0.9' from the gtk-doc blobs.
2102 * tests/check/libs/controller.c: (controller_refcount_new_list),
2103 (gst_controller_suite):
2104 Unit test for the above.
2106 2006-10-10 Wim Taymans <wim@fluendo.com>
2108 Patch by: Sebastien Cote <sebas642 at yahoo dot ca>
2110 * gst/gstpad.c: (gst_pad_get_caps_unlocked),
2111 (gst_pad_save_thyself):
2113 Write pad direction in XML output. Fixes #345496.
2115 2006-10-10 Wim Taymans <wim@fluendo.com>
2117 Patch by: René Stadler <mail at renestadler dot de>
2119 * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist),
2120 (gst_controller_new_list), (_gst_controller_dispose),
2121 (_gst_controller_finalize), (_gst_controller_class_init):
2122 Take ref to controlled object so that it cannot disappear.
2125 2006-10-10 Wim Taymans <wim@fluendo.com>
2127 * libs/gst/check/gstcheck.c: (gst_check_setup_src_pad),
2128 (gst_check_teardown_src_pad), (gst_check_setup_sink_pad),
2129 (gst_check_teardown_sink_pad):
2130 Activate/deactivate pads in setup/teardown respectively.
2132 2006-10-10 Zaheer Abbas Merali <zaheerabbas at merali dot org>
2134 Patch by: Josep Torre Valles <josep@fluendo.com>
2137 Cast values when making gstenumtypes.h. This pacifies Forte
2138 so it doesn't warn about the ~0 as GST_MESSAGE_ANY not fitting
2141 2006-10-09 Wim Taymans <wim@fluendo.com>
2143 * gst/gstevent.c: (gst_event_new_seek), (gst_event_parse_seek):
2144 Rename some more @cur to @start to fix docs.
2146 * gst/gstsegment.c: (gst_segment_set_seek):
2148 time and start must always stay in sync as defined in design doc.
2150 * gst/gsttaglist.c: (gst_tag_list_is_empty):
2151 Rename param to fix docs.
2153 * tests/check/gst/gstsegment.c: (GST_START_TEST):
2154 Check that start and time are in sync.
2156 * tests/check/pipelines/parse-launch.c:
2157 (gst_parse_test_element_change_state):
2158 Activate pad before adding to the element.
2160 2006-10-09 Wim Taymans <wim@fluendo.com>
2162 * docs/design/part-qos.txt:
2167 Update seek event docs regarding negative rates.
2168 Rename @cur to @start.
2170 * gst/gstsegment.c: (gst_segment_set_seek):
2172 Update set_seek docs regarding negative rates.
2173 Correctly update last_stop to @stop when dealing with negative
2175 Rename @cur to @start.
2177 * tests/check/gst/gstpad.c: (GST_START_TEST):
2178 Activate pads before trying to use them.
2180 * tests/check/gst/gstsegment.c: (GST_START_TEST),
2181 (gst_segment_suite):
2182 Add simple check for segments and negative rates.
2184 2006-10-09 Tim-Philipp Müller <tim at centricular dot net>
2186 * gst/gsttaglist.c: (gst_tag_list_is_empty):
2188 * docs/gst/gstreamer-sections.txt:
2189 API: add gst_tag_list_is_empty() (#360467).
2191 * tests/check/gst/gsttag.c: (GST_START_TEST):
2194 2006-10-09 Zaheer Abbas Merali <zaheerabbas at merali dot org>
2197 Revert change from earlier wrt GST_MESSAGE_TYPE_ANY having
2198 a value that doesn't fit on enumeration.
2200 2006-10-09 Zaheer Abbas Merali <zaheerabbas at merali dot org>
2202 * libs/gst/net/gstnetclientclock.c: (gst_net_client_clock_thread):
2203 Remove local debugging system and use Gstreamer's instead.
2205 2006-10-09 Zaheer Abbas Merali <zaheerabbas at merali dot org>
2207 Patch by: Josep Torre Valles <josep@fluendo.com>
2209 * common/m4/gst-error.m4:
2210 Disable warning of statement not reached on Forte.
2212 Fix warning on Forte (value doesn't fit on enumeration).
2213 * libs/gst/base/gstbasesink.c: (gst_base_sink_chain_unlocked):
2214 Fix warning on Forte (value doesn't fit on enumeration).
2215 * libs/gst/net/gstnetclientclock.c: (gst_net_client_clock_thread):
2216 DEBUG macro says it takes minimum of 2 args and so Forte
2217 complains about the use with just 1 arg.
2218 * plugins/elements/gstfdsink.c:
2219 * plugins/elements/gstfdsrc.c:
2220 * plugins/elements/gstfilesink.c:
2221 * plugins/elements/gstfilesrc.c:
2222 Use correct return type for the uri handler implementations.
2224 All these fix warnings in Forte. Fixes bug #360860.
2226 2006-10-08 Tim-Philipp Müller <tim at centricular dot net>
2229 gcc versions prior to gcc 3.3 apparently complain about a NULL printf
2230 format string, so don't use G_GNUC_PRINTF for those versions.
2232 2006-10-07 Tim-Philipp Müller <tim at centricular dot net>
2234 * gst/gsttaglist.c: (gst_is_tag_list):
2236 Minor fixes to GST_IS_TAG_LIST and gst_is_tag_list().
2238 * tests/check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
2239 Small test for the above.
2241 2006-10-07 Tim-Philipp Müller <tim at centricular dot net>
2244 Less tabs, more spaces.
2246 2006-10-06 Tim-Philipp Müller <tim at centricular dot net>
2249 Those two function declarations do actually belong there, revert
2250 commit from yesterday that turned them intro macros.
2252 2006-10-06 Zaheer Abbas Merali <zaheerabbas at merali dot org>
2254 Patch by: Josep Torre Valles <josep@fluendo.com>
2256 * gst/gst.c: (gst_init_get_option_group):
2257 Fix empty declaration and type mismatch.
2258 * gst/gstbin.c: (gst_bin_change_state_func):
2260 * gst/gstelement.c: (gst_element_continue_state),
2261 (gst_element_set_state_func), (gst_element_change_state),
2262 (gst_element_change_state_func):
2263 Fix type mismatches.
2264 * gst/gstinfo.c: (gst_debug_compare_log_function_by_func),
2265 (gst_debug_remove_log_function), (_gst_debug_nameof_funcptr):
2266 Cast as appropriate.
2267 * gst/gstobject.c: (gst_class_signal_connect):
2268 Cast as appropriate. The function pointer parameter really
2269 has the wrong type but would break API if we change it.
2271 Fix redefinition of _FILE_OFFSET_BITS caused on Solaris wrt
2272 order of including string.h.
2273 * gst/gstutils.c: (gst_element_state_get_name):
2274 Remove unreachable line.
2275 * gst/gstxml.c: (gst_xml_parse_doc):
2277 All these caught by Forte.
2279 2006-10-06 Zaheer Abbas Merali <zaheerabbas at merali dot org>
2281 Patch by: Josep Torre Valles <josep@fluendo.com>
2283 * common/m4/gst-error.m4:
2285 We need to disable warnings on Forte for empty declarations
2286 due to gst-indent adding ;s to lines that just use macros
2287 where the macro actually doesn't need a ; at end to end
2290 2006-10-06 Wim Taymans <wim@fluendo.com>
2292 * plugins/elements/gstfilesink.c: (gst_file_sink_open_file),
2293 (gst_file_sink_close_file), (gst_file_sink_event),
2294 (gst_file_sink_render):
2295 Add some FIXME for the NEWSEGMENT handling.
2297 2006-10-05 Zaheer Abbas Merali <zaheerabbas at merali dot org>
2299 * gst/parse/grammar.y:
2300 Remove static function gst_parse_element_lock as all it does
2301 is return. Looks like cruft from 0.8.
2303 2006-10-05 Zaheer Abbas Merali <zaheerabbas at merali dot org>
2305 Patch by: Josep Torre Valles <josep@fluendo.com>
2307 * common/m4/gst-error.m4:
2309 * libs/gst/net/Makefile.am:
2310 Fix a compilation issue with Forte on Solaris. inet_aton is in
2313 2006-10-05 Tim-Philipp Müller <tim at centricular dot net>
2315 * gst/gstpad.c: (pre_activate):
2316 * gst/gstregistry.c: (gst_registry_scan_path_level):
2317 * gst/gstregistryxml.c: (load_plugin):
2318 * libs/gst/controller/gstcontroller.c:
2319 (gst_controlled_property_set_interpolation_mode):
2320 * libs/gst/dataprotocol/dataprotocol.c:
2321 (gst_dp_packet_from_event_1_0):
2322 * libs/gst/net/gstnetclientclock.c:
2323 (gst_net_client_clock_observe_times):
2324 * plugins/elements/gstfdsrc.c: (gst_fd_src_create):
2327 2006-10-05 Tim-Philipp Müller <tim at centricular dot net>
2330 * docs/gst/gstreamer-sections.txt:
2331 * gst/gstconfig.h.in:
2334 Add GST_USING_PRINTF_EXTENSION to gstconfig.h so that we know
2335 whether we can use G_GNUC_PRINTF in other header files and at
2336 least check the printf format/arguments of debug messages and
2337 GST_ELEMENT_ERROR messages when the printf extension is not
2339 Replace more tabs with spaces in gstinfo.h and remove two spurious
2340 function declarations in GST_DISABLE_DEBUG part with macros.
2342 2006-10-03 Tim-Philipp Müller <tim at centricular dot net>
2344 * gst/gstbus.c: (gst_bus_class_init), (gst_bus_post):
2345 More docs for the sync-message signal (mention that it is not
2346 emitted by default); log message structures of messages posted on
2349 2006-10-03 Jan Schmidt <thaytan@mad.scientist.com>
2351 * gst/gst.c: (ensure_current_registry_forking):
2352 Use a pipe pair to receive status results from the forked child, and
2353 ignore the result from waitpid. Fixes #355499
2355 2006-10-02 Wim Taymans <wim@fluendo.com>
2357 * tests/check/gst/gstghostpad.c: (GST_START_TEST),
2358 (gst_ghost_pad_suite):
2361 2006-10-02 Tim-Philipp Müller <tim at centricular dot net>
2364 Add 'Since: 0.10.11' to gst_pad_is_blocking() gtk-doc blurb.
2366 2006-10-02 Edward Hervey <edward@fluendo.com>
2368 * docs/design/part-block.txt:
2369 Further explain the use of flushing on blocked pads.
2370 * docs/gst/gstreamer-sections.txt:
2371 * gst/gstpad.c: (gst_pad_is_blocking), (handle_pad_block),
2372 (gst_pad_push_event):
2374 Added new GstPadFlag : GST_PAD_BLOCKING.
2375 Adds the notion of pads really blocking, which enables to properly
2376 handle FLUSH_START/FLUSH_STOP events on blocked pads.
2378 API: gst_pad_is_blocking()
2379 API: GST_PAD_IS_BLOCKING() macro
2380 API: GST_PAD_BLOCKING GstPadFlag
2382 2006-10-02 Wim Taymans <wim@fluendo.com>
2384 Patch by: mrcgran <mrc.gran at gmail dot com>
2386 * gst/gstghostpad.c: (gst_proxy_pad_do_getcaps):
2387 Filter the proxied caps against the padtemplate if we have one.
2389 * gst/gstquery.c: (gst_query_new_segment):
2390 Add include for gstinfo.h so that compilation with
2391 -DGST_DISABLE_GST_DEBUG works again. Fixes #358436.
2393 2006-10-02 Wim Taymans <wim@fluendo.com>
2395 Patch by: Alessandro Decina <alessandro at nnva org>
2397 * plugins/elements/gstfilesink.c: (gst_file_sink_init),
2398 (gst_file_sink_set_location), (gst_file_sink_open_file),
2399 (gst_file_sink_close_file), (gst_file_sink_event),
2400 (gst_file_sink_render):
2401 Set file to NULL when closing filesink so that we can set a new filename
2402 in READY. Fixes #358613.
2404 2006-10-02 Tim-Philipp Müller <tim at centricular dot net>
2406 Patch by: Alessandro Decina <alessandro at nnva org>
2408 * gst/gstevent.c: (_gst_event_copy):
2409 Fix gst_mini_object_make_writable() and gst_event_copy() for events
2410 with event structures by setting the parent refcount address of the
2411 copied structure to the address of the refcount member of the newly
2412 copied event rather than the address of the refcount member of the
2413 original event. Fixes #358737.
2415 * tests/check/gst/gstevent.c: (GST_START_TEST):
2416 Unit test for the above.
2418 2006-09-29 Stefan Kost <ensonic@users.sf.net>
2420 * docs/design/Makefile.am:
2421 Dist some more files.
2423 2006-09-29 Tim-Philipp Müller <tim at centricular dot net>
2425 * tests/check/libs/controller.c: (GST_START_TEST),
2426 (gst_controller_suite):
2427 Add test for the previous fix; add some more tests
2428 for correct refcounting behaviour; fix a few leaks
2429 in test cases; call gst_controller_init() at start
2432 2006-09-29 Tim-Philipp Müller <tim at centricular dot net>
2434 * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist),
2435 (gst_controller_set_from_list):
2436 Don't g_return_val_if_fail() on timed values with invalid timestamps
2437 inside a critical section without unlocking the mutex. Spotted by
2438 René Stadler. (#357617)
2439 Also, fix up refcounting properly: when returning an existing
2440 controller, we should increase the reference only once and not
2441 once per property and when trying to control a property again
2442 we should also increase the refcount.
2444 2006-09-29 Wim Taymans <wim@fluendo.com>
2446 * libs/gst/net/gstnetclientclock.c: (gst_net_client_clock_thread):
2447 * libs/gst/net/gstnettimeprovider.c:
2448 (gst_net_time_provider_thread):
2449 Stop reading commands when EOF as well.
2451 * plugins/elements/gstfakesink.c: (gst_fake_sink_class_init):
2452 * plugins/elements/gstfakesrc.c: (gst_fake_src_class_init):
2453 * plugins/elements/gstidentity.c: (gst_identity_class_init):
2454 Unify description of the dump property.
2456 2006-09-28 Jan Schmidt <thaytan@mad.scientist.com>
2458 * tests/examples/manual/.cvsignore:
2459 OK, so it's actually cvsignore that needs changing. Stop laughing.
2461 2006-09-28 Jan Schmidt <thaytan@mad.scientist.com>
2463 * tests/examples/manual/Makefile.am:
2464 Gah, declare vars *before* using them
2466 2006-09-28 Jan Schmidt <thaytan@mad.scientist.com>
2468 * gst/gst.c: (init_pre), (scan_and_update_registry),
2469 (ensure_current_registry_nonforking),
2470 (ensure_current_registry_forking), (ensure_current_registry),
2471 (init_post), (gst_debug_help), (gst_deinit):
2472 * gst/gst_private.h:
2473 * gst/gstregistry.c: (gst_registry_finalize),
2474 (gst_registry_remove_features_for_plugin_unlocked),
2475 (gst_registry_remove_plugin), (gst_registry_scan_path_level),
2476 (gst_registry_scan_path),
2477 (_priv_gst_registry_remove_cache_plugins),
2478 (_priv_gst_registry_cleanup):
2479 * gst/gstregistry.h:
2480 Re-commit the registry changes, along with an extra fix:
2481 When a cached plugin is encountered at a different file path,
2482 update the stored path in the registry cache so that the parent
2483 process knows where it actually is now when it re-reads the registry
2484 cache. Fixes the thing that broke distcheck with the previous commit.
2486 * tests/check/Makefile.am:
2487 Clean up files named 'core' too when running make clean.
2489 * tests/examples/manual/Makefile.am:
2490 Set up a registry path for running these tests, and clean it properly
2493 2006-09-28 Jan Schmidt <thaytan@mad.scientist.com>
2496 Don't pull in gmodule-2.0.pc as a dependency in our .pc files - we
2497 want gmodule-no-export-2.0.pc instead so that we don't drag in
2498 --export-dynamic on every project that links to GStreamer.
2500 Also, make our export regex only match the start of symbols, rather
2501 than any symbol that contains '_gst' somewhere.
2503 * libs/gst/check/Makefile.am:
2504 The libgstcheck we build does however need export-dynamic, as it
2505 produces some symbols that don't match our _gst... style regex.
2508 2006-09-27 Jan Schmidt <thaytan@mad.scientist.com>
2510 * gst/gst.c: (init_pre), (scan_and_update_registry),
2511 (ensure_current_registry_nonforking),
2512 (ensure_current_registry_forking), (ensure_current_registry),
2513 (init_post), (gst_debug_help), (gst_deinit):
2514 * gst/gst_private.h:
2515 * gst/gstregistry.c: (gst_registry_finalize),
2516 (gst_registry_remove_plugin), (gst_registry_scan_path_level),
2517 (gst_registry_scan_path), (_gst_registry_remove_cache_plugins),
2518 (_gst_registry_cleanup):
2519 * gst/gstregistry.h:
2520 Revert previous change until I figure out why it breaks distcheck.
2522 2006-09-27 Jan Schmidt <thaytan@mad.scientist.com>
2524 * gst/gst.c: (init_pre), (scan_and_update_registry),
2525 (ensure_current_registry_nonforking),
2526 (ensure_current_registry_forking), (ensure_current_registry),
2527 (init_post), (gst_debug_help), (gst_deinit):
2529 Make init_pre and init_post take the full complement of GOptionFunc
2530 args so they can return useful GErrors. Make the registry updating
2533 Call _priv_gst_registry_remove_cache_plugins after scanning files to
2534 ensure that the registry we're about to write out doesn't contain
2535 stale information about old-deleted plugin files.
2537 Make _priv_gst_registry_remove_cache_plugins return a boolean so
2538 that deletion of plugin files is considered a registry change.
2540 * gst/gst_private.h:
2541 * gst/gstregistry.c: (gst_registry_finalize),
2542 (gst_registry_remove_features_for_plugin_unlocked),
2543 (gst_registry_remove_plugin), (gst_registry_scan_path_level),
2544 (gst_registry_scan_path),
2545 (_priv_gst_registry_remove_cache_plugins),
2546 (_priv_gst_registry_cleanup):
2547 * gst/gstregistry.h:
2548 Rename _gst_registry_remove_cache_plugins and _gst_registry_cleanup
2549 by adding _priv prefix, so that they won't appear in the global
2550 symbol table. They still do atm though because of #318031. Move the
2551 prototypes to gst_private.h
2553 When removing a plugin, remove all features for that plugin too.
2556 2006-09-27 Wim Taymans <wim@fluendo.com>
2558 * docs/random/moving-plugins:
2559 Make it clear that the "compiled-in descriptions" really mean
2560 the element details.
2562 * libs/gst/base/gstbasesink.c: (gst_base_sink_commit_state),
2563 (gst_base_sink_wait_preroll):
2566 * docs/libs/gstreamer-libs-sections.txt:
2567 * libs/gst/base/gstbasesrc.c: (gst_base_src_wait_playing),
2568 (gst_base_src_get_range), (gst_base_src_activate_push):
2569 * libs/gst/base/gstbasesrc.h:
2570 Added function to block while waiting for PLAYING, this function
2571 is used by live sources that block on the clock.
2572 API: gst_base_src_wait_playing()
2574 2006-09-27 Tim-Philipp Müller <tim at centricular dot net>
2576 Patch by: Peter Kjellerstedt <pkj at axis com>
2579 gst-element-check.m4 is generated and should therefore be
2580 copied from the build dir rather than the source dir (#357593).
2581 'make distcheck' hasn't noticed this because we were disting
2582 the file as well, so stop doing that.
2584 2006-09-27 Tim-Philipp Müller <tim at centricular dot net>
2586 * tests/check/gst/gstcaps.c: (GST_START_TEST), (gst_caps_suite):
2587 Add some tests for gst_caps_intersect().
2589 * tools/gst-launch.c: (event_loop):
2590 Print all buffering percentages we get, even the 100% one.
2592 2006-09-26 Wim Taymans <wim@fluendo.com>
2594 * tools/gst-inspect.c: (print_element_properties_info),
2595 (print_signal_info):
2596 Fix printing of flags to match the look of enums.
2598 2006-09-25 Tim-Philipp Müller <tim at centricular dot net>
2600 * gst/gstelementfactory.c:
2601 Fix typo in docs blurb.
2603 2006-09-25 Tim-Philipp Müller <tim at centricular dot net>
2605 * gst/gsturi.c: (search_by_entry):
2606 Don't assert/crash here if a uri handler doesn't return any
2607 supported protocols. The list of protocols could be generated
2608 dynamically at runtime or at plugin registration, and an error
2609 in the underlying library shouldn't be fatal (#353301).
2611 2006-09-25 Tim-Philipp Müller <tim at centricular dot net>
2614 Fix warning if HAVE_PRINTF_EXTENSION is undefined
2615 (spotted by Peter Kjellerstedt).
2617 2006-09-23 Wim Taymans <wim@fluendo.com>
2619 Based on patch by: Antoine Tremblay <hexa00 at gmail dot com>
2621 * libs/gst/base/gstbasesrc.c:
2622 (gst_base_src_default_check_get_range), (gst_base_src_start),
2623 (gst_base_src_activate_push), (gst_base_src_activate_pull),
2624 (gst_base_src_change_state):
2625 Match _start/_stop calls in the activate functions. Remove redundant
2626 _stop call from the state change function. Fixes #356910.
2627 Turn failure DEBUG into ERROR.
2629 2006-09-22 Wim Taymans <wim@fluendo.com>
2631 * docs/design/part-buffering.txt:
2632 * gst/gstmessage.c: (gst_message_new_buffering),
2633 (gst_message_parse_buffering):
2634 Update docs about buffering.
2636 * docs/design/part-trickmodes.txt:
2639 2006-09-22 Stefan Kost <ensonic@users.sf.net>
2641 * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist),
2642 (gst_controller_new_list):
2643 Ref instances when returning them again (fixes #357180)
2645 2006-09-22 Tim-Philipp Müller <tim at centricular dot net>
2647 * gst/gstghostpad.c: (gst_ghost_pad_set_target):
2648 Don't forget to release proxy lock when there's an error.
2650 2006-09-20 Jan Schmidt <thaytan@mad.scientist.com>
2653 Add extra initialisers for Caps things, to fix some plugin warnings
2656 2006-09-18 Wim Taymans <wim@fluendo.com>
2658 * gst/gstghostpad.c: (gst_ghost_pad_new_full):
2659 Also set template on the internal pad so that a getcaps from the
2660 target pad returns the template caps.
2662 2006-09-18 Wim Taymans <wim@fluendo.com>
2664 * gst/gstelement.c: (gst_element_post_message),
2665 (gst_element_dispose):
2666 Use _DEBUG_OBJECT some more.
2668 * libs/gst/base/gstbasesrc.c: (gst_base_src_loop):
2671 * tools/gst-launch.c: (main):
2672 If the toplevel element is not a GstPipeline, it must be put in a
2673 pipeline so that a bus and clock is selected.
2675 2006-09-17 Tim-Philipp Müller <tim at centricular dot net>
2677 * libs/gst/base/gstbasesrc.c: (gst_base_src_default_query):
2678 JITTER, RATE, and LATENCY query should be handled by the
2679 default case and not by the CONVERT query code.
2681 2006-09-17 Tim-Philipp Müller <tim at centricular dot net>
2683 * gst/gstformat.c: (gst_format_register):
2684 Fix locking order (must take lock before using n_values).
2686 * gst/gstvalue.c: (gst_value_serialize_enum),
2687 (gst_value_deserialize_enum_iter_cmp),
2688 (gst_value_deserialize_enum):
2689 Fix serialisation/deserialisation of custom registered GstFormats.
2691 * tests/check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
2692 Unit test for custom format serialisation/deserialisation.
2694 2006-09-17 Stefan Kost <ensonic@users.sf.net>
2696 * docs/pwg/building-boiler.xml:
2697 * plugins/elements/gstcapsfilter.c:
2698 More G_OBJECT macro fixing. Also Fix some details on the plugin-stamp
2701 2006-09-16 Edward Hervey <edward@fluendo.com>
2703 * libs/gst/base/gstbasetransform.c:
2704 (gst_base_transform_buffer_alloc):
2705 Check if requested caps are the same as the sinks caps IF
2706 ->have_same_caps is TRUE. If they are not, act as if have_same_caps
2708 This fixes the renegotiation issues stated in #352827.
2710 2006-09-16 Thomas Vander Stichele <thomas at apestaart dot org>
2713 * docs/manual/advanced-autoplugging.xml:
2714 * tests/examples/Makefile.am:
2715 * tests/examples/manual/.cvsignore:
2716 * tests/examples/manual/Makefile.am:
2717 * tests/examples/manual/extract.pl:
2718 Extract the manual examples again like we used to do.
2721 2006-09-16 Thomas Vander Stichele <thomas at apestaart dot org>
2723 * win32/common/config.h:
2726 2006-09-16 Stefan Kost <ensonic@users.sf.net>
2729 Documents how to receive errors.
2731 2006-09-15 Wim Taymans <wim@fluendo.com>
2733 * tools/gst-launch.c: (sigint_handler_sighandler), (check_intr),
2734 (event_loop), (main):
2735 Added some comments here and there.
2736 Post an application message when an interrupt is caught instead of doing
2737 an uncontrolled state change.
2738 Clean up the event loop.
2739 Handle buffering messages, pause/resume the pipeline.
2740 Make shutdown because of an interrupt more reliable.
2742 2006-09-15 Wim Taymans <wim@fluendo.com>
2744 * libs/gst/base/gstbasesink.c: (gst_base_sink_commit_state),
2745 (gst_base_sink_wait_preroll), (gst_base_sink_do_sync),
2746 (gst_base_sink_preroll_object):
2747 Make sure that our internal state is correct when we commit our state
2748 asynchronously. This solves a race where a state change to PLAYING
2749 could cause the sink to remain blocked in preroll in some situations.
2751 2006-09-15 Wim Taymans <wim@fluendo.com>
2753 * tools/gst-inspect.c: (print_element_properties_info),
2754 (print_signal_info):
2755 List flags as hex so it's easier to deal with.
2757 2006-09-15 Wim Taymans <wim@fluendo.com>
2759 * docs/libs/gstreamer-libs-sections.txt:
2760 * libs/gst/base/gstbasesink.c: (gst_base_sink_wait_preroll),
2761 (gst_base_sink_do_sync):
2762 * libs/gst/base/gstbasesink.h:
2763 Expose logic to wait for preroll so that subclasses such as audiosink
2764 can also use this method.
2765 API: gst_base_sink_wait_preroll()
2767 2006-09-15 Wim Taymans <wim@fluendo.com>
2769 * gst/gstobject.c: (gst_object_set_parent):
2770 * gst/gstpipeline.c: (do_pipeline_seek):
2771 Small cleanups in docs and code.
2773 * gst/gstsegment.c: (gst_segment_clip):
2774 * tests/check/gst/gstsegment.c: (GST_START_TEST):
2775 if stop == start and start is in the segment, no clipping should be
2776 done. Also add a test for this.
2778 2006-09-15 Wim Taymans <wim@fluendo.com>
2780 * docs/design/part-buffering.txt:
2781 * docs/gst/gstreamer-sections.txt:
2782 * gst/gstmessage.c: (gst_message_new_buffering),
2783 (gst_message_parse_buffering):
2785 Added methods to create and parse BUFFERING messages.
2786 Added preliminary docs about buffering.
2787 API: gst_message_new_buffering
2788 API: gst_message_parse_buffering
2790 2006-09-06 Wim Taymans <wim@fluendo.com>
2793 Update documentation.
2795 * gst/gstelement.c: (gst_element_class_init),
2796 (gst_element_release_request_pad), (gst_element_set_clock),
2797 (gst_element_get_index), (gst_element_add_pad),
2798 (gst_element_remove_pad), (gst_element_get_random_pad),
2799 (gst_element_send_event), (gst_element_get_query_types),
2800 (gst_element_query), (gst_element_post_message),
2801 (gst_element_message_full), (gst_element_continue_state),
2802 (gst_element_lost_state), (gst_element_save_thyself),
2803 (gst_element_restore_thyself):
2804 Documentation updates.
2805 Rename last bit of the new-pad -> pad-added signal rename.
2806 Fix the case where an element query would only work if the source
2808 Avoid some useless type checking in message handling.
2813 Documentation updates.
2815 2006-09-14 Thomas Vander Stichele <thomas at apestaart dot org>
2817 * plugins/elements/gstfdsrc.c: (gst_fd_src_update_fd):
2818 add an INFO line for when we actually update the fd
2820 2006-09-14 Thomas Vander Stichele <thomas at apestaart dot org>
2825 === release 0.10.10 ===
2827 2006-09-14 Thomas Vander Stichele <thomas at apestaart dot org>
2830 releasing 0.10.10, "Pais"
2832 2006-09-05 Tim-Philipp Müller <tim at centricular dot net>
2834 * docs/manual/advanced-position.xml:
2835 Fix typo in sample code.
2837 2006-09-05 Wim Taymans <wim@fluendo.com>
2839 * libs/gst/net/gstnetclientclock.c: (inet_aton),
2840 (gst_net_client_clock_init), (gst_net_client_clock_finalize),
2841 (gst_net_client_clock_do_select), (gst_net_client_clock_new):
2842 * libs/gst/net/gstnetclientclock.h:
2843 * libs/gst/net/gstnettimepacket.c: (gst_net_time_packet_send):
2844 * libs/gst/net/gstnettimepacket.h:
2845 * libs/gst/net/gstnettimeprovider.c: (inet_aton),
2846 (gst_net_time_provider_init), (gst_net_time_provider_finalize),
2847 (gst_net_time_provider_thread), (gst_net_time_provider_new):
2848 * libs/gst/net/gstnettimeprovider.h:
2849 Make stuff compile on windows. Fixes #345295.
2851 2006-09-03 Tim-Philipp Müller <tim at centricular dot net>
2853 * gst/gst.c: (ensure_current_registry_forking):
2854 Print better details when child was terminated by signal.
2856 2006-09-03 Tim-Philipp Müller <tim at centricular dot net>
2858 * gst/gstregistryxml.c: (gst_registry_xml_save_feature):
2859 Print a warning rather than g_assert() if a plugin feature
2860 is a URI handler but returns no protocols (#353976).
2862 2006-09-02 Stefan Kost <ensonic@users.sf.net>
2864 * docs/random/moving-plugins:
2867 2006-09-01 Tim-Philipp Müller <tim at centricular dot net>
2869 * gst/gstinfo.c: (_gst_debug_nameof_funcptr):
2870 Fix locking order, handle NULL function values properly.
2875 * gst/gstpad.c: (gst_pad_buffer_alloc_unchecked):
2876 Initialise variable before using it and fix debug statement to
2877 print the address of the function rather than the address of the
2878 variable on the stack holding the address of the function.
2880 2006-09-01 Wim Taymans <wim@fluendo.com>
2882 * gst/gstghostpad.c: (gst_proxy_pad_do_event),
2883 (gst_proxy_pad_do_bufferalloc), (gst_proxy_pad_do_chain),
2884 (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
2885 (gst_proxy_pad_set_target_unlocked), (gst_ghost_pad_parent_set),
2886 (gst_ghost_pad_parent_unset),
2887 (gst_ghost_pad_internal_do_activate_push),
2888 (gst_ghost_pad_internal_do_activate_pull),
2889 (gst_ghost_pad_do_activate_push), (gst_ghost_pad_do_activate_pull),
2890 (gst_ghost_pad_do_link), (gst_ghost_pad_do_unlink),
2891 (gst_ghost_pad_init), (gst_ghost_pad_dispose),
2892 (gst_ghost_pad_new_full), (gst_ghost_pad_new_no_target),
2893 (gst_ghost_pad_new), (gst_ghost_pad_new_from_template),
2894 (gst_ghost_pad_new_no_target_from_template),
2895 (gst_ghost_pad_get_target), (gst_ghost_pad_set_target):
2897 Avoid needless typechecking in macros.
2898 Since the internal pad is always present and never changes, there is
2899 no need to locking or ref when retrieving it.
2900 Improve debugging a bit.
2901 Handle link errors when setting the target. Fixes #341029.
2903 2006-09-01 Wim Taymans <wim@fluendo.com>
2905 * docs/libs/gstreamer-libs-sections.txt:
2906 * docs/plugins/gstreamer-plugins-sections.txt:
2909 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_remove_pad),
2910 (gst_collect_pads_event):
2911 * libs/gst/base/gstcollectpads.h:
2912 Documentation updates.
2913 Free queued buffer when removing a pad.
2915 2006-08-31 Michael Smith <msmith@fluendo.com>
2917 * gst/gstutils.c: (gst_element_link_pads),
2918 (gst_element_link_pads_filtered):
2919 Ensure that we set a capsfilter to NULL if we failed to link it
2920 when doing filtered linking, to avoid criticals.
2922 No need to check for unreffing srcpad, which is explicly NULLed
2923 above (a trivial code cleanup).
2925 2006-08-31 Wim Taymans <wim@fluendo.com>
2927 * docs/design/part-gstghostpad.txt:
2928 Update ascii art in documentation.
2930 * gst/gstghostpad.c: (gst_proxy_pad_do_internal_link),
2931 (gst_proxy_pad_set_target_unlocked), (gst_proxy_pad_init),
2932 (gst_ghost_pad_parent_set), (gst_ghost_pad_parent_unset),
2933 (gst_ghost_pad_internal_do_activate_push),
2934 (gst_ghost_pad_internal_do_activate_pull),
2935 (gst_ghost_pad_do_activate_push), (gst_ghost_pad_do_activate_pull),
2936 (gst_ghost_pad_do_link), (gst_ghost_pad_do_unlink),
2937 (gst_ghost_pad_dispose), (gst_ghost_pad_new_full),
2938 (gst_ghost_pad_set_target):
2939 Small cleanups and leak fixes.
2940 Remove some checks now that the internal pad is never NULL.
2941 Fix the case where linking pads without a target would create nasty
2942 criticals. Fixes #341029.
2943 Don't assign a GstPadLinkReturn to a gboolean and mess up the return
2944 value of _set_target().
2946 * tests/check/gst/gstghostpad.c: (GST_START_TEST),
2947 (gst_ghost_pad_suite):
2948 Some more tests for creating and linking untargeted ghostpads.
2950 2006-08-31 Edward Hervey <edward@fluendo.com>
2952 * docs/gst/gstreamer-sections.txt:
2953 * gst/gstghostpad.c: (gst_proxy_pad_do_getcaps),
2954 (gst_proxy_pad_do_setcaps), (gst_proxy_pad_set_target_unlocked),
2955 (gst_proxy_pad_dispose), (gst_ghost_pad_new_full),
2956 (gst_ghost_pad_new_no_target), (gst_ghost_pad_new),
2957 (gst_ghost_pad_new_from_template),
2958 (gst_ghost_pad_new_no_target_from_template):
2959 * gst/gstghostpad.h:
2960 Refactored *_new() functions.
2961 Templates are now used as a g_object_new() parameter.
2962 Use template in _do_getcaps() if we don't have a target.
2963 Small documentation cleanups.
2964 Added two new constructors:
2965 gst_ghost_pad_new_from_template()
2966 gst_ghost_pad_new_no_target_from_template()
2967 * tests/check/gst/gstghostpad.c: (GST_START_TEST),
2968 (gst_ghost_pad_suite):
2969 Added tests for new ghostpad instanciation functions.
2971 API additions: gst_ghost_pad_new_from_template,
2972 gst_ghost_pad_new_no_target_from_template
2974 2006-08-30 Stefan Kost <ensonic@users.sf.net>
2976 * docs/random/ensonic/profiling.txt:
2977 Ideas about qos profiling.
2979 2006-08-29 Wim Taymans <wim@fluendo.com>
2981 * gst/gstcaps.c: (gst_caps_structure_is_subset_field):
2985 2006-08-29 Tim-Philipp Müller <tim at centricular dot net>
2988 Improve and detypofy docs.
2990 * tests/check/Makefile.am:
2991 * tests/check/gst/.cvsignore:
2992 * tests/check/gst/gstxml.c: (GST_START_TEST), (gst_xml_suite):
2993 Add a basic test suite for GstXML.
2995 2006-08-29 Wim Taymans <wim@fluendo.com>
2997 * gst/gstelement.c: (activate_pads), (clear_caps),
2998 (iterator_activate_fold_with_resync), (gst_element_pads_activate):
2999 Clear the pad caps when the element shut down all of the pads and
3000 is not streaming data that could modify the caps.
3003 2006-08-28 Michael Smith <msmith@fluendo.com>
3005 * plugins/elements/gstidentity.c: (gst_identity_transform_ip):
3006 Revert previous change; I misunderstood single-segment mode.
3008 2006-08-28 Michael Smith <msmith@fluendo.com>
3010 * plugins/elements/gstidentity.c: (gst_identity_transform_ip):
3011 Unset DISCONT on buffers when using single-segment mode.
3013 2006-08-28 Wim Taymans <wim@fluendo.com>
3015 * gst/gstcaps.c: (gst_caps_merge_structure):
3017 Fix docs and indentation again.
3019 * tests/check/gst/gstquery.c: (GST_START_TEST):
3020 Fix leak in tests and add some more tests.
3022 2006-08-28 Edward Hervey <edward@fluendo.com>
3024 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times):
3025 Inform GstSegment of the last stop position in order for the current
3026 segment to have a proper duration if it doesn't have a specific stop
3027 position from which a duration could be calculated.
3028 This bug was noticeable when a non-flushing, non-update new segment was
3029 followed by another segment (all buffers from the new segment were being
3032 2006-08-28 Wim Taymans <wim@fluendo.com>
3034 * libs/gst/base/gstbasesrc.c: (gst_base_src_perform_seek):
3035 Small comment update.
3037 * plugins/elements/gstidentity.c: (gst_identity_class_init),
3038 (gst_identity_transform_ip):
3039 Drop-probability is broken, mention this in the code with a
3040 FIXME and also in the property description.
3041 Make silent also be silent about the drop messages.
3043 2006-08-28 Tim-Philipp Müller <tim at centricular dot net>
3045 * docs/manual/appendix-win32.xml:
3046 Remove mention of popt, we don't depend on that any
3047 longer (#353136). Add some comments pointing out that
3048 this section is slightly outdated.
3050 2006-08-28 Wim Taymans <wim@fluendo.com>
3052 Patch by: Torsten Schoenfeld <kaffeetisch at gmx dot de>
3054 * gst/gstquery.c: (gst_query_new_segment):
3055 * tests/check/gst/gstquery.c: (GST_START_TEST):
3056 Initialize variables when creating a new segment query.
3059 2006-08-28 Wim Taymans <wim@fluendo.com>
3061 Patch by: Torsten Schoenfeld <kaffeetisch at gmx dot de>
3063 * gst/gstelement.c: (gst_element_get_bus):
3064 * tests/check/gst/gstelement.c: (GST_START_TEST):
3065 Check for NULL before _reffing the bus. Fixes #353122.
3067 2006-08-25 Tim-Philipp Müller <tim at centricular dot net>
3069 * docs/manual/basics-bus.xml:
3070 Docs update: fix wrong callback return value explanation; add
3071 some lines about the implicit relationship between main loop
3072 and main context; remove duplicate main loop variable declaration.
3074 2006-08-24 Tim-Philipp Müller <tim at centricular dot net>
3076 * tests/check/gst/gstcaps.c: (GST_START_TEST):
3077 Don't leak caps in unit test; add a few more simple
3080 2006-08-24 Stefan Kost <ensonic@users.sf.net>
3082 * docs/gst/gstreamer-sections.txt:
3083 * gst/gstcaps.c: (gst_caps_structure_is_subset_field),
3084 (gst_caps_structure_is_subset), (gst_caps_merge),
3085 (gst_caps_merge_structure):
3087 * libs/gst/base/gstbasetransform.c:
3088 (gst_base_transform_transform_caps):
3089 * tests/check/gst/gstcaps.c: (GST_START_TEST), (gst_caps_suite):
3090 implement caps merging (fixes #352580)
3092 2006-08-23 Stefan Kost <ensonic@users.sf.net>
3094 * tools/Makefile.am:
3095 * tools/gst-plot-timeline.py:
3096 add debug-log plotting developer tool (#340674)
3098 2006-08-23 Wim Taymans <wim@fluendo.com>
3100 * gst/gstpad.c: (gst_pad_start_task), (gst_pad_pause_task),
3101 (gst_pad_stop_task):
3102 Improve debugging for task functions.
3104 * gst/gsttask.c: (gst_task_func), (gst_task_set_lock),
3105 (gst_task_start), (gst_task_pause), (gst_task_join):
3106 Make sure that the task function started and finished after a
3108 Don't try to push the task function on the threadpool multiple
3110 Improve the g_warning message with some useful suggestions
3111 about how to fix the problem.
3113 2006-08-23 Wim Taymans <wim@fluendo.com>
3115 * gst/gstutils.c: (gst_pad_proxy_getcaps):
3116 Handle RESYNC correctly in _proxy_getcaps.
3118 2006-08-21 Tim-Philipp Müller <tim at centricular dot net>
3120 * gst/gstxml.c: (gst_xml_dispose), (gst_xml_parse_file),
3121 (gst_xml_parse_memory), (gst_xml_get_element):
3122 Chain up to parent class in dispose function and also
3123 unref the elements in the toplevel_elements GList.
3124 Don't leak XmlDocPtr in _parse_file() and _parse_memory().
3125 Always return a reference in gst_xml_get_element() rather
3126 than only sometimes.
3128 * tools/gst-launch.c: (xmllaunch_parse_cmdline):
3129 Don't leak GstXml object.
3131 2006-08-21 Stefan Kost <ensonic@users.sf.net>
3133 * docs/gst/gstreamer-sections.txt:
3134 * gst/gstcaps.c: (gst_structure_is_equal_foreach),
3137 * libs/gst/base/gstbasetransform.c:
3138 (gst_base_transform_transform_caps):
3139 API: Add gst_caps_merge() and use it in basetransform, fixes #345444
3142 2006-08-21 Edward Hervey <edward@fluendo.com>
3144 * gst/gstxml.c: (gst_xml_class_init), (gst_xml_dispose):
3145 Implement GObject::dispose virtual method in GstXML so we can free the
3148 2006-08-21 Wim Taymans <wim@fluendo.com>
3150 * gst/gstbuffer.c: (gst_buffer_make_metadata_writable),
3151 (gst_buffer_create_sub):
3152 Copy duration/offset_end/caps when creating a subbuffer of the
3154 Make the subbuffer read-only when we make the metadata writable for
3157 * tests/check/gst/gstbuffer.c: (GST_START_TEST):
3158 Added check for metadata copy when creating subbuffers.
3160 2006-08-21 Edward Hervey <edward@fluendo.com>
3162 * libs/gst/base/gstbasetransform.c:
3163 (gst_base_transform_buffer_alloc):
3164 Only call downstream buffer_alloc if transform element is passthrough
3165 or always_in_place. Closes #350449.
3167 2006-08-20 Stefan Kost <ensonic@users.sf.net>
3170 ChangeLog surgery to add comments to previous changes
3172 2006-08-20 Stefan Kost <ensonic@users.sf.net>
3177 * gst/gstpad.c: (gst_pad_set_active):
3178 Be more verbose in the log
3180 * libs/gst/base/gstbasetransform.c:
3181 (gst_base_transform_transform_caps):
3182 Simplify caps to get rid of duplicates, fixes #345444
3184 2006-08-20 Stefan Kost <ensonic@users.sf.net>
3188 Use these optimizations only internally.
3190 2006-08-20 Stefan Kost <ensonic@users.sf.net>
3192 * gst/gstvalue.c: (gst_value_compare_list),
3193 (gst_value_compare_fraction_range),
3194 (gst_value_intersect_fraction_fraction_range),
3195 (gst_value_intersect_fraction_range_fraction_range),
3196 (gst_value_subtract_fraction_fraction_range),
3197 (gst_value_subtract_fraction_range_fraction_range),
3198 (gst_value_get_compare_func), (gst_value_compare),
3199 (gst_value_compare_with_func):
3201 Saves the expensive lookup of the compare function in many cases
3204 2006-08-18 Edward Hervey <edward@fluendo.com>
3206 * tests/check/gst/gstinfo.c: (gst_info_suite):
3207 Disable test that require gstdebug if it wasn't built in core.
3209 2006-08-18 Stefan Kost <ensonic@users.sf.net>
3211 * docs/random/ensonic/logging.txt:
3214 * gst/gstinfo.c: (gst_debug_log_default):
3215 reorder fields, save some columns, add optional color codes for log
3218 2006-08-18 Stefan Kost <ensonic@users.sf.net>
3220 * docs/random/ensonic/logging.txt:
3221 add ideas about making the logs a bit more useful
3223 2006-08-17 Tim-Philipp Müller <tim at centricular dot net>
3225 * docs/pwg/advanced-events.xml:
3226 * docs/pwg/titlepage.xml:
3227 Update for 0.10 API (#340627). Add myself
3230 2006-08-17 Tim-Philipp Müller <tim at centricular dot net>
3232 * docs/libs/gstreamer-libs-docs.sgml:
3233 * docs/libs/gstreamer-libs-sections.txt:
3234 * libs/gst/check/gstbufferstraw.c:
3235 Make gstcheck stuff show up in docs (still needs to
3236 be documented properly though).
3238 2006-08-16 Jan Schmidt <thaytan@mad.scientist.com>
3240 * docs/gst/gstreamer-sections.txt:
3242 * gst/gst.c: (init_post):
3243 * gst/gst_private.h:
3244 * gst/gstquark.c: (_priv_gst_quarks_initialize):
3246 * gst/gstquery.c: (gst_query_new_position),
3247 (gst_query_set_position), (gst_query_parse_position),
3248 (gst_query_new_duration), (gst_query_set_duration),
3249 (gst_query_parse_duration), (gst_query_new_convert),
3250 (gst_query_set_convert), (gst_query_parse_convert),
3251 (gst_query_new_segment), (gst_query_set_segment),
3252 (gst_query_parse_segment), (gst_query_new_seeking),
3253 (gst_query_set_seeking), (gst_query_parse_seeking):
3254 Add internal helpers for pre-registering quarks from static strings
3255 and using the quark values directly instead of looking them up when
3256 creating and parsing queries. Can be used for event construction too.
3259 2006-08-16 Wim Taymans <wim@fluendo.com>
3264 2006-08-15 Tim-Philipp Müller <tim at centricular dot net>
3266 * gst/gstutils.c: (gst_util_set_value_from_string):
3267 Fix memleak (#351502).
3269 * tests/check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
3270 Add unit test for most of gst_util_set_value_from_string()
3271 (not that one would want to encourage use of this function).
3273 2006-08-15 Tim-Philipp Müller <tim at centricular dot net>
3275 * libs/gst/check/gstcheck.h:
3276 Use const gchar * variables in fail_unless_equals_string
3277 macro to avoid compiler warnings (and don't use tabs for
3280 2006-08-15 Tim-Philipp Müller <tim at centricular dot net>
3282 * tools/gst-launch.c: (print_tag):
3283 More space on the left for the tag names, to cater
3284 for the 'extended comment' tag (not touching the
3285 string for the first line since it's translated).
3287 2006-08-15 Tim-Philipp Müller <tim at centricular dot net>
3289 * libs/gst/check/gstcheck.h:
3290 Fix ASSERT_CRITICAL and ASSERT_WARNING macros to actually
3291 print something when they fail.
3293 2006-08-14 Tim-Philipp Müller <tim at centricular dot net>
3295 * docs/gst/gstreamer-sections.txt:
3296 * gst/gsttaglist.c: (_gst_tag_initialize):
3298 API: add GST_TAG_EXTENDED_COMMENT (#350935).
3299 Also change merge function for GST_TAG_COMMENT to
3302 2006-08-14 Tim-Philipp Müller <tim at centricular dot net>
3304 * gst/gstinfo.c: (gst_debug_print_object):
3305 Make GST_PTR_FORMAT print messages as well.
3307 * tests/check/gst/gstinfo.c: (printf_extension_log_func),
3308 (GST_START_TEST), (gst_info_suite):
3311 2006-08-14 Edward Hervey <edward@fluendo.com>
3313 * gst/gstelementfactory.c: (gst_element_register):
3314 If the GstElementClass doesn't have a GstElementDetails with all fields
3315 filled up correctly (longname, description AND author), then error out
3316 nicely instead of crashing.
3318 2006-08-14 Tim-Philipp Müller <tim at centricular dot net>
3320 * gst/gststructure.c:
3321 Fix typo in docs and re-wrap docs blurb to not exceed 80 chars/line.
3324 Expand on the difference between arrays and lists as we use them.
3326 2006-08-14 Wim Taymans <wim@fluendo.com>
3328 * libs/gst/base/gstbasesrc.c: (gst_base_src_change_state):
3329 If the parent state change function failed, don't assume we can safely
3330 stop the source, this will be done when the pads are deactivated.
3332 2006-08-14 Wim Taymans <wim@fluendo.com>
3335 * gst/gsttask.c: (gst_task_join):
3338 * gst/gstpad.c: (gst_pad_activate_pull), (gst_pad_activate_push),
3339 (gst_pad_stop_task):
3340 When pad (de)activation failed for some reason, restore the old
3341 activation mode and set the pad to flushing instead of assuming the
3343 If the _task_join() failed, reinstall the task on the pad so that it can
3344 be stopped later and return an error.
3346 2006-08-11 Andy Wingo <wingo@pobox.com>
3349 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packetizer_new):
3350 * tests/check/libs/gdp.c: (gst_dp_suite): GST_DISABLE_DEPRECATED
3351 is only for users of API that don't want to see deprecated
3352 functions in the headers; people that want to compile out
3353 deprecated code should pass -DGST_REMOVE_DEPRECATED into the
3354 CFLAGS. Fixes the build of multifdsink, or will soon..
3356 2006-08-11 Wim Taymans <wim@fluendo.com>
3358 * docs/gst/gstreamer-sections.txt:
3359 Add GstClockClass vmethod docs.
3362 Mark #endif with comment for associated #if
3364 * gst/gstclock.c: (gst_clock_id_wait):
3366 Add vmethod wait_jitter to avoid an unneeded _get_time() for
3367 most clock implementations.
3369 Flesh out docs about resolution methods.
3370 API: GstClockClass::wait_jitter
3372 * gst/gstsystemclock.c: (gst_system_clock_class_init),
3373 (gst_system_clock_async_thread),
3374 (gst_system_clock_id_wait_jitter_unlocked),
3375 (gst_system_clock_id_wait_jitter):
3376 Use base class wait_jitter variant for improved performance
3377 due to less clock polling.
3379 2006-08-11 Edward Hervey <edward@fluendo.com>
3381 * gst/gst.c: (gst_init_check), (init_post):
3382 Set gst as being initialized before scanning/updating the registry,
3383 since there might be my python plugin loader that calls gst_init() and
3384 we don't want to loop back in.
3387 2006-08-11 Wim Taymans <wim@fluendo.com>
3389 * docs/design/part-qos.txt:
3390 Bring docs in line with the code. Mostly the sign of the jitter was
3391 wrong in the docs. Fixes #349943.
3394 Fix the docs for the jitter.
3396 * gst/gstevent.c: (gst_event_new_custom), (gst_event_new_tag),
3397 (gst_event_parse_tag), (gst_event_new_buffer_size),
3398 (gst_event_parse_buffer_size), (gst_event_parse_qos),
3399 (gst_event_new_seek), (gst_event_parse_seek),
3400 (gst_event_new_navigation):
3401 Make sure the GstStructure has no parent when creating custom
3403 Add some more argument checking so that we avoid 0.0 rates.
3404 Flesh out the docs for the QoS event some more.
3406 2006-08-11 Wim Taymans <wim@fluendo.com>
3408 * docs/gst/gstreamer-sections.txt:
3409 * gst/gst.c: (gst_init_get_option_group), (gst_init_check),
3410 (ensure_current_registry_forking), (ensure_current_registry),
3411 (parse_one_option), (parse_goption_arg), (gst_deinit),
3412 (gst_registry_fork_is_enabled), (gst_registry_fork_set_enabled):
3415 Added API and command line option to disable registry forking in
3416 addition to the environment variable.
3417 Constify some static arrays.
3418 Added some more debug.
3420 API: gst_registry_fork_is_enabled()
3421 API: gst_registry_fork_set_enabled()
3422 API: --gst-disable-registry-fork command line option
3425 2006-08-11 Tim-Philipp Müller <tim at centricular dot net>
3427 * gst/gst.c: (gst_init):
3428 Fix typo in error message.
3430 2006-08-10 Stefan Kost <ensonic@users.sf.net>
3432 * libs/gst/controller/gstcontroller.h:
3433 fix ABI size-correction
3435 * tests/check/libs/gdp.c: (gst_dp_suite):
3436 make tests that use deprecated API conditional
3438 2006-08-10 Stefan Kost <ensonic@users.sf.net>
3440 * docs/libs/gstreamer-libs-sections.txt:
3441 * libs/gst/controller/gstcontroller.c:
3442 (_gst_controller_get_property), (_gst_controller_set_property),
3443 (_gst_controller_init), (_gst_controller_class_init):
3444 * libs/gst/controller/gstcontroller.h:
3445 * libs/gst/controller/gsthelper.c: (gst_object_get_control_rate),
3446 (gst_object_set_control_rate):
3447 API: add gst_object_{s,g}et_control_rate(), add private data section,
3450 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packetizer_new):
3451 * libs/gst/dataprotocol/dataprotocol.h:
3452 add deprecation guards to make gtk-doc happy and allow disabling cruft
3454 2006-08-09 Tim-Philipp Müller <tim at centricular dot net>
3456 * tests/check/Makefile.am:
3457 * tests/check/gst/.cvsignore:
3458 Let's enable the new unit test as well.
3460 2006-08-08 Tim-Philipp Müller <tim at centricular dot net>
3463 * docs/gst/gstreamer-sections.txt:
3464 * gst/gstconfig.h.in:
3465 * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_segment),
3466 (_gst_info_printf_extension_ptr),
3467 (_gst_info_printf_extension_segment):
3468 API: add GST_SEGMENT_FORMAT, which is a printf extension we
3469 register that lets us easily dump GstSegments into debug
3472 * tests/check/gst/gstinfo.c: (segment_printf_extension_log_func),
3473 (info_segment_format_printf_extension), (gst_info_suite):
3474 Add simple unit test that logs a bunch of different segments (not
3475 valgrinded at the moment because of leaks in
3476 gst_debug_add_log_function).
3478 2006-08-09 Edward Hervey <edward@fluendo.com>
3480 * libs/gst/base/gstbasetransform.c:
3481 (gst_base_transform_buffer_alloc):
3482 Even if we can't figure out the proper format to request downstream,
3483 call buffer_alloc() downstream with the input parameters without setting
3484 the caps on the srcpad. This will force negotiation in the chain
3488 2006-08-08 Edward Hervey <edward@fluendo.com>
3490 * gst/gstghostpad.c: (gst_ghost_pad_do_unlink):
3491 Unlinking from a pad without a target is now a perfectly valid case
3492 which should NOT raise an assertion.
3493 This case would happen if a linked ghostpad its target set to NULL after
3494 it was previously linked.
3496 2006-08-08 Edward Hervey <edward@fluendo.com>
3498 * tests/check/libs/gdp.c:
3499 Also comment out the test (see below).
3501 2006-08-08 Edward Hervey <edward@fluendo.com>
3503 * tests/check/libs/gdp.c: (gst_dp_suite):
3504 Use the architecture information from config.h and not gcc macros
3505 in order to properly disable a test that fails on PPC64.
3507 2006-08-04 Tim-Philipp Müller <tim at centricular dot net>
3509 * gst/gstelement.c: (gst_element_remove_pad):
3510 Don't crash printing the warning if the pad has no parent.
3512 2006-08-02 Wim Taymans <wim@fluendo.com>
3514 * libs/gst/dataprotocol/dataprotocol.c:
3515 (gst_dp_header_from_buffer_any), (gst_dp_packet_from_caps_any),
3516 (gst_dp_crc), (gst_dp_header_payload_length),
3517 (gst_dp_header_payload_type), (gst_dp_packet_from_event),
3518 (gst_dp_packet_from_event_1_0), (gst_dp_buffer_from_header),
3519 (gst_dp_caps_from_packet), (gst_dp_event_from_packet_0_2),
3520 (gst_dp_event_from_packet), (gst_dp_validate_header),
3521 (gst_dp_validate_payload):
3522 Make debug category static
3523 Constify the crc table.
3524 Do some more arg checking in public functions.
3525 Fix some docs and do some small cleanups.
3527 * tests/check/libs/gdp.c: (GST_START_TEST), (gst_dp_suite):
3528 Add some more checks to see if GDP deals with bogus input.
3530 2006-07-31 Wim Taymans <wim@fluendo.com>
3532 * gst/gstvalue.c: (gst_value_compare_list):
3533 Fix GstValueList comparison code. Fixes #347293.
3535 * tests/check/gst/gstvalue.c: (GST_START_TEST):
3536 Check to test GstValueList comparison.
3538 2006-07-31 Jan Schmidt <thaytan@mad.scientist.com>
3540 * gst/gstelementfactory.c: (gst_element_factory_create):
3541 Remove unnecessary ref/unref pair
3543 * gst/parse/grammar.y:
3544 Make sure to free the parse buffer on all code paths.
3545 Move a g_free up to the error handler where it's easier to see.
3547 * tests/check/gst/gstevent.c: (test_event):
3548 Extending timeout for downstream travelling events to 10 seconds to
3549 hopefully avoid intermittent failure on the buildbots.
3551 * tests/check/pipelines/parse-launch.c: (run_delayed_test):
3552 Don't manually set the state of the src element - it will happen as a
3553 natural consequence of the pipeline changing state, and that way it
3554 will do it in the right order too.
3556 2006-07-31 Wim Taymans <wim@fluendo.com>
3558 * libs/gst/base/gstbasetransform.c:
3559 (gst_base_transform_buffer_alloc):
3560 Use OBJECT_LOCK and refcounting to get the pad caps in the
3561 buffer_alloc function because the caps could change while we are
3562 busy with them. Fixes #349105
3564 2006-07-31 Wim Taymans <wim@fluendo.com>
3566 * gst/gstutils.c: (gst_pad_get_fixed_caps_func):
3567 Protect _PAD_CAPS with OBJECT_LOCK.
3569 2006-07-31 Wim Taymans <wim@fluendo.com>
3571 * gst/gstpad.c: (gst_pad_class_init), (gst_pad_dispose),
3572 (gst_pad_get_property), (gst_pad_activate_pull),
3573 (gst_pad_activate_push), (gst_pad_set_blocked_async),
3574 (gst_pad_set_activate_function),
3575 (gst_pad_set_activatepull_function),
3576 (gst_pad_set_activatepush_function), (gst_pad_set_chain_function),
3577 (gst_pad_set_getrange_function),
3578 (gst_pad_set_checkgetrange_function), (gst_pad_set_event_function),
3579 (gst_pad_set_query_function), (gst_pad_set_query_type_function),
3580 (gst_pad_set_internal_link_function), (gst_pad_set_link_function),
3581 (gst_pad_set_unlink_function), (gst_pad_set_getcaps_function),
3582 (gst_pad_set_acceptcaps_function),
3583 (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
3584 (gst_pad_set_bufferalloc_function), (gst_pad_link_check_hierarchy),
3585 (gst_pad_get_caps_unlocked), (gst_pad_get_caps),
3586 (gst_pad_peer_get_caps), (gst_pad_accept_caps),
3587 (gst_pad_peer_accept_caps), (gst_pad_set_caps),
3588 (gst_pad_configure_sink), (gst_pad_configure_src),
3589 (gst_pad_get_allowed_caps), (gst_pad_get_negotiated_caps),
3590 (gst_pad_buffer_alloc_unchecked), (gst_pad_alloc_buffer_full),
3591 (gst_pad_query), (gst_pad_load_and_link), (handle_pad_block),
3592 (gst_pad_chain_unchecked), (gst_pad_push), (gst_pad_get_range),
3593 (gst_pad_send_event):
3594 Use _DEBUG_OBJECT when it makes sense.
3595 Protect GST_PAD_CAPS with the OBJECT_LOCK.
3596 Small cleanups and code reflows.
3597 Avoid caps refcounting in _accept_caps.
3598 Refactor alloc_buffer so that the code performed on the peer is in a
3599 separate function. Also if the pad does not implement a buffer alloc
3600 function, we should still check if the pad is flushing before falling
3601 back to the default allocator.
3603 2006-07-31 Jan Schmidt <thaytan@mad.scientist.com>
3605 * tests/check/pipelines/parse-launch.c: (GST_START_TEST):
3606 Make all uses of identity and fakesink have silent=true to avoid
3607 serialising every passing data structure, which is breaking tests
3608 on FC4 for some unknown reason.
3610 2006-07-30 Stefan Kost <ensonic@users.sf.net>
3612 * gst/parse/Makefile.am:
3613 * gst/parse/grammar.y:
3614 * gst/parse/parse.l:
3615 Reverted previous patch as it required to bump the flex dependency to
3616 2.5.31, where fc4/5 seem to ship only the ancient 2.5.4a :(
3618 2006-07-30 Stefan Kost <ensonic@users.sf.net>
3620 Patch by: Marc-Andre Lureau <marcandre.lureau@gmail.com>
3622 * gst/parse/Makefile.am:
3623 * gst/parse/grammar.y:
3624 * gst/parse/parse.l:
3625 push & pop the state of the lexer for reentrant use case
3628 2006-07-29 Tim-Philipp Müller <tim at centricular dot net>
3630 * libs/gst/base/gstbasesrc.h:
3631 Note in the docs that the ::newsegment vfunc is not actually used by
3634 2006-07-28 Wim Taymans <wim@fluendo.com>
3636 * libs/gst/base/gstcollectpads.c:
3637 (gst_collect_pads_set_flushing_unlocked), (gst_collect_pads_pop),
3638 (gst_collect_pads_clear), (gst_collect_pads_flush),
3639 (gst_collect_pads_event), (gst_collect_pads_chain):
3640 When flushing a pad, also clear the queued buffer so that we don't
3641 accidentally use it when we shouldn't.
3642 Fix leaks by inreffing incomming buffer.
3643 Flush out queued buffers in case of errors.
3646 2006-07-28 Wim Taymans <wim@fluendo.com>
3648 * docs/random/phonon-gst:
3649 Random notes about a Phonon backend.
3651 2006-07-27 Jan Schmidt <thaytan@mad.scientist.com>
3653 * libs/gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
3655 * tests/check/libs/gdp.c: (gst_dp_suite):
3656 Take a whack at fixing the ppc compile using a different define to
3657 disable the broken test.
3659 * tests/check/pipelines/parse-launch.c: (GST_START_TEST):
3660 Remove excess g_print()
3662 2006-07-27 Jan Schmidt <thaytan@mad.scientist.com>
3664 * tests/check/pipelines/parse-launch.c: (expected_fail_pipe):
3665 Oops, meant to uncomment this line too to dampen the noise a bit.
3667 2006-07-27 Jan Schmidt <thaytan@mad.scientist.com>
3669 * gst/parse/grammar.y:
3670 * gst/parse/parse.l:
3671 * tests/check/pipelines/parse-launch.c: (expected_fail_pipe),
3672 (GST_START_TEST), (parse_suite):
3673 Fix some of the leaks exposed by extending the parse-launch testsuite,
3674 and move the 3 I can't figure out into a separate test that won't run
3675 the pipelines unless the appropriate line is uncommented.
3677 2006-07-27 Tim-Philipp Müller <tim at centricular dot net>
3679 * plugins/elements/gstfilesrc.c: (gst_file_src_create_read):
3680 Requesting 0 bytes before the end of the file should result in
3681 FLOW_OK and an empty buffer, not FLOW_UNEXPECTED. Thank you
3684 2006-07-27 Wim Taymans <wim@fluendo.com>
3686 * gst/gstcaps.c: (gst_static_caps_get), (gst_caps_get_structure):
3687 Fix useless assert, a uint is always positive.
3689 * gst/gststructure.c: (gst_structure_nth_field_name),
3690 (gst_structure_foreach), (gst_structure_map_in_place):
3691 Check input arguments for public functions to avoid obvious crashes.
3693 * plugins/elements/gstfakesink.c: (gst_fake_sink_render):
3694 * plugins/elements/gstfakesink.h:
3695 Do less useless typechecking.
3697 2006-07-27 Tim-Philipp Müller <tim at centricular dot net>
3699 * plugins/elements/gstfilesrc.c: (gst_file_src_class_init):
3700 Do not use mmap() by default since there are a number of error
3701 conditions that we would like to handle in a non-fatal way that
3702 will result in a SIGBUS if we use mmap(). Examples: external
3703 devices (USB harddrive, portable music player) being unplugged
3704 while in use; file on mounted CD/DVD that can't be read because
3705 the medium is partly damaged. Fixes #348455 and #348475.
3707 2006-07-27 Jan Schmidt <thaytan@mad.scientist.com>
3710 Delete unused and misleading define of GST_QUERY_TYPE_RATE_DEN -
3713 2006-07-26 Stefan Kost <ensonic@users.sf.net>
3715 * gst/gstregistry.c:
3716 Move big documentation comment into class section header, so that it
3717 appears in the API docs.
3719 2006-07-26 Jan Schmidt <thaytan@mad.scientist.com>
3721 * docs/gst/gstreamer-sections.txt:
3722 Oops. Commit the docs additions too for new API.
3723 Also, remove the mention of the non-existent GST_QUERY_TYPE_RATE_DEN
3725 2006-07-26 Jan Schmidt <thaytan@mad.scientist.com>
3727 * gst/gststructure.c: (gst_structure_id_set),
3728 (gst_structure_id_set_valist):
3729 * gst/gststructure.h:
3730 Add API for setting values into structures without performing
3731 a quark lookup, if the appropriate quark is already known.
3733 API: gst_structure_id_set
3734 API: gst_structure_id_set_valist
3736 * gst/parse/grammar.y:
3737 * gst/parse/parse.l:
3738 Remove some dead code shown by the coverage information.
3739 Don't throw a critical g_warning when encountering a syntax error,
3740 just warn and let the normal error path handle it.
3742 * plugins/elements/gstelements.c:
3743 Bump the rank of filesink up to PRIMARY so that it is preferred over
3744 gnomevfssink for file:// sink uri's
3746 * tests/check/pipelines/parse-launch.c: (expected_fail_pipe),
3747 (GST_START_TEST), (run_delayed_test),
3748 (gst_parse_test_element_base_init),
3749 (gst_parse_test_element_class_init), (gst_parse_test_element_init),
3750 (gst_parse_test_element_change_state),
3751 (gst_register_parse_element), (parse_suite):
3752 Beef up the tests for parse syntax to check that more error cases
3753 fail as they are supposed to. Increases the test coverage a bit.
3755 2006-07-26 Tim-Philipp Müller <tim at centricular dot net>
3757 * docs/manual/basics-elements.xml:
3758 Fix gst_element_link() example.
3761 Mention in API docs that one should usually gst_bin_add()
3762 elements to a bin or pipeline before doing the linking.
3764 2006-07-26 Wim Taymans <wim@fluendo.com>
3766 * gst/gstbuffer.c: (gst_buffer_get_type), (gst_buffer_new),
3767 (gst_subbuffer_get_type), (gst_buffer_create_sub):
3768 Avoid function call for known types by keeping the buffer and
3769 subbuffer GType global.
3771 * plugins/elements/gstfilesrc.c: (gst_file_src_create_read):
3772 Random silly optimisations in read() path.
3774 2006-07-26 Jan Schmidt <thaytan@mad.scientist.com>
3776 * tools/gst-launch.c: (main):
3777 If the top-level of the parse is a normal bin, it doesn't do the
3778 right logic to run as a top-level element, so place it inside a
3781 2006-07-25 Tim-Philipp Müller <tim at centricular dot net>
3783 * plugins/elements/gstfilesrc.c: (gst_file_src_set_property):
3784 Remove superfluous g_object_notify() calls, GObject does
3785 that for us automatically.
3787 2006-07-25 Stefan Kost <ensonic@users.sf.net>
3790 on Win32, use dllspec to export the debug category symbols
3792 2006-07-24 Tim-Philipp Müller <tim at centricular dot net>
3794 * gst/gsttaglist.c: (_gst_tag_initialize):
3795 Allow more than one GST_TAG_IMAGE per taglist.
3797 2006-07-24 Thomas Vander Stichele <thomas at apestaart dot org>
3799 * gst/gstminiobject.c:
3801 * plugins/elements/gstfdsrc.c: (gst_fd_src_set_property),
3802 (gst_fd_src_create):
3803 log recurring events at LOG level
3804 add more debug for when the fd gets set
3806 2006-07-21 Stefan Kost <ensonic@users.sf.net>
3808 * gst/gstparse.c: (gst_parse_launch):
3809 Also remove reentrance checks if flex is MT safe (#348179)
3810 Fix my empty ChangeLog entry below
3812 2006-07-21 Andy Wingo <wingo@pobox.com>
3814 * docs/libs/gstreamer-libs-sections.txt: Attempt to pacify buildbot.
3816 * libs/gst/check/Makefile.am
3817 (libgstcheck_@GST_MAJORMINOR@include_HEADERS)
3818 (libgstcheck_@GST_MAJORMINOR@_la_SOURCES):
3819 * libs/gst/check/gstbufferstraw.h:
3820 * libs/gst/check/gstbufferstraw.c: Add some new hype testing
3821 functions, thus proving I am still a GStreamer haxor. OK I wrote
3822 them a long time ago, but anyways.
3824 2006-07-21 Stefan Kost <ensonic@users.sf.net>
3827 * gst/gstparse.c: (gst_parse_launch):
3828 Check for flex version and omit mutex if we have a MT save flex
3831 2006-07-21 Wim Taymans <wim@fluendo.com>
3833 * gst/gstparse.c: (gst_parse_launch):
3834 Protect recursive calls to _parse with a recursive mutex
3837 2006-07-21 Wim Taymans <wim@fluendo.com>
3839 * tests/check/gst/gstpad.c: (GST_START_TEST):
3842 2006-07-20 Stefan Kost <ensonic@users.sf.net>
3844 * gst/gstparse.c: (gst_parse_launch):
3845 Do not hang on recursive usage of gst_parse_launch()
3847 2006-07-20 Tim-Philipp Müller <tim at centricular dot net>
3850 Add some more docs, comments and FIXME 0.11s here and there
3851 and also fix some typos.
3853 2006-07-20 Tim-Philipp Müller <tim at centricular dot net>
3856 Convert tabs to spaces for better readability.
3858 2006-07-20 Edward Hervey <edward@fluendo.com>
3860 * tests/check/libs/gdp.c: (gst_dp_suite):
3861 the test_buffer test fails at line 140 on ppc64 at the following
3863 fail_unless (GST_BUFFER_FLAG_IS_SET (newbuffer,
3864 GST_BUFFER_FLAG_IN_CAPS),
3865 "GST_BUFFER_IN_CAPS flag should have been copied !");
3866 See bug #348114 for more details.
3868 2006-07-19 Tim-Philipp Müller <tim at centricular dot net>
3870 * docs/pwg/advanced-scheduling.xml:
3872 Fix typos (#348000).
3874 2006-07-18 Tim-Philipp Müller <tim at centricular dot net>
3876 * docs/pwg/intro-basics.xml:
3877 Fix wrong links (#347927).
3879 2006-07-18 Stefan Kost <ensonic@users.sf.net>
3881 * gst/gstregistry.h:
3882 * gst/gstregistryxml.c: (load_feature),
3883 (gst_registry_xml_read_cache), (gst_registry_xml_save_feature):
3884 * win32/common/config.h:
3885 make --disable-index work (#342564)
3887 2006-07-18 Wim Taymans <wim@fluendo.com>
3889 Patch by: Peter Kjellerstedt <pkj at axis dot com>
3893 The attached patch adds two missing defines to gsttrace.h when tracing
3894 is disabled. It also corrects one existing define.
3897 2006-07-17 Wim Taymans <wim@fluendo.com>
3899 * docs/gst/gstreamer-sections.txt:
3900 * gst/gst.c: (gst_segtrap_is_enabled), (gst_segtrap_set_enabled):
3902 * gst/gstplugin.c: (_gst_plugin_fault_handler_restore):
3903 Add two functions to check and change the SIGSEGV behaviour
3904 when loading plugins.
3905 Don't mess with the SIGSEGV handler when we were told not to.
3907 API: gst_segtrap_is_enabled
3908 API: gst_segtrap_set_enabled
3910 2006-07-14 Wim Taymans <wim@fluendo.com>
3912 * libs/gst/base/gstbasesrc.c: (gst_base_src_update_length):
3913 * tests/check/elements/filesrc.c: (GST_START_TEST):
3914 Revert fix for regression in #347408 after release.
3916 2006-07-14 Tim-Philipp Müller <tim at centricular dot net>
3918 Patch by: Antoine Tremblay <hexa00 at gmail com>
3920 * gst/gstutils.c: (gst_element_unlink):
3921 Free iterator when done (#347311).
3923 * tests/check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
3924 And add a test case for this.
3926 2006-07-14 Jan Schmidt <thaytan@mad.scientist.com>
3929 Bump nano back to CVS
3931 === release 0.10.9 ===
3933 2006-07-13 Jan Schmidt <thaytan@mad.scientist.com>
3936 releasing 0.10.9, "On the road again"
3938 2006-07-13 Wim Taymans <wim@fluendo.com>
3940 * libs/gst/base/gstbasesrc.c: (gst_base_src_update_length):
3941 * tests/check/elements/filesrc.c: (GST_START_TEST):
3942 Revert pull-0 fix for release. Disable check. Fixes #347408.
3944 2006-07-13 Thomas Vander Stichele <thomas at apestaart dot org>
3946 * libs/gst/dataprotocol/dataprotocol.c:
3947 (gst_dp_event_from_packet_1_0):
3948 Fixes #347337: failure to deserialize event packets with
3949 empty payload (only event type)
3951 2006-07-13 Thomas Vander Stichele <thomas at apestaart dot org>
3954 do not install a .c file in the header directory
3956 2006-07-13 Edward Hervey <edward@fluendo.com>
3958 * gst/gstghostpad.c: (gst_proxy_pad_set_target_unlocked):
3959 GhostPad no longer implicitely use the padtemplates of the targets.
3962 2006-07-11 Jan Schmidt <thaytan@mad.scientist.com>
3964 * gst/gstvalue.c: (gst_value_compare_list),
3965 (gst_value_compare_array), (_gst_value_initialize):
3966 * tests/check/gst/gstvalue.c: (GST_START_TEST):
3967 Make GstValueArray comparison be order dependent as designed.
3968 Add checks for value lists and value array comparisons.
3971 2006-07-11 Edward Hervey <edward@fluendo.com>
3973 * gst/gstbin.c: (activate_pads),
3974 (iterator_activate_fold_with_resync), (gst_bin_src_pads_activate),
3975 (gst_bin_change_state_func):
3976 (de)activate src pads before calling state_change on the childs.
3977 This is to avoid the case where a src ghostpad is blocked (holding the
3978 stream lock), which would block the deactivation of the ghostpad's
3980 * gst/gstghostpad.c: (gst_proxy_pad_do_query_type),
3981 (gst_proxy_pad_do_event), (gst_proxy_pad_do_query),
3982 (gst_proxy_pad_do_internal_link), (gst_proxy_pad_do_bufferalloc),
3983 (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange),
3984 (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_getcaps),
3985 (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
3986 (gst_proxy_pad_do_setcaps), (gst_proxy_pad_set_target_unlocked),
3987 (gst_proxy_pad_set_target), (gst_proxy_pad_get_internal),
3988 (gst_proxy_pad_dispose), (gst_proxy_pad_init),
3989 (gst_ghost_pad_parent_set), (gst_ghost_pad_parent_unset),
3990 (gst_ghost_pad_class_init),
3991 (gst_ghost_pad_internal_do_activate_push),
3992 (gst_ghost_pad_internal_do_activate_pull),
3993 (gst_ghost_pad_do_activate_push), (gst_ghost_pad_do_activate_pull),
3994 (gst_ghost_pad_do_link), (gst_ghost_pad_do_unlink),
3995 (gst_ghost_pad_dispose), (gst_ghost_pad_new_no_target),
3996 (gst_ghost_pad_new), (gst_ghost_pad_set_target):
3997 GhostPads now create their internal GstProxyPad at creation (and not
3998 when they're linked, as it was being done previously).
3999 The internal and target pads are linked straight away.
4000 The data will also travel through the other pad in order to make
4001 pad blocking and probes non-hackish (the probe/block now really happens
4002 on the GhostPad and not on the target).
4003 * gst/gstpad.c: (gst_pad_set_blocked_async),
4004 (gst_pad_link_prepare), (gst_pad_push_event):
4005 Remove previous ghostpad cruft.
4006 * gst/gstutils.c: (gst_pad_add_data_probe),
4007 (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
4008 (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
4009 (gst_pad_remove_buffer_probe):
4010 Remove previous ghost pad cruft.
4011 Added more detailed debug statements.
4012 * tests/check/gst/gstghostpad.c: (GST_START_TEST):
4013 Fix the testsuite for refcounting changes.
4014 The comments about who has references were correct, but the refcount
4015 being checked wasn't the same (!?!).
4019 2006-07-10 Stefan Kost <ensonic@users.sf.net>
4021 * docs/gst/gstreamer-sections.txt:
4022 * gst/gstconfig.h.in:
4023 More docs for configuration options, add docs to gtk-doc.
4025 2006-07-10 Stefan Kost <ensonic@users.sf.net>
4028 * gst/gstconfig.h.in:
4029 * win32/common/config.h:
4030 Fix build when disabling tracing (fixes #344016). Also start to document
4031 the defines that disable the sub-systems.
4033 2006-07-10 Edward Hervey <edward@fluendo.com>
4035 * gst/gst.c: (ensure_current_registry_forking):
4036 let's make valgrind happy...
4038 2006-07-09 Wim Taymans <wim@fluendo.com>
4040 * gst/gstelement.c: (activate_pads),
4041 (iterator_activate_fold_with_resync), (gst_element_pads_activate):
4042 Better pad activation code: Reset the collect value too on resync.
4045 2006-07-09 Wim Taymans <wim@fluendo.com>
4047 * gst/gstpad.c: (gst_pad_init), (gst_pad_activate_pull),
4048 (gst_pad_activate_push):
4049 Use some more macros where it makes sense.
4050 Allow pad mode switching instead of asserting. When a pad
4051 is activated in one mode and we activate it in another,
4052 deactivate it first before activating it in a different mode.
4055 2006-07-08 Andy Wingo <wingo@pobox.com>
4057 * tools/gst-launch.c (main): Handle err == NULL.
4059 * gst/gst.c (init_post, ensure_current_registry)
4060 (ensure_current_registry_forking)
4061 (ensure_current_registry_nonforking): Reduce #ifdef ratnest by
4062 factoring out the registry scanning into separate functions. Don't
4063 fork for the rescan is GST_REGISTRY_FORK=no; useful in debugging.
4064 Better environment var name/interface suggestions accepted.
4066 2006-07-07 Tim-Philipp Müller <tim at centricular dot net>
4068 * gst/gstobject.c: (gst_object_set_name_default),
4069 (gst_object_set_name):
4070 Random micro-optimisation: don't use a hash table
4071 with strings as keys and the usual strdup/strcmp
4072 involved, but rather just use the GQuark of the
4073 type name as key, since it needs to be looked up
4074 anyway to get the type name string.
4076 * tests/check/gst/gstobject.c: (GST_START_TEST):
4079 2006-07-07 Tim-Philipp Müller <tim at centricular dot net>
4081 * gst/gstbin.c: (compare_interface), (gst_bin_get_by_interface),
4082 (gst_bin_iterate_all_by_interface):
4083 Can't use GPOINTER_TO_INT and GINT_TO_POINTER with GTypes.
4084 GTypes are gulongs and thus the top 4 bytes might be cut
4085 off on some platforms when doing GPOINTER_TO_INT, leading
4086 to invalid GTypes and bad things happening (see RH bug #179654).
4087 Also add a check to make sure the type passed in is really
4090 2006-07-07 Tim-Philipp Müller <tim at centricular dot net>
4095 2006-07-07 Tim-Philipp Müller <tim at centricular dot net>
4099 * gst-element-check.m4:
4100 * gst-element-check.m4.in:
4101 Make gst-element-check-$VERSION.m4 call gst-inspect-$VERSION
4102 instead of the unversioned gst-inspect (#324176, #168659).
4104 2006-07-06 Wim Taymans <wim@fluendo.com>
4107 Use a valid int for the _MESSAGE_ANY enum value to avoid compiler
4110 2006-07-06 Wim Taymans <wim@fluendo.com>
4112 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
4113 (gst_base_src_wait), (gst_base_src_update_length),
4114 (gst_base_src_get_range), (gst_base_src_default_check_get_range),
4115 (gst_base_src_check_get_range), (gst_base_src_pad_check_get_range),
4116 (gst_base_src_loop), (gst_base_src_start),
4117 (gst_base_src_activate_pull):
4119 blocksize == 0 now means the default blocksize when working in push
4121 Remove some pointless asserts in _wait function.
4122 Fix offset/length calculations and EOS handling. We can now pull 0
4123 bytes as well, which is allowed.
4124 use _check_get_range() to decide if we can operate in _pull based
4126 Fix refcounting leak when check_get_range function was not
4128 API GstBaseSrc::blocksize range can be 0 too now (default)
4130 * tests/check/elements/filesrc.c: (GST_START_TEST),
4132 Added check to test _get_range() behaviour.
4134 2006-07-06 Wim Taymans <wim@fluendo.com>
4136 * gst/gstpad.c: (gst_pad_chain_unchecked), (gst_pad_chain),
4137 (gst_pad_push), (gst_pad_check_pull_range), (gst_pad_get_range),
4138 (gst_pad_pull_range):
4140 Lots of comments and docs added to the pad functions.
4141 Flesh out the expected behaviour of the get_range() functions.
4143 2006-07-06 Wim Taymans <wim@fluendo.com>
4148 * gst/gstiterator.h:
4152 Remove comma at end of enumerator list.
4154 2006-07-05 Sebastien Moutte <sebastien@moutte.net>
4156 * win32/common/libgstbase.def:
4157 * win32/common/libgstdataprotocol.def:
4158 * win32/common/libsgtreamer.def:
4159 Add new exported functions.
4161 2006-07-05 Wim Taymans <wim@fluendo.com>
4163 * libs/gst/base/gstpushsrc.c: (gst_push_src_check_get_range):
4164 Add some more docs here and there.
4166 2006-07-05 Wim Taymans <wim@fluendo.com>
4168 * libs/gst/base/gstbasesink.c: (gst_base_sink_preroll_object),
4169 (gst_base_sink_loop), (gst_base_sink_get_position):
4170 When operating in pull mode update the offset so that we
4173 2006-07-05 Wim Taymans <wim@fluendo.com>
4175 * gst/gstregistryxml.c: (read_string):
4176 Avoid strdup. (will happen in libxml, but hey!)
4181 2006-07-05 Wim Taymans <wim@fluendo.com>
4183 * gst/gstbuffer.c: (_gst_buffer_copy), (gst_buffer_create_sub):
4184 * tests/check/gst/gstbuffer.c: (GST_START_TEST),
4186 No point in checking if the size of the subbuffer > 0, the
4187 code handles it correclty as demonstrated by unit test.
4188 Also add a unit test for the zero sized _new_and_alloc and
4189 _copy. Fixes #346663.
4191 2006-07-05 Wim Taymans <wim@fluendo.com>
4193 * libs/gst/base/gstbasetransform.c:
4194 (gst_base_transform_prepare_output_buffer),
4195 (gst_base_transform_buffer_alloc),
4196 (gst_base_transform_handle_buffer):
4197 Make sure the buffer we pass to transform_ip has a refcount of
4198 1 and thus is writable. Fixes #343196
4200 2006-07-04 Jan Schmidt <thaytan@mad.scientist.com>
4202 * plugins/elements/gstfilesrc.c: (gst_file_src_class_init),
4203 (gst_file_src_init), (gst_file_src_set_property),
4204 (gst_file_src_get_property), (gst_file_src_map_region):
4205 * plugins/elements/gstfilesrc.h:
4206 Add "sequential" property, off by default, to use madvise and hint
4207 to the kernel that sequential access is desired.
4208 Touch all retrieved pages by default to ensure they are pulled
4209 into memory. (Closes #345720)
4211 2006-07-03 Wim Taymans <wim@fluendo.com>
4213 * docs/design/part-block.txt:
4214 * docs/design/part-dynamic.txt:
4217 2006-07-03 Wim Taymans <wim@fluendo.com>
4219 * gst/gstcaps.c: (gst_caps_new_empty), (_gst_caps_free),
4220 (gst_caps_unref), (gst_static_caps_get),
4221 (gst_caps_append_structure):
4222 * gst/gstclock.c: (gst_clock_entry_new), (_gst_clock_id_free):
4223 Use GSlice when the glib we build against is >= 2.10
4225 2006-07-03 Wim Taymans <wim@fluendo.com>
4227 * gst/gstelement.c: (gst_element_pads_activate):
4228 Small cleanup in pad activation code.
4230 2006-07-03 Wim Taymans <wim@fluendo.com>
4232 Patch by: Peter Kjellerstedt <pkj at axis dot com>
4234 * gst/gst-i18n-app.h:
4235 * gst/gst-i18n-lib.h:
4236 * tools/gst-inspect.c: (print_signal_info):
4237 The attached patch will make the inclusion of gettext.h unconditional in
4238 gst/gst-i18n-app.h and gst/gst-i18n-lib.h, and it will remove the inclusion of
4239 libintl.h in tools/gst-inspect.c.
4240 This allows use of --disable-nls again and fixes #344642.
4242 2006-07-03 Edward Hervey <edward@fluendo.com>
4244 * gst/gstpad.c: (handle_pad_block), (gst_pad_push_event):
4245 Implement pad blocking on events according to part-block.txt.
4246 More comments on behaviour.
4247 * tests/check/gst/gstevent.c: (test_event):
4248 Send event to peer pad of blocked pad (else it will block).
4250 2006-07-03 Thomas Vander Stichele <thomas at apestaart dot org>
4252 * libs/gst/check/gstcheck.c: (gst_check_message_error),
4253 (gst_check_run_suite):
4254 if we get the wrong message, give us the types as string
4255 * plugins/elements/gstfilesrc.c: (gst_file_src_start):
4257 * tests/check/elements/filesrc.c: (GST_START_TEST):
4258 add a test for trying to open a non-existing file
4260 2006-07-03 Thomas Vander Stichele <thomas at apestaart dot org>
4262 * tests/check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
4263 add a test for adding self
4265 2006-07-03 Thomas Vander Stichele <thomas at apestaart dot org>
4267 * libs/gst/check/gstcheck.h:
4268 add some assert_ as alias for fail_unless_*
4269 * tests/check/gst/gst.c: (GST_START_TEST), (gst_suite):
4270 increase test coverage
4272 2006-07-02 Thomas Vander Stichele <thomas at apestaart dot org>
4275 include lcov.mak for lcov coverage generation
4276 * tools/Makefile.am:
4279 2006-07-02 Edward Hervey <edward@fluendo.com>
4281 * tests/check/elements/.cvsignore:
4284 2006-07-02 Thomas Vander Stichele <thomas at apestaart dot org>
4287 don't set CFLAGS and friends for gcov, done from GST_GCOV now
4288 * tests/check/Makefile.am:
4291 2006-07-02 Thomas Vander Stichele <thomas at apestaart dot org>
4293 * gst/gstcaps.c: (gst_caps_remove_and_get_structure):
4294 remove gst_caps_simplify; it was not declared and not used
4295 and deprecated in 0.8
4297 2006-07-02 Thomas Vander Stichele <thomas at apestaart dot org>
4299 * docs/faq/gst-uninstalled:
4300 don't put empty paths on PYTHONPATH
4301 * docs/gst/gstreamer-sections.txt:
4302 remove some symbols that are not there
4304 2006-07-02 Thomas Vander Stichele <thomas at apestaart dot org>
4306 * gst/gstcaps.c: (gst_caps_compare_structures):
4308 * tests/check/gst/gstbuffer.c: (GST_START_TEST):
4309 * tests/check/gst/gstcaps.c: (GST_START_TEST), (gst_caps_suite):
4312 2006-07-02 Thomas Vander Stichele <thomas at apestaart dot org>
4314 * libs/gst/dataprotocol/Makefile.am:
4315 build dataprotocol test by linking to the lib, instead of
4316 compiling the source, so we get coverage
4317 * tests/check/Makefile.am:
4318 * tests/check/elements/filesrc.c: (event_func), (setup_filesrc),
4319 (cleanup_filesrc), (GST_START_TEST), (filesrc_suite):
4320 add a test for filesrc
4322 2006-07-02 Thomas Vander Stichele <thomas at apestaart dot org>
4324 * tests/check/gst/gststructure.c: (GST_START_TEST),
4325 (gst_structure_suite):
4326 Push coverage from 59.04% to 70.00%
4328 2006-07-02 Thomas Vander Stichele <thomas at apestaart dot org>
4330 * tests/check/Makefile.am:
4331 gst-inspect every element; this makes sure that we also get
4332 coverage on element's get/set functions
4334 2006-07-02 Thomas Vander Stichele <thomas at apestaart dot org>
4337 set CFLAGS and friends to -O0 if gcov is being used
4340 * libs/gst/base/Makefile.am:
4341 * libs/gst/check/Makefile.am:
4342 * libs/gst/controller/Makefile.am:
4343 * libs/gst/dataprotocol/Makefile.am:
4344 * libs/gst/net/Makefile.am:
4345 * plugins/elements/Makefile.am:
4346 * plugins/indexers/Makefile.am:
4347 add makefile rules to generate gcov data and clean up
4348 * tests/check/Makefile.am:
4349 add a coverage target that generates an html overview
4352 2006-07-01 Thomas Vander Stichele <thomas at apestaart dot org>
4354 * tests/check/elements/fakesink.c:
4355 * tests/check/elements/fakesrc.c:
4356 * tests/check/elements/fdsrc.c:
4357 * tests/check/elements/identity.c:
4358 * tests/check/generic/sinks.c: (gst_sinks_suite):
4359 * tests/check/generic/states.c:
4360 * tests/check/gst/gst.c:
4361 * tests/check/gst/gstabi.c:
4362 * tests/check/gst/gstbin.c:
4363 * tests/check/gst/gstbuffer.c: (gst_buffer_suite):
4364 * tests/check/gst/gstbus.c: (gst_bus_suite):
4365 * tests/check/gst/gstcaps.c: (GST_START_TEST):
4366 * tests/check/gst/gstelement.c:
4367 * tests/check/gst/gstevent.c: (gst_event_suite):
4368 * tests/check/gst/gstghostpad.c:
4369 * tests/check/gst/gstiterator.c: (gst_iterator_suite):
4370 * tests/check/gst/gstmessage.c: (gst_message_suite):
4371 * tests/check/gst/gstminiobject.c:
4372 * tests/check/gst/gstobject.c:
4373 * tests/check/gst/gstpad.c:
4374 * tests/check/gst/gstpipeline.c:
4375 * tests/check/gst/gstplugin.c:
4376 * tests/check/gst/gstquery.c: (gst_query_suite):
4377 * tests/check/gst/gstsegment.c: (gst_segment_suite):
4378 * tests/check/gst/gststructure.c:
4379 * tests/check/gst/gstsystemclock.c:
4380 * tests/check/gst/gsttag.c:
4381 * tests/check/gst/gsttask.c: (gst_task_suite):
4382 * tests/check/gst/gstutils.c:
4383 * tests/check/gst/gstvalue.c:
4384 * tests/check/libs/adapter.c:
4385 * tests/check/libs/basesrc.c:
4386 * tests/check/libs/collectpads.c:
4387 * tests/check/libs/controller.c:
4388 * tests/check/libs/gdp.c: (gst_dp_suite):
4389 * tests/check/libs/gstnetclientclock.c:
4390 * tests/check/libs/gstnettimeprovider.c:
4391 * tests/check/libs/libsabi.c: (libsabi_suite):
4392 * tests/check/libs/typefindhelper.c:
4393 * tests/check/pipelines/cleanup.c:
4394 * tests/check/pipelines/parse-launch.c:
4395 * tests/check/pipelines/simple-launch-lines.c:
4396 * tests/check/pipelines/stress.c: (stress_suite):
4399 2006-07-01 Thomas Vander Stichele <thomas at apestaart dot org>
4401 * libs/gst/check/gstcheck.c: (gst_check_run_suite):
4402 * libs/gst/check/gstcheck.h:
4403 create a macro and function so that the simple unit test
4404 case can be just one macro to create main()
4406 2006-06-30 Tim-Philipp Müller <tim at centricular dot net>
4408 * gst/gstbin.c: (gst_bin_restore_thyself):
4409 * gst/gstxml.c: (gst_xml_make_element):
4410 Fix deserialisation from XML. Set parent manually
4411 instead of using gst_bin_add(), since gst_bin_add()
4412 will unlink all pads of the element being added.
4415 2006-06-28 Tim-Philipp Müller <tim at centricular dot net>
4417 Patch by: Peter Kjellerstedt <pkj at axis com>
4419 * gst/gst.c: (prepare_for_load_plugin_func), (split_and_iterate):
4420 Fix missing g_strdup() and double free when using the
4421 --gst-plugin-load command line option (#346097).
4423 2006-06-23 Tim-Philipp Müller <tim at centricular dot net>
4426 Promote GST_DEBUG_CATEGORY_STATIC in example in docs.
4428 * libs/gst/net/gstnetclientclock.c:
4429 * libs/gst/net/gstnettimeprovider.c:
4430 Use GST_DEBUG_CATEGORY_STATIC here too (#342503).
4432 2006-06-23 Tim-Philipp Müller <tim at centricular dot net>
4434 * docs/manual/advanced-dataaccess.xml:
4435 Fix buffer probe example compilation in
4438 2006-06-22 Edward Hervey <edward@fluendo.com>
4440 * gst/gstelement.c: (gst_element_pads_activate):
4441 We need to deactivate src pads first and then sink pads.
4442 The reason is the src pads might be blocking while holding the streaming
4443 lock, so we need to deactivate them first so that deactivating the sink
4444 pads doesn't block (since it will require the streaming lock).
4446 2006-06-22 Wim Taymans <wim@fluendo.com>
4448 * libs/gst/base/gstbasetransform.c:
4449 (gst_base_transform_buffer_alloc):
4450 Forgot to remove two unneeded unrefs.
4451 Simplify a check _is_equal allready checks the obvious case.
4453 2006-06-22 Wim Taymans <wim@fluendo.com>
4455 * docs/design/part-block.txt:
4456 Some docs about what pad_block should do.
4458 2006-06-22 Wim Taymans <wim@fluendo.com>
4460 * gst/gstcaps.c: (gst_caps_replace):
4461 Fix crasher when passed NULL. Doc clarification.
4462 Optimize for the trivial case.
4464 * gst/gstpipeline.c: (gst_pipeline_change_state):
4467 * libs/gst/base/gstbasesrc.c: (gst_base_src_loop):
4468 Small documentation cleanup.
4470 * libs/gst/base/gstbasetransform.c:
4471 (gst_base_transform_buffer_alloc):
4472 Don't use silly gst_pad_get_negotiated_caps, GST_PAD_CAPS
4473 is what we need and it avoids a whole lot of redundant
4474 refcount operations.
4476 2006-06-22 Tim-Philipp Müller <tim at centricular dot net>
4478 Patch by: Philip Jägenstedt <philip at lysator liu se>
4480 * docs/manual/advanced-dataaccess.xml:
4481 Fix 'Embedding static elements' section to use
4482 GST_PLUGIN_DEFINE_STATIC (#345607).
4484 2006-06-21 Tim-Philipp Müller <tim at centricular dot net>
4486 * tests/check/pipelines/simple-launch-lines.c: (test_stop_from_app):
4487 Attempt to 'fix' spuriously failing test case: it seems like the
4488 timeout of half a second is simply too small when the system is under
4489 load otherwise, and the timeout doesn't really seem to serve any
4490 particular purpose here. Give the pipeline a few seconds to preroll
4491 first, and then give it another half a second to go from PAUSED to
4492 PLAYING and marshal the message into the main thread.
4494 2006-06-21 Tim-Philipp Müller <tim at centricular dot net>
4496 * tools/gst-feedback-m.m:
4497 Don't only use unversioned tools, try versioned tools as well
4500 2006-06-21 Tim-Philipp Müller <tim at centricular dot net>
4502 * gst/gstbus.c: (gst_bus_class_init):
4503 Fix some typos, make docs more explicit.
4505 2006-06-20 Wim Taymans <wim@fluendo.com>
4507 * tests/check/gst/gstghostpad.c: (block_callback),
4508 (GST_START_TEST), (gst_ghost_pad_suite):
4509 Added some more ghostpad tests, mainly blocking
4512 2006-06-16 Wim Taymans <wim@fluendo.com>
4514 * plugins/elements/gstfilesink.c: (gst_file_sink_open_file),
4515 (gst_file_sink_close_file), (gst_file_sink_do_seek),
4516 (gst_file_sink_event), (gst_file_sink_render):
4517 * plugins/elements/gstfilesink.h:
4518 Check if we can seek in the file instead of assuming
4519 we always can. Post an error when we are asked to seek in a
4520 non-seekable file (like a fifo). Fixes #343312.
4523 2006-06-16 Tim-Philipp Müller <tim at centricular dot net>
4525 * tools/gst-launch.1.in:
4526 Un-garble (fourcc) bit in filtered caps section.
4528 2006-06-16 Tim-Philipp Müller <tim at centricular dot net>
4530 * docs/manual/advanced-autoplugging.xml:
4531 * docs/manual/basics-helloworld.xml:
4532 * docs/manual/highlevel-components.xml:
4533 Don't leak bus reference in sample code.
4535 2006-06-15 Tim-Philipp Müller <tim at centricular dot net>
4538 Add default for new --enable-plugin-docs switch.
4541 Use new GST_PLUGIN_DOCS macro to check for pyxml etc.
4545 Use new ENABLE_PLUGIN_DOCS conditional.
4547 2006-06-14 Wim Taymans <wim@fluendo.com>
4549 * gst/gstbin.c: (bin_query_duration_done), (gst_bin_query):
4550 Make it clear with a FIXME and a real define what the #if 0
4551 previously disabled.
4553 2006-06-14 Wim Taymans <wim@fluendo.com>
4555 * libs/gst/base/gstbasesink.c: (gst_base_sink_configure_segment),
4556 (gst_base_sink_preroll_object), (gst_base_sink_get_position):
4557 * libs/gst/base/gstbasetransform.c:
4558 (gst_base_transform_sink_eventfunc):
4559 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_event):
4560 Don't randomly and silently reset a segment when the format
4561 changes as this is a bug somewhere upstream. Fixes #330379.
4563 2006-06-14 Tim-Philipp Müller <tim at centricular dot net>
4565 Patch by: Wouter Paesen <wouter at kangaroot net>
4567 * libs/gst/controller/gstcontroller.c:
4568 (gst_controlled_property_new):
4569 Fix controlling of float properties (#344849).
4571 * tests/check/libs/controller.c:
4572 (gst_test_mono_source_get_property),
4573 (gst_test_mono_source_set_property),
4574 (gst_test_mono_source_class_init), (GST_START_TEST):
4575 While we're at it, add some float stuff to unit test.
4577 2006-06-13 Thomas Vander Stichele <thomas at apestaart dot org>
4580 * docs/images/gdp-header.svg:
4582 * docs/libs/Makefile.am:
4583 * docs/libs/gdp-header.png:
4584 * libs/gst/dataprotocol/dataprotocol.c:
4585 add it to the API docs
4586 * docs/manual/intro-motivation.xml:
4589 2006-06-13 Tim-Philipp Müller <tim at centricular dot net>
4591 * gst/gst.c: (scan_and_update_registry), (init_post):
4592 If the fork()'ed child process can't write the updated registry cache
4593 file to disk for some reason, make it exit with a failure exit code,
4594 so that the parent can then re-scan the plugins itself and update the
4595 registry structures in memory and work with that (rather than failing
4596 when creating elements because seemingly no plugins are available).
4597 Refactor registry scanning code into separate function for this and
4598 also separate fork() and non-fork() code paths. Fixes #344748.
4600 2006-06-13 Wim Taymans <wim@fluendo.com>
4602 * docs/manual/advanced-dataaccess.xml:
4603 Fix wrong PluginDesc. Fixes #344755.
4605 2006-06-13 Tim-Philipp Müller <tim at centricular dot net>
4607 * gst/gstregistryxml.c: (gst_registry_xml_write_cache):
4608 Fix silly bug that prevented us from creating
4609 ~/.gstreamer-0.10 and writing the registry in one
4610 go (the first call to g_mkstemp() would overwrite the
4611 placeholder in the template string, so the second call
4612 to g_mkstemp() after creating the missing directory
4613 would then error out with 'invalid argument').
4615 2006-06-13 Edward Hervey <edward@fluendo.com>
4617 * gst/gst.c: (init_post):
4620 2006-06-13 Thomas Vander Stichele <thomas at apestaart dot org>
4622 * gst/glib-compat-private.h:
4623 * gst/glib-compat.c:
4624 * gst/glib-compat.h:
4625 * gst/gstvalue.c: (gst_value_serialize_flags):
4626 remove GLib 2.6 compatibility code
4628 2006-06-12 Tim-Philipp Müller <tim at centricular dot net>
4630 * gst/parse/Makefile.am:
4631 Fix build with 'make -j N' even more (#340016).
4633 2006-06-12 Wim Taymans <wim@fluendo.com>
4635 * docs/gst/gstreamer-sections.txt:
4638 2006-06-12 Wim Taymans <wim@fluendo.com>
4640 * gst/gstsegment.c: (gst_segment_set_duration),
4641 (gst_segment_set_last_stop), (gst_segment_set_seek),
4642 (gst_segment_set_newsegment_full), (gst_segment_to_stream_time),
4643 (gst_segment_to_running_time), (gst_segment_clip):
4644 Use G_UNLIKELY to help the compiler a bit.
4646 2006-06-12 Wim Taymans <wim@fluendo.com>
4648 Patch by: Stefan Kost <ensonic at sonicpulse dot de>
4650 * gst/gstevent.c: (gst_event_get_type):
4652 * gst/gstpad.c: (gst_pad_chain_unchecked), (gst_pad_chain),
4654 constify quark registration strings. Fixes #344115
4655 Avoid unneeded type checking is _pad_push() by internally
4656 calling gst_pad_chain_unchecked().
4658 2006-06-12 Wim Taymans <wim@fluendo.com>
4660 * gst/gstbuffer.c: (gst_buffer_get_type), (gst_buffer_finalize),
4661 (_gst_buffer_copy), (gst_buffer_is_metadata_writable),
4662 (gst_subbuffer_finalize), (gst_buffer_create_sub),
4663 (gst_buffer_is_span_fast), (gst_buffer_span):
4664 Init _type for consistency.
4665 Use _FLAGS macro to avoid type check.
4666 Avoid unneeded type checks in subbufer code.
4668 2006-06-12 Wim Taymans <wim@fluendo.com>
4670 * gst/gst.c: (gst_debug_help):
4671 * gst/gstplugin.c: (gst_plugin_finalize), (gst_plugin_list_free):
4672 * gst/gstpluginfeature.c: (gst_plugin_feature_finalize),
4673 (gst_plugin_feature_list_free):
4674 * gst/gstregistry.c: (gst_registry_add_plugin),
4675 (gst_registry_add_feature), (gst_registry_plugin_filter),
4676 (gst_registry_feature_filter), (gst_registry_find_plugin),
4677 (gst_registry_find_feature), (gst_registry_get_plugin_list),
4678 (gst_registry_lookup_feature_locked), (gst_registry_lookup_locked):
4679 * gst/gstregistryxml.c: (load_feature),
4680 (gst_registry_xml_read_cache), (gst_registry_xml_write_cache):
4681 * gst/gstminiobject.c: (gst_mini_object_unref),
4682 (gst_mini_object_replace), (gst_value_mini_object_free),
4683 (gst_value_mini_object_copy):
4684 Use _CAST macros to avoid unneeded type checking.
4685 Added some more G_UNLIKELY.
4687 2006-06-12 Wim Taymans <wim@fluendo.com>
4690 Avoid unneeded type checking.
4691 API: GST_BUFFER_IS_DISCONT
4693 * gst/gstminiobject.h:
4694 Avoid type check in flag accessor.
4696 * gst/gstelementfactory.h:
4698 * gst/gstpluginfeature.h:
4700 API: GST_ELEMENT_FACTORY_CAST
4701 API: GST_PLUGIN_CAST
4702 API: GST_PLUGIN_FEATURE_CAST
4704 2006-06-12 Wim Taymans <wim@fluendo.com>
4706 * gst/gstobject.c: (gst_object_get_type), (gst_object_ref),
4708 Add G_UNLIKELY in type registration.
4709 Avoid type check in _ref/_unref since that is also
4712 2006-06-12 Wim Taymans <wim@fluendo.com>
4714 * gst/gsterror.c: (gst_g_error_get_type):
4715 * gst/gstpadtemplate.c: (gst_pad_template_get_type),
4716 (gst_static_pad_template_get_type):
4717 * gst/gsttaglist.c: (gst_tag_list_get_type):
4718 * gst/gsttagsetter.c: (gst_tag_setter_get_type):
4719 * gst/gsttypefindfactory.c: (gst_type_find_factory_get_type):
4720 * gst/gsturi.c: (gst_uri_handler_get_type):
4721 * gst/gstvalue.c: (gst_date_get_type):
4722 * gst/gstxml.c: (gst_xml_get_type):
4723 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_type),
4724 (gst_base_sink_preroll_object), (gst_base_sink_get_position):
4725 * libs/gst/base/gstbasesrc.c: (gst_base_src_get_type):
4726 Add G_UNLIKELY in type registration.
4728 2006-06-12 Wim Taymans <wim@fluendo.com>
4730 * tools/gst-inspect.c: (print_signal_info):
4731 Properly print enum values.
4733 2006-06-12 Wim Taymans <wim@fluendo.com>
4735 * gst/gstinfo.c: (gst_debug_set_active),
4736 (gst_debug_category_set_threshold), (_gst_debug_nameof_funcptr):
4738 Add some G_[UN]LIKELY.
4739 Maintain __gst_debug_min to avoid formatting the arguments of
4740 debug messages that will be dropped anyway to avoid a lot of
4741 overhead from the debugging system.
4743 2006-06-11 Stefan Kost <ensonic@users.sf.net>
4747 add missing files containing translatable strings, tell intltool about
4750 2006-06-11 Stefan Kost <ensonic@users.sf.net>
4752 * tests/check/libs/.cvsignore:
4753 add test-binary to ignore list
4755 2006-06-11 Stefan Kost <ensonic@users.sf.net>
4757 * docs/libs/gstreamer-libs-docs.sgml:
4758 reorder (put dp into a chapter) and indent
4760 2006-06-10 Thomas Vander Stichele <thomas at apestaart dot org>
4765 === release 0.10.8 ===
4767 2006-06-10 Thomas Vander Stichele <thomas at apestaart dot org>
4770 releasing 0.10.8, "Soepeke, ik zie ou nog altijd nie"
4772 2006-06-10 Thomas Vander Stichele <thomas at apestaart dot org>
4774 * gst/gst.c: (init_post):
4775 move pid declaration to declaration block
4777 2006-06-10 Thomas Vander Stichele <thomas at apestaart dot org>
4779 * gst/gst.c: (init_post):
4780 use _exit() instead of exit() in our forked child; this ensures
4781 that none of the registered exit handlers from whatever is using
4782 GStreamer get executed. This fixes gnome-mixer-applet failing
4783 to load, because ORBit would shut down.
4784 Spotted by: Edward Hervey <edward@fluendo.com>
4785 Fix suggested by: Tim-Philipp Müller <tim at centricular dot net>
4788 2006-06-09 Thomas Vander Stichele <thomas at apestaart dot org>
4793 === release 0.10.7 ===
4795 2006-06-09 Thomas Vander Stichele <thomas at apestaart dot org>
4798 releasing 0.10.7, "Soepeke, ik zie ou"
4800 2006-06-07 Thomas Vander Stichele <thomas at apestaart dot org>
4823 * win32/common/config.h:
4826 2006-06-07 Wim Taymans <wim@fluendo.com>
4828 * gst/gstindex.c: (gst_index_gtype_resolver):
4829 * tools/gst-xmlinspect.c: (print_plugin_info):
4830 Fix leak spotted by coverity checker. Fixes #343827
4831 Fix another other leak found by paolo borelli.
4833 2006-06-06 Thomas Vander Stichele <thomas at apestaart dot org>
4835 * libs/gst/dataprotocol/dataprotocol.c:
4836 (gst_dp_header_from_buffer_any), (gst_dp_packet_from_caps_any),
4837 (gst_dp_version_get_type), (gst_dp_init),
4838 (gst_dp_header_from_buffer), (gst_dp_header_from_buffer_1_0),
4839 (gst_dp_packet_from_caps), (gst_dp_packet_from_caps_1_0),
4840 (gst_dp_packet_from_event), (gst_dp_packet_from_event_1_0),
4841 (gst_dp_event_from_packet_0_2), (gst_dp_event_from_packet_1_0),
4842 (gst_dp_event_from_packet), (gst_dp_packetizer_new),
4843 (gst_dp_packetizer_free):
4844 * libs/gst/dataprotocol/dataprotocol.h:
4845 API: add a GstDPPacketizer object, and create/free functions
4846 API: add GstDPVersion enum
4847 Add 1.0 event function that uses the string serialization
4848 Serialize more useful buffer flags
4851 2006-06-06 Thomas Vander Stichele <thomas at apestaart dot org>
4853 * tests/check/Makefile.am:
4854 * tests/check/gst/gstabi.c:
4855 * tests/check/gst/struct_ppc64.h:
4856 * tests/check/libs/libsabi.c:
4857 * tests/check/libs/struct_ppc64.h:
4858 add ppc64 structure sizes
4860 2006-06-06 Thomas Vander Stichele <thomas at apestaart dot org>
4862 * tests/check/Makefile.am:
4863 * tests/check/gst/gstabi.c:
4864 * tests/check/gst/struct_x86_64.h:
4865 * tests/check/libs/libsabi.c:
4866 * tests/check/libs/struct_x86_64.h:
4867 generate and add structure size lists for x86_64
4869 2006-06-06 Thomas Vander Stichele <thomas at apestaart dot org>
4871 * libs/gst/check/gstcheck.c: (gst_check_abi_list):
4872 * libs/gst/check/gstcheck.h:
4873 factor out the method from tests that checks size of structures,
4874 and add code to generate the header containing these sizes
4875 * tests/check/gst/gstabi.c: (GST_START_TEST):
4876 * tests/check/gst/struct_i386.h:
4877 * tests/check/libs/libsabi.c: (GST_START_TEST):
4878 * tests/check/libs/struct_i386.h:
4881 2006-06-06 Michael Smith <msmith@fluendo.com>
4884 Don't use c++-style comments, fixes #343929
4886 2006-06-05 Edward Hervey <edward@fluendo.com>
4889 plugin_paths is not used if we build without registry support.
4891 * gst/gstsegment.c: (gst_segment_copy):
4892 _copy() was always returning NULL...
4894 2006-06-02 Thomas Vander Stichele <thomas at apestaart dot org>
4896 * libs/gst/dataprotocol/dataprotocol.c:
4897 (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
4898 (gst_dp_packet_from_event):
4901 2006-06-02 Thomas Vander Stichele <thomas at apestaart dot org>
4903 * libs/gst/check/gstcheck.c: (gst_check_teardown_src_pad):
4904 make sure we unset caps
4906 2006-06-02 Michael Smith <msmith@fluendo.com>
4908 * libs/gst/check/gstcheck.c: (gst_check_init),
4909 (gst_check_chain_func):
4910 * libs/gst/check/gstcheck.h:
4911 Add a cond/mutex to the check support lib, signal this whenever we
4912 add to the buffers list. This will allow tests to not busy-wait on
4915 2006-06-02 Thomas Vander Stichele <thomas at apestaart dot org>
4917 * libs/gst/dataprotocol/dataprotocol.c:
4918 (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
4919 (gst_dp_packet_from_event):
4920 factor out some common header init code
4922 2006-06-02 Thomas Vander Stichele <thomas at apestaart dot org>
4924 * docs/libs/gstreamer-libs-sections.txt:
4925 * docs/libs/tmpl/gstdataprotocol.sgml:
4926 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
4927 * libs/gst/dataprotocol/dataprotocol.h:
4928 API: make gst_dp_crc() public
4930 2006-06-01 Stefan Kost <ensonic@users.sf.net>
4932 * plugins/indexers/gstindexers.c: (plugin_init):
4933 conditionally register fileindexer (fixes #343598)
4935 2006-06-01 Stefan Kost <ensonic@users.sf.net>
4937 * gst/gsttagsetter.h:
4938 Can't cast ifaces to a class
4940 * libs/gst/net/gstnetclientclock.h:
4941 * libs/gst/net/gstnettimeprovider.h:
4942 * plugins/elements/gstfakesink.h:
4943 * plugins/elements/gstfakesrc.h:
4944 * plugins/elements/gstfdsink.h:
4945 * plugins/elements/gstfdsrc.h:
4946 * plugins/elements/gstfilesink.h:
4947 * plugins/elements/gstfilesrc.h:
4948 * plugins/elements/gstidentity.h:
4949 * plugins/elements/gstqueue.h:
4950 * plugins/elements/gsttee.h:
4951 * plugins/indexers/gstfileindex.c:
4952 * plugins/indexers/gstmemindex.c:
4953 * tests/old/examples/plugins/example.h:
4954 Fix more gobject macros: obj<->klass, GstXXX<->GstXXXClass
4956 2006-06-01 Thomas Vander Stichele <thomas at apestaart dot org>
4958 * libs/gst/dataprotocol/dataprotocol.c:
4959 (gst_dp_header_from_buffer):
4960 make sure we zero the whole ABI-compatible area
4962 2006-06-01 Wim Taymans <wim@fluendo.com>
4964 Patch by: Alessandro Decina <alessandro at nnva dot org>
4966 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_stop):
4967 Make sure the EOS flag is cleared from pads after a flush
4968 or stop. Fixes #343538.
4970 * tests/check/libs/collectpads.c: (GST_START_TEST),
4971 (gst_collect_pads_suite):
4972 Added test for collectpads reusage after EOS.
4974 2006-05-30 Sebastien Moutte <sebastien@moutte.net>
4977 set #include <sys/wait.h> in a #ifdef #ifdef HAVE_FORK
4978 * win32/common/libgstbase.def:
4979 export gst_collect_pads_set_flushing
4980 * win32/common/libgstreamer.def:
4981 export gst_pad_set_acceptcaps_function, gst_structure_empty_new,
4982 gst_value_fraction_multiply
4983 * win32/vs6/gst_inspect.dsp:
4984 add a link to intl.lib
4986 2006-05-30 Wim Taymans <wim@fluendo.com>
4988 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_remove_pad),
4989 (gst_collect_pads_chain):
4990 Handle the case where a pad is removed from the collection
4991 that could cause the other pads to become collectable.
4993 2006-05-30 Wim Taymans <wim@fluendo.com>
4996 Clarify the use of _release_request_pad() and
4997 _get_request_pad() a bit better.
4999 * libs/gst/base/gstadapter.c: (gst_adapter_peek),
5000 (gst_adapter_take_buffer):
5001 Fix some doc and comment typos.
5003 2006-05-30 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
5005 * docs/gst/gstreamer-sections.txt:
5006 * docs/libs/gstreamer-libs-sections.txt:
5007 add declared symbols
5009 2006-05-30 Jan Schmidt <thaytan@mad.scientist.com>
5011 * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
5012 Add debug that can be enabled using a #define at the top of the file,
5013 for dumping stats about how late/early we were when waking up from
5014 waiting on the clock.
5016 2006-05-30 Wim Taymans <wim@fluendo.com>
5018 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_check_pads):
5019 When rebuilding the pad list, don't leak the previous list.
5021 2006-05-30 Wim Taymans <wim@fluendo.com>
5023 Patch by: Lutz Mueller <lutz at topfrose dot de>
5025 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
5026 (gst_base_src_get_query_types), (gst_base_src_update_length):
5027 Publish supported query types.
5028 Update last_stop field in get_range mode so the position
5029 query works. Fixes #342321.
5031 2006-05-30 Tim-Philipp Müller <tim at centricular dot net>
5033 * docs/gst/gstreamer-sections.txt:
5034 * gst/gsttaglist.c: (_gst_tag_initialize):
5036 API: add GST_TAG_PREVIEW_IMAGE (#343341).
5038 2006-05-30 Wim Taymans <wim@fluendo.com>
5040 Patch by: Alessandro Decina <alessandro at nnva dot org>
5042 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_remove_pad):
5043 Unlock mutex when removing an unknown pad.
5046 * tests/check/Makefile.am:
5047 * tests/check/libs/collectpads.c: (collected_cb), (push_buffer),
5048 (push_event), (setup), (teardown), (GST_START_TEST),
5049 (gst_collect_pads_suite), (main):
5050 Added collecpads check, disabled for now as check crashes for
5053 2006-05-29 Wim Taymans <wim@fluendo.com>
5055 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_finalize):
5056 Don't leak pads lists.
5058 2006-05-29 Wim Taymans <wim@fluendo.com>
5060 * docs/libs/gstreamer-libs-sections.txt:
5061 * libs/gst/base/gstcollectpads.c:
5062 (gst_collect_pads_set_flushing_unlocked),
5063 (gst_collect_pads_set_flushing), (gst_collect_pads_start),
5064 (gst_collect_pads_stop):
5065 * libs/gst/base/gstcollectpads.h:
5066 API: gst_collect_pads_set_flushing()
5067 Added api to set the pads to flushing, useful for seeking
5068 code in elements using collectpads.
5069 Clear segment when receiving a flush.
5071 2006-05-29 Tim-Philipp Müller <tim at centricular dot net>
5073 * gst/gst.c: (add_path_func), (init_post):
5074 Don't scan registry paths passed via --gst-plugin-path immediately
5075 (will crash, because absolutely nothing is set up and no types are
5076 registered etc.); do this later in init_post(). Fixes #343057.
5078 2006-05-28 Thomas Vander Stichele <thomas at apestaart dot org>
5080 * gst/gst.c: (init_post):
5081 if we have fork, fork while reading/rebuilding the registry
5082 so the parent doesn't take the hit of having all plugins loaded
5083 in memory. Fixes #342777.
5085 Check if we have fork()
5086 * win32/common/config.h.in:
5089 2006-05-26 Jan Schmidt <thaytan@mad.scientist.com>
5091 * plugins/elements/gstelements.c:
5092 * plugins/elements/gstfilesrc.c: (gst_file_src_class_init),
5093 (gst_file_src_init), (gst_file_src_set_property),
5094 (gst_file_src_get_property), (gst_file_src_start):
5095 * plugins/elements/gstfilesrc.h:
5096 API: GstFileSrc::use-mmap
5098 Add a use-mmap property to enable easier testing of all code paths.
5099 Bump rank to PRIMARY, so filesrc is the preferred file reader and used
5100 in the absence of gnomevfssrc. (Closes #340501)
5102 2006-05-26 Zaheer Abbas Merali <zaheerabbas at merali dot org>
5104 * tools/gst-inspect.c:
5105 Add missing include, removes warning of ngettext not being defined on
5108 2006-05-26 Jan Schmidt <thaytan@mad.scientist.com>
5110 * gst/gstvalue.c: (gst_value_deserialize_fraction):
5111 Handle NULL input and output pointers silently as a failed conversion,
5112 rather than g_warnings.
5114 2006-05-25 Wim Taymans <wim@fluendo.com>
5116 * libs/gst/net/gstnetclientclock.c: (gst_net_client_clock_start):
5117 Initialize variable before using. Fixes #342820.
5119 2006-05-24 Tim-Philipp Müller <tim at centricular dot net>
5121 * libs/gst/base/gsttypefindhelper.c: (buf_helper_find_peek):
5122 Fix off-by-one bug that would only allow peeks of N-1 bytes
5123 from the start even if the buffer to typefind on contains
5124 in fact N bytes of data (makes vorbis typefinding from a
5125 vorbis identification header buffer work).
5127 * tests/check/Makefile.am:
5128 * tests/check/libs/.cvsignore:
5129 * tests/check/libs/typefindhelper.c: (GST_START_TEST),
5130 (gst_typefindhelper_suite), (main), (foobar_typefind),
5132 Add very basic unit test for gst_type_find_helper_for_buffer()
5133 that checks for the problem fixed above.
5135 2006-05-24 Thomas Vander Stichele <thomas at apestaart dot org>
5137 * tools/gst-inspect.c: (print_interfaces),
5138 (print_element_properties_info), (print_element_list), (main):
5139 add more translatable strings
5141 2006-05-23 Tim-Philipp Müller <tim at centricular dot net>
5143 Patch by: Julien Moutte <julien at moutte net>
5145 * docs/gst/gstreamer-sections.txt:
5146 Make new GST_FLOW_IS_SUCCESS macro visible in docs.
5148 * plugins/elements/gstfakesink.c: (gst_fake_sink_class_init),
5149 (gst_fake_sink_preroll):
5150 * plugins/elements/gstfakesink.h:
5151 API: Add new GstFakeSink::preroll-handoff signal (#337100).
5153 2006-05-23 Wim Taymans <wim@fluendo.com>
5155 * gst/gstpad.c: (gst_flow_get_name), (gst_flow_to_quark):
5157 Added _CUSTOM error and success GstFlowReturn that can be
5158 used be elements internally.
5159 Added macro to check for SUCCESS flowreturns.
5160 API: GST_FLOW_CUSTOM_SUCCESS
5161 API: GST_FLOW_CUSTOM_ERROR
5162 API: GST_FLOW_IS_SUCCESS
5164 * tests/check/gst/gstpad.c: (GST_START_TEST), (gst_pad_suite):
5165 Added check for GstFlowReturn sanity.
5167 2006-05-23 Wim Taymans <wim@fluendo.com>
5169 Patch by: Mark Nauwelaerts <manauw at skynet dot be>
5171 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_remove_pad),
5172 (gst_collect_pads_event):
5173 clear/reset segment info in FLUSH_STOP.
5176 2006-05-22 Stefan Kost <ensonic@users.sf.net>
5178 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_stop),
5179 (gst_collect_pads_check_collected):
5180 Flush queued buffer on _stop(), fixes playing again (#342454)
5182 2006-05-22 Thomas Vander Stichele <thomas at apestaart dot org>
5184 * tests/check/gst/gststructure.c: (GST_START_TEST),
5185 (gst_structure_suite):
5186 add a test for a complete structure
5188 2006-05-19 Tim-Philipp Müller <tim at centricular dot net>
5190 * docs/faq/developing.xml:
5192 * docs/faq/troubleshooting.xml:
5193 * docs/faq/using.xml:
5194 Some minor FAQ updates that won't change the fact that
5195 our FAQ is badly structured, full of information hardly
5196 anyone new to GStreamer needs to know and lacking lots
5197 of information people constantly ask for.
5199 2006-05-19 Jan Schmidt <thaytan@mad.scientist.com>
5201 * gst/gstpad.c: (gst_pad_set_caps):
5202 Short-circuit gst_pad_set_caps if setting the existing
5203 caps pointer again, and avoid printing debug and
5204 reffing/unreffing the caps.
5206 * plugins/elements/gstqueue.c: (gst_queue_push_one):
5207 There's actually no need to set the caps before pushing -
5208 the acceptcaps method will handle it anyway.
5210 2006-05-19 Tim-Philipp Müller <tim at centricular dot net>
5212 * docs/gst/gstreamer-sections.txt:
5213 * win32/common/libgstreamer.def:
5214 * gst/gstutils.c: (gst_element_seek_simple):
5216 API: add gst_element_seek_simple() (#342238).
5218 2006-05-18 Edward Hervey <edward@fluendo.com>
5220 * gst/gsttypefind.c: (gst_type_find_get_type):
5221 * gst/gsttypefind.h:
5222 Added GST_TYPE_TYPE_FIND and gst_type_find_get_type() so a GType gets
5223 registered for GstTypeFind pointers. This allows wrapping the structure
5224 in bindings (i.e. gst-python).
5226 2006-05-18 Tim-Philipp Müller <tim at centricular dot net>
5228 * gst/gsttagsetter.c:
5229 Docs additions and fixes (see #339918).
5231 2006-05-18 Jan Schmidt <thaytan@mad.scientist.com>
5233 * plugins/elements/gstcapsfilter.c: (gst_capsfilter_prepare_buf):
5234 The caps intersection algorithm can produce multiple copies of the
5235 caps. Until that is fixed, we need to simplify the result to be
5236 sure whether the allowed caps are fixed or not.
5238 * plugins/elements/gstqueue.c: (gst_queue_init),
5239 (gst_queue_bufferalloc), (gst_queue_acceptcaps),
5240 (gst_queue_push_one):
5241 Proxied buffer alloc should not set the caps on the source pad.
5242 When pushing buffers, we always accept the caps change that triggers.
5243 This prevents negotiation errors caused by caps changing mid-stream
5244 and then being refused on our source pad (because upstream is now
5245 refusing those caps).
5247 2006-05-18 Tim-Philipp Müller <tim at centricular dot net>
5249 * tests/examples/helloworld/helloworld.c: (main):
5250 Must plug audioconvert and audioresample between decoder
5253 2006-05-17 Jan Schmidt <thaytan@mad.scientist.com>
5255 * gst/gstregistryxml.c: (read_string), (load_pad_template),
5256 (load_feature), (load_plugin):
5257 Allow empty strings for some of the plugin fields so we don't
5258 drop valid plugin entries that were written out correctly
5261 2006-05-17 Sebastien Moutte <sebastien@moutte.net>
5263 * gst/gstregistryxml.c: (gst_registry_xml_write_cache):
5264 Use g_remove and g_rename instead of remove and rename that don't
5265 handle utf8 characters. rename was failing for users who had specific
5266 characters in their name then the registry was built at each
5268 * win32/vs6/gst_inspect.dsp:
5269 * win32/vs6/gst_launch.dsp:
5270 * win32/vs6/libgstbase.dsp:
5271 * win32/vs6/libgstcoreelements.dsp:
5272 * win32/vs6/libgstreamer.dsp:
5273 Use a debug version of libxml2 (libxml2D.lib,libxml2D.dll) for DEBUG
5274 build of libgstreamer and clean unused libraries in projects link
5277 2006-05-17 Edward Hervey <edward@fluendo.com>
5279 * plugins/elements/gstqueue.c: (gst_queue_push_one):
5280 The queue is not responsible for pushing an EOS when receiving a fatal
5281 flow error. It's up to the real element driving the pipeline to do that.
5283 2006-05-16 Edward Hervey <edward@fluendo.com>
5285 * plugins/elements/gstqueue.c: (gst_queue_push_one):
5286 The queue was posting a non-needed GST_MESSAGE_ERROR when pushing a
5287 buffer returned a fatal error. It should just send an EOS and stop
5289 Upstream elements will then properly receive the GST_FLOW_UNEXPECTED
5290 when pushing buffers on the queue and will be able to handle the event.
5292 2006-05-16 Tim-Philipp Müller <tim at centricular dot net>
5294 * docs/manual/basics-bins.xml:
5295 * docs/manual/basics-init.xml:
5296 Fix typos and minor errors in sample code (#341856).
5298 2006-05-16 Wim Taymans <wim@fluendo.com>
5300 * docs/design/part-qos.txt:
5301 Fix indexes in formulas to make more sense.
5303 2006-05-15 Wim Taymans <wim@fluendo.com>
5305 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_position):
5306 Don't report POSITION based on clock time if sync is
5309 2006-05-15 Tim-Philipp Müller <tim at centricular dot net>
5312 Add cast to make compiler happy - refcount variable was a gint
5313 in GstObject but is a guint in GObject and g_atomic_int_get()
5316 2006-05-15 Thomas Vander Stichele <thomas at apestaart dot org>
5318 * gst/parse/Makefile.am:
5319 chain commands using &&, which also makes parallel make work
5321 2006-05-14 Tim-Philipp Müller <tim at centricular dot net>
5323 * docs/gst/gstreamer-sections.txt:
5329 === release 0.10.6 ===
5331 2006-05-14 Jan Schmidt <thaytan@mad.scientist.com>
5334 releasing 0.10.6, "Take the cannoli"
5336 2006-05-13 Tim-Philipp Müller <tim at centricular dot net>
5338 * tools/gst-launch.c: (print_tag):
5339 Fix use of uninitialized variable in the hypothetical
5340 case that some broken plugin creates a GST_TAG_IMAGE
5341 tag containing a NULL buffer (#341667).
5343 2006-05-12 Tim-Philipp Müller <tim at centricular dot net>
5345 * tools/gst-launch.c: (print_tag):
5346 Print something more intelligible for image tags when
5347 using the -t switch (#341556).
5349 2006-05-12 Thomas Vander Stichele <thomas at apestaart dot org>
5354 define GST_MAJORMINOR so we have it available in win32/common/config.h
5355 Possibly remove it from our Makefile.am files later
5356 * win32/common/config.h:
5357 * win32/common/config.h.in:
5358 added GST_MAJORMINOR
5359 * win32/common/gstenumtypes.c: (register_gst_resource_error):
5360 * win32/common/gstversion.h:
5363 2006-05-12 Sebastien Moutte <sebastien@moutte.net>
5366 Update win32 files listing.
5367 * win32/common/gstversion.h:
5368 Add GST_MAJORMINOR definition.
5369 * win32/common/libgstreamer.def:
5370 Add new exported functions.
5372 2006-05-12 Michael Smith <msmith@fluendo.com>
5374 * gst/gstplugin.c: (gst_plugin_load_file):
5375 If an so file has no plugin entry point, unload the module.
5377 2006-05-11 Wim Taymans <wim@fluendo.com>
5379 * plugins/elements/gstqueue.c: (gst_queue_chain), (gst_queue_loop),
5380 (gst_queue_set_property):
5381 Don't forget to signal the _chain or _loop function
5382 when the queue size or thresholds change since that might
5383 cause them to make progres again.
5385 2006-05-11 Stefan Kost <ensonic@users.sf.net>
5387 * gst/gstclock.c: (gst_clock_class_init):
5388 * gst/gstindex.c: (gst_index_class_init):
5389 * gst/gstobject.c: (gst_object_class_init):
5390 * gst/gstpad.c: (gst_pad_class_init):
5391 * gst/gstpipeline.c: (gst_pipeline_class_init):
5392 * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init):
5393 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init):
5394 * libs/gst/base/gstbasetransform.c:
5395 (gst_base_transform_class_init):
5396 * libs/gst/net/gstnetclientclock.c:
5397 (gst_net_client_clock_class_init):
5398 * libs/gst/net/gstnettimeprovider.c:
5399 (gst_net_time_provider_class_init):
5400 * plugins/elements/gstcapsfilter.c: (gst_capsfilter_class_init):
5401 * plugins/elements/gstfakesink.c: (gst_fake_sink_class_init):
5402 * plugins/elements/gstfakesrc.c: (gst_fake_src_class_init):
5403 * plugins/elements/gstfdsink.c: (gst_fd_sink_class_init):
5404 * plugins/elements/gstfdsrc.c: (gst_fd_src_class_init):
5405 * plugins/elements/gstfilesink.c: (gst_file_sink_class_init):
5406 * plugins/elements/gstfilesrc.c: (gst_file_src_class_init):
5407 * plugins/elements/gstidentity.c: (gst_identity_class_init):
5408 * plugins/elements/gsttee.c: (gst_tee_class_init):
5409 * tests/old/examples/plugins/example.c: (gst_example_class_init):
5410 * tests/old/testsuite/threads/signals.c: (gst_test_class_init):
5411 G_OBJECT_CLASS macro usage batch cleanup, fixes #337747 for core
5413 2006-05-11 Wim Taymans <wim@fluendo.com>
5415 * gst/gstbuffer.c: (_gst_buffer_initialize):
5416 Register subbufer along with the buffer type so that
5417 it does not accidentally gets registered from N
5418 different streaming threads in a non threadsafe way.
5420 2006-05-10 Tim-Philipp Müller <tim at centricular dot net>
5425 Make gtk-doc generate docs for our inlined gst_buffer_ref(),
5426 gst_event_ref() and gst_message_ref() functions again
5427 (ugly hack, please do fix if there's a better way besides
5428 overrides.txt, which doesn't seem to work).
5430 2006-05-10 Thomas Vander Stichele <thomas at apestaart dot org>
5432 * libs/gst/check/gstcheck.h:
5433 add an assert for setting state to avoid lots of repetitive code
5436 2006-05-10 Thomas Vander Stichele <thomas at apestaart dot org>
5438 * gst/gstvalue.c: (gst_value_serialize_flags):
5439 fix a leak if no flags are set
5440 * tests/check/gst/gstvalue.c: (GST_START_TEST):
5443 2006-05-10 Tim-Philipp Müller <tim at centricular dot net>
5445 * docs/manual/basics-pads.xml:
5446 Expand a bit on caps and filtered links and update
5447 examples that were still using the no longer existing
5448 gst_pad_link_filtered() (#338206).
5450 2006-05-10 Wim Taymans <wim@fluendo.com>
5452 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_finalize),
5453 (gst_collect_pads_add_pad), (gst_collect_pads_remove_pad),
5454 (gst_collect_pads_set_flushing), (gst_collect_pads_start),
5455 (gst_collect_pads_stop):
5456 * libs/gst/base/gstcollectpads.h:
5457 No need to call _stop in _finalize.
5458 Iterate the main pad list in _finalize.
5459 Added some more debug.
5460 Free lists and data in the right order.
5461 Also free data whem doing _remove_pad when stopped for
5462 backward compatibility protect ::started with PAD_LOCK as
5465 2006-05-10 Thomas Vander Stichele <thomas at apestaart dot org>
5467 * gst/gststructure.c: (gst_structure_gtype_from_abbr),
5468 (gst_structure_parse_value):
5470 rename a method so that it actually says what it does better
5472 2006-05-10 Thomas Vander Stichele <thomas at apestaart dot org>
5474 * gst/gstevent.c: (_gst_event_initialize):
5475 * gst/gstformat.c: (_gst_format_initialize):
5476 make sure some essential types used by events are registered
5477 as part of gst_init()
5478 * gst/gstvalue.c: (gst_value_serialize_flags):
5479 if no flags are set, serialize them to a value that represents NONE
5480 so that deserializing them works
5481 * tests/check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
5482 add tests for serialization and deserialization of flags
5484 2006-05-10 Wim Taymans <wim@fluendo.com>
5486 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_collect),
5487 (gst_collect_pads_collect_range), (gst_collect_pads_available),
5488 (gst_collect_pads_check_pads), (gst_collect_pads_check_collected),
5489 (gst_collect_pads_event), (gst_collect_pads_chain):
5492 Catch and return errors from the collect function
5493 Refuse data on eos pads.
5495 2006-05-10 Edward Hervey <edward@fluendo.com>
5497 * gst/gstinterface.h:
5498 GST_IMPLEMENTS_INTERFACE and GST_IS_IMPLEMENTS_INTERFACE use the normal
5499 GInterface type checking.
5500 They were previously using non-defined macros.
5502 2006-05-09 Wim Taymans <wim@fluendo.com>
5504 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_init),
5505 (gst_collect_pads_finalize), (gst_collect_pads_add_pad),
5506 (gst_collect_pads_remove_pad), (gst_collect_pads_set_flushing),
5507 (gst_collect_pads_start), (gst_collect_pads_stop),
5508 (gst_collect_pads_peek), (gst_collect_pads_pop),
5509 (gst_collect_pads_available), (gst_collect_pads_read),
5510 (gst_collect_pads_flush), (gst_collect_pads_check_pads),
5511 (gst_collect_pads_is_collected), (gst_collect_pads_event),
5512 (gst_collect_pads_chain):
5513 * libs/gst/base/gstcollectpads.h:
5514 Clean up the mess that is collectpads, add comments and
5515 FIXMEs where needed.
5516 Maintain a separate pad list so we can add pads while
5517 collecting the other ones. For this we need a new separate
5519 Fix memory leak in finalize.
5520 Refactor some weird code to set/unset pad flushing flags, mark
5522 Don't crash in _available, _read, _flush when we're EOS.
5524 * tests/check/libs/.cvsignore:
5525 Ignore adapter check binary.
5527 2006-05-09 Tim-Philipp Müller <tim at centricular dot net>
5529 * gst/gstindex.c: (gst_index_resolver_get_type):
5530 * plugins/elements/gstfakesink.c:
5531 (gst_fake_sink_state_error_get_type):
5532 * plugins/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
5533 (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type):
5534 * plugins/elements/gstqueue.c: (queue_leaky_get_type):
5535 Const-ify GEnumValue arrays.
5537 2006-05-09 Tim-Philipp Müller <tim at centricular dot net>
5539 * tests/check/gst/gstbuffer.c: (GST_START_TEST):
5540 Add test case for flags + gst_buffer_make_metadata_writable().
5542 2006-05-09 Tim-Philipp Müller <tim at centricular dot net>
5544 * gst/gstbuffer.c: (gst_buffer_make_metadata_writable):
5545 gst_buffer_make_metadata_writable() should maintain the
5546 buffer flags (those that make sense at least) (see #340859).
5548 2006-05-09 Tim-Philipp Müller <tim at centricular dot net>
5550 * tools/gst-inspect.c:
5551 * tools/gst-launch.c:
5552 * tools/gst-typefind.c:
5553 * tools/gst-xmlinspect.c:
5555 Fix up includes: need to include stdlib.h in tools.h for exit().
5557 2006-05-09 Tim-Philipp Müller <tim at centricular dot net>
5559 * gst/gsttaglist.c: (_gst_tag_initialize):
5561 API: add GST_TAG_IMAGE tag (#340721).
5563 2006-05-08 Wim Taymans <wim@fluendo.com>
5566 Added some docs for the segment query.
5568 2006-05-08 Wim Taymans <wim@fluendo.com>
5570 * libs/gst/base/gstbasesrc.c: (gst_base_src_perform_seek),
5571 (gst_base_src_loop), (gst_base_src_change_state):
5572 Always push non-flushing serialized events in the streaming
5575 2006-05-08 Thomas Vander Stichele <thomas at apestaart dot org>
5577 * gst/gsterror.c: (_gst_stream_errors_init):
5578 Add a missing error string.
5580 2006-05-08 Jan Schmidt <thaytan@mad.scientist.com>
5582 * libs/gst/base/gstbasesink.c: (gst_base_sink_configure_segment):
5583 Add applied_rate to the debug
5585 * libs/gst/base/gstbasesrc.c: (gst_base_src_perform_seek):
5586 Copy applied_rate into the outgoing NEWSEGMENT event
5588 2006-05-08 Wim Taymans <wim@fluendo.com>
5590 Patch by: Philippe Rouquier <philippero at libertysurf dot fr>
5592 * libs/gst/base/gstbasesink.c: (gst_base_sink_set_flushing),
5593 (gst_base_sink_change_state):
5594 call ::unlock before taking the PREROLL_LOCK so we can safely
5595 handle elements that lock in ::render.
5598 2006-05-08 Edward Hervey <edward@fluendo.com>
5600 * autogen.sh: (CONFIGURE_DEF_OPT):
5601 Darwin's libtoolize is in fact called glibtoolize.
5602 Adding glibtoolize to the list of accepted names for libtoolize.
5604 2006-05-08 Wim Taymans <wim@fluendo.com>
5606 * libs/gst/base/gstbasesrc.c: (gst_base_src_loop):
5607 Unify error handling, don't post an error message
5608 when a push() returns EOS but perform our normal EOS
5609 handling code. Fixes #340772.
5611 2006-05-08 Wim Taymans <wim@fluendo.com>
5613 * docs/design/part-overview.txt:
5614 Make upsteam/downstream concepts more clear.
5615 Give an example of serialized/non-serialized events.
5617 * docs/design/part-events.txt:
5618 * docs/design/part-streams.txt:
5619 Mention applied_rate.
5621 * docs/design/part-trickmodes.txt:
5622 Mention applied rate, flesh out some more use cases.
5624 * gst/gstevent.c: (gst_event_new_new_segment),
5625 (gst_event_parse_new_segment), (gst_event_new_new_segment_full),
5626 (gst_event_parse_new_segment_full), (gst_event_new_tag),
5627 (gst_event_parse_tag), (gst_event_new_buffer_size),
5628 (gst_event_parse_buffer_size), (gst_event_new_qos),
5629 (gst_event_parse_qos), (gst_event_parse_seek),
5630 (gst_event_new_navigation):
5632 Add applied_rate field to NEWSEGMENT event.
5633 API: gst_event_new_new_segment_full()
5634 API: gst_event_parse_new_segment_full()
5636 * gst/gstsegment.c: (gst_segment_init), (gst_segment_set_seek),
5637 (gst_segment_set_newsegment), (gst_segment_set_newsegment_full),
5638 (gst_segment_to_stream_time), (gst_segment_to_running_time):
5640 Add applied_rate to GstSegment structure.
5641 Make calculation of stream_time and running_time more correct
5642 wrt rate/applied_rate.
5644 API: GstSegment::applied_rate field
5645 API: gst_segment_set_newsegment_full();
5647 * libs/gst/base/gstbasesink.c: (gst_base_sink_configure_segment),
5648 (gst_base_sink_get_sync_times), (gst_base_sink_get_position):
5649 * libs/gst/base/gstbasetransform.c:
5650 (gst_base_transform_sink_eventfunc),
5651 (gst_base_transform_handle_buffer):
5652 Parse and use applied_rate in the GstSegment field.
5654 * tests/check/gst/gstevent.c: (GST_START_TEST):
5655 Add check for applied_rate field.
5657 * tests/check/gst/gstsegment.c: (GST_START_TEST),
5658 (gstsegments_suite):
5659 Add more checks for various GstSegment operations.
5661 2006-05-08 Wim Taymans <wim@fluendo.com>
5663 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times),
5664 (gst_base_sink_do_sync), (gst_base_sink_chain_unlocked),
5665 (gst_base_sink_get_position), (gst_base_sink_change_state):
5666 Store the sync time of the buffer end position separatly in a
5667 new variable eos_rtime so we can properly sync the EOS event.
5669 Fix the docs for gst_base_sink_set_qos_enabled().
5670 Don't set segment start to invalid value when we receive a
5671 non TIME newsegment.
5672 get closer to handling position reporting for negative rates
5675 2006-05-07 Stefan Kost <ensonic@users.sf.net>
5678 Docs about how to print caps for debug purposes.
5680 * gst/gstpadtemplate.c: (gst_static_pad_template_get):
5681 use gst_caps_make_writable instead of gst_caps_copy, Fixes #340608
5683 2006-05-07 Stefan Kost <ensonic@users.sf.net>
5686 use full enum names and preprend a '%' in docs strings to make recent
5687 gtk-doc turn that into a link
5689 2006-05-05 Tim-Philipp Müller <tim at centricular dot net>
5691 * docs/manual/basics-bins.xml:
5692 * docs/manual/basics-bus.xml:
5693 * docs/manual/basics-pads.xml:
5694 Some typo fixes, some additions, some clarifications.
5696 2006-05-05 Tim-Philipp Müller <tim at centricular dot net>
5698 * tools/gst-inspect.c: (main):
5699 * tools/gst-launch.c: (main):
5700 * tools/gst-run.c: (main):
5701 * tools/gst-typefind.c: (main):
5702 * tools/gst-xmlinspect.c: (main):
5703 Use the string passed to g_option_context_new() for
5704 what it's intended for - the program name is already
5707 2006-05-05 Tim-Philipp Müller <tim at centricular dot net>
5709 * tools/Makefile.am:
5710 * tools/gst-inspect.c: (main):
5711 * tools/gst-launch.c: (main):
5712 * tools/gst-xmlinspect.c: (main):
5714 Add back --version command line option (#340460).
5716 * tools/gst-typefind.c: (have_type_handler), (typefind_file), (main):
5717 Add --version option and use GOption for argument parsing; refactor a
5718 bit; accept directories as arguments and recurse into them; lastly,
5719 print a decent error message when things go wrong.
5721 2006-05-05 Maciej Katafiasz <mathrick@freedesktop.org>
5723 * docs/manual/basics-bins.xml:
5724 Don't mention GstThread (#340611)
5725 * docs/manual/basics-elements.xml:
5726 Update link to GObject tutorial (#340607)
5728 2006-05-05 Wim Taymans <wim@fluendo.com>
5731 * gst/gstminiobject.c:
5732 Add note about refcounting and miniobject/buffer writeability
5733 to docs. Fixes #340604
5735 * gst/gstelementfactory.h:
5736 Added some explanation about @klass.
5738 2006-05-05 Maciej Katafiasz <mathrick@freedesktop.org>
5740 * docs/manual/intro-motivation.xml:
5741 * docs/manual/manual.xml:
5742 Avoid CORBA & Bonobo references (#340598)
5744 2006-05-05 Maciej Katafiasz <mathrick@freedesktop.org>
5746 * docs/manual/basics-bus.xml:
5747 * docs/manual/basics-pads.xml:
5748 Fix up some inaccuracies and omissions (#340609)
5750 2006-05-05 Maciej Katafiasz <mathrick@freedesktop.org>
5752 * gst/gstghostpad.c:
5753 Small typo in docs (#340625)
5755 2006-05-05 Tim-Philipp Müller <tim at centricular dot net>
5757 * gst/parse/Makefile.am:
5758 Make 'make -j' proof (see #340698).
5760 2006-05-05 Tim-Philipp Müller <tim at centricular dot net>
5763 Require GLib-2.8 here as well.
5765 2006-05-05 Wim Taymans <wim@fluendo.com>
5767 * gst/glib-compat.c:
5768 * gst/gst.c: (init_pre):
5769 * gst/gstobject.c: (gst_object_init), (gst_object_ref),
5770 (gst_object_unref), (gst_object_replace), (gst_object_dispose),
5771 (gst_object_dispatch_properties_changed):
5773 * gst/gstregistryxml.c: (gst_registry_xml_read_cache):
5774 * gst/gststructure.c: (gst_structure_set_valist):
5775 * gst/gstvalue.c: (gst_date_get_type), (_gst_value_initialize):
5776 Remove pre glib2.8 compatibility, fixes #340508
5778 2006-05-04 Tim-Philipp Müller <tim at centricular dot net>
5781 Mention type of tags in doc blurbs.
5783 2006-05-04 Jan Schmidt <thaytan@mad.scientist.com>
5785 * gst/gstpad.c: (gst_pad_init), (gst_pad_configure_sink),
5786 (gst_pad_configure_src), (gst_pad_push):
5787 Restore acceptcaps checking behaviour now that good plugins have
5790 2006-05-04 Tim-Philipp Müller <tim at centricular dot net>
5792 Patch by: James Andrewartha <trs80 at tartarus uwa edu au>
5803 * gst/parse/Makefile.am:
5804 * libs/gst/base/gstadapter.c:
5805 * libs/gst/base/gstbasesrc.c:
5806 * libs/gst/base/gstpushsrc.c:
5807 * libs/gst/base/gsttypefindhelper.c:
5808 * plugins/elements/gstfakesrc.c:
5809 * plugins/elements/gstidentity.c:
5810 Make sure gstprivate.h and/or config.h are
5811 always included first, otherwise some of our
5812 defines (like _FILE_OFFSET_BITS) might be
5813 redefined in the system headers. Fixes build
5814 on opensolaris (#340016).
5816 2006-05-04 Wim Taymans <wim@fluendo.com>
5818 * docs/libs/gstreamer-libs-sections.txt:
5819 API: addition: gst_adapter_take_buffer()
5821 * libs/gst/base/gstadapter.c: (gst_adapter_push),
5822 (gst_adapter_peek), (gst_adapter_take), (gst_adapter_take_buffer),
5823 (gst_adapter_available_fast):
5824 * libs/gst/base/gstadapter.h:
5825 Prepare for optimizing the hell out of this hugely inefficient
5827 Added gst_adapter_take_buffer() so we can at least start thinking
5828 about subbuffering and merging.
5829 Added some comments.
5831 * tests/check/Makefile.am:
5832 * tests/check/libs/adapter.c: (GST_START_TEST),
5833 (gst_adapter_suite), (main):
5834 Added GstAdapter check.
5836 2006-05-04 Wim Taymans <wim@fluendo.com>
5838 * docs/design/part-overview.txt:
5839 Fix some typos, add blurb about buffer flags.
5841 2006-05-03 Thomas Vander Stichele <thomas at apestaart dot org>
5843 * docs/libs/gstreamer-libs-sections.txt:
5844 make sure GstBaseTransformClass shows up in the docs
5845 * libs/gst/base/gstbasetransform.c:
5846 * libs/gst/base/gstbasetransform.h:
5847 move docs so gtk-doc picks it up now
5849 2006-05-02 Stefan Kost <ensonic@users.sf.net>
5851 * docs/libs/gstreamer-libs-sections.txt:
5852 add missing symbols to docs
5854 2006-05-02 Stefan Kost <ensonic@users.sf.net>
5856 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_event):
5857 back out the newsegment handling change, see #340060 for ongoing
5860 2006-04-30 Tim-Philipp Müller <tim at centricular dot net>
5862 * tools/gst-run.c: (get_candidates), (main):
5863 Fix wrong g_file_test() usage (see glib docs for why it doesn't
5864 work); fix typo in error message. Fixes #340079.
5866 2006-04-29 Thomas Vander Stichele <thomas at apestaart dot org>
5868 * common/Makefile.am:
5870 * docs/faq/Makefile.am:
5871 * docs/gst/Makefile.am:
5872 * docs/libs/Makefile.am:
5873 * docs/manual/Makefile.am:
5874 * docs/plugins/Makefile.am:
5875 * docs/pwg/Makefile.am:
5876 * docs/slides/Makefile.am:
5878 * common/upload.mak:
5879 move upload.mak to common
5881 2006-04-29 Thomas Vander Stichele <thomas at apestaart dot org>
5883 * tests/check/gst/gstghostpad.c: (GST_START_TEST):
5884 add more asserts on refcounts
5885 do more cleanup at end of tests
5886 fix test leaks showing in FC5
5888 2006-04-29 Stefan Kost <ensonic@users.sf.net>
5890 * plugins/elements/gsttypefindelement.c:
5891 (gst_type_find_element_handle_event):
5892 reverted wrong change and reflowed code to avoid others falling into
5895 2006-04-28 Stefan Kost <ensonic@users.sf.net>
5897 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_event):
5898 fix changelog entry about last collectpads change,
5899 add notes about proper fix
5901 2006-04-28 Stefan Kost <ensonic@users.sf.net>
5904 * gst/gstregistry.c: (gst_registry_scan_path_level),
5905 (gst_registry_scan_path):
5906 * gst/gstregistry.h:
5907 only write out registry if it has changed, fixes #338339
5909 2006-04-28 Stefan Kost <ensonic@users.sf.net>
5912 * gst/gstpipeline.c:
5913 * plugins/elements/gstcapsfilter.c:
5914 * plugins/elements/gstfakesink.c:
5915 * plugins/elements/gstfakesrc.c:
5916 * plugins/elements/gstfdsink.c:
5917 * plugins/elements/gstfdsrc.c:
5918 * plugins/elements/gstfilesink.c:
5919 * plugins/elements/gstfilesrc.c:
5920 * plugins/elements/gstidentity.c:
5921 * plugins/elements/gstqueue.c:
5922 * plugins/elements/gsttee.c:
5923 * plugins/elements/gsttypefindelement.c:
5924 (gst_type_find_element_handle_event):
5925 make GstElementDetails const
5927 2006-04-28 Stefan Kost <ensonic@users.sf.net>
5929 * libs/gst/base/gstbasesink.c: (gst_base_sink_event):
5930 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_base_init),
5931 (gst_collect_pads_is_collected), (gst_collect_pads_event):
5932 more detailed debug and formatting cleanup,
5933 forward newsegments to src-pad (so that e.g. adder not eats them)
5935 2006-04-28 Stefan Kost <ensonic@users.sf.net>
5937 * gst/gstutils.c: (gst_element_link_pads):
5940 2006-04-28 Stefan Kost <ensonic@users.sf.net>
5942 * libs/gst/controller/gstcontroller.c:
5943 (gst_controller_sync_values):
5945 * tests/check/libs/controller.c: (GST_START_TEST),
5946 (gst_controller_suite):
5947 a new test for live value handling
5949 2006-04-28 Wim Taymans <wim@fluendo.com>
5951 * gst/gstutils.c: (push_and_ref):
5952 Added some more docs.
5953 Fix refcount issue whith gst_element_found_tags() helper
5954 function. Fixes #338335
5956 * tests/check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
5957 Added testsuite for gst_element_found_tags().
5959 2006-04-28 Michael Smith <msmith@fluendo.com>
5961 * gst/gstvalue.c: (gst_value_serialize_flags):
5962 Avoid NULL dereference when trying to serialize flags containing
5965 2006-04-28 Michael Smith <msmith@fluendo.com>
5967 * plugins/elements/gsttypefindelement.c:
5968 (gst_type_find_element_handle_event):
5969 If we get EOS before any data is accumulated, don't use
5970 uninitialised local variables.
5972 2006-04-28 Michael Smith <msmith@fluendo.com>
5974 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
5975 (gst_dp_event_from_packet):
5976 Fixes in reading/writing events over GDP (not currently used?) -
5977 dereferencing NULL events for unknown/invalid event types, memory
5978 leak, and change g_warning to GST_WARNING.
5980 2006-04-28 Wim Taymans <wim@fluendo.com>
5982 * libs/gst/base/gstbasesink.c: (gst_base_sink_is_too_late),
5983 (gst_base_sink_do_render_stats), (gst_base_sink_render_object),
5984 (gst_base_sink_get_position), (gst_base_sink_change_state):
5985 When frame dropping is enabled, we should not ignore frames
5987 Update some documentation.
5989 2006-04-28 Wim Taymans <wim@fluendo.com>
5991 * libs/gst/base/gstbasesrc.c: (gst_base_src_perform_seek),
5992 (gst_base_src_send_event), (gst_base_src_change_state):
5993 Documentation updates.
5995 2006-04-28 Wim Taymans <wim@fluendo.com>
5997 * plugins/elements/gstfdsink.c: (gst_fd_sink_render),
5998 (gst_fd_sink_check_fd), (gst_fd_sink_update_fd):
5999 handle EAGAIN, EINTR and short writes correctly. Also clean
6000 up some error cases, avoid a deadlock on bad file descriptors and
6001 use GST_DEBUG_OBJECT.
6004 2006-04-28 Wim Taymans <wim@fluendo.com>
6006 * gst/gstvalue.c: (gst_value_serialize_buffer),
6007 (gst_value_deserialize_buffer):
6008 Don't try to serialize a GValue with a NULL buffer.
6011 * tests/check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
6012 Added check for serialisation of NULL buffers.
6014 2006-04-28 Wim Taymans <wim@fluendo.com>
6016 * gst/gstminiobject.c: (gst_value_take_mini_object):
6017 Taking a NULL miniobject is valid, fix the case where
6018 we try to unref the NULL miniobject.
6020 2006-04-28 Wim Taymans <wim@fluendo.com>
6022 Patch by: Stefan Kost <ensonic at sonicpulse dot de>
6024 * gst/gstbin.c: (gst_bin_handle_message_func):
6026 Don't leak bin refcount when a state recalc is
6027 in progress and we delay another one #339808.
6029 2006-04-28 Wim Taymans <wim@fluendo.com>
6031 * docs/design/part-TODO.txt:
6032 Mention QoS as an ongoing work item.
6034 * docs/design/part-buffering.txt:
6035 New doc about buffering that needs to be fleshed out
6038 * docs/design/part-qos.txt:
6039 More QoS policy for decoders/demuxers/transforms
6041 * docs/design/part-trickmodes.txt:
6044 2006-04-28 Thomas Vander Stichele <thomas at apestaart dot org>
6049 === release 0.10.5 ===
6051 2006-04-28 Thomas Vander Stichele <thomas at apestaart dot org>
6054 releasing 0.10.5, "Fogo"
6056 2006-04-22 Thomas Vander Stichele <thomas at apestaart dot org>
6058 patch by: Wim Taymans
6060 * gst/gstpad.c: (gst_pad_init), (gst_pad_configure_sink),
6061 (gst_pad_configure_src), (gst_pad_push):
6062 * gst/gstpipeline.c: (gst_pipeline_init):
6063 Fix internal data flow errors. Fixes #338711.
6065 2006-04-12 Wim Taymans <wim@fluendo.com>
6067 * tests/check/gst/gstelement.c: (GST_START_TEST):
6068 Don't leak the factory.
6070 2006-04-12 Thomas Vander Stichele <thomas at apestaart dot org>
6073 * win32/common/config.h:
6076 2006-04-12 Tim-Philipp Müller <tim at centricular dot net>
6078 * libs/gst/controller/gstcontroller.c: (gst_controller_unset),
6079 (gst_controller_unset_all):
6080 Free allocated GstTimedValues when freeing list nodes.
6081 Should fix leaks 'make check-valgrind' complains about.
6083 * win32/common/libgstcontroller.def:
6084 Add gst_controller_unset_all.
6086 2006-04-11 Stefan Kost <ensonic@users.sf.net>
6088 * docs/libs/gstreamer-libs-sections.txt:
6089 * libs/gst/controller/gstcontroller.c: (gst_controller_unset),
6090 (gst_controller_unset_all):
6091 * libs/gst/controller/gstcontroller.h:
6092 API: Added new method gst_controller_unset_all()
6093 fixed gst_controller_unset()
6094 * tests/check/libs/controller.c: (GST_START_TEST),
6095 (gst_controller_suite):
6096 Added two testcases for new and fixed method
6098 2006-04-11 Tim-Philipp Müller <tim at centricular dot net>
6100 * libs/gst/net/gstnettimepacket.c: (gst_net_time_packet_send):
6101 MSG_DONTWAIT is not defined on Cygwin, so work
6102 around that (fixes #317048).
6104 2006-04-11 Wim Taymans <wim@fluendo.com>
6106 * gst/gstelementfactory.c: (gst_element_register),
6107 (gst_element_factory_create), (gst_element_factory_make):
6110 Updated docs (Fixes #131079)
6112 * gst/gstpluginfeature.c: (gst_plugin_feature_load):
6115 * tests/check/gst/gstelement.c: (GST_START_TEST),
6116 (gst_element_suite):
6117 Added testcase for elementfactory class field.
6119 2006-04-10 Wim Taymans <wim@fluendo.com>
6122 Added some more docs.
6124 * libs/gst/base/gstbasesink.c: (gst_base_sink_perform_qos),
6125 (gst_base_sink_reset_qos):
6126 Calculate more accurate rate values.
6128 2006-04-09 Sebastien Moutte <sebastien@moutte.net>
6130 * gst/gst_private.h:
6131 add a new #ifdef to use __declspec(dllimport) only for
6132 other modules and not for gstreamer core
6133 * gst/gstbasesink.c: (gst_base_sink_perform_qos):
6134 use gst_guint64_to_gdouble for conversion
6135 * win32/common/libgstreamer.def:
6136 add new exported functions
6137 * win32/vs6/gst_inspect.dsp:
6138 * win32/vs6/gst_launch.dsp:
6139 * win32/vs6/libgstbase.dsp:
6140 * win32/vs6/libgstcontroller.dsp:
6141 * win32/vs6/libgstcoreelements.dsp:
6142 * win32/vs6/libgstdataprotocol.dsp:
6143 * win32/vs6/libgstnet.dsp:
6144 update project files
6146 2006-04-08 Stefan Kost <ensonic@users.sf.net>
6148 * gst/gstbuffer.c: (gst_subbuffer_class_init):
6149 * gst/gstclock.c: (gst_clock_class_init):
6150 * gst/gstelement.c: (gst_element_class_init):
6151 * gst/gstindex.c: (gst_index_class_init):
6152 * gst/gstindexfactory.c: (gst_index_factory_class_init):
6153 * gst/gstobject.c: (gst_object_class_init),
6154 (gst_signal_object_class_init):
6155 * gst/gstpad.c: (gst_pad_class_init):
6156 * gst/gstpadtemplate.c: (gst_pad_template_class_init):
6157 * gst/gstpluginfeature.c: (gst_plugin_feature_class_init):
6158 * gst/gstregistry.c: (gst_registry_class_init):
6159 * gst/gstsystemclock.c: (gst_system_clock_class_init):
6160 * gst/gsttask.c: (gst_task_class_init):
6161 * gst/gstxml.c: (gst_xml_class_init):
6162 * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init):
6163 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
6164 (gst_base_src_loop):
6165 * libs/gst/controller/gstcontroller.c:/
6166 (_gst_controller_class_init):
6167 * plugins/elements/gstfdsrc.c: (gst_fd_src_class_init):
6168 * plugins/indexers/gstfileindex.c: (gst_file_index_class_init):
6169 * plugins/indexers/gstmemindex.c: (gst_mem_index_class_init):
6170 * tests/old/examples/plugins/example.c: (gst_example_class_init):
6171 * tests/old/testsuite/threads/signals.c: (gst_test_class_init):
6172 Fix #337365 (g_type_class_ref <-> g_type_class_peek_parent)
6174 2006-04-08 Tim-Philipp Müller <tim at centricular dot net>
6176 * gst/gstpad.c: (gst_pad_link):
6177 Must set peer pads before calling the link function, otherwise
6178 a task started from a link function might get a flow-not-linked
6179 result when trying to push because the other thread where the
6180 linking happens hasn't had a chance to set the peers yet. This
6181 might happen for example when a queue gets linked to a downstream
6182 element, as queue starts a streaming task when its source pad
6183 gets linked. Happens in real life when playing back flac/musepack
6184 files in playbin (#332390).
6186 2006-04-08 Stefan Kost <ensonic@users.sf.net>
6190 * libs/gst/base/gstadapter.h:
6191 * libs/gst/base/gstbasesink.h:
6192 * libs/gst/base/gstbasesrc.h:
6193 * libs/gst/base/gstbasetransform.h:
6194 * libs/gst/base/gstcollectpads.h:
6195 * libs/gst/base/gstpushsrc.h:
6196 Fix broken GObject macros
6198 2006-04-07 Wim Taymans <wim@fluendo.com>
6200 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times):
6201 Initialize start and stop times, thanks valgrind.
6203 2006-04-07 Wim Taymans <wim@fluendo.com>
6205 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times):
6206 Be a bit nicer to badly behaving upstream elements that expect
6207 us to deal with non TIME segments and timestamps (such as fakesrc
6210 2006-04-07 Wim Taymans <wim@fluendo.com>
6213 Small documentation clarification about the signal watch.
6215 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times),
6216 (gst_base_sink_wait_clock), (gst_base_sink_do_sync),
6217 (gst_base_sink_perform_qos), (gst_base_sink_reset_qos),
6218 (gst_base_sink_do_render_stats), (gst_base_sink_render_object),
6219 (gst_base_sink_get_position_last),
6220 (gst_base_sink_get_position_paused), (gst_base_sink_change_state):
6221 Convert and store timestamps in stream time and running time, the
6222 raw timestamps are not useful, also document this better.
6223 Use different window sizes for good and bad QoS observations so
6224 we react to badness a little quicker.
6225 Keep track of the amount of rendered and dropped buffers.
6226 Send QoS timestamps in running time.
6228 * libs/gst/base/gstbasetransform.c:
6229 (gst_base_transform_sink_eventfunc),
6230 (gst_base_transform_handle_buffer):
6231 Compare QoS timestamps against running time.
6233 2006-04-06 Tim-Philipp Müller <tim at centricular dot net>
6238 2006-04-06 Michael Smith <msmith@fluendo.com>
6240 * gst/gstpad.c: (gst_pad_set_property):
6241 Use g_value_get_object() instead of g_value_dup_gst_object(),
6242 to avoid double-reffing the pad template (which we then sink,
6243 so this worked previously if (and only if) the pad template
6246 * gst/gstpadtemplate.c: (gst_pad_template_init),
6247 (gst_pad_template_pad_created):
6248 Never return floating references to pad templates, create
6249 them as initially-sunken.
6251 Document an extra function (and make this stop sinking our
6252 pad template, since that is now guaranteed to do nothing,
6253 since we created it sunken).
6255 * gst/gstghostpad.c:
6258 2006-04-06 Tim-Philipp Müller <tim at centricular dot net>
6260 * gst/gstinfo.c: (__gst_in_valgrind):
6263 * plugins/elements/gsttypefindelement.c:
6264 (gst_type_find_element_chain):
6265 Don't leak buffer caps.
6267 2006-04-06 Michael Smith <msmith@fluendo.com>
6269 * gst/parse/grammar.y:
6270 Fix a leak in parse-launch for any source-or-sink named element
6273 * tests/check/pipelines/parse-launch.c: (expected_fail_pipe):
6274 Unref the pipeline if it exists after we've failed parsing.
6276 2006-04-05 Michael Smith <msmith@fluendo.com>
6278 * gst/gstpipeline.c: (gst_pipeline_init):
6279 When we create a pipeline bus, initially create it in flushing mode.
6280 Fixes leaks in at least one test, and makes a new pipeline work the
6281 same as one that has gone to READY and then back to NULL.
6286 2006-04-05 Michael Smith <msmith@fluendo.com>
6288 * tests/check/gst/gstghostpad.c: (GST_START_TEST):
6289 Unref a pad we reffed.
6290 * tests/check/gst/gstutils.c: (GST_START_TEST):
6293 2006-04-05 Michael Smith <msmith@fluendo.com>
6295 * gst/gstquery.c: (gst_query_set_formats),
6296 (gst_query_set_formatsv):
6297 Fix leaking GValues in queries, as shown by valgrind/testsuite.
6299 2006-04-05 Michael Smith <msmith@fluendo.com>
6301 * tests/check/generic/sinks.c: (GST_START_TEST):
6302 Fix a variety of memleaks in sinks check, which are only sometimes
6303 shown by running the tests under valgrind (weird?).
6305 2006-04-05 Jan Schmidt <thaytan@mad.scientist.com>
6307 * docs/version.entities.in:
6308 Fix the substituted entity name after thomas' changes on the
6311 2006-04-05 Zaheer Abbas Merali <zaheerabbas at merali dot org>
6313 * gst/gstinfo.c: (__gst_in_valgrind): Use printf instead of
6316 2006-04-05 Andy Wingo <wingo@pobox.com>
6318 * gst/gstpad.c (gst_pad_set_blocked_async): More debug.
6320 * libs/gst/base/gstbasetransform.c
6321 (gst_base_transform_sink_eventfunc): When resetting our segment on
6322 FLUSH_STOP, also update the flag saying we haven't seen a
6325 2006-04-04 Tim-Philipp Müller <tim at centricular dot net>
6327 Patch by: Paolo Borelli <pborelli at katamail dot com>
6329 * gst/gstplugin.c: (gst_plugin_finalize), (gst_plugin_class_init),
6330 (gst_plugin_check_license):
6331 minor clean-ups: G_DEFINE_TYPE already takes care of the
6332 parent_class stuff, no need to do it twice. Mark array of
6333 license strings as constant. (#337103)
6335 2006-04-04 Michael Smith <msmith@fluendo.com>
6337 * tools/gst-inspect.c: (print_element_list):
6338 Free the right plugin list; fixes a memory leak.
6340 2006-04-04 Tim-Philipp Müller <tim at centricular dot net>
6342 Patch by: Mark Nauwelaerts <manauw at skynet dot be>
6344 * plugins/elements/gstfilesink.c: (gst_file_sink_render):
6345 Don't error out on empty buffers (#336945).
6347 2006-04-04 Jan Schmidt <thaytan@mad.scientist.com>
6349 * docs/libs/gstreamer-libs-sections.txt:
6351 * libs/gst/base/gstbasesink.c:
6352 * libs/gst/base/gstbasesink.h:
6353 * libs/gst/base/gstbasesrc.c:
6354 * libs/gst/base/gstbasesrc.h:
6355 Documentation updates. Make BaseSink and BaseSrc docs contain the
6356 class structure so that people can actually see the prototypes for
6357 virtual functions they're supposed to be overriding.
6359 2006-04-04 Tim-Philipp Müller <tim at centricular dot net>
6361 * plugins/elements/gsttypefindelement.c:
6362 (gst_type_find_element_chain):
6363 More debug info; when skipping typefinding, send cached
6364 events in all cases.
6366 2006-04-01 Thomas Vander Stichele <thomas at apestaart dot org>
6369 use new AS_VERSION and AS_NANO macros
6370 * gst/gst-i18n-lib.h:
6373 * gst/gstversion.h.in:
6374 * win32/common/config.h:
6375 * win32/common/config.h.in:
6378 2006-03-31 Michael Smith <msmith@fluendo.com>
6380 * plugins/elements/gsttypefindelement.c:
6381 (gst_type_find_element_chain):
6382 Do not typefind content if the buffers already have caps.
6383 Neccesary for icydemux (#333657), and the right thing to do anyway.
6385 2006-03-30 Wim Taymans <wim@fluendo.com>
6387 * libs/gst/base/gstbasesink.c: (gst_base_sink_init),
6388 (gst_base_sink_finalize), (gst_base_sink_set_qos_enabled),
6389 (gst_base_sink_is_qos_enabled), (gst_base_sink_do_sync),
6390 (gst_base_sink_record_qos_observation),
6391 (gst_base_sink_perform_qos), (gst_base_sink_reset_qos),
6392 (gst_base_sink_is_too_late), (gst_base_sink_render_object),
6393 (gst_base_sink_change_state):
6394 More QoS measurements as described in the design doc.
6395 Get rid of ringbuffer with observations, running average is
6396 more simple and equally good.
6397 Calculates valid proportion now.
6398 Added beginning of flood measurement.
6400 2006-03-29 Wim Taymans <wim@fluendo.com>
6402 * docs/design/part-qos.txt:
6404 Small documentation updates and additions.
6406 2006-03-29 Wim Taymans <wim@fluendo.com>
6408 * libs/gst/base/gstbasesrc.c: (gst_base_src_finalize),
6409 (gst_base_src_send_event), (gst_base_src_loop),
6410 (gst_base_src_change_state):
6411 Perform the EOS logic when we reach the segment stop position.
6412 Fix compilation on gcc4.1
6414 2006-03-29 Wim Taymans <wim@fluendo.com>
6416 Patch by: Tommi Myöhänen <ext-tommi dot myohanen at nokia dot com>
6418 * plugins/elements/gstqueue.c: (gst_queue_init),
6419 (gst_queue_locked_flush), (gst_queue_handle_sink_event),
6420 (gst_queue_set_property):
6421 * plugins/elements/gstqueue.h:
6422 In queue, when EOS is received, if minimum threshold > max_size -
6423 current_level, there is chance that queue blocks forever in conditional
6424 item del wait. This is because the queue is not emptied completely due
6425 to minimum threshold. Here is another approach. Instead of setting
6426 cur_levels to max in EOS, just zero all minimum threshold levels. This
6427 should make sure that queue gives out all data. When going to READY
6428 (stop) state, just reset the original minimum threshold levels.
6431 2006-03-29 Tim-Philipp Müller <tim at centricular dot net>
6433 * plugins/elements/gsttypefindelement.c: (stop_typefinding),
6434 (gst_type_find_element_handle_event),
6435 (gst_type_find_element_send_cached_events),
6436 (gst_type_find_element_change_state):
6437 * plugins/elements/gsttypefindelement.h:
6438 When typefinding is done in push mode, we should cache
6439 events we receive during typefinding instead of just
6440 dropping them (e.g. newsegment, custom events from
6441 dvdreadsrc etc.) and then send them out once we've
6442 determined the type of the stream (and decodebin
6443 has had a chance to plug in a decoder/demuxer).
6445 2006-03-27 Wim Taymans <wim@fluendo.com>
6447 * docs/design/part-qos.txt:
6450 2006-03-27 Wim Taymans <wim@fluendo.com>
6452 Inspired by a patch of: Lutz Mueller <lutz at topfrose dot de>
6454 * libs/gst/base/gstbasesrc.c: (gst_base_src_finalize),
6455 (gst_base_src_send_event), (gst_base_src_change_state):
6456 Handle element seek correctly when we are streaming.
6459 2006-03-24 Michael Smith <msmith@fluendo.com>
6461 * docs/faq/gst-uninstalled:
6462 Set up LD_LIBRARY_PATH to point at all the gstreamer libs. This will
6463 allow you to correctly run intalled applications built against old
6464 core, using plugins that require updated core (e.g. running
6465 installed totem against a full uninstalled gstreamer stack)
6467 2006-03-24 Stefan Kost <ensonic@users.sf.net>
6469 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_is_collected):
6472 2006-03-24 Wim Taymans <wim@fluendo.com>
6474 * docs/gst/gstreamer-sections.txt:
6475 Rearrange the order of the methods so that related methods
6476 are grouped together in sections.
6478 2006-03-24 Stefan Kost <ensonic@users.sf.net>
6481 Little clarification in the docs
6483 2006-03-24 Stefan Kost <ensonic@users.sf.net>
6487 * plugins/elements/gstidentity.c:
6488 * plugins/elements/gstqueue.c:
6489 * plugins/elements/gsttee.c:
6490 * plugins/elements/gsttypefindelement.c:
6491 GST_ELEMENT_DETAILS formatting
6493 2006-03-24 Wim Taymans <wim@fluendo.com>
6495 * libs/gst/base/gstbasesink.h:
6496 Only add fields, not insert or we break ABI.
6498 2006-03-23 Tim-Philipp Müller <tim at centricular dot net>
6500 * win32/common/libgstbase.def:
6501 * win32/common/libgstreamer.def:
6502 Update, add recently added functions.
6504 2006-03-23 Tim-Philipp Müller <tim at centricular dot net>
6506 * docs/gst/gstreamer-sections.txt:
6507 * gst/gstutils.c: (gst_pad_query_peer_position),
6508 (gst_pad_query_peer_duration), (gst_pad_query_peer_convert):
6510 API: add some new utility functions:
6511 - gst_pad_query_peer_position()
6512 - gst_pad_query_peer_duration()
6513 - gst_pad_query_peer_convert()
6515 2006-03-23 Wim Taymans <wim@fluendo.com>
6517 * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init),
6518 (gst_base_sink_init), (gst_base_sink_finalize),
6519 (gst_base_sink_set_qos_enabled), (gst_base_sink_is_qos_enabled),
6520 (gst_base_sink_set_property), (gst_base_sink_get_property),
6521 (gst_base_sink_commit_state), (gst_base_sink_get_sync_times),
6522 (gst_base_sink_wait_clock), (gst_base_sink_do_sync),
6523 (gst_base_sink_add_qos_observation), (gst_base_sink_send_qos),
6524 (gst_base_sink_perform_qos), (gst_base_sink_reset_qos),
6525 (gst_base_sink_is_too_late), (gst_base_sink_render_object),
6526 (gst_base_sink_preroll_object), (gst_base_sink_event),
6527 (gst_base_sink_chain_unlocked), (gst_base_sink_get_position_last),
6528 (gst_base_sink_get_position_paused), (gst_base_sink_get_position),
6529 (gst_base_sink_query), (gst_base_sink_change_state):
6530 Decouple max-lateness and the fact that QoS messages are generated
6531 with a new property (qos).
6532 added API: GstBaseSink::async_play()
6533 Add vmethod so subclasses can be notified of ASYNC playing
6535 Collect timestamp start and stop to report better current
6536 position in EOS/PLAYING/PAUSED/READY/NULL.
6537 Refactor QoS/frame dropping and other measurements.
6538 API: GstBaseSrc::qos
6541 * libs/gst/base/gstbasesink.h:
6542 Added Private struct.
6543 API: gst_base_sink_set_qos_enabled()
6544 API: gst_base_sink_is_qos_enabled()
6546 2006-03-23 Tim-Philipp Müller <tim at centricular dot net>
6548 * gst/gstregistryxml.c: (gst_registry_xml_read_cache):
6549 If compiling against GLib-2.8 or newer, try to read the
6550 registry file using GMappedFile first before falling back
6551 to fopen() + fread() (#332151).
6553 2006-03-22 Wim Taymans <wim@fluendo.com>
6555 * gst/gstinfo.c: (gst_debug_set_active),
6556 (gst_debug_category_set_threshold):
6557 Disable debugging unless explicitly activated.
6560 2006-03-22 Wim Taymans <wim@fluendo.com>
6562 * gst/gstelement.c: (gst_element_set_locked_state),
6563 (gst_element_dispose):
6564 Cleanup the error case.
6566 * gst/gstobject.c: (gst_object_dispose):
6567 print a critical when some object was disposed with
6568 a parent, also revive the object since it might
6571 2006-03-22 Tim-Philipp Müller <tim at centricular dot net>
6573 * tools/gst-launch.1.in:
6576 2006-03-21 Thomas Vander Stichele <thomas at apestaart dot org>
6579 * tests/check/Makefile.am:
6580 disable some tests when we don't have a registry
6581 * tests/check/gst/gstutils.c: (gst_utils_suite):
6582 don't build the part that needs parsing
6584 2006-03-21 Thomas Vander Stichele <thomas at apestaart dot org>
6587 * tests/examples/Makefile.am:
6588 fix --disable-parse build
6590 2006-03-21 Tim-Philipp Müller <tim at centricular dot net>
6592 * tools/gst-feedback.1.in:
6593 Fix typo: s/feeback/feedback/ (#133494).
6595 2006-03-21 Tim-Philipp Müller <tim at centricular dot net>
6597 * tools/Makefile.am:
6598 * tools/gst-launch.1.in:
6599 Add FILES section and correct entry about GST_REGISTRY_PATH
6600 environment variable (#133495; #133494).
6602 2006-03-21 Tim-Philipp Müller <tim at centricular dot net>
6604 * tools/Makefile.am:
6605 * tools/gst-md5sum.1.in:
6606 * tools/gst-md5sum.c:
6607 Remove gst-md5sum and man page (the md5sink element
6608 required was removed ages ago)
6610 2006-03-21 Tim-Philipp Müller <tim at centricular dot net>
6612 * gst/gststructure.c: (gst_structure_id_set_value):
6613 Make sure that string fields in structures/taglists
6614 contain valid UTF-8 - we don't want to pass rubbish to
6615 applications because of a buggy plugin (cp. #334167).
6617 2006-03-21 Edward Hervey <edward@fluendo.com>
6619 * gst/gstbin.c: (gst_bin_dispose), (gst_bin_provide_clock_func),
6620 (gst_bin_handle_message_func):
6621 * gst/gstclock.c: (gst_clock_dispose), (gst_clock_set_master):
6622 * gst/gstelement.c: (gst_element_set_clock), (gst_element_dispose),
6623 (gst_element_set_bus_func):
6624 * gst/gstghostpad.c: (gst_proxy_pad_dispose):
6625 * gst/gstminiobject.c: (gst_value_set_mini_object),
6626 (gst_value_take_mini_object):
6627 * gst/gstpad.c: (gst_pad_set_pad_template):
6628 * gst/gstpipeline.c: (gst_pipeline_dispose),
6629 (gst_pipeline_use_clock), (gst_pipeline_auto_clock):
6630 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_pop),
6631 (gst_collect_pads_chain):
6632 * libs/gst/net/gstnettimeprovider.c:
6633 (gst_net_time_provider_set_property):
6634 Series of fixes for dereferenced pointers that gcc 4.1 complains about.
6635 It's in fact all issues with gst_*object_replace().
6637 2006-03-21 Tim-Philipp Müller <tim at centricular dot net>
6639 Patch by: Loïc Minier <lool + gnome at via dot ecp dot fr>
6641 * pkgconfig/gstreamer-check-uninstalled.pc.in:
6642 * pkgconfig/gstreamer-check.pc.in:
6643 Use @CHECK_LIBS@ here instead of hard-coding -lcheck (#334109).
6645 2006-03-21 Edward Hervey <edward@fluendo.com>
6650 gst_[buffer|event|message]_ref() macros are replaced by a static
6651 inline functions because gcc-4.1 will about if the return value
6653 * tests/check/gst/gstevent.c: (event_probe):
6654 gst_event_ref now has to be given a GstEvent* , fix check accordingly.
6656 2006-03-20 Jan Schmidt <thaytan@mad.scientist.com>
6659 Add G_UNLIKELY to our boilerplate to optimise the 'already registered
6660 the type' case. (Closes: #335195 for now). In the future, when we
6661 depend on GLib 2.10, we could also intern the type name using
6662 g_intern_static_string()
6664 2006-03-20 Wim Taymans <wim@fluendo.com>
6666 * gst/gstbin.c: (gst_bin_handle_message_func),
6667 (bin_query_max_init), (bin_query_position_fold),
6668 (bin_query_position_done), (gst_bin_query):
6669 Position query should also take max of all streams.
6671 2006-03-20 Wim Taymans <wim@fluendo.com>
6673 * plugins/elements/gstfakesrc.c: (gst_fake_src_class_init),
6674 (gst_fake_src_finalize):
6675 Fix leaks in fakesrc.
6677 * tests/check/pipelines/parse-launch.c: (GST_START_TEST):
6678 Fix leaks in the testcase.
6680 2006-03-19 Sebastien Moutte <sebastien@moutte.net>
6682 * gst/gst_private.h:
6683 add win32 specific import decoration(__declspec(dllimport))
6684 for all extern GstDebugCategory * variables
6685 * win32/common/libgstbase.def:
6686 * win32/common/libgstcontroller.def:
6687 * win32/common/libgstreamer.def:
6688 Add some exports, remove empty lines
6689 * win32/common/libgstdataprotocol.def:
6690 * win32/common/libgstdataprotocol.dsp:
6691 * win32/common/libgstnet.def:
6692 * win32/common/libgstnet.dsp:
6693 new project files and exportation files added
6695 2006-03-19 Wim Taymans <wim@fluendo.com>
6697 * tests/check/libs/basesrc.c: (eos_event_counter):
6698 Use proper return value for probe.
6700 2006-03-17 Wim Taymans <wim@fluendo.com>
6702 * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_alloc_buffer_full),
6704 Don't leak buffers, caps and pads on negotiation errors.
6706 2006-03-16 Stefan Kost <ensonic@users.sf.net>
6709 * docs/faq/dependencies.xml:
6710 * docs/faq/developing.xml:
6712 * docs/faq/general.xml:
6713 * docs/faq/getting.xml:
6714 * docs/faq/legal.xml:
6715 * docs/faq/troubleshooting.xml:
6716 * docs/faq/using.xml:
6717 Faq review and update.
6719 2006-03-16 Jan Schmidt <thaytan@mad.scientist.com>
6721 * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_alloc_buffer_full),
6723 Don't pound the cpu to pieces by checking get_caps when accept_caps
6724 is called with the same caps as the pad already has.
6725 Use GST_DEBUG_OBJECT when outputting caps change information.
6727 2006-03-15 Wim Taymans <wim@fluendo.com>
6729 * gst/gstclock.c: (gst_clock_class_init):
6732 2006-03-15 Jan Schmidt <thaytan@mad.scientist.com>
6737 * gst/gstpad.c: (gst_pad_init), (gst_pad_acceptcaps_default),
6738 (gst_pad_accept_caps), (gst_pad_configure_sink),
6739 (gst_pad_configure_src), (gst_pad_chain), (gst_pad_push):
6740 Make the default acceptcaps behaviour be to check the requested
6741 caps against the gst_pad_get_caps output.
6743 Ensure that gst_pad_accept_caps is used to check caps when a pad
6744 doesn't have a setcaps function, so that pads automatically refuse
6745 caps that they don't allow in their pad template. (Fixes #332986)
6747 When a buffer with attached caps is pushed, ensure that the source
6748 pad receives those caps even if the element didn't call
6749 gst_pad_set_caps first.
6751 2006-03-15 Wim Taymans <wim@fluendo.com>
6753 * libs/gst/base/gstadapter.c:
6756 2006-03-15 Tim-Philipp Müller <tim at centricular dot net>
6758 * win32/common/libgstbase.def:
6759 * win32/common/libgstcontroller.def:
6760 * win32/common/libgstreamer.def:
6761 Add a whole bunch of missing functions (#334434).
6763 2006-03-14 Wim Taymans <wim@fluendo.com>
6765 * libs/gst/base/gstbasesink.c: (gst_base_sink_configure_segment),
6766 (gst_base_sink_get_sync_times), (gst_base_sink_wait_clock),
6767 (gst_base_sink_do_sync), (gst_base_sink_do_qos):
6768 Better debug info when we receive a segment event.
6769 Reorganize a bit so we can pass the get_times() results around.
6770 Use the segment format when calculating the running time.
6771 Don't do QoS is sync is disabled or we have no clock or the
6772 element does not want us to sync to the clock.
6773 Don't drop buffers if QoS is disabled for now.
6775 2006-03-14 Wim Taymans <wim@fluendo.com>
6777 * gst/gstclock.c: (gst_clock_class_init), (do_linear_regression):
6778 Marked the stats property as unimplemented so people don't get
6780 Add debug message when regression goes wrong.
6781 Added some more docs.
6783 2006-03-14 Wim Taymans <wim@fluendo.com>
6785 * gst/gstsegment.c: (gst_segment_to_stream_time):
6786 Return correct return type in case of errors.
6788 2006-03-14 Wim Taymans <wim@fluendo.com>
6790 * gst/gstformat.c: (gst_format_get_name), (gst_format_to_quark):
6791 Don't segfault on invalid formats.
6793 2006-03-14 Tim-Philipp Müller <tim at centricular dot net>
6795 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times):
6796 Can't use gst_segment_to_running_time() when the segment
6797 is not in GST_TIME_FORMAT (like with filesink, for example).
6798 Stops flac encoding pipelines from spewing critical warnings
6801 2006-03-14 Tim-Philipp Müller <tim at centricular dot net>
6803 * gst/gstpipeline.c: (gst_pipeline_class_init):
6804 Add 'Since: 0.10.5' to gtk-doc blurb for added property.
6806 * plugins/elements/gsttypefindelement.c:
6807 (gst_type_find_element_handle_event):
6808 Don't try to typefind empty streams.
6810 2006-03-14 Wim Taymans <wim@fluendo.com>
6812 * libs/gst/base/gstbasesink.c: (gst_base_sink_do_sync),
6813 (gst_base_sink_do_qos):
6814 Separate QoS calculation.
6815 Only drop buffers when lateness is bigger than the
6816 duration of the buffer.
6818 2006-03-13 Wim Taymans <wim@fluendo.com>
6820 * gst/gstpipeline.c: (gst_pipeline_set_property),
6821 (gst_pipeline_get_property), (do_pipeline_seek),
6822 (gst_pipeline_change_state), (gst_pipeline_set_delay),
6823 (gst_pipeline_get_delay):
6824 Don't deadlock when reading properties.
6826 2006-03-13 Wim Taymans <wim@fluendo.com>
6828 * libs/gst/base/gstbasetransform.c:
6829 (gst_base_transform_class_init), (gst_base_transform_init),
6830 (gst_base_transform_sink_event),
6831 (gst_base_transform_sink_eventfunc),
6832 (gst_base_transform_src_event), (gst_base_transform_src_eventfunc),
6833 (gst_base_transform_handle_buffer), (gst_base_transform_chain),
6834 (gst_base_transform_set_property),
6835 (gst_base_transform_get_property),
6836 (gst_base_transform_change_state), (gst_base_transform_update_qos),
6837 (gst_base_transform_set_qos_enabled),
6838 (gst_base_transform_is_qos_enabled):
6839 * libs/gst/base/gstbasetransform.h:
6840 Make basetransform virtual method for src events too.
6841 Handle QOS in basetransform.
6842 API: gst_base_transform_update_qos()
6843 API: gst_base_transform_set_qos_enabled()
6844 API: gst_base_transform_is_qos_enabled()
6846 2006-03-13 Wim Taymans <wim@fluendo.com>
6848 * libs/gst/base/gstbasesink.c: (gst_base_sink_init),
6849 (gst_base_sink_do_sync):
6851 Use QOS debug category.
6853 2006-03-13 Wim Taymans <wim@fluendo.com>
6855 * plugins/elements/gstqueue.c:
6856 Very small doc update.
6858 2006-03-13 Wim Taymans <wim@fluendo.com>
6860 * gst/gst_private.h:
6861 * gst/gstinfo.c: (_gst_debug_init):
6862 Added QOS debug category
6864 2006-03-13 Wim Taymans <wim@fluendo.com>
6866 * docs/gst/gstreamer-sections.txt:
6867 * gst/gstbin.c: (bin_bus_handler), (gst_bin_handle_message_func):
6869 * gst/gstbus.c: (gst_bus_class_init):
6872 * gst/gstelement.c: (gst_element_set_locked_state):
6874 Documentation updates.
6876 * gst/gstpipeline.c: (gst_pipeline_get_type),
6877 (gst_pipeline_class_init), (gst_pipeline_init),
6878 (gst_pipeline_dispose), (gst_pipeline_set_property),
6879 (gst_pipeline_get_property), (do_pipeline_seek),
6880 (gst_pipeline_send_event), (gst_pipeline_change_state),
6881 (gst_pipeline_provide_clock_func), (gst_pipeline_set_delay),
6882 (gst_pipeline_get_delay):
6883 * gst/gstpipeline.h:
6884 Added methods for setting the delay.
6885 API: gst_pipeline_set_delay()
6886 API: gst_pipeline_get_delay()
6887 Add pipeline debug category
6890 Don't reset stream time when seek failed.
6892 2006-03-13 Wim Taymans <wim@fluendo.com>
6894 * docs/design/draft-klass.txt:
6895 * docs/design/part-clocks.txt:
6896 * docs/design/part-events.txt:
6897 * docs/design/part-gstbin.txt:
6898 * docs/design/part-gstpipeline.txt:
6899 * docs/design/part-messages.txt:
6900 * docs/design/part-negotiation.txt:
6901 * docs/design/part-overview.txt:
6902 * docs/design/part-preroll.txt:
6903 * docs/design/part-seeking.txt:
6904 * docs/design/part-states.txt:
6905 * docs/design/part-streams.txt:
6906 Documentation updates.
6908 2006-03-12 Julien MOUTTE <julien@moutte.net>
6910 * gst/gsttaglist.c: Fix rubbish docs that are encouraging
6911 us to leak strings...
6913 2006-03-12 Thomas Vander Stichele <thomas at apestaart dot org>
6915 * libs/gst/net/gstnettimeprovider.c:
6917 * win32/common/config.h:
6920 2006-03-12 Tim-Philipp Müller <tim at centricular dot net>
6922 Patch by: Julio M. Merino Vidal <jmmv at netbsd org>
6925 Don't check for libgnomeui (leftover from old examples
6926 that aren't built or disted any longer) (#334303).
6928 2006-03-11 Tim-Philipp Müller <tim at centricular dot net>
6930 * plugins/elements/gstfdsink.c: (gst_fd_sink_render):
6931 * plugins/elements/gstfilesink.c: (gst_file_sink_render):
6932 Emit RESOURCE_NO_SPACE_LEFT error here as well when
6933 there's no space left on the device.
6935 2006-03-10 Tim-Philipp Müller <tim at centricular dot net>
6938 Fix GST_CLOCK_TIME_IS_VALID signedness issues - we need
6939 to cast the input to GstClockTime before comparing with
6940 another GstClockTime value.
6942 2006-03-10 Thomas Vander Stichele <thomas at apestaart dot org>
6947 === release 0.10.4 ===
6949 2006-03-10 Thomas Vander Stichele <thomas at apestaart dot org>
6952 releasing 0.10.4, "Light"
6954 2006-03-10 Michael Smith <msmith@fluendo.com>
6956 * libs/gst/dataprotocol/dataprotocol.c:
6957 Fix docs for dataprocotol to not get the return types completely
6958 wrong for a few functions.
6960 2006-03-09 Tim-Philipp Müller <tim at centricular dot net>
6962 * docs/gst/gstreamer-sections.txt:
6963 * gst/gstpipeline.c: (gst_pipeline_class_init),
6964 (gst_pipeline_init), (gst_pipeline_set_property),
6965 (gst_pipeline_get_property), (gst_pipeline_change_state),
6966 (gst_pipeline_set_auto_flush_bus),
6967 (gst_pipeline_get_auto_flush_bus):
6968 * gst/gstpipeline.h:
6969 Add new API: gst_pipeline_set_auto_flush_bus() and
6970 gst_pipeline_get_auto_flush_bus() to disable automatic
6971 flushing of the pipeline's GstBus when going from READY
6972 to NULL state (#332045).
6974 2006-03-09 Tim-Philipp Müller <tim at centricular dot net>
6976 * docs/gst/gstreamer-sections.txt:
6977 * gst/gsturi.c: (gst_uri_has_protocol):
6979 Add new API: gst_uri_has_protocol() (#333779).
6981 2006-03-09 Wim Taymans <wim@fluendo.com>
6983 * gst/gstclock.c: (gst_clock_entry_new),
6984 (gst_clock_id_compare_func), (gst_clock_id_wait),
6985 (gst_clock_id_wait_async), (gst_clock_id_unschedule),
6986 (gst_clock_init), (gst_clock_get_internal_time),
6987 (gst_clock_set_master), (do_linear_regression),
6988 (gst_clock_add_observation), (gst_clock_set_property):
6992 Fix a possible segfault when the window-size is made smaller.
6993 Calculate jitter before performing the clock wait. Ideally
6994 the clock implementation should calculate jitter but we need
6995 API breakage for that.
6997 * gst/gstsystemclock.c: (gst_system_clock_init):
7000 * libs/gst/base/gstbasesink.c: (gst_base_sink_do_sync):
7001 Remove leftover else
7003 * tests/check/gst/gstsystemclock.c: (GST_START_TEST),
7004 (gst_systemclock_suite):
7005 Added check to test GST_CLOCK_DIFF.
7007 2006-03-09 Tim-Philipp Müller <tim at centricular dot net>
7009 * libs/gst/base/gsttypefindhelper.c: (helper_find_get_length),
7010 (gst_type_find_helper_get_range):
7011 If we are provided with the size, we should implement
7012 GstTypeFind::get_length, so that typefind functions who
7013 want to can actually peek at the middle of a file.
7015 2006-03-08 Tim-Philipp Müller <tim at centricular dot net>
7017 * docs/manual/advanced-dataaccess.xml:
7018 Add some very very basic error checking.
7020 * docs/pwg/appendix-checklist.xml:
7021 Some updates to the list of things to check when writing an element.
7023 2006-03-08 Wim Taymans <wim@fluendo.com>
7025 * docs/design/part-element-transform.txt:
7026 Added some docs about the design of tranform elements.
7028 * libs/gst/base/gstbasesrc.c: (gst_base_src_perform_seek),
7029 (gst_base_src_loop), (gst_base_src_change_state):
7030 Mark buffers with the DISCONT flag.
7032 2006-03-08 Michael Smith <msmith@fluendo.com>
7034 * gst/gstregistry.h:
7035 * gst/gstregistryxml.c: (gst_registry_save),
7036 (gst_registry_save_escaped), (gst_registry_xml_save_caps),
7037 (gst_registry_xml_save_pad_template),
7038 (gst_registry_xml_save_feature), (gst_registry_xml_save_plugin),
7039 (gst_registry_xml_write_cache):
7040 Rewrite registry-saving to avoid race conditions and check for
7043 2006-03-08 Wim Taymans <wim@fluendo.com>
7045 * libs/gst/base/gstbasetransform.c:
7046 (gst_base_transform_transform_caps),
7047 (gst_base_transform_transform_size),
7048 (gst_base_transform_prepare_output_buffer),
7049 (gst_base_transform_get_unit_size),
7050 (gst_base_transform_buffer_alloc),
7051 (gst_base_transform_handle_buffer),
7052 (gst_base_transform_change_state):
7053 Cleanups, separate normal flow from errors, add sensible
7055 Don't try to renegotiate when allocating an output buffer.
7056 Also copy DISCONT buffer flag when copying a buffer.
7057 Reset the transform after we finish streaming, not during.
7059 2006-03-08 Wim Taymans <wim@fluendo.com>
7061 * libs/gst/base/gstbasesink.c: (gst_base_sink_do_sync):
7062 Use last buffer timestamp in qos message.
7064 2006-03-07 Wim Taymans <wim@fluendo.com>
7066 Patch by: Christophe Fergeau
7068 * docs/pwg/advanced-tagging.xml:
7069 * docs/pwg/building-pads.xml:
7072 2006-03-07 Wim Taymans <wim@fluendo.com>
7074 * docs/libs/gstreamer-libs-sections.txt:
7075 Added basesink new methods.
7079 Docs updates. Flesh out the QoS docs.
7081 * libs/gst/base/gstadapter.c:
7082 Small doc clarification about ownership and flushing.
7084 * libs/gst/base/gstbasesink.c: (gst_base_sink_set_sync),
7085 (gst_base_sink_get_sync), (gst_base_sink_set_max_lateness),
7086 (gst_base_sink_get_max_lateness), (gst_base_sink_set_property),
7087 (gst_base_sink_get_property), (gst_base_sink_do_sync):
7088 * libs/gst/base/gstbasesink.h:
7090 Added new methods to allow subclass to control max-lateness
7092 Generate very basic QoS events based on last sync observation.
7093 Updated docs, fix typo, added some QoS blurb.
7095 * libs/gst/base/gstbasesrc.c:
7096 Remove obsolete _get_state() calls from docs.
7098 2006-03-07 Wim Taymans <wim@fluendo.com>
7100 * docs/libs/gstreamer-libs-sections.txt:
7101 * libs/gst/base/gstbasetransform.h:
7102 API addition: Fix #333669, Add pad accessor defines for GstBaseTransform
7103 Fix docs for GstBaseSrc.
7105 2006-03-07 Wim Taymans <wim@fluendo.com>
7107 * docs/gst/gstreamer-sections.txt:
7110 * libs/gst/base/gstbasetransform.h:
7111 Small documentation fixes.
7113 2006-03-07 Tim-Philipp Müller <tim at centricular dot net>
7116 Document thread-unsafety of gst_value_register_foo_func()
7117 when used at the same time as gst_value_foo() (#322628).
7119 2006-03-07 Tim-Philipp Müller <tim at centricular dot net>
7121 * libs/gst/base/gstpushsrc.c: (gst_push_src_class_init),
7122 (gst_push_src_check_get_range):
7123 Push sources don't support pull mode by default.
7125 2006-03-06 Tim-Philipp Müller <tim at centricular dot net>
7127 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
7128 (gst_base_src_init), (gst_base_src_pad_check_get_range),
7129 (gst_base_src_default_check_get_range):
7130 * libs/gst/base/gstbasesrc.h:
7131 API addition: Add ::check_get_range() vfunc to GstBaseSrc (#332611),
7132 provide default implementation, and rename
7133 gst_base_src_check_get_range() to
7134 gst_base_src_pad_check_get_range() for clarity.
7136 2006-03-06 Wim Taymans <wim@fluendo.com>
7138 * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init):
7139 Make property overridable.
7141 2006-03-06 Wim Taymans <wim@fluendo.com>
7143 * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init),
7144 (gst_base_sink_init), (gst_base_sink_set_property),
7145 (gst_base_sink_get_property), (gst_base_sink_do_sync):
7146 * libs/gst/base/gstbasesink.h:
7147 API addition: Make max-lateness a property.
7149 2006-03-06 Wim Taymans <wim@fluendo.com>
7151 * libs/gst/base/gstbasesink.c: (gst_base_sink_wait_clock),
7152 (gst_base_sink_do_sync), (gst_base_sink_render_object):
7153 Don't ever draw a frame that is >10ms late.
7155 2006-03-06 Michael Smith <msmith@fluendo.com>
7157 * gst/gstmessage.c: (_gst_message_copy):
7158 When copying a message, set the parent_refcount of the enclosed
7159 structure to point at the copy, not the original message.
7161 2006-03-06 Tim-Philipp Müller <tim at centricular dot net>
7163 Patch by: Christophe Fergeau
7166 Do proper cast here to make GST_BOILERPLATE_WITH_INTERFACE
7167 usable in c++ code (#333417)
7169 2006-03-06 Thomas Vander Stichele <thomas at apestaart dot org>
7172 Show GST_CLOCK_TIME_NONE as 99:99:99.999999999
7174 2006-03-05 Tim-Philipp Müller <tim at centricular dot net>
7176 * libs/gst/base/gstbasetransform.c:
7177 (gst_base_transform_transform_caps):
7178 Make sure caps are writable before passing them to
7181 2006-03-04 Tim-Philipp Müller <tim at centricular dot net>
7184 Fix some minor docs errors.
7186 2006-03-04 Tim-Philipp Müller <tim at centricular dot net>
7188 Patch by: Ross Burton <ross at burtonini dot com>
7190 * gst/gsterror.c: (_gst_resource_errors_init):
7192 Add GST_RESOURCE_ERROR_NO_SPACE_LEFT (for #333352;
7194 2006-03-03 Jan Schmidt <thaytan@mad.scientist.com>
7197 Add a check and output a g_warning when GStreamer is built
7198 against GLib 2.6 but running against 2.8 or higher, and vice
7199 versa. (Closes: #323542)
7201 2006-03-03 Jan Schmidt <thaytan@mad.scientist.com>
7203 * gst/parse/parse.l:
7204 Commit patch for parse_launch syntax from #331255. Removes
7205 support for quoted strings and mimetypes when writing filtered
7206 caps. See the bug report for more details - I'm pretty sure this
7207 obscure feature is not in use by _anyone_ anywhere.
7209 With this simple change, the size of the gstreamer.so here
7210 drops from 2193KB to 1565KB.
7212 2006-03-03 Tim-Philipp Müller <tim at centricular dot net>
7214 * plugins/elements/gsttypefindelement.h:
7215 * plugins/elements/gsttypefindelement.c:
7216 (gst_type_find_element_src_event), (start_typefinding),
7217 (stop_typefinding), (gst_type_find_element_handle_event),
7218 (gst_type_find_element_chain),
7219 (gst_type_find_element_chain_do_typefinding):
7220 Use gst_type_find_helper_for_buffer() for chain-based
7223 2006-03-03 Tim-Philipp Müller <tim at centricular dot net>
7225 * plugins/elements/gsttypefindelement.c:
7226 (gst_type_find_element_class_init),
7227 (gst_type_find_element_set_property),
7228 (gst_type_find_element_get_property):
7229 Deprecate "maximum" property (not only was it only taken into
7230 account for typefinding in push-mode anyway, it also was never
7231 actually possible to set it in the first place because the
7232 property was registered with the numeric property ID for the
7233 "minimum" property). Register "maximum" property correctly,
7234 for the sake of future copy'n'pasters. Remove some cruft
7235 from property get/set functions.
7237 2006-03-03 Tim-Philipp Müller <tim at centricular dot net>
7239 * plugins/elements/gsttypefindelement.c:
7240 (gst_type_find_element_activate):
7241 Use gst_type_find_helper_get_range() here, so we
7242 can honour the "minimum" property and also emit
7243 the signal with the correct probability of the found caps.
7245 2006-03-02 Tim-Philipp Müller <tim at centricular dot net>
7247 * docs/libs/gstreamer-libs-sections.txt:
7248 * libs/gst/base/gsttypefindhelper.c: (helper_find_peek),
7249 (helper_find_suggest), (gst_type_find_helper_get_range),
7250 (gst_type_find_helper):
7251 * libs/gst/base/gsttypefindhelper.h:
7252 New API: gst_type_find_helper_get_range() (#333042).
7254 2006-03-02 Michael Smith <msmith@fluendo.com>
7256 * gst/gstregistryxml.c: (load_feature):
7257 Asserting on a failure to read part of the registry is Not Cool.
7258 Just log a warning and return NULL (which is already handled)
7260 2006-02-28 Sebastien Moutte <sebastien@moutte.net>
7262 * win32/common/libgstbase.def:
7263 added export of gst_type_find_helper_for_buffer
7264 * win32/common/libgstbase.def:
7265 added some exports : gst_bin_iterate_elements, gst_iterator_resync,
7266 gst_ghost_pad_get_target
7268 2006-02-28 Wim Taymans <wim@fluendo.com>
7270 * docs/design/draft-klass.txt:
7272 Added Connector to mark elements that are only used to
7273 allow pipeline connections.
7274 Moved Debug to extra feature since most of them are
7275 functionally something else.
7277 2006-02-28 Wim Taymans <wim@fluendo.com>
7279 * docs/design/draft-klass.txt:
7280 Some updates and clarifications.
7282 2006-02-28 Wim Taymans <wim@fluendo.com>
7284 * docs/design/draft-klass.txt:
7285 Proposal for klass field values.
7287 * docs/design/part-streams.txt:
7288 Start of a doc describing stream anatomy.
7290 2006-02-28 Wim Taymans <wim@fluendo.com>
7292 * gst/gstbin.c: (gst_bin_get_type), (gst_bin_handle_message_func):
7293 Help the compiler a bit with type registration.
7294 Use existing forward cod path instead of duplicating it when
7297 * gst/gstbus.c: (gst_bus_get_type):
7298 * gst/gstcaps.c: (gst_caps_get_type), (gst_static_caps_get_type):
7299 * gst/gstchildproxy.c: (gst_child_proxy_get_type):
7300 * gst/gstclock.c: (gst_clock_get_type):
7301 * gst/gstelement.c: (gst_element_get_type),
7302 * gst/gstelementfactory.c: (gst_element_factory_get_type):
7303 * gst/gstindexfactory.c: (gst_index_factory_get_type):
7304 * gst/gstminiobject.c: (gst_mini_object_get_type):
7305 * gst/gstpad.c: (gst_pad_get_type):
7306 * gst/gstsegment.c: (gst_segment_get_type):
7307 * gst/gststructure.c: (gst_structure_get_type):
7308 * gst/gstsystemclock.c: (gst_system_clock_get_type):
7309 * gst/gsttask.c: (gst_task_get_type), (gst_task_join):
7311 Help compiler with type registration.
7313 * plugins/elements/gstqueue.c: (gst_queue_handle_sink_event):
7316 2006-02-27 Tim-Philipp Müller <tim at centricular dot net>
7318 * plugins/elements/gsttypefindelement.c:
7319 (gst_type_find_element_handle_event):
7320 When we get an EOS event and have not found a type yet
7321 (most likely because we had not yet accumulated
7322 TYPE_FIND_MIN_SIZE of data yet), try to determine the
7323 type given the data we have so far. Fixes typefinding
7324 for very short streams again, most notably quicktime
7325 redirections as used on Apple's trailer site (#331701).
7327 2006-02-27 Tim-Philipp Müller <tim at centricular dot net>
7329 * libs/gst/base/gsttypefindhelper.c: (type_find_factory_rank_cmp),
7330 (gst_type_find_helper):
7331 Try typefinding factories with the highest rank first.
7333 2006-02-27 Tim-Philipp Müller <tim at centricular dot net>
7335 * docs/libs/gstreamer-libs-docs.sgml:
7336 * docs/libs/gstreamer-libs-sections.txt:
7337 * libs/gst/base/gsttypefindhelper.c:
7338 Add section for typefind helper and add documentation
7339 for the old and the new function.
7341 2006-02-27 Tim-Philipp Müller <tim at centricular dot net>
7343 * libs/gst/base/gsttypefindhelper.c: (buf_helper_find_peek),
7344 (buf_helper_find_suggest), (type_find_factory_rank_cmp),
7345 (gst_type_find_helper_for_buffer):
7346 * libs/gst/base/gsttypefindhelper.h:
7347 New API: gst_type_find_helper_for_buffer() (#332723).
7349 2006-02-27 Michael Smith <msmith@fluendo.com>
7351 Patch by: Loïc Minier
7355 * docs/slides/Makefile.am:
7356 prevent CVS directories getting disted.
7358 2006-02-27 Tim-Philipp Müller <tim at centricular dot net>
7360 * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref):
7361 Use the REFCOUNTING category for caps refcounting.
7363 2006-02-26 Tim-Philipp Müller <tim at centricular dot net>
7365 * plugins/elements/gsttypefindelement.c: (stop_typefinding):
7366 This should be 0 not GST_CLOCK_TIME_NONE (see #331701).
7368 2006-02-26 Tim-Philipp Müller <tim at centricular dot net>
7370 * plugins/elements/gsttypefindelement.c:
7371 (gst_type_find_element_activate):
7372 Use gst_pad_check_pull_range() before _activate_pull()
7373 to avoid unnecessary open/close (see #331690).
7375 2006-02-24 Tim-Philipp Müller <tim at centricular dot net>
7378 Docs enhancement: make it crystal clear what the
7379 gst_pad_add_*_probe() callbacks should look like.
7381 2006-02-24 Tim-Philipp Müller <tim at centricular dot net>
7383 * libs/gst/base/gstbasesrc.c:
7384 Document how applications can stop recording from
7385 live sources (see #330996).
7387 2006-02-23 Tim-Philipp Müller <tim at centricular dot net>
7389 * tests/check/Makefile.am:
7390 * tests/check/libs/basesrc.c: (eos_event_counter),
7391 (basesrc_eos_events_pull), (basesrc_eos_events_push),
7392 (basesrc_eos_events_push_live_op), (basesrc_eos_events_pull_live_op),
7393 (gst_basesrc_suite), (main):
7394 ... and add some tests for the base source EOS stuff.
7396 2006-02-23 Tim-Philipp Müller <tim at centricular dot net>
7398 * tests/check/gst/gstutils.c: (test_buffer_probe_n_times):
7399 Test case originally showed the problem fixed below,
7400 but was then amended. Add checks back at the place
7401 where they used to be.
7403 2006-02-23 Tim-Philipp Müller <tim at centricular dot net>
7405 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
7406 (gst_base_src_init), (gst_base_src_loop),
7407 (gst_base_src_activate_push), (gst_base_src_activate_pull),
7408 (gst_base_src_change_state):
7409 * libs/gst/base/gstbasesrc.h:
7410 Don't unconditionally send EOS when going from PAUSED to
7411 READY state, esp. make sure we don't send two EOS events
7412 in some cases (e.g. one when reaching EOS and one when
7413 going from PAUSED to READY). Also, we don't want to send
7414 EOS events when operating in pull mode. However, we do
7415 want to send an EOS event when shutting down a live
7416 source explicitly, for example (fixes #330996).
7418 2006-02-23 Tim-Philipp Müller <tim at centricular dot net>
7420 * plugins/elements/gstfilesrc.c: (gst_file_src_create_read):
7421 Update src->read_position after a seek when not using mmap.
7422 Fixes #332277, patch by: Renchi Raju <renchi gmail com>
7424 2006-02-21 Jan Schmidt <thaytan@mad.scientist.com>
7430 Make things work with --disable-parse as they do with
7431 --disable-load-save - the symbols involved disappear, but the
7432 header is still installed and GST_DISABLE_PARSE is included via
7435 2006-02-20 Julien MOUTTE <julien@moutte.net>
7437 * libs/gst/base/gstbasetransform.c:
7438 (gst_base_transform_change_state): Fix a stupid bug. I was
7439 sure I compiled that.
7441 2006-02-20 Julien MOUTTE <julien@moutte.net>
7443 * gst/gstpad.c: (gst_pad_set_blocked_async):
7444 * gst/gstutils.c: (gst_pad_add_data_probe),
7445 (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
7446 (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
7447 (gst_pad_remove_buffer_probe): Make those function act on the
7448 ghostpad target when it's a ghostpad. (Closes #331727)
7450 2006-02-20 Julien MOUTTE <julien@moutte.net>
7452 * libs/gst/base/gstbasetransform.c:
7453 (gst_base_transform_change_state): Make basetransform reusable.
7456 2006-02-20 Jan Schmidt <thaytan@mad.scientist.com>
7458 * docs/random/release:
7459 Move the current documentation of how to do a release to the top
7462 * gst/gstbin.c: (gst_bin_class_init),
7463 (gst_bin_handle_message_func):
7464 Allow multiple state-recalculation threads. (Closes #328873)
7466 2006-02-19 Julien MOUTTE <julien@moutte.net>
7468 * gst/gstinfo.h: Add GST_STR_NULL to the second string.
7469 * gst/gstpad.c: (gst_pad_set_event_function),
7470 (gst_pad_set_query_function), (gst_pad_set_query_type_function),
7471 (gst_pad_set_getcaps_function): GST_DEBUG_PAD_NAME evaluates to
7472 2 strings. You can't use the STR_NULL macro on that.
7474 2006-02-19 Sebastien Moutte <sebastien@moutte.net>
7476 * gst/gstpad.c: (gst_pad_set_event_function),
7477 (gst_pad_set_query_function), (gst_pad_set_query_type_function),
7478 (gst_pad_set_getcaps_function)
7479 * gst/parse/grammar.y: (gst_parse_found_pad), (gst_parse_perform_delayed_link)
7480 Fixed NULL pointer used in GST_CAT_DEBUG using GST_STR_NULL macro
7481 So now, we can use --gst-debug-level=5 on Windows
7482 * win32/common/libgstcontroller.def:
7483 Added export of gst_controller_init
7484 * win32/vs6/libgstcontroller.dsp:
7485 Fixed Release post build configuration
7487 2006-02-17 Wim Taymans <wim@fluendo.com>
7489 * tests/check/gst/gstquery.c: (GST_START_TEST):
7490 Added another check.
7492 2006-02-15 Tim-Philipp Müller <tim at centricular dot net>
7494 * plugins/elements/gsttypefindelement.c: (find_peek):
7495 We can do peeks at non-zero offsets, as long as they
7496 fall within the buffer we have.
7498 2006-02-15 Jan Schmidt <thaytan@mad.scientist.com>
7500 * tests/check/Makefile.am:
7501 * tests/check/pipelines/parse-launch.c: (setup_pipeline),
7502 (expected_fail_pipe), (check_pipeline_runs), (GST_START_TEST),
7503 (parse_suite), (main):
7504 Add testsuite for parse launch syntax
7506 2006-02-14 Tim-Philipp Müller <tim at centricular dot net>
7508 * plugins/elements/gsttypefindelement.c:
7509 (gst_type_find_element_chain):
7510 When typefinding is unsuccessful in the chain function, don't
7511 error out immediately. Only error out with NO_CAPS_FOUND if
7512 the amount of data is at least MAX_TYPEFIND_SIZE bytes,
7513 otherwise simply wait for more data so we can try typefinding
7514 again with more data later. Also, don't attempt to typefind
7515 if we have less than MIN_TYPEFIND_SIZE data available. Overall,
7516 this should improve typefinding from network sources where the
7517 size of the first buffer can be somewhat random.
7519 2006-02-14 Wim Taymans <wim@fluendo.com>
7521 * docs/gst/gstreamer-sections.txt:
7522 * gst/gstpadtemplate.c:
7523 * gst/gstpadtemplate.h:
7524 Fix padtemplate docs, fixes #328805.
7526 2006-02-14 Wim Taymans <wim@fluendo.com>
7528 * tools/gst-launch.c: (main):
7529 NO_PREROLL is not an ERROR so don't send confusing messages
7532 2006-02-14 Wim Taymans <wim@fluendo.com>
7534 Patch by: Torsten Schoenfeld
7536 * gst/gstregistry.c: (gst_registry_get_default),
7537 (_gst_registry_cleanup):
7538 Protect default registry with lock and ref/sink it.
7541 2006-02-14 Wim Taymans <wim@fluendo.com>
7544 * gst/gstquery.c: (gst_query_list_add_format),
7545 (gst_query_set_formatsv), (gst_query_parse_formats_length),
7546 (gst_query_parse_formats_nth):
7547 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times):
7550 2006-02-14 Wim Taymans <wim@fluendo.com>
7552 * docs/gst/gstreamer-sections.txt:
7553 Reworked query docs.
7555 * gst/gstquery.c: (gst_query_new_formats),
7556 (gst_query_list_add_format), (gst_query_set_formats),
7557 (gst_query_set_formatsv), (gst_query_parse_formats_length),
7558 (gst_query_parse_formats_nth):
7560 Flesh out formats query, added some new methods.
7561 Fix part of #324398.
7563 * tests/check/gst/gstquery.c: (GST_START_TEST), (gstquery_suite):
7564 Added query creation tests.
7566 2006-02-14 Jan Schmidt <thaytan@mad.scientist.com>
7568 * gst/gstpad.c: (fixate_value):
7569 Add a default fixation for fraction lists.
7571 2006-02-13 Wim Taymans <wim@fluendo.com>
7573 * gst/gsttask.c: (gst_task_init), (gst_task_func),
7574 (gst_task_set_lock), (gst_task_start), (gst_task_pause),
7577 Detect and warn for obvious deadlocks. fixes #320340
7578 Fix error case where lock was not released.
7580 * tests/check/Makefile.am:
7581 * tests/check/gst/gsttask.c: (task_func2), (GST_START_TEST),
7582 (task_func), (gst_element_suite), (main):
7585 2006-02-13 Wim Taymans <wim@fluendo.com>
7587 * docs/gst/gstreamer-sections.txt:
7589 Add new functions to docs.
7591 2006-02-13 Wim Taymans <wim@fluendo.com>
7593 * docs/design/part-TODO.txt:
7594 Updated TODO list, basesrc supports seeking to non-bytes
7597 * docs/design/part-element-sink.txt:
7600 * gst/gstbin.c: (bin_replace_message),
7601 (gst_bin_handle_message_func):
7602 * gst/gstbus.c: (gst_bus_post), (gst_bus_pop):
7603 * gst/gstevent.c: (gst_event_finalize):
7604 * gst/gstpad.c: (gst_pad_event_default_dispatch),
7605 (gst_pad_send_event):
7606 Use shiny new _TYPE_NAME macros.
7608 * libs/gst/base/gstbasesrc.c: (gst_base_src_get_range):
7609 Move debug statement up.
7611 * gst/gstelement.c: (gst_element_set_locked_state):
7614 2006-02-13 Tim-Philipp Müller <tim at centricular dot net>
7616 * docs/gst/gstreamer-sections.txt:
7619 New API: add GST_MESSAGE_TYPE_NAME and GST_QUERY_TYPE_NAME
7620 macros (#330906). Also, document the already existing
7621 GST_QUERY_TYPE macro.
7623 2006-02-13 Wim Taymans <wim@fluendo.com>
7625 * tests/check/gst/gstutils.c: (data_probe), (buffer_probe),
7626 (event_probe), (GST_START_TEST):
7627 Only events up to the pipeline EOS are counted, there are
7628 some more when going to NULL currently which we don't care
7631 2006-02-13 Wim Taymans <wim@fluendo.com>
7633 * gst/gstpad.c: (gst_pad_send_event):
7634 Correctly check flushing and emit probes. fixes #330125
7636 2006-02-10 Andy Wingo <wingo@pobox.com>
7638 * gst/gstbus.c (gst_bus_class_init): Declare our private data
7640 (gst_bus_init): Cache the location of the private data in the
7642 (gst_bus_enable_sync_message_emission)
7643 (gst_bus_disable_sync_message_emission): Implement new public
7645 (gst_bus_post): Emit the sync-message signal if the user asked for
7648 * gst/gstbus.h (GstBus): Use a padding pointer to cache the
7649 location of the bus-private structure.
7650 (gst_bus_enable_sync_message_emission)
7651 (gst_bus_disable_sync_message_emission): API addition
7653 2006-02-10 Jan Schmidt <thaytan@mad.scientist.com>
7655 Patch by: Vincent Torri
7657 * docs/pwg/building-boiler.xml:
7658 PWG patch from #326800
7660 2006-02-09 Tim-Philipp Müller <tim at centricular dot net>
7664 * docs/design/Makefile.am:
7667 2006-02-08 Jan Schmidt <thaytan@mad.scientist.com>
7672 === release 0.10.3 ===
7674 2006-02-08 Jan Schmidt <thaytan@mad.scientist.com>
7677 releasing 0.10.3, "Like a virgin"
7679 2006-02-08 Jan Schmidt <thaytan@mad.scientist.com>
7682 2nd prerelease of 0.10.3
7683 Bump libtool versioning.
7685 2006-02-07 Andy Wingo <wingo@pobox.com>
7687 * libs/gst/base/gstcollectpads.c (gst_collect_pads_chain): Only
7688 update last_stop if we're in TIME format and the timestamp is
7691 * libs/gst/base/gstcollectpads.c (gst_collect_pads_event)
7692 * libs/gst/base/gstbasetransform.c (gst_base_transform_eventfunc):
7693 * libs/gst/base/gstbasesink.c (gst_base_sink_configure_segment):
7694 If we get a new newsegment with a different format, adapt
7697 * gst/gstclock.c (gst_clock_set_calibration): Accept a numerator
7698 of 0. Not a problem, really.
7700 * libs/gst/base/gstbasesink.c (gst_base_sink_chain_unlocked): Only
7703 2006-02-06 Jan Schmidt <thaytan@mad.scientist.com>
7708 2006-02-06 Sebastien Moutte <sebastien@moutte.net>
7711 project files updated to the default vs7 configuration
7712 * win32/common/libgstbase.def:
7713 * win32/common/libgstreamer.def:
7715 removed empty lines,
7716 sorted all exported symbols alphabetically
7717 * win32/common/dirent.c:
7718 * win32/common/dirent.h:
7719 * win32/common/gchar.h:
7720 use windows line end.
7722 2006-02-06 Tim-Philipp Müller <tim at centricular dot net>
7724 * libs/gst/base/gstbasesrc.c: (gst_base_src_change_state):
7725 Send EOS event when stopping.
7727 2006-02-06 Tim-Philipp Müller <tim at centricular dot net>
7730 Tell folks what to do if the plugin-foobar.xml file
7731 hasn't been generated for a newly-added plugin.
7733 2006-02-05 Julien MOUTTE <julien@moutte.net>
7735 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_finalize),
7736 (gst_collect_pads_add_pad), (gst_collect_pads_remove_pad),
7737 (gst_collect_pads_start), (gst_collect_pads_stop),
7738 (gst_collect_pads_event): Collectpads now holds a reference
7739 to the GstPad that was added. Indeed we don't want to look
7740 at pads that might just go away with no warning...
7742 2006-02-05 Julien MOUTTE <julien@moutte.net>
7744 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_add_pad),
7745 (gst_collect_pads_start), (gst_collect_pads_stop),
7746 (gst_collect_pads_event), (gst_collect_pads_chain):
7747 * libs/gst/base/gstcollectpads.h: Handle flush. Adapted from
7748 Mark Nauwelaerts's patch on bug #328491.
7750 2006-02-04 Tim-Philipp Müller <tim at centricular dot net>
7752 * tests/check/gst/gstutils.c: (test_parse_bin_from_description),
7754 Add some simple tests for gst_parse_bin_from_description() and
7755 gst_bin_find_unconnected_pad() (#329069).
7757 2006-02-04 Tim-Philipp Müller <tim at centricular dot net>
7759 * tools/gst-launch.c: (event_loop), (main):
7760 Catch errors during preroll (#320084).
7762 2006-02-03 Tim-Philipp Müller <tim at centricular dot net>
7764 * plugins/elements/gsttypefindelement.c:
7765 (gst_type_find_element_activate):
7766 Post TYPE_NOT_FOUND error message when typefinding
7767 is unsuccessful in the activate function as well.
7769 2006-02-02 Wim Taymans <wim@fluendo.com>
7771 * docs/design/part-element-sink.txt:
7774 2006-02-02 Wim Taymans <wim@fluendo.com>
7776 * libs/gst/base/gstbasesink.c: (gst_base_sink_do_sync),
7777 (gst_base_sink_render_object),
7778 (gst_base_sink_queue_object_unlocked):
7779 Only keep track of prerollable items when we are
7781 Before rendering after preroll, always check if we
7783 Added some more debugging.
7785 2006-02-02 Wim Taymans <wim@fluendo.com>
7787 * gst/gstelement.c: (gst_element_continue_state),
7788 (gst_element_set_state_func), (gst_element_change_state):
7789 Fixed #326576, been running this for quite some time with
7790 no regressions at all.
7792 2006-02-02 Wim Taymans <wim@fluendo.com>
7795 Added more suppressions
7797 2006-02-02 Wim Taymans <wim@fluendo.com>
7799 * docs/design/part-element-sink.txt:
7802 * libs/gst/base/gstbasesink.c: (gst_base_sink_init),
7803 (gst_base_sink_finalize), (gst_base_sink_preroll_queue_flush),
7804 (gst_base_sink_configure_segment), (gst_base_sink_commit_state),
7805 (gst_base_sink_get_sync_times), (gst_base_sink_wait_clock),
7806 (gst_base_sink_do_sync), (gst_base_sink_render_object),
7807 (gst_base_sink_preroll_object),
7808 (gst_base_sink_queue_object_unlocked),
7809 (gst_base_sink_queue_object), (gst_base_sink_event),
7810 (gst_base_sink_chain_unlocked), (gst_base_sink_chain),
7811 (gst_base_sink_loop), (gst_base_sink_activate_pull),
7812 (gst_base_sink_get_position), (gst_base_sink_change_state):
7813 * libs/gst/base/gstbasesink.h:
7814 Totally refactored matching the design doc.
7815 Use two segments, one to clip incomming buffers and another to
7817 Handle queueing correctly, bypass the queue when playing.
7818 Make EOS cancelable.
7819 Handle errors correctly when operating in pull based mode.
7821 * tests/check/elements/fakesink.c: (GST_START_TEST),
7823 Added new check for sinks.
7825 2006-02-02 Wim Taymans <wim@fluendo.com>
7827 * gst/gstsegment.c: (gst_segment_clip):
7828 No reason to refuse to clip when start == -1
7830 2006-02-02 Stefan Kost <ensonic@users.sf.net>
7833 * docs/manual/intro-basics.xml:
7834 * docs/manual/intro-preface.xml:
7835 * docs/manual/manual.xml:
7836 * docs/pwg/advanced-dparams.xml:
7837 * docs/pwg/intro-basics.xml:
7838 * docs/pwg/intro-preface.xml:
7840 describe dparams (controller) for plugins
7841 unify docs a little more
7843 2006-02-02 Tim-Philipp Müller <tim at centricular dot net>
7845 * docs/gst/gstreamer-sections.txt:
7846 * gst/gstutils.c: (element_find_unconnected_pad),
7847 (gst_bin_find_unconnected_pad), (gst_parse_bin_from_description):
7849 Add new API: gst_parse_bin_from_description() and
7850 gst_bin_find_unconnected_pad() (#329069).
7852 2006-02-01 Stefan Kost <ensonic@users.sf.net>
7854 * docs/manual/README:
7855 uncover a nasty detail of the docs build
7857 2006-01-31 Wim Taymans <wim@fluendo.com>
7859 * gst/gstbin.c: (bin_remove_messages), (bin_query_duration_done):
7860 Don't cache duration messages if we're not going to use or
7863 2006-01-31 Stefan Kost <ensonic@users.sf.net>
7865 * docs/manual/advanced-dparams.xml:
7866 * docs/pwg/advanced-dparams.xml:
7870 * libs/gst/controller/lib.c: (gst_controller_init):
7873 2006-01-31 Thomas Vander Stichele <thomas at apestaart dot org>
7875 * gst/gstelement.c: (gst_element_message_full):
7876 also show file/line/func if no additional debug was given
7878 2006-01-31 Sebastien Moutte <sebastien@moutte.net>
7880 * win32/vs7/grammar.vcproj:
7881 activate copy of autogenerated files for Release mode
7883 2006-01-30 Sebastien Moutte <sebastien@moutte.net>
7885 * win32/common/libgstreamer.def:
7886 export gst_value_compare
7888 2006-01-30 Jan Schmidt <thaytan@mad.scientist.com>
7890 * plugins/elements/Makefile.am:
7891 * plugins/elements/gstelements.c:
7892 * plugins/elements/gstfdsink.c: (_do_init),
7893 (gst_fd_sink_base_init), (gst_fd_sink_class_init),
7894 (gst_fd_sink_init), (gst_fd_sink_dispose), (gst_fd_sink_query),
7895 (gst_fd_sink_render), (gst_fd_sink_check_fd), (gst_fd_sink_start),
7896 (gst_fd_sink_stop), (gst_fd_sink_unlock), (gst_fd_sink_update_fd),
7897 (gst_fd_sink_set_property), (gst_fd_sink_uri_get_type),
7898 (gst_fd_sink_uri_get_protocols), (gst_fd_sink_uri_get_uri),
7899 (gst_fd_sink_uri_set_uri), (gst_fd_sink_uri_handler_init):
7900 * plugins/elements/gstfdsink.h:
7901 Port fdsink to 0.10 (patch by Philippe Rouquier) (Fixes #325490)
7903 2006-01-30 Stefan Kost <ensonic@users.sf.net>
7905 * docs/manual/advanced-dparams.xml:
7907 * docs/manual/advanced-position.xml:
7908 * docs/manual/basics-init.xml:
7909 * docs/manual/manual.xml:
7910 * docs/manual/titlepage.xml:
7912 * docs/pwg/titlepage.xml:
7913 cleanup xml (more to come)
7914 * libs/gst/controller/gstcontroller.c:
7917 2006-01-30 Sebastien Moutte <sebastien@moutte.net>
7919 * win32/vs6/grammar.dsp:
7920 add autogen of gstmarshal.c,h for Release mode
7922 2006-01-30 Wim Taymans <wim@fluendo.com>
7924 * libs/gst/base/gstbasesink.c: (gst_base_sink_init),
7925 (gst_base_sink_preroll_queue_empty), (gst_base_sink_commit_state),
7926 (gst_base_sink_handle_object), (gst_base_sink_event),
7927 (gst_base_sink_is_prerolled), (gst_base_sink_wait),
7928 (gst_base_sink_do_sync), (gst_base_sink_handle_event),
7929 (gst_base_sink_handle_buffer), (gst_base_sink_set_flushing),
7930 (gst_base_sink_deactivate), (gst_base_sink_activate),
7931 (gst_base_sink_activate_pull), (gst_base_sink_get_position),
7932 (gst_base_sink_query), (gst_base_sink_change_state):
7933 Basesink cleanups, remove some old code.
7934 Handle the case where a subclass can preroll in the render
7935 method (mostly audiosinks).
7937 Remove some locks around variables that are now protected
7938 with the PREROLL_LOCK (clock_id, flushing, ..).
7939 Optimize position query some more, do correct locking.
7940 Remove old code to push queue in state change, this is not
7941 needed anymore since preroll blocks on all prerollable items
7943 Almost implemented as described in design doc.
7945 2006-01-30 Wim Taymans <wim@fluendo.com>
7947 * tests/check/gst/gstbin.c: (GST_START_TEST):
7948 Wait for refcount to settle down before checking.
7950 2006-01-30 Wim Taymans <wim@fluendo.com>
7952 * docs/design/part-element-sink.txt:
7953 Pseudo code overview of desired sink behaviour regarding
7956 2006-01-29 Sebastien Moutte <sebastien@moutte.net>
7957 * win32/vs6/grammar.dsp:
7958 fix some bugs in Release mode for autogenerated files
7960 2006-01-29 Sebastien Moutte <sebastien@moutte.net>
7961 * win32/common/libgstbase.def:
7962 * win32/common/libgstreamer.def:
7963 export some new symbols: gst_base_src_set_format,
7964 gst_iterator_next, gst_structure_set_valist
7966 2006-01-29 Julien MOUTTE <julien@moutte.net>
7968 * gst/gstghostpad.c: (gst_proxy_pad_set_target_unlocked):
7969 Set pad functions unconditionally. Fixes #329105.
7971 2006-01-29 Sebastien Moutte <sebastien@moutte.net>
7973 add vs8 project files created by Sergey Scobich
7975 2006-01-28 Jan Schmidt <thaytan@mad.scientist.com>
7977 * gst/gstutils.c: (gst_element_unlink_pads):
7978 Don't leak pad references.
7980 * tests/check/elements/fakesink.c: (GST_START_TEST):
7981 * tests/check/generic/sinks.c: (GST_START_TEST):
7982 * tests/check/generic/states.c: (GST_START_TEST):
7983 * tests/check/gst/gstbin.c: (GST_START_TEST):
7984 * tests/check/gst/gstcaps.c: (GST_START_TEST):
7985 * tests/check/gst/gstelement.c: (GST_START_TEST):
7986 * tests/check/gst/gstghostpad.c: (GST_START_TEST):
7987 * tests/check/gst/gstiterator.c: (GST_START_TEST):
7988 * tests/check/gst/gstvalue.c: (GST_START_TEST):
7989 Fix a bunch of leaks. Make generic/sinks.c
7990 use a bit less cpu by slowing the buffer rate
7991 between fakesrc and fakesink.
7993 2006-01-27 Stefan Kost <ensonic@users.sf.net>
7995 * gst/gstelement.c: (gst_element_send_event):
7998 * gst/gstiterator.c:
7999 * gst/gstiterator.h:
8000 * gst/gstpad.c: (gst_pad_send_event):
8001 * gst/gststructure.c:
8005 * libs/gst/base/gstadapter.c:
8006 doc fixes, to link to function, just write gst_cool_function(), don't
8009 2006-01-27 Jan Schmidt <thaytan@mad.scientist.com>
8011 * plugins/elements/gsttee.c: (gst_tee_do_push),
8012 (gst_tee_handle_buffer):
8013 Always prefer an actual return value from a src
8014 pad in place of NOT_LINKED. This means we return
8015 WRONG_STATE when all src pads are WRONG_STATE
8016 instead of NOT_LINKED.
8018 Lock when replacing the last message to prevent
8019 racing with the get_property method.
8023 2006-01-27 Jan Schmidt <thaytan@mad.scientist.com>
8025 * tests/check/Makefile.am:
8026 * tests/check/gst/gstquery.c: (GST_START_TEST), (gstquery_suite),
8028 Add a very simple check that should have caught the memleak I fixed
8029 last night (if not for the slice allocator hiding it)
8031 2006-01-27 Jan Schmidt <thaytan@mad.scientist.com>
8033 * gst/gstbin.c: (gst_bin_dispose), (gst_bin_provide_clock_func),
8034 (gst_bin_remove_func), (gst_bin_handle_message_func),
8035 (bin_query_duration_fold), (bin_query_generic_fold):
8036 Clean up references to the clock provider when disposed or when
8037 handling a clock-lost message from it.
8039 Unref sinks when performing a query via gst_iterator_fold, as the
8040 gst_bin_iterate_sinks iterator refs each item. (Fixes #323874)
8042 * gst/gstclock.c: (gst_clock_class_init), (gst_clock_dispose),
8043 (gst_clock_set_master):
8044 Drop our reference to the master clock, if any, when we are disposed.
8046 * gst/gsttypefindfactory.c: (gst_type_find_factory_dispose):
8047 Chain up in dispose.
8049 2006-01-26 Wim Taymans <wim@fluendo.com>
8051 * libs/gst/base/gstbasesrc.c: (gst_base_src_get_range):
8054 2006-01-26 Julien MOUTTE <julien@moutte.net>
8056 * plugins/elements/gsttee.c: (gst_tee_do_push),
8057 (gst_tee_handle_buffer): Apply patch from #328715. Tee now
8058 handles pad being NOT_LINKED or in WRONG_STATE.
8060 2006-01-26 Stefan Kost <ensonic@users.sf.net>
8065 2006-01-26 Stefan Kost <ensonic@users.sf.net>
8068 remove obsolete entry
8070 2006-01-26 Stefan Kost <ensonic@users.sf.net>
8072 * docs/gst/gstreamer-sections.txt:
8073 * gst/gstbin.c: (bin_element_is_src), (src_iterator_filter),
8074 (gst_bin_iterate_sources), (gst_bin_send_event):
8076 * gst/gstelement.c: (gst_element_send_event):
8078 * gst/gstpad.c: (gst_pad_send_event):
8079 added code for downstream events, reviewed docs in gstevent.c
8081 2006-01-25 Julien MOUTTE <julien@moutte.net>
8083 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_position):
8084 We only query position using the clock in the playing state.
8085 Query peer in the other cases.
8086 * win32/common/config.h: Updates.
8088 2006-01-24 Wim Taymans <wim@fluendo.com>
8090 * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
8091 A clock entry that is scheduled for the exact time of the
8092 clock is still in time.
8094 * libs/gst/base/gstbasesink.c: (gst_base_sink_handle_object),
8095 (gst_base_sink_do_sync):
8096 Add some more debug info.
8098 2006-01-23 Sebastien Moutte <sebastien@moutte.net>
8101 Add new vs7 project files and solution.
8103 2006-01-23 Sebastien Moutte <sebastien@moutte.net>
8106 all files removed as they were out-dated.
8108 2006-01-20 Thomas Vander Stichele <thomas at apestaart dot org>
8110 * docs/random/release:
8112 * gst/gstbin.c: (gst_bin_init):
8113 * gst/gstbus.c: (gst_bus_new):
8115 * gst/gstpipeline.c: (gst_pipeline_init):
8116 use gst_bus_new(), improve logging, fix docs
8117 * win32/common/config.h:
8118 update for cvs build
8120 2006-01-20 Thomas Vander Stichele <thomas at apestaart dot org>
8123 up required version of automake to 1.7
8125 2006-01-20 Sebastien Moutte <sebastien@moutte.net>
8127 * win32/common/libgstreamer.def:
8128 export gst_buffer_is_metadata_writable
8130 2006-01-20 Tim-Philipp Müller <tim at centricular dot net>
8132 * docs/gst/gstreamer-sections.txt:
8134 Add gst_event_replace() (#327001)
8136 2006-01-20 Wim Taymans <wim@fluendo.com>
8138 * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
8139 Make it actually compile too..
8141 2006-01-20 Wim Taymans <wim@fluendo.com>
8144 Clarify behaviour of _is_equal() when passing NULL parameters.
8146 * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
8148 Cleanups. Don't unref NULL caps.
8149 When setting the same caps, protect caps of the pad with
8151 Use full functionality of _is_equal() when comparing caps.
8153 2006-01-20 Jan Schmidt <thaytan@mad.scientist.com>
8155 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_is_collected):
8156 Don't loop infinitely if there are no buffers to present. Partially
8157 fixes #327197, but collectpads is just broken for reusing elements
8158 to do multiple encodes atm.
8160 2006-01-20 Jan Schmidt <thaytan@mad.scientist.com>
8162 * tools/gst-inspect.c: (print_element_features):
8163 * tools/gst-xmlinspect.c: (main):
8164 URL_HANDLER is not a plugin feature we can search for in
8167 2006-01-19 Edward Hervey <edward@fluendo.com>
8169 * gst/gstelement.c: (gst_element_pads_activate):
8170 When activating, do src pads first, then sink pads.
8171 When de-activating, do sink pads first, then src pads.
8173 2006-01-19 Jan Schmidt <thaytan@mad.scientist.com>
8175 * docs/gst/gstreamer-sections.txt:
8176 Add gst_index_add_associationv to the docs
8178 2006-01-19 Jan Schmidt <thaytan@mad.scientist.com>
8183 * plugins/elements/gstqueue.c: (gst_queue_handle_sink_event),
8184 (gst_queue_chain), (gst_queue_push_one), (gst_queue_loop):
8185 Do some refactoring. Doesn't actually change functionality,
8186 but makes landing the DRAIN event easier later.
8188 2006-01-19 Tim-Philipp Müller <tim at centricular dot net>
8190 * docs/pwg/advanced-scheduling.xml:
8191 Update from 0.9.x to 0.10 API and make example a bit
8194 2006-01-19 Jan Schmidt <thaytan@mad.scientist.com>
8196 * docs/gst/gstreamer-sections.txt:
8197 Add gst_buffer_(is|make)_metadata_writable methods.
8199 2006-01-19 Jan Schmidt <thaytan@mad.scientist.com>
8201 * docs/design/part-sparsestreams.txt:
8202 Update sparse streams doc, hopefully for greater clarity
8204 2006-01-18 Jan Schmidt <thaytan@mad.scientist.com>
8206 * docs/design/part-events.txt:
8207 Remove mention of FILLER events.
8210 * docs/design/part-sparsestreams.txt:
8211 Write some things about using NEWSEGMENT to keep sparse streams
8214 2006-01-18 Tim-Philipp Müller <tim at centricular dot net>
8216 * gst/gstbin.c: (gst_bin_dispose):
8217 Guard gst_object_unref call against a NULL object (dispose
8218 can theoretically be called multiple times).
8220 2006-01-18 Wim Taymans <wim@fluendo.com>
8222 * gst/gstbin.c: (gst_bin_element_set_state):
8223 * gst/gstclock.c: (gst_clock_id_wait):
8224 Added some more debug info.
8226 * libs/gst/base/gstadapter.c:
8229 * libs/gst/base/gstbasesink.c: (gst_base_sink_handle_object),
8230 (gst_base_sink_do_sync), (gst_base_sink_chain):
8231 Added some comments.
8233 2006-01-18 Wim Taymans <wim@fluendo.com>
8235 * tests/check/Makefile.am:
8236 * tests/check/elements/fakesink.c: (chain_async_buffer),
8237 (chain_async), (chain_async_return), (GST_START_TEST),
8238 (fakesink_suite), (main):
8239 Added fakesink test that checks prerolling and clipping
8242 * tests/check/gst/gstutils.c: (GST_START_TEST):
8243 Make check run faster so that buildbots don't timeout.
8245 2006-01-18 Wim Taymans <wim@fluendo.com>
8247 * libs/gst/base/gstbasesink.c: (gst_base_sink_handle_object),
8248 (gst_base_sink_do_sync):
8250 When the sink finishes blocking on the preroll buffer, it can
8251 immediatly render it instead of rendering when the next buffer
8254 2006-01-18 Wim Taymans <wim@fluendo.com>
8256 * libs/gst/base/gstbasesink.c: (gst_base_sink_set_property),
8257 (gst_base_sink_get_property), (gst_base_sink_do_sync),
8258 (gst_base_sink_chain):
8260 GST_ELEMENT_CLOCK and sync are protected with LOCK.
8261 Don't store _last_stop if the buffer is dropped.
8263 2006-01-18 Tim-Philipp Müller <tim at centricular dot net>
8265 * plugins/elements/gsttypefindelement.c:
8266 (gst_type_find_element_class_init):
8267 'have-type' signal needs to be G_SIGNAL_RUN_FIRST, as it is the
8268 object method handler that sets the caps on the pad and we want
8269 that to happen before we emit the signal (fixes e.g. feeding a
8270 plain text file to decodebin).
8272 2006-01-18 Christian Schaller <Christian@fluendo.com>
8274 * gst/gstplugin.c: Add MPL and Proprietary as license options
8276 2006-01-18 Andy Wingo <wingo@pobox.com>
8278 * gst/gstindex.h (gst_index_add_associationv): Add to header. The
8279 symbol was exported before, it appears this was just an oversight.
8281 Patch by: Torsten Schoenfeld <kaffeetisch at gmx.de>
8283 * gst/gstindex.c (gst_index_add_associationv): Changed int in
8284 prototype to gint. OK since this prototype was not in the header.
8286 2006-01-17 Andy Wingo <wingo@pobox.com>
8288 * gst/gstregistry.c (_gst_registry_remove_cache_plugins): Lock the
8289 registry while we remove plugins.
8291 * tools/gst-inspect.c (print_element_info): Don't unref the
8292 factory arg, that should be the responsibility of whatever code
8293 received the ref. Fixes a double-free when called from
8294 print_element_list via gst-inspect-0.10 -a. Fixes #327324.
8295 (main): Unref the factory if we have one.
8296 (print_element_list): No change -- relies on the
8297 plugin_feature_list_free to free the list of features.
8299 2006-01-17 Jan Schmidt <thaytan@mad.scientist.com>
8301 * gst/gstbuffer.c: (gst_buffer_is_metadata_writable),
8302 (gst_buffer_make_metadata_writable):
8304 * libs/gst/base/gstbasetransform.c:
8305 (gst_base_transform_prepare_output_buf):
8306 * plugins/elements/gstcapsfilter.c: (gst_capsfilter_prepare_buf):
8307 * tests/check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
8308 Replace gst_buffer_(make|is)_metadata_writable patch now
8309 that the release is out.
8311 2006-01-17 Andy Wingo <wingo@pobox.com>
8313 * gst/gstregistry.c: Reflow design comment. Update so as to speak
8314 in the present tense without reference to versions.
8316 * gst/gstregistry.c (gst_registry_add_plugin)
8317 (gst_registry_remove_plugin, gst_registry_remove_feature)
8318 (gst_registry_find_feature, gst_registry_get_feature_list)
8319 (gst_registry_get_plugin_list, gst_registry_lookup_feature)
8320 (gst_registry_lookup, gst_registry_scan_path)
8321 (_gst_registry_remove_cache_plugins)
8322 (gst_registry_get_feature_list_by_plugin): Add argument
8325 === release 0.10.2 ===
8327 2006-01-16 Thomas Vander Stichele <thomas at apestaart dot org>
8330 releasing 0.10.2, "If man is five"
8332 2006-01-16 Jan Schmidt <thaytan@mad.scientist.com>
8336 * libs/gst/base/gstbasetransform.c:
8337 (gst_base_transform_prepare_output_buf):
8338 * plugins/elements/gstcapsfilter.c: (gst_capsfilter_prepare_buf):
8339 * tests/check/gst/gstbuffer.c: (gst_test_suite):
8340 Back out patch until after the release.
8342 2006-01-16 Jan Schmidt <thaytan@mad.scientist.com>
8344 * gst/gstminiobject.c:
8345 Spelling fix in docs.
8346 * ChangeLog - remove conflict indicator
8348 2006-01-16 Jan Schmidt <thaytan@mad.scientist.com>
8350 Reviewed By: Andy Wingo
8352 * gst/gstbuffer.c: (gst_buffer_is_metadata_writable),
8353 (gst_buffer_make_metadata_writable):
8355 Add gst_buffer_(is|make)_metadata_writable as analogues of
8356 gst_buffer_(is|make)_writable.
8358 * libs/gst/base/gstbasetransform.c:
8359 (gst_base_transform_prepare_output_buf):
8360 * plugins/elements/gstcapsfilter.c: (gst_capsfilter_prepare_buf):
8361 Use name gst_buffer_(is|make)_metadata_writable functions.
8363 * tests/check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
8364 Test gst_buffer_(is|make)_metadata_writable
8368 2006-01-14 Thomas Vander Stichele <thomas at apestaart dot org>
8370 * docs/manual/Makefile.am:
8371 don't do parallel make
8374 * win32/common/config.h.in:
8375 add generations for HOST_CPU and GST_MAJORMINOR
8376 * win32/common/config.h:
8377 commit generated result
8379 2006-01-13 Tim-Philipp Müller <tim at centricular dot net>
8381 * docs/manual/appendix-integration.xml:
8382 Update GNOME integration section to use gst_init_get_option_group()
8383 instead of the old popt stuff (#322911). Also, GNOME applications
8384 should now use gconf*sink and gconf*src instead of the old gconf
8387 2006-01-13 Stefan Kost <ensonic@users.sf.net>
8390 * docs/gst/gstreamer-docs.sgml:
8391 * docs/gst/gstreamer-sections.txt:
8392 * docs/libs/gstreamer-libs-sections.txt:
8393 add new API entries to the docs
8394 * libs/gst/controller/Makefile.am:
8395 * libs/gst/controller/gstcontroller.c:
8396 * libs/gst/controller/gstcontroller.h:
8397 * libs/gst/controller/gstcontrollerprivate.h:
8398 * libs/gst/controller/gsthelper.c:
8399 * libs/gst/controller/gstinterpolation.c:
8400 move private structs to private header
8402 gstreamer-0.7 -> gstreamer-0.10
8403 * tests/check/libs/struct_i386.h:
8404 remove private structs
8406 2006-01-13 Thomas Vander Stichele <thomas at apestaart dot org>
8408 * plugins/indexers/Makefile.am:
8409 Fixes as part of #317048
8411 2006-01-13 Thomas Vander Stichele <thomas at apestaart dot org>
8413 * plugins/indexers/Makefile.am:
8414 fix #316086 - compilation when mmap is missing
8416 2006-01-12 Sebastien Moutte <sebastien@moutte.net>
8418 * libs/gst/base/gstbasesink.c:
8419 *cur = (now - base) * basesink->segment.abs_rate + time; replaced by
8420 *cur = gst_guint64_to_gdouble(now - base) * basesink->segment.abs_rate + time; for vs6
8421 * win32/common/config.h:
8422 added some defines GST_MAJORMINOR and HOST_CPU
8423 * win32/common/libgstbase.def:
8424 * win32/common/libgstreamer.def:
8425 added some exported functions.
8427 2006-01-12 Stefan Kost <ensonic@users.sf.net>
8429 * libs/gst/controller/gstcontroller.c:
8430 (gst_controlled_property_set_interpolation_mode),
8431 (gst_controlled_property_new):
8432 * libs/gst/controller/gstcontroller.h:
8433 * libs/gst/controller/gstinterpolation.c:
8434 (interpolate_none_get_string_value_array):
8435 make G_TYPE_STRING controlable
8437 2006-01-12 Stefan Kost <ensonic@users.sf.net>
8440 * tools/gst-feedback.1.in:
8441 * tools/gst-inspect.1.in:
8442 * tools/gst-launch.1.in:
8443 * tools/gst-md5sum.1.in:
8444 * tools/gst-typefind.1.in:
8445 * tools/gst-xmlinspect.1.in:
8446 * tools/gst-xmllaunch.1.in:
8447 cleanup man-pages, remove reference to gst-register, document env-vars
8449 2006-01-12 Jan Schmidt <thaytan@mad.scientist.com>
8451 * gst/gstbuffer.c: (gst_buffer_span):
8452 gst_buffer_span should copy the timestamp of the first buffer
8453 if they were both originally overlapping subbuffers of the
8454 same parent, using the same logic as the 'slow copy' case.
8456 2006-01-11 Jan Schmidt <thaytan@mad.scientist.com>
8458 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_pop):
8459 Need to awaken ALL the pads when we pop a buffer, otherwise
8460 collectpads only works when there is 2 input streams.
8462 2006-01-11 Stefan Kost <ensonic@users.sf.net>
8464 * docs/random/ensonic/media-device-daemon.txt:
8467 fix doc example, add clarification
8468 * tools/gst-launch.1.in:
8469 add initial info about GST_PLUGIN_PATH, needs more work
8471 2006-01-11 Tim-Philipp Müller <tim at centricular dot net>
8473 * docs/manual/basics-bins.xml:
8474 * docs/manual/basics-elements.xml:
8475 * docs/manual/intro-basics.xml:
8476 Some more minor docs additions and updates.
8478 2006-01-11 Wim Taymans <wim@fluendo.com>
8480 * docs/manual/basics-bins.xml:
8481 * docs/manual/basics-elements.xml:
8482 Some small fixes as pointed out by Ser-ver on IRC.
8484 2006-01-10 Edward Hervey <edward@fluendo.com>
8486 * plugins/elements/gstidentity.c: (gst_identity_transform_ip):
8487 Set the buffer offset/offset_end to GST_CLOCK_TIME_NONE when using
8488 the single-segment mode.
8490 2006-01-10 Brian Cameron <brian dot cameron at sun dot com>
8492 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
8494 * libs/gst/base/gstbasesrc.c: (gst_base_src_init),
8495 (gst_base_src_perform_seek), (gst_base_src_send_event),
8496 (gst_base_src_set_property), (gst_base_src_get_property),
8497 (gst_base_src_loop), (gst_base_src_start),
8498 (gst_base_src_activate_push):
8499 * libs/gst/base/gstbasesrc.h:
8500 Name (private) union; makes Sun's Forte compiler happy (#324900).
8502 2006-01-09 Tim-Philipp Müller <tim at centricular dot net>
8505 gst-register is gone.
8507 2006-01-07 Thomas Vander Stichele <thomas at apestaart dot org>
8509 * gst/gstvalue.c: (_gst_value_initialize):
8510 make the G_TYPE_DATE instantiation work if debug is disabled
8512 2006-01-06 Tim-Philipp Müller <tim at centricular dot net>
8514 * gst/gstmessage.c: (gst_message_parse_tag),
8515 (gst_message_parse_error), (gst_message_parse_warning):
8516 Don't crash when return location for error/warning debug
8517 string is NULL; add fact that return locations can be
8518 NULL to docs where appropriate.
8520 2006-01-05 Wim Taymans <wim@fluendo.com>
8522 * gst/gstplugin.c: (gst_plugin_load_file):
8523 Replace strdup by g_strdup.
8525 2006-01-05 Thomas Vander Stichele <thomas at apestaart dot org>
8527 * docs/pwg/advanced-types.xml:
8530 2006-01-05 Thomas Vander Stichele <thomas at apestaart dot org>
8532 submitted by: Abel Cheung
8536 Added Chinese (traditional) translation
8538 2006-01-04 Wim Taymans <wim@fluendo.com>
8540 * docs/manual/basics-pads.xml:
8541 * docs/plugins/Makefile.am:
8542 * docs/plugins/gstreamer-plugins-docs.sgml:
8543 * docs/plugins/gstreamer-plugins-sections.txt:
8544 * docs/pwg/advanced-clock.xml:
8545 * docs/pwg/advanced-scheduling.xml:
8546 * docs/pwg/advanced-types.xml:
8547 * plugins/elements/gstfdsink.c:
8548 * plugins/elements/gstfdsrc.c:
8549 * plugins/elements/gstfdsrc.h:
8550 * plugins/elements/gstidentity.c: (gst_identity_class_init):
8551 * plugins/elements/gstidentity.h:
8552 * plugins/elements/gstqueue.h:
8553 * plugins/elements/gsttee.c:
8554 * plugins/elements/gsttee.h:
8555 * plugins/elements/gsttypefindelement.c:
8556 (gst_type_find_element_class_init):
8557 * plugins/elements/gsttypefindelement.h:
8558 Small updates to various docs.
8559 Added core plugins to docs.
8561 2006-01-03 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
8564 add a suppression for liboil's uninitialized variable
8566 2006-01-02 James Livingston <jrl at ids dot org dot au>
8568 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
8571 Add prototype for _get_type() function to GST_BOILERPLATE_FULL
8572 macro, so that gcc doesn't complain if the -Wmissing-prototypes
8573 compiler switch is being used (#325429).
8575 2005-12-29 Tim-Philipp Müller <tim at centricular dot net>
8577 * gst/gstbin.c: (gst_bin_query):
8578 Disable duration query caching in bins until it gets
8579 fixed (see #324807).
8581 2005-12-27 Tim-Philipp Müller <tim at centricular dot net>
8583 * tools/gst-inspect.c: (print_element_properties_info):
8584 Handle properties of POINTER and BOXED type.
8586 2005-12-27 Tim-Philipp Müller <tim at centricular dot net>
8588 * gst/gst.c: (init_post):
8589 Init tags stuff and some other things before loading
8590 any static plugins (there may be other static plugins
8591 than just the GStreamer ones, and they may want to
8592 register their own tags or formats or whatever, and
8593 preferably without segfaulting).
8595 * plugins/elements/gstqueue.c: (gst_queue_handle_src_query):
8596 Print at least a warning in the debug logs if we drop a
8597 query just because we don't know how to adjust the value
8598 in the particular format.
8600 2005-12-24 David Schleef <ds@schleef.org>
8602 * tools/gstreamer-completion:
8603 Replacement for gst-complete written in sh and sed. Only
8604 completes names of features, but that's 90% of what I want
8605 it for. Properties are not available in registry.xml. (Maybe
8608 === release 0.10.1 ===
8610 2005-12-23 Thomas Vander Stichele <thomas at apestaart dot org>
8613 releasing 0.10.1, "Nollaig chridheil"
8615 2005-12-22 Tim-Philipp Müller <tim at centricular dot net>
8618 Add missing quote, should be make ERROR_CFLAGS="".
8620 2005-12-20 Wim Taymans <wim@fluendo.com>
8622 * docs/design/part-trickmodes.txt:
8623 More documentation on trickmodes.
8625 2005-12-20 Edward Hervey <edward@fluendo.com>
8627 * gst/gstcaps.c: (gst_static_caps_get_type):
8629 API addition: GST_TYPE_STATIC_CAPS
8630 Added gpointer GType for GstStaticCaps so we can wrap them in bindings.
8631 * gst/gstpadtemplate.c: (gst_static_pad_template_get_type):
8632 * gst/gstpadtemplate.h:
8633 API addition: GST_TYPE_STATIC_PAD_TEMPLATE
8634 Added gpointer GType for GstStaticPadTemplate so we can wrap them in
8637 2005-12-18 Wim Taymans <wim@fluendo.com>
8639 * libs/gst/base/gstadapter.c:
8640 * libs/gst/base/gstadapter.h:
8641 * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init),
8642 (gst_base_sink_get_position):
8643 * libs/gst/base/gstbasesink.h:
8644 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
8645 (gst_base_src_default_query), (gst_base_src_default_do_seek),
8646 (gst_base_src_do_seek), (gst_base_src_perform_seek),
8647 (gst_base_src_send_event), (gst_base_src_update_length),
8648 (gst_base_src_get_range), (gst_base_src_loop),
8649 (gst_base_src_start):
8650 * libs/gst/base/gstbasesrc.h:
8651 * libs/gst/base/gstbasetransform.h:
8652 * libs/gst/base/gstcollectpads.h:
8653 * libs/gst/base/gstpushsrc.c:
8654 * libs/gst/base/gstpushsrc.h:
8655 * libs/gst/dataprotocol/dataprotocol.c:
8656 * libs/gst/dataprotocol/dataprotocol.h:
8657 * libs/gst/net/gstnetclientclock.h:
8658 * libs/gst/net/gstnettimeprovider.h:
8659 Documentation updates.
8661 2005-12-18 Tim-Philipp Müller <tim at centricular dot net>
8663 * docs/manual/basics-helloworld.xml:
8664 Remove superfluous closing bracket in helloworld example.
8666 2005-12-17 Tim-Philipp Müller <tim at centricular dot net>
8668 * tools/gst-launch.1.in:
8669 Update gst-launch man page; add a section with useful
8670 environment variables. Fixes #323882.
8672 2005-12-16 Stefan Kost <ensonic@users.sf.net>
8675 * gst/gst_private.h:
8676 change some char* into char[]
8678 2005-12-16 Wim Taymans <wim@fluendo.com>
8680 * gst/gstregistryxml.c: (load_feature):
8682 Don't use g_object_unref on GstObjects so that we avoid
8683 leaks on unsafe glibs.
8685 2005-12-16 Wim Taymans <wim@fluendo.com>
8687 * gst/gstbin.c: (gst_bin_recalc_state):
8690 2005-12-16 Wim Taymans <wim@fluendo.com>
8693 Added make forever target for check.
8695 2005-12-16 Thomas Vander Stichele <thomas at apestaart dot org>
8697 * gst/gst.c: (init_post):
8698 make the registry cache file HOST_CPU-dependent
8700 2005-12-16 Andy Wingo <wingo@pobox.com>
8702 * plugins/elements/gstbufferstore.c
8703 (gst_buffer_store_cleared_func): Pay attention to g_list_append
8706 * tests/check/gst/gstobject.c
8707 (test_fake_object_name_threaded_unique): Pay attention to
8708 g_list_sort return value.
8710 2005-12-16 Tim-Philipp Müller <tim at centricular dot net>
8712 * tools/gst-feedback-m.m:
8713 Update for 0.9/0.10 (fixes #323870).
8715 2005-12-15 Tim-Philipp Müller <tim at centricular dot net>
8717 * gst/gstminiobject.c: (gst_value_mini_object_lcopy):
8718 Fix lcopy for mini objects, the mini object needs to be ref'ed.
8720 * tests/check/gst/gstminiobject.c: (my_foo_init),
8721 (my_foo_get_property), (my_foo_set_property), (my_foo_class_init),
8722 (test_value_collection), (gst_mini_object_suite):
8723 Add test to ensure refcounts end up as expected when passing
8724 GstMiniObjects through g_object_get() and g_object_set().
8726 2005-12-14 Julien MOUTTE <julien@moutte.net>
8728 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_base_init),
8729 (gst_collect_pads_remove_pad), (gst_collect_pads_is_collected),
8730 (gst_collect_pads_event), (gst_collect_pads_chain): Refactoring
8731 of collectpads. This version removes a lot of races without
8732 touching API/ABI. Yay !
8734 2005-12-14 Jan Schmidt <thaytan@mad.scientist.com>
8736 * gst/gstpad.c: (gst_pad_activate_pull), (gst_pad_link_prepare):
8737 Don't allow activation of a srcpad in pull_range if it has no
8739 Change some debug statements to be a little clearer
8741 * plugins/elements/gsttypefindelement.c:
8742 (gst_type_find_handle_src_query):
8743 Check that we have a peer before executing queries thereupon.
8745 * tests/examples/metadata/read-metadata.c: (message_loop):
8746 Use gst_bus_pop instead of gst_bus_poll when we just want it to
8747 immediately return us any available message with 0 timeout.
8749 2005-12-12 Michael Smith <msmith@fluendo.com>
8751 * gst/gsttypefindfactory.c: (gst_type_find_factory_call_function):
8752 Don't unref factories after calling them.
8753 * libs/gst/base/gsttypefindhelper.c: (gst_type_find_helper):
8754 * plugins/elements/gsttypefindelement.c:
8755 (gst_type_find_element_chain):
8756 Free lists of factories after using them. Fixing typefinding memory
8759 2005-12-12 Stefan Kost <ensonic@users.sf.net>
8761 * gst/gstpluginfeature.c: (gst_plugin_feature_finalize),
8762 (gst_plugin_feature_load):
8763 more meaningful debug output
8765 * tests/Makefile.am:
8766 * tests/old/examples/Makefile.am:
8767 make make distcheck happy again
8769 2005-12-12 Tim-Philipp Müller <tim at centricular dot net>
8771 * plugins/elements/gsttypefindelement.c: (stop_typefinding):
8772 Catch the special case where we are operating chain-based,
8773 but the downstream peer pad has no chain function. Emit a
8774 custom error message in this case instead of letting the
8775 core generate one implying that this is some sort of core
8776 bug. It's not, it just means that whatever got plugged
8777 into the pipeline downstream when we announced the type
8778 can only operate pull-based, while our source can only
8779 operate push-based (e.g. http://foo/bar.mov ! qtdemux ! ...)
8780 Error string has not been marked for translation yet, as
8781 it probably needs some more work first.
8783 (gst_type_find_element_get_best_possibility):
8784 Add helper function to find the best of all available
8785 found possibilities that qualify given the min. threshold.
8787 (gst_type_find_element_handle_event):
8788 Fix the case where we get an EOS while still in TYPEFIND
8789 mode (we want to chose the best of all possible types,
8790 not just the first type that happens to be in our unsorted
8791 list of possible types).
8793 (gst_type_find_element_chain):
8794 Make sure we return GST_FLOW_ERROR when we errored out
8795 in stop_typefinding(); also, don't just find the best of
8796 all found type entries and then use the last examined
8797 type entry, but actually use the best entry.
8799 2005-12-12 Tim-Philipp Müller <tim at centricular dot net>
8801 * tests/examples/typefind/typefind.c: (type_found):
8802 * tests/examples/xml/runxml.c: (xml_loaded):
8803 More gcc4 fixes and a mem leak fix.
8805 2005-12-12 Stefan Kost <ensonic@users.sf.net>
8807 * tests/examples/xml/createxml.c: (object_saved):
8810 2005-12-12 Stefan Kost <ensonic@users.sf.net>
8812 * tests/Makefile.am:
8813 enable the examples even more
8815 2005-12-12 Andy Wingo <wingo@pobox.com>
8817 * libs/gst/net/gstnettimeprovider.c
8818 (gst_net_time_provider_class_init, gst_net_time_provider_init)
8819 (gst_net_time_provider_set_property)
8820 (gst_net_time_provider_get_property):
8821 API addition: Export "active" as a GObject property.
8822 (gst_net_time_provider_thread): Only respond to time queries if
8823 the time provider is active.
8825 * libs/gst/net/gstnettimeprovider.h: Add an "active" boolean to
8826 NetTimeProvider, preserving binary compat.
8828 2005-12-12 Stefan Kost <ensonic@users.sf.net>
8830 * tests/examples/controller/audio-example.c: (main):
8831 * tests/examples/launch/Makefile.am:
8832 convert comments again
8834 2005-12-12 Wim Taymans <wim@fluendo.com>
8836 * libs/gst/base/gstpushsrc.c:
8839 2005-12-12 Wim Taymans <wim@fluendo.com>
8841 * docs/libs/gstreamer-libs-sections.txt:
8842 Added new symbol to docs.
8844 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
8845 (gst_base_src_init), (gst_base_src_set_format),
8846 (gst_base_src_default_query), (gst_base_src_query),
8847 (gst_base_src_default_do_seek), (gst_base_src_do_seek),
8848 (gst_base_src_perform_seek), (gst_base_src_send_event),
8849 (gst_base_src_default_event), (gst_base_src_event_handler),
8850 (gst_base_src_set_property), (gst_base_src_get_property),
8851 (gst_base_src_wait), (gst_base_src_do_sync),
8852 (gst_base_src_update_length), (gst_base_src_get_range),
8853 (gst_base_src_check_get_range), (gst_base_src_loop),
8854 (gst_base_src_default_negotiate), (gst_base_src_start),
8855 (gst_base_src_activate_push), (gst_base_src_activate_pull),
8856 (gst_base_src_change_state):
8857 * libs/gst/base/gstbasesrc.h:
8858 Implement seeking to other formats than _BYTES.
8859 Implement more seeking methods correctly.
8861 Added query vmethod.
8862 Added do_seek vmethod to make life easier for subclasses
8864 API addition: gst_base_src_set_format()
8866 2005-12-12 Stefan Kost <ensonic@users.sf.net>
8868 * tests/examples/Makefile.am:
8871 2005-12-12 Stefan Kost <ensonic@users.sf.net>
8874 * docs/random/ensonic/media-device-daemon.txt:
8875 * tests/examples/controller/.cvsignore:
8876 * tests/examples/controller/Makefile.am:
8877 * tests/examples/controller/audio-example.c: (main):
8878 * tests/examples/helloworld/.cvsignore:
8879 * tests/examples/helloworld/Makefile.am:
8880 * tests/examples/helloworld/helloworld.c: (event_loop), (main):
8881 * tests/examples/launch/.cvsignore:
8882 * tests/examples/launch/Makefile.am:
8883 * tests/examples/launch/mp3parselaunch.c: (event_loop), (main):
8884 * tests/examples/metadata/.cvsignore:
8885 * tests/examples/metadata/Makefile.am:
8886 * tests/examples/metadata/read-metadata.c: (message_loop),
8887 (make_pipeline), (print_tag), (main):
8888 * tests/examples/queue/.cvsignore:
8889 * tests/examples/queue/Makefile.am:
8890 * tests/examples/queue/queue.c: (event_loop), (main):
8891 * tests/examples/typefind/.cvsignore:
8892 * tests/examples/typefind/Makefile.am:
8893 * tests/examples/typefind/typefind.c: (type_found), (event_loop),
8895 * tests/examples/xml/.cvsignore:
8896 * tests/examples/xml/Makefile.am:
8897 * tests/examples/xml/createxml.c: (object_saved), (main):
8898 * tests/examples/xml/runxml.c: (xml_loaded), (event_loop), (main):
8899 * tests/old/examples/Makefile.am:
8900 * tests/old/examples/TODO:
8901 * tests/old/examples/controller/.cvsignore:
8902 * tests/old/examples/controller/Makefile.am:
8903 * tests/old/examples/controller/audio-example.c:
8904 * tests/old/examples/helloworld/.cvsignore:
8905 * tests/old/examples/helloworld/Makefile.am:
8906 * tests/old/examples/helloworld/helloworld.c:
8907 * tests/old/examples/launch/.cvsignore:
8908 * tests/old/examples/launch/Makefile.am:
8909 * tests/old/examples/launch/mp3parselaunch.c:
8910 * tests/old/examples/launch/mp3play:
8911 * tests/old/examples/manual/Makefile.am:
8912 * tests/old/examples/metadata/Makefile.am:
8913 * tests/old/examples/metadata/read-metadata.c:
8914 * tests/old/examples/queue/.cvsignore:
8915 * tests/old/examples/queue/Makefile.am:
8916 * tests/old/examples/queue/queue.c:
8917 * tests/old/examples/typefind/.cvsignore:
8918 * tests/old/examples/typefind/Makefile.am:
8919 * tests/old/examples/typefind/typefind.c:
8920 * tests/old/examples/xml/.cvsignore:
8921 * tests/old/examples/xml/Makefile.am:
8922 * tests/old/examples/xml/createxml.c:
8923 * tests/old/examples/xml/runxml.c:
8924 applied some simple fixing to some examples
8925 re-enabled the working examples
8927 2005-12-12 Wim Taymans <wim@fluendo.com>
8929 * gst/gstsegment.c: (gst_segment_init),
8930 (gst_segment_set_last_stop), (gst_segment_set_seek),
8931 (gst_segment_set_newsegment), (gst_segment_to_stream_time),
8932 (gst_segment_to_running_time):
8933 Added more documentation.
8934 Make sure the last_pos value is updated properly.
8935 Make sure to_stream_time and to_running_time don't
8936 operate on wrong values.
8938 * tests/check/gst/gstsegment.c: (GST_START_TEST):
8941 2005-12-12 Michael Smith <msmith@fluendo.com>
8943 * plugins/elements/gsttypefindelement.c: (free_entry),
8944 (gst_type_find_element_chain):
8945 Now that we're not leaking factories, make sure we keep references
8946 to them while we need them.
8948 2005-12-12 Thomas Vander Stichele <thomas at apestaart dot org>
8950 * tests/check/gst/struct_i386.h:
8951 ifdef out the XML structs
8953 2005-12-12 Thomas Vander Stichele <thomas at apestaart dot org>
8955 * gst/gstvalue.c: (gst_value_transform_double_fraction):
8956 floor is not needed, F is always positive; this obviates the
8957 need for adding -lm when building without libxml
8959 2005-12-12 Wim Taymans <wim@fluendo.com>
8961 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_position):
8962 Take current playback rate into account when reporting
8965 2005-12-11 Tim-Philipp Müller <tim at centricular dot net>
8967 * docs/manual/mime-world.fig:
8968 Let's try this again, this time with a file that is
8969 actually in XFig format.
8971 2005-12-11 Tim-Philipp Müller <tim at centricular dot net>
8973 * docs/manual/mime-world.fig:
8974 Add audioconvert element to diagram so that it
8975 matches the text and the code (fixes #319526).
8977 2005-12-11 Tim-Philipp Müller <tim at centricular dot net>
8979 * docs/pwg/building-chainfn.xml:
8980 * docs/pwg/building-pads.xml:
8981 * docs/pwg/building-state.xml:
8982 * docs/pwg/other-source.xml:
8983 Update state change stuff for 0.10 (fixes #322969).
8985 2005-12-11 Tim-Philipp Müller <tim at centricular dot net>
8987 * docs/manual/advanced-dataaccess.xml:
8988 * docs/manual/appendix-checklist.xml:
8989 * docs/manual/appendix-programs.xml:
8990 * docs/manual/basics-pads.xml:
8991 * docs/manual/highlevel-components.xml:
8992 * docs/manual/manual.xml:
8993 Update for 0.10: s/0.9/0.10/; s/audioscale/audiorsample/;
8994 add converters in front of pipelines; remove curly
8995 brackets for threads stuff, they no longer exist; use
8996 GST_TYPE_FRACTION for framerates; update some pieces of
8997 code to 0.10, but there's plenty more to do.
8999 * docs/manual/appendix-porting.xml:
9000 Expand on asynchroneous state changes; s/0.9/0.10/;
9001 mention disappearance of gst_init_get_popt_table()
9004 2005-12-11 Tim-Philipp Müller <tim at centricular dot net>
9006 * docs/faq/using.xml:
9007 Spider no longer exists, and neither does gst-launch-ext.
9008 Update examples to use decodebin and playbin and put
9009 converters in front of sinks (fixes #323726).
9011 2005-12-09 Michael Smith <msmith@fluendo.com>
9013 * plugins/elements/gsttypefindelement.c: (find_peek),
9014 (gst_type_find_element_chain):
9015 Fix leaking element factories in typefinding.
9016 Fix problem where we forgot about a probable type on non-seekable
9017 files, and thus later mis-typefound it.
9019 2005-12-09 Michael Smith <msmith@fluendo.com>
9021 * common/m4/gst-makecontext.m4:
9022 * common/m4/gst-mcsc.m4:
9024 * win32/common/config.h:
9025 * win32/common/config.h.in:
9026 Remove makecontext stuff; not used in 0.10 and causes problems on
9027 HPUX according to bug #322441
9029 2005-12-07 Wim Taymans <wim@fluendo.com>
9031 * tests/check/Makefile.am:
9032 * tests/check/libs/libsabi.c: (GST_START_TEST), (gstabi_suite),
9034 * tests/check/libs/struct_i386.h:
9035 Added ABI check for libs
9037 2005-12-07 Wim Taymans <wim@fluendo.com>
9039 * tests/check/Makefile.am:
9040 And add the struct_i386.h to dist.
9042 2005-12-07 Wim Taymans <wim@fluendo.com>
9044 * tests/check/Makefile.am:
9045 * tests/check/gst/.cvsignore:
9046 * tests/check/gst/gstabi.c: (GST_START_TEST), (gstabi_suite),
9048 * tests/check/gst/struct_i386.h:
9049 Added check for ABI compatibility.
9051 2005-12-07 Wim Taymans <wim@fluendo.com>
9053 * plugins/elements/gstfakesrc.c: (gst_fake_src_class_init),
9054 (gst_fake_src_get_times), (gst_fake_src_create):
9055 Fix broken sync option, fixes #323259
9057 2005-12-07 Wim Taymans <wim@fluendo.com>
9062 * gst/gstcaps.c: (gst_caps_is_equal):
9063 Don't assert on NULL <--> X. Fixes #323260
9065 * gst/gstminiobject.c: (gst_mini_object_replace):
9066 If we're doing atomic operations, we might just as well use
9067 the proper way to get an atomic pointer.
9069 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_position):
9072 2005-12-07 Michael Smith <msmith@fluendo.com>
9074 * gst/parse/grammar.y:
9075 Remove handling of { } for threads.
9077 2005-12-06 David Schleef <ds@schleef.org>
9079 * libs/gst/base/gstbasetransform.c: speling fix.
9081 2005-12-06 Thomas Vander Stichele <thomas at apestaart dot org>
9083 * docs/libs/tmpl/gstdataprotocol.sgml:
9084 * docs/random/omega/testing/gstobject.c:
9088 * gst/gstelementfactory.c:
9091 * gst/gstghostpad.c:
9093 * gst/gstpadtemplate.c:
9094 * gst/gstregistryxml.c:
9096 * gst/gsttagsetter.c:
9097 * gst/gsttypefind.c:
9099 * libs/gst/base/gstbasesrc.c:
9100 * libs/gst/net/gstnetclientclock.c:
9101 * libs/gst/net/gstnettimeprovider.c:
9102 * plugins/elements/gstfakesrc.c:
9103 * plugins/elements/gstfdsrc.c:
9104 * plugins/elements/gstfilesrc.c:
9105 * plugins/elements/gstidentity.c:
9106 * plugins/elements/gstqueue.c:
9107 * plugins/elements/gsttypefindelement.c:
9108 * plugins/indexers/gstfileindex.c:
9109 * plugins/indexers/gstmemindex.c:
9110 * tests/check/gst/gsttag.c:
9111 * tests/old/examples/cutter/cutter.c:
9112 * tests/old/examples/mixer/mixer.c:
9113 * tests/old/examples/xml/runxml.c: (main):
9114 * tests/old/testsuite/caps/normalisation.c:
9115 * tests/old/testsuite/debug/global.c:
9116 * tests/old/testsuite/parse/parse1.c:
9117 * tools/gst-xmlinspect.c:
9118 * win32/common/dirent.c:
9121 === release 0.10.0 ===
9123 2005-12-05 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
9126 releasing 0.10.0, "Maroilles"
9128 2005-12-05 Thomas Vander Stichele <thomas at apestaart dot org>
9130 submitted by: Funda Wang <fundawang@linux.net.cn>
9134 added Chinese (Traditional) translation
9136 2005-12-05 Thomas Vander Stichele <thomas at apestaart dot org>
9138 * docs/gst/gstreamer-sections.txt:
9139 * docs/libs/tmpl/gstdataprotocol.sgml:
9140 * docs/random/thomasvs/TODO:
9145 2005-12-05 Andy Wingo <wingo@pobox.com>
9147 patch by: Wim Taymans <wim@fluendo.com>
9149 * libs/gst/base/gstbasetransform.c
9150 (gst_base_transform_prepare_output_buf)
9151 (gst_base_transform_buffer_alloc):
9152 * plugins/elements/gstqueue.c (gst_queue_bufferalloc): Call
9153 alloc_buffer_and_set_caps.
9155 * gst/gstpad.c (gst_pad_alloc_buffer): Changed to not call
9156 set_caps on the source pad.
9157 (gst_pad_alloc_buffer_and_set_caps): New function, does what
9158 alloc_buffer used to do. Fixes #322874.
9160 * docs/gst/gstreamer-sections.txt:
9161 * docs/design/part-negotiation.txt:
9162 * docs/pwg/advanced-negotiation.xml: Update for the alloc_buffer
9165 2005-12-05 Thomas Vander Stichele <thomas at apestaart dot org>
9167 patch by: Sebastien Moutte
9170 * win32/common/config.h.in:
9171 * win32/vs6/libgstcontroller.dsp:
9174 2005-12-05 Wim Taymans <wim@fluendo.com>
9176 * gst/gstcaps.c: (gst_caps_is_equal):
9177 * plugins/elements/gstfakesrc.c: (gst_fake_src_class_init),
9178 (gst_fake_src_create):
9179 Back out previous code changes, leave doc updates, file bugs
9182 2005-12-05 Wim Taymans <wim@fluendo.com>
9184 * plugins/elements/gstfakesrc.c: (gst_fake_src_class_init),
9185 (gst_fake_src_get_times), (gst_fake_src_create):
9186 * plugins/elements/gstfakesrc.h:
9187 Fix broken sync code.
9189 2005-12-05 Wim Taymans <wim@fluendo.com>
9191 * gst/gstcaps.c: (gst_caps_is_equal):
9192 Comparing NULL against !NULL yields different caps, not a
9195 2005-12-05 Wim Taymans <wim@fluendo.com>
9197 * gst/gstpipeline.c:
9198 Fix small typo in docs.
9200 2005-12-05 Andy Wingo <wingo@pobox.com>
9202 patch by: Thomas Vander Stichele <thomas at apestaart dot org>
9204 * gst/gst.c (init_post): remove hard-coded 0.9 location for
9205 registries/plugins with a MAJORMINOR one.
9206 (plugin_desc): Rename library from gstcoreleements to
9207 staticelements. Fixes #323222.
9209 2005-12-05 Tim-Philipp Müller <tim at centricular dot net>
9211 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_base_init):
9212 Change debug category to 'collectpads' from 'collect_pads'
9215 2005-12-04 Thomas Vander Stichele <thomas at apestaart dot org>
9217 patch by: Sebastien Moutte
9219 * libs/gst/controller/gstinterpolation.c:
9220 use convert function for uint64/double
9221 * win32/vs6/libgstcontroller.dsp:
9224 2005-12-04 Thomas Vander Stichele <thomas at apestaart dot org>
9226 * gst/gstutils.c: (gst_util_guint64_to_gdouble),
9227 (gst_util_gdouble_to_guint64), (gst_util_uint64_scale_int64):
9229 * tests/check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
9230 add tests that seem to show that the guint64/gdouble conversions
9233 2005-12-02 Wim Taymans <wim@fluendo.com>
9235 * gst/gstregistry.c: (gst_registry_add_path):
9236 * gst/gstregistry.h:
9237 * gst/gstregistryxml.c:
9240 2005-12-02 Wim Taymans <wim@fluendo.com>
9242 * gst/gstutils.c: (gst_util_uint64_scale_int64),
9243 (gst_util_uint64_scale_int):
9246 * libs/gst/base/gstbasesink.c: (gst_base_sink_handle_object):
9249 * libs/gst/base/gstbasetransform.c: (gst_base_transform_event):
9252 2005-12-02 Thomas Vander Stichele <thomas at apestaart dot org>
9255 * win32/common/config.h:
9256 * win32/vs6/gstreamer.dsw:
9257 * win32/vs6/libgstcoreelements.dsp:
9258 * win32/vs6/libgstelements.dsp:
9259 renamed core elements plugin
9261 2005-12-02 Thomas Vander Stichele <thomas at apestaart dot org>
9263 * tools/gst-run.c: (compare_major_minor), (find_highest_version),
9265 do piece-wise major/minor comparison so 0.9 < 0.10
9266 also allow .exe extensions for tools
9268 2005-12-02 Michael Smith <msmith@fluendo.com>
9271 Escape a % to make gtkdoc happier; bug 322958.
9273 === release 0.9.7 ===
9275 2005-12-01 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
9278 releasing 0.9.7, "My Dog Has No Nose"
9280 2005-12-01 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
9282 * common/gst-xmlinspect.py:
9284 * docs/libs/tmpl/gstdataprotocol.sgml:
9285 * docs/random/release:
9304 * win32/common/config.h:
9305 * win32/common/config.h.in:
9306 * win32/vs6/gst_inspect.dsp:
9307 * win32/vs6/gst_launch.dsp:
9308 * win32/vs6/libgstbase.dsp:
9309 * win32/vs6/libgstelements.dsp:
9310 * win32/vs6/libgstreamer.dsp:
9311 * win32/vs7/GStreamer.vcproj:
9312 * win32/vs7/gst-inspect.vcproj:
9313 * win32/vs7/gst-launch.vcproj:
9314 * win32/vs7/libgstbase.vcproj:
9315 bump GST_MAJORMINOR to 0.10
9316 reset libtool version
9318 2005-12-01 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
9322 Added Bulgarian translation by (Alexander Shopov)
9324 2005-12-01 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
9326 * tests/check/gst/gstplugin.c:
9329 2005-12-01 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
9331 * common/gst-xmlinspect.py:
9332 * common/gtk-doc-plugins.mak:
9335 * docs/gst/Makefile.am:
9336 * docs/gst/gstreamer-docs.sgml:
9337 * docs/gst/gstreamer-sections.txt:
9338 * docs/gst/gstreamer.types:
9339 * docs/gst/gstreamer.types.in:
9340 * docs/plugins/Makefile.am:
9341 * docs/plugins/gstreamer-plugins-docs.sgml:
9342 * docs/plugins/gstreamer-plugins-sections.txt:
9343 * docs/plugins/gstreamer-plugins.types:
9344 * docs/plugins/inspect.stamp:
9345 * docs/plugins/inspect/plugin-coreelements.xml:
9346 * docs/plugins/inspect/plugin-coreindexers.xml:
9347 * docs/plugins/scanobj-build.stamp:
9348 * gstreamer.spec.in:
9349 * plugins/elements/Makefile.am:
9350 * plugins/elements/gstelements.c:
9351 * plugins/elements/gstfakesink.c:
9352 * plugins/elements/gstfakesrc.c:
9353 * plugins/elements/gstfilesink.c:
9354 * plugins/elements/gstfilesrc.c:
9355 * plugins/elements/gstqueue.c:
9356 * plugins/indexers/Makefile.am:
9357 * plugins/indexers/gstindexers.c:
9358 document core plugins in a separate document just like all the
9360 rename these plugins to something starting with core
9362 2005-12-01 Andy Wingo <wingo@pobox.com>
9364 * gst/gstevent.h (struct _GstEvent): Meant to remove the extra
9365 padding here before, but it missed the commit.
9367 2005-12-01 Thomas Vander Stichele <thomas at apestaart dot org>
9369 * libs/gst/controller/gstinterpolation.c:
9370 whitespace prices have crashed, we should feel free to use some now
9371 use gst_guint64_to_gdouble
9373 2005-12-01 Thomas Vander Stichele <thomas at apestaart dot org>
9375 * libs/gst/controller/gstcontroller.c:
9376 * libs/gst/controller/gsthelper.c:
9377 * libs/gst/controller/gstinterpolation.c:
9378 * libs/gst/controller/lib.c:
9379 wrap config.h include
9381 2005-12-01 Thomas Vander Stichele <thomas at apestaart dot org>
9383 * docs/gst/gstreamer-sections.txt:
9386 2005-12-01 Thomas Vander Stichele <thomas at apestaart dot org>
9388 * plugins/elements/gstelements.c:
9389 * plugins/elements/gstfdsink.c: (gst_fd_sink__base_init),
9390 (gst_fd_sink__class_init), (gst_fd_sink__init),
9391 (gst_fd_sink__chain), (gst_fd_sink__set_property),
9392 (gst_fd_sink__get_property):
9393 * plugins/elements/gstfdsink.h:
9394 * plugins/elements/gstfdsrc.c: (_do_init), (gst_fd_src_base_init),
9395 (gst_fd_src_class_init), (gst_fd_src_init), (gst_fd_src_dispose),
9396 (gst_fd_src_update_fd), (gst_fd_src_start), (gst_fd_src_stop),
9397 (gst_fd_src_unlock), (gst_fd_src_set_property),
9398 (gst_fd_src_get_property), (gst_fd_src_create),
9399 (gst_fd_src_is_seekable), (gst_fd_src_get_size),
9400 (gst_fd_src_uri_get_type), (gst_fd_src_uri_get_protocols),
9401 (gst_fd_src_uri_get_uri), (gst_fd_src_uri_set_uri),
9402 (gst_fd_src_uri_handler_init):
9403 * plugins/elements/gstfdsrc.h:
9404 * plugins/elements/gstqueue.c: (gst_queue_get_type):
9407 2005-11-30 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
9409 * docs/gst/Makefile.am:
9410 * docs/gst/gstreamer.types.in:
9414 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
9420 * gst/gstregistry.h:
9421 * tests/benchmarks/complexity.c:
9422 * tests/benchmarks/mass-elements.c:
9423 * tests/check/Makefile.am:
9424 * tools/Makefile.am:
9425 * tools/gst-inspect.c:
9426 * tools/gst-xmlinspect.c:
9427 various fixes to make
9428 --disable-nls --disable-registry --disable-loadsave
9429 --disable-parse --disable-gst-debug
9430 work and get the core .so down to 360444 bytes after stripping
9432 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
9437 * docs/random/thomasvs/TODO:
9438 * tests/Makefile.am:
9442 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
9444 * win32/GStreamer.vcproj:
9447 * win32/Makefile.inspect:
9448 * win32/Makefile.launch:
9449 * win32/Makefile.register:
9451 * win32/gst-inspect.vcproj:
9452 * win32/gst-launch.vcproj:
9453 * win32/gst-register.vcproj:
9454 * win32/gstelements.vcproj:
9455 * win32/gstgetbits.def:
9456 * win32/gstgetbits.vcproj:
9457 * win32/gstreamer-dbg.def:
9458 * win32/gstreamer.def:
9459 * win32/libgstbase.def:
9460 * win32/libgstbase.vcproj:
9461 * win32/link_oldruntime.c:
9466 move even more stuff, win32/ is nice and clean now
9468 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
9470 * libs/gst/control/.cvsignore:
9475 * win32/gstbytestream.def:
9476 * win32/gstbytestream.vcproj:
9477 * win32/gstconfig.h:
9478 * win32/gstenumtypes.c:
9479 * win32/gstenumtypes.h:
9480 * win32/gstoptimalscheduler.vcproj:
9481 * win32/gstversion.h:
9483 * win32/testsuite/bins.vcproj:
9484 * win32/testsuite/bytestream.vcproj:
9485 * win32/testsuite/caps.vcproj:
9486 * win32/testsuite/cleanup.vcproj:
9487 * win32/testsuite/clock.vcproj:
9488 * win32/testsuite/debug.vcproj:
9489 * win32/testsuite/dlopen.vcproj:
9490 * win32/testsuite/dynparams.vcproj:
9491 * win32/testsuite/elements.vcproj:
9492 * win32/testsuite/ghostpads.vcproj:
9493 * win32/testsuite/indexers.vcproj:
9494 * win32/testsuite/negotiation.vcproj:
9495 * win32/testsuite/parse.vcproj:
9496 * win32/testsuite/plugin.vcproj:
9497 * win32/testsuite/refcounting.vcproj:
9498 * win32/testsuite/schedulers.vcproj:
9499 * win32/testsuite/states.vcproj:
9500 * win32/testsuite/tags.vcproj:
9501 * win32/testsuite/threads.vcproj:
9502 remove old win32 stuff that isn't maintained and should be
9505 2005-11-30 Andy Wingo <wingo@pobox.com>
9507 * configure.ac (GST_PKG_DEPS): Revert previous patch, makes
9508 loading the gst.interfaces python module bork.
9510 * configure.ac (GST_PKG_DEPS): Use gmodule-no-export-2.0.pc,
9511 available since GLib 2.2. Fixes #318031.
9513 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
9517 * check/Makefile.am:
9518 * check/elements/.cvsignore:
9519 * check/elements/fakesrc.c:
9520 * check/elements/fdsrc.c:
9521 * check/elements/identity.c:
9522 * check/generic/.cvsignore:
9523 * check/generic/states.c:
9524 * check/gst-libs/.cvsignore:
9525 * check/gst-libs/controller.c:
9526 * check/gst-libs/gdp.c:
9527 * check/gst/.cvsignore:
9528 * check/gst/capslist.h:
9530 * check/gst/gstbin.c:
9531 * check/gst/gstbuffer.c:
9532 * check/gst/gstbus.c:
9533 * check/gst/gstcaps.c:
9534 * check/gst/gstelement.c:
9535 * check/gst/gstevent.c:
9536 * check/gst/gstghostpad.c:
9537 * check/gst/gstiterator.c:
9538 * check/gst/gstmessage.c:
9539 * check/gst/gstminiobject.c:
9540 * check/gst/gstobject.c:
9541 * check/gst/gstpad.c:
9542 * check/gst/gstpipeline.c:
9543 * check/gst/gstplugin.c:
9544 * check/gst/gstsegment.c:
9545 * check/gst/gststructure.c:
9546 * check/gst/gstsystemclock.c:
9547 * check/gst/gsttag.c:
9548 * check/gst/gstutils.c:
9549 * check/gst/gstvalue.c:
9550 * check/net/.cvsignore:
9551 * check/net/gstnetclientclock.c:
9552 * check/net/gstnettimeprovider.c:
9553 * check/pipelines/.cvsignore:
9554 * check/pipelines/cleanup.c:
9555 * check/pipelines/simple_launch_lines.c:
9556 * check/pipelines/stress.c:
9557 * check/states/.cvsignore:
9558 * check/states/sinks.c:
9560 * examples/Makefile.am:
9561 * examples/appreader/.cvsignore:
9562 * examples/appreader/Makefile.am:
9563 * examples/appreader/appreader.c:
9564 * examples/controller/.cvsignore:
9565 * examples/controller/Makefile.am:
9566 * examples/controller/audio-example.c:
9567 * examples/cutter/.cvsignore:
9568 * examples/cutter/Makefile.am:
9569 * examples/cutter/cutter.c:
9570 * examples/cutter/cutter.h:
9571 * examples/events/Makefile.am:
9572 * examples/events/seek.c:
9573 * examples/helloworld/.cvsignore:
9574 * examples/helloworld/Makefile.am:
9575 * examples/helloworld/helloworld.c:
9576 * examples/helloworld2/.cvsignore:
9577 * examples/helloworld2/Makefile.am:
9578 * examples/helloworld2/helloworld2.c:
9579 * examples/launch/.cvsignore:
9580 * examples/launch/Makefile.am:
9581 * examples/launch/mp3parselaunch.c:
9582 * examples/launch/mp3play:
9583 * examples/manual/.cvsignore:
9584 * examples/manual/Makefile.am:
9585 * examples/manual/extract.pl:
9586 * examples/metadata/Makefile.am:
9587 * examples/metadata/read-metadata.c:
9588 * examples/mixer/.cvsignore:
9589 * examples/mixer/Makefile.am:
9590 * examples/mixer/mixer.c:
9591 * examples/mixer/mixer.h:
9592 * examples/pingpong/.cvsignore:
9593 * examples/pingpong/Makefile.am:
9594 * examples/pingpong/pingpong.c:
9595 * examples/plugins/.cvsignore:
9596 * examples/plugins/Makefile.am:
9597 * examples/plugins/example.c:
9598 * examples/plugins/example.h:
9599 * examples/pwg/.cvsignore:
9600 * examples/pwg/Makefile.am:
9601 * examples/pwg/extract.pl:
9602 * examples/queue/.cvsignore:
9603 * examples/queue/Makefile.am:
9604 * examples/queue/queue.c:
9605 * examples/queue2/.cvsignore:
9606 * examples/queue2/Makefile.am:
9607 * examples/queue2/queue2.c:
9608 * examples/queue3/.cvsignore:
9609 * examples/queue3/Makefile.am:
9610 * examples/queue3/queue3.c:
9611 * examples/queue4/.cvsignore:
9612 * examples/queue4/Makefile.am:
9613 * examples/queue4/queue4.c:
9614 * examples/retag/.cvsignore:
9615 * examples/retag/Makefile.am:
9616 * examples/retag/retag.c:
9617 * examples/retag/transcode.c:
9618 * examples/thread/.cvsignore:
9619 * examples/thread/Makefile.am:
9620 * examples/thread/thread.c:
9621 * examples/typefind/.cvsignore:
9622 * examples/typefind/Makefile.am:
9623 * examples/typefind/typefind.c:
9624 * examples/xml/.cvsignore:
9625 * examples/xml/Makefile.am:
9626 * examples/xml/createxml.c:
9627 * examples/xml/runxml.c:
9628 * tests/Makefile.am:
9629 * tests/check/Makefile.am:
9630 * testsuite/.cvsignore:
9631 * testsuite/Makefile.am:
9633 * testsuite/caps/.cvsignore:
9634 * testsuite/caps/Makefile.am:
9635 * testsuite/caps/app_fixate.c:
9636 * testsuite/caps/audioscale.c:
9637 * testsuite/caps/caps.c:
9638 * testsuite/caps/caps.h:
9639 * testsuite/caps/caps_strings:
9640 * testsuite/caps/compatibility.c:
9641 * testsuite/caps/deserialize.c:
9642 * testsuite/caps/enumcaps.c:
9643 * testsuite/caps/eratosthenes.c:
9644 * testsuite/caps/filtercaps.c:
9645 * testsuite/caps/fixed.c:
9646 * testsuite/caps/fraction-convert.c:
9647 * testsuite/caps/fraction-multiply-and-zero.c:
9648 * testsuite/caps/intersect2.c:
9649 * testsuite/caps/intersection.c:
9650 * testsuite/caps/normalisation.c:
9651 * testsuite/caps/random.c:
9652 * testsuite/caps/renegotiate.c:
9653 * testsuite/caps/sets.c:
9654 * testsuite/caps/simplify.c:
9655 * testsuite/caps/string-conversions.c:
9656 * testsuite/caps/structure.c:
9657 * testsuite/caps/subtract.c:
9658 * testsuite/caps/union.c:
9659 * testsuite/debug/.cvsignore:
9660 * testsuite/debug/Makefile.am:
9661 * testsuite/debug/category.c:
9662 * testsuite/debug/commandline.c:
9663 * testsuite/debug/global.c:
9664 * testsuite/debug/output.c:
9665 * testsuite/debug/printf_extension.c:
9666 * testsuite/dlopen/.cvsignore:
9667 * testsuite/dlopen/Makefile.am:
9668 * testsuite/dlopen/dlopen_gst.c:
9669 * testsuite/dlopen/loadgst.c:
9670 * testsuite/elements/.cvsignore:
9671 * testsuite/elements/Makefile.am:
9672 * testsuite/elements/gst-inspect-check.in:
9673 * testsuite/elements/struct_i386.h:
9674 * testsuite/elements/struct_size.c:
9675 * testsuite/indexers/.cvsignore:
9676 * testsuite/indexers/Makefile.am:
9677 * testsuite/indexers/cache1.c:
9678 * testsuite/indexers/indexdump.c:
9679 * testsuite/parse/.cvsignore:
9680 * testsuite/parse/Makefile.am:
9681 * testsuite/parse/parse1.c:
9682 * testsuite/parse/parse2.c:
9683 * testsuite/plugin/.cvsignore:
9684 * testsuite/plugin/Makefile.am:
9685 * testsuite/plugin/README:
9686 * testsuite/plugin/dynamic.c:
9687 * testsuite/plugin/linked.c:
9688 * testsuite/plugin/loading.c:
9689 * testsuite/plugin/registry.c:
9690 * testsuite/plugin/static.c:
9691 * testsuite/plugin/static2.c:
9692 * testsuite/plugin/testplugin.c:
9693 * testsuite/plugin/testplugin2.c:
9694 * testsuite/plugin/testplugin2_s.c:
9695 * testsuite/plugin/testplugin_s.c:
9696 * testsuite/refcounting/.cvsignore:
9697 * testsuite/refcounting/Makefile.am:
9698 * testsuite/refcounting/bin.c:
9699 * testsuite/refcounting/element.c:
9700 * testsuite/refcounting/element_pad.c:
9701 * testsuite/refcounting/mainloop.c:
9702 * testsuite/refcounting/mem.c:
9703 * testsuite/refcounting/mem.h:
9704 * testsuite/refcounting/object.c:
9705 * testsuite/refcounting/pad.c:
9706 * testsuite/refcounting/sched.c:
9707 * testsuite/refcounting/thread.c:
9708 * testsuite/states/.cvsignore:
9709 * testsuite/states/Makefile.am:
9710 * testsuite/states/bin.c:
9711 * testsuite/states/locked.c:
9712 * testsuite/states/parent.c:
9713 * testsuite/threads/.cvsignore:
9714 * testsuite/threads/159566.c:
9715 * testsuite/threads/159852.c:
9716 * testsuite/threads/Makefile.am:
9717 * testsuite/threads/queue.c:
9718 * testsuite/threads/signals.c:
9719 * testsuite/threads/staticrec.c:
9720 * testsuite/threads/thread.c:
9721 * testsuite/threads/threadb.c:
9722 * testsuite/threads/threadc.c:
9723 * testsuite/threads/threadd.c:
9724 * testsuite/threads/threade.c:
9725 * testsuite/threads/threadf.c:
9726 * testsuite/threads/threadg.c:
9727 * testsuite/threads/threadh.c:
9728 * testsuite/threads/threadi.c:
9729 move all of these under tests
9731 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
9734 * tests/Makefile.am:
9737 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
9739 * docs/gst/gstreamer-sections.txt:
9740 * tests/sched/.cvsignore:
9741 * tests/sched/Makefile.am:
9742 * tests/sched/cases/(fs-fs).xml:
9743 * tests/sched/cases/(fs-i-fs).xml:
9744 * tests/sched/cases/(fs-i-i-fs).xml:
9745 * tests/sched/cases/(fs-i-q[i-fs]).xml:
9746 * tests/sched/dynamic-pipeline.c:
9747 * tests/sched/interrupt1.c:
9748 * tests/sched/interrupt2.c:
9749 * tests/sched/interrupt3.c:
9750 * tests/sched/runtestcases:
9751 * tests/sched/runxml.c:
9752 * tests/sched/sched-stress.c:
9753 * tests/sched/sort.c:
9754 * tests/sched/testcases:
9755 * tests/sched/testcases1.tc:
9756 * tests/seeking/.cvsignore:
9757 * tests/seeking/Makefile.am:
9758 * tests/seeking/seeking1.c:
9759 * tests/threadstate/.cvsignore:
9760 * tests/threadstate/Makefile.am:
9761 * tests/threadstate/test1.c:
9762 * tests/threadstate/test2.c:
9763 * tests/threadstate/threadstate1.c:
9764 * tests/threadstate/threadstate2.c:
9765 * tests/threadstate/threadstate3.c:
9766 * tests/threadstate/threadstate4.c:
9767 * tests/threadstate/threadstate5.c:
9768 remove obsolete tests
9770 * tests/bench-complexity.scm:
9771 * tests/bench-mass_elements.scm:
9772 * tests/complexity.c:
9773 * tests/complexity.gnuplot:
9774 * tests/instantiate/.cvsignore:
9775 * tests/instantiate/Makefile.am:
9776 * tests/instantiate/caps.c:
9777 * tests/mass_elements.c:
9778 * tests/network-clock-utils.scm:
9779 * tests/network-clock.scm:
9781 First pass at cleaning up tests/ dir before moving the rest
9782 Combined with CVS surgery
9784 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
9787 queue has moved, update
9789 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
9791 * docs/gst/gstreamer-sections.txt:
9792 remove double entries from the docs
9793 * gst/gst_private.h:
9794 * gst/gstinfo.c: (_gst_debug_init):
9795 remove the THREAD debug category
9799 * docs/gst/gstreamer.types:
9800 * plugins/elements/gstqueue.c: (gst_queue_get_type),
9801 (gst_queue_init), (gst_queue_finalize), (gst_queue_change_state):
9802 completely move queue and fix up debugging categories
9804 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
9806 * plugins/elements/gstidentity.c: (gst_identity_transform_ip):
9807 make initialization portable, using LL is not
9809 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
9811 * win32/common/gstconfig.h:
9814 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
9816 * win32/common/libgstreamer.def:
9817 rename symbols; sort base section
9819 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
9821 * gst/gstclock.c: (do_linear_regression):
9822 remove crack non-portable handrolled DEBUG macro
9824 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
9826 * docs/random/release:
9828 * win32/common/gstenumtypes.c: (register_gst_object_flags),
9829 (gst_object_flags_get_type), (register_gst_bin_flags),
9830 (gst_bin_flags_get_type), (register_gst_buffer_flag),
9831 (gst_buffer_flag_get_type), (register_gst_bus_flags),
9832 (gst_bus_flags_get_type), (register_gst_bus_sync_reply),
9833 (gst_bus_sync_reply_get_type), (register_gst_caps_flags),
9834 (gst_caps_flags_get_type), (register_gst_clock_return),
9835 (gst_clock_return_get_type), (register_gst_clock_entry_type),
9836 (gst_clock_entry_type_get_type), (register_gst_clock_flags),
9837 (gst_clock_flags_get_type), (register_gst_state),
9838 (gst_state_get_type), (register_gst_state_change_return),
9839 (gst_state_change_return_get_type), (register_gst_state_change),
9840 (gst_state_change_get_type), (register_gst_element_flags),
9841 (gst_element_flags_get_type), (register_gst_core_error),
9842 (gst_core_error_get_type), (register_gst_library_error),
9843 (gst_library_error_get_type), (register_gst_resource_error),
9844 (gst_resource_error_get_type), (register_gst_stream_error),
9845 (gst_stream_error_get_type), (register_gst_event_type_flags),
9846 (gst_event_type_flags_get_type), (register_gst_event_type),
9847 (gst_event_type_get_type), (register_gst_seek_type),
9848 (gst_seek_type_get_type), (register_gst_seek_flags),
9849 (gst_seek_flags_get_type), (register_gst_format),
9850 (gst_format_get_type), (register_gst_index_certainty),
9851 (gst_index_certainty_get_type), (register_gst_index_entry_type),
9852 (gst_index_entry_type_get_type),
9853 (register_gst_index_lookup_method),
9854 (gst_index_lookup_method_get_type), (register_gst_assoc_flags),
9855 (gst_assoc_flags_get_type), (register_gst_index_resolver_method),
9856 (gst_index_resolver_method_get_type), (register_gst_index_flags),
9857 (gst_index_flags_get_type), (register_gst_debug_level),
9858 (gst_debug_level_get_type), (register_gst_debug_color_flags),
9859 (gst_debug_color_flags_get_type), (register_gst_iterator_result),
9860 (gst_iterator_result_get_type), (register_gst_iterator_item),
9861 (gst_iterator_item_get_type), (register_gst_message_type),
9862 (gst_message_type_get_type), (register_gst_mini_object_flags),
9863 (gst_mini_object_flags_get_type), (register_gst_pad_link_return),
9864 (gst_pad_link_return_get_type), (register_gst_flow_return),
9865 (gst_flow_return_get_type), (register_gst_activate_mode),
9866 (gst_activate_mode_get_type), (register_gst_pad_direction),
9867 (gst_pad_direction_get_type), (register_gst_pad_flags),
9868 (gst_pad_flags_get_type), (register_gst_pad_presence),
9869 (gst_pad_presence_get_type), (register_gst_pad_template_flags),
9870 (gst_pad_template_flags_get_type), (register_gst_pipeline_flags),
9871 (gst_pipeline_flags_get_type), (register_gst_plugin_error),
9872 (gst_plugin_error_get_type), (register_gst_plugin_flags),
9873 (gst_plugin_flags_get_type), (register_gst_rank),
9874 (gst_rank_get_type), (register_gst_query_type),
9875 (gst_query_type_get_type), (register_gst_tag_merge_mode),
9876 (gst_tag_merge_mode_get_type), (register_gst_tag_flag),
9877 (gst_tag_flag_get_type), (register_gst_task_state),
9878 (gst_task_state_get_type), (register_gst_alloc_trace_flags),
9879 (gst_alloc_trace_flags_get_type),
9880 (register_gst_type_find_probability),
9881 (gst_type_find_probability_get_type), (register_gst_uri_type),
9882 (gst_uri_type_get_type), (register_gst_parse_error),
9883 (gst_parse_error_get_type):
9884 * win32/common/gstenumtypes.h:
9885 * win32/common/gstversion.h:
9886 update visual studio generated files
9888 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
9890 * win32/vs6/libgstbase.dsp:
9891 * win32/vs6/libgstelements.dsp:
9892 update project files for new locations
9894 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
9899 reinstate and update
9904 * docs/random/LICENSE:
9907 2005-11-30 Edward Hervey <edward@fluendo.com>
9909 * gst/gsttypefind.c: (gst_type_find_register):
9910 * gst/gsttypefind.h:
9911 * gst/gsttypefindfactory.c: (gst_type_find_factory_init),
9912 (gst_type_find_factory_dispose):
9913 * gst/gsttypefindfactory.h:
9914 Fix memory leak in GstTypeFindFactory.
9916 2005-11-29 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
9919 * plugins/elements/Makefile.am:
9920 * plugins/elements/gstelements.c:
9921 * plugins/elements/gstqueue.c:
9922 move queue from core to the elements plugin
9924 2005-11-29 Andy Wingo <wingo@pobox.com>
9926 * libs/gst/base/gstbasetransform.h:
9927 * libs/gst/base/gstbasesrc.h:
9928 * libs/gst/base/gstbasesink.h: en-LARGE the padding.
9930 * gst/gstconfig.h.in (GST_PADDING_LARGE): New define, the number
9931 of pointers by which to pad very extensible base classes (like the
9932 ones in libs/gst/base).
9934 2005-11-29 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
9936 * docs/gst/gstreamer-docs.sgml:
9937 * docs/gst/gstreamer-sections.txt:
9938 * docs/libs/gstreamer-libs-docs.sgml:
9939 * docs/libs/gstreamer-libs-sections.txt:
9940 moving documentation from core to lib
9942 2005-11-29 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
9944 * check/Makefile.am:
9946 * docs/gst/Makefile.am:
9948 * gst/base/.cvsignore:
9949 * gst/base/Makefile.am:
9951 * gst/base/gstadapter.c:
9952 * gst/base/gstadapter.h:
9953 * gst/base/gstbasesink.c:
9954 * gst/base/gstbasesink.h:
9955 * gst/base/gstbasesrc.c:
9956 * gst/base/gstbasesrc.h:
9957 * gst/base/gstbasetransform.c:
9958 * gst/base/gstbasetransform.h:
9959 * gst/base/gstcollectpads.c:
9960 * gst/base/gstcollectpads.h:
9961 * gst/base/gstpushsrc.c:
9962 * gst/base/gstpushsrc.h:
9963 * gst/base/gsttypefindhelper.c:
9964 * gst/base/gsttypefindhelper.h:
9965 * gst/check/Makefile.am:
9966 * gst/check/gstcheck.c:
9967 * gst/check/gstcheck.h:
9968 * gst/net/Makefile.am:
9970 * gst/net/gstnetclientclock.c:
9971 * gst/net/gstnetclientclock.h:
9972 * gst/net/gstnettimepacket.c:
9973 * gst/net/gstnettimepacket.h:
9974 * gst/net/gstnettimeprovider.c:
9975 * gst/net/gstnettimeprovider.h:
9976 * libs/gst/Makefile.am:
9977 * libs/gst/base/Makefile.am:
9978 * libs/gst/base/gstbasetransform.c:
9979 * libs/gst/check/Makefile.am:
9980 * plugins/elements/Makefile.am:
9982 CVS surgery + support to move base, check, and net out of gst
9985 2005-11-29 Andy Wingo <wingo@pobox.com>
9987 * gst/gstevent.h (struct _GstEvent): Only one pointer of padding.
9989 * gst/gststructure.h (struct _GstStructure): Only one pointer of
9992 * gst/gstquery.h (struct _GstQuery): Only one pointer of padding.
9994 * gst/gstpluginfeature.h: Remove a comment in PluginFeature.
9996 * gst/gstplugin.h (struct _GstPluginClass): Add some padding.
9998 * gst/gstobject.h: (struct _GstObject): Only one pointer of
9999 padding; reduces object size by about 30%. We don't expect
10000 anything else to go into gstobject.
10002 * gst/gstminiobject.h (struct _GstMiniObject)
10003 (struct _GstMiniObjectClass): Only one pointer of padding; the
10004 payload is only a pointer and two ints anyway. For the class there
10005 are only two methods as well.
10007 * gst/gstelement.h (struct _GstElementClass): Removed
10008 the state_changed signal callback, it is not used.
10010 2005-11-29 Thomas Vander Stichele <thomas at apestaart dot org>
10012 * docs/gst/gstreamer.types:
10013 fix includes, though they are a little dinky
10015 2005-11-29 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
10017 * check/Makefile.am:
10018 look in the right place for elements, a lot more chance of
10021 remove indexers and elements subdirs
10022 * plugins/Makefile.am:
10023 make indexers conditional
10025 2005-11-29 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
10029 * plugins/elements/Makefile.am:
10030 * plugins/elements/gstcapsfilter.c:
10031 * plugins/elements/gstfilesink.c:
10032 * plugins/elements/gstfilesrc.c:
10033 * plugins/elements/gstidentity.c:
10034 * plugins/indexers/Makefile.am:
10035 do CVS surgery and related build fixery to move elements
10036 and indexers in a new gstreamer/plugins directory, out of the
10039 2005-11-29 Andy Wingo <wingo@pobox.com>
10041 * check/Makefile.am:
10042 * pkgconfig/gstreamer-net-uninstalled.pc.in:
10043 * pkgconfig/gstreamer-net.pc.in:
10044 * gst/net/Makefile.am: Rename gstnet-tempname to gstnet. Fixes
10047 2005-11-29 Thomas Vander Stichele <thomas at apestaart dot org>
10049 * tools/Makefile.am:
10050 * tools/gst-complete.1.in:
10051 * tools/gst-complete.c:
10052 * tools/gst-compprep.1.in:
10053 * tools/gst-compprep.c:
10054 removing -compprep and -complete
10056 2005-11-29 Thomas Vander Stichele <thomas at apestaart dot org>
10058 * gst/gstevent.c: (gst_event_new_new_segment),
10059 (gst_event_parse_new_segment):
10061 fix #320529 - clean up new_segment API and structure.
10062 Let's hope everyone was using the methods, and not the structure.
10064 2005-11-29 Edward Hervey <edward@fluendo.com>
10066 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
10067 (gst_base_sink_event), (gst_base_sink_do_sync),
10068 (gst_base_sink_activate_pull), (gst_base_sink_change_state):
10069 Properly handle non GST_FORMAT_TIME segment
10070 * gst/elements/gstidentity.c: (gst_identity_transform_ip):
10071 Properly handle non GST_FORMAT_TIME segment
10072 * gst/gstsegment.c:
10073 This function is valid if the accumulator is 0 and the format
10074 is different from the requested format.
10076 2005-11-29 Jan Schmidt <thaytan@mad.scientist.com>
10078 * docs/gst/gstreamer-sections.txt:
10079 Add gst_query_new_seeking and gst_query_parse_seeking to the
10082 2005-11-29 Jan Schmidt <thaytan@mad.scientist.com>
10084 * gst/base/gstbasetransform.c: (gst_base_transform_buffer_alloc):
10085 Treat a pad alloc with new caps the same as if we were not
10086 negotiated, in order to allow a changing upstream output
10087 to produce a new format of data.
10089 2005-11-29 Edward Hervey <edward@fluendo.com>
10091 * gst/base/gstbasetransform.c: (gst_base_transform_class_init),
10092 (gst_base_transform_event), (gst_base_transform_eventfunc):
10093 The event virtual method is now properly implemented, with a default
10095 Sub classes should call the parent_class event method. They should
10096 return FALSE if they had a problem handling the given event, or don't
10097 want GstBaseTransform to send that even downstream
10098 * gst/elements/gstidentity.c: (gst_identity_class_init),
10099 (gst_identity_init), (gst_identity_event),
10100 (gst_identity_transform_ip), (gst_identity_set_property),
10101 (gst_identity_get_property):
10102 * gst/elements/gstidentity.h:
10103 Added the single-segment boolean property.
10104 If set to TRUE, it will output a single segment of data, starting from
10105 0, will eat up all incoming newsegment, and modify the timestamp of the
10106 buffers accordingly
10108 2005-11-29 Tim-Philipp Müller <tim at centricular dot net>
10110 * gst/gstghostpad.c: (gst_proxy_pad_get_target):
10111 Don't ref NULL target pad (#322751). Improve docs.
10113 2005-11-29 Michael Smith <msmith@fluendo.com>
10115 * gst/gstregistryxml.c: (load_plugin):
10116 Don't crash if we failed to load a feature from a plugin.
10118 2005-11-28 Thomas Vander Stichele <thomas at apestaart dot org>
10120 * check/pipelines/simple_launch_lines.c: (setup_pipeline),
10122 use more check API and less GLib API
10124 2005-11-28 Thomas Vander Stichele <thomas at apestaart dot org>
10127 don't run checks if we don't have check
10128 * common/check.mak:
10129 remove the registry when running make torture
10130 * docs/gst/gstreamer-sections.txt:
10131 remove second multiply
10132 * gst/gstqueue.c: (gst_queue_loop):
10133 fix a compile warning when disabling debug
10135 2005-11-28 Jan Schmidt <thaytan@mad.scientist.com>
10138 Hey! Let's print the pad name if the pointer != NULL instead
10139 of when it == NULL :-)
10141 2005-11-28 Wim Taymans <wim@fluendo.com>
10143 * check/gst/gstutils.c: (GST_START_TEST):
10144 Updated check, add some scaling accuracy checking code.
10146 * gst/gstutils.c: (gst_util_div128_64),
10147 (gst_util_uint64_scale_int64), (gst_util_uint64_scale),
10148 (gst_util_uint64_scale_int):
10149 Fix 6 times faster division code. Optimize for common
10150 1/1 and less common X/1 cases.
10152 2005-11-28 Wim Taymans <wim@fluendo.com>
10154 * check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
10157 * gst/gstclock.c: (gst_clock_finalize), (gst_clock_set_master),
10158 (do_linear_regression), (gst_clock_add_observation):
10160 Release lock when the clock cannot be slaved.
10161 Catch the case where the regression returned an invalid denominator.
10163 * gst/gstutils.c: (gst_util_div128_64_iterate),
10164 (gst_util_div128_64), (gst_util_uint64_scale_int64),
10165 (gst_util_uint64_scale), (gst_util_uint64_scale_int):
10166 Add protentially more performant non-iterative 128/64 divide function
10167 that unfortunatly does not work yet.
10168 Shortcut the trivial 0/X = 0 case.
10169 Remove the warnings on overflow.
10171 2005-11-28 Thomas Vander Stichele <thomas at apestaart dot org>
10173 * gst/gstplugin.c: (gst_plugin_register_func):
10174 everything causing a plugin not to load should be at least a WARNING
10176 2005-11-28 Stefan Kost <ensonic@users.sf.net>
10178 * docs/random/ensonic/dparams.txt:
10179 some TODOs for the next dev cycle
10180 * libs/gst/controller/gstcontroller.c:
10181 (gst_controlled_property_set_interpolation_mode),
10182 (gst_controlled_property_new):
10183 * libs/gst/controller/gstcontroller.h:
10184 use base type to assign acccessor functions
10186 2005-11-28 Jan Schmidt <thaytan@mad.scientist.com>
10188 * check/Makefile.am:
10189 Oops, that should have been top_srcdir
10191 2005-11-28 Jan Schmidt <thaytan@mad.scientist.com>
10193 * check/Makefile.am:
10194 * check/elements/fdsrc.c: (GST_START_TEST):
10195 Use a cmdline define to specify the location of a file to use for
10196 testing, to avoid breaking distcheck.
10198 2005-11-28 Andy Wingo <wingo@pobox.com>
10200 * gst/gstpad.c (fixate_value): Use array functions for arrays.
10202 2005-11-28 Edward Hervey <edward@fluendo.com>
10204 * tools/gst-launch.c: (main):
10205 Clarify the output strings, makes it easier to translate.
10208 2005-11-28 Thomas Vander Stichele <thomas at apestaart dot org>
10211 don't try and build net if we don't even have <sys/socket.h>
10213 2005-11-27 Jan Schmidt <thaytan@mad.scientist.com>
10215 * check/Makefile.am:
10216 * check/elements/fdsrc.c: (event_func), (setup_fdsrc),
10217 (cleanup_fdsrc), (GST_START_TEST), (fdsrc_suite), (main):
10218 Add tests for fdsrc seekability
10220 * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
10221 (gst_fdsrc_init), (gst_fdsrc_update_fd), (gst_fdsrc_start),
10222 (gst_fdsrc_set_property), (gst_fdsrc_is_seekable),
10223 (gst_fdsrc_get_size), (gst_fdsrc_uri_set_uri):
10224 * gst/elements/gstfdsrc.h:
10225 fdsrc should not be a 'live' source.
10226 Implement seeking on seekable fd's.
10228 * gst/gstquery.c: (gst_query_new_seeking),
10229 (gst_query_parse_seeking):
10231 Implement SEEKING query functions:
10232 *_new_seeking and *_parse_seeking
10234 2005-11-27 Stefan Kost <ensonic@users.sf.net>
10236 * gst/gstelement.c: (gst_element_dispose):
10239 * gst/gstiterator.c:
10240 * gst/gststructure.c:
10243 * libs/gst/controller/gstcontroller.c:
10244 (gst_controlled_property_set_interpolation_mode):
10245 * libs/gst/controller/gstcontroller.h:
10246 * libs/gst/controller/gstinterpolation.c:
10247 (interpolate_none_get_enum_value_array):
10248 support controlling enums
10250 2005-11-27 Tim-Philipp Müller <tim at centricular dot net>
10253 Improve documentation for gst_value_union().
10256 Change return value for union, intersect and subtract functions
10257 from gint to gboolean.
10259 2005-11-27 Tim-Philipp Müller <tim at centricular dot net>
10261 * gst/gstvalue.c: (gst_value_serialize_any_list),
10262 (gst_value_transform_any_list_string),
10263 (gst_value_deserialize_list), (gst_value_deserialize_array),
10264 (gst_value_set_int_range), (gst_value_deserialize_int_range),
10265 (gst_value_set_double_range), (gst_value_deserialize_double_range),
10266 (gst_value_set_fraction_range_full),
10267 (gst_value_deserialize_fraction_range),
10268 (gst_value_deserialize_caps), (gst_value_deserialize_buffer),
10269 (gst_value_deserialize_boolean),
10270 (gst_value_deserialize_int_helper), (gst_value_deserialize_double),
10271 (gst_value_serialize_float), (gst_value_deserialize_float),
10272 (gst_string_wrap), (gst_value_deserialize_string),
10273 (gst_value_deserialize_enum), (gst_value_deserialize_flags),
10274 (gst_value_union_int_range_int_range),
10275 (gst_value_intersect_int_range_int_range),
10276 (gst_value_intersect_double_range_double_range),
10277 (gst_value_create_new_range), (gst_value_subtract_int_range_int),
10278 (gst_value_subtract_int_range_int_range),
10279 (gst_value_subtract_double_double_range),
10280 (gst_value_subtract_double_range_double_range),
10281 (gst_value_deserialize_fraction):
10283 Use gint, gdouble and gchar in our API instead of int, double and
10284 char (and make usage in gstvalue.c more consistent).
10286 2005-11-27 Thomas Vander Stichele <thomas at apestaart dot org>
10288 * check/Makefile.am:
10289 * libs/gst/controller/Makefile.am:
10290 * libs/gst/dataprotocol/Makefile.am:
10291 fix up Makefile.am and remove GST_ENABLE_NEW
10293 2005-11-27 Thomas Vander Stichele <thomas at apestaart dot org>
10297 * gst/base/Makefile.am:
10298 * gst/check/Makefile.am:
10299 * gst/elements/Makefile.am:
10300 * gst/net/Makefile.am:
10301 update LDFLAGS use some more
10303 2005-11-27 Thomas Vander Stichele <thomas at apestaart dot org>
10305 * common/m4/gst-doc.m4:
10308 2005-11-26 Edward Hervey <edward@fluendo.com>
10310 * gst/gstpluginfeature.c: (gst_plugin_feature_load):
10311 This shouldn't issue a g_warning since it returns NULL if it
10312 couldn't find the plugin, and all functions using this behave
10313 properly on a NULL return. Switching to a GST_WARNING.
10315 2005-11-25 Jan Schmidt <thaytan@mad.scientist.com>
10317 * gst/gstbin.c: (gst_bin_handle_message_func):
10318 Don't leak clock messages.
10320 2005-11-25 Wim Taymans <wim@fluendo.com>
10322 * gst/gstutils.c: (gst_util_uint64_scale_int64),
10323 (gst_util_uint64_scale_int):
10324 Optimisations, remove unneeded vars.
10326 2005-11-25 Wim Taymans <wim@fluendo.com>
10328 * check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
10329 Added more checks for the high precision uint64 cases.
10331 * gst/gstutils.c: (gst_util_uint64_scale_int64),
10332 (gst_util_uint64_scale), (gst_util_uint64_scale_int):
10333 Implement high precision (guint64 * guint64) / guint64.
10335 2005-11-24 Wim Taymans <wim@fluendo.com>
10337 * gst/base/gstbasesrc.c: (gst_base_src_query):
10338 Fix wrong percentage query.
10340 * gst/gstutils.c: (gst_util_uint64_scale),
10341 (gst_util_uint64_scale_int):
10342 Add some more common cases that can be handled
10343 efficiently to _scale.
10345 2005-11-24 Thomas Vander Stichele <thomas at apestaart dot org>
10347 * check/gst/gstminiobject.c: (thread_ref), (GST_START_TEST),
10348 (gst_mini_object_suite):
10349 don't use check calls from threads; check probably isn't
10350 threadsafe and using a lock to make it threadsafe would
10351 defeat the purpose of this check
10352 * gst/check/gstcheck.c:
10353 * gst/check/gstcheck.h:
10354 use GST_DEBUG some more
10356 2005-11-24 Wim Taymans <wim@fluendo.com>
10358 * gst/gstutils.c: (gst_util_uint64_scale),
10359 (gst_util_uint64_scale_int):
10360 Chain trivial case to _scale_int.
10362 2005-11-24 Wim Taymans <wim@fluendo.com>
10364 * check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
10365 Added test for scaling.
10370 * gst/gstutils.c: (gst_util_uint64_scale_int):
10371 Implemented high precision scaling code.
10373 2005-11-24 Stefan Kost <ensonic@users.sf.net>
10376 do not crash on pad==NULL
10378 2005-11-24 Thomas Vander Stichele <thomas at apestaart dot org>
10380 Patch by: Stefan Kost
10382 * common/gtk-doc.mak:
10383 * docs/gst/Makefile.am:
10384 * docs/libs/Makefile.am:
10385 Fix distcheck issues for the libraries docs build
10388 2005-11-24 Michael Smith <msmith@fluendo.com>
10390 * docs/manual/basics-helloworld.xml:
10391 Fix bug #315027: memory leak in example code in docs.
10393 2005-11-24 Michael Smith <msmith@fluendo.com>
10395 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
10396 Unlock the PREROLL_LOCK in a failure case.
10398 2005-11-24 Wim Taymans <wim@fluendo.com>
10400 * docs/gst/gstreamer-sections.txt:
10401 * gst/base/gstadapter.h:
10402 * gst/base/gstbasesink.h:
10403 * gst/base/gstbasesrc.h:
10404 * gst/base/gstbasetransform.h:
10405 * gst/base/gstpushsrc.h:
10406 * gst/elements/gstfakesink.h:
10407 * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type):
10408 * gst/elements/gstfakesrc.h:
10409 * gst/elements/gstfilesink.h:
10410 * gst/elements/gstfilesrc.h:
10413 * gst/gstbuffer.c: (_gst_buffer_copy):
10416 * gst/gstchildproxy.c:
10418 * gst/gstelement.c:
10419 * gst/gstelementfactory.c:
10420 * gst/gstelementfactory.h:
10422 * gst/gstghostpad.h:
10424 * gst/gstinterface.h:
10425 * gst/gstminiobject.c:
10426 * gst/gstminiobject.h:
10429 * gst/gstpadtemplate.h:
10430 * gst/gstpipeline.h:
10431 * gst/gstpluginfeature.h:
10434 * gst/gsttaglist.c:
10435 * gst/gsttaglist.h:
10436 * gst/gsttagsetter.c:
10437 * gst/gsttagsetter.h:
10440 * gst/gsttypefind.h:
10443 * gst/net/gstnetclientclock.c:
10444 * gst/net/gstnetclientclock.h:
10445 * gst/net/gstnettimepacket.c:
10446 * gst/net/gstnettimeprovider.c:
10447 * gst/net/gstnettimeprovider.h:
10450 2005-11-23 Thomas Vander Stichele <thomas at apestaart dot org>
10452 * configure.ac: back to HEAD
10454 === release 0.9.6 ===
10456 2005-11-23 Thomas Vander Stichele <thomas at apestaart dot org>
10459 releasing 0.9.6, "Always On Time"
10461 2005-11-23 Wim Taymans <wim@fluendo.com>
10463 * docs/gst/gstreamer-sections.txt:
10464 * gst/glib-compat.c:
10465 * gst/gsttagsetter.c:
10467 * gst/net/gstnetclientclock.c:
10468 * gst/net/gstnettimepacket.h:
10471 2005-11-23 Thomas Vander Stichele <thomas at apestaart dot org>
10473 * docs/faq/using.xml:
10474 * docs/libs/tmpl/gstcontrol.sgml:
10475 * docs/manual/advanced-dparams.xml:
10476 * docs/manual/appendix-checklist.xml:
10477 * docs/manual/basics-elements.xml:
10478 * docs/pwg/other-source.xml:
10479 * docs/random/moving-plugins:
10481 * tools/gst-launch.1.in:
10482 remove mentions of sinesrc
10484 2005-11-23 Michael Smith <msmith@fluendo.com>
10486 * docs/gst/gstreamer-sections.txt:
10487 Update for new API and API changes.
10489 Documentation fix: GST_TRYLOCK -> GST_OBJECT_TRYLOCK
10491 Documentation typo fix.
10492 * gst/net/gstnettimepacket.c:
10493 Documentation fixes for arguments.
10495 2005-11-23 Jan Schmidt <thaytan@mad.scientist.com>
10497 * gst/gststructure.c: (gst_structure_get_fraction),
10498 (gst_structure_parse_value),
10499 (gst_structure_fixate_field_nearest_fraction):
10500 * gst/gststructure.h:
10501 * gst/gstutils.c: (gst_util_uint64_scale_int):
10503 * scripts/update-funcnames:
10505 Rename gst_util_clock_time_scale to gst_util_uint64_scale_int
10506 Make gst_structure_fixate_field_nearest_fraction take a numerator
10507 and denominator argument instead of a GValue
10508 add gst_structure_get_fraction helper function.
10510 2005-11-23 Wim Taymans <wim@fluendo.com>
10512 * docs/design/part-TODO.txt:
10515 * gst/net/gstnetclientclock.c: (gst_net_client_clock_thread):
10516 * gst/net/gstnetclientclock.h:
10517 Use parent fields for timeout and window_size.
10519 2005-11-23 Andy Wingo <wingo@pobox.com>
10521 * check/net/gstnetclientclock.c (test_functioning): Adjust to
10522 rate_num/rate_denom change.
10524 * gst/net/gstnetclientclock.c
10525 (gst_net_client_clock_observe_times): Take the SLAVE_LOCK not the
10526 OBJECT_LOCK. Don't call add_observation with the lock.
10528 * gst/gstclock.c (gst_clock_init): Initialize the rate as a
10530 (gst_clock_adjust_unlocked): Adjust using uint64_scale and the
10532 (gst_clock_set_calibration, gst_clock_get_calibration): Change to
10533 deal with rate as a fraction whose numerator and denominator are
10534 GstClockTime values.
10535 (gst_clock_set_master): Only use the OBJECT_LOCK to set the
10536 master; the other fields are protected by the SLAVE_LOCK.
10537 (do_linear_regression): Note that this must be called with the
10539 (gst_clock_add_observation): Take the SLAVE_LOCK, not the
10540 OBJECT_LOCK. Call set_calibration instead of touching the
10541 variables directly.
10542 (gst_clock_set_property, gst_clock_get_property): Protect
10543 master/slave parameters with the SLAVE_LOCK.
10545 * gst/gstclock.h (GstClock): Remove rate, add rate_numerator and
10546 rate_denominator. PR3C1S3. Add a new lock, the SLAVE_LOCK, and
10547 note that all of the instance variables that add_observation and
10548 the set_master functions use are protected by that lock and not
10550 (GST_CLOCK_SLAVE_LOCK, GST_CLOCK_SLAVE_UNLOCK): New macros.
10552 * gst/gstclock.c (gst_clock_add_observation): No longer requires
10553 the caller to take the object lock.
10555 2005-11-23 Wim Taymans <wim@fluendo.com>
10557 * gst/gsterror.c: (_gst_core_errors_init):
10559 Add error for clock stuff.
10561 * gst/gstpipeline.c: (gst_pipeline_change_state),
10562 (gst_pipeline_set_clock):
10563 Post clock error when clock cannot be used in a pipeline.
10565 2005-11-23 Stefan Kost <ensonic@users.sf.net>
10567 * docs/gst/gstreamer-sections.txt:
10568 make two symbols from gstinfo private for the docs
10569 * gst/base/gstcollectpads.h:
10571 fix doc typos, update docs
10573 2005-11-22 Wim Taymans <wim@fluendo.com>
10575 * gst/base/gstbasesink.c: (gst_base_sink_class_init),
10576 (gst_base_sink_wait), (gst_base_sink_do_sync),
10577 (gst_base_sink_handle_event):
10578 * gst/base/gstbasesink.h:
10579 No need to store the clock, the parent element class already
10582 * gst/gstbin.c: (gst_bin_set_clock_func), (gst_bin_add_func):
10583 Updates for clock_set returning a gboolean
10585 * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_wait),
10586 (gst_clock_id_wait_async), (gst_clock_class_init),
10587 (gst_clock_init), (gst_clock_finalize),
10588 (gst_clock_get_internal_time), (gst_clock_get_time),
10589 (gst_clock_slave_callback), (gst_clock_set_master),
10590 (gst_clock_get_master), (do_linear_regression),
10591 (gst_clock_add_observation), (gst_clock_set_property),
10592 (gst_clock_get_property):
10594 Implement master/slave. When setting a clock as a slave, a
10595 periodic timeout is scheduled to sample master and slave times.
10596 Then the slave clock is recalibrated to match offset and rate
10597 of the master clock.
10598 Update logging a bit.
10599 Add flag so that a clock can state that is cannot be slaved to
10602 * gst/gstelement.c: (gst_element_set_clock):
10603 * gst/gstelement.h:
10604 The set clock returns a gboolean for when an element cannot
10605 deal with the selected clock in the pipeline.
10607 * gst/gstpipeline.c: (gst_pipeline_change_state),
10608 (gst_pipeline_set_clock):
10609 * gst/gstpipeline.h:
10610 Handle the case where the selected clock cannot be set on
10613 * gst/net/gstnetclientclock.c: (gst_net_client_clock_class_init),
10614 (gst_net_client_clock_init), (gst_net_client_clock_finalize),
10615 (gst_net_client_clock_set_property),
10616 (gst_net_client_clock_get_property),
10617 (gst_net_client_clock_observe_times):
10618 * gst/net/gstnetclientclock.h:
10619 Use regression code in GstClock parent, remove duplicated
10622 2005-11-22 Michael Smith <msmith@fluendo.com>
10624 * gst/gstutils.c: (gst_util_clock_time_scale):
10626 * docs/gst/gstreamer-sections.txt:
10627 Rename method to have extra underscore.
10629 2005-11-22 Thomas Vander Stichele <thomas at apestaart dot org>
10631 * gst/elements/Makefile.am:
10632 * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type):
10633 * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
10634 (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
10635 (gst_fake_src_init), (gst_fake_src_prepare_buffer),
10636 (gst_fake_src_alloc_buffer), (gst_fake_src_get_size):
10637 * gst/elements/gstfakesrc.h:
10638 * gst/gstqueue.c: (queue_leaky_get_type):
10639 correctly fix GEnumValues so that nick is the short lowercase
10641 * tools/gst-inspect.c: (print_element_properties_info):
10642 also show the nick, since it's useful to use from parse_launch
10646 2005-11-22 Michael Smith <msmith@fluendo.com>
10648 * gst/gstutils.c: (gst_util_clocktime_scale):
10650 * docs/gst/gstreamer-sections.txt:
10651 Add util method for scaling a clocktime by a fraction. Useful
10652 implementation is left as an exercise for the reader.
10654 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
10656 * gst/gstvalue.c: (gst_value_collect_fraction_range):
10657 If needed, allocate storage in the destination value during
10660 2005-11-22 Edward Hervey <edward@fluendo.com>
10662 * docs/gst/gstreamer-sections.txt:
10665 * gst/gsturitype.c:
10666 * gst/gsturitype.h:
10667 * gst/gstutils.c: (gst_util_set_object_arg):
10668 * tools/gst-compprep.c: (main):
10669 * tools/gst-inspect.c: (print_element_properties_info):
10670 Removed GstURI, closes bug #321061
10672 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
10674 * check/gst/gststructure.c: (GST_START_TEST):
10675 * gst/gststructure.c: (gst_structure_parse_value):
10676 Oops, broke automatic string type parsing.
10677 Add a test to catch it in future.
10679 2005-11-22 Andy Wingo <wingo@pobox.com>
10681 * gst/gsttagsetter.c (gst_tag_setter_get_tag_merge_mode)
10682 (gst_tag_setter_set_tag_merge_mode, gst_tag_setter_get_tag_list):
10683 Actually rename the function implementations. Grr.
10685 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
10687 * check/gst/capslist.h:
10689 * check/gst/gststructure.c: (GST_START_TEST),
10690 (gst_structure_suite):
10691 Test automatic value type detection in gst_structure_from_string.
10692 * gst/gststructure.c: (gst_structure_parse_value):
10693 Add fraction as a type we try and guess automatically in
10694 caps/structure strings.
10696 2005-11-22 Andy Wingo <wingo@pobox.com>
10698 patch by: Torsten Schoenfeld <kaffeetisch gmx de>
10700 * gst/gsttagsetter.h:
10701 * gst/gsttagsetter.c: (gst_tag_setter_merge_tags)
10702 (gst_tag_setter_add_tags, gst_tag_setter_add_tag_values)
10703 (gst_tag_setter_add_tag_valist)
10704 (gst_tag_setter_add_tag_valist_values): Renamed from _merge, _add,
10705 _add_values, _add_valist, and _add_valist_values. Since this is an
10706 interface the function suffixes should be more explicit so
10707 language binding don't end up with element.add_valist ->
10708 gst_tag_setter_add_valist, for example. Fixes #322069.
10710 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
10712 * check/gst/gstcaps.c: (GST_START_TEST):
10713 Extend caps string tests to check that a caps to string
10714 conversion is reversible and produces the same caps.
10716 * gst/gststructure.c: (gst_structure_value_get_generic_type):
10717 Output "fraction" as the generic type fraction range, so caps
10718 serialisation and deserialisation works.
10719 * check/gst/capslist.h:
10720 * gst/gstvalue.c: (gst_value_deserialize_fraction):
10721 Support 'MIN' and 'MAX' for deserialising fractions.
10723 2005-11-22 Andy Wingo <wingo@pobox.com>
10725 * gst/gstevent.h (gst_event_new_new_segment)
10726 (gst_event_parse_new_segment, gst_event_new_buffer_size)
10727 (gst_event_parse_buffer_size, gst_ghost_pad_new_no_target):
10728 Renamed from *_newsegment, *_buffersize, *_notarget.
10730 * scripts/update-funcnames: New script, performs the changes
10733 2005-11-22 Wim Taymans <wim@fluendo.com>
10735 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
10736 Make sure the GstFlowReturn is returned.
10738 * gst/gstbus.c: (gst_bus_add_signal_watch_full),
10739 (gst_bus_add_signal_watch):
10741 add gst_bus_add_signal_watch_full.
10743 * gst/gstplugin.c: (gst_plugin_load_file):
10744 Small style cleanup.
10746 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
10748 * check/gst/gstevent.c: (test_event), (GST_START_TEST):
10749 Block the fakesrc srcpad when we send an event, to avoid
10750 contention on the stream_lock causing random test failures.
10752 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
10754 * check/gst/gstvalue.c: (GST_START_TEST):
10755 * gst/gstvalue.c: (gst_value_fraction_subtract):
10758 2005-11-22 Stefan Kost <ensonic@users.sf.net>
10761 include "gstchildproxy.h"
10762 * gst/gstchildproxy.h:
10763 * libs/gst/controller/gstcontroller.h:
10764 use G_GNUC_NULL_TERMINATED
10766 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
10768 * check/gst/capslist.h:
10769 * check/gst/gstcaps.c: (GST_START_TEST):
10770 * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
10771 * gst/gststructure.c: (gst_structure_parse_range),
10772 (gst_structure_fixate_field_nearest_fraction):
10773 * gst/gststructure.h:
10774 * gst/gstvalue.c: (gst_value_init_fraction_range),
10775 (gst_value_free_fraction_range), (gst_value_copy_fraction_range),
10776 (gst_value_collect_fraction_range),
10777 (gst_value_lcopy_fraction_range), (gst_value_set_fraction_range),
10778 (gst_value_set_fraction_range_full),
10779 (gst_value_get_fraction_range_min),
10780 (gst_value_get_fraction_range_max),
10781 (gst_value_serialize_fraction_range),
10782 (gst_value_transform_fraction_range_string),
10783 (gst_value_compare_fraction_range),
10784 (gst_value_deserialize_fraction_range),
10785 (gst_value_intersect_fraction_fraction_range),
10786 (gst_value_intersect_fraction_range_fraction_range),
10787 (gst_value_subtract_fraction_fraction_range),
10788 (gst_value_subtract_fraction_range_fraction),
10789 (gst_value_subtract_fraction_range_fraction_range),
10790 (gst_value_collect_fraction), (gst_value_fraction_multiply),
10791 (gst_value_fraction_subtract), (gst_value_deserialize_fraction),
10792 (gst_value_transform_string_fraction), (_gst_value_initialize):
10794 Implement fraction ranges and extend GstFraction to support
10795 arithmetic subtraction, as well as deserialization from integer
10796 strings such as "100"
10797 Add a testsuite as for int and double range set operations
10799 2005-11-21 Andy Wingo <wingo@pobox.com>
10801 * gst/gsttaglist.h:
10803 * gst/gststructure.h: Add glib-compat.h.
10805 2005-11-21 Wim Taymans <wim@fluendo.com>
10807 * gst/gstbin.c: (gst_bin_change_state_func):
10810 2005-11-21 Wim Taymans <wim@fluendo.com>
10812 * gst/gstsegment.h:
10813 And add a nice define too.
10815 2005-11-21 Wim Taymans <wim@fluendo.com>
10817 * gst/gstsegment.c: (gst_segment_copy), (gst_segment_get_type),
10818 (gst_segment_new), (gst_segment_free), (gst_segment_init),
10819 (gst_segment_set_duration), (gst_segment_set_last_stop),
10820 (gst_segment_set_seek), (gst_segment_set_newsegment),
10821 (gst_segment_to_stream_time), (gst_segment_to_running_time),
10822 (gst_segment_clip):
10823 * gst/gstsegment.h:
10824 Make binding friendly.
10826 2005-11-21 Andy Wingo <wingo@pobox.com>
10828 * gst/gsttagsetter.h:
10829 * gst/gsttaglist.h:
10830 * gst/gststructure.h:
10832 * gst/gstutils.h: Sprinkle NULL_TERMINATED to taste. Fixes
10835 * gst/gsterror.c (_gst_core_errors_init):
10836 * gst/gsterror.h (GST_CORE_ERROR_MISSING_PLUGIN): New error
10839 * gst/Makefile.am (gst_headers): Add glib-compat.h.
10840 (noinst_HEADERS): noinst the -private.
10842 2005-11-21 Michael Smith <msmith@fluendo.com>
10845 * gst/gstregistry.h:
10846 Remove unimplemented declarations for which we can see no sensible
10849 2005-11-21 Andy Wingo <wingo@pobox.com>
10851 * gst/gst.h: Include glib-compat.h.
10853 * gst/glib-compat.h: Add G_GNUC_NULL_TERMINATED.
10855 * gst/glib-compat.c: Include the public and the private header.
10857 * gst/glib-compat-private.h: Copied here from glib-compat.h.
10861 * gst/gstregistryxml.c: s/glib-compat/glib-compat-private/.
10863 * check/gst/gstevent.c (create_custom_events): Check that
10864 FLUSH_STOP is serialized.
10866 * check/elements/identity.c (event_func):
10867 * check/elements/fakesrc.c (event_func): No stream lock, the core
10870 * gst/base/gstbasetransform.c (gst_base_transform_event): No more
10871 stream lock taking, yay.
10873 * gst/gstevent.h (GST_EVENT_FLUSH_STOP): Marked as serialized to
10874 ensure that core takes the stream lock.
10876 * gst/base/gstbasesrc.c (gst_base_src_do_seek): Update for stream
10879 * gst/base/gstbasesink.c (gst_base_sink_event): No need to take
10880 the stream lock for EOS, NEWSEGMENT, or FLUSH_STOP, the core does
10881 it already. For the flush start we do take it though so we get the
10882 right preroll state change messages.
10884 * gst/gstqueue.c (gst_queue_sink_activate_push): No need to take
10885 the stream lock here, the core does it for us.
10887 * gst/gstpad.h (GST_PAD_GET_STREAM_LOCK): Renamed from
10888 GST_STREAM_GET_LOCK.
10889 (GST_PAD_STREAM_LOCK, GST_PAD_STREAM_TRYLOCK)
10890 (GST_PAD_STREAM_UNLOCK, GST_PAD_STREAM_UNLOCK_FULL)
10891 (GST_PAD_STREAM_LOCK_FULL): Renamed from GST_STREAM_*.
10892 (GST_PAD_GET_PREROLL_LOCK): Renamed from GST_PREROLL_GET_LOCK.
10893 (GST_PAD_PREROLL_LOCK, GST_PAD_PREROLL_TRYLOCK)
10894 (GST_PAD_PREROLL_UNLOCK): Renamed from GST_PREROLL_*.
10896 * gst/gstpad.c: Update for stream lock name change.
10898 * gst/base/gstbasesink.c: Update for preroll lock name change.
10900 2005-11-21 Wim Taymans <wim@fluendo.com>
10902 * gst/gstclock.c: (gst_clock_init), (gst_clock_set_master),
10903 (gst_clock_get_master):
10905 * gst/gstsystemclock.c: (gst_system_clock_init):
10906 Convert Clock flags to object flags.
10907 Added methods to manage master/slave clocks.
10909 2005-11-21 Wim Taymans <wim@fluendo.com>
10911 * check/gst/gstsegment.c: (GST_START_TEST):
10912 * docs/design/part-TODO.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_pull), (gst_base_sink_get_position),
10916 (gst_base_sink_query), (gst_base_sink_change_state):
10917 * gst/base/gstbasesink.h:
10918 * gst/base/gstbasesrc.c: (gst_base_src_init), (gst_base_src_query),
10919 (gst_base_src_default_newsegment),
10920 (gst_base_src_configure_segment), (gst_base_src_do_seek),
10921 (gst_base_src_get_range), (gst_base_src_loop),
10922 (gst_base_src_change_state):
10923 * gst/base/gstbasesrc.h:
10924 * gst/base/gstbasetransform.c:
10925 (gst_base_transform_prepare_output_buf),
10926 (gst_base_transform_event), (gst_base_transform_change_state):
10927 * gst/base/gstbasetransform.h:
10928 * gst/base/gstcollectpads.c: (gst_collect_pads_add_pad),
10929 (gst_collect_pads_event):
10930 * gst/base/gstcollectpads.h:
10931 * gst/elements/gstfakesrc.c: (gst_fake_src_init),
10932 (gst_fake_src_create):
10933 * gst/elements/gstfakesrc.h:
10934 * gst/elements/gstidentity.c: (gst_identity_transform_ip):
10935 * gst/gstsegment.c: (gst_segment_init), (gst_segment_set_duration),
10936 (gst_segment_set_last_stop), (gst_segment_set_seek),
10937 (gst_segment_set_newsegment), (gst_segment_to_stream_time),
10938 (gst_segment_to_running_time), (gst_segment_clip):
10939 * gst/gstsegment.h:
10940 More segment updates, replace code in plugins with segment
10943 2005-11-21 Jan Schmidt <thaytan@mad.scientist.com>
10945 * gst/elements/gstfdsrc.c: (gst_fdsrc_uri_set_uri):
10946 Don't ignore sscanf results
10948 2005-11-21 Andy Wingo <wingo@pobox.com>
10950 * gst/gstpad.h (GST_IS_PAD_FAST): Removed.
10953 * *.c: Ran scripts/update-macros. Oh yes.
10955 * gst/gstobject.h (GST_OBJECT_GET_LOCK, GST_OBJECT_LOCK)
10956 (GST_OBJECT_TRYLOCK, GST_OBJECT_UNLOCK): Renamed from
10959 * scripts/update-macros: New script. Run it on your files to
10960 change GST_LOCK to GST_OBJECT_LOCK, and the same for UNLOCK as
10963 2005-11-21 Stefan Kost <ensonic@users.sf.net>
10965 * docs/gst/Makefile.am:
10966 * docs/gst/gstreamer-docs.sgml:
10967 * docs/gst/gstreamer-sections.txt:
10968 * docs/gst/gstreamer.types:
10970 more docs fixes, add new api to the docs
10972 2005-11-21 Andy Wingo <wingo@pobox.com>
10974 * gst/gstbin.c (gst_bin_remove_func): Wim claims I can remove this
10975 state_broadcast call.
10977 * gst/gstsegment.c (gst_segment_init): Initialize abs_rate.
10979 2005-11-21 Julien MOUTTE <julien@moutte.net>
10981 * gst/gstvalue.c: (gst_value_intersect_array): Fix wrong
10982 function calls for arrays.
10984 2005-11-21 Stefan Kost <ensonic@users.sf.net>
10986 * docs/random/ensonic/media-device-daemon.txt:
10987 wild idea, can this be done?
10988 * docs/gst/gstreamer-sections.txt:
10993 * gst/gstpluginfeature.c:
10997 doc fixes and additions
10999 2005-11-21 Andy Wingo <wingo@pobox.com>
11001 * gst/base/gstbasesrc.c (GST_LIVE_BROADCAST, GST_LIVE_SIGNAL)
11002 (GST_LIVE_TIMED_WAIT, GST_LIVE_WAIT, GST_LIVE_GET_COND)
11003 (GST_LIVE_UNLOCK, GST_LIVE_TRYLOCK, GST_LIVE_LOCK)
11004 (GST_LIVE_GET_LOCK): Moved here from gstbasesrc.h. They are
11005 private to the basesrc implementation.
11007 * gst/gstpad.c (gst_pad_send_event): Doc more. Take stream lock on
11008 behalf of event function if necessary. It should no longer be
11009 necessary to take the stream lock in pad's event functions. Fixes
11012 2005-11-21 Jan Schmidt <thaytan@mad.scientist.com>
11013 * docs/gst/gstreamer-sections.txt:
11014 * gst/gststructure.c: (gst_structure_fixate_field_nearest_int),
11015 (gst_structure_fixate_field_nearest_double),
11016 (gst_structure_fixate_field_boolean):
11017 * gst/gststructure.h:
11018 * win32/common/libgstreamer.def:
11019 * win32/gstreamer.def:
11021 Rename gst_caps_structure_fixate_* to gst_structure_fixate_*
11024 2005-11-21 Jan Schmidt <thaytan@mad.scientist.com>
11026 * gst/elements/gstfdsrc.c: (_do_init), (gst_fdsrc_class_init),
11027 (gst_fdsrc_init), (gst_fdsrc_dispose), (gst_fdsrc_set_property),
11028 (gst_fdsrc_uri_get_type), (gst_fdsrc_uri_get_protocols),
11029 (gst_fdsrc_uri_get_uri), (gst_fdsrc_uri_set_uri),
11030 (gst_fdsrc_uri_handler_init):
11031 * gst/elements/gstfdsrc.h:
11032 Port fd:// URI handler from 0.8 to fdsrc
11034 2005-11-21 Tim-Philipp Müller <tim at centricular dot net>
11036 * gst/gstvalue.c: (gst_value_transform_fourcc_string),
11037 (gst_value_serialize_fourcc):
11039 Drop leading '%' from GST_FOURCC_FORMAT, thus making it
11040 consistent with our other format defines (#320324).
11042 2005-11-21 Tim-Philipp Müller <tim at centricular dot net>
11044 * gst/gstvalue.c: (gst_value_is_fixed):
11045 Revert previous commit. Value lists are by definition
11046 not fixed, as they are a list of possible values.
11048 2005-11-21 Andy Wingo <wingo@pobox.com>
11050 * gst/gstevent.h (GST_EVENT_FILLER): Removed. Can be added back
11051 during the stable series if we need it. Fixes #319178.
11053 * gst/gstevent.c (gst_event_new_filler): Removed.
11055 * check/gst/gstevent.c: Update comment about filler events.
11057 2005-11-21 Tim-Philipp Müller <tim at centricular dot net>
11059 * gst/gstvalue.c: (gst_value_is_fixed):
11060 Should handle both value arrays and value lists.
11062 2005-11-21 Andy Wingo <wingo@pobox.com>
11064 patch by: Alessandro Dessina <alessandro nnva org>
11066 * gst/gstvalue.c (gst_value_is_fixed): Use gst_value_array
11067 functions to access arrays. Fixes #321962.
11069 2005-11-21 Tim-Philipp Müller <tim at centricular dot net>
11071 * docs/gst/gstreamer.types:
11072 gst_collectpads_get_type => gst_collect_pads_get_type.
11074 * gst/base/gstbasetransform.c:
11075 Remove unused SIGNAL_HANDOFF enum.
11077 2005-11-21 Andy Wingo <wingo@pobox.com>
11079 * gst/gstevent.h (GstEventTypeFlags): New data type, the flags of
11080 the event type (upstream, downstream, serialized). Renamed
11081 GST_EVDIR_* and GST_EVSER to GST_EVENT_TYPE_*.
11082 (GstEventType): Use GstEventTypeFlags. Rename CUSTOM_UP to
11083 CUSTOM_UPSTREAM, CUSTOM_DS to CUSTOM_DOWNSTREAM, etc.
11085 * gst/gstevent.c: Update for new CUSTOM event names.
11087 * check/gst/gstevent.c: Update check for new CUSTOM event names.
11090 * gst/gstevent.c (gst_event_type_get_flags): New function. Fixes
11093 2005-11-21 Tim-Philipp Müller <tim at centricular dot net>
11095 * docs/gst/gstreamer-sections.txt:
11096 * win32/common/libgstbase.def:
11097 * win32/libgstbase.def:
11098 * gst/base/gstcollectpads.c: (gst_collect_pads_base_init),
11099 (gst_collect_pads_class_init), (gst_collect_pads_init),
11100 (gst_collect_pads_finalize), (gst_collect_pads_new),
11101 (gst_collect_pads_set_function), (gst_collect_pads_add_pad),
11102 (gst_collect_pads_remove_pad), (gst_collect_pads_is_active),
11103 (gst_collect_pads_collect), (gst_collect_pads_collect_range),
11104 (gst_collect_pads_start), (gst_collect_pads_stop),
11105 (gst_collect_pads_peek), (gst_collect_pads_pop),
11106 (gst_collect_pads_available), (gst_collect_pads_read),
11107 (gst_collect_pads_flush), (gst_collect_pads_event),
11108 (gst_collect_pads_chain):
11109 * gst/base/gstcollectpads.h:
11110 Rename gst_collecpads_foo() => gst_collect_pads_foo(). Document
11111 unimplemented functions as unimplemented. Add padding to
11112 GstCollectData. (#320766, #320423)
11114 2005-11-21 Tim-Philipp Müller <tim at centricular dot net>
11116 * gst/gstmessage.c:
11117 Improve docs for DURATION message (usage of duration parameter)
11120 2005-11-20 Wim Taymans <wim@fluendo.com>
11122 * check/Makefile.am:
11123 * check/gst/gstsegment.c: (GST_START_TEST), (gstevents_suite),
11127 * gst/gstsegment.c: (gst_segment_init), (gst_segment_set_duration),
11128 (gst_segment_set_seek), (gst_segment_set_newsegment),
11129 (gst_segment_to_stream_time), (gst_segment_to_running_time),
11130 (gst_segment_clip):
11131 * gst/gstsegment.h:
11132 Added segment helper structure and methods. Not fully implemented
11134 Added segment check.
11136 2005-11-20 Jan Schmidt <thaytan@mad.scientist.com>
11138 * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
11139 Add a deserialisation test for fractions
11140 * examples/metadata/read-metadata.c: (message_loop),
11141 (make_pipeline), (main):
11142 Fix up metadata reading sample.
11143 * gst/base/gstbasesink.c: (gst_base_sink_do_sync):
11145 * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
11146 Don't try and fixate empty caps
11147 * gst/gst_private.h:
11148 Wrap in G_BEGIN_DECLS/G_END_DECLS
11149 * gst/gstvalue.c: (gst_value_collect_fraction),
11150 (gst_value_set_fraction), (gst_value_get_fraction_denominator),
11151 (gst_value_transform_string_fraction),
11152 (gst_value_compare_fraction):
11153 Add some extra guards to ensure that we don't end up
11154 with an invalid denominator of 0 in a gstfraction and
11155 that fractions always get reduced.
11157 2005-11-20 Wim Taymans <wim@fluendo.com>
11159 * docs/gst/gstreamer-sections.txt:
11161 * gst/gstelement.c:
11170 2005-11-20 Wim Taymans <wim@fluendo.com>
11172 * docs/design/part-TODO.txt:
11174 Make a proper enum of the flag.
11176 2005-11-19 Wim Taymans <wim@fluendo.com>
11178 * docs/design/part-TODO.txt:
11179 * gst/gstformat.c: (_gst_format_initialize), (gst_format_get_name),
11180 (gst_format_to_quark), (gst_format_register):
11182 * gst/gstquery.c: (_gst_query_initialize),
11183 (gst_query_type_get_name), (gst_query_type_to_quark),
11184 (gst_query_type_register):
11186 Add type to quark and type to string conversions.
11188 2005-11-19 Andy Wingo <wingo@pobox.com>
11190 * gst/gstbuffer.h (GST_BUFFER_FLAG_ORIGINAL): Removed. Fixes
11193 2005-11-19 Wim Taymans <wim@fluendo.com>
11195 * docs/design/part-TODO.txt:
11196 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_provide_clock_func),
11197 (gst_bin_add_func), (gst_bin_remove_func), (bin_bus_handler),
11198 (gst_bin_handle_message_func):
11200 Make message handling overridable.
11202 2005-11-19 Andy Wingo <wingo@pobox.com>
11204 * gst/gstpad.h (GST_PAD_IS_USABLE): Removed. Fixes #321235.
11207 * gst/gstclock.c (GstClock, GstClockClass): Change resolution to
11209 (gst_clock_set_resolution, gst_clock_get_resolution): Resolution
11210 is a GstClockTime. Fixes #321710.
11212 * gst/gstclock.h (GstClock): Remove offset property. Add
11213 internal_calibration and external_calibration. Fix padding. Pad
11214 also by GstClockTime so we don't run into problems.
11216 * gst/gstclock.c (gst_clock_set_rate_offset): Remove.
11217 (gst_clock_get_rate_offset): Remove.
11218 (gst_clock_set_time_adjust): Remove. Fixes #321712.
11221 * gst/gstutils.c (g_static_rec_cond_wait)
11222 (g_static_rec_cond_timed_wait): Removed, no longer needed.
11224 * gst/gstbin.c: Remove terrible continue_state prototype.
11226 * gst/gstelement.h (gst_element_continue_state): Make public.
11228 * gst/gstelement.h:
11229 * gst/gstelement.c (gst_element_commit_state): Removed, replaced
11230 by continue_state. Fixes #319389.
11232 * gst/gstindex.h (GstIndexFilter): Actually pass on the user_data.
11233 Really fixes #168438. However I don't see anywhere where the
11234 filter function is called... stupid GStreamer...
11236 * gst/gstindex.h (GstIndex): Add field for user_data_destroy. We
11237 don't have a dispose function, so it won't get called when the
11238 object is unreffed, but oh well!
11240 * gst/gstindex.c (gst_index_set_filter_full): New API function,
11241 allows a destroy function to be set so user_data can be freed.
11243 (gst_index_set_filter): Call gst_index_set_filter_full.
11245 * check/gst/gstvalue.c (test_string): Add test for bug #165650.
11247 * gst/gstvalue.c (gst_string_wrap): Trying to serialize a NULL
11248 string should produce an error, given the lack of a way to
11249 represent NULL strings. Fixes #165650.
11252 * gst/gstvalue.c (gst_value_array_append_value)
11253 (gst_value_array_prepend_value, gst_value_array_get_size)
11254 (gst_value_array_get_value): New API, copied from
11255 gst_value_list_*, only operates on arrays.
11256 (gst_value_list_append_value, gst_value_list_prepend_value)
11257 (gst_value_list_concat, gst_value_list_get_size)
11258 (gst_value_list_get_value): Only operate on lists. Fixes #156633.
11260 * gst/gstvalue.c (gst_value_init_list_or_array): Renamed from
11261 init_list, because it works on both.
11262 (copy_garray_of_gstvalue): Renamed from gst_value_list_copy_array.
11263 (gst_value_copy_list_or_array): Renamed from copy_list.
11264 (gst_value_free_list_or_array): Renamed from free_list.
11265 (gst_value_collect_list_or_array): Renamed from collect_list.
11266 (gst_value_lcopy_list_or_array): Renamed from lcopy_list.
11267 (gst_value_list_or_array_peek_pointer): Renamed from
11269 (_gst_value_array_value_table, _gst_value_list_value_table):
11270 Update value table functions.
11271 (gst_value_compare_list_or_array): Renamed from compare_list.
11273 * gsttaglist.h: Whoops, foreach function returns void. Also fix
11276 * gst/gsttaglist.c:
11277 * gst/gsttaglist.h (gst_tag_list_foreach): Operates on a const
11278 GstTagList*. Fixes #143472.
11280 * gst/gststructure.h: Clarify what the foreach/map functions can
11281 or can't do to their arguments.
11283 2005-11-18 Wim Taymans <wim@fluendo.com>
11285 * gst/gstclock.c: (gst_clock_set_calibration),
11286 (gst_clock_get_calibration):
11288 Calibration can be set with internal time equal to current
11291 2005-11-18 Thomas Vander Stichele <thomas at apestaart dot org>
11297 2005-11-18 Andy Wingo <wingo@pobox.com>
11300 * pkgconfig/gstreamer-net.pc.in:
11301 * pkgconfig/gstreamer-net-uninstalled.pc.in:
11302 * pkgconfig/Makefile.am: Add net pkgconfig files.
11304 2005-11-18 Stefan Kost <ensonic@users.sf.net>
11307 * gst/gstghostpad.c:
11313 2005-11-18 Andy Wingo <wingo@pobox.com>
11315 * gst/net/gstnetclientclock.c: Turn off debugging.
11317 * check/net/gstnetclientclock.c (test_functioning): Assert that the
11318 times connverge somewhat. Can't make a real test.
11320 * gst/net/gstnetclientclock.c (do_linear_regression): Use all
11321 integer arithmetic. Return the minimum of the domain, which can be
11322 set as "internal" for gst_clock_set_calibration.
11323 (gst_net_client_clock_observe_times): Call _set_calibration.
11324 (gst_net_client_clock_new): Call _set_calibration instead of
11327 * check/net/gstnetclientclock.c (test_functioning): Use the right
11331 * gst/gstclock.c (gst_clock_get_calibration)
11332 (gst_clock_set_calibration): New functions, obsolete the ones I
11333 added yesterday. Doh. Precision issues mean we have to extrapolate
11334 from a point in the more recent past than 1970.
11335 (gst_clock_get_rate_offset, gst_clock_set_rate_offset): Mark as
11337 (gst_clock_adjust_unlocked): Use the right calibration data.
11339 2005-11-18 Edward Hervey <edward@fluendo.com>
11341 * gst/base/gstbasesink.c: (gst_base_sink_change_state):
11342 Also reset the ->current_* values in READY->PAUSED
11344 2005-11-18 Andy Wingo <wingo@pobox.com>
11346 * gst/net/gstnetclientclock.c (gst_net_client_clock_thread):
11347 Whoops, check the right fd. Also add some debugging.
11348 (gst_net_client_clock_observe_times): Adjust for int64 offset.
11349 (do_linear_regression): Add a crapload of debugging. Subtract off
11350 the minimum values from the input series to discard unneeded bits.
11351 Use only int arithmetic. There is still double arithmetic when
11352 calculating the intercept that needs fixing. Return boolean to
11353 indicate success; FALSE would mean the domain or range is too
11354 great. Still needs fixes.
11356 2005-11-18 Wim Taymans <wim@fluendo.com>
11358 * gst/base/gstbasesink.c: (gst_base_sink_get_position):
11359 For the current position in stream time, we need to subtract
11362 * gst/gstsystemclock.c: (gst_system_clock_async_thread):
11363 Release lock before calling the callback function of async
11366 2005-11-18 Andy Wingo <wingo@pobox.com>
11368 * gst/net/gstnetclientclock.c (gst_net_client_clock_class_init):
11369 Port goes all the way to MAXUINT16.
11371 * gst/net/gstnettimeprovider.c: Make the port range the same as
11372 for the kernel: 0 assigns, otherwise ports are less than
11375 * check/net/gstnettimeprovider.c: Adapt for 0 == kernel assigns
11378 * check/net/gstnetclientclock.c (test_functioning): Add the start
11381 2005-11-18 Wim Taymans <wim@fluendo.com>
11383 * gst/gstbin.c: (gst_bin_provide_clock_func), (gst_bin_add_func),
11384 (gst_bin_remove_func), (bin_bus_handler):
11386 Removing a clock provider from a bin, triggers a clock lost message
11387 so that a new clock will be selected.
11388 Adding a clock to a bin triggers a clock provider message.
11389 Make sure we reselect a clock when we received a clock lost message.
11390 Keep a reference to the element that provided the clock.
11392 2005-11-18 Andy Wingo <wingo@pobox.com>
11394 * gst/net/gstnetclientclock.c (gst_net_client_clock_new): Adjust
11395 the clock initially so it produces values around the base time.
11396 (gst_net_client_clock_class_init): Typo fix.
11397 (gst_net_client_clock_thread): Add note on when the socket gets
11400 2005-11-17 Wim Taymans <wim@fluendo.com>
11402 * gst/net/gstnetclientclock.c: (gst_net_client_clock_finalize):
11403 Free remote and local time arrays.
11405 2005-11-17 Wim Taymans <wim@fluendo.com>
11407 * gst/net/gstnetclientclock.c: (do_linear_regression),
11408 (gst_net_client_clock_do_select), (gst_net_client_clock_thread):
11409 Fix compilation, uninitialized vars and a forgotten continue.
11411 2005-11-17 Andy Wingo <wingo@pobox.com>
11413 * check/Makefile.am (check_PROGRAMS):
11414 * check/net/gstnetclientclock.c: Add a most minimal test for the
11415 net client clock. More to come later.
11417 * gst/net/gstnet.h:
11418 * gst/net/Makefile.am: Add netclientclock.
11420 * gst/net/gstnetclientclock.h:
11421 * gst/net/gstnetclientclock.c: New files, implement an untested
11422 GstClock that takes its time from a network time provider.
11423 Implements the algorithm in network-clock.scm.
11425 * tests/network-clock.scm (*window-size*): Rename from
11427 * tests/network-clock.scm (network-time):
11428 * tests/network-clock-utils.scm (q-push): Update callers.
11430 2005-11-17 Wim Taymans <wim@fluendo.com>
11432 * gst/gstbin.c: (gst_bin_provide_clock_func),
11433 (gst_bin_sort_iterator_new):
11434 And unref the child too..
11436 2005-11-17 Wim Taymans <wim@fluendo.com>
11438 * gst/gstbin.c: (gst_bin_dispose), (gst_bin_provide_clock_func),
11439 (gst_bin_sort_iterator_new), (gst_bin_iterate_sorted):
11440 Refactor the sort iterator so it can be used while holding the
11442 Make clock selection select a clock closest to the source.
11444 2005-11-17 Michael Smith <msmith@fluendo.com>
11446 * gst/gstclock.c: (gst_clock_init), (gst_clock_adjust_unlocked),
11447 (gst_clock_set_rate_offset), (gst_clock_get_rate_offset):
11449 Anonymous structs are a gcc (and some other compilers) extension, so
11450 don't use them. Since this is only for ABI-compatibility, and our
11451 API/ABI freeze is over in a few days, this whole thing will only
11452 last a few days, so don't bother trying to think up a meaningful
11453 name for the struct.
11455 2005-11-17 Andy Wingo <wingo@pobox.com>
11457 * gst/gstclock.h (GstClock): Add rate and offset properties,
11458 preserving ABI stability. Add rate/offset accessors. Will file bug
11459 for the freeze break.
11461 * gst/gstclock.c (gst_clock_adjust_unlocked): Implement using rate
11462 and offset, trying to keep precision and avoiding
11463 underflow/overflow.
11464 (gst_clock_set_rate_offset, gst_clock_get_rate_offset): New
11465 functions. Make gst_clock_set_time_adjust obsolete.
11466 (gst_clock_set_time_adjust): Note that this function is obsolete.
11467 Will file bug soon.
11469 * gst/base/gstbasetransform.h: Make the ABI-stability hack
11470 greppable by using GST_PADDING-1+1.
11472 2005-11-17 Torsten Schoenfeld <kaffeetisch at gmx dot net>
11474 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
11476 * gst/gstmessage.c: (gst_message_parse_clock_lost):
11477 Assertion should check for CLOCK_LOST, not NEW_CLOCK (#321648).
11479 * gst/gstpadtemplate.h:
11480 * gst/gstpluginfeature.h:
11481 Don't use c++ style comments in headers (#321638).
11483 2005-11-16 Andy Wingo <wingo@pobox.com>
11485 * gst/net/gstnettimepacket.c (gst_net_time_packet_send): Free
11488 * check/net/gstnettimeprovider.c: Check to see that the time
11489 provider actually provides times. Works, yo!
11491 2005-11-16 Wim Taymans <wim@fluendo.com>
11493 * check/Makefile.am:
11496 * check/elements/fakesrc.c: (GST_START_TEST):
11497 Set element to NULL before disposing it.
11499 2005-11-16 Andy Wingo <wingo@pobox.com>
11501 * gst/net/Makefile.am:
11502 * gst/net/gstnet.h:
11503 * gst/net/gstnettimeprovider.c:
11504 * gst/net/gstnettimeprovider.h: Use the timepacket stuff in the
11505 provider, include it from gstnet.h, and add it to the build.
11507 * gst/net/gstnettimepacket.h:
11508 * gst/net/gstnettimepacket.c: New files, abstracts out the packet
11509 sending and receiving.
11511 2005-11-16 Wim Taymans <wim@fluendo.com>
11513 * check/Makefile.am:
11514 Enable valgrind check.
11516 * gst/elements/gstfakesrc.c: (gst_fake_src_alloc_parent),
11517 (gst_fake_src_alloc_buffer):
11520 2005-11-16 Wim Taymans <wim@fluendo.com>
11522 * gst/net/gstnettimeprovider.c: (gst_net_time_provider_finalize):
11523 Call parent finalize too.
11525 2005-11-16 Wim Taymans <wim@fluendo.com>
11527 * check/Makefile.am:
11528 Enable valgrind check that should work fine now.
11530 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init):
11531 * gst/gstqueue.c: (gst_queue_init):
11532 Fix memleaks in pad allocation.
11534 2005-11-16 Andy Wingo <wingo@pobox.com>
11536 * gst/net/Makefile.am:
11537 * gst/net/gstnet.h: New part of core to hold network elements and
11538 objects. Put in core because it exposes API that applications want
11539 to use. The library is named libgstnet-tempname right now because
11540 of the existing libgstnet in gst-plugins-base. Solution is
11541 probably to rename the one in plugins-base; will file a bug for
11544 * gst/net/gstnettimeprovider.c:
11545 * gst/net/gstnettimeprovider.h: New object to export a GstClock's
11546 get_time call over the network.
11549 * gst/Makefile.am (lib_LTLIBRARIES): Add gstnet to the build.
11551 * check/Makefile.am:
11552 * check/net/gstnettimeprovider.c: A most minimal test suite. Will
11553 get additions shortly.
11555 2005-11-16 Thomas Vander Stichele <thomas at apestaart dot org>
11557 * gst/gstpad.c: (gst_pad_new_from_static_template):
11559 add gst_pad_new_from_static_template functions
11560 * gst/check/gstcheck.c: (gst_check_setup_src_pad),
11561 (gst_check_setup_sink_pad):
11562 * gst/elements/gsttee.c: (gst_tee_init):
11565 2005-11-16 Wim Taymans <wim@fluendo.com>
11567 * gst/gstpad.c: (gst_pad_pause_task):
11568 Removed warning, it's not really an error either.
11570 2005-11-16 Wim Taymans <wim@fluendo.com>
11572 * gst/base/gstbasetransform.c:
11573 (gst_base_transform_prepare_output_buf),
11574 (gst_base_transform_event):
11575 Check if the caps are NULL, this can happen if the element
11576 is shutting down and the pad caps are set to NULL.
11578 2005-11-16 Thomas Vander Stichele <thomas at apestaart dot org>
11580 * gst/elements/gsttee.c: (gst_tee_init):
11581 fix pad template leak in tee
11583 2005-11-16 Thomas Vander Stichele <thomas at apestaart dot org>
11585 * gst/glib-compat.c: (g_value_dup_gst_object):
11586 * gst/glib-compat.h:
11587 * gst/gstpad.c: (gst_pad_set_property):
11588 use gst_object_ref when setting the pad template; this will
11589 trigger the pad template leaks on GLib 2.6 and the slaves
11591 2005-11-16 Thomas Vander Stichele <thomas at apestaart dot org>
11593 * gst/glib-compat.c: (gst_flags_get_first_value):
11594 * gst/glib-compat.h:
11595 * gst/gstregistryxml.c:
11596 remove functions copied from GLib 2.6
11598 2005-11-16 Michael Smith <msmith@fluendo.com>
11601 Don't link against VALGRIND_LIBS. That was always the wrong thing to
11602 do, but only breaks with newer valgrind versions. We're not a
11603 valgrind tool, we have no link-time dependencies on libcoregrind.
11605 2005-11-16 Thomas Vander Stichele <thomas at apestaart dot org>
11607 * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
11609 * gst/gstmessage.h:
11612 2005-11-16 Thomas Vander Stichele <thomas at apestaart dot org>
11614 * gst/base/gstbasesrc.c: (gst_base_src_init):
11615 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init):
11616 * gst/gstqueue.c: (gst_queue_init):
11617 * gst/gstregistryxml.c: (load_feature):
11618 Revert all these unrefs, they don't even pass make check !
11620 2005-11-15 Johan Dahlin <johan@gnome.org>
11622 * gst/base/gstbasesrc.c: (gst_base_src_init):
11623 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init):
11624 * gst/gstqueue.c: (gst_queue_init):
11625 Free pad templates, fixes a couple of leaks.
11627 2005-11-15 Daniel Fischer <dan at f3c dot com>
11629 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
11631 * gst/gstpad.c: (gst_pad_get_property):
11632 GST_PAD_PAD_TEMPLATE(pad) gets the pad template, while
11633 GST_PAD_TEMPLATE(pad) does a cast. We want the former here.
11636 2005-11-15 Wim Taymans <wim@fluendo.com>
11641 2005-11-15 Andy Wingo <wingo@pobox.com>
11643 * gst/gstelement.c (gst_element_set_base_time): Add debugging.
11645 * gst/gstpipeline.c (gst_pipeline_set_new_stream_time): Document
11646 using GST_CLOCK_TIME_NONE to disable base time management.
11647 (do_pipeline_seek, gst_pipeline_change_state): Don't reset stream
11648 time if it was NONE before.
11649 (gst_pipeline_change_state): Only munge the base time if
11650 stream_time != GST_CLOCK_TIME_NONE.
11652 * check/gst/gstpipeline.c (test_base_time): Punt around the
11653 problem of the probe not being called, because that's not the
11654 issue I'm looking at. Add a check that setting stream_time to NONE
11655 disables base time management.
11657 2005-11-15 Wim Taymans <wim@fluendo.com>
11659 * gst/base/gstbasesink.c: (gst_base_sink_change_state):
11660 segment_stop == -1 at startup.
11662 * gst/base/gstbasetransform.c: (gst_base_transform_event),
11663 (gst_base_transform_change_state):
11664 Init segment values at start.
11666 2005-11-15 Wim Taymans <wim@fluendo.com>
11668 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
11669 0 segment values are 0 in any format.
11671 * gst/base/gstbasetransform.c: (gst_base_transform_event):
11672 * gst/base/gstbasetransform.h:
11673 Parse newsegment correctly in basetransform
11675 * gst/elements/gstidentity.c: (gst_identity_transform_ip):
11676 Sync to clock using updated segment values.
11678 2005-11-15 Andy Wingo <wingo@pobox.com>
11680 * check/gst/gstpipeline.c (test_base_time): Add check that the
11681 base time and stream time are reset correctly.
11683 2005-11-15 Wim Taymans <wim@fluendo.com>
11685 * docs/design/part-TODO.txt:
11686 Some more TODO items.
11688 2005-11-15 Andy Wingo <wingo@pobox.com>
11690 * gst/elements/gstfakesrc.c (gst_fake_src_create): It's not an
11691 error if the user selected "no clock" as the clocking method.
11693 * check/gst/gstpipeline.c (test_base_time): New test for buffer
11694 timestamps with live capture.
11696 * gst/elements/gstfakesrc.c (gst_fake_src_create): If the datarate
11697 is 0 but we are a live source, timestamp the buffers using the
11700 2005-11-14 Stefan Kost <ensonic@users.sf.net>
11702 * docs/gst/gstreamer-sections.txt:
11704 * gst/gstghostpad.c:
11709 2005-11-14 Wim Taymans <wim@fluendo.com>
11712 add suppressions from Wim's Debian machine
11714 2005-11-14 Thomas Vander Stichele <thomas at apestaart dot org>
11717 add suppressions from Andy's AMD64 Ubuntu machine
11719 2005-11-14 Andy Wingo <wingo@pobox.com>
11721 * gst/gstpad.c (gst_pad_set_active): Change docs; parent's
11722 STATE_LOCK not necessary. Fixes #311489.
11724 * gst/gsterror.c (FILE_A_BUG): Be polite *and* helpful. Fixes
11727 * gst/gstindex.c (gst_index_add_object): Note in the docs that
11728 this function is not implemented.
11730 2005-11-14 Julien MOUTTE <julien@moutte.net>
11732 * gst/base/gstbasetransform.c:
11733 (gst_base_transform_prepare_output_buf):
11734 Ref the source pad caps while we need them.
11737 2005-11-11 Wim Taymans <wim@fluendo.com>
11739 * docs/gst/gstreamer-sections.txt:
11740 Added some docs for GstCollectData.
11742 * gst/base/gstadapter.c:
11743 Some small code example fix.
11745 * gst/base/gstcollectpads.c:
11746 * gst/base/gstcollectpads.h:
11747 Document some more.
11749 2005-11-11 Thomas Vander Stichele <thomas at apestaart dot org>
11751 * configure.ac: back to HEAD
11753 === release 0.9.5 ===
11755 2005-11-11 Thomas Vander Stichele <thomas at apestaart dot org>
11758 releasing 0.9.5, "Bike Lunch Day"
11760 2005-11-11 Wim Taymans <wim@fluendo.com>
11762 * gst/gstbuffer.c: (_gst_buffer_copy):
11765 * gst/gstcaps.c: (gst_caps_is_equal):
11767 Make _is_equal fast in the trivial cases.
11769 * gst/gstminiobject.c:
11770 * gst/gstminiobject.h:
11771 More docs. Spifify .h file.
11776 2005-11-11 Wim Taymans <wim@fluendo.com>
11778 * gst/base/gstbasetransform.c:
11779 (gst_base_transform_prepare_output_buf),
11780 (gst_base_transform_handle_buffer):
11782 If we're processing a buffer and need to allocate an output
11783 buffer, we cannot accept a format change. If we did get a
11784 format change, we have to alloc a buffer ourselves of the
11787 2005-11-11 Wim Taymans <wim@fluendo.com>
11789 * gst/gstpad.c: (gst_pad_get_caps), (gst_pad_peer_get_caps):
11790 While checking the flag for reentrancy in the gstcaps function
11791 is nice to detect recursive invocations, it also makes it
11792 impossible to call getcaps from multiple threads, which must be
11793 possible. So, checking for recursive calls has to go.
11795 2005-11-11 Michael Smith <msmith@fluendo.com>
11797 * gst/base/gstbasesink.c: (gst_base_sink_do_sync):
11798 Don't sync on buffers that fall partially outside our current
11799 segment. Prevents an assertion failure/abort playing some files.
11801 2005-11-10 Andy Wingo <wingo@pobox.com>
11803 * check/gst/gstbin.c (test_message_state_changed_children): Style
11806 * gst/gstbus.c (poll_destroy, poll_func, gst_bus_poll): Implement
11807 gst_bus_poll with the signal watch. Ensures that poll and a signal
11808 watch see the same messages.
11810 * check/gst/gstbus.c (test_watch_with_poll): New test, checks that
11811 a poll and a watch at the same time get the same messages.
11813 2005-11-10 Thomas Vander Stichele <thomas at apestaart dot org>
11815 * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps):
11816 * gst/gstcaps.c: (gst_caps_intersect):
11817 Don't call gst_caps_do_simplify - it doesn't respect order of caps
11818 and it's not needed.
11820 2005-11-10 Wim Taymans <wim@fluendo.com>
11822 * docs/design/part-TODO.txt:
11825 2005-11-10 Wim Taymans <wim@fluendo.com>
11827 * gst/base/gstbasesink.c: (gst_base_sink_do_sync):
11828 * gst/base/gstbasesrc.c: (gst_base_src_wait),
11829 (gst_base_src_do_sync), (gst_base_src_get_range):
11830 Implement clock sync in base class.
11832 2005-11-10 Thomas Vander Stichele <thomas at apestaart dot org>
11834 patch by: Tim-Philipp Müller <tim at centricular dot net>
11836 * gst/gststructure.c: (gst_structure_parse_field),
11837 (gst_structure_from_string):
11838 Forward-port a 0.8 patch to handle escaped spaces in structure string,
11839 so that gst_parse_launch() can deal with spaces in filtered link
11840 caps (fixes #164479)
11841 * check/gst/capslist.h:
11842 * check/gst/gststructure.c: (GST_START_TEST):
11843 add unit tests for this change
11845 2005-11-10 Wim Taymans <wim@fluendo.com>
11847 * docs/gst/gstreamer-sections.txt:
11848 * gst/gstelement.c:
11849 * gst/gstelement.h:
11850 Fix docs, move some STATE macros to private.
11852 2005-11-10 Wim Taymans <wim@fluendo.com>
11854 * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
11855 Added check for bug #317341
11859 Some more spiffifying.
11861 * gst/gstghostpad.c: (gst_ghost_pad_do_link):
11862 Call peer linkfunction if we are a source pad. Totally fixes
11866 Update docs, source pads should call the peer linkfunction
11867 so they can atomically perform the pad link.
11869 2005-11-09 Wim Taymans <wim@fluendo.com>
11873 Uber-spiffy-spiffify some more.
11875 2005-11-09 Tim-Philipp Müller <tim at centricular dot net>
11877 * gst/base/gstcollectpads.c: (gst_collectpads_add_pad):
11878 * gst/elements/gstfilesink.c: (gst_file_sink_init):
11879 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init):
11880 * gst/gstghostpad.c: (gst_ghost_pad_set_internal),
11881 (gst_ghost_pad_init), (gst_ghost_pad_new_notarget):
11882 * gst/gstpad.c: (gst_pad_init):
11883 Use GST_DEBUG_FUNCPTR() more extensively.
11885 2005-11-09 Wim Taymans <wim@fluendo.com>
11887 * gst/gstobject.c: (gst_object_class_init):
11889 Documentation fixes.
11891 2005-11-09 Edward Hervey <edward@fluendo.com>
11893 * gst/gsttypefindfactory.c:
11896 2005-11-09 Edward Hervey <edward@fluendo.com>
11898 * gst/base/gsttypefindhelper.c:
11899 * gst/gsttypefind.c:
11900 * gst/gsttypefind.h:
11903 2005-11-09 Wim Taymans <wim@fluendo.com>
11905 * gst/gstiterator.c:
11912 2005-11-09 Wim Taymans <wim@fluendo.com>
11918 2005-11-09 Wim Taymans <wim@fluendo.com>
11920 * docs/gst/gstreamer-sections.txt:
11921 Moved the message async delivery private lock and cond
11922 to the private section.
11924 * gst/gstmessage.c:
11925 * gst/gstmessage.h:
11928 2005-11-09 Edward Hervey <edward@fluendo.com>
11930 * docs/gst/gstreamer-sections.txt:
11933 Document GstURIHandler
11935 2005-11-09 Wim Taymans <wim@fluendo.com>
11937 * gst/gstiterator.c: (gst_iterator_fold), (gst_iterator_foreach),
11938 (gst_iterator_find_custom):
11939 * gst/gstiterator.h:
11942 2005-11-09 Wim Taymans <wim@fluendo.com>
11945 Document another field.
11947 * gst/gststructure.c:
11948 * gst/gststructure.h:
11951 2005-11-09 Wim Taymans <wim@fluendo.com>
11954 Documented structs.
11956 2005-11-09 Wim Taymans <wim@fluendo.com>
11958 * docs/gst/gstreamer-sections.txt:
11959 Added some new macros.
11966 2005-11-09 Wim Taymans <wim@fluendo.com>
11968 * docs/design/part-TODO.txt:
11969 Some more items for the TODO
11975 2005-11-09 Andy Wingo <wingo@pobox.com>
11977 * gst/base/gstbasesink.c: Add the beginning of docs here -- have
11978 to work on something else now tho...
11980 * gst/base/gstadapter.c: More adapter docs.
11982 * gst/elements/gstfilesink.c (gst_file_sink_start)
11983 (gst_file_sink_stop): New functions, replace the state change
11985 (gst_file_sink_class_init): Hook up the start and stop functions.
11986 (gst_file_sink_base_init): Don't set the state change handler any
11987 more. It was a bit ugly too, being set from here...
11988 (gst_file_sink_get_property, gst_file_sink_set_property):
11990 (gst_file_sink_set_location): More robust check that doesn't call
11991 GST_STATE. Ugggggg.
11993 2005-11-08 Tim-Philipp Müller <tim at centricular dot net>
11995 * gst/base/gstbasetransform.c: (gst_base_transform_event):
11996 Hold STREAM_LOCK while pushing newsegment or tag events as well.
11998 2005-11-08 Wim Taymans <wim@fluendo.com>
12000 * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
12001 (gst_base_sink_do_sync), (gst_base_sink_handle_event),
12002 (gst_base_sink_chain), (gst_base_sink_change_state):
12003 * gst/base/gstbasesink.h:
12004 * gst/base/gstbasesrc.h:
12005 * gst/gstelement.h:
12007 Avoid excessive typechecking in macros.
12009 * gst/gstminiobject.c: (gst_mini_object_get_type),
12010 (gst_mini_object_init), (gst_mini_object_new),
12011 (gst_mini_object_free):
12012 * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
12013 (gst_object_finalize):
12014 Remove cruft code, optimize alloc_trace.
12016 2005-11-07 Thomas Vander Stichele <thomas at apestaart dot org>
12018 * docs/faq/gst-uninstalled:
12019 fix up PS1 for systems that try to reset it
12021 2005-11-07 Wim Taymans <wim@fluendo.com>
12023 * gst/base/gstbasesrc.c: (gst_base_src_init),
12024 (gst_base_src_get_range):
12025 Set the segment_end to -1 initially. Fixed typefind.
12027 2005-11-07 Tim-Philipp Müller <tim at centricular dot net>
12029 * gst/base/gstadapter.c:
12030 Debug category should be 'adapter', not 'GstAdapter'.
12032 * gst/base/gstcollectpads.c: (gst_collectpads_base_init),
12033 (gst_collectpads_class_init), (gst_collectpads_init),
12034 (gst_collectpads_peek), (gst_collectpads_pop),
12035 (gst_collectpads_event), (gst_collectpads_chain):
12036 Add debug category and some debugging output. Use boilerplate
12037 macros. Remove some extraneous words from docs.
12039 2005-11-05 Andy Wingo <wingo@pobox.com>
12041 * gst/base/gstpushsrc.c: Shorten by 30% via use of boilerplate
12044 2005-11-04 Stefan Kost <ensonic@users.sf.net>
12046 * docs/gst/gstreamer-sections.txt:
12049 * gst/gstminiobject.h:
12054 2005-11-04 Wim Taymans <wim@fluendo.com>
12056 * gst/base/gstbasesrc.c: (gst_base_src_get_range):
12057 Small update to stop at the configured segment_end
12060 2005-11-04 Stefan Kost <ensonic@users.sf.net>
12062 * gst/gstregistry.c:
12063 * gst/gstregistry.h:
12066 2005-11-04 Edward Hervey <edward@fluendo.com>
12068 * gst/base/gstbasesrc.c: (gst_base_src_get_range):
12069 Check if we are doing a segment seek and have arrived at the
12070 end of that segment.
12072 2005-11-04 Wim Taymans <wim@fluendo.com>
12074 * gst/gstbus.c: (gst_bus_post), (gst_bus_set_sync_handler):
12075 Don't leak a mutex unlock in case of an error.
12080 2005-11-04 Wim Taymans <wim@fluendo.com>
12082 * gst/gstbus.c: (gst_bus_class_init), (gst_bus_init),
12084 Get the context to wake up only once.
12086 2005-11-03 Wim Taymans <wim@fluendo.com>
12088 * check/states/sinks.c: (GST_START_TEST):
12089 Uncomment fixed check.
12091 * docs/design/part-TODO.txt:
12094 * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
12095 (gst_base_sink_handle_object), (gst_base_sink_do_sync),
12096 (gst_base_sink_get_position):
12097 If we are going to PLAYING, post the right pending state
12098 when we post the intermediate paused message.
12100 * gst/gstelement.c: (gst_element_continue_state),
12101 (gst_element_set_state_func), (gst_element_change_state):
12102 Don't post state changes that were between the same state
12103 and were not ASYNC.
12105 2005-11-03 Stefan Kost <ensonic@users.sf.net>
12107 * docs/gst/gstreamer-sections.txt:
12110 * gst/gstminiobject.h:
12113 more docs and doc style fixes
12115 2005-11-03 Stefan Kost <ensonic@users.sf.net>
12117 * docs/gst/gstreamer-sections.txt:
12118 * gst/gstelement.c:
12119 * gst/gstminiobject.c:
12122 2005-11-03 Andy Wingo <wingo@pobox.com>
12124 * check/states/sinks.c (test_livesrc_sink): Add checks that the
12125 state-changed messages actually have the right order and the right
12128 2005-11-03 Wim Taymans <wim@fluendo.com>
12130 * check/states/sinks.c: (GST_START_TEST), (gst_object_suite):
12131 Added some more checks. Specifically the case where NO_PREROLL
12132 elements are in the pipeline.
12134 * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
12135 (gst_base_sink_handle_object), (gst_base_sink_do_sync),
12136 (gst_base_sink_get_position):
12137 Post READY->PAUSED state change messages too.
12138 Fix bug where VOID was posted as pending state...
12140 * gst/gstbin.c: (gst_bin_recalc_state):
12141 use _element_continue_state() to continue the state change.
12143 * gst/gstelement.c: (gst_element_continue_state),
12144 (gst_element_commit_state), (gst_element_set_state_func),
12145 (gst_element_change_state), (gst_element_change_state_func):
12146 Lots of state change cleanups, assign the STATE_RETURN in
12147 a new continue_state() function that also propagates the
12148 last return value from a state change to the app.
12149 Update some debug statements with proper category.
12151 2005-11-03 Wim Taymans <wim@fluendo.com>
12153 * docs/design/part-events.txt:
12154 * docs/design/part-gstpipeline.txt:
12155 * docs/design/part-messages.txt:
12156 * docs/design/part-overview.txt:
12157 * docs/design/part-seeking.txt:
12158 * docs/design/part-states.txt:
12159 * docs/design/part-trickmodes.txt:
12160 * docs/manual/advanced-position.xml:
12161 Small docs updates.
12164 People think !! is ugly, this looks better.
12166 * gst/gstpad.c: (gst_pad_set_blocked_async):
12167 Remove !! since it's fixed elsewhere now.
12169 2005-11-03 Tim-Philipp Müller <tim at centricular dot net>
12171 * gst/gstminiobject.h:
12173 Add !! to _FLAG_IS_SET macros to make the result boolean.
12175 2005-11-03 Edward Hervey <edward@fluendo.com>
12177 * gst/gstpad.c: (gst_pad_set_blocked_async):
12178 comparing a flag and a gboolean rarely returns coherent results...
12179 Added two characters (!!) to make that work correctly.
12181 2005-11-03 Tim-Philipp Müller <tim at centricular dot net>
12183 * gst/gstbus.c: (gst_bus_class_init):
12186 * gst/gstqueue.c: (gst_queue_loop):
12187 Don't assume a miniobject that isn't a buffer is an
12188 event (it could be that there is a refcounting
12189 problem somewhere and the pointer is stale and
12190 refers to an already destroyed miniobject).
12192 2005-11-03 Julien MOUTTE <julien@moutte.net>
12194 * gst/gstpad.c: (gst_pad_alloc_buffer): Fix some typos.
12196 2005-11-03 Tim-Philipp Müller <tim at centricular dot net>
12198 * docs/manual/advanced-position.xml:
12199 Update seek example and explanations to current 0.9 API.
12201 * gst/elements/gsttypefindelement.c:
12202 (gst_type_find_element_activate):
12203 Remove FIXME comment now that the found caps
12206 2005-11-03 Thomas Vander Stichele <thomas at apestaart dot org>
12208 * gst/gstregistryxml.c: (load_feature):
12209 Add another GST_STR_NULL instance
12211 2005-11-02 Edward Hervey <edward@fluendo.com>
12213 * gst/gstpad.c: (handle_pad_block):
12214 Follow-up to Wim's patch, solves deadlock for blocked and flushing pads
12216 2005-11-02 Wim Taymans <wim@fluendo.com>
12221 * gst/gstelement.c: (gst_element_commit_state):
12222 Remove unused value.
12224 * gst/gstiterator.c:
12225 Mention that the returned element is reffed in the docs.
12227 2005-11-02 Wim Taymans <wim@fluendo.com>
12229 * gst/gstpad.c: (gst_pad_alloc_buffer), (handle_pad_block),
12230 (gst_pad_push), (gst_pad_push_event):
12231 Unlock blocked pads when they are flushed.
12233 2005-11-02 Thomas Vander Stichele <thomas at apestaart dot org>
12236 * docs/gst/gstreamer-sections.txt:
12239 * gst/gstregistry.c: (gst_registry_scan_path_level):
12240 fix for a nasty little missed situation where an installed plug-in
12241 which was in the cache did not get overridden by an uninstalled one
12242 which was earlier in the plugin path because the newly created plugin
12243 for the uninstalled one (not in the registry) didn't get its
12244 ->registered set to TRUE
12246 2005-11-02 Tim-Philipp Müller <tim at centricular dot net>
12248 * gst/base/gstcollectpads.c: (gst_collectpads_set_function),
12249 (gst_collectpads_add_pad), (gst_collectpads_remove_pad),
12250 (gst_collectpads_is_active), (gst_collectpads_collect),
12251 (gst_collectpads_collect_range), (gst_collectpads_start),
12252 (gst_collectpads_stop), (gst_collectpads_peek),
12253 (gst_collectpads_pop), (gst_collectpads_available),
12254 (gst_collectpads_read), (gst_collectpads_flush):
12255 Guard public API with assertions.
12258 Fix docs for gst_pad_set_link_function().
12260 2005-11-02 Johan Dahlin <johan@gnome.org>
12262 * gst/elements/gsttypefindelement.c (gst_type_find_element_activate):
12263 Unref found_caps after we used it.
12265 2005-11-02 Tim-Philipp Müller <tim at centricular dot net>
12267 * gst/base/gstcollectpads.c: (gst_collectpads_peek):
12268 Don't try to ref NULL.
12270 2005-11-02 Thomas Vander Stichele <thomas at apestaart dot org>
12272 * win32/common/config.h.in:
12273 provide a GST_FUNCTION that just gives a string for now
12275 2005-11-02 Thomas Vander Stichele <thomas at apestaart dot org>
12277 * win32/common/gstenumtypes.c: (register_gst_object_flags),
12278 (gst_object_flags_get_type), (register_gst_bin_flags),
12279 (gst_bin_flags_get_type), (register_gst_buffer_flag),
12280 (gst_buffer_flag_get_type), (register_gst_bus_flags),
12281 (gst_bus_flags_get_type), (register_gst_bus_sync_reply),
12282 (gst_bus_sync_reply_get_type), (register_gst_clock_return),
12283 (gst_clock_return_get_type), (register_gst_clock_entry_type),
12284 (gst_clock_entry_type_get_type), (register_gst_clock_flags),
12285 (gst_clock_flags_get_type), (register_gst_state),
12286 (gst_state_get_type), (register_gst_state_change_return),
12287 (gst_state_change_return_get_type), (register_gst_state_change),
12288 (gst_state_change_get_type), (register_gst_element_flags),
12289 (gst_element_flags_get_type), (register_gst_core_error),
12290 (gst_core_error_get_type), (register_gst_library_error),
12291 (gst_library_error_get_type), (register_gst_resource_error),
12292 (gst_resource_error_get_type), (register_gst_stream_error),
12293 (gst_stream_error_get_type), (register_gst_event_type),
12294 (gst_event_type_get_type), (register_gst_seek_type),
12295 (gst_seek_type_get_type), (register_gst_seek_flags),
12296 (gst_seek_flags_get_type), (register_gst_format),
12297 (gst_format_get_type), (register_gst_index_certainty),
12298 (gst_index_certainty_get_type), (register_gst_index_entry_type),
12299 (gst_index_entry_type_get_type),
12300 (register_gst_index_lookup_method),
12301 (gst_index_lookup_method_get_type), (register_gst_assoc_flags),
12302 (gst_assoc_flags_get_type), (register_gst_index_resolver_method),
12303 (gst_index_resolver_method_get_type), (register_gst_index_flags),
12304 (gst_index_flags_get_type), (register_gst_debug_level),
12305 (gst_debug_level_get_type), (register_gst_debug_color_flags),
12306 (gst_debug_color_flags_get_type), (register_gst_iterator_result),
12307 (gst_iterator_result_get_type), (register_gst_iterator_item),
12308 (gst_iterator_item_get_type), (register_gst_message_type),
12309 (gst_message_type_get_type), (register_gst_mini_object_flags),
12310 (gst_mini_object_flags_get_type), (register_gst_pad_link_return),
12311 (gst_pad_link_return_get_type), (register_gst_flow_return),
12312 (gst_flow_return_get_type), (register_gst_activate_mode),
12313 (gst_activate_mode_get_type), (register_gst_pad_direction),
12314 (gst_pad_direction_get_type), (register_gst_pad_flags),
12315 (gst_pad_flags_get_type), (register_gst_pad_presence),
12316 (gst_pad_presence_get_type), (register_gst_pad_template_flags),
12317 (gst_pad_template_flags_get_type), (register_gst_pipeline_flags),
12318 (gst_pipeline_flags_get_type), (register_gst_plugin_error),
12319 (gst_plugin_error_get_type), (register_gst_plugin_flags),
12320 (gst_plugin_flags_get_type), (register_gst_rank),
12321 (gst_rank_get_type), (register_gst_query_type),
12322 (gst_query_type_get_type), (register_gst_tag_merge_mode),
12323 (gst_tag_merge_mode_get_type), (register_gst_tag_flag),
12324 (gst_tag_flag_get_type), (register_gst_task_state),
12325 (gst_task_state_get_type), (register_gst_alloc_trace_flags),
12326 (gst_alloc_trace_flags_get_type),
12327 (register_gst_type_find_probability),
12328 (gst_type_find_probability_get_type), (register_gst_uri_type),
12329 (gst_uri_type_get_type), (register_gst_parse_error),
12330 (gst_parse_error_get_type):
12331 * win32/common/gstversion.h:
12332 update win32 copies
12334 2005-11-01 Luca Ognibene <luogni@tin.it>
12337 fix docs. popt is dead, long live GOption.
12339 2005-10-31 Wim Taymans <wim@fluendo.com>
12344 2005-10-31 Andy Wingo <wingo@pobox.com>
12348 * gst/gstqueue.c (gst_queue_chain): Fix downstream leaky mode.
12350 * gst/gstobject.c (gst_object_dispatch_properties_changed): No
12351 need to serialize property notifications on GLib 2.8. GLib 2.6 has
12352 the possibility of deadlocks here if code calling notify() or
12353 set() has a lock that can be taken in another notify handler (ABBA
12354 with class lock and e.g. python GIL state lock).
12356 2005-10-28 Julien MOUTTE <julien@moutte.net>
12358 * gst/gstbus.c: Doc updates.
12360 2005-10-28 Wim Taymans <wim@fluendo.com>
12362 * docs/design/part-TODO.txt:
12363 * gst/gstiterator.c:
12364 * gst/gstsystemclock.c:
12365 * gst/gstsystemclock.h:
12368 2005-10-28 Edward Hervey <edward@fluendo.com>
12370 * docs/gst/gstreamer-docs.sgml:
12371 * docs/gst/gstreamer-sections.txt:
12372 the GstURIType documentation page is private, it only defines GstURIType
12373 which should be defined in the GstURIHandler page
12375 2005-10-28 Thomas Vander Stichele <thomas at apestaart dot org>
12377 * gst/gstbin.c: (gst_bin_class_init):
12380 Documentation updates.
12382 2005-10-28 Wim Taymans <wim@fluendo.com>
12384 * docs/gst/gstreamer-sections.txt:
12387 Documented the clocks.
12389 2005-10-28 Stefan Kost <ensonic@users.sf.net>
12391 * docs/gst/gstreamer-sections.txt:
12392 move some macros to private sections
12393 * gst/gstminiobject.c:
12394 * gst/gstminiobject.h:
12395 add descriptions provided by ds and some more
12397 mark macro as to be removed
12399 2005-10-28 Wim Taymans <wim@fluendo.com>
12401 * docs/design/part-TODO.txt:
12402 Add an item to TODO.
12404 * gst/gstiterator.c: (gst_iterator_fold),
12405 (gst_iterator_find_custom):
12406 * gst/gstiterator.h:
12409 2005-10-28 Wim Taymans <wim@fluendo.com>
12411 * gst/base/gstbasetransform.c: (gst_base_transform_class_init),
12412 (gst_base_transform_init):
12415 * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_loop):
12416 An EOS event marks the queue as completely filled.
12418 2005-10-27 Wim Taymans <wim@fluendo.com>
12420 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
12421 (gst_base_sink_do_sync), (gst_base_sink_get_position):
12422 Some more debugging.
12424 * gst/base/gstbasetransform.c: (gst_base_transform_finalize),
12425 (gst_base_transform_init), (gst_base_transform_buffer_alloc),
12426 (gst_base_transform_event), (gst_base_transform_getrange),
12427 (gst_base_transform_chain):
12428 * gst/base/gstbasetransform.h:
12430 Protect transform and concurrent buffer alloc with a new lock.
12431 Try not to break ABI/API.
12433 2005-10-27 Wim Taymans <wim@fluendo.com>
12435 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
12436 (gst_base_src_init), (gst_base_src_query),
12437 (gst_base_src_default_newsegment),
12438 (gst_base_src_configure_segment), (gst_base_src_do_seek),
12439 (gst_base_src_send_event), (gst_base_src_event_handler),
12440 (gst_base_src_pad_get_range), (gst_base_src_loop),
12441 (gst_base_src_unlock), (gst_base_src_default_negotiate),
12442 (gst_base_src_start), (gst_base_src_deactivate),
12443 (gst_base_src_activate_push), (gst_base_src_change_state):
12444 Move some stuff around and cleanup things.
12446 2005-10-27 Tim-Philipp Müller <tim at centricular dot net>
12448 * gst/base/gstbasesrc.c: (gst_base_src_query):
12449 Add missing break statements.
12451 2005-10-27 Wim Taymans <wim@fluendo.com>
12453 * check/gst/gstbin.c: (GST_START_TEST):
12454 An extra refcount is taken in basesrc.
12456 * gst/base/gstbasesrc.c: (gst_base_src_init), (gst_base_src_query),
12457 (gst_base_src_get_range), (gst_base_src_pad_get_range),
12458 (gst_base_src_loop):
12459 Small cleanups, check for flushing after being unlocked from the
12460 LIVE_LOCK. take refcounts correctly (not yet everywhere).
12461 Don't send out EOS when going to READY.
12463 2005-10-27 Wim Taymans <wim@fluendo.com>
12465 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
12466 (gst_base_sink_get_position):
12469 * gst/gstbin.c: (message_check), (bin_replace_message),
12470 (bin_remove_messages), (is_eos), (gst_bin_add_func),
12471 (update_degree), (gst_bin_sort_iterator_next), (bin_bus_handler),
12472 (bin_query_duration_init), (bin_query_duration_fold),
12473 (bin_query_duration_done), (bin_query_generic_fold),
12475 * tools/gst-launch.c: (main):
12478 2005-10-26 Stefan Kost <ensonic@users.sf.net>
12480 * examples/controller/audio-example.c: (main):
12481 * examples/queue/queue.c: (event_loop):
12482 * gst/base/gstbasetransform.h:
12483 * gst/gstelement.c: (gst_element_send_event):
12485 * gst/gstpad.c: (gst_pad_send_event):
12488 changing log priority in error situations
12490 2005-10-25 Wim Taymans <wim@fluendo.com>
12492 * gst/gstbin.c: (message_check), (bin_replace_message),
12493 (bin_remove_messages), (is_eos), (gst_bin_add_func),
12494 (update_degree), (gst_bin_sort_iterator_next), (bin_bus_handler),
12495 (bin_query_duration_init), (bin_query_duration_fold),
12496 (bin_query_duration_done), (bin_query_generic_fold),
12498 Some doc and debug updates.
12499 Cache previously requested query DURATION for speed. invalidate
12500 cached duration if element posts a DURATION message.
12502 2005-10-25 Wim Taymans <wim@fluendo.com>
12504 * docs/design/part-TODO.txt:
12507 * gst/gstbin.c: (message_check), (bin_replace_message),
12508 (bin_remove_messages), (is_eos), (gst_bin_add_func),
12509 (update_degree), (gst_bin_sort_iterator_next), (bin_bus_handler),
12510 (bin_query_duration_init), (bin_query_duration_fold),
12511 (bin_query_duration_done), (bin_query_generic_fold),
12513 Handle SEGMENT_START/DONE messages correctly.
12514 More evolved query algorithm that handles duration queries
12517 * gst/gstelement.c: (gst_element_send_event), (gst_element_query),
12518 (gst_element_get_state_func), (gst_element_abort_state),
12519 (gst_element_commit_state), (gst_element_lost_state):
12520 Some more debugging.
12522 * gst/gstmessage.h:
12525 2005-10-25 Wim Taymans <wim@fluendo.com>
12527 * gst/base/gstbasesink.c: (gst_base_sink_get_position):
12528 Don't use invalid stream_time.
12530 * gst/gstevent.c: (gst_event_new_newsegment):
12531 stream_time in newsegment cannot be undefined.
12533 2005-10-24 Wim Taymans <wim@fluendo.com>
12538 * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
12540 Fix potential deadlock when QUEUE_LOCK is taken before STREAM_LOCK.
12542 2005-10-24 Stefan Kost <ensonic@users.sf.net>
12544 * docs/libs/tmpl/gstdparam.sgml:
12545 * docs/libs/tmpl/gstdplinint.sgml:
12546 * docs/libs/tmpl/gstdpman.sgml:
12547 * docs/libs/tmpl/gstdpsmooth.sgml:
12548 * docs/libs/tmpl/gstunitconvert.sgml:
12551 2005-10-24 Thomas Vander Stichele <thomas at apestaart dot org>
12556 === release 0.9.4 ===
12558 2005-10-23 Thomas Vander Stichele <thomas at apestaart dot org>
12561 releasing 0.9.4, "Tyrannosaurus Rex"
12563 2005-10-23 Tim-Philipp Müller <tim at centricular dot net>
12565 * gst/elements/gstfilesink.c: (gst_file_sink_do_seek),
12566 (gst_file_sink_get_current_offset):
12567 Use fseeko() and ftello() if available. When falling back on
12568 lseek() to get the current offset, fflush() first to make sure
12569 everything is up-to-date and we get the right offset.
12571 2005-10-23 Thomas Vander Stichele <thomas at apestaart dot org>
12573 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
12574 * gst/base/gstbasesrc.c: (gst_base_src_loop):
12575 * gst/gsterror.c: (_gst_stream_errors_init):
12577 * gst/gstqueue.c: (gst_queue_loop):
12579 remove prematurely added error category and clean up the instances
12581 2005-10-21 Wim Taymans <wim@fluendo.com>
12583 * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
12584 (gst_base_sink_get_position), (gst_base_sink_query),
12585 (gst_base_sink_change_state):
12586 Simply set the right flag when going to playing, that's all
12587 we need to do instead of calling a function inside the object
12588 lock (that could take the lock as well and deadlock)
12590 2005-10-21 Wim Taymans <wim@fluendo.com>
12592 * gst/base/gstbasesrc.c: (gst_base_src_do_seek),
12593 (gst_base_src_loop):
12594 Don't warn, the peer element knows what to do best when
12595 the seek failed, it might try something else.
12597 2005-10-21 Wim Taymans <wim@fluendo.com>
12599 * gst/base/gstbasesrc.c: (gst_base_src_init),
12600 (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
12603 2005-10-21 Wim Taymans <wim@fluendo.com>
12605 * docs/design/part-segments.txt:
12608 * gst/elements/gstcapsfilter.c: (gst_capsfilter_prepare_buf):
12609 Correctly set caps, even on the subbufer.
12611 2005-10-21 Wim Taymans <wim@fluendo.com>
12613 * docs/gst/gstreamer-docs.sgml:
12614 * docs/gst/gstreamer-sections.txt:
12615 * gst/gstelement.h:
12618 * gst/gstmessage.h:
12621 * gst/gsttask.c: (gst_task_finalize), (gst_task_func):
12625 And 2% more doc coverage.
12627 2005-10-21 Andy Wingo <wingo@pobox.com>
12629 * gst/base/gstbasesrc.c (gst_base_src_query): Clean up percent
12630 position reporting.
12632 2005-10-20 Wim Taymans <wim@fluendo.com>
12634 * gst/gsterror.c: (gst_error_get_message):
12637 * gst/gststructure.c:
12642 2005-10-20 Wim Taymans <wim@fluendo.com>
12647 Another 1% more coverage.
12649 2005-10-20 Wim Taymans <wim@fluendo.com>
12651 * docs/gst/gstreamer-sections.txt:
12652 * gst/gstelement.c: (gst_element_get_state_func),
12653 (gst_element_abort_state), (gst_element_commit_state),
12654 (gst_element_lost_state):
12656 * gst/gstquery.c: (gst_query_set_position),
12657 (gst_query_parse_position), (gst_query_set_duration),
12658 (gst_query_parse_duration), (gst_query_new_convert):
12660 Yay! 1% more docs coverage.
12662 2005-10-20 Wim Taymans <wim@fluendo.com>
12665 * gst/gstquery.c: (gst_query_set_position),
12666 (gst_query_parse_position), (gst_query_set_duration),
12667 (gst_query_parse_duration), (gst_query_new_convert):
12669 * gst/gstutils.c: (gst_element_query_convert):
12671 Docs and consistency fixes.
12673 2005-10-20 Wim Taymans <wim@fluendo.com>
12679 2005-10-20 Wim Taymans <wim@fluendo.com>
12681 * gst/gstbin.c: (message_check), (bin_replace_message),
12682 (bin_remove_messages), (is_eos), (gst_bin_add_func),
12683 (update_degree), (gst_bin_sort_iterator_next),
12684 (gst_bin_change_state_func), (gst_bin_dispose), (bin_bus_handler):
12685 Reworked the message handling a bit, cache the messages instead of
12686 only the senders. alows us to do more in the future.
12688 2005-10-20 Wim Taymans <wim@fluendo.com>
12690 * docs/design/part-TODO.txt:
12693 * gst/base/gstbasesink.c: (gst_base_sink_get_position),
12694 (gst_base_sink_query):
12695 Don't use clock time to report position when in EOS.
12697 2005-10-20 Tim-Philipp Müller <tim at centricular dot net>
12699 * tools/gst-inspect.c: (print_interfaces),
12700 (print_element_properties_info), (print_element_info):
12701 Fix interface output with gst-inspect -a; don't print
12702 newlines after double/float properties.
12704 2005-10-20 Wim Taymans <wim@fluendo.com>
12706 * gst/base/gstbasesink.c: (gst_base_sink_get_position),
12707 (gst_base_sink_query):
12708 Speed up current position calculation.
12710 * gst/base/gstbasesrc.c: (gst_base_src_query),
12711 (gst_base_src_default_newsegment):
12712 Correctly set stream position in newsegment.
12714 * gst/gstbin.c: (gst_bin_add_func), (add_to_queue),
12715 (update_degree), (gst_bin_sort_iterator_next),
12716 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free):
12717 * gst/gstmessage.c: (gst_message_new_custom):
12718 Clean up debugging info
12720 * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
12721 (gst_queue_loop), (gst_queue_handle_src_query):
12724 2005-10-19 Wim Taymans <wim@fluendo.com>
12726 * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
12727 (gst_base_sink_handle_object), (gst_base_sink_query), (do_playing):
12728 Fix query handling again.
12730 2005-10-19 Wim Taymans <wim@fluendo.com>
12732 * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
12733 (gst_base_sink_handle_object), (gst_base_sink_query), (do_playing):
12734 * gst/base/gstbasesrc.c: (gst_base_src_query):
12735 * gst/elements/gstfilesink.c: (gst_file_sink_query):
12736 * gst/elements/gsttypefindelement.c:
12737 (gst_type_find_handle_src_query), (find_element_get_length),
12738 (gst_type_find_element_activate):
12741 * gst/gstquery.c: (gst_query_new_position),
12742 (gst_query_set_position), (gst_query_parse_position),
12743 (gst_query_new_duration), (gst_query_set_duration),
12744 (gst_query_parse_duration), (gst_query_set_segment),
12745 (gst_query_parse_segment):
12747 Bundling query position/duration is not a good idea since duration
12748 does not change much and we don't want to recalculate it for every
12749 position query, so they are separated again..
12750 Base value in segment query is not needed.
12752 * gst/gstqueue.c: (gst_queue_handle_src_query):
12753 * gst/gstutils.c: (gst_element_query_position),
12754 (gst_element_query_duration), (gst_pad_query_position),
12755 (gst_pad_query_duration):
12757 Updates for query API change.
12758 Added some docs here and there.
12760 2005-10-19 Thomas Vander Stichele <thomas at apestaart dot org>
12762 * check/gst/gstbin.c: (GST_START_TEST):
12763 * check/gst/gstghostpad.c: (GST_START_TEST):
12764 * check/pipelines/cleanup.c: (GST_START_TEST):
12765 wait on thread to die so we can check refcount correctly
12767 2005-10-18 Wim Taymans <wim@fluendo.com>
12769 * check/pipelines/stress.c: (GST_START_TEST):
12770 Make check a little more time consuming.
12772 2005-10-18 Wim Taymans <wim@fluendo.com>
12774 * check/Makefile.am:
12775 * check/pipelines/stress.c: (GST_START_TEST),
12776 (simple_launch_lines_suite), (main):
12777 Small state change torture test.
12779 * docs/design/part-states.txt:
12780 * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
12781 (gst_base_sink_handle_object), (gst_base_sink_event), (do_playing),
12782 (gst_base_sink_change_state):
12783 Never take state lock from streaming thread, clean up ugly
12784 hacks. Unfortunatly core does not yet support nice ways to
12785 async commit state.
12787 * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_recalc_state),
12789 Start state recalc if a STATE_DIRTY message is posted, but only
12790 on the toplevel bin.
12792 * gst/gstelement.c: (gst_element_sync_state_with_parent),
12793 (gst_element_get_state_func), (gst_element_abort_state),
12794 (gst_element_commit_state), (gst_element_lost_state),
12795 (gst_element_set_state_func), (gst_element_change_state):
12796 * gst/gstelement.h:
12797 State variables are now protected with the LOCK, the state
12798 lock is only used to serialize _set_state().
12800 2005-10-18 Wim Taymans <wim@fluendo.com>
12802 * check/gst/gstbin.c: (GST_START_TEST):
12803 * check/gst/gstmessage.c: (GST_START_TEST):
12804 * check/gst/gstpipeline.c: (GST_START_TEST), (message_received):
12805 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_recalc_func),
12807 * gst/gstelement.c: (gst_element_abort_state),
12808 (gst_element_commit_state), (gst_element_lost_state):
12809 * gst/gstmessage.c: (gst_message_new_state_changed),
12810 (gst_message_new_state_dirty), (gst_message_new_segment_start),
12811 (gst_message_new_segment_done), (gst_message_new_duration),
12812 (gst_message_parse_state_changed),
12813 (gst_message_parse_segment_start),
12814 (gst_message_parse_segment_done), (gst_message_parse_duration):
12815 * gst/gstmessage.h:
12816 * tools/gst-launch.c: (event_loop):
12817 Seriously, this is better than a previous commit as we only need
12818 to notify the fact that an element changed state in a streaming
12819 thread, marking the state of the parents dirty, hence the
12820 STATE_DIRTY message instead of abusing a boolean in a STATE_CHANGE
12823 2005-10-18 Wim Taymans <wim@fluendo.com>
12825 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_get_state_func),
12826 (gst_bin_recalc_func):
12827 * gst/gstelement.c: (gst_element_set_clock),
12828 (gst_element_abort_state), (gst_element_lost_state):
12829 Cleanups, prepare for state change fixes.
12831 2005-10-18 Wim Taymans <wim@fluendo.com>
12834 * gst/gstelement.c: (gst_element_class_init),
12835 (gst_element_set_state), (gst_element_set_state_func):
12836 * gst/gstelement.h:
12837 Pending ABI changes.
12838 GThreadPool in GstBinClass to monitor async state changes.
12839 state_cookie in GstElement to detect concurrent gst/set state.
12840 set_state is now virtual too in case a very complicated element
12841 has to be constructed.
12843 2005-10-18 Wim Taymans <wim@fluendo.com>
12845 * check/gst/gstbin.c: (GST_START_TEST):
12846 * check/gst/gstmessage.c: (GST_START_TEST):
12847 * check/gst/gstpipeline.c: (GST_START_TEST), (message_received):
12848 * gst/gstbin.c: (bin_bus_handler):
12849 * gst/gstelement.c: (gst_element_commit_state),
12850 (gst_element_lost_state):
12851 * gst/gstmessage.c: (gst_message_new_state_changed),
12852 (gst_message_new_segment_start), (gst_message_new_segment_done),
12853 (gst_message_new_duration), (gst_message_parse_state_changed),
12854 (gst_message_parse_segment_start),
12855 (gst_message_parse_segment_done), (gst_message_parse_duration):
12856 * gst/gstmessage.h:
12857 * tools/gst-launch.c: (event_loop):
12858 Make messages future proof.
12859 state-change gets a flag if it was a message comming from the
12861 segment-start/stop can also be specified in other formats.
12862 A message to notify an app that a pipeline changed playback
12864 Also fix a GstMessage leak in -launch
12866 2005-10-18 Andy Wingo <wingo@pobox.com>
12868 * gst/gstelement.c (gst_element_dispose): More helpful message.
12870 2005-10-18 Thomas Vander Stichele <thomas at apestaart dot org>
12872 reviewed by: <delete if not using a buddy>
12874 * common/gtk-doc.mak:
12876 2005-10-18 Thomas Vander Stichele <thomas at apestaart dot org>
12878 * gst/gstregistry.c: (gst_registry_scan_path_level):
12879 unref a plug-in we get that was already initialized
12881 2005-10-18 Stefan Kost <ensonic@users.sf.net>
12883 * docs/gst/gstreamer-sections.txt:
12884 * docs/libs/gstreamer-libs-sections.txt:
12885 * gst/gstelement.h:
12886 add new api entries
12887 hide internal macro
12889 2005-10-17 Andy Wingo <wingo@pobox.com>
12891 * gst/base/gstcollectpads.c (gst_collectpads_chain): Slight
12894 * gst/Makefile.am (gstenumtypes.c): Threadsafe now.
12896 * gst/gstevent.c (gst_event_new, gst_event_finalize): LOG.
12898 * gst/gstelement.c (gst_element_get_state_func): s/INFO/DEBUG/.
12899 (gst_element_get_state_func): Better debug message.
12900 (gst_element_commit_state): s/INFO/DEBUG/.
12901 (gst_element_lost_state, gst_element_change_state):
12903 * gst/gstmessage.c (gst_message_init): s/INFO/LOG/.
12904 (gst_message_new_custom): s/INFO/LOG/.
12906 2005-10-17 Michael Smith <msmith@fluendo.com>
12908 * gst/base/gstbasesink.c: (gst_base_sink_do_sync):
12909 Check if end time is valid using end time, not start time.
12911 2005-10-17 Stefan Kost <ensonic@users.sf.net>
12913 * check/gst-libs/controller.c: (GST_START_TEST),
12914 (gst_controller_suite):
12915 * libs/gst/controller/gstcontroller.c:
12916 (gst_controlled_property_set_interpolation_mode):
12917 * libs/gst/controller/gstcontroller.h:
12918 * libs/gst/controller/gstinterpolation.c:
12919 * testsuite/controller/.cvsignore:
12920 * testsuite/controller/Makefile.am:
12921 * testsuite/controller/interpolator.c:
12922 merge controller testsuites
12924 remove mem-chunk from docs
12926 2005-10-17 Thomas Vander Stichele <thomas at apestaart dot org>
12928 * gst/gstmemchunk.c:
12929 * gst/gstmemchunk.h:
12930 * gst/gsttrashstack.c:
12931 * gst/gsttrashstack.h:
12932 out. get out. you're fired. to the Attic !
12934 2005-10-17 Thomas Vander Stichele <thomas at apestaart dot org>
12936 * gst/gstcaps.c: (gst_caps_intersect):
12937 fix signedness issues in a (hopefully) correct way
12938 * gst/gstelement.c: (gst_element_pads_activate):
12940 * gst/gstobject.c: (gst_object_set_parent):
12943 2005-10-17 Julien MOUTTE <julien@moutte.net>
12945 * gst/gstvalue.h: Fix prototypes.
12947 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
12949 * docs/gst/gstreamer-sections.txt:
12950 * gst/gst.c: (gst_version_string):
12952 * gst/gstversion.h.in:
12953 * win32/common/libgstreamer.def:
12954 add gst_version_string ()
12956 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
12960 * gst/gst.c: (init_post):
12961 * win32/common/config.h.in:
12963 * gst/gstcaps.c: (gst_caps_intersect):
12964 use gint64, the range could be bigger than a guint
12966 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
12969 document potential problem in 2038
12971 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
12973 * gst/gstcaps.c: (gst_caps_intersect):
12974 Fix guint j diving under 0
12976 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
12979 * win32/common/config.h:
12980 * win32/common/config.h.in:
12981 check for process.h, declares getpid() on Windows
12983 include process.h if we have it
12984 * gst/gstmemchunk.c: (populate), (gst_mem_chunk_new):
12985 * gst/gstmemchunk.h:
12986 fix signedness issues
12987 * win32/common/libgstreamer.def:
12990 2005-10-16 Julien MOUTTE <julien@moutte.net>
12992 * gst/gstcaps.c: (gst_caps_intersect): Fix a bad bug with a simple
12993 fix. Because of unsigned ints, caps intersection was going nuts and
12994 trying to access structures with G_MAXUINT index. That fixes
12995 videotestsrc ! ffmpegcolorspace ! fakesink
12996 * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked): logs
12999 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
13002 use the gettext macro
13003 * gst/elements/gstelements.c:
13005 * gst/indexers/gstindexers.c:
13006 update for GST_PACKAGE_NAME, GST_PACKAGE_ORIGIN
13007 * win32/common/config.h:
13009 * win32/common/config.h.in:
13010 add the template to generate config.h
13011 * win32/common/gstenumtypes.c:
13012 * win32/common/gstversion.h:
13015 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
13017 * gst/gst.c: (gst_version):
13018 * gst/gstversion.h.in:
13021 2005-10-15 Tim-Philipp Müller <tim at centricular dot net>
13024 Oops, add missing closing bracket.
13026 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
13029 use common m4's for argument checking
13031 2005-10-15 Tim-Philipp Müller <tim at centricular dot net>
13033 * docs/gst/gstreamer-sections.txt:
13035 Add GST_EVENT_TYPE_NAME() macro.
13037 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
13040 * gst/gstpluginfeature.c:
13042 privatize more symbols
13044 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
13047 add srcdir, builddir includes to GST_ALL_CFLAGS, since
13048 everything that uses GStreamer API should have the includes
13050 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
13052 * docs/gst/gstreamer-sections.txt:
13053 * gst/gstvalue.c: (gst_date_get_type), (_gst_value_initialize):
13055 give each value a _get_type, removes the DATA exports
13057 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
13061 remove _gst_registry_auto_load, not used anymore
13062 * gst/gstbin.c: (gst_bin_get_type):
13064 * gst/gstelement.c: (gst_element_get_type):
13065 * gst/gstelement.h:
13066 * gst/gstobject.c: (gst_object_get_type):
13068 * gst/gstpad.c: (gst_pad_get_type):
13070 make _get_type functions similar, fixes data export from library
13072 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
13075 correctly make conditionals
13076 * gst/elements/Makefile.am:
13077 * gst/elements/gstelements.c:
13078 fix typo causing fdsrc not to build
13080 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
13082 * testsuite/Makefile.am:
13083 * testsuite/bytestream/.cvsignore:
13084 * testsuite/bytestream/Makefile.am:
13085 * testsuite/bytestream/filepadsink.c:
13086 * testsuite/bytestream/gstbstest.c:
13087 * testsuite/bytestream/test1.c:
13088 * testsuite/bytestream/testfile1:
13089 * testsuite/caps/normalisation.c:
13090 * testsuite/caps/random.c: (main):
13091 * testsuite/cleanup/.cvsignore:
13092 * testsuite/cleanup/Makefile.am:
13093 * testsuite/cleanup/cleanup1.c:
13094 * testsuite/cleanup/cleanup2.c:
13095 * testsuite/cleanup/cleanup3.c:
13096 * testsuite/cleanup/cleanup4.c:
13097 * testsuite/cleanup/cleanup5.c:
13098 * testsuite/controller/interpolator.c:
13099 * testsuite/debug/printf_extension.c: (main):
13100 * testsuite/elements/tee.c:
13101 * testsuite/negotiation/.cvsignore:
13102 * testsuite/negotiation/Makefile.am:
13103 * testsuite/negotiation/pad_link.c:
13104 * testsuite/pad/Makefile.am:
13105 * testsuite/pad/chainnopull.c:
13106 * testsuite/pad/getnopush.c:
13107 * testsuite/pad/link.c:
13108 * testsuite/refcounting/sched.c: (create_pipeline):
13109 * testsuite/registry/Makefile.am:
13110 * testsuite/registry/gst-print-formats.c:
13111 * testsuite/schedulers/.cvsignore:
13112 * testsuite/schedulers/142183-2.c:
13113 * testsuite/schedulers/142183.c:
13114 * testsuite/schedulers/143777-2.c:
13115 * testsuite/schedulers/143777.c:
13116 * testsuite/schedulers/147713.c:
13117 * testsuite/schedulers/147819.c:
13118 * testsuite/schedulers/147894-2.c:
13119 * testsuite/schedulers/147894.c:
13120 * testsuite/schedulers/Makefile.am:
13121 * testsuite/schedulers/group_link.c:
13122 * testsuite/schedulers/queue_link.c:
13123 * testsuite/schedulers/relink.c:
13124 * testsuite/schedulers/unlink.c:
13125 * testsuite/schedulers/unref.c:
13126 * testsuite/schedulers/useless_iteration.c:
13127 * testsuite/states/bin.c:
13128 clean out/remove some stuff from the testsuite directories
13130 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
13133 check for some headers
13134 * gst/elements/Makefile.am:
13135 * gst/elements/gstelements.c:
13136 don't compile fdsrc without sys/socket.h
13137 * gst/indexers/Makefile.am:
13138 * gst/indexers/gstindexers.c: (plugin_init):
13139 don't compile fileindex without mmap
13141 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
13148 * check/Makefile.am:
13149 * docs/gst/Makefile.am:
13150 * examples/helloworld/Makefile.am:
13152 * gst/base/Makefile.am:
13153 * gst/check/Makefile.am:
13154 * gst/elements/Makefile.am:
13155 * gst/indexers/Makefile.am:
13156 * gst/parse/Makefile.am:
13157 * libs/gst/controller/Makefile.am:
13158 * libs/gst/dataprotocol/Makefile.am:
13159 * examples/helloworld/helloworld.c: (event_loop):
13160 compile fixes, though it's not being compiled currently
13162 2005-10-14 Tim-Philipp Müller <tim at centricular dot net>
13164 * check/gst/gsttag.c: (test_date_tags), (gst_tag_suite):
13165 Add some simple tests for the new taglist date API.
13167 2005-10-14 Tim-Philipp Müller <tim at centricular dot net>
13169 * gst/elements/gstfakesink.c: (gst_fake_sink_render):
13170 * gst/elements/gstfakesrc.c: (gst_fake_src_create):
13171 Beautify 'last-message' output: print 'none' for buffer timestamps
13172 and durations if none is set; improve alignment with next messages.
13174 2005-10-14 Tim-Philipp Müller <tim at centricular dot net>
13176 * gst/gstpluginfeature.c: (gst_plugin_feature_check_version):
13177 * gst/gstpluginfeature.h:
13178 * gst/gstregistry.c: (gst_default_registry_check_feature_version):
13179 * gst/gstregistry.h:
13180 * docs/gst/gstreamer-sections.txt:
13181 Add new API to check plugin feature version requirements.
13183 * check/gst/gstplugin.c: (test_version_checks), (gst_plugin_suite):
13184 Some basic tests for the above.
13186 2005-10-13 Thomas Vander Stichele <thomas at apestaart dot org>
13188 * gst/gststructure.c: (gst_structure_to_string):
13189 guard against NULL printf - happens when for example
13190 a message structure with GstClock gets serialized
13192 2005-10-13 Tim-Philipp Müller <tim at centricular dot net>
13194 * gst/base/gstcollectpads.c: (gst_collectpads_event):
13195 Fix presumable copy'n'pasto.
13197 2005-10-13 Thomas Vander Stichele <thomas at apestaart dot org>
13199 * gst/elements/gstfakesrc.h:
13200 * gst/elements/gstfilesrc.c: (gst_file_src_create_read):
13201 * gst/elements/gsttypefindelement.c:
13202 fix some signedness
13203 * gst/elements/gstfilesink.c: (gst_file_sink_render):
13204 I wonder if this could actually write +2GB files before
13206 2005-10-13 Andy Wingo <wingo@pobox.com>
13208 * libs/gst/dataprotocol/dataprotocol.c (gst_dp_packet_from_caps):
13209 Fix Timmeke Waymans bug.
13210 (gst_dp_caps_from_packet): Make sure we pass a NUL-terminated
13211 string of the proper length to gst_caps_from_string. There's a
13212 potential for, before this fix, that this could cause someone
13213 connecting over the network to cause a segfault if the payload is
13214 not NUL-terminated.
13216 2005-10-13 Stefan Kost <ensonic@users.sf.net>
13218 * docs/design/draft-push-pull.txt:
13219 * docs/design/part-overview.txt:
13220 * docs/random/TODO-pre-0.9:
13221 * docs/random/old/ChangeLog.gstreamer:
13222 * gst/base/gstpushsrc.c:
13226 2005-10-13 Thomas Vander Stichele <thomas at apestaart dot org>
13228 * gst/glib-compat.c: (gst_flags_get_first_value):
13229 * gst/glib-compat.h:
13230 * gst/gstvalue.c: (gst_value_deserialize_int_helper),
13231 (gst_value_compare_double), (gst_value_serialize_flags):
13232 GLib 2.6 g_flags_get_first_value has a bug that triggers an
13235 2005-10-13 Thomas Vander Stichele <thomas at apestaart dot org>
13237 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
13238 * gst/base/gstbasesrc.c: (gst_base_src_get_range):
13240 * tools/gst-launch.c: (event_loop):
13241 print out clock nicely
13243 2005-10-13 Tim-Philipp Müller <tim at centricular dot net>
13245 * docs/gst/gstreamer-sections.txt:
13246 * gst/gsttaglist.h:
13247 * gst/gsttaglist.c: (_gst_tag_initialize), (gst_tag_list_get_date),
13248 (gst_tag_list_get_date_index):
13249 Added gst_tag_list_get_date() and gst_tag_list_get_date_index().
13250 GST_TAG_DATE now has a tag type of GST_TYPE_DATE (#170777).
13252 2005-10-13 Julien MOUTTE <julien@moutte.net>
13254 * gst/base/gstcollectpads.c: (gst_collectpads_event),
13255 (gst_collectpads_chain):
13256 * gst/base/gstcollectpads.h: Handle newsegment and store informations
13259 2005-10-13 Stefan Kost <ensonic@users.sf.net>
13261 * docs/gst/gstreamer-sections.txt:
13264 * tools/gst-inspect.c: (main):
13265 * tools/gst-launch.c: (main):
13266 * tools/gst-run.c: (main):
13267 * tools/gst-xmlinspect.c: (main):
13268 fix GOption context leaks
13271 2005-10-13 Thomas Vander Stichele <thomas at apestaart dot org>
13275 * win32/common/config.h:
13277 * win32/vs6/grammar.dsp:
13278 * win32/vs6/libgstelements.dsp:
13279 * win32/vs6/libgstreamer.dsp:
13282 2005-10-12 Thomas Vander Stichele <thomas at apestaart dot org>
13284 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
13285 * gst/base/gstbasesrc.c: (gst_base_src_query):
13286 fix more guint64<->gdouble conversions
13288 2005-10-12 Thomas Vander Stichele <thomas at apestaart dot org>
13291 add win32-update target
13292 * win32/common/gstconfig.h:
13293 * win32/common/gstenumtypes.c:
13294 * win32/common/gstenumtypes.h:
13295 * win32/common/gstversion.h:
13296 add files that visual studio can't generate
13298 2005-10-12 Thomas Vander Stichele <thomas at apestaart dot org>
13301 add a win32-update target
13304 2005-10-12 Wim Taymans <wim@fluendo.com>
13306 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
13307 (reset_degree), (gst_bin_dispose), (bin_bus_handler):
13308 * gst/gstelement.c: (gst_element_commit_state),
13309 (gst_element_set_state):
13310 Protect flags with proper lock.
13311 unref provided cached clock in dispose.
13313 2005-10-12 Stefan Kost <ensonic@users.sf.net>
13316 * gst/gstminiobject.h:
13318 * win32/gstenumtypes.c: (gst_mini_object_flags_get_type):
13319 removed unused flags from miniobject
13322 2005-10-12 Wim Taymans <wim@fluendo.com>
13324 * gst/elements/gstfilesink.c: (gst_file_sink_do_seek),
13325 (gst_file_sink_event), (gst_file_sink_render):
13326 Flush before seeking.
13328 2005-10-12 Andy Wingo <wingo@pobox.com>
13330 * gst/gst.c (gst_init_check): Ignore unknown options, as has
13331 always been the case.
13333 2005-10-12 Stefan Kost <ensonic@users.sf.net>
13335 * check/gst/gstbin.c: (GST_START_TEST):
13336 * docs/gst/gstreamer-sections.txt:
13337 * gst/base/gstbasesink.c: (gst_base_sink_init):
13338 * gst/base/gstbasesrc.c: (gst_base_src_init),
13339 (gst_base_src_get_range), (gst_base_src_check_get_range),
13340 (gst_base_src_start), (gst_base_src_stop):
13341 * gst/base/gstbasesrc.h:
13342 * gst/elements/gstfakesrc.c: (gst_fake_src_set_property):
13343 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
13344 (bin_element_is_sink), (reset_degree), (gst_bin_element_set_state),
13348 * gst/gstbus.c: (gst_bus_post), (gst_bus_set_flushing):
13350 * gst/gstelement.c: (gst_element_is_locked_state),
13351 (gst_element_set_locked_state), (gst_element_commit_state),
13352 (gst_element_set_state):
13353 * gst/gstelement.h:
13354 * gst/gstindex.c: (gst_index_init):
13356 * gst/gstminiobject.h:
13357 * gst/gstobject.c: (gst_object_init), (gst_object_sink),
13358 (gst_object_set_parent):
13360 * gst/gstpad.c: (gst_pad_set_blocked_async), (gst_pad_is_blocked),
13361 (gst_pad_get_caps_unlocked), (gst_pad_set_caps):
13363 * gst/gstpadtemplate.h:
13364 * gst/gstpipeline.c: (gst_pipeline_provide_clock_func),
13365 (gst_pipeline_use_clock), (gst_pipeline_auto_clock):
13366 * gst/gstpipeline.h:
13367 * gst/indexers/gstfileindex.c: (gst_file_index_load),
13368 (gst_file_index_commit):
13369 * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
13370 * testsuite/pad/link.c: (gst_test_src_init),
13371 (gst_test_filter_init), (gst_test_sink_init):
13372 * testsuite/states/locked.c: (main):
13373 renamed GST_FLAGS macros to GST_OBJECT_FLAGS
13374 moved bitshift from macro to enum definition
13376 2005-10-12 Wim Taymans <wim@fluendo.com>
13378 * gst/base/gstbasesink.c: (gst_base_sink_handle_buffer):
13379 * gst/elements/gstfilesink.c: (gst_file_sink_event),
13380 (gst_file_sink_render):
13381 Some more debugging info.
13383 2005-10-12 Wim Taymans <wim@fluendo.com>
13385 * docs/design/part-states.txt:
13386 * tools/gst-launch.c: (main):
13388 Revert non-intentional change.
13390 2005-10-12 Wim Taymans <wim@fluendo.com>
13392 * check/gst/gstbin.c: (GST_START_TEST):
13393 * check/gst/gstelement.c: (GST_START_TEST):
13394 * check/gst/gstevent.c: (GST_START_TEST), (test_event):
13395 * check/gst/gstghostpad.c: (GST_START_TEST):
13396 * check/gst/gstpipeline.c: (GST_START_TEST):
13397 * check/pipelines/simple_launch_lines.c: (run_pipeline):
13398 * check/states/sinks.c: (GST_START_TEST):
13399 * gst/elements/gsttypefindelement.c: (stop_typefinding):
13400 * gst/gstbin.c: (gst_bin_provide_clock_func), (gst_bin_add_func),
13401 (gst_bin_remove_func), (gst_bin_get_state_func),
13402 (gst_bin_recalc_state), (gst_bin_change_state_func),
13404 * gst/gstelement.c: (gst_element_get_state_func),
13405 (gst_element_get_state), (gst_element_abort_state),
13406 (gst_element_commit_state), (gst_element_set_state),
13407 (gst_element_change_state), (gst_element_change_state_func):
13408 * gst/gstelement.h:
13409 * gst/gstpipeline.c: (gst_pipeline_class_init), (do_pipeline_seek),
13410 (gst_pipeline_provide_clock_func):
13411 * gst/gstutils.c: (gst_element_link_pads_filtered):
13412 * tools/gst-launch.c: (main):
13413 * tools/gst-typefind.c: (main):
13414 Use GstClockTime in _get_state() instead of GTimeVal.
13415 Remove old code in gstutils.c
13417 2005-10-12 Andy Wingo <wingo@pobox.com>
13419 * gst/gstregistry.h (gst_registry_scan_paths): Not implemented, so
13422 * gst/gstpad.c (gst_pad_pause_task): Actually return FALSE if
13423 there is no task. Shouldn't affect any code, as nothing in our
13424 plugins checks this return value.
13425 (gst_pad_stop_task): Also take the stream lock if the pad has no
13426 task. Docs updated.
13428 2005-10-12 Wim Taymans <wim@fluendo.com>
13430 * gst/gstpad.c: (pre_activate), (post_activate),
13431 (gst_pad_activate_pull), (gst_pad_activate_push):
13432 Cleanup activation code. Reset old state if
13435 2005-10-12 Wim Taymans <wim@fluendo.com>
13437 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
13438 (gst_base_sink_change_state):
13439 No need to prerol after receiving EOS.
13441 * gst/elements/gstfakesink.c: (gst_fake_sink_event):
13442 * gst/elements/gstfakesrc.c: (gst_fake_src_event_handler):
13443 * gst/elements/gstidentity.c: (gst_identity_event):
13444 Print events more verbosely.
13446 2005-10-12 Wim Taymans <wim@fluendo.com>
13448 * check/Makefile.am:
13449 * check/states/sinks.c: (GST_START_TEST), (gst_object_suite):
13450 * check/states/sinks2.c:
13451 Moved sinks2 testcode in sinks check.
13453 * gst/gstbin.c: (gst_bin_provide_clock_func), (gst_bin_add_func),
13454 (gst_bin_remove_func), (gst_bin_recalc_state),
13455 (gst_bin_change_state_func), (bin_bus_handler):
13456 Fix potential race condition when _get_state() iterated over an
13457 ASYNC element right before it posted a state completion.
13460 Do proper cast here.
13462 * gst/gstevent.c: (gst_event_new_newsegment),
13463 (gst_event_parse_newsegment):
13464 A playback rate of 0.0 is not allowed.
13466 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
13468 * win32/common/config.h:
13469 * win32/common/dirent.c: (_topendir), (_treaddir), (_tclosedir),
13470 (_trewinddir), (_ttelldir), (_tseekdir):
13471 * win32/common/dirent.h:
13472 * win32/common/gtchar.h:
13473 * win32/common/libgstbase.def:
13474 * win32/common/libgstreamer.def:
13475 * win32/vs6/grammar.dsp:
13476 * win32/vs6/gst_inspect.dsp:
13477 * win32/vs6/gst_launch.dsp:
13478 * win32/vs6/gstreamer.dsw:
13479 * win32/vs6/libgstbase.dsp:
13480 * win32/vs6/libgstelements.dsp:
13481 * win32/vs6/libgstreamer.dsp:
13482 Visual Studio 6 project files, and a new common directory.
13485 2005-10-11 Wim Taymans <wim@fluendo.com>
13487 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
13488 (gst_base_sink_do_sync), (gst_base_sink_query),
13489 (gst_base_sink_change_state):
13490 * gst/base/gstbasesink.h:
13491 Correctly parse newsegment info.
13493 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
13495 * gst/gst.c: (init_post):
13496 split plugin paths correctly
13498 2005-10-11 Wim Taymans <wim@fluendo.com>
13500 * check/gst/gstevent.c: (GST_START_TEST):
13501 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
13502 (gst_base_sink_change_state):
13503 * gst/base/gstbasesrc.c: (gst_base_src_default_newsegment):
13504 * gst/base/gstbasetransform.c: (gst_base_transform_event):
13505 * gst/elements/gstfilesink.c: (gst_file_sink_event):
13506 * gst/gstevent.c: (gst_event_new_newsegment),
13507 (gst_event_parse_newsegment):
13509 Added extra flag to newsegment for future API freeze.
13510 Updated check and base elements.
13512 2005-10-11 Julien MOUTTE <julien@moutte.net>
13514 * gst/base/gstcollectpads.c: (gst_collectpads_init),
13515 (gst_collectpads_add_pad), (gst_collectpads_pop),
13516 (gst_collectpads_event), (gst_collectpads_chain):
13517 * gst/base/gstcollectpads.h: Handle EOS correctly.
13519 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
13521 * tools/gst-launch.c: (main):
13522 more null protecting
13524 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
13526 * gst/gst-i18n-lib.h:
13527 check for ENABLE_NLS, not GETTEXT_PACKAGE
13528 * gst/gstregistry.c: (gst_registry_add_plugin),
13529 (gst_registry_scan_path_level),
13530 (_gst_registry_remove_cache_plugins):
13531 protect possibly NULL strings
13532 * gst/parse/types.h:
13533 config.h already included before
13534 * tools/gst-inspect.c: (main):
13535 sys/wait.h also doesn�t exist on mingw, so change the ifdef check
13536 check for ENABLE_NLS, not GETTEXT_PACKAGE
13537 * tools/gst-launch.c: (main):
13538 check for ENABLE_NLS, not GETTEXT_PACKAGE
13540 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
13543 if we don't have glib, fail before testing 2.8
13544 * gst/base/gstbasetransform.c: (gst_base_transform_change_state):
13545 fix a leak, should fix plugins-base testsuite
13547 2005-10-11 Andy Wingo <wingo@pobox.com>
13549 * gst/gstpad.c (pre_activate): Renamed from pre_activate_switch,
13550 take the mode we're going to as an arg. Go head and set the mode
13551 and flushing flags now, so that if the activate function starts a
13552 thread all the flags will be in the right state.
13553 (post_activate): Renamed also. Just handle making sure streaming
13554 finishes for the deactivation case, and setting the deactivated
13556 (gst_pad_set_active): Complain loudly if deactivation fails.
13557 (gst_pad_activate_pull): Adapt to pre/post_activate changes.
13558 (gst_pad_activate_push): Adapt to pre/post_activate changes,
13559 remove the terrible hack.
13561 2005-10-11 Wim Taymans <wim@fluendo.com>
13563 * gst/gstbin.c: (gst_bin_init), (gst_bin_provide_clock_func),
13564 (is_eos), (gst_bin_add_func), (gst_bin_remove_func),
13565 (gst_bin_recalc_state), (gst_bin_change_state_func),
13566 (gst_bin_dispose), (bin_bus_handler):
13568 Prepare to make current EOS message queue more generic.
13571 * gst/gstevent.c: (gst_event_new_newsegment),
13572 (gst_event_parse_newsegment):
13574 Rename base to stream_time.
13576 * gst/gstmessage.h:
13579 2005-10-11 Wim Taymans <wim@fluendo.com>
13581 * gst/gstbin.c: (gst_bin_init), (gst_bin_provide_clock_func),
13582 (gst_bin_add_func), (gst_bin_remove_func), (gst_bin_recalc_state),
13583 (gst_bin_change_state_func), (bin_bus_handler):
13585 Work on proper clock selection.
13587 2005-10-11 Edward Hervey <edward@fluendo.com>
13589 * libs/gst/controller/gstcontroller.c: (gst_controller_remove_properties_list):
13590 * libs/gst/controller/gstcontroller.h:
13591 Added GList* version of _remove_properties() in order to be able to wrap
13594 2005-10-11 Wim Taymans <wim@fluendo.com>
13596 * docs/design/part-states.txt:
13599 * gst/gstbin.c: (gst_bin_set_clock_func), (gst_bin_recalc_state),
13600 (gst_bin_change_state_func), (bin_bus_handler):
13601 Doc updates. Don't distribute the same clock over and over again.
13607 * gst/gstpad.c: (gst_flow_get_name), (gst_flow_to_quark),
13608 (gst_pad_get_type), (gst_pad_push), (gst_pad_push_event),
13609 (gst_pad_send_event):
13611 Make probe emission threadsafe again.
13612 Register quarks and move _get_name() from utils.
13615 * gst/gstpipeline.c: (gst_pipeline_class_init),
13616 (gst_pipeline_change_state), (gst_pipeline_provide_clock_func):
13617 Only redistribute the clock of it changed.
13619 * gst/gstsystemclock.h:
13624 Moved the _flow_get_name() to GstPad.
13626 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
13628 * check/gst-libs/gdp.c: (GST_START_TEST):
13629 * check/gst/gstcaps.c: (GST_START_TEST):
13630 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
13631 (gst_dp_dump_byte_array), (gst_dp_header_from_buffer),
13632 (gst_dp_packet_from_caps):
13633 fix more valgrind warnings before turning up the heat
13635 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
13637 * gst/parse/grammar.y:
13638 some cleanup before the hacking
13640 2005-10-10 Thomas Vander Stichele <thomas at apestaart dot org>
13642 * gst/base/gstbasesrc.c: (gst_base_src_query):
13644 * gst/gstutils.c: (gst_guint64_to_gdouble),
13645 (gst_gdouble_to_guint64), (gst_util_uint64_scale):
13647 externalize, basesrc uses it
13648 obviously the implementation needs testing
13650 2005-10-10 Wim Taymans <wim@fluendo.com>
13652 * tests/sched/Makefile.am:
13653 * tests/sched/sort.c: (make_pipeline1), (make_pipeline2),
13654 (make_pipeline3), (make_pipeline4), (print_elem), (main):
13656 2005-10-10 Thomas Vander Stichele <thomas at apestaart dot org>
13658 * gst/gstutils.c: (guint64_to_gdouble), (gst_util_uint64_scale):
13659 apparently converting from guint64 to double is not implemented
13662 2005-10-10 Wim Taymans <wim@fluendo.com>
13664 * check/Makefile.am:
13665 * check/generic/states.c: (GST_START_TEST):
13666 * check/gst/gstbin.c: (GST_START_TEST):
13667 * check/gst/gstpipeline.c: (GST_START_TEST), (gst_pipeline_suite):
13668 * check/states/sinks.c: (GST_START_TEST):
13669 * check/states/sinks2.c: (GST_START_TEST), (gst_object_suite),
13671 Check fixes, use API as stated in design docs, remove hacks.
13673 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
13674 (gst_base_sink_change_state):
13675 Catch stopping our task while we're shutting down.
13677 * gst/gstbin.c: (gst_bin_init), (gst_bin_add_func),
13678 (gst_bin_remove_func), (gst_bin_get_state_func),
13679 (gst_bin_recalc_state), (gst_bin_change_state_func),
13682 * gst/gstelement.c: (gst_element_init),
13683 (gst_element_get_state_func), (gst_element_abort_state),
13684 (gst_element_commit_state), (gst_element_lost_state),
13685 (gst_element_set_state), (gst_element_change_state),
13686 (gst_element_change_state_func):
13687 * gst/gstelement.h:
13688 New state change algorithm (see #318116)
13690 * gst/gstpipeline.c: (gst_pipeline_class_init),
13691 (gst_pipeline_init), (gst_pipeline_set_property),
13692 (gst_pipeline_get_property), (do_pipeline_seek),
13693 (gst_pipeline_change_state), (gst_pipeline_provide_clock_func):
13694 * gst/gstpipeline.h:
13695 Remove crude state change hacks.
13698 Remove crude hacks.
13700 * tools/gst-launch.c: (main):
13701 Fixes for state change. Needs some more work to fully use the
13704 2005-10-10 Andy Wingo <wingo@pobox.com>
13706 * tests/Makefile.am (noinst_PROGRAMS): No more init.c.
13708 * gst/gst.c (G_OPTION_FLAG_NO_ARG): Apparently GLib 2.8 requires
13709 this flag, but it's not even in GLib 2.6. Odd. Hack around the
13712 2005-10-10 Tim-Philipp Müller <tim at centricular dot net>
13714 * gst/gstiterator.c: (gst_iterator_new):
13715 Fix my previous commit: GTypes passed to gst_iterator_new()
13716 can be fundamental types.
13718 2005-10-10 Wim Taymans <wim@fluendo.com>
13720 * gst/gstelement.c: (gst_element_iterate_pad_list),
13721 (gst_element_iterate_pads), (gst_element_iterate_src_pads),
13722 (gst_element_iterate_sink_pads):
13723 Use src/sink pads lists for the respective iterators instead
13726 2005-10-10 Andy Wingo <wingo@pobox.com>
13728 Merged in popt removal + GOption addition patch from Ronald, bug
13731 * docs/gst/gstreamer-sections.txt: Add STATE_(UN)LOCK_FULL, move
13732 GstElement macros around, remove popt-related symbols, add goption
13735 * configure.ac: Remove popt checks, require GLib 2.6 for GOption.
13737 * docs/gst/Makefile.am:
13738 * docs/libs/Makefile.am: No POPT_CFLAGS.
13740 * examples/manual/Makefile.am:
13741 * docs/manual/basics-init.xml: Doc updates with an example.
13743 * gst/gst.c: (gst_init_get_option_group), (gst_init_check),
13744 (gst_init), (parse_one_option), (parse_goption_arg):
13745 * gst/gst.h: Removed gst_init_with_popt_table and friends. Took a
13746 bit of hand merging and debugging to get the GOption stuff working
13749 * tests/Makefile.am:
13750 * tools/Makefile.am:
13751 * tools/gst-inspect.c: (main):
13752 * tools/gst-launch.c: (main):
13753 * tools/gst-run.c: (main):
13754 * tools/gst-xmlinspect.c: (main): Thanks Ronald!
13756 2005-10-10 Tim-Philipp Müller <tim at centricular dot net>
13758 * gst/gstiterator.c: (gst_iterator_new):
13759 Add assertions to make sure passed GType is likely to really
13760 be a GType (as the compiler won't catch it if the size and
13761 GType arguments get mixed up, see #318447).
13763 2005-10-10 Josef Zlomek <josef dot zlomek at xeris dot cz>
13765 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
13767 * gst/gstbin.c: (gst_bin_iterate_sorted):
13768 Pass GType and size arguments to gst_iterator_new() in the right
13769 order (maybe we should make _new() take the GType as first argument
13770 just like _new_list()?) (#318447).
13773 2005-10-10 Wim Taymans <wim@fluendo.com>
13775 * gst/gstelement.c: (gst_element_finalize):
13776 And free the GStaticRecMutex too
13778 2005-10-10 Andy Wingo <wingo@pobox.com>
13780 * gst/gstelement.c (gst_element_init, gst_element_finalize):
13781 Allocate and free the mutex properly.
13783 * gst/gstelement.h (GST_STATE_UNLOCK_FULL, GST_STATE_LOCK_FULL):
13785 (GstElement): The state_lock is now recursive. Rebuild your
13786 plugins, suckers. Old macros adapted.
13788 * docs/gst/gstreamer-sections.txt: Doc updates.
13791 * gst/gstutils.c (g_static_rec_cond_timed_wait)
13792 (g_static_rec_cond_wait): Ported from state changes patch, while
13793 we wait on bug #317802 to be solved in a well-distributed GLib.
13795 * gst/gstelement.c (gst_element_change_state_func): Renamed from
13796 gst_element_change_state, variable name changes.
13797 (gst_element_change_state): Split out of gst_element_set_state in
13798 preparation for the state change merge. Doesn't pay attention to
13799 the 'transition' argument.
13800 (gst_element_set_state): Updates, hopefully purely cosmetic.
13801 (gst_element_sync_state_with_parent): MT-safety. Ported from the
13802 state change patch.
13803 (gst_element_get_state_func): Renamed from get_state, cosmetic
13806 2005-10-10 Thomas Vander Stichele <thomas at apestaart dot org>
13808 * gst/elements/gstelements.c:
13809 * win32/GStreamer.vcproj:
13811 * win32/dirent.c: (_tseekdir):
13812 * win32/gst-inspect.vcproj:
13813 * win32/gst-launch.vcproj:
13814 * win32/gstconfig.h:
13815 * win32/gstelements.vcproj:
13816 * win32/gstenumtypes.c: (gst_object_flags_get_type):
13817 * win32/gstreamer.def:
13818 * win32/msvc71.sln:
13819 updates for the win32 build (patch from Sebastien Moutte)
13821 2005-10-10 Andy Wingo <wingo@pobox.com>
13823 * gst/gstbin.c (gst_bin_get_state_func): Renamed from
13824 gst_bin_get_state, cleaned up (but no logic changes).
13825 (bin_element_is_sink): Comment updates.
13826 (sink_iterator_filter): Remove needless cast.
13827 (gst_bin_iterate_sinks): Doc update.
13828 (gst_bin_change_state_func): Renamed from gst_bin_change_state,
13829 cleaned up (but no logic changes).
13831 * check/states/sinks.c (test_src_sink): Cleanups from the state
13833 (test_livesrc_sink): Sync on the state.
13835 * check/pipelines/simple_launch_lines.c (run_pipeline): Merge from
13836 the state change patch.
13838 * check/gst/gstghostpad.c (test_ghost_pads): Merge from the state
13841 * check/gst/gstbin.c: Merge in some style fixes and additional
13842 checks from Wim's state change patch.
13844 2005-10-10 Tim-Philipp Müller <tim at centricular dot net>
13846 * gst/base/gsttypefindhelper.c: (helper_find_peek),
13847 (gst_type_find_helper):
13848 Check whether we have the requested data already in our list of
13849 cached buffers before pulling a new buffer; also make the buffer
13850 list a GSList. Speeds up typefinding by ca. 5-10% altogether.
13852 2005-10-10 Thomas Vander Stichele <thomas at apestaart dot org>
13857 * gst/gstvalue.c: (gst_value_deserialize_int_helper):
13858 don't use long long, it's not portable. Replacing with
13859 gint64 seems to work; let's hope no skeletons fall out of the closet.
13861 2005-10-10 Andy Wingo <wingo@pobox.com>
13863 * autogen.sh (CONFIGURE_DEF_OPT): No more --plugin-buiddir, yay
13865 2005-10-09 Stefan Kost <ensonic@users.sf.net>
13867 * docs/gst/gstreamer-sections.txt:
13872 * gst/gstmessage.c: (gst_message_parse_state_changed):
13875 more docs, fix compilation
13877 2005-10-09 Philippe Khalaf <burger@speedy.org>
13878 * gst/gstmessage.c:
13879 Fixed a few forgotten variables on previous commit
13881 2005-10-09 Tim-Philipp Müller <tim at centricular dot net>
13883 * gst/base/gsttypefindhelper.c: (helper_find_peek):
13884 Fix evil typefind crasher: getrange() might return a short
13885 buffer at the end of a file, but gst_type_find_peek() must
13886 either return the full data as requested or NULL, but
13887 never a short buffer.
13889 2005-10-09 Thomas Vander Stichele <thomas at apestaart dot org>
13891 * gst/gstmessage.c: (gst_message_new_state_changed),
13892 (gst_message_parse_state_changed):
13893 * gst/gstmessage.h:
13894 don't use "new", it's a C++ keyword
13896 2005-10-08 Wim Taymans <wim@fluendo.com>
13898 * gst/gstbin.c: (is_eos), (update_degree), (gst_bin_query):
13899 * gst/gstelement.c: (gst_element_post_message):
13900 * gst/gstpipeline.c: (gst_pipeline_change_state):
13901 Small docs and debug updates.
13903 2005-10-08 Stefan Kost <ensonic@users.sf.net>
13905 * docs/gst/gstreamer-sections.txt:
13906 * gst/gstelementfactory.c:
13908 * gst/gsttaglist.c:
13911 2005-10-08 Wim Taymans <wim@fluendo.com>
13913 * gst/gstbin.c: (is_eos), (update_degree), (gst_bin_change_state),
13914 (gst_bin_dispose), (bin_bus_handler):
13915 Fix typos, add comments.
13916 Clear EOS list when going to PAUSED from any direction and do it
13917 in a threadsafe way.
13918 Get base time in a threadsafe way too.
13919 Fix confusing debug in the change_state function.
13920 Various other small cleanups.
13922 * gst/gstelement.c: (gst_element_post_message):
13923 Fix very verbose bus posting code.
13925 * gst/gstpipeline.c: (gst_pipeline_class_init),
13926 (gst_pipeline_set_property), (gst_pipeline_get_property),
13927 (gst_pipeline_change_state):
13928 Small ARG_ -> PROP_ cleanup
13930 2005-10-08 Wim Taymans <wim@fluendo.com>
13932 * gst/gstbin.c: (is_eos), (bin_bus_handler):
13933 Do a less CPU demanding EOS check because we can.
13935 2005-10-08 Wim Taymans <wim@fluendo.com>
13937 * libs/gst/dataprotocol/dataprotocol.c:
13938 (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
13939 (gst_dp_packet_from_event):
13940 * libs/gst/dataprotocol/dataprotocol.h:
13941 * libs/gst/dataprotocol/dp-private.h:
13942 It's about time we bump the version number.
13943 Since event types don't fit in the guint8 anymore describing
13944 the payload type, make payload type 16 bits wide.
13946 2005-10-08 Wim Taymans <wim@fluendo.com>
13948 * docs/design/part-TODO.txt:
13949 * docs/design/part-clocks.txt:
13950 * docs/design/part-events.txt:
13951 * docs/design/part-gstbin.txt:
13952 * docs/design/part-gstelement.txt:
13953 * docs/design/part-gstpipeline.txt:
13954 * docs/design/part-live-source.txt:
13955 * docs/design/part-messages.txt:
13956 * docs/design/part-overview.txt:
13957 * docs/design/part-states.txt:
13960 2005-10-08 Wim Taymans <wim@fluendo.com>
13964 Fix event quark registration.
13965 Add some space between events so we can insert them in the
13968 2005-10-08 Wim Taymans <wim@fluendo.com>
13970 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
13971 (gst_base_sink_handle_buffer):
13972 Better log message.
13975 * gst/gstelement.h:
13978 * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
13979 (gst_queue_set_property), (gst_queue_get_property):
13981 Remove old unused properties.
13983 2005-10-08 Stefan Kost <ensonic@users.sf.net>
13984 * docs/gst/gstreamer-sections.txt:
13985 * gst/gstmessage.c:
13986 * gst/gstmessage.h:
13987 * gst/gstminiobject.c:
13988 * gst/gstminiobject.h:
13992 lots of new docs and doc fixes
13994 2005-10-08 Thomas Vander Stichele <thomas at apestaart dot org>
13996 * gst/gstplugin.c: (gst_plugin_finalize), (gst_plugin_load_file):
13998 * gst/gstregistry.c: (gst_registry_lookup_locked),
13999 (gst_registry_scan_path_level):
14000 * gst/gstregistryxml.c: (load_plugin):
14001 Only ever load one plugin for a given plugin basename.
14002 This ensures correct overriding of GST_PLUGIN_PATH over
14003 GST_PLUGIN_SYSTEM_PATH and of home dir plugins over
14004 system installed plugins.
14006 2005-10-08 Wim Taymans <wim@fluendo.com>
14008 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
14009 (gst_base_sink_do_sync), (gst_base_sink_handle_buffer):
14010 Prepare for doing QOS.
14012 2005-10-08 Wim Taymans <wim@fluendo.com>
14014 * check/gst/gstbin.c: (GST_START_TEST):
14015 * check/pipelines/cleanup.c: (GST_START_TEST):
14016 * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
14017 Allow new clock message too.
14019 2005-10-08 Wim Taymans <wim@fluendo.com>
14021 * gst/gstmessage.c: (gst_message_new_error),
14022 (gst_message_new_warning), (gst_message_new_tag),
14023 (gst_message_new_state_changed), (gst_message_new_clock_provide),
14024 (gst_message_new_clock_lost), (gst_message_new_new_clock),
14025 (gst_message_new_segment_start), (gst_message_new_segment_done),
14026 (gst_message_parse_state_changed),
14027 (gst_message_parse_clock_provide), (gst_message_parse_clock_lost),
14028 (gst_message_parse_new_clock):
14029 * gst/gstmessage.h:
14030 Also carry the clock in question.
14032 2005-10-08 Wim Taymans <wim@fluendo.com>
14034 * gst/gstmessage.c: (gst_message_new_custom),
14035 (gst_message_new_eos), (gst_message_new_error),
14036 (gst_message_new_warning), (gst_message_new_tag),
14037 (gst_message_new_state_changed), (gst_message_new_clock_provide),
14038 (gst_message_new_new_clock), (gst_message_new_segment_start),
14039 (gst_message_new_segment_done), (gst_message_parse_state_changed),
14040 (gst_message_parse_clock_provide), (gst_message_parse_new_clock):
14041 * gst/gstmessage.h:
14043 Added clock related messages.
14045 * gst/gstpipeline.c: (gst_pipeline_change_state):
14046 Post message when the clock changed.
14048 * tools/gst-launch.c: (event_loop):
14051 2005-10-08 Tim-Philipp Müller <tim at centricular dot net>
14053 * tools/gst-inspect.c: (print_element_properties_info):
14054 Can't pass NULL strings to g_print() on windows.
14056 2005-10-08 Thomas Vander Stichele <thomas at apestaart dot org>
14058 * docs/Makefile.am:
14059 * docs/gst/Makefile.am:
14060 * docs/gst/gstreamer-docs.sgml:
14061 * docs/gst/running.xml:
14062 * docs/version.entities.in:
14063 add a chapter on running GStreamer.
14064 document GST_DEBUG and GST_PLUGIN* env vars
14066 2005-10-08 Thomas Vander Stichele <thomas at apestaart dot org>
14071 remove PLUGINS_BUILDDIR stuff
14072 * gst/gst.c: (init_post):
14073 reorder parsing of GST_PLUGIN_PATH and GST_PLUGIN_SYSTEM_PATH
14075 remove, it was condescending and not needed
14077 2005-10-08 Wim Taymans <wim@fluendo.com>
14079 * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_flush),
14080 (gst_base_sink_handle_object), (gst_base_sink_event),
14081 (gst_base_sink_wait), (gst_base_sink_handle_event),
14082 (gst_base_sink_change_state):
14083 * gst/base/gstbasesink.h:
14084 Repost EOS message while going to PLAYING if still EOS.
14085 Make sure that when receiving a FLUSH_START we don't attempt
14086 to sync on the clock anymore.
14088 2005-10-08 Wim Taymans <wim@fluendo.com>
14090 * tools/gst-launch.c: (event_loop):
14091 Better message printout.
14093 2005-10-08 Wim Taymans <wim@fluendo.com>
14095 * gst/gstbin.c: (gst_bin_child_proxy_get_child_by_index),
14096 (gst_bin_child_proxy_get_children_count):
14097 * gst/gstchildproxy.c: (gst_child_proxy_get_child_by_name),
14098 (gst_child_proxy_lookup), (gst_child_proxy_get_property),
14099 (gst_child_proxy_get_valist), (gst_child_proxy_set_property),
14100 (gst_child_proxy_set_valist):
14101 * gst/parse/grammar.y:
14102 Make ChildProxy threadsafe and fix mem leaks.
14104 2005-10-08 Thomas Vander Stichele <thomas at apestaart dot org>
14106 * gst/gst.c: (init_post):
14107 debug the GST_PLUGIN_ env vars
14109 2005-10-08 Wim Taymans <wim@fluendo.com>
14111 * check/gst/gstbin.c: (GST_START_TEST):
14112 * check/gst/gstmessage.c: (GST_START_TEST):
14113 * check/gst/gstpipeline.c: (GST_START_TEST), (message_received):
14114 * gst/gstelement.c: (gst_element_commit_state),
14115 (gst_element_lost_state):
14116 * gst/gstmessage.c: (gst_message_new_state_changed),
14117 (gst_message_parse_state_changed):
14118 * gst/gstmessage.h:
14119 * tools/gst-launch.c: (event_loop):
14120 Added extra field to STATE_CHANGE message with the pending
14121 state, which will be different from the new state soon.
14123 2005-10-08 Wim Taymans <wim@fluendo.com>
14125 * gst/gstbus.c: (gst_bus_pop):
14127 * gst/gstsystemclock.c: (gst_system_clock_async_thread):
14128 Small cleanups and doc updates.
14130 2005-10-08 Thomas Vander Stichele <thomas at apestaart dot org>
14132 * gst/gst.c: (init_pre):
14133 * gst/gstbin.c: (gst_bin_add_func):
14134 log distributing clocks and base time
14135 * gst/gstregistry.c: (gst_registry_add_plugin),
14136 (gst_registry_scan_path_level), (gst_registry_scan_path):
14137 clean up the debugging output a little
14138 * gst/gstutils.c: (gst_element_state_get_name):
14139 warn about a memleak (I've actually seen this be used, though
14140 it was probably a bug)
14142 2005-10-07 Wim Taymans <wim@fluendo.com>
14144 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
14145 (gst_base_src_init), (gst_base_src_default_newsegment),
14146 (gst_base_src_newsegment), (gst_base_src_do_seek),
14147 (gst_base_src_loop), (gst_base_src_start):
14148 * gst/base/gstbasesrc.h:
14149 Make the newsegment event customizable by subclasses.
14151 2005-10-07 Wim Taymans <wim@fluendo.com>
14153 * gst/gstevent.c: (gst_event_new_buffersize),
14154 (gst_event_parse_buffersize):
14156 New event for future idea.
14158 2005-10-07 Andy Wingo <wingo@pobox.com>
14160 * gst/gstelement.c (gst_element_post_message): Doc update.
14162 * docs/gst/gstreamer-sections.txt: Update.
14164 * gst/gstmessage.c (gst_message_new_application): Made into a
14165 function like honest API calls.
14166 (gst_message_new_element): New message type.
14168 * gst/gstmessage.h (enum): Add GST_MESSAGE_ELEMENT type.
14170 * check/elements/fakesrc.c (test_no_preroll): New check, checks
14171 that setting a live fakesrc to PAUSED returns NO_PREROLL both
14174 * gst/base/gstbasesrc.c (gst_base_src_change_state): Allow a
14175 NO_PREROLL from gst_element_change_state to fall through.
14177 2005-10-07 Wim Taymans <wim@fluendo.com>
14179 * gst/gstghostpad.c: (gst_ghost_pad_get_internal),
14180 (gst_ghost_pad_do_activate_push):
14181 Activating a ghostpad with no internal pad in push mode
14184 2005-10-07 Thomas Vander Stichele <thomas at apestaart dot org>
14187 there's no point in wrapping FLAG_SET/_UNSET in STMT macros.
14188 Fixes compilation on Windows.
14190 2005-10-07 Michael Smith <msmith@fluendo.com>
14192 * tools/gst-inspect.c:
14193 Print out feature and plugin count at the end when printing out
14196 2005-10-04 Michael Smith <msmith@fluendo.com>
14198 * gst/gsterror.c: (_gst_stream_errors_init):
14199 Add another error string used in a few existing plugins.
14202 * gst/gstpluginfeature.c: (gst_plugin_feature_load):
14203 * tools/gst-inspect.c: (print_element_info):
14204 When a feature disappears from a plugin (and the feature exists in
14205 the cached registry file), things went horribly wrong. This isn't a
14206 complete fix, we should actually be removing the 'missing' features
14207 from the features list when we load the actual plugin. That's not
14210 2005-10-04 Johan Dahlin <johan@gnome.org>
14212 * check/gst/gstiterator.c: (GST_START_TEST):
14213 * gst/gstbin.c: (gst_bin_iterate_elements),
14214 (gst_bin_iterate_recurse), (gst_bin_iterate_sorted):
14215 * gst/gstelement.c: (gst_element_iterate_pads):
14216 * gst/gstformat.c: (gst_format_iterate_definitions):
14217 * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
14218 (gst_iterator_new_list), (gst_iterator_filter):
14219 * gst/gstiterator.h:
14220 * gst/gstquery.c: (gst_query_type_iterate_definitions):
14221 Add a GType to GstIterator, update callsites and tests.
14223 2005-10-06 Thomas Vander Stichele <thomas at apestaart dot org>
14225 * gst/gstpad.c: (gst_pad_event_default_dispatch):
14226 give events a chance to be handled by event probes when the pad
14229 2005-10-06 Thomas Vander Stichele <thomas at apestaart dot org>
14231 * gst/gstevent.c: (gst_event_type_get_name),
14232 (gst_event_type_to_quark), (gst_event_finalize), (gst_event_new):
14234 add string representations for event types
14236 2005-10-06 Wim Taymans <wim@fluendo.com>
14238 * gst/elements/gstfilesink.c: (gst_file_sink_close_file):
14239 Don't use NULL pointers.
14241 2005-10-06 Thomas Vander Stichele <thomas at apestaart dot org>
14243 * gst/gst_private.h:
14245 * gst/gstelement.c:
14247 * gst/gstpluginfeature.c:
14248 widen the debug category in output to fit the biggest one we have
14249 add a bus category and use it
14250 play with the colors
14251 fix up some categories
14253 2005-10-06 Thomas Vander Stichele <thomas at apestaart dot org>
14255 * gst/gstghostpad.c: (gst_ghost_pad_internal_do_activate_push):
14256 add push activation of sink ghost pads.
14257 Andye, please verify
14259 2005-10-05 Thomas Vander Stichele <thomas at apestaart dot org>
14261 * gst/gstutils.c: (gst_element_link_pads):
14262 fix a bug in the case where neither element has a pad
14263 * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
14264 add a test for that case
14266 2005-10-05 Thomas Vander Stichele <thomas at apestaart dot org>
14268 * gst/gstpad.c: (gst_pad_push), (gst_pad_push_event):
14269 emit have-data before checking for peers. This allows
14270 for probe handlers to connect elements. This helps autopluggers.
14271 * check/gst/gstpad.c: (GST_START_TEST), (_probe_handler),
14273 add six checks, linked/unlinked with no/true/false probe
14275 2005-10-04 Wim Taymans <wim@fluendo.com>
14277 * gst/elements/gstfakesink.c: (gst_fake_sink_get_property),
14278 (gst_fake_sink_event), (gst_fake_sink_preroll),
14279 (gst_fake_sink_render), (gst_fake_sink_change_state):
14280 * gst/elements/gstfakesrc.c: (gst_fake_src_event_handler),
14281 (gst_fake_src_get_property), (gst_fake_src_create),
14282 (gst_fake_src_stop):
14283 * gst/elements/gstidentity.c: (gst_identity_stop):
14284 Protect last_message with lock.
14286 2005-10-04 Edward Hervey <edward@fluendo.com>
14289 Added precision in the comments for GST_FORMAT_DEFAULT
14291 2005-10-04 Tim-Philipp Müller <tim at centricular dot net>
14293 * tools/gst-launch.c: (main):
14294 Don't try to run erroneous pipelines.
14296 2005-10-04 Julien MOUTTE <julien@moutte.net>
14298 * gst/gstbus.c: We don't need this header.
14300 2005-10-03 Thomas Vander Stichele <thomas at apestaart dot org>
14303 back to development
14305 === release 0.9.3 ===
14307 2005-10-03 Thomas Vander Stichele <thomas at apestaart dot org>
14311 Releasing 0.9.3, "Unregistered"
14313 2005-10-03 Andy Wingo <wingo@pobox.com>
14315 * gst/gstpad.c (gst_pad_activate_push): There is a race condition
14316 whereby calling a pad's activatepush() function can start a thread
14317 that starts to push or pull before the pad gets the FLUSHING flag
14318 unset. Hack around it by holding the stream lock until the flag is
14319 set. Need to replace this with a proper solution. Together with
14320 the ghost pad fixes, this fixes mp3 playing/tagreading.
14322 * docs/design/part-gstghostpad.txt: Add a note about activation of
14323 proxy pads outside of ghost pads.
14325 * gst/gstghostpad.c: Implement the ghost pad activation design.
14327 2005-10-02 Andy Wingo <wingo@pobox.com>
14329 * gst/gstobject.h (GST_OBJECT_REFCOUNT_VALUE): Just use the int.
14330 It is volatile, after all.
14332 * docs/design/part-gstghostpad.txt: Flesh out activation with
14335 * gst/base/gstbasesrc.c (gst_base_src_init): Use
14338 2005-10-02 Tim-Philipp Müller <tim at centricular dot net>
14341 Fix (unused) AM_CONDITIONAL tests.
14343 2005-10-01 Alessandro Decina <alessandro at nnva dot org>
14345 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
14347 * gst/gstutils.c: (gst_pad_query_convert):
14348 Add assertion that makes sure src_val is >=0, just like
14349 gst_query_new_convert() has. (#315895)
14351 2005-09-30 Edward Hervey <edward@fluendo.com>
14353 * gst/elements/gsttee.c: (gst_tee_do_push), (gst_tee_handle_buffer):
14354 Let's not iterate pads we're not interested in, it avoids getting
14355 sky-high refcounts on sinkpad.
14357 2005-09-30 Wim Taymans <wim@fluendo.com>
14359 * gst/gstelement.c: (gst_element_set_state),
14360 (gst_element_change_state):
14361 Small tweak, element in ASYNC remains ASYNC.
14363 2005-09-30 Wim Taymans <wim@fluendo.com>
14365 * gst/base/gstbasesink.c: (gst_base_sink_change_state):
14366 Only error is an error.
14368 * gst/gstbin.c: (gst_bin_change_state):
14371 * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_chain):
14372 Also call pad_block in pad alloc.
14374 * gst/gstutils.c: (gst_flow_get_name):
14377 2005-09-29 Tim-Philipp Müller <tim at centricular dot net>
14379 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
14380 (gst_base_src_get_range):
14381 Fix documentation typos. Add some more debug info.
14383 2005-09-29 David Schleef <ds@schleef.org>
14385 * gst/gstplugin.c: (gst_plugin_load_file): Make some error messages
14386 more end-user friendly.
14387 * tools/gst-inspect.c: (main): Check if command-line argument is
14388 a file and attempt to load that file as a plugin.
14390 2005-09-29 Thomas Vander Stichele <thomas at apestaart dot org>
14392 * check/gst/gstbin.c:
14393 * check/states/sinks.c:
14394 fix tests for the new warning
14395 * check/gst/gstpipeline.c:
14396 add a test for pipeline and bus interaction
14397 * gst/gstelement.c:
14398 elements should be NULL if they get disposed; add a warning if not
14400 2005-09-29 Thomas Vander Stichele <thomas at apestaart dot org>
14403 for 2.6 refcounting, make debug log more correct by printing
14404 the actual refcounts at the time of swap (Wim)
14406 2005-09-29 Andy Wingo <wingo@pobox.com>
14408 * gst/gstbus.c (gst_bus_remove_signal_watch): New function,
14409 removes signal watches previously added via
14410 gst_bus_add_signal_watch.
14411 (gst_bus_add_signal_watch): Don't return the source id, just store
14412 it on the bus if there wasn't an id already.
14414 * gst/gstbus.h (GstBus): Add a couple new fields. API changes for
14415 add_signal_watch and remove_signal_watch.
14417 2005-09-29 Edward Hervey <edward@fluendo.com>
14419 * libs/gst/controller/gstcontroller.c: (gst_controller_new_list):
14420 Better if we actually iterate the list :)
14422 2005-09-29 Wim Taymans <wim@fluendo.com>
14424 * check/gst/gstbin.c: (GST_START_TEST):
14425 Change for new bus API.
14427 * check/gst/gstbus.c: (message_func_eos), (message_func_app),
14428 (send_messages), (GST_START_TEST), (gstbus_suite):
14429 Change for new bus signal API.
14431 * gst/gstbus.c: (gst_bus_class_init), (gst_bus_have_pending),
14432 (gst_bus_source_prepare), (gst_bus_source_check),
14433 (gst_bus_create_watch), (gst_bus_add_watch_full),
14434 (gst_bus_add_watch), (gst_bus_poll), (gst_bus_async_signal_func),
14435 (gst_bus_sync_signal_handler), (gst_bus_add_signal_watch):
14437 Remove support for multiple GSources operating on different
14438 message types as it is too complex and unneeded when using
14440 Added support for receiving signals from the bus.
14442 2005-09-29 Thomas Vander Stichele <thomas at apestaart dot org>
14444 * docs/libs/tmpl/gstdataprotocol.sgml:
14445 * docs/manual/advanced-dataaccess.xml:
14446 * gst/elements/gstcapsfilter.c:
14448 rename filter-caps to caps property
14450 2005-09-29 Tim-Philipp Müller <tim at centricular dot net>
14452 * gst/gstvalue.c: (gst_value_deserialize_fraction):
14453 More robust fraction string parsing.
14455 * docs/pwg/appendix-porting.xml:
14456 Mention gst_pad_use_explicit_caps() => gst_pad_use_fixed_caps()
14458 2005-09-29 Tim-Philipp Müller <tim at centricular dot net>
14460 * gst/gstcaps.c: (gst_caps_do_simplify):
14461 Thou shalt not free a structure and then continue using it
14462 in the next loop iteration.
14464 * check/gst/gstcaps.c: (check_fourcc_list), (test_simplify),
14466 Add test case for caps simplification.
14468 2005-09-29 Wim Taymans <wim@fluendo.com>
14470 * check/gst/gstbin.c: (GST_START_TEST):
14473 2005-09-29 Wim Taymans <wim@fluendo.com>
14475 * check/gst/gstbin.c: (GST_START_TEST):
14478 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init),
14479 (add_to_queue), (clear_queue), (reset_degree), (update_degree),
14480 (find_element), (gst_bin_sort_iterator_next),
14481 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
14482 (gst_bin_iterate_sorted), (gst_bin_element_set_state),
14483 (gst_bin_change_state), (gst_bin_dispose):
14484 A bin does not have a bus, it gets the bus from the parent.
14486 * gst/gstelement.c: (gst_element_requires_clock),
14487 (gst_element_provides_clock), (gst_element_is_indexable),
14488 (gst_element_is_locked_state), (gst_element_change_state),
14489 (gst_element_set_bus_func):
14492 * gst/gstpipeline.c: (gst_pipeline_class_init),
14493 (gst_pipeline_init), (gst_pipeline_provide_clock_func):
14494 The pipeline provides a bus.
14496 2005-09-28 Johan Dahlin <johan@gnome.org>
14498 * gst/gstmessage.c (gst_message_parse_state_changed): Use
14499 gst_structure_get_enum instead of gst_structure_get_int
14501 * gst/gststructure.c (gst_structure_get_enum): Impl.
14503 * gst/gststructure.h (gst_structure_get_enum): Add
14505 * docs/gst/gstreamer-sections.txt: Ditto
14507 * gst/gstmessage.c (gst_message_new_state_changed): Use
14508 GST_TYPE_STATE instead of G_TYPE_INT, mainly for language bindings
14509 which does introspection.
14510 Reviewed by Christian Schaller
14512 2005-09-28 Stefan Kost <ensonic@users.sf.net>
14514 * gst/gstinfo.c: (gst_debug_log_default):
14515 don't do dummy g_strdup()s
14516 * libs/gst/controller/gstcontroller.c:
14517 (on_object_controlled_property_changed),
14518 (gst_controlled_property_new), (gst_controller_new_valist),
14519 (gst_controller_new_list),
14520 (gst_controller_remove_properties_valist), (gst_controller_set),
14521 (gst_controller_get), (gst_controller_sync_values),
14522 (gst_controller_get_value_array), (_gst_controller_class_init),
14523 (gst_controller_get_type):
14524 * libs/gst/controller/gstcontroller.h:
14525 * libs/gst/controller/gstinterpolation.c:
14526 (gst_controlled_property_find_timed_value_node):
14527 convert // to /**/ comments
14529 2005-09-28 Wim Taymans <wim@fluendo.com>
14531 * gst/gstbus.c: (marshal_VOID__MINIOBJECT), (gst_bus_class_init),
14532 (gst_bus_post), (poll_func), (gst_bus_async_signal_func),
14533 (gst_bus_sync_signal_handler):
14535 Added async-message and sync-message signals to the bus.
14536 Added helper BusFunc to emit signals for all posted messages.
14538 * gst/gstmessage.c: (gst_message_type_get_name),
14539 (gst_message_type_to_quark), (gst_message_get_type):
14540 * gst/gstmessage.h:
14541 Register quarks for message names.
14543 2005-09-28 Stefan Kost <ensonic@users.sf.net>
14545 * docs/libs/gstreamer-libs-sections.txt:
14546 * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist),
14547 (gst_controller_new_list):
14548 * libs/gst/controller/gstcontroller.h:
14549 added another constructor for language bindings
14551 2005-09-28 Thomas Vander Stichele <thomas at apestaart dot org>
14553 * check/gst/gstpipeline.c: (GST_START_TEST), (gst_pipeline_suite):
14557 * gst/gstinfo.c: (_gst_debug_init):
14558 slightly more readable color for refcount debugging
14560 2005-09-28 Wim Taymans <wim@fluendo.com>
14562 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_provide_clock_func),
14563 (add_to_queue), (clear_queue), (reset_degree), (update_degree),
14564 (find_element), (gst_bin_sort_iterator_next),
14565 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
14566 (gst_bin_iterate_sorted), (gst_bin_element_set_state),
14567 (gst_bin_change_state), (gst_bin_dispose):
14568 Small doc fixes. get_clock -> provide_clock.
14570 * gst/gstelement.c: (gst_element_class_init),
14571 (gst_element_provides_clock), (gst_element_provide_clock),
14572 (gst_element_get_clock), (gst_element_commit_state),
14573 (gst_element_lost_state):
14574 * gst/gstelement.h:
14575 Make get/set_clock() symetric. Add provide_clock vmethod since
14576 that is actually what this function does.
14578 * gst/gstpipeline.c: (gst_pipeline_class_init),
14579 (gst_pipeline_change_state), (gst_pipeline_provide_clock_func),
14580 (gst_pipeline_get_clock):
14581 get_clock -> provide_clock.
14583 2005-09-28 Andy Wingo <wingo@pobox.com>
14585 * gst/base/gstbasesrc.c (gst_base_src_unlock): Comment a bit in
14586 lieu of real docs...
14588 * gst/elements/gstfdsrc.c: Cleaned up a bit.
14590 2005-09-28 Tim-Philipp Müller <tim at centricular dot net>
14592 * gst/elements/gstcapsfilter.c:
14593 * gst/elements/gstfakesink.c:
14594 * gst/elements/gstfakesrc.c:
14595 * gst/elements/gstfdsink.c:
14596 * gst/elements/gstfdsrc.c:
14597 * gst/elements/gstfilesink.c:
14598 * gst/elements/gstfilesrc.c:
14599 * gst/elements/gstidentity.c:
14600 * gst/elements/gsttee.c:
14601 * gst/elements/gsttypefindelement.c:
14602 Make element details static.
14604 2005-09-28 Wim Taymans <wim@fluendo.com>
14606 * gst/gstbin.c: (add_to_queue), (clear_queue), (reset_outdegree),
14607 (update_outdegree), (find_element), (gst_bin_sort_iterator_next),
14608 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
14609 (gst_bin_iterate_sorted), (gst_bin_element_set_state),
14610 (gst_bin_change_state), (gst_bin_dispose):
14611 Some documentation updates.
14612 Clean up dispose handlers.
14614 * gst/gstobject.c: (gst_object_ref), (gst_object_unref):
14615 * gst/gstpad.c: (gst_pad_dispose):
14616 Clean up dispose handler.
14618 * gst/gstpipeline.c: (gst_pipeline_change_state):
14619 Removed spurious UNLOCK.
14621 2005-09-27 Stefan Kost <ensonic@users.sf.net>
14623 * docs/gst/gstreamer-sections.txt:
14624 * gst/base/gstbasesrc.h:
14625 * gst/gstelement.h:
14629 * gst/gstpipeline.c:
14630 * gst/gstpipeline.h:
14633 added two new functions to the docs
14634 documents all undocumented GstXXXFlags
14635 completed some incomplete docs
14637 2005-09-27 Thomas Vander Stichele <thomas at apestaart dot org>
14639 * gst/gstbin.c: (gst_bin_dispose):
14640 * gst/gstelement.c: (gst_element_dispose):
14641 remove now useless and leaky resurrection code in dispose
14642 * gst/base/gstbasesrc.c: (gst_base_src_init):
14643 * gst/gstelementfactory.c: (gst_element_factory_create):
14644 * gst/gstobject.c: (gst_object_set_parent):
14647 2005-09-27 Wim Taymans <wim@fluendo.com>
14649 * docs/design/part-TODO.txt:
14652 * gst/gstbin.c: (add_to_queue), (clear_queue), (reset_outdegree),
14653 (update_outdegree), (find_element), (gst_bin_sort_iterator_next),
14654 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
14655 (gst_bin_iterate_sorted), (gst_bin_element_set_state),
14656 (gst_bin_change_state):
14657 * gst/gstelement.h:
14658 Remove element variable, we keep element info in the iterator now.
14660 2005-09-27 Andy Wingo <wingo@pobox.com>
14662 * libs/gst/dataprotocol/dataprotocol.c: Fix error-checking return
14665 2005-09-27 Wim Taymans <wim@fluendo.com>
14667 * check/gst/gstbin.c: (GST_START_TEST):
14668 Enable check that works now.
14670 * gst/gstbin.c: (add_to_queue), (clear_queue), (reset_outdegree),
14671 (update_outdegree), (find_element), (gst_bin_sort_iterator_next),
14672 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
14673 (gst_bin_iterate_sorted), (gst_bin_element_set_state),
14674 (gst_bin_change_state):
14676 Redid the state change algorithm using a topological sort algo.
14677 Handles all cases correctly.
14678 Exposed iterator for state change order.
14680 * gst/gstelement.h:
14681 Temp storage for state changes. Need to get rid of this soon.
14683 2005-09-27 Wim Taymans <wim@fluendo.com>
14685 * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_do_push):
14686 * gst/gstutils.c: (intersect_caps_func), (gst_pad_proxy_getcaps),
14687 (link_fold_func), (gst_pad_proxy_setcaps):
14688 Leak fixes, the fold functions need to unref the passed object and
14689 _get_parent_*() returns ref to parent.
14691 2005-09-27 Tim-Philipp Müller <tim at centricular dot net>
14693 * check/gst/gstbuffer.c: (test_make_writable):
14694 Plug leak in test case and fix 'make check-valgrind'
14696 2005-09-27 Tim-Philipp Müller <tim at centricular dot net>
14698 * gst/gstbuffer.c: (gst_subbuffer_init):
14699 Set READONLY flag on subbuffers, so that gst_buffer_make_writable()
14700 works correctly in all circumstances (we could have just copied
14701 the parent buffer's readonly flag, but conceptually it seems
14702 cleaner to mark all subbuffers as read-only). (based on patch
14703 by Alessandro Decina, #314710).
14705 * check/gst/gstbuffer.c: (create_read_only_buffer),
14706 (test_make_writable), (test_subbuffer_make_writable),
14708 Add some tests for gst_buffer_make_writable().
14710 2005-09-27 Wim Taymans <wim@fluendo.com>
14712 * gst/gstbin.c: (bin_element_is_semi_sink), (gst_bin_change_state):
14713 use gst_object_has_ancestor().
14715 * gst/gstobject.c: (gst_object_has_ancestor):
14717 gst_object_has_ancestor() copied from gstbin.c as it is a
14720 * tests/instantiate/create.c: (create_all_elements):
14721 * tests/lat.c: (handoff_src), (handoff_sink):
14722 * tests/sched/runxml.c: (main):
14723 * tests/seeking/seeking1.c: (main):
14724 * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
14726 Fix compilation of some tests.
14728 2005-09-27 Tim-Philipp Müller <tim at centricular dot net>
14731 Remove comment. GST_TYPE_G_ERROR is here to stay,
14732 G_TYPE_ERROR has been WONTFIX'ed by the GLib folks
14733 (#316961, #300610).
14735 2005-09-26 Wim Taymans <wim@fluendo.com>
14737 * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
14738 Added check that shows error in state change order.
14740 2005-09-26 Wim Taymans <wim@fluendo.com>
14742 * gst/gstbin.c: (gst_bin_change_state):
14743 Make state change function use 3 queues again, we were
14744 adding elements in the wrong order.
14746 * gst/gstghostpad.c: (gst_ghost_pad_do_unlink):
14749 * gst/gstpad.c: (gst_pad_dispose):
14750 Added some debug info first.
14752 2005-09-26 Tim-Philipp Müller <tim at centricular dot net>
14754 * docs/design/draft-push-pull.txt:
14755 * docs/design/part-events.txt:
14756 * docs/design/part-overview.txt:
14757 * docs/design/part-scheduling.txt:
14758 Replace all _pull_region() with _pull_range()
14760 2005-09-26 Andy Wingo <wingo@pobox.com>
14762 * gst/gstvalue.c (_gst_value_initialize): Better fakeout.
14764 * check/gst-libs/controller.c: Update for controller api change.
14767 * tests/Makefile.am:
14768 * tests/memchunk: Remove memchunk benchmark stuff, this is taken
14769 over by GLib bug 118439.
14771 * gst/base/gstbasesink.c (gst_base_sink_wait): Factor out the wait
14772 routines to a function.
14774 * docs/libs/gstreamer-libs-sections.txt: I am a good person today.
14776 * libs/gst/controller/gsthelper.c:
14777 * libs/gst/controller/gstcontroller.h (gst_controller_sync_values)
14778 (gst_object_sync_values): Renamed from sink_values. Ugh.
14780 * libs/gst/controller/gsthelper.c: Update for __gst_controller_key.
14782 * libs/gst/controller/gstcontroller.c (__gst_controller_key):
14783 Renamed from controller_key, as it is exported.
14785 * gst/gstvalue.c (_gst_value_initialize): Fake out the compiler.
14787 2005-09-26 Thomas Vander Stichele <thomas at apestaart dot org>
14792 * gst/gstpadtemplate.h:
14795 * gst/gstqueryutils.c:
14796 * gst/gstqueryutils.h:
14797 remove queryutils headers after moving the two used functions
14798 to gstquery. also fixes build problem for gstsiddec
14800 2005-09-26 Michael Smith <msmith@fluendo.com>
14802 * tools/gst-launch.1.in:
14803 Correct documentation in manpage of debug syntax
14805 2005-09-26 Wim Taymans <wim@fluendo.com>
14807 * gst/base/gstbasesrc.c: (gst_base_src_get_range),
14808 (gst_base_src_is_seekable), (gst_base_src_change_state):
14809 Some more debugging info.
14811 2005-09-25 Stefan Kost <ensonic@users.sf.net>
14813 * docs/gst/gstreamer-sections.txt:
14814 * gst/base/gstbasetransform.h:
14818 2005-09-25 Stefan Kost <ensonic@users.sf.net>
14820 * docs/gst/.cvsignore:
14821 * docs/gst/tmpl/.cvsignore:
14822 * docs/gst/tmpl/gstpipeline.sgml:
14823 * docs/gst/tmpl/gstplugin.sgml:
14824 * gst/gstpipeline.c:
14827 inlined the last two docs files
14828 removed the tmpl directory from cvs (no more conflicts here!)
14830 2005-09-25 Stefan Kost <ensonic@users.sf.net>
14832 * docs/gst/gstreamer-sections.txt:
14833 * docs/gst/tmpl/.cvsignore:
14834 * docs/gst/tmpl/gstpad.sgml:
14835 * docs/gst/tmpl/gstpadtemplate.sgml:
14837 * gst/gstpad.c: (gst_pad_class_init), (gst_pad_dispose),
14838 (gst_pad_finalize), (gst_pad_set_pad_template):
14840 * gst/gstpadtemplate.c: (gst_pad_template_get_type),
14841 (gst_pad_template_class_init), (gst_pad_template_init),
14842 (gst_pad_template_dispose), (name_is_valid),
14843 (gst_static_pad_template_get), (gst_pad_template_new),
14844 (gst_static_pad_template_get_caps), (gst_pad_template_get_caps),
14845 (gst_pad_template_pad_created):
14846 * gst/gstpadtemplate.h:
14847 inlined two more docs
14848 factored gstpadtemplate out of gstpad
14850 2005-09-24 Tim-Philipp Müller <tim at centricular dot net>
14852 * check/gst/gstbin.c: (test_children_state_change_order_flagged_sink),
14853 (test_children_state_change_order_semi_sink):
14854 Fix test case: we can't rely on a fixed state change order when
14855 going from READY => PAUSED because the sink might commit its
14856 new state first when the first buffer created by the source
14857 reaches the sink before the source has finished its change state.
14858 (Test case still fails at times, see #316856, comment 5 onwards)
14860 2005-09-24 Wim Taymans <wim@fluendo.com>
14862 * docs/design/part-events.txt:
14863 * docs/design/part-gstbus.txt:
14864 * docs/design/part-gstpipeline.txt:
14865 * docs/design/part-messages.txt:
14866 * docs/design/part-overview.txt:
14867 * docs/design/part-segments.txt:
14871 * gst/gstelement.c:
14874 * gst/gstiterator.c:
14875 Various documentation updates.
14877 2005-09-24 Thomas Vander Stichele <thomas at apestaart dot org>
14880 Well, that's embarassing. Luckily we weren't using
14881 GST_CLOCK_DIFF anywhere.
14883 2005-09-23 Thomas Vander Stichele <thomas at apestaart dot org>
14885 * common/gtk-doc.mak:
14886 don't fail on building XML, FC4 slave shows a bunch of doc
14887 missing bits that I don't get
14889 * gst/gstpipeline.c:
14890 * gst/gststructure.c:
14893 2005-09-23 Tim-Philipp Müller <tim at centricular dot net>
14895 * docs/design/part-gstbin.txt:
14896 * docs/design/part-gstbus.txt:
14898 Add blurb about how the bus goes into flushing mode and
14899 drops all messages when its bin goes from READY into NULL
14902 2005-09-23 Thomas Vander Stichele <thomas at apestaart dot org>
14904 * docs/gst/gstreamer-sections.txt:
14905 * gst/gststructure.c: (gst_structure_get_clock_time):
14906 * gst/gststructure.h:
14907 add a method to get a GstClockTime out of a structure
14909 2005-09-23 Tim-Philipp Müller <tim at centricular dot net>
14911 * check/gst/gstbin.c: (test_children_state_change_order_flagged_sink),
14912 (test_children_state_change_order_semi_sink), (gst_bin_suite):
14913 Added test to check state change order in bins (can still be made
14914 to fail here under heavy disk load; bails out with 'Push on pad
14915 fakesink:sink0, but it was not activated in push mode').
14917 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_change_state):
14918 Fix state change order when there is only a semi sink (#316856)
14920 * gst/gstbus.c: (gst_bus_class_init):
14921 Use _class_peek_parent(), not _class_ref(); fix docs to say
14922 'default main context' instead of 'mainloop' where that is
14925 * gst/gstelement.c: (gst_element_commit_state),
14926 (gst_element_set_state):
14927 Fix typos in debug messages
14929 2005-09-23 Thomas Vander Stichele <thomas at apestaart dot org>
14932 * gst/gstpad.c: (gst_pad_class_init), (gst_pad_chain):
14933 * gst/gstpluginfeature.c:
14935 various doc updates
14936 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
14937 change an assert into an error until it gets fixed properly
14939 2005-09-23 Stefan Kost <ensonic@users.sf.net>
14941 * docs/gst/gstreamer-sections.txt:
14942 * docs/gst/tmpl/.cvsignore:
14943 * docs/gst/tmpl/gstelement.sgml:
14944 * docs/gst/tmpl/gstinfo.sgml:
14945 * docs/gst/tmpl/gstobject.sgml:
14946 * gst/gstelement.c:
14947 * gst/gstelement.h:
14950 * gst/gstobject.c: (gst_object_class_init):
14952 inlined 3 more biiiig doc files and added some missing docs on the fly
14954 2005-09-23 Thomas Vander Stichele <thomas at apestaart dot org>
14956 * check/gst/.cvsignore:
14957 * check/gst/gstplugin.c: (GST_START_TEST), (gst_plugin_suite):
14958 * gst/gstregistryxml.c: (load_plugin),
14959 (gst_registry_xml_save_plugin):
14960 put back source in registry. add checks for find_plugin.
14961 * testsuite/states/bin.c: (assert_state), (empty_bin),
14962 (test_adding_one_element), (main):
14963 * testsuite/states/locked.c: (main):
14964 some compile/run fixes
14966 2005-09-22 Thomas Vander Stichele <thomas at apestaart dot org>
14968 * check/gst/gstvalue.c: (GST_START_TEST):
14969 fix leaks in the test itself
14971 2005-09-22 Wim Taymans <wim@fluendo.com>
14973 * gst/base/gstbasesink.c: (gst_base_sink_class_init),
14974 (gst_base_sink_send_event), (gst_base_sink_peer_query),
14975 (gst_base_sink_query):
14976 Prepare for more accurate position reporting and query
14979 * gst/gstelement.c: (gst_element_send_event),
14980 (gst_element_set_state):
14983 2005-09-22 Wim Taymans <wim@fluendo.com>
14985 * gst/gstquery.c: (gst_query_new_segment), (gst_query_set_segment),
14986 (gst_query_parse_segment):
14988 More documentation.
14989 Add segment query for future use.
14991 2005-09-22 Wim Taymans <wim@fluendo.com>
14993 * gst/gstbin.c: (gst_bin_add_func):
14994 Some more debug info.
14996 * gst/gstelement.c: (gst_element_send_event):
14997 Simplify send_event
14999 * gst/gstelement.h:
15000 Don't know how flags got broken.
15005 2005-09-22 Tim-Philipp Müller <tim at centricular dot net>
15007 * check/gst/gstvalue.c: (test_date), (gst_value_suite):
15008 Add simplistic test suite for GST_TYPE_DATE serialisation and
15011 2005-09-22 Tim-Philipp Müller <tim at centricular dot net>
15013 * docs/gst/gstreamer-sections.txt:
15014 * gst/gststructure.c: (gst_structure_set_valist),
15015 (gst_structure_get_date):
15016 * gst/gststructure.h:
15017 * gst/gstvalue.c: (gst_value_set_date), (gst_value_get_date),
15018 (gst_date_copy), (gst_value_compare_date),
15019 (gst_value_serialize_date), (gst_value_deserialize_date),
15020 (gst_value_transform_date_string),
15021 (gst_value_transform_string_date), (_gst_value_initialize):
15023 Add GST_TYPE_DATE, a boxed type that wraps GDate, and the usual
15024 bunch of utility functions along with a hack that checks that
15025 developers don't accidentally use G_TYPE_DATE where GST_TYPE_DATE
15026 is required. Part of the grand scheme in #170777.
15028 2005-09-22 Andy Wingo <wingo@pobox.com>
15030 * gst/gstconfig.h.in: Psych out gtk-doc.
15032 * docs/gst/gstreamer-sections.txt: Add GST_HAVE_GLIB_2_8.
15034 * check/Makefile.am (check_PROGRAMS): Add gstplugin to the tests.
15036 * tools/gst-inspect.c (print_element_list): Plug some
15037 inconsequential leaks.
15039 * gst/gstregistry.c (gst_registry_get_default): Doc.
15041 * check/gst/gstplugin.c:
15042 * gst/gsttypefindfactory.c (gst_type_find_factory_call_function):
15043 * gst/gstelementfactory.c (gst_element_factory_create):
15044 * gst/gstindexfactory.c (gst_index_factory_create): Update for
15047 * gst/gstpluginfeature.c (gst_plugin_feature_list_free): Doc.
15048 (gst_plugin_feature_load): Doc, don't eat refs.
15050 * gst/gstplugin.c (gst_plugin_load): Doc, don't eat refs.
15051 (gst_plugin_list_free): Doc.
15052 (gst_plugin_load_file): Doc updates.
15054 * gst/gstbuffer.c (gst_buffer_get_caps): Like all our _get
15055 accessors returning refcounted objects, return a ref.
15057 * check/gst/gstbuffer.c (GST_START_TEST): Use refcount-idempotent
15058 accessor for caps. IDEMPOTENCE. Oh yes.
15060 2005-09-21 Francis Labonte <francis_labonte at hotmail dot com>
15062 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
15064 * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
15065 (_gst_debug_register_funcptr):
15066 Add mutex to serialise access to the hash table with
15067 the function pointer => function name string mapping;
15068 make that hash table static scope (#316809).
15070 * gst/registries/.cvsignore:
15071 Remove left-over file.
15073 2005-09-21 Tim-Philipp Müller <tim at centricular dot net>
15075 * docs/pwg/appendix-porting.xml:
15076 And something about newsegment events and caps-on-buffers to
15077 the porting guide (feel free to improve).
15079 2005-09-21 Andy Wingo <wingo@pobox.com>
15081 * check/gst/gstutils.c (test_buffer_probe_n_times): Add tests for
15082 data and event probes on the same pad.
15083 (test_buffer_probe_once): Test that removing probes from within
15084 the probe functions works.
15086 2005-09-21 Andy Wingo <wingo@pobox.com>
15088 * check/gst/gstutils.c: New file.
15089 (test_buffer_probe_n_times): A simple buffer probe test. More to
15092 * gst/gstutils.c (gst_pad_add_buffer_probe): Connect to
15093 have-data::buffer, not have-data.
15094 (gst_pad_add_event_probe): Likewise for have-data::event.
15095 (gst_pad_add_data_probe): More docs. The part about 'resolving the
15096 peer' isn't quite right yet though.
15097 (gst_pad_remove_buffer_probe, gst_pad_remove_event_probe)
15098 (gst_pad_remove_data_probe): Change to take the guint handler_id
15099 as their arg, not the function+data, which is more glib-like.
15101 * gst/gstpad.c (gst_pad_emit_have_data_signal): Add a detail to
15102 the signal emission to indicate if the data is a buffer or an
15104 (gst_pad_get_type): Initialize buffer and event quarks.
15105 (gst_pad_class_init): have-data is now a detailed signal, yes it
15108 2005-09-21 Tim-Philipp Müller <tim at centricular dot net>
15110 * gst/base/gstbasetransform.c: (gst_base_transform_transform_size):
15111 * gst/gstutils.c: (gst_util_set_value_from_string),
15112 (gst_util_set_object_arg):
15113 Don't put functional code in g_return_if_fail() or
15114 g_return_val_if_fail() statements, otherwise things will
15115 break when G_DISABLE_CHECKS is defined during compilation.
15117 2005-09-21 Stefan Kost <ensonic@users.sf.net>
15119 * docs/gst/tmpl/.cvsignore:
15120 * docs/gst/tmpl/gstvalue.sgml:
15123 inlied another one and added some obvious docs
15125 2005-09-21 Wim Taymans <wim@fluendo.com>
15127 * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
15128 (gst_fdsrc_init), (gst_fdsrc_start), (gst_fdsrc_stop),
15129 (gst_fdsrc_unlock), (gst_fdsrc_set_property),
15130 (gst_fdsrc_get_property), (gst_fdsrc_create):
15131 * gst/elements/gstfdsrc.h:
15132 Properly implement fdsrc. Removed signal and timeout,
15133 better implemented somewhere else.
15135 2005-09-21 Stefan Kost <ensonic@users.sf.net>
15137 * docs/gst/tmpl/.cvsignore:
15138 * docs/gst/tmpl/gstimplementsinterface.sgml:
15139 * gst/gstinterface.c:
15142 2005-09-21 Stefan Kost <ensonic@users.sf.net>
15144 * docs/gst/gstreamer-sections.txt:
15145 * docs/gst/tmpl/.cvsignore:
15146 * docs/gst/tmpl/gstenumtypes.sgml:
15147 remove obsolete doc file
15149 2005-09-21 David Schleef <ds@schleef.org>
15151 * gst/gstelementfactory.c: (gst_element_factory_make): Drink a
15152 little beer, fix a little leak.
15154 2005-09-21 Stefan Kost <ensonic@users.sf.net>
15156 * docs/gst/gstreamer-docs.sgml:
15157 * docs/gst/gstreamer-sections.txt:
15158 * docs/gst/tmpl/.cvsignore:
15162 * gst/gstelement.h:
15163 * gst/gstindex.c: (gst_index_class_init):
15165 * gst/gstindexfactory.c: (gst_index_factory_get_type),
15166 (gst_index_factory_class_init), (gst_index_factory_init),
15167 (gst_index_factory_finalize), (gst_index_factory_new),
15168 (gst_index_factory_destroy), (gst_index_factory_find),
15169 (gst_index_factory_create), (gst_index_factory_make):
15170 * gst/gstindexfactory.h:
15171 * gst/gstpluginfeature.c:
15172 * gst/gstpluginfeature.h:
15173 * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist):
15174 more docs inlined, splitted gstindex.{c,h}
15176 2005-09-20 Thomas Vander Stichele <thomas at apestaart dot org>
15178 * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist):
15181 2005-09-20 Tim-Philipp Müller <tim at centricular dot net>
15183 * gst/elements/gstfilesink.c: (gst_file_sink_init):
15184 Set sync to FALSE by default.
15186 2005-09-20 Wim Taymans <wim@fluendo.com>
15188 * gst/base/gstbasesink.c: (gst_base_sink_class_init),
15189 (gst_base_sink_init):
15190 Make sync property settable from subclass.
15192 * gst/elements/gstfakesink.c: (gst_fake_sink_init),
15193 (gst_fake_sink_change_state):
15194 Set sync to FALSE by default.
15196 2005-09-20 Wim Taymans <wim@fluendo.com>
15198 * gst/gstbus.c: (poll_func), (poll_timeout), (gst_bus_poll):
15199 * tools/gst-launch.c: (main):
15200 The timeout handler should have lower priority than the source
15201 so we don't timeout before popping a message with 0 timeout.
15202 Dump error messages after failed state change.
15204 2005-09-20 Tim-Philipp Müller <tim at centricular dot net>
15206 * tools/gst-inspect.c: (print_element_properties_info):
15209 2005-09-20 Thomas Vander Stichele <thomas at apestaart dot org>
15211 * check/gst/gstevent.c:
15212 * gst/elements/gstfakesink.c:
15213 * gst/elements/gstfakesink.h:
15214 remove the sync property from fakesink.
15215 has the side effect of setting sync TRUE
15216 for fakesink, which is a change. Anyone who knows how
15217 to fix this nicely in a GObject-y way, feel free.
15219 2005-09-20 Stefan Kost <ensonic@users.sf.net>
15221 * docs/gst/gstreamer-docs.sgml:
15222 remove probe refsection
15224 2005-09-20 Stefan Kost <ensonic@users.sf.net>
15226 * check/Makefile.am:
15227 disable valgrinding the controller test again
15228 * docs/gst/gstreamer-sections.txt:
15229 update for api-changes
15231 2005-09-20 Wim Taymans <wim@fluendo.com>
15233 * gst/base/gstbasesink.c: (gst_base_sink_class_init),
15234 (gst_base_sink_set_property), (gst_base_sink_get_property),
15235 (gst_base_sink_do_sync):
15236 * gst/base/gstbasesink.h:
15237 Added sync property to basesink to disable clock sync.
15239 2005-09-20 Andy Wingo <wingo@pobox.com>
15241 * gst/gstelementfactory.c (gst_element_factory_create): Avoid
15242 eating the caller's refcount.
15244 * gst/gstobject.h (GST_OBJECT_REFCOUNT)
15245 (GST_OBJECT_REFCOUNT_VALUE): Conditionally fondle the right
15248 * gst/gstconfig.h.in (GST_HAVE_GLIB_2_8):
15249 * configure.ac (GST_HAVE_GLIB_2_8_DEFINE): Make the availability
15250 of GLib 2.8 public, so we can know which refcount to check in
15253 * gst/gstobject.c: Use the GST_HAVE_GLIB_2_8 define.
15254 (gst_object_init): Only set the gst refcount if we're going ahead
15255 with the refcount hack.
15257 2005-09-20 Stefan Kost <ensonic@users.sf.net>
15259 * check/gst-libs/controller.c: (plugin_init), (GST_START_TEST):
15260 * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist):
15261 more leaks plumbed, added more debug-logging
15265 2005-09-20 Thomas Vander Stichele <thomas at apestaart dot org>
15267 * gst/gstmessage.c:
15268 remove include of gstmemchunk.h
15270 2005-09-20 Thomas Vander Stichele <thomas at apestaart dot org>
15272 * gst/gstclock.c: (_gst_clock_id_free):
15273 Commit from the Political Party For More Atomic CVS Commits,
15274 so that people don't waste too much of their day fishing
15275 out obvious leaks out of massive commits.
15276 Oh, and fix a pretty damn obvious leak in the memchunk
15279 2005-09-20 Stefan Kost <ensonic@users.sf.net>
15281 * check/Makefile.am:
15282 * check/gst-libs/controller.c: (plugin_init), (GST_START_TEST):
15283 plug mem-leak, re-add to valgrindable tests
15285 2005-09-20 Thomas Vander Stichele <thomas at apestaart dot org>
15288 unbreak the build for those who have chronic arthritis
15289 and typing "make check" is just too taxing on the hands
15291 2005-09-20 Andy Wingo <wingo@pobox.com>
15293 * gst/gst.h: Re-add marshal to gst.h's include list -- if we
15294 really want it out, you should fix plugins at the same time.
15296 2005-09-19 Stefan Kost <ensonic@users.sf.net>
15299 * docs/gst/gstreamer-sections.txt:
15301 added missing symbols to api docs
15302 disable ref-count hack if we have glib >= 2.8
15304 2005-09-19 David Schleef <ds@schleef.org>
15306 * docs/gst/Makefile.am: Ignore a few more internal headers
15307 * docs/gst/gstreamer-docs.sgml: Remove old sections
15308 * docs/gst/gstreamer-sections.txt: Remove old sections
15309 * docs/gst/tmpl/gstobject.sgml: update
15310 * docs/gst/tmpl/gstplugin.sgml: update
15311 * docs/gst/tmpl/gstpluginfeature.sgml: update
15312 * docs/random/ds/0.9-suggested-changes: update.
15313 * gst/Makefile.am: remove memchunk and trashstack, since they're
15315 * gst/gst.c: (gst_deinit): rename gst_registry_deinit to _cleanup
15316 * gst/gst.h: don't include some headers
15317 * gst/gstchildproxy.c: add gstmarshal.h
15318 * gst/gstclock.c: Don't use memchunks
15319 * gst/gstminiobject.c: Add some docs
15320 * gst/gstobject.c: remove DESTROYED flag, since it's redundant
15321 * gst/gstobject.h: same
15322 * gst/gstplugin.c: include gstmacros.h
15323 * gst/gstplugin.h: don't include gstmacros.h, since it's private
15324 * gst/gstquery.c: don't use memchunks
15325 * gst/gstregistry.c: rename gst_registry_deinit()
15326 * gst/gstregistry.h: same
15328 2005-09-19 David Schleef <ds@schleef.org>
15330 * docs/libs/gstreamer-libs-docs.sgml: Remove docs for getbits
15331 * docs/libs/gstreamer-libs-sections.txt:
15332 * docs/libs/tmpl/gstgetbits.sgml:
15333 * docs/libs/tmpl/gstputbits.sgml:
15335 2005-09-19 Tim-Philipp Müller <tim at centricular dot net>
15337 * win32/gstenumtypes.c:
15338 * win32/gstenumtypes.h:
15341 2005-09-19 Wim Taymans <wim@fluendo.com>
15343 * gst/gstpipeline.c: (do_pipeline_seek), (gst_pipeline_send_event):
15344 Automatically PAUSE and RESUME a pipeline when a flushing seek
15347 2005-09-19 Andy Wingo <wingo@pobox.com>
15349 * gst/gstregistry.h: Spacing fixen.
15351 2005-09-19 Wim Taymans <wim@fluendo.com>
15353 * gst/base/gstbasesrc.c: (gst_base_src_change_state):
15354 Handle state change failure more correctly.
15356 2005-09-19 Thomas Vander Stichele <thomas at apestaart dot org>
15358 * check/Makefile.am:
15359 * check/pipelines/cleanup.c: (run_pipeline):
15360 * check/pipelines/simple_launch_lines.c: (run_pipeline),
15362 enable cleanup again after fixing the leak
15364 some more info on docs
15366 2005-09-19 Thomas Vander Stichele <thomas at apestaart dot org>
15368 * check/Makefile.am:
15369 re-enable tests now that leaks are plugged
15371 * check/gst/gstbin.c:
15372 * check/gst/gstpipeline.c:
15373 add some more tests while fixing leaks
15374 * common/check.mak:
15375 make sure binaries are uptodate when valgrinding/gdbing
15377 * gst/gstelementfactory.c:
15378 remove a ref too many, and add a FIXME for when we get
15379 round to disposing of classes
15381 fix the refcounting when loading a plugin from a file and
15382 the code pretends that the pointer is the same even though
15383 of course it can change
15384 * gst/gstpluginfeature.c:
15385 unref plugins marked cached (a bit confusing as a name)
15386 as the docs state should be done
15387 various doc additions to explain refcounting
15388 * gst/gstregistry.c:
15389 * gst/gstregistryxml.c:
15392 2005-09-19 Wim Taymans <wim@fluendo.com>
15394 * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
15395 * check/gst/gstbus.c: (message_func_eos), (message_func_app),
15396 (send_messages), (GST_START_TEST), (gstbus_suite):
15397 * check/gst/gstpipeline.c: (GST_START_TEST):
15398 * check/pipelines/cleanup.c: (run_pipeline):
15399 * check/pipelines/simple_launch_lines.c: (run_pipeline),
15401 * gst/gstbus.c: (gst_bus_have_pending), (gst_bus_source_prepare),
15402 (gst_bus_source_check), (gst_bus_source_dispatch),
15403 (gst_bus_create_watch), (gst_bus_add_watch_full),
15404 (gst_bus_add_watch), (poll_func), (poll_timeout), (gst_bus_poll):
15406 * tools/gst-launch.c: (event_loop):
15407 * tools/gst-md5sum.c: (event_loop):
15408 GstBusHandler -> GstBusFunc, return value has the same meaning as
15409 any other GSource (FALSE == remove source).
15410 _add_watch() and _add_watch_full() now take a MessageType mask to
15411 only handle specific types of messages.
15412 _poll() returns the GstMessage instead of the message type to avoid
15414 _have_pending() takes a MessageType mask now too.
15415 Added testsuite for multiple bus watches.
15416 Fix testsuites and applications for new bus API.
15418 2005-09-19 Thomas Vander Stichele <thomas at apestaart dot org>
15420 * check/Makefile.am:
15421 mark a bunch of the tests as to fix until we fix them
15423 2005-09-18 Thomas Vander Stichele <thomas at apestaart dot org>
15425 * common/check.mak:
15426 use GST_PLUGIN settings for valgrind tests as well, so we're
15427 valgrinding the correct thing
15428 * gst/gst.c: (init_post):
15431 2005-09-18 Thomas Vander Stichele <thomas at apestaart dot org>
15433 * gst/gst.c: (init_post), (gst_deinit):
15434 * gst/gstelementfactory.c: (gst_element_factory_class_init),
15435 (gst_element_factory_finalize), (gst_element_factory_cleanup):
15436 * gst/gstindex.c: (gst_index_factory_class_init),
15437 (gst_index_factory_finalize):
15438 * gst/gstobject.c: (gst_object_dispose):
15439 * gst/gstplugin.c: (gst_plugin_finalize), (gst_plugin_class_init),
15440 (gst_plugin_load_file), (gst_plugin_desc_free):
15441 * gst/gstpluginfeature.c: (gst_plugin_feature_class_init),
15442 (gst_plugin_feature_finalize):
15443 * gst/gstregistry.c: (gst_registry_class_init),
15444 (gst_registry_init), (gst_registry_finalize),
15445 (gst_registry_get_default), (gst_registry_deinit):
15446 * gst/gstregistry.h:
15447 * gst/gstregistryxml.c: (load_feature), (load_plugin):
15448 various cleanups and memleak plugging. make valgrind is happy now.
15450 2005-09-18 Thomas Vander Stichele <thomas at apestaart dot org>
15452 * common/check.mak:
15453 add a check-valgrind target
15455 2005-09-18 David Schleef <ds@schleef.org>
15457 * tools/gst-inspect.c: Revert the GOption code.
15459 2005-09-17 David Schleef <ds@schleef.org>
15461 * check/Makefile.am: Fix environment variables.
15462 * check/gst/gstplugin.c: Fix for API changes.
15463 * tools/gst-inspect.c: Fix for API changes.
15464 * tools/gst-xmlinspect.c: Fix for API changes.
15465 * gst/gstelementfactory.c:
15468 * gst/gstpluginfeature.c:
15469 * gst/gstpluginfeature.h:
15470 * gst/gstregistry.c:
15471 * gst/gstregistry.h:
15472 * gst/gstregistryxml.c:
15473 * gst/gsttypefind.c:
15474 * gst/gsttypefindfactory.c:
15475 * gst/indexers/gstfileindex.c:
15476 * gst/indexers/gstmemindex.c:
15477 * gst/schedulers/Makefile.am:
15478 Change registry to keep track of both plugins and features,
15479 removing the feature tracking from plugins themselves.
15481 2005-09-16 Thomas Vander Stichele <thomas at apestaart dot org>
15483 * check/Makefile.am:
15484 * tools/gst-register.1.in:
15485 remove gst-register
15487 2005-09-15 David Schleef <ds@schleef.org>
15489 * check/gst/gstplugin.c:
15490 * gst/gstelementfactory.c:
15492 * gst/gstpluginfeature.c:
15493 * gst/gstregistry.c:
15494 Getting tired of debugging. Disabled all the unreffing of
15495 plugins and features, which fixes the segfaults, but of
15496 course leaks like crazy. At least playbin works.
15498 2005-09-15 David Schleef <ds@schleef.org>
15500 * check/gst/gstplugin.c: (register_check_elements),
15501 (GST_START_TEST), (peek), (suggest), (gst_plugin_suite):
15503 * gst/elements/gsttypefindelement.c: Fix refcounting.
15504 * gst/gsttypefind.c:
15505 * gst/gsttypefindfactory.c:
15506 * gst/gsttypefindfactory.h:
15508 2005-09-15 David Schleef <ds@schleef.org>
15510 * gst/gstindex.c: get refcounting correct.
15511 * gst/gstregistry.c: Handle the case where a feature/plugin is
15514 2005-09-15 David Schleef <ds@schleef.org>
15516 * check/Makefile.am:
15517 * check/gst/gstplugin.c: Add test
15518 * gst/gstplugin.c: Fix problems noticed by testsuite
15520 * gst/gstregistry.c:
15521 * gst/gstregistry.h:
15523 2005-09-15 David Schleef <ds@schleef.org>
15525 * gst/gstplugin.c: Implement semi-decent recounting and locking
15526 in plugins and plugin features.
15528 * gst/gstpluginfeature.c:
15529 * gst/gstpluginfeature.h:
15530 * gst/gstregistry.c:
15532 2005-09-15 Michael Smith <msmith@fluendo.com>
15534 * gst/gstregistry.c: (gst_registry_get_feature_list):
15535 Implement this. Makes oggdemux work; decodebin still broken.
15537 2005-09-14 David Schleef <ds@schleef.org>
15539 * configure.ac: Add -no-undefined to GST_PLUGIN_LDFLAGS (bug
15541 * gst/base/Makefile.am: Add -no-undefined to LDFLAGS for libs
15542 * gst/check/Makefile.am:
15543 * libs/gst/controller/Makefile.am:
15544 * libs/gst/dataprotocol/Makefile.am:
15546 2005-09-14 David Schleef <ds@schleef.org>
15548 * configure.ac: Remove getbits library. Nothing uses it, and
15549 it should be in something like liboil if someone did want
15551 * libs/gst/Makefile.am:
15552 * libs/gst/getbits/Makefile.am:
15553 * libs/gst/getbits/gbtest.c:
15554 * libs/gst/getbits/getbits.c:
15555 * libs/gst/getbits/getbits.h:
15556 * libs/gst/getbits/gstgetbits_generic.c:
15557 * libs/gst/getbits/gstgetbits_i386.s:
15558 * libs/gst/getbits/gstgetbits_inl.h:
15560 2005-09-14 David Schleef <ds@schleef.org>
15562 * gst/Makefile.am: Dist glib-compat.h
15564 2005-09-14 David Schleef <ds@schleef.org>
15566 * configure.ac: Remove gst/registries, since it's no longer used.
15567 * gst/registries/Makefile.am:
15568 * gst/registries/gstlibxmlregistry.c:
15569 * gst/registries/gstlibxmlregistry.h:
15570 * gst/registries/gstxmlregistry.c:
15571 * gst/registries/gstxmlregistry.h:
15572 * gst/registries/registrytest.c:
15574 2005-09-14 David Schleef <ds@schleef.org>
15576 * gst/glib-compat.h:
15577 * gst/gstregistryxml.c:
15578 Convergence is near. Seriously.
15580 2005-09-14 David Schleef <ds@schleef.org>
15582 * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
15583 * gst/glib-compat.h:
15584 Attempt #4 to appease the buildbots.
15586 2005-09-14 David Schleef <ds@schleef.org>
15588 * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
15591 2005-09-14 David Schleef <ds@schleef.org>
15593 * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
15596 2005-09-14 David Schleef <ds@schleef.org>
15598 * gst/Makefile.am: Oh yeah, libgstreamer.so needs to contain
15601 2005-09-14 David Schleef <ds@schleef.org>
15603 * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
15604 * gst/glib-compat.h: Add some functions that are in newer versions
15605 of glib than we care to require.
15606 * gst/gstregistryxml.c: Use them.
15608 2005-09-14 David Schleef <ds@schleef.org>
15610 * po/POTFILES.in: remove gst-register.c
15612 2005-09-14 David Schleef <ds@schleef.org>
15614 * docs/gst/gstreamer-docs.sgml:
15615 * docs/gst/gstreamer-sections.txt:
15616 * docs/gst/gstreamer.types:
15617 * docs/gst/tmpl/gstelement.sgml:
15618 * docs/gst/tmpl/gstplugin.sgml:
15619 * docs/gst/tmpl/gstpluginfeature.sgml:
15620 Documentation updates for registry changes.
15622 2005-09-14 David Schleef <ds@schleef.org>
15624 * gst/gstregistryxml.c: Copy g_mkdir_with_parent() from glib,
15625 because we don't require glib-2.8.
15627 2005-09-14 David Schleef <ds@schleef.org>
15629 * gst/gstregistryxml.c: Added. Essentially moved out of the
15630 registries directory.
15632 2005-09-14 David Schleef <ds@schleef.org>
15634 * check/Makefile.am:
15635 * check/generic/states.c:
15639 * gst/gst_private.h:
15640 * gst/gstelementfactory.c:
15645 * gst/gstpluginfeature.c:
15646 * gst/gstpluginfeature.h:
15647 * gst/gstregistry.c:
15648 * gst/gstregistry.h:
15649 * gst/gstregistrypool.c: remove
15650 * gst/gstregistrypool.h: remove
15651 * gst/gsttypefind.c:
15652 * gst/gsttypefindfactory.c:
15654 * tools/Makefile.am:
15655 * tools/gst-compprep.c:
15656 * tools/gst-inspect.c:
15657 * tools/gst-register.c: remove
15658 * tools/gst-xmlinspect.c:
15659 Registry rewrite. Changes registry from being a file created
15660 by a tool into a simple cache file created automatically by
15661 libgstreamer. Removed gst-register (because it's no longer
15662 needed). Remove registry pools, because we only have one
15663 registry implementation (XML). Fix up other subsystems as
15666 2005-09-13 Michael Smith <msmith@fluendo.com>
15668 * gst/gstconfig.h.in:
15669 Don't Use windows linking attributes for MinGW. Fixes #316157
15671 2005-09-13 Thomas Vander Stichele <thomas at apestaart dot org>
15673 * gst/gstutils.c: (set_state_async_thread_func),
15674 (gst_element_set_state_async):
15675 Apparently people think it's better if this function doesn't
15676 try to set the state to whatever state was asked for on the first
15677 call to this function for any object. Seriously.
15679 2005-09-12 Thomas Vander Stichele <thomas at apestaart dot org>
15681 * check/gst/gstpipeline.c: (GST_START_TEST):
15682 * docs/gst/gstreamer-sections.txt:
15683 * gst/gstutils.c: (set_state_async_thread_func),
15684 (gst_element_set_state_async):
15686 add a "gst_element_set_state_async" method that
15687 sets the state and starts a thread to make sure the state
15688 change completes as best as it can
15690 2005-09-12 Thomas Vander Stichele <thomas at apestaart dot org>
15692 * check/gst/gstpipeline.c: (GST_START_TEST), (gst_pipeline_suite):
15693 codify design+behaviour in testsuite after discussion
15695 2005-09-12 Thomas Vander Stichele <thomas at apestaart dot org>
15697 * docs/gst/tmpl/gstelement.sgml:
15698 * docs/manual/appendix-quotes.xml:
15700 * gst/gstelement.c: (gst_element_set_state):
15703 2005-09-12 Jan Schmidt <thaytan@mad.scientist.com>
15705 * gst/base/gstbasetransform.c: (gst_base_transform_class_init),
15706 (gst_base_transform_prepare_output_buf),
15707 (gst_base_transform_handle_buffer):
15708 * gst/elements/gstcapsfilter.c: (gst_capsfilter_transform_ip),
15709 (gst_capsfilter_prepare_buf):
15710 Remove the requirement for sub-classes to call the parent
15711 implementation of prepare_output_buffer with a wrapper function.
15713 * gst/gsttaglist.h:
15714 * gst/gsttagsetter.h:
15715 Fix #define wrapper
15717 2005-09-11 Stefan Kost <ensonic@users.sf.net>
15719 * docs/gst/gstreamer-sections.txt:
15722 2005-09-11 Thomas Vander Stichele <thomas at apestaart dot org>
15724 * docs/gst/gstreamer-sections.txt:
15725 * docs/gst/tmpl/gstelement.sgml:
15726 * docs/gst/tmpl/gstplugin.sgml:
15727 * gst/gstminiobject.c:
15729 docs now stop throwing warnings
15731 2005-09-11 Thomas Vander Stichele <thomas at apestaart dot org>
15733 * docs/gst/gstreamer-sections.txt:
15734 * docs/gst/gstreamer.types:
15735 * docs/gst/tmpl/gstpad.sgml:
15736 * docs/gst/tmpl/gsttypes.sgml:
15737 * gst/base/gstadapter.h:
15738 * gst/base/gstbasesink.h:
15739 * gst/base/gstbasesrc.h:
15745 * gst/gstelement.h:
15747 * gst/gstmessage.h:
15749 * gst/gststructure.c:
15750 * gst/registries/gstlibxmlregistry.h:
15751 various documentation fixes
15753 2005-09-11 Thomas Vander Stichele <thomas at apestaart dot org>
15755 * docs/gst/gstreamer-sections.txt:
15756 * docs/gst/tmpl/gstvalue.sgml:
15757 rearrange gstvalue section
15758 * gst/gstutils.c: (gst_element_state_get_name):
15760 * gst/gstvalue.c: (_gst_value_initialize):
15764 2005-09-10 Jan Schmidt <thaytan@mad.scientist.com>
15766 * check/gst-libs/controller.c:
15767 Header include fix.
15768 * gst/base/gstbasetransform.c:
15769 (gst_base_transform_default_prepare_buf),
15770 (gst_base_transform_handle_buffer):
15771 * gst/base/gstbasetransform.h:
15772 Some more basetransform changes and fixes to enable sub-classes
15773 that modify buffer metadata only.
15774 * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
15775 (gst_capsfilter_init), (gst_capsfilter_transform_ip),
15776 (gst_capsfilter_prepare_buf):
15777 If the output pad has fixed allowed caps and input buffers
15778 don't have any, set the fixed caps on outgoing buffers.
15780 2005-09-09 Jan Schmidt <thaytan@mad.scientist.com>
15781 * check/elements/identity.c: (GST_START_TEST):
15782 Make the error a little clearer when the test fails because
15783 identity made a copy of the buffer.
15784 * docs/gst/gstreamer-sections.txt:
15785 New symbols in gstbasetransform.h
15786 * gst/base/gstbasetransform.c: (gst_base_transform_class_init),
15787 (gst_base_transform_init), (gst_base_transform_transform_size),
15788 (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
15789 (gst_base_transform_default_prepare_buf),
15790 (gst_base_transform_get_unit_size),
15791 (gst_base_transform_buffer_alloc),
15792 (gst_base_transform_handle_buffer), (gst_base_transform_chain),
15793 (gst_base_transform_change_state),
15794 (gst_base_transform_set_passthrough),
15795 (gst_base_transform_set_in_place),
15796 (gst_base_transform_is_in_place):
15797 * gst/base/gstbasetransform.h:
15798 Change BaseTransform to separate in_place operate from same_caps
15799 output. in_place implies that the element can perform the transform
15800 on incoming buffers in-place, even if the caps on the output are
15802 Sub-class elements can now implement special buffer allocation
15803 methods for outgoing buffers if they wish to.
15804 Big documentation addition.
15805 * gst/elements/gstcapsfilter.c: (gst_capsfilter_transform_ip):
15806 * gst/elements/gstelements.c:
15807 Changes for basetransform modifications.
15808 * gst/elements/Makefile.am:
15809 * gst/elements/gstfdsrc.c: (gst_fdsrc_init), (gst_fdsrc_create):
15810 Compile fix. Extra debug output.
15812 2005-09-09 Thomas Vander Stichele <thomas at apestaart dot org>
15814 * check/gst/gstpad.c: (GST_START_TEST), (name_is_valid),
15816 add tests for valid pad naming
15817 * gst/check/gstcheck.c: (gst_check_log_message_func),
15818 (gst_check_log_critical_func):
15820 remove printing of code, it is fragile when the code contains
15821 % and the line number is enough info
15822 * gst/check/gstcheck.h:
15823 * gst/gstpad.c: (gst_pad_template_new):
15826 2005-09-09 Thomas Vander Stichele <thomas at apestaart dot org>
15829 say what CHECK flags we use
15830 * docs/libs/gstreamer-libs.types:
15831 * libs/gst/controller/Makefile.am:
15832 * libs/gst/controller/gst-controller.c:
15833 * libs/gst/controller/gst-controller.h:
15834 * libs/gst/controller/gst-helper.c:
15835 * libs/gst/controller/gst-interpolation.c:
15836 * libs/gst/controller/gstcontroller.c:
15837 * libs/gst/controller/gsthelper.c:
15838 * libs/gst/controller/gstinterpolation.c:
15839 * tools/gst-inspect.c: (print_plugin_info):
15840 we don't use dashes in header names
15842 2005-09-09 Thomas Vander Stichele <thomas at apestaart dot org>
15844 * check/Makefile.am:
15845 * check/gst/.cvsignore:
15846 * check/gst/gstpipeline.c: (pop_messages), (GST_START_TEST),
15847 (gst_pipeline_suite), (main):
15848 adding a test for pipelines and state changes
15849 * gst/gstutils.c: (get_state_func):
15851 * gstreamer.spec.in:
15854 2005-09-08 Michael Smith <msmith@fluendo.com>
15856 * gst/elements/gstfilesrc.c: (gst_file_src_map_region),
15857 (gst_file_src_map_small_region), (gst_file_src_create_mmap),
15858 (gst_file_src_is_seekable), (gst_file_src_get_size),
15859 (gst_file_src_start):
15860 * gst/elements/gstfilesrc.h:
15861 Various fixes for unseekable, unmmapable, and non-normal files, so
15862 that fallback to read() rather than mmap() works.
15863 * gst/gstevent.c: (gst_event_new_newsegment):
15864 Allow newsegment events with segment_start == segment_end, as will
15865 correctly happen if you use filesrc on a zero-size file, for
15868 2005-09-07 Jan Schmidt <thaytan@mad.scientist.com>
15870 * gst/gstplugin.c: (gst_plugin_load_file):
15871 Call g_module_close when we don't load the module
15873 * gst/registries/gstlibxmlregistry.c:
15874 (gst_xml_registry_get_property):
15875 Port leak fix from 0.8
15877 2005-09-07 Stefan Kost <ensonic@users.sf.net>
15879 * docs/gst/gstreamer-docs.sgml:
15880 * docs/gst/tmpl/.cvsignore:
15881 * docs/gst/tmpl/gsttrace.sgml:
15882 * docs/gst/tmpl/gsttrashstack.sgml:
15885 * gst/gstelement.h:
15887 * gst/gstmessage.c:
15888 * gst/gstmessage.h:
15891 * gst/gsttaginterface.c:
15892 * gst/gsttaginterface.h:
15893 * gst/gsttaglist.c:
15894 * gst/gsttaglist.h:
15895 * gst/gsttagsetter.c:
15896 * gst/gsttagsetter.h:
15899 * gst/gsttrashstack.c:
15900 renamed gsttag -> gsttaglist, gsttaginterface -> gsttagsetter
15901 inlined docs for gsttrace, gsttrashstack
15903 2005-09-07 Stefan Kost <ensonic@users.sf.net>
15906 * gst/elements/gstbufferstore.h:
15907 * gst/elements/gsttypefindelement.c:
15908 * gst/elements/gsttypefindelement.h:
15910 * gst/gsttypefind.c:
15911 * gst/gsttypefind.h:
15912 * gst/gsttypefindfactory.c: (gst_type_find_factory_get_type),
15913 (gst_type_find_factory_class_init), (gst_type_find_factory_init),
15914 (gst_type_find_factory_dispose),
15915 (gst_type_find_factory_unload_thyself),
15916 (gst_type_find_load_plugin), (gst_type_find_factory_get_list),
15917 (gst_type_find_factory_get_caps),
15918 (gst_type_find_factory_get_extensions),
15919 (gst_type_find_factory_call_function):
15920 * gst/gsttypefindfactory.h:
15921 * gst/registries/gstlibxmlregistry.c:
15922 * gst/registries/gstxmlregistry.c:
15923 splitted gsttypefind into gsttypefind, gsttypefindfactory
15925 2005-09-07 Andy Wingo <wingo@pobox.com>
15927 * gst/base/gstbasesink.c (gst_base_sink_activate_pull): Fix a race
15928 condition whereby the pad's task function is entered before the
15929 pad_mode variable was set.
15931 2005-09-07 Jan Schmidt <thaytan@mad.scientist.com>
15933 * gst/gstpad.c: (gst_pad_alloc_buffer):
15934 Catch misbehaving pad_alloc functions that don't
15935 set up caps and do it for them.
15937 2005-09-07 Stefan Kost <ensonic@users.sf.net>
15939 * check/pipelines/simple_launch_lines.c: (run_pipeline):
15940 test for pipe!=NULL
15941 * docs/gst/tmpl/.cvsignore:
15942 * docs/gst/tmpl/gstmemchunk.sgml:
15943 * docs/gst/tmpl/gstparse.sgml:
15944 * docs/gst/tmpl/gsttaglist.sgml:
15945 * docs/gst/tmpl/gsttagsetter.sgml:
15946 * docs/gst/tmpl/gsttypefind.sgml:
15947 * docs/gst/tmpl/gsttypefindfactory.sgml:
15948 * gst/gstmemchunk.c:
15951 * gst/gsttaginterface.c:
15952 * gst/gsttypefind.c:
15953 * gst/gsttypefind.h:
15956 === release 0.9.2 ===
15958 2005-09-06 Thomas Vander Stichele <thomas at apestaart dot org>
15963 releasing 0.9.2, "South"
15965 2005-09-05 Andy Wingo <wingo@pobox.com>
15967 * gst/registries/gstxmlregistry.h:
15968 * gst/registries/gstxmlregistry.c: Um... resurrect...
15970 * gst/registries/gstxmlregistry.h:
15971 * gst/registries/gstxmlregistry.c: and update to newer API.
15972 Incidentally they should be a bit faster now that they don't have
15975 2005-09-05 Andy Wingo <wingo@pobox.com>
15977 * gst/registries/gstxmlregistry.h:
15978 * gst/registries/gstxmlregistry.c: Remove from CVS, they were
15979 replaced by the libxml registry a while back
15981 2005-09-03 Thomas Vander Stichele <thomas at apestaart dot org>
15983 * docs/gst/tmpl/gstplugin.sgml:
15984 * gst/elements/gstelements.c:
15986 * gst/gstplugin.c: (gst_plugin_register_func),
15987 (gst_plugin_desc_copy), (gst_plugin_desc_free),
15988 (gst_plugin_get_source):
15990 * gst/registries/gstlibxmlregistry.c: (load_plugin),
15991 (gst_xml_registry_save_plugin):
15992 * gst/registries/gstxmlregistry.c: (gst_xml_registry_parse_plugin),
15993 (gst_xml_registry_save_plugin):
15994 * tools/gst-inspect.c: (print_plugin_info):
15995 add a "source" plugin description field, to represent the source
15996 module this plugin is a part of. By default GST_PLUGIN_DEFINE
15997 will set it to PACKAGE, which is automake's idea of the name of
15998 the source project.
16000 2005-09-03 Thomas Vander Stichele <thomas at apestaart dot org>
16005 * docs/Makefile.am:
16006 * docs/faq/Makefile.am:
16007 * docs/gst/tmpl/gstelement.sgml:
16008 * docs/gst/tmpl/gsttypes.sgml:
16009 * docs/htmlinstall.mak:
16010 * docs/manual/Makefile.am:
16011 * docs/pwg/Makefile.am:
16012 reorganize doc build a little
16013 split out docbook and gtk-doc stuff
16014 have two separate --enable's and enable them through autogen
16015 but disable by default in configure (to be similar to other
16017 * gstreamer.spec.in:
16018 clean up docs install
16036 translation updates
16038 2005-09-03 Tim-Philipp Müller <tim at centricular dot net>
16040 * gst/base/gstbasesink.c: (gst_base_sink_pad_buffer_alloc):
16043 * gst/elements/gstfakesink.c: (gst_fake_sink_init),
16044 (gst_fake_sink_change_state):
16045 Make state change function thread-safe.
16047 * gst/gstpad.c: (gst_pad_alloc_buffer):
16048 Set offset on generic buffer allocated by fallback.
16050 2005-09-03 Stefan Kost <ensonic@users.sf.net>
16052 * docs/gst/gstreamer-sections.txt:
16053 * docs/gst/tmpl/gstelement.sgml:
16055 * libs/gst/controller/gst-controller.c:
16056 (gst_controlled_property_set_interpolation_mode),
16057 (gst_controlled_property_new),
16058 (gst_controller_find_controlled_property):
16059 run the wingo-magic script against the docs
16061 2005-09-02 Stefan Kost <ensonic@users.sf.net>
16063 * docs/gst/gstreamer-docs.sgml:
16064 * docs/gst/gstreamer-sections.txt:
16065 * docs/gst/tmpl/.cvsignore:
16066 * docs/gst/tmpl/gstelementdetails.sgml:
16067 * docs/gst/tmpl/gstelementfactory.sgml:
16070 * gst/gstelementfactory.c:
16071 * gst/gstelementfactory.h:
16072 merged elementdetails docs into elementfactory docs
16075 2005-09-02 Andy Wingo <wingo@pobox.com>
16077 * gst/gstelement.h: Add magical pixie dust to make glib-mkenums
16078 consider this enum an enum and not a flags.
16080 2005-09-02 Stefan Kost <ensonic@users.sf.net>
16082 * docs/gst/gstreamer-docs.sgml:
16083 * docs/gst/tmpl/.cvsignore:
16084 * docs/gst/tmpl/gstghostpad.sgml:
16085 * docs/gst/tmpl/gstiterator.sgml:
16086 * docs/gst/tmpl/gstmacros.sgml:
16087 * docs/gst/tmpl/gstrealpad.sgml:
16088 * docs/gst/tmpl/gstregistry.sgml:
16089 * docs/gst/tmpl/gstregistrypool.sgml:
16090 * docs/gst/tmpl/gststructure.sgml:
16091 * docs/gst/tmpl/gstsystemclock.sgml:
16092 * docs/gst/tmpl/gsttrace.sgml:
16093 * gst/gstghostpad.c:
16095 * gst/gstmemchunk.c:
16096 * gst/gstmemchunk.h:
16098 * gst/gstregistry.c:
16099 * gst/gstregistrypool.c:
16100 * gst/gststructure.c:
16101 * gst/gstsystemclock.c:
16104 2005-09-02 Andy Wingo <wingo@pobox.com>
16106 * gst/gstelement.h (GstState): Renamed from GstElementState,
16107 changed to be a normal enum instead of flags.
16108 (GstStateChangeReturn): Renamed from GstElementStateReturn, names
16109 munged to be GST_STATE_CHANGE_*.
16110 (GST_STATE_CHANGE): Renamed from GST_STATE_TRANSITION, updated to
16111 work with the new state representation.
16112 (GstStateChange): New enumeration of possible state transitions.
16113 Replaces GST_STATE_FOO_TO_BAR with GST_STATE_CHANGE_FOO_TO_BAR.
16114 (GstElementClass::change_state): Pass the GstStateChange along as
16115 an argument. Helps language bindings, so they don't have to use
16116 tricky lock-needing macros like GST_STATE_CHANGE ().
16118 * scripts/update-states (file): New script. Run it on a file to
16119 update it for state naming and API changes. Updates files in
16122 * All files updated for the new API.
16124 2005-09-02 Thomas Vander Stichele <thomas at apestaart dot org>
16126 * gst/gsttrace.c: (gst_trace_flush), (gst_trace_text_flush):
16127 * gst/gstutils.c: (gst_util_set_value_from_string),
16128 (gst_util_set_object_arg):
16129 fix a bunch of unchecked return values
16130 * tools/gst-complete.c: (main):
16131 * gstreamer.spec.in:
16134 2005-09-01 Wim Taymans <wim@fluendo.com>
16136 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
16137 (gst_base_sink_event), (gst_base_sink_do_sync),
16138 (gst_base_sink_handle_event):
16139 * gst/base/gstbasesink.h:
16140 Handle newsegments more correctly.
16145 * gst/gstevent.c: (gst_event_new_newsegment):
16146 A newsegment cannot have a start_time of -1
16148 2005-09-01 Tim-Philipp Müller <tim at centricular dot net>
16150 * win32/gstenumtypes.c:
16151 * win32/gstenumtypes.h:
16154 2005-08-31 Stefan Kost <ensonic@users.sf.net>
16156 * libs/gst/controller/gst-controller.c:
16157 (gst_controlled_property_set_interpolation_mode),
16158 (gst_controlled_property_new):
16159 fixed boolean again
16161 2005-08-31 Thomas Vander Stichele <thomas at apestaart dot org>
16163 * docs/faq/gst-uninstalled:
16168 * gst/gstutils.c: (gst_element_link_filtered):
16170 add gst_element_link_filtered
16172 2005-08-31 Stefan Kost <ensonic@users.sf.net>
16174 * docs/gst/gstreamer-docs.sgml:
16175 * docs/gst/gstreamer-sections.txt:
16176 * docs/gst/tmpl/.cvsignore:
16177 * docs/gst/tmpl/gsterror.sgml:
16178 * docs/gst/tmpl/gstfilter.sgml:
16179 * docs/gst/tmpl/gsturihandler.sgml:
16180 * docs/gst/tmpl/gsturitype.sgml:
16181 * docs/gst/tmpl/gstutils.sgml:
16182 * docs/gst/tmpl/gstxml.sgml:
16187 * gst/gsturitype.c:
16190 inlined more docs, fixed double id-ref
16192 2005-08-31 Wim Taymans <wim@fluendo.com>
16194 * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
16195 (gst_base_transform_handle_buffer):
16196 Passthrough elements don't need the caps as they don't care.
16198 2005-08-31 Wim Taymans <wim@fluendo.com>
16200 * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
16201 (gst_base_transform_handle_buffer), (gst_base_transform_chain):
16202 Don't leak refcounts on buffers.
16204 2005-08-31 Wim Taymans <wim@fluendo.com>
16206 * gst/base/gstbasetransform.c: (gst_base_transform_configure_caps),
16207 (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
16208 (gst_base_transform_chain), (gst_base_transform_change_state):
16209 * gst/base/gstbasetransform.h:
16210 Handle the case where we are not negotiated more gracefully.
16212 2005-08-31 Tim-Philipp Müller <tim at centricular dot net>
16214 * gst/elements/gstfilesrc.c: (gst_mmap_buffer_init),
16215 (gst_file_src_map_region):
16216 Set READONLY flag on mmap'ed buffers, otherwise
16217 gst_buffer_make_writable() won't work properly (#314708).
16219 2005-08-31 Wim Taymans <wim@fluendo.com>
16221 * gst/base/gstbasetransform.c: (gst_base_transform_handle_buffer):
16222 passthrough elements can even do inplace on non writable
16223 buffers (as they don't touch them).
16225 2005-08-31 Stefan Kost <ensonic@users.sf.net>
16227 * check/gst-libs/controller.c: (gst_test_mono_source_get_property),
16228 (gst_test_mono_source_set_property),
16229 (gst_test_mono_source_class_init), (GST_START_TEST),
16230 (gst_controller_suite):
16231 more tests (hehe I have the most)
16233 describe popping messages whenusing mulltiple sources
16234 * libs/gst/controller/gst-controller.c:
16235 (gst_controlled_property_set_interpolation_mode),
16236 (gst_controlled_property_new):
16237 * libs/gst/controller/gst-controller.h:
16238 * libs/gst/controller/gst-interpolation.c:
16239 implement boolean properties
16241 2005-08-31 Wim Taymans <wim@fluendo.com>
16243 * gst/gstminiobject.c: (gst_mini_object_ref):
16244 Cannot assert that the refcount has to be positive
16245 since a disposed object can be resurrected.
16247 2005-08-31 Wim Taymans <wim@fluendo.com>
16249 * gst/gstpad.c: (gst_pad_init):
16250 Revert change, need to first fix badly behaving
16253 2005-08-30 Wim Taymans <wim@fluendo.com>
16255 * check/elements/fakesrc.c: (setup_fakesrc):
16256 * check/elements/identity.c: (setup_identity):
16257 Activate pads before using them.
16259 2005-08-30 Wim Taymans <wim@fluendo.com>
16261 * gst/base/gstadapter.c: (gst_adapter_flush):
16262 Flushing out 0 bytes is ok for this function.
16264 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
16265 no newsegment gives a warning and sets the start/stop to
16268 * gst/base/gstbasetransform.c: (gst_base_transform_change_state),
16269 (gst_base_transform_set_passthrough):
16272 * gst/gstminiobject.c: (gst_mini_object_ref):
16273 Check refcount here too.
16275 * gst/gstpad.c: (gst_pad_init):
16276 Pads are initially flushing and refusing data.
16278 * gst/gstutils.c: (gst_element_link_pads_filtered):
16279 When adding a capsfilter element make sure it has the
16280 same state as the parent bin.
16282 2005-08-30 Stefan Kost <ensonic@users.sf.net>
16284 * docs/gst/tmpl/.cvsignore:
16285 * docs/gst/tmpl/gstformat.sgml:
16286 * docs/gst/tmpl/gstversion.sgml:
16290 * gst/gstversion.h.in:
16291 more docs and two more inlined
16293 2005-08-30 Wim Taymans <wim@fluendo.com>
16295 * gst/elements/gstfilesink.c: (gst_file_sink_class_init):
16296 Don't sync to clock.
16298 2005-08-30 Stefan Kost <ensonic@users.sf.net>
16300 * docs/gst/gstreamer-sections.txt:
16301 ultral33t func10ns deserve to appear in the docs actually
16302 * docs/gst/tmpl/.cvsignore:
16303 * docs/gst/tmpl/gstcompat.sgml:
16304 * docs/gst/tmpl/gstconfig.sgml:
16305 * gst/check/gstcheck.c:
16307 * gst/gstconfig.h.in:
16310 2005-08-30 Stefan Kost <ensonic@users.sf.net>
16312 * docs/gst/tmpl/.cvsignore:
16313 * docs/gst/tmpl/gstquery.sgml:
16314 * docs/gst/tmpl/gstutils.sgml:
16317 inlined and extended docs
16319 2005-08-30 Stefan Kost <ensonic@users.sf.net>
16321 * check/gst-libs/controller.c: (GST_START_TEST),
16322 (gst_controller_suite):
16324 * docs/gst/tmpl/gstutils.sgml:
16325 * docs/libs/gstreamer-libs-sections.txt:
16326 * docs/libs/tmpl/gstdataprotocol.sgml:
16328 * examples/controller/audio-example.c: (main):
16329 controller example works now
16332 * tools/gst-inspect.c: (print_element_properties_info):
16333 show param spec flags
16335 2005-08-29 Andy Wingo <wingo@pobox.com>
16337 * gst/gstutils.c (gst_util_uint64_scale): New 3733t funct10n.
16339 2005-08-28 Andy Wingo <wingo@pobox.com>
16341 * gst/gstutils.h (GST_BOILERPLATE_FULL): Prototype instance_init
16342 as having two arguments instead of just one. Allows superclasses
16343 to access information on subclasses -- see the terrible for() loop
16344 in gtype.c:g_type_create_instance for the reason why. All callers
16347 2005-08-27 Stefan Kost <ensonic@users.sf.net>
16349 * docs/design/part-messages.txt:
16351 * docs/gst/tmpl/.cvsignore:
16352 * docs/gst/tmpl/gstcaps.sgml:
16353 * docs/gst/tmpl/gstclock.sgml:
16359 * gst/gstmessage.c:
16360 added descriptions for bus and message
16361 inline caps and clock docs
16363 2005-08-27 Stefan Kost <ensonic@users.sf.net>
16365 * gst/gstmessage.c:
16366 * gst/gstmessage.h:
16369 2005-08-27 Stefan Kost <ensonic@users.sf.net>
16371 * gst/base/gstbasetransform.c: (gst_base_transform_transform_size):
16374 2005-08-26 Andy Wingo <wingo@pobox.com>
16376 * check/pipelines/simple_launch_lines.c (run_pipeline): Check
16377 element_set_state's return val.
16378 (test_2_elements): Add test that's been disabled for months.
16380 * gst/elements/gstfakesink.c: Cleanups. Add can-activate-push and
16381 can-activate-pull properties.
16383 * gst/elements/gstfakesrc.c: Cleanups. Add can-activate-push and
16384 can-activate-pull properties. Implement is_seekable so fakesrc can
16385 operate in pull mode.
16387 * gst/base/gstbasesink.c (GstBaseSink): Remove has-loop, has-chain
16389 (gst_base_sink_activate, gst_base_sink_activate_pull)
16390 (gst_base_sink_activate_push): Make activation mode choosing work.
16392 (gst_base_sink_chain, gst_base_sink_loop): Assert activation mode
16393 is right. Make pull mode work. Post an eos before pausing in pull
16395 (gst_base_sink_change_state): Pay attention to the core's
16396 change_state() return val.
16398 * gst/base/gstbasesrc.c (GstBaseSrc): Remove has-loop,
16399 has-getrange properties. Cleanups.
16401 * gst/base/gstbasesrc.h (GstBaseSrc): Remove has_loop,
16402 has_getrange and replace with can_activate_pull and
16405 * gst/base/gstbasesink.h (GstBaseSink): Rearrange fields, add
16406 locking comments. Remove has_loop, has_chain and replace with
16407 can_activate_pull and can_activate_push.
16409 2005-08-26 Jan Schmidt <thaytan@mad.scientist.com>
16412 * examples/Makefile.am:
16413 * examples/metadata/Makefile.am:
16414 * examples/metadata/read-metadata.c: (message_loop),
16415 (have_pad_handler), (make_pipeline), (print_tag), (main):
16416 Add metadata reading example that loops over a list of filenames,
16417 dumping any tags found.
16419 * gst/gstbus.c: (gst_bus_dispose):
16420 * gst/gstelement.c: (gst_element_dispose):
16421 Release a few potentially-held references in dispose.
16423 2005-08-26 Stefan Kost <ensonic@users.sf.net>
16425 * docs/gst/tmpl/gstminiobject.sgml:
16426 do *not* add tmpl/*.sgml files to CVS!
16428 2005-08-26 Stefan Kost <ensonic@users.sf.net>
16430 * libs/gst/bytestream/.cvsignore:
16431 * libs/gst/bytestream/Makefile.am:
16432 * libs/gst/bytestream/adapter.c:
16433 * libs/gst/bytestream/adapter.h:
16434 * libs/gst/bytestream/bytestream.c:
16435 * libs/gst/bytestream/bytestream.h:
16436 * libs/gst/bytestream/filepad.c:
16437 * libs/gst/bytestream/filepad.h:
16438 removing obsolete files
16440 2005-08-26 Stefan Kost <ensonic@users.sf.net>
16442 * docs/gst/gstreamer-docs.sgml:
16443 * docs/libs/gstreamer-libs-docs.sgml:
16444 disabed additional index entries again, as this makes docs-gen just
16445 slow and they aren't useful yet
16446 * docs/libs/gstreamer-libs-sections.txt:
16447 little -section.txt cleanup for libs
16449 2005-08-26 Thomas Vander Stichele <thomas at apestaart dot org>
16451 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
16452 * gst/base/gstbasetransform.c: (gst_base_transform_transform_size),
16453 fix up some debugging
16454 (gst_base_transform_get_unit_size),
16455 (gst_base_transform_buffer_alloc), (gst_base_transform_event),
16456 (gst_base_transform_handle_buffer):
16457 * gst/base/gstbasetransform.h:
16458 handle and store timed NEWSEGMENT events so that subclasses that
16459 calculate time by counting samples have a segment_start time they
16460 need to add to their timestamps - see audioresample
16462 2005-08-26 Stefan Kost <ensonic@users.sf.net>
16465 removed ';' from the end of macro defs
16466 * docs/gst/gstreamer-docs.sgml:
16467 * docs/gst/gstreamer-sections.txt:
16468 * docs/gst/tmpl/.cvsignore:
16470 * gst/gstelement.c: (gst_element_class_init),
16471 (gst_element_set_state), (activate_pads),
16472 (gst_element_save_thyself):
16473 * gst/gstevent.c: (gst_event_new_newsegment):
16475 * gst/gstiterator.c:
16476 * gst/gstiterator.h:
16479 * gst/gstutils.c: (gst_pad_query_convert):
16481 fixed parameter name mismatches between source, header and docs
16482 added some more docs, resolved the last batch of unused elements in
16483 docs (now someone needs to doc them)
16485 2005-08-25 Thomas Vander Stichele <thomas at apestaart dot org>
16487 * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_rebuild):
16488 * gst/registries/gstxmlregistry.c: (gst_xml_registry_rebuild):
16489 don't walk through the plugins backwards. Where is all this
16490 reversed logic coming from ?
16492 2005-08-25 Wim Taymans <wim@fluendo.com>
16494 * gst/base/gstbasetransform.c: (gst_base_transform_init),
16495 (gst_base_transform_transform_size),
16496 (gst_base_transform_configure_caps),
16497 (gst_base_transform_get_unit_size),
16498 (gst_base_transform_buffer_alloc),
16499 (gst_base_transform_change_state):
16500 * gst/base/gstbasetransform.h:
16501 Cache caps unit_size.
16502 Make sure we cannot negotiate up and downstream at the
16505 2005-08-25 Thomas Vander Stichele <thomas at apestaart dot org>
16507 * gst/gst.c: (init_pre), (init_post):
16508 register the installed plugin path after the env var
16509 * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_save):
16510 * gst/registries/gstxmlregistry.c: (gst_xml_registry_save):
16511 don't reverse order of paths; conserve the order of GST_PLUGIN_PATH
16512 directories, so the tests can prefer uninstalled over installed
16514 2005-08-25 Thomas Vander Stichele <thomas at apestaart dot org>
16516 * gst/base/gstbasetransform.h:
16521 2005-08-25 Wim Taymans <wim@fluendo.com>
16523 * gst/gstbin.c: (bin_bus_handler):
16524 Be a bit more conservative about the posted message.
16526 * gst/gstbus.c: (gst_bus_post):
16527 Some cleanups, warn wrong return values.
16529 2005-08-25 Jan Schmidt <thaytan@mad.scientist.com>
16531 * check/gst/gstbin.c: (GST_START_TEST):
16532 * gst/gstbin.c: (bin_bus_handler):
16533 * gst/gstmessage.c: (gst_message_finalize), (_gst_message_copy),
16534 (gst_message_new), (gst_message_new_eos), (gst_message_new_error),
16535 (gst_message_new_warning), (gst_message_new_tag),
16536 (gst_message_new_state_changed), (gst_message_new_segment_start),
16537 (gst_message_new_segment_done), (gst_message_new_custom):
16538 * gst/gstmessage.h:
16539 * tools/gst-launch.c: (event_loop):
16540 * tools/gst-md5sum.c: (event_loop):
16541 Revert unpopular change for GST_MESSAGE_SRC to GObject.
16543 2005-08-25 Wim Taymans <wim@fluendo.com>
16545 * check/generic/states.c: (GST_START_TEST):
16546 Cleanup can be done at the end.
16548 * gst/gsttask.c: (gst_task_get_type), (gst_task_finalize),
16549 (gst_task_func), (gst_task_cleanup_all), (gst_task_set_lock),
16550 (gst_task_get_state), (gst_task_start), (gst_task_pause):
16551 Oh boy.. Thanks for finding this, Thomas.
16553 2005-08-25 Stefan Kost <ensonic@users.sf.net>
16555 * docs/gst/gstreamer.types:
16556 added missing types
16558 2005-08-25 Stefan Kost <ensonic@users.sf.net>
16560 * docs/gst/gstreamer-docs.sgml:
16561 * docs/gst/gstreamer-sections.txt:
16562 * docs/gst/tmpl/.cvsignore:
16564 * gst/gstiterator.c:
16566 * gst/registries/gstxmlregistry.h:
16567 added missing classes and symbols (123 more to go)
16568 removed removed symbols from section file
16569 fixed many doc-comments
16571 2005-08-24 Wim Taymans <wim@fluendo.com>
16573 * check/generic/states.c: (GST_START_TEST):
16574 Make sure all tasks are stopped.
16576 * check/gst/gstbin.c: (GST_START_TEST):
16577 Unref after usage for proper valgrinding.
16579 * gst/gstpad.c: (gst_pad_finalize), (gst_pad_stop_task):
16580 Really wait for the task to stop before destroying the
16583 * gst/gstqueue.c: (gst_queue_sink_activate_push),
16584 (gst_queue_src_activate_push):
16585 Small cleanups. Don't stop the task when we did not start
16588 * gst/gsttask.c: (gst_task_get_type), (gst_task_init),
16589 (gst_task_func), (gst_task_cleanup_all), (gst_task_set_lock),
16590 (gst_task_get_state), (gst_task_start), (gst_task_pause),
16593 Protect the stream lock with the object lock.
16594 Disallow setting the stream lock when running.
16595 Add cleanup_all to wait for the threadpool to finish.
16596 Remove code to autoallocate a mutex if none was provided.
16597 Add _join() to wait for a task to stop.
16598 Protect the thread pool with a global lock.
16600 2005-08-24 Wim Taymans <wim@fluendo.com>
16602 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
16603 (gst_base_sink_get_times), (gst_base_sink_do_sync),
16604 (gst_base_sink_handle_buffer), (gst_base_sink_change_state):
16605 * gst/base/gstbasesink.h:
16606 Handle newsegment events correctly.
16607 Drop buffers out of the segment range.
16609 2005-08-22 Andy Wingo <wingo@pobox.com>
16611 * gst/gstutils.h (GST_BOILERPLATE_WITH_INTERFACE): New ghetto
16612 macro, implements an interface and gstimplementsinterface for a
16615 2005-08-24 Thomas Vander Stichele <thomas at apestaart dot org>
16617 * check/Makefile.am:
16618 * check/generic/states.c: (GST_START_TEST), (states_suite), (main):
16619 add a test that does a bunch of state changes on elements
16620 needs some fixing for valgrind
16621 * check/states/sinks.c: (gst_object_suite):
16624 add prototype for gst_caps_is_equal_fixed
16626 * gst/gstregistrypool.c:
16629 2005-08-24 Andy Wingo <wingo@pobox.com>
16631 * gst/gstquery.c (gst_query_new_convert): Spew if we try to
16632 convert a negative value. Doesn't make much sense. Mostly this is
16633 here to force callers to ensure -1 maps to -1.
16635 2005-08-24 Jan Schmidt <thaytan@mad.scientist.com>
16637 * docs/pwg/advanced-types.xml:
16638 Well done to Michael for catching my deliberate introduction
16639 of this spelling mistake.
16640 * gst/gstbin.c: (gst_bin_remove_func), (bin_bus_handler):
16641 * gst/gstelement.h:
16642 Add GST_ELEMENT_UNPARENTING to prevent races so that we can
16643 unlink pads before removing the element from the bin.
16645 2005-08-24 Andy Wingo <wingo@pobox.com>
16647 * gst/gst.c (parse_debug_list): Accept e.g. GST_DEBUG=4 to mean
16648 the same thing as GST_DEBUG=*:4.
16649 (parse_debug_level, parse_debug_category): New helper parsers.
16651 2005-08-24 Thomas Vander Stichele <thomas at apestaart dot org>
16653 * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
16654 (gst_base_transform_transform_size), (gst_base_transform_getcaps),
16655 (gst_base_transform_setcaps), (gst_base_transform_get_unit_size),
16656 (gst_base_transform_buffer_alloc),
16657 (gst_base_transform_handle_buffer):
16658 use gboolean return values and pointers to size so we can use the
16659 full GST_BUFFER_SIZE range (guint) for buffer sizes
16660 use GstPadDirection for transform_caps
16661 * gst/base/gstbasetransform.h:
16662 rename get_size to get_unit_size since that's what it is
16663 * gst/elements/gstcapsfilter.c: (gst_capsfilter_transform_caps):
16664 use GstPadDirection for transform_caps
16665 * gst/gstbuffer.c: (gst_buffer_new_and_alloc):
16667 cleanup and debugging
16669 2005-08-24 Stefan Kost <ensonic@users.sf.net>
16671 * gst/gstelement.c: (gst_element_class_init),
16672 (gst_element_set_state), (activate_pads),
16673 (gst_element_save_thyself):
16674 * tools/gst-compprep.c: (main):
16675 * tools/gst-inspect.c: (print_element_properties_info):
16676 * tools/gst-xmlinspect.c: (print_element_properties):
16677 Fixed long standing mem-leak
16679 2005-08-24 Jan Schmidt <thaytan@mad.scientist.com>
16681 * check/gst/gstbin.c: (GST_START_TEST):
16682 * gst/gstbin.c: (bin_bus_handler):
16683 * gst/gstmessage.c: (gst_message_finalize), (_gst_message_copy),
16684 (gst_message_new), (gst_message_new_eos), (gst_message_new_error),
16685 (gst_message_new_warning), (gst_message_new_tag),
16686 (gst_message_new_state_changed), (gst_message_new_segment_start),
16687 (gst_message_new_segment_done), (gst_message_new_custom):
16688 * gst/gstmessage.h:
16689 * tools/gst-launch.c: (event_loop):
16690 * tools/gst-md5sum.c: (event_loop):
16691 Change GST_MESSAGE_SRC to be a GObject rather than a GstObject, so
16692 that applications can sensibly post custom messages with references
16693 to their own objects.
16695 2005-08-24 Andy Wingo <wingo@pobox.com>
16697 * gst/gstpad.c (gst_pad_fixate_caps): Check if the caps is fixed
16700 2005-08-24 Wim Taymans <wim@fluendo.com>
16702 * gst/base/gstbasetransform.c: (gst_base_transform_init),
16703 (gst_base_transform_transform_caps),
16704 (gst_base_transform_transform_size),
16705 (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
16706 (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
16707 (gst_base_transform_handle_buffer):
16708 * gst/base/gstbasetransform.h:
16709 Many fixes and new features added by Thomas. Can now also do
16710 transforms with variable sizes and a custom fixate_caps function.
16712 2005-08-24 Wim Taymans <wim@fluendo.com>
16714 * gst/gstbuffer.c: (gst_buffer_new_and_alloc):
16718 Cast to ClockTime before formatting to time.
16723 2005-08-24 Stefan Kost <ensonic@users.sf.net>
16725 * check/gst-libs/controller.c: (GST_START_TEST),
16726 (gst_controller_suite):
16727 * docs/gst/tmpl/gstcaps.sgml:
16728 * docs/gst/tmpl/gstghostpad.sgml:
16729 * docs/gst/tmpl/gstquery.sgml:
16730 * docs/gst/tmpl/gstutils.sgml:
16731 * libs/gst/controller/gst-helper.c: (gst_object_set_controller),
16732 (gst_object_sink_values), (gst_object_get_value_arrays),
16733 (gst_object_get_value_array):
16734 gracefully handle helper method calls to objects that are not beeing
16735 controlled, added test case for that
16737 2005-08-23 Wim Taymans <wim@fluendo.com>
16739 * gst/gstevent.c: (_gst_event_copy), (gst_event_new_custom),
16740 (gst_event_new_newsegment), (gst_event_parse_newsegment),
16741 (gst_event_new_tag), (gst_event_parse_tag), (gst_event_new_qos),
16742 (gst_event_parse_qos), (gst_event_new_seek),
16743 (gst_event_parse_seek):
16745 Some more debugging output and doc cleanups.
16747 * gst/gstqueue.c: (gst_queue_handle_sink_event):
16748 Fix possible deadlock.
16750 2005-08-23 Stefan Kost <ensonic@users.sf.net>
16752 * docs/gst/gstreamer-docs.sgml:
16753 * docs/gst/gstreamer-sections.txt:
16754 * docs/gst/gstreamer.types:
16755 * docs/gst/tmpl/.cvsignore:
16758 * gst/gstelement.c:
16760 added 100 symbols from gstreamer-unused.txt to the right sections
16761 fixed more broken comments
16762 added GstBus to docs
16764 2005-08-23 Stefan Kost <ensonic@users.sf.net>
16766 * docs/gst/gstreamer-sections.txt:
16767 * docs/gst/tmpl/.cvsignore:
16768 * docs/gst/tmpl/gstbin.sgml:
16769 * docs/gst/tmpl/gstbuffer.sgml:
16770 * gst/base/gstbasesrc.c:
16771 * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init):
16774 * tools/gst-launch.1.in:
16775 inlined more doc comments, added missing comments and fixed comments
16778 2005-08-23 Thomas Vander Stichele <thomas at apestaart dot org>
16780 * gst/gstbuffer.c: (gst_buffer_new_and_alloc):
16784 * gst/gstpad.c: (gst_pad_activate_push), (gst_pad_alloc_buffer):
16786 * gst/gststructure.c: (gst_caps_structure_fixate_field_boolean):
16787 * gst/gststructure.h:
16788 add a fixate function for booleans; add a FIXME that these func
16789 names should probably be gst_structure_fixate_*
16791 2005-08-23 Stefan Kost <ensonic@users.sf.net>
16793 * docs/gst/gstreamer-docs.sgml:
16794 * docs/gst/gstreamer-sections.txt:
16796 * gst/gstbin.c: (gst_bin_get_type),
16797 (gst_bin_child_proxy_get_child_by_index),
16798 (gst_bin_child_proxy_get_children_count),
16799 (gst_bin_child_proxy_init):
16800 * gst/gstchildproxy.c: (gst_child_proxy_get_child_by_name),
16801 (gst_child_proxy_get_child_by_index),
16802 (gst_child_proxy_get_children_count), (gst_child_proxy_lookup),
16803 (gst_child_proxy_get_property), (gst_child_proxy_get_valist),
16804 (gst_child_proxy_get), (gst_child_proxy_set_property),
16805 (gst_child_proxy_set_valist), (gst_child_proxy_set),
16806 (gst_child_proxy_child_added), (gst_child_proxy_child_removed),
16807 (gst_child_proxy_base_init), (gst_child_proxy_get_type):
16808 * gst/gstchildproxy.h:
16809 * gst/parse/grammar.y:
16810 * tools/gst-inspect.c: (print_interfaces),
16811 (print_element_properties_info), (print_element_info):
16812 ported gstchildproxy over from 0.8
16813 ported gst-inspect fixes and enhancements over from 0.8
16815 2005-08-22 Wim Taymans <wim@fluendo.com>
16817 * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
16818 (gst_base_transform_handle_buffer):
16819 Also call the transform function if we have ANY caps.
16821 * gst/gstpipeline.c: (gst_pipeline_set_new_stream_time):
16824 2005-08-22 Jan Schmidt <thaytan@mad.scientist.com>
16826 * gst/base/gstbasesrc.c: (gst_base_src_event_handler)
16827 Don't pretend to handle seek events if the source is not seekable
16829 2005-08-22 Jan Schmidt <thaytan@mad.scientist.com>
16831 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
16832 Remove extra parameter to debug output
16834 * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
16835 (gst_base_src_do_seek), (gst_base_src_activate_push):
16836 Fix seek event handling.
16838 * gst/gstpipeline.c: (gst_pipeline_change_state):
16839 * gst/gstqueue.c: (gst_queue_handle_sink_event),
16840 (gst_queue_src_activate_push):
16841 Don't start the src pad task on FLUSH_STOP if the pad
16845 2005-08-22 Wim Taymans <wim@fluendo.com>
16847 * check/gst/gstcaps.c: (GST_START_TEST), (gst_caps_suite):
16848 Added check for gst_static_caps_get() refcounting.
16850 2005-08-22 Wim Taymans <wim@fluendo.com>
16852 * gst/gstcaps.c: (gst_static_caps_get), (gst_caps_to_string):
16853 Make _static_caps_get() refcounting sane.
16855 * gst/gstelement.c: (gst_element_set_state):
16856 Add g_return_val_if_fail() to protect against segfaults.
16858 2005-08-22 Stefan Kost <ensonic@users.sf.net>
16860 * docs/gst/tmpl/gstevent.sgml:
16863 inlined remaining docs, added missing doc comments
16865 2005-08-22 Thomas Vander Stichele <thomas at apestaart dot org>
16867 * check/gst/gstbin.c: (GST_START_TEST):
16868 since we don't know when preroll is done, use refcount range
16870 * gst/check/gstcheck.h:
16871 add macro for checking refcount range
16873 2005-08-21 Thomas Vander Stichele <thomas at apestaart dot org>
16875 * check/Makefile.am:
16876 clean up environment for when registry gets built versus
16877 when actual tests are run; valgrind seems to not report
16878 leaks if GST_PLUGIN_PATH is set to some specific values
16879 * check/gst/gstbin.c: (GST_START_TEST):
16880 add more refcounting checks; maybe this exposes a
16882 * common/check.mak:
16883 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
16884 * gst/check/gstcheck.h:
16885 * gst/gstbin.c: (bin_element_is_semi_sink), (gst_bin_get_state),
16886 (gst_bin_change_state):
16887 * gst/gstpad.c: (gst_pad_activate_push), (gst_pad_chain):
16888 add/fix debugging/whitespace
16890 2005-08-21 Jan Schmidt <thaytan@mad.scientist.com>
16892 * check/gst/gstevent.c: (event_probe), (test_event),
16894 Er, don't call gst_bin_watch_for_state_change you idiot.
16896 2005-08-21 Jan Schmidt <thaytan@mad.scientist.com>
16898 * check/Makefile.am:
16899 Use CHECK_CFLAGS and CHECK_LIBS
16900 * check/gst/gstevent.c: (event_probe), (test_event),
16903 * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
16904 (gst_base_src_start), (gst_base_src_stop),
16905 (gst_base_src_activate_push), (gst_base_src_activate_pull),
16906 (gst_base_src_change_state):
16907 Sprinkle gst_base_src_stop liberally around error paths to fix
16908 problems reusing a source after failed state changes.
16909 * gst/base/gsttypefindhelper.c: (helper_find_peek),
16910 (helper_find_suggest), (gst_type_find_helper):
16911 Extra debug output. Don't segfault on GST_PAD_GETRANGEFUNC = NULL
16913 * docs/gst/tmpl/gstevent.sgml:
16914 Migrate part of the docs from the SGML file. Wait for ensonic to
16915 tell me how I did it wrong ;)
16916 * tools/gst-typefind.c: (main):
16917 Extra robustness to state changes between files.
16919 2005-08-21 Thomas Vander Stichele <thomas at apestaart dot org>
16921 * check/Makefile.am:
16922 don't valgrind the controller test - it's leaking - Stefan, HELP
16923 * gst/check/gstcheck.c: (gst_check_message_error),
16924 (gst_check_chain_func), (gst_check_setup_element),
16925 (gst_check_teardown_element), (gst_check_setup_src_pad),
16926 (gst_check_teardown_src_pad), (gst_check_setup_sink_pad),
16927 (gst_check_teardown_sink_pad):
16928 * gst/check/gstcheck.h:
16929 add a bunch of methods to set up elements, and src and sink pads
16930 * check/elements/fakesrc.c: (setup_fakesrc), (cleanup_fakesrc):
16931 * check/elements/identity.c: (setup_identity), (cleanup_identity),
16934 * gst/gstmessage.c:
16936 whitespace/doc fixes
16938 2005-08-20 Thomas Vander Stichele <thomas at apestaart dot org>
16940 * gst/gstelement.h:
16941 make GST_ELEMENT_ERROR not do GST_ERROR_OBJECT - these errors should
16942 be handled by the application and not always printed as well
16944 2005-08-20 Thomas Vander Stichele <thomas at apestaart dot org>
16946 * check/Makefile.am:
16948 * gst/check/gstcheck.c: (gst_check_message_error):
16949 * gst/check/gstcheck.h:
16950 add a fail_unless_equals_int
16951 add fail_unless for error messages
16953 2005-08-20 Thomas Vander Stichele <thomas at apestaart dot org>
16955 * check/Makefile.am:
16957 * common/Makefile.am:
16958 * common/check.mak:
16960 factor out some of the common stuff so we can use it
16962 2005-08-20 Thomas Vander Stichele <thomas at apestaart dot org>
16964 * check/Makefile.am:
16965 * check/gst/gstiterator.c: (GST_START_TEST):
16966 * check/gst/gstsystemclock.c: (GST_START_TEST),
16967 (gst_systemclock_suite):
16968 * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
16970 valgrind more tests
16972 2005-08-20 Thomas Vander Stichele <thomas at apestaart dot org>
16974 * check/elements/.cvsignore:
16975 * check/elements/gstfakesrc.c:
16976 rename to name of element
16977 * check/elements/identity.c: (chain_func), (event_func),
16978 (setup_identity), (cleanup_identity), (GST_START_TEST),
16979 (identity_suite), (main):
16980 add a test for identity
16981 * check/Makefile.am:
16982 * pkgconfig/Makefile.am:
16983 * pkgconfig/gstreamer-check.pc.in:
16984 * pkgconfig/gstreamer-check-uninstalled.pc.in:
16988 move the check stuff to a library that gets installed
16989 * check/gst-libs/controller.c: (GST_START_TEST):
16990 * check/gst-libs/gdp.c:
16991 * check/gst/gst.c: (GST_START_TEST):
16992 * check/gst/gstbin.c:
16993 * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
16994 * check/gst/gstbus.c:
16995 * check/gst/gstcaps.c: (GST_START_TEST):
16996 * check/gst/gstelement.c:
16997 * check/gst/gstghostpad.c:
16998 * check/gst/gstiterator.c:
16999 * check/gst/gstmessage.c:
17000 * check/gst/gstminiobject.c: (thread_ref), (GST_START_TEST):
17001 * check/gst/gstobject.c:
17002 * check/gst/gstpad.c: (GST_START_TEST):
17003 * check/gst/gststructure.c: (GST_START_TEST):
17004 * check/gst/gstsystemclock.c: (GST_START_TEST),
17005 (gst_systemclock_suite):
17006 * check/gst/gsttag.c: (gst_tag_suite):
17007 * check/gst/gstvalue.c:
17008 * check/pipelines/cleanup.c:
17009 * check/pipelines/simple_launch_lines.c:
17010 * check/states/sinks.c:
17011 change include statement
17013 * docs/gst/gstreamer-sections.txt:
17014 * docs/gst/tmpl/gstpad.sgml:
17015 document more pad stuff
17016 * gst/gstminiobject.c: (gst_mini_object_ref),
17017 (gst_mini_object_unref):
17020 2005-08-19 Stefan Kost <ensonic@users.sf.net>
17022 * docs/gst/tmpl/gst.sgml:
17024 eliminate another tmpl file, fix spelling in the long-description
17026 2005-08-18 Jan Schmidt <thaytan@mad.scientist.com>
17028 * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
17029 (test_event), (timediff), (gstevents_suite):
17030 Should fix build on 64-bit arch's
17032 2005-08-18 Andy Wingo <wingo@pobox.com>
17034 Make sure that when a pipeline goes to PLAYING, that data has
17035 actually hit the sink.
17037 * check/states/sinks.c (test_sink): A sink that doesn't get any
17038 data shouldn't return SUCCESS for going to either PLAYING or
17039 PAUSED. Test also the return values on the way back down.
17041 * gst/gstelement.c (gst_element_set_state): When changing the
17042 state of an element currently changing state asynchronously, go to
17043 lost-state after commiting the pending state. Makes future calls
17044 to get_state continue to return ASYNC.
17046 * gst/base/gstbasesink.c (gst_base_sink_change_state): Return
17047 ASYNC when going to PLAYING if we still don't have preroll, as can
17048 happen with live sources.
17050 2005-08-18 Jan Schmidt <thaytan@mad.scientist.com>
17052 * docs/pwg/advanced-types.xml:
17053 Hack long paragraph into 2 chunks as a workaround for buggy
17054 jadetex version in sid and breezy that loops infinitely and
17057 2005-08-18 Jan Schmidt <thaytan@mad.scientist.com>
17059 * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
17060 (test_event), (timediff), (gstevents_suite):
17061 Provide more error margin in clock measurements to allow for
17062 g_get_current_time inaccuracies.
17064 2005-08-18 Jan Schmidt <thaytan@mad.scientist.com>
17066 * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
17067 (test_event), (timediff), (gstevents_suite):
17068 Fix error message output so I might be able to tell why the
17069 test works here but fails on the build farm.
17071 2005-08-18 Jan Schmidt <thaytan@mad.scientist.com>
17073 * check/Makefile.am:
17074 * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
17075 (test_event), (timediff), (gstevents_suite), (main):
17078 * docs/design/part-seeking.txt:
17079 Spelling correction
17081 * docs/gst/tmpl/gstevent.sgml:
17082 * docs/gst/tmpl/gstfakesrc.sgml:
17085 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
17086 Treat a buffer-without-newsegment the same as a receiving
17087 a newsegment not in time format, and disable syncing to the clock
17090 * gst/gstbus.c: (gst_bus_set_sync_handler):
17091 Assert if anyone tries to replace the existing sync_handler for bus,
17092 as only the owner should be setting it.
17095 Have a fixed set of custom event enums with events identified by
17096 their structure name (as in 0.8), rather than a free-for-all
17097 allowing collisions between enum values from different plugins.
17099 * gst/gstpad.c: (gst_pad_class_init):
17102 * gst/gstqueue.c: (gst_queue_handle_sink_event):
17103 Handle out-of-band downstream events from the sending thread.
17105 2005-08-17 Andy Wingo <wingo@pobox.com>
17107 * gst/gstpipeline.c (gst_pipeline_change_state): Interpret
17108 play-timeout==0 to mean no timeout at all. In that case, don't
17109 bother with a get_state or a warning, just return directly, even
17112 * gst/base/gstbasetransform.c: Debug changes.
17115 * gst/gstutils.c (gst_bin_watch_for_state_change): Add function to
17116 ensure bins post state change messages. A bit of a hack but I can't
17117 think of a way to avoid it.
17119 * check/gst/gstbin.c (test_watch_for_state_change): Added test.
17121 2005-08-16 Andy Wingo <wingo@pobox.com>
17123 * gst/base/gstadapter.h:
17124 * gst/base/gstadapter.c (gst_adapter_take): New function, like
17125 peek() but you own the data. Not terribly efficient atm.
17127 2005-08-16 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
17129 * gst/gstutils.c: (gst_element_found_tags_for_pad), (push_and_ref),
17130 (gst_element_found_tags):
17132 Add two utility functions for tag handling.
17134 2005-08-16 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
17136 * docs/manual/advanced-dataaccess.xml:
17137 * docs/manual/basics-helloworld.xml:
17138 Fix docs to use _bin_add() before _link(), which fixes the examples
17139 with recent core versions (reported by Madhan Raj M
17140 <raj_madan@rediffmail.com>, #313199).
17142 2005-08-16 Wim Taymans <wim@fluendo.com>
17144 * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
17145 Added subtract checks.
17147 * docs/design/part-events.txt:
17148 Some more docs about newsegment
17150 * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
17153 * gst/gstcaps.c: (gst_caps_to_string):
17154 Add comments, cleanups.
17156 * gst/gstelement.c: (gst_element_save_thyself):
17159 * gst/gstvalue.c: (gst_value_collect_int_range),
17160 (gst_string_unwrap), (gst_value_union_int_int_range),
17161 (gst_value_union_int_range_int_range),
17162 (gst_value_intersect_int_int_range),
17163 (gst_value_intersect_int_range_int_range),
17164 (gst_value_intersect_double_double_range),
17165 (gst_value_intersect_double_range_double_range),
17166 (gst_value_intersect_list), (gst_value_subtract_int_int_range),
17167 (gst_value_subtract_int_range_int),
17168 (gst_value_subtract_double_range_double),
17169 (gst_value_subtract_double_range_double_range),
17170 (gst_value_subtract_from_list), (gst_value_subtract_list),
17171 (gst_value_can_compare), (gst_value_compare_fraction):
17172 Cleanups, add comments, remove unneeded asserts.
17174 2005-08-15 Thomas Vander Stichele <thomas at apestaart dot org>
17176 * tools/gst-launch.c: (event_loop):
17177 don't convert NULL structures to strings
17179 2005-08-15 Stefan Kost <ensonic@users.sf.net>
17181 * docs/gst/gstreamer-sections.txt:
17182 made some defines private
17183 * docs/gst/tmpl/gstconfig.sgml:
17184 * docs/gst/tmpl/gstqueue.sgml:
17185 * docs/gst/tmpl/gsttaglist.sgml:
17186 * docs/gst/tmpl/gsttypes.sgml:
17187 * docs/gst/tmpl/gstutils.sgml:
17188 * docs/pwg/appendix-porting.xml:
17189 * gst/base/gstbasesink.h:
17190 * gst/base/gstbasesrc.c:
17191 * gst/base/gstbasesrc.h:
17192 * gst/elements/gstfakesink.c: (gst_fake_sink_class_init):
17193 * gst/elements/gstfakesrc.c: (gst_fake_src_class_init):
17194 * gst/gstelement.c: (gst_element_class_init):
17195 * gst/gstpad.c: (gst_pad_class_init):
17196 * gst/gstqueue.c: (gst_queue_class_init):
17197 * gst/gstxml.c: (gst_xml_class_init):
17198 documented all undocumented signal inline
17199 * libs/gst/controller/gst-controller.h:
17202 2005-08-15 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
17204 * docs/pwg/appendix-porting.xml:
17205 Document _set_link_function -> _set_setcaps_function.
17207 2005-08-15 Thomas Vander Stichele <thomas at apestaart dot org>
17209 * check/Makefile.am:
17210 add a .check target for running the check
17211 * check/gst-libs/controller.c: (GST_START_TEST):
17213 * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
17214 complete checks for gstbuffer; would be nice if I could get the
17215 gcov stuff to work so I can see if I actually completed gstbuffer.c
17216 * check/gstcheck.h:
17217 add ASSERT_BUFFER_REFCOUNT
17219 2005-08-13 Tim-Philipp Müller <tim at centricular dot net>
17221 * docs/gst/gstreamer-sections.txt:
17222 * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
17224 Add GST_TAG_LANGUAGE_CODE as we have in 0.8, and don't
17225 spew out a warning if a tag that is already registered
17226 is re-registered, unless it is re-registered with a
17227 different type (#308438).
17229 2005-08-12 Tim-Philipp Müller <tim at centricular dot net>
17231 * docs/pwg/appendix-porting.xml:
17232 * docs/pwg/building-state.xml:
17233 Add some paragraphs about state changes in 0.9 to the PWG
17234 and the porting guide, in particular about the new meaning
17235 of GST_STATE_PAUSED and how to write state change functions
17236 with concurrent access by multiple threads in mind.
17238 2005-08-11 Stefan Kost <ensonic@users.sf.net>
17240 * docs/gst/gstreamer-docs.sgml:
17241 * docs/libs/gstreamer-libs-docs.sgml:
17242 added deprecation and since indexes
17243 * libs/gst/controller/gst-controller.c:
17244 * libs/gst/controller/gst-helper.c:
17248 2005-08-11 Wim Taymans <wim@fluendo.com>
17250 * gst/gstghostpad.c: (gst_proxy_pad_set_target_unlocked),
17251 (gst_proxy_pad_set_target), (gst_proxy_pad_get_target),
17252 (gst_proxy_pad_dispose), (gst_ghost_pad_do_activate_push),
17253 (gst_ghost_pad_do_link), (gst_ghost_pad_set_internal),
17254 (gst_ghost_pad_new_notarget), (gst_ghost_pad_get_target),
17255 (gst_ghost_pad_set_target):
17256 Actually implement (re)setting the target on a ghostpad
17257 as described in the docs.
17259 2005-08-10 Tim-Philipp Müller <tim at centricular dot net>
17261 * gst/gst.c: (gst_init_check_with_popt_table), (init_pre):
17262 Check whether GST_DEBUG_NO_COLOR environment variable is
17263 set and disable coloured debug output if that is the case.
17265 2005-08-10 Tim-Philipp Müller <tim at centricular dot net>
17267 * gst/base/gsttypefindhelper.c: (helper_find_peek),
17268 (gst_type_find_helper):
17269 The memory returned by gst_type_find_peek() needs to
17270 stay valid until the end of a typefind function, and
17271 typefind functions may keep results from different
17272 offsets around, so we can't just unref the buffer from
17273 the previous _peek(), but have to save all buffers
17274 returned by _peek() until typefinding is done and only
17277 2005-08-09 Tim-Philipp Müller <tim at centricular dot net>
17279 * docs/gst/gstreamer-sections.txt:
17281 New macros: GST_ROUND_UP_2() through GST_ROUND_UP_64().
17283 2005-08-08 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
17285 * gst/base/gstbasetransform.c: (gst_base_transform_buffer_alloc):
17286 Fix a pretty good memleak.
17288 2005-08-08 Tim-Philipp Müller <tim at centricular dot net>
17290 * gst/gstiterator.h:
17291 Fix wrong include and 'make distcheck'.
17293 2005-08-08 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
17295 * gst/gstbin.c: (bin_bus_handler):
17296 Use gst_element_post_message() instead.
17298 2005-08-08 Tim-Philipp Müller <tim at centricular dot net>
17300 * gst/base/gstadapter.h:
17301 * gst/base/gstbasesink.h:
17302 * gst/base/gstbasesrc.h:
17303 * gst/base/gstbasetransform.h:
17304 * gst/base/gstcollectpads.h:
17305 * gst/base/gstpushsrc.h:
17306 * gst/gstiterator.h:
17307 Add padding to our base elements' class and instance structs and
17308 to GstIterator (you will need to rebuild all plugins and apps!)
17310 2005-08-08 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
17312 * gst/gstbin.c: (bin_bus_handler):
17313 Make default message forwarding from child->bus to bin->bus
17314 threadsafe and make it not emit warnings if the parent has no bus.
17316 2005-08-08 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
17318 * gst/gstelement.c: (activate_pads):
17319 On paused->ready, set pad->caps to NULL, as is the documented
17320 behaviour in this state change. Fixes playback of series of
17321 media files when visualization is enabled in Totem.
17323 2005-08-07 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
17325 * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
17326 Allow NULL as filter-caps (which means "any").
17328 2005-08-05 Stefan Kost <ensonic@users.sf.net>
17330 * docs/libs/gstreamer-libs-sections.txt:
17331 * libs/gst/controller/gst-controller.c:
17332 * libs/gst/controller/gst-controller.h:
17333 * libs/gst/controller/gst-helper.c:
17334 adding more entries to the docs and fix small doc-bugs
17336 2005-08-05 Stefan Kost <ensonic@users.sf.net>
17338 * docs/gst/gstreamer-docs.sgml:
17339 * docs/gst/gstreamer-sections.txt:
17340 * docs/gst/gstreamer.types:
17341 * docs/gst/tmpl/gstbasesink.sgml:
17342 * docs/gst/tmpl/gstbasesrc.sgml:
17343 * docs/gst/tmpl/gstbasetransform.sgml:
17344 * docs/gst/tmpl/gstfakesrc.sgml:
17345 * gst/base/gstcollectpads.c:
17346 * gst/base/gstcollectpads.h:
17347 * libs/gst/controller/gst-controller.c:
17348 * libs/gst/controller/gst-controller.h:
17349 * libs/gst/controller/gst-helper.c:
17350 * libs/gst/controller/gst-interpolation.c:
17351 * libs/gst/controller/lib.c:
17352 added long/short desc for controller docs
17353 added collectpads base class docs
17354 added correct includes to base-class docs
17356 2005-08-05 Stefan Kost <ensonic@users.sf.net>
17358 * check/gst-libs/controller.c: (gst_test_mono_source_get_property),
17359 (gst_test_mono_source_set_property),
17360 (gst_test_mono_source_class_init), (GST_START_TEST),
17361 (gst_controller_suite):
17362 * docs/gst/gstreamer-docs.sgml:
17363 * docs/gst/gstreamer-sections.txt:
17364 * docs/gst/gstreamer.types:
17365 * docs/libs/gstreamer-libs-docs.sgml:
17366 * docs/libs/gstreamer-libs-sections.txt:
17367 * gst/base/gstadapter.c:
17368 * libs/gst/controller/gst-controller.c:
17369 (gst_controlled_property_new), (gst_controlled_property_free),
17370 (gst_controller_new_valist),
17371 (gst_controller_remove_properties_valist),
17372 (gst_controller_sink_values), (_gst_controller_finalize):
17373 * libs/gst/controller/gst-controller.h:
17374 * libs/gst/controller/gst-helper.c:
17375 (gst_object_control_properties), (gst_object_uncontrol_properties),
17376 (gst_object_get_controller), (gst_object_set_controller),
17377 (gst_object_sink_values), (gst_object_get_value_arrays),
17378 (gst_object_get_value_array):
17379 more tests (and fixes) for the controller
17380 more docs for the controller
17381 integrated companies docs for the adapter
17383 2005-08-05 Thomas Vander Stichele <thomas at apestaart dot org>
17385 * check/elements/gstfakesrc.c: (setup_fakesrc), (cleanup_fakesrc),
17386 (GST_START_TEST), (fakesrc_suite):
17387 add tests for sizetype
17389 2005-08-04 Andy Wingo <wingo@pobox.com>
17391 * gst/elements/gstcapsfilter.c: Reimplement using basetransform,
17392 fixes buffer_alloc proxying among other things.
17394 * gst/base/gstbasetransform.c:
17395 * gst/base/gstbasetransform.h:
17396 Revert patch to gstbasetransform from 7-28 removing
17399 * gst/base/gstbasetransform.h (GstBaseTransformClass.get_size):
17400 * gst/base/gstbasetransform.c (gst_base_transform_get_size):
17401 Semantics changed, should return not the size of the output buffer
17402 but the byte size of a buffer with a given caps.
17404 * gst/base/gstbasetransform.c (gst_base_transform_getcaps): Better
17406 (gst_base_transform_configure_caps): Don't set out_size here: (in,
17407 out) are not the pad caps until setcaps finishes.
17408 (gst_base_transform_buffer_alloc): Proxy the buffer_alloc for the
17409 not-in-place case as well. Deal with changing from in-place to
17410 not-in-place within calling pad_alloc_buffer. Still a bit
17411 concerned about the overhead here...
17413 2005-08-03 Andy Wingo <wingo@pobox.com>
17415 * gst/base/gstbasetransform.c (gst_base_transform_setcaps): Not
17416 fixating is an error.
17418 2005-08-04 Edward Hervey <edward@fluendo.com>
17420 * gst/base/gstadapter.h:
17421 Added gst_adapter_get_type() to the header
17423 2005-08-03 Stefan Kost <ensonic@users.sf.net>
17425 * check/Makefile.am:
17426 * check/gst-libs/controller.c:
17427 * libs/gst/controller/gst-controller.c:
17428 (gst_controller_new_valist):
17429 added check test suite for the controller
17430 * gst/base/gstpushsrc.c:
17433 2005-08-03 Stefan Kost <ensonic@users.sf.net>
17435 * docs/gst/Makefile.am:
17436 * docs/gst/gstreamer-docs.sgml:
17437 * docs/gst/gstreamer-sections.txt:
17438 * docs/gst/gstreamer.types:
17439 * docs/gst/tmpl/gstfakesrc.sgml:
17441 * gst/base/gstbasesink.c:
17442 * gst/base/gstbasesink.h:
17443 * gst/base/gstbasesrc.c:
17444 * gst/base/gstbasesrc.h:
17445 * gst/base/gstbasetransform.c:
17446 * gst/base/gstpushsrc.c:
17447 * gst/base/gstpushsrc.h:
17448 add short/long description docs to base classes
17449 add pushsrc to the docs
17450 remove consolidated doc fragments
17452 2005-08-03 Stefan Kost <ensonic@users.sf.net>
17455 * docs/libs/Makefile.am:
17456 * docs/libs/gstreamer-libs-docs.sgml:
17457 * docs/libs/gstreamer-libs-sections.txt:
17458 * docs/libs/gstreamer-libs.types:
17459 * examples/Makefile.am:
17460 * examples/controller/.cvsignore:
17461 * examples/controller/Makefile.am:
17462 * examples/controller/audio-example.c: (main):
17463 * libs/gst/Makefile.am:
17464 * libs/gst/controller/.cvsignore:
17465 * libs/gst/controller/Makefile.am:
17466 * libs/gst/controller/gst-controller.c:
17467 (on_object_controlled_property_changed), (gst_timed_value_compare),
17468 (gst_timed_value_find),
17469 (gst_controlled_property_set_interpolation_mode),
17470 (gst_controlled_property_new), (gst_controlled_property_free),
17471 (gst_controller_find_controlled_property),
17472 (gst_controller_new_valist), (gst_controller_new),
17473 (gst_controller_remove_properties_valist),
17474 (gst_controller_remove_properties), (gst_controller_set),
17475 (gst_controller_set_from_list), (gst_controller_unset),
17476 (gst_controller_get), (gst_controller_get_all),
17477 (gst_controller_sink_values), (gst_controller_get_value_arrays),
17478 (gst_controller_get_value_array),
17479 (gst_controller_set_interpolation_mode),
17480 (_gst_controller_finalize), (_gst_controller_init),
17481 (_gst_controller_class_init), (gst_controller_get_type):
17482 * libs/gst/controller/gst-controller.h:
17483 * libs/gst/controller/gst-helper.c: (g_object_control_properties),
17484 (g_object_uncontrol_properties), (g_object_get_controller),
17485 (g_object_set_controller), (g_object_sink_values),
17486 (g_object_get_value_arrays), (g_object_get_value_array):
17487 * libs/gst/controller/gst-interpolation.c:
17488 (gst_controlled_property_find_timed_value_node),
17489 (interpolate_none_get), (interpolate_trigger_get),
17490 (interpolate_trigger_get_value_array):
17491 * libs/gst/controller/lib.c: (gst_controller_init):
17492 * pkgconfig/Makefile.am:
17493 * pkgconfig/gstreamer-control-uninstalled.pc.in:
17494 * pkgconfig/gstreamer-control.pc.in:
17495 * testsuite/Makefile.am:
17496 * testsuite/controller/.cvsignore:
17497 * testsuite/controller/Makefile.am:
17498 * testsuite/controller/interpolator.c: (main):
17499 added controller code
17500 removed dparam pc files
17502 2005-08-01 Jan Schmidt <thaytan@mad.scientist.com>
17503 * gst/base/gstcollectpads.c: (gst_collectpads_finalize),
17504 (gst_collectpads_stop):
17505 Broadcast the condition when shutting down, to make sure we wake all
17506 threads up. Shut down pads on finalize, for safety.
17508 2005-08-01 Jan Schmidt <thaytan@mad.scientist.com>
17509 * gst/base/gstbasetransform.c: (gst_base_transform_init),
17510 (gst_base_transform_handle_buffer),
17511 (gst_base_transform_change_state):
17512 Handle PAUSED->READY->PAUSED transition after negotiation
17514 * gst/gstmessage.c: (gst_message_init):
17515 Extra piece of debug for new messages.
17517 2005-08-01 Stefan Kost <ensonic@users.sf.net>
17520 * docs/gst/tmpl/gstbasesrc.sgml:
17521 * docs/gst/tmpl/gstelement.sgml:
17522 * docs/gst/tmpl/gstevent.sgml:
17523 * docs/gst/tmpl/gstfakesrc.sgml:
17524 * docs/gst/tmpl/gstformat.sgml:
17525 * docs/gst/tmpl/gstghostpad.sgml:
17526 * docs/gst/tmpl/gstpad.sgml:
17527 * docs/gst/tmpl/gstquery.sgml:
17528 * docs/gst/tmpl/gststructure.sgml:
17529 * docs/gst/tmpl/gsttaglist.sgml:
17530 * docs/gst/tmpl/gstvalue.sgml:
17531 * docs/libs/gstreamer-libs-docs.sgml:
17532 * docs/libs/gstreamer-libs-sections.txt:
17533 * docs/libs/gstreamer-libs.types:
17534 * libs/gst/Makefile.am:
17535 * libs/gst/control/.cvsignore:
17536 * libs/gst/control/Makefile.am:
17537 * libs/gst/control/control.c:
17538 * libs/gst/control/control.h:
17539 * libs/gst/control/dparam.c:
17540 * libs/gst/control/dparam.h:
17541 * libs/gst/control/dparam_smooth.c:
17542 * libs/gst/control/dparam_smooth.h:
17543 * libs/gst/control/dparamcommon.h:
17544 * libs/gst/control/dparammanager.c:
17545 * libs/gst/control/dparammanager.h:
17546 * libs/gst/control/dplinearinterp.c:
17547 * libs/gst/control/dplinearinterp.h:
17548 * libs/gst/control/unitconvert.c:
17549 * libs/gst/control/unitconvert.h:
17550 * testsuite/Makefile.am:
17551 * testsuite/dynparams/.cvsignore:
17552 * testsuite/dynparams/Makefile.am:
17553 * testsuite/dynparams/dparamstest.c:
17554 * tools/Makefile.am:
17555 * tools/gst-inspect.c: (print_element_info), (main):
17556 * tools/gst-xmlinspect.c: (print_element_info), (main):
17557 deactivate and remove dparams (libgstcontrol)
17559 2005-08-01 Tim-Philipp Müller <tim at centricular dot net>
17561 * gst/elements/gsttypefindelement.c:
17562 (gst_type_find_element_have_type), (gst_type_find_element_init),
17563 (stop_typefinding), (gst_type_find_element_handle_event),
17564 (gst_type_find_element_chain), (gst_type_find_element_getrange):
17565 * gst/elements/gsttypefindelement.h:
17566 Set caps on all outgoing buffers, not just the first one.
17568 2005-08-01 Tim-Philipp Müller <tim at centricular dot net>
17570 * gst/elements/gsttypefindelement.c:
17571 (gst_type_find_element_have_type),
17572 (gst_type_find_element_check_set_buffer_caps),
17573 (gst_type_find_element_init), (stop_typefinding),
17574 (gst_type_find_element_handle_event),
17575 (gst_type_find_element_chain), (gst_type_find_element_getrange):
17576 * gst/elements/gsttypefindelement.h:
17577 Set caps on first outgoing buffer when we've found the type.
17579 2005-08-01 Tim-Philipp Müller <tim at centricular dot net>
17581 * docs/gst/gstreamer-docs.sgml:
17582 * docs/gst/gstreamer-sections.txt:
17583 * docs/gst/tmpl/gstscheduler.sgml:
17584 * docs/gst/tmpl/gstschedulerfactory.sgml:
17585 Remove some old cruft from docs.
17587 2005-07-31 Tim-Philipp Müller <tim at centricular dot net>
17590 Fix inline docs for GstPadLinkReturn.
17592 * gst/gststructure.c: (gst_structure_has_name):
17593 * gst/gststructure.h:
17594 * docs/gst/gstreamer-sections.txt:
17595 New API: gst_structure_has_name().
17597 2005-07-30 Tim-Philipp Müller <tim at centricular dot net>
17600 Use AC_SYS_LARGEFILE, which will set _FILE_OFFSET_BITS=64
17601 and _LARGEFILE_SOURCE in config.h as required. Do not
17602 export those flags in our .pc files any longer (#142209).
17604 Remove unused GST_DISABLE_OMEGA_COTHREADS stuff.
17606 * gst/elements/gstfilesink.c: (gst_file_sink_class_init),
17607 (gst_file_sink_do_seek), (gst_file_sink_event),
17608 (gst_file_sink_get_current_offset), (gst_file_sink_render):
17609 Redo seek/tell calls with large file support in mind; add some
17610 debugging messages; add log message that tells us when large
17611 file support is unavailable or not enabled for some reason.
17613 * gst/elements/gstfilesrc.c: (gst_file_src_class_init):
17614 Add log message that tells us when large file support
17615 is unavailable or not enabled for some reason.
17617 2005-07-29 Wim Taymans <wim@fluendo.com>
17619 * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
17620 Added test for removing an element with ghostpad from a bin.
17621 Fixed test as current implementation does the right thing.
17623 * gst/gstghostpad.c: (gst_proxy_pad_class_init),
17624 (gst_proxy_pad_do_query_type), (gst_proxy_pad_do_event),
17625 (gst_proxy_pad_do_query), (gst_proxy_pad_do_internal_link),
17626 (gst_proxy_pad_do_bufferalloc), (gst_proxy_pad_do_activate),
17627 (gst_proxy_pad_do_activatepull), (gst_proxy_pad_do_activatepush),
17628 (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange),
17629 (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_getcaps),
17630 (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
17631 (gst_proxy_pad_do_setcaps), (gst_proxy_pad_set_target),
17632 (gst_proxy_pad_get_target), (gst_proxy_pad_init),
17633 (gst_proxy_pad_dispose), (gst_proxy_pad_finalize),
17634 (gst_ghost_pad_class_init), (gst_ghost_pad_do_activate_push),
17635 (gst_ghost_pad_do_link), (gst_ghost_pad_do_unlink),
17636 (gst_ghost_pad_set_internal), (gst_ghost_pad_dispose),
17637 (gst_ghost_pad_new_notarget), (gst_ghost_pad_new),
17638 (gst_ghost_pad_get_target), (gst_ghost_pad_set_target):
17639 * gst/gstghostpad.h:
17640 Clean up ghostpads, remove properties for internal stuff.
17643 Prepare for switching targets, not all use cases work yet.
17645 2005-07-29 Wim Taymans <wim@fluendo.com>
17647 * docs/design/part-gstghostpad.txt:
17650 * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
17651 (gst_bin_remove_func):
17652 Unlinking pads while holding the bin LOCK is not a good
17655 * gst/gstpad.c: (gst_pad_class_init),
17656 (gst_pad_link_check_hierarchy), (gst_pad_get_caps_unlocked),
17657 (gst_pad_accept_caps), (gst_pad_set_caps), (gst_pad_send_event):
17658 No prob setting template after creating the pad.
17660 2005-07-29 Jan Schmidt <thaytan@mad.scientist.com>
17662 * gst/gstbus.c: (gst_bus_set_flushing), (gst_bus_pop),
17663 (gst_bus_peek), (gst_bus_source_dispatch),
17664 (gst_bus_add_watch_full), (poll_handler), (poll_timeout),
17665 (poll_destroy), (poll_destroy_timeout), (gst_bus_poll):
17666 gst_bus_poll may be called from other threads. Handle
17667 this nicely by not making poll_data disappear off the
17668 stack once gst_bus_poll returns.
17669 gst_bus_peek now increments the refcount on the returned
17672 2005-07-29 Wim Taymans <wim@fluendo.com>
17674 * docs/design/part-gstghostpad.txt:
17675 Overview of current GhostPad datastructures and use
17676 cases for changing the target.
17678 2005-07-28 Wim Taymans <wim@fluendo.com>
17680 * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
17681 Added checks for hierarchy consistency whan adding linked
17684 * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
17685 Added check to test element scheduling without bin/pipeline.
17687 * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
17688 First add elements to bin, then link.
17690 * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
17691 (gst_bin_remove_func):
17692 Unlink pads from elements added/removed from bin to maintain
17693 hierarchy consistency.
17695 2005-07-28 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
17697 * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
17698 (gst_base_transform_handle_buffer):
17699 * gst/base/gstbasetransform.h:
17700 Remove broken delay_configure (fixes renegotiation of software
17701 scaling pipelines); remove some leftover printf()s.
17703 2005-07-28 Wim Taymans <wim@fluendo.com>
17705 * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
17706 Added some more tests for wrong hierarchy
17708 * docs/design/part-overview.txt:
17711 * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_dispose):
17714 * gst/gstelement.c: (gst_element_remove_pad), (gst_element_seek),
17715 (gst_element_dispose):
17716 Some more cleanups.
17718 * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
17719 (gst_pad_link_check_hierarchy), (gst_pad_link_prepare),
17720 (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
17721 (gst_pad_set_caps), (gst_pad_send_event):
17722 Check for correct hierarchy when linking pads. Moving to
17723 strict requirement for ghostpads when linking elements in
17727 Clean ups. Added WRONG_HIERARCHY return value.
17729 2005-07-28 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
17731 * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
17732 Better debug if no transform is possible.
17734 2005-07-27 Wim Taymans <wim@fluendo.com>
17736 * docs/random/wtay/network-transp:
17737 Some old doc I had.
17739 2005-07-27 Wim Taymans <wim@fluendo.com>
17741 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
17742 (gst_dp_event_from_packet):
17743 Fix serialization of seek events.
17745 2005-07-27 Wim Taymans <wim@fluendo.com>
17747 * check/gst-libs/gdp.c: (GST_START_TEST):
17748 * gst/elements/gstfakesink.c: (gst_fake_sink_event):
17749 Fix compilation and fix event serialization.
17751 2005-07-27 Wim Taymans <wim@fluendo.com>
17754 * docs/design/part-TODO.txt:
17755 * docs/design/part-events.txt:
17758 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
17759 (gst_base_sink_event), (gst_base_sink_do_sync),
17760 (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
17761 * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
17762 (gst_base_src_do_seek), (gst_base_src_event_handler),
17763 (gst_base_src_loop):
17764 * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
17765 (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
17766 (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
17767 (gst_base_transform_event), (gst_base_transform_handle_buffer),
17768 (gst_base_transform_set_passthrough),
17769 (gst_base_transform_is_passthrough):
17770 * gst/elements/gstfakesink.c: (gst_fake_sink_event):
17771 * gst/elements/gstfilesink.c: (gst_file_sink_event):
17777 * gst/gstelement.c: (gst_element_seek):
17778 * gst/gstelement.h:
17779 Update gst_element_seek.
17781 * gst/gstevent.c: (gst_event_finalize), (_gst_event_copy),
17782 (gst_event_new), (gst_event_new_custom), (gst_event_get_structure),
17783 (gst_event_new_flush_start), (gst_event_new_flush_stop),
17784 (gst_event_new_eos), (gst_event_new_newsegment),
17785 (gst_event_parse_newsegment), (gst_event_new_tag),
17786 (gst_event_parse_tag), (gst_event_new_filler), (gst_event_new_qos),
17787 (gst_event_parse_qos), (gst_event_new_seek),
17788 (gst_event_parse_seek), (gst_event_new_navigation):
17790 Make GstEvent use GstStructure. Add parsing code, make sure the
17791 API is sufficiently generic.
17792 Mark possible directions of events and serialization.
17794 * gst/gstmessage.c: (gst_message_init), (gst_message_finalize),
17795 (_gst_message_copy), (gst_message_new_segment_start),
17796 (gst_message_new_segment_done), (gst_message_new_custom),
17797 (gst_message_parse_segment_start),
17798 (gst_message_parse_segment_done):
17801 * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
17802 (gst_pad_set_caps), (gst_pad_send_event):
17803 Update for new events.
17804 Catch events sent in wrong directions.
17806 * gst/gstqueue.c: (gst_queue_link_src),
17807 (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
17808 (gst_queue_handle_src_query):
17813 Remove event code from this file.
17815 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
17816 (gst_dp_event_from_packet):
17819 2005-07-27 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
17821 * gst/base/gstbasetransform.c: (gst_base_transform_getcaps),
17822 (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
17823 (gst_base_transform_get_size), (gst_base_transform_handle_buffer):
17824 Make debugging actually useful.
17826 2005-07-25 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
17828 * gst/gstpad.c: (fixate_value), (gst_pad_default_fixate),
17829 (gst_pad_fixate_caps):
17830 Implement default fixation once again, so that gst_pad_fixate()
17831 actually does anything at all. This probably needs to be some
17832 sort of a last resort, and use profile-based fixation first, but
17833 since that doesn't exist yet, this is the best we have. Fixes
17834 visualization in Totem.
17836 2005-07-22 Wim Taymans <wim@fluendo.com>
17838 * docs/design/part-events.txt:
17841 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
17842 (gst_base_sink_do_sync), (gst_base_sink_activate_push),
17843 (gst_base_sink_activate_pull):
17844 Some more comments.
17846 * gst/elements/gstfakesrc.c: (gst_fake_src_class_init),
17847 (gst_fake_src_create):
17848 Fix handoff marshall.
17850 * gst/elements/gstidentity.c: (gst_identity_class_init),
17851 (gst_identity_transform_ip):
17852 We're a real inplace element.
17854 * gst/gstbus.c: (gst_bus_post):
17855 Added some comments.
17857 * tests/lat.c: (fakesrc), (fakesink), (simple), (queue), (main):
17858 * tests/muxing/case1.c: (main):
17859 * tests/sched/dynamic-pipeline.c: (main):
17860 * tests/sched/interrupt1.c: (main):
17861 * tests/sched/interrupt2.c: (main):
17862 * tests/sched/interrupt3.c: (main):
17863 * tests/sched/runxml.c: (main):
17864 * tests/sched/sched-stress.c: (main):
17865 * tests/seeking/seeking1.c: (event_received), (main):
17866 * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
17868 * tests/threadstate/threadstate3.c: (main):
17869 * tests/threadstate/threadstate4.c: (main):
17870 * tests/threadstate/threadstate5.c: (main):
17873 2005-07-21 Wim Taymans <wim@fluendo.com>
17875 * docs/design/part-seeking.txt:
17876 Some small additions.
17878 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
17879 (gst_base_sink_get_times), (gst_base_sink_do_sync),
17880 (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
17881 * gst/base/gstbasesink.h:
17882 discont values are gint64, handle the math correctly.
17884 * gst/base/gstbasesrc.c: (gst_base_src_loop):
17885 Make the basesrc report error if the source pad is not linked.
17887 * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
17888 (gst_queue_loop), (gst_queue_handle_src_query),
17889 (gst_queue_src_activate_push):
17890 Make queue collect data even if the srcpad is not linked.
17891 Start pushing out data as soon as it is linked.
17893 * gst/gstutils.c: (gst_element_unlink), (gst_flow_get_name):
17895 Added gst_flow_get_name() to ease error reporting.
17897 2005-07-20 Wim Taymans <wim@fluendo.com>
17899 * gst/gstmessage.c: (gst_message_new_segment_start),
17900 (gst_message_new_segment_done), (gst_message_parse_segment_start),
17901 (gst_message_parse_segment_done):
17902 * gst/gstmessage.h:
17903 Added a bunch of messages for advanced seeking.
17905 * gst/parse/grammar.y:
17906 * libs/gst/control/dparammanager.c: (gst_dpman_set_parent),
17907 (gst_dpman_state_changed):
17908 Fix some new-pad -> pad-added signals
17910 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
17912 * docs/manual/appendix-porting.xml:
17913 * docs/pwg/appendix-porting.xml:
17914 Document new-pad/state-change signal renames and the FixedList
17917 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
17919 * docs/manual/advanced-autoplugging.xml:
17920 * docs/manual/basics-helloworld.xml:
17921 * docs/manual/basics-pads.xml:
17922 * docs/random/ds/0.9-suggested-changes:
17923 * gst/gstelement.c: (gst_element_class_init), (gst_element_seek):
17924 * gst/gstelement.h:
17928 * gst/gststructure.c: (gst_structure_value_get_generic_type),
17929 (gst_structure_parse_array), (gst_structure_parse_value):
17930 * gst/gstvalue.c: (gst_type_is_fixed),
17931 (gst_value_list_prepend_value), (gst_value_list_append_value),
17932 (gst_value_list_get_size), (gst_value_list_get_value),
17933 (gst_value_transform_array_string), (gst_value_serialize_array),
17934 (gst_value_deserialize_array), (gst_value_intersect_array),
17935 (gst_value_is_fixed), (_gst_value_initialize):
17937 GstElement::new-pad -> pad-added, GstElement::state-change ->
17938 state-changed, GstValueFixedList -> GstValueArray, add format and
17939 flags as their own arguments in gst_element_seek() (should improve
17940 "bindeability"), remove function generators since they don't work
17941 under a whole bunch of compilers (they were deprecated already
17944 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
17946 * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
17947 (_gst_debug_register_funcptr):
17949 Fix illegal cast on some platforms (#309253).
17951 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
17953 * gst/gstmessage.c: (gst_message_new_custom):
17954 * gst/gstmessage.h:
17955 Add _new_custom, make _new_application a macro to _new_custom.
17957 2005-07-20 Wim Taymans <wim@fluendo.com>
17959 * gst/base/gstbasesrc.c: (gst_base_src_init),
17960 (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
17961 * gst/base/gstbasesrc.h:
17962 Add a gboolean to decide when to push out a discont.
17964 * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
17965 (gst_queue_loop), (gst_queue_handle_src_query),
17966 (gst_queue_sink_activate_push), (gst_queue_src_activate_push),
17967 (gst_queue_set_property), (gst_queue_get_property):
17970 * tests/threadstate/threadstate1.c: (main):
17971 Make a thread test compile and run... very silly..
17974 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
17976 * docs/manual/appendix-porting.xml:
17977 Mention removal of libgstgconf-0.9.la and existence of gconf
17980 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
17982 * docs/pwg/advanced-clock.xml:
17983 * docs/pwg/appendix-porting.xml:
17984 * docs/pwg/intro-preface.xml:
17985 * docs/pwg/other-base.xml:
17986 * docs/pwg/other-manager.xml:
17987 * docs/pwg/other-nton.xml:
17988 * docs/pwg/other-ntoone.xml:
17989 * docs/pwg/other-oneton.xml:
17990 * docs/pwg/pwg.xml:
17991 Document base classes, update sections of n-to-1 and 1-to-n (muxer,
17992 demuxer), remove n-to-n (was never written), fix some code examples
17993 and links and update the porting section to include all this.
17995 2005-07-19 Wim Taymans <wim@fluendo.com>
17997 * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_sink_event),
17998 (gst_queue_chain), (gst_queue_loop), (gst_queue_handle_src_event),
17999 (gst_queue_handle_src_query), (gst_queue_sink_activate_push),
18000 (gst_queue_src_activate_push), (gst_queue_change_state),
18001 (gst_queue_get_property):
18003 Propagate GstFlowReturn more intelligently upstream and output
18004 an ERROR/EOS when streaming stopped due to fatal error.
18006 2005-07-19 Wim Taymans <wim@fluendo.com>
18008 * tools/gst-launch.c: (check_intr), (event_loop), (main):
18009 Don't block forever for the state change to complete, the
18010 pipeline already did with a sensible timeout.
18012 2005-07-19 Wim Taymans <wim@fluendo.com>
18014 * gst/base/gstbasesrc.c: (gst_base_src_get_range):
18015 Make sure we never call the create function is we
18018 2005-07-19 Andy Wingo <wingo@pobox.com>
18020 * gst/parse/parse.l: Attempt to solve bug #172815.
18022 2005-07-19 Wim Taymans <wim@fluendo.com>
18024 * docs/design/part-clocks.txt:
18025 * docs/design/part-events.txt:
18026 * gst/base/gstbasesrc.c: (gst_base_src_do_seek):
18027 Small docs updates.
18028 Only update the seeking values when we are not
18031 2005-07-19 Jan Schmidt <thaytan@mad.scientist.com>
18033 * gst/base/gstbasesrc.c: (gst_base_src_loop):
18034 Oops, ignore the result of gst_pad_push_event here.
18036 2005-07-19 Jan Schmidt <thaytan@mad.scientist.com>
18038 * gst/base/gstbasesrc.c: (gst_base_src_loop),
18039 (gst_base_src_activate_push):
18040 Send discont event from the loop function, as pads
18041 aren't activated yet in the activate_push handler.
18043 * gst/gstbin.c: (bin_bus_handler):
18044 Don't leak element name.
18046 2005-07-18 Andy Wingo <wingo@pobox.com>
18048 * configure.ac: Use AS_LIBTOOL_TAGS.
18050 2005-07-18 Wim Taymans <wim@fluendo.com>
18052 * docs/gst/gstreamer.types:
18053 Remove deleted types.
18055 2005-07-18 Wim Taymans <wim@fluendo.com>
18057 * check/elements/gstfakesrc.c: (GST_START_TEST):
18060 * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
18061 (init_popt_callback):
18063 * gst/gst_private.h:
18064 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_add_func),
18065 (gst_bin_remove_func), (gst_bin_get_state), (gst_bin_change_state):
18068 * gst/gstconfig.h.in:
18069 * gst/gstelement.c: (gst_element_class_init),
18070 (gst_element_set_base_time), (gst_element_get_base_time),
18071 (iterator_fold_with_resync), (gst_element_change_state),
18072 (gst_element_dispose), (gst_element_get_bus):
18073 * gst/gstelement.h:
18074 * gst/gstelementfactory.h:
18075 * gst/gsterror.c: (_gst_core_errors_init):
18078 * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
18080 * gst/gstinfo.c: (_gst_debug_init):
18081 * gst/gstmessage.c: (_gst_message_copy):
18082 * gst/gstmessage.h:
18083 * gst/gstminiobject.h:
18086 * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
18087 (gst_pad_set_caps), (gst_pad_start_task), (gst_pad_stop_task):
18090 * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
18091 (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
18092 (gst_pipeline_get_last_stream_time):
18093 * gst/gstpipeline.h:
18094 * gst/gstpluginfeature.h:
18096 * gst/gstscheduler.c:
18097 * gst/gstscheduler.h:
18098 * gst/gststructure.h:
18099 * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
18100 (gst_task_finalize), (gst_task_func), (gst_task_create),
18101 (gst_task_set_lock), (gst_task_get_state), (gst_task_start),
18102 (gst_task_stop), (gst_task_pause):
18104 * gst/gsttypefind.h:
18106 * gst/registries/gstlibxmlregistry.c: (load_feature),
18107 (gst_xml_registry_load), (gst_xml_registry_save_feature):
18108 * gst/registries/gstxmlregistry.c:
18109 (gst_xml_registry_start_element), (gst_xml_registry_save_feature):
18110 * gst/schedulers/threadscheduler.c:
18111 * libs/gst/control/dparammanager.h:
18112 * tools/gst-inspect.c: (print_element_list),
18113 (print_plugin_features), (print_element_features):
18114 * tools/gst-xmlinspect.c: (print_element_list),
18115 (print_plugin_info), (main):
18116 Removed plugable schedulers.
18117 Removed Scheduler/Manager from elements.
18118 Removed gsttypes.h, rearranged includes.
18119 Removed dependency pad<->element, element<>pipeline, and
18120 various others, fix includes.
18121 implement gst_pad_get_parent() with gst_object_get_parent()
18122 Make GstTask sefcontained.
18123 Fix _get_state() on GstBin, it did not return ASYNC with a 0
18125 Fix endless loop in iterator_fold_with_resync.
18128 2005-07-18 Wim Taymans <wim@fluendo.com>
18134 2005-07-18 Wim Taymans <wim@fluendo.com>
18137 No more cothreads.h
18139 2005-07-18 Wim Taymans <wim@fluendo.com>
18143 Let's remove these.
18145 2005-07-18 Wim Taymans <wim@fluendo.com>
18147 * docs/design/part-dynamic.txt:
18148 * docs/design/part-events.txt:
18149 * docs/design/part-seeking.txt:
18150 Some more docs in the works.
18152 * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
18153 (gst_base_transform_getcaps), (gst_base_transform_configure_caps),
18154 (gst_base_transform_setcaps), (gst_base_transform_get_size),
18155 (gst_base_transform_buffer_alloc), (gst_base_transform_event),
18156 (gst_base_transform_handle_buffer),
18157 (gst_base_transform_sink_activate_push),
18158 (gst_base_transform_src_activate_pull),
18159 (gst_base_transform_set_passthrough),
18160 (gst_base_transform_is_passthrough):
18163 * gst/gstbus.c: (gst_bus_source_dispatch), (gst_bus_poll):
18166 * gst/gstevent.c: (gst_event_finalize):
18169 * gst/gstutils.c: (gst_element_unlink),
18170 (gst_pad_get_parent_element), (gst_pad_proxy_getcaps),
18171 (gst_pad_proxy_setcaps):
18173 Add _get_parent_element() to get a pads parent as an element.
18175 2005-07-18 Wim Taymans <wim@fluendo.com>
18177 * check/gst/gstbin.c: (GST_START_TEST):
18180 2005-07-18 Wim Taymans <wim@fluendo.com>
18182 * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
18183 (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
18184 (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
18185 (gst_base_sink_event), (gst_base_sink_do_sync),
18186 (gst_base_sink_chain), (gst_base_sink_loop),
18187 (gst_base_sink_deactivate), (gst_base_sink_activate_push),
18188 (gst_base_sink_activate_pull), (gst_base_sink_change_state):
18190 Fix logic for returning ASYNC when not prerolled.
18192 2005-07-18 Wim Taymans <wim@fluendo.com>
18194 * gst/gstqueue.c: (gst_queue_handle_sink_event):
18195 Fix nasty refcount bug.
18197 2005-07-16 Philippe Khalaf <burger@speedy.org>
18199 * gst/elements/gstfdsrc.c:
18200 * gst/elements/gstfdsrc.h:
18201 * gst/elements/gstelements.c:
18202 * gst/elements/Makefile.am:
18203 Ported fdsrc to 0.9.
18205 2005-07-16 Wim Taymans <wim@fluendo.com>
18207 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
18208 (gst_base_sink_do_sync):
18211 2005-07-16 Wim Taymans <wim@fluendo.com>
18213 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
18214 (gst_base_sink_event), (gst_base_sink_get_times),
18215 (gst_base_sink_do_sync), (gst_base_sink_change_state):
18216 * gst/base/gstbasesink.h:
18217 Store and use discont values when syncing buffers as described
18220 * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
18221 (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
18222 (gst_base_src_activate_push):
18223 Push discont event when starting.
18225 * gst/elements/gstidentity.c: (gst_identity_transform):
18228 * gst/gstbin.c: (gst_bin_change_state):
18229 Small cleanups in base_time distribution.
18231 * gst/gstelement.c: (gst_element_set_base_time),
18232 (gst_element_get_base_time), (gst_element_change_state):
18233 * gst/gstelement.h:
18234 Added methods for the base_time of the element.
18237 * gst/gstpipeline.c: (gst_pipeline_send_event),
18238 (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
18239 (gst_pipeline_get_last_stream_time):
18240 * gst/gstpipeline.h:
18242 Handle seeking as described in design doc, remove stream_time
18244 Cleanups clock and stream_time selection code. Added accessors
18245 for the stream_time.
18248 2005-07-16 Andy Wingo <wingo@pobox.com>
18250 * gst/gsterror.c (_gst_core_errors_init): Use the magic word
18253 2005-07-16 Wim Taymans <wim@fluendo.com>
18255 * check/gst/gstbin.c: (GST_START_TEST):
18256 Make elements silent as the deep_notify refs the
18257 parent, which might make the test fail.
18259 * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
18260 Don't hold the lock for too long.
18262 2005-07-16 Tim-Philipp Müller <tim at centricular dot net>
18264 * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
18265 Don't unref the caps we passed to gst_caps_make_writable() after
18266 passing them. gst_caps_make_writable() will do that for us.
18268 2005-07-15 Andy Wingo <wingo@pobox.com>
18270 * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
18273 * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
18274 own marshalling function for the handoff signal. Properly type the
18275 buffer as a buffer. Fixes some warnings. Should do a more general
18277 (gst_identity_class_init): Plug into the right marshaller.
18279 2005-07-15 Wim Taymans <wim@fluendo.com>
18281 * docs/design/part-TODO.txt:
18282 * docs/design/part-clocks.txt:
18283 * docs/design/part-element-sink.txt:
18284 * docs/design/part-events.txt:
18285 * docs/design/part-gstpipeline.txt:
18286 Updated docs, mostly DISCONT related.
18288 2005-07-15 Tim-Philipp Müller <tim at centricular dot net>
18290 * docs/pwg/building-pads.xml:
18291 s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
18293 2005-07-15 Andy Wingo <wingo@pobox.com>
18295 * tools/gst-typefind.c: Update, add copyright block.
18297 * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
18298 Normalize and truncate caps before fixation.
18301 * gst/gstcaps.c (gst_caps_truncate): New function, destructively
18302 discards all but the first structure from its argument.
18304 2005-07-15 Wim Taymans <wim@fluendo.com>
18306 * gst/base/gstbasetransform.c: (gst_base_transform_init),
18307 (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
18308 (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
18309 (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
18310 (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
18311 (gst_base_transform_chain), (gst_base_transform_change_state),
18312 (gst_base_transform_set_passthrough),
18313 (gst_base_transform_is_passthrough):
18314 * gst/base/gstbasetransform.h:
18315 Make passthrough work using the bufferpools.
18316 Changed API a bit, subclasses have to write into a buffer
18317 provided by the base class.
18318 More debug info in nego functions.
18320 * gst/elements/gstidentity.c: (gst_identity_init),
18321 (gst_identity_transform):
18322 Port to new base class.
18324 2005-07-15 Wim Taymans <wim@fluendo.com>
18326 * gst/gstmessage.c: (gst_message_new_state_changed):
18327 * tools/gst-launch.c: (event_loop), (main):
18328 Totally dump messages in -launch with the -m option.
18329 Fix message name for State messages,
18331 2005-07-14 Wim Taymans <wim@fluendo.com>
18333 * gst/base/gstbasesrc.c: (gst_base_src_loop):
18334 Post error messages on errors.
18336 2005-07-14 Wim Taymans <wim@fluendo.com>
18338 * gst/gstcaps.c: (gst_caps_do_simplify):
18342 Define error for stream stopped.
18344 * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
18345 (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
18346 Do proper return values.
18348 * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
18349 (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
18350 (gst_pad_get_range):
18351 Better return values.
18354 Reorganise return values, add macro to check for fatal errors.
18356 * gst/gstqueue.c: (gst_queue_chain):
18357 Return proper GstFlowReturn values,
18359 2005-07-14 Thomas Vander Stichele <thomas at apestaart dot org>
18361 * docs/gst/gstreamer-sections.txt:
18362 * docs/gst/gstreamer.types:
18363 * docs/gst/tmpl/gst.sgml:
18364 * docs/gst/tmpl/gstbasesink.sgml:
18365 * docs/gst/tmpl/gstbasesrc.sgml:
18366 * docs/gst/tmpl/gstbasetransform.sgml:
18367 * docs/gst/tmpl/gstbin.sgml:
18368 * docs/gst/tmpl/gstbuffer.sgml:
18369 * docs/gst/tmpl/gstcaps.sgml:
18370 * docs/gst/tmpl/gstclock.sgml:
18371 * docs/gst/tmpl/gstcompat.sgml:
18372 * docs/gst/tmpl/gstconfig.sgml:
18373 * docs/gst/tmpl/gstelement.sgml:
18374 * docs/gst/tmpl/gstelementdetails.sgml:
18375 * docs/gst/tmpl/gstelementfactory.sgml:
18376 * docs/gst/tmpl/gstenumtypes.sgml:
18377 * docs/gst/tmpl/gsterror.sgml:
18378 * docs/gst/tmpl/gstevent.sgml:
18379 * docs/gst/tmpl/gstfakesink.sgml:
18380 * docs/gst/tmpl/gstfakesrc.sgml:
18381 * docs/gst/tmpl/gstfilesink.sgml:
18382 * docs/gst/tmpl/gstfilesrc.sgml:
18383 * docs/gst/tmpl/gstfilter.sgml:
18384 * docs/gst/tmpl/gstformat.sgml:
18385 * docs/gst/tmpl/gstghostpad.sgml:
18386 * docs/gst/tmpl/gstimplementsinterface.sgml:
18387 * docs/gst/tmpl/gstindex.sgml:
18388 * docs/gst/tmpl/gstindexfactory.sgml:
18389 * docs/gst/tmpl/gstinfo.sgml:
18390 * docs/gst/tmpl/gstiterator.sgml:
18391 * docs/gst/tmpl/gstmacros.sgml:
18392 * docs/gst/tmpl/gstmemchunk.sgml:
18393 * docs/gst/tmpl/gstminiobject.sgml:
18394 * docs/gst/tmpl/gstobject.sgml:
18395 * docs/gst/tmpl/gstpad.sgml:
18396 * docs/gst/tmpl/gstpadtemplate.sgml:
18397 * docs/gst/tmpl/gstparse.sgml:
18398 * docs/gst/tmpl/gstpipeline.sgml:
18399 * docs/gst/tmpl/gstplugin.sgml:
18400 * docs/gst/tmpl/gstpluginfeature.sgml:
18401 * docs/gst/tmpl/gstquery.sgml:
18402 * docs/gst/tmpl/gstqueue.sgml:
18403 * docs/gst/tmpl/gstregistry.sgml:
18404 * docs/gst/tmpl/gstregistrypool.sgml:
18405 * docs/gst/tmpl/gstscheduler.sgml:
18406 * docs/gst/tmpl/gstschedulerfactory.sgml:
18407 * docs/gst/tmpl/gststructure.sgml:
18408 * docs/gst/tmpl/gstsystemclock.sgml:
18409 * docs/gst/tmpl/gsttaglist.sgml:
18410 * docs/gst/tmpl/gsttagsetter.sgml:
18411 * docs/gst/tmpl/gsttrace.sgml:
18412 * docs/gst/tmpl/gsttrashstack.sgml:
18413 * docs/gst/tmpl/gsttypefind.sgml:
18414 * docs/gst/tmpl/gsttypefindfactory.sgml:
18415 * docs/gst/tmpl/gsttypes.sgml:
18416 * docs/gst/tmpl/gsturihandler.sgml:
18417 * docs/gst/tmpl/gsturitype.sgml:
18418 * docs/gst/tmpl/gstutils.sgml:
18419 * docs/gst/tmpl/gstvalue.sgml:
18420 * docs/gst/tmpl/gstversion.sgml:
18421 * docs/gst/tmpl/gstxml.sgml:
18422 * docs/libs/tmpl/gstcontrol.sgml:
18423 * docs/libs/tmpl/gstdataprotocol.sgml:
18424 * docs/libs/tmpl/gstdparam.sgml:
18425 * docs/libs/tmpl/gstdplinint.sgml:
18426 * docs/libs/tmpl/gstdpman.sgml:
18427 * docs/libs/tmpl/gstdpsmooth.sgml:
18428 * docs/libs/tmpl/gstgetbits.sgml:
18429 * docs/libs/tmpl/gstunitconvert.sgml:
18430 * gst/base/gstpushsrc.c: (gst_push_src_get_type),
18431 (gst_push_src_base_init), (gst_push_src_class_init),
18432 (gst_push_src_init), (gst_push_src_create):
18433 * gst/base/gstpushsrc.h:
18434 * gst/elements/gstelements.c:
18435 * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
18436 (gst_fake_sink_base_init), (gst_fake_sink_class_init),
18437 (gst_fake_sink_init), (gst_fake_sink_set_property),
18438 (gst_fake_sink_get_property), (gst_fake_sink_get_times),
18439 (gst_fake_sink_event), (gst_fake_sink_preroll),
18440 (gst_fake_sink_render), (gst_fake_sink_change_state):
18441 * gst/elements/gstfakesink.h:
18442 * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
18443 (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
18444 (gst_fake_src_base_init), (gst_fake_src_class_init),
18445 (gst_fake_src_init), (gst_fake_src_event_handler),
18446 (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
18447 (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
18448 (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
18449 (gst_fake_src_create_buffer), (gst_fake_src_create),
18450 (gst_fake_src_start), (gst_fake_src_stop):
18451 * gst/elements/gstfakesrc.h:
18452 * gst/elements/gstfilesink.c: (_do_init),
18453 (gst_file_sink_base_init), (gst_file_sink_class_init),
18454 (gst_file_sink_init), (gst_file_sink_dispose),
18455 (gst_file_sink_set_location), (gst_file_sink_set_property),
18456 (gst_file_sink_get_property), (gst_file_sink_open_file),
18457 (gst_file_sink_close_file), (gst_file_sink_query),
18458 (gst_file_sink_event), (gst_file_sink_render),
18459 (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
18460 (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
18461 (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
18462 * gst/elements/gstfilesink.h:
18463 * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
18464 (gst_file_src_class_init), (gst_file_src_init),
18465 (gst_file_src_finalize), (gst_file_src_set_location),
18466 (gst_file_src_set_property), (gst_file_src_get_property),
18467 (gst_file_src_map_region), (gst_file_src_map_small_region),
18468 (gst_file_src_create_mmap), (gst_file_src_create_read),
18469 (gst_file_src_create), (gst_file_src_is_seekable),
18470 (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
18471 (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
18472 (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
18473 (gst_file_src_uri_handler_init):
18474 * gst/elements/gstfilesrc.h:
18475 more autistic cleanliness in functions/names/defines
18477 2005-07-13 Andy Wingo <wingo@pobox.com>
18479 * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
18480 source couldn't negotiate.
18482 * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
18486 * gst/gstutils.c (gst_element_link_pads_filtered): New old
18487 function. I am channeling Hades. Put your boots on suckers!!!
18489 2005-07-13 Thomas Vander Stichele <thomas at apestaart dot org>
18491 * testsuite/caps/Makefile.am:
18492 * testsuite/caps/value_compare.c:
18493 * testsuite/caps/value_intersect.c:
18494 * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
18495 move two testsuite apps over to the check dir
18497 2005-07-12 Wim Taymans <wim@fluendo.com>
18499 * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
18500 Added more debug info in the negotiate process.
18502 * gst/gstmessage.h:
18503 Prepare for segment playback.
18505 * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
18511 * tools/gst-launch.c: (main):
18512 NULL pipeline on errors.
18514 2005-07-12 Andy Wingo <wingo@pobox.com>
18516 * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
18517 not it comes from a malloc region. Make sure our copy gets freed.
18519 2005-07-12 Thomas Vander Stichele <thomas at apestaart dot org>
18521 * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
18522 * check/gst/gstmessage.c: (GST_START_TEST):
18523 * check/gst/gststructure.c: (GST_START_TEST),
18524 (gst_structure_suite), (main):
18526 * gst/gstelement.c: (gst_element_message_full):
18527 clean up GError and debug string now that they get copied
18528 * gst/gstmessage.c: (gst_message_new_error),
18529 (gst_message_new_warning), (gst_message_parse_error),
18530 (gst_message_parse_warning):
18531 use GST_TYPE_G_ERROR for structure_new, and take copies of
18532 arguments, so that we don't mess up refcounting
18534 2005-07-12 Thomas Vander Stichele <thomas at apestaart dot org>
18536 * check/Makefile.am:
18537 add per-test valgrind targets
18538 * check/gst-libs/gdp.c: (GST_START_TEST),
18539 (gst_data_protocol_suite), (main):
18542 2005-07-12 Thomas Vander Stichele <thomas at apestaart dot org>
18544 * check/Makefile.am:
18545 instate more valgrindable tests
18546 * check/elements/gstfakesrc.c: (chain_func), (event_func),
18547 (GST_START_TEST), (fakesrc_suite):
18548 * check/gst/gstpad.c: (GST_START_TEST):
18549 * check/gst/gststructure.c: (GST_START_TEST):
18551 * docs/gst/tmpl/gstminiobject.sgml:
18552 * gst/gstpad.c: (gst_pad_finalize):
18553 fix the static mutex leak
18555 2005-07-11 Thomas Vander Stichele <thomas at apestaart dot org>
18557 * check/Makefile.am:
18558 add two more tests for valgrinding
18559 * check/gst/gstvalue.c: (GST_START_TEST):
18560 test refcount of deserialized buffer, found a leak
18561 * docs/gst/gstreamer-docs.sgml:
18562 * docs/gst/gstreamer-sections.txt:
18563 * docs/gst/gstreamer.types:
18564 * docs/gst/tmpl/gstminiobject.sgml:
18565 add miniobject to docs
18566 * gst/gstminiobject.c:
18568 * gst/gstvalue.c: (gst_value_deserialize_buffer),
18569 (gst_string_unwrap):
18570 fix a hard-to-find invalid write for one of the tests
18571 fix a leak for deserialized buffers
18573 2005-07-11 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
18575 * docs/pwg/advanced-events.xml:
18576 * docs/pwg/advanced-request.xml:
18577 * docs/pwg/advanced-scheduling.xml:
18578 * docs/pwg/appendix-porting.xml:
18579 * docs/pwg/building-boiler.xml:
18580 * docs/pwg/intro-preface.xml:
18581 * docs/pwg/other-ntoone.xml:
18582 Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
18583 of example code and explanation for pad activation, loop() and
18584 getrange() functions and a bit more. Remove old comments pointing
18586 * examples/pwg/Makefile.am:
18587 Add loop/getrange examples.
18589 2005-07-11 Thomas Vander Stichele <thomas at apestaart dot org>
18592 check for valgrind binary + some fixes
18594 valgrind suppressions for the tests
18595 * check/Makefile.am:
18596 add a valgrind: target that valgrinds the unit tests
18597 * check/gst/gst.c: (GST_START_TEST), (gst_suite):
18598 * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
18599 * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
18600 * check/gst/gstghostpad.c:
18602 * check/gst/gstdata.c:
18604 * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
18605 (thread_unref), (gst_mini_object_suite), (main):
18607 * gst/gst.c: (gst_deinit):
18609 add a method to clean up.
18610 * gst/gstsystemclock.c: (gst_system_clock_dispose),
18611 (gst_system_clock_obtain):
18612 allow for disposing the system clock.
18613 * tools/gst-launch.c: (main):
18616 2005-07-11 Thomas Vander Stichele <thomas at apestaart dot org>
18618 * docs/gst/tmpl/gstbasesrc.sgml:
18619 * docs/gst/tmpl/gstfakesrc.sgml:
18620 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
18621 (gst_base_src_init), (gst_base_src_set_property),
18622 (gst_base_src_get_property), (gst_base_src_get_range),
18623 (gst_base_src_start):
18624 * gst/base/gstbasesrc.h:
18625 add num-buffers property
18626 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
18627 (gst_fakesrc_init), (gst_fakesrc_set_property),
18628 (gst_fakesrc_get_property), (gst_fakesrc_create),
18629 (gst_fakesrc_start):
18630 remove num-buffers property
18632 2005-07-10 Thomas Vander Stichele <thomas at apestaart dot org>
18634 * docs/gst/gstreamer-sections.txt:
18635 * docs/gst/tmpl/gstbasesink.sgml:
18636 * docs/gst/tmpl/gstbasesrc.sgml:
18637 * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
18638 (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
18639 (gst_base_sink_finalize), (gst_base_sink_set_clock),
18640 (gst_base_sink_set_property), (gst_base_sink_get_property),
18641 (gst_base_sink_handle_object), (gst_base_sink_event),
18642 (gst_base_sink_do_sync), (gst_base_sink_handle_event),
18643 (gst_base_sink_handle_buffer), (gst_base_sink_chain),
18644 (gst_base_sink_loop), (gst_base_sink_deactivate),
18645 (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
18646 (gst_base_sink_change_state):
18647 * gst/base/gstbasesink.h:
18648 * gst/base/gstbasesrc.h:
18649 * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
18650 * gst/elements/gstfilesink.c: (gst_filesink_class_init),
18651 (gst_filesink_init):
18652 more macro splitting
18654 2005-07-10 Thomas Vander Stichele <thomas at apestaart dot org>
18656 * gst/gstelement.c: (gst_element_get_bus):
18658 * tools/gst-launch.c: (check_intr), (event_loop):
18661 2005-07-10 Thomas Vander Stichele <thomas at apestaart dot org>
18663 * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
18666 2005-07-10 Thomas Vander Stichele <thomas at apestaart dot org>
18668 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
18669 (gst_base_src_finalize):
18670 add finalize method and clean up properly
18671 * gst/gstpipeline.c: (gst_pipeline_dispose):
18674 2005-07-09 Thomas Vander Stichele <thomas at apestaart dot org>
18676 * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
18678 add more things to check
18679 * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
18680 * gst/gstelement.c:
18683 2005-07-09 Thomas Vander Stichele <thomas at apestaart dot org>
18685 * check/elements/gstfakesrc.c: (chain_func), (event_func),
18686 (GST_START_TEST), (fakesrc_suite):
18687 * check/gst-libs/gdp.c: (GST_START_TEST):
18688 * check/gst/gst.c: (GST_START_TEST):
18689 * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
18690 * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
18691 * check/gst/gstbus.c: (GST_START_TEST):
18692 * check/gst/gstcaps.c: (GST_START_TEST):
18693 * check/gst/gstdata.c: (GST_START_TEST):
18694 * check/gst/gstelement.c: (GST_START_TEST):
18695 * check/gst/gstghostpad.c: (GST_START_TEST):
18696 * check/gst/gstiterator.c: (GST_START_TEST):
18697 * check/gst/gstmessage.c: (GST_START_TEST):
18698 * check/gst/gstobject.c: (GST_START_TEST):
18699 * check/gst/gstpad.c: (GST_START_TEST):
18700 * check/gst/gststructure.c: (GST_START_TEST):
18701 * check/gst/gstsystemclock.c: (GST_START_TEST),
18702 (gst_systemclock_suite):
18703 * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
18704 * check/gst/gstvalue.c: (GST_START_TEST):
18705 * check/pipelines/cleanup.c: (GST_START_TEST):
18706 * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
18707 * check/states/sinks.c: (GST_START_TEST):
18708 * check/gstcheck.c: (gst_check_init):
18709 * check/gstcheck.h:
18710 add debugging category
18711 use GST_START_TEST now, so we add a debug line
18713 2005-07-09 Thomas Vander Stichele <thomas at apestaart dot org>
18715 * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
18716 add test for state change message on a bin
18717 * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
18719 * gst/gstbin.c: (gst_bin_init):
18720 * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
18721 * gst/gstelement.c: (gst_element_post_message),
18722 (gst_element_set_state):
18723 * gst/gstelementfactory.c: (gst_element_factory_create):
18724 * gst/gstmessage.c: (gst_message_new):
18725 * gst/gstscheduler.c:
18726 various debugging additions and cleanups
18728 2005-07-08 Thomas Vander Stichele <thomas at apestaart dot org>
18730 * check/Makefile.am:
18731 * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
18733 adding tests for elements
18734 * gst/gstelement.c: (gst_element_dispose):
18736 2005-07-08 Thomas Vander Stichele <thomas at apestaart dot org>
18738 * gst/registries/gstlibxmlregistry.c: (load_feature):
18739 plug more leaks. A simple gst_init() now is leakfree, yay.
18741 2005-07-08 Thomas Vander Stichele <thomas at apestaart dot org>
18743 * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
18744 (gst_xml_registry_load):
18745 plug another memleak
18747 2005-07-08 Thomas Vander Stichele <thomas at apestaart dot org>
18750 use GST_SET_ERROR_CFLAGS
18751 * docs/faq/cvs.xml:
18752 change to ERROR_CFLAGS
18754 2005-07-08 Thomas Vander Stichele <thomas at apestaart dot org>
18757 make GST_ERROR_CFLAGS overridable and re-enable Werror
18758 * docs/faq/cvs.xml:
18759 add a note about error CFLAGS
18760 * docs/gst/tmpl/gstfakesrc.sgml:
18761 * gst/elements/gstfakesrc.c:
18762 comment out some unused code
18763 * gst/gst.c: (split_and_iterate):
18764 * gst/registries/gstlibxmlregistry.c: (load_pad_template),
18768 2005-07-07 Thomas Vander Stichele <thomas at apestaart dot org>
18770 * common/Makefile.am:
18771 * common/gtk-doc.mak:
18772 * docs/gst/Makefile.am:
18773 factor out gtk-doc.mak
18775 2005-07-07 Wim Taymans <wim@fluendo.com>
18777 * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
18778 (gst_thread_scheduler_dispose):
18779 Unlock the STREAM_LOCK completely.
18781 2005-07-07 Thomas Vander Stichele <thomas at apestaart dot org>
18783 * check/Makefile.am:
18784 * check/elements/.cvsignore:
18785 * check/elements/gstfakesrc.c: (chain_func), (event_func),
18786 (START_TEST), (fakesrc_suite), (main):
18787 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
18788 (gst_fakesrc_set_property), (gst_fakesrc_get_property),
18789 (gst_fakesrc_create), (gst_fakesrc_start):
18790 * gst/elements/gstfakesrc.h:
18791 adding a first element test
18793 2005-07-07 Andy Wingo <wingo@pobox.com>
18795 * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
18798 2005-07-07 Wim Taymans <wim@fluendo.com>
18804 2005-07-07 Wim Taymans <wim@fluendo.com>
18806 * gst/base/gstbasesrc.c: (gst_base_src_get_range),
18807 (gst_base_src_default_negotiate), (gst_base_src_negotiate):
18808 Allow subclasses to implement their own negotiation.
18810 2005-07-07 Jan Schmidt <thaytan@mad.scientist.com>
18812 * docs/design/part-gstbin.txt:
18813 * docs/design/part-gstpipeline.txt:
18814 Update design notes to reflect the movement of
18815 responsibility for bus handling from GstPipeline to
18818 2005-07-07 Jan Schmidt <thaytan@mad.scientist.com>
18821 Remove unnecessary queue2/3/4 examples.
18823 2005-07-07 Jan Schmidt <thaytan@mad.scientist.com>
18825 * examples/Makefile.am:
18826 * examples/helloworld/helloworld.c: (event_loop), (main):
18827 * examples/queue/queue.c: (event_loop), (main):
18828 * examples/queue2/queue2.c: (main):
18829 Update a couple of the examples to work again.
18831 * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
18832 (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
18833 Spelling corrections and extra debug.
18835 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
18836 (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
18837 (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
18839 * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
18840 (gst_pipeline_change_state):
18841 * gst/gstpipeline.h:
18842 Move the bus handler for children to the GstBin, and create a
18843 separate bus for receiving messages from children to the one the
18844 bus sends 'upwards' on.
18846 2005-07-06 Wim Taymans <wim@fluendo.com>
18849 * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
18850 (gst_base_sink_handle_object), (gst_base_sink_loop),
18851 (gst_base_sink_change_state):
18852 * gst/base/gstbasesink.h:
18853 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
18854 (gst_base_src_init), (gst_base_src_setcaps),
18855 (gst_base_src_getcaps), (gst_base_src_loop),
18856 (gst_base_src_default_negotiate), (gst_base_src_negotiate),
18857 (gst_base_src_start), (gst_base_src_change_state):
18858 * gst/base/gstbasesrc.h:
18859 Make basesrc negotiate.
18860 Handle the case where preroll fails in basesink.
18863 2005-07-06 Wim Taymans <wim@fluendo.com>
18865 * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
18866 Implement the fixate function.
18867 Clean up acceptcaps.
18869 2005-07-06 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
18871 * docs/pwg/building-filterfactory.xml:
18872 * docs/pwg/pwg.xml:
18873 Remove never-written filter-factory chapter; I'll add the various
18874 base classes to part 4 ("other element types") later on.
18876 2005-07-06 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
18878 * docs/pwg/advanced-negotiation.xml:
18879 * docs/pwg/building-boiler.xml:
18880 * docs/pwg/building-pads.xml:
18881 * docs/pwg/pwg.xml:
18882 * examples/pwg/Makefile.am:
18883 Add a chapter on caps negotiation, simplify the original code
18884 samples a bit w.r.t. caps negotiation, add link to the advanced
18885 section. Add a bunch of examples showing different use cases of
18886 different types of caps negotiation. Upstream renegotiation isn't
18887 fully documented yet since nobody knows how that works.
18889 2005-07-06 Thomas Vander Stichele <thomas at apestaart dot org>
18891 * check/gst/gstpad.c:
18892 * check/gstcheck.c:
18893 * gst/gstpad.c: (gst_pad_get_internal_links_default):
18894 if pad has no parent, return NULL as list of internal links
18896 2005-07-05 Andy Wingo <wingo@pobox.com>
18898 * gst/elements/gstfilesrc.c:
18899 * gst/elements/gstfakesrc.c:
18900 * gst/base/gstpushsrc.c:
18901 * gst/base/gstbasesrc.h:
18902 * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
18904 2005-07-05 Stefan Kost <ensonic@users.sf.net>
18907 better report generation target (lcov needs a patch)
18909 2005-07-05 Andy Wingo <wingo@pobox.com>
18911 * gst/elements, testsuite: Null if we got it...
18913 2005-07-05 Wim Taymans <wim@fluendo.com>
18916 * libs/gst/dataprotocol/Makefile.am:
18917 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
18918 * libs/gst/dataprotocol/dataprotocol.h:
18919 * pkgconfig/Makefile.am:
18920 * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
18921 * pkgconfig/gstreamer-dataprotocol.pc.in:
18922 Ported dataprotol to 0.9.
18923 Added pkgconfig files.
18925 2005-07-05 Andy Wingo <wingo@pobox.com>
18927 * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
18928 Default to returning TRUE for the case when tranform_caps returns
18929 a fixed caps, like for identity or volume.
18931 * check/gst/gstbus.c (pound_bus_with_messages):
18932 * check/gst/gstmessage.c (START_TEST):
18933 * check/pipelines/simple_launch_lines.c (got_handoff): Application
18934 message API change.
18936 * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
18937 logic weaks here: always run transform_caps, trying passthrough
18938 operation only if the original caps intersects with the transform.
18940 * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
18941 source and sink caps.
18943 * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
18944 Intersect the peer caps with the pad template before going into
18946 (gst_base_transform_transform_caps): More debugging.
18948 * gst/gstmessage.h (gst_message_new_application): Take a GstObject
18951 2005-07-04 Edward Hervey <edward@fluendo.com>
18955 (gst_pad_add_*_probe): now returns the signal id for better wrapping
18958 2005-07-04 Andy Wingo <wingo@pobox.com>
18960 * check/gst/gstpad.c: Only set explicit caps on pads.
18962 2005-07-01 Andy Wingo <wingo@pobox.com>
18964 * tests/network-clock.scm: Commentary update.
18966 * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
18967 Didn't really make sense, not implementable with basetransform,
18969 (gst_identity_transform): Unref inbuf via make_writable. Feeble
18970 attempt at implementing the sync property, needs an unlock method.
18972 * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
18973 New func, by default returns the same caps (the identity
18975 (gst_base_transform_getcaps): Uses transform_caps to return
18976 something sensible.
18977 (gst_base_transform_setcaps): Complicated logic to get caps on
18978 both pads, even if they are different, and to call set_caps once
18979 for every time both pads get their caps set.
18980 (gst_base_transform_handle_buffer): Give the ref to the transform
18981 function. Allows in-place modification of the buffer.
18983 * gst/base/gstbasetransform.h (transform_caps): New class method.
18984 Given caps on one side, what can I do on the other.
18985 (set_caps): Take two caps, one for each side of the element.
18988 * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
18989 caps in place. This is safe because we can check the mutability of
18990 the caps, and a good idea because fixate functions are just called
18991 as a matter of last resort. (Not actually implemented.)
18992 (gst_pad_set_caps): If the caps we're setting is actually the same
18993 as the existing pad caps, just update the pointer without calling
18994 setcaps. Assert that caps is either NULL or fixed, as per the
18997 * gst/gstghostpad.c: Update for fixate changes.
18999 2005-07-02 Andy Wingo <wingo@pobox.com>
19002 * gst/gstcaps.h (gst_static_caps_get): Not const return, having
19003 two refcounts makes it immutable, which is enough. Doc more.
19005 2005-07-02 Jan Schmidt <thaytan@mad.scientist.com>
19007 * gst/gstpad.c: (gst_pad_emit_have_data_signal):
19008 Put the mini_object into GValue as a mini_object,
19009 not a gpointer, since that's how we declared
19012 2005-07-01 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
19014 * examples/pwg/Makefile.am:
19015 Fix buildbot again.
19017 2005-07-01 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
19019 * docs/pwg/building-testapp.xml:
19021 * examples/pwg/Makefile.am:
19024 2005-07-01 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
19027 * examples/Makefile.am:
19028 * examples/pwg/Makefile.am:
19029 * examples/pwg/extract.pl:
19030 Enable building the PWG examples.
19031 * docs/pwg/advanced-interfaces.xml:
19032 Add URI interface stub.
19033 * docs/pwg/advanced-types.xml:
19034 * docs/pwg/other-autoplugger.xml:
19035 * docs/pwg/appendix-porting.xml:
19036 * docs/pwg/pwg.xml:
19037 Add porting guide (mostly stubs), remove autoplugging (see ADM).
19038 * docs/pwg/building-boiler.xml:
19039 * docs/pwg/building-chainfn.xml:
19040 * docs/pwg/building-pads.xml:
19041 * docs/pwg/building-props.xml:
19042 * docs/pwg/building-state.xml:
19043 * docs/pwg/building-testapp.xml:
19044 Update the building-*.xml parts for 0.9 changes. All examples
19045 code blocks compile in examples/pwg/*.
19047 2005-06-30 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
19049 * docs/manual/advanced-autoplugging.xml:
19050 * docs/manual/appendix-checklist.xml:
19051 * docs/manual/appendix-integration.xml:
19052 * docs/manual/highlevel-components.xml:
19053 Fix playbin/decodebin examples, update docs a bit, mention bus
19054 instead of signals in various places, mention kmplayer and
19055 kaffeine since they have a working GStreamer backend in the KDE
19058 2005-06-30 Wim Taymans <wim@fluendo.com>
19061 * docs/design/draft-ghostpads.txt:
19062 * docs/design/draft-push-pull.txt:
19063 * docs/design/draft-query.txt:
19064 * docs/design/part-TODO.txt:
19065 * docs/design/part-query.txt:
19066 Added CHANGES-0.9 doc, updated status of other docs.
19071 2005-06-30 Wim Taymans <wim@fluendo.com>
19073 * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
19074 (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
19075 (gst_base_sink_change_state):
19076 * gst/base/gstbasesink.h:
19077 Some tweaks, only EOS and a buffer complete a preroll.
19079 2005-06-30 Andy Wingo <wingo@pobox.com>
19081 * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
19082 activate_push down to the internal pad as well.
19084 2005-06-30 Torsten Schoenfeld <kaffeetisch@gmx.de>
19086 Reviewed by: Ronald S. Bultje <rbultje@ronald.bitfreak.net>
19088 * gst/gsttaginterface.c:
19089 Some documentation fixes (#307394 and #307397).
19091 2005-06-30 Antoine Tremblay <hexa00@gmail.com>
19093 Reviewed by: Ronald S. Bultje <rbultje@ronald.bitfreak.net>
19095 * gst/gstvalue.c: (gst_value_intersect_list):
19096 Fix memleak (#309125).
19098 2005-06-30 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
19100 * docs/manual/advanced-dataaccess.xml:
19101 Fix fakesrc example to compile; doesn't work, bug somewhere...?
19102 * docs/manual/basics-pads.xml:
19103 Add reference for filtered caps to above chapter.
19105 2005-06-30 Wim Taymans <wim@fluendo.com>
19107 * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
19108 (gst_bin_change_state):
19110 Lame attempt at making the state change function a bit
19113 2005-06-30 Wim Taymans <wim@fluendo.com>
19115 * docs/design/part-clocks.txt:
19116 * docs/design/part-element-sink.txt:
19117 * docs/design/part-events.txt:
19118 * docs/design/part-preroll.txt:
19119 * docs/design/part-states.txt:
19120 Some more tweeks and additions to the docs.
19122 2005-06-30 Wim Taymans <wim@fluendo.com>
19124 * gst/gstpad.c: (_gst_do_pass_data_accumulator),
19125 (default_have_data), (gst_pad_class_init), (gst_pad_init),
19126 (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
19127 (gst_pad_check_pull_range), (gst_pad_get_range),
19128 (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
19130 * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
19131 (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
19132 (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
19133 (gst_pad_remove_buffer_probe):
19134 Removed atomic operations, use existing LOCK.
19135 Move exception handling out of main code path.
19137 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
19139 * gst/gstpad.c: (_gst_do_pass_data_accumulator),
19140 (silly_return_true_function), (gst_pad_class_init),
19141 (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
19142 (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
19143 (gst_pad_send_event):
19144 Fix accumulator, add default value by using _emitv() instead
19145 of _emit() for signal emission.
19147 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
19149 * docs/manual/advanced-dataaccess.xml:
19150 * examples/manual/Makefile.am:
19152 * gst/gstpad.c: (_gst_do_pass_data_accumulator):
19155 2005-06-29 Tim-Philipp Müller <tim at centricular dot net>
19157 * gst/elements/gstfilesink.c: (gst_filesink_render):
19158 Simplify code so that we don't have to handle short
19159 writes and return GST_FLOW_ERROR if an error occured.
19161 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
19163 * docs/gst/gstreamer-docs.sgml:
19164 Remove probes more.
19166 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
19168 * docs/gst/gstreamer-sections.txt:
19169 * docs/gst/tmpl/gstpad.sgml:
19170 * docs/gst/tmpl/gstprobe.sgml:
19172 * gst/gstpad.c: (_gst_do_pass_data_accumulator),
19173 (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
19174 (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
19175 (gst_pad_push_event), (gst_pad_send_event):
19177 * gst/gstutils.c: (gst_pad_add_data_probe),
19178 (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
19179 (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
19180 (gst_pad_remove_buffer_probe):
19182 Remove old probes, add new g-signal-based probes and some utility
19185 2005-06-29 Edward Hervey <edward@fluendo.com>
19187 * gst/gstelementfactory.c:
19190 Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
19191 the definition to the header file.
19193 2005-06-29 Andy Wingo <wingo@pobox.com>
19195 * docs/gst/Makefile.am (scan-build.stamp): Totally only check
19196 plugins from the source directory.
19198 2005-06-29 Wim Taymans <wim@fluendo.com>
19200 * docs/gst/tmpl/gstbuffer.sgml:
19201 * docs/gst/tmpl/gstclock.sgml:
19202 Some fixings for blantently wrong text.
19204 2005-06-29 Thomas Vander Stichele <thomas at apestaart dot org>
19206 * check/Makefile.am:
19207 * gst/gst.c: (add_path_func), (init_pre):
19208 * gst/gstregistry.c: (gst_registry_add_path):
19209 add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
19210 only scan the GST_PLUGIN_PATH locations, and not add
19213 2005-06-29 Thomas Vander Stichele <thomas at apestaart dot org>
19215 * docs/gst/gstreamer-sections.txt:
19216 * docs/gst/tmpl/gstbasesrc.sgml:
19217 * gst/gstelement.c:
19218 * gst/gstelement.h:
19223 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
19225 * docs/manual/advanced-autoplugging.xml:
19226 Fix autoplugging example.
19228 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
19230 * docs/manual/advanced-autoplugging.xml:
19231 * docs/manual/mime-world.fig:
19232 Try to get autoplugging working, fix type detection. Fix text
19233 in hello-world image.
19235 2005-06-29 Wim Taymans <wim@fluendo.com>
19237 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
19238 (gst_base_sink_change_state):
19242 map SIGNAL and BROADCAST to the right function.
19245 Remove redundant braces.
19247 * gst/gstpad.c: (gst_pad_set_caps):
19248 Don't call setcaps function when reseting caps to NULL.
19250 * gst/gstsystemclock.c: (gst_system_clock_dispose),
19251 (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
19252 (gst_system_clock_id_unschedule):
19253 Use BROADCAST as this is what we do.
19255 2005-06-29 Wim Taymans <wim@fluendo.com>
19257 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
19258 We are actually prerolling before commiting the state
19261 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
19263 * docs/manual/advanced-clocks.xml:
19264 * docs/manual/advanced-interfaces.xml:
19265 * docs/manual/advanced-metadata.xml:
19266 * docs/manual/advanced-position.xml:
19267 * docs/manual/advanced-schedulers.xml:
19268 * docs/manual/advanced-threads.xml:
19269 * docs/manual/appendix-porting.xml:
19270 * docs/manual/basics-bins.xml:
19271 * docs/manual/basics-bus.xml:
19272 * docs/manual/basics-elements.xml:
19273 * docs/manual/basics-helloworld.xml:
19274 * docs/manual/basics-pads.xml:
19275 * docs/manual/highlevel-components.xml:
19276 * docs/manual/manual.xml:
19277 * docs/manual/thread.fig:
19278 Update (until threads/scheduling) Application Development Manual;
19279 remove GstThread, add GstBus, add simple porting checklist, add
19280 documentation for tag writing, clocks, make all examples until this
19281 part compile and run.
19282 * examples/manual/Makefile.am:
19283 Update from changes to Application Development Manual; add bus
19284 example, remove thread example.
19286 2005-06-28 Wim Taymans <wim@fluendo.com>
19288 * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
19289 (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
19290 (gst_bus_source_dispatch):
19291 Add debugging messages.
19292 Make internal methods static.
19293 Handle the case where the bus is flushed in the handler.
19295 * gst/gstelement.c: (gst_element_get_bus):
19296 Fix refcount in _get_bus();
19298 * gst/gstpipeline.c: (gst_pipeline_change_state),
19299 (gst_pipeline_get_clock_func):
19300 Clock refcounting fixes.
19301 Handle the case where preroll timed out more gracefully.
19303 * gst/gstsystemclock.c: (gst_system_clock_dispose):
19304 Clean up the internal thread in dispose. This is needed
19305 for subclasses that actually get disposed.
19307 * gst/schedulers/threadscheduler.c:
19308 (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
19309 (gst_thread_scheduler_dispose):
19310 Free thread pool in dispose.
19312 2005-06-28 Andy Wingo <wingo@pobox.com>
19314 * tests/network-clock-utils.scm (debug, print-event): New utils.
19316 * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
19317 (*packet-loss*): Unified loss probability.
19318 (network-time): Report out-of-band events.
19320 * tests/plot-data: Add support for out-of-band events. Hack it
19321 into this script instead of passing it down the pipe; should fix
19324 2005-06-28 Wim Taymans <wim@fluendo.com>
19326 * docs/gst/gstreamer.types:
19327 * docs/gst/tmpl/gstbasesrc.sgml:
19328 * docs/gst/tmpl/gstpad.sgml:
19331 2005-06-28 Wim Taymans <wim@fluendo.com>
19333 * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
19334 (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
19335 (gst_proxy_pad_do_fixatecaps):
19336 Correctly proxy the check_pull_range function.
19338 2005-06-28 Andy Wingo <wingo@pobox.com>
19340 * tests/network-clock.scm: Removed need for slib.
19342 2005-06-28 Wim Taymans <wim@fluendo.com>
19344 * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
19345 (gst_basesink_preroll_queue_flush):
19346 * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
19347 * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
19348 * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
19349 (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
19350 (gst_proxy_pad_set_property):
19353 * gst/gstqueue.c: (gst_queue_init):
19354 The deprecated pad loop function is removed now.
19356 2005-06-28 Andy Wingo <wingo@pobox.com>
19358 * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
19359 New parameters, simulate network packet loss.
19361 * tests/network-clock-utils.scm: Initialize the RNG.
19363 2005-06-28 Wim Taymans <wim@fluendo.com>
19365 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
19366 (gst_basesink_event), (gst_basesink_deactivate):
19367 Flushing the preroll queue always needs to unlock the waiters.
19369 2005-06-28 Edward Hervey <edward@fluendo.com>
19371 * gst/gstpipeline.c: (gst_pipeline_send_event):
19372 Wheen a seek was successful on a pipeline, set the stream_time to the
19373 seek offset in order to have a synchronized stream_time.
19375 2005-06-28 Wim Taymans <wim@fluendo.com>
19377 * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
19378 (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
19379 (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
19380 (gst_proxy_pad_do_fixatecaps):
19381 Call wrapper function instead of just calling the function
19382 pointers. This takes care of any locking and whatmore.
19384 2005-06-28 Wim Taymans <wim@fluendo.com>
19386 * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
19387 (gst_pad_pull_range):
19389 CONNECTED -> LINKED.
19391 2005-06-28 Andy Wingo <wingo@pobox.com>
19393 * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
19394 source-munging commit!!!
19396 * gst/gstobject.c (gst_object_unref, gst_object_ref)
19397 (gst_object_sink): Take gpointer arguments, not GstObject --
19398 avoids casts. Like GLib.
19400 * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
19403 2005-06-27 Andy Wingo <wingo@pobox.com>
19405 * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
19408 * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
19409 returns a sorted copy of the trace list.
19410 (gst_alloc_trace_print_live): New API, only prints traces with
19411 live objects. Sort the list.
19412 (gst_alloc_trace_print_all): Sort the list.
19413 (gst_alloc_trace_print): Align columns.
19415 * gst/elements/gstttypefindelement.c:
19416 * gst/elements/gsttee.c:
19417 * gst/base/gstbasesrc.c:
19418 * gst/base/gstbasesink.c:
19419 * gst/base/gstbasetransform.c:
19420 * gst/gstqueue.c: Adapt for pad activation changes.
19422 * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
19424 (gst_pipeline_dispose): Drop ref on sched.
19426 * gst/gstpad.c (gst_pad_init): Set the default activate func.
19427 (gst_pad_activate_default): Push mode by default.
19428 (pre_activate_switch, post_activate_switch): New stubs, things to
19429 do before and after switching activation modes on pads.
19430 (gst_pad_set_active): Take a boolean and not a mode, dispatch to
19431 the pad's activate function to choose which mode to activate.
19432 Shortcut on deactivation and call the right function directly.
19433 (gst_pad_activate_pull): New API, (de)activates a pad in pull
19435 (gst_pad_activate_push): New API, same for push mode.
19436 (gst_pad_set_activate_function)
19437 (gst_pad_set_activatepull_function)
19438 (gst_pad_set_activatepush_function): Setters for new API.
19440 * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
19441 Trace all miniobjects.
19442 (gst_mini_object_make_writable): Unref the arg if we copy, like
19443 gst_caps_make_writable.
19445 * gst/gstmessage.c (_gst_message_initialize): No trace init.
19447 * gst/gstghostpad.c (gst_proxy_pad_do_activate)
19448 (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
19449 Adapt for new pad API.
19451 * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
19453 * gst/gstelement.h:
19454 * gst/gstelement.c (gst_element_iterate_src_pads)
19455 (gst_element_iterate_sink_pads): New API functions.
19457 * gst/gstelement.c (iterator_fold_with_resync): New utility,
19458 should fold into gstiterator.c in some form.
19459 (gst_element_pads_activate): Simplified via use of fold and
19460 delegation of decisions to gstpad->activate.
19462 * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
19465 * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
19466 class once in init, like gstmessage. Didn't run into this issue
19467 but it seems correct. Don't initialize a trace, gstminiobject does
19470 * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
19471 test, runs fakesrc ! fakesink, stopping on ::handoff via a message
19473 (assert_live_count): New util function, uses alloc traces to check
19476 * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
19477 To be modified when unlink drops the internal pad.
19479 2005-06-27 Wim Taymans <wim@fluendo.com>
19481 * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
19482 (gst_bin_change_state):
19483 Cleanup the get_state() function a little, make sure it
19484 iterates the same set of elements.
19485 Added stub iterate_state_order().
19487 2005-06-27 Thomas Vander Stichele <thomas at apestaart dot org>
19489 * docs/gst/gstreamer-docs.sgml:
19490 * docs/gst/gstreamer-sections.txt:
19491 * docs/gst/gstreamer.types:
19492 * docs/gst/tmpl/gstbasesink.sgml:
19493 * docs/gst/tmpl/gstbasesrc.sgml:
19494 * docs/gst/tmpl/gstbasetransform.sgml:
19495 * docs/gst/tmpl/gstelement.sgml:
19496 * docs/gst/tmpl/gstiterator.sgml:
19497 * gst/base/gstbasesrc.c:
19498 * gst/base/gstbasesrc.h:
19499 * gst/base/gstbasetransform.h:
19500 * gst/gstelement.c:
19501 * gst/gstiterator.h:
19502 adding basetransform and iterator docs
19504 2005-06-27 Andy Wingo <wingo@pobox.com>
19506 * docs/design/part-activation.txt: Notes on how activation should
19507 work -- not quite implemented yet.
19509 2005-06-25 Wim Taymans <wim@fluendo.com>
19511 * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
19512 At least get the chain function correct, needs more
19515 2005-06-25 Wim Taymans <wim@fluendo.com>
19517 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
19518 (gst_basesink_handle_object), (gst_basesink_event),
19519 (gst_basesink_do_sync), (gst_basesink_handle_event),
19520 (gst_basesink_change_state):
19522 Right, two problems here: ghostpads don't take locks and
19523 glib _rec_mutex_lock_full() with depth==0 still locks.
19524 Catch illegal locking and g_warn them.
19526 2005-06-25 Wim Taymans <wim@fluendo.com>
19528 * check/states/sinks.c: (START_TEST), (gst_object_suite):
19529 Have to check for completion now...
19531 2005-06-25 Wim Taymans <wim@fluendo.com>
19533 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
19534 (gst_basesink_handle_object), (gst_basesink_event),
19535 (gst_basesink_do_sync), (gst_basesink_handle_event),
19536 (gst_basesink_change_state):
19538 Unlock STREAM_LOCK whatever the recursion was.
19540 2005-06-25 Wim Taymans <wim@fluendo.com>
19542 * gst/base/gstbasesink.c: (gst_basesink_set_property),
19543 (gst_basesink_preroll_queue_empty),
19544 (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
19545 (gst_basesink_event), (gst_basesink_do_sync),
19546 (gst_basesink_handle_event), (gst_basesink_handle_buffer),
19547 (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
19548 (gst_basesink_change_state):
19549 Reworked the base sink, handle event and buffer serialisation
19550 correctly and removed possible deadlock.
19551 Handle EOS correctly.
19553 2005-06-25 Wim Taymans <wim@fluendo.com>
19555 * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
19556 (gst_pipeline_change_state):
19557 * tools/gst-launch.c: (check_intr), (event_loop), (main):
19558 Allow elements to post EOS in the state change function.
19559 Fix up -launch, make it exit the poll loop when the
19560 pipeline actually changed state.
19561 Fix up warning parsing in -launch.
19563 2005-06-25 Wim Taymans <wim@fluendo.com>
19565 * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
19566 (gst_tee_sink_activate):
19567 Core takes STREAM_LOCK for us now.
19569 2005-06-25 Wim Taymans <wim@fluendo.com>
19571 * gst/gstelement.c: (gst_element_get_state_func),
19572 (gst_element_set_state):
19573 * gst/gstelement.h:
19574 * gst/gstmessage.c: (gst_message_parse_error),
19575 (gst_message_parse_warning):
19576 Keep track of current target state while performing a state
19577 change so that subclasses can do something interesting.
19578 Fix parsing of warning/error messages when GError is NULL.
19580 2005-06-24 Thomas Vander Stichele <thomas at apestaart dot org>
19582 * docs/gst/Makefile.am:
19583 * docs/gst/gstreamer-docs.sgml:
19584 * docs/gst/gstreamer-sections.txt:
19585 * docs/gst/gstreamer.types:
19586 * docs/gst/tmpl/gstbasesink.sgml:
19587 * docs/gst/tmpl/gstbasesrc.sgml:
19588 * docs/gst/tmpl/gstbin.sgml:
19589 * docs/gst/tmpl/gstcompat.sgml:
19590 * docs/gst/tmpl/gstfakesink.sgml:
19591 * docs/gst/tmpl/gstfakesrc.sgml:
19592 * docs/gst/tmpl/gstfilesink.sgml:
19593 * docs/gst/tmpl/gstfilesrc.sgml:
19594 * docs/gst/tmpl/gstindex.sgml:
19595 * docs/manual/appendix-quotes.xml:
19596 * gst/base/gstbasesrc.h:
19597 * gst/elements/gstfakesrc.h:
19598 * gst/gstmessage.h:
19599 start pulling in base classes and elements in our docs
19601 2005-06-24 Stefan Kost <ensonic@users.sf.net>
19603 * docs/gst/Makefile.am:
19604 * docs/libs/Makefile.am:
19605 fixed make distcheck with gtk-doc 1.3
19607 2005-06-23 Wim Taymans <wim@fluendo.com>
19609 * gst/gstelement.c: (gst_element_get_state_func),
19610 (gst_element_set_state), (gst_element_change_state):
19611 When the state did not change, also report NO_PREROLL
19614 2005-06-23 Wim Taymans <wim@fluendo.com>
19616 * gst/gstpad.c: (gst_pad_event_default):
19617 * gst/gstqueue.c: (gst_queue_loop):
19618 No unsafe task pausing please.
19620 2005-06-23 Wim Taymans <wim@fluendo.com>
19622 * gst/schedulers/threadscheduler.c:
19623 (gst_thread_scheduler_task_start),
19624 (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
19625 Ref the task before pushing it on the threadpool. This
19626 makes sure that we have a ref when the threadfunction is
19629 2005-06-23 Andy Wingo <wingo@pobox.com>
19631 * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
19632 offset is greater than the file's size.
19634 * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK)
19635 (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
19636 * gst/gstobject.c (gst_object_class_init): Make the class lock
19637 recursive. Wim won't let me drop deep_notify. Decodebin works
19638 again, whoopdy doo.
19640 * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
19641 internal pad, and hacks accordingly. Doesn't do it on the target
19642 pad because we change its caps. Probably catches all cases of
19644 (gst_ghost_pad_set_property): Connect to notify::caps as
19647 * tests/network-clock.scm (plot-simulation): Pipe data to the
19648 elite python skript.
19650 * tests/network-clock-utils.scm (define-parameter): New macro,
19651 defines a parameter that can be set via the command line.
19652 (set-parameter!, parse-parameter-arguments): Command line args
19655 * tests/plot-data: Simple matplotlib-based plotter, takes input on
19658 2005-06-23 Jan Schmidt <thaytan@mad.scientist.com>
19660 * gst/elements/gsttypefindelement.c:
19661 (gst_type_find_element_handle_event):
19662 Don't restart typefinding on a discont.
19663 * gst/gstelement.c: (gst_element_set_state):
19664 Debug spelling fix.
19665 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
19666 Allow changing mode of an active pad.
19667 Debug output fixes.
19668 * gst/registries/gstlibxmlregistry.c: (load_feature):
19669 Don't cast a static pad template to a normal pad template.
19671 2005-06-23 Thomas Vander Stichele <thomas at apestaart dot org>
19673 * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
19674 * gst/gstvalue.c: (gst_value_deserialize_int_helper):
19675 remove gst_strtoll completely, since it didn't actually do
19676 anything more than what g_ascii_strtoull already does.
19677 check for range errors when deserializing
19678 do a cast for the unsigned cases; but further fixing needs
19679 a decision on what the interpretation of "(int)" and
19680 deserialization should be for values that fall outside the
19681 type's boundaries (ie, refuse, or interpret as casting)
19683 2005-06-23 Wim Taymans <wim@fluendo.com>
19685 * check/Makefile.am:
19686 * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
19687 * docs/design/part-live-source.txt:
19688 * docs/design/part-states.txt:
19689 * gst/base/gstbasesrc.c: (gst_basesrc_init),
19690 (gst_basesrc_set_live), (gst_basesrc_is_live),
19691 (gst_basesrc_get_range), (gst_basesrc_activate),
19692 (gst_basesrc_change_state):
19693 * gst/base/gstbasesrc.h:
19694 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
19695 (gst_fakesrc_set_property), (gst_fakesrc_get_property):
19696 * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
19697 * gst/gstelement.c: (gst_element_get_state_func),
19698 (gst_element_set_state):
19699 * gst/gstelement.h:
19701 * tools/gst-launch.c: (event_loop), (main):
19702 Added support for live sources and other elements that
19704 Updated design docs, added live-source design doc.
19705 Implemented live source functionality in basesrc
19706 Fix error condition in _bin_get_state()
19707 Implement live source handling in -launch.
19708 Added check for live sources.
19709 Fixed case in GstBin where elements were changed state
19713 2005-06-23 Andy Wingo <wingo@pobox.com>
19715 * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
19716 borken refcounting.
19718 * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
19719 gst_caps_replace takes care of this for us.
19721 * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
19722 gst_pad_set_caps on the target, not just its setcaps() function.
19724 * tests/network-clock.scm:
19725 * tests/network-clock-utils.scm: A network clock simulator.
19726 Something of an algorithmic testbed before doing something in C.
19728 2005-06-22 Thomas Vander Stichele <thomas at apestaart dot org>
19730 * check/Makefile.am:
19731 * check/gst/capslist.h:
19732 copy over from 0.8, and add two with bitmasks specified with
19734 * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
19735 add test to parse everything from capslist.h
19736 * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
19738 add test for structure deserialization
19739 * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
19740 add tests for deserialization of strings to int types
19741 * gst/gststructure.c: (gst_structure_nth_field_name):
19742 * gst/gststructure.h:
19743 add a way to get the name of a field referenced by index
19744 * gst/gstvalue.c: (gst_value_deserialize_int_helper):
19745 instead of checking if the resulting long long lies between
19746 min and max, we check if the long long would fit into
19747 a number of bytes for the final type.
19748 This fixes cases where a string represents 2^32 - 1, which
19749 when cast to int would be the (valid) -1, but is bigger than
19752 2005-06-22 Thomas Vander Stichele <thomas at apestaart dot org>
19754 * gst/parse/grammar.y:
19755 add a log line for type deserialization
19757 2005-06-22 Thomas Vander Stichele <thomas at apestaart dot org>
19759 * check/gst/gstvalue.c: (START_TEST):
19760 * gst/gstvalue.c: (gst_value_deserialize):
19761 return long long, not int, so gint64 deserialization actually
19762 works. Is there any flag that makes the compiler check this ?
19765 2005-06-22 Wim Taymans <wim@fluendo.com>
19768 Added convenience macros for setting buffers in GValue.
19770 2005-06-21 Thomas Vander Stichele <thomas at apestaart dot org>
19772 * check/gst/.cvsignore:
19773 * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
19774 add a test deserializing int64, and comment part out because
19777 2005-06-21 Thomas Vander Stichele <thomas at apestaart dot org>
19779 * check/Makefile.am:
19780 * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
19781 * testsuite/Makefile.am:
19782 * testsuite/caps/Makefile.am:
19783 * testsuite/caps/value_serialize.c:
19784 * testsuite/test_gst_init.c:
19785 move a value_serialize test over
19787 2005-06-20 Wim Taymans <wim@fluendo.com>
19792 * gst/gstvalue.c: (gst_value_compare_buffer),
19793 (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
19794 (gst_value_compare_flags), (gst_value_serialize_flags),
19795 (gst_value_deserialize_flags), (_gst_value_initialize):
19796 Fix serialisation of buffers, they are not boxed types anymore
19798 2005-06-20 Wim Taymans <wim@fluendo.com>
19800 * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
19801 Testcase to show error in buffer-on-caps serialisation.
19803 2005-06-20 Andy Wingo <wingo@pobox.com>
19805 * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
19806 will be adding to later.
19808 * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
19809 if its socks fill with rocks.
19810 (gst_system_clock_obtain): Set the name on object construction.
19811 Avoid double-checked locking.
19813 2005-06-20 Tim-Philipp Müller <tim at centricular dot net>
19815 * gst/gsturi.c: (gst_element_make_from_uri):
19816 Fix potential endless loop.
19818 2005-06-19 Thomas Vander Stichele <thomas at apestaart dot org>
19820 * check/Makefile.am:
19822 * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
19824 move over from testsuite dir and clean up
19827 * testsuite/Makefile.am:
19828 * testsuite/tags/.cvsignore:
19829 * testsuite/tags/Makefile.am:
19830 * testsuite/tags/merge.c:
19831 remove testsuite/tags
19833 2005-06-19 Thomas Vander Stichele <thomas at apestaart dot org>
19835 * docs/gst/gstreamer-sections.txt:
19836 * docs/gst/tmpl/gstenumtypes.sgml:
19837 * win32/gstenumtypes.c:
19838 clean up documentation build a little
19840 2005-06-19 Thomas Vander Stichele <thomas at apestaart dot org>
19842 * check/gstcheck.h:
19843 add macros for checking refcounts on objects and caps
19844 * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
19845 add some more unit tests
19846 * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
19847 (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
19848 fix leaked refcounts (I hope :)) so unittest works
19852 2005-06-19 Thomas Vander Stichele <thomas at apestaart dot org>
19854 * configure.ac: back to HEAD
19856 === release 0.9.1 ===
19858 2005-06-17 Thomas Vander Stichele <thomas at apestaart dot org>
19864 2005-06-17 Andy Wingo <wingo@pobox.com>
19866 * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
19867 assert; it's always possible that the pad gets deactivated in
19868 between the checks in gstpad.c and the implementation. Rely on
19869 finish_preroll() to return a FLUSHING or similar instead of on the
19872 * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
19873 clock and post an EOS message if we come out of finish_preroll in
19876 2005-06-16 David Schleef <ds@schleef.org>
19878 * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
19879 (gst_capsfilter_set_property): Allow NULL as possible value
19880 for filter_caps property, indicating GST_CAPS_ANY.
19882 2005-06-09 Thomas Vander Stichele <thomas at apestaart dot org>
19884 * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
19886 * gst/schedulers/Makefile.am:
19888 * gstreamer.spec.in:
19891 2005-06-09 Thomas Vander Stichele <thomas at apestaart dot org>
19893 * gstreamer.spec.in:
19896 2005-06-08 Andy Wingo <wingo@pobox.com>
19898 * gst/gstutils.c: RPAD fixes all around.
19899 (gst_element_link_pads): Refcounting fixes.
19901 * tools/gst-inspect.c:
19902 * tools/gst-xmlinspect.c:
19904 * gst/base/gsttypefindhelper.c:
19905 * gst/base/gstbasesink.c:
19906 * gst/gstqueue.c: RPAD fixes.
19908 * gst/gstghostpad.h:
19909 * gst/gstghostpad.c: New ghost pad implementation as full proxy
19910 pads. The tricky thing is they provide both source and sink
19911 interfaces, since they proxy the internal pad for the external
19912 pad, and vice versa. Implement with lower-level ProxyPad objects,
19913 with the interior proxy pad as a child of the exterior ghost pad.
19914 Should write a doc on this.
19916 * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
19917 (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
19920 * gst/gstpad.c: Big changes. No more stub base GstPad, now all
19921 pads are real pads. No ghost pads in this file. Not documenting
19922 the myriad s/RPAD/PAD/ and REALIZE fixes.
19923 (gst_pad_class_init): Add properties for "direction" and
19924 "template". Both are construct-only, so they can't change during
19925 the life of the pad. Fixes properly deriving from GstPad.
19926 (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
19927 derived objects, just set properties when creating the objects via
19929 (gst_pad_get_parent): Implement as a function, return NULL if the
19930 parent is not an element.
19931 (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
19932 (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
19934 * gst/gstobject.c (gst_object_class_init): Make name a construct
19935 property. Don't set it in the object init.
19937 * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
19938 with UNKNOWN direction.
19939 (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
19940 with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
19941 (gst_element_remove_pad): Remove ghost-pad special cases.
19942 (gst_element_pads_activate): Remove rpad cruft.
19944 * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
19945 catch the pad's-parent-not-an-element case.
19947 * gst/gst.h: Include gstghostpad.h.
19949 * gst/gst.c (init_post): No more real, ghost pads.
19951 * gst/Makefile.am: Add gstghostpad.[ch].
19953 * check/Makefile.am:
19954 * check/gst/gstbin.c:
19955 * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
19956 into a bin creates ghost pads, and that the refcounts are right.
19957 Partly moved from gstbin.c.
19959 2005-06-08 Thomas Vander Stichele <thomas at apestaart dot org>
19961 * check/gst-libs/.cvsignore:
19962 * check/gst/.cvsignore:
19963 * check/pipelines/.cvsignore:
19965 * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
19966 (START_TEST), (cleanup_suite), (main):
19967 add some tests related to cleanup after running pipelines
19969 2005-06-08 Thomas Vander Stichele <thomas at apestaart dot org>
19971 * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
19972 add a testsuite for GstBuffer
19974 2005-06-08 Thomas Vander Stichele <thomas at apestaart dot org>
19976 * gst/gstminiobject.h:
19977 add defines for accessing the refcount
19979 2005-06-03 Stefan Kost <ensonic@users.sf.net>
19981 * Makefile.am: added support for html unit test coverage reports
19983 2005-06-03 Jan Schmidt <thaytan@mad.scientist.com>
19985 * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
19986 Free existing caps if the capsfilter changes. Add a FIXME about
19987 setting those caps on the pads.
19989 * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
19990 Before adding a ghost pad to a parent bin, check that there isn't
19991 already one for the element on the bin. Prevents infinite recursion
19992 when using decodebin in parse pipelines. Andy says he'll rewrite the
19993 way this works anyway, so ignore the hack.
19995 2005-06-02 Andy Wingo <wingo@pobox.com>
19997 * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
19998 file size, pass it on to the type find helper.
20000 * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
20001 segment_start and segment_end properly according to the seek
20002 method. Segment_end is still a bit flaky because offset can be
20003 negative for CUR and END cases, but it takes -1 as an "unset"
20006 2005-06-02 Wim Taymans <wim@fluendo.com>
20008 * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
20009 (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
20010 (gst_basesink_activate):
20011 * gst/base/gstbasesink.h:
20012 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
20013 (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
20014 (gst_pad_query), (gst_pad_start_task):
20016 * gst/gstqueue.c: (gst_queue_bufferalloc),
20017 (gst_queue_handle_sink_event), (gst_queue_chain):
20018 Bufferalloc: return GstFlowReturn to more accuratly report
20019 why allocation failed.
20021 2005-06-02 Wim Taymans <wim@fluendo.com>
20023 * gst/gstpipeline.c: (gst_pipeline_send_event):
20024 Take snapshot of state without blocking.
20026 2005-06-02 Wim Taymans <wim@fluendo.com>
20028 * docs/design/part-TODO.txt:
20029 * docs/design/part-caps.txt:
20030 * docs/design/part-clocks.txt:
20031 * docs/design/part-negotiation.txt:
20032 * docs/design/part-preroll.txt:
20035 2005-05-30 Wim Taymans <wim@fluendo.com>
20037 * gst/elements/gstidentity.c: (gst_identity_event),
20038 (gst_identity_transform), (gst_identity_get_property):
20039 Protect last_message property as it is accessed from
20042 2005-05-30 Wim Taymans <wim@fluendo.com>
20044 * gst/gstelement.c: (gst_element_init),
20045 (gst_element_pads_activate), (gst_element_change_state):
20046 Slicker pad activation code.
20048 2005-05-30 Wim Taymans <wim@fluendo.com>
20051 * gst/gstelement.h:
20052 * gst/gstelementfactory.h:
20054 Move elementfactory methods to separate .h file.
20056 2005-05-30 Wim Taymans <wim@fluendo.com>
20058 * docs/design/part-overview.txt:
20059 * gst/gstsystemclock.h:
20060 Small typo fixes, doc updates.
20062 2005-05-30 Wim Taymans <wim@fluendo.com>
20064 * gst/gst.c: (gst_init_get_popt_table), (init_post),
20065 (init_popt_callback):
20066 Remove cpu-opt flag.
20068 2005-05-30 Wim Taymans <wim@fluendo.com>
20070 * gst/gstbuffer.c: (gst_subbuffer_finalize),
20071 (gst_buffer_create_sub), (gst_buffer_is_span_fast):
20073 Avoid typechecking in places where not needed.
20074 Added accessor for malloc_data.
20076 2005-05-30 Wim Taymans <wim@fluendo.com>
20078 * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
20079 (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
20080 (gst_pad_configure_sink), (gst_pad_configure_src),
20081 (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
20082 (gst_pad_start_task):
20083 Propagate errors from _set_caps() in configure_src/sink
20084 functions instead of returning TRUE.
20085 FLUSH events can travel up and downstream
20088 2005-05-30 Wim Taymans <wim@fluendo.com>
20090 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
20091 (gst_basesink_activate):
20092 Handle EOS in preroll.
20094 2005-05-30 Wim Taymans <wim@fluendo.com>
20096 * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
20097 (gst_queue_loop), (gst_queue_handle_src_event):
20098 Remove old pieces of code
20099 Flushing the queue in an upstream event is a very bad idea.
20101 2005-05-26 Andy Wingo <wingo@pobox.com>
20103 * gst/gstminiobject.c (gst_value_mini_object_collect): Use
20104 gst_value_set_mini_object so as to add a ref on the object (which
20105 will be removed when the value is unset).
20107 * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
20108 arg type in ::handoff.
20110 * gst/gstelement.c (gst_element_change_state): Also deactivate
20111 pads in READY->NULL, just in case the element didn't make it to
20112 PAUSED. Wingo tested, Wim approved.
20114 2005-05-26 Wim Taymans <wim@fluendo.com>
20116 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
20117 (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
20118 (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
20119 A flushing pad cannot be used to alloc_buffer from.
20121 2005-05-26 Wim Taymans <wim@fluendo.com>
20123 * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
20124 (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
20125 (gst_bus_source_dispatch), (gst_bus_source_finalize),
20126 (gst_bus_create_watch), (gst_bus_add_watch_full):
20128 Implement a real GSource and use g_main_context_wakeup() to
20129 signal new messages instead of the socketpair.
20131 2005-05-25 Wim Taymans <wim@fluendo.com>
20133 * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
20134 (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
20135 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
20136 (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
20137 (gst_pad_send_event), (gst_pad_start_task):
20138 * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
20139 (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
20140 (gst_queue_sink_activate), (gst_queue_src_activate),
20141 (gst_queue_change_state):
20143 Fix state changes for non sinks. We now change sinks, then elements
20144 with unconnected srcpads, then the rest.
20145 More efficient queue unlocking in flush and state changes.
20146 Set the pad activate mode even if it does not have an activate
20149 2005-05-25 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
20151 * gst/base/gstbasesrc.c: (gst_basesrc_activate):
20152 Don't go in pull mode for non-seekable sources.
20153 * gst/elements/gsttypefindelement.h:
20154 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
20155 (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
20156 (free_entry), (stop_typefinding),
20157 (gst_type_find_element_handle_event), (find_peek),
20158 (gst_type_find_element_chain), (do_pull_typefind),
20159 (gst_type_find_element_change_state):
20160 Allow typefinding (w/o seeking) in push-mode, simplified version
20161 of what was in 0.8.
20162 * gst/gstutils.c: (gst_buffer_join):
20164 gst_buffer_join() from 0.8.
20166 2005-05-25 Wim Taymans <wim@fluendo.com>
20168 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
20169 (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
20170 (gst_pad_send_event), (gst_pad_start_task):
20171 Disable attempt at mode switching until it is figured out.
20173 2005-05-25 Wim Taymans <wim@fluendo.com>
20175 * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
20176 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
20177 (gst_basesink_finish_preroll), (gst_basesink_chain),
20178 (gst_basesink_loop), (gst_basesink_activate),
20179 (gst_basesink_change_state):
20180 * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
20181 (gst_basesrc_get_range), (gst_basesrc_loop),
20182 (gst_basesrc_activate):
20183 * gst/elements/gsttee.c: (gst_tee_sink_activate):
20184 * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
20185 (gst_real_pad_init), (gst_real_pad_set_property),
20186 (gst_real_pad_get_property), (gst_pad_set_active),
20187 (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
20188 (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
20189 (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
20190 (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
20191 (gst_pad_event_default_dispatch), (gst_pad_event_default),
20192 (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
20193 (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
20194 (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
20195 (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
20196 (gst_pad_stop_task):
20198 * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
20199 (gst_queue_loop), (gst_queue_src_activate):
20200 * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
20201 (gst_task_get_state):
20203 * gst/schedulers/threadscheduler.c:
20204 (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
20205 Implement gst_pad_pause/start/stop_task(), take STREAM lock
20207 Remove ACTIVE pad flag, use FLUSHING everywhere
20208 Added _pad_chain(), _pad_get_range() to call chain/getrange
20210 Add locks around IS_FLUSHING when reading.
20211 Take STREAM lock in chain(), get_range() functions so plugins
20212 don't need to take it anymore.
20216 2005-05-25 Wim Taymans <wim@fluendo.com>
20218 * tools/gst-launch.c: (event_loop):
20219 Unref message after using its contents instead of
20222 2005-05-24 Wim Taymans <wim@fluendo.com>
20224 * docs/design/draft-ghostpads.txt:
20225 * docs/design/draft-push-pull.txt:
20226 * docs/design/draft-query.txt:
20227 * docs/design/part-overview.txt:
20228 Docs updates, added general overview doc.
20230 2005-05-21 David Schleef <ds@schleef.org>
20232 * docs/gst/tmpl/old/GstBin.sgml:
20233 * docs/gst/tmpl/old/GstBuffer.sgml:
20234 * docs/gst/tmpl/old/GstCaps.sgml:
20235 * docs/gst/tmpl/old/GstClock.sgml:
20236 * docs/gst/tmpl/old/GstCompat.sgml:
20237 * docs/gst/tmpl/old/GstData.sgml:
20238 * docs/gst/tmpl/old/GstElement.sgml:
20239 * docs/gst/tmpl/old/GstEvent.sgml:
20240 * docs/gst/tmpl/old/GstIndex.sgml:
20241 * docs/gst/tmpl/old/GstStructure.sgml:
20242 * docs/gst/tmpl/old/GstTag.sgml:
20243 * docs/gst/tmpl/old/cothreads.sgml:
20244 * docs/gst/tmpl/old/cothreads_compat.sgml:
20245 * docs/gst/tmpl/old/gettext.sgml:
20246 * docs/gst/tmpl/old/gobject2gtk.sgml:
20247 * docs/gst/tmpl/old/grammar.tab.sgml:
20248 * docs/gst/tmpl/old/gst-i18n-app.sgml:
20249 * docs/gst/tmpl/old/gst-i18n-lib.sgml:
20250 * docs/gst/tmpl/old/gst_private.sgml:
20251 * docs/gst/tmpl/old/gstaggregator.sgml:
20252 * docs/gst/tmpl/old/gstarch.sgml:
20253 * docs/gst/tmpl/old/gstatomic_impl.sgml:
20254 * docs/gst/tmpl/old/gstbufferstore.sgml:
20255 * docs/gst/tmpl/old/gstdata_private.sgml:
20256 * docs/gst/tmpl/old/gstdisksink.sgml:
20257 * docs/gst/tmpl/old/gstdisksrc.sgml:
20258 * docs/gst/tmpl/old/gstelementfactory.sgml:
20259 * docs/gst/tmpl/old/gstextratypes.sgml:
20260 * docs/gst/tmpl/old/gstfakesink.sgml:
20261 * docs/gst/tmpl/old/gstfakesrc.sgml:
20262 * docs/gst/tmpl/old/gstfdsink.sgml:
20263 * docs/gst/tmpl/old/gstfdsrc.sgml:
20264 * docs/gst/tmpl/old/gstfilesink.sgml:
20265 * docs/gst/tmpl/old/gstfilesrc.sgml:
20266 * docs/gst/tmpl/old/gsthttpsrc.sgml:
20267 * docs/gst/tmpl/old/gstidentity.sgml:
20268 * docs/gst/tmpl/old/gstindexfactory.sgml:
20269 * docs/gst/tmpl/old/gstmarshal.sgml:
20270 * docs/gst/tmpl/old/gstmd5sink.sgml:
20271 * docs/gst/tmpl/old/gstmultidisksrc.sgml:
20272 * docs/gst/tmpl/old/gstmultifilesrc.sgml:
20273 * docs/gst/tmpl/old/gstpadtemplate.sgml:
20274 * docs/gst/tmpl/old/gstpipefilter.sgml:
20275 * docs/gst/tmpl/old/gstschedulerfactory.sgml:
20276 * docs/gst/tmpl/old/gstsearchfuncs.sgml:
20277 * docs/gst/tmpl/old/gstshaper.sgml:
20278 * docs/gst/tmpl/old/gstspider.sgml:
20279 * docs/gst/tmpl/old/gstspideridentity.sgml:
20280 * docs/gst/tmpl/old/gststatistics.sgml:
20281 * docs/gst/tmpl/old/gsttee.sgml:
20282 * docs/gst/tmpl/old/gsttimecache.sgml:
20283 * docs/gst/tmpl/old/gsttypefindfactory.sgml:
20284 * docs/gst/tmpl/old/gstxmlregistry.sgml:
20285 * docs/gst/tmpl/old/gthread-cothreads.sgml:
20286 * docs/gst/tmpl/old/types.sgml:
20287 I didn't intend to add these or check them in.
20289 2005-05-19 David Schleef <ds@schleef.org>
20291 * configure.ac: Use -no-common everywhere. In a sane world, it
20292 would be the default in libtool, because without it, you can't
20293 build DLLs on Windows.
20294 * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
20295 * docs/gst/gstreamer-sections.txt:
20296 * docs/gst/tmpl/gstcpu.sgml:
20297 * docs/gst/tmpl/gstdata.sgml:
20298 * docs/gst/tmpl/gstthread.sgml:
20300 2005-05-19 David Schleef <ds@schleef.org>
20302 * gst/gstminiobject.c: (gst_value_set_mini_object),
20303 (gst_value_take_mini_object), (gst_value_get_mini_object):
20304 * gst/gstminiobject.h: Add GValue set/get functions.
20306 2005-05-19 Wim Taymans <wim@fluendo.com>
20308 * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
20309 (gst_subbuffer_class_init), (gst_subbuffer_finalize),
20310 (gst_subbuffer_init), (gst_buffer_is_span_fast):
20312 * gst/gstbus.c: (gst_bus_post):
20313 * gst/gstelement.c: (gst_element_get_random_pad):
20314 * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
20315 Make subbufer unref the parent in finalize.
20316 some more debugging info.
20319 2005-05-19 Wim Taymans <wim@fluendo.com>
20321 * gst/base/gstbasesink.c: (gst_basesink_class_init),
20322 (gst_basesink_init), (gst_basesink_finalize),
20323 (gst_basesink_activate), (gst_basesink_change_state):
20324 Don't free preroll queue too early.
20326 2005-05-19 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
20330 Hi, I'm outdated. Please shoot me.
20332 2005-05-19 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
20334 * gst/gstpipeline.c: (gst_pipeline_send_event):
20335 Do not access variables after they have been deleted.
20337 2005-05-19 Wim Taymans <wim@fluendo.com>
20339 * tools/gst-inspect.c: (print_plugin_features):
20340 A plugin feature does unfortunatly not use the
20343 2005-05-18 Wim Taymans <wim@fluendo.com>
20345 * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
20346 Port _span() functions to new subbuffers.
20348 2005-05-18 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
20350 * gst/gstbin.c: (gst_bin_add_func):
20351 Fix clock settery in bins when adding kids after the clock has
20354 2005-05-18 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
20356 * gst/elements/gstidentity.c: (gst_identity_class_init):
20357 Workaround until signals support GstMiniObject.
20359 2005-05-18 Jan Schmidt <thaytan@mad.scientist.com>
20362 Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
20364 2005-05-18 Wim Taymans <wim@fluendo.com>
20366 * gst/base/Makefile.am:
20367 * gst/base/gstadapter.c: (gst_adapter_base_init),
20368 (gst_adapter_class_init), (gst_adapter_init),
20369 (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
20370 (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
20371 (gst_adapter_flush), (gst_adapter_available),
20372 (gst_adapter_available_fast):
20373 * gst/base/gstadapter.h:
20374 Ported and added adapter to the base classes.
20376 2005-05-17 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
20379 * gst/gstmessage.c:
20380 Make sure the class is reffed/unreffed once before threads can be
20381 used. Fixes #304551.
20383 2005-05-17 Wim Taymans <wim@fluendo.com>
20385 * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
20386 (gst_basesink_chain_unlocked), (gst_basesink_activate):
20387 * gst/gstminiobject.c: (gst_mini_object_get_type),
20388 (gst_mini_object_free):
20389 * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
20390 (gst_pad_push), (gst_pad_push_event):
20391 * gst/gstqueue.c: (gst_queue_change_state):
20392 Don't queue buffers in basesink when we are flushing.
20393 Unref buffer when flushing in basesink.
20394 Flush queue when going to READY
20395 Unref buffer when _push() returns an error.
20396 Don't free MiniObject instance when refcount is incremented
20397 in _finalize() so that we can recover objects.
20399 2005-05-17 Thomas Vander Stichele <thomas at apestaart dot org>
20401 * docs/manual/advanced-schedulers.xml:
20402 * docs/manual/appendix-checklist.xml:
20403 * docs/pwg/advanced-clock.xml:
20404 * docs/pwg/advanced-interfaces.xml:
20405 * docs/pwg/advanced-request.xml:
20406 * docs/pwg/advanced-types.xml:
20407 * docs/pwg/intro-preface.xml:
20408 * examples/plugins/example.c: (gst_example_get_type),
20409 (gst_example_class_init), (gst_example_chain),
20410 (gst_example_set_property), (gst_example_get_property),
20411 (gst_example_change_state), (plugin_init):
20412 * examples/plugins/example.h:
20415 2005-05-17 Wim Taymans <wim@fluendo.com>
20417 * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
20418 (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
20419 * gst/gstqueue.c: (gst_queue_change_state):
20420 Clear queue when going to READY.
20421 Remove IN_SETCAPS flag too.
20423 2005-05-17 Tim-Philipp Müller <tim at centricular dot net>
20425 * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
20426 Remove implicit cast from gboolean to GstElementStateReturn;
20427 make sure we still return failure in paused => ready case if
20428 the parent class fails to change state and our own stop
20431 2005-05-17 Wim Taymans <wim@fluendo.com>
20433 * tools/gst-launch.c: (event_loop):
20434 Message was unreffed too soon.
20436 2005-05-16 Andy Wingo <wingo@pobox.com>
20438 * gst/gstbin.c (sink_iterator_filter): Err... um...
20440 * check/gst/gstbin.c (test_ghost_pads): New test for the
20441 ghosting-if-elements-not-in-same-bin behavior.
20443 2005-05-16 David Schleef <ds@schleef.org>
20445 * gst/gstminiobject.c: Use g_atomic_int_get() instead of
20446 accessing refcount directly.
20448 2005-05-15 David Schleef <ds@schleef.org>
20450 * check/Makefile.am: remove GstData checks
20451 * check/gst-libs/gdp.c: (START_TEST): fix for API changes
20452 * gst/Makefile.am: add miniobject, remove data
20453 * gst/gst.h: add miniobject, remove data
20454 * gst/gstdata.c: remove
20455 * gst/gstdata.h: remove
20456 * gst/gstdata_private.h: remove
20457 * gst/gsttypes.h: remove GstEvent and GstMessage
20458 * gst/gstelement.c: (gst_element_post_message): fix for API changes
20459 * gst/gstmarshal.list: change BOXED -> OBJECT
20461 Implement GstMiniObject.
20462 * gst/gstminiobject.c:
20463 * gst/gstminiobject.h:
20465 Modify to be subclasses of GstMiniObject.
20466 * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
20467 (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
20468 (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
20469 (gst_subbuffer_get_type), (gst_subbuffer_init),
20470 (gst_buffer_create_sub), (gst_buffer_is_span_fast),
20473 * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
20474 (gst_event_class_init), (gst_event_init), (gst_event_finalize),
20475 (_gst_event_copy), (gst_event_new):
20477 * gst/gstmessage.c: (_gst_message_initialize),
20478 (gst_message_get_type), (gst_message_class_init),
20479 (gst_message_init), (gst_message_finalize), (_gst_message_copy),
20480 (gst_message_new), (gst_message_new_error),
20481 (gst_message_new_warning), (gst_message_new_tag),
20482 (gst_message_new_state_changed), (gst_message_new_application):
20483 * gst/gstmessage.h:
20484 * gst/gstprobe.c: (gst_probe_perform),
20485 (gst_probe_dispatcher_dispatch):
20487 * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
20488 (gst_query_class_init), (gst_query_finalize), (gst_query_init),
20489 (_gst_query_copy), (gst_query_new):
20491 Update elements for GstData -> GstMiniObject changes
20493 * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
20494 (gst_queue_chain), (gst_queue_loop):
20495 * gst/elements/gstbufferstore.c:
20496 (gst_buffer_store_add_buffer_func),
20497 (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
20498 * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
20499 (gst_fakesink_render):
20500 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
20501 * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
20502 (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
20503 (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
20504 (gst_filesrc_create_read):
20505 * gst/elements/gstidentity.c: (gst_identity_class_init):
20506 * gst/elements/gsttypefindelement.c:
20507 (gst_type_find_element_src_event), (free_entry_buffers),
20508 (gst_type_find_element_handle_event):
20509 * libs/gst/dataprotocol/dataprotocol.c:
20510 (gst_dp_header_from_buffer):
20511 * libs/gst/dataprotocol/dataprotocol.h:
20512 * libs/gst/dataprotocol/dp-private.h:
20514 2005-05-15 David Schleef <ds@schleef.org>
20516 * gst/elements/gstelements.c: Don't include headers that were
20519 2005-05-15 David Schleef <ds@schleef.org>
20521 * gst/elements/Makefile.am: Remove some elements that don't
20522 need to be in the core (or even exist at all).
20523 * gst/elements/gstaggregator.c:
20524 * gst/elements/gstaggregator.h:
20525 * gst/elements/gstmd5sink.c:
20526 * gst/elements/gstmd5sink.h:
20527 * gst/elements/gstmultifilesrc.c:
20528 * gst/elements/gstmultifilesrc.h:
20529 * gst/elements/gstpipefilter.c:
20530 * gst/elements/gstpipefilter.h:
20531 * gst/elements/gstshaper.c:
20532 * gst/elements/gstshaper.h:
20533 * gst/elements/gststatistics.c:
20534 * gst/elements/gststatistics.h:
20535 * po/POTFILES.in: Remove above files.
20537 2005-05-14 Andy Wingo <wingo@pobox.com>
20539 * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
20540 so as to get the refs right.
20541 (sink_iterator_filter): New function, wraps bin_element_is_sink,
20542 unreffing objects that don't pass the filter.
20544 * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
20545 gst_element_set_bus.
20546 (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
20547 normal cases, this will destroy the bus.
20549 * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
20552 * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
20555 2005-05-13 Andy Wingo <wingo@pobox.com>
20557 * gst/gstutils.c (gst_element_link_pads): Instead of calling
20558 gst_pad_link, call pad_link_maybe_ghosting,
20559 (pad_link_maybe_ghosting): Links pads, making sure that the
20560 elements being linked are in the same bin.
20561 (find_common_root, object_has_ancestor, ghost_up, remove_pad):
20562 Helpers for pad_link_maybe_ghosting.
20564 2005-05-13 Tim-Philipp Müller <tim at centricular dot net>
20567 Require GLib >= 2.4.0 (for the g_atomic_* funcs)
20569 2005-05-13 Tim-Philipp Müller <tim at centricular dot net>
20571 * docs/design/part-element-source.txt:
20574 2005-05-12 Wim Taymans <wim@fluendo.com>
20576 * gst/base/gstbasesink.c: (gst_basesink_init),
20577 (gst_basesink_activate):
20578 * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
20579 (gst_basesrc_is_seekable):
20580 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
20581 (bin_element_is_sink), (gst_bin_change_state):
20582 * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
20583 * gst/gstelement.h:
20584 Identify sinks by their flag to avoid overly complicated
20586 Do state changes even for elements not reachable from the
20588 BaseSink is a sink now :)
20589 Some more debugging info in the basesrc.
20592 2005-05-12 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
20594 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
20595 Implement _query on a bin, similar to _send_event.
20597 2005-05-12 Tim-Philipp Müller <tim at centricular dot net>
20599 * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
20600 Discont event offset format should be GST_FORMAT_BYTES,
20601 not GST_FORMAT_TIME.
20603 2005-05-12 Wim Taymans <wim@fluendo.com>
20605 * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
20606 Same fix as Ronald's but without the signal.
20608 2005-05-12 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
20610 * gst/gstutils.c: (gst_element_query_position):
20611 No, an element is not a pad.
20613 2005-05-12 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
20615 * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
20616 (gst_bin_get_state):
20617 If a child is removed from a bin while we remove the child from
20618 the bin and while we're retrieving its state, signal this to the
20619 get_state function so we abort the wait (instead of waiting for
20620 a timeout) and can immediately re-iterate over all other elements.
20622 2005-05-12 Wim Taymans <wim@fluendo.com>
20624 * gst/base/Makefile.am:
20625 * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
20626 (gst_basesrc_start):
20627 * gst/base/gstbasesrc.h:
20628 * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
20629 (gst_pushsrc_base_init), (gst_pushsrc_class_init),
20630 (gst_pushsrc_init), (gst_pushsrc_create):
20631 * gst/base/gstpushsrc.h:
20632 Added is_seekable to BaseSrc
20633 Added simple PushSrc.
20635 2005-05-11 Wim Taymans <wim@fluendo.com>
20637 * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
20638 * gst/gstutils.c: (gst_element_get_compatible_pad_template),
20639 (gst_element_link_pads), (gst_element_query_position),
20640 (gst_element_query_convert), (intersect_caps_func),
20641 (gst_pad_query_position), (gst_pad_query_convert):
20642 Fix refcounting in utils function.
20643 No point in trying to activate a pad when it's added, it could
20644 be added from the state change function and then we deadlock, the
20645 element has to decide what to do.
20647 2005-05-10 Andy Wingo <wingo@pobox.com>
20649 * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
20650 *all* the arguments.
20652 * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
20653 stream lock if it's a FLUSH_DONE; normal flushes don't get the
20654 lock (according to the docs -- if this is wrong change the docs).
20656 * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
20657 flush messages in the NULL state.
20659 * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
20660 message immediately and return.
20661 (gst_bus_set_flushing): New function. If a bus is flushing, it
20662 flushes out any queued messages and immediately unrefs new
20663 messages. This is so when an element goes to NULL, all of the
20664 unhandled messages coming from it can be freed, and their
20665 references to the element dropped. In other words: message source
20666 ref considered harmful :P
20668 * gst/gstbin.c (gst_bin_change_state): Unref peer element when
20669 we're finished with it.
20671 * gst/gstmessage.c (gst_message_new_state_changed):
20673 2005-05-10 Wim Taymans <wim@fluendo.com>
20675 * gst/gstvalue.c: (gst_value_compare_flags),
20676 (gst_value_serialize_flags), (gst_value_deserialize_flags),
20677 (_gst_value_initialize):
20678 Added flags serialize/deserialize/compare code.
20680 2005-05-09 Andy Wingo <wingo@pobox.com>
20682 * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
20683 Intersect the peer's caps with our caps.
20685 2005-05-09 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
20687 * gst/base/gsttypefindhelper.c: (helper_find_peek):
20688 * gst/elements/gsttypefindelement.c: (find_peek):
20689 Handle negative offsets better. Fixes decodebin.
20691 2005-05-09 Wim Taymans <wim@fluendo.com>
20693 * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
20694 (gst_base_transform_event):
20695 * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
20696 Implement accept_caps.
20697 Fix silly lock/unlock mismatch in base class.
20699 2005-05-09 Wim Taymans <wim@fluendo.com>
20701 * docs/design/draft-push-pull.txt:
20702 * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
20703 * gst/elements/gstfilesink.c: (gst_filesink_init),
20704 (gst_filesink_query):
20705 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
20706 (gst_type_find_handle_src_query), (find_element_get_length):
20707 * gst/gstelement.c: (gst_element_seek), (gst_element_query):
20708 * gst/gstelement.h:
20709 * gst/gstmessage.c:
20710 * gst/gstmessage.h:
20711 * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
20712 (gst_real_pad_get_caps_unlocked),
20713 (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
20714 (gst_pad_event_default_dispatch), (gst_pad_event_default),
20715 (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
20716 (gst_real_pad_dispose), (gst_real_pad_finalize),
20717 (gst_pad_load_and_link), (gst_pad_save_thyself),
20718 (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
20719 (gst_pad_check_pull_range), (gst_pad_pull_range),
20720 (gst_pad_template_get_type), (gst_pad_template_class_init),
20721 (gst_pad_template_init), (gst_pad_template_dispose),
20722 (name_is_valid), (gst_static_pad_template_get),
20723 (gst_pad_template_new), (gst_static_pad_template_get_caps),
20724 (gst_pad_template_get_caps), (gst_pad_set_element_private),
20725 (gst_pad_get_element_private), (gst_pad_start_task),
20726 (gst_pad_pause_task), (gst_pad_stop_task),
20727 (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
20728 (gst_ghost_pad_init), (gst_ghost_pad_dispose),
20729 (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
20730 (gst_ghost_pad_new):
20732 * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
20733 (gst_query_new_position), (gst_query_set_position),
20734 (gst_query_parse_position), (gst_query_new_convert),
20735 (gst_query_set_convert), (gst_query_parse_convert):
20737 * gst/gstqueryutils.c:
20738 * gst/gstqueryutils.h:
20739 * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
20740 (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
20741 (gst_queue_handle_src_query):
20742 * gst/gstutils.c: (gst_element_get_compatible_pad_template),
20743 (gst_element_query_position), (gst_element_query_convert),
20744 (intersect_caps_func), (gst_pad_query_position),
20745 (gst_pad_query_convert):
20747 * tools/gst-inspect.c: (print_pad_info):
20748 * tools/gst-xmlinspect.c: (print_element_info):
20749 Remove old query functions. Ported old code.
20750 Added position/convert helper functions to gstutils.
20751 Reordered gstpad.c code, grouping relevant things.
20752 Remove gst_message_new(), always need to speficy a specific
20756 2005-05-09 Andy Wingo <wingo@pobox.com>
20758 * gst/gstiterator.h: Add some includes.
20760 * gst/gstqueryutils.h: Include more headers.
20763 * gst/gstpad.c (gst_pad_query_position): New routine, replaces
20764 some uses of gst_pad_query.
20766 * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
20767 NULL out parameters.
20768 (gst_query_new_position): New proc, allocates a new position
20771 * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
20772 gstqueryutils.c to the build.
20774 * gst/gststructure.c (gst_structure_set_valist): Implement with
20775 the generic G_VALUE_COLLECT.
20777 2005-05-08 Edward Hervey <bilboed@bilboed.com>
20779 * gst/Makefile.am: (gst_headers):
20780 Added gstqueryutils.h to the list of headers to install, that was
20781 a 'nachty' move wingo :)
20783 2005-05-06 Andy Wingo <wingo@pobox.com>
20786 * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
20787 GstData, init a memchunk.
20788 (standard_definitions): Add a few query types, deprecate a few.
20789 (gst_query_get_type): New proc.
20790 (_gst_query_copy, _gst_query_free, gst_query_new): GstData
20792 (gst_query_new_application, gst_query_get_structure): New public
20795 * docs/design/draft-query.txt: Removed LINKS from the query types,
20796 because all the rest can be dispatched to other pads -- seemed
20797 ugly to have a query that couldn't be dispatched. internal_links
20798 is fine as a pad method.
20800 * gst/gstpad.h: Add query2 as a pad method, add the new functions
20801 in gstpad.c, but maintain binary compatibility for the moment.
20802 Will fix before 0.9 is out.
20804 * gst/gstqueryutils.c:
20805 * gst/gstqueryutils.h: New files, implement 3 methods for each
20806 query type: parse_query, parse_response, and set. Probably need an
20809 * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
20811 * gst/elements/gstfilesink.c (gst_filesink_query2):
20812 * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
20813 query_types, and formats methods.
20815 * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
20816 (gst_pad_set_query2_function): New functions.
20817 (gst_real_pad_init): Set query2_default as the default query2
20818 function. Basically just dispatches to internally linked pads.
20822 * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
20823 without using the atomic operations. Only one thread can possibly
20824 be accessing the data at this point. Changed so as to avoid
20825 gst_atomic operations.
20827 2005-05-06 Wim Taymans <wim@fluendo.com>
20829 * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
20830 Also set caps if we use the fallback buffer alloc.
20832 2005-05-06 Tim-Philipp Müller <tim at centricular dot net>
20834 * docs/gst/Makefile.am:
20835 * docs/gst/gstreamer-docs.sgml:
20836 * docs/gst/gstreamer-sections.txt:
20837 * docs/gst/tmpl/gstatomic.sgml:
20838 * docs/gst/tmpl/gstmemchunk.sgml:
20839 * testsuite/elements/struct_i386.h:
20840 * win32/GStreamer.vcproj:
20842 Purge GstAtomic stuff from docs and win32 makefiles as well
20844 2005-05-06 Wim Taymans <wim@fluendo.com>
20846 * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
20847 * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
20848 * gst/gstpad.c: (gst_pad_peer_get_caps):
20849 * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
20850 (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
20851 (gst_queue_src_activate), (gst_queue_change_state):
20853 * gst/gstutils.c: (gst_element_get_compatible_pad_template),
20854 (intersect_caps_func):
20855 Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
20856 Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
20857 Some fixes for the peer_get_caps() change.
20859 2005-05-06 Wim Taymans <wim@fluendo.com>
20861 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
20862 (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
20863 (gst_basesink_activate):
20864 Actually do something with error codes returned from the push
20867 2005-05-06 Wim Taymans <wim@fluendo.com>
20869 * docs/design/part-element-sink.txt:
20870 * docs/design/part-element-source.txt:
20871 * gst/base/gstbasesink.c: (gst_basesink_class_init),
20872 (gst_basesink_event), (gst_basesink_activate):
20873 * gst/base/gstbasesink.h:
20874 * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
20875 (gst_basesrc_activate):
20876 * gst/base/gstbasesrc.h:
20877 * gst/gstelement.c: (gst_element_pads_activate):
20878 Some more documentation.
20879 Fixed scheduling decision in _pads_activate().
20881 2005-05-05 Andy Wingo <wingo@pobox.com>
20883 * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
20886 2005-05-05 Wim Taymans <wim@fluendo.com>
20888 * gst/base/Makefile.am:
20889 * gst/base/gstbasesink.h:
20890 * gst/base/gstbasesrc.c: (gst_basesrc_init),
20891 (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
20892 * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
20893 (gst_collectpads_class_init), (gst_collectpads_init),
20894 (gst_collectpads_finalize), (gst_collectpads_new),
20895 (gst_collectpads_set_function), (gst_collectpads_add_pad),
20896 (find_pad), (gst_collectpads_remove_pad),
20897 (gst_collectpads_is_active), (gst_collectpads_collect),
20898 (gst_collectpads_collect_range), (gst_collectpads_start),
20899 (gst_collectpads_stop), (gst_collectpads_peek),
20900 (gst_collectpads_pop), (gst_collectpads_available),
20901 (gst_collectpads_read), (gst_collectpads_flush),
20902 (gst_collectpads_chain):
20903 * gst/base/gstcollectpads.h:
20904 * gst/elements/Makefile.am:
20905 * gst/elements/gstelements.c:
20906 * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
20907 (gst_fakesink_get_times), (gst_fakesink_event),
20908 (gst_fakesink_preroll), (gst_fakesink_render):
20909 * gst/elements/gstfilesink.c: (gst_filesink_class_init),
20910 (gst_filesink_init), (gst_filesink_set_location),
20911 (gst_filesink_open_file), (gst_filesink_close_file),
20912 (gst_filesink_pad_query), (gst_filesink_event),
20913 (gst_filesink_render), (gst_filesink_change_state):
20914 * gst/elements/gstfilesink.h:
20915 Added object to help in making collect pad based elements.
20917 Make event function in sink baseclass return gboolean.
20919 2005-05-05 Wim Taymans <wim@fluendo.com>
20921 * gst/gstbin.c: (gst_bin_send_event), (compare_name),
20922 (gst_bin_get_by_name):
20924 * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
20925 (gst_clock_finalize):
20926 * gst/gstdata.c: (gst_data_replace):
20928 * gst/gstelement.c: (gst_element_request_pad),
20929 (gst_element_pads_activate):
20930 * gst/gstobject.c: (gst_object_init), (gst_object_ref),
20931 (gst_object_unref):
20932 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
20933 (gst_pad_set_checkgetrange_function),
20934 (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
20935 (gst_pad_check_pull_range), (gst_pad_pull_range),
20936 (gst_static_pad_template_get_caps), (gst_pad_start_task),
20937 (gst_pad_pause_task), (gst_pad_stop_task):
20938 * gst/gstutils.c: (gst_element_get_compatible_pad_template),
20939 (gst_element_request_pad), (gst_pad_proxy_getcaps):
20940 Fix name lookup in GstBin.
20941 Added _data_replace() function and _buffer_replace()
20942 Use finalize method to clean up clock.
20943 Fix refcounting on request pads.
20944 Fix pad schedule mode error.
20945 Some more object refcounting debug info,
20948 2005-05-04 Andy Wingo <wingo@pobox.com>
20950 * check/Makefile.am:
20951 * docs/gst/tmpl/gstatomic.sgml:
20952 * docs/gst/tmpl/gstplugin.sgml:
20953 * gst/base/gstbasesink.c: (gst_basesink_activate):
20954 * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
20955 (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
20956 (gst_basesrc_query), (gst_basesrc_set_property),
20957 (gst_basesrc_get_property), (gst_basesrc_check_get_range),
20958 (gst_basesrc_activate):
20959 * gst/base/gstbasesrc.h:
20960 * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
20961 (gst_base_transform_src_activate):
20962 * gst/elements/gstelements.c:
20963 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
20964 (gst_fakesrc_set_property), (gst_fakesrc_get_property):
20965 * gst/elements/gsttee.c: (gst_tee_sink_activate):
20966 * gst/elements/gsttypefindelement.c: (find_element_get_length),
20967 (gst_type_find_element_checkgetrange),
20968 (gst_type_find_element_activate):
20969 * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
20970 * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
20971 (gst_caps_load_thyself):
20972 * gst/gstelement.c: (gst_element_pads_activate),
20973 (gst_element_save_thyself), (gst_element_restore_thyself):
20974 * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
20975 (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
20977 * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
20978 (gst_xml_parse_file), (gst_xml_parse_memory),
20979 (gst_xml_get_element), (gst_xml_make_element):
20980 * gst/indexers/gstfileindex.c: (gst_file_index_load),
20981 (_file_index_id_save_xml), (gst_file_index_commit):
20982 * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
20983 (read_enum), (load_pad_template), (load_feature), (load_plugin),
20985 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
20986 (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
20987 * tools/gst-complete.c: (main):
20988 * tools/gst-compprep.c: (main):
20989 * tools/gst-inspect.c: (print_element_properties_info):
20990 * tools/gst-launch.c: (xmllaunch_parse_cmdline):
20991 * tools/gst-xmlinspect.c: (print_element_properties):
20994 2005-05-03 Thomas Vander Stichele <thomas at apestaart dot org>
20996 * gst/gstplugin.c: (gst_plugin_check_module),
20997 (gst_plugin_check_file), (gst_plugin_load_file):
20998 apply patch from #172526 to make register work on MacOSX
21000 2005-05-02 Thomas Vander Stichele <thomas at apestaart dot org>
21002 * docs/gst/tmpl/gstconfig.sgml:
21003 * gst/gstconfig.h.in:
21004 move documentation for some symbols. Add doc for GST_PTR_FORMAT
21005 * testsuite/debug/printf_extension.c: (main):
21006 Do not use GST_PTR_FORMAT on pointers to types with
21007 sizeof < sizeof(gpointer). Fixes test on 64-bit
21008 * testsuite/elements/property.h:
21009 use correct printf format
21011 2005-05-02 Wim Taymans <wim@fluendo.com>
21013 * docs/design/draft-push-pull.txt:
21014 * docs/design/draft-query.txt:
21015 * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
21016 (gst_basesrc_start):
21017 Added draft for new query API.
21018 Added draft for better selecting scheduling methods.
21019 Make basesrc ignore length if the subclass does not support
21022 2005-05-02 Thomas Vander Stichele <thomas at apestaart dot org>
21025 possible fixes for automake-1.5 - _LIBADD is reserved
21027 2005-05-02 Thomas Vander Stichele <thomas at apestaart dot org>
21029 * docs/faq/Makefile.am:
21030 * docs/manual/Makefile.am:
21031 * docs/manuals.mak:
21032 * docs/pwg/Makefile.am:
21034 possible fixes for automake-1.5
21036 2005-04-28 Wim Taymans <wim@fluendo.com>
21038 * gst/base/gstbasesink.c: (gst_basesink_base_init),
21039 (gst_basesink_pad_getcaps), (gst_basesink_init),
21040 (gst_basesink_do_sync):
21041 * gst/gstclock.c: (gst_clock_entry_new):
21042 * gst/gstevent.c: (gst_event_discont_get_value):
21043 * gst/gstpipeline.c: (pipeline_bus_handler),
21044 (gst_pipeline_change_state):
21045 * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
21046 Better debugging of clocking info.
21047 Allow NULL values when getting discont values.
21049 2005-04-27 Wim Taymans <wim@fluendo.com>
21051 * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
21052 * check/gst/gstpad.c: (gst_pad_suite):
21053 Increase timeout for checks.
21055 2005-04-27 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
21057 * check/Makefile.am:
21058 fix the broken rule for cleanup. Apparently this rule is
21059 only needed on FC2, so maybe this warrants further autotool
21062 2005-04-26 Wim Taymans <wim@fluendo.com>
21064 * gst/gsttrashstack.h:
21065 Ooohh. a nasty one! After having a failed pop() from the stack,
21066 it's possible that the stack is empty. In that case, don't
21067 follow the NULL pointer.
21069 2005-04-25 Wim Taymans <wim@fluendo.com>
21071 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
21072 (gst_pad_set_checkgetrange_function),
21073 (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
21074 (gst_pad_check_pull_range), (gst_pad_pull_range),
21075 (gst_static_pad_template_get_caps), (gst_pad_start_task),
21076 (gst_pad_pause_task), (gst_pad_stop_task):
21077 * gst/gstplugin.c: (gst_plugin_load):
21079 Remove gst_library_load as it does more harm than good with
21080 the new g_module flags.
21081 Revert bogus caps template check in pad linking, pad caps
21082 are important when linking not the template, which is more
21083 general than the current caps.
21085 2005-04-25 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
21087 * gst/autoplug/.cvsignore:
21088 * gst/autoplug/Makefile.am:
21089 * gst/autoplug/gstsearchfuncs.c:
21090 * gst/autoplug/gstsearchfuncs.h:
21091 * gst/autoplug/gstspider.c:
21092 * gst/autoplug/gstspider.h:
21093 * gst/autoplug/gstspideridentity.c:
21094 * gst/autoplug/gstspideridentity.h:
21095 * gst/autoplug/spidertest.c:
21098 2005-04-25 Wim Taymans <wim@fluendo.com>
21100 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
21101 (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
21102 (gst_pad_pull_range), (gst_static_pad_template_get_caps),
21103 (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
21105 Added stubs for unimplemented functions.
21107 2005-04-24 David Schleef <ds@schleef.org>
21109 * gst/gstpad.h: Disable some unimplemented functions. Wim,
21112 2005-04-24 David Schleef <ds@schleef.org>
21114 Convert everything from GstAtomicInt to g_atomic_int_*, and
21119 * gst/gstatomic_impl.h:
21127 * gst/gstdata_private.h:
21131 * gst/gstmessage.c:
21134 * gst/gststructure.c:
21135 * gst/gststructure.h:
21136 * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
21139 2005-04-24 David Schleef <ds@schleef.org>
21141 * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
21142 make the regressions tests work. Remove some code that is no
21144 * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
21145 Disable warning for pads without templates.
21147 2005-04-24 David Schleef <ds@schleef.org>
21149 * gst/gstpad.c: Remove handling of filtered caps. Fix/merge
21150 functions that handle filtered links.
21151 * gst/gstpad.h: Remove 'appfilter' field and prototypes of
21153 * gst/gstutils.c: Fix/remove utility functions that handle
21156 * gst/gstvalue.c: Add serialization/deserialization of caps
21157 * gst/parse/grammar.y: Ignore filtered caps when linking. This
21158 requires fixing so that the filter caps notation creates
21159 a capsfilter element and sets the filter_caps property. I
21160 think everyone probably wants to keep the shorthand notation.
21161 * docs/gst/tmpl/gstelement.sgml: updates for API changes.
21162 * docs/gst/tmpl/gstpad.sgml:
21164 * gst/elements/gstelements.c: Register capsfilter element.
21165 * gst/Makefile.am: fix spacing
21166 * docs/random/ds/0.9-suggested-changes: random
21168 2005-04-23 David Schleef <ds@schleef.org>
21170 * gst/elements/Makefile.am:
21171 * gst/elements/gstcapsfilter.c: New element that acts like an
21172 identity, but filters caps. Will eventually replace filtered
21173 caps in pad linking.
21174 * gst/gstutils.c: (gst_element_create_all_pads): New function
21175 to create all the ALWAYS pads that are registered with an
21176 element class. This functionality should eventually be
21177 merged in with GstElement initialization.
21179 * testsuite/trigger/README: part of trigger test code that should
21180 have been checked in a long time ago.
21182 2005-04-23 David Schleef <ds@schleef.org>
21184 * gst/Makefile.am: Remove as-libtool stuff. It's likely not
21185 needed with new versions of libtool (nobody will confirm this),
21186 and hard to carry around.
21187 * gst/autoplug/Makefile.am:
21188 * gst/base/Makefile.am:
21189 * gst/elements/Makefile.am:
21190 * gst/indexers/Makefile.am:
21191 * gst/schedulers/Makefile.am:
21192 * libs/gst/bytestream/Makefile.am:
21193 * libs/gst/control/Makefile.am:
21194 * libs/gst/dataprotocol/Makefile.am:
21195 * libs/gst/getbits/Makefile.am:
21197 2005-04-21 Wim Taymans <wim@fluendo.com>
21199 * docs/design/draft-push-pull.txt:
21200 * docs/design/part-MT-refcounting.txt:
21201 * docs/design/part-TODO.txt:
21202 * docs/design/part-caps.txt:
21203 * docs/design/part-events.txt:
21204 * docs/design/part-gstbus.txt:
21205 * docs/design/part-gstpipeline.txt:
21206 * docs/design/part-messages.txt:
21207 * docs/design/part-push-pull.txt:
21208 * docs/design/part-query.txt:
21211 2005-04-21 Wim Taymans <wim@fluendo.com>
21213 * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
21214 (gst_message_new), (gst_message_new_error),
21215 (gst_message_new_warning), (gst_message_new_tag),
21216 (gst_message_new_state_changed), (gst_message_new_application),
21217 (gst_message_get_structure):
21218 * gst/gstmessage.h:
21219 * gst/gststructure.c: (gst_structure_set_parent_refcount),
21220 (gst_structure_copy_conditional):
21221 Use parent refcount in GstMessage to ensure GstStructure
21223 Cleaned up headers a bit.
21226 2005-04-20 Wim Taymans <wim@fluendo.com>
21228 * gst/base/gstbasesink.c: (gst_basesink_base_init),
21229 (gst_basesink_pad_getcaps), (gst_basesink_init),
21230 (gst_basesink_chain_unlocked):
21231 * gst/base/gsttypefindhelper.c: (helper_find_suggest),
21232 (gst_type_find_helper):
21233 * gst/elements/gsttypefindelement.c:
21234 (gst_type_find_element_have_type), (gst_type_find_element_init),
21235 (stop_typefinding), (gst_type_find_element_handle_event),
21236 (find_suggest), (gst_type_find_element_chain),
21237 (gst_type_find_element_checkgetrange),
21238 (gst_type_find_element_getrange), (do_typefind),
21239 (gst_type_find_element_activate):
21240 * gst/gstbuffer.c: (_gst_buffer_sub_free),
21241 (gst_buffer_default_free), (gst_buffer_default_copy),
21242 (gst_buffer_set_caps):
21243 * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
21244 (gst_caps_replace):
21245 * gst/gstmessage.c: (gst_message_new),
21246 (gst_message_new_state_changed):
21247 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
21248 (gst_pad_set_checkgetrange_function),
21249 (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
21250 (gst_pad_set_caps), (gst_pad_check_pull_range),
21251 (gst_pad_pull_range), (gst_static_pad_template_get_caps):
21253 * gst/gsttypefind.c: (gst_type_find_register):
21254 Make gst_caps_replace() work like other _replace() functions.
21255 Use _caps_replace() where possible.
21256 Make sure _message_new() initialises its field.
21257 Add gst_static_pad_template_get_caps()
21260 2005-04-18 Andy Wingo <wingo@pobox.com>
21262 * gst/gstelement.c (gst_element_pads_activate): Check pull_range
21263 on the peer, not the pad. I think that was a typo. Pass an extra
21264 arg to see if random access is possible. Activate the pads as
21265 PULL_RANGE if possible.
21267 * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
21269 * gst/base/gstbasesrc.c (gst_basesrc_set_property)
21270 (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
21273 2005-04-14 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
21275 * docs/faq/using.xml:
21276 Add note on gstreamer-properties (#154996).
21278 2005-04-13 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
21280 * docs/random/bbb/optional-properties:
21281 Some analysis on optional properties.
21283 2005-04-12 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
21285 * docs/gst/tmpl/gstelementfactory.sgml:
21286 * gst/gstelement.h:
21287 * gst/gstelementfactory.c: (gst_element_factory_init),
21288 (gst_element_factory_cleanup), (gst_element_register),
21289 (__gst_element_factory_add_static_pad_template),
21290 (gst_element_factory_get_static_pad_templates),
21291 (gst_element_factory_can_src_caps),
21292 (gst_element_factory_can_sink_caps):
21293 * gst/registries/Makefile.am:
21294 * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
21295 (gst_xml_registry_class_init), (gst_xml_registry_init),
21296 (gst_xml_registry_new), (gst_xml_registry_set_property),
21297 (gst_xml_registry_get_property), (get_time), (make_dir),
21298 (gst_xml_registry_get_perms_func),
21299 (plugin_times_older_than_recurse), (plugin_times_older_than),
21300 (gst_xml_registry_open_func), (gst_xml_registry_load_func),
21301 (gst_xml_registry_save_func), (gst_xml_registry_close_func),
21302 (add_to_char_array), (read_string), (read_uint), (read_enum),
21303 (load_pad_template), (load_feature), (load_plugin), (load_paths),
21304 (gst_xml_registry_load), (gst_xml_registry_load_plugin),
21305 (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
21306 (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
21307 (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
21308 (gst_xml_registry_rebuild):
21309 * gst/registries/gstlibxmlregistry.h:
21310 * tools/gst-compprep.c: (main):
21311 * tools/gst-inspect.c: (print_pad_templates_info):
21312 * tools/gst-xmlinspect.c: (print_element_info):
21313 Use libxml2 for registry parsing, use staticpadtemplates in
21314 elementfactories. Makes gst_init() +/- 10x faster.
21316 2005-04-12 Wim Taymans <wim@fluendo.com>
21318 * gst/base/Makefile.am:
21319 * gst/base/gstbasesink.c: (gst_basesink_base_init),
21320 (gst_basesink_pad_getcaps), (gst_basesink_init),
21321 (gst_basesink_event), (gst_basesink_change_state):
21322 * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
21323 (gst_basesrc_init), (gst_basesrc_query),
21324 (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
21325 (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
21326 (gst_basesrc_check_get_range), (gst_basesrc_loop),
21327 (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
21328 (gst_basesrc_stop), (gst_basesrc_activate),
21329 (gst_basesrc_change_state):
21330 * gst/base/gsttypefindhelper.c: (helper_find_peek),
21331 (helper_find_suggest), (gst_type_find_helper):
21332 * gst/base/gsttypefindhelper.h:
21333 * gst/elements/Makefile.am:
21334 * gst/elements/gstelements.c:
21335 * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
21336 (gst_fakesink_get_times), (gst_fakesink_event),
21337 (gst_fakesink_preroll), (gst_fakesink_render):
21338 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
21339 (gst_fakesrc_init), (gst_fakesrc_event_handler),
21340 (gst_fakesrc_get_property), (gst_fakesrc_create),
21341 (gst_fakesrc_start), (gst_fakesrc_stop):
21342 * gst/elements/gstfakesrc.h:
21343 * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
21344 (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
21345 (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
21346 (gst_filesrc_create_read), (gst_filesrc_create),
21347 (gst_filesrc_is_seekable), (gst_filesrc_get_size),
21348 (gst_filesrc_start):
21349 * gst/elements/gsttypefindelement.c:
21350 (gst_type_find_element_have_type), (gst_type_find_element_init),
21351 (start_typefinding), (stop_typefinding), (push_buffer_store),
21352 (gst_type_find_element_handle_event),
21353 (gst_type_find_element_chain),
21354 (gst_type_find_element_checkgetrange),
21355 (gst_type_find_element_getrange), (do_typefind),
21356 (gst_type_find_element_activate),
21357 (gst_type_find_element_change_state):
21358 * gst/elements/gsttypefindelement.h:
21359 * gst/gstpipeline.c: (pipeline_bus_handler):
21360 Added typefind helper.
21361 Small preroll fix in the base sink.
21362 Disable typefind code in basesrc.
21363 Crude port of typefindelement.
21367 2005-04-11 Wim Taymans <wim@fluendo.com>
21369 * check/gst/gstbus.c: (gstbus_suite):
21370 * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
21371 * check/gstcheck.h:
21372 Fix up the timeout so that the test does not fail.
21374 2005-04-06 Wim Taymans <wim@fluendo.com>
21377 * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
21378 (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
21379 (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
21380 (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
21381 (gst_basesrc_check_get_range), (gst_basesrc_loop),
21382 (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
21383 (gst_basesrc_stop), (gst_basesrc_activate),
21384 (gst_basesrc_change_state), (basesrc_find_peek),
21385 (basesrc_find_suggest), (gst_basesrc_type_find):
21386 * gst/base/gstbasesrc.h:
21387 * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
21388 (gst_filesrc_class_init), (gst_filesrc_init),
21389 (gst_filesrc_finalize), (gst_filesrc_set_location),
21390 (gst_filesrc_set_property), (gst_filesrc_get_property),
21391 (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
21392 (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
21393 (gst_filesrc_create_read), (gst_filesrc_create),
21394 (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
21395 * gst/elements/gstfilesrc.h:
21396 * gst/gstelement.c: (gst_element_get_state_func),
21397 (gst_element_lost_state), (gst_element_pads_activate):
21398 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
21399 (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
21400 (gst_pad_pull_range):
21402 More work on the generic source base class, implement seeking,
21404 Make filesrc extend the base source class.
21405 Added gst_pad_set_checkgetrange_function to GstPad.
21407 2005-04-06 Andy Wingo <wingo@pobox.com>
21409 * pkgconfig/gstreamer-base.pc.in:
21410 * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
21412 * pkgconfig/Makefile.am:
21413 * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
21415 2005-04-04 Wim Taymans <wim@fluendo.com>
21417 * gst/base/Makefile.am:
21419 * gst/base/gstbasesink.c: (gst_basesink_base_init),
21420 (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
21421 (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
21422 (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
21423 * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
21424 (gst_basesrc_base_init), (gst_basesrc_class_init),
21425 (gst_basesrc_init), (gst_basesrc_get_formats),
21426 (gst_basesrc_get_query_types), (gst_basesrc_query),
21427 (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
21428 (gst_basesrc_set_property), (gst_basesrc_get_property),
21429 (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
21430 (gst_basesrc_loop), (gst_basesrc_activate),
21431 (gst_basesrc_change_state):
21432 * gst/base/gstbasesrc.h:
21433 * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
21434 (gst_fakesrc_class_init), (gst_fakesrc_init),
21435 (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
21436 (gst_fakesrc_get_property), (gst_fakesrc_create):
21437 * gst/elements/gstfakesrc.h:
21438 * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
21439 (gst_filesrc_open_file), (gst_filesrc_loop),
21440 (gst_filesrc_activate), (filesrc_find_peek),
21441 (gst_filesrc_type_find):
21442 Made base source class, make fakesrc extend it.
21443 Add comments to basesink class.
21444 Some filesrc cleanup.
21446 2005-03-31 David Schleef <ds@schleef.org>
21448 * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
21449 Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
21450 expected to link against libgstreamer.
21451 * gst/base/Makefile.am: link against libgstreamer
21452 * gst/elements/Makefile.am: same
21454 2005-03-31 Andy Wingo <wingo@pobox.com>
21456 * tests/instantiate/Makefile.am:
21457 * tests/instantiate/caps.c: Add test to test speed of caps copy
21460 * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
21461 GMemChunk to be fair.
21463 * gst/gsttrashstack.h: Remove warning about using the fallback
21464 trash stack implementation, it's still faster than malloc.
21466 2005-03-30 Andy Wingo <wingo@pobox.com>
21468 * tests/complexity.c: Add a copyright.
21470 2005-03-31 Wim Taymans <wim@fluendo.com>
21472 * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
21473 (gst_base_transform_class_init), (gst_base_transform_init),
21474 (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
21475 (gst_base_transform_get_property),
21476 (gst_base_transform_sink_activate),
21477 (gst_base_transform_src_activate),
21478 (gst_base_transform_change_state):
21479 * gst/base/gstbasetransform.h:
21480 * gst/elements/gstidentity.c: (gst_identity_class_init),
21481 (gst_identity_event), (gst_identity_check_perfect),
21482 (gst_identity_transform), (gst_identity_start),
21483 (gst_identity_stop):
21484 Added start/stop methods to transform base class so subclasses
21485 don't need to deal with state changes even.
21487 2005-03-31 Wim Taymans <wim@fluendo.com>
21489 * gst/gstevent.c: (gst_event_new_discontinuous_valist),
21490 (gst_event_new_discontinuous), (gst_event_discont_get_value):
21492 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
21493 (gst_pad_pull_range):
21494 Added rate to the discont event to prepare for variable speed
21495 and reverse playback.
21497 2005-03-29 David Schleef <ds@schleef.org>
21500 * testsuite/trigger/Makefile.am:
21501 * testsuite/trigger/trigger.c: A little example program to show
21502 how trigger-based elements can work.
21504 2005-03-29 Wim Taymans <wim@fluendo.com>
21506 * gst/base/Makefile.am:
21508 * gst/base/gstbasesink.c: (gst_basesink_get_type),
21509 (gst_basesink_base_init), (gst_basesink_class_init),
21510 (gst_basesink_pad_getcaps), (gst_basesink_init),
21511 (gst_basesink_activate), (gst_basesink_change_state):
21512 * gst/base/gstbasesink.h:
21513 * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
21514 (gst_base_transform_base_init), (gst_base_transform_finalize),
21515 (gst_base_transform_class_init), (gst_base_transform_init),
21516 (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
21517 (gst_base_transform_event), (gst_base_transform_getrange),
21518 (gst_base_transform_chain), (gst_base_transform_handle_buffer),
21519 (gst_base_transform_set_property),
21520 (gst_base_transform_get_property),
21521 (gst_base_transform_sink_activate),
21522 (gst_base_transform_src_activate),
21523 (gst_base_transform_change_state):
21524 * gst/base/gstbasetransform.h:
21525 * gst/elements/gstidentity.c: (gst_identity_finalize),
21526 (gst_identity_class_init), (gst_identity_init),
21527 (gst_identity_event), (gst_identity_check_perfect),
21528 (gst_identity_transform), (gst_identity_set_property),
21529 (gst_identity_get_property), (gst_identity_change_state):
21530 * gst/elements/gstidentity.h:
21531 * gst/gstelement.c: (gst_element_get_state_func),
21532 (gst_element_lost_state), (gst_element_pads_activate):
21533 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
21534 (gst_pad_check_pull_range), (gst_pad_pull_range):
21536 Simplify pad activation.
21537 Added function to check if pull_range can be performed.
21538 Error out when pulling inactive or flushing pads.
21539 Removed const from refcounted types as it does not make sense.
21540 Simplify pad templates in basesink
21541 Added base class for simple 1-to-1 transforms.
21542 Make identity subclass the base transform.
21544 2005-03-29 Andy Wingo <wingo@pobox.com>
21546 * docs/libs/gstreamer-libs-overrides.txt:
21547 * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
21548 really don't understand what's going on, but like whatever. I want
21551 * docs/gst/Makefile.am:
21552 * docs/libs/Makefile.am: Dist the overrides files.
21554 * check/Makefile.am (clean-local): Remove .libs directories.
21556 * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
21557 elements to EXTRA_DIST, so po/ files are happy.
21559 * po/POTFILES.in: Er, remove it here.
21561 * po/POTFILES: Remove gstspider.c.
21563 * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
21565 * docs/libs/gstreamer-libs-docs.sgml:
21566 * docs/libs/gstreamer-libs-sections.txt: Remove the section on
21569 * tests/complexity.c (main): Set the length of the preroll queue
21570 on the sinks to prevent a lockup.
21572 * libs/gst/dataprotocol/Makefile.am:
21573 * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
21574 the same as the one in check/gst-libs/gdp.c.
21576 * po/, docs/gst/: Commit automatic changes to docs and po files.
21578 * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
21579 the versioned libgstbase.
21581 * check/Makefile.am: Depend on an unversioned gst-register, seems
21582 to make autoconf happier.
21584 * gst/base/Makefile.am: Make libgstbase a versioned lib.
21586 2005-03-28 Wim Taymans <wim@fluendo.com>
21589 * docs/design/part-gstelement.txt:
21590 * docs/design/part-negotiation.txt:
21591 * docs/design/part-preroll.txt:
21592 * docs/design/part-scheduling.txt:
21593 * docs/design/part-states.txt:
21595 * gst/base/Makefile.am:
21597 * gst/base/gstbasesink.c: (gst_basesink_get_template),
21598 (gst_basesink_base_init), (gst_basesink_class_init),
21599 (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
21600 (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
21601 (gst_basesink_set_pad_functions),
21602 (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
21603 (gst_basesink_set_property), (gst_basesink_get_property),
21604 (gst_base_sink_get_template), (gst_base_sink_get_caps),
21605 (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
21606 (gst_basesink_preroll_queue_push),
21607 (gst_basesink_preroll_queue_empty),
21608 (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
21609 (gst_basesink_event), (gst_basesink_get_times),
21610 (gst_basesink_do_sync), (gst_basesink_handle_buffer),
21611 (gst_basesink_chain_unlocked), (gst_basesink_chain),
21612 (gst_basesink_loop), (gst_basesink_activate),
21613 (gst_basesink_change_state):
21614 * gst/base/gstbasesink.h:
21615 * gst/elements/Makefile.am:
21616 * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
21617 (gst_fakesink_class_init), (gst_fakesink_init),
21618 (gst_fakesink_set_property), (gst_fakesink_get_property),
21619 (gst_fakesink_get_times), (gst_fakesink_event),
21620 (gst_fakesink_preroll), (gst_fakesink_render),
21621 (gst_fakesink_change_state):
21622 * gst/elements/gstfakesink.h:
21623 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
21624 (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
21625 * gst/gstelement.c: (gst_element_add_pad),
21626 (gst_element_get_state_func), (gst_element_abort_state),
21627 (gst_element_commit_state), (gst_element_lost_state),
21628 (gst_element_set_state), (gst_element_pads_activate):
21629 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
21630 * gst/gstpipeline.c: (gst_pipeline_send_event),
21631 (gst_pipeline_change_state):
21632 Added state change code.
21633 Added/updated docs.
21634 Added sink base class, make fakesink extend the base class.
21635 Small cleanups in GstPipeline.
21637 2005-03-26 David Schleef <ds@schleef.org>
21639 * gst/Makefile.am: remove gstcpu.[ch]. The gst_cpu functionality
21640 is broken and should be implemented in a different library.
21641 * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
21642 * gst/gst.h: remove gstcpu.h
21643 * gst/gstcpu.c: remove
21644 * gst/gstcpu.h: remove
21645 * gst/Makefile.am.future: Remove this file. It's ancient.
21647 2005-03-25 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
21649 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
21650 (gst_bin_send_event):
21651 Add default event/set_manager handlers. The set_manager handler
21652 takes care that the manager is distributed over kids that were
21653 already in the bin before the manager was set. The event handler
21654 is a utility virtual function that sends the event over all sinks,
21655 so that gst_element_send_event (bin, event); has the expected
21657 * gst/gstpad.c: (gst_pad_event_default):
21658 Re-install default event handling for discontinuities, so that
21659 seeking works without requiring hacks in applications or extra
21661 * gst/gstpipeline.c: (gst_pipeline_class_init),
21662 (gst_pipeline_send_event):
21663 Half hack, half utility: set a pipeline to PAUSED for seek events,
21664 since that is the only way we can guarantee a/v sync. Means that
21665 you can do gst_element_seek (pipeline, method, pos); on a pipeline
21666 and it "just works".
21668 2005-03-25 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
21670 * gst/gstpipeline.c: (gst_pipeline_use_clock):
21671 Lock/unlock mismatch.
21673 2005-03-25 Thomas Vander Stichele <thomas at apestaart dot org>
21675 * docs/faq/gst-uninstalled:
21676 add gst-plugins-base
21677 * docs/gst/Makefile.am:
21678 don't error out until docs are fixed
21679 * docs/gst/gstreamer.types:
21682 2005-03-22 Wim Taymans <wim@fluendo.com>
21684 * check/Makefile.am:
21685 * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
21686 * gst/gststructure.c: (gst_structure_set_valist),
21687 (gst_structure_copy_conditional):
21688 Activated more tests.
21689 Added message test.
21690 Added G_TYPE_POINTER to GstStructure.
21693 2005-03-22 Wim Taymans <wim@fluendo.com>
21695 * docs/design/part-TODO.txt:
21696 * docs/design/part-events.txt:
21697 * docs/design/part-gstbin.txt:
21698 * docs/design/part-gstbus.txt:
21699 * docs/design/part-gstpipeline.txt:
21700 * docs/design/part-messages.txt:
21702 * gst/gstmessage.c:
21705 2005-03-21 Wim Taymans <wim@fluendo.com>
21707 * gst/gstbus.c: (gst_bus_post):
21708 Fix copy-and-paste error.
21710 2005-03-21 Wim Taymans <wim@fluendo.com>
21712 * check/Makefile.am:
21714 * gst/elements/Makefile.am:
21715 * gst/elements/gstelements.c:
21716 * gst/elements/gstfakesink.c: (gst_fakesink_init),
21717 (gst_fakesink_event), (gst_fakesink_chain):
21718 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
21719 (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
21720 (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
21721 (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
21722 (gst_fakesrc_set_property), (gst_fakesrc_get_property),
21723 (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
21724 (gst_fakesrc_loop), (gst_fakesrc_activate),
21725 (gst_fakesrc_change_state):
21726 * gst/elements/gstfakesrc.h:
21727 * gst/elements/gstfilesrc.c: (gst_filesrc_init),
21728 (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
21729 (gst_filesrc_open_file), (gst_filesrc_loop),
21730 (gst_filesrc_activate), (gst_filesrc_change_state),
21731 (filesrc_find_peek), (filesrc_find_suggest),
21732 (gst_filesrc_type_find):
21733 * gst/elements/gstidentity.c: (gst_identity_finalize),
21734 (gst_identity_class_init), (gst_identity_init),
21735 (gst_identity_proxy_getcaps), (identity_queue_push),
21736 (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
21737 (gst_identity_getrange), (gst_identity_chain),
21738 (gst_identity_sink_loop), (gst_identity_src_loop),
21739 (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
21740 (gst_identity_set_property), (gst_identity_get_property),
21741 (gst_identity_change_state):
21742 * gst/elements/gstidentity.h:
21743 * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
21744 (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
21745 (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
21746 (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
21747 (gst_tee_sink_activate):
21748 * gst/elements/gsttee.h:
21749 * gst/gst.c: (gst_register_core_elements), (init_post):
21751 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
21752 (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
21753 (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
21754 (gst_bin_change_state):
21756 * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
21757 (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
21758 (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
21759 (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
21760 (gst_bus_set_sync_handler), (gst_bus_create_watch),
21761 (bus_watch_callback), (bus_watch_destroy),
21762 (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
21763 (poll_timeout), (gst_bus_poll):
21767 * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
21768 (gst_element_post_message), (gst_element_message_full),
21769 (gst_element_get_state_func), (gst_element_get_state),
21770 (gst_element_abort_state), (gst_element_commit_state),
21771 (gst_element_lost_state), (gst_element_set_state),
21772 (gst_element_pads_activate), (gst_element_change_state),
21773 (gst_element_dispose), (gst_element_set_manager_func),
21774 (gst_element_set_bus_func), (gst_element_set_scheduler_func),
21775 (gst_element_set_manager), (gst_element_get_manager),
21776 (gst_element_set_bus), (gst_element_get_bus),
21777 (gst_element_set_scheduler), (gst_element_get_scheduler):
21778 * gst/gstelement.h:
21779 * gst/gstevent.c: (gst_event_new_segment_seek),
21780 (gst_event_new_flush):
21782 * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
21783 (_gst_message_free), (gst_message_get_type), (gst_message_new),
21784 (gst_message_new_eos), (gst_message_new_error),
21785 (gst_message_new_warning), (gst_message_new_tag),
21786 (gst_message_new_state_changed), (gst_message_new_application),
21787 (gst_message_get_structure), (gst_message_parse_tag),
21788 (gst_message_parse_state_changed), (gst_message_parse_error),
21789 (gst_message_parse_warning):
21790 * gst/gstmessage.h:
21791 * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
21792 (gst_real_pad_set_property), (gst_pad_set_active),
21793 (gst_pad_is_active), (gst_pad_set_blocked_async),
21794 (gst_pad_set_blocked), (gst_pad_is_blocked),
21795 (gst_pad_set_activate_function), (gst_pad_set_loop_function),
21796 (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
21797 (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
21798 (gst_pad_unlink), (gst_pad_link_prepare_filtered),
21799 (gst_pad_link_filtered), (gst_pad_relink_filtered),
21800 (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
21801 (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
21802 (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
21803 (gst_pad_set_caps), (gst_pad_configure_sink),
21804 (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
21805 (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
21806 (gst_real_pad_dispose), (gst_real_pad_finalize),
21807 (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
21808 (gst_pad_event_default_dispatch), (gst_pad_event_default),
21809 (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
21811 * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
21812 (pipeline_bus_handler), (gst_pipeline_change_state),
21813 (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
21814 * gst/gstpipeline.h:
21816 * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
21817 (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
21818 (gst_queue_link_src), (gst_queue_bufferalloc),
21819 (gst_queue_locked_flush), (gst_queue_handle_sink_event),
21820 (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
21821 (gst_queue_loop), (gst_queue_handle_src_event),
21822 (gst_queue_handle_src_query), (gst_queue_src_activate),
21823 (gst_queue_change_state):
21825 * gst/gstscheduler.c: (gst_scheduler_init),
21826 (gst_scheduler_dispose), (gst_scheduler_create_task),
21827 (gst_scheduler_factory_create):
21828 * gst/gstscheduler.h:
21829 * gst/gststructure.c: (gst_structure_get_type),
21830 (gst_structure_copy_conditional):
21831 * gst/gststructure.h:
21832 * gst/gsttaginterface.h:
21833 * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
21834 (gst_task_init), (gst_task_dispose), (gst_task_create),
21835 (gst_task_get_state), (gst_task_start), (gst_task_stop),
21841 * gst/schedulers/Makefile.am:
21842 * gst/schedulers/cothreads_compat.h:
21843 * gst/schedulers/entryscheduler.c:
21844 * gst/schedulers/faircothreads.c:
21845 * gst/schedulers/faircothreads.h:
21846 * gst/schedulers/fairscheduler.c:
21847 * gst/schedulers/gstbasicscheduler.c:
21848 * gst/schedulers/gstoptimalscheduler.c:
21849 * gst/schedulers/gthread-cothreads.h:
21850 * gst/schedulers/threadscheduler.c:
21851 (gst_thread_scheduler_task_get_type),
21852 (gst_thread_scheduler_task_class_init),
21853 (gst_thread_scheduler_task_init),
21854 (gst_thread_scheduler_task_start),
21855 (gst_thread_scheduler_task_stop),
21856 (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
21857 (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
21858 (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
21859 (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
21861 * libs/gst/Makefile.am:
21862 * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
21863 * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
21864 (gst_file_pad_parent_set):
21865 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
21866 (gst_dp_event_from_packet):
21867 * tests/complexity.c: (main):
21868 * tests/mass_elements.c: (main):
21869 * testsuite/states/locked.c: (message_received), (main):
21870 * testsuite/states/parent.c: (main):
21871 * tools/gst-inspect.c: (print_element_flag_info),
21872 (print_implementation_info), (print_pad_info):
21873 * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
21875 * tools/gst-md5sum.c: (event_loop), (main):
21876 * tools/gst-typefind.c: (main):
21877 * tools/gst-xmlinspect.c: (print_element_info):
21879 Added GstBus for mainloop integration.
21880 Added GstMessage for sending notifications on the bus.
21881 Added GstTask as an abstraction for pipeline entry points.
21883 Removed Schedulers.
21884 Simplified GstQueue for multithreaded core.
21885 Made _link threadsafe, removed old capsnego.
21886 Added STREAM_LOCK and PREROLL_LOCK in GstPad.
21887 Added pad blocking functions.
21888 Reworked scheduling functions in GstPad to prepare for
21889 scheduling updates soon.
21890 Moved events out of data stream.
21891 Simplified GstEvent types.
21892 Added return values to push/pull.
21893 Removed clocking from GstElement.
21894 Added prototypes for state change function for next merge.
21895 Removed iterate from bins and state change management.
21896 Fixed some elements, disabled others for now.
21897 Fixed -inspect and -launch.
21898 Added check for GstBus.
21900 2005-03-10 Wim Taymans <wim@fluendo.com>
21902 * docs/design/part-MT-refcounting.txt:
21903 * docs/design/part-clocks.txt:
21904 * docs/design/part-gstelement.txt:
21905 * docs/design/part-gstobject.txt:
21906 * docs/design/part-standards.txt:
21907 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
21908 (gst_bin_remove_func), (gst_bin_remove):
21912 * testsuite/clock/clock1.c: (main):
21913 * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
21915 * testsuite/dlopen/loadgst.c: (do_test):
21916 * testsuite/refcounting/bin.c: (add_remove_test1),
21917 (add_remove_test2), (main):
21918 * testsuite/refcounting/element.c: (main):
21919 * testsuite/refcounting/element_pad.c: (main):
21920 * testsuite/refcounting/pad.c: (main):
21921 * tools/gst-launch.c: (sigint_handler_sighandler):
21922 * tools/gst-typefind.c: (main):
21924 Added doc about clock.
21925 removed gst_bin_iterate_recurse_up(), marked methods
21927 Fix more testsuites.
21929 2005-03-09 Wim Taymans <wim@fluendo.com>
21931 * gst/gstpad.c: (gst_pad_get_direction),
21932 (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
21933 (gst_pad_collect_valist):
21934 * testsuite/bins/interface.c: (main):
21935 * testsuite/caps/audioscale.c: (test_caps):
21936 * testsuite/caps/caps.c: (test1), (test2), (test3):
21937 * testsuite/caps/deserialize.c: (main):
21938 * testsuite/caps/enumcaps.c: (main):
21939 * testsuite/caps/filtercaps.c: (main):
21940 * testsuite/caps/intersect2.c: (main):
21941 * testsuite/caps/random.c: (main):
21942 * testsuite/caps/renegotiate.c: (my_fixate), (main):
21943 * testsuite/caps/sets.c: (check_caps):
21944 * testsuite/caps/simplify.c: (check_caps), (main):
21945 * testsuite/caps/subtract.c: (check_caps):
21946 Fix _pad_get_direction wrt ghostpads.
21947 Fix caps testsuite.
21949 2005-03-09 Wim Taymans <wim@fluendo.com>
21951 * check/Makefile.am:
21952 * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
21953 * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
21954 (ok_callback), (error_callback), (gst_systemclock_suite), (main):
21955 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
21956 (gst_bin_set_clock_func), (gst_bin_get_clock_func),
21957 (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
21958 (gst_bin_remove), (gst_bin_iterate_recurse_up),
21959 (bin_element_is_sink), (gst_bin_iterate_sinks),
21960 (gst_bin_iterate_all_by_interface):
21962 * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
21963 (gst_element_change_state), (gst_element_dispose),
21964 (gst_element_finalize), (gst_element_set_loop_function):
21965 * gst/gstelement.h:
21966 * gst/gstiterator.c: (find_custom_fold_func):
21967 * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
21968 (gst_pad_collectv), (gst_pad_collect_valist),
21969 (gst_pad_template_new):
21970 * gst/gstpipeline.c: (gst_pipeline_class_init),
21971 (gst_pipeline_dispose), (gst_pipeline_set_property),
21972 (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
21973 (gst_pipeline_get_clock), (gst_pipeline_use_clock),
21974 (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
21976 * gst/schedulers/entryscheduler.c:
21977 * gst/schedulers/gstbasicscheduler.c:
21978 (gst_basic_scheduler_cothreaded_chain),
21979 (gst_basic_scheduler_chain_add_element):
21980 * testsuite/bins/interface.c: (main):
21982 Added GstSystemClock test.
21983 Implemented clock distribution code in GstBin.
21984 Implemented iterate sinks method for future use.
21985 Rearranged gstelement.h
21986 Fix GstIterator comparison bug.
21987 Moved some code to GstPipeline, mostly clocking related.
21989 2005-03-09 Wim Taymans <wim@fluendo.com>
21992 * gst/gst_private.h:
21993 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
21994 (gst_bin_remove_func), (gst_bin_remove),
21995 (gst_bin_get_by_name_recurse_up):
21996 * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
21997 (gst_clock_id_compare_func), (gst_clock_id_wait),
21998 (gst_clock_id_wait_async), (gst_clock_init),
21999 (gst_clock_adjust_unlocked), (gst_clock_get_time):
22000 * gst/gstelement.h:
22001 * gst/gstinfo.c: (_gst_debug_init):
22003 * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
22004 (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
22006 Bump version number, we're now 0.9.0
22007 Add future debugging category.
22008 Fix NULL _unref() in _get_by_name_recurse_up
22009 Rearrange gstpad.h.
22012 2005-03-08 Wim Taymans <wim@fluendo.com>
22014 * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
22015 * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
22016 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
22017 * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
22018 * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
22019 * gst/elements/gstfilesink.c: (gst_filesink_class_init):
22020 * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
22021 * gst/elements/gstidentity.c: (gst_identity_class_init):
22022 * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
22023 * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
22024 * gst/elements/gstshaper.c: (gst_shaper_class_init):
22025 * gst/elements/gststatistics.c: (gst_statistics_class_init):
22026 * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
22028 * gst/gstelement.c: (gst_element_class_init),
22029 (gst_element_base_class_init), (gst_element_init),
22030 (gst_element_get_random_pad), (gst_element_wait_state_change),
22031 (gst_element_change_state), (gst_element_dispose),
22032 (gst_element_finalize), (gst_element_set_loop_function):
22033 * gst/gstelement.h:
22034 * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
22035 * gst/gstthread.c: (gst_thread_class_init),
22036 (gst_thread_release_children_locks), (gst_thread_change_state):
22037 * gst/schedulers/gstbasicscheduler.c:
22038 (gst_basic_scheduler_loopfunc_wrapper),
22039 (gst_basic_scheduler_chain_wrapper),
22040 (gst_basic_scheduler_src_wrapper),
22041 (gst_basic_scheduler_remove_element):
22042 * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
22043 Remove threadsafe properties. Fix elements because GObject
22044 complains when installing a property before declaring a
22045 set/get_property handler.
22046 Rearrange gstelement.h file, use STATE macros for state locks.
22047 Free mutexes in the finalize method instead of dispose.
22049 2005-03-08 Wim Taymans <wim@fluendo.com>
22051 * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
22052 * gst/gstthread.c: (gst_thread_release_children_locks):
22053 Added parentage check.
22054 Fix build og GstThread again.
22056 2005-03-08 Wim Taymans <wim@fluendo.com>
22058 * docs/design/part-MT-refcounting.txt:
22059 * docs/design/part-conventions.txt:
22060 * docs/design/part-gstobject.txt:
22061 * docs/design/part-relations.txt:
22062 * docs/design/part-standards.txt:
22063 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
22064 (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
22065 (gst_bin_get_by_name), (gst_bin_get_by_interface),
22066 (gst_bin_iterate_all_by_interface):
22069 * gst/gstelement.c: (gst_element_class_init),
22070 (gst_element_change_state), (gst_element_set_loop_function):
22071 * gst/gstelement.h:
22072 * gst/gstiterator.c:
22073 * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
22074 (gst_object_unref), (gst_object_sink), (gst_object_dispose),
22075 (gst_object_dispatch_properties_changed), (gst_object_set_name),
22076 (gst_object_set_parent), (gst_object_unparent),
22077 (gst_object_check_uniqueness):
22079 Docs updates, clean up some headers.
22081 2005-03-07 Wim Taymans <wim@fluendo.com>
22083 * check/.cvsignore:
22084 * check/Makefile.am:
22085 * check/gst-libs/.cvsignore:
22086 * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
22087 * check/gst/.cvsignore:
22088 * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
22089 (START_TEST), (gstbus_suite), (main):
22090 * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
22091 * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
22092 (gst_data_suite), (main):
22093 * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
22094 (add_fold_func), (gstiterator_suite), (main):
22095 * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
22096 (thread_name_object), (thread_name_object_default),
22097 (gst_object_name_compare), (gst_object_suite), (main):
22098 * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
22099 (gst_pad_suite), (main):
22100 * check/gstcheck.c: (gst_check_log_message_func),
22101 (gst_check_log_critical_func), (gst_check_init):
22102 * check/gstcheck.h:
22103 * check/pipelines/simple_launch_lines.c: (setup_pipeline),
22104 (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
22107 2005-03-07 Wim Taymans <wim@fluendo.com>
22109 * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
22110 (gst_list_iterator_next), (gst_list_iterator_resync),
22111 (gst_list_iterator_free), (gst_iterator_new_list),
22112 (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
22113 (gst_iterator_free), (gst_iterator_push), (filter_next),
22114 (filter_resync), (filter_uninit), (filter_free),
22115 (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
22116 (gst_iterator_foreach), (find_custom_fold_func),
22117 (gst_iterator_find_custom):
22118 * gst/gstiterator.h:
22119 Added missing files.
22121 2005-03-07 Wim Taymans <wim@fluendo.com>
22125 * docs/design/part-MT-refcounting.txt:
22126 * docs/design/part-conventions.txt:
22127 * docs/design/part-gstobject.txt:
22128 * docs/design/part-relations.txt:
22129 * examples/mixer/mixer.c: (main):
22130 * examples/thread/thread.c: (eos), (main):
22132 * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
22133 * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
22134 (gst_spider_plug_from_srcpad):
22135 * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
22136 (gst_spider_identity_change_state),
22137 (gst_spider_identity_sink_loop_type_finding):
22138 * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
22139 * gst/elements/gstidentity.c: (gst_identity_init):
22140 * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
22141 (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
22142 * gst/elements/gsttypefindelement.c: (free_entry):
22145 * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
22146 (gst_bin_set_clock_func), (gst_bin_auto_clock),
22147 (gst_bin_set_index), (gst_bin_set_element_sched),
22148 (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
22149 (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
22150 (gst_bin_iterate_elements), (iterate_child_recurse),
22151 (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
22152 (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
22153 (compare_interface), (gst_bin_get_by_interface),
22154 (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
22156 * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
22157 (gst_buffer_default_free), (gst_buffer_default_copy),
22158 (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
22159 (gst_buffer_create_sub):
22161 * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
22162 (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
22163 (gst_caps_unref), (gst_static_caps_get),
22164 (gst_caps_remove_and_get_structure), (gst_caps_append),
22165 (gst_caps_append_structure), (gst_caps_remove_structure),
22166 (gst_caps_copy_nth), (gst_caps_set_simple),
22167 (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
22168 (gst_structure_is_equal_foreach), (gst_caps_is_subset),
22169 (gst_caps_structure_intersect_field), (gst_caps_intersect),
22170 (gst_caps_structure_subtract_field), (gst_caps_subtract),
22171 (gst_caps_normalize_foreach), (gst_caps_compare_structures),
22172 (gst_caps_structure_figure_out_union),
22173 (gst_caps_switch_structures), (gst_caps_do_simplify),
22174 (gst_caps_replace), (gst_caps_from_string),
22175 (gst_caps_copy_conditional):
22177 * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
22178 (_gst_clock_id_free), (gst_clock_id_unref),
22179 (gst_clock_id_compare_func), (gst_clock_id_wait),
22180 (gst_clock_id_wait_async), (gst_clock_class_init),
22181 (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
22182 (gst_clock_get_time), (gst_clock_set_time_adjust),
22183 (gst_clock_set_property), (gst_clock_get_property):
22186 * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
22187 * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
22189 * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
22190 (gst_element_requires_clock), (gst_element_provides_clock),
22191 (gst_element_set_clock), (gst_element_clock_wait),
22192 (gst_element_wait), (gst_element_set_time_delay),
22193 (gst_element_is_indexable), (gst_element_add_pad),
22194 (gst_element_add_ghost_pad), (gst_element_remove_pad),
22195 (pad_compare_name), (gst_element_get_static_pad),
22196 (gst_element_request_pad), (gst_element_get_request_pad),
22197 (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
22198 (gst_element_class_get_pad_template_list),
22199 (gst_element_class_get_pad_template), (gst_element_error_func),
22200 (gst_element_get_random_pad), (gst_element_get_event_masks),
22201 (gst_element_send_event), (gst_element_seek),
22202 (gst_element_get_query_types), (gst_element_query),
22203 (gst_element_get_formats), (gst_element_convert),
22204 (gst_element_is_locked_state), (gst_element_set_locked_state),
22205 (gst_element_sync_state_with_parent), (gst_element_change_state),
22206 (gst_element_finalize), (gst_element_yield),
22207 (gst_element_interrupt), (gst_element_set_scheduler),
22208 (gst_element_get_scheduler), (gst_element_set_loop_function):
22209 * gst/gstelement.h:
22211 * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
22212 (gst_format_get_by_nick), (gst_format_get_details),
22213 (gst_format_iterate_definitions):
22215 * gst/gstindex.c: (gst_index_gtype_resolver):
22218 * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
22219 (gst_mem_chunk_free):
22220 * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
22221 (gst_object_ref), (gst_object_unref), (gst_object_sink),
22222 (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
22223 (gst_object_dispatch_properties_changed),
22224 (gst_object_set_name_default), (gst_object_set_name),
22225 (gst_object_get_name), (gst_object_set_name_prefix),
22226 (gst_object_get_name_prefix), (gst_object_set_parent),
22227 (gst_object_get_parent), (gst_object_unparent),
22228 (gst_object_check_uniqueness), (gst_object_save_thyself),
22229 (gst_object_restore_thyself), (gst_object_real_restore_thyself),
22230 (gst_object_set_property), (gst_object_get_property),
22231 (gst_object_get_path_string):
22233 * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
22234 (gst_real_pad_init), (gst_real_pad_get_property),
22235 (gst_pad_custom_new), (gst_pad_get_direction),
22236 (gst_pad_set_active), (gst_pad_is_active),
22237 (gst_pad_set_event_function), (gst_pad_is_linked),
22238 (gst_pad_link_free), (gst_pad_link_intersect),
22239 (gst_pad_link_fixate), (gst_pad_set_caps),
22240 (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
22241 (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
22242 (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
22243 (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
22244 (gst_pad_get_caps), (gst_pad_peer_get_caps),
22245 (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
22246 (gst_pad_realize), (gst_pad_get_allowed_caps),
22247 (gst_real_pad_dispose), (gst_real_pad_finalize),
22248 (gst_pad_collectv), (gst_pad_collect_valist),
22249 (gst_pad_template_dispose), (gst_pad_template_new),
22250 (gst_pad_get_internal_links):
22252 * gst/gstpipeline.c: (gst_pipeline_dispose),
22253 (gst_pipeline_change_state):
22254 * gst/gstpipeline.h:
22256 * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
22257 (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
22258 * gst/gstpluginfeature.h:
22259 * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
22260 * gst/gstquery.c: (_gst_query_type_initialize),
22261 (gst_query_type_register), (gst_query_type_get_by_nick),
22262 (gst_query_type_get_details), (gst_query_type_iterate_definitions):
22264 * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
22265 * gst/gstscheduler.c: (gst_scheduler_add_element),
22266 (gst_scheduler_factory_create):
22267 * gst/gststructure.c: (gst_structure_set_parent_refcount),
22268 (gst_structure_free), (gst_structure_set_name),
22269 (gst_structure_id_set_value), (gst_structure_set_value),
22270 (gst_structure_set_valist), (gst_structure_remove_field),
22271 (gst_structure_remove_fields),
22272 (gst_structure_remove_fields_valist),
22273 (gst_structure_remove_all_fields), (gst_structure_foreach),
22274 (gst_structure_map_in_place),
22275 (gst_caps_structure_fixate_field_nearest_int),
22276 (gst_caps_structure_fixate_field_nearest_double):
22277 * gst/gststructure.h:
22278 * gst/gstsystemclock.c: (gst_system_clock_class_init),
22279 (gst_system_clock_init), (gst_system_clock_dispose),
22280 (gst_system_clock_async_thread),
22281 (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
22282 (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
22283 * gst/gstsystemclock.h:
22284 * gst/gsttag.c: (gst_tag_list_add_value_internal),
22285 (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
22286 * gst/gsttaginterface.c:
22287 * gst/gstthread.c: (gst_thread_dispose),
22288 (gst_thread_release_children_locks), (gst_thread_change_state),
22289 (gst_thread_main_loop):
22290 * gst/gsttrashstack.h:
22291 * gst/gsttypefind.c: (gst_type_find_factory_dispose):
22293 * gst/gstutils.c: (gst_element_get_compatible_pad_template),
22294 (gst_element_request_pad), (gst_element_get_pad_from_template),
22295 (gst_element_request_compatible_pad),
22296 (gst_element_get_compatible_pad_filtered),
22297 (gst_element_get_compatible_pad), (gst_element_state_get_name),
22298 (gst_element_link_pads_filtered), (gst_element_link_filtered),
22299 (gst_element_link_many), (gst_element_link),
22300 (gst_element_link_pads), (gst_element_unlink_pads),
22301 (gst_element_unlink_many), (gst_element_unlink),
22302 (gst_pad_can_link_filtered), (gst_pad_can_link),
22303 (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
22304 (gst_object_default_error), (gst_bin_add_many),
22305 (gst_bin_remove_many), (gst_element_populate_std_props),
22306 (gst_element_class_install_std_props), (gst_buffer_merge),
22307 (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
22308 (link_fold_func), (gst_pad_proxy_setcaps):
22310 * gst/gstvalue.c: (gst_value_deserialize_string):
22311 * gst/parse/grammar.y:
22312 * gst/schedulers/gstbasicscheduler.c:
22313 (gst_basic_scheduler_cothreaded_chain),
22314 (gst_basic_scheduler_chain_recursive_add),
22315 (gst_basic_scheduler_pad_link):
22316 * gst/schedulers/gstoptimalscheduler.c:
22317 (get_group_schedule_function),
22318 (gst_opt_scheduler_state_transition),
22319 (gst_opt_scheduler_add_element), (element_get_reachables_func):
22320 * libs/gst/bytestream/bytestream.c:
22321 * libs/gst/dataprotocol/dataprotocol.c:
22322 (gst_dp_header_from_buffer):
22325 * tests/threadstate/threadstate2.c: (eos):
22326 * tools/gst-compprep.c: (main):
22327 * tools/gst-inspect.c: (print_field), (print_element_flag_info),
22328 (print_pad_info), (print_children_info):
22329 * tools/gst-launch.c: (idle_func), (main):
22330 * tools/gst-md5sum.c: (idle_func), (main):
22331 * tools/gst-xmlinspect.c: (print_element_info):
22332 First THREADED backport attempt, focusing on adding locks and
22333 making sure the API is threadsafe. Needs more work. More docs
22336 2005-02-24 Andy Wingo <wingo@pobox.com>
22338 * tests/bench-complexity.scm:
22339 * tests/complexity.gnuplot: New files, good for running complexity
22342 * tests/Makefile.am:
22343 * tests/complexity.c: New test, sets up N elements, at each level
22344 teeing into M streams per element. Eeeenteresting.
22346 * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
22347 benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
22348 running bench-mass_elements.scm.
22350 * tests/bench-mass_elements.scm: New script, runs mass_elements
22351 for various numbers of identities, outputting the results to a
22352 file. Requires guile 1.6. Just for testing.
22354 2005-02-23 Thomas Vander Stichele <thomas at apestaart dot org>
22356 * gst/schedulers/fairscheduler.c:
22357 compile with debug disabled
22359 2005-02-22 Thomas Vander Stichele <thomas at apestaart dot org>
22362 hunting season on 0.9 is now OPEN