1 2007-09-24 Tim-Philipp Müller <tim at centricular dot net>
3 * docs/faq/getting.xml:
4 Add Q+A about different GStreamer versions (#364056).
6 2007-09-24 Wim Taymans <wim.taymans@gmail.com>
8 * libs/gst/base/gstbasesink.c: (gst_base_sink_query_latency),
9 (gst_base_sink_event), (gst_base_sink_change_state):
10 Return correct gboolean from query function.
12 2007-09-24 Wim Taymans <wim.taymans@gmail.com>
14 * libs/gst/base/gstbasesink.c: (gst_base_sink_query_latency),
15 (gst_base_sink_event), (gst_base_sink_query),
16 (gst_base_sink_change_state):
17 Simplify latency query.
18 When not synchronizing, we can report latency without querying the peer
19 element.
21 2007-09-24 Wim Taymans <wim.taymans@gmail.com>
23 * gst/gstobject.h:
24 * gst/gstvalue.c:
25 Fix small typos in the docs.
27 2007-09-24 Wim Taymans <wim.taymans@gmail.com>
29 * docs/design/draft-latency.txt:
30 * docs/design/draft-push-pull.txt:
31 * docs/design/draft-tagreading.txt:
32 * docs/design/part-MT-refcounting.txt:
33 * docs/design/part-activation.txt:
34 * docs/design/part-block.txt:
35 * docs/design/part-element-source.txt:
36 * docs/design/part-events.txt:
37 * docs/design/part-gstbin.txt:
38 * docs/design/part-gstelement.txt:
39 * docs/design/part-gstobject.txt:
40 * docs/design/part-gstpipeline.txt:
41 * docs/design/part-messages.txt:
42 * docs/design/part-preroll.txt:
43 * docs/design/part-push-pull.txt:
44 * docs/design/part-qos.txt:
45 * docs/design/part-query.txt:
46 * docs/design/part-scheduling.txt:
47 * docs/design/part-seeking.txt:
48 * docs/design/part-segments.txt:
49 * docs/design/part-states.txt:
50 Documentation updates and typo fixes.
52 2007-09-23 Tim-Philipp Müller <tim at centricular dot net>
54 * plugins/elements/gstfakesink.c:
55 Add some debug text to error message to indicate that
56 we errored out on request.
58 * tools/gst-launch.c:
59 When the state change to PLAYING fails, check for an
60 error message on the bus and print it.
62 2007-09-22 Thomas Vander Stichele <thomas at apestaart dot org>
64 translated by: Jorge González González <aloriel@gmail.com>
66 * po/LINGUAS:
67 * po/es.po:
68 Added Spanish translation.
70 2007-09-21 Wim Taymans <wim.taymans@gmail.com>
72 * plugins/elements/gstqueue.c: (gst_queue_push_one):
73 Fix printf arguments.
75 2007-09-20 Stefan Kost <ensonic@users.sf.net>
77 * tests/check/generic/states.c:
78 Improved state change unit test.
80 2007-09-20 Stefan Kost <ensonic@users.sf.net>
82 * gst/gstbin.h:
83 Move priv to the right place.
85 * gst/gstsystemclock.c:
86 Add FIXME: and improve log.
88 * tests/check/Makefile.am:
89 * tests/examples/manual/Makefile.am:
90 Work with all types of registries.
92 2007-09-19 Wim Taymans <wim.taymans@gmail.com>
94 * libs/gst/base/gstbasesrc.c: (gst_base_src_send_event):
95 Don't unref the event after pushing it. Fixes #478401.
97 2007-09-19 Stefan Kost <ensonic@users.sf.net>
99 * .cvsignore:
100 * tests/examples/manual/.cvsignore:
101 Ignore registries in any format.
103 2007-09-19 Tim-Philipp Müller <tim at centricular dot net>
105 * gst/glib-compat-private.h:
106 Add compatibility macro for g_intern_string() for
107 GLib-2.8 (any reason we can't just bump the
108 requirement to at least 2.10?)
110 * gst/gstpadtemplate.h:
111 * gst/gstelementfactory.c:
112 * gst/gstregistryxml.c:
113 * gst/gstregistrybinary.c:
114 Make GstStaticPadTemplate's templ_name field a const gchar * and fix
115 up the internal code accordingly. This shouldn't be a problem, since
116 there is no reason external code could ever assume the string in such
117 a structure is dynamically allocated unless it did that itself; the
118 use of g_strdup() is private to element factories. The new code also
119 saves some memory by putting pad template name strings into the GLib
120 quark table instead of allocating them dynamically.
121 Declaring this field constant fixes warnings with g++-4.2 when using
122 the GST_STATIC_PAD_TEMPLATE macro in c++ code (#478092).
124 2007-09-19 Stefan Kost <ensonic@users.sf.net>
126 * gst/gstelementfactory.c:
127 Release static caps. Fixes #475723.
129 2007-09-18 Tim-Philipp Müller <tim at centricular dot net>
131 * gst/gstinfo.c:
132 * gst/gstinfo.h:
133 Make some internal API take const gchar * instead of just
134 gchar * to avoid compiler warnings with g++-4.2.2 when
135 passing string constants (partially fixes #478092).
137 2007-09-17 Wim Taymans <wim.taymans@gmail.com>
139 * gst/gstbin.c: (bin_query_latency_fold), (gst_bin_query):
140 A latency query fails when one of the sinks fail.
142 * gst/gstelement.c: (gst_element_set_base_time):
143 Improve debugging.
145 2007-09-17 Jan Schmidt - Sun Microsystems <jan.schmidt@sun.com>
147 * gst/gstbin.c: (gst_bin_continue_func):
148 * libs/gst/base/gstbasesrc.c: (gst_base_src_do_sync):
149 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_add_pad_full):
150 * plugins/elements/gstmultiqueue.c: (gst_multi_queue_loop):
152 Fix minor compilation warnings shown with Forte.
154 2007-09-17 Wim Taymans <wim.taymans@gmail.com>
156 * plugins/elements/gstqueue.c: (apply_buffer),
157 (gst_queue_locked_enqueue), (gst_queue_locked_dequeue):
158 Measure queue level based on the diff between head and tail timestamps
159 even when pushing the first buffer.
161 2007-09-14 Wim Taymans <wim.taymans@gmail.com>
163 * libs/gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_flush),
164 (gst_base_sink_event), (gst_base_sink_change_state):
165 Sinks that don't preroll can always be queried for the latency.
166 Don't post ASYNC start when we are not async.
168 2007-09-14 Wim Taymans <wim.taymans@gmail.com>
170 * plugins/elements/gstqueue.c: (gst_queue_locked_enqueue),
171 (gst_queue_handle_sink_event), (gst_queue_chain),
172 (gst_queue_push_one), (gst_queue_handle_src_query),
173 (gst_queue_sink_activate_push), (gst_queue_src_activate_push):
174 * plugins/elements/gstqueue.h:
175 When downstream returns UNEXPECTED from pushing a buffer, don't try to
176 push more buffers but allow pushing of EOS and NEWSEGMENT.
177 Add some more debug info here and there. Fixes #476514.
179 2007-09-14 Wim Taymans <wim.taymans@gmail.com>
181 * libs/gst/base/gstbasesink.c: (gst_base_sink_init),
182 (gst_base_sink_preroll_queue_flush), (gst_base_sink_commit_state),
183 (gst_base_sink_wait_preroll), (gst_base_sink_needs_preroll),
184 (gst_base_sink_set_flushing), (gst_base_sink_query),
185 (gst_base_sink_change_state):
186 Latency query is allowed after we are prerolled. Introduce a new flag
187 for this and stop abusing other variables.
189 2007-09-13 Wim Taymans <wim.taymans@gmail.com>
191 * libs/gst/base/gstbasesrc.c: (gst_base_src_send_event):
192 Push OOB events downstream when we get them in send_event. This allows
193 the application to insert events in the pipeline.
194 Add some more comments.
196 2007-09-13 Wim Taymans <wim.taymans@gmail.com>
198 * gst/gstbin.c: (gst_bin_class_init), (clear_queue),
199 (do_bin_latency), (gst_bin_change_state_func):
200 * gst/gstpipeline.c: (gst_pipeline_change_state):
201 Move latency query from GstPipeline to GstBin so that we can also
202 use it when async-handling is enabled on bins.
204 2007-09-13 Wim Taymans <wim.taymans@gmail.com>
206 * libs/gst/base/gstbasesrc.c: (gst_base_src_query_latency),
207 (gst_base_src_do_sync), (gst_base_src_change_state):
208 Update docs.
209 Clean up the timestamping and syncing code for pseudo live sources.
211 2007-09-13 Tim-Philipp Müller <tim at centricular dot net>
213 Patch by: Steve Fink <sphink gmail com>
215 * docs/manual/appendix-checklist.xml:
216 Mention less -R switch in the section about debug output (#474055).
218 2007-09-13 Wim Taymans <wim.taymans@gmail.com>
220 * plugins/elements/gstqueue.c: (gst_queue_handle_src_query):
221 Queue can latency to the pipeline up to the configured max size in time.
222 Report this fact in the latency query.
224 2007-09-13 Sebastian Dröge <slomo@circular-chaos.org>
226 Patch by: Sebastien Moutte <sebastien at moutte dot net>
228 * libs/gst/controller/gstinterpolation.c:
229 * libs/gst/controller/gstlfocontrolsource.c:
230 Use gst_guint64_to_gdouble() when converting from a uint64 or
231 GstClockTime to double to fix the build on win32. Fixes #474371.
233 2007-09-13 Sebastian Dröge <slomo@circular-chaos.org>
235 * gst/gstbuffer.c: (gst_buffer_finalize):
236 Implement poisoning for GstBuffer if --enable-poisoning is specified.
237 When finalizing a buffer the complete struct is filled with 0xff,
238 thus making a use of the buffer after the final unref impossible.
240 2007-09-13 Sebastian Dröge <slomo@circular-chaos.org>
242 * tests/check/libs/controller.c: (GST_START_TEST):
243 Use fail_unless_equals_int(a, b) instead of
244 fail_unless_equals (a == b) to get better output on failures.
246 2007-09-12 Tim-Philipp Müller <tim at centricular dot net>
248 * tests/check/gst/gsturi.c:
249 Also check for the other file URI variant on win32.
251 2007-09-12 Tim-Philipp Müller <tim at centricular dot net>
253 * gst/gsturi.c: (gst_uri_get_location):
254 If there's no hostname, we want to return 'c:/foo/bar.txt'
255 and not '/c:/foo/bar.txt' on Windows. Fixes #469402.
257 * tests/check/gst/gsturi.c:
258 Unit test for the above and a few more things.
260 2007-09-11 Wim Taymans <wim.taymans@gmail.com>
262 * docs/design/part-live-source.txt:
263 Add docs on how live sources should timestamp.
265 * libs/gst/base/gstbasesrc.c: (gst_base_src_do_sync):
266 Add some more debug info.
267 For subclasses that are live and like to sync, add aditional startup
268 latency to sync time and timestamps so that we timstamp according to the
269 design doc.
271 2007-09-11 Tim-Philipp Müller <tim at centricular dot net>
273 * gst/gstbuffer.c:
274 Also do a g_type_class_ref() for the subbuffer type in
275 the init function.
277 2007-09-11 Wim Taymans <wim.taymans@gmail.com>
279 * docs/gst/gstreamer-sections.txt:
280 * gst/gstpad.c: (gst_pad_peer_query):
281 * gst/gstpad.h:
282 Add function to perform a query on the peer of a pad.
283 API: gst_pad_peer_query()
285 2007-09-11 Stefan Kost <ensonic@users.sf.net>
287 * tests/check/gst/gstsystemclock.c:
288 Cleanup the test a little (use gst-logging and not g_message). Improve
289 test to check if a wait reached the target.
291 2007-09-11 Tim-Philipp Müller <tim at centricular dot net>
293 * docs/libs/gstreamer-libs-sections.txt:
294 Add new API to docs and fix the build.
296 2007-09-10 Wim Taymans <wim.taymans@gmail.com>
298 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
299 (gst_base_src_init), (gst_base_src_set_do_timestamp),
300 (gst_base_src_get_do_timestamp), (gst_base_src_set_property),
301 (gst_base_src_get_property), (gst_base_src_do_sync):
302 * libs/gst/base/gstbasesrc.h:
303 Add property to make the basesrc timestamp buffers based on the current
304 running time.
305 API: GstBaseSrc::do-timestamp
306 API: gst_base_src_set_do_timestamp()
307 API: gst_base_src_get_do_timestamp()
309 2007-09-08 Tim-Philipp Müller <tim at centricular dot net>
311 * docs/random/release:
312 Really make sure translations are up-to-date before
313 a release (#465010).
315 2007-09-07 Sebastian Dröge <slomo@circular-chaos.org>
317 * gst/gstregistrybinary.c: (gst_registry_binary_read_cache):
318 Always destroy the timer, also in error cases.
320 2007-09-05 Wim Taymans <wim.taymans@gmail.com>
322 * docs/manual/highlevel-xml.xml:
323 Fix XML example code. Fixes #472714.
325 2007-09-05 Wim Taymans <wim.taymans@gmail.com>
327 * libs/gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_flush),
328 (gst_base_sink_wait_preroll), (gst_base_sink_needs_preroll),
329 (gst_base_sink_query):
330 Protect eos and have_preroll with the OBJECT lock so we don't need to
331 take the PREROLL lock when querying the latency. Fixes #473846.
333 2007-09-05 Stefan Kost <ensonic@users.sf.net>
335 * gst/gstelement.c:
336 Give some log-messages a category.
338 2007-09-04 Wim Taymans <wim.taymans@gmail.com>
340 * gst/gststructure.c:
341 (gst_structure_fixate_field_nearest_fraction):
342 Fix fraction list fixation code. Take the fraction with the smallest
343 difference with the target instead of the first one in the list.
345 * tests/check/gst/gststructure.c: (GST_START_TEST),
346 (gst_structure_suite):
347 Added test to verify correct fraction list fixation behaviour.
349 2007-09-02 Tim-Philipp Müller <tim at centricular dot net>
351 * win32/common/libgstreamer.def:
352 Export gst_bus_add_signal_watch too.
354 2007-08-30 Wim Taymans <wim.taymans@gmail.com>
356 * docs/libs/gstreamer-libs-sections.txt:
357 Add new methods to docs.
359 * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init),
360 (gst_base_sink_init), (gst_base_sink_set_ts_offset),
361 (gst_base_sink_get_ts_offset), (gst_base_sink_set_property),
362 (gst_base_sink_get_property), (gst_base_sink_wait_clock):
363 * libs/gst/base/gstbasesink.h:
364 Add ts-offset property to fine-tune the synchronisation.
365 API: GstBaseSink::ts-offset property
366 API: gst_base_sink_set_ts_offset()
367 API: gst_base_sink_get_ts_offset()
369 2007-08-29 Wim Taymans <wim.taymans@gmail.com>
371 * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init),
372 (gst_base_sink_init), (gst_base_sink_set_sync),
373 (gst_base_sink_get_sync), (gst_base_sink_set_max_lateness),
374 (gst_base_sink_get_max_lateness), (gst_base_sink_set_qos_enabled),
375 (gst_base_sink_is_qos_enabled), (gst_base_sink_set_async_enabled),
376 (gst_base_sink_is_async_enabled), (gst_base_sink_set_property),
377 (gst_base_sink_get_property), (gst_base_sink_change_state):
378 * libs/gst/base/gstbasesink.h:
379 Add async property to instruct the sink never to inform the parent about
380 ASYNC state changes, update docs.
381 Check argument with g_return_* for the public functions.
382 API: GstBaseSink::async property
383 API: gst_base_sink_set_async_enabled()
384 API: gst_base_sink_is_async_enabled()
386 2007-08-28 Wim Taymans <wim.taymans@gmail.com>
388 * libs/gst/base/gstbasesink.c: (gst_base_sink_loop):
389 Improve debugging.
391 * libs/gst/base/gstbasesrc.c: (gst_base_src_query_latency),
392 (gst_base_src_default_query), (gst_base_src_wait),
393 (gst_base_src_do_sync), (gst_base_src_change_state):
394 Rearrange some code so that we can add support for measuring the
395 startup latency.
397 2007-08-27 Stefan Kost <ensonic@users.sf.net>
399 * docs/random/ensonic/dynlink.txt:
400 More thoughs on this.
402 * plugins/elements/gstcapsfilter.c:
403 Add bugzilla ticket number to FIXME comment.
405 2007-08-24 Wim Taymans <wim.taymans@gmail.com>
407 * docs/design/part-TODO.txt:
408 * docs/design/part-block.txt:
409 Update some docs.
411 2007-08-24 Jan Schmidt <thaytan@mad.scientist.com>
413 * gst/Makefile.am:
414 Revert patch which uses $(gst_headers) instead of $^ because it
415 breaks make dist.
417 2007-08-24 Jan Schmidt <thaytan@mad.scientist.com>
419 * tests/check/gst/gstbin.c: (GST_START_TEST):
420 Fix leaks in the new unit test.
422 2007-08-23 Tim-Philipp Müller <tim at centricular dot net>
424 * gst/gst.c:
425 Don't use GST_INFO before the debug system is actually initialised
426 (shouldn't do any harm, but won't print anything either, so we can
427 just as well remove it).
429 * gst/gstinfo.h:
430 GST_CAT_LEVEL_LOG_valist(), which is our inline helper function for
431 compilers that don't support variadic macros (such as MSVC), should
432 check for debug_level <= __gst_debug_min as well, since that's the
433 function called from all the level-specific GST_CAT_*_LOG_OBJECT()
434 inline helper functions. Should improve performance a bit, but also
435 makes sure uses of GST_INFO et.al are ignored if the debugging
436 system isn't initialised yet (instead of printing an assertion
437 failure).
439 2007-08-23 Stefan Kost <ensonic@users.sf.net>
441 patch by: David Nečas <yeti@physics.muni.cz>
443 * gst/Makefile.am:
444 Replace some non portable makefile constructs.
446 2007-08-21 Stefan Kost <ensonic@users.sf.net>
448 * common/gtk-doc-plugins.mak:
449 Grrrrr. Don't remove the types file on make clean.
451 2007-08-20 Wim Taymans <wim.taymans@gmail.com>
453 * tools/gst-launch.1.in:
454 Add colorspace to example pipeline. Fixes #458274.
456 2007-08-20 Tim-Philipp Müller <tim at centricular dot net>
458 * docs/random/release:
459 The release manager should run 'make download-po' before making a
460 release to make sure translations are up-to-date.
462 * po/LINGUAS:
463 * po/be.po:
464 * po/pl.po:
465 * po/rw.po:
466 Add some new translations.
468 2007-08-17 Wim Taymans <wim.taymans@gmail.com>
470 * tools/gst-launch.c: (event_loop), (main):
471 Don´t try to do any state management when a live pipeline posts
472 buffering messages.
473 Also make the buffering string translatable.
475 2007-08-16 Wim Taymans <wim.taymans@gmail.com>
477 * gst/gstbin.c: (is_eos), (gst_bin_add_func),
478 (bin_handle_async_start), (gst_bin_handle_message_func):
479 Improve debugging.
480 When adding elements, insert messages into the bus of the newly added
481 element and make sure the element is the source of the message. This
482 allows the parent bin to intercept the message and do the
483 right thing. It also avoids us posting ASYNC_START and CLOCK_PROVIDE
484 messages to the app (which is not allowed).
485 Update some docs.
487 * tests/check/gst/gstghostpad.c: (GST_START_TEST):
488 Fix testsuite so that is does not work around messages that should not
489 have been posted in the first place.
491 2007-08-16 Wim Taymans <wim.taymans@gmail.com>
493 * gst/gstbin.c: (add_to_queue), (remove_from_queue), (clear_queue),
494 (update_degree), (gst_bin_sort_iterator_next):
495 Fix annoying bug in the sorted iterator where a sink that is not really
496 a sink (when it has downstream links) screwed up the iterator.
498 * tests/check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
499 Unit test to verify the fix.
501 2007-08-16 Wim Taymans <wim.taymans@gmail.com>
503 * gst/gstmessage.h:
504 Add some more docs for the messages.
506 * libs/gst/base/gstbasesink.c: (gst_base_sink_commit_state),
507 (gst_base_sink_query):
508 Add some more debugging.
510 * tools/gst-launch.c: (event_loop):
511 When interrupting, don't try to set pipeline to PAUSED twice.
513 2007-08-14 Wim Taymans <wim.taymans@gmail.com>
516 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_element_set_state),
517 (bin_handle_async_start), (gst_bin_handle_message_func):
518 Move ASYNC_START message posting to where it belongs, similar to
519 async_done.
520 Don't post ASYNC_START when we are in error.
521 Post ASYNC_START when we added an async element to a bin.
523 2007-08-14 Julien MOUTTE <julien@moutte.net>
525 * gst/gstindex.c: (gst_index_add_association): Fix index entry
526 generation from vargs. Fixes #466595.
528 2007-08-14 Wim Taymans <wim.taymans@gmail.com>
530 * gst/gstbin.c: (gst_bin_element_set_state):
531 Always change the state of a NO_PREROLL element even if it has ASYNC
532 elements inside (in case of a bin).
534 * tests/check/generic/sinks.c: (GST_START_TEST), (gst_sinks_suite):
535 Unit test for this case.
537 2007-08-13 Stefan Kost <ensonic@users.sf.net>
539 * libs/gst/check/gstbufferstraw.c:
540 * libs/gst/check/gstcheck.h:
541 * libs/gst/controller/gstcontroller.c:
542 * libs/gst/controller/gstcontrolsource.h:
543 * libs/gst/controller/gstlfocontrolsource.h:
544 * plugins/elements/gstcapsfilter.h:
545 * plugins/elements/gstfdsink.h:
546 * plugins/elements/gstfdsrc.h:
547 Add more missing docs.
549 2007-08-12 Wim Taymans <wim.taymans@gmail.com>
551 * gst/gststructure.c:
552 Add Since tag to docs.
554 2007-08-12 Wim Taymans <wim.taymans@gmail.com>
556 * docs/gst/gstreamer-sections.txt:
557 * gst/gststructure.c: (gst_structure_get_uint):
558 * gst/gststructure.h:
559 Add function to get uint from a structure.
560 API: gst_structure_get_uint()
562 2007-08-12 Wim Taymans <wim.taymans@gmail.com>
564 * gst/gstcaps.c: (gst_caps_set_simple_valist),
565 (gst_caps_intersect):
566 Fix proper check for simple caps.
568 2007-08-10 Stefan Kost <ensonic@users.sf.net>
570 * docs/gst/Makefile.am:
571 * docs/libs/Makefile.am:
572 Remove cruft and do some cleanups.
574 * docs/gst/gstreamer-docs.sgml:
575 * docs/libs/gstreamer-libs-docs.sgml:
576 Prepare for comming gtkdoc features (rebase against online docs).
578 2007-08-10 Michael Smith <msmith@fluendo.com>
580 * docs/gst/gstreamer-sections.txt:
581 Add gst_registry_add_path to docs.
583 2007-08-10 Michael Smith <msmith@fluendo.com>
585 * gst/gstregistry.h:
586 Add gst_registry_add_path, which was missing from this header.
588 2007-08-10 Tim-Philipp Müller <tim at centricular dot net>
590 * libs/gst/controller/gstlfocontrolsource.c:
591 Printf format fix.
593 2007-08-09 Philippe Kalaf <philippe.kalaf@collabora.co.uk>
595 * libs/gst/base/gstbasesink.c:
596 Don't send an async_start message during downwards state change if
597 target state is less than READY
599 2007-08-09 Thomas Vander Stichele <thomas at apestaart dot org>
601 translated by: Gabor Kelemen <kelemeng@gnome.hu>
603 * po/LINGUAS:
604 * po/hu.po:
605 Added Hungarian translation.
607 2007-08-09 Thomas Vander Stichele <thomas at apestaart dot org>
609 * po/fi.po:
610 * po/it.po:
611 * po/nl.po:
612 * po/sv.po:
613 * po/uk.po:
614 Updated translations.
616 2007-08-07 Jan Schmidt <thaytan@mad.scientist.com>
618 * libs/gst/controller/Makefile.am:
619 Dist gstlfocontrolsourceprivate.h
621 2007-08-07 Jan Schmidt <thaytan@mad.scientist.com>
623 * docs/libs/gstreamer-libs.types:
624 Don't register the enum type gst_lfo_waveform_get_type() in the
625 .types file - only GObject derived types belong.
627 2007-08-07 Wim Taymans <wim.taymans@gmail.com>
629 Patch by: <arenevier at fdn dot fr>
631 * gst/gstbuffer.h:
632 Remove comma from last element in enum to avoid compile errors when
633 using -pendantic. Fixes #464366.
635 2007-08-07 Wim Taymans <wim.taymans@gmail.com>
637 * docs/design/part-TODO.txt:
638 Add some more TODO items
640 * gst/gstbin.c: (find_message), (gst_bin_change_state_func):
641 Improve debugging.
643 * gst/gstcaps.c: (gst_caps_intersect):
644 Optimize trivial intersection case between identical caps pointers.
646 * gst/gstelement.c: (gst_element_continue_state),
647 (gst_element_set_state_func):
648 * gst/gstpad.c:
649 Fix spelling and grammar mistakes.
651 2007-08-05 Stefan Kost <ensonic@users.sf.net>
653 * po/POTFILES.in:
654 * po/POTFILES.skip:
655 Update POTFILES. Fixes #461599.
657 2007-08-03 Sebastian Dröge <slomo@circular-chaos.org>
659 * gst/gst.c:
660 Fix confusing typo in debug output.
662 2007-08-03 Sebastian Dröge <slomo@circular-chaos.org>
664 reviewed by: Stefan Kost <ensonic@users.sf.net>
666 * libs/gst/controller/Makefile.am:
667 * libs/gst/controller/gstlfocontrolsource.c: (_calculate_pos),
668 (gst_lfo_waveform_get_type), (gst_lfo_control_source_reset),
669 (gst_lfo_control_source_new),
670 (gst_lfo_control_source_set_waveform),
671 (gst_lfo_control_source_bind), (gst_lfo_control_source_init),
672 (gst_lfo_control_source_finalize),
673 (gst_lfo_control_source_dispose),
674 (gst_lfo_control_source_set_property),
675 (gst_lfo_control_source_get_property),
676 (gst_lfo_control_source_class_init):
677 * libs/gst/controller/gstlfocontrolsource.h:
678 * libs/gst/controller/gstlfocontrolsourceprivate.h:
679 API: Add GstLFOControlSource, a control source that gives values
680 for specific timestamps based on several periodic waveforms.
681 Fixes #459717.
683 * tests/check/libs/controller.c: (GST_START_TEST),
684 (gst_controller_suite):
685 * docs/libs/gstreamer-libs-docs.sgml:
686 * docs/libs/gstreamer-libs-sections.txt:
687 * docs/libs/gstreamer-libs.types:
688 Add documentation and unit tests for GstLFOControlSource.
690 2007-08-03 Jan Schmidt <thaytan@mad.scientist.com>
692 * configure.ac:
693 Back to CVS
695 === release 0.10.14 ===
697 2007-08-03 Jan Schmidt <thaytan@mad.scientist.com>
699 * configure.ac:
700 releasing 0.10.14, "Breathing Vacuum"
702 2007-08-02 Tim-Philipp Müller <tim at centricular dot net>
704 * gst/gstelement.c: (gst_element_class_set_details_simple):
705 * gst/gstelement.h:
706 Make strings passed to gst_element_class_set_details_simple()
707 constant, as they should be (#462752).
709 2007-08-02 Wim Taymans <wim.taymans@gmail.com>
711 * gst/gstbin.c: (gst_bin_change_state_func),
712 (bin_handle_async_done), (gst_bin_handle_message_func):
713 Don't forget about the fact that some element went ASYNC even after a
714 resync. This makes us post the ASYNC_DONE message correctly.
715 Fixes #462558.
717 2007-07-31 Jan Schmidt <thaytan@mad.scientist.com>
719 * gst/gstregistry.c: (gst_registry_add_feature):
720 When replacing an existing feature in the registry, make sure to
721 continue holding a reference until we've replaced the name string
722 within our feature hash table. Make sure to use g_hash_table_replace
723 instead of g_hash_table_insert to ensure the new name string is used
724 as a key instead of the old one that we're about to free.
725 Fixes: #462085
727 2007-07-31 Jan Schmidt <thaytan@mad.scientist.com>
729 * gst/gstpluginfeature.c: (gst_plugin_feature_finalize),
730 (gst_plugin_feature_set_name):
731 Revert patch from #459466 until after the release and we can work
732 out exactly what the problem is (if any).
734 2007-07-26 Tim-Philipp Müller <tim at centricular dot net>
736 * docs/gst/gstreamer-sections.txt:
737 * gst/gsttaglist.c:
738 * gst/gsttaglist.h:
739 API: add GST_TAG_LICENSE_URI and GST_TAG_COPYRIGHT_URI (#451939).
741 2007-07-26 Jan Schmidt <thaytan@mad.scientist.com>
743 * docs/libs/Makefile.am:
744 Include our build-prefix libs and includes before the generic ones to
745 avoid linking against the installed libs when we want the build-tree
746 ones.
748 2007-07-26 Tim-Philipp Müller <tim at centricular dot net>
750 Patch by: Steve Fink <sphink gmail com>
752 * docs/pwg/building-testapp.xml:
753 Mention that GST_PLUGIN_PATH or --gst-plugin-path might be needed
754 if people try to build or install the example from the plugin
755 template against a GStreamer from package using the configure
756 defaults.
758 2007-07-25 Tim-Philipp Müller <tim at centricular dot net>
760 Patch by: Steve Fink <sphink gmail com>
762 * tools/gst-inspect.1.in:
763 Document --print-all and --print-plugin-auto-install-info command
764 line options in man page.
766 2007-07-25 Wim Taymans <wim.taymans@gmail.com>
768 * docs/gst/gstreamer-sections.txt:
769 Add docs for new api function.
771 2007-07-25 Wim Taymans <wim.taymans@gmail.com>
773 * gst/gstelementfactory.c: (gst_element_factory_has_interface):
774 * gst/gstelementfactory.h:
775 API: gst_element_factory_has_interface()
776 Added method to check if an element factory implements a named
777 interface.
779 2007-07-25 Stefan Kost <ensonic@users.sf.net>
781 * configure.ac:
782 * docs/gst/gstreamer.types.in:
783 Another conditional doc check.
785 * gst/gstmessage.c:
786 * gst/gstparamspecs.h:
787 * gst/gstregistrybinary.c: (gst_registry_binary_read_cache):
788 * gst/gstvalue.c:
789 * gst/gstxml.h:
790 API-doc fixes.
792 2007-07-24 Stefan Kost <ensonic@users.sf.net>
794 * gst/gstregistrybinary.c: (gst_registry_binary_check_magic),
795 (gst_registry_binary_load_feature),
796 (gst_registry_binary_load_plugin),
797 (gst_registry_binary_read_cache):
798 Print error just once and with additional info.
800 2007-07-24 Stefan Kost <ensonic@users.sf.net>
802 * libs/gst/base/gsttypefindhelper.c: (helper_find_peek),
803 (helper_find_suggest), (helper_find_get_length),
804 (gst_type_find_helper_get_range), (buf_helper_find_suggest),
805 (gst_type_find_helper_for_buffer):
806 Cleanup the typefindhelper code and add private doc comments.
808 2007-07-24 Edward Hervey <bilboed@bilboed.com>
810 * plugins/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
811 (gst_capsfilter_transform_size), (gst_capsfilter_prepare_buf):
812 Fix capsfilter for cases where the caps set on capsfilter will provide
813 additional information.
814 Fixes #449197
816 2007-07-24 Stefan Kost <ensonic@users.sf.net>
818 * gst/gsttypefindfactory.c:
819 Fix docs that recommened wrong function to use.
821 2007-07-23 Stefan Kost <ensonic@users.sf.net>
823 * tools/gst-inspect.c: (print_plugin_features):
824 Also give media-type for typefinders in element output.
826 2007-07-23 Stefan Kost <ensonic@users.sf.net>
828 * gst/gstregistry.c: (gst_registry_init), (gst_registry_finalize),
829 (gst_registry_remove_features_for_plugin_unlocked),
830 (gst_registry_add_feature), (gst_registry_remove_feature),
831 (gst_registry_lookup_feature_locked):
832 * gst/gstregistry.h:
833 Speed up gst_registry_lookup_feature_locked() by using a hashmap.
834 Fixes #459501.
836 2007-07-23 Stefan Kost <ensonic@users.sf.net>
838 * gst/gstpluginfeature.c: (gst_plugin_feature_finalize),
839 (gst_plugin_feature_set_name):
840 Avoid double memory usage for pluginfeature names. Fixes #459466.
842 2007-07-22 Tim-Philipp Müller <tim at centricular dot net>
844 * gst/gstpad.h:
845 Small addition to GST_FLOW_IS_FATAL() docs: mention that elements
846 driving the pipeline may need to explicitly check for NOT_LINKED as
847 well, since IS_FATAL doesn't cover that.
849 2007-07-22 Tim-Philipp Müller <tim at centricular dot net>
851 * docs/pwg/advanced-types.xml:
852 Fix typo and duplicate entry in video formats list.
854 2007-07-22 Sebastian Dröge <slomo@circular-chaos.org>
856 * libs/gst/controller/gstinterpolation.c:
857 Also round to the nearest int when using cubic interpolation.
859 2007-07-19 Jan Schmidt <thaytan@noraisin.net>
861 * libs/gst/controller/gstinterpolation.c:
862 When linearly interpolating integer types, round to the nearest int
863 by adding 0.5. Don't do it for float/double types.
864 Fixes the failing controller test on my machine, which is somehow
865 rounding differently than on the buildbots.
867 2007-07-20 Stefan Kost <ensonic@users.sf.net>
869 * tools/gst-plot-timeline.py:
870 Better log parsing (categories can have -). Adjust text vs. lines, so
871 that they span the same y-range.
873 2007-07-20 Stefan Kost <ensonic@users.sf.net>
875 * docs/random/ensonic/audiobaseclasses.txt:
876 * docs/random/ensonic/dynlink.txt:
877 * docs/random/ensonic/profiling.txt:
878 Save my thoughts.
880 * docs/random/moving-plugins:
881 Add note to use g_assert type macros.
883 2007-07-20 Stefan Kost <ensonic@users.sf.net>
885 * configure.ac:
886 * libs/gst/check/Makefile.am:
887 Add libm check as we use in for plugins.
889 2007-07-18 Jan Schmidt <thaytan@noraisin.net>
891 * gst/gstbin.c: (gst_bin_continue_func):
892 Check that the state_cookie hasn't changed since the continue_func
893 was scheduled. Avoids problems where the state changes back to
894 something it shouldn't be because it was changed in the meantime.
896 2007-07-17 Stefan Kost <ensonic@users.sf.net>
898 * gst/gstregistrybinary.c: (gst_registry_binary_save_const_string),
899 (gst_registry_binary_save_string),
900 (gst_registry_binary_save_pad_template),
901 (gst_registry_binary_save_feature),
902 (gst_registry_binary_save_plugin),
903 (gst_registry_binary_load_feature),
904 (gst_registry_binary_load_plugin),
905 (gst_registry_binary_read_cache):
906 Fix memory leak. Be less verbose in the log.
908 2007-07-16 Jan Schmidt <thaytan@mad.scientist.com>
910 * tests/check/elements/.cvsignore:
911 Add file to cvsignore as commanded.
913 2007-07-16 Jan Schmidt <thaytan@mad.scientist.com>
915 * tests/check/elements/multiqueue.c: (mq_dummypad_chain),
916 (mq_dummypad_event), (run_output_order_test):
917 Use a GStaticMutex to protect all cases where libcheck
918 fail_if/fail_unless macros might be called from multiple threads
919 simultaneously to avoid errors like:
920 "check_pack.c:107: :-1081725400:Bad message type arg"
922 2007-07-16 Jan Schmidt <thaytan@mad.scientist.com>
924 * tests/check/pipelines/stress.c: (GST_START_TEST):
925 Make sure we set the pipeline back to the NULL state before
926 dropping our final reference.
928 2007-07-16 Jan Schmidt <thaytan@mad.scientist.com>
930 * tests/check/elements/tee.c: (GST_START_TEST):
931 Make the tee stress-test a little less stressful so it doesn't just
932 time out on slow-machines, and remove a small race when it's starting
933 up by adding a get_state() call.
935 2007-07-16 Stefan Kost <ensonic@users.sf.net>
937 * gst/gst.c:
938 Avoid reading registry twice on startup. Fixes #457322.
940 2007-07-13 Jan Schmidt <thaytan@mad.scientist.com>
942 * pkgconfig/gstreamer-check-uninstalled.pc.in:
943 * pkgconfig/gstreamer-check.pc.in:
944 Substitute the CFLAGS for libcheck into our .pc file too so that
945 dependent modules will pick it up properly if libcheck is installed
946 into some other prefix.
948 2007-07-13 Jan Schmidt <thaytan@mad.scientist.com>
950 * configure.ac:
951 Revert the pkg-config check for libcheck, since it pulls in the
952 wrong non-PIC libcheck.a on Ubuntu and probably Fedora too. We need
953 a proper solution, either from the check project, or something else.
955 2007-07-12 Stefan Kost <ensonic@users.sf.net>
957 * configure.ac:
958 Use pkg-config to locate check.
960 2007-07-10 Stefan Kost <ensonic@users.sf.net>
962 * gst/gsttaglist.c:
963 Fix doc syntax.
965 * gst/gstutils.c:
966 * gst/gstutils.h:
967 Add deprecation guards.
969 * libs/gst/base/gstcollectpads.h:
970 Don't document object (this is implicitly private).
972 2007-07-08 Tim-Philipp Müller <tim at centricular dot net>
974 * gst/gststructure.c: (gst_structure_parse_value):
975 When deserialising foo=bar without a type cast, check if it's a
976 boolean before falling back to a string type, otherwise things like
977 audiotestsrc ! audio/x-raw-int,signed=true ! fakesink won't work,
978 because the filtercaps end up having a signed=(string)true field,
979 which causes problems later when intersection caps.
981 * tests/check/gst/gststructure.c: (GST_START_TEST):
982 Add a unit test for this.
984 2007-07-06 Sebastian Dröge <slomo@circular-chaos.org>
986 Reviewed by: Stefan Kost <ensonic@users.sf.net>
988 * libs/gst/controller/Makefile.am:
989 * libs/gst/controller/gstcontroller.c:
990 (gst_controlled_property_add_interpolation_control_source),
991 (gst_controlled_property_new), (gst_controlled_property_free),
992 (gst_controller_find_controlled_property),
993 (gst_controller_new_valist), (gst_controller_new_list),
994 (gst_controller_new), (gst_controller_remove_properties_valist),
995 (gst_controller_remove_properties_list),
996 (gst_controller_remove_properties),
997 (gst_controller_set_property_disabled),
998 (gst_controller_set_disabled), (gst_controller_set_control_source),
999 (gst_controller_get_control_source), (gst_controller_get),
1000 (gst_controller_sync_values), (gst_controller_get_value_array),
1001 (_gst_controller_dispose), (gst_controller_get_type),
1002 (gst_controlled_property_set_interpolation_mode),
1003 (gst_controller_set), (gst_controller_set_from_list),
1004 (gst_controller_unset), (gst_controller_unset_all),
1005 (gst_controller_get_all), (gst_controller_set_interpolation_mode):
1006 * libs/gst/controller/gstcontroller.h:
1007 * libs/gst/controller/gstcontrollerprivate.h:
1008 * libs/gst/controller/gstcontrolsource.c:
1009 (gst_control_source_class_init), (gst_control_source_init),
1010 (gst_control_source_get_value),
1011 (gst_control_source_get_value_array), (gst_control_source_bind):
1012 * libs/gst/controller/gstcontrolsource.h:
1013 * libs/gst/controller/gsthelper.c: (gst_object_set_control_source),
1014 (gst_object_get_control_source):
1015 * libs/gst/controller/gstinterpolation.c:
1016 (gst_interpolation_control_source_find_control_point_node),
1017 (gst_interpolation_control_source_get_first_value),
1018 (_interpolate_none_get), (interpolate_none_get),
1019 (interpolate_none_get_boolean_value_array),
1020 (interpolate_none_get_enum_value_array),
1021 (interpolate_none_get_string_value_array),
1022 (_interpolate_trigger_get), (interpolate_trigger_get),
1023 (interpolate_trigger_get_boolean_value_array),
1024 (interpolate_trigger_get_enum_value_array),
1025 (interpolate_trigger_get_string_value_array):
1026 * libs/gst/controller/gstinterpolationcontrolsource.c:
1027 (gst_control_point_free), (gst_interpolation_control_source_reset),
1028 (gst_interpolation_control_source_new),
1029 (gst_interpolation_control_source_set_interpolation_mode),
1030 (gst_interpolation_control_source_bind),
1031 (gst_control_point_compare), (gst_control_point_find),
1032 (gst_interpolation_control_source_set_internal),
1033 (gst_interpolation_control_source_set),
1034 (gst_interpolation_control_source_set_from_list),
1035 (gst_interpolation_control_source_unset),
1036 (gst_interpolation_control_source_unset_all),
1037 (gst_interpolation_control_source_get_all),
1038 (gst_interpolation_control_source_get_count),
1039 (gst_interpolation_control_source_init),
1040 (gst_interpolation_control_source_finalize),
1041 (gst_interpolation_control_source_dispose),
1042 (gst_interpolation_control_source_class_init):
1043 * libs/gst/controller/gstinterpolationcontrolsource.h:
1044 * libs/gst/controller/gstinterpolationcontrolsourceprivate.h:
1045 API: Refactor GstController into the core controller which can take
1046 a GstControlSource for providing actual values for timestamps.
1047 Implement a interpolation control source and use this for backward
1048 compatibility, deprecate a bunch of functions that are now handled
1049 by GstControlSource or GstInterpolationControlSource.
1050 Make it possible to disable the controller completely or only for
1051 specific properties. Fixes #450711.
1052 * docs/libs/gstreamer-libs-docs.sgml:
1053 * docs/libs/gstreamer-libs-sections.txt:
1054 * docs/libs/gstreamer-libs.types:
1055 Add new functions and classes to the docs.
1056 * tests/check/libs/controller.c: (GST_START_TEST),
1057 (gst_controller_suite):
1058 * tests/examples/controller/audio-example.c: (main):
1059 Port unit test and example to the new API and add some new
1060 unit tests.
1062 2007-07-05 Wim Taymans <wim.taymans@gmail.com>
1064 Patch by: Mark Nauwelaerts <manauw at skynet be>
1066 * plugins/elements/gstmultiqueue.c:
1067 (gst_multi_queue_get_internal_links), (apply_buffer),
1068 (single_queue_overrun_cb), (gst_single_queue_new):
1069 Implement non-default GstPadIntLinkFunction for multiqueue pads so that
1070 the pipeline layout can be tracked correctly. Fixes #453732.
1072 2007-07-05 Stefan Kost <ensonic@users.sf.net>
1074 * docs/gst/Makefile.am:
1075 * docs/libs/Makefile.am:
1076 * docs/plugins/Makefile.am:
1077 Simplify --extra-dir as gtkdoc scans recursively.
1079 2007-07-03 Wim Taymans <wim.taymans@gmail.com>
1081 * tools/gst-launch.c: (main):
1082 When we got an error, there is no point in waiting for preroll when
1083 shutting down.
1085 2007-07-03 Wim Taymans <wim.taymans@gmail.com>
1087 * plugins/elements/gsttee.c: (gst_tee_base_init),
1088 (gst_tee_request_new_pad), (gst_tee_release_pad),
1089 (gst_tee_find_buffer_alloc), (gst_tee_buffer_alloc),
1090 (gst_tee_do_push), (clear_pads), (gst_tee_handle_buffer),
1091 (gst_tee_chain):
1092 Be a lot smarter when deciding what srcpad to use for proxying
1093 the buffer_alloc. Also handle pad added/removed when doing so.
1094 Fixes #357959.
1095 Keep track of what pads we already pushed on in case we have pads
1096 added/removed while pushing. Fixes #374639
1098 * tests/check/Makefile.am:
1099 * tests/check/elements/tee.c: (handoff), (GST_START_TEST),
1100 (tee_suite):
1101 Added unit test for pad resync.
1103 2007-07-01 Thomas Vander Stichele <thomas at apestaart dot org>
1105 * po/nl.po:
1106 * po/sv.po:
1107 Updated translations.
1109 2007-07-01 Thomas Vander Stichele <thomas at apestaart dot org>
1111 translation by: Tommi Vainikainen <Tommi.Vainikainen@iki.fi>
1113 * po/LINGUAS:
1114 * po/fi.po:
1115 Added new Finnish translation.
1117 2007-06-28 Wim Taymans <wim@fluendo.com>
1119 * plugins/elements/gstmultiqueue.c: (apply_buffer),
1120 (single_queue_overrun_cb):
1121 When figuring out when a queue is filled, use our internal time estimate
1122 based on segments, just like check_full does.
1124 2007-06-27 Stefan Kost <ensonic@users.sf.net>
1126 * gst/gstminiobject.c: (gst_mini_object_get_type):
1127 Remove 3 do-nothing methods.
1129 2007-06-27 Wim Taymans <wim@fluendo.com>
1131 Patch by: Tim Angus <tim at ngus dot net>
1133 * plugins/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
1134 (gst_capsfilter_set_property):
1135 Take a reference instead of a copy when setting "caps".
1136 Fix documentation to clarify this behaviour. Fixes #449414.
1138 2007-06-27 Stefan Kost <ensonic@users.sf.net>
1140 * gst/gstindexfactory.c: (gst_index_factory_get_type):
1141 * gst/gstplugin.c: (gst_plugin_init):
1142 * gst/gstpluginfeature.c: (gst_plugin_feature_init):
1143 * gst/gstquery.c: (gst_query_get_type):
1144 * gst/gstregistry.c: (gst_registry_init):
1145 * gst/gsturi.c: (gst_uri_handler_base_init):
1146 Remove empty instance_init() functions to save relocs and lessen the
1147 noise. Remove some of the function prototypes that are doubled by
1148 G_DEFINE_TYPE.
1150 2007-06-27 Wim Taymans <wim@fluendo.com>
1152 Patch by: Étienne Noreau-Hébert <etienne at deepunder dot org>
1154 * gst/gstghostpad.c: (gst_proxy_pad_save_thyself):
1155 Add peer and direction in the XML serialisation of ghostpads.
1156 Fixes #449226.
1158 2007-06-26 Stefan Kost <ensonic@users.sf.net>
1160 * configure.ac:
1161 Preserve useful information, thanks Tim.
1163 2007-06-26 Jan Schmidt <thaytan@noraisin.net>
1165 * plugins/elements/gstmultiqueue.c: (gst_multi_queue_init),
1166 (gst_single_queue_flush), (apply_segment), (apply_buffer),
1167 (gst_single_queue_push_one), (gst_multi_queue_loop),
1168 (gst_multi_queue_sink_activate_push), (gst_multi_queue_sink_event),
1169 (gst_multi_queue_src_activate_push), (wake_up_next_non_linked),
1170 (compute_high_id), (gst_single_queue_new):
1171 * plugins/elements/gstmultiqueue.h:
1172 Take the multiqueue lock when updating the fill level so we don't get
1173 confused.
1175 After applying a buffer or event on the src pad segment, make sure to
1176 call gst_data_queue_limits_changed() to get the data queue to unblock
1177 and check the filled state again.
1179 Rework the not-linked pad handling so the logic is that not-linked
1180 pads can push as fast as they like, but only so they never get
1181 ahead of any linked pads.
1183 * tests/check/elements/multiqueue.c: (mq_sinkpad_to_srcpad),
1184 (mq_dummypad_getcaps), (mq_dummypad_chain), (mq_dummypad_event),
1185 (run_output_order_test), (GST_START_TEST), (multiqueue_suite):
1187 Add a test to check that not-linked pads always stay behind
1188 linked pads.
1190 Fixes: #430682
1192 2007-06-26 Jan Schmidt <thaytan@mad.scientist.com>
1194 * docs/random/release:
1195 Some updates to the release procedure.
1197 2007-06-26 Stefan Kost <ensonic@users.sf.net>
1199 * gst/gstelementfactory.c: (__gst_element_details_clear):
1200 Microoptimization that saves stunning 80 bytes.
1202 2007-06-25 Stefan Kost <ensonic@users.sf.net>
1204 * docs/plugins/gstreamer-plugins.args:
1205 * docs/plugins/inspect/plugin-coreelements.xml:
1206 * docs/plugins/inspect/plugin-coreindexers.xml:
1207 Update docs with caps info.
1209 2007-06-24 Thomas Vander Stichele <thomas at apestaart dot org>
1211 * po/it.po:
1212 Updated Italian translation.
1214 2007-06-23 Thomas Vander Stichele <thomas at apestaart dot org>
1216 * ChangeLog:
1217 * po/vi.po:
1218 Update Vietnamese translations.
1220 2007-06-21 Tim-Philipp Müller <tim at centricular dot net>
1222 * libs/gst/base/gstbasesink.c:
1223 Remove unused signal enum.
1225 2007-06-21 Jan Schmidt <thaytan@mad.scientist.com>
1227 * docs/gst/gstreamer-sections.txt:
1228 * gst/gstelement.c:
1229 * gst/gstutils.c: (gst_type_register_static_full):
1230 Beef up and include the docs for gst_type_register_static_full and
1231 gst_element_class_set_details_simple and add the API keyword
1232 in the ChangeLog.
1234 2007-06-21 Jan Schmidt <thaytan@mad.scientist.com>
1236 * plugins/elements/gstmultiqueue.c: (gst_multi_queue_set_property),
1237 (update_time_level), (gst_single_queue_push_one),
1238 (gst_multi_queue_chain), (gst_multi_queue_sink_event),
1239 (single_queue_overrun_cb), (single_queue_underrun_cb),
1240 (single_queue_check_full):
1241 Fix setting max-* properties after adding queues.
1242 Use IS_FILLED for checking visible items.
1243 Signal overrun if multiple queues overrun.
1244 Add extra debug output.
1245 Patch by: Wim Taymans <wim@fluendo.com>
1247 2007-06-21 Stefan Kost <ensonic@users.sf.net>
1249 * gst/gstelement.c: (gst_element_class_set_details_simple):
1250 * gst/gstelement.h:
1251 * gst/gstutils.c: (gst_type_register_static_full):
1252 * gst/gstutils.h:
1253 * plugins/elements/gstcapsfilter.c: (gst_capsfilter_base_init):
1254 * plugins/elements/gstfakesink.c: (gst_fake_sink_base_init):
1255 * plugins/elements/gstfakesrc.c: (gst_fake_src_base_init):
1256 * plugins/elements/gstfdsink.c: (gst_fd_sink_base_init):
1257 * plugins/elements/gstfdsrc.c: (gst_fd_src_base_init):
1258 * plugins/elements/gstfilesink.c: (gst_file_sink_base_init):
1259 * plugins/elements/gstfilesrc.c: (gst_file_src_base_init):
1260 * plugins/elements/gstidentity.c: (gst_identity_base_init):
1261 * plugins/elements/gstmultiqueue.c: (gst_multi_queue_base_init):
1262 * plugins/elements/gstqueue.c: (gst_queue_base_init),
1263 (apply_buffer), (gst_queue_chain):
1264 * plugins/elements/gsttee.c: (gst_tee_base_init):
1265 * plugins/elements/gsttypefindelement.c:
1266 (gst_type_find_element_base_init),
1267 (gst_type_find_element_class_init):
1268 Saving relocations for GTypeInfo and GstElementDetails. Fixes #437457.
1269 API: add gst_type_register_static_full
1270 API: add gst_element_class_set_details_simple
1272 2007-06-21 Tim-Philipp Müller <tim at centricular dot net>
1274 * docs/pwg/advanced-types.xml:
1275 Fix typo in iana.org URI.
1277 2007-06-19 Andy Wingo <wingo@pobox.com>
1279 * tests/check/pipelines/simple-launch-lines.c
1280 (test_state_change_returns): Enable pull-mode tests now that
1281 basesink has been fixed.
1283 * libs/gst/base/gstbasesink.c (gst_base_sink_needs_preroll):
1284 Changed from gst_base_sink_is_prerolled, reversing the sense of
1285 the return value. Returns FALSE also if the sink is in pull mode,
1286 in which case it needs no preroll.
1287 (gst_base_sink_query, gst_base_sink_change_state): Update for
1288 needs_preroll change.
1289 (gst_base_sink_change_state): Add a case for READY_TO_PAUSED after
1290 chaining up, in which we return SUCCESS directly if we activated
1291 in pull mode instead of ASYNC. Involves countering an async_start
1292 message sent before chaining up; not sure if this is correct, in
1293 an ideal world we only send async-start when activating in push
1294 mode.
1296 * tests/check/pipelines/simple-launch-lines.c
1297 (test_state_change_returns): New test, partially disabled until
1298 basesink is fixed.
1300 2007-06-19 Wim Taymans <wim@fluendo.com>
1302 * plugins/elements/gstmultiqueue.c: (apply_buffer),
1303 (gst_multi_queue_sink_event):
1304 Fix event leak.
1306 2007-06-19 Wim Taymans <wim@fluendo.com>
1308 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
1309 (gst_bin_change_state_func), (bin_push_state_continue),
1310 (bin_handle_async_start), (bin_handle_async_done),
1311 (gst_bin_handle_message_func):
1312 Move the common code for posting state-change messages into
1313 one function.
1314 Broadcast the state signal after we posted the messages.
1315 Mark the bin as busy when it's doing a state-change.
1316 Make sure async-start/done messages don't interfere with the bin's
1317 state when it's busy.
1318 After the state change, let the bin check which elements completed the
1319 state change while it was busy so that it can update its state.
1321 2007-06-19 Jan Schmidt <thaytan@mad.scientist.com>
1323 * docs/random/release:
1324 Add a note about updating the doap file to the release checklist
1326 2007-06-18 Wim Taymans <wim@fluendo.com>
1328 * plugins/elements/gstmultiqueue.c: (apply_buffer),
1329 (gst_single_queue_push_one), (gst_multi_queue_chain),
1330 (gst_multi_queue_sink_event):
1331 Make sure we don't reference the buffer/event after we have given away
1332 ownership in the queue.
1334 2007-06-18 Wim Taymans <wim@fluendo.com>
1336 * plugins/elements/gstmultiqueue.c: (gst_single_queue_flush),
1337 (gst_multi_queue_chain), (gst_multi_queue_sink_event):
1338 Update queue state _after_ adding the item in the queue because else we
1339 could end up being full without the element added yet.
1341 2007-06-18 Wim Taymans <wim@fluendo.com>
1343 * gst/gstbin.c: (gst_bin_init), (gst_bin_add_func),
1344 (gst_bin_remove_func), (gst_bin_get_state_func),
1345 (gst_bin_element_set_state), (gst_bin_continue_func),
1346 (bin_push_state_continue), (bin_handle_async_start),
1347 (bin_handle_async_done), (gst_bin_handle_message_func):
1348 * gst/gstbin.h:
1349 Immediatly commit the toplevel bin state when receiving an async-done
1350 message. This enables us to avoid spawning a thread to commit the state
1351 in some common cases and it also avoids some races.
1352 Avoid spawning a state thread when adding/removing async elements to a
1353 toplevel bin. Instead we immediatly update the bin state.
1354 Get rid of iterating all the children when getting the state in the bin
1355 because it is now always up-to-date.
1356 Fix bug where locked elements would always return _SUCCESS even it they
1357 returned NO_PREROLL before being locked.
1358 Fix the order of the state_change, async-start/done messages that was
1359 sometimes incorrect.
1360 Mark the state_dirty field as deprecated, we don't need it anymore as we
1361 are always up-to-date.
1363 * gst/gstelement.c: (gst_element_get_state_func),
1364 (gst_element_continue_state):
1365 Small debug inprovements.
1366 Return the previous element state return when nothing is pending instead
1367 of blindly returning SUCCESS.
1369 * tests/check/generic/sinks.c: (GST_START_TEST), (pad_blocked_cb),
1370 (gst_sinks_suite):
1371 Add a whole bunch of new testcases.
1373 2007-06-17 Thomas Vander Stichele <thomas at apestaart dot org>
1375 * po/uk.po:
1376 * po/vi.po:
1377 Update translations.
1379 2007-06-15 Jan Schmidt <thaytan@mad.scientist.com>
1381 * gst/gstpad.c:
1382 Fix typo in the docs.
1384 2007-06-15 Wim Taymans <wim@fluendo.com>
1386 * docs/libs/gstreamer-libs-sections.txt:
1387 Add docs for new methods.
1389 2007-06-15 Wim Taymans <wim@fluendo.com>
1391 * plugins/elements/gstmultiqueue.c: (gst_multi_queue_item_destroy),
1392 (gst_multi_queue_item_new):
1393 Don't use GSlice because we don't depend on >= 2.10 yet.
1395 2007-06-15 Wim Taymans <wim@fluendo.com>
1397 * plugins/elements/gstmultiqueue.c: (gst_single_queue_flush),
1398 (update_time_level), (apply_segment), (apply_buffer),
1399 (gst_single_queue_push_one), (gst_multi_queue_item_new),
1400 (gst_multi_queue_loop), (gst_multi_queue_sink_activate_push),
1401 (gst_multi_queue_sink_event), (single_queue_overrun_cb),
1402 (single_queue_underrun_cb), (single_queue_check_full):
1403 Remove debug printf.
1405 2007-06-15 Wim Taymans <wim@fluendo.com>
1407 * libs/gst/base/gstdataqueue.c: (gst_data_queue_cleanup),
1408 (gst_data_queue_finalize), (gst_data_queue_locked_is_empty),
1409 (gst_data_queue_set_flushing), (gst_data_queue_push),
1410 (gst_data_queue_pop), (gst_data_queue_drop_head),
1411 (gst_data_queue_limits_changed), (gst_data_queue_get_level):
1412 * libs/gst/base/gstdataqueue.h:
1413 Various cleanups.
1414 Added methods to get the current levels and to inform the queue that the
1415 'full' limits changed.
1417 * plugins/elements/gstmultiqueue.c: (gst_multi_queue_init),
1418 (gst_multi_queue_finalize), (gst_multi_queue_set_property),
1419 (gst_single_queue_flush), (update_time_level), (apply_segment),
1420 (apply_buffer), (gst_single_queue_push_one),
1421 (gst_multi_queue_item_steal_object),
1422 (gst_multi_queue_item_destroy), (gst_multi_queue_item_new),
1423 (gst_multi_queue_loop), (gst_multi_queue_chain),
1424 (gst_multi_queue_sink_activate_push), (gst_multi_queue_sink_event),
1425 (gst_multi_queue_getcaps), (gst_multi_queue_src_activate_push),
1426 (gst_multi_queue_src_query), (single_queue_overrun_cb),
1427 (single_queue_underrun_cb), (single_queue_check_full),
1428 (gst_single_queue_new):
1429 Keep track of time in the queue by measuring the difference between
1430 running_time on input and output. This gives more accurate results and
1431 can compensate for segments correctly.
1432 Make a queue by default only 5 buffers deep. We will now increase the
1433 buffer size depending on the filledness of the other queues.
1434 Factor out commong flush code.
1435 Make sure we don't add additional refcounts to buffers when we can avoid
1436 it.
1437 Propagate GstFlowReturn differently.
1438 Use GSlice for intermediate GstMultiQueueItems.
1439 Keep track of EOS.
1440 Resize queues on over and underruns based on filled level of other
1441 queues.
1442 When checking if the queue is filled, prefer to measure in time if we
1443 can and fall back to bytes when no time is known.
1445 * plugins/elements/gstqueue.c:
1446 Fix return value.
1448 2007-06-15 Wim Taymans <wim@fluendo.com>
1450 * libs/gst/base/gstbasetransform.c:
1451 (gst_base_transform_sink_event):
1452 Work around the brokenness of the event vmethod in basetransform. Prefer
1453 to return TRUE when the subclass returned FALSE (meaning don't forward
1454 the event).
1456 * libs/gst/base/gstbasetransform.h:
1457 Clarify the docs.
1459 2007-06-15 Wim Taymans <wim@fluendo.com>
1461 * gst/gstpad.c: (gst_pad_push_event), (gst_pad_send_event):
1462 * libs/gst/base/gstbasesrc.c: (gst_base_src_query_latency),
1463 (gst_base_src_default_query), (gst_base_src_get_range),
1464 (gst_base_src_start):
1465 * tests/check/pipelines/parse-launch.c: (setup_pipeline):
1466 Improve debugging.
1468 2007-06-15 Stefan Kost <ensonic@users.sf.net>
1470 * docs/pwg/advanced-types.xml:
1471 Added more formats to caps table.
1473 2007-06-15 Stefan Kost <ensonic@users.sf.net>
1475 * tools/gst-launch.c: (main):
1476 Remove crufy code. GOption does not need this workaround.
1478 2007-06-14 Stefan Kost <ensonic@users.sf.net>
1480 * libs/gst/controller/gstcontroller.c:
1481 (gst_controlled_property_set_interpolation_mode):
1482 Fix wrong getter for enums in controller.
1484 2007-06-14 Tim-Philipp Müller <tim at centricular dot net>
1486 * libs/gst/check/gstcheck.c: (gst_check_init):
1487 Intercept criticals and warnings in the Gst-Phonon log domain, so
1488 ASSERT_CRITICAL() etc. can be used in gst-phonon's unit tests as
1489 well.
1491 2007-06-14 Edward Hervey <edward@fluendo.com>
1493 * gst/gstparamspecs.c: (_gst_param_fraction_validate):
1494 Since this file doesn't include "gst.h" it will not go through the
1495 macros that disable GST_LOG if debugging was disabled.
1497 2007-06-14 Tim-Philipp Müller <tim at centricular dot net>
1499 * libs/gst/check/Makefile.am:
1500 * libs/gst/check/gstcheck.h:
1501 * pkgconfig/gstreamer-check-uninstalled.pc.in:
1502 * pkgconfig/gstreamer-check.pc.in:
1503 Ugly 'fix' for the controller unit test on the p5 bot: in
1504 fail_unless_equals_float() check whether the values are 'almost
1505 equal' by allowing a small absolute error, which should be good
1506 enough for our use cases (normal numbers and values close to 0).
1507 Proper fixage left to floating point arithmetic aficionados.
1509 2007-06-14 Stefan Kost <ensonic@users.sf.net>
1511 * libs/gst/base/gstbasesink.c: (gst_base_sink_reset_qos),
1512 (gst_base_sink_render_object), (gst_base_sink_get_position):
1513 Add two breaks thats where missing.
1515 2007-06-14 Tim-Philipp Müller <tim at centricular dot net>
1517 * docs/libs/gstreamer-libs-sections.txt:
1518 * libs/gst/check/gstcheck.h:
1519 API: add fail_unless_equals_float() and assert_equals_float().
1520 Add documentation for some of the macros.
1522 * tests/check/libs/controller.c: (GST_START_TEST):
1523 Use newly-added asserts.
1525 2007-06-14 Stefan Kost <ensonic@users.sf.net>
1527 * gst/gstpad.c: (gst_pad_alloc_buffer_full), (gst_pad_push):
1528 Show the caps change in the log to help spotting the case of not
1529 exactly matching caps.
1531 2007-06-14 Tim-Philipp Müller <tim at centricular dot net>
1533 * docs/pwg/building-boiler.xml:
1534 Fix typos, spotted by Thijs Vermeir (#447190).
1536 2007-06-13 Jan Schmidt <thaytan@mad.scientist.com>
1538 * docs/plugins/tmpl/.cvsignore:
1539 Ignore file to keep the buildbots happy
1541 2007-06-13 Jan Schmidt <thaytan@mad.scientist.com>
1543 * docs/plugins/Makefile.am:
1544 * docs/plugins/gstreamer-plugins-docs.sgml:
1545 * docs/plugins/gstreamer-plugins-sections.txt:
1546 Pull fdsink into the docs too.
1548 2007-06-11 Sebastian Dröge <slomo@circular-chaos.org>
1550 * libs/gst/controller/gstinterpolation.c:
1551 Actually use the new functions with min/max checks for the trigger and
1552 none interpolation modes for get() and get_value_array() instead of
1553 just the latter.
1555 2007-06-10 Sebastian Dröge <slomo@circular-chaos.org>
1557 * libs/gst/controller/gstcontroller.c:
1558 (gst_controlled_property_free):
1559 Unset the minimum and maximum GValues when freeing the corresponding
1560 GstControllerProperty struct.
1562 2007-06-09 Sebastian Dröge <slomo@circular-chaos.org>
1564 * libs/gst/controller/gstcontroller.c:
1565 (gst_controlled_property_new):
1566 * libs/gst/controller/gstcontrollerprivate.h:
1567 * libs/gst/controller/gstinterpolation.c:
1568 (gst_controlled_property_find_control_point_node),
1569 (interpolate_none_get), (interpolate_none_get_enum_value_array),
1570 (interpolate_none_get_string_value_array),
1571 (interpolate_trigger_get),
1572 (interpolate_trigger_get_enum_value_array),
1573 (interpolate_trigger_get_string_value_array):
1574 Protect against values larger or smaller than the minimum or maximum
1575 allowed value for the property when using values that can be compared.
1577 Optimize trigger interpolator a bit by taking the last requested value
1578 into account instead of always looping through the complete list.
1580 Fix coding style a bit, everywhere else we use "return foo" instead
1581 of "return (foo)".
1583 * tests/check/libs/controller.c: (GST_START_TEST),
1584 (gst_controller_suite):
1585 Add unit test for the protection against too large or too small
1586 values.
1588 2007-06-08 Sebastian Dröge <slomo@circular-chaos.org>
1590 * docs/random/slomo/controller.txt:
1591 Add some thoughts about the future of the controller.
1593 2007-06-08 Wim Taymans <wim@fluendo.com>
1595 * plugins/elements/gstidentity.c: (gst_identity_transform_ip):
1596 Don't overflow in retimestamping code.
1598 2007-06-07 Sebastien Moutte <sebastien@moutte.net>
1600 * libs/gst/controller/gstinterpolation.c: (DEFINE_CUBIC_GET):
1601 Use gst_util_guint64_to_gdouble for conversions.
1602 * win32/common/libgstreamer.def:
1603 Add new exported functions.
1605 2007-06-07 Tim-Philipp Müller <tim at centricular dot net>
1607 * gst/gstutils.c:
1608 Small docs addition.
1610 2007-06-07 Stefan Kost <ensonic@users.sf.net>
1612 * README:
1613 Remove that test line again.
1615 2007-06-07 Stefan Kost <ensonic@users.sf.net>
1617 * README:
1618 Test commit mail sending.
1620 2007-06-07 Stefan Kost <ensonic@users.sf.net>
1622 * configure.ac:
1623 Fix typo and test commit mail sending.
1625 2007-06-07 Stefan Kost <ensonic@users.sf.net>
1627 * tests/examples/controller/audio-example.c:
1628 Improve comment and test commit mail sending.
1630 2007-06-07 Wim Taymans <wim@fluendo.com>
1632 * gst/gstbin.c: (find_message), (bin_replace_message), (is_eos),
1633 (gst_bin_remove_func), (gst_bin_element_set_state),
1634 (bin_handle_async_start), (bin_handle_async_done),
1635 (gst_bin_handle_message_func):
1636 Add helper function to find messages.
1637 Generate the async-done messages together with the state change
1638 messages.
1639 Small cleanups in handling toplevel bins.
1641 2007-06-06 Tim-Philipp Müller <tim at centricular dot net>
1643 * libs/gst/base/gstdataqueue.c:
1644 * libs/gst/base/gstdataqueue.h:
1645 * plugins/elements/gstmultiqueue.c: (gst_single_queue_push_one),
1646 (gst_multi_queue_item_new), (gst_multi_queue_chain),
1647 (gst_multi_queue_sink_event):
1648 * tests/check/elements/multiqueue.c: (multiqueue_suite):
1649 Fix multiqueue leaking buffers and events when downstream or the
1650 queue are flushing. Make refcounting assumptions explicit and
1651 document them (shouldn't break existing code that uses it other than
1652 maybe leak miniobjects, but that already happens anyway). Add unit
1653 test for the most common flushing case. Fixes #423700.
1655 2007-06-06 Sebastian Dröge <slomo@circular-chaos.org>
1657 * libs/gst/controller/gstcontroller.c:
1658 Clarify docs: The get_all, get_value_array(s) functions
1659 don't modify the GObject properties.
1661 2007-06-06 Sebastian Dröge <slomo@circular-chaos.org>
1663 * libs/gst/controller/gstcontroller.c:
1664 (gst_controlled_property_set_interpolation_mode),
1665 (gst_controlled_property_prepend_default),
1666 (gst_controlled_property_new), (gst_controller_set_unlocked),
1667 (gst_controller_set), (gst_controller_set_from_list),
1668 (gst_controller_unset), (gst_controller_unset_all):
1669 * libs/gst/controller/gstcontrollerprivate.h:
1670 * libs/gst/controller/gstinterpolation.c:
1671 Factor out the 'set' logic into gst_controller_set_unlocked for the
1672 gst_controller_set and gst_controller_set_from_list functions.
1674 To make life of the interpolators easier always add a control point
1675 at timestamp zero with the default value.
1677 In the linear interpolator make things more obvious by better variable
1678 naming (slope).
1680 Implement cubic interpolation mode (by using a natural cubic spline)
1681 and map the quadratic interpolation mode to this too (as quadratic
1682 doesn't make much sense, see discussion on the list).
1684 * tests/check/libs/controller.c: (GST_START_TEST),
1685 (gst_controller_suite):
1686 Add unit test for the cubic interpolation mode and check everywhere
1687 if the interpolation mode could be set as expected.
1689 2007-06-06 Tim-Philipp Müller <tim at centricular dot net>
1691 * gst/gstparamspecs.c: (gst_param_spec_fraction_get_type):
1692 Don't use GLib-2.10 functions, we still depend on
1693 GLib-how-old-is-it-again-2.8.
1695 2007-06-06 Tim-Philipp Müller <tim at centricular dot net>
1697 * docs/gst/gstreamer-sections.txt:
1698 * gst/Makefile.am:
1699 * gst/gst.c:
1700 * gst/gst.h:
1701 * gst/gstparamspecs.c: (_gst_param_fraction_init),
1702 (_gst_param_fraction_set_default), (_gst_param_fraction_validate),
1703 (_gst_param_fraction_values_cmp),
1704 (gst_param_spec_fraction_get_type), (gst_param_spec_fraction):
1705 * gst/gstparamspecs.h:
1706 * gst/gstvalue.c:
1707 * tests/check/Makefile.am:
1708 * tests/check/gst/.cvsignore:
1709 * tests/check/gst/gstparamspecs.c: (gst_dummy_obj_base_init),
1710 (gst_dummy_obj_class_init), (gst_dummy_obj_init),
1711 (gst_dummy_obj_set_property), (gst_dummy_obj_get_property),
1712 (GST_START_TEST), (gst_param_spec_suite):
1713 API: add GstParamSpecFraction, so elements can have fraction
1714 properties without lots of painful string parsing (#444648).
1716 2007-06-05 Wim Taymans <wim@fluendo.com>
1718 * gst/gstobject.c: (gst_object_class_init):
1719 Fix signal signature.
1721 * gst/gstsegment.c:
1722 Add small clarification in the api docs.
1724 * plugins/elements/gstfilesrc.c: (gst_file_src_set_location):
1725 States are protected with object lock.
1727 2007-06-05 Jan Schmidt <thaytan@mad.scientist.com>
1729 * AUTHORS:
1730 I should probably be listed as an author by now.
1732 * docs/random/release:
1733 Update the release doc
1735 2007-06-05 Tim-Philipp Müller <tim at centricular dot net>
1737 * gst/gstvalue.c:
1738 Make docs for gst_value_compare() mention return enums that
1739 actually exist.
1741 2007-06-05 Jan Schmidt <thaytan@mad.scientist.com>
1743 * configure.ac:
1744 Back to CVS
1746 === release 0.10.13 ===
1748 2007-06-05 Jan Schmidt <thaytan@mad.scientist.com>
1750 * configure.ac:
1751 releasing 0.10.13, "With or without you"
1753 2007-05-25 Wim Taymans <wim@fluendo.com>
1755 * gst/gstbin.c: (bin_handle_async_done):
1756 Make sure that the child bin stops after completing the async state
1757 change so that the parent can continue the state change to PLAYING.
1758 Fixes #441159.
1760 2007-05-25 Wim Taymans <wim@fluendo.com>
1762 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_finalize),
1763 (unref_data), (gst_collect_pads_remove_pad),
1764 (gst_collect_pads_check_pads):
1765 Use additional refcounting to avoid crashes when dynamically adding and
1766 removing pads. Fixes #420206.
1768 2007-05-24 Wim Taymans <wim@fluendo.com>
1770 * tools/gst-launch.c: (event_loop):
1771 When buffering goes from a two digit to a single digit number, make sure
1772 to remove the old second digit by writing a blank over it.
1774 2007-05-24 Tim-Philipp Müller <tim at centricular dot net>
1776 * libs/gst/base/gstdataqueue.c:
1777 Eliminate tabs and trailing comma in enum list; fix some typos.
1779 2007-05-24 Wim Taymans <wim@fluendo.com>
1781 * tests/check/gst/gstbin.c: (GST_START_TEST):
1782 Allow refcount of 3 and 4 because some state thread might still be busy
1783 with it.
1785 2007-05-24 Tim-Philipp Müller <tim at centricular dot net>
1787 * plugins/elements/Makefile.am:
1788 * plugins/elements/gstmultiqueue.h:
1789 * plugins/elements/gstqueue.h:
1790 These are not installed headers, no need for padding.
1792 2007-05-24 Wim Taymans <wim@fluendo.com>
1794 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_get_state_func),
1795 (gst_bin_continue_func):
1796 Enable latency for next release.
1797 Restore STATE_LOCK around recalc_state that was left out during the
1798 rewrite and could result in racy behaviour when _get_state and
1799 recalc_state are run concurrently. See #440463.
1801 2007-05-23 Wim Taymans <wim@fluendo.com>
1803 * tests/check/gst/gstsystemclock.c: (store_callback),
1804 (GST_START_TEST):
1805 Improve test_async_order to also work when both timers are already
1806 expired when we get scheduled to check it.
1808 2007-05-22 Tim-Philipp Müller <tim at centricular dot net>
1810 * gst/gstbin.c: (gst_bin_init), (gst_bin_dispose),
1811 (gst_bin_set_property), (gst_bin_get_property),
1812 (gst_bin_remove_func), (gst_bin_handle_message_func):
1813 * gst/gstbin.h:
1814 'private' is a c++ keyword, let's not use that in header files,
1815 otherwise c++ compilers will throw a tantrum.
1817 2007-05-22 Tim-Philipp Müller <tim at centricular dot net>
1819 * plugins/elements/gstelements.c:
1820 * plugins/elements/gstfilesink.c: (gst_file_sink_do_seek),
1821 (gst_file_sink_get_current_offset):
1822 * plugins/indexers/gstindexers.c: (plugin_init):
1823 Use #ifdef for HAVE_XYZ for consistency.
1825 * tests/check/Makefile.am:
1826 * tests/check/elements/.cvsignore:
1827 * tests/check/elements/filesink.c: (setup_filesink),
1828 (cleanup_filesink), (GST_START_TEST), (filesink_suite):
1829 Add some unit tests for filesink.
1831 2007-05-22 Tim-Philipp Müller <tim at centricular dot net>
1833 Patch by: Mark Nauwelaerts <manauw at skynet be>
1835 * plugins/elements/gstfilesink.c: (gst_file_sink_open_file),
1836 (gst_file_sink_query), (gst_file_sink_do_seek),
1837 (gst_file_sink_get_current_offset), (gst_file_sink_render):
1838 * plugins/elements/gstfilesink.h:
1839 Fix position reporting; rename data_written member to current_pos to
1840 reflect its real meaning (fixes #412648).
1842 2007-05-22 Edward Hervey <edward@fluendo.com>
1844 * docs/gst/gstreamer-sections.txt:
1845 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init),
1846 (gst_bin_dispose), (gst_bin_set_property), (gst_bin_get_property),
1847 (gst_bin_remove_func), (gst_bin_handle_message_func):
1848 * gst/gstbin.h:
1849 Add a property for bins that handle the state change of their childs.
1850 Fixes #435880
1852 2007-05-22 Sebastian Dröge <slomo@circular-chaos.org>
1854 * libs/gst/controller/gstinterpolation.c:
1855 Use an array of the correct type when using _get_value_array with
1856 linear interpolation.
1858 2007-05-22 Stefan Kost <ensonic@users.sf.net>
1860 * gst/gstelement.c (gst_element_requires_clock,
1861 gst_element_provides_clock, gst_element_request_pad,
1862 gst_element_class_set_details, gst_element_class_set_details_simple,
1863 gst_element_default_send_event, gst_element_abort_state,
1864 gst_element_continue_state, gst_element_set_state,
1865 gst_element_set_state_func, iterator_activate_fold_with_resync):
1866 * gst/gstpad.c (gst_pad_activate_pull, gst_pad_set_getcaps_function,
1867 gst_pad_fixate_caps, gst_pad_configure_sink, gst_pad_configure_src,
1868 gst_pad_query, gst_pad_save_thyself, handle_pad_block, gst_pad_push,
1869 gst_pad_get_range, gst_pad_pull_range):
1870 * gst/gstpad.h (GST_PAD_LINK_SUCCESSFUL, GST_FLOW_CUSTOM_SUCCESS,
1871 GST_FLOW_NOT_SUPPORTED, GST_FLOW_IS_FATAL, GstPadActivateFunction,
1872 GstPadActivateModeFunction, GstPadChainFunction,
1873 GstPadGetCapsFunction, GstPadAcceptCapsFunction,
1874 GstPadFixateCapsFunction, GstPadTemplate):
1875 * gst/gstpipeline.c (gst_pipeline_change_state,
1876 gst_pipeline_set_new_stream_time, gst_pipeline_use_clock,
1877 gst_pipeline_set_clock, gst_pipeline_auto_clock,
1878 gst_pipeline_get_delay):
1879 Whitespace and docs fixes.
1881 2007-05-21 Sebastian Dröge <slomo@circular-chaos.org>
1883 * libs/gst/controller/gstinterpolation.c:
1884 (interpolate_trigger_get_enum_value_array),
1885 (interpolate_trigger_get_string_value_array):
1886 Add support for retrieving value arrays when using the trigger
1887 interpolation mode.
1889 2007-05-21 Sebastian Dröge <slomo@circular-chaos.org>
1891 * libs/gst/controller/gstcontroller.c:
1892 (gst_controller_get_value_array):
1893 * libs/gst/controller/gstcontroller.h:
1894 Clarify the docs of gst_controller_get_value_array(): The array where
1895 the values should be written to must be allocated as there seems to be
1896 no way to get the size of a random GType. This doesn't change any
1897 behaviour. Also fix some typos all over the place and remove an unused,
1898 commented function that is not necessary as g_object_set() could be
1899 used instead.
1900 * tests/check/libs/controller.c: (GST_START_TEST),
1901 (gst_controller_suite):
1902 Add unit test for gst_controller_get_value_array().
1904 2007-05-21 Jan Schmidt <thaytan@mad.scientist.com>
1906 * tests/check/gst/gstbuffer.c: (GST_START_TEST):
1908 Disable part of the gst_buffer_try_new_and_alloc test, because
1909 it can happily succeed on 64-bit systems where there's more address
1910 space available.
1912 2007-05-21 Sebastian Dröge <slomo@circular-chaos.org>
1914 * tests/check/gst/gstpad.c: (GST_START_TEST), (gst_pad_suite):
1915 Add unit test for the improved caps checking from bug #421543.
1917 2007-05-21 Wim Taymans <wim@fluendo.com>
1919 * docs/design/part-synchronisation.txt:
1920 Small addition.
1922 * gst/gstbin.c: (gst_bin_query):
1923 * plugins/elements/gstqueue.c: (apply_segment):
1924 Improve debugging.
1926 * gst/gstmessage.h:
1927 Improve docs.
1929 2007-05-21 Wim Taymans <wim@fluendo.com>
1931 * gst/gstpad.c: (gst_pad_get_caps_unlocked),
1932 (gst_pad_acceptcaps_default), (gst_pad_configure_sink),
1933 (gst_pad_configure_src):
1934 Added simple version of improved caps checking. It was previously
1935 assumed that a setcaps function would check the validity of the caps but
1936 people prefer us to check caps against the template automatically.
1937 Fixes #421543.
1939 2007-05-21 Wim Taymans <wim@fluendo.com>
1941 * libs/gst/base/gstbasetransform.h:
1942 Fix macro for locking/unlocking the transform lock.
1944 2007-05-19 Tim-Philipp Müller <tim at centricular dot net>
1946 * docs/plugins/tmpl/.cvsignore:
1947 Ignore more.
1949 2007-05-18 Edward Hervey <edward@fluendo.com>
1951 * plugins/elements/gstqueue.c: (gst_queue_loop):
1952 Hello, I am Mr Taymans' personal debugger. Today I will introduce a fix
1953 for the subtle art of warning a potentially blocking thread that it
1954 should check the source pad return value, and relay the information
1955 upstream.
1957 2007-05-18 Edward Hervey <edward@fluendo.com>
1959 * plugins/elements/gstqueue.c: (gst_queue_handle_sink_event):
1960 Release the queue lock !
1962 2007-05-17 Sebastian Dröge <slomo@circular-chaos.org>
1964 * docs/libs/gstreamer-libs-sections.txt:
1965 Add the two new controller functions to the appropiate places.
1967 2007-05-17 Sebastian Dröge <slomo@circular-chaos.org>
1969 reviewed by: Stefan Kost <ensonic@users.sf.net>
1971 * libs/gst/controller/gstcontroller.c:
1972 (gst_controller_suggest_next_sync), (gst_controller_sync_values),
1973 (_gst_controller_get_property), (_gst_controller_set_property),
1974 (_gst_controller_init), (_gst_controller_class_init):
1975 * libs/gst/controller/gstcontroller.h:
1976 * libs/gst/controller/gsthelper.c: (gst_object_suggest_next_sync),
1977 (gst_object_get_control_rate), (gst_object_set_control_rate):
1978 API: gst_controller_suggest_next_sync(), gst_object_suggest_next_sync()
1979 Add API that provides sync suggestion timestamps for elements that
1980 call gst_object_sync_values() from which those elements can subdivide
1981 their processing loop to get the best results for the controlled
1982 properties. For now it just suggests last_sync + control_rate as
1983 new timestamp but this will be improved in the future.
1985 While doing that change the control-rate property to a GstClockTime
1986 from guint and change it's meaning from samples to nanoseconds as
1987 the GstController doesn't know anything about sampling rate. Strictly
1988 speaking this breaks ABI but as the control-rate property didn't do
1989 anything in the past and as such couldn't be used this should be no
1990 problem.
1992 2007-05-17 Sebastian Dröge <slomo@circular-chaos.org>
1994 reviewed by: Stefan Kost <ensonic@users.sf.net>
1996 * libs/gst/controller/gstcontroller.c: (gst_controller_unset),
1997 (gst_controller_unset_all):
1998 * libs/gst/controller/gstcontrollerprivate.h:
1999 * libs/gst/controller/gstinterpolation.c:
2000 (gst_controlled_property_find_control_point_node):
2001 Save last synced value from the list to continue searching from there
2002 in future syncs. This speeds everything up a bit.
2004 2007-05-17 Sebastian Dröge <slomo@circular-chaos.org>
2006 reviewed by: Stefan Kost <ensonic@users.sf.net>
2008 * libs/gst/controller/gstcontroller.c: (gst_control_point_compare),
2009 (gst_control_point_find), (gst_controlled_property_new),
2010 (gst_control_point_free), (gst_controlled_property_free),
2011 (gst_controller_set), (gst_controller_set_from_list),
2012 (gst_controller_unset), (gst_controller_unset_all),
2013 (gst_controller_sync_values):
2014 * libs/gst/controller/gstcontroller.h:
2015 * libs/gst/controller/gstcontrollerprivate.h:
2016 * libs/gst/controller/gstinterpolation.c:
2017 (gst_controlled_property_find_control_point_node),
2018 (interpolate_none_get), (interpolate_trigger_get):
2019 Add a new private GstControlPoint struct which "inherits" from
2020 GstTimedValue to allow different interpolators to store internal
2021 values next to each control point. From the outside everything is
2022 still a GstControlPoint so we don't loose binary compatibility.
2023 Also fixup all the GValue handling to not leak GValues or list nodes.
2024 * tests/check/libs/controller.c: (GST_START_TEST):
2025 Free the list nodes and GValues in the controller_misc test.
2027 2007-05-17 Edward Hervey <edward@fluendo.com>
2029 * gst/gstsegment.c:
2030 Small doc fix.
2032 2007-05-16 Tim-Philipp Müller <tim at centricular dot net>
2034 * gst/gstplugin.c: (gst_plugin_load_file):
2035 If we fail to load a plugin because of unresolved symbols or missing
2036 libraries and spew a warning to stderr, we may just as well mention
2037 which plugin it was that failed to load.
2039 2007-05-13 David Schleef <ds@schleef.org>
2041 * docs/Makefile.am: the gtk-doc makefile snippet correctly
2042 handles the case when ENABLE_GTK_DOC is false, and installs
2043 the prebuilt documentation. So gtk-doc subdirs are
2044 unconditionally enabled. Fixes: #349099.
2046 2007-05-13 David Schleef <ds@schleef.org>
2048 * gst/gstutils.h: Reword some documentation.
2050 2007-05-12 David Schleef <ds@schleef.org>
2052 * gst/gstplugin.c: gst_plugin_register_func() doesn't actually
2053 do anything with the passed "module" parameter, so remove it.
2054 Allows removal of additional vestigal code.
2056 2007-05-12 David Schleef <ds@schleef.org>
2058 * gst/gstplugin.c:
2059 Using sigaction should depend on HAVE_SIGACTION, not HAVE_WIN32.
2060 Switch to using g_stat() because it's more portable.
2062 2007-05-12 David Schleef <ds@schleef.org>
2064 * gst/gst.c:
2065 Add GST_DISABLE_OPTION_PARSING, in order to disable option
2066 parsing for embedded systems.
2067 * gst/gstelementfactory.c:
2068 Allow gst_element_register() to be called with plugin==NULL.
2069 Did nobody notice that static elements were broken?
2071 2007-05-12 Wim Taymans <wim@fluendo.com>
2073 * tools/gst-launch.c: (event_loop):
2074 Give more interesting info when buffering starts and stops.
2075 Fix case where buffering starts but we fail to update the buffering flag
2076 because the target state is not PLAYING.
2078 2007-05-12 Wim Taymans <wim@fluendo.com>
2080 * plugins/elements/gstqueue.c: (gst_queue_init),
2081 (gst_queue_finalize), (update_time_level), (apply_segment),
2082 (apply_buffer), (gst_queue_locked_flush),
2083 (gst_queue_locked_enqueue), (gst_queue_locked_dequeue),
2084 (gst_queue_handle_sink_event), (gst_queue_chain),
2085 (gst_queue_push_one), (gst_queue_loop):
2086 * plugins/elements/gstqueue.h:
2087 Refactor an cleanup queue a bit.
2088 Do better time level calculations that also work when the srcpad is not
2089 yet running.
2090 Remove some unneeded debug lines.
2092 * tests/check/elements/queue.c: (GST_START_TEST), (queue_suite):
2093 Added testcase for time level measurement.
2094 Try to make some stuff more racefree.
2096 2007-05-11 Tim-Philipp Müller <tim at centricular dot net>
2098 * gst/gsturi.c: (gst_element_make_from_uri):
2099 Don't leak plugin feature.
2101 * tests/check/Makefile.am:
2102 * tests/check/gst/.cvsignore:
2103 * tests/check/gst/gsturi.c: (GST_START_TEST), (gst_uri_suite):
2104 Add brain-dead unit test.
2106 2007-05-11 Tim-Philipp Müller <tim at centricular dot net>
2108 Patch by: Jeroen Wouters <woutersj at gmail com>
2110 * gst/gsturi.c: (gst_uri_get_protocol), (search_by_entry):
2111 Treat protocol strings in a case-insensitive way (#437563).
2113 2007-05-11 Michael Smith <msmith@fluendo.com>
2115 * gst/gstplugin.c: (gst_plugin_load_file):
2116 * gst/gstregistry.c: (gst_registry_scan_path_level):
2117 Don't print a g_warning for any failure to load a shared object.
2118 Instead, push this down into gstplugin.c, and warn _only_ if we
2119 failed to open the module (i.e. failure to link).
2120 Avoids warnings on normal, working, non-plugin .so files.
2122 2007-05-11 Stefan Kost <ensonic@users.sf.net>
2124 * gst/gstplugin.c (gst_plugin_load_file):
2125 * gst/gstregistry.c (GST_CAT_DEFAULT,
2126 gst_registry_lookup_feature_locked, gst_registry_scan_path_level):
2127 Print a g_warning if there was an error when loading a plugins during
2128 registry scan. The shuld help beginners starting with gst-plugin
2129 template.
2131 2007-05-10 Wim Taymans <wim@fluendo.com>
2133 * plugins/elements/gstqueue.c: (gst_queue_class_init),
2134 (update_time_level), (gst_queue_locked_flush),
2135 (gst_queue_handle_sink_event), (gst_queue_chain),
2136 (gst_queue_push_one), (gst_queue_loop):
2137 * plugins/elements/gstqueue.h:
2138 Be smarter when calculating the current amount of data in the queue by
2139 measuring the difference between start and end timestamps (in running
2140 time) inside the queue. Fixes #432876.
2141 API: GstQueue::pushing to notify elements that we are pushing data again
2142 since the running signal is rather broken for this purpose.
2144 2007-05-10 Stefan Kost <ensonic@users.sf.net>
2146 * plugins/elements/gstqueue.c (_do_init, gst_queue_signals,
2147 gst_queue_base_init, gst_queue_init):
2148 use GST_BOILERPLATE
2150 2007-05-09 Sebastien Moutte <sebastien@moutte.net>
2152 * win32/common/libgstreamer.def:
2153 Add new exported functions.
2154 * win32/vs6/grammar.dsp:
2155 Use grammar pre-generated files.
2157 2007-05-09 Tim-Philipp Müller <tim at centricular dot net>
2159 Based on patch by: Peter Kjellerstedt <pkj at axis com>
2161 * gst/Makefile.am:
2162 * gst/gstparse.c: (gst_parse_launchv), (gst_parse_launch):
2163 * gst/gstparse.h:
2164 * gst/gstutils.c: (gst_parse_bin_from_description):
2165 * gst/gstutils.h:
2166 Maintain API and ABI when --disable-parse is used. Now that
2167 we have an appropriate error code, we can just return NULL and the
2168 appropriate error when gst_parse_launch() is used despite it having
2169 been disabled (#342564).
2171 * tests/check/Makefile.am:
2172 * tests/check/pipelines/.cvsignore:
2173 * tests/check/pipelines/parse-disabled.c:
2174 Make sure these functions exist and return NULL plus a GError when
2175 --disable-parse is used.
2177 2007-05-09 Tim-Philipp Müller <tim at centricular dot net>
2179 * tests/benchmarks/complexity.c: (main):
2180 * tests/benchmarks/mass-elements.c: (main):
2181 Set a good example and don't leak messages.
2183 2007-05-06 Stefan Kost <ensonic@users.sf.net>
2185 * docs/gst/Makefile.am:
2186 * docs/libs/Makefile.am:
2187 Correct fixxrefs options.
2189 * docs/plugins/Makefile.am:
2190 * docs/plugins/gstreamer-plugins-docs.sgml:
2191 * docs/plugins/gstreamer-plugins-sections.txt:
2192 * plugins/elements/Makefile.am:
2193 * plugins/elements/gstcapsfilter.c (gst_capsfilter_details):
2194 * plugins/elements/gstcapsfilter.h (__GST_CAPSFILTER_H__,
2195 GST_TYPE_CAPSFILTER, GST_CAPSFILTER, GST_CAPSFILTER_CLASS,
2196 GST_IS_CAPSFILTER, GST_IS_CAPSFILTER_CLASS, GstCapsFilter,
2197 GstCapsFilterClass, _GstCapsFilter, trans, filter_caps,
2198 _GstCapsFilterClass, trans_class):
2199 * plugins/elements/gstelements.c (name, rank, type, _elements):
2200 * plugins/elements/gstidentity.c
2201 (gst_identity_check_imperfect_timestamp,
2202 gst_identity_check_imperfect_offset):
2203 Document capsfilter and add doc-blurb to identity.
2205 2007-05-04 Tim-Philipp Müller <tim at centricular dot net>
2207 * libs/gst/controller/gstcontroller.c:
2208 (gst_controlled_property_set_interpolation_mode):
2209 * libs/gst/controller/gstinterpolation.c:
2210 Don't crash if someone tries to set an interpolation mode that
2211 is invalid or that isn't supported yet. Fixes #422295.
2213 * tests/check/libs/controller.c: (GST_START_TEST),
2214 (gst_controller_suite):
2215 Add a test case for the above.
2217 2007-05-03 Edward Hervey <edward@fluendo.com>
2219 * libs/gst/base/gstbasetransform.c: (gst_base_transform_chain):
2220 Properly set the last_stop position on GstSegment. This will only happen
2221 if there is a buffer to push out.
2223 2007-05-03 Wim Taymans <wim@fluendo.com>
2225 * libs/gst/base/gstbasetransform.c:
2226 (gst_base_transform_buffer_alloc):
2227 always_in_place does not mean that the sink and source caps are the
2228 same! Make sure we don't blindly proxy the buffer_alloc in this case.
2230 2007-05-03 Wim Taymans <wim@fluendo.com>
2232 * docs/libs/gstreamer-libs-sections.txt:
2233 * libs/gst/base/gstbasesrc.c: (gst_base_src_query_latency),
2234 (gst_base_src_default_query), (gst_base_src_get_range):
2235 * libs/gst/base/gstbasesrc.h:
2236 API: gst_base_src_query_latency(). Added method so that subclasses can
2237 easily get the latency values of the base source class.
2239 2007-05-02 Zaheer Abbas Merali <<zaheerabbas at merali dot org>>
2241 * tools/gst-inspect.c (print_implementation_info):
2242 Remove 0.8 cruft.
2244 2007-05-02 Tim-Philipp Müller <tim at centricular dot net>
2246 * tools/Makefile.am:
2247 * tools/gst-launch.1.in:
2248 Don't create a customised man page based on the host architecture,
2249 describe the default registry path generically. That way the man
2250 page is the same for all architectures and packagers have one
2251 multilib issue less to deal with. Fixes #434926.
2253 2007-05-02 Wim Taymans <wim@fluendo.com>
2255 * gst/gstpad.c:
2256 Fix documentation as spotted by rg on IRC.
2258 2007-04-29 Stefan Kost <ensonic@users.sf.net>
2260 * gst/gstutils.c:
2261 Improve docs for gst_element_{link,unlink}.
2263 2007-04-28 Tim-Philipp Müller <tim at centricular dot net>
2265 * docs/design/part-events.txt:
2266 * docs/design/part-overview.txt:
2267 * gst/gstevent.c:
2268 * gst/gsturi.c:
2269 * gst/gsturi.h:
2270 * libs/gst/base/gstbasesink.c:
2271 Typo fixes; minor docs addition.
2273 2007-04-27 Sebastian Dröge <slomo@circular-chaos.org>
2275 * docs/gst/gstreamer-sections.txt:
2276 * gst/gsturi.c: (get_element_factories_from_uri_protocol),
2277 (gst_uri_protocol_is_supported), (gst_element_make_from_uri):
2278 * gst/gsturi.h:
2279 API: Add gst_uri_protocol_is_supported(), which checks if a sink
2280 or src that supports a given URI protocol exists.
2282 2007-04-27 Sebastian Dröge <slomo@circular-chaos.org>
2284 * plugins/elements/gstfilesink.c: (gst_file_sink_uri_set_uri):
2285 * plugins/elements/gstfilesrc.c: (gst_file_src_uri_set_uri):
2286 Set the location to NULL if "file://" is set as URI. Otherwise
2287 some random previous URI would still be set if "file://" is
2288 set on an already used filesink/filesrc.
2290 2007-04-27 Sebastian Dröge <slomo@circular-chaos.org>
2292 * plugins/elements/gstfilesink.c: (gst_file_sink_uri_set_uri):
2293 * plugins/elements/gstfilesrc.c: (gst_file_src_uri_set_uri):
2294 Special case the "file://" URI as as this is used by some
2295 applications to test with gst_element_make_from_uri if there's
2296 an element that supports the URI protocol.
2297 Also move the g_path_is_absolute() check for the location part
2298 of the URI to also check this for "file://localhost/bla" URIs.
2300 2007-04-26 Tim-Philipp Müller <tim at centricular dot net>
2302 * docs/gst/gstreamer-sections.txt:
2303 * gst/gstbuffer.c: (gst_buffer_try_new_and_alloc):
2304 * gst/gstbuffer.h:
2305 * tests/check/gst/gstbuffer.c: (GST_START_TEST),
2306 (gst_buffer_suite):
2307 API: add gst_buffer_try_new_and_alloc() plus unit test (#431940).
2309 2007-04-26 Stefan Kost <ensonic@users.sf.net>
2311 * gst/gstregistrybinary.c: (gst_registry_binary_write_cache),
2312 (gst_registry_binary_load_pad_template),
2313 (gst_registry_binary_load_plugin),
2314 (gst_registry_binary_read_cache):
2315 * gst/gstregistrybinary.h:
2316 Implement no-mmap alternative for registry reading. Do code cleanups.
2317 Add more comments about avoiding strdups for all text data. Comments
2318 welcome.
2320 2007-04-25 Stefan Kost <ensonic@users.sf.net>
2322 * gst/gstregistrybinary.h (GstBinaryPluginElement,
2323 GstBinaryPluginFeature, _GstBinaryElementFactory, plugin_feature,
2324 GstBinaryElementFactory, _GstBinaryTypeFindFactory, plugin_feature):
2325 Comment structs and reformat to fix the build (that stuff should go
2326 into a priv. header).
2328 2007-04-25 Stefan Kost <ensonic@users.sf.net>
2330 * gst/gstregistrybinary.c: (gst_registry_binary_save_feature),
2331 (gst_registry_binary_load_feature):
2332 * gst/gstregistrybinary.h:
2333 Refactor so that we can implement multiple features. Add support for
2334 TypeFindFactory features.
2336 2007-04-24 Stefan Kost <ensonic@users.sf.net>
2338 Patch by: Peter Kjellerstedt <Peter.Kjellerstedt@axis.com>
2340 * configure.ac:
2341 Fix AM_CONDITIONAL(GST_DISABLE_GST_DEBUG,...) and update comment.
2343 2007-04-23 Stefan Kost <ensonic@users.sf.net>
2345 * gst/gstbin.c: (gst_bin_element_set_state),
2346 (iterator_activate_fold_with_resync), (gst_bin_continue_func),
2347 (bin_handle_async_done), (gst_bin_handle_message_func):
2348 Fix build with --gst-disable-gst-debug
2350 2007-04-21 Tim-Philipp Müller <tim at centricular dot net>
2352 * libs/gst/base/gstbasetransform.c: (gst_base_transform_activate):
2353 Make sure streaming has finished before calling the ::stop() vfunc,
2354 since that vfunc might clear state which is being used in the
2355 streaming thread. This fixes a race that caused crashes in
2356 audioresample when shutting down a pipeline (#420106).
2358 2007-04-20 Stefan Kost <ensonic@users.sf.net>
2360 * docs/gst/gstreamer-sections.txt:
2361 That was one byte missing.
2363 2007-04-20 Stefan Kost <ensonic@users.sf.net>
2365 * configure.ac:
2366 * docs/gst/gstreamer-sections.txt:
2367 * gst/Makefile.am:
2368 * gst/gstconfig.h.in:
2369 * gst/gstobject.c: (gst_object_class_init),
2370 (gst_signal_object_class_init):
2371 * gst/gstobject.h:
2372 2nd attempt to have a xml-less build as a joined effort of #413123
2373 and #421480.
2375 2007-04-20 Stefan Kost <ensonic@users.sf.net>
2377 * docs/design/draft-tagreading.txt:
2378 Added open issues/thoughts to draft.
2380 2007-04-19 Sebastian Dröge <slomo@circular-chaos.org>
2382 * gst/parse/grammar.tab.pre.c:
2383 * gst/parse/grammar.tab.pre.h:
2384 * gst/parse/lex._gst_parse_yy.pre.c:
2385 Update the prebuild parser sources.
2387 2007-04-19 Sebastian Dröge <slomo@circular-chaos.org>
2389 * gst/parse/Makefile.am:
2390 And now fix the building of the flex sources. Now everything should
2391 work as expected.
2393 2007-04-19 Sebastian Dröge <slomo@circular-chaos.org>
2395 * gst/parse/Makefile.am:
2396 Now hopefully fix the build failures by setting proper rule
2397 dependencies and moving instead of copying.
2399 2007-04-19 Stefan Kost <ensonic@users.sf.net>
2401 * tests/benchmarks/complexity.gnuplot:
2402 * tests/benchmarks/complexity.scm:
2403 * tests/benchmarks/mass-elements.gnuplot:
2404 * tests/benchmarks/mass-elements.scm:
2405 Total licensification.
2407 2007-04-19 Stefan Kost <ensonic@users.sf.net>
2409 * gst/parse/Makefile.am:
2410 Fix the build by correcting the rule that gave wrong files to flex.
2412 2007-04-19 Stefan Kost <ensonic@users.sf.net>
2414 * tests/benchmarks/complexity.c:
2415 * tests/benchmarks/mass-elements.c:
2416 Change licence to LGPL as granted by Benjamin and Andy.
2418 2007-04-19 Sebastian Dröge <slomo@circular-chaos.org>
2420 * gst/parse/Makefile.am:
2421 Add correct grammar.tab.h dependency if compiling without new enough
2422 flex. Fixes #431150.
2424 2007-04-18 Sebastian Dröge <slomo@circular-chaos.org>
2426 * gst/parse/Makefile.am:
2427 Fix typo and use outdated sources if the flex/bison sources are newer
2428 than the pregenerated ones but flex is too old. Print a warning in
2429 that case. This should fix the build on the build bot.
2431 2007-04-18 Sebastian Dröge <slomo@circular-chaos.org>
2433 Patch by: Marc-Andre Lureau <marcandre dot lureau at gmail dot com>
2434 * gst/parse/Makefile.am:
2435 * gst/parse/grammar.y:
2436 * gst/parse/parse.l:
2437 Make the parser reentrant and recursively callable. This requires flex
2438 >= 2.5.31, for older versions pregenerated sources are used as we
2439 can't bump the build dependency. Finally fixes #349180.
2441 * gst/gstparse.c: (gst_parse_launch):
2442 Drop the HAVE_MT_SAVE_FLEX #ifdefs as we always use a new enough flex
2443 now anyway.
2445 * docs/gst/Makefile.am:
2446 * docs/gst/Makefile.am:
2447 * gst/parse/grammar.tab.pre.c: (__gst_parse_strdup),
2448 (__gst_parse_strfree), (__gst_parse_link_new),
2449 (__gst_parse_link_free), (__gst_parse_chain_new),
2450 (__gst_parse_chain_free), (SET_ERROR), (YYPRINTF),
2451 (gst_parse_element_set), (gst_parse_free_link),
2452 (gst_parse_found_pad), (gst_parse_perform_delayed_link),
2453 (gst_parse_perform_link), (yytnamerr), (yysyntax_error), (yyerror),
2454 (_gst_parse_launch):
2455 * gst/parse/grammar.tab.pre.h:
2456 * gst/parse/lex._gst_parse_yy.pre.c: (PRINT), (yy_get_next_buffer),
2457 (yy_get_previous_state), (yy_try_NUL_trans), (input),
2458 (_gst_parse_yyrestart), (_gst_parse_yy_switch_to_buffer),
2459 (_gst_parse_yy_load_buffer_state), (_gst_parse_yy_create_buffer),
2460 (_gst_parse_yy_delete_buffer), (_gst_parse_yy_init_buffer),
2461 (_gst_parse_yy_flush_buffer), (_gst_parse_yypush_buffer_state),
2462 (_gst_parse_yypop_buffer_state),
2463 (_gst_parse_yyensure_buffer_stack), (_gst_parse_yy_scan_buffer),
2464 (_gst_parse_yy_scan_string), (_gst_parse_yy_scan_bytes),
2465 (yy_fatal_error), (_gst_parse_yyget_extra),
2466 (_gst_parse_yyget_lineno), (_gst_parse_yyget_column),
2467 (_gst_parse_yyget_in), (_gst_parse_yyget_out),
2468 (_gst_parse_yyget_leng), (_gst_parse_yyget_text),
2469 (_gst_parse_yyset_extra), (_gst_parse_yyset_lineno),
2470 (_gst_parse_yyset_column), (_gst_parse_yyset_in),
2471 (_gst_parse_yyset_out), (_gst_parse_yyget_debug),
2472 (_gst_parse_yyset_debug), (_gst_parse_yyget_lval),
2473 (_gst_parse_yyset_lval), (_gst_parse_yylex_init),
2474 (yy_init_globals), (_gst_parse_yylex_destroy), (yy_flex_strncpy),
2475 (yy_flex_strlen), (_gst_parse_yyalloc), (_gst_parse_yyrealloc),
2476 (_gst_parse_yyfree):
2477 If the installed flex version is too old use pre-generated parser
2478 sources. These pre-generated parser sources are always updated when
2479 the actual flex/bison sources change but require everybody who wants
2480 to change something in the parser to have flex >= 2.5.31 installed.
2482 2007-04-18 Stefan Kost <ensonic@users.sf.net>
2484 * common/m4/gst-gettext.m4:
2485 * gst/gst-i18n-lib.h:
2486 Make --disable-nls to work
2488 2007-04-17 Wim Taymans <wim@fluendo.com>
2490 * gst/gstconfig.h.in:
2491 Revert previous change that broke the build.
2493 2007-04-17 Stefan Kost <ensonic@users.sf.net>
2495 * configure.ac:
2496 * gst/Makefile.am:
2497 * gst/gstconfig.h.in:
2498 Drop libxml2 dependency when building with
2499 --enable-binary-registry --disable-loadsave
2501 2007-04-16 Tim-Philipp Müller <tim at centricular dot net>
2503 * gst/gstregistrybinary.c: (gst_registry_binary_write_cache),
2504 (gst_registry_binary_read_cache):
2505 * gst/gstregistrybinary.h:
2506 Remove unnecessary <sys/mman.h> include which broke the win32 build
2507 with MingW; move includes from header file to .c file, even if the
2508 header file isn't installed; use g_strerror() where UTF-8 strings
2509 are expected, such as in GST_DEBUG messages.
2511 2007-04-13 Jan Schmidt <thaytan@mad.scientist.com>
2513 * docs/libs/gstreamer-libs-sections.txt:
2514 Remove bogus addition for API I didn't end up keeping.
2516 * libs/gst/base/gstbasesrc.h:
2517 Mention Since: 0.10.13 in the documentation.
2519 Add the API keyword to the previous ChangeLog entry.
2521 2007-04-13 Jan Schmidt <thaytan@mad.scientist.com>
2523 * docs/libs/gstreamer-libs-sections.txt:
2524 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
2525 (gst_base_src_default_prepare_seek_segment),
2526 (gst_base_src_prepare_seek_segment), (gst_base_src_perform_seek):
2527 * libs/gst/base/gstbasesrc.h:
2528 Allow basesrc derived classes to execute seeks in other formats
2529 by providing a prepare_seek_segment vmethod. Sub-classes can choose
2530 to prepare the GstSegment in any format that their perform_seek method
2531 will be able to understand. The default implementation provides the
2532 old behaviour of attempting to convert the seek offsets to the
2533 configured native format.
2535 API: basesrc::prepare_seek_segment vmethod.
2537 2007-04-13 Jan Schmidt <thaytan@mad.scientist.com>
2539 * gst/gstelement.c: (gst_element_get_state_func):
2540 Don't output the same debug statement twice.
2542 * libs/gst/base/gstadapter.c: (gst_adapter_try_to_merge_up),
2543 (gst_adapter_peek), (gst_adapter_take_buffer):
2544 Optimise the case where we have buffers at the head of the queue that
2545 can be joined quickly (because they're contiguous sub-buffers) by
2546 merging them together rather than copying data out into new memory.
2548 * gst/parse/grammar.y:
2549 * tests/check/pipelines/parse-launch.c:
2550 Fix a leak in an error path for parse_launch, and add a check
2551 for it to the testsuite.
2553 2007-04-13 Jan Schmidt <thaytan@mad.scientist.com>
2555 * plugins/elements/gstmultiqueue.c: (gst_multi_queue_release_pad):
2556 Don't deadlock when releasing a pad - gst_pad_set_active may try
2557 and take the multiqueue lock too.
2559 2007-04-12 Tim-Philipp Müller <tim at centricular dot net>
2561 * gst/gsterror.c: (_gst_core_errors_init):
2562 * gst/gsterror.h:
2563 API: add GST_CORE_ERROR_DISABLED (#392804).
2565 2007-04-12 Thomas Vander Stichele <thomas at apestaart dot org>
2567 * docs/faq/gst-uninstalled:
2568 don't get empty paths on the PATH variables
2569 * gst/gstpad.c (gst_pad_is_active, gst_pad_set_blocked_async):
2570 Don't format for the uncommon terminal width of 84 characters.
2572 2007-04-06 Wim Taymans <wim@fluendo.com>
2574 * gst/gstpipeline.c: (reset_stream_time),
2575 (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time):
2576 Only try to select a different pipeline clock when we went back to
2577 PAUSED and not when we merely got flushed.
2579 2007-04-05 Michael Smith <msmith@fluendo.com>
2581 * tools/gst-launch.1.in:
2582 fractions are better supported in gstreamer than ractions, so
2583 suggest using those.
2585 2007-04-05 Thomas Vander Stichele <thomas at apestaart dot org>
2587 Submitted by: Mogens Jaeger <mogens@jaeger.tf>
2589 * po/LINGUAS:
2590 * po/da.po:
2591 Added Danish translation.
2593 2007-04-05 Wim Taymans <wim@fluendo.com>
2595 * libs/gst/base/gstbasesink.c:
2596 (gst_base_sink_queue_object_unlocked), (gst_base_sink_event):
2597 Fix leak caused when refusing newsegment after EOS.
2599 * plugins/elements/gstfakesink.c: (gst_fake_sink_class_init),
2600 (gst_fake_sink_init), (gst_fake_sink_set_property),
2601 (gst_fake_sink_get_property), (gst_fake_sink_preroll),
2602 (gst_fake_sink_render), (gst_fake_sink_change_state):
2603 * plugins/elements/gstfakesink.h:
2604 Add num-buffers property to make the element generate EOS after a
2605 configurable amount of buffers.
2606 API: fakesink::num-buffers property.
2608 * tests/check/elements/fakesink.c: (GST_START_TEST),
2609 (fakesink_suite):
2610 Fix GstBus leak in test.
2611 Test for fakesink num-buffers.
2613 2007-04-05 Wim Taymans <wim@fluendo.com>
2615 * libs/gst/base/gstbasesink.c:
2616 (gst_base_sink_queue_object_unlocked), (gst_base_sink_event),
2617 (gst_base_sink_change_state):
2618 Don't accept anything after an EOS, return UNEXPECTED instead.
2620 * tests/check/elements/fakesink.c: (GST_START_TEST),
2621 (fakesink_suite):
2622 Unit test for new EOS behaviour.
2624 2007-04-05 Wim Taymans <wim@fluendo.com>
2626 * gst/gstelement.c: (gst_element_get_request_pad):
2627 Make padtemplates also work when they don't contain %s or %d.
2629 2007-04-05 Wim Taymans <wim@fluendo.com>
2631 * docs/gst/gstreamer-sections.txt:
2632 * gst/gstclock.c: (gst_clock_adjust_unlocked),
2633 (gst_clock_unadjust_unlocked), (gst_clock_set_calibration):
2634 * gst/gstclock.h:
2635 Improve _adjust_unlocked() so that it overflows less.
2636 Add gst_clock_unadjust_unlocked to convert from external time to
2637 internal time based on calibration.
2638 Add some more debug.
2639 API: GstClock::gst_clock_unadjust_unlocked()
2641 2007-04-03 Wim Taymans <wim@fluendo.com>
2643 Patch by: Tommi Myöhänen <ext-tommi dot myohanen at nokia dot com>
2645 * plugins/elements/gstmultiqueue.c: (gst_multi_queue_release_pad):
2646 Deactivate pads and free GstSingleQueue with gst_single_queue_free()
2647 when releasing sink pad. Fixes #425400.
2649 2007-04-02 Stefan Kost <ensonic@users.sf.net>
2651 * docs/random/ensonic/dynlink.txt:
2652 More work on proposal for new core api.
2654 * docs/libs/gstreamer-libs-sections.txt:
2655 * libs/gst/base/gstbasetransform.h:
2656 API: GST_BASE_TRANSFORM_LOCK/UNLOCK added
2658 * libs/gst/controller/gstcontroller.c:
2659 (on_object_controlled_property_changed),
2660 (gst_controller_sync_values),
2661 (gst_controller_set_interpolation_mode):
2662 * libs/gst/controller/gstcontroller.h:
2663 Less verbose logging add docs for unimplemented parts and correctly
2664 return when using unavailable parts.
2666 2007-03-29 Jan Schmidt <thaytan@mad.scientist.com>
2668 * gst/gstclock.c: (gst_clock_set_master), (do_linear_regression):
2669 Move all the debug to the CLOCK category, and associate it with
2670 the clock object.
2672 2007-03-29 Jan Schmidt <thaytan@mad.scientist.com>
2674 * libs/gst/base/gstadapter.c: (gst_adapter_take_buffer):
2675 Make take_buffer a bit quicker by removing redundant checks
2676 caused by calling gst_adapter_take.
2678 2007-03-28 Tim-Philipp Müller <tim at centricular dot net>
2680 * plugins/elements/gstmultiqueue.c: (gst_single_queue_free):
2681 Don't leak GCond.
2683 * tests/check/Makefile.am:
2684 * tests/check/elements/.cvsignore:
2685 * tests/check/elements/multiqueue.c: (setup_multiqueue),
2686 (GST_START_TEST), (multiqueue_suite):
2687 Add some dead simple unit tests for the 'multiqueue' element
2688 (some bits don't work yet and are disabled for now).
2690 2007-03-28 Tim-Philipp Müller <tim at centricular dot net>
2692 * gst/gstelement.c: (gst_element_get_request_pad),
2693 (gst_element_class_get_request_pad_template):
2694 Make gst_element_get_request_pad() create request pads only for
2695 request pad templates and not for, say, sometimes pad templates.
2697 2007-03-28 Stefan Kost <ensonic@users.sf.net>
2699 * docs/design/draft-klass.txt:
2700 Add example that needs more thinking.
2702 * docs/design/draft-missing-plugins.txt:
2703 More thoughts about wrapper plugins.
2705 * docs/random/ensonic/embedded.txt:
2706 * docs/random/ensonic/profiling.txt:
2707 More design work.
2709 2007-03-25 Wim Taymans <wim@fluendo.com>
2711 * libs/gst/base/gstbasesrc.c: (gst_base_src_get_range),
2712 (gst_base_src_loop):
2713 Only push the segment events in the PLAYING state for live sources.
2715 2007-03-23 Jan Schmidt <thaytan@mad.scientist.com>
2717 * gst/gstpipeline.c: (gst_pipeline_change_state):
2718 Modify the clock distribution path in PAUSED->PLAYING so that we
2719 never attempt to choose a new clock unless we're actually leaving
2720 the PAUSED state for the first time. This prevents choosing a
2721 different clock when the state_change gets called for a 2nd time due
2722 to some element doing an async state change.
2724 2007-03-22 Sebastian Dröge <slomo@circular-chaos.org>
2726 * gst/gstpad.c: (gst_pad_set_caps), (gst_pad_configure_sink),
2727 (gst_pad_configure_src), (gst_pad_alloc_buffer_full),
2728 (gst_pad_chain_unchecked), (gst_pad_push):
2729 Revert last commit. This needs some more thoughts.
2731 2007-03-22 Sebastian Dröge <slomo@circular-chaos.org>
2733 * gst/gstpad.c: (gst_pad_set_caps), (gst_pad_alloc_buffer_full),
2734 (gst_pad_chain_unchecked), (gst_pad_push):
2735 Check in set_caps if the caps are compatible with the pad and remove
2736 two functions that are redundant now. Fixes #421543.
2738 2007-03-22 Wim Taymans <wim@fluendo.com>
2740 * tests/check/gst/gstsystemclock.c: (GST_START_TEST),
2741 (mixed_thread), (mixed_async_cb), (gst_systemclock_suite):
2742 Unref some more to make valgrind happy.
2744 2007-03-22 Wim Taymans <wim@fluendo.com>
2746 * gst/gstsystemclock.c: (gst_system_clock_id_wait_jitter_unlocked),
2747 (gst_system_clock_id_wait_jitter),
2748 (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
2749 Fix anoying regression that survived a few releases. When adding an
2750 async entry while blocking on a sync entry, the sync entry will unblock
2751 but still be busy, so it should continue to wait instead of returning
2752 _BUSY to the app.
2753 Add some comments here and there.
2755 * tests/check/gst/gstsystemclock.c: (mixed_thread),
2756 (mixed_async_cb), (GST_START_TEST), (gst_systemclock_suite):
2757 Add testcase for this.
2759 2007-03-22 Wim Taymans <wim@fluendo.com>
2761 * libs/gst/base/gstbasesrc.c: (gst_base_src_get_range):
2762 Handle errors from the clock sync better, only UNSCHEDULED indicates a
2763 WRONG_STATE and can silently pause the task. All other cases should
2764 error out.
2766 2007-03-22 Wim Taymans <wim@fluendo.com>
2768 Patch by: Ville Syrjala <syrjala at sci dot fi>
2770 * gst/gstpad.c: (gst_pad_alloc_buffer_full), (gst_pad_send_event):
2771 Fix possible deadlock if pad eventfunc is not specified. Fixes #421177.
2772 Improve debugging.
2774 2007-03-21 Michael Smith <msmith@fluendo.com>
2776 * docs/pwg/advanced-types.xml:
2777 Fix some errors in the typefinding docs pointed out on irc.
2779 2007-03-21 Jan Schmidt <thaytan@mad.scientist.com>
2781 * libs/gst/base/gstbasesrc.c:
2782 Clarify FIXME comment in the face of having added unlock_stop()
2784 2007-03-21 Wim Taymans <wim@fluendo.com>
2786 * gst/gstbin.c: (gst_bin_get_type), (gst_bin_element_set_state):
2787 Prepare for release where we warn against possible app breakage in the
2788 case of live pipelines along with an env var to enable/disable live
2789 preroll mode (GST_COMPAT=[no-]live-preroll).
2791 2007-03-20 Zaheer Abbas Merali <zaheerabbas at merali dot org>
2793 * plugins/elements/gstidentity.c (gst_identity_check_imperfect_offset):
2794 So we should use correct constants for checking for None offset.
2796 2007-03-20 Wim Taymans <wim@fluendo.com>
2798 * docs/design/part-block.txt:
2799 Mention the fact that the newly switched element should be set to at
2800 least PAUSED.
2802 2007-03-20 Wim Taymans <wim@fluendo.com>
2804 * gst/gst.c:
2805 Fix compilation with registry disabled as spotted by Saur.
2807 2007-03-20 Wim Taymans <wim@fluendo.com>
2809 Patch by: Olivier Crete <tester at tester dot ca>
2811 * gst/gstelement.c: (gst_element_sync_state_with_parent):
2812 Look at the pending state too when syncing the element state to the
2813 parent. Fixes #420133.
2815 2007-03-19 Jan Schmidt <thaytan@mad.scientist.com>
2817 * libs/gst/base/gstbasesink.c: (gst_base_sink_set_flushing),
2818 (gst_base_sink_change_state):
2819 * libs/gst/base/gstbasesink.h:
2820 * libs/gst/base/gstbasesrc.c: (gst_base_src_perform_seek),
2821 (gst_base_src_default_event), (gst_base_src_unlock_stop),
2822 (gst_base_src_deactivate):
2823 * libs/gst/base/gstbasesrc.h:
2824 Add ::unlock_stop to basesrc and basesink. This allows an opportunity
2825 for sub-classes to correctly clear any state they set trying to
2826 unlock, such as clearing out unlock commands from a command fd.
2827 API: basesrc::unlock_stop
2828 API: basesink::unlock_stop
2830 * plugins/elements/gstfdsink.c: (gst_fd_sink_class_init),
2831 (gst_fd_sink_render), (gst_fd_sink_unlock),
2832 (gst_fd_sink_unlock_stop):
2833 * plugins/elements/gstfdsrc.c: (gst_fd_src_class_init),
2834 (gst_fd_src_init), (gst_fd_src_unlock), (gst_fd_src_unlock_stop),
2835 (gst_fd_src_create), (gst_fd_src_get_size), (gst_fd_src_do_seek):
2837 Implement unlock_stop in fdsrc and fdsink.
2838 Implement seeking in fdsrc when a seekable fd is passed, as in
2839 gst-launch-0.10 fdsrc ! ... ! xvimagesink < /path/to/file
2841 2007-03-19 Wim Taymans <wim@fluendo.com>
2843 Patch by: Evan Nemerson <evan at coeus dash group dot com>
2845 * gst/gstelement.c: (gst_element_class_init):
2846 Fix pad-added and pad-removed signal signatures so that the pad type is
2847 stated as GST_TYPE_PAD instead of G_TYPE_OBJECT. Fixes #419851.
2849 2007-03-19 Wim Taymans <wim@fluendo.com>
2851 * docs/gst/gstreamer-sections.txt:
2852 Add new element field and method.
2854 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init),
2855 (bin_remove_messages), (gst_bin_add_func), (gst_bin_remove_func),
2856 (gst_bin_recalc_state), (gst_bin_get_state_func),
2857 (gst_bin_element_set_state), (gst_bin_change_state_func),
2858 (gst_bin_continue_func), (bin_bus_handler),
2859 (bin_push_state_continue), (bin_handle_async_start),
2860 (bin_handle_async_done), (gst_bin_handle_message_func):
2861 Make async state changes a bit smarter by using new ASYNC_START and
2862 ASYNC_DONE messages. This reduces the number of times we run the state
2863 recalculation thread.
2864 Don't change state of element with a pending ASYNC_START message.
2865 Deprecate STATE_DIRTY messages.
2867 * gst/gstelement.c: (gst_element_init), (gst_element_send_event),
2868 (gst_element_get_state_func), (gst_element_continue_state),
2869 (gst_element_lost_state), (gst_element_set_state_func),
2870 (gst_element_change_state):
2871 * gst/gstelement.h:
2872 Keep the state that was last set by the app in a new element field.
2873 Don't allow state changes when handling an element event.
2874 Post ASYNC_START and ASYNC_DONE messages.
2875 Change lost_state so that we go to PAUSED and wait for the parent to set
2876 us to PLAYING again (so latency calculation can be performed)
2877 Export gst_element_change_state() method so that subclasses can use it.
2878 API: gst_element_change_state()
2879 API: GST_STATE_TARGET
2881 * gst/gstpipeline.c: (gst_pipeline_class_init),
2882 (reset_stream_time), (gst_pipeline_change_state),
2883 (gst_pipeline_handle_message), (gst_pipeline_set_new_stream_time):
2884 Using the new ASYNC_START message we can reset the base_time when
2885 needed. This can then be used to implement base_time redistribution in
2886 flushing seeks so that we can remove the explicit seek handling.
2887 Perform latency query and configuration when going to PLAYING.
2889 * libs/gst/base/gstbasesink.c: (gst_base_sink_commit_state),
2890 (gst_base_sink_query), (gst_base_sink_change_state):
2891 Post new ASYNC_START/ASYNC_DONE messages.
2893 * tests/check/generic/sinks.c: (GST_START_TEST):
2894 Fix test because the bin will not set the async element to PLAYING right
2895 away.
2897 * tests/check/gst/gstbin.c: (pop_async_done), (GST_START_TEST):
2898 Make the message check a little stronger.
2899 Handle ASYNC messages.
2901 * tests/check/pipelines/cleanup.c: (GST_START_TEST):
2902 * tests/check/pipelines/simple-launch-lines.c: (GST_START_TEST):
2903 Expect ASYNC_DONE messages.
2905 2007-03-19 Wim Taymans <wim@fluendo.com>
2907 * docs/gst/gstreamer-sections.txt:
2908 * gst/gstmessage.c: (gst_message_new_async_start),
2909 (gst_message_new_async_done), (gst_message_parse_info),
2910 (gst_message_parse_async_start):
2911 * gst/gstmessage.h:
2912 Add ASYNC_START and ASYNC_DONE messages to prepare for latency
2913 support.
2915 2007-03-15 Tim-Philipp Müller <tim at centricular dot net>
2917 * tools/gst-inspect.c:
2918 (print_plugin_automatic_install_info_codecs):
2919 Now that we don't check for the 'Codec' keyword any longer in the
2920 klass, we shouldn't spew a warning if the klass isn't a decoder or
2921 encoder (since it might be a Source/Network, for example).
2923 2007-03-14 Tim-Philipp Müller <tim at centricular dot net>
2925 * tools/gst-inspect.c:
2926 (print_plugin_automatic_install_info_codecs):
2927 Don't require decoder/demuxer/depayloader elements or
2928 encoder/muxer/paylader elements to have 'Codec' as part of their
2929 factory class string when introspecting a plugin's capabilities.
2930 draft-klass.txt mentions that it might be removed in future, and
2931 flump3dec doesn't have it as part of its class string, so chances
2932 are others might also not have it.
2934 2007-03-14 Thomas Vander Stichele <thomas at apestaart dot org>
2936 * po/af.po:
2937 * po/az.po:
2938 * po/bg.po:
2939 * po/ca.po:
2940 * po/cs.po:
2941 * po/de.po:
2942 * po/en_GB.po:
2943 * po/fr.po:
2944 * po/it.po:
2945 * po/nb.po:
2946 * po/nl.po:
2947 * po/ru.po:
2948 * po/sq.po:
2949 * po/sr.po:
2950 * po/sv.po:
2951 * po/tr.po:
2952 * po/uk.po:
2953 * po/vi.po:
2954 * po/zh_CN.po:
2955 * po/zh_TW.po:
2956 Update translations from translation project
2958 2007-03-14 Stefan Kost <ensonic@users.sf.net>
2960 * gst/gstchildproxy.c: (gst_child_proxy_get_property),
2961 (gst_child_proxy_set_property):
2962 Invert precondition check to be alike the ones in the mimiced gobject
2963 api.
2965 2007-03-13 Stefan Kost <ensonic@users.sf.net>
2967 * docs/design/draft-tagreading.txt:
2968 * docs/random/ensonic/audiobaseclasses.txt:
2969 Do some Architect work.
2971 * gst/gstobject.c: (gst_object_set_name):
2972 Add a WARNING.
2974 * gst/gstpad.c:
2975 Add docs that point from gst_pad_get_range to gst_pad_pull_range
2977 2007-03-12 Jan Schmidt <thaytan@mad.scientist.com>
2979 * gst/gstsystemclock.c: (gst_system_clock_init),
2980 (gst_system_clock_start_async), (gst_system_clock_id_wait_async):
2981 Defer starting the async system clock thread until the first async
2982 wait is scheduled. Fixes #414986.
2984 2007-03-12 Tim-Philipp Müller <tim at centricular dot net>
2986 * plugins/elements/gstmultiqueue.c: (gst_multi_queue_finalize),
2987 (gst_single_queue_free):
2988 Fix small leak (free GstSingleQueue structure too, not only contents).
2990 2007-03-10 Sebastien Moutte <sebastien@moutte.net>
2992 * gst/gstbin.c:(gst_bin_add):
2993 Use GST_STR_NULL to prevent NULL pointer to be passed to GST_CAT_DEBUG.
2994 * win32/common/libgstbase.def:
2995 * win32/common/libgstreamer.def:
2996 Add new exported functions.
2998 2007-03-09 Wim Taymans <wim@fluendo.com>
3000 * docs/plugins/gstreamer-plugins-sections.txt:
3001 Fix GstTee docs.
3003 2007-03-09 Wim Taymans <wim@fluendo.com>
3005 * docs/gst/gstreamer-sections.txt:
3006 * gst/gstbuffer.c: (gst_buffer_copy_metadata), (_gst_buffer_copy):
3007 * gst/gstbuffer.h:
3008 Add metadata copy functions. Fixes #393099.
3009 API: gst_buffer_copy_metadata()
3011 * gst/gstutils.c: (gst_buffer_stamp):
3012 * libs/gst/base/gstbasetransform.c:
3013 (gst_base_transform_prepare_output_buffer):
3014 Use new metadata copy functions.
3016 2007-03-09 Thomas Vander Stichele <thomas at apestaart dot org>
3018 * plugins/elements/gstidentity.c: (gst_identity_class_init),
3019 (gst_identity_init), (gst_identity_check_perfect),
3020 (gst_identity_check_imperfect_timestamp),
3021 (gst_identity_check_imperfect_offset), (gst_identity_transform_ip),
3022 (gst_identity_set_property), (gst_identity_get_property):
3023 * plugins/elements/gstidentity.h:
3024 Separate out check-imperfect-timestamp and check-imperfect-offset.
3025 Put back check-perfect as it was to keep compatibility.
3027 2007-03-09 Jan Schmidt <thaytan@mad.scientist.com>
3029 * gst/gstelement.c: (gst_element_dispose):
3030 There's no need to warn if VOID_PENDING is not NONE here, as
3031 long as the state is NULL it's ok, and that's checked immediately
3032 above.
3034 2007-03-08 Zaheer Abbas Merali <zaheerabbas at merali dot org>
3036 * plugins/elements/gstidentity.c: (gst_identity_check_perfect):
3037 Fix check for perfect stream to ignore buffers with -1
3038 offsets/offset ends when checking data contiguity.
3040 2007-03-08 Wim Taymans <wim@fluendo.com>
3042 * tools/gst-launch.c: (event_loop):
3043 Print INFO messages.
3045 2007-03-08 Wim Taymans <wim@fluendo.com>
3047 * libs/gst/base/gstbasetransform.c:
3048 (gst_base_transform_sink_eventfunc),
3049 (gst_base_transform_handle_buffer), (gst_base_transform_chain),
3050 (gst_base_transform_activate):
3051 * libs/gst/base/gstbasetransform.h:
3052 Add support for dropping buffers with custom GstFlowReturn.
3053 Set DISCONT flags on outgoing buffers based on QoS, incomming DISCONT
3054 buffers or dropped buffers.
3056 * docs/libs/gstreamer-libs-sections.txt:
3057 docs for new custom return code.
3059 * plugins/elements/gstidentity.c: (gst_identity_transform_ip):
3060 Use drop support in base class to implement drop-probability.
3062 2007-03-07 Tim-Philipp Müller <tim at centricular dot net>
3064 * gst/gst.c: (load_plugin_func):
3065 * gst/gstplugin.c: (gst_plugin_load_by_name), (gst_plugin_load):
3066 * gst/gstregistrybinary.c: (gst_registry_binary_read_cache):
3067 * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
3068 Remove newlines at end of debug log strings.
3070 2007-03-07 Zaheer Abbas Merali <zaheerabbas at merali dot org>
3072 * plugins/elements/gstidentity.c: (gst_identity_check_perfect):
3073 Only post bus message at max, once per buffer received.
3075 2007-03-07 Wim Taymans <wim@fluendo.com>
3077 * docs/design/Makefile.am:
3078 * docs/design/part-synchronisation.txt:
3079 Add doc about synchronisation
3081 * docs/design/draft-latency.txt:
3082 * docs/design/part-TODO.txt:
3083 * docs/design/part-clocks.txt:
3084 * docs/design/part-events.txt:
3085 * docs/design/part-gstbus.txt:
3086 * docs/design/part-gstpipeline.txt:
3087 * docs/design/part-live-source.txt:
3088 * docs/design/part-messages.txt:
3089 * docs/design/part-overview.txt:
3090 * docs/design/part-streams.txt:
3091 * docs/design/part-trickmodes.txt:
3092 Documentation updates.
3094 2007-03-07 Jan Schmidt <thaytan@mad.scientist.com>
3096 * gstreamer.doap:
3097 Update the doap file.
3099 2007-03-07 Zaheer Abbas Merali <zaheerabbas at merali dot org>
3101 * plugins/elements/gstidentity.c: (gst_identity_check_perfect):
3102 Rename non-perfect to imperfect for Mike and for the sanctity of the
3103 language.
3104 Also make sure bus message gets emitted for data-incontiguities.
3106 2007-03-07 Zaheer Abbas Merali <zaheerabbas at merali dot org>
3108 * plugins/elements/gstidentity.c: (gst_identity_check_perfect),
3109 (gst_identity_start):
3110 * plugins/elements/gstidentity.h:
3111 Emit bus message if check-perfect is true and we encounter a
3112 non-perfect stream between 2 consecutive buffers.
3113 Fixes #415394.
3115 2007-03-07 Jan Schmidt <thaytan@mad.scientist.com>
3117 * configure.ac:
3118 Back to CVS
3120 === release 0.10.12 ===
3122 2007-03-07 Jan Schmidt <thaytan@mad.scientist.com>
3124 * configure.ac:
3125 releasing 0.10.12, "Inevitable Demise"
3127 2007-03-01 Jan Schmidt <thaytan@mad.scientist.com>
3129 * configure.ac:
3130 Version 0.10.11.2 (0.10.12 pre-release)
3131 Bump libtool versioning.
3133 2007-03-01 Stefan Kost <ensonic@users.sf.net>
3135 * libs/gst/base/gstbasesrc.c: (gst_base_src_loop):
3136 Log flow-names and not numbers.
3138 2007-02-28 Thomas Vander Stichele <thomas at apestaart dot org>
3140 * configure.ac:
3141 Convert to new AG_GST style.
3143 2007-02-28 Wim Taymans <wim@fluendo.com>
3145 * libs/gst/base/gstbasesink.c: (gst_base_sink_query_latency):
3146 Don't unref query twice.
3148 2007-02-28 Wim Taymans <wim@fluendo.com>
3150 * gst/gstvalue.c: (gst_value_transform_object_string),
3151 (_gst_value_initialize):
3152 Implement GstObject -> string transform so we print object names
3153 when serializing GValues containing GstObjects.
3155 2007-02-28 Wim Taymans <wim@fluendo.com>
3157 * docs/gst/gstreamer-sections.txt:
3158 Add new stuff to docs.
3160 2007-02-28 Wim Taymans <wim@fluendo.com>
3162 * libs/gst/base/gstbasesink.c: (gst_base_sink_query_latency),
3163 (gst_base_sink_queue_object_unlocked), (gst_base_sink_send_event),
3164 (gst_base_sink_change_state):
3165 Improve latency query code.
3166 Don't leak latency events.
3168 * tests/check/gst/gstbin.c: (GST_START_TEST):
3169 Improve debugging.
3171 2007-02-28 Wim Taymans <wim@fluendo.com>
3173 * gst/gstelement.c: (gst_element_message_full),
3174 (gst_element_get_state_func):
3175 * gst/gstelement.h:
3176 Improve docs a little. Added Since: for new macro.
3178 * gst/gstobject.c: (gst_object_sink):
3179 * gst/gstpipeline.c: (gst_pipeline_change_state),
3180 (gst_pipeline_set_new_stream_time):
3181 * gst/gstpipeline.h:
3182 Improve debugging and docs.
3184 * gst/gstutils.c: (gst_element_state_change_return_get_name):
3185 Improve debugging.
3187 2007-02-28 Wim Taymans <wim@fluendo.com>
3189 * gst/gstelement.c: (gst_element_message_full),
3190 (gst_element_set_locked_state), (gst_element_get_state_func),
3191 (gst_element_change_state):
3192 Handle INFO messages from the GST_ELEMENT_INFO macro as well.
3193 Documentation updates.
3194 Small code cleanups.
3196 * gst/gstmessage.c: (gst_message_new_info),
3197 (gst_message_parse_info):
3198 * gst/gstmessage.h:
3199 API: gst_message_new_info()
3200 API: gst_message_parse_info()
3201 Add INFO message create and parse code.
3203 2007-02-28 Wim Taymans <wim@fluendo.com>
3205 * gst/gstbin.c: (bin_query_min_max_init), (bin_query_latency_fold),
3206 (bin_query_latency_done):
3207 Also report the live parameter of a latency query.
3209 2007-02-28 Thomas Vander Stichele <thomas at apestaart dot org>
3211 * tests/check/generic/states.c: (GST_START_TEST), (states_suite):
3212 Copy the current generic/states example from -base and adapt so
3213 we can use the exact same code everywhere.
3214 Check a STATES_IGNORE_ELEMENTS env var which can be used
3215 to ignore certain element factories for this test, which is
3216 what is being done in -base
3217 * tests/check/Makefile.am:
3218 Mention this environment variable.
3220 2007-02-27 Wim Taymans <wim@fluendo.com>
3222 * docs/gst/gstreamer-sections.txt:
3223 * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
3224 (gst_bus_timed_pop), (gst_bus_pop):
3225 * gst/gstbus.h:
3226 API: gst_bus_timed_pop()
3227 Implement gst_bus_timed_pop() to do a blocking timed wait for a
3228 message to arrive on the bus.
3230 * tests/check/gst/gstbus.c: (GST_START_TEST), (pop_thread),
3231 (gst_bus_suite):
3232 Two unit tests for new _timed_pop() function.
3234 2007-02-23 Wim Taymans <wim@fluendo.com>
3236 * gst/gstpipeline.c: (gst_pipeline_change_state),
3237 (gst_pipeline_provide_clock_func), (gst_pipeline_set_delay):
3238 Don't ref a NULL clock in _provide_clock_func().
3239 Don't allow an INVALID delay.
3240 Don't try to calculate base_time with an invalid start_time.
3241 Also distribute and notify a NULL clock when it was selected.
3243 * tools/gst-launch.c: (event_loop):
3244 Don't crash when a NULL clock was selected in the pipeline.
3246 2007-02-23 Tim-Philipp Müller <tim at centricular dot net>
3248 * docs/design/Makefile.am:
3249 * docs/design/draft-missing-plugins.txt:
3250 * docs/random/draft-missing-plugins.txt:
3251 Some small updates: update plugin system identifier prefix
3252 ('gstreamer.net' to 'gstreamer'), mention our new install
3253 API in libgstbaseutils rather than libgimme-codec, add
3254 reference to the online docs.
3256 2007-02-21 Thomas Vander Stichele <thomas at apestaart dot org>
3258 * win32/common/config.h:
3259 Pretty sure Bill never made a powerpc version. Powerpc hackers,
3260 use moap cl ci to only check in what is mentioned in the ChangeLog.
3262 2007-02-21 Thomas Vander Stichele <thomas at apestaart dot org>
3264 * docs/gst/gstreamer-sections.txt:
3265 * gst/gstelement.h:
3266 Fix up documentation to link to the correct GstGError section.
3267 Add GST_ELEMENT_INFO macro since someone else added a Info message.
3269 2007-02-21 Thomas Vander Stichele <thomas at apestaart dot org>
3271 * tools/gst-launch.c: (event_loop):
3272 Make sure that we actually show the important message part of a
3273 warning message.
3274 No need to check if the gerror is not NULL to free; first of all
3275 g_free accepts NULL; and second the default error handler would
3276 segfault if gerror was NULL.
3278 2007-02-21 Wim Taymans <wim@fluendo.com>
3280 * docs/gst/gstreamer-sections.txt:
3281 Removed docs as well.
3283 2007-02-21 Wim Taymans <wim@fluendo.com>
3285 * gst/gstmessage.c: (gst_message_parse_duration):
3286 * gst/gstmessage.h:
3287 Remove new messages for release.
3289 2007-02-20 Wim Taymans <wim@fluendo.com>
3291 * docs/design/part-gstghostpad.txt:
3292 * gst/gstghostpad.c: (gst_ghost_pad_dispose),
3293 (gst_ghost_pad_new_full):
3294 Make the ghostpad a parent of the internal pad again for better backward
3295 compatibility. Don't write code that relies on this however.
3297 * gst/gstpad.c: (gst_pad_activate_pull), (gst_pad_activate_push),
3298 (gst_pad_link_check_hierarchy):
3299 Require that parents should be GstElements in the hierarchy check.
3301 2007-02-20 Wim Taymans <wim@fluendo.com>
3303 * gst/gstbin.c: (bin_replace_message), (gst_bin_add_func),
3304 (gst_bin_change_state_func), (bin_query_min_max_init),
3305 (bin_query_latency_fold), (bin_query_latency_done),
3306 (gst_bin_query):
3307 Improve debug info.
3308 Implement latency query.
3310 2007-02-20 Wim Taymans <wim@fluendo.com>
3312 * docs/design/part-gstghostpad.txt:
3313 * gst/gstghostpad.c: (gst_ghost_pad_class_init),
3314 (gst_ghost_pad_internal_do_activate_push),
3315 (gst_ghost_pad_internal_do_activate_pull),
3316 (gst_ghost_pad_do_activate_push), (gst_ghost_pad_do_activate_pull),
3317 (gst_ghost_pad_do_link), (gst_ghost_pad_dispose),
3318 (gst_ghost_pad_new_full), (gst_ghost_pad_set_target):
3319 Do not set the internal pad as a parent anymore so we can avoid
3320 hierarchy linking errors when the ghostpad has no parent yet. This also
3321 fixes failed activation because of unlinked internal pads, which in
3322 turn fixes the impossible case where you have to activate a pad before
3323 you can add it to a running element.
3324 Also fix the docs.
3326 * gst/gstpad.c: (pre_activate), (post_activate),
3327 (gst_pad_set_active), (gst_pad_activate_pull),
3328 (gst_pad_activate_push), (gst_pad_check_pull_range):
3329 Add some more debug info.
3330 Mark activation mode in pre_activate so that we don't try to activate in
3331 endless loops. Fixes #385084.
3333 2007-02-19 Wim Taymans <wim@fluendo.com>
3335 * libs/gst/base/gstbasetransform.c: (gst_base_transform_init),
3336 (gst_base_transform_check_get_range):
3337 Implement a checkgetrange function instead of relying on the default
3338 core behaviour that assumes we can operate in pull mode if we have a
3339 getrange function. First step at fixing #385084.
3341 2007-02-15 Stefan Kost <ensonic@users.sf.net>
3343 * gst/gstchildproxy.h:
3344 * libs/gst/base/gstbasesink.h:
3345 * libs/gst/base/gstbasesrc.h:
3346 * libs/gst/base/gstbasetransform.h:
3347 More docs coverage and some ChangeLog surgery (add missing names)
3349 2007-02-15 Wim Taymans <wim@fluendo.com>
3351 * docs/design/part-TODO.txt:
3352 * docs/design/part-activation.txt:
3353 * docs/design/part-block.txt:
3354 * docs/design/part-buffering.txt:
3355 * docs/design/part-clocks.txt:
3356 * docs/design/part-element-source.txt:
3357 * docs/design/part-events.txt:
3358 * docs/design/part-gstbin.txt:
3359 * docs/design/part-gstbus.txt:
3360 * docs/design/part-gstpipeline.txt:
3361 * docs/design/part-live-source.txt:
3362 * docs/design/part-messages.txt:
3363 * docs/design/part-overview.txt:
3364 * docs/design/part-qos.txt:
3365 * docs/design/part-query.txt:
3366 * docs/design/part-states.txt:
3367 * docs/design/part-trickmodes.txt:
3368 Some doc updates. Start renaming from stream_time to running_time where
3369 it was used wrongly.
3371 2007-02-15 Wim Taymans <wim@fluendo.com>
3373 * libs/gst/base/gstbasesrc.c: (gst_base_src_default_query):
3374 Answer LATENCY query.
3376 2007-02-15 Wim Taymans <wim@fluendo.com>
3378 * tests/check/gst/gstevent.c: (event_probe), (test_event),
3379 (GST_START_TEST):
3380 Improve debugging.
3382 2007-02-15 Wim Taymans <wim@fluendo.com>
3384 * gst/gstpad.c: (gst_pad_get_internal_links_default),
3385 (gst_pad_dispatcher):
3386 Improve debugging of default pad dispatcher and query functions.
3388 2007-02-15 Wim Taymans <wim@fluendo.com>
3390 * docs/gst/gstreamer-sections.txt:
3391 Remove old unused method.
3393 2007-02-13 Wim Taymans <wim@fluendo.com>
3395 * tests/check/gst/gstsegment.c: (GST_START_TEST):
3396 Fix check
3398 2007-02-13 Wim Taymans <wim@fluendo.com>
3400 * docs/design/part-seeking.txt:
3401 Some small update.
3403 * gst/gstsegment.c: (gst_segment_set_seek):
3404 Revert old bogus change that should make seeking work again.
3406 2007-02-13 Stefan Kost <ensonic@users.sf.net>
3408 * docs/random/ensonic/dynlink.txt:
3409 * docs/random/ensonic/interfaces.txt:
3410 * docs/random/ensonic/receipies.txt:
3411 Possible dynamic reconnection api, plus some type fixes the other two
3412 docs.
3414 2007-02-13 Sebastian Dröge <slomo@circular-chaos.org>
3416 * plugins/elements/gstfilesink.c: (gst_file_sink_uri_set_uri):
3417 * plugins/elements/gstfilesrc.c: (gst_file_src_uri_set_uri):
3418 Also check for an absolute path following file:// in the filesrc
3419 element. Remove redundant check and call g_path_is_absolute() on the
3420 unescaped location.
3422 2007-02-13 Stefan Kost <ensonic@users.sf.net>
3424 * docs/design/draft-klass.txt:
3425 Add existing category analysis.
3427 * gst/gstcaps.c:
3428 Fix doc example, framerate is a fraction.
3430 2007-02-12 Stefan Kost <ensonic@users.sf.net>
3432 * configure.ac:
3433 * docs/gst/Makefile.am:
3434 * docs/gst/gstreamer-sections.txt:
3435 * docs/libs/Makefile.am:
3436 Erm, forgot a bunch of --extra-dir.
3438 2007-02-12 Stefan Kost <ensonic@users.sf.net>
3440 * configure.ac:
3441 * docs/gst/Makefile.am:
3442 * docs/libs/Makefile.am:
3443 * docs/plugins/Makefile.am:
3444 Add crossreferences to glib/gobject docs.
3446 2007-02-12 Wim Taymans <wim@fluendo.com>
3448 * docs/design/draft-latency.txt:
3449 Small update.
3451 * docs/libs/gstreamer-libs-sections.txt:
3452 * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init),
3453 (gst_base_sink_get_latency), (gst_base_sink_query_latency),
3454 (gst_base_sink_wait_clock), (gst_base_sink_send_qos),
3455 (gst_base_sink_perform_qos), (gst_base_sink_queue_object_unlocked),
3456 (gst_base_sink_chain_unlocked), (gst_base_sink_send_event),
3457 (gst_base_sink_get_position), (gst_base_sink_query),
3458 (gst_base_sink_change_state):
3459 * libs/gst/base/gstbasesink.h:
3460 API: gst_base_sink_query_latency() to let subclasses query the upstream
3461 latency.
3462 API: gst_base_sink_get_latency() to let subclasses query the configured
3463 latency in the sink.
3464 Implement query and set latency.
3465 Update some docs.
3466 As spotted by Will Newton <will dot newton at gmail dot com>: Make sure we
3467 don't continue preroll when we are flushing. Fixes #405284.
3469 * tests/check/pipelines/stress.c: (change_state_timeout),
3470 (quit_timeout), (GST_START_TEST), (stress_suite):
3471 Test for #405284.
3473 2007-02-09 Tim-Philipp Müller <tim at centricular dot net>
3475 Patch by: René Stadler <mail at renestadler de>
3477 * docs/gst/gstreamer-sections.txt:
3478 * gst/gsttaglist.c: (_gst_tag_initialize):
3479 * gst/gsttaglist.h:
3480 API: add GST_TAG_REFERENCE_LEVEL (#403597).
3482 2007-02-11 Stefan Kost <ensonic@users.sf.net>
3484 * docs/libs/Makefile.am:
3485 Fix path to core docs.
3487 * gst/gstbin.c: (gst_bin_get_by_interface),
3488 (gst_bin_iterate_all_by_interface):
3489 Refix docs by also renaming 'interface' to 'iface' in implementation.
3491 * docs/gst/gstreamer-sections.txt:
3492 * gst/gstcaps.c:
3493 * gst/gstchildproxy.c: (gst_child_proxy_base_init):
3494 * gst/gstchildproxy.h:
3495 * gst/gstelementfactory.c:
3496 * gst/gstpadtemplate.h:
3497 * libs/gst/controller/gstcontroller.c:
3498 (gst_controlled_property_new):
3499 Document more.
3501 2007-02-10 Sébastien Moutte <sebastien@moutte.net>
3503 * gst/gstbin.h:(gst_bin_get_by_interface),
3504 (gst_bin_iterate_all_by_interface):
3505 Replace interface parameter name by iface as interface is
3506 a reserved keyword in Visual Studio for C++ projects so it removes
3507 a build error for application developpers using VS.
3508 * plugins/elements/gstfilesrc.c:(gst_file_src_uri_set_uri):
3509 Fix a bug on Windows in uri format check. Now the prefix checked
3510 is file:// and next we check if the path after file:// is absolute.
3511 * win32/common/libgstbase.def:
3512 * win32/common/libgstdataprotocol.def:
3513 * win32/common/libgstgstreamer.def:
3514 Add new exported functions.
3516 2007-02-09 Andy Wingo <wingo@pobox.com>
3518 * tests/check/pipelines/simple-launch-lines.c
3519 (simple_launch_lines_suite, test_tee): Disable tee test until I
3520 have time to fix it :-(
3522 * tests/check/Makefile.am (noinst_HEADERS):
3523 * tests/check/libs/libsabi.c:
3524 * tests/check/libs/struct_ppc32.h: Add ABI checks for PPC32.
3525 * tests/check/gst/gstabi.c:
3526 * tests/check/gst/struct_ppc32.h: Add ABI checks for PPC32.
3528 * tests/check/pipelines/simple-launch-lines.c (test_tee): Add
3529 tests for push and pull tee behavior.
3531 * plugins/elements/gsttee.h:
3532 * plugins/elements/gsttee.c: Describe has-sink-loop better, and
3533 mark as deprecated as well as unimplemented. It was a crack idea.
3534 Add support for tee operating in pull mode, off by default.
3536 * gst/gstregistryxml.c (load_feature, load_plugin): Drop some
3537 normal-case logs down to LOG, raise errors to WARNING.
3538 (gst_registry_xml_read_cache): Don't log before calling a function
3539 that logs.
3541 * gst/gstregistry.c (gst_registry_finalize): Less debug on program
3542 exit (registry finalize).
3543 (gst_registry_add_plugin, gst_registry_add_feature): No need for a
3544 DEBUG log when we emit signals that people don't even have the
3545 chance to connect to.
3546 (gst_registry_scan_path_level): Less logging in the normal case.
3548 2007-02-05 Sebastian Dröge <slomo@circular-chaos.org>
3550 Patch by: Michal Benes <michal dot benes at itonis dot tv>
3552 * plugins/elements/gstfilesrc.c: (gst_file_src_create_read):
3553 Correctly generate EOS for non-seekable files. We don't have a total
3554 length for them and would get an unexpected end of file if we only
3555 special-cased for regular files. (Fixes: #404569)
3557 2007-02-05 Sebastian Dröge <slomo@circular-chaos.org>
3559 * tests/check/elements/filesrc.c: (GST_START_TEST),
3560 (filesrc_suite):
3561 Add unit test for the GstURIHandler interface in filesrc. This also
3562 tests the newly added file://localhost/foo/bar support.
3564 2007-02-04 Tim-Philipp Müller <tim at centricular dot net>
3566 * gst/gstelementfactory.h:
3567 The klass string is not a hierarchy. Add reference to the design doc
3568 for more information and common types.
3570 2007-02-02 Wim Taymans <wim@fluendo.com>
3572 * gst/gstquery.c: (gst_query_new_latency):
3573 Remove old structure field.
3575 2007-02-02 Stefan Kost <ensonic@users.sf.net>
3577 * tools/gst-launch.1.in:
3578 Give example for network streaming (#351998)
3580 2007-02-02 Wim Taymans <wim@fluendo.com>
3582 * docs/gst/gstreamer-sections.txt:
3583 Add docs for new methods.
3585 * gst/gstevent.c: (gst_event_new_latency),
3586 (gst_event_parse_latency):
3587 * gst/gstevent.h:
3588 Add new LATENCY event to configure latency in a pipeline.
3589 API: gst_event_new_latency
3590 API: gst_event_parse_latency
3592 * gst/gstmessage.c: (gst_message_new_buffering),
3593 (gst_message_new_lost_preroll), (gst_message_new_prerolled),
3594 (gst_message_new_latency), (gst_message_parse_buffering),
3595 (gst_message_parse_lost_preroll):
3596 * gst/gstmessage.h:
3597 Added messages used in draft-latency.
3598 API: gst_message_new_lost_preroll
3599 API: gst_message_parse_lost_preroll
3600 API: gst_message_new_prerolled
3601 API: gst_message_new_latency
3603 * gst/gstquery.c: (gst_query_new_latency), (gst_query_set_latency),
3604 (gst_query_parse_latency):
3605 * gst/gstquery.h:
3606 Implemented new latency query as in design doc.
3607 API: gst_query_new_latency
3608 API: gst_query_set_latency
3609 API: gst_query_parse_latency
3611 2007-02-02 Wim Taymans <wim@fluendo.com>
3613 * docs/design/draft-latency.txt:
3614 Slight redesign to allow for dynamic latency adjustments.
3616 * docs/design/part-negotiation.txt:
3617 Fix some typos.
3619 2007-02-02 Sebastian Dröge <slomo@circular-chaos.org>
3621 reviewed by: Wim Taymans <wim@fluendo.com>
3623 * plugins/elements/gstfilesink.c: (gst_file_sink_uri_set_uri):
3624 * plugins/elements/gstfilesrc.c: (gst_file_src_uri_set_uri):
3625 Allow file://localhost/foo/bar URLs and correctly fail for every other
3626 hostname that one sets. This was gnomevfssrc is linked for those if
3627 installed as it can handle it (#403172)
3629 2007-02-01 Sebastian Dröge <slomo@circular-chaos.org>
3631 reviewed by: Tim-Philipp Müller <tim at centricular dot net>
3633 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_finalize),
3634 (unref_data), (gst_collect_pads_add_pad_full):
3635 * libs/gst/base/gstcollectpads.h:
3636 Don't put the previously added destroy notify in the GstCollectData
3637 struct as all it's padding is already used and we don't want to break
3638 ABI. Instead put in the pad's GObject data for now. This should be
3639 cleaned up for 0.11 (#402393).
3641 2007-02-01 Sebastian Dröge <slomo@circular-chaos.org>
3643 reviewed by: Wim Taymans <wim@fluendo.com>
3645 * docs/libs/gstreamer-libs-sections.txt:
3646 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_finalize),
3647 (unref_data), (gst_collect_pads_add_pad),
3648 (gst_collect_pads_add_pad_full):
3649 * libs/gst/base/gstcollectpads.h:
3650 API: Add function to specify a destroy notification for custom
3651 GstCollectData when adding new pads in GstCollectPads (#402393).
3653 2007-02-01 Tim-Philipp Müller <tim at centricular dot net>
3655 * po/sv.po:
3656 Update Swedish translation (#378255).
3658 2007-01-31 Stefan Kost <ensonic@users.sf.net>
3660 * docs/design/draft-klass.txt:
3661 Fix the previous change, this is a list of categories and not a hierarchy.
3663 2007-01-31 Stefan Kost <ensonic@users.sf.net>
3665 * docs/design/draft-klass.txt:
3666 Add info about how to get a list of used classes.
3668 2007-01-30 Tim-Philipp Müller <tim at centricular dot net>
3670 * plugins/elements/gsttypefindelement.c:
3671 (gst_type_find_element_chain_do_typefinding),
3672 (gst_type_find_element_change_state):
3673 Don't leak found caps in chain function (no idea why that never
3674 showed up as a leak anywhere).
3676 2007-01-30 Stefan Kost <ensonic@users.sf.net>
3678 * gst/gstplugin.h:
3679 Fix and expand GstPluginDesc API docs.
3681 2007-01-29 Stefan Kost <ensonic@users.sf.net>
3683 * gst/gstcaps.c:
3684 * gst/gstelementfactory.c:
3685 * gst/gstpadtemplate.h:
3686 api doc fixes
3688 * libs/gst/controller/gstcontroller.c:
3689 (gst_controlled_property_new):
3690 * tests/examples/controller/audio-example.c:
3691 comment fixes
3693 2007-01-29 Stefan Kost <ensonic@users.sf.net>
3695 * configure.ac:
3696 comment about refining the xml deps
3698 * docs/manuals.mak:
3699 comments about moving away from jade for docs
3701 * gst/gst.c:
3702 recommit the ifdefs to use the binary registry
3704 * gst/gstbin.c: (gst_bin_change_state_func):
3705 this break is obsolete
3707 * gst/gstelementfactory.h:
3708 better GST_ELEMENT_DETAILS docs, add comment about translation
3710 * gst/gstinfo.h:
3711 remove eol slash
3713 * gst/gstobject.c: (gst_signal_object_get_type):
3714 add G_UNLIKELY as usual
3716 * gst/gstpad.c: (gst_pad_event_default):
3717 add fall trhu comment
3719 * gst/gstregistrybinary.c: (gst_registry_binary_write),
3720 (gst_registry_binary_initialize_magic),
3721 (gst_registry_binary_save_string),
3722 (gst_registry_binary_save_pad_template),
3723 (gst_registry_binary_save_feature),
3724 (gst_registry_binary_save_plugin),
3725 (gst_registry_binary_write_cache),
3726 (gst_registry_binary_check_magic),
3727 (gst_registry_binary_load_pad_template),
3728 (gst_registry_binary_load_feature),
3729 (gst_registry_binary_load_plugin),
3730 (gst_registry_binary_read_cache):
3731 comment typo and formatting
3733 * gst/gstutils.c: (gst_element_state_get_name),
3734 (gst_element_state_change_return_get_name):
3735 remove obsolete breaks
3737 * gst/gstvalue.c: (gst_date_get_type), (_gst_value_initialize):
3738 add FIXME 0.11 and remove cpp comment
3740 2007-01-29 Edward Hervey <edward@fluendo.com>
3742 * gst/gstregistrybinary.c: (gst_registry_binary_read_cache):
3743 Fix print statement in an even more portable way.
3745 2007-01-29 Tim-Philipp Müller <tim at centricular dot net>
3747 * docs/gst/gstreamer-sections.txt:
3748 * gst/gstutils.h:
3749 API: add GST_ROUND_DOWN_* macros (#401781).
3751 2007-01-27 Tim-Philipp Müller <tim at centricular dot net>
3753 * docs/gst/gstreamer.types.in:
3754 * gst/gstregistry.c: (gst_registry_class_init):
3755 Document registry signals and make gtk-doc pick them up (#401381).
3757 2007-01-26 Tim-Philipp Müller <tim at centricular dot net>
3759 * docs/pwg/building-testapp.xml:
3760 Add some audioconverts and audioresample to the pipeline, and some
3761 more comments and error handling.
3763 2007-01-26 Tim-Philipp Müller <tim at centricular dot net>
3765 * docs/manual/manual.xml:
3766 * docs/pwg/pwg.xml:
3767 Fix typo (#400987).
3769 2007-01-26 Wim Taymans <wim@fluendo.com>
3771 * gst/gstcaps.c: (gst_static_caps_get):
3772 Init caps flags too.
3774 2007-01-25 Sebastian Dröge <slomo@circular-chaos.org>
3776 Patch by: Jindrich Makovicka <jindrich.makovick at itonis dot tv>
3778 * plugins/elements/gstfilesrc.c: (gst_file_src_start):
3779 If not using mmap'ed files try to seek to the end instead of the
3780 start to determine whether we can seek at all. This fixes the case
3781 of 2GB+ files over NFS, where seeks in the first 2GB can succeed but
3782 seeks for everything afterwards fail. Fixes #400656
3784 2007-01-25 Wim Taymans <wim@fluendo.com>
3786 * gst/gstcaps.c: (_gst_caps_free), (gst_static_caps_get):
3787 Add some refcount debugging.
3788 Make gst_static_caps_get threadsafe, which is needed when autoplugging
3789 in multiple streaming threads.
3791 2007-01-25 Wim Taymans <wim@fluendo.com>
3793 Patch by: David Schleef <ds at schleef dot org>
3795 * docs/libs/gstreamer-libs-sections.txt:
3796 * libs/gst/base/gstadapter.c: (gst_adapter_copy):
3797 * libs/gst/base/gstadapter.h:
3798 API: gst_adapter_copy() that can reduce the amount of memcpy when
3799 getting data from the adapter. Fixes #388201.
3801 2007-01-25 Edward Hervey <edward@fluendo.com>
3803 * gst/gstregistrybinary.c: (gst_registry_binary_read_cache):
3804 In print statements, "%x" is for guint. Fixes build on macosx.
3806 2007-01-24 Edward Hervey <edward@fluendo.com>
3808 * plugins/elements/gstmultiqueue.c:
3809 (gst_multi_queue_loop):
3810 Small fix.
3811 (single_queue_overrun_cb), (single_queue_underrun_cb),
3812 (single_queue_check_full), (gst_single_queue_new):
3813 Implement single queue growth system.
3814 This uses the extra-size properties, and will grow single queues by
3815 that much if one goes full whereas there are others empty. This is
3816 called extra-mode in the code.
3817 When a single queue's levels go back below the initial max-size
3818 limits, it is no longer in extra-mode. This is to ensure we don't
3819 consume too much memory.
3820 Fixes #399875
3822 2007-01-23 Tim-Philipp Müller <tim at centricular dot net>
3824 * gst/gst.c: (gst_init_get_option_group):
3825 Make warning about late g_thread_init() calls a bit more explicit,
3826 so that it's more obvious to application developers what they need
3827 to do if a user files a bug against their application.
3829 2007-01-22 Edward Hervey <edward@fluendo.com>
3831 * plugins/elements/gstmultiqueue.c:
3832 (gst_multi_queue_src_activate_push), (gst_single_queue_new):
3833 Remove previous hack of unsetting the flushing flag for the source pad
3834 instead of activating it. Instead, fix the source pad activate function
3835 so that it no longer depends on having a parent set or not.
3837 2007-01-22 Tim-Philipp Müller <tim at centricular dot net>
3839 Patch by: Carlos Sanmartin Dominguez <csanmartin@igalia.com>
3841 * docs/manual/basics-bus.xml:
3842 Fix example code, gst_element_unref() doesn't exist any longer.
3844 2007-01-21 Tim-Philipp Müller <tim at centricular dot net>
3846 Patch by: Mark Nauwelaerts <manauw at skynet be>
3848 * gst/gstpad.c:
3849 Fix two docs typoes (#399094).
3851 2007-01-19 Edward Hervey <edward@fluendo.com>
3853 * docs/faq/gst-uninstalled:
3854 Add gst-plugins-base/gst/utils/ to LD_LIBRARY_PATH so that plugins
3855 depending on libgstbaseutils can work in uninstalled environment.
3857 2007-01-18 Stefan Kost <ensonic@users.sf.net>
3859 * gst/gsttaglist.h:
3860 * gst/gsttagsetter.c:
3861 Add more docs regarding tag merge-modes and when to send tags. Fix 'since'
3862 statement for new tag.
3864 2007-01-17 Edward Hervey <edward@fluendo.com>
3866 * plugins/elements/gstmultiqueue.c: (gst_single_queue_new):
3867 When dynamically creating single queues, activate sinkpad before adding
3868 it.
3869 We should be doing the same thing for the source pad, but we can't
3870 since it would call a method which needs the parent to be set in order
3871 to work propertly. Instead of activating the source pad, we just unset
3872 the flushing flag, which is the minimal requirement for adding a pad
3873 to an element in a state greater than READY.
3875 2007-01-17 Edward Hervey <edward@fluendo.com>
3877 * docs/faq/gst-uninstalled:
3878 Add DYLD_LIBRARY_PATH declarations so we can also use this script on
3879 Mac OS X.
3881 2007-01-17 Tim-Philipp Müller <tim at centricular dot net>
3883 * tests/check/gst/gstabi.c:
3884 * tests/check/gst/struct_hppa.h:
3885 * tests/check/libs/libsabi.c:
3886 * tests/check/libs/struct_hppa.h:
3887 Add ABI structs for HPPA (see #393796).
3889 2007-01-16 Tim-Philipp Müller <tim at centricular dot net>
3891 * libs/gst/check/gstcheck.c: (gst_check_abi_list):
3892 Actually write ABI structs to the file specified in the GST_ABI
3893 environment variable, as the message we print claims we would.
3895 2007-01-15 Stefan Kost <ensonic@users.sf.net>
3897 * tests/check/gst/gsttask.c:
3898 Fix header comment.
3900 2007-01-15 Stefan Kost <ensonic@users.sf.net>
3902 * gst/gsttaglist.c: (_gst_tag_initialize):
3903 Change tag type from STRING to DOUBLE. Apply ChangeLog surgery for my
3904 previous two entries.
3906 2007-01-15 Stefan Kost <ensonic@users.sf.net>
3908 * docs/gst/gstreamer-sections.txt:
3909 * gst/gsttaglist.c: (_gst_tag_initialize):
3910 * gst/gsttaglist.h:
3911 Add tag support for beat-per-minute.
3913 2007-01-15 Stefan Kost <ensonic@users.sf.net>
3915 * gst/gstregistrybinary.c: (gst_registry_binary_write),
3916 (gst_registry_binary_initialize_magic),
3917 (gst_registry_binary_save_string), (gst_registry_binary_make_data),
3918 (gst_registry_binary_save_pad_template),
3919 (gst_registry_binary_save_feature),
3920 (gst_registry_binary_save_plugin),
3921 (gst_registry_binary_write_cache),
3922 (gst_registry_binary_check_magic),
3923 (gst_registry_binary_load_pad_template),
3924 (gst_registry_binary_load_feature),
3925 (gst_registry_binary_load_plugin),
3926 (gst_registry_binary_read_cache):
3927 * gst/gstregistrybinary.h:
3928 Use glib types, cleanup comments, impement interfaces and uri-types.
3930 2007-01-13 Andy Wingo <wingo@pobox.com>
3932 * gst/gstpad.c (gst_pad_get_range, gst_pad_pull_range): Allow
3933 getrange() to return buffers with other caps, while we fix
3934 demuxers and typefind, or otherwise change part-negotiation.txt.
3936 2007-01-12 Andy Wingo <wingo@pobox.com>
3938 * libs/gst/base/gstbasetransform.c (gst_base_transform_activate):
3939 Factor start/stop into this private function instead of partially
3940 in activate functions and partially in the change_state function.
3941 Fixes setup before the element has changed from READY->PAUSED, as
3942 is the case in pull-mode pipelines.
3943 (gst_base_transform_sink_activate_push)
3944 (gst_base_transform_src_activate_pull): Refactor to use
3945 gst_base_transform_activate().
3946 (gst_base_transform_change_state): Removed, not needed any more.
3948 * libs/gst/base/gstbasesink.c (gst_base_sink_negotiate_pull):
3949 Truncate before fixating.
3951 * libs/gst/base/gstbasesink.c (gst_base_sink_negotiate_pull):
3952 Don't set_caps() if the result of fixating is ANY, as it's not
3953 supported, and not necessary in the case of a link with no
3954 template caps on either side. Fixes tests/check/libs/basesrc in
3955 some pull-mode tests.
3957 * libs/gst/base/gstbasetransform.c (_GstBaseTransformPrivate):
3958 (gst_base_transform_init, gst_base_transform_sink_activate_push)
3959 (gst_base_transform_src_activate_pull):
3960 Track the activation mode.
3961 (gst_base_transform_setcaps): In pull mode, when activating the
3962 src pad, after activating the sink pad, activate the sink pad's
3963 peer, as discussed in part-negotiation.txt.
3965 * libs/gst/base/gstbasesrc.h:
3966 * libs/gst/base/gstbasesrc.c (gst_base_src_fixate): Add fixate
3967 vmethod, as in basesink.
3969 * libs/gst/base/gstbasesink.h: Reformat docs, add fixate vmethod.
3971 * libs/gst/base/gstbasesink.c (gst_base_sink_pad_setcaps): In pull
3972 mode, first proxy the setcaps to the peer pad.
3973 (gst_base_sink_pad_fixate): Add a fixate function that calls the
3974 new fixate vmethod.
3975 (gst_base_sink_default_activate_pull): Rename from
3976 gst_base_sink_activate_pull.
3977 (gst_base_sink_negotiate_pull): New function, performs negotiation
3978 in pull mode before calling ::activate_pull().
3979 (gst_base_sink_pad_activate_pull): Actually call the activate_pull
3980 vmethod instead of the default implementation. I have no idea how
3981 this worked before. Negotiate before calling activate_pull.
3983 * gst/gstpad.c (gst_pad_activate_pull): Refuse to activate unlinked
3984 sink pads in pull mode. In addition to being correct, fixes
3985 filesrc ! decodebin ! identity ! fakesink.
3986 (gst_pad_get_range, gst_pad_pull_range): Don't call
3987 gst_pad_set_caps() if the caps changes; instead error out with
3988 GST_FLOW_NOT_NEGOTIATED, as discussed in part-negotiation.txt.
3990 2007-01-12 Andy Wingo <wingo@pobox.com>
3992 * docs/design/part-negotiation.txt: Update with more policy.
3994 2007-01-12 Tim-Philipp Müller <tim at centricular dot net>
3996 * libs/gst/check/gstbufferstraw.h:
3997 * libs/gst/check/gstcheck.h:
3998 Add G_BEGIN_DECLS and G_END_DECLS. Move GST_CHECK_MAIN where it
3999 belongs.
4001 2007-01-12 Tim-Philipp Müller <tim at centricular dot net>
4003 * tests/check/Makefile.am:
4004 * tests/check/gst/.cvsignore:
4005 * tests/check/gst/gsttagsetter.c: (gst_dummy_enc_add_interfaces),
4006 (gst_dummy_enc_base_init), (gst_dummy_enc_class_init),
4007 (gst_dummy_enc_init), (tag_list_foreach), (tag_setter_list_length),
4008 (GST_START_TEST), (gst_tag_setter_suite):
4009 Add minimal unit test for beforementioned GstTagSetter bug.
4011 2007-01-12 Tim-Philipp Müller <tim at centricular dot net>
4013 Patch by: René Stadler <mail at renestadler dot de>
4015 * gst/gsttagsetter.c: (gst_tag_setter_merge_tags):
4016 gst_tag_list_merge() returns a new list, so it's not the best idea
4017 to ingore its return value. Effectively meant that tags could only
4018 be merged on a GstTagSetter once using _merge_tags(). Fixes #395554.
4019 Also add function guard to require a non-NULL taglist as input (has
4020 always been so due to gst_tag_list_copy(), just making it explicit).
4022 2007-01-11 Tim-Philipp Müller <tim at centricular dot net>
4024 * docs/random/draft-missing-plugins.txt:
4025 Some additions: mention new API that is supposed to be used at the
4026 various stages; short blob about new gst-inspect introspection
4027 option; mention potential future problem with plugins that have
4028 a dynamic list of elements (such as ladspa, pitfdll, libvisual).
4030 2007-01-11 Tim-Philipp Müller <tim at centricular dot net>
4032 * tools/gst-inspect.c:
4033 (print_plugin_automatic_install_info_codecs),
4034 (print_plugin_automatic_install_info_protocols),
4035 (print_plugin_automatic_install_info), (main):
4036 Add --print-plugin-auto-install-info option to gst-inspect, so we can
4037 introspect plugin files and get machine-parsable output that corresponds
4038 to the last bit of the missing-plugin installer string (small gotcha:
4039 doesn't take into account ranks).
4041 2007-01-11 Stefan Kost <ensonic@users.sf.net>
4043 * configure.ac:
4044 * docs/gst/gstreamer-sections.txt:
4045 * gst/Makefile.am:
4046 * gst/gstregistry.c: (gst_registry_lookup_feature_locked),
4047 (gst_registry_lookup_locked):
4048 * gst/gstregistry.h:
4049 * gst/gstregistrybinary.c: (gst_registry_binary_write),
4050 (gst_registry_binary_initialize_magic),
4051 (gst_registry_binary_save_string),
4052 (gst_registry_binary_save_pad_template),
4053 (gst_registry_binary_save_feature),
4054 (gst_registry_binary_save_plugin),
4055 (gst_registry_binary_write_cache),
4056 (gst_registry_binary_check_magic),
4057 (gst_registry_binary_load_pad_template),
4058 (gst_registry_binary_load_feature),
4059 (gst_registry_binary_load_plugin),
4060 (gst_registry_binary_read_cache):
4061 * gst/gstregistrybinary.h:
4062 * gst/gstregistryxml.c: (load_feature),
4063 (gst_registry_xml_read_cache):
4064 commit binary registry (disabled by default, see #359653)
4066 2007-01-11 Tim-Philipp Müller <tim at centricular dot net>
4068 * tests/check/gst/gstpad.c: (test_get_allowed_caps):
4069 Fix 'make check' too.
4071 2007-01-10 Andy Wingo <wingo@pobox.com>
4073 * docs/design/part-negotiation.txt: Fix a typo, add a couple
4074 notes.
4076 * docs/design/part-negotiation.txt: Update with, um, one way that
4077 pull-mode negotiation might work?
4079 * gst/gstpad.h:
4080 * gst/gstpad.c (gst_pad_get_allowed_caps): Remove the restriction
4081 that the pad must be a src pad; makes sense to call it the other
4082 way in pull mode, and the logic is symmetric anyway.
4084 2007-01-10 Tim-Philipp Müller <tim at centricular dot net>
4086 * plugins/elements/gstfilesink.c:
4087 Include <stdio.h> for fseeko().
4089 2007-01-10 Wim Taymans <wim@fluendo.com>
4091 * gst/gstevent.c:
4092 * gst/gstevent.h:
4093 Reserve LATENCY event.
4095 2007-01-09 Wim Taymans <wim@fluendo.com>
4097 * docs/design/draft-latency.txt:
4098 Updates.
4100 2007-01-09 Wim Taymans <wim@fluendo.com>
4102 * docs/design/draft-latency.txt:
4103 Updates.
4105 * gst/gstelement.h:
4106 * gst/gststructure.c:
4107 * gst/gsttrace.c:
4108 Small typo fixes.
4110 2007-01-09 Tim-Philipp Müller <tim at centricular dot net>
4112 * tests/check/.cvsignore:
4113 Ignore test-registry.xml as well.
4115 2007-01-09 Wim Taymans <wim@fluendo.com>
4117 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_remove_pad):
4118 unref data at the end when we are done with the pad.
4120 2007-01-08 Tim-Philipp Müller <tim at centricular dot net>
4122 * docs/gst/gstreamer-sections.txt:
4123 * gst/gst.c: (load_plugin_func), (scan_and_update_registry),
4124 (init_post), (gst_deinit), (gst_update_registry):
4125 * gst/gst.h:
4126 API: add gst_update_registry() (#391296).
4128 * tests/check/Makefile.am:
4129 * tests/check/gst/gstregistry.c:
4130 * tests/check/gst/.cvsignore:
4131 Simple unit test for the above.
4133 2007-01-08 Tim-Philipp Müller <tim at centricular dot net>
4135 * gst/gstregistry.c: (gst_registry_scan_path_level):
4136 Plugin extension on HP-UX is .sl, add that to the list of approved
4137 plugin extensions (see #393796).
4139 * tests/check/gst/gstpad.c: (GST_START_TEST):
4140 ulong => gulong. Fixes compilation with HP-UX compiler.
4142 * tests/check/pipelines/parse-launch.c: (GST_START_TEST):
4143 Fix compilation if valgrind headers are not available.
4145 2007-01-07 Sébastien Moutte <sebastien@moutte.net>
4147 * win32/common/libgstreamer.def:
4148 Add new exported function.
4149 * win32/vs6/libgstbase.dsp:
4150 Add gstdataqueue.c to the build.
4151 * win32/vs6/libgstcoreelements.dsp:
4152 Add gstmultiqueue.c to the build.
4154 2007-01-06 Andy Wingo <wingo@pobox.com>
4156 * libs/gst/base/gstbasesink.h: New GstBaseSinkClass vmethod,
4157 activate_pull(), providing for a way to specialize the process of
4158 spawning a thread to pull on the sink pad. There is a default
4159 implementation.
4161 * libs/gst/base/gstbasesink.c (gst_base_sink_pad_activate_pull)
4162 (gst_base_sink_pad_activate_push, gst_base_sink_pad_activate)
4163 (gst_base_sink_init): Renamed pad activation functions (inserting
4164 "_pad" in their names). Refactor to use the new activate_pull
4165 vmethod, as appropriate.
4166 (gst_base_sink_class_init, gst_base_sink_activate_pull): Set the
4167 default activate_pull function to start a task pulling from the
4168 sink pad, as before.
4170 * gst/gstpad.c (gst_pad_get_range, gst_pad_pull_range): Set caps
4171 on the pads if necessary, as in push()/chain(). Update docs.
4172 Shouldn't affect existing pull() usage as it is currently only
4173 being used on buffers without caps.
4175 2007-01-05 Tim-Philipp Müller <tim at centricular dot net>
4177 * gst/gst.c: (gst_init_get_option_group), (gst_init_check),
4178 (init_pre):
4179 Call g_thread_init() first thing in gst_init() / gst_check_init().
4180 When initialisation is done via gst_init_get_option_group() and
4181 GOption parsing, issue a warning if the GLib thread system has not
4182 been initialised yet by the time gst_init_get_option_group() is
4183 called, as it's quite likely other GLib functions such as
4184 g_option_context_new() have been called already then, and
4185 g_thread_init() must be called before any other GLib function. The
4186 application in question must be fixed in that case, since memory
4187 corruption might happen otherwise.
4188 We issue the warning because even if the GLib folks decide to work
4189 around the problem on their end in future, this is still an issue
4190 with all GLib versions >= 2.10.0, so we should warn until we depend
4191 on a GLib version we know to be safe.
4192 Update documentation as well.
4193 Closes bug #391278.
4195 2007-01-05 Tim-Philipp Müller <tim at centricular dot net>
4197 * tools/gst-inspect.c: (main):
4198 * tools/gst-launch.c: (main):
4199 * tools/gst-typefind.c: (main):
4200 * tools/gst-xmlinspect.c: (main):
4201 Call g_thread_init() really really early, before any other GLib
4202 function (see #342564 and recent discussion on gtk-devel-list).
4204 2007-01-05 Tim-Philipp Müller <tim at centricular dot net>
4206 Patch by: Vincent Torri <vtorri at univ-evry dot fr>
4208 * gst/gst_private.h:
4209 * gst/gstconfig.h.in:
4210 * gst/gstinfo.h:
4211 On win32, all the __declspec stuff for symbol exporting is
4212 apparently only needed with MSVC, but doesn't work with MingW.
4213 Fixes compilation with MingW and #391909.
4215 2007-01-05 Tim-Philipp Müller <tim at centricular dot net>
4217 * libs/gst/base/gstbasesrc.c: (gst_base_src_activate_push):
4218 Change some GST_ERROR_OBJECT that aren't really errors to
4219 GST_WARNING_OBJECT in order to reduce terminal spam.
4221 2007-01-04 Stefan Kost <ensonic@users.sf.net>
4223 * tests/check/Makefile.am:
4224 disable test again, as there seem to be still race problems
4226 2007-01-04 Stefan Kost <ensonic@users.sf.net>
4228 * tests/check/Makefile.am:
4229 * tests/check/elements/queue.c: (queue_overrun), (queue_underrun),
4230 (GST_START_TEST), (queue_suite):
4231 enable queue test again, add tests for the leaky behaviour
4233 2007-01-02 Tim-Philipp Müller <tim at centricular dot net>
4235 * configure.ac:
4236 * tests/examples/Makefile.am:
4237 Compile adapter test/example only if the required headers are
4238 available (fixes #391915).
4240 2007-01-01 David Schleef <ds@schleef.org>
4242 * gst/gstplugin.c:
4243 Restore the previous signal handler for SIGSEGV instead of
4244 setting to default, since we may have stolen it away from
4245 someone. (i.e., Mono)
4247 2006-12-26 Tim-Philipp Müller <tim at centricular dot net>
4249 * docs/random/draft-missing-plugins.txt:
4250 Some small additions and clarifications.
4252 2006-12-26 Tim-Philipp Müller <tim at centricular dot net>
4254 * gst/gstregistryxml.c: (gst_registry_save_escaped):
4255 Make sure we don't pass non-UTF-8 strings to g_markup_escape(),
4256 since that can lead to random memory corruptions and crashes
4257 (may or may not be related to #383244, #386711, and #386711).
4259 2006-12-21 Stefan Kost <ensonic@users.sf.net>
4261 * tests/check/.cvsignore:
4262 * tests/check/Makefile.am:
4263 sync .cvsignome and CLEANFILES
4265 2006-12-21 Stefan Kost <ensonic@users.sf.net>
4267 * tests/check/Makefile.am:
4268 fix distcheck
4270 2006-12-21 Stefan Kost <ensonic@users.sf.net>
4272 * docs/design/part-states.txt:
4273 two tiny additional comments
4275 * gst/gststructure.c:
4276 doc fixing
4278 * tests/check/Makefile.am:
4279 * tests/check/elements/queue.c: (queue_overrun), (queue_underrun),
4280 (GST_START_TEST):
4281 disable test for now, unless it gets fixed
4283 2006-12-21 Stefan Kost <ensonic@users.sf.net>
4285 * tests/check/elements/queue.c: (queue_overrun), (queue_underrun),
4286 (GST_START_TEST):
4287 fix race in underrun test
4289 2006-12-21 Stefan Kost <ensonic@users.sf.net>
4291 * tests/check/elements/.cvsignore:
4292 ignore more
4294 * tests/check/elements/queue.c: (queue_overrun), (queue_underrun),
4295 (GST_START_TEST):
4296 try to narrow test failure
4298 2006-12-21 David Schleef <ds@schleef.org>
4300 * plugins/elements/gstfakesrc.c:
4301 Use g_random_int_range(), since it produces better random
4302 numbers in a range than almost-correct floating point code.
4304 2006-12-21 Stefan Kost <ensonic@users.sf.net>
4306 * libs/gst/check/gstcheck.c: (gst_check_setup_src_pad),
4307 (gst_check_teardown_src_pad), (gst_check_setup_sink_pad),
4308 (gst_check_teardown_sink_pad):
4309 do not automatically (de)activate pads
4311 * tests/check/Makefile.am:
4312 * tests/check/elements/queue.c: (queue_overrun), (queue_underrun),
4313 (setup_queue), (cleanup_queue), (GST_START_TEST), (queue_suite):
4314 add new, yet simple tests for queue
4316 * tests/check/elements/fakesrc.c: (cleanup_fakesrc):
4317 * tests/check/elements/fdsrc.c: (cleanup_fdsrc):
4318 * tests/check/elements/filesrc.c: (cleanup_filesrc),
4319 (GST_START_TEST):
4320 * tests/check/elements/identity.c: (cleanup_identity):
4321 consistent pad (de)activation
4323 2006-12-20 Tim-Philipp Müller <tim at centricular dot net>
4325 Patch by: Sebastian Dröge <slomo ubuntu com>
4327 * libs/gst/base/gstcollectpads.c:
4328 Fix two doc typos (#387866).
4330 2006-12-19 Tim-Philipp Müller <tim at centricular dot net>
4332 * docs/manual/advanced-dparams.xml:
4333 Fix typo (g_object_control_properties() doesn't exist).
4335 2006-12-19 Edward Hervey <edward@fluendo.com>
4337 * gst/gstsegment.c: (gst_segment_set_seek):
4338 Fine tune the cases where the segment start/stop values are really
4339 updated.
4340 * tests/check/gst/gstsegment.c: (GST_START_TEST):
4341 Add tests for the return values of gst_segment_set_seek().
4343 2006-12-19 Tim-Philipp Müller <tim at centricular dot net>
4345 * gst/gst.c:
4346 Docs typo fix.
4348 * plugins/elements/gstqueue.c: (gst_queue_class_init),
4349 (gst_queue_init):
4350 Fix incorrect documentation and flesh it out a bit more.
4351 Set default values for the max properties on the GParamSpec as well,
4352 so it shows up correctly in gst-inspect.
4354 2006-12-18 Stefan Kost <ensonic@users.sf.net>
4356 * plugins/elements/gstqueue.c: (queue_leaky_get_type):
4357 Correct docs of queue, add more detail and crosslink it more.
4359 2006-12-16 Tim-Philipp Müller <tim at centricular dot net>
4361 * plugins/elements/gstidentity.c: (gst_identity_check_perfect):
4362 Print additional debug info when the stream isn't perfectly
4363 timestamped; don't try to use invalid durations.
4365 2006-12-16 Tim-Philipp Müller <tim at centricular dot net>
4367 * docs/design/Makefile.am:
4368 Dist new design docs.
4370 2006-12-16 Wim Taymans <wim@fluendo.com>
4372 Patch by: Sjoerd Simons <sjoerd at luon dot net>
4374 * libs/gst/base/gstcollectpads.c: (ref_data), (unref_data),
4375 (gst_collect_pads_add_pad), (gst_collect_pads_remove_pad),
4376 (gst_collect_pads_stop), (gst_collect_pads_event),
4377 (gst_collect_pads_chain):
4378 * libs/gst/base/gstcollectpads.h:
4379 Add refcounting to the collectpads data so we can track when it's safe
4380 to free the data. Fixes #383382.
4382 2006-12-15 Wim Taymans <wim@fluendo.com>
4384 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_add_pad),
4385 (gst_collect_pads_remove_pad):
4386 Automatically activate/deactivate pads when they are added to a
4387 started/stoped collectpads.
4389 2006-12-15 Wim Taymans <wim@fluendo.com>
4391 * gst/gstelement.c: (gst_element_add_pad):
4392 * gst/gstghostpad.c: (gst_ghost_pad_new_full):
4393 * gst/gstpad.c: (gst_pad_init):
4394 Set pads to FLUSHING when they are created. Check, warn and fix when a
4395 demuxer adds an inactive pad to itself when running. Fixes #339326.
4397 2006-12-15 Wim Taymans <wim@fluendo.com>
4399 * gst/gstelement.c: (gst_element_class_init),
4400 (gst_element_default_send_event), (gst_element_send_event),
4401 (gst_element_default_query), (gst_element_query):
4402 Expose default element send_event and query handling as vmethods that
4403 subclasses can chain up to.
4405 2006-12-15 Wim Taymans <wim@fluendo.com>
4407 * gst/gstelement.c: (gst_element_set_state_func):
4408 Small documentation fixes.
4410 2006-12-15 Wim Taymans <wim@fluendo.com>
4412 * docs/design/draft-latency.txt:
4413 Checked in draft for handling latency in pipelines.
4415 2006-12-15 Thomas Vander Stichele <thomas at apestaart dot org>
4417 * Makefile.am:
4418 * gstreamer.doap:
4419 * gstreamer.spec.in:
4420 adding .doap file
4422 2006-12-14 Tim-Philipp Müller <tim at centricular dot net>
4424 * gst/gst.c: (init_pre), (init_post):
4425 init_pre() and init_post() might be called via our GOptionGroup or
4426 from gst_init(), and we should skip both of them if we've already
4427 been initialised, otherwise we will init some things twice or add
4428 two default log functions.
4430 2006-12-13 Edward Hervey <edward@fluendo.com>
4432 * docs/manual/basics-bus.xml:
4433 No, gst_main_loop does not exist. Its g_main_loop.
4434 Discovered by somebody who abused the copy-paste technique of coding :)
4436 2006-12-13 Tim-Philipp Müller <tim at centricular dot net>
4438 * gst/gstghostpad.c:
4439 Log ghostpad debug stuff to the GST_PADS category as well rather
4440 than just to the default category.
4442 2006-12-12 Tim-Philipp Müller <tim at centricular dot net>
4444 * configure.ac:
4445 * gst/gst.c: (init_pre):
4446 Add some basic system details such as OS and architecture
4447 to the debug output if possible, courtesy of uname().
4449 2006-12-11 Tim-Philipp Müller <tim at centricular dot net>
4451 * docs/gst/running.xml:
4452 Document GST_REGISTRY_FORK and GST_DEBUG_NO_COLOR
4453 environment variables.
4455 2006-12-09 Jan Schmidt <thaytan@mad.scientist.com>
4457 * tests/check/gst/gstbin.c: (GST_START_TEST):
4458 It is acceptable to have a refcount of 2 or 3 at this point in the
4459 test, because the pipeline might be just posting its state_change
4460 message. The next line then waits for that message to appear using
4461 bus_poll, so that should be fine too.
4463 2006-12-09 Jan Schmidt <thaytan@mad.scientist.com>
4465 * gst/gst.c: (ensure_current_registry_forking):
4466 Ignore EINTR when reading from the child registry pipe.
4467 Explicitly ignore the return value from close, since it makes no
4468 difference.
4470 * gst/gstminiobject.c: (gst_mini_object_ref),
4471 (gst_mini_object_unref):
4472 When debugging refcounts, check GST_IS_MINI_OBJECT and warn.
4474 * gst/gstregistry.c: (_priv_gst_registry_remove_cache_plugins):
4475 When removing cached plugins, remove their features too, so they're
4476 not visible after they've disappeared.
4478 * gst/gstutils.c: (prepare_link_maybe_ghosting):
4479 In the unlikely case that we are linking pads with no parents, don't
4480 crash trying to get the non-existent parent bin.
4482 * gst/parse/grammar.y:
4483 Output debug in the PIPELINE category
4485 2005-03-08 Wim Taymans <wim@fluendo.com>
4487 Patch by: René Stadler <mail at renestadler dot de>
4489 * gst/gstclock.c: (gst_clock_new_periodic_id):
4490 Reject invalid clock times for interval of periodic ids.
4491 Fixes ##383506.
4493 2006-12-07 Jan Schmidt <thaytan@mad.scientist.com>
4495 * gst/gstelementfactory.c: (gst_element_factory_create):
4496 * gst/gstpluginfeature.c: (gst_plugin_feature_load):
4497 * gst/gsttypefindfactory.c: (gst_type_find_factory_call_function):
4498 * tools/gst-inspect.c: (print_element_info):
4499 Fix refcounting of gst_plugin_feature_load to match the docs.
4500 Fixes: #380129
4502 2006-12-07 Wim Taymans <wim@fluendo.com>
4504 * libs/gst/base/gstbasesink.c: (gst_base_sink_event),
4505 (gst_base_sink_get_position):
4506 Improve debugging of events.
4508 2006-12-07 Wim Taymans <wim@fluendo.com>
4510 Patch by: René Stadler <mail at renestadler dot de>
4512 * gst/gstclock.c: (gst_clock_id_wait):
4513 Make period ids add the interval to the origial requested time instead
4514 of the possibly updated time which can be wrong when there are multiple
4515 waiters for the same id. Fixes #382592.
4517 * gst/gstsystemclock.c: (gst_system_clock_async_thread),
4518 (gst_system_clock_id_wait_jitter_unlocked),
4519 (gst_system_clock_id_wait_jitter):
4520 Fix restart in the async notify thread when an async entry is added to
4521 the front of the list. Fixes #381492.
4523 * tests/check/gst/gstsystemclock.c: (store_callback),
4524 (notify_callback), (GST_START_TEST), (gst_systemclock_suite):
4525 Added test for multiple async waits.
4526 Added test for async wait order.
4528 2006-12-07 Wim Taymans <wim@fluendo.com>
4530 * gst/gstbin.c: (gst_bin_query):
4531 Add some more docs about the POSITION query.
4533 2006-12-07 Jan Schmidt <thaytan@mad.scientist.com>
4535 * configure.ac:
4536 Bump version nano - back to CVS.
4538 === release 0.10.11 ===
4540 2006-12-06 Jan Schmidt <thaytan@mad.scientist.com>
4542 * configure.ac:
4543 releasing 0.10.11, "Love never runs on time"
4545 2006-12-01 Jan Schmidt <thaytan@mad.scientist.com>
4547 * win32/common/libgstbase.def:
4548 * win32/common/libgstreamer.def:
4549 * win32/vs8/libgstbase.vcproj:
4550 * win32/vs8/libgstcoreelements.vcproj:
4551 * win32/vs8/libgstreamer.vcproj:
4552 Fix compilation on win32 under VS8
4553 Patch by: Sergey Scobich <sergey dot scobich at gmail dot com>
4554 Partially fixes #381175
4556 2006-11-29 Jan Schmidt <thaytan@mad.scientist.com>
4558 * gst/gstvalue.c: (gst_value_compare_fraction):
4559 If someone is foolish enough to compare 2 fractions with denominator =
4560 0, return UNORDERED rather than aborting.
4562 2006-11-28 Edward Hervey <edward@fluendo.com>
4564 * libs/gst/base/Makefile.am:
4565 * libs/gst/base/gstdataqueue.c: (gst_data_queue_get_type),
4566 (gst_data_queue_base_init), (gst_data_queue_class_init),
4567 (gst_data_queue_init), (gst_data_queue_new),
4568 (gst_data_queue_cleanup), (gst_data_queue_finalize),
4569 (gst_data_queue_locked_flush), (gst_data_queue_locked_is_empty),
4570 (gst_data_queue_locked_is_full), (gst_data_queue_flush),
4571 (gst_data_queue_is_empty), (gst_data_queue_is_full),
4572 (gst_data_queue_set_flushing), (gst_data_queue_push),
4573 (gst_data_queue_pop), (gst_data_queue_drop_head),
4574 (gst_data_queue_set_property), (gst_data_queue_get_property):
4575 * libs/gst/base/gstdataqueue.h:
4576 New GstDataQueue object for threadsafe queueing. Most useful for
4577 elements that need some queueing functionnality.
4578 * docs/libs/gstreamer-libs-docs.sgml:
4579 * docs/libs/gstreamer-libs-sections.txt:
4580 Insert documentation for GstDataQueue
4581 * plugins/elements/Makefile.am:
4582 * plugins/elements/gstelements.c:
4583 * plugins/elements/gstmultiqueue.c: (gst_multi_queue_base_init),
4584 (gst_multi_queue_class_init), (gst_multi_queue_init),
4585 (gst_multi_queue_finalize), (gst_multi_queue_set_property),
4586 (gst_multi_queue_get_property), (gst_multi_queue_request_new_pad),
4587 (gst_multi_queue_release_pad), (gst_single_queue_push_one),
4588 (gst_multi_queue_item_destroy), (gst_multi_queue_item_new),
4589 (gst_multi_queue_loop), (gst_multi_queue_chain),
4590 (gst_multi_queue_sink_activate_push), (gst_multi_queue_sink_event),
4591 (gst_multi_queue_getcaps), (gst_multi_queue_bufferalloc),
4592 (gst_multi_queue_src_activate_push), (gst_multi_queue_acceptcaps),
4593 (gst_multi_queue_src_event), (gst_multi_queue_src_query),
4594 (wake_up_next_non_linked), (compute_next_non_linked),
4595 (single_queue_overrun_cb), (single_queue_underrun_cb),
4596 (single_queue_check_full), (gst_single_queue_new):
4597 * plugins/elements/gstmultiqueue.h:
4598 New multiqueue element, using GstDataQueue. Used for queuing multiple
4599 streams.
4600 Closes #344639 and #347785
4602 2006-11-22 Stefan Kost <ensonic@users.sf.net>
4604 * docs/pwg/advanced-types.xml:
4605 add more missing type details
4607 * tools/gst-run.c: (main):
4608 remove unused variable
4610 2006-11-21 Stefan Kost <ensonic@users.sf.net>
4612 * docs/libs/Makefile.am:
4613 * docs/libs/gstreamer-libs.types:
4614 add types of base classes to enable gobject specific stuff in the docs
4616 * docs/random/ensonic/embedded.txt:
4617 more ideas about isolating platform specific things
4619 2006-11-20 Wim Taymans <wim@fluendo.com>
4621 Patch by: Sebastian Dröge <slomo at ubuntu dot com>
4623 * libs/gst/check/gstcheck.h:
4624 Fix compilation and running against 0.9.4. Fixes #377332.
4626 2006-11-20 Wim Taymans <wim@fluendo.com>
4628 * gst/gstsegment.c: (gst_segment_set_seek),
4629 (gst_segment_set_newsegment_full), (gst_segment_to_stream_time),
4630 (gst_segment_to_running_time):
4631 Fix boundary checking in to_running_time() and to_stream_time().
4632 Fixes #377183.
4634 * tests/check/gst/gstsegment.c: (GST_START_TEST):
4635 stream and running time can now be calculated for the complete
4636 clipped segment.
4638 2006-11-15 Tim-Philipp Müller <tim at centricular dot net>
4640 * gst/gstpad.c: (gst_pad_push_event):
4641 Can't access event structure after giving away ownership of
4642 the event.
4644 2006-11-15 Stefan Kost <ensonic@users.sf.net>
4646 * docs/random/ensonic/embedded.txt:
4647 * docs/random/ensonic/profiling.txt:
4648 * docs/random/ensonic/receipies.txt:
4649 more thinking
4651 2006-11-13 Wim Taymans <wim@fluendo.com>
4653 Patch by: Mark Nauwelaerts <manauw at skynet dot be>
4655 * gst/gstpad.c:
4656 Fix documentation for gst_pad_dispatcher. Fixes #374475.
4658 2006-11-13 Wim Taymans <wim@fluendo.com>
4660 Patch by: Jonathan Matthew <jonathan at kaolin dot wh9 dot net>
4662 * libs/gst/base/gstbasesrc.c: (gst_base_src_update_length):
4663 Store new length in segment duration so we don't keep on calling the
4664 potentially expensize get_size() call. Fixes #370865.
4666 2006-11-10 Tim-Philipp Müller <tim at centricular dot net>
4668 Patch by: Sergey Scobich <sergey.scobich at gmail com>
4670 * win32/common/libgstreamer.def:
4671 Add two missing symbols (#366492).
4673 2006-11-10 Jan Schmidt <thaytan@mad.scientist.com>
4675 * libs/gst/base/gstadapter.c: (gst_adapter_flush),
4676 (gst_adapter_take_buffer):
4677 Fix format string to use all its arguments.
4678 Remove useless >= check on a guint
4680 2006-11-09 Jan Schmidt <thaytan@mad.scientist.com>
4682 * tests/examples/adapter/.cvsignore:
4683 Ignore build file as commanded by the build-bot
4685 2006-11-09 Jan Schmidt <thaytan@mad.scientist.com>
4687 * tests/examples/adapter/Makefile.am:
4688 * tests/examples/adapter/adapter_test.c: (run_test_take),
4689 (run_test_take_buffer), (run_tests), (main):
4691 Add new files from the previous commit
4693 2006-11-09 Jan Schmidt <thaytan@mad.scientist.com>
4695 * Makefile.am:
4696 * configure.ac:
4697 * libs/gst/base/gstadapter.c: (gst_adapter_clear),
4698 (gst_adapter_push), (gst_adapter_peek_into), (gst_adapter_peek),
4699 (gst_adapter_flush), (gst_adapter_take), (gst_adapter_take_buffer):
4700 * libs/gst/base/gstadapter.h:
4701 * tests/check/libs/adapter.c: (create_and_fill_adapter),
4702 (GST_START_TEST), (gst_adapter_suite):
4703 * tests/examples/Makefile.am:
4704 Do some optimisation work in GstAdapter to avoid copies in more cases.
4705 It could still do slightly better by merging buffers when
4706 gst_buffer_is_span_fast is true, but is already faster.
4708 Also, avoid traversing a single-linked list to append each incoming
4709 buffer inside the adapter.
4711 Add simple test app that times the adapter behaviour in different
4712 situations, and extend the unit test to check that bytes enter and
4713 exit the adapter in their original order.
4715 2006-11-08 Tim-Philipp Müller <tim at centricular dot net>
4717 * docs/random/draft-missing-plugins.txt:
4718 Update: use element message instead of adding a new message
4719 type to the core; don't provide GStreamer API to initiate the
4720 plugin download, just provide API to compose the strings needed
4721 and let an external libgimmestuff handle the rest.
4723 2006-11-08 Jan Schmidt <thaytan@mad.scientist.com>
4725 * tools/gst-inspect.c: (print_element_properties_info):
4726 Print a string instead of 'unknown type' for GValueArray properties
4728 2006-11-08 Christian F.K. Schaller <christian@fluendo.com>
4730 * docs/random/draft-missing-plugins.txt:
4731 More small fixes.
4733 2006-11-07 Tim-Philipp Müller <tim at centricular dot net>
4735 * tests/examples/typefind/typefind.c: (type_found), (main):
4736 Make typefind element example work again (#371894); add a
4737 license header.
4739 2006-11-07 Tim-Philipp Müller <tim at centricular dot net>
4741 * docs/random/draft-missing-plugins.txt:
4742 Commit initial draft about how to deal with missing plugins,
4743 needs work (API too).
4745 2006-11-07 Stefan Kost <ensonic@users.sf.net>
4747 * docs/pwg/advanced-types.xml:
4748 documents the new caps elements (see #363118)
4750 2006-11-06 Tim-Philipp Müller <tim at centricular dot net>
4752 * gst/gstplugin.c: (gst_plugin_load_file):
4753 * plugins/elements/gstfilesrc.c: (gst_mmap_buffer_finalize),
4754 (gst_file_src_map_region), (gst_file_src_start):
4755 * plugins/indexers/gstfileindex.c: (gst_file_index_load),
4756 (gst_file_index_commit):
4757 Use g_strerror() instead of strerror() - we want UTF-8.
4759 2006-11-06 Tim-Philipp Müller <tim at centricular dot net>
4761 Patch by: Peter Kjellerstedt <pkj at axis com>
4763 * plugins/elements/gstfdsrc.c: (gst_fd_src_create):
4764 Another printf fix (#371493).
4766 2006-11-06 Stefan Kost <ensonic@users.sf.net>
4768 * tests/check/gst/gsttag.c:
4769 relicence (okay with author=company)
4771 2006-11-06 Stefan Kost <ensonic@users.sf.net>
4773 * gst/gstpad.c: (gst_pad_event_default_dispatch),
4774 (gst_pad_push_event):
4775 Enhance debug and improve docs
4777 * gst/gsturi.c:
4778 Fix docs
4780 2006-11-06 Stefan Kost <ensonic@users.sf.net>
4782 * docs/random/ensonic/distributed.txt:
4783 * docs/random/ensonic/profiling.txt:
4784 more ideas
4786 2006-11-06 Stefan Kost <ensonic@users.sf.net>
4788 * docs/gst/gstreamer-sections.txt:
4789 add new API and fix the build
4791 * gst/gstbin.c: (gst_bin_recalc_state):
4792 * gst/gstelement.c: (gst_element_message_full),
4793 (gst_element_get_state_func), (gst_element_set_state_func):
4794 use new API and improve logging
4796 * gst/gstutils.c: (gst_element_state_change_return_get_name):
4797 * gst/gstutils.h:
4798 API: add function to get StateChangereturn names to improve logs
4800 2006-11-04 Thomas Vander Stichele <thomas at apestaart dot org>
4802 * plugins/elements/gstfilesrc.c: (gst_file_src_start):
4803 I'm considering shooting the next person to put strerror stuff
4804 in the translateable part of the message.
4806 2006-11-03 Wim Taymans <wim@fluendo.com>
4808 * plugins/elements/gstfdsrc.c: (gst_fd_src_create):
4809 Get the type and printf conversion specifiers right.
4811 2006-11-03 Wim Taymans <wim@fluendo.com>
4813 Patch by: Mark Nauwelaerts <manauw at skynet dot be>
4815 * gst/gstpad.c: (gst_pad_init), (pre_activate),
4816 (gst_pad_set_blocked_async), (gst_pad_acceptcaps_default),
4817 (gst_pad_accept_caps), (handle_pad_block), (gst_pad_push_event):
4818 Some small cleanups. Improve debugging.
4819 * gst/gstpad.h:
4820 Signal all waiting threads with a broadcast instead of just one.
4821 Fixes #369942.
4823 2006-11-03 Wim Taymans <wim@fluendo.com>
4825 * plugins/elements/gstfdsrc.c: (gst_fd_src_update_fd),
4826 (gst_fd_src_create):
4827 Add some debugging.
4828 Only update fd when it's different from the old.
4830 2006-11-02 Tim-Philipp Müller <tim at centricular dot net>
4832 * plugins/elements/gstfilesrc.c: (gst_file_src_create_mmap):
4833 Printf fixes for PPC/OSX, take two (#369366).
4835 2006-11-02 Tim-Philipp Müller <tim at centricular dot net>
4837 Based on patch by: Jan David Mol <j.j.d.mol at tudelft nl>
4839 * plugins/elements/gstfilesink.c: (gst_file_sink_class_init):
4840 * plugins/elements/gstfilesrc.c: (gst_file_src_class_init),
4841 (gst_file_src_map_small_region), (gst_file_src_create_mmap):
4842 Printf fixes for gsize parameters on PPC/OSX (#369366). Also,
4843 don't cast to long long for portability reasons, but use
4844 GLib's types instead.
4846 2006-10-30 Michael Smith <msmith@fluendo.com>
4848 * plugins/elements/gstfdsrc.c: (gst_fd_src_update_fd):
4849 Get the arguments to lseek() the right way around.
4850 Fixes 367677.
4852 2006-10-30 Wim Taymans <wim@fluendo.com>
4854 Patch by: gorshkov <gorshkov at oghma dot on dot ca>
4856 * gst/gstinfo.h:
4857 _declspec should be __declspec (two underscores, not one). Fixes 366572.
4859 2006-10-28 Tim-Philipp Müller <tim at centricular dot net>
4861 Patch by: Kjartan Maraas <kmaraas at gnome org>
4863 * docs/design/part-MT-refcounting.txt:
4864 * docs/random/wtay/capsnego2-docs:
4865 * gst/gstclock.c:
4866 * gst/gstxml.c:
4867 Typo fixes (#366212).
4869 2006-10-28 Wim Taymans <wim@fluendo.com>
4871 Patch by: Sergey Scobich <sergey dot scobich at gmail dot com>
4873 * gst/gst.c:
4874 * win32/common/libgstbase.def:
4875 * win32/common/libgstreamer.def:
4876 * win32/vs8/libgstbase.vcproj:
4877 * win32/vs8/libgstcontroller.vcproj:
4878 Add needed entries in .def files.
4879 Use HAVE_UNISTD_H.
4880 Rearrange def files in vs8 solutions. Fixes #366286.
4882 2006-10-28 Tim-Philipp Müller <tim at centricular dot net>
4884 * win32/common/gstconfig.h:
4885 Add GST_SEGMENT_FORMAT and GST_USING_PRINTF_EXTENSION to the
4886 hand-made win32 gstconfig.h. Fixes #366321.
4888 2006-10-27 Wim Taymans <wim@fluendo.com>
4890 * gst/gstghostpad.c: (gst_proxy_pad_do_acceptcaps),
4891 (gst_ghost_pad_new_full):
4892 Make acceptcaps return TRUE when we don't have a target, just like
4893 setcaps does.
4895 2006-10-27 Wim Taymans <wim@fluendo.com>
4897 * libs/gst/base/gstbasetransform.c: (gst_base_transform_chain):
4898 Revert previous commit, 0 sized buffers are allowed. Reopens #363095.
4900 2006-10-26 Tim-Philipp Müller <tim at centricular dot net>
4902 * gst/gststructure.c: (gst_structure_id_set_value):
4903 If someone tries to set a non-UTF8 string field on a structure,
4904 don't just print a warning, but also ignore the request and do
4905 not change/add that field to the structure.
4907 * tests/check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
4908 Test for the above.
4910 2006-10-25 David Schleef <ds@schleef.org>
4912 * gst/gstinfo.c:
4913 g_hash_table_insert() needs a cast to a non-const pointer duh.
4915 2006-10-25 David Schleef <ds@schleef.org>
4917 * gst/gstinfo.c:
4918 * gst/gstinfo.h:
4919 Change name parameter of _gst_debug_register_funcptr to const
4920 to reflect the constness of its use in the function as well
4921 as to quiet a gcc warning.
4923 2006-10-25 Edward Hervey <edward@fluendo.com>
4925 * libs/gst/base/gstbasetransform.c: (gst_base_transform_chain):
4926 Don't push the buffer if it's empty.
4927 Closes #363095
4929 2006-10-24 Wim Taymans <wim@fluendo.com>
4931 * gst/gstevent.h:
4932 Add small comment.
4934 * libs/gst/base/gstbasetransform.c:
4935 (gst_base_transform_sink_eventfunc):
4936 Debug segment values *after* updating them as this is more
4937 interesting.
4939 2006-10-23 Wim Taymans <wim@fluendo.com>
4941 * docs/design/part-events.txt:
4942 Update some docs.
4944 * docs/design/part-block.txt:
4945 * gst/gstpad.c: (gst_pad_is_blocking), (handle_pad_block),
4946 (gst_pad_push_event):
4947 Revert BLOCKING patch, it tries to be smart without really having a
4948 clear idea what or how. So, now we discard all FLUSHING events again on
4949 a blocking pad. Should fix gnonlin again.
4951 2006-10-23 Wim Taymans <wim@fluendo.com>
4953 Patch by: Sergey Scobich <sergey dot scobich at gmail dot com>
4955 * libs/gst/base/gstbasesrc.c: (gst_base_src_wait_playing),
4956 (gst_base_src_start), (gst_base_src_activate_push):
4957 Make sure size is always initialized. Fixes #364388.
4959 2006-10-20 Stefan Kost <ensonic@users.sf.net>
4961 * docs/random/ensonic/distributed.txt:
4962 add some ideas about doing distributed processing
4964 * docs/random/ensonic/profiling.txt:
4965 get_rusage look promising
4967 2006-10-18 Stefan Kost <ensonic@users.sf.net>
4969 * docs/manual/basics-helloworld.xml:
4970 Add a cast in example to fix compile warning
4972 2006-10-18 Wim Taymans <wim@fluendo.com>
4974 * gst/gstsegment.c: (gst_segment_set_last_stop),
4975 (gst_segment_set_seek), (gst_segment_set_newsegment_full):
4976 Relax arg checking again, -1 is allowed.
4978 2006-10-18 Wim Taymans <wim@fluendo.com>
4980 * gst/gstsegment.c: (gst_segment_set_last_stop),
4981 (gst_segment_set_seek), (gst_segment_set_newsegment_full):
4982 _set_last_stop() must be with a value != -1
4983 A _TYPE_SET to -1 means seek to 0.
4984 Calc last_stop correctly for negative rates.
4985 Make sure we work with positive durations when updating a segment.
4987 2006-10-18 Wim Taymans <wim@fluendo.com>
4989 * docs/design/part-live-source.txt:
4990 * gst/gstclock.h:
4991 Small docs fixes.
4993 2006-10-18 Tim-Philipp Müller <tim at centricular dot net>
4995 * gst/gstbuffer.h:
4996 Add an explicit cast to GstBuffer** to keep old code that added an
4997 explicit cast to GstMiniObject** for gst_mini_object_replace()
4998 compiling without warning.
5000 2006-10-18 Stefan Kost <ensonic@users.sf.net>
5002 * gst/gstvalue.c: (gst_value_set_date), (gst_date_copy):
5003 check for validity of dates
5005 2006-10-17 Tim-Philipp Müller <tim at centricular dot net>
5007 * docs/gst/gstreamer-sections.txt:
5008 Forgot this one, makes gtk-doc shut up.
5010 2006-10-17 Tim-Philipp Müller <tim at centricular dot net>
5012 Patch by: Peter Kjellerstedt <pkj at axis com>
5014 * gst/gstobject.h:
5015 Don't define xmlNodePtr to gpointer if the core was built with
5016 --disable-loadsave and --disable-registry, this will break
5017 applications that want to use libxml2 but are buildling against a
5018 core that doesn't use libxml2. Use an intermediary type GstXmlNodePtr
5019 instead so we don't have to mess with the libxml2 namespace
5020 (#361675).
5022 2006-10-17 Tim-Philipp Müller <tim at centricular dot net>
5024 * gst/gstbuffer.h:
5025 Fix gst_buffer_replace() macro to avoid gst_mini_object_replace()-related
5026 type-punned pointer warnings.
5028 2006-10-16 Tim-Philipp Müller <tim at centricular dot net>
5030 * gst/gstelement.h:
5031 Add casts to the correct return type to state <=> state transition
5032 macros.
5034 2006-10-16 Stefan Kost <ensonic@users.sf.net>
5036 * docs/design/part-live-source.txt:
5037 describe howto handle latency
5039 * docs/random/ensonic/profiling.txt:
5040 more ideas
5042 * tools/gst-plot-timeline.py:
5043 fix log parsing for solaris, remove unused function
5045 2006-10-16 Wim Taymans <wim@fluendo.com>
5047 * docs/design/part-trickmodes.txt:
5048 * gst/gstevent.c:
5049 Update some docs regarding reverse playback.
5051 2006-10-15 Tim-Philipp Müller <tim at centricular dot net>
5053 Patch by: Marcus Granado <mrc dot gran at gmail com>
5055 * win32/vs8/grammar.vcproj:
5056 Error out with a warning if glib-genmarshal.exe is not in path,
5057 instead of creating bogus gstmarshal.[ch] files. Fixes #361720.
5059 2006-10-13 Wim Taymans <wim@fluendo.com>
5061 * gst/gstsegment.c: (gst_segment_set_seek):
5062 When seeking to stop -1, set last_stop (current position) to the
5063 duration of the segment.
5065 2006-10-13 Wim Taymans <wim@fluendo.com>
5067 * gst/gstelement.h:
5068 Clarify _NO_PREROLL a bit more.
5070 * gst/gstevent.c:
5071 Fix docs.
5073 * gst/gstpad.c: (gst_pad_link_check_hierarchy),
5074 (gst_pad_get_caps_unlocked), (gst_pad_save_thyself),
5075 (handle_pad_block), (gst_pad_push_event), (gst_pad_send_event):
5076 Patch by: Yves Lefebvre <ivanohe at abacom dot com> Fix possible deadlock
5077 due to wrong locking order. Fixes #361769.
5078 Remove some redundant/misplaced checks in pad_block.
5080 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_position):
5081 For negative rates, count backwards from the duration.
5083 2006-10-13 Tim-Philipp Müller <tim at centricular dot net>
5085 * gst/gsterror.c: (_gst_library_errors_init):
5086 Fix error message for GST_LIBRARY_ERROR_SETTINGS (feel free to come
5087 up with something better).
5089 2006-10-12 Tim-Philipp Müller <tim at centricular dot net>
5091 * win32/vs6/libgstreamer.dsp:
5092 * win32/vs7/libgstreamer.vcproj:
5093 * win32/vs8/libgstreamer.vcproj:
5094 Don't reference glib-compat.c which is currently not used and not
5095 disted; add gstquark.c which was recently added. Fixes #361730.
5097 2006-10-12 Tim-Philipp Müller <tim at centricular dot net>
5099 * win32/common/libgstbase.def:
5100 * win32/common/libgstcontroller.def:
5101 * win32/common/libgstreamer.def:
5102 Add gst_caps_merge() and a bunch of other recently-added functions.
5103 Fixes #361732.
5105 2006-10-11 Wim Taymans <wim@fluendo.com>
5107 * docs/plugins/gstreamer-plugins.args:
5108 * docs/plugins/inspect/plugin-coreelements.xml:
5109 * docs/plugins/inspect/plugin-coreindexers.xml:
5110 Update element args.
5112 * gst/gstsystemclock.c:
5113 Small comment update.
5115 * plugins/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
5116 (gst_tee_request_new_pad), (gst_tee_release_pad),
5117 (gst_tee_buffer_alloc), (gst_tee_sink_activate_push),
5118 (gst_tee_sink_activate_pull):
5119 * plugins/elements/gsttee.h:
5120 Some tee loving:
5121 Add default property defines.
5122 Implement release pad function.
5123 Give properties better blubs etc.
5124 Activate pads before adding them to a running tee.
5125 Do simple buffer_alloc on the first requested pad.
5126 Post error when activation fails.
5128 2006-10-11 Tim-Philipp Müller <tim at centricular dot net>
5130 * gst/gst.c: (ensure_current_registry_forking):
5131 Check return value of write() to make compiler happy.
5133 2006-10-11 Wim Taymans <wim@fluendo.com>
5135 Patch by: Sjoerd Simons <sjoerd at luon dot net>
5137 * plugins/elements/gstqueue.c: (gst_queue_chain):
5138 Recheck queue filledness after signalling the overrun when we're about
5139 to leak downstream because we released the lock when emitting the signal
5140 and the queue could be empty again. Fixes #352345.
5142 2006-10-11 Tim-Philipp Müller <tim at centricular dot net>
5144 * libs/gst/controller/gstcontroller.c: (gst_controller_new_list):
5145 Fix refcounting here too, just like we did for _new_valist() a few
5146 days ago (#357180) (thanks to René Stadler). Also remove all those
5147 'Since: 0.9' from the gtk-doc blobs.
5149 * tests/check/libs/controller.c: (controller_refcount_new_list),
5150 (gst_controller_suite):
5151 Unit test for the above.
5153 2006-10-10 Wim Taymans <wim@fluendo.com>
5155 Patch by: Sebastien Cote <sebas642 at yahoo dot ca>
5157 * gst/gstpad.c: (gst_pad_get_caps_unlocked),
5158 (gst_pad_save_thyself):
5159 Update some docs.
5160 Write pad direction in XML output. Fixes #345496.
5162 2006-10-10 Wim Taymans <wim@fluendo.com>
5164 Patch by: René Stadler <mail at renestadler dot de>
5166 * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist),
5167 (gst_controller_new_list), (_gst_controller_dispose),
5168 (_gst_controller_finalize), (_gst_controller_class_init):
5169 Take ref to controlled object so that it cannot disappear.
5170 Fixes #357432.
5172 2006-10-10 Wim Taymans <wim@fluendo.com>
5174 * libs/gst/check/gstcheck.c: (gst_check_setup_src_pad),
5175 (gst_check_teardown_src_pad), (gst_check_setup_sink_pad),
5176 (gst_check_teardown_sink_pad):
5177 Activate/deactivate pads in setup/teardown respectively.
5179 2006-10-10 Zaheer Abbas Merali <zaheerabbas at merali dot org>
5181 Patch by: Josep Torre Valles <josep@fluendo.com>
5183 * gst/Makefile.am:
5184 Cast values when making gstenumtypes.h. This pacifies Forte
5185 so it doesn't warn about the ~0 as GST_MESSAGE_ANY not fitting
5186 in the enumeration.
5188 2006-10-09 Wim Taymans <wim@fluendo.com>
5190 * gst/gstevent.c: (gst_event_new_seek), (gst_event_parse_seek):
5191 Rename some more @cur to @start to fix docs.
5193 * gst/gstsegment.c: (gst_segment_set_seek):
5194 Fix typo.
5195 time and start must always stay in sync as defined in design doc.
5197 * gst/gsttaglist.c: (gst_tag_list_is_empty):
5198 Rename param to fix docs.
5200 * tests/check/gst/gstsegment.c: (GST_START_TEST):
5201 Check that start and time are in sync.
5203 * tests/check/pipelines/parse-launch.c:
5204 (gst_parse_test_element_change_state):
5205 Activate pad before adding to the element.
5207 2006-10-09 Wim Taymans <wim@fluendo.com>
5209 * docs/design/part-qos.txt:
5210 Fix typo.
5212 * gst/gstevent.c:
5213 * gst/gstevent.h:
5214 Update seek event docs regarding negative rates.
5215 Rename @cur to @start.
5217 * gst/gstsegment.c: (gst_segment_set_seek):
5218 * gst/gstsegment.h:
5219 Update set_seek docs regarding negative rates.
5220 Correctly update last_stop to @stop when dealing with negative
5221 rates.
5222 Rename @cur to @start.
5224 * tests/check/gst/gstpad.c: (GST_START_TEST):
5225 Activate pads before trying to use them.
5227 * tests/check/gst/gstsegment.c: (GST_START_TEST),
5228 (gst_segment_suite):
5229 Add simple check for segments and negative rates.
5231 2006-10-09 Tim-Philipp Müller <tim at centricular dot net>
5233 * gst/gsttaglist.c: (gst_tag_list_is_empty):
5234 * gst/gsttaglist.h:
5235 * docs/gst/gstreamer-sections.txt:
5236 API: add gst_tag_list_is_empty() (#360467).
5238 * tests/check/gst/gsttag.c: (GST_START_TEST):
5239 And a test case.
5241 2006-10-09 Zaheer Abbas Merali <zaheerabbas at merali dot org>
5243 * gst/gstmessage.h:
5244 Revert change from earlier wrt GST_MESSAGE_TYPE_ANY having
5245 a value that doesn't fit on enumeration.
5247 2006-10-09 Zaheer Abbas Merali <zaheerabbas at merali dot org>
5249 * libs/gst/net/gstnetclientclock.c: (gst_net_client_clock_thread):
5250 Remove local debugging system and use Gstreamer's instead.
5252 2006-10-09 Zaheer Abbas Merali <zaheerabbas at merali dot org>
5254 Patch by: Josep Torre Valles <josep@fluendo.com>
5256 * common/m4/gst-error.m4:
5257 Disable warning of statement not reached on Forte.
5258 * gst/gstmessage.h:
5259 Fix warning on Forte (value doesn't fit on enumeration).
5260 * libs/gst/base/gstbasesink.c: (gst_base_sink_chain_unlocked):
5261 Fix warning on Forte (value doesn't fit on enumeration).
5262 * libs/gst/net/gstnetclientclock.c: (gst_net_client_clock_thread):
5263 DEBUG macro says it takes minimum of 2 args and so Forte
5264 complains about the use with just 1 arg.
5265 * plugins/elements/gstfdsink.c:
5266 * plugins/elements/gstfdsrc.c:
5267 * plugins/elements/gstfilesink.c:
5268 * plugins/elements/gstfilesrc.c:
5269 Use correct return type for the uri handler implementations.
5271 All these fix warnings in Forte. Fixes bug #360860.
5273 2006-10-08 Tim-Philipp Müller <tim at centricular dot net>
5275 * gst/gstelement.h:
5276 gcc versions prior to gcc 3.3 apparently complain about a NULL printf
5277 format string, so don't use G_GNUC_PRINTF for those versions.
5279 2006-10-07 Tim-Philipp Müller <tim at centricular dot net>
5281 * gst/gsttaglist.c: (gst_is_tag_list):
5282 * gst/gsttaglist.h:
5283 Minor fixes to GST_IS_TAG_LIST and gst_is_tag_list().
5285 * tests/check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
5286 Small test for the above.
5288 2006-10-07 Tim-Philipp Müller <tim at centricular dot net>
5290 * gst/gsttaglist.h:
5291 Less tabs, more spaces.
5293 2006-10-06 Tim-Philipp Müller <tim at centricular dot net>
5295 * gst/gstinfo.h:
5296 Those two function declarations do actually belong there, revert
5297 commit from yesterday that turned them intro macros.
5299 2006-10-06 Zaheer Abbas Merali <zaheerabbas at merali dot org>
5301 Patch by: Josep Torre Valles <josep@fluendo.com>
5303 * gst/gst.c: (gst_init_get_option_group):
5304 Fix empty declaration and type mismatch.
5305 * gst/gstbin.c: (gst_bin_change_state_func):
5306 Fix type mismatch.
5307 * gst/gstelement.c: (gst_element_continue_state),
5308 (gst_element_set_state_func), (gst_element_change_state),
5309 (gst_element_change_state_func):
5310 Fix type mismatches.
5311 * gst/gstinfo.c: (gst_debug_compare_log_function_by_func),
5312 (gst_debug_remove_log_function), (_gst_debug_nameof_funcptr):
5313 Cast as appropriate.
5314 * gst/gstobject.c: (gst_class_signal_connect):
5315 Cast as appropriate. The function pointer parameter really
5316 has the wrong type but would break API if we change it.
5317 * gst/gstquery.c:
5318 Fix redefinition of _FILE_OFFSET_BITS caused on Solaris wrt
5319 order of including string.h.
5320 * gst/gstutils.c: (gst_element_state_get_name):
5321 Remove unreachable line.
5322 * gst/gstxml.c: (gst_xml_parse_doc):
5323 Fix type mismatch.
5324 All these caught by Forte.
5326 2006-10-06 Zaheer Abbas Merali <zaheerabbas at merali dot org>
5328 Patch by: Josep Torre Valles <josep@fluendo.com>
5330 * common/m4/gst-error.m4:
5331 Fixed bug #360151.
5332 We need to disable warnings on Forte for empty declarations
5333 due to gst-indent adding ;s to lines that just use macros
5334 where the macro actually doesn't need a ; at end to end
5335 statement.
5337 2006-10-06 Wim Taymans <wim@fluendo.com>
5339 * plugins/elements/gstfilesink.c: (gst_file_sink_open_file),
5340 (gst_file_sink_close_file), (gst_file_sink_event),
5341 (gst_file_sink_render):
5342 Add some FIXME for the NEWSEGMENT handling.
5344 2006-10-05 Zaheer Abbas Merali <zaheerabbas at merali dot org>
5346 * gst/parse/grammar.y:
5347 Remove static function gst_parse_element_lock as all it does
5348 is return. Looks like cruft from 0.8.
5350 2006-10-05 Zaheer Abbas Merali <zaheerabbas at merali dot org>
5352 Patch by: Josep Torre Valles <josep@fluendo.com>
5354 * common/m4/gst-error.m4:
5355 * configure.ac:
5356 * libs/gst/net/Makefile.am:
5357 Fix a compilation issue with Forte on Solaris. inet_aton is in
5358 libresolv.
5360 2006-10-05 Tim-Philipp Müller <tim at centricular dot net>
5362 * gst/gstpad.c: (pre_activate):
5363 * gst/gstregistry.c: (gst_registry_scan_path_level):
5364 * gst/gstregistryxml.c: (load_plugin):
5365 * libs/gst/controller/gstcontroller.c:
5366 (gst_controlled_property_set_interpolation_mode):
5367 * libs/gst/dataprotocol/dataprotocol.c:
5368 (gst_dp_packet_from_event_1_0):
5369 * libs/gst/net/gstnetclientclock.c:
5370 (gst_net_client_clock_observe_times):
5371 * plugins/elements/gstfdsrc.c: (gst_fd_src_create):
5372 Printf fixes.
5374 2006-10-05 Tim-Philipp Müller <tim at centricular dot net>
5376 * configure.ac:
5377 * docs/gst/gstreamer-sections.txt:
5378 * gst/gstconfig.h.in:
5379 * gst/gstelement.h:
5380 * gst/gstinfo.h:
5381 Add GST_USING_PRINTF_EXTENSION to gstconfig.h so that we know
5382 whether we can use G_GNUC_PRINTF in other header files and at
5383 least check the printf format/arguments of debug messages and
5384 GST_ELEMENT_ERROR messages when the printf extension is not
5385 being used.
5386 Replace more tabs with spaces in gstinfo.h and remove two spurious
5387 function declarations in GST_DISABLE_DEBUG part with macros.
5389 2006-10-03 Tim-Philipp Müller <tim at centricular dot net>
5391 * gst/gstbus.c: (gst_bus_class_init), (gst_bus_post):
5392 More docs for the sync-message signal (mention that it is not
5393 emitted by default); log message structures of messages posted on
5394 the bus as well.
5396 2006-10-03 Jan Schmidt <thaytan@mad.scientist.com>
5398 * gst/gst.c: (ensure_current_registry_forking):
5399 Use a pipe pair to receive status results from the forked child, and
5400 ignore the result from waitpid. Fixes #355499
5402 2006-10-02 Wim Taymans <wim@fluendo.com>
5404 * tests/check/gst/gstghostpad.c: (GST_START_TEST),
5405 (gst_ghost_pad_suite):
5406 Fix leak in check.
5408 2006-10-02 Tim-Philipp Müller <tim at centricular dot net>
5410 * gst/gstpad.c:
5411 Add 'Since: 0.10.11' to gst_pad_is_blocking() gtk-doc blurb.
5413 2006-10-02 Edward Hervey <edward@fluendo.com>
5415 * docs/design/part-block.txt:
5416 Further explain the use of flushing on blocked pads.
5417 * docs/gst/gstreamer-sections.txt:
5418 * gst/gstpad.c: (gst_pad_is_blocking), (handle_pad_block),
5419 (gst_pad_push_event):
5420 * gst/gstpad.h:
5421 Added new GstPadFlag : GST_PAD_BLOCKING.
5422 Adds the notion of pads really blocking, which enables to properly
5423 handle FLUSH_START/FLUSH_STOP events on blocked pads.
5424 Fixes #358999
5425 API: gst_pad_is_blocking()
5426 API: GST_PAD_IS_BLOCKING() macro
5427 API: GST_PAD_BLOCKING GstPadFlag
5429 2006-10-02 Wim Taymans <wim@fluendo.com>
5431 Patch by: mrcgran <mrc.gran at gmail dot com>
5433 * gst/gstghostpad.c: (gst_proxy_pad_do_getcaps):
5434 Filter the proxied caps against the padtemplate if we have one.
5436 * gst/gstquery.c: (gst_query_new_segment):
5437 Add include for gstinfo.h so that compilation with
5438 -DGST_DISABLE_GST_DEBUG works again. Fixes #358436.
5440 2006-10-02 Wim Taymans <wim@fluendo.com>
5442 Patch by: Alessandro Decina <alessandro at nnva org>
5444 * plugins/elements/gstfilesink.c: (gst_file_sink_init),
5445 (gst_file_sink_set_location), (gst_file_sink_open_file),
5446 (gst_file_sink_close_file), (gst_file_sink_event),
5447 (gst_file_sink_render):
5448 Set file to NULL when closing filesink so that we can set a new filename
5449 in READY. Fixes #358613.
5451 2006-10-02 Tim-Philipp Müller <tim at centricular dot net>
5453 Patch by: Alessandro Decina <alessandro at nnva org>
5455 * gst/gstevent.c: (_gst_event_copy):
5456 Fix gst_mini_object_make_writable() and gst_event_copy() for events
5457 with event structures by setting the parent refcount address of the
5458 copied structure to the address of the refcount member of the newly
5459 copied event rather than the address of the refcount member of the
5460 original event. Fixes #358737.
5462 * tests/check/gst/gstevent.c: (GST_START_TEST):
5463 Unit test for the above.
5465 2006-09-29 Stefan Kost <ensonic@users.sf.net>
5467 * docs/design/Makefile.am:
5468 Dist some more files.
5470 2006-09-29 Tim-Philipp Müller <tim at centricular dot net>
5472 * tests/check/libs/controller.c: (GST_START_TEST),
5473 (gst_controller_suite):
5474 Add test for the previous fix; add some more tests
5475 for correct refcounting behaviour; fix a few leaks
5476 in test cases; call gst_controller_init() at start
5477 of all tests.
5479 2006-09-29 Tim-Philipp Müller <tim at centricular dot net>
5481 * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist),
5482 (gst_controller_set_from_list):
5483 Don't g_return_val_if_fail() on timed values with invalid timestamps
5484 inside a critical section without unlocking the mutex. Spotted by
5485 René Stadler. (#357617)
5486 Also, fix up refcounting properly: when returning an existing
5487 controller, we should increase the reference only once and not
5488 once per property and when trying to control a property again
5489 we should also increase the refcount.
5491 2006-09-29 Wim Taymans <wim@fluendo.com>
5493 * libs/gst/net/gstnetclientclock.c: (gst_net_client_clock_thread):
5494 * libs/gst/net/gstnettimeprovider.c:
5495 (gst_net_time_provider_thread):
5496 Stop reading commands when EOF as well.
5498 * plugins/elements/gstfakesink.c: (gst_fake_sink_class_init):
5499 * plugins/elements/gstfakesrc.c: (gst_fake_src_class_init):
5500 * plugins/elements/gstidentity.c: (gst_identity_class_init):
5501 Unify description of the dump property.
5503 2006-09-28 Jan Schmidt <thaytan@mad.scientist.com>
5505 * tests/examples/manual/.cvsignore:
5506 OK, so it's actually cvsignore that needs changing. Stop laughing.
5508 2006-09-28 Jan Schmidt <thaytan@mad.scientist.com>
5510 * tests/examples/manual/Makefile.am:
5511 Gah, declare vars *before* using them
5513 2006-09-28 Jan Schmidt <thaytan@mad.scientist.com>
5515 * gst/gst.c: (init_pre), (scan_and_update_registry),
5516 (ensure_current_registry_nonforking),
5517 (ensure_current_registry_forking), (ensure_current_registry),
5518 (init_post), (gst_debug_help), (gst_deinit):
5519 * gst/gst_private.h:
5520 * gst/gstregistry.c: (gst_registry_finalize),
5521 (gst_registry_remove_features_for_plugin_unlocked),
5522 (gst_registry_remove_plugin), (gst_registry_scan_path_level),
5523 (gst_registry_scan_path),
5524 (_priv_gst_registry_remove_cache_plugins),
5525 (_priv_gst_registry_cleanup):
5526 * gst/gstregistry.h:
5527 Re-commit the registry changes, along with an extra fix:
5528 When a cached plugin is encountered at a different file path,
5529 update the stored path in the registry cache so that the parent
5530 process knows where it actually is now when it re-reads the registry
5531 cache. Fixes the thing that broke distcheck with the previous commit.
5533 * tests/check/Makefile.am:
5534 Clean up files named 'core' too when running make clean.
5536 * tests/examples/manual/Makefile.am:
5537 Set up a registry path for running these tests, and clean it properly
5538 for distcheck.
5540 2006-09-28 Jan Schmidt <thaytan@mad.scientist.com>
5542 * configure.ac:
5543 Don't pull in gmodule-2.0.pc as a dependency in our .pc files - we
5544 want gmodule-no-export-2.0.pc instead so that we don't drag in
5545 --export-dynamic on every project that links to GStreamer.
5547 Also, make our export regex only match the start of symbols, rather
5548 than any symbol that contains '_gst' somewhere.
5550 * libs/gst/check/Makefile.am:
5551 The libgstcheck we build does however need export-dynamic, as it
5552 produces some symbols that don't match our _gst... style regex.
5553 Fixes: #318031
5555 2006-09-27 Jan Schmidt <thaytan@mad.scientist.com>
5557 * gst/gst.c: (init_pre), (scan_and_update_registry),
5558 (ensure_current_registry_nonforking),
5559 (ensure_current_registry_forking), (ensure_current_registry),
5560 (init_post), (gst_debug_help), (gst_deinit):
5561 * gst/gst_private.h:
5562 * gst/gstregistry.c: (gst_registry_finalize),
5563 (gst_registry_remove_plugin), (gst_registry_scan_path_level),
5564 (gst_registry_scan_path), (_gst_registry_remove_cache_plugins),
5565 (_gst_registry_cleanup):
5566 * gst/gstregistry.h:
5567 Revert previous change until I figure out why it breaks distcheck.
5569 2006-09-27 Jan Schmidt <thaytan@mad.scientist.com>
5571 * gst/gst.c: (init_pre), (scan_and_update_registry),
5572 (ensure_current_registry_nonforking),
5573 (ensure_current_registry_forking), (ensure_current_registry),
5574 (init_post), (gst_debug_help), (gst_deinit):
5576 Make init_pre and init_post take the full complement of GOptionFunc
5577 args so they can return useful GErrors. Make the registry updating
5578 functions do so.
5580 Call _priv_gst_registry_remove_cache_plugins after scanning files to
5581 ensure that the registry we're about to write out doesn't contain
5582 stale information about old-deleted plugin files.
5584 Make _priv_gst_registry_remove_cache_plugins return a boolean so
5585 that deletion of plugin files is considered a registry change.
5587 * gst/gst_private.h:
5588 * gst/gstregistry.c: (gst_registry_finalize),
5589 (gst_registry_remove_features_for_plugin_unlocked),
5590 (gst_registry_remove_plugin), (gst_registry_scan_path_level),
5591 (gst_registry_scan_path),
5592 (_priv_gst_registry_remove_cache_plugins),
5593 (_priv_gst_registry_cleanup):
5594 * gst/gstregistry.h:
5595 Rename _gst_registry_remove_cache_plugins and _gst_registry_cleanup
5596 by adding _priv prefix, so that they won't appear in the global
5597 symbol table. They still do atm though because of #318031. Move the
5598 prototypes to gst_private.h
5600 When removing a plugin, remove all features for that plugin too.
5601 Fixes #340878.
5603 2006-09-27 Wim Taymans <wim@fluendo.com>
5605 * docs/random/moving-plugins:
5606 Make it clear that the "compiled-in descriptions" really mean
5607 the element details.
5609 * libs/gst/base/gstbasesink.c: (gst_base_sink_commit_state),
5610 (gst_base_sink_wait_preroll):
5611 Update docs.
5613 * docs/libs/gstreamer-libs-sections.txt:
5614 * libs/gst/base/gstbasesrc.c: (gst_base_src_wait_playing),
5615 (gst_base_src_get_range), (gst_base_src_activate_push):
5616 * libs/gst/base/gstbasesrc.h:
5617 Added function to block while waiting for PLAYING, this function
5618 is used by live sources that block on the clock.
5619 API: gst_base_src_wait_playing()
5621 2006-09-27 Tim-Philipp Müller <tim at centricular dot net>
5623 Patch by: Peter Kjellerstedt <pkj at axis com>
5625 * Makefile.am:
5626 gst-element-check.m4 is generated and should therefore be
5627 copied from the build dir rather than the source dir (#357593).
5628 'make distcheck' hasn't noticed this because we were disting
5629 the file as well, so stop doing that.
5631 2006-09-27 Tim-Philipp Müller <tim at centricular dot net>
5633 * tests/check/gst/gstcaps.c: (GST_START_TEST), (gst_caps_suite):
5634 Add some tests for gst_caps_intersect().
5636 * tools/gst-launch.c: (event_loop):
5637 Print all buffering percentages we get, even the 100% one.
5639 2006-09-26 Wim Taymans <wim@fluendo.com>
5641 * tools/gst-inspect.c: (print_element_properties_info),
5642 (print_signal_info):
5643 Fix printing of flags to match the look of enums.
5645 2006-09-25 Tim-Philipp Müller <tim at centricular dot net>
5647 * gst/gstelementfactory.c:
5648 Fix typo in docs blurb.
5650 2006-09-25 Tim-Philipp Müller <tim at centricular dot net>
5652 * gst/gsturi.c: (search_by_entry):
5653 Don't assert/crash here if a uri handler doesn't return any
5654 supported protocols. The list of protocols could be generated
5655 dynamically at runtime or at plugin registration, and an error
5656 in the underlying library shouldn't be fatal (#353301).
5658 2006-09-25 Tim-Philipp Müller <tim at centricular dot net>
5660 * gst/gstinfo.c:
5661 Fix warning if HAVE_PRINTF_EXTENSION is undefined
5662 (spotted by Peter Kjellerstedt).
5664 2006-09-23 Wim Taymans <wim@fluendo.com>
5666 Based on patch by: Antoine Tremblay <hexa00 at gmail dot com>
5668 * libs/gst/base/gstbasesrc.c:
5669 (gst_base_src_default_check_get_range), (gst_base_src_start),
5670 (gst_base_src_activate_push), (gst_base_src_activate_pull),
5671 (gst_base_src_change_state):
5672 Match _start/_stop calls in the activate functions. Remove redundant
5673 _stop call from the state change function. Fixes #356910.
5674 Turn failure DEBUG into ERROR.
5676 2006-09-22 Wim Taymans <wim@fluendo.com>
5678 * docs/design/part-buffering.txt:
5679 * gst/gstmessage.c: (gst_message_new_buffering),
5680 (gst_message_parse_buffering):
5681 Update docs about buffering.
5683 * docs/design/part-trickmodes.txt:
5684 Fix typo.
5686 2006-09-22 Stefan Kost <ensonic@users.sf.net>
5688 * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist),
5689 (gst_controller_new_list):
5690 Ref instances when returning them again (fixes #357180)
5692 2006-09-22 Tim-Philipp Müller <tim at centricular dot net>
5694 * gst/gstghostpad.c: (gst_ghost_pad_set_target):
5695 Don't forget to release proxy lock when there's an error.
5697 2006-09-20 Jan Schmidt <thaytan@mad.scientist.com>
5699 * gst/gstcaps.h:
5700 Add extra initialisers for Caps things, to fix some plugin warnings
5701 when using -Wextra
5703 2006-09-18 Wim Taymans <wim@fluendo.com>
5705 * gst/gstghostpad.c: (gst_ghost_pad_new_full):
5706 Also set template on the internal pad so that a getcaps from the
5707 target pad returns the template caps.
5709 2006-09-18 Wim Taymans <wim@fluendo.com>
5711 * gst/gstelement.c: (gst_element_post_message),
5712 (gst_element_dispose):
5713 Use _DEBUG_OBJECT some more.
5715 * libs/gst/base/gstbasesrc.c: (gst_base_src_loop):
5716 Avoid typechecks.
5718 * tools/gst-launch.c: (main):
5719 If the toplevel element is not a GstPipeline, it must be put in a
5720 pipeline so that a bus and clock is selected.
5722 2006-09-17 Tim-Philipp Müller <tim at centricular dot net>
5724 * libs/gst/base/gstbasesrc.c: (gst_base_src_default_query):
5725 JITTER, RATE, and LATENCY query should be handled by the
5726 default case and not by the CONVERT query code.
5728 2006-09-17 Tim-Philipp Müller <tim at centricular dot net>
5730 * gst/gstformat.c: (gst_format_register):
5731 Fix locking order (must take lock before using n_values).
5733 * gst/gstvalue.c: (gst_value_serialize_enum),
5734 (gst_value_deserialize_enum_iter_cmp),
5735 (gst_value_deserialize_enum):
5736 Fix serialisation/deserialisation of custom registered GstFormats.
5738 * tests/check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
5739 Unit test for custom format serialisation/deserialisation.
5741 2006-09-17 Stefan Kost <ensonic@users.sf.net>
5743 * docs/pwg/building-boiler.xml:
5744 * plugins/elements/gstcapsfilter.c:
5745 More G_OBJECT macro fixing. Also Fix some details on the plugin-stamp
5746 section.
5748 2006-09-16 Edward Hervey <edward@fluendo.com>
5750 * libs/gst/base/gstbasetransform.c:
5751 (gst_base_transform_buffer_alloc):
5752 Check if requested caps are the same as the sinks caps IF
5753 ->have_same_caps is TRUE. If they are not, act as if have_same_caps
5754 is FALSE.
5755 This fixes the renegotiation issues stated in #352827.
5757 2006-09-16 Thomas Vander Stichele <thomas at apestaart dot org>
5759 * configure.ac:
5760 * docs/manual/advanced-autoplugging.xml:
5761 * tests/examples/Makefile.am:
5762 * tests/examples/manual/.cvsignore:
5763 * tests/examples/manual/Makefile.am:
5764 * tests/examples/manual/extract.pl:
5765 Extract the manual examples again like we used to do.
5766 Fix one of them.
5768 2006-09-16 Thomas Vander Stichele <thomas at apestaart dot org>
5770 * win32/common/config.h:
5771 update for version
5773 2006-09-16 Stefan Kost <ensonic@users.sf.net>
5775 * gst/gsterror.c:
5776 Documents how to receive errors.
5778 2006-09-15 Wim Taymans <wim@fluendo.com>
5780 * tools/gst-launch.c: (sigint_handler_sighandler), (check_intr),
5781 (event_loop), (main):
5782 Added some comments here and there.
5783 Post an application message when an interrupt is caught instead of doing
5784 an uncontrolled state change.
5785 Clean up the event loop.
5786 Handle buffering messages, pause/resume the pipeline.
5787 Make shutdown because of an interrupt more reliable.
5789 2006-09-15 Wim Taymans <wim@fluendo.com>
5791 * libs/gst/base/gstbasesink.c: (gst_base_sink_commit_state),
5792 (gst_base_sink_wait_preroll), (gst_base_sink_do_sync),
5793 (gst_base_sink_preroll_object):
5794 Make sure that our internal state is correct when we commit our state
5795 asynchronously. This solves a race where a state change to PLAYING
5796 could cause the sink to remain blocked in preroll in some situations.
5798 2006-09-15 Wim Taymans <wim@fluendo.com>
5800 * tools/gst-inspect.c: (print_element_properties_info),
5801 (print_signal_info):
5802 List flags as hex so it's easier to deal with.
5804 2006-09-15 Wim Taymans <wim@fluendo.com>
5806 * docs/libs/gstreamer-libs-sections.txt:
5807 * libs/gst/base/gstbasesink.c: (gst_base_sink_wait_preroll),
5808 (gst_base_sink_do_sync):
5809 * libs/gst/base/gstbasesink.h:
5810 Expose logic to wait for preroll so that subclasses such as audiosink
5811 can also use this method.
5812 API: gst_base_sink_wait_preroll()
5814 2006-09-15 Wim Taymans <wim@fluendo.com>
5816 * gst/gstobject.c: (gst_object_set_parent):
5817 * gst/gstpipeline.c: (do_pipeline_seek):
5818 Small cleanups in docs and code.
5820 * gst/gstsegment.c: (gst_segment_clip):
5821 * tests/check/gst/gstsegment.c: (GST_START_TEST):
5822 if stop == start and start is in the segment, no clipping should be
5823 done. Also add a test for this.
5825 2006-09-15 Wim Taymans <wim@fluendo.com>
5827 * docs/design/part-buffering.txt:
5828 * docs/gst/gstreamer-sections.txt:
5829 * gst/gstmessage.c: (gst_message_new_buffering),
5830 (gst_message_parse_buffering):
5831 * gst/gstmessage.h:
5832 Added methods to create and parse BUFFERING messages.
5833 Added preliminary docs about buffering.
5834 API: gst_message_new_buffering
5835 API: gst_message_parse_buffering
5837 2006-09-06 Wim Taymans <wim@fluendo.com>
5839 * gst/gstbin.c:
5840 Update documentation.
5842 * gst/gstelement.c: (gst_element_class_init),
5843 (gst_element_release_request_pad), (gst_element_set_clock),
5844 (gst_element_get_index), (gst_element_add_pad),
5845 (gst_element_remove_pad), (gst_element_get_random_pad),
5846 (gst_element_send_event), (gst_element_get_query_types),
5847 (gst_element_query), (gst_element_post_message),
5848 (gst_element_message_full), (gst_element_continue_state),
5849 (gst_element_lost_state), (gst_element_save_thyself),
5850 (gst_element_restore_thyself):
5851 Documentation updates.
5852 Rename last bit of the new-pad -> pad-added signal rename.
5853 Fix the case where an element query would only work if the source
5854 pad was linked.
5855 Avoid some useless type checking in message handling.
5857 * gst/gstevent.c:
5858 * gst/gstevent.h:
5859 * gst/gstutils.c:
5860 Documentation updates.
5862 2006-09-14 Thomas Vander Stichele <thomas at apestaart dot org>
5864 * plugins/elements/gstfdsrc.c: (gst_fd_src_update_fd):
5865 add an INFO line for when we actually update the fd
5867 2006-09-14 Thomas Vander Stichele <thomas at apestaart dot org>
5869 * configure.ac:
5870 back to TRUNK
5872 === release 0.10.10 ===
5874 2006-09-14 Thomas Vander Stichele <thomas at apestaart dot org>
5876 * configure.ac:
5877 releasing 0.10.10, "Pais"
5879 2006-09-05 Tim-Philipp Müller <tim at centricular dot net>
5881 * docs/manual/advanced-position.xml:
5882 Fix typo in sample code.
5884 2006-09-05 Wim Taymans <wim@fluendo.com>
5886 * libs/gst/net/gstnetclientclock.c: (inet_aton),
5887 (gst_net_client_clock_init), (gst_net_client_clock_finalize),
5888 (gst_net_client_clock_do_select), (gst_net_client_clock_new):
5889 * libs/gst/net/gstnetclientclock.h:
5890 * libs/gst/net/gstnettimepacket.c: (gst_net_time_packet_send):
5891 * libs/gst/net/gstnettimepacket.h:
5892 * libs/gst/net/gstnettimeprovider.c: (inet_aton),
5893 (gst_net_time_provider_init), (gst_net_time_provider_finalize),
5894 (gst_net_time_provider_thread), (gst_net_time_provider_new):
5895 * libs/gst/net/gstnettimeprovider.h:
5896 Make stuff compile on windows. Fixes #345295.
5898 2006-09-03 Tim-Philipp Müller <tim at centricular dot net>
5900 * gst/gst.c: (ensure_current_registry_forking):
5901 Print better details when child was terminated by signal.
5903 2006-09-03 Tim-Philipp Müller <tim at centricular dot net>
5905 * gst/gstregistryxml.c: (gst_registry_xml_save_feature):
5906 Print a warning rather than g_assert() if a plugin feature
5907 is a URI handler but returns no protocols (#353976).
5909 2006-09-02 Stefan Kost <ensonic@users.sf.net>
5911 * docs/random/moving-plugins:
5912 Fix two typos.
5914 2006-09-01 Tim-Philipp Müller <tim at centricular dot net>
5916 * gst/gstinfo.c: (_gst_debug_nameof_funcptr):
5917 Fix locking order, handle NULL function values properly.
5919 * gst/gstinfo.h:
5920 Fix docs.
5922 * gst/gstpad.c: (gst_pad_buffer_alloc_unchecked):
5923 Initialise variable before using it and fix debug statement to
5924 print the address of the function rather than the address of the
5925 variable on the stack holding the address of the function.
5927 2006-09-01 Wim Taymans <wim@fluendo.com>
5929 * gst/gstghostpad.c: (gst_proxy_pad_do_event),
5930 (gst_proxy_pad_do_bufferalloc), (gst_proxy_pad_do_chain),
5931 (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
5932 (gst_proxy_pad_set_target_unlocked), (gst_ghost_pad_parent_set),
5933 (gst_ghost_pad_parent_unset),
5934 (gst_ghost_pad_internal_do_activate_push),
5935 (gst_ghost_pad_internal_do_activate_pull),
5936 (gst_ghost_pad_do_activate_push), (gst_ghost_pad_do_activate_pull),
5937 (gst_ghost_pad_do_link), (gst_ghost_pad_do_unlink),
5938 (gst_ghost_pad_init), (gst_ghost_pad_dispose),
5939 (gst_ghost_pad_new_full), (gst_ghost_pad_new_no_target),
5940 (gst_ghost_pad_new), (gst_ghost_pad_new_from_template),
5941 (gst_ghost_pad_new_no_target_from_template),
5942 (gst_ghost_pad_get_target), (gst_ghost_pad_set_target):
5943 More cleanups.
5944 Avoid needless typechecking in macros.
5945 Since the internal pad is always present and never changes, there is
5946 no need to locking or ref when retrieving it.
5947 Improve debugging a bit.
5948 Handle link errors when setting the target. Fixes #341029.
5950 2006-09-01 Wim Taymans <wim@fluendo.com>
5952 * docs/libs/gstreamer-libs-sections.txt:
5953 * docs/plugins/gstreamer-plugins-sections.txt:
5954 Fix docs some more.
5956 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_remove_pad),
5957 (gst_collect_pads_event):
5958 * libs/gst/base/gstcollectpads.h:
5959 Documentation updates.
5960 Free queued buffer when removing a pad.
5962 2006-08-31 Michael Smith <msmith@fluendo.com>
5964 * gst/gstutils.c: (gst_element_link_pads),
5965 (gst_element_link_pads_filtered):
5966 Ensure that we set a capsfilter to NULL if we failed to link it
5967 when doing filtered linking, to avoid criticals.
5969 No need to check for unreffing srcpad, which is explicly NULLed
5970 above (a trivial code cleanup).
5972 2006-08-31 Wim Taymans <wim@fluendo.com>
5974 * docs/design/part-gstghostpad.txt:
5975 Update ascii art in documentation.
5977 * gst/gstghostpad.c: (gst_proxy_pad_do_internal_link),
5978 (gst_proxy_pad_set_target_unlocked), (gst_proxy_pad_init),
5979 (gst_ghost_pad_parent_set), (gst_ghost_pad_parent_unset),
5980 (gst_ghost_pad_internal_do_activate_push),
5981 (gst_ghost_pad_internal_do_activate_pull),
5982 (gst_ghost_pad_do_activate_push), (gst_ghost_pad_do_activate_pull),
5983 (gst_ghost_pad_do_link), (gst_ghost_pad_do_unlink),
5984 (gst_ghost_pad_dispose), (gst_ghost_pad_new_full),
5985 (gst_ghost_pad_set_target):
5986 Small cleanups and leak fixes.
5987 Remove some checks now that the internal pad is never NULL.
5988 Fix the case where linking pads without a target would create nasty
5989 criticals. Fixes #341029.
5990 Don't assign a GstPadLinkReturn to a gboolean and mess up the return
5991 value of _set_target().
5993 * tests/check/gst/gstghostpad.c: (GST_START_TEST),
5994 (gst_ghost_pad_suite):
5995 Some more tests for creating and linking untargeted ghostpads.
5997 2006-08-31 Edward Hervey <edward@fluendo.com>
5999 * docs/gst/gstreamer-sections.txt:
6000 * gst/gstghostpad.c: (gst_proxy_pad_do_getcaps),
6001 (gst_proxy_pad_do_setcaps), (gst_proxy_pad_set_target_unlocked),
6002 (gst_proxy_pad_dispose), (gst_ghost_pad_new_full),
6003 (gst_ghost_pad_new_no_target), (gst_ghost_pad_new),
6004 (gst_ghost_pad_new_from_template),
6005 (gst_ghost_pad_new_no_target_from_template):
6006 * gst/gstghostpad.h:
6007 Refactored *_new() functions.
6008 Templates are now used as a g_object_new() parameter.
6009 Use template in _do_getcaps() if we don't have a target.
6010 Small documentation cleanups.
6011 Added two new constructors:
6012 gst_ghost_pad_new_from_template()
6013 gst_ghost_pad_new_no_target_from_template()
6014 * tests/check/gst/gstghostpad.c: (GST_START_TEST),
6015 (gst_ghost_pad_suite):
6016 Added tests for new ghostpad instanciation functions.
6018 API additions: gst_ghost_pad_new_from_template,
6019 gst_ghost_pad_new_no_target_from_template
6021 2006-08-30 Stefan Kost <ensonic@users.sf.net>
6023 * docs/random/ensonic/profiling.txt:
6024 Ideas about qos profiling.
6026 2006-08-29 Wim Taymans <wim@fluendo.com>
6028 * gst/gstcaps.c: (gst_caps_structure_is_subset_field):
6029 Code cleanups.
6030 Fix memleak.
6032 2006-08-29 Tim-Philipp Müller <tim at centricular dot net>
6034 * gst/gstxml.c:
6035 Improve and detypofy docs.
6037 * tests/check/Makefile.am:
6038 * tests/check/gst/.cvsignore:
6039 * tests/check/gst/gstxml.c: (GST_START_TEST), (gst_xml_suite):
6040 Add a basic test suite for GstXML.
6042 2006-08-29 Wim Taymans <wim@fluendo.com>
6044 * gst/gstelement.c: (activate_pads), (clear_caps),
6045 (iterator_activate_fold_with_resync), (gst_element_pads_activate):
6046 Clear the pad caps when the element shut down all of the pads and
6047 is not streaming data that could modify the caps.
6048 Fixes #352958.
6050 2006-08-28 Michael Smith <msmith@fluendo.com>
6052 * plugins/elements/gstidentity.c: (gst_identity_transform_ip):
6053 Revert previous change; I misunderstood single-segment mode.
6055 2006-08-28 Michael Smith <msmith@fluendo.com>
6057 * plugins/elements/gstidentity.c: (gst_identity_transform_ip):
6058 Unset DISCONT on buffers when using single-segment mode.
6060 2006-08-28 Wim Taymans <wim@fluendo.com>
6062 * gst/gstcaps.c: (gst_caps_merge_structure):
6063 * gst/gstcaps.h:
6064 Fix docs and indentation again.
6066 * tests/check/gst/gstquery.c: (GST_START_TEST):
6067 Fix leak in tests and add some more tests.
6069 2006-08-28 Edward Hervey <edward@fluendo.com>
6071 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times):
6072 Inform GstSegment of the last stop position in order for the current
6073 segment to have a proper duration if it doesn't have a specific stop
6074 position from which a duration could be calculated.
6075 This bug was noticeable when a non-flushing, non-update new segment was
6076 followed by another segment (all buffers from the new segment were being
6077 dropped).
6079 2006-08-28 Wim Taymans <wim@fluendo.com>
6081 * libs/gst/base/gstbasesrc.c: (gst_base_src_perform_seek):
6082 Small comment update.
6084 * plugins/elements/gstidentity.c: (gst_identity_class_init),
6085 (gst_identity_transform_ip):
6086 Drop-probability is broken, mention this in the code with a
6087 FIXME and also in the property description.
6088 Make silent also be silent about the drop messages.
6090 2006-08-28 Tim-Philipp Müller <tim at centricular dot net>
6092 * docs/manual/appendix-win32.xml:
6093 Remove mention of popt, we don't depend on that any
6094 longer (#353136). Add some comments pointing out that
6095 this section is slightly outdated.
6097 2006-08-28 Wim Taymans <wim@fluendo.com>
6099 Patch by: Torsten Schoenfeld <kaffeetisch at gmx dot de>
6101 * gst/gstquery.c: (gst_query_new_segment):
6102 * tests/check/gst/gstquery.c: (GST_START_TEST):
6103 Initialize variables when creating a new segment query.
6104 Fixes #353121.
6106 2006-08-28 Wim Taymans <wim@fluendo.com>
6108 Patch by: Torsten Schoenfeld <kaffeetisch at gmx dot de>
6110 * gst/gstelement.c: (gst_element_get_bus):
6111 * tests/check/gst/gstelement.c: (GST_START_TEST):
6112 Check for NULL before _reffing the bus. Fixes #353122.
6114 2006-08-25 Tim-Philipp Müller <tim at centricular dot net>
6116 * docs/manual/basics-bus.xml:
6117 Docs update: fix wrong callback return value explanation; add
6118 some lines about the implicit relationship between main loop
6119 and main context; remove duplicate main loop variable declaration.
6121 2006-08-24 Tim-Philipp Müller <tim at centricular dot net>
6123 * tests/check/gst/gstcaps.c: (GST_START_TEST):
6124 Don't leak caps in unit test; add a few more simple
6125 checks.
6127 2006-08-24 Stefan Kost <ensonic@users.sf.net>
6129 * docs/gst/gstreamer-sections.txt:
6130 * gst/gstcaps.c: (gst_caps_structure_is_subset_field),
6131 (gst_caps_structure_is_subset), (gst_caps_merge),
6132 (gst_caps_merge_structure):
6133 * gst/gstcaps.h:
6134 * libs/gst/base/gstbasetransform.c:
6135 (gst_base_transform_transform_caps):
6136 * tests/check/gst/gstcaps.c: (GST_START_TEST), (gst_caps_suite):
6137 implement caps merging (fixes #352580)
6139 2006-08-23 Stefan Kost <ensonic@users.sf.net>
6141 * tools/Makefile.am:
6142 * tools/gst-plot-timeline.py:
6143 add debug-log plotting developer tool (#340674)
6145 2006-08-23 Wim Taymans <wim@fluendo.com>
6147 * gst/gstpad.c: (gst_pad_start_task), (gst_pad_pause_task),
6148 (gst_pad_stop_task):
6149 Improve debugging for task functions.
6151 * gst/gsttask.c: (gst_task_func), (gst_task_set_lock),
6152 (gst_task_start), (gst_task_pause), (gst_task_join):
6153 Make sure that the task function started and finished after a
6154 join().
6155 Don't try to push the task function on the threadpool multiple
6156 times.
6157 Improve the g_warning message with some useful suggestions
6158 about how to fix the problem.
6160 2006-08-23 Wim Taymans <wim@fluendo.com>
6162 * gst/gstutils.c: (gst_pad_proxy_getcaps):
6163 Handle RESYNC correctly in _proxy_getcaps.
6165 2006-08-21 Tim-Philipp Müller <tim at centricular dot net>
6167 * gst/gstxml.c: (gst_xml_dispose), (gst_xml_parse_file),
6168 (gst_xml_parse_memory), (gst_xml_get_element):
6169 Chain up to parent class in dispose function and also
6170 unref the elements in the toplevel_elements GList.
6171 Don't leak XmlDocPtr in _parse_file() and _parse_memory().
6172 Always return a reference in gst_xml_get_element() rather
6173 than only sometimes.
6175 * tools/gst-launch.c: (xmllaunch_parse_cmdline):
6176 Don't leak GstXml object.
6178 2006-08-21 Stefan Kost <ensonic@users.sf.net>
6180 * docs/gst/gstreamer-sections.txt:
6181 * gst/gstcaps.c: (gst_structure_is_equal_foreach),
6182 (gst_caps_merge):
6183 * gst/gstcaps.h:
6184 * libs/gst/base/gstbasetransform.c:
6185 (gst_base_transform_transform_caps):
6186 API: Add gst_caps_merge() and use it in basetransform, fixes #345444
6187 in a better way
6189 2006-08-21 Edward Hervey <edward@fluendo.com>
6191 * gst/gstxml.c: (gst_xml_class_init), (gst_xml_dispose):
6192 Implement GObject::dispose virtual method in GstXML so we can free the
6193 top_elements GList.
6195 2006-08-21 Wim Taymans <wim@fluendo.com>
6197 * gst/gstbuffer.c: (gst_buffer_make_metadata_writable),
6198 (gst_buffer_create_sub):
6199 Copy duration/offset_end/caps when creating a subbuffer of the
6200 complete parent.
6201 Make the subbuffer read-only when we make the metadata writable for
6202 now. Fixes #351768.
6204 * tests/check/gst/gstbuffer.c: (GST_START_TEST):
6205 Added check for metadata copy when creating subbuffers.
6207 2006-08-21 Edward Hervey <edward@fluendo.com>
6209 * libs/gst/base/gstbasetransform.c:
6210 (gst_base_transform_buffer_alloc):
6211 Only call downstream buffer_alloc if transform element is passthrough
6212 or always_in_place. Closes #350449.
6214 2006-08-20 Stefan Kost <ensonic@users.sf.net>
6216 * ChangeLog:
6217 ChangeLog surgery to add comments to previous changes
6219 2006-08-20 Stefan Kost <ensonic@users.sf.net>
6221 * gst/gst.c:
6222 Add comments
6224 * gst/gstpad.c: (gst_pad_set_active):
6225 Be more verbose in the log
6227 * libs/gst/base/gstbasetransform.c:
6228 (gst_base_transform_transform_caps):
6229 Simplify caps to get rid of duplicates, fixes #345444
6231 2006-08-20 Stefan Kost <ensonic@users.sf.net>
6233 * gst/gstvalue.c:
6234 * gst/gstvalue.h:
6235 Use these optimizations only internally.
6237 2006-08-20 Stefan Kost <ensonic@users.sf.net>
6239 * gst/gstvalue.c: (gst_value_compare_list),
6240 (gst_value_compare_fraction_range),
6241 (gst_value_intersect_fraction_fraction_range),
6242 (gst_value_intersect_fraction_range_fraction_range),
6243 (gst_value_subtract_fraction_fraction_range),
6244 (gst_value_subtract_fraction_range_fraction_range),
6245 (gst_value_get_compare_func), (gst_value_compare),
6246 (gst_value_compare_with_func):
6247 * gst/gstvalue.h:
6248 Saves the expensive lookup of the compare function in many cases
6249 (#345444)
6251 2006-08-18 Edward Hervey <edward@fluendo.com>
6253 * tests/check/gst/gstinfo.c: (gst_info_suite):
6254 Disable test that require gstdebug if it wasn't built in core.
6256 2006-08-18 Stefan Kost <ensonic@users.sf.net>
6258 * docs/random/ensonic/logging.txt:
6259 update ideas
6261 * gst/gstinfo.c: (gst_debug_log_default):
6262 reorder fields, save some columns, add optional color codes for log
6263 levels
6265 2006-08-18 Stefan Kost <ensonic@users.sf.net>
6267 * docs/random/ensonic/logging.txt:
6268 add ideas about making the logs a bit more useful
6270 2006-08-17 Tim-Philipp Müller <tim at centricular dot net>
6272 * docs/pwg/advanced-events.xml:
6273 * docs/pwg/titlepage.xml:
6274 Update for 0.10 API (#340627). Add myself
6275 to authors list.
6277 2006-08-17 Tim-Philipp Müller <tim at centricular dot net>
6279 * docs/libs/gstreamer-libs-docs.sgml:
6280 * docs/libs/gstreamer-libs-sections.txt:
6281 * libs/gst/check/gstbufferstraw.c:
6282 Make gstcheck stuff show up in docs (still needs to
6283 be documented properly though).
6285 2006-08-16 Jan Schmidt <thaytan@mad.scientist.com>
6287 * docs/gst/gstreamer-sections.txt:
6288 * gst/Makefile.am:
6289 * gst/gst.c: (init_post):
6290 * gst/gst_private.h:
6291 * gst/gstquark.c: (_priv_gst_quarks_initialize):
6292 * gst/gstquark.h:
6293 * gst/gstquery.c: (gst_query_new_position),
6294 (gst_query_set_position), (gst_query_parse_position),
6295 (gst_query_new_duration), (gst_query_set_duration),
6296 (gst_query_parse_duration), (gst_query_new_convert),
6297 (gst_query_set_convert), (gst_query_parse_convert),
6298 (gst_query_new_segment), (gst_query_set_segment),
6299 (gst_query_parse_segment), (gst_query_new_seeking),
6300 (gst_query_set_seeking), (gst_query_parse_seeking):
6301 Add internal helpers for pre-registering quarks from static strings
6302 and using the quark values directly instead of looking them up when
6303 creating and parsing queries. Can be used for event construction too.
6304 Closes #350432.
6306 2006-08-16 Wim Taymans <wim@fluendo.com>
6308 * gst/gstbin.c:
6309 Fix bogus docs.
6311 2006-08-15 Tim-Philipp Müller <tim at centricular dot net>
6313 * gst/gstutils.c: (gst_util_set_value_from_string):
6314 Fix memleak (#351502).
6316 * tests/check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
6317 Add unit test for most of gst_util_set_value_from_string()
6318 (not that one would want to encourage use of this function).
6320 2006-08-15 Tim-Philipp Müller <tim at centricular dot net>
6322 * libs/gst/check/gstcheck.h:
6323 Use const gchar * variables in fail_unless_equals_string
6324 macro to avoid compiler warnings (and don't use tabs for
6325 indenting).
6327 2006-08-15 Tim-Philipp Müller <tim at centricular dot net>
6329 * tools/gst-launch.c: (print_tag):
6330 More space on the left for the tag names, to cater
6331 for the 'extended comment' tag (not touching the
6332 string for the first line since it's translated).
6334 2006-08-15 Tim-Philipp Müller <tim at centricular dot net>
6336 * libs/gst/check/gstcheck.h:
6337 Fix ASSERT_CRITICAL and ASSERT_WARNING macros to actually
6338 print something when they fail.
6340 2006-08-14 Tim-Philipp Müller <tim at centricular dot net>
6342 * docs/gst/gstreamer-sections.txt:
6343 * gst/gsttaglist.c: (_gst_tag_initialize):
6344 * gst/gsttaglist.h:
6345 API: add GST_TAG_EXTENDED_COMMENT (#350935).
6346 Also change merge function for GST_TAG_COMMENT to
6347 use_first.
6349 2006-08-14 Tim-Philipp Müller <tim at centricular dot net>
6351 * gst/gstinfo.c: (gst_debug_print_object):
6352 Make GST_PTR_FORMAT print messages as well.
6354 * tests/check/gst/gstinfo.c: (printf_extension_log_func),
6355 (GST_START_TEST), (gst_info_suite):
6356 More tests.
6358 2006-08-14 Edward Hervey <edward@fluendo.com>
6360 * gst/gstelementfactory.c: (gst_element_register):
6361 If the GstElementClass doesn't have a GstElementDetails with all fields
6362 filled up correctly (longname, description AND author), then error out
6363 nicely instead of crashing.
6365 2006-08-14 Tim-Philipp Müller <tim at centricular dot net>
6367 * gst/gststructure.c:
6368 Fix typo in docs and re-wrap docs blurb to not exceed 80 chars/line.
6370 * gst/gstvalue.h:
6371 Expand on the difference between arrays and lists as we use them.
6373 2006-08-14 Wim Taymans <wim@fluendo.com>
6375 * libs/gst/base/gstbasesrc.c: (gst_base_src_change_state):
6376 If the parent state change function failed, don't assume we can safely
6377 stop the source, this will be done when the pads are deactivated.
6379 2006-08-14 Wim Taymans <wim@fluendo.com>
6381 * gst/gstbuffer.c:
6382 * gst/gsttask.c: (gst_task_join):
6383 Small doc updates.
6385 * gst/gstpad.c: (gst_pad_activate_pull), (gst_pad_activate_push),
6386 (gst_pad_stop_task):
6387 When pad (de)activation failed for some reason, restore the old
6388 activation mode and set the pad to flushing instead of assuming the
6389 pad is deactivated.
6390 If the _task_join() failed, reinstall the task on the pad so that it can
6391 be stopped later and return an error.
6393 2006-08-11 Andy Wingo <wingo@pobox.com>
6395 * configure.ac:
6396 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packetizer_new):
6397 * tests/check/libs/gdp.c: (gst_dp_suite): GST_DISABLE_DEPRECATED
6398 is only for users of API that don't want to see deprecated
6399 functions in the headers; people that want to compile out
6400 deprecated code should pass -DGST_REMOVE_DEPRECATED into the
6401 CFLAGS. Fixes the build of multifdsink, or will soon..
6403 2006-08-11 Wim Taymans <wim@fluendo.com>
6405 * docs/gst/gstreamer-sections.txt:
6406 Add GstClockClass vmethod docs.
6408 * gst/gstcaps.h:
6409 Mark #endif with comment for associated #if
6411 * gst/gstclock.c: (gst_clock_id_wait):
6412 * gst/gstclock.h:
6413 Add vmethod wait_jitter to avoid an unneeded _get_time() for
6414 most clock implementations.
6415 Document vmethods.
6416 Flesh out docs about resolution methods.
6417 API: GstClockClass::wait_jitter
6419 * gst/gstsystemclock.c: (gst_system_clock_class_init),
6420 (gst_system_clock_async_thread),
6421 (gst_system_clock_id_wait_jitter_unlocked),
6422 (gst_system_clock_id_wait_jitter):
6423 Use base class wait_jitter variant for improved performance
6424 due to less clock polling.
6426 2006-08-11 Edward Hervey <edward@fluendo.com>
6428 * gst/gst.c: (gst_init_check), (init_post):
6429 Set gst as being initialized before scanning/updating the registry,
6430 since there might be my python plugin loader that calls gst_init() and
6431 we don't want to loop back in.
6432 Closes #350879
6434 2006-08-11 Wim Taymans <wim@fluendo.com>
6436 * docs/design/part-qos.txt:
6437 Bring docs in line with the code. Mostly the sign of the jitter was
6438 wrong in the docs. Fixes #349943.
6440 * gst/gstclock.c:
6441 Fix the docs for the jitter.
6443 * gst/gstevent.c: (gst_event_new_custom), (gst_event_new_tag),
6444 (gst_event_parse_tag), (gst_event_new_buffer_size),
6445 (gst_event_parse_buffer_size), (gst_event_parse_qos),
6446 (gst_event_new_seek), (gst_event_parse_seek),
6447 (gst_event_new_navigation):
6448 Make sure the GstStructure has no parent when creating custom
6449 events.
6450 Add some more argument checking so that we avoid 0.0 rates.
6451 Flesh out the docs for the QoS event some more.
6453 2006-08-11 Wim Taymans <wim@fluendo.com>
6455 * docs/gst/gstreamer-sections.txt:
6456 * gst/gst.c: (gst_init_get_option_group), (gst_init_check),
6457 (ensure_current_registry_forking), (ensure_current_registry),
6458 (parse_one_option), (parse_goption_arg), (gst_deinit),
6459 (gst_registry_fork_is_enabled), (gst_registry_fork_set_enabled):
6460 * gst/gst.h:
6461 Doc updates.
6462 Added API and command line option to disable registry forking in
6463 addition to the environment variable.
6464 Constify some static arrays.
6465 Added some more debug.
6466 Don't deinit twice.
6467 API: gst_registry_fork_is_enabled()
6468 API: gst_registry_fork_set_enabled()
6469 API: --gst-disable-registry-fork command line option
6470 Fixes #348918.
6472 2006-08-11 Tim-Philipp Müller <tim at centricular dot net>
6474 * gst/gst.c: (gst_init):
6475 Fix typo in error message.
6477 2006-08-10 Stefan Kost <ensonic@users.sf.net>
6479 * libs/gst/controller/gstcontroller.h:
6480 fix ABI size-correction
6482 * tests/check/libs/gdp.c: (gst_dp_suite):
6483 make tests that use deprecated API conditional
6485 2006-08-10 Stefan Kost <ensonic@users.sf.net>
6487 * docs/libs/gstreamer-libs-sections.txt:
6488 * libs/gst/controller/gstcontroller.c:
6489 (_gst_controller_get_property), (_gst_controller_set_property),
6490 (_gst_controller_init), (_gst_controller_class_init):
6491 * libs/gst/controller/gstcontroller.h:
6492 * libs/gst/controller/gsthelper.c: (gst_object_get_control_rate),
6493 (gst_object_set_control_rate):
6494 API: add gst_object_{s,g}et_control_rate(), add private data section,
6495 fix docs
6497 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packetizer_new):
6498 * libs/gst/dataprotocol/dataprotocol.h:
6499 add deprecation guards to make gtk-doc happy and allow disabling cruft
6501 2006-08-09 Tim-Philipp Müller <tim at centricular dot net>
6503 * tests/check/Makefile.am:
6504 * tests/check/gst/.cvsignore:
6505 Let's enable the new unit test as well.
6507 2006-08-08 Tim-Philipp Müller <tim at centricular dot net>
6509 * configure.ac:
6510 * docs/gst/gstreamer-sections.txt:
6511 * gst/gstconfig.h.in:
6512 * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_segment),
6513 (_gst_info_printf_extension_ptr),
6514 (_gst_info_printf_extension_segment):
6515 API: add GST_SEGMENT_FORMAT, which is a printf extension we
6516 register that lets us easily dump GstSegments into debug
6517 logs (#350419).
6519 * tests/check/gst/gstinfo.c: (segment_printf_extension_log_func),
6520 (info_segment_format_printf_extension), (gst_info_suite):
6521 Add simple unit test that logs a bunch of different segments (not
6522 valgrinded at the moment because of leaks in
6523 gst_debug_add_log_function).
6525 2006-08-09 Edward Hervey <edward@fluendo.com>
6527 * libs/gst/base/gstbasetransform.c:
6528 (gst_base_transform_buffer_alloc):
6529 Even if we can't figure out the proper format to request downstream,
6530 call buffer_alloc() downstream with the input parameters without setting
6531 the caps on the srcpad. This will force negotiation in the chain
6532 function.
6533 Closes #350449
6535 2006-08-08 Edward Hervey <edward@fluendo.com>
6537 * gst/gstghostpad.c: (gst_ghost_pad_do_unlink):
6538 Unlinking from a pad without a target is now a perfectly valid case
6539 which should NOT raise an assertion.
6540 This case would happen if a linked ghostpad its target set to NULL after
6541 it was previously linked.
6543 2006-08-08 Edward Hervey <edward@fluendo.com>
6545 * tests/check/libs/gdp.c:
6546 Also comment out the test (see below).
6548 2006-08-08 Edward Hervey <edward@fluendo.com>
6550 * tests/check/libs/gdp.c: (gst_dp_suite):
6551 Use the architecture information from config.h and not gcc macros
6552 in order to properly disable a test that fails on PPC64.
6554 2006-08-04 Tim-Philipp Müller <tim at centricular dot net>
6556 * gst/gstelement.c: (gst_element_remove_pad):
6557 Don't crash printing the warning if the pad has no parent.
6559 2006-08-02 Wim Taymans <wim@fluendo.com>
6561 * libs/gst/dataprotocol/dataprotocol.c:
6562 (gst_dp_header_from_buffer_any), (gst_dp_packet_from_caps_any),
6563 (gst_dp_crc), (gst_dp_header_payload_length),
6564 (gst_dp_header_payload_type), (gst_dp_packet_from_event),
6565 (gst_dp_packet_from_event_1_0), (gst_dp_buffer_from_header),
6566 (gst_dp_caps_from_packet), (gst_dp_event_from_packet_0_2),
6567 (gst_dp_event_from_packet), (gst_dp_validate_header),
6568 (gst_dp_validate_payload):
6569 Make debug category static
6570 Constify the crc table.
6571 Do some more arg checking in public functions.
6572 Fix some docs and do some small cleanups.
6574 * tests/check/libs/gdp.c: (GST_START_TEST), (gst_dp_suite):
6575 Add some more checks to see if GDP deals with bogus input.
6577 2006-07-31 Wim Taymans <wim@fluendo.com>
6579 * gst/gstvalue.c: (gst_value_compare_list):
6580 Fix GstValueList comparison code. Fixes #347293.
6582 * tests/check/gst/gstvalue.c: (GST_START_TEST):
6583 Check to test GstValueList comparison.
6585 2006-07-31 Jan Schmidt <thaytan@mad.scientist.com>
6587 * gst/gstelementfactory.c: (gst_element_factory_create):
6588 Remove unnecessary ref/unref pair
6590 * gst/parse/grammar.y:
6591 Make sure to free the parse buffer on all code paths.
6592 Move a g_free up to the error handler where it's easier to see.
6594 * tests/check/gst/gstevent.c: (test_event):
6595 Extending timeout for downstream travelling events to 10 seconds to
6596 hopefully avoid intermittent failure on the buildbots.
6598 * tests/check/pipelines/parse-launch.c: (run_delayed_test):
6599 Don't manually set the state of the src element - it will happen as a
6600 natural consequence of the pipeline changing state, and that way it
6601 will do it in the right order too.
6603 2006-07-31 Wim Taymans <wim@fluendo.com>
6605 * libs/gst/base/gstbasetransform.c:
6606 (gst_base_transform_buffer_alloc):
6607 Use OBJECT_LOCK and refcounting to get the pad caps in the
6608 buffer_alloc function because the caps could change while we are
6609 busy with them. Fixes #349105
6611 2006-07-31 Wim Taymans <wim@fluendo.com>
6613 * gst/gstutils.c: (gst_pad_get_fixed_caps_func):
6614 Protect _PAD_CAPS with OBJECT_LOCK.
6616 2006-07-31 Wim Taymans <wim@fluendo.com>
6618 * gst/gstpad.c: (gst_pad_class_init), (gst_pad_dispose),
6619 (gst_pad_get_property), (gst_pad_activate_pull),
6620 (gst_pad_activate_push), (gst_pad_set_blocked_async),
6621 (gst_pad_set_activate_function),
6622 (gst_pad_set_activatepull_function),
6623 (gst_pad_set_activatepush_function), (gst_pad_set_chain_function),
6624 (gst_pad_set_getrange_function),
6625 (gst_pad_set_checkgetrange_function), (gst_pad_set_event_function),
6626 (gst_pad_set_query_function), (gst_pad_set_query_type_function),
6627 (gst_pad_set_internal_link_function), (gst_pad_set_link_function),
6628 (gst_pad_set_unlink_function), (gst_pad_set_getcaps_function),
6629 (gst_pad_set_acceptcaps_function),
6630 (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
6631 (gst_pad_set_bufferalloc_function), (gst_pad_link_check_hierarchy),
6632 (gst_pad_get_caps_unlocked), (gst_pad_get_caps),
6633 (gst_pad_peer_get_caps), (gst_pad_accept_caps),
6634 (gst_pad_peer_accept_caps), (gst_pad_set_caps),
6635 (gst_pad_configure_sink), (gst_pad_configure_src),
6636 (gst_pad_get_allowed_caps), (gst_pad_get_negotiated_caps),
6637 (gst_pad_buffer_alloc_unchecked), (gst_pad_alloc_buffer_full),
6638 (gst_pad_query), (gst_pad_load_and_link), (handle_pad_block),
6639 (gst_pad_chain_unchecked), (gst_pad_push), (gst_pad_get_range),
6640 (gst_pad_send_event):
6641 Use _DEBUG_OBJECT when it makes sense.
6642 Protect GST_PAD_CAPS with the OBJECT_LOCK.
6643 Small cleanups and code reflows.
6644 Avoid caps refcounting in _accept_caps.
6645 Refactor alloc_buffer so that the code performed on the peer is in a
6646 separate function. Also if the pad does not implement a buffer alloc
6647 function, we should still check if the pad is flushing before falling
6648 back to the default allocator.
6650 2006-07-31 Jan Schmidt <thaytan@mad.scientist.com>
6652 * tests/check/pipelines/parse-launch.c: (GST_START_TEST):
6653 Make all uses of identity and fakesink have silent=true to avoid
6654 serialising every passing data structure, which is breaking tests
6655 on FC4 for some unknown reason.
6657 2006-07-30 Stefan Kost <ensonic@users.sf.net>
6659 * gst/parse/Makefile.am:
6660 * gst/parse/grammar.y:
6661 * gst/parse/parse.l:
6662 Reverted previous patch as it required to bump the flex dependency to
6663 2.5.31, where fc4/5 seem to ship only the ancient 2.5.4a :(
6665 2006-07-30 Stefan Kost <ensonic@users.sf.net>
6667 Patch by: Marc-Andre Lureau <marcandre.lureau@gmail.com>
6669 * gst/parse/Makefile.am:
6670 * gst/parse/grammar.y:
6671 * gst/parse/parse.l:
6672 push & pop the state of the lexer for reentrant use case
6673 Fixes #349180
6675 2006-07-29 Tim-Philipp Müller <tim at centricular dot net>
6677 * libs/gst/base/gstbasesrc.h:
6678 Note in the docs that the ::newsegment vfunc is not actually used by
6679 GstBaseSrc.
6681 2006-07-28 Wim Taymans <wim@fluendo.com>
6683 * libs/gst/base/gstcollectpads.c:
6684 (gst_collect_pads_set_flushing_unlocked), (gst_collect_pads_pop),
6685 (gst_collect_pads_clear), (gst_collect_pads_flush),
6686 (gst_collect_pads_event), (gst_collect_pads_chain):
6687 When flushing a pad, also clear the queued buffer so that we don't
6688 accidentally use it when we shouldn't.
6689 Fix leaks by inreffing incomming buffer.
6690 Flush out queued buffers in case of errors.
6691 Fixes #347452.
6693 2006-07-28 Wim Taymans <wim@fluendo.com>
6695 * docs/random/phonon-gst:
6696 Random notes about a Phonon backend.
6698 2006-07-27 Jan Schmidt <thaytan@mad.scientist.com>
6700 * libs/gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
6701 Extra debug output
6702 * tests/check/libs/gdp.c: (gst_dp_suite):
6703 Take a whack at fixing the ppc compile using a different define to
6704 disable the broken test.
6706 * tests/check/pipelines/parse-launch.c: (GST_START_TEST):
6707 Remove excess g_print()
6709 2006-07-27 Jan Schmidt <thaytan@mad.scientist.com>
6711 * tests/check/pipelines/parse-launch.c: (expected_fail_pipe):
6712 Oops, meant to uncomment this line too to dampen the noise a bit.
6714 2006-07-27 Jan Schmidt <thaytan@mad.scientist.com>
6716 * gst/parse/grammar.y:
6717 * gst/parse/parse.l:
6718 * tests/check/pipelines/parse-launch.c: (expected_fail_pipe),
6719 (GST_START_TEST), (parse_suite):
6720 Fix some of the leaks exposed by extending the parse-launch testsuite,
6721 and move the 3 I can't figure out into a separate test that won't run
6722 the pipelines unless the appropriate line is uncommented.
6724 2006-07-27 Tim-Philipp Müller <tim at centricular dot net>
6726 * plugins/elements/gstfilesrc.c: (gst_file_src_create_read):
6727 Requesting 0 bytes before the end of the file should result in
6728 FLOW_OK and an empty buffer, not FLOW_UNEXPECTED. Thank you
6729 unit test.
6731 2006-07-27 Wim Taymans <wim@fluendo.com>
6733 * gst/gstcaps.c: (gst_static_caps_get), (gst_caps_get_structure):
6734 Fix useless assert, a uint is always positive.
6736 * gst/gststructure.c: (gst_structure_nth_field_name),
6737 (gst_structure_foreach), (gst_structure_map_in_place):
6738 Check input arguments for public functions to avoid obvious crashes.
6740 * plugins/elements/gstfakesink.c: (gst_fake_sink_render):
6741 * plugins/elements/gstfakesink.h:
6742 Do less useless typechecking.
6744 2006-07-27 Tim-Philipp Müller <tim at centricular dot net>
6746 * plugins/elements/gstfilesrc.c: (gst_file_src_class_init):
6747 Do not use mmap() by default since there are a number of error
6748 conditions that we would like to handle in a non-fatal way that
6749 will result in a SIGBUS if we use mmap(). Examples: external
6750 devices (USB harddrive, portable music player) being unplugged
6751 while in use; file on mounted CD/DVD that can't be read because
6752 the medium is partly damaged. Fixes #348455 and #348475.
6754 2006-07-27 Jan Schmidt <thaytan@mad.scientist.com>
6756 * gst/gstquery.h:
6757 Delete unused and misleading define of GST_QUERY_TYPE_RATE_DEN -
6758 rates are a gdouble
6760 2006-07-26 Stefan Kost <ensonic@users.sf.net>
6762 * gst/gstregistry.c:
6763 Move big documentation comment into class section header, so that it
6764 appears in the API docs.
6766 2006-07-26 Jan Schmidt <thaytan@mad.scientist.com>
6768 * docs/gst/gstreamer-sections.txt:
6769 Oops. Commit the docs additions too for new API.
6770 Also, remove the mention of the non-existent GST_QUERY_TYPE_RATE_DEN
6772 2006-07-26 Jan Schmidt <thaytan@mad.scientist.com>
6774 * gst/gststructure.c: (gst_structure_id_set),
6775 (gst_structure_id_set_valist):
6776 * gst/gststructure.h:
6777 Add API for setting values into structures without performing
6778 a quark lookup, if the appropriate quark is already known.
6780 API: gst_structure_id_set
6781 API: gst_structure_id_set_valist
6783 * gst/parse/grammar.y:
6784 * gst/parse/parse.l:
6785 Remove some dead code shown by the coverage information.
6786 Don't throw a critical g_warning when encountering a syntax error,
6787 just warn and let the normal error path handle it.
6789 * plugins/elements/gstelements.c:
6790 Bump the rank of filesink up to PRIMARY so that it is preferred over
6791 gnomevfssink for file:// sink uri's
6793 * tests/check/pipelines/parse-launch.c: (expected_fail_pipe),
6794 (GST_START_TEST), (run_delayed_test),
6795 (gst_parse_test_element_base_init),
6796 (gst_parse_test_element_class_init), (gst_parse_test_element_init),
6797 (gst_parse_test_element_change_state),
6798 (gst_register_parse_element), (parse_suite):
6799 Beef up the tests for parse syntax to check that more error cases
6800 fail as they are supposed to. Increases the test coverage a bit.
6802 2006-07-26 Tim-Philipp Müller <tim at centricular dot net>
6804 * docs/manual/basics-elements.xml:
6805 Fix gst_element_link() example.
6807 * gst/gstutils.c:
6808 Mention in API docs that one should usually gst_bin_add()
6809 elements to a bin or pipeline before doing the linking.
6811 2006-07-26 Wim Taymans <wim@fluendo.com>
6813 * gst/gstbuffer.c: (gst_buffer_get_type), (gst_buffer_new),
6814 (gst_subbuffer_get_type), (gst_buffer_create_sub):
6815 Avoid function call for known types by keeping the buffer and
6816 subbuffer GType global.
6818 * plugins/elements/gstfilesrc.c: (gst_file_src_create_read):
6819 Random silly optimisations in read() path.
6821 2006-07-26 Jan Schmidt <thaytan@mad.scientist.com>
6823 * tools/gst-launch.c: (main):
6824 If the top-level of the parse is a normal bin, it doesn't do the
6825 right logic to run as a top-level element, so place it inside a
6826 pipeline.
6828 2006-07-25 Tim-Philipp Müller <tim at centricular dot net>
6830 * plugins/elements/gstfilesrc.c: (gst_file_src_set_property):
6831 Remove superfluous g_object_notify() calls, GObject does
6832 that for us automatically.
6834 2006-07-25 Stefan Kost <ensonic@users.sf.net>
6836 * gst/gstinfo.h:
6837 on Win32, use dllspec to export the debug category symbols
6839 2006-07-24 Tim-Philipp Müller <tim at centricular dot net>
6841 * gst/gsttaglist.c: (_gst_tag_initialize):
6842 Allow more than one GST_TAG_IMAGE per taglist.
6844 2006-07-24 Thomas Vander Stichele <thomas at apestaart dot org>
6846 * gst/gstminiobject.c:
6847 update docs
6848 * plugins/elements/gstfdsrc.c: (gst_fd_src_set_property),
6849 (gst_fd_src_create):
6850 log recurring events at LOG level
6851 add more debug for when the fd gets set
6853 2006-07-21 Stefan Kost <ensonic@users.sf.net>
6855 * gst/gstparse.c: (gst_parse_launch):
6856 Also remove reentrance checks if flex is MT safe (#348179)
6857 Fix my empty ChangeLog entry below
6859 2006-07-21 Andy Wingo <wingo@pobox.com>
6861 * docs/libs/gstreamer-libs-sections.txt: Attempt to pacify buildbot.
6863 * libs/gst/check/Makefile.am
6864 (libgstcheck_@GST_MAJORMINOR@include_HEADERS)
6865 (libgstcheck_@GST_MAJORMINOR@_la_SOURCES):
6866 * libs/gst/check/gstbufferstraw.h:
6867 * libs/gst/check/gstbufferstraw.c: Add some new hype testing
6868 functions, thus proving I am still a GStreamer haxor. OK I wrote
6869 them a long time ago, but anyways.
6871 2006-07-21 Stefan Kost <ensonic@users.sf.net>
6873 * configure.ac:
6874 * gst/gstparse.c: (gst_parse_launch):
6875 Check for flex version and omit mutex if we have a MT save flex
6876 (fixes #348179)
6878 2006-07-21 Wim Taymans <wim@fluendo.com>
6880 * gst/gstparse.c: (gst_parse_launch):
6881 Protect recursive calls to _parse with a recursive mutex
6882 and busy flag.
6884 2006-07-21 Wim Taymans <wim@fluendo.com>
6886 * tests/check/gst/gstpad.c: (GST_START_TEST):
6887 Fix leak in test.
6889 2006-07-20 Stefan Kost <ensonic@users.sf.net>
6891 * gst/gstparse.c: (gst_parse_launch):
6892 Do not hang on recursive usage of gst_parse_launch()
6894 2006-07-20 Tim-Philipp Müller <tim at centricular dot net>
6896 * gst/gsttaglist.c:
6897 Add some more docs, comments and FIXME 0.11s here and there
6898 and also fix some typos.
6900 2006-07-20 Tim-Philipp Müller <tim at centricular dot net>
6902 * gst/gstsegment.h:
6903 Convert tabs to spaces for better readability.
6905 2006-07-20 Edward Hervey <edward@fluendo.com>
6907 * tests/check/libs/gdp.c: (gst_dp_suite):
6908 the test_buffer test fails at line 140 on ppc64 at the following
6909 check:
6910 fail_unless (GST_BUFFER_FLAG_IS_SET (newbuffer,
6911 GST_BUFFER_FLAG_IN_CAPS),
6912 "GST_BUFFER_IN_CAPS flag should have been copied !");
6913 See bug #348114 for more details.
6915 2006-07-19 Tim-Philipp Müller <tim at centricular dot net>
6917 * docs/pwg/advanced-scheduling.xml:
6918 * gst/gstpad.c:
6919 Fix typos (#348000).
6921 2006-07-18 Tim-Philipp Müller <tim at centricular dot net>
6923 * docs/pwg/intro-basics.xml:
6924 Fix wrong links (#347927).
6926 2006-07-18 Stefan Kost <ensonic@users.sf.net>
6928 * gst/gstregistry.h:
6929 * gst/gstregistryxml.c: (load_feature),
6930 (gst_registry_xml_read_cache), (gst_registry_xml_save_feature):
6931 * win32/common/config.h:
6932 make --disable-index work (#342564)
6934 2006-07-18 Wim Taymans <wim@fluendo.com>
6936 Patch by: Peter Kjellerstedt <pkj at axis dot com>
6938 * gst/Makefile.am:
6939 * gst/gsttrace.h:
6940 The attached patch adds two missing defines to gsttrace.h when tracing
6941 is disabled. It also corrects one existing define.
6942 Fixes #347756.
6944 2006-07-17 Wim Taymans <wim@fluendo.com>
6946 * docs/gst/gstreamer-sections.txt:
6947 * gst/gst.c: (gst_segtrap_is_enabled), (gst_segtrap_set_enabled):
6948 * gst/gst.h:
6949 * gst/gstplugin.c: (_gst_plugin_fault_handler_restore):
6950 Add two functions to check and change the SIGSEGV behaviour
6951 when loading plugins.
6952 Don't mess with the SIGSEGV handler when we were told not to.
6953 Fixes #347794.
6954 API: gst_segtrap_is_enabled
6955 API: gst_segtrap_set_enabled
6957 2006-07-14 Wim Taymans <wim@fluendo.com>
6959 * libs/gst/base/gstbasesrc.c: (gst_base_src_update_length):
6960 * tests/check/elements/filesrc.c: (GST_START_TEST):
6961 Revert fix for regression in #347408 after release.
6963 2006-07-14 Tim-Philipp Müller <tim at centricular dot net>
6965 Patch by: Antoine Tremblay <hexa00 at gmail com>
6967 * gst/gstutils.c: (gst_element_unlink):
6968 Free iterator when done (#347311).
6970 * tests/check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
6971 And add a test case for this.
6973 2006-07-14 Jan Schmidt <thaytan@mad.scientist.com>
6975 * configure.ac:
6976 Bump nano back to CVS
6978 === release 0.10.9 ===
6980 2006-07-13 Jan Schmidt <thaytan@mad.scientist.com>
6982 * configure.ac:
6983 releasing 0.10.9, "On the road again"
6985 2006-07-13 Wim Taymans <wim@fluendo.com>
6987 * libs/gst/base/gstbasesrc.c: (gst_base_src_update_length):
6988 * tests/check/elements/filesrc.c: (GST_START_TEST):
6989 Revert pull-0 fix for release. Disable check. Fixes #347408.
6991 2006-07-13 Thomas Vander Stichele <thomas at apestaart dot org>
6993 * libs/gst/dataprotocol/dataprotocol.c:
6994 (gst_dp_event_from_packet_1_0):
6995 Fixes #347337: failure to deserialize event packets with
6996 empty payload (only event type)
6998 2006-07-13 Thomas Vander Stichele <thomas at apestaart dot org>
7000 * gst/Makefile.am:
7001 do not install a .c file in the header directory
7003 2006-07-13 Edward Hervey <edward@fluendo.com>
7005 * gst/gstghostpad.c: (gst_proxy_pad_set_target_unlocked):
7006 GhostPad no longer implicitely use the padtemplates of the targets.
7007 Fixes #347384
7009 2006-07-11 Jan Schmidt <thaytan@mad.scientist.com>
7011 * gst/gstvalue.c: (gst_value_compare_list),
7012 (gst_value_compare_array), (_gst_value_initialize):
7013 * tests/check/gst/gstvalue.c: (GST_START_TEST):
7014 Make GstValueArray comparison be order dependent as designed.
7015 Add checks for value lists and value array comparisons.
7016 Fixes #347221
7018 2006-07-11 Edward Hervey <edward@fluendo.com>
7020 * gst/gstbin.c: (activate_pads),
7021 (iterator_activate_fold_with_resync), (gst_bin_src_pads_activate),
7022 (gst_bin_change_state_func):
7023 (de)activate src pads before calling state_change on the childs.
7024 This is to avoid the case where a src ghostpad is blocked (holding the
7025 stream lock), which would block the deactivation of the ghostpad's
7026 target pad.
7027 * gst/gstghostpad.c: (gst_proxy_pad_do_query_type),
7028 (gst_proxy_pad_do_event), (gst_proxy_pad_do_query),
7029 (gst_proxy_pad_do_internal_link), (gst_proxy_pad_do_bufferalloc),
7030 (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange),
7031 (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_getcaps),
7032 (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
7033 (gst_proxy_pad_do_setcaps), (gst_proxy_pad_set_target_unlocked),
7034 (gst_proxy_pad_set_target), (gst_proxy_pad_get_internal),
7035 (gst_proxy_pad_dispose), (gst_proxy_pad_init),
7036 (gst_ghost_pad_parent_set), (gst_ghost_pad_parent_unset),
7037 (gst_ghost_pad_class_init),
7038 (gst_ghost_pad_internal_do_activate_push),
7039 (gst_ghost_pad_internal_do_activate_pull),
7040 (gst_ghost_pad_do_activate_push), (gst_ghost_pad_do_activate_pull),
7041 (gst_ghost_pad_do_link), (gst_ghost_pad_do_unlink),
7042 (gst_ghost_pad_dispose), (gst_ghost_pad_new_no_target),
7043 (gst_ghost_pad_new), (gst_ghost_pad_set_target):
7044 GhostPads now create their internal GstProxyPad at creation (and not
7045 when they're linked, as it was being done previously).
7046 The internal and target pads are linked straight away.
7047 The data will also travel through the other pad in order to make
7048 pad blocking and probes non-hackish (the probe/block now really happens
7049 on the GhostPad and not on the target).
7050 * gst/gstpad.c: (gst_pad_set_blocked_async),
7051 (gst_pad_link_prepare), (gst_pad_push_event):
7052 Remove previous ghostpad cruft.
7053 * gst/gstutils.c: (gst_pad_add_data_probe),
7054 (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
7055 (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
7056 (gst_pad_remove_buffer_probe):
7057 Remove previous ghost pad cruft.
7058 Added more detailed debug statements.
7059 * tests/check/gst/gstghostpad.c: (GST_START_TEST):
7060 Fix the testsuite for refcounting changes.
7061 The comments about who has references were correct, but the refcount
7062 being checked wasn't the same (!?!).
7064 Fixes #341029
7066 2006-07-10 Stefan Kost <ensonic@users.sf.net>
7068 * docs/gst/gstreamer-sections.txt:
7069 * gst/gstconfig.h.in:
7070 More docs for configuration options, add docs to gtk-doc.
7072 2006-07-10 Stefan Kost <ensonic@users.sf.net>
7074 * gst/Makefile.am:
7075 * gst/gstconfig.h.in:
7076 * win32/common/config.h:
7077 Fix build when disabling tracing (fixes #344016). Also start to document
7078 the defines that disable the sub-systems.
7080 2006-07-10 Edward Hervey <edward@fluendo.com>
7082 * gst/gst.c: (ensure_current_registry_forking):
7083 let's make valgrind happy...
7085 2006-07-09 Wim Taymans <wim@fluendo.com>
7087 * gst/gstelement.c: (activate_pads),
7088 (iterator_activate_fold_with_resync), (gst_element_pads_activate):
7089 Better pad activation code: Reset the collect value too on resync.
7090 Add some comments.
7092 2006-07-09 Wim Taymans <wim@fluendo.com>
7094 * gst/gstpad.c: (gst_pad_init), (gst_pad_activate_pull),
7095 (gst_pad_activate_push):
7096 Use some more macros where it makes sense.
7097 Allow pad mode switching instead of asserting. When a pad
7098 is activated in one mode and we activate it in another,
7099 deactivate it first before activating it in a different mode.
7100 Fixes #329198.
7102 2006-07-08 Andy Wingo <wingo@pobox.com>
7104 * tools/gst-launch.c (main): Handle err == NULL.
7106 * gst/gst.c (init_post, ensure_current_registry)
7107 (ensure_current_registry_forking)
7108 (ensure_current_registry_nonforking): Reduce #ifdef ratnest by
7109 factoring out the registry scanning into separate functions. Don't
7110 fork for the rescan is GST_REGISTRY_FORK=no; useful in debugging.
7111 Better environment var name/interface suggestions accepted.
7113 2006-07-07 Tim-Philipp Müller <tim at centricular dot net>
7115 * gst/gstobject.c: (gst_object_set_name_default),
7116 (gst_object_set_name):
7117 Random micro-optimisation: don't use a hash table
7118 with strings as keys and the usual strdup/strcmp
7119 involved, but rather just use the GQuark of the
7120 type name as key, since it needs to be looked up
7121 anyway to get the type name string.
7123 * tests/check/gst/gstobject.c: (GST_START_TEST):
7124 Fix various leaks.
7126 2006-07-07 Tim-Philipp Müller <tim at centricular dot net>
7128 * gst/gstbin.c: (compare_interface), (gst_bin_get_by_interface),
7129 (gst_bin_iterate_all_by_interface):
7130 Can't use GPOINTER_TO_INT and GINT_TO_POINTER with GTypes.
7131 GTypes are gulongs and thus the top 4 bytes might be cut
7132 off on some platforms when doing GPOINTER_TO_INT, leading
7133 to invalid GTypes and bad things happening (see RH bug #179654).
7134 Also add a check to make sure the type passed in is really
7135 an interface type.
7137 2006-07-07 Tim-Philipp Müller <tim at centricular dot net>
7139 * .cvsignore:
7140 Ignore more.
7142 2006-07-07 Tim-Philipp Müller <tim at centricular dot net>
7144 * Makefile.am:
7145 * configure.ac:
7146 * gst-element-check.m4:
7147 * gst-element-check.m4.in:
7148 Make gst-element-check-$VERSION.m4 call gst-inspect-$VERSION
7149 instead of the unversioned gst-inspect (#324176, #168659).
7151 2006-07-06 Wim Taymans <wim@fluendo.com>
7153 * gst/gstmessage.h:
7154 Use a valid int for the _MESSAGE_ANY enum value to avoid compiler
7155 warnings.
7157 2006-07-06 Wim Taymans <wim@fluendo.com>
7159 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
7160 (gst_base_src_wait), (gst_base_src_update_length),
7161 (gst_base_src_get_range), (gst_base_src_default_check_get_range),
7162 (gst_base_src_check_get_range), (gst_base_src_pad_check_get_range),
7163 (gst_base_src_loop), (gst_base_src_start),
7164 (gst_base_src_activate_pull):
7165 Update docs.
7166 blocksize == 0 now means the default blocksize when working in push
7167 based mode.
7168 Remove some pointless asserts in _wait function.
7169 Fix offset/length calculations and EOS handling. We can now pull 0
7170 bytes as well, which is allowed.
7171 use _check_get_range() to decide if we can operate in _pull based
7172 mode.
7173 Fix refcounting leak when check_get_range function was not
7174 implemented.
7175 API GstBaseSrc::blocksize range can be 0 too now (default)
7177 * tests/check/elements/filesrc.c: (GST_START_TEST),
7178 (filesrc_suite):
7179 Added check to test _get_range() behaviour.
7181 2006-07-06 Wim Taymans <wim@fluendo.com>
7183 * gst/gstpad.c: (gst_pad_chain_unchecked), (gst_pad_chain),
7184 (gst_pad_push), (gst_pad_check_pull_range), (gst_pad_get_range),
7185 (gst_pad_pull_range):
7186 * gst/gstpad.h:
7187 Lots of comments and docs added to the pad functions.
7188 Flesh out the expected behaviour of the get_range() functions.
7190 2006-07-06 Wim Taymans <wim@fluendo.com>
7192 * gst/gstbus.h:
7193 * gst/gstclock.h:
7194 * gst/gstevent.h:
7195 * gst/gstiterator.h:
7196 * gst/gstpad.h:
7197 * gst/gstplugin.h:
7198 * gst/gsttask.h:
7199 Remove comma at end of enumerator list.
7201 2006-07-05 Sebastien Moutte <sebastien@moutte.net>
7203 * win32/common/libgstbase.def:
7204 * win32/common/libgstdataprotocol.def:
7205 * win32/common/libsgtreamer.def:
7206 Add new exported functions.
7208 2006-07-05 Wim Taymans <wim@fluendo.com>
7210 * libs/gst/base/gstpushsrc.c: (gst_push_src_check_get_range):
7211 Add some more docs here and there.
7213 2006-07-05 Wim Taymans <wim@fluendo.com>
7215 * libs/gst/base/gstbasesink.c: (gst_base_sink_preroll_object),
7216 (gst_base_sink_loop), (gst_base_sink_get_position):
7217 When operating in pull mode update the offset so that we
7218 read sequentially.
7220 2006-07-05 Wim Taymans <wim@fluendo.com>
7222 * gst/gstregistryxml.c: (read_string):
7223 Avoid strdup. (will happen in libxml, but hey!)
7225 * gst/gsturi.c:
7226 Add some more docs.
7228 2006-07-05 Wim Taymans <wim@fluendo.com>
7230 * gst/gstbuffer.c: (_gst_buffer_copy), (gst_buffer_create_sub):
7231 * tests/check/gst/gstbuffer.c: (GST_START_TEST),
7232 (gst_buffer_suite):
7233 No point in checking if the size of the subbuffer > 0, the
7234 code handles it correclty as demonstrated by unit test.
7235 Also add a unit test for the zero sized _new_and_alloc and
7236 _copy. Fixes #346663.
7238 2006-07-05 Wim Taymans <wim@fluendo.com>
7240 * libs/gst/base/gstbasetransform.c:
7241 (gst_base_transform_prepare_output_buffer),
7242 (gst_base_transform_buffer_alloc),
7243 (gst_base_transform_handle_buffer):
7244 Make sure the buffer we pass to transform_ip has a refcount of
7245 1 and thus is writable. Fixes #343196
7247 2006-07-04 Jan Schmidt <thaytan@mad.scientist.com>
7249 * plugins/elements/gstfilesrc.c: (gst_file_src_class_init),
7250 (gst_file_src_init), (gst_file_src_set_property),
7251 (gst_file_src_get_property), (gst_file_src_map_region):
7252 * plugins/elements/gstfilesrc.h:
7253 Add "sequential" property, off by default, to use madvise and hint
7254 to the kernel that sequential access is desired.
7255 Touch all retrieved pages by default to ensure they are pulled
7256 into memory. (Closes #345720)
7258 2006-07-03 Wim Taymans <wim@fluendo.com>
7260 * docs/design/part-block.txt:
7261 * docs/design/part-dynamic.txt:
7262 Small docs updates.
7264 2006-07-03 Wim Taymans <wim@fluendo.com>
7266 * gst/gstcaps.c: (gst_caps_new_empty), (_gst_caps_free),
7267 (gst_caps_unref), (gst_static_caps_get),
7268 (gst_caps_append_structure):
7269 * gst/gstclock.c: (gst_clock_entry_new), (_gst_clock_id_free):
7270 Use GSlice when the glib we build against is >= 2.10
7272 2006-07-03 Wim Taymans <wim@fluendo.com>
7274 * gst/gstelement.c: (gst_element_pads_activate):
7275 Small cleanup in pad activation code.
7277 2006-07-03 Wim Taymans <wim@fluendo.com>
7279 Patch by: Peter Kjellerstedt <pkj at axis dot com>
7281 * gst/gst-i18n-app.h:
7282 * gst/gst-i18n-lib.h:
7283 * tools/gst-inspect.c: (print_signal_info):
7284 The attached patch will make the inclusion of gettext.h unconditional in
7285 gst/gst-i18n-app.h and gst/gst-i18n-lib.h, and it will remove the inclusion of
7286 libintl.h in tools/gst-inspect.c.
7287 This allows use of --disable-nls again and fixes #344642.
7289 2006-07-03 Edward Hervey <edward@fluendo.com>
7291 * gst/gstpad.c: (handle_pad_block), (gst_pad_push_event):
7292 Implement pad blocking on events according to part-block.txt.
7293 More comments on behaviour.
7294 * tests/check/gst/gstevent.c: (test_event):
7295 Send event to peer pad of blocked pad (else it will block).
7297 2006-07-03 Thomas Vander Stichele <thomas at apestaart dot org>
7299 * libs/gst/check/gstcheck.c: (gst_check_message_error),
7300 (gst_check_run_suite):
7301 if we get the wrong message, give us the types as string
7302 * plugins/elements/gstfilesrc.c: (gst_file_src_start):
7303 Fix a translatable
7304 * tests/check/elements/filesrc.c: (GST_START_TEST):
7305 add a test for trying to open a non-existing file
7307 2006-07-03 Thomas Vander Stichele <thomas at apestaart dot org>
7309 * tests/check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
7310 add a test for adding self
7312 2006-07-03 Thomas Vander Stichele <thomas at apestaart dot org>
7314 * libs/gst/check/gstcheck.h:
7315 add some assert_ as alias for fail_unless_*
7316 * tests/check/gst/gst.c: (GST_START_TEST), (gst_suite):
7317 increase test coverage
7319 2006-07-02 Thomas Vander Stichele <thomas at apestaart dot org>
7321 * Makefile.am:
7322 include lcov.mak for lcov coverage generation
7323 * tools/Makefile.am:
7324 add to CLEANFILES
7326 2006-07-02 Edward Hervey <edward@fluendo.com>
7328 * tests/check/elements/.cvsignore:
7329 moaping
7331 2006-07-02 Thomas Vander Stichele <thomas at apestaart dot org>
7333 * configure.ac:
7334 don't set CFLAGS and friends for gcov, done from GST_GCOV now
7335 * tests/check/Makefile.am:
7336 clean up gcov files
7338 2006-07-02 Thomas Vander Stichele <thomas at apestaart dot org>
7340 * gst/gstcaps.c: (gst_caps_remove_and_get_structure):
7341 remove gst_caps_simplify; it was not declared and not used
7342 and deprecated in 0.8
7344 2006-07-02 Thomas Vander Stichele <thomas at apestaart dot org>
7346 * docs/faq/gst-uninstalled:
7347 don't put empty paths on PYTHONPATH
7348 * docs/gst/gstreamer-sections.txt:
7349 remove some symbols that are not there
7351 2006-07-02 Thomas Vander Stichele <thomas at apestaart dot org>
7353 * gst/gstcaps.c: (gst_caps_compare_structures):
7354 whitespace fixes
7355 * tests/check/gst/gstbuffer.c: (GST_START_TEST):
7356 * tests/check/gst/gstcaps.c: (GST_START_TEST), (gst_caps_suite):
7357 add more tests
7359 2006-07-02 Thomas Vander Stichele <thomas at apestaart dot org>
7361 * libs/gst/dataprotocol/Makefile.am:
7362 build dataprotocol test by linking to the lib, instead of
7363 compiling the source, so we get coverage
7364 * tests/check/Makefile.am:
7365 * tests/check/elements/filesrc.c: (event_func), (setup_filesrc),
7366 (cleanup_filesrc), (GST_START_TEST), (filesrc_suite):
7367 add a test for filesrc
7369 2006-07-02 Thomas Vander Stichele <thomas at apestaart dot org>
7371 * tests/check/gst/gststructure.c: (GST_START_TEST),
7372 (gst_structure_suite):
7373 Push coverage from 59.04% to 70.00%
7375 2006-07-02 Thomas Vander Stichele <thomas at apestaart dot org>
7377 * tests/check/Makefile.am:
7378 gst-inspect every element; this makes sure that we also get
7379 coverage on element's get/set functions
7381 2006-07-02 Thomas Vander Stichele <thomas at apestaart dot org>
7383 * configure.ac:
7384 set CFLAGS and friends to -O0 if gcov is being used
7385 add GCOV LIBS
7386 * gst/Makefile.am:
7387 * libs/gst/base/Makefile.am:
7388 * libs/gst/check/Makefile.am:
7389 * libs/gst/controller/Makefile.am:
7390 * libs/gst/dataprotocol/Makefile.am:
7391 * libs/gst/net/Makefile.am:
7392 * plugins/elements/Makefile.am:
7393 * plugins/indexers/Makefile.am:
7394 add makefile rules to generate gcov data and clean up
7395 * tests/check/Makefile.am:
7396 add a coverage target that generates an html overview
7397 of coverage data
7399 2006-07-01 Thomas Vander Stichele <thomas at apestaart dot org>
7401 * tests/check/elements/fakesink.c:
7402 * tests/check/elements/fakesrc.c:
7403 * tests/check/elements/fdsrc.c:
7404 * tests/check/elements/identity.c:
7405 * tests/check/generic/sinks.c: (gst_sinks_suite):
7406 * tests/check/generic/states.c:
7407 * tests/check/gst/gst.c:
7408 * tests/check/gst/gstabi.c:
7409 * tests/check/gst/gstbin.c:
7410 * tests/check/gst/gstbuffer.c: (gst_buffer_suite):
7411 * tests/check/gst/gstbus.c: (gst_bus_suite):
7412 * tests/check/gst/gstcaps.c: (GST_START_TEST):
7413 * tests/check/gst/gstelement.c:
7414 * tests/check/gst/gstevent.c: (gst_event_suite):
7415 * tests/check/gst/gstghostpad.c:
7416 * tests/check/gst/gstiterator.c: (gst_iterator_suite):
7417 * tests/check/gst/gstmessage.c: (gst_message_suite):
7418 * tests/check/gst/gstminiobject.c:
7419 * tests/check/gst/gstobject.c:
7420 * tests/check/gst/gstpad.c:
7421 * tests/check/gst/gstpipeline.c:
7422 * tests/check/gst/gstplugin.c:
7423 * tests/check/gst/gstquery.c: (gst_query_suite):
7424 * tests/check/gst/gstsegment.c: (gst_segment_suite):
7425 * tests/check/gst/gststructure.c:
7426 * tests/check/gst/gstsystemclock.c:
7427 * tests/check/gst/gsttag.c:
7428 * tests/check/gst/gsttask.c: (gst_task_suite):
7429 * tests/check/gst/gstutils.c:
7430 * tests/check/gst/gstvalue.c:
7431 * tests/check/libs/adapter.c:
7432 * tests/check/libs/basesrc.c:
7433 * tests/check/libs/collectpads.c:
7434 * tests/check/libs/controller.c:
7435 * tests/check/libs/gdp.c: (gst_dp_suite):
7436 * tests/check/libs/gstnetclientclock.c:
7437 * tests/check/libs/gstnettimeprovider.c:
7438 * tests/check/libs/libsabi.c: (libsabi_suite):
7439 * tests/check/libs/typefindhelper.c:
7440 * tests/check/pipelines/cleanup.c:
7441 * tests/check/pipelines/parse-launch.c:
7442 * tests/check/pipelines/simple-launch-lines.c:
7443 * tests/check/pipelines/stress.c: (stress_suite):
7444 use the new macro
7446 2006-07-01 Thomas Vander Stichele <thomas at apestaart dot org>
7448 * libs/gst/check/gstcheck.c: (gst_check_run_suite):
7449 * libs/gst/check/gstcheck.h:
7450 create a macro and function so that the simple unit test
7451 case can be just one macro to create main()
7453 2006-06-30 Tim-Philipp Müller <tim at centricular dot net>
7455 * gst/gstbin.c: (gst_bin_restore_thyself):
7456 * gst/gstxml.c: (gst_xml_make_element):
7457 Fix deserialisation from XML. Set parent manually
7458 instead of using gst_bin_add(), since gst_bin_add()
7459 will unlink all pads of the element being added.
7460 Fixes #341667.
7462 2006-06-28 Tim-Philipp Müller <tim at centricular dot net>
7464 Patch by: Peter Kjellerstedt <pkj at axis com>
7466 * gst/gst.c: (prepare_for_load_plugin_func), (split_and_iterate):
7467 Fix missing g_strdup() and double free when using the
7468 --gst-plugin-load command line option (#346097).
7470 2006-06-23 Tim-Philipp Müller <tim at centricular dot net>
7472 * gst/gstinfo.c:
7473 Promote GST_DEBUG_CATEGORY_STATIC in example in docs.
7475 * libs/gst/net/gstnetclientclock.c:
7476 * libs/gst/net/gstnettimeprovider.c:
7477 Use GST_DEBUG_CATEGORY_STATIC here too (#342503).
7479 2006-06-23 Tim-Philipp Müller <tim at centricular dot net>
7481 * docs/manual/advanced-dataaccess.xml:
7482 Fix buffer probe example compilation in
7483 ADM (#345708).
7485 2006-06-22 Edward Hervey <edward@fluendo.com>
7487 * gst/gstelement.c: (gst_element_pads_activate):
7488 We need to deactivate src pads first and then sink pads.
7489 The reason is the src pads might be blocking while holding the streaming
7490 lock, so we need to deactivate them first so that deactivating the sink
7491 pads doesn't block (since it will require the streaming lock).
7493 2006-06-22 Wim Taymans <wim@fluendo.com>
7495 * libs/gst/base/gstbasetransform.c:
7496 (gst_base_transform_buffer_alloc):
7497 Forgot to remove two unneeded unrefs.
7498 Simplify a check _is_equal allready checks the obvious case.
7500 2006-06-22 Wim Taymans <wim@fluendo.com>
7502 * docs/design/part-block.txt:
7503 Some docs about what pad_block should do.
7505 2006-06-22 Wim Taymans <wim@fluendo.com>
7507 * gst/gstcaps.c: (gst_caps_replace):
7508 Fix crasher when passed NULL. Doc clarification.
7509 Optimize for the trivial case.
7511 * gst/gstpipeline.c: (gst_pipeline_change_state):
7512 Small cleanups.
7514 * libs/gst/base/gstbasesrc.c: (gst_base_src_loop):
7515 Small documentation cleanup.
7517 * libs/gst/base/gstbasetransform.c:
7518 (gst_base_transform_buffer_alloc):
7519 Don't use silly gst_pad_get_negotiated_caps, GST_PAD_CAPS
7520 is what we need and it avoids a whole lot of redundant
7521 refcount operations.
7523 2006-06-22 Tim-Philipp Müller <tim at centricular dot net>
7525 Patch by: Philip Jägenstedt <philip at lysator liu se>
7527 * docs/manual/advanced-dataaccess.xml:
7528 Fix 'Embedding static elements' section to use
7529 GST_PLUGIN_DEFINE_STATIC (#345607).
7531 2006-06-21 Tim-Philipp Müller <tim at centricular dot net>
7533 * tests/check/pipelines/simple-launch-lines.c: (test_stop_from_app):
7534 Attempt to 'fix' spuriously failing test case: it seems like the
7535 timeout of half a second is simply too small when the system is under
7536 load otherwise, and the timeout doesn't really seem to serve any
7537 particular purpose here. Give the pipeline a few seconds to preroll
7538 first, and then give it another half a second to go from PAUSED to
7539 PLAYING and marshal the message into the main thread.
7541 2006-06-21 Tim-Philipp Müller <tim at centricular dot net>
7543 * tools/gst-feedback-m.m:
7544 Don't only use unversioned tools, try versioned tools as well
7545 (#345086).
7547 2006-06-21 Tim-Philipp Müller <tim at centricular dot net>
7549 * gst/gstbus.c: (gst_bus_class_init):
7550 Fix some typos, make docs more explicit.
7552 2006-06-20 Wim Taymans <wim@fluendo.com>
7554 * tests/check/gst/gstghostpad.c: (block_callback),
7555 (GST_START_TEST), (gst_ghost_pad_suite):
7556 Added some more ghostpad tests, mainly blocking
7557 and probes.
7559 2006-06-16 Wim Taymans <wim@fluendo.com>
7561 * plugins/elements/gstfilesink.c: (gst_file_sink_open_file),
7562 (gst_file_sink_close_file), (gst_file_sink_do_seek),
7563 (gst_file_sink_event), (gst_file_sink_render):
7564 * plugins/elements/gstfilesink.h:
7565 Check if we can seek in the file instead of assuming
7566 we always can. Post an error when we are asked to seek in a
7567 non-seekable file (like a fifo). Fixes #343312.
7568 Some cleanups.
7570 2006-06-16 Tim-Philipp Müller <tim at centricular dot net>
7572 * tools/gst-launch.1.in:
7573 Un-garble (fourcc) bit in filtered caps section.
7575 2006-06-16 Tim-Philipp Müller <tim at centricular dot net>
7577 * docs/manual/advanced-autoplugging.xml:
7578 * docs/manual/basics-helloworld.xml:
7579 * docs/manual/highlevel-components.xml:
7580 Don't leak bus reference in sample code.
7582 2006-06-15 Tim-Philipp Müller <tim at centricular dot net>
7584 * autogen.sh:
7585 Add default for new --enable-plugin-docs switch.
7587 * configure.ac:
7588 Use new GST_PLUGIN_DOCS macro to check for pyxml etc.
7589 Fixes #344039.
7591 * docs/Makefile.am:
7592 Use new ENABLE_PLUGIN_DOCS conditional.
7594 2006-06-14 Wim Taymans <wim@fluendo.com>
7596 * gst/gstbin.c: (bin_query_duration_done), (gst_bin_query):
7597 Make it clear with a FIXME and a real define what the #if 0
7598 previously disabled.
7600 2006-06-14 Wim Taymans <wim@fluendo.com>
7602 * libs/gst/base/gstbasesink.c: (gst_base_sink_configure_segment),
7603 (gst_base_sink_preroll_object), (gst_base_sink_get_position):
7604 * libs/gst/base/gstbasetransform.c:
7605 (gst_base_transform_sink_eventfunc):
7606 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_event):
7607 Don't randomly and silently reset a segment when the format
7608 changes as this is a bug somewhere upstream. Fixes #330379.
7610 2006-06-14 Tim-Philipp Müller <tim at centricular dot net>
7612 Patch by: Wouter Paesen <wouter at kangaroot net>
7614 * libs/gst/controller/gstcontroller.c:
7615 (gst_controlled_property_new):
7616 Fix controlling of float properties (#344849).
7618 * tests/check/libs/controller.c:
7619 (gst_test_mono_source_get_property),
7620 (gst_test_mono_source_set_property),
7621 (gst_test_mono_source_class_init), (GST_START_TEST):
7622 While we're at it, add some float stuff to unit test.
7624 2006-06-13 Thomas Vander Stichele <thomas at apestaart dot org>
7626 * docs/README:
7627 * docs/images/gdp-header.svg:
7628 add a gdp image
7629 * docs/libs/Makefile.am:
7630 * docs/libs/gdp-header.png:
7631 * libs/gst/dataprotocol/dataprotocol.c:
7632 add it to the API docs
7633 * docs/manual/intro-motivation.xml:
7634 fix typo
7636 2006-06-13 Tim-Philipp Müller <tim at centricular dot net>
7638 * gst/gst.c: (scan_and_update_registry), (init_post):
7639 If the fork()'ed child process can't write the updated registry cache
7640 file to disk for some reason, make it exit with a failure exit code,
7641 so that the parent can then re-scan the plugins itself and update the
7642 registry structures in memory and work with that (rather than failing
7643 when creating elements because seemingly no plugins are available).
7644 Refactor registry scanning code into separate function for this and
7645 also separate fork() and non-fork() code paths. Fixes #344748.
7647 2006-06-13 Wim Taymans <wim@fluendo.com>
7649 * docs/manual/advanced-dataaccess.xml:
7650 Fix wrong PluginDesc. Fixes #344755.
7652 2006-06-13 Tim-Philipp Müller <tim at centricular dot net>
7654 * gst/gstregistryxml.c: (gst_registry_xml_write_cache):
7655 Fix silly bug that prevented us from creating
7656 ~/.gstreamer-0.10 and writing the registry in one
7657 go (the first call to g_mkstemp() would overwrite the
7658 placeholder in the template string, so the second call
7659 to g_mkstemp() after creating the missing directory
7660 would then error out with 'invalid argument').
7662 2006-06-13 Edward Hervey <edward@fluendo.com>
7664 * gst/gst.c: (init_post):
7665 Free string.
7667 2006-06-13 Thomas Vander Stichele <thomas at apestaart dot org>
7669 * gst/glib-compat-private.h:
7670 * gst/glib-compat.c:
7671 * gst/glib-compat.h:
7672 * gst/gstvalue.c: (gst_value_serialize_flags):
7673 remove GLib 2.6 compatibility code
7675 2006-06-12 Tim-Philipp Müller <tim at centricular dot net>
7677 * gst/parse/Makefile.am:
7678 Fix build with 'make -j N' even more (#340016).
7680 2006-06-12 Wim Taymans <wim@fluendo.com>
7682 * docs/gst/gstreamer-sections.txt:
7683 Fix docs.
7685 2006-06-12 Wim Taymans <wim@fluendo.com>
7687 * gst/gstsegment.c: (gst_segment_set_duration),
7688 (gst_segment_set_last_stop), (gst_segment_set_seek),
7689 (gst_segment_set_newsegment_full), (gst_segment_to_stream_time),
7690 (gst_segment_to_running_time), (gst_segment_clip):
7691 Use G_UNLIKELY to help the compiler a bit.
7693 2006-06-12 Wim Taymans <wim@fluendo.com>
7695 Patch by: Stefan Kost <ensonic at sonicpulse dot de>
7697 * gst/gstevent.c: (gst_event_get_type):
7698 * gst/gstmessage.c:
7699 * gst/gstpad.c: (gst_pad_chain_unchecked), (gst_pad_chain),
7700 (gst_pad_push):
7701 constify quark registration strings. Fixes #344115
7702 Avoid unneeded type checking is _pad_push() by internally
7703 calling gst_pad_chain_unchecked().
7705 2006-06-12 Wim Taymans <wim@fluendo.com>
7707 * gst/gstbuffer.c: (gst_buffer_get_type), (gst_buffer_finalize),
7708 (_gst_buffer_copy), (gst_buffer_is_metadata_writable),
7709 (gst_subbuffer_finalize), (gst_buffer_create_sub),
7710 (gst_buffer_is_span_fast), (gst_buffer_span):
7711 Init _type for consistency.
7712 Use _FLAGS macro to avoid type check.
7713 Avoid unneeded type checks in subbufer code.
7715 2006-06-12 Wim Taymans <wim@fluendo.com>
7717 * gst/gst.c: (gst_debug_help):
7718 * gst/gstplugin.c: (gst_plugin_finalize), (gst_plugin_list_free):
7719 * gst/gstpluginfeature.c: (gst_plugin_feature_finalize),
7720 (gst_plugin_feature_list_free):
7721 * gst/gstregistry.c: (gst_registry_add_plugin),
7722 (gst_registry_add_feature), (gst_registry_plugin_filter),
7723 (gst_registry_feature_filter), (gst_registry_find_plugin),
7724 (gst_registry_find_feature), (gst_registry_get_plugin_list),
7725 (gst_registry_lookup_feature_locked), (gst_registry_lookup_locked):
7726 * gst/gstregistryxml.c: (load_feature),
7727 (gst_registry_xml_read_cache), (gst_registry_xml_write_cache):
7728 * gst/gstminiobject.c: (gst_mini_object_unref),
7729 (gst_mini_object_replace), (gst_value_mini_object_free),
7730 (gst_value_mini_object_copy):
7731 Use _CAST macros to avoid unneeded type checking.
7732 Added some more G_UNLIKELY.
7734 2006-06-12 Wim Taymans <wim@fluendo.com>
7736 * gst/gstbuffer.h:
7737 Avoid unneeded type checking.
7738 API: GST_BUFFER_IS_DISCONT
7740 * gst/gstminiobject.h:
7741 Avoid type check in flag accessor.
7743 * gst/gstelementfactory.h:
7744 * gst/gstplugin.h:
7745 * gst/gstpluginfeature.h:
7746 Add _CAST macros.
7747 API: GST_ELEMENT_FACTORY_CAST
7748 API: GST_PLUGIN_CAST
7749 API: GST_PLUGIN_FEATURE_CAST
7751 2006-06-12 Wim Taymans <wim@fluendo.com>
7753 * gst/gstobject.c: (gst_object_get_type), (gst_object_ref),
7754 (gst_object_unref):
7755 Add G_UNLIKELY in type registration.
7756 Avoid type check in _ref/_unref since that is also
7757 done in glib.
7759 2006-06-12 Wim Taymans <wim@fluendo.com>
7761 * gst/gsterror.c: (gst_g_error_get_type):
7762 * gst/gstpadtemplate.c: (gst_pad_template_get_type),
7763 (gst_static_pad_template_get_type):
7764 * gst/gsttaglist.c: (gst_tag_list_get_type):
7765 * gst/gsttagsetter.c: (gst_tag_setter_get_type):
7766 * gst/gsttypefindfactory.c: (gst_type_find_factory_get_type):
7767 * gst/gsturi.c: (gst_uri_handler_get_type):
7768 * gst/gstvalue.c: (gst_date_get_type):
7769 * gst/gstxml.c: (gst_xml_get_type):
7770 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_type),
7771 (gst_base_sink_preroll_object), (gst_base_sink_get_position):
7772 * libs/gst/base/gstbasesrc.c: (gst_base_src_get_type):
7773 Add G_UNLIKELY in type registration.
7775 2006-06-12 Wim Taymans <wim@fluendo.com>
7777 * tools/gst-inspect.c: (print_signal_info):
7778 Properly print enum values.
7780 2006-06-12 Wim Taymans <wim@fluendo.com>
7782 * gst/gstinfo.c: (gst_debug_set_active),
7783 (gst_debug_category_set_threshold), (_gst_debug_nameof_funcptr):
7784 * gst/gstinfo.h:
7785 Add some G_[UN]LIKELY.
7786 Maintain __gst_debug_min to avoid formatting the arguments of
7787 debug messages that will be dropped anyway to avoid a lot of
7788 overhead from the debugging system.
7790 2006-06-11 Stefan Kost <ensonic@users.sf.net>
7792 * po/POTFILES.in:
7793 * po/POTFILES.skip:
7794 add missing files containing translatable strings, tell intltool about
7795 one exception
7797 2006-06-11 Stefan Kost <ensonic@users.sf.net>
7799 * tests/check/libs/.cvsignore:
7800 add test-binary to ignore list
7802 2006-06-11 Stefan Kost <ensonic@users.sf.net>
7804 * docs/libs/gstreamer-libs-docs.sgml:
7805 reorder (put dp into a chapter) and indent
7807 2006-06-10 Thomas Vander Stichele <thomas at apestaart dot org>
7809 * configure.ac:
7810 back to HEAD
7812 === release 0.10.8 ===
7814 2006-06-10 Thomas Vander Stichele <thomas at apestaart dot org>
7816 * configure.ac:
7817 releasing 0.10.8, "Soepeke, ik zie ou nog altijd nie"
7819 2006-06-10 Thomas Vander Stichele <thomas at apestaart dot org>
7821 * gst/gst.c: (init_post):
7822 move pid declaration to declaration block
7824 2006-06-10 Thomas Vander Stichele <thomas at apestaart dot org>
7826 * gst/gst.c: (init_post):
7827 use _exit() instead of exit() in our forked child; this ensures
7828 that none of the registered exit handlers from whatever is using
7829 GStreamer get executed. This fixes gnome-mixer-applet failing
7830 to load, because ORBit would shut down.
7831 Spotted by: Edward Hervey <edward@fluendo.com>
7832 Fix suggested by: Tim-Philipp Müller <tim at centricular dot net>
7833 Fixes #344474
7835 2006-06-09 Thomas Vander Stichele <thomas at apestaart dot org>
7837 * configure.ac:
7838 back to TRUNK
7840 === release 0.10.7 ===
7842 2006-06-09 Thomas Vander Stichele <thomas at apestaart dot org>
7844 * configure.ac:
7845 releasing 0.10.7, "Soepeke, ik zie ou"
7847 2006-06-07 Thomas Vander Stichele <thomas at apestaart dot org>
7849 * configure.ac:
7850 * po/af.po:
7851 * po/az.po:
7852 * po/bg.po:
7853 * po/ca.po:
7854 * po/cs.po:
7855 * po/de.po:
7856 * po/en_GB.po:
7857 * po/fr.po:
7858 * po/it.po:
7859 * po/nb.po:
7860 * po/nl.po:
7861 * po/ru.po:
7862 * po/sq.po:
7863 * po/sr.po:
7864 * po/sv.po:
7865 * po/tr.po:
7866 * po/uk.po:
7867 * po/vi.po:
7868 * po/zh_CN.po:
7869 * po/zh_TW.po:
7870 * win32/common/config.h:
7871 0.10.6.2 prerelease
7873 2006-06-07 Wim Taymans <wim@fluendo.com>
7875 * gst/gstindex.c: (gst_index_gtype_resolver):
7876 * tools/gst-xmlinspect.c: (print_plugin_info):
7877 Fix leak spotted by coverity checker. Fixes #343827
7878 Fix another other leak found by paolo borelli.
7880 2006-06-06 Thomas Vander Stichele <thomas at apestaart dot org>
7882 * libs/gst/dataprotocol/dataprotocol.c:
7883 (gst_dp_header_from_buffer_any), (gst_dp_packet_from_caps_any),
7884 (gst_dp_version_get_type), (gst_dp_init),
7885 (gst_dp_header_from_buffer), (gst_dp_header_from_buffer_1_0),
7886 (gst_dp_packet_from_caps), (gst_dp_packet_from_caps_1_0),
7887 (gst_dp_packet_from_event), (gst_dp_packet_from_event_1_0),
7888 (gst_dp_event_from_packet_0_2), (gst_dp_event_from_packet_1_0),
7889 (gst_dp_event_from_packet), (gst_dp_packetizer_new),
7890 (gst_dp_packetizer_free):
7891 * libs/gst/dataprotocol/dataprotocol.h:
7892 API: add a GstDPPacketizer object, and create/free functions
7893 API: add GstDPVersion enum
7894 Add 1.0 event function that uses the string serialization
7895 Serialize more useful buffer flags
7896 Fixes #343988
7898 2006-06-06 Thomas Vander Stichele <thomas at apestaart dot org>
7900 * tests/check/Makefile.am:
7901 * tests/check/gst/gstabi.c:
7902 * tests/check/gst/struct_ppc64.h:
7903 * tests/check/libs/libsabi.c:
7904 * tests/check/libs/struct_ppc64.h:
7905 add ppc64 structure sizes
7907 2006-06-06 Thomas Vander Stichele <thomas at apestaart dot org>
7909 * tests/check/Makefile.am:
7910 * tests/check/gst/gstabi.c:
7911 * tests/check/gst/struct_x86_64.h:
7912 * tests/check/libs/libsabi.c:
7913 * tests/check/libs/struct_x86_64.h:
7914 generate and add structure size lists for x86_64
7916 2006-06-06 Thomas Vander Stichele <thomas at apestaart dot org>
7918 * libs/gst/check/gstcheck.c: (gst_check_abi_list):
7919 * libs/gst/check/gstcheck.h:
7920 factor out the method from tests that checks size of structures,
7921 and add code to generate the header containing these sizes
7922 * tests/check/gst/gstabi.c: (GST_START_TEST):
7923 * tests/check/gst/struct_i386.h:
7924 * tests/check/libs/libsabi.c: (GST_START_TEST):
7925 * tests/check/libs/struct_i386.h:
7926 use it
7928 2006-06-06 Michael Smith <msmith@fluendo.com>
7930 * gst/gstsegment.h:
7931 Don't use c++-style comments, fixes #343929
7933 2006-06-05 Edward Hervey <edward@fluendo.com>
7935 * gst/gst.c:
7936 plugin_paths is not used if we build without registry support.
7938 * gst/gstsegment.c: (gst_segment_copy):
7939 _copy() was always returning NULL...
7941 2006-06-02 Thomas Vander Stichele <thomas at apestaart dot org>
7943 * libs/gst/dataprotocol/dataprotocol.c:
7944 (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
7945 (gst_dp_packet_from_event):
7946 factor out CRC code
7948 2006-06-02 Thomas Vander Stichele <thomas at apestaart dot org>
7950 * libs/gst/check/gstcheck.c: (gst_check_teardown_src_pad):
7951 make sure we unset caps
7953 2006-06-02 Michael Smith <msmith@fluendo.com>
7955 * libs/gst/check/gstcheck.c: (gst_check_init),
7956 (gst_check_chain_func):
7957 * libs/gst/check/gstcheck.h:
7958 Add a cond/mutex to the check support lib, signal this whenever we
7959 add to the buffers list. This will allow tests to not busy-wait on
7960 the buffer-list.
7962 2006-06-02 Thomas Vander Stichele <thomas at apestaart dot org>
7964 * libs/gst/dataprotocol/dataprotocol.c:
7965 (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
7966 (gst_dp_packet_from_event):
7967 factor out some common header init code
7969 2006-06-02 Thomas Vander Stichele <thomas at apestaart dot org>
7971 * docs/libs/gstreamer-libs-sections.txt:
7972 * docs/libs/tmpl/gstdataprotocol.sgml:
7973 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
7974 * libs/gst/dataprotocol/dataprotocol.h:
7975 API: make gst_dp_crc() public
7977 2006-06-01 Stefan Kost <ensonic@users.sf.net>
7979 * plugins/indexers/gstindexers.c: (plugin_init):
7980 conditionally register fileindexer (fixes #343598)
7982 2006-06-01 Stefan Kost <ensonic@users.sf.net>
7984 * gst/gsttagsetter.h:
7985 Can't cast ifaces to a class
7987 * libs/gst/net/gstnetclientclock.h:
7988 * libs/gst/net/gstnettimeprovider.h:
7989 * plugins/elements/gstfakesink.h:
7990 * plugins/elements/gstfakesrc.h:
7991 * plugins/elements/gstfdsink.h:
7992 * plugins/elements/gstfdsrc.h:
7993 * plugins/elements/gstfilesink.h:
7994 * plugins/elements/gstfilesrc.h:
7995 * plugins/elements/gstidentity.h:
7996 * plugins/elements/gstqueue.h:
7997 * plugins/elements/gsttee.h:
7998 * plugins/indexers/gstfileindex.c:
7999 * plugins/indexers/gstmemindex.c:
8000 * tests/old/examples/plugins/example.h:
8001 Fix more gobject macros: obj<->klass, GstXXX<->GstXXXClass
8003 2006-06-01 Thomas Vander Stichele <thomas at apestaart dot org>
8005 * libs/gst/dataprotocol/dataprotocol.c:
8006 (gst_dp_header_from_buffer):
8007 make sure we zero the whole ABI-compatible area
8009 2006-06-01 Wim Taymans <wim@fluendo.com>
8011 Patch by: Alessandro Decina <alessandro at nnva dot org>
8013 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_stop):
8014 Make sure the EOS flag is cleared from pads after a flush
8015 or stop. Fixes #343538.
8017 * tests/check/libs/collectpads.c: (GST_START_TEST),
8018 (gst_collect_pads_suite):
8019 Added test for collectpads reusage after EOS.
8021 2006-05-30 Sebastien Moutte <sebastien@moutte.net>
8023 * gst/gst.c:
8024 set #include <sys/wait.h> in a #ifdef #ifdef HAVE_FORK
8025 * win32/common/libgstbase.def:
8026 export gst_collect_pads_set_flushing
8027 * win32/common/libgstreamer.def:
8028 export gst_pad_set_acceptcaps_function, gst_structure_empty_new,
8029 gst_value_fraction_multiply
8030 * win32/vs6/gst_inspect.dsp:
8031 add a link to intl.lib
8033 2006-05-30 Wim Taymans <wim@fluendo.com>
8035 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_remove_pad),
8036 (gst_collect_pads_chain):
8037 Handle the case where a pad is removed from the collection
8038 that could cause the other pads to become collectable.
8040 2006-05-30 Wim Taymans <wim@fluendo.com>
8042 * gst/gstelement.c:
8043 Clarify the use of _release_request_pad() and
8044 _get_request_pad() a bit better.
8046 * libs/gst/base/gstadapter.c: (gst_adapter_peek),
8047 (gst_adapter_take_buffer):
8048 Fix some doc and comment typos.
8050 2006-05-30 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
8052 * docs/gst/gstreamer-sections.txt:
8053 * docs/libs/gstreamer-libs-sections.txt:
8054 add declared symbols
8056 2006-05-30 Jan Schmidt <thaytan@mad.scientist.com>
8058 * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
8059 Add debug that can be enabled using a #define at the top of the file,
8060 for dumping stats about how late/early we were when waking up from
8061 waiting on the clock.
8063 2006-05-30 Wim Taymans <wim@fluendo.com>
8065 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_check_pads):
8066 When rebuilding the pad list, don't leak the previous list.
8068 2006-05-30 Wim Taymans <wim@fluendo.com>
8070 Patch by: Lutz Mueller <lutz at topfrose dot de>
8072 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
8073 (gst_base_src_get_query_types), (gst_base_src_update_length):
8074 Publish supported query types.
8075 Update last_stop field in get_range mode so the position
8076 query works. Fixes #342321.
8078 2006-05-30 Tim-Philipp Müller <tim at centricular dot net>
8080 * docs/gst/gstreamer-sections.txt:
8081 * gst/gsttaglist.c: (_gst_tag_initialize):
8082 * gst/gsttaglist.h:
8083 API: add GST_TAG_PREVIEW_IMAGE (#343341).
8085 2006-05-30 Wim Taymans <wim@fluendo.com>
8087 Patch by: Alessandro Decina <alessandro at nnva dot org>
8089 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_remove_pad):
8090 Unlock mutex when removing an unknown pad.
8091 Fixes #343334.
8093 * tests/check/Makefile.am:
8094 * tests/check/libs/collectpads.c: (collected_cb), (push_buffer),
8095 (push_event), (setup), (teardown), (GST_START_TEST),
8096 (gst_collect_pads_suite), (main):
8097 Added collecpads check, disabled for now as check crashes for
8098 some reason.
8100 2006-05-29 Wim Taymans <wim@fluendo.com>
8102 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_finalize):
8103 Don't leak pads lists.
8105 2006-05-29 Wim Taymans <wim@fluendo.com>
8107 * docs/libs/gstreamer-libs-sections.txt:
8108 * libs/gst/base/gstcollectpads.c:
8109 (gst_collect_pads_set_flushing_unlocked),
8110 (gst_collect_pads_set_flushing), (gst_collect_pads_start),
8111 (gst_collect_pads_stop):
8112 * libs/gst/base/gstcollectpads.h:
8113 API: gst_collect_pads_set_flushing()
8114 Added api to set the pads to flushing, useful for seeking
8115 code in elements using collectpads.
8116 Clear segment when receiving a flush.
8118 2006-05-29 Tim-Philipp Müller <tim at centricular dot net>
8120 * gst/gst.c: (add_path_func), (init_post):
8121 Don't scan registry paths passed via --gst-plugin-path immediately
8122 (will crash, because absolutely nothing is set up and no types are
8123 registered etc.); do this later in init_post(). Fixes #343057.
8125 2006-05-28 Thomas Vander Stichele <thomas at apestaart dot org>
8127 * gst/gst.c: (init_post):
8128 if we have fork, fork while reading/rebuilding the registry
8129 so the parent doesn't take the hit of having all plugins loaded
8130 in memory. Fixes #342777.
8131 * configure.ac:
8132 Check if we have fork()
8133 * win32/common/config.h.in:
8134 no fork() on win32
8136 2006-05-26 Jan Schmidt <thaytan@mad.scientist.com>
8138 * plugins/elements/gstelements.c:
8139 * plugins/elements/gstfilesrc.c: (gst_file_src_class_init),
8140 (gst_file_src_init), (gst_file_src_set_property),
8141 (gst_file_src_get_property), (gst_file_src_start):
8142 * plugins/elements/gstfilesrc.h:
8143 API: GstFileSrc::use-mmap
8145 Add a use-mmap property to enable easier testing of all code paths.
8146 Bump rank to PRIMARY, so filesrc is the preferred file reader and used
8147 in the absence of gnomevfssrc. (Closes #340501)
8149 2006-05-26 Zaheer Abbas Merali <zaheerabbas at merali dot org>
8151 * tools/gst-inspect.c:
8152 Add missing include, removes warning of ngettext not being defined on
8153 some arches.
8155 2006-05-26 Jan Schmidt <thaytan@mad.scientist.com>
8157 * gst/gstvalue.c: (gst_value_deserialize_fraction):
8158 Handle NULL input and output pointers silently as a failed conversion,
8159 rather than g_warnings.
8161 2006-05-25 Wim Taymans <wim@fluendo.com>
8163 * libs/gst/net/gstnetclientclock.c: (gst_net_client_clock_start):
8164 Initialize variable before using. Fixes #342820.
8166 2006-05-24 Tim-Philipp Müller <tim at centricular dot net>
8168 * libs/gst/base/gsttypefindhelper.c: (buf_helper_find_peek):
8169 Fix off-by-one bug that would only allow peeks of N-1 bytes
8170 from the start even if the buffer to typefind on contains
8171 in fact N bytes of data (makes vorbis typefinding from a
8172 vorbis identification header buffer work).
8174 * tests/check/Makefile.am:
8175 * tests/check/libs/.cvsignore:
8176 * tests/check/libs/typefindhelper.c: (GST_START_TEST),
8177 (gst_typefindhelper_suite), (main), (foobar_typefind),
8178 (plugin_init):
8179 Add very basic unit test for gst_type_find_helper_for_buffer()
8180 that checks for the problem fixed above.
8182 2006-05-24 Thomas Vander Stichele <thomas at apestaart dot org>
8184 * tools/gst-inspect.c: (print_interfaces),
8185 (print_element_properties_info), (print_element_list), (main):
8186 add more translatable strings
8188 2006-05-23 Tim-Philipp Müller <tim at centricular dot net>
8190 Patch by: Julien Moutte <julien at moutte net>
8192 * docs/gst/gstreamer-sections.txt:
8193 Make new GST_FLOW_IS_SUCCESS macro visible in docs.
8195 * plugins/elements/gstfakesink.c: (gst_fake_sink_class_init),
8196 (gst_fake_sink_preroll):
8197 * plugins/elements/gstfakesink.h:
8198 API: Add new GstFakeSink::preroll-handoff signal (#337100).
8200 2006-05-23 Wim Taymans <wim@fluendo.com>
8202 * gst/gstpad.c: (gst_flow_get_name), (gst_flow_to_quark):
8203 * gst/gstpad.h:
8204 Added _CUSTOM error and success GstFlowReturn that can be
8205 used be elements internally.
8206 Added macro to check for SUCCESS flowreturns.
8207 API: GST_FLOW_CUSTOM_SUCCESS
8208 API: GST_FLOW_CUSTOM_ERROR
8209 API: GST_FLOW_IS_SUCCESS
8211 * tests/check/gst/gstpad.c: (GST_START_TEST), (gst_pad_suite):
8212 Added check for GstFlowReturn sanity.
8214 2006-05-23 Wim Taymans <wim@fluendo.com>
8216 Patch by: Mark Nauwelaerts <manauw at skynet dot be>
8218 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_remove_pad),
8219 (gst_collect_pads_event):
8220 clear/reset segment info in FLUSH_STOP.
8221 Fixes #336929.
8223 2006-05-22 Stefan Kost <ensonic@users.sf.net>
8225 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_stop),
8226 (gst_collect_pads_check_collected):
8227 Flush queued buffer on _stop(), fixes playing again (#342454)
8229 2006-05-22 Thomas Vander Stichele <thomas at apestaart dot org>
8231 * tests/check/gst/gststructure.c: (GST_START_TEST),
8232 (gst_structure_suite):
8233 add a test for a complete structure
8235 2006-05-19 Tim-Philipp Müller <tim at centricular dot net>
8237 * docs/faq/developing.xml:
8238 * docs/faq/faq.xml:
8239 * docs/faq/troubleshooting.xml:
8240 * docs/faq/using.xml:
8241 Some minor FAQ updates that won't change the fact that
8242 our FAQ is badly structured, full of information hardly
8243 anyone new to GStreamer needs to know and lacking lots
8244 of information people constantly ask for.
8246 2006-05-19 Jan Schmidt <thaytan@mad.scientist.com>
8248 * gst/gstpad.c: (gst_pad_set_caps):
8249 Short-circuit gst_pad_set_caps if setting the existing
8250 caps pointer again, and avoid printing debug and
8251 reffing/unreffing the caps.
8253 * plugins/elements/gstqueue.c: (gst_queue_push_one):
8254 There's actually no need to set the caps before pushing -
8255 the acceptcaps method will handle it anyway.
8257 2006-05-19 Tim-Philipp Müller <tim at centricular dot net>
8259 * docs/gst/gstreamer-sections.txt:
8260 * win32/common/libgstreamer.def:
8261 * gst/gstutils.c: (gst_element_seek_simple):
8262 * gst/gstutils.h:
8263 API: add gst_element_seek_simple() (#342238).
8265 2006-05-18 Edward Hervey <edward@fluendo.com>
8267 * gst/gsttypefind.c: (gst_type_find_get_type):
8268 * gst/gsttypefind.h:
8269 Added GST_TYPE_TYPE_FIND and gst_type_find_get_type() so a GType gets
8270 registered for GstTypeFind pointers. This allows wrapping the structure
8271 in bindings (i.e. gst-python).
8273 2006-05-18 Tim-Philipp Müller <tim at centricular dot net>
8275 * gst/gsttagsetter.c:
8276 Docs additions and fixes (see #339918).
8278 2006-05-18 Jan Schmidt <thaytan@mad.scientist.com>
8280 * plugins/elements/gstcapsfilter.c: (gst_capsfilter_prepare_buf):
8281 The caps intersection algorithm can produce multiple copies of the
8282 caps. Until that is fixed, we need to simplify the result to be
8283 sure whether the allowed caps are fixed or not.
8285 * plugins/elements/gstqueue.c: (gst_queue_init),
8286 (gst_queue_bufferalloc), (gst_queue_acceptcaps),
8287 (gst_queue_push_one):
8288 Proxied buffer alloc should not set the caps on the source pad.
8289 When pushing buffers, we always accept the caps change that triggers.
8290 This prevents negotiation errors caused by caps changing mid-stream
8291 and then being refused on our source pad (because upstream is now
8292 refusing those caps).
8294 2006-05-18 Tim-Philipp Müller <tim at centricular dot net>
8296 * tests/examples/helloworld/helloworld.c: (main):
8297 Must plug audioconvert and audioresample between decoder
8298 and audio sink.
8300 2006-05-17 Jan Schmidt <thaytan@mad.scientist.com>
8302 * gst/gstregistryxml.c: (read_string), (load_pad_template),
8303 (load_feature), (load_plugin):
8304 Allow empty strings for some of the plugin fields so we don't
8305 drop valid plugin entries that were written out correctly
8306 (Fixes #341479)
8308 2006-05-17 Sebastien Moutte <sebastien@moutte.net>
8310 * gst/gstregistryxml.c: (gst_registry_xml_write_cache):
8311 Use g_remove and g_rename instead of remove and rename that don't
8312 handle utf8 characters. rename was failing for users who had specific
8313 characters in their name then the registry was built at each
8314 gstreamer init.
8315 * win32/vs6/gst_inspect.dsp:
8316 * win32/vs6/gst_launch.dsp:
8317 * win32/vs6/libgstbase.dsp:
8318 * win32/vs6/libgstcoreelements.dsp:
8319 * win32/vs6/libgstreamer.dsp:
8320 Use a debug version of libxml2 (libxml2D.lib,libxml2D.dll) for DEBUG
8321 build of libgstreamer and clean unused libraries in projects link
8322 settings.
8324 2006-05-17 Edward Hervey <edward@fluendo.com>
8326 * plugins/elements/gstqueue.c: (gst_queue_push_one):
8327 The queue is not responsible for pushing an EOS when receiving a fatal
8328 flow error. It's up to the real element driving the pipeline to do that.
8330 2006-05-16 Edward Hervey <edward@fluendo.com>
8332 * plugins/elements/gstqueue.c: (gst_queue_push_one):
8333 The queue was posting a non-needed GST_MESSAGE_ERROR when pushing a
8334 buffer returned a fatal error. It should just send an EOS and stop
8335 its task.
8336 Upstream elements will then properly receive the GST_FLOW_UNEXPECTED
8337 when pushing buffers on the queue and will be able to handle the event.
8339 2006-05-16 Tim-Philipp Müller <tim at centricular dot net>
8341 * docs/manual/basics-bins.xml:
8342 * docs/manual/basics-init.xml:
8343 Fix typos and minor errors in sample code (#341856).
8345 2006-05-16 Wim Taymans <wim@fluendo.com>
8347 * docs/design/part-qos.txt:
8348 Fix indexes in formulas to make more sense.
8350 2006-05-15 Wim Taymans <wim@fluendo.com>
8352 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_position):
8353 Don't report POSITION based on clock time if sync is
8354 disabled in a sink.
8356 2006-05-15 Tim-Philipp Müller <tim at centricular dot net>
8358 * gst/gstobject.h:
8359 Add cast to make compiler happy - refcount variable was a gint
8360 in GstObject but is a guint in GObject and g_atomic_int_get()
8361 wants a gint *.
8363 2006-05-15 Thomas Vander Stichele <thomas at apestaart dot org>
8365 * gst/parse/Makefile.am:
8366 chain commands using &&, which also makes parallel make work
8368 2006-05-14 Tim-Philipp Müller <tim at centricular dot net>
8370 * docs/gst/gstreamer-sections.txt:
8371 * gst/gstevent.c:
8372 * gst/gstevent.h:
8373 * gst/gstmessage.h:
8374 Minor docs fixes.
8376 === release 0.10.6 ===
8378 2006-05-14 Jan Schmidt <thaytan@mad.scientist.com>
8380 * configure.ac:
8381 releasing 0.10.6, "Take the cannoli"
8383 2006-05-13 Tim-Philipp Müller <tim at centricular dot net>
8385 * tools/gst-launch.c: (print_tag):
8386 Fix use of uninitialized variable in the hypothetical
8387 case that some broken plugin creates a GST_TAG_IMAGE
8388 tag containing a NULL buffer (#341667).
8390 2006-05-12 Tim-Philipp Müller <tim at centricular dot net>
8392 * tools/gst-launch.c: (print_tag):
8393 Print something more intelligible for image tags when
8394 using the -t switch (#341556).
8396 2006-05-12 Thomas Vander Stichele <thomas at apestaart dot org>
8398 * Makefile.am:
8399 updates for win32
8400 * configure.ac:
8401 define GST_MAJORMINOR so we have it available in win32/common/config.h
8402 Possibly remove it from our Makefile.am files later
8403 * win32/common/config.h:
8404 * win32/common/config.h.in:
8405 added GST_MAJORMINOR
8406 * win32/common/gstenumtypes.c: (register_gst_resource_error):
8407 * win32/common/gstversion.h:
8408 updated
8410 2006-05-12 Sebastien Moutte <sebastien@moutte.net>
8412 * win32/MANIFEST:
8413 Update win32 files listing.
8414 * win32/common/gstversion.h:
8415 Add GST_MAJORMINOR definition.
8416 * win32/common/libgstreamer.def:
8417 Add new exported functions.
8419 2006-05-12 Michael Smith <msmith@fluendo.com>
8421 * gst/gstplugin.c: (gst_plugin_load_file):
8422 If an so file has no plugin entry point, unload the module.
8424 2006-05-11 Wim Taymans <wim@fluendo.com>
8426 * plugins/elements/gstqueue.c: (gst_queue_chain), (gst_queue_loop),
8427 (gst_queue_set_property):
8428 Don't forget to signal the _chain or _loop function
8429 when the queue size or thresholds change since that might
8430 cause them to make progres again.
8432 2006-05-11 Stefan Kost <ensonic@users.sf.net>
8434 * gst/gstclock.c: (gst_clock_class_init):
8435 * gst/gstindex.c: (gst_index_class_init):
8436 * gst/gstobject.c: (gst_object_class_init):
8437 * gst/gstpad.c: (gst_pad_class_init):
8438 * gst/gstpipeline.c: (gst_pipeline_class_init):
8439 * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init):
8440 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init):
8441 * libs/gst/base/gstbasetransform.c:
8442 (gst_base_transform_class_init):
8443 * libs/gst/net/gstnetclientclock.c:
8444 (gst_net_client_clock_class_init):
8445 * libs/gst/net/gstnettimeprovider.c:
8446 (gst_net_time_provider_class_init):
8447 * plugins/elements/gstcapsfilter.c: (gst_capsfilter_class_init):
8448 * plugins/elements/gstfakesink.c: (gst_fake_sink_class_init):
8449 * plugins/elements/gstfakesrc.c: (gst_fake_src_class_init):
8450 * plugins/elements/gstfdsink.c: (gst_fd_sink_class_init):
8451 * plugins/elements/gstfdsrc.c: (gst_fd_src_class_init):
8452 * plugins/elements/gstfilesink.c: (gst_file_sink_class_init):
8453 * plugins/elements/gstfilesrc.c: (gst_file_src_class_init):
8454 * plugins/elements/gstidentity.c: (gst_identity_class_init):
8455 * plugins/elements/gsttee.c: (gst_tee_class_init):
8456 * tests/old/examples/plugins/example.c: (gst_example_class_init):
8457 * tests/old/testsuite/threads/signals.c: (gst_test_class_init):
8458 G_OBJECT_CLASS macro usage batch cleanup, fixes #337747 for core
8460 2006-05-11 Wim Taymans <wim@fluendo.com>
8462 * gst/gstbuffer.c: (_gst_buffer_initialize):
8463 Register subbufer along with the buffer type so that
8464 it does not accidentally gets registered from N
8465 different streaming threads in a non threadsafe way.
8467 2006-05-10 Tim-Philipp Müller <tim at centricular dot net>
8469 * gst/gstbuffer.h:
8470 * gst/gstevent.h:
8471 * gst/gstmessage.h:
8472 Make gtk-doc generate docs for our inlined gst_buffer_ref(),
8473 gst_event_ref() and gst_message_ref() functions again
8474 (ugly hack, please do fix if there's a better way besides
8475 overrides.txt, which doesn't seem to work).
8477 2006-05-10 Thomas Vander Stichele <thomas at apestaart dot org>
8479 * libs/gst/check/gstcheck.h:
8480 add an assert for setting state to avoid lots of repetitive code
8481 in the future
8483 2006-05-10 Thomas Vander Stichele <thomas at apestaart dot org>
8485 * gst/gstvalue.c: (gst_value_serialize_flags):
8486 fix a leak if no flags are set
8487 * tests/check/gst/gstvalue.c: (GST_START_TEST):
8488 fix leak in tests
8490 2006-05-10 Tim-Philipp Müller <tim at centricular dot net>
8492 * docs/manual/basics-pads.xml:
8493 Expand a bit on caps and filtered links and update
8494 examples that were still using the no longer existing
8495 gst_pad_link_filtered() (#338206).
8497 2006-05-10 Wim Taymans <wim@fluendo.com>
8499 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_finalize),
8500 (gst_collect_pads_add_pad), (gst_collect_pads_remove_pad),
8501 (gst_collect_pads_set_flushing), (gst_collect_pads_start),
8502 (gst_collect_pads_stop):
8503 * libs/gst/base/gstcollectpads.h:
8504 No need to call _stop in _finalize.
8505 Iterate the main pad list in _finalize.
8506 Added some more debug.
8507 Free lists and data in the right order.
8508 Also free data whem doing _remove_pad when stopped for
8509 backward compatibility protect ::started with PAD_LOCK as
8510 well.
8512 2006-05-10 Thomas Vander Stichele <thomas at apestaart dot org>
8514 * gst/gststructure.c: (gst_structure_gtype_from_abbr),
8515 (gst_structure_parse_value):
8516 add some comments
8517 rename a method so that it actually says what it does better
8519 2006-05-10 Thomas Vander Stichele <thomas at apestaart dot org>
8521 * gst/gstevent.c: (_gst_event_initialize):
8522 * gst/gstformat.c: (_gst_format_initialize):
8523 make sure some essential types used by events are registered
8524 as part of gst_init()
8525 * gst/gstvalue.c: (gst_value_serialize_flags):
8526 if no flags are set, serialize them to a value that represents NONE
8527 so that deserializing them works
8528 * tests/check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
8529 add tests for serialization and deserialization of flags
8531 2006-05-10 Wim Taymans <wim@fluendo.com>
8533 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_collect),
8534 (gst_collect_pads_collect_range), (gst_collect_pads_available),
8535 (gst_collect_pads_check_pads), (gst_collect_pads_check_collected),
8536 (gst_collect_pads_event), (gst_collect_pads_chain):
8537 Update docs.
8538 Better debug info.
8539 Catch and return errors from the collect function
8540 Refuse data on eos pads.
8542 2006-05-10 Edward Hervey <edward@fluendo.com>
8544 * gst/gstinterface.h:
8545 GST_IMPLEMENTS_INTERFACE and GST_IS_IMPLEMENTS_INTERFACE use the normal
8546 GInterface type checking.
8547 They were previously using non-defined macros.
8549 2006-05-09 Wim Taymans <wim@fluendo.com>
8551 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_init),
8552 (gst_collect_pads_finalize), (gst_collect_pads_add_pad),
8553 (gst_collect_pads_remove_pad), (gst_collect_pads_set_flushing),
8554 (gst_collect_pads_start), (gst_collect_pads_stop),
8555 (gst_collect_pads_peek), (gst_collect_pads_pop),
8556 (gst_collect_pads_available), (gst_collect_pads_read),
8557 (gst_collect_pads_flush), (gst_collect_pads_check_pads),
8558 (gst_collect_pads_is_collected), (gst_collect_pads_event),
8559 (gst_collect_pads_chain):
8560 * libs/gst/base/gstcollectpads.h:
8561 Clean up the mess that is collectpads, add comments and
8562 FIXMEs where needed.
8563 Maintain a separate pad list so we can add pads while
8564 collecting the other ones. For this we need a new separate
8565 lock (see comics).
8566 Fix memory leak in finalize.
8567 Refactor some weird code to set/unset pad flushing flags, mark
8568 with comments.
8569 Don't crash in _available, _read, _flush when we're EOS.
8571 * tests/check/libs/.cvsignore:
8572 Ignore adapter check binary.
8574 2006-05-09 Tim-Philipp Müller <tim at centricular dot net>
8576 * gst/gstindex.c: (gst_index_resolver_get_type):
8577 * plugins/elements/gstfakesink.c:
8578 (gst_fake_sink_state_error_get_type):
8579 * plugins/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
8580 (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type):
8581 * plugins/elements/gstqueue.c: (queue_leaky_get_type):
8582 Const-ify GEnumValue arrays.
8584 2006-05-09 Tim-Philipp Müller <tim at centricular dot net>
8586 * tests/check/gst/gstbuffer.c: (GST_START_TEST):
8587 Add test case for flags + gst_buffer_make_metadata_writable().
8589 2006-05-09 Tim-Philipp Müller <tim at centricular dot net>
8591 * gst/gstbuffer.c: (gst_buffer_make_metadata_writable):
8592 gst_buffer_make_metadata_writable() should maintain the
8593 buffer flags (those that make sense at least) (see #340859).
8595 2006-05-09 Tim-Philipp Müller <tim at centricular dot net>
8597 * tools/gst-inspect.c:
8598 * tools/gst-launch.c:
8599 * tools/gst-typefind.c:
8600 * tools/gst-xmlinspect.c:
8601 * tools/tools.h:
8602 Fix up includes: need to include stdlib.h in tools.h for exit().
8604 2006-05-09 Tim-Philipp Müller <tim at centricular dot net>
8606 * gst/gsttaglist.c: (_gst_tag_initialize):
8607 * gst/gsttaglist.h:
8608 API: add GST_TAG_IMAGE tag (#340721).
8610 2006-05-08 Wim Taymans <wim@fluendo.com>
8612 * gst/gstquery.c:
8613 Added some docs for the segment query.
8615 2006-05-08 Wim Taymans <wim@fluendo.com>
8617 * libs/gst/base/gstbasesrc.c: (gst_base_src_perform_seek),
8618 (gst_base_src_loop), (gst_base_src_change_state):
8619 Always push non-flushing serialized events in the streaming
8620 thread.
8622 2006-05-08 Thomas Vander Stichele <thomas at apestaart dot org>
8624 * gst/gsterror.c: (_gst_stream_errors_init):
8625 Add a missing error string.
8627 2006-05-08 Jan Schmidt <thaytan@mad.scientist.com>
8629 * libs/gst/base/gstbasesink.c: (gst_base_sink_configure_segment):
8630 Add applied_rate to the debug
8632 * libs/gst/base/gstbasesrc.c: (gst_base_src_perform_seek):
8633 Copy applied_rate into the outgoing NEWSEGMENT event
8635 2006-05-08 Wim Taymans <wim@fluendo.com>
8637 Patch by: Philippe Rouquier <philippero at libertysurf dot fr>
8639 * libs/gst/base/gstbasesink.c: (gst_base_sink_set_flushing),
8640 (gst_base_sink_change_state):
8641 call ::unlock before taking the PREROLL_LOCK so we can safely
8642 handle elements that lock in ::render.
8643 Fixes #340174.
8645 2006-05-08 Edward Hervey <edward@fluendo.com>
8647 * autogen.sh: (CONFIGURE_DEF_OPT):
8648 Darwin's libtoolize is in fact called glibtoolize.
8649 Adding glibtoolize to the list of accepted names for libtoolize.
8651 2006-05-08 Wim Taymans <wim@fluendo.com>
8653 * libs/gst/base/gstbasesrc.c: (gst_base_src_loop):
8654 Unify error handling, don't post an error message
8655 when a push() returns EOS but perform our normal EOS
8656 handling code. Fixes #340772.
8658 2006-05-08 Wim Taymans <wim@fluendo.com>
8660 * docs/design/part-overview.txt:
8661 Make upsteam/downstream concepts more clear.
8662 Give an example of serialized/non-serialized events.
8664 * docs/design/part-events.txt:
8665 * docs/design/part-streams.txt:
8666 Mention applied_rate.
8668 * docs/design/part-trickmodes.txt:
8669 Mention applied rate, flesh out some more use cases.
8671 * gst/gstevent.c: (gst_event_new_new_segment),
8672 (gst_event_parse_new_segment), (gst_event_new_new_segment_full),
8673 (gst_event_parse_new_segment_full), (gst_event_new_tag),
8674 (gst_event_parse_tag), (gst_event_new_buffer_size),
8675 (gst_event_parse_buffer_size), (gst_event_new_qos),
8676 (gst_event_parse_qos), (gst_event_parse_seek),
8677 (gst_event_new_navigation):
8678 * gst/gstevent.h:
8679 Add applied_rate field to NEWSEGMENT event.
8680 API: gst_event_new_new_segment_full()
8681 API: gst_event_parse_new_segment_full()
8683 * gst/gstsegment.c: (gst_segment_init), (gst_segment_set_seek),
8684 (gst_segment_set_newsegment), (gst_segment_set_newsegment_full),
8685 (gst_segment_to_stream_time), (gst_segment_to_running_time):
8686 * gst/gstsegment.h:
8687 Add applied_rate to GstSegment structure.
8688 Make calculation of stream_time and running_time more correct
8689 wrt rate/applied_rate.
8690 Add some more docs.
8691 API: GstSegment::applied_rate field
8692 API: gst_segment_set_newsegment_full();
8694 * libs/gst/base/gstbasesink.c: (gst_base_sink_configure_segment),
8695 (gst_base_sink_get_sync_times), (gst_base_sink_get_position):
8696 * libs/gst/base/gstbasetransform.c:
8697 (gst_base_transform_sink_eventfunc),
8698 (gst_base_transform_handle_buffer):
8699 Parse and use applied_rate in the GstSegment field.
8701 * tests/check/gst/gstevent.c: (GST_START_TEST):
8702 Add check for applied_rate field.
8704 * tests/check/gst/gstsegment.c: (GST_START_TEST),
8705 (gstsegments_suite):
8706 Add more checks for various GstSegment operations.
8708 2006-05-08 Wim Taymans <wim@fluendo.com>
8710 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times),
8711 (gst_base_sink_do_sync), (gst_base_sink_chain_unlocked),
8712 (gst_base_sink_get_position), (gst_base_sink_change_state):
8713 Store the sync time of the buffer end position separatly in a
8714 new variable eos_rtime so we can properly sync the EOS event.
8715 Fixes #340697.
8716 Fix the docs for gst_base_sink_set_qos_enabled().
8717 Don't set segment start to invalid value when we receive a
8718 non TIME newsegment.
8719 get closer to handling position reporting for negative rates
8720 correctly.
8722 2006-05-07 Stefan Kost <ensonic@users.sf.net>
8724 * gst/gstcaps.c:
8725 Docs about how to print caps for debug purposes.
8727 * gst/gstpadtemplate.c: (gst_static_pad_template_get):
8728 use gst_caps_make_writable instead of gst_caps_copy, Fixes #340608
8730 2006-05-07 Stefan Kost <ensonic@users.sf.net>
8732 * gst/gstelement.c:
8733 use full enum names and preprend a '%' in docs strings to make recent
8734 gtk-doc turn that into a link
8736 2006-05-05 Tim-Philipp Müller <tim at centricular dot net>
8738 * docs/manual/basics-bins.xml:
8739 * docs/manual/basics-bus.xml:
8740 * docs/manual/basics-pads.xml:
8741 Some typo fixes, some additions, some clarifications.
8743 2006-05-05 Tim-Philipp Müller <tim at centricular dot net>
8745 * tools/gst-inspect.c: (main):
8746 * tools/gst-launch.c: (main):
8747 * tools/gst-run.c: (main):
8748 * tools/gst-typefind.c: (main):
8749 * tools/gst-xmlinspect.c: (main):
8750 Use the string passed to g_option_context_new() for
8751 what it's intended for - the program name is already
8752 printed elsewhere.
8754 2006-05-05 Tim-Philipp Müller <tim at centricular dot net>
8756 * tools/Makefile.am:
8757 * tools/gst-inspect.c: (main):
8758 * tools/gst-launch.c: (main):
8759 * tools/gst-xmlinspect.c: (main):
8760 * tools/tools.h:
8761 Add back --version command line option (#340460).
8763 * tools/gst-typefind.c: (have_type_handler), (typefind_file), (main):
8764 Add --version option and use GOption for argument parsing; refactor a
8765 bit; accept directories as arguments and recurse into them; lastly,
8766 print a decent error message when things go wrong.
8768 2006-05-05 Maciej Katafiasz <mathrick@freedesktop.org>
8770 * docs/manual/basics-bins.xml:
8771 Don't mention GstThread (#340611)
8772 * docs/manual/basics-elements.xml:
8773 Update link to GObject tutorial (#340607)
8775 2006-05-05 Wim Taymans <wim@fluendo.com>
8777 * gst/gstbuffer.h:
8778 * gst/gstminiobject.c:
8779 Add note about refcounting and miniobject/buffer writeability
8780 to docs. Fixes #340604
8782 * gst/gstelementfactory.h:
8783 Added some explanation about @klass.
8785 2006-05-05 Maciej Katafiasz <mathrick@freedesktop.org>
8787 * docs/manual/intro-motivation.xml:
8788 * docs/manual/manual.xml:
8789 Avoid CORBA & Bonobo references (#340598)
8791 2006-05-05 Maciej Katafiasz <mathrick@freedesktop.org>
8793 * docs/manual/basics-bus.xml:
8794 * docs/manual/basics-pads.xml:
8795 Fix up some inaccuracies and omissions (#340609)
8797 2006-05-05 Maciej Katafiasz <mathrick@freedesktop.org>
8799 * gst/gstghostpad.c:
8800 Small typo in docs (#340625)
8802 2006-05-05 Tim-Philipp Müller <tim at centricular dot net>
8804 * gst/parse/Makefile.am:
8805 Make 'make -j' proof (see #340698).
8807 2006-05-05 Tim-Philipp Müller <tim at centricular dot net>
8809 * configure.ac:
8810 Require GLib-2.8 here as well.
8812 2006-05-05 Wim Taymans <wim@fluendo.com>
8814 * gst/glib-compat.c:
8815 * gst/gst.c: (init_pre):
8816 * gst/gstobject.c: (gst_object_init), (gst_object_ref),
8817 (gst_object_unref), (gst_object_replace), (gst_object_dispose),
8818 (gst_object_dispatch_properties_changed):
8819 * gst/gstobject.h:
8820 * gst/gstregistryxml.c: (gst_registry_xml_read_cache):
8821 * gst/gststructure.c: (gst_structure_set_valist):
8822 * gst/gstvalue.c: (gst_date_get_type), (_gst_value_initialize):
8823 Remove pre glib2.8 compatibility, fixes #340508
8825 2006-05-04 Tim-Philipp Müller <tim at centricular dot net>
8827 * gst/gsttaglist.h:
8828 Mention type of tags in doc blurbs.
8830 2006-05-04 Jan Schmidt <thaytan@mad.scientist.com>
8832 * gst/gstpad.c: (gst_pad_init), (gst_pad_configure_sink),
8833 (gst_pad_configure_src), (gst_pad_push):
8834 Restore acceptcaps checking behaviour now that good plugins have
8835 been released.
8837 2006-05-04 Tim-Philipp Müller <tim at centricular dot net>
8839 Patch by: James Andrewartha <trs80 at tartarus uwa edu au>
8841 * gst/gst.c:
8842 * gst/gstbus.c:
8843 * gst/gstclock.c:
8844 * gst/gstevent.c:
8845 * gst/gstformat.c:
8846 * gst/gstmessage.c:
8847 * gst/gstparse.c:
8848 * gst/gstquery.c:
8849 * gst/gstutils.c:
8850 * gst/parse/Makefile.am:
8851 * libs/gst/base/gstadapter.c:
8852 * libs/gst/base/gstbasesrc.c:
8853 * libs/gst/base/gstpushsrc.c:
8854 * libs/gst/base/gsttypefindhelper.c:
8855 * plugins/elements/gstfakesrc.c:
8856 * plugins/elements/gstidentity.c:
8857 Make sure gstprivate.h and/or config.h are
8858 always included first, otherwise some of our
8859 defines (like _FILE_OFFSET_BITS) might be
8860 redefined in the system headers. Fixes build
8861 on opensolaris (#340016).
8863 2006-05-04 Wim Taymans <wim@fluendo.com>
8865 * docs/libs/gstreamer-libs-sections.txt:
8866 API: addition: gst_adapter_take_buffer()
8868 * libs/gst/base/gstadapter.c: (gst_adapter_push),
8869 (gst_adapter_peek), (gst_adapter_take), (gst_adapter_take_buffer),
8870 (gst_adapter_available_fast):
8871 * libs/gst/base/gstadapter.h:
8872 Prepare for optimizing the hell out of this hugely inefficient
8873 piece of code.
8874 Added gst_adapter_take_buffer() so we can at least start thinking
8875 about subbuffering and merging.
8876 Added some comments.
8878 * tests/check/Makefile.am:
8879 * tests/check/libs/adapter.c: (GST_START_TEST),
8880 (gst_adapter_suite), (main):
8881 Added GstAdapter check.
8883 2006-05-04 Wim Taymans <wim@fluendo.com>
8885 * docs/design/part-overview.txt:
8886 Fix some typos, add blurb about buffer flags.
8888 2006-05-03 Thomas Vander Stichele <thomas at apestaart dot org>
8890 * docs/libs/gstreamer-libs-sections.txt:
8891 make sure GstBaseTransformClass shows up in the docs
8892 * libs/gst/base/gstbasetransform.c:
8893 * libs/gst/base/gstbasetransform.h:
8894 move docs so gtk-doc picks it up now
8896 2006-05-02 Stefan Kost <ensonic@users.sf.net>
8898 * docs/libs/gstreamer-libs-sections.txt:
8899 add missing symbols to docs
8901 2006-05-02 Stefan Kost <ensonic@users.sf.net>
8903 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_event):
8904 back out the newsegment handling change, see #340060 for ongoing
8905 discussion
8907 2006-04-30 Tim-Philipp Müller <tim at centricular dot net>
8909 * tools/gst-run.c: (get_candidates), (main):
8910 Fix wrong g_file_test() usage (see glib docs for why it doesn't
8911 work); fix typo in error message. Fixes #340079.
8913 2006-04-29 Thomas Vander Stichele <thomas at apestaart dot org>
8915 * common/Makefile.am:
8916 * docs/Makefile.am:
8917 * docs/faq/Makefile.am:
8918 * docs/gst/Makefile.am:
8919 * docs/libs/Makefile.am:
8920 * docs/manual/Makefile.am:
8921 * docs/plugins/Makefile.am:
8922 * docs/pwg/Makefile.am:
8923 * docs/slides/Makefile.am:
8924 * docs/upload.mak:
8925 * common/upload.mak:
8926 move upload.mak to common
8928 2006-04-29 Thomas Vander Stichele <thomas at apestaart dot org>
8930 * tests/check/gst/gstghostpad.c: (GST_START_TEST):
8931 add more asserts on refcounts
8932 do more cleanup at end of tests
8933 fix test leaks showing in FC5
8935 2006-04-29 Stefan Kost <ensonic@users.sf.net>
8937 * plugins/elements/gsttypefindelement.c:
8938 (gst_type_find_element_handle_event):
8939 reverted wrong change and reflowed code to avoid others falling into
8940 this trap
8942 2006-04-28 Stefan Kost <ensonic@users.sf.net>
8944 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_event):
8945 fix changelog entry about last collectpads change,
8946 add notes about proper fix
8948 2006-04-28 Stefan Kost <ensonic@users.sf.net>
8950 * gst/gst.c:
8951 * gst/gstregistry.c: (gst_registry_scan_path_level),
8952 (gst_registry_scan_path):
8953 * gst/gstregistry.h:
8954 only write out registry if it has changed, fixes #338339
8956 2006-04-28 Stefan Kost <ensonic@users.sf.net>
8958 * gst/gstbin.c:
8959 * gst/gstpipeline.c:
8960 * plugins/elements/gstcapsfilter.c:
8961 * plugins/elements/gstfakesink.c:
8962 * plugins/elements/gstfakesrc.c:
8963 * plugins/elements/gstfdsink.c:
8964 * plugins/elements/gstfdsrc.c:
8965 * plugins/elements/gstfilesink.c:
8966 * plugins/elements/gstfilesrc.c:
8967 * plugins/elements/gstidentity.c:
8968 * plugins/elements/gstqueue.c:
8969 * plugins/elements/gsttee.c:
8970 * plugins/elements/gsttypefindelement.c:
8971 (gst_type_find_element_handle_event):
8972 make GstElementDetails const
8974 2006-04-28 Stefan Kost <ensonic@users.sf.net>
8976 * libs/gst/base/gstbasesink.c: (gst_base_sink_event):
8977 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_base_init),
8978 (gst_collect_pads_is_collected), (gst_collect_pads_event):
8979 more detailed debug and formatting cleanup,
8980 forward newsegments to src-pad (so that e.g. adder not eats them)
8982 2006-04-28 Stefan Kost <ensonic@users.sf.net>
8984 * gst/gstutils.c: (gst_element_link_pads):
8985 cleanup double code
8987 2006-04-28 Stefan Kost <ensonic@users.sf.net>
8989 * libs/gst/controller/gstcontroller.c:
8990 (gst_controller_sync_values):
8991 some little tuning
8992 * tests/check/libs/controller.c: (GST_START_TEST),
8993 (gst_controller_suite):
8994 a new test for live value handling
8996 2006-04-28 Wim Taymans <wim@fluendo.com>
8998 * gst/gstutils.c: (push_and_ref):
8999 Added some more docs.
9000 Fix refcount issue whith gst_element_found_tags() helper
9001 function. Fixes #338335
9003 * tests/check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
9004 Added testsuite for gst_element_found_tags().
9006 2006-04-28 Michael Smith <msmith@fluendo.com>
9008 * gst/gstvalue.c: (gst_value_serialize_flags):
9009 Avoid NULL dereference when trying to serialize flags containing
9010 invalid values.
9012 2006-04-28 Michael Smith <msmith@fluendo.com>
9014 * plugins/elements/gsttypefindelement.c:
9015 (gst_type_find_element_handle_event):
9016 If we get EOS before any data is accumulated, don't use
9017 uninitialised local variables.
9019 2006-04-28 Michael Smith <msmith@fluendo.com>
9021 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
9022 (gst_dp_event_from_packet):
9023 Fixes in reading/writing events over GDP (not currently used?) -
9024 dereferencing NULL events for unknown/invalid event types, memory
9025 leak, and change g_warning to GST_WARNING.
9027 2006-04-28 Wim Taymans <wim@fluendo.com>
9029 * libs/gst/base/gstbasesink.c: (gst_base_sink_is_too_late),
9030 (gst_base_sink_do_render_stats), (gst_base_sink_render_object),
9031 (gst_base_sink_get_position), (gst_base_sink_change_state):
9032 When frame dropping is enabled, we should not ignore frames
9033 without a duration.
9034 Update some documentation.
9036 2006-04-28 Wim Taymans <wim@fluendo.com>
9038 * libs/gst/base/gstbasesrc.c: (gst_base_src_perform_seek),
9039 (gst_base_src_send_event), (gst_base_src_change_state):
9040 Documentation updates.
9042 2006-04-28 Wim Taymans <wim@fluendo.com>
9044 * plugins/elements/gstfdsink.c: (gst_fd_sink_render),
9045 (gst_fd_sink_check_fd), (gst_fd_sink_update_fd):
9046 handle EAGAIN, EINTR and short writes correctly. Also clean
9047 up some error cases, avoid a deadlock on bad file descriptors and
9048 use GST_DEBUG_OBJECT.
9049 Fixes #339843
9051 2006-04-28 Wim Taymans <wim@fluendo.com>
9053 * gst/gstvalue.c: (gst_value_serialize_buffer),
9054 (gst_value_deserialize_buffer):
9055 Don't try to serialize a GValue with a NULL buffer.
9056 Fixes #339821.
9058 * tests/check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
9059 Added check for serialisation of NULL buffers.
9061 2006-04-28 Wim Taymans <wim@fluendo.com>
9063 * gst/gstminiobject.c: (gst_value_take_mini_object):
9064 Taking a NULL miniobject is valid, fix the case where
9065 we try to unref the NULL miniobject.
9067 2006-04-28 Wim Taymans <wim@fluendo.com>
9069 Patch by: Stefan Kost <ensonic at sonicpulse dot de>
9071 * gst/gstbin.c: (gst_bin_handle_message_func):
9072 Update docs.
9073 Don't leak bin refcount when a state recalc is
9074 in progress and we delay another one #339808.
9076 2006-04-28 Wim Taymans <wim@fluendo.com>
9078 * docs/design/part-TODO.txt:
9079 Mention QoS as an ongoing work item.
9081 * docs/design/part-buffering.txt:
9082 New doc about buffering that needs to be fleshed out
9083 at some point.
9085 * docs/design/part-qos.txt:
9086 More QoS policy for decoders/demuxers/transforms
9088 * docs/design/part-trickmodes.txt:
9089 Small update.
9091 2006-04-28 Thomas Vander Stichele <thomas at apestaart dot org>
9093 * configure.ac:
9094 back to HEAD
9096 === release 0.10.5 ===
9098 2006-04-28 Thomas Vander Stichele <thomas at apestaart dot org>
9100 * configure.ac:
9101 releasing 0.10.5, "Fogo"
9103 2006-04-22 Thomas Vander Stichele <thomas at apestaart dot org>
9105 patch by: Wim Taymans
9107 * gst/gstpad.c: (gst_pad_init), (gst_pad_configure_sink),
9108 (gst_pad_configure_src), (gst_pad_push):
9109 * gst/gstpipeline.c: (gst_pipeline_init):
9110 Fix internal data flow errors. Fixes #338711.
9112 2006-04-12 Wim Taymans <wim@fluendo.com>
9114 * tests/check/gst/gstelement.c: (GST_START_TEST):
9115 Don't leak the factory.
9117 2006-04-12 Thomas Vander Stichele <thomas at apestaart dot org>
9119 * configure.ac:
9120 * win32/common/config.h:
9121 prerelease
9123 2006-04-12 Tim-Philipp Müller <tim at centricular dot net>
9125 * libs/gst/controller/gstcontroller.c: (gst_controller_unset),
9126 (gst_controller_unset_all):
9127 Free allocated GstTimedValues when freeing list nodes.
9128 Should fix leaks 'make check-valgrind' complains about.
9130 * win32/common/libgstcontroller.def:
9131 Add gst_controller_unset_all.
9133 2006-04-11 Stefan Kost <ensonic@users.sf.net>
9135 * docs/libs/gstreamer-libs-sections.txt:
9136 * libs/gst/controller/gstcontroller.c: (gst_controller_unset),
9137 (gst_controller_unset_all):
9138 * libs/gst/controller/gstcontroller.h:
9139 API: Added new method gst_controller_unset_all()
9140 fixed gst_controller_unset()
9141 * tests/check/libs/controller.c: (GST_START_TEST),
9142 (gst_controller_suite):
9143 Added two testcases for new and fixed method
9145 2006-04-11 Tim-Philipp Müller <tim at centricular dot net>
9147 * libs/gst/net/gstnettimepacket.c: (gst_net_time_packet_send):
9148 MSG_DONTWAIT is not defined on Cygwin, so work
9149 around that (fixes #317048).
9151 2006-04-11 Wim Taymans <wim@fluendo.com>
9153 * gst/gstelementfactory.c: (gst_element_register),
9154 (gst_element_factory_create), (gst_element_factory_make):
9155 Some cleanups.
9156 Fixed a FIXME.
9157 Updated docs (Fixes #131079)
9159 * gst/gstpluginfeature.c: (gst_plugin_feature_load):
9160 Small cleanups.
9162 * tests/check/gst/gstelement.c: (GST_START_TEST),
9163 (gst_element_suite):
9164 Added testcase for elementfactory class field.
9166 2006-04-10 Wim Taymans <wim@fluendo.com>
9168 * gst/gstsegment.c:
9169 Added some more docs.
9171 * libs/gst/base/gstbasesink.c: (gst_base_sink_perform_qos),
9172 (gst_base_sink_reset_qos):
9173 Calculate more accurate rate values.
9175 2006-04-09 Sebastien Moutte <sebastien@moutte.net>
9177 * gst/gst_private.h:
9178 add a new #ifdef to use __declspec(dllimport) only for
9179 other modules and not for gstreamer core
9180 * gst/gstbasesink.c: (gst_base_sink_perform_qos):
9181 use gst_guint64_to_gdouble for conversion
9182 * win32/common/libgstreamer.def:
9183 add new exported functions
9184 * win32/vs6/gst_inspect.dsp:
9185 * win32/vs6/gst_launch.dsp:
9186 * win32/vs6/libgstbase.dsp:
9187 * win32/vs6/libgstcontroller.dsp:
9188 * win32/vs6/libgstcoreelements.dsp:
9189 * win32/vs6/libgstdataprotocol.dsp:
9190 * win32/vs6/libgstnet.dsp:
9191 update project files
9193 2006-04-08 Stefan Kost <ensonic@users.sf.net>
9195 * gst/gstbuffer.c: (gst_subbuffer_class_init):
9196 * gst/gstclock.c: (gst_clock_class_init):
9197 * gst/gstelement.c: (gst_element_class_init):
9198 * gst/gstindex.c: (gst_index_class_init):
9199 * gst/gstindexfactory.c: (gst_index_factory_class_init):
9200 * gst/gstobject.c: (gst_object_class_init),
9201 (gst_signal_object_class_init):
9202 * gst/gstpad.c: (gst_pad_class_init):
9203 * gst/gstpadtemplate.c: (gst_pad_template_class_init):
9204 * gst/gstpluginfeature.c: (gst_plugin_feature_class_init):
9205 * gst/gstregistry.c: (gst_registry_class_init):
9206 * gst/gstsystemclock.c: (gst_system_clock_class_init):
9207 * gst/gsttask.c: (gst_task_class_init):
9208 * gst/gstxml.c: (gst_xml_class_init):
9209 * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init):
9210 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
9211 (gst_base_src_loop):
9212 * libs/gst/controller/gstcontroller.c:/
9213 (_gst_controller_class_init):
9214 * plugins/elements/gstfdsrc.c: (gst_fd_src_class_init):
9215 * plugins/indexers/gstfileindex.c: (gst_file_index_class_init):
9216 * plugins/indexers/gstmemindex.c: (gst_mem_index_class_init):
9217 * tests/old/examples/plugins/example.c: (gst_example_class_init):
9218 * tests/old/testsuite/threads/signals.c: (gst_test_class_init):
9219 Fix #337365 (g_type_class_ref <-> g_type_class_peek_parent)
9221 2006-04-08 Tim-Philipp Müller <tim at centricular dot net>
9223 * gst/gstpad.c: (gst_pad_link):
9224 Must set peer pads before calling the link function, otherwise
9225 a task started from a link function might get a flow-not-linked
9226 result when trying to push because the other thread where the
9227 linking happens hasn't had a chance to set the peers yet. This
9228 might happen for example when a queue gets linked to a downstream
9229 element, as queue starts a streaming task when its source pad
9230 gets linked. Happens in real life when playing back flac/musepack
9231 files in playbin (#332390).
9233 2006-04-08 Stefan Kost <ensonic@users.sf.net>
9235 * gst/gstindex.h:
9236 * gst/gstxml.h:
9237 * libs/gst/base/gstadapter.h:
9238 * libs/gst/base/gstbasesink.h:
9239 * libs/gst/base/gstbasesrc.h:
9240 * libs/gst/base/gstbasetransform.h:
9241 * libs/gst/base/gstcollectpads.h:
9242 * libs/gst/base/gstpushsrc.h:
9243 Fix broken GObject macros
9245 2006-04-07 Wim Taymans <wim@fluendo.com>
9247 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times):
9248 Initialize start and stop times, thanks valgrind.
9250 2006-04-07 Wim Taymans <wim@fluendo.com>
9252 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times):
9253 Be a bit nicer to badly behaving upstream elements that expect
9254 us to deal with non TIME segments and timestamps (such as fakesrc
9255 in the testsuite).
9257 2006-04-07 Wim Taymans <wim@fluendo.com>
9259 * gst/gstbus.c:
9260 Small documentation clarification about the signal watch.
9262 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times),
9263 (gst_base_sink_wait_clock), (gst_base_sink_do_sync),
9264 (gst_base_sink_perform_qos), (gst_base_sink_reset_qos),
9265 (gst_base_sink_do_render_stats), (gst_base_sink_render_object),
9266 (gst_base_sink_get_position_last),
9267 (gst_base_sink_get_position_paused), (gst_base_sink_change_state):
9268 Convert and store timestamps in stream time and running time, the
9269 raw timestamps are not useful, also document this better.
9270 Use different window sizes for good and bad QoS observations so
9271 we react to badness a little quicker.
9272 Keep track of the amount of rendered and dropped buffers.
9273 Send QoS timestamps in running time.
9275 * libs/gst/base/gstbasetransform.c:
9276 (gst_base_transform_sink_eventfunc),
9277 (gst_base_transform_handle_buffer):
9278 Compare QoS timestamps against running time.
9280 2006-04-06 Tim-Philipp Müller <tim at centricular dot net>
9282 * gst/gstpad.c:
9283 Typo fixes in docs.
9285 2006-04-06 Michael Smith <msmith@fluendo.com>
9287 * gst/gstpad.c: (gst_pad_set_property):
9288 Use g_value_get_object() instead of g_value_dup_gst_object(),
9289 to avoid double-reffing the pad template (which we then sink,
9290 so this worked previously if (and only if) the pad template
9291 was floating.
9293 * gst/gstpadtemplate.c: (gst_pad_template_init),
9294 (gst_pad_template_pad_created):
9295 Never return floating references to pad templates, create
9296 them as initially-sunken.
9298 Document an extra function (and make this stop sinking our
9299 pad template, since that is now guaranteed to do nothing,
9300 since we created it sunken).
9302 * gst/gstghostpad.c:
9303 Fix docs typo.
9305 2006-04-06 Tim-Philipp Müller <tim at centricular dot net>
9307 * gst/gstinfo.c: (__gst_in_valgrind):
9308 Add some newlines.
9310 * plugins/elements/gsttypefindelement.c:
9311 (gst_type_find_element_chain):
9312 Don't leak buffer caps.
9314 2006-04-06 Michael Smith <msmith@fluendo.com>
9316 * gst/parse/grammar.y:
9317 Fix a leak in parse-launch for any source-or-sink named element
9318 references used.
9320 * tests/check/pipelines/parse-launch.c: (expected_fail_pipe):
9321 Unref the pipeline if it exists after we've failed parsing.
9323 2006-04-05 Michael Smith <msmith@fluendo.com>
9325 * gst/gstpipeline.c: (gst_pipeline_init):
9326 When we create a pipeline bus, initially create it in flushing mode.
9327 Fixes leaks in at least one test, and makes a new pipeline work the
9328 same as one that has gone to READY and then back to NULL.
9330 * gst/gstelement.c:
9331 Typo fix in docs.
9333 2006-04-05 Michael Smith <msmith@fluendo.com>
9335 * tests/check/gst/gstghostpad.c: (GST_START_TEST):
9336 Unref a pad we reffed.
9337 * tests/check/gst/gstutils.c: (GST_START_TEST):
9338 Unref bins
9340 2006-04-05 Michael Smith <msmith@fluendo.com>
9342 * gst/gstquery.c: (gst_query_set_formats),
9343 (gst_query_set_formatsv):
9344 Fix leaking GValues in queries, as shown by valgrind/testsuite.
9346 2006-04-05 Michael Smith <msmith@fluendo.com>
9348 * tests/check/generic/sinks.c: (GST_START_TEST):
9349 Fix a variety of memleaks in sinks check, which are only sometimes
9350 shown by running the tests under valgrind (weird?).
9352 2006-04-05 Jan Schmidt <thaytan@mad.scientist.com>
9354 * docs/version.entities.in:
9355 Fix the substituted entity name after thomas' changes on the
9356 weekend.
9358 2006-04-05 Zaheer Abbas Merali <zaheerabbas at merali dot org>
9360 * gst/gstinfo.c: (__gst_in_valgrind): Use printf instead of
9361 VALGRIND_PRINTF
9363 2006-04-05 Andy Wingo <wingo@pobox.com>
9365 * gst/gstpad.c (gst_pad_set_blocked_async): More debug.
9367 * libs/gst/base/gstbasetransform.c
9368 (gst_base_transform_sink_eventfunc): When resetting our segment on
9369 FLUSH_STOP, also update the flag saying we haven't seen a
9370 newsegment.
9372 2006-04-04 Tim-Philipp Müller <tim at centricular dot net>
9374 Patch by: Paolo Borelli <pborelli at katamail dot com>
9376 * gst/gstplugin.c: (gst_plugin_finalize), (gst_plugin_class_init),
9377 (gst_plugin_check_license):
9378 minor clean-ups: G_DEFINE_TYPE already takes care of the
9379 parent_class stuff, no need to do it twice. Mark array of
9380 license strings as constant. (#337103)
9382 2006-04-04 Michael Smith <msmith@fluendo.com>
9384 * tools/gst-inspect.c: (print_element_list):
9385 Free the right plugin list; fixes a memory leak.
9387 2006-04-04 Tim-Philipp Müller <tim at centricular dot net>
9389 Patch by: Mark Nauwelaerts <manauw at skynet dot be>
9391 * plugins/elements/gstfilesink.c: (gst_file_sink_render):
9392 Don't error out on empty buffers (#336945).
9394 2006-04-04 Jan Schmidt <thaytan@mad.scientist.com>
9396 * docs/libs/gstreamer-libs-sections.txt:
9397 * gst/gsttaglist.c:
9398 * libs/gst/base/gstbasesink.c:
9399 * libs/gst/base/gstbasesink.h:
9400 * libs/gst/base/gstbasesrc.c:
9401 * libs/gst/base/gstbasesrc.h:
9402 Documentation updates. Make BaseSink and BaseSrc docs contain the
9403 class structure so that people can actually see the prototypes for
9404 virtual functions they're supposed to be overriding.
9406 2006-04-04 Tim-Philipp Müller <tim at centricular dot net>
9408 * plugins/elements/gsttypefindelement.c:
9409 (gst_type_find_element_chain):
9410 More debug info; when skipping typefinding, send cached
9411 events in all cases.
9413 2006-04-01 Thomas Vander Stichele <thomas at apestaart dot org>
9415 * configure.ac:
9416 use new AS_VERSION and AS_NANO macros
9417 * gst/gst-i18n-lib.h:
9418 * gst/gst.c:
9419 * gst/gsterror.c:
9420 * gst/gstversion.h.in:
9421 * win32/common/config.h:
9422 * win32/common/config.h.in:
9423 update accordingly
9425 2006-03-31 Michael Smith <msmith@fluendo.com>
9427 * plugins/elements/gsttypefindelement.c:
9428 (gst_type_find_element_chain):
9429 Do not typefind content if the buffers already have caps.
9430 Neccesary for icydemux (#333657), and the right thing to do anyway.
9432 2006-03-30 Wim Taymans <wim@fluendo.com>
9434 * libs/gst/base/gstbasesink.c: (gst_base_sink_init),
9435 (gst_base_sink_finalize), (gst_base_sink_set_qos_enabled),
9436 (gst_base_sink_is_qos_enabled), (gst_base_sink_do_sync),
9437 (gst_base_sink_record_qos_observation),
9438 (gst_base_sink_perform_qos), (gst_base_sink_reset_qos),
9439 (gst_base_sink_is_too_late), (gst_base_sink_render_object),
9440 (gst_base_sink_change_state):
9441 More QoS measurements as described in the design doc.
9442 Get rid of ringbuffer with observations, running average is
9443 more simple and equally good.
9444 Calculates valid proportion now.
9445 Added beginning of flood measurement.
9447 2006-03-29 Wim Taymans <wim@fluendo.com>
9449 * docs/design/part-qos.txt:
9450 * gst/gstclock.c:
9451 Small documentation updates and additions.
9453 2006-03-29 Wim Taymans <wim@fluendo.com>
9455 * libs/gst/base/gstbasesrc.c: (gst_base_src_finalize),
9456 (gst_base_src_send_event), (gst_base_src_loop),
9457 (gst_base_src_change_state):
9458 Perform the EOS logic when we reach the segment stop position.
9459 Fix compilation on gcc4.1
9461 2006-03-29 Wim Taymans <wim@fluendo.com>
9463 Patch by: Tommi Myöhänen <ext-tommi dot myohanen at nokia dot com>
9465 * plugins/elements/gstqueue.c: (gst_queue_init),
9466 (gst_queue_locked_flush), (gst_queue_handle_sink_event),
9467 (gst_queue_set_property):
9468 * plugins/elements/gstqueue.h:
9469 In queue, when EOS is received, if minimum threshold > max_size -
9470 current_level, there is chance that queue blocks forever in conditional
9471 item del wait. This is because the queue is not emptied completely due
9472 to minimum threshold. Here is another approach. Instead of setting
9473 cur_levels to max in EOS, just zero all minimum threshold levels. This
9474 should make sure that queue gives out all data. When going to READY
9475 (stop) state, just reset the original minimum threshold levels.
9476 Fixes #336336.
9478 2006-03-29 Tim-Philipp Müller <tim at centricular dot net>
9480 * plugins/elements/gsttypefindelement.c: (stop_typefinding),
9481 (gst_type_find_element_handle_event),
9482 (gst_type_find_element_send_cached_events),
9483 (gst_type_find_element_change_state):
9484 * plugins/elements/gsttypefindelement.h:
9485 When typefinding is done in push mode, we should cache
9486 events we receive during typefinding instead of just
9487 dropping them (e.g. newsegment, custom events from
9488 dvdreadsrc etc.) and then send them out once we've
9489 determined the type of the stream (and decodebin
9490 has had a chance to plug in a decoder/demuxer).
9492 2006-03-27 Wim Taymans <wim@fluendo.com>
9494 * docs/design/part-qos.txt:
9495 First QoS ideas.
9497 2006-03-27 Wim Taymans <wim@fluendo.com>
9499 Inspired by a patch of: Lutz Mueller <lutz at topfrose dot de>
9501 * libs/gst/base/gstbasesrc.c: (gst_base_src_finalize),
9502 (gst_base_src_send_event), (gst_base_src_change_state):
9503 Handle element seek correctly when we are streaming.
9504 Fixes #326998.
9506 2006-03-24 Michael Smith <msmith@fluendo.com>
9508 * docs/faq/gst-uninstalled:
9509 Set up LD_LIBRARY_PATH to point at all the gstreamer libs. This will
9510 allow you to correctly run intalled applications built against old
9511 core, using plugins that require updated core (e.g. running
9512 installed totem against a full uninstalled gstreamer stack)
9514 2006-03-24 Stefan Kost <ensonic@users.sf.net>
9516 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_is_collected):
9517 more debug details
9519 2006-03-24 Wim Taymans <wim@fluendo.com>
9521 * docs/gst/gstreamer-sections.txt:
9522 Rearrange the order of the methods so that related methods
9523 are grouped together in sections.
9525 2006-03-24 Stefan Kost <ensonic@users.sf.net>
9527 * gst/gstelement.c:
9528 Little clarification in the docs
9530 2006-03-24 Stefan Kost <ensonic@users.sf.net>
9532 * docs/README:
9533 formatting fix
9534 * plugins/elements/gstidentity.c:
9535 * plugins/elements/gstqueue.c:
9536 * plugins/elements/gsttee.c:
9537 * plugins/elements/gsttypefindelement.c:
9538 GST_ELEMENT_DETAILS formatting
9540 2006-03-24 Wim Taymans <wim@fluendo.com>
9542 * libs/gst/base/gstbasesink.h:
9543 Only add fields, not insert or we break ABI.
9545 2006-03-23 Tim-Philipp Müller <tim at centricular dot net>
9547 * win32/common/libgstbase.def:
9548 * win32/common/libgstreamer.def:
9549 Update, add recently added functions.
9551 2006-03-23 Tim-Philipp Müller <tim at centricular dot net>
9553 * docs/gst/gstreamer-sections.txt:
9554 * gst/gstutils.c: (gst_pad_query_peer_position),
9555 (gst_pad_query_peer_duration), (gst_pad_query_peer_convert):
9556 * gst/gstutils.h:
9557 API: add some new utility functions:
9558 - gst_pad_query_peer_position()
9559 - gst_pad_query_peer_duration()
9560 - gst_pad_query_peer_convert()
9562 2006-03-23 Wim Taymans <wim@fluendo.com>
9564 * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init),
9565 (gst_base_sink_init), (gst_base_sink_finalize),
9566 (gst_base_sink_set_qos_enabled), (gst_base_sink_is_qos_enabled),
9567 (gst_base_sink_set_property), (gst_base_sink_get_property),
9568 (gst_base_sink_commit_state), (gst_base_sink_get_sync_times),
9569 (gst_base_sink_wait_clock), (gst_base_sink_do_sync),
9570 (gst_base_sink_add_qos_observation), (gst_base_sink_send_qos),
9571 (gst_base_sink_perform_qos), (gst_base_sink_reset_qos),
9572 (gst_base_sink_is_too_late), (gst_base_sink_render_object),
9573 (gst_base_sink_preroll_object), (gst_base_sink_event),
9574 (gst_base_sink_chain_unlocked), (gst_base_sink_get_position_last),
9575 (gst_base_sink_get_position_paused), (gst_base_sink_get_position),
9576 (gst_base_sink_query), (gst_base_sink_change_state):
9577 Decouple max-lateness and the fact that QoS messages are generated
9578 with a new property (qos).
9579 added API: GstBaseSink::async_play()
9580 Add vmethod so subclasses can be notified of ASYNC playing
9581 state changes.
9582 Collect timestamp start and stop to report better current
9583 position in EOS/PLAYING/PAUSED/READY/NULL.
9584 Refactor QoS/frame dropping and other measurements.
9585 API: GstBaseSrc::qos
9586 Fixes #326311
9588 * libs/gst/base/gstbasesink.h:
9589 Added Private struct.
9590 API: gst_base_sink_set_qos_enabled()
9591 API: gst_base_sink_is_qos_enabled()
9593 2006-03-23 Tim-Philipp Müller <tim at centricular dot net>
9595 * gst/gstregistryxml.c: (gst_registry_xml_read_cache):
9596 If compiling against GLib-2.8 or newer, try to read the
9597 registry file using GMappedFile first before falling back
9598 to fopen() + fread() (#332151).
9600 2006-03-22 Wim Taymans <wim@fluendo.com>
9602 * gst/gstinfo.c: (gst_debug_set_active),
9603 (gst_debug_category_set_threshold):
9604 Disable debugging unless explicitly activated.
9605 Fixes #335480.
9607 2006-03-22 Wim Taymans <wim@fluendo.com>
9609 * gst/gstelement.c: (gst_element_set_locked_state),
9610 (gst_element_dispose):
9611 Cleanup the error case.
9613 * gst/gstobject.c: (gst_object_dispose):
9614 print a critical when some object was disposed with
9615 a parent, also revive the object since it might
9616 crash the parent.
9618 2006-03-22 Tim-Philipp Müller <tim at centricular dot net>
9620 * tools/gst-launch.1.in:
9621 Fix another typo.
9623 2006-03-21 Thomas Vander Stichele <thomas at apestaart dot org>
9625 * configure.ac:
9626 * tests/check/Makefile.am:
9627 disable some tests when we don't have a registry
9628 * tests/check/gst/gstutils.c: (gst_utils_suite):
9629 don't build the part that needs parsing
9631 2006-03-21 Thomas Vander Stichele <thomas at apestaart dot org>
9633 * gst/Makefile.am
9634 * tests/examples/Makefile.am:
9635 fix --disable-parse build
9637 2006-03-21 Tim-Philipp Müller <tim at centricular dot net>
9639 * tools/gst-feedback.1.in:
9640 Fix typo: s/feeback/feedback/ (#133494).
9642 2006-03-21 Tim-Philipp Müller <tim at centricular dot net>
9644 * tools/Makefile.am:
9645 * tools/gst-launch.1.in:
9646 Add FILES section and correct entry about GST_REGISTRY_PATH
9647 environment variable (#133495; #133494).
9649 2006-03-21 Tim-Philipp Müller <tim at centricular dot net>
9651 * tools/Makefile.am:
9652 * tools/gst-md5sum.1.in:
9653 * tools/gst-md5sum.c:
9654 Remove gst-md5sum and man page (the md5sink element
9655 required was removed ages ago)
9657 2006-03-21 Tim-Philipp Müller <tim at centricular dot net>
9659 * gst/gststructure.c: (gst_structure_id_set_value):
9660 Make sure that string fields in structures/taglists
9661 contain valid UTF-8 - we don't want to pass rubbish to
9662 applications because of a buggy plugin (cp. #334167).
9664 2006-03-21 Edward Hervey <edward@fluendo.com>
9666 * gst/gstbin.c: (gst_bin_dispose), (gst_bin_provide_clock_func),
9667 (gst_bin_handle_message_func):
9668 * gst/gstclock.c: (gst_clock_dispose), (gst_clock_set_master):
9669 * gst/gstelement.c: (gst_element_set_clock), (gst_element_dispose),
9670 (gst_element_set_bus_func):
9671 * gst/gstghostpad.c: (gst_proxy_pad_dispose):
9672 * gst/gstminiobject.c: (gst_value_set_mini_object),
9673 (gst_value_take_mini_object):
9674 * gst/gstpad.c: (gst_pad_set_pad_template):
9675 * gst/gstpipeline.c: (gst_pipeline_dispose),
9676 (gst_pipeline_use_clock), (gst_pipeline_auto_clock):
9677 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_pop),
9678 (gst_collect_pads_chain):
9679 * libs/gst/net/gstnettimeprovider.c:
9680 (gst_net_time_provider_set_property):
9681 Series of fixes for dereferenced pointers that gcc 4.1 complains about.
9682 It's in fact all issues with gst_*object_replace().
9684 2006-03-21 Tim-Philipp Müller <tim at centricular dot net>
9686 Patch by: Loïc Minier <lool + gnome at via dot ecp dot fr>
9688 * pkgconfig/gstreamer-check-uninstalled.pc.in:
9689 * pkgconfig/gstreamer-check.pc.in:
9690 Use @CHECK_LIBS@ here instead of hard-coding -lcheck (#334109).
9692 2006-03-21 Edward Hervey <edward@fluendo.com>
9694 * gst/gstbuffer.h:
9695 * gst/gstevent.h:
9696 * gst/gstmessage.h:
9697 gst_[buffer|event|message]_ref() macros are replaced by a static
9698 inline functions because gcc-4.1 will about if the return value
9699 isn't used.
9700 * tests/check/gst/gstevent.c: (event_probe):
9701 gst_event_ref now has to be given a GstEvent* , fix check accordingly.
9703 2006-03-20 Jan Schmidt <thaytan@mad.scientist.com>
9705 * gst/gstutils.h:
9706 Add G_UNLIKELY to our boilerplate to optimise the 'already registered
9707 the type' case. (Closes: #335195 for now). In the future, when we
9708 depend on GLib 2.10, we could also intern the type name using
9709 g_intern_static_string()
9711 2006-03-20 Wim Taymans <wim@fluendo.com>
9713 * gst/gstbin.c: (gst_bin_handle_message_func),
9714 (bin_query_max_init), (bin_query_position_fold),
9715 (bin_query_position_done), (gst_bin_query):
9716 Position query should also take max of all streams.
9718 2006-03-20 Wim Taymans <wim@fluendo.com>
9720 * plugins/elements/gstfakesrc.c: (gst_fake_src_class_init),
9721 (gst_fake_src_finalize):
9722 Fix leaks in fakesrc.
9724 * tests/check/pipelines/parse-launch.c: (GST_START_TEST):
9725 Fix leaks in the testcase.
9727 2006-03-19 Sebastien Moutte <sebastien@moutte.net>
9729 * gst/gst_private.h:
9730 add win32 specific import decoration(__declspec(dllimport))
9731 for all extern GstDebugCategory * variables
9732 * win32/common/libgstbase.def:
9733 * win32/common/libgstcontroller.def:
9734 * win32/common/libgstreamer.def:
9735 Add some exports, remove empty lines
9736 * win32/common/libgstdataprotocol.def:
9737 * win32/common/libgstdataprotocol.dsp:
9738 * win32/common/libgstnet.def:
9739 * win32/common/libgstnet.dsp:
9740 new project files and exportation files added
9742 2006-03-19 Wim Taymans <wim@fluendo.com>
9744 * tests/check/libs/basesrc.c: (eos_event_counter):
9745 Use proper return value for probe.
9747 2006-03-17 Wim Taymans <wim@fluendo.com>
9749 * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_alloc_buffer_full),
9750 (gst_pad_push):
9751 Don't leak buffers, caps and pads on negotiation errors.
9753 2006-03-16 Stefan Kost <ensonic@users.sf.net>
9755 * docs/faq/cvs.xml:
9756 * docs/faq/dependencies.xml:
9757 * docs/faq/developing.xml:
9758 * docs/faq/faq.xml:
9759 * docs/faq/general.xml:
9760 * docs/faq/getting.xml:
9761 * docs/faq/legal.xml:
9762 * docs/faq/troubleshooting.xml:
9763 * docs/faq/using.xml:
9764 Faq review and update.
9766 2006-03-16 Jan Schmidt <thaytan@mad.scientist.com>
9768 * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_alloc_buffer_full),
9769 (gst_pad_push):
9770 Don't pound the cpu to pieces by checking get_caps when accept_caps
9771 is called with the same caps as the pad already has.
9772 Use GST_DEBUG_OBJECT when outputting caps change information.
9774 2006-03-15 Wim Taymans <wim@fluendo.com>
9776 * gst/gstclock.c: (gst_clock_class_init):
9777 Fix docs.
9779 2006-03-15 Jan Schmidt <thaytan@mad.scientist.com>
9781 * gst/gstbuffer.h:
9782 Documentation fix.
9784 * gst/gstpad.c: (gst_pad_init), (gst_pad_acceptcaps_default),
9785 (gst_pad_accept_caps), (gst_pad_configure_sink),
9786 (gst_pad_configure_src), (gst_pad_chain), (gst_pad_push):
9787 Make the default acceptcaps behaviour be to check the requested
9788 caps against the gst_pad_get_caps output.
9790 Ensure that gst_pad_accept_caps is used to check caps when a pad
9791 doesn't have a setcaps function, so that pads automatically refuse
9792 caps that they don't allow in their pad template. (Fixes #332986)
9794 When a buffer with attached caps is pushed, ensure that the source
9795 pad receives those caps even if the element didn't call
9796 gst_pad_set_caps first.
9798 2006-03-15 Wim Taymans <wim@fluendo.com>
9800 * libs/gst/base/gstadapter.c:
9801 Add some docs.
9803 2006-03-15 Tim-Philipp Müller <tim at centricular dot net>
9805 * win32/common/libgstbase.def:
9806 * win32/common/libgstcontroller.def:
9807 * win32/common/libgstreamer.def:
9808 Add a whole bunch of missing functions (#334434).
9810 2006-03-14 Wim Taymans <wim@fluendo.com>
9812 * libs/gst/base/gstbasesink.c: (gst_base_sink_configure_segment),
9813 (gst_base_sink_get_sync_times), (gst_base_sink_wait_clock),
9814 (gst_base_sink_do_sync), (gst_base_sink_do_qos):
9815 Better debug info when we receive a segment event.
9816 Reorganize a bit so we can pass the get_times() results around.
9817 Use the segment format when calculating the running time.
9818 Don't do QoS is sync is disabled or we have no clock or the
9819 element does not want us to sync to the clock.
9820 Don't drop buffers if QoS is disabled for now.
9822 2006-03-14 Wim Taymans <wim@fluendo.com>
9824 * gst/gstclock.c: (gst_clock_class_init), (do_linear_regression):
9825 Marked the stats property as unimplemented so people don't get
9826 wild ideas.
9827 Add debug message when regression goes wrong.
9828 Added some more docs.
9830 2006-03-14 Wim Taymans <wim@fluendo.com>
9832 * gst/gstsegment.c: (gst_segment_to_stream_time):
9833 Return correct return type in case of errors.
9835 2006-03-14 Wim Taymans <wim@fluendo.com>
9837 * gst/gstformat.c: (gst_format_get_name), (gst_format_to_quark):
9838 Don't segfault on invalid formats.
9840 2006-03-14 Tim-Philipp Müller <tim at centricular dot net>
9842 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times):
9843 Can't use gst_segment_to_running_time() when the segment
9844 is not in GST_TIME_FORMAT (like with filesink, for example).
9845 Stops flac encoding pipelines from spewing critical warnings
9846 at EOS (#331248).
9848 2006-03-14 Tim-Philipp Müller <tim at centricular dot net>
9850 * gst/gstpipeline.c: (gst_pipeline_class_init):
9851 Add 'Since: 0.10.5' to gtk-doc blurb for added property.
9853 * plugins/elements/gsttypefindelement.c:
9854 (gst_type_find_element_handle_event):
9855 Don't try to typefind empty streams.
9857 2006-03-14 Wim Taymans <wim@fluendo.com>
9859 * libs/gst/base/gstbasesink.c: (gst_base_sink_do_sync),
9860 (gst_base_sink_do_qos):
9861 Separate QoS calculation.
9862 Only drop buffers when lateness is bigger than the
9863 duration of the buffer.
9865 2006-03-13 Wim Taymans <wim@fluendo.com>
9867 * gst/gstpipeline.c: (gst_pipeline_set_property),
9868 (gst_pipeline_get_property), (do_pipeline_seek),
9869 (gst_pipeline_change_state), (gst_pipeline_set_delay),
9870 (gst_pipeline_get_delay):
9871 Don't deadlock when reading properties.
9873 2006-03-13 Wim Taymans <wim@fluendo.com>
9875 * libs/gst/base/gstbasetransform.c:
9876 (gst_base_transform_class_init), (gst_base_transform_init),
9877 (gst_base_transform_sink_event),
9878 (gst_base_transform_sink_eventfunc),
9879 (gst_base_transform_src_event), (gst_base_transform_src_eventfunc),
9880 (gst_base_transform_handle_buffer), (gst_base_transform_chain),
9881 (gst_base_transform_set_property),
9882 (gst_base_transform_get_property),
9883 (gst_base_transform_change_state), (gst_base_transform_update_qos),
9884 (gst_base_transform_set_qos_enabled),
9885 (gst_base_transform_is_qos_enabled):
9886 * libs/gst/base/gstbasetransform.h:
9887 Make basetransform virtual method for src events too.
9888 Handle QOS in basetransform.
9889 API: gst_base_transform_update_qos()
9890 API: gst_base_transform_set_qos_enabled()
9891 API: gst_base_transform_is_qos_enabled()
9893 2006-03-13 Wim Taymans <wim@fluendo.com>
9895 * libs/gst/base/gstbasesink.c: (gst_base_sink_init),
9896 (gst_base_sink_do_sync):
9897 Small cleanups.
9898 Use QOS debug category.
9900 2006-03-13 Wim Taymans <wim@fluendo.com>
9902 * plugins/elements/gstqueue.c:
9903 Very small doc update.
9905 2006-03-13 Wim Taymans <wim@fluendo.com>
9907 * gst/gst_private.h:
9908 * gst/gstinfo.c: (_gst_debug_init):
9909 Added QOS debug category
9911 2006-03-13 Wim Taymans <wim@fluendo.com>
9913 * docs/gst/gstreamer-sections.txt:
9914 * gst/gstbin.c: (bin_bus_handler), (gst_bin_handle_message_func):
9915 * gst/gstbin.h:
9916 * gst/gstbus.c: (gst_bus_class_init):
9917 * gst/gstbus.h:
9918 * gst/gstclock.c:
9919 * gst/gstelement.c: (gst_element_set_locked_state):
9920 * gst/gstsegment.c:
9921 Documentation updates.
9923 * gst/gstpipeline.c: (gst_pipeline_get_type),
9924 (gst_pipeline_class_init), (gst_pipeline_init),
9925 (gst_pipeline_dispose), (gst_pipeline_set_property),
9926 (gst_pipeline_get_property), (do_pipeline_seek),
9927 (gst_pipeline_send_event), (gst_pipeline_change_state),
9928 (gst_pipeline_provide_clock_func), (gst_pipeline_set_delay),
9929 (gst_pipeline_get_delay):
9930 * gst/gstpipeline.h:
9931 Added methods for setting the delay.
9932 API: gst_pipeline_set_delay()
9933 API: gst_pipeline_get_delay()
9934 Add pipeline debug category
9935 Various cleanups.
9936 Updated docs.
9937 Don't reset stream time when seek failed.
9939 2006-03-13 Wim Taymans <wim@fluendo.com>
9941 * docs/design/draft-klass.txt:
9942 * docs/design/part-clocks.txt:
9943 * docs/design/part-events.txt:
9944 * docs/design/part-gstbin.txt:
9945 * docs/design/part-gstpipeline.txt:
9946 * docs/design/part-messages.txt:
9947 * docs/design/part-negotiation.txt:
9948 * docs/design/part-overview.txt:
9949 * docs/design/part-preroll.txt:
9950 * docs/design/part-seeking.txt:
9951 * docs/design/part-states.txt:
9952 * docs/design/part-streams.txt:
9953 Documentation updates.
9955 2006-03-12 Julien MOUTTE <julien@moutte.net>
9957 * gst/gsttaglist.c: Fix rubbish docs that are encouraging
9958 us to leak strings...
9960 2006-03-12 Thomas Vander Stichele <thomas at apestaart dot org>
9962 * libs/gst/net/gstnettimeprovider.c:
9963 fix docs
9964 * win32/common/config.h:
9965 update
9967 2006-03-12 Tim-Philipp Müller <tim at centricular dot net>
9969 Patch by: Julio M. Merino Vidal <jmmv at netbsd org>
9971 * configure.ac:
9972 Don't check for libgnomeui (leftover from old examples
9973 that aren't built or disted any longer) (#334303).
9975 2006-03-11 Tim-Philipp Müller <tim at centricular dot net>
9977 * plugins/elements/gstfdsink.c: (gst_fd_sink_render):
9978 * plugins/elements/gstfilesink.c: (gst_file_sink_render):
9979 Emit RESOURCE_NO_SPACE_LEFT error here as well when
9980 there's no space left on the device.
9982 2006-03-10 Tim-Philipp Müller <tim at centricular dot net>
9984 * gst/gstclock.h:
9985 Fix GST_CLOCK_TIME_IS_VALID signedness issues - we need
9986 to cast the input to GstClockTime before comparing with
9987 another GstClockTime value.
9989 2006-03-10 Thomas Vander Stichele <thomas at apestaart dot org>
9991 * configure.ac:
9992 back to trunk
9994 === release 0.10.4 ===
9996 2006-03-10 Thomas Vander Stichele <thomas at apestaart dot org>
9998 * configure.ac:
9999 releasing 0.10.4, "Light"
10001 2006-03-10 Michael Smith <msmith@fluendo.com>
10003 * libs/gst/dataprotocol/dataprotocol.c:
10004 Fix docs for dataprocotol to not get the return types completely
10005 wrong for a few functions.
10007 2006-03-09 Tim-Philipp Müller <tim at centricular dot net>
10009 * docs/gst/gstreamer-sections.txt:
10010 * gst/gstpipeline.c: (gst_pipeline_class_init),
10011 (gst_pipeline_init), (gst_pipeline_set_property),
10012 (gst_pipeline_get_property), (gst_pipeline_change_state),
10013 (gst_pipeline_set_auto_flush_bus),
10014 (gst_pipeline_get_auto_flush_bus):
10015 * gst/gstpipeline.h:
10016 Add new API: gst_pipeline_set_auto_flush_bus() and
10017 gst_pipeline_get_auto_flush_bus() to disable automatic
10018 flushing of the pipeline's GstBus when going from READY
10019 to NULL state (#332045).
10021 2006-03-09 Tim-Philipp Müller <tim at centricular dot net>
10023 * docs/gst/gstreamer-sections.txt:
10024 * gst/gsturi.c: (gst_uri_has_protocol):
10025 * gst/gsturi.h:
10026 Add new API: gst_uri_has_protocol() (#333779).
10028 2006-03-09 Wim Taymans <wim@fluendo.com>
10030 * gst/gstclock.c: (gst_clock_entry_new),
10031 (gst_clock_id_compare_func), (gst_clock_id_wait),
10032 (gst_clock_id_wait_async), (gst_clock_id_unschedule),
10033 (gst_clock_init), (gst_clock_get_internal_time),
10034 (gst_clock_set_master), (do_linear_regression),
10035 (gst_clock_add_observation), (gst_clock_set_property):
10036 * gst/gstclock.h:
10037 Review docs.
10038 Small cleanups.
10039 Fix a possible segfault when the window-size is made smaller.
10040 Calculate jitter before performing the clock wait. Ideally
10041 the clock implementation should calculate jitter but we need
10042 API breakage for that.
10044 * gst/gstsystemclock.c: (gst_system_clock_init):
10045 Docs review.
10047 * libs/gst/base/gstbasesink.c: (gst_base_sink_do_sync):
10048 Remove leftover else
10050 * tests/check/gst/gstsystemclock.c: (GST_START_TEST),
10051 (gst_systemclock_suite):
10052 Added check to test GST_CLOCK_DIFF.
10054 2006-03-09 Tim-Philipp Müller <tim at centricular dot net>
10056 * libs/gst/base/gsttypefindhelper.c: (helper_find_get_length),
10057 (gst_type_find_helper_get_range):
10058 If we are provided with the size, we should implement
10059 GstTypeFind::get_length, so that typefind functions who
10060 want to can actually peek at the middle of a file.
10062 2006-03-08 Tim-Philipp Müller <tim at centricular dot net>
10064 * docs/manual/advanced-dataaccess.xml:
10065 Add some very very basic error checking.
10067 * docs/pwg/appendix-checklist.xml:
10068 Some updates to the list of things to check when writing an element.
10070 2006-03-08 Wim Taymans <wim@fluendo.com>
10072 * docs/design/part-element-transform.txt:
10073 Added some docs about the design of tranform elements.
10075 * libs/gst/base/gstbasesrc.c: (gst_base_src_perform_seek),
10076 (gst_base_src_loop), (gst_base_src_change_state):
10077 Mark buffers with the DISCONT flag.
10079 2006-03-08 Michael Smith <msmith@fluendo.com>
10081 * gst/gstregistry.h:
10082 * gst/gstregistryxml.c: (gst_registry_save),
10083 (gst_registry_save_escaped), (gst_registry_xml_save_caps),
10084 (gst_registry_xml_save_pad_template),
10085 (gst_registry_xml_save_feature), (gst_registry_xml_save_plugin),
10086 (gst_registry_xml_write_cache):
10087 Rewrite registry-saving to avoid race conditions and check for
10088 failed writes.
10090 2006-03-08 Wim Taymans <wim@fluendo.com>
10092 * libs/gst/base/gstbasetransform.c:
10093 (gst_base_transform_transform_caps),
10094 (gst_base_transform_transform_size),
10095 (gst_base_transform_prepare_output_buffer),
10096 (gst_base_transform_get_unit_size),
10097 (gst_base_transform_buffer_alloc),
10098 (gst_base_transform_handle_buffer),
10099 (gst_base_transform_change_state):
10100 Cleanups, separate normal flow from errors, add sensible
10101 DEBUG lines.
10102 Don't try to renegotiate when allocating an output buffer.
10103 Also copy DISCONT buffer flag when copying a buffer.
10104 Reset the transform after we finish streaming, not during.
10106 2006-03-08 Wim Taymans <wim@fluendo.com>
10108 * libs/gst/base/gstbasesink.c: (gst_base_sink_do_sync):
10109 Use last buffer timestamp in qos message.
10111 2006-03-07 Wim Taymans <wim@fluendo.com>
10113 Patch by: Christophe Fergeau
10115 * docs/pwg/advanced-tagging.xml:
10116 * docs/pwg/building-pads.xml:
10117 fixes #333416
10119 2006-03-07 Wim Taymans <wim@fluendo.com>
10121 * docs/libs/gstreamer-libs-sections.txt:
10122 Added basesink new methods.
10124 * gst/gstevent.c:
10125 * gst/gstevent.h:
10126 Docs updates. Flesh out the QoS docs.
10128 * libs/gst/base/gstadapter.c:
10129 Small doc clarification about ownership and flushing.
10131 * libs/gst/base/gstbasesink.c: (gst_base_sink_set_sync),
10132 (gst_base_sink_get_sync), (gst_base_sink_set_max_lateness),
10133 (gst_base_sink_get_max_lateness), (gst_base_sink_set_property),
10134 (gst_base_sink_get_property), (gst_base_sink_do_sync):
10135 * libs/gst/base/gstbasesink.h:
10136 API additions:
10137 Added new methods to allow subclass to control max-lateness
10138 and sync.
10139 Generate very basic QoS events based on last sync observation.
10140 Updated docs, fix typo, added some QoS blurb.
10142 * libs/gst/base/gstbasesrc.c:
10143 Remove obsolete _get_state() calls from docs.
10145 2006-03-07 Wim Taymans <wim@fluendo.com>
10147 * docs/libs/gstreamer-libs-sections.txt:
10148 * libs/gst/base/gstbasetransform.h:
10149 API addition: Fix #333669, Add pad accessor defines for GstBaseTransform
10150 Fix docs for GstBaseSrc.
10152 2006-03-07 Wim Taymans <wim@fluendo.com>
10154 * docs/gst/gstreamer-sections.txt:
10155 * gst/gstbuffer.h:
10156 * gst/gstvalue.c:
10157 * libs/gst/base/gstbasetransform.h:
10158 Small documentation fixes.
10160 2006-03-07 Tim-Philipp Müller <tim at centricular dot net>
10162 * gst/gstvalue.c:
10163 Document thread-unsafety of gst_value_register_foo_func()
10164 when used at the same time as gst_value_foo() (#322628).
10166 2006-03-07 Tim-Philipp Müller <tim at centricular dot net>
10168 * libs/gst/base/gstpushsrc.c: (gst_push_src_class_init),
10169 (gst_push_src_check_get_range):
10170 Push sources don't support pull mode by default.
10172 2006-03-06 Tim-Philipp Müller <tim at centricular dot net>
10174 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
10175 (gst_base_src_init), (gst_base_src_pad_check_get_range),
10176 (gst_base_src_default_check_get_range):
10177 * libs/gst/base/gstbasesrc.h:
10178 API addition: Add ::check_get_range() vfunc to GstBaseSrc (#332611),
10179 provide default implementation, and rename
10180 gst_base_src_check_get_range() to
10181 gst_base_src_pad_check_get_range() for clarity.
10183 2006-03-06 Wim Taymans <wim@fluendo.com>
10185 * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init):
10186 Make property overridable.
10188 2006-03-06 Wim Taymans <wim@fluendo.com>
10190 * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init),
10191 (gst_base_sink_init), (gst_base_sink_set_property),
10192 (gst_base_sink_get_property), (gst_base_sink_do_sync):
10193 * libs/gst/base/gstbasesink.h:
10194 API addition: Make max-lateness a property.
10196 2006-03-06 Wim Taymans <wim@fluendo.com>
10198 * libs/gst/base/gstbasesink.c: (gst_base_sink_wait_clock),
10199 (gst_base_sink_do_sync), (gst_base_sink_render_object):
10200 Don't ever draw a frame that is >10ms late.
10202 2006-03-06 Michael Smith <msmith@fluendo.com>
10204 * gst/gstmessage.c: (_gst_message_copy):
10205 When copying a message, set the parent_refcount of the enclosed
10206 structure to point at the copy, not the original message.
10208 2006-03-06 Tim-Philipp Müller <tim at centricular dot net>
10210 Patch by: Christophe Fergeau
10212 * gst/gstutils.h:
10213 Do proper cast here to make GST_BOILERPLATE_WITH_INTERFACE
10214 usable in c++ code (#333417)
10216 2006-03-06 Thomas Vander Stichele <thomas at apestaart dot org>
10218 * gst/gstclock.h:
10219 Show GST_CLOCK_TIME_NONE as 99:99:99.999999999
10221 2006-03-05 Tim-Philipp Müller <tim at centricular dot net>
10223 * libs/gst/base/gstbasetransform.c:
10224 (gst_base_transform_transform_caps):
10225 Make sure caps are writable before passing them to
10226 gst_caps_append().
10228 2006-03-04 Tim-Philipp Müller <tim at centricular dot net>
10230 * gst/gsterror.h:
10231 Fix some minor docs errors.
10233 2006-03-04 Tim-Philipp Müller <tim at centricular dot net>
10235 Patch by: Ross Burton <ross at burtonini dot com>
10237 * gst/gsterror.c: (_gst_resource_errors_init):
10238 * gst/gsterror.h:
10239 Add GST_RESOURCE_ERROR_NO_SPACE_LEFT (for #333352;
10241 2006-03-03 Jan Schmidt <thaytan@mad.scientist.com>
10243 * gst/gst.c:
10244 Add a check and output a g_warning when GStreamer is built
10245 against GLib 2.6 but running against 2.8 or higher, and vice
10246 versa. (Closes: #323542)
10248 2006-03-03 Jan Schmidt <thaytan@mad.scientist.com>
10250 * gst/parse/parse.l:
10251 Commit patch for parse_launch syntax from #331255. Removes
10252 support for quoted strings and mimetypes when writing filtered
10253 caps. See the bug report for more details - I'm pretty sure this
10254 obscure feature is not in use by _anyone_ anywhere.
10256 With this simple change, the size of the gstreamer.so here
10257 drops from 2193KB to 1565KB.
10259 2006-03-03 Tim-Philipp Müller <tim at centricular dot net>
10261 * plugins/elements/gsttypefindelement.h:
10262 * plugins/elements/gsttypefindelement.c:
10263 (gst_type_find_element_src_event), (start_typefinding),
10264 (stop_typefinding), (gst_type_find_element_handle_event),
10265 (gst_type_find_element_chain),
10266 (gst_type_find_element_chain_do_typefinding):
10267 Use gst_type_find_helper_for_buffer() for chain-based
10268 typefinding.
10270 2006-03-03 Tim-Philipp Müller <tim at centricular dot net>
10272 * plugins/elements/gsttypefindelement.c:
10273 (gst_type_find_element_class_init),
10274 (gst_type_find_element_set_property),
10275 (gst_type_find_element_get_property):
10276 Deprecate "maximum" property (not only was it only taken into
10277 account for typefinding in push-mode anyway, it also was never
10278 actually possible to set it in the first place because the
10279 property was registered with the numeric property ID for the
10280 "minimum" property). Register "maximum" property correctly,
10281 for the sake of future copy'n'pasters. Remove some cruft
10282 from property get/set functions.
10284 2006-03-03 Tim-Philipp Müller <tim at centricular dot net>
10286 * plugins/elements/gsttypefindelement.c:
10287 (gst_type_find_element_activate):
10288 Use gst_type_find_helper_get_range() here, so we
10289 can honour the "minimum" property and also emit
10290 the signal with the correct probability of the found caps.
10292 2006-03-02 Tim-Philipp Müller <tim at centricular dot net>
10294 * docs/libs/gstreamer-libs-sections.txt:
10295 * libs/gst/base/gsttypefindhelper.c: (helper_find_peek),
10296 (helper_find_suggest), (gst_type_find_helper_get_range),
10297 (gst_type_find_helper):
10298 * libs/gst/base/gsttypefindhelper.h:
10299 New API: gst_type_find_helper_get_range() (#333042).
10301 2006-03-02 Michael Smith <msmith@fluendo.com>
10303 * gst/gstregistryxml.c: (load_feature):
10304 Asserting on a failure to read part of the registry is Not Cool.
10305 Just log a warning and return NULL (which is already handled)
10307 2006-02-28 Sebastien Moutte <sebastien@moutte.net>
10309 * win32/common/libgstbase.def:
10310 added export of gst_type_find_helper_for_buffer
10311 * win32/common/libgstbase.def:
10312 added some exports : gst_bin_iterate_elements, gst_iterator_resync,
10313 gst_ghost_pad_get_target
10315 2006-02-28 Wim Taymans <wim@fluendo.com>
10317 * docs/design/draft-klass.txt:
10318 We use Filter now.
10319 Added Connector to mark elements that are only used to
10320 allow pipeline connections.
10321 Moved Debug to extra feature since most of them are
10322 functionally something else.
10324 2006-02-28 Wim Taymans <wim@fluendo.com>
10326 * docs/design/draft-klass.txt:
10327 Some updates and clarifications.
10329 2006-02-28 Wim Taymans <wim@fluendo.com>
10331 * docs/design/draft-klass.txt:
10332 Proposal for klass field values.
10334 * docs/design/part-streams.txt:
10335 Start of a doc describing stream anatomy.
10337 2006-02-28 Wim Taymans <wim@fluendo.com>
10339 * gst/gstbin.c: (gst_bin_get_type), (gst_bin_handle_message_func):
10340 Help the compiler a bit with type registration.
10341 Use existing forward cod path instead of duplicating it when
10342 handling a message.
10344 * gst/gstbus.c: (gst_bus_get_type):
10345 * gst/gstcaps.c: (gst_caps_get_type), (gst_static_caps_get_type):
10346 * gst/gstchildproxy.c: (gst_child_proxy_get_type):
10347 * gst/gstclock.c: (gst_clock_get_type):
10348 * gst/gstelement.c: (gst_element_get_type),
10349 * gst/gstelementfactory.c: (gst_element_factory_get_type):
10350 * gst/gstindexfactory.c: (gst_index_factory_get_type):
10351 * gst/gstminiobject.c: (gst_mini_object_get_type):
10352 * gst/gstpad.c: (gst_pad_get_type):
10353 * gst/gstsegment.c: (gst_segment_get_type):
10354 * gst/gststructure.c: (gst_structure_get_type):
10355 * gst/gstsystemclock.c: (gst_system_clock_get_type):
10356 * gst/gsttask.c: (gst_task_get_type), (gst_task_join):
10357 * gst/gstvalue.c:
10358 Help compiler with type registration.
10360 * plugins/elements/gstqueue.c: (gst_queue_handle_sink_event):
10361 Small doc update.
10363 2006-02-27 Tim-Philipp Müller <tim at centricular dot net>
10365 * plugins/elements/gsttypefindelement.c:
10366 (gst_type_find_element_handle_event):
10367 When we get an EOS event and have not found a type yet
10368 (most likely because we had not yet accumulated
10369 TYPE_FIND_MIN_SIZE of data yet), try to determine the
10370 type given the data we have so far. Fixes typefinding
10371 for very short streams again, most notably quicktime
10372 redirections as used on Apple's trailer site (#331701).
10374 2006-02-27 Tim-Philipp Müller <tim at centricular dot net>
10376 * libs/gst/base/gsttypefindhelper.c: (type_find_factory_rank_cmp),
10377 (gst_type_find_helper):
10378 Try typefinding factories with the highest rank first.
10380 2006-02-27 Tim-Philipp Müller <tim at centricular dot net>
10382 * docs/libs/gstreamer-libs-docs.sgml:
10383 * docs/libs/gstreamer-libs-sections.txt:
10384 * libs/gst/base/gsttypefindhelper.c:
10385 Add section for typefind helper and add documentation
10386 for the old and the new function.
10388 2006-02-27 Tim-Philipp Müller <tim at centricular dot net>
10390 * libs/gst/base/gsttypefindhelper.c: (buf_helper_find_peek),
10391 (buf_helper_find_suggest), (type_find_factory_rank_cmp),
10392 (gst_type_find_helper_for_buffer):
10393 * libs/gst/base/gsttypefindhelper.h:
10394 New API: gst_type_find_helper_for_buffer() (#332723).
10396 2006-02-27 Michael Smith <msmith@fluendo.com>
10398 Patch by: Loïc Minier
10400 * configure.ac:
10401 * docs/Makefile.am:
10402 * docs/slides/Makefile.am:
10403 prevent CVS directories getting disted.
10405 2006-02-27 Tim-Philipp Müller <tim at centricular dot net>
10407 * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref):
10408 Use the REFCOUNTING category for caps refcounting.
10410 2006-02-26 Tim-Philipp Müller <tim at centricular dot net>
10412 * plugins/elements/gsttypefindelement.c: (stop_typefinding):
10413 This should be 0 not GST_CLOCK_TIME_NONE (see #331701).
10415 2006-02-26 Tim-Philipp Müller <tim at centricular dot net>
10417 * plugins/elements/gsttypefindelement.c:
10418 (gst_type_find_element_activate):
10419 Use gst_pad_check_pull_range() before _activate_pull()
10420 to avoid unnecessary open/close (see #331690).
10422 2006-02-24 Tim-Philipp Müller <tim at centricular dot net>
10424 * gst/gstutils.c:
10425 Docs enhancement: make it crystal clear what the
10426 gst_pad_add_*_probe() callbacks should look like.
10428 2006-02-24 Tim-Philipp Müller <tim at centricular dot net>
10430 * libs/gst/base/gstbasesrc.c:
10431 Document how applications can stop recording from
10432 live sources (see #330996).
10434 2006-02-23 Tim-Philipp Müller <tim at centricular dot net>
10436 * tests/check/Makefile.am:
10437 * tests/check/libs/basesrc.c: (eos_event_counter),
10438 (basesrc_eos_events_pull), (basesrc_eos_events_push),
10439 (basesrc_eos_events_push_live_op), (basesrc_eos_events_pull_live_op),
10440 (gst_basesrc_suite), (main):
10441 ... and add some tests for the base source EOS stuff.
10443 2006-02-23 Tim-Philipp Müller <tim at centricular dot net>
10445 * tests/check/gst/gstutils.c: (test_buffer_probe_n_times):
10446 Test case originally showed the problem fixed below,
10447 but was then amended. Add checks back at the place
10448 where they used to be.
10450 2006-02-23 Tim-Philipp Müller <tim at centricular dot net>
10452 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
10453 (gst_base_src_init), (gst_base_src_loop),
10454 (gst_base_src_activate_push), (gst_base_src_activate_pull),
10455 (gst_base_src_change_state):
10456 * libs/gst/base/gstbasesrc.h:
10457 Don't unconditionally send EOS when going from PAUSED to
10458 READY state, esp. make sure we don't send two EOS events
10459 in some cases (e.g. one when reaching EOS and one when
10460 going from PAUSED to READY). Also, we don't want to send
10461 EOS events when operating in pull mode. However, we do
10462 want to send an EOS event when shutting down a live
10463 source explicitly, for example (fixes #330996).
10465 2006-02-23 Tim-Philipp Müller <tim at centricular dot net>
10467 * plugins/elements/gstfilesrc.c: (gst_file_src_create_read):
10468 Update src->read_position after a seek when not using mmap.
10469 Fixes #332277, patch by: Renchi Raju <renchi gmail com>
10471 2006-02-21 Jan Schmidt <thaytan@mad.scientist.com>
10473 * gst/Makefile.am:
10474 * gst/gstparse.h:
10475 * gst/gstutils.c:
10476 * gst/gstutils.h:
10477 Make things work with --disable-parse as they do with
10478 --disable-load-save - the symbols involved disappear, but the
10479 header is still installed and GST_DISABLE_PARSE is included via
10480 gstconfig.h
10482 2006-02-20 Julien MOUTTE <julien@moutte.net>
10484 * libs/gst/base/gstbasetransform.c:
10485 (gst_base_transform_change_state): Fix a stupid bug. I was
10486 sure I compiled that.
10488 2006-02-20 Julien MOUTTE <julien@moutte.net>
10490 * gst/gstpad.c: (gst_pad_set_blocked_async):
10491 * gst/gstutils.c: (gst_pad_add_data_probe),
10492 (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
10493 (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
10494 (gst_pad_remove_buffer_probe): Make those function act on the
10495 ghostpad target when it's a ghostpad. (Closes #331727)
10497 2006-02-20 Julien MOUTTE <julien@moutte.net>
10499 * libs/gst/base/gstbasetransform.c:
10500 (gst_base_transform_change_state): Make basetransform reusable.
10501 (Closes #331898)
10503 2006-02-20 Jan Schmidt <thaytan@mad.scientist.com>
10505 * docs/random/release:
10506 Move the current documentation of how to do a release to the top
10507 of the file.
10509 * gst/gstbin.c: (gst_bin_class_init),
10510 (gst_bin_handle_message_func):
10511 Allow multiple state-recalculation threads. (Closes #328873)
10513 2006-02-19 Julien MOUTTE <julien@moutte.net>
10515 * gst/gstinfo.h: Add GST_STR_NULL to the second string.
10516 * gst/gstpad.c: (gst_pad_set_event_function),
10517 (gst_pad_set_query_function), (gst_pad_set_query_type_function),
10518 (gst_pad_set_getcaps_function): GST_DEBUG_PAD_NAME evaluates to
10519 2 strings. You can't use the STR_NULL macro on that.
10521 2006-02-19 Sebastien Moutte <sebastien@moutte.net>
10523 * gst/gstpad.c: (gst_pad_set_event_function),
10524 (gst_pad_set_query_function), (gst_pad_set_query_type_function),
10525 (gst_pad_set_getcaps_function)
10526 * gst/parse/grammar.y: (gst_parse_found_pad), (gst_parse_perform_delayed_link)
10527 Fixed NULL pointer used in GST_CAT_DEBUG using GST_STR_NULL macro
10528 So now, we can use --gst-debug-level=5 on Windows
10529 * win32/common/libgstcontroller.def:
10530 Added export of gst_controller_init
10531 * win32/vs6/libgstcontroller.dsp:
10532 Fixed Release post build configuration
10534 2006-02-17 Wim Taymans <wim@fluendo.com>
10536 * tests/check/gst/gstquery.c: (GST_START_TEST):
10537 Added another check.
10539 2006-02-15 Tim-Philipp Müller <tim at centricular dot net>
10541 * plugins/elements/gsttypefindelement.c: (find_peek):
10542 We can do peeks at non-zero offsets, as long as they
10543 fall within the buffer we have.
10545 2006-02-15 Jan Schmidt <thaytan@mad.scientist.com>
10547 * tests/check/Makefile.am:
10548 * tests/check/pipelines/parse-launch.c: (setup_pipeline),
10549 (expected_fail_pipe), (check_pipeline_runs), (GST_START_TEST),
10550 (parse_suite), (main):
10551 Add testsuite for parse launch syntax
10553 2006-02-14 Tim-Philipp Müller <tim at centricular dot net>
10555 * plugins/elements/gsttypefindelement.c:
10556 (gst_type_find_element_chain):
10557 When typefinding is unsuccessful in the chain function, don't
10558 error out immediately. Only error out with NO_CAPS_FOUND if
10559 the amount of data is at least MAX_TYPEFIND_SIZE bytes,
10560 otherwise simply wait for more data so we can try typefinding
10561 again with more data later. Also, don't attempt to typefind
10562 if we have less than MIN_TYPEFIND_SIZE data available. Overall,
10563 this should improve typefinding from network sources where the
10564 size of the first buffer can be somewhat random.
10566 2006-02-14 Wim Taymans <wim@fluendo.com>
10568 * docs/gst/gstreamer-sections.txt:
10569 * gst/gstpadtemplate.c:
10570 * gst/gstpadtemplate.h:
10571 Fix padtemplate docs, fixes #328805.
10573 2006-02-14 Wim Taymans <wim@fluendo.com>
10575 * tools/gst-launch.c: (main):
10576 NO_PREROLL is not an ERROR so don't send confusing messages
10577 to the user.
10579 2006-02-14 Wim Taymans <wim@fluendo.com>
10581 Patch by: Torsten Schoenfeld
10583 * gst/gstregistry.c: (gst_registry_get_default),
10584 (_gst_registry_cleanup):
10585 Protect default registry with lock and ref/sink it.
10586 Fixes #324818
10588 2006-02-14 Wim Taymans <wim@fluendo.com>
10590 * gst/gstbuffer.c:
10591 * gst/gstquery.c: (gst_query_list_add_format),
10592 (gst_query_set_formatsv), (gst_query_parse_formats_length),
10593 (gst_query_parse_formats_nth):
10594 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times):
10595 Docs fixes.
10597 2006-02-14 Wim Taymans <wim@fluendo.com>
10599 * docs/gst/gstreamer-sections.txt:
10600 Reworked query docs.
10602 * gst/gstquery.c: (gst_query_new_formats),
10603 (gst_query_list_add_format), (gst_query_set_formats),
10604 (gst_query_set_formatsv), (gst_query_parse_formats_length),
10605 (gst_query_parse_formats_nth):
10606 * gst/gstquery.h:
10607 Flesh out formats query, added some new methods.
10608 Fix part of #324398.
10610 * tests/check/gst/gstquery.c: (GST_START_TEST), (gstquery_suite):
10611 Added query creation tests.
10613 2006-02-14 Jan Schmidt <thaytan@mad.scientist.com>
10615 * gst/gstpad.c: (fixate_value):
10616 Add a default fixation for fraction lists.
10618 2006-02-13 Wim Taymans <wim@fluendo.com>
10620 * gst/gsttask.c: (gst_task_init), (gst_task_func),
10621 (gst_task_set_lock), (gst_task_start), (gst_task_pause),
10622 (gst_task_join):
10623 * gst/gsttask.h:
10624 Detect and warn for obvious deadlocks. fixes #320340
10625 Fix error case where lock was not released.
10627 * tests/check/Makefile.am:
10628 * tests/check/gst/gsttask.c: (task_func2), (GST_START_TEST),
10629 (task_func), (gst_element_suite), (main):
10630 Add task check.
10632 2006-02-13 Wim Taymans <wim@fluendo.com>
10634 * docs/gst/gstreamer-sections.txt:
10635 * gst/gstbus.c:
10636 Add new functions to docs.
10638 2006-02-13 Wim Taymans <wim@fluendo.com>
10640 * docs/design/part-TODO.txt:
10641 Updated TODO list, basesrc supports seeking to non-bytes
10642 formats.
10644 * docs/design/part-element-sink.txt:
10645 Update docs.
10647 * gst/gstbin.c: (bin_replace_message),
10648 (gst_bin_handle_message_func):
10649 * gst/gstbus.c: (gst_bus_post), (gst_bus_pop):
10650 * gst/gstevent.c: (gst_event_finalize):
10651 * gst/gstpad.c: (gst_pad_event_default_dispatch),
10652 (gst_pad_send_event):
10653 Use shiny new _TYPE_NAME macros.
10655 * libs/gst/base/gstbasesrc.c: (gst_base_src_get_range):
10656 Move debug statement up.
10658 * gst/gstelement.c: (gst_element_set_locked_state):
10659 Add some debugging.
10661 2006-02-13 Tim-Philipp Müller <tim at centricular dot net>
10663 * docs/gst/gstreamer-sections.txt:
10664 * gst/gstmessage.h:
10665 * gst/gstquery.h:
10666 New API: add GST_MESSAGE_TYPE_NAME and GST_QUERY_TYPE_NAME
10667 macros (#330906). Also, document the already existing
10668 GST_QUERY_TYPE macro.
10670 2006-02-13 Wim Taymans <wim@fluendo.com>
10672 * tests/check/gst/gstutils.c: (data_probe), (buffer_probe),
10673 (event_probe), (GST_START_TEST):
10674 Only events up to the pipeline EOS are counted, there are
10675 some more when going to NULL currently which we don't care
10676 about for now.
10678 2006-02-13 Wim Taymans <wim@fluendo.com>
10680 * gst/gstpad.c: (gst_pad_send_event):
10681 Correctly check flushing and emit probes. fixes #330125
10683 2006-02-10 Andy Wingo <wingo@pobox.com>
10685 * gst/gstbus.c (gst_bus_class_init): Declare our private data
10686 structure.
10687 (gst_bus_init): Cache the location of the private data in the
10688 instance structure.
10689 (gst_bus_enable_sync_message_emission)
10690 (gst_bus_disable_sync_message_emission): Implement new public
10691 functions.
10692 (gst_bus_post): Emit the sync-message signal if the user asked for
10693 it. Fixes #330684.
10695 * gst/gstbus.h (GstBus): Use a padding pointer to cache the
10696 location of the bus-private structure.
10697 (gst_bus_enable_sync_message_emission)
10698 (gst_bus_disable_sync_message_emission): API addition
10700 2006-02-10 Jan Schmidt <thaytan@mad.scientist.com>
10702 Patch by: Vincent Torri
10704 * docs/pwg/building-boiler.xml:
10705 PWG patch from #326800
10707 2006-02-09 Tim-Philipp Müller <tim at centricular dot net>
10709 * configure.ac:
10710 * docs/Makefile.am:
10711 * docs/design/Makefile.am:
10712 Dist design docs.
10714 2006-02-08 Jan Schmidt <thaytan@mad.scientist.com>
10716 * configure.ac:
10717 back to CVS
10719 === release 0.10.3 ===
10721 2006-02-08 Jan Schmidt <thaytan@mad.scientist.com>
10723 * configure.ac:
10724 releasing 0.10.3, "Like a virgin"
10726 2006-02-08 Jan Schmidt <thaytan@mad.scientist.com>
10728 * configure.ac:
10729 2nd prerelease of 0.10.3
10730 Bump libtool versioning.
10732 2006-02-07 Andy Wingo <wingo@pobox.com>
10734 * libs/gst/base/gstcollectpads.c (gst_collect_pads_chain): Only
10735 update last_stop if we're in TIME format and the timestamp is
10736 valid.
10738 * libs/gst/base/gstcollectpads.c (gst_collect_pads_event)
10739 * libs/gst/base/gstbasetransform.c (gst_base_transform_eventfunc):
10740 * libs/gst/base/gstbasesink.c (gst_base_sink_configure_segment):
10741 If we get a new newsegment with a different format, adapt
10742 accordingly.
10744 * gst/gstclock.c (gst_clock_set_calibration): Accept a numerator
10745 of 0. Not a problem, really.
10747 * libs/gst/base/gstbasesink.c (gst_base_sink_chain_unlocked): Only
10748 warn if sync=true.
10750 2006-02-06 Jan Schmidt <thaytan@mad.scientist.com>
10752 * configure.ac:
10753 Prelease of 0.10.3
10755 2006-02-06 Sebastien Moutte <sebastien@moutte.net>
10757 * win32/vs7:
10758 project files updated to the default vs7 configuration
10759 * win32/common/libgstbase.def:
10760 * win32/common/libgstreamer.def:
10761 added new symbols,
10762 removed empty lines,
10763 sorted all exported symbols alphabetically
10764 * win32/common/dirent.c:
10765 * win32/common/dirent.h:
10766 * win32/common/gchar.h:
10767 use windows line end.
10769 2006-02-06 Tim-Philipp Müller <tim at centricular dot net>
10771 * libs/gst/base/gstbasesrc.c: (gst_base_src_change_state):
10772 Send EOS event when stopping.
10774 2006-02-06 Tim-Philipp Müller <tim at centricular dot net>
10776 * docs/README:
10777 Tell folks what to do if the plugin-foobar.xml file
10778 hasn't been generated for a newly-added plugin.
10780 2006-02-05 Julien MOUTTE <julien@moutte.net>
10782 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_finalize),
10783 (gst_collect_pads_add_pad), (gst_collect_pads_remove_pad),
10784 (gst_collect_pads_start), (gst_collect_pads_stop),
10785 (gst_collect_pads_event): Collectpads now holds a reference
10786 to the GstPad that was added. Indeed we don't want to look
10787 at pads that might just go away with no warning...
10789 2006-02-05 Julien MOUTTE <julien@moutte.net>
10791 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_add_pad),
10792 (gst_collect_pads_start), (gst_collect_pads_stop),
10793 (gst_collect_pads_event), (gst_collect_pads_chain):
10794 * libs/gst/base/gstcollectpads.h: Handle flush. Adapted from
10795 Mark Nauwelaerts's patch on bug #328491.
10797 2006-02-04 Tim-Philipp Müller <tim at centricular dot net>
10799 * tests/check/gst/gstutils.c: (test_parse_bin_from_description),
10800 (gst_utils_suite):
10801 Add some simple tests for gst_parse_bin_from_description() and
10802 gst_bin_find_unconnected_pad() (#329069).
10804 2006-02-04 Tim-Philipp Müller <tim at centricular dot net>
10806 * tools/gst-launch.c: (event_loop), (main):
10807 Catch errors during preroll (#320084).
10809 2006-02-03 Tim-Philipp Müller <tim at centricular dot net>
10811 * plugins/elements/gsttypefindelement.c:
10812 (gst_type_find_element_activate):
10813 Post TYPE_NOT_FOUND error message when typefinding
10814 is unsuccessful in the activate function as well.
10816 2006-02-02 Wim Taymans <wim@fluendo.com>
10818 * docs/design/part-element-sink.txt:
10819 Updated doc.
10821 2006-02-02 Wim Taymans <wim@fluendo.com>
10823 * libs/gst/base/gstbasesink.c: (gst_base_sink_do_sync),
10824 (gst_base_sink_render_object),
10825 (gst_base_sink_queue_object_unlocked):
10826 Only keep track of prerollable items when we are
10827 prerolling.
10828 Before rendering after preroll, always check if we
10829 have queued items.
10830 Added some more debugging.
10832 2006-02-02 Wim Taymans <wim@fluendo.com>
10834 * gst/gstelement.c: (gst_element_continue_state),
10835 (gst_element_set_state_func), (gst_element_change_state):
10836 Fixed #326576, been running this for quite some time with
10837 no regressions at all.
10839 2006-02-02 Wim Taymans <wim@fluendo.com>
10841 * common/gst.supp:
10842 Added more suppressions
10844 2006-02-02 Wim Taymans <wim@fluendo.com>
10846 * docs/design/part-element-sink.txt:
10847 Updated document.
10849 * libs/gst/base/gstbasesink.c: (gst_base_sink_init),
10850 (gst_base_sink_finalize), (gst_base_sink_preroll_queue_flush),
10851 (gst_base_sink_configure_segment), (gst_base_sink_commit_state),
10852 (gst_base_sink_get_sync_times), (gst_base_sink_wait_clock),
10853 (gst_base_sink_do_sync), (gst_base_sink_render_object),
10854 (gst_base_sink_preroll_object),
10855 (gst_base_sink_queue_object_unlocked),
10856 (gst_base_sink_queue_object), (gst_base_sink_event),
10857 (gst_base_sink_chain_unlocked), (gst_base_sink_chain),
10858 (gst_base_sink_loop), (gst_base_sink_activate_pull),
10859 (gst_base_sink_get_position), (gst_base_sink_change_state):
10860 * libs/gst/base/gstbasesink.h:
10861 Totally refactored matching the design doc.
10862 Use two segments, one to clip incomming buffers and another to
10863 perform sync.
10864 Handle queueing correctly, bypass the queue when playing.
10865 Make EOS cancelable.
10866 Handle errors correctly when operating in pull based mode.
10868 * tests/check/elements/fakesink.c: (GST_START_TEST),
10869 (fakesink_suite):
10870 Added new check for sinks.
10872 2006-02-02 Wim Taymans <wim@fluendo.com>
10874 * gst/gstsegment.c: (gst_segment_clip):
10875 No reason to refuse to clip when start == -1
10877 2006-02-02 Stefan Kost <ensonic@users.sf.net>
10879 * docs/README:
10880 * docs/manual/intro-basics.xml:
10881 * docs/manual/intro-preface.xml:
10882 * docs/manual/manual.xml:
10883 * docs/pwg/advanced-dparams.xml:
10884 * docs/pwg/intro-basics.xml:
10885 * docs/pwg/intro-preface.xml:
10886 * docs/pwg/pwg.xml:
10887 describe dparams (controller) for plugins
10888 unify docs a little more
10890 2006-02-02 Tim-Philipp Müller <tim at centricular dot net>
10892 * docs/gst/gstreamer-sections.txt:
10893 * gst/gstutils.c: (element_find_unconnected_pad),
10894 (gst_bin_find_unconnected_pad), (gst_parse_bin_from_description):
10895 * gst/gstutils.h:
10896 Add new API: gst_parse_bin_from_description() and
10897 gst_bin_find_unconnected_pad() (#329069).
10899 2006-02-01 Stefan Kost <ensonic@users.sf.net>
10901 * docs/manual/README:
10902 uncover a nasty detail of the docs build
10904 2006-01-31 Wim Taymans <wim@fluendo.com>
10906 * gst/gstbin.c: (bin_remove_messages), (bin_query_duration_done):
10907 Don't cache duration messages if we're not going to use or
10908 free them.
10910 2006-01-31 Stefan Kost <ensonic@users.sf.net>
10912 * docs/manual/advanced-dparams.xml:
10913 * docs/pwg/advanced-dparams.xml:
10914 more dparam docs
10915 * gst/gstindex.c:
10916 fix docs
10917 * libs/gst/controller/lib.c: (gst_controller_init):
10918 init just once
10920 2006-01-31 Thomas Vander Stichele <thomas at apestaart dot org>
10922 * gst/gstelement.c: (gst_element_message_full):
10923 also show file/line/func if no additional debug was given
10925 2006-01-31 Sebastien Moutte <sebastien@moutte.net>
10927 * win32/vs7/grammar.vcproj:
10928 activate copy of autogenerated files for Release mode
10930 2006-01-30 Sebastien Moutte <sebastien@moutte.net>
10932 * win32/common/libgstreamer.def:
10933 export gst_value_compare
10935 2006-01-30 Jan Schmidt <thaytan@mad.scientist.com>
10937 * plugins/elements/Makefile.am:
10938 * plugins/elements/gstelements.c:
10939 * plugins/elements/gstfdsink.c: (_do_init),
10940 (gst_fd_sink_base_init), (gst_fd_sink_class_init),
10941 (gst_fd_sink_init), (gst_fd_sink_dispose), (gst_fd_sink_query),
10942 (gst_fd_sink_render), (gst_fd_sink_check_fd), (gst_fd_sink_start),
10943 (gst_fd_sink_stop), (gst_fd_sink_unlock), (gst_fd_sink_update_fd),
10944 (gst_fd_sink_set_property), (gst_fd_sink_uri_get_type),
10945 (gst_fd_sink_uri_get_protocols), (gst_fd_sink_uri_get_uri),
10946 (gst_fd_sink_uri_set_uri), (gst_fd_sink_uri_handler_init):
10947 * plugins/elements/gstfdsink.h:
10948 Port fdsink to 0.10 (patch by Philippe Rouquier) (Fixes #325490)
10950 2006-01-30 Stefan Kost <ensonic@users.sf.net>
10952 * docs/manual/advanced-dparams.xml:
10953 describe controller
10954 * docs/manual/advanced-position.xml:
10955 * docs/manual/basics-init.xml:
10956 * docs/manual/manual.xml:
10957 * docs/manual/titlepage.xml:
10958 * docs/pwg/pwg.xml:
10959 * docs/pwg/titlepage.xml:
10960 cleanup xml (more to come)
10961 * libs/gst/controller/gstcontroller.c:
10962 fix typo
10964 2006-01-30 Sebastien Moutte <sebastien@moutte.net>
10966 * win32/vs6/grammar.dsp:
10967 add autogen of gstmarshal.c,h for Release mode
10969 2006-01-30 Wim Taymans <wim@fluendo.com>
10971 * libs/gst/base/gstbasesink.c: (gst_base_sink_init),
10972 (gst_base_sink_preroll_queue_empty), (gst_base_sink_commit_state),
10973 (gst_base_sink_handle_object), (gst_base_sink_event),
10974 (gst_base_sink_is_prerolled), (gst_base_sink_wait),
10975 (gst_base_sink_do_sync), (gst_base_sink_handle_event),
10976 (gst_base_sink_handle_buffer), (gst_base_sink_set_flushing),
10977 (gst_base_sink_deactivate), (gst_base_sink_activate),
10978 (gst_base_sink_activate_pull), (gst_base_sink_get_position),
10979 (gst_base_sink_query), (gst_base_sink_change_state):
10980 Basesink cleanups, remove some old code.
10981 Handle the case where a subclass can preroll in the render
10982 method (mostly audiosinks).
10983 Handle more events.
10984 Remove some locks around variables that are now protected
10985 with the PREROLL_LOCK (clock_id, flushing, ..).
10986 Optimize position query some more, do correct locking.
10987 Remove old code to push queue in state change, this is not
10988 needed anymore since preroll blocks on all prerollable items
10989 now.
10990 Almost implemented as described in design doc.
10992 2006-01-30 Wim Taymans <wim@fluendo.com>
10994 * tests/check/gst/gstbin.c: (GST_START_TEST):
10995 Wait for refcount to settle down before checking.
10997 2006-01-30 Wim Taymans <wim@fluendo.com>
10999 * docs/design/part-element-sink.txt:
11000 Pseudo code overview of desired sink behaviour regarding
11001 preroll.
11003 2006-01-29 Sebastien Moutte <sebastien@moutte.net>
11004 * win32/vs6/grammar.dsp:
11005 fix some bugs in Release mode for autogenerated files
11007 2006-01-29 Sebastien Moutte <sebastien@moutte.net>
11008 * win32/common/libgstbase.def:
11009 * win32/common/libgstreamer.def:
11010 export some new symbols: gst_base_src_set_format,
11011 gst_iterator_next, gst_structure_set_valist
11013 2006-01-29 Julien MOUTTE <julien@moutte.net>
11015 * gst/gstghostpad.c: (gst_proxy_pad_set_target_unlocked):
11016 Set pad functions unconditionally. Fixes #329105.
11018 2006-01-29 Sebastien Moutte <sebastien@moutte.net>
11019 * win32/vs8:
11020 add vs8 project files created by Sergey Scobich
11022 2006-01-28 Jan Schmidt <thaytan@mad.scientist.com>
11024 * gst/gstutils.c: (gst_element_unlink_pads):
11025 Don't leak pad references.
11027 * tests/check/elements/fakesink.c: (GST_START_TEST):
11028 * tests/check/generic/sinks.c: (GST_START_TEST):
11029 * tests/check/generic/states.c: (GST_START_TEST):
11030 * tests/check/gst/gstbin.c: (GST_START_TEST):
11031 * tests/check/gst/gstcaps.c: (GST_START_TEST):
11032 * tests/check/gst/gstelement.c: (GST_START_TEST):
11033 * tests/check/gst/gstghostpad.c: (GST_START_TEST):
11034 * tests/check/gst/gstiterator.c: (GST_START_TEST):
11035 * tests/check/gst/gstvalue.c: (GST_START_TEST):
11036 Fix a bunch of leaks. Make generic/sinks.c
11037 use a bit less cpu by slowing the buffer rate
11038 between fakesrc and fakesink.
11040 2006-01-27 Stefan Kost <ensonic@users.sf.net>
11041 * gst/gstcaps.c:
11042 * gst/gstelement.c: (gst_element_send_event):
11043 * gst/gstevent.c:
11044 * gst/gstinfo.c:
11045 * gst/gstiterator.c:
11046 * gst/gstiterator.h:
11047 * gst/gstpad.c: (gst_pad_send_event):
11048 * gst/gststructure.c:
11049 * gst/gsturi.c:
11050 * gst/gstutils.c:
11051 * gst/gstvalue.c:
11052 * libs/gst/base/gstadapter.c:
11053 doc fixes, to link to function, just write gst_cool_function(), don't
11054 prefix with '#'
11056 2006-01-27 Jan Schmidt <thaytan@mad.scientist.com>
11058 * plugins/elements/gsttee.c: (gst_tee_do_push),
11059 (gst_tee_handle_buffer):
11060 Always prefer an actual return value from a src
11061 pad in place of NOT_LINKED. This means we return
11062 WRONG_STATE when all src pads are WRONG_STATE
11063 instead of NOT_LINKED.
11065 Lock when replacing the last message to prevent
11066 racing with the get_property method.
11068 Add debug output
11070 2006-01-27 Jan Schmidt <thaytan@mad.scientist.com>
11072 * tests/check/Makefile.am:
11073 * tests/check/gst/gstquery.c: (GST_START_TEST), (gstquery_suite),
11074 (main):
11075 Add a very simple check that should have caught the memleak I fixed
11076 last night (if not for the slice allocator hiding it)
11078 2006-01-27 Jan Schmidt <thaytan@mad.scientist.com>
11080 * gst/gstbin.c: (gst_bin_dispose), (gst_bin_provide_clock_func),
11081 (gst_bin_remove_func), (gst_bin_handle_message_func),
11082 (bin_query_duration_fold), (bin_query_generic_fold):
11083 Clean up references to the clock provider when disposed or when
11084 handling a clock-lost message from it.
11086 Unref sinks when performing a query via gst_iterator_fold, as the
11087 gst_bin_iterate_sinks iterator refs each item. (Fixes #323874)
11089 * gst/gstclock.c: (gst_clock_class_init), (gst_clock_dispose),
11090 (gst_clock_set_master):
11091 Drop our reference to the master clock, if any, when we are disposed.
11093 * gst/gsttypefindfactory.c: (gst_type_find_factory_dispose):
11094 Chain up in dispose.
11096 2006-01-26 Wim Taymans <wim@fluendo.com>
11098 * libs/gst/base/gstbasesrc.c: (gst_base_src_get_range):
11099 Add some debugging.
11101 2006-01-26 Julien MOUTTE <julien@moutte.net>
11103 * plugins/elements/gsttee.c: (gst_tee_do_push),
11104 (gst_tee_handle_buffer): Apply patch from #328715. Tee now
11105 handles pad being NOT_LINKED or in WRONG_STATE.
11107 2006-01-26 Stefan Kost <ensonic@users.sf.net>
11109 * win32/MANIFEST:
11110 more updating
11112 2006-01-26 Stefan Kost <ensonic@users.sf.net>
11114 * win32/MANIFEST:
11115 remove obsolete entry
11117 2006-01-26 Stefan Kost <ensonic@users.sf.net>
11119 * docs/gst/gstreamer-sections.txt:
11120 * gst/gstbin.c: (bin_element_is_src), (src_iterator_filter),
11121 (gst_bin_iterate_sources), (gst_bin_send_event):
11122 * gst/gstbin.h:
11123 * gst/gstelement.c: (gst_element_send_event):
11124 * gst/gstevent.c:
11125 * gst/gstpad.c: (gst_pad_send_event):
11126 added code for downstream events, reviewed docs in gstevent.c
11128 2006-01-25 Julien MOUTTE <julien@moutte.net>
11130 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_position):
11131 We only query position using the clock in the playing state.
11132 Query peer in the other cases.
11133 * win32/common/config.h: Updates.
11135 2006-01-24 Wim Taymans <wim@fluendo.com>
11137 * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
11138 A clock entry that is scheduled for the exact time of the
11139 clock is still in time.
11141 * libs/gst/base/gstbasesink.c: (gst_base_sink_handle_object),
11142 (gst_base_sink_do_sync):
11143 Add some more debug info.
11145 2006-01-23 Sebastien Moutte <sebastien@moutte.net>
11147 * win32/vs7:
11148 Add new vs7 project files and solution.
11150 2006-01-23 Sebastien Moutte <sebastien@moutte.net>
11152 * win32/vs7:
11153 all files removed as they were out-dated.
11155 2006-01-20 Thomas Vander Stichele <thomas at apestaart dot org>
11157 * docs/random/release:
11158 update notes
11159 * gst/gstbin.c: (gst_bin_init):
11160 * gst/gstbus.c: (gst_bus_new):
11161 * gst/gstbus.h:
11162 * gst/gstpipeline.c: (gst_pipeline_init):
11163 use gst_bus_new(), improve logging, fix docs
11164 * win32/common/config.h:
11165 update for cvs build
11167 2006-01-20 Thomas Vander Stichele <thomas at apestaart dot org>
11169 * autogen.sh:
11170 up required version of automake to 1.7
11172 2006-01-20 Sebastien Moutte <sebastien@moutte.net>
11174 * win32/common/libgstreamer.def:
11175 export gst_buffer_is_metadata_writable
11177 2006-01-20 Tim-Philipp Müller <tim at centricular dot net>
11179 * docs/gst/gstreamer-sections.txt:
11180 * gst/gstevent.h:
11181 Add gst_event_replace() (#327001)
11183 2006-01-20 Wim Taymans <wim@fluendo.com>
11185 * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
11186 Make it actually compile too..
11188 2006-01-20 Wim Taymans <wim@fluendo.com>
11190 * gst/gstcaps.c:
11191 Clarify behaviour of _is_equal() when passing NULL parameters.
11193 * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
11194 (gst_pad_set_caps):
11195 Cleanups. Don't unref NULL caps.
11196 When setting the same caps, protect caps of the pad with
11197 proper lock.
11198 Use full functionality of _is_equal() when comparing caps.
11200 2006-01-20 Jan Schmidt <thaytan@mad.scientist.com>
11202 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_is_collected):
11203 Don't loop infinitely if there are no buffers to present. Partially
11204 fixes #327197, but collectpads is just broken for reusing elements
11205 to do multiple encodes atm.
11207 2006-01-20 Jan Schmidt <thaytan@mad.scientist.com>
11209 * tools/gst-inspect.c: (print_element_features):
11210 * tools/gst-xmlinspect.c: (main):
11211 URL_HANDLER is not a plugin feature we can search for in
11212 the registry.
11214 2006-01-19 Edward Hervey <edward@fluendo.com>
11216 * gst/gstelement.c: (gst_element_pads_activate):
11217 When activating, do src pads first, then sink pads.
11218 When de-activating, do sink pads first, then src pads.
11220 2006-01-19 Jan Schmidt <thaytan@mad.scientist.com>
11222 * docs/gst/gstreamer-sections.txt:
11223 Add gst_index_add_associationv to the docs
11225 2006-01-19 Jan Schmidt <thaytan@mad.scientist.com>
11227 * gst/gstevent.c:
11228 Fix docs typo
11230 * plugins/elements/gstqueue.c: (gst_queue_handle_sink_event),
11231 (gst_queue_chain), (gst_queue_push_one), (gst_queue_loop):
11232 Do some refactoring. Doesn't actually change functionality,
11233 but makes landing the DRAIN event easier later.
11235 2006-01-19 Tim-Philipp Müller <tim at centricular dot net>
11237 * docs/pwg/advanced-scheduling.xml:
11238 Update from 0.9.x to 0.10 API and make example a bit
11239 clearer.
11241 2006-01-19 Jan Schmidt <thaytan@mad.scientist.com>
11243 * docs/gst/gstreamer-sections.txt:
11244 Add gst_buffer_(is|make)_metadata_writable methods.
11246 2006-01-19 Jan Schmidt <thaytan@mad.scientist.com>
11248 * docs/design/part-sparsestreams.txt:
11249 Update sparse streams doc, hopefully for greater clarity
11251 2006-01-18 Jan Schmidt <thaytan@mad.scientist.com>
11253 * docs/design/part-events.txt:
11254 Remove mention of FILLER events.
11255 Add DRAIN event.
11257 * docs/design/part-sparsestreams.txt:
11258 Write some things about using NEWSEGMENT to keep sparse streams
11259 flowing.
11261 2006-01-18 Tim-Philipp Müller <tim at centricular dot net>
11263 * gst/gstbin.c: (gst_bin_dispose):
11264 Guard gst_object_unref call against a NULL object (dispose
11265 can theoretically be called multiple times).
11267 2006-01-18 Wim Taymans <wim@fluendo.com>
11269 * gst/gstbin.c: (gst_bin_element_set_state):
11270 * gst/gstclock.c: (gst_clock_id_wait):
11271 Added some more debug info.
11273 * libs/gst/base/gstadapter.c:
11274 Added more docs.
11276 * libs/gst/base/gstbasesink.c: (gst_base_sink_handle_object),
11277 (gst_base_sink_do_sync), (gst_base_sink_chain):
11278 Added some comments.
11280 2006-01-18 Wim Taymans <wim@fluendo.com>
11282 * tests/check/Makefile.am:
11283 * tests/check/elements/fakesink.c: (chain_async_buffer),
11284 (chain_async), (chain_async_return), (GST_START_TEST),
11285 (fakesink_suite), (main):
11286 Added fakesink test that checks prerolling and clipping
11287 behaviour.
11289 * tests/check/gst/gstutils.c: (GST_START_TEST):
11290 Make check run faster so that buildbots don't timeout.
11292 2006-01-18 Wim Taymans <wim@fluendo.com>
11294 * libs/gst/base/gstbasesink.c: (gst_base_sink_handle_object),
11295 (gst_base_sink_do_sync):
11296 Some cleanups.
11297 When the sink finishes blocking on the preroll buffer, it can
11298 immediatly render it instead of rendering when the next buffer
11299 arrives.
11301 2006-01-18 Wim Taymans <wim@fluendo.com>
11303 * libs/gst/base/gstbasesink.c: (gst_base_sink_set_property),
11304 (gst_base_sink_get_property), (gst_base_sink_do_sync),
11305 (gst_base_sink_chain):
11306 Small cleanups.
11307 GST_ELEMENT_CLOCK and sync are protected with LOCK.
11308 Don't store _last_stop if the buffer is dropped.
11310 2006-01-18 Tim-Philipp Müller <tim at centricular dot net>
11312 * plugins/elements/gsttypefindelement.c:
11313 (gst_type_find_element_class_init):
11314 'have-type' signal needs to be G_SIGNAL_RUN_FIRST, as it is the
11315 object method handler that sets the caps on the pad and we want
11316 that to happen before we emit the signal (fixes e.g. feeding a
11317 plain text file to decodebin).
11319 2006-01-18 Christian Schaller <Christian@fluendo.com>
11321 * gst/gstplugin.c: Add MPL and Proprietary as license options
11323 2006-01-18 Andy Wingo <wingo@pobox.com>
11325 * gst/gstindex.h (gst_index_add_associationv): Add to header. The
11326 symbol was exported before, it appears this was just an oversight.
11327 Fixes #168703.
11328 Patch by: Torsten Schoenfeld <kaffeetisch at gmx.de>
11330 * gst/gstindex.c (gst_index_add_associationv): Changed int in
11331 prototype to gint. OK since this prototype was not in the header.
11333 2006-01-17 Andy Wingo <wingo@pobox.com>
11335 * gst/gstregistry.c (_gst_registry_remove_cache_plugins): Lock the
11336 registry while we remove plugins.
11338 * tools/gst-inspect.c (print_element_info): Don't unref the
11339 factory arg, that should be the responsibility of whatever code
11340 received the ref. Fixes a double-free when called from
11341 print_element_list via gst-inspect-0.10 -a. Fixes #327324.
11342 (main): Unref the factory if we have one.
11343 (print_element_list): No change -- relies on the
11344 plugin_feature_list_free to free the list of features.
11346 2006-01-17 Jan Schmidt <thaytan@mad.scientist.com>
11348 * gst/gstbuffer.c: (gst_buffer_is_metadata_writable),
11349 (gst_buffer_make_metadata_writable):
11350 * gst/gstbuffer.h:
11351 * libs/gst/base/gstbasetransform.c:
11352 (gst_base_transform_prepare_output_buf):
11353 * plugins/elements/gstcapsfilter.c: (gst_capsfilter_prepare_buf):
11354 * tests/check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
11355 Replace gst_buffer_(make|is)_metadata_writable patch now
11356 that the release is out.
11358 2006-01-17 Andy Wingo <wingo@pobox.com>
11360 * gst/gstregistry.c: Reflow design comment. Update so as to speak
11361 in the present tense without reference to versions.
11363 * gst/gstregistry.c (gst_registry_add_plugin)
11364 (gst_registry_remove_plugin, gst_registry_remove_feature)
11365 (gst_registry_find_feature, gst_registry_get_feature_list)
11366 (gst_registry_get_plugin_list, gst_registry_lookup_feature)
11367 (gst_registry_lookup, gst_registry_scan_path)
11368 (_gst_registry_remove_cache_plugins)
11369 (gst_registry_get_feature_list_by_plugin): Add argument
11370 validation.
11372 === release 0.10.2 ===
11374 2006-01-16 Thomas Vander Stichele <thomas at apestaart dot org>
11376 * configure.ac:
11377 releasing 0.10.2, "If man is five"
11379 2006-01-16 Jan Schmidt <thaytan@mad.scientist.com>
11381 * gst/gstbuffer.c:
11382 * gst/gstbuffer.h:
11383 * libs/gst/base/gstbasetransform.c:
11384 (gst_base_transform_prepare_output_buf):
11385 * plugins/elements/gstcapsfilter.c: (gst_capsfilter_prepare_buf):
11386 * tests/check/gst/gstbuffer.c: (gst_test_suite):
11387 Back out patch until after the release.
11389 2006-01-16 Jan Schmidt <thaytan@mad.scientist.com>
11391 * gst/gstminiobject.c:
11392 Spelling fix in docs.
11393 * ChangeLog - remove conflict indicator
11395 2006-01-16 Jan Schmidt <thaytan@mad.scientist.com>
11397 Reviewed By: Andy Wingo
11399 * gst/gstbuffer.c: (gst_buffer_is_metadata_writable),
11400 (gst_buffer_make_metadata_writable):
11401 * gst/gstbuffer.h:
11402 Add gst_buffer_(is|make)_metadata_writable as analogues of
11403 gst_buffer_(is|make)_writable.
11405 * libs/gst/base/gstbasetransform.c:
11406 (gst_base_transform_prepare_output_buf):
11407 * plugins/elements/gstcapsfilter.c: (gst_capsfilter_prepare_buf):
11408 Use name gst_buffer_(is|make)_metadata_writable functions.
11410 * tests/check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
11411 Test gst_buffer_(is|make)_metadata_writable
11413 (Closes: #324162)
11415 2006-01-14 Thomas Vander Stichele <thomas at apestaart dot org>
11417 * docs/manual/Makefile.am:
11418 don't do parallel make
11419 * configure.ac:
11420 AC_SUBST HOST_CPU
11421 * win32/common/config.h.in:
11422 add generations for HOST_CPU and GST_MAJORMINOR
11423 * win32/common/config.h:
11424 commit generated result
11426 2006-01-13 Tim-Philipp Müller <tim at centricular dot net>
11428 * docs/manual/appendix-integration.xml:
11429 Update GNOME integration section to use gst_init_get_option_group()
11430 instead of the old popt stuff (#322911). Also, GNOME applications
11431 should now use gconf*sink and gconf*src instead of the old gconf
11432 helper lib we had.
11434 2006-01-13 Stefan Kost <ensonic@users.sf.net>
11437 * docs/gst/gstreamer-docs.sgml:
11438 * docs/gst/gstreamer-sections.txt:
11439 * docs/libs/gstreamer-libs-sections.txt:
11440 add new API entries to the docs
11441 * libs/gst/controller/Makefile.am:
11442 * libs/gst/controller/gstcontroller.c:
11443 * libs/gst/controller/gstcontroller.h:
11444 * libs/gst/controller/gstcontrollerprivate.h:
11445 * libs/gst/controller/gsthelper.c:
11446 * libs/gst/controller/gstinterpolation.c:
11447 move private structs to private header
11448 * po/README:
11449 gstreamer-0.7 -> gstreamer-0.10
11450 * tests/check/libs/struct_i386.h:
11451 remove private structs
11453 2006-01-13 Thomas Vander Stichele <thomas at apestaart dot org>
11455 * plugins/indexers/Makefile.am:
11456 Fixes as part of #317048
11458 2006-01-13 Thomas Vander Stichele <thomas at apestaart dot org>
11460 * plugins/indexers/Makefile.am:
11461 fix #316086 - compilation when mmap is missing
11463 2006-01-12 Sebastien Moutte <sebastien@moutte.net>
11465 * libs/gst/base/gstbasesink.c:
11466 *cur = (now - base) * basesink->segment.abs_rate + time; replaced by
11467 *cur = gst_guint64_to_gdouble(now - base) * basesink->segment.abs_rate + time; for vs6
11468 * win32/common/config.h:
11469 added some defines GST_MAJORMINOR and HOST_CPU
11470 * win32/common/libgstbase.def:
11471 * win32/common/libgstreamer.def:
11472 added some exported functions.
11474 2006-01-12 Stefan Kost <ensonic@users.sf.net>
11476 * libs/gst/controller/gstcontroller.c:
11477 (gst_controlled_property_set_interpolation_mode),
11478 (gst_controlled_property_new):
11479 * libs/gst/controller/gstcontroller.h:
11480 * libs/gst/controller/gstinterpolation.c:
11481 (interpolate_none_get_string_value_array):
11482 make G_TYPE_STRING controlable
11484 2006-01-12 Stefan Kost <ensonic@users.sf.net>
11486 * tools/README:
11487 * tools/gst-feedback.1.in:
11488 * tools/gst-inspect.1.in:
11489 * tools/gst-launch.1.in:
11490 * tools/gst-md5sum.1.in:
11491 * tools/gst-typefind.1.in:
11492 * tools/gst-xmlinspect.1.in:
11493 * tools/gst-xmllaunch.1.in:
11494 cleanup man-pages, remove reference to gst-register, document env-vars
11496 2006-01-12 Jan Schmidt <thaytan@mad.scientist.com>
11498 * gst/gstbuffer.c: (gst_buffer_span):
11499 gst_buffer_span should copy the timestamp of the first buffer
11500 if they were both originally overlapping subbuffers of the
11501 same parent, using the same logic as the 'slow copy' case.
11503 2006-01-11 Jan Schmidt <thaytan@mad.scientist.com>
11505 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_pop):
11506 Need to awaken ALL the pads when we pop a buffer, otherwise
11507 collectpads only works when there is 2 input streams.
11509 2006-01-11 Stefan Kost <ensonic@users.sf.net>
11511 * docs/random/ensonic/media-device-daemon.txt:
11512 more ideas (dbus)
11513 * gst/gstbuffer.c:
11514 fix doc example, add clarification
11515 * tools/gst-launch.1.in:
11516 add initial info about GST_PLUGIN_PATH, needs more work
11518 2006-01-11 Tim-Philipp Müller <tim at centricular dot net>
11520 * docs/manual/basics-bins.xml:
11521 * docs/manual/basics-elements.xml:
11522 * docs/manual/intro-basics.xml:
11523 Some more minor docs additions and updates.
11525 2006-01-11 Wim Taymans <wim@fluendo.com>
11527 * docs/manual/basics-bins.xml:
11528 * docs/manual/basics-elements.xml:
11529 Some small fixes as pointed out by Ser-ver on IRC.
11531 2006-01-10 Edward Hervey <edward@fluendo.com>
11533 * plugins/elements/gstidentity.c: (gst_identity_transform_ip):
11534 Set the buffer offset/offset_end to GST_CLOCK_TIME_NONE when using
11535 the single-segment mode.
11537 2006-01-10 Brian Cameron <brian dot cameron at sun dot com>
11539 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
11541 * libs/gst/base/gstbasesrc.c: (gst_base_src_init),
11542 (gst_base_src_perform_seek), (gst_base_src_send_event),
11543 (gst_base_src_set_property), (gst_base_src_get_property),
11544 (gst_base_src_loop), (gst_base_src_start),
11545 (gst_base_src_activate_push):
11546 * libs/gst/base/gstbasesrc.h:
11547 Name (private) union; makes Sun's Forte compiler happy (#324900).
11549 2006-01-09 Tim-Philipp Müller <tim at centricular dot net>
11551 * README:
11552 gst-register is gone.
11554 2006-01-07 Thomas Vander Stichele <thomas at apestaart dot org>
11556 * gst/gstvalue.c: (_gst_value_initialize):
11557 make the G_TYPE_DATE instantiation work if debug is disabled
11559 2006-01-06 Tim-Philipp Müller <tim at centricular dot net>
11561 * gst/gstmessage.c: (gst_message_parse_tag),
11562 (gst_message_parse_error), (gst_message_parse_warning):
11563 Don't crash when return location for error/warning debug
11564 string is NULL; add fact that return locations can be
11565 NULL to docs where appropriate.
11567 2006-01-05 Wim Taymans <wim@fluendo.com>
11569 * gst/gstplugin.c: (gst_plugin_load_file):
11570 Replace strdup by g_strdup.
11572 2006-01-05 Thomas Vander Stichele <thomas at apestaart dot org>
11574 * docs/pwg/advanced-types.xml:
11575 fix doc borkage
11577 2006-01-05 Thomas Vander Stichele <thomas at apestaart dot org>
11579 submitted by: Abel Cheung
11581 * po/LINGUAS:
11582 * po/zh_TW.po:
11583 Added Chinese (traditional) translation
11585 2006-01-04 Wim Taymans <wim@fluendo.com>
11587 * docs/manual/basics-pads.xml:
11588 * docs/plugins/Makefile.am:
11589 * docs/plugins/gstreamer-plugins-docs.sgml:
11590 * docs/plugins/gstreamer-plugins-sections.txt:
11591 * docs/pwg/advanced-clock.xml:
11592 * docs/pwg/advanced-scheduling.xml:
11593 * docs/pwg/advanced-types.xml:
11594 * plugins/elements/gstfdsink.c:
11595 * plugins/elements/gstfdsrc.c:
11596 * plugins/elements/gstfdsrc.h:
11597 * plugins/elements/gstidentity.c: (gst_identity_class_init):
11598 * plugins/elements/gstidentity.h:
11599 * plugins/elements/gstqueue.h:
11600 * plugins/elements/gsttee.c:
11601 * plugins/elements/gsttee.h:
11602 * plugins/elements/gsttypefindelement.c:
11603 (gst_type_find_element_class_init):
11604 * plugins/elements/gsttypefindelement.h:
11605 Small updates to various docs.
11606 Added core plugins to docs.
11608 2006-01-03 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
11610 * common/gst.supp:
11611 add a suppression for liboil's uninitialized variable
11613 2006-01-02 James Livingston <jrl at ids dot org dot au>
11615 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
11617 * gst/gstutils.h:
11618 Add prototype for _get_type() function to GST_BOILERPLATE_FULL
11619 macro, so that gcc doesn't complain if the -Wmissing-prototypes
11620 compiler switch is being used (#325429).
11622 2005-12-29 Tim-Philipp Müller <tim at centricular dot net>
11624 * gst/gstbin.c: (gst_bin_query):
11625 Disable duration query caching in bins until it gets
11626 fixed (see #324807).
11628 2005-12-27 Tim-Philipp Müller <tim at centricular dot net>
11630 * tools/gst-inspect.c: (print_element_properties_info):
11631 Handle properties of POINTER and BOXED type.
11633 2005-12-27 Tim-Philipp Müller <tim at centricular dot net>
11635 * gst/gst.c: (init_post):
11636 Init tags stuff and some other things before loading
11637 any static plugins (there may be other static plugins
11638 than just the GStreamer ones, and they may want to
11639 register their own tags or formats or whatever, and
11640 preferably without segfaulting).
11642 * plugins/elements/gstqueue.c: (gst_queue_handle_src_query):
11643 Print at least a warning in the debug logs if we drop a
11644 query just because we don't know how to adjust the value
11645 in the particular format.
11647 2005-12-24 David Schleef <ds@schleef.org>
11649 * tools/gstreamer-completion:
11650 Replacement for gst-complete written in sh and sed. Only
11651 completes names of features, but that's 90% of what I want
11652 it for. Properties are not available in registry.xml. (Maybe
11653 they should be...)
11655 === release 0.10.1 ===
11657 2005-12-23 Thomas Vander Stichele <thomas at apestaart dot org>
11659 * configure.ac:
11660 releasing 0.10.1, "Nollaig chridheil"
11662 2005-12-22 Tim-Philipp Müller <tim at centricular dot net>
11664 * docs/faq/cvs.xml:
11665 Add missing quote, should be make ERROR_CFLAGS="".
11667 2005-12-20 Wim Taymans <wim@fluendo.com>
11669 * docs/design/part-trickmodes.txt:
11670 More documentation on trickmodes.
11672 2005-12-20 Edward Hervey <edward@fluendo.com>
11674 * gst/gstcaps.c: (gst_static_caps_get_type):
11675 * gst/gstcaps.h:
11676 API addition: GST_TYPE_STATIC_CAPS
11677 Added gpointer GType for GstStaticCaps so we can wrap them in bindings.
11678 * gst/gstpadtemplate.c: (gst_static_pad_template_get_type):
11679 * gst/gstpadtemplate.h:
11680 API addition: GST_TYPE_STATIC_PAD_TEMPLATE
11681 Added gpointer GType for GstStaticPadTemplate so we can wrap them in
11682 bindings.
11684 2005-12-18 Wim Taymans <wim@fluendo.com>
11686 * libs/gst/base/gstadapter.c:
11687 * libs/gst/base/gstadapter.h:
11688 * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init),
11689 (gst_base_sink_get_position):
11690 * libs/gst/base/gstbasesink.h:
11691 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
11692 (gst_base_src_default_query), (gst_base_src_default_do_seek),
11693 (gst_base_src_do_seek), (gst_base_src_perform_seek),
11694 (gst_base_src_send_event), (gst_base_src_update_length),
11695 (gst_base_src_get_range), (gst_base_src_loop),
11696 (gst_base_src_start):
11697 * libs/gst/base/gstbasesrc.h:
11698 * libs/gst/base/gstbasetransform.h:
11699 * libs/gst/base/gstcollectpads.h:
11700 * libs/gst/base/gstpushsrc.c:
11701 * libs/gst/base/gstpushsrc.h:
11702 * libs/gst/dataprotocol/dataprotocol.c:
11703 * libs/gst/dataprotocol/dataprotocol.h:
11704 * libs/gst/net/gstnetclientclock.h:
11705 * libs/gst/net/gstnettimeprovider.h:
11706 Documentation updates.
11708 2005-12-18 Tim-Philipp Müller <tim at centricular dot net>
11710 * docs/manual/basics-helloworld.xml:
11711 Remove superfluous closing bracket in helloworld example.
11713 2005-12-17 Tim-Philipp Müller <tim at centricular dot net>
11715 * tools/gst-launch.1.in:
11716 Update gst-launch man page; add a section with useful
11717 environment variables. Fixes #323882.
11719 2005-12-16 Stefan Kost <ensonic@users.sf.net>
11721 * gst/gst.c:
11722 * gst/gst_private.h:
11723 change some char* into char[]
11725 2005-12-16 Wim Taymans <wim@fluendo.com>
11727 * gst/gstregistryxml.c: (load_feature):
11728 Cleanups.
11729 Don't use g_object_unref on GstObjects so that we avoid
11730 leaks on unsafe glibs.
11732 2005-12-16 Wim Taymans <wim@fluendo.com>
11734 * gst/gstbin.c: (gst_bin_recalc_state):
11735 Small doc updates.
11737 2005-12-16 Wim Taymans <wim@fluendo.com>
11739 * common/check.mak:
11740 Added make forever target for check.
11742 2005-12-16 Thomas Vander Stichele <thomas at apestaart dot org>
11744 * gst/gst.c: (init_post):
11745 make the registry cache file HOST_CPU-dependent
11747 2005-12-16 Andy Wingo <wingo@pobox.com>
11749 * plugins/elements/gstbufferstore.c
11750 (gst_buffer_store_cleared_func): Pay attention to g_list_append
11751 return value.
11753 * tests/check/gst/gstobject.c
11754 (test_fake_object_name_threaded_unique): Pay attention to
11755 g_list_sort return value.
11757 2005-12-16 Tim-Philipp Müller <tim at centricular dot net>
11759 * tools/gst-feedback-m.m:
11760 Update for 0.9/0.10 (fixes #323870).
11762 2005-12-15 Tim-Philipp Müller <tim at centricular dot net>
11764 * gst/gstminiobject.c: (gst_value_mini_object_lcopy):
11765 Fix lcopy for mini objects, the mini object needs to be ref'ed.
11767 * tests/check/gst/gstminiobject.c: (my_foo_init),
11768 (my_foo_get_property), (my_foo_set_property), (my_foo_class_init),
11769 (test_value_collection), (gst_mini_object_suite):
11770 Add test to ensure refcounts end up as expected when passing
11771 GstMiniObjects through g_object_get() and g_object_set().
11773 2005-12-14 Julien MOUTTE <julien@moutte.net>
11775 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_base_init),
11776 (gst_collect_pads_remove_pad), (gst_collect_pads_is_collected),
11777 (gst_collect_pads_event), (gst_collect_pads_chain): Refactoring
11778 of collectpads. This version removes a lot of races without
11779 touching API/ABI. Yay !
11781 2005-12-14 Jan Schmidt <thaytan@mad.scientist.com>
11783 * gst/gstpad.c: (gst_pad_activate_pull), (gst_pad_link_prepare):
11784 Don't allow activation of a srcpad in pull_range if it has no
11785 getrange function.
11786 Change some debug statements to be a little clearer
11788 * plugins/elements/gsttypefindelement.c:
11789 (gst_type_find_handle_src_query):
11790 Check that we have a peer before executing queries thereupon.
11792 * tests/examples/metadata/read-metadata.c: (message_loop):
11793 Use gst_bus_pop instead of gst_bus_poll when we just want it to
11794 immediately return us any available message with 0 timeout.
11796 2005-12-12 Michael Smith <msmith@fluendo.com>
11798 * gst/gsttypefindfactory.c: (gst_type_find_factory_call_function):
11799 Don't unref factories after calling them.
11800 * libs/gst/base/gsttypefindhelper.c: (gst_type_find_helper):
11801 * plugins/elements/gsttypefindelement.c:
11802 (gst_type_find_element_chain):
11803 Free lists of factories after using them. Fixing typefinding memory
11804 leaks.
11806 2005-12-12 Stefan Kost <ensonic@users.sf.net>
11808 * gst/gstpluginfeature.c: (gst_plugin_feature_finalize),
11809 (gst_plugin_feature_load):
11810 more meaningful debug output
11811 * configure.ac:
11812 * tests/Makefile.am:
11813 * tests/old/examples/Makefile.am:
11814 make make distcheck happy again
11816 2005-12-12 Tim-Philipp Müller <tim at centricular dot net>
11818 * plugins/elements/gsttypefindelement.c: (stop_typefinding):
11819 Catch the special case where we are operating chain-based,
11820 but the downstream peer pad has no chain function. Emit a
11821 custom error message in this case instead of letting the
11822 core generate one implying that this is some sort of core
11823 bug. It's not, it just means that whatever got plugged
11824 into the pipeline downstream when we announced the type
11825 can only operate pull-based, while our source can only
11826 operate push-based (e.g. http://foo/bar.mov ! qtdemux ! ...)
11827 Error string has not been marked for translation yet, as
11828 it probably needs some more work first.
11830 (gst_type_find_element_get_best_possibility):
11831 Add helper function to find the best of all available
11832 found possibilities that qualify given the min. threshold.
11834 (gst_type_find_element_handle_event):
11835 Fix the case where we get an EOS while still in TYPEFIND
11836 mode (we want to chose the best of all possible types,
11837 not just the first type that happens to be in our unsorted
11838 list of possible types).
11840 (gst_type_find_element_chain):
11841 Make sure we return GST_FLOW_ERROR when we errored out
11842 in stop_typefinding(); also, don't just find the best of
11843 all found type entries and then use the last examined
11844 type entry, but actually use the best entry.
11846 2005-12-12 Tim-Philipp Müller <tim at centricular dot net>
11848 * tests/examples/typefind/typefind.c: (type_found):
11849 * tests/examples/xml/runxml.c: (xml_loaded):
11850 More gcc4 fixes and a mem leak fix.
11852 2005-12-12 Stefan Kost <ensonic@users.sf.net>
11854 * tests/examples/xml/createxml.c: (object_saved):
11855 gcc 4 fixes
11857 2005-12-12 Stefan Kost <ensonic@users.sf.net>
11859 * tests/Makefile.am:
11860 enable the examples even more
11862 2005-12-12 Andy Wingo <wingo@pobox.com>
11864 * libs/gst/net/gstnettimeprovider.c
11865 (gst_net_time_provider_class_init, gst_net_time_provider_init)
11866 (gst_net_time_provider_set_property)
11867 (gst_net_time_provider_get_property):
11868 API addition: Export "active" as a GObject property.
11869 (gst_net_time_provider_thread): Only respond to time queries if
11870 the time provider is active.
11872 * libs/gst/net/gstnettimeprovider.h: Add an "active" boolean to
11873 NetTimeProvider, preserving binary compat.
11875 2005-12-12 Stefan Kost <ensonic@users.sf.net>
11877 * tests/examples/controller/audio-example.c: (main):
11878 * tests/examples/launch/Makefile.am:
11879 convert comments again
11881 2005-12-12 Wim Taymans <wim@fluendo.com>
11883 * libs/gst/base/gstpushsrc.c:
11884 Fix typo.
11886 2005-12-12 Wim Taymans <wim@fluendo.com>
11888 * docs/libs/gstreamer-libs-sections.txt:
11889 Added new symbol to docs.
11891 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
11892 (gst_base_src_init), (gst_base_src_set_format),
11893 (gst_base_src_default_query), (gst_base_src_query),
11894 (gst_base_src_default_do_seek), (gst_base_src_do_seek),
11895 (gst_base_src_perform_seek), (gst_base_src_send_event),
11896 (gst_base_src_default_event), (gst_base_src_event_handler),
11897 (gst_base_src_set_property), (gst_base_src_get_property),
11898 (gst_base_src_wait), (gst_base_src_do_sync),
11899 (gst_base_src_update_length), (gst_base_src_get_range),
11900 (gst_base_src_check_get_range), (gst_base_src_loop),
11901 (gst_base_src_default_negotiate), (gst_base_src_start),
11902 (gst_base_src_activate_push), (gst_base_src_activate_pull),
11903 (gst_base_src_change_state):
11904 * libs/gst/base/gstbasesrc.h:
11905 Implement seeking to other formats than _BYTES.
11906 Implement more seeking methods correctly.
11907 Doc updates.
11908 Added query vmethod.
11909 Added do_seek vmethod to make life easier for subclasses
11910 when seeking.
11911 API addition: gst_base_src_set_format()
11913 2005-12-12 Stefan Kost <ensonic@users.sf.net>
11915 * tests/examples/Makefile.am:
11916 added that too
11918 2005-12-12 Stefan Kost <ensonic@users.sf.net>
11920 * configure.ac:
11921 * docs/random/ensonic/media-device-daemon.txt:
11922 * tests/examples/controller/.cvsignore:
11923 * tests/examples/controller/Makefile.am:
11924 * tests/examples/controller/audio-example.c: (main):
11925 * tests/examples/helloworld/.cvsignore:
11926 * tests/examples/helloworld/Makefile.am:
11927 * tests/examples/helloworld/helloworld.c: (event_loop), (main):
11928 * tests/examples/launch/.cvsignore:
11929 * tests/examples/launch/Makefile.am:
11930 * tests/examples/launch/mp3parselaunch.c: (event_loop), (main):
11931 * tests/examples/metadata/.cvsignore:
11932 * tests/examples/metadata/Makefile.am:
11933 * tests/examples/metadata/read-metadata.c: (message_loop),
11934 (make_pipeline), (print_tag), (main):
11935 * tests/examples/queue/.cvsignore:
11936 * tests/examples/queue/Makefile.am:
11937 * tests/examples/queue/queue.c: (event_loop), (main):
11938 * tests/examples/typefind/.cvsignore:
11939 * tests/examples/typefind/Makefile.am:
11940 * tests/examples/typefind/typefind.c: (type_found), (event_loop),
11941 (main):
11942 * tests/examples/xml/.cvsignore:
11943 * tests/examples/xml/Makefile.am:
11944 * tests/examples/xml/createxml.c: (object_saved), (main):
11945 * tests/examples/xml/runxml.c: (xml_loaded), (event_loop), (main):
11946 * tests/old/examples/Makefile.am:
11947 * tests/old/examples/TODO:
11948 * tests/old/examples/controller/.cvsignore:
11949 * tests/old/examples/controller/Makefile.am:
11950 * tests/old/examples/controller/audio-example.c:
11951 * tests/old/examples/helloworld/.cvsignore:
11952 * tests/old/examples/helloworld/Makefile.am:
11953 * tests/old/examples/helloworld/helloworld.c:
11954 * tests/old/examples/launch/.cvsignore:
11955 * tests/old/examples/launch/Makefile.am:
11956 * tests/old/examples/launch/mp3parselaunch.c:
11957 * tests/old/examples/launch/mp3play:
11958 * tests/old/examples/manual/Makefile.am:
11959 * tests/old/examples/metadata/Makefile.am:
11960 * tests/old/examples/metadata/read-metadata.c:
11961 * tests/old/examples/queue/.cvsignore:
11962 * tests/old/examples/queue/Makefile.am:
11963 * tests/old/examples/queue/queue.c:
11964 * tests/old/examples/typefind/.cvsignore:
11965 * tests/old/examples/typefind/Makefile.am:
11966 * tests/old/examples/typefind/typefind.c:
11967 * tests/old/examples/xml/.cvsignore:
11968 * tests/old/examples/xml/Makefile.am:
11969 * tests/old/examples/xml/createxml.c:
11970 * tests/old/examples/xml/runxml.c:
11971 applied some simple fixing to some examples
11972 re-enabled the working examples
11974 2005-12-12 Wim Taymans <wim@fluendo.com>
11976 * gst/gstsegment.c: (gst_segment_init),
11977 (gst_segment_set_last_stop), (gst_segment_set_seek),
11978 (gst_segment_set_newsegment), (gst_segment_to_stream_time),
11979 (gst_segment_to_running_time):
11980 Added more documentation.
11981 Make sure the last_pos value is updated properly.
11982 Make sure to_stream_time and to_running_time don't
11983 operate on wrong values.
11985 * tests/check/gst/gstsegment.c: (GST_START_TEST):
11986 Update check.
11988 2005-12-12 Michael Smith <msmith@fluendo.com>
11990 * plugins/elements/gsttypefindelement.c: (free_entry),
11991 (gst_type_find_element_chain):
11992 Now that we're not leaking factories, make sure we keep references
11993 to them while we need them.
11995 2005-12-12 Thomas Vander Stichele <thomas at apestaart dot org>
11997 * tests/check/gst/struct_i386.h:
11998 ifdef out the XML structs
12000 2005-12-12 Thomas Vander Stichele <thomas at apestaart dot org>
12002 * gst/gstvalue.c: (gst_value_transform_double_fraction):
12003 floor is not needed, F is always positive; this obviates the
12004 need for adding -lm when building without libxml
12006 2005-12-12 Wim Taymans <wim@fluendo.com>
12008 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_position):
12009 Take current playback rate into account when reporting
12010 the position.
12012 2005-12-11 Tim-Philipp Müller <tim at centricular dot net>
12014 * docs/manual/mime-world.fig:
12015 Let's try this again, this time with a file that is
12016 actually in XFig format.
12018 2005-12-11 Tim-Philipp Müller <tim at centricular dot net>
12020 * docs/manual/mime-world.fig:
12021 Add audioconvert element to diagram so that it
12022 matches the text and the code (fixes #319526).
12024 2005-12-11 Tim-Philipp Müller <tim at centricular dot net>
12026 * docs/pwg/building-chainfn.xml:
12027 * docs/pwg/building-pads.xml:
12028 * docs/pwg/building-state.xml:
12029 * docs/pwg/other-source.xml:
12030 Update state change stuff for 0.10 (fixes #322969).
12032 2005-12-11 Tim-Philipp Müller <tim at centricular dot net>
12034 * docs/manual/advanced-dataaccess.xml:
12035 * docs/manual/appendix-checklist.xml:
12036 * docs/manual/appendix-programs.xml:
12037 * docs/manual/basics-pads.xml:
12038 * docs/manual/highlevel-components.xml:
12039 * docs/manual/manual.xml:
12040 Update for 0.10: s/0.9/0.10/; s/audioscale/audiorsample/;
12041 add converters in front of pipelines; remove curly
12042 brackets for threads stuff, they no longer exist; use
12043 GST_TYPE_FRACTION for framerates; update some pieces of
12044 code to 0.10, but there's plenty more to do.
12046 * docs/manual/appendix-porting.xml:
12047 Expand on asynchroneous state changes; s/0.9/0.10/;
12048 mention disappearance of gst_init_get_popt_table()
12049 (fixes #322916).
12051 2005-12-11 Tim-Philipp Müller <tim at centricular dot net>
12053 * docs/faq/using.xml:
12054 Spider no longer exists, and neither does gst-launch-ext.
12055 Update examples to use decodebin and playbin and put
12056 converters in front of sinks (fixes #323726).
12058 2005-12-09 Michael Smith <msmith@fluendo.com>
12060 * plugins/elements/gsttypefindelement.c: (find_peek),
12061 (gst_type_find_element_chain):
12062 Fix leaking element factories in typefinding.
12063 Fix problem where we forgot about a probable type on non-seekable
12064 files, and thus later mis-typefound it.
12066 2005-12-09 Michael Smith <msmith@fluendo.com>
12068 * common/m4/gst-makecontext.m4:
12069 * common/m4/gst-mcsc.m4:
12070 * configure.ac:
12071 * win32/common/config.h:
12072 * win32/common/config.h.in:
12073 Remove makecontext stuff; not used in 0.10 and causes problems on
12074 HPUX according to bug #322441
12076 2005-12-07 Wim Taymans <wim@fluendo.com>
12078 * tests/check/Makefile.am:
12079 * tests/check/libs/libsabi.c: (GST_START_TEST), (gstabi_suite),
12080 (main):
12081 * tests/check/libs/struct_i386.h:
12082 Added ABI check for libs
12084 2005-12-07 Wim Taymans <wim@fluendo.com>
12086 * tests/check/Makefile.am:
12087 And add the struct_i386.h to dist.
12089 2005-12-07 Wim Taymans <wim@fluendo.com>
12091 * tests/check/Makefile.am:
12092 * tests/check/gst/.cvsignore:
12093 * tests/check/gst/gstabi.c: (GST_START_TEST), (gstabi_suite),
12094 (main):
12095 * tests/check/gst/struct_i386.h:
12096 Added check for ABI compatibility.
12098 2005-12-07 Wim Taymans <wim@fluendo.com>
12100 * plugins/elements/gstfakesrc.c: (gst_fake_src_class_init),
12101 (gst_fake_src_get_times), (gst_fake_src_create):
12102 Fix broken sync option, fixes #323259
12104 2005-12-07 Wim Taymans <wim@fluendo.com>
12106 * gst/gstbuffer.c:
12107 Small docs update.
12109 * gst/gstcaps.c: (gst_caps_is_equal):
12110 Don't assert on NULL <--> X. Fixes #323260
12112 * gst/gstminiobject.c: (gst_mini_object_replace):
12113 If we're doing atomic operations, we might just as well use
12114 the proper way to get an atomic pointer.
12116 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_position):
12117 Clean up debugging.
12119 2005-12-07 Michael Smith <msmith@fluendo.com>
12121 * gst/parse/grammar.y:
12122 Remove handling of { } for threads.
12124 2005-12-06 David Schleef <ds@schleef.org>
12126 * libs/gst/base/gstbasetransform.c: speling fix.
12128 2005-12-06 Thomas Vander Stichele <thomas at apestaart dot org>
12130 * docs/libs/tmpl/gstdataprotocol.sgml:
12131 * docs/random/omega/testing/gstobject.c:
12132 * gst/gst.c:
12133 * gst/gstclock.c:
12134 * gst/gstelement.c:
12135 * gst/gstelementfactory.c:
12136 * gst/gsterror.c:
12137 * gst/gstevent.c:
12138 * gst/gstghostpad.c:
12139 * gst/gstinfo.c:
12140 * gst/gstpadtemplate.c:
12141 * gst/gstregistryxml.c:
12142 * gst/gsttaglist.c:
12143 * gst/gsttagsetter.c:
12144 * gst/gsttypefind.c:
12145 * gst/gstvalue.c:
12146 * libs/gst/base/gstbasesrc.c:
12147 * libs/gst/net/gstnetclientclock.c:
12148 * libs/gst/net/gstnettimeprovider.c:
12149 * plugins/elements/gstfakesrc.c:
12150 * plugins/elements/gstfdsrc.c:
12151 * plugins/elements/gstfilesrc.c:
12152 * plugins/elements/gstidentity.c:
12153 * plugins/elements/gstqueue.c:
12154 * plugins/elements/gsttypefindelement.c:
12155 * plugins/indexers/gstfileindex.c:
12156 * plugins/indexers/gstmemindex.c:
12157 * tests/check/gst/gsttag.c:
12158 * tests/old/examples/cutter/cutter.c:
12159 * tests/old/examples/mixer/mixer.c:
12160 * tests/old/examples/xml/runxml.c: (main):
12161 * tests/old/testsuite/caps/normalisation.c:
12162 * tests/old/testsuite/debug/global.c:
12163 * tests/old/testsuite/parse/parse1.c:
12164 * tools/gst-xmlinspect.c:
12165 * win32/common/dirent.c:
12166 expand tabs
12168 === release 0.10.0 ===
12170 2005-12-05 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
12172 * configure.ac:
12173 releasing 0.10.0, "Maroilles"
12175 2005-12-05 Thomas Vander Stichele <thomas at apestaart dot org>
12177 submitted by: Funda Wang <fundawang@linux.net.cn>
12179 * po/LINGUAS:
12180 * po/zh_CN.po:
12181 added Chinese (Traditional) translation
12183 2005-12-05 Thomas Vander Stichele <thomas at apestaart dot org>
12185 * docs/gst/gstreamer-sections.txt:
12186 * docs/libs/tmpl/gstdataprotocol.sgml:
12187 * docs/random/thomasvs/TODO:
12188 * gst/gstutils.c:
12189 * gst/gstutils.h:
12190 fix docs
12192 2005-12-05 Andy Wingo <wingo@pobox.com>
12194 patch by: Wim Taymans <wim@fluendo.com>
12196 * libs/gst/base/gstbasetransform.c
12197 (gst_base_transform_prepare_output_buf)
12198 (gst_base_transform_buffer_alloc):
12199 * plugins/elements/gstqueue.c (gst_queue_bufferalloc): Call
12200 alloc_buffer_and_set_caps.
12202 * gst/gstpad.c (gst_pad_alloc_buffer): Changed to not call
12203 set_caps on the source pad.
12204 (gst_pad_alloc_buffer_and_set_caps): New function, does what
12205 alloc_buffer used to do. Fixes #322874.
12207 * docs/gst/gstreamer-sections.txt:
12208 * docs/design/part-negotiation.txt:
12209 * docs/pwg/advanced-negotiation.xml: Update for the alloc_buffer
12210 changes.
12212 2005-12-05 Thomas Vander Stichele <thomas at apestaart dot org>
12214 patch by: Sebastien Moutte
12216 * win32/MANIFEST:
12217 * win32/common/config.h.in:
12218 * win32/vs6/libgstcontroller.dsp:
12219 win32 build fixes
12221 2005-12-05 Wim Taymans <wim@fluendo.com>
12223 * gst/gstcaps.c: (gst_caps_is_equal):
12224 * plugins/elements/gstfakesrc.c: (gst_fake_src_class_init),
12225 (gst_fake_src_create):
12226 Back out previous code changes, leave doc updates, file bugs
12227 instead.
12229 2005-12-05 Wim Taymans <wim@fluendo.com>
12231 * plugins/elements/gstfakesrc.c: (gst_fake_src_class_init),
12232 (gst_fake_src_get_times), (gst_fake_src_create):
12233 * plugins/elements/gstfakesrc.h:
12234 Fix broken sync code.
12236 2005-12-05 Wim Taymans <wim@fluendo.com>
12238 * gst/gstcaps.c: (gst_caps_is_equal):
12239 Comparing NULL against !NULL yields different caps, not a
12240 failure.
12242 2005-12-05 Wim Taymans <wim@fluendo.com>
12244 * gst/gstpipeline.c:
12245 Fix small typo in docs.
12247 2005-12-05 Andy Wingo <wingo@pobox.com>
12249 patch by: Thomas Vander Stichele <thomas at apestaart dot org>
12251 * gst/gst.c (init_post): remove hard-coded 0.9 location for
12252 registries/plugins with a MAJORMINOR one.
12253 (plugin_desc): Rename library from gstcoreleements to
12254 staticelements. Fixes #323222.
12256 2005-12-05 Tim-Philipp Müller <tim at centricular dot net>
12258 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_base_init):
12259 Change debug category to 'collectpads' from 'collect_pads'
12260 (fixes #323250).
12262 2005-12-04 Thomas Vander Stichele <thomas at apestaart dot org>
12264 patch by: Sebastien Moutte
12266 * libs/gst/controller/gstinterpolation.c:
12267 use convert function for uint64/double
12268 * win32/vs6/libgstcontroller.dsp:
12269 link to GLib
12271 2005-12-04 Thomas Vander Stichele <thomas at apestaart dot org>
12273 * gst/gstutils.c: (gst_util_guint64_to_gdouble),
12274 (gst_util_gdouble_to_guint64), (gst_util_uint64_scale_int64):
12275 * gst/gstutils.h:
12276 * tests/check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
12277 add tests that seem to show that the guint64/gdouble conversions
12278 are correct.
12280 2005-12-02 Wim Taymans <wim@fluendo.com>
12282 * gst/gstregistry.c: (gst_registry_add_path):
12283 * gst/gstregistry.h:
12284 * gst/gstregistryxml.c:
12285 Fix docs again.
12287 2005-12-02 Wim Taymans <wim@fluendo.com>
12289 * gst/gstutils.c: (gst_util_uint64_scale_int64),
12290 (gst_util_uint64_scale_int):
12291 Small cleanup.
12293 * libs/gst/base/gstbasesink.c: (gst_base_sink_handle_object):
12294 Add debug log line.
12296 * libs/gst/base/gstbasetransform.c: (gst_base_transform_event):
12297 Add FIXME.
12299 2005-12-02 Thomas Vander Stichele <thomas at apestaart dot org>
12301 * win32/MANIFEST:
12302 * win32/common/config.h:
12303 * win32/vs6/gstreamer.dsw:
12304 * win32/vs6/libgstcoreelements.dsp:
12305 * win32/vs6/libgstelements.dsp:
12306 renamed core elements plugin
12308 2005-12-02 Thomas Vander Stichele <thomas at apestaart dot org>
12310 * tools/gst-run.c: (compare_major_minor), (find_highest_version),
12311 (get_candidates):
12312 do piece-wise major/minor comparison so 0.9 < 0.10
12313 also allow .exe extensions for tools
12315 2005-12-02 Michael Smith <msmith@fluendo.com>
12317 * gst/gst.c:
12318 Escape a % to make gtkdoc happier; bug 322958.
12320 === release 0.9.7 ===
12322 2005-12-01 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
12324 * configure.ac:
12325 releasing 0.9.7, "My Dog Has No Nose"
12327 2005-12-01 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
12329 * common/gst-xmlinspect.py:
12330 * configure.ac:
12331 * docs/libs/tmpl/gstdataprotocol.sgml:
12332 * docs/random/release:
12333 * po/af.po:
12334 * po/az.po:
12335 * po/bg.po:
12336 * po/ca.po:
12337 * po/cs.po:
12338 * po/de.po:
12339 * po/en_GB.po:
12340 * po/fr.po:
12341 * po/it.po:
12342 * po/nb.po:
12343 * po/nl.po:
12344 * po/ru.po:
12345 * po/sq.po:
12346 * po/sr.po:
12347 * po/sv.po:
12348 * po/tr.po:
12349 * po/uk.po:
12350 * po/vi.po:
12351 * win32/common/config.h:
12352 * win32/common/config.h.in:
12353 * win32/vs6/gst_inspect.dsp:
12354 * win32/vs6/gst_launch.dsp:
12355 * win32/vs6/libgstbase.dsp:
12356 * win32/vs6/libgstelements.dsp:
12357 * win32/vs6/libgstreamer.dsp:
12358 * win32/vs7/GStreamer.vcproj:
12359 * win32/vs7/gst-inspect.vcproj:
12360 * win32/vs7/gst-launch.vcproj:
12361 * win32/vs7/libgstbase.vcproj:
12362 bump GST_MAJORMINOR to 0.10
12363 reset libtool version
12365 2005-12-01 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
12367 * po/LINGUAS:
12368 * po/bg.po:
12369 Added Bulgarian translation by (Alexander Shopov)
12371 2005-12-01 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
12373 * tests/check/gst/gstplugin.c:
12374 fix test
12376 2005-12-01 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
12378 * common/gst-xmlinspect.py:
12379 * common/gtk-doc-plugins.mak:
12380 * configure.ac:
12381 * docs/Makefile.am:
12382 * docs/gst/Makefile.am:
12383 * docs/gst/gstreamer-docs.sgml:
12384 * docs/gst/gstreamer-sections.txt:
12385 * docs/gst/gstreamer.types:
12386 * docs/gst/gstreamer.types.in:
12387 * docs/plugins/Makefile.am:
12388 * docs/plugins/gstreamer-plugins-docs.sgml:
12389 * docs/plugins/gstreamer-plugins-sections.txt:
12390 * docs/plugins/gstreamer-plugins.types:
12391 * docs/plugins/inspect.stamp:
12392 * docs/plugins/inspect/plugin-coreelements.xml:
12393 * docs/plugins/inspect/plugin-coreindexers.xml:
12394 * docs/plugins/scanobj-build.stamp:
12395 * gstreamer.spec.in:
12396 * plugins/elements/Makefile.am:
12397 * plugins/elements/gstelements.c:
12398 * plugins/elements/gstfakesink.c:
12399 * plugins/elements/gstfakesrc.c:
12400 * plugins/elements/gstfilesink.c:
12401 * plugins/elements/gstfilesrc.c:
12402 * plugins/elements/gstqueue.c:
12403 * plugins/indexers/Makefile.am:
12404 * plugins/indexers/gstindexers.c:
12405 document core plugins in a separate document just like all the
12406 others
12407 rename these plugins to something starting with core
12409 2005-12-01 Andy Wingo <wingo@pobox.com>
12411 * gst/gstevent.h (struct _GstEvent): Meant to remove the extra
12412 padding here before, but it missed the commit.
12414 2005-12-01 Thomas Vander Stichele <thomas at apestaart dot org>
12416 * libs/gst/controller/gstinterpolation.c:
12417 whitespace prices have crashed, we should feel free to use some now
12418 use gst_guint64_to_gdouble
12420 2005-12-01 Thomas Vander Stichele <thomas at apestaart dot org>
12422 * libs/gst/controller/gstcontroller.c:
12423 * libs/gst/controller/gsthelper.c:
12424 * libs/gst/controller/gstinterpolation.c:
12425 * libs/gst/controller/lib.c:
12426 wrap config.h include
12428 2005-12-01 Thomas Vander Stichele <thomas at apestaart dot org>
12430 * docs/gst/gstreamer-sections.txt:
12431 update docs
12433 2005-12-01 Thomas Vander Stichele <thomas at apestaart dot org>
12435 * plugins/elements/gstelements.c:
12436 * plugins/elements/gstfdsink.c: (gst_fd_sink__base_init),
12437 (gst_fd_sink__class_init), (gst_fd_sink__init),
12438 (gst_fd_sink__chain), (gst_fd_sink__set_property),
12439 (gst_fd_sink__get_property):
12440 * plugins/elements/gstfdsink.h:
12441 * plugins/elements/gstfdsrc.c: (_do_init), (gst_fd_src_base_init),
12442 (gst_fd_src_class_init), (gst_fd_src_init), (gst_fd_src_dispose),
12443 (gst_fd_src_update_fd), (gst_fd_src_start), (gst_fd_src_stop),
12444 (gst_fd_src_unlock), (gst_fd_src_set_property),
12445 (gst_fd_src_get_property), (gst_fd_src_create),
12446 (gst_fd_src_is_seekable), (gst_fd_src_get_size),
12447 (gst_fd_src_uri_get_type), (gst_fd_src_uri_get_protocols),
12448 (gst_fd_src_uri_get_uri), (gst_fd_src_uri_set_uri),
12449 (gst_fd_src_uri_handler_init):
12450 * plugins/elements/gstfdsrc.h:
12451 * plugins/elements/gstqueue.c: (gst_queue_get_type):
12452 more anal cleanup
12454 2005-11-30 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
12456 * docs/gst/Makefile.am:
12457 * docs/gst/gstreamer.types.in:
12458 * gst/Makefile.am:
12459 fix the docs build
12461 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
12463 * configure.ac:
12464 * gst/Makefile.am:
12465 * gst/gst.c:
12466 * gst/gstplugin.h:
12467 * gst/gstregistry.h:
12468 * tests/benchmarks/complexity.c:
12469 * tests/benchmarks/mass-elements.c:
12470 * tests/check/Makefile.am:
12471 * tools/Makefile.am:
12472 * tools/gst-inspect.c:
12473 * tools/gst-xmlinspect.c:
12474 various fixes to make
12475 --disable-nls --disable-registry --disable-loadsave
12476 --disable-parse --disable-gst-debug
12477 work and get the core .so down to 360444 bytes after stripping
12479 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
12481 * Makefile.am:
12482 * configure.ac:
12483 descend into tests
12484 * docs/random/thomasvs/TODO:
12485 * tests/Makefile.am:
12486 * tests/README:
12487 add a README
12489 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
12491 * win32/GStreamer.vcproj:
12492 * win32/MANIFEST:
12493 * win32/Makefile:
12494 * win32/Makefile.inspect:
12495 * win32/Makefile.launch:
12496 * win32/Makefile.register:
12497 * win32/README.txt:
12498 * win32/gst-inspect.vcproj:
12499 * win32/gst-launch.vcproj:
12500 * win32/gst-register.vcproj:
12501 * win32/gstelements.vcproj:
12502 * win32/gstgetbits.def:
12503 * win32/gstgetbits.vcproj:
12504 * win32/gstreamer-dbg.def:
12505 * win32/gstreamer.def:
12506 * win32/libgstbase.def:
12507 * win32/libgstbase.vcproj:
12508 * win32/link_oldruntime.c:
12509 * win32/mman.c:
12510 * win32/mman.h:
12511 * win32/mman.inl:
12512 * win32/msvc71.sln:
12513 move even more stuff, win32/ is nice and clean now
12515 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
12517 * libs/gst/control/.cvsignore:
12518 * win32/MANIFEST:
12519 * win32/config.h:
12520 * win32/dirent.c:
12521 * win32/dirent.h:
12522 * win32/gstbytestream.def:
12523 * win32/gstbytestream.vcproj:
12524 * win32/gstconfig.h:
12525 * win32/gstenumtypes.c:
12526 * win32/gstenumtypes.h:
12527 * win32/gstoptimalscheduler.vcproj:
12528 * win32/gstversion.h:
12529 * win32/gtchar.h:
12530 * win32/testsuite/bins.vcproj:
12531 * win32/testsuite/bytestream.vcproj:
12532 * win32/testsuite/caps.vcproj:
12533 * win32/testsuite/cleanup.vcproj:
12534 * win32/testsuite/clock.vcproj:
12535 * win32/testsuite/debug.vcproj:
12536 * win32/testsuite/dlopen.vcproj:
12537 * win32/testsuite/dynparams.vcproj:
12538 * win32/testsuite/elements.vcproj:
12539 * win32/testsuite/ghostpads.vcproj:
12540 * win32/testsuite/indexers.vcproj:
12541 * win32/testsuite/negotiation.vcproj:
12542 * win32/testsuite/parse.vcproj:
12543 * win32/testsuite/plugin.vcproj:
12544 * win32/testsuite/refcounting.vcproj:
12545 * win32/testsuite/schedulers.vcproj:
12546 * win32/testsuite/states.vcproj:
12547 * win32/testsuite/tags.vcproj:
12548 * win32/testsuite/threads.vcproj:
12549 remove old win32 stuff that isn't maintained and should be
12550 reorganized
12552 2005-11-30 Andy Wingo <wingo@pobox.com>
12554 * configure.ac (GST_PKG_DEPS): Revert previous patch, makes
12555 loading the gst.interfaces python module bork.
12557 * configure.ac (GST_PKG_DEPS): Use gmodule-no-export-2.0.pc,
12558 available since GLib 2.2. Fixes #318031.
12560 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
12562 * Makefile.am:
12563 * check/.cvsignore:
12564 * check/Makefile.am:
12565 * check/elements/.cvsignore:
12566 * check/elements/fakesrc.c:
12567 * check/elements/fdsrc.c:
12568 * check/elements/identity.c:
12569 * check/generic/.cvsignore:
12570 * check/generic/states.c:
12571 * check/gst-libs/.cvsignore:
12572 * check/gst-libs/controller.c:
12573 * check/gst-libs/gdp.c:
12574 * check/gst/.cvsignore:
12575 * check/gst/capslist.h:
12576 * check/gst/gst.c:
12577 * check/gst/gstbin.c:
12578 * check/gst/gstbuffer.c:
12579 * check/gst/gstbus.c:
12580 * check/gst/gstcaps.c:
12581 * check/gst/gstelement.c:
12582 * check/gst/gstevent.c:
12583 * check/gst/gstghostpad.c:
12584 * check/gst/gstiterator.c:
12585 * check/gst/gstmessage.c:
12586 * check/gst/gstminiobject.c:
12587 * check/gst/gstobject.c:
12588 * check/gst/gstpad.c:
12589 * check/gst/gstpipeline.c:
12590 * check/gst/gstplugin.c:
12591 * check/gst/gstsegment.c:
12592 * check/gst/gststructure.c:
12593 * check/gst/gstsystemclock.c:
12594 * check/gst/gsttag.c:
12595 * check/gst/gstutils.c:
12596 * check/gst/gstvalue.c:
12597 * check/net/.cvsignore:
12598 * check/net/gstnetclientclock.c:
12599 * check/net/gstnettimeprovider.c:
12600 * check/pipelines/.cvsignore:
12601 * check/pipelines/cleanup.c:
12602 * check/pipelines/simple_launch_lines.c:
12603 * check/pipelines/stress.c:
12604 * check/states/.cvsignore:
12605 * check/states/sinks.c:
12606 * configure.ac:
12607 * examples/Makefile.am:
12608 * examples/appreader/.cvsignore:
12609 * examples/appreader/Makefile.am:
12610 * examples/appreader/appreader.c:
12611 * examples/controller/.cvsignore:
12612 * examples/controller/Makefile.am:
12613 * examples/controller/audio-example.c:
12614 * examples/cutter/.cvsignore:
12615 * examples/cutter/Makefile.am:
12616 * examples/cutter/cutter.c:
12617 * examples/cutter/cutter.h:
12618 * examples/events/Makefile.am:
12619 * examples/events/seek.c:
12620 * examples/helloworld/.cvsignore:
12621 * examples/helloworld/Makefile.am:
12622 * examples/helloworld/helloworld.c:
12623 * examples/helloworld2/.cvsignore:
12624 * examples/helloworld2/Makefile.am:
12625 * examples/helloworld2/helloworld2.c:
12626 * examples/launch/.cvsignore:
12627 * examples/launch/Makefile.am:
12628 * examples/launch/mp3parselaunch.c:
12629 * examples/launch/mp3play:
12630 * examples/manual/.cvsignore:
12631 * examples/manual/Makefile.am:
12632 * examples/manual/extract.pl:
12633 * examples/metadata/Makefile.am:
12634 * examples/metadata/read-metadata.c:
12635 * examples/mixer/.cvsignore:
12636 * examples/mixer/Makefile.am:
12637 * examples/mixer/mixer.c:
12638 * examples/mixer/mixer.h:
12639 * examples/pingpong/.cvsignore:
12640 * examples/pingpong/Makefile.am:
12641 * examples/pingpong/pingpong.c:
12642 * examples/plugins/.cvsignore:
12643 * examples/plugins/Makefile.am:
12644 * examples/plugins/example.c:
12645 * examples/plugins/example.h:
12646 * examples/pwg/.cvsignore:
12647 * examples/pwg/Makefile.am:
12648 * examples/pwg/extract.pl:
12649 * examples/queue/.cvsignore:
12650 * examples/queue/Makefile.am:
12651 * examples/queue/queue.c:
12652 * examples/queue2/.cvsignore:
12653 * examples/queue2/Makefile.am:
12654 * examples/queue2/queue2.c:
12655 * examples/queue3/.cvsignore:
12656 * examples/queue3/Makefile.am:
12657 * examples/queue3/queue3.c:
12658 * examples/queue4/.cvsignore:
12659 * examples/queue4/Makefile.am:
12660 * examples/queue4/queue4.c:
12661 * examples/retag/.cvsignore:
12662 * examples/retag/Makefile.am:
12663 * examples/retag/retag.c:
12664 * examples/retag/transcode.c:
12665 * examples/thread/.cvsignore:
12666 * examples/thread/Makefile.am:
12667 * examples/thread/thread.c:
12668 * examples/typefind/.cvsignore:
12669 * examples/typefind/Makefile.am:
12670 * examples/typefind/typefind.c:
12671 * examples/xml/.cvsignore:
12672 * examples/xml/Makefile.am:
12673 * examples/xml/createxml.c:
12674 * examples/xml/runxml.c:
12675 * tests/Makefile.am:
12676 * tests/check/Makefile.am:
12677 * testsuite/.cvsignore:
12678 * testsuite/Makefile.am:
12679 * testsuite/Rules:
12680 * testsuite/caps/.cvsignore:
12681 * testsuite/caps/Makefile.am:
12682 * testsuite/caps/app_fixate.c:
12683 * testsuite/caps/audioscale.c:
12684 * testsuite/caps/caps.c:
12685 * testsuite/caps/caps.h:
12686 * testsuite/caps/caps_strings:
12687 * testsuite/caps/compatibility.c:
12688 * testsuite/caps/deserialize.c:
12689 * testsuite/caps/enumcaps.c:
12690 * testsuite/caps/eratosthenes.c:
12691 * testsuite/caps/filtercaps.c:
12692 * testsuite/caps/fixed.c:
12693 * testsuite/caps/fraction-convert.c:
12694 * testsuite/caps/fraction-multiply-and-zero.c:
12695 * testsuite/caps/intersect2.c:
12696 * testsuite/caps/intersection.c:
12697 * testsuite/caps/normalisation.c:
12698 * testsuite/caps/random.c:
12699 * testsuite/caps/renegotiate.c:
12700 * testsuite/caps/sets.c:
12701 * testsuite/caps/simplify.c:
12702 * testsuite/caps/string-conversions.c:
12703 * testsuite/caps/structure.c:
12704 * testsuite/caps/subtract.c:
12705 * testsuite/caps/union.c:
12706 * testsuite/debug/.cvsignore:
12707 * testsuite/debug/Makefile.am:
12708 * testsuite/debug/category.c:
12709 * testsuite/debug/commandline.c:
12710 * testsuite/debug/global.c:
12711 * testsuite/debug/output.c:
12712 * testsuite/debug/printf_extension.c:
12713 * testsuite/dlopen/.cvsignore:
12714 * testsuite/dlopen/Makefile.am:
12715 * testsuite/dlopen/dlopen_gst.c:
12716 * testsuite/dlopen/loadgst.c:
12717 * testsuite/elements/.cvsignore:
12718 * testsuite/elements/Makefile.am:
12719 * testsuite/elements/gst-inspect-check.in:
12720 * testsuite/elements/struct_i386.h:
12721 * testsuite/elements/struct_size.c:
12722 * testsuite/indexers/.cvsignore:
12723 * testsuite/indexers/Makefile.am:
12724 * testsuite/indexers/cache1.c:
12725 * testsuite/indexers/indexdump.c:
12726 * testsuite/parse/.cvsignore:
12727 * testsuite/parse/Makefile.am:
12728 * testsuite/parse/parse1.c:
12729 * testsuite/parse/parse2.c:
12730 * testsuite/plugin/.cvsignore:
12731 * testsuite/plugin/Makefile.am:
12732 * testsuite/plugin/README:
12733 * testsuite/plugin/dynamic.c:
12734 * testsuite/plugin/linked.c:
12735 * testsuite/plugin/loading.c:
12736 * testsuite/plugin/registry.c:
12737 * testsuite/plugin/static.c:
12738 * testsuite/plugin/static2.c:
12739 * testsuite/plugin/testplugin.c:
12740 * testsuite/plugin/testplugin2.c:
12741 * testsuite/plugin/testplugin2_s.c:
12742 * testsuite/plugin/testplugin_s.c:
12743 * testsuite/refcounting/.cvsignore:
12744 * testsuite/refcounting/Makefile.am:
12745 * testsuite/refcounting/bin.c:
12746 * testsuite/refcounting/element.c:
12747 * testsuite/refcounting/element_pad.c:
12748 * testsuite/refcounting/mainloop.c:
12749 * testsuite/refcounting/mem.c:
12750 * testsuite/refcounting/mem.h:
12751 * testsuite/refcounting/object.c:
12752 * testsuite/refcounting/pad.c:
12753 * testsuite/refcounting/sched.c:
12754 * testsuite/refcounting/thread.c:
12755 * testsuite/states/.cvsignore:
12756 * testsuite/states/Makefile.am:
12757 * testsuite/states/bin.c:
12758 * testsuite/states/locked.c:
12759 * testsuite/states/parent.c:
12760 * testsuite/threads/.cvsignore:
12761 * testsuite/threads/159566.c:
12762 * testsuite/threads/159852.c:
12763 * testsuite/threads/Makefile.am:
12764 * testsuite/threads/queue.c:
12765 * testsuite/threads/signals.c:
12766 * testsuite/threads/staticrec.c:
12767 * testsuite/threads/thread.c:
12768 * testsuite/threads/threadb.c:
12769 * testsuite/threads/threadc.c:
12770 * testsuite/threads/threadd.c:
12771 * testsuite/threads/threade.c:
12772 * testsuite/threads/threadf.c:
12773 * testsuite/threads/threadg.c:
12774 * testsuite/threads/threadh.c:
12775 * testsuite/threads/threadi.c:
12776 move all of these under tests
12778 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
12780 * configure.ac:
12781 * tests/Makefile.am:
12782 fix distcheck
12784 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
12786 * docs/gst/gstreamer-sections.txt:
12787 * tests/sched/.cvsignore:
12788 * tests/sched/Makefile.am:
12789 * tests/sched/cases/(fs-fs).xml:
12790 * tests/sched/cases/(fs-i-fs).xml:
12791 * tests/sched/cases/(fs-i-i-fs).xml:
12792 * tests/sched/cases/(fs-i-q[i-fs]).xml:
12793 * tests/sched/dynamic-pipeline.c:
12794 * tests/sched/interrupt1.c:
12795 * tests/sched/interrupt2.c:
12796 * tests/sched/interrupt3.c:
12797 * tests/sched/runtestcases:
12798 * tests/sched/runxml.c:
12799 * tests/sched/sched-stress.c:
12800 * tests/sched/sort.c:
12801 * tests/sched/testcases:
12802 * tests/sched/testcases1.tc:
12803 * tests/seeking/.cvsignore:
12804 * tests/seeking/Makefile.am:
12805 * tests/seeking/seeking1.c:
12806 * tests/threadstate/.cvsignore:
12807 * tests/threadstate/Makefile.am:
12808 * tests/threadstate/test1.c:
12809 * tests/threadstate/test2.c:
12810 * tests/threadstate/threadstate1.c:
12811 * tests/threadstate/threadstate2.c:
12812 * tests/threadstate/threadstate3.c:
12813 * tests/threadstate/threadstate4.c:
12814 * tests/threadstate/threadstate5.c:
12815 remove obsolete tests
12816 * configure.ac:
12817 * tests/bench-complexity.scm:
12818 * tests/bench-mass_elements.scm:
12819 * tests/complexity.c:
12820 * tests/complexity.gnuplot:
12821 * tests/instantiate/.cvsignore:
12822 * tests/instantiate/Makefile.am:
12823 * tests/instantiate/caps.c:
12824 * tests/mass_elements.c:
12825 * tests/network-clock-utils.scm:
12826 * tests/network-clock.scm:
12827 * tests/plot-data:
12828 First pass at cleaning up tests/ dir before moving the rest
12829 Combined with CVS surgery
12831 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
12833 * po/POTFILES.in:
12834 queue has moved, update
12836 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
12838 * docs/gst/gstreamer-sections.txt:
12839 remove double entries from the docs
12840 * gst/gst_private.h:
12841 * gst/gstinfo.c: (_gst_debug_init):
12842 remove the THREAD debug category
12843 * gst/Makefile.am:
12844 * gst/gstqueue.c:
12845 * gst/gstqueue.h:
12846 * docs/gst/gstreamer.types:
12847 * plugins/elements/gstqueue.c: (gst_queue_get_type),
12848 (gst_queue_init), (gst_queue_finalize), (gst_queue_change_state):
12849 completely move queue and fix up debugging categories
12851 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
12853 * plugins/elements/gstidentity.c: (gst_identity_transform_ip):
12854 make initialization portable, using LL is not
12856 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
12858 * win32/common/gstconfig.h:
12859 add large padding
12861 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
12863 * win32/common/libgstreamer.def:
12864 rename symbols; sort base section
12866 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
12868 * gst/gstclock.c: (do_linear_regression):
12869 remove crack non-portable handrolled DEBUG macro
12871 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
12873 * docs/random/release:
12874 update notes
12875 * win32/common/gstenumtypes.c: (register_gst_object_flags),
12876 (gst_object_flags_get_type), (register_gst_bin_flags),
12877 (gst_bin_flags_get_type), (register_gst_buffer_flag),
12878 (gst_buffer_flag_get_type), (register_gst_bus_flags),
12879 (gst_bus_flags_get_type), (register_gst_bus_sync_reply),
12880 (gst_bus_sync_reply_get_type), (register_gst_caps_flags),
12881 (gst_caps_flags_get_type), (register_gst_clock_return),
12882 (gst_clock_return_get_type), (register_gst_clock_entry_type),
12883 (gst_clock_entry_type_get_type), (register_gst_clock_flags),
12884 (gst_clock_flags_get_type), (register_gst_state),
12885 (gst_state_get_type), (register_gst_state_change_return),
12886 (gst_state_change_return_get_type), (register_gst_state_change),
12887 (gst_state_change_get_type), (register_gst_element_flags),
12888 (gst_element_flags_get_type), (register_gst_core_error),
12889 (gst_core_error_get_type), (register_gst_library_error),
12890 (gst_library_error_get_type), (register_gst_resource_error),
12891 (gst_resource_error_get_type), (register_gst_stream_error),
12892 (gst_stream_error_get_type), (register_gst_event_type_flags),
12893 (gst_event_type_flags_get_type), (register_gst_event_type),
12894 (gst_event_type_get_type), (register_gst_seek_type),
12895 (gst_seek_type_get_type), (register_gst_seek_flags),
12896 (gst_seek_flags_get_type), (register_gst_format),
12897 (gst_format_get_type), (register_gst_index_certainty),
12898 (gst_index_certainty_get_type), (register_gst_index_entry_type),
12899 (gst_index_entry_type_get_type),
12900 (register_gst_index_lookup_method),
12901 (gst_index_lookup_method_get_type), (register_gst_assoc_flags),
12902 (gst_assoc_flags_get_type), (register_gst_index_resolver_method),
12903 (gst_index_resolver_method_get_type), (register_gst_index_flags),
12904 (gst_index_flags_get_type), (register_gst_debug_level),
12905 (gst_debug_level_get_type), (register_gst_debug_color_flags),
12906 (gst_debug_color_flags_get_type), (register_gst_iterator_result),
12907 (gst_iterator_result_get_type), (register_gst_iterator_item),
12908 (gst_iterator_item_get_type), (register_gst_message_type),
12909 (gst_message_type_get_type), (register_gst_mini_object_flags),
12910 (gst_mini_object_flags_get_type), (register_gst_pad_link_return),
12911 (gst_pad_link_return_get_type), (register_gst_flow_return),
12912 (gst_flow_return_get_type), (register_gst_activate_mode),
12913 (gst_activate_mode_get_type), (register_gst_pad_direction),
12914 (gst_pad_direction_get_type), (register_gst_pad_flags),
12915 (gst_pad_flags_get_type), (register_gst_pad_presence),
12916 (gst_pad_presence_get_type), (register_gst_pad_template_flags),
12917 (gst_pad_template_flags_get_type), (register_gst_pipeline_flags),
12918 (gst_pipeline_flags_get_type), (register_gst_plugin_error),
12919 (gst_plugin_error_get_type), (register_gst_plugin_flags),
12920 (gst_plugin_flags_get_type), (register_gst_rank),
12921 (gst_rank_get_type), (register_gst_query_type),
12922 (gst_query_type_get_type), (register_gst_tag_merge_mode),
12923 (gst_tag_merge_mode_get_type), (register_gst_tag_flag),
12924 (gst_tag_flag_get_type), (register_gst_task_state),
12925 (gst_task_state_get_type), (register_gst_alloc_trace_flags),
12926 (gst_alloc_trace_flags_get_type),
12927 (register_gst_type_find_probability),
12928 (gst_type_find_probability_get_type), (register_gst_uri_type),
12929 (gst_uri_type_get_type), (register_gst_parse_error),
12930 (gst_parse_error_get_type):
12931 * win32/common/gstenumtypes.h:
12932 * win32/common/gstversion.h:
12933 update visual studio generated files
12935 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
12937 * win32/vs6/libgstbase.dsp:
12938 * win32/vs6/libgstelements.dsp:
12939 update project files for new locations
12941 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
12943 * Makefile.am:
12944 remove some files
12945 * README:
12946 reinstate and update
12947 * DEVEL:
12948 * REQUIREMENTS:
12949 removed
12950 * LICENSE:
12951 * docs/random/LICENSE:
12952 moved to random
12954 2005-11-30 Edward Hervey <edward@fluendo.com>
12956 * gst/gsttypefind.c: (gst_type_find_register):
12957 * gst/gsttypefind.h:
12958 * gst/gsttypefindfactory.c: (gst_type_find_factory_init),
12959 (gst_type_find_factory_dispose):
12960 * gst/gsttypefindfactory.h:
12961 Fix memory leak in GstTypeFindFactory.
12963 2005-11-29 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
12965 * gst/gst.c:
12966 * plugins/elements/Makefile.am:
12967 * plugins/elements/gstelements.c:
12968 * plugins/elements/gstqueue.c:
12969 move queue from core to the elements plugin
12971 2005-11-29 Andy Wingo <wingo@pobox.com>
12973 * libs/gst/base/gstbasetransform.h:
12974 * libs/gst/base/gstbasesrc.h:
12975 * libs/gst/base/gstbasesink.h: en-LARGE the padding.
12977 * gst/gstconfig.h.in (GST_PADDING_LARGE): New define, the number
12978 of pointers by which to pad very extensible base classes (like the
12979 ones in libs/gst/base).
12981 2005-11-29 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
12983 * docs/gst/gstreamer-docs.sgml:
12984 * docs/gst/gstreamer-sections.txt:
12985 * docs/libs/gstreamer-libs-docs.sgml:
12986 * docs/libs/gstreamer-libs-sections.txt:
12987 moving documentation from core to lib
12989 2005-11-29 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
12991 * check/Makefile.am:
12992 * configure.ac:
12993 * docs/gst/Makefile.am:
12994 * gst/Makefile.am:
12995 * gst/base/.cvsignore:
12996 * gst/base/Makefile.am:
12997 * gst/base/README:
12998 * gst/base/gstadapter.c:
12999 * gst/base/gstadapter.h:
13000 * gst/base/gstbasesink.c:
13001 * gst/base/gstbasesink.h:
13002 * gst/base/gstbasesrc.c:
13003 * gst/base/gstbasesrc.h:
13004 * gst/base/gstbasetransform.c:
13005 * gst/base/gstbasetransform.h:
13006 * gst/base/gstcollectpads.c:
13007 * gst/base/gstcollectpads.h:
13008 * gst/base/gstpushsrc.c:
13009 * gst/base/gstpushsrc.h:
13010 * gst/base/gsttypefindhelper.c:
13011 * gst/base/gsttypefindhelper.h:
13012 * gst/check/Makefile.am:
13013 * gst/check/gstcheck.c:
13014 * gst/check/gstcheck.h:
13015 * gst/net/Makefile.am:
13016 * gst/net/gstnet.h:
13017 * gst/net/gstnetclientclock.c:
13018 * gst/net/gstnetclientclock.h:
13019 * gst/net/gstnettimepacket.c:
13020 * gst/net/gstnettimepacket.h:
13021 * gst/net/gstnettimeprovider.c:
13022 * gst/net/gstnettimeprovider.h:
13023 * libs/gst/Makefile.am:
13024 * libs/gst/base/Makefile.am:
13025 * libs/gst/base/gstbasetransform.c:
13026 * libs/gst/check/Makefile.am:
13027 * plugins/elements/Makefile.am:
13028 * po/POTFILES.in:
13029 CVS surgery + support to move base, check, and net out of gst
13030 and into libs/gst
13032 2005-11-29 Andy Wingo <wingo@pobox.com>
13034 * gst/gstevent.h (struct _GstEvent): Only one pointer of padding.
13036 * gst/gststructure.h (struct _GstStructure): Only one pointer of
13037 padding.
13039 * gst/gstquery.h (struct _GstQuery): Only one pointer of padding.
13041 * gst/gstpluginfeature.h: Remove a comment in PluginFeature.
13043 * gst/gstplugin.h (struct _GstPluginClass): Add some padding.
13045 * gst/gstobject.h: (struct _GstObject): Only one pointer of
13046 padding; reduces object size by about 30%. We don't expect
13047 anything else to go into gstobject.
13049 * gst/gstminiobject.h (struct _GstMiniObject)
13050 (struct _GstMiniObjectClass): Only one pointer of padding; the
13051 payload is only a pointer and two ints anyway. For the class there
13052 are only two methods as well.
13054 * gst/gstelement.h (struct _GstElementClass): Removed
13055 the state_changed signal callback, it is not used.
13057 2005-11-29 Thomas Vander Stichele <thomas at apestaart dot org>
13059 * docs/gst/gstreamer.types:
13060 fix includes, though they are a little dinky
13062 2005-11-29 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
13064 * check/Makefile.am:
13065 look in the right place for elements, a lot more chance of
13066 success
13067 * gst/Makefile.am:
13068 remove indexers and elements subdirs
13069 * plugins/Makefile.am:
13070 make indexers conditional
13072 2005-11-29 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
13074 * Makefile.am:
13075 * configure.ac:
13076 * plugins/elements/Makefile.am:
13077 * plugins/elements/gstcapsfilter.c:
13078 * plugins/elements/gstfilesink.c:
13079 * plugins/elements/gstfilesrc.c:
13080 * plugins/elements/gstidentity.c:
13081 * plugins/indexers/Makefile.am:
13082 do CVS surgery and related build fixery to move elements
13083 and indexers in a new gstreamer/plugins directory, out of the
13084 gst/ directory
13086 2005-11-29 Andy Wingo <wingo@pobox.com>
13088 * check/Makefile.am:
13089 * pkgconfig/gstreamer-net-uninstalled.pc.in:
13090 * pkgconfig/gstreamer-net.pc.in:
13091 * gst/net/Makefile.am: Rename gstnet-tempname to gstnet. Fixes
13092 #322257.
13094 2005-11-29 Thomas Vander Stichele <thomas at apestaart dot org>
13096 * tools/Makefile.am:
13097 * tools/gst-complete.1.in:
13098 * tools/gst-complete.c:
13099 * tools/gst-compprep.1.in:
13100 * tools/gst-compprep.c:
13101 removing -compprep and -complete
13103 2005-11-29 Thomas Vander Stichele <thomas at apestaart dot org>
13105 * gst/gstevent.c: (gst_event_new_new_segment),
13106 (gst_event_parse_new_segment):
13107 * gst/gstevent.h:
13108 fix #320529 - clean up new_segment API and structure.
13109 Let's hope everyone was using the methods, and not the structure.
13111 2005-11-29 Edward Hervey <edward@fluendo.com>
13113 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
13114 (gst_base_sink_event), (gst_base_sink_do_sync),
13115 (gst_base_sink_activate_pull), (gst_base_sink_change_state):
13116 Properly handle non GST_FORMAT_TIME segment
13117 * gst/elements/gstidentity.c: (gst_identity_transform_ip):
13118 Properly handle non GST_FORMAT_TIME segment
13119 * gst/gstsegment.c:
13120 This function is valid if the accumulator is 0 and the format
13121 is different from the requested format.
13123 2005-11-29 Jan Schmidt <thaytan@mad.scientist.com>
13125 * docs/gst/gstreamer-sections.txt:
13126 Add gst_query_new_seeking and gst_query_parse_seeking to the
13127 docs.
13129 2005-11-29 Jan Schmidt <thaytan@mad.scientist.com>
13131 * gst/base/gstbasetransform.c: (gst_base_transform_buffer_alloc):
13132 Treat a pad alloc with new caps the same as if we were not
13133 negotiated, in order to allow a changing upstream output
13134 to produce a new format of data.
13136 2005-11-29 Edward Hervey <edward@fluendo.com>
13138 * gst/base/gstbasetransform.c: (gst_base_transform_class_init),
13139 (gst_base_transform_event), (gst_base_transform_eventfunc):
13140 The event virtual method is now properly implemented, with a default
13141 handler
13142 Sub classes should call the parent_class event method. They should
13143 return FALSE if they had a problem handling the given event, or don't
13144 want GstBaseTransform to send that even downstream
13145 * gst/elements/gstidentity.c: (gst_identity_class_init),
13146 (gst_identity_init), (gst_identity_event),
13147 (gst_identity_transform_ip), (gst_identity_set_property),
13148 (gst_identity_get_property):
13149 * gst/elements/gstidentity.h:
13150 Added the single-segment boolean property.
13151 If set to TRUE, it will output a single segment of data, starting from
13152 0, will eat up all incoming newsegment, and modify the timestamp of the
13153 buffers accordingly
13155 2005-11-29 Tim-Philipp Müller <tim at centricular dot net>
13157 * gst/gstghostpad.c: (gst_proxy_pad_get_target):
13158 Don't ref NULL target pad (#322751). Improve docs.
13160 2005-11-29 Michael Smith <msmith@fluendo.com>
13162 * gst/gstregistryxml.c: (load_plugin):
13163 Don't crash if we failed to load a feature from a plugin.
13165 2005-11-28 Thomas Vander Stichele <thomas at apestaart dot org>
13167 * check/pipelines/simple_launch_lines.c: (setup_pipeline),
13168 (GST_START_TEST):
13169 use more check API and less GLib API
13171 2005-11-28 Thomas Vander Stichele <thomas at apestaart dot org>
13173 * Makefile.am:
13174 don't run checks if we don't have check
13175 * common/check.mak:
13176 remove the registry when running make torture
13177 * docs/gst/gstreamer-sections.txt:
13178 remove second multiply
13179 * gst/gstqueue.c: (gst_queue_loop):
13180 fix a compile warning when disabling debug
13182 2005-11-28 Jan Schmidt <thaytan@mad.scientist.com>
13184 * gst/gstinfo.h:
13185 Hey! Let's print the pad name if the pointer != NULL instead
13186 of when it == NULL :-)
13188 2005-11-28 Wim Taymans <wim@fluendo.com>
13190 * check/gst/gstutils.c: (GST_START_TEST):
13191 Updated check, add some scaling accuracy checking code.
13193 * gst/gstutils.c: (gst_util_div128_64),
13194 (gst_util_uint64_scale_int64), (gst_util_uint64_scale),
13195 (gst_util_uint64_scale_int):
13196 Fix 6 times faster division code. Optimize for common
13197 1/1 and less common X/1 cases.
13199 2005-11-28 Wim Taymans <wim@fluendo.com>
13201 * check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
13202 More checks.
13204 * gst/gstclock.c: (gst_clock_finalize), (gst_clock_set_master),
13205 (do_linear_regression), (gst_clock_add_observation):
13206 Cleanups.
13207 Release lock when the clock cannot be slaved.
13208 Catch the case where the regression returned an invalid denominator.
13210 * gst/gstutils.c: (gst_util_div128_64_iterate),
13211 (gst_util_div128_64), (gst_util_uint64_scale_int64),
13212 (gst_util_uint64_scale), (gst_util_uint64_scale_int):
13213 Add protentially more performant non-iterative 128/64 divide function
13214 that unfortunatly does not work yet.
13215 Shortcut the trivial 0/X = 0 case.
13216 Remove the warnings on overflow.
13218 2005-11-28 Thomas Vander Stichele <thomas at apestaart dot org>
13220 * gst/gstplugin.c: (gst_plugin_register_func):
13221 everything causing a plugin not to load should be at least a WARNING
13223 2005-11-28 Stefan Kost <ensonic@users.sf.net>
13225 * docs/random/ensonic/dparams.txt:
13226 some TODOs for the next dev cycle
13227 * libs/gst/controller/gstcontroller.c:
13228 (gst_controlled_property_set_interpolation_mode),
13229 (gst_controlled_property_new):
13230 * libs/gst/controller/gstcontroller.h:
13231 use base type to assign acccessor functions
13233 2005-11-28 Jan Schmidt <thaytan@mad.scientist.com>
13235 * check/Makefile.am:
13236 Oops, that should have been top_srcdir
13238 2005-11-28 Jan Schmidt <thaytan@mad.scientist.com>
13240 * check/Makefile.am:
13241 * check/elements/fdsrc.c: (GST_START_TEST):
13242 Use a cmdline define to specify the location of a file to use for
13243 testing, to avoid breaking distcheck.
13245 2005-11-28 Andy Wingo <wingo@pobox.com>
13247 * gst/gstpad.c (fixate_value): Use array functions for arrays.
13249 2005-11-28 Edward Hervey <edward@fluendo.com>
13251 * tools/gst-launch.c: (main):
13252 Clarify the output strings, makes it easier to translate.
13253 Fixes #322626
13255 2005-11-28 Thomas Vander Stichele <thomas at apestaart dot org>
13257 * gst/Makefile.am:
13258 don't try and build net if we don't even have <sys/socket.h>
13260 2005-11-27 Jan Schmidt <thaytan@mad.scientist.com>
13262 * check/Makefile.am:
13263 * check/elements/fdsrc.c: (event_func), (setup_fdsrc),
13264 (cleanup_fdsrc), (GST_START_TEST), (fdsrc_suite), (main):
13265 Add tests for fdsrc seekability
13267 * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
13268 (gst_fdsrc_init), (gst_fdsrc_update_fd), (gst_fdsrc_start),
13269 (gst_fdsrc_set_property), (gst_fdsrc_is_seekable),
13270 (gst_fdsrc_get_size), (gst_fdsrc_uri_set_uri):
13271 * gst/elements/gstfdsrc.h:
13272 fdsrc should not be a 'live' source.
13273 Implement seeking on seekable fd's.
13275 * gst/gstquery.c: (gst_query_new_seeking),
13276 (gst_query_parse_seeking):
13277 * gst/gstquery.h:
13278 Implement SEEKING query functions:
13279 *_new_seeking and *_parse_seeking
13281 2005-11-27 Stefan Kost <ensonic@users.sf.net>
13283 * gst/gstelement.c: (gst_element_dispose):
13284 don't loop forever
13286 * gst/gstiterator.c:
13287 * gst/gststructure.c:
13288 doc fixes
13290 * libs/gst/controller/gstcontroller.c:
13291 (gst_controlled_property_set_interpolation_mode):
13292 * libs/gst/controller/gstcontroller.h:
13293 * libs/gst/controller/gstinterpolation.c:
13294 (interpolate_none_get_enum_value_array):
13295 support controlling enums
13297 2005-11-27 Tim-Philipp Müller <tim at centricular dot net>
13299 * gst/gstvalue.c:
13300 Improve documentation for gst_value_union().
13302 * gst/gstvalue.h:
13303 Change return value for union, intersect and subtract functions
13304 from gint to gboolean.
13306 2005-11-27 Tim-Philipp Müller <tim at centricular dot net>
13308 * gst/gstvalue.c: (gst_value_serialize_any_list),
13309 (gst_value_transform_any_list_string),
13310 (gst_value_deserialize_list), (gst_value_deserialize_array),
13311 (gst_value_set_int_range), (gst_value_deserialize_int_range),
13312 (gst_value_set_double_range), (gst_value_deserialize_double_range),
13313 (gst_value_set_fraction_range_full),
13314 (gst_value_deserialize_fraction_range),
13315 (gst_value_deserialize_caps), (gst_value_deserialize_buffer),
13316 (gst_value_deserialize_boolean),
13317 (gst_value_deserialize_int_helper), (gst_value_deserialize_double),
13318 (gst_value_serialize_float), (gst_value_deserialize_float),
13319 (gst_string_wrap), (gst_value_deserialize_string),
13320 (gst_value_deserialize_enum), (gst_value_deserialize_flags),
13321 (gst_value_union_int_range_int_range),
13322 (gst_value_intersect_int_range_int_range),
13323 (gst_value_intersect_double_range_double_range),
13324 (gst_value_create_new_range), (gst_value_subtract_int_range_int),
13325 (gst_value_subtract_int_range_int_range),
13326 (gst_value_subtract_double_double_range),
13327 (gst_value_subtract_double_range_double_range),
13328 (gst_value_deserialize_fraction):
13329 * gst/gstvalue.h:
13330 Use gint, gdouble and gchar in our API instead of int, double and
13331 char (and make usage in gstvalue.c more consistent).
13333 2005-11-27 Thomas Vander Stichele <thomas at apestaart dot org>
13335 * check/Makefile.am:
13336 * libs/gst/controller/Makefile.am:
13337 * libs/gst/dataprotocol/Makefile.am:
13338 fix up Makefile.am and remove GST_ENABLE_NEW
13340 2005-11-27 Thomas Vander Stichele <thomas at apestaart dot org>
13342 * configure.ac:
13343 * gst/Makefile.am:
13344 * gst/base/Makefile.am:
13345 * gst/check/Makefile.am:
13346 * gst/elements/Makefile.am:
13347 * gst/net/Makefile.am:
13348 update LDFLAGS use some more
13350 2005-11-27 Thomas Vander Stichele <thomas at apestaart dot org>
13352 * common/m4/gst-doc.m4:
13353 Fixes #312589
13355 2005-11-26 Edward Hervey <edward@fluendo.com>
13357 * gst/gstpluginfeature.c: (gst_plugin_feature_load):
13358 This shouldn't issue a g_warning since it returns NULL if it
13359 couldn't find the plugin, and all functions using this behave
13360 properly on a NULL return. Switching to a GST_WARNING.
13362 2005-11-25 Jan Schmidt <thaytan@mad.scientist.com>
13364 * gst/gstbin.c: (gst_bin_handle_message_func):
13365 Don't leak clock messages.
13367 2005-11-25 Wim Taymans <wim@fluendo.com>
13369 * gst/gstutils.c: (gst_util_uint64_scale_int64),
13370 (gst_util_uint64_scale_int):
13371 Optimisations, remove unneeded vars.
13373 2005-11-25 Wim Taymans <wim@fluendo.com>
13375 * check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
13376 Added more checks for the high precision uint64 cases.
13378 * gst/gstutils.c: (gst_util_uint64_scale_int64),
13379 (gst_util_uint64_scale), (gst_util_uint64_scale_int):
13380 Implement high precision (guint64 * guint64) / guint64.
13382 2005-11-24 Wim Taymans <wim@fluendo.com>
13384 * gst/base/gstbasesrc.c: (gst_base_src_query):
13385 Fix wrong percentage query.
13387 * gst/gstutils.c: (gst_util_uint64_scale),
13388 (gst_util_uint64_scale_int):
13389 Add some more common cases that can be handled
13390 efficiently to _scale.
13392 2005-11-24 Thomas Vander Stichele <thomas at apestaart dot org>
13394 * check/gst/gstminiobject.c: (thread_ref), (GST_START_TEST),
13395 (gst_mini_object_suite):
13396 don't use check calls from threads; check probably isn't
13397 threadsafe and using a lock to make it threadsafe would
13398 defeat the purpose of this check
13399 * gst/check/gstcheck.c:
13400 * gst/check/gstcheck.h:
13401 use GST_DEBUG some more
13403 2005-11-24 Wim Taymans <wim@fluendo.com>
13405 * gst/gstutils.c: (gst_util_uint64_scale),
13406 (gst_util_uint64_scale_int):
13407 Chain trivial case to _scale_int.
13409 2005-11-24 Wim Taymans <wim@fluendo.com>
13411 * check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
13412 Added test for scaling.
13414 * gst/gstclock.h:
13415 Small doc fix.
13417 * gst/gstutils.c: (gst_util_uint64_scale_int):
13418 Implemented high precision scaling code.
13420 2005-11-24 Stefan Kost <ensonic@users.sf.net>
13422 * gst/gstinfo.h:
13423 do not crash on pad==NULL
13425 2005-11-24 Thomas Vander Stichele <thomas at apestaart dot org>
13427 Patch by: Stefan Kost
13429 * common/gtk-doc.mak:
13430 * docs/gst/Makefile.am:
13431 * docs/libs/Makefile.am:
13432 Fix distcheck issues for the libraries docs build
13433 Closes #319599.
13435 2005-11-24 Michael Smith <msmith@fluendo.com>
13437 * docs/manual/basics-helloworld.xml:
13438 Fix bug #315027: memory leak in example code in docs.
13440 2005-11-24 Michael Smith <msmith@fluendo.com>
13442 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
13443 Unlock the PREROLL_LOCK in a failure case.
13445 2005-11-24 Wim Taymans <wim@fluendo.com>
13447 * docs/gst/gstreamer-sections.txt:
13448 * gst/base/gstadapter.h:
13449 * gst/base/gstbasesink.h:
13450 * gst/base/gstbasesrc.h:
13451 * gst/base/gstbasetransform.h:
13452 * gst/base/gstpushsrc.h:
13453 * gst/elements/gstfakesink.h:
13454 * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type):
13455 * gst/elements/gstfakesrc.h:
13456 * gst/elements/gstfilesink.h:
13457 * gst/elements/gstfilesrc.h:
13458 * gst/gst.c:
13459 * gst/gstbin.c:
13460 * gst/gstbuffer.c: (_gst_buffer_copy):
13461 * gst/gstbus.h:
13462 * gst/gstcaps.c:
13463 * gst/gstchildproxy.c:
13464 * gst/gstclock.c:
13465 * gst/gstelement.c:
13466 * gst/gstelementfactory.c:
13467 * gst/gstelementfactory.h:
13468 * gst/gstevent.c:
13469 * gst/gstghostpad.h:
13470 * gst/gstindex.h:
13471 * gst/gstinterface.h:
13472 * gst/gstminiobject.c:
13473 * gst/gstminiobject.h:
13474 * gst/gstpad.c:
13475 * gst/gstpad.h:
13476 * gst/gstpadtemplate.h:
13477 * gst/gstpipeline.h:
13478 * gst/gstpluginfeature.h:
13479 * gst/gstquery.h:
13480 * gst/gstqueue.h:
13481 * gst/gsttaglist.c:
13482 * gst/gsttaglist.h:
13483 * gst/gsttagsetter.c:
13484 * gst/gsttagsetter.h:
13485 * gst/gsttrace.c:
13486 * gst/gsttrace.h:
13487 * gst/gsttypefind.h:
13488 * gst/gsturi.h:
13489 * gst/gstvalue.c:
13490 * gst/net/gstnetclientclock.c:
13491 * gst/net/gstnetclientclock.h:
13492 * gst/net/gstnettimepacket.c:
13493 * gst/net/gstnettimeprovider.c:
13494 * gst/net/gstnettimeprovider.h:
13495 Doc fixes.
13497 2005-11-23 Thomas Vander Stichele <thomas at apestaart dot org>
13499 * configure.ac: back to HEAD
13501 === release 0.9.6 ===
13503 2005-11-23 Thomas Vander Stichele <thomas at apestaart dot org>
13505 * configure.ac:
13506 releasing 0.9.6, "Always On Time"
13508 2005-11-23 Wim Taymans <wim@fluendo.com>
13510 * docs/gst/gstreamer-sections.txt:
13511 * gst/glib-compat.c:
13512 * gst/gsttagsetter.c:
13513 * gst/gstvalue.c:
13514 * gst/net/gstnetclientclock.c:
13515 * gst/net/gstnettimepacket.h:
13516 Doc updates.
13518 2005-11-23 Thomas Vander Stichele <thomas at apestaart dot org>
13520 * docs/faq/using.xml:
13521 * docs/libs/tmpl/gstcontrol.sgml:
13522 * docs/manual/advanced-dparams.xml:
13523 * docs/manual/appendix-checklist.xml:
13524 * docs/manual/basics-elements.xml:
13525 * docs/pwg/other-source.xml:
13526 * docs/random/moving-plugins:
13527 * gst/gstpad.c:
13528 * tools/gst-launch.1.in:
13529 remove mentions of sinesrc
13531 2005-11-23 Michael Smith <msmith@fluendo.com>
13533 * docs/gst/gstreamer-sections.txt:
13534 Update for new API and API changes.
13535 * gst/gstobject.h:
13536 Documentation fix: GST_TRYLOCK -> GST_OBJECT_TRYLOCK
13537 * gst/gstvalue.c:
13538 Documentation typo fix.
13539 * gst/net/gstnettimepacket.c:
13540 Documentation fixes for arguments.
13542 2005-11-23 Jan Schmidt <thaytan@mad.scientist.com>
13544 * gst/gststructure.c: (gst_structure_get_fraction),
13545 (gst_structure_parse_value),
13546 (gst_structure_fixate_field_nearest_fraction):
13547 * gst/gststructure.h:
13548 * gst/gstutils.c: (gst_util_uint64_scale_int):
13549 * gst/gstutils.h:
13550 * scripts/update-funcnames:
13551 API Changes.
13552 Rename gst_util_clock_time_scale to gst_util_uint64_scale_int
13553 Make gst_structure_fixate_field_nearest_fraction take a numerator
13554 and denominator argument instead of a GValue
13555 add gst_structure_get_fraction helper function.
13557 2005-11-23 Wim Taymans <wim@fluendo.com>
13559 * docs/design/part-TODO.txt:
13560 Update TODO.
13562 * gst/net/gstnetclientclock.c: (gst_net_client_clock_thread):
13563 * gst/net/gstnetclientclock.h:
13564 Use parent fields for timeout and window_size.
13566 2005-11-23 Andy Wingo <wingo@pobox.com>
13568 * check/net/gstnetclientclock.c (test_functioning): Adjust to
13569 rate_num/rate_denom change.
13571 * gst/net/gstnetclientclock.c
13572 (gst_net_client_clock_observe_times): Take the SLAVE_LOCK not the
13573 OBJECT_LOCK. Don't call add_observation with the lock.
13575 * gst/gstclock.c (gst_clock_init): Initialize the rate as a
13576 fraction.
13577 (gst_clock_adjust_unlocked): Adjust using uint64_scale and the
13578 rate fraction.
13579 (gst_clock_set_calibration, gst_clock_get_calibration): Change to
13580 deal with rate as a fraction whose numerator and denominator are
13581 GstClockTime values.
13582 (gst_clock_set_master): Only use the OBJECT_LOCK to set the
13583 master; the other fields are protected by the SLAVE_LOCK.
13584 (do_linear_regression): Note that this must be called with the
13585 SLAVE_LOCK.
13586 (gst_clock_add_observation): Take the SLAVE_LOCK, not the
13587 OBJECT_LOCK. Call set_calibration instead of touching the
13588 variables directly.
13589 (gst_clock_set_property, gst_clock_get_property): Protect
13590 master/slave parameters with the SLAVE_LOCK.
13592 * gst/gstclock.h (GstClock): Remove rate, add rate_numerator and
13593 rate_denominator. PR3C1S3. Add a new lock, the SLAVE_LOCK, and
13594 note that all of the instance variables that add_observation and
13595 the set_master functions use are protected by that lock and not
13596 the OBJECT_LOCK.
13597 (GST_CLOCK_SLAVE_LOCK, GST_CLOCK_SLAVE_UNLOCK): New macros.
13599 * gst/gstclock.c (gst_clock_add_observation): No longer requires
13600 the caller to take the object lock.
13602 2005-11-23 Wim Taymans <wim@fluendo.com>
13604 * gst/gsterror.c: (_gst_core_errors_init):
13605 * gst/gsterror.h:
13606 Add error for clock stuff.
13608 * gst/gstpipeline.c: (gst_pipeline_change_state),
13609 (gst_pipeline_set_clock):
13610 Post clock error when clock cannot be used in a pipeline.
13612 2005-11-23 Stefan Kost <ensonic@users.sf.net>
13614 * docs/gst/gstreamer-sections.txt:
13615 make two symbols from gstinfo private for the docs
13616 * gst/base/gstcollectpads.h:
13617 * gst/gstutils.c:
13618 fix doc typos, update docs
13620 2005-11-22 Wim Taymans <wim@fluendo.com>
13622 * gst/base/gstbasesink.c: (gst_base_sink_class_init),
13623 (gst_base_sink_wait), (gst_base_sink_do_sync),
13624 (gst_base_sink_handle_event):
13625 * gst/base/gstbasesink.h:
13626 No need to store the clock, the parent element class already
13627 has it.
13629 * gst/gstbin.c: (gst_bin_set_clock_func), (gst_bin_add_func):
13630 Updates for clock_set returning a gboolean
13632 * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_wait),
13633 (gst_clock_id_wait_async), (gst_clock_class_init),
13634 (gst_clock_init), (gst_clock_finalize),
13635 (gst_clock_get_internal_time), (gst_clock_get_time),
13636 (gst_clock_slave_callback), (gst_clock_set_master),
13637 (gst_clock_get_master), (do_linear_regression),
13638 (gst_clock_add_observation), (gst_clock_set_property),
13639 (gst_clock_get_property):
13640 * gst/gstclock.h:
13641 Implement master/slave. When setting a clock as a slave, a
13642 periodic timeout is scheduled to sample master and slave times.
13643 Then the slave clock is recalibrated to match offset and rate
13644 of the master clock.
13645 Update logging a bit.
13646 Add flag so that a clock can state that is cannot be slaved to
13647 another clock.
13649 * gst/gstelement.c: (gst_element_set_clock):
13650 * gst/gstelement.h:
13651 The set clock returns a gboolean for when an element cannot
13652 deal with the selected clock in the pipeline.
13654 * gst/gstpipeline.c: (gst_pipeline_change_state),
13655 (gst_pipeline_set_clock):
13656 * gst/gstpipeline.h:
13657 Handle the case where the selected clock cannot be set on
13658 the pipeline.
13660 * gst/net/gstnetclientclock.c: (gst_net_client_clock_class_init),
13661 (gst_net_client_clock_init), (gst_net_client_clock_finalize),
13662 (gst_net_client_clock_set_property),
13663 (gst_net_client_clock_get_property),
13664 (gst_net_client_clock_observe_times):
13665 * gst/net/gstnetclientclock.h:
13666 Use regression code in GstClock parent, remove duplicated
13667 functionality.
13669 2005-11-22 Michael Smith <msmith@fluendo.com>
13671 * gst/gstutils.c: (gst_util_clock_time_scale):
13672 * gst/gstutils.h:
13673 * docs/gst/gstreamer-sections.txt:
13674 Rename method to have extra underscore.
13676 2005-11-22 Thomas Vander Stichele <thomas at apestaart dot org>
13678 * gst/elements/Makefile.am:
13679 * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type):
13680 * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
13681 (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
13682 (gst_fake_src_init), (gst_fake_src_prepare_buffer),
13683 (gst_fake_src_alloc_buffer), (gst_fake_src_get_size):
13684 * gst/elements/gstfakesrc.h:
13685 * gst/gstqueue.c: (queue_leaky_get_type):
13686 correctly fix GEnumValues so that nick is the short lowercase
13687 dashed tag
13688 * tools/gst-inspect.c: (print_element_properties_info):
13689 also show the nick, since it's useful to use from parse_launch
13690 syntax
13691 Fixes #322139
13693 2005-11-22 Michael Smith <msmith@fluendo.com>
13695 * gst/gstutils.c: (gst_util_clocktime_scale):
13696 * gst/gstutils.h:
13697 * docs/gst/gstreamer-sections.txt:
13698 Add util method for scaling a clocktime by a fraction. Useful
13699 implementation is left as an exercise for the reader.
13701 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
13703 * gst/gstvalue.c: (gst_value_collect_fraction_range):
13704 If needed, allocate storage in the destination value during
13705 collection.
13707 2005-11-22 Edward Hervey <edward@fluendo.com>
13709 * docs/gst/gstreamer-sections.txt:
13710 * gst/Makefile.am:
13711 * gst/gst.h:
13712 * gst/gsturitype.c:
13713 * gst/gsturitype.h:
13714 * gst/gstutils.c: (gst_util_set_object_arg):
13715 * tools/gst-compprep.c: (main):
13716 * tools/gst-inspect.c: (print_element_properties_info):
13717 Removed GstURI, closes bug #321061
13719 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
13721 * check/gst/gststructure.c: (GST_START_TEST):
13722 * gst/gststructure.c: (gst_structure_parse_value):
13723 Oops, broke automatic string type parsing.
13724 Add a test to catch it in future.
13726 2005-11-22 Andy Wingo <wingo@pobox.com>
13728 * gst/gsttagsetter.c (gst_tag_setter_get_tag_merge_mode)
13729 (gst_tag_setter_set_tag_merge_mode, gst_tag_setter_get_tag_list):
13730 Actually rename the function implementations. Grr.
13732 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
13734 * check/gst/capslist.h:
13735 Comment test cases
13736 * check/gst/gststructure.c: (GST_START_TEST),
13737 (gst_structure_suite):
13738 Test automatic value type detection in gst_structure_from_string.
13739 * gst/gststructure.c: (gst_structure_parse_value):
13740 Add fraction as a type we try and guess automatically in
13741 caps/structure strings.
13743 2005-11-22 Andy Wingo <wingo@pobox.com>
13745 patch by: Torsten Schoenfeld <kaffeetisch gmx de>
13747 * gst/gsttagsetter.h:
13748 * gst/gsttagsetter.c: (gst_tag_setter_merge_tags)
13749 (gst_tag_setter_add_tags, gst_tag_setter_add_tag_values)
13750 (gst_tag_setter_add_tag_valist)
13751 (gst_tag_setter_add_tag_valist_values): Renamed from _merge, _add,
13752 _add_values, _add_valist, and _add_valist_values. Since this is an
13753 interface the function suffixes should be more explicit so
13754 language binding don't end up with element.add_valist ->
13755 gst_tag_setter_add_valist, for example. Fixes #322069.
13757 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
13759 * check/gst/gstcaps.c: (GST_START_TEST):
13760 Extend caps string tests to check that a caps to string
13761 conversion is reversible and produces the same caps.
13763 * gst/gststructure.c: (gst_structure_value_get_generic_type):
13764 Output "fraction" as the generic type fraction range, so caps
13765 serialisation and deserialisation works.
13766 * check/gst/capslist.h:
13767 * gst/gstvalue.c: (gst_value_deserialize_fraction):
13768 Support 'MIN' and 'MAX' for deserialising fractions.
13770 2005-11-22 Andy Wingo <wingo@pobox.com>
13772 * gst/gstevent.h (gst_event_new_new_segment)
13773 (gst_event_parse_new_segment, gst_event_new_buffer_size)
13774 (gst_event_parse_buffer_size, gst_ghost_pad_new_no_target):
13775 Renamed from *_newsegment, *_buffersize, *_notarget.
13777 * scripts/update-funcnames: New script, performs the changes
13778 listed above.
13780 2005-11-22 Wim Taymans <wim@fluendo.com>
13782 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
13783 Make sure the GstFlowReturn is returned.
13785 * gst/gstbus.c: (gst_bus_add_signal_watch_full),
13786 (gst_bus_add_signal_watch):
13787 * gst/gstbus.h:
13788 add gst_bus_add_signal_watch_full.
13790 * gst/gstplugin.c: (gst_plugin_load_file):
13791 Small style cleanup.
13793 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
13795 * check/gst/gstevent.c: (test_event), (GST_START_TEST):
13796 Block the fakesrc srcpad when we send an event, to avoid
13797 contention on the stream_lock causing random test failures.
13799 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
13801 * check/gst/gstvalue.c: (GST_START_TEST):
13802 * gst/gstvalue.c: (gst_value_fraction_subtract):
13803 Fix subtraction.
13805 2005-11-22 Stefan Kost <ensonic@users.sf.net>
13807 * gst/gst.h:
13808 include "gstchildproxy.h"
13809 * gst/gstchildproxy.h:
13810 * libs/gst/controller/gstcontroller.h:
13811 use G_GNUC_NULL_TERMINATED
13813 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
13815 * check/gst/capslist.h:
13816 * check/gst/gstcaps.c: (GST_START_TEST):
13817 * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
13818 * gst/gststructure.c: (gst_structure_parse_range),
13819 (gst_structure_fixate_field_nearest_fraction):
13820 * gst/gststructure.h:
13821 * gst/gstvalue.c: (gst_value_init_fraction_range),
13822 (gst_value_free_fraction_range), (gst_value_copy_fraction_range),
13823 (gst_value_collect_fraction_range),
13824 (gst_value_lcopy_fraction_range), (gst_value_set_fraction_range),
13825 (gst_value_set_fraction_range_full),
13826 (gst_value_get_fraction_range_min),
13827 (gst_value_get_fraction_range_max),
13828 (gst_value_serialize_fraction_range),
13829 (gst_value_transform_fraction_range_string),
13830 (gst_value_compare_fraction_range),
13831 (gst_value_deserialize_fraction_range),
13832 (gst_value_intersect_fraction_fraction_range),
13833 (gst_value_intersect_fraction_range_fraction_range),
13834 (gst_value_subtract_fraction_fraction_range),
13835 (gst_value_subtract_fraction_range_fraction),
13836 (gst_value_subtract_fraction_range_fraction_range),
13837 (gst_value_collect_fraction), (gst_value_fraction_multiply),
13838 (gst_value_fraction_subtract), (gst_value_deserialize_fraction),
13839 (gst_value_transform_string_fraction), (_gst_value_initialize):
13840 * gst/gstvalue.h:
13841 Implement fraction ranges and extend GstFraction to support
13842 arithmetic subtraction, as well as deserialization from integer
13843 strings such as "100"
13844 Add a testsuite as for int and double range set operations
13846 2005-11-21 Andy Wingo <wingo@pobox.com>
13848 * gst/gsttaglist.h:
13849 * gst/gstcaps.h:
13850 * gst/gststructure.h: Add glib-compat.h.
13852 2005-11-21 Wim Taymans <wim@fluendo.com>
13854 * gst/gstbin.c: (gst_bin_change_state_func):
13855 Fix for #321595
13857 2005-11-21 Wim Taymans <wim@fluendo.com>
13859 * gst/gstsegment.h:
13860 And add a nice define too.
13862 2005-11-21 Wim Taymans <wim@fluendo.com>
13864 * gst/gstsegment.c: (gst_segment_copy), (gst_segment_get_type),
13865 (gst_segment_new), (gst_segment_free), (gst_segment_init),
13866 (gst_segment_set_duration), (gst_segment_set_last_stop),
13867 (gst_segment_set_seek), (gst_segment_set_newsegment),
13868 (gst_segment_to_stream_time), (gst_segment_to_running_time),
13869 (gst_segment_clip):
13870 * gst/gstsegment.h:
13871 Make binding friendly.
13873 2005-11-21 Andy Wingo <wingo@pobox.com>
13875 * gst/gsttagsetter.h:
13876 * gst/gsttaglist.h:
13877 * gst/gststructure.h:
13878 * gst/gstcaps.h:
13879 * gst/gstutils.h: Sprinkle NULL_TERMINATED to taste. Fixes
13880 #319940.
13882 * gst/gsterror.c (_gst_core_errors_init):
13883 * gst/gsterror.h (GST_CORE_ERROR_MISSING_PLUGIN): New error
13884 category.
13886 * gst/Makefile.am (gst_headers): Add glib-compat.h.
13887 (noinst_HEADERS): noinst the -private.
13889 2005-11-21 Michael Smith <msmith@fluendo.com>
13891 * gst/gstplugin.h:
13892 * gst/gstregistry.h:
13893 Remove unimplemented declarations for which we can see no sensible
13894 use.
13896 2005-11-21 Andy Wingo <wingo@pobox.com>
13898 * gst/gst.h: Include glib-compat.h.
13900 * gst/glib-compat.h: Add G_GNUC_NULL_TERMINATED.
13902 * gst/glib-compat.c: Include the public and the private header.
13904 * gst/glib-compat-private.h: Copied here from glib-compat.h.
13906 * gst/gstvalue.c:
13907 * gst/gstpad.c:
13908 * gst/gstregistryxml.c: s/glib-compat/glib-compat-private/.
13910 * check/gst/gstevent.c (create_custom_events): Check that
13911 FLUSH_STOP is serialized.
13913 * check/elements/identity.c (event_func):
13914 * check/elements/fakesrc.c (event_func): No stream lock, the core
13915 takes it.
13917 * gst/base/gstbasetransform.c (gst_base_transform_event): No more
13918 stream lock taking, yay.
13920 * gst/gstevent.h (GST_EVENT_FLUSH_STOP): Marked as serialized to
13921 ensure that core takes the stream lock.
13923 * gst/base/gstbasesrc.c (gst_base_src_do_seek): Update for stream
13924 lock name change.
13926 * gst/base/gstbasesink.c (gst_base_sink_event): No need to take
13927 the stream lock for EOS, NEWSEGMENT, or FLUSH_STOP, the core does
13928 it already. For the flush start we do take it though so we get the
13929 right preroll state change messages.
13931 * gst/gstqueue.c (gst_queue_sink_activate_push): No need to take
13932 the stream lock here, the core does it for us.
13934 * gst/gstpad.h (GST_PAD_GET_STREAM_LOCK): Renamed from
13935 GST_STREAM_GET_LOCK.
13936 (GST_PAD_STREAM_LOCK, GST_PAD_STREAM_TRYLOCK)
13937 (GST_PAD_STREAM_UNLOCK, GST_PAD_STREAM_UNLOCK_FULL)
13938 (GST_PAD_STREAM_LOCK_FULL): Renamed from GST_STREAM_*.
13939 (GST_PAD_GET_PREROLL_LOCK): Renamed from GST_PREROLL_GET_LOCK.
13940 (GST_PAD_PREROLL_LOCK, GST_PAD_PREROLL_TRYLOCK)
13941 (GST_PAD_PREROLL_UNLOCK): Renamed from GST_PREROLL_*.
13943 * gst/gstpad.c: Update for stream lock name change.
13945 * gst/base/gstbasesink.c: Update for preroll lock name change.
13947 2005-11-21 Wim Taymans <wim@fluendo.com>
13949 * gst/gstclock.c: (gst_clock_init), (gst_clock_set_master),
13950 (gst_clock_get_master):
13951 * gst/gstclock.h:
13952 * gst/gstsystemclock.c: (gst_system_clock_init):
13953 Convert Clock flags to object flags.
13954 Added methods to manage master/slave clocks.
13956 2005-11-21 Wim Taymans <wim@fluendo.com>
13958 * check/gst/gstsegment.c: (GST_START_TEST):
13959 * docs/design/part-TODO.txt:
13960 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
13961 (gst_base_sink_event), (gst_base_sink_do_sync),
13962 (gst_base_sink_activate_pull), (gst_base_sink_get_position),
13963 (gst_base_sink_query), (gst_base_sink_change_state):
13964 * gst/base/gstbasesink.h:
13965 * gst/base/gstbasesrc.c: (gst_base_src_init), (gst_base_src_query),
13966 (gst_base_src_default_newsegment),
13967 (gst_base_src_configure_segment), (gst_base_src_do_seek),
13968 (gst_base_src_get_range), (gst_base_src_loop),
13969 (gst_base_src_change_state):
13970 * gst/base/gstbasesrc.h:
13971 * gst/base/gstbasetransform.c:
13972 (gst_base_transform_prepare_output_buf),
13973 (gst_base_transform_event), (gst_base_transform_change_state):
13974 * gst/base/gstbasetransform.h:
13975 * gst/base/gstcollectpads.c: (gst_collect_pads_add_pad),
13976 (gst_collect_pads_event):
13977 * gst/base/gstcollectpads.h:
13978 * gst/elements/gstfakesrc.c: (gst_fake_src_init),
13979 (gst_fake_src_create):
13980 * gst/elements/gstfakesrc.h:
13981 * gst/elements/gstidentity.c: (gst_identity_transform_ip):
13982 * gst/gstsegment.c: (gst_segment_init), (gst_segment_set_duration),
13983 (gst_segment_set_last_stop), (gst_segment_set_seek),
13984 (gst_segment_set_newsegment), (gst_segment_to_stream_time),
13985 (gst_segment_to_running_time), (gst_segment_clip):
13986 * gst/gstsegment.h:
13987 More segment updates, replace code in plugins with segment
13988 helper functions.
13990 2005-11-21 Jan Schmidt <thaytan@mad.scientist.com>
13992 * gst/elements/gstfdsrc.c: (gst_fdsrc_uri_set_uri):
13993 Don't ignore sscanf results
13995 2005-11-21 Andy Wingo <wingo@pobox.com>
13997 * gst/gstpad.h (GST_IS_PAD_FAST): Removed.
13999 * *.h:
14000 * *.c: Ran scripts/update-macros. Oh yes.
14002 * gst/gstobject.h (GST_OBJECT_GET_LOCK, GST_OBJECT_LOCK)
14003 (GST_OBJECT_TRYLOCK, GST_OBJECT_UNLOCK): Renamed from
14004 GST_GET_LOCK, etc.
14006 * scripts/update-macros: New script. Run it on your files to
14007 change GST_LOCK to GST_OBJECT_LOCK, and the same for UNLOCK as
14008 well.
14010 2005-11-21 Stefan Kost <ensonic@users.sf.net>
14012 * docs/gst/Makefile.am:
14013 * docs/gst/gstreamer-docs.sgml:
14014 * docs/gst/gstreamer-sections.txt:
14015 * docs/gst/gstreamer.types:
14016 * gst/gstinfo.h:
14017 more docs fixes, add new api to the docs
14019 2005-11-21 Andy Wingo <wingo@pobox.com>
14021 * gst/gstbin.c (gst_bin_remove_func): Wim claims I can remove this
14022 state_broadcast call.
14024 * gst/gstsegment.c (gst_segment_init): Initialize abs_rate.
14026 2005-11-21 Julien MOUTTE <julien@moutte.net>
14028 * gst/gstvalue.c: (gst_value_intersect_array): Fix wrong
14029 function calls for arrays.
14031 2005-11-21 Stefan Kost <ensonic@users.sf.net>
14033 * docs/random/ensonic/media-device-daemon.txt:
14034 wild idea, can this be done?
14035 * docs/gst/gstreamer-sections.txt:
14036 * gst/gsterror.h:
14037 * gst/gstfilter.c:
14038 * gst/gstfilter.h:
14039 * gst/gstplugin.h:
14040 * gst/gstpluginfeature.c:
14041 * gst/gsttrace.c:
14042 * gst/gstvalue.c:
14043 * gst/gstvalue.h:
14044 doc fixes and additions
14046 2005-11-21 Andy Wingo <wingo@pobox.com>
14048 * gst/base/gstbasesrc.c (GST_LIVE_BROADCAST, GST_LIVE_SIGNAL)
14049 (GST_LIVE_TIMED_WAIT, GST_LIVE_WAIT, GST_LIVE_GET_COND)
14050 (GST_LIVE_UNLOCK, GST_LIVE_TRYLOCK, GST_LIVE_LOCK)
14051 (GST_LIVE_GET_LOCK): Moved here from gstbasesrc.h. They are
14052 private to the basesrc implementation.
14054 * gst/gstpad.c (gst_pad_send_event): Doc more. Take stream lock on
14055 behalf of event function if necessary. It should no longer be
14056 necessary to take the stream lock in pad's event functions. Fixes
14057 #320299.
14059 2005-11-21 Jan Schmidt <thaytan@mad.scientist.com>
14060 * docs/gst/gstreamer-sections.txt:
14061 * gst/gststructure.c: (gst_structure_fixate_field_nearest_int),
14062 (gst_structure_fixate_field_nearest_double),
14063 (gst_structure_fixate_field_boolean):
14064 * gst/gststructure.h:
14065 * win32/common/libgstreamer.def:
14066 * win32/gstreamer.def:
14068 Rename gst_caps_structure_fixate_* to gst_structure_fixate_*
14069 (#322027)
14071 2005-11-21 Jan Schmidt <thaytan@mad.scientist.com>
14073 * gst/elements/gstfdsrc.c: (_do_init), (gst_fdsrc_class_init),
14074 (gst_fdsrc_init), (gst_fdsrc_dispose), (gst_fdsrc_set_property),
14075 (gst_fdsrc_uri_get_type), (gst_fdsrc_uri_get_protocols),
14076 (gst_fdsrc_uri_get_uri), (gst_fdsrc_uri_set_uri),
14077 (gst_fdsrc_uri_handler_init):
14078 * gst/elements/gstfdsrc.h:
14079 Port fd:// URI handler from 0.8 to fdsrc
14081 2005-11-21 Tim-Philipp Müller <tim at centricular dot net>
14083 * gst/gstvalue.c: (gst_value_transform_fourcc_string),
14084 (gst_value_serialize_fourcc):
14085 * gst/gstvalue.h:
14086 Drop leading '%' from GST_FOURCC_FORMAT, thus making it
14087 consistent with our other format defines (#320324).
14089 2005-11-21 Tim-Philipp Müller <tim at centricular dot net>
14091 * gst/gstvalue.c: (gst_value_is_fixed):
14092 Revert previous commit. Value lists are by definition
14093 not fixed, as they are a list of possible values.
14095 2005-11-21 Andy Wingo <wingo@pobox.com>
14097 * gst/gstevent.h (GST_EVENT_FILLER): Removed. Can be added back
14098 during the stable series if we need it. Fixes #319178.
14100 * gst/gstevent.c (gst_event_new_filler): Removed.
14102 * check/gst/gstevent.c: Update comment about filler events.
14104 2005-11-21 Tim-Philipp Müller <tim at centricular dot net>
14106 * gst/gstvalue.c: (gst_value_is_fixed):
14107 Should handle both value arrays and value lists.
14109 2005-11-21 Andy Wingo <wingo@pobox.com>
14111 patch by: Alessandro Dessina <alessandro nnva org>
14113 * gst/gstvalue.c (gst_value_is_fixed): Use gst_value_array
14114 functions to access arrays. Fixes #321962.
14116 2005-11-21 Tim-Philipp Müller <tim at centricular dot net>
14118 * docs/gst/gstreamer.types:
14119 gst_collectpads_get_type => gst_collect_pads_get_type.
14121 * gst/base/gstbasetransform.c:
14122 Remove unused SIGNAL_HANDOFF enum.
14124 2005-11-21 Andy Wingo <wingo@pobox.com>
14126 * gst/gstevent.h (GstEventTypeFlags): New data type, the flags of
14127 the event type (upstream, downstream, serialized). Renamed
14128 GST_EVDIR_* and GST_EVSER to GST_EVENT_TYPE_*.
14129 (GstEventType): Use GstEventTypeFlags. Rename CUSTOM_UP to
14130 CUSTOM_UPSTREAM, CUSTOM_DS to CUSTOM_DOWNSTREAM, etc.
14132 * gst/gstevent.c: Update for new CUSTOM event names.
14134 * check/gst/gstevent.c: Update check for new CUSTOM event names.
14136 * gst/gstevent.h:
14137 * gst/gstevent.c (gst_event_type_get_flags): New function. Fixes
14138 bug #319392.
14140 2005-11-21 Tim-Philipp Müller <tim at centricular dot net>
14142 * docs/gst/gstreamer-sections.txt:
14143 * win32/common/libgstbase.def:
14144 * win32/libgstbase.def:
14145 * gst/base/gstcollectpads.c: (gst_collect_pads_base_init),
14146 (gst_collect_pads_class_init), (gst_collect_pads_init),
14147 (gst_collect_pads_finalize), (gst_collect_pads_new),
14148 (gst_collect_pads_set_function), (gst_collect_pads_add_pad),
14149 (gst_collect_pads_remove_pad), (gst_collect_pads_is_active),
14150 (gst_collect_pads_collect), (gst_collect_pads_collect_range),
14151 (gst_collect_pads_start), (gst_collect_pads_stop),
14152 (gst_collect_pads_peek), (gst_collect_pads_pop),
14153 (gst_collect_pads_available), (gst_collect_pads_read),
14154 (gst_collect_pads_flush), (gst_collect_pads_event),
14155 (gst_collect_pads_chain):
14156 * gst/base/gstcollectpads.h:
14157 Rename gst_collecpads_foo() => gst_collect_pads_foo(). Document
14158 unimplemented functions as unimplemented. Add padding to
14159 GstCollectData. (#320766, #320423)
14161 2005-11-21 Tim-Philipp Müller <tim at centricular dot net>
14163 * gst/gstmessage.c:
14164 Improve docs for DURATION message (usage of duration parameter)
14165 (#320113)
14167 2005-11-20 Wim Taymans <wim@fluendo.com>
14169 * check/Makefile.am:
14170 * check/gst/gstsegment.c: (GST_START_TEST), (gstevents_suite),
14171 (main):
14172 * gst/Makefile.am:
14173 * gst/gst.h:
14174 * gst/gstsegment.c: (gst_segment_init), (gst_segment_set_duration),
14175 (gst_segment_set_seek), (gst_segment_set_newsegment),
14176 (gst_segment_to_stream_time), (gst_segment_to_running_time),
14177 (gst_segment_clip):
14178 * gst/gstsegment.h:
14179 Added segment helper structure and methods. Not fully implemented
14180 yet.
14181 Added segment check.
14183 2005-11-20 Jan Schmidt <thaytan@mad.scientist.com>
14185 * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
14186 Add a deserialisation test for fractions
14187 * examples/metadata/read-metadata.c: (message_loop),
14188 (make_pipeline), (main):
14189 Fix up metadata reading sample.
14190 * gst/base/gstbasesink.c: (gst_base_sink_do_sync):
14191 Debug format fix
14192 * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
14193 Don't try and fixate empty caps
14194 * gst/gst_private.h:
14195 Wrap in G_BEGIN_DECLS/G_END_DECLS
14196 * gst/gstvalue.c: (gst_value_collect_fraction),
14197 (gst_value_set_fraction), (gst_value_get_fraction_denominator),
14198 (gst_value_transform_string_fraction),
14199 (gst_value_compare_fraction):
14200 Add some extra guards to ensure that we don't end up
14201 with an invalid denominator of 0 in a gstfraction and
14202 that fractions always get reduced.
14204 2005-11-20 Wim Taymans <wim@fluendo.com>
14206 * docs/gst/gstreamer-sections.txt:
14207 * gst/gstbuffer.h:
14208 * gst/gstelement.c:
14209 * gst/gstformat.c:
14210 * gst/gstformat.h:
14211 * gst/gstindex.h:
14212 * gst/gstquery.c:
14213 * gst/gstquery.h:
14214 * gst/gstvalue.c:
14215 Doc fixes.
14217 2005-11-20 Wim Taymans <wim@fluendo.com>
14219 * docs/design/part-TODO.txt:
14220 * gst/gstcaps.h:
14221 Make a proper enum of the flag.
14223 2005-11-19 Wim Taymans <wim@fluendo.com>
14225 * docs/design/part-TODO.txt:
14226 * gst/gstformat.c: (_gst_format_initialize), (gst_format_get_name),
14227 (gst_format_to_quark), (gst_format_register):
14228 * gst/gstformat.h:
14229 * gst/gstquery.c: (_gst_query_initialize),
14230 (gst_query_type_get_name), (gst_query_type_to_quark),
14231 (gst_query_type_register):
14232 * gst/gstquery.h:
14233 Add type to quark and type to string conversions.
14235 2005-11-19 Andy Wingo <wingo@pobox.com>
14237 * gst/gstbuffer.h (GST_BUFFER_FLAG_ORIGINAL): Removed. Fixes
14238 #320097.
14240 2005-11-19 Wim Taymans <wim@fluendo.com>
14242 * docs/design/part-TODO.txt:
14243 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_provide_clock_func),
14244 (gst_bin_add_func), (gst_bin_remove_func), (bin_bus_handler),
14245 (gst_bin_handle_message_func):
14246 * gst/gstbin.h:
14247 Make message handling overridable.
14249 2005-11-19 Andy Wingo <wingo@pobox.com>
14251 * gst/gstpad.h (GST_PAD_IS_USABLE): Removed. Fixes #321235.
14253 * gst/gstclock.h:
14254 * gst/gstclock.c (GstClock, GstClockClass): Change resolution to
14255 be a GstClockTime.
14256 (gst_clock_set_resolution, gst_clock_get_resolution): Resolution
14257 is a GstClockTime. Fixes #321710.
14259 * gst/gstclock.h (GstClock): Remove offset property. Add
14260 internal_calibration and external_calibration. Fix padding. Pad
14261 also by GstClockTime so we don't run into problems.
14263 * gst/gstclock.c (gst_clock_set_rate_offset): Remove.
14264 (gst_clock_get_rate_offset): Remove.
14265 (gst_clock_set_time_adjust): Remove. Fixes #321712.
14267 * gst/gstutils.h:
14268 * gst/gstutils.c (g_static_rec_cond_wait)
14269 (g_static_rec_cond_timed_wait): Removed, no longer needed.
14271 * gst/gstbin.c: Remove terrible continue_state prototype.
14273 * gst/gstelement.h (gst_element_continue_state): Make public.
14275 * gst/gstelement.h:
14276 * gst/gstelement.c (gst_element_commit_state): Removed, replaced
14277 by continue_state. Fixes #319389.
14279 * gst/gstindex.h (GstIndexFilter): Actually pass on the user_data.
14280 Really fixes #168438. However I don't see anywhere where the
14281 filter function is called... stupid GStreamer...
14283 * gst/gstindex.h (GstIndex): Add field for user_data_destroy. We
14284 don't have a dispose function, so it won't get called when the
14285 object is unreffed, but oh well!
14287 * gst/gstindex.c (gst_index_set_filter_full): New API function,
14288 allows a destroy function to be set so user_data can be freed.
14289 Fixes #168438.
14290 (gst_index_set_filter): Call gst_index_set_filter_full.
14292 * check/gst/gstvalue.c (test_string): Add test for bug #165650.
14294 * gst/gstvalue.c (gst_string_wrap): Trying to serialize a NULL
14295 string should produce an error, given the lack of a way to
14296 represent NULL strings. Fixes #165650.
14298 * gst/gstvalue.h:
14299 * gst/gstvalue.c (gst_value_array_append_value)
14300 (gst_value_array_prepend_value, gst_value_array_get_size)
14301 (gst_value_array_get_value): New API, copied from
14302 gst_value_list_*, only operates on arrays.
14303 (gst_value_list_append_value, gst_value_list_prepend_value)
14304 (gst_value_list_concat, gst_value_list_get_size)
14305 (gst_value_list_get_value): Only operate on lists. Fixes #156633.
14307 * gst/gstvalue.c (gst_value_init_list_or_array): Renamed from
14308 init_list, because it works on both.
14309 (copy_garray_of_gstvalue): Renamed from gst_value_list_copy_array.
14310 (gst_value_copy_list_or_array): Renamed from copy_list.
14311 (gst_value_free_list_or_array): Renamed from free_list.
14312 (gst_value_collect_list_or_array): Renamed from collect_list.
14313 (gst_value_lcopy_list_or_array): Renamed from lcopy_list.
14314 (gst_value_list_or_array_peek_pointer): Renamed from
14315 list_peek_pointer.
14316 (_gst_value_array_value_table, _gst_value_list_value_table):
14317 Update value table functions.
14318 (gst_value_compare_list_or_array): Renamed from compare_list.
14320 * gsttaglist.h: Whoops, foreach function returns void. Also fix
14321 some constness.
14323 * gst/gsttaglist.c:
14324 * gst/gsttaglist.h (gst_tag_list_foreach): Operates on a const
14325 GstTagList*. Fixes #143472.
14327 * gst/gststructure.h: Clarify what the foreach/map functions can
14328 or can't do to their arguments.
14330 2005-11-18 Wim Taymans <wim@fluendo.com>
14332 * gst/gstclock.c: (gst_clock_set_calibration),
14333 (gst_clock_get_calibration):
14334 Doc and API fixes.
14335 Calibration can be set with internal time equal to current
14336 internal time too.
14338 2005-11-18 Thomas Vander Stichele <thomas at apestaart dot org>
14340 * gst/gsterror.c:
14341 * gst/gsterror.h:
14342 document
14344 2005-11-18 Andy Wingo <wingo@pobox.com>
14346 * configure.ac:
14347 * pkgconfig/gstreamer-net.pc.in:
14348 * pkgconfig/gstreamer-net-uninstalled.pc.in:
14349 * pkgconfig/Makefile.am: Add net pkgconfig files.
14351 2005-11-18 Stefan Kost <ensonic@users.sf.net>
14353 * gst/gstcaps.c:
14354 * gst/gstghostpad.c:
14355 * gst/gsttrace.c:
14356 * gst/gstvalue.c:
14357 * gst/gstvalue.h:
14358 docs fixes
14360 2005-11-18 Andy Wingo <wingo@pobox.com>
14362 * gst/net/gstnetclientclock.c: Turn off debugging.
14364 * check/net/gstnetclientclock.c (test_functioning): Assert that the
14365 times connverge somewhat. Can't make a real test.
14367 * gst/net/gstnetclientclock.c (do_linear_regression): Use all
14368 integer arithmetic. Return the minimum of the domain, which can be
14369 set as "internal" for gst_clock_set_calibration.
14370 (gst_net_client_clock_observe_times): Call _set_calibration.
14371 (gst_net_client_clock_new): Call _set_calibration instead of
14372 rate_offset.
14374 * check/net/gstnetclientclock.c (test_functioning): Use the right
14375 adjustment api.
14377 * gst/gstclock.h:
14378 * gst/gstclock.c (gst_clock_get_calibration)
14379 (gst_clock_set_calibration): New functions, obsolete the ones I
14380 added yesterday. Doh. Precision issues mean we have to extrapolate
14381 from a point in the more recent past than 1970.
14382 (gst_clock_get_rate_offset, gst_clock_set_rate_offset): Mark as
14383 obsolete.
14384 (gst_clock_adjust_unlocked): Use the right calibration data.
14386 2005-11-18 Edward Hervey <edward@fluendo.com>
14388 * gst/base/gstbasesink.c: (gst_base_sink_change_state):
14389 Also reset the ->current_* values in READY->PAUSED
14391 2005-11-18 Andy Wingo <wingo@pobox.com>
14393 * gst/net/gstnetclientclock.c (gst_net_client_clock_thread):
14394 Whoops, check the right fd. Also add some debugging.
14395 (gst_net_client_clock_observe_times): Adjust for int64 offset.
14396 (do_linear_regression): Add a crapload of debugging. Subtract off
14397 the minimum values from the input series to discard unneeded bits.
14398 Use only int arithmetic. There is still double arithmetic when
14399 calculating the intercept that needs fixing. Return boolean to
14400 indicate success; FALSE would mean the domain or range is too
14401 great. Still needs fixes.
14403 2005-11-18 Wim Taymans <wim@fluendo.com>
14405 * gst/base/gstbasesink.c: (gst_base_sink_get_position):
14406 For the current position in stream time, we need to subtract
14407 accumulated time.
14409 * gst/gstsystemclock.c: (gst_system_clock_async_thread):
14410 Release lock before calling the callback function of async
14411 entries.
14413 2005-11-18 Andy Wingo <wingo@pobox.com>
14415 * gst/net/gstnetclientclock.c (gst_net_client_clock_class_init):
14416 Port goes all the way to MAXUINT16.
14418 * gst/net/gstnettimeprovider.c: Make the port range the same as
14419 for the kernel: 0 assigns, otherwise ports are less than
14420 MAXUINT16.
14422 * check/net/gstnettimeprovider.c: Adapt for 0 == kernel assigns
14423 port change.
14425 * check/net/gstnetclientclock.c (test_functioning): Add the start
14426 of another test.
14428 2005-11-18 Wim Taymans <wim@fluendo.com>
14430 * gst/gstbin.c: (gst_bin_provide_clock_func), (gst_bin_add_func),
14431 (gst_bin_remove_func), (bin_bus_handler):
14432 * gst/gstbin.h:
14433 Removing a clock provider from a bin, triggers a clock lost message
14434 so that a new clock will be selected.
14435 Adding a clock to a bin triggers a clock provider message.
14436 Make sure we reselect a clock when we received a clock lost message.
14437 Keep a reference to the element that provided the clock.
14439 2005-11-18 Andy Wingo <wingo@pobox.com>
14441 * gst/net/gstnetclientclock.c (gst_net_client_clock_new): Adjust
14442 the clock initially so it produces values around the base time.
14443 (gst_net_client_clock_class_init): Typo fix.
14444 (gst_net_client_clock_thread): Add note on when the socket gets
14445 closed.
14447 2005-11-17 Wim Taymans <wim@fluendo.com>
14449 * gst/net/gstnetclientclock.c: (gst_net_client_clock_finalize):
14450 Free remote and local time arrays.
14452 2005-11-17 Wim Taymans <wim@fluendo.com>
14454 * gst/net/gstnetclientclock.c: (do_linear_regression),
14455 (gst_net_client_clock_do_select), (gst_net_client_clock_thread):
14456 Fix compilation, uninitialized vars and a forgotten continue.
14458 2005-11-17 Andy Wingo <wingo@pobox.com>
14460 * check/Makefile.am (check_PROGRAMS):
14461 * check/net/gstnetclientclock.c: Add a most minimal test for the
14462 net client clock. More to come later.
14464 * gst/net/gstnet.h:
14465 * gst/net/Makefile.am: Add netclientclock.
14467 * gst/net/gstnetclientclock.h:
14468 * gst/net/gstnetclientclock.c: New files, implement an untested
14469 GstClock that takes its time from a network time provider.
14470 Implements the algorithm in network-clock.scm.
14472 * tests/network-clock.scm (*window-size*): Rename from
14473 *queue-length*.
14474 * tests/network-clock.scm (network-time):
14475 * tests/network-clock-utils.scm (q-push): Update callers.
14477 2005-11-17 Wim Taymans <wim@fluendo.com>
14479 * gst/gstbin.c: (gst_bin_provide_clock_func),
14480 (gst_bin_sort_iterator_new):
14481 And unref the child too..
14483 2005-11-17 Wim Taymans <wim@fluendo.com>
14485 * gst/gstbin.c: (gst_bin_dispose), (gst_bin_provide_clock_func),
14486 (gst_bin_sort_iterator_new), (gst_bin_iterate_sorted):
14487 Refactor the sort iterator so it can be used while holding the
14488 LOCK too.
14489 Make clock selection select a clock closest to the source.
14491 2005-11-17 Michael Smith <msmith@fluendo.com>
14493 * gst/gstclock.c: (gst_clock_init), (gst_clock_adjust_unlocked),
14494 (gst_clock_set_rate_offset), (gst_clock_get_rate_offset):
14495 * gst/gstclock.h:
14496 Anonymous structs are a gcc (and some other compilers) extension, so
14497 don't use them. Since this is only for ABI-compatibility, and our
14498 API/ABI freeze is over in a few days, this whole thing will only
14499 last a few days, so don't bother trying to think up a meaningful
14500 name for the struct.
14502 2005-11-17 Andy Wingo <wingo@pobox.com>
14504 * gst/gstclock.h (GstClock): Add rate and offset properties,
14505 preserving ABI stability. Add rate/offset accessors. Will file bug
14506 for the freeze break.
14508 * gst/gstclock.c (gst_clock_adjust_unlocked): Implement using rate
14509 and offset, trying to keep precision and avoiding
14510 underflow/overflow.
14511 (gst_clock_set_rate_offset, gst_clock_get_rate_offset): New
14512 functions. Make gst_clock_set_time_adjust obsolete.
14513 (gst_clock_set_time_adjust): Note that this function is obsolete.
14514 Will file bug soon.
14516 * gst/base/gstbasetransform.h: Make the ABI-stability hack
14517 greppable by using GST_PADDING-1+1.
14519 2005-11-17 Torsten Schoenfeld <kaffeetisch at gmx dot net>
14521 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
14523 * gst/gstmessage.c: (gst_message_parse_clock_lost):
14524 Assertion should check for CLOCK_LOST, not NEW_CLOCK (#321648).
14526 * gst/gstpadtemplate.h:
14527 * gst/gstpluginfeature.h:
14528 Don't use c++ style comments in headers (#321638).
14530 2005-11-16 Andy Wingo <wingo@pobox.com>
14532 * gst/net/gstnettimepacket.c (gst_net_time_packet_send): Free
14533 buffer.
14535 * check/net/gstnettimeprovider.c: Check to see that the time
14536 provider actually provides times. Works, yo!
14538 2005-11-16 Wim Taymans <wim@fluendo.com>
14540 * check/Makefile.am:
14541 Enable more tests.
14543 * check/elements/fakesrc.c: (GST_START_TEST):
14544 Set element to NULL before disposing it.
14546 2005-11-16 Andy Wingo <wingo@pobox.com>
14548 * gst/net/Makefile.am:
14549 * gst/net/gstnet.h:
14550 * gst/net/gstnettimeprovider.c:
14551 * gst/net/gstnettimeprovider.h: Use the timepacket stuff in the
14552 provider, include it from gstnet.h, and add it to the build.
14554 * gst/net/gstnettimepacket.h:
14555 * gst/net/gstnettimepacket.c: New files, abstracts out the packet
14556 sending and receiving.
14558 2005-11-16 Wim Taymans <wim@fluendo.com>
14560 * check/Makefile.am:
14561 Enable valgrind check.
14563 * gst/elements/gstfakesrc.c: (gst_fake_src_alloc_parent),
14564 (gst_fake_src_alloc_buffer):
14565 Fix memleak.
14567 2005-11-16 Wim Taymans <wim@fluendo.com>
14569 * gst/net/gstnettimeprovider.c: (gst_net_time_provider_finalize):
14570 Call parent finalize too.
14572 2005-11-16 Wim Taymans <wim@fluendo.com>
14574 * check/Makefile.am:
14575 Enable valgrind check that should work fine now.
14577 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init):
14578 * gst/gstqueue.c: (gst_queue_init):
14579 Fix memleaks in pad allocation.
14581 2005-11-16 Andy Wingo <wingo@pobox.com>
14583 * gst/net/Makefile.am:
14584 * gst/net/gstnet.h: New part of core to hold network elements and
14585 objects. Put in core because it exposes API that applications want
14586 to use. The library is named libgstnet-tempname right now because
14587 of the existing libgstnet in gst-plugins-base. Solution is
14588 probably to rename the one in plugins-base; will file a bug for
14589 the freeze break.
14591 * gst/net/gstnettimeprovider.c:
14592 * gst/net/gstnettimeprovider.h: New object to export a GstClock's
14593 get_time call over the network.
14595 * configure.ac:
14596 * gst/Makefile.am (lib_LTLIBRARIES): Add gstnet to the build.
14598 * check/Makefile.am:
14599 * check/net/gstnettimeprovider.c: A most minimal test suite. Will
14600 get additions shortly.
14602 2005-11-16 Thomas Vander Stichele <thomas at apestaart dot org>
14604 * gst/gstpad.c: (gst_pad_new_from_static_template):
14605 * gst/gstpad.h:
14606 add gst_pad_new_from_static_template functions
14607 * gst/check/gstcheck.c: (gst_check_setup_src_pad),
14608 (gst_check_setup_sink_pad):
14609 * gst/elements/gsttee.c: (gst_tee_init):
14610 and use them
14612 2005-11-16 Wim Taymans <wim@fluendo.com>
14614 * gst/gstpad.c: (gst_pad_pause_task):
14615 Removed warning, it's not really an error either.
14617 2005-11-16 Wim Taymans <wim@fluendo.com>
14619 * gst/base/gstbasetransform.c:
14620 (gst_base_transform_prepare_output_buf),
14621 (gst_base_transform_event):
14622 Check if the caps are NULL, this can happen if the element
14623 is shutting down and the pad caps are set to NULL.
14625 2005-11-16 Thomas Vander Stichele <thomas at apestaart dot org>
14627 * gst/elements/gsttee.c: (gst_tee_init):
14628 fix pad template leak in tee
14630 2005-11-16 Thomas Vander Stichele <thomas at apestaart dot org>
14632 * gst/glib-compat.c: (g_value_dup_gst_object):
14633 * gst/glib-compat.h:
14634 * gst/gstpad.c: (gst_pad_set_property):
14635 use gst_object_ref when setting the pad template; this will
14636 trigger the pad template leaks on GLib 2.6 and the slaves
14638 2005-11-16 Thomas Vander Stichele <thomas at apestaart dot org>
14640 * gst/glib-compat.c: (gst_flags_get_first_value):
14641 * gst/glib-compat.h:
14642 * gst/gstregistryxml.c:
14643 remove functions copied from GLib 2.6
14645 2005-11-16 Michael Smith <msmith@fluendo.com>
14647 * gst/Makefile.am:
14648 Don't link against VALGRIND_LIBS. That was always the wrong thing to
14649 do, but only breaks with newer valgrind versions. We're not a
14650 valgrind tool, we have no link-time dependencies on libcoregrind.
14652 2005-11-16 Thomas Vander Stichele <thomas at apestaart dot org>
14654 * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
14655 some debug changes
14656 * gst/gstmessage.h:
14657 typo fixes
14659 2005-11-16 Thomas Vander Stichele <thomas at apestaart dot org>
14661 * gst/base/gstbasesrc.c: (gst_base_src_init):
14662 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init):
14663 * gst/gstqueue.c: (gst_queue_init):
14664 * gst/gstregistryxml.c: (load_feature):
14665 Revert all these unrefs, they don't even pass make check !
14667 2005-11-15 Johan Dahlin <johan@gnome.org>
14669 * gst/base/gstbasesrc.c: (gst_base_src_init):
14670 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init):
14671 * gst/gstqueue.c: (gst_queue_init):
14672 Free pad templates, fixes a couple of leaks.
14674 2005-11-15 Daniel Fischer <dan at f3c dot com>
14676 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
14678 * gst/gstpad.c: (gst_pad_get_property):
14679 GST_PAD_PAD_TEMPLATE(pad) gets the pad template, while
14680 GST_PAD_TEMPLATE(pad) does a cast. We want the former here.
14681 (#321452)
14683 2005-11-15 Wim Taymans <wim@fluendo.com>
14685 * gst/gstevent.c:
14686 Small doc update.
14688 2005-11-15 Andy Wingo <wingo@pobox.com>
14690 * gst/gstelement.c (gst_element_set_base_time): Add debugging.
14692 * gst/gstpipeline.c (gst_pipeline_set_new_stream_time): Document
14693 using GST_CLOCK_TIME_NONE to disable base time management.
14694 (do_pipeline_seek, gst_pipeline_change_state): Don't reset stream
14695 time if it was NONE before.
14696 (gst_pipeline_change_state): Only munge the base time if
14697 stream_time != GST_CLOCK_TIME_NONE.
14699 * check/gst/gstpipeline.c (test_base_time): Punt around the
14700 problem of the probe not being called, because that's not the
14701 issue I'm looking at. Add a check that setting stream_time to NONE
14702 disables base time management.
14704 2005-11-15 Wim Taymans <wim@fluendo.com>
14706 * gst/base/gstbasesink.c: (gst_base_sink_change_state):
14707 segment_stop == -1 at startup.
14709 * gst/base/gstbasetransform.c: (gst_base_transform_event),
14710 (gst_base_transform_change_state):
14711 Init segment values at start.
14713 2005-11-15 Wim Taymans <wim@fluendo.com>
14715 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
14716 0 segment values are 0 in any format.
14718 * gst/base/gstbasetransform.c: (gst_base_transform_event):
14719 * gst/base/gstbasetransform.h:
14720 Parse newsegment correctly in basetransform
14722 * gst/elements/gstidentity.c: (gst_identity_transform_ip):
14723 Sync to clock using updated segment values.
14725 2005-11-15 Andy Wingo <wingo@pobox.com>
14727 * check/gst/gstpipeline.c (test_base_time): Add check that the
14728 base time and stream time are reset correctly.
14730 2005-11-15 Wim Taymans <wim@fluendo.com>
14732 * docs/design/part-TODO.txt:
14733 Some more TODO items.
14735 2005-11-15 Andy Wingo <wingo@pobox.com>
14737 * gst/elements/gstfakesrc.c (gst_fake_src_create): It's not an
14738 error if the user selected "no clock" as the clocking method.
14740 * check/gst/gstpipeline.c (test_base_time): New test for buffer
14741 timestamps with live capture.
14743 * gst/elements/gstfakesrc.c (gst_fake_src_create): If the datarate
14744 is 0 but we are a live source, timestamp the buffers using the
14745 element's clock.
14747 2005-11-14 Stefan Kost <ensonic@users.sf.net>
14749 * docs/gst/gstreamer-sections.txt:
14750 * gst/gsterror.c:
14751 * gst/gstghostpad.c:
14752 * gst/gstobject.h:
14753 * gst/gstxml.c:
14754 more section docs
14756 2005-11-14 Wim Taymans <wim@fluendo.com>
14758 * common/gst.supp:
14759 add suppressions from Wim's Debian machine
14761 2005-11-14 Thomas Vander Stichele <thomas at apestaart dot org>
14763 * common/gst.supp:
14764 add suppressions from Andy's AMD64 Ubuntu machine
14766 2005-11-14 Andy Wingo <wingo@pobox.com>
14768 * gst/gstpad.c (gst_pad_set_active): Change docs; parent's
14769 STATE_LOCK not necessary. Fixes #311489.
14771 * gst/gsterror.c (FILE_A_BUG): Be polite *and* helpful. Fixes
14772 #305291.
14774 * gst/gstindex.c (gst_index_add_object): Note in the docs that
14775 this function is not implemented.
14777 2005-11-14 Julien MOUTTE <julien@moutte.net>
14779 * gst/base/gstbasetransform.c:
14780 (gst_base_transform_prepare_output_buf):
14781 Ref the source pad caps while we need them.
14782 Fixes (#321386)
14784 2005-11-11 Wim Taymans <wim@fluendo.com>
14786 * docs/gst/gstreamer-sections.txt:
14787 Added some docs for GstCollectData.
14789 * gst/base/gstadapter.c:
14790 Some small code example fix.
14792 * gst/base/gstcollectpads.c:
14793 * gst/base/gstcollectpads.h:
14794 Document some more.
14796 2005-11-11 Thomas Vander Stichele <thomas at apestaart dot org>
14798 * configure.ac: back to HEAD
14800 === release 0.9.5 ===
14802 2005-11-11 Thomas Vander Stichele <thomas at apestaart dot org>
14804 * configure.ac:
14805 releasing 0.9.5, "Bike Lunch Day"
14807 2005-11-11 Wim Taymans <wim@fluendo.com>
14809 * gst/gstbuffer.c: (_gst_buffer_copy):
14810 Copy more flags.
14812 * gst/gstcaps.c: (gst_caps_is_equal):
14813 Fix some docs.
14814 Make _is_equal fast in the trivial cases.
14816 * gst/gstminiobject.c:
14817 * gst/gstminiobject.h:
14818 More docs. Spifify .h file.
14820 * gst/gstutils.c:
14821 Small doc update.
14823 2005-11-11 Wim Taymans <wim@fluendo.com>
14825 * gst/base/gstbasetransform.c:
14826 (gst_base_transform_prepare_output_buf),
14827 (gst_base_transform_handle_buffer):
14828 Small cleanups.
14829 If we're processing a buffer and need to allocate an output
14830 buffer, we cannot accept a format change. If we did get a
14831 format change, we have to alloc a buffer ourselves of the
14832 right size.
14834 2005-11-11 Wim Taymans <wim@fluendo.com>
14836 * gst/gstpad.c: (gst_pad_get_caps), (gst_pad_peer_get_caps):
14837 While checking the flag for reentrancy in the gstcaps function
14838 is nice to detect recursive invocations, it also makes it
14839 impossible to call getcaps from multiple threads, which must be
14840 possible. So, checking for recursive calls has to go.
14842 2005-11-11 Michael Smith <msmith@fluendo.com>
14844 * gst/base/gstbasesink.c: (gst_base_sink_do_sync):
14845 Don't sync on buffers that fall partially outside our current
14846 segment. Prevents an assertion failure/abort playing some files.
14848 2005-11-10 Andy Wingo <wingo@pobox.com>
14850 * check/gst/gstbin.c (test_message_state_changed_children): Style
14851 fix..
14853 * gst/gstbus.c (poll_destroy, poll_func, gst_bus_poll): Implement
14854 gst_bus_poll with the signal watch. Ensures that poll and a signal
14855 watch see the same messages.
14857 * check/gst/gstbus.c (test_watch_with_poll): New test, checks that
14858 a poll and a watch at the same time get the same messages.
14860 2005-11-10 Thomas Vander Stichele <thomas at apestaart dot org>
14862 * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps):
14863 * gst/gstcaps.c: (gst_caps_intersect):
14864 Don't call gst_caps_do_simplify - it doesn't respect order of caps
14865 and it's not needed.
14867 2005-11-10 Wim Taymans <wim@fluendo.com>
14869 * docs/design/part-TODO.txt:
14870 Updated todo.
14872 2005-11-10 Wim Taymans <wim@fluendo.com>
14874 * gst/base/gstbasesink.c: (gst_base_sink_do_sync):
14875 * gst/base/gstbasesrc.c: (gst_base_src_wait),
14876 (gst_base_src_do_sync), (gst_base_src_get_range):
14877 Implement clock sync in base class.
14879 2005-11-10 Thomas Vander Stichele <thomas at apestaart dot org>
14881 patch by: Tim-Philipp Müller <tim at centricular dot net>
14883 * gst/gststructure.c: (gst_structure_parse_field),
14884 (gst_structure_from_string):
14885 Forward-port a 0.8 patch to handle escaped spaces in structure string,
14886 so that gst_parse_launch() can deal with spaces in filtered link
14887 caps (fixes #164479)
14888 * check/gst/capslist.h:
14889 * check/gst/gststructure.c: (GST_START_TEST):
14890 add unit tests for this change
14892 2005-11-10 Wim Taymans <wim@fluendo.com>
14894 * docs/gst/gstreamer-sections.txt:
14895 * gst/gstelement.c:
14896 * gst/gstelement.h:
14897 Fix docs, move some STATE macros to private.
14899 2005-11-10 Wim Taymans <wim@fluendo.com>
14901 * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
14902 Added check for bug #317341
14904 * gst/gstbuffer.c:
14905 * gst/gstbuffer.h:
14906 Some more spiffifying.
14908 * gst/gstghostpad.c: (gst_ghost_pad_do_link):
14909 Call peer linkfunction if we are a source pad. Totally fixes
14910 #317341
14912 * gst/gstpad.c:
14913 Update docs, source pads should call the peer linkfunction
14914 so they can atomically perform the pad link.
14916 2005-11-09 Wim Taymans <wim@fluendo.com>
14918 * gst/gstbuffer.c:
14919 * gst/gstbuffer.h:
14920 Uber-spiffy-spiffify some more.
14922 2005-11-09 Tim-Philipp Müller <tim at centricular dot net>
14924 * gst/base/gstcollectpads.c: (gst_collectpads_add_pad):
14925 * gst/elements/gstfilesink.c: (gst_file_sink_init):
14926 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init):
14927 * gst/gstghostpad.c: (gst_ghost_pad_set_internal),
14928 (gst_ghost_pad_init), (gst_ghost_pad_new_notarget):
14929 * gst/gstpad.c: (gst_pad_init):
14930 Use GST_DEBUG_FUNCPTR() more extensively.
14932 2005-11-09 Wim Taymans <wim@fluendo.com>
14934 * gst/gstobject.c: (gst_object_class_init):
14935 * gst/gstobject.h:
14936 Documentation fixes.
14938 2005-11-09 Edward Hervey <edward@fluendo.com>
14940 * gst/gsttypefindfactory.c:
14941 Fix docs.
14943 2005-11-09 Edward Hervey <edward@fluendo.com>
14945 * gst/base/gsttypefindhelper.c:
14946 * gst/gsttypefind.c:
14947 * gst/gsttypefind.h:
14948 Fix docs.
14950 2005-11-09 Wim Taymans <wim@fluendo.com>
14952 * gst/gstiterator.c:
14953 Fix revision data.
14955 * gst/gsttask.c:
14956 * gst/gsttask.h:
14957 Fix docs.
14959 2005-11-09 Wim Taymans <wim@fluendo.com>
14961 * gst/gstevent.h:
14962 * gst/gsturi.h:
14963 Fix docs.
14965 2005-11-09 Wim Taymans <wim@fluendo.com>
14967 * docs/gst/gstreamer-sections.txt:
14968 Moved the message async delivery private lock and cond
14969 to the private section.
14971 * gst/gstmessage.c:
14972 * gst/gstmessage.h:
14973 Fixed docs.
14975 2005-11-09 Edward Hervey <edward@fluendo.com>
14977 * docs/gst/gstreamer-sections.txt:
14978 * gst/gsturi.c:
14979 * gst/gsturi.h:
14980 Document GstURIHandler
14982 2005-11-09 Wim Taymans <wim@fluendo.com>
14984 * gst/gstiterator.c: (gst_iterator_fold), (gst_iterator_foreach),
14985 (gst_iterator_find_custom):
14986 * gst/gstiterator.h:
14987 Fix iterator docs.
14989 2005-11-09 Wim Taymans <wim@fluendo.com>
14991 * gst/gstbin.h:
14992 Document another field.
14994 * gst/gststructure.c:
14995 * gst/gststructure.h:
14996 Document.
14998 2005-11-09 Wim Taymans <wim@fluendo.com>
15000 * gst/gstbin.h:
15001 Documented structs.
15003 2005-11-09 Wim Taymans <wim@fluendo.com>
15005 * docs/gst/gstreamer-sections.txt:
15006 Added some new macros.
15008 * gst/gstclock.c:
15009 * gst/gstclock.h:
15010 * gst/gstobject.h:
15011 Docs updates.
15013 2005-11-09 Wim Taymans <wim@fluendo.com>
15015 * docs/design/part-TODO.txt:
15016 Some more items for the TODO
15018 * gst/gstcaps.c:
15019 * gst/gstcaps.h:
15020 Document GstCaps.
15022 2005-11-09 Andy Wingo <wingo@pobox.com>
15024 * gst/base/gstbasesink.c: Add the beginning of docs here -- have
15025 to work on something else now tho...
15027 * gst/base/gstadapter.c: More adapter docs.
15029 * gst/elements/gstfilesink.c (gst_file_sink_start)
15030 (gst_file_sink_stop): New functions, replace the state change
15031 handler.
15032 (gst_file_sink_class_init): Hook up the start and stop functions.
15033 (gst_file_sink_base_init): Don't set the state change handler any
15034 more. It was a bit ugly too, being set from here...
15035 (gst_file_sink_get_property, gst_file_sink_set_property):
15036 Cleanups...
15037 (gst_file_sink_set_location): More robust check that doesn't call
15038 GST_STATE. Ugggggg.
15040 2005-11-08 Tim-Philipp Müller <tim at centricular dot net>
15042 * gst/base/gstbasetransform.c: (gst_base_transform_event):
15043 Hold STREAM_LOCK while pushing newsegment or tag events as well.
15045 2005-11-08 Wim Taymans <wim@fluendo.com>
15047 * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
15048 (gst_base_sink_do_sync), (gst_base_sink_handle_event),
15049 (gst_base_sink_chain), (gst_base_sink_change_state):
15050 * gst/base/gstbasesink.h:
15051 * gst/base/gstbasesrc.h:
15052 * gst/gstelement.h:
15053 * gst/gstevent.h:
15054 Avoid excessive typechecking in macros.
15056 * gst/gstminiobject.c: (gst_mini_object_get_type),
15057 (gst_mini_object_init), (gst_mini_object_new),
15058 (gst_mini_object_free):
15059 * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
15060 (gst_object_finalize):
15061 Remove cruft code, optimize alloc_trace.
15063 2005-11-07 Thomas Vander Stichele <thomas at apestaart dot org>
15065 * docs/faq/gst-uninstalled:
15066 fix up PS1 for systems that try to reset it
15068 2005-11-07 Wim Taymans <wim@fluendo.com>
15070 * gst/base/gstbasesrc.c: (gst_base_src_init),
15071 (gst_base_src_get_range):
15072 Set the segment_end to -1 initially. Fixed typefind.
15074 2005-11-07 Tim-Philipp Müller <tim at centricular dot net>
15076 * gst/base/gstadapter.c:
15077 Debug category should be 'adapter', not 'GstAdapter'.
15079 * gst/base/gstcollectpads.c: (gst_collectpads_base_init),
15080 (gst_collectpads_class_init), (gst_collectpads_init),
15081 (gst_collectpads_peek), (gst_collectpads_pop),
15082 (gst_collectpads_event), (gst_collectpads_chain):
15083 Add debug category and some debugging output. Use boilerplate
15084 macros. Remove some extraneous words from docs.
15086 2005-11-05 Andy Wingo <wingo@pobox.com>
15088 * gst/base/gstpushsrc.c: Shorten by 30% via use of boilerplate
15089 macro.
15091 2005-11-04 Stefan Kost <ensonic@users.sf.net>
15093 * docs/gst/gstreamer-sections.txt:
15094 * gst/gstcaps.h:
15095 * gst/gstinfo.c:
15096 * gst/gstminiobject.h:
15097 * gst/gstobject.h:
15098 * gst/gstutils.h:
15099 more docs added
15101 2005-11-04 Wim Taymans <wim@fluendo.com>
15103 * gst/base/gstbasesrc.c: (gst_base_src_get_range):
15104 Small update to stop at the configured segment_end
15105 position.
15107 2005-11-04 Stefan Kost <ensonic@users.sf.net>
15109 * gst/gstregistry.c:
15110 * gst/gstregistry.h:
15111 added missing docs
15113 2005-11-04 Edward Hervey <edward@fluendo.com>
15115 * gst/base/gstbasesrc.c: (gst_base_src_get_range):
15116 Check if we are doing a segment seek and have arrived at the
15117 end of that segment.
15119 2005-11-04 Wim Taymans <wim@fluendo.com>
15121 * gst/gstbus.c: (gst_bus_post), (gst_bus_set_sync_handler):
15122 Don't leak a mutex unlock in case of an error.
15124 * gst/gstbus.h:
15125 Doc fixes.
15127 2005-11-04 Wim Taymans <wim@fluendo.com>
15129 * gst/gstbus.c: (gst_bus_class_init), (gst_bus_init),
15130 (gst_bus_post):
15131 Get the context to wake up only once.
15133 2005-11-03 Wim Taymans <wim@fluendo.com>
15135 * check/states/sinks.c: (GST_START_TEST):
15136 Uncomment fixed check.
15138 * docs/design/part-TODO.txt:
15139 Updated TODO.
15141 * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
15142 (gst_base_sink_handle_object), (gst_base_sink_do_sync),
15143 (gst_base_sink_get_position):
15144 If we are going to PLAYING, post the right pending state
15145 when we post the intermediate paused message.
15147 * gst/gstelement.c: (gst_element_continue_state),
15148 (gst_element_set_state_func), (gst_element_change_state):
15149 Don't post state changes that were between the same state
15150 and were not ASYNC.
15152 2005-11-03 Stefan Kost <ensonic@users.sf.net>
15154 * docs/gst/gstreamer-sections.txt:
15155 * gst/gstcaps.h:
15156 * gst/gstinfo.c:
15157 * gst/gstminiobject.h:
15158 * gst/gstobject.h:
15159 * gst/gstutils.h:
15160 more docs and doc style fixes
15162 2005-11-03 Stefan Kost <ensonic@users.sf.net>
15164 * docs/gst/gstreamer-sections.txt:
15165 * gst/gstelement.c:
15166 * gst/gstminiobject.c:
15167 doc fixes
15169 2005-11-03 Andy Wingo <wingo@pobox.com>
15171 * check/states/sinks.c (test_livesrc_sink): Add checks that the
15172 state-changed messages actually have the right order and the right
15173 values.
15175 2005-11-03 Wim Taymans <wim@fluendo.com>
15177 * check/states/sinks.c: (GST_START_TEST), (gst_object_suite):
15178 Added some more checks. Specifically the case where NO_PREROLL
15179 elements are in the pipeline.
15181 * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
15182 (gst_base_sink_handle_object), (gst_base_sink_do_sync),
15183 (gst_base_sink_get_position):
15184 Post READY->PAUSED state change messages too.
15185 Fix bug where VOID was posted as pending state...
15187 * gst/gstbin.c: (gst_bin_recalc_state):
15188 use _element_continue_state() to continue the state change.
15190 * gst/gstelement.c: (gst_element_continue_state),
15191 (gst_element_commit_state), (gst_element_set_state_func),
15192 (gst_element_change_state), (gst_element_change_state_func):
15193 Lots of state change cleanups, assign the STATE_RETURN in
15194 a new continue_state() function that also propagates the
15195 last return value from a state change to the app.
15196 Update some debug statements with proper category.
15198 2005-11-03 Wim Taymans <wim@fluendo.com>
15200 * docs/design/part-events.txt:
15201 * docs/design/part-gstpipeline.txt:
15202 * docs/design/part-messages.txt:
15203 * docs/design/part-overview.txt:
15204 * docs/design/part-seeking.txt:
15205 * docs/design/part-states.txt:
15206 * docs/design/part-trickmodes.txt:
15207 * docs/manual/advanced-position.xml:
15208 Small docs updates.
15210 * gst/gstobject.h:
15211 People think !! is ugly, this looks better.
15213 * gst/gstpad.c: (gst_pad_set_blocked_async):
15214 Remove !! since it's fixed elsewhere now.
15216 2005-11-03 Tim-Philipp Müller <tim at centricular dot net>
15218 * gst/gstminiobject.h:
15219 * gst/gstobject.h:
15220 Add !! to _FLAG_IS_SET macros to make the result boolean.
15222 2005-11-03 Edward Hervey <edward@fluendo.com>
15224 * gst/gstpad.c: (gst_pad_set_blocked_async):
15225 comparing a flag and a gboolean rarely returns coherent results...
15226 Added two characters (!!) to make that work correctly.
15228 2005-11-03 Tim-Philipp Müller <tim at centricular dot net>
15230 * gst/gstbus.c: (gst_bus_class_init):
15231 Fix some typos.
15233 * gst/gstqueue.c: (gst_queue_loop):
15234 Don't assume a miniobject that isn't a buffer is an
15235 event (it could be that there is a refcounting
15236 problem somewhere and the pointer is stale and
15237 refers to an already destroyed miniobject).
15239 2005-11-03 Julien MOUTTE <julien@moutte.net>
15241 * gst/gstpad.c: (gst_pad_alloc_buffer): Fix some typos.
15243 2005-11-03 Tim-Philipp Müller <tim at centricular dot net>
15245 * docs/manual/advanced-position.xml:
15246 Update seek example and explanations to current 0.9 API.
15248 * gst/elements/gsttypefindelement.c:
15249 (gst_type_find_element_activate):
15250 Remove FIXME comment now that the found caps
15251 are unreffed.
15253 2005-11-03 Thomas Vander Stichele <thomas at apestaart dot org>
15255 * gst/gstregistryxml.c: (load_feature):
15256 Add another GST_STR_NULL instance
15258 2005-11-02 Edward Hervey <edward@fluendo.com>
15260 * gst/gstpad.c: (handle_pad_block):
15261 Follow-up to Wim's patch, solves deadlock for blocked and flushing pads
15263 2005-11-02 Wim Taymans <wim@fluendo.com>
15265 * gst/gstbin.c:
15266 Fix typo in docs.
15268 * gst/gstelement.c: (gst_element_commit_state):
15269 Remove unused value.
15271 * gst/gstiterator.c:
15272 Mention that the returned element is reffed in the docs.
15274 2005-11-02 Wim Taymans <wim@fluendo.com>
15276 * gst/gstpad.c: (gst_pad_alloc_buffer), (handle_pad_block),
15277 (gst_pad_push), (gst_pad_push_event):
15278 Unlock blocked pads when they are flushed.
15280 2005-11-02 Thomas Vander Stichele <thomas at apestaart dot org>
15282 * docs/README:
15283 * docs/gst/gstreamer-sections.txt:
15284 * gst/gstbin.c:
15285 doc updates
15286 * gst/gstregistry.c: (gst_registry_scan_path_level):
15287 fix for a nasty little missed situation where an installed plug-in
15288 which was in the cache did not get overridden by an uninstalled one
15289 which was earlier in the plugin path because the newly created plugin
15290 for the uninstalled one (not in the registry) didn't get its
15291 ->registered set to TRUE
15293 2005-11-02 Tim-Philipp Müller <tim at centricular dot net>
15295 * gst/base/gstcollectpads.c: (gst_collectpads_set_function),
15296 (gst_collectpads_add_pad), (gst_collectpads_remove_pad),
15297 (gst_collectpads_is_active), (gst_collectpads_collect),
15298 (gst_collectpads_collect_range), (gst_collectpads_start),
15299 (gst_collectpads_stop), (gst_collectpads_peek),
15300 (gst_collectpads_pop), (gst_collectpads_available),
15301 (gst_collectpads_read), (gst_collectpads_flush):
15302 Guard public API with assertions.
15304 * gst/gstpad.c:
15305 Fix docs for gst_pad_set_link_function().
15307 2005-11-02 Johan Dahlin <johan@gnome.org>
15309 * gst/elements/gsttypefindelement.c (gst_type_find_element_activate):
15310 Unref found_caps after we used it.
15312 2005-11-02 Tim-Philipp Müller <tim at centricular dot net>
15314 * gst/base/gstcollectpads.c: (gst_collectpads_peek):
15315 Don't try to ref NULL.
15317 2005-11-02 Thomas Vander Stichele <thomas at apestaart dot org>
15319 * win32/common/config.h.in:
15320 provide a GST_FUNCTION that just gives a string for now
15322 2005-11-02 Thomas Vander Stichele <thomas at apestaart dot org>
15324 * win32/common/gstenumtypes.c: (register_gst_object_flags),
15325 (gst_object_flags_get_type), (register_gst_bin_flags),
15326 (gst_bin_flags_get_type), (register_gst_buffer_flag),
15327 (gst_buffer_flag_get_type), (register_gst_bus_flags),
15328 (gst_bus_flags_get_type), (register_gst_bus_sync_reply),
15329 (gst_bus_sync_reply_get_type), (register_gst_clock_return),
15330 (gst_clock_return_get_type), (register_gst_clock_entry_type),
15331 (gst_clock_entry_type_get_type), (register_gst_clock_flags),
15332 (gst_clock_flags_get_type), (register_gst_state),
15333 (gst_state_get_type), (register_gst_state_change_return),
15334 (gst_state_change_return_get_type), (register_gst_state_change),
15335 (gst_state_change_get_type), (register_gst_element_flags),
15336 (gst_element_flags_get_type), (register_gst_core_error),
15337 (gst_core_error_get_type), (register_gst_library_error),
15338 (gst_library_error_get_type), (register_gst_resource_error),
15339 (gst_resource_error_get_type), (register_gst_stream_error),
15340 (gst_stream_error_get_type), (register_gst_event_type),
15341 (gst_event_type_get_type), (register_gst_seek_type),
15342 (gst_seek_type_get_type), (register_gst_seek_flags),
15343 (gst_seek_flags_get_type), (register_gst_format),
15344 (gst_format_get_type), (register_gst_index_certainty),
15345 (gst_index_certainty_get_type), (register_gst_index_entry_type),
15346 (gst_index_entry_type_get_type),
15347 (register_gst_index_lookup_method),
15348 (gst_index_lookup_method_get_type), (register_gst_assoc_flags),
15349 (gst_assoc_flags_get_type), (register_gst_index_resolver_method),
15350 (gst_index_resolver_method_get_type), (register_gst_index_flags),
15351 (gst_index_flags_get_type), (register_gst_debug_level),
15352 (gst_debug_level_get_type), (register_gst_debug_color_flags),
15353 (gst_debug_color_flags_get_type), (register_gst_iterator_result),
15354 (gst_iterator_result_get_type), (register_gst_iterator_item),
15355 (gst_iterator_item_get_type), (register_gst_message_type),
15356 (gst_message_type_get_type), (register_gst_mini_object_flags),
15357 (gst_mini_object_flags_get_type), (register_gst_pad_link_return),
15358 (gst_pad_link_return_get_type), (register_gst_flow_return),
15359 (gst_flow_return_get_type), (register_gst_activate_mode),
15360 (gst_activate_mode_get_type), (register_gst_pad_direction),
15361 (gst_pad_direction_get_type), (register_gst_pad_flags),
15362 (gst_pad_flags_get_type), (register_gst_pad_presence),
15363 (gst_pad_presence_get_type), (register_gst_pad_template_flags),
15364 (gst_pad_template_flags_get_type), (register_gst_pipeline_flags),
15365 (gst_pipeline_flags_get_type), (register_gst_plugin_error),
15366 (gst_plugin_error_get_type), (register_gst_plugin_flags),
15367 (gst_plugin_flags_get_type), (register_gst_rank),
15368 (gst_rank_get_type), (register_gst_query_type),
15369 (gst_query_type_get_type), (register_gst_tag_merge_mode),
15370 (gst_tag_merge_mode_get_type), (register_gst_tag_flag),
15371 (gst_tag_flag_get_type), (register_gst_task_state),
15372 (gst_task_state_get_type), (register_gst_alloc_trace_flags),
15373 (gst_alloc_trace_flags_get_type),
15374 (register_gst_type_find_probability),
15375 (gst_type_find_probability_get_type), (register_gst_uri_type),
15376 (gst_uri_type_get_type), (register_gst_parse_error),
15377 (gst_parse_error_get_type):
15378 * win32/common/gstversion.h:
15379 update win32 copies
15381 2005-11-01 Luca Ognibene <luogni@tin.it>
15383 * gst/gst.c:
15384 fix docs. popt is dead, long live GOption.
15386 2005-10-31 Wim Taymans <wim@fluendo.com>
15388 * gst/gstbuffer.h:
15389 Small doc fix.
15391 2005-10-31 Andy Wingo <wingo@pobox.com>
15393 * Boo!
15395 * gst/gstqueue.c (gst_queue_chain): Fix downstream leaky mode.
15397 * gst/gstobject.c (gst_object_dispatch_properties_changed): No
15398 need to serialize property notifications on GLib 2.8. GLib 2.6 has
15399 the possibility of deadlocks here if code calling notify() or
15400 set() has a lock that can be taken in another notify handler (ABBA
15401 with class lock and e.g. python GIL state lock).
15403 2005-10-28 Julien MOUTTE <julien@moutte.net>
15405 * gst/gstbus.c: Doc updates.
15407 2005-10-28 Wim Taymans <wim@fluendo.com>
15409 * docs/design/part-TODO.txt:
15410 * gst/gstiterator.c:
15411 * gst/gstsystemclock.c:
15412 * gst/gstsystemclock.h:
15413 Doc updates.
15415 2005-10-28 Edward Hervey <edward@fluendo.com>
15417 * docs/gst/gstreamer-docs.sgml:
15418 * docs/gst/gstreamer-sections.txt:
15419 the GstURIType documentation page is private, it only defines GstURIType
15420 which should be defined in the GstURIHandler page
15422 2005-10-28 Thomas Vander Stichele <thomas at apestaart dot org>
15424 * gst/gstbin.c: (gst_bin_class_init):
15425 * gst/gstbin.h:
15426 * gst/gstutils.c:
15427 Documentation updates.
15429 2005-10-28 Wim Taymans <wim@fluendo.com>
15431 * docs/gst/gstreamer-sections.txt:
15432 * gst/gstclock.c:
15433 * gst/gstclock.h:
15434 Documented the clocks.
15436 2005-10-28 Stefan Kost <ensonic@users.sf.net>
15438 * docs/gst/gstreamer-sections.txt:
15439 move some macros to private sections
15440 * gst/gstminiobject.c:
15441 * gst/gstminiobject.h:
15442 add descriptions provided by ds and some more
15443 * gst/gstpad.h:
15444 mark macro as to be removed
15446 2005-10-28 Wim Taymans <wim@fluendo.com>
15448 * docs/design/part-TODO.txt:
15449 Add an item to TODO.
15451 * gst/gstiterator.c: (gst_iterator_fold),
15452 (gst_iterator_find_custom):
15453 * gst/gstiterator.h:
15454 Add iterator docs.
15456 2005-10-28 Wim Taymans <wim@fluendo.com>
15458 * gst/base/gstbasetransform.c: (gst_base_transform_class_init),
15459 (gst_base_transform_init):
15460 Don't leak class.
15462 * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_loop):
15463 An EOS event marks the queue as completely filled.
15465 2005-10-27 Wim Taymans <wim@fluendo.com>
15467 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
15468 (gst_base_sink_do_sync), (gst_base_sink_get_position):
15469 Some more debugging.
15471 * gst/base/gstbasetransform.c: (gst_base_transform_finalize),
15472 (gst_base_transform_init), (gst_base_transform_buffer_alloc),
15473 (gst_base_transform_event), (gst_base_transform_getrange),
15474 (gst_base_transform_chain):
15475 * gst/base/gstbasetransform.h:
15476 Fix debugging,
15477 Protect transform and concurrent buffer alloc with a new lock.
15478 Try not to break ABI/API.
15480 2005-10-27 Wim Taymans <wim@fluendo.com>
15482 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
15483 (gst_base_src_init), (gst_base_src_query),
15484 (gst_base_src_default_newsegment),
15485 (gst_base_src_configure_segment), (gst_base_src_do_seek),
15486 (gst_base_src_send_event), (gst_base_src_event_handler),
15487 (gst_base_src_pad_get_range), (gst_base_src_loop),
15488 (gst_base_src_unlock), (gst_base_src_default_negotiate),
15489 (gst_base_src_start), (gst_base_src_deactivate),
15490 (gst_base_src_activate_push), (gst_base_src_change_state):
15491 Move some stuff around and cleanup things.
15493 2005-10-27 Tim-Philipp Müller <tim at centricular dot net>
15495 * gst/base/gstbasesrc.c: (gst_base_src_query):
15496 Add missing break statements.
15498 2005-10-27 Wim Taymans <wim@fluendo.com>
15500 * check/gst/gstbin.c: (GST_START_TEST):
15501 An extra refcount is taken in basesrc.
15503 * gst/base/gstbasesrc.c: (gst_base_src_init), (gst_base_src_query),
15504 (gst_base_src_get_range), (gst_base_src_pad_get_range),
15505 (gst_base_src_loop):
15506 Small cleanups, check for flushing after being unlocked from the
15507 LIVE_LOCK. take refcounts correctly (not yet everywhere).
15508 Don't send out EOS when going to READY.
15510 2005-10-27 Wim Taymans <wim@fluendo.com>
15512 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
15513 (gst_base_sink_get_position):
15514 Some more debug.
15516 * gst/gstbin.c: (message_check), (bin_replace_message),
15517 (bin_remove_messages), (is_eos), (gst_bin_add_func),
15518 (update_degree), (gst_bin_sort_iterator_next), (bin_bus_handler),
15519 (bin_query_duration_init), (bin_query_duration_fold),
15520 (bin_query_duration_done), (bin_query_generic_fold),
15521 (gst_bin_query):
15522 * tools/gst-launch.c: (main):
15523 Remove old option.
15525 2005-10-26 Stefan Kost <ensonic@users.sf.net>
15527 * examples/controller/audio-example.c: (main):
15528 * examples/queue/queue.c: (event_loop):
15529 * gst/base/gstbasetransform.h:
15530 * gst/gstelement.c: (gst_element_send_event):
15531 * gst/gstevent.h:
15532 * gst/gstpad.c: (gst_pad_send_event):
15533 fixing examples
15534 fixing docs typos
15535 changing log priority in error situations
15537 2005-10-25 Wim Taymans <wim@fluendo.com>
15539 * gst/gstbin.c: (message_check), (bin_replace_message),
15540 (bin_remove_messages), (is_eos), (gst_bin_add_func),
15541 (update_degree), (gst_bin_sort_iterator_next), (bin_bus_handler),
15542 (bin_query_duration_init), (bin_query_duration_fold),
15543 (bin_query_duration_done), (bin_query_generic_fold),
15544 (gst_bin_query):
15545 Some doc and debug updates.
15546 Cache previously requested query DURATION for speed. invalidate
15547 cached duration if element posts a DURATION message.
15549 2005-10-25 Wim Taymans <wim@fluendo.com>
15551 * docs/design/part-TODO.txt:
15552 Update TODO.
15554 * gst/gstbin.c: (message_check), (bin_replace_message),
15555 (bin_remove_messages), (is_eos), (gst_bin_add_func),
15556 (update_degree), (gst_bin_sort_iterator_next), (bin_bus_handler),
15557 (bin_query_duration_init), (bin_query_duration_fold),
15558 (bin_query_duration_done), (bin_query_generic_fold),
15559 (gst_bin_query):
15560 Handle SEGMENT_START/DONE messages correctly.
15561 More evolved query algorithm that handles duration queries
15562 correctly.
15564 * gst/gstelement.c: (gst_element_send_event), (gst_element_query),
15565 (gst_element_get_state_func), (gst_element_abort_state),
15566 (gst_element_commit_state), (gst_element_lost_state):
15567 Some more debugging.
15569 * gst/gstmessage.h:
15570 Added doc.
15572 2005-10-25 Wim Taymans <wim@fluendo.com>
15574 * gst/base/gstbasesink.c: (gst_base_sink_get_position):
15575 Don't use invalid stream_time.
15577 * gst/gstevent.c: (gst_event_new_newsegment):
15578 stream_time in newsegment cannot be undefined.
15580 2005-10-24 Wim Taymans <wim@fluendo.com>
15582 * gst/gstbus.c:
15583 Doc fix.
15585 * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
15586 (gst_queue_loop):
15587 Fix potential deadlock when QUEUE_LOCK is taken before STREAM_LOCK.
15589 2005-10-24 Stefan Kost <ensonic@users.sf.net>
15591 * docs/libs/tmpl/gstdparam.sgml:
15592 * docs/libs/tmpl/gstdplinint.sgml:
15593 * docs/libs/tmpl/gstdpman.sgml:
15594 * docs/libs/tmpl/gstdpsmooth.sgml:
15595 * docs/libs/tmpl/gstunitconvert.sgml:
15596 these are obsolete
15598 2005-10-24 Thomas Vander Stichele <thomas at apestaart dot org>
15600 * configure.ac:
15601 back to HEAD
15603 === release 0.9.4 ===
15605 2005-10-23 Thomas Vander Stichele <thomas at apestaart dot org>
15607 * configure.ac:
15608 releasing 0.9.4, "Tyrannosaurus Rex"
15610 2005-10-23 Tim-Philipp Müller <tim at centricular dot net>
15612 * gst/elements/gstfilesink.c: (gst_file_sink_do_seek),
15613 (gst_file_sink_get_current_offset):
15614 Use fseeko() and ftello() if available. When falling back on
15615 lseek() to get the current offset, fflush() first to make sure
15616 everything is up-to-date and we get the right offset.
15618 2005-10-23 Thomas Vander Stichele <thomas at apestaart dot org>
15620 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
15621 * gst/base/gstbasesrc.c: (gst_base_src_loop):
15622 * gst/gsterror.c: (_gst_stream_errors_init):
15623 * gst/gsterror.h:
15624 * gst/gstqueue.c: (gst_queue_loop):
15625 * po/POTFILES.in:
15626 remove prematurely added error category and clean up the instances
15628 2005-10-21 Wim Taymans <wim@fluendo.com>
15630 * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
15631 (gst_base_sink_get_position), (gst_base_sink_query),
15632 (gst_base_sink_change_state):
15633 Simply set the right flag when going to playing, that's all
15634 we need to do instead of calling a function inside the object
15635 lock (that could take the lock as well and deadlock)
15637 2005-10-21 Wim Taymans <wim@fluendo.com>
15639 * gst/base/gstbasesrc.c: (gst_base_src_do_seek),
15640 (gst_base_src_loop):
15641 Don't warn, the peer element knows what to do best when
15642 the seek failed, it might try something else.
15644 2005-10-21 Wim Taymans <wim@fluendo.com>
15646 * gst/base/gstbasesrc.c: (gst_base_src_init),
15647 (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
15648 Fix seeking.
15650 2005-10-21 Wim Taymans <wim@fluendo.com>
15652 * docs/design/part-segments.txt:
15653 More docs.
15655 * gst/elements/gstcapsfilter.c: (gst_capsfilter_prepare_buf):
15656 Correctly set caps, even on the subbufer.
15658 2005-10-21 Wim Taymans <wim@fluendo.com>
15660 * docs/gst/gstreamer-docs.sgml:
15661 * docs/gst/gstreamer-sections.txt:
15662 * gst/gstelement.h:
15663 * gst/gstevent.c:
15664 * gst/gstevent.h:
15665 * gst/gstmessage.h:
15666 * gst/gstpad.h:
15667 * gst/gstparse.h:
15668 * gst/gsttask.c: (gst_task_finalize), (gst_task_func):
15669 * gst/gsttask.h:
15670 * gst/gstutils.c:
15671 * gst/gstutils.h:
15672 And 2% more doc coverage.
15674 2005-10-21 Andy Wingo <wingo@pobox.com>
15676 * gst/base/gstbasesrc.c (gst_base_src_query): Clean up percent
15677 position reporting.
15679 2005-10-20 Wim Taymans <wim@fluendo.com>
15681 * gst/gsterror.c: (gst_error_get_message):
15682 * gst/gstparse.h:
15683 * gst/gstquery.h:
15684 * gst/gststructure.c:
15685 * gst/gsttrace.c:
15686 * gst/gstutils.c:
15687 More docs.
15689 2005-10-20 Wim Taymans <wim@fluendo.com>
15691 * gst/gstbuffer.h:
15692 * gst/gstpad.c:
15693 * gst/gstparse.c:
15694 Another 1% more coverage.
15696 2005-10-20 Wim Taymans <wim@fluendo.com>
15698 * docs/gst/gstreamer-sections.txt:
15699 * gst/gstelement.c: (gst_element_get_state_func),
15700 (gst_element_abort_state), (gst_element_commit_state),
15701 (gst_element_lost_state):
15702 * gst/gstevent.h:
15703 * gst/gstquery.c: (gst_query_set_position),
15704 (gst_query_parse_position), (gst_query_set_duration),
15705 (gst_query_parse_duration), (gst_query_new_convert):
15706 * gst/gstutils.c:
15707 Yay! 1% more docs coverage.
15709 2005-10-20 Wim Taymans <wim@fluendo.com>
15711 * gst/gstpad.h:
15712 * gst/gstquery.c: (gst_query_set_position),
15713 (gst_query_parse_position), (gst_query_set_duration),
15714 (gst_query_parse_duration), (gst_query_new_convert):
15715 * gst/gstquery.h:
15716 * gst/gstutils.c: (gst_element_query_convert):
15717 * gst/gstutils.h:
15718 Docs and consistency fixes.
15720 2005-10-20 Wim Taymans <wim@fluendo.com>
15722 * gst/gsttask.c:
15723 * gst/gsttask.h:
15724 More docs.
15726 2005-10-20 Wim Taymans <wim@fluendo.com>
15728 * gst/gstbin.c: (message_check), (bin_replace_message),
15729 (bin_remove_messages), (is_eos), (gst_bin_add_func),
15730 (update_degree), (gst_bin_sort_iterator_next),
15731 (gst_bin_change_state_func), (gst_bin_dispose), (bin_bus_handler):
15732 Reworked the message handling a bit, cache the messages instead of
15733 only the senders. alows us to do more in the future.
15735 2005-10-20 Wim Taymans <wim@fluendo.com>
15737 * docs/design/part-TODO.txt:
15738 Update TODO
15740 * gst/base/gstbasesink.c: (gst_base_sink_get_position),
15741 (gst_base_sink_query):
15742 Don't use clock time to report position when in EOS.
15744 2005-10-20 Tim-Philipp Müller <tim at centricular dot net>
15746 * tools/gst-inspect.c: (print_interfaces),
15747 (print_element_properties_info), (print_element_info):
15748 Fix interface output with gst-inspect -a; don't print
15749 newlines after double/float properties.
15751 2005-10-20 Wim Taymans <wim@fluendo.com>
15753 * gst/base/gstbasesink.c: (gst_base_sink_get_position),
15754 (gst_base_sink_query):
15755 Speed up current position calculation.
15757 * gst/base/gstbasesrc.c: (gst_base_src_query),
15758 (gst_base_src_default_newsegment):
15759 Correctly set stream position in newsegment.
15761 * gst/gstbin.c: (gst_bin_add_func), (add_to_queue),
15762 (update_degree), (gst_bin_sort_iterator_next),
15763 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free):
15764 * gst/gstmessage.c: (gst_message_new_custom):
15765 Clean up debugging info
15767 * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
15768 (gst_queue_loop), (gst_queue_handle_src_query):
15769 Pause task faster.
15771 2005-10-19 Wim Taymans <wim@fluendo.com>
15773 * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
15774 (gst_base_sink_handle_object), (gst_base_sink_query), (do_playing):
15775 Fix query handling again.
15777 2005-10-19 Wim Taymans <wim@fluendo.com>
15779 * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
15780 (gst_base_sink_handle_object), (gst_base_sink_query), (do_playing):
15781 * gst/base/gstbasesrc.c: (gst_base_src_query):
15782 * gst/elements/gstfilesink.c: (gst_file_sink_query):
15783 * gst/elements/gsttypefindelement.c:
15784 (gst_type_find_handle_src_query), (find_element_get_length),
15785 (gst_type_find_element_activate):
15786 API change fix.
15788 * gst/gstquery.c: (gst_query_new_position),
15789 (gst_query_set_position), (gst_query_parse_position),
15790 (gst_query_new_duration), (gst_query_set_duration),
15791 (gst_query_parse_duration), (gst_query_set_segment),
15792 (gst_query_parse_segment):
15793 * gst/gstquery.h:
15794 Bundling query position/duration is not a good idea since duration
15795 does not change much and we don't want to recalculate it for every
15796 position query, so they are separated again..
15797 Base value in segment query is not needed.
15799 * gst/gstqueue.c: (gst_queue_handle_src_query):
15800 * gst/gstutils.c: (gst_element_query_position),
15801 (gst_element_query_duration), (gst_pad_query_position),
15802 (gst_pad_query_duration):
15803 * gst/gstutils.h:
15804 Updates for query API change.
15805 Added some docs here and there.
15807 2005-10-19 Thomas Vander Stichele <thomas at apestaart dot org>
15809 * check/gst/gstbin.c: (GST_START_TEST):
15810 * check/gst/gstghostpad.c: (GST_START_TEST):
15811 * check/pipelines/cleanup.c: (GST_START_TEST):
15812 wait on thread to die so we can check refcount correctly
15814 2005-10-18 Wim Taymans <wim@fluendo.com>
15816 * check/pipelines/stress.c: (GST_START_TEST):
15817 Make check a little more time consuming.
15819 2005-10-18 Wim Taymans <wim@fluendo.com>
15821 * check/Makefile.am:
15822 * check/pipelines/stress.c: (GST_START_TEST),
15823 (simple_launch_lines_suite), (main):
15824 Small state change torture test.
15826 * docs/design/part-states.txt:
15827 * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
15828 (gst_base_sink_handle_object), (gst_base_sink_event), (do_playing),
15829 (gst_base_sink_change_state):
15830 Never take state lock from streaming thread, clean up ugly
15831 hacks. Unfortunatly core does not yet support nice ways to
15832 async commit state.
15834 * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_recalc_state),
15835 (bin_bus_handler):
15836 Start state recalc if a STATE_DIRTY message is posted, but only
15837 on the toplevel bin.
15839 * gst/gstelement.c: (gst_element_sync_state_with_parent),
15840 (gst_element_get_state_func), (gst_element_abort_state),
15841 (gst_element_commit_state), (gst_element_lost_state),
15842 (gst_element_set_state_func), (gst_element_change_state):
15843 * gst/gstelement.h:
15844 State variables are now protected with the LOCK, the state
15845 lock is only used to serialize _set_state().
15847 2005-10-18 Wim Taymans <wim@fluendo.com>
15849 * check/gst/gstbin.c: (GST_START_TEST):
15850 * check/gst/gstmessage.c: (GST_START_TEST):
15851 * check/gst/gstpipeline.c: (GST_START_TEST), (message_received):
15852 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_recalc_func),
15853 (bin_bus_handler):
15854 * gst/gstelement.c: (gst_element_abort_state),
15855 (gst_element_commit_state), (gst_element_lost_state):
15856 * gst/gstmessage.c: (gst_message_new_state_changed),
15857 (gst_message_new_state_dirty), (gst_message_new_segment_start),
15858 (gst_message_new_segment_done), (gst_message_new_duration),
15859 (gst_message_parse_state_changed),
15860 (gst_message_parse_segment_start),
15861 (gst_message_parse_segment_done), (gst_message_parse_duration):
15862 * gst/gstmessage.h:
15863 * tools/gst-launch.c: (event_loop):
15864 Seriously, this is better than a previous commit as we only need
15865 to notify the fact that an element changed state in a streaming
15866 thread, marking the state of the parents dirty, hence the
15867 STATE_DIRTY message instead of abusing a boolean in a STATE_CHANGE
15868 message.
15870 2005-10-18 Wim Taymans <wim@fluendo.com>
15872 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_get_state_func),
15873 (gst_bin_recalc_func):
15874 * gst/gstelement.c: (gst_element_set_clock),
15875 (gst_element_abort_state), (gst_element_lost_state):
15876 Cleanups, prepare for state change fixes.
15878 2005-10-18 Wim Taymans <wim@fluendo.com>
15880 * gst/gstbin.h:
15881 * gst/gstelement.c: (gst_element_class_init),
15882 (gst_element_set_state), (gst_element_set_state_func):
15883 * gst/gstelement.h:
15884 Pending ABI changes.
15885 GThreadPool in GstBinClass to monitor async state changes.
15886 state_cookie in GstElement to detect concurrent gst/set state.
15887 set_state is now virtual too in case a very complicated element
15888 has to be constructed.
15890 2005-10-18 Wim Taymans <wim@fluendo.com>
15892 * check/gst/gstbin.c: (GST_START_TEST):
15893 * check/gst/gstmessage.c: (GST_START_TEST):
15894 * check/gst/gstpipeline.c: (GST_START_TEST), (message_received):
15895 * gst/gstbin.c: (bin_bus_handler):
15896 * gst/gstelement.c: (gst_element_commit_state),
15897 (gst_element_lost_state):
15898 * gst/gstmessage.c: (gst_message_new_state_changed),
15899 (gst_message_new_segment_start), (gst_message_new_segment_done),
15900 (gst_message_new_duration), (gst_message_parse_state_changed),
15901 (gst_message_parse_segment_start),
15902 (gst_message_parse_segment_done), (gst_message_parse_duration):
15903 * gst/gstmessage.h:
15904 * tools/gst-launch.c: (event_loop):
15905 Make messages future proof.
15906 state-change gets a flag if it was a message comming from the
15907 streaming thread.
15908 segment-start/stop can also be specified in other formats.
15909 A message to notify an app that a pipeline changed playback
15910 duration.
15911 Also fix a GstMessage leak in -launch
15913 2005-10-18 Andy Wingo <wingo@pobox.com>
15915 * gst/gstelement.c (gst_element_dispose): More helpful message.
15917 2005-10-18 Thomas Vander Stichele <thomas at apestaart dot org>
15919 reviewed by: <delete if not using a buddy>
15921 * common/gtk-doc.mak:
15923 2005-10-18 Thomas Vander Stichele <thomas at apestaart dot org>
15925 * gst/gstregistry.c: (gst_registry_scan_path_level):
15926 unref a plug-in we get that was already initialized
15928 2005-10-18 Stefan Kost <ensonic@users.sf.net>
15930 * docs/gst/gstreamer-sections.txt:
15931 * docs/libs/gstreamer-libs-sections.txt:
15932 * gst/gstelement.h:
15933 add new api entries
15934 hide internal macro
15936 2005-10-17 Andy Wingo <wingo@pobox.com>
15938 * gst/base/gstcollectpads.c (gst_collectpads_chain): Slight
15939 cleanup.
15941 * gst/Makefile.am (gstenumtypes.c): Threadsafe now.
15943 * gst/gstevent.c (gst_event_new, gst_event_finalize): LOG.
15945 * gst/gstelement.c (gst_element_get_state_func): s/INFO/DEBUG/.
15946 (gst_element_get_state_func): Better debug message.
15947 (gst_element_commit_state): s/INFO/DEBUG/.
15948 (gst_element_lost_state, gst_element_change_state):
15950 * gst/gstmessage.c (gst_message_init): s/INFO/LOG/.
15951 (gst_message_new_custom): s/INFO/LOG/.
15953 2005-10-17 Michael Smith <msmith@fluendo.com>
15955 * gst/base/gstbasesink.c: (gst_base_sink_do_sync):
15956 Check if end time is valid using end time, not start time.
15958 2005-10-17 Stefan Kost <ensonic@users.sf.net>
15960 * check/gst-libs/controller.c: (GST_START_TEST),
15961 (gst_controller_suite):
15962 * libs/gst/controller/gstcontroller.c:
15963 (gst_controlled_property_set_interpolation_mode):
15964 * libs/gst/controller/gstcontroller.h:
15965 * libs/gst/controller/gstinterpolation.c:
15966 * testsuite/controller/.cvsignore:
15967 * testsuite/controller/Makefile.am:
15968 * testsuite/controller/interpolator.c:
15969 merge controller testsuites
15970 fix broken tests
15971 remove mem-chunk from docs
15973 2005-10-17 Thomas Vander Stichele <thomas at apestaart dot org>
15975 * gst/gstmemchunk.c:
15976 * gst/gstmemchunk.h:
15977 * gst/gsttrashstack.c:
15978 * gst/gsttrashstack.h:
15979 out. get out. you're fired. to the Attic !
15981 2005-10-17 Thomas Vander Stichele <thomas at apestaart dot org>
15983 * gst/gstcaps.c: (gst_caps_intersect):
15984 fix signedness issues in a (hopefully) correct way
15985 * gst/gstelement.c: (gst_element_pads_activate):
15986 some debugging
15987 * gst/gstobject.c: (gst_object_set_parent):
15988 some debugging
15990 2005-10-17 Julien MOUTTE <julien@moutte.net>
15992 * gst/gstvalue.h: Fix prototypes.
15994 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
15996 * docs/gst/gstreamer-sections.txt:
15997 * gst/gst.c: (gst_version_string):
15998 * gst/gst.h:
15999 * gst/gstversion.h.in:
16000 * win32/common/libgstreamer.def:
16001 add gst_version_string ()
16003 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
16005 * configure.ac:
16006 clean up further
16007 * gst/gst.c: (init_post):
16008 * win32/common/config.h.in:
16009 it's PLUGINDIR now
16010 * gst/gstcaps.c: (gst_caps_intersect):
16011 use gint64, the range could be bigger than a guint
16013 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
16015 * gst/gstclock.h:
16016 document potential problem in 2038
16018 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
16020 * gst/gstcaps.c: (gst_caps_intersect):
16021 Fix guint j diving under 0
16023 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
16025 * configure.ac:
16026 * win32/common/config.h:
16027 * win32/common/config.h.in:
16028 check for process.h, declares getpid() on Windows
16029 * gst/gstinfo.c:
16030 include process.h if we have it
16031 * gst/gstmemchunk.c: (populate), (gst_mem_chunk_new):
16032 * gst/gstmemchunk.h:
16033 fix signedness issues
16034 * win32/common/libgstreamer.def:
16035 fix get_type's
16037 2005-10-16 Julien MOUTTE <julien@moutte.net>
16039 * gst/gstcaps.c: (gst_caps_intersect): Fix a bad bug with a simple
16040 fix. Because of unsigned ints, caps intersection was going nuts and
16041 trying to access structures with G_MAXUINT index. That fixes
16042 videotestsrc ! ffmpegcolorspace ! fakesink
16043 * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked): logs
16044 consistency.
16046 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
16048 * configure.ac:
16049 use the gettext macro
16050 * gst/elements/gstelements.c:
16051 * gst/gst.c:
16052 * gst/indexers/gstindexers.c:
16053 update for GST_PACKAGE_NAME, GST_PACKAGE_ORIGIN
16054 * win32/common/config.h:
16055 updated config.h
16056 * win32/common/config.h.in:
16057 add the template to generate config.h
16058 * win32/common/gstenumtypes.c:
16059 * win32/common/gstversion.h:
16060 updated copies
16062 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
16064 * gst/gst.c: (gst_version):
16065 * gst/gstversion.h.in:
16066 add the nano
16068 2005-10-15 Tim-Philipp Müller <tim at centricular dot net>
16070 * gst/gstevent.h:
16071 Oops, add missing closing bracket.
16073 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
16075 * configure.ac:
16076 use common m4's for argument checking
16078 2005-10-15 Tim-Philipp Müller <tim at centricular dot net>
16080 * docs/gst/gstreamer-sections.txt:
16081 * gst/gstevent.h:
16082 Add GST_EVENT_TYPE_NAME() macro.
16084 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
16086 * gst/gstinfo.c:
16087 * gst/gstpluginfeature.c:
16088 * gst/gsttask.c:
16089 privatize more symbols
16091 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
16093 * configure.ac:
16094 add srcdir, builddir includes to GST_ALL_CFLAGS, since
16095 everything that uses GStreamer API should have the includes
16097 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
16099 * docs/gst/gstreamer-sections.txt:
16100 * gst/gstvalue.c: (gst_date_get_type), (_gst_value_initialize):
16101 * gst/gstvalue.h:
16102 give each value a _get_type, removes the DATA exports
16104 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
16106 * gst/gst.c:
16107 * gst/gst.h:
16108 remove _gst_registry_auto_load, not used anymore
16109 * gst/gstbin.c: (gst_bin_get_type):
16110 * gst/gstbin.h:
16111 * gst/gstelement.c: (gst_element_get_type):
16112 * gst/gstelement.h:
16113 * gst/gstobject.c: (gst_object_get_type):
16114 * gst/gstobject.h:
16115 * gst/gstpad.c: (gst_pad_get_type):
16116 * gst/gstpad.h:
16117 make _get_type functions similar, fixes data export from library
16119 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
16121 * configure.ac:
16122 correctly make conditionals
16123 * gst/elements/Makefile.am:
16124 * gst/elements/gstelements.c:
16125 fix typo causing fdsrc not to build
16127 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
16129 * testsuite/Makefile.am:
16130 * testsuite/bytestream/.cvsignore:
16131 * testsuite/bytestream/Makefile.am:
16132 * testsuite/bytestream/filepadsink.c:
16133 * testsuite/bytestream/gstbstest.c:
16134 * testsuite/bytestream/test1.c:
16135 * testsuite/bytestream/testfile1:
16136 * testsuite/caps/normalisation.c:
16137 * testsuite/caps/random.c: (main):
16138 * testsuite/cleanup/.cvsignore:
16139 * testsuite/cleanup/Makefile.am:
16140 * testsuite/cleanup/cleanup1.c:
16141 * testsuite/cleanup/cleanup2.c:
16142 * testsuite/cleanup/cleanup3.c:
16143 * testsuite/cleanup/cleanup4.c:
16144 * testsuite/cleanup/cleanup5.c:
16145 * testsuite/controller/interpolator.c:
16146 * testsuite/debug/printf_extension.c: (main):
16147 * testsuite/elements/tee.c:
16148 * testsuite/negotiation/.cvsignore:
16149 * testsuite/negotiation/Makefile.am:
16150 * testsuite/negotiation/pad_link.c:
16151 * testsuite/pad/Makefile.am:
16152 * testsuite/pad/chainnopull.c:
16153 * testsuite/pad/getnopush.c:
16154 * testsuite/pad/link.c:
16155 * testsuite/refcounting/sched.c: (create_pipeline):
16156 * testsuite/registry/Makefile.am:
16157 * testsuite/registry/gst-print-formats.c:
16158 * testsuite/schedulers/.cvsignore:
16159 * testsuite/schedulers/142183-2.c:
16160 * testsuite/schedulers/142183.c:
16161 * testsuite/schedulers/143777-2.c:
16162 * testsuite/schedulers/143777.c:
16163 * testsuite/schedulers/147713.c:
16164 * testsuite/schedulers/147819.c:
16165 * testsuite/schedulers/147894-2.c:
16166 * testsuite/schedulers/147894.c:
16167 * testsuite/schedulers/Makefile.am:
16168 * testsuite/schedulers/group_link.c:
16169 * testsuite/schedulers/queue_link.c:
16170 * testsuite/schedulers/relink.c:
16171 * testsuite/schedulers/unlink.c:
16172 * testsuite/schedulers/unref.c:
16173 * testsuite/schedulers/useless_iteration.c:
16174 * testsuite/states/bin.c:
16175 clean out/remove some stuff from the testsuite directories
16177 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
16179 * configure.ac:
16180 check for some headers
16181 * gst/elements/Makefile.am:
16182 * gst/elements/gstelements.c:
16183 don't compile fdsrc without sys/socket.h
16184 * gst/indexers/Makefile.am:
16185 * gst/indexers/gstindexers.c: (plugin_init):
16186 don't compile fileindex without mmap
16188 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
16190 * configure.ac:
16191 reorganize
16192 clean up
16193 document more
16194 remove cruft
16195 * check/Makefile.am:
16196 * docs/gst/Makefile.am:
16197 * examples/helloworld/Makefile.am:
16198 * gst/Makefile.am:
16199 * gst/base/Makefile.am:
16200 * gst/check/Makefile.am:
16201 * gst/elements/Makefile.am:
16202 * gst/indexers/Makefile.am:
16203 * gst/parse/Makefile.am:
16204 * libs/gst/controller/Makefile.am:
16205 * libs/gst/dataprotocol/Makefile.am:
16206 * examples/helloworld/helloworld.c: (event_loop):
16207 compile fixes, though it's not being compiled currently
16209 2005-10-14 Tim-Philipp Müller <tim at centricular dot net>
16211 * check/gst/gsttag.c: (test_date_tags), (gst_tag_suite):
16212 Add some simple tests for the new taglist date API.
16214 2005-10-14 Tim-Philipp Müller <tim at centricular dot net>
16216 * gst/elements/gstfakesink.c: (gst_fake_sink_render):
16217 * gst/elements/gstfakesrc.c: (gst_fake_src_create):
16218 Beautify 'last-message' output: print 'none' for buffer timestamps
16219 and durations if none is set; improve alignment with next messages.
16221 2005-10-14 Tim-Philipp Müller <tim at centricular dot net>
16223 * gst/gstpluginfeature.c: (gst_plugin_feature_check_version):
16224 * gst/gstpluginfeature.h:
16225 * gst/gstregistry.c: (gst_default_registry_check_feature_version):
16226 * gst/gstregistry.h:
16227 * docs/gst/gstreamer-sections.txt:
16228 Add new API to check plugin feature version requirements.
16230 * check/gst/gstplugin.c: (test_version_checks), (gst_plugin_suite):
16231 Some basic tests for the above.
16233 2005-10-13 Thomas Vander Stichele <thomas at apestaart dot org>
16235 * gst/gststructure.c: (gst_structure_to_string):
16236 guard against NULL printf - happens when for example
16237 a message structure with GstClock gets serialized
16239 2005-10-13 Tim-Philipp Müller <tim at centricular dot net>
16241 * gst/base/gstcollectpads.c: (gst_collectpads_event):
16242 Fix presumable copy'n'pasto.
16244 2005-10-13 Thomas Vander Stichele <thomas at apestaart dot org>
16246 * gst/elements/gstfakesrc.h:
16247 * gst/elements/gstfilesrc.c: (gst_file_src_create_read):
16248 * gst/elements/gsttypefindelement.c:
16249 fix some signedness
16250 * gst/elements/gstfilesink.c: (gst_file_sink_render):
16251 I wonder if this could actually write +2GB files before
16253 2005-10-13 Andy Wingo <wingo@pobox.com>
16255 * libs/gst/dataprotocol/dataprotocol.c (gst_dp_packet_from_caps):
16256 Fix Timmeke Waymans bug.
16257 (gst_dp_caps_from_packet): Make sure we pass a NUL-terminated
16258 string of the proper length to gst_caps_from_string. There's a
16259 potential for, before this fix, that this could cause someone
16260 connecting over the network to cause a segfault if the payload is
16261 not NUL-terminated.
16263 2005-10-13 Stefan Kost <ensonic@users.sf.net>
16265 * docs/design/draft-push-pull.txt:
16266 * docs/design/part-overview.txt:
16267 * docs/random/TODO-pre-0.9:
16268 * docs/random/old/ChangeLog.gstreamer:
16269 * gst/base/gstpushsrc.c:
16270 * gst/gstclock.c:
16271 fixed typos
16273 2005-10-13 Thomas Vander Stichele <thomas at apestaart dot org>
16275 * gst/glib-compat.c: (gst_flags_get_first_value):
16276 * gst/glib-compat.h:
16277 * gst/gstvalue.c: (gst_value_deserialize_int_helper),
16278 (gst_value_compare_double), (gst_value_serialize_flags):
16279 GLib 2.6 g_flags_get_first_value has a bug that triggers an
16280 infinite loop
16282 2005-10-13 Thomas Vander Stichele <thomas at apestaart dot org>
16284 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
16285 * gst/base/gstbasesrc.c: (gst_base_src_get_range):
16286 fix up debugging
16287 * tools/gst-launch.c: (event_loop):
16288 print out clock nicely
16290 2005-10-13 Tim-Philipp Müller <tim at centricular dot net>
16292 * docs/gst/gstreamer-sections.txt:
16293 * gst/gsttaglist.h:
16294 * gst/gsttaglist.c: (_gst_tag_initialize), (gst_tag_list_get_date),
16295 (gst_tag_list_get_date_index):
16296 Added gst_tag_list_get_date() and gst_tag_list_get_date_index().
16297 GST_TAG_DATE now has a tag type of GST_TYPE_DATE (#170777).
16299 2005-10-13 Julien MOUTTE <julien@moutte.net>
16301 * gst/base/gstcollectpads.c: (gst_collectpads_event),
16302 (gst_collectpads_chain):
16303 * gst/base/gstcollectpads.h: Handle newsegment and store informations
16304 in CollectData.
16306 2005-10-13 Stefan Kost <ensonic@users.sf.net>
16308 * docs/gst/gstreamer-sections.txt:
16309 * gst/gst.c:
16310 * gst/gsterror.h:
16311 * tools/gst-inspect.c: (main):
16312 * tools/gst-launch.c: (main):
16313 * tools/gst-run.c: (main):
16314 * tools/gst-xmlinspect.c: (main):
16315 fix GOption context leaks
16316 doc fixes
16318 2005-10-13 Thomas Vander Stichele <thomas at apestaart dot org>
16320 * gst/gstbus.c:
16321 use HAVE_UNISTD_H
16322 * win32/common/config.h:
16323 update config
16324 * win32/vs6/grammar.dsp:
16325 * win32/vs6/libgstelements.dsp:
16326 * win32/vs6/libgstreamer.dsp:
16327 update vs6 files
16329 2005-10-12 Thomas Vander Stichele <thomas at apestaart dot org>
16331 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
16332 * gst/base/gstbasesrc.c: (gst_base_src_query):
16333 fix more guint64<->gdouble conversions
16335 2005-10-12 Thomas Vander Stichele <thomas at apestaart dot org>
16337 * Makefile.am:
16338 add win32-update target
16339 * win32/common/gstconfig.h:
16340 * win32/common/gstenumtypes.c:
16341 * win32/common/gstenumtypes.h:
16342 * win32/common/gstversion.h:
16343 add files that visual studio can't generate
16345 2005-10-12 Thomas Vander Stichele <thomas at apestaart dot org>
16347 * Makefile.am:
16348 add a win32-update target
16349 * configure.ac:
16351 2005-10-12 Wim Taymans <wim@fluendo.com>
16353 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
16354 (reset_degree), (gst_bin_dispose), (bin_bus_handler):
16355 * gst/gstelement.c: (gst_element_commit_state),
16356 (gst_element_set_state):
16357 Protect flags with proper lock.
16358 unref provided cached clock in dispose.
16360 2005-10-12 Stefan Kost <ensonic@users.sf.net>
16362 * gst/gst.c:
16363 * gst/gstminiobject.h:
16364 * gst/gstpad.h:
16365 * win32/gstenumtypes.c: (gst_mini_object_flags_get_type):
16366 removed unused flags from miniobject
16367 doc fixes
16369 2005-10-12 Wim Taymans <wim@fluendo.com>
16371 * gst/elements/gstfilesink.c: (gst_file_sink_do_seek),
16372 (gst_file_sink_event), (gst_file_sink_render):
16373 Flush before seeking.
16375 2005-10-12 Andy Wingo <wingo@pobox.com>
16377 * gst/gst.c (gst_init_check): Ignore unknown options, as has
16378 always been the case.
16380 2005-10-12 Stefan Kost <ensonic@users.sf.net>
16382 * check/gst/gstbin.c: (GST_START_TEST):
16383 * docs/gst/gstreamer-sections.txt:
16384 * gst/base/gstbasesink.c: (gst_base_sink_init):
16385 * gst/base/gstbasesrc.c: (gst_base_src_init),
16386 (gst_base_src_get_range), (gst_base_src_check_get_range),
16387 (gst_base_src_start), (gst_base_src_stop):
16388 * gst/base/gstbasesrc.h:
16389 * gst/elements/gstfakesrc.c: (gst_fake_src_set_property):
16390 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
16391 (bin_element_is_sink), (reset_degree), (gst_bin_element_set_state),
16392 (bin_bus_handler):
16393 * gst/gstbin.h:
16394 * gst/gstbuffer.h:
16395 * gst/gstbus.c: (gst_bus_post), (gst_bus_set_flushing):
16396 * gst/gstbus.h:
16397 * gst/gstelement.c: (gst_element_is_locked_state),
16398 (gst_element_set_locked_state), (gst_element_commit_state),
16399 (gst_element_set_state):
16400 * gst/gstelement.h:
16401 * gst/gstindex.c: (gst_index_init):
16402 * gst/gstindex.h:
16403 * gst/gstminiobject.h:
16404 * gst/gstobject.c: (gst_object_init), (gst_object_sink),
16405 (gst_object_set_parent):
16406 * gst/gstobject.h:
16407 * gst/gstpad.c: (gst_pad_set_blocked_async), (gst_pad_is_blocked),
16408 (gst_pad_get_caps_unlocked), (gst_pad_set_caps):
16409 * gst/gstpad.h:
16410 * gst/gstpadtemplate.h:
16411 * gst/gstpipeline.c: (gst_pipeline_provide_clock_func),
16412 (gst_pipeline_use_clock), (gst_pipeline_auto_clock):
16413 * gst/gstpipeline.h:
16414 * gst/indexers/gstfileindex.c: (gst_file_index_load),
16415 (gst_file_index_commit):
16416 * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
16417 * testsuite/pad/link.c: (gst_test_src_init),
16418 (gst_test_filter_init), (gst_test_sink_init):
16419 * testsuite/states/locked.c: (main):
16420 renamed GST_FLAGS macros to GST_OBJECT_FLAGS
16421 moved bitshift from macro to enum definition
16423 2005-10-12 Wim Taymans <wim@fluendo.com>
16425 * gst/base/gstbasesink.c: (gst_base_sink_handle_buffer):
16426 * gst/elements/gstfilesink.c: (gst_file_sink_event),
16427 (gst_file_sink_render):
16428 Some more debugging info.
16430 2005-10-12 Wim Taymans <wim@fluendo.com>
16432 * docs/design/part-states.txt:
16433 * tools/gst-launch.c: (main):
16434 Some doc updates.
16435 Revert non-intentional change.
16437 2005-10-12 Wim Taymans <wim@fluendo.com>
16439 * check/gst/gstbin.c: (GST_START_TEST):
16440 * check/gst/gstelement.c: (GST_START_TEST):
16441 * check/gst/gstevent.c: (GST_START_TEST), (test_event):
16442 * check/gst/gstghostpad.c: (GST_START_TEST):
16443 * check/gst/gstpipeline.c: (GST_START_TEST):
16444 * check/pipelines/simple_launch_lines.c: (run_pipeline):
16445 * check/states/sinks.c: (GST_START_TEST):
16446 * gst/elements/gsttypefindelement.c: (stop_typefinding):
16447 * gst/gstbin.c: (gst_bin_provide_clock_func), (gst_bin_add_func),
16448 (gst_bin_remove_func), (gst_bin_get_state_func),
16449 (gst_bin_recalc_state), (gst_bin_change_state_func),
16450 (bin_bus_handler):
16451 * gst/gstelement.c: (gst_element_get_state_func),
16452 (gst_element_get_state), (gst_element_abort_state),
16453 (gst_element_commit_state), (gst_element_set_state),
16454 (gst_element_change_state), (gst_element_change_state_func):
16455 * gst/gstelement.h:
16456 * gst/gstpipeline.c: (gst_pipeline_class_init), (do_pipeline_seek),
16457 (gst_pipeline_provide_clock_func):
16458 * gst/gstutils.c: (gst_element_link_pads_filtered):
16459 * tools/gst-launch.c: (main):
16460 * tools/gst-typefind.c: (main):
16461 Use GstClockTime in _get_state() instead of GTimeVal.
16462 Remove old code in gstutils.c
16464 2005-10-12 Andy Wingo <wingo@pobox.com>
16466 * gst/gstregistry.h (gst_registry_scan_paths): Not implemented, so
16467 removed.
16469 * gst/gstpad.c (gst_pad_pause_task): Actually return FALSE if
16470 there is no task. Shouldn't affect any code, as nothing in our
16471 plugins checks this return value.
16472 (gst_pad_stop_task): Also take the stream lock if the pad has no
16473 task. Docs updated.
16475 2005-10-12 Wim Taymans <wim@fluendo.com>
16477 * gst/gstpad.c: (pre_activate), (post_activate),
16478 (gst_pad_activate_pull), (gst_pad_activate_push):
16479 Cleanup activation code. Reset old state if
16480 activation failed.
16482 2005-10-12 Wim Taymans <wim@fluendo.com>
16484 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
16485 (gst_base_sink_change_state):
16486 No need to prerol after receiving EOS.
16488 * gst/elements/gstfakesink.c: (gst_fake_sink_event):
16489 * gst/elements/gstfakesrc.c: (gst_fake_src_event_handler):
16490 * gst/elements/gstidentity.c: (gst_identity_event):
16491 Print events more verbosely.
16493 2005-10-12 Wim Taymans <wim@fluendo.com>
16495 * check/Makefile.am:
16496 * check/states/sinks.c: (GST_START_TEST), (gst_object_suite):
16497 * check/states/sinks2.c:
16498 Moved sinks2 testcode in sinks check.
16500 * gst/gstbin.c: (gst_bin_provide_clock_func), (gst_bin_add_func),
16501 (gst_bin_remove_func), (gst_bin_recalc_state),
16502 (gst_bin_change_state_func), (bin_bus_handler):
16503 Fix potential race condition when _get_state() iterated over an
16504 ASYNC element right before it posted a state completion.
16506 * gst/gstclock.h:
16507 Do proper cast here.
16509 * gst/gstevent.c: (gst_event_new_newsegment),
16510 (gst_event_parse_newsegment):
16511 A playback rate of 0.0 is not allowed.
16513 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
16515 * win32/common/config.h:
16516 * win32/common/dirent.c: (_topendir), (_treaddir), (_tclosedir),
16517 (_trewinddir), (_ttelldir), (_tseekdir):
16518 * win32/common/dirent.h:
16519 * win32/common/gtchar.h:
16520 * win32/common/libgstbase.def:
16521 * win32/common/libgstreamer.def:
16522 * win32/vs6/grammar.dsp:
16523 * win32/vs6/gst_inspect.dsp:
16524 * win32/vs6/gst_launch.dsp:
16525 * win32/vs6/gstreamer.dsw:
16526 * win32/vs6/libgstbase.dsp:
16527 * win32/vs6/libgstelements.dsp:
16528 * win32/vs6/libgstreamer.dsp:
16529 Visual Studio 6 project files, and a new common directory.
16530 Phear.
16532 2005-10-11 Wim Taymans <wim@fluendo.com>
16534 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
16535 (gst_base_sink_do_sync), (gst_base_sink_query),
16536 (gst_base_sink_change_state):
16537 * gst/base/gstbasesink.h:
16538 Correctly parse newsegment info.
16540 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
16542 * gst/gst.c: (init_post):
16543 split plugin paths correctly
16545 2005-10-11 Wim Taymans <wim@fluendo.com>
16547 * check/gst/gstevent.c: (GST_START_TEST):
16548 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
16549 (gst_base_sink_change_state):
16550 * gst/base/gstbasesrc.c: (gst_base_src_default_newsegment):
16551 * gst/base/gstbasetransform.c: (gst_base_transform_event):
16552 * gst/elements/gstfilesink.c: (gst_file_sink_event):
16553 * gst/gstevent.c: (gst_event_new_newsegment),
16554 (gst_event_parse_newsegment):
16555 * gst/gstevent.h:
16556 Added extra flag to newsegment for future API freeze.
16557 Updated check and base elements.
16559 2005-10-11 Julien MOUTTE <julien@moutte.net>
16561 * gst/base/gstcollectpads.c: (gst_collectpads_init),
16562 (gst_collectpads_add_pad), (gst_collectpads_pop),
16563 (gst_collectpads_event), (gst_collectpads_chain):
16564 * gst/base/gstcollectpads.h: Handle EOS correctly.
16566 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
16568 * tools/gst-launch.c: (main):
16569 more null protecting
16571 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
16573 * gst/gst-i18n-lib.h:
16574 check for ENABLE_NLS, not GETTEXT_PACKAGE
16575 * gst/gstregistry.c: (gst_registry_add_plugin),
16576 (gst_registry_scan_path_level),
16577 (_gst_registry_remove_cache_plugins):
16578 protect possibly NULL strings
16579 * gst/parse/types.h:
16580 config.h already included before
16581 * tools/gst-inspect.c: (main):
16582 sys/wait.h also doesn�t exist on mingw, so change the ifdef check
16583 check for ENABLE_NLS, not GETTEXT_PACKAGE
16584 * tools/gst-launch.c: (main):
16585 check for ENABLE_NLS, not GETTEXT_PACKAGE
16587 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
16589 * configure.ac:
16590 if we don't have glib, fail before testing 2.8
16591 * gst/base/gstbasetransform.c: (gst_base_transform_change_state):
16592 fix a leak, should fix plugins-base testsuite
16594 2005-10-11 Andy Wingo <wingo@pobox.com>
16596 * gst/gstpad.c (pre_activate): Renamed from pre_activate_switch,
16597 take the mode we're going to as an arg. Go head and set the mode
16598 and flushing flags now, so that if the activate function starts a
16599 thread all the flags will be in the right state.
16600 (post_activate): Renamed also. Just handle making sure streaming
16601 finishes for the deactivation case, and setting the deactivated
16602 mode.
16603 (gst_pad_set_active): Complain loudly if deactivation fails.
16604 (gst_pad_activate_pull): Adapt to pre/post_activate changes.
16605 (gst_pad_activate_push): Adapt to pre/post_activate changes,
16606 remove the terrible hack.
16608 2005-10-11 Wim Taymans <wim@fluendo.com>
16610 * gst/gstbin.c: (gst_bin_init), (gst_bin_provide_clock_func),
16611 (is_eos), (gst_bin_add_func), (gst_bin_remove_func),
16612 (gst_bin_recalc_state), (gst_bin_change_state_func),
16613 (gst_bin_dispose), (bin_bus_handler):
16614 * gst/gstbin.h:
16615 Prepare to make current EOS message queue more generic.
16616 Fix some typos.
16618 * gst/gstevent.c: (gst_event_new_newsegment),
16619 (gst_event_parse_newsegment):
16620 * gst/gstevent.h:
16621 Rename base to stream_time.
16623 * gst/gstmessage.h:
16624 Fix typo in docs.
16626 2005-10-11 Wim Taymans <wim@fluendo.com>
16628 * gst/gstbin.c: (gst_bin_init), (gst_bin_provide_clock_func),
16629 (gst_bin_add_func), (gst_bin_remove_func), (gst_bin_recalc_state),
16630 (gst_bin_change_state_func), (bin_bus_handler):
16631 * gst/gstbin.h:
16632 Work on proper clock selection.
16634 2005-10-11 Edward Hervey <edward@fluendo.com>
16636 * libs/gst/controller/gstcontroller.c: (gst_controller_remove_properties_list):
16637 * libs/gst/controller/gstcontroller.h:
16638 Added GList* version of _remove_properties() in order to be able to wrap
16639 it in bindings.
16641 2005-10-11 Wim Taymans <wim@fluendo.com>
16643 * docs/design/part-states.txt:
16644 Some more docs.
16646 * gst/gstbin.c: (gst_bin_set_clock_func), (gst_bin_recalc_state),
16647 (gst_bin_change_state_func), (bin_bus_handler):
16648 Doc updates. Don't distribute the same clock over and over again.
16650 * gst/gstclock.c:
16651 * gst/gstclock.h:
16652 Doc updates.
16654 * gst/gstpad.c: (gst_flow_get_name), (gst_flow_to_quark),
16655 (gst_pad_get_type), (gst_pad_push), (gst_pad_push_event),
16656 (gst_pad_send_event):
16657 * gst/gstpad.h:
16658 Make probe emission threadsafe again.
16659 Register quarks and move _get_name() from utils.
16660 Doc updates.
16662 * gst/gstpipeline.c: (gst_pipeline_class_init),
16663 (gst_pipeline_change_state), (gst_pipeline_provide_clock_func):
16664 Only redistribute the clock of it changed.
16666 * gst/gstsystemclock.h:
16667 Doc updates.
16669 * gst/gstutils.c:
16670 * gst/gstutils.h:
16671 Moved the _flow_get_name() to GstPad.
16673 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
16675 * check/gst-libs/gdp.c: (GST_START_TEST):
16676 * check/gst/gstcaps.c: (GST_START_TEST):
16677 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
16678 (gst_dp_dump_byte_array), (gst_dp_header_from_buffer),
16679 (gst_dp_packet_from_caps):
16680 fix more valgrind warnings before turning up the heat
16682 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
16684 * gst/parse/grammar.y:
16685 some cleanup before the hacking
16687 2005-10-10 Thomas Vander Stichele <thomas at apestaart dot org>
16689 * gst/base/gstbasesrc.c: (gst_base_src_query):
16690 use conversions
16691 * gst/gstutils.c: (gst_guint64_to_gdouble),
16692 (gst_gdouble_to_guint64), (gst_util_uint64_scale):
16693 * gst/gstutils.h:
16694 externalize, basesrc uses it
16695 obviously the implementation needs testing
16697 2005-10-10 Wim Taymans <wim@fluendo.com>
16699 * tests/sched/Makefile.am:
16700 * tests/sched/sort.c: (make_pipeline1), (make_pipeline2),
16701 (make_pipeline3), (make_pipeline4), (print_elem), (main):
16703 2005-10-10 Thomas Vander Stichele <thomas at apestaart dot org>
16705 * gst/gstutils.c: (guint64_to_gdouble), (gst_util_uint64_scale):
16706 apparently converting from guint64 to double is not implemented
16707 on MSVC
16709 2005-10-10 Wim Taymans <wim@fluendo.com>
16711 * check/Makefile.am:
16712 * check/generic/states.c: (GST_START_TEST):
16713 * check/gst/gstbin.c: (GST_START_TEST):
16714 * check/gst/gstpipeline.c: (GST_START_TEST), (gst_pipeline_suite):
16715 * check/states/sinks.c: (GST_START_TEST):
16716 * check/states/sinks2.c: (GST_START_TEST), (gst_object_suite),
16717 (main):
16718 Check fixes, use API as stated in design docs, remove hacks.
16720 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
16721 (gst_base_sink_change_state):
16722 Catch stopping our task while we're shutting down.
16724 * gst/gstbin.c: (gst_bin_init), (gst_bin_add_func),
16725 (gst_bin_remove_func), (gst_bin_get_state_func),
16726 (gst_bin_recalc_state), (gst_bin_change_state_func),
16727 (bin_bus_handler):
16728 * gst/gstbin.h:
16729 * gst/gstelement.c: (gst_element_init),
16730 (gst_element_get_state_func), (gst_element_abort_state),
16731 (gst_element_commit_state), (gst_element_lost_state),
16732 (gst_element_set_state), (gst_element_change_state),
16733 (gst_element_change_state_func):
16734 * gst/gstelement.h:
16735 New state change algorithm (see #318116)
16737 * gst/gstpipeline.c: (gst_pipeline_class_init),
16738 (gst_pipeline_init), (gst_pipeline_set_property),
16739 (gst_pipeline_get_property), (do_pipeline_seek),
16740 (gst_pipeline_change_state), (gst_pipeline_provide_clock_func):
16741 * gst/gstpipeline.h:
16742 Remove crude state change hacks.
16744 * gst/gstutils.h:
16745 Remove crude hacks.
16747 * tools/gst-launch.c: (main):
16748 Fixes for state change. Needs some more work to fully use the
16749 new stuff.
16751 2005-10-10 Andy Wingo <wingo@pobox.com>
16753 * tests/Makefile.am (noinst_PROGRAMS): No more init.c.
16755 * gst/gst.c (G_OPTION_FLAG_NO_ARG): Apparently GLib 2.8 requires
16756 this flag, but it's not even in GLib 2.6. Odd. Hack around the
16757 issue.
16759 2005-10-10 Tim-Philipp Müller <tim at centricular dot net>
16761 * gst/gstiterator.c: (gst_iterator_new):
16762 Fix my previous commit: GTypes passed to gst_iterator_new()
16763 can be fundamental types.
16765 2005-10-10 Wim Taymans <wim@fluendo.com>
16767 * gst/gstelement.c: (gst_element_iterate_pad_list),
16768 (gst_element_iterate_pads), (gst_element_iterate_src_pads),
16769 (gst_element_iterate_sink_pads):
16770 Use src/sink pads lists for the respective iterators instead
16771 of filtering.
16773 2005-10-10 Andy Wingo <wingo@pobox.com>
16775 Merged in popt removal + GOption addition patch from Ronald, bug
16776 #169772.
16778 * docs/gst/gstreamer-sections.txt: Add STATE_(UN)LOCK_FULL, move
16779 GstElement macros around, remove popt-related symbols, add goption
16780 stuff.
16782 * configure.ac: Remove popt checks, require GLib 2.6 for GOption.
16784 * docs/gst/Makefile.am:
16785 * docs/libs/Makefile.am: No POPT_CFLAGS.
16787 * examples/manual/Makefile.am:
16788 * docs/manual/basics-init.xml: Doc updates with an example.
16790 * gst/gst.c: (gst_init_get_option_group), (gst_init_check),
16791 (gst_init), (parse_one_option), (parse_goption_arg):
16792 * gst/gst.h: Removed gst_init_with_popt_table and friends. Took a
16793 bit of hand merging and debugging to get the GOption stuff working
16794 tho.
16796 * tests/Makefile.am:
16797 * tools/Makefile.am:
16798 * tools/gst-inspect.c: (main):
16799 * tools/gst-launch.c: (main):
16800 * tools/gst-run.c: (main):
16801 * tools/gst-xmlinspect.c: (main): Thanks Ronald!
16803 2005-10-10 Tim-Philipp Müller <tim at centricular dot net>
16805 * gst/gstiterator.c: (gst_iterator_new):
16806 Add assertions to make sure passed GType is likely to really
16807 be a GType (as the compiler won't catch it if the size and
16808 GType arguments get mixed up, see #318447).
16810 2005-10-10 Josef Zlomek <josef dot zlomek at xeris dot cz>
16812 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
16814 * gst/gstbin.c: (gst_bin_iterate_sorted):
16815 Pass GType and size arguments to gst_iterator_new() in the right
16816 order (maybe we should make _new() take the GType as first argument
16817 just like _new_list()?) (#318447).
16820 2005-10-10 Wim Taymans <wim@fluendo.com>
16822 * gst/gstelement.c: (gst_element_finalize):
16823 And free the GStaticRecMutex too
16825 2005-10-10 Andy Wingo <wingo@pobox.com>
16827 * gst/gstelement.c (gst_element_init, gst_element_finalize):
16828 Allocate and free the mutex properly.
16830 * gst/gstelement.h (GST_STATE_UNLOCK_FULL, GST_STATE_LOCK_FULL):
16831 New macros.
16832 (GstElement): The state_lock is now recursive. Rebuild your
16833 plugins, suckers. Old macros adapted.
16835 * docs/gst/gstreamer-sections.txt: Doc updates.
16837 * gst/gstutils.h:
16838 * gst/gstutils.c (g_static_rec_cond_timed_wait)
16839 (g_static_rec_cond_wait): Ported from state changes patch, while
16840 we wait on bug #317802 to be solved in a well-distributed GLib.
16842 * gst/gstelement.c (gst_element_change_state_func): Renamed from
16843 gst_element_change_state, variable name changes.
16844 (gst_element_change_state): Split out of gst_element_set_state in
16845 preparation for the state change merge. Doesn't pay attention to
16846 the 'transition' argument.
16847 (gst_element_set_state): Updates, hopefully purely cosmetic.
16848 (gst_element_sync_state_with_parent): MT-safety. Ported from the
16849 state change patch.
16850 (gst_element_get_state_func): Renamed from get_state, cosmetic
16851 changes.
16853 2005-10-10 Thomas Vander Stichele <thomas at apestaart dot org>
16855 * gst/elements/gstelements.c:
16856 * win32/GStreamer.vcproj:
16857 * win32/config.h:
16858 * win32/dirent.c: (_tseekdir):
16859 * win32/gst-inspect.vcproj:
16860 * win32/gst-launch.vcproj:
16861 * win32/gstconfig.h:
16862 * win32/gstelements.vcproj:
16863 * win32/gstenumtypes.c: (gst_object_flags_get_type):
16864 * win32/gstreamer.def:
16865 * win32/msvc71.sln:
16866 updates for the win32 build (patch from Sebastien Moutte)
16868 2005-10-10 Andy Wingo <wingo@pobox.com>
16870 * gst/gstbin.c (gst_bin_get_state_func): Renamed from
16871 gst_bin_get_state, cleaned up (but no logic changes).
16872 (bin_element_is_sink): Comment updates.
16873 (sink_iterator_filter): Remove needless cast.
16874 (gst_bin_iterate_sinks): Doc update.
16875 (gst_bin_change_state_func): Renamed from gst_bin_change_state,
16876 cleaned up (but no logic changes).
16878 * check/states/sinks.c (test_src_sink): Cleanups from the state
16879 change patch.
16880 (test_livesrc_sink): Sync on the state.
16882 * check/pipelines/simple_launch_lines.c (run_pipeline): Merge from
16883 the state change patch.
16885 * check/gst/gstghostpad.c (test_ghost_pads): Merge from the state
16886 change patch.
16888 * check/gst/gstbin.c: Merge in some style fixes and additional
16889 checks from Wim's state change patch.
16891 2005-10-10 Tim-Philipp Müller <tim at centricular dot net>
16893 * gst/base/gsttypefindhelper.c: (helper_find_peek),
16894 (gst_type_find_helper):
16895 Check whether we have the requested data already in our list of
16896 cached buffers before pulling a new buffer; also make the buffer
16897 list a GSList. Speeds up typefinding by ca. 5-10% altogether.
16899 2005-10-10 Thomas Vander Stichele <thomas at apestaart dot org>
16901 * gst/gstcaps.c:
16902 * gst/gstevent.c:
16903 doc updates
16904 * gst/gstvalue.c: (gst_value_deserialize_int_helper):
16905 don't use long long, it's not portable. Replacing with
16906 gint64 seems to work; let's hope no skeletons fall out of the closet.
16908 2005-10-10 Andy Wingo <wingo@pobox.com>
16910 * autogen.sh (CONFIGURE_DEF_OPT): No more --plugin-buiddir, yay
16912 2005-10-09 Stefan Kost <ensonic@users.sf.net>
16914 * docs/gst/gstreamer-sections.txt:
16915 * gst/gstevent.c:
16916 * gst/gstevent.h:
16917 * gst/gstinfo.c:
16918 * gst/gstinfo.h:
16919 * gst/gstmessage.c: (gst_message_parse_state_changed):
16920 * gst/gstpad.c:
16921 * gst/gstpad.h:
16922 more docs, fix compilation
16924 2005-10-09 Philippe Khalaf <burger@speedy.org>
16925 * gst/gstmessage.c:
16926 Fixed a few forgotten variables on previous commit
16928 2005-10-09 Tim-Philipp Müller <tim at centricular dot net>
16930 * gst/base/gsttypefindhelper.c: (helper_find_peek):
16931 Fix evil typefind crasher: getrange() might return a short
16932 buffer at the end of a file, but gst_type_find_peek() must
16933 either return the full data as requested or NULL, but
16934 never a short buffer.
16936 2005-10-09 Thomas Vander Stichele <thomas at apestaart dot org>
16938 * gst/gstmessage.c: (gst_message_new_state_changed),
16939 (gst_message_parse_state_changed):
16940 * gst/gstmessage.h:
16941 don't use "new", it's a C++ keyword
16943 2005-10-08 Wim Taymans <wim@fluendo.com>
16945 * gst/gstbin.c: (is_eos), (update_degree), (gst_bin_query):
16946 * gst/gstelement.c: (gst_element_post_message):
16947 * gst/gstpipeline.c: (gst_pipeline_change_state):
16948 Small docs and debug updates.
16950 2005-10-08 Stefan Kost <ensonic@users.sf.net>
16952 * docs/gst/gstreamer-sections.txt:
16953 * gst/gstelementfactory.c:
16954 * gst/gstevent.c:
16955 * gst/gsttaglist.c:
16956 more docs
16958 2005-10-08 Wim Taymans <wim@fluendo.com>
16960 * gst/gstbin.c: (is_eos), (update_degree), (gst_bin_change_state),
16961 (gst_bin_dispose), (bin_bus_handler):
16962 Fix typos, add comments.
16963 Clear EOS list when going to PAUSED from any direction and do it
16964 in a threadsafe way.
16965 Get base time in a threadsafe way too.
16966 Fix confusing debug in the change_state function.
16967 Various other small cleanups.
16969 * gst/gstelement.c: (gst_element_post_message):
16970 Fix very verbose bus posting code.
16972 * gst/gstpipeline.c: (gst_pipeline_class_init),
16973 (gst_pipeline_set_property), (gst_pipeline_get_property),
16974 (gst_pipeline_change_state):
16975 Small ARG_ -> PROP_ cleanup
16977 2005-10-08 Wim Taymans <wim@fluendo.com>
16979 * gst/gstbin.c: (is_eos), (bin_bus_handler):
16980 Do a less CPU demanding EOS check because we can.
16982 2005-10-08 Wim Taymans <wim@fluendo.com>
16984 * libs/gst/dataprotocol/dataprotocol.c:
16985 (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
16986 (gst_dp_packet_from_event):
16987 * libs/gst/dataprotocol/dataprotocol.h:
16988 * libs/gst/dataprotocol/dp-private.h:
16989 It's about time we bump the version number.
16990 Since event types don't fit in the guint8 anymore describing
16991 the payload type, make payload type 16 bits wide.
16993 2005-10-08 Wim Taymans <wim@fluendo.com>
16995 * docs/design/part-TODO.txt:
16996 * docs/design/part-clocks.txt:
16997 * docs/design/part-events.txt:
16998 * docs/design/part-gstbin.txt:
16999 * docs/design/part-gstelement.txt:
17000 * docs/design/part-gstpipeline.txt:
17001 * docs/design/part-live-source.txt:
17002 * docs/design/part-messages.txt:
17003 * docs/design/part-overview.txt:
17004 * docs/design/part-states.txt:
17005 Many doc updates.
17007 2005-10-08 Wim Taymans <wim@fluendo.com>
17009 * gst/gstevent.c:
17010 * gst/gstevent.h:
17011 Fix event quark registration.
17012 Add some space between events so we can insert them in the
17013 right groups.
17015 2005-10-08 Wim Taymans <wim@fluendo.com>
17017 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
17018 (gst_base_sink_handle_buffer):
17019 Better log message.
17021 * gst/gstbus.h:
17022 * gst/gstelement.h:
17023 More docs.
17025 * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
17026 (gst_queue_set_property), (gst_queue_get_property):
17027 * gst/gstqueue.h:
17028 Remove old unused properties.
17030 2005-10-08 Stefan Kost <ensonic@users.sf.net>
17031 * docs/gst/gstreamer-sections.txt:
17032 * gst/gstmessage.c:
17033 * gst/gstmessage.h:
17034 * gst/gstminiobject.c:
17035 * gst/gstminiobject.h:
17036 * gst/gstobject.h:
17037 * gst/gstpad.h:
17038 * gst/gstutils.h:
17039 lots of new docs and doc fixes
17041 2005-10-08 Thomas Vander Stichele <thomas at apestaart dot org>
17043 * gst/gstplugin.c: (gst_plugin_finalize), (gst_plugin_load_file):
17044 * gst/gstplugin.h:
17045 * gst/gstregistry.c: (gst_registry_lookup_locked),
17046 (gst_registry_scan_path_level):
17047 * gst/gstregistryxml.c: (load_plugin):
17048 Only ever load one plugin for a given plugin basename.
17049 This ensures correct overriding of GST_PLUGIN_PATH over
17050 GST_PLUGIN_SYSTEM_PATH and of home dir plugins over
17051 system installed plugins.
17053 2005-10-08 Wim Taymans <wim@fluendo.com>
17055 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
17056 (gst_base_sink_do_sync), (gst_base_sink_handle_buffer):
17057 Prepare for doing QOS.
17059 2005-10-08 Wim Taymans <wim@fluendo.com>
17061 * check/gst/gstbin.c: (GST_START_TEST):
17062 * check/pipelines/cleanup.c: (GST_START_TEST):
17063 * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
17064 Allow new clock message too.
17066 2005-10-08 Wim Taymans <wim@fluendo.com>
17068 * gst/gstmessage.c: (gst_message_new_error),
17069 (gst_message_new_warning), (gst_message_new_tag),
17070 (gst_message_new_state_changed), (gst_message_new_clock_provide),
17071 (gst_message_new_clock_lost), (gst_message_new_new_clock),
17072 (gst_message_new_segment_start), (gst_message_new_segment_done),
17073 (gst_message_parse_state_changed),
17074 (gst_message_parse_clock_provide), (gst_message_parse_clock_lost),
17075 (gst_message_parse_new_clock):
17076 * gst/gstmessage.h:
17077 Also carry the clock in question.
17079 2005-10-08 Wim Taymans <wim@fluendo.com>
17081 * gst/gstmessage.c: (gst_message_new_custom),
17082 (gst_message_new_eos), (gst_message_new_error),
17083 (gst_message_new_warning), (gst_message_new_tag),
17084 (gst_message_new_state_changed), (gst_message_new_clock_provide),
17085 (gst_message_new_new_clock), (gst_message_new_segment_start),
17086 (gst_message_new_segment_done), (gst_message_parse_state_changed),
17087 (gst_message_parse_clock_provide), (gst_message_parse_new_clock):
17088 * gst/gstmessage.h:
17089 Clean up.
17090 Added clock related messages.
17092 * gst/gstpipeline.c: (gst_pipeline_change_state):
17093 Post message when the clock changed.
17095 * tools/gst-launch.c: (event_loop):
17096 Print new clock.
17098 2005-10-08 Tim-Philipp Müller <tim at centricular dot net>
17100 * tools/gst-inspect.c: (print_element_properties_info):
17101 Can't pass NULL strings to g_print() on windows.
17103 2005-10-08 Thomas Vander Stichele <thomas at apestaart dot org>
17105 * docs/Makefile.am:
17106 * docs/gst/Makefile.am:
17107 * docs/gst/gstreamer-docs.sgml:
17108 * docs/gst/running.xml:
17109 * docs/version.entities.in:
17110 add a chapter on running GStreamer.
17111 document GST_DEBUG and GST_PLUGIN* env vars
17113 2005-10-08 Thomas Vander Stichele <thomas at apestaart dot org>
17115 * Makefile.am:
17116 remove include dir
17117 * configure.ac:
17118 remove PLUGINS_BUILDDIR stuff
17119 * gst/gst.c: (init_post):
17120 reorder parsing of GST_PLUGIN_PATH and GST_PLUGIN_SYSTEM_PATH
17121 * idiottest.mak:
17122 remove, it was condescending and not needed
17124 2005-10-08 Wim Taymans <wim@fluendo.com>
17126 * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_flush),
17127 (gst_base_sink_handle_object), (gst_base_sink_event),
17128 (gst_base_sink_wait), (gst_base_sink_handle_event),
17129 (gst_base_sink_change_state):
17130 * gst/base/gstbasesink.h:
17131 Repost EOS message while going to PLAYING if still EOS.
17132 Make sure that when receiving a FLUSH_START we don't attempt
17133 to sync on the clock anymore.
17135 2005-10-08 Wim Taymans <wim@fluendo.com>
17137 * tools/gst-launch.c: (event_loop):
17138 Better message printout.
17140 2005-10-08 Wim Taymans <wim@fluendo.com>
17142 * gst/gstbin.c: (gst_bin_child_proxy_get_child_by_index),
17143 (gst_bin_child_proxy_get_children_count):
17144 * gst/gstchildproxy.c: (gst_child_proxy_get_child_by_name),
17145 (gst_child_proxy_lookup), (gst_child_proxy_get_property),
17146 (gst_child_proxy_get_valist), (gst_child_proxy_set_property),
17147 (gst_child_proxy_set_valist):
17148 * gst/parse/grammar.y:
17149 Make ChildProxy threadsafe and fix mem leaks.
17151 2005-10-08 Thomas Vander Stichele <thomas at apestaart dot org>
17153 * gst/gst.c: (init_post):
17154 debug the GST_PLUGIN_ env vars
17156 2005-10-08 Wim Taymans <wim@fluendo.com>
17158 * check/gst/gstbin.c: (GST_START_TEST):
17159 * check/gst/gstmessage.c: (GST_START_TEST):
17160 * check/gst/gstpipeline.c: (GST_START_TEST), (message_received):
17161 * gst/gstelement.c: (gst_element_commit_state),
17162 (gst_element_lost_state):
17163 * gst/gstmessage.c: (gst_message_new_state_changed),
17164 (gst_message_parse_state_changed):
17165 * gst/gstmessage.h:
17166 * tools/gst-launch.c: (event_loop):
17167 Added extra field to STATE_CHANGE message with the pending
17168 state, which will be different from the new state soon.
17170 2005-10-08 Wim Taymans <wim@fluendo.com>
17172 * gst/gstbus.c: (gst_bus_pop):
17173 * gst/gstclock.c:
17174 * gst/gstsystemclock.c: (gst_system_clock_async_thread):
17175 Small cleanups and doc updates.
17177 2005-10-08 Thomas Vander Stichele <thomas at apestaart dot org>
17179 * gst/gst.c: (init_pre):
17180 * gst/gstbin.c: (gst_bin_add_func):
17181 log distributing clocks and base time
17182 * gst/gstregistry.c: (gst_registry_add_plugin),
17183 (gst_registry_scan_path_level), (gst_registry_scan_path):
17184 clean up the debugging output a little
17185 * gst/gstutils.c: (gst_element_state_get_name):
17186 warn about a memleak (I've actually seen this be used, though
17187 it was probably a bug)
17189 2005-10-07 Wim Taymans <wim@fluendo.com>
17191 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
17192 (gst_base_src_init), (gst_base_src_default_newsegment),
17193 (gst_base_src_newsegment), (gst_base_src_do_seek),
17194 (gst_base_src_loop), (gst_base_src_start):
17195 * gst/base/gstbasesrc.h:
17196 Make the newsegment event customizable by subclasses.
17198 2005-10-07 Wim Taymans <wim@fluendo.com>
17200 * gst/gstevent.c: (gst_event_new_buffersize),
17201 (gst_event_parse_buffersize):
17202 * gst/gstevent.h:
17203 New event for future idea.
17205 2005-10-07 Andy Wingo <wingo@pobox.com>
17207 * gst/gstelement.c (gst_element_post_message): Doc update.
17209 * docs/gst/gstreamer-sections.txt: Update.
17211 * gst/gstmessage.c (gst_message_new_application): Made into a
17212 function like honest API calls.
17213 (gst_message_new_element): New message type.
17215 * gst/gstmessage.h (enum): Add GST_MESSAGE_ELEMENT type.
17217 * check/elements/fakesrc.c (test_no_preroll): New check, checks
17218 that setting a live fakesrc to PAUSED returns NO_PREROLL both
17219 times.
17221 * gst/base/gstbasesrc.c (gst_base_src_change_state): Allow a
17222 NO_PREROLL from gst_element_change_state to fall through.
17224 2005-10-07 Wim Taymans <wim@fluendo.com>
17226 * gst/gstghostpad.c: (gst_ghost_pad_get_internal),
17227 (gst_ghost_pad_do_activate_push):
17228 Activating a ghostpad with no internal pad in push mode
17229 is ok.
17231 2005-10-07 Thomas Vander Stichele <thomas at apestaart dot org>
17233 * gst/gstobject.h:
17234 there's no point in wrapping FLAG_SET/_UNSET in STMT macros.
17235 Fixes compilation on Windows.
17237 2005-10-07 Michael Smith <msmith@fluendo.com>
17239 * tools/gst-inspect.c:
17240 Print out feature and plugin count at the end when printing out
17241 all features.
17243 2005-10-04 Michael Smith <msmith@fluendo.com>
17245 * gst/gsterror.c: (_gst_stream_errors_init):
17246 Add another error string used in a few existing plugins.
17248 * gst/gstplugin.c:
17249 * gst/gstpluginfeature.c: (gst_plugin_feature_load):
17250 * tools/gst-inspect.c: (print_element_info):
17251 When a feature disappears from a plugin (and the feature exists in
17252 the cached registry file), things went horribly wrong. This isn't a
17253 complete fix, we should actually be removing the 'missing' features
17254 from the features list when we load the actual plugin. That's not
17255 yet implemented.
17257 2005-10-04 Johan Dahlin <johan@gnome.org>
17259 * check/gst/gstiterator.c: (GST_START_TEST):
17260 * gst/gstbin.c: (gst_bin_iterate_elements),
17261 (gst_bin_iterate_recurse), (gst_bin_iterate_sorted):
17262 * gst/gstelement.c: (gst_element_iterate_pads):
17263 * gst/gstformat.c: (gst_format_iterate_definitions):
17264 * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
17265 (gst_iterator_new_list), (gst_iterator_filter):
17266 * gst/gstiterator.h:
17267 * gst/gstquery.c: (gst_query_type_iterate_definitions):
17268 Add a GType to GstIterator, update callsites and tests.
17270 2005-10-06 Thomas Vander Stichele <thomas at apestaart dot org>
17272 * gst/gstpad.c: (gst_pad_event_default_dispatch):
17273 give events a chance to be handled by event probes when the pad
17274 is not linked
17276 2005-10-06 Thomas Vander Stichele <thomas at apestaart dot org>
17278 * gst/gstevent.c: (gst_event_type_get_name),
17279 (gst_event_type_to_quark), (gst_event_finalize), (gst_event_new):
17280 * gst/gstevent.h:
17281 add string representations for event types
17283 2005-10-06 Wim Taymans <wim@fluendo.com>
17285 * gst/elements/gstfilesink.c: (gst_file_sink_close_file):
17286 Don't use NULL pointers.
17288 2005-10-06 Thomas Vander Stichele <thomas at apestaart dot org>
17290 * gst/gst_private.h:
17291 * gst/gstbus.c:
17292 * gst/gstelement.c:
17293 * gst/gstinfo.c:
17294 * gst/gstpluginfeature.c:
17295 widen the debug category in output to fit the biggest one we have
17296 add a bus category and use it
17297 play with the colors
17298 fix up some categories
17300 2005-10-06 Thomas Vander Stichele <thomas at apestaart dot org>
17302 * gst/gstghostpad.c: (gst_ghost_pad_internal_do_activate_push):
17303 add push activation of sink ghost pads.
17304 Andye, please verify
17306 2005-10-05 Thomas Vander Stichele <thomas at apestaart dot org>
17308 * gst/gstutils.c: (gst_element_link_pads):
17309 fix a bug in the case where neither element has a pad
17310 * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
17311 add a test for that case
17313 2005-10-05 Thomas Vander Stichele <thomas at apestaart dot org>
17315 * gst/gstpad.c: (gst_pad_push), (gst_pad_push_event):
17316 emit have-data before checking for peers. This allows
17317 for probe handlers to connect elements. This helps autopluggers.
17318 * check/gst/gstpad.c: (GST_START_TEST), (_probe_handler),
17319 (gst_pad_suite):
17320 add six checks, linked/unlinked with no/true/false probe
17322 2005-10-04 Wim Taymans <wim@fluendo.com>
17324 * gst/elements/gstfakesink.c: (gst_fake_sink_get_property),
17325 (gst_fake_sink_event), (gst_fake_sink_preroll),
17326 (gst_fake_sink_render), (gst_fake_sink_change_state):
17327 * gst/elements/gstfakesrc.c: (gst_fake_src_event_handler),
17328 (gst_fake_src_get_property), (gst_fake_src_create),
17329 (gst_fake_src_stop):
17330 * gst/elements/gstidentity.c: (gst_identity_stop):
17331 Protect last_message with lock.
17333 2005-10-04 Edward Hervey <edward@fluendo.com>
17335 * gst/gstformat.h:
17336 Added precision in the comments for GST_FORMAT_DEFAULT
17338 2005-10-04 Tim-Philipp Müller <tim at centricular dot net>
17340 * tools/gst-launch.c: (main):
17341 Don't try to run erroneous pipelines.
17343 2005-10-04 Julien MOUTTE <julien@moutte.net>
17345 * gst/gstbus.c: We don't need this header.
17347 2005-10-03 Thomas Vander Stichele <thomas at apestaart dot org>
17349 * configure.ac:
17350 back to development
17352 === release 0.9.3 ===
17354 2005-10-03 Thomas Vander Stichele <thomas at apestaart dot org>
17356 * README:
17357 * configure.ac:
17358 Releasing 0.9.3, "Unregistered"
17360 2005-10-03 Andy Wingo <wingo@pobox.com>
17362 * gst/gstpad.c (gst_pad_activate_push): There is a race condition
17363 whereby calling a pad's activatepush() function can start a thread
17364 that starts to push or pull before the pad gets the FLUSHING flag
17365 unset. Hack around it by holding the stream lock until the flag is
17366 set. Need to replace this with a proper solution. Together with
17367 the ghost pad fixes, this fixes mp3 playing/tagreading.
17369 * docs/design/part-gstghostpad.txt: Add a note about activation of
17370 proxy pads outside of ghost pads.
17372 * gst/gstghostpad.c: Implement the ghost pad activation design.
17374 2005-10-02 Andy Wingo <wingo@pobox.com>
17376 * gst/gstobject.h (GST_OBJECT_REFCOUNT_VALUE): Just use the int.
17377 It is volatile, after all.
17379 * docs/design/part-gstghostpad.txt: Flesh out activation with
17380 ghost pads.
17382 * gst/base/gstbasesrc.c (gst_base_src_init): Use
17383 GST_DEBUG_FUNCPTR.
17385 2005-10-02 Tim-Philipp Müller <tim at centricular dot net>
17387 * configure.ac:
17388 Fix (unused) AM_CONDITIONAL tests.
17390 2005-10-01 Alessandro Decina <alessandro at nnva dot org>
17392 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
17394 * gst/gstutils.c: (gst_pad_query_convert):
17395 Add assertion that makes sure src_val is >=0, just like
17396 gst_query_new_convert() has. (#315895)
17398 2005-09-30 Edward Hervey <edward@fluendo.com>
17400 * gst/elements/gsttee.c: (gst_tee_do_push), (gst_tee_handle_buffer):
17401 Let's not iterate pads we're not interested in, it avoids getting
17402 sky-high refcounts on sinkpad.
17404 2005-09-30 Wim Taymans <wim@fluendo.com>
17406 * gst/gstelement.c: (gst_element_set_state),
17407 (gst_element_change_state):
17408 Small tweak, element in ASYNC remains ASYNC.
17410 2005-09-30 Wim Taymans <wim@fluendo.com>
17412 * gst/base/gstbasesink.c: (gst_base_sink_change_state):
17413 Only error is an error.
17415 * gst/gstbin.c: (gst_bin_change_state):
17416 Better debugging.
17418 * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_chain):
17419 Also call pad_block in pad alloc.
17421 * gst/gstutils.c: (gst_flow_get_name):
17422 Better debugging.
17424 2005-09-29 Tim-Philipp Müller <tim at centricular dot net>
17426 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
17427 (gst_base_src_get_range):
17428 Fix documentation typos. Add some more debug info.
17430 2005-09-29 David Schleef <ds@schleef.org>
17432 * gst/gstplugin.c: (gst_plugin_load_file): Make some error messages
17433 more end-user friendly.
17434 * tools/gst-inspect.c: (main): Check if command-line argument is
17435 a file and attempt to load that file as a plugin.
17437 2005-09-29 Thomas Vander Stichele <thomas at apestaart dot org>
17439 * check/gst/gstbin.c:
17440 * check/states/sinks.c:
17441 fix tests for the new warning
17442 * check/gst/gstpipeline.c:
17443 add a test for pipeline and bus interaction
17444 * gst/gstelement.c:
17445 elements should be NULL if they get disposed; add a warning if not
17447 2005-09-29 Thomas Vander Stichele <thomas at apestaart dot org>
17449 * gst/gstobject.c:
17450 for 2.6 refcounting, make debug log more correct by printing
17451 the actual refcounts at the time of swap (Wim)
17453 2005-09-29 Andy Wingo <wingo@pobox.com>
17455 * gst/gstbus.c (gst_bus_remove_signal_watch): New function,
17456 removes signal watches previously added via
17457 gst_bus_add_signal_watch.
17458 (gst_bus_add_signal_watch): Don't return the source id, just store
17459 it on the bus if there wasn't an id already.
17461 * gst/gstbus.h (GstBus): Add a couple new fields. API changes for
17462 add_signal_watch and remove_signal_watch.
17464 2005-09-29 Edward Hervey <edward@fluendo.com>
17466 * libs/gst/controller/gstcontroller.c: (gst_controller_new_list):
17467 Better if we actually iterate the list :)
17469 2005-09-29 Wim Taymans <wim@fluendo.com>
17471 * check/gst/gstbin.c: (GST_START_TEST):
17472 Change for new bus API.
17474 * check/gst/gstbus.c: (message_func_eos), (message_func_app),
17475 (send_messages), (GST_START_TEST), (gstbus_suite):
17476 Change for new bus signal API.
17478 * gst/gstbus.c: (gst_bus_class_init), (gst_bus_have_pending),
17479 (gst_bus_source_prepare), (gst_bus_source_check),
17480 (gst_bus_create_watch), (gst_bus_add_watch_full),
17481 (gst_bus_add_watch), (gst_bus_poll), (gst_bus_async_signal_func),
17482 (gst_bus_sync_signal_handler), (gst_bus_add_signal_watch):
17483 * gst/gstbus.h:
17484 Remove support for multiple GSources operating on different
17485 message types as it is too complex and unneeded when using
17486 signals.
17487 Added support for receiving signals from the bus.
17489 2005-09-29 Thomas Vander Stichele <thomas at apestaart dot org>
17491 * docs/libs/tmpl/gstdataprotocol.sgml:
17492 * docs/manual/advanced-dataaccess.xml:
17493 * gst/elements/gstcapsfilter.c:
17494 * gst/gstutils.c:
17495 rename filter-caps to caps property
17497 2005-09-29 Tim-Philipp Müller <tim at centricular dot net>
17499 * gst/gstvalue.c: (gst_value_deserialize_fraction):
17500 More robust fraction string parsing.
17502 * docs/pwg/appendix-porting.xml:
17503 Mention gst_pad_use_explicit_caps() => gst_pad_use_fixed_caps()
17505 2005-09-29 Tim-Philipp Müller <tim at centricular dot net>
17507 * gst/gstcaps.c: (gst_caps_do_simplify):
17508 Thou shalt not free a structure and then continue using it
17509 in the next loop iteration.
17511 * check/gst/gstcaps.c: (check_fourcc_list), (test_simplify),
17512 (gst_caps_suite):
17513 Add test case for caps simplification.
17515 2005-09-29 Wim Taymans <wim@fluendo.com>
17517 * check/gst/gstbin.c: (GST_START_TEST):
17518 Oops.
17520 2005-09-29 Wim Taymans <wim@fluendo.com>
17522 * check/gst/gstbin.c: (GST_START_TEST):
17523 Add bus to bin.
17525 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init),
17526 (add_to_queue), (clear_queue), (reset_degree), (update_degree),
17527 (find_element), (gst_bin_sort_iterator_next),
17528 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
17529 (gst_bin_iterate_sorted), (gst_bin_element_set_state),
17530 (gst_bin_change_state), (gst_bin_dispose):
17531 A bin does not have a bus, it gets the bus from the parent.
17533 * gst/gstelement.c: (gst_element_requires_clock),
17534 (gst_element_provides_clock), (gst_element_is_indexable),
17535 (gst_element_is_locked_state), (gst_element_change_state),
17536 (gst_element_set_bus_func):
17537 Small cleanups.
17539 * gst/gstpipeline.c: (gst_pipeline_class_init),
17540 (gst_pipeline_init), (gst_pipeline_provide_clock_func):
17541 The pipeline provides a bus.
17543 2005-09-28 Johan Dahlin <johan@gnome.org>
17545 * gst/gstmessage.c (gst_message_parse_state_changed): Use
17546 gst_structure_get_enum instead of gst_structure_get_int
17548 * gst/gststructure.c (gst_structure_get_enum): Impl.
17550 * gst/gststructure.h (gst_structure_get_enum): Add
17552 * docs/gst/gstreamer-sections.txt: Ditto
17554 * gst/gstmessage.c (gst_message_new_state_changed): Use
17555 GST_TYPE_STATE instead of G_TYPE_INT, mainly for language bindings
17556 which does introspection.
17557 Reviewed by Christian Schaller
17559 2005-09-28 Stefan Kost <ensonic@users.sf.net>
17561 * gst/gstinfo.c: (gst_debug_log_default):
17562 don't do dummy g_strdup()s
17563 * libs/gst/controller/gstcontroller.c:
17564 (on_object_controlled_property_changed),
17565 (gst_controlled_property_new), (gst_controller_new_valist),
17566 (gst_controller_new_list),
17567 (gst_controller_remove_properties_valist), (gst_controller_set),
17568 (gst_controller_get), (gst_controller_sync_values),
17569 (gst_controller_get_value_array), (_gst_controller_class_init),
17570 (gst_controller_get_type):
17571 * libs/gst/controller/gstcontroller.h:
17572 * libs/gst/controller/gstinterpolation.c:
17573 (gst_controlled_property_find_timed_value_node):
17574 convert // to /**/ comments
17576 2005-09-28 Wim Taymans <wim@fluendo.com>
17578 * gst/gstbus.c: (marshal_VOID__MINIOBJECT), (gst_bus_class_init),
17579 (gst_bus_post), (poll_func), (gst_bus_async_signal_func),
17580 (gst_bus_sync_signal_handler):
17581 * gst/gstbus.h:
17582 Added async-message and sync-message signals to the bus.
17583 Added helper BusFunc to emit signals for all posted messages.
17585 * gst/gstmessage.c: (gst_message_type_get_name),
17586 (gst_message_type_to_quark), (gst_message_get_type):
17587 * gst/gstmessage.h:
17588 Register quarks for message names.
17590 2005-09-28 Stefan Kost <ensonic@users.sf.net>
17592 * docs/libs/gstreamer-libs-sections.txt:
17593 * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist),
17594 (gst_controller_new_list):
17595 * libs/gst/controller/gstcontroller.h:
17596 added another constructor for language bindings
17598 2005-09-28 Thomas Vander Stichele <thomas at apestaart dot org>
17600 * check/gst/gstpipeline.c: (GST_START_TEST), (gst_pipeline_suite):
17601 add another check
17602 * gst/gstbus.c:
17603 add some doc
17604 * gst/gstinfo.c: (_gst_debug_init):
17605 slightly more readable color for refcount debugging
17607 2005-09-28 Wim Taymans <wim@fluendo.com>
17609 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_provide_clock_func),
17610 (add_to_queue), (clear_queue), (reset_degree), (update_degree),
17611 (find_element), (gst_bin_sort_iterator_next),
17612 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
17613 (gst_bin_iterate_sorted), (gst_bin_element_set_state),
17614 (gst_bin_change_state), (gst_bin_dispose):
17615 Small doc fixes. get_clock -> provide_clock.
17617 * gst/gstelement.c: (gst_element_class_init),
17618 (gst_element_provides_clock), (gst_element_provide_clock),
17619 (gst_element_get_clock), (gst_element_commit_state),
17620 (gst_element_lost_state):
17621 * gst/gstelement.h:
17622 Make get/set_clock() symetric. Add provide_clock vmethod since
17623 that is actually what this function does.
17625 * gst/gstpipeline.c: (gst_pipeline_class_init),
17626 (gst_pipeline_change_state), (gst_pipeline_provide_clock_func),
17627 (gst_pipeline_get_clock):
17628 get_clock -> provide_clock.
17630 2005-09-28 Andy Wingo <wingo@pobox.com>
17632 * gst/base/gstbasesrc.c (gst_base_src_unlock): Comment a bit in
17633 lieu of real docs...
17635 * gst/elements/gstfdsrc.c: Cleaned up a bit.
17637 2005-09-28 Tim-Philipp Müller <tim at centricular dot net>
17639 * gst/elements/gstcapsfilter.c:
17640 * gst/elements/gstfakesink.c:
17641 * gst/elements/gstfakesrc.c:
17642 * gst/elements/gstfdsink.c:
17643 * gst/elements/gstfdsrc.c:
17644 * gst/elements/gstfilesink.c:
17645 * gst/elements/gstfilesrc.c:
17646 * gst/elements/gstidentity.c:
17647 * gst/elements/gsttee.c:
17648 * gst/elements/gsttypefindelement.c:
17649 Make element details static.
17651 2005-09-28 Wim Taymans <wim@fluendo.com>
17653 * gst/gstbin.c: (add_to_queue), (clear_queue), (reset_outdegree),
17654 (update_outdegree), (find_element), (gst_bin_sort_iterator_next),
17655 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
17656 (gst_bin_iterate_sorted), (gst_bin_element_set_state),
17657 (gst_bin_change_state), (gst_bin_dispose):
17658 Some documentation updates.
17659 Clean up dispose handlers.
17661 * gst/gstobject.c: (gst_object_ref), (gst_object_unref):
17662 * gst/gstpad.c: (gst_pad_dispose):
17663 Clean up dispose handler.
17665 * gst/gstpipeline.c: (gst_pipeline_change_state):
17666 Removed spurious UNLOCK.
17668 2005-09-27 Stefan Kost <ensonic@users.sf.net>
17670 * docs/gst/gstreamer-sections.txt:
17671 * gst/base/gstbasesrc.h:
17672 * gst/gstelement.h:
17673 * gst/gstevent.h:
17674 * gst/gstobject.h:
17675 * gst/gstpad.h:
17676 * gst/gstpipeline.c:
17677 * gst/gstpipeline.h:
17678 * gst/gstutils.h:
17679 * gst/gstxml.h:
17680 added two new functions to the docs
17681 documents all undocumented GstXXXFlags
17682 completed some incomplete docs
17684 2005-09-27 Thomas Vander Stichele <thomas at apestaart dot org>
17686 * gst/gstbin.c: (gst_bin_dispose):
17687 * gst/gstelement.c: (gst_element_dispose):
17688 remove now useless and leaky resurrection code in dispose
17689 * gst/base/gstbasesrc.c: (gst_base_src_init):
17690 * gst/gstelementfactory.c: (gst_element_factory_create):
17691 * gst/gstobject.c: (gst_object_set_parent):
17692 add some debugging
17694 2005-09-27 Wim Taymans <wim@fluendo.com>
17696 * docs/design/part-TODO.txt:
17697 Update TODO.
17699 * gst/gstbin.c: (add_to_queue), (clear_queue), (reset_outdegree),
17700 (update_outdegree), (find_element), (gst_bin_sort_iterator_next),
17701 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
17702 (gst_bin_iterate_sorted), (gst_bin_element_set_state),
17703 (gst_bin_change_state):
17704 * gst/gstelement.h:
17705 Remove element variable, we keep element info in the iterator now.
17707 2005-09-27 Andy Wingo <wingo@pobox.com>
17709 * libs/gst/dataprotocol/dataprotocol.c: Fix error-checking return
17710 values.
17712 2005-09-27 Wim Taymans <wim@fluendo.com>
17714 * check/gst/gstbin.c: (GST_START_TEST):
17715 Enable check that works now.
17717 * gst/gstbin.c: (add_to_queue), (clear_queue), (reset_outdegree),
17718 (update_outdegree), (find_element), (gst_bin_sort_iterator_next),
17719 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
17720 (gst_bin_iterate_sorted), (gst_bin_element_set_state),
17721 (gst_bin_change_state):
17722 * gst/gstbin.h:
17723 Redid the state change algorithm using a topological sort algo.
17724 Handles all cases correctly.
17725 Exposed iterator for state change order.
17727 * gst/gstelement.h:
17728 Temp storage for state changes. Need to get rid of this soon.
17730 2005-09-27 Wim Taymans <wim@fluendo.com>
17732 * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_do_push):
17733 * gst/gstutils.c: (intersect_caps_func), (gst_pad_proxy_getcaps),
17734 (link_fold_func), (gst_pad_proxy_setcaps):
17735 Leak fixes, the fold functions need to unref the passed object and
17736 _get_parent_*() returns ref to parent.
17738 2005-09-27 Tim-Philipp Müller <tim at centricular dot net>
17740 * check/gst/gstbuffer.c: (test_make_writable):
17741 Plug leak in test case and fix 'make check-valgrind'
17743 2005-09-27 Tim-Philipp Müller <tim at centricular dot net>
17745 * gst/gstbuffer.c: (gst_subbuffer_init):
17746 Set READONLY flag on subbuffers, so that gst_buffer_make_writable()
17747 works correctly in all circumstances (we could have just copied
17748 the parent buffer's readonly flag, but conceptually it seems
17749 cleaner to mark all subbuffers as read-only). (based on patch
17750 by Alessandro Decina, #314710).
17752 * check/gst/gstbuffer.c: (create_read_only_buffer),
17753 (test_make_writable), (test_subbuffer_make_writable),
17754 (gst_test_suite):
17755 Add some tests for gst_buffer_make_writable().
17757 2005-09-27 Wim Taymans <wim@fluendo.com>
17759 * gst/gstbin.c: (bin_element_is_semi_sink), (gst_bin_change_state):
17760 use gst_object_has_ancestor().
17762 * gst/gstobject.c: (gst_object_has_ancestor):
17763 * gst/gstobject.h:
17764 gst_object_has_ancestor() copied from gstbin.c as it is a
17765 useful function.
17767 * tests/instantiate/create.c: (create_all_elements):
17768 * tests/lat.c: (handoff_src), (handoff_sink):
17769 * tests/sched/runxml.c: (main):
17770 * tests/seeking/seeking1.c: (main):
17771 * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
17772 (main):
17773 Fix compilation of some tests.
17775 2005-09-27 Tim-Philipp Müller <tim at centricular dot net>
17777 * gst/gsterror.h:
17778 Remove comment. GST_TYPE_G_ERROR is here to stay,
17779 G_TYPE_ERROR has been WONTFIX'ed by the GLib folks
17780 (#316961, #300610).
17782 2005-09-26 Wim Taymans <wim@fluendo.com>
17784 * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
17785 Added check that shows error in state change order.
17787 2005-09-26 Wim Taymans <wim@fluendo.com>
17789 * gst/gstbin.c: (gst_bin_change_state):
17790 Make state change function use 3 queues again, we were
17791 adding elements in the wrong order.
17793 * gst/gstghostpad.c: (gst_ghost_pad_do_unlink):
17794 Some debug info,
17796 * gst/gstpad.c: (gst_pad_dispose):
17797 Added some debug info first.
17799 2005-09-26 Tim-Philipp Müller <tim at centricular dot net>
17801 * docs/design/draft-push-pull.txt:
17802 * docs/design/part-events.txt:
17803 * docs/design/part-overview.txt:
17804 * docs/design/part-scheduling.txt:
17805 Replace all _pull_region() with _pull_range()
17807 2005-09-26 Andy Wingo <wingo@pobox.com>
17809 * gst/gstvalue.c (_gst_value_initialize): Better fakeout.
17811 * check/gst-libs/controller.c: Update for controller api change.
17813 * configure.ac:
17814 * tests/Makefile.am:
17815 * tests/memchunk: Remove memchunk benchmark stuff, this is taken
17816 over by GLib bug 118439.
17818 * gst/base/gstbasesink.c (gst_base_sink_wait): Factor out the wait
17819 routines to a function.
17821 * docs/libs/gstreamer-libs-sections.txt: I am a good person today.
17823 * libs/gst/controller/gsthelper.c:
17824 * libs/gst/controller/gstcontroller.h (gst_controller_sync_values)
17825 (gst_object_sync_values): Renamed from sink_values. Ugh.
17827 * libs/gst/controller/gsthelper.c: Update for __gst_controller_key.
17829 * libs/gst/controller/gstcontroller.c (__gst_controller_key):
17830 Renamed from controller_key, as it is exported.
17832 * gst/gstvalue.c (_gst_value_initialize): Fake out the compiler.
17834 2005-09-26 Thomas Vander Stichele <thomas at apestaart dot org>
17836 * gst/Makefile.am:
17837 * gst/gst.h:
17838 * gst/gstpad.h:
17839 * gst/gstpadtemplate.h:
17840 * gst/gstquery.c:
17841 * gst/gstquery.h:
17842 * gst/gstqueryutils.c:
17843 * gst/gstqueryutils.h:
17844 remove queryutils headers after moving the two used functions
17845 to gstquery. also fixes build problem for gstsiddec
17847 2005-09-26 Michael Smith <msmith@fluendo.com>
17849 * tools/gst-launch.1.in:
17850 Correct documentation in manpage of debug syntax
17852 2005-09-26 Wim Taymans <wim@fluendo.com>
17854 * gst/base/gstbasesrc.c: (gst_base_src_get_range),
17855 (gst_base_src_is_seekable), (gst_base_src_change_state):
17856 Some more debugging info.
17858 2005-09-25 Stefan Kost <ensonic@users.sf.net>
17860 * docs/gst/gstreamer-sections.txt:
17861 * gst/base/gstbasetransform.h:
17862 * gst/gstindex.h:
17863 added more docs
17865 2005-09-25 Stefan Kost <ensonic@users.sf.net>
17867 * docs/gst/.cvsignore:
17868 * docs/gst/tmpl/.cvsignore:
17869 * docs/gst/tmpl/gstpipeline.sgml:
17870 * docs/gst/tmpl/gstplugin.sgml:
17871 * gst/gstpipeline.c:
17872 * gst/gstplugin.c:
17873 * gst/gstplugin.h:
17874 inlined the last two docs files
17875 removed the tmpl directory from cvs (no more conflicts here!)
17877 2005-09-25 Stefan Kost <ensonic@users.sf.net>
17879 * docs/gst/gstreamer-sections.txt:
17880 * docs/gst/tmpl/.cvsignore:
17881 * docs/gst/tmpl/gstpad.sgml:
17882 * docs/gst/tmpl/gstpadtemplate.sgml:
17883 * gst/Makefile.am:
17884 * gst/gstpad.c: (gst_pad_class_init), (gst_pad_dispose),
17885 (gst_pad_finalize), (gst_pad_set_pad_template):
17886 * gst/gstpad.h:
17887 * gst/gstpadtemplate.c: (gst_pad_template_get_type),
17888 (gst_pad_template_class_init), (gst_pad_template_init),
17889 (gst_pad_template_dispose), (name_is_valid),
17890 (gst_static_pad_template_get), (gst_pad_template_new),
17891 (gst_static_pad_template_get_caps), (gst_pad_template_get_caps),
17892 (gst_pad_template_pad_created):
17893 * gst/gstpadtemplate.h:
17894 inlined two more docs
17895 factored gstpadtemplate out of gstpad
17897 2005-09-24 Tim-Philipp Müller <tim at centricular dot net>
17899 * check/gst/gstbin.c: (test_children_state_change_order_flagged_sink),
17900 (test_children_state_change_order_semi_sink):
17901 Fix test case: we can't rely on a fixed state change order when
17902 going from READY => PAUSED because the sink might commit its
17903 new state first when the first buffer created by the source
17904 reaches the sink before the source has finished its change state.
17905 (Test case still fails at times, see #316856, comment 5 onwards)
17907 2005-09-24 Wim Taymans <wim@fluendo.com>
17909 * docs/design/part-events.txt:
17910 * docs/design/part-gstbus.txt:
17911 * docs/design/part-gstpipeline.txt:
17912 * docs/design/part-messages.txt:
17913 * docs/design/part-overview.txt:
17914 * docs/design/part-segments.txt:
17915 * gst/gstbin.c:
17916 * gst/gstbuffer.c:
17917 * gst/gstclock.c:
17918 * gst/gstelement.c:
17919 * gst/gstevent.c:
17920 * gst/gstfilter.c:
17921 * gst/gstiterator.c:
17922 Various documentation updates.
17924 2005-09-24 Thomas Vander Stichele <thomas at apestaart dot org>
17926 * gst/gstclock.h:
17927 Well, that's embarassing. Luckily we weren't using
17928 GST_CLOCK_DIFF anywhere.
17930 2005-09-23 Thomas Vander Stichele <thomas at apestaart dot org>
17932 * common/gtk-doc.mak:
17933 don't fail on building XML, FC4 slave shows a bunch of doc
17934 missing bits that I don't get
17935 * gst/gstpad.c:
17936 * gst/gstpipeline.c:
17937 * gst/gststructure.c:
17938 some doc updates
17940 2005-09-23 Tim-Philipp Müller <tim at centricular dot net>
17942 * docs/design/part-gstbin.txt:
17943 * docs/design/part-gstbus.txt:
17944 * gst/gstbus.c:
17945 Add blurb about how the bus goes into flushing mode and
17946 drops all messages when its bin goes from READY into NULL
17947 state.
17949 2005-09-23 Thomas Vander Stichele <thomas at apestaart dot org>
17951 * docs/gst/gstreamer-sections.txt:
17952 * gst/gststructure.c: (gst_structure_get_clock_time):
17953 * gst/gststructure.h:
17954 add a method to get a GstClockTime out of a structure
17956 2005-09-23 Tim-Philipp Müller <tim at centricular dot net>
17958 * check/gst/gstbin.c: (test_children_state_change_order_flagged_sink),
17959 (test_children_state_change_order_semi_sink), (gst_bin_suite):
17960 Added test to check state change order in bins (can still be made
17961 to fail here under heavy disk load; bails out with 'Push on pad
17962 fakesink:sink0, but it was not activated in push mode').
17964 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_change_state):
17965 Fix state change order when there is only a semi sink (#316856)
17967 * gst/gstbus.c: (gst_bus_class_init):
17968 Use _class_peek_parent(), not _class_ref(); fix docs to say
17969 'default main context' instead of 'mainloop' where that is
17970 what's meant.
17972 * gst/gstelement.c: (gst_element_commit_state),
17973 (gst_element_set_state):
17974 Fix typos in debug messages
17976 2005-09-23 Thomas Vander Stichele <thomas at apestaart dot org>
17978 * docs/README:
17979 * gst/gstpad.c: (gst_pad_class_init), (gst_pad_chain):
17980 * gst/gstpluginfeature.c:
17981 * gst/gstutils.c:
17982 various doc updates
17983 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
17984 change an assert into an error until it gets fixed properly
17986 2005-09-23 Stefan Kost <ensonic@users.sf.net>
17988 * docs/gst/gstreamer-sections.txt:
17989 * docs/gst/tmpl/.cvsignore:
17990 * docs/gst/tmpl/gstelement.sgml:
17991 * docs/gst/tmpl/gstinfo.sgml:
17992 * docs/gst/tmpl/gstobject.sgml:
17993 * gst/gstelement.c:
17994 * gst/gstelement.h:
17995 * gst/gstinfo.c:
17996 * gst/gstinfo.h:
17997 * gst/gstobject.c: (gst_object_class_init):
17998 * gst/gstobject.h:
17999 inlined 3 more biiiig doc files and added some missing docs on the fly
18001 2005-09-23 Thomas Vander Stichele <thomas at apestaart dot org>
18003 * check/gst/.cvsignore:
18004 * check/gst/gstplugin.c: (GST_START_TEST), (gst_plugin_suite):
18005 * gst/gstregistryxml.c: (load_plugin),
18006 (gst_registry_xml_save_plugin):
18007 put back source in registry. add checks for find_plugin.
18008 * testsuite/states/bin.c: (assert_state), (empty_bin),
18009 (test_adding_one_element), (main):
18010 * testsuite/states/locked.c: (main):
18011 some compile/run fixes
18013 2005-09-22 Thomas Vander Stichele <thomas at apestaart dot org>
18015 * check/gst/gstvalue.c: (GST_START_TEST):
18016 fix leaks in the test itself
18018 2005-09-22 Wim Taymans <wim@fluendo.com>
18020 * gst/base/gstbasesink.c: (gst_base_sink_class_init),
18021 (gst_base_sink_send_event), (gst_base_sink_peer_query),
18022 (gst_base_sink_query):
18023 Prepare for more accurate position reporting and query
18024 handling.
18026 * gst/gstelement.c: (gst_element_send_event),
18027 (gst_element_set_state):
18028 Add some comment.
18030 2005-09-22 Wim Taymans <wim@fluendo.com>
18032 * gst/gstquery.c: (gst_query_new_segment), (gst_query_set_segment),
18033 (gst_query_parse_segment):
18034 * gst/gstquery.h:
18035 More documentation.
18036 Add segment query for future use.
18038 2005-09-22 Wim Taymans <wim@fluendo.com>
18040 * gst/gstbin.c: (gst_bin_add_func):
18041 Some more debug info.
18043 * gst/gstelement.c: (gst_element_send_event):
18044 Simplify send_event
18046 * gst/gstelement.h:
18047 Don't know how flags got broken.
18049 * gst/gstquery.h:
18050 Added new query.
18052 2005-09-22 Tim-Philipp Müller <tim at centricular dot net>
18054 * check/gst/gstvalue.c: (test_date), (gst_value_suite):
18055 Add simplistic test suite for GST_TYPE_DATE serialisation and
18056 deserialisation.
18058 2005-09-22 Tim-Philipp Müller <tim at centricular dot net>
18060 * docs/gst/gstreamer-sections.txt:
18061 * gst/gststructure.c: (gst_structure_set_valist),
18062 (gst_structure_get_date):
18063 * gst/gststructure.h:
18064 * gst/gstvalue.c: (gst_value_set_date), (gst_value_get_date),
18065 (gst_date_copy), (gst_value_compare_date),
18066 (gst_value_serialize_date), (gst_value_deserialize_date),
18067 (gst_value_transform_date_string),
18068 (gst_value_transform_string_date), (_gst_value_initialize):
18069 * gst/gstvalue.h:
18070 Add GST_TYPE_DATE, a boxed type that wraps GDate, and the usual
18071 bunch of utility functions along with a hack that checks that
18072 developers don't accidentally use G_TYPE_DATE where GST_TYPE_DATE
18073 is required. Part of the grand scheme in #170777.
18075 2005-09-22 Andy Wingo <wingo@pobox.com>
18077 * gst/gstconfig.h.in: Psych out gtk-doc.
18079 * docs/gst/gstreamer-sections.txt: Add GST_HAVE_GLIB_2_8.
18081 * check/Makefile.am (check_PROGRAMS): Add gstplugin to the tests.
18083 * tools/gst-inspect.c (print_element_list): Plug some
18084 inconsequential leaks.
18086 * gst/gstregistry.c (gst_registry_get_default): Doc.
18088 * check/gst/gstplugin.c:
18089 * gst/gsttypefindfactory.c (gst_type_find_factory_call_function):
18090 * gst/gstelementfactory.c (gst_element_factory_create):
18091 * gst/gstindexfactory.c (gst_index_factory_create): Update for
18092 refcount changes.
18094 * gst/gstpluginfeature.c (gst_plugin_feature_list_free): Doc.
18095 (gst_plugin_feature_load): Doc, don't eat refs.
18097 * gst/gstplugin.c (gst_plugin_load): Doc, don't eat refs.
18098 (gst_plugin_list_free): Doc.
18099 (gst_plugin_load_file): Doc updates.
18101 * gst/gstbuffer.c (gst_buffer_get_caps): Like all our _get
18102 accessors returning refcounted objects, return a ref.
18104 * check/gst/gstbuffer.c (GST_START_TEST): Use refcount-idempotent
18105 accessor for caps. IDEMPOTENCE. Oh yes.
18107 2005-09-21 Francis Labonte <francis_labonte at hotmail dot com>
18109 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
18111 * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
18112 (_gst_debug_register_funcptr):
18113 Add mutex to serialise access to the hash table with
18114 the function pointer => function name string mapping;
18115 make that hash table static scope (#316809).
18117 * gst/registries/.cvsignore:
18118 Remove left-over file.
18120 2005-09-21 Tim-Philipp Müller <tim at centricular dot net>
18122 * docs/pwg/appendix-porting.xml:
18123 And something about newsegment events and caps-on-buffers to
18124 the porting guide (feel free to improve).
18126 2005-09-21 Andy Wingo <wingo@pobox.com>
18128 * check/gst/gstutils.c (test_buffer_probe_n_times): Add tests for
18129 data and event probes on the same pad.
18130 (test_buffer_probe_once): Test that removing probes from within
18131 the probe functions works.
18133 2005-09-21 Andy Wingo <wingo@pobox.com>
18135 * check/gst/gstutils.c: New file.
18136 (test_buffer_probe_n_times): A simple buffer probe test. More to
18137 come, foolios.
18139 * gst/gstutils.c (gst_pad_add_buffer_probe): Connect to
18140 have-data::buffer, not have-data.
18141 (gst_pad_add_event_probe): Likewise for have-data::event.
18142 (gst_pad_add_data_probe): More docs. The part about 'resolving the
18143 peer' isn't quite right yet though.
18144 (gst_pad_remove_buffer_probe, gst_pad_remove_event_probe)
18145 (gst_pad_remove_data_probe): Change to take the guint handler_id
18146 as their arg, not the function+data, which is more glib-like.
18148 * gst/gstpad.c (gst_pad_emit_have_data_signal): Add a detail to
18149 the signal emission to indicate if the data is a buffer or an
18150 event.
18151 (gst_pad_get_type): Initialize buffer and event quarks.
18152 (gst_pad_class_init): have-data is now a detailed signal, yes it
18153 is.
18155 2005-09-21 Tim-Philipp Müller <tim at centricular dot net>
18157 * gst/base/gstbasetransform.c: (gst_base_transform_transform_size):
18158 * gst/gstutils.c: (gst_util_set_value_from_string),
18159 (gst_util_set_object_arg):
18160 Don't put functional code in g_return_if_fail() or
18161 g_return_val_if_fail() statements, otherwise things will
18162 break when G_DISABLE_CHECKS is defined during compilation.
18164 2005-09-21 Stefan Kost <ensonic@users.sf.net>
18166 * docs/gst/tmpl/.cvsignore:
18167 * docs/gst/tmpl/gstvalue.sgml:
18168 * gst/gstvalue.c:
18169 * gst/gstvalue.h:
18170 inlied another one and added some obvious docs
18172 2005-09-21 Wim Taymans <wim@fluendo.com>
18174 * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
18175 (gst_fdsrc_init), (gst_fdsrc_start), (gst_fdsrc_stop),
18176 (gst_fdsrc_unlock), (gst_fdsrc_set_property),
18177 (gst_fdsrc_get_property), (gst_fdsrc_create):
18178 * gst/elements/gstfdsrc.h:
18179 Properly implement fdsrc. Removed signal and timeout,
18180 better implemented somewhere else.
18182 2005-09-21 Stefan Kost <ensonic@users.sf.net>
18184 * docs/gst/tmpl/.cvsignore:
18185 * docs/gst/tmpl/gstimplementsinterface.sgml:
18186 * gst/gstinterface.c:
18187 inlined more docs
18189 2005-09-21 Stefan Kost <ensonic@users.sf.net>
18191 * docs/gst/gstreamer-sections.txt:
18192 * docs/gst/tmpl/.cvsignore:
18193 * docs/gst/tmpl/gstenumtypes.sgml:
18194 remove obsolete doc file
18196 2005-09-21 David Schleef <ds@schleef.org>
18198 * gst/gstelementfactory.c: (gst_element_factory_make): Drink a
18199 little beer, fix a little leak.
18201 2005-09-21 Stefan Kost <ensonic@users.sf.net>
18203 * docs/gst/gstreamer-docs.sgml:
18204 * docs/gst/gstreamer-sections.txt:
18205 * docs/gst/tmpl/.cvsignore:
18206 * gst/Makefile.am:
18207 * gst/gst.h:
18208 * gst/gstbin.c:
18209 * gst/gstelement.h:
18210 * gst/gstindex.c: (gst_index_class_init):
18211 * gst/gstindex.h:
18212 * gst/gstindexfactory.c: (gst_index_factory_get_type),
18213 (gst_index_factory_class_init), (gst_index_factory_init),
18214 (gst_index_factory_finalize), (gst_index_factory_new),
18215 (gst_index_factory_destroy), (gst_index_factory_find),
18216 (gst_index_factory_create), (gst_index_factory_make):
18217 * gst/gstindexfactory.h:
18218 * gst/gstpluginfeature.c:
18219 * gst/gstpluginfeature.h:
18220 * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist):
18221 more docs inlined, splitted gstindex.{c,h}
18223 2005-09-20 Thomas Vander Stichele <thomas at apestaart dot org>
18225 * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist):
18226 fix a leak
18228 2005-09-20 Tim-Philipp Müller <tim at centricular dot net>
18230 * gst/elements/gstfilesink.c: (gst_file_sink_init):
18231 Set sync to FALSE by default.
18233 2005-09-20 Wim Taymans <wim@fluendo.com>
18235 * gst/base/gstbasesink.c: (gst_base_sink_class_init),
18236 (gst_base_sink_init):
18237 Make sync property settable from subclass.
18239 * gst/elements/gstfakesink.c: (gst_fake_sink_init),
18240 (gst_fake_sink_change_state):
18241 Set sync to FALSE by default.
18243 2005-09-20 Wim Taymans <wim@fluendo.com>
18245 * gst/gstbus.c: (poll_func), (poll_timeout), (gst_bus_poll):
18246 * tools/gst-launch.c: (main):
18247 The timeout handler should have lower priority than the source
18248 so we don't timeout before popping a message with 0 timeout.
18249 Dump error messages after failed state change.
18251 2005-09-20 Tim-Philipp Müller <tim at centricular dot net>
18253 * tools/gst-inspect.c: (print_element_properties_info):
18254 Fix two typos.
18256 2005-09-20 Thomas Vander Stichele <thomas at apestaart dot org>
18258 * check/gst/gstevent.c:
18259 * gst/elements/gstfakesink.c:
18260 * gst/elements/gstfakesink.h:
18261 remove the sync property from fakesink.
18262 has the side effect of setting sync TRUE
18263 for fakesink, which is a change. Anyone who knows how
18264 to fix this nicely in a GObject-y way, feel free.
18266 2005-09-20 Stefan Kost <ensonic@users.sf.net>
18268 * docs/gst/gstreamer-docs.sgml:
18269 remove probe refsection
18271 2005-09-20 Stefan Kost <ensonic@users.sf.net>
18273 * check/Makefile.am:
18274 disable valgrinding the controller test again
18275 * docs/gst/gstreamer-sections.txt:
18276 update for api-changes
18278 2005-09-20 Wim Taymans <wim@fluendo.com>
18280 * gst/base/gstbasesink.c: (gst_base_sink_class_init),
18281 (gst_base_sink_set_property), (gst_base_sink_get_property),
18282 (gst_base_sink_do_sync):
18283 * gst/base/gstbasesink.h:
18284 Added sync property to basesink to disable clock sync.
18286 2005-09-20 Andy Wingo <wingo@pobox.com>
18288 * gst/gstelementfactory.c (gst_element_factory_create): Avoid
18289 eating the caller's refcount.
18291 * gst/gstobject.h (GST_OBJECT_REFCOUNT)
18292 (GST_OBJECT_REFCOUNT_VALUE): Conditionally fondle the right
18293 refcount.
18295 * gst/gstconfig.h.in (GST_HAVE_GLIB_2_8):
18296 * configure.ac (GST_HAVE_GLIB_2_8_DEFINE): Make the availability
18297 of GLib 2.8 public, so we can know which refcount to check in
18298 tests.
18300 * gst/gstobject.c: Use the GST_HAVE_GLIB_2_8 define.
18301 (gst_object_init): Only set the gst refcount if we're going ahead
18302 with the refcount hack.
18304 2005-09-20 Stefan Kost <ensonic@users.sf.net>
18306 * check/gst-libs/controller.c: (plugin_init), (GST_START_TEST):
18307 * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist):
18308 more leaks plumbed, added more debug-logging
18309 * gst/gstmacros.h:
18310 whitespace fix
18312 2005-09-20 Thomas Vander Stichele <thomas at apestaart dot org>
18314 * gst/gstmessage.c:
18315 remove include of gstmemchunk.h
18317 2005-09-20 Thomas Vander Stichele <thomas at apestaart dot org>
18319 * gst/gstclock.c: (_gst_clock_id_free):
18320 Commit from the Political Party For More Atomic CVS Commits,
18321 so that people don't waste too much of their day fishing
18322 out obvious leaks out of massive commits.
18323 Oh, and fix a pretty damn obvious leak in the memchunk
18324 removal code.
18326 2005-09-20 Stefan Kost <ensonic@users.sf.net>
18328 * check/Makefile.am:
18329 * check/gst-libs/controller.c: (plugin_init), (GST_START_TEST):
18330 plug mem-leak, re-add to valgrindable tests
18332 2005-09-20 Thomas Vander Stichele <thomas at apestaart dot org>
18334 * gst/gstplugin.h:
18335 unbreak the build for those who have chronic arthritis
18336 and typing "make check" is just too taxing on the hands
18338 2005-09-20 Andy Wingo <wingo@pobox.com>
18340 * gst/gst.h: Re-add marshal to gst.h's include list -- if we
18341 really want it out, you should fix plugins at the same time.
18343 2005-09-19 Stefan Kost <ensonic@users.sf.net>
18345 * configure.ac:
18346 * docs/gst/gstreamer-sections.txt:
18347 * gst/gstobject.c:
18348 added missing symbols to api docs
18349 disable ref-count hack if we have glib >= 2.8
18351 2005-09-19 David Schleef <ds@schleef.org>
18353 * docs/gst/Makefile.am: Ignore a few more internal headers
18354 * docs/gst/gstreamer-docs.sgml: Remove old sections
18355 * docs/gst/gstreamer-sections.txt: Remove old sections
18356 * docs/gst/tmpl/gstobject.sgml: update
18357 * docs/gst/tmpl/gstplugin.sgml: update
18358 * docs/gst/tmpl/gstpluginfeature.sgml: update
18359 * docs/random/ds/0.9-suggested-changes: update.
18360 * gst/Makefile.am: remove memchunk and trashstack, since they're
18361 not used.
18362 * gst/gst.c: (gst_deinit): rename gst_registry_deinit to _cleanup
18363 * gst/gst.h: don't include some headers
18364 * gst/gstchildproxy.c: add gstmarshal.h
18365 * gst/gstclock.c: Don't use memchunks
18366 * gst/gstminiobject.c: Add some docs
18367 * gst/gstobject.c: remove DESTROYED flag, since it's redundant
18368 * gst/gstobject.h: same
18369 * gst/gstplugin.c: include gstmacros.h
18370 * gst/gstplugin.h: don't include gstmacros.h, since it's private
18371 * gst/gstquery.c: don't use memchunks
18372 * gst/gstregistry.c: rename gst_registry_deinit()
18373 * gst/gstregistry.h: same
18375 2005-09-19 David Schleef <ds@schleef.org>
18377 * docs/libs/gstreamer-libs-docs.sgml: Remove docs for getbits
18378 * docs/libs/gstreamer-libs-sections.txt:
18379 * docs/libs/tmpl/gstgetbits.sgml:
18380 * docs/libs/tmpl/gstputbits.sgml:
18382 2005-09-19 Tim-Philipp Müller <tim at centricular dot net>
18384 * win32/gstenumtypes.c:
18385 * win32/gstenumtypes.h:
18386 Update.
18388 2005-09-19 Wim Taymans <wim@fluendo.com>
18390 * gst/gstpipeline.c: (do_pipeline_seek), (gst_pipeline_send_event):
18391 Automatically PAUSE and RESUME a pipeline when a flushing seek
18392 is performed.
18394 2005-09-19 Andy Wingo <wingo@pobox.com>
18396 * gst/gstregistry.h: Spacing fixen.
18398 2005-09-19 Wim Taymans <wim@fluendo.com>
18400 * gst/base/gstbasesrc.c: (gst_base_src_change_state):
18401 Handle state change failure more correctly.
18403 2005-09-19 Thomas Vander Stichele <thomas at apestaart dot org>
18405 * check/Makefile.am:
18406 * check/pipelines/cleanup.c: (run_pipeline):
18407 * check/pipelines/simple_launch_lines.c: (run_pipeline),
18408 (GST_START_TEST):
18409 enable cleanup again after fixing the leak
18410 * docs/README:
18411 some more info on docs
18413 2005-09-19 Thomas Vander Stichele <thomas at apestaart dot org>
18415 * check/Makefile.am:
18416 re-enable tests now that leaks are plugged
18417 * check/gst/gst.c:
18418 * check/gst/gstbin.c:
18419 * check/gst/gstpipeline.c:
18420 add some more tests while fixing leaks
18421 * common/check.mak:
18422 make sure binaries are uptodate when valgrinding/gdbing
18423 * gst/gst.c:
18424 * gst/gstelementfactory.c:
18425 remove a ref too many, and add a FIXME for when we get
18426 round to disposing of classes
18427 * gst/gstplugin.c:
18428 fix the refcounting when loading a plugin from a file and
18429 the code pretends that the pointer is the same even though
18430 of course it can change
18431 * gst/gstpluginfeature.c:
18432 unref plugins marked cached (a bit confusing as a name)
18433 as the docs state should be done
18434 various doc additions to explain refcounting
18435 * gst/gstregistry.c:
18436 * gst/gstregistryxml.c:
18437 debugging
18439 2005-09-19 Wim Taymans <wim@fluendo.com>
18441 * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
18442 * check/gst/gstbus.c: (message_func_eos), (message_func_app),
18443 (send_messages), (GST_START_TEST), (gstbus_suite):
18444 * check/gst/gstpipeline.c: (GST_START_TEST):
18445 * check/pipelines/cleanup.c: (run_pipeline):
18446 * check/pipelines/simple_launch_lines.c: (run_pipeline),
18447 (GST_START_TEST):
18448 * gst/gstbus.c: (gst_bus_have_pending), (gst_bus_source_prepare),
18449 (gst_bus_source_check), (gst_bus_source_dispatch),
18450 (gst_bus_create_watch), (gst_bus_add_watch_full),
18451 (gst_bus_add_watch), (poll_func), (poll_timeout), (gst_bus_poll):
18452 * gst/gstbus.h:
18453 * tools/gst-launch.c: (event_loop):
18454 * tools/gst-md5sum.c: (event_loop):
18455 GstBusHandler -> GstBusFunc, return value has the same meaning as
18456 any other GSource (FALSE == remove source).
18457 _add_watch() and _add_watch_full() now take a MessageType mask to
18458 only handle specific types of messages.
18459 _poll() returns the GstMessage instead of the message type to avoid
18460 race conditions.
18461 _have_pending() takes a MessageType mask now too.
18462 Added testsuite for multiple bus watches.
18463 Fix testsuites and applications for new bus API.
18465 2005-09-19 Thomas Vander Stichele <thomas at apestaart dot org>
18467 * check/Makefile.am:
18468 mark a bunch of the tests as to fix until we fix them
18470 2005-09-18 Thomas Vander Stichele <thomas at apestaart dot org>
18472 * common/check.mak:
18473 use GST_PLUGIN settings for valgrind tests as well, so we're
18474 valgrinding the correct thing
18475 * gst/gst.c: (init_post):
18476 plug another leak
18478 2005-09-18 Thomas Vander Stichele <thomas at apestaart dot org>
18480 * gst/gst.c: (init_post), (gst_deinit):
18481 * gst/gstelementfactory.c: (gst_element_factory_class_init),
18482 (gst_element_factory_finalize), (gst_element_factory_cleanup):
18483 * gst/gstindex.c: (gst_index_factory_class_init),
18484 (gst_index_factory_finalize):
18485 * gst/gstobject.c: (gst_object_dispose):
18486 * gst/gstplugin.c: (gst_plugin_finalize), (gst_plugin_class_init),
18487 (gst_plugin_load_file), (gst_plugin_desc_free):
18488 * gst/gstpluginfeature.c: (gst_plugin_feature_class_init),
18489 (gst_plugin_feature_finalize):
18490 * gst/gstregistry.c: (gst_registry_class_init),
18491 (gst_registry_init), (gst_registry_finalize),
18492 (gst_registry_get_default), (gst_registry_deinit):
18493 * gst/gstregistry.h:
18494 * gst/gstregistryxml.c: (load_feature), (load_plugin):
18495 various cleanups and memleak plugging. make valgrind is happy now.
18497 2005-09-18 Thomas Vander Stichele <thomas at apestaart dot org>
18499 * common/check.mak:
18500 add a check-valgrind target
18502 2005-09-18 David Schleef <ds@schleef.org>
18504 * tools/gst-inspect.c: Revert the GOption code.
18506 2005-09-17 David Schleef <ds@schleef.org>
18508 * check/Makefile.am: Fix environment variables.
18509 * check/gst/gstplugin.c: Fix for API changes.
18510 * tools/gst-inspect.c: Fix for API changes.
18511 * tools/gst-xmlinspect.c: Fix for API changes.
18512 * gst/gstelementfactory.c:
18513 * gst/gstplugin.c:
18514 * gst/gstplugin.h:
18515 * gst/gstpluginfeature.c:
18516 * gst/gstpluginfeature.h:
18517 * gst/gstregistry.c:
18518 * gst/gstregistry.h:
18519 * gst/gstregistryxml.c:
18520 * gst/gsttypefind.c:
18521 * gst/gsttypefindfactory.c:
18522 * gst/indexers/gstfileindex.c:
18523 * gst/indexers/gstmemindex.c:
18524 * gst/schedulers/Makefile.am:
18525 Change registry to keep track of both plugins and features,
18526 removing the feature tracking from plugins themselves.
18528 2005-09-16 Thomas Vander Stichele <thomas at apestaart dot org>
18530 * check/Makefile.am:
18531 * tools/gst-register.1.in:
18532 remove gst-register
18534 2005-09-15 David Schleef <ds@schleef.org>
18536 * check/gst/gstplugin.c:
18537 * gst/gstelementfactory.c:
18538 * gst/gstplugin.c:
18539 * gst/gstpluginfeature.c:
18540 * gst/gstregistry.c:
18541 Getting tired of debugging. Disabled all the unreffing of
18542 plugins and features, which fixes the segfaults, but of
18543 course leaks like crazy. At least playbin works.
18545 2005-09-15 David Schleef <ds@schleef.org>
18547 * check/gst/gstplugin.c: (register_check_elements),
18548 (GST_START_TEST), (peek), (suggest), (gst_plugin_suite):
18549 More testing
18550 * gst/elements/gsttypefindelement.c: Fix refcounting.
18551 * gst/gsttypefind.c:
18552 * gst/gsttypefindfactory.c:
18553 * gst/gsttypefindfactory.h:
18555 2005-09-15 David Schleef <ds@schleef.org>
18557 * gst/gstindex.c: get refcounting correct.
18558 * gst/gstregistry.c: Handle the case where a feature/plugin is
18559 not found.
18561 2005-09-15 David Schleef <ds@schleef.org>
18563 * check/Makefile.am:
18564 * check/gst/gstplugin.c: Add test
18565 * gst/gstplugin.c: Fix problems noticed by testsuite
18566 * gst/gstplugin.h:
18567 * gst/gstregistry.c:
18568 * gst/gstregistry.h:
18570 2005-09-15 David Schleef <ds@schleef.org>
18572 * gst/gstplugin.c: Implement semi-decent recounting and locking
18573 in plugins and plugin features.
18574 * gst/gstplugin.h:
18575 * gst/gstpluginfeature.c:
18576 * gst/gstpluginfeature.h:
18577 * gst/gstregistry.c:
18579 2005-09-15 Michael Smith <msmith@fluendo.com>
18581 * gst/gstregistry.c: (gst_registry_get_feature_list):
18582 Implement this. Makes oggdemux work; decodebin still broken.
18584 2005-09-14 David Schleef <ds@schleef.org>
18586 * configure.ac: Add -no-undefined to GST_PLUGIN_LDFLAGS (bug
18587 #316076)
18588 * gst/base/Makefile.am: Add -no-undefined to LDFLAGS for libs
18589 * gst/check/Makefile.am:
18590 * libs/gst/controller/Makefile.am:
18591 * libs/gst/dataprotocol/Makefile.am:
18593 2005-09-14 David Schleef <ds@schleef.org>
18595 * configure.ac: Remove getbits library. Nothing uses it, and
18596 it should be in something like liboil if someone did want
18597 to use it.
18598 * libs/gst/Makefile.am:
18599 * libs/gst/getbits/Makefile.am:
18600 * libs/gst/getbits/gbtest.c:
18601 * libs/gst/getbits/getbits.c:
18602 * libs/gst/getbits/getbits.h:
18603 * libs/gst/getbits/gstgetbits_generic.c:
18604 * libs/gst/getbits/gstgetbits_i386.s:
18605 * libs/gst/getbits/gstgetbits_inl.h:
18607 2005-09-14 David Schleef <ds@schleef.org>
18609 * gst/Makefile.am: Dist glib-compat.h
18611 2005-09-14 David Schleef <ds@schleef.org>
18613 * configure.ac: Remove gst/registries, since it's no longer used.
18614 * gst/registries/Makefile.am:
18615 * gst/registries/gstlibxmlregistry.c:
18616 * gst/registries/gstlibxmlregistry.h:
18617 * gst/registries/gstxmlregistry.c:
18618 * gst/registries/gstxmlregistry.h:
18619 * gst/registries/registrytest.c:
18621 2005-09-14 David Schleef <ds@schleef.org>
18623 * gst/glib-compat.h:
18624 * gst/gstregistryxml.c:
18625 Convergence is near. Seriously.
18627 2005-09-14 David Schleef <ds@schleef.org>
18629 * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
18630 * gst/glib-compat.h:
18631 Attempt #4 to appease the buildbots.
18633 2005-09-14 David Schleef <ds@schleef.org>
18635 * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
18636 Attempt #3.
18638 2005-09-14 David Schleef <ds@schleef.org>
18640 * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
18641 Attempt #2.
18643 2005-09-14 David Schleef <ds@schleef.org>
18645 * gst/Makefile.am: Oh yeah, libgstreamer.so needs to contain
18646 the new functions.
18648 2005-09-14 David Schleef <ds@schleef.org>
18650 * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
18651 * gst/glib-compat.h: Add some functions that are in newer versions
18652 of glib than we care to require.
18653 * gst/gstregistryxml.c: Use them.
18655 2005-09-14 David Schleef <ds@schleef.org>
18657 * po/POTFILES.in: remove gst-register.c
18659 2005-09-14 David Schleef <ds@schleef.org>
18661 * docs/gst/gstreamer-docs.sgml:
18662 * docs/gst/gstreamer-sections.txt:
18663 * docs/gst/gstreamer.types:
18664 * docs/gst/tmpl/gstelement.sgml:
18665 * docs/gst/tmpl/gstplugin.sgml:
18666 * docs/gst/tmpl/gstpluginfeature.sgml:
18667 Documentation updates for registry changes.
18669 2005-09-14 David Schleef <ds@schleef.org>
18671 * gst/gstregistryxml.c: Copy g_mkdir_with_parent() from glib,
18672 because we don't require glib-2.8.
18674 2005-09-14 David Schleef <ds@schleef.org>
18676 * gst/gstregistryxml.c: Added. Essentially moved out of the
18677 registries directory.
18679 2005-09-14 David Schleef <ds@schleef.org>
18681 * check/Makefile.am:
18682 * check/generic/states.c:
18683 * gst/Makefile.am:
18684 * gst/gst.c:
18685 * gst/gst.h:
18686 * gst/gst_private.h:
18687 * gst/gstelementfactory.c:
18688 * gst/gstindex.c:
18689 * gst/gstinfo.c:
18690 * gst/gstplugin.c:
18691 * gst/gstplugin.h:
18692 * gst/gstpluginfeature.c:
18693 * gst/gstpluginfeature.h:
18694 * gst/gstregistry.c:
18695 * gst/gstregistry.h:
18696 * gst/gstregistrypool.c: remove
18697 * gst/gstregistrypool.h: remove
18698 * gst/gsttypefind.c:
18699 * gst/gsttypefindfactory.c:
18700 * gst/gsturi.c:
18701 * tools/Makefile.am:
18702 * tools/gst-compprep.c:
18703 * tools/gst-inspect.c:
18704 * tools/gst-register.c: remove
18705 * tools/gst-xmlinspect.c:
18706 Registry rewrite. Changes registry from being a file created
18707 by a tool into a simple cache file created automatically by
18708 libgstreamer. Removed gst-register (because it's no longer
18709 needed). Remove registry pools, because we only have one
18710 registry implementation (XML). Fix up other subsystems as
18711 necessary.
18713 2005-09-13 Michael Smith <msmith@fluendo.com>
18715 * gst/gstconfig.h.in:
18716 Don't Use windows linking attributes for MinGW. Fixes #316157
18718 2005-09-13 Thomas Vander Stichele <thomas at apestaart dot org>
18720 * gst/gstutils.c: (set_state_async_thread_func),
18721 (gst_element_set_state_async):
18722 Apparently people think it's better if this function doesn't
18723 try to set the state to whatever state was asked for on the first
18724 call to this function for any object. Seriously.
18726 2005-09-12 Thomas Vander Stichele <thomas at apestaart dot org>
18728 * check/gst/gstpipeline.c: (GST_START_TEST):
18729 * docs/gst/gstreamer-sections.txt:
18730 * gst/gstutils.c: (set_state_async_thread_func),
18731 (gst_element_set_state_async):
18732 * gst/gstutils.h:
18733 add a "gst_element_set_state_async" method that
18734 sets the state and starts a thread to make sure the state
18735 change completes as best as it can
18737 2005-09-12 Thomas Vander Stichele <thomas at apestaart dot org>
18739 * check/gst/gstpipeline.c: (GST_START_TEST), (gst_pipeline_suite):
18740 codify design+behaviour in testsuite after discussion
18742 2005-09-12 Thomas Vander Stichele <thomas at apestaart dot org>
18744 * docs/gst/tmpl/gstelement.sgml:
18745 * docs/manual/appendix-quotes.xml:
18746 add a quote
18747 * gst/gstelement.c: (gst_element_set_state):
18748 add some debug
18750 2005-09-12 Jan Schmidt <thaytan@mad.scientist.com>
18752 * gst/base/gstbasetransform.c: (gst_base_transform_class_init),
18753 (gst_base_transform_prepare_output_buf),
18754 (gst_base_transform_handle_buffer):
18755 * gst/elements/gstcapsfilter.c: (gst_capsfilter_transform_ip),
18756 (gst_capsfilter_prepare_buf):
18757 Remove the requirement for sub-classes to call the parent
18758 implementation of prepare_output_buffer with a wrapper function.
18760 * gst/gsttaglist.h:
18761 * gst/gsttagsetter.h:
18762 Fix #define wrapper
18764 2005-09-11 Stefan Kost <ensonic@users.sf.net>
18766 * docs/gst/gstreamer-sections.txt:
18767 more doc cleanups
18769 2005-09-11 Thomas Vander Stichele <thomas at apestaart dot org>
18771 * docs/gst/gstreamer-sections.txt:
18772 * docs/gst/tmpl/gstelement.sgml:
18773 * docs/gst/tmpl/gstplugin.sgml:
18774 * gst/gstminiobject.c:
18775 * gst/gstvalue.h:
18776 docs now stop throwing warnings
18778 2005-09-11 Thomas Vander Stichele <thomas at apestaart dot org>
18780 * docs/gst/gstreamer-sections.txt:
18781 * docs/gst/gstreamer.types:
18782 * docs/gst/tmpl/gstpad.sgml:
18783 * docs/gst/tmpl/gsttypes.sgml:
18784 * gst/base/gstadapter.h:
18785 * gst/base/gstbasesink.h:
18786 * gst/base/gstbasesrc.h:
18787 * gst/gstbin.h:
18788 * gst/gstbuffer.h:
18789 * gst/gstbus.h:
18790 * gst/gstcaps.h:
18791 * gst/gstclock.h:
18792 * gst/gstelement.h:
18793 * gst/gstevent.h:
18794 * gst/gstmessage.h:
18795 * gst/gstpad.h:
18796 * gst/gststructure.c:
18797 * gst/registries/gstlibxmlregistry.h:
18798 various documentation fixes
18800 2005-09-11 Thomas Vander Stichele <thomas at apestaart dot org>
18802 * docs/gst/gstreamer-sections.txt:
18803 * docs/gst/tmpl/gstvalue.sgml:
18804 rearrange gstvalue section
18805 * gst/gstutils.c: (gst_element_state_get_name):
18806 NONE -> VOID
18807 * gst/gstvalue.c: (_gst_value_initialize):
18808 * gst/gstvalue.h:
18809 doc updates
18811 2005-09-10 Jan Schmidt <thaytan@mad.scientist.com>
18813 * check/gst-libs/controller.c:
18814 Header include fix.
18815 * gst/base/gstbasetransform.c:
18816 (gst_base_transform_default_prepare_buf),
18817 (gst_base_transform_handle_buffer):
18818 * gst/base/gstbasetransform.h:
18819 Some more basetransform changes and fixes to enable sub-classes
18820 that modify buffer metadata only.
18821 * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
18822 (gst_capsfilter_init), (gst_capsfilter_transform_ip),
18823 (gst_capsfilter_prepare_buf):
18824 If the output pad has fixed allowed caps and input buffers
18825 don't have any, set the fixed caps on outgoing buffers.
18827 2005-09-09 Jan Schmidt <thaytan@mad.scientist.com>
18828 * check/elements/identity.c: (GST_START_TEST):
18829 Make the error a little clearer when the test fails because
18830 identity made a copy of the buffer.
18831 * docs/gst/gstreamer-sections.txt:
18832 New symbols in gstbasetransform.h
18833 * gst/base/gstbasetransform.c: (gst_base_transform_class_init),
18834 (gst_base_transform_init), (gst_base_transform_transform_size),
18835 (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
18836 (gst_base_transform_default_prepare_buf),
18837 (gst_base_transform_get_unit_size),
18838 (gst_base_transform_buffer_alloc),
18839 (gst_base_transform_handle_buffer), (gst_base_transform_chain),
18840 (gst_base_transform_change_state),
18841 (gst_base_transform_set_passthrough),
18842 (gst_base_transform_set_in_place),
18843 (gst_base_transform_is_in_place):
18844 * gst/base/gstbasetransform.h:
18845 Change BaseTransform to separate in_place operate from same_caps
18846 output. in_place implies that the element can perform the transform
18847 on incoming buffers in-place, even if the caps on the output are
18848 different.
18849 Sub-class elements can now implement special buffer allocation
18850 methods for outgoing buffers if they wish to.
18851 Big documentation addition.
18852 * gst/elements/gstcapsfilter.c: (gst_capsfilter_transform_ip):
18853 * gst/elements/gstelements.c:
18854 Changes for basetransform modifications.
18855 * gst/elements/Makefile.am:
18856 * gst/elements/gstfdsrc.c: (gst_fdsrc_init), (gst_fdsrc_create):
18857 Compile fix. Extra debug output.
18859 2005-09-09 Thomas Vander Stichele <thomas at apestaart dot org>
18861 * check/gst/gstpad.c: (GST_START_TEST), (name_is_valid),
18862 (gst_pad_suite):
18863 add tests for valid pad naming
18864 * gst/check/gstcheck.c: (gst_check_log_message_func),
18865 (gst_check_log_critical_func):
18866 add ASSERT_WARNING
18867 remove printing of code, it is fragile when the code contains
18868 % and the line number is enough info
18869 * gst/check/gstcheck.h:
18870 * gst/gstpad.c: (gst_pad_template_new):
18871 fix memleaks
18873 2005-09-09 Thomas Vander Stichele <thomas at apestaart dot org>
18875 * configure.ac:
18876 say what CHECK flags we use
18877 * docs/libs/gstreamer-libs.types:
18878 * libs/gst/controller/Makefile.am:
18879 * libs/gst/controller/gst-controller.c:
18880 * libs/gst/controller/gst-controller.h:
18881 * libs/gst/controller/gst-helper.c:
18882 * libs/gst/controller/gst-interpolation.c:
18883 * libs/gst/controller/gstcontroller.c:
18884 * libs/gst/controller/gsthelper.c:
18885 * libs/gst/controller/gstinterpolation.c:
18886 * tools/gst-inspect.c: (print_plugin_info):
18887 we don't use dashes in header names
18889 2005-09-09 Thomas Vander Stichele <thomas at apestaart dot org>
18891 * check/Makefile.am:
18892 * check/gst/.cvsignore:
18893 * check/gst/gstpipeline.c: (pop_messages), (GST_START_TEST),
18894 (gst_pipeline_suite), (main):
18895 adding a test for pipelines and state changes
18896 * gst/gstutils.c: (get_state_func):
18897 add some debugging
18898 * gstreamer.spec.in:
18899 fix up spec file
18901 2005-09-08 Michael Smith <msmith@fluendo.com>
18903 * gst/elements/gstfilesrc.c: (gst_file_src_map_region),
18904 (gst_file_src_map_small_region), (gst_file_src_create_mmap),
18905 (gst_file_src_is_seekable), (gst_file_src_get_size),
18906 (gst_file_src_start):
18907 * gst/elements/gstfilesrc.h:
18908 Various fixes for unseekable, unmmapable, and non-normal files, so
18909 that fallback to read() rather than mmap() works.
18910 * gst/gstevent.c: (gst_event_new_newsegment):
18911 Allow newsegment events with segment_start == segment_end, as will
18912 correctly happen if you use filesrc on a zero-size file, for
18913 example.
18915 2005-09-07 Jan Schmidt <thaytan@mad.scientist.com>
18917 * gst/gstplugin.c: (gst_plugin_load_file):
18918 Call g_module_close when we don't load the module
18920 * gst/registries/gstlibxmlregistry.c:
18921 (gst_xml_registry_get_property):
18922 Port leak fix from 0.8
18924 2005-09-07 Stefan Kost <ensonic@users.sf.net>
18926 * docs/gst/gstreamer-docs.sgml:
18927 * docs/gst/tmpl/.cvsignore:
18928 * docs/gst/tmpl/gsttrace.sgml:
18929 * docs/gst/tmpl/gsttrashstack.sgml:
18930 * gst/Makefile.am:
18931 * gst/gst.h:
18932 * gst/gstelement.h:
18933 * gst/gstevent.h:
18934 * gst/gstmessage.c:
18935 * gst/gstmessage.h:
18936 * gst/gsttag.c:
18937 * gst/gsttag.h:
18938 * gst/gsttaginterface.c:
18939 * gst/gsttaginterface.h:
18940 * gst/gsttaglist.c:
18941 * gst/gsttaglist.h:
18942 * gst/gsttagsetter.c:
18943 * gst/gsttagsetter.h:
18944 * gst/gsttrace.c:
18945 * gst/gsttrace.h:
18946 * gst/gsttrashstack.c:
18947 renamed gsttag -> gsttaglist, gsttaginterface -> gsttagsetter
18948 inlined docs for gsttrace, gsttrashstack
18950 2005-09-07 Stefan Kost <ensonic@users.sf.net>
18952 * gst/Makefile.am:
18953 * gst/elements/gstbufferstore.h:
18954 * gst/elements/gsttypefindelement.c:
18955 * gst/elements/gsttypefindelement.h:
18956 * gst/gst.h:
18957 * gst/gsttypefind.c:
18958 * gst/gsttypefind.h:
18959 * gst/gsttypefindfactory.c: (gst_type_find_factory_get_type),
18960 (gst_type_find_factory_class_init), (gst_type_find_factory_init),
18961 (gst_type_find_factory_dispose),
18962 (gst_type_find_factory_unload_thyself),
18963 (gst_type_find_load_plugin), (gst_type_find_factory_get_list),
18964 (gst_type_find_factory_get_caps),
18965 (gst_type_find_factory_get_extensions),
18966 (gst_type_find_factory_call_function):
18967 * gst/gsttypefindfactory.h:
18968 * gst/registries/gstlibxmlregistry.c:
18969 * gst/registries/gstxmlregistry.c:
18970 splitted gsttypefind into gsttypefind, gsttypefindfactory
18972 2005-09-07 Andy Wingo <wingo@pobox.com>
18974 * gst/base/gstbasesink.c (gst_base_sink_activate_pull): Fix a race
18975 condition whereby the pad's task function is entered before the
18976 pad_mode variable was set.
18978 2005-09-07 Jan Schmidt <thaytan@mad.scientist.com>
18980 * gst/gstpad.c: (gst_pad_alloc_buffer):
18981 Catch misbehaving pad_alloc functions that don't
18982 set up caps and do it for them.
18984 2005-09-07 Stefan Kost <ensonic@users.sf.net>
18986 * check/pipelines/simple_launch_lines.c: (run_pipeline):
18987 test for pipe!=NULL
18988 * docs/gst/tmpl/.cvsignore:
18989 * docs/gst/tmpl/gstmemchunk.sgml:
18990 * docs/gst/tmpl/gstparse.sgml:
18991 * docs/gst/tmpl/gsttaglist.sgml:
18992 * docs/gst/tmpl/gsttagsetter.sgml:
18993 * docs/gst/tmpl/gsttypefind.sgml:
18994 * docs/gst/tmpl/gsttypefindfactory.sgml:
18995 * gst/gstmemchunk.c:
18996 * gst/gstparse.c:
18997 * gst/gsttag.c:
18998 * gst/gsttaginterface.c:
18999 * gst/gsttypefind.c:
19000 * gst/gsttypefind.h:
19001 inlined more docs
19003 === release 0.9.2 ===
19005 2005-09-06 Thomas Vander Stichele <thomas at apestaart dot org>
19007 * NEWS:
19008 * RELEASE:
19009 * configure.ac:
19010 releasing 0.9.2, "South"
19012 2005-09-05 Andy Wingo <wingo@pobox.com>
19014 * gst/registries/gstxmlregistry.h:
19015 * gst/registries/gstxmlregistry.c: Um... resurrect...
19017 * gst/registries/gstxmlregistry.h:
19018 * gst/registries/gstxmlregistry.c: and update to newer API.
19019 Incidentally they should be a bit faster now that they don't have
19020 to parse the caps.
19022 2005-09-05 Andy Wingo <wingo@pobox.com>
19024 * gst/registries/gstxmlregistry.h:
19025 * gst/registries/gstxmlregistry.c: Remove from CVS, they were
19026 replaced by the libxml registry a while back
19028 2005-09-03 Thomas Vander Stichele <thomas at apestaart dot org>
19030 * docs/gst/tmpl/gstplugin.sgml:
19031 * gst/elements/gstelements.c:
19032 * gst/gst.c:
19033 * gst/gstplugin.c: (gst_plugin_register_func),
19034 (gst_plugin_desc_copy), (gst_plugin_desc_free),
19035 (gst_plugin_get_source):
19036 * gst/gstplugin.h:
19037 * gst/registries/gstlibxmlregistry.c: (load_plugin),
19038 (gst_xml_registry_save_plugin):
19039 * gst/registries/gstxmlregistry.c: (gst_xml_registry_parse_plugin),
19040 (gst_xml_registry_save_plugin):
19041 * tools/gst-inspect.c: (print_plugin_info):
19042 add a "source" plugin description field, to represent the source
19043 module this plugin is a part of. By default GST_PLUGIN_DEFINE
19044 will set it to PACKAGE, which is automake's idea of the name of
19045 the source project.
19047 2005-09-03 Thomas Vander Stichele <thomas at apestaart dot org>
19049 * Makefile.am:
19050 * autogen.sh:
19051 * configure.ac:
19052 * docs/Makefile.am:
19053 * docs/faq/Makefile.am:
19054 * docs/gst/tmpl/gstelement.sgml:
19055 * docs/gst/tmpl/gsttypes.sgml:
19056 * docs/htmlinstall.mak:
19057 * docs/manual/Makefile.am:
19058 * docs/pwg/Makefile.am:
19059 reorganize doc build a little
19060 split out docbook and gtk-doc stuff
19061 have two separate --enable's and enable them through autogen
19062 but disable by default in configure (to be similar to other
19063 projects)
19064 * gstreamer.spec.in:
19065 clean up docs install
19066 * po/af.po:
19067 * po/az.po:
19068 * po/ca.po:
19069 * po/cs.po:
19070 * po/de.po:
19071 * po/en_GB.po:
19072 * po/fr.po:
19073 * po/it.po:
19074 * po/nb.po:
19075 * po/nl.po:
19076 * po/ru.po:
19077 * po/sq.po:
19078 * po/sr.po:
19079 * po/sv.po:
19080 * po/tr.po:
19081 * po/uk.po:
19082 * po/vi.po:
19083 translation updates
19085 2005-09-03 Tim-Philipp Müller <tim at centricular dot net>
19087 * gst/base/gstbasesink.c: (gst_base_sink_pad_buffer_alloc):
19088 Add comment.
19090 * gst/elements/gstfakesink.c: (gst_fake_sink_init),
19091 (gst_fake_sink_change_state):
19092 Make state change function thread-safe.
19094 * gst/gstpad.c: (gst_pad_alloc_buffer):
19095 Set offset on generic buffer allocated by fallback.
19097 2005-09-03 Stefan Kost <ensonic@users.sf.net>
19099 * docs/gst/gstreamer-sections.txt:
19100 * docs/gst/tmpl/gstelement.sgml:
19101 * gst/gstpad.c:
19102 * libs/gst/controller/gst-controller.c:
19103 (gst_controlled_property_set_interpolation_mode),
19104 (gst_controlled_property_new),
19105 (gst_controller_find_controlled_property):
19106 run the wingo-magic script against the docs
19108 2005-09-02 Stefan Kost <ensonic@users.sf.net>
19110 * docs/gst/gstreamer-docs.sgml:
19111 * docs/gst/gstreamer-sections.txt:
19112 * docs/gst/tmpl/.cvsignore:
19113 * docs/gst/tmpl/gstelementdetails.sgml:
19114 * docs/gst/tmpl/gstelementfactory.sgml:
19115 * gst/gst.c:
19116 * gst/gstbus.c:
19117 * gst/gstelementfactory.c:
19118 * gst/gstelementfactory.h:
19119 merged elementdetails docs into elementfactory docs
19120 inlined both
19122 2005-09-02 Andy Wingo <wingo@pobox.com>
19124 * gst/gstelement.h: Add magical pixie dust to make glib-mkenums
19125 consider this enum an enum and not a flags.
19127 2005-09-02 Stefan Kost <ensonic@users.sf.net>
19129 * docs/gst/gstreamer-docs.sgml:
19130 * docs/gst/tmpl/.cvsignore:
19131 * docs/gst/tmpl/gstghostpad.sgml:
19132 * docs/gst/tmpl/gstiterator.sgml:
19133 * docs/gst/tmpl/gstmacros.sgml:
19134 * docs/gst/tmpl/gstrealpad.sgml:
19135 * docs/gst/tmpl/gstregistry.sgml:
19136 * docs/gst/tmpl/gstregistrypool.sgml:
19137 * docs/gst/tmpl/gststructure.sgml:
19138 * docs/gst/tmpl/gstsystemclock.sgml:
19139 * docs/gst/tmpl/gsttrace.sgml:
19140 * gst/gstghostpad.c:
19141 * gst/gstmacros.h:
19142 * gst/gstmemchunk.c:
19143 * gst/gstmemchunk.h:
19144 * gst/gstqueue.c:
19145 * gst/gstregistry.c:
19146 * gst/gstregistrypool.c:
19147 * gst/gststructure.c:
19148 * gst/gstsystemclock.c:
19149 more docs inlined
19151 2005-09-02 Andy Wingo <wingo@pobox.com>
19153 * gst/gstelement.h (GstState): Renamed from GstElementState,
19154 changed to be a normal enum instead of flags.
19155 (GstStateChangeReturn): Renamed from GstElementStateReturn, names
19156 munged to be GST_STATE_CHANGE_*.
19157 (GST_STATE_CHANGE): Renamed from GST_STATE_TRANSITION, updated to
19158 work with the new state representation.
19159 (GstStateChange): New enumeration of possible state transitions.
19160 Replaces GST_STATE_FOO_TO_BAR with GST_STATE_CHANGE_FOO_TO_BAR.
19161 (GstElementClass::change_state): Pass the GstStateChange along as
19162 an argument. Helps language bindings, so they don't have to use
19163 tricky lock-needing macros like GST_STATE_CHANGE ().
19165 * scripts/update-states (file): New script. Run it on a file to
19166 update it for state naming and API changes. Updates files in
19167 place.
19169 * All files updated for the new API.
19171 2005-09-02 Thomas Vander Stichele <thomas at apestaart dot org>
19173 * gst/gsttrace.c: (gst_trace_flush), (gst_trace_text_flush):
19174 * gst/gstutils.c: (gst_util_set_value_from_string),
19175 (gst_util_set_object_arg):
19176 fix a bunch of unchecked return values
19177 * tools/gst-complete.c: (main):
19178 * gstreamer.spec.in:
19179 clean up a little
19181 2005-09-01 Wim Taymans <wim@fluendo.com>
19183 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
19184 (gst_base_sink_event), (gst_base_sink_do_sync),
19185 (gst_base_sink_handle_event):
19186 * gst/base/gstbasesink.h:
19187 Handle newsegments more correctly.
19189 * gst/gstbus.c:
19190 Fix docs.
19192 * gst/gstevent.c: (gst_event_new_newsegment):
19193 A newsegment cannot have a start_time of -1
19195 2005-09-01 Tim-Philipp Müller <tim at centricular dot net>
19197 * win32/gstenumtypes.c:
19198 * win32/gstenumtypes.h:
19199 Update
19201 2005-08-31 Stefan Kost <ensonic@users.sf.net>
19203 * libs/gst/controller/gst-controller.c:
19204 (gst_controlled_property_set_interpolation_mode),
19205 (gst_controlled_property_new):
19206 fixed boolean again
19208 2005-08-31 Thomas Vander Stichele <thomas at apestaart dot org>
19210 * docs/faq/gst-uninstalled:
19211 add -good
19212 * gst/gstevent.c:
19213 * gst/gstevent.h:
19214 remove wrong docs
19215 * gst/gstutils.c: (gst_element_link_filtered):
19216 * gst/gstutils.h:
19217 add gst_element_link_filtered
19219 2005-08-31 Stefan Kost <ensonic@users.sf.net>
19221 * docs/gst/gstreamer-docs.sgml:
19222 * docs/gst/gstreamer-sections.txt:
19223 * docs/gst/tmpl/.cvsignore:
19224 * docs/gst/tmpl/gsterror.sgml:
19225 * docs/gst/tmpl/gstfilter.sgml:
19226 * docs/gst/tmpl/gsturihandler.sgml:
19227 * docs/gst/tmpl/gsturitype.sgml:
19228 * docs/gst/tmpl/gstutils.sgml:
19229 * docs/gst/tmpl/gstxml.sgml:
19230 * gst/gsterror.c:
19231 * gst/gsterror.h:
19232 * gst/gstfilter.c:
19233 * gst/gsturi.c:
19234 * gst/gsturitype.c:
19235 * gst/gstutils.c:
19236 * gst/gstxml.c:
19237 inlined more docs, fixed double id-ref
19239 2005-08-31 Wim Taymans <wim@fluendo.com>
19241 * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
19242 (gst_base_transform_handle_buffer):
19243 Passthrough elements don't need the caps as they don't care.
19245 2005-08-31 Wim Taymans <wim@fluendo.com>
19247 * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
19248 (gst_base_transform_handle_buffer), (gst_base_transform_chain):
19249 Don't leak refcounts on buffers.
19251 2005-08-31 Wim Taymans <wim@fluendo.com>
19253 * gst/base/gstbasetransform.c: (gst_base_transform_configure_caps),
19254 (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
19255 (gst_base_transform_chain), (gst_base_transform_change_state):
19256 * gst/base/gstbasetransform.h:
19257 Handle the case where we are not negotiated more gracefully.
19259 2005-08-31 Tim-Philipp Müller <tim at centricular dot net>
19261 * gst/elements/gstfilesrc.c: (gst_mmap_buffer_init),
19262 (gst_file_src_map_region):
19263 Set READONLY flag on mmap'ed buffers, otherwise
19264 gst_buffer_make_writable() won't work properly (#314708).
19266 2005-08-31 Wim Taymans <wim@fluendo.com>
19268 * gst/base/gstbasetransform.c: (gst_base_transform_handle_buffer):
19269 passthrough elements can even do inplace on non writable
19270 buffers (as they don't touch them).
19272 2005-08-31 Stefan Kost <ensonic@users.sf.net>
19274 * check/gst-libs/controller.c: (gst_test_mono_source_get_property),
19275 (gst_test_mono_source_set_property),
19276 (gst_test_mono_source_class_init), (GST_START_TEST),
19277 (gst_controller_suite):
19278 more tests (hehe I have the most)
19279 * gst/gstbus.c:
19280 describe popping messages whenusing mulltiple sources
19281 * libs/gst/controller/gst-controller.c:
19282 (gst_controlled_property_set_interpolation_mode),
19283 (gst_controlled_property_new):
19284 * libs/gst/controller/gst-controller.h:
19285 * libs/gst/controller/gst-interpolation.c:
19286 implement boolean properties
19288 2005-08-31 Wim Taymans <wim@fluendo.com>
19290 * gst/gstminiobject.c: (gst_mini_object_ref):
19291 Cannot assert that the refcount has to be positive
19292 since a disposed object can be resurrected.
19294 2005-08-31 Wim Taymans <wim@fluendo.com>
19296 * gst/gstpad.c: (gst_pad_init):
19297 Revert change, need to first fix badly behaving
19298 apps.
19300 2005-08-30 Wim Taymans <wim@fluendo.com>
19302 * check/elements/fakesrc.c: (setup_fakesrc):
19303 * check/elements/identity.c: (setup_identity):
19304 Activate pads before using them.
19306 2005-08-30 Wim Taymans <wim@fluendo.com>
19308 * gst/base/gstadapter.c: (gst_adapter_flush):
19309 Flushing out 0 bytes is ok for this function.
19311 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
19312 no newsegment gives a warning and sets the start/stop to
19313 invalid.
19315 * gst/base/gstbasetransform.c: (gst_base_transform_change_state),
19316 (gst_base_transform_set_passthrough):
19317 Some debug info.
19319 * gst/gstminiobject.c: (gst_mini_object_ref):
19320 Check refcount here too.
19322 * gst/gstpad.c: (gst_pad_init):
19323 Pads are initially flushing and refusing data.
19325 * gst/gstutils.c: (gst_element_link_pads_filtered):
19326 When adding a capsfilter element make sure it has the
19327 same state as the parent bin.
19329 2005-08-30 Stefan Kost <ensonic@users.sf.net>
19331 * docs/gst/tmpl/.cvsignore:
19332 * docs/gst/tmpl/gstformat.sgml:
19333 * docs/gst/tmpl/gstversion.sgml:
19334 * gst/gstbus.h:
19335 * gst/gstformat.c:
19336 * gst/gstformat.h:
19337 * gst/gstversion.h.in:
19338 more docs and two more inlined
19340 2005-08-30 Wim Taymans <wim@fluendo.com>
19342 * gst/elements/gstfilesink.c: (gst_file_sink_class_init):
19343 Don't sync to clock.
19345 2005-08-30 Stefan Kost <ensonic@users.sf.net>
19347 * docs/gst/gstreamer-sections.txt:
19348 ultral33t func10ns deserve to appear in the docs actually
19349 * docs/gst/tmpl/.cvsignore:
19350 * docs/gst/tmpl/gstcompat.sgml:
19351 * docs/gst/tmpl/gstconfig.sgml:
19352 * gst/check/gstcheck.c:
19353 * gst/gstcompat.h:
19354 * gst/gstconfig.h.in:
19355 inlined more docs
19357 2005-08-30 Stefan Kost <ensonic@users.sf.net>
19359 * docs/gst/tmpl/.cvsignore:
19360 * docs/gst/tmpl/gstquery.sgml:
19361 * docs/gst/tmpl/gstutils.sgml:
19362 * gst/gstquery.c:
19363 * gst/gstquery.h:
19364 inlined and extended docs
19366 2005-08-30 Stefan Kost <ensonic@users.sf.net>
19368 * check/gst-libs/controller.c: (GST_START_TEST),
19369 (gst_controller_suite):
19370 more tests
19371 * docs/gst/tmpl/gstutils.sgml:
19372 * docs/libs/gstreamer-libs-sections.txt:
19373 * docs/libs/tmpl/gstdataprotocol.sgml:
19374 include path fixes
19375 * examples/controller/audio-example.c: (main):
19376 controller example works now
19377 * gst/gstclock.h:
19378 doc fixes
19379 * tools/gst-inspect.c: (print_element_properties_info):
19380 show param spec flags
19382 2005-08-29 Andy Wingo <wingo@pobox.com>
19384 * gst/gstutils.c (gst_util_uint64_scale): New 3733t funct10n.
19386 2005-08-28 Andy Wingo <wingo@pobox.com>
19388 * gst/gstutils.h (GST_BOILERPLATE_FULL): Prototype instance_init
19389 as having two arguments instead of just one. Allows superclasses
19390 to access information on subclasses -- see the terrible for() loop
19391 in gtype.c:g_type_create_instance for the reason why. All callers
19392 changed.
19394 2005-08-27 Stefan Kost <ensonic@users.sf.net>
19396 * docs/design/part-messages.txt:
19397 update info
19398 * docs/gst/tmpl/.cvsignore:
19399 * docs/gst/tmpl/gstcaps.sgml:
19400 * docs/gst/tmpl/gstclock.sgml:
19401 * gst/gstbus.c:
19402 * gst/gstcaps.c:
19403 * gst/gstcaps.h:
19404 * gst/gstclock.c:
19405 * gst/gstclock.h:
19406 * gst/gstmessage.c:
19407 added descriptions for bus and message
19408 inline caps and clock docs
19410 2005-08-27 Stefan Kost <ensonic@users.sf.net>
19412 * gst/gstmessage.c:
19413 * gst/gstmessage.h:
19414 doc fixes
19416 2005-08-27 Stefan Kost <ensonic@users.sf.net>
19418 * gst/base/gstbasetransform.c: (gst_base_transform_transform_size):
19419 fix div-by-zero
19421 2005-08-26 Andy Wingo <wingo@pobox.com>
19423 * check/pipelines/simple_launch_lines.c (run_pipeline): Check
19424 element_set_state's return val.
19425 (test_2_elements): Add test that's been disabled for months.
19427 * gst/elements/gstfakesink.c: Cleanups. Add can-activate-push and
19428 can-activate-pull properties.
19430 * gst/elements/gstfakesrc.c: Cleanups. Add can-activate-push and
19431 can-activate-pull properties. Implement is_seekable so fakesrc can
19432 operate in pull mode.
19434 * gst/base/gstbasesink.c (GstBaseSink): Remove has-loop, has-chain
19435 properties.
19436 (gst_base_sink_activate, gst_base_sink_activate_pull)
19437 (gst_base_sink_activate_push): Make activation mode choosing work.
19438 Cleanups.
19439 (gst_base_sink_chain, gst_base_sink_loop): Assert activation mode
19440 is right. Make pull mode work. Post an eos before pausing in pull
19441 mode.
19442 (gst_base_sink_change_state): Pay attention to the core's
19443 change_state() return val.
19445 * gst/base/gstbasesrc.c (GstBaseSrc): Remove has-loop,
19446 has-getrange properties. Cleanups.
19448 * gst/base/gstbasesrc.h (GstBaseSrc): Remove has_loop,
19449 has_getrange and replace with can_activate_pull and
19450 can_activate_push.
19452 * gst/base/gstbasesink.h (GstBaseSink): Rearrange fields, add
19453 locking comments. Remove has_loop, has_chain and replace with
19454 can_activate_pull and can_activate_push.
19456 2005-08-26 Jan Schmidt <thaytan@mad.scientist.com>
19458 * configure.ac:
19459 * examples/Makefile.am:
19460 * examples/metadata/Makefile.am:
19461 * examples/metadata/read-metadata.c: (message_loop),
19462 (have_pad_handler), (make_pipeline), (print_tag), (main):
19463 Add metadata reading example that loops over a list of filenames,
19464 dumping any tags found.
19466 * gst/gstbus.c: (gst_bus_dispose):
19467 * gst/gstelement.c: (gst_element_dispose):
19468 Release a few potentially-held references in dispose.
19470 2005-08-26 Stefan Kost <ensonic@users.sf.net>
19472 * docs/gst/tmpl/gstminiobject.sgml:
19473 do *not* add tmpl/*.sgml files to CVS!
19475 2005-08-26 Stefan Kost <ensonic@users.sf.net>
19477 * libs/gst/bytestream/.cvsignore:
19478 * libs/gst/bytestream/Makefile.am:
19479 * libs/gst/bytestream/adapter.c:
19480 * libs/gst/bytestream/adapter.h:
19481 * libs/gst/bytestream/bytestream.c:
19482 * libs/gst/bytestream/bytestream.h:
19483 * libs/gst/bytestream/filepad.c:
19484 * libs/gst/bytestream/filepad.h:
19485 removing obsolete files
19487 2005-08-26 Stefan Kost <ensonic@users.sf.net>
19489 * docs/gst/gstreamer-docs.sgml:
19490 * docs/libs/gstreamer-libs-docs.sgml:
19491 disabed additional index entries again, as this makes docs-gen just
19492 slow and they aren't useful yet
19493 * docs/libs/gstreamer-libs-sections.txt:
19494 little -section.txt cleanup for libs
19496 2005-08-26 Thomas Vander Stichele <thomas at apestaart dot org>
19498 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
19499 * gst/base/gstbasetransform.c: (gst_base_transform_transform_size),
19500 fix up some debugging
19501 (gst_base_transform_get_unit_size),
19502 (gst_base_transform_buffer_alloc), (gst_base_transform_event),
19503 (gst_base_transform_handle_buffer):
19504 * gst/base/gstbasetransform.h:
19505 handle and store timed NEWSEGMENT events so that subclasses that
19506 calculate time by counting samples have a segment_start time they
19507 need to add to their timestamps - see audioresample
19509 2005-08-26 Stefan Kost <ensonic@users.sf.net>
19511 * gst/gstbin.h:
19512 removed ';' from the end of macro defs
19513 * docs/gst/gstreamer-docs.sgml:
19514 * docs/gst/gstreamer-sections.txt:
19515 * docs/gst/tmpl/.cvsignore:
19516 * gst/gstbus.h:
19517 * gst/gstelement.c: (gst_element_class_init),
19518 (gst_element_set_state), (activate_pads),
19519 (gst_element_save_thyself):
19520 * gst/gstevent.c: (gst_event_new_newsegment):
19521 * gst/gstevent.h:
19522 * gst/gstiterator.c:
19523 * gst/gstiterator.h:
19524 * gst/gstpad.c:
19525 * gst/gstprobe.h:
19526 * gst/gstutils.c: (gst_pad_query_convert):
19527 * gst/gstutils.h:
19528 fixed parameter name mismatches between source, header and docs
19529 added some more docs, resolved the last batch of unused elements in
19530 docs (now someone needs to doc them)
19532 2005-08-25 Thomas Vander Stichele <thomas at apestaart dot org>
19534 * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_rebuild):
19535 * gst/registries/gstxmlregistry.c: (gst_xml_registry_rebuild):
19536 don't walk through the plugins backwards. Where is all this
19537 reversed logic coming from ?
19539 2005-08-25 Wim Taymans <wim@fluendo.com>
19541 * gst/base/gstbasetransform.c: (gst_base_transform_init),
19542 (gst_base_transform_transform_size),
19543 (gst_base_transform_configure_caps),
19544 (gst_base_transform_get_unit_size),
19545 (gst_base_transform_buffer_alloc),
19546 (gst_base_transform_change_state):
19547 * gst/base/gstbasetransform.h:
19548 Cache caps unit_size.
19549 Make sure we cannot negotiate up and downstream at the
19550 same time.
19552 2005-08-25 Thomas Vander Stichele <thomas at apestaart dot org>
19554 * gst/gst.c: (init_pre), (init_post):
19555 register the installed plugin path after the env var
19556 * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_save):
19557 * gst/registries/gstxmlregistry.c: (gst_xml_registry_save):
19558 don't reverse order of paths; conserve the order of GST_PLUGIN_PATH
19559 directories, so the tests can prefer uninstalled over installed
19561 2005-08-25 Thomas Vander Stichele <thomas at apestaart dot org>
19563 * gst/base/gstbasetransform.h:
19564 comment
19565 * gst/gstpad.c:
19566 add to docs
19568 2005-08-25 Wim Taymans <wim@fluendo.com>
19570 * gst/gstbin.c: (bin_bus_handler):
19571 Be a bit more conservative about the posted message.
19573 * gst/gstbus.c: (gst_bus_post):
19574 Some cleanups, warn wrong return values.
19576 2005-08-25 Jan Schmidt <thaytan@mad.scientist.com>
19578 * check/gst/gstbin.c: (GST_START_TEST):
19579 * gst/gstbin.c: (bin_bus_handler):
19580 * gst/gstmessage.c: (gst_message_finalize), (_gst_message_copy),
19581 (gst_message_new), (gst_message_new_eos), (gst_message_new_error),
19582 (gst_message_new_warning), (gst_message_new_tag),
19583 (gst_message_new_state_changed), (gst_message_new_segment_start),
19584 (gst_message_new_segment_done), (gst_message_new_custom):
19585 * gst/gstmessage.h:
19586 * tools/gst-launch.c: (event_loop):
19587 * tools/gst-md5sum.c: (event_loop):
19588 Revert unpopular change for GST_MESSAGE_SRC to GObject.
19590 2005-08-25 Wim Taymans <wim@fluendo.com>
19592 * check/generic/states.c: (GST_START_TEST):
19593 Cleanup can be done at the end.
19595 * gst/gsttask.c: (gst_task_get_type), (gst_task_finalize),
19596 (gst_task_func), (gst_task_cleanup_all), (gst_task_set_lock),
19597 (gst_task_get_state), (gst_task_start), (gst_task_pause):
19598 Oh boy.. Thanks for finding this, Thomas.
19600 2005-08-25 Stefan Kost <ensonic@users.sf.net>
19602 * docs/gst/gstreamer.types:
19603 added missing types
19605 2005-08-25 Stefan Kost <ensonic@users.sf.net>
19607 * docs/gst/gstreamer-docs.sgml:
19608 * docs/gst/gstreamer-sections.txt:
19609 * docs/gst/tmpl/.cvsignore:
19610 * gst/gstbin.c:
19611 * gst/gstiterator.c:
19612 * gst/gstutils.c:
19613 * gst/registries/gstxmlregistry.h:
19614 added missing classes and symbols (123 more to go)
19615 removed removed symbols from section file
19616 fixed many doc-comments
19618 2005-08-24 Wim Taymans <wim@fluendo.com>
19620 * check/generic/states.c: (GST_START_TEST):
19621 Make sure all tasks are stopped.
19623 * check/gst/gstbin.c: (GST_START_TEST):
19624 Unref after usage for proper valgrinding.
19626 * gst/gstpad.c: (gst_pad_finalize), (gst_pad_stop_task):
19627 Really wait for the task to stop before destroying the
19628 mutex.
19630 * gst/gstqueue.c: (gst_queue_sink_activate_push),
19631 (gst_queue_src_activate_push):
19632 Small cleanups. Don't stop the task when we did not start
19633 it.
19635 * gst/gsttask.c: (gst_task_get_type), (gst_task_init),
19636 (gst_task_func), (gst_task_cleanup_all), (gst_task_set_lock),
19637 (gst_task_get_state), (gst_task_start), (gst_task_pause),
19638 (gst_task_join):
19639 * gst/gsttask.h:
19640 Protect the stream lock with the object lock.
19641 Disallow setting the stream lock when running.
19642 Add cleanup_all to wait for the threadpool to finish.
19643 Remove code to autoallocate a mutex if none was provided.
19644 Add _join() to wait for a task to stop.
19645 Protect the thread pool with a global lock.
19647 2005-08-24 Wim Taymans <wim@fluendo.com>
19649 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
19650 (gst_base_sink_get_times), (gst_base_sink_do_sync),
19651 (gst_base_sink_handle_buffer), (gst_base_sink_change_state):
19652 * gst/base/gstbasesink.h:
19653 Handle newsegment events correctly.
19654 Drop buffers out of the segment range.
19656 2005-08-22 Andy Wingo <wingo@pobox.com>
19658 * gst/gstutils.h (GST_BOILERPLATE_WITH_INTERFACE): New ghetto
19659 macro, implements an interface and gstimplementsinterface for a
19660 new type.
19662 2005-08-24 Thomas Vander Stichele <thomas at apestaart dot org>
19664 * check/Makefile.am:
19665 * check/generic/states.c: (GST_START_TEST), (states_suite), (main):
19666 add a test that does a bunch of state changes on elements
19667 needs some fixing for valgrind
19668 * check/states/sinks.c: (gst_object_suite):
19669 whitespace
19670 * gst/gstcaps.h:
19671 add prototype for gst_caps_is_equal_fixed
19672 * gst/gstplugin.c:
19673 * gst/gstregistrypool.c:
19674 doc fixes
19676 2005-08-24 Andy Wingo <wingo@pobox.com>
19678 * gst/gstquery.c (gst_query_new_convert): Spew if we try to
19679 convert a negative value. Doesn't make much sense. Mostly this is
19680 here to force callers to ensure -1 maps to -1.
19682 2005-08-24 Jan Schmidt <thaytan@mad.scientist.com>
19684 * docs/pwg/advanced-types.xml:
19685 Well done to Michael for catching my deliberate introduction
19686 of this spelling mistake.
19687 * gst/gstbin.c: (gst_bin_remove_func), (bin_bus_handler):
19688 * gst/gstelement.h:
19689 Add GST_ELEMENT_UNPARENTING to prevent races so that we can
19690 unlink pads before removing the element from the bin.
19692 2005-08-24 Andy Wingo <wingo@pobox.com>
19694 * gst/gst.c (parse_debug_list): Accept e.g. GST_DEBUG=4 to mean
19695 the same thing as GST_DEBUG=*:4.
19696 (parse_debug_level, parse_debug_category): New helper parsers.
19698 2005-08-24 Thomas Vander Stichele <thomas at apestaart dot org>
19700 * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
19701 (gst_base_transform_transform_size), (gst_base_transform_getcaps),
19702 (gst_base_transform_setcaps), (gst_base_transform_get_unit_size),
19703 (gst_base_transform_buffer_alloc),
19704 (gst_base_transform_handle_buffer):
19705 use gboolean return values and pointers to size so we can use the
19706 full GST_BUFFER_SIZE range (guint) for buffer sizes
19707 use GstPadDirection for transform_caps
19708 * gst/base/gstbasetransform.h:
19709 rename get_size to get_unit_size since that's what it is
19710 * gst/elements/gstcapsfilter.c: (gst_capsfilter_transform_caps):
19711 use GstPadDirection for transform_caps
19712 * gst/gstbuffer.c: (gst_buffer_new_and_alloc):
19713 * gst/gstutils.h:
19714 cleanup and debugging
19716 2005-08-24 Stefan Kost <ensonic@users.sf.net>
19718 * gst/gstelement.c: (gst_element_class_init),
19719 (gst_element_set_state), (activate_pads),
19720 (gst_element_save_thyself):
19721 * tools/gst-compprep.c: (main):
19722 * tools/gst-inspect.c: (print_element_properties_info):
19723 * tools/gst-xmlinspect.c: (print_element_properties):
19724 Fixed long standing mem-leak
19726 2005-08-24 Jan Schmidt <thaytan@mad.scientist.com>
19728 * check/gst/gstbin.c: (GST_START_TEST):
19729 * gst/gstbin.c: (bin_bus_handler):
19730 * gst/gstmessage.c: (gst_message_finalize), (_gst_message_copy),
19731 (gst_message_new), (gst_message_new_eos), (gst_message_new_error),
19732 (gst_message_new_warning), (gst_message_new_tag),
19733 (gst_message_new_state_changed), (gst_message_new_segment_start),
19734 (gst_message_new_segment_done), (gst_message_new_custom):
19735 * gst/gstmessage.h:
19736 * tools/gst-launch.c: (event_loop):
19737 * tools/gst-md5sum.c: (event_loop):
19738 Change GST_MESSAGE_SRC to be a GObject rather than a GstObject, so
19739 that applications can sensibly post custom messages with references
19740 to their own objects.
19742 2005-08-24 Andy Wingo <wingo@pobox.com>
19744 * gst/gstpad.c (gst_pad_fixate_caps): Check if the caps is fixed
19745 already.
19747 2005-08-24 Wim Taymans <wim@fluendo.com>
19749 * gst/base/gstbasetransform.c: (gst_base_transform_init),
19750 (gst_base_transform_transform_caps),
19751 (gst_base_transform_transform_size),
19752 (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
19753 (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
19754 (gst_base_transform_handle_buffer):
19755 * gst/base/gstbasetransform.h:
19756 Many fixes and new features added by Thomas. Can now also do
19757 transforms with variable sizes and a custom fixate_caps function.
19759 2005-08-24 Wim Taymans <wim@fluendo.com>
19761 * gst/gstbuffer.c: (gst_buffer_new_and_alloc):
19762 Some debugging.
19764 * gst/gstclock.h:
19765 Cast to ClockTime before formatting to time.
19767 * gst/gstutils.h:
19768 Cleanups.
19770 2005-08-24 Stefan Kost <ensonic@users.sf.net>
19772 * check/gst-libs/controller.c: (GST_START_TEST),
19773 (gst_controller_suite):
19774 * docs/gst/tmpl/gstcaps.sgml:
19775 * docs/gst/tmpl/gstghostpad.sgml:
19776 * docs/gst/tmpl/gstquery.sgml:
19777 * docs/gst/tmpl/gstutils.sgml:
19778 * libs/gst/controller/gst-helper.c: (gst_object_set_controller),
19779 (gst_object_sink_values), (gst_object_get_value_arrays),
19780 (gst_object_get_value_array):
19781 gracefully handle helper method calls to objects that are not beeing
19782 controlled, added test case for that
19784 2005-08-23 Wim Taymans <wim@fluendo.com>
19786 * gst/gstevent.c: (_gst_event_copy), (gst_event_new_custom),
19787 (gst_event_new_newsegment), (gst_event_parse_newsegment),
19788 (gst_event_new_tag), (gst_event_parse_tag), (gst_event_new_qos),
19789 (gst_event_parse_qos), (gst_event_new_seek),
19790 (gst_event_parse_seek):
19791 * gst/gstevent.h:
19792 Some more debugging output and doc cleanups.
19794 * gst/gstqueue.c: (gst_queue_handle_sink_event):
19795 Fix possible deadlock.
19797 2005-08-23 Stefan Kost <ensonic@users.sf.net>
19799 * docs/gst/gstreamer-docs.sgml:
19800 * docs/gst/gstreamer-sections.txt:
19801 * docs/gst/gstreamer.types:
19802 * docs/gst/tmpl/.cvsignore:
19803 * gst/gstbin.h:
19804 * gst/gstbus.c:
19805 * gst/gstelement.c:
19806 * gst/gstevent.h:
19807 added 100 symbols from gstreamer-unused.txt to the right sections
19808 fixed more broken comments
19809 added GstBus to docs
19811 2005-08-23 Stefan Kost <ensonic@users.sf.net>
19813 * docs/gst/gstreamer-sections.txt:
19814 * docs/gst/tmpl/.cvsignore:
19815 * docs/gst/tmpl/gstbin.sgml:
19816 * docs/gst/tmpl/gstbuffer.sgml:
19817 * gst/base/gstbasesrc.c:
19818 * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init):
19819 * gst/gstbuffer.c:
19820 * gst/gstbuffer.h:
19821 * tools/gst-launch.1.in:
19822 inlined more doc comments, added missing comments and fixed comments
19823 fixed typos
19825 2005-08-23 Thomas Vander Stichele <thomas at apestaart dot org>
19827 * gst/gstbuffer.c: (gst_buffer_new_and_alloc):
19828 some debugging
19829 * gst/gstcaps.h:
19830 whitespace fixes
19831 * gst/gstpad.c: (gst_pad_activate_push), (gst_pad_alloc_buffer):
19832 more debugging
19833 * gst/gststructure.c: (gst_caps_structure_fixate_field_boolean):
19834 * gst/gststructure.h:
19835 add a fixate function for booleans; add a FIXME that these func
19836 names should probably be gst_structure_fixate_*
19838 2005-08-23 Stefan Kost <ensonic@users.sf.net>
19840 * docs/gst/gstreamer-docs.sgml:
19841 * docs/gst/gstreamer-sections.txt:
19842 * gst/Makefile.am:
19843 * gst/gstbin.c: (gst_bin_get_type),
19844 (gst_bin_child_proxy_get_child_by_index),
19845 (gst_bin_child_proxy_get_children_count),
19846 (gst_bin_child_proxy_init):
19847 * gst/gstchildproxy.c: (gst_child_proxy_get_child_by_name),
19848 (gst_child_proxy_get_child_by_index),
19849 (gst_child_proxy_get_children_count), (gst_child_proxy_lookup),
19850 (gst_child_proxy_get_property), (gst_child_proxy_get_valist),
19851 (gst_child_proxy_get), (gst_child_proxy_set_property),
19852 (gst_child_proxy_set_valist), (gst_child_proxy_set),
19853 (gst_child_proxy_child_added), (gst_child_proxy_child_removed),
19854 (gst_child_proxy_base_init), (gst_child_proxy_get_type):
19855 * gst/gstchildproxy.h:
19856 * gst/parse/grammar.y:
19857 * tools/gst-inspect.c: (print_interfaces),
19858 (print_element_properties_info), (print_element_info):
19859 ported gstchildproxy over from 0.8
19860 ported gst-inspect fixes and enhancements over from 0.8
19862 2005-08-22 Wim Taymans <wim@fluendo.com>
19864 * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
19865 (gst_base_transform_handle_buffer):
19866 Also call the transform function if we have ANY caps.
19868 * gst/gstpipeline.c: (gst_pipeline_set_new_stream_time):
19869 Fix debug info.
19871 2005-08-22 Jan Schmidt <thaytan@mad.scientist.com>
19873 * gst/base/gstbasesrc.c: (gst_base_src_event_handler)
19874 Don't pretend to handle seek events if the source is not seekable
19876 2005-08-22 Jan Schmidt <thaytan@mad.scientist.com>
19878 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
19879 Remove extra parameter to debug output
19881 * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
19882 (gst_base_src_do_seek), (gst_base_src_activate_push):
19883 Fix seek event handling.
19885 * gst/gstpipeline.c: (gst_pipeline_change_state):
19886 * gst/gstqueue.c: (gst_queue_handle_sink_event),
19887 (gst_queue_src_activate_push):
19888 Don't start the src pad task on FLUSH_STOP if the pad
19889 isn't linked.
19890 Debug changes.
19892 2005-08-22 Wim Taymans <wim@fluendo.com>
19894 * check/gst/gstcaps.c: (GST_START_TEST), (gst_caps_suite):
19895 Added check for gst_static_caps_get() refcounting.
19897 2005-08-22 Wim Taymans <wim@fluendo.com>
19899 * gst/gstcaps.c: (gst_static_caps_get), (gst_caps_to_string):
19900 Make _static_caps_get() refcounting sane.
19902 * gst/gstelement.c: (gst_element_set_state):
19903 Add g_return_val_if_fail() to protect against segfaults.
19905 2005-08-22 Stefan Kost <ensonic@users.sf.net>
19907 * docs/gst/tmpl/gstevent.sgml:
19908 * gst/gstevent.c:
19909 * gst/gstevent.h:
19910 inlined remaining docs, added missing doc comments
19912 2005-08-22 Thomas Vander Stichele <thomas at apestaart dot org>
19914 * check/gst/gstbin.c: (GST_START_TEST):
19915 since we don't know when preroll is done, use refcount range
19916 check for the sink
19917 * gst/check/gstcheck.h:
19918 add macro for checking refcount range
19920 2005-08-21 Thomas Vander Stichele <thomas at apestaart dot org>
19922 * check/Makefile.am:
19923 clean up environment for when registry gets built versus
19924 when actual tests are run; valgrind seems to not report
19925 leaks if GST_PLUGIN_PATH is set to some specific values
19926 * check/gst/gstbin.c: (GST_START_TEST):
19927 add more refcounting checks; maybe this exposes a
19928 preroll lock bug ?
19929 * common/check.mak:
19930 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
19931 * gst/check/gstcheck.h:
19932 * gst/gstbin.c: (bin_element_is_semi_sink), (gst_bin_get_state),
19933 (gst_bin_change_state):
19934 * gst/gstpad.c: (gst_pad_activate_push), (gst_pad_chain):
19935 add/fix debugging/whitespace
19937 2005-08-21 Jan Schmidt <thaytan@mad.scientist.com>
19939 * check/gst/gstevent.c: (event_probe), (test_event),
19940 (GST_START_TEST):
19941 Er, don't call gst_bin_watch_for_state_change you idiot.
19943 2005-08-21 Jan Schmidt <thaytan@mad.scientist.com>
19945 * check/Makefile.am:
19946 Use CHECK_CFLAGS and CHECK_LIBS
19947 * check/gst/gstevent.c: (event_probe), (test_event),
19948 (GST_START_TEST):
19949 Don't leak events.
19950 * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
19951 (gst_base_src_start), (gst_base_src_stop),
19952 (gst_base_src_activate_push), (gst_base_src_activate_pull),
19953 (gst_base_src_change_state):
19954 Sprinkle gst_base_src_stop liberally around error paths to fix
19955 problems reusing a source after failed state changes.
19956 * gst/base/gsttypefindhelper.c: (helper_find_peek),
19957 (helper_find_suggest), (gst_type_find_helper):
19958 Extra debug output. Don't segfault on GST_PAD_GETRANGEFUNC = NULL
19959 * gst/gstevent.h:
19960 * docs/gst/tmpl/gstevent.sgml:
19961 Migrate part of the docs from the SGML file. Wait for ensonic to
19962 tell me how I did it wrong ;)
19963 * tools/gst-typefind.c: (main):
19964 Extra robustness to state changes between files.
19966 2005-08-21 Thomas Vander Stichele <thomas at apestaart dot org>
19968 * check/Makefile.am:
19969 don't valgrind the controller test - it's leaking - Stefan, HELP
19970 * gst/check/gstcheck.c: (gst_check_message_error),
19971 (gst_check_chain_func), (gst_check_setup_element),
19972 (gst_check_teardown_element), (gst_check_setup_src_pad),
19973 (gst_check_teardown_src_pad), (gst_check_setup_sink_pad),
19974 (gst_check_teardown_sink_pad):
19975 * gst/check/gstcheck.h:
19976 add a bunch of methods to set up elements, and src and sink pads
19977 * check/elements/fakesrc.c: (setup_fakesrc), (cleanup_fakesrc):
19978 * check/elements/identity.c: (setup_identity), (cleanup_identity),
19979 (GST_START_TEST):
19980 use them
19981 * gst/gstmessage.c:
19982 * gst/gsttag.h:
19983 whitespace/doc fixes
19985 2005-08-20 Thomas Vander Stichele <thomas at apestaart dot org>
19987 * gst/gstelement.h:
19988 make GST_ELEMENT_ERROR not do GST_ERROR_OBJECT - these errors should
19989 be handled by the application and not always printed as well
19991 2005-08-20 Thomas Vander Stichele <thomas at apestaart dot org>
19993 * check/Makefile.am:
19994 set GST_TOOLS_DIR
19995 * gst/check/gstcheck.c: (gst_check_message_error):
19996 * gst/check/gstcheck.h:
19997 add a fail_unless_equals_int
19998 add fail_unless for error messages
20000 2005-08-20 Thomas Vander Stichele <thomas at apestaart dot org>
20002 * check/Makefile.am:
20003 * check/gst.supp:
20004 * common/Makefile.am:
20005 * common/check.mak:
20006 * common/gst.supp:
20007 factor out some of the common stuff so we can use it
20009 2005-08-20 Thomas Vander Stichele <thomas at apestaart dot org>
20011 * check/Makefile.am:
20012 * check/gst/gstiterator.c: (GST_START_TEST):
20013 * check/gst/gstsystemclock.c: (GST_START_TEST),
20014 (gst_systemclock_suite):
20015 * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
20016 * gst/gstclock.c:
20017 valgrind more tests
20019 2005-08-20 Thomas Vander Stichele <thomas at apestaart dot org>
20021 * check/elements/.cvsignore:
20022 * check/elements/gstfakesrc.c:
20023 rename to name of element
20024 * check/elements/identity.c: (chain_func), (event_func),
20025 (setup_identity), (cleanup_identity), (GST_START_TEST),
20026 (identity_suite), (main):
20027 add a test for identity
20028 * check/Makefile.am:
20029 * pkgconfig/Makefile.am:
20030 * pkgconfig/gstreamer-check.pc.in:
20031 * pkgconfig/gstreamer-check-uninstalled.pc.in:
20032 * gst/check:
20033 * gst/Makefile.am:
20034 * configure.ac:
20035 move the check stuff to a library that gets installed
20036 * check/gst-libs/controller.c: (GST_START_TEST):
20037 * check/gst-libs/gdp.c:
20038 * check/gst/gst.c: (GST_START_TEST):
20039 * check/gst/gstbin.c:
20040 * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
20041 * check/gst/gstbus.c:
20042 * check/gst/gstcaps.c: (GST_START_TEST):
20043 * check/gst/gstelement.c:
20044 * check/gst/gstghostpad.c:
20045 * check/gst/gstiterator.c:
20046 * check/gst/gstmessage.c:
20047 * check/gst/gstminiobject.c: (thread_ref), (GST_START_TEST):
20048 * check/gst/gstobject.c:
20049 * check/gst/gstpad.c: (GST_START_TEST):
20050 * check/gst/gststructure.c: (GST_START_TEST):
20051 * check/gst/gstsystemclock.c: (GST_START_TEST),
20052 (gst_systemclock_suite):
20053 * check/gst/gsttag.c: (gst_tag_suite):
20054 * check/gst/gstvalue.c:
20055 * check/pipelines/cleanup.c:
20056 * check/pipelines/simple_launch_lines.c:
20057 * check/states/sinks.c:
20058 change include statement
20060 * docs/gst/gstreamer-sections.txt:
20061 * docs/gst/tmpl/gstpad.sgml:
20062 document more pad stuff
20063 * gst/gstminiobject.c: (gst_mini_object_ref),
20064 (gst_mini_object_unref):
20065 debug refcounting
20067 2005-08-19 Stefan Kost <ensonic@users.sf.net>
20069 * docs/gst/tmpl/gst.sgml:
20070 * gst/gst.c:
20071 eliminate another tmpl file, fix spelling in the long-description
20073 2005-08-18 Jan Schmidt <thaytan@mad.scientist.com>
20075 * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
20076 (test_event), (timediff), (gstevents_suite):
20077 Should fix build on 64-bit arch's
20079 2005-08-18 Andy Wingo <wingo@pobox.com>
20081 Make sure that when a pipeline goes to PLAYING, that data has
20082 actually hit the sink.
20084 * check/states/sinks.c (test_sink): A sink that doesn't get any
20085 data shouldn't return SUCCESS for going to either PLAYING or
20086 PAUSED. Test also the return values on the way back down.
20088 * gst/gstelement.c (gst_element_set_state): When changing the
20089 state of an element currently changing state asynchronously, go to
20090 lost-state after commiting the pending state. Makes future calls
20091 to get_state continue to return ASYNC.
20093 * gst/base/gstbasesink.c (gst_base_sink_change_state): Return
20094 ASYNC when going to PLAYING if we still don't have preroll, as can
20095 happen with live sources.
20097 2005-08-18 Jan Schmidt <thaytan@mad.scientist.com>
20099 * docs/pwg/advanced-types.xml:
20100 Hack long paragraph into 2 chunks as a workaround for buggy
20101 jadetex version in sid and breezy that loops infinitely and
20102 eats all RAM.
20104 2005-08-18 Jan Schmidt <thaytan@mad.scientist.com>
20106 * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
20107 (test_event), (timediff), (gstevents_suite):
20108 Provide more error margin in clock measurements to allow for
20109 g_get_current_time inaccuracies.
20111 2005-08-18 Jan Schmidt <thaytan@mad.scientist.com>
20113 * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
20114 (test_event), (timediff), (gstevents_suite):
20115 Fix error message output so I might be able to tell why the
20116 test works here but fails on the build farm.
20118 2005-08-18 Jan Schmidt <thaytan@mad.scientist.com>
20120 * check/Makefile.am:
20121 * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
20122 (test_event), (timediff), (gstevents_suite), (main):
20123 I wrote a test!
20125 * docs/design/part-seeking.txt:
20126 Spelling correction
20128 * docs/gst/tmpl/gstevent.sgml:
20129 * docs/gst/tmpl/gstfakesrc.sgml:
20130 Docs updates.
20132 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
20133 Treat a buffer-without-newsegment the same as a receiving
20134 a newsegment not in time format, and disable syncing to the clock
20135 with a warning.
20137 * gst/gstbus.c: (gst_bus_set_sync_handler):
20138 Assert if anyone tries to replace the existing sync_handler for bus,
20139 as only the owner should be setting it.
20141 * gst/gstevent.h:
20142 Have a fixed set of custom event enums with events identified by
20143 their structure name (as in 0.8), rather than a free-for-all
20144 allowing collisions between enum values from different plugins.
20146 * gst/gstpad.c: (gst_pad_class_init):
20147 Docs change.
20149 * gst/gstqueue.c: (gst_queue_handle_sink_event):
20150 Handle out-of-band downstream events from the sending thread.
20152 2005-08-17 Andy Wingo <wingo@pobox.com>
20154 * gst/gstpipeline.c (gst_pipeline_change_state): Interpret
20155 play-timeout==0 to mean no timeout at all. In that case, don't
20156 bother with a get_state or a warning, just return directly, even
20157 if it's ASYNC.
20159 * gst/base/gstbasetransform.c: Debug changes.
20161 * gst/gstutils.h:
20162 * gst/gstutils.c (gst_bin_watch_for_state_change): Add function to
20163 ensure bins post state change messages. A bit of a hack but I can't
20164 think of a way to avoid it.
20166 * check/gst/gstbin.c (test_watch_for_state_change): Added test.
20168 2005-08-16 Andy Wingo <wingo@pobox.com>
20170 * gst/base/gstadapter.h:
20171 * gst/base/gstadapter.c (gst_adapter_take): New function, like
20172 peek() but you own the data. Not terribly efficient atm.
20174 2005-08-16 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
20176 * gst/gstutils.c: (gst_element_found_tags_for_pad), (push_and_ref),
20177 (gst_element_found_tags):
20178 * gst/gstutils.h:
20179 Add two utility functions for tag handling.
20181 2005-08-16 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
20183 * docs/manual/advanced-dataaccess.xml:
20184 * docs/manual/basics-helloworld.xml:
20185 Fix docs to use _bin_add() before _link(), which fixes the examples
20186 with recent core versions (reported by Madhan Raj M
20187 <raj_madan@rediffmail.com>, #313199).
20189 2005-08-16 Wim Taymans <wim@fluendo.com>
20191 * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
20192 Added subtract checks.
20194 * docs/design/part-events.txt:
20195 Some more docs about newsegment
20197 * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
20198 Fix FIXME
20200 * gst/gstcaps.c: (gst_caps_to_string):
20201 Add comments, cleanups.
20203 * gst/gstelement.c: (gst_element_save_thyself):
20204 cleanups
20206 * gst/gstvalue.c: (gst_value_collect_int_range),
20207 (gst_string_unwrap), (gst_value_union_int_int_range),
20208 (gst_value_union_int_range_int_range),
20209 (gst_value_intersect_int_int_range),
20210 (gst_value_intersect_int_range_int_range),
20211 (gst_value_intersect_double_double_range),
20212 (gst_value_intersect_double_range_double_range),
20213 (gst_value_intersect_list), (gst_value_subtract_int_int_range),
20214 (gst_value_subtract_int_range_int),
20215 (gst_value_subtract_double_range_double),
20216 (gst_value_subtract_double_range_double_range),
20217 (gst_value_subtract_from_list), (gst_value_subtract_list),
20218 (gst_value_can_compare), (gst_value_compare_fraction):
20219 Cleanups, add comments, remove unneeded asserts.
20221 2005-08-15 Thomas Vander Stichele <thomas at apestaart dot org>
20223 * tools/gst-launch.c: (event_loop):
20224 don't convert NULL structures to strings
20226 2005-08-15 Stefan Kost <ensonic@users.sf.net>
20228 * docs/gst/gstreamer-sections.txt:
20229 made some defines private
20230 * docs/gst/tmpl/gstconfig.sgml:
20231 * docs/gst/tmpl/gstqueue.sgml:
20232 * docs/gst/tmpl/gsttaglist.sgml:
20233 * docs/gst/tmpl/gsttypes.sgml:
20234 * docs/gst/tmpl/gstutils.sgml:
20235 * docs/pwg/appendix-porting.xml:
20236 * gst/base/gstbasesink.h:
20237 * gst/base/gstbasesrc.c:
20238 * gst/base/gstbasesrc.h:
20239 * gst/elements/gstfakesink.c: (gst_fake_sink_class_init):
20240 * gst/elements/gstfakesrc.c: (gst_fake_src_class_init):
20241 * gst/gstelement.c: (gst_element_class_init):
20242 * gst/gstpad.c: (gst_pad_class_init):
20243 * gst/gstqueue.c: (gst_queue_class_init):
20244 * gst/gstxml.c: (gst_xml_class_init):
20245 documented all undocumented signal inline
20246 * libs/gst/controller/gst-controller.h:
20247 added padding
20249 2005-08-15 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
20251 * docs/pwg/appendix-porting.xml:
20252 Document _set_link_function -> _set_setcaps_function.
20254 2005-08-15 Thomas Vander Stichele <thomas at apestaart dot org>
20256 * check/Makefile.am:
20257 add a .check target for running the check
20258 * check/gst-libs/controller.c: (GST_START_TEST):
20259 cosmetic fixups
20260 * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
20261 complete checks for gstbuffer; would be nice if I could get the
20262 gcov stuff to work so I can see if I actually completed gstbuffer.c
20263 * check/gstcheck.h:
20264 add ASSERT_BUFFER_REFCOUNT
20266 2005-08-13 Tim-Philipp Müller <tim at centricular dot net>
20268 * docs/gst/gstreamer-sections.txt:
20269 * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
20270 * gst/gsttag.h:
20271 Add GST_TAG_LANGUAGE_CODE as we have in 0.8, and don't
20272 spew out a warning if a tag that is already registered
20273 is re-registered, unless it is re-registered with a
20274 different type (#308438).
20276 2005-08-12 Tim-Philipp Müller <tim at centricular dot net>
20278 * docs/pwg/appendix-porting.xml:
20279 * docs/pwg/building-state.xml:
20280 Add some paragraphs about state changes in 0.9 to the PWG
20281 and the porting guide, in particular about the new meaning
20282 of GST_STATE_PAUSED and how to write state change functions
20283 with concurrent access by multiple threads in mind.
20285 2005-08-11 Stefan Kost <ensonic@users.sf.net>
20287 * docs/gst/gstreamer-docs.sgml:
20288 * docs/libs/gstreamer-libs-docs.sgml:
20289 added deprecation and since indexes
20290 * libs/gst/controller/gst-controller.c:
20291 * libs/gst/controller/gst-helper.c:
20292 added since tags
20295 2005-08-11 Wim Taymans <wim@fluendo.com>
20297 * gst/gstghostpad.c: (gst_proxy_pad_set_target_unlocked),
20298 (gst_proxy_pad_set_target), (gst_proxy_pad_get_target),
20299 (gst_proxy_pad_dispose), (gst_ghost_pad_do_activate_push),
20300 (gst_ghost_pad_do_link), (gst_ghost_pad_set_internal),
20301 (gst_ghost_pad_new_notarget), (gst_ghost_pad_get_target),
20302 (gst_ghost_pad_set_target):
20303 Actually implement (re)setting the target on a ghostpad
20304 as described in the docs.
20306 2005-08-10 Tim-Philipp Müller <tim at centricular dot net>
20308 * gst/gst.c: (gst_init_check_with_popt_table), (init_pre):
20309 Check whether GST_DEBUG_NO_COLOR environment variable is
20310 set and disable coloured debug output if that is the case.
20312 2005-08-10 Tim-Philipp Müller <tim at centricular dot net>
20314 * gst/base/gsttypefindhelper.c: (helper_find_peek),
20315 (gst_type_find_helper):
20316 The memory returned by gst_type_find_peek() needs to
20317 stay valid until the end of a typefind function, and
20318 typefind functions may keep results from different
20319 offsets around, so we can't just unref the buffer from
20320 the previous _peek(), but have to save all buffers
20321 returned by _peek() until typefinding is done and only
20322 free them then.
20324 2005-08-09 Tim-Philipp Müller <tim at centricular dot net>
20326 * docs/gst/gstreamer-sections.txt:
20327 * gst/gstutils.h:
20328 New macros: GST_ROUND_UP_2() through GST_ROUND_UP_64().
20330 2005-08-08 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
20332 * gst/base/gstbasetransform.c: (gst_base_transform_buffer_alloc):
20333 Fix a pretty good memleak.
20335 2005-08-08 Tim-Philipp Müller <tim at centricular dot net>
20337 * gst/gstiterator.h:
20338 Fix wrong include and 'make distcheck'.
20340 2005-08-08 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
20342 * gst/gstbin.c: (bin_bus_handler):
20343 Use gst_element_post_message() instead.
20345 2005-08-08 Tim-Philipp Müller <tim at centricular dot net>
20347 * gst/base/gstadapter.h:
20348 * gst/base/gstbasesink.h:
20349 * gst/base/gstbasesrc.h:
20350 * gst/base/gstbasetransform.h:
20351 * gst/base/gstcollectpads.h:
20352 * gst/base/gstpushsrc.h:
20353 * gst/gstiterator.h:
20354 Add padding to our base elements' class and instance structs and
20355 to GstIterator (you will need to rebuild all plugins and apps!)
20357 2005-08-08 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
20359 * gst/gstbin.c: (bin_bus_handler):
20360 Make default message forwarding from child->bus to bin->bus
20361 threadsafe and make it not emit warnings if the parent has no bus.
20363 2005-08-08 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
20365 * gst/gstelement.c: (activate_pads):
20366 On paused->ready, set pad->caps to NULL, as is the documented
20367 behaviour in this state change. Fixes playback of series of
20368 media files when visualization is enabled in Totem.
20370 2005-08-07 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
20372 * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
20373 Allow NULL as filter-caps (which means "any").
20375 2005-08-05 Stefan Kost <ensonic@users.sf.net>
20377 * docs/libs/gstreamer-libs-sections.txt:
20378 * libs/gst/controller/gst-controller.c:
20379 * libs/gst/controller/gst-controller.h:
20380 * libs/gst/controller/gst-helper.c:
20381 adding more entries to the docs and fix small doc-bugs
20383 2005-08-05 Stefan Kost <ensonic@users.sf.net>
20385 * docs/gst/gstreamer-docs.sgml:
20386 * docs/gst/gstreamer-sections.txt:
20387 * docs/gst/gstreamer.types:
20388 * docs/gst/tmpl/gstbasesink.sgml:
20389 * docs/gst/tmpl/gstbasesrc.sgml:
20390 * docs/gst/tmpl/gstbasetransform.sgml:
20391 * docs/gst/tmpl/gstfakesrc.sgml:
20392 * gst/base/gstcollectpads.c:
20393 * gst/base/gstcollectpads.h:
20394 * libs/gst/controller/gst-controller.c:
20395 * libs/gst/controller/gst-controller.h:
20396 * libs/gst/controller/gst-helper.c:
20397 * libs/gst/controller/gst-interpolation.c:
20398 * libs/gst/controller/lib.c:
20399 added long/short desc for controller docs
20400 added collectpads base class docs
20401 added correct includes to base-class docs
20403 2005-08-05 Stefan Kost <ensonic@users.sf.net>
20405 * check/gst-libs/controller.c: (gst_test_mono_source_get_property),
20406 (gst_test_mono_source_set_property),
20407 (gst_test_mono_source_class_init), (GST_START_TEST),
20408 (gst_controller_suite):
20409 * docs/gst/gstreamer-docs.sgml:
20410 * docs/gst/gstreamer-sections.txt:
20411 * docs/gst/gstreamer.types:
20412 * docs/libs/gstreamer-libs-docs.sgml:
20413 * docs/libs/gstreamer-libs-sections.txt:
20414 * gst/base/gstadapter.c:
20415 * libs/gst/controller/gst-controller.c:
20416 (gst_controlled_property_new), (gst_controlled_property_free),
20417 (gst_controller_new_valist),
20418 (gst_controller_remove_properties_valist),
20419 (gst_controller_sink_values), (_gst_controller_finalize):
20420 * libs/gst/controller/gst-controller.h:
20421 * libs/gst/controller/gst-helper.c:
20422 (gst_object_control_properties), (gst_object_uncontrol_properties),
20423 (gst_object_get_controller), (gst_object_set_controller),
20424 (gst_object_sink_values), (gst_object_get_value_arrays),
20425 (gst_object_get_value_array):
20426 more tests (and fixes) for the controller
20427 more docs for the controller
20428 integrated companies docs for the adapter
20430 2005-08-05 Thomas Vander Stichele <thomas at apestaart dot org>
20432 * check/elements/gstfakesrc.c: (setup_fakesrc), (cleanup_fakesrc),
20433 (GST_START_TEST), (fakesrc_suite):
20434 add tests for sizetype
20436 2005-08-04 Andy Wingo <wingo@pobox.com>
20438 * gst/elements/gstcapsfilter.c: Reimplement using basetransform,
20439 fixes buffer_alloc proxying among other things.
20441 * gst/base/gstbasetransform.c:
20442 * gst/base/gstbasetransform.h:
20443 Revert patch to gstbasetransform from 7-28 removing
20444 delay_configure.
20446 * gst/base/gstbasetransform.h (GstBaseTransformClass.get_size):
20447 * gst/base/gstbasetransform.c (gst_base_transform_get_size):
20448 Semantics changed, should return not the size of the output buffer
20449 but the byte size of a buffer with a given caps.
20451 * gst/base/gstbasetransform.c (gst_base_transform_getcaps): Better
20452 debug object.
20453 (gst_base_transform_configure_caps): Don't set out_size here: (in,
20454 out) are not the pad caps until setcaps finishes.
20455 (gst_base_transform_buffer_alloc): Proxy the buffer_alloc for the
20456 not-in-place case as well. Deal with changing from in-place to
20457 not-in-place within calling pad_alloc_buffer. Still a bit
20458 concerned about the overhead here...
20460 2005-08-03 Andy Wingo <wingo@pobox.com>
20462 * gst/base/gstbasetransform.c (gst_base_transform_setcaps): Not
20463 fixating is an error.
20465 2005-08-04 Edward Hervey <edward@fluendo.com>
20467 * gst/base/gstadapter.h:
20468 Added gst_adapter_get_type() to the header
20470 2005-08-03 Stefan Kost <ensonic@users.sf.net>
20472 * check/Makefile.am:
20473 * check/gst-libs/controller.c:
20474 * libs/gst/controller/gst-controller.c:
20475 (gst_controller_new_valist):
20476 added check test suite for the controller
20477 * gst/base/gstpushsrc.c:
20478 fixed a doc typo
20480 2005-08-03 Stefan Kost <ensonic@users.sf.net>
20482 * docs/gst/Makefile.am:
20483 * docs/gst/gstreamer-docs.sgml:
20484 * docs/gst/gstreamer-sections.txt:
20485 * docs/gst/gstreamer.types:
20486 * docs/gst/tmpl/gstfakesrc.sgml:
20487 * gst/base/README:
20488 * gst/base/gstbasesink.c:
20489 * gst/base/gstbasesink.h:
20490 * gst/base/gstbasesrc.c:
20491 * gst/base/gstbasesrc.h:
20492 * gst/base/gstbasetransform.c:
20493 * gst/base/gstpushsrc.c:
20494 * gst/base/gstpushsrc.h:
20495 add short/long description docs to base classes
20496 add pushsrc to the docs
20497 remove consolidated doc fragments
20499 2005-08-03 Stefan Kost <ensonic@users.sf.net>
20501 * configure.ac:
20502 * docs/libs/Makefile.am:
20503 * docs/libs/gstreamer-libs-docs.sgml:
20504 * docs/libs/gstreamer-libs-sections.txt:
20505 * docs/libs/gstreamer-libs.types:
20506 * examples/Makefile.am:
20507 * examples/controller/.cvsignore:
20508 * examples/controller/Makefile.am:
20509 * examples/controller/audio-example.c: (main):
20510 * libs/gst/Makefile.am:
20511 * libs/gst/controller/.cvsignore:
20512 * libs/gst/controller/Makefile.am:
20513 * libs/gst/controller/gst-controller.c:
20514 (on_object_controlled_property_changed), (gst_timed_value_compare),
20515 (gst_timed_value_find),
20516 (gst_controlled_property_set_interpolation_mode),
20517 (gst_controlled_property_new), (gst_controlled_property_free),
20518 (gst_controller_find_controlled_property),
20519 (gst_controller_new_valist), (gst_controller_new),
20520 (gst_controller_remove_properties_valist),
20521 (gst_controller_remove_properties), (gst_controller_set),
20522 (gst_controller_set_from_list), (gst_controller_unset),
20523 (gst_controller_get), (gst_controller_get_all),
20524 (gst_controller_sink_values), (gst_controller_get_value_arrays),
20525 (gst_controller_get_value_array),
20526 (gst_controller_set_interpolation_mode),
20527 (_gst_controller_finalize), (_gst_controller_init),
20528 (_gst_controller_class_init), (gst_controller_get_type):
20529 * libs/gst/controller/gst-controller.h:
20530 * libs/gst/controller/gst-helper.c: (g_object_control_properties),
20531 (g_object_uncontrol_properties), (g_object_get_controller),
20532 (g_object_set_controller), (g_object_sink_values),
20533 (g_object_get_value_arrays), (g_object_get_value_array):
20534 * libs/gst/controller/gst-interpolation.c:
20535 (gst_controlled_property_find_timed_value_node),
20536 (interpolate_none_get), (interpolate_trigger_get),
20537 (interpolate_trigger_get_value_array):
20538 * libs/gst/controller/lib.c: (gst_controller_init):
20539 * pkgconfig/Makefile.am:
20540 * pkgconfig/gstreamer-control-uninstalled.pc.in:
20541 * pkgconfig/gstreamer-control.pc.in:
20542 * testsuite/Makefile.am:
20543 * testsuite/controller/.cvsignore:
20544 * testsuite/controller/Makefile.am:
20545 * testsuite/controller/interpolator.c: (main):
20546 added controller code
20547 removed dparam pc files
20549 2005-08-01 Jan Schmidt <thaytan@mad.scientist.com>
20550 * gst/base/gstcollectpads.c: (gst_collectpads_finalize),
20551 (gst_collectpads_stop):
20552 Broadcast the condition when shutting down, to make sure we wake all
20553 threads up. Shut down pads on finalize, for safety.
20555 2005-08-01 Jan Schmidt <thaytan@mad.scientist.com>
20556 * gst/base/gstbasetransform.c: (gst_base_transform_init),
20557 (gst_base_transform_handle_buffer),
20558 (gst_base_transform_change_state):
20559 Handle PAUSED->READY->PAUSED transition after negotiation
20560 occurred already.
20561 * gst/gstmessage.c: (gst_message_init):
20562 Extra piece of debug for new messages.
20564 2005-08-01 Stefan Kost <ensonic@users.sf.net>
20566 * configure.ac:
20567 * docs/gst/tmpl/gstbasesrc.sgml:
20568 * docs/gst/tmpl/gstelement.sgml:
20569 * docs/gst/tmpl/gstevent.sgml:
20570 * docs/gst/tmpl/gstfakesrc.sgml:
20571 * docs/gst/tmpl/gstformat.sgml:
20572 * docs/gst/tmpl/gstghostpad.sgml:
20573 * docs/gst/tmpl/gstpad.sgml:
20574 * docs/gst/tmpl/gstquery.sgml:
20575 * docs/gst/tmpl/gststructure.sgml:
20576 * docs/gst/tmpl/gsttaglist.sgml:
20577 * docs/gst/tmpl/gstvalue.sgml:
20578 * docs/libs/gstreamer-libs-docs.sgml:
20579 * docs/libs/gstreamer-libs-sections.txt:
20580 * docs/libs/gstreamer-libs.types:
20581 * libs/gst/Makefile.am:
20582 * libs/gst/control/.cvsignore:
20583 * libs/gst/control/Makefile.am:
20584 * libs/gst/control/control.c:
20585 * libs/gst/control/control.h:
20586 * libs/gst/control/dparam.c:
20587 * libs/gst/control/dparam.h:
20588 * libs/gst/control/dparam_smooth.c:
20589 * libs/gst/control/dparam_smooth.h:
20590 * libs/gst/control/dparamcommon.h:
20591 * libs/gst/control/dparammanager.c:
20592 * libs/gst/control/dparammanager.h:
20593 * libs/gst/control/dplinearinterp.c:
20594 * libs/gst/control/dplinearinterp.h:
20595 * libs/gst/control/unitconvert.c:
20596 * libs/gst/control/unitconvert.h:
20597 * testsuite/Makefile.am:
20598 * testsuite/dynparams/.cvsignore:
20599 * testsuite/dynparams/Makefile.am:
20600 * testsuite/dynparams/dparamstest.c:
20601 * tools/Makefile.am:
20602 * tools/gst-inspect.c: (print_element_info), (main):
20603 * tools/gst-xmlinspect.c: (print_element_info), (main):
20604 deactivate and remove dparams (libgstcontrol)
20606 2005-08-01 Tim-Philipp Müller <tim at centricular dot net>
20608 * gst/elements/gsttypefindelement.c:
20609 (gst_type_find_element_have_type), (gst_type_find_element_init),
20610 (stop_typefinding), (gst_type_find_element_handle_event),
20611 (gst_type_find_element_chain), (gst_type_find_element_getrange):
20612 * gst/elements/gsttypefindelement.h:
20613 Set caps on all outgoing buffers, not just the first one.
20615 2005-08-01 Tim-Philipp Müller <tim at centricular dot net>
20617 * gst/elements/gsttypefindelement.c:
20618 (gst_type_find_element_have_type),
20619 (gst_type_find_element_check_set_buffer_caps),
20620 (gst_type_find_element_init), (stop_typefinding),
20621 (gst_type_find_element_handle_event),
20622 (gst_type_find_element_chain), (gst_type_find_element_getrange):
20623 * gst/elements/gsttypefindelement.h:
20624 Set caps on first outgoing buffer when we've found the type.
20626 2005-08-01 Tim-Philipp Müller <tim at centricular dot net>
20628 * docs/gst/gstreamer-docs.sgml:
20629 * docs/gst/gstreamer-sections.txt:
20630 * docs/gst/tmpl/gstscheduler.sgml:
20631 * docs/gst/tmpl/gstschedulerfactory.sgml:
20632 Remove some old cruft from docs.
20634 2005-07-31 Tim-Philipp Müller <tim at centricular dot net>
20636 * gst/gstpad.h:
20637 Fix inline docs for GstPadLinkReturn.
20639 * gst/gststructure.c: (gst_structure_has_name):
20640 * gst/gststructure.h:
20641 * docs/gst/gstreamer-sections.txt:
20642 New API: gst_structure_has_name().
20644 2005-07-30 Tim-Philipp Müller <tim at centricular dot net>
20646 * configure.ac:
20647 Use AC_SYS_LARGEFILE, which will set _FILE_OFFSET_BITS=64
20648 and _LARGEFILE_SOURCE in config.h as required. Do not
20649 export those flags in our .pc files any longer (#142209).
20651 Remove unused GST_DISABLE_OMEGA_COTHREADS stuff.
20653 * gst/elements/gstfilesink.c: (gst_file_sink_class_init),
20654 (gst_file_sink_do_seek), (gst_file_sink_event),
20655 (gst_file_sink_get_current_offset), (gst_file_sink_render):
20656 Redo seek/tell calls with large file support in mind; add some
20657 debugging messages; add log message that tells us when large
20658 file support is unavailable or not enabled for some reason.
20660 * gst/elements/gstfilesrc.c: (gst_file_src_class_init):
20661 Add log message that tells us when large file support
20662 is unavailable or not enabled for some reason.
20664 2005-07-29 Wim Taymans <wim@fluendo.com>
20666 * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
20667 Added test for removing an element with ghostpad from a bin.
20668 Fixed test as current implementation does the right thing.
20670 * gst/gstghostpad.c: (gst_proxy_pad_class_init),
20671 (gst_proxy_pad_do_query_type), (gst_proxy_pad_do_event),
20672 (gst_proxy_pad_do_query), (gst_proxy_pad_do_internal_link),
20673 (gst_proxy_pad_do_bufferalloc), (gst_proxy_pad_do_activate),
20674 (gst_proxy_pad_do_activatepull), (gst_proxy_pad_do_activatepush),
20675 (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange),
20676 (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_getcaps),
20677 (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
20678 (gst_proxy_pad_do_setcaps), (gst_proxy_pad_set_target),
20679 (gst_proxy_pad_get_target), (gst_proxy_pad_init),
20680 (gst_proxy_pad_dispose), (gst_proxy_pad_finalize),
20681 (gst_ghost_pad_class_init), (gst_ghost_pad_do_activate_push),
20682 (gst_ghost_pad_do_link), (gst_ghost_pad_do_unlink),
20683 (gst_ghost_pad_set_internal), (gst_ghost_pad_dispose),
20684 (gst_ghost_pad_new_notarget), (gst_ghost_pad_new),
20685 (gst_ghost_pad_get_target), (gst_ghost_pad_set_target):
20686 * gst/gstghostpad.h:
20687 Clean up ghostpads, remove properties for internal stuff.
20688 Make threadsafe.
20689 Fix refcounting.
20690 Prepare for switching targets, not all use cases work yet.
20692 2005-07-29 Wim Taymans <wim@fluendo.com>
20694 * docs/design/part-gstghostpad.txt:
20695 Small update.
20697 * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
20698 (gst_bin_remove_func):
20699 Unlinking pads while holding the bin LOCK is not a good
20700 idea.
20702 * gst/gstpad.c: (gst_pad_class_init),
20703 (gst_pad_link_check_hierarchy), (gst_pad_get_caps_unlocked),
20704 (gst_pad_accept_caps), (gst_pad_set_caps), (gst_pad_send_event):
20705 No prob setting template after creating the pad.
20707 2005-07-29 Jan Schmidt <thaytan@mad.scientist.com>
20709 * gst/gstbus.c: (gst_bus_set_flushing), (gst_bus_pop),
20710 (gst_bus_peek), (gst_bus_source_dispatch),
20711 (gst_bus_add_watch_full), (poll_handler), (poll_timeout),
20712 (poll_destroy), (poll_destroy_timeout), (gst_bus_poll):
20713 gst_bus_poll may be called from other threads. Handle
20714 this nicely by not making poll_data disappear off the
20715 stack once gst_bus_poll returns.
20716 gst_bus_peek now increments the refcount on the returned
20717 message.
20719 2005-07-29 Wim Taymans <wim@fluendo.com>
20721 * docs/design/part-gstghostpad.txt:
20722 Overview of current GhostPad datastructures and use
20723 cases for changing the target.
20725 2005-07-28 Wim Taymans <wim@fluendo.com>
20727 * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
20728 Added checks for hierarchy consistency whan adding linked
20729 elements to bins.
20731 * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
20732 Added check to test element scheduling without bin/pipeline.
20734 * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
20735 First add elements to bin, then link.
20737 * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
20738 (gst_bin_remove_func):
20739 Unlink pads from elements added/removed from bin to maintain
20740 hierarchy consistency.
20742 2005-07-28 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
20744 * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
20745 (gst_base_transform_handle_buffer):
20746 * gst/base/gstbasetransform.h:
20747 Remove broken delay_configure (fixes renegotiation of software
20748 scaling pipelines); remove some leftover printf()s.
20750 2005-07-28 Wim Taymans <wim@fluendo.com>
20752 * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
20753 Added some more tests for wrong hierarchy
20755 * docs/design/part-overview.txt:
20756 Some updates.
20758 * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_dispose):
20759 Cleanups.
20761 * gst/gstelement.c: (gst_element_remove_pad), (gst_element_seek),
20762 (gst_element_dispose):
20763 Some more cleanups.
20765 * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
20766 (gst_pad_link_check_hierarchy), (gst_pad_link_prepare),
20767 (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
20768 (gst_pad_set_caps), (gst_pad_send_event):
20769 Check for correct hierarchy when linking pads. Moving to
20770 strict requirement for ghostpads when linking elements in
20771 different bins.
20773 * gst/gstpad.h:
20774 Clean ups. Added WRONG_HIERARCHY return value.
20776 2005-07-28 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
20778 * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
20779 Better debug if no transform is possible.
20781 2005-07-27 Wim Taymans <wim@fluendo.com>
20783 * docs/random/wtay/network-transp:
20784 Some old doc I had.
20786 2005-07-27 Wim Taymans <wim@fluendo.com>
20788 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
20789 (gst_dp_event_from_packet):
20790 Fix serialization of seek events.
20792 2005-07-27 Wim Taymans <wim@fluendo.com>
20794 * check/gst-libs/gdp.c: (GST_START_TEST):
20795 * gst/elements/gstfakesink.c: (gst_fake_sink_event):
20796 Fix compilation and fix event serialization.
20798 2005-07-27 Wim Taymans <wim@fluendo.com>
20800 * CHANGES-0.9:
20801 * docs/design/part-TODO.txt:
20802 * docs/design/part-events.txt:
20803 Some docs updates
20805 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
20806 (gst_base_sink_event), (gst_base_sink_do_sync),
20807 (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
20808 * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
20809 (gst_base_src_do_seek), (gst_base_src_event_handler),
20810 (gst_base_src_loop):
20811 * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
20812 (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
20813 (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
20814 (gst_base_transform_event), (gst_base_transform_handle_buffer),
20815 (gst_base_transform_set_passthrough),
20816 (gst_base_transform_is_passthrough):
20817 * gst/elements/gstfakesink.c: (gst_fake_sink_event):
20818 * gst/elements/gstfilesink.c: (gst_file_sink_event):
20819 Event updates.
20821 * gst/gstbuffer.h:
20822 Use faster casts.
20824 * gst/gstelement.c: (gst_element_seek):
20825 * gst/gstelement.h:
20826 Update gst_element_seek.
20828 * gst/gstevent.c: (gst_event_finalize), (_gst_event_copy),
20829 (gst_event_new), (gst_event_new_custom), (gst_event_get_structure),
20830 (gst_event_new_flush_start), (gst_event_new_flush_stop),
20831 (gst_event_new_eos), (gst_event_new_newsegment),
20832 (gst_event_parse_newsegment), (gst_event_new_tag),
20833 (gst_event_parse_tag), (gst_event_new_filler), (gst_event_new_qos),
20834 (gst_event_parse_qos), (gst_event_new_seek),
20835 (gst_event_parse_seek), (gst_event_new_navigation):
20836 * gst/gstevent.h:
20837 Make GstEvent use GstStructure. Add parsing code, make sure the
20838 API is sufficiently generic.
20839 Mark possible directions of events and serialization.
20841 * gst/gstmessage.c: (gst_message_init), (gst_message_finalize),
20842 (_gst_message_copy), (gst_message_new_segment_start),
20843 (gst_message_new_segment_done), (gst_message_new_custom),
20844 (gst_message_parse_segment_start),
20845 (gst_message_parse_segment_done):
20846 Small cleanups.
20848 * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
20849 (gst_pad_set_caps), (gst_pad_send_event):
20850 Update for new events.
20851 Catch events sent in wrong directions.
20853 * gst/gstqueue.c: (gst_queue_link_src),
20854 (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
20855 (gst_queue_handle_src_query):
20856 Event updates.
20858 * gst/gsttag.c:
20859 * gst/gsttag.h:
20860 Remove event code from this file.
20862 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
20863 (gst_dp_event_from_packet):
20864 Event updates.
20866 2005-07-27 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
20868 * gst/base/gstbasetransform.c: (gst_base_transform_getcaps),
20869 (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
20870 (gst_base_transform_get_size), (gst_base_transform_handle_buffer):
20871 Make debugging actually useful.
20873 2005-07-25 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
20875 * gst/gstpad.c: (fixate_value), (gst_pad_default_fixate),
20876 (gst_pad_fixate_caps):
20877 Implement default fixation once again, so that gst_pad_fixate()
20878 actually does anything at all. This probably needs to be some
20879 sort of a last resort, and use profile-based fixation first, but
20880 since that doesn't exist yet, this is the best we have. Fixes
20881 visualization in Totem.
20883 2005-07-22 Wim Taymans <wim@fluendo.com>
20885 * docs/design/part-events.txt:
20886 Small update.
20888 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
20889 (gst_base_sink_do_sync), (gst_base_sink_activate_push),
20890 (gst_base_sink_activate_pull):
20891 Some more comments.
20893 * gst/elements/gstfakesrc.c: (gst_fake_src_class_init),
20894 (gst_fake_src_create):
20895 Fix handoff marshall.
20897 * gst/elements/gstidentity.c: (gst_identity_class_init),
20898 (gst_identity_transform_ip):
20899 We're a real inplace element.
20901 * gst/gstbus.c: (gst_bus_post):
20902 Added some comments.
20904 * tests/lat.c: (fakesrc), (fakesink), (simple), (queue), (main):
20905 * tests/muxing/case1.c: (main):
20906 * tests/sched/dynamic-pipeline.c: (main):
20907 * tests/sched/interrupt1.c: (main):
20908 * tests/sched/interrupt2.c: (main):
20909 * tests/sched/interrupt3.c: (main):
20910 * tests/sched/runxml.c: (main):
20911 * tests/sched/sched-stress.c: (main):
20912 * tests/seeking/seeking1.c: (event_received), (main):
20913 * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
20914 (main):
20915 * tests/threadstate/threadstate3.c: (main):
20916 * tests/threadstate/threadstate4.c: (main):
20917 * tests/threadstate/threadstate5.c: (main):
20918 Fix the tests.
20920 2005-07-21 Wim Taymans <wim@fluendo.com>
20922 * docs/design/part-seeking.txt:
20923 Some small additions.
20925 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
20926 (gst_base_sink_get_times), (gst_base_sink_do_sync),
20927 (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
20928 * gst/base/gstbasesink.h:
20929 discont values are gint64, handle the math correctly.
20931 * gst/base/gstbasesrc.c: (gst_base_src_loop):
20932 Make the basesrc report error if the source pad is not linked.
20934 * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
20935 (gst_queue_loop), (gst_queue_handle_src_query),
20936 (gst_queue_src_activate_push):
20937 Make queue collect data even if the srcpad is not linked.
20938 Start pushing out data as soon as it is linked.
20940 * gst/gstutils.c: (gst_element_unlink), (gst_flow_get_name):
20941 * gst/gstutils.h:
20942 Added gst_flow_get_name() to ease error reporting.
20944 2005-07-20 Wim Taymans <wim@fluendo.com>
20946 * gst/gstmessage.c: (gst_message_new_segment_start),
20947 (gst_message_new_segment_done), (gst_message_parse_segment_start),
20948 (gst_message_parse_segment_done):
20949 * gst/gstmessage.h:
20950 Added a bunch of messages for advanced seeking.
20952 * gst/parse/grammar.y:
20953 * libs/gst/control/dparammanager.c: (gst_dpman_set_parent),
20954 (gst_dpman_state_changed):
20955 Fix some new-pad -> pad-added signals
20957 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
20959 * docs/manual/appendix-porting.xml:
20960 * docs/pwg/appendix-porting.xml:
20961 Document new-pad/state-change signal renames and the FixedList
20962 type rename.
20964 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
20966 * docs/manual/advanced-autoplugging.xml:
20967 * docs/manual/basics-helloworld.xml:
20968 * docs/manual/basics-pads.xml:
20969 * docs/random/ds/0.9-suggested-changes:
20970 * gst/gstelement.c: (gst_element_class_init), (gst_element_seek):
20971 * gst/gstelement.h:
20972 * gst/gstevent.h:
20973 * gst/gstformat.h:
20974 * gst/gstquery.h:
20975 * gst/gststructure.c: (gst_structure_value_get_generic_type),
20976 (gst_structure_parse_array), (gst_structure_parse_value):
20977 * gst/gstvalue.c: (gst_type_is_fixed),
20978 (gst_value_list_prepend_value), (gst_value_list_append_value),
20979 (gst_value_list_get_size), (gst_value_list_get_value),
20980 (gst_value_transform_array_string), (gst_value_serialize_array),
20981 (gst_value_deserialize_array), (gst_value_intersect_array),
20982 (gst_value_is_fixed), (_gst_value_initialize):
20983 * gst/gstvalue.h:
20984 GstElement::new-pad -> pad-added, GstElement::state-change ->
20985 state-changed, GstValueFixedList -> GstValueArray, add format and
20986 flags as their own arguments in gst_element_seek() (should improve
20987 "bindeability"), remove function generators since they don't work
20988 under a whole bunch of compilers (they were deprecated already
20989 anyway).
20991 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
20993 * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
20994 (_gst_debug_register_funcptr):
20995 * gst/gstinfo.h:
20996 Fix illegal cast on some platforms (#309253).
20998 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
21000 * gst/gstmessage.c: (gst_message_new_custom):
21001 * gst/gstmessage.h:
21002 Add _new_custom, make _new_application a macro to _new_custom.
21004 2005-07-20 Wim Taymans <wim@fluendo.com>
21006 * gst/base/gstbasesrc.c: (gst_base_src_init),
21007 (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
21008 * gst/base/gstbasesrc.h:
21009 Add a gboolean to decide when to push out a discont.
21011 * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
21012 (gst_queue_loop), (gst_queue_handle_src_query),
21013 (gst_queue_sink_activate_push), (gst_queue_src_activate_push),
21014 (gst_queue_set_property), (gst_queue_get_property):
21015 Some cleanups.
21017 * tests/threadstate/threadstate1.c: (main):
21018 Make a thread test compile and run... very silly..
21021 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
21023 * docs/manual/appendix-porting.xml:
21024 Mention removal of libgstgconf-0.9.la and existence of gconf
21025 elements.
21027 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
21029 * docs/pwg/advanced-clock.xml:
21030 * docs/pwg/appendix-porting.xml:
21031 * docs/pwg/intro-preface.xml:
21032 * docs/pwg/other-base.xml:
21033 * docs/pwg/other-manager.xml:
21034 * docs/pwg/other-nton.xml:
21035 * docs/pwg/other-ntoone.xml:
21036 * docs/pwg/other-oneton.xml:
21037 * docs/pwg/pwg.xml:
21038 Document base classes, update sections of n-to-1 and 1-to-n (muxer,
21039 demuxer), remove n-to-n (was never written), fix some code examples
21040 and links and update the porting section to include all this.
21042 2005-07-19 Wim Taymans <wim@fluendo.com>
21044 * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_sink_event),
21045 (gst_queue_chain), (gst_queue_loop), (gst_queue_handle_src_event),
21046 (gst_queue_handle_src_query), (gst_queue_sink_activate_push),
21047 (gst_queue_src_activate_push), (gst_queue_change_state),
21048 (gst_queue_get_property):
21049 * gst/gstqueue.h:
21050 Propagate GstFlowReturn more intelligently upstream and output
21051 an ERROR/EOS when streaming stopped due to fatal error.
21053 2005-07-19 Wim Taymans <wim@fluendo.com>
21055 * tools/gst-launch.c: (check_intr), (event_loop), (main):
21056 Don't block forever for the state change to complete, the
21057 pipeline already did with a sensible timeout.
21059 2005-07-19 Wim Taymans <wim@fluendo.com>
21061 * gst/base/gstbasesrc.c: (gst_base_src_get_range):
21062 Make sure we never call the create function is we
21063 got deactivated.
21065 2005-07-19 Andy Wingo <wingo@pobox.com>
21067 * gst/parse/parse.l: Attempt to solve bug #172815.
21069 2005-07-19 Wim Taymans <wim@fluendo.com>
21071 * docs/design/part-clocks.txt:
21072 * docs/design/part-events.txt:
21073 * gst/base/gstbasesrc.c: (gst_base_src_do_seek):
21074 Small docs updates.
21075 Only update the seeking values when we are not
21076 busy streaming.
21078 2005-07-19 Jan Schmidt <thaytan@mad.scientist.com>
21080 * gst/base/gstbasesrc.c: (gst_base_src_loop):
21081 Oops, ignore the result of gst_pad_push_event here.
21083 2005-07-19 Jan Schmidt <thaytan@mad.scientist.com>
21085 * gst/base/gstbasesrc.c: (gst_base_src_loop),
21086 (gst_base_src_activate_push):
21087 Send discont event from the loop function, as pads
21088 aren't activated yet in the activate_push handler.
21090 * gst/gstbin.c: (bin_bus_handler):
21091 Don't leak element name.
21093 2005-07-18 Andy Wingo <wingo@pobox.com>
21095 * configure.ac: Use AS_LIBTOOL_TAGS.
21097 2005-07-18 Wim Taymans <wim@fluendo.com>
21099 * docs/gst/gstreamer.types:
21100 Remove deleted types.
21102 2005-07-18 Wim Taymans <wim@fluendo.com>
21104 * check/elements/gstfakesrc.c: (GST_START_TEST):
21105 * configure.ac:
21106 * gst/Makefile.am:
21107 * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
21108 (init_popt_callback):
21109 * gst/gst.h:
21110 * gst/gst_private.h:
21111 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_add_func),
21112 (gst_bin_remove_func), (gst_bin_get_state), (gst_bin_change_state):
21113 * gst/gstbin.h:
21114 * gst/gstbus.h:
21115 * gst/gstconfig.h.in:
21116 * gst/gstelement.c: (gst_element_class_init),
21117 (gst_element_set_base_time), (gst_element_get_base_time),
21118 (iterator_fold_with_resync), (gst_element_change_state),
21119 (gst_element_dispose), (gst_element_get_bus):
21120 * gst/gstelement.h:
21121 * gst/gstelementfactory.h:
21122 * gst/gsterror.c: (_gst_core_errors_init):
21123 * gst/gsterror.h:
21124 * gst/gstevent.h:
21125 * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
21126 * gst/gstindex.c:
21127 * gst/gstinfo.c: (_gst_debug_init):
21128 * gst/gstmessage.c: (_gst_message_copy):
21129 * gst/gstmessage.h:
21130 * gst/gstminiobject.h:
21131 * gst/gstobject.c:
21132 * gst/gstobject.h:
21133 * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
21134 (gst_pad_set_caps), (gst_pad_start_task), (gst_pad_stop_task):
21135 * gst/gstpad.h:
21136 * gst/gstparse.h:
21137 * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
21138 (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
21139 (gst_pipeline_get_last_stream_time):
21140 * gst/gstpipeline.h:
21141 * gst/gstpluginfeature.h:
21142 * gst/gstquery.h:
21143 * gst/gstscheduler.c:
21144 * gst/gstscheduler.h:
21145 * gst/gststructure.h:
21146 * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
21147 (gst_task_finalize), (gst_task_func), (gst_task_create),
21148 (gst_task_set_lock), (gst_task_get_state), (gst_task_start),
21149 (gst_task_stop), (gst_task_pause):
21150 * gst/gsttask.h:
21151 * gst/gsttypefind.h:
21152 * gst/gsttypes.h:
21153 * gst/registries/gstlibxmlregistry.c: (load_feature),
21154 (gst_xml_registry_load), (gst_xml_registry_save_feature):
21155 * gst/registries/gstxmlregistry.c:
21156 (gst_xml_registry_start_element), (gst_xml_registry_save_feature):
21157 * gst/schedulers/threadscheduler.c:
21158 * libs/gst/control/dparammanager.h:
21159 * tools/gst-inspect.c: (print_element_list),
21160 (print_plugin_features), (print_element_features):
21161 * tools/gst-xmlinspect.c: (print_element_list),
21162 (print_plugin_info), (main):
21163 Removed plugable schedulers.
21164 Removed Scheduler/Manager from elements.
21165 Removed gsttypes.h, rearranged includes.
21166 Removed dependency pad<->element, element<>pipeline, and
21167 various others, fix includes.
21168 implement gst_pad_get_parent() with gst_object_get_parent()
21169 Make GstTask sefcontained.
21170 Fix _get_state() on GstBin, it did not return ASYNC with a 0
21171 timeout.
21172 Fix endless loop in iterator_fold_with_resync.
21175 2005-07-18 Wim Taymans <wim@fluendo.com>
21177 * gst/Makefile.am:
21178 * gst/gstarch.h:
21179 Remove old file.
21181 2005-07-18 Wim Taymans <wim@fluendo.com>
21183 * gst/Makefile.am:
21184 No more cothreads.h
21186 2005-07-18 Wim Taymans <wim@fluendo.com>
21188 * gst/cothreads.c:
21189 * gst/cothreads.h:
21190 Let's remove these.
21192 2005-07-18 Wim Taymans <wim@fluendo.com>
21194 * docs/design/part-dynamic.txt:
21195 * docs/design/part-events.txt:
21196 * docs/design/part-seeking.txt:
21197 Some more docs in the works.
21199 * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
21200 (gst_base_transform_getcaps), (gst_base_transform_configure_caps),
21201 (gst_base_transform_setcaps), (gst_base_transform_get_size),
21202 (gst_base_transform_buffer_alloc), (gst_base_transform_event),
21203 (gst_base_transform_handle_buffer),
21204 (gst_base_transform_sink_activate_push),
21205 (gst_base_transform_src_activate_pull),
21206 (gst_base_transform_set_passthrough),
21207 (gst_base_transform_is_passthrough):
21208 Refcounting fixes.
21210 * gst/gstbus.c: (gst_bus_source_dispatch), (gst_bus_poll):
21211 Cleanups.
21213 * gst/gstevent.c: (gst_event_finalize):
21214 Set SRC to NULL.
21216 * gst/gstutils.c: (gst_element_unlink),
21217 (gst_pad_get_parent_element), (gst_pad_proxy_getcaps),
21218 (gst_pad_proxy_setcaps):
21219 * gst/gstutils.h:
21220 Add _get_parent_element() to get a pads parent as an element.
21222 2005-07-18 Wim Taymans <wim@fluendo.com>
21224 * check/gst/gstbin.c: (GST_START_TEST):
21225 Remove bogus test.
21227 2005-07-18 Wim Taymans <wim@fluendo.com>
21229 * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
21230 (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
21231 (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
21232 (gst_base_sink_event), (gst_base_sink_do_sync),
21233 (gst_base_sink_chain), (gst_base_sink_loop),
21234 (gst_base_sink_deactivate), (gst_base_sink_activate_push),
21235 (gst_base_sink_activate_pull), (gst_base_sink_change_state):
21236 Refcounting fixes.
21237 Fix logic for returning ASYNC when not prerolled.
21239 2005-07-18 Wim Taymans <wim@fluendo.com>
21241 * gst/gstqueue.c: (gst_queue_handle_sink_event):
21242 Fix nasty refcount bug.
21244 2005-07-16 Philippe Khalaf <burger@speedy.org>
21246 * gst/elements/gstfdsrc.c:
21247 * gst/elements/gstfdsrc.h:
21248 * gst/elements/gstelements.c:
21249 * gst/elements/Makefile.am:
21250 Ported fdsrc to 0.9.
21252 2005-07-16 Wim Taymans <wim@fluendo.com>
21254 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
21255 (gst_base_sink_do_sync):
21256 Fix compile error.
21258 2005-07-16 Wim Taymans <wim@fluendo.com>
21260 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
21261 (gst_base_sink_event), (gst_base_sink_get_times),
21262 (gst_base_sink_do_sync), (gst_base_sink_change_state):
21263 * gst/base/gstbasesink.h:
21264 Store and use discont values when syncing buffers as described
21265 in design docs.
21267 * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
21268 (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
21269 (gst_base_src_activate_push):
21270 Push discont event when starting.
21272 * gst/elements/gstidentity.c: (gst_identity_transform):
21273 Small cleanups.
21275 * gst/gstbin.c: (gst_bin_change_state):
21276 Small cleanups in base_time distribution.
21278 * gst/gstelement.c: (gst_element_set_base_time),
21279 (gst_element_get_base_time), (gst_element_change_state):
21280 * gst/gstelement.h:
21281 Added methods for the base_time of the element.
21282 Some MT fixes.
21284 * gst/gstpipeline.c: (gst_pipeline_send_event),
21285 (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
21286 (gst_pipeline_get_last_stream_time):
21287 * gst/gstpipeline.h:
21288 MT fixes.
21289 Handle seeking as described in design doc, remove stream_time
21290 hack.
21291 Cleanups clock and stream_time selection code. Added accessors
21292 for the stream_time.
21295 2005-07-16 Andy Wingo <wingo@pobox.com>
21297 * gst/gsterror.c (_gst_core_errors_init): Use the magic word
21298 (#305291).
21300 2005-07-16 Wim Taymans <wim@fluendo.com>
21302 * check/gst/gstbin.c: (GST_START_TEST):
21303 Make elements silent as the deep_notify refs the
21304 parent, which might make the test fail.
21306 * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
21307 Don't hold the lock for too long.
21309 2005-07-16 Tim-Philipp Müller <tim at centricular dot net>
21311 * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
21312 Don't unref the caps we passed to gst_caps_make_writable() after
21313 passing them. gst_caps_make_writable() will do that for us.
21315 2005-07-15 Andy Wingo <wingo@pobox.com>
21317 * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
21318 (#157311).
21320 * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
21321 own marshalling function for the handoff signal. Properly type the
21322 buffer as a buffer. Fixes some warnings. Should do a more general
21323 solution.
21324 (gst_identity_class_init): Plug into the right marshaller.
21326 2005-07-15 Wim Taymans <wim@fluendo.com>
21328 * docs/design/part-TODO.txt:
21329 * docs/design/part-clocks.txt:
21330 * docs/design/part-element-sink.txt:
21331 * docs/design/part-events.txt:
21332 * docs/design/part-gstpipeline.txt:
21333 Updated docs, mostly DISCONT related.
21335 2005-07-15 Tim-Philipp Müller <tim at centricular dot net>
21337 * docs/pwg/building-pads.xml:
21338 s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
21340 2005-07-15 Andy Wingo <wingo@pobox.com>
21342 * tools/gst-typefind.c: Update, add copyright block.
21344 * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
21345 Normalize and truncate caps before fixation.
21347 * gst/gstcaps.h:
21348 * gst/gstcaps.c (gst_caps_truncate): New function, destructively
21349 discards all but the first structure from its argument.
21351 2005-07-15 Wim Taymans <wim@fluendo.com>
21353 * gst/base/gstbasetransform.c: (gst_base_transform_init),
21354 (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
21355 (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
21356 (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
21357 (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
21358 (gst_base_transform_chain), (gst_base_transform_change_state),
21359 (gst_base_transform_set_passthrough),
21360 (gst_base_transform_is_passthrough):
21361 * gst/base/gstbasetransform.h:
21362 Make passthrough work using the bufferpools.
21363 Changed API a bit, subclasses have to write into a buffer
21364 provided by the base class.
21365 More debug info in nego functions.
21367 * gst/elements/gstidentity.c: (gst_identity_init),
21368 (gst_identity_transform):
21369 Port to new base class.
21371 2005-07-15 Wim Taymans <wim@fluendo.com>
21373 * gst/gstmessage.c: (gst_message_new_state_changed):
21374 * tools/gst-launch.c: (event_loop), (main):
21375 Totally dump messages in -launch with the -m option.
21376 Fix message name for State messages,
21378 2005-07-14 Wim Taymans <wim@fluendo.com>
21380 * gst/base/gstbasesrc.c: (gst_base_src_loop):
21381 Post error messages on errors.
21383 2005-07-14 Wim Taymans <wim@fluendo.com>
21385 * gst/gstcaps.c: (gst_caps_do_simplify):
21386 Remove debug info.
21388 * gst/gsterror.h:
21389 Define error for stream stopped.
21391 * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
21392 (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
21393 Do proper return values.
21395 * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
21396 (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
21397 (gst_pad_get_range):
21398 Better return values.
21400 * gst/gstpad.h:
21401 Reorganise return values, add macro to check for fatal errors.
21403 * gst/gstqueue.c: (gst_queue_chain):
21404 Return proper GstFlowReturn values,
21406 2005-07-14 Thomas Vander Stichele <thomas at apestaart dot org>
21408 * docs/gst/gstreamer-sections.txt:
21409 * docs/gst/gstreamer.types:
21410 * docs/gst/tmpl/gst.sgml:
21411 * docs/gst/tmpl/gstbasesink.sgml:
21412 * docs/gst/tmpl/gstbasesrc.sgml:
21413 * docs/gst/tmpl/gstbasetransform.sgml:
21414 * docs/gst/tmpl/gstbin.sgml:
21415 * docs/gst/tmpl/gstbuffer.sgml:
21416 * docs/gst/tmpl/gstcaps.sgml:
21417 * docs/gst/tmpl/gstclock.sgml:
21418 * docs/gst/tmpl/gstcompat.sgml:
21419 * docs/gst/tmpl/gstconfig.sgml:
21420 * docs/gst/tmpl/gstelement.sgml:
21421 * docs/gst/tmpl/gstelementdetails.sgml:
21422 * docs/gst/tmpl/gstelementfactory.sgml:
21423 * docs/gst/tmpl/gstenumtypes.sgml:
21424 * docs/gst/tmpl/gsterror.sgml:
21425 * docs/gst/tmpl/gstevent.sgml:
21426 * docs/gst/tmpl/gstfakesink.sgml:
21427 * docs/gst/tmpl/gstfakesrc.sgml:
21428 * docs/gst/tmpl/gstfilesink.sgml:
21429 * docs/gst/tmpl/gstfilesrc.sgml:
21430 * docs/gst/tmpl/gstfilter.sgml:
21431 * docs/gst/tmpl/gstformat.sgml:
21432 * docs/gst/tmpl/gstghostpad.sgml:
21433 * docs/gst/tmpl/gstimplementsinterface.sgml:
21434 * docs/gst/tmpl/gstindex.sgml:
21435 * docs/gst/tmpl/gstindexfactory.sgml:
21436 * docs/gst/tmpl/gstinfo.sgml:
21437 * docs/gst/tmpl/gstiterator.sgml:
21438 * docs/gst/tmpl/gstmacros.sgml:
21439 * docs/gst/tmpl/gstmemchunk.sgml:
21440 * docs/gst/tmpl/gstminiobject.sgml:
21441 * docs/gst/tmpl/gstobject.sgml:
21442 * docs/gst/tmpl/gstpad.sgml:
21443 * docs/gst/tmpl/gstpadtemplate.sgml:
21444 * docs/gst/tmpl/gstparse.sgml:
21445 * docs/gst/tmpl/gstpipeline.sgml:
21446 * docs/gst/tmpl/gstplugin.sgml:
21447 * docs/gst/tmpl/gstpluginfeature.sgml:
21448 * docs/gst/tmpl/gstquery.sgml:
21449 * docs/gst/tmpl/gstqueue.sgml:
21450 * docs/gst/tmpl/gstregistry.sgml:
21451 * docs/gst/tmpl/gstregistrypool.sgml:
21452 * docs/gst/tmpl/gstscheduler.sgml:
21453 * docs/gst/tmpl/gstschedulerfactory.sgml:
21454 * docs/gst/tmpl/gststructure.sgml:
21455 * docs/gst/tmpl/gstsystemclock.sgml:
21456 * docs/gst/tmpl/gsttaglist.sgml:
21457 * docs/gst/tmpl/gsttagsetter.sgml:
21458 * docs/gst/tmpl/gsttrace.sgml:
21459 * docs/gst/tmpl/gsttrashstack.sgml:
21460 * docs/gst/tmpl/gsttypefind.sgml:
21461 * docs/gst/tmpl/gsttypefindfactory.sgml:
21462 * docs/gst/tmpl/gsttypes.sgml:
21463 * docs/gst/tmpl/gsturihandler.sgml:
21464 * docs/gst/tmpl/gsturitype.sgml:
21465 * docs/gst/tmpl/gstutils.sgml:
21466 * docs/gst/tmpl/gstvalue.sgml:
21467 * docs/gst/tmpl/gstversion.sgml:
21468 * docs/gst/tmpl/gstxml.sgml:
21469 * docs/libs/tmpl/gstcontrol.sgml:
21470 * docs/libs/tmpl/gstdataprotocol.sgml:
21471 * docs/libs/tmpl/gstdparam.sgml:
21472 * docs/libs/tmpl/gstdplinint.sgml:
21473 * docs/libs/tmpl/gstdpman.sgml:
21474 * docs/libs/tmpl/gstdpsmooth.sgml:
21475 * docs/libs/tmpl/gstgetbits.sgml:
21476 * docs/libs/tmpl/gstunitconvert.sgml:
21477 * gst/base/gstpushsrc.c: (gst_push_src_get_type),
21478 (gst_push_src_base_init), (gst_push_src_class_init),
21479 (gst_push_src_init), (gst_push_src_create):
21480 * gst/base/gstpushsrc.h:
21481 * gst/elements/gstelements.c:
21482 * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
21483 (gst_fake_sink_base_init), (gst_fake_sink_class_init),
21484 (gst_fake_sink_init), (gst_fake_sink_set_property),
21485 (gst_fake_sink_get_property), (gst_fake_sink_get_times),
21486 (gst_fake_sink_event), (gst_fake_sink_preroll),
21487 (gst_fake_sink_render), (gst_fake_sink_change_state):
21488 * gst/elements/gstfakesink.h:
21489 * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
21490 (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
21491 (gst_fake_src_base_init), (gst_fake_src_class_init),
21492 (gst_fake_src_init), (gst_fake_src_event_handler),
21493 (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
21494 (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
21495 (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
21496 (gst_fake_src_create_buffer), (gst_fake_src_create),
21497 (gst_fake_src_start), (gst_fake_src_stop):
21498 * gst/elements/gstfakesrc.h:
21499 * gst/elements/gstfilesink.c: (_do_init),
21500 (gst_file_sink_base_init), (gst_file_sink_class_init),
21501 (gst_file_sink_init), (gst_file_sink_dispose),
21502 (gst_file_sink_set_location), (gst_file_sink_set_property),
21503 (gst_file_sink_get_property), (gst_file_sink_open_file),
21504 (gst_file_sink_close_file), (gst_file_sink_query),
21505 (gst_file_sink_event), (gst_file_sink_render),
21506 (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
21507 (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
21508 (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
21509 * gst/elements/gstfilesink.h:
21510 * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
21511 (gst_file_src_class_init), (gst_file_src_init),
21512 (gst_file_src_finalize), (gst_file_src_set_location),
21513 (gst_file_src_set_property), (gst_file_src_get_property),
21514 (gst_file_src_map_region), (gst_file_src_map_small_region),
21515 (gst_file_src_create_mmap), (gst_file_src_create_read),
21516 (gst_file_src_create), (gst_file_src_is_seekable),
21517 (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
21518 (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
21519 (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
21520 (gst_file_src_uri_handler_init):
21521 * gst/elements/gstfilesrc.h:
21522 more autistic cleanliness in functions/names/defines
21524 2005-07-13 Andy Wingo <wingo@pobox.com>
21526 * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
21527 source couldn't negotiate.
21529 * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
21530 connections again.
21532 * gst/gstutils.h:
21533 * gst/gstutils.c (gst_element_link_pads_filtered): New old
21534 function. I am channeling Hades. Put your boots on suckers!!!
21536 2005-07-13 Thomas Vander Stichele <thomas at apestaart dot org>
21538 * testsuite/caps/Makefile.am:
21539 * testsuite/caps/value_compare.c:
21540 * testsuite/caps/value_intersect.c:
21541 * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
21542 move two testsuite apps over to the check dir
21544 2005-07-12 Wim Taymans <wim@fluendo.com>
21546 * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
21547 Added more debug info in the negotiate process.
21549 * gst/gstmessage.h:
21550 Prepare for segment playback.
21552 * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
21553 Better debugging.
21555 * gst/gstutils.c:
21556 Some more docs.
21558 * tools/gst-launch.c: (main):
21559 NULL pipeline on errors.
21561 2005-07-12 Andy Wingo <wingo@pobox.com>
21563 * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
21564 not it comes from a malloc region. Make sure our copy gets freed.
21566 2005-07-12 Thomas Vander Stichele <thomas at apestaart dot org>
21568 * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
21569 * check/gst/gstmessage.c: (GST_START_TEST):
21570 * check/gst/gststructure.c: (GST_START_TEST),
21571 (gst_structure_suite), (main):
21572 more testing
21573 * gst/gstelement.c: (gst_element_message_full):
21574 clean up GError and debug string now that they get copied
21575 * gst/gstmessage.c: (gst_message_new_error),
21576 (gst_message_new_warning), (gst_message_parse_error),
21577 (gst_message_parse_warning):
21578 use GST_TYPE_G_ERROR for structure_new, and take copies of
21579 arguments, so that we don't mess up refcounting
21581 2005-07-12 Thomas Vander Stichele <thomas at apestaart dot org>
21583 * check/Makefile.am:
21584 add per-test valgrind targets
21585 * check/gst-libs/gdp.c: (GST_START_TEST),
21586 (gst_data_protocol_suite), (main):
21587 clean up
21589 2005-07-12 Thomas Vander Stichele <thomas at apestaart dot org>
21591 * check/Makefile.am:
21592 instate more valgrindable tests
21593 * check/elements/gstfakesrc.c: (chain_func), (event_func),
21594 (GST_START_TEST), (fakesrc_suite):
21595 * check/gst/gstpad.c: (GST_START_TEST):
21596 * check/gst/gststructure.c: (GST_START_TEST):
21597 fix test leaks
21598 * docs/gst/tmpl/gstminiobject.sgml:
21599 * gst/gstpad.c: (gst_pad_finalize):
21600 fix the static mutex leak
21602 2005-07-11 Thomas Vander Stichele <thomas at apestaart dot org>
21604 * check/Makefile.am:
21605 add two more tests for valgrinding
21606 * check/gst/gstvalue.c: (GST_START_TEST):
21607 test refcount of deserialized buffer, found a leak
21608 * docs/gst/gstreamer-docs.sgml:
21609 * docs/gst/gstreamer-sections.txt:
21610 * docs/gst/gstreamer.types:
21611 * docs/gst/tmpl/gstminiobject.sgml:
21612 add miniobject to docs
21613 * gst/gstminiobject.c:
21614 add some docs
21615 * gst/gstvalue.c: (gst_value_deserialize_buffer),
21616 (gst_string_unwrap):
21617 fix a hard-to-find invalid write for one of the tests
21618 fix a leak for deserialized buffers
21620 2005-07-11 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
21622 * docs/pwg/advanced-events.xml:
21623 * docs/pwg/advanced-request.xml:
21624 * docs/pwg/advanced-scheduling.xml:
21625 * docs/pwg/appendix-porting.xml:
21626 * docs/pwg/building-boiler.xml:
21627 * docs/pwg/intro-preface.xml:
21628 * docs/pwg/other-ntoone.xml:
21629 Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
21630 of example code and explanation for pad activation, loop() and
21631 getrange() functions and a bit more. Remove old comments pointing
21632 to loop-functions.
21633 * examples/pwg/Makefile.am:
21634 Add loop/getrange examples.
21636 2005-07-11 Thomas Vander Stichele <thomas at apestaart dot org>
21638 * configure.ac:
21639 check for valgrind binary + some fixes
21640 * check/gst.supp:
21641 valgrind suppressions for the tests
21642 * check/Makefile.am:
21643 add a valgrind: target that valgrinds the unit tests
21644 * check/gst/gst.c: (GST_START_TEST), (gst_suite):
21645 * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
21646 * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
21647 * check/gst/gstghostpad.c:
21648 added some cleanup
21649 * check/gst/gstdata.c:
21650 removed
21651 * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
21652 (thread_unref), (gst_mini_object_suite), (main):
21653 added
21654 * gst/gst.c: (gst_deinit):
21655 * gst/gst.h:
21656 add a method to clean up.
21657 * gst/gstsystemclock.c: (gst_system_clock_dispose),
21658 (gst_system_clock_obtain):
21659 allow for disposing the system clock.
21660 * tools/gst-launch.c: (main):
21661 deinit
21663 2005-07-11 Thomas Vander Stichele <thomas at apestaart dot org>
21665 * docs/gst/tmpl/gstbasesrc.sgml:
21666 * docs/gst/tmpl/gstfakesrc.sgml:
21667 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
21668 (gst_base_src_init), (gst_base_src_set_property),
21669 (gst_base_src_get_property), (gst_base_src_get_range),
21670 (gst_base_src_start):
21671 * gst/base/gstbasesrc.h:
21672 add num-buffers property
21673 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
21674 (gst_fakesrc_init), (gst_fakesrc_set_property),
21675 (gst_fakesrc_get_property), (gst_fakesrc_create),
21676 (gst_fakesrc_start):
21677 remove num-buffers property
21679 2005-07-10 Thomas Vander Stichele <thomas at apestaart dot org>
21681 * docs/gst/gstreamer-sections.txt:
21682 * docs/gst/tmpl/gstbasesink.sgml:
21683 * docs/gst/tmpl/gstbasesrc.sgml:
21684 * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
21685 (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
21686 (gst_base_sink_finalize), (gst_base_sink_set_clock),
21687 (gst_base_sink_set_property), (gst_base_sink_get_property),
21688 (gst_base_sink_handle_object), (gst_base_sink_event),
21689 (gst_base_sink_do_sync), (gst_base_sink_handle_event),
21690 (gst_base_sink_handle_buffer), (gst_base_sink_chain),
21691 (gst_base_sink_loop), (gst_base_sink_deactivate),
21692 (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
21693 (gst_base_sink_change_state):
21694 * gst/base/gstbasesink.h:
21695 * gst/base/gstbasesrc.h:
21696 * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
21697 * gst/elements/gstfilesink.c: (gst_filesink_class_init),
21698 (gst_filesink_init):
21699 more macro splitting
21701 2005-07-10 Thomas Vander Stichele <thomas at apestaart dot org>
21703 * gst/gstelement.c: (gst_element_get_bus):
21704 add debug
21705 * tools/gst-launch.c: (check_intr), (event_loop):
21706 fix bus leaks
21708 2005-07-10 Thomas Vander Stichele <thomas at apestaart dot org>
21710 * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
21711 fix a caps leak
21713 2005-07-10 Thomas Vander Stichele <thomas at apestaart dot org>
21715 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
21716 (gst_base_src_finalize):
21717 add finalize method and clean up properly
21718 * gst/gstpipeline.c: (gst_pipeline_dispose):
21719 add debug
21721 2005-07-09 Thomas Vander Stichele <thomas at apestaart dot org>
21723 * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
21724 (gst_bin_suite):
21725 add more things to check
21726 * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
21727 * gst/gstelement.c:
21728 more debug
21730 2005-07-09 Thomas Vander Stichele <thomas at apestaart dot org>
21732 * check/elements/gstfakesrc.c: (chain_func), (event_func),
21733 (GST_START_TEST), (fakesrc_suite):
21734 * check/gst-libs/gdp.c: (GST_START_TEST):
21735 * check/gst/gst.c: (GST_START_TEST):
21736 * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
21737 * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
21738 * check/gst/gstbus.c: (GST_START_TEST):
21739 * check/gst/gstcaps.c: (GST_START_TEST):
21740 * check/gst/gstdata.c: (GST_START_TEST):
21741 * check/gst/gstelement.c: (GST_START_TEST):
21742 * check/gst/gstghostpad.c: (GST_START_TEST):
21743 * check/gst/gstiterator.c: (GST_START_TEST):
21744 * check/gst/gstmessage.c: (GST_START_TEST):
21745 * check/gst/gstobject.c: (GST_START_TEST):
21746 * check/gst/gstpad.c: (GST_START_TEST):
21747 * check/gst/gststructure.c: (GST_START_TEST):
21748 * check/gst/gstsystemclock.c: (GST_START_TEST),
21749 (gst_systemclock_suite):
21750 * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
21751 * check/gst/gstvalue.c: (GST_START_TEST):
21752 * check/pipelines/cleanup.c: (GST_START_TEST):
21753 * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
21754 * check/states/sinks.c: (GST_START_TEST):
21755 * check/gstcheck.c: (gst_check_init):
21756 * check/gstcheck.h:
21757 add debugging category
21758 use GST_START_TEST now, so we add a debug line
21760 2005-07-09 Thomas Vander Stichele <thomas at apestaart dot org>
21762 * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
21763 add test for state change message on a bin
21764 * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
21765 add another test
21766 * gst/gstbin.c: (gst_bin_init):
21767 * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
21768 * gst/gstelement.c: (gst_element_post_message),
21769 (gst_element_set_state):
21770 * gst/gstelementfactory.c: (gst_element_factory_create):
21771 * gst/gstmessage.c: (gst_message_new):
21772 * gst/gstscheduler.c:
21773 various debugging additions and cleanups
21775 2005-07-08 Thomas Vander Stichele <thomas at apestaart dot org>
21777 * check/Makefile.am:
21778 * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
21779 (main):
21780 adding tests for elements
21781 * gst/gstelement.c: (gst_element_dispose):
21783 2005-07-08 Thomas Vander Stichele <thomas at apestaart dot org>
21785 * gst/registries/gstlibxmlregistry.c: (load_feature):
21786 plug more leaks. A simple gst_init() now is leakfree, yay.
21788 2005-07-08 Thomas Vander Stichele <thomas at apestaart dot org>
21790 * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
21791 (gst_xml_registry_load):
21792 plug another memleak
21794 2005-07-08 Thomas Vander Stichele <thomas at apestaart dot org>
21796 * configure.ac:
21797 use GST_SET_ERROR_CFLAGS
21798 * docs/faq/cvs.xml:
21799 change to ERROR_CFLAGS
21801 2005-07-08 Thomas Vander Stichele <thomas at apestaart dot org>
21803 * configure.ac:
21804 make GST_ERROR_CFLAGS overridable and re-enable Werror
21805 * docs/faq/cvs.xml:
21806 add a note about error CFLAGS
21807 * docs/gst/tmpl/gstfakesrc.sgml:
21808 * gst/elements/gstfakesrc.c:
21809 comment out some unused code
21810 * gst/gst.c: (split_and_iterate):
21811 * gst/registries/gstlibxmlregistry.c: (load_pad_template),
21812 (load_feature):
21813 plug some memleaks
21815 2005-07-07 Thomas Vander Stichele <thomas at apestaart dot org>
21817 * common/Makefile.am:
21818 * common/gtk-doc.mak:
21819 * docs/gst/Makefile.am:
21820 factor out gtk-doc.mak
21822 2005-07-07 Wim Taymans <wim@fluendo.com>
21824 * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
21825 (gst_thread_scheduler_dispose):
21826 Unlock the STREAM_LOCK completely.
21828 2005-07-07 Thomas Vander Stichele <thomas at apestaart dot org>
21830 * check/Makefile.am:
21831 * check/elements/.cvsignore:
21832 * check/elements/gstfakesrc.c: (chain_func), (event_func),
21833 (START_TEST), (fakesrc_suite), (main):
21834 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
21835 (gst_fakesrc_set_property), (gst_fakesrc_get_property),
21836 (gst_fakesrc_create), (gst_fakesrc_start):
21837 * gst/elements/gstfakesrc.h:
21838 adding a first element test
21840 2005-07-07 Andy Wingo <wingo@pobox.com>
21842 * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
21843 debug message.
21845 2005-07-07 Wim Taymans <wim@fluendo.com>
21847 * gst/gstquery.c:
21848 * gst/gstquery.h:
21849 Remove old types
21851 2005-07-07 Wim Taymans <wim@fluendo.com>
21853 * gst/base/gstbasesrc.c: (gst_base_src_get_range),
21854 (gst_base_src_default_negotiate), (gst_base_src_negotiate):
21855 Allow subclasses to implement their own negotiation.
21857 2005-07-07 Jan Schmidt <thaytan@mad.scientist.com>
21859 * docs/design/part-gstbin.txt:
21860 * docs/design/part-gstpipeline.txt:
21861 Update design notes to reflect the movement of
21862 responsibility for bus handling from GstPipeline to
21863 GstBin
21865 2005-07-07 Jan Schmidt <thaytan@mad.scientist.com>
21867 * configure.ac:
21868 Remove unnecessary queue2/3/4 examples.
21870 2005-07-07 Jan Schmidt <thaytan@mad.scientist.com>
21872 * examples/Makefile.am:
21873 * examples/helloworld/helloworld.c: (event_loop), (main):
21874 * examples/queue/queue.c: (event_loop), (main):
21875 * examples/queue2/queue2.c: (main):
21876 Update a couple of the examples to work again.
21878 * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
21879 (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
21880 Spelling corrections and extra debug.
21882 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
21883 (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
21884 (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
21885 * gst/gstbin.h:
21886 * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
21887 (gst_pipeline_change_state):
21888 * gst/gstpipeline.h:
21889 Move the bus handler for children to the GstBin, and create a
21890 separate bus for receiving messages from children to the one the
21891 bus sends 'upwards' on.
21893 2005-07-06 Wim Taymans <wim@fluendo.com>
21895 * gst/base/README:
21896 * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
21897 (gst_base_sink_handle_object), (gst_base_sink_loop),
21898 (gst_base_sink_change_state):
21899 * gst/base/gstbasesink.h:
21900 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
21901 (gst_base_src_init), (gst_base_src_setcaps),
21902 (gst_base_src_getcaps), (gst_base_src_loop),
21903 (gst_base_src_default_negotiate), (gst_base_src_negotiate),
21904 (gst_base_src_start), (gst_base_src_change_state):
21905 * gst/base/gstbasesrc.h:
21906 Make basesrc negotiate.
21907 Handle the case where preroll fails in basesink.
21908 Update README.
21910 2005-07-06 Wim Taymans <wim@fluendo.com>
21912 * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
21913 Implement the fixate function.
21914 Clean up acceptcaps.
21916 2005-07-06 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
21918 * docs/pwg/building-filterfactory.xml:
21919 * docs/pwg/pwg.xml:
21920 Remove never-written filter-factory chapter; I'll add the various
21921 base classes to part 4 ("other element types") later on.
21923 2005-07-06 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
21925 * docs/pwg/advanced-negotiation.xml:
21926 * docs/pwg/building-boiler.xml:
21927 * docs/pwg/building-pads.xml:
21928 * docs/pwg/pwg.xml:
21929 * examples/pwg/Makefile.am:
21930 Add a chapter on caps negotiation, simplify the original code
21931 samples a bit w.r.t. caps negotiation, add link to the advanced
21932 section. Add a bunch of examples showing different use cases of
21933 different types of caps negotiation. Upstream renegotiation isn't
21934 fully documented yet since nobody knows how that works.
21936 2005-07-06 Thomas Vander Stichele <thomas at apestaart dot org>
21938 * check/gst/gstpad.c:
21939 * check/gstcheck.c:
21940 * gst/gstpad.c: (gst_pad_get_internal_links_default):
21941 if pad has no parent, return NULL as list of internal links
21943 2005-07-05 Andy Wingo <wingo@pobox.com>
21945 * gst/elements/gstfilesrc.c:
21946 * gst/elements/gstfakesrc.c:
21947 * gst/base/gstpushsrc.c:
21948 * gst/base/gstbasesrc.h:
21949 * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
21951 2005-07-05 Stefan Kost <ensonic@users.sf.net>
21953 * Makefile.am:
21954 better report generation target (lcov needs a patch)
21956 2005-07-05 Andy Wingo <wingo@pobox.com>
21958 * gst/elements, testsuite: Null if we got it...
21960 2005-07-05 Wim Taymans <wim@fluendo.com>
21962 * configure.ac:
21963 * libs/gst/dataprotocol/Makefile.am:
21964 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
21965 * libs/gst/dataprotocol/dataprotocol.h:
21966 * pkgconfig/Makefile.am:
21967 * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
21968 * pkgconfig/gstreamer-dataprotocol.pc.in:
21969 Ported dataprotol to 0.9.
21970 Added pkgconfig files.
21972 2005-07-05 Andy Wingo <wingo@pobox.com>
21974 * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
21975 Default to returning TRUE for the case when tranform_caps returns
21976 a fixed caps, like for identity or volume.
21978 * check/gst/gstbus.c (pound_bus_with_messages):
21979 * check/gst/gstmessage.c (START_TEST):
21980 * check/pipelines/simple_launch_lines.c (got_handoff): Application
21981 message API change.
21983 * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
21984 logic weaks here: always run transform_caps, trying passthrough
21985 operation only if the original caps intersects with the transform.
21987 * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
21988 source and sink caps.
21990 * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
21991 Intersect the peer caps with the pad template before going into
21992 transform_caps.
21993 (gst_base_transform_transform_caps): More debugging.
21995 * gst/gstmessage.h (gst_message_new_application): Take a GstObject
21996 src argument.
21998 2005-07-04 Edward Hervey <edward@fluendo.com>
22000 * gst/gstutils.c:
22001 * gst/gstutils.h:
22002 (gst_pad_add_*_probe): now returns the signal id for better wrapping
22003 in bindings.
22005 2005-07-04 Andy Wingo <wingo@pobox.com>
22007 * check/gst/gstpad.c: Only set explicit caps on pads.
22009 2005-07-01 Andy Wingo <wingo@pobox.com>
22011 * tests/network-clock.scm: Commentary update.
22013 * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
22014 Didn't really make sense, not implementable with basetransform,
22015 etc.
22016 (gst_identity_transform): Unref inbuf via make_writable. Feeble
22017 attempt at implementing the sync property, needs an unlock method.
22019 * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
22020 New func, by default returns the same caps (the identity
22021 transformation).
22022 (gst_base_transform_getcaps): Uses transform_caps to return
22023 something sensible.
22024 (gst_base_transform_setcaps): Complicated logic to get caps on
22025 both pads, even if they are different, and to call set_caps once
22026 for every time both pads get their caps set.
22027 (gst_base_transform_handle_buffer): Give the ref to the transform
22028 function. Allows in-place modification of the buffer.
22030 * gst/base/gstbasetransform.h (transform_caps): New class method.
22031 Given caps on one side, what can I do on the other.
22032 (set_caps): Take two caps, one for each side of the element.
22034 * gst/gstpad.h:
22035 * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
22036 caps in place. This is safe because we can check the mutability of
22037 the caps, and a good idea because fixate functions are just called
22038 as a matter of last resort. (Not actually implemented.)
22039 (gst_pad_set_caps): If the caps we're setting is actually the same
22040 as the existing pad caps, just update the pointer without calling
22041 setcaps. Assert that caps is either NULL or fixed, as per the
22042 docs.
22044 * gst/gstghostpad.c: Update for fixate changes.
22046 2005-07-02 Andy Wingo <wingo@pobox.com>
22048 * gst/gstcaps.c:
22049 * gst/gstcaps.h (gst_static_caps_get): Not const return, having
22050 two refcounts makes it immutable, which is enough. Doc more.
22052 2005-07-02 Jan Schmidt <thaytan@mad.scientist.com>
22054 * gst/gstpad.c: (gst_pad_emit_have_data_signal):
22055 Put the mini_object into GValue as a mini_object,
22056 not a gpointer, since that's how we declared
22057 the signal.
22059 2005-07-01 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
22061 * examples/pwg/Makefile.am:
22062 Fix buildbot again.
22064 2005-07-01 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
22066 * docs/pwg/building-testapp.xml:
22067 Add extra check.
22068 * examples/pwg/Makefile.am:
22069 Fix buildbot.
22071 2005-07-01 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
22073 * configure.ac:
22074 * examples/Makefile.am:
22075 * examples/pwg/Makefile.am:
22076 * examples/pwg/extract.pl:
22077 Enable building the PWG examples.
22078 * docs/pwg/advanced-interfaces.xml:
22079 Add URI interface stub.
22080 * docs/pwg/advanced-types.xml:
22081 * docs/pwg/other-autoplugger.xml:
22082 * docs/pwg/appendix-porting.xml:
22083 * docs/pwg/pwg.xml:
22084 Add porting guide (mostly stubs), remove autoplugging (see ADM).
22085 * docs/pwg/building-boiler.xml:
22086 * docs/pwg/building-chainfn.xml:
22087 * docs/pwg/building-pads.xml:
22088 * docs/pwg/building-props.xml:
22089 * docs/pwg/building-state.xml:
22090 * docs/pwg/building-testapp.xml:
22091 Update the building-*.xml parts for 0.9 changes. All examples
22092 code blocks compile in examples/pwg/*.
22094 2005-06-30 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
22096 * docs/manual/advanced-autoplugging.xml:
22097 * docs/manual/appendix-checklist.xml:
22098 * docs/manual/appendix-integration.xml:
22099 * docs/manual/highlevel-components.xml:
22100 Fix playbin/decodebin examples, update docs a bit, mention bus
22101 instead of signals in various places, mention kmplayer and
22102 kaffeine since they have a working GStreamer backend in the KDE
22103 section.
22105 2005-06-30 Wim Taymans <wim@fluendo.com>
22107 * CHANGES-0.9:
22108 * docs/design/draft-ghostpads.txt:
22109 * docs/design/draft-push-pull.txt:
22110 * docs/design/draft-query.txt:
22111 * docs/design/part-TODO.txt:
22112 * docs/design/part-query.txt:
22113 Added CHANGES-0.9 doc, updated status of other docs.
22115 * gst/gstquery.h:
22116 Remove "hmm" macro
22118 2005-06-30 Wim Taymans <wim@fluendo.com>
22120 * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
22121 (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
22122 (gst_base_sink_change_state):
22123 * gst/base/gstbasesink.h:
22124 Some tweaks, only EOS and a buffer complete a preroll.
22126 2005-06-30 Andy Wingo <wingo@pobox.com>
22128 * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
22129 activate_push down to the internal pad as well.
22131 2005-06-30 Torsten Schoenfeld <kaffeetisch@gmx.de>
22133 Reviewed by: Ronald S. Bultje <rbultje@ronald.bitfreak.net>
22135 * gst/gsttaginterface.c:
22136 Some documentation fixes (#307394 and #307397).
22138 2005-06-30 Antoine Tremblay <hexa00@gmail.com>
22140 Reviewed by: Ronald S. Bultje <rbultje@ronald.bitfreak.net>
22142 * gst/gstvalue.c: (gst_value_intersect_list):
22143 Fix memleak (#309125).
22145 2005-06-30 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
22147 * docs/manual/advanced-dataaccess.xml:
22148 Fix fakesrc example to compile; doesn't work, bug somewhere...?
22149 * docs/manual/basics-pads.xml:
22150 Add reference for filtered caps to above chapter.
22152 2005-06-30 Wim Taymans <wim@fluendo.com>
22154 * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
22155 (gst_bin_change_state):
22156 Probes are gone.
22157 Lame attempt at making the state change function a bit
22158 more readable.
22160 2005-06-30 Wim Taymans <wim@fluendo.com>
22162 * docs/design/part-clocks.txt:
22163 * docs/design/part-element-sink.txt:
22164 * docs/design/part-events.txt:
22165 * docs/design/part-preroll.txt:
22166 * docs/design/part-states.txt:
22167 Some more tweeks and additions to the docs.
22169 2005-06-30 Wim Taymans <wim@fluendo.com>
22171 * gst/gstpad.c: (_gst_do_pass_data_accumulator),
22172 (default_have_data), (gst_pad_class_init), (gst_pad_init),
22173 (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
22174 (gst_pad_check_pull_range), (gst_pad_get_range),
22175 (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
22176 * gst/gstpad.h:
22177 * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
22178 (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
22179 (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
22180 (gst_pad_remove_buffer_probe):
22181 Removed atomic operations, use existing LOCK.
22182 Move exception handling out of main code path.
22184 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
22186 * gst/gstpad.c: (_gst_do_pass_data_accumulator),
22187 (silly_return_true_function), (gst_pad_class_init),
22188 (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
22189 (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
22190 (gst_pad_send_event):
22191 Fix accumulator, add default value by using _emitv() instead
22192 of _emit() for signal emission.
22194 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
22196 * docs/manual/advanced-dataaccess.xml:
22197 * examples/manual/Makefile.am:
22198 Add probe example.
22199 * gst/gstpad.c: (_gst_do_pass_data_accumulator):
22200 Make work (??).
22202 2005-06-29 Tim-Philipp Müller <tim at centricular dot net>
22204 * gst/elements/gstfilesink.c: (gst_filesink_render):
22205 Simplify code so that we don't have to handle short
22206 writes and return GST_FLOW_ERROR if an error occured.
22208 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
22210 * docs/gst/gstreamer-docs.sgml:
22211 Remove probes more.
22213 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
22215 * docs/gst/gstreamer-sections.txt:
22216 * docs/gst/tmpl/gstpad.sgml:
22217 * docs/gst/tmpl/gstprobe.sgml:
22218 * gst/Makefile.am:
22219 * gst/gstpad.c: (_gst_do_pass_data_accumulator),
22220 (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
22221 (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
22222 (gst_pad_push_event), (gst_pad_send_event):
22223 * gst/gstpad.h:
22224 * gst/gstutils.c: (gst_pad_add_data_probe),
22225 (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
22226 (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
22227 (gst_pad_remove_buffer_probe):
22228 * gst/gstutils.h:
22229 Remove old probes, add new g-signal-based probes and some utility
22230 functions.
22232 2005-06-29 Edward Hervey <edward@fluendo.com>
22234 * gst/gstelementfactory.c:
22235 * gst/gstutils.h:
22236 * gst/gstutils.c:
22237 Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
22238 the definition to the header file.
22240 2005-06-29 Andy Wingo <wingo@pobox.com>
22242 * docs/gst/Makefile.am (scan-build.stamp): Totally only check
22243 plugins from the source directory.
22245 2005-06-29 Wim Taymans <wim@fluendo.com>
22247 * docs/gst/tmpl/gstbuffer.sgml:
22248 * docs/gst/tmpl/gstclock.sgml:
22249 Some fixings for blantently wrong text.
22251 2005-06-29 Thomas Vander Stichele <thomas at apestaart dot org>
22253 * check/Makefile.am:
22254 * gst/gst.c: (add_path_func), (init_pre):
22255 * gst/gstregistry.c: (gst_registry_add_path):
22256 add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
22257 only scan the GST_PLUGIN_PATH locations, and not add
22258 system locations
22260 2005-06-29 Thomas Vander Stichele <thomas at apestaart dot org>
22262 * docs/gst/gstreamer-sections.txt:
22263 * docs/gst/tmpl/gstbasesrc.sgml:
22264 * gst/gstelement.c:
22265 * gst/gstelement.h:
22266 * gst/gstevent.c:
22267 * gst/gstutils.c:
22268 doc fixes
22270 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
22272 * docs/manual/advanced-autoplugging.xml:
22273 Fix autoplugging example.
22275 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
22277 * docs/manual/advanced-autoplugging.xml:
22278 * docs/manual/mime-world.fig:
22279 Try to get autoplugging working, fix type detection. Fix text
22280 in hello-world image.
22282 2005-06-29 Wim Taymans <wim@fluendo.com>
22284 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
22285 (gst_base_sink_change_state):
22286 Small debug line.
22288 * gst/gstclock.h:
22289 map SIGNAL and BROADCAST to the right function.
22291 * gst/gstobject.h:
22292 Remove redundant braces.
22294 * gst/gstpad.c: (gst_pad_set_caps):
22295 Don't call setcaps function when reseting caps to NULL.
22297 * gst/gstsystemclock.c: (gst_system_clock_dispose),
22298 (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
22299 (gst_system_clock_id_unschedule):
22300 Use BROADCAST as this is what we do.
22302 2005-06-29 Wim Taymans <wim@fluendo.com>
22304 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
22305 We are actually prerolling before commiting the state
22306 change.
22308 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
22310 * docs/manual/advanced-clocks.xml:
22311 * docs/manual/advanced-interfaces.xml:
22312 * docs/manual/advanced-metadata.xml:
22313 * docs/manual/advanced-position.xml:
22314 * docs/manual/advanced-schedulers.xml:
22315 * docs/manual/advanced-threads.xml:
22316 * docs/manual/appendix-porting.xml:
22317 * docs/manual/basics-bins.xml:
22318 * docs/manual/basics-bus.xml:
22319 * docs/manual/basics-elements.xml:
22320 * docs/manual/basics-helloworld.xml:
22321 * docs/manual/basics-pads.xml:
22322 * docs/manual/highlevel-components.xml:
22323 * docs/manual/manual.xml:
22324 * docs/manual/thread.fig:
22325 Update (until threads/scheduling) Application Development Manual;
22326 remove GstThread, add GstBus, add simple porting checklist, add
22327 documentation for tag writing, clocks, make all examples until this
22328 part compile and run.
22329 * examples/manual/Makefile.am:
22330 Update from changes to Application Development Manual; add bus
22331 example, remove thread example.
22333 2005-06-28 Wim Taymans <wim@fluendo.com>
22335 * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
22336 (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
22337 (gst_bus_source_dispatch):
22338 Add debugging messages.
22339 Make internal methods static.
22340 Handle the case where the bus is flushed in the handler.
22342 * gst/gstelement.c: (gst_element_get_bus):
22343 Fix refcount in _get_bus();
22345 * gst/gstpipeline.c: (gst_pipeline_change_state),
22346 (gst_pipeline_get_clock_func):
22347 Clock refcounting fixes.
22348 Handle the case where preroll timed out more gracefully.
22350 * gst/gstsystemclock.c: (gst_system_clock_dispose):
22351 Clean up the internal thread in dispose. This is needed
22352 for subclasses that actually get disposed.
22354 * gst/schedulers/threadscheduler.c:
22355 (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
22356 (gst_thread_scheduler_dispose):
22357 Free thread pool in dispose.
22359 2005-06-28 Andy Wingo <wingo@pobox.com>
22361 * tests/network-clock-utils.scm (debug, print-event): New utils.
22363 * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
22364 (*packet-loss*): Unified loss probability.
22365 (network-time): Report out-of-band events.
22367 * tests/plot-data: Add support for out-of-band events. Hack it
22368 into this script instead of passing it down the pipe; should fix
22369 this later.
22371 2005-06-28 Wim Taymans <wim@fluendo.com>
22373 * docs/gst/gstreamer.types:
22374 * docs/gst/tmpl/gstbasesrc.sgml:
22375 * docs/gst/tmpl/gstpad.sgml:
22376 Docs fixes.
22378 2005-06-28 Wim Taymans <wim@fluendo.com>
22380 * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
22381 (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
22382 (gst_proxy_pad_do_fixatecaps):
22383 Correctly proxy the check_pull_range function.
22385 2005-06-28 Andy Wingo <wingo@pobox.com>
22387 * tests/network-clock.scm: Removed need for slib.
22389 2005-06-28 Wim Taymans <wim@fluendo.com>
22391 * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
22392 (gst_basesink_preroll_queue_flush):
22393 * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
22394 * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
22395 * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
22396 (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
22397 (gst_proxy_pad_set_property):
22398 * gst/gstpad.c:
22399 * gst/gstpad.h:
22400 * gst/gstqueue.c: (gst_queue_init):
22401 The deprecated pad loop function is removed now.
22403 2005-06-28 Andy Wingo <wingo@pobox.com>
22405 * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
22406 New parameters, simulate network packet loss.
22408 * tests/network-clock-utils.scm: Initialize the RNG.
22410 2005-06-28 Wim Taymans <wim@fluendo.com>
22412 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
22413 (gst_basesink_event), (gst_basesink_deactivate):
22414 Flushing the preroll queue always needs to unlock the waiters.
22416 2005-06-28 Edward Hervey <edward@fluendo.com>
22418 * gst/gstpipeline.c: (gst_pipeline_send_event):
22419 Wheen a seek was successful on a pipeline, set the stream_time to the
22420 seek offset in order to have a synchronized stream_time.
22422 2005-06-28 Wim Taymans <wim@fluendo.com>
22424 * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
22425 (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
22426 (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
22427 (gst_proxy_pad_do_fixatecaps):
22428 Call wrapper function instead of just calling the function
22429 pointers. This takes care of any locking and whatmore.
22431 2005-06-28 Wim Taymans <wim@fluendo.com>
22433 * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
22434 (gst_pad_pull_range):
22435 * gst/gstpad.h:
22436 CONNECTED -> LINKED.
22438 2005-06-28 Andy Wingo <wingo@pobox.com>
22440 * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
22441 source-munging commit!!!
22443 * gst/gstobject.c (gst_object_unref, gst_object_ref)
22444 (gst_object_sink): Take gpointer arguments, not GstObject --
22445 avoids casts. Like GLib.
22447 * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
22448 activate.
22450 2005-06-27 Andy Wingo <wingo@pobox.com>
22452 * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
22453 remaining buffer.
22455 * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
22456 returns a sorted copy of the trace list.
22457 (gst_alloc_trace_print_live): New API, only prints traces with
22458 live objects. Sort the list.
22459 (gst_alloc_trace_print_all): Sort the list.
22460 (gst_alloc_trace_print): Align columns.
22462 * gst/elements/gstttypefindelement.c:
22463 * gst/elements/gsttee.c:
22464 * gst/base/gstbasesrc.c:
22465 * gst/base/gstbasesink.c:
22466 * gst/base/gstbasetransform.c:
22467 * gst/gstqueue.c: Adapt for pad activation changes.
22469 * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
22470 sched.
22471 (gst_pipeline_dispose): Drop ref on sched.
22473 * gst/gstpad.c (gst_pad_init): Set the default activate func.
22474 (gst_pad_activate_default): Push mode by default.
22475 (pre_activate_switch, post_activate_switch): New stubs, things to
22476 do before and after switching activation modes on pads.
22477 (gst_pad_set_active): Take a boolean and not a mode, dispatch to
22478 the pad's activate function to choose which mode to activate.
22479 Shortcut on deactivation and call the right function directly.
22480 (gst_pad_activate_pull): New API, (de)activates a pad in pull
22481 mode.
22482 (gst_pad_activate_push): New API, same for push mode.
22483 (gst_pad_set_activate_function)
22484 (gst_pad_set_activatepull_function)
22485 (gst_pad_set_activatepush_function): Setters for new API.
22487 * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
22488 Trace all miniobjects.
22489 (gst_mini_object_make_writable): Unref the arg if we copy, like
22490 gst_caps_make_writable.
22492 * gst/gstmessage.c (_gst_message_initialize): No trace init.
22494 * gst/gstghostpad.c (gst_proxy_pad_do_activate)
22495 (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
22496 Adapt for new pad API.
22498 * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
22500 * gst/gstelement.h:
22501 * gst/gstelement.c (gst_element_iterate_src_pads)
22502 (gst_element_iterate_sink_pads): New API functions.
22504 * gst/gstelement.c (iterator_fold_with_resync): New utility,
22505 should fold into gstiterator.c in some form.
22506 (gst_element_pads_activate): Simplified via use of fold and
22507 delegation of decisions to gstpad->activate.
22509 * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
22510 help in debugging.
22512 * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
22513 class once in init, like gstmessage. Didn't run into this issue
22514 but it seems correct. Don't initialize a trace, gstminiobject does
22515 that.
22517 * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
22518 test, runs fakesrc ! fakesink, stopping on ::handoff via a message
22519 to the bus.
22520 (assert_live_count): New util function, uses alloc traces to check
22521 cleanup.
22523 * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
22524 To be modified when unlink drops the internal pad.
22526 2005-06-27 Wim Taymans <wim@fluendo.com>
22528 * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
22529 (gst_bin_change_state):
22530 Cleanup the get_state() function a little, make sure it
22531 iterates the same set of elements.
22532 Added stub iterate_state_order().
22534 2005-06-27 Thomas Vander Stichele <thomas at apestaart dot org>
22536 * docs/gst/gstreamer-docs.sgml:
22537 * docs/gst/gstreamer-sections.txt:
22538 * docs/gst/gstreamer.types:
22539 * docs/gst/tmpl/gstbasesink.sgml:
22540 * docs/gst/tmpl/gstbasesrc.sgml:
22541 * docs/gst/tmpl/gstbasetransform.sgml:
22542 * docs/gst/tmpl/gstelement.sgml:
22543 * docs/gst/tmpl/gstiterator.sgml:
22544 * gst/base/gstbasesrc.c:
22545 * gst/base/gstbasesrc.h:
22546 * gst/base/gstbasetransform.h:
22547 * gst/gstelement.c:
22548 * gst/gstiterator.h:
22549 adding basetransform and iterator docs
22551 2005-06-27 Andy Wingo <wingo@pobox.com>
22553 * docs/design/part-activation.txt: Notes on how activation should
22554 work -- not quite implemented yet.
22556 2005-06-25 Wim Taymans <wim@fluendo.com>
22558 * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
22559 At least get the chain function correct, needs more
22560 fixing.
22562 2005-06-25 Wim Taymans <wim@fluendo.com>
22564 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
22565 (gst_basesink_handle_object), (gst_basesink_event),
22566 (gst_basesink_do_sync), (gst_basesink_handle_event),
22567 (gst_basesink_change_state):
22568 * gst/gsttask.h:
22569 Right, two problems here: ghostpads don't take locks and
22570 glib _rec_mutex_lock_full() with depth==0 still locks.
22571 Catch illegal locking and g_warn them.
22573 2005-06-25 Wim Taymans <wim@fluendo.com>
22575 * check/states/sinks.c: (START_TEST), (gst_object_suite):
22576 Have to check for completion now...
22578 2005-06-25 Wim Taymans <wim@fluendo.com>
22580 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
22581 (gst_basesink_handle_object), (gst_basesink_event),
22582 (gst_basesink_do_sync), (gst_basesink_handle_event),
22583 (gst_basesink_change_state):
22584 * gst/gstpad.h:
22585 Unlock STREAM_LOCK whatever the recursion was.
22587 2005-06-25 Wim Taymans <wim@fluendo.com>
22589 * gst/base/gstbasesink.c: (gst_basesink_set_property),
22590 (gst_basesink_preroll_queue_empty),
22591 (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
22592 (gst_basesink_event), (gst_basesink_do_sync),
22593 (gst_basesink_handle_event), (gst_basesink_handle_buffer),
22594 (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
22595 (gst_basesink_change_state):
22596 Reworked the base sink, handle event and buffer serialisation
22597 correctly and removed possible deadlock.
22598 Handle EOS correctly.
22600 2005-06-25 Wim Taymans <wim@fluendo.com>
22602 * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
22603 (gst_pipeline_change_state):
22604 * tools/gst-launch.c: (check_intr), (event_loop), (main):
22605 Allow elements to post EOS in the state change function.
22606 Fix up -launch, make it exit the poll loop when the
22607 pipeline actually changed state.
22608 Fix up warning parsing in -launch.
22610 2005-06-25 Wim Taymans <wim@fluendo.com>
22612 * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
22613 (gst_tee_sink_activate):
22614 Core takes STREAM_LOCK for us now.
22616 2005-06-25 Wim Taymans <wim@fluendo.com>
22618 * gst/gstelement.c: (gst_element_get_state_func),
22619 (gst_element_set_state):
22620 * gst/gstelement.h:
22621 * gst/gstmessage.c: (gst_message_parse_error),
22622 (gst_message_parse_warning):
22623 Keep track of current target state while performing a state
22624 change so that subclasses can do something interesting.
22625 Fix parsing of warning/error messages when GError is NULL.
22627 2005-06-24 Thomas Vander Stichele <thomas at apestaart dot org>
22629 * docs/gst/Makefile.am:
22630 * docs/gst/gstreamer-docs.sgml:
22631 * docs/gst/gstreamer-sections.txt:
22632 * docs/gst/gstreamer.types:
22633 * docs/gst/tmpl/gstbasesink.sgml:
22634 * docs/gst/tmpl/gstbasesrc.sgml:
22635 * docs/gst/tmpl/gstbin.sgml:
22636 * docs/gst/tmpl/gstcompat.sgml:
22637 * docs/gst/tmpl/gstfakesink.sgml:
22638 * docs/gst/tmpl/gstfakesrc.sgml:
22639 * docs/gst/tmpl/gstfilesink.sgml:
22640 * docs/gst/tmpl/gstfilesrc.sgml:
22641 * docs/gst/tmpl/gstindex.sgml:
22642 * docs/manual/appendix-quotes.xml:
22643 * gst/base/gstbasesrc.h:
22644 * gst/elements/gstfakesrc.h:
22645 * gst/gstmessage.h:
22646 start pulling in base classes and elements in our docs
22648 2005-06-24 Stefan Kost <ensonic@users.sf.net>
22650 * docs/gst/Makefile.am:
22651 * docs/libs/Makefile.am:
22652 fixed make distcheck with gtk-doc 1.3
22654 2005-06-23 Wim Taymans <wim@fluendo.com>
22656 * gst/gstelement.c: (gst_element_get_state_func),
22657 (gst_element_set_state), (gst_element_change_state):
22658 When the state did not change, also report NO_PREROLL
22659 when it matters.
22661 2005-06-23 Wim Taymans <wim@fluendo.com>
22663 * gst/gstpad.c: (gst_pad_event_default):
22664 * gst/gstqueue.c: (gst_queue_loop):
22665 No unsafe task pausing please.
22667 2005-06-23 Wim Taymans <wim@fluendo.com>
22669 * gst/schedulers/threadscheduler.c:
22670 (gst_thread_scheduler_task_start),
22671 (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
22672 Ref the task before pushing it on the threadpool. This
22673 makes sure that we have a ref when the threadfunction is
22674 actually called.
22676 2005-06-23 Andy Wingo <wingo@pobox.com>
22678 * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
22679 offset is greater than the file's size.
22681 * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK)
22682 (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
22683 * gst/gstobject.c (gst_object_class_init): Make the class lock
22684 recursive. Wim won't let me drop deep_notify. Decodebin works
22685 again, whoopdy doo.
22687 * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
22688 internal pad, and hacks accordingly. Doesn't do it on the target
22689 pad because we change its caps. Probably catches all cases of
22690 interest tho.
22691 (gst_ghost_pad_set_property): Connect to notify::caps as
22692 appropritate.
22694 * tests/network-clock.scm (plot-simulation): Pipe data to the
22695 elite python skript.
22697 * tests/network-clock-utils.scm (define-parameter): New macro,
22698 defines a parameter that can be set via the command line.
22699 (set-parameter!, parse-parameter-arguments): Command line args
22700 parser.
22702 * tests/plot-data: Simple matplotlib-based plotter, takes input on
22703 stdin.
22705 2005-06-23 Jan Schmidt <thaytan@mad.scientist.com>
22707 * gst/elements/gsttypefindelement.c:
22708 (gst_type_find_element_handle_event):
22709 Don't restart typefinding on a discont.
22710 * gst/gstelement.c: (gst_element_set_state):
22711 Debug spelling fix.
22712 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
22713 Allow changing mode of an active pad.
22714 Debug output fixes.
22715 * gst/registries/gstlibxmlregistry.c: (load_feature):
22716 Don't cast a static pad template to a normal pad template.
22718 2005-06-23 Thomas Vander Stichele <thomas at apestaart dot org>
22720 * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
22721 * gst/gstvalue.c: (gst_value_deserialize_int_helper):
22722 remove gst_strtoll completely, since it didn't actually do
22723 anything more than what g_ascii_strtoull already does.
22724 check for range errors when deserializing
22725 do a cast for the unsigned cases; but further fixing needs
22726 a decision on what the interpretation of "(int)" and
22727 deserialization should be for values that fall outside the
22728 type's boundaries (ie, refuse, or interpret as casting)
22730 2005-06-23 Wim Taymans <wim@fluendo.com>
22732 * check/Makefile.am:
22733 * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
22734 * docs/design/part-live-source.txt:
22735 * docs/design/part-states.txt:
22736 * gst/base/gstbasesrc.c: (gst_basesrc_init),
22737 (gst_basesrc_set_live), (gst_basesrc_is_live),
22738 (gst_basesrc_get_range), (gst_basesrc_activate),
22739 (gst_basesrc_change_state):
22740 * gst/base/gstbasesrc.h:
22741 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
22742 (gst_fakesrc_set_property), (gst_fakesrc_get_property):
22743 * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
22744 * gst/gstelement.c: (gst_element_get_state_func),
22745 (gst_element_set_state):
22746 * gst/gstelement.h:
22747 * gst/gsttypes.h:
22748 * tools/gst-launch.c: (event_loop), (main):
22749 Added support for live sources and other elements that
22750 cannot do preroll.
22751 Updated design docs, added live-source design doc.
22752 Implemented live source functionality in basesrc
22753 Fix error condition in _bin_get_state()
22754 Implement live source handling in -launch.
22755 Added check for live sources.
22756 Fixed case in GstBin where elements were changed state
22757 multiple times.
22760 2005-06-23 Andy Wingo <wingo@pobox.com>
22762 * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
22763 borken refcounting.
22765 * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
22766 gst_caps_replace takes care of this for us.
22768 * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
22769 gst_pad_set_caps on the target, not just its setcaps() function.
22771 * tests/network-clock.scm:
22772 * tests/network-clock-utils.scm: A network clock simulator.
22773 Something of an algorithmic testbed before doing something in C.
22775 2005-06-22 Thomas Vander Stichele <thomas at apestaart dot org>
22777 * check/Makefile.am:
22778 * check/gst/capslist.h:
22779 copy over from 0.8, and add two with bitmasks specified with
22780 (int) 0xFF...
22781 * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
22782 add test to parse everything from capslist.h
22783 * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
22784 (main):
22785 add test for structure deserialization
22786 * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
22787 add tests for deserialization of strings to int types
22788 * gst/gststructure.c: (gst_structure_nth_field_name):
22789 * gst/gststructure.h:
22790 add a way to get the name of a field referenced by index
22791 * gst/gstvalue.c: (gst_value_deserialize_int_helper):
22792 instead of checking if the resulting long long lies between
22793 min and max, we check if the long long would fit into
22794 a number of bytes for the final type.
22795 This fixes cases where a string represents 2^32 - 1, which
22796 when cast to int would be the (valid) -1, but is bigger than
22797 G_MAXINT
22799 2005-06-22 Thomas Vander Stichele <thomas at apestaart dot org>
22801 * gst/parse/grammar.y:
22802 add a log line for type deserialization
22804 2005-06-22 Thomas Vander Stichele <thomas at apestaart dot org>
22806 * check/gst/gstvalue.c: (START_TEST):
22807 * gst/gstvalue.c: (gst_value_deserialize):
22808 return long long, not int, so gint64 deserialization actually
22809 works. Is there any flag that makes the compiler check this ?
22810 Fixes #308559
22812 2005-06-22 Wim Taymans <wim@fluendo.com>
22814 * gst/gstbuffer.h:
22815 Added convenience macros for setting buffers in GValue.
22817 2005-06-21 Thomas Vander Stichele <thomas at apestaart dot org>
22819 * check/gst/.cvsignore:
22820 * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
22821 add a test deserializing int64, and comment part out because
22822 it fails, yay !
22824 2005-06-21 Thomas Vander Stichele <thomas at apestaart dot org>
22826 * check/Makefile.am:
22827 * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
22828 * testsuite/Makefile.am:
22829 * testsuite/caps/Makefile.am:
22830 * testsuite/caps/value_serialize.c:
22831 * testsuite/test_gst_init.c:
22832 move a value_serialize test over
22834 2005-06-20 Wim Taymans <wim@fluendo.com>
22836 * gst/gstpad.c:
22837 Small doc updates.
22839 * gst/gstvalue.c: (gst_value_compare_buffer),
22840 (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
22841 (gst_value_compare_flags), (gst_value_serialize_flags),
22842 (gst_value_deserialize_flags), (_gst_value_initialize):
22843 Fix serialisation of buffers, they are not boxed types anymore
22845 2005-06-20 Wim Taymans <wim@fluendo.com>
22847 * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
22848 Testcase to show error in buffer-on-caps serialisation.
22850 2005-06-20 Andy Wingo <wingo@pobox.com>
22852 * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
22853 will be adding to later.
22855 * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
22856 if its socks fill with rocks.
22857 (gst_system_clock_obtain): Set the name on object construction.
22858 Avoid double-checked locking.
22860 2005-06-20 Tim-Philipp Müller <tim at centricular dot net>
22862 * gst/gsturi.c: (gst_element_make_from_uri):
22863 Fix potential endless loop.
22865 2005-06-19 Thomas Vander Stichele <thomas at apestaart dot org>
22867 * check/Makefile.am:
22868 add gsttag
22869 * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
22870 (main):
22871 move over from testsuite dir and clean up
22872 * configure.ac:
22873 * gst/gsttag.c:
22874 * testsuite/Makefile.am:
22875 * testsuite/tags/.cvsignore:
22876 * testsuite/tags/Makefile.am:
22877 * testsuite/tags/merge.c:
22878 remove testsuite/tags
22880 2005-06-19 Thomas Vander Stichele <thomas at apestaart dot org>
22882 * docs/gst/gstreamer-sections.txt:
22883 * docs/gst/tmpl/gstenumtypes.sgml:
22884 * win32/gstenumtypes.c:
22885 clean up documentation build a little
22887 2005-06-19 Thomas Vander Stichele <thomas at apestaart dot org>
22889 * check/gstcheck.h:
22890 add macros for checking refcounts on objects and caps
22891 * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
22892 add some more unit tests
22893 * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
22894 (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
22895 fix leaked refcounts (I hope :)) so unittest works
22896 * gst/gstpad.h:
22897 whitespace removal
22899 2005-06-19 Thomas Vander Stichele <thomas at apestaart dot org>
22901 * configure.ac: back to HEAD
22903 === release 0.9.1 ===
22905 2005-06-17 Thomas Vander Stichele <thomas at apestaart dot org>
22907 * NEWS:
22908 * RELEASE:
22909 updated
22911 2005-06-17 Andy Wingo <wingo@pobox.com>
22913 * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
22914 assert; it's always possible that the pad gets deactivated in
22915 between the checks in gstpad.c and the implementation. Rely on
22916 finish_preroll() to return a FLUSHING or similar instead of on the
22917 assert.
22919 * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
22920 clock and post an EOS message if we come out of finish_preroll in
22921 the playing state.
22923 2005-06-16 David Schleef <ds@schleef.org>
22925 * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
22926 (gst_capsfilter_set_property): Allow NULL as possible value
22927 for filter_caps property, indicating GST_CAPS_ANY.
22929 2005-06-09 Thomas Vander Stichele <thomas at apestaart dot org>
22931 * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
22932 fix debug output
22933 * gst/schedulers/Makefile.am:
22934 use libgst prefix
22935 * gstreamer.spec.in:
22936 fix spec for it
22938 2005-06-09 Thomas Vander Stichele <thomas at apestaart dot org>
22940 * gstreamer.spec.in:
22941 clean up
22943 2005-06-08 Andy Wingo <wingo@pobox.com>
22945 * gst/gstutils.c: RPAD fixes all around.
22946 (gst_element_link_pads): Refcounting fixes.
22948 * tools/gst-inspect.c:
22949 * tools/gst-xmlinspect.c:
22950 * parse/grammar.y:
22951 * gst/base/gsttypefindhelper.c:
22952 * gst/base/gstbasesink.c:
22953 * gst/gstqueue.c: RPAD fixes.
22955 * gst/gstghostpad.h:
22956 * gst/gstghostpad.c: New ghost pad implementation as full proxy
22957 pads. The tricky thing is they provide both source and sink
22958 interfaces, since they proxy the internal pad for the external
22959 pad, and vice versa. Implement with lower-level ProxyPad objects,
22960 with the interior proxy pad as a child of the exterior ghost pad.
22961 Should write a doc on this.
22963 * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
22964 (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
22965 gst_object API.
22967 * gst/gstpad.c: Big changes. No more stub base GstPad, now all
22968 pads are real pads. No ghost pads in this file. Not documenting
22969 the myriad s/RPAD/PAD/ and REALIZE fixes.
22970 (gst_pad_class_init): Add properties for "direction" and
22971 "template". Both are construct-only, so they can't change during
22972 the life of the pad. Fixes properly deriving from GstPad.
22973 (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
22974 derived objects, just set properties when creating the objects via
22975 g_object_new.
22976 (gst_pad_get_parent): Implement as a function, return NULL if the
22977 parent is not an element.
22978 (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
22979 (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
22981 * gst/gstobject.c (gst_object_class_init): Make name a construct
22982 property. Don't set it in the object init.
22984 * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
22985 with UNKNOWN direction.
22986 (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
22987 with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
22988 (gst_element_remove_pad): Remove ghost-pad special cases.
22989 (gst_element_pads_activate): Remove rpad cruft.
22991 * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
22992 catch the pad's-parent-not-an-element case.
22994 * gst/gst.h: Include gstghostpad.h.
22996 * gst/gst.c (init_post): No more real, ghost pads.
22998 * gst/Makefile.am: Add gstghostpad.[ch].
23000 * check/Makefile.am:
23001 * check/gst/gstbin.c:
23002 * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
23003 into a bin creates ghost pads, and that the refcounts are right.
23004 Partly moved from gstbin.c.
23006 2005-06-08 Thomas Vander Stichele <thomas at apestaart dot org>
23008 * check/gst-libs/.cvsignore:
23009 * check/gst/.cvsignore:
23010 * check/pipelines/.cvsignore:
23011 ignore more
23012 * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
23013 (START_TEST), (cleanup_suite), (main):
23014 add some tests related to cleanup after running pipelines
23016 2005-06-08 Thomas Vander Stichele <thomas at apestaart dot org>
23018 * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
23019 add a testsuite for GstBuffer
23021 2005-06-08 Thomas Vander Stichele <thomas at apestaart dot org>
23023 * gst/gstminiobject.h:
23024 add defines for accessing the refcount
23026 2005-06-03 Stefan Kost <ensonic@users.sf.net>
23028 * Makefile.am: added support for html unit test coverage reports
23030 2005-06-03 Jan Schmidt <thaytan@mad.scientist.com>
23032 * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
23033 Free existing caps if the capsfilter changes. Add a FIXME about
23034 setting those caps on the pads.
23036 * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
23037 Before adding a ghost pad to a parent bin, check that there isn't
23038 already one for the element on the bin. Prevents infinite recursion
23039 when using decodebin in parse pipelines. Andy says he'll rewrite the
23040 way this works anyway, so ignore the hack.
23042 2005-06-02 Andy Wingo <wingo@pobox.com>
23044 * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
23045 file size, pass it on to the type find helper.
23047 * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
23048 segment_start and segment_end properly according to the seek
23049 method. Segment_end is still a bit flaky because offset can be
23050 negative for CUR and END cases, but it takes -1 as an "unset"
23051 value.
23053 2005-06-02 Wim Taymans <wim@fluendo.com>
23055 * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
23056 (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
23057 (gst_basesink_activate):
23058 * gst/base/gstbasesink.h:
23059 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
23060 (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
23061 (gst_pad_query), (gst_pad_start_task):
23062 * gst/gstpad.h:
23063 * gst/gstqueue.c: (gst_queue_bufferalloc),
23064 (gst_queue_handle_sink_event), (gst_queue_chain):
23065 Bufferalloc: return GstFlowReturn to more accuratly report
23066 why allocation failed.
23068 2005-06-02 Wim Taymans <wim@fluendo.com>
23070 * gst/gstpipeline.c: (gst_pipeline_send_event):
23071 Take snapshot of state without blocking.
23073 2005-06-02 Wim Taymans <wim@fluendo.com>
23075 * docs/design/part-TODO.txt:
23076 * docs/design/part-caps.txt:
23077 * docs/design/part-clocks.txt:
23078 * docs/design/part-negotiation.txt:
23079 * docs/design/part-preroll.txt:
23080 Small doc updates
23082 2005-05-30 Wim Taymans <wim@fluendo.com>
23084 * gst/elements/gstidentity.c: (gst_identity_event),
23085 (gst_identity_transform), (gst_identity_get_property):
23086 Protect last_message property as it is accessed from
23087 multiple threads.
23089 2005-05-30 Wim Taymans <wim@fluendo.com>
23091 * gst/gstelement.c: (gst_element_init),
23092 (gst_element_pads_activate), (gst_element_change_state):
23093 Slicker pad activation code.
23095 2005-05-30 Wim Taymans <wim@fluendo.com>
23097 * gst/Makefile.am:
23098 * gst/gstelement.h:
23099 * gst/gstelementfactory.h:
23100 * gst/gsttypes.h:
23101 Move elementfactory methods to separate .h file.
23103 2005-05-30 Wim Taymans <wim@fluendo.com>
23105 * docs/design/part-overview.txt:
23106 * gst/gstsystemclock.h:
23107 Small typo fixes, doc updates.
23109 2005-05-30 Wim Taymans <wim@fluendo.com>
23111 * gst/gst.c: (gst_init_get_popt_table), (init_post),
23112 (init_popt_callback):
23113 Remove cpu-opt flag.
23115 2005-05-30 Wim Taymans <wim@fluendo.com>
23117 * gst/gstbuffer.c: (gst_subbuffer_finalize),
23118 (gst_buffer_create_sub), (gst_buffer_is_span_fast):
23119 * gst/gstbuffer.h:
23120 Avoid typechecking in places where not needed.
23121 Added accessor for malloc_data.
23123 2005-05-30 Wim Taymans <wim@fluendo.com>
23125 * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
23126 (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
23127 (gst_pad_configure_sink), (gst_pad_configure_src),
23128 (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
23129 (gst_pad_start_task):
23130 Propagate errors from _set_caps() in configure_src/sink
23131 functions instead of returning TRUE.
23132 FLUSH events can travel up and downstream
23135 2005-05-30 Wim Taymans <wim@fluendo.com>
23137 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
23138 (gst_basesink_activate):
23139 Handle EOS in preroll.
23141 2005-05-30 Wim Taymans <wim@fluendo.com>
23143 * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
23144 (gst_queue_loop), (gst_queue_handle_src_event):
23145 Remove old pieces of code
23146 Flushing the queue in an upstream event is a very bad idea.
23148 2005-05-26 Andy Wingo <wingo@pobox.com>
23150 * gst/gstminiobject.c (gst_value_mini_object_collect): Use
23151 gst_value_set_mini_object so as to add a ref on the object (which
23152 will be removed when the value is unset).
23154 * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
23155 arg type in ::handoff.
23157 * gst/gstelement.c (gst_element_change_state): Also deactivate
23158 pads in READY->NULL, just in case the element didn't make it to
23159 PAUSED. Wingo tested, Wim approved.
23161 2005-05-26 Wim Taymans <wim@fluendo.com>
23163 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
23164 (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
23165 (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
23166 A flushing pad cannot be used to alloc_buffer from.
23168 2005-05-26 Wim Taymans <wim@fluendo.com>
23170 * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
23171 (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
23172 (gst_bus_source_dispatch), (gst_bus_source_finalize),
23173 (gst_bus_create_watch), (gst_bus_add_watch_full):
23174 * gst/gstbus.h:
23175 Implement a real GSource and use g_main_context_wakeup() to
23176 signal new messages instead of the socketpair.
23178 2005-05-25 Wim Taymans <wim@fluendo.com>
23180 * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
23181 (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
23182 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
23183 (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
23184 (gst_pad_send_event), (gst_pad_start_task):
23185 * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
23186 (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
23187 (gst_queue_sink_activate), (gst_queue_src_activate),
23188 (gst_queue_change_state):
23189 * gst/gstqueue.h:
23190 Fix state changes for non sinks. We now change sinks, then elements
23191 with unconnected srcpads, then the rest.
23192 More efficient queue unlocking in flush and state changes.
23193 Set the pad activate mode even if it does not have an activate
23194 function.
23196 2005-05-25 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
23198 * gst/base/gstbasesrc.c: (gst_basesrc_activate):
23199 Don't go in pull mode for non-seekable sources.
23200 * gst/elements/gsttypefindelement.h:
23201 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
23202 (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
23203 (free_entry), (stop_typefinding),
23204 (gst_type_find_element_handle_event), (find_peek),
23205 (gst_type_find_element_chain), (do_pull_typefind),
23206 (gst_type_find_element_change_state):
23207 Allow typefinding (w/o seeking) in push-mode, simplified version
23208 of what was in 0.8.
23209 * gst/gstutils.c: (gst_buffer_join):
23210 * gst/gstutils.h:
23211 gst_buffer_join() from 0.8.
23213 2005-05-25 Wim Taymans <wim@fluendo.com>
23215 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
23216 (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
23217 (gst_pad_send_event), (gst_pad_start_task):
23218 Disable attempt at mode switching until it is figured out.
23220 2005-05-25 Wim Taymans <wim@fluendo.com>
23222 * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
23223 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
23224 (gst_basesink_finish_preroll), (gst_basesink_chain),
23225 (gst_basesink_loop), (gst_basesink_activate),
23226 (gst_basesink_change_state):
23227 * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
23228 (gst_basesrc_get_range), (gst_basesrc_loop),
23229 (gst_basesrc_activate):
23230 * gst/elements/gsttee.c: (gst_tee_sink_activate):
23231 * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
23232 (gst_real_pad_init), (gst_real_pad_set_property),
23233 (gst_real_pad_get_property), (gst_pad_set_active),
23234 (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
23235 (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
23236 (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
23237 (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
23238 (gst_pad_event_default_dispatch), (gst_pad_event_default),
23239 (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
23240 (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
23241 (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
23242 (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
23243 (gst_pad_stop_task):
23244 * gst/gstpad.h:
23245 * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
23246 (gst_queue_loop), (gst_queue_src_activate):
23247 * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
23248 (gst_task_get_state):
23249 * gst/gsttask.h:
23250 * gst/schedulers/threadscheduler.c:
23251 (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
23252 Implement gst_pad_pause/start/stop_task(), take STREAM lock
23253 in task function.
23254 Remove ACTIVE pad flag, use FLUSHING everywhere
23255 Added _pad_chain(), _pad_get_range() to call chain/getrange
23256 functions.
23257 Add locks around IS_FLUSHING when reading.
23258 Take STREAM lock in chain(), get_range() functions so plugins
23259 don't need to take it anymore.
23263 2005-05-25 Wim Taymans <wim@fluendo.com>
23265 * tools/gst-launch.c: (event_loop):
23266 Unref message after using its contents instead of
23267 before.
23269 2005-05-24 Wim Taymans <wim@fluendo.com>
23271 * docs/design/draft-ghostpads.txt:
23272 * docs/design/draft-push-pull.txt:
23273 * docs/design/draft-query.txt:
23274 * docs/design/part-overview.txt:
23275 Docs updates, added general overview doc.
23277 2005-05-21 David Schleef <ds@schleef.org>
23279 * docs/gst/tmpl/old/GstBin.sgml:
23280 * docs/gst/tmpl/old/GstBuffer.sgml:
23281 * docs/gst/tmpl/old/GstCaps.sgml:
23282 * docs/gst/tmpl/old/GstClock.sgml:
23283 * docs/gst/tmpl/old/GstCompat.sgml:
23284 * docs/gst/tmpl/old/GstData.sgml:
23285 * docs/gst/tmpl/old/GstElement.sgml:
23286 * docs/gst/tmpl/old/GstEvent.sgml:
23287 * docs/gst/tmpl/old/GstIndex.sgml:
23288 * docs/gst/tmpl/old/GstStructure.sgml:
23289 * docs/gst/tmpl/old/GstTag.sgml:
23290 * docs/gst/tmpl/old/cothreads.sgml:
23291 * docs/gst/tmpl/old/cothreads_compat.sgml:
23292 * docs/gst/tmpl/old/gettext.sgml:
23293 * docs/gst/tmpl/old/gobject2gtk.sgml:
23294 * docs/gst/tmpl/old/grammar.tab.sgml:
23295 * docs/gst/tmpl/old/gst-i18n-app.sgml:
23296 * docs/gst/tmpl/old/gst-i18n-lib.sgml:
23297 * docs/gst/tmpl/old/gst_private.sgml:
23298 * docs/gst/tmpl/old/gstaggregator.sgml:
23299 * docs/gst/tmpl/old/gstarch.sgml:
23300 * docs/gst/tmpl/old/gstatomic_impl.sgml:
23301 * docs/gst/tmpl/old/gstbufferstore.sgml:
23302 * docs/gst/tmpl/old/gstdata_private.sgml:
23303 * docs/gst/tmpl/old/gstdisksink.sgml:
23304 * docs/gst/tmpl/old/gstdisksrc.sgml:
23305 * docs/gst/tmpl/old/gstelementfactory.sgml:
23306 * docs/gst/tmpl/old/gstextratypes.sgml:
23307 * docs/gst/tmpl/old/gstfakesink.sgml:
23308 * docs/gst/tmpl/old/gstfakesrc.sgml:
23309 * docs/gst/tmpl/old/gstfdsink.sgml:
23310 * docs/gst/tmpl/old/gstfdsrc.sgml:
23311 * docs/gst/tmpl/old/gstfilesink.sgml:
23312 * docs/gst/tmpl/old/gstfilesrc.sgml:
23313 * docs/gst/tmpl/old/gsthttpsrc.sgml:
23314 * docs/gst/tmpl/old/gstidentity.sgml:
23315 * docs/gst/tmpl/old/gstindexfactory.sgml:
23316 * docs/gst/tmpl/old/gstmarshal.sgml:
23317 * docs/gst/tmpl/old/gstmd5sink.sgml:
23318 * docs/gst/tmpl/old/gstmultidisksrc.sgml:
23319 * docs/gst/tmpl/old/gstmultifilesrc.sgml:
23320 * docs/gst/tmpl/old/gstpadtemplate.sgml:
23321 * docs/gst/tmpl/old/gstpipefilter.sgml:
23322 * docs/gst/tmpl/old/gstschedulerfactory.sgml:
23323 * docs/gst/tmpl/old/gstsearchfuncs.sgml:
23324 * docs/gst/tmpl/old/gstshaper.sgml:
23325 * docs/gst/tmpl/old/gstspider.sgml:
23326 * docs/gst/tmpl/old/gstspideridentity.sgml:
23327 * docs/gst/tmpl/old/gststatistics.sgml:
23328 * docs/gst/tmpl/old/gsttee.sgml:
23329 * docs/gst/tmpl/old/gsttimecache.sgml:
23330 * docs/gst/tmpl/old/gsttypefindfactory.sgml:
23331 * docs/gst/tmpl/old/gstxmlregistry.sgml:
23332 * docs/gst/tmpl/old/gthread-cothreads.sgml:
23333 * docs/gst/tmpl/old/types.sgml:
23334 I didn't intend to add these or check them in.
23336 2005-05-19 David Schleef <ds@schleef.org>
23338 * configure.ac: Use -no-common everywhere. In a sane world, it
23339 would be the default in libtool, because without it, you can't
23340 build DLLs on Windows.
23341 * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
23342 * docs/gst/gstreamer-sections.txt:
23343 * docs/gst/tmpl/gstcpu.sgml:
23344 * docs/gst/tmpl/gstdata.sgml:
23345 * docs/gst/tmpl/gstthread.sgml:
23347 2005-05-19 David Schleef <ds@schleef.org>
23349 * gst/gstminiobject.c: (gst_value_set_mini_object),
23350 (gst_value_take_mini_object), (gst_value_get_mini_object):
23351 * gst/gstminiobject.h: Add GValue set/get functions.
23353 2005-05-19 Wim Taymans <wim@fluendo.com>
23355 * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
23356 (gst_subbuffer_class_init), (gst_subbuffer_finalize),
23357 (gst_subbuffer_init), (gst_buffer_is_span_fast):
23358 * gst/gstbuffer.h:
23359 * gst/gstbus.c: (gst_bus_post):
23360 * gst/gstelement.c: (gst_element_get_random_pad):
23361 * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
23362 Make subbufer unref the parent in finalize.
23363 some more debugging info.
23366 2005-05-19 Wim Taymans <wim@fluendo.com>
23368 * gst/base/gstbasesink.c: (gst_basesink_class_init),
23369 (gst_basesink_init), (gst_basesink_finalize),
23370 (gst_basesink_activate), (gst_basesink_change_state):
23371 Don't free preroll queue too early.
23373 2005-05-19 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
23375 * gst/Makefile.am:
23376 * gst/ROADMAP:
23377 Hi, I'm outdated. Please shoot me.
23379 2005-05-19 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
23381 * gst/gstpipeline.c: (gst_pipeline_send_event):
23382 Do not access variables after they have been deleted.
23384 2005-05-19 Wim Taymans <wim@fluendo.com>
23386 * tools/gst-inspect.c: (print_plugin_features):
23387 A plugin feature does unfortunatly not use the
23388 object name yet...
23390 2005-05-18 Wim Taymans <wim@fluendo.com>
23392 * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
23393 Port _span() functions to new subbuffers.
23395 2005-05-18 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
23397 * gst/gstbin.c: (gst_bin_add_func):
23398 Fix clock settery in bins when adding kids after the clock has
23399 been selected.
23401 2005-05-18 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
23403 * gst/elements/gstidentity.c: (gst_identity_class_init):
23404 Workaround until signals support GstMiniObject.
23406 2005-05-18 Jan Schmidt <thaytan@mad.scientist.com>
23408 * gst/gstbuffer.c:
23409 Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
23411 2005-05-18 Wim Taymans <wim@fluendo.com>
23413 * gst/base/Makefile.am:
23414 * gst/base/gstadapter.c: (gst_adapter_base_init),
23415 (gst_adapter_class_init), (gst_adapter_init),
23416 (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
23417 (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
23418 (gst_adapter_flush), (gst_adapter_available),
23419 (gst_adapter_available_fast):
23420 * gst/base/gstadapter.h:
23421 Ported and added adapter to the base classes.
23423 2005-05-17 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
23425 * gst/gst.c:
23426 * gst/gstmessage.c:
23427 Make sure the class is reffed/unreffed once before threads can be
23428 used. Fixes #304551.
23430 2005-05-17 Wim Taymans <wim@fluendo.com>
23432 * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
23433 (gst_basesink_chain_unlocked), (gst_basesink_activate):
23434 * gst/gstminiobject.c: (gst_mini_object_get_type),
23435 (gst_mini_object_free):
23436 * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
23437 (gst_pad_push), (gst_pad_push_event):
23438 * gst/gstqueue.c: (gst_queue_change_state):
23439 Don't queue buffers in basesink when we are flushing.
23440 Unref buffer when flushing in basesink.
23441 Flush queue when going to READY
23442 Unref buffer when _push() returns an error.
23443 Don't free MiniObject instance when refcount is incremented
23444 in _finalize() so that we can recover objects.
23446 2005-05-17 Thomas Vander Stichele <thomas at apestaart dot org>
23448 * docs/manual/advanced-schedulers.xml:
23449 * docs/manual/appendix-checklist.xml:
23450 * docs/pwg/advanced-clock.xml:
23451 * docs/pwg/advanced-interfaces.xml:
23452 * docs/pwg/advanced-request.xml:
23453 * docs/pwg/advanced-types.xml:
23454 * docs/pwg/intro-preface.xml:
23455 * examples/plugins/example.c: (gst_example_get_type),
23456 (gst_example_class_init), (gst_example_chain),
23457 (gst_example_set_property), (gst_example_get_property),
23458 (gst_example_change_state), (plugin_init):
23459 * examples/plugins/example.h:
23460 small doc fixes
23462 2005-05-17 Wim Taymans <wim@fluendo.com>
23464 * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
23465 (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
23466 * gst/gstqueue.c: (gst_queue_change_state):
23467 Clear queue when going to READY.
23468 Remove IN_SETCAPS flag too.
23470 2005-05-17 Tim-Philipp Müller <tim at centricular dot net>
23472 * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
23473 Remove implicit cast from gboolean to GstElementStateReturn;
23474 make sure we still return failure in paused => ready case if
23475 the parent class fails to change state and our own stop
23476 vfunc succeeds.
23478 2005-05-17 Wim Taymans <wim@fluendo.com>
23480 * tools/gst-launch.c: (event_loop):
23481 Message was unreffed too soon.
23483 2005-05-16 Andy Wingo <wingo@pobox.com>
23485 * gst/gstbin.c (sink_iterator_filter): Err... um...
23487 * check/gst/gstbin.c (test_ghost_pads): New test for the
23488 ghosting-if-elements-not-in-same-bin behavior.
23490 2005-05-16 David Schleef <ds@schleef.org>
23492 * gst/gstminiobject.c: Use g_atomic_int_get() instead of
23493 accessing refcount directly.
23495 2005-05-15 David Schleef <ds@schleef.org>
23497 * check/Makefile.am: remove GstData checks
23498 * check/gst-libs/gdp.c: (START_TEST): fix for API changes
23499 * gst/Makefile.am: add miniobject, remove data
23500 * gst/gst.h: add miniobject, remove data
23501 * gst/gstdata.c: remove
23502 * gst/gstdata.h: remove
23503 * gst/gstdata_private.h: remove
23504 * gst/gsttypes.h: remove GstEvent and GstMessage
23505 * gst/gstelement.c: (gst_element_post_message): fix for API changes
23506 * gst/gstmarshal.list: change BOXED -> OBJECT
23508 Implement GstMiniObject.
23509 * gst/gstminiobject.c:
23510 * gst/gstminiobject.h:
23512 Modify to be subclasses of GstMiniObject.
23513 * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
23514 (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
23515 (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
23516 (gst_subbuffer_get_type), (gst_subbuffer_init),
23517 (gst_buffer_create_sub), (gst_buffer_is_span_fast),
23518 (gst_buffer_span):
23519 * gst/gstbuffer.h:
23520 * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
23521 (gst_event_class_init), (gst_event_init), (gst_event_finalize),
23522 (_gst_event_copy), (gst_event_new):
23523 * gst/gstevent.h:
23524 * gst/gstmessage.c: (_gst_message_initialize),
23525 (gst_message_get_type), (gst_message_class_init),
23526 (gst_message_init), (gst_message_finalize), (_gst_message_copy),
23527 (gst_message_new), (gst_message_new_error),
23528 (gst_message_new_warning), (gst_message_new_tag),
23529 (gst_message_new_state_changed), (gst_message_new_application):
23530 * gst/gstmessage.h:
23531 * gst/gstprobe.c: (gst_probe_perform),
23532 (gst_probe_dispatcher_dispatch):
23533 * gst/gstprobe.h:
23534 * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
23535 (gst_query_class_init), (gst_query_finalize), (gst_query_init),
23536 (_gst_query_copy), (gst_query_new):
23538 Update elements for GstData -> GstMiniObject changes
23539 * gst/gstquery.h:
23540 * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
23541 (gst_queue_chain), (gst_queue_loop):
23542 * gst/elements/gstbufferstore.c:
23543 (gst_buffer_store_add_buffer_func),
23544 (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
23545 * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
23546 (gst_fakesink_render):
23547 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
23548 * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
23549 (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
23550 (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
23551 (gst_filesrc_create_read):
23552 * gst/elements/gstidentity.c: (gst_identity_class_init):
23553 * gst/elements/gsttypefindelement.c:
23554 (gst_type_find_element_src_event), (free_entry_buffers),
23555 (gst_type_find_element_handle_event):
23556 * libs/gst/dataprotocol/dataprotocol.c:
23557 (gst_dp_header_from_buffer):
23558 * libs/gst/dataprotocol/dataprotocol.h:
23559 * libs/gst/dataprotocol/dp-private.h:
23561 2005-05-15 David Schleef <ds@schleef.org>
23563 * gst/elements/gstelements.c: Don't include headers that were
23564 just removed.
23566 2005-05-15 David Schleef <ds@schleef.org>
23568 * gst/elements/Makefile.am: Remove some elements that don't
23569 need to be in the core (or even exist at all).
23570 * gst/elements/gstaggregator.c:
23571 * gst/elements/gstaggregator.h:
23572 * gst/elements/gstmd5sink.c:
23573 * gst/elements/gstmd5sink.h:
23574 * gst/elements/gstmultifilesrc.c:
23575 * gst/elements/gstmultifilesrc.h:
23576 * gst/elements/gstpipefilter.c:
23577 * gst/elements/gstpipefilter.h:
23578 * gst/elements/gstshaper.c:
23579 * gst/elements/gstshaper.h:
23580 * gst/elements/gststatistics.c:
23581 * gst/elements/gststatistics.h:
23582 * po/POTFILES.in: Remove above files.
23584 2005-05-14 Andy Wingo <wingo@pobox.com>
23586 * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
23587 so as to get the refs right.
23588 (sink_iterator_filter): New function, wraps bin_element_is_sink,
23589 unreffing objects that don't pass the filter.
23591 * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
23592 gst_element_set_bus.
23593 (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
23594 normal cases, this will destroy the bus.
23596 * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
23597 object.
23599 * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
23600 has no sinks.
23602 2005-05-13 Andy Wingo <wingo@pobox.com>
23604 * gst/gstutils.c (gst_element_link_pads): Instead of calling
23605 gst_pad_link, call pad_link_maybe_ghosting,
23606 (pad_link_maybe_ghosting): Links pads, making sure that the
23607 elements being linked are in the same bin.
23608 (find_common_root, object_has_ancestor, ghost_up, remove_pad):
23609 Helpers for pad_link_maybe_ghosting.
23611 2005-05-13 Tim-Philipp Müller <tim at centricular dot net>
23613 * configure.ac:
23614 Require GLib >= 2.4.0 (for the g_atomic_* funcs)
23616 2005-05-13 Tim-Philipp Müller <tim at centricular dot net>
23618 * docs/design/part-element-source.txt:
23619 Mention GstPushSrc
23621 2005-05-12 Wim Taymans <wim@fluendo.com>
23623 * gst/base/gstbasesink.c: (gst_basesink_init),
23624 (gst_basesink_activate):
23625 * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
23626 (gst_basesrc_is_seekable):
23627 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
23628 (bin_element_is_sink), (gst_bin_change_state):
23629 * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
23630 * gst/gstelement.h:
23631 Identify sinks by their flag to avoid overly complicated
23632 checks (fow now).
23633 Do state changes even for elements not reachable from the
23634 sinks.
23635 BaseSink is a sink now :)
23636 Some more debugging info in the basesrc.
23639 2005-05-12 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
23641 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
23642 Implement _query on a bin, similar to _send_event.
23644 2005-05-12 Tim-Philipp Müller <tim at centricular dot net>
23646 * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
23647 Discont event offset format should be GST_FORMAT_BYTES,
23648 not GST_FORMAT_TIME.
23650 2005-05-12 Wim Taymans <wim@fluendo.com>
23652 * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
23653 Same fix as Ronald's but without the signal.
23655 2005-05-12 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
23657 * gst/gstutils.c: (gst_element_query_position):
23658 No, an element is not a pad.
23660 2005-05-12 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
23662 * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
23663 (gst_bin_get_state):
23664 If a child is removed from a bin while we remove the child from
23665 the bin and while we're retrieving its state, signal this to the
23666 get_state function so we abort the wait (instead of waiting for
23667 a timeout) and can immediately re-iterate over all other elements.
23669 2005-05-12 Wim Taymans <wim@fluendo.com>
23671 * gst/base/Makefile.am:
23672 * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
23673 (gst_basesrc_start):
23674 * gst/base/gstbasesrc.h:
23675 * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
23676 (gst_pushsrc_base_init), (gst_pushsrc_class_init),
23677 (gst_pushsrc_init), (gst_pushsrc_create):
23678 * gst/base/gstpushsrc.h:
23679 Added is_seekable to BaseSrc
23680 Added simple PushSrc.
23682 2005-05-11 Wim Taymans <wim@fluendo.com>
23684 * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
23685 * gst/gstutils.c: (gst_element_get_compatible_pad_template),
23686 (gst_element_link_pads), (gst_element_query_position),
23687 (gst_element_query_convert), (intersect_caps_func),
23688 (gst_pad_query_position), (gst_pad_query_convert):
23689 Fix refcounting in utils function.
23690 No point in trying to activate a pad when it's added, it could
23691 be added from the state change function and then we deadlock, the
23692 element has to decide what to do.
23694 2005-05-10 Andy Wingo <wingo@pobox.com>
23696 * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
23697 *all* the arguments.
23699 * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
23700 stream lock if it's a FLUSH_DONE; normal flushes don't get the
23701 lock (according to the docs -- if this is wrong change the docs).
23703 * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
23704 flush messages in the NULL state.
23706 * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
23707 message immediately and return.
23708 (gst_bus_set_flushing): New function. If a bus is flushing, it
23709 flushes out any queued messages and immediately unrefs new
23710 messages. This is so when an element goes to NULL, all of the
23711 unhandled messages coming from it can be freed, and their
23712 references to the element dropped. In other words: message source
23713 ref considered harmful :P
23715 * gst/gstbin.c (gst_bin_change_state): Unref peer element when
23716 we're finished with it.
23718 * gst/gstmessage.c (gst_message_new_state_changed):
23720 2005-05-10 Wim Taymans <wim@fluendo.com>
23722 * gst/gstvalue.c: (gst_value_compare_flags),
23723 (gst_value_serialize_flags), (gst_value_deserialize_flags),
23724 (_gst_value_initialize):
23725 Added flags serialize/deserialize/compare code.
23727 2005-05-09 Andy Wingo <wingo@pobox.com>
23729 * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
23730 Intersect the peer's caps with our caps.
23732 2005-05-09 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
23734 * gst/base/gsttypefindhelper.c: (helper_find_peek):
23735 * gst/elements/gsttypefindelement.c: (find_peek):
23736 Handle negative offsets better. Fixes decodebin.
23738 2005-05-09 Wim Taymans <wim@fluendo.com>
23740 * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
23741 (gst_base_transform_event):
23742 * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
23743 Implement accept_caps.
23744 Fix silly lock/unlock mismatch in base class.
23746 2005-05-09 Wim Taymans <wim@fluendo.com>
23748 * docs/design/draft-push-pull.txt:
23749 * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
23750 * gst/elements/gstfilesink.c: (gst_filesink_init),
23751 (gst_filesink_query):
23752 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
23753 (gst_type_find_handle_src_query), (find_element_get_length):
23754 * gst/gstelement.c: (gst_element_seek), (gst_element_query):
23755 * gst/gstelement.h:
23756 * gst/gstmessage.c:
23757 * gst/gstmessage.h:
23758 * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
23759 (gst_real_pad_get_caps_unlocked),
23760 (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
23761 (gst_pad_event_default_dispatch), (gst_pad_event_default),
23762 (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
23763 (gst_real_pad_dispose), (gst_real_pad_finalize),
23764 (gst_pad_load_and_link), (gst_pad_save_thyself),
23765 (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
23766 (gst_pad_check_pull_range), (gst_pad_pull_range),
23767 (gst_pad_template_get_type), (gst_pad_template_class_init),
23768 (gst_pad_template_init), (gst_pad_template_dispose),
23769 (name_is_valid), (gst_static_pad_template_get),
23770 (gst_pad_template_new), (gst_static_pad_template_get_caps),
23771 (gst_pad_template_get_caps), (gst_pad_set_element_private),
23772 (gst_pad_get_element_private), (gst_pad_start_task),
23773 (gst_pad_pause_task), (gst_pad_stop_task),
23774 (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
23775 (gst_ghost_pad_init), (gst_ghost_pad_dispose),
23776 (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
23777 (gst_ghost_pad_new):
23778 * gst/gstpad.h:
23779 * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
23780 (gst_query_new_position), (gst_query_set_position),
23781 (gst_query_parse_position), (gst_query_new_convert),
23782 (gst_query_set_convert), (gst_query_parse_convert):
23783 * gst/gstquery.h:
23784 * gst/gstqueryutils.c:
23785 * gst/gstqueryutils.h:
23786 * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
23787 (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
23788 (gst_queue_handle_src_query):
23789 * gst/gstutils.c: (gst_element_get_compatible_pad_template),
23790 (gst_element_query_position), (gst_element_query_convert),
23791 (intersect_caps_func), (gst_pad_query_position),
23792 (gst_pad_query_convert):
23793 * gst/gstutils.h:
23794 * tools/gst-inspect.c: (print_pad_info):
23795 * tools/gst-xmlinspect.c: (print_element_info):
23796 Remove old query functions. Ported old code.
23797 Added position/convert helper functions to gstutils.
23798 Reordered gstpad.c code, grouping relevant things.
23799 Remove gst_message_new(), always need to speficy a specific
23800 message.
23803 2005-05-09 Andy Wingo <wingo@pobox.com>
23805 * gst/gstiterator.h: Add some includes.
23807 * gst/gstqueryutils.h: Include more headers.
23809 * gst/gstpad.h:
23810 * gst/gstpad.c (gst_pad_query_position): New routine, replaces
23811 some uses of gst_pad_query.
23813 * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
23814 NULL out parameters.
23815 (gst_query_new_position): New proc, allocates a new position
23816 query.
23818 * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
23819 gstqueryutils.c to the build.
23821 * gst/gststructure.c (gst_structure_set_valist): Implement with
23822 the generic G_VALUE_COLLECT.
23824 2005-05-08 Edward Hervey <bilboed@bilboed.com>
23826 * gst/Makefile.am: (gst_headers):
23827 Added gstqueryutils.h to the list of headers to install, that was
23828 a 'nachty' move wingo :)
23830 2005-05-06 Andy Wingo <wingo@pobox.com>
23832 * gst/gstquery.h
23833 * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
23834 GstData, init a memchunk.
23835 (standard_definitions): Add a few query types, deprecate a few.
23836 (gst_query_get_type): New proc.
23837 (_gst_query_copy, _gst_query_free, gst_query_new): GstData
23838 implementation.
23839 (gst_query_new_application, gst_query_get_structure): New public
23840 procs.
23842 * docs/design/draft-query.txt: Removed LINKS from the query types,
23843 because all the rest can be dispatched to other pads -- seemed
23844 ugly to have a query that couldn't be dispatched. internal_links
23845 is fine as a pad method.
23847 * gst/gstpad.h: Add query2 as a pad method, add the new functions
23848 in gstpad.c, but maintain binary compatibility for the moment.
23849 Will fix before 0.9 is out.
23851 * gst/gstqueryutils.c:
23852 * gst/gstqueryutils.h: New files, implement 3 methods for each
23853 query type: parse_query, parse_response, and set. Probably need an
23854 allocator as well.
23856 * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
23858 * gst/elements/gstfilesink.c (gst_filesink_query2):
23859 * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
23860 query_types, and formats methods.
23862 * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
23863 (gst_pad_set_query2_function): New functions.
23864 (gst_real_pad_init): Set query2_default as the default query2
23865 function. Basically just dispatches to internally linked pads.
23867 Needs review!
23869 * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
23870 without using the atomic operations. Only one thread can possibly
23871 be accessing the data at this point. Changed so as to avoid
23872 gst_atomic operations.
23874 2005-05-06 Wim Taymans <wim@fluendo.com>
23876 * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
23877 Also set caps if we use the fallback buffer alloc.
23879 2005-05-06 Tim-Philipp Müller <tim at centricular dot net>
23881 * docs/gst/Makefile.am:
23882 * docs/gst/gstreamer-docs.sgml:
23883 * docs/gst/gstreamer-sections.txt:
23884 * docs/gst/tmpl/gstatomic.sgml:
23885 * docs/gst/tmpl/gstmemchunk.sgml:
23886 * testsuite/elements/struct_i386.h:
23887 * win32/GStreamer.vcproj:
23888 * win32/Makefile:
23889 Purge GstAtomic stuff from docs and win32 makefiles as well
23891 2005-05-06 Wim Taymans <wim@fluendo.com>
23893 * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
23894 * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
23895 * gst/gstpad.c: (gst_pad_peer_get_caps):
23896 * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
23897 (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
23898 (gst_queue_src_activate), (gst_queue_change_state):
23899 * gst/gstqueue.h:
23900 * gst/gstutils.c: (gst_element_get_compatible_pad_template),
23901 (intersect_caps_func):
23902 Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
23903 Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
23904 Some fixes for the peer_get_caps() change.
23906 2005-05-06 Wim Taymans <wim@fluendo.com>
23908 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
23909 (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
23910 (gst_basesink_activate):
23911 Actually do something with error codes returned from the push
23912 functions.
23914 2005-05-06 Wim Taymans <wim@fluendo.com>
23916 * docs/design/part-element-sink.txt:
23917 * docs/design/part-element-source.txt:
23918 * gst/base/gstbasesink.c: (gst_basesink_class_init),
23919 (gst_basesink_event), (gst_basesink_activate):
23920 * gst/base/gstbasesink.h:
23921 * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
23922 (gst_basesrc_activate):
23923 * gst/base/gstbasesrc.h:
23924 * gst/gstelement.c: (gst_element_pads_activate):
23925 Some more documentation.
23926 Fixed scheduling decision in _pads_activate().
23928 2005-05-05 Andy Wingo <wingo@pobox.com>
23930 * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
23931 the test suite.
23933 2005-05-05 Wim Taymans <wim@fluendo.com>
23935 * gst/base/Makefile.am:
23936 * gst/base/gstbasesink.h:
23937 * gst/base/gstbasesrc.c: (gst_basesrc_init),
23938 (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
23939 * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
23940 (gst_collectpads_class_init), (gst_collectpads_init),
23941 (gst_collectpads_finalize), (gst_collectpads_new),
23942 (gst_collectpads_set_function), (gst_collectpads_add_pad),
23943 (find_pad), (gst_collectpads_remove_pad),
23944 (gst_collectpads_is_active), (gst_collectpads_collect),
23945 (gst_collectpads_collect_range), (gst_collectpads_start),
23946 (gst_collectpads_stop), (gst_collectpads_peek),
23947 (gst_collectpads_pop), (gst_collectpads_available),
23948 (gst_collectpads_read), (gst_collectpads_flush),
23949 (gst_collectpads_chain):
23950 * gst/base/gstcollectpads.h:
23951 * gst/elements/Makefile.am:
23952 * gst/elements/gstelements.c:
23953 * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
23954 (gst_fakesink_get_times), (gst_fakesink_event),
23955 (gst_fakesink_preroll), (gst_fakesink_render):
23956 * gst/elements/gstfilesink.c: (gst_filesink_class_init),
23957 (gst_filesink_init), (gst_filesink_set_location),
23958 (gst_filesink_open_file), (gst_filesink_close_file),
23959 (gst_filesink_pad_query), (gst_filesink_event),
23960 (gst_filesink_render), (gst_filesink_change_state):
23961 * gst/elements/gstfilesink.h:
23962 Added object to help in making collect pad based elements.
23963 Ported filesink.
23964 Make event function in sink baseclass return gboolean.
23966 2005-05-05 Wim Taymans <wim@fluendo.com>
23968 * gst/gstbin.c: (gst_bin_send_event), (compare_name),
23969 (gst_bin_get_by_name):
23970 * gst/gstbuffer.h:
23971 * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
23972 (gst_clock_finalize):
23973 * gst/gstdata.c: (gst_data_replace):
23974 * gst/gstdata.h:
23975 * gst/gstelement.c: (gst_element_request_pad),
23976 (gst_element_pads_activate):
23977 * gst/gstobject.c: (gst_object_init), (gst_object_ref),
23978 (gst_object_unref):
23979 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
23980 (gst_pad_set_checkgetrange_function),
23981 (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
23982 (gst_pad_check_pull_range), (gst_pad_pull_range),
23983 (gst_static_pad_template_get_caps), (gst_pad_start_task),
23984 (gst_pad_pause_task), (gst_pad_stop_task):
23985 * gst/gstutils.c: (gst_element_get_compatible_pad_template),
23986 (gst_element_request_pad), (gst_pad_proxy_getcaps):
23987 Fix name lookup in GstBin.
23988 Added _data_replace() function and _buffer_replace()
23989 Use finalize method to clean up clock.
23990 Fix refcounting on request pads.
23991 Fix pad schedule mode error.
23992 Some more object refcounting debug info,
23995 2005-05-04 Andy Wingo <wingo@pobox.com>
23997 * check/Makefile.am:
23998 * docs/gst/tmpl/gstatomic.sgml:
23999 * docs/gst/tmpl/gstplugin.sgml:
24000 * gst/base/gstbasesink.c: (gst_basesink_activate):
24001 * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
24002 (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
24003 (gst_basesrc_query), (gst_basesrc_set_property),
24004 (gst_basesrc_get_property), (gst_basesrc_check_get_range),
24005 (gst_basesrc_activate):
24006 * gst/base/gstbasesrc.h:
24007 * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
24008 (gst_base_transform_src_activate):
24009 * gst/elements/gstelements.c:
24010 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
24011 (gst_fakesrc_set_property), (gst_fakesrc_get_property):
24012 * gst/elements/gsttee.c: (gst_tee_sink_activate):
24013 * gst/elements/gsttypefindelement.c: (find_element_get_length),
24014 (gst_type_find_element_checkgetrange),
24015 (gst_type_find_element_activate):
24016 * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
24017 * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
24018 (gst_caps_load_thyself):
24019 * gst/gstelement.c: (gst_element_pads_activate),
24020 (gst_element_save_thyself), (gst_element_restore_thyself):
24021 * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
24022 (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
24023 * gst/gstpad.h:
24024 * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
24025 (gst_xml_parse_file), (gst_xml_parse_memory),
24026 (gst_xml_get_element), (gst_xml_make_element):
24027 * gst/indexers/gstfileindex.c: (gst_file_index_load),
24028 (_file_index_id_save_xml), (gst_file_index_commit):
24029 * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
24030 (read_enum), (load_pad_template), (load_feature), (load_plugin),
24031 (load_paths):
24032 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
24033 (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
24034 * tools/gst-complete.c: (main):
24035 * tools/gst-compprep.c: (main):
24036 * tools/gst-inspect.c: (print_element_properties_info):
24037 * tools/gst-launch.c: (xmllaunch_parse_cmdline):
24038 * tools/gst-xmlinspect.c: (print_element_properties):
24039 GCC 4 fixen.
24041 2005-05-03 Thomas Vander Stichele <thomas at apestaart dot org>
24043 * gst/gstplugin.c: (gst_plugin_check_module),
24044 (gst_plugin_check_file), (gst_plugin_load_file):
24045 apply patch from #172526 to make register work on MacOSX
24047 2005-05-02 Thomas Vander Stichele <thomas at apestaart dot org>
24049 * docs/gst/tmpl/gstconfig.sgml:
24050 * gst/gstconfig.h.in:
24051 move documentation for some symbols. Add doc for GST_PTR_FORMAT
24052 * testsuite/debug/printf_extension.c: (main):
24053 Do not use GST_PTR_FORMAT on pointers to types with
24054 sizeof < sizeof(gpointer). Fixes test on 64-bit
24055 * testsuite/elements/property.h:
24056 use correct printf format
24058 2005-05-02 Wim Taymans <wim@fluendo.com>
24060 * docs/design/draft-push-pull.txt:
24061 * docs/design/draft-query.txt:
24062 * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
24063 (gst_basesrc_start):
24064 Added draft for new query API.
24065 Added draft for better selecting scheduling methods.
24066 Make basesrc ignore length if the subclass does not support
24067 it.
24069 2005-05-02 Thomas Vander Stichele <thomas at apestaart dot org>
24071 * gst/Makefile.am:
24072 possible fixes for automake-1.5 - _LIBADD is reserved
24074 2005-05-02 Thomas Vander Stichele <thomas at apestaart dot org>
24076 * docs/faq/Makefile.am:
24077 * docs/manual/Makefile.am:
24078 * docs/manuals.mak:
24079 * docs/pwg/Makefile.am:
24080 * gst/Makefile.am:
24081 possible fixes for automake-1.5
24083 2005-04-28 Wim Taymans <wim@fluendo.com>
24085 * gst/base/gstbasesink.c: (gst_basesink_base_init),
24086 (gst_basesink_pad_getcaps), (gst_basesink_init),
24087 (gst_basesink_do_sync):
24088 * gst/gstclock.c: (gst_clock_entry_new):
24089 * gst/gstevent.c: (gst_event_discont_get_value):
24090 * gst/gstpipeline.c: (pipeline_bus_handler),
24091 (gst_pipeline_change_state):
24092 * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
24093 Better debugging of clocking info.
24094 Allow NULL values when getting discont values.
24096 2005-04-27 Wim Taymans <wim@fluendo.com>
24098 * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
24099 * check/gst/gstpad.c: (gst_pad_suite):
24100 Increase timeout for checks.
24102 2005-04-27 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
24104 * check/Makefile.am:
24105 fix the broken rule for cleanup. Apparently this rule is
24106 only needed on FC2, so maybe this warrants further autotool
24107 inspection.
24109 2005-04-26 Wim Taymans <wim@fluendo.com>
24111 * gst/gsttrashstack.h:
24112 Ooohh. a nasty one! After having a failed pop() from the stack,
24113 it's possible that the stack is empty. In that case, don't
24114 follow the NULL pointer.
24116 2005-04-25 Wim Taymans <wim@fluendo.com>
24118 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
24119 (gst_pad_set_checkgetrange_function),
24120 (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
24121 (gst_pad_check_pull_range), (gst_pad_pull_range),
24122 (gst_static_pad_template_get_caps), (gst_pad_start_task),
24123 (gst_pad_pause_task), (gst_pad_stop_task):
24124 * gst/gstplugin.c: (gst_plugin_load):
24125 * gst/gstplugin.h:
24126 Remove gst_library_load as it does more harm than good with
24127 the new g_module flags.
24128 Revert bogus caps template check in pad linking, pad caps
24129 are important when linking not the template, which is more
24130 general than the current caps.
24132 2005-04-25 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
24134 * gst/autoplug/.cvsignore:
24135 * gst/autoplug/Makefile.am:
24136 * gst/autoplug/gstsearchfuncs.c:
24137 * gst/autoplug/gstsearchfuncs.h:
24138 * gst/autoplug/gstspider.c:
24139 * gst/autoplug/gstspider.h:
24140 * gst/autoplug/gstspideridentity.c:
24141 * gst/autoplug/gstspideridentity.h:
24142 * gst/autoplug/spidertest.c:
24143 Die, spider, die.
24145 2005-04-25 Wim Taymans <wim@fluendo.com>
24147 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
24148 (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
24149 (gst_pad_pull_range), (gst_static_pad_template_get_caps),
24150 (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
24151 * gst/gstpad.h:
24152 Added stubs for unimplemented functions.
24154 2005-04-24 David Schleef <ds@schleef.org>
24156 * gst/gstpad.h: Disable some unimplemented functions. Wim,
24157 please fix.
24159 2005-04-24 David Schleef <ds@schleef.org>
24161 Convert everything from GstAtomicInt to g_atomic_int_*, and
24162 remove gstatomic.
24163 * gst/Makefile.am:
24164 * gst/gstatomic.c:
24165 * gst/gstatomic.h:
24166 * gst/gstatomic_impl.h:
24167 * gst/gstbuffer.c:
24168 * gst/gstcaps.c:
24169 * gst/gstcaps.h:
24170 * gst/gstclock.c:
24171 * gst/gstclock.h:
24172 * gst/gstdata.c:
24173 * gst/gstdata.h:
24174 * gst/gstdata_private.h:
24175 * gst/gstevent.c:
24176 * gst/gstinfo.c:
24177 * gst/gstinfo.h:
24178 * gst/gstmessage.c:
24179 * gst/gstobject.c:
24180 * gst/gstobject.h:
24181 * gst/gststructure.c:
24182 * gst/gststructure.h:
24183 * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
24184 * gst/gstutils.h:
24186 2005-04-24 David Schleef <ds@schleef.org>
24188 * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
24189 make the regressions tests work. Remove some code that is no
24190 longer true.
24191 * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
24192 Disable warning for pads without templates.
24194 2005-04-24 David Schleef <ds@schleef.org>
24196 * gst/gstpad.c: Remove handling of filtered caps. Fix/merge
24197 functions that handle filtered links.
24198 * gst/gstpad.h: Remove 'appfilter' field and prototypes of
24199 removed functions.
24200 * gst/gstutils.c: Fix/remove utility functions that handle
24201 filtered caps.
24202 * gst/gstutils.h:
24203 * gst/gstvalue.c: Add serialization/deserialization of caps
24204 * gst/parse/grammar.y: Ignore filtered caps when linking. This
24205 requires fixing so that the filter caps notation creates
24206 a capsfilter element and sets the filter_caps property. I
24207 think everyone probably wants to keep the shorthand notation.
24208 * docs/gst/tmpl/gstelement.sgml: updates for API changes.
24209 * docs/gst/tmpl/gstpad.sgml:
24211 * gst/elements/gstelements.c: Register capsfilter element.
24212 * gst/Makefile.am: fix spacing
24213 * docs/random/ds/0.9-suggested-changes: random
24215 2005-04-23 David Schleef <ds@schleef.org>
24217 * gst/elements/Makefile.am:
24218 * gst/elements/gstcapsfilter.c: New element that acts like an
24219 identity, but filters caps. Will eventually replace filtered
24220 caps in pad linking.
24221 * gst/gstutils.c: (gst_element_create_all_pads): New function
24222 to create all the ALWAYS pads that are registered with an
24223 element class. This functionality should eventually be
24224 merged in with GstElement initialization.
24225 * gst/gstutils.h:
24226 * testsuite/trigger/README: part of trigger test code that should
24227 have been checked in a long time ago.
24229 2005-04-23 David Schleef <ds@schleef.org>
24231 * gst/Makefile.am: Remove as-libtool stuff. It's likely not
24232 needed with new versions of libtool (nobody will confirm this),
24233 and hard to carry around.
24234 * gst/autoplug/Makefile.am:
24235 * gst/base/Makefile.am:
24236 * gst/elements/Makefile.am:
24237 * gst/indexers/Makefile.am:
24238 * gst/schedulers/Makefile.am:
24239 * libs/gst/bytestream/Makefile.am:
24240 * libs/gst/control/Makefile.am:
24241 * libs/gst/dataprotocol/Makefile.am:
24242 * libs/gst/getbits/Makefile.am:
24244 2005-04-21 Wim Taymans <wim@fluendo.com>
24246 * docs/design/draft-push-pull.txt:
24247 * docs/design/part-MT-refcounting.txt:
24248 * docs/design/part-TODO.txt:
24249 * docs/design/part-caps.txt:
24250 * docs/design/part-events.txt:
24251 * docs/design/part-gstbus.txt:
24252 * docs/design/part-gstpipeline.txt:
24253 * docs/design/part-messages.txt:
24254 * docs/design/part-push-pull.txt:
24255 * docs/design/part-query.txt:
24256 Some more docs.
24258 2005-04-21 Wim Taymans <wim@fluendo.com>
24260 * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
24261 (gst_message_new), (gst_message_new_error),
24262 (gst_message_new_warning), (gst_message_new_tag),
24263 (gst_message_new_state_changed), (gst_message_new_application),
24264 (gst_message_get_structure):
24265 * gst/gstmessage.h:
24266 * gst/gststructure.c: (gst_structure_set_parent_refcount),
24267 (gst_structure_copy_conditional):
24268 Use parent refcount in GstMessage to ensure GstStructure
24269 consistency.
24270 Cleaned up headers a bit.
24273 2005-04-20 Wim Taymans <wim@fluendo.com>
24275 * gst/base/gstbasesink.c: (gst_basesink_base_init),
24276 (gst_basesink_pad_getcaps), (gst_basesink_init),
24277 (gst_basesink_chain_unlocked):
24278 * gst/base/gsttypefindhelper.c: (helper_find_suggest),
24279 (gst_type_find_helper):
24280 * gst/elements/gsttypefindelement.c:
24281 (gst_type_find_element_have_type), (gst_type_find_element_init),
24282 (stop_typefinding), (gst_type_find_element_handle_event),
24283 (find_suggest), (gst_type_find_element_chain),
24284 (gst_type_find_element_checkgetrange),
24285 (gst_type_find_element_getrange), (do_typefind),
24286 (gst_type_find_element_activate):
24287 * gst/gstbuffer.c: (_gst_buffer_sub_free),
24288 (gst_buffer_default_free), (gst_buffer_default_copy),
24289 (gst_buffer_set_caps):
24290 * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
24291 (gst_caps_replace):
24292 * gst/gstmessage.c: (gst_message_new),
24293 (gst_message_new_state_changed):
24294 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
24295 (gst_pad_set_checkgetrange_function),
24296 (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
24297 (gst_pad_set_caps), (gst_pad_check_pull_range),
24298 (gst_pad_pull_range), (gst_static_pad_template_get_caps):
24299 * gst/gstpad.h:
24300 * gst/gsttypefind.c: (gst_type_find_register):
24301 Make gst_caps_replace() work like other _replace() functions.
24302 Use _caps_replace() where possible.
24303 Make sure _message_new() initialises its field.
24304 Add gst_static_pad_template_get_caps()
24307 2005-04-18 Andy Wingo <wingo@pobox.com>
24309 * gst/gstelement.c (gst_element_pads_activate): Check pull_range
24310 on the peer, not the pad. I think that was a typo. Pass an extra
24311 arg to see if random access is possible. Activate the pads as
24312 PULL_RANGE if possible.
24314 * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
24316 * gst/base/gstbasesrc.c (gst_basesrc_set_property)
24317 (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
24318 to PROP_....
24320 2005-04-14 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
24322 * docs/faq/using.xml:
24323 Add note on gstreamer-properties (#154996).
24325 2005-04-13 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
24327 * docs/random/bbb/optional-properties:
24328 Some analysis on optional properties.
24330 2005-04-12 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
24332 * docs/gst/tmpl/gstelementfactory.sgml:
24333 * gst/gstelement.h:
24334 * gst/gstelementfactory.c: (gst_element_factory_init),
24335 (gst_element_factory_cleanup), (gst_element_register),
24336 (__gst_element_factory_add_static_pad_template),
24337 (gst_element_factory_get_static_pad_templates),
24338 (gst_element_factory_can_src_caps),
24339 (gst_element_factory_can_sink_caps):
24340 * gst/registries/Makefile.am:
24341 * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
24342 (gst_xml_registry_class_init), (gst_xml_registry_init),
24343 (gst_xml_registry_new), (gst_xml_registry_set_property),
24344 (gst_xml_registry_get_property), (get_time), (make_dir),
24345 (gst_xml_registry_get_perms_func),
24346 (plugin_times_older_than_recurse), (plugin_times_older_than),
24347 (gst_xml_registry_open_func), (gst_xml_registry_load_func),
24348 (gst_xml_registry_save_func), (gst_xml_registry_close_func),
24349 (add_to_char_array), (read_string), (read_uint), (read_enum),
24350 (load_pad_template), (load_feature), (load_plugin), (load_paths),
24351 (gst_xml_registry_load), (gst_xml_registry_load_plugin),
24352 (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
24353 (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
24354 (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
24355 (gst_xml_registry_rebuild):
24356 * gst/registries/gstlibxmlregistry.h:
24357 * tools/gst-compprep.c: (main):
24358 * tools/gst-inspect.c: (print_pad_templates_info):
24359 * tools/gst-xmlinspect.c: (print_element_info):
24360 Use libxml2 for registry parsing, use staticpadtemplates in
24361 elementfactories. Makes gst_init() +/- 10x faster.
24363 2005-04-12 Wim Taymans <wim@fluendo.com>
24365 * gst/base/Makefile.am:
24366 * gst/base/gstbasesink.c: (gst_basesink_base_init),
24367 (gst_basesink_pad_getcaps), (gst_basesink_init),
24368 (gst_basesink_event), (gst_basesink_change_state):
24369 * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
24370 (gst_basesrc_init), (gst_basesrc_query),
24371 (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
24372 (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
24373 (gst_basesrc_check_get_range), (gst_basesrc_loop),
24374 (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
24375 (gst_basesrc_stop), (gst_basesrc_activate),
24376 (gst_basesrc_change_state):
24377 * gst/base/gsttypefindhelper.c: (helper_find_peek),
24378 (helper_find_suggest), (gst_type_find_helper):
24379 * gst/base/gsttypefindhelper.h:
24380 * gst/elements/Makefile.am:
24381 * gst/elements/gstelements.c:
24382 * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
24383 (gst_fakesink_get_times), (gst_fakesink_event),
24384 (gst_fakesink_preroll), (gst_fakesink_render):
24385 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
24386 (gst_fakesrc_init), (gst_fakesrc_event_handler),
24387 (gst_fakesrc_get_property), (gst_fakesrc_create),
24388 (gst_fakesrc_start), (gst_fakesrc_stop):
24389 * gst/elements/gstfakesrc.h:
24390 * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
24391 (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
24392 (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
24393 (gst_filesrc_create_read), (gst_filesrc_create),
24394 (gst_filesrc_is_seekable), (gst_filesrc_get_size),
24395 (gst_filesrc_start):
24396 * gst/elements/gsttypefindelement.c:
24397 (gst_type_find_element_have_type), (gst_type_find_element_init),
24398 (start_typefinding), (stop_typefinding), (push_buffer_store),
24399 (gst_type_find_element_handle_event),
24400 (gst_type_find_element_chain),
24401 (gst_type_find_element_checkgetrange),
24402 (gst_type_find_element_getrange), (do_typefind),
24403 (gst_type_find_element_activate),
24404 (gst_type_find_element_change_state):
24405 * gst/elements/gsttypefindelement.h:
24406 * gst/gstpipeline.c: (pipeline_bus_handler):
24407 Added typefind helper.
24408 Small preroll fix in the base sink.
24409 Disable typefind code in basesrc.
24410 Crude port of typefindelement.
24411 Fakesrc cleanups.
24414 2005-04-11 Wim Taymans <wim@fluendo.com>
24416 * check/gst/gstbus.c: (gstbus_suite):
24417 * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
24418 * check/gstcheck.h:
24419 Fix up the timeout so that the test does not fail.
24421 2005-04-06 Wim Taymans <wim@fluendo.com>
24423 * gst/base/README:
24424 * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
24425 (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
24426 (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
24427 (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
24428 (gst_basesrc_check_get_range), (gst_basesrc_loop),
24429 (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
24430 (gst_basesrc_stop), (gst_basesrc_activate),
24431 (gst_basesrc_change_state), (basesrc_find_peek),
24432 (basesrc_find_suggest), (gst_basesrc_type_find):
24433 * gst/base/gstbasesrc.h:
24434 * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
24435 (gst_filesrc_class_init), (gst_filesrc_init),
24436 (gst_filesrc_finalize), (gst_filesrc_set_location),
24437 (gst_filesrc_set_property), (gst_filesrc_get_property),
24438 (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
24439 (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
24440 (gst_filesrc_create_read), (gst_filesrc_create),
24441 (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
24442 * gst/elements/gstfilesrc.h:
24443 * gst/gstelement.c: (gst_element_get_state_func),
24444 (gst_element_lost_state), (gst_element_pads_activate):
24445 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
24446 (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
24447 (gst_pad_pull_range):
24448 * gst/gstpad.h:
24449 More work on the generic source base class, implement seeking,
24450 query.
24451 Make filesrc extend the base source class.
24452 Added gst_pad_set_checkgetrange_function to GstPad.
24454 2005-04-06 Andy Wingo <wingo@pobox.com>
24456 * pkgconfig/gstreamer-base.pc.in:
24457 * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
24459 * pkgconfig/Makefile.am:
24460 * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
24462 2005-04-04 Wim Taymans <wim@fluendo.com>
24464 * gst/base/Makefile.am:
24465 * gst/base/README:
24466 * gst/base/gstbasesink.c: (gst_basesink_base_init),
24467 (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
24468 (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
24469 (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
24470 * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
24471 (gst_basesrc_base_init), (gst_basesrc_class_init),
24472 (gst_basesrc_init), (gst_basesrc_get_formats),
24473 (gst_basesrc_get_query_types), (gst_basesrc_query),
24474 (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
24475 (gst_basesrc_set_property), (gst_basesrc_get_property),
24476 (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
24477 (gst_basesrc_loop), (gst_basesrc_activate),
24478 (gst_basesrc_change_state):
24479 * gst/base/gstbasesrc.h:
24480 * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
24481 (gst_fakesrc_class_init), (gst_fakesrc_init),
24482 (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
24483 (gst_fakesrc_get_property), (gst_fakesrc_create):
24484 * gst/elements/gstfakesrc.h:
24485 * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
24486 (gst_filesrc_open_file), (gst_filesrc_loop),
24487 (gst_filesrc_activate), (filesrc_find_peek),
24488 (gst_filesrc_type_find):
24489 Made base source class, make fakesrc extend it.
24490 Add comments to basesink class.
24491 Some filesrc cleanup.
24493 2005-03-31 David Schleef <ds@schleef.org>
24495 * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
24496 Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
24497 expected to link against libgstreamer.
24498 * gst/base/Makefile.am: link against libgstreamer
24499 * gst/elements/Makefile.am: same
24501 2005-03-31 Andy Wingo <wingo@pobox.com>
24503 * tests/instantiate/Makefile.am:
24504 * tests/instantiate/caps.c: Add test to test speed of caps copy
24505 and free.
24507 * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
24508 GMemChunk to be fair.
24510 * gst/gsttrashstack.h: Remove warning about using the fallback
24511 trash stack implementation, it's still faster than malloc.
24513 2005-03-30 Andy Wingo <wingo@pobox.com>
24515 * tests/complexity.c: Add a copyright.
24517 2005-03-31 Wim Taymans <wim@fluendo.com>
24519 * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
24520 (gst_base_transform_class_init), (gst_base_transform_init),
24521 (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
24522 (gst_base_transform_get_property),
24523 (gst_base_transform_sink_activate),
24524 (gst_base_transform_src_activate),
24525 (gst_base_transform_change_state):
24526 * gst/base/gstbasetransform.h:
24527 * gst/elements/gstidentity.c: (gst_identity_class_init),
24528 (gst_identity_event), (gst_identity_check_perfect),
24529 (gst_identity_transform), (gst_identity_start),
24530 (gst_identity_stop):
24531 Added start/stop methods to transform base class so subclasses
24532 don't need to deal with state changes even.
24534 2005-03-31 Wim Taymans <wim@fluendo.com>
24536 * gst/gstevent.c: (gst_event_new_discontinuous_valist),
24537 (gst_event_new_discontinuous), (gst_event_discont_get_value):
24538 * gst/gstevent.h:
24539 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
24540 (gst_pad_pull_range):
24541 Added rate to the discont event to prepare for variable speed
24542 and reverse playback.
24544 2005-03-29 David Schleef <ds@schleef.org>
24546 * configure.ac:
24547 * testsuite/trigger/Makefile.am:
24548 * testsuite/trigger/trigger.c: A little example program to show
24549 how trigger-based elements can work.
24551 2005-03-29 Wim Taymans <wim@fluendo.com>
24553 * gst/base/Makefile.am:
24554 * gst/base/README:
24555 * gst/base/gstbasesink.c: (gst_basesink_get_type),
24556 (gst_basesink_base_init), (gst_basesink_class_init),
24557 (gst_basesink_pad_getcaps), (gst_basesink_init),
24558 (gst_basesink_activate), (gst_basesink_change_state):
24559 * gst/base/gstbasesink.h:
24560 * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
24561 (gst_base_transform_base_init), (gst_base_transform_finalize),
24562 (gst_base_transform_class_init), (gst_base_transform_init),
24563 (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
24564 (gst_base_transform_event), (gst_base_transform_getrange),
24565 (gst_base_transform_chain), (gst_base_transform_handle_buffer),
24566 (gst_base_transform_set_property),
24567 (gst_base_transform_get_property),
24568 (gst_base_transform_sink_activate),
24569 (gst_base_transform_src_activate),
24570 (gst_base_transform_change_state):
24571 * gst/base/gstbasetransform.h:
24572 * gst/elements/gstidentity.c: (gst_identity_finalize),
24573 (gst_identity_class_init), (gst_identity_init),
24574 (gst_identity_event), (gst_identity_check_perfect),
24575 (gst_identity_transform), (gst_identity_set_property),
24576 (gst_identity_get_property), (gst_identity_change_state):
24577 * gst/elements/gstidentity.h:
24578 * gst/gstelement.c: (gst_element_get_state_func),
24579 (gst_element_lost_state), (gst_element_pads_activate):
24580 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
24581 (gst_pad_check_pull_range), (gst_pad_pull_range):
24582 * gst/gstpad.h:
24583 Simplify pad activation.
24584 Added function to check if pull_range can be performed.
24585 Error out when pulling inactive or flushing pads.
24586 Removed const from refcounted types as it does not make sense.
24587 Simplify pad templates in basesink
24588 Added base class for simple 1-to-1 transforms.
24589 Make identity subclass the base transform.
24591 2005-03-29 Andy Wingo <wingo@pobox.com>
24593 * docs/libs/gstreamer-libs-overrides.txt:
24594 * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
24595 really don't understand what's going on, but like whatever. I want
24596 green buildbot!
24598 * docs/gst/Makefile.am:
24599 * docs/libs/Makefile.am: Dist the overrides files.
24601 * check/Makefile.am (clean-local): Remove .libs directories.
24603 * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
24604 elements to EXTRA_DIST, so po/ files are happy.
24606 * po/POTFILES.in: Er, remove it here.
24608 * po/POTFILES: Remove gstspider.c.
24610 * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
24612 * docs/libs/gstreamer-libs-docs.sgml:
24613 * docs/libs/gstreamer-libs-sections.txt: Remove the section on
24614 bytestream.
24616 * tests/complexity.c (main): Set the length of the preroll queue
24617 on the sinks to prevent a lockup.
24619 * libs/gst/dataprotocol/Makefile.am:
24620 * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
24621 the same as the one in check/gst-libs/gdp.c.
24623 * po/, docs/gst/: Commit automatic changes to docs and po files.
24625 * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
24626 the versioned libgstbase.
24628 * check/Makefile.am: Depend on an unversioned gst-register, seems
24629 to make autoconf happier.
24631 * gst/base/Makefile.am: Make libgstbase a versioned lib.
24633 2005-03-28 Wim Taymans <wim@fluendo.com>
24635 * configure.ac:
24636 * docs/design/part-gstelement.txt:
24637 * docs/design/part-negotiation.txt:
24638 * docs/design/part-preroll.txt:
24639 * docs/design/part-scheduling.txt:
24640 * docs/design/part-states.txt:
24641 * gst/Makefile.am:
24642 * gst/base/Makefile.am:
24643 * gst/base/README:
24644 * gst/base/gstbasesink.c: (gst_basesink_get_template),
24645 (gst_basesink_base_init), (gst_basesink_class_init),
24646 (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
24647 (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
24648 (gst_basesink_set_pad_functions),
24649 (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
24650 (gst_basesink_set_property), (gst_basesink_get_property),
24651 (gst_base_sink_get_template), (gst_base_sink_get_caps),
24652 (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
24653 (gst_basesink_preroll_queue_push),
24654 (gst_basesink_preroll_queue_empty),
24655 (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
24656 (gst_basesink_event), (gst_basesink_get_times),
24657 (gst_basesink_do_sync), (gst_basesink_handle_buffer),
24658 (gst_basesink_chain_unlocked), (gst_basesink_chain),
24659 (gst_basesink_loop), (gst_basesink_activate),
24660 (gst_basesink_change_state):
24661 * gst/base/gstbasesink.h:
24662 * gst/elements/Makefile.am:
24663 * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
24664 (gst_fakesink_class_init), (gst_fakesink_init),
24665 (gst_fakesink_set_property), (gst_fakesink_get_property),
24666 (gst_fakesink_get_times), (gst_fakesink_event),
24667 (gst_fakesink_preroll), (gst_fakesink_render),
24668 (gst_fakesink_change_state):
24669 * gst/elements/gstfakesink.h:
24670 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
24671 (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
24672 * gst/gstelement.c: (gst_element_add_pad),
24673 (gst_element_get_state_func), (gst_element_abort_state),
24674 (gst_element_commit_state), (gst_element_lost_state),
24675 (gst_element_set_state), (gst_element_pads_activate):
24676 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
24677 * gst/gstpipeline.c: (gst_pipeline_send_event),
24678 (gst_pipeline_change_state):
24679 Added state change code.
24680 Added/updated docs.
24681 Added sink base class, make fakesink extend the base class.
24682 Small cleanups in GstPipeline.
24684 2005-03-26 David Schleef <ds@schleef.org>
24686 * gst/Makefile.am: remove gstcpu.[ch]. The gst_cpu functionality
24687 is broken and should be implemented in a different library.
24688 * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
24689 * gst/gst.h: remove gstcpu.h
24690 * gst/gstcpu.c: remove
24691 * gst/gstcpu.h: remove
24692 * gst/Makefile.am.future: Remove this file. It's ancient.
24694 2005-03-25 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
24696 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
24697 (gst_bin_send_event):
24698 Add default event/set_manager handlers. The set_manager handler
24699 takes care that the manager is distributed over kids that were
24700 already in the bin before the manager was set. The event handler
24701 is a utility virtual function that sends the event over all sinks,
24702 so that gst_element_send_event (bin, event); has the expected
24703 behaviour.
24704 * gst/gstpad.c: (gst_pad_event_default):
24705 Re-install default event handling for discontinuities, so that
24706 seeking works without requiring hacks in applications or extra
24707 code in sinks.
24708 * gst/gstpipeline.c: (gst_pipeline_class_init),
24709 (gst_pipeline_send_event):
24710 Half hack, half utility: set a pipeline to PAUSED for seek events,
24711 since that is the only way we can guarantee a/v sync. Means that
24712 you can do gst_element_seek (pipeline, method, pos); on a pipeline
24713 and it "just works".
24715 2005-03-25 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
24717 * gst/gstpipeline.c: (gst_pipeline_use_clock):
24718 Lock/unlock mismatch.
24720 2005-03-25 Thomas Vander Stichele <thomas at apestaart dot org>
24722 * docs/faq/gst-uninstalled:
24723 add gst-plugins-base
24724 * docs/gst/Makefile.am:
24725 don't error out until docs are fixed
24726 * docs/gst/gstreamer.types:
24727 remove thread
24729 2005-03-22 Wim Taymans <wim@fluendo.com>
24731 * check/Makefile.am:
24732 * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
24733 * gst/gststructure.c: (gst_structure_set_valist),
24734 (gst_structure_copy_conditional):
24735 Activated more tests.
24736 Added message test.
24737 Added G_TYPE_POINTER to GstStructure.
24740 2005-03-22 Wim Taymans <wim@fluendo.com>
24742 * docs/design/part-TODO.txt:
24743 * docs/design/part-events.txt:
24744 * docs/design/part-gstbin.txt:
24745 * docs/design/part-gstbus.txt:
24746 * docs/design/part-gstpipeline.txt:
24747 * docs/design/part-messages.txt:
24748 * gst/gstbus.c:
24749 * gst/gstmessage.c:
24750 Docs updates
24752 2005-03-21 Wim Taymans <wim@fluendo.com>
24754 * gst/gstbus.c: (gst_bus_post):
24755 Fix copy-and-paste error.
24757 2005-03-21 Wim Taymans <wim@fluendo.com>
24759 * check/Makefile.am:
24760 * gst/Makefile.am:
24761 * gst/elements/Makefile.am:
24762 * gst/elements/gstelements.c:
24763 * gst/elements/gstfakesink.c: (gst_fakesink_init),
24764 (gst_fakesink_event), (gst_fakesink_chain):
24765 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
24766 (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
24767 (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
24768 (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
24769 (gst_fakesrc_set_property), (gst_fakesrc_get_property),
24770 (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
24771 (gst_fakesrc_loop), (gst_fakesrc_activate),
24772 (gst_fakesrc_change_state):
24773 * gst/elements/gstfakesrc.h:
24774 * gst/elements/gstfilesrc.c: (gst_filesrc_init),
24775 (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
24776 (gst_filesrc_open_file), (gst_filesrc_loop),
24777 (gst_filesrc_activate), (gst_filesrc_change_state),
24778 (filesrc_find_peek), (filesrc_find_suggest),
24779 (gst_filesrc_type_find):
24780 * gst/elements/gstidentity.c: (gst_identity_finalize),
24781 (gst_identity_class_init), (gst_identity_init),
24782 (gst_identity_proxy_getcaps), (identity_queue_push),
24783 (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
24784 (gst_identity_getrange), (gst_identity_chain),
24785 (gst_identity_sink_loop), (gst_identity_src_loop),
24786 (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
24787 (gst_identity_set_property), (gst_identity_get_property),
24788 (gst_identity_change_state):
24789 * gst/elements/gstidentity.h:
24790 * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
24791 (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
24792 (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
24793 (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
24794 (gst_tee_sink_activate):
24795 * gst/elements/gsttee.h:
24796 * gst/gst.c: (gst_register_core_elements), (init_post):
24797 * gst/gst.h:
24798 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
24799 (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
24800 (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
24801 (gst_bin_change_state):
24802 * gst/gstbin.h:
24803 * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
24804 (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
24805 (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
24806 (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
24807 (gst_bus_set_sync_handler), (gst_bus_create_watch),
24808 (bus_watch_callback), (bus_watch_destroy),
24809 (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
24810 (poll_timeout), (gst_bus_poll):
24811 * gst/gstbus.h:
24812 * gst/gstcaps.h:
24813 * gst/gstdata.h:
24814 * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
24815 (gst_element_post_message), (gst_element_message_full),
24816 (gst_element_get_state_func), (gst_element_get_state),
24817 (gst_element_abort_state), (gst_element_commit_state),
24818 (gst_element_lost_state), (gst_element_set_state),
24819 (gst_element_pads_activate), (gst_element_change_state),
24820 (gst_element_dispose), (gst_element_set_manager_func),
24821 (gst_element_set_bus_func), (gst_element_set_scheduler_func),
24822 (gst_element_set_manager), (gst_element_get_manager),
24823 (gst_element_set_bus), (gst_element_get_bus),
24824 (gst_element_set_scheduler), (gst_element_get_scheduler):
24825 * gst/gstelement.h:
24826 * gst/gstevent.c: (gst_event_new_segment_seek),
24827 (gst_event_new_flush):
24828 * gst/gstevent.h:
24829 * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
24830 (_gst_message_free), (gst_message_get_type), (gst_message_new),
24831 (gst_message_new_eos), (gst_message_new_error),
24832 (gst_message_new_warning), (gst_message_new_tag),
24833 (gst_message_new_state_changed), (gst_message_new_application),
24834 (gst_message_get_structure), (gst_message_parse_tag),
24835 (gst_message_parse_state_changed), (gst_message_parse_error),
24836 (gst_message_parse_warning):
24837 * gst/gstmessage.h:
24838 * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
24839 (gst_real_pad_set_property), (gst_pad_set_active),
24840 (gst_pad_is_active), (gst_pad_set_blocked_async),
24841 (gst_pad_set_blocked), (gst_pad_is_blocked),
24842 (gst_pad_set_activate_function), (gst_pad_set_loop_function),
24843 (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
24844 (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
24845 (gst_pad_unlink), (gst_pad_link_prepare_filtered),
24846 (gst_pad_link_filtered), (gst_pad_relink_filtered),
24847 (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
24848 (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
24849 (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
24850 (gst_pad_set_caps), (gst_pad_configure_sink),
24851 (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
24852 (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
24853 (gst_real_pad_dispose), (gst_real_pad_finalize),
24854 (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
24855 (gst_pad_event_default_dispatch), (gst_pad_event_default),
24856 (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
24857 * gst/gstpad.h:
24858 * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
24859 (pipeline_bus_handler), (gst_pipeline_change_state),
24860 (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
24861 * gst/gstpipeline.h:
24862 * gst/gstprobe.h:
24863 * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
24864 (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
24865 (gst_queue_link_src), (gst_queue_bufferalloc),
24866 (gst_queue_locked_flush), (gst_queue_handle_sink_event),
24867 (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
24868 (gst_queue_loop), (gst_queue_handle_src_event),
24869 (gst_queue_handle_src_query), (gst_queue_src_activate),
24870 (gst_queue_change_state):
24871 * gst/gstqueue.h:
24872 * gst/gstscheduler.c: (gst_scheduler_init),
24873 (gst_scheduler_dispose), (gst_scheduler_create_task),
24874 (gst_scheduler_factory_create):
24875 * gst/gstscheduler.h:
24876 * gst/gststructure.c: (gst_structure_get_type),
24877 (gst_structure_copy_conditional):
24878 * gst/gststructure.h:
24879 * gst/gsttaginterface.h:
24880 * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
24881 (gst_task_init), (gst_task_dispose), (gst_task_create),
24882 (gst_task_get_state), (gst_task_start), (gst_task_stop),
24883 (gst_task_pause):
24884 * gst/gsttask.h:
24885 * gst/gstthread.c:
24886 * gst/gstthread.h:
24887 * gst/gsttypes.h:
24888 * gst/schedulers/Makefile.am:
24889 * gst/schedulers/cothreads_compat.h:
24890 * gst/schedulers/entryscheduler.c:
24891 * gst/schedulers/faircothreads.c:
24892 * gst/schedulers/faircothreads.h:
24893 * gst/schedulers/fairscheduler.c:
24894 * gst/schedulers/gstbasicscheduler.c:
24895 * gst/schedulers/gstoptimalscheduler.c:
24896 * gst/schedulers/gthread-cothreads.h:
24897 * gst/schedulers/threadscheduler.c:
24898 (gst_thread_scheduler_task_get_type),
24899 (gst_thread_scheduler_task_class_init),
24900 (gst_thread_scheduler_task_init),
24901 (gst_thread_scheduler_task_start),
24902 (gst_thread_scheduler_task_stop),
24903 (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
24904 (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
24905 (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
24906 (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
24907 (plugin_init):
24908 * libs/gst/Makefile.am:
24909 * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
24910 * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
24911 (gst_file_pad_parent_set):
24912 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
24913 (gst_dp_event_from_packet):
24914 * tests/complexity.c: (main):
24915 * tests/mass_elements.c: (main):
24916 * testsuite/states/locked.c: (message_received), (main):
24917 * testsuite/states/parent.c: (main):
24918 * tools/gst-inspect.c: (print_element_flag_info),
24919 (print_implementation_info), (print_pad_info):
24920 * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
24921 (main):
24922 * tools/gst-md5sum.c: (event_loop), (main):
24923 * tools/gst-typefind.c: (main):
24924 * tools/gst-xmlinspect.c: (print_element_info):
24925 Next big merge.
24926 Added GstBus for mainloop integration.
24927 Added GstMessage for sending notifications on the bus.
24928 Added GstTask as an abstraction for pipeline entry points.
24929 Removed GstThread.
24930 Removed Schedulers.
24931 Simplified GstQueue for multithreaded core.
24932 Made _link threadsafe, removed old capsnego.
24933 Added STREAM_LOCK and PREROLL_LOCK in GstPad.
24934 Added pad blocking functions.
24935 Reworked scheduling functions in GstPad to prepare for
24936 scheduling updates soon.
24937 Moved events out of data stream.
24938 Simplified GstEvent types.
24939 Added return values to push/pull.
24940 Removed clocking from GstElement.
24941 Added prototypes for state change function for next merge.
24942 Removed iterate from bins and state change management.
24943 Fixed some elements, disabled others for now.
24944 Fixed -inspect and -launch.
24945 Added check for GstBus.
24947 2005-03-10 Wim Taymans <wim@fluendo.com>
24949 * docs/design/part-MT-refcounting.txt:
24950 * docs/design/part-clocks.txt:
24951 * docs/design/part-gstelement.txt:
24952 * docs/design/part-gstobject.txt:
24953 * docs/design/part-standards.txt:
24954 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
24955 (gst_bin_remove_func), (gst_bin_remove):
24956 * gst/gstbin.h:
24957 * gst/gstbuffer.c:
24958 * gst/gstcaps.h:
24959 * testsuite/clock/clock1.c: (main):
24960 * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
24961 (main):
24962 * testsuite/dlopen/loadgst.c: (do_test):
24963 * testsuite/refcounting/bin.c: (add_remove_test1),
24964 (add_remove_test2), (main):
24965 * testsuite/refcounting/element.c: (main):
24966 * testsuite/refcounting/element_pad.c: (main):
24967 * testsuite/refcounting/pad.c: (main):
24968 * tools/gst-launch.c: (sigint_handler_sighandler):
24969 * tools/gst-typefind.c: (main):
24970 Doc updates.
24971 Added doc about clock.
24972 removed gst_bin_iterate_recurse_up(), marked methods
24973 for removal.
24974 Fix more testsuites.
24976 2005-03-09 Wim Taymans <wim@fluendo.com>
24978 * gst/gstpad.c: (gst_pad_get_direction),
24979 (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
24980 (gst_pad_collect_valist):
24981 * testsuite/bins/interface.c: (main):
24982 * testsuite/caps/audioscale.c: (test_caps):
24983 * testsuite/caps/caps.c: (test1), (test2), (test3):
24984 * testsuite/caps/deserialize.c: (main):
24985 * testsuite/caps/enumcaps.c: (main):
24986 * testsuite/caps/filtercaps.c: (main):
24987 * testsuite/caps/intersect2.c: (main):
24988 * testsuite/caps/random.c: (main):
24989 * testsuite/caps/renegotiate.c: (my_fixate), (main):
24990 * testsuite/caps/sets.c: (check_caps):
24991 * testsuite/caps/simplify.c: (check_caps), (main):
24992 * testsuite/caps/subtract.c: (check_caps):
24993 Fix _pad_get_direction wrt ghostpads.
24994 Fix caps testsuite.
24996 2005-03-09 Wim Taymans <wim@fluendo.com>
24998 * check/Makefile.am:
24999 * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
25000 * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
25001 (ok_callback), (error_callback), (gst_systemclock_suite), (main):
25002 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
25003 (gst_bin_set_clock_func), (gst_bin_get_clock_func),
25004 (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
25005 (gst_bin_remove), (gst_bin_iterate_recurse_up),
25006 (bin_element_is_sink), (gst_bin_iterate_sinks),
25007 (gst_bin_iterate_all_by_interface):
25008 * gst/gstbin.h:
25009 * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
25010 (gst_element_change_state), (gst_element_dispose),
25011 (gst_element_finalize), (gst_element_set_loop_function):
25012 * gst/gstelement.h:
25013 * gst/gstiterator.c: (find_custom_fold_func):
25014 * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
25015 (gst_pad_collectv), (gst_pad_collect_valist),
25016 (gst_pad_template_new):
25017 * gst/gstpipeline.c: (gst_pipeline_class_init),
25018 (gst_pipeline_dispose), (gst_pipeline_set_property),
25019 (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
25020 (gst_pipeline_get_clock), (gst_pipeline_use_clock),
25021 (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
25022 * gst/gstutils.h:
25023 * gst/schedulers/entryscheduler.c:
25024 * gst/schedulers/gstbasicscheduler.c:
25025 (gst_basic_scheduler_cothreaded_chain),
25026 (gst_basic_scheduler_chain_add_element):
25027 * testsuite/bins/interface.c: (main):
25028 Added GstBin test.
25029 Added GstSystemClock test.
25030 Implemented clock distribution code in GstBin.
25031 Implemented iterate sinks method for future use.
25032 Rearranged gstelement.h
25033 Fix GstIterator comparison bug.
25034 Moved some code to GstPipeline, mostly clocking related.
25036 2005-03-09 Wim Taymans <wim@fluendo.com>
25038 * configure.ac:
25039 * gst/gst_private.h:
25040 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
25041 (gst_bin_remove_func), (gst_bin_remove),
25042 (gst_bin_get_by_name_recurse_up):
25043 * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
25044 (gst_clock_id_compare_func), (gst_clock_id_wait),
25045 (gst_clock_id_wait_async), (gst_clock_init),
25046 (gst_clock_adjust_unlocked), (gst_clock_get_time):
25047 * gst/gstelement.h:
25048 * gst/gstinfo.c: (_gst_debug_init):
25049 * gst/gstobject.h:
25050 * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
25051 (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
25052 * gst/gstpad.h:
25053 Bump version number, we're now 0.9.0
25054 Add future debugging category.
25055 Fix NULL _unref() in _get_by_name_recurse_up
25056 Rearrange gstpad.h.
25057 Update some docs.
25059 2005-03-08 Wim Taymans <wim@fluendo.com>
25061 * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
25062 * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
25063 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
25064 * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
25065 * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
25066 * gst/elements/gstfilesink.c: (gst_filesink_class_init):
25067 * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
25068 * gst/elements/gstidentity.c: (gst_identity_class_init):
25069 * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
25070 * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
25071 * gst/elements/gstshaper.c: (gst_shaper_class_init):
25072 * gst/elements/gststatistics.c: (gst_statistics_class_init):
25073 * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
25074 (gst_tee_link):
25075 * gst/gstelement.c: (gst_element_class_init),
25076 (gst_element_base_class_init), (gst_element_init),
25077 (gst_element_get_random_pad), (gst_element_wait_state_change),
25078 (gst_element_change_state), (gst_element_dispose),
25079 (gst_element_finalize), (gst_element_set_loop_function):
25080 * gst/gstelement.h:
25081 * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
25082 * gst/gstthread.c: (gst_thread_class_init),
25083 (gst_thread_release_children_locks), (gst_thread_change_state):
25084 * gst/schedulers/gstbasicscheduler.c:
25085 (gst_basic_scheduler_loopfunc_wrapper),
25086 (gst_basic_scheduler_chain_wrapper),
25087 (gst_basic_scheduler_src_wrapper),
25088 (gst_basic_scheduler_remove_element):
25089 * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
25090 Remove threadsafe properties. Fix elements because GObject
25091 complains when installing a property before declaring a
25092 set/get_property handler.
25093 Rearrange gstelement.h file, use STATE macros for state locks.
25094 Free mutexes in the finalize method instead of dispose.
25096 2005-03-08 Wim Taymans <wim@fluendo.com>
25098 * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
25099 * gst/gstthread.c: (gst_thread_release_children_locks):
25100 Added parentage check.
25101 Fix build og GstThread again.
25103 2005-03-08 Wim Taymans <wim@fluendo.com>
25105 * docs/design/part-MT-refcounting.txt:
25106 * docs/design/part-conventions.txt:
25107 * docs/design/part-gstobject.txt:
25108 * docs/design/part-relations.txt:
25109 * docs/design/part-standards.txt:
25110 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
25111 (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
25112 (gst_bin_get_by_name), (gst_bin_get_by_interface),
25113 (gst_bin_iterate_all_by_interface):
25114 * gst/gstbuffer.h:
25115 * gst/gstclock.h:
25116 * gst/gstelement.c: (gst_element_class_init),
25117 (gst_element_change_state), (gst_element_set_loop_function):
25118 * gst/gstelement.h:
25119 * gst/gstiterator.c:
25120 * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
25121 (gst_object_unref), (gst_object_sink), (gst_object_dispose),
25122 (gst_object_dispatch_properties_changed), (gst_object_set_name),
25123 (gst_object_set_parent), (gst_object_unparent),
25124 (gst_object_check_uniqueness):
25125 * gst/gstobject.h:
25126 Docs updates, clean up some headers.
25128 2005-03-07 Wim Taymans <wim@fluendo.com>
25130 * check/.cvsignore:
25131 * check/Makefile.am:
25132 * check/gst-libs/.cvsignore:
25133 * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
25134 * check/gst/.cvsignore:
25135 * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
25136 (START_TEST), (gstbus_suite), (main):
25137 * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
25138 * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
25139 (gst_data_suite), (main):
25140 * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
25141 (add_fold_func), (gstiterator_suite), (main):
25142 * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
25143 (thread_name_object), (thread_name_object_default),
25144 (gst_object_name_compare), (gst_object_suite), (main):
25145 * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
25146 (gst_pad_suite), (main):
25147 * check/gstcheck.c: (gst_check_log_message_func),
25148 (gst_check_log_critical_func), (gst_check_init):
25149 * check/gstcheck.h:
25150 * check/pipelines/simple_launch_lines.c: (setup_pipeline),
25151 (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
25152 Added checks.
25154 2005-03-07 Wim Taymans <wim@fluendo.com>
25156 * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
25157 (gst_list_iterator_next), (gst_list_iterator_resync),
25158 (gst_list_iterator_free), (gst_iterator_new_list),
25159 (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
25160 (gst_iterator_free), (gst_iterator_push), (filter_next),
25161 (filter_resync), (filter_uninit), (filter_free),
25162 (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
25163 (gst_iterator_foreach), (find_custom_fold_func),
25164 (gst_iterator_find_custom):
25165 * gst/gstiterator.h:
25166 Added missing files.
25168 2005-03-07 Wim Taymans <wim@fluendo.com>
25170 * Makefile.am:
25171 * configure.ac:
25172 * docs/design/part-MT-refcounting.txt:
25173 * docs/design/part-conventions.txt:
25174 * docs/design/part-gstobject.txt:
25175 * docs/design/part-relations.txt:
25176 * examples/mixer/mixer.c: (main):
25177 * examples/thread/thread.c: (eos), (main):
25178 * gst/Makefile.am:
25179 * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
25180 * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
25181 (gst_spider_plug_from_srcpad):
25182 * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
25183 (gst_spider_identity_change_state),
25184 (gst_spider_identity_sink_loop_type_finding):
25185 * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
25186 * gst/elements/gstidentity.c: (gst_identity_init):
25187 * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
25188 (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
25189 * gst/elements/gsttypefindelement.c: (free_entry):
25190 * gst/gst.c:
25191 * gst/gst.h:
25192 * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
25193 (gst_bin_set_clock_func), (gst_bin_auto_clock),
25194 (gst_bin_set_index), (gst_bin_set_element_sched),
25195 (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
25196 (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
25197 (gst_bin_iterate_elements), (iterate_child_recurse),
25198 (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
25199 (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
25200 (compare_interface), (gst_bin_get_by_interface),
25201 (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
25202 * gst/gstbin.h:
25203 * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
25204 (gst_buffer_default_free), (gst_buffer_default_copy),
25205 (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
25206 (gst_buffer_create_sub):
25207 * gst/gstbuffer.h:
25208 * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
25209 (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
25210 (gst_caps_unref), (gst_static_caps_get),
25211 (gst_caps_remove_and_get_structure), (gst_caps_append),
25212 (gst_caps_append_structure), (gst_caps_remove_structure),
25213 (gst_caps_copy_nth), (gst_caps_set_simple),
25214 (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
25215 (gst_structure_is_equal_foreach), (gst_caps_is_subset),
25216 (gst_caps_structure_intersect_field), (gst_caps_intersect),
25217 (gst_caps_structure_subtract_field), (gst_caps_subtract),
25218 (gst_caps_normalize_foreach), (gst_caps_compare_structures),
25219 (gst_caps_structure_figure_out_union),
25220 (gst_caps_switch_structures), (gst_caps_do_simplify),
25221 (gst_caps_replace), (gst_caps_from_string),
25222 (gst_caps_copy_conditional):
25223 * gst/gstcaps.h:
25224 * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
25225 (_gst_clock_id_free), (gst_clock_id_unref),
25226 (gst_clock_id_compare_func), (gst_clock_id_wait),
25227 (gst_clock_id_wait_async), (gst_clock_class_init),
25228 (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
25229 (gst_clock_get_time), (gst_clock_set_time_adjust),
25230 (gst_clock_set_property), (gst_clock_get_property):
25231 * gst/gstclock.h:
25232 * gst/gstcompat.h:
25233 * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
25234 * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
25235 * gst/gstdata.h:
25236 * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
25237 (gst_element_requires_clock), (gst_element_provides_clock),
25238 (gst_element_set_clock), (gst_element_clock_wait),
25239 (gst_element_wait), (gst_element_set_time_delay),
25240 (gst_element_is_indexable), (gst_element_add_pad),
25241 (gst_element_add_ghost_pad), (gst_element_remove_pad),
25242 (pad_compare_name), (gst_element_get_static_pad),
25243 (gst_element_request_pad), (gst_element_get_request_pad),
25244 (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
25245 (gst_element_class_get_pad_template_list),
25246 (gst_element_class_get_pad_template), (gst_element_error_func),
25247 (gst_element_get_random_pad), (gst_element_get_event_masks),
25248 (gst_element_send_event), (gst_element_seek),
25249 (gst_element_get_query_types), (gst_element_query),
25250 (gst_element_get_formats), (gst_element_convert),
25251 (gst_element_is_locked_state), (gst_element_set_locked_state),
25252 (gst_element_sync_state_with_parent), (gst_element_change_state),
25253 (gst_element_finalize), (gst_element_yield),
25254 (gst_element_interrupt), (gst_element_set_scheduler),
25255 (gst_element_get_scheduler), (gst_element_set_loop_function):
25256 * gst/gstelement.h:
25257 * gst/gstevent.h:
25258 * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
25259 (gst_format_get_by_nick), (gst_format_get_details),
25260 (gst_format_iterate_definitions):
25261 * gst/gstformat.h:
25262 * gst/gstindex.c: (gst_index_gtype_resolver):
25263 * gst/gstinfo.c:
25264 * gst/gstinfo.h:
25265 * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
25266 (gst_mem_chunk_free):
25267 * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
25268 (gst_object_ref), (gst_object_unref), (gst_object_sink),
25269 (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
25270 (gst_object_dispatch_properties_changed),
25271 (gst_object_set_name_default), (gst_object_set_name),
25272 (gst_object_get_name), (gst_object_set_name_prefix),
25273 (gst_object_get_name_prefix), (gst_object_set_parent),
25274 (gst_object_get_parent), (gst_object_unparent),
25275 (gst_object_check_uniqueness), (gst_object_save_thyself),
25276 (gst_object_restore_thyself), (gst_object_real_restore_thyself),
25277 (gst_object_set_property), (gst_object_get_property),
25278 (gst_object_get_path_string):
25279 * gst/gstobject.h:
25280 * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
25281 (gst_real_pad_init), (gst_real_pad_get_property),
25282 (gst_pad_custom_new), (gst_pad_get_direction),
25283 (gst_pad_set_active), (gst_pad_is_active),
25284 (gst_pad_set_event_function), (gst_pad_is_linked),
25285 (gst_pad_link_free), (gst_pad_link_intersect),
25286 (gst_pad_link_fixate), (gst_pad_set_caps),
25287 (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
25288 (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
25289 (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
25290 (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
25291 (gst_pad_get_caps), (gst_pad_peer_get_caps),
25292 (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
25293 (gst_pad_realize), (gst_pad_get_allowed_caps),
25294 (gst_real_pad_dispose), (gst_real_pad_finalize),
25295 (gst_pad_collectv), (gst_pad_collect_valist),
25296 (gst_pad_template_dispose), (gst_pad_template_new),
25297 (gst_pad_get_internal_links):
25298 * gst/gstpad.h:
25299 * gst/gstpipeline.c: (gst_pipeline_dispose),
25300 (gst_pipeline_change_state):
25301 * gst/gstpipeline.h:
25302 * gst/gstplugin.c:
25303 * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
25304 (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
25305 * gst/gstpluginfeature.h:
25306 * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
25307 * gst/gstquery.c: (_gst_query_type_initialize),
25308 (gst_query_type_register), (gst_query_type_get_by_nick),
25309 (gst_query_type_get_details), (gst_query_type_iterate_definitions):
25310 * gst/gstquery.h:
25311 * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
25312 * gst/gstscheduler.c: (gst_scheduler_add_element),
25313 (gst_scheduler_factory_create):
25314 * gst/gststructure.c: (gst_structure_set_parent_refcount),
25315 (gst_structure_free), (gst_structure_set_name),
25316 (gst_structure_id_set_value), (gst_structure_set_value),
25317 (gst_structure_set_valist), (gst_structure_remove_field),
25318 (gst_structure_remove_fields),
25319 (gst_structure_remove_fields_valist),
25320 (gst_structure_remove_all_fields), (gst_structure_foreach),
25321 (gst_structure_map_in_place),
25322 (gst_caps_structure_fixate_field_nearest_int),
25323 (gst_caps_structure_fixate_field_nearest_double):
25324 * gst/gststructure.h:
25325 * gst/gstsystemclock.c: (gst_system_clock_class_init),
25326 (gst_system_clock_init), (gst_system_clock_dispose),
25327 (gst_system_clock_async_thread),
25328 (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
25329 (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
25330 * gst/gstsystemclock.h:
25331 * gst/gsttag.c: (gst_tag_list_add_value_internal),
25332 (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
25333 * gst/gsttaginterface.c:
25334 * gst/gstthread.c: (gst_thread_dispose),
25335 (gst_thread_release_children_locks), (gst_thread_change_state),
25336 (gst_thread_main_loop):
25337 * gst/gsttrashstack.h:
25338 * gst/gsttypefind.c: (gst_type_find_factory_dispose):
25339 * gst/gsttypes.h:
25340 * gst/gstutils.c: (gst_element_get_compatible_pad_template),
25341 (gst_element_request_pad), (gst_element_get_pad_from_template),
25342 (gst_element_request_compatible_pad),
25343 (gst_element_get_compatible_pad_filtered),
25344 (gst_element_get_compatible_pad), (gst_element_state_get_name),
25345 (gst_element_link_pads_filtered), (gst_element_link_filtered),
25346 (gst_element_link_many), (gst_element_link),
25347 (gst_element_link_pads), (gst_element_unlink_pads),
25348 (gst_element_unlink_many), (gst_element_unlink),
25349 (gst_pad_can_link_filtered), (gst_pad_can_link),
25350 (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
25351 (gst_object_default_error), (gst_bin_add_many),
25352 (gst_bin_remove_many), (gst_element_populate_std_props),
25353 (gst_element_class_install_std_props), (gst_buffer_merge),
25354 (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
25355 (link_fold_func), (gst_pad_proxy_setcaps):
25356 * gst/gstutils.h:
25357 * gst/gstvalue.c: (gst_value_deserialize_string):
25358 * gst/parse/grammar.y:
25359 * gst/schedulers/gstbasicscheduler.c:
25360 (gst_basic_scheduler_cothreaded_chain),
25361 (gst_basic_scheduler_chain_recursive_add),
25362 (gst_basic_scheduler_pad_link):
25363 * gst/schedulers/gstoptimalscheduler.c:
25364 (get_group_schedule_function),
25365 (gst_opt_scheduler_state_transition),
25366 (gst_opt_scheduler_add_element), (element_get_reachables_func):
25367 * libs/gst/bytestream/bytestream.c:
25368 * libs/gst/dataprotocol/dataprotocol.c:
25369 (gst_dp_header_from_buffer):
25370 * po/nb.po:
25371 * po/ru.po:
25372 * tests/threadstate/threadstate2.c: (eos):
25373 * tools/gst-compprep.c: (main):
25374 * tools/gst-inspect.c: (print_field), (print_element_flag_info),
25375 (print_pad_info), (print_children_info):
25376 * tools/gst-launch.c: (idle_func), (main):
25377 * tools/gst-md5sum.c: (idle_func), (main):
25378 * tools/gst-xmlinspect.c: (print_element_info):
25379 First THREADED backport attempt, focusing on adding locks and
25380 making sure the API is threadsafe. Needs more work. More docs
25381 follow this week.
25383 2005-02-24 Andy Wingo <wingo@pobox.com>
25385 * tests/bench-complexity.scm:
25386 * tests/complexity.gnuplot: New files, good for running complexity
25387 benchmarks.
25389 * tests/Makefile.am:
25390 * tests/complexity.c: New test, sets up N elements, at each level
25391 teeing into M streams per element. Eeeenteresting.
25393 * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
25394 benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
25395 running bench-mass_elements.scm.
25397 * tests/bench-mass_elements.scm: New script, runs mass_elements
25398 for various numbers of identities, outputting the results to a
25399 file. Requires guile 1.6. Just for testing.
25401 2005-02-23 Thomas Vander Stichele <thomas at apestaart dot org>
25403 * gst/schedulers/fairscheduler.c:
25404 compile with debug disabled
25406 2005-02-22 Thomas Vander Stichele <thomas at apestaart dot org>
25408 * configure.ac:
25409 hunting season on 0.9 is now OPEN