1 2006-07-06 Wim Taymans <wim@fluendo.com>
3 * gst/gstmessage.h:
4 Use a valid int for the _MESSAGE_ANY enum value to avoid compiler
5 warnings.
7 2006-07-06 Wim Taymans <wim@fluendo.com>
9 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
10 (gst_base_src_wait), (gst_base_src_update_length),
11 (gst_base_src_get_range), (gst_base_src_default_check_get_range),
12 (gst_base_src_check_get_range), (gst_base_src_pad_check_get_range),
13 (gst_base_src_loop), (gst_base_src_start),
14 (gst_base_src_activate_pull):
15 Update docs.
16 blocksize == 0 now means the default blocksize when working in push
17 based mode.
18 Remove some pointless asserts in _wait function.
19 Fix offset/length calculations and EOS handling. We can now pull 0
20 bytes as well, which is allowed.
21 use _check_get_range() to decide if we can operate in _pull based
22 mode.
23 Fix refcounting leak when check_get_range function was not
24 implemented.
25 API GstBaseSrc::blocksize range can be 0 too now (default)
27 * tests/check/elements/filesrc.c: (GST_START_TEST),
28 (filesrc_suite):
29 Added check to test _get_range() behaviour.
31 2006-07-06 Wim Taymans <wim@fluendo.com>
33 * gst/gstpad.c: (gst_pad_chain_unchecked), (gst_pad_chain),
34 (gst_pad_push), (gst_pad_check_pull_range), (gst_pad_get_range),
35 (gst_pad_pull_range):
36 * gst/gstpad.h:
37 Lots of comments and docs added to the pad functions.
38 Flesh out the expected behaviour of the get_range() functions.
40 2006-07-06 Wim Taymans <wim@fluendo.com>
42 * gst/gstbus.h:
43 * gst/gstclock.h:
44 * gst/gstevent.h:
45 * gst/gstiterator.h:
46 * gst/gstpad.h:
47 * gst/gstplugin.h:
48 * gst/gsttask.h:
49 Remove comma at end of enumerator list.
51 2006-07-05 Sebastien Moutte <sebastien@moutte.net>
53 * win32/common/libgstbase.def:
54 * win32/common/libgstdataprotocol.def:
55 * win32/common/libsgtreamer.def:
56 Add new exported functions.
58 2006-07-05 Wim Taymans <wim@fluendo.com>
60 * libs/gst/base/gstpushsrc.c: (gst_push_src_check_get_range):
61 Add some more docs here and there.
63 2006-07-05 Wim Taymans <wim@fluendo.com>
65 * libs/gst/base/gstbasesink.c: (gst_base_sink_preroll_object),
66 (gst_base_sink_loop), (gst_base_sink_get_position):
67 When operating in pull mode update the offset so that we
68 read sequentially.
70 2006-07-05 Wim Taymans <wim@fluendo.com>
72 * gst/gstregistryxml.c: (read_string):
73 Avoid strdup. (will happen in libxml, but hey!)
75 * gst/gsturi.c:
76 Add some more docs.
78 2006-07-05 Wim Taymans <wim@fluendo.com>
80 * gst/gstbuffer.c: (_gst_buffer_copy), (gst_buffer_create_sub):
81 * tests/check/gst/gstbuffer.c: (GST_START_TEST),
82 (gst_buffer_suite):
83 No point in checking if the size of the subbuffer > 0, the
84 code handles it correclty as demonstrated by unit test.
85 Also add a unit test for the zero sized _new_and_alloc and
86 _copy. Fixes #346663.
88 2006-07-05 Wim Taymans <wim@fluendo.com>
90 * libs/gst/base/gstbasetransform.c:
91 (gst_base_transform_prepare_output_buffer),
92 (gst_base_transform_buffer_alloc),
93 (gst_base_transform_handle_buffer):
94 Make sure the buffer we pass to transform_ip has a refcount of
95 1 and thus is writable. Fixes #343196
97 2006-07-04 Jan Schmidt <thaytan@mad.scientist.com>
99 * plugins/elements/gstfilesrc.c: (gst_file_src_class_init),
100 (gst_file_src_init), (gst_file_src_set_property),
101 (gst_file_src_get_property), (gst_file_src_map_region):
102 * plugins/elements/gstfilesrc.h:
103 Add "sequential" property, off by default, to use madvise and hint
104 to the kernel that sequential access is desired.
105 Touch all retrieved pages by default to ensure they are pulled
106 into memory. (Closes #345720)
108 2006-07-03 Wim Taymans <wim@fluendo.com>
110 * docs/design/part-block.txt:
111 * docs/design/part-dynamic.txt:
112 Small docs updates.
114 2006-07-03 Wim Taymans <wim@fluendo.com>
116 * gst/gstcaps.c: (gst_caps_new_empty), (_gst_caps_free),
117 (gst_caps_unref), (gst_static_caps_get),
118 (gst_caps_append_structure):
119 * gst/gstclock.c: (gst_clock_entry_new), (_gst_clock_id_free):
120 Use GSlice when the glib we build against is >= 2.10
122 2006-07-03 Wim Taymans <wim@fluendo.com>
124 * gst/gstelement.c: (gst_element_pads_activate):
125 Small cleanup in pad activation code.
127 2006-07-03 Wim Taymans <wim@fluendo.com>
129 Patch by: Peter Kjellerstedt <pkj at axis dot com>
131 * gst/gst-i18n-app.h:
132 * gst/gst-i18n-lib.h:
133 * tools/gst-inspect.c: (print_signal_info):
134 The attached patch will make the inclusion of gettext.h unconditional in
135 gst/gst-i18n-app.h and gst/gst-i18n-lib.h, and it will remove the inclusion of
136 libintl.h in tools/gst-inspect.c.
137 This allows use of --disable-nls again and fixes #344642.
139 2006-07-03 Edward Hervey <edward@fluendo.com>
141 * gst/gstpad.c: (handle_pad_block), (gst_pad_push_event):
142 Implement pad blocking on events according to part-block.txt.
143 More comments on behaviour.
144 * tests/check/gst/gstevent.c: (test_event):
145 Send event to peer pad of blocked pad (else it will block).
147 2006-07-03 Thomas Vander Stichele <thomas at apestaart dot org>
149 * libs/gst/check/gstcheck.c: (gst_check_message_error),
150 (gst_check_run_suite):
151 if we get the wrong message, give us the types as string
152 * plugins/elements/gstfilesrc.c: (gst_file_src_start):
153 Fix a translatable
154 * tests/check/elements/filesrc.c: (GST_START_TEST):
155 add a test for trying to open a non-existing file
157 2006-07-03 Thomas Vander Stichele <thomas at apestaart dot org>
159 * tests/check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
160 add a test for adding self
162 2006-07-03 Thomas Vander Stichele <thomas at apestaart dot org>
164 * libs/gst/check/gstcheck.h:
165 add some assert_ as alias for fail_unless_*
166 * tests/check/gst/gst.c: (GST_START_TEST), (gst_suite):
167 increase test coverage
169 2006-07-02 Thomas Vander Stichele <thomas at apestaart dot org>
171 * Makefile.am:
172 include lcov.mak for lcov coverage generation
173 * tools/Makefile.am:
174 add to CLEANFILES
176 2006-07-02 Edward Hervey <edward@fluendo.com>
178 * tests/check/elements/.cvsignore:
179 moaping
181 2006-07-02 Thomas Vander Stichele <thomas at apestaart dot org>
183 * configure.ac:
184 don't set CFLAGS and friends for gcov, done from GST_GCOV now
185 * tests/check/Makefile.am:
186 clean up gcov files
188 2006-07-02 Thomas Vander Stichele <thomas at apestaart dot org>
190 * gst/gstcaps.c: (gst_caps_remove_and_get_structure):
191 remove gst_caps_simplify; it was not declared and not used
192 and deprecated in 0.8
194 2006-07-02 Thomas Vander Stichele <thomas at apestaart dot org>
196 * docs/faq/gst-uninstalled:
197 don't put empty paths on PYTHONPATH
198 * docs/gst/gstreamer-sections.txt:
199 remove some symbols that are not there
201 2006-07-02 Thomas Vander Stichele <thomas at apestaart dot org>
203 * gst/gstcaps.c: (gst_caps_compare_structures):
204 whitespace fixes
205 * tests/check/gst/gstbuffer.c: (GST_START_TEST):
206 * tests/check/gst/gstcaps.c: (GST_START_TEST), (gst_caps_suite):
207 add more tests
209 2006-07-02 Thomas Vander Stichele <thomas at apestaart dot org>
211 * libs/gst/dataprotocol/Makefile.am:
212 build dataprotocol test by linking to the lib, instead of
213 compiling the source, so we get coverage
214 * tests/check/Makefile.am:
215 * tests/check/elements/filesrc.c: (event_func), (setup_filesrc),
216 (cleanup_filesrc), (GST_START_TEST), (filesrc_suite):
217 add a test for filesrc
219 2006-07-02 Thomas Vander Stichele <thomas at apestaart dot org>
221 * tests/check/gst/gststructure.c: (GST_START_TEST),
222 (gst_structure_suite):
223 Push coverage from 59.04% to 70.00%
225 2006-07-02 Thomas Vander Stichele <thomas at apestaart dot org>
227 * tests/check/Makefile.am:
228 gst-inspect every element; this makes sure that we also get
229 coverage on element's get/set functions
231 2006-07-02 Thomas Vander Stichele <thomas at apestaart dot org>
233 * configure.ac:
234 set CFLAGS and friends to -O0 if gcov is being used
235 add GCOV LIBS
236 * gst/Makefile.am:
237 * libs/gst/base/Makefile.am:
238 * libs/gst/check/Makefile.am:
239 * libs/gst/controller/Makefile.am:
240 * libs/gst/dataprotocol/Makefile.am:
241 * libs/gst/net/Makefile.am:
242 * plugins/elements/Makefile.am:
243 * plugins/indexers/Makefile.am:
244 add makefile rules to generate gcov data and clean up
245 * tests/check/Makefile.am:
246 add a coverage target that generates an html overview
247 of coverage data
249 2006-07-01 Thomas Vander Stichele <thomas at apestaart dot org>
251 * tests/check/elements/fakesink.c:
252 * tests/check/elements/fakesrc.c:
253 * tests/check/elements/fdsrc.c:
254 * tests/check/elements/identity.c:
255 * tests/check/generic/sinks.c: (gst_sinks_suite):
256 * tests/check/generic/states.c:
257 * tests/check/gst/gst.c:
258 * tests/check/gst/gstabi.c:
259 * tests/check/gst/gstbin.c:
260 * tests/check/gst/gstbuffer.c: (gst_buffer_suite):
261 * tests/check/gst/gstbus.c: (gst_bus_suite):
262 * tests/check/gst/gstcaps.c: (GST_START_TEST):
263 * tests/check/gst/gstelement.c:
264 * tests/check/gst/gstevent.c: (gst_event_suite):
265 * tests/check/gst/gstghostpad.c:
266 * tests/check/gst/gstiterator.c: (gst_iterator_suite):
267 * tests/check/gst/gstmessage.c: (gst_message_suite):
268 * tests/check/gst/gstminiobject.c:
269 * tests/check/gst/gstobject.c:
270 * tests/check/gst/gstpad.c:
271 * tests/check/gst/gstpipeline.c:
272 * tests/check/gst/gstplugin.c:
273 * tests/check/gst/gstquery.c: (gst_query_suite):
274 * tests/check/gst/gstsegment.c: (gst_segment_suite):
275 * tests/check/gst/gststructure.c:
276 * tests/check/gst/gstsystemclock.c:
277 * tests/check/gst/gsttag.c:
278 * tests/check/gst/gsttask.c: (gst_task_suite):
279 * tests/check/gst/gstutils.c:
280 * tests/check/gst/gstvalue.c:
281 * tests/check/libs/adapter.c:
282 * tests/check/libs/basesrc.c:
283 * tests/check/libs/collectpads.c:
284 * tests/check/libs/controller.c:
285 * tests/check/libs/gdp.c: (gst_dp_suite):
286 * tests/check/libs/gstnetclientclock.c:
287 * tests/check/libs/gstnettimeprovider.c:
288 * tests/check/libs/libsabi.c: (libsabi_suite):
289 * tests/check/libs/typefindhelper.c:
290 * tests/check/pipelines/cleanup.c:
291 * tests/check/pipelines/parse-launch.c:
292 * tests/check/pipelines/simple-launch-lines.c:
293 * tests/check/pipelines/stress.c: (stress_suite):
294 use the new macro
296 2006-07-01 Thomas Vander Stichele <thomas at apestaart dot org>
298 * libs/gst/check/gstcheck.c: (gst_check_run_suite):
299 * libs/gst/check/gstcheck.h:
300 create a macro and function so that the simple unit test
301 case can be just one macro to create main()
303 2006-06-30 Tim-Philipp Müller <tim at centricular dot net>
305 * gst/gstbin.c: (gst_bin_restore_thyself):
306 * gst/gstxml.c: (gst_xml_make_element):
307 Fix deserialisation from XML. Set parent manually
308 instead of using gst_bin_add(), since gst_bin_add()
309 will unlink all pads of the element being added.
310 Fixes #341667.
312 2006-06-28 Tim-Philipp Müller <tim at centricular dot net>
314 Patch by: Peter Kjellerstedt <pkj at axis com>
316 * gst/gst.c: (prepare_for_load_plugin_func), (split_and_iterate):
317 Fix missing g_strdup() and double free when using the
318 --gst-plugin-load command line option (#346097).
320 2006-06-23 Tim-Philipp Müller <tim at centricular dot net>
322 * gst/gstinfo.c:
323 Promote GST_DEBUG_CATEGORY_STATIC in example in docs.
325 * libs/gst/net/gstnetclientclock.c:
326 * libs/gst/net/gstnettimeprovider.c:
327 Use GST_DEBUG_CATEGORY_STATIC here too (#342503).
329 2006-06-23 Tim-Philipp Müller <tim at centricular dot net>
331 * docs/manual/advanced-dataaccess.xml:
332 Fix buffer probe example compilation in
333 ADM (#345708).
335 2006-06-22 Edward Hervey <edward@fluendo.com>
337 * gst/gstelement.c: (gst_element_pads_activate):
338 We need to deactivate src pads first and then sink pads.
339 The reason is the src pads might be blocking while holding the streaming
340 lock, so we need to deactivate them first so that deactivating the sink
341 pads doesn't block (since it will require the streaming lock).
343 2006-06-22 Wim Taymans <wim@fluendo.com>
345 * libs/gst/base/gstbasetransform.c:
346 (gst_base_transform_buffer_alloc):
347 Forgot to remove two unneeded unrefs.
348 Simplify a check _is_equal allready checks the obvious case.
350 2006-06-22 Wim Taymans <wim@fluendo.com>
352 * docs/design/part-block.txt:
353 Some docs about what pad_block should do.
355 2006-06-22 Wim Taymans <wim@fluendo.com>
357 * gst/gstcaps.c: (gst_caps_replace):
358 Fix crasher when passed NULL. Doc clarification.
359 Optimize for the trivial case.
361 * gst/gstpipeline.c: (gst_pipeline_change_state):
362 Small cleanups.
364 * libs/gst/base/gstbasesrc.c: (gst_base_src_loop):
365 Small documentation cleanup.
367 * libs/gst/base/gstbasetransform.c:
368 (gst_base_transform_buffer_alloc):
369 Don't use silly gst_pad_get_negotiated_caps, GST_PAD_CAPS
370 is what we need and it avoids a whole lot of redundant
371 refcount operations.
373 2006-06-22 Tim-Philipp Müller <tim at centricular dot net>
375 Patch by: Philip Jägenstedt <philip at lysator liu se>
377 * docs/manual/advanced-dataaccess.xml:
378 Fix 'Embedding static elements' section to use
379 GST_PLUGIN_DEFINE_STATIC (#345607).
381 2006-06-21 Tim-Philipp Müller <tim at centricular dot net>
383 * tests/check/pipelines/simple-launch-lines.c: (test_stop_from_app):
384 Attempt to 'fix' spuriously failing test case: it seems like the
385 timeout of half a second is simply too small when the system is under
386 load otherwise, and the timeout doesn't really seem to serve any
387 particular purpose here. Give the pipeline a few seconds to preroll
388 first, and then give it another half a second to go from PAUSED to
389 PLAYING and marshal the message into the main thread.
391 2006-06-21 Tim-Philipp Müller <tim at centricular dot net>
393 * tools/gst-feedback-m.m:
394 Don't only use unversioned tools, try versioned tools as well
395 (#345086).
397 2006-06-21 Tim-Philipp Müller <tim at centricular dot net>
399 * gst/gstbus.c: (gst_bus_class_init):
400 Fix some typos, make docs more explicit.
402 2006-06-20 Wim Taymans <wim@fluendo.com>
404 * tests/check/gst/gstghostpad.c: (block_callback),
405 (GST_START_TEST), (gst_ghost_pad_suite):
406 Added some more ghostpad tests, mainly blocking
407 and probes.
409 2006-06-16 Wim Taymans <wim@fluendo.com>
411 * plugins/elements/gstfilesink.c: (gst_file_sink_open_file),
412 (gst_file_sink_close_file), (gst_file_sink_do_seek),
413 (gst_file_sink_event), (gst_file_sink_render):
414 * plugins/elements/gstfilesink.h:
415 Check if we can seek in the file instead of assuming
416 we always can. Post an error when we are asked to seek in a
417 non-seekable file (like a fifo). Fixes #343312.
418 Some cleanups.
420 2006-06-16 Tim-Philipp Müller <tim at centricular dot net>
422 * tools/gst-launch.1.in:
423 Un-garble (fourcc) bit in filtered caps section.
425 2006-06-16 Tim-Philipp Müller <tim at centricular dot net>
427 * docs/manual/advanced-autoplugging.xml:
428 * docs/manual/basics-helloworld.xml:
429 * docs/manual/highlevel-components.xml:
430 Don't leak bus reference in sample code.
432 2006-06-15 Tim-Philipp Müller <tim at centricular dot net>
434 * autogen.sh:
435 Add default for new --enable-plugin-docs switch.
437 * configure.ac:
438 Use new GST_PLUGIN_DOCS macro to check for pyxml etc.
439 Fixes #344039.
441 * docs/Makefile.am:
442 Use new ENABLE_PLUGIN_DOCS conditional.
444 2006-06-14 Wim Taymans <wim@fluendo.com>
446 * gst/gstbin.c: (bin_query_duration_done), (gst_bin_query):
447 Make it clear with a FIXME and a real define what the #if 0
448 previously disabled.
450 2006-06-14 Wim Taymans <wim@fluendo.com>
452 * libs/gst/base/gstbasesink.c: (gst_base_sink_configure_segment),
453 (gst_base_sink_preroll_object), (gst_base_sink_get_position):
454 * libs/gst/base/gstbasetransform.c:
455 (gst_base_transform_sink_eventfunc):
456 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_event):
457 Don't randomly and silently reset a segment when the format
458 changes as this is a bug somewhere upstream. Fixes #330379.
460 2006-06-14 Tim-Philipp Müller <tim at centricular dot net>
462 Patch by: Wouter Paesen <wouter at kangaroot net>
464 * libs/gst/controller/gstcontroller.c:
465 (gst_controlled_property_new):
466 Fix controlling of float properties (#344849).
468 * tests/check/libs/controller.c:
469 (gst_test_mono_source_get_property),
470 (gst_test_mono_source_set_property),
471 (gst_test_mono_source_class_init), (GST_START_TEST):
472 While we're at it, add some float stuff to unit test.
474 2006-06-13 Thomas Vander Stichele <thomas at apestaart dot org>
476 * docs/README:
477 * docs/images/gdp-header.svg:
478 add a gdp image
479 * docs/libs/Makefile.am:
480 * docs/libs/gdp-header.png:
481 * libs/gst/dataprotocol/dataprotocol.c:
482 add it to the API docs
483 * docs/manual/intro-motivation.xml:
484 fix typo
486 2006-06-13 Tim-Philipp Müller <tim at centricular dot net>
488 * gst/gst.c: (scan_and_update_registry), (init_post):
489 If the fork()'ed child process can't write the updated registry cache
490 file to disk for some reason, make it exit with a failure exit code,
491 so that the parent can then re-scan the plugins itself and update the
492 registry structures in memory and work with that (rather than failing
493 when creating elements because seemingly no plugins are available).
494 Refactor registry scanning code into separate function for this and
495 also separate fork() and non-fork() code paths. Fixes #344748.
497 2006-06-13 Wim Taymans <wim@fluendo.com>
499 * docs/manual/advanced-dataaccess.xml:
500 Fix wrong PluginDesc. Fixes #344755.
502 2006-06-13 Tim-Philipp Müller <tim at centricular dot net>
504 * gst/gstregistryxml.c: (gst_registry_xml_write_cache):
505 Fix silly bug that prevented us from creating
506 ~/.gstreamer-0.10 and writing the registry in one
507 go (the first call to g_mkstemp() would overwrite the
508 placeholder in the template string, so the second call
509 to g_mkstemp() after creating the missing directory
510 would then error out with 'invalid argument').
512 2006-06-13 Edward Hervey <edward@fluendo.com>
514 * gst/gst.c: (init_post):
515 Free string.
517 2006-06-13 Thomas Vander Stichele <thomas at apestaart dot org>
519 * gst/glib-compat-private.h:
520 * gst/glib-compat.c:
521 * gst/glib-compat.h:
522 * gst/gstvalue.c: (gst_value_serialize_flags):
523 remove GLib 2.6 compatibility code
525 2006-06-12 Tim-Philipp Müller <tim at centricular dot net>
527 * gst/parse/Makefile.am:
528 Fix build with 'make -j N' even more (#340016).
530 2006-06-12 Wim Taymans <wim@fluendo.com>
532 * docs/gst/gstreamer-sections.txt:
533 Fix docs.
535 2006-06-12 Wim Taymans <wim@fluendo.com>
537 * gst/gstsegment.c: (gst_segment_set_duration),
538 (gst_segment_set_last_stop), (gst_segment_set_seek),
539 (gst_segment_set_newsegment_full), (gst_segment_to_stream_time),
540 (gst_segment_to_running_time), (gst_segment_clip):
541 Use G_UNLIKELY to help the compiler a bit.
543 2006-06-12 Wim Taymans <wim@fluendo.com>
545 Patch by: Stefan Kost <ensonic at sonicpulse dot de>
547 * gst/gstevent.c: (gst_event_get_type):
548 * gst/gstmessage.c:
549 * gst/gstpad.c: (gst_pad_chain_unchecked), (gst_pad_chain),
550 (gst_pad_push):
551 constify quark registration strings. Fixes #344115
552 Avoid unneeded type checking is _pad_push() by internally
553 calling gst_pad_chain_unchecked().
555 2006-06-12 Wim Taymans <wim@fluendo.com>
557 * gst/gstbuffer.c: (gst_buffer_get_type), (gst_buffer_finalize),
558 (_gst_buffer_copy), (gst_buffer_is_metadata_writable),
559 (gst_subbuffer_finalize), (gst_buffer_create_sub),
560 (gst_buffer_is_span_fast), (gst_buffer_span):
561 Init _type for consistency.
562 Use _FLAGS macro to avoid type check.
563 Avoid unneeded type checks in subbufer code.
565 2006-06-12 Wim Taymans <wim@fluendo.com>
567 * gst/gst.c: (gst_debug_help):
568 * gst/gstplugin.c: (gst_plugin_finalize), (gst_plugin_list_free):
569 * gst/gstpluginfeature.c: (gst_plugin_feature_finalize),
570 (gst_plugin_feature_list_free):
571 * gst/gstregistry.c: (gst_registry_add_plugin),
572 (gst_registry_add_feature), (gst_registry_plugin_filter),
573 (gst_registry_feature_filter), (gst_registry_find_plugin),
574 (gst_registry_find_feature), (gst_registry_get_plugin_list),
575 (gst_registry_lookup_feature_locked), (gst_registry_lookup_locked):
576 * gst/gstregistryxml.c: (load_feature),
577 (gst_registry_xml_read_cache), (gst_registry_xml_write_cache):
578 * gst/gstminiobject.c: (gst_mini_object_unref),
579 (gst_mini_object_replace), (gst_value_mini_object_free),
580 (gst_value_mini_object_copy):
581 Use _CAST macros to avoid unneeded type checking.
582 Added some more G_UNLIKELY.
584 2006-06-12 Wim Taymans <wim@fluendo.com>
586 * gst/gstbuffer.h:
587 Avoid unneeded type checking.
588 API: GST_BUFFER_IS_DISCONT
590 * gst/gstminiobject.h:
591 Avoid type check in flag accessor.
593 * gst/gstelementfactory.h:
594 * gst/gstplugin.h:
595 * gst/gstpluginfeature.h:
596 Add _CAST macros.
597 API: GST_ELEMENT_FACTORY_CAST
598 API: GST_PLUGIN_CAST
599 API: GST_PLUGIN_FEATURE_CAST
601 2006-06-12 Wim Taymans <wim@fluendo.com>
603 * gst/gstobject.c: (gst_object_get_type), (gst_object_ref),
604 (gst_object_unref):
605 Add G_UNLIKELY in type registration.
606 Avoid type check in _ref/_unref since that is also
607 done in glib.
609 2006-06-12 Wim Taymans <wim@fluendo.com>
611 * gst/gsterror.c: (gst_g_error_get_type):
612 * gst/gstpadtemplate.c: (gst_pad_template_get_type),
613 (gst_static_pad_template_get_type):
614 * gst/gsttaglist.c: (gst_tag_list_get_type):
615 * gst/gsttagsetter.c: (gst_tag_setter_get_type):
616 * gst/gsttypefindfactory.c: (gst_type_find_factory_get_type):
617 * gst/gsturi.c: (gst_uri_handler_get_type):
618 * gst/gstvalue.c: (gst_date_get_type):
619 * gst/gstxml.c: (gst_xml_get_type):
620 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_type),
621 (gst_base_sink_preroll_object), (gst_base_sink_get_position):
622 * libs/gst/base/gstbasesrc.c: (gst_base_src_get_type):
623 Add G_UNLIKELY in type registration.
625 2006-06-12 Wim Taymans <wim@fluendo.com>
627 * tools/gst-inspect.c: (print_signal_info):
628 Properly print enum values.
630 2006-06-12 Wim Taymans <wim@fluendo.com>
632 * gst/gstinfo.c: (gst_debug_set_active),
633 (gst_debug_category_set_threshold), (_gst_debug_nameof_funcptr):
634 * gst/gstinfo.h:
635 Add some G_[UN]LIKELY.
636 Maintain __gst_debug_min to avoid formatting the arguments of
637 debug messages that will be dropped anyway to avoid a lot of
638 overhead from the debugging system.
640 2006-06-11 Stefan Kost <ensonic@users.sf.net>
642 * po/POTFILES.in:
643 * po/POTFILES.skip:
644 add missing files containing translatable strings, tell intltool about
645 one exception
647 2006-06-11 Stefan Kost <ensonic@users.sf.net>
649 * tests/check/libs/.cvsignore:
650 add test-binary to ignore list
652 2006-06-11 Stefan Kost <ensonic@users.sf.net>
654 * docs/libs/gstreamer-libs-docs.sgml:
655 reorder (put dp into a chapter) and indent
657 2006-06-10 Thomas Vander Stichele <thomas at apestaart dot org>
659 * configure.ac:
660 back to HEAD
662 === release 0.10.8 ===
664 2006-06-10 Thomas Vander Stichele <thomas at apestaart dot org>
666 * configure.ac:
667 releasing 0.10.8, "Soepeke, ik zie ou nog altijd nie"
669 2006-06-10 Thomas Vander Stichele <thomas at apestaart dot org>
671 * gst/gst.c: (init_post):
672 move pid declaration to declaration block
674 2006-06-10 Thomas Vander Stichele <thomas at apestaart dot org>
676 * gst/gst.c: (init_post):
677 use _exit() instead of exit() in our forked child; this ensures
678 that none of the registered exit handlers from whatever is using
679 GStreamer get executed. This fixes gnome-mixer-applet failing
680 to load, because ORBit would shut down.
681 Spotted by: Edward Hervey <edward@fluendo.com>
682 Fix suggested by: Tim-Philipp Müller <tim at centricular dot net>
683 Fixes #344474
685 2006-06-09 Thomas Vander Stichele <thomas at apestaart dot org>
687 * configure.ac:
688 back to TRUNK
690 === release 0.10.7 ===
692 2006-06-09 Thomas Vander Stichele <thomas at apestaart dot org>
694 * configure.ac:
695 releasing 0.10.7, "Soepeke, ik zie ou"
697 2006-06-07 Thomas Vander Stichele <thomas at apestaart dot org>
699 * configure.ac:
700 * po/af.po:
701 * po/az.po:
702 * po/bg.po:
703 * po/ca.po:
704 * po/cs.po:
705 * po/de.po:
706 * po/en_GB.po:
707 * po/fr.po:
708 * po/it.po:
709 * po/nb.po:
710 * po/nl.po:
711 * po/ru.po:
712 * po/sq.po:
713 * po/sr.po:
714 * po/sv.po:
715 * po/tr.po:
716 * po/uk.po:
717 * po/vi.po:
718 * po/zh_CN.po:
719 * po/zh_TW.po:
720 * win32/common/config.h:
721 0.10.6.2 prerelease
723 2006-06-07 Wim Taymans <wim@fluendo.com>
725 * gst/gstindex.c: (gst_index_gtype_resolver):
726 * tools/gst-xmlinspect.c: (print_plugin_info):
727 Fix leak spotted by coverity checker. Fixes #343827
728 Fix another other leak found by paolo borelli.
730 2006-06-06 Thomas Vander Stichele <thomas at apestaart dot org>
732 * libs/gst/dataprotocol/dataprotocol.c:
733 (gst_dp_header_from_buffer_any), (gst_dp_packet_from_caps_any),
734 (gst_dp_version_get_type), (gst_dp_init),
735 (gst_dp_header_from_buffer), (gst_dp_header_from_buffer_1_0),
736 (gst_dp_packet_from_caps), (gst_dp_packet_from_caps_1_0),
737 (gst_dp_packet_from_event), (gst_dp_packet_from_event_1_0),
738 (gst_dp_event_from_packet_0_2), (gst_dp_event_from_packet_1_0),
739 (gst_dp_event_from_packet), (gst_dp_packetizer_new),
740 (gst_dp_packetizer_free):
741 * libs/gst/dataprotocol/dataprotocol.h:
742 API: add a GstDPPacketizer object, and create/free functions
743 API: add GstDPVersion enum
744 Add 1.0 event function that uses the string serialization
745 Serialize more useful buffer flags
746 Fixes #343988
748 2006-06-06 Thomas Vander Stichele <thomas at apestaart dot org>
750 * tests/check/Makefile.am:
751 * tests/check/gst/gstabi.c:
752 * tests/check/gst/struct_ppc64.h:
753 * tests/check/libs/libsabi.c:
754 * tests/check/libs/struct_ppc64.h:
755 add ppc64 structure sizes
757 2006-06-06 Thomas Vander Stichele <thomas at apestaart dot org>
759 * tests/check/Makefile.am:
760 * tests/check/gst/gstabi.c:
761 * tests/check/gst/struct_x86_64.h:
762 * tests/check/libs/libsabi.c:
763 * tests/check/libs/struct_x86_64.h:
764 generate and add structure size lists for x86_64
766 2006-06-06 Thomas Vander Stichele <thomas at apestaart dot org>
768 * libs/gst/check/gstcheck.c: (gst_check_abi_list):
769 * libs/gst/check/gstcheck.h:
770 factor out the method from tests that checks size of structures,
771 and add code to generate the header containing these sizes
772 * tests/check/gst/gstabi.c: (GST_START_TEST):
773 * tests/check/gst/struct_i386.h:
774 * tests/check/libs/libsabi.c: (GST_START_TEST):
775 * tests/check/libs/struct_i386.h:
776 use it
778 2006-06-06 Michael Smith <msmith@fluendo.com>
780 * gst/gstsegment.h:
781 Don't use c++-style comments, fixes #343929
783 2006-06-05 Edward Hervey <edward@fluendo.com>
785 * gst/gst.c:
786 plugin_paths is not used if we build without registry support.
788 * gst/gstsegment.c: (gst_segment_copy):
789 _copy() was always returning NULL...
791 2006-06-02 Thomas Vander Stichele <thomas at apestaart dot org>
793 * libs/gst/dataprotocol/dataprotocol.c:
794 (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
795 (gst_dp_packet_from_event):
796 factor out CRC code
798 2006-06-02 Thomas Vander Stichele <thomas at apestaart dot org>
800 * libs/gst/check/gstcheck.c: (gst_check_teardown_src_pad):
801 make sure we unset caps
803 2006-06-02 Michael Smith <msmith@fluendo.com>
805 * libs/gst/check/gstcheck.c: (gst_check_init),
806 (gst_check_chain_func):
807 * libs/gst/check/gstcheck.h:
808 Add a cond/mutex to the check support lib, signal this whenever we
809 add to the buffers list. This will allow tests to not busy-wait on
810 the buffer-list.
812 2006-06-02 Thomas Vander Stichele <thomas at apestaart dot org>
814 * libs/gst/dataprotocol/dataprotocol.c:
815 (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
816 (gst_dp_packet_from_event):
817 factor out some common header init code
819 2006-06-02 Thomas Vander Stichele <thomas at apestaart dot org>
821 * docs/libs/gstreamer-libs-sections.txt:
822 * docs/libs/tmpl/gstdataprotocol.sgml:
823 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
824 * libs/gst/dataprotocol/dataprotocol.h:
825 API: make gst_dp_crc() public
827 2006-06-01 Stefan Kost <ensonic@users.sf.net>
829 * plugins/indexers/gstindexers.c: (plugin_init):
830 conditionally register fileindexer (fixes #343598)
832 2006-06-01 Stefan Kost <ensonic@users.sf.net>
834 * gst/gsttagsetter.h:
835 Can't cast ifaces to a class
837 * libs/gst/net/gstnetclientclock.h:
838 * libs/gst/net/gstnettimeprovider.h:
839 * plugins/elements/gstfakesink.h:
840 * plugins/elements/gstfakesrc.h:
841 * plugins/elements/gstfdsink.h:
842 * plugins/elements/gstfdsrc.h:
843 * plugins/elements/gstfilesink.h:
844 * plugins/elements/gstfilesrc.h:
845 * plugins/elements/gstidentity.h:
846 * plugins/elements/gstqueue.h:
847 * plugins/elements/gsttee.h:
848 * plugins/indexers/gstfileindex.c:
849 * plugins/indexers/gstmemindex.c:
850 * tests/old/examples/plugins/example.h:
851 Fix more gobject macros: obj<->klass, GstXXX<->GstXXXClass
853 2006-06-01 Thomas Vander Stichele <thomas at apestaart dot org>
855 * libs/gst/dataprotocol/dataprotocol.c:
856 (gst_dp_header_from_buffer):
857 make sure we zero the whole ABI-compatible area
859 2006-06-01 Wim Taymans <wim@fluendo.com>
861 Patch by: Alessandro Decina <alessandro at nnva dot org>
863 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_stop):
864 Make sure the EOS flag is cleared from pads after a flush
865 or stop. Fixes #343538.
867 * tests/check/libs/collectpads.c: (GST_START_TEST),
868 (gst_collect_pads_suite):
869 Added test for collectpads reusage after EOS.
871 2006-05-30 Sebastien Moutte <sebastien@moutte.net>
873 * gst/gst.c:
874 set #include <sys/wait.h> in a #ifdef #ifdef HAVE_FORK
875 * win32/common/libgstbase.def:
876 export gst_collect_pads_set_flushing
877 * win32/common/libgstreamer.def:
878 export gst_pad_set_acceptcaps_function, gst_structure_empty_new,
879 gst_value_fraction_multiply
880 * win32/vs6/gst_inspect.dsp:
881 add a link to intl.lib
883 2006-05-30 Wim Taymans <wim@fluendo.com>
885 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_remove_pad),
886 (gst_collect_pads_chain):
887 Handle the case where a pad is removed from the collection
888 that could cause the other pads to become collectable.
890 2006-05-30 Wim Taymans <wim@fluendo.com>
892 * gst/gstelement.c:
893 Clarify the use of _release_request_pad() and
894 _get_request_pad() a bit better.
896 * libs/gst/base/gstadapter.c: (gst_adapter_peek),
897 (gst_adapter_take_buffer):
898 Fix some doc and comment typos.
900 2006-05-30 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
902 * docs/gst/gstreamer-sections.txt:
903 * docs/libs/gstreamer-libs-sections.txt:
904 add declared symbols
906 2006-05-30 Jan Schmidt <thaytan@mad.scientist.com>
908 * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
909 Add debug that can be enabled using a #define at the top of the file,
910 for dumping stats about how late/early we were when waking up from
911 waiting on the clock.
913 2006-05-30 Wim Taymans <wim@fluendo.com>
915 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_check_pads):
916 When rebuilding the pad list, don't leak the previous list.
918 2006-05-30 Wim Taymans <wim@fluendo.com>
920 Patch by: Lutz Mueller <lutz at topfrose dot de>
922 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
923 (gst_base_src_get_query_types), (gst_base_src_update_length):
924 Publish supported query types.
925 Update last_stop field in get_range mode so the position
926 query works. Fixes #342321.
928 2006-05-30 Tim-Philipp Müller <tim at centricular dot net>
930 * docs/gst/gstreamer-sections.txt:
931 * gst/gsttaglist.c: (_gst_tag_initialize):
932 * gst/gsttaglist.h:
933 API: add GST_TAG_PREVIEW_IMAGE (#343341).
935 2006-05-30 Wim Taymans <wim@fluendo.com>
937 Patch by: Alessandro Decina <alessandro at nnva dot org>
939 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_remove_pad):
940 Unlock mutex when removing an unknown pad.
941 Fixes #343334.
943 * tests/check/Makefile.am:
944 * tests/check/libs/collectpads.c: (collected_cb), (push_buffer),
945 (push_event), (setup), (teardown), (GST_START_TEST),
946 (gst_collect_pads_suite), (main):
947 Added collecpads check, disabled for now as check crashes for
948 some reason.
950 2006-05-29 Wim Taymans <wim@fluendo.com>
952 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_finalize):
953 Don't leak pads lists.
955 2006-05-29 Wim Taymans <wim@fluendo.com>
957 * docs/libs/gstreamer-libs-sections.txt:
958 * libs/gst/base/gstcollectpads.c:
959 (gst_collect_pads_set_flushing_unlocked),
960 (gst_collect_pads_set_flushing), (gst_collect_pads_start),
961 (gst_collect_pads_stop):
962 * libs/gst/base/gstcollectpads.h:
963 API: gst_collect_pads_set_flushing()
964 Added api to set the pads to flushing, useful for seeking
965 code in elements using collectpads.
966 Clear segment when receiving a flush.
968 2006-05-29 Tim-Philipp Müller <tim at centricular dot net>
970 * gst/gst.c: (add_path_func), (init_post):
971 Don't scan registry paths passed via --gst-plugin-path immediately
972 (will crash, because absolutely nothing is set up and no types are
973 registered etc.); do this later in init_post(). Fixes #343057.
975 2006-05-28 Thomas Vander Stichele <thomas at apestaart dot org>
977 * gst/gst.c: (init_post):
978 if we have fork, fork while reading/rebuilding the registry
979 so the parent doesn't take the hit of having all plugins loaded
980 in memory. Fixes #342777.
981 * configure.ac:
982 Check if we have fork()
983 * win32/common/config.h.in:
984 no fork() on win32
986 2006-05-26 Jan Schmidt <thaytan@mad.scientist.com>
988 * plugins/elements/gstelements.c:
989 * plugins/elements/gstfilesrc.c: (gst_file_src_class_init),
990 (gst_file_src_init), (gst_file_src_set_property),
991 (gst_file_src_get_property), (gst_file_src_start):
992 * plugins/elements/gstfilesrc.h:
993 API: GstFileSrc::use-mmap
995 Add a use-mmap property to enable easier testing of all code paths.
996 Bump rank to PRIMARY, so filesrc is the preferred file reader and used
997 in the absence of gnomevfssrc. (Closes #340501)
999 2006-05-26 Zaheer Abbas Merali <zaheerabbas at merali dot org>
1001 * tools/gst-inspect.c:
1002 Add missing include, removes warning of ngettext not being defined on
1003 some arches.
1005 2006-05-26 Jan Schmidt <thaytan@mad.scientist.com>
1007 * gst/gstvalue.c: (gst_value_deserialize_fraction):
1008 Handle NULL input and output pointers silently as a failed conversion,
1009 rather than g_warnings.
1011 2006-05-25 Wim Taymans <wim@fluendo.com>
1013 * libs/gst/net/gstnetclientclock.c: (gst_net_client_clock_start):
1014 Initialize variable before using. Fixes #342820.
1016 2006-05-24 Tim-Philipp Müller <tim at centricular dot net>
1018 * libs/gst/base/gsttypefindhelper.c: (buf_helper_find_peek):
1019 Fix off-by-one bug that would only allow peeks of N-1 bytes
1020 from the start even if the buffer to typefind on contains
1021 in fact N bytes of data (makes vorbis typefinding from a
1022 vorbis identification header buffer work).
1024 * tests/check/Makefile.am:
1025 * tests/check/libs/.cvsignore:
1026 * tests/check/libs/typefindhelper.c: (GST_START_TEST),
1027 (gst_typefindhelper_suite), (main), (foobar_typefind),
1028 (plugin_init):
1029 Add very basic unit test for gst_type_find_helper_for_buffer()
1030 that checks for the problem fixed above.
1032 2006-05-24 Thomas Vander Stichele <thomas at apestaart dot org>
1034 * tools/gst-inspect.c: (print_interfaces),
1035 (print_element_properties_info), (print_element_list), (main):
1036 add more translatable strings
1038 2006-05-23 Tim-Philipp Müller <tim at centricular dot net>
1040 Patch by: Julien Moutte <julien at moutte net>
1042 * docs/gst/gstreamer-sections.txt:
1043 Make new GST_FLOW_IS_SUCCESS macro visible in docs.
1045 * plugins/elements/gstfakesink.c: (gst_fake_sink_class_init),
1046 (gst_fake_sink_preroll):
1047 * plugins/elements/gstfakesink.h:
1048 API: Add new GstFakeSink::preroll-handoff signal (#337100).
1050 2006-05-23 Wim Taymans <wim@fluendo.com>
1052 * gst/gstpad.c: (gst_flow_get_name), (gst_flow_to_quark):
1053 * gst/gstpad.h:
1054 Added _CUSTOM error and success GstFlowReturn that can be
1055 used be elements internally.
1056 Added macro to check for SUCCESS flowreturns.
1057 API: GST_FLOW_CUSTOM_SUCCESS
1058 API: GST_FLOW_CUSTOM_ERROR
1059 API: GST_FLOW_IS_SUCCESS
1061 * tests/check/gst/gstpad.c: (GST_START_TEST), (gst_pad_suite):
1062 Added check for GstFlowReturn sanity.
1064 2006-05-23 Wim Taymans <wim@fluendo.com>
1066 Patch by: Mark Nauwelaerts <manauw at skynet dot be>
1068 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_remove_pad),
1069 (gst_collect_pads_event):
1070 clear/reset segment info in FLUSH_STOP.
1071 Fixes #336929.
1073 2006-05-22 Stefan Kost <ensonic@users.sf.net>
1075 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_stop),
1076 (gst_collect_pads_check_collected):
1077 Flush queued buffer on _stop(), fixes playing again (#342454)
1079 2006-05-22 Thomas Vander Stichele <thomas at apestaart dot org>
1081 * tests/check/gst/gststructure.c: (GST_START_TEST),
1082 (gst_structure_suite):
1083 add a test for a complete structure
1085 2006-05-19 Tim-Philipp Müller <tim at centricular dot net>
1087 * docs/faq/developing.xml:
1088 * docs/faq/faq.xml:
1089 * docs/faq/troubleshooting.xml:
1090 * docs/faq/using.xml:
1091 Some minor FAQ updates that won't change the fact that
1092 our FAQ is badly structured, full of information hardly
1093 anyone new to GStreamer needs to know and lacking lots
1094 of information people constantly ask for.
1096 2006-05-19 Jan Schmidt <thaytan@mad.scientist.com>
1098 * gst/gstpad.c: (gst_pad_set_caps):
1099 Short-circuit gst_pad_set_caps if setting the existing
1100 caps pointer again, and avoid printing debug and
1101 reffing/unreffing the caps.
1103 * plugins/elements/gstqueue.c: (gst_queue_push_one):
1104 There's actually no need to set the caps before pushing -
1105 the acceptcaps method will handle it anyway.
1107 2006-05-19 Tim-Philipp Müller <tim at centricular dot net>
1109 * docs/gst/gstreamer-sections.txt:
1110 * win32/common/libgstreamer.def:
1111 * gst/gstutils.c: (gst_element_seek_simple):
1112 * gst/gstutils.h:
1113 API: add gst_element_seek_simple() (#342238).
1115 2006-05-18 Edward Hervey <edward@fluendo.com>
1117 * gst/gsttypefind.c: (gst_type_find_get_type):
1118 * gst/gsttypefind.h:
1119 Added GST_TYPE_TYPE_FIND and gst_type_find_get_type() so a GType gets
1120 registered for GstTypeFind pointers. This allows wrapping the structure
1121 in bindings (i.e. gst-python).
1123 2006-05-18 Tim-Philipp Müller <tim at centricular dot net>
1125 * gst/gsttagsetter.c:
1126 Docs additions and fixes (see #339918).
1128 2006-05-18 Jan Schmidt <thaytan@mad.scientist.com>
1130 * plugins/elements/gstcapsfilter.c: (gst_capsfilter_prepare_buf):
1131 The caps intersection algorithm can produce multiple copies of the
1132 caps. Until that is fixed, we need to simplify the result to be
1133 sure whether the allowed caps are fixed or not.
1135 * plugins/elements/gstqueue.c: (gst_queue_init),
1136 (gst_queue_bufferalloc), (gst_queue_acceptcaps),
1137 (gst_queue_push_one):
1138 Proxied buffer alloc should not set the caps on the source pad.
1139 When pushing buffers, we always accept the caps change that triggers.
1140 This prevents negotiation errors caused by caps changing mid-stream
1141 and then being refused on our source pad (because upstream is now
1142 refusing those caps).
1144 2006-05-18 Tim-Philipp Müller <tim at centricular dot net>
1146 * tests/examples/helloworld/helloworld.c: (main):
1147 Must plug audioconvert and audioresample between decoder
1148 and audio sink.
1150 2006-05-17 Jan Schmidt <thaytan@mad.scientist.com>
1152 * gst/gstregistryxml.c: (read_string), (load_pad_template),
1153 (load_feature), (load_plugin):
1154 Allow empty strings for some of the plugin fields so we don't
1155 drop valid plugin entries that were written out correctly
1156 (Fixes #341479)
1158 2006-05-17 Sebastien Moutte <sebastien@moutte.net>
1160 * gst/gstregistryxml.c: (gst_registry_xml_write_cache):
1161 Use g_remove and g_rename instead of remove and rename that don't
1162 handle utf8 characters. rename was failing for users who had specific
1163 characters in their name then the registry was built at each
1164 gstreamer init.
1165 * win32/vs6/gst_inspect.dsp:
1166 * win32/vs6/gst_launch.dsp:
1167 * win32/vs6/libgstbase.dsp:
1168 * win32/vs6/libgstcoreelements.dsp:
1169 * win32/vs6/libgstreamer.dsp:
1170 Use a debug version of libxml2 (libxml2D.lib,libxml2D.dll) for DEBUG
1171 build of libgstreamer and clean unused libraries in projects link
1172 settings.
1174 2006-05-17 Edward Hervey <edward@fluendo.com>
1176 * plugins/elements/gstqueue.c: (gst_queue_push_one):
1177 The queue is not responsible for pushing an EOS when receiving a fatal
1178 flow error. It's up to the real element driving the pipeline to do that.
1180 2006-05-16 Edward Hervey <edward@fluendo.com>
1182 * plugins/elements/gstqueue.c: (gst_queue_push_one):
1183 The queue was posting a non-needed GST_MESSAGE_ERROR when pushing a
1184 buffer returned a fatal error. It should just send an EOS and stop
1185 its task.
1186 Upstream elements will then properly receive the GST_FLOW_UNEXPECTED
1187 when pushing buffers on the queue and will be able to handle the event.
1189 2006-05-16 Tim-Philipp Müller <tim at centricular dot net>
1191 * docs/manual/basics-bins.xml:
1192 * docs/manual/basics-init.xml:
1193 Fix typos and minor errors in sample code (#341856).
1195 2006-05-16 Wim Taymans <wim@fluendo.com>
1197 * docs/design/part-qos.txt:
1198 Fix indexes in formulas to make more sense.
1200 2006-05-15 Wim Taymans <wim@fluendo.com>
1202 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_position):
1203 Don't report POSITION based on clock time if sync is
1204 disabled in a sink.
1206 2006-05-15 Tim-Philipp Müller <tim at centricular dot net>
1208 * gst/gstobject.h:
1209 Add cast to make compiler happy - refcount variable was a gint
1210 in GstObject but is a guint in GObject and g_atomic_int_get()
1211 wants a gint *.
1213 2006-05-15 Thomas Vander Stichele <thomas at apestaart dot org>
1215 * gst/parse/Makefile.am:
1216 chain commands using &&, which also makes parallel make work
1218 2006-05-14 Tim-Philipp Müller <tim at centricular dot net>
1220 * docs/gst/gstreamer-sections.txt:
1221 * gst/gstevent.c:
1222 * gst/gstevent.h:
1223 * gst/gstmessage.h:
1224 Minor docs fixes.
1226 === release 0.10.6 ===
1228 2006-05-14 Jan Schmidt <thaytan@mad.scientist.com>
1230 * configure.ac:
1231 releasing 0.10.6, "Take the cannoli"
1233 2006-05-13 Tim-Philipp Müller <tim at centricular dot net>
1235 * tools/gst-launch.c: (print_tag):
1236 Fix use of uninitialized variable in the hypothetical
1237 case that some broken plugin creates a GST_TAG_IMAGE
1238 tag containing a NULL buffer (#341667).
1240 2006-05-12 Tim-Philipp Müller <tim at centricular dot net>
1242 * tools/gst-launch.c: (print_tag):
1243 Print something more intelligible for image tags when
1244 using the -t switch (#341556).
1246 2006-05-12 Thomas Vander Stichele <thomas at apestaart dot org>
1248 * Makefile.am:
1249 updates for win32
1250 * configure.ac:
1251 define GST_MAJORMINOR so we have it available in win32/common/config.h
1252 Possibly remove it from our Makefile.am files later
1253 * win32/common/config.h:
1254 * win32/common/config.h.in:
1255 added GST_MAJORMINOR
1256 * win32/common/gstenumtypes.c: (register_gst_resource_error):
1257 * win32/common/gstversion.h:
1258 updated
1260 2006-05-12 Sebastien Moutte <sebastien@moutte.net>
1262 * win32/MANIFEST:
1263 Update win32 files listing.
1264 * win32/common/gstversion.h:
1265 Add GST_MAJORMINOR definition.
1266 * win32/common/libgstreamer.def:
1267 Add new exported functions.
1269 2006-05-12 Michael Smith <msmith@fluendo.com>
1271 * gst/gstplugin.c: (gst_plugin_load_file):
1272 If an so file has no plugin entry point, unload the module.
1274 2006-05-11 Wim Taymans <wim@fluendo.com>
1276 * plugins/elements/gstqueue.c: (gst_queue_chain), (gst_queue_loop),
1277 (gst_queue_set_property):
1278 Don't forget to signal the _chain or _loop function
1279 when the queue size or thresholds change since that might
1280 cause them to make progres again.
1282 2006-05-11 Stefan Kost <ensonic@users.sf.net>
1284 * gst/gstclock.c: (gst_clock_class_init):
1285 * gst/gstindex.c: (gst_index_class_init):
1286 * gst/gstobject.c: (gst_object_class_init):
1287 * gst/gstpad.c: (gst_pad_class_init):
1288 * gst/gstpipeline.c: (gst_pipeline_class_init):
1289 * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init):
1290 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init):
1291 * libs/gst/base/gstbasetransform.c:
1292 (gst_base_transform_class_init):
1293 * libs/gst/net/gstnetclientclock.c:
1294 (gst_net_client_clock_class_init):
1295 * libs/gst/net/gstnettimeprovider.c:
1296 (gst_net_time_provider_class_init):
1297 * plugins/elements/gstcapsfilter.c: (gst_capsfilter_class_init):
1298 * plugins/elements/gstfakesink.c: (gst_fake_sink_class_init):
1299 * plugins/elements/gstfakesrc.c: (gst_fake_src_class_init):
1300 * plugins/elements/gstfdsink.c: (gst_fd_sink_class_init):
1301 * plugins/elements/gstfdsrc.c: (gst_fd_src_class_init):
1302 * plugins/elements/gstfilesink.c: (gst_file_sink_class_init):
1303 * plugins/elements/gstfilesrc.c: (gst_file_src_class_init):
1304 * plugins/elements/gstidentity.c: (gst_identity_class_init):
1305 * plugins/elements/gsttee.c: (gst_tee_class_init):
1306 * tests/old/examples/plugins/example.c: (gst_example_class_init):
1307 * tests/old/testsuite/threads/signals.c: (gst_test_class_init):
1308 G_OBJECT_CLASS macro usage batch cleanup, fixes #337747 for core
1310 2006-05-11 Wim Taymans <wim@fluendo.com>
1312 * gst/gstbuffer.c: (_gst_buffer_initialize):
1313 Register subbufer along with the buffer type so that
1314 it does not accidentally gets registered from N
1315 different streaming threads in a non threadsafe way.
1317 2006-05-10 Tim-Philipp Müller <tim at centricular dot net>
1319 * gst/gstbuffer.h:
1320 * gst/gstevent.h:
1321 * gst/gstmessage.h:
1322 Make gtk-doc generate docs for our inlined gst_buffer_ref(),
1323 gst_event_ref() and gst_message_ref() functions again
1324 (ugly hack, please do fix if there's a better way besides
1325 overrides.txt, which doesn't seem to work).
1327 2006-05-10 Thomas Vander Stichele <thomas at apestaart dot org>
1329 * libs/gst/check/gstcheck.h:
1330 add an assert for setting state to avoid lots of repetitive code
1331 in the future
1333 2006-05-10 Thomas Vander Stichele <thomas at apestaart dot org>
1335 * gst/gstvalue.c: (gst_value_serialize_flags):
1336 fix a leak if no flags are set
1337 * tests/check/gst/gstvalue.c: (GST_START_TEST):
1338 fix leak in tests
1340 2006-05-10 Tim-Philipp Müller <tim at centricular dot net>
1342 * docs/manual/basics-pads.xml:
1343 Expand a bit on caps and filtered links and update
1344 examples that were still using the no longer existing
1345 gst_pad_link_filtered() (#338206).
1347 2006-05-10 Wim Taymans <wim@fluendo.com>
1349 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_finalize),
1350 (gst_collect_pads_add_pad), (gst_collect_pads_remove_pad),
1351 (gst_collect_pads_set_flushing), (gst_collect_pads_start),
1352 (gst_collect_pads_stop):
1353 * libs/gst/base/gstcollectpads.h:
1354 No need to call _stop in _finalize.
1355 Iterate the main pad list in _finalize.
1356 Added some more debug.
1357 Free lists and data in the right order.
1358 Also free data whem doing _remove_pad when stopped for
1359 backward compatibility protect ::started with PAD_LOCK as
1360 well.
1362 2006-05-10 Thomas Vander Stichele <thomas at apestaart dot org>
1364 * gst/gststructure.c: (gst_structure_gtype_from_abbr),
1365 (gst_structure_parse_value):
1366 add some comments
1367 rename a method so that it actually says what it does better
1369 2006-05-10 Thomas Vander Stichele <thomas at apestaart dot org>
1371 * gst/gstevent.c: (_gst_event_initialize):
1372 * gst/gstformat.c: (_gst_format_initialize):
1373 make sure some essential types used by events are registered
1374 as part of gst_init()
1375 * gst/gstvalue.c: (gst_value_serialize_flags):
1376 if no flags are set, serialize them to a value that represents NONE
1377 so that deserializing them works
1378 * tests/check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
1379 add tests for serialization and deserialization of flags
1381 2006-05-10 Wim Taymans <wim@fluendo.com>
1383 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_collect),
1384 (gst_collect_pads_collect_range), (gst_collect_pads_available),
1385 (gst_collect_pads_check_pads), (gst_collect_pads_check_collected),
1386 (gst_collect_pads_event), (gst_collect_pads_chain):
1387 Update docs.
1388 Better debug info.
1389 Catch and return errors from the collect function
1390 Refuse data on eos pads.
1392 2006-05-10 Edward Hervey <edward@fluendo.com>
1394 * gst/gstinterface.h:
1395 GST_IMPLEMENTS_INTERFACE and GST_IS_IMPLEMENTS_INTERFACE use the normal
1396 GInterface type checking.
1397 They were previously using non-defined macros.
1399 2006-05-09 Wim Taymans <wim@fluendo.com>
1401 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_init),
1402 (gst_collect_pads_finalize), (gst_collect_pads_add_pad),
1403 (gst_collect_pads_remove_pad), (gst_collect_pads_set_flushing),
1404 (gst_collect_pads_start), (gst_collect_pads_stop),
1405 (gst_collect_pads_peek), (gst_collect_pads_pop),
1406 (gst_collect_pads_available), (gst_collect_pads_read),
1407 (gst_collect_pads_flush), (gst_collect_pads_check_pads),
1408 (gst_collect_pads_is_collected), (gst_collect_pads_event),
1409 (gst_collect_pads_chain):
1410 * libs/gst/base/gstcollectpads.h:
1411 Clean up the mess that is collectpads, add comments and
1412 FIXMEs where needed.
1413 Maintain a separate pad list so we can add pads while
1414 collecting the other ones. For this we need a new separate
1415 lock (see comics).
1416 Fix memory leak in finalize.
1417 Refactor some weird code to set/unset pad flushing flags, mark
1418 with comments.
1419 Don't crash in _available, _read, _flush when we're EOS.
1421 * tests/check/libs/.cvsignore:
1422 Ignore adapter check binary.
1424 2006-05-09 Tim-Philipp Müller <tim at centricular dot net>
1426 * gst/gstindex.c: (gst_index_resolver_get_type):
1427 * plugins/elements/gstfakesink.c:
1428 (gst_fake_sink_state_error_get_type):
1429 * plugins/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
1430 (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type):
1431 * plugins/elements/gstqueue.c: (queue_leaky_get_type):
1432 Const-ify GEnumValue arrays.
1434 2006-05-09 Tim-Philipp Müller <tim at centricular dot net>
1436 * tests/check/gst/gstbuffer.c: (GST_START_TEST):
1437 Add test case for flags + gst_buffer_make_metadata_writable().
1439 2006-05-09 Tim-Philipp Müller <tim at centricular dot net>
1441 * gst/gstbuffer.c: (gst_buffer_make_metadata_writable):
1442 gst_buffer_make_metadata_writable() should maintain the
1443 buffer flags (those that make sense at least) (see #340859).
1445 2006-05-09 Tim-Philipp Müller <tim at centricular dot net>
1447 * tools/gst-inspect.c:
1448 * tools/gst-launch.c:
1449 * tools/gst-typefind.c:
1450 * tools/gst-xmlinspect.c:
1451 * tools/tools.h:
1452 Fix up includes: need to include stdlib.h in tools.h for exit().
1454 2006-05-09 Tim-Philipp Müller <tim at centricular dot net>
1456 * gst/gsttaglist.c: (_gst_tag_initialize):
1457 * gst/gsttaglist.h:
1458 API: add GST_TAG_IMAGE tag (#340721).
1460 2006-05-08 Wim Taymans <wim@fluendo.com>
1462 * gst/gstquery.c:
1463 Added some docs for the segment query.
1465 2006-05-08 Wim Taymans <wim@fluendo.com>
1467 * libs/gst/base/gstbasesrc.c: (gst_base_src_perform_seek),
1468 (gst_base_src_loop), (gst_base_src_change_state):
1469 Always push non-flushing serialized events in the streaming
1470 thread.
1472 2006-05-08 Thomas Vander Stichele <thomas at apestaart dot org>
1474 * gst/gsterror.c: (_gst_stream_errors_init):
1475 Add a missing error string.
1477 2006-05-08 Jan Schmidt <thaytan@mad.scientist.com>
1479 * libs/gst/base/gstbasesink.c: (gst_base_sink_configure_segment):
1480 Add applied_rate to the debug
1482 * libs/gst/base/gstbasesrc.c: (gst_base_src_perform_seek):
1483 Copy applied_rate into the outgoing NEWSEGMENT event
1485 2006-05-08 Wim Taymans <wim@fluendo.com>
1487 Patch by: Philippe Rouquier <philippero at libertysurf dot fr>
1489 * libs/gst/base/gstbasesink.c: (gst_base_sink_set_flushing),
1490 (gst_base_sink_change_state):
1491 call ::unlock before taking the PREROLL_LOCK so we can safely
1492 handle elements that lock in ::render.
1493 Fixes #340174.
1495 2006-05-08 Edward Hervey <edward@fluendo.com>
1497 * autogen.sh: (CONFIGURE_DEF_OPT):
1498 Darwin's libtoolize is in fact called glibtoolize.
1499 Adding glibtoolize to the list of accepted names for libtoolize.
1501 2006-05-08 Wim Taymans <wim@fluendo.com>
1503 * libs/gst/base/gstbasesrc.c: (gst_base_src_loop):
1504 Unify error handling, don't post an error message
1505 when a push() returns EOS but perform our normal EOS
1506 handling code. Fixes #340772.
1508 2006-05-08 Wim Taymans <wim@fluendo.com>
1510 * docs/design/part-overview.txt:
1511 Make upsteam/downstream concepts more clear.
1512 Give an example of serialized/non-serialized events.
1514 * docs/design/part-events.txt:
1515 * docs/design/part-streams.txt:
1516 Mention applied_rate.
1518 * docs/design/part-trickmodes.txt:
1519 Mention applied rate, flesh out some more use cases.
1521 * gst/gstevent.c: (gst_event_new_new_segment),
1522 (gst_event_parse_new_segment), (gst_event_new_new_segment_full),
1523 (gst_event_parse_new_segment_full), (gst_event_new_tag),
1524 (gst_event_parse_tag), (gst_event_new_buffer_size),
1525 (gst_event_parse_buffer_size), (gst_event_new_qos),
1526 (gst_event_parse_qos), (gst_event_parse_seek),
1527 (gst_event_new_navigation):
1528 * gst/gstevent.h:
1529 Add applied_rate field to NEWSEGMENT event.
1530 API: gst_event_new_new_segment_full()
1531 API: gst_event_parse_new_segment_full()
1533 * gst/gstsegment.c: (gst_segment_init), (gst_segment_set_seek),
1534 (gst_segment_set_newsegment), (gst_segment_set_newsegment_full),
1535 (gst_segment_to_stream_time), (gst_segment_to_running_time):
1536 * gst/gstsegment.h:
1537 Add applied_rate to GstSegment structure.
1538 Make calculation of stream_time and running_time more correct
1539 wrt rate/applied_rate.
1540 Add some more docs.
1541 API: GstSegment::applied_rate field
1542 API: gst_segment_set_newsegment_full();
1544 * libs/gst/base/gstbasesink.c: (gst_base_sink_configure_segment),
1545 (gst_base_sink_get_sync_times), (gst_base_sink_get_position):
1546 * libs/gst/base/gstbasetransform.c:
1547 (gst_base_transform_sink_eventfunc),
1548 (gst_base_transform_handle_buffer):
1549 Parse and use applied_rate in the GstSegment field.
1551 * tests/check/gst/gstevent.c: (GST_START_TEST):
1552 Add check for applied_rate field.
1554 * tests/check/gst/gstsegment.c: (GST_START_TEST),
1555 (gstsegments_suite):
1556 Add more checks for various GstSegment operations.
1558 2006-05-08 Wim Taymans <wim@fluendo.com>
1560 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times),
1561 (gst_base_sink_do_sync), (gst_base_sink_chain_unlocked),
1562 (gst_base_sink_get_position), (gst_base_sink_change_state):
1563 Store the sync time of the buffer end position separatly in a
1564 new variable eos_rtime so we can properly sync the EOS event.
1565 Fixes #340697.
1566 Fix the docs for gst_base_sink_set_qos_enabled().
1567 Don't set segment start to invalid value when we receive a
1568 non TIME newsegment.
1569 get closer to handling position reporting for negative rates
1570 correctly.
1572 2006-05-07 Stefan Kost <ensonic@users.sf.net>
1574 * gst/gstcaps.c:
1575 Docs about how to print caps for debug purposes.
1577 * gst/gstpadtemplate.c: (gst_static_pad_template_get):
1578 use gst_caps_make_writable instead of gst_caps_copy, Fixes #340608
1580 2006-05-07 Stefan Kost <ensonic@users.sf.net>
1582 * gst/gstelement.c:
1583 use full enum names and preprend a '%' in docs strings to make recent
1584 gtk-doc turn that into a link
1586 2006-05-05 Tim-Philipp Müller <tim at centricular dot net>
1588 * docs/manual/basics-bins.xml:
1589 * docs/manual/basics-bus.xml:
1590 * docs/manual/basics-pads.xml:
1591 Some typo fixes, some additions, some clarifications.
1593 2006-05-05 Tim-Philipp Müller <tim at centricular dot net>
1595 * tools/gst-inspect.c: (main):
1596 * tools/gst-launch.c: (main):
1597 * tools/gst-run.c: (main):
1598 * tools/gst-typefind.c: (main):
1599 * tools/gst-xmlinspect.c: (main):
1600 Use the string passed to g_option_context_new() for
1601 what it's intended for - the program name is already
1602 printed elsewhere.
1604 2006-05-05 Tim-Philipp Müller <tim at centricular dot net>
1606 * tools/Makefile.am:
1607 * tools/gst-inspect.c: (main):
1608 * tools/gst-launch.c: (main):
1609 * tools/gst-xmlinspect.c: (main):
1610 * tools/tools.h:
1611 Add back --version command line option (#340460).
1613 * tools/gst-typefind.c: (have_type_handler), (typefind_file), (main):
1614 Add --version option and use GOption for argument parsing; refactor a
1615 bit; accept directories as arguments and recurse into them; lastly,
1616 print a decent error message when things go wrong.
1618 2006-05-05 Maciej Katafiasz <mathrick@freedesktop.org>
1620 * docs/manual/basics-bins.xml:
1621 Don't mention GstThread (#340611)
1622 * docs/manual/basics-elements.xml:
1623 Update link to GObject tutorial (#340607)
1625 2006-05-05 Wim Taymans <wim@fluendo.com>
1627 * gst/gstbuffer.h:
1628 * gst/gstminiobject.c:
1629 Add note about refcounting and miniobject/buffer writeability
1630 to docs. Fixes #340604
1632 * gst/gstelementfactory.h:
1633 Added some explanation about @klass.
1635 2006-05-05 Maciej Katafiasz <mathrick@freedesktop.org>
1637 * docs/manual/intro-motivation.xml:
1638 * docs/manual/manual.xml:
1639 Avoid CORBA & Bonobo references (#340598)
1641 2006-05-05 Maciej Katafiasz <mathrick@freedesktop.org>
1643 * docs/manual/basics-bus.xml:
1644 * docs/manual/basics-pads.xml:
1645 Fix up some inaccuracies and omissions (#340609)
1647 2006-05-05 Maciej Katafiasz <mathrick@freedesktop.org>
1649 * gst/gstghostpad.c:
1650 Small typo in docs (#340625)
1652 2006-05-05 Tim-Philipp Müller <tim at centricular dot net>
1654 * gst/parse/Makefile.am:
1655 Make 'make -j' proof (see #340698).
1657 2006-05-05 Tim-Philipp Müller <tim at centricular dot net>
1659 * configure.ac:
1660 Require GLib-2.8 here as well.
1662 2006-05-05 Wim Taymans <wim@fluendo.com>
1664 * gst/glib-compat.c:
1665 * gst/gst.c: (init_pre):
1666 * gst/gstobject.c: (gst_object_init), (gst_object_ref),
1667 (gst_object_unref), (gst_object_replace), (gst_object_dispose),
1668 (gst_object_dispatch_properties_changed):
1669 * gst/gstobject.h:
1670 * gst/gstregistryxml.c: (gst_registry_xml_read_cache):
1671 * gst/gststructure.c: (gst_structure_set_valist):
1672 * gst/gstvalue.c: (gst_date_get_type), (_gst_value_initialize):
1673 Remove pre glib2.8 compatibility, fixes #340508
1675 2006-05-04 Tim-Philipp Müller <tim at centricular dot net>
1677 * gst/gsttaglist.h:
1678 Mention type of tags in doc blurbs.
1680 2006-05-04 Jan Schmidt <thaytan@mad.scientist.com>
1682 * gst/gstpad.c: (gst_pad_init), (gst_pad_configure_sink),
1683 (gst_pad_configure_src), (gst_pad_push):
1684 Restore acceptcaps checking behaviour now that good plugins have
1685 been released.
1687 2006-05-04 Tim-Philipp Müller <tim at centricular dot net>
1689 Patch by: James Andrewartha <trs80 at tartarus uwa edu au>
1691 * gst/gst.c:
1692 * gst/gstbus.c:
1693 * gst/gstclock.c:
1694 * gst/gstevent.c:
1695 * gst/gstformat.c:
1696 * gst/gstmessage.c:
1697 * gst/gstparse.c:
1698 * gst/gstquery.c:
1699 * gst/gstutils.c:
1700 * gst/parse/Makefile.am:
1701 * libs/gst/base/gstadapter.c:
1702 * libs/gst/base/gstbasesrc.c:
1703 * libs/gst/base/gstpushsrc.c:
1704 * libs/gst/base/gsttypefindhelper.c:
1705 * plugins/elements/gstfakesrc.c:
1706 * plugins/elements/gstidentity.c:
1707 Make sure gstprivate.h and/or config.h are
1708 always included first, otherwise some of our
1709 defines (like _FILE_OFFSET_BITS) might be
1710 redefined in the system headers. Fixes build
1711 on opensolaris (#340016).
1713 2006-05-04 Wim Taymans <wim@fluendo.com>
1715 * docs/libs/gstreamer-libs-sections.txt:
1716 API: addition: gst_adapter_take_buffer()
1718 * libs/gst/base/gstadapter.c: (gst_adapter_push),
1719 (gst_adapter_peek), (gst_adapter_take), (gst_adapter_take_buffer),
1720 (gst_adapter_available_fast):
1721 * libs/gst/base/gstadapter.h:
1722 Prepare for optimizing the hell out of this hugely inefficient
1723 piece of code.
1724 Added gst_adapter_take_buffer() so we can at least start thinking
1725 about subbuffering and merging.
1726 Added some comments.
1728 * tests/check/Makefile.am:
1729 * tests/check/libs/adapter.c: (GST_START_TEST),
1730 (gst_adapter_suite), (main):
1731 Added GstAdapter check.
1733 2006-05-04 Wim Taymans <wim@fluendo.com>
1735 * docs/design/part-overview.txt:
1736 Fix some typos, add blurb about buffer flags.
1738 2006-05-03 Thomas Vander Stichele <thomas at apestaart dot org>
1740 * docs/libs/gstreamer-libs-sections.txt:
1741 make sure GstBaseTransformClass shows up in the docs
1742 * libs/gst/base/gstbasetransform.c:
1743 * libs/gst/base/gstbasetransform.h:
1744 move docs so gtk-doc picks it up now
1746 2006-05-02 Stefan Kost <ensonic@users.sf.net>
1748 * docs/libs/gstreamer-libs-sections.txt:
1749 add missing symbols to docs
1751 2006-05-02 Stefan Kost <ensonic@users.sf.net>
1753 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_event):
1754 back out the newsegment handling change, see #340060 for ongoing
1755 discussion
1757 2006-04-30 Tim-Philipp Müller <tim at centricular dot net>
1759 * tools/gst-run.c: (get_candidates), (main):
1760 Fix wrong g_file_test() usage (see glib docs for why it doesn't
1761 work); fix typo in error message. Fixes #340079.
1763 2006-04-29 Thomas Vander Stichele <thomas at apestaart dot org>
1765 * common/Makefile.am:
1766 * docs/Makefile.am:
1767 * docs/faq/Makefile.am:
1768 * docs/gst/Makefile.am:
1769 * docs/libs/Makefile.am:
1770 * docs/manual/Makefile.am:
1771 * docs/plugins/Makefile.am:
1772 * docs/pwg/Makefile.am:
1773 * docs/slides/Makefile.am:
1774 * docs/upload.mak:
1775 * common/upload.mak:
1776 move upload.mak to common
1778 2006-04-29 Thomas Vander Stichele <thomas at apestaart dot org>
1780 * tests/check/gst/gstghostpad.c: (GST_START_TEST):
1781 add more asserts on refcounts
1782 do more cleanup at end of tests
1783 fix test leaks showing in FC5
1785 2006-04-29 Stefan Kost <ensonic@users.sf.net>
1787 * plugins/elements/gsttypefindelement.c:
1788 (gst_type_find_element_handle_event):
1789 reverted wrong change and reflowed code to avoid others falling into
1790 this trap
1792 2006-04-28 Stefan Kost <ensonic@users.sf.net>
1794 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_event):
1795 fix changelog entry about last collectpads change,
1796 add notes about proper fix
1798 2006-04-28 Stefan Kost <ensonic@users.sf.net>
1800 * gst/gst.c:
1801 * gst/gstregistry.c: (gst_registry_scan_path_level),
1802 (gst_registry_scan_path):
1803 * gst/gstregistry.h:
1804 only write out registry if it has changed, fixes #338339
1806 2006-04-28 Stefan Kost <ensonic@users.sf.net>
1808 * gst/gstbin.c:
1809 * gst/gstpipeline.c:
1810 * plugins/elements/gstcapsfilter.c:
1811 * plugins/elements/gstfakesink.c:
1812 * plugins/elements/gstfakesrc.c:
1813 * plugins/elements/gstfdsink.c:
1814 * plugins/elements/gstfdsrc.c:
1815 * plugins/elements/gstfilesink.c:
1816 * plugins/elements/gstfilesrc.c:
1817 * plugins/elements/gstidentity.c:
1818 * plugins/elements/gstqueue.c:
1819 * plugins/elements/gsttee.c:
1820 * plugins/elements/gsttypefindelement.c:
1821 (gst_type_find_element_handle_event):
1822 make GstElementDetails const
1824 2006-04-28 Stefan Kost <ensonic@users.sf.net>
1826 * libs/gst/base/gstbasesink.c: (gst_base_sink_event):
1827 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_base_init),
1828 (gst_collect_pads_is_collected), (gst_collect_pads_event):
1829 more detailed debug and formatting cleanup,
1830 forward newsegments to src-pad (so that e.g. adder not eats them)
1832 2006-04-28 Stefan Kost <ensonic@users.sf.net>
1834 * gst/gstutils.c: (gst_element_link_pads):
1835 cleanup double code
1837 2006-04-28 Stefan Kost <ensonic@users.sf.net>
1839 * libs/gst/controller/gstcontroller.c:
1840 (gst_controller_sync_values):
1841 some little tuning
1842 * tests/check/libs/controller.c: (GST_START_TEST),
1843 (gst_controller_suite):
1844 a new test for live value handling
1846 2006-04-28 Wim Taymans <wim@fluendo.com>
1848 * gst/gstutils.c: (push_and_ref):
1849 Added some more docs.
1850 Fix refcount issue whith gst_element_found_tags() helper
1851 function. Fixes #338335
1853 * tests/check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
1854 Added testsuite for gst_element_found_tags().
1856 2006-04-28 Michael Smith <msmith@fluendo.com>
1858 * gst/gstvalue.c: (gst_value_serialize_flags):
1859 Avoid NULL dereference when trying to serialize flags containing
1860 invalid values.
1862 2006-04-28 Michael Smith <msmith@fluendo.com>
1864 * plugins/elements/gsttypefindelement.c:
1865 (gst_type_find_element_handle_event):
1866 If we get EOS before any data is accumulated, don't use
1867 uninitialised local variables.
1869 2006-04-28 Michael Smith <msmith@fluendo.com>
1871 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
1872 (gst_dp_event_from_packet):
1873 Fixes in reading/writing events over GDP (not currently used?) -
1874 dereferencing NULL events for unknown/invalid event types, memory
1875 leak, and change g_warning to GST_WARNING.
1877 2006-04-28 Wim Taymans <wim@fluendo.com>
1879 * libs/gst/base/gstbasesink.c: (gst_base_sink_is_too_late),
1880 (gst_base_sink_do_render_stats), (gst_base_sink_render_object),
1881 (gst_base_sink_get_position), (gst_base_sink_change_state):
1882 When frame dropping is enabled, we should not ignore frames
1883 without a duration.
1884 Update some documentation.
1886 2006-04-28 Wim Taymans <wim@fluendo.com>
1888 * libs/gst/base/gstbasesrc.c: (gst_base_src_perform_seek),
1889 (gst_base_src_send_event), (gst_base_src_change_state):
1890 Documentation updates.
1892 2006-04-28 Wim Taymans <wim@fluendo.com>
1894 * plugins/elements/gstfdsink.c: (gst_fd_sink_render),
1895 (gst_fd_sink_check_fd), (gst_fd_sink_update_fd):
1896 handle EAGAIN, EINTR and short writes correctly. Also clean
1897 up some error cases, avoid a deadlock on bad file descriptors and
1898 use GST_DEBUG_OBJECT.
1899 Fixes #339843
1901 2006-04-28 Wim Taymans <wim@fluendo.com>
1903 * gst/gstvalue.c: (gst_value_serialize_buffer),
1904 (gst_value_deserialize_buffer):
1905 Don't try to serialize a GValue with a NULL buffer.
1906 Fixes #339821.
1908 * tests/check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
1909 Added check for serialisation of NULL buffers.
1911 2006-04-28 Wim Taymans <wim@fluendo.com>
1913 * gst/gstminiobject.c: (gst_value_take_mini_object):
1914 Taking a NULL miniobject is valid, fix the case where
1915 we try to unref the NULL miniobject.
1917 2006-04-28 Wim Taymans <wim@fluendo.com>
1919 Patch by: Stefan Kost <ensonic at sonicpulse dot de>
1921 * gst/gstbin.c: (gst_bin_handle_message_func):
1922 Update docs.
1923 Don't leak bin refcount when a state recalc is
1924 in progress and we delay another one #339808.
1926 2006-04-28 Wim Taymans <wim@fluendo.com>
1928 * docs/design/part-TODO.txt:
1929 Mention QoS as an ongoing work item.
1931 * docs/design/part-buffering.txt:
1932 New doc about buffering that needs to be fleshed out
1933 at some point.
1935 * docs/design/part-qos.txt:
1936 More QoS policy for decoders/demuxers/transforms
1938 * docs/design/part-trickmodes.txt:
1939 Small update.
1941 2006-04-28 Thomas Vander Stichele <thomas at apestaart dot org>
1943 * configure.ac:
1944 back to HEAD
1946 === release 0.10.5 ===
1948 2006-04-28 Thomas Vander Stichele <thomas at apestaart dot org>
1950 * configure.ac:
1951 releasing 0.10.5, "Fogo"
1953 2006-04-22 Thomas Vander Stichele <thomas at apestaart dot org>
1955 patch by: Wim Taymans
1957 * gst/gstpad.c: (gst_pad_init), (gst_pad_configure_sink),
1958 (gst_pad_configure_src), (gst_pad_push):
1959 * gst/gstpipeline.c: (gst_pipeline_init):
1960 Fix internal data flow errors. Fixes #338711.
1962 2006-04-12 Wim Taymans <wim@fluendo.com>
1964 * tests/check/gst/gstelement.c: (GST_START_TEST):
1965 Don't leak the factory.
1967 2006-04-12 Thomas Vander Stichele <thomas at apestaart dot org>
1969 * configure.ac:
1970 * win32/common/config.h:
1971 prerelease
1973 2006-04-12 Tim-Philipp Müller <tim at centricular dot net>
1975 * libs/gst/controller/gstcontroller.c: (gst_controller_unset),
1976 (gst_controller_unset_all):
1977 Free allocated GstTimedValues when freeing list nodes.
1978 Should fix leaks 'make check-valgrind' complains about.
1980 * win32/common/libgstcontroller.def:
1981 Add gst_controller_unset_all.
1983 2006-04-11 Stefan Kost <ensonic@users.sf.net>
1985 * docs/libs/gstreamer-libs-sections.txt:
1986 * libs/gst/controller/gstcontroller.c: (gst_controller_unset),
1987 (gst_controller_unset_all):
1988 * libs/gst/controller/gstcontroller.h:
1989 API: Added new method gst_controller_unset_all()
1990 fixed gst_controller_unset()
1991 * tests/check/libs/controller.c: (GST_START_TEST),
1992 (gst_controller_suite):
1993 Added two testcases for new and fixed method
1995 2006-04-11 Tim-Philipp Müller <tim at centricular dot net>
1997 * libs/gst/net/gstnettimepacket.c: (gst_net_time_packet_send):
1998 MSG_DONTWAIT is not defined on Cygwin, so work
1999 around that (fixes #317048).
2001 2006-04-11 Wim Taymans <wim@fluendo.com>
2003 * gst/gstelementfactory.c: (gst_element_register),
2004 (gst_element_factory_create), (gst_element_factory_make):
2005 Some cleanups.
2006 Fixed a FIXME.
2007 Updated docs (Fixes #131079)
2009 * gst/gstpluginfeature.c: (gst_plugin_feature_load):
2010 Small cleanups.
2012 * tests/check/gst/gstelement.c: (GST_START_TEST),
2013 (gst_element_suite):
2014 Added testcase for elementfactory class field.
2016 2006-04-10 Wim Taymans <wim@fluendo.com>
2018 * gst/gstsegment.c:
2019 Added some more docs.
2021 * libs/gst/base/gstbasesink.c: (gst_base_sink_perform_qos),
2022 (gst_base_sink_reset_qos):
2023 Calculate more accurate rate values.
2025 2006-04-09 Sebastien Moutte <sebastien@moutte.net>
2027 * gst/gst_private.h:
2028 add a new #ifdef to use __declspec(dllimport) only for
2029 other modules and not for gstreamer core
2030 * gst/gstbasesink.c: (gst_base_sink_perform_qos):
2031 use gst_guint64_to_gdouble for conversion
2032 * win32/common/libgstreamer.def:
2033 add new exported functions
2034 * win32/vs6/gst_inspect.dsp:
2035 * win32/vs6/gst_launch.dsp:
2036 * win32/vs6/libgstbase.dsp:
2037 * win32/vs6/libgstcontroller.dsp:
2038 * win32/vs6/libgstcoreelements.dsp:
2039 * win32/vs6/libgstdataprotocol.dsp:
2040 * win32/vs6/libgstnet.dsp:
2041 update project files
2043 2006-04-08 Stefan Kost <ensonic@users.sf.net>
2045 * gst/gstbuffer.c: (gst_subbuffer_class_init):
2046 * gst/gstclock.c: (gst_clock_class_init):
2047 * gst/gstelement.c: (gst_element_class_init):
2048 * gst/gstindex.c: (gst_index_class_init):
2049 * gst/gstindexfactory.c: (gst_index_factory_class_init):
2050 * gst/gstobject.c: (gst_object_class_init),
2051 (gst_signal_object_class_init):
2052 * gst/gstpad.c: (gst_pad_class_init):
2053 * gst/gstpadtemplate.c: (gst_pad_template_class_init):
2054 * gst/gstpluginfeature.c: (gst_plugin_feature_class_init):
2055 * gst/gstregistry.c: (gst_registry_class_init):
2056 * gst/gstsystemclock.c: (gst_system_clock_class_init):
2057 * gst/gsttask.c: (gst_task_class_init):
2058 * gst/gstxml.c: (gst_xml_class_init):
2059 * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init):
2060 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
2061 (gst_base_src_loop):
2062 * libs/gst/controller/gstcontroller.c:/
2063 (_gst_controller_class_init):
2064 * plugins/elements/gstfdsrc.c: (gst_fd_src_class_init):
2065 * plugins/indexers/gstfileindex.c: (gst_file_index_class_init):
2066 * plugins/indexers/gstmemindex.c: (gst_mem_index_class_init):
2067 * tests/old/examples/plugins/example.c: (gst_example_class_init):
2068 * tests/old/testsuite/threads/signals.c: (gst_test_class_init):
2069 Fix #337365 (g_type_class_ref <-> g_type_class_peek_parent)
2071 2006-04-08 Tim-Philipp Müller <tim at centricular dot net>
2073 * gst/gstpad.c: (gst_pad_link):
2074 Must set peer pads before calling the link function, otherwise
2075 a task started from a link function might get a flow-not-linked
2076 result when trying to push because the other thread where the
2077 linking happens hasn't had a chance to set the peers yet. This
2078 might happen for example when a queue gets linked to a downstream
2079 element, as queue starts a streaming task when its source pad
2080 gets linked. Happens in real life when playing back flac/musepack
2081 files in playbin (#332390).
2083 2006-04-08 Stefan Kost <ensonic@users.sf.net>
2085 * gst/gstindex.h:
2086 * gst/gstxml.h:
2087 * libs/gst/base/gstadapter.h:
2088 * libs/gst/base/gstbasesink.h:
2089 * libs/gst/base/gstbasesrc.h:
2090 * libs/gst/base/gstbasetransform.h:
2091 * libs/gst/base/gstcollectpads.h:
2092 * libs/gst/base/gstpushsrc.h:
2093 Fix broken GObject macros
2095 2006-04-07 Wim Taymans <wim@fluendo.com>
2097 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times):
2098 Initialize start and stop times, thanks valgrind.
2100 2006-04-07 Wim Taymans <wim@fluendo.com>
2102 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times):
2103 Be a bit nicer to badly behaving upstream elements that expect
2104 us to deal with non TIME segments and timestamps (such as fakesrc
2105 in the testsuite).
2107 2006-04-07 Wim Taymans <wim@fluendo.com>
2109 * gst/gstbus.c:
2110 Small documentation clarification about the signal watch.
2112 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times),
2113 (gst_base_sink_wait_clock), (gst_base_sink_do_sync),
2114 (gst_base_sink_perform_qos), (gst_base_sink_reset_qos),
2115 (gst_base_sink_do_render_stats), (gst_base_sink_render_object),
2116 (gst_base_sink_get_position_last),
2117 (gst_base_sink_get_position_paused), (gst_base_sink_change_state):
2118 Convert and store timestamps in stream time and running time, the
2119 raw timestamps are not usefull, also document this better.
2120 Use different window sizes for good and bad QoS observations so
2121 we react to badness a little quicker.
2122 Keep track of the amount of rendered and dropped buffers.
2123 Send QoS timestamps in running time.
2125 * libs/gst/base/gstbasetransform.c:
2126 (gst_base_transform_sink_eventfunc),
2127 (gst_base_transform_handle_buffer):
2128 Compare QoS timestamps against running time.
2130 2006-04-06 Tim-Philipp Müller <tim at centricular dot net>
2132 * gst/gstpad.c:
2133 Typo fixes in docs.
2135 2006-04-06 Michael Smith <msmith@fluendo.com>
2137 * gst/gstpad.c: (gst_pad_set_property):
2138 Use g_value_get_object() instead of g_value_dup_gst_object(),
2139 to avoid double-reffing the pad template (which we then sink,
2140 so this worked previously if (and only if) the pad template
2141 was floating.
2143 * gst/gstpadtemplate.c: (gst_pad_template_init),
2144 (gst_pad_template_pad_created):
2145 Never return floating references to pad templates, create
2146 them as initially-sunken.
2148 Document an extra function (and make this stop sinking our
2149 pad template, since that is now guaranteed to do nothing,
2150 since we created it sunken).
2152 * gst/gstghostpad.c:
2153 Fix docs typo.
2155 2006-04-06 Tim-Philipp Müller <tim at centricular dot net>
2157 * gst/gstinfo.c: (__gst_in_valgrind):
2158 Add some newlines.
2160 * plugins/elements/gsttypefindelement.c:
2161 (gst_type_find_element_chain):
2162 Don't leak buffer caps.
2164 2006-04-06 Michael Smith <msmith@fluendo.com>
2166 * gst/parse/grammar.y:
2167 Fix a leak in parse-launch for any source-or-sink named element
2168 references used.
2170 * tests/check/pipelines/parse-launch.c: (expected_fail_pipe):
2171 Unref the pipeline if it exists after we've failed parsing.
2173 2006-04-05 Michael Smith <msmith@fluendo.com>
2175 * gst/gstpipeline.c: (gst_pipeline_init):
2176 When we create a pipeline bus, initially create it in flushing mode.
2177 Fixes leaks in at least one test, and makes a new pipeline work the
2178 same as one that has gone to READY and then back to NULL.
2180 * gst/gstelement.c:
2181 Typo fix in docs.
2183 2006-04-05 Michael Smith <msmith@fluendo.com>
2185 * tests/check/gst/gstghostpad.c: (GST_START_TEST):
2186 Unref a pad we reffed.
2187 * tests/check/gst/gstutils.c: (GST_START_TEST):
2188 Unref bins
2190 2006-04-05 Michael Smith <msmith@fluendo.com>
2192 * gst/gstquery.c: (gst_query_set_formats),
2193 (gst_query_set_formatsv):
2194 Fix leaking GValues in queries, as shown by valgrind/testsuite.
2196 2006-04-05 Michael Smith <msmith@fluendo.com>
2198 * tests/check/generic/sinks.c: (GST_START_TEST):
2199 Fix a variety of memleaks in sinks check, which are only sometimes
2200 shown by running the tests under valgrind (weird?).
2202 2006-04-05 Jan Schmidt <thaytan@mad.scientist.com>
2204 * docs/version.entities.in:
2205 Fix the substituted entity name after thomas' changes on the
2206 weekend.
2208 2006-04-05 Zaheer Abbas Merali <zaheerabbas at merali dot org>
2210 * gst/gstinfo.c: (__gst_in_valgrind): Use printf instead of
2211 VALGRIND_PRINTF
2213 2006-04-05 Andy Wingo <wingo@pobox.com>
2215 * gst/gstpad.c (gst_pad_set_blocked_async): More debug.
2217 * libs/gst/base/gstbasetransform.c
2218 (gst_base_transform_sink_eventfunc): When resetting our segment on
2219 FLUSH_STOP, also update the flag saying we haven't seen a
2220 newsegment.
2222 2006-04-04 Tim-Philipp Müller <tim at centricular dot net>
2224 Patch by: Paolo Borelli <pborelli at katamail dot com>
2226 * gst/gstplugin.c: (gst_plugin_finalize), (gst_plugin_class_init),
2227 (gst_plugin_check_license):
2228 minor clean-ups: G_DEFINE_TYPE already takes care of the
2229 parent_class stuff, no need to do it twice. Mark array of
2230 license strings as constant. (#337103)
2232 2006-04-04 Michael Smith <msmith@fluendo.com>
2234 * tools/gst-inspect.c: (print_element_list):
2235 Free the right plugin list; fixes a memory leak.
2237 2006-04-04 Tim-Philipp Müller <tim at centricular dot net>
2239 Patch by: Mark Nauwelaerts <manauw at skynet dot be>
2241 * plugins/elements/gstfilesink.c: (gst_file_sink_render):
2242 Don't error out on empty buffers (#336945).
2244 2006-04-04 Jan Schmidt <thaytan@mad.scientist.com>
2246 * docs/libs/gstreamer-libs-sections.txt:
2247 * gst/gsttaglist.c:
2248 * libs/gst/base/gstbasesink.c:
2249 * libs/gst/base/gstbasesink.h:
2250 * libs/gst/base/gstbasesrc.c:
2251 * libs/gst/base/gstbasesrc.h:
2252 Documentation updates. Make BaseSink and BaseSrc docs contain the
2253 class structure so that people can actually see the prototypes for
2254 virtual functions they're supposed to be overriding.
2256 2006-04-04 Tim-Philipp Müller <tim at centricular dot net>
2258 * plugins/elements/gsttypefindelement.c:
2259 (gst_type_find_element_chain):
2260 More debug info; when skipping typefinding, send cached
2261 events in all cases.
2263 2006-04-01 Thomas Vander Stichele <thomas at apestaart dot org>
2265 * configure.ac:
2266 use new AS_VERSION and AS_NANO macros
2267 * gst/gst-i18n-lib.h:
2268 * gst/gst.c:
2269 * gst/gsterror.c:
2270 * gst/gstversion.h.in:
2271 * win32/common/config.h:
2272 * win32/common/config.h.in:
2273 update accordingly
2275 2006-03-31 Michael Smith <msmith@fluendo.com>
2277 * plugins/elements/gsttypefindelement.c:
2278 (gst_type_find_element_chain):
2279 Do not typefind content if the buffers already have caps.
2280 Neccesary for icydemux (#333657), and the right thing to do anyway.
2282 2006-03-30 Wim Taymans <wim@fluendo.com>
2284 * libs/gst/base/gstbasesink.c: (gst_base_sink_init),
2285 (gst_base_sink_finalize), (gst_base_sink_set_qos_enabled),
2286 (gst_base_sink_is_qos_enabled), (gst_base_sink_do_sync),
2287 (gst_base_sink_record_qos_observation),
2288 (gst_base_sink_perform_qos), (gst_base_sink_reset_qos),
2289 (gst_base_sink_is_too_late), (gst_base_sink_render_object),
2290 (gst_base_sink_change_state):
2291 More QoS measurements as described in the design doc.
2292 Get rid of ringbuffer with observations, running average is
2293 more simple and equally good.
2294 Calculates valid proportion now.
2295 Added beginning of flood measurement.
2297 2006-03-29 Wim Taymans <wim@fluendo.com>
2299 * docs/design/part-qos.txt:
2300 * gst/gstclock.c:
2301 Small documentation updates and additions.
2303 2006-03-29 Wim Taymans <wim@fluendo.com>
2305 * libs/gst/base/gstbasesrc.c: (gst_base_src_finalize),
2306 (gst_base_src_send_event), (gst_base_src_loop),
2307 (gst_base_src_change_state):
2308 Perform the EOS logic when we reach the segment stop position.
2309 Fix compilation on gcc4.1
2311 2006-03-29 Wim Taymans <wim@fluendo.com>
2313 Patch by: Tommi Myöhänen <ext-tommi dot myohanen at nokia dot com>
2315 * plugins/elements/gstqueue.c: (gst_queue_init),
2316 (gst_queue_locked_flush), (gst_queue_handle_sink_event),
2317 (gst_queue_set_property):
2318 * plugins/elements/gstqueue.h:
2319 In queue, when EOS is received, if minimum threshold > max_size -
2320 current_level, there is chance that queue blocks forever in conditional
2321 item del wait. This is because the queue is not emptied completely due
2322 to minimum threshold. Here is another approach. Instead of setting
2323 cur_levels to max in EOS, just zero all minimum threshold levels. This
2324 should make sure that queue gives out all data. When going to READY
2325 (stop) state, just reset the original minimum threshold levels.
2326 Fixes #336336.
2328 2006-03-29 Tim-Philipp Müller <tim at centricular dot net>
2330 * plugins/elements/gsttypefindelement.c: (stop_typefinding),
2331 (gst_type_find_element_handle_event),
2332 (gst_type_find_element_send_cached_events),
2333 (gst_type_find_element_change_state):
2334 * plugins/elements/gsttypefindelement.h:
2335 When typefinding is done in push mode, we should cache
2336 events we receive during typefinding instead of just
2337 dropping them (e.g. newsegment, custom events from
2338 dvdreadsrc etc.) and then send them out once we've
2339 determined the type of the stream (and decodebin
2340 has had a chance to plug in a decoder/demuxer).
2342 2006-03-27 Wim Taymans <wim@fluendo.com>
2344 * docs/design/part-qos.txt:
2345 First QoS ideas.
2347 2006-03-27 Wim Taymans <wim@fluendo.com>
2349 Inspired by a patch of: Lutz Mueller <lutz at topfrose dot de>
2351 * libs/gst/base/gstbasesrc.c: (gst_base_src_finalize),
2352 (gst_base_src_send_event), (gst_base_src_change_state):
2353 Handle element seek correctly when we are streaming.
2354 Fixes #326998.
2356 2006-03-24 Michael Smith <msmith@fluendo.com>
2358 * docs/faq/gst-uninstalled:
2359 Set up LD_LIBRARY_PATH to point at all the gstreamer libs. This will
2360 allow you to correctly run intalled applications built against old
2361 core, using plugins that require updated core (e.g. running
2362 installed totem against a full uninstalled gstreamer stack)
2364 2006-03-24 Stefan Kost <ensonic@users.sf.net>
2366 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_is_collected):
2367 more debug details
2369 2006-03-24 Wim Taymans <wim@fluendo.com>
2371 * docs/gst/gstreamer-sections.txt:
2372 Rearrange the order of the methods so that related methods
2373 are grouped together in sections.
2375 2006-03-24 Stefan Kost <ensonic@users.sf.net>
2377 * gst/gstelement.c:
2378 Little clarification in the docs
2380 2006-03-24 Stefan Kost <ensonic@users.sf.net>
2382 * docs/README:
2383 formatting fix
2384 * plugins/elements/gstidentity.c:
2385 * plugins/elements/gstqueue.c:
2386 * plugins/elements/gsttee.c:
2387 * plugins/elements/gsttypefindelement.c:
2388 GST_ELEMENT_DETAILS formatting
2390 2006-03-24 Wim Taymans <wim@fluendo.com>
2392 * libs/gst/base/gstbasesink.h:
2393 Only add fields, not insert or we break ABI.
2395 2006-03-23 Tim-Philipp Müller <tim at centricular dot net>
2397 * win32/common/libgstbase.def:
2398 * win32/common/libgstreamer.def:
2399 Update, add recently added functions.
2401 2006-03-23 Tim-Philipp Müller <tim at centricular dot net>
2403 * docs/gst/gstreamer-sections.txt:
2404 * gst/gstutils.c: (gst_pad_query_peer_position),
2405 (gst_pad_query_peer_duration), (gst_pad_query_peer_convert):
2406 * gst/gstutils.h:
2407 API: add some new utility functions:
2408 - gst_pad_query_peer_position()
2409 - gst_pad_query_peer_duration()
2410 - gst_pad_query_peer_convert()
2412 2006-03-23 Wim Taymans <wim@fluendo.com>
2414 * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init),
2415 (gst_base_sink_init), (gst_base_sink_finalize),
2416 (gst_base_sink_set_qos_enabled), (gst_base_sink_is_qos_enabled),
2417 (gst_base_sink_set_property), (gst_base_sink_get_property),
2418 (gst_base_sink_commit_state), (gst_base_sink_get_sync_times),
2419 (gst_base_sink_wait_clock), (gst_base_sink_do_sync),
2420 (gst_base_sink_add_qos_observation), (gst_base_sink_send_qos),
2421 (gst_base_sink_perform_qos), (gst_base_sink_reset_qos),
2422 (gst_base_sink_is_too_late), (gst_base_sink_render_object),
2423 (gst_base_sink_preroll_object), (gst_base_sink_event),
2424 (gst_base_sink_chain_unlocked), (gst_base_sink_get_position_last),
2425 (gst_base_sink_get_position_paused), (gst_base_sink_get_position),
2426 (gst_base_sink_query), (gst_base_sink_change_state):
2427 Decouple max-lateness and the fact that QoS messages are generated
2428 with a new property (qos).
2429 added API: GstBaseSink::async_play()
2430 Add vmethod so subclasses can be notified of ASYNC playing
2431 state changes.
2432 Collect timestamp start and stop to report better current
2433 position in EOS/PLAYING/PAUSED/READY/NULL.
2434 Refactor QoS/frame dropping and other measurements.
2435 API: GstBaseSrc::qos
2436 Fixes #326311
2438 * libs/gst/base/gstbasesink.h:
2439 Added Private struct.
2440 API: gst_base_sink_set_qos_enabled()
2441 API: gst_base_sink_is_qos_enabled()
2443 2006-03-23 Tim-Philipp Müller <tim at centricular dot net>
2445 * gst/gstregistryxml.c: (gst_registry_xml_read_cache):
2446 If compiling against GLib-2.8 or newer, try to read the
2447 registry file using GMappedFile first before falling back
2448 to fopen() + fread() (#332151).
2450 2006-03-22 Wim Taymans <wim@fluendo.com>
2452 * gst/gstinfo.c: (gst_debug_set_active),
2453 (gst_debug_category_set_threshold):
2454 Disable debugging unless explicitly activated.
2455 Fixes #335480.
2457 2006-03-22 Wim Taymans <wim@fluendo.com>
2459 * gst/gstelement.c: (gst_element_set_locked_state),
2460 (gst_element_dispose):
2461 Cleanup the error case.
2463 * gst/gstobject.c: (gst_object_dispose):
2464 print a critical when some object was disposed with
2465 a parent, also revive the object since it might
2466 crash the parent.
2468 2006-03-22 Tim-Philipp Müller <tim at centricular dot net>
2470 * tools/gst-launch.1.in:
2471 Fix another typo.
2473 2006-03-21 Thomas Vander Stichele <thomas at apestaart dot org>
2475 * configure.ac:
2476 * tests/check/Makefile.am:
2477 disable some tests when we don't have a registry
2478 * tests/check/gst/gstutils.c: (gst_utils_suite):
2479 don't build the part that needs parsing
2481 2006-03-21 Thomas Vander Stichele <thomas at apestaart dot org>
2483 * gst/Makefile.am
2484 * tests/examples/Makefile.am:
2485 fix --disable-parse build
2487 2006-03-21 Tim-Philipp Müller <tim at centricular dot net>
2489 * tools/gst-feedback.1.in:
2490 Fix typo: s/feeback/feedback/ (#133494).
2492 2006-03-21 Tim-Philipp Müller <tim at centricular dot net>
2494 * tools/Makefile.am:
2495 * tools/gst-launch.1.in:
2496 Add FILES section and correct entry about GST_REGISTRY_PATH
2497 environment variable (#133495; #133494).
2499 2006-03-21 Tim-Philipp Müller <tim at centricular dot net>
2501 * tools/Makefile.am:
2502 * tools/gst-md5sum.1.in:
2503 * tools/gst-md5sum.c:
2504 Remove gst-md5sum and man page (the md5sink element
2505 required was removed ages ago)
2507 2006-03-21 Tim-Philipp Müller <tim at centricular dot net>
2509 * gst/gststructure.c: (gst_structure_id_set_value):
2510 Make sure that string fields in structures/taglists
2511 contain valid UTF-8 - we don't want to pass rubbish to
2512 applications because of a buggy plugin (cp. #334167).
2514 2006-03-21 Edward Hervey <edward@fluendo.com>
2516 * gst/gstbin.c: (gst_bin_dispose), (gst_bin_provide_clock_func),
2517 (gst_bin_handle_message_func):
2518 * gst/gstclock.c: (gst_clock_dispose), (gst_clock_set_master):
2519 * gst/gstelement.c: (gst_element_set_clock), (gst_element_dispose),
2520 (gst_element_set_bus_func):
2521 * gst/gstghostpad.c: (gst_proxy_pad_dispose):
2522 * gst/gstminiobject.c: (gst_value_set_mini_object),
2523 (gst_value_take_mini_object):
2524 * gst/gstpad.c: (gst_pad_set_pad_template):
2525 * gst/gstpipeline.c: (gst_pipeline_dispose),
2526 (gst_pipeline_use_clock), (gst_pipeline_auto_clock):
2527 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_pop),
2528 (gst_collect_pads_chain):
2529 * libs/gst/net/gstnettimeprovider.c:
2530 (gst_net_time_provider_set_property):
2531 Series of fixes for dereferenced pointers that gcc 4.1 complains about.
2532 It's in fact all issues with gst_*object_replace().
2534 2006-03-21 Tim-Philipp Müller <tim at centricular dot net>
2536 Patch by: Loïc Minier <lool + gnome at via dot ecp dot fr>
2538 * pkgconfig/gstreamer-check-uninstalled.pc.in:
2539 * pkgconfig/gstreamer-check.pc.in:
2540 Use @CHECK_LIBS@ here instead of hard-coding -lcheck (#334109).
2542 2006-03-21 Edward Hervey <edward@fluendo.com>
2544 * gst/gstbuffer.h:
2545 * gst/gstevent.h:
2546 * gst/gstmessage.h:
2547 gst_[buffer|event|message]_ref() macros are replaced by a static
2548 inline functions because gcc-4.1 will about if the return value
2549 isn't used.
2550 * tests/check/gst/gstevent.c: (event_probe):
2551 gst_event_ref now has to be given a GstEvent* , fix check accordingly.
2553 2006-03-20 Jan Schmidt <thaytan@mad.scientist.com>
2555 * gst/gstutils.h:
2556 Add G_UNLIKELY to our boilerplate to optimise the 'already registered
2557 the type' case. (Closes: #335195 for now). In the future, when we
2558 depend on GLib 2.10, we could also intern the type name using
2559 g_intern_static_string()
2561 2006-03-20 Wim Taymans <wim@fluendo.com>
2563 * gst/gstbin.c: (gst_bin_handle_message_func),
2564 (bin_query_max_init), (bin_query_position_fold),
2565 (bin_query_position_done), (gst_bin_query):
2566 Position query should also take max of all streams.
2568 2006-03-20 Wim Taymans <wim@fluendo.com>
2570 * plugins/elements/gstfakesrc.c: (gst_fake_src_class_init),
2571 (gst_fake_src_finalize):
2572 Fix leaks in fakesrc.
2574 * tests/check/pipelines/parse-launch.c: (GST_START_TEST):
2575 Fix leaks in the testcase.
2577 2006-03-19 Sebastien Moutte <sebastien@moutte.net>
2579 * gst/gst_private.h:
2580 add win32 specific import decoration(__declspec(dllimport))
2581 for all extern GstDebugCategory * variables
2582 * win32/common/libgstbase.def:
2583 * win32/common/libgstcontroller.def:
2584 * win32/common/libgstreamer.def:
2585 Add some exports, remove empty lines
2586 * win32/common/libgstdataprotocol.def:
2587 * win32/common/libgstdataprotocol.dsp:
2588 * win32/common/libgstnet.def:
2589 * win32/common/libgstnet.dsp:
2590 new project files and exportation files added
2592 2006-03-19 Wim Taymans <wim@fluendo.com>
2594 * tests/check/libs/basesrc.c: (eos_event_counter):
2595 Use proper return value for probe.
2597 2006-03-17 Wim Taymans <wim@fluendo.com>
2599 * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_alloc_buffer_full),
2600 (gst_pad_push):
2601 Don't leak buffers, caps and pads on negotiation errors.
2603 2006-03-16 Stefan Kost <ensonic@users.sf.net>
2605 * docs/faq/cvs.xml:
2606 * docs/faq/dependencies.xml:
2607 * docs/faq/developing.xml:
2608 * docs/faq/faq.xml:
2609 * docs/faq/general.xml:
2610 * docs/faq/getting.xml:
2611 * docs/faq/legal.xml:
2612 * docs/faq/troubleshooting.xml:
2613 * docs/faq/using.xml:
2614 Faq review and update.
2616 2006-03-16 Jan Schmidt <thaytan@mad.scientist.com>
2618 * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_alloc_buffer_full),
2619 (gst_pad_push):
2620 Don't pound the cpu to pieces by checking get_caps when accept_caps
2621 is called with the same caps as the pad already has.
2622 Use GST_DEBUG_OBJECT when outputting caps change information.
2624 2006-03-15 Wim Taymans <wim@fluendo.com>
2626 * gst/gstclock.c: (gst_clock_class_init):
2627 Fix docs.
2629 2006-03-15 Jan Schmidt <thaytan@mad.scientist.com>
2631 * gst/gstbuffer.h:
2632 Documentation fix.
2634 * gst/gstpad.c: (gst_pad_init), (gst_pad_acceptcaps_default),
2635 (gst_pad_accept_caps), (gst_pad_configure_sink),
2636 (gst_pad_configure_src), (gst_pad_chain), (gst_pad_push):
2637 Make the default acceptcaps behaviour be to check the requested
2638 caps against the gst_pad_get_caps output.
2640 Ensure that gst_pad_accept_caps is used to check caps when a pad
2641 doesn't have a setcaps function, so that pads automatically refuse
2642 caps that they don't allow in their pad template. (Fixes #332986)
2644 When a buffer with attached caps is pushed, ensure that the source
2645 pad receives those caps even if the element didn't call
2646 gst_pad_set_caps first.
2648 2006-03-15 Wim Taymans <wim@fluendo.com>
2650 * libs/gst/base/gstadapter.c:
2651 Add some docs.
2653 2006-03-15 Tim-Philipp Müller <tim at centricular dot net>
2655 * win32/common/libgstbase.def:
2656 * win32/common/libgstcontroller.def:
2657 * win32/common/libgstreamer.def:
2658 Add a whole bunch of missing functions (#334434).
2660 2006-03-14 Wim Taymans <wim@fluendo.com>
2662 * libs/gst/base/gstbasesink.c: (gst_base_sink_configure_segment),
2663 (gst_base_sink_get_sync_times), (gst_base_sink_wait_clock),
2664 (gst_base_sink_do_sync), (gst_base_sink_do_qos):
2665 Better debug info when we receive a segment event.
2666 Reorganize a bit so we can pass the get_times() results around.
2667 Use the segment format when calculating the running time.
2668 Don't do QoS is sync is disabled or we have no clock or the
2669 element does not want us to sync to the clock.
2670 Don't drop buffers if QoS is disabled for now.
2672 2006-03-14 Wim Taymans <wim@fluendo.com>
2674 * gst/gstclock.c: (gst_clock_class_init), (do_linear_regression):
2675 Marked the stats property as unimplemented so people don't get
2676 wild ideas.
2677 Add debug message when regression goes wrong.
2678 Added some more docs.
2680 2006-03-14 Wim Taymans <wim@fluendo.com>
2682 * gst/gstsegment.c: (gst_segment_to_stream_time):
2683 Return correct return type in case of errors.
2685 2006-03-14 Wim Taymans <wim@fluendo.com>
2687 * gst/gstformat.c: (gst_format_get_name), (gst_format_to_quark):
2688 Don't segfault on invalid formats.
2690 2006-03-14 Tim-Philipp Müller <tim at centricular dot net>
2692 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times):
2693 Can't use gst_segment_to_running_time() when the segment
2694 is not in GST_TIME_FORMAT (like with filesink, for example).
2695 Stops flac encoding pipelines from spewing critical warnings
2696 at EOS (#331248).
2698 2006-03-14 Tim-Philipp Müller <tim at centricular dot net>
2700 * gst/gstpipeline.c: (gst_pipeline_class_init):
2701 Add 'Since: 0.10.5' to gtk-doc blurb for added property.
2703 * plugins/elements/gsttypefindelement.c:
2704 (gst_type_find_element_handle_event):
2705 Don't try to typefind empty streams.
2707 2006-03-14 Wim Taymans <wim@fluendo.com>
2709 * libs/gst/base/gstbasesink.c: (gst_base_sink_do_sync),
2710 (gst_base_sink_do_qos):
2711 Separate QoS calculation.
2712 Only drop buffers when lateness is bigger than the
2713 duration of the buffer.
2715 2006-03-13 Wim Taymans <wim@fluendo.com>
2717 * gst/gstpipeline.c: (gst_pipeline_set_property),
2718 (gst_pipeline_get_property), (do_pipeline_seek),
2719 (gst_pipeline_change_state), (gst_pipeline_set_delay),
2720 (gst_pipeline_get_delay):
2721 Don't deadlock when reading properties.
2723 2006-03-13 Wim Taymans <wim@fluendo.com>
2725 * libs/gst/base/gstbasetransform.c:
2726 (gst_base_transform_class_init), (gst_base_transform_init),
2727 (gst_base_transform_sink_event),
2728 (gst_base_transform_sink_eventfunc),
2729 (gst_base_transform_src_event), (gst_base_transform_src_eventfunc),
2730 (gst_base_transform_handle_buffer), (gst_base_transform_chain),
2731 (gst_base_transform_set_property),
2732 (gst_base_transform_get_property),
2733 (gst_base_transform_change_state), (gst_base_transform_update_qos),
2734 (gst_base_transform_set_qos_enabled),
2735 (gst_base_transform_is_qos_enabled):
2736 * libs/gst/base/gstbasetransform.h:
2737 Make basetransform virtual method for src events too.
2738 Handle QOS in basetransform.
2739 API: gst_base_transform_update_qos()
2740 API: gst_base_transform_set_qos_enabled()
2741 API: gst_base_transform_is_qos_enabled()
2743 2006-03-13 Wim Taymans <wim@fluendo.com>
2745 * libs/gst/base/gstbasesink.c: (gst_base_sink_init),
2746 (gst_base_sink_do_sync):
2747 Small cleanups.
2748 Use QOS debug category.
2750 2006-03-13 Wim Taymans <wim@fluendo.com>
2752 * plugins/elements/gstqueue.c:
2753 Very small doc update.
2755 2006-03-13 Wim Taymans <wim@fluendo.com>
2757 * gst/gst_private.h:
2758 * gst/gstinfo.c: (_gst_debug_init):
2759 Added QOS debug category
2761 2006-03-13 Wim Taymans <wim@fluendo.com>
2763 * docs/gst/gstreamer-sections.txt:
2764 * gst/gstbin.c: (bin_bus_handler), (gst_bin_handle_message_func):
2765 * gst/gstbin.h:
2766 * gst/gstbus.c: (gst_bus_class_init):
2767 * gst/gstbus.h:
2768 * gst/gstclock.c:
2769 * gst/gstelement.c: (gst_element_set_locked_state):
2770 * gst/gstsegment.c:
2771 Documentation updates.
2773 * gst/gstpipeline.c: (gst_pipeline_get_type),
2774 (gst_pipeline_class_init), (gst_pipeline_init),
2775 (gst_pipeline_dispose), (gst_pipeline_set_property),
2776 (gst_pipeline_get_property), (do_pipeline_seek),
2777 (gst_pipeline_send_event), (gst_pipeline_change_state),
2778 (gst_pipeline_provide_clock_func), (gst_pipeline_set_delay),
2779 (gst_pipeline_get_delay):
2780 * gst/gstpipeline.h:
2781 Added methods for setting the delay.
2782 API: gst_pipeline_set_delay()
2783 API: gst_pipeline_get_delay()
2784 Add pipeline debug category
2785 Various cleanups.
2786 Updated docs.
2787 Don't reset stream time when seek failed.
2789 2006-03-13 Wim Taymans <wim@fluendo.com>
2791 * docs/design/draft-klass.txt:
2792 * docs/design/part-clocks.txt:
2793 * docs/design/part-events.txt:
2794 * docs/design/part-gstbin.txt:
2795 * docs/design/part-gstpipeline.txt:
2796 * docs/design/part-messages.txt:
2797 * docs/design/part-negotiation.txt:
2798 * docs/design/part-overview.txt:
2799 * docs/design/part-preroll.txt:
2800 * docs/design/part-seeking.txt:
2801 * docs/design/part-states.txt:
2802 * docs/design/part-streams.txt:
2803 Documentation updates.
2805 2006-03-12 Julien MOUTTE <julien@moutte.net>
2807 * gst/gsttaglist.c: Fix rubbish docs that are encouraging
2808 us to leak strings...
2810 2006-03-12 Thomas Vander Stichele <thomas at apestaart dot org>
2812 * libs/gst/net/gstnettimeprovider.c:
2813 fix docs
2814 * win32/common/config.h:
2815 update
2817 2006-03-12 Tim-Philipp Müller <tim at centricular dot net>
2819 Patch by: Julio M. Merino Vidal <jmmv at netbsd org>
2821 * configure.ac:
2822 Don't check for libgnomeui (leftover from old examples
2823 that aren't built or disted any longer) (#334303).
2825 2006-03-11 Tim-Philipp Müller <tim at centricular dot net>
2827 * plugins/elements/gstfdsink.c: (gst_fd_sink_render):
2828 * plugins/elements/gstfilesink.c: (gst_file_sink_render):
2829 Emit RESOURCE_NO_SPACE_LEFT error here as well when
2830 there's no space left on the device.
2832 2006-03-10 Tim-Philipp Müller <tim at centricular dot net>
2834 * gst/gstclock.h:
2835 Fix GST_CLOCK_TIME_IS_VALID signedness issues - we need
2836 to cast the input to GstClockTime before comparing with
2837 another GstClockTime value.
2839 2006-03-10 Thomas Vander Stichele <thomas at apestaart dot org>
2841 * configure.ac:
2842 back to trunk
2844 === release 0.10.4 ===
2846 2006-03-10 Thomas Vander Stichele <thomas at apestaart dot org>
2848 * configure.ac:
2849 releasing 0.10.4, "Light"
2851 2006-03-10 Michael Smith <msmith@fluendo.com>
2853 * libs/gst/dataprotocol/dataprotocol.c:
2854 Fix docs for dataprocotol to not get the return types completely
2855 wrong for a few functions.
2857 2006-03-09 Tim-Philipp Müller <tim at centricular dot net>
2859 * docs/gst/gstreamer-sections.txt:
2860 * gst/gstpipeline.c: (gst_pipeline_class_init),
2861 (gst_pipeline_init), (gst_pipeline_set_property),
2862 (gst_pipeline_get_property), (gst_pipeline_change_state),
2863 (gst_pipeline_set_auto_flush_bus),
2864 (gst_pipeline_get_auto_flush_bus):
2865 * gst/gstpipeline.h:
2866 Add new API: gst_pipeline_set_auto_flush_bus() and
2867 gst_pipeline_get_auto_flush_bus() to disable automatic
2868 flushing of the pipeline's GstBus when going from READY
2869 to NULL state (#332045).
2871 2006-03-09 Tim-Philipp Müller <tim at centricular dot net>
2873 * docs/gst/gstreamer-sections.txt:
2874 * gst/gsturi.c: (gst_uri_has_protocol):
2875 * gst/gsturi.h:
2876 Add new API: gst_uri_has_protocol() (#333779).
2878 2006-03-09 Wim Taymans <wim@fluendo.com>
2880 * gst/gstclock.c: (gst_clock_entry_new),
2881 (gst_clock_id_compare_func), (gst_clock_id_wait),
2882 (gst_clock_id_wait_async), (gst_clock_id_unschedule),
2883 (gst_clock_init), (gst_clock_get_internal_time),
2884 (gst_clock_set_master), (do_linear_regression),
2885 (gst_clock_add_observation), (gst_clock_set_property):
2886 * gst/gstclock.h:
2887 Review docs.
2888 Small cleanups.
2889 Fix a possible segfault when the window-size is made smaller.
2890 Calculate jitter before performing the clock wait. Ideally
2891 the clock implementation should calculate jitter but we need
2892 API breakage for that.
2894 * gst/gstsystemclock.c: (gst_system_clock_init):
2895 Docs review.
2897 * libs/gst/base/gstbasesink.c: (gst_base_sink_do_sync):
2898 Remove leftover else
2900 * tests/check/gst/gstsystemclock.c: (GST_START_TEST),
2901 (gst_systemclock_suite):
2902 Added check to test GST_CLOCK_DIFF.
2904 2006-03-09 Tim-Philipp Müller <tim at centricular dot net>
2906 * libs/gst/base/gsttypefindhelper.c: (helper_find_get_length),
2907 (gst_type_find_helper_get_range):
2908 If we are provided with the size, we should implement
2909 GstTypeFind::get_length, so that typefind functions who
2910 want to can actually peek at the middle of a file.
2912 2006-03-08 Tim-Philipp Müller <tim at centricular dot net>
2914 * docs/manual/advanced-dataaccess.xml:
2915 Add some very very basic error checking.
2917 * docs/pwg/appendix-checklist.xml:
2918 Some updates to the list of things to check when writing an element.
2920 2006-03-08 Wim Taymans <wim@fluendo.com>
2922 * docs/design/part-element-transform.txt:
2923 Added some docs about the design of tranform elements.
2925 * libs/gst/base/gstbasesrc.c: (gst_base_src_perform_seek),
2926 (gst_base_src_loop), (gst_base_src_change_state):
2927 Mark buffers with the DISCONT flag.
2929 2006-03-08 Michael Smith <msmith@fluendo.com>
2931 * gst/gstregistry.h:
2932 * gst/gstregistryxml.c: (gst_registry_save),
2933 (gst_registry_save_escaped), (gst_registry_xml_save_caps),
2934 (gst_registry_xml_save_pad_template),
2935 (gst_registry_xml_save_feature), (gst_registry_xml_save_plugin),
2936 (gst_registry_xml_write_cache):
2937 Rewrite registry-saving to avoid race conditions and check for
2938 failed writes.
2940 2006-03-08 Wim Taymans <wim@fluendo.com>
2942 * libs/gst/base/gstbasetransform.c:
2943 (gst_base_transform_transform_caps),
2944 (gst_base_transform_transform_size),
2945 (gst_base_transform_prepare_output_buffer),
2946 (gst_base_transform_get_unit_size),
2947 (gst_base_transform_buffer_alloc),
2948 (gst_base_transform_handle_buffer),
2949 (gst_base_transform_change_state):
2950 Cleanups, separate normal flow from errors, add sensible
2951 DEBUG lines.
2952 Don't try to renegotiate when allocating an output buffer.
2953 Also copy DISCONT buffer flag when copying a buffer.
2954 Reset the transform after we finish streaming, not during.
2956 2006-03-08 Wim Taymans <wim@fluendo.com>
2958 * libs/gst/base/gstbasesink.c: (gst_base_sink_do_sync):
2959 Use last buffer timestamp in qos message.
2961 2006-03-07 Wim Taymans <wim@fluendo.com>
2963 Patch by: Christophe Fergeau
2965 * docs/pwg/advanced-tagging.xml:
2966 * docs/pwg/building-pads.xml:
2967 fixes #333416
2969 2006-03-07 Wim Taymans <wim@fluendo.com>
2971 * docs/libs/gstreamer-libs-sections.txt:
2972 Added basesink new methods.
2974 * gst/gstevent.c:
2975 * gst/gstevent.h:
2976 Docs updates. Flesh out the QoS docs.
2978 * libs/gst/base/gstadapter.c:
2979 Small doc clarification about ownership and flushing.
2981 * libs/gst/base/gstbasesink.c: (gst_base_sink_set_sync),
2982 (gst_base_sink_get_sync), (gst_base_sink_set_max_lateness),
2983 (gst_base_sink_get_max_lateness), (gst_base_sink_set_property),
2984 (gst_base_sink_get_property), (gst_base_sink_do_sync):
2985 * libs/gst/base/gstbasesink.h:
2986 API additions:
2987 Added new methods to allow subclass to control max-lateness
2988 and sync.
2989 Generate very basic QoS events based on last sync observation.
2990 Updated docs, fix typo, added some QoS blurb.
2992 * libs/gst/base/gstbasesrc.c:
2993 Remove obsolete _get_state() calls from docs.
2995 2006-03-07 Wim Taymans <wim@fluendo.com>
2997 * docs/libs/gstreamer-libs-sections.txt:
2998 * libs/gst/base/gstbasetransform.h:
2999 API addition: Fix #333669, Add pad accessor defines for GstBaseTransform
3000 Fix docs for GstBaseSrc.
3002 2006-03-07 Wim Taymans <wim@fluendo.com>
3004 * docs/gst/gstreamer-sections.txt:
3005 * gst/gstbuffer.h:
3006 * gst/gstvalue.c:
3007 * libs/gst/base/gstbasetransform.h:
3008 Small documentation fixes.
3010 2006-03-07 Tim-Philipp Müller <tim at centricular dot net>
3012 * gst/gstvalue.c:
3013 Document thread-unsafety of gst_value_register_foo_func()
3014 when used at the same time as gst_value_foo() (#322628).
3016 2006-03-07 Tim-Philipp Müller <tim at centricular dot net>
3018 * libs/gst/base/gstpushsrc.c: (gst_push_src_class_init),
3019 (gst_push_src_check_get_range):
3020 Push sources don't support pull mode by default.
3022 2006-03-06 Tim-Philipp Müller <tim at centricular dot net>
3024 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
3025 (gst_base_src_init), (gst_base_src_pad_check_get_range),
3026 (gst_base_src_default_check_get_range):
3027 * libs/gst/base/gstbasesrc.h:
3028 API addition: Add ::check_get_range() vfunc to GstBaseSrc (#332611),
3029 provide default implementation, and rename
3030 gst_base_src_check_get_range() to
3031 gst_base_src_pad_check_get_range() for clarity.
3033 2006-03-06 Wim Taymans <wim@fluendo.com>
3035 * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init):
3036 Make property overridable.
3038 2006-03-06 Wim Taymans <wim@fluendo.com>
3040 * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init),
3041 (gst_base_sink_init), (gst_base_sink_set_property),
3042 (gst_base_sink_get_property), (gst_base_sink_do_sync):
3043 * libs/gst/base/gstbasesink.h:
3044 API addition: Make max-lateness a property.
3046 2006-03-06 Wim Taymans <wim@fluendo.com>
3048 * libs/gst/base/gstbasesink.c: (gst_base_sink_wait_clock),
3049 (gst_base_sink_do_sync), (gst_base_sink_render_object):
3050 Don't ever draw a frame that is >10ms late.
3052 2006-03-06 Michael Smith <msmith@fluendo.com>
3054 * gst/gstmessage.c: (_gst_message_copy):
3055 When copying a message, set the parent_refcount of the enclosed
3056 structure to point at the copy, not the original message.
3058 2006-03-06 Tim-Philipp Müller <tim at centricular dot net>
3060 Patch by: Christophe Fergeau
3062 * gst/gstutils.h:
3063 Do proper cast here to make GST_BOILERPLATE_WITH_INTERFACE
3064 usable in c++ code (#333417)
3066 2006-03-06 Thomas Vander Stichele <thomas at apestaart dot org>
3068 * gst/gstclock.h:
3069 Show GST_CLOCK_TIME_NONE as 99:99:99.999999999
3071 2006-03-05 Tim-Philipp Müller <tim at centricular dot net>
3073 * libs/gst/base/gstbasetransform.c:
3074 (gst_base_transform_transform_caps):
3075 Make sure caps are writable before passing them to
3076 gst_caps_append().
3078 2006-03-04 Tim-Philipp Müller <tim at centricular dot net>
3080 * gst/gsterror.h:
3081 Fix some minor docs errors.
3083 2006-03-04 Tim-Philipp Müller <tim at centricular dot net>
3085 Patch by: Ross Burton <ross at burtonini dot com>
3087 * gst/gsterror.c: (_gst_resource_errors_init):
3088 * gst/gsterror.h:
3089 Add GST_RESOURCE_ERROR_NO_SPACE_LEFT (for #333352;
3091 2006-03-03 Jan Schmidt <thaytan@mad.scientist.com>
3093 * gst/gst.c:
3094 Add a check and output a g_warning when GStreamer is built
3095 against GLib 2.6 but running against 2.8 or higher, and vice
3096 versa. (Closes: #323542)
3098 2006-03-03 Jan Schmidt <thaytan@mad.scientist.com>
3100 * gst/parse/parse.l:
3101 Commit patch for parse_launch syntax from #331255. Removes
3102 support for quoted strings and mimetypes when writing filtered
3103 caps. See the bug report for more details - I'm pretty sure this
3104 obscure feature is not in use by _anyone_ anywhere.
3106 With this simple change, the size of the gstreamer.so here
3107 drops from 2193KB to 1565KB.
3109 2006-03-03 Tim-Philipp Müller <tim at centricular dot net>
3111 * plugins/elements/gsttypefindelement.h:
3112 * plugins/elements/gsttypefindelement.c:
3113 (gst_type_find_element_src_event), (start_typefinding),
3114 (stop_typefinding), (gst_type_find_element_handle_event),
3115 (gst_type_find_element_chain),
3116 (gst_type_find_element_chain_do_typefinding):
3117 Use gst_type_find_helper_for_buffer() for chain-based
3118 typefinding.
3120 2006-03-03 Tim-Philipp Müller <tim at centricular dot net>
3122 * plugins/elements/gsttypefindelement.c:
3123 (gst_type_find_element_class_init),
3124 (gst_type_find_element_set_property),
3125 (gst_type_find_element_get_property):
3126 Deprecate "maximum" property (not only was it only taken into
3127 account for typefinding in push-mode anyway, it also was never
3128 actually possible to set it in the first place because the
3129 property was registered with the numeric property ID for the
3130 "minimum" property). Register "maximum" property correctly,
3131 for the sake of future copy'n'pasters. Remove some cruft
3132 from property get/set functions.
3134 2006-03-03 Tim-Philipp Müller <tim at centricular dot net>
3136 * plugins/elements/gsttypefindelement.c:
3137 (gst_type_find_element_activate):
3138 Use gst_type_find_helper_get_range() here, so we
3139 can honour the "minimum" property and also emit
3140 the signal with the correct probability of the found caps.
3142 2006-03-02 Tim-Philipp Müller <tim at centricular dot net>
3144 * docs/libs/gstreamer-libs-sections.txt:
3145 * libs/gst/base/gsttypefindhelper.c: (helper_find_peek),
3146 (helper_find_suggest), (gst_type_find_helper_get_range),
3147 (gst_type_find_helper):
3148 * libs/gst/base/gsttypefindhelper.h:
3149 New API: gst_type_find_helper_get_range() (#333042).
3151 2006-03-02 Michael Smith <msmith@fluendo.com>
3153 * gst/gstregistryxml.c: (load_feature):
3154 Asserting on a failure to read part of the registry is Not Cool.
3155 Just log a warning and return NULL (which is already handled)
3157 2006-02-28 Sebastien Moutte <sebastien@moutte.net>
3159 * win32/common/libgstbase.def:
3160 added export of gst_type_find_helper_for_buffer
3161 * win32/common/libgstbase.def:
3162 added some exports : gst_bin_iterate_elements, gst_iterator_resync,
3163 gst_ghost_pad_get_target
3165 2006-02-28 Wim Taymans <wim@fluendo.com>
3167 * docs/design/draft-klass.txt:
3168 We use Filter now.
3169 Added Connector to mark elements that are only used to
3170 allow pipeline connections.
3171 Moved Debug to extra feature since most of them are
3172 functionally something else.
3174 2006-02-28 Wim Taymans <wim@fluendo.com>
3176 * docs/design/draft-klass.txt:
3177 Some updates and clarifications.
3179 2006-02-28 Wim Taymans <wim@fluendo.com>
3181 * docs/design/draft-klass.txt:
3182 Proposal for klass field values.
3184 * docs/design/part-streams.txt:
3185 Start of a doc describing stream anatomy.
3187 2006-02-28 Wim Taymans <wim@fluendo.com>
3189 * gst/gstbin.c: (gst_bin_get_type), (gst_bin_handle_message_func):
3190 Help the compiler a bit with type registration.
3191 Use existing forward cod path instead of duplicating it when
3192 handling a message.
3194 * gst/gstbus.c: (gst_bus_get_type):
3195 * gst/gstcaps.c: (gst_caps_get_type), (gst_static_caps_get_type):
3196 * gst/gstchildproxy.c: (gst_child_proxy_get_type):
3197 * gst/gstclock.c: (gst_clock_get_type):
3198 * gst/gstelement.c: (gst_element_get_type),
3199 * gst/gstelementfactory.c: (gst_element_factory_get_type):
3200 * gst/gstindexfactory.c: (gst_index_factory_get_type):
3201 * gst/gstminiobject.c: (gst_mini_object_get_type):
3202 * gst/gstpad.c: (gst_pad_get_type):
3203 * gst/gstsegment.c: (gst_segment_get_type):
3204 * gst/gststructure.c: (gst_structure_get_type):
3205 * gst/gstsystemclock.c: (gst_system_clock_get_type):
3206 * gst/gsttask.c: (gst_task_get_type), (gst_task_join):
3207 * gst/gstvalue.c:
3208 Help compiler with type registration.
3210 * plugins/elements/gstqueue.c: (gst_queue_handle_sink_event):
3211 Small doc update.
3213 2006-02-27 Tim-Philipp Müller <tim at centricular dot net>
3215 * plugins/elements/gsttypefindelement.c:
3216 (gst_type_find_element_handle_event):
3217 When we get an EOS event and have not found a type yet
3218 (most likely because we had not yet accumulated
3219 TYPE_FIND_MIN_SIZE of data yet), try to determine the
3220 type given the data we have so far. Fixes typefinding
3221 for very short streams again, most notably quicktime
3222 redirections as used on Apple's trailer site (#331701).
3224 2006-02-27 Tim-Philipp Müller <tim at centricular dot net>
3226 * libs/gst/base/gsttypefindhelper.c: (type_find_factory_rank_cmp),
3227 (gst_type_find_helper):
3228 Try typefinding factories with the highest rank first.
3230 2006-02-27 Tim-Philipp Müller <tim at centricular dot net>
3232 * docs/libs/gstreamer-libs-docs.sgml:
3233 * docs/libs/gstreamer-libs-sections.txt:
3234 * libs/gst/base/gsttypefindhelper.c:
3235 Add section for typefind helper and add documentation
3236 for the old and the new function.
3238 2006-02-27 Tim-Philipp Müller <tim at centricular dot net>
3240 * libs/gst/base/gsttypefindhelper.c: (buf_helper_find_peek),
3241 (buf_helper_find_suggest), (type_find_factory_rank_cmp),
3242 (gst_type_find_helper_for_buffer):
3243 * libs/gst/base/gsttypefindhelper.h:
3244 New API: gst_type_find_helper_for_buffer() (#332723).
3246 2006-02-27 Michael Smith <msmith@fluendo.com>
3248 Patch by: Loïc Minier
3250 * configure.ac:
3251 * docs/Makefile.am:
3252 * docs/slides/Makefile.am:
3253 prevent CVS directories getting disted.
3255 2006-02-27 Tim-Philipp Müller <tim at centricular dot net>
3257 * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref):
3258 Use the REFCOUNTING category for caps refcounting.
3260 2006-02-26 Tim-Philipp Müller <tim at centricular dot net>
3262 * plugins/elements/gsttypefindelement.c: (stop_typefinding):
3263 This should be 0 not GST_CLOCK_TIME_NONE (see #331701).
3265 2006-02-26 Tim-Philipp Müller <tim at centricular dot net>
3267 * plugins/elements/gsttypefindelement.c:
3268 (gst_type_find_element_activate):
3269 Use gst_pad_check_pull_range() before _activate_pull()
3270 to avoid unnecessary open/close (see #331690).
3272 2006-02-24 Tim-Philipp Müller <tim at centricular dot net>
3274 * gst/gstutils.c:
3275 Docs enhancement: make it crystal clear what the
3276 gst_pad_add_*_probe() callbacks should look like.
3278 2006-02-24 Tim-Philipp Müller <tim at centricular dot net>
3280 * libs/gst/base/gstbasesrc.c:
3281 Document how applications can stop recording from
3282 live sources (see #330996).
3284 2006-02-23 Tim-Philipp Müller <tim at centricular dot net>
3286 * tests/check/Makefile.am:
3287 * tests/check/libs/basesrc.c: (eos_event_counter),
3288 (basesrc_eos_events_pull), (basesrc_eos_events_push),
3289 (basesrc_eos_events_push_live_op), (basesrc_eos_events_pull_live_op),
3290 (gst_basesrc_suite), (main):
3291 ... and add some tests for the base source EOS stuff.
3293 2006-02-23 Tim-Philipp Müller <tim at centricular dot net>
3295 * tests/check/gst/gstutils.c: (test_buffer_probe_n_times):
3296 Test case originally showed the problem fixed below,
3297 but was then amended. Add checks back at the place
3298 where they used to be.
3300 2006-02-23 Tim-Philipp Müller <tim at centricular dot net>
3302 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
3303 (gst_base_src_init), (gst_base_src_loop),
3304 (gst_base_src_activate_push), (gst_base_src_activate_pull),
3305 (gst_base_src_change_state):
3306 * libs/gst/base/gstbasesrc.h:
3307 Don't unconditionally send EOS when going from PAUSED to
3308 READY state, esp. make sure we don't send two EOS events
3309 in some cases (e.g. one when reaching EOS and one when
3310 going from PAUSED to READY). Also, we don't want to send
3311 EOS events when operating in pull mode. However, we do
3312 want to send an EOS event when shutting down a live
3313 source explicitly, for example (fixes #330996).
3315 2006-02-23 Tim-Philipp Müller <tim at centricular dot net>
3317 * plugins/elements/gstfilesrc.c: (gst_file_src_create_read):
3318 Update src->read_position after a seek when not using mmap.
3319 Fixes #332277, patch by: Renchi Raju <renchi gmail com>
3321 2006-02-21 Jan Schmidt <thaytan@mad.scientist.com>
3323 * gst/Makefile.am:
3324 * gst/gstparse.h:
3325 * gst/gstutils.c:
3326 * gst/gstutils.h:
3327 Make things work with --disable-parse as they do with
3328 --disable-load-save - the symbols involved disappear, but the
3329 header is still installed and GST_DISABLE_PARSE is included via
3330 gstconfig.h
3332 2006-02-20 Julien MOUTTE <julien@moutte.net>
3334 * libs/gst/base/gstbasetransform.c:
3335 (gst_base_transform_change_state): Fix a stupid bug. I was
3336 sure I compiled that.
3338 2006-02-20 Julien MOUTTE <julien@moutte.net>
3340 * gst/gstpad.c: (gst_pad_set_blocked_async):
3341 * gst/gstutils.c: (gst_pad_add_data_probe),
3342 (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
3343 (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
3344 (gst_pad_remove_buffer_probe): Make those function act on the
3345 ghostpad target when it's a ghostpad. (Closes #331727)
3347 2006-02-20 Julien MOUTTE <julien@moutte.net>
3349 * libs/gst/base/gstbasetransform.c:
3350 (gst_base_transform_change_state): Make basetransform reusable.
3351 (Closes #331898)
3353 2006-02-20 Jan Schmidt <thaytan@mad.scientist.com>
3355 * docs/random/release:
3356 Move the current documentation of how to do a release to the top
3357 of the file.
3359 * gst/gstbin.c: (gst_bin_class_init),
3360 (gst_bin_handle_message_func):
3361 Allow multiple state-recalculation threads. (Closes #328873)
3363 2006-02-19 Julien MOUTTE <julien@moutte.net>
3365 * gst/gstinfo.h: Add GST_STR_NULL to the second string.
3366 * gst/gstpad.c: (gst_pad_set_event_function),
3367 (gst_pad_set_query_function), (gst_pad_set_query_type_function),
3368 (gst_pad_set_getcaps_function): GST_DEBUG_PAD_NAME evaluates to
3369 2 strings. You can't use the STR_NULL macro on that.
3371 2006-02-19 Sebastien Moutte <sebastien@moutte.net>
3373 * gst/gstpad.c: (gst_pad_set_event_function),
3374 (gst_pad_set_query_function), (gst_pad_set_query_type_function),
3375 (gst_pad_set_getcaps_function)
3376 * gst/parse/grammar.y: (gst_parse_found_pad), (gst_parse_perform_delayed_link)
3377 Fixed NULL pointer used in GST_CAT_DEBUG using GST_STR_NULL macro
3378 So now, we can use --gst-debug-level=5 on Windows
3379 * win32/common/libgstcontroller.def:
3380 Added export of gst_controller_init
3381 * win32/vs6/libgstcontroller.dsp:
3382 Fixed Release post build configuration
3384 2006-02-17 Wim Taymans <wim@fluendo.com>
3386 * tests/check/gst/gstquery.c: (GST_START_TEST):
3387 Added another check.
3389 2006-02-15 Tim-Philipp Müller <tim at centricular dot net>
3391 * plugins/elements/gsttypefindelement.c: (find_peek):
3392 We can do peeks at non-zero offsets, as long as they
3393 fall within the buffer we have.
3395 2006-02-15 Jan Schmidt <thaytan@mad.scientist.com>
3397 * tests/check/Makefile.am:
3398 * tests/check/pipelines/parse-launch.c: (setup_pipeline),
3399 (expected_fail_pipe), (check_pipeline_runs), (GST_START_TEST),
3400 (parse_suite), (main):
3401 Add testsuite for parse launch syntax
3403 2006-02-14 Tim-Philipp Müller <tim at centricular dot net>
3405 * plugins/elements/gsttypefindelement.c:
3406 (gst_type_find_element_chain):
3407 When typefinding is unsuccessful in the chain function, don't
3408 error out immediately. Only error out with NO_CAPS_FOUND if
3409 the amount of data is at least MAX_TYPEFIND_SIZE bytes,
3410 otherwise simply wait for more data so we can try typefinding
3411 again with more data later. Also, don't attempt to typefind
3412 if we have less than MIN_TYPEFIND_SIZE data available. Overall,
3413 this should improve typefinding from network sources where the
3414 size of the first buffer can be somewhat random.
3416 2006-02-14 Wim Taymans <wim@fluendo.com>
3418 * docs/gst/gstreamer-sections.txt:
3419 * gst/gstpadtemplate.c:
3420 * gst/gstpadtemplate.h:
3421 Fix padtemplate docs, fixes #328805.
3423 2006-02-14 Wim Taymans <wim@fluendo.com>
3425 * tools/gst-launch.c: (main):
3426 NO_PREROLL is not an ERROR so don't send confusing messages
3427 to the user.
3429 2006-02-14 Wim Taymans <wim@fluendo.com>
3431 Patch by: Torsten Schoenfeld
3433 * gst/gstregistry.c: (gst_registry_get_default),
3434 (_gst_registry_cleanup):
3435 Protect default registry with lock and ref/sink it.
3436 Fixes #324818
3438 2006-02-14 Wim Taymans <wim@fluendo.com>
3440 * gst/gstbuffer.c:
3441 * gst/gstquery.c: (gst_query_list_add_format),
3442 (gst_query_set_formatsv), (gst_query_parse_formats_length),
3443 (gst_query_parse_formats_nth):
3444 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times):
3445 Docs fixes.
3447 2006-02-14 Wim Taymans <wim@fluendo.com>
3449 * docs/gst/gstreamer-sections.txt:
3450 Reworked query docs.
3452 * gst/gstquery.c: (gst_query_new_formats),
3453 (gst_query_list_add_format), (gst_query_set_formats),
3454 (gst_query_set_formatsv), (gst_query_parse_formats_length),
3455 (gst_query_parse_formats_nth):
3456 * gst/gstquery.h:
3457 Flesh out formats query, added some new methods.
3458 Fix part of #324398.
3460 * tests/check/gst/gstquery.c: (GST_START_TEST), (gstquery_suite):
3461 Added query creation tests.
3463 2006-02-14 Jan Schmidt <thaytan@mad.scientist.com>
3465 * gst/gstpad.c: (fixate_value):
3466 Add a default fixation for fraction lists.
3468 2006-02-13 Wim Taymans <wim@fluendo.com>
3470 * gst/gsttask.c: (gst_task_init), (gst_task_func),
3471 (gst_task_set_lock), (gst_task_start), (gst_task_pause),
3472 (gst_task_join):
3473 * gst/gsttask.h:
3474 Detect and warn for obvious deadlocks. fixes #320340
3475 Fix error case where lock was not released.
3477 * tests/check/Makefile.am:
3478 * tests/check/gst/gsttask.c: (task_func2), (GST_START_TEST),
3479 (task_func), (gst_element_suite), (main):
3480 Add task check.
3482 2006-02-13 Wim Taymans <wim@fluendo.com>
3484 * docs/gst/gstreamer-sections.txt:
3485 * gst/gstbus.c:
3486 Add new functions to docs.
3488 2006-02-13 Wim Taymans <wim@fluendo.com>
3490 * docs/design/part-TODO.txt:
3491 Updated TODO list, basesrc supports seeking to non-bytes
3492 formats.
3494 * docs/design/part-element-sink.txt:
3495 Update docs.
3497 * gst/gstbin.c: (bin_replace_message),
3498 (gst_bin_handle_message_func):
3499 * gst/gstbus.c: (gst_bus_post), (gst_bus_pop):
3500 * gst/gstevent.c: (gst_event_finalize):
3501 * gst/gstpad.c: (gst_pad_event_default_dispatch),
3502 (gst_pad_send_event):
3503 Use shiny new _TYPE_NAME macros.
3505 * libs/gst/base/gstbasesrc.c: (gst_base_src_get_range):
3506 Move debug statement up.
3508 * gst/gstelement.c: (gst_element_set_locked_state):
3509 Add some debugging.
3511 2006-02-13 Tim-Philipp Müller <tim at centricular dot net>
3513 * docs/gst/gstreamer-sections.txt:
3514 * gst/gstmessage.h:
3515 * gst/gstquery.h:
3516 New API: add GST_MESSAGE_TYPE_NAME and GST_QUERY_TYPE_NAME
3517 macros (#330906). Also, document the already existing
3518 GST_QUERY_TYPE macro.
3520 2006-02-13 Wim Taymans <wim@fluendo.com>
3522 * tests/check/gst/gstutils.c: (data_probe), (buffer_probe),
3523 (event_probe), (GST_START_TEST):
3524 Only events up to the pipeline EOS are counted, there are
3525 some more when going to NULL currently which we don't care
3526 about for now.
3528 2006-02-13 Wim Taymans <wim@fluendo.com>
3530 * gst/gstpad.c: (gst_pad_send_event):
3531 Correctly check flushing and emit probes. fixes #330125
3533 2006-02-10 Andy Wingo <wingo@pobox.com>
3535 * gst/gstbus.c (gst_bus_class_init): Declare our private data
3536 structure.
3537 (gst_bus_init): Cache the location of the private data in the
3538 instance structure.
3539 (gst_bus_enable_sync_message_emission)
3540 (gst_bus_disable_sync_message_emission): Implement new public
3541 functions.
3542 (gst_bus_post): Emit the sync-message signal if the user asked for
3543 it. Fixes #330684.
3545 * gst/gstbus.h (GstBus): Use a padding pointer to cache the
3546 location of the bus-private structure.
3547 (gst_bus_enable_sync_message_emission)
3548 (gst_bus_disable_sync_message_emission): API addition
3550 2006-02-10 Jan Schmidt <thaytan@mad.scientist.com>
3552 Patch by: Vincent Torri
3554 * docs/pwg/building-boiler.xml:
3555 PWG patch from #326800
3557 2006-02-09 Tim-Philipp Müller <tim at centricular dot net>
3559 * configure.ac:
3560 * docs/Makefile.am:
3561 * docs/design/Makefile.am:
3562 Dist design docs.
3564 2006-02-08 Jan Schmidt <thaytan@mad.scientist.com>
3566 * configure.ac:
3567 back to CVS
3569 === release 0.10.3 ===
3571 2006-02-08 Jan Schmidt <thaytan@mad.scientist.com>
3573 * configure.ac:
3574 releasing 0.10.3, "Like a virgin"
3576 2006-02-08 Jan Schmidt <thaytan@mad.scientist.com>
3578 * configure.ac:
3579 2nd prerelease of 0.10.3
3580 Bump libtool versioning.
3582 2006-02-07 Andy Wingo <wingo@pobox.com>
3584 * libs/gst/base/gstcollectpads.c (gst_collect_pads_chain): Only
3585 update last_stop if we're in TIME format and the timestamp is
3586 valid.
3588 * libs/gst/base/gstcollectpads.c (gst_collect_pads_event)
3589 * libs/gst/base/gstbasetransform.c (gst_base_transform_eventfunc):
3590 * libs/gst/base/gstbasesink.c (gst_base_sink_configure_segment):
3591 If we get a new newsegment with a different format, adapt
3592 accordingly.
3594 * gst/gstclock.c (gst_clock_set_calibration): Accept a numerator
3595 of 0. Not a problem, really.
3597 * libs/gst/base/gstbasesink.c (gst_base_sink_chain_unlocked): Only
3598 warn if sync=true.
3600 2006-02-06 Jan Schmidt <thaytan@mad.scientist.com>
3602 * configure.ac:
3603 Prelease of 0.10.3
3605 2006-02-06 Sebastien Moutte <sebastien@moutte.net>
3607 * win32/vs7:
3608 project files updated to the default vs7 configuration
3609 * win32/common/libgstbase.def:
3610 * win32/common/libgstreamer.def:
3611 added new symbols,
3612 removed empty lines,
3613 sorted all exported symbols alphabetically
3614 * win32/common/dirent.c:
3615 * win32/common/dirent.h:
3616 * win32/common/gchar.h:
3617 use windows line end.
3619 2006-02-06 Tim-Philipp Müller <tim at centricular dot net>
3621 * libs/gst/base/gstbasesrc.c: (gst_base_src_change_state):
3622 Send EOS event when stopping.
3624 2006-02-06 Tim-Philipp Müller <tim at centricular dot net>
3626 * docs/README:
3627 Tell folks what to do if the plugin-foobar.xml file
3628 hasn't been generated for a newly-added plugin.
3630 2006-02-05 Julien MOUTTE <julien@moutte.net>
3632 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_finalize),
3633 (gst_collect_pads_add_pad), (gst_collect_pads_remove_pad),
3634 (gst_collect_pads_start), (gst_collect_pads_stop),
3635 (gst_collect_pads_event): Collectpads now holds a reference
3636 to the GstPad that was added. Indeed we don't want to look
3637 at pads that might just go away with no warning...
3639 2006-02-05 Julien MOUTTE <julien@moutte.net>
3641 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_add_pad),
3642 (gst_collect_pads_start), (gst_collect_pads_stop),
3643 (gst_collect_pads_event), (gst_collect_pads_chain):
3644 * libs/gst/base/gstcollectpads.h: Handle flush. Adapted from
3645 Mark Nauwelaerts's patch on bug #328491.
3647 2006-02-04 Tim-Philipp Müller <tim at centricular dot net>
3649 * tests/check/gst/gstutils.c: (test_parse_bin_from_description),
3650 (gst_utils_suite):
3651 Add some simple tests for gst_parse_bin_from_description() and
3652 gst_bin_find_unconnected_pad() (#329069).
3654 2006-02-04 Tim-Philipp Müller <tim at centricular dot net>
3656 * tools/gst-launch.c: (event_loop), (main):
3657 Catch errors during preroll (#320084).
3659 2006-02-03 Tim-Philipp Müller <tim at centricular dot net>
3661 * plugins/elements/gsttypefindelement.c:
3662 (gst_type_find_element_activate):
3663 Post TYPE_NOT_FOUND error message when typefinding
3664 is unsuccessful in the activate function as well.
3666 2006-02-02 Wim Taymans <wim@fluendo.com>
3668 * docs/design/part-element-sink.txt:
3669 Updated doc.
3671 2006-02-02 Wim Taymans <wim@fluendo.com>
3673 * libs/gst/base/gstbasesink.c: (gst_base_sink_do_sync),
3674 (gst_base_sink_render_object),
3675 (gst_base_sink_queue_object_unlocked):
3676 Only keep track of prerollable items when we are
3677 prerolling.
3678 Before rendering after preroll, always check if we
3679 have queued items.
3680 Added some more debugging.
3682 2006-02-02 Wim Taymans <wim@fluendo.com>
3684 * gst/gstelement.c: (gst_element_continue_state),
3685 (gst_element_set_state_func), (gst_element_change_state):
3686 Fixed #326576, been running this for quite some time with
3687 no regressions at all.
3689 2006-02-02 Wim Taymans <wim@fluendo.com>
3691 * common/gst.supp:
3692 Added more suppressions
3694 2006-02-02 Wim Taymans <wim@fluendo.com>
3696 * docs/design/part-element-sink.txt:
3697 Updated document.
3699 * libs/gst/base/gstbasesink.c: (gst_base_sink_init),
3700 (gst_base_sink_finalize), (gst_base_sink_preroll_queue_flush),
3701 (gst_base_sink_configure_segment), (gst_base_sink_commit_state),
3702 (gst_base_sink_get_sync_times), (gst_base_sink_wait_clock),
3703 (gst_base_sink_do_sync), (gst_base_sink_render_object),
3704 (gst_base_sink_preroll_object),
3705 (gst_base_sink_queue_object_unlocked),
3706 (gst_base_sink_queue_object), (gst_base_sink_event),
3707 (gst_base_sink_chain_unlocked), (gst_base_sink_chain),
3708 (gst_base_sink_loop), (gst_base_sink_activate_pull),
3709 (gst_base_sink_get_position), (gst_base_sink_change_state):
3710 * libs/gst/base/gstbasesink.h:
3711 Totally refactored matching the design doc.
3712 Use two segments, one to clip incomming buffers and another to
3713 perform sync.
3714 Handle queueing correctly, bypass the queue when playing.
3715 Make EOS cancelable.
3716 Handle errors correctly when operating in pull based mode.
3718 * tests/check/elements/fakesink.c: (GST_START_TEST),
3719 (fakesink_suite):
3720 Added new check for sinks.
3722 2006-02-02 Wim Taymans <wim@fluendo.com>
3724 * gst/gstsegment.c: (gst_segment_clip):
3725 No reason to refuse to clip when start == -1
3727 2006-02-02 Stefan Kost <ensonic@users.sf.net>
3729 * docs/README:
3730 * docs/manual/intro-basics.xml:
3731 * docs/manual/intro-preface.xml:
3732 * docs/manual/manual.xml:
3733 * docs/pwg/advanced-dparams.xml:
3734 * docs/pwg/intro-basics.xml:
3735 * docs/pwg/intro-preface.xml:
3736 * docs/pwg/pwg.xml:
3737 describe dparams (controller) for plugins
3738 unify docs a little more
3740 2006-02-02 Tim-Philipp Müller <tim at centricular dot net>
3742 * docs/gst/gstreamer-sections.txt:
3743 * gst/gstutils.c: (element_find_unconnected_pad),
3744 (gst_bin_find_unconnected_pad), (gst_parse_bin_from_description):
3745 * gst/gstutils.h:
3746 Add new API: gst_parse_bin_from_description() and
3747 gst_bin_find_unconnected_pad() (#329069).
3749 2006-02-01 Stefan Kost <ensonic@users.sf.net>
3751 * docs/manual/README:
3752 uncover a nasty detail of the docs build
3754 2006-01-31 Wim Taymans <wim@fluendo.com>
3756 * gst/gstbin.c: (bin_remove_messages), (bin_query_duration_done):
3757 Don't cache duration messages if we're not going to use or
3758 free them.
3760 2006-01-31 Stefan Kost <ensonic@users.sf.net>
3762 * docs/manual/advanced-dparams.xml:
3763 * docs/pwg/advanced-dparams.xml:
3764 more dparam docs
3765 * gst/gstindex.c:
3766 fix docs
3767 * libs/gst/controller/lib.c: (gst_controller_init):
3768 init just once
3770 2006-01-31 Thomas Vander Stichele <thomas at apestaart dot org>
3772 * gst/gstelement.c: (gst_element_message_full):
3773 also show file/line/func if no additional debug was given
3775 2006-01-31 Sebastien Moutte <sebastien@moutte.net>
3777 * win32/vs7/grammar.vcproj:
3778 activate copy of autogenerated files for Release mode
3780 2006-01-30 Sebastien Moutte <sebastien@moutte.net>
3782 * win32/common/libgstreamer.def:
3783 export gst_value_compare
3785 2006-01-30 Jan Schmidt <thaytan@mad.scientist.com>
3787 * plugins/elements/Makefile.am:
3788 * plugins/elements/gstelements.c:
3789 * plugins/elements/gstfdsink.c: (_do_init),
3790 (gst_fd_sink_base_init), (gst_fd_sink_class_init),
3791 (gst_fd_sink_init), (gst_fd_sink_dispose), (gst_fd_sink_query),
3792 (gst_fd_sink_render), (gst_fd_sink_check_fd), (gst_fd_sink_start),
3793 (gst_fd_sink_stop), (gst_fd_sink_unlock), (gst_fd_sink_update_fd),
3794 (gst_fd_sink_set_property), (gst_fd_sink_uri_get_type),
3795 (gst_fd_sink_uri_get_protocols), (gst_fd_sink_uri_get_uri),
3796 (gst_fd_sink_uri_set_uri), (gst_fd_sink_uri_handler_init):
3797 * plugins/elements/gstfdsink.h:
3798 Port fdsink to 0.10 (patch by Philippe Rouquier) (Fixes #325490)
3800 2006-01-30 Stefan Kost <ensonic@users.sf.net>
3802 * docs/manual/advanced-dparams.xml:
3803 describe controller
3804 * docs/manual/advanced-position.xml:
3805 * docs/manual/basics-init.xml:
3806 * docs/manual/manual.xml:
3807 * docs/manual/titlepage.xml:
3808 * docs/pwg/pwg.xml:
3809 * docs/pwg/titlepage.xml:
3810 cleanup xml (more to come)
3811 * libs/gst/controller/gstcontroller.c:
3812 fix typo
3814 2006-01-30 Sebastien Moutte <sebastien@moutte.net>
3816 * win32/vs6/grammar.dsp:
3817 add autogen of gstmarshal.c,h for Release mode
3819 2006-01-30 Wim Taymans <wim@fluendo.com>
3821 * libs/gst/base/gstbasesink.c: (gst_base_sink_init),
3822 (gst_base_sink_preroll_queue_empty), (gst_base_sink_commit_state),
3823 (gst_base_sink_handle_object), (gst_base_sink_event),
3824 (gst_base_sink_is_prerolled), (gst_base_sink_wait),
3825 (gst_base_sink_do_sync), (gst_base_sink_handle_event),
3826 (gst_base_sink_handle_buffer), (gst_base_sink_set_flushing),
3827 (gst_base_sink_deactivate), (gst_base_sink_activate),
3828 (gst_base_sink_activate_pull), (gst_base_sink_get_position),
3829 (gst_base_sink_query), (gst_base_sink_change_state):
3830 Basesink cleanups, remove some old code.
3831 Handle the case where a subclass can preroll in the render
3832 method (mostly audiosinks).
3833 Handle more events.
3834 Remove some locks around variables that are now protected
3835 with the PREROLL_LOCK (clock_id, flushing, ..).
3836 Optimize position query some more, do correct locking.
3837 Remove old code to push queue in state change, this is not
3838 needed anymore since preroll blocks on all prerollable items
3839 now.
3840 Almost implemented as described in design doc.
3842 2006-01-30 Wim Taymans <wim@fluendo.com>
3844 * tests/check/gst/gstbin.c: (GST_START_TEST):
3845 Wait for refcount to settle down before checking.
3847 2006-01-30 Wim Taymans <wim@fluendo.com>
3849 * docs/design/part-element-sink.txt:
3850 Pseudo code overview of desired sink behaviour regarding
3851 preroll.
3853 2006-01-29 Sebastien Moutte <sebastien@moutte.net>
3854 * win32/vs6/grammar.dsp:
3855 fix some bugs in Release mode for autogenerated files
3857 2006-01-29 Sebastien Moutte <sebastien@moutte.net>
3858 * win32/common/libgstbase.def:
3859 * win32/common/libgstreamer.def:
3860 export some new symbols: gst_base_src_set_format,
3861 gst_iterator_next, gst_structure_set_valist
3863 2006-01-29 Julien MOUTTE <julien@moutte.net>
3865 * gst/gstghostpad.c: (gst_proxy_pad_set_target_unlocked):
3866 Set pad functions unconditionally. Fixes #329105.
3868 2006-01-29 Sebastien Moutte <sebastien@moutte.net>
3869 * win32/vs8:
3870 add vs8 project files created by Sergey Scobich
3872 2006-01-28 Jan Schmidt <thaytan@mad.scientist.com>
3874 * gst/gstutils.c: (gst_element_unlink_pads):
3875 Don't leak pad references.
3877 * tests/check/elements/fakesink.c: (GST_START_TEST):
3878 * tests/check/generic/sinks.c: (GST_START_TEST):
3879 * tests/check/generic/states.c: (GST_START_TEST):
3880 * tests/check/gst/gstbin.c: (GST_START_TEST):
3881 * tests/check/gst/gstcaps.c: (GST_START_TEST):
3882 * tests/check/gst/gstelement.c: (GST_START_TEST):
3883 * tests/check/gst/gstghostpad.c: (GST_START_TEST):
3884 * tests/check/gst/gstiterator.c: (GST_START_TEST):
3885 * tests/check/gst/gstvalue.c: (GST_START_TEST):
3886 Fix a bunch of leaks. Make generic/sinks.c
3887 use a bit less cpu by slowing the buffer rate
3888 between fakesrc and fakesink.
3890 2006-01-27 Stefan Kost <ensonic@users.sf.net>
3891 * gst/gstcaps.c:
3892 * gst/gstelement.c: (gst_element_send_event):
3893 * gst/gstevent.c:
3894 * gst/gstinfo.c:
3895 * gst/gstiterator.c:
3896 * gst/gstiterator.h:
3897 * gst/gstpad.c: (gst_pad_send_event):
3898 * gst/gststructure.c:
3899 * gst/gsturi.c:
3900 * gst/gstutils.c:
3901 * gst/gstvalue.c:
3902 * libs/gst/base/gstadapter.c:
3903 doc fixes, to link to function, just write gst_cool_function(), don't
3904 prefix with '#'
3906 2006-01-27 Jan Schmidt <thaytan@mad.scientist.com>
3908 * plugins/elements/gsttee.c: (gst_tee_do_push),
3909 (gst_tee_handle_buffer):
3910 Always prefer an actual return value from a src
3911 pad in place of NOT_LINKED. This means we return
3912 WRONG_STATE when all src pads are WRONG_STATE
3913 instead of NOT_LINKED.
3915 Lock when replacing the last message to prevent
3916 racing with the get_property method.
3918 Add debug output
3920 2006-01-27 Jan Schmidt <thaytan@mad.scientist.com>
3922 * tests/check/Makefile.am:
3923 * tests/check/gst/gstquery.c: (GST_START_TEST), (gstquery_suite),
3924 (main):
3925 Add a very simple check that should have caught the memleak I fixed
3926 last night (if not for the slice allocator hiding it)
3928 2006-01-27 Jan Schmidt <thaytan@mad.scientist.com>
3930 * gst/gstbin.c: (gst_bin_dispose), (gst_bin_provide_clock_func),
3931 (gst_bin_remove_func), (gst_bin_handle_message_func),
3932 (bin_query_duration_fold), (bin_query_generic_fold):
3933 Clean up references to the clock provider when disposed or when
3934 handling a clock-lost message from it.
3936 Unref sinks when performing a query via gst_iterator_fold, as the
3937 gst_bin_iterate_sinks iterator refs each item. (Fixes #323874)
3939 * gst/gstclock.c: (gst_clock_class_init), (gst_clock_dispose),
3940 (gst_clock_set_master):
3941 Drop our reference to the master clock, if any, when we are disposed.
3943 * gst/gsttypefindfactory.c: (gst_type_find_factory_dispose):
3944 Chain up in dispose.
3946 2006-01-26 Wim Taymans <wim@fluendo.com>
3948 * libs/gst/base/gstbasesrc.c: (gst_base_src_get_range):
3949 Add some debugging.
3951 2006-01-26 Julien MOUTTE <julien@moutte.net>
3953 * plugins/elements/gsttee.c: (gst_tee_do_push),
3954 (gst_tee_handle_buffer): Apply patch from #328715. Tee now
3955 handles pad being NOT_LINKED or in WRONG_STATE.
3957 2006-01-26 Stefan Kost <ensonic@users.sf.net>
3959 * win32/MANIFEST:
3960 more updating
3962 2006-01-26 Stefan Kost <ensonic@users.sf.net>
3964 * win32/MANIFEST:
3965 remove obsolete entry
3967 2006-01-26 Stefan Kost <ensonic@users.sf.net>
3969 * docs/gst/gstreamer-sections.txt:
3970 * gst/gstbin.c: (bin_element_is_src), (src_iterator_filter),
3971 (gst_bin_iterate_sources), (gst_bin_send_event):
3972 * gst/gstbin.h:
3973 * gst/gstelement.c: (gst_element_send_event):
3974 * gst/gstevent.c:
3975 * gst/gstpad.c: (gst_pad_send_event):
3976 added code for downstream events, reviewed docs in gstevent.c
3978 2006-01-25 Julien MOUTTE <julien@moutte.net>
3980 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_position):
3981 We only query position using the clock in the playing state.
3982 Query peer in the other cases.
3983 * win32/common/config.h: Updates.
3985 2006-01-24 Wim Taymans <wim@fluendo.com>
3987 * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
3988 A clock entry that is scheduled for the exact time of the
3989 clock is still in time.
3991 * libs/gst/base/gstbasesink.c: (gst_base_sink_handle_object),
3992 (gst_base_sink_do_sync):
3993 Add some more debug info.
3995 2006-01-23 Sebastien Moutte <sebastien@moutte.net>
3997 * win32/vs7:
3998 Add new vs7 project files and solution.
4000 2006-01-23 Sebastien Moutte <sebastien@moutte.net>
4002 * win32/vs7:
4003 all files removed as they were out-dated.
4005 2006-01-20 Thomas Vander Stichele <thomas at apestaart dot org>
4007 * docs/random/release:
4008 update notes
4009 * gst/gstbin.c: (gst_bin_init):
4010 * gst/gstbus.c: (gst_bus_new):
4011 * gst/gstbus.h:
4012 * gst/gstpipeline.c: (gst_pipeline_init):
4013 use gst_bus_new(), improve logging, fix docs
4014 * win32/common/config.h:
4015 update for cvs build
4017 2006-01-20 Thomas Vander Stichele <thomas at apestaart dot org>
4019 * autogen.sh:
4020 up required version of automake to 1.7
4022 2006-01-20 Sebastien Moutte <sebastien@moutte.net>
4024 * win32/common/libgstreamer.def:
4025 export gst_buffer_is_metadata_writable
4027 2006-01-20 Tim-Philipp Müller <tim at centricular dot net>
4029 * docs/gst/gstreamer-sections.txt:
4030 * gst/gstevent.h:
4031 Add gst_event_replace() (#327001)
4033 2006-01-20 Wim Taymans <wim@fluendo.com>
4035 * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
4036 Make it actually compile too..
4038 2006-01-20 Wim Taymans <wim@fluendo.com>
4040 * gst/gstcaps.c:
4041 Clarify behaviour of _is_equal() when passing NULL parameters.
4043 * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
4044 (gst_pad_set_caps):
4045 Cleanups. Don't unref NULL caps.
4046 When setting the same caps, protect caps of the pad with
4047 proper lock.
4048 Use full functionality of _is_equal() when comparing caps.
4050 2006-01-20 Jan Schmidt <thaytan@mad.scientist.com>
4052 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_is_collected):
4053 Don't loop infinitely if there are no buffers to present. Partially
4054 fixes #327197, but collectpads is just broken for reusing elements
4055 to do multiple encodes atm.
4057 2006-01-20 Jan Schmidt <thaytan@mad.scientist.com>
4059 * tools/gst-inspect.c: (print_element_features):
4060 * tools/gst-xmlinspect.c: (main):
4061 URL_HANDLER is not a plugin feature we can search for in
4062 the registry.
4064 2006-01-19 Edward Hervey <edward@fluendo.com>
4066 * gst/gstelement.c: (gst_element_pads_activate):
4067 When activating, do src pads first, then sink pads.
4068 When de-activating, do sink pads first, then src pads.
4070 2006-01-19 Jan Schmidt <thaytan@mad.scientist.com>
4072 * docs/gst/gstreamer-sections.txt:
4073 Add gst_index_add_associationv to the docs
4075 2006-01-19 Jan Schmidt <thaytan@mad.scientist.com>
4077 * gst/gstevent.c:
4078 Fix docs typo
4080 * plugins/elements/gstqueue.c: (gst_queue_handle_sink_event),
4081 (gst_queue_chain), (gst_queue_push_one), (gst_queue_loop):
4082 Do some refactoring. Doesn't actually change functionality,
4083 but makes landing the DRAIN event easier later.
4085 2006-01-19 Tim-Philipp Müller <tim at centricular dot net>
4087 * docs/pwg/advanced-scheduling.xml:
4088 Update from 0.9.x to 0.10 API and make example a bit
4089 clearer.
4091 2006-01-19 Jan Schmidt <thaytan@mad.scientist.com>
4093 * docs/gst/gstreamer-sections.txt:
4094 Add gst_buffer_(is|make)_metadata_writable methods.
4096 2006-01-19 Jan Schmidt <thaytan@mad.scientist.com>
4098 * docs/design/part-sparsestreams.txt:
4099 Update sparse streams doc, hopefully for greater clarity
4101 2006-01-18 Jan Schmidt <thaytan@mad.scientist.com>
4103 * docs/design/part-events.txt:
4104 Remove mention of FILLER events.
4105 Add DRAIN event.
4107 * docs/design/part-sparsestreams.txt:
4108 Write some things about using NEWSEGMENT to keep sparse streams
4109 flowing.
4111 2006-01-18 Tim-Philipp Müller <tim at centricular dot net>
4113 * gst/gstbin.c: (gst_bin_dispose):
4114 Guard gst_object_unref call against a NULL object (dispose
4115 can theoretically be called multiple times).
4117 2006-01-18 Wim Taymans <wim@fluendo.com>
4119 * gst/gstbin.c: (gst_bin_element_set_state):
4120 * gst/gstclock.c: (gst_clock_id_wait):
4121 Added some more debug info.
4123 * libs/gst/base/gstadapter.c:
4124 Added more docs.
4126 * libs/gst/base/gstbasesink.c: (gst_base_sink_handle_object),
4127 (gst_base_sink_do_sync), (gst_base_sink_chain):
4128 Added some comments.
4130 2006-01-18 Wim Taymans <wim@fluendo.com>
4132 * tests/check/Makefile.am:
4133 * tests/check/elements/fakesink.c: (chain_async_buffer),
4134 (chain_async), (chain_async_return), (GST_START_TEST),
4135 (fakesink_suite), (main):
4136 Added fakesink test that checks prerolling and clipping
4137 behaviour.
4139 * tests/check/gst/gstutils.c: (GST_START_TEST):
4140 Make check run faster so that buildbots don't timeout.
4142 2006-01-18 Wim Taymans <wim@fluendo.com>
4144 * libs/gst/base/gstbasesink.c: (gst_base_sink_handle_object),
4145 (gst_base_sink_do_sync):
4146 Some cleanups.
4147 When the sink finishes blocking on the preroll buffer, it can
4148 immediatly render it instead of rendering when the next buffer
4149 arrives.
4151 2006-01-18 Wim Taymans <wim@fluendo.com>
4153 * libs/gst/base/gstbasesink.c: (gst_base_sink_set_property),
4154 (gst_base_sink_get_property), (gst_base_sink_do_sync),
4155 (gst_base_sink_chain):
4156 Small cleanups.
4157 GST_ELEMENT_CLOCK and sync are protected with LOCK.
4158 Don't store _last_stop if the buffer is dropped.
4160 2006-01-18 Tim-Philipp Müller <tim at centricular dot net>
4162 * plugins/elements/gsttypefindelement.c:
4163 (gst_type_find_element_class_init):
4164 'have-type' signal needs to be G_SIGNAL_RUN_FIRST, as it is the
4165 object method handler that sets the caps on the pad and we want
4166 that to happen before we emit the signal (fixes e.g. feeding a
4167 plain text file to decodebin).
4169 2006-01-18 Christian Schaller <Christian@fluendo.com>
4171 * gst/gstplugin.c: Add MPL and Proprietary as license options
4173 2006-01-18 Andy Wingo <wingo@pobox.com>
4175 * gst/gstindex.h (gst_index_add_associationv): Add to header. The
4176 symbol was exported before, it appears this was just an oversight.
4177 Fixes #168703.
4178 Patch by: Torsten Schoenfeld <kaffeetisch at gmx.de>
4180 * gst/gstindex.c (gst_index_add_associationv): Changed int in
4181 prototype to gint. OK since this prototype was not in the header.
4183 2006-01-17 Andy Wingo <wingo@pobox.com>
4185 * gst/gstregistry.c (_gst_registry_remove_cache_plugins): Lock the
4186 registry while we remove plugins.
4188 * tools/gst-inspect.c (print_element_info): Don't unref the
4189 factory arg, that should be the responsibility of whatever code
4190 received the ref. Fixes a double-free when called from
4191 print_element_list via gst-inspect-0.10 -a. Fixes #327324.
4192 (main): Unref the factory if we have one.
4193 (print_element_list): No change -- relies on the
4194 plugin_feature_list_free to free the list of features.
4196 2006-01-17 Jan Schmidt <thaytan@mad.scientist.com>
4198 * gst/gstbuffer.c: (gst_buffer_is_metadata_writable),
4199 (gst_buffer_make_metadata_writable):
4200 * gst/gstbuffer.h:
4201 * libs/gst/base/gstbasetransform.c:
4202 (gst_base_transform_prepare_output_buf):
4203 * plugins/elements/gstcapsfilter.c: (gst_capsfilter_prepare_buf):
4204 * tests/check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
4205 Replace gst_buffer_(make|is)_metadata_writable patch now
4206 that the release is out.
4208 2006-01-17 Andy Wingo <wingo@pobox.com>
4210 * gst/gstregistry.c: Reflow design comment. Update so as to speak
4211 in the present tense without reference to versions.
4213 * gst/gstregistry.c (gst_registry_add_plugin)
4214 (gst_registry_remove_plugin, gst_registry_remove_feature)
4215 (gst_registry_find_feature, gst_registry_get_feature_list)
4216 (gst_registry_get_plugin_list, gst_registry_lookup_feature)
4217 (gst_registry_lookup, gst_registry_scan_path)
4218 (_gst_registry_remove_cache_plugins)
4219 (gst_registry_get_feature_list_by_plugin): Add argument
4220 validation.
4222 === release 0.10.2 ===
4224 2006-01-16 Thomas Vander Stichele <thomas at apestaart dot org>
4226 * configure.ac:
4227 releasing 0.10.2, "If man is five"
4229 2006-01-16 Jan Schmidt <thaytan@mad.scientist.com>
4231 * gst/gstbuffer.c:
4232 * gst/gstbuffer.h:
4233 * libs/gst/base/gstbasetransform.c:
4234 (gst_base_transform_prepare_output_buf):
4235 * plugins/elements/gstcapsfilter.c: (gst_capsfilter_prepare_buf):
4236 * tests/check/gst/gstbuffer.c: (gst_test_suite):
4237 Back out patch until after the release.
4239 2006-01-16 Jan Schmidt <thaytan@mad.scientist.com>
4241 * gst/gstminiobject.c:
4242 Spelling fix in docs.
4243 * ChangeLog - remove conflict indicator
4245 2006-01-16 Jan Schmidt <thaytan@mad.scientist.com>
4247 Reviewed By: Andy Wingo
4249 * gst/gstbuffer.c: (gst_buffer_is_metadata_writable),
4250 (gst_buffer_make_metadata_writable):
4251 * gst/gstbuffer.h:
4252 Add gst_buffer_(is|make)_metadata_writable as analogues of
4253 gst_buffer_(is|make)_writable.
4255 * libs/gst/base/gstbasetransform.c:
4256 (gst_base_transform_prepare_output_buf):
4257 * plugins/elements/gstcapsfilter.c: (gst_capsfilter_prepare_buf):
4258 Use name gst_buffer_(is|make)_metadata_writable functions.
4260 * tests/check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
4261 Test gst_buffer_(is|make)_metadata_writable
4263 (Closes: #324162)
4265 2006-01-14 Thomas Vander Stichele <thomas at apestaart dot org>
4267 * docs/manual/Makefile.am:
4268 don't do parallel make
4269 * configure.ac:
4270 AC_SUBST HOST_CPU
4271 * win32/common/config.h.in:
4272 add generations for HOST_CPU and GST_MAJORMINOR
4273 * win32/common/config.h:
4274 commit generated result
4276 2006-01-13 Tim-Philipp Müller <tim at centricular dot net>
4278 * docs/manual/appendix-integration.xml:
4279 Update GNOME integration section to use gst_init_get_option_group()
4280 instead of the old popt stuff (#322911). Also, GNOME applications
4281 should now use gconf*sink and gconf*src instead of the old gconf
4282 helper lib we had.
4284 2006-01-13 Stefan Kost <ensonic@users.sf.net>
4287 * docs/gst/gstreamer-docs.sgml:
4288 * docs/gst/gstreamer-sections.txt:
4289 * docs/libs/gstreamer-libs-sections.txt:
4290 add new API entries to the docs
4291 * libs/gst/controller/Makefile.am:
4292 * libs/gst/controller/gstcontroller.c:
4293 * libs/gst/controller/gstcontroller.h:
4294 * libs/gst/controller/gstcontrollerprivate.h:
4295 * libs/gst/controller/gsthelper.c:
4296 * libs/gst/controller/gstinterpolation.c:
4297 move private structs to private header
4298 * po/README:
4299 gstreamer-0.7 -> gstreamer-0.10
4300 * tests/check/libs/struct_i386.h:
4301 remove private structs
4303 2006-01-13 Thomas Vander Stichele <thomas at apestaart dot org>
4305 * plugins/indexers/Makefile.am:
4306 Fixes as part of #317048
4308 2006-01-13 Thomas Vander Stichele <thomas at apestaart dot org>
4310 * plugins/indexers/Makefile.am:
4311 fix #316086 - compilation when mmap is missing
4313 2006-01-12 Sebastien Moutte <sebastien@moutte.net>
4315 * libs/gst/base/gstbasesink.c:
4316 *cur = (now - base) * basesink->segment.abs_rate + time; replaced by
4317 *cur = gst_guint64_to_gdouble(now - base) * basesink->segment.abs_rate + time; for vs6
4318 * win32/common/config.h:
4319 added some defines GST_MAJORMINOR and HOST_CPU
4320 * win32/common/libgstbase.def:
4321 * win32/common/libgstreamer.def:
4322 added some exported functions.
4324 2006-01-12 Stefan Kost <ensonic@users.sf.net>
4326 * libs/gst/controller/gstcontroller.c:
4327 (gst_controlled_property_set_interpolation_mode),
4328 (gst_controlled_property_new):
4329 * libs/gst/controller/gstcontroller.h:
4330 * libs/gst/controller/gstinterpolation.c:
4331 (interpolate_none_get_string_value_array):
4332 make G_TYPE_STRING controlable
4334 2006-01-12 Stefan Kost <ensonic@users.sf.net>
4336 * tools/README:
4337 * tools/gst-feedback.1.in:
4338 * tools/gst-inspect.1.in:
4339 * tools/gst-launch.1.in:
4340 * tools/gst-md5sum.1.in:
4341 * tools/gst-typefind.1.in:
4342 * tools/gst-xmlinspect.1.in:
4343 * tools/gst-xmllaunch.1.in:
4344 cleanup man-pages, remove reference to gst-register, document env-vars
4346 2006-01-12 Jan Schmidt <thaytan@mad.scientist.com>
4348 * gst/gstbuffer.c: (gst_buffer_span):
4349 gst_buffer_span should copy the timestamp of the first buffer
4350 if they were both originally overlapping subbuffers of the
4351 same parent, using the same logic as the 'slow copy' case.
4353 2006-01-11 Jan Schmidt <thaytan@mad.scientist.com>
4355 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_pop):
4356 Need to awaken ALL the pads when we pop a buffer, otherwise
4357 collectpads only works when there is 2 input streams.
4359 2006-01-11 Stefan Kost <ensonic@users.sf.net>
4361 * docs/random/ensonic/media-device-daemon.txt:
4362 more ideas (dbus)
4363 * gst/gstbuffer.c:
4364 fix doc example, add clarification
4365 * tools/gst-launch.1.in:
4366 add initial info about GST_PLUGIN_PATH, needs more work
4368 2006-01-11 Tim-Philipp Müller <tim at centricular dot net>
4370 * docs/manual/basics-bins.xml:
4371 * docs/manual/basics-elements.xml:
4372 * docs/manual/intro-basics.xml:
4373 Some more minor docs additions and updates.
4375 2006-01-11 Wim Taymans <wim@fluendo.com>
4377 * docs/manual/basics-bins.xml:
4378 * docs/manual/basics-elements.xml:
4379 Some small fixes as pointed out by Ser-ver on IRC.
4381 2006-01-10 Edward Hervey <edward@fluendo.com>
4383 * plugins/elements/gstidentity.c: (gst_identity_transform_ip):
4384 Set the buffer offset/offset_end to GST_CLOCK_TIME_NONE when using
4385 the single-segment mode.
4387 2006-01-10 Brian Cameron <brian dot cameron at sun dot com>
4389 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
4391 * libs/gst/base/gstbasesrc.c: (gst_base_src_init),
4392 (gst_base_src_perform_seek), (gst_base_src_send_event),
4393 (gst_base_src_set_property), (gst_base_src_get_property),
4394 (gst_base_src_loop), (gst_base_src_start),
4395 (gst_base_src_activate_push):
4396 * libs/gst/base/gstbasesrc.h:
4397 Name (private) union; makes Sun's Forte compiler happy (#324900).
4399 2006-01-09 Tim-Philipp Müller <tim at centricular dot net>
4401 * README:
4402 gst-register is gone.
4404 2006-01-07 Thomas Vander Stichele <thomas at apestaart dot org>
4406 * gst/gstvalue.c: (_gst_value_initialize):
4407 make the G_TYPE_DATE instantiation work if debug is disabled
4409 2006-01-06 Tim-Philipp Müller <tim at centricular dot net>
4411 * gst/gstmessage.c: (gst_message_parse_tag),
4412 (gst_message_parse_error), (gst_message_parse_warning):
4413 Don't crash when return location for error/warning debug
4414 string is NULL; add fact that return locations can be
4415 NULL to docs where appropriate.
4417 2006-01-05 Wim Taymans <wim@fluendo.com>
4419 * gst/gstplugin.c: (gst_plugin_load_file):
4420 Replace strdup by g_strdup.
4422 2006-01-05 Thomas Vander Stichele <thomas at apestaart dot org>
4424 * docs/pwg/advanced-types.xml:
4425 fix doc borkage
4427 2006-01-05 Thomas Vander Stichele <thomas at apestaart dot org>
4429 submitted by: Abel Cheung
4431 * po/LINGUAS:
4432 * po/zh_TW.po:
4433 Added Chinese (traditional) translation
4435 2006-01-04 Wim Taymans <wim@fluendo.com>
4437 * docs/manual/basics-pads.xml:
4438 * docs/plugins/Makefile.am:
4439 * docs/plugins/gstreamer-plugins-docs.sgml:
4440 * docs/plugins/gstreamer-plugins-sections.txt:
4441 * docs/pwg/advanced-clock.xml:
4442 * docs/pwg/advanced-scheduling.xml:
4443 * docs/pwg/advanced-types.xml:
4444 * plugins/elements/gstfdsink.c:
4445 * plugins/elements/gstfdsrc.c:
4446 * plugins/elements/gstfdsrc.h:
4447 * plugins/elements/gstidentity.c: (gst_identity_class_init):
4448 * plugins/elements/gstidentity.h:
4449 * plugins/elements/gstqueue.h:
4450 * plugins/elements/gsttee.c:
4451 * plugins/elements/gsttee.h:
4452 * plugins/elements/gsttypefindelement.c:
4453 (gst_type_find_element_class_init):
4454 * plugins/elements/gsttypefindelement.h:
4455 Small updates to various docs.
4456 Added core plugins to docs.
4458 2006-01-03 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
4460 * common/gst.supp:
4461 add a suppression for liboil's uninitialized variable
4463 2006-01-02 James Livingston <jrl at ids dot org dot au>
4465 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
4467 * gst/gstutils.h:
4468 Add prototype for _get_type() function to GST_BOILERPLATE_FULL
4469 macro, so that gcc doesn't complain if the -Wmissing-prototypes
4470 compiler switch is being used (#325429).
4472 2005-12-29 Tim-Philipp Müller <tim at centricular dot net>
4474 * gst/gstbin.c: (gst_bin_query):
4475 Disable duration query caching in bins until it gets
4476 fixed (see #324807).
4478 2005-12-27 Tim-Philipp Müller <tim at centricular dot net>
4480 * tools/gst-inspect.c: (print_element_properties_info):
4481 Handle properties of POINTER and BOXED type.
4483 2005-12-27 Tim-Philipp Müller <tim at centricular dot net>
4485 * gst/gst.c: (init_post):
4486 Init tags stuff and some other things before loading
4487 any static plugins (there may be other static plugins
4488 than just the GStreamer ones, and they may want to
4489 register their own tags or formats or whatever, and
4490 preferably without segfaulting).
4492 * plugins/elements/gstqueue.c: (gst_queue_handle_src_query):
4493 Print at least a warning in the debug logs if we drop a
4494 query just because we don't know how to adjust the value
4495 in the particular format.
4497 2005-12-24 David Schleef <ds@schleef.org>
4499 * tools/gstreamer-completion:
4500 Replacement for gst-complete written in sh and sed. Only
4501 completes names of features, but that's 90% of what I want
4502 it for. Properties are not available in registry.xml. (Maybe
4503 they should be...)
4505 === release 0.10.1 ===
4507 2005-12-23 Thomas Vander Stichele <thomas at apestaart dot org>
4509 * configure.ac:
4510 releasing 0.10.1, "Nollaig chridheil"
4512 2005-12-22 Tim-Philipp Müller <tim at centricular dot net>
4514 * docs/faq/cvs.xml:
4515 Add missing quote, should be make ERROR_CFLAGS="".
4517 2005-12-20 Wim Taymans <wim@fluendo.com>
4519 * docs/design/part-trickmodes.txt:
4520 More documentation on trickmodes.
4522 2005-12-20 Edward Hervey <edward@fluendo.com>
4524 * gst/gstcaps.c: (gst_static_caps_get_type):
4525 * gst/gstcaps.h:
4526 API addition: GST_TYPE_STATIC_CAPS
4527 Added gpointer GType for GstStaticCaps so we can wrap them in bindings.
4528 * gst/gstpadtemplate.c: (gst_static_pad_template_get_type):
4529 * gst/gstpadtemplate.h:
4530 API addition: GST_TYPE_STATIC_PAD_TEMPLATE
4531 Added gpointer GType for GstStaticPadTemplate so we can wrap them in
4532 bindings.
4534 2005-12-18 Wim Taymans <wim@fluendo.com>
4536 * libs/gst/base/gstadapter.c:
4537 * libs/gst/base/gstadapter.h:
4538 * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init),
4539 (gst_base_sink_get_position):
4540 * libs/gst/base/gstbasesink.h:
4541 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
4542 (gst_base_src_default_query), (gst_base_src_default_do_seek),
4543 (gst_base_src_do_seek), (gst_base_src_perform_seek),
4544 (gst_base_src_send_event), (gst_base_src_update_length),
4545 (gst_base_src_get_range), (gst_base_src_loop),
4546 (gst_base_src_start):
4547 * libs/gst/base/gstbasesrc.h:
4548 * libs/gst/base/gstbasetransform.h:
4549 * libs/gst/base/gstcollectpads.h:
4550 * libs/gst/base/gstpushsrc.c:
4551 * libs/gst/base/gstpushsrc.h:
4552 * libs/gst/dataprotocol/dataprotocol.c:
4553 * libs/gst/dataprotocol/dataprotocol.h:
4554 * libs/gst/net/gstnetclientclock.h:
4555 * libs/gst/net/gstnettimeprovider.h:
4556 Documentation updates.
4558 2005-12-18 Tim-Philipp Müller <tim at centricular dot net>
4560 * docs/manual/basics-helloworld.xml:
4561 Remove superfluous closing bracket in helloworld example.
4563 2005-12-17 Tim-Philipp Müller <tim at centricular dot net>
4565 * tools/gst-launch.1.in:
4566 Update gst-launch man page; add a section with useful
4567 environment variables. Fixes #323882.
4569 2005-12-16 Stefan Kost <ensonic@users.sf.net>
4571 * gst/gst.c:
4572 * gst/gst_private.h:
4573 change some char* into char[]
4575 2005-12-16 Wim Taymans <wim@fluendo.com>
4577 * gst/gstregistryxml.c: (load_feature):
4578 Cleanups.
4579 Don't use g_object_unref on GstObjects so that we avoid
4580 leaks on unsafe glibs.
4582 2005-12-16 Wim Taymans <wim@fluendo.com>
4584 * gst/gstbin.c: (gst_bin_recalc_state):
4585 Small doc updates.
4587 2005-12-16 Wim Taymans <wim@fluendo.com>
4589 * common/check.mak:
4590 Added make forever target for check.
4592 2005-12-16 Thomas Vander Stichele <thomas at apestaart dot org>
4594 * gst/gst.c: (init_post):
4595 make the registry cache file HOST_CPU-dependent
4597 2005-12-16 Andy Wingo <wingo@pobox.com>
4599 * plugins/elements/gstbufferstore.c
4600 (gst_buffer_store_cleared_func): Pay attention to g_list_append
4601 return value.
4603 * tests/check/gst/gstobject.c
4604 (test_fake_object_name_threaded_unique): Pay attention to
4605 g_list_sort return value.
4607 2005-12-16 Tim-Philipp Müller <tim at centricular dot net>
4609 * tools/gst-feedback-m.m:
4610 Update for 0.9/0.10 (fixes #323870).
4612 2005-12-15 Tim-Philipp Müller <tim at centricular dot net>
4614 * gst/gstminiobject.c: (gst_value_mini_object_lcopy):
4615 Fix lcopy for mini objects, the mini object needs to be ref'ed.
4617 * tests/check/gst/gstminiobject.c: (my_foo_init),
4618 (my_foo_get_property), (my_foo_set_property), (my_foo_class_init),
4619 (test_value_collection), (gst_mini_object_suite):
4620 Add test to ensure refcounts end up as expected when passing
4621 GstMiniObjects through g_object_get() and g_object_set().
4623 2005-12-14 Julien MOUTTE <julien@moutte.net>
4625 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_base_init),
4626 (gst_collect_pads_remove_pad), (gst_collect_pads_is_collected),
4627 (gst_collect_pads_event), (gst_collect_pads_chain): Refactoring
4628 of collectpads. This version removes a lot of races without
4629 touching API/ABI. Yay !
4631 2005-12-14 Jan Schmidt <thaytan@mad.scientist.com>
4633 * gst/gstpad.c: (gst_pad_activate_pull), (gst_pad_link_prepare):
4634 Don't allow activation of a srcpad in pull_range if it has no
4635 getrange function.
4636 Change some debug statements to be a little clearer
4638 * plugins/elements/gsttypefindelement.c:
4639 (gst_type_find_handle_src_query):
4640 Check that we have a peer before executing queries thereupon.
4642 * tests/examples/metadata/read-metadata.c: (message_loop):
4643 Use gst_bus_pop instead of gst_bus_poll when we just want it to
4644 immediately return us any available message with 0 timeout.
4646 2005-12-12 Michael Smith <msmith@fluendo.com>
4648 * gst/gsttypefindfactory.c: (gst_type_find_factory_call_function):
4649 Don't unref factories after calling them.
4650 * libs/gst/base/gsttypefindhelper.c: (gst_type_find_helper):
4651 * plugins/elements/gsttypefindelement.c:
4652 (gst_type_find_element_chain):
4653 Free lists of factories after using them. Fixing typefinding memory
4654 leaks.
4656 2005-12-12 Stefan Kost <ensonic@users.sf.net>
4658 * gst/gstpluginfeature.c: (gst_plugin_feature_finalize),
4659 (gst_plugin_feature_load):
4660 more meaningful debug output
4661 * configure.ac:
4662 * tests/Makefile.am:
4663 * tests/old/examples/Makefile.am:
4664 make make distcheck happy again
4666 2005-12-12 Tim-Philipp Müller <tim at centricular dot net>
4668 * plugins/elements/gsttypefindelement.c: (stop_typefinding):
4669 Catch the special case where we are operating chain-based,
4670 but the downstream peer pad has no chain function. Emit a
4671 custom error message in this case instead of letting the
4672 core generate one implying that this is some sort of core
4673 bug. It's not, it just means that whatever got plugged
4674 into the pipeline downstream when we announced the type
4675 can only operate pull-based, while our source can only
4676 operate push-based (e.g. http://foo/bar.mov ! qtdemux ! ...)
4677 Error string has not been marked for translation yet, as
4678 it probably needs some more work first.
4680 (gst_type_find_element_get_best_possibility):
4681 Add helper function to find the best of all available
4682 found possibilities that qualify given the min. threshold.
4684 (gst_type_find_element_handle_event):
4685 Fix the case where we get an EOS while still in TYPEFIND
4686 mode (we want to chose the best of all possible types,
4687 not just the first type that happens to be in our unsorted
4688 list of possible types).
4690 (gst_type_find_element_chain):
4691 Make sure we return GST_FLOW_ERROR when we errored out
4692 in stop_typefinding(); also, don't just find the best of
4693 all found type entries and then use the last examined
4694 type entry, but actually use the best entry.
4696 2005-12-12 Tim-Philipp Müller <tim at centricular dot net>
4698 * tests/examples/typefind/typefind.c: (type_found):
4699 * tests/examples/xml/runxml.c: (xml_loaded):
4700 More gcc4 fixes and a mem leak fix.
4702 2005-12-12 Stefan Kost <ensonic@users.sf.net>
4704 * tests/examples/xml/createxml.c: (object_saved):
4705 gcc 4 fixes
4707 2005-12-12 Stefan Kost <ensonic@users.sf.net>
4709 * tests/Makefile.am:
4710 enable the examples even more
4712 2005-12-12 Andy Wingo <wingo@pobox.com>
4714 * libs/gst/net/gstnettimeprovider.c
4715 (gst_net_time_provider_class_init, gst_net_time_provider_init)
4716 (gst_net_time_provider_set_property)
4717 (gst_net_time_provider_get_property):
4718 API addition: Export "active" as a GObject property.
4719 (gst_net_time_provider_thread): Only respond to time queries if
4720 the time provider is active.
4722 * libs/gst/net/gstnettimeprovider.h: Add an "active" boolean to
4723 NetTimeProvider, preserving binary compat.
4725 2005-12-12 Stefan Kost <ensonic@users.sf.net>
4727 * tests/examples/controller/audio-example.c: (main):
4728 * tests/examples/launch/Makefile.am:
4729 convert comments again
4731 2005-12-12 Wim Taymans <wim@fluendo.com>
4733 * libs/gst/base/gstpushsrc.c:
4734 Fix typo.
4736 2005-12-12 Wim Taymans <wim@fluendo.com>
4738 * docs/libs/gstreamer-libs-sections.txt:
4739 Added new symbol to docs.
4741 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
4742 (gst_base_src_init), (gst_base_src_set_format),
4743 (gst_base_src_default_query), (gst_base_src_query),
4744 (gst_base_src_default_do_seek), (gst_base_src_do_seek),
4745 (gst_base_src_perform_seek), (gst_base_src_send_event),
4746 (gst_base_src_default_event), (gst_base_src_event_handler),
4747 (gst_base_src_set_property), (gst_base_src_get_property),
4748 (gst_base_src_wait), (gst_base_src_do_sync),
4749 (gst_base_src_update_length), (gst_base_src_get_range),
4750 (gst_base_src_check_get_range), (gst_base_src_loop),
4751 (gst_base_src_default_negotiate), (gst_base_src_start),
4752 (gst_base_src_activate_push), (gst_base_src_activate_pull),
4753 (gst_base_src_change_state):
4754 * libs/gst/base/gstbasesrc.h:
4755 Implement seeking to other formats than _BYTES.
4756 Implement more seeking methods correctly.
4757 Doc updates.
4758 Added query vmethod.
4759 Added do_seek vmethod to make life easier for subclasses
4760 when seeking.
4761 API addition: gst_base_src_set_format()
4763 2005-12-12 Stefan Kost <ensonic@users.sf.net>
4765 * tests/examples/Makefile.am:
4766 added that too
4768 2005-12-12 Stefan Kost <ensonic@users.sf.net>
4770 * configure.ac:
4771 * docs/random/ensonic/media-device-daemon.txt:
4772 * tests/examples/controller/.cvsignore:
4773 * tests/examples/controller/Makefile.am:
4774 * tests/examples/controller/audio-example.c: (main):
4775 * tests/examples/helloworld/.cvsignore:
4776 * tests/examples/helloworld/Makefile.am:
4777 * tests/examples/helloworld/helloworld.c: (event_loop), (main):
4778 * tests/examples/launch/.cvsignore:
4779 * tests/examples/launch/Makefile.am:
4780 * tests/examples/launch/mp3parselaunch.c: (event_loop), (main):
4781 * tests/examples/metadata/.cvsignore:
4782 * tests/examples/metadata/Makefile.am:
4783 * tests/examples/metadata/read-metadata.c: (message_loop),
4784 (make_pipeline), (print_tag), (main):
4785 * tests/examples/queue/.cvsignore:
4786 * tests/examples/queue/Makefile.am:
4787 * tests/examples/queue/queue.c: (event_loop), (main):
4788 * tests/examples/typefind/.cvsignore:
4789 * tests/examples/typefind/Makefile.am:
4790 * tests/examples/typefind/typefind.c: (type_found), (event_loop),
4791 (main):
4792 * tests/examples/xml/.cvsignore:
4793 * tests/examples/xml/Makefile.am:
4794 * tests/examples/xml/createxml.c: (object_saved), (main):
4795 * tests/examples/xml/runxml.c: (xml_loaded), (event_loop), (main):
4796 * tests/old/examples/Makefile.am:
4797 * tests/old/examples/TODO:
4798 * tests/old/examples/controller/.cvsignore:
4799 * tests/old/examples/controller/Makefile.am:
4800 * tests/old/examples/controller/audio-example.c:
4801 * tests/old/examples/helloworld/.cvsignore:
4802 * tests/old/examples/helloworld/Makefile.am:
4803 * tests/old/examples/helloworld/helloworld.c:
4804 * tests/old/examples/launch/.cvsignore:
4805 * tests/old/examples/launch/Makefile.am:
4806 * tests/old/examples/launch/mp3parselaunch.c:
4807 * tests/old/examples/launch/mp3play:
4808 * tests/old/examples/manual/Makefile.am:
4809 * tests/old/examples/metadata/Makefile.am:
4810 * tests/old/examples/metadata/read-metadata.c:
4811 * tests/old/examples/queue/.cvsignore:
4812 * tests/old/examples/queue/Makefile.am:
4813 * tests/old/examples/queue/queue.c:
4814 * tests/old/examples/typefind/.cvsignore:
4815 * tests/old/examples/typefind/Makefile.am:
4816 * tests/old/examples/typefind/typefind.c:
4817 * tests/old/examples/xml/.cvsignore:
4818 * tests/old/examples/xml/Makefile.am:
4819 * tests/old/examples/xml/createxml.c:
4820 * tests/old/examples/xml/runxml.c:
4821 applied some simple fixing to some examples
4822 re-enabled the working examples
4824 2005-12-12 Wim Taymans <wim@fluendo.com>
4826 * gst/gstsegment.c: (gst_segment_init),
4827 (gst_segment_set_last_stop), (gst_segment_set_seek),
4828 (gst_segment_set_newsegment), (gst_segment_to_stream_time),
4829 (gst_segment_to_running_time):
4830 Added more documentation.
4831 Make sure the last_pos value is updated properly.
4832 Make sure to_stream_time and to_running_time don't
4833 operate on wrong values.
4835 * tests/check/gst/gstsegment.c: (GST_START_TEST):
4836 Update check.
4838 2005-12-12 Michael Smith <msmith@fluendo.com>
4840 * plugins/elements/gsttypefindelement.c: (free_entry),
4841 (gst_type_find_element_chain):
4842 Now that we're not leaking factories, make sure we keep references
4843 to them while we need them.
4845 2005-12-12 Thomas Vander Stichele <thomas at apestaart dot org>
4847 * tests/check/gst/struct_i386.h:
4848 ifdef out the XML structs
4850 2005-12-12 Thomas Vander Stichele <thomas at apestaart dot org>
4852 * gst/gstvalue.c: (gst_value_transform_double_fraction):
4853 floor is not needed, F is always positive; this obviates the
4854 need for adding -lm when building without libxml
4856 2005-12-12 Wim Taymans <wim@fluendo.com>
4858 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_position):
4859 Take current playback rate into account when reporting
4860 the position.
4862 2005-12-11 Tim-Philipp Müller <tim at centricular dot net>
4864 * docs/manual/mime-world.fig:
4865 Let's try this again, this time with a file that is
4866 actually in XFig format.
4868 2005-12-11 Tim-Philipp Müller <tim at centricular dot net>
4870 * docs/manual/mime-world.fig:
4871 Add audioconvert element to diagram so that it
4872 matches the text and the code (fixes #319526).
4874 2005-12-11 Tim-Philipp Müller <tim at centricular dot net>
4876 * docs/pwg/building-chainfn.xml:
4877 * docs/pwg/building-pads.xml:
4878 * docs/pwg/building-state.xml:
4879 * docs/pwg/other-source.xml:
4880 Update state change stuff for 0.10 (fixes #322969).
4882 2005-12-11 Tim-Philipp Müller <tim at centricular dot net>
4884 * docs/manual/advanced-dataaccess.xml:
4885 * docs/manual/appendix-checklist.xml:
4886 * docs/manual/appendix-programs.xml:
4887 * docs/manual/basics-pads.xml:
4888 * docs/manual/highlevel-components.xml:
4889 * docs/manual/manual.xml:
4890 Update for 0.10: s/0.9/0.10/; s/audioscale/audiorsample/;
4891 add converters in front of pipelines; remove curly
4892 brackets for threads stuff, they no longer exist; use
4893 GST_TYPE_FRACTION for framerates; update some pieces of
4894 code to 0.10, but there's plenty more to do.
4896 * docs/manual/appendix-porting.xml:
4897 Expand on asynchroneous state changes; s/0.9/0.10/;
4898 mention disappearance of gst_init_get_popt_table()
4899 (fixes #322916).
4901 2005-12-11 Tim-Philipp Müller <tim at centricular dot net>
4903 * docs/faq/using.xml:
4904 Spider no longer exists, and neither does gst-launch-ext.
4905 Update examples to use decodebin and playbin and put
4906 converters in front of sinks (fixes #323726).
4908 2005-12-09 Michael Smith <msmith@fluendo.com>
4910 * plugins/elements/gsttypefindelement.c: (find_peek),
4911 (gst_type_find_element_chain):
4912 Fix leaking element factories in typefinding.
4913 Fix problem where we forgot about a probable type on non-seekable
4914 files, and thus later mis-typefound it.
4916 2005-12-09 Michael Smith <msmith@fluendo.com>
4918 * common/m4/gst-makecontext.m4:
4919 * common/m4/gst-mcsc.m4:
4920 * configure.ac:
4921 * win32/common/config.h:
4922 * win32/common/config.h.in:
4923 Remove makecontext stuff; not used in 0.10 and causes problems on
4924 HPUX according to bug #322441
4926 2005-12-07 Wim Taymans <wim@fluendo.com>
4928 * tests/check/Makefile.am:
4929 * tests/check/libs/libsabi.c: (GST_START_TEST), (gstabi_suite),
4930 (main):
4931 * tests/check/libs/struct_i386.h:
4932 Added ABI check for libs
4934 2005-12-07 Wim Taymans <wim@fluendo.com>
4936 * tests/check/Makefile.am:
4937 And add the struct_i386.h to dist.
4939 2005-12-07 Wim Taymans <wim@fluendo.com>
4941 * tests/check/Makefile.am:
4942 * tests/check/gst/.cvsignore:
4943 * tests/check/gst/gstabi.c: (GST_START_TEST), (gstabi_suite),
4944 (main):
4945 * tests/check/gst/struct_i386.h:
4946 Added check for ABI compatibility.
4948 2005-12-07 Wim Taymans <wim@fluendo.com>
4950 * plugins/elements/gstfakesrc.c: (gst_fake_src_class_init),
4951 (gst_fake_src_get_times), (gst_fake_src_create):
4952 Fix broken sync option, fixes #323259
4954 2005-12-07 Wim Taymans <wim@fluendo.com>
4956 * gst/gstbuffer.c:
4957 Small docs update.
4959 * gst/gstcaps.c: (gst_caps_is_equal):
4960 Don't assert on NULL <--> X. Fixes #323260
4962 * gst/gstminiobject.c: (gst_mini_object_replace):
4963 If we're doing atomic operations, we might just as well use
4964 the proper way to get an atomic pointer.
4966 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_position):
4967 Clean up debugging.
4969 2005-12-07 Michael Smith <msmith@fluendo.com>
4971 * gst/parse/grammar.y:
4972 Remove handling of { } for threads.
4974 2005-12-06 David Schleef <ds@schleef.org>
4976 * libs/gst/base/gstbasetransform.c: speling fix.
4978 2005-12-06 Thomas Vander Stichele <thomas at apestaart dot org>
4980 * docs/libs/tmpl/gstdataprotocol.sgml:
4981 * docs/random/omega/testing/gstobject.c:
4982 * gst/gst.c:
4983 * gst/gstclock.c:
4984 * gst/gstelement.c:
4985 * gst/gstelementfactory.c:
4986 * gst/gsterror.c:
4987 * gst/gstevent.c:
4988 * gst/gstghostpad.c:
4989 * gst/gstinfo.c:
4990 * gst/gstpadtemplate.c:
4991 * gst/gstregistryxml.c:
4992 * gst/gsttaglist.c:
4993 * gst/gsttagsetter.c:
4994 * gst/gsttypefind.c:
4995 * gst/gstvalue.c:
4996 * libs/gst/base/gstbasesrc.c:
4997 * libs/gst/net/gstnetclientclock.c:
4998 * libs/gst/net/gstnettimeprovider.c:
4999 * plugins/elements/gstfakesrc.c:
5000 * plugins/elements/gstfdsrc.c:
5001 * plugins/elements/gstfilesrc.c:
5002 * plugins/elements/gstidentity.c:
5003 * plugins/elements/gstqueue.c:
5004 * plugins/elements/gsttypefindelement.c:
5005 * plugins/indexers/gstfileindex.c:
5006 * plugins/indexers/gstmemindex.c:
5007 * tests/check/gst/gsttag.c:
5008 * tests/old/examples/cutter/cutter.c:
5009 * tests/old/examples/mixer/mixer.c:
5010 * tests/old/examples/xml/runxml.c: (main):
5011 * tests/old/testsuite/caps/normalisation.c:
5012 * tests/old/testsuite/debug/global.c:
5013 * tests/old/testsuite/parse/parse1.c:
5014 * tools/gst-xmlinspect.c:
5015 * win32/common/dirent.c:
5016 expand tabs
5018 === release 0.10.0 ===
5020 2005-12-05 <thomas (at) apestaart (dot) org>
5022 * configure.ac:
5023 releasing 0.10.0, "Maroilles"
5025 2005-12-05 Thomas Vander Stichele <thomas at apestaart dot org>
5027 submitted by: Funda Wang <fundawang@linux.net.cn>
5029 * po/LINGUAS:
5030 * po/zh_CN.po:
5031 added Chinese (Traditional) translation
5033 2005-12-05 Thomas Vander Stichele <thomas at apestaart dot org>
5035 * docs/gst/gstreamer-sections.txt:
5036 * docs/libs/tmpl/gstdataprotocol.sgml:
5037 * docs/random/thomasvs/TODO:
5038 * gst/gstutils.c:
5039 * gst/gstutils.h:
5040 fix docs
5042 2005-12-05 Andy Wingo <wingo@pobox.com>
5044 patch by: Wim Taymans <wim@fluendo.com>
5046 * libs/gst/base/gstbasetransform.c
5047 (gst_base_transform_prepare_output_buf)
5048 (gst_base_transform_buffer_alloc):
5049 * plugins/elements/gstqueue.c (gst_queue_bufferalloc): Call
5050 alloc_buffer_and_set_caps.
5052 * gst/gstpad.c (gst_pad_alloc_buffer): Changed to not call
5053 set_caps on the source pad.
5054 (gst_pad_alloc_buffer_and_set_caps): New function, does what
5055 alloc_buffer used to do. Fixes #322874.
5057 * docs/gst/gstreamer-sections.txt:
5058 * docs/design/part-negotiation.txt:
5059 * docs/pwg/advanced-negotiation.xml: Update for the alloc_buffer
5060 changes.
5062 2005-12-05 Thomas Vander Stichele <thomas at apestaart dot org>
5064 patch by: Sebastien Moutte
5066 * win32/MANIFEST:
5067 * win32/common/config.h.in:
5068 * win32/vs6/libgstcontroller.dsp:
5069 win32 build fixes
5071 2005-12-05 Wim Taymans <wim@fluendo.com>
5073 * gst/gstcaps.c: (gst_caps_is_equal):
5074 * plugins/elements/gstfakesrc.c: (gst_fake_src_class_init),
5075 (gst_fake_src_create):
5076 Back out previous code changes, leave doc updates, file bugs
5077 instead.
5079 2005-12-05 Wim Taymans <wim@fluendo.com>
5081 * plugins/elements/gstfakesrc.c: (gst_fake_src_class_init),
5082 (gst_fake_src_get_times), (gst_fake_src_create):
5083 * plugins/elements/gstfakesrc.h:
5084 Fix broken sync code.
5086 2005-12-05 Wim Taymans <wim@fluendo.com>
5088 * gst/gstcaps.c: (gst_caps_is_equal):
5089 Comparing NULL against !NULL yields different caps, not a
5090 failure.
5092 2005-12-05 Wim Taymans <wim@fluendo.com>
5094 * gst/gstpipeline.c:
5095 Fix small typo in docs.
5097 2005-12-05 Andy Wingo <wingo@pobox.com>
5099 patch by: Thomas Vander Stichele <thomas at apestaart dot org>
5101 * gst/gst.c (init_post): remove hard-coded 0.9 location for
5102 registries/plugins with a MAJORMINOR one.
5103 (plugin_desc): Rename library from gstcoreleements to
5104 staticelements. Fixes #323222.
5106 2005-12-05 Tim-Philipp Müller <tim at centricular dot net>
5108 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_base_init):
5109 Change debug category to 'collectpads' from 'collect_pads'
5110 (fixes #323250).
5112 2005-12-04 Thomas Vander Stichele <thomas at apestaart dot org>
5114 patch by: Sebastien Moutte
5116 * libs/gst/controller/gstinterpolation.c:
5117 use convert function for uint64/double
5118 * win32/vs6/libgstcontroller.dsp:
5119 link to GLib
5121 2005-12-04 Thomas Vander Stichele <thomas at apestaart dot org>
5123 * gst/gstutils.c: (gst_util_guint64_to_gdouble),
5124 (gst_util_gdouble_to_guint64), (gst_util_uint64_scale_int64):
5125 * gst/gstutils.h:
5126 * tests/check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
5127 add tests that seem to show that the guint64/gdouble conversions
5128 are correct.
5130 2005-12-02 Wim Taymans <wim@fluendo.com>
5132 * gst/gstregistry.c: (gst_registry_add_path):
5133 * gst/gstregistry.h:
5134 * gst/gstregistryxml.c:
5135 Fix docs again.
5137 2005-12-02 Wim Taymans <wim@fluendo.com>
5139 * gst/gstutils.c: (gst_util_uint64_scale_int64),
5140 (gst_util_uint64_scale_int):
5141 Small cleanup.
5143 * libs/gst/base/gstbasesink.c: (gst_base_sink_handle_object):
5144 Add debug log line.
5146 * libs/gst/base/gstbasetransform.c: (gst_base_transform_event):
5147 Add FIXME.
5149 2005-12-02 Thomas Vander Stichele <thomas at apestaart dot org>
5151 * win32/MANIFEST:
5152 * win32/common/config.h:
5153 * win32/vs6/gstreamer.dsw:
5154 * win32/vs6/libgstcoreelements.dsp:
5155 * win32/vs6/libgstelements.dsp:
5156 renamed core elements plugin
5158 2005-12-02 Thomas Vander Stichele <thomas at apestaart dot org>
5160 * tools/gst-run.c: (compare_major_minor), (find_highest_version),
5161 (get_candidates):
5162 do piece-wise major/minor comparison so 0.9 < 0.10
5163 also allow .exe extensions for tools
5165 2005-12-02 Michael Smith <msmith@fluendo.com>
5167 * gst/gst.c:
5168 Escape a % to make gtkdoc happier; bug 322958.
5170 === release 0.9.7 ===
5172 2005-12-01 <thomas (at) apestaart (dot) org>
5174 * configure.ac:
5175 releasing 0.9.7, "My Dog Has No Nose"
5177 2005-12-01 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
5179 * common/gst-xmlinspect.py:
5180 * configure.ac:
5181 * docs/libs/tmpl/gstdataprotocol.sgml:
5182 * docs/random/release:
5183 * po/af.po:
5184 * po/az.po:
5185 * po/bg.po:
5186 * po/ca.po:
5187 * po/cs.po:
5188 * po/de.po:
5189 * po/en_GB.po:
5190 * po/fr.po:
5191 * po/it.po:
5192 * po/nb.po:
5193 * po/nl.po:
5194 * po/ru.po:
5195 * po/sq.po:
5196 * po/sr.po:
5197 * po/sv.po:
5198 * po/tr.po:
5199 * po/uk.po:
5200 * po/vi.po:
5201 * win32/common/config.h:
5202 * win32/common/config.h.in:
5203 * win32/vs6/gst_inspect.dsp:
5204 * win32/vs6/gst_launch.dsp:
5205 * win32/vs6/libgstbase.dsp:
5206 * win32/vs6/libgstelements.dsp:
5207 * win32/vs6/libgstreamer.dsp:
5208 * win32/vs7/GStreamer.vcproj:
5209 * win32/vs7/gst-inspect.vcproj:
5210 * win32/vs7/gst-launch.vcproj:
5211 * win32/vs7/libgstbase.vcproj:
5212 bump GST_MAJORMINOR to 0.10
5213 reset libtool version
5215 2005-12-01 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
5217 * po/LINGUAS:
5218 * po/bg.po:
5219 Added Bulgarian translation by (Alexander Shopov)
5221 2005-12-01 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
5223 * tests/check/gst/gstplugin.c:
5224 fix test
5226 2005-12-01 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
5228 * common/gst-xmlinspect.py:
5229 * common/gtk-doc-plugins.mak:
5230 * configure.ac:
5231 * docs/Makefile.am:
5232 * docs/gst/Makefile.am:
5233 * docs/gst/gstreamer-docs.sgml:
5234 * docs/gst/gstreamer-sections.txt:
5235 * docs/gst/gstreamer.types:
5236 * docs/gst/gstreamer.types.in:
5237 * docs/plugins/Makefile.am:
5238 * docs/plugins/gstreamer-plugins-docs.sgml:
5239 * docs/plugins/gstreamer-plugins-sections.txt:
5240 * docs/plugins/gstreamer-plugins.types:
5241 * docs/plugins/inspect.stamp:
5242 * docs/plugins/inspect/plugin-coreelements.xml:
5243 * docs/plugins/inspect/plugin-coreindexers.xml:
5244 * docs/plugins/scanobj-build.stamp:
5245 * gstreamer.spec.in:
5246 * plugins/elements/Makefile.am:
5247 * plugins/elements/gstelements.c:
5248 * plugins/elements/gstfakesink.c:
5249 * plugins/elements/gstfakesrc.c:
5250 * plugins/elements/gstfilesink.c:
5251 * plugins/elements/gstfilesrc.c:
5252 * plugins/elements/gstqueue.c:
5253 * plugins/indexers/Makefile.am:
5254 * plugins/indexers/gstindexers.c:
5255 document core plugins in a separate document just like all the
5256 others
5257 rename these plugins to something starting with core
5259 2005-12-01 Andy Wingo <wingo@pobox.com>
5261 * gst/gstevent.h (struct _GstEvent): Meant to remove the extra
5262 padding here before, but it missed the commit.
5264 2005-12-01 Thomas Vander Stichele <thomas at apestaart dot org>
5266 * libs/gst/controller/gstinterpolation.c:
5267 whitespace prices have crashed, we should feel free to use some now
5268 use gst_guint64_to_gdouble
5270 2005-12-01 Thomas Vander Stichele <thomas at apestaart dot org>
5272 * libs/gst/controller/gstcontroller.c:
5273 * libs/gst/controller/gsthelper.c:
5274 * libs/gst/controller/gstinterpolation.c:
5275 * libs/gst/controller/lib.c:
5276 wrap config.h include
5278 2005-12-01 Thomas Vander Stichele <thomas at apestaart dot org>
5280 * docs/gst/gstreamer-sections.txt:
5281 update docs
5283 2005-12-01 Thomas Vander Stichele <thomas at apestaart dot org>
5285 * plugins/elements/gstelements.c:
5286 * plugins/elements/gstfdsink.c: (gst_fd_sink__base_init),
5287 (gst_fd_sink__class_init), (gst_fd_sink__init),
5288 (gst_fd_sink__chain), (gst_fd_sink__set_property),
5289 (gst_fd_sink__get_property):
5290 * plugins/elements/gstfdsink.h:
5291 * plugins/elements/gstfdsrc.c: (_do_init), (gst_fd_src_base_init),
5292 (gst_fd_src_class_init), (gst_fd_src_init), (gst_fd_src_dispose),
5293 (gst_fd_src_update_fd), (gst_fd_src_start), (gst_fd_src_stop),
5294 (gst_fd_src_unlock), (gst_fd_src_set_property),
5295 (gst_fd_src_get_property), (gst_fd_src_create),
5296 (gst_fd_src_is_seekable), (gst_fd_src_get_size),
5297 (gst_fd_src_uri_get_type), (gst_fd_src_uri_get_protocols),
5298 (gst_fd_src_uri_get_uri), (gst_fd_src_uri_set_uri),
5299 (gst_fd_src_uri_handler_init):
5300 * plugins/elements/gstfdsrc.h:
5301 * plugins/elements/gstqueue.c: (gst_queue_get_type):
5302 more anal cleanup
5304 2005-11-30 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
5306 * docs/gst/Makefile.am:
5307 * docs/gst/gstreamer.types.in:
5308 * gst/Makefile.am:
5309 fix the docs build
5311 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
5313 * configure.ac:
5314 * gst/Makefile.am:
5315 * gst/gst.c:
5316 * gst/gstplugin.h:
5317 * gst/gstregistry.h:
5318 * tests/benchmarks/complexity.c:
5319 * tests/benchmarks/mass-elements.c:
5320 * tests/check/Makefile.am:
5321 * tools/Makefile.am:
5322 * tools/gst-inspect.c:
5323 * tools/gst-xmlinspect.c:
5324 various fixes to make
5325 --disable-nls --disable-registry --disable-loadsave
5326 --disable-parse --disable-gst-debug
5327 work and get the core .so down to 360444 bytes after stripping
5329 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
5331 * Makefile.am:
5332 * configure.ac:
5333 descend into tests
5334 * docs/random/thomasvs/TODO:
5335 * tests/Makefile.am:
5336 * tests/README:
5337 add a README
5339 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
5341 * win32/GStreamer.vcproj:
5342 * win32/MANIFEST:
5343 * win32/Makefile:
5344 * win32/Makefile.inspect:
5345 * win32/Makefile.launch:
5346 * win32/Makefile.register:
5347 * win32/README.txt:
5348 * win32/gst-inspect.vcproj:
5349 * win32/gst-launch.vcproj:
5350 * win32/gst-register.vcproj:
5351 * win32/gstelements.vcproj:
5352 * win32/gstgetbits.def:
5353 * win32/gstgetbits.vcproj:
5354 * win32/gstreamer-dbg.def:
5355 * win32/gstreamer.def:
5356 * win32/libgstbase.def:
5357 * win32/libgstbase.vcproj:
5358 * win32/link_oldruntime.c:
5359 * win32/mman.c:
5360 * win32/mman.h:
5361 * win32/mman.inl:
5362 * win32/msvc71.sln:
5363 move even more stuff, win32/ is nice and clean now
5365 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
5367 * libs/gst/control/.cvsignore:
5368 * win32/MANIFEST:
5369 * win32/config.h:
5370 * win32/dirent.c:
5371 * win32/dirent.h:
5372 * win32/gstbytestream.def:
5373 * win32/gstbytestream.vcproj:
5374 * win32/gstconfig.h:
5375 * win32/gstenumtypes.c:
5376 * win32/gstenumtypes.h:
5377 * win32/gstoptimalscheduler.vcproj:
5378 * win32/gstversion.h:
5379 * win32/gtchar.h:
5380 * win32/testsuite/bins.vcproj:
5381 * win32/testsuite/bytestream.vcproj:
5382 * win32/testsuite/caps.vcproj:
5383 * win32/testsuite/cleanup.vcproj:
5384 * win32/testsuite/clock.vcproj:
5385 * win32/testsuite/debug.vcproj:
5386 * win32/testsuite/dlopen.vcproj:
5387 * win32/testsuite/dynparams.vcproj:
5388 * win32/testsuite/elements.vcproj:
5389 * win32/testsuite/ghostpads.vcproj:
5390 * win32/testsuite/indexers.vcproj:
5391 * win32/testsuite/negotiation.vcproj:
5392 * win32/testsuite/parse.vcproj:
5393 * win32/testsuite/plugin.vcproj:
5394 * win32/testsuite/refcounting.vcproj:
5395 * win32/testsuite/schedulers.vcproj:
5396 * win32/testsuite/states.vcproj:
5397 * win32/testsuite/tags.vcproj:
5398 * win32/testsuite/threads.vcproj:
5399 remove old win32 stuff that isn't maintained and should be
5400 reorganized
5402 2005-11-30 Andy Wingo <wingo@pobox.com>
5404 * configure.ac (GST_PKG_DEPS): Revert previous patch, makes
5405 loading the gst.interfaces python module bork.
5407 * configure.ac (GST_PKG_DEPS): Use gmodule-no-export-2.0.pc,
5408 available since GLib 2.2. Fixes #318031.
5410 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
5412 * Makefile.am:
5413 * check/.cvsignore:
5414 * check/Makefile.am:
5415 * check/elements/.cvsignore:
5416 * check/elements/fakesrc.c:
5417 * check/elements/fdsrc.c:
5418 * check/elements/identity.c:
5419 * check/generic/.cvsignore:
5420 * check/generic/states.c:
5421 * check/gst-libs/.cvsignore:
5422 * check/gst-libs/controller.c:
5423 * check/gst-libs/gdp.c:
5424 * check/gst/.cvsignore:
5425 * check/gst/capslist.h:
5426 * check/gst/gst.c:
5427 * check/gst/gstbin.c:
5428 * check/gst/gstbuffer.c:
5429 * check/gst/gstbus.c:
5430 * check/gst/gstcaps.c:
5431 * check/gst/gstelement.c:
5432 * check/gst/gstevent.c:
5433 * check/gst/gstghostpad.c:
5434 * check/gst/gstiterator.c:
5435 * check/gst/gstmessage.c:
5436 * check/gst/gstminiobject.c:
5437 * check/gst/gstobject.c:
5438 * check/gst/gstpad.c:
5439 * check/gst/gstpipeline.c:
5440 * check/gst/gstplugin.c:
5441 * check/gst/gstsegment.c:
5442 * check/gst/gststructure.c:
5443 * check/gst/gstsystemclock.c:
5444 * check/gst/gsttag.c:
5445 * check/gst/gstutils.c:
5446 * check/gst/gstvalue.c:
5447 * check/net/.cvsignore:
5448 * check/net/gstnetclientclock.c:
5449 * check/net/gstnettimeprovider.c:
5450 * check/pipelines/.cvsignore:
5451 * check/pipelines/cleanup.c:
5452 * check/pipelines/simple_launch_lines.c:
5453 * check/pipelines/stress.c:
5454 * check/states/.cvsignore:
5455 * check/states/sinks.c:
5456 * configure.ac:
5457 * examples/Makefile.am:
5458 * examples/appreader/.cvsignore:
5459 * examples/appreader/Makefile.am:
5460 * examples/appreader/appreader.c:
5461 * examples/controller/.cvsignore:
5462 * examples/controller/Makefile.am:
5463 * examples/controller/audio-example.c:
5464 * examples/cutter/.cvsignore:
5465 * examples/cutter/Makefile.am:
5466 * examples/cutter/cutter.c:
5467 * examples/cutter/cutter.h:
5468 * examples/events/Makefile.am:
5469 * examples/events/seek.c:
5470 * examples/helloworld/.cvsignore:
5471 * examples/helloworld/Makefile.am:
5472 * examples/helloworld/helloworld.c:
5473 * examples/helloworld2/.cvsignore:
5474 * examples/helloworld2/Makefile.am:
5475 * examples/helloworld2/helloworld2.c:
5476 * examples/launch/.cvsignore:
5477 * examples/launch/Makefile.am:
5478 * examples/launch/mp3parselaunch.c:
5479 * examples/launch/mp3play:
5480 * examples/manual/.cvsignore:
5481 * examples/manual/Makefile.am:
5482 * examples/manual/extract.pl:
5483 * examples/metadata/Makefile.am:
5484 * examples/metadata/read-metadata.c:
5485 * examples/mixer/.cvsignore:
5486 * examples/mixer/Makefile.am:
5487 * examples/mixer/mixer.c:
5488 * examples/mixer/mixer.h:
5489 * examples/pingpong/.cvsignore:
5490 * examples/pingpong/Makefile.am:
5491 * examples/pingpong/pingpong.c:
5492 * examples/plugins/.cvsignore:
5493 * examples/plugins/Makefile.am:
5494 * examples/plugins/example.c:
5495 * examples/plugins/example.h:
5496 * examples/pwg/.cvsignore:
5497 * examples/pwg/Makefile.am:
5498 * examples/pwg/extract.pl:
5499 * examples/queue/.cvsignore:
5500 * examples/queue/Makefile.am:
5501 * examples/queue/queue.c:
5502 * examples/queue2/.cvsignore:
5503 * examples/queue2/Makefile.am:
5504 * examples/queue2/queue2.c:
5505 * examples/queue3/.cvsignore:
5506 * examples/queue3/Makefile.am:
5507 * examples/queue3/queue3.c:
5508 * examples/queue4/.cvsignore:
5509 * examples/queue4/Makefile.am:
5510 * examples/queue4/queue4.c:
5511 * examples/retag/.cvsignore:
5512 * examples/retag/Makefile.am:
5513 * examples/retag/retag.c:
5514 * examples/retag/transcode.c:
5515 * examples/thread/.cvsignore:
5516 * examples/thread/Makefile.am:
5517 * examples/thread/thread.c:
5518 * examples/typefind/.cvsignore:
5519 * examples/typefind/Makefile.am:
5520 * examples/typefind/typefind.c:
5521 * examples/xml/.cvsignore:
5522 * examples/xml/Makefile.am:
5523 * examples/xml/createxml.c:
5524 * examples/xml/runxml.c:
5525 * tests/Makefile.am:
5526 * tests/check/Makefile.am:
5527 * testsuite/.cvsignore:
5528 * testsuite/Makefile.am:
5529 * testsuite/Rules:
5530 * testsuite/caps/.cvsignore:
5531 * testsuite/caps/Makefile.am:
5532 * testsuite/caps/app_fixate.c:
5533 * testsuite/caps/audioscale.c:
5534 * testsuite/caps/caps.c:
5535 * testsuite/caps/caps.h:
5536 * testsuite/caps/caps_strings:
5537 * testsuite/caps/compatibility.c:
5538 * testsuite/caps/deserialize.c:
5539 * testsuite/caps/enumcaps.c:
5540 * testsuite/caps/eratosthenes.c:
5541 * testsuite/caps/filtercaps.c:
5542 * testsuite/caps/fixed.c:
5543 * testsuite/caps/fraction-convert.c:
5544 * testsuite/caps/fraction-multiply-and-zero.c:
5545 * testsuite/caps/intersect2.c:
5546 * testsuite/caps/intersection.c:
5547 * testsuite/caps/normalisation.c:
5548 * testsuite/caps/random.c:
5549 * testsuite/caps/renegotiate.c:
5550 * testsuite/caps/sets.c:
5551 * testsuite/caps/simplify.c:
5552 * testsuite/caps/string-conversions.c:
5553 * testsuite/caps/structure.c:
5554 * testsuite/caps/subtract.c:
5555 * testsuite/caps/union.c:
5556 * testsuite/debug/.cvsignore:
5557 * testsuite/debug/Makefile.am:
5558 * testsuite/debug/category.c:
5559 * testsuite/debug/commandline.c:
5560 * testsuite/debug/global.c:
5561 * testsuite/debug/output.c:
5562 * testsuite/debug/printf_extension.c:
5563 * testsuite/dlopen/.cvsignore:
5564 * testsuite/dlopen/Makefile.am:
5565 * testsuite/dlopen/dlopen_gst.c:
5566 * testsuite/dlopen/loadgst.c:
5567 * testsuite/elements/.cvsignore:
5568 * testsuite/elements/Makefile.am:
5569 * testsuite/elements/gst-inspect-check.in:
5570 * testsuite/elements/struct_i386.h:
5571 * testsuite/elements/struct_size.c:
5572 * testsuite/indexers/.cvsignore:
5573 * testsuite/indexers/Makefile.am:
5574 * testsuite/indexers/cache1.c:
5575 * testsuite/indexers/indexdump.c:
5576 * testsuite/parse/.cvsignore:
5577 * testsuite/parse/Makefile.am:
5578 * testsuite/parse/parse1.c:
5579 * testsuite/parse/parse2.c:
5580 * testsuite/plugin/.cvsignore:
5581 * testsuite/plugin/Makefile.am:
5582 * testsuite/plugin/README:
5583 * testsuite/plugin/dynamic.c:
5584 * testsuite/plugin/linked.c:
5585 * testsuite/plugin/loading.c:
5586 * testsuite/plugin/registry.c:
5587 * testsuite/plugin/static.c:
5588 * testsuite/plugin/static2.c:
5589 * testsuite/plugin/testplugin.c:
5590 * testsuite/plugin/testplugin2.c:
5591 * testsuite/plugin/testplugin2_s.c:
5592 * testsuite/plugin/testplugin_s.c:
5593 * testsuite/refcounting/.cvsignore:
5594 * testsuite/refcounting/Makefile.am:
5595 * testsuite/refcounting/bin.c:
5596 * testsuite/refcounting/element.c:
5597 * testsuite/refcounting/element_pad.c:
5598 * testsuite/refcounting/mainloop.c:
5599 * testsuite/refcounting/mem.c:
5600 * testsuite/refcounting/mem.h:
5601 * testsuite/refcounting/object.c:
5602 * testsuite/refcounting/pad.c:
5603 * testsuite/refcounting/sched.c:
5604 * testsuite/refcounting/thread.c:
5605 * testsuite/states/.cvsignore:
5606 * testsuite/states/Makefile.am:
5607 * testsuite/states/bin.c:
5608 * testsuite/states/locked.c:
5609 * testsuite/states/parent.c:
5610 * testsuite/threads/.cvsignore:
5611 * testsuite/threads/159566.c:
5612 * testsuite/threads/159852.c:
5613 * testsuite/threads/Makefile.am:
5614 * testsuite/threads/queue.c:
5615 * testsuite/threads/signals.c:
5616 * testsuite/threads/staticrec.c:
5617 * testsuite/threads/thread.c:
5618 * testsuite/threads/threadb.c:
5619 * testsuite/threads/threadc.c:
5620 * testsuite/threads/threadd.c:
5621 * testsuite/threads/threade.c:
5622 * testsuite/threads/threadf.c:
5623 * testsuite/threads/threadg.c:
5624 * testsuite/threads/threadh.c:
5625 * testsuite/threads/threadi.c:
5626 move all of these under tests
5628 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
5630 * configure.ac:
5631 * tests/Makefile.am:
5632 fix distcheck
5634 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
5636 * docs/gst/gstreamer-sections.txt:
5637 * tests/sched/.cvsignore:
5638 * tests/sched/Makefile.am:
5639 * tests/sched/cases/(fs-fs).xml:
5640 * tests/sched/cases/(fs-i-fs).xml:
5641 * tests/sched/cases/(fs-i-i-fs).xml:
5642 * tests/sched/cases/(fs-i-q[i-fs]).xml:
5643 * tests/sched/dynamic-pipeline.c:
5644 * tests/sched/interrupt1.c:
5645 * tests/sched/interrupt2.c:
5646 * tests/sched/interrupt3.c:
5647 * tests/sched/runtestcases:
5648 * tests/sched/runxml.c:
5649 * tests/sched/sched-stress.c:
5650 * tests/sched/sort.c:
5651 * tests/sched/testcases:
5652 * tests/sched/testcases1.tc:
5653 * tests/seeking/.cvsignore:
5654 * tests/seeking/Makefile.am:
5655 * tests/seeking/seeking1.c:
5656 * tests/threadstate/.cvsignore:
5657 * tests/threadstate/Makefile.am:
5658 * tests/threadstate/test1.c:
5659 * tests/threadstate/test2.c:
5660 * tests/threadstate/threadstate1.c:
5661 * tests/threadstate/threadstate2.c:
5662 * tests/threadstate/threadstate3.c:
5663 * tests/threadstate/threadstate4.c:
5664 * tests/threadstate/threadstate5.c:
5665 remove obsolete tests
5666 * configure.ac:
5667 * tests/bench-complexity.scm:
5668 * tests/bench-mass_elements.scm:
5669 * tests/complexity.c:
5670 * tests/complexity.gnuplot:
5671 * tests/instantiate/.cvsignore:
5672 * tests/instantiate/Makefile.am:
5673 * tests/instantiate/caps.c:
5674 * tests/mass_elements.c:
5675 * tests/network-clock-utils.scm:
5676 * tests/network-clock.scm:
5677 * tests/plot-data:
5678 First pass at cleaning up tests/ dir before moving the rest
5679 Combined with CVS surgery
5681 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
5683 * po/POTFILES.in:
5684 queue has moved, update
5686 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
5688 * docs/gst/gstreamer-sections.txt:
5689 remove double entries from the docs
5690 * gst/gst_private.h:
5691 * gst/gstinfo.c: (_gst_debug_init):
5692 remove the THREAD debug category
5693 * gst/Makefile.am:
5694 * gst/gstqueue.c:
5695 * gst/gstqueue.h:
5696 * docs/gst/gstreamer.types:
5697 * plugins/elements/gstqueue.c: (gst_queue_get_type),
5698 (gst_queue_init), (gst_queue_finalize), (gst_queue_change_state):
5699 completely move queue and fix up debugging categories
5701 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
5703 * plugins/elements/gstidentity.c: (gst_identity_transform_ip):
5704 make initialization portable, using LL is not
5706 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
5708 * win32/common/gstconfig.h:
5709 add large padding
5711 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
5713 * win32/common/libgstreamer.def:
5714 rename symbols; sort base section
5716 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
5718 * gst/gstclock.c: (do_linear_regression):
5719 remove crack non-portable handrolled DEBUG macro
5721 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
5723 * docs/random/release:
5724 update notes
5725 * win32/common/gstenumtypes.c: (register_gst_object_flags),
5726 (gst_object_flags_get_type), (register_gst_bin_flags),
5727 (gst_bin_flags_get_type), (register_gst_buffer_flag),
5728 (gst_buffer_flag_get_type), (register_gst_bus_flags),
5729 (gst_bus_flags_get_type), (register_gst_bus_sync_reply),
5730 (gst_bus_sync_reply_get_type), (register_gst_caps_flags),
5731 (gst_caps_flags_get_type), (register_gst_clock_return),
5732 (gst_clock_return_get_type), (register_gst_clock_entry_type),
5733 (gst_clock_entry_type_get_type), (register_gst_clock_flags),
5734 (gst_clock_flags_get_type), (register_gst_state),
5735 (gst_state_get_type), (register_gst_state_change_return),
5736 (gst_state_change_return_get_type), (register_gst_state_change),
5737 (gst_state_change_get_type), (register_gst_element_flags),
5738 (gst_element_flags_get_type), (register_gst_core_error),
5739 (gst_core_error_get_type), (register_gst_library_error),
5740 (gst_library_error_get_type), (register_gst_resource_error),
5741 (gst_resource_error_get_type), (register_gst_stream_error),
5742 (gst_stream_error_get_type), (register_gst_event_type_flags),
5743 (gst_event_type_flags_get_type), (register_gst_event_type),
5744 (gst_event_type_get_type), (register_gst_seek_type),
5745 (gst_seek_type_get_type), (register_gst_seek_flags),
5746 (gst_seek_flags_get_type), (register_gst_format),
5747 (gst_format_get_type), (register_gst_index_certainty),
5748 (gst_index_certainty_get_type), (register_gst_index_entry_type),
5749 (gst_index_entry_type_get_type),
5750 (register_gst_index_lookup_method),
5751 (gst_index_lookup_method_get_type), (register_gst_assoc_flags),
5752 (gst_assoc_flags_get_type), (register_gst_index_resolver_method),
5753 (gst_index_resolver_method_get_type), (register_gst_index_flags),
5754 (gst_index_flags_get_type), (register_gst_debug_level),
5755 (gst_debug_level_get_type), (register_gst_debug_color_flags),
5756 (gst_debug_color_flags_get_type), (register_gst_iterator_result),
5757 (gst_iterator_result_get_type), (register_gst_iterator_item),
5758 (gst_iterator_item_get_type), (register_gst_message_type),
5759 (gst_message_type_get_type), (register_gst_mini_object_flags),
5760 (gst_mini_object_flags_get_type), (register_gst_pad_link_return),
5761 (gst_pad_link_return_get_type), (register_gst_flow_return),
5762 (gst_flow_return_get_type), (register_gst_activate_mode),
5763 (gst_activate_mode_get_type), (register_gst_pad_direction),
5764 (gst_pad_direction_get_type), (register_gst_pad_flags),
5765 (gst_pad_flags_get_type), (register_gst_pad_presence),
5766 (gst_pad_presence_get_type), (register_gst_pad_template_flags),
5767 (gst_pad_template_flags_get_type), (register_gst_pipeline_flags),
5768 (gst_pipeline_flags_get_type), (register_gst_plugin_error),
5769 (gst_plugin_error_get_type), (register_gst_plugin_flags),
5770 (gst_plugin_flags_get_type), (register_gst_rank),
5771 (gst_rank_get_type), (register_gst_query_type),
5772 (gst_query_type_get_type), (register_gst_tag_merge_mode),
5773 (gst_tag_merge_mode_get_type), (register_gst_tag_flag),
5774 (gst_tag_flag_get_type), (register_gst_task_state),
5775 (gst_task_state_get_type), (register_gst_alloc_trace_flags),
5776 (gst_alloc_trace_flags_get_type),
5777 (register_gst_type_find_probability),
5778 (gst_type_find_probability_get_type), (register_gst_uri_type),
5779 (gst_uri_type_get_type), (register_gst_parse_error),
5780 (gst_parse_error_get_type):
5781 * win32/common/gstenumtypes.h:
5782 * win32/common/gstversion.h:
5783 update visual studio generated files
5785 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
5787 * win32/vs6/libgstbase.dsp:
5788 * win32/vs6/libgstelements.dsp:
5789 update project files for new locations
5791 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
5793 * Makefile.am:
5794 remove some files
5795 * README:
5796 reinstate and update
5797 * DEVEL:
5798 * REQUIREMENTS:
5799 removed
5800 * LICENSE:
5801 * docs/random/LICENSE:
5802 moved to random
5804 2005-11-30 Edward Hervey <edward@fluendo.com>
5806 * gst/gsttypefind.c: (gst_type_find_register):
5807 * gst/gsttypefind.h:
5808 * gst/gsttypefindfactory.c: (gst_type_find_factory_init),
5809 (gst_type_find_factory_dispose):
5810 * gst/gsttypefindfactory.h:
5811 Fix memory leak in GstTypeFindFactory.
5813 2005-11-29 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
5815 * gst/gst.c:
5816 * plugins/elements/Makefile.am:
5817 * plugins/elements/gstelements.c:
5818 * plugins/elements/gstqueue.c:
5819 move queue from core to the elements plugin
5821 2005-11-29 Andy Wingo <wingo@pobox.com>
5823 * libs/gst/base/gstbasetransform.h:
5824 * libs/gst/base/gstbasesrc.h:
5825 * libs/gst/base/gstbasesink.h: en-LARGE the padding.
5827 * gst/gstconfig.h.in (GST_PADDING_LARGE): New define, the number
5828 of pointers by which to pad very extensible base classes (like the
5829 ones in libs/gst/base).
5831 2005-11-29 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
5833 * docs/gst/gstreamer-docs.sgml:
5834 * docs/gst/gstreamer-sections.txt:
5835 * docs/libs/gstreamer-libs-docs.sgml:
5836 * docs/libs/gstreamer-libs-sections.txt:
5837 moving documentation from core to lib
5839 2005-11-29 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
5841 * check/Makefile.am:
5842 * configure.ac:
5843 * docs/gst/Makefile.am:
5844 * gst/Makefile.am:
5845 * gst/base/.cvsignore:
5846 * gst/base/Makefile.am:
5847 * gst/base/README:
5848 * gst/base/gstadapter.c:
5849 * gst/base/gstadapter.h:
5850 * gst/base/gstbasesink.c:
5851 * gst/base/gstbasesink.h:
5852 * gst/base/gstbasesrc.c:
5853 * gst/base/gstbasesrc.h:
5854 * gst/base/gstbasetransform.c:
5855 * gst/base/gstbasetransform.h:
5856 * gst/base/gstcollectpads.c:
5857 * gst/base/gstcollectpads.h:
5858 * gst/base/gstpushsrc.c:
5859 * gst/base/gstpushsrc.h:
5860 * gst/base/gsttypefindhelper.c:
5861 * gst/base/gsttypefindhelper.h:
5862 * gst/check/Makefile.am:
5863 * gst/check/gstcheck.c:
5864 * gst/check/gstcheck.h:
5865 * gst/net/Makefile.am:
5866 * gst/net/gstnet.h:
5867 * gst/net/gstnetclientclock.c:
5868 * gst/net/gstnetclientclock.h:
5869 * gst/net/gstnettimepacket.c:
5870 * gst/net/gstnettimepacket.h:
5871 * gst/net/gstnettimeprovider.c:
5872 * gst/net/gstnettimeprovider.h:
5873 * libs/gst/Makefile.am:
5874 * libs/gst/base/Makefile.am:
5875 * libs/gst/base/gstbasetransform.c:
5876 * libs/gst/check/Makefile.am:
5877 * plugins/elements/Makefile.am:
5878 * po/POTFILES.in:
5879 CVS surgery + support to move base, check, and net out of gst
5880 and into libs/gst
5882 2005-11-29 Andy Wingo <wingo@pobox.com>
5884 * gst/gstevent.h (struct _GstEvent): Only one pointer of padding.
5886 * gst/gststructure.h (struct _GstStructure): Only one pointer of
5887 padding.
5889 * gst/gstquery.h (struct _GstQuery): Only one pointer of padding.
5891 * gst/gstpluginfeature.h: Remove a comment in PluginFeature.
5893 * gst/gstplugin.h (struct _GstPluginClass): Add some padding.
5895 * gst/gstobject.h: (struct _GstObject): Only one pointer of
5896 padding; reduces object size by about 30%. We don't expect
5897 anything else to go into gstobject.
5899 * gst/gstminiobject.h (struct _GstMiniObject)
5900 (struct _GstMiniObjectClass): Only one pointer of padding; the
5901 payload is only a pointer and two ints anyway. For the class there
5902 are only two methods as well.
5904 * gst/gstelement.h (struct _GstElementClass): Removed
5905 the state_changed signal callback, it is not used.
5907 2005-11-29 Thomas Vander Stichele <thomas at apestaart dot org>
5909 * docs/gst/gstreamer.types:
5910 fix includes, though they are a little dinky
5912 2005-11-29 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
5914 * check/Makefile.am:
5915 look in the right place for elements, a lot more chance of
5916 success
5917 * gst/Makefile.am:
5918 remove indexers and elements subdirs
5919 * plugins/Makefile.am:
5920 make indexers conditional
5922 2005-11-29 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
5924 * Makefile.am:
5925 * configure.ac:
5926 * plugins/elements/Makefile.am:
5927 * plugins/elements/gstcapsfilter.c:
5928 * plugins/elements/gstfilesink.c:
5929 * plugins/elements/gstfilesrc.c:
5930 * plugins/elements/gstidentity.c:
5931 * plugins/indexers/Makefile.am:
5932 do CVS surgery and related build fixery to move elements
5933 and indexers in a new gstreamer/plugins directory, out of the
5934 gst/ directory
5936 2005-11-29 Andy Wingo <wingo@pobox.com>
5938 * check/Makefile.am:
5939 * pkgconfig/gstreamer-net-uninstalled.pc.in:
5940 * pkgconfig/gstreamer-net.pc.in:
5941 * gst/net/Makefile.am: Rename gstnet-tempname to gstnet. Fixes
5942 #322257.
5944 2005-11-29 Thomas Vander Stichele <thomas at apestaart dot org>
5946 * tools/Makefile.am:
5947 * tools/gst-complete.1.in:
5948 * tools/gst-complete.c:
5949 * tools/gst-compprep.1.in:
5950 * tools/gst-compprep.c:
5951 removing -compprep and -complete
5953 2005-11-29 Thomas Vander Stichele <thomas at apestaart dot org>
5955 * gst/gstevent.c: (gst_event_new_new_segment),
5956 (gst_event_parse_new_segment):
5957 * gst/gstevent.h:
5958 fix #320529 - clean up new_segment API and structure.
5959 Let's hope everyone was using the methods, and not the structure.
5961 2005-11-29 Edward Hervey <edward@fluendo.com>
5963 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
5964 (gst_base_sink_event), (gst_base_sink_do_sync),
5965 (gst_base_sink_activate_pull), (gst_base_sink_change_state):
5966 Properly handle non GST_FORMAT_TIME segment
5967 * gst/elements/gstidentity.c: (gst_identity_transform_ip):
5968 Properly handle non GST_FORMAT_TIME segment
5969 * gst/gstsegment.c:
5970 This function is valid if the accumulator is 0 and the format
5971 is different from the requested format.
5973 2005-11-29 Jan Schmidt <thaytan@mad.scientist.com>
5975 * docs/gst/gstreamer-sections.txt:
5976 Add gst_query_new_seeking and gst_query_parse_seeking to the
5977 docs.
5979 2005-11-29 Jan Schmidt <thaytan@mad.scientist.com>
5981 * gst/base/gstbasetransform.c: (gst_base_transform_buffer_alloc):
5982 Treat a pad alloc with new caps the same as if we were not
5983 negotiated, in order to allow a changing upstream output
5984 to produce a new format of data.
5986 2005-11-29 Edward Hervey <edward@fluendo.com>
5988 * gst/base/gstbasetransform.c: (gst_base_transform_class_init),
5989 (gst_base_transform_event), (gst_base_transform_eventfunc):
5990 The event virtual method is now properly implemented, with a default
5991 handler
5992 Sub classes should call the parent_class event method. They should
5993 return FALSE if they had a problem handling the given event, or don't
5994 want GstBaseTransform to send that even downstream
5995 * gst/elements/gstidentity.c: (gst_identity_class_init),
5996 (gst_identity_init), (gst_identity_event),
5997 (gst_identity_transform_ip), (gst_identity_set_property),
5998 (gst_identity_get_property):
5999 * gst/elements/gstidentity.h:
6000 Added the single-segment boolean property.
6001 If set to TRUE, it will output a single segment of data, starting from
6002 0, will eat up all incoming newsegment, and modify the timestamp of the
6003 buffers accordingly
6005 2005-11-29 Tim-Philipp Müller <tim at centricular dot net>
6007 * gst/gstghostpad.c: (gst_proxy_pad_get_target):
6008 Don't ref NULL target pad (#322751). Improve docs.
6010 2005-11-29 Michael Smith <msmith@fluendo.com>
6012 * gst/gstregistryxml.c: (load_plugin):
6013 Don't crash if we failed to load a feature from a plugin.
6015 2005-11-28 Thomas Vander Stichele <thomas at apestaart dot org>
6017 * check/pipelines/simple_launch_lines.c: (setup_pipeline),
6018 (GST_START_TEST):
6019 use more check API and less GLib API
6021 2005-11-28 Thomas Vander Stichele <thomas at apestaart dot org>
6023 * Makefile.am:
6024 don't run checks if we don't have check
6025 * common/check.mak:
6026 remove the registry when running make torture
6027 * docs/gst/gstreamer-sections.txt:
6028 remove second multiply
6029 * gst/gstqueue.c: (gst_queue_loop):
6030 fix a compile warning when disabling debug
6032 2005-11-28 Jan Schmidt <thaytan@mad.scientist.com>
6034 * gst/gstinfo.h:
6035 Hey! Let's print the pad name if the pointer != NULL instead
6036 of when it == NULL :-)
6038 2005-11-28 Wim Taymans <wim@fluendo.com>
6040 * check/gst/gstutils.c: (GST_START_TEST):
6041 Updated check, add some scaling accuracy checking code.
6043 * gst/gstutils.c: (gst_util_div128_64),
6044 (gst_util_uint64_scale_int64), (gst_util_uint64_scale),
6045 (gst_util_uint64_scale_int):
6046 Fix 6 times faster division code. Optimize for common
6047 1/1 and less common X/1 cases.
6049 2005-11-28 Wim Taymans <wim@fluendo.com>
6051 * check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
6052 More checks.
6054 * gst/gstclock.c: (gst_clock_finalize), (gst_clock_set_master),
6055 (do_linear_regression), (gst_clock_add_observation):
6056 Cleanups.
6057 Release lock when the clock cannot be slaved.
6058 Catch the case where the regression returned an invalid denominator.
6060 * gst/gstutils.c: (gst_util_div128_64_iterate),
6061 (gst_util_div128_64), (gst_util_uint64_scale_int64),
6062 (gst_util_uint64_scale), (gst_util_uint64_scale_int):
6063 Add protentially more performant non-iterative 128/64 divide function
6064 that unfortunatly does not work yet.
6065 Shortcut the trivial 0/X = 0 case.
6066 Remove the warnings on overflow.
6068 2005-11-28 Thomas Vander Stichele <thomas at apestaart dot org>
6070 * gst/gstplugin.c: (gst_plugin_register_func):
6071 everything causing a plugin not to load should be at least a WARNING
6073 2005-11-28 Stefan Kost <ensonic@users.sf.net>
6075 * docs/random/ensonic/dparams.txt:
6076 some TODOs for the next dev cycle
6077 * libs/gst/controller/gstcontroller.c:
6078 (gst_controlled_property_set_interpolation_mode),
6079 (gst_controlled_property_new):
6080 * libs/gst/controller/gstcontroller.h:
6081 use base type to assign acccessor functions
6083 2005-11-28 Jan Schmidt <thaytan@mad.scientist.com>
6085 * check/Makefile.am:
6086 Oops, that should have been top_srcdir
6088 2005-11-28 Jan Schmidt <thaytan@mad.scientist.com>
6090 * check/Makefile.am:
6091 * check/elements/fdsrc.c: (GST_START_TEST):
6092 Use a cmdline define to specify the location of a file to use for
6093 testing, to avoid breaking distcheck.
6095 2005-11-28 Andy Wingo <wingo@pobox.com>
6097 * gst/gstpad.c (fixate_value): Use array functions for arrays.
6099 2005-11-28 Edward Hervey <edward@fluendo.com>
6101 * tools/gst-launch.c: (main):
6102 Clarify the output strings, makes it easier to translate.
6103 Fixes #322626
6105 2005-11-28 Thomas Vander Stichele <thomas at apestaart dot org>
6107 * gst/Makefile.am:
6108 don't try and build net if we don't even have <sys/socket.h>
6110 2005-11-27 Jan Schmidt <thaytan@mad.scientist.com>
6112 * check/Makefile.am:
6113 * check/elements/fdsrc.c: (event_func), (setup_fdsrc),
6114 (cleanup_fdsrc), (GST_START_TEST), (fdsrc_suite), (main):
6115 Add tests for fdsrc seekability
6117 * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
6118 (gst_fdsrc_init), (gst_fdsrc_update_fd), (gst_fdsrc_start),
6119 (gst_fdsrc_set_property), (gst_fdsrc_is_seekable),
6120 (gst_fdsrc_get_size), (gst_fdsrc_uri_set_uri):
6121 * gst/elements/gstfdsrc.h:
6122 fdsrc should not be a 'live' source.
6123 Implement seeking on seekable fd's.
6125 * gst/gstquery.c: (gst_query_new_seeking),
6126 (gst_query_parse_seeking):
6127 * gst/gstquery.h:
6128 Implement SEEKING query functions:
6129 *_new_seeking and *_parse_seeking
6131 2005-11-27 Stefan Kost <ensonic@users.sf.net>
6133 * gst/gstelement.c: (gst_element_dispose):
6134 don't loop forever
6136 * gst/gstiterator.c:
6137 * gst/gststructure.c:
6138 doc fixes
6140 * libs/gst/controller/gstcontroller.c:
6141 (gst_controlled_property_set_interpolation_mode):
6142 * libs/gst/controller/gstcontroller.h:
6143 * libs/gst/controller/gstinterpolation.c:
6144 (interpolate_none_get_enum_value_array):
6145 support controlling enums
6147 2005-11-27 Tim-Philipp Müller <tim at centricular dot net>
6149 * gst/gstvalue.c:
6150 Improve documentation for gst_value_union().
6152 * gst/gstvalue.h:
6153 Change return value for union, intersect and subtract functions
6154 from gint to gboolean.
6156 2005-11-27 Tim-Philipp Müller <tim at centricular dot net>
6158 * gst/gstvalue.c: (gst_value_serialize_any_list),
6159 (gst_value_transform_any_list_string),
6160 (gst_value_deserialize_list), (gst_value_deserialize_array),
6161 (gst_value_set_int_range), (gst_value_deserialize_int_range),
6162 (gst_value_set_double_range), (gst_value_deserialize_double_range),
6163 (gst_value_set_fraction_range_full),
6164 (gst_value_deserialize_fraction_range),
6165 (gst_value_deserialize_caps), (gst_value_deserialize_buffer),
6166 (gst_value_deserialize_boolean),
6167 (gst_value_deserialize_int_helper), (gst_value_deserialize_double),
6168 (gst_value_serialize_float), (gst_value_deserialize_float),
6169 (gst_string_wrap), (gst_value_deserialize_string),
6170 (gst_value_deserialize_enum), (gst_value_deserialize_flags),
6171 (gst_value_union_int_range_int_range),
6172 (gst_value_intersect_int_range_int_range),
6173 (gst_value_intersect_double_range_double_range),
6174 (gst_value_create_new_range), (gst_value_subtract_int_range_int),
6175 (gst_value_subtract_int_range_int_range),
6176 (gst_value_subtract_double_double_range),
6177 (gst_value_subtract_double_range_double_range),
6178 (gst_value_deserialize_fraction):
6179 * gst/gstvalue.h:
6180 Use gint, gdouble and gchar in our API instead of int, double and
6181 char (and make usage in gstvalue.c more consistent).
6183 2005-11-27 Thomas Vander Stichele <thomas at apestaart dot org>
6185 * check/Makefile.am:
6186 * libs/gst/controller/Makefile.am:
6187 * libs/gst/dataprotocol/Makefile.am:
6188 fix up Makefile.am and remove GST_ENABLE_NEW
6190 2005-11-27 Thomas Vander Stichele <thomas at apestaart dot org>
6192 * configure.ac:
6193 * gst/Makefile.am:
6194 * gst/base/Makefile.am:
6195 * gst/check/Makefile.am:
6196 * gst/elements/Makefile.am:
6197 * gst/net/Makefile.am:
6198 update LDFLAGS use some more
6200 2005-11-27 Thomas Vander Stichele <thomas at apestaart dot org>
6202 * common/m4/gst-doc.m4:
6203 Fixes #312589
6205 2005-11-26 Edward Hervey <edward@fluendo.com>
6207 * gst/gstpluginfeature.c: (gst_plugin_feature_load):
6208 This shouldn't issue a g_warning since it returns NULL if it
6209 couldn't find the plugin, and all functions using this behave
6210 properly on a NULL return. Switching to a GST_WARNING.
6212 2005-11-25 Jan Schmidt <thaytan@mad.scientist.com>
6214 * gst/gstbin.c: (gst_bin_handle_message_func):
6215 Don't leak clock messages.
6217 2005-11-25 Wim Taymans <wim@fluendo.com>
6219 * gst/gstutils.c: (gst_util_uint64_scale_int64),
6220 (gst_util_uint64_scale_int):
6221 Optimisations, remove unneeded vars.
6223 2005-11-25 Wim Taymans <wim@fluendo.com>
6225 * check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
6226 Added more checks for the high precision uint64 cases.
6228 * gst/gstutils.c: (gst_util_uint64_scale_int64),
6229 (gst_util_uint64_scale), (gst_util_uint64_scale_int):
6230 Implement high precision (guint64 * guint64) / guint64.
6232 2005-11-24 Wim Taymans <wim@fluendo.com>
6234 * gst/base/gstbasesrc.c: (gst_base_src_query):
6235 Fix wrong percentage query.
6237 * gst/gstutils.c: (gst_util_uint64_scale),
6238 (gst_util_uint64_scale_int):
6239 Add some more common cases that can be handled
6240 efficiently to _scale.
6242 2005-11-24 Thomas Vander Stichele <thomas at apestaart dot org>
6244 * check/gst/gstminiobject.c: (thread_ref), (GST_START_TEST),
6245 (gst_mini_object_suite):
6246 don't use check calls from threads; check probably isn't
6247 threadsafe and using a lock to make it threadsafe would
6248 defeat the purpose of this check
6249 * gst/check/gstcheck.c:
6250 * gst/check/gstcheck.h:
6251 use GST_DEBUG some more
6253 2005-11-24 Wim Taymans <wim@fluendo.com>
6255 * gst/gstutils.c: (gst_util_uint64_scale),
6256 (gst_util_uint64_scale_int):
6257 Chain trivial case to _scale_int.
6259 2005-11-24 Wim Taymans <wim@fluendo.com>
6261 * check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
6262 Added test for scaling.
6264 * gst/gstclock.h:
6265 Small doc fix.
6267 * gst/gstutils.c: (gst_util_uint64_scale_int):
6268 Implemented high precision scaling code.
6270 2005-11-24 Stefan Kost <ensonic@users.sf.net>
6272 * gst/gstinfo.h:
6273 do not crash on pad==NULL
6275 2005-11-24 Thomas Vander Stichele <thomas at apestaart dot org>
6277 Patch by: Stefan Kost
6279 * common/gtk-doc.mak:
6280 * docs/gst/Makefile.am:
6281 * docs/libs/Makefile.am:
6282 Fix distcheck issues for the libraries docs build
6283 Closes #319599.
6285 2005-11-24 Michael Smith <msmith@fluendo.com>
6287 * docs/manual/basics-helloworld.xml:
6288 Fix bug #315027: memory leak in example code in docs.
6290 2005-11-24 Michael Smith <msmith@fluendo.com>
6292 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
6293 Unlock the PREROLL_LOCK in a failure case.
6295 2005-11-24 Wim Taymans <wim@fluendo.com>
6297 * docs/gst/gstreamer-sections.txt:
6298 * gst/base/gstadapter.h:
6299 * gst/base/gstbasesink.h:
6300 * gst/base/gstbasesrc.h:
6301 * gst/base/gstbasetransform.h:
6302 * gst/base/gstpushsrc.h:
6303 * gst/elements/gstfakesink.h:
6304 * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type):
6305 * gst/elements/gstfakesrc.h:
6306 * gst/elements/gstfilesink.h:
6307 * gst/elements/gstfilesrc.h:
6308 * gst/gst.c:
6309 * gst/gstbin.c:
6310 * gst/gstbuffer.c: (_gst_buffer_copy):
6311 * gst/gstbus.h:
6312 * gst/gstcaps.c:
6313 * gst/gstchildproxy.c:
6314 * gst/gstclock.c:
6315 * gst/gstelement.c:
6316 * gst/gstelementfactory.c:
6317 * gst/gstelementfactory.h:
6318 * gst/gstevent.c:
6319 * gst/gstghostpad.h:
6320 * gst/gstindex.h:
6321 * gst/gstinterface.h:
6322 * gst/gstminiobject.c:
6323 * gst/gstminiobject.h:
6324 * gst/gstpad.c:
6325 * gst/gstpad.h:
6326 * gst/gstpadtemplate.h:
6327 * gst/gstpipeline.h:
6328 * gst/gstpluginfeature.h:
6329 * gst/gstquery.h:
6330 * gst/gstqueue.h:
6331 * gst/gsttaglist.c:
6332 * gst/gsttaglist.h:
6333 * gst/gsttagsetter.c:
6334 * gst/gsttagsetter.h:
6335 * gst/gsttrace.c:
6336 * gst/gsttrace.h:
6337 * gst/gsttypefind.h:
6338 * gst/gsturi.h:
6339 * gst/gstvalue.c:
6340 * gst/net/gstnetclientclock.c:
6341 * gst/net/gstnetclientclock.h:
6342 * gst/net/gstnettimepacket.c:
6343 * gst/net/gstnettimeprovider.c:
6344 * gst/net/gstnettimeprovider.h:
6345 Doc fixes.
6347 2005-11-23 Thomas Vander Stichele <thomas at apestaart dot org>
6349 * configure.ac: back to HEAD
6351 === release 0.9.6 ===
6353 2005-11-23 Thomas Vander Stichele <thomas at apestaart dot org>
6355 * configure.ac:
6356 releasing 0.9.6, "Always On Time"
6358 2005-11-23 Wim Taymans <wim@fluendo.com>
6360 * docs/gst/gstreamer-sections.txt:
6361 * gst/glib-compat.c:
6362 * gst/gsttagsetter.c:
6363 * gst/gstvalue.c:
6364 * gst/net/gstnetclientclock.c:
6365 * gst/net/gstnettimepacket.h:
6366 Doc updates.
6368 2005-11-23 Thomas Vander Stichele <thomas at apestaart dot org>
6370 * docs/faq/using.xml:
6371 * docs/libs/tmpl/gstcontrol.sgml:
6372 * docs/manual/advanced-dparams.xml:
6373 * docs/manual/appendix-checklist.xml:
6374 * docs/manual/basics-elements.xml:
6375 * docs/pwg/other-source.xml:
6376 * docs/random/moving-plugins:
6377 * gst/gstpad.c:
6378 * tools/gst-launch.1.in:
6379 remove mentions of sinesrc
6381 2005-11-23 Michael Smith <msmith@fluendo.com>
6383 * docs/gst/gstreamer-sections.txt:
6384 Update for new API and API changes.
6385 * gst/gstobject.h:
6386 Documentation fix: GST_TRYLOCK -> GST_OBJECT_TRYLOCK
6387 * gst/gstvalue.c:
6388 Documentation typo fix.
6389 * gst/net/gstnettimepacket.c:
6390 Documentation fixes for arguments.
6392 2005-11-23 Jan Schmidt <thaytan@mad.scientist.com>
6394 * gst/gststructure.c: (gst_structure_get_fraction),
6395 (gst_structure_parse_value),
6396 (gst_structure_fixate_field_nearest_fraction):
6397 * gst/gststructure.h:
6398 * gst/gstutils.c: (gst_util_uint64_scale_int):
6399 * gst/gstutils.h:
6400 * scripts/update-funcnames:
6401 API Changes.
6402 Rename gst_util_clock_time_scale to gst_util_uint64_scale_int
6403 Make gst_structure_fixate_field_nearest_fraction take a numerator
6404 and denominator argument instead of a GValue
6405 add gst_structure_get_fraction helper function.
6407 2005-11-23 Wim Taymans <wim@fluendo.com>
6409 * docs/design/part-TODO.txt:
6410 Update TODO.
6412 * gst/net/gstnetclientclock.c: (gst_net_client_clock_thread):
6413 * gst/net/gstnetclientclock.h:
6414 Use parent fields for timeout and window_size.
6416 2005-11-23 Andy Wingo <wingo@pobox.com>
6418 * check/net/gstnetclientclock.c (test_functioning): Adjust to
6419 rate_num/rate_denom change.
6421 * gst/net/gstnetclientclock.c
6422 (gst_net_client_clock_observe_times): Take the SLAVE_LOCK not the
6423 OBJECT_LOCK. Don't call add_observation with the lock.
6425 * gst/gstclock.c (gst_clock_init): Initialize the rate as a
6426 fraction.
6427 (gst_clock_adjust_unlocked): Adjust using uint64_scale and the
6428 rate fraction.
6429 (gst_clock_set_calibration, gst_clock_get_calibration): Change to
6430 deal with rate as a fraction whose numerator and denominator are
6431 GstClockTime values.
6432 (gst_clock_set_master): Only use the OBJECT_LOCK to set the
6433 master; the other fields are protected by the SLAVE_LOCK.
6434 (do_linear_regression): Note that this must be called with the
6435 SLAVE_LOCK.
6436 (gst_clock_add_observation): Take the SLAVE_LOCK, not the
6437 OBJECT_LOCK. Call set_calibration instead of touching the
6438 variables directly.
6439 (gst_clock_set_property, gst_clock_get_property): Protect
6440 master/slave parameters with the SLAVE_LOCK.
6442 * gst/gstclock.h (GstClock): Remove rate, add rate_numerator and
6443 rate_denominator. PR3C1S3. Add a new lock, the SLAVE_LOCK, and
6444 note that all of the instance variables that add_observation and
6445 the set_master functions use are protected by that lock and not
6446 the OBJECT_LOCK.
6447 (GST_CLOCK_SLAVE_LOCK, GST_CLOCK_SLAVE_UNLOCK): New macros.
6449 * gst/gstclock.c (gst_clock_add_observation): No longer requires
6450 the caller to take the object lock.
6452 2005-11-23 Wim Taymans <wim@fluendo.com>
6454 * gst/gsterror.c: (_gst_core_errors_init):
6455 * gst/gsterror.h:
6456 Add error for clock stuff.
6458 * gst/gstpipeline.c: (gst_pipeline_change_state),
6459 (gst_pipeline_set_clock):
6460 Post clock error when clock cannot be used in a pipeline.
6462 2005-11-23 Stefan Kost <ensonic@users.sf.net>
6464 * docs/gst/gstreamer-sections.txt:
6465 make two symbols from gstinfo private for the docs
6466 * gst/base/gstcollectpads.h:
6467 * gst/gstutils.c:
6468 fix doc typos, update docs
6470 2005-11-22 Wim Taymans <wim@fluendo.com>
6472 * gst/base/gstbasesink.c: (gst_base_sink_class_init),
6473 (gst_base_sink_wait), (gst_base_sink_do_sync),
6474 (gst_base_sink_handle_event):
6475 * gst/base/gstbasesink.h:
6476 No need to store the clock, the parent element class already
6477 has it.
6479 * gst/gstbin.c: (gst_bin_set_clock_func), (gst_bin_add_func):
6480 Updates for clock_set returning a gboolean
6482 * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_wait),
6483 (gst_clock_id_wait_async), (gst_clock_class_init),
6484 (gst_clock_init), (gst_clock_finalize),
6485 (gst_clock_get_internal_time), (gst_clock_get_time),
6486 (gst_clock_slave_callback), (gst_clock_set_master),
6487 (gst_clock_get_master), (do_linear_regression),
6488 (gst_clock_add_observation), (gst_clock_set_property),
6489 (gst_clock_get_property):
6490 * gst/gstclock.h:
6491 Implement master/slave. When setting a clock as a slave, a
6492 periodic timeout is scheduled to sample master and slave times.
6493 Then the slave clock is recalibrated to match offset and rate
6494 of the master clock.
6495 Update logging a bit.
6496 Add flag so that a clock can state that is cannot be slaved to
6497 another clock.
6499 * gst/gstelement.c: (gst_element_set_clock):
6500 * gst/gstelement.h:
6501 The set clock returns a gboolean for when an element cannot
6502 deal with the selected clock in the pipeline.
6504 * gst/gstpipeline.c: (gst_pipeline_change_state),
6505 (gst_pipeline_set_clock):
6506 * gst/gstpipeline.h:
6507 Handle the case where the selected clock cannot be set on
6508 the pipeline.
6510 * gst/net/gstnetclientclock.c: (gst_net_client_clock_class_init),
6511 (gst_net_client_clock_init), (gst_net_client_clock_finalize),
6512 (gst_net_client_clock_set_property),
6513 (gst_net_client_clock_get_property),
6514 (gst_net_client_clock_observe_times):
6515 * gst/net/gstnetclientclock.h:
6516 Use regression code in GstClock parent, remove duplicated
6517 functionality.
6519 2005-11-22 Michael Smith <msmith@fluendo.com>
6521 * gst/gstutils.c: (gst_util_clock_time_scale):
6522 * gst/gstutils.h:
6523 * docs/gst/gstreamer-sections.txt:
6524 Rename method to have extra underscore.
6526 2005-11-22 Thomas Vander Stichele <thomas at apestaart dot org>
6528 * gst/elements/Makefile.am:
6529 * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type):
6530 * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
6531 (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
6532 (gst_fake_src_init), (gst_fake_src_prepare_buffer),
6533 (gst_fake_src_alloc_buffer), (gst_fake_src_get_size):
6534 * gst/elements/gstfakesrc.h:
6535 * gst/gstqueue.c: (queue_leaky_get_type):
6536 correctly fix GEnumValues so that nick is the short lowercase
6537 dashed tag
6538 * tools/gst-inspect.c: (print_element_properties_info):
6539 also show the nick, since it's useful to use from parse_launch
6540 syntax
6541 Fixes #322139
6543 2005-11-22 Michael Smith <msmith@fluendo.com>
6545 * gst/gstutils.c: (gst_util_clocktime_scale):
6546 * gst/gstutils.h:
6547 * docs/gst/gstreamer-sections.txt:
6548 Add util method for scaling a clocktime by a fraction. Useful
6549 implementation is left as an exercise for the reader.
6551 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
6553 * gst/gstvalue.c: (gst_value_collect_fraction_range):
6554 If needed, allocate storage in the destination value during
6555 collection.
6557 2005-11-22 Edward Hervey <edward@fluendo.com>
6559 * docs/gst/gstreamer-sections.txt:
6560 * gst/Makefile.am:
6561 * gst/gst.h:
6562 * gst/gsturitype.c:
6563 * gst/gsturitype.h:
6564 * gst/gstutils.c: (gst_util_set_object_arg):
6565 * tools/gst-compprep.c: (main):
6566 * tools/gst-inspect.c: (print_element_properties_info):
6567 Removed GstURI, closes bug #321061
6569 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
6571 * check/gst/gststructure.c: (GST_START_TEST):
6572 * gst/gststructure.c: (gst_structure_parse_value):
6573 Oops, broke automatic string type parsing.
6574 Add a test to catch it in future.
6576 2005-11-22 Andy Wingo <wingo@pobox.com>
6578 * gst/gsttagsetter.c (gst_tag_setter_get_tag_merge_mode)
6579 (gst_tag_setter_set_tag_merge_mode, gst_tag_setter_get_tag_list):
6580 Actually rename the function implementations. Grr.
6582 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
6584 * check/gst/capslist.h:
6585 Comment test cases
6586 * check/gst/gststructure.c: (GST_START_TEST),
6587 (gst_structure_suite):
6588 Test automatic value type detection in gst_structure_from_string.
6589 * gst/gststructure.c: (gst_structure_parse_value):
6590 Add fraction as a type we try and guess automatically in
6591 caps/structure strings.
6593 2005-11-22 Andy Wingo <wingo@pobox.com>
6595 patch by: Torsten Schoenfeld <kaffeetisch gmx de>
6597 * gst/gsttagsetter.h:
6598 * gst/gsttagsetter.c: (gst_tag_setter_merge_tags)
6599 (gst_tag_setter_add_tags, gst_tag_setter_add_tag_values)
6600 (gst_tag_setter_add_tag_valist)
6601 (gst_tag_setter_add_tag_valist_values): Renamed from _merge, _add,
6602 _add_values, _add_valist, and _add_valist_values. Since this is an
6603 interface the function suffixes should be more explicit so
6604 language binding don't end up with element.add_valist ->
6605 gst_tag_setter_add_valist, for example. Fixes #322069.
6607 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
6609 * check/gst/gstcaps.c: (GST_START_TEST):
6610 Extend caps string tests to check that a caps to string
6611 conversion is reversible and produces the same caps.
6613 * gst/gststructure.c: (gst_structure_value_get_generic_type):
6614 Output "fraction" as the generic type fraction range, so caps
6615 serialisation and deserialisation works.
6616 * check/gst/capslist.h:
6617 * gst/gstvalue.c: (gst_value_deserialize_fraction):
6618 Support 'MIN' and 'MAX' for deserialising fractions.
6620 2005-11-22 Andy Wingo <wingo@pobox.com>
6622 * gst/gstevent.h (gst_event_new_new_segment)
6623 (gst_event_parse_new_segment, gst_event_new_buffer_size)
6624 (gst_event_parse_buffer_size, gst_ghost_pad_new_no_target):
6625 Renamed from *_newsegment, *_buffersize, *_notarget.
6627 * scripts/update-funcnames: New script, performs the changes
6628 listed above.
6630 2005-11-22 Wim Taymans <wim@fluendo.com>
6632 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
6633 Make sure the GstFlowReturn is returned.
6635 * gst/gstbus.c: (gst_bus_add_signal_watch_full),
6636 (gst_bus_add_signal_watch):
6637 * gst/gstbus.h:
6638 add gst_bus_add_signal_watch_full.
6640 * gst/gstplugin.c: (gst_plugin_load_file):
6641 Small style cleanup.
6643 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
6645 * check/gst/gstevent.c: (test_event), (GST_START_TEST):
6646 Block the fakesrc srcpad when we send an event, to avoid
6647 contention on the stream_lock causing random test failures.
6649 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
6651 * check/gst/gstvalue.c: (GST_START_TEST):
6652 * gst/gstvalue.c: (gst_value_fraction_subtract):
6653 Fix subtraction.
6655 2005-11-22 Stefan Kost <ensonic@users.sf.net>
6657 * gst/gst.h:
6658 include "gstchildproxy.h"
6659 * gst/gstchildproxy.h:
6660 * libs/gst/controller/gstcontroller.h:
6661 use G_GNUC_NULL_TERMINATED
6663 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
6665 * check/gst/capslist.h:
6666 * check/gst/gstcaps.c: (GST_START_TEST):
6667 * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
6668 * gst/gststructure.c: (gst_structure_parse_range),
6669 (gst_structure_fixate_field_nearest_fraction):
6670 * gst/gststructure.h:
6671 * gst/gstvalue.c: (gst_value_init_fraction_range),
6672 (gst_value_free_fraction_range), (gst_value_copy_fraction_range),
6673 (gst_value_collect_fraction_range),
6674 (gst_value_lcopy_fraction_range), (gst_value_set_fraction_range),
6675 (gst_value_set_fraction_range_full),
6676 (gst_value_get_fraction_range_min),
6677 (gst_value_get_fraction_range_max),
6678 (gst_value_serialize_fraction_range),
6679 (gst_value_transform_fraction_range_string),
6680 (gst_value_compare_fraction_range),
6681 (gst_value_deserialize_fraction_range),
6682 (gst_value_intersect_fraction_fraction_range),
6683 (gst_value_intersect_fraction_range_fraction_range),
6684 (gst_value_subtract_fraction_fraction_range),
6685 (gst_value_subtract_fraction_range_fraction),
6686 (gst_value_subtract_fraction_range_fraction_range),
6687 (gst_value_collect_fraction), (gst_value_fraction_multiply),
6688 (gst_value_fraction_subtract), (gst_value_deserialize_fraction),
6689 (gst_value_transform_string_fraction), (_gst_value_initialize):
6690 * gst/gstvalue.h:
6691 Implement fraction ranges and extend GstFraction to support
6692 arithmetic subtraction, as well as deserialization from integer
6693 strings such as "100"
6694 Add a testsuite as for int and double range set operations
6696 2005-11-21 Andy Wingo <wingo@pobox.com>
6698 * gst/gsttaglist.h:
6699 * gst/gstcaps.h:
6700 * gst/gststructure.h: Add glib-compat.h.
6702 2005-11-21 Wim Taymans <wim@fluendo.com>
6704 * gst/gstbin.c: (gst_bin_change_state_func):
6705 Fix for #321595
6707 2005-11-21 Wim Taymans <wim@fluendo.com>
6709 * gst/gstsegment.h:
6710 And add a nice define too.
6712 2005-11-21 Wim Taymans <wim@fluendo.com>
6714 * gst/gstsegment.c: (gst_segment_copy), (gst_segment_get_type),
6715 (gst_segment_new), (gst_segment_free), (gst_segment_init),
6716 (gst_segment_set_duration), (gst_segment_set_last_stop),
6717 (gst_segment_set_seek), (gst_segment_set_newsegment),
6718 (gst_segment_to_stream_time), (gst_segment_to_running_time),
6719 (gst_segment_clip):
6720 * gst/gstsegment.h:
6721 Make binding friendly.
6723 2005-11-21 Andy Wingo <wingo@pobox.com>
6725 * gst/gsttagsetter.h:
6726 * gst/gsttaglist.h:
6727 * gst/gststructure.h:
6728 * gst/gstcaps.h:
6729 * gst/gstutils.h: Sprinkle NULL_TERMINATED to taste. Fixes
6730 #319940.
6732 * gst/gsterror.c (_gst_core_errors_init):
6733 * gst/gsterror.h (GST_CORE_ERROR_MISSING_PLUGIN): New error
6734 category.
6736 * gst/Makefile.am (gst_headers): Add glib-compat.h.
6737 (noinst_HEADERS): noinst the -private.
6739 2005-11-21 Michael Smith <msmith@fluendo.com>
6741 * gst/gstplugin.h:
6742 * gst/gstregistry.h:
6743 Remove unimplemented declarations for which we can see no sensible
6744 use.
6746 2005-11-21 Andy Wingo <wingo@pobox.com>
6748 * gst/gst.h: Include glib-compat.h.
6750 * gst/glib-compat.h: Add G_GNUC_NULL_TERMINATED.
6752 * gst/glib-compat.c: Include the public and the private header.
6754 * gst/glib-compat-private.h: Copied here from glib-compat.h.
6756 * gst/gstvalue.c:
6757 * gst/gstpad.c:
6758 * gst/gstregistryxml.c: s/glib-compat/glib-compat-private/.
6760 * check/gst/gstevent.c (create_custom_events): Check that
6761 FLUSH_STOP is serialized.
6763 * check/elements/identity.c (event_func):
6764 * check/elements/fakesrc.c (event_func): No stream lock, the core
6765 takes it.
6767 * gst/base/gstbasetransform.c (gst_base_transform_event): No more
6768 stream lock taking, yay.
6770 * gst/gstevent.h (GST_EVENT_FLUSH_STOP): Marked as serialized to
6771 ensure that core takes the stream lock.
6773 * gst/base/gstbasesrc.c (gst_base_src_do_seek): Update for stream
6774 lock name change.
6776 * gst/base/gstbasesink.c (gst_base_sink_event): No need to take
6777 the stream lock for EOS, NEWSEGMENT, or FLUSH_STOP, the core does
6778 it already. For the flush start we do take it though so we get the
6779 right preroll state change messages.
6781 * gst/gstqueue.c (gst_queue_sink_activate_push): No need to take
6782 the stream lock here, the core does it for us.
6784 * gst/gstpad.h (GST_PAD_GET_STREAM_LOCK): Renamed from
6785 GST_STREAM_GET_LOCK.
6786 (GST_PAD_STREAM_LOCK, GST_PAD_STREAM_TRYLOCK)
6787 (GST_PAD_STREAM_UNLOCK, GST_PAD_STREAM_UNLOCK_FULL)
6788 (GST_PAD_STREAM_LOCK_FULL): Renamed from GST_STREAM_*.
6789 (GST_PAD_GET_PREROLL_LOCK): Renamed from GST_PREROLL_GET_LOCK.
6790 (GST_PAD_PREROLL_LOCK, GST_PAD_PREROLL_TRYLOCK)
6791 (GST_PAD_PREROLL_UNLOCK): Renamed from GST_PREROLL_*.
6793 * gst/gstpad.c: Update for stream lock name change.
6795 * gst/base/gstbasesink.c: Update for preroll lock name change.
6797 2005-11-21 Wim Taymans <wim@fluendo.com>
6799 * gst/gstclock.c: (gst_clock_init), (gst_clock_set_master),
6800 (gst_clock_get_master):
6801 * gst/gstclock.h:
6802 * gst/gstsystemclock.c: (gst_system_clock_init):
6803 Convert Clock flags to object flags.
6804 Added methods to manage master/slave clocks.
6806 2005-11-21 Wim Taymans <wim@fluendo.com>
6808 * check/gst/gstsegment.c: (GST_START_TEST):
6809 * docs/design/part-TODO.txt:
6810 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
6811 (gst_base_sink_event), (gst_base_sink_do_sync),
6812 (gst_base_sink_activate_pull), (gst_base_sink_get_position),
6813 (gst_base_sink_query), (gst_base_sink_change_state):
6814 * gst/base/gstbasesink.h:
6815 * gst/base/gstbasesrc.c: (gst_base_src_init), (gst_base_src_query),
6816 (gst_base_src_default_newsegment),
6817 (gst_base_src_configure_segment), (gst_base_src_do_seek),
6818 (gst_base_src_get_range), (gst_base_src_loop),
6819 (gst_base_src_change_state):
6820 * gst/base/gstbasesrc.h:
6821 * gst/base/gstbasetransform.c:
6822 (gst_base_transform_prepare_output_buf),
6823 (gst_base_transform_event), (gst_base_transform_change_state):
6824 * gst/base/gstbasetransform.h:
6825 * gst/base/gstcollectpads.c: (gst_collect_pads_add_pad),
6826 (gst_collect_pads_event):
6827 * gst/base/gstcollectpads.h:
6828 * gst/elements/gstfakesrc.c: (gst_fake_src_init),
6829 (gst_fake_src_create):
6830 * gst/elements/gstfakesrc.h:
6831 * gst/elements/gstidentity.c: (gst_identity_transform_ip):
6832 * gst/gstsegment.c: (gst_segment_init), (gst_segment_set_duration),
6833 (gst_segment_set_last_stop), (gst_segment_set_seek),
6834 (gst_segment_set_newsegment), (gst_segment_to_stream_time),
6835 (gst_segment_to_running_time), (gst_segment_clip):
6836 * gst/gstsegment.h:
6837 More segment updates, replace code in plugins with segment
6838 helper functions.
6840 2005-11-21 Jan Schmidt <thaytan@mad.scientist.com>
6842 * gst/elements/gstfdsrc.c: (gst_fdsrc_uri_set_uri):
6843 Don't ignore sscanf results
6845 2005-11-21 Andy Wingo <wingo@pobox.com>
6847 * gst/gstpad.h (GST_IS_PAD_FAST): Removed.
6849 * *.h:
6850 * *.c: Ran scripts/update-macros. Oh yes.
6852 * gst/gstobject.h (GST_OBJECT_GET_LOCK, GST_OBJECT_LOCK)
6853 (GST_OBJECT_TRYLOCK, GST_OBJECT_UNLOCK): Renamed from
6854 GST_GET_LOCK, etc.
6856 * scripts/update-macros: New script. Run it on your files to
6857 change GST_LOCK to GST_OBJECT_LOCK, and the same for UNLOCK as
6858 well.
6860 2005-11-21 Stefan Kost <ensonic@users.sf.net>
6862 * docs/gst/Makefile.am:
6863 * docs/gst/gstreamer-docs.sgml:
6864 * docs/gst/gstreamer-sections.txt:
6865 * docs/gst/gstreamer.types:
6866 * gst/gstinfo.h:
6867 more docs fixes, add new api to the docs
6869 2005-11-21 Andy Wingo <wingo@pobox.com>
6871 * gst/gstbin.c (gst_bin_remove_func): Wim claims I can remove this
6872 state_broadcast call.
6874 * gst/gstsegment.c (gst_segment_init): Initialize abs_rate.
6876 2005-11-21 Julien MOUTTE <julien@moutte.net>
6878 * gst/gstvalue.c: (gst_value_intersect_array): Fix wrong
6879 function calls for arrays.
6881 2005-11-21 Stefan Kost <ensonic@users.sf.net>
6883 * docs/random/ensonic/media-device-daemon.txt:
6884 wild idea, can this be done?
6885 * docs/gst/gstreamer-sections.txt:
6886 * gst/gsterror.h:
6887 * gst/gstfilter.c:
6888 * gst/gstfilter.h:
6889 * gst/gstplugin.h:
6890 * gst/gstpluginfeature.c:
6891 * gst/gsttrace.c:
6892 * gst/gstvalue.c:
6893 * gst/gstvalue.h:
6894 doc fixes and additions
6896 2005-11-21 Andy Wingo <wingo@pobox.com>
6898 * gst/base/gstbasesrc.c (GST_LIVE_BROADCAST, GST_LIVE_SIGNAL)
6899 (GST_LIVE_TIMED_WAIT, GST_LIVE_WAIT, GST_LIVE_GET_COND)
6900 (GST_LIVE_UNLOCK, GST_LIVE_TRYLOCK, GST_LIVE_LOCK)
6901 (GST_LIVE_GET_LOCK): Moved here from gstbasesrc.h. They are
6902 private to the basesrc implementation.
6904 * gst/gstpad.c (gst_pad_send_event): Doc more. Take stream lock on
6905 behalf of event function if necessary. It should no longer be
6906 necessary to take the stream lock in pad's event functions. Fixes
6907 #320299.
6909 2005-11-21 Jan Schmidt <thaytan@mad.scientist.com>
6910 * docs/gst/gstreamer-sections.txt:
6911 * gst/gststructure.c: (gst_structure_fixate_field_nearest_int),
6912 (gst_structure_fixate_field_nearest_double),
6913 (gst_structure_fixate_field_boolean):
6914 * gst/gststructure.h:
6915 * win32/common/libgstreamer.def:
6916 * win32/gstreamer.def:
6918 Rename gst_caps_structure_fixate_* to gst_structure_fixate_*
6919 (#322027)
6921 2005-11-21 Jan Schmidt <thaytan@mad.scientist.com>
6923 * gst/elements/gstfdsrc.c: (_do_init), (gst_fdsrc_class_init),
6924 (gst_fdsrc_init), (gst_fdsrc_dispose), (gst_fdsrc_set_property),
6925 (gst_fdsrc_uri_get_type), (gst_fdsrc_uri_get_protocols),
6926 (gst_fdsrc_uri_get_uri), (gst_fdsrc_uri_set_uri),
6927 (gst_fdsrc_uri_handler_init):
6928 * gst/elements/gstfdsrc.h:
6929 Port fd:// URI handler from 0.8 to fdsrc
6931 2005-11-21 Tim-Philipp Müller <tim at centricular dot net>
6933 * gst/gstvalue.c: (gst_value_transform_fourcc_string),
6934 (gst_value_serialize_fourcc):
6935 * gst/gstvalue.h:
6936 Drop leading '%' from GST_FOURCC_FORMAT, thus making it
6937 consistent with our other format defines (#320324).
6939 2005-11-21 Tim-Philipp Müller <tim at centricular dot net>
6941 * gst/gstvalue.c: (gst_value_is_fixed):
6942 Revert previous commit. Value lists are by definition
6943 not fixed, as they are a list of possible values.
6945 2005-11-21 Andy Wingo <wingo@pobox.com>
6947 * gst/gstevent.h (GST_EVENT_FILLER): Removed. Can be added back
6948 during the stable series if we need it. Fixes #319178.
6950 * gst/gstevent.c (gst_event_new_filler): Removed.
6952 * check/gst/gstevent.c: Update comment about filler events.
6954 2005-11-21 Tim-Philipp Müller <tim at centricular dot net>
6956 * gst/gstvalue.c: (gst_value_is_fixed):
6957 Should handle both value arrays and value lists.
6959 2005-11-21 Andy Wingo <wingo@pobox.com>
6961 patch by: Alessandro Dessina <alessandro nnva org>
6963 * gst/gstvalue.c (gst_value_is_fixed): Use gst_value_array
6964 functions to access arrays. Fixes #321962.
6966 2005-11-21 Tim-Philipp Müller <tim at centricular dot net>
6968 * docs/gst/gstreamer.types:
6969 gst_collectpads_get_type => gst_collect_pads_get_type.
6971 * gst/base/gstbasetransform.c:
6972 Remove unused SIGNAL_HANDOFF enum.
6974 2005-11-21 Andy Wingo <wingo@pobox.com>
6976 * gst/gstevent.h (GstEventTypeFlags): New data type, the flags of
6977 the event type (upstream, downstream, serialized). Renamed
6978 GST_EVDIR_* and GST_EVSER to GST_EVENT_TYPE_*.
6979 (GstEventType): Use GstEventTypeFlags. Rename CUSTOM_UP to
6980 CUSTOM_UPSTREAM, CUSTOM_DS to CUSTOM_DOWNSTREAM, etc.
6982 * gst/gstevent.c: Update for new CUSTOM event names.
6984 * check/gst/gstevent.c: Update check for new CUSTOM event names.
6986 * gst/gstevent.h:
6987 * gst/gstevent.c (gst_event_type_get_flags): New function. Fixes
6988 bug #319392.
6990 2005-11-21 Tim-Philipp Müller <tim at centricular dot net>
6992 * docs/gst/gstreamer-sections.txt:
6993 * win32/common/libgstbase.def:
6994 * win32/libgstbase.def:
6995 * gst/base/gstcollectpads.c: (gst_collect_pads_base_init),
6996 (gst_collect_pads_class_init), (gst_collect_pads_init),
6997 (gst_collect_pads_finalize), (gst_collect_pads_new),
6998 (gst_collect_pads_set_function), (gst_collect_pads_add_pad),
6999 (gst_collect_pads_remove_pad), (gst_collect_pads_is_active),
7000 (gst_collect_pads_collect), (gst_collect_pads_collect_range),
7001 (gst_collect_pads_start), (gst_collect_pads_stop),
7002 (gst_collect_pads_peek), (gst_collect_pads_pop),
7003 (gst_collect_pads_available), (gst_collect_pads_read),
7004 (gst_collect_pads_flush), (gst_collect_pads_event),
7005 (gst_collect_pads_chain):
7006 * gst/base/gstcollectpads.h:
7007 Rename gst_collecpads_foo() => gst_collect_pads_foo(). Document
7008 unimplemented functions as unimplemented. Add padding to
7009 GstCollectData. (#320766, #320423)
7011 2005-11-21 Tim-Philipp Müller <tim at centricular dot net>
7013 * gst/gstmessage.c:
7014 Improve docs for DURATION message (usage of duration parameter)
7015 (#320113)
7017 2005-11-20 Wim Taymans <wim@fluendo.com>
7019 * check/Makefile.am:
7020 * check/gst/gstsegment.c: (GST_START_TEST), (gstevents_suite),
7021 (main):
7022 * gst/Makefile.am:
7023 * gst/gst.h:
7024 * gst/gstsegment.c: (gst_segment_init), (gst_segment_set_duration),
7025 (gst_segment_set_seek), (gst_segment_set_newsegment),
7026 (gst_segment_to_stream_time), (gst_segment_to_running_time),
7027 (gst_segment_clip):
7028 * gst/gstsegment.h:
7029 Added segment helper structure and methods. Not fully implemented
7030 yet.
7031 Added segment check.
7033 2005-11-20 Jan Schmidt <thaytan@mad.scientist.com>
7035 * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
7036 Add a deserialisation test for fractions
7037 * examples/metadata/read-metadata.c: (message_loop),
7038 (make_pipeline), (main):
7039 Fix up metadata reading sample.
7040 * gst/base/gstbasesink.c: (gst_base_sink_do_sync):
7041 Debug format fix
7042 * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
7043 Don't try and fixate empty caps
7044 * gst/gst_private.h:
7045 Wrap in G_BEGIN_DECLS/G_END_DECLS
7046 * gst/gstvalue.c: (gst_value_collect_fraction),
7047 (gst_value_set_fraction), (gst_value_get_fraction_denominator),
7048 (gst_value_transform_string_fraction),
7049 (gst_value_compare_fraction):
7050 Add some extra guards to ensure that we don't end up
7051 with an invalid denominator of 0 in a gstfraction and
7052 that fractions always get reduced.
7054 2005-11-20 Wim Taymans <wim@fluendo.com>
7056 * docs/gst/gstreamer-sections.txt:
7057 * gst/gstbuffer.h:
7058 * gst/gstelement.c:
7059 * gst/gstformat.c:
7060 * gst/gstformat.h:
7061 * gst/gstindex.h:
7062 * gst/gstquery.c:
7063 * gst/gstquery.h:
7064 * gst/gstvalue.c:
7065 Doc fixes.
7067 2005-11-20 Wim Taymans <wim@fluendo.com>
7069 * docs/design/part-TODO.txt:
7070 * gst/gstcaps.h:
7071 Make a proper enum of the flag.
7073 2005-11-19 Wim Taymans <wim@fluendo.com>
7075 * docs/design/part-TODO.txt:
7076 * gst/gstformat.c: (_gst_format_initialize), (gst_format_get_name),
7077 (gst_format_to_quark), (gst_format_register):
7078 * gst/gstformat.h:
7079 * gst/gstquery.c: (_gst_query_initialize),
7080 (gst_query_type_get_name), (gst_query_type_to_quark),
7081 (gst_query_type_register):
7082 * gst/gstquery.h:
7083 Add type to quark and type to string conversions.
7085 2005-11-19 Andy Wingo <wingo@pobox.com>
7087 * gst/gstbuffer.h (GST_BUFFER_FLAG_ORIGINAL): Removed. Fixes
7088 #320097.
7090 2005-11-19 Wim Taymans <wim@fluendo.com>
7092 * docs/design/part-TODO.txt:
7093 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_provide_clock_func),
7094 (gst_bin_add_func), (gst_bin_remove_func), (bin_bus_handler),
7095 (gst_bin_handle_message_func):
7096 * gst/gstbin.h:
7097 Make message handling overridable.
7099 2005-11-19 Andy Wingo <wingo@pobox.com>
7101 * gst/gstpad.h (GST_PAD_IS_USABLE): Removed. Fixes #321235.
7103 * gst/gstclock.h:
7104 * gst/gstclock.c (GstClock, GstClockClass): Change resolution to
7105 be a GstClockTime.
7106 (gst_clock_set_resolution, gst_clock_get_resolution): Resolution
7107 is a GstClockTime. Fixes #321710.
7109 * gst/gstclock.h (GstClock): Remove offset property. Add
7110 internal_calibration and external_calibration. Fix padding. Pad
7111 also by GstClockTime so we don't run into problems.
7113 * gst/gstclock.c (gst_clock_set_rate_offset): Remove.
7114 (gst_clock_get_rate_offset): Remove.
7115 (gst_clock_set_time_adjust): Remove. Fixes #321712.
7117 * gst/gstutils.h:
7118 * gst/gstutils.c (g_static_rec_cond_wait)
7119 (g_static_rec_cond_timed_wait): Removed, no longer needed.
7121 * gst/gstbin.c: Remove terrible continue_state prototype.
7123 * gst/gstelement.h (gst_element_continue_state): Make public.
7125 * gst/gstelement.h:
7126 * gst/gstelement.c (gst_element_commit_state): Removed, replaced
7127 by continue_state. Fixes #319389.
7129 * gst/gstindex.h (GstIndexFilter): Actually pass on the user_data.
7130 Really fixes #168438. However I don't see anywhere where the
7131 filter function is called... stupid GStreamer...
7133 * gst/gstindex.h (GstIndex): Add field for user_data_destroy. We
7134 don't have a dispose function, so it won't get called when the
7135 object is unreffed, but oh well!
7137 * gst/gstindex.c (gst_index_set_filter_full): New API function,
7138 allows a destroy function to be set so user_data can be freed.
7139 Fixes #168438.
7140 (gst_index_set_filter): Call gst_index_set_filter_full.
7142 * check/gst/gstvalue.c (test_string): Add test for bug #165650.
7144 * gst/gstvalue.c (gst_string_wrap): Trying to serialize a NULL
7145 string should produce an error, given the lack of a way to
7146 represent NULL strings. Fixes #165650.
7148 * gst/gstvalue.h:
7149 * gst/gstvalue.c (gst_value_array_append_value)
7150 (gst_value_array_prepend_value, gst_value_array_get_size)
7151 (gst_value_array_get_value): New API, copied from
7152 gst_value_list_*, only operates on arrays.
7153 (gst_value_list_append_value, gst_value_list_prepend_value)
7154 (gst_value_list_concat, gst_value_list_get_size)
7155 (gst_value_list_get_value): Only operate on lists. Fixes #156633.
7157 * gst/gstvalue.c (gst_value_init_list_or_array): Renamed from
7158 init_list, because it works on both.
7159 (copy_garray_of_gstvalue): Renamed from gst_value_list_copy_array.
7160 (gst_value_copy_list_or_array): Renamed from copy_list.
7161 (gst_value_free_list_or_array): Renamed from free_list.
7162 (gst_value_collect_list_or_array): Renamed from collect_list.
7163 (gst_value_lcopy_list_or_array): Renamed from lcopy_list.
7164 (gst_value_list_or_array_peek_pointer): Renamed from
7165 list_peek_pointer.
7166 (_gst_value_array_value_table, _gst_value_list_value_table):
7167 Update value table functions.
7168 (gst_value_compare_list_or_array): Renamed from compare_list.
7170 * gsttaglist.h: Whoops, foreach function returns void. Also fix
7171 some constness.
7173 * gst/gsttaglist.c:
7174 * gst/gsttaglist.h (gst_tag_list_foreach): Operates on a const
7175 GstTagList*. Fixes #143472.
7177 * gst/gststructure.h: Clarify what the foreach/map functions can
7178 or can't do to their arguments.
7180 2005-11-18 Wim Taymans <wim@fluendo.com>
7182 * gst/gstclock.c: (gst_clock_set_calibration),
7183 (gst_clock_get_calibration):
7184 Doc and API fixes.
7185 Calibration can be set with internal time equal to current
7186 internal time too.
7188 2005-11-18 Thomas Vander Stichele <thomas at apestaart dot org>
7190 * gst/gsterror.c:
7191 * gst/gsterror.h:
7192 document
7194 2005-11-18 Andy Wingo <wingo@pobox.com>
7196 * configure.ac:
7197 * pkgconfig/gstreamer-net.pc.in:
7198 * pkgconfig/gstreamer-net-uninstalled.pc.in:
7199 * pkgconfig/Makefile.am: Add net pkgconfig files.
7201 2005-11-18 Stefan Kost <ensonic@users.sf.net>
7203 * gst/gstcaps.c:
7204 * gst/gstghostpad.c:
7205 * gst/gsttrace.c:
7206 * gst/gstvalue.c:
7207 * gst/gstvalue.h:
7208 docs fixes
7210 2005-11-18 Andy Wingo <wingo@pobox.com>
7212 * gst/net/gstnetclientclock.c: Turn off debugging.
7214 * check/net/gstnetclientclock.c (test_functioning): Assert that the
7215 times connverge somewhat. Can't make a real test.
7217 * gst/net/gstnetclientclock.c (do_linear_regression): Use all
7218 integer arithmetic. Return the minimum of the domain, which can be
7219 set as "internal" for gst_clock_set_calibration.
7220 (gst_net_client_clock_observe_times): Call _set_calibration.
7221 (gst_net_client_clock_new): Call _set_calibration instead of
7222 rate_offset.
7224 * check/net/gstnetclientclock.c (test_functioning): Use the right
7225 adjustment api.
7227 * gst/gstclock.h:
7228 * gst/gstclock.c (gst_clock_get_calibration)
7229 (gst_clock_set_calibration): New functions, obsolete the ones I
7230 added yesterday. Doh. Precision issues mean we have to extrapolate
7231 from a point in the more recent past than 1970.
7232 (gst_clock_get_rate_offset, gst_clock_set_rate_offset): Mark as
7233 obsolete.
7234 (gst_clock_adjust_unlocked): Use the right calibration data.
7236 2005-11-18 Edward Hervey <edward@fluendo.com>
7238 * gst/base/gstbasesink.c: (gst_base_sink_change_state):
7239 Also reset the ->current_* values in READY->PAUSED
7241 2005-11-18 Andy Wingo <wingo@pobox.com>
7243 * gst/net/gstnetclientclock.c (gst_net_client_clock_thread):
7244 Whoops, check the right fd. Also add some debugging.
7245 (gst_net_client_clock_observe_times): Adjust for int64 offset.
7246 (do_linear_regression): Add a crapload of debugging. Subtract off
7247 the minimum values from the input series to discard unneeded bits.
7248 Use only int arithmetic. There is still double arithmetic when
7249 calculating the intercept that needs fixing. Return boolean to
7250 indicate success; FALSE would mean the domain or range is too
7251 great. Still needs fixes.
7253 2005-11-18 Wim Taymans <wim@fluendo.com>
7255 * gst/base/gstbasesink.c: (gst_base_sink_get_position):
7256 For the current position in stream time, we need to subtract
7257 accumulated time.
7259 * gst/gstsystemclock.c: (gst_system_clock_async_thread):
7260 Release lock before calling the callback function of async
7261 entries.
7263 2005-11-18 Andy Wingo <wingo@pobox.com>
7265 * gst/net/gstnetclientclock.c (gst_net_client_clock_class_init):
7266 Port goes all the way to MAXUINT16.
7268 * gst/net/gstnettimeprovider.c: Make the port range the same as
7269 for the kernel: 0 assigns, otherwise ports are less than
7270 MAXUINT16.
7272 * check/net/gstnettimeprovider.c: Adapt for 0 == kernel assigns
7273 port change.
7275 * check/net/gstnetclientclock.c (test_functioning): Add the start
7276 of another test.
7278 2005-11-18 Wim Taymans <wim@fluendo.com>
7280 * gst/gstbin.c: (gst_bin_provide_clock_func), (gst_bin_add_func),
7281 (gst_bin_remove_func), (bin_bus_handler):
7282 * gst/gstbin.h:
7283 Removing a clock provider from a bin, triggers a clock lost message
7284 so that a new clock will be selected.
7285 Adding a clock to a bin triggers a clock provider message.
7286 Make sure we reselect a clock when we received a clock lost message.
7287 Keep a reference to the element that provided the clock.
7289 2005-11-18 Andy Wingo <wingo@pobox.com>
7291 * gst/net/gstnetclientclock.c (gst_net_client_clock_new): Adjust
7292 the clock initially so it produces values around the base time.
7293 (gst_net_client_clock_class_init): Typo fix.
7294 (gst_net_client_clock_thread): Add note on when the socket gets
7295 closed.
7297 2005-11-17 Wim Taymans <wim@fluendo.com>
7299 * gst/net/gstnetclientclock.c: (gst_net_client_clock_finalize):
7300 Free remote and local time arrays.
7302 2005-11-17 Wim Taymans <wim@fluendo.com>
7304 * gst/net/gstnetclientclock.c: (do_linear_regression),
7305 (gst_net_client_clock_do_select), (gst_net_client_clock_thread):
7306 Fix compilation, uninitialized vars and a forgotten continue.
7308 2005-11-17 Andy Wingo <wingo@pobox.com>
7310 * check/Makefile.am (check_PROGRAMS):
7311 * check/net/gstnetclientclock.c: Add a most minimal test for the
7312 net client clock. More to come later.
7314 * gst/net/gstnet.h:
7315 * gst/net/Makefile.am: Add netclientclock.
7317 * gst/net/gstnetclientclock.h:
7318 * gst/net/gstnetclientclock.c: New files, implement an untested
7319 GstClock that takes its time from a network time provider.
7320 Implements the algorithm in network-clock.scm.
7322 * tests/network-clock.scm (*window-size*): Rename from
7323 *queue-length*.
7324 * tests/network-clock.scm (network-time):
7325 * tests/network-clock-utils.scm (q-push): Update callers.
7327 2005-11-17 Wim Taymans <wim@fluendo.com>
7329 * gst/gstbin.c: (gst_bin_provide_clock_func),
7330 (gst_bin_sort_iterator_new):
7331 And unref the child too..
7333 2005-11-17 Wim Taymans <wim@fluendo.com>
7335 * gst/gstbin.c: (gst_bin_dispose), (gst_bin_provide_clock_func),
7336 (gst_bin_sort_iterator_new), (gst_bin_iterate_sorted):
7337 Refactor the sort iterator so it can be used while holding the
7338 LOCK too.
7339 Make clock selection select a clock closest to the source.
7341 2005-11-17 Michael Smith <msmith@fluendo.com>
7343 * gst/gstclock.c: (gst_clock_init), (gst_clock_adjust_unlocked),
7344 (gst_clock_set_rate_offset), (gst_clock_get_rate_offset):
7345 * gst/gstclock.h:
7346 Anonymous structs are a gcc (and some other compilers) extension, so
7347 don't use them. Since this is only for ABI-compatibility, and our
7348 API/ABI freeze is over in a few days, this whole thing will only
7349 last a few days, so don't bother trying to think up a meaningful
7350 name for the struct.
7352 2005-11-17 Andy Wingo <wingo@pobox.com>
7354 * gst/gstclock.h (GstClock): Add rate and offset properties,
7355 preserving ABI stability. Add rate/offset accessors. Will file bug
7356 for the freeze break.
7358 * gst/gstclock.c (gst_clock_adjust_unlocked): Implement using rate
7359 and offset, trying to keep precision and avoiding
7360 underflow/overflow.
7361 (gst_clock_set_rate_offset, gst_clock_get_rate_offset): New
7362 functions. Make gst_clock_set_time_adjust obsolete.
7363 (gst_clock_set_time_adjust): Note that this function is obsolete.
7364 Will file bug soon.
7366 * gst/base/gstbasetransform.h: Make the ABI-stability hack
7367 greppable by using GST_PADDING-1+1.
7369 2005-11-17 Torsten Schoenfeld <kaffeetisch at gmx dot net>
7371 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
7373 * gst/gstmessage.c: (gst_message_parse_clock_lost):
7374 Assertion should check for CLOCK_LOST, not NEW_CLOCK (#321648).
7376 * gst/gstpadtemplate.h:
7377 * gst/gstpluginfeature.h:
7378 Don't use c++ style comments in headers (#321638).
7380 2005-11-16 Andy Wingo <wingo@pobox.com>
7382 * gst/net/gstnettimepacket.c (gst_net_time_packet_send): Free
7383 buffer.
7385 * check/net/gstnettimeprovider.c: Check to see that the time
7386 provider actually provides times. Works, yo!
7388 2005-11-16 Wim Taymans <wim@fluendo.com>
7390 * check/Makefile.am:
7391 Enable more tests.
7393 * check/elements/fakesrc.c: (GST_START_TEST):
7394 Set element to NULL before disposing it.
7396 2005-11-16 Andy Wingo <wingo@pobox.com>
7398 * gst/net/Makefile.am:
7399 * gst/net/gstnet.h:
7400 * gst/net/gstnettimeprovider.c:
7401 * gst/net/gstnettimeprovider.h: Use the timepacket stuff in the
7402 provider, include it from gstnet.h, and add it to the build.
7404 * gst/net/gstnettimepacket.h:
7405 * gst/net/gstnettimepacket.c: New files, abstracts out the packet
7406 sending and receiving.
7408 2005-11-16 Wim Taymans <wim@fluendo.com>
7410 * check/Makefile.am:
7411 Enable valgrind check.
7413 * gst/elements/gstfakesrc.c: (gst_fake_src_alloc_parent),
7414 (gst_fake_src_alloc_buffer):
7415 Fix memleak.
7417 2005-11-16 Wim Taymans <wim@fluendo.com>
7419 * gst/net/gstnettimeprovider.c: (gst_net_time_provider_finalize):
7420 Call parent finalize too.
7422 2005-11-16 Wim Taymans <wim@fluendo.com>
7424 * check/Makefile.am:
7425 Enable valgrind check that should work fine now.
7427 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init):
7428 * gst/gstqueue.c: (gst_queue_init):
7429 Fix memleaks in pad allocation.
7431 2005-11-16 Andy Wingo <wingo@pobox.com>
7433 * gst/net/Makefile.am:
7434 * gst/net/gstnet.h: New part of core to hold network elements and
7435 objects. Put in core because it exposes API that applications want
7436 to use. The library is named libgstnet-tempname right now because
7437 of the existing libgstnet in gst-plugins-base. Solution is
7438 probably to rename the one in plugins-base; will file a bug for
7439 the freeze break.
7441 * gst/net/gstnettimeprovider.c:
7442 * gst/net/gstnettimeprovider.h: New object to export a GstClock's
7443 get_time call over the network.
7445 * configure.ac:
7446 * gst/Makefile.am (lib_LTLIBRARIES): Add gstnet to the build.
7448 * check/Makefile.am:
7449 * check/net/gstnettimeprovider.c: A most minimal test suite. Will
7450 get additions shortly.
7452 2005-11-16 Thomas Vander Stichele <thomas at apestaart dot org>
7454 * gst/gstpad.c: (gst_pad_new_from_static_template):
7455 * gst/gstpad.h:
7456 add gst_pad_new_from_static_template functions
7457 * gst/check/gstcheck.c: (gst_check_setup_src_pad),
7458 (gst_check_setup_sink_pad):
7459 * gst/elements/gsttee.c: (gst_tee_init):
7460 and use them
7462 2005-11-16 Wim Taymans <wim@fluendo.com>
7464 * gst/gstpad.c: (gst_pad_pause_task):
7465 Removed warning, it's not really an error either.
7467 2005-11-16 Wim Taymans <wim@fluendo.com>
7469 * gst/base/gstbasetransform.c:
7470 (gst_base_transform_prepare_output_buf),
7471 (gst_base_transform_event):
7472 Check if the caps are NULL, this can happen if the element
7473 is shutting down and the pad caps are set to NULL.
7475 2005-11-16 Thomas Vander Stichele <thomas at apestaart dot org>
7477 * gst/elements/gsttee.c: (gst_tee_init):
7478 fix pad template leak in tee
7480 2005-11-16 Thomas Vander Stichele <thomas at apestaart dot org>
7482 * gst/glib-compat.c: (g_value_dup_gst_object):
7483 * gst/glib-compat.h:
7484 * gst/gstpad.c: (gst_pad_set_property):
7485 use gst_object_ref when setting the pad template; this will
7486 trigger the pad template leaks on GLib 2.6 and the slaves
7488 2005-11-16 Thomas Vander Stichele <thomas at apestaart dot org>
7490 * gst/glib-compat.c: (gst_flags_get_first_value):
7491 * gst/glib-compat.h:
7492 * gst/gstregistryxml.c:
7493 remove functions copied from GLib 2.6
7495 2005-11-16 Michael Smith <msmith@fluendo.com>
7497 * gst/Makefile.am:
7498 Don't link against VALGRIND_LIBS. That was always the wrong thing to
7499 do, but only breaks with newer valgrind versions. We're not a
7500 valgrind tool, we have no link-time dependencies on libcoregrind.
7502 2005-11-16 Thomas Vander Stichele <thomas at apestaart dot org>
7504 * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
7505 some debug changes
7506 * gst/gstmessage.h:
7507 typo fixes
7509 2005-11-16 Thomas Vander Stichele <thomas at apestaart dot org>
7511 * gst/base/gstbasesrc.c: (gst_base_src_init):
7512 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init):
7513 * gst/gstqueue.c: (gst_queue_init):
7514 * gst/gstregistryxml.c: (load_feature):
7515 Revert all these unrefs, they don't even pass make check !
7517 2005-11-15 Johan Dahlin <johan@gnome.org>
7519 * gst/base/gstbasesrc.c: (gst_base_src_init):
7520 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init):
7521 * gst/gstqueue.c: (gst_queue_init):
7522 Free pad templates, fixes a couple of leaks.
7524 2005-11-15 Daniel Fischer <dan at f3c dot com>
7526 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
7528 * gst/gstpad.c: (gst_pad_get_property):
7529 GST_PAD_PAD_TEMPLATE(pad) gets the pad template, while
7530 GST_PAD_TEMPLATE(pad) does a cast. We want the former here.
7531 (#321452)
7533 2005-11-15 Wim Taymans <wim@fluendo.com>
7535 * gst/gstevent.c:
7536 Small doc update.
7538 2005-11-15 Andy Wingo <wingo@pobox.com>
7540 * gst/gstelement.c (gst_element_set_base_time): Add debugging.
7542 * gst/gstpipeline.c (gst_pipeline_set_new_stream_time): Document
7543 using GST_CLOCK_TIME_NONE to disable base time management.
7544 (do_pipeline_seek, gst_pipeline_change_state): Don't reset stream
7545 time if it was NONE before.
7546 (gst_pipeline_change_state): Only munge the base time if
7547 stream_time != GST_CLOCK_TIME_NONE.
7549 * check/gst/gstpipeline.c (test_base_time): Punt around the
7550 problem of the probe not being called, because that's not the
7551 issue I'm looking at. Add a check that setting stream_time to NONE
7552 disables base time management.
7554 2005-11-15 Wim Taymans <wim@fluendo.com>
7556 * gst/base/gstbasesink.c: (gst_base_sink_change_state):
7557 segment_stop == -1 at startup.
7559 * gst/base/gstbasetransform.c: (gst_base_transform_event),
7560 (gst_base_transform_change_state):
7561 Init segment values at start.
7563 2005-11-15 Wim Taymans <wim@fluendo.com>
7565 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
7566 0 segment values are 0 in any format.
7568 * gst/base/gstbasetransform.c: (gst_base_transform_event):
7569 * gst/base/gstbasetransform.h:
7570 Parse newsegment correctly in basetransform
7572 * gst/elements/gstidentity.c: (gst_identity_transform_ip):
7573 Sync to clock using updated segment values.
7575 2005-11-15 Andy Wingo <wingo@pobox.com>
7577 * check/gst/gstpipeline.c (test_base_time): Add check that the
7578 base time and stream time are reset correctly.
7580 2005-11-15 Wim Taymans <wim@fluendo.com>
7582 * docs/design/part-TODO.txt:
7583 Some more TODO items.
7585 2005-11-15 Andy Wingo <wingo@pobox.com>
7587 * gst/elements/gstfakesrc.c (gst_fake_src_create): It's not an
7588 error if the user selected "no clock" as the clocking method.
7590 * check/gst/gstpipeline.c (test_base_time): New test for buffer
7591 timestamps with live capture.
7593 * gst/elements/gstfakesrc.c (gst_fake_src_create): If the datarate
7594 is 0 but we are a live source, timestamp the buffers using the
7595 element's clock.
7597 2005-11-14 Stefan Kost <ensonic@users.sf.net>
7599 * docs/gst/gstreamer-sections.txt:
7600 * gst/gsterror.c:
7601 * gst/gstghostpad.c:
7602 * gst/gstobject.h:
7603 * gst/gstxml.c:
7604 more section docs
7606 2005-11-14 Wim Taymans <wim@fluendo.com>
7608 * common/gst.supp:
7609 add suppressions from Wim's Debian machine
7611 2005-11-14 Thomas Vander Stichele <thomas at apestaart dot org>
7613 * common/gst.supp:
7614 add suppressions from Andy's AMD64 Ubuntu machine
7616 2005-11-14 Andy Wingo <wingo@pobox.com>
7618 * gst/gstpad.c (gst_pad_set_active): Change docs; parent's
7619 STATE_LOCK not necessary. Fixes #311489.
7621 * gst/gsterror.c (FILE_A_BUG): Be polite *and* helpful. Fixes
7622 #305291.
7624 * gst/gstindex.c (gst_index_add_object): Note in the docs that
7625 this function is not implemented.
7627 2005-11-14 Julien MOUTTE <julien@moutte.net>
7629 * gst/base/gstbasetransform.c:
7630 (gst_base_transform_prepare_output_buf):
7631 Ref the source pad caps while we need them.
7632 Fixes (#321386)
7634 2005-11-11 Wim Taymans <wim@fluendo.com>
7636 * docs/gst/gstreamer-sections.txt:
7637 Added some docs for GstCollectData.
7639 * gst/base/gstadapter.c:
7640 Some small code example fix.
7642 * gst/base/gstcollectpads.c:
7643 * gst/base/gstcollectpads.h:
7644 Document some more.
7646 2005-11-11 Thomas Vander Stichele <thomas at apestaart dot org>
7648 * configure.ac: back to HEAD
7650 === release 0.9.5 ===
7652 2005-11-11 Thomas Vander Stichele <thomas at apestaart dot org>
7654 * configure.ac:
7655 releasing 0.9.5, "Bike Lunch Day"
7657 2005-11-11 Wim Taymans <wim@fluendo.com>
7659 * gst/gstbuffer.c: (_gst_buffer_copy):
7660 Copy more flags.
7662 * gst/gstcaps.c: (gst_caps_is_equal):
7663 Fix some docs.
7664 Make _is_equal fast in the trivial cases.
7666 * gst/gstminiobject.c:
7667 * gst/gstminiobject.h:
7668 More docs. Spifify .h file.
7670 * gst/gstutils.c:
7671 Small doc update.
7673 2005-11-11 Wim Taymans <wim@fluendo.com>
7675 * gst/base/gstbasetransform.c:
7676 (gst_base_transform_prepare_output_buf),
7677 (gst_base_transform_handle_buffer):
7678 Small cleanups.
7679 If we're processing a buffer and need to allocate an output
7680 buffer, we cannot accept a format change. If we did get a
7681 format change, we have to alloc a buffer ourselves of the
7682 right size.
7684 2005-11-11 Wim Taymans <wim@fluendo.com>
7686 * gst/gstpad.c: (gst_pad_get_caps), (gst_pad_peer_get_caps):
7687 While checking the flag for reentrancy in the gstcaps function
7688 is nice to detect recursive invocations, it also makes it
7689 impossible to call getcaps from multiple threads, which must be
7690 possible. So, checking for recursive calls has to go.
7692 2005-11-11 Michael Smith <msmith@fluendo.com>
7694 * gst/base/gstbasesink.c: (gst_base_sink_do_sync):
7695 Don't sync on buffers that fall partially outside our current
7696 segment. Prevents an assertion failure/abort playing some files.
7698 2005-11-10 Andy Wingo <wingo@pobox.com>
7700 * check/gst/gstbin.c (test_message_state_changed_children): Style
7701 fix..
7703 * gst/gstbus.c (poll_destroy, poll_func, gst_bus_poll): Implement
7704 gst_bus_poll with the signal watch. Ensures that poll and a signal
7705 watch see the same messages.
7707 * check/gst/gstbus.c (test_watch_with_poll): New test, checks that
7708 a poll and a watch at the same time get the same messages.
7710 2005-11-10 Thomas Vander Stichele <thomas at apestaart dot org>
7712 * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps):
7713 * gst/gstcaps.c: (gst_caps_intersect):
7714 Don't call gst_caps_do_simplify - it doesn't respect order of caps
7715 and it's not needed.
7717 2005-11-10 Wim Taymans <wim@fluendo.com>
7719 * docs/design/part-TODO.txt:
7720 Updated todo.
7722 2005-11-10 Wim Taymans <wim@fluendo.com>
7724 * gst/base/gstbasesink.c: (gst_base_sink_do_sync):
7725 * gst/base/gstbasesrc.c: (gst_base_src_wait),
7726 (gst_base_src_do_sync), (gst_base_src_get_range):
7727 Implement clock sync in base class.
7729 2005-11-10 Thomas Vander Stichele <thomas at apestaart dot org>
7731 patch by: Tim-Philipp Müller <tim at centricular dot net>
7733 * gst/gststructure.c: (gst_structure_parse_field),
7734 (gst_structure_from_string):
7735 Forward-port a 0.8 patch to handle escaped spaces in structure string,
7736 so that gst_parse_launch() can deal with spaces in filtered link
7737 caps (fixes #164479)
7738 * check/gst/capslist.h:
7739 * check/gst/gststructure.c: (GST_START_TEST):
7740 add unit tests for this change
7742 2005-11-10 Wim Taymans <wim@fluendo.com>
7744 * docs/gst/gstreamer-sections.txt:
7745 * gst/gstelement.c:
7746 * gst/gstelement.h:
7747 Fix docs, move some STATE macros to private.
7749 2005-11-10 Wim Taymans <wim@fluendo.com>
7751 * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
7752 Added check for bug #317341
7754 * gst/gstbuffer.c:
7755 * gst/gstbuffer.h:
7756 Some more spiffifying.
7758 * gst/gstghostpad.c: (gst_ghost_pad_do_link):
7759 Call peer linkfunction if we are a source pad. Totally fixes
7760 #317341
7762 * gst/gstpad.c:
7763 Update docs, source pads should call the peer linkfunction
7764 so they can atomically perform the pad link.
7766 2005-11-09 Wim Taymans <wim@fluendo.com>
7768 * gst/gstbuffer.c:
7769 * gst/gstbuffer.h:
7770 Uber-spiffy-spiffify some more.
7772 2005-11-09 Tim-Philipp Müller <tim at centricular dot net>
7774 * gst/base/gstcollectpads.c: (gst_collectpads_add_pad):
7775 * gst/elements/gstfilesink.c: (gst_file_sink_init):
7776 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init):
7777 * gst/gstghostpad.c: (gst_ghost_pad_set_internal),
7778 (gst_ghost_pad_init), (gst_ghost_pad_new_notarget):
7779 * gst/gstpad.c: (gst_pad_init):
7780 Use GST_DEBUG_FUNCPTR() more extensively.
7782 2005-11-09 Wim Taymans <wim@fluendo.com>
7784 * gst/gstobject.c: (gst_object_class_init):
7785 * gst/gstobject.h:
7786 Documentation fixes.
7788 2005-11-09 Edward Hervey <edward@fluendo.com>
7790 * gst/gsttypefindfactory.c:
7791 Fix docs.
7793 2005-11-09 Edward Hervey <edward@fluendo.com>
7795 * gst/base/gsttypefindhelper.c:
7796 * gst/gsttypefind.c:
7797 * gst/gsttypefind.h:
7798 Fix docs.
7800 2005-11-09 Wim Taymans <wim@fluendo.com>
7802 * gst/gstiterator.c:
7803 Fix revision data.
7805 * gst/gsttask.c:
7806 * gst/gsttask.h:
7807 Fix docs.
7809 2005-11-09 Wim Taymans <wim@fluendo.com>
7811 * gst/gstevent.h:
7812 * gst/gsturi.h:
7813 Fix docs.
7815 2005-11-09 Wim Taymans <wim@fluendo.com>
7817 * docs/gst/gstreamer-sections.txt:
7818 Moved the message async delivery private lock and cond
7819 to the private section.
7821 * gst/gstmessage.c:
7822 * gst/gstmessage.h:
7823 Fixed docs.
7825 2005-11-09 Edward Hervey <edward@fluendo.com>
7827 * docs/gst/gstreamer-sections.txt:
7828 * gst/gsturi.c:
7829 * gst/gsturi.h:
7830 Document GstURIHandler
7832 2005-11-09 Wim Taymans <wim@fluendo.com>
7834 * gst/gstiterator.c: (gst_iterator_fold), (gst_iterator_foreach),
7835 (gst_iterator_find_custom):
7836 * gst/gstiterator.h:
7837 Fix iterator docs.
7839 2005-11-09 Wim Taymans <wim@fluendo.com>
7841 * gst/gstbin.h:
7842 Document another field.
7844 * gst/gststructure.c:
7845 * gst/gststructure.h:
7846 Document.
7848 2005-11-09 Wim Taymans <wim@fluendo.com>
7850 * gst/gstbin.h:
7851 Documented structs.
7853 2005-11-09 Wim Taymans <wim@fluendo.com>
7855 * docs/gst/gstreamer-sections.txt:
7856 Added some new macros.
7858 * gst/gstclock.c:
7859 * gst/gstclock.h:
7860 * gst/gstobject.h:
7861 Docs updates.
7863 2005-11-09 Wim Taymans <wim@fluendo.com>
7865 * docs/design/part-TODO.txt:
7866 Some more items for the TODO
7868 * gst/gstcaps.c:
7869 * gst/gstcaps.h:
7870 Document GstCaps.
7872 2005-11-09 Andy Wingo <wingo@pobox.com>
7874 * gst/base/gstbasesink.c: Add the beginning of docs here -- have
7875 to work on something else now tho...
7877 * gst/base/gstadapter.c: More adapter docs.
7879 * gst/elements/gstfilesink.c (gst_file_sink_start)
7880 (gst_file_sink_stop): New functions, replace the state change
7881 handler.
7882 (gst_file_sink_class_init): Hook up the start and stop functions.
7883 (gst_file_sink_base_init): Don't set the state change handler any
7884 more. It was a bit ugly too, being set from here...
7885 (gst_file_sink_get_property, gst_file_sink_set_property):
7886 Cleanups...
7887 (gst_file_sink_set_location): More robust check that doesn't call
7888 GST_STATE. Ugggggg.
7890 2005-11-08 Tim-Philipp Müller <tim at centricular dot net>
7892 * gst/base/gstbasetransform.c: (gst_base_transform_event):
7893 Hold STREAM_LOCK while pushing newsegment or tag events as well.
7895 2005-11-08 Wim Taymans <wim@fluendo.com>
7897 * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
7898 (gst_base_sink_do_sync), (gst_base_sink_handle_event),
7899 (gst_base_sink_chain), (gst_base_sink_change_state):
7900 * gst/base/gstbasesink.h:
7901 * gst/base/gstbasesrc.h:
7902 * gst/gstelement.h:
7903 * gst/gstevent.h:
7904 Avoid excessive typechecking in macros.
7906 * gst/gstminiobject.c: (gst_mini_object_get_type),
7907 (gst_mini_object_init), (gst_mini_object_new),
7908 (gst_mini_object_free):
7909 * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
7910 (gst_object_finalize):
7911 Remove cruft code, optimize alloc_trace.
7913 2005-11-07 Thomas Vander Stichele <thomas at apestaart dot org>
7915 * docs/faq/gst-uninstalled:
7916 fix up PS1 for systems that try to reset it
7918 2005-11-07 Wim Taymans <wim@fluendo.com>
7920 * gst/base/gstbasesrc.c: (gst_base_src_init),
7921 (gst_base_src_get_range):
7922 Set the segment_end to -1 initially. Fixed typefind.
7924 2005-11-07 Tim-Philipp Müller <tim at centricular dot net>
7926 * gst/base/gstadapter.c:
7927 Debug category should be 'adapter', not 'GstAdapter'.
7929 * gst/base/gstcollectpads.c: (gst_collectpads_base_init),
7930 (gst_collectpads_class_init), (gst_collectpads_init),
7931 (gst_collectpads_peek), (gst_collectpads_pop),
7932 (gst_collectpads_event), (gst_collectpads_chain):
7933 Add debug category and some debugging output. Use boilerplate
7934 macros. Remove some extraneous words from docs.
7936 2005-11-05 Andy Wingo <wingo@pobox.com>
7938 * gst/base/gstpushsrc.c: Shorten by 30% via use of boilerplate
7939 macro.
7941 2005-11-04 Stefan Kost <ensonic@users.sf.net>
7943 * docs/gst/gstreamer-sections.txt:
7944 * gst/gstcaps.h:
7945 * gst/gstinfo.c:
7946 * gst/gstminiobject.h:
7947 * gst/gstobject.h:
7948 * gst/gstutils.h:
7949 more docs added
7951 2005-11-04 Wim Taymans <wim@fluendo.com>
7953 * gst/base/gstbasesrc.c: (gst_base_src_get_range):
7954 Small update to stop at the configured segment_end
7955 position.
7957 2005-11-04 Stefan Kost <ensonic@users.sf.net>
7959 * gst/gstregistry.c:
7960 * gst/gstregistry.h:
7961 added missing docs
7963 2005-11-04 Edward Hervey <edward@fluendo.com>
7965 * gst/base/gstbasesrc.c: (gst_base_src_get_range):
7966 Check if we are doing a segment seek and have arrived at the
7967 end of that segment.
7969 2005-11-04 Wim Taymans <wim@fluendo.com>
7971 * gst/gstbus.c: (gst_bus_post), (gst_bus_set_sync_handler):
7972 Don't leak a mutex unlock in case of an error.
7974 * gst/gstbus.h:
7975 Doc fixes.
7977 2005-11-04 Wim Taymans <wim@fluendo.com>
7979 * gst/gstbus.c: (gst_bus_class_init), (gst_bus_init),
7980 (gst_bus_post):
7981 Get the context to wake up only once.
7983 2005-11-03 Wim Taymans <wim@fluendo.com>
7985 * check/states/sinks.c: (GST_START_TEST):
7986 Uncomment fixed check.
7988 * docs/design/part-TODO.txt:
7989 Updated TODO.
7991 * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
7992 (gst_base_sink_handle_object), (gst_base_sink_do_sync),
7993 (gst_base_sink_get_position):
7994 If we are going to PLAYING, post the right pending state
7995 when we post the intermediate paused message.
7997 * gst/gstelement.c: (gst_element_continue_state),
7998 (gst_element_set_state_func), (gst_element_change_state):
7999 Don't post state changes that were between the same state
8000 and were not ASYNC.
8002 2005-11-03 Stefan Kost <ensonic@users.sf.net>
8004 * docs/gst/gstreamer-sections.txt:
8005 * gst/gstcaps.h:
8006 * gst/gstinfo.c:
8007 * gst/gstminiobject.h:
8008 * gst/gstobject.h:
8009 * gst/gstutils.h:
8010 more docs and doc style fixes
8012 2005-11-03 Stefan Kost <ensonic@users.sf.net>
8014 * docs/gst/gstreamer-sections.txt:
8015 * gst/gstelement.c:
8016 * gst/gstminiobject.c:
8017 doc fixes
8019 2005-11-03 Andy Wingo <wingo@pobox.com>
8021 * check/states/sinks.c (test_livesrc_sink): Add checks that the
8022 state-changed messages actually have the right order and the right
8023 values.
8025 2005-11-03 Wim Taymans <wim@fluendo.com>
8027 * check/states/sinks.c: (GST_START_TEST), (gst_object_suite):
8028 Added some more checks. Specifically the case where NO_PREROLL
8029 elements are in the pipeline.
8031 * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
8032 (gst_base_sink_handle_object), (gst_base_sink_do_sync),
8033 (gst_base_sink_get_position):
8034 Post READY->PAUSED state change messages too.
8035 Fix bug where VOID was posted as pending state...
8037 * gst/gstbin.c: (gst_bin_recalc_state):
8038 use _element_continue_state() to continue the state change.
8040 * gst/gstelement.c: (gst_element_continue_state),
8041 (gst_element_commit_state), (gst_element_set_state_func),
8042 (gst_element_change_state), (gst_element_change_state_func):
8043 Lots of state change cleanups, assign the STATE_RETURN in
8044 a new continue_state() function that also propagates the
8045 last return value from a state change to the app.
8046 Update some debug statements with proper category.
8048 2005-11-03 Wim Taymans <wim@fluendo.com>
8050 * docs/design/part-events.txt:
8051 * docs/design/part-gstpipeline.txt:
8052 * docs/design/part-messages.txt:
8053 * docs/design/part-overview.txt:
8054 * docs/design/part-seeking.txt:
8055 * docs/design/part-states.txt:
8056 * docs/design/part-trickmodes.txt:
8057 * docs/manual/advanced-position.xml:
8058 Small docs updates.
8060 * gst/gstobject.h:
8061 People think !! is ugly, this looks better.
8063 * gst/gstpad.c: (gst_pad_set_blocked_async):
8064 Remove !! since it's fixed elsewhere now.
8066 2005-11-03 Tim-Philipp Müller <tim at centricular dot net>
8068 * gst/gstminiobject.h:
8069 * gst/gstobject.h:
8070 Add !! to _FLAG_IS_SET macros to make the result boolean.
8072 2005-11-03 Edward Hervey <edward@fluendo.com>
8074 * gst/gstpad.c: (gst_pad_set_blocked_async):
8075 comparing a flag and a gboolean rarely returns coherent results...
8076 Added two characters (!!) to make that work correctly.
8078 2005-11-03 Tim-Philipp Müller <tim at centricular dot net>
8080 * gst/gstbus.c: (gst_bus_class_init):
8081 Fix some typos.
8083 * gst/gstqueue.c: (gst_queue_loop):
8084 Don't assume a miniobject that isn't a buffer is an
8085 event (it could be that there is a refcounting
8086 problem somewhere and the pointer is stale and
8087 refers to an already destroyed miniobject).
8089 2005-11-03 Julien MOUTTE <julien@moutte.net>
8091 * gst/gstpad.c: (gst_pad_alloc_buffer): Fix some typos.
8093 2005-11-03 Tim-Philipp Müller <tim at centricular dot net>
8095 * docs/manual/advanced-position.xml:
8096 Update seek example and explanations to current 0.9 API.
8098 * gst/elements/gsttypefindelement.c:
8099 (gst_type_find_element_activate):
8100 Remove FIXME comment now that the found caps
8101 are unreffed.
8103 2005-11-03 Thomas Vander Stichele <thomas at apestaart dot org>
8105 * gst/gstregistryxml.c: (load_feature):
8106 Add another GST_STR_NULL instance
8108 2005-11-02 Edward Hervey <edward@fluendo.com>
8110 * gst/gstpad.c: (handle_pad_block):
8111 Follow-up to Wim's patch, solves deadlock for blocked and flushing pads
8113 2005-11-02 Wim Taymans <wim@fluendo.com>
8115 * gst/gstbin.c:
8116 Fix typo in docs.
8118 * gst/gstelement.c: (gst_element_commit_state):
8119 Remove unused value.
8121 * gst/gstiterator.c:
8122 Mention that the returned element is reffed in the docs.
8124 2005-11-02 Wim Taymans <wim@fluendo.com>
8126 * gst/gstpad.c: (gst_pad_alloc_buffer), (handle_pad_block),
8127 (gst_pad_push), (gst_pad_push_event):
8128 Unlock blocked pads when they are flushed.
8130 2005-11-02 Thomas Vander Stichele <thomas at apestaart dot org>
8132 * docs/README:
8133 * docs/gst/gstreamer-sections.txt:
8134 * gst/gstbin.c:
8135 doc updates
8136 * gst/gstregistry.c: (gst_registry_scan_path_level):
8137 fix for a nasty little missed situation where an installed plug-in
8138 which was in the cache did not get overridden by an uninstalled one
8139 which was earlier in the plugin path because the newly created plugin
8140 for the uninstalled one (not in the registry) didn't get its
8141 ->registered set to TRUE
8143 2005-11-02 Tim-Philipp Müller <tim at centricular dot net>
8145 * gst/base/gstcollectpads.c: (gst_collectpads_set_function),
8146 (gst_collectpads_add_pad), (gst_collectpads_remove_pad),
8147 (gst_collectpads_is_active), (gst_collectpads_collect),
8148 (gst_collectpads_collect_range), (gst_collectpads_start),
8149 (gst_collectpads_stop), (gst_collectpads_peek),
8150 (gst_collectpads_pop), (gst_collectpads_available),
8151 (gst_collectpads_read), (gst_collectpads_flush):
8152 Guard public API with assertions.
8154 * gst/gstpad.c:
8155 Fix docs for gst_pad_set_link_function().
8157 2005-11-02 Johan Dahlin <johan@gnome.org>
8159 * gst/elements/gsttypefindelement.c (gst_type_find_element_activate):
8160 Unref found_caps after we used it.
8162 2005-11-02 Tim-Philipp Müller <tim at centricular dot net>
8164 * gst/base/gstcollectpads.c: (gst_collectpads_peek):
8165 Don't try to ref NULL.
8167 2005-11-02 Thomas Vander Stichele <thomas at apestaart dot org>
8169 * win32/common/config.h.in:
8170 provide a GST_FUNCTION that just gives a string for now
8172 2005-11-02 Thomas Vander Stichele <thomas at apestaart dot org>
8174 * win32/common/gstenumtypes.c: (register_gst_object_flags),
8175 (gst_object_flags_get_type), (register_gst_bin_flags),
8176 (gst_bin_flags_get_type), (register_gst_buffer_flag),
8177 (gst_buffer_flag_get_type), (register_gst_bus_flags),
8178 (gst_bus_flags_get_type), (register_gst_bus_sync_reply),
8179 (gst_bus_sync_reply_get_type), (register_gst_clock_return),
8180 (gst_clock_return_get_type), (register_gst_clock_entry_type),
8181 (gst_clock_entry_type_get_type), (register_gst_clock_flags),
8182 (gst_clock_flags_get_type), (register_gst_state),
8183 (gst_state_get_type), (register_gst_state_change_return),
8184 (gst_state_change_return_get_type), (register_gst_state_change),
8185 (gst_state_change_get_type), (register_gst_element_flags),
8186 (gst_element_flags_get_type), (register_gst_core_error),
8187 (gst_core_error_get_type), (register_gst_library_error),
8188 (gst_library_error_get_type), (register_gst_resource_error),
8189 (gst_resource_error_get_type), (register_gst_stream_error),
8190 (gst_stream_error_get_type), (register_gst_event_type),
8191 (gst_event_type_get_type), (register_gst_seek_type),
8192 (gst_seek_type_get_type), (register_gst_seek_flags),
8193 (gst_seek_flags_get_type), (register_gst_format),
8194 (gst_format_get_type), (register_gst_index_certainty),
8195 (gst_index_certainty_get_type), (register_gst_index_entry_type),
8196 (gst_index_entry_type_get_type),
8197 (register_gst_index_lookup_method),
8198 (gst_index_lookup_method_get_type), (register_gst_assoc_flags),
8199 (gst_assoc_flags_get_type), (register_gst_index_resolver_method),
8200 (gst_index_resolver_method_get_type), (register_gst_index_flags),
8201 (gst_index_flags_get_type), (register_gst_debug_level),
8202 (gst_debug_level_get_type), (register_gst_debug_color_flags),
8203 (gst_debug_color_flags_get_type), (register_gst_iterator_result),
8204 (gst_iterator_result_get_type), (register_gst_iterator_item),
8205 (gst_iterator_item_get_type), (register_gst_message_type),
8206 (gst_message_type_get_type), (register_gst_mini_object_flags),
8207 (gst_mini_object_flags_get_type), (register_gst_pad_link_return),
8208 (gst_pad_link_return_get_type), (register_gst_flow_return),
8209 (gst_flow_return_get_type), (register_gst_activate_mode),
8210 (gst_activate_mode_get_type), (register_gst_pad_direction),
8211 (gst_pad_direction_get_type), (register_gst_pad_flags),
8212 (gst_pad_flags_get_type), (register_gst_pad_presence),
8213 (gst_pad_presence_get_type), (register_gst_pad_template_flags),
8214 (gst_pad_template_flags_get_type), (register_gst_pipeline_flags),
8215 (gst_pipeline_flags_get_type), (register_gst_plugin_error),
8216 (gst_plugin_error_get_type), (register_gst_plugin_flags),
8217 (gst_plugin_flags_get_type), (register_gst_rank),
8218 (gst_rank_get_type), (register_gst_query_type),
8219 (gst_query_type_get_type), (register_gst_tag_merge_mode),
8220 (gst_tag_merge_mode_get_type), (register_gst_tag_flag),
8221 (gst_tag_flag_get_type), (register_gst_task_state),
8222 (gst_task_state_get_type), (register_gst_alloc_trace_flags),
8223 (gst_alloc_trace_flags_get_type),
8224 (register_gst_type_find_probability),
8225 (gst_type_find_probability_get_type), (register_gst_uri_type),
8226 (gst_uri_type_get_type), (register_gst_parse_error),
8227 (gst_parse_error_get_type):
8228 * win32/common/gstversion.h:
8229 update win32 copies
8231 2005-11-01 Luca Ognibene <luogni@tin.it>
8233 * gst/gst.c:
8234 fix docs. popt is dead, long live GOption.
8236 2005-10-31 Wim Taymans <wim@fluendo.com>
8238 * gst/gstbuffer.h:
8239 Small doc fix.
8241 2005-10-31 Andy Wingo <wingo@pobox.com>
8243 * Boo!
8245 * gst/gstqueue.c (gst_queue_chain): Fix downstream leaky mode.
8247 * gst/gstobject.c (gst_object_dispatch_properties_changed): No
8248 need to serialize property notifications on GLib 2.8. GLib 2.6 has
8249 the possibility of deadlocks here if code calling notify() or
8250 set() has a lock that can be taken in another notify handler (ABBA
8251 with class lock and e.g. python GIL state lock).
8253 2005-10-28 Julien MOUTTE <julien@moutte.net>
8255 * gst/gstbus.c: Doc updates.
8257 2005-10-28 Wim Taymans <wim@fluendo.com>
8259 * docs/design/part-TODO.txt:
8260 * gst/gstiterator.c:
8261 * gst/gstsystemclock.c:
8262 * gst/gstsystemclock.h:
8263 Doc updates.
8265 2005-10-28 Edward Hervey <edward@fluendo.com>
8267 * docs/gst/gstreamer-docs.sgml:
8268 * docs/gst/gstreamer-sections.txt:
8269 the GstURIType documentation page is private, it only defines GstURIType
8270 which should be defined in the GstURIHandler page
8272 2005-10-28 Thomas Vander Stichele <thomas at apestaart dot org>
8274 * gst/gstbin.c: (gst_bin_class_init):
8275 * gst/gstbin.h:
8276 * gst/gstutils.c:
8277 Documentation updates.
8279 2005-10-28 Wim Taymans <wim@fluendo.com>
8281 * docs/gst/gstreamer-sections.txt:
8282 * gst/gstclock.c:
8283 * gst/gstclock.h:
8284 Documented the clocks.
8286 2005-10-28 Stefan Kost <ensonic@users.sf.net>
8288 * docs/gst/gstreamer-sections.txt:
8289 move some macros to private sections
8290 * gst/gstminiobject.c:
8291 * gst/gstminiobject.h:
8292 add descriptions provided by ds and some more
8293 * gst/gstpad.h:
8294 mark macro as to be removed
8296 2005-10-28 Wim Taymans <wim@fluendo.com>
8298 * docs/design/part-TODO.txt:
8299 Add an item to TODO.
8301 * gst/gstiterator.c: (gst_iterator_fold),
8302 (gst_iterator_find_custom):
8303 * gst/gstiterator.h:
8304 Add iterator docs.
8306 2005-10-28 Wim Taymans <wim@fluendo.com>
8308 * gst/base/gstbasetransform.c: (gst_base_transform_class_init),
8309 (gst_base_transform_init):
8310 Don't leak class.
8312 * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_loop):
8313 An EOS event marks the queue as completely filled.
8315 2005-10-27 Wim Taymans <wim@fluendo.com>
8317 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
8318 (gst_base_sink_do_sync), (gst_base_sink_get_position):
8319 Some more debugging.
8321 * gst/base/gstbasetransform.c: (gst_base_transform_finalize),
8322 (gst_base_transform_init), (gst_base_transform_buffer_alloc),
8323 (gst_base_transform_event), (gst_base_transform_getrange),
8324 (gst_base_transform_chain):
8325 * gst/base/gstbasetransform.h:
8326 Fix debugging,
8327 Protect transform and concurrent buffer alloc with a new lock.
8328 Try not to break ABI/API.
8330 2005-10-27 Wim Taymans <wim@fluendo.com>
8332 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
8333 (gst_base_src_init), (gst_base_src_query),
8334 (gst_base_src_default_newsegment),
8335 (gst_base_src_configure_segment), (gst_base_src_do_seek),
8336 (gst_base_src_send_event), (gst_base_src_event_handler),
8337 (gst_base_src_pad_get_range), (gst_base_src_loop),
8338 (gst_base_src_unlock), (gst_base_src_default_negotiate),
8339 (gst_base_src_start), (gst_base_src_deactivate),
8340 (gst_base_src_activate_push), (gst_base_src_change_state):
8341 Move some stuff around and cleanup things.
8343 2005-10-27 Tim-Philipp Müller <tim at centricular dot net>
8345 * gst/base/gstbasesrc.c: (gst_base_src_query):
8346 Add missing break statements.
8348 2005-10-27 Wim Taymans <wim@fluendo.com>
8350 * check/gst/gstbin.c: (GST_START_TEST):
8351 An extra refcount is taken in basesrc.
8353 * gst/base/gstbasesrc.c: (gst_base_src_init), (gst_base_src_query),
8354 (gst_base_src_get_range), (gst_base_src_pad_get_range),
8355 (gst_base_src_loop):
8356 Small cleanups, check for flushing after being unlocked from the
8357 LIVE_LOCK. take refcounts correctly (not yet everywhere).
8358 Don't send out EOS when going to READY.
8360 2005-10-27 Wim Taymans <wim@fluendo.com>
8362 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
8363 (gst_base_sink_get_position):
8364 Some more debug.
8366 * gst/gstbin.c: (message_check), (bin_replace_message),
8367 (bin_remove_messages), (is_eos), (gst_bin_add_func),
8368 (update_degree), (gst_bin_sort_iterator_next), (bin_bus_handler),
8369 (bin_query_duration_init), (bin_query_duration_fold),
8370 (bin_query_duration_done), (bin_query_generic_fold),
8371 (gst_bin_query):
8372 * tools/gst-launch.c: (main):
8373 Remove old option.
8375 2005-10-26 Stefan Kost <ensonic@users.sf.net>
8377 * examples/controller/audio-example.c: (main):
8378 * examples/queue/queue.c: (event_loop):
8379 * gst/base/gstbasetransform.h:
8380 * gst/gstelement.c: (gst_element_send_event):
8381 * gst/gstevent.h:
8382 * gst/gstpad.c: (gst_pad_send_event):
8383 fixing examples
8384 fixing docs typos
8385 changing log priority in error situations
8387 2005-10-25 Wim Taymans <wim@fluendo.com>
8389 * gst/gstbin.c: (message_check), (bin_replace_message),
8390 (bin_remove_messages), (is_eos), (gst_bin_add_func),
8391 (update_degree), (gst_bin_sort_iterator_next), (bin_bus_handler),
8392 (bin_query_duration_init), (bin_query_duration_fold),
8393 (bin_query_duration_done), (bin_query_generic_fold),
8394 (gst_bin_query):
8395 Some doc and debug updates.
8396 Cache previously requested query DURATION for speed. invalidate
8397 cached duration if element posts a DURATION message.
8399 2005-10-25 Wim Taymans <wim@fluendo.com>
8401 * docs/design/part-TODO.txt:
8402 Update TODO.
8404 * gst/gstbin.c: (message_check), (bin_replace_message),
8405 (bin_remove_messages), (is_eos), (gst_bin_add_func),
8406 (update_degree), (gst_bin_sort_iterator_next), (bin_bus_handler),
8407 (bin_query_duration_init), (bin_query_duration_fold),
8408 (bin_query_duration_done), (bin_query_generic_fold),
8409 (gst_bin_query):
8410 Handle SEGMENT_START/DONE messages correctly.
8411 More evolved query algorithm that handles duration queries
8412 correctly.
8414 * gst/gstelement.c: (gst_element_send_event), (gst_element_query),
8415 (gst_element_get_state_func), (gst_element_abort_state),
8416 (gst_element_commit_state), (gst_element_lost_state):
8417 Some more debugging.
8419 * gst/gstmessage.h:
8420 Added doc.
8422 2005-10-25 Wim Taymans <wim@fluendo.com>
8424 * gst/base/gstbasesink.c: (gst_base_sink_get_position):
8425 Don't use invalid stream_time.
8427 * gst/gstevent.c: (gst_event_new_newsegment):
8428 stream_time in newsegment cannot be undefined.
8430 2005-10-24 Wim Taymans <wim@fluendo.com>
8432 * gst/gstbus.c:
8433 Doc fix.
8435 * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
8436 (gst_queue_loop):
8437 Fix potential deadlock when QUEUE_LOCK is taken before STREAM_LOCK.
8439 2005-10-24 Stefan Kost <ensonic@users.sf.net>
8441 * docs/libs/tmpl/gstdparam.sgml:
8442 * docs/libs/tmpl/gstdplinint.sgml:
8443 * docs/libs/tmpl/gstdpman.sgml:
8444 * docs/libs/tmpl/gstdpsmooth.sgml:
8445 * docs/libs/tmpl/gstunitconvert.sgml:
8446 these are obsolete
8448 2005-10-24 Thomas Vander Stichele <thomas at apestaart dot org>
8450 * configure.ac:
8451 back to HEAD
8453 === release 0.9.4 ===
8455 2005-10-23 Thomas Vander Stichele <thomas at apestaart dot org>
8457 * configure.ac:
8458 releasing 0.9.4, "Tyrannosaurus Rex"
8460 2005-10-23 Tim-Philipp Müller <tim at centricular dot net>
8462 * gst/elements/gstfilesink.c: (gst_file_sink_do_seek),
8463 (gst_file_sink_get_current_offset):
8464 Use fseeko() and ftello() if available. When falling back on
8465 lseek() to get the current offset, fflush() first to make sure
8466 everything is up-to-date and we get the right offset.
8468 2005-10-23 Thomas Vander Stichele <thomas at apestaart dot org>
8470 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
8471 * gst/base/gstbasesrc.c: (gst_base_src_loop):
8472 * gst/gsterror.c: (_gst_stream_errors_init):
8473 * gst/gsterror.h:
8474 * gst/gstqueue.c: (gst_queue_loop):
8475 * po/POTFILES.in:
8476 remove prematurely added error category and clean up the instances
8478 2005-10-21 Wim Taymans <wim@fluendo.com>
8480 * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
8481 (gst_base_sink_get_position), (gst_base_sink_query),
8482 (gst_base_sink_change_state):
8483 Simply set the right flag when going to playing, that's all
8484 we need to do instead of calling a function inside the object
8485 lock (that could take the lock as well and deadlock)
8487 2005-10-21 Wim Taymans <wim@fluendo.com>
8489 * gst/base/gstbasesrc.c: (gst_base_src_do_seek),
8490 (gst_base_src_loop):
8491 Don't warn, the peer element knows what to do best when
8492 the seek failed, it might try something else.
8494 2005-10-21 Wim Taymans <wim@fluendo.com>
8496 * gst/base/gstbasesrc.c: (gst_base_src_init),
8497 (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
8498 Fix seeking.
8500 2005-10-21 Wim Taymans <wim@fluendo.com>
8502 * docs/design/part-segments.txt:
8503 More docs.
8505 * gst/elements/gstcapsfilter.c: (gst_capsfilter_prepare_buf):
8506 Correctly set caps, even on the subbufer.
8508 2005-10-21 Wim Taymans <wim@fluendo.com>
8510 * docs/gst/gstreamer-docs.sgml:
8511 * docs/gst/gstreamer-sections.txt:
8512 * gst/gstelement.h:
8513 * gst/gstevent.c:
8514 * gst/gstevent.h:
8515 * gst/gstmessage.h:
8516 * gst/gstpad.h:
8517 * gst/gstparse.h:
8518 * gst/gsttask.c: (gst_task_finalize), (gst_task_func):
8519 * gst/gsttask.h:
8520 * gst/gstutils.c:
8521 * gst/gstutils.h:
8522 And 2% more doc coverage.
8524 2005-10-21 Andy Wingo <wingo@pobox.com>
8526 * gst/base/gstbasesrc.c (gst_base_src_query): Clean up percent
8527 position reporting.
8529 2005-10-20 Wim Taymans <wim@fluendo.com>
8531 * gst/gsterror.c: (gst_error_get_message):
8532 * gst/gstparse.h:
8533 * gst/gstquery.h:
8534 * gst/gststructure.c:
8535 * gst/gsttrace.c:
8536 * gst/gstutils.c:
8537 More docs.
8539 2005-10-20 Wim Taymans <wim@fluendo.com>
8541 * gst/gstbuffer.h:
8542 * gst/gstpad.c:
8543 * gst/gstparse.c:
8544 Another 1% more coverage.
8546 2005-10-20 Wim Taymans <wim@fluendo.com>
8548 * docs/gst/gstreamer-sections.txt:
8549 * gst/gstelement.c: (gst_element_get_state_func),
8550 (gst_element_abort_state), (gst_element_commit_state),
8551 (gst_element_lost_state):
8552 * gst/gstevent.h:
8553 * gst/gstquery.c: (gst_query_set_position),
8554 (gst_query_parse_position), (gst_query_set_duration),
8555 (gst_query_parse_duration), (gst_query_new_convert):
8556 * gst/gstutils.c:
8557 Yay! 1% more docs coverage.
8559 2005-10-20 Wim Taymans <wim@fluendo.com>
8561 * gst/gstpad.h:
8562 * gst/gstquery.c: (gst_query_set_position),
8563 (gst_query_parse_position), (gst_query_set_duration),
8564 (gst_query_parse_duration), (gst_query_new_convert):
8565 * gst/gstquery.h:
8566 * gst/gstutils.c: (gst_element_query_convert):
8567 * gst/gstutils.h:
8568 Docs and consistency fixes.
8570 2005-10-20 Wim Taymans <wim@fluendo.com>
8572 * gst/gsttask.c:
8573 * gst/gsttask.h:
8574 More docs.
8576 2005-10-20 Wim Taymans <wim@fluendo.com>
8578 * gst/gstbin.c: (message_check), (bin_replace_message),
8579 (bin_remove_messages), (is_eos), (gst_bin_add_func),
8580 (update_degree), (gst_bin_sort_iterator_next),
8581 (gst_bin_change_state_func), (gst_bin_dispose), (bin_bus_handler):
8582 Reworked the message handling a bit, cache the messages instead of
8583 only the senders. alows us to do more in the future.
8585 2005-10-20 Wim Taymans <wim@fluendo.com>
8587 * docs/design/part-TODO.txt:
8588 Update TODO
8590 * gst/base/gstbasesink.c: (gst_base_sink_get_position),
8591 (gst_base_sink_query):
8592 Don't use clock time to report position when in EOS.
8594 2005-10-20 Tim-Philipp Müller <tim at centricular dot net>
8596 * tools/gst-inspect.c: (print_interfaces),
8597 (print_element_properties_info), (print_element_info):
8598 Fix interface output with gst-inspect -a; don't print
8599 newlines after double/float properties.
8601 2005-10-20 Wim Taymans <wim@fluendo.com>
8603 * gst/base/gstbasesink.c: (gst_base_sink_get_position),
8604 (gst_base_sink_query):
8605 Speed up current position calculation.
8607 * gst/base/gstbasesrc.c: (gst_base_src_query),
8608 (gst_base_src_default_newsegment):
8609 Correctly set stream position in newsegment.
8611 * gst/gstbin.c: (gst_bin_add_func), (add_to_queue),
8612 (update_degree), (gst_bin_sort_iterator_next),
8613 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free):
8614 * gst/gstmessage.c: (gst_message_new_custom):
8615 Clean up debugging info
8617 * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
8618 (gst_queue_loop), (gst_queue_handle_src_query):
8619 Pause task faster.
8621 2005-10-19 Wim Taymans <wim@fluendo.com>
8623 * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
8624 (gst_base_sink_handle_object), (gst_base_sink_query), (do_playing):
8625 Fix query handling again.
8627 2005-10-19 Wim Taymans <wim@fluendo.com>
8629 * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
8630 (gst_base_sink_handle_object), (gst_base_sink_query), (do_playing):
8631 * gst/base/gstbasesrc.c: (gst_base_src_query):
8632 * gst/elements/gstfilesink.c: (gst_file_sink_query):
8633 * gst/elements/gsttypefindelement.c:
8634 (gst_type_find_handle_src_query), (find_element_get_length),
8635 (gst_type_find_element_activate):
8636 API change fix.
8638 * gst/gstquery.c: (gst_query_new_position),
8639 (gst_query_set_position), (gst_query_parse_position),
8640 (gst_query_new_duration), (gst_query_set_duration),
8641 (gst_query_parse_duration), (gst_query_set_segment),
8642 (gst_query_parse_segment):
8643 * gst/gstquery.h:
8644 Bundling query position/duration is not a good idea since duration
8645 does not change much and we don't want to recalculate it for every
8646 position query, so they are separated again..
8647 Base value in segment query is not needed.
8649 * gst/gstqueue.c: (gst_queue_handle_src_query):
8650 * gst/gstutils.c: (gst_element_query_position),
8651 (gst_element_query_duration), (gst_pad_query_position),
8652 (gst_pad_query_duration):
8653 * gst/gstutils.h:
8654 Updates for query API change.
8655 Added some docs here and there.
8657 2005-10-19 Thomas Vander Stichele <thomas at apestaart dot org>
8659 * check/gst/gstbin.c: (GST_START_TEST):
8660 * check/gst/gstghostpad.c: (GST_START_TEST):
8661 * check/pipelines/cleanup.c: (GST_START_TEST):
8662 wait on thread to die so we can check refcount correctly
8664 2005-10-18 Wim Taymans <wim@fluendo.com>
8666 * check/pipelines/stress.c: (GST_START_TEST):
8667 Make check a little more time consuming.
8669 2005-10-18 Wim Taymans <wim@fluendo.com>
8671 * check/Makefile.am:
8672 * check/pipelines/stress.c: (GST_START_TEST),
8673 (simple_launch_lines_suite), (main):
8674 Small state change torture test.
8676 * docs/design/part-states.txt:
8677 * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
8678 (gst_base_sink_handle_object), (gst_base_sink_event), (do_playing),
8679 (gst_base_sink_change_state):
8680 Never take state lock from streaming thread, clean up ugly
8681 hacks. Unfortunatly core does not yet support nice ways to
8682 async commit state.
8684 * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_recalc_state),
8685 (bin_bus_handler):
8686 Start state recalc if a STATE_DIRTY message is posted, but only
8687 on the toplevel bin.
8689 * gst/gstelement.c: (gst_element_sync_state_with_parent),
8690 (gst_element_get_state_func), (gst_element_abort_state),
8691 (gst_element_commit_state), (gst_element_lost_state),
8692 (gst_element_set_state_func), (gst_element_change_state):
8693 * gst/gstelement.h:
8694 State variables are now protected with the LOCK, the state
8695 lock is only used to serialize _set_state().
8697 2005-10-18 Wim Taymans <wim@fluendo.com>
8699 * check/gst/gstbin.c: (GST_START_TEST):
8700 * check/gst/gstmessage.c: (GST_START_TEST):
8701 * check/gst/gstpipeline.c: (GST_START_TEST), (message_received):
8702 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_recalc_func),
8703 (bin_bus_handler):
8704 * gst/gstelement.c: (gst_element_abort_state),
8705 (gst_element_commit_state), (gst_element_lost_state):
8706 * gst/gstmessage.c: (gst_message_new_state_changed),
8707 (gst_message_new_state_dirty), (gst_message_new_segment_start),
8708 (gst_message_new_segment_done), (gst_message_new_duration),
8709 (gst_message_parse_state_changed),
8710 (gst_message_parse_segment_start),
8711 (gst_message_parse_segment_done), (gst_message_parse_duration):
8712 * gst/gstmessage.h:
8713 * tools/gst-launch.c: (event_loop):
8714 Seriously, this is better than a previous commit as we only need
8715 to notify the fact that an element changed state in a streaming
8716 thread, marking the state of the parents dirty, hence the
8717 STATE_DIRTY message instead of abusing a boolean in a STATE_CHANGE
8718 message.
8720 2005-10-18 Wim Taymans <wim@fluendo.com>
8722 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_get_state_func),
8723 (gst_bin_recalc_func):
8724 * gst/gstelement.c: (gst_element_set_clock),
8725 (gst_element_abort_state), (gst_element_lost_state):
8726 Cleanups, prepare for state change fixes.
8728 2005-10-18 Wim Taymans <wim@fluendo.com>
8730 * gst/gstbin.h:
8731 * gst/gstelement.c: (gst_element_class_init),
8732 (gst_element_set_state), (gst_element_set_state_func):
8733 * gst/gstelement.h:
8734 Pending ABI changes.
8735 GThreadPool in GstBinClass to monitor async state changes.
8736 state_cookie in GstElement to detect concurrent gst/set state.
8737 set_state is now virtual too in case a very complicated element
8738 has to be constructed.
8740 2005-10-18 Wim Taymans <wim@fluendo.com>
8742 * check/gst/gstbin.c: (GST_START_TEST):
8743 * check/gst/gstmessage.c: (GST_START_TEST):
8744 * check/gst/gstpipeline.c: (GST_START_TEST), (message_received):
8745 * gst/gstbin.c: (bin_bus_handler):
8746 * gst/gstelement.c: (gst_element_commit_state),
8747 (gst_element_lost_state):
8748 * gst/gstmessage.c: (gst_message_new_state_changed),
8749 (gst_message_new_segment_start), (gst_message_new_segment_done),
8750 (gst_message_new_duration), (gst_message_parse_state_changed),
8751 (gst_message_parse_segment_start),
8752 (gst_message_parse_segment_done), (gst_message_parse_duration):
8753 * gst/gstmessage.h:
8754 * tools/gst-launch.c: (event_loop):
8755 Make messages future proof.
8756 state-change gets a flag if it was a message comming from the
8757 streaming thread.
8758 segment-start/stop can also be specified in other formats.
8759 A message to notify an app that a pipeline changed playback
8760 duration.
8761 Also fix a GstMessage leak in -launch
8763 2005-10-18 Andy Wingo <wingo@pobox.com>
8765 * gst/gstelement.c (gst_element_dispose): More helpful message.
8767 2005-10-18 Thomas Vander Stichele <thomas at apestaart dot org>
8769 reviewed by: <delete if not using a buddy>
8771 * common/gtk-doc.mak:
8773 2005-10-18 Thomas Vander Stichele <thomas at apestaart dot org>
8775 * gst/gstregistry.c: (gst_registry_scan_path_level):
8776 unref a plug-in we get that was already initialized
8778 2005-10-18 Stefan Kost <ensonic@users.sf.net>
8780 * docs/gst/gstreamer-sections.txt:
8781 * docs/libs/gstreamer-libs-sections.txt:
8782 * gst/gstelement.h:
8783 add new api entries
8784 hide internal macro
8786 2005-10-17 Andy Wingo <wingo@pobox.com>
8788 * gst/base/gstcollectpads.c (gst_collectpads_chain): Slight
8789 cleanup.
8791 * gst/Makefile.am (gstenumtypes.c): Threadsafe now.
8793 * gst/gstevent.c (gst_event_new, gst_event_finalize): LOG.
8795 * gst/gstelement.c (gst_element_get_state_func): s/INFO/DEBUG/.
8796 (gst_element_get_state_func): Better debug message.
8797 (gst_element_commit_state): s/INFO/DEBUG/.
8798 (gst_element_lost_state, gst_element_change_state):
8800 * gst/gstmessage.c (gst_message_init): s/INFO/LOG/.
8801 (gst_message_new_custom): s/INFO/LOG/.
8803 2005-10-17 Michael Smith <msmith@fluendo.com>
8805 * gst/base/gstbasesink.c: (gst_base_sink_do_sync):
8806 Check if end time is valid using end time, not start time.
8808 2005-10-17 Stefan Kost <ensonic@users.sf.net>
8810 * check/gst-libs/controller.c: (GST_START_TEST),
8811 (gst_controller_suite):
8812 * libs/gst/controller/gstcontroller.c:
8813 (gst_controlled_property_set_interpolation_mode):
8814 * libs/gst/controller/gstcontroller.h:
8815 * libs/gst/controller/gstinterpolation.c:
8816 * testsuite/controller/.cvsignore:
8817 * testsuite/controller/Makefile.am:
8818 * testsuite/controller/interpolator.c:
8819 merge controller testsuites
8820 fix broken tests
8821 remove mem-chunk from docs
8823 2005-10-17 Thomas Vander Stichele <thomas at apestaart dot org>
8825 * gst/gstmemchunk.c:
8826 * gst/gstmemchunk.h:
8827 * gst/gsttrashstack.c:
8828 * gst/gsttrashstack.h:
8829 out. get out. you're fired. to the Attic !
8831 2005-10-17 Thomas Vander Stichele <thomas at apestaart dot org>
8833 * gst/gstcaps.c: (gst_caps_intersect):
8834 fix signedness issues in a (hopefully) correct way
8835 * gst/gstelement.c: (gst_element_pads_activate):
8836 some debugging
8837 * gst/gstobject.c: (gst_object_set_parent):
8838 some debugging
8840 2005-10-17 Julien MOUTTE <julien@moutte.net>
8842 * gst/gstvalue.h: Fix prototypes.
8844 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
8846 * docs/gst/gstreamer-sections.txt:
8847 * gst/gst.c: (gst_version_string):
8848 * gst/gst.h:
8849 * gst/gstversion.h.in:
8850 * win32/common/libgstreamer.def:
8851 add gst_version_string ()
8853 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
8855 * configure.ac:
8856 clean up further
8857 * gst/gst.c: (init_post):
8858 * win32/common/config.h.in:
8859 it's PLUGINDIR now
8860 * gst/gstcaps.c: (gst_caps_intersect):
8861 use gint64, the range could be bigger than a guint
8863 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
8865 * gst/gstclock.h:
8866 document potential problem in 2038
8868 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
8870 * gst/gstcaps.c: (gst_caps_intersect):
8871 Fix guint j diving under 0
8873 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
8875 * configure.ac:
8876 * win32/common/config.h:
8877 * win32/common/config.h.in:
8878 check for process.h, declares getpid() on Windows
8879 * gst/gstinfo.c:
8880 include process.h if we have it
8881 * gst/gstmemchunk.c: (populate), (gst_mem_chunk_new):
8882 * gst/gstmemchunk.h:
8883 fix signedness issues
8884 * win32/common/libgstreamer.def:
8885 fix get_type's
8887 2005-10-16 Julien MOUTTE <julien@moutte.net>
8889 * gst/gstcaps.c: (gst_caps_intersect): Fix a bad bug with a simple
8890 fix. Because of unsigned ints, caps intersection was going nuts and
8891 trying to access structures with G_MAXUINT index. That fixes
8892 videotestsrc ! ffmpegcolorspace ! fakesink
8893 * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked): logs
8894 consistency.
8896 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
8898 * configure.ac:
8899 use the gettext macro
8900 * gst/elements/gstelements.c:
8901 * gst/gst.c:
8902 * gst/indexers/gstindexers.c:
8903 update for GST_PACKAGE_NAME, GST_PACKAGE_ORIGIN
8904 * win32/common/config.h:
8905 updated config.h
8906 * win32/common/config.h.in:
8907 add the template to generate config.h
8908 * win32/common/gstenumtypes.c:
8909 * win32/common/gstversion.h:
8910 updated copies
8912 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
8914 * gst/gst.c: (gst_version):
8915 * gst/gstversion.h.in:
8916 add the nano
8918 2005-10-15 Tim-Philipp Müller <tim at centricular dot net>
8920 * gst/gstevent.h:
8921 Oops, add missing closing bracket.
8923 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
8925 * configure.ac:
8926 use common m4's for argument checking
8928 2005-10-15 Tim-Philipp Müller <tim at centricular dot net>
8930 * docs/gst/gstreamer-sections.txt:
8931 * gst/gstevent.h:
8932 Add GST_EVENT_TYPE_NAME() macro.
8934 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
8936 * gst/gstinfo.c:
8937 * gst/gstpluginfeature.c:
8938 * gst/gsttask.c:
8939 privatize more symbols
8941 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
8943 * configure.ac:
8944 add srcdir, builddir includes to GST_ALL_CFLAGS, since
8945 everything that uses GStreamer API should have the includes
8947 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
8949 * docs/gst/gstreamer-sections.txt:
8950 * gst/gstvalue.c: (gst_date_get_type), (_gst_value_initialize):
8951 * gst/gstvalue.h:
8952 give each value a _get_type, removes the DATA exports
8954 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
8956 * gst/gst.c:
8957 * gst/gst.h:
8958 remove _gst_registry_auto_load, not used anymore
8959 * gst/gstbin.c: (gst_bin_get_type):
8960 * gst/gstbin.h:
8961 * gst/gstelement.c: (gst_element_get_type):
8962 * gst/gstelement.h:
8963 * gst/gstobject.c: (gst_object_get_type):
8964 * gst/gstobject.h:
8965 * gst/gstpad.c: (gst_pad_get_type):
8966 * gst/gstpad.h:
8967 make _get_type functions similar, fixes data export from library
8969 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
8971 * configure.ac:
8972 correctly make conditionals
8973 * gst/elements/Makefile.am:
8974 * gst/elements/gstelements.c:
8975 fix typo causing fdsrc not to build
8977 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
8979 * testsuite/Makefile.am:
8980 * testsuite/bytestream/.cvsignore:
8981 * testsuite/bytestream/Makefile.am:
8982 * testsuite/bytestream/filepadsink.c:
8983 * testsuite/bytestream/gstbstest.c:
8984 * testsuite/bytestream/test1.c:
8985 * testsuite/bytestream/testfile1:
8986 * testsuite/caps/normalisation.c:
8987 * testsuite/caps/random.c: (main):
8988 * testsuite/cleanup/.cvsignore:
8989 * testsuite/cleanup/Makefile.am:
8990 * testsuite/cleanup/cleanup1.c:
8991 * testsuite/cleanup/cleanup2.c:
8992 * testsuite/cleanup/cleanup3.c:
8993 * testsuite/cleanup/cleanup4.c:
8994 * testsuite/cleanup/cleanup5.c:
8995 * testsuite/controller/interpolator.c:
8996 * testsuite/debug/printf_extension.c: (main):
8997 * testsuite/elements/tee.c:
8998 * testsuite/negotiation/.cvsignore:
8999 * testsuite/negotiation/Makefile.am:
9000 * testsuite/negotiation/pad_link.c:
9001 * testsuite/pad/Makefile.am:
9002 * testsuite/pad/chainnopull.c:
9003 * testsuite/pad/getnopush.c:
9004 * testsuite/pad/link.c:
9005 * testsuite/refcounting/sched.c: (create_pipeline):
9006 * testsuite/registry/Makefile.am:
9007 * testsuite/registry/gst-print-formats.c:
9008 * testsuite/schedulers/.cvsignore:
9009 * testsuite/schedulers/142183-2.c:
9010 * testsuite/schedulers/142183.c:
9011 * testsuite/schedulers/143777-2.c:
9012 * testsuite/schedulers/143777.c:
9013 * testsuite/schedulers/147713.c:
9014 * testsuite/schedulers/147819.c:
9015 * testsuite/schedulers/147894-2.c:
9016 * testsuite/schedulers/147894.c:
9017 * testsuite/schedulers/Makefile.am:
9018 * testsuite/schedulers/group_link.c:
9019 * testsuite/schedulers/queue_link.c:
9020 * testsuite/schedulers/relink.c:
9021 * testsuite/schedulers/unlink.c:
9022 * testsuite/schedulers/unref.c:
9023 * testsuite/schedulers/useless_iteration.c:
9024 * testsuite/states/bin.c:
9025 clean out/remove some stuff from the testsuite directories
9027 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
9029 * configure.ac:
9030 check for some headers
9031 * gst/elements/Makefile.am:
9032 * gst/elements/gstelements.c:
9033 don't compile fdsrc without sys/socket.h
9034 * gst/indexers/Makefile.am:
9035 * gst/indexers/gstindexers.c: (plugin_init):
9036 don't compile fileindex without mmap
9038 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
9040 * configure.ac:
9041 reorganize
9042 clean up
9043 document more
9044 remove cruft
9045 * check/Makefile.am:
9046 * docs/gst/Makefile.am:
9047 * examples/helloworld/Makefile.am:
9048 * gst/Makefile.am:
9049 * gst/base/Makefile.am:
9050 * gst/check/Makefile.am:
9051 * gst/elements/Makefile.am:
9052 * gst/indexers/Makefile.am:
9053 * gst/parse/Makefile.am:
9054 * libs/gst/controller/Makefile.am:
9055 * libs/gst/dataprotocol/Makefile.am:
9056 * examples/helloworld/helloworld.c: (event_loop):
9057 compile fixes, though it's not being compiled currently
9059 2005-10-14 Tim-Philipp Müller <tim at centricular dot net>
9061 * check/gst/gsttag.c: (test_date_tags), (gst_tag_suite):
9062 Add some simple tests for the new taglist date API.
9064 2005-10-14 Tim-Philipp Müller <tim at centricular dot net>
9066 * gst/elements/gstfakesink.c: (gst_fake_sink_render):
9067 * gst/elements/gstfakesrc.c: (gst_fake_src_create):
9068 Beautify 'last-message' output: print 'none' for buffer timestamps
9069 and durations if none is set; improve alignment with next messages.
9071 2005-10-14 Tim-Philipp Müller <tim at centricular dot net>
9073 * gst/gstpluginfeature.c: (gst_plugin_feature_check_version):
9074 * gst/gstpluginfeature.h:
9075 * gst/gstregistry.c: (gst_default_registry_check_feature_version):
9076 * gst/gstregistry.h:
9077 * docs/gst/gstreamer-sections.txt:
9078 Add new API to check plugin feature version requirements.
9080 * check/gst/gstplugin.c: (test_version_checks), (gst_plugin_suite):
9081 Some basic tests for the above.
9083 2005-10-13 Thomas Vander Stichele <thomas at apestaart dot org>
9085 * gst/gststructure.c: (gst_structure_to_string):
9086 guard against NULL printf - happens when for example
9087 a message structure with GstClock gets serialized
9089 2005-10-13 Tim-Philipp Müller <tim at centricular dot net>
9091 * gst/base/gstcollectpads.c: (gst_collectpads_event):
9092 Fix presumable copy'n'pasto.
9094 2005-10-13 Thomas Vander Stichele <thomas at apestaart dot org>
9096 * gst/elements/gstfakesrc.h:
9097 * gst/elements/gstfilesrc.c: (gst_file_src_create_read):
9098 * gst/elements/gsttypefindelement.c:
9099 fix some signedness
9100 * gst/elements/gstfilesink.c: (gst_file_sink_render):
9101 I wonder if this could actually write +2GB files before
9103 2005-10-13 Andy Wingo <wingo@pobox.com>
9105 * libs/gst/dataprotocol/dataprotocol.c (gst_dp_packet_from_caps):
9106 Fix Timmeke Waymans bug.
9107 (gst_dp_caps_from_packet): Make sure we pass a NUL-terminated
9108 string of the proper length to gst_caps_from_string. There's a
9109 potential for, before this fix, that this could cause someone
9110 connecting over the network to cause a segfault if the payload is
9111 not NUL-terminated.
9113 2005-10-13 Stefan Kost <ensonic@users.sf.net>
9115 * docs/design/draft-push-pull.txt:
9116 * docs/design/part-overview.txt:
9117 * docs/random/TODO-pre-0.9:
9118 * docs/random/old/ChangeLog.gstreamer:
9119 * gst/base/gstpushsrc.c:
9120 * gst/gstclock.c:
9121 fixed typos
9123 2005-10-13 Thomas Vander Stichele <thomas at apestaart dot org>
9125 * gst/glib-compat.c: (gst_flags_get_first_value):
9126 * gst/glib-compat.h:
9127 * gst/gstvalue.c: (gst_value_deserialize_int_helper),
9128 (gst_value_compare_double), (gst_value_serialize_flags):
9129 GLib 2.6 g_flags_get_first_value has a bug that triggers an
9130 infinite loop
9132 2005-10-13 Thomas Vander Stichele <thomas at apestaart dot org>
9134 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
9135 * gst/base/gstbasesrc.c: (gst_base_src_get_range):
9136 fix up debugging
9137 * tools/gst-launch.c: (event_loop):
9138 print out clock nicely
9140 2005-10-13 Tim-Philipp Müller <tim at centricular dot net>
9142 * docs/gst/gstreamer-sections.txt:
9143 * gst/gsttaglist.h:
9144 * gst/gsttaglist.c: (_gst_tag_initialize), (gst_tag_list_get_date),
9145 (gst_tag_list_get_date_index):
9146 Added gst_tag_list_get_date() and gst_tag_list_get_date_index().
9147 GST_TAG_DATE now has a tag type of GST_TYPE_DATE (#170777).
9149 2005-10-13 Julien MOUTTE <julien@moutte.net>
9151 * gst/base/gstcollectpads.c: (gst_collectpads_event),
9152 (gst_collectpads_chain):
9153 * gst/base/gstcollectpads.h: Handle newsegment and store informations
9154 in CollectData.
9156 2005-10-13 Stefan Kost <ensonic@users.sf.net>
9158 * docs/gst/gstreamer-sections.txt:
9159 * gst/gst.c:
9160 * gst/gsterror.h:
9161 * tools/gst-inspect.c: (main):
9162 * tools/gst-launch.c: (main):
9163 * tools/gst-run.c: (main):
9164 * tools/gst-xmlinspect.c: (main):
9165 fix GOption context leaks
9166 doc fixes
9168 2005-10-13 Thomas Vander Stichele <thomas at apestaart dot org>
9170 * gst/gstbus.c:
9171 use HAVE_UNISTD_H
9172 * win32/common/config.h:
9173 update config
9174 * win32/vs6/grammar.dsp:
9175 * win32/vs6/libgstelements.dsp:
9176 * win32/vs6/libgstreamer.dsp:
9177 update vs6 files
9179 2005-10-12 Thomas Vander Stichele <thomas at apestaart dot org>
9181 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
9182 * gst/base/gstbasesrc.c: (gst_base_src_query):
9183 fix more guint64<->gdouble conversions
9185 2005-10-12 Thomas Vander Stichele <thomas at apestaart dot org>
9187 * Makefile.am:
9188 add win32-update target
9189 * win32/common/gstconfig.h:
9190 * win32/common/gstenumtypes.c:
9191 * win32/common/gstenumtypes.h:
9192 * win32/common/gstversion.h:
9193 add files that visual studio can't generate
9195 2005-10-12 Thomas Vander Stichele <thomas at apestaart dot org>
9197 * Makefile.am:
9198 add a win32-update target
9199 * configure.ac:
9201 2005-10-12 Wim Taymans <wim@fluendo.com>
9203 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
9204 (reset_degree), (gst_bin_dispose), (bin_bus_handler):
9205 * gst/gstelement.c: (gst_element_commit_state),
9206 (gst_element_set_state):
9207 Protect flags with proper lock.
9208 unref provided cached clock in dispose.
9210 2005-10-12 Stefan Kost <ensonic@users.sf.net>
9212 * gst/gst.c:
9213 * gst/gstminiobject.h:
9214 * gst/gstpad.h:
9215 * win32/gstenumtypes.c: (gst_mini_object_flags_get_type):
9216 removed unused flags from miniobject
9217 doc fixes
9219 2005-10-12 Wim Taymans <wim@fluendo.com>
9221 * gst/elements/gstfilesink.c: (gst_file_sink_do_seek),
9222 (gst_file_sink_event), (gst_file_sink_render):
9223 Flush before seeking.
9225 2005-10-12 Andy Wingo <wingo@pobox.com>
9227 * gst/gst.c (gst_init_check): Ignore unknown options, as has
9228 always been the case.
9230 2005-10-12 Stefan Kost <ensonic@users.sf.net>
9232 * check/gst/gstbin.c: (GST_START_TEST):
9233 * docs/gst/gstreamer-sections.txt:
9234 * gst/base/gstbasesink.c: (gst_base_sink_init):
9235 * gst/base/gstbasesrc.c: (gst_base_src_init),
9236 (gst_base_src_get_range), (gst_base_src_check_get_range),
9237 (gst_base_src_start), (gst_base_src_stop):
9238 * gst/base/gstbasesrc.h:
9239 * gst/elements/gstfakesrc.c: (gst_fake_src_set_property):
9240 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
9241 (bin_element_is_sink), (reset_degree), (gst_bin_element_set_state),
9242 (bin_bus_handler):
9243 * gst/gstbin.h:
9244 * gst/gstbuffer.h:
9245 * gst/gstbus.c: (gst_bus_post), (gst_bus_set_flushing):
9246 * gst/gstbus.h:
9247 * gst/gstelement.c: (gst_element_is_locked_state),
9248 (gst_element_set_locked_state), (gst_element_commit_state),
9249 (gst_element_set_state):
9250 * gst/gstelement.h:
9251 * gst/gstindex.c: (gst_index_init):
9252 * gst/gstindex.h:
9253 * gst/gstminiobject.h:
9254 * gst/gstobject.c: (gst_object_init), (gst_object_sink),
9255 (gst_object_set_parent):
9256 * gst/gstobject.h:
9257 * gst/gstpad.c: (gst_pad_set_blocked_async), (gst_pad_is_blocked),
9258 (gst_pad_get_caps_unlocked), (gst_pad_set_caps):
9259 * gst/gstpad.h:
9260 * gst/gstpadtemplate.h:
9261 * gst/gstpipeline.c: (gst_pipeline_provide_clock_func),
9262 (gst_pipeline_use_clock), (gst_pipeline_auto_clock):
9263 * gst/gstpipeline.h:
9264 * gst/indexers/gstfileindex.c: (gst_file_index_load),
9265 (gst_file_index_commit):
9266 * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
9267 * testsuite/pad/link.c: (gst_test_src_init),
9268 (gst_test_filter_init), (gst_test_sink_init):
9269 * testsuite/states/locked.c: (main):
9270 renamed GST_FLAGS macros to GST_OBJECT_FLAGS
9271 moved bitshift from macro to enum definition
9273 2005-10-12 Wim Taymans <wim@fluendo.com>
9275 * gst/base/gstbasesink.c: (gst_base_sink_handle_buffer):
9276 * gst/elements/gstfilesink.c: (gst_file_sink_event),
9277 (gst_file_sink_render):
9278 Some more debugging info.
9280 2005-10-12 Wim Taymans <wim@fluendo.com>
9282 * docs/design/part-states.txt:
9283 * tools/gst-launch.c: (main):
9284 Some doc updates.
9285 Revert non-intentional change.
9287 2005-10-12 Wim Taymans <wim@fluendo.com>
9289 * check/gst/gstbin.c: (GST_START_TEST):
9290 * check/gst/gstelement.c: (GST_START_TEST):
9291 * check/gst/gstevent.c: (GST_START_TEST), (test_event):
9292 * check/gst/gstghostpad.c: (GST_START_TEST):
9293 * check/gst/gstpipeline.c: (GST_START_TEST):
9294 * check/pipelines/simple_launch_lines.c: (run_pipeline):
9295 * check/states/sinks.c: (GST_START_TEST):
9296 * gst/elements/gsttypefindelement.c: (stop_typefinding):
9297 * gst/gstbin.c: (gst_bin_provide_clock_func), (gst_bin_add_func),
9298 (gst_bin_remove_func), (gst_bin_get_state_func),
9299 (gst_bin_recalc_state), (gst_bin_change_state_func),
9300 (bin_bus_handler):
9301 * gst/gstelement.c: (gst_element_get_state_func),
9302 (gst_element_get_state), (gst_element_abort_state),
9303 (gst_element_commit_state), (gst_element_set_state),
9304 (gst_element_change_state), (gst_element_change_state_func):
9305 * gst/gstelement.h:
9306 * gst/gstpipeline.c: (gst_pipeline_class_init), (do_pipeline_seek),
9307 (gst_pipeline_provide_clock_func):
9308 * gst/gstutils.c: (gst_element_link_pads_filtered):
9309 * tools/gst-launch.c: (main):
9310 * tools/gst-typefind.c: (main):
9311 Use GstClockTime in _get_state() instead of GTimeVal.
9312 Remove old code in gstutils.c
9314 2005-10-12 Andy Wingo <wingo@pobox.com>
9316 * gst/gstregistry.h (gst_registry_scan_paths): Not implemented, so
9317 removed.
9319 * gst/gstpad.c (gst_pad_pause_task): Actually return FALSE if
9320 there is no task. Shouldn't affect any code, as nothing in our
9321 plugins checks this return value.
9322 (gst_pad_stop_task): Also take the stream lock if the pad has no
9323 task. Docs updated.
9325 2005-10-12 Wim Taymans <wim@fluendo.com>
9327 * gst/gstpad.c: (pre_activate), (post_activate),
9328 (gst_pad_activate_pull), (gst_pad_activate_push):
9329 Cleanup activation code. Reset old state if
9330 activation failed.
9332 2005-10-12 Wim Taymans <wim@fluendo.com>
9334 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
9335 (gst_base_sink_change_state):
9336 No need to prerol after receiving EOS.
9338 * gst/elements/gstfakesink.c: (gst_fake_sink_event):
9339 * gst/elements/gstfakesrc.c: (gst_fake_src_event_handler):
9340 * gst/elements/gstidentity.c: (gst_identity_event):
9341 Print events more verbosely.
9343 2005-10-12 Wim Taymans <wim@fluendo.com>
9345 * check/Makefile.am:
9346 * check/states/sinks.c: (GST_START_TEST), (gst_object_suite):
9347 * check/states/sinks2.c:
9348 Moved sinks2 testcode in sinks check.
9350 * gst/gstbin.c: (gst_bin_provide_clock_func), (gst_bin_add_func),
9351 (gst_bin_remove_func), (gst_bin_recalc_state),
9352 (gst_bin_change_state_func), (bin_bus_handler):
9353 Fix potential race condition when _get_state() iterated over an
9354 ASYNC element right before it posted a state completion.
9356 * gst/gstclock.h:
9357 Do proper cast here.
9359 * gst/gstevent.c: (gst_event_new_newsegment),
9360 (gst_event_parse_newsegment):
9361 A playback rate of 0.0 is not allowed.
9363 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
9365 * win32/common/config.h:
9366 * win32/common/dirent.c: (_topendir), (_treaddir), (_tclosedir),
9367 (_trewinddir), (_ttelldir), (_tseekdir):
9368 * win32/common/dirent.h:
9369 * win32/common/gtchar.h:
9370 * win32/common/libgstbase.def:
9371 * win32/common/libgstreamer.def:
9372 * win32/vs6/grammar.dsp:
9373 * win32/vs6/gst_inspect.dsp:
9374 * win32/vs6/gst_launch.dsp:
9375 * win32/vs6/gstreamer.dsw:
9376 * win32/vs6/libgstbase.dsp:
9377 * win32/vs6/libgstelements.dsp:
9378 * win32/vs6/libgstreamer.dsp:
9379 Visual Studio 6 project files, and a new common directory.
9380 Phear.
9382 2005-10-11 Wim Taymans <wim@fluendo.com>
9384 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
9385 (gst_base_sink_do_sync), (gst_base_sink_query),
9386 (gst_base_sink_change_state):
9387 * gst/base/gstbasesink.h:
9388 Correctly parse newsegment info.
9390 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
9392 * gst/gst.c: (init_post):
9393 split plugin paths correctly
9395 2005-10-11 Wim Taymans <wim@fluendo.com>
9397 * check/gst/gstevent.c: (GST_START_TEST):
9398 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
9399 (gst_base_sink_change_state):
9400 * gst/base/gstbasesrc.c: (gst_base_src_default_newsegment):
9401 * gst/base/gstbasetransform.c: (gst_base_transform_event):
9402 * gst/elements/gstfilesink.c: (gst_file_sink_event):
9403 * gst/gstevent.c: (gst_event_new_newsegment),
9404 (gst_event_parse_newsegment):
9405 * gst/gstevent.h:
9406 Added extra flag to newsegment for future API freeze.
9407 Updated check and base elements.
9409 2005-10-11 Julien MOUTTE <julien@moutte.net>
9411 * gst/base/gstcollectpads.c: (gst_collectpads_init),
9412 (gst_collectpads_add_pad), (gst_collectpads_pop),
9413 (gst_collectpads_event), (gst_collectpads_chain):
9414 * gst/base/gstcollectpads.h: Handle EOS correctly.
9416 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
9418 * tools/gst-launch.c: (main):
9419 more null protecting
9421 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
9423 * gst/gst-i18n-lib.h:
9424 check for ENABLE_NLS, not GETTEXT_PACKAGE
9425 * gst/gstregistry.c: (gst_registry_add_plugin),
9426 (gst_registry_scan_path_level),
9427 (_gst_registry_remove_cache_plugins):
9428 protect possibly NULL strings
9429 * gst/parse/types.h:
9430 config.h already included before
9431 * tools/gst-inspect.c: (main):
9432 sys/wait.h also doesn�t exist on mingw, so change the ifdef check
9433 check for ENABLE_NLS, not GETTEXT_PACKAGE
9434 * tools/gst-launch.c: (main):
9435 check for ENABLE_NLS, not GETTEXT_PACKAGE
9437 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
9439 * configure.ac:
9440 if we don't have glib, fail before testing 2.8
9441 * gst/base/gstbasetransform.c: (gst_base_transform_change_state):
9442 fix a leak, should fix plugins-base testsuite
9444 2005-10-11 Andy Wingo <wingo@pobox.com>
9446 * gst/gstpad.c (pre_activate): Renamed from pre_activate_switch,
9447 take the mode we're going to as an arg. Go head and set the mode
9448 and flushing flags now, so that if the activate function starts a
9449 thread all the flags will be in the right state.
9450 (post_activate): Renamed also. Just handle making sure streaming
9451 finishes for the deactivation case, and setting the deactivated
9452 mode.
9453 (gst_pad_set_active): Complain loudly if deactivation fails.
9454 (gst_pad_activate_pull): Adapt to pre/post_activate changes.
9455 (gst_pad_activate_push): Adapt to pre/post_activate changes,
9456 remove the terrible hack.
9458 2005-10-11 Wim Taymans <wim@fluendo.com>
9460 * gst/gstbin.c: (gst_bin_init), (gst_bin_provide_clock_func),
9461 (is_eos), (gst_bin_add_func), (gst_bin_remove_func),
9462 (gst_bin_recalc_state), (gst_bin_change_state_func),
9463 (gst_bin_dispose), (bin_bus_handler):
9464 * gst/gstbin.h:
9465 Prepare to make current EOS message queue more generic.
9466 Fix some typos.
9468 * gst/gstevent.c: (gst_event_new_newsegment),
9469 (gst_event_parse_newsegment):
9470 * gst/gstevent.h:
9471 Rename base to stream_time.
9473 * gst/gstmessage.h:
9474 Fix typo in docs.
9476 2005-10-11 Wim Taymans <wim@fluendo.com>
9478 * gst/gstbin.c: (gst_bin_init), (gst_bin_provide_clock_func),
9479 (gst_bin_add_func), (gst_bin_remove_func), (gst_bin_recalc_state),
9480 (gst_bin_change_state_func), (bin_bus_handler):
9481 * gst/gstbin.h:
9482 Work on proper clock selection.
9484 2005-10-11 Edward Hervey <edward@fluendo.com>
9486 * libs/gst/controller/gstcontroller.c: (gst_controller_remove_properties_list):
9487 * libs/gst/controller/gstcontroller.h:
9488 Added GList* version of _remove_properties() in order to be able to wrap
9489 it in bindings.
9491 2005-10-11 Wim Taymans <wim@fluendo.com>
9493 * docs/design/part-states.txt:
9494 Some more docs.
9496 * gst/gstbin.c: (gst_bin_set_clock_func), (gst_bin_recalc_state),
9497 (gst_bin_change_state_func), (bin_bus_handler):
9498 Doc updates. Don't distribute the same clock over and over again.
9500 * gst/gstclock.c:
9501 * gst/gstclock.h:
9502 Doc updates.
9504 * gst/gstpad.c: (gst_flow_get_name), (gst_flow_to_quark),
9505 (gst_pad_get_type), (gst_pad_push), (gst_pad_push_event),
9506 (gst_pad_send_event):
9507 * gst/gstpad.h:
9508 Make probe emission threadsafe again.
9509 Register quarks and move _get_name() from utils.
9510 Doc updates.
9512 * gst/gstpipeline.c: (gst_pipeline_class_init),
9513 (gst_pipeline_change_state), (gst_pipeline_provide_clock_func):
9514 Only redistribute the clock of it changed.
9516 * gst/gstsystemclock.h:
9517 Doc updates.
9519 * gst/gstutils.c:
9520 * gst/gstutils.h:
9521 Moved the _flow_get_name() to GstPad.
9523 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
9525 * check/gst-libs/gdp.c: (GST_START_TEST):
9526 * check/gst/gstcaps.c: (GST_START_TEST):
9527 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
9528 (gst_dp_dump_byte_array), (gst_dp_header_from_buffer),
9529 (gst_dp_packet_from_caps):
9530 fix more valgrind warnings before turning up the heat
9532 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
9534 * gst/parse/grammar.y:
9535 some cleanup before the hacking
9537 2005-10-10 Thomas Vander Stichele <thomas at apestaart dot org>
9539 * gst/base/gstbasesrc.c: (gst_base_src_query):
9540 use conversions
9541 * gst/gstutils.c: (gst_guint64_to_gdouble),
9542 (gst_gdouble_to_guint64), (gst_util_uint64_scale):
9543 * gst/gstutils.h:
9544 externalize, basesrc uses it
9545 obviously the implementation needs testing
9547 2005-10-10 Wim Taymans <wim@fluendo.com>
9549 * tests/sched/Makefile.am:
9550 * tests/sched/sort.c: (make_pipeline1), (make_pipeline2),
9551 (make_pipeline3), (make_pipeline4), (print_elem), (main):
9553 2005-10-10 Thomas Vander Stichele <thomas at apestaart dot org>
9555 * gst/gstutils.c: (guint64_to_gdouble), (gst_util_uint64_scale):
9556 apparently converting from guint64 to double is not implemented
9557 on MSVC
9559 2005-10-10 Wim Taymans <wim@fluendo.com>
9561 * check/Makefile.am:
9562 * check/generic/states.c: (GST_START_TEST):
9563 * check/gst/gstbin.c: (GST_START_TEST):
9564 * check/gst/gstpipeline.c: (GST_START_TEST), (gst_pipeline_suite):
9565 * check/states/sinks.c: (GST_START_TEST):
9566 * check/states/sinks2.c: (GST_START_TEST), (gst_object_suite),
9567 (main):
9568 Check fixes, use API as stated in design docs, remove hacks.
9570 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
9571 (gst_base_sink_change_state):
9572 Catch stopping our task while we're shutting down.
9574 * gst/gstbin.c: (gst_bin_init), (gst_bin_add_func),
9575 (gst_bin_remove_func), (gst_bin_get_state_func),
9576 (gst_bin_recalc_state), (gst_bin_change_state_func),
9577 (bin_bus_handler):
9578 * gst/gstbin.h:
9579 * gst/gstelement.c: (gst_element_init),
9580 (gst_element_get_state_func), (gst_element_abort_state),
9581 (gst_element_commit_state), (gst_element_lost_state),
9582 (gst_element_set_state), (gst_element_change_state),
9583 (gst_element_change_state_func):
9584 * gst/gstelement.h:
9585 New state change algorithm (see #318116)
9587 * gst/gstpipeline.c: (gst_pipeline_class_init),
9588 (gst_pipeline_init), (gst_pipeline_set_property),
9589 (gst_pipeline_get_property), (do_pipeline_seek),
9590 (gst_pipeline_change_state), (gst_pipeline_provide_clock_func):
9591 * gst/gstpipeline.h:
9592 Remove crude state change hacks.
9594 * gst/gstutils.h:
9595 Remove crude hacks.
9597 * tools/gst-launch.c: (main):
9598 Fixes for state change. Needs some more work to fully use the
9599 new stuff.
9601 2005-10-10 Andy Wingo <wingo@pobox.com>
9603 * tests/Makefile.am (noinst_PROGRAMS): No more init.c.
9605 * gst/gst.c (G_OPTION_FLAG_NO_ARG): Apparently GLib 2.8 requires
9606 this flag, but it's not even in GLib 2.6. Odd. Hack around the
9607 issue.
9609 2005-10-10 Tim-Philipp Müller <tim at centricular dot net>
9611 * gst/gstiterator.c: (gst_iterator_new):
9612 Fix my previous commit: GTypes passed to gst_iterator_new()
9613 can be fundamental types.
9615 2005-10-10 Wim Taymans <wim@fluendo.com>
9617 * gst/gstelement.c: (gst_element_iterate_pad_list),
9618 (gst_element_iterate_pads), (gst_element_iterate_src_pads),
9619 (gst_element_iterate_sink_pads):
9620 Use src/sink pads lists for the respective iterators instead
9621 of filtering.
9623 2005-10-10 Andy Wingo <wingo@pobox.com>
9625 Merged in popt removal + GOption addition patch from Ronald, bug
9626 #169772.
9628 * docs/gst/gstreamer-sections.txt: Add STATE_(UN)LOCK_FULL, move
9629 GstElement macros around, remove popt-related symbols, add goption
9630 stuff.
9632 * configure.ac: Remove popt checks, require GLib 2.6 for GOption.
9634 * docs/gst/Makefile.am:
9635 * docs/libs/Makefile.am: No POPT_CFLAGS.
9637 * examples/manual/Makefile.am:
9638 * docs/manual/basics-init.xml: Doc updates with an example.
9640 * gst/gst.c: (gst_init_get_option_group), (gst_init_check),
9641 (gst_init), (parse_one_option), (parse_goption_arg):
9642 * gst/gst.h: Removed gst_init_with_popt_table and friends. Took a
9643 bit of hand merging and debugging to get the GOption stuff working
9644 tho.
9646 * tests/Makefile.am:
9647 * tools/Makefile.am:
9648 * tools/gst-inspect.c: (main):
9649 * tools/gst-launch.c: (main):
9650 * tools/gst-run.c: (main):
9651 * tools/gst-xmlinspect.c: (main): Thanks Ronald!
9653 2005-10-10 Tim-Philipp Müller <tim at centricular dot net>
9655 * gst/gstiterator.c: (gst_iterator_new):
9656 Add assertions to make sure passed GType is likely to really
9657 be a GType (as the compiler won't catch it if the size and
9658 GType arguments get mixed up, see #318447).
9660 2005-10-10 Josef Zlomek <josef dot zlomek at xeris dot cz>
9662 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
9664 * gst/gstbin.c: (gst_bin_iterate_sorted):
9665 Pass GType and size arguments to gst_iterator_new() in the right
9666 order (maybe we should make _new() take the GType as first argument
9667 just like _new_list()?) (#318447).
9670 2005-10-10 Wim Taymans <wim@fluendo.com>
9672 * gst/gstelement.c: (gst_element_finalize):
9673 And free the GStaticRecMutex too
9675 2005-10-10 Andy Wingo <wingo@pobox.com>
9677 * gst/gstelement.c (gst_element_init, gst_element_finalize):
9678 Allocate and free the mutex properly.
9680 * gst/gstelement.h (GST_STATE_UNLOCK_FULL, GST_STATE_LOCK_FULL):
9681 New macros.
9682 (GstElement): The state_lock is now recursive. Rebuild your
9683 plugins, suckers. Old macros adapted.
9685 * docs/gst/gstreamer-sections.txt: Doc updates.
9687 * gst/gstutils.h:
9688 * gst/gstutils.c (g_static_rec_cond_timed_wait)
9689 (g_static_rec_cond_wait): Ported from state changes patch, while
9690 we wait on bug #317802 to be solved in a well-distributed GLib.
9692 * gst/gstelement.c (gst_element_change_state_func): Renamed from
9693 gst_element_change_state, variable name changes.
9694 (gst_element_change_state): Split out of gst_element_set_state in
9695 preparation for the state change merge. Doesn't pay attention to
9696 the 'transition' argument.
9697 (gst_element_set_state): Updates, hopefully purely cosmetic.
9698 (gst_element_sync_state_with_parent): MT-safety. Ported from the
9699 state change patch.
9700 (gst_element_get_state_func): Renamed from get_state, cosmetic
9701 changes.
9703 2005-10-10 Thomas Vander Stichele <thomas at apestaart dot org>
9705 * gst/elements/gstelements.c:
9706 * win32/GStreamer.vcproj:
9707 * win32/config.h:
9708 * win32/dirent.c: (_tseekdir):
9709 * win32/gst-inspect.vcproj:
9710 * win32/gst-launch.vcproj:
9711 * win32/gstconfig.h:
9712 * win32/gstelements.vcproj:
9713 * win32/gstenumtypes.c: (gst_object_flags_get_type):
9714 * win32/gstreamer.def:
9715 * win32/msvc71.sln:
9716 updates for the win32 build (patch from Sebastien Moutte)
9718 2005-10-10 Andy Wingo <wingo@pobox.com>
9720 * gst/gstbin.c (gst_bin_get_state_func): Renamed from
9721 gst_bin_get_state, cleaned up (but no logic changes).
9722 (bin_element_is_sink): Comment updates.
9723 (sink_iterator_filter): Remove needless cast.
9724 (gst_bin_iterate_sinks): Doc update.
9725 (gst_bin_change_state_func): Renamed from gst_bin_change_state,
9726 cleaned up (but no logic changes).
9728 * check/states/sinks.c (test_src_sink): Cleanups from the state
9729 change patch.
9730 (test_livesrc_sink): Sync on the state.
9732 * check/pipelines/simple_launch_lines.c (run_pipeline): Merge from
9733 the state change patch.
9735 * check/gst/gstghostpad.c (test_ghost_pads): Merge from the state
9736 change patch.
9738 * check/gst/gstbin.c: Merge in some style fixes and additional
9739 checks from Wim's state change patch.
9741 2005-10-10 Tim-Philipp Müller <tim at centricular dot net>
9743 * gst/base/gsttypefindhelper.c: (helper_find_peek),
9744 (gst_type_find_helper):
9745 Check whether we have the requested data already in our list of
9746 cached buffers before pulling a new buffer; also make the buffer
9747 list a GSList. Speeds up typefinding by ca. 5-10% altogether.
9749 2005-10-10 Thomas Vander Stichele <thomas at apestaart dot org>
9751 * gst/gstcaps.c:
9752 * gst/gstevent.c:
9753 doc updates
9754 * gst/gstvalue.c: (gst_value_deserialize_int_helper):
9755 don't use long long, it's not portable. Replacing with
9756 gint64 seems to work; let's hope no skeletons fall out of the closet.
9758 2005-10-10 Andy Wingo <wingo@pobox.com>
9760 * autogen.sh (CONFIGURE_DEF_OPT): No more --plugin-buiddir, yay
9762 2005-10-09 Stefan Kost <ensonic@users.sf.net>
9764 * docs/gst/gstreamer-sections.txt:
9765 * gst/gstevent.c:
9766 * gst/gstevent.h:
9767 * gst/gstinfo.c:
9768 * gst/gstinfo.h:
9769 * gst/gstmessage.c: (gst_message_parse_state_changed):
9770 * gst/gstpad.c:
9771 * gst/gstpad.h:
9772 more docs, fix compilation
9774 2005-10-09 Philippe Khalaf <burger@speedy.org>
9775 * gst/gstmessage.c:
9776 Fixed a few forgotten variables on previous commit
9778 2005-10-09 Tim-Philipp Müller <tim at centricular dot net>
9780 * gst/base/gsttypefindhelper.c: (helper_find_peek):
9781 Fix evil typefind crasher: getrange() might return a short
9782 buffer at the end of a file, but gst_type_find_peek() must
9783 either return the full data as requested or NULL, but
9784 never a short buffer.
9786 2005-10-09 Thomas Vander Stichele <thomas at apestaart dot org>
9788 * gst/gstmessage.c: (gst_message_new_state_changed),
9789 (gst_message_parse_state_changed):
9790 * gst/gstmessage.h:
9791 don't use "new", it's a C++ keyword
9793 2005-10-08 Wim Taymans <wim@fluendo.com>
9795 * gst/gstbin.c: (is_eos), (update_degree), (gst_bin_query):
9796 * gst/gstelement.c: (gst_element_post_message):
9797 * gst/gstpipeline.c: (gst_pipeline_change_state):
9798 Small docs and debug updates.
9800 2005-10-08 Stefan Kost <ensonic@users.sf.net>
9802 * docs/gst/gstreamer-sections.txt:
9803 * gst/gstelementfactory.c:
9804 * gst/gstevent.c:
9805 * gst/gsttaglist.c:
9806 more docs
9808 2005-10-08 Wim Taymans <wim@fluendo.com>
9810 * gst/gstbin.c: (is_eos), (update_degree), (gst_bin_change_state),
9811 (gst_bin_dispose), (bin_bus_handler):
9812 Fix typos, add comments.
9813 Clear EOS list when going to PAUSED from any direction and do it
9814 in a threadsafe way.
9815 Get base time in a threadsafe way too.
9816 Fix confusing debug in the change_state function.
9817 Various other small cleanups.
9819 * gst/gstelement.c: (gst_element_post_message):
9820 Fix very verbose bus posting code.
9822 * gst/gstpipeline.c: (gst_pipeline_class_init),
9823 (gst_pipeline_set_property), (gst_pipeline_get_property),
9824 (gst_pipeline_change_state):
9825 Small ARG_ -> PROP_ cleanup
9827 2005-10-08 Wim Taymans <wim@fluendo.com>
9829 * gst/gstbin.c: (is_eos), (bin_bus_handler):
9830 Do a less CPU demanding EOS check because we can.
9832 2005-10-08 Wim Taymans <wim@fluendo.com>
9834 * libs/gst/dataprotocol/dataprotocol.c:
9835 (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
9836 (gst_dp_packet_from_event):
9837 * libs/gst/dataprotocol/dataprotocol.h:
9838 * libs/gst/dataprotocol/dp-private.h:
9839 It's about time we bump the version number.
9840 Since event types don't fit in the guint8 anymore describing
9841 the payload type, make payload type 16 bits wide.
9843 2005-10-08 Wim Taymans <wim@fluendo.com>
9845 * docs/design/part-TODO.txt:
9846 * docs/design/part-clocks.txt:
9847 * docs/design/part-events.txt:
9848 * docs/design/part-gstbin.txt:
9849 * docs/design/part-gstelement.txt:
9850 * docs/design/part-gstpipeline.txt:
9851 * docs/design/part-live-source.txt:
9852 * docs/design/part-messages.txt:
9853 * docs/design/part-overview.txt:
9854 * docs/design/part-states.txt:
9855 Many doc updates.
9857 2005-10-08 Wim Taymans <wim@fluendo.com>
9859 * gst/gstevent.c:
9860 * gst/gstevent.h:
9861 Fix event quark registration.
9862 Add some space between events so we can insert them in the
9863 right groups.
9865 2005-10-08 Wim Taymans <wim@fluendo.com>
9867 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
9868 (gst_base_sink_handle_buffer):
9869 Better log message.
9871 * gst/gstbus.h:
9872 * gst/gstelement.h:
9873 More docs.
9875 * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
9876 (gst_queue_set_property), (gst_queue_get_property):
9877 * gst/gstqueue.h:
9878 Remove old unused properties.
9880 2005-10-08 Stefan Kost <ensonic@users.sf.net>
9881 * docs/gst/gstreamer-sections.txt:
9882 * gst/gstmessage.c:
9883 * gst/gstmessage.h:
9884 * gst/gstminiobject.c:
9885 * gst/gstminiobject.h:
9886 * gst/gstobject.h:
9887 * gst/gstpad.h:
9888 * gst/gstutils.h:
9889 lots of new docs and doc fixes
9891 2005-10-08 Thomas Vander Stichele <thomas at apestaart dot org>
9893 * gst/gstplugin.c: (gst_plugin_finalize), (gst_plugin_load_file):
9894 * gst/gstplugin.h:
9895 * gst/gstregistry.c: (gst_registry_lookup_locked),
9896 (gst_registry_scan_path_level):
9897 * gst/gstregistryxml.c: (load_plugin):
9898 Only ever load one plugin for a given plugin basename.
9899 This ensures correct overriding of GST_PLUGIN_PATH over
9900 GST_PLUGIN_SYSTEM_PATH and of home dir plugins over
9901 system installed plugins.
9903 2005-10-08 Wim Taymans <wim@fluendo.com>
9905 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
9906 (gst_base_sink_do_sync), (gst_base_sink_handle_buffer):
9907 Prepare for doing QOS.
9909 2005-10-08 Wim Taymans <wim@fluendo.com>
9911 * check/gst/gstbin.c: (GST_START_TEST):
9912 * check/pipelines/cleanup.c: (GST_START_TEST):
9913 * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
9914 Allow new clock message too.
9916 2005-10-08 Wim Taymans <wim@fluendo.com>
9918 * gst/gstmessage.c: (gst_message_new_error),
9919 (gst_message_new_warning), (gst_message_new_tag),
9920 (gst_message_new_state_changed), (gst_message_new_clock_provide),
9921 (gst_message_new_clock_lost), (gst_message_new_new_clock),
9922 (gst_message_new_segment_start), (gst_message_new_segment_done),
9923 (gst_message_parse_state_changed),
9924 (gst_message_parse_clock_provide), (gst_message_parse_clock_lost),
9925 (gst_message_parse_new_clock):
9926 * gst/gstmessage.h:
9927 Also carry the clock in question.
9929 2005-10-08 Wim Taymans <wim@fluendo.com>
9931 * gst/gstmessage.c: (gst_message_new_custom),
9932 (gst_message_new_eos), (gst_message_new_error),
9933 (gst_message_new_warning), (gst_message_new_tag),
9934 (gst_message_new_state_changed), (gst_message_new_clock_provide),
9935 (gst_message_new_new_clock), (gst_message_new_segment_start),
9936 (gst_message_new_segment_done), (gst_message_parse_state_changed),
9937 (gst_message_parse_clock_provide), (gst_message_parse_new_clock):
9938 * gst/gstmessage.h:
9939 Clean up.
9940 Added clock related messages.
9942 * gst/gstpipeline.c: (gst_pipeline_change_state):
9943 Post message when the clock changed.
9945 * tools/gst-launch.c: (event_loop):
9946 Print new clock.
9948 2005-10-08 Tim-Philipp Müller <tim at centricular dot net>
9950 * tools/gst-inspect.c: (print_element_properties_info):
9951 Can't pass NULL strings to g_print() on windows.
9953 2005-10-08 Thomas Vander Stichele <thomas at apestaart dot org>
9955 * docs/Makefile.am:
9956 * docs/gst/Makefile.am:
9957 * docs/gst/gstreamer-docs.sgml:
9958 * docs/gst/running.xml:
9959 * docs/version.entities.in:
9960 add a chapter on running GStreamer.
9961 document GST_DEBUG and GST_PLUGIN* env vars
9963 2005-10-08 Thomas Vander Stichele <thomas at apestaart dot org>
9965 * Makefile.am:
9966 remove include dir
9967 * configure.ac:
9968 remove PLUGINS_BUILDDIR stuff
9969 * gst/gst.c: (init_post):
9970 reorder parsing of GST_PLUGIN_PATH and GST_PLUGIN_SYSTEM_PATH
9971 * idiottest.mak:
9972 remove, it was condescending and not needed
9974 2005-10-08 Wim Taymans <wim@fluendo.com>
9976 * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_flush),
9977 (gst_base_sink_handle_object), (gst_base_sink_event),
9978 (gst_base_sink_wait), (gst_base_sink_handle_event),
9979 (gst_base_sink_change_state):
9980 * gst/base/gstbasesink.h:
9981 Repost EOS message while going to PLAYING if still EOS.
9982 Make sure that when receiving a FLUSH_START we don't attempt
9983 to sync on the clock anymore.
9985 2005-10-08 Wim Taymans <wim@fluendo.com>
9987 * tools/gst-launch.c: (event_loop):
9988 Better message printout.
9990 2005-10-08 Wim Taymans <wim@fluendo.com>
9992 * gst/gstbin.c: (gst_bin_child_proxy_get_child_by_index),
9993 (gst_bin_child_proxy_get_children_count):
9994 * gst/gstchildproxy.c: (gst_child_proxy_get_child_by_name),
9995 (gst_child_proxy_lookup), (gst_child_proxy_get_property),
9996 (gst_child_proxy_get_valist), (gst_child_proxy_set_property),
9997 (gst_child_proxy_set_valist):
9998 * gst/parse/grammar.y:
9999 Make ChildProxy threadsafe and fix mem leaks.
10001 2005-10-08 Thomas Vander Stichele <thomas at apestaart dot org>
10003 * gst/gst.c: (init_post):
10004 debug the GST_PLUGIN_ env vars
10006 2005-10-08 Wim Taymans <wim@fluendo.com>
10008 * check/gst/gstbin.c: (GST_START_TEST):
10009 * check/gst/gstmessage.c: (GST_START_TEST):
10010 * check/gst/gstpipeline.c: (GST_START_TEST), (message_received):
10011 * gst/gstelement.c: (gst_element_commit_state),
10012 (gst_element_lost_state):
10013 * gst/gstmessage.c: (gst_message_new_state_changed),
10014 (gst_message_parse_state_changed):
10015 * gst/gstmessage.h:
10016 * tools/gst-launch.c: (event_loop):
10017 Added extra field to STATE_CHANGE message with the pending
10018 state, which will be different from the new state soon.
10020 2005-10-08 Wim Taymans <wim@fluendo.com>
10022 * gst/gstbus.c: (gst_bus_pop):
10023 * gst/gstclock.c:
10024 * gst/gstsystemclock.c: (gst_system_clock_async_thread):
10025 Small cleanups and doc updates.
10027 2005-10-08 Thomas Vander Stichele <thomas at apestaart dot org>
10029 * gst/gst.c: (init_pre):
10030 * gst/gstbin.c: (gst_bin_add_func):
10031 log distributing clocks and base time
10032 * gst/gstregistry.c: (gst_registry_add_plugin),
10033 (gst_registry_scan_path_level), (gst_registry_scan_path):
10034 clean up the debugging output a little
10035 * gst/gstutils.c: (gst_element_state_get_name):
10036 warn about a memleak (I've actually seen this be used, though
10037 it was probably a bug)
10039 2005-10-07 Wim Taymans <wim@fluendo.com>
10041 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
10042 (gst_base_src_init), (gst_base_src_default_newsegment),
10043 (gst_base_src_newsegment), (gst_base_src_do_seek),
10044 (gst_base_src_loop), (gst_base_src_start):
10045 * gst/base/gstbasesrc.h:
10046 Make the newsegment event customizable by subclasses.
10048 2005-10-07 Wim Taymans <wim@fluendo.com>
10050 * gst/gstevent.c: (gst_event_new_buffersize),
10051 (gst_event_parse_buffersize):
10052 * gst/gstevent.h:
10053 New event for future idea.
10055 2005-10-07 Andy Wingo <wingo@pobox.com>
10057 * gst/gstelement.c (gst_element_post_message): Doc update.
10059 * docs/gst/gstreamer-sections.txt: Update.
10061 * gst/gstmessage.c (gst_message_new_application): Made into a
10062 function like honest API calls.
10063 (gst_message_new_element): New message type.
10065 * gst/gstmessage.h (enum): Add GST_MESSAGE_ELEMENT type.
10067 * check/elements/fakesrc.c (test_no_preroll): New check, checks
10068 that setting a live fakesrc to PAUSED returns NO_PREROLL both
10069 times.
10071 * gst/base/gstbasesrc.c (gst_base_src_change_state): Allow a
10072 NO_PREROLL from gst_element_change_state to fall through.
10074 2005-10-07 Wim Taymans <wim@fluendo.com>
10076 * gst/gstghostpad.c: (gst_ghost_pad_get_internal),
10077 (gst_ghost_pad_do_activate_push):
10078 Activating a ghostpad with no internal pad in push mode
10079 is ok.
10081 2005-10-07 Thomas Vander Stichele <thomas at apestaart dot org>
10083 * gst/gstobject.h:
10084 there's no point in wrapping FLAG_SET/_UNSET in STMT macros.
10085 Fixes compilation on Windows.
10087 2005-10-07 Michael Smith <msmith@fluendo.com>
10089 * tools/gst-inspect.c:
10090 Print out feature and plugin count at the end when printing out
10091 all features.
10093 2005-10-04 Michael Smith <msmith@fluendo.com>
10095 * gst/gsterror.c: (_gst_stream_errors_init):
10096 Add another error string used in a few existing plugins.
10098 * gst/gstplugin.c:
10099 * gst/gstpluginfeature.c: (gst_plugin_feature_load):
10100 * tools/gst-inspect.c: (print_element_info):
10101 When a feature disappears from a plugin (and the feature exists in
10102 the cached registry file), things went horribly wrong. This isn't a
10103 complete fix, we should actually be removing the 'missing' features
10104 from the features list when we load the actual plugin. That's not
10105 yet implemented.
10107 2005-10-04 Johan Dahlin <johan@gnome.org>
10109 * check/gst/gstiterator.c: (GST_START_TEST):
10110 * gst/gstbin.c: (gst_bin_iterate_elements),
10111 (gst_bin_iterate_recurse), (gst_bin_iterate_sorted):
10112 * gst/gstelement.c: (gst_element_iterate_pads):
10113 * gst/gstformat.c: (gst_format_iterate_definitions):
10114 * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
10115 (gst_iterator_new_list), (gst_iterator_filter):
10116 * gst/gstiterator.h:
10117 * gst/gstquery.c: (gst_query_type_iterate_definitions):
10118 Add a GType to GstIterator, update callsites and tests.
10120 2005-10-06 Thomas Vander Stichele <thomas at apestaart dot org>
10122 * gst/gstpad.c: (gst_pad_event_default_dispatch):
10123 give events a chance to be handled by event probes when the pad
10124 is not linked
10126 2005-10-06 Thomas Vander Stichele <thomas at apestaart dot org>
10128 * gst/gstevent.c: (gst_event_type_get_name),
10129 (gst_event_type_to_quark), (gst_event_finalize), (gst_event_new):
10130 * gst/gstevent.h:
10131 add string representations for event types
10133 2005-10-06 Wim Taymans <wim@fluendo.com>
10135 * gst/elements/gstfilesink.c: (gst_file_sink_close_file):
10136 Don't use NULL pointers.
10138 2005-10-06 Thomas Vander Stichele <thomas at apestaart dot org>
10140 * gst/gst_private.h:
10141 * gst/gstbus.c:
10142 * gst/gstelement.c:
10143 * gst/gstinfo.c:
10144 * gst/gstpluginfeature.c:
10145 widen the debug category in output to fit the biggest one we have
10146 add a bus category and use it
10147 play with the colors
10148 fix up some categories
10150 2005-10-06 Thomas Vander Stichele <thomas at apestaart dot org>
10152 * gst/gstghostpad.c: (gst_ghost_pad_internal_do_activate_push):
10153 add push activation of sink ghost pads.
10154 Andye, please verify
10156 2005-10-05 Thomas Vander Stichele <thomas at apestaart dot org>
10158 * gst/gstutils.c: (gst_element_link_pads):
10159 fix a bug in the case where neither element has a pad
10160 * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
10161 add a test for that case
10163 2005-10-05 Thomas Vander Stichele <thomas at apestaart dot org>
10165 * gst/gstpad.c: (gst_pad_push), (gst_pad_push_event):
10166 emit have-data before checking for peers. This allows
10167 for probe handlers to connect elements. This helps autopluggers.
10168 * check/gst/gstpad.c: (GST_START_TEST), (_probe_handler),
10169 (gst_pad_suite):
10170 add six checks, linked/unlinked with no/true/false probe
10172 2005-10-04 Wim Taymans <wim@fluendo.com>
10174 * gst/elements/gstfakesink.c: (gst_fake_sink_get_property),
10175 (gst_fake_sink_event), (gst_fake_sink_preroll),
10176 (gst_fake_sink_render), (gst_fake_sink_change_state):
10177 * gst/elements/gstfakesrc.c: (gst_fake_src_event_handler),
10178 (gst_fake_src_get_property), (gst_fake_src_create),
10179 (gst_fake_src_stop):
10180 * gst/elements/gstidentity.c: (gst_identity_stop):
10181 Protect last_message with lock.
10183 2005-10-04 Edward Hervey <edward@fluendo.com>
10185 * gst/gstformat.h:
10186 Added precision in the comments for GST_FORMAT_DEFAULT
10188 2005-10-04 Tim-Philipp Müller <tim at centricular dot net>
10190 * tools/gst-launch.c: (main):
10191 Don't try to run erroneous pipelines.
10193 2005-10-04 Julien MOUTTE <julien@moutte.net>
10195 * gst/gstbus.c: We don't need this header.
10197 2005-10-03 Thomas Vander Stichele <thomas at apestaart dot org>
10199 * configure.ac:
10200 back to development
10202 === release 0.9.3 ===
10204 2005-10-03 Thomas Vander Stichele <thomas at apestaart dot org>
10206 * README:
10207 * configure.ac:
10208 Releasing 0.9.3, "Unregistered"
10210 2005-10-03 Andy Wingo <wingo@pobox.com>
10212 * gst/gstpad.c (gst_pad_activate_push): There is a race condition
10213 whereby calling a pad's activatepush() function can start a thread
10214 that starts to push or pull before the pad gets the FLUSHING flag
10215 unset. Hack around it by holding the stream lock until the flag is
10216 set. Need to replace this with a proper solution. Together with
10217 the ghost pad fixes, this fixes mp3 playing/tagreading.
10219 * docs/design/part-gstghostpad.txt: Add a note about activation of
10220 proxy pads outside of ghost pads.
10222 * gst/gstghostpad.c: Implement the ghost pad activation design.
10224 2005-10-02 Andy Wingo <wingo@pobox.com>
10226 * gst/gstobject.h (GST_OBJECT_REFCOUNT_VALUE): Just use the int.
10227 It is volatile, after all.
10229 * docs/design/part-gstghostpad.txt: Flesh out activation with
10230 ghost pads.
10232 * gst/base/gstbasesrc.c (gst_base_src_init): Use
10233 GST_DEBUG_FUNCPTR.
10235 2005-10-02 Tim-Philipp Müller <tim at centricular dot net>
10237 * configure.ac:
10238 Fix (unused) AM_CONDITIONAL tests.
10240 2005-10-01 Alessandro Decina <alessandro at nnva dot org>
10242 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
10244 * gst/gstutils.c: (gst_pad_query_convert):
10245 Add assertion that makes sure src_val is >=0, just like
10246 gst_query_new_convert() has. (#315895)
10248 2005-09-30 Edward Hervey <edward@fluendo.com>
10250 * gst/elements/gsttee.c: (gst_tee_do_push), (gst_tee_handle_buffer):
10251 Let's not iterate pads we're not interested in, it avoids getting
10252 sky-high refcounts on sinkpad.
10254 2005-09-30 Wim Taymans <wim@fluendo.com>
10256 * gst/gstelement.c: (gst_element_set_state),
10257 (gst_element_change_state):
10258 Small tweak, element in ASYNC remains ASYNC.
10260 2005-09-30 Wim Taymans <wim@fluendo.com>
10262 * gst/base/gstbasesink.c: (gst_base_sink_change_state):
10263 Only error is an error.
10265 * gst/gstbin.c: (gst_bin_change_state):
10266 Better debugging.
10268 * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_chain):
10269 Also call pad_block in pad alloc.
10271 * gst/gstutils.c: (gst_flow_get_name):
10272 Better debugging.
10274 2005-09-29 Tim-Philipp Müller <tim at centricular dot net>
10276 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
10277 (gst_base_src_get_range):
10278 Fix documentation typos. Add some more debug info.
10280 2005-09-29 David Schleef <ds@schleef.org>
10282 * gst/gstplugin.c: (gst_plugin_load_file): Make some error messages
10283 more end-user friendly.
10284 * tools/gst-inspect.c: (main): Check if command-line argument is
10285 a file and attempt to load that file as a plugin.
10287 2005-09-29 Thomas Vander Stichele <thomas at apestaart dot org>
10289 * check/gst/gstbin.c:
10290 * check/states/sinks.c:
10291 fix tests for the new warning
10292 * check/gst/gstpipeline.c:
10293 add a test for pipeline and bus interaction
10294 * gst/gstelement.c:
10295 elements should be NULL if they get disposed; add a warning if not
10297 2005-09-29 Thomas Vander Stichele <thomas at apestaart dot org>
10299 * gst/gstobject.c:
10300 for 2.6 refcounting, make debug log more correct by printing
10301 the actual refcounts at the time of swap (Wim)
10303 2005-09-29 Andy Wingo <wingo@pobox.com>
10305 * gst/gstbus.c (gst_bus_remove_signal_watch): New function,
10306 removes signal watches previously added via
10307 gst_bus_add_signal_watch.
10308 (gst_bus_add_signal_watch): Don't return the source id, just store
10309 it on the bus if there wasn't an id already.
10311 * gst/gstbus.h (GstBus): Add a couple new fields. API changes for
10312 add_signal_watch and remove_signal_watch.
10314 2005-09-29 Edward Hervey <edward@fluendo.com>
10316 * libs/gst/controller/gstcontroller.c: (gst_controller_new_list):
10317 Better if we actually iterate the list :)
10319 2005-09-29 Wim Taymans <wim@fluendo.com>
10321 * check/gst/gstbin.c: (GST_START_TEST):
10322 Change for new bus API.
10324 * check/gst/gstbus.c: (message_func_eos), (message_func_app),
10325 (send_messages), (GST_START_TEST), (gstbus_suite):
10326 Change for new bus signal API.
10328 * gst/gstbus.c: (gst_bus_class_init), (gst_bus_have_pending),
10329 (gst_bus_source_prepare), (gst_bus_source_check),
10330 (gst_bus_create_watch), (gst_bus_add_watch_full),
10331 (gst_bus_add_watch), (gst_bus_poll), (gst_bus_async_signal_func),
10332 (gst_bus_sync_signal_handler), (gst_bus_add_signal_watch):
10333 * gst/gstbus.h:
10334 Remove support for multiple GSources operating on different
10335 message types as it is too complex and unneeded when using
10336 signals.
10337 Added support for receiving signals from the bus.
10339 2005-09-29 Thomas Vander Stichele <thomas at apestaart dot org>
10341 * docs/libs/tmpl/gstdataprotocol.sgml:
10342 * docs/manual/advanced-dataaccess.xml:
10343 * gst/elements/gstcapsfilter.c:
10344 * gst/gstutils.c:
10345 rename filter-caps to caps property
10347 2005-09-29 Tim-Philipp Müller <tim at centricular dot net>
10349 * gst/gstvalue.c: (gst_value_deserialize_fraction):
10350 More robust fraction string parsing.
10352 * docs/pwg/appendix-porting.xml:
10353 Mention gst_pad_use_explicit_caps() => gst_pad_use_fixed_caps()
10355 2005-09-29 Tim-Philipp Müller <tim at centricular dot net>
10357 * gst/gstcaps.c: (gst_caps_do_simplify):
10358 Thou shalt not free a structure and then continue using it
10359 in the next loop iteration.
10361 * check/gst/gstcaps.c: (check_fourcc_list), (test_simplify),
10362 (gst_caps_suite):
10363 Add test case for caps simplification.
10365 2005-09-29 Wim Taymans <wim@fluendo.com>
10367 * check/gst/gstbin.c: (GST_START_TEST):
10368 Oops.
10370 2005-09-29 Wim Taymans <wim@fluendo.com>
10372 * check/gst/gstbin.c: (GST_START_TEST):
10373 Add bus to bin.
10375 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init),
10376 (add_to_queue), (clear_queue), (reset_degree), (update_degree),
10377 (find_element), (gst_bin_sort_iterator_next),
10378 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
10379 (gst_bin_iterate_sorted), (gst_bin_element_set_state),
10380 (gst_bin_change_state), (gst_bin_dispose):
10381 A bin does not have a bus, it gets the bus from the parent.
10383 * gst/gstelement.c: (gst_element_requires_clock),
10384 (gst_element_provides_clock), (gst_element_is_indexable),
10385 (gst_element_is_locked_state), (gst_element_change_state),
10386 (gst_element_set_bus_func):
10387 Small cleanups.
10389 * gst/gstpipeline.c: (gst_pipeline_class_init),
10390 (gst_pipeline_init), (gst_pipeline_provide_clock_func):
10391 The pipeline provides a bus.
10393 2005-09-28 Johan Dahlin <johan@gnome.org>
10395 * gst/gstmessage.c (gst_message_parse_state_changed): Use
10396 gst_structure_get_enum instead of gst_structure_get_int
10398 * gst/gststructure.c (gst_structure_get_enum): Impl.
10400 * gst/gststructure.h (gst_structure_get_enum): Add
10402 * docs/gst/gstreamer-sections.txt: Ditto
10404 * gst/gstmessage.c (gst_message_new_state_changed): Use
10405 GST_TYPE_STATE instead of G_TYPE_INT, mainly for language bindings
10406 which does introspection.
10407 Reviewed by Christian Schaller
10409 2005-09-28 Stefan Kost <ensonic@users.sf.net>
10411 * gst/gstinfo.c: (gst_debug_log_default):
10412 don't do dummy g_strdup()s
10413 * libs/gst/controller/gstcontroller.c:
10414 (on_object_controlled_property_changed),
10415 (gst_controlled_property_new), (gst_controller_new_valist),
10416 (gst_controller_new_list),
10417 (gst_controller_remove_properties_valist), (gst_controller_set),
10418 (gst_controller_get), (gst_controller_sync_values),
10419 (gst_controller_get_value_array), (_gst_controller_class_init),
10420 (gst_controller_get_type):
10421 * libs/gst/controller/gstcontroller.h:
10422 * libs/gst/controller/gstinterpolation.c:
10423 (gst_controlled_property_find_timed_value_node):
10424 convert // to /**/ comments
10426 2005-09-28 Wim Taymans <wim@fluendo.com>
10428 * gst/gstbus.c: (marshal_VOID__MINIOBJECT), (gst_bus_class_init),
10429 (gst_bus_post), (poll_func), (gst_bus_async_signal_func),
10430 (gst_bus_sync_signal_handler):
10431 * gst/gstbus.h:
10432 Added async-message and sync-message signals to the bus.
10433 Added helper BusFunc to emit signals for all posted messages.
10435 * gst/gstmessage.c: (gst_message_type_get_name),
10436 (gst_message_type_to_quark), (gst_message_get_type):
10437 * gst/gstmessage.h:
10438 Register quarks for message names.
10440 2005-09-28 Stefan Kost <ensonic@users.sf.net>
10442 * docs/libs/gstreamer-libs-sections.txt:
10443 * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist),
10444 (gst_controller_new_list):
10445 * libs/gst/controller/gstcontroller.h:
10446 added another constructor for language bindings
10448 2005-09-28 Thomas Vander Stichele <thomas at apestaart dot org>
10450 * check/gst/gstpipeline.c: (GST_START_TEST), (gst_pipeline_suite):
10451 add another check
10452 * gst/gstbus.c:
10453 add some doc
10454 * gst/gstinfo.c: (_gst_debug_init):
10455 slightly more readable color for refcount debugging
10457 2005-09-28 Wim Taymans <wim@fluendo.com>
10459 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_provide_clock_func),
10460 (add_to_queue), (clear_queue), (reset_degree), (update_degree),
10461 (find_element), (gst_bin_sort_iterator_next),
10462 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
10463 (gst_bin_iterate_sorted), (gst_bin_element_set_state),
10464 (gst_bin_change_state), (gst_bin_dispose):
10465 Small doc fixes. get_clock -> provide_clock.
10467 * gst/gstelement.c: (gst_element_class_init),
10468 (gst_element_provides_clock), (gst_element_provide_clock),
10469 (gst_element_get_clock), (gst_element_commit_state),
10470 (gst_element_lost_state):
10471 * gst/gstelement.h:
10472 Make get/set_clock() symetric. Add provide_clock vmethod since
10473 that is actually what this function does.
10475 * gst/gstpipeline.c: (gst_pipeline_class_init),
10476 (gst_pipeline_change_state), (gst_pipeline_provide_clock_func),
10477 (gst_pipeline_get_clock):
10478 get_clock -> provide_clock.
10480 2005-09-28 Andy Wingo <wingo@pobox.com>
10482 * gst/base/gstbasesrc.c (gst_base_src_unlock): Comment a bit in
10483 lieu of real docs...
10485 * gst/elements/gstfdsrc.c: Cleaned up a bit.
10487 2005-09-28 Tim-Philipp Müller <tim at centricular dot net>
10489 * gst/elements/gstcapsfilter.c:
10490 * gst/elements/gstfakesink.c:
10491 * gst/elements/gstfakesrc.c:
10492 * gst/elements/gstfdsink.c:
10493 * gst/elements/gstfdsrc.c:
10494 * gst/elements/gstfilesink.c:
10495 * gst/elements/gstfilesrc.c:
10496 * gst/elements/gstidentity.c:
10497 * gst/elements/gsttee.c:
10498 * gst/elements/gsttypefindelement.c:
10499 Make element details static.
10501 2005-09-28 Wim Taymans <wim@fluendo.com>
10503 * gst/gstbin.c: (add_to_queue), (clear_queue), (reset_outdegree),
10504 (update_outdegree), (find_element), (gst_bin_sort_iterator_next),
10505 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
10506 (gst_bin_iterate_sorted), (gst_bin_element_set_state),
10507 (gst_bin_change_state), (gst_bin_dispose):
10508 Some documentation updates.
10509 Clean up dispose handlers.
10511 * gst/gstobject.c: (gst_object_ref), (gst_object_unref):
10512 * gst/gstpad.c: (gst_pad_dispose):
10513 Clean up dispose handler.
10515 * gst/gstpipeline.c: (gst_pipeline_change_state):
10516 Removed spurious UNLOCK.
10518 2005-09-27 Stefan Kost <ensonic@users.sf.net>
10520 * docs/gst/gstreamer-sections.txt:
10521 * gst/base/gstbasesrc.h:
10522 * gst/gstelement.h:
10523 * gst/gstevent.h:
10524 * gst/gstobject.h:
10525 * gst/gstpad.h:
10526 * gst/gstpipeline.c:
10527 * gst/gstpipeline.h:
10528 * gst/gstutils.h:
10529 * gst/gstxml.h:
10530 added two new functions to the docs
10531 documents all undocumented GstXXXFlags
10532 completed some incomplete docs
10534 2005-09-27 Thomas Vander Stichele <thomas at apestaart dot org>
10536 * gst/gstbin.c: (gst_bin_dispose):
10537 * gst/gstelement.c: (gst_element_dispose):
10538 remove now useless and leaky resurrection code in dispose
10539 * gst/base/gstbasesrc.c: (gst_base_src_init):
10540 * gst/gstelementfactory.c: (gst_element_factory_create):
10541 * gst/gstobject.c: (gst_object_set_parent):
10542 add some debugging
10544 2005-09-27 Wim Taymans <wim@fluendo.com>
10546 * docs/design/part-TODO.txt:
10547 Update TODO.
10549 * gst/gstbin.c: (add_to_queue), (clear_queue), (reset_outdegree),
10550 (update_outdegree), (find_element), (gst_bin_sort_iterator_next),
10551 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
10552 (gst_bin_iterate_sorted), (gst_bin_element_set_state),
10553 (gst_bin_change_state):
10554 * gst/gstelement.h:
10555 Remove element variable, we keep element info in the iterator now.
10557 2005-09-27 Andy Wingo <wingo@pobox.com>
10559 * libs/gst/dataprotocol/dataprotocol.c: Fix error-checking return
10560 values.
10562 2005-09-27 Wim Taymans <wim@fluendo.com>
10564 * check/gst/gstbin.c: (GST_START_TEST):
10565 Enable check that works now.
10567 * gst/gstbin.c: (add_to_queue), (clear_queue), (reset_outdegree),
10568 (update_outdegree), (find_element), (gst_bin_sort_iterator_next),
10569 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
10570 (gst_bin_iterate_sorted), (gst_bin_element_set_state),
10571 (gst_bin_change_state):
10572 * gst/gstbin.h:
10573 Redid the state change algorithm using a topological sort algo.
10574 Handles all cases correctly.
10575 Exposed iterator for state change order.
10577 * gst/gstelement.h:
10578 Temp storage for state changes. Need to get rid of this soon.
10580 2005-09-27 Wim Taymans <wim@fluendo.com>
10582 * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_do_push):
10583 * gst/gstutils.c: (intersect_caps_func), (gst_pad_proxy_getcaps),
10584 (link_fold_func), (gst_pad_proxy_setcaps):
10585 Leak fixes, the fold functions need to unref the passed object and
10586 _get_parent_*() returns ref to parent.
10588 2005-09-27 Tim-Philipp Müller <tim at centricular dot net>
10590 * check/gst/gstbuffer.c: (test_make_writable):
10591 Plug leak in test case and fix 'make check-valgrind'
10593 2005-09-27 Tim-Philipp Müller <tim at centricular dot net>
10595 * gst/gstbuffer.c: (gst_subbuffer_init):
10596 Set READONLY flag on subbuffers, so that gst_buffer_make_writable()
10597 works correctly in all circumstances (we could have just copied
10598 the parent buffer's readonly flag, but conceptually it seems
10599 cleaner to mark all subbuffers as read-only). (based on patch
10600 by Alessandro Decina, #314710).
10602 * check/gst/gstbuffer.c: (create_read_only_buffer),
10603 (test_make_writable), (test_subbuffer_make_writable),
10604 (gst_test_suite):
10605 Add some tests for gst_buffer_make_writable().
10607 2005-09-27 Wim Taymans <wim@fluendo.com>
10609 * gst/gstbin.c: (bin_element_is_semi_sink), (gst_bin_change_state):
10610 use gst_object_has_ancestor().
10612 * gst/gstobject.c: (gst_object_has_ancestor):
10613 * gst/gstobject.h:
10614 gst_object_has_ancestor() copied from gstbin.c as it is a
10615 usefull function.
10617 * tests/instantiate/create.c: (create_all_elements):
10618 * tests/lat.c: (handoff_src), (handoff_sink):
10619 * tests/sched/runxml.c: (main):
10620 * tests/seeking/seeking1.c: (main):
10621 * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
10622 (main):
10623 Fix compilation of some tests.
10625 2005-09-27 Tim-Philipp Müller <tim at centricular dot net>
10627 * gst/gsterror.h:
10628 Remove comment. GST_TYPE_G_ERROR is here to stay,
10629 G_TYPE_ERROR has been WONTFIX'ed by the GLib folks
10630 (#316961, #300610).
10632 2005-09-26 Wim Taymans <wim@fluendo.com>
10634 * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
10635 Added check that shows error in state change order.
10637 2005-09-26 Wim Taymans <wim@fluendo.com>
10639 * gst/gstbin.c: (gst_bin_change_state):
10640 Make state change function use 3 queues again, we were
10641 adding elements in the wrong order.
10643 * gst/gstghostpad.c: (gst_ghost_pad_do_unlink):
10644 Some debug info,
10646 * gst/gstpad.c: (gst_pad_dispose):
10647 Added some debug info first.
10649 2005-09-26 Tim-Philipp Müller <tim at centricular dot net>
10651 * docs/design/draft-push-pull.txt:
10652 * docs/design/part-events.txt:
10653 * docs/design/part-overview.txt:
10654 * docs/design/part-scheduling.txt:
10655 Replace all _pull_region() with _pull_range()
10657 2005-09-26 Andy Wingo <wingo@pobox.com>
10659 * gst/gstvalue.c (_gst_value_initialize): Better fakeout.
10661 * check/gst-libs/controller.c: Update for controller api change.
10663 * configure.ac:
10664 * tests/Makefile.am:
10665 * tests/memchunk: Remove memchunk benchmark stuff, this is taken
10666 over by GLib bug 118439.
10668 * gst/base/gstbasesink.c (gst_base_sink_wait): Factor out the wait
10669 routines to a function.
10671 * docs/libs/gstreamer-libs-sections.txt: I am a good person today.
10673 * libs/gst/controller/gsthelper.c:
10674 * libs/gst/controller/gstcontroller.h (gst_controller_sync_values)
10675 (gst_object_sync_values): Renamed from sink_values. Ugh.
10677 * libs/gst/controller/gsthelper.c: Update for __gst_controller_key.
10679 * libs/gst/controller/gstcontroller.c (__gst_controller_key):
10680 Renamed from controller_key, as it is exported.
10682 * gst/gstvalue.c (_gst_value_initialize): Fake out the compiler.
10684 2005-09-26 Thomas Vander Stichele <thomas at apestaart dot org>
10686 * gst/Makefile.am:
10687 * gst/gst.h:
10688 * gst/gstpad.h:
10689 * gst/gstpadtemplate.h:
10690 * gst/gstquery.c:
10691 * gst/gstquery.h:
10692 * gst/gstqueryutils.c:
10693 * gst/gstqueryutils.h:
10694 remove queryutils headers after moving the two used functions
10695 to gstquery. also fixes build problem for gstsiddec
10697 2005-09-26 Michael Smith <msmith@fluendo.com>
10699 * tools/gst-launch.1.in:
10700 Correct documentation in manpage of debug syntax
10702 2005-09-26 Wim Taymans <wim@fluendo.com>
10704 * gst/base/gstbasesrc.c: (gst_base_src_get_range),
10705 (gst_base_src_is_seekable), (gst_base_src_change_state):
10706 Some more debugging info.
10708 2005-09-25 Stefan Kost <ensonic@users.sf.net>
10710 * docs/gst/gstreamer-sections.txt:
10711 * gst/base/gstbasetransform.h:
10712 * gst/gstindex.h:
10713 added more docs
10715 2005-09-25 Stefan Kost <ensonic@users.sf.net>
10717 * docs/gst/.cvsignore:
10718 * docs/gst/tmpl/.cvsignore:
10719 * docs/gst/tmpl/gstpipeline.sgml:
10720 * docs/gst/tmpl/gstplugin.sgml:
10721 * gst/gstpipeline.c:
10722 * gst/gstplugin.c:
10723 * gst/gstplugin.h:
10724 inlined the last two docs files
10725 removed the tmpl directory from cvs (no more conflicts here!)
10727 2005-09-25 Stefan Kost <ensonic@users.sf.net>
10729 * docs/gst/gstreamer-sections.txt:
10730 * docs/gst/tmpl/.cvsignore:
10731 * docs/gst/tmpl/gstpad.sgml:
10732 * docs/gst/tmpl/gstpadtemplate.sgml:
10733 * gst/Makefile.am:
10734 * gst/gstpad.c: (gst_pad_class_init), (gst_pad_dispose),
10735 (gst_pad_finalize), (gst_pad_set_pad_template):
10736 * gst/gstpad.h:
10737 * gst/gstpadtemplate.c: (gst_pad_template_get_type),
10738 (gst_pad_template_class_init), (gst_pad_template_init),
10739 (gst_pad_template_dispose), (name_is_valid),
10740 (gst_static_pad_template_get), (gst_pad_template_new),
10741 (gst_static_pad_template_get_caps), (gst_pad_template_get_caps),
10742 (gst_pad_template_pad_created):
10743 * gst/gstpadtemplate.h:
10744 inlined two more docs
10745 factored gstpadtemplate out of gstpad
10747 2005-09-24 Tim-Philipp Müller <tim at centricular dot net>
10749 * check/gst/gstbin.c: (test_children_state_change_order_flagged_sink),
10750 (test_children_state_change_order_semi_sink):
10751 Fix test case: we can't rely on a fixed state change order when
10752 going from READY => PAUSED because the sink might commit its
10753 new state first when the first buffer created by the source
10754 reaches the sink before the source has finished its change state.
10755 (Test case still fails at times, see #316856, comment 5 onwards)
10757 2005-09-24 Wim Taymans <wim@fluendo.com>
10759 * docs/design/part-events.txt:
10760 * docs/design/part-gstbus.txt:
10761 * docs/design/part-gstpipeline.txt:
10762 * docs/design/part-messages.txt:
10763 * docs/design/part-overview.txt:
10764 * docs/design/part-segments.txt:
10765 * gst/gstbin.c:
10766 * gst/gstbuffer.c:
10767 * gst/gstclock.c:
10768 * gst/gstelement.c:
10769 * gst/gstevent.c:
10770 * gst/gstfilter.c:
10771 * gst/gstiterator.c:
10772 Various documentation updates.
10774 2005-09-24 Thomas Vander Stichele <thomas at apestaart dot org>
10776 * gst/gstclock.h:
10777 Well, that's embarassing. Luckily we weren't using
10778 GST_CLOCK_DIFF anywhere.
10780 2005-09-23 Thomas Vander Stichele <thomas at apestaart dot org>
10782 * common/gtk-doc.mak:
10783 don't fail on building XML, FC4 slave shows a bunch of doc
10784 missing bits that I don't get
10785 * gst/gstpad.c:
10786 * gst/gstpipeline.c:
10787 * gst/gststructure.c:
10788 some doc updates
10790 2005-09-23 Tim-Philipp Müller <tim at centricular dot net>
10792 * docs/design/part-gstbin.txt:
10793 * docs/design/part-gstbus.txt:
10794 * gst/gstbus.c:
10795 Add blurb about how the bus goes into flushing mode and
10796 drops all messages when its bin goes from READY into NULL
10797 state.
10799 2005-09-23 Thomas Vander Stichele <thomas at apestaart dot org>
10801 * docs/gst/gstreamer-sections.txt:
10802 * gst/gststructure.c: (gst_structure_get_clock_time):
10803 * gst/gststructure.h:
10804 add a method to get a GstClockTime out of a structure
10806 2005-09-23 Tim-Philipp Müller <tim at centricular dot net>
10808 * check/gst/gstbin.c: (test_children_state_change_order_flagged_sink),
10809 (test_children_state_change_order_semi_sink), (gst_bin_suite):
10810 Added test to check state change order in bins (can still be made
10811 to fail here under heavy disk load; bails out with 'Push on pad
10812 fakesink:sink0, but it was not activated in push mode').
10814 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_change_state):
10815 Fix state change order when there is only a semi sink (#316856)
10817 * gst/gstbus.c: (gst_bus_class_init):
10818 Use _class_peek_parent(), not _class_ref(); fix docs to say
10819 'default main context' instead of 'mainloop' where that is
10820 what's meant.
10822 * gst/gstelement.c: (gst_element_commit_state),
10823 (gst_element_set_state):
10824 Fix typos in debug messages
10826 2005-09-23 Thomas Vander Stichele <thomas at apestaart dot org>
10828 * docs/README:
10829 * gst/gstpad.c: (gst_pad_class_init), (gst_pad_chain):
10830 * gst/gstpluginfeature.c:
10831 * gst/gstutils.c:
10832 various doc updates
10833 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
10834 change an assert into an error until it gets fixed properly
10836 2005-09-23 Stefan Kost <ensonic@users.sf.net>
10838 * docs/gst/gstreamer-sections.txt:
10839 * docs/gst/tmpl/.cvsignore:
10840 * docs/gst/tmpl/gstelement.sgml:
10841 * docs/gst/tmpl/gstinfo.sgml:
10842 * docs/gst/tmpl/gstobject.sgml:
10843 * gst/gstelement.c:
10844 * gst/gstelement.h:
10845 * gst/gstinfo.c:
10846 * gst/gstinfo.h:
10847 * gst/gstobject.c: (gst_object_class_init):
10848 * gst/gstobject.h:
10849 inlined 3 more biiiig doc files and added some missing docs on the fly
10851 2005-09-23 Thomas Vander Stichele <thomas at apestaart dot org>
10853 * check/gst/.cvsignore:
10854 * check/gst/gstplugin.c: (GST_START_TEST), (gst_plugin_suite):
10855 * gst/gstregistryxml.c: (load_plugin),
10856 (gst_registry_xml_save_plugin):
10857 put back source in registry. add checks for find_plugin.
10858 * testsuite/states/bin.c: (assert_state), (empty_bin),
10859 (test_adding_one_element), (main):
10860 * testsuite/states/locked.c: (main):
10861 some compile/run fixes
10863 2005-09-22 Thomas Vander Stichele <thomas at apestaart dot org>
10865 * check/gst/gstvalue.c: (GST_START_TEST):
10866 fix leaks in the test itself
10868 2005-09-22 Wim Taymans <wim@fluendo.com>
10870 * gst/base/gstbasesink.c: (gst_base_sink_class_init),
10871 (gst_base_sink_send_event), (gst_base_sink_peer_query),
10872 (gst_base_sink_query):
10873 Prepare for more accurate position reporting and query
10874 handling.
10876 * gst/gstelement.c: (gst_element_send_event),
10877 (gst_element_set_state):
10878 Add some comment.
10880 2005-09-22 Wim Taymans <wim@fluendo.com>
10882 * gst/gstquery.c: (gst_query_new_segment), (gst_query_set_segment),
10883 (gst_query_parse_segment):
10884 * gst/gstquery.h:
10885 More documentation.
10886 Add segment query for future use.
10888 2005-09-22 Wim Taymans <wim@fluendo.com>
10890 * gst/gstbin.c: (gst_bin_add_func):
10891 Some more debug info.
10893 * gst/gstelement.c: (gst_element_send_event):
10894 Simplify send_event
10896 * gst/gstelement.h:
10897 Don't know how flags got broken.
10899 * gst/gstquery.h:
10900 Added new query.
10902 2005-09-22 Tim-Philipp Müller <tim at centricular dot net>
10904 * check/gst/gstvalue.c: (test_date), (gst_value_suite):
10905 Add simplistic test suite for GST_TYPE_DATE serialisation and
10906 deserialisation.
10908 2005-09-22 Tim-Philipp Müller <tim at centricular dot net>
10910 * docs/gst/gstreamer-sections.txt:
10911 * gst/gststructure.c: (gst_structure_set_valist),
10912 (gst_structure_get_date):
10913 * gst/gststructure.h:
10914 * gst/gstvalue.c: (gst_value_set_date), (gst_value_get_date),
10915 (gst_date_copy), (gst_value_compare_date),
10916 (gst_value_serialize_date), (gst_value_deserialize_date),
10917 (gst_value_transform_date_string),
10918 (gst_value_transform_string_date), (_gst_value_initialize):
10919 * gst/gstvalue.h:
10920 Add GST_TYPE_DATE, a boxed type that wraps GDate, and the usual
10921 bunch of utility functions along with a hack that checks that
10922 developers don't accidentally use G_TYPE_DATE where GST_TYPE_DATE
10923 is required. Part of the grand scheme in #170777.
10925 2005-09-22 Andy Wingo <wingo@pobox.com>
10927 * gst/gstconfig.h.in: Psych out gtk-doc.
10929 * docs/gst/gstreamer-sections.txt: Add GST_HAVE_GLIB_2_8.
10931 * check/Makefile.am (check_PROGRAMS): Add gstplugin to the tests.
10933 * tools/gst-inspect.c (print_element_list): Plug some
10934 inconsequential leaks.
10936 * gst/gstregistry.c (gst_registry_get_default): Doc.
10938 * check/gst/gstplugin.c:
10939 * gst/gsttypefindfactory.c (gst_type_find_factory_call_function):
10940 * gst/gstelementfactory.c (gst_element_factory_create):
10941 * gst/gstindexfactory.c (gst_index_factory_create): Update for
10942 refcount changes.
10944 * gst/gstpluginfeature.c (gst_plugin_feature_list_free): Doc.
10945 (gst_plugin_feature_load): Doc, don't eat refs.
10947 * gst/gstplugin.c (gst_plugin_load): Doc, don't eat refs.
10948 (gst_plugin_list_free): Doc.
10949 (gst_plugin_load_file): Doc updates.
10951 * gst/gstbuffer.c (gst_buffer_get_caps): Like all our _get
10952 accessors returning refcounted objects, return a ref.
10954 * check/gst/gstbuffer.c (GST_START_TEST): Use refcount-idempotent
10955 accessor for caps. IDEMPOTENCE. Oh yes.
10957 2005-09-21 Francis Labonte <francis_labonte at hotmail dot com>
10959 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
10961 * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
10962 (_gst_debug_register_funcptr):
10963 Add mutex to serialise access to the hash table with
10964 the function pointer => function name string mapping;
10965 make that hash table static scope (#316809).
10967 * gst/registries/.cvsignore:
10968 Remove left-over file.
10970 2005-09-21 Tim-Philipp Müller <tim at centricular dot net>
10972 * docs/pwg/appendix-porting.xml:
10973 And something about newsegment events and caps-on-buffers to
10974 the porting guide (feel free to improve).
10976 2005-09-21 Andy Wingo <wingo@pobox.com>
10978 * check/gst/gstutils.c (test_buffer_probe_n_times): Add tests for
10979 data and event probes on the same pad.
10980 (test_buffer_probe_once): Test that removing probes from within
10981 the probe functions works.
10983 2005-09-21 Andy Wingo <wingo@pobox.com>
10985 * check/gst/gstutils.c: New file.
10986 (test_buffer_probe_n_times): A simple buffer probe test. More to
10987 come, foolios.
10989 * gst/gstutils.c (gst_pad_add_buffer_probe): Connect to
10990 have-data::buffer, not have-data.
10991 (gst_pad_add_event_probe): Likewise for have-data::event.
10992 (gst_pad_add_data_probe): More docs. The part about 'resolving the
10993 peer' isn't quite right yet though.
10994 (gst_pad_remove_buffer_probe, gst_pad_remove_event_probe)
10995 (gst_pad_remove_data_probe): Change to take the guint handler_id
10996 as their arg, not the function+data, which is more glib-like.
10998 * gst/gstpad.c (gst_pad_emit_have_data_signal): Add a detail to
10999 the signal emission to indicate if the data is a buffer or an
11000 event.
11001 (gst_pad_get_type): Initialize buffer and event quarks.
11002 (gst_pad_class_init): have-data is now a detailed signal, yes it
11003 is.
11005 2005-09-21 Tim-Philipp Müller <tim at centricular dot net>
11007 * gst/base/gstbasetransform.c: (gst_base_transform_transform_size):
11008 * gst/gstutils.c: (gst_util_set_value_from_string),
11009 (gst_util_set_object_arg):
11010 Don't put functional code in g_return_if_fail() or
11011 g_return_val_if_fail() statements, otherwise things will
11012 break when G_DISABLE_CHECKS is defined during compilation.
11014 2005-09-21 Stefan Kost <ensonic@users.sf.net>
11016 * docs/gst/tmpl/.cvsignore:
11017 * docs/gst/tmpl/gstvalue.sgml:
11018 * gst/gstvalue.c:
11019 * gst/gstvalue.h:
11020 inlied another one and added some obvious docs
11022 2005-09-21 Wim Taymans <wim@fluendo.com>
11024 * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
11025 (gst_fdsrc_init), (gst_fdsrc_start), (gst_fdsrc_stop),
11026 (gst_fdsrc_unlock), (gst_fdsrc_set_property),
11027 (gst_fdsrc_get_property), (gst_fdsrc_create):
11028 * gst/elements/gstfdsrc.h:
11029 Properly implement fdsrc. Removed signal and timeout,
11030 better implemented somewhere else.
11032 2005-09-21 Stefan Kost <ensonic@users.sf.net>
11034 * docs/gst/tmpl/.cvsignore:
11035 * docs/gst/tmpl/gstimplementsinterface.sgml:
11036 * gst/gstinterface.c:
11037 inlined more docs
11039 2005-09-21 Stefan Kost <ensonic@users.sf.net>
11041 * docs/gst/gstreamer-sections.txt:
11042 * docs/gst/tmpl/.cvsignore:
11043 * docs/gst/tmpl/gstenumtypes.sgml:
11044 remove obsolete doc file
11046 2005-09-21 David Schleef <ds@schleef.org>
11048 * gst/gstelementfactory.c: (gst_element_factory_make): Drink a
11049 little beer, fix a little leak.
11051 2005-09-21 Stefan Kost <ensonic@users.sf.net>
11053 * docs/gst/gstreamer-docs.sgml:
11054 * docs/gst/gstreamer-sections.txt:
11055 * docs/gst/tmpl/.cvsignore:
11056 * gst/Makefile.am:
11057 * gst/gst.h:
11058 * gst/gstbin.c:
11059 * gst/gstelement.h:
11060 * gst/gstindex.c: (gst_index_class_init):
11061 * gst/gstindex.h:
11062 * gst/gstindexfactory.c: (gst_index_factory_get_type),
11063 (gst_index_factory_class_init), (gst_index_factory_init),
11064 (gst_index_factory_finalize), (gst_index_factory_new),
11065 (gst_index_factory_destroy), (gst_index_factory_find),
11066 (gst_index_factory_create), (gst_index_factory_make):
11067 * gst/gstindexfactory.h:
11068 * gst/gstpluginfeature.c:
11069 * gst/gstpluginfeature.h:
11070 * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist):
11071 more docs inlined, splitted gstindex.{c,h}
11073 2005-09-20 Thomas Vander Stichele <thomas at apestaart dot org>
11075 * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist):
11076 fix a leak
11078 2005-09-20 Tim-Philipp Müller <tim at centricular dot net>
11080 * gst/elements/gstfilesink.c: (gst_file_sink_init):
11081 Set sync to FALSE by default.
11083 2005-09-20 Wim Taymans <wim@fluendo.com>
11085 * gst/base/gstbasesink.c: (gst_base_sink_class_init),
11086 (gst_base_sink_init):
11087 Make sync property settable from subclass.
11089 * gst/elements/gstfakesink.c: (gst_fake_sink_init),
11090 (gst_fake_sink_change_state):
11091 Set sync to FALSE by default.
11093 2005-09-20 Wim Taymans <wim@fluendo.com>
11095 * gst/gstbus.c: (poll_func), (poll_timeout), (gst_bus_poll):
11096 * tools/gst-launch.c: (main):
11097 The timeout handler should have lower priority than the source
11098 so we don't timeout before popping a message with 0 timeout.
11099 Dump error messages after failed state change.
11101 2005-09-20 Tim-Philipp Müller <tim at centricular dot net>
11103 * tools/gst-inspect.c: (print_element_properties_info):
11104 Fix two typos.
11106 2005-09-20 Thomas Vander Stichele <thomas at apestaart dot org>
11108 * check/gst/gstevent.c:
11109 * gst/elements/gstfakesink.c:
11110 * gst/elements/gstfakesink.h:
11111 remove the sync property from fakesink.
11112 has the side effect of setting sync TRUE
11113 for fakesink, which is a change. Anyone who knows how
11114 to fix this nicely in a GObject-y way, feel free.
11116 2005-09-20 Stefan Kost <ensonic@users.sf.net>
11118 * docs/gst/gstreamer-docs.sgml:
11119 remove probe refsection
11121 2005-09-20 Stefan Kost <ensonic@users.sf.net>
11123 * check/Makefile.am:
11124 disable valgrinding the controller test again
11125 * docs/gst/gstreamer-sections.txt:
11126 update for api-changes
11128 2005-09-20 Wim Taymans <wim@fluendo.com>
11130 * gst/base/gstbasesink.c: (gst_base_sink_class_init),
11131 (gst_base_sink_set_property), (gst_base_sink_get_property),
11132 (gst_base_sink_do_sync):
11133 * gst/base/gstbasesink.h:
11134 Added sync property to basesink to disable clock sync.
11136 2005-09-20 Andy Wingo <wingo@pobox.com>
11138 * gst/gstelementfactory.c (gst_element_factory_create): Avoid
11139 eating the caller's refcount.
11141 * gst/gstobject.h (GST_OBJECT_REFCOUNT)
11142 (GST_OBJECT_REFCOUNT_VALUE): Conditionally fondle the right
11143 refcount.
11145 * gst/gstconfig.h.in (GST_HAVE_GLIB_2_8):
11146 * configure.ac (GST_HAVE_GLIB_2_8_DEFINE): Make the availability
11147 of GLib 2.8 public, so we can know which refcount to check in
11148 tests.
11150 * gst/gstobject.c: Use the GST_HAVE_GLIB_2_8 define.
11151 (gst_object_init): Only set the gst refcount if we're going ahead
11152 with the refcount hack.
11154 2005-09-20 Stefan Kost <ensonic@users.sf.net>
11156 * check/gst-libs/controller.c: (plugin_init), (GST_START_TEST):
11157 * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist):
11158 more leaks plumbed, added more debug-logging
11159 * gst/gstmacros.h:
11160 whitespace fix
11162 2005-09-20 Thomas Vander Stichele <thomas at apestaart dot org>
11164 * gst/gstmessage.c:
11165 remove include of gstmemchunk.h
11167 2005-09-20 Thomas Vander Stichele <thomas at apestaart dot org>
11169 * gst/gstclock.c: (_gst_clock_id_free):
11170 Commit from the Political Party For More Atomic CVS Commits,
11171 so that people don't waste too much of their day fishing
11172 out obvious leaks out of massive commits.
11173 Oh, and fix a pretty damn obvious leak in the memchunk
11174 removal code.
11176 2005-09-20 Stefan Kost <ensonic@users.sf.net>
11178 * check/Makefile.am:
11179 * check/gst-libs/controller.c: (plugin_init), (GST_START_TEST):
11180 plug mem-leak, re-add to valgrindable tests
11182 2005-09-20 Thomas Vander Stichele <thomas at apestaart dot org>
11184 * gst/gstplugin.h:
11185 unbreak the build for those who have chronic arthritis
11186 and typing "make check" is just too taxing on the hands
11188 2005-09-20 Andy Wingo <wingo@pobox.com>
11190 * gst/gst.h: Re-add marshal to gst.h's include list -- if we
11191 really want it out, you should fix plugins at the same time.
11193 2005-09-19 Stefan Kost <ensonic@users.sf.net>
11195 * configure.ac:
11196 * docs/gst/gstreamer-sections.txt:
11197 * gst/gstobject.c:
11198 added missing symbols to api docs
11199 disable ref-count hack if we have glib >= 2.8
11201 2005-09-19 David Schleef <ds@schleef.org>
11203 * docs/gst/Makefile.am: Ignore a few more internal headers
11204 * docs/gst/gstreamer-docs.sgml: Remove old sections
11205 * docs/gst/gstreamer-sections.txt: Remove old sections
11206 * docs/gst/tmpl/gstobject.sgml: update
11207 * docs/gst/tmpl/gstplugin.sgml: update
11208 * docs/gst/tmpl/gstpluginfeature.sgml: update
11209 * docs/random/ds/0.9-suggested-changes: update.
11210 * gst/Makefile.am: remove memchunk and trashstack, since they're
11211 not used.
11212 * gst/gst.c: (gst_deinit): rename gst_registry_deinit to _cleanup
11213 * gst/gst.h: don't include some headers
11214 * gst/gstchildproxy.c: add gstmarshal.h
11215 * gst/gstclock.c: Don't use memchunks
11216 * gst/gstminiobject.c: Add some docs
11217 * gst/gstobject.c: remove DESTROYED flag, since it's redundant
11218 * gst/gstobject.h: same
11219 * gst/gstplugin.c: include gstmacros.h
11220 * gst/gstplugin.h: don't include gstmacros.h, since it's private
11221 * gst/gstquery.c: don't use memchunks
11222 * gst/gstregistry.c: rename gst_registry_deinit()
11223 * gst/gstregistry.h: same
11225 2005-09-19 David Schleef <ds@schleef.org>
11227 * docs/libs/gstreamer-libs-docs.sgml: Remove docs for getbits
11228 * docs/libs/gstreamer-libs-sections.txt:
11229 * docs/libs/tmpl/gstgetbits.sgml:
11230 * docs/libs/tmpl/gstputbits.sgml:
11232 2005-09-19 Tim-Philipp Müller <tim at centricular dot net>
11234 * win32/gstenumtypes.c:
11235 * win32/gstenumtypes.h:
11236 Update.
11238 2005-09-19 Wim Taymans <wim@fluendo.com>
11240 * gst/gstpipeline.c: (do_pipeline_seek), (gst_pipeline_send_event):
11241 Automatically PAUSE and RESUME a pipeline when a flushing seek
11242 is performed.
11244 2005-09-19 Andy Wingo <wingo@pobox.com>
11246 * gst/gstregistry.h: Spacing fixen.
11248 2005-09-19 Wim Taymans <wim@fluendo.com>
11250 * gst/base/gstbasesrc.c: (gst_base_src_change_state):
11251 Handle state change failure more correctly.
11253 2005-09-19 Thomas Vander Stichele <thomas at apestaart dot org>
11255 * check/Makefile.am:
11256 * check/pipelines/cleanup.c: (run_pipeline):
11257 * check/pipelines/simple_launch_lines.c: (run_pipeline),
11258 (GST_START_TEST):
11259 enable cleanup again after fixing the leak
11260 * docs/README:
11261 some more info on docs
11263 2005-09-19 Thomas Vander Stichele <thomas at apestaart dot org>
11265 * check/Makefile.am:
11266 re-enable tests now that leaks are plugged
11267 * check/gst/gst.c:
11268 * check/gst/gstbin.c:
11269 * check/gst/gstpipeline.c:
11270 add some more tests while fixing leaks
11271 * common/check.mak:
11272 make sure binaries are uptodate when valgrinding/gdbing
11273 * gst/gst.c:
11274 * gst/gstelementfactory.c:
11275 remove a ref too many, and add a FIXME for when we get
11276 round to disposing of classes
11277 * gst/gstplugin.c:
11278 fix the refcounting when loading a plugin from a file and
11279 the code pretends that the pointer is the same even though
11280 of course it can change
11281 * gst/gstpluginfeature.c:
11282 unref plugins marked cached (a bit confusing as a name)
11283 as the docs state should be done
11284 various doc additions to explain refcounting
11285 * gst/gstregistry.c:
11286 * gst/gstregistryxml.c:
11287 debugging
11289 2005-09-19 Wim Taymans <wim@fluendo.com>
11291 * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
11292 * check/gst/gstbus.c: (message_func_eos), (message_func_app),
11293 (send_messages), (GST_START_TEST), (gstbus_suite):
11294 * check/gst/gstpipeline.c: (GST_START_TEST):
11295 * check/pipelines/cleanup.c: (run_pipeline):
11296 * check/pipelines/simple_launch_lines.c: (run_pipeline),
11297 (GST_START_TEST):
11298 * gst/gstbus.c: (gst_bus_have_pending), (gst_bus_source_prepare),
11299 (gst_bus_source_check), (gst_bus_source_dispatch),
11300 (gst_bus_create_watch), (gst_bus_add_watch_full),
11301 (gst_bus_add_watch), (poll_func), (poll_timeout), (gst_bus_poll):
11302 * gst/gstbus.h:
11303 * tools/gst-launch.c: (event_loop):
11304 * tools/gst-md5sum.c: (event_loop):
11305 GstBusHandler -> GstBusFunc, return value has the same meaning as
11306 any other GSource (FALSE == remove source).
11307 _add_watch() and _add_watch_full() now take a MessageType mask to
11308 only handle specific types of messages.
11309 _poll() returns the GstMessage instead of the message type to avoid
11310 race conditions.
11311 _have_pending() takes a MessageType mask now too.
11312 Added testsuite for multiple bus watches.
11313 Fix testsuites and applications for new bus API.
11315 2005-09-19 Thomas Vander Stichele <thomas at apestaart dot org>
11317 * check/Makefile.am:
11318 mark a bunch of the tests as to fix until we fix them
11320 2005-09-18 Thomas Vander Stichele <thomas at apestaart dot org>
11322 * common/check.mak:
11323 use GST_PLUGIN settings for valgrind tests as well, so we're
11324 valgrinding the correct thing
11325 * gst/gst.c: (init_post):
11326 plug another leak
11328 2005-09-18 Thomas Vander Stichele <thomas at apestaart dot org>
11330 * gst/gst.c: (init_post), (gst_deinit):
11331 * gst/gstelementfactory.c: (gst_element_factory_class_init),
11332 (gst_element_factory_finalize), (gst_element_factory_cleanup):
11333 * gst/gstindex.c: (gst_index_factory_class_init),
11334 (gst_index_factory_finalize):
11335 * gst/gstobject.c: (gst_object_dispose):
11336 * gst/gstplugin.c: (gst_plugin_finalize), (gst_plugin_class_init),
11337 (gst_plugin_load_file), (gst_plugin_desc_free):
11338 * gst/gstpluginfeature.c: (gst_plugin_feature_class_init),
11339 (gst_plugin_feature_finalize):
11340 * gst/gstregistry.c: (gst_registry_class_init),
11341 (gst_registry_init), (gst_registry_finalize),
11342 (gst_registry_get_default), (gst_registry_deinit):
11343 * gst/gstregistry.h:
11344 * gst/gstregistryxml.c: (load_feature), (load_plugin):
11345 various cleanups and memleak plugging. make valgrind is happy now.
11347 2005-09-18 Thomas Vander Stichele <thomas at apestaart dot org>
11349 * common/check.mak:
11350 add a check-valgrind target
11352 2005-09-18 David Schleef <ds@schleef.org>
11354 * tools/gst-inspect.c: Revert the GOption code.
11356 2005-09-17 David Schleef <ds@schleef.org>
11358 * check/Makefile.am: Fix environment variables.
11359 * check/gst/gstplugin.c: Fix for API changes.
11360 * tools/gst-inspect.c: Fix for API changes.
11361 * tools/gst-xmlinspect.c: Fix for API changes.
11362 * gst/gstelementfactory.c:
11363 * gst/gstplugin.c:
11364 * gst/gstplugin.h:
11365 * gst/gstpluginfeature.c:
11366 * gst/gstpluginfeature.h:
11367 * gst/gstregistry.c:
11368 * gst/gstregistry.h:
11369 * gst/gstregistryxml.c:
11370 * gst/gsttypefind.c:
11371 * gst/gsttypefindfactory.c:
11372 * gst/indexers/gstfileindex.c:
11373 * gst/indexers/gstmemindex.c:
11374 * gst/schedulers/Makefile.am:
11375 Change registry to keep track of both plugins and features,
11376 removing the feature tracking from plugins themselves.
11378 2005-09-16 Thomas Vander Stichele <thomas at apestaart dot org>
11380 * check/Makefile.am:
11381 * tools/gst-register.1.in:
11382 remove gst-register
11384 2005-09-15 David Schleef <ds@schleef.org>
11386 * check/gst/gstplugin.c:
11387 * gst/gstelementfactory.c:
11388 * gst/gstplugin.c:
11389 * gst/gstpluginfeature.c:
11390 * gst/gstregistry.c:
11391 Getting tired of debugging. Disabled all the unreffing of
11392 plugins and features, which fixes the segfaults, but of
11393 course leaks like crazy. At least playbin works.
11395 2005-09-15 David Schleef <ds@schleef.org>
11397 * check/gst/gstplugin.c: (register_check_elements),
11398 (GST_START_TEST), (peek), (suggest), (gst_plugin_suite):
11399 More testing
11400 * gst/elements/gsttypefindelement.c: Fix refcounting.
11401 * gst/gsttypefind.c:
11402 * gst/gsttypefindfactory.c:
11403 * gst/gsttypefindfactory.h:
11405 2005-09-15 David Schleef <ds@schleef.org>
11407 * gst/gstindex.c: get refcounting correct.
11408 * gst/gstregistry.c: Handle the case where a feature/plugin is
11409 not found.
11411 2005-09-15 David Schleef <ds@schleef.org>
11413 * check/Makefile.am:
11414 * check/gst/gstplugin.c: Add test
11415 * gst/gstplugin.c: Fix problems noticed by testsuite
11416 * gst/gstplugin.h:
11417 * gst/gstregistry.c:
11418 * gst/gstregistry.h:
11420 2005-09-15 David Schleef <ds@schleef.org>
11422 * gst/gstplugin.c: Implement semi-decent recounting and locking
11423 in plugins and plugin features.
11424 * gst/gstplugin.h:
11425 * gst/gstpluginfeature.c:
11426 * gst/gstpluginfeature.h:
11427 * gst/gstregistry.c:
11429 2005-09-15 Michael Smith <msmith@fluendo.com>
11431 * gst/gstregistry.c: (gst_registry_get_feature_list):
11432 Implement this. Makes oggdemux work; decodebin still broken.
11434 2005-09-14 David Schleef <ds@schleef.org>
11436 * configure.ac: Add -no-undefined to GST_PLUGIN_LDFLAGS (bug
11437 #316076)
11438 * gst/base/Makefile.am: Add -no-undefined to LDFLAGS for libs
11439 * gst/check/Makefile.am:
11440 * libs/gst/controller/Makefile.am:
11441 * libs/gst/dataprotocol/Makefile.am:
11443 2005-09-14 David Schleef <ds@schleef.org>
11445 * configure.ac: Remove getbits library. Nothing uses it, and
11446 it should be in something like liboil if someone did want
11447 to use it.
11448 * libs/gst/Makefile.am:
11449 * libs/gst/getbits/Makefile.am:
11450 * libs/gst/getbits/gbtest.c:
11451 * libs/gst/getbits/getbits.c:
11452 * libs/gst/getbits/getbits.h:
11453 * libs/gst/getbits/gstgetbits_generic.c:
11454 * libs/gst/getbits/gstgetbits_i386.s:
11455 * libs/gst/getbits/gstgetbits_inl.h:
11457 2005-09-14 David Schleef <ds@schleef.org>
11459 * gst/Makefile.am: Dist glib-compat.h
11461 2005-09-14 David Schleef <ds@schleef.org>
11463 * configure.ac: Remove gst/registries, since it's no longer used.
11464 * gst/registries/Makefile.am:
11465 * gst/registries/gstlibxmlregistry.c:
11466 * gst/registries/gstlibxmlregistry.h:
11467 * gst/registries/gstxmlregistry.c:
11468 * gst/registries/gstxmlregistry.h:
11469 * gst/registries/registrytest.c:
11471 2005-09-14 David Schleef <ds@schleef.org>
11473 * gst/glib-compat.h:
11474 * gst/gstregistryxml.c:
11475 Convergence is near. Seriously.
11477 2005-09-14 David Schleef <ds@schleef.org>
11479 * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
11480 * gst/glib-compat.h:
11481 Attempt #4 to appease the buildbots.
11483 2005-09-14 David Schleef <ds@schleef.org>
11485 * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
11486 Attempt #3.
11488 2005-09-14 David Schleef <ds@schleef.org>
11490 * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
11491 Attempt #2.
11493 2005-09-14 David Schleef <ds@schleef.org>
11495 * gst/Makefile.am: Oh yeah, libgstreamer.so needs to contain
11496 the new functions.
11498 2005-09-14 David Schleef <ds@schleef.org>
11500 * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
11501 * gst/glib-compat.h: Add some functions that are in newer versions
11502 of glib than we care to require.
11503 * gst/gstregistryxml.c: Use them.
11505 2005-09-14 David Schleef <ds@schleef.org>
11507 * po/POTFILES.in: remove gst-register.c
11509 2005-09-14 David Schleef <ds@schleef.org>
11511 * docs/gst/gstreamer-docs.sgml:
11512 * docs/gst/gstreamer-sections.txt:
11513 * docs/gst/gstreamer.types:
11514 * docs/gst/tmpl/gstelement.sgml:
11515 * docs/gst/tmpl/gstplugin.sgml:
11516 * docs/gst/tmpl/gstpluginfeature.sgml:
11517 Documentation updates for registry changes.
11519 2005-09-14 David Schleef <ds@schleef.org>
11521 * gst/gstregistryxml.c: Copy g_mkdir_with_parent() from glib,
11522 because we don't require glib-2.8.
11524 2005-09-14 David Schleef <ds@schleef.org>
11526 * gst/gstregistryxml.c: Added. Essentially moved out of the
11527 registries directory.
11529 2005-09-14 David Schleef <ds@schleef.org>
11531 * check/Makefile.am:
11532 * check/generic/states.c:
11533 * gst/Makefile.am:
11534 * gst/gst.c:
11535 * gst/gst.h:
11536 * gst/gst_private.h:
11537 * gst/gstelementfactory.c:
11538 * gst/gstindex.c:
11539 * gst/gstinfo.c:
11540 * gst/gstplugin.c:
11541 * gst/gstplugin.h:
11542 * gst/gstpluginfeature.c:
11543 * gst/gstpluginfeature.h:
11544 * gst/gstregistry.c:
11545 * gst/gstregistry.h:
11546 * gst/gstregistrypool.c: remove
11547 * gst/gstregistrypool.h: remove
11548 * gst/gsttypefind.c:
11549 * gst/gsttypefindfactory.c:
11550 * gst/gsturi.c:
11551 * tools/Makefile.am:
11552 * tools/gst-compprep.c:
11553 * tools/gst-inspect.c:
11554 * tools/gst-register.c: remove
11555 * tools/gst-xmlinspect.c:
11556 Registry rewrite. Changes registry from being a file created
11557 by a tool into a simple cache file created automatically by
11558 libgstreamer. Removed gst-register (because it's no longer
11559 needed). Remove registry pools, because we only have one
11560 registry implementation (XML). Fix up other subsystems as
11561 necessary.
11563 2005-09-13 Michael Smith <msmith@fluendo.com>
11565 * gst/gstconfig.h.in:
11566 Don't Use windows linking attributes for MinGW. Fixes #316157
11568 2005-09-13 Thomas Vander Stichele <thomas at apestaart dot org>
11570 * gst/gstutils.c: (set_state_async_thread_func),
11571 (gst_element_set_state_async):
11572 Apparently people think it's better if this function doesn't
11573 try to set the state to whatever state was asked for on the first
11574 call to this function for any object. Seriously.
11576 2005-09-12 Thomas Vander Stichele <thomas at apestaart dot org>
11578 * check/gst/gstpipeline.c: (GST_START_TEST):
11579 * docs/gst/gstreamer-sections.txt:
11580 * gst/gstutils.c: (set_state_async_thread_func),
11581 (gst_element_set_state_async):
11582 * gst/gstutils.h:
11583 add a "gst_element_set_state_async" method that
11584 sets the state and starts a thread to make sure the state
11585 change completes as best as it can
11587 2005-09-12 Thomas Vander Stichele <thomas at apestaart dot org>
11589 * check/gst/gstpipeline.c: (GST_START_TEST), (gst_pipeline_suite):
11590 codify design+behaviour in testsuite after discussion
11592 2005-09-12 Thomas Vander Stichele <thomas at apestaart dot org>
11594 * docs/gst/tmpl/gstelement.sgml:
11595 * docs/manual/appendix-quotes.xml:
11596 add a quote
11597 * gst/gstelement.c: (gst_element_set_state):
11598 add some debug
11600 2005-09-12 Jan Schmidt <thaytan@mad.scientist.com>
11602 * gst/base/gstbasetransform.c: (gst_base_transform_class_init),
11603 (gst_base_transform_prepare_output_buf),
11604 (gst_base_transform_handle_buffer):
11605 * gst/elements/gstcapsfilter.c: (gst_capsfilter_transform_ip),
11606 (gst_capsfilter_prepare_buf):
11607 Remove the requirement for sub-classes to call the parent
11608 implementation of prepare_output_buffer with a wrapper function.
11610 * gst/gsttaglist.h:
11611 * gst/gsttagsetter.h:
11612 Fix #define wrapper
11614 2005-09-11 Stefan Kost <ensonic@users.sf.net>
11616 * docs/gst/gstreamer-sections.txt:
11617 more doc cleanups
11619 2005-09-11 Thomas Vander Stichele <thomas at apestaart dot org>
11621 * docs/gst/gstreamer-sections.txt:
11622 * docs/gst/tmpl/gstelement.sgml:
11623 * docs/gst/tmpl/gstplugin.sgml:
11624 * gst/gstminiobject.c:
11625 * gst/gstvalue.h:
11626 docs now stop throwing warnings
11628 2005-09-11 Thomas Vander Stichele <thomas at apestaart dot org>
11630 * docs/gst/gstreamer-sections.txt:
11631 * docs/gst/gstreamer.types:
11632 * docs/gst/tmpl/gstpad.sgml:
11633 * docs/gst/tmpl/gsttypes.sgml:
11634 * gst/base/gstadapter.h:
11635 * gst/base/gstbasesink.h:
11636 * gst/base/gstbasesrc.h:
11637 * gst/gstbin.h:
11638 * gst/gstbuffer.h:
11639 * gst/gstbus.h:
11640 * gst/gstcaps.h:
11641 * gst/gstclock.h:
11642 * gst/gstelement.h:
11643 * gst/gstevent.h:
11644 * gst/gstmessage.h:
11645 * gst/gstpad.h:
11646 * gst/gststructure.c:
11647 * gst/registries/gstlibxmlregistry.h:
11648 various documentation fixes
11650 2005-09-11 Thomas Vander Stichele <thomas at apestaart dot org>
11652 * docs/gst/gstreamer-sections.txt:
11653 * docs/gst/tmpl/gstvalue.sgml:
11654 rearrange gstvalue section
11655 * gst/gstutils.c: (gst_element_state_get_name):
11656 NONE -> VOID
11657 * gst/gstvalue.c: (_gst_value_initialize):
11658 * gst/gstvalue.h:
11659 doc updates
11661 2005-09-10 Jan Schmidt <thaytan@mad.scientist.com>
11663 * check/gst-libs/controller.c:
11664 Header include fix.
11665 * gst/base/gstbasetransform.c:
11666 (gst_base_transform_default_prepare_buf),
11667 (gst_base_transform_handle_buffer):
11668 * gst/base/gstbasetransform.h:
11669 Some more basetransform changes and fixes to enable sub-classes
11670 that modify buffer metadata only.
11671 * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
11672 (gst_capsfilter_init), (gst_capsfilter_transform_ip),
11673 (gst_capsfilter_prepare_buf):
11674 If the output pad has fixed allowed caps and input buffers
11675 don't have any, set the fixed caps on outgoing buffers.
11677 2005-09-09 Jan Schmidt <thaytan@mad.scientist.com>
11678 * check/elements/identity.c: (GST_START_TEST):
11679 Make the error a little clearer when the test fails because
11680 identity made a copy of the buffer.
11681 * docs/gst/gstreamer-sections.txt:
11682 New symbols in gstbasetransform.h
11683 * gst/base/gstbasetransform.c: (gst_base_transform_class_init),
11684 (gst_base_transform_init), (gst_base_transform_transform_size),
11685 (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
11686 (gst_base_transform_default_prepare_buf),
11687 (gst_base_transform_get_unit_size),
11688 (gst_base_transform_buffer_alloc),
11689 (gst_base_transform_handle_buffer), (gst_base_transform_chain),
11690 (gst_base_transform_change_state),
11691 (gst_base_transform_set_passthrough),
11692 (gst_base_transform_set_in_place),
11693 (gst_base_transform_is_in_place):
11694 * gst/base/gstbasetransform.h:
11695 Change BaseTransform to separate in_place operate from same_caps
11696 output. in_place implies that the element can perform the transform
11697 on incoming buffers in-place, even if the caps on the output are
11698 different.
11699 Sub-class elements can now implement special buffer allocation
11700 methods for outgoing buffers if they wish to.
11701 Big documentation addition.
11702 * gst/elements/gstcapsfilter.c: (gst_capsfilter_transform_ip):
11703 * gst/elements/gstelements.c:
11704 Changes for basetransform modifications.
11705 * gst/elements/Makefile.am:
11706 * gst/elements/gstfdsrc.c: (gst_fdsrc_init), (gst_fdsrc_create):
11707 Compile fix. Extra debug output.
11709 2005-09-09 Thomas Vander Stichele <thomas at apestaart dot org>
11711 * check/gst/gstpad.c: (GST_START_TEST), (name_is_valid),
11712 (gst_pad_suite):
11713 add tests for valid pad naming
11714 * gst/check/gstcheck.c: (gst_check_log_message_func),
11715 (gst_check_log_critical_func):
11716 add ASSERT_WARNING
11717 remove printing of code, it is fragile when the code contains
11718 % and the line number is enough info
11719 * gst/check/gstcheck.h:
11720 * gst/gstpad.c: (gst_pad_template_new):
11721 fix memleaks
11723 2005-09-09 Thomas Vander Stichele <thomas at apestaart dot org>
11725 * configure.ac:
11726 say what CHECK flags we use
11727 * docs/libs/gstreamer-libs.types:
11728 * libs/gst/controller/Makefile.am:
11729 * libs/gst/controller/gst-controller.c:
11730 * libs/gst/controller/gst-controller.h:
11731 * libs/gst/controller/gst-helper.c:
11732 * libs/gst/controller/gst-interpolation.c:
11733 * libs/gst/controller/gstcontroller.c:
11734 * libs/gst/controller/gsthelper.c:
11735 * libs/gst/controller/gstinterpolation.c:
11736 * tools/gst-inspect.c: (print_plugin_info):
11737 we don't use dashes in header names
11739 2005-09-09 Thomas Vander Stichele <thomas at apestaart dot org>
11741 * check/Makefile.am:
11742 * check/gst/.cvsignore:
11743 * check/gst/gstpipeline.c: (pop_messages), (GST_START_TEST),
11744 (gst_pipeline_suite), (main):
11745 adding a test for pipelines and state changes
11746 * gst/gstutils.c: (get_state_func):
11747 add some debugging
11748 * gstreamer.spec.in:
11749 fix up spec file
11751 2005-09-08 Michael Smith <msmith@fluendo.com>
11753 * gst/elements/gstfilesrc.c: (gst_file_src_map_region),
11754 (gst_file_src_map_small_region), (gst_file_src_create_mmap),
11755 (gst_file_src_is_seekable), (gst_file_src_get_size),
11756 (gst_file_src_start):
11757 * gst/elements/gstfilesrc.h:
11758 Various fixes for unseekable, unmmapable, and non-normal files, so
11759 that fallback to read() rather than mmap() works.
11760 * gst/gstevent.c: (gst_event_new_newsegment):
11761 Allow newsegment events with segment_start == segment_end, as will
11762 correctly happen if you use filesrc on a zero-size file, for
11763 example.
11765 2005-09-07 Jan Schmidt <thaytan@mad.scientist.com>
11767 * gst/gstplugin.c: (gst_plugin_load_file):
11768 Call g_module_close when we don't load the module
11770 * gst/registries/gstlibxmlregistry.c:
11771 (gst_xml_registry_get_property):
11772 Port leak fix from 0.8
11774 2005-09-07 Stefan Kost <ensonic@users.sf.net>
11776 * docs/gst/gstreamer-docs.sgml:
11777 * docs/gst/tmpl/.cvsignore:
11778 * docs/gst/tmpl/gsttrace.sgml:
11779 * docs/gst/tmpl/gsttrashstack.sgml:
11780 * gst/Makefile.am:
11781 * gst/gst.h:
11782 * gst/gstelement.h:
11783 * gst/gstevent.h:
11784 * gst/gstmessage.c:
11785 * gst/gstmessage.h:
11786 * gst/gsttag.c:
11787 * gst/gsttag.h:
11788 * gst/gsttaginterface.c:
11789 * gst/gsttaginterface.h:
11790 * gst/gsttaglist.c:
11791 * gst/gsttaglist.h:
11792 * gst/gsttagsetter.c:
11793 * gst/gsttagsetter.h:
11794 * gst/gsttrace.c:
11795 * gst/gsttrace.h:
11796 * gst/gsttrashstack.c:
11797 renamed gsttag -> gsttaglist, gsttaginterface -> gsttagsetter
11798 inlined docs for gsttrace, gsttrashstack
11800 2005-09-07 Stefan Kost <ensonic@users.sf.net>
11802 * gst/Makefile.am:
11803 * gst/elements/gstbufferstore.h:
11804 * gst/elements/gsttypefindelement.c:
11805 * gst/elements/gsttypefindelement.h:
11806 * gst/gst.h:
11807 * gst/gsttypefind.c:
11808 * gst/gsttypefind.h:
11809 * gst/gsttypefindfactory.c: (gst_type_find_factory_get_type),
11810 (gst_type_find_factory_class_init), (gst_type_find_factory_init),
11811 (gst_type_find_factory_dispose),
11812 (gst_type_find_factory_unload_thyself),
11813 (gst_type_find_load_plugin), (gst_type_find_factory_get_list),
11814 (gst_type_find_factory_get_caps),
11815 (gst_type_find_factory_get_extensions),
11816 (gst_type_find_factory_call_function):
11817 * gst/gsttypefindfactory.h:
11818 * gst/registries/gstlibxmlregistry.c:
11819 * gst/registries/gstxmlregistry.c:
11820 splitted gsttypefind into gsttypefind, gsttypefindfactory
11822 2005-09-07 Andy Wingo <wingo@pobox.com>
11824 * gst/base/gstbasesink.c (gst_base_sink_activate_pull): Fix a race
11825 condition whereby the pad's task function is entered before the
11826 pad_mode variable was set.
11828 2005-09-07 Jan Schmidt <thaytan@mad.scientist.com>
11830 * gst/gstpad.c: (gst_pad_alloc_buffer):
11831 Catch misbehaving pad_alloc functions that don't
11832 set up caps and do it for them.
11834 2005-09-07 Stefan Kost <ensonic@users.sf.net>
11836 * check/pipelines/simple_launch_lines.c: (run_pipeline):
11837 test for pipe!=NULL
11838 * docs/gst/tmpl/.cvsignore:
11839 * docs/gst/tmpl/gstmemchunk.sgml:
11840 * docs/gst/tmpl/gstparse.sgml:
11841 * docs/gst/tmpl/gsttaglist.sgml:
11842 * docs/gst/tmpl/gsttagsetter.sgml:
11843 * docs/gst/tmpl/gsttypefind.sgml:
11844 * docs/gst/tmpl/gsttypefindfactory.sgml:
11845 * gst/gstmemchunk.c:
11846 * gst/gstparse.c:
11847 * gst/gsttag.c:
11848 * gst/gsttaginterface.c:
11849 * gst/gsttypefind.c:
11850 * gst/gsttypefind.h:
11851 inlined more docs
11853 === release 0.9.2 ===
11855 2005-09-06 Thomas Vander Stichele <thomas at apestaart dot org>
11857 * NEWS:
11858 * RELEASE:
11859 * configure.ac:
11860 releasing 0.9.2, "South"
11862 2005-09-05 Andy Wingo <wingo@pobox.com>
11864 * gst/registries/gstxmlregistry.h:
11865 * gst/registries/gstxmlregistry.c: Um... resurrect...
11867 * gst/registries/gstxmlregistry.h:
11868 * gst/registries/gstxmlregistry.c: and update to newer API.
11869 Incidentally they should be a bit faster now that they don't have
11870 to parse the caps.
11872 2005-09-05 Andy Wingo <wingo@pobox.com>
11874 * gst/registries/gstxmlregistry.h:
11875 * gst/registries/gstxmlregistry.c: Remove from CVS, they were
11876 replaced by the libxml registry a while back
11878 2005-09-03 Thomas Vander Stichele <thomas at apestaart dot org>
11880 * docs/gst/tmpl/gstplugin.sgml:
11881 * gst/elements/gstelements.c:
11882 * gst/gst.c:
11883 * gst/gstplugin.c: (gst_plugin_register_func),
11884 (gst_plugin_desc_copy), (gst_plugin_desc_free),
11885 (gst_plugin_get_source):
11886 * gst/gstplugin.h:
11887 * gst/registries/gstlibxmlregistry.c: (load_plugin),
11888 (gst_xml_registry_save_plugin):
11889 * gst/registries/gstxmlregistry.c: (gst_xml_registry_parse_plugin),
11890 (gst_xml_registry_save_plugin):
11891 * tools/gst-inspect.c: (print_plugin_info):
11892 add a "source" plugin description field, to represent the source
11893 module this plugin is a part of. By default GST_PLUGIN_DEFINE
11894 will set it to PACKAGE, which is automake's idea of the name of
11895 the source project.
11897 2005-09-03 Thomas Vander Stichele <thomas at apestaart dot org>
11899 * Makefile.am:
11900 * autogen.sh:
11901 * configure.ac:
11902 * docs/Makefile.am:
11903 * docs/faq/Makefile.am:
11904 * docs/gst/tmpl/gstelement.sgml:
11905 * docs/gst/tmpl/gsttypes.sgml:
11906 * docs/htmlinstall.mak:
11907 * docs/manual/Makefile.am:
11908 * docs/pwg/Makefile.am:
11909 reorganize doc build a little
11910 split out docbook and gtk-doc stuff
11911 have two separate --enable's and enable them through autogen
11912 but disable by default in configure (to be similar to other
11913 projects)
11914 * gstreamer.spec.in:
11915 clean up docs install
11916 * po/af.po:
11917 * po/az.po:
11918 * po/ca.po:
11919 * po/cs.po:
11920 * po/de.po:
11921 * po/en_GB.po:
11922 * po/fr.po:
11923 * po/it.po:
11924 * po/nb.po:
11925 * po/nl.po:
11926 * po/ru.po:
11927 * po/sq.po:
11928 * po/sr.po:
11929 * po/sv.po:
11930 * po/tr.po:
11931 * po/uk.po:
11932 * po/vi.po:
11933 translation updates
11935 2005-09-03 Tim-Philipp Müller <tim at centricular dot net>
11937 * gst/base/gstbasesink.c: (gst_base_sink_pad_buffer_alloc):
11938 Add comment.
11940 * gst/elements/gstfakesink.c: (gst_fake_sink_init),
11941 (gst_fake_sink_change_state):
11942 Make state change function thread-safe.
11944 * gst/gstpad.c: (gst_pad_alloc_buffer):
11945 Set offset on generic buffer allocated by fallback.
11947 2005-09-03 Stefan Kost <ensonic@users.sf.net>
11949 * docs/gst/gstreamer-sections.txt:
11950 * docs/gst/tmpl/gstelement.sgml:
11951 * gst/gstpad.c:
11952 * libs/gst/controller/gst-controller.c:
11953 (gst_controlled_property_set_interpolation_mode),
11954 (gst_controlled_property_new),
11955 (gst_controller_find_controlled_property):
11956 run the wingo-magic script against the docs
11958 2005-09-02 Stefan Kost <ensonic@users.sf.net>
11960 * docs/gst/gstreamer-docs.sgml:
11961 * docs/gst/gstreamer-sections.txt:
11962 * docs/gst/tmpl/.cvsignore:
11963 * docs/gst/tmpl/gstelementdetails.sgml:
11964 * docs/gst/tmpl/gstelementfactory.sgml:
11965 * gst/gst.c:
11966 * gst/gstbus.c:
11967 * gst/gstelementfactory.c:
11968 * gst/gstelementfactory.h:
11969 merged elementdetails docs into elementfactory docs
11970 inlined both
11972 2005-09-02 Andy Wingo <wingo@pobox.com>
11974 * gst/gstelement.h: Add magical pixie dust to make glib-mkenums
11975 consider this enum an enum and not a flags.
11977 2005-09-02 Stefan Kost <ensonic@users.sf.net>
11979 * docs/gst/gstreamer-docs.sgml:
11980 * docs/gst/tmpl/.cvsignore:
11981 * docs/gst/tmpl/gstghostpad.sgml:
11982 * docs/gst/tmpl/gstiterator.sgml:
11983 * docs/gst/tmpl/gstmacros.sgml:
11984 * docs/gst/tmpl/gstrealpad.sgml:
11985 * docs/gst/tmpl/gstregistry.sgml:
11986 * docs/gst/tmpl/gstregistrypool.sgml:
11987 * docs/gst/tmpl/gststructure.sgml:
11988 * docs/gst/tmpl/gstsystemclock.sgml:
11989 * docs/gst/tmpl/gsttrace.sgml:
11990 * gst/gstghostpad.c:
11991 * gst/gstmacros.h:
11992 * gst/gstmemchunk.c:
11993 * gst/gstmemchunk.h:
11994 * gst/gstqueue.c:
11995 * gst/gstregistry.c:
11996 * gst/gstregistrypool.c:
11997 * gst/gststructure.c:
11998 * gst/gstsystemclock.c:
11999 more docs inlined
12001 2005-09-02 Andy Wingo <wingo@pobox.com>
12003 * gst/gstelement.h (GstState): Renamed from GstElementState,
12004 changed to be a normal enum instead of flags.
12005 (GstStateChangeReturn): Renamed from GstElementStateReturn, names
12006 munged to be GST_STATE_CHANGE_*.
12007 (GST_STATE_CHANGE): Renamed from GST_STATE_TRANSITION, updated to
12008 work with the new state representation.
12009 (GstStateChange): New enumeration of possible state transitions.
12010 Replaces GST_STATE_FOO_TO_BAR with GST_STATE_CHANGE_FOO_TO_BAR.
12011 (GstElementClass::change_state): Pass the GstStateChange along as
12012 an argument. Helps language bindings, so they don't have to use
12013 tricky lock-needing macros like GST_STATE_CHANGE ().
12015 * scripts/update-states (file): New script. Run it on a file to
12016 update it for state naming and API changes. Updates files in
12017 place.
12019 * All files updated for the new API.
12021 2005-09-02 Thomas Vander Stichele <thomas at apestaart dot org>
12023 * gst/gsttrace.c: (gst_trace_flush), (gst_trace_text_flush):
12024 * gst/gstutils.c: (gst_util_set_value_from_string),
12025 (gst_util_set_object_arg):
12026 fix a bunch of unchecked return values
12027 * tools/gst-complete.c: (main):
12028 * gstreamer.spec.in:
12029 clean up a little
12031 2005-09-01 Wim Taymans <wim@fluendo.com>
12033 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
12034 (gst_base_sink_event), (gst_base_sink_do_sync),
12035 (gst_base_sink_handle_event):
12036 * gst/base/gstbasesink.h:
12037 Handle newsegments more correctly.
12039 * gst/gstbus.c:
12040 Fix docs.
12042 * gst/gstevent.c: (gst_event_new_newsegment):
12043 A newsegment cannot have a start_time of -1
12045 2005-09-01 Tim-Philipp Müller <tim at centricular dot net>
12047 * win32/gstenumtypes.c:
12048 * win32/gstenumtypes.h:
12049 Update
12051 2005-08-31 Stefan Kost <ensonic@users.sf.net>
12053 * libs/gst/controller/gst-controller.c:
12054 (gst_controlled_property_set_interpolation_mode),
12055 (gst_controlled_property_new):
12056 fixed boolean again
12058 2005-08-31 Thomas Vander Stichele <thomas at apestaart dot org>
12060 * docs/faq/gst-uninstalled:
12061 add -good
12062 * gst/gstevent.c:
12063 * gst/gstevent.h:
12064 remove wrong docs
12065 * gst/gstutils.c: (gst_element_link_filtered):
12066 * gst/gstutils.h:
12067 add gst_element_link_filtered
12069 2005-08-31 Stefan Kost <ensonic@users.sf.net>
12071 * docs/gst/gstreamer-docs.sgml:
12072 * docs/gst/gstreamer-sections.txt:
12073 * docs/gst/tmpl/.cvsignore:
12074 * docs/gst/tmpl/gsterror.sgml:
12075 * docs/gst/tmpl/gstfilter.sgml:
12076 * docs/gst/tmpl/gsturihandler.sgml:
12077 * docs/gst/tmpl/gsturitype.sgml:
12078 * docs/gst/tmpl/gstutils.sgml:
12079 * docs/gst/tmpl/gstxml.sgml:
12080 * gst/gsterror.c:
12081 * gst/gsterror.h:
12082 * gst/gstfilter.c:
12083 * gst/gsturi.c:
12084 * gst/gsturitype.c:
12085 * gst/gstutils.c:
12086 * gst/gstxml.c:
12087 inlined more docs, fixed double id-ref
12089 2005-08-31 Wim Taymans <wim@fluendo.com>
12091 * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
12092 (gst_base_transform_handle_buffer):
12093 Passthrough elements don't need the caps as they don't care.
12095 2005-08-31 Wim Taymans <wim@fluendo.com>
12097 * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
12098 (gst_base_transform_handle_buffer), (gst_base_transform_chain):
12099 Don't leak refcounts on buffers.
12101 2005-08-31 Wim Taymans <wim@fluendo.com>
12103 * gst/base/gstbasetransform.c: (gst_base_transform_configure_caps),
12104 (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
12105 (gst_base_transform_chain), (gst_base_transform_change_state):
12106 * gst/base/gstbasetransform.h:
12107 Handle the case where we are not negotiated more gracefully.
12109 2005-08-31 Tim-Philipp Müller <tim at centricular dot net>
12111 * gst/elements/gstfilesrc.c: (gst_mmap_buffer_init),
12112 (gst_file_src_map_region):
12113 Set READONLY flag on mmap'ed buffers, otherwise
12114 gst_buffer_make_writable() won't work properly (#314708).
12116 2005-08-31 Wim Taymans <wim@fluendo.com>
12118 * gst/base/gstbasetransform.c: (gst_base_transform_handle_buffer):
12119 passthrough elements can even do inplace on non writable
12120 buffers (as they don't touch them).
12122 2005-08-31 Stefan Kost <ensonic@users.sf.net>
12124 * check/gst-libs/controller.c: (gst_test_mono_source_get_property),
12125 (gst_test_mono_source_set_property),
12126 (gst_test_mono_source_class_init), (GST_START_TEST),
12127 (gst_controller_suite):
12128 more tests (hehe I have the most)
12129 * gst/gstbus.c:
12130 describe popping messages whenusing mulltiple sources
12131 * libs/gst/controller/gst-controller.c:
12132 (gst_controlled_property_set_interpolation_mode),
12133 (gst_controlled_property_new):
12134 * libs/gst/controller/gst-controller.h:
12135 * libs/gst/controller/gst-interpolation.c:
12136 implement boolean properties
12138 2005-08-31 Wim Taymans <wim@fluendo.com>
12140 * gst/gstminiobject.c: (gst_mini_object_ref):
12141 Cannot assert that the refcount has to be positive
12142 since a disposed object can be resurrected.
12144 2005-08-31 Wim Taymans <wim@fluendo.com>
12146 * gst/gstpad.c: (gst_pad_init):
12147 Revert change, need to first fix badly behaving
12148 apps.
12150 2005-08-30 Wim Taymans <wim@fluendo.com>
12152 * check/elements/fakesrc.c: (setup_fakesrc):
12153 * check/elements/identity.c: (setup_identity):
12154 Activate pads before using them.
12156 2005-08-30 Wim Taymans <wim@fluendo.com>
12158 * gst/base/gstadapter.c: (gst_adapter_flush):
12159 Flushing out 0 bytes is ok for this function.
12161 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
12162 no newsegment gives a warning and sets the start/stop to
12163 invalid.
12165 * gst/base/gstbasetransform.c: (gst_base_transform_change_state),
12166 (gst_base_transform_set_passthrough):
12167 Some debug info.
12169 * gst/gstminiobject.c: (gst_mini_object_ref):
12170 Check refcount here too.
12172 * gst/gstpad.c: (gst_pad_init):
12173 Pads are initially flushing and refusing data.
12175 * gst/gstutils.c: (gst_element_link_pads_filtered):
12176 When adding a capsfilter element make sure it has the
12177 same state as the parent bin.
12179 2005-08-30 Stefan Kost <ensonic@users.sf.net>
12181 * docs/gst/tmpl/.cvsignore:
12182 * docs/gst/tmpl/gstformat.sgml:
12183 * docs/gst/tmpl/gstversion.sgml:
12184 * gst/gstbus.h:
12185 * gst/gstformat.c:
12186 * gst/gstformat.h:
12187 * gst/gstversion.h.in:
12188 more docs and two more inlined
12190 2005-08-30 Wim Taymans <wim@fluendo.com>
12192 * gst/elements/gstfilesink.c: (gst_file_sink_class_init):
12193 Don't sync to clock.
12195 2005-08-30 Stefan Kost <ensonic@users.sf.net>
12197 * docs/gst/gstreamer-sections.txt:
12198 ultral33t func10ns deserve to appear in the docs actually
12199 * docs/gst/tmpl/.cvsignore:
12200 * docs/gst/tmpl/gstcompat.sgml:
12201 * docs/gst/tmpl/gstconfig.sgml:
12202 * gst/check/gstcheck.c:
12203 * gst/gstcompat.h:
12204 * gst/gstconfig.h.in:
12205 inlined more docs
12207 2005-08-30 Stefan Kost <ensonic@users.sf.net>
12209 * docs/gst/tmpl/.cvsignore:
12210 * docs/gst/tmpl/gstquery.sgml:
12211 * docs/gst/tmpl/gstutils.sgml:
12212 * gst/gstquery.c:
12213 * gst/gstquery.h:
12214 inlined and extended docs
12216 2005-08-30 Stefan Kost <ensonic@users.sf.net>
12218 * check/gst-libs/controller.c: (GST_START_TEST),
12219 (gst_controller_suite):
12220 more tests
12221 * docs/gst/tmpl/gstutils.sgml:
12222 * docs/libs/gstreamer-libs-sections.txt:
12223 * docs/libs/tmpl/gstdataprotocol.sgml:
12224 include path fixes
12225 * examples/controller/audio-example.c: (main):
12226 controller example works now
12227 * gst/gstclock.h:
12228 doc fixes
12229 * tools/gst-inspect.c: (print_element_properties_info):
12230 show param spec flags
12232 2005-08-29 Andy Wingo <wingo@pobox.com>
12234 * gst/gstutils.c (gst_util_uint64_scale): New 3733t funct10n.
12236 2005-08-28 Andy Wingo <wingo@pobox.com>
12238 * gst/gstutils.h (GST_BOILERPLATE_FULL): Prototype instance_init
12239 as having two arguments instead of just one. Allows superclasses
12240 to access information on subclasses -- see the terrible for() loop
12241 in gtype.c:g_type_create_instance for the reason why. All callers
12242 changed.
12244 2005-08-27 Stefan Kost <ensonic@users.sf.net>
12246 * docs/design/part-messages.txt:
12247 update info
12248 * docs/gst/tmpl/.cvsignore:
12249 * docs/gst/tmpl/gstcaps.sgml:
12250 * docs/gst/tmpl/gstclock.sgml:
12251 * gst/gstbus.c:
12252 * gst/gstcaps.c:
12253 * gst/gstcaps.h:
12254 * gst/gstclock.c:
12255 * gst/gstclock.h:
12256 * gst/gstmessage.c:
12257 added descriptions for bus and message
12258 inline caps and clock docs
12260 2005-08-27 Stefan Kost <ensonic@users.sf.net>
12262 * gst/gstmessage.c:
12263 * gst/gstmessage.h:
12264 doc fixes
12266 2005-08-27 Stefan Kost <ensonic@users.sf.net>
12268 * gst/base/gstbasetransform.c: (gst_base_transform_transform_size):
12269 fix div-by-zero
12271 2005-08-26 Andy Wingo <wingo@pobox.com>
12273 * check/pipelines/simple_launch_lines.c (run_pipeline): Check
12274 element_set_state's return val.
12275 (test_2_elements): Add test that's been disabled for months.
12277 * gst/elements/gstfakesink.c: Cleanups. Add can-activate-push and
12278 can-activate-pull properties.
12280 * gst/elements/gstfakesrc.c: Cleanups. Add can-activate-push and
12281 can-activate-pull properties. Implement is_seekable so fakesrc can
12282 operate in pull mode.
12284 * gst/base/gstbasesink.c (GstBaseSink): Remove has-loop, has-chain
12285 properties.
12286 (gst_base_sink_activate, gst_base_sink_activate_pull)
12287 (gst_base_sink_activate_push): Make activation mode choosing work.
12288 Cleanups.
12289 (gst_base_sink_chain, gst_base_sink_loop): Assert activation mode
12290 is right. Make pull mode work. Post an eos before pausing in pull
12291 mode.
12292 (gst_base_sink_change_state): Pay attention to the core's
12293 change_state() return val.
12295 * gst/base/gstbasesrc.c (GstBaseSrc): Remove has-loop,
12296 has-getrange properties. Cleanups.
12298 * gst/base/gstbasesrc.h (GstBaseSrc): Remove has_loop,
12299 has_getrange and replace with can_activate_pull and
12300 can_activate_push.
12302 * gst/base/gstbasesink.h (GstBaseSink): Rearrange fields, add
12303 locking comments. Remove has_loop, has_chain and replace with
12304 can_activate_pull and can_activate_push.
12306 2005-08-26 Jan Schmidt <thaytan@mad.scientist.com>
12308 * configure.ac:
12309 * examples/Makefile.am:
12310 * examples/metadata/Makefile.am:
12311 * examples/metadata/read-metadata.c: (message_loop),
12312 (have_pad_handler), (make_pipeline), (print_tag), (main):
12313 Add metadata reading example that loops over a list of filenames,
12314 dumping any tags found.
12316 * gst/gstbus.c: (gst_bus_dispose):
12317 * gst/gstelement.c: (gst_element_dispose):
12318 Release a few potentially-held references in dispose.
12320 2005-08-26 Stefan Kost <ensonic@users.sf.net>
12322 * docs/gst/tmpl/gstminiobject.sgml:
12323 do *not* add tmpl/*.sgml files to CVS!
12325 2005-08-26 Stefan Kost <ensonic@users.sf.net>
12327 * libs/gst/bytestream/.cvsignore:
12328 * libs/gst/bytestream/Makefile.am:
12329 * libs/gst/bytestream/adapter.c:
12330 * libs/gst/bytestream/adapter.h:
12331 * libs/gst/bytestream/bytestream.c:
12332 * libs/gst/bytestream/bytestream.h:
12333 * libs/gst/bytestream/filepad.c:
12334 * libs/gst/bytestream/filepad.h:
12335 removing obsolete files
12337 2005-08-26 Stefan Kost <ensonic@users.sf.net>
12339 * docs/gst/gstreamer-docs.sgml:
12340 * docs/libs/gstreamer-libs-docs.sgml:
12341 disabed additional index entries again, as this makes docs-gen just
12342 slow and they aren't useful yet
12343 * docs/libs/gstreamer-libs-sections.txt:
12344 little -section.txt cleanup for libs
12346 2005-08-26 Thomas Vander Stichele <thomas at apestaart dot org>
12348 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
12349 * gst/base/gstbasetransform.c: (gst_base_transform_transform_size),
12350 fix up some debugging
12351 (gst_base_transform_get_unit_size),
12352 (gst_base_transform_buffer_alloc), (gst_base_transform_event),
12353 (gst_base_transform_handle_buffer):
12354 * gst/base/gstbasetransform.h:
12355 handle and store timed NEWSEGMENT events so that subclasses that
12356 calculate time by counting samples have a segment_start time they
12357 need to add to their timestamps - see audioresample
12359 2005-08-26 Stefan Kost <ensonic@users.sf.net>
12361 * gst/gstbin.h:
12362 removed ';' from the end of macro defs
12363 * docs/gst/gstreamer-docs.sgml:
12364 * docs/gst/gstreamer-sections.txt:
12365 * docs/gst/tmpl/.cvsignore:
12366 * gst/gstbus.h:
12367 * gst/gstelement.c: (gst_element_class_init),
12368 (gst_element_set_state), (activate_pads),
12369 (gst_element_save_thyself):
12370 * gst/gstevent.c: (gst_event_new_newsegment):
12371 * gst/gstevent.h:
12372 * gst/gstiterator.c:
12373 * gst/gstiterator.h:
12374 * gst/gstpad.c:
12375 * gst/gstprobe.h:
12376 * gst/gstutils.c: (gst_pad_query_convert):
12377 * gst/gstutils.h:
12378 fixed parameter name mismatches between source, header and docs
12379 added some more docs, resolved the last batch of unused elements in
12380 docs (now someone needs to doc them)
12382 2005-08-25 Thomas Vander Stichele <thomas at apestaart dot org>
12384 * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_rebuild):
12385 * gst/registries/gstxmlregistry.c: (gst_xml_registry_rebuild):
12386 don't walk through the plugins backwards. Where is all this
12387 reversed logic coming from ?
12389 2005-08-25 Wim Taymans <wim@fluendo.com>
12391 * gst/base/gstbasetransform.c: (gst_base_transform_init),
12392 (gst_base_transform_transform_size),
12393 (gst_base_transform_configure_caps),
12394 (gst_base_transform_get_unit_size),
12395 (gst_base_transform_buffer_alloc),
12396 (gst_base_transform_change_state):
12397 * gst/base/gstbasetransform.h:
12398 Cache caps unit_size.
12399 Make sure we cannot negotiate up and downstream at the
12400 same time.
12402 2005-08-25 Thomas Vander Stichele <thomas at apestaart dot org>
12404 * gst/gst.c: (init_pre), (init_post):
12405 register the installed plugin path after the env var
12406 * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_save):
12407 * gst/registries/gstxmlregistry.c: (gst_xml_registry_save):
12408 don't reverse order of paths; conserve the order of GST_PLUGIN_PATH
12409 directories, so the tests can prefer uninstalled over installed
12411 2005-08-25 Thomas Vander Stichele <thomas at apestaart dot org>
12413 * gst/base/gstbasetransform.h:
12414 comment
12415 * gst/gstpad.c:
12416 add to docs
12418 2005-08-25 Wim Taymans <wim@fluendo.com>
12420 * gst/gstbin.c: (bin_bus_handler):
12421 Be a bit more conservative about the posted message.
12423 * gst/gstbus.c: (gst_bus_post):
12424 Some cleanups, warn wrong return values.
12426 2005-08-25 Jan Schmidt <thaytan@mad.scientist.com>
12428 * check/gst/gstbin.c: (GST_START_TEST):
12429 * gst/gstbin.c: (bin_bus_handler):
12430 * gst/gstmessage.c: (gst_message_finalize), (_gst_message_copy),
12431 (gst_message_new), (gst_message_new_eos), (gst_message_new_error),
12432 (gst_message_new_warning), (gst_message_new_tag),
12433 (gst_message_new_state_changed), (gst_message_new_segment_start),
12434 (gst_message_new_segment_done), (gst_message_new_custom):
12435 * gst/gstmessage.h:
12436 * tools/gst-launch.c: (event_loop):
12437 * tools/gst-md5sum.c: (event_loop):
12438 Revert unpopular change for GST_MESSAGE_SRC to GObject.
12440 2005-08-25 Wim Taymans <wim@fluendo.com>
12442 * check/generic/states.c: (GST_START_TEST):
12443 Cleanup can be done at the end.
12445 * gst/gsttask.c: (gst_task_get_type), (gst_task_finalize),
12446 (gst_task_func), (gst_task_cleanup_all), (gst_task_set_lock),
12447 (gst_task_get_state), (gst_task_start), (gst_task_pause):
12448 Oh boy.. Thanks for finding this, Thomas.
12450 2005-08-25 Stefan Kost <ensonic@users.sf.net>
12452 * docs/gst/gstreamer.types:
12453 added missing types
12455 2005-08-25 Stefan Kost <ensonic@users.sf.net>
12457 * docs/gst/gstreamer-docs.sgml:
12458 * docs/gst/gstreamer-sections.txt:
12459 * docs/gst/tmpl/.cvsignore:
12460 * gst/gstbin.c:
12461 * gst/gstiterator.c:
12462 * gst/gstutils.c:
12463 * gst/registries/gstxmlregistry.h:
12464 added missing classes and symbols (123 more to go)
12465 removed removed symbols from section file
12466 fixed many doc-comments
12468 2005-08-24 Wim Taymans <wim@fluendo.com>
12470 * check/generic/states.c: (GST_START_TEST):
12471 Make sure all tasks are stopped.
12473 * check/gst/gstbin.c: (GST_START_TEST):
12474 Unref after usage for proper valgrinding.
12476 * gst/gstpad.c: (gst_pad_finalize), (gst_pad_stop_task):
12477 Really wait for the task to stop before destroying the
12478 mutex.
12480 * gst/gstqueue.c: (gst_queue_sink_activate_push),
12481 (gst_queue_src_activate_push):
12482 Small cleanups. Don't stop the task when we did not start
12483 it.
12485 * gst/gsttask.c: (gst_task_get_type), (gst_task_init),
12486 (gst_task_func), (gst_task_cleanup_all), (gst_task_set_lock),
12487 (gst_task_get_state), (gst_task_start), (gst_task_pause),
12488 (gst_task_join):
12489 * gst/gsttask.h:
12490 Protect the stream lock with the object lock.
12491 Disallow setting the stream lock when running.
12492 Add cleanup_all to wait for the threadpool to finish.
12493 Remove code to autoallocate a mutex if none was provided.
12494 Add _join() to wait for a task to stop.
12495 Protect the thread pool with a global lock.
12497 2005-08-24 Wim Taymans <wim@fluendo.com>
12499 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
12500 (gst_base_sink_get_times), (gst_base_sink_do_sync),
12501 (gst_base_sink_handle_buffer), (gst_base_sink_change_state):
12502 * gst/base/gstbasesink.h:
12503 Handle newsegment events correctly.
12504 Drop buffers out of the segment range.
12506 2005-08-22 Andy Wingo <wingo@pobox.com>
12508 * gst/gstutils.h (GST_BOILERPLATE_WITH_INTERFACE): New ghetto
12509 macro, implements an interface and gstimplementsinterface for a
12510 new type.
12512 2005-08-24 Thomas Vander Stichele <thomas at apestaart dot org>
12514 * check/Makefile.am:
12515 * check/generic/states.c: (GST_START_TEST), (states_suite), (main):
12516 add a test that does a bunch of state changes on elements
12517 needs some fixing for valgrind
12518 * check/states/sinks.c: (gst_object_suite):
12519 whitespace
12520 * gst/gstcaps.h:
12521 add prototype for gst_caps_is_equal_fixed
12522 * gst/gstplugin.c:
12523 * gst/gstregistrypool.c:
12524 doc fixes
12526 2005-08-24 Andy Wingo <wingo@pobox.com>
12528 * gst/gstquery.c (gst_query_new_convert): Spew if we try to
12529 convert a negative value. Doesn't make much sense. Mostly this is
12530 here to force callers to ensure -1 maps to -1.
12532 2005-08-24 Jan Schmidt <thaytan@mad.scientist.com>
12534 * docs/pwg/advanced-types.xml:
12535 Well done to Michael for catching my deliberate introduction
12536 of this spelling mistake.
12537 * gst/gstbin.c: (gst_bin_remove_func), (bin_bus_handler):
12538 * gst/gstelement.h:
12539 Add GST_ELEMENT_UNPARENTING to prevent races so that we can
12540 unlink pads before removing the element from the bin.
12542 2005-08-24 Andy Wingo <wingo@pobox.com>
12544 * gst/gst.c (parse_debug_list): Accept e.g. GST_DEBUG=4 to mean
12545 the same thing as GST_DEBUG=*:4.
12546 (parse_debug_level, parse_debug_category): New helper parsers.
12548 2005-08-24 Thomas Vander Stichele <thomas at apestaart dot org>
12550 * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
12551 (gst_base_transform_transform_size), (gst_base_transform_getcaps),
12552 (gst_base_transform_setcaps), (gst_base_transform_get_unit_size),
12553 (gst_base_transform_buffer_alloc),
12554 (gst_base_transform_handle_buffer):
12555 use gboolean return values and pointers to size so we can use the
12556 full GST_BUFFER_SIZE range (guint) for buffer sizes
12557 use GstPadDirection for transform_caps
12558 * gst/base/gstbasetransform.h:
12559 rename get_size to get_unit_size since that's what it is
12560 * gst/elements/gstcapsfilter.c: (gst_capsfilter_transform_caps):
12561 use GstPadDirection for transform_caps
12562 * gst/gstbuffer.c: (gst_buffer_new_and_alloc):
12563 * gst/gstutils.h:
12564 cleanup and debugging
12566 2005-08-24 Stefan Kost <ensonic@users.sf.net>
12568 * gst/gstelement.c: (gst_element_class_init),
12569 (gst_element_set_state), (activate_pads),
12570 (gst_element_save_thyself):
12571 * tools/gst-compprep.c: (main):
12572 * tools/gst-inspect.c: (print_element_properties_info):
12573 * tools/gst-xmlinspect.c: (print_element_properties):
12574 Fixed long standing mem-leak
12576 2005-08-24 Jan Schmidt <thaytan@mad.scientist.com>
12578 * check/gst/gstbin.c: (GST_START_TEST):
12579 * gst/gstbin.c: (bin_bus_handler):
12580 * gst/gstmessage.c: (gst_message_finalize), (_gst_message_copy),
12581 (gst_message_new), (gst_message_new_eos), (gst_message_new_error),
12582 (gst_message_new_warning), (gst_message_new_tag),
12583 (gst_message_new_state_changed), (gst_message_new_segment_start),
12584 (gst_message_new_segment_done), (gst_message_new_custom):
12585 * gst/gstmessage.h:
12586 * tools/gst-launch.c: (event_loop):
12587 * tools/gst-md5sum.c: (event_loop):
12588 Change GST_MESSAGE_SRC to be a GObject rather than a GstObject, so
12589 that applications can sensibly post custom messages with references
12590 to their own objects.
12592 2005-08-24 Andy Wingo <wingo@pobox.com>
12594 * gst/gstpad.c (gst_pad_fixate_caps): Check if the caps is fixed
12595 already.
12597 2005-08-24 Wim Taymans <wim@fluendo.com>
12599 * gst/base/gstbasetransform.c: (gst_base_transform_init),
12600 (gst_base_transform_transform_caps),
12601 (gst_base_transform_transform_size),
12602 (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
12603 (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
12604 (gst_base_transform_handle_buffer):
12605 * gst/base/gstbasetransform.h:
12606 Many fixes and new features added by Thomas. Can now also do
12607 transforms with variable sizes and a custom fixate_caps function.
12609 2005-08-24 Wim Taymans <wim@fluendo.com>
12611 * gst/gstbuffer.c: (gst_buffer_new_and_alloc):
12612 Some debugging.
12614 * gst/gstclock.h:
12615 Cast to ClockTime before formatting to time.
12617 * gst/gstutils.h:
12618 Cleanups.
12620 2005-08-24 Stefan Kost <ensonic@users.sf.net>
12622 * check/gst-libs/controller.c: (GST_START_TEST),
12623 (gst_controller_suite):
12624 * docs/gst/tmpl/gstcaps.sgml:
12625 * docs/gst/tmpl/gstghostpad.sgml:
12626 * docs/gst/tmpl/gstquery.sgml:
12627 * docs/gst/tmpl/gstutils.sgml:
12628 * libs/gst/controller/gst-helper.c: (gst_object_set_controller),
12629 (gst_object_sink_values), (gst_object_get_value_arrays),
12630 (gst_object_get_value_array):
12631 gracefully handle helper method calls to objects that are not beeing
12632 controlled, added test case for that
12634 2005-08-23 Wim Taymans <wim@fluendo.com>
12636 * gst/gstevent.c: (_gst_event_copy), (gst_event_new_custom),
12637 (gst_event_new_newsegment), (gst_event_parse_newsegment),
12638 (gst_event_new_tag), (gst_event_parse_tag), (gst_event_new_qos),
12639 (gst_event_parse_qos), (gst_event_new_seek),
12640 (gst_event_parse_seek):
12641 * gst/gstevent.h:
12642 Some more debugging output and doc cleanups.
12644 * gst/gstqueue.c: (gst_queue_handle_sink_event):
12645 Fix possible deadlock.
12647 2005-08-23 Stefan Kost <ensonic@users.sf.net>
12649 * docs/gst/gstreamer-docs.sgml:
12650 * docs/gst/gstreamer-sections.txt:
12651 * docs/gst/gstreamer.types:
12652 * docs/gst/tmpl/.cvsignore:
12653 * gst/gstbin.h:
12654 * gst/gstbus.c:
12655 * gst/gstelement.c:
12656 * gst/gstevent.h:
12657 added 100 symbols from gstreamer-unused.txt to the right sections
12658 fixed more broken comments
12659 added GstBus to docs
12661 2005-08-23 Stefan Kost <ensonic@users.sf.net>
12663 * docs/gst/gstreamer-sections.txt:
12664 * docs/gst/tmpl/.cvsignore:
12665 * docs/gst/tmpl/gstbin.sgml:
12666 * docs/gst/tmpl/gstbuffer.sgml:
12667 * gst/base/gstbasesrc.c:
12668 * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init):
12669 * gst/gstbuffer.c:
12670 * gst/gstbuffer.h:
12671 * tools/gst-launch.1.in:
12672 inlined more doc comments, added missing comments and fixed comments
12673 fixed typos
12675 2005-08-23 Thomas Vander Stichele <thomas at apestaart dot org>
12677 * gst/gstbuffer.c: (gst_buffer_new_and_alloc):
12678 some debugging
12679 * gst/gstcaps.h:
12680 whitespace fixes
12681 * gst/gstpad.c: (gst_pad_activate_push), (gst_pad_alloc_buffer):
12682 more debugging
12683 * gst/gststructure.c: (gst_caps_structure_fixate_field_boolean):
12684 * gst/gststructure.h:
12685 add a fixate function for booleans; add a FIXME that these func
12686 names should probably be gst_structure_fixate_*
12688 2005-08-23 Stefan Kost <ensonic@users.sf.net>
12690 * docs/gst/gstreamer-docs.sgml:
12691 * docs/gst/gstreamer-sections.txt:
12692 * gst/Makefile.am:
12693 * gst/gstbin.c: (gst_bin_get_type),
12694 (gst_bin_child_proxy_get_child_by_index),
12695 (gst_bin_child_proxy_get_children_count),
12696 (gst_bin_child_proxy_init):
12697 * gst/gstchildproxy.c: (gst_child_proxy_get_child_by_name),
12698 (gst_child_proxy_get_child_by_index),
12699 (gst_child_proxy_get_children_count), (gst_child_proxy_lookup),
12700 (gst_child_proxy_get_property), (gst_child_proxy_get_valist),
12701 (gst_child_proxy_get), (gst_child_proxy_set_property),
12702 (gst_child_proxy_set_valist), (gst_child_proxy_set),
12703 (gst_child_proxy_child_added), (gst_child_proxy_child_removed),
12704 (gst_child_proxy_base_init), (gst_child_proxy_get_type):
12705 * gst/gstchildproxy.h:
12706 * gst/parse/grammar.y:
12707 * tools/gst-inspect.c: (print_interfaces),
12708 (print_element_properties_info), (print_element_info):
12709 ported gstchildproxy over from 0.8
12710 ported gst-inspect fixes and enhancements over from 0.8
12712 2005-08-22 Wim Taymans <wim@fluendo.com>
12714 * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
12715 (gst_base_transform_handle_buffer):
12716 Also call the transform function if we have ANY caps.
12718 * gst/gstpipeline.c: (gst_pipeline_set_new_stream_time):
12719 Fix debug info.
12721 2005-08-22 Jan Schmidt <thaytan@mad.scientist.com>
12723 * gst/base/gstbasesrc.c: (gst_base_src_event_handler)
12724 Don't pretend to handle seek events if the source is not seekable
12726 2005-08-22 Jan Schmidt <thaytan@mad.scientist.com>
12728 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
12729 Remove extra parameter to debug output
12731 * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
12732 (gst_base_src_do_seek), (gst_base_src_activate_push):
12733 Fix seek event handling.
12735 * gst/gstpipeline.c: (gst_pipeline_change_state):
12736 * gst/gstqueue.c: (gst_queue_handle_sink_event),
12737 (gst_queue_src_activate_push):
12738 Don't start the src pad task on FLUSH_STOP if the pad
12739 isn't linked.
12740 Debug changes.
12742 2005-08-22 Wim Taymans <wim@fluendo.com>
12744 * check/gst/gstcaps.c: (GST_START_TEST), (gst_caps_suite):
12745 Added check for gst_static_caps_get() refcounting.
12747 2005-08-22 Wim Taymans <wim@fluendo.com>
12749 * gst/gstcaps.c: (gst_static_caps_get), (gst_caps_to_string):
12750 Make _static_caps_get() refcounting sane.
12752 * gst/gstelement.c: (gst_element_set_state):
12753 Add g_return_val_if_fail() to protect against segfaults.
12755 2005-08-22 Stefan Kost <ensonic@users.sf.net>
12757 * docs/gst/tmpl/gstevent.sgml:
12758 * gst/gstevent.c:
12759 * gst/gstevent.h:
12760 inlined remaining docs, added missing doc comments
12762 2005-08-22 Thomas Vander Stichele <thomas at apestaart dot org>
12764 * check/gst/gstbin.c: (GST_START_TEST):
12765 since we don't know when preroll is done, use refcount range
12766 check for the sink
12767 * gst/check/gstcheck.h:
12768 add macro for checking refcount range
12770 2005-08-21 Thomas Vander Stichele <thomas at apestaart dot org>
12772 * check/Makefile.am:
12773 clean up environment for when registry gets built versus
12774 when actual tests are run; valgrind seems to not report
12775 leaks if GST_PLUGIN_PATH is set to some specific values
12776 * check/gst/gstbin.c: (GST_START_TEST):
12777 add more refcounting checks; maybe this exposes a
12778 preroll lock bug ?
12779 * common/check.mak:
12780 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
12781 * gst/check/gstcheck.h:
12782 * gst/gstbin.c: (bin_element_is_semi_sink), (gst_bin_get_state),
12783 (gst_bin_change_state):
12784 * gst/gstpad.c: (gst_pad_activate_push), (gst_pad_chain):
12785 add/fix debugging/whitespace
12787 2005-08-21 Jan Schmidt <thaytan@mad.scientist.com>
12789 * check/gst/gstevent.c: (event_probe), (test_event),
12790 (GST_START_TEST):
12791 Er, don't call gst_bin_watch_for_state_change you idiot.
12793 2005-08-21 Jan Schmidt <thaytan@mad.scientist.com>
12795 * check/Makefile.am:
12796 Use CHECK_CFLAGS and CHECK_LIBS
12797 * check/gst/gstevent.c: (event_probe), (test_event),
12798 (GST_START_TEST):
12799 Don't leak events.
12800 * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
12801 (gst_base_src_start), (gst_base_src_stop),
12802 (gst_base_src_activate_push), (gst_base_src_activate_pull),
12803 (gst_base_src_change_state):
12804 Sprinkle gst_base_src_stop liberally around error paths to fix
12805 problems reusing a source after failed state changes.
12806 * gst/base/gsttypefindhelper.c: (helper_find_peek),
12807 (helper_find_suggest), (gst_type_find_helper):
12808 Extra debug output. Don't segfault on GST_PAD_GETRANGEFUNC = NULL
12809 * gst/gstevent.h:
12810 * docs/gst/tmpl/gstevent.sgml:
12811 Migrate part of the docs from the SGML file. Wait for ensonic to
12812 tell me how I did it wrong ;)
12813 * tools/gst-typefind.c: (main):
12814 Extra robustness to state changes between files.
12816 2005-08-21 Thomas Vander Stichele <thomas at apestaart dot org>
12818 * check/Makefile.am:
12819 don't valgrind the controller test - it's leaking - Stefan, HELP
12820 * gst/check/gstcheck.c: (gst_check_message_error),
12821 (gst_check_chain_func), (gst_check_setup_element),
12822 (gst_check_teardown_element), (gst_check_setup_src_pad),
12823 (gst_check_teardown_src_pad), (gst_check_setup_sink_pad),
12824 (gst_check_teardown_sink_pad):
12825 * gst/check/gstcheck.h:
12826 add a bunch of methods to set up elements, and src and sink pads
12827 * check/elements/fakesrc.c: (setup_fakesrc), (cleanup_fakesrc):
12828 * check/elements/identity.c: (setup_identity), (cleanup_identity),
12829 (GST_START_TEST):
12830 use them
12831 * gst/gstmessage.c:
12832 * gst/gsttag.h:
12833 whitespace/doc fixes
12835 2005-08-20 Thomas Vander Stichele <thomas at apestaart dot org>
12837 * gst/gstelement.h:
12838 make GST_ELEMENT_ERROR not do GST_ERROR_OBJECT - these errors should
12839 be handled by the application and not always printed as well
12841 2005-08-20 Thomas Vander Stichele <thomas at apestaart dot org>
12843 * check/Makefile.am:
12844 set GST_TOOLS_DIR
12845 * gst/check/gstcheck.c: (gst_check_message_error):
12846 * gst/check/gstcheck.h:
12847 add a fail_unless_equals_int
12848 add fail_unless for error messages
12850 2005-08-20 Thomas Vander Stichele <thomas at apestaart dot org>
12852 * check/Makefile.am:
12853 * check/gst.supp:
12854 * common/Makefile.am:
12855 * common/check.mak:
12856 * common/gst.supp:
12857 factor out some of the common stuff so we can use it
12859 2005-08-20 Thomas Vander Stichele <thomas at apestaart dot org>
12861 * check/Makefile.am:
12862 * check/gst/gstiterator.c: (GST_START_TEST):
12863 * check/gst/gstsystemclock.c: (GST_START_TEST),
12864 (gst_systemclock_suite):
12865 * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
12866 * gst/gstclock.c:
12867 valgrind more tests
12869 2005-08-20 Thomas Vander Stichele <thomas at apestaart dot org>
12871 * check/elements/.cvsignore:
12872 * check/elements/gstfakesrc.c:
12873 rename to name of element
12874 * check/elements/identity.c: (chain_func), (event_func),
12875 (setup_identity), (cleanup_identity), (GST_START_TEST),
12876 (identity_suite), (main):
12877 add a test for identity
12878 * check/Makefile.am:
12879 * pkgconfig/Makefile.am:
12880 * pkgconfig/gstreamer-check.pc.in:
12881 * pkgconfig/gstreamer-check-uninstalled.pc.in:
12882 * gst/check:
12883 * gst/Makefile.am:
12884 * configure.ac:
12885 move the check stuff to a library that gets installed
12886 * check/gst-libs/controller.c: (GST_START_TEST):
12887 * check/gst-libs/gdp.c:
12888 * check/gst/gst.c: (GST_START_TEST):
12889 * check/gst/gstbin.c:
12890 * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
12891 * check/gst/gstbus.c:
12892 * check/gst/gstcaps.c: (GST_START_TEST):
12893 * check/gst/gstelement.c:
12894 * check/gst/gstghostpad.c:
12895 * check/gst/gstiterator.c:
12896 * check/gst/gstmessage.c:
12897 * check/gst/gstminiobject.c: (thread_ref), (GST_START_TEST):
12898 * check/gst/gstobject.c:
12899 * check/gst/gstpad.c: (GST_START_TEST):
12900 * check/gst/gststructure.c: (GST_START_TEST):
12901 * check/gst/gstsystemclock.c: (GST_START_TEST),
12902 (gst_systemclock_suite):
12903 * check/gst/gsttag.c: (gst_tag_suite):
12904 * check/gst/gstvalue.c:
12905 * check/pipelines/cleanup.c:
12906 * check/pipelines/simple_launch_lines.c:
12907 * check/states/sinks.c:
12908 change include statement
12910 * docs/gst/gstreamer-sections.txt:
12911 * docs/gst/tmpl/gstpad.sgml:
12912 document more pad stuff
12913 * gst/gstminiobject.c: (gst_mini_object_ref),
12914 (gst_mini_object_unref):
12915 debug refcounting
12917 2005-08-19 Stefan Kost <ensonic@users.sf.net>
12919 * docs/gst/tmpl/gst.sgml:
12920 * gst/gst.c:
12921 eliminate another tmpl file, fix spelling in the long-description
12923 2005-08-18 Jan Schmidt <thaytan@mad.scientist.com>
12925 * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
12926 (test_event), (timediff), (gstevents_suite):
12927 Should fix build on 64-bit arch's
12929 2005-08-18 Andy Wingo <wingo@pobox.com>
12931 Make sure that when a pipeline goes to PLAYING, that data has
12932 actually hit the sink.
12934 * check/states/sinks.c (test_sink): A sink that doesn't get any
12935 data shouldn't return SUCCESS for going to either PLAYING or
12936 PAUSED. Test also the return values on the way back down.
12938 * gst/gstelement.c (gst_element_set_state): When changing the
12939 state of an element currently changing state asynchronously, go to
12940 lost-state after commiting the pending state. Makes future calls
12941 to get_state continue to return ASYNC.
12943 * gst/base/gstbasesink.c (gst_base_sink_change_state): Return
12944 ASYNC when going to PLAYING if we still don't have preroll, as can
12945 happen with live sources.
12947 2005-08-18 Jan Schmidt <thaytan@mad.scientist.com>
12949 * docs/pwg/advanced-types.xml:
12950 Hack long paragraph into 2 chunks as a workaround for buggy
12951 jadetex version in sid and breezy that loops infinitely and
12952 eats all RAM.
12954 2005-08-18 Jan Schmidt <thaytan@mad.scientist.com>
12956 * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
12957 (test_event), (timediff), (gstevents_suite):
12958 Provide more error margin in clock measurements to allow for
12959 g_get_current_time inaccuracies.
12961 2005-08-18 Jan Schmidt <thaytan@mad.scientist.com>
12963 * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
12964 (test_event), (timediff), (gstevents_suite):
12965 Fix error message output so I might be able to tell why the
12966 test works here but fails on the build farm.
12968 2005-08-18 Jan Schmidt <thaytan@mad.scientist.com>
12970 * check/Makefile.am:
12971 * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
12972 (test_event), (timediff), (gstevents_suite), (main):
12973 I wrote a test!
12975 * docs/design/part-seeking.txt:
12976 Spelling correction
12978 * docs/gst/tmpl/gstevent.sgml:
12979 * docs/gst/tmpl/gstfakesrc.sgml:
12980 Docs updates.
12982 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
12983 Treat a buffer-without-newsegment the same as a receiving
12984 a newsegment not in time format, and disable syncing to the clock
12985 with a warning.
12987 * gst/gstbus.c: (gst_bus_set_sync_handler):
12988 Assert if anyone tries to replace the existing sync_handler for bus,
12989 as only the owner should be setting it.
12991 * gst/gstevent.h:
12992 Have a fixed set of custom event enums with events identified by
12993 their structure name (as in 0.8), rather than a free-for-all
12994 allowing collisions between enum values from different plugins.
12996 * gst/gstpad.c: (gst_pad_class_init):
12997 Docs change.
12999 * gst/gstqueue.c: (gst_queue_handle_sink_event):
13000 Handle out-of-band downstream events from the sending thread.
13002 2005-08-17 Andy Wingo <wingo@pobox.com>
13004 * gst/gstpipeline.c (gst_pipeline_change_state): Interpret
13005 play-timeout==0 to mean no timeout at all. In that case, don't
13006 bother with a get_state or a warning, just return directly, even
13007 if it's ASYNC.
13009 * gst/base/gstbasetransform.c: Debug changes.
13011 * gst/gstutils.h:
13012 * gst/gstutils.c (gst_bin_watch_for_state_change): Add function to
13013 ensure bins post state change messages. A bit of a hack but I can't
13014 think of a way to avoid it.
13016 * check/gst/gstbin.c (test_watch_for_state_change): Added test.
13018 2005-08-16 Andy Wingo <wingo@pobox.com>
13020 * gst/base/gstadapter.h:
13021 * gst/base/gstadapter.c (gst_adapter_take): New function, like
13022 peek() but you own the data. Not terribly efficient atm.
13024 2005-08-16 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13026 * gst/gstutils.c: (gst_element_found_tags_for_pad), (push_and_ref),
13027 (gst_element_found_tags):
13028 * gst/gstutils.h:
13029 Add two utility functions for tag handling.
13031 2005-08-16 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13033 * docs/manual/advanced-dataaccess.xml:
13034 * docs/manual/basics-helloworld.xml:
13035 Fix docs to use _bin_add() before _link(), which fixes the examples
13036 with recent core versions (reported by Madhan Raj M
13037 <raj_madan@rediffmail.com>, #313199).
13039 2005-08-16 Wim Taymans <wim@fluendo.com>
13041 * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
13042 Added subtract checks.
13044 * docs/design/part-events.txt:
13045 Some more docs about newsegment
13047 * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
13048 Fix FIXME
13050 * gst/gstcaps.c: (gst_caps_to_string):
13051 Add comments, cleanups.
13053 * gst/gstelement.c: (gst_element_save_thyself):
13054 cleanups
13056 * gst/gstvalue.c: (gst_value_collect_int_range),
13057 (gst_string_unwrap), (gst_value_union_int_int_range),
13058 (gst_value_union_int_range_int_range),
13059 (gst_value_intersect_int_int_range),
13060 (gst_value_intersect_int_range_int_range),
13061 (gst_value_intersect_double_double_range),
13062 (gst_value_intersect_double_range_double_range),
13063 (gst_value_intersect_list), (gst_value_subtract_int_int_range),
13064 (gst_value_subtract_int_range_int),
13065 (gst_value_subtract_double_range_double),
13066 (gst_value_subtract_double_range_double_range),
13067 (gst_value_subtract_from_list), (gst_value_subtract_list),
13068 (gst_value_can_compare), (gst_value_compare_fraction):
13069 Cleanups, add comments, remove unneeded asserts.
13071 2005-08-15 Thomas Vander Stichele <thomas at apestaart dot org>
13073 * tools/gst-launch.c: (event_loop):
13074 don't convert NULL structures to strings
13076 2005-08-15 Stefan Kost <ensonic@users.sf.net>
13078 * docs/gst/gstreamer-sections.txt:
13079 made some defines private
13080 * docs/gst/tmpl/gstconfig.sgml:
13081 * docs/gst/tmpl/gstqueue.sgml:
13082 * docs/gst/tmpl/gsttaglist.sgml:
13083 * docs/gst/tmpl/gsttypes.sgml:
13084 * docs/gst/tmpl/gstutils.sgml:
13085 * docs/pwg/appendix-porting.xml:
13086 * gst/base/gstbasesink.h:
13087 * gst/base/gstbasesrc.c:
13088 * gst/base/gstbasesrc.h:
13089 * gst/elements/gstfakesink.c: (gst_fake_sink_class_init):
13090 * gst/elements/gstfakesrc.c: (gst_fake_src_class_init):
13091 * gst/gstelement.c: (gst_element_class_init):
13092 * gst/gstpad.c: (gst_pad_class_init):
13093 * gst/gstqueue.c: (gst_queue_class_init):
13094 * gst/gstxml.c: (gst_xml_class_init):
13095 documented all undocumented signal inline
13096 * libs/gst/controller/gst-controller.h:
13097 added padding
13099 2005-08-15 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13101 * docs/pwg/appendix-porting.xml:
13102 Document _set_link_function -> _set_setcaps_function.
13104 2005-08-15 Thomas Vander Stichele <thomas at apestaart dot org>
13106 * check/Makefile.am:
13107 add a .check target for running the check
13108 * check/gst-libs/controller.c: (GST_START_TEST):
13109 cosmetic fixups
13110 * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
13111 complete checks for gstbuffer; would be nice if I could get the
13112 gcov stuff to work so I can see if I actually completed gstbuffer.c
13113 * check/gstcheck.h:
13114 add ASSERT_BUFFER_REFCOUNT
13116 2005-08-13 Tim-Philipp Müller <tim at centricular dot net>
13118 * docs/gst/gstreamer-sections.txt:
13119 * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
13120 * gst/gsttag.h:
13121 Add GST_TAG_LANGUAGE_CODE as we have in 0.8, and don't
13122 spew out a warning if a tag that is already registered
13123 is re-registered, unless it is re-registered with a
13124 different type (#308438).
13126 2005-08-12 Tim-Philipp Müller <tim at centricular dot net>
13128 * docs/pwg/appendix-porting.xml:
13129 * docs/pwg/building-state.xml:
13130 Add some paragraphs about state changes in 0.9 to the PWG
13131 and the porting guide, in particular about the new meaning
13132 of GST_STATE_PAUSED and how to write state change functions
13133 with concurrent access by multiple threads in mind.
13135 2005-08-11 Stefan Kost <ensonic@users.sf.net>
13137 * docs/gst/gstreamer-docs.sgml:
13138 * docs/libs/gstreamer-libs-docs.sgml:
13139 added deprecation and since indexes
13140 * libs/gst/controller/gst-controller.c:
13141 * libs/gst/controller/gst-helper.c:
13142 added since tags
13145 2005-08-11 Wim Taymans <wim@fluendo.com>
13147 * gst/gstghostpad.c: (gst_proxy_pad_set_target_unlocked),
13148 (gst_proxy_pad_set_target), (gst_proxy_pad_get_target),
13149 (gst_proxy_pad_dispose), (gst_ghost_pad_do_activate_push),
13150 (gst_ghost_pad_do_link), (gst_ghost_pad_set_internal),
13151 (gst_ghost_pad_new_notarget), (gst_ghost_pad_get_target),
13152 (gst_ghost_pad_set_target):
13153 Actually implement (re)setting the target on a ghostpad
13154 as described in the docs.
13156 2005-08-10 Tim-Philipp Müller <tim at centricular dot net>
13158 * gst/gst.c: (gst_init_check_with_popt_table), (init_pre):
13159 Check whether GST_DEBUG_NO_COLOR environment variable is
13160 set and disable coloured debug output if that is the case.
13162 2005-08-10 Tim-Philipp Müller <tim at centricular dot net>
13164 * gst/base/gsttypefindhelper.c: (helper_find_peek),
13165 (gst_type_find_helper):
13166 The memory returned by gst_type_find_peek() needs to
13167 stay valid until the end of a typefind function, and
13168 typefind functions may keep results from different
13169 offsets around, so we can't just unref the buffer from
13170 the previous _peek(), but have to save all buffers
13171 returned by _peek() until typefinding is done and only
13172 free them then.
13174 2005-08-09 Tim-Philipp Müller <tim at centricular dot net>
13176 * docs/gst/gstreamer-sections.txt:
13177 * gst/gstutils.h:
13178 New macros: GST_ROUND_UP_2() through GST_ROUND_UP_64().
13180 2005-08-08 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13182 * gst/base/gstbasetransform.c: (gst_base_transform_buffer_alloc):
13183 Fix a pretty good memleak.
13185 2005-08-08 Tim-Philipp Müller <tim at centricular dot net>
13187 * gst/gstiterator.h:
13188 Fix wrong include and 'make distcheck'.
13190 2005-08-08 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13192 * gst/gstbin.c: (bin_bus_handler):
13193 Use gst_element_post_message() instead.
13195 2005-08-08 Tim-Philipp Müller <tim at centricular dot net>
13197 * gst/base/gstadapter.h:
13198 * gst/base/gstbasesink.h:
13199 * gst/base/gstbasesrc.h:
13200 * gst/base/gstbasetransform.h:
13201 * gst/base/gstcollectpads.h:
13202 * gst/base/gstpushsrc.h:
13203 * gst/gstiterator.h:
13204 Add padding to our base elements' class and instance structs and
13205 to GstIterator (you will need to rebuild all plugins and apps!)
13207 2005-08-08 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13209 * gst/gstbin.c: (bin_bus_handler):
13210 Make default message forwarding from child->bus to bin->bus
13211 threadsafe and make it not emit warnings if the parent has no bus.
13213 2005-08-08 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13215 * gst/gstelement.c: (activate_pads):
13216 On paused->ready, set pad->caps to NULL, as is the documented
13217 behaviour in this state change. Fixes playback of series of
13218 media files when visualization is enabled in Totem.
13220 2005-08-07 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13222 * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
13223 Allow NULL as filter-caps (which means "any").
13225 2005-08-05 Stefan Kost <ensonic@users.sf.net>
13227 * docs/libs/gstreamer-libs-sections.txt:
13228 * libs/gst/controller/gst-controller.c:
13229 * libs/gst/controller/gst-controller.h:
13230 * libs/gst/controller/gst-helper.c:
13231 adding more entries to the docs and fix small doc-bugs
13233 2005-08-05 Stefan Kost <ensonic@users.sf.net>
13235 * docs/gst/gstreamer-docs.sgml:
13236 * docs/gst/gstreamer-sections.txt:
13237 * docs/gst/gstreamer.types:
13238 * docs/gst/tmpl/gstbasesink.sgml:
13239 * docs/gst/tmpl/gstbasesrc.sgml:
13240 * docs/gst/tmpl/gstbasetransform.sgml:
13241 * docs/gst/tmpl/gstfakesrc.sgml:
13242 * gst/base/gstcollectpads.c:
13243 * gst/base/gstcollectpads.h:
13244 * libs/gst/controller/gst-controller.c:
13245 * libs/gst/controller/gst-controller.h:
13246 * libs/gst/controller/gst-helper.c:
13247 * libs/gst/controller/gst-interpolation.c:
13248 * libs/gst/controller/lib.c:
13249 added long/short desc for controller docs
13250 added collectpads base class docs
13251 added correct includes to base-class docs
13253 2005-08-05 Stefan Kost <ensonic@users.sf.net>
13255 * check/gst-libs/controller.c: (gst_test_mono_source_get_property),
13256 (gst_test_mono_source_set_property),
13257 (gst_test_mono_source_class_init), (GST_START_TEST),
13258 (gst_controller_suite):
13259 * docs/gst/gstreamer-docs.sgml:
13260 * docs/gst/gstreamer-sections.txt:
13261 * docs/gst/gstreamer.types:
13262 * docs/libs/gstreamer-libs-docs.sgml:
13263 * docs/libs/gstreamer-libs-sections.txt:
13264 * gst/base/gstadapter.c:
13265 * libs/gst/controller/gst-controller.c:
13266 (gst_controlled_property_new), (gst_controlled_property_free),
13267 (gst_controller_new_valist),
13268 (gst_controller_remove_properties_valist),
13269 (gst_controller_sink_values), (_gst_controller_finalize):
13270 * libs/gst/controller/gst-controller.h:
13271 * libs/gst/controller/gst-helper.c:
13272 (gst_object_control_properties), (gst_object_uncontrol_properties),
13273 (gst_object_get_controller), (gst_object_set_controller),
13274 (gst_object_sink_values), (gst_object_get_value_arrays),
13275 (gst_object_get_value_array):
13276 more tests (and fixes) for the controller
13277 more docs for the controller
13278 integrated companies docs for the adapter
13280 2005-08-05 Thomas Vander Stichele <thomas at apestaart dot org>
13282 * check/elements/gstfakesrc.c: (setup_fakesrc), (cleanup_fakesrc),
13283 (GST_START_TEST), (fakesrc_suite):
13284 add tests for sizetype
13286 2005-08-04 Andy Wingo <wingo@pobox.com>
13288 * gst/elements/gstcapsfilter.c: Reimplement using basetransform,
13289 fixes buffer_alloc proxying among other things.
13291 * gst/base/gstbasetransform.c:
13292 * gst/base/gstbasetransform.h:
13293 Revert patch to gstbasetransform from 7-28 removing
13294 delay_configure.
13296 * gst/base/gstbasetransform.h (GstBaseTransformClass.get_size):
13297 * gst/base/gstbasetransform.c (gst_base_transform_get_size):
13298 Semantics changed, should return not the size of the output buffer
13299 but the byte size of a buffer with a given caps.
13301 * gst/base/gstbasetransform.c (gst_base_transform_getcaps): Better
13302 debug object.
13303 (gst_base_transform_configure_caps): Don't set out_size here: (in,
13304 out) are not the pad caps until setcaps finishes.
13305 (gst_base_transform_buffer_alloc): Proxy the buffer_alloc for the
13306 not-in-place case as well. Deal with changing from in-place to
13307 not-in-place within calling pad_alloc_buffer. Still a bit
13308 concerned about the overhead here...
13310 2005-08-03 Andy Wingo <wingo@pobox.com>
13312 * gst/base/gstbasetransform.c (gst_base_transform_setcaps): Not
13313 fixating is an error.
13315 2005-08-04 Edward Hervey <edward@fluendo.com>
13317 * gst/base/gstadapter.h:
13318 Added gst_adapter_get_type() to the header
13320 2005-08-03 Stefan Kost <ensonic@users.sf.net>
13322 * check/Makefile.am:
13323 * check/gst-libs/controller.c:
13324 * libs/gst/controller/gst-controller.c:
13325 (gst_controller_new_valist):
13326 added check test suite for the controller
13327 * gst/base/gstpushsrc.c:
13328 fixed a doc typo
13330 2005-08-03 Stefan Kost <ensonic@users.sf.net>
13332 * docs/gst/Makefile.am:
13333 * docs/gst/gstreamer-docs.sgml:
13334 * docs/gst/gstreamer-sections.txt:
13335 * docs/gst/gstreamer.types:
13336 * docs/gst/tmpl/gstfakesrc.sgml:
13337 * gst/base/README:
13338 * gst/base/gstbasesink.c:
13339 * gst/base/gstbasesink.h:
13340 * gst/base/gstbasesrc.c:
13341 * gst/base/gstbasesrc.h:
13342 * gst/base/gstbasetransform.c:
13343 * gst/base/gstpushsrc.c:
13344 * gst/base/gstpushsrc.h:
13345 add short/long description docs to base classes
13346 add pushsrc to the docs
13347 remove consolidated doc fragments
13349 2005-08-03 Stefan Kost <ensonic@users.sf.net>
13351 * configure.ac:
13352 * docs/libs/Makefile.am:
13353 * docs/libs/gstreamer-libs-docs.sgml:
13354 * docs/libs/gstreamer-libs-sections.txt:
13355 * docs/libs/gstreamer-libs.types:
13356 * examples/Makefile.am:
13357 * examples/controller/.cvsignore:
13358 * examples/controller/Makefile.am:
13359 * examples/controller/audio-example.c: (main):
13360 * libs/gst/Makefile.am:
13361 * libs/gst/controller/.cvsignore:
13362 * libs/gst/controller/Makefile.am:
13363 * libs/gst/controller/gst-controller.c:
13364 (on_object_controlled_property_changed), (gst_timed_value_compare),
13365 (gst_timed_value_find),
13366 (gst_controlled_property_set_interpolation_mode),
13367 (gst_controlled_property_new), (gst_controlled_property_free),
13368 (gst_controller_find_controlled_property),
13369 (gst_controller_new_valist), (gst_controller_new),
13370 (gst_controller_remove_properties_valist),
13371 (gst_controller_remove_properties), (gst_controller_set),
13372 (gst_controller_set_from_list), (gst_controller_unset),
13373 (gst_controller_get), (gst_controller_get_all),
13374 (gst_controller_sink_values), (gst_controller_get_value_arrays),
13375 (gst_controller_get_value_array),
13376 (gst_controller_set_interpolation_mode),
13377 (_gst_controller_finalize), (_gst_controller_init),
13378 (_gst_controller_class_init), (gst_controller_get_type):
13379 * libs/gst/controller/gst-controller.h:
13380 * libs/gst/controller/gst-helper.c: (g_object_control_properties),
13381 (g_object_uncontrol_properties), (g_object_get_controller),
13382 (g_object_set_controller), (g_object_sink_values),
13383 (g_object_get_value_arrays), (g_object_get_value_array):
13384 * libs/gst/controller/gst-interpolation.c:
13385 (gst_controlled_property_find_timed_value_node),
13386 (interpolate_none_get), (interpolate_trigger_get),
13387 (interpolate_trigger_get_value_array):
13388 * libs/gst/controller/lib.c: (gst_controller_init):
13389 * pkgconfig/Makefile.am:
13390 * pkgconfig/gstreamer-control-uninstalled.pc.in:
13391 * pkgconfig/gstreamer-control.pc.in:
13392 * testsuite/Makefile.am:
13393 * testsuite/controller/.cvsignore:
13394 * testsuite/controller/Makefile.am:
13395 * testsuite/controller/interpolator.c: (main):
13396 added controller code
13397 removed dparam pc files
13399 2005-08-01 Jan Schmidt <thaytan@mad.scientist.com>
13400 * gst/base/gstcollectpads.c: (gst_collectpads_finalize),
13401 (gst_collectpads_stop):
13402 Broadcast the condition when shutting down, to make sure we wake all
13403 threads up. Shut down pads on finalize, for safety.
13405 2005-08-01 Jan Schmidt <thaytan@mad.scientist.com>
13406 * gst/base/gstbasetransform.c: (gst_base_transform_init),
13407 (gst_base_transform_handle_buffer),
13408 (gst_base_transform_change_state):
13409 Handle PAUSED->READY->PAUSED transition after negotiation
13410 occurred already.
13411 * gst/gstmessage.c: (gst_message_init):
13412 Extra piece of debug for new messages.
13414 2005-08-01 Stefan Kost <ensonic@users.sf.net>
13416 * configure.ac:
13417 * docs/gst/tmpl/gstbasesrc.sgml:
13418 * docs/gst/tmpl/gstelement.sgml:
13419 * docs/gst/tmpl/gstevent.sgml:
13420 * docs/gst/tmpl/gstfakesrc.sgml:
13421 * docs/gst/tmpl/gstformat.sgml:
13422 * docs/gst/tmpl/gstghostpad.sgml:
13423 * docs/gst/tmpl/gstpad.sgml:
13424 * docs/gst/tmpl/gstquery.sgml:
13425 * docs/gst/tmpl/gststructure.sgml:
13426 * docs/gst/tmpl/gsttaglist.sgml:
13427 * docs/gst/tmpl/gstvalue.sgml:
13428 * docs/libs/gstreamer-libs-docs.sgml:
13429 * docs/libs/gstreamer-libs-sections.txt:
13430 * docs/libs/gstreamer-libs.types:
13431 * libs/gst/Makefile.am:
13432 * libs/gst/control/.cvsignore:
13433 * libs/gst/control/Makefile.am:
13434 * libs/gst/control/control.c:
13435 * libs/gst/control/control.h:
13436 * libs/gst/control/dparam.c:
13437 * libs/gst/control/dparam.h:
13438 * libs/gst/control/dparam_smooth.c:
13439 * libs/gst/control/dparam_smooth.h:
13440 * libs/gst/control/dparamcommon.h:
13441 * libs/gst/control/dparammanager.c:
13442 * libs/gst/control/dparammanager.h:
13443 * libs/gst/control/dplinearinterp.c:
13444 * libs/gst/control/dplinearinterp.h:
13445 * libs/gst/control/unitconvert.c:
13446 * libs/gst/control/unitconvert.h:
13447 * testsuite/Makefile.am:
13448 * testsuite/dynparams/.cvsignore:
13449 * testsuite/dynparams/Makefile.am:
13450 * testsuite/dynparams/dparamstest.c:
13451 * tools/Makefile.am:
13452 * tools/gst-inspect.c: (print_element_info), (main):
13453 * tools/gst-xmlinspect.c: (print_element_info), (main):
13454 deactivate and remove dparams (libgstcontrol)
13456 2005-08-01 Tim-Philipp Müller <tim at centricular dot net>
13458 * gst/elements/gsttypefindelement.c:
13459 (gst_type_find_element_have_type), (gst_type_find_element_init),
13460 (stop_typefinding), (gst_type_find_element_handle_event),
13461 (gst_type_find_element_chain), (gst_type_find_element_getrange):
13462 * gst/elements/gsttypefindelement.h:
13463 Set caps on all outgoing buffers, not just the first one.
13465 2005-08-01 Tim-Philipp Müller <tim at centricular dot net>
13467 * gst/elements/gsttypefindelement.c:
13468 (gst_type_find_element_have_type),
13469 (gst_type_find_element_check_set_buffer_caps),
13470 (gst_type_find_element_init), (stop_typefinding),
13471 (gst_type_find_element_handle_event),
13472 (gst_type_find_element_chain), (gst_type_find_element_getrange):
13473 * gst/elements/gsttypefindelement.h:
13474 Set caps on first outgoing buffer when we've found the type.
13476 2005-08-01 Tim-Philipp Müller <tim at centricular dot net>
13478 * docs/gst/gstreamer-docs.sgml:
13479 * docs/gst/gstreamer-sections.txt:
13480 * docs/gst/tmpl/gstscheduler.sgml:
13481 * docs/gst/tmpl/gstschedulerfactory.sgml:
13482 Remove some old cruft from docs.
13484 2005-07-31 Tim-Philipp Müller <tim at centricular dot net>
13486 * gst/gstpad.h:
13487 Fix inline docs for GstPadLinkReturn.
13489 * gst/gststructure.c: (gst_structure_has_name):
13490 * gst/gststructure.h:
13491 * docs/gst/gstreamer-sections.txt:
13492 New API: gst_structure_has_name().
13494 2005-07-30 Tim-Philipp Müller <tim at centricular dot net>
13496 * configure.ac:
13497 Use AC_SYS_LARGEFILE, which will set _FILE_OFFSET_BITS=64
13498 and _LARGEFILE_SOURCE in config.h as required. Do not
13499 export those flags in our .pc files any longer (#142209).
13501 Remove unused GST_DISABLE_OMEGA_COTHREADS stuff.
13503 * gst/elements/gstfilesink.c: (gst_file_sink_class_init),
13504 (gst_file_sink_do_seek), (gst_file_sink_event),
13505 (gst_file_sink_get_current_offset), (gst_file_sink_render):
13506 Redo seek/tell calls with large file support in mind; add some
13507 debugging messages; add log message that tells us when large
13508 file support is unavailable or not enabled for some reason.
13510 * gst/elements/gstfilesrc.c: (gst_file_src_class_init):
13511 Add log message that tells us when large file support
13512 is unavailable or not enabled for some reason.
13514 2005-07-29 Wim Taymans <wim@fluendo.com>
13516 * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
13517 Added test for removing an element with ghostpad from a bin.
13518 Fixed test as current implementation does the right thing.
13520 * gst/gstghostpad.c: (gst_proxy_pad_class_init),
13521 (gst_proxy_pad_do_query_type), (gst_proxy_pad_do_event),
13522 (gst_proxy_pad_do_query), (gst_proxy_pad_do_internal_link),
13523 (gst_proxy_pad_do_bufferalloc), (gst_proxy_pad_do_activate),
13524 (gst_proxy_pad_do_activatepull), (gst_proxy_pad_do_activatepush),
13525 (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange),
13526 (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_getcaps),
13527 (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
13528 (gst_proxy_pad_do_setcaps), (gst_proxy_pad_set_target),
13529 (gst_proxy_pad_get_target), (gst_proxy_pad_init),
13530 (gst_proxy_pad_dispose), (gst_proxy_pad_finalize),
13531 (gst_ghost_pad_class_init), (gst_ghost_pad_do_activate_push),
13532 (gst_ghost_pad_do_link), (gst_ghost_pad_do_unlink),
13533 (gst_ghost_pad_set_internal), (gst_ghost_pad_dispose),
13534 (gst_ghost_pad_new_notarget), (gst_ghost_pad_new),
13535 (gst_ghost_pad_get_target), (gst_ghost_pad_set_target):
13536 * gst/gstghostpad.h:
13537 Clean up ghostpads, remove properties for internal stuff.
13538 Make threadsafe.
13539 Fix refcounting.
13540 Prepare for switching targets, not all use cases work yet.
13542 2005-07-29 Wim Taymans <wim@fluendo.com>
13544 * docs/design/part-gstghostpad.txt:
13545 Small update.
13547 * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
13548 (gst_bin_remove_func):
13549 Unlinking pads while holding the bin LOCK is not a good
13550 idea.
13552 * gst/gstpad.c: (gst_pad_class_init),
13553 (gst_pad_link_check_hierarchy), (gst_pad_get_caps_unlocked),
13554 (gst_pad_accept_caps), (gst_pad_set_caps), (gst_pad_send_event):
13555 No prob setting template after creating the pad.
13557 2005-07-29 Jan Schmidt <thaytan@mad.scientist.com>
13559 * gst/gstbus.c: (gst_bus_set_flushing), (gst_bus_pop),
13560 (gst_bus_peek), (gst_bus_source_dispatch),
13561 (gst_bus_add_watch_full), (poll_handler), (poll_timeout),
13562 (poll_destroy), (poll_destroy_timeout), (gst_bus_poll):
13563 gst_bus_poll may be called from other threads. Handle
13564 this nicely by not making poll_data disappear off the
13565 stack once gst_bus_poll returns.
13566 gst_bus_peek now increments the refcount on the returned
13567 message.
13569 2005-07-29 Wim Taymans <wim@fluendo.com>
13571 * docs/design/part-gstghostpad.txt:
13572 Overview of current GhostPad datastructures and use
13573 cases for changing the target.
13575 2005-07-28 Wim Taymans <wim@fluendo.com>
13577 * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
13578 Added checks for hierarchy consistency whan adding linked
13579 elements to bins.
13581 * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
13582 Added check to test element scheduling without bin/pipeline.
13584 * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
13585 First add elements to bin, then link.
13587 * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
13588 (gst_bin_remove_func):
13589 Unlink pads from elements added/removed from bin to maintain
13590 hierarchy consistency.
13592 2005-07-28 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13594 * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
13595 (gst_base_transform_handle_buffer):
13596 * gst/base/gstbasetransform.h:
13597 Remove broken delay_configure (fixes renegotiation of software
13598 scaling pipelines); remove some leftover printf()s.
13600 2005-07-28 Wim Taymans <wim@fluendo.com>
13602 * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
13603 Added some more tests for wrong hierarchy
13605 * docs/design/part-overview.txt:
13606 Some updates.
13608 * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_dispose):
13609 Cleanups.
13611 * gst/gstelement.c: (gst_element_remove_pad), (gst_element_seek),
13612 (gst_element_dispose):
13613 Some more cleanups.
13615 * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
13616 (gst_pad_link_check_hierarchy), (gst_pad_link_prepare),
13617 (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
13618 (gst_pad_set_caps), (gst_pad_send_event):
13619 Check for correct hierarchy when linking pads. Moving to
13620 strict requirement for ghostpads when linking elements in
13621 different bins.
13623 * gst/gstpad.h:
13624 Clean ups. Added WRONG_HIERARCHY return value.
13626 2005-07-28 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13628 * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
13629 Better debug if no transform is possible.
13631 2005-07-27 Wim Taymans <wim@fluendo.com>
13633 * docs/random/wtay/network-transp:
13634 Some old doc I had.
13636 2005-07-27 Wim Taymans <wim@fluendo.com>
13638 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
13639 (gst_dp_event_from_packet):
13640 Fix serialization of seek events.
13642 2005-07-27 Wim Taymans <wim@fluendo.com>
13644 * check/gst-libs/gdp.c: (GST_START_TEST):
13645 * gst/elements/gstfakesink.c: (gst_fake_sink_event):
13646 Fix compilation and fix event serialization.
13648 2005-07-27 Wim Taymans <wim@fluendo.com>
13650 * CHANGES-0.9:
13651 * docs/design/part-TODO.txt:
13652 * docs/design/part-events.txt:
13653 Some docs updates
13655 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
13656 (gst_base_sink_event), (gst_base_sink_do_sync),
13657 (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
13658 * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
13659 (gst_base_src_do_seek), (gst_base_src_event_handler),
13660 (gst_base_src_loop):
13661 * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
13662 (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
13663 (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
13664 (gst_base_transform_event), (gst_base_transform_handle_buffer),
13665 (gst_base_transform_set_passthrough),
13666 (gst_base_transform_is_passthrough):
13667 * gst/elements/gstfakesink.c: (gst_fake_sink_event):
13668 * gst/elements/gstfilesink.c: (gst_file_sink_event):
13669 Event updates.
13671 * gst/gstbuffer.h:
13672 Use faster casts.
13674 * gst/gstelement.c: (gst_element_seek):
13675 * gst/gstelement.h:
13676 Update gst_element_seek.
13678 * gst/gstevent.c: (gst_event_finalize), (_gst_event_copy),
13679 (gst_event_new), (gst_event_new_custom), (gst_event_get_structure),
13680 (gst_event_new_flush_start), (gst_event_new_flush_stop),
13681 (gst_event_new_eos), (gst_event_new_newsegment),
13682 (gst_event_parse_newsegment), (gst_event_new_tag),
13683 (gst_event_parse_tag), (gst_event_new_filler), (gst_event_new_qos),
13684 (gst_event_parse_qos), (gst_event_new_seek),
13685 (gst_event_parse_seek), (gst_event_new_navigation):
13686 * gst/gstevent.h:
13687 Make GstEvent use GstStructure. Add parsing code, make sure the
13688 API is sufficiently generic.
13689 Mark possible directions of events and serialization.
13691 * gst/gstmessage.c: (gst_message_init), (gst_message_finalize),
13692 (_gst_message_copy), (gst_message_new_segment_start),
13693 (gst_message_new_segment_done), (gst_message_new_custom),
13694 (gst_message_parse_segment_start),
13695 (gst_message_parse_segment_done):
13696 Small cleanups.
13698 * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
13699 (gst_pad_set_caps), (gst_pad_send_event):
13700 Update for new events.
13701 Catch events sent in wrong directions.
13703 * gst/gstqueue.c: (gst_queue_link_src),
13704 (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
13705 (gst_queue_handle_src_query):
13706 Event updates.
13708 * gst/gsttag.c:
13709 * gst/gsttag.h:
13710 Remove event code from this file.
13712 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
13713 (gst_dp_event_from_packet):
13714 Event updates.
13716 2005-07-27 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13718 * gst/base/gstbasetransform.c: (gst_base_transform_getcaps),
13719 (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
13720 (gst_base_transform_get_size), (gst_base_transform_handle_buffer):
13721 Make debugging actually useful.
13723 2005-07-25 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13725 * gst/gstpad.c: (fixate_value), (gst_pad_default_fixate),
13726 (gst_pad_fixate_caps):
13727 Implement default fixation once again, so that gst_pad_fixate()
13728 actually does anything at all. This probably needs to be some
13729 sort of a last resort, and use profile-based fixation first, but
13730 since that doesn't exist yet, this is the best we have. Fixes
13731 visualization in Totem.
13733 2005-07-22 Wim Taymans <wim@fluendo.com>
13735 * docs/design/part-events.txt:
13736 Small update.
13738 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
13739 (gst_base_sink_do_sync), (gst_base_sink_activate_push),
13740 (gst_base_sink_activate_pull):
13741 Some more comments.
13743 * gst/elements/gstfakesrc.c: (gst_fake_src_class_init),
13744 (gst_fake_src_create):
13745 Fix handoff marshall.
13747 * gst/elements/gstidentity.c: (gst_identity_class_init),
13748 (gst_identity_transform_ip):
13749 We're a real inplace element.
13751 * gst/gstbus.c: (gst_bus_post):
13752 Added some comments.
13754 * tests/lat.c: (fakesrc), (fakesink), (simple), (queue), (main):
13755 * tests/muxing/case1.c: (main):
13756 * tests/sched/dynamic-pipeline.c: (main):
13757 * tests/sched/interrupt1.c: (main):
13758 * tests/sched/interrupt2.c: (main):
13759 * tests/sched/interrupt3.c: (main):
13760 * tests/sched/runxml.c: (main):
13761 * tests/sched/sched-stress.c: (main):
13762 * tests/seeking/seeking1.c: (event_received), (main):
13763 * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
13764 (main):
13765 * tests/threadstate/threadstate3.c: (main):
13766 * tests/threadstate/threadstate4.c: (main):
13767 * tests/threadstate/threadstate5.c: (main):
13768 Fix the tests.
13770 2005-07-21 Wim Taymans <wim@fluendo.com>
13772 * docs/design/part-seeking.txt:
13773 Some small additions.
13775 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
13776 (gst_base_sink_get_times), (gst_base_sink_do_sync),
13777 (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
13778 * gst/base/gstbasesink.h:
13779 discont values are gint64, handle the math correctly.
13781 * gst/base/gstbasesrc.c: (gst_base_src_loop):
13782 Make the basesrc report error if the source pad is not linked.
13784 * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
13785 (gst_queue_loop), (gst_queue_handle_src_query),
13786 (gst_queue_src_activate_push):
13787 Make queue collect data even if the srcpad is not linked.
13788 Start pushing out data as soon as it is linked.
13790 * gst/gstutils.c: (gst_element_unlink), (gst_flow_get_name):
13791 * gst/gstutils.h:
13792 Added gst_flow_get_name() to ease error reporting.
13794 2005-07-20 Wim Taymans <wim@fluendo.com>
13796 * gst/gstmessage.c: (gst_message_new_segment_start),
13797 (gst_message_new_segment_done), (gst_message_parse_segment_start),
13798 (gst_message_parse_segment_done):
13799 * gst/gstmessage.h:
13800 Added a bunch of messages for advanced seeking.
13802 * gst/parse/grammar.y:
13803 * libs/gst/control/dparammanager.c: (gst_dpman_set_parent),
13804 (gst_dpman_state_changed):
13805 Fix some new-pad -> pad-added signals
13807 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13809 * docs/manual/appendix-porting.xml:
13810 * docs/pwg/appendix-porting.xml:
13811 Document new-pad/state-change signal renames and the FixedList
13812 type rename.
13814 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13816 * docs/manual/advanced-autoplugging.xml:
13817 * docs/manual/basics-helloworld.xml:
13818 * docs/manual/basics-pads.xml:
13819 * docs/random/ds/0.9-suggested-changes:
13820 * gst/gstelement.c: (gst_element_class_init), (gst_element_seek):
13821 * gst/gstelement.h:
13822 * gst/gstevent.h:
13823 * gst/gstformat.h:
13824 * gst/gstquery.h:
13825 * gst/gststructure.c: (gst_structure_value_get_generic_type),
13826 (gst_structure_parse_array), (gst_structure_parse_value):
13827 * gst/gstvalue.c: (gst_type_is_fixed),
13828 (gst_value_list_prepend_value), (gst_value_list_append_value),
13829 (gst_value_list_get_size), (gst_value_list_get_value),
13830 (gst_value_transform_array_string), (gst_value_serialize_array),
13831 (gst_value_deserialize_array), (gst_value_intersect_array),
13832 (gst_value_is_fixed), (_gst_value_initialize):
13833 * gst/gstvalue.h:
13834 GstElement::new-pad -> pad-added, GstElement::state-change ->
13835 state-changed, GstValueFixedList -> GstValueArray, add format and
13836 flags as their own arguments in gst_element_seek() (should improve
13837 "bindeability"), remove function generators since they don't work
13838 under a whole bunch of compilers (they were deprecated already
13839 anyway).
13841 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13843 * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
13844 (_gst_debug_register_funcptr):
13845 * gst/gstinfo.h:
13846 Fix illegal cast on some platforms (#309253).
13848 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13850 * gst/gstmessage.c: (gst_message_new_custom):
13851 * gst/gstmessage.h:
13852 Add _new_custom, make _new_application a macro to _new_custom.
13854 2005-07-20 Wim Taymans <wim@fluendo.com>
13856 * gst/base/gstbasesrc.c: (gst_base_src_init),
13857 (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
13858 * gst/base/gstbasesrc.h:
13859 Add a gboolean to decide when to push out a discont.
13861 * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
13862 (gst_queue_loop), (gst_queue_handle_src_query),
13863 (gst_queue_sink_activate_push), (gst_queue_src_activate_push),
13864 (gst_queue_set_property), (gst_queue_get_property):
13865 Some cleanups.
13867 * tests/threadstate/threadstate1.c: (main):
13868 Make a thread test compile and run... very silly..
13871 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13873 * docs/manual/appendix-porting.xml:
13874 Mention removal of libgstgconf-0.9.la and existence of gconf
13875 elements.
13877 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13879 * docs/pwg/advanced-clock.xml:
13880 * docs/pwg/appendix-porting.xml:
13881 * docs/pwg/intro-preface.xml:
13882 * docs/pwg/other-base.xml:
13883 * docs/pwg/other-manager.xml:
13884 * docs/pwg/other-nton.xml:
13885 * docs/pwg/other-ntoone.xml:
13886 * docs/pwg/other-oneton.xml:
13887 * docs/pwg/pwg.xml:
13888 Document base classes, update sections of n-to-1 and 1-to-n (muxer,
13889 demuxer), remove n-to-n (was never written), fix some code examples
13890 and links and update the porting section to include all this.
13892 2005-07-19 Wim Taymans <wim@fluendo.com>
13894 * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_sink_event),
13895 (gst_queue_chain), (gst_queue_loop), (gst_queue_handle_src_event),
13896 (gst_queue_handle_src_query), (gst_queue_sink_activate_push),
13897 (gst_queue_src_activate_push), (gst_queue_change_state),
13898 (gst_queue_get_property):
13899 * gst/gstqueue.h:
13900 Propagate GstFlowReturn more intelligently upstream and output
13901 an ERROR/EOS when streaming stopped due to fatal error.
13903 2005-07-19 Wim Taymans <wim@fluendo.com>
13905 * tools/gst-launch.c: (check_intr), (event_loop), (main):
13906 Don't block forever for the state change to complete, the
13907 pipeline already did with a sensible timeout.
13909 2005-07-19 Wim Taymans <wim@fluendo.com>
13911 * gst/base/gstbasesrc.c: (gst_base_src_get_range):
13912 Make sure we never call the create function is we
13913 got deactivated.
13915 2005-07-19 Andy Wingo <wingo@pobox.com>
13917 * gst/parse/parse.l: Attempt to solve bug #172815.
13919 2005-07-19 Wim Taymans <wim@fluendo.com>
13921 * docs/design/part-clocks.txt:
13922 * docs/design/part-events.txt:
13923 * gst/base/gstbasesrc.c: (gst_base_src_do_seek):
13924 Small docs updates.
13925 Only update the seeking values when we are not
13926 busy streaming.
13928 2005-07-19 Jan Schmidt <thaytan@mad.scientist.com>
13930 * gst/base/gstbasesrc.c: (gst_base_src_loop):
13931 Oops, ignore the result of gst_pad_push_event here.
13933 2005-07-19 Jan Schmidt <thaytan@mad.scientist.com>
13935 * gst/base/gstbasesrc.c: (gst_base_src_loop),
13936 (gst_base_src_activate_push):
13937 Send discont event from the loop function, as pads
13938 aren't activated yet in the activate_push handler.
13940 * gst/gstbin.c: (bin_bus_handler):
13941 Don't leak element name.
13943 2005-07-18 Andy Wingo <wingo@pobox.com>
13945 * configure.ac: Use AS_LIBTOOL_TAGS.
13947 2005-07-18 Wim Taymans <wim@fluendo.com>
13949 * docs/gst/gstreamer.types:
13950 Remove deleted types.
13952 2005-07-18 Wim Taymans <wim@fluendo.com>
13954 * check/elements/gstfakesrc.c: (GST_START_TEST):
13955 * configure.ac:
13956 * gst/Makefile.am:
13957 * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
13958 (init_popt_callback):
13959 * gst/gst.h:
13960 * gst/gst_private.h:
13961 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_add_func),
13962 (gst_bin_remove_func), (gst_bin_get_state), (gst_bin_change_state):
13963 * gst/gstbin.h:
13964 * gst/gstbus.h:
13965 * gst/gstconfig.h.in:
13966 * gst/gstelement.c: (gst_element_class_init),
13967 (gst_element_set_base_time), (gst_element_get_base_time),
13968 (iterator_fold_with_resync), (gst_element_change_state),
13969 (gst_element_dispose), (gst_element_get_bus):
13970 * gst/gstelement.h:
13971 * gst/gstelementfactory.h:
13972 * gst/gsterror.c: (_gst_core_errors_init):
13973 * gst/gsterror.h:
13974 * gst/gstevent.h:
13975 * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
13976 * gst/gstindex.c:
13977 * gst/gstinfo.c: (_gst_debug_init):
13978 * gst/gstmessage.c: (_gst_message_copy):
13979 * gst/gstmessage.h:
13980 * gst/gstminiobject.h:
13981 * gst/gstobject.c:
13982 * gst/gstobject.h:
13983 * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
13984 (gst_pad_set_caps), (gst_pad_start_task), (gst_pad_stop_task):
13985 * gst/gstpad.h:
13986 * gst/gstparse.h:
13987 * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
13988 (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
13989 (gst_pipeline_get_last_stream_time):
13990 * gst/gstpipeline.h:
13991 * gst/gstpluginfeature.h:
13992 * gst/gstquery.h:
13993 * gst/gstscheduler.c:
13994 * gst/gstscheduler.h:
13995 * gst/gststructure.h:
13996 * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
13997 (gst_task_finalize), (gst_task_func), (gst_task_create),
13998 (gst_task_set_lock), (gst_task_get_state), (gst_task_start),
13999 (gst_task_stop), (gst_task_pause):
14000 * gst/gsttask.h:
14001 * gst/gsttypefind.h:
14002 * gst/gsttypes.h:
14003 * gst/registries/gstlibxmlregistry.c: (load_feature),
14004 (gst_xml_registry_load), (gst_xml_registry_save_feature):
14005 * gst/registries/gstxmlregistry.c:
14006 (gst_xml_registry_start_element), (gst_xml_registry_save_feature):
14007 * gst/schedulers/threadscheduler.c:
14008 * libs/gst/control/dparammanager.h:
14009 * tools/gst-inspect.c: (print_element_list),
14010 (print_plugin_features), (print_element_features):
14011 * tools/gst-xmlinspect.c: (print_element_list),
14012 (print_plugin_info), (main):
14013 Removed plugable schedulers.
14014 Removed Scheduler/Manager from elements.
14015 Removed gsttypes.h, rearranged includes.
14016 Removed dependency pad<->element, element<>pipeline, and
14017 various others, fix includes.
14018 implement gst_pad_get_parent() with gst_object_get_parent()
14019 Make GstTask sefcontained.
14020 Fix _get_state() on GstBin, it did not return ASYNC with a 0
14021 timeout.
14022 Fix endless loop in iterator_fold_with_resync.
14025 2005-07-18 Wim Taymans <wim@fluendo.com>
14027 * gst/Makefile.am:
14028 * gst/gstarch.h:
14029 Remove old file.
14031 2005-07-18 Wim Taymans <wim@fluendo.com>
14033 * gst/Makefile.am:
14034 No more cothreads.h
14036 2005-07-18 Wim Taymans <wim@fluendo.com>
14038 * gst/cothreads.c:
14039 * gst/cothreads.h:
14040 Let's remove these.
14042 2005-07-18 Wim Taymans <wim@fluendo.com>
14044 * docs/design/part-dynamic.txt:
14045 * docs/design/part-events.txt:
14046 * docs/design/part-seeking.txt:
14047 Some more docs in the works.
14049 * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
14050 (gst_base_transform_getcaps), (gst_base_transform_configure_caps),
14051 (gst_base_transform_setcaps), (gst_base_transform_get_size),
14052 (gst_base_transform_buffer_alloc), (gst_base_transform_event),
14053 (gst_base_transform_handle_buffer),
14054 (gst_base_transform_sink_activate_push),
14055 (gst_base_transform_src_activate_pull),
14056 (gst_base_transform_set_passthrough),
14057 (gst_base_transform_is_passthrough):
14058 Refcounting fixes.
14060 * gst/gstbus.c: (gst_bus_source_dispatch), (gst_bus_poll):
14061 Cleanups.
14063 * gst/gstevent.c: (gst_event_finalize):
14064 Set SRC to NULL.
14066 * gst/gstutils.c: (gst_element_unlink),
14067 (gst_pad_get_parent_element), (gst_pad_proxy_getcaps),
14068 (gst_pad_proxy_setcaps):
14069 * gst/gstutils.h:
14070 Add _get_parent_element() to get a pads parent as an element.
14072 2005-07-18 Wim Taymans <wim@fluendo.com>
14074 * check/gst/gstbin.c: (GST_START_TEST):
14075 Remove bogus test.
14077 2005-07-18 Wim Taymans <wim@fluendo.com>
14079 * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
14080 (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
14081 (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
14082 (gst_base_sink_event), (gst_base_sink_do_sync),
14083 (gst_base_sink_chain), (gst_base_sink_loop),
14084 (gst_base_sink_deactivate), (gst_base_sink_activate_push),
14085 (gst_base_sink_activate_pull), (gst_base_sink_change_state):
14086 Refcounting fixes.
14087 Fix logic for returning ASYNC when not prerolled.
14089 2005-07-18 Wim Taymans <wim@fluendo.com>
14091 * gst/gstqueue.c: (gst_queue_handle_sink_event):
14092 Fix nasty refcount bug.
14094 2005-07-16 Philippe Khalaf <burger@speedy.org>
14096 * gst/elements/gstfdsrc.c:
14097 * gst/elements/gstfdsrc.h:
14098 * gst/elements/gstelements.c:
14099 * gst/elements/Makefile.am:
14100 Ported fdsrc to 0.9.
14102 2005-07-16 Wim Taymans <wim@fluendo.com>
14104 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
14105 (gst_base_sink_do_sync):
14106 Fix compile error.
14108 2005-07-16 Wim Taymans <wim@fluendo.com>
14110 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
14111 (gst_base_sink_event), (gst_base_sink_get_times),
14112 (gst_base_sink_do_sync), (gst_base_sink_change_state):
14113 * gst/base/gstbasesink.h:
14114 Store and use discont values when syncing buffers as described
14115 in design docs.
14117 * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
14118 (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
14119 (gst_base_src_activate_push):
14120 Push discont event when starting.
14122 * gst/elements/gstidentity.c: (gst_identity_transform):
14123 Small cleanups.
14125 * gst/gstbin.c: (gst_bin_change_state):
14126 Small cleanups in base_time distribution.
14128 * gst/gstelement.c: (gst_element_set_base_time),
14129 (gst_element_get_base_time), (gst_element_change_state):
14130 * gst/gstelement.h:
14131 Added methods for the base_time of the element.
14132 Some MT fixes.
14134 * gst/gstpipeline.c: (gst_pipeline_send_event),
14135 (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
14136 (gst_pipeline_get_last_stream_time):
14137 * gst/gstpipeline.h:
14138 MT fixes.
14139 Handle seeking as described in design doc, remove stream_time
14140 hack.
14141 Cleanups clock and stream_time selection code. Added accessors
14142 for the stream_time.
14145 2005-07-16 Andy Wingo <wingo@pobox.com>
14147 * gst/gsterror.c (_gst_core_errors_init): Use the magic word
14148 (#305291).
14150 2005-07-16 Wim Taymans <wim@fluendo.com>
14152 * check/gst/gstbin.c: (GST_START_TEST):
14153 Make elements silent as the deep_notify refs the
14154 parent, which might make the test fail.
14156 * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
14157 Don't hold the lock for too long.
14159 2005-07-16 Tim-Philipp Müller <tim at centricular dot net>
14161 * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
14162 Don't unref the caps we passed to gst_caps_make_writable() after
14163 passing them. gst_caps_make_writable() will do that for us.
14165 2005-07-15 Andy Wingo <wingo@pobox.com>
14167 * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
14168 (#157311).
14170 * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
14171 own marshalling function for the handoff signal. Properly type the
14172 buffer as a buffer. Fixes some warnings. Should do a more general
14173 solution.
14174 (gst_identity_class_init): Plug into the right marshaller.
14176 2005-07-15 Wim Taymans <wim@fluendo.com>
14178 * docs/design/part-TODO.txt:
14179 * docs/design/part-clocks.txt:
14180 * docs/design/part-element-sink.txt:
14181 * docs/design/part-events.txt:
14182 * docs/design/part-gstpipeline.txt:
14183 Updated docs, mostly DISCONT related.
14185 2005-07-15 Tim-Philipp Müller <tim at centricular dot net>
14187 * docs/pwg/building-pads.xml:
14188 s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
14190 2005-07-15 Andy Wingo <wingo@pobox.com>
14192 * tools/gst-typefind.c: Update, add copyright block.
14194 * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
14195 Normalize and truncate caps before fixation.
14197 * gst/gstcaps.h:
14198 * gst/gstcaps.c (gst_caps_truncate): New function, destructively
14199 discards all but the first structure from its argument.
14201 2005-07-15 Wim Taymans <wim@fluendo.com>
14203 * gst/base/gstbasetransform.c: (gst_base_transform_init),
14204 (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
14205 (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
14206 (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
14207 (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
14208 (gst_base_transform_chain), (gst_base_transform_change_state),
14209 (gst_base_transform_set_passthrough),
14210 (gst_base_transform_is_passthrough):
14211 * gst/base/gstbasetransform.h:
14212 Make passthrough work using the bufferpools.
14213 Changed API a bit, subclasses have to write into a buffer
14214 provided by the base class.
14215 More debug info in nego functions.
14217 * gst/elements/gstidentity.c: (gst_identity_init),
14218 (gst_identity_transform):
14219 Port to new base class.
14221 2005-07-15 Wim Taymans <wim@fluendo.com>
14223 * gst/gstmessage.c: (gst_message_new_state_changed):
14224 * tools/gst-launch.c: (event_loop), (main):
14225 Totally dump messages in -launch with the -m option.
14226 Fix message name for State messages,
14228 2005-07-14 Wim Taymans <wim@fluendo.com>
14230 * gst/base/gstbasesrc.c: (gst_base_src_loop):
14231 Post error messages on errors.
14233 2005-07-14 Wim Taymans <wim@fluendo.com>
14235 * gst/gstcaps.c: (gst_caps_do_simplify):
14236 Remove debug info.
14238 * gst/gsterror.h:
14239 Define error for stream stopped.
14241 * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
14242 (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
14243 Do proper return values.
14245 * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
14246 (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
14247 (gst_pad_get_range):
14248 Better return values.
14250 * gst/gstpad.h:
14251 Reorganise return values, add macro to check for fatal errors.
14253 * gst/gstqueue.c: (gst_queue_chain):
14254 Return proper GstFlowReturn values,
14256 2005-07-14 Thomas Vander Stichele <thomas at apestaart dot org>
14258 * docs/gst/gstreamer-sections.txt:
14259 * docs/gst/gstreamer.types:
14260 * docs/gst/tmpl/gst.sgml:
14261 * docs/gst/tmpl/gstbasesink.sgml:
14262 * docs/gst/tmpl/gstbasesrc.sgml:
14263 * docs/gst/tmpl/gstbasetransform.sgml:
14264 * docs/gst/tmpl/gstbin.sgml:
14265 * docs/gst/tmpl/gstbuffer.sgml:
14266 * docs/gst/tmpl/gstcaps.sgml:
14267 * docs/gst/tmpl/gstclock.sgml:
14268 * docs/gst/tmpl/gstcompat.sgml:
14269 * docs/gst/tmpl/gstconfig.sgml:
14270 * docs/gst/tmpl/gstelement.sgml:
14271 * docs/gst/tmpl/gstelementdetails.sgml:
14272 * docs/gst/tmpl/gstelementfactory.sgml:
14273 * docs/gst/tmpl/gstenumtypes.sgml:
14274 * docs/gst/tmpl/gsterror.sgml:
14275 * docs/gst/tmpl/gstevent.sgml:
14276 * docs/gst/tmpl/gstfakesink.sgml:
14277 * docs/gst/tmpl/gstfakesrc.sgml:
14278 * docs/gst/tmpl/gstfilesink.sgml:
14279 * docs/gst/tmpl/gstfilesrc.sgml:
14280 * docs/gst/tmpl/gstfilter.sgml:
14281 * docs/gst/tmpl/gstformat.sgml:
14282 * docs/gst/tmpl/gstghostpad.sgml:
14283 * docs/gst/tmpl/gstimplementsinterface.sgml:
14284 * docs/gst/tmpl/gstindex.sgml:
14285 * docs/gst/tmpl/gstindexfactory.sgml:
14286 * docs/gst/tmpl/gstinfo.sgml:
14287 * docs/gst/tmpl/gstiterator.sgml:
14288 * docs/gst/tmpl/gstmacros.sgml:
14289 * docs/gst/tmpl/gstmemchunk.sgml:
14290 * docs/gst/tmpl/gstminiobject.sgml:
14291 * docs/gst/tmpl/gstobject.sgml:
14292 * docs/gst/tmpl/gstpad.sgml:
14293 * docs/gst/tmpl/gstpadtemplate.sgml:
14294 * docs/gst/tmpl/gstparse.sgml:
14295 * docs/gst/tmpl/gstpipeline.sgml:
14296 * docs/gst/tmpl/gstplugin.sgml:
14297 * docs/gst/tmpl/gstpluginfeature.sgml:
14298 * docs/gst/tmpl/gstquery.sgml:
14299 * docs/gst/tmpl/gstqueue.sgml:
14300 * docs/gst/tmpl/gstregistry.sgml:
14301 * docs/gst/tmpl/gstregistrypool.sgml:
14302 * docs/gst/tmpl/gstscheduler.sgml:
14303 * docs/gst/tmpl/gstschedulerfactory.sgml:
14304 * docs/gst/tmpl/gststructure.sgml:
14305 * docs/gst/tmpl/gstsystemclock.sgml:
14306 * docs/gst/tmpl/gsttaglist.sgml:
14307 * docs/gst/tmpl/gsttagsetter.sgml:
14308 * docs/gst/tmpl/gsttrace.sgml:
14309 * docs/gst/tmpl/gsttrashstack.sgml:
14310 * docs/gst/tmpl/gsttypefind.sgml:
14311 * docs/gst/tmpl/gsttypefindfactory.sgml:
14312 * docs/gst/tmpl/gsttypes.sgml:
14313 * docs/gst/tmpl/gsturihandler.sgml:
14314 * docs/gst/tmpl/gsturitype.sgml:
14315 * docs/gst/tmpl/gstutils.sgml:
14316 * docs/gst/tmpl/gstvalue.sgml:
14317 * docs/gst/tmpl/gstversion.sgml:
14318 * docs/gst/tmpl/gstxml.sgml:
14319 * docs/libs/tmpl/gstcontrol.sgml:
14320 * docs/libs/tmpl/gstdataprotocol.sgml:
14321 * docs/libs/tmpl/gstdparam.sgml:
14322 * docs/libs/tmpl/gstdplinint.sgml:
14323 * docs/libs/tmpl/gstdpman.sgml:
14324 * docs/libs/tmpl/gstdpsmooth.sgml:
14325 * docs/libs/tmpl/gstgetbits.sgml:
14326 * docs/libs/tmpl/gstunitconvert.sgml:
14327 * gst/base/gstpushsrc.c: (gst_push_src_get_type),
14328 (gst_push_src_base_init), (gst_push_src_class_init),
14329 (gst_push_src_init), (gst_push_src_create):
14330 * gst/base/gstpushsrc.h:
14331 * gst/elements/gstelements.c:
14332 * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
14333 (gst_fake_sink_base_init), (gst_fake_sink_class_init),
14334 (gst_fake_sink_init), (gst_fake_sink_set_property),
14335 (gst_fake_sink_get_property), (gst_fake_sink_get_times),
14336 (gst_fake_sink_event), (gst_fake_sink_preroll),
14337 (gst_fake_sink_render), (gst_fake_sink_change_state):
14338 * gst/elements/gstfakesink.h:
14339 * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
14340 (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
14341 (gst_fake_src_base_init), (gst_fake_src_class_init),
14342 (gst_fake_src_init), (gst_fake_src_event_handler),
14343 (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
14344 (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
14345 (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
14346 (gst_fake_src_create_buffer), (gst_fake_src_create),
14347 (gst_fake_src_start), (gst_fake_src_stop):
14348 * gst/elements/gstfakesrc.h:
14349 * gst/elements/gstfilesink.c: (_do_init),
14350 (gst_file_sink_base_init), (gst_file_sink_class_init),
14351 (gst_file_sink_init), (gst_file_sink_dispose),
14352 (gst_file_sink_set_location), (gst_file_sink_set_property),
14353 (gst_file_sink_get_property), (gst_file_sink_open_file),
14354 (gst_file_sink_close_file), (gst_file_sink_query),
14355 (gst_file_sink_event), (gst_file_sink_render),
14356 (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
14357 (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
14358 (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
14359 * gst/elements/gstfilesink.h:
14360 * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
14361 (gst_file_src_class_init), (gst_file_src_init),
14362 (gst_file_src_finalize), (gst_file_src_set_location),
14363 (gst_file_src_set_property), (gst_file_src_get_property),
14364 (gst_file_src_map_region), (gst_file_src_map_small_region),
14365 (gst_file_src_create_mmap), (gst_file_src_create_read),
14366 (gst_file_src_create), (gst_file_src_is_seekable),
14367 (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
14368 (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
14369 (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
14370 (gst_file_src_uri_handler_init):
14371 * gst/elements/gstfilesrc.h:
14372 more autistic cleanliness in functions/names/defines
14374 2005-07-13 Andy Wingo <wingo@pobox.com>
14376 * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
14377 source couldn't negotiate.
14379 * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
14380 connections again.
14382 * gst/gstutils.h:
14383 * gst/gstutils.c (gst_element_link_pads_filtered): New old
14384 function. I am channeling Hades. Put your boots on suckers!!!
14386 2005-07-13 Thomas Vander Stichele <thomas at apestaart dot org>
14388 * testsuite/caps/Makefile.am:
14389 * testsuite/caps/value_compare.c:
14390 * testsuite/caps/value_intersect.c:
14391 * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
14392 move two testsuite apps over to the check dir
14394 2005-07-12 Wim Taymans <wim@fluendo.com>
14396 * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
14397 Added more debug info in the negotiate process.
14399 * gst/gstmessage.h:
14400 Prepare for segment playback.
14402 * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
14403 Better debugging.
14405 * gst/gstutils.c:
14406 Some more docs.
14408 * tools/gst-launch.c: (main):
14409 NULL pipeline on errors.
14411 2005-07-12 Andy Wingo <wingo@pobox.com>
14413 * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
14414 not it comes from a malloc region. Make sure our copy gets freed.
14416 2005-07-12 Thomas Vander Stichele <thomas at apestaart dot org>
14418 * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
14419 * check/gst/gstmessage.c: (GST_START_TEST):
14420 * check/gst/gststructure.c: (GST_START_TEST),
14421 (gst_structure_suite), (main):
14422 more testing
14423 * gst/gstelement.c: (gst_element_message_full):
14424 clean up GError and debug string now that they get copied
14425 * gst/gstmessage.c: (gst_message_new_error),
14426 (gst_message_new_warning), (gst_message_parse_error),
14427 (gst_message_parse_warning):
14428 use GST_TYPE_G_ERROR for structure_new, and take copies of
14429 arguments, so that we don't mess up refcounting
14431 2005-07-12 Thomas Vander Stichele <thomas at apestaart dot org>
14433 * check/Makefile.am:
14434 add per-test valgrind targets
14435 * check/gst-libs/gdp.c: (GST_START_TEST),
14436 (gst_data_protocol_suite), (main):
14437 clean up
14439 2005-07-12 Thomas Vander Stichele <thomas at apestaart dot org>
14441 * check/Makefile.am:
14442 instate more valgrindable tests
14443 * check/elements/gstfakesrc.c: (chain_func), (event_func),
14444 (GST_START_TEST), (fakesrc_suite):
14445 * check/gst/gstpad.c: (GST_START_TEST):
14446 * check/gst/gststructure.c: (GST_START_TEST):
14447 fix test leaks
14448 * docs/gst/tmpl/gstminiobject.sgml:
14449 * gst/gstpad.c: (gst_pad_finalize):
14450 fix the static mutex leak
14452 2005-07-11 Thomas Vander Stichele <thomas at apestaart dot org>
14454 * check/Makefile.am:
14455 add two more tests for valgrinding
14456 * check/gst/gstvalue.c: (GST_START_TEST):
14457 test refcount of deserialized buffer, found a leak
14458 * docs/gst/gstreamer-docs.sgml:
14459 * docs/gst/gstreamer-sections.txt:
14460 * docs/gst/gstreamer.types:
14461 * docs/gst/tmpl/gstminiobject.sgml:
14462 add miniobject to docs
14463 * gst/gstminiobject.c:
14464 add some docs
14465 * gst/gstvalue.c: (gst_value_deserialize_buffer),
14466 (gst_string_unwrap):
14467 fix a hard-to-find invalid write for one of the tests
14468 fix a leak for deserialized buffers
14470 2005-07-11 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14472 * docs/pwg/advanced-events.xml:
14473 * docs/pwg/advanced-request.xml:
14474 * docs/pwg/advanced-scheduling.xml:
14475 * docs/pwg/appendix-porting.xml:
14476 * docs/pwg/building-boiler.xml:
14477 * docs/pwg/intro-preface.xml:
14478 * docs/pwg/other-ntoone.xml:
14479 Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
14480 of example code and explanation for pad activation, loop() and
14481 getrange() functions and a bit more. Remove old comments pointing
14482 to loop-functions.
14483 * examples/pwg/Makefile.am:
14484 Add loop/getrange examples.
14486 2005-07-11 Thomas Vander Stichele <thomas at apestaart dot org>
14488 * configure.ac:
14489 check for valgrind binary + some fixes
14490 * check/gst.supp:
14491 valgrind suppressions for the tests
14492 * check/Makefile.am:
14493 add a valgrind: target that valgrinds the unit tests
14494 * check/gst/gst.c: (GST_START_TEST), (gst_suite):
14495 * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
14496 * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
14497 * check/gst/gstghostpad.c:
14498 added some cleanup
14499 * check/gst/gstdata.c:
14500 removed
14501 * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
14502 (thread_unref), (gst_mini_object_suite), (main):
14503 added
14504 * gst/gst.c: (gst_deinit):
14505 * gst/gst.h:
14506 add a method to clean up.
14507 * gst/gstsystemclock.c: (gst_system_clock_dispose),
14508 (gst_system_clock_obtain):
14509 allow for disposing the system clock.
14510 * tools/gst-launch.c: (main):
14511 deinit
14513 2005-07-11 Thomas Vander Stichele <thomas at apestaart dot org>
14515 * docs/gst/tmpl/gstbasesrc.sgml:
14516 * docs/gst/tmpl/gstfakesrc.sgml:
14517 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
14518 (gst_base_src_init), (gst_base_src_set_property),
14519 (gst_base_src_get_property), (gst_base_src_get_range),
14520 (gst_base_src_start):
14521 * gst/base/gstbasesrc.h:
14522 add num-buffers property
14523 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
14524 (gst_fakesrc_init), (gst_fakesrc_set_property),
14525 (gst_fakesrc_get_property), (gst_fakesrc_create),
14526 (gst_fakesrc_start):
14527 remove num-buffers property
14529 2005-07-10 Thomas Vander Stichele <thomas at apestaart dot org>
14531 * docs/gst/gstreamer-sections.txt:
14532 * docs/gst/tmpl/gstbasesink.sgml:
14533 * docs/gst/tmpl/gstbasesrc.sgml:
14534 * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
14535 (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
14536 (gst_base_sink_finalize), (gst_base_sink_set_clock),
14537 (gst_base_sink_set_property), (gst_base_sink_get_property),
14538 (gst_base_sink_handle_object), (gst_base_sink_event),
14539 (gst_base_sink_do_sync), (gst_base_sink_handle_event),
14540 (gst_base_sink_handle_buffer), (gst_base_sink_chain),
14541 (gst_base_sink_loop), (gst_base_sink_deactivate),
14542 (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
14543 (gst_base_sink_change_state):
14544 * gst/base/gstbasesink.h:
14545 * gst/base/gstbasesrc.h:
14546 * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
14547 * gst/elements/gstfilesink.c: (gst_filesink_class_init),
14548 (gst_filesink_init):
14549 more macro splitting
14551 2005-07-10 Thomas Vander Stichele <thomas at apestaart dot org>
14553 * gst/gstelement.c: (gst_element_get_bus):
14554 add debug
14555 * tools/gst-launch.c: (check_intr), (event_loop):
14556 fix bus leaks
14558 2005-07-10 Thomas Vander Stichele <thomas at apestaart dot org>
14560 * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
14561 fix a caps leak
14563 2005-07-10 Thomas Vander Stichele <thomas at apestaart dot org>
14565 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
14566 (gst_base_src_finalize):
14567 add finalize method and clean up properly
14568 * gst/gstpipeline.c: (gst_pipeline_dispose):
14569 add debug
14571 2005-07-09 Thomas Vander Stichele <thomas at apestaart dot org>
14573 * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
14574 (gst_bin_suite):
14575 add more things to check
14576 * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
14577 * gst/gstelement.c:
14578 more debug
14580 2005-07-09 Thomas Vander Stichele <thomas at apestaart dot org>
14582 * check/elements/gstfakesrc.c: (chain_func), (event_func),
14583 (GST_START_TEST), (fakesrc_suite):
14584 * check/gst-libs/gdp.c: (GST_START_TEST):
14585 * check/gst/gst.c: (GST_START_TEST):
14586 * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
14587 * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
14588 * check/gst/gstbus.c: (GST_START_TEST):
14589 * check/gst/gstcaps.c: (GST_START_TEST):
14590 * check/gst/gstdata.c: (GST_START_TEST):
14591 * check/gst/gstelement.c: (GST_START_TEST):
14592 * check/gst/gstghostpad.c: (GST_START_TEST):
14593 * check/gst/gstiterator.c: (GST_START_TEST):
14594 * check/gst/gstmessage.c: (GST_START_TEST):
14595 * check/gst/gstobject.c: (GST_START_TEST):
14596 * check/gst/gstpad.c: (GST_START_TEST):
14597 * check/gst/gststructure.c: (GST_START_TEST):
14598 * check/gst/gstsystemclock.c: (GST_START_TEST),
14599 (gst_systemclock_suite):
14600 * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
14601 * check/gst/gstvalue.c: (GST_START_TEST):
14602 * check/pipelines/cleanup.c: (GST_START_TEST):
14603 * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
14604 * check/states/sinks.c: (GST_START_TEST):
14605 * check/gstcheck.c: (gst_check_init):
14606 * check/gstcheck.h:
14607 add debugging category
14608 use GST_START_TEST now, so we add a debug line
14610 2005-07-09 Thomas Vander Stichele <thomas at apestaart dot org>
14612 * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
14613 add test for state change message on a bin
14614 * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
14615 add another test
14616 * gst/gstbin.c: (gst_bin_init):
14617 * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
14618 * gst/gstelement.c: (gst_element_post_message),
14619 (gst_element_set_state):
14620 * gst/gstelementfactory.c: (gst_element_factory_create):
14621 * gst/gstmessage.c: (gst_message_new):
14622 * gst/gstscheduler.c:
14623 various debugging additions and cleanups
14625 2005-07-08 Thomas Vander Stichele <thomas at apestaart dot org>
14627 * check/Makefile.am:
14628 * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
14629 (main):
14630 adding tests for elements
14631 * gst/gstelement.c: (gst_element_dispose):
14633 2005-07-08 Thomas Vander Stichele <thomas at apestaart dot org>
14635 * gst/registries/gstlibxmlregistry.c: (load_feature):
14636 plug more leaks. A simple gst_init() now is leakfree, yay.
14638 2005-07-08 Thomas Vander Stichele <thomas at apestaart dot org>
14640 * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
14641 (gst_xml_registry_load):
14642 plug another memleak
14644 2005-07-08 Thomas Vander Stichele <thomas at apestaart dot org>
14646 * configure.ac:
14647 use GST_SET_ERROR_CFLAGS
14648 * docs/faq/cvs.xml:
14649 change to ERROR_CFLAGS
14651 2005-07-08 Thomas Vander Stichele <thomas at apestaart dot org>
14653 * configure.ac:
14654 make GST_ERROR_CFLAGS overridable and re-enable Werror
14655 * docs/faq/cvs.xml:
14656 add a note about error CFLAGS
14657 * docs/gst/tmpl/gstfakesrc.sgml:
14658 * gst/elements/gstfakesrc.c:
14659 comment out some unused code
14660 * gst/gst.c: (split_and_iterate):
14661 * gst/registries/gstlibxmlregistry.c: (load_pad_template),
14662 (load_feature):
14663 plug some memleaks
14665 2005-07-07 Thomas Vander Stichele <thomas at apestaart dot org>
14667 * common/Makefile.am:
14668 * common/gtk-doc.mak:
14669 * docs/gst/Makefile.am:
14670 factor out gtk-doc.mak
14672 2005-07-07 Wim Taymans <wim@fluendo.com>
14674 * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
14675 (gst_thread_scheduler_dispose):
14676 Unlock the STREAM_LOCK completely.
14678 2005-07-07 Thomas Vander Stichele <thomas at apestaart dot org>
14680 * check/Makefile.am:
14681 * check/elements/.cvsignore:
14682 * check/elements/gstfakesrc.c: (chain_func), (event_func),
14683 (START_TEST), (fakesrc_suite), (main):
14684 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
14685 (gst_fakesrc_set_property), (gst_fakesrc_get_property),
14686 (gst_fakesrc_create), (gst_fakesrc_start):
14687 * gst/elements/gstfakesrc.h:
14688 adding a first element test
14690 2005-07-07 Andy Wingo <wingo@pobox.com>
14692 * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
14693 debug message.
14695 2005-07-07 Wim Taymans <wim@fluendo.com>
14697 * gst/gstquery.c:
14698 * gst/gstquery.h:
14699 Remove old types
14701 2005-07-07 Wim Taymans <wim@fluendo.com>
14703 * gst/base/gstbasesrc.c: (gst_base_src_get_range),
14704 (gst_base_src_default_negotiate), (gst_base_src_negotiate):
14705 Allow subclasses to implement their own negotiation.
14707 2005-07-07 Jan Schmidt <thaytan@mad.scientist.com>
14709 * docs/design/part-gstbin.txt:
14710 * docs/design/part-gstpipeline.txt:
14711 Update design notes to reflect the movement of
14712 responsibility for bus handling from GstPipeline to
14713 GstBin
14715 2005-07-07 Jan Schmidt <thaytan@mad.scientist.com>
14717 * configure.ac:
14718 Remove unnecessary queue2/3/4 examples.
14720 2005-07-07 Jan Schmidt <thaytan@mad.scientist.com>
14722 * examples/Makefile.am:
14723 * examples/helloworld/helloworld.c: (event_loop), (main):
14724 * examples/queue/queue.c: (event_loop), (main):
14725 * examples/queue2/queue2.c: (main):
14726 Update a couple of the examples to work again.
14728 * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
14729 (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
14730 Spelling corrections and extra debug.
14732 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
14733 (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
14734 (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
14735 * gst/gstbin.h:
14736 * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
14737 (gst_pipeline_change_state):
14738 * gst/gstpipeline.h:
14739 Move the bus handler for children to the GstBin, and create a
14740 separate bus for receiving messages from children to the one the
14741 bus sends 'upwards' on.
14743 2005-07-06 Wim Taymans <wim@fluendo.com>
14745 * gst/base/README:
14746 * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
14747 (gst_base_sink_handle_object), (gst_base_sink_loop),
14748 (gst_base_sink_change_state):
14749 * gst/base/gstbasesink.h:
14750 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
14751 (gst_base_src_init), (gst_base_src_setcaps),
14752 (gst_base_src_getcaps), (gst_base_src_loop),
14753 (gst_base_src_default_negotiate), (gst_base_src_negotiate),
14754 (gst_base_src_start), (gst_base_src_change_state):
14755 * gst/base/gstbasesrc.h:
14756 Make basesrc negotiate.
14757 Handle the case where preroll fails in basesink.
14758 Update README.
14760 2005-07-06 Wim Taymans <wim@fluendo.com>
14762 * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
14763 Implement the fixate function.
14764 Clean up acceptcaps.
14766 2005-07-06 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14768 * docs/pwg/building-filterfactory.xml:
14769 * docs/pwg/pwg.xml:
14770 Remove never-written filter-factory chapter; I'll add the various
14771 base classes to part 4 ("other element types") later on.
14773 2005-07-06 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14775 * docs/pwg/advanced-negotiation.xml:
14776 * docs/pwg/building-boiler.xml:
14777 * docs/pwg/building-pads.xml:
14778 * docs/pwg/pwg.xml:
14779 * examples/pwg/Makefile.am:
14780 Add a chapter on caps negotiation, simplify the original code
14781 samples a bit w.r.t. caps negotiation, add link to the advanced
14782 section. Add a bunch of examples showing different use cases of
14783 different types of caps negotiation. Upstream renegotiation isn't
14784 fully documented yet since nobody knows how that works.
14786 2005-07-06 Thomas Vander Stichele <thomas at apestaart dot org>
14788 * check/gst/gstpad.c:
14789 * check/gstcheck.c:
14790 * gst/gstpad.c: (gst_pad_get_internal_links_default):
14791 if pad has no parent, return NULL as list of internal links
14793 2005-07-05 Andy Wingo <wingo@pobox.com>
14795 * gst/elements/gstfilesrc.c:
14796 * gst/elements/gstfakesrc.c:
14797 * gst/base/gstpushsrc.c:
14798 * gst/base/gstbasesrc.h:
14799 * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
14801 2005-07-05 Stefan Kost <ensonic@users.sf.net>
14803 * Makefile.am:
14804 better report generation target (lcov needs a patch)
14806 2005-07-05 Andy Wingo <wingo@pobox.com>
14808 * gst/elements, testsuite: Null if we got it...
14810 2005-07-05 Wim Taymans <wim@fluendo.com>
14812 * configure.ac:
14813 * libs/gst/dataprotocol/Makefile.am:
14814 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
14815 * libs/gst/dataprotocol/dataprotocol.h:
14816 * pkgconfig/Makefile.am:
14817 * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
14818 * pkgconfig/gstreamer-dataprotocol.pc.in:
14819 Ported dataprotol to 0.9.
14820 Added pkgconfig files.
14822 2005-07-05 Andy Wingo <wingo@pobox.com>
14824 * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
14825 Default to returning TRUE for the case when tranform_caps returns
14826 a fixed caps, like for identity or volume.
14828 * check/gst/gstbus.c (pound_bus_with_messages):
14829 * check/gst/gstmessage.c (START_TEST):
14830 * check/pipelines/simple_launch_lines.c (got_handoff): Application
14831 message API change.
14833 * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
14834 logic weaks here: always run transform_caps, trying passthrough
14835 operation only if the original caps intersects with the transform.
14837 * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
14838 source and sink caps.
14840 * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
14841 Intersect the peer caps with the pad template before going into
14842 transform_caps.
14843 (gst_base_transform_transform_caps): More debugging.
14845 * gst/gstmessage.h (gst_message_new_application): Take a GstObject
14846 src argument.
14848 2005-07-04 Edward Hervey <edward@fluendo.com>
14850 * gst/gstutils.c:
14851 * gst/gstutils.h:
14852 (gst_pad_add_*_probe): now returns the signal id for better wrapping
14853 in bindings.
14855 2005-07-04 Andy Wingo <wingo@pobox.com>
14857 * check/gst/gstpad.c: Only set explicit caps on pads.
14859 2005-07-01 Andy Wingo <wingo@pobox.com>
14861 * tests/network-clock.scm: Commentary update.
14863 * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
14864 Didn't really make sense, not implementable with basetransform,
14865 etc.
14866 (gst_identity_transform): Unref inbuf via make_writable. Feeble
14867 attempt at implementing the sync property, needs an unlock method.
14869 * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
14870 New func, by default returns the same caps (the identity
14871 transformation).
14872 (gst_base_transform_getcaps): Uses transform_caps to return
14873 something sensible.
14874 (gst_base_transform_setcaps): Complicated logic to get caps on
14875 both pads, even if they are different, and to call set_caps once
14876 for every time both pads get their caps set.
14877 (gst_base_transform_handle_buffer): Give the ref to the transform
14878 function. Allows in-place modification of the buffer.
14880 * gst/base/gstbasetransform.h (transform_caps): New class method.
14881 Given caps on one side, what can I do on the other.
14882 (set_caps): Take two caps, one for each side of the element.
14884 * gst/gstpad.h:
14885 * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
14886 caps in place. This is safe because we can check the mutability of
14887 the caps, and a good idea because fixate functions are just called
14888 as a matter of last resort. (Not actually implemented.)
14889 (gst_pad_set_caps): If the caps we're setting is actually the same
14890 as the existing pad caps, just update the pointer without calling
14891 setcaps. Assert that caps is either NULL or fixed, as per the
14892 docs.
14894 * gst/gstghostpad.c: Update for fixate changes.
14896 2005-07-02 Andy Wingo <wingo@pobox.com>
14898 * gst/gstcaps.c:
14899 * gst/gstcaps.h (gst_static_caps_get): Not const return, having
14900 two refcounts makes it immutable, which is enough. Doc more.
14902 2005-07-02 Jan Schmidt <thaytan@mad.scientist.com>
14904 * gst/gstpad.c: (gst_pad_emit_have_data_signal):
14905 Put the mini_object into GValue as a mini_object,
14906 not a gpointer, since that's how we declared
14907 the signal.
14909 2005-07-01 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14911 * examples/pwg/Makefile.am:
14912 Fix buildbot again.
14914 2005-07-01 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14916 * docs/pwg/building-testapp.xml:
14917 Add extra check.
14918 * examples/pwg/Makefile.am:
14919 Fix buildbot.
14921 2005-07-01 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14923 * configure.ac:
14924 * examples/Makefile.am:
14925 * examples/pwg/Makefile.am:
14926 * examples/pwg/extract.pl:
14927 Enable building the PWG examples.
14928 * docs/pwg/advanced-interfaces.xml:
14929 Add URI interface stub.
14930 * docs/pwg/advanced-types.xml:
14931 * docs/pwg/other-autoplugger.xml:
14932 * docs/pwg/appendix-porting.xml:
14933 * docs/pwg/pwg.xml:
14934 Add porting guide (mostly stubs), remove autoplugging (see ADM).
14935 * docs/pwg/building-boiler.xml:
14936 * docs/pwg/building-chainfn.xml:
14937 * docs/pwg/building-pads.xml:
14938 * docs/pwg/building-props.xml:
14939 * docs/pwg/building-state.xml:
14940 * docs/pwg/building-testapp.xml:
14941 Update the building-*.xml parts for 0.9 changes. All examples
14942 code blocks compile in examples/pwg/*.
14944 2005-06-30 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14946 * docs/manual/advanced-autoplugging.xml:
14947 * docs/manual/appendix-checklist.xml:
14948 * docs/manual/appendix-integration.xml:
14949 * docs/manual/highlevel-components.xml:
14950 Fix playbin/decodebin examples, update docs a bit, mention bus
14951 instead of signals in various places, mention kmplayer and
14952 kaffeine since they have a working GStreamer backend in the KDE
14953 section.
14955 2005-06-30 Wim Taymans <wim@fluendo.com>
14957 * CHANGES-0.9:
14958 * docs/design/draft-ghostpads.txt:
14959 * docs/design/draft-push-pull.txt:
14960 * docs/design/draft-query.txt:
14961 * docs/design/part-TODO.txt:
14962 * docs/design/part-query.txt:
14963 Added CHANGES-0.9 doc, updated status of other docs.
14965 * gst/gstquery.h:
14966 Remove "hmm" macro
14968 2005-06-30 Wim Taymans <wim@fluendo.com>
14970 * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
14971 (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
14972 (gst_base_sink_change_state):
14973 * gst/base/gstbasesink.h:
14974 Some tweaks, only EOS and a buffer complete a preroll.
14976 2005-06-30 Andy Wingo <wingo@pobox.com>
14978 * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
14979 activate_push down to the internal pad as well.
14981 2005-06-30 Torsten Schoenfeld <kaffeetisch@gmx.de>
14983 Reviewed by: Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14985 * gst/gsttaginterface.c:
14986 Some documentation fixes (#307394 and #307397).
14988 2005-06-30 Antoine Tremblay <hexa00@gmail.com>
14990 Reviewed by: Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14992 * gst/gstvalue.c: (gst_value_intersect_list):
14993 Fix memleak (#309125).
14995 2005-06-30 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14997 * docs/manual/advanced-dataaccess.xml:
14998 Fix fakesrc example to compile; doesn't work, bug somewhere...?
14999 * docs/manual/basics-pads.xml:
15000 Add reference for filtered caps to above chapter.
15002 2005-06-30 Wim Taymans <wim@fluendo.com>
15004 * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
15005 (gst_bin_change_state):
15006 Probes are gone.
15007 Lame attempt at making the state change function a bit
15008 more readable.
15010 2005-06-30 Wim Taymans <wim@fluendo.com>
15012 * docs/design/part-clocks.txt:
15013 * docs/design/part-element-sink.txt:
15014 * docs/design/part-events.txt:
15015 * docs/design/part-preroll.txt:
15016 * docs/design/part-states.txt:
15017 Some more tweeks and additions to the docs.
15019 2005-06-30 Wim Taymans <wim@fluendo.com>
15021 * gst/gstpad.c: (_gst_do_pass_data_accumulator),
15022 (default_have_data), (gst_pad_class_init), (gst_pad_init),
15023 (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
15024 (gst_pad_check_pull_range), (gst_pad_get_range),
15025 (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
15026 * gst/gstpad.h:
15027 * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
15028 (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
15029 (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
15030 (gst_pad_remove_buffer_probe):
15031 Removed atomic operations, use existing LOCK.
15032 Move exception handling out of main code path.
15034 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
15036 * gst/gstpad.c: (_gst_do_pass_data_accumulator),
15037 (silly_return_true_function), (gst_pad_class_init),
15038 (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
15039 (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
15040 (gst_pad_send_event):
15041 Fix accumulator, add default value by using _emitv() instead
15042 of _emit() for signal emission.
15044 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
15046 * docs/manual/advanced-dataaccess.xml:
15047 * examples/manual/Makefile.am:
15048 Add probe example.
15049 * gst/gstpad.c: (_gst_do_pass_data_accumulator):
15050 Make work (??).
15052 2005-06-29 Tim-Philipp Müller <tim at centricular dot net>
15054 * gst/elements/gstfilesink.c: (gst_filesink_render):
15055 Simplify code so that we don't have to handle short
15056 writes and return GST_FLOW_ERROR if an error occured.
15058 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
15060 * docs/gst/gstreamer-docs.sgml:
15061 Remove probes more.
15063 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
15065 * docs/gst/gstreamer-sections.txt:
15066 * docs/gst/tmpl/gstpad.sgml:
15067 * docs/gst/tmpl/gstprobe.sgml:
15068 * gst/Makefile.am:
15069 * gst/gstpad.c: (_gst_do_pass_data_accumulator),
15070 (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
15071 (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
15072 (gst_pad_push_event), (gst_pad_send_event):
15073 * gst/gstpad.h:
15074 * gst/gstutils.c: (gst_pad_add_data_probe),
15075 (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
15076 (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
15077 (gst_pad_remove_buffer_probe):
15078 * gst/gstutils.h:
15079 Remove old probes, add new g-signal-based probes and some utility
15080 functions.
15082 2005-06-29 Edward Hervey <edward@fluendo.com>
15084 * gst/gstelementfactory.c:
15085 * gst/gstutils.h:
15086 * gst/gstutils.c:
15087 Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
15088 the definition to the header file.
15090 2005-06-29 Andy Wingo <wingo@pobox.com>
15092 * docs/gst/Makefile.am (scan-build.stamp): Totally only check
15093 plugins from the source directory.
15095 2005-06-29 Wim Taymans <wim@fluendo.com>
15097 * docs/gst/tmpl/gstbuffer.sgml:
15098 * docs/gst/tmpl/gstclock.sgml:
15099 Some fixings for blantently wrong text.
15101 2005-06-29 Thomas Vander Stichele <thomas at apestaart dot org>
15103 * check/Makefile.am:
15104 * gst/gst.c: (add_path_func), (init_pre):
15105 * gst/gstregistry.c: (gst_registry_add_path):
15106 add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
15107 only scan the GST_PLUGIN_PATH locations, and not add
15108 system locations
15110 2005-06-29 Thomas Vander Stichele <thomas at apestaart dot org>
15112 * docs/gst/gstreamer-sections.txt:
15113 * docs/gst/tmpl/gstbasesrc.sgml:
15114 * gst/gstelement.c:
15115 * gst/gstelement.h:
15116 * gst/gstevent.c:
15117 * gst/gstutils.c:
15118 doc fixes
15120 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
15122 * docs/manual/advanced-autoplugging.xml:
15123 Fix autoplugging example.
15125 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
15127 * docs/manual/advanced-autoplugging.xml:
15128 * docs/manual/mime-world.fig:
15129 Try to get autoplugging working, fix type detection. Fix text
15130 in hello-world image.
15132 2005-06-29 Wim Taymans <wim@fluendo.com>
15134 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
15135 (gst_base_sink_change_state):
15136 Small debug line.
15138 * gst/gstclock.h:
15139 map SIGNAL and BROADCAST to the right function.
15141 * gst/gstobject.h:
15142 Remove redundant braces.
15144 * gst/gstpad.c: (gst_pad_set_caps):
15145 Don't call setcaps function when reseting caps to NULL.
15147 * gst/gstsystemclock.c: (gst_system_clock_dispose),
15148 (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
15149 (gst_system_clock_id_unschedule):
15150 Use BROADCAST as this is what we do.
15152 2005-06-29 Wim Taymans <wim@fluendo.com>
15154 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
15155 We are actually prerolling before commiting the state
15156 change.
15158 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
15160 * docs/manual/advanced-clocks.xml:
15161 * docs/manual/advanced-interfaces.xml:
15162 * docs/manual/advanced-metadata.xml:
15163 * docs/manual/advanced-position.xml:
15164 * docs/manual/advanced-schedulers.xml:
15165 * docs/manual/advanced-threads.xml:
15166 * docs/manual/appendix-porting.xml:
15167 * docs/manual/basics-bins.xml:
15168 * docs/manual/basics-bus.xml:
15169 * docs/manual/basics-elements.xml:
15170 * docs/manual/basics-helloworld.xml:
15171 * docs/manual/basics-pads.xml:
15172 * docs/manual/highlevel-components.xml:
15173 * docs/manual/manual.xml:
15174 * docs/manual/thread.fig:
15175 Update (until threads/scheduling) Application Development Manual;
15176 remove GstThread, add GstBus, add simple porting checklist, add
15177 documentation for tag writing, clocks, make all examples until this
15178 part compile and run.
15179 * examples/manual/Makefile.am:
15180 Update from changes to Application Development Manual; add bus
15181 example, remove thread example.
15183 2005-06-28 Wim Taymans <wim@fluendo.com>
15185 * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
15186 (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
15187 (gst_bus_source_dispatch):
15188 Add debugging messages.
15189 Make internal methods static.
15190 Handle the case where the bus is flushed in the handler.
15192 * gst/gstelement.c: (gst_element_get_bus):
15193 Fix refcount in _get_bus();
15195 * gst/gstpipeline.c: (gst_pipeline_change_state),
15196 (gst_pipeline_get_clock_func):
15197 Clock refcounting fixes.
15198 Handle the case where preroll timed out more gracefully.
15200 * gst/gstsystemclock.c: (gst_system_clock_dispose):
15201 Clean up the internal thread in dispose. This is needed
15202 for subclasses that actually get disposed.
15204 * gst/schedulers/threadscheduler.c:
15205 (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
15206 (gst_thread_scheduler_dispose):
15207 Free thread pool in dispose.
15209 2005-06-28 Andy Wingo <wingo@pobox.com>
15211 * tests/network-clock-utils.scm (debug, print-event): New utils.
15213 * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
15214 (*packet-loss*): Unified loss probability.
15215 (network-time): Report out-of-band events.
15217 * tests/plot-data: Add support for out-of-band events. Hack it
15218 into this script instead of passing it down the pipe; should fix
15219 this later.
15221 2005-06-28 Wim Taymans <wim@fluendo.com>
15223 * docs/gst/gstreamer.types:
15224 * docs/gst/tmpl/gstbasesrc.sgml:
15225 * docs/gst/tmpl/gstpad.sgml:
15226 Docs fixes.
15228 2005-06-28 Wim Taymans <wim@fluendo.com>
15230 * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
15231 (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
15232 (gst_proxy_pad_do_fixatecaps):
15233 Correctly proxy the check_pull_range function.
15235 2005-06-28 Andy Wingo <wingo@pobox.com>
15237 * tests/network-clock.scm: Removed need for slib.
15239 2005-06-28 Wim Taymans <wim@fluendo.com>
15241 * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
15242 (gst_basesink_preroll_queue_flush):
15243 * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
15244 * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
15245 * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
15246 (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
15247 (gst_proxy_pad_set_property):
15248 * gst/gstpad.c:
15249 * gst/gstpad.h:
15250 * gst/gstqueue.c: (gst_queue_init):
15251 The deprecated pad loop function is removed now.
15253 2005-06-28 Andy Wingo <wingo@pobox.com>
15255 * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
15256 New parameters, simulate network packet loss.
15258 * tests/network-clock-utils.scm: Initialize the RNG.
15260 2005-06-28 Wim Taymans <wim@fluendo.com>
15262 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
15263 (gst_basesink_event), (gst_basesink_deactivate):
15264 Flushing the preroll queue always needs to unlock the waiters.
15266 2005-06-28 Edward Hervey <edward@fluendo.com>
15268 * gst/gstpipeline.c: (gst_pipeline_send_event):
15269 Wheen a seek was successful on a pipeline, set the stream_time to the
15270 seek offset in order to have a synchronized stream_time.
15272 2005-06-28 Wim Taymans <wim@fluendo.com>
15274 * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
15275 (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
15276 (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
15277 (gst_proxy_pad_do_fixatecaps):
15278 Call wrapper function instead of just calling the function
15279 pointers. This takes care of any locking and whatmore.
15281 2005-06-28 Wim Taymans <wim@fluendo.com>
15283 * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
15284 (gst_pad_pull_range):
15285 * gst/gstpad.h:
15286 CONNECTED -> LINKED.
15288 2005-06-28 Andy Wingo <wingo@pobox.com>
15290 * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
15291 source-munging commit!!!
15293 * gst/gstobject.c (gst_object_unref, gst_object_ref)
15294 (gst_object_sink): Take gpointer arguments, not GstObject --
15295 avoids casts. Like GLib.
15297 * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
15298 activate.
15300 2005-06-27 Andy Wingo <wingo@pobox.com>
15302 * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
15303 remaining buffer.
15305 * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
15306 returns a sorted copy of the trace list.
15307 (gst_alloc_trace_print_live): New API, only prints traces with
15308 live objects. Sort the list.
15309 (gst_alloc_trace_print_all): Sort the list.
15310 (gst_alloc_trace_print): Align columns.
15312 * gst/elements/gstttypefindelement.c:
15313 * gst/elements/gsttee.c:
15314 * gst/base/gstbasesrc.c:
15315 * gst/base/gstbasesink.c:
15316 * gst/base/gstbasetransform.c:
15317 * gst/gstqueue.c: Adapt for pad activation changes.
15319 * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
15320 sched.
15321 (gst_pipeline_dispose): Drop ref on sched.
15323 * gst/gstpad.c (gst_pad_init): Set the default activate func.
15324 (gst_pad_activate_default): Push mode by default.
15325 (pre_activate_switch, post_activate_switch): New stubs, things to
15326 do before and after switching activation modes on pads.
15327 (gst_pad_set_active): Take a boolean and not a mode, dispatch to
15328 the pad's activate function to choose which mode to activate.
15329 Shortcut on deactivation and call the right function directly.
15330 (gst_pad_activate_pull): New API, (de)activates a pad in pull
15331 mode.
15332 (gst_pad_activate_push): New API, same for push mode.
15333 (gst_pad_set_activate_function)
15334 (gst_pad_set_activatepull_function)
15335 (gst_pad_set_activatepush_function): Setters for new API.
15337 * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
15338 Trace all miniobjects.
15339 (gst_mini_object_make_writable): Unref the arg if we copy, like
15340 gst_caps_make_writable.
15342 * gst/gstmessage.c (_gst_message_initialize): No trace init.
15344 * gst/gstghostpad.c (gst_proxy_pad_do_activate)
15345 (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
15346 Adapt for new pad API.
15348 * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
15350 * gst/gstelement.h:
15351 * gst/gstelement.c (gst_element_iterate_src_pads)
15352 (gst_element_iterate_sink_pads): New API functions.
15354 * gst/gstelement.c (iterator_fold_with_resync): New utility,
15355 should fold into gstiterator.c in some form.
15356 (gst_element_pads_activate): Simplified via use of fold and
15357 delegation of decisions to gstpad->activate.
15359 * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
15360 help in debugging.
15362 * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
15363 class once in init, like gstmessage. Didn't run into this issue
15364 but it seems correct. Don't initialize a trace, gstminiobject does
15365 that.
15367 * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
15368 test, runs fakesrc ! fakesink, stopping on ::handoff via a message
15369 to the bus.
15370 (assert_live_count): New util function, uses alloc traces to check
15371 cleanup.
15373 * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
15374 To be modified when unlink drops the internal pad.
15376 2005-06-27 Wim Taymans <wim@fluendo.com>
15378 * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
15379 (gst_bin_change_state):
15380 Cleanup the get_state() function a little, make sure it
15381 iterates the same set of elements.
15382 Added stub iterate_state_order().
15384 2005-06-27 Thomas Vander Stichele <thomas at apestaart dot org>
15386 * docs/gst/gstreamer-docs.sgml:
15387 * docs/gst/gstreamer-sections.txt:
15388 * docs/gst/gstreamer.types:
15389 * docs/gst/tmpl/gstbasesink.sgml:
15390 * docs/gst/tmpl/gstbasesrc.sgml:
15391 * docs/gst/tmpl/gstbasetransform.sgml:
15392 * docs/gst/tmpl/gstelement.sgml:
15393 * docs/gst/tmpl/gstiterator.sgml:
15394 * gst/base/gstbasesrc.c:
15395 * gst/base/gstbasesrc.h:
15396 * gst/base/gstbasetransform.h:
15397 * gst/gstelement.c:
15398 * gst/gstiterator.h:
15399 adding basetransform and iterator docs
15401 2005-06-27 Andy Wingo <wingo@pobox.com>
15403 * docs/design/part-activation.txt: Notes on how activation should
15404 work -- not quite implemented yet.
15406 2005-06-25 Wim Taymans <wim@fluendo.com>
15408 * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
15409 At least get the chain function correct, needs more
15410 fixing.
15412 2005-06-25 Wim Taymans <wim@fluendo.com>
15414 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
15415 (gst_basesink_handle_object), (gst_basesink_event),
15416 (gst_basesink_do_sync), (gst_basesink_handle_event),
15417 (gst_basesink_change_state):
15418 * gst/gsttask.h:
15419 Right, two problems here: ghostpads don't take locks and
15420 glib _rec_mutex_lock_full() with depth==0 still locks.
15421 Catch illegal locking and g_warn them.
15423 2005-06-25 Wim Taymans <wim@fluendo.com>
15425 * check/states/sinks.c: (START_TEST), (gst_object_suite):
15426 Have to check for completion now...
15428 2005-06-25 Wim Taymans <wim@fluendo.com>
15430 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
15431 (gst_basesink_handle_object), (gst_basesink_event),
15432 (gst_basesink_do_sync), (gst_basesink_handle_event),
15433 (gst_basesink_change_state):
15434 * gst/gstpad.h:
15435 Unlock STREAM_LOCK whatever the recursion was.
15437 2005-06-25 Wim Taymans <wim@fluendo.com>
15439 * gst/base/gstbasesink.c: (gst_basesink_set_property),
15440 (gst_basesink_preroll_queue_empty),
15441 (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
15442 (gst_basesink_event), (gst_basesink_do_sync),
15443 (gst_basesink_handle_event), (gst_basesink_handle_buffer),
15444 (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
15445 (gst_basesink_change_state):
15446 Reworked the base sink, handle event and buffer serialisation
15447 correctly and removed possible deadlock.
15448 Handle EOS correctly.
15450 2005-06-25 Wim Taymans <wim@fluendo.com>
15452 * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
15453 (gst_pipeline_change_state):
15454 * tools/gst-launch.c: (check_intr), (event_loop), (main):
15455 Allow elements to post EOS in the state change function.
15456 Fix up -launch, make it exit the poll loop when the
15457 pipeline actually changed state.
15458 Fix up warning parsing in -launch.
15460 2005-06-25 Wim Taymans <wim@fluendo.com>
15462 * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
15463 (gst_tee_sink_activate):
15464 Core takes STREAM_LOCK for us now.
15466 2005-06-25 Wim Taymans <wim@fluendo.com>
15468 * gst/gstelement.c: (gst_element_get_state_func),
15469 (gst_element_set_state):
15470 * gst/gstelement.h:
15471 * gst/gstmessage.c: (gst_message_parse_error),
15472 (gst_message_parse_warning):
15473 Keep track of current target state while performing a state
15474 change so that subclasses can do something interesting.
15475 Fix parsing of warning/error messages when GError is NULL.
15477 2005-06-24 Thomas Vander Stichele <thomas at apestaart dot org>
15479 * docs/gst/Makefile.am:
15480 * docs/gst/gstreamer-docs.sgml:
15481 * docs/gst/gstreamer-sections.txt:
15482 * docs/gst/gstreamer.types:
15483 * docs/gst/tmpl/gstbasesink.sgml:
15484 * docs/gst/tmpl/gstbasesrc.sgml:
15485 * docs/gst/tmpl/gstbin.sgml:
15486 * docs/gst/tmpl/gstcompat.sgml:
15487 * docs/gst/tmpl/gstfakesink.sgml:
15488 * docs/gst/tmpl/gstfakesrc.sgml:
15489 * docs/gst/tmpl/gstfilesink.sgml:
15490 * docs/gst/tmpl/gstfilesrc.sgml:
15491 * docs/gst/tmpl/gstindex.sgml:
15492 * docs/manual/appendix-quotes.xml:
15493 * gst/base/gstbasesrc.h:
15494 * gst/elements/gstfakesrc.h:
15495 * gst/gstmessage.h:
15496 start pulling in base classes and elements in our docs
15498 2005-06-24 Stefan Kost <ensonic@users.sf.net>
15500 * docs/gst/Makefile.am:
15501 * docs/libs/Makefile.am:
15502 fixed make distcheck with gtk-doc 1.3
15504 2005-06-23 Wim Taymans <wim@fluendo.com>
15506 * gst/gstelement.c: (gst_element_get_state_func),
15507 (gst_element_set_state), (gst_element_change_state):
15508 When the state did not change, also report NO_PREROLL
15509 when it matters.
15511 2005-06-23 Wim Taymans <wim@fluendo.com>
15513 * gst/gstpad.c: (gst_pad_event_default):
15514 * gst/gstqueue.c: (gst_queue_loop):
15515 No unsafe task pausing please.
15517 2005-06-23 Wim Taymans <wim@fluendo.com>
15519 * gst/schedulers/threadscheduler.c:
15520 (gst_thread_scheduler_task_start),
15521 (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
15522 Ref the task before pushing it on the threadpool. This
15523 makes sure that we have a ref when the threadfunction is
15524 actually called.
15526 2005-06-23 Andy Wingo <wingo@pobox.com>
15528 * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
15529 offset is greater than the file's size.
15531 * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK)
15532 (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
15533 * gst/gstobject.c (gst_object_class_init): Make the class lock
15534 recursive. Wim won't let me drop deep_notify. Decodebin works
15535 again, whoopdy doo.
15537 * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
15538 internal pad, and hacks accordingly. Doesn't do it on the target
15539 pad because we change its caps. Probably catches all cases of
15540 interest tho.
15541 (gst_ghost_pad_set_property): Connect to notify::caps as
15542 appropritate.
15544 * tests/network-clock.scm (plot-simulation): Pipe data to the
15545 elite python skript.
15547 * tests/network-clock-utils.scm (define-parameter): New macro,
15548 defines a parameter that can be set via the command line.
15549 (set-parameter!, parse-parameter-arguments): Command line args
15550 parser.
15552 * tests/plot-data: Simple matplotlib-based plotter, takes input on
15553 stdin.
15555 2005-06-23 Jan Schmidt <thaytan@mad.scientist.com>
15557 * gst/elements/gsttypefindelement.c:
15558 (gst_type_find_element_handle_event):
15559 Don't restart typefinding on a discont.
15560 * gst/gstelement.c: (gst_element_set_state):
15561 Debug spelling fix.
15562 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
15563 Allow changing mode of an active pad.
15564 Debug output fixes.
15565 * gst/registries/gstlibxmlregistry.c: (load_feature):
15566 Don't cast a static pad template to a normal pad template.
15568 2005-06-23 Thomas Vander Stichele <thomas at apestaart dot org>
15570 * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
15571 * gst/gstvalue.c: (gst_value_deserialize_int_helper):
15572 remove gst_strtoll completely, since it didn't actually do
15573 anything more than what g_ascii_strtoull already does.
15574 check for range errors when deserializing
15575 do a cast for the unsigned cases; but further fixing needs
15576 a decision on what the interpretation of "(int)" and
15577 deserialization should be for values that fall outside the
15578 type's boundaries (ie, refuse, or interpret as casting)
15580 2005-06-23 Wim Taymans <wim@fluendo.com>
15582 * check/Makefile.am:
15583 * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
15584 * docs/design/part-live-source.txt:
15585 * docs/design/part-states.txt:
15586 * gst/base/gstbasesrc.c: (gst_basesrc_init),
15587 (gst_basesrc_set_live), (gst_basesrc_is_live),
15588 (gst_basesrc_get_range), (gst_basesrc_activate),
15589 (gst_basesrc_change_state):
15590 * gst/base/gstbasesrc.h:
15591 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
15592 (gst_fakesrc_set_property), (gst_fakesrc_get_property):
15593 * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
15594 * gst/gstelement.c: (gst_element_get_state_func),
15595 (gst_element_set_state):
15596 * gst/gstelement.h:
15597 * gst/gsttypes.h:
15598 * tools/gst-launch.c: (event_loop), (main):
15599 Added support for live sources and other elements that
15600 cannot do preroll.
15601 Updated design docs, added live-source design doc.
15602 Implemented live source functionality in basesrc
15603 Fix error condition in _bin_get_state()
15604 Implement live source handling in -launch.
15605 Added check for live sources.
15606 Fixed case in GstBin where elements were changed state
15607 multiple times.
15610 2005-06-23 Andy Wingo <wingo@pobox.com>
15612 * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
15613 borken refcounting.
15615 * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
15616 gst_caps_replace takes care of this for us.
15618 * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
15619 gst_pad_set_caps on the target, not just its setcaps() function.
15621 * tests/network-clock.scm:
15622 * tests/network-clock-utils.scm: A network clock simulator.
15623 Something of an algorithmic testbed before doing something in C.
15625 2005-06-22 Thomas Vander Stichele <thomas at apestaart dot org>
15627 * check/Makefile.am:
15628 * check/gst/capslist.h:
15629 copy over from 0.8, and add two with bitmasks specified with
15630 (int) 0xFF...
15631 * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
15632 add test to parse everything from capslist.h
15633 * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
15634 (main):
15635 add test for structure deserialization
15636 * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
15637 add tests for deserialization of strings to int types
15638 * gst/gststructure.c: (gst_structure_nth_field_name):
15639 * gst/gststructure.h:
15640 add a way to get the name of a field referenced by index
15641 * gst/gstvalue.c: (gst_value_deserialize_int_helper):
15642 instead of checking if the resulting long long lies between
15643 min and max, we check if the long long would fit into
15644 a number of bytes for the final type.
15645 This fixes cases where a string represents 2^32 - 1, which
15646 when cast to int would be the (valid) -1, but is bigger than
15647 G_MAXINT
15649 2005-06-22 Thomas Vander Stichele <thomas at apestaart dot org>
15651 * gst/parse/grammar.y:
15652 add a log line for type deserialization
15654 2005-06-22 Thomas Vander Stichele <thomas at apestaart dot org>
15656 * check/gst/gstvalue.c: (START_TEST):
15657 * gst/gstvalue.c: (gst_value_deserialize):
15658 return long long, not int, so gint64 deserialization actually
15659 works. Is there any flag that makes the compiler check this ?
15660 Fixes #308559
15662 2005-06-22 Wim Taymans <wim@fluendo.com>
15664 * gst/gstbuffer.h:
15665 Added convenience macros for setting buffers in GValue.
15667 2005-06-21 Thomas Vander Stichele <thomas at apestaart dot org>
15669 * check/gst/.cvsignore:
15670 * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
15671 add a test deserializing int64, and comment part out because
15672 it fails, yay !
15674 2005-06-21 Thomas Vander Stichele <thomas at apestaart dot org>
15676 * check/Makefile.am:
15677 * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
15678 * testsuite/Makefile.am:
15679 * testsuite/caps/Makefile.am:
15680 * testsuite/caps/value_serialize.c:
15681 * testsuite/test_gst_init.c:
15682 move a value_serialize test over
15684 2005-06-20 Wim Taymans <wim@fluendo.com>
15686 * gst/gstpad.c:
15687 Small doc updates.
15689 * gst/gstvalue.c: (gst_value_compare_buffer),
15690 (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
15691 (gst_value_compare_flags), (gst_value_serialize_flags),
15692 (gst_value_deserialize_flags), (_gst_value_initialize):
15693 Fix serialisation of buffers, they are not boxed types anymore
15695 2005-06-20 Wim Taymans <wim@fluendo.com>
15697 * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
15698 Testcase to show error in buffer-on-caps serialisation.
15700 2005-06-20 Andy Wingo <wingo@pobox.com>
15702 * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
15703 will be adding to later.
15705 * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
15706 if its socks fill with rocks.
15707 (gst_system_clock_obtain): Set the name on object construction.
15708 Avoid double-checked locking.
15710 2005-06-20 Tim-Philipp Müller <tim at centricular dot net>
15712 * gst/gsturi.c: (gst_element_make_from_uri):
15713 Fix potential endless loop.
15715 2005-06-19 Thomas Vander Stichele <thomas at apestaart dot org>
15717 * check/Makefile.am:
15718 add gsttag
15719 * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
15720 (main):
15721 move over from testsuite dir and clean up
15722 * configure.ac:
15723 * gst/gsttag.c:
15724 * testsuite/Makefile.am:
15725 * testsuite/tags/.cvsignore:
15726 * testsuite/tags/Makefile.am:
15727 * testsuite/tags/merge.c:
15728 remove testsuite/tags
15730 2005-06-19 Thomas Vander Stichele <thomas at apestaart dot org>
15732 * docs/gst/gstreamer-sections.txt:
15733 * docs/gst/tmpl/gstenumtypes.sgml:
15734 * win32/gstenumtypes.c:
15735 clean up documentation build a little
15737 2005-06-19 Thomas Vander Stichele <thomas at apestaart dot org>
15739 * check/gstcheck.h:
15740 add macros for checking refcounts on objects and caps
15741 * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
15742 add some more unit tests
15743 * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
15744 (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
15745 fix leaked refcounts (I hope :)) so unittest works
15746 * gst/gstpad.h:
15747 whitespace removal
15749 2005-06-19 Thomas Vander Stichele <thomas at apestaart dot org>
15751 * configure.ac: back to HEAD
15753 === release 0.9.1 ===
15755 2005-06-17 Thomas Vander Stichele <thomas at apestaart dot org>
15757 * NEWS:
15758 * RELEASE:
15759 updated
15761 2005-06-17 Andy Wingo <wingo@pobox.com>
15763 * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
15764 assert; it's always possible that the pad gets deactivated in
15765 between the checks in gstpad.c and the implementation. Rely on
15766 finish_preroll() to return a FLUSHING or similar instead of on the
15767 assert.
15769 * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
15770 clock and post an EOS message if we come out of finish_preroll in
15771 the playing state.
15773 2005-06-16 David Schleef <ds@schleef.org>
15775 * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
15776 (gst_capsfilter_set_property): Allow NULL as possible value
15777 for filter_caps property, indicating GST_CAPS_ANY.
15779 2005-06-09 Thomas Vander Stichele <thomas at apestaart dot org>
15781 * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
15782 fix debug output
15783 * gst/schedulers/Makefile.am:
15784 use libgst prefix
15785 * gstreamer.spec.in:
15786 fix spec for it
15788 2005-06-09 Thomas Vander Stichele <thomas at apestaart dot org>
15790 * gstreamer.spec.in:
15791 clean up
15793 2005-06-08 Andy Wingo <wingo@pobox.com>
15795 * gst/gstutils.c: RPAD fixes all around.
15796 (gst_element_link_pads): Refcounting fixes.
15798 * tools/gst-inspect.c:
15799 * tools/gst-xmlinspect.c:
15800 * parse/grammar.y:
15801 * gst/base/gsttypefindhelper.c:
15802 * gst/base/gstbasesink.c:
15803 * gst/gstqueue.c: RPAD fixes.
15805 * gst/gstghostpad.h:
15806 * gst/gstghostpad.c: New ghost pad implementation as full proxy
15807 pads. The tricky thing is they provide both source and sink
15808 interfaces, since they proxy the internal pad for the external
15809 pad, and vice versa. Implement with lower-level ProxyPad objects,
15810 with the interior proxy pad as a child of the exterior ghost pad.
15811 Should write a doc on this.
15813 * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
15814 (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
15815 gst_object API.
15817 * gst/gstpad.c: Big changes. No more stub base GstPad, now all
15818 pads are real pads. No ghost pads in this file. Not documenting
15819 the myriad s/RPAD/PAD/ and REALIZE fixes.
15820 (gst_pad_class_init): Add properties for "direction" and
15821 "template". Both are construct-only, so they can't change during
15822 the life of the pad. Fixes properly deriving from GstPad.
15823 (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
15824 derived objects, just set properties when creating the objects via
15825 g_object_new.
15826 (gst_pad_get_parent): Implement as a function, return NULL if the
15827 parent is not an element.
15828 (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
15829 (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
15831 * gst/gstobject.c (gst_object_class_init): Make name a construct
15832 property. Don't set it in the object init.
15834 * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
15835 with UNKNOWN direction.
15836 (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
15837 with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
15838 (gst_element_remove_pad): Remove ghost-pad special cases.
15839 (gst_element_pads_activate): Remove rpad cruft.
15841 * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
15842 catch the pad's-parent-not-an-element case.
15844 * gst/gst.h: Include gstghostpad.h.
15846 * gst/gst.c (init_post): No more real, ghost pads.
15848 * gst/Makefile.am: Add gstghostpad.[ch].
15850 * check/Makefile.am:
15851 * check/gst/gstbin.c:
15852 * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
15853 into a bin creates ghost pads, and that the refcounts are right.
15854 Partly moved from gstbin.c.
15856 2005-06-08 Thomas Vander Stichele <thomas at apestaart dot org>
15858 * check/gst-libs/.cvsignore:
15859 * check/gst/.cvsignore:
15860 * check/pipelines/.cvsignore:
15861 ignore more
15862 * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
15863 (START_TEST), (cleanup_suite), (main):
15864 add some tests related to cleanup after running pipelines
15866 2005-06-08 Thomas Vander Stichele <thomas at apestaart dot org>
15868 * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
15869 add a testsuite for GstBuffer
15871 2005-06-08 Thomas Vander Stichele <thomas at apestaart dot org>
15873 * gst/gstminiobject.h:
15874 add defines for accessing the refcount
15876 2005-06-03 Stefan Kost <ensonic@users.sf.net>
15878 * Makefile.am: added support for html unit test coverage reports
15880 2005-06-03 Jan Schmidt <thaytan@mad.scientist.com>
15882 * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
15883 Free existing caps if the capsfilter changes. Add a FIXME about
15884 setting those caps on the pads.
15886 * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
15887 Before adding a ghost pad to a parent bin, check that there isn't
15888 already one for the element on the bin. Prevents infinite recursion
15889 when using decodebin in parse pipelines. Andy says he'll rewrite the
15890 way this works anyway, so ignore the hack.
15892 2005-06-02 Andy Wingo <wingo@pobox.com>
15894 * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
15895 file size, pass it on to the type find helper.
15897 * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
15898 segment_start and segment_end properly according to the seek
15899 method. Segment_end is still a bit flaky because offset can be
15900 negative for CUR and END cases, but it takes -1 as an "unset"
15901 value.
15903 2005-06-02 Wim Taymans <wim@fluendo.com>
15905 * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
15906 (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
15907 (gst_basesink_activate):
15908 * gst/base/gstbasesink.h:
15909 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
15910 (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
15911 (gst_pad_query), (gst_pad_start_task):
15912 * gst/gstpad.h:
15913 * gst/gstqueue.c: (gst_queue_bufferalloc),
15914 (gst_queue_handle_sink_event), (gst_queue_chain):
15915 Bufferalloc: return GstFlowReturn to more accuratly report
15916 why allocation failed.
15918 2005-06-02 Wim Taymans <wim@fluendo.com>
15920 * gst/gstpipeline.c: (gst_pipeline_send_event):
15921 Take snapshot of state without blocking.
15923 2005-06-02 Wim Taymans <wim@fluendo.com>
15925 * docs/design/part-TODO.txt:
15926 * docs/design/part-caps.txt:
15927 * docs/design/part-clocks.txt:
15928 * docs/design/part-negotiation.txt:
15929 * docs/design/part-preroll.txt:
15930 Small doc updates
15932 2005-05-30 Wim Taymans <wim@fluendo.com>
15934 * gst/elements/gstidentity.c: (gst_identity_event),
15935 (gst_identity_transform), (gst_identity_get_property):
15936 Protect last_message property as it is accessed from
15937 multiple threads.
15939 2005-05-30 Wim Taymans <wim@fluendo.com>
15941 * gst/gstelement.c: (gst_element_init),
15942 (gst_element_pads_activate), (gst_element_change_state):
15943 Slicker pad activation code.
15945 2005-05-30 Wim Taymans <wim@fluendo.com>
15947 * gst/Makefile.am:
15948 * gst/gstelement.h:
15949 * gst/gstelementfactory.h:
15950 * gst/gsttypes.h:
15951 Move elementfactory methods to separate .h file.
15953 2005-05-30 Wim Taymans <wim@fluendo.com>
15955 * docs/design/part-overview.txt:
15956 * gst/gstsystemclock.h:
15957 Small typo fixes, doc updates.
15959 2005-05-30 Wim Taymans <wim@fluendo.com>
15961 * gst/gst.c: (gst_init_get_popt_table), (init_post),
15962 (init_popt_callback):
15963 Remove cpu-opt flag.
15965 2005-05-30 Wim Taymans <wim@fluendo.com>
15967 * gst/gstbuffer.c: (gst_subbuffer_finalize),
15968 (gst_buffer_create_sub), (gst_buffer_is_span_fast):
15969 * gst/gstbuffer.h:
15970 Avoid typechecking in places where not needed.
15971 Added accessor for malloc_data.
15973 2005-05-30 Wim Taymans <wim@fluendo.com>
15975 * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
15976 (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
15977 (gst_pad_configure_sink), (gst_pad_configure_src),
15978 (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
15979 (gst_pad_start_task):
15980 Propagate errors from _set_caps() in configure_src/sink
15981 functions instead of returning TRUE.
15982 FLUSH events can travel up and downstream
15985 2005-05-30 Wim Taymans <wim@fluendo.com>
15987 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
15988 (gst_basesink_activate):
15989 Handle EOS in preroll.
15991 2005-05-30 Wim Taymans <wim@fluendo.com>
15993 * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
15994 (gst_queue_loop), (gst_queue_handle_src_event):
15995 Remove old pieces of code
15996 Flushing the queue in an upstream event is a very bad idea.
15998 2005-05-26 Andy Wingo <wingo@pobox.com>
16000 * gst/gstminiobject.c (gst_value_mini_object_collect): Use
16001 gst_value_set_mini_object so as to add a ref on the object (which
16002 will be removed when the value is unset).
16004 * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
16005 arg type in ::handoff.
16007 * gst/gstelement.c (gst_element_change_state): Also deactivate
16008 pads in READY->NULL, just in case the element didn't make it to
16009 PAUSED. Wingo tested, Wim approved.
16011 2005-05-26 Wim Taymans <wim@fluendo.com>
16013 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
16014 (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
16015 (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
16016 A flushing pad cannot be used to alloc_buffer from.
16018 2005-05-26 Wim Taymans <wim@fluendo.com>
16020 * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
16021 (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
16022 (gst_bus_source_dispatch), (gst_bus_source_finalize),
16023 (gst_bus_create_watch), (gst_bus_add_watch_full):
16024 * gst/gstbus.h:
16025 Implement a real GSource and use g_main_context_wakeup() to
16026 signal new messages instead of the socketpair.
16028 2005-05-25 Wim Taymans <wim@fluendo.com>
16030 * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
16031 (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
16032 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
16033 (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
16034 (gst_pad_send_event), (gst_pad_start_task):
16035 * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
16036 (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
16037 (gst_queue_sink_activate), (gst_queue_src_activate),
16038 (gst_queue_change_state):
16039 * gst/gstqueue.h:
16040 Fix state changes for non sinks. We now change sinks, then elements
16041 with unconnected srcpads, then the rest.
16042 More efficient queue unlocking in flush and state changes.
16043 Set the pad activate mode even if it does not have an activate
16044 function.
16046 2005-05-25 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
16048 * gst/base/gstbasesrc.c: (gst_basesrc_activate):
16049 Don't go in pull mode for non-seekable sources.
16050 * gst/elements/gsttypefindelement.h:
16051 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
16052 (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
16053 (free_entry), (stop_typefinding),
16054 (gst_type_find_element_handle_event), (find_peek),
16055 (gst_type_find_element_chain), (do_pull_typefind),
16056 (gst_type_find_element_change_state):
16057 Allow typefinding (w/o seeking) in push-mode, simplified version
16058 of what was in 0.8.
16059 * gst/gstutils.c: (gst_buffer_join):
16060 * gst/gstutils.h:
16061 gst_buffer_join() from 0.8.
16063 2005-05-25 Wim Taymans <wim@fluendo.com>
16065 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
16066 (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
16067 (gst_pad_send_event), (gst_pad_start_task):
16068 Disable attempt at mode switching until it is figured out.
16070 2005-05-25 Wim Taymans <wim@fluendo.com>
16072 * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
16073 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
16074 (gst_basesink_finish_preroll), (gst_basesink_chain),
16075 (gst_basesink_loop), (gst_basesink_activate),
16076 (gst_basesink_change_state):
16077 * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
16078 (gst_basesrc_get_range), (gst_basesrc_loop),
16079 (gst_basesrc_activate):
16080 * gst/elements/gsttee.c: (gst_tee_sink_activate):
16081 * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
16082 (gst_real_pad_init), (gst_real_pad_set_property),
16083 (gst_real_pad_get_property), (gst_pad_set_active),
16084 (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
16085 (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
16086 (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
16087 (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
16088 (gst_pad_event_default_dispatch), (gst_pad_event_default),
16089 (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
16090 (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
16091 (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
16092 (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
16093 (gst_pad_stop_task):
16094 * gst/gstpad.h:
16095 * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
16096 (gst_queue_loop), (gst_queue_src_activate):
16097 * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
16098 (gst_task_get_state):
16099 * gst/gsttask.h:
16100 * gst/schedulers/threadscheduler.c:
16101 (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
16102 Implement gst_pad_pause/start/stop_task(), take STREAM lock
16103 in task function.
16104 Remove ACTIVE pad flag, use FLUSHING everywhere
16105 Added _pad_chain(), _pad_get_range() to call chain/getrange
16106 functions.
16107 Add locks around IS_FLUSHING when reading.
16108 Take STREAM lock in chain(), get_range() functions so plugins
16109 don't need to take it anymore.
16113 2005-05-25 Wim Taymans <wim@fluendo.com>
16115 * tools/gst-launch.c: (event_loop):
16116 Unref message after using its contents instead of
16117 before.
16119 2005-05-24 Wim Taymans <wim@fluendo.com>
16121 * docs/design/draft-ghostpads.txt:
16122 * docs/design/draft-push-pull.txt:
16123 * docs/design/draft-query.txt:
16124 * docs/design/part-overview.txt:
16125 Docs updates, added general overview doc.
16127 2005-05-21 David Schleef <ds@schleef.org>
16129 * docs/gst/tmpl/old/GstBin.sgml:
16130 * docs/gst/tmpl/old/GstBuffer.sgml:
16131 * docs/gst/tmpl/old/GstCaps.sgml:
16132 * docs/gst/tmpl/old/GstClock.sgml:
16133 * docs/gst/tmpl/old/GstCompat.sgml:
16134 * docs/gst/tmpl/old/GstData.sgml:
16135 * docs/gst/tmpl/old/GstElement.sgml:
16136 * docs/gst/tmpl/old/GstEvent.sgml:
16137 * docs/gst/tmpl/old/GstIndex.sgml:
16138 * docs/gst/tmpl/old/GstStructure.sgml:
16139 * docs/gst/tmpl/old/GstTag.sgml:
16140 * docs/gst/tmpl/old/cothreads.sgml:
16141 * docs/gst/tmpl/old/cothreads_compat.sgml:
16142 * docs/gst/tmpl/old/gettext.sgml:
16143 * docs/gst/tmpl/old/gobject2gtk.sgml:
16144 * docs/gst/tmpl/old/grammar.tab.sgml:
16145 * docs/gst/tmpl/old/gst-i18n-app.sgml:
16146 * docs/gst/tmpl/old/gst-i18n-lib.sgml:
16147 * docs/gst/tmpl/old/gst_private.sgml:
16148 * docs/gst/tmpl/old/gstaggregator.sgml:
16149 * docs/gst/tmpl/old/gstarch.sgml:
16150 * docs/gst/tmpl/old/gstatomic_impl.sgml:
16151 * docs/gst/tmpl/old/gstbufferstore.sgml:
16152 * docs/gst/tmpl/old/gstdata_private.sgml:
16153 * docs/gst/tmpl/old/gstdisksink.sgml:
16154 * docs/gst/tmpl/old/gstdisksrc.sgml:
16155 * docs/gst/tmpl/old/gstelementfactory.sgml:
16156 * docs/gst/tmpl/old/gstextratypes.sgml:
16157 * docs/gst/tmpl/old/gstfakesink.sgml:
16158 * docs/gst/tmpl/old/gstfakesrc.sgml:
16159 * docs/gst/tmpl/old/gstfdsink.sgml:
16160 * docs/gst/tmpl/old/gstfdsrc.sgml:
16161 * docs/gst/tmpl/old/gstfilesink.sgml:
16162 * docs/gst/tmpl/old/gstfilesrc.sgml:
16163 * docs/gst/tmpl/old/gsthttpsrc.sgml:
16164 * docs/gst/tmpl/old/gstidentity.sgml:
16165 * docs/gst/tmpl/old/gstindexfactory.sgml:
16166 * docs/gst/tmpl/old/gstmarshal.sgml:
16167 * docs/gst/tmpl/old/gstmd5sink.sgml:
16168 * docs/gst/tmpl/old/gstmultidisksrc.sgml:
16169 * docs/gst/tmpl/old/gstmultifilesrc.sgml:
16170 * docs/gst/tmpl/old/gstpadtemplate.sgml:
16171 * docs/gst/tmpl/old/gstpipefilter.sgml:
16172 * docs/gst/tmpl/old/gstschedulerfactory.sgml:
16173 * docs/gst/tmpl/old/gstsearchfuncs.sgml:
16174 * docs/gst/tmpl/old/gstshaper.sgml:
16175 * docs/gst/tmpl/old/gstspider.sgml:
16176 * docs/gst/tmpl/old/gstspideridentity.sgml:
16177 * docs/gst/tmpl/old/gststatistics.sgml:
16178 * docs/gst/tmpl/old/gsttee.sgml:
16179 * docs/gst/tmpl/old/gsttimecache.sgml:
16180 * docs/gst/tmpl/old/gsttypefindfactory.sgml:
16181 * docs/gst/tmpl/old/gstxmlregistry.sgml:
16182 * docs/gst/tmpl/old/gthread-cothreads.sgml:
16183 * docs/gst/tmpl/old/types.sgml:
16184 I didn't intend to add these or check them in.
16186 2005-05-19 David Schleef <ds@schleef.org>
16188 * configure.ac: Use -no-common everywhere. In a sane world, it
16189 would be the default in libtool, because without it, you can't
16190 build DLLs on Windows.
16191 * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
16192 * docs/gst/gstreamer-sections.txt:
16193 * docs/gst/tmpl/gstcpu.sgml:
16194 * docs/gst/tmpl/gstdata.sgml:
16195 * docs/gst/tmpl/gstthread.sgml:
16197 2005-05-19 David Schleef <ds@schleef.org>
16199 * gst/gstminiobject.c: (gst_value_set_mini_object),
16200 (gst_value_take_mini_object), (gst_value_get_mini_object):
16201 * gst/gstminiobject.h: Add GValue set/get functions.
16203 2005-05-19 Wim Taymans <wim@fluendo.com>
16205 * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
16206 (gst_subbuffer_class_init), (gst_subbuffer_finalize),
16207 (gst_subbuffer_init), (gst_buffer_is_span_fast):
16208 * gst/gstbuffer.h:
16209 * gst/gstbus.c: (gst_bus_post):
16210 * gst/gstelement.c: (gst_element_get_random_pad):
16211 * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
16212 Make subbufer unref the parent in finalize.
16213 some more debugging info.
16216 2005-05-19 Wim Taymans <wim@fluendo.com>
16218 * gst/base/gstbasesink.c: (gst_basesink_class_init),
16219 (gst_basesink_init), (gst_basesink_finalize),
16220 (gst_basesink_activate), (gst_basesink_change_state):
16221 Don't free preroll queue too early.
16223 2005-05-19 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
16225 * gst/Makefile.am:
16226 * gst/ROADMAP:
16227 Hi, I'm outdated. Please shoot me.
16229 2005-05-19 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
16231 * gst/gstpipeline.c: (gst_pipeline_send_event):
16232 Do not access variables after they have been deleted.
16234 2005-05-19 Wim Taymans <wim@fluendo.com>
16236 * tools/gst-inspect.c: (print_plugin_features):
16237 A plugin feature does unfortunatly not use the
16238 object name yet...
16240 2005-05-18 Wim Taymans <wim@fluendo.com>
16242 * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
16243 Port _span() functions to new subbuffers.
16245 2005-05-18 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
16247 * gst/gstbin.c: (gst_bin_add_func):
16248 Fix clock settery in bins when adding kids after the clock has
16249 been selected.
16251 2005-05-18 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
16253 * gst/elements/gstidentity.c: (gst_identity_class_init):
16254 Workaround until signals support GstMiniObject.
16256 2005-05-18 Jan Schmidt <thaytan@mad.scientist.com>
16258 * gst/gstbuffer.c:
16259 Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
16261 2005-05-18 Wim Taymans <wim@fluendo.com>
16263 * gst/base/Makefile.am:
16264 * gst/base/gstadapter.c: (gst_adapter_base_init),
16265 (gst_adapter_class_init), (gst_adapter_init),
16266 (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
16267 (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
16268 (gst_adapter_flush), (gst_adapter_available),
16269 (gst_adapter_available_fast):
16270 * gst/base/gstadapter.h:
16271 Ported and added adapter to the base classes.
16273 2005-05-17 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
16275 * gst/gst.c:
16276 * gst/gstmessage.c:
16277 Make sure the class is reffed/unreffed once before threads can be
16278 used. Fixes #304551.
16280 2005-05-17 Wim Taymans <wim@fluendo.com>
16282 * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
16283 (gst_basesink_chain_unlocked), (gst_basesink_activate):
16284 * gst/gstminiobject.c: (gst_mini_object_get_type),
16285 (gst_mini_object_free):
16286 * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
16287 (gst_pad_push), (gst_pad_push_event):
16288 * gst/gstqueue.c: (gst_queue_change_state):
16289 Don't queue buffers in basesink when we are flushing.
16290 Unref buffer when flushing in basesink.
16291 Flush queue when going to READY
16292 Unref buffer when _push() returns an error.
16293 Don't free MiniObject instance when refcount is incremented
16294 in _finalize() so that we can recover objects.
16296 2005-05-17 Thomas Vander Stichele <thomas at apestaart dot org>
16298 * docs/manual/advanced-schedulers.xml:
16299 * docs/manual/appendix-checklist.xml:
16300 * docs/pwg/advanced-clock.xml:
16301 * docs/pwg/advanced-interfaces.xml:
16302 * docs/pwg/advanced-request.xml:
16303 * docs/pwg/advanced-types.xml:
16304 * docs/pwg/intro-preface.xml:
16305 * examples/plugins/example.c: (gst_example_get_type),
16306 (gst_example_class_init), (gst_example_chain),
16307 (gst_example_set_property), (gst_example_get_property),
16308 (gst_example_change_state), (plugin_init):
16309 * examples/plugins/example.h:
16310 small doc fixes
16312 2005-05-17 Wim Taymans <wim@fluendo.com>
16314 * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
16315 (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
16316 * gst/gstqueue.c: (gst_queue_change_state):
16317 Clear queue when going to READY.
16318 Remove IN_SETCAPS flag too.
16320 2005-05-17 Tim-Philipp Müller <tim at centricular dot net>
16322 * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
16323 Remove implicit cast from gboolean to GstElementStateReturn;
16324 make sure we still return failure in paused => ready case if
16325 the parent class fails to change state and our own stop
16326 vfunc succeeds.
16328 2005-05-17 Wim Taymans <wim@fluendo.com>
16330 * tools/gst-launch.c: (event_loop):
16331 Message was unreffed too soon.
16333 2005-05-16 Andy Wingo <wingo@pobox.com>
16335 * gst/gstbin.c (sink_iterator_filter): Err... um...
16337 * check/gst/gstbin.c (test_ghost_pads): New test for the
16338 ghosting-if-elements-not-in-same-bin behavior.
16340 2005-05-16 David Schleef <ds@schleef.org>
16342 * gst/gstminiobject.c: Use g_atomic_int_get() instead of
16343 accessing refcount directly.
16345 2005-05-15 David Schleef <ds@schleef.org>
16347 * check/Makefile.am: remove GstData checks
16348 * check/gst-libs/gdp.c: (START_TEST): fix for API changes
16349 * gst/Makefile.am: add miniobject, remove data
16350 * gst/gst.h: add miniobject, remove data
16351 * gst/gstdata.c: remove
16352 * gst/gstdata.h: remove
16353 * gst/gstdata_private.h: remove
16354 * gst/gsttypes.h: remove GstEvent and GstMessage
16355 * gst/gstelement.c: (gst_element_post_message): fix for API changes
16356 * gst/gstmarshal.list: change BOXED -> OBJECT
16358 Implement GstMiniObject.
16359 * gst/gstminiobject.c:
16360 * gst/gstminiobject.h:
16362 Modify to be subclasses of GstMiniObject.
16363 * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
16364 (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
16365 (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
16366 (gst_subbuffer_get_type), (gst_subbuffer_init),
16367 (gst_buffer_create_sub), (gst_buffer_is_span_fast),
16368 (gst_buffer_span):
16369 * gst/gstbuffer.h:
16370 * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
16371 (gst_event_class_init), (gst_event_init), (gst_event_finalize),
16372 (_gst_event_copy), (gst_event_new):
16373 * gst/gstevent.h:
16374 * gst/gstmessage.c: (_gst_message_initialize),
16375 (gst_message_get_type), (gst_message_class_init),
16376 (gst_message_init), (gst_message_finalize), (_gst_message_copy),
16377 (gst_message_new), (gst_message_new_error),
16378 (gst_message_new_warning), (gst_message_new_tag),
16379 (gst_message_new_state_changed), (gst_message_new_application):
16380 * gst/gstmessage.h:
16381 * gst/gstprobe.c: (gst_probe_perform),
16382 (gst_probe_dispatcher_dispatch):
16383 * gst/gstprobe.h:
16384 * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
16385 (gst_query_class_init), (gst_query_finalize), (gst_query_init),
16386 (_gst_query_copy), (gst_query_new):
16388 Update elements for GstData -> GstMiniObject changes
16389 * gst/gstquery.h:
16390 * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
16391 (gst_queue_chain), (gst_queue_loop):
16392 * gst/elements/gstbufferstore.c:
16393 (gst_buffer_store_add_buffer_func),
16394 (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
16395 * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
16396 (gst_fakesink_render):
16397 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
16398 * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
16399 (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
16400 (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
16401 (gst_filesrc_create_read):
16402 * gst/elements/gstidentity.c: (gst_identity_class_init):
16403 * gst/elements/gsttypefindelement.c:
16404 (gst_type_find_element_src_event), (free_entry_buffers),
16405 (gst_type_find_element_handle_event):
16406 * libs/gst/dataprotocol/dataprotocol.c:
16407 (gst_dp_header_from_buffer):
16408 * libs/gst/dataprotocol/dataprotocol.h:
16409 * libs/gst/dataprotocol/dp-private.h:
16411 2005-05-15 David Schleef <ds@schleef.org>
16413 * gst/elements/gstelements.c: Don't include headers that were
16414 just removed.
16416 2005-05-15 David Schleef <ds@schleef.org>
16418 * gst/elements/Makefile.am: Remove some elements that don't
16419 need to be in the core (or even exist at all).
16420 * gst/elements/gstaggregator.c:
16421 * gst/elements/gstaggregator.h:
16422 * gst/elements/gstmd5sink.c:
16423 * gst/elements/gstmd5sink.h:
16424 * gst/elements/gstmultifilesrc.c:
16425 * gst/elements/gstmultifilesrc.h:
16426 * gst/elements/gstpipefilter.c:
16427 * gst/elements/gstpipefilter.h:
16428 * gst/elements/gstshaper.c:
16429 * gst/elements/gstshaper.h:
16430 * gst/elements/gststatistics.c:
16431 * gst/elements/gststatistics.h:
16432 * po/POTFILES.in: Remove above files.
16434 2005-05-14 Andy Wingo <wingo@pobox.com>
16436 * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
16437 so as to get the refs right.
16438 (sink_iterator_filter): New function, wraps bin_element_is_sink,
16439 unreffing objects that don't pass the filter.
16441 * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
16442 gst_element_set_bus.
16443 (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
16444 normal cases, this will destroy the bus.
16446 * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
16447 object.
16449 * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
16450 has no sinks.
16452 2005-05-13 Andy Wingo <wingo@pobox.com>
16454 * gst/gstutils.c (gst_element_link_pads): Instead of calling
16455 gst_pad_link, call pad_link_maybe_ghosting,
16456 (pad_link_maybe_ghosting): Links pads, making sure that the
16457 elements being linked are in the same bin.
16458 (find_common_root, object_has_ancestor, ghost_up, remove_pad):
16459 Helpers for pad_link_maybe_ghosting.
16461 2005-05-13 Tim-Philipp Müller <tim at centricular dot net>
16463 * configure.ac:
16464 Require GLib >= 2.4.0 (for the g_atomic_* funcs)
16466 2005-05-13 Tim-Philipp Müller <tim at centricular dot net>
16468 * docs/design/part-element-source.txt:
16469 Mention GstPushSrc
16471 2005-05-12 Wim Taymans <wim@fluendo.com>
16473 * gst/base/gstbasesink.c: (gst_basesink_init),
16474 (gst_basesink_activate):
16475 * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
16476 (gst_basesrc_is_seekable):
16477 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
16478 (bin_element_is_sink), (gst_bin_change_state):
16479 * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
16480 * gst/gstelement.h:
16481 Identify sinks by their flag to avoid overly complicated
16482 checks (fow now).
16483 Do state changes even for elements not reachable from the
16484 sinks.
16485 BaseSink is a sink now :)
16486 Some more debugging info in the basesrc.
16489 2005-05-12 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
16491 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
16492 Implement _query on a bin, similar to _send_event.
16494 2005-05-12 Tim-Philipp Müller <tim at centricular dot net>
16496 * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
16497 Discont event offset format should be GST_FORMAT_BYTES,
16498 not GST_FORMAT_TIME.
16500 2005-05-12 Wim Taymans <wim@fluendo.com>
16502 * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
16503 Same fix as Ronald's but without the signal.
16505 2005-05-12 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
16507 * gst/gstutils.c: (gst_element_query_position):
16508 No, an element is not a pad.
16510 2005-05-12 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
16512 * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
16513 (gst_bin_get_state):
16514 If a child is removed from a bin while we remove the child from
16515 the bin and while we're retrieving its state, signal this to the
16516 get_state function so we abort the wait (instead of waiting for
16517 a timeout) and can immediately re-iterate over all other elements.
16519 2005-05-12 Wim Taymans <wim@fluendo.com>
16521 * gst/base/Makefile.am:
16522 * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
16523 (gst_basesrc_start):
16524 * gst/base/gstbasesrc.h:
16525 * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
16526 (gst_pushsrc_base_init), (gst_pushsrc_class_init),
16527 (gst_pushsrc_init), (gst_pushsrc_create):
16528 * gst/base/gstpushsrc.h:
16529 Added is_seekable to BaseSrc
16530 Added simple PushSrc.
16532 2005-05-11 Wim Taymans <wim@fluendo.com>
16534 * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
16535 * gst/gstutils.c: (gst_element_get_compatible_pad_template),
16536 (gst_element_link_pads), (gst_element_query_position),
16537 (gst_element_query_convert), (intersect_caps_func),
16538 (gst_pad_query_position), (gst_pad_query_convert):
16539 Fix refcounting in utils function.
16540 No point in trying to activate a pad when it's added, it could
16541 be added from the state change function and then we deadlock, the
16542 element has to decide what to do.
16544 2005-05-10 Andy Wingo <wingo@pobox.com>
16546 * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
16547 *all* the arguments.
16549 * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
16550 stream lock if it's a FLUSH_DONE; normal flushes don't get the
16551 lock (according to the docs -- if this is wrong change the docs).
16553 * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
16554 flush messages in the NULL state.
16556 * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
16557 message immediately and return.
16558 (gst_bus_set_flushing): New function. If a bus is flushing, it
16559 flushes out any queued messages and immediately unrefs new
16560 messages. This is so when an element goes to NULL, all of the
16561 unhandled messages coming from it can be freed, and their
16562 references to the element dropped. In other words: message source
16563 ref considered harmful :P
16565 * gst/gstbin.c (gst_bin_change_state): Unref peer element when
16566 we're finished with it.
16568 * gst/gstmessage.c (gst_message_new_state_changed):
16570 2005-05-10 Wim Taymans <wim@fluendo.com>
16572 * gst/gstvalue.c: (gst_value_compare_flags),
16573 (gst_value_serialize_flags), (gst_value_deserialize_flags),
16574 (_gst_value_initialize):
16575 Added flags serialize/deserialize/compare code.
16577 2005-05-09 Andy Wingo <wingo@pobox.com>
16579 * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
16580 Intersect the peer's caps with our caps.
16582 2005-05-09 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
16584 * gst/base/gsttypefindhelper.c: (helper_find_peek):
16585 * gst/elements/gsttypefindelement.c: (find_peek):
16586 Handle negative offsets better. Fixes decodebin.
16588 2005-05-09 Wim Taymans <wim@fluendo.com>
16590 * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
16591 (gst_base_transform_event):
16592 * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
16593 Implement accept_caps.
16594 Fix silly lock/unlock mismatch in base class.
16596 2005-05-09 Wim Taymans <wim@fluendo.com>
16598 * docs/design/draft-push-pull.txt:
16599 * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
16600 * gst/elements/gstfilesink.c: (gst_filesink_init),
16601 (gst_filesink_query):
16602 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
16603 (gst_type_find_handle_src_query), (find_element_get_length):
16604 * gst/gstelement.c: (gst_element_seek), (gst_element_query):
16605 * gst/gstelement.h:
16606 * gst/gstmessage.c:
16607 * gst/gstmessage.h:
16608 * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
16609 (gst_real_pad_get_caps_unlocked),
16610 (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
16611 (gst_pad_event_default_dispatch), (gst_pad_event_default),
16612 (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
16613 (gst_real_pad_dispose), (gst_real_pad_finalize),
16614 (gst_pad_load_and_link), (gst_pad_save_thyself),
16615 (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
16616 (gst_pad_check_pull_range), (gst_pad_pull_range),
16617 (gst_pad_template_get_type), (gst_pad_template_class_init),
16618 (gst_pad_template_init), (gst_pad_template_dispose),
16619 (name_is_valid), (gst_static_pad_template_get),
16620 (gst_pad_template_new), (gst_static_pad_template_get_caps),
16621 (gst_pad_template_get_caps), (gst_pad_set_element_private),
16622 (gst_pad_get_element_private), (gst_pad_start_task),
16623 (gst_pad_pause_task), (gst_pad_stop_task),
16624 (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
16625 (gst_ghost_pad_init), (gst_ghost_pad_dispose),
16626 (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
16627 (gst_ghost_pad_new):
16628 * gst/gstpad.h:
16629 * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
16630 (gst_query_new_position), (gst_query_set_position),
16631 (gst_query_parse_position), (gst_query_new_convert),
16632 (gst_query_set_convert), (gst_query_parse_convert):
16633 * gst/gstquery.h:
16634 * gst/gstqueryutils.c:
16635 * gst/gstqueryutils.h:
16636 * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
16637 (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
16638 (gst_queue_handle_src_query):
16639 * gst/gstutils.c: (gst_element_get_compatible_pad_template),
16640 (gst_element_query_position), (gst_element_query_convert),
16641 (intersect_caps_func), (gst_pad_query_position),
16642 (gst_pad_query_convert):
16643 * gst/gstutils.h:
16644 * tools/gst-inspect.c: (print_pad_info):
16645 * tools/gst-xmlinspect.c: (print_element_info):
16646 Remove old query functions. Ported old code.
16647 Added position/convert helper functions to gstutils.
16648 Reordered gstpad.c code, grouping relevant things.
16649 Remove gst_message_new(), always need to speficy a specific
16650 message.
16653 2005-05-09 Andy Wingo <wingo@pobox.com>
16655 * gst/gstiterator.h: Add some includes.
16657 * gst/gstqueryutils.h: Include more headers.
16659 * gst/gstpad.h:
16660 * gst/gstpad.c (gst_pad_query_position): New routine, replaces
16661 some uses of gst_pad_query.
16663 * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
16664 NULL out parameters.
16665 (gst_query_new_position): New proc, allocates a new position
16666 query.
16668 * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
16669 gstqueryutils.c to the build.
16671 * gst/gststructure.c (gst_structure_set_valist): Implement with
16672 the generic G_VALUE_COLLECT.
16674 2005-05-08 Edward Hervey <bilboed@bilboed.com>
16676 * gst/Makefile.am: (gst_headers):
16677 Added gstqueryutils.h to the list of headers to install, that was
16678 a 'nachty' move wingo :)
16680 2005-05-06 Andy Wingo <wingo@pobox.com>
16682 * gst/gstquery.h
16683 * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
16684 GstData, init a memchunk.
16685 (standard_definitions): Add a few query types, deprecate a few.
16686 (gst_query_get_type): New proc.
16687 (_gst_query_copy, _gst_query_free, gst_query_new): GstData
16688 implementation.
16689 (gst_query_new_application, gst_query_get_structure): New public
16690 procs.
16692 * docs/design/draft-query.txt: Removed LINKS from the query types,
16693 because all the rest can be dispatched to other pads -- seemed
16694 ugly to have a query that couldn't be dispatched. internal_links
16695 is fine as a pad method.
16697 * gst/gstpad.h: Add query2 as a pad method, add the new functions
16698 in gstpad.c, but maintain binary compatibility for the moment.
16699 Will fix before 0.9 is out.
16701 * gst/gstqueryutils.c:
16702 * gst/gstqueryutils.h: New files, implement 3 methods for each
16703 query type: parse_query, parse_response, and set. Probably need an
16704 allocator as well.
16706 * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
16708 * gst/elements/gstfilesink.c (gst_filesink_query2):
16709 * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
16710 query_types, and formats methods.
16712 * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
16713 (gst_pad_set_query2_function): New functions.
16714 (gst_real_pad_init): Set query2_default as the default query2
16715 function. Basically just dispatches to internally linked pads.
16717 Needs review!
16719 * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
16720 without using the atomic operations. Only one thread can possibly
16721 be accessing the data at this point. Changed so as to avoid
16722 gst_atomic operations.
16724 2005-05-06 Wim Taymans <wim@fluendo.com>
16726 * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
16727 Also set caps if we use the fallback buffer alloc.
16729 2005-05-06 Tim-Philipp Müller <tim at centricular dot net>
16731 * docs/gst/Makefile.am:
16732 * docs/gst/gstreamer-docs.sgml:
16733 * docs/gst/gstreamer-sections.txt:
16734 * docs/gst/tmpl/gstatomic.sgml:
16735 * docs/gst/tmpl/gstmemchunk.sgml:
16736 * testsuite/elements/struct_i386.h:
16737 * win32/GStreamer.vcproj:
16738 * win32/Makefile:
16739 Purge GstAtomic stuff from docs and win32 makefiles as well
16741 2005-05-06 Wim Taymans <wim@fluendo.com>
16743 * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
16744 * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
16745 * gst/gstpad.c: (gst_pad_peer_get_caps):
16746 * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
16747 (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
16748 (gst_queue_src_activate), (gst_queue_change_state):
16749 * gst/gstqueue.h:
16750 * gst/gstutils.c: (gst_element_get_compatible_pad_template),
16751 (intersect_caps_func):
16752 Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
16753 Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
16754 Some fixes for the peer_get_caps() change.
16756 2005-05-06 Wim Taymans <wim@fluendo.com>
16758 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
16759 (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
16760 (gst_basesink_activate):
16761 Actually do something with error codes returned from the push
16762 functions.
16764 2005-05-06 Wim Taymans <wim@fluendo.com>
16766 * docs/design/part-element-sink.txt:
16767 * docs/design/part-element-source.txt:
16768 * gst/base/gstbasesink.c: (gst_basesink_class_init),
16769 (gst_basesink_event), (gst_basesink_activate):
16770 * gst/base/gstbasesink.h:
16771 * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
16772 (gst_basesrc_activate):
16773 * gst/base/gstbasesrc.h:
16774 * gst/gstelement.c: (gst_element_pads_activate):
16775 Some more documentation.
16776 Fixed scheduling decision in _pads_activate().
16778 2005-05-05 Andy Wingo <wingo@pobox.com>
16780 * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
16781 the test suite.
16783 2005-05-05 Wim Taymans <wim@fluendo.com>
16785 * gst/base/Makefile.am:
16786 * gst/base/gstbasesink.h:
16787 * gst/base/gstbasesrc.c: (gst_basesrc_init),
16788 (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
16789 * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
16790 (gst_collectpads_class_init), (gst_collectpads_init),
16791 (gst_collectpads_finalize), (gst_collectpads_new),
16792 (gst_collectpads_set_function), (gst_collectpads_add_pad),
16793 (find_pad), (gst_collectpads_remove_pad),
16794 (gst_collectpads_is_active), (gst_collectpads_collect),
16795 (gst_collectpads_collect_range), (gst_collectpads_start),
16796 (gst_collectpads_stop), (gst_collectpads_peek),
16797 (gst_collectpads_pop), (gst_collectpads_available),
16798 (gst_collectpads_read), (gst_collectpads_flush),
16799 (gst_collectpads_chain):
16800 * gst/base/gstcollectpads.h:
16801 * gst/elements/Makefile.am:
16802 * gst/elements/gstelements.c:
16803 * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
16804 (gst_fakesink_get_times), (gst_fakesink_event),
16805 (gst_fakesink_preroll), (gst_fakesink_render):
16806 * gst/elements/gstfilesink.c: (gst_filesink_class_init),
16807 (gst_filesink_init), (gst_filesink_set_location),
16808 (gst_filesink_open_file), (gst_filesink_close_file),
16809 (gst_filesink_pad_query), (gst_filesink_event),
16810 (gst_filesink_render), (gst_filesink_change_state):
16811 * gst/elements/gstfilesink.h:
16812 Added object to help in making collect pad based elements.
16813 Ported filesink.
16814 Make event function in sink baseclass return gboolean.
16816 2005-05-05 Wim Taymans <wim@fluendo.com>
16818 * gst/gstbin.c: (gst_bin_send_event), (compare_name),
16819 (gst_bin_get_by_name):
16820 * gst/gstbuffer.h:
16821 * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
16822 (gst_clock_finalize):
16823 * gst/gstdata.c: (gst_data_replace):
16824 * gst/gstdata.h:
16825 * gst/gstelement.c: (gst_element_request_pad),
16826 (gst_element_pads_activate):
16827 * gst/gstobject.c: (gst_object_init), (gst_object_ref),
16828 (gst_object_unref):
16829 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
16830 (gst_pad_set_checkgetrange_function),
16831 (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
16832 (gst_pad_check_pull_range), (gst_pad_pull_range),
16833 (gst_static_pad_template_get_caps), (gst_pad_start_task),
16834 (gst_pad_pause_task), (gst_pad_stop_task):
16835 * gst/gstutils.c: (gst_element_get_compatible_pad_template),
16836 (gst_element_request_pad), (gst_pad_proxy_getcaps):
16837 Fix name lookup in GstBin.
16838 Added _data_replace() function and _buffer_replace()
16839 Use finalize method to clean up clock.
16840 Fix refcounting on request pads.
16841 Fix pad schedule mode error.
16842 Some more object refcounting debug info,
16845 2005-05-04 Andy Wingo <wingo@pobox.com>
16847 * check/Makefile.am:
16848 * docs/gst/tmpl/gstatomic.sgml:
16849 * docs/gst/tmpl/gstplugin.sgml:
16850 * gst/base/gstbasesink.c: (gst_basesink_activate):
16851 * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
16852 (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
16853 (gst_basesrc_query), (gst_basesrc_set_property),
16854 (gst_basesrc_get_property), (gst_basesrc_check_get_range),
16855 (gst_basesrc_activate):
16856 * gst/base/gstbasesrc.h:
16857 * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
16858 (gst_base_transform_src_activate):
16859 * gst/elements/gstelements.c:
16860 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
16861 (gst_fakesrc_set_property), (gst_fakesrc_get_property):
16862 * gst/elements/gsttee.c: (gst_tee_sink_activate):
16863 * gst/elements/gsttypefindelement.c: (find_element_get_length),
16864 (gst_type_find_element_checkgetrange),
16865 (gst_type_find_element_activate):
16866 * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
16867 * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
16868 (gst_caps_load_thyself):
16869 * gst/gstelement.c: (gst_element_pads_activate),
16870 (gst_element_save_thyself), (gst_element_restore_thyself):
16871 * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
16872 (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
16873 * gst/gstpad.h:
16874 * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
16875 (gst_xml_parse_file), (gst_xml_parse_memory),
16876 (gst_xml_get_element), (gst_xml_make_element):
16877 * gst/indexers/gstfileindex.c: (gst_file_index_load),
16878 (_file_index_id_save_xml), (gst_file_index_commit):
16879 * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
16880 (read_enum), (load_pad_template), (load_feature), (load_plugin),
16881 (load_paths):
16882 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
16883 (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
16884 * tools/gst-complete.c: (main):
16885 * tools/gst-compprep.c: (main):
16886 * tools/gst-inspect.c: (print_element_properties_info):
16887 * tools/gst-launch.c: (xmllaunch_parse_cmdline):
16888 * tools/gst-xmlinspect.c: (print_element_properties):
16889 GCC 4 fixen.
16891 2005-05-03 Thomas Vander Stichele <thomas at apestaart dot org>
16893 * gst/gstplugin.c: (gst_plugin_check_module),
16894 (gst_plugin_check_file), (gst_plugin_load_file):
16895 apply patch from #172526 to make register work on MacOSX
16897 2005-05-02 Thomas Vander Stichele <thomas at apestaart dot org>
16899 * docs/gst/tmpl/gstconfig.sgml:
16900 * gst/gstconfig.h.in:
16901 move documentation for some symbols. Add doc for GST_PTR_FORMAT
16902 * testsuite/debug/printf_extension.c: (main):
16903 Do not use GST_PTR_FORMAT on pointers to types with
16904 sizeof < sizeof(gpointer). Fixes test on 64-bit
16905 * testsuite/elements/property.h:
16906 use correct printf format
16908 2005-05-02 Wim Taymans <wim@fluendo.com>
16910 * docs/design/draft-push-pull.txt:
16911 * docs/design/draft-query.txt:
16912 * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
16913 (gst_basesrc_start):
16914 Added draft for new query API.
16915 Added draft for better selecting scheduling methods.
16916 Make basesrc ignore length if the subclass does not support
16917 it.
16919 2005-05-02 Thomas Vander Stichele <thomas at apestaart dot org>
16921 * gst/Makefile.am:
16922 possible fixes for automake-1.5 - _LIBADD is reserved
16924 2005-05-02 Thomas Vander Stichele <thomas at apestaart dot org>
16926 * docs/faq/Makefile.am:
16927 * docs/manual/Makefile.am:
16928 * docs/manuals.mak:
16929 * docs/pwg/Makefile.am:
16930 * gst/Makefile.am:
16931 possible fixes for automake-1.5
16933 2005-04-28 Wim Taymans <wim@fluendo.com>
16935 * gst/base/gstbasesink.c: (gst_basesink_base_init),
16936 (gst_basesink_pad_getcaps), (gst_basesink_init),
16937 (gst_basesink_do_sync):
16938 * gst/gstclock.c: (gst_clock_entry_new):
16939 * gst/gstevent.c: (gst_event_discont_get_value):
16940 * gst/gstpipeline.c: (pipeline_bus_handler),
16941 (gst_pipeline_change_state):
16942 * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
16943 Better debugging of clocking info.
16944 Allow NULL values when getting discont values.
16946 2005-04-27 Wim Taymans <wim@fluendo.com>
16948 * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
16949 * check/gst/gstpad.c: (gst_pad_suite):
16950 Increase timeout for checks.
16952 2005-04-27 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
16954 * check/Makefile.am:
16955 fix the broken rule for cleanup. Apparently this rule is
16956 only needed on FC2, so maybe this warrants further autotool
16957 inspection.
16959 2005-04-26 Wim Taymans <wim@fluendo.com>
16961 * gst/gsttrashstack.h:
16962 Ooohh. a nasty one! After having a failed pop() from the stack,
16963 it's possible that the stack is empty. In that case, don't
16964 follow the NULL pointer.
16966 2005-04-25 Wim Taymans <wim@fluendo.com>
16968 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
16969 (gst_pad_set_checkgetrange_function),
16970 (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
16971 (gst_pad_check_pull_range), (gst_pad_pull_range),
16972 (gst_static_pad_template_get_caps), (gst_pad_start_task),
16973 (gst_pad_pause_task), (gst_pad_stop_task):
16974 * gst/gstplugin.c: (gst_plugin_load):
16975 * gst/gstplugin.h:
16976 Remove gst_library_load as it does more harm than good with
16977 the new g_module flags.
16978 Revert bogus caps template check in pad linking, pad caps
16979 are important when linking not the template, which is more
16980 general than the current caps.
16982 2005-04-25 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
16984 * gst/autoplug/.cvsignore:
16985 * gst/autoplug/Makefile.am:
16986 * gst/autoplug/gstsearchfuncs.c:
16987 * gst/autoplug/gstsearchfuncs.h:
16988 * gst/autoplug/gstspider.c:
16989 * gst/autoplug/gstspider.h:
16990 * gst/autoplug/gstspideridentity.c:
16991 * gst/autoplug/gstspideridentity.h:
16992 * gst/autoplug/spidertest.c:
16993 Die, spider, die.
16995 2005-04-25 Wim Taymans <wim@fluendo.com>
16997 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
16998 (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
16999 (gst_pad_pull_range), (gst_static_pad_template_get_caps),
17000 (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
17001 * gst/gstpad.h:
17002 Added stubs for unimplemented functions.
17004 2005-04-24 David Schleef <ds@schleef.org>
17006 * gst/gstpad.h: Disable some unimplemented functions. Wim,
17007 please fix.
17009 2005-04-24 David Schleef <ds@schleef.org>
17011 Convert everything from GstAtomicInt to g_atomic_int_*, and
17012 remove gstatomic.
17013 * gst/Makefile.am:
17014 * gst/gstatomic.c:
17015 * gst/gstatomic.h:
17016 * gst/gstatomic_impl.h:
17017 * gst/gstbuffer.c:
17018 * gst/gstcaps.c:
17019 * gst/gstcaps.h:
17020 * gst/gstclock.c:
17021 * gst/gstclock.h:
17022 * gst/gstdata.c:
17023 * gst/gstdata.h:
17024 * gst/gstdata_private.h:
17025 * gst/gstevent.c:
17026 * gst/gstinfo.c:
17027 * gst/gstinfo.h:
17028 * gst/gstmessage.c:
17029 * gst/gstobject.c:
17030 * gst/gstobject.h:
17031 * gst/gststructure.c:
17032 * gst/gststructure.h:
17033 * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
17034 * gst/gstutils.h:
17036 2005-04-24 David Schleef <ds@schleef.org>
17038 * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
17039 make the regressions tests work. Remove some code that is no
17040 longer true.
17041 * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
17042 Disable warning for pads without templates.
17044 2005-04-24 David Schleef <ds@schleef.org>
17046 * gst/gstpad.c: Remove handling of filtered caps. Fix/merge
17047 functions that handle filtered links.
17048 * gst/gstpad.h: Remove 'appfilter' field and prototypes of
17049 removed functions.
17050 * gst/gstutils.c: Fix/remove utility functions that handle
17051 filtered caps.
17052 * gst/gstutils.h:
17053 * gst/gstvalue.c: Add serialization/deserialization of caps
17054 * gst/parse/grammar.y: Ignore filtered caps when linking. This
17055 requires fixing so that the filter caps notation creates
17056 a capsfilter element and sets the filter_caps property. I
17057 think everyone probably wants to keep the shorthand notation.
17058 * docs/gst/tmpl/gstelement.sgml: updates for API changes.
17059 * docs/gst/tmpl/gstpad.sgml:
17061 * gst/elements/gstelements.c: Register capsfilter element.
17062 * gst/Makefile.am: fix spacing
17063 * docs/random/ds/0.9-suggested-changes: random
17065 2005-04-23 David Schleef <ds@schleef.org>
17067 * gst/elements/Makefile.am:
17068 * gst/elements/gstcapsfilter.c: New element that acts like an
17069 identity, but filters caps. Will eventually replace filtered
17070 caps in pad linking.
17071 * gst/gstutils.c: (gst_element_create_all_pads): New function
17072 to create all the ALWAYS pads that are registered with an
17073 element class. This functionality should eventually be
17074 merged in with GstElement initialization.
17075 * gst/gstutils.h:
17076 * testsuite/trigger/README: part of trigger test code that should
17077 have been checked in a long time ago.
17079 2005-04-23 David Schleef <ds@schleef.org>
17081 * gst/Makefile.am: Remove as-libtool stuff. It's likely not
17082 needed with new versions of libtool (nobody will confirm this),
17083 and hard to carry around.
17084 * gst/autoplug/Makefile.am:
17085 * gst/base/Makefile.am:
17086 * gst/elements/Makefile.am:
17087 * gst/indexers/Makefile.am:
17088 * gst/schedulers/Makefile.am:
17089 * libs/gst/bytestream/Makefile.am:
17090 * libs/gst/control/Makefile.am:
17091 * libs/gst/dataprotocol/Makefile.am:
17092 * libs/gst/getbits/Makefile.am:
17094 2005-04-21 Wim Taymans <wim@fluendo.com>
17096 * docs/design/draft-push-pull.txt:
17097 * docs/design/part-MT-refcounting.txt:
17098 * docs/design/part-TODO.txt:
17099 * docs/design/part-caps.txt:
17100 * docs/design/part-events.txt:
17101 * docs/design/part-gstbus.txt:
17102 * docs/design/part-gstpipeline.txt:
17103 * docs/design/part-messages.txt:
17104 * docs/design/part-push-pull.txt:
17105 * docs/design/part-query.txt:
17106 Some more docs.
17108 2005-04-21 Wim Taymans <wim@fluendo.com>
17110 * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
17111 (gst_message_new), (gst_message_new_error),
17112 (gst_message_new_warning), (gst_message_new_tag),
17113 (gst_message_new_state_changed), (gst_message_new_application),
17114 (gst_message_get_structure):
17115 * gst/gstmessage.h:
17116 * gst/gststructure.c: (gst_structure_set_parent_refcount),
17117 (gst_structure_copy_conditional):
17118 Use parent refcount in GstMessage to ensure GstStructure
17119 consistency.
17120 Cleaned up headers a bit.
17123 2005-04-20 Wim Taymans <wim@fluendo.com>
17125 * gst/base/gstbasesink.c: (gst_basesink_base_init),
17126 (gst_basesink_pad_getcaps), (gst_basesink_init),
17127 (gst_basesink_chain_unlocked):
17128 * gst/base/gsttypefindhelper.c: (helper_find_suggest),
17129 (gst_type_find_helper):
17130 * gst/elements/gsttypefindelement.c:
17131 (gst_type_find_element_have_type), (gst_type_find_element_init),
17132 (stop_typefinding), (gst_type_find_element_handle_event),
17133 (find_suggest), (gst_type_find_element_chain),
17134 (gst_type_find_element_checkgetrange),
17135 (gst_type_find_element_getrange), (do_typefind),
17136 (gst_type_find_element_activate):
17137 * gst/gstbuffer.c: (_gst_buffer_sub_free),
17138 (gst_buffer_default_free), (gst_buffer_default_copy),
17139 (gst_buffer_set_caps):
17140 * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
17141 (gst_caps_replace):
17142 * gst/gstmessage.c: (gst_message_new),
17143 (gst_message_new_state_changed):
17144 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
17145 (gst_pad_set_checkgetrange_function),
17146 (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
17147 (gst_pad_set_caps), (gst_pad_check_pull_range),
17148 (gst_pad_pull_range), (gst_static_pad_template_get_caps):
17149 * gst/gstpad.h:
17150 * gst/gsttypefind.c: (gst_type_find_register):
17151 Make gst_caps_replace() work like other _replace() functions.
17152 Use _caps_replace() where possible.
17153 Make sure _message_new() initialises its field.
17154 Add gst_static_pad_template_get_caps()
17157 2005-04-18 Andy Wingo <wingo@pobox.com>
17159 * gst/gstelement.c (gst_element_pads_activate): Check pull_range
17160 on the peer, not the pad. I think that was a typo. Pass an extra
17161 arg to see if random access is possible. Activate the pads as
17162 PULL_RANGE if possible.
17164 * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
17166 * gst/base/gstbasesrc.c (gst_basesrc_set_property)
17167 (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
17168 to PROP_....
17170 2005-04-14 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
17172 * docs/faq/using.xml:
17173 Add note on gstreamer-properties (#154996).
17175 2005-04-13 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
17177 * docs/random/bbb/optional-properties:
17178 Some analysis on optional properties.
17180 2005-04-12 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
17182 * docs/gst/tmpl/gstelementfactory.sgml:
17183 * gst/gstelement.h:
17184 * gst/gstelementfactory.c: (gst_element_factory_init),
17185 (gst_element_factory_cleanup), (gst_element_register),
17186 (__gst_element_factory_add_static_pad_template),
17187 (gst_element_factory_get_static_pad_templates),
17188 (gst_element_factory_can_src_caps),
17189 (gst_element_factory_can_sink_caps):
17190 * gst/registries/Makefile.am:
17191 * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
17192 (gst_xml_registry_class_init), (gst_xml_registry_init),
17193 (gst_xml_registry_new), (gst_xml_registry_set_property),
17194 (gst_xml_registry_get_property), (get_time), (make_dir),
17195 (gst_xml_registry_get_perms_func),
17196 (plugin_times_older_than_recurse), (plugin_times_older_than),
17197 (gst_xml_registry_open_func), (gst_xml_registry_load_func),
17198 (gst_xml_registry_save_func), (gst_xml_registry_close_func),
17199 (add_to_char_array), (read_string), (read_uint), (read_enum),
17200 (load_pad_template), (load_feature), (load_plugin), (load_paths),
17201 (gst_xml_registry_load), (gst_xml_registry_load_plugin),
17202 (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
17203 (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
17204 (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
17205 (gst_xml_registry_rebuild):
17206 * gst/registries/gstlibxmlregistry.h:
17207 * tools/gst-compprep.c: (main):
17208 * tools/gst-inspect.c: (print_pad_templates_info):
17209 * tools/gst-xmlinspect.c: (print_element_info):
17210 Use libxml2 for registry parsing, use staticpadtemplates in
17211 elementfactories. Makes gst_init() +/- 10x faster.
17213 2005-04-12 Wim Taymans <wim@fluendo.com>
17215 * gst/base/Makefile.am:
17216 * gst/base/gstbasesink.c: (gst_basesink_base_init),
17217 (gst_basesink_pad_getcaps), (gst_basesink_init),
17218 (gst_basesink_event), (gst_basesink_change_state):
17219 * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
17220 (gst_basesrc_init), (gst_basesrc_query),
17221 (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
17222 (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
17223 (gst_basesrc_check_get_range), (gst_basesrc_loop),
17224 (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
17225 (gst_basesrc_stop), (gst_basesrc_activate),
17226 (gst_basesrc_change_state):
17227 * gst/base/gsttypefindhelper.c: (helper_find_peek),
17228 (helper_find_suggest), (gst_type_find_helper):
17229 * gst/base/gsttypefindhelper.h:
17230 * gst/elements/Makefile.am:
17231 * gst/elements/gstelements.c:
17232 * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
17233 (gst_fakesink_get_times), (gst_fakesink_event),
17234 (gst_fakesink_preroll), (gst_fakesink_render):
17235 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
17236 (gst_fakesrc_init), (gst_fakesrc_event_handler),
17237 (gst_fakesrc_get_property), (gst_fakesrc_create),
17238 (gst_fakesrc_start), (gst_fakesrc_stop):
17239 * gst/elements/gstfakesrc.h:
17240 * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
17241 (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
17242 (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
17243 (gst_filesrc_create_read), (gst_filesrc_create),
17244 (gst_filesrc_is_seekable), (gst_filesrc_get_size),
17245 (gst_filesrc_start):
17246 * gst/elements/gsttypefindelement.c:
17247 (gst_type_find_element_have_type), (gst_type_find_element_init),
17248 (start_typefinding), (stop_typefinding), (push_buffer_store),
17249 (gst_type_find_element_handle_event),
17250 (gst_type_find_element_chain),
17251 (gst_type_find_element_checkgetrange),
17252 (gst_type_find_element_getrange), (do_typefind),
17253 (gst_type_find_element_activate),
17254 (gst_type_find_element_change_state):
17255 * gst/elements/gsttypefindelement.h:
17256 * gst/gstpipeline.c: (pipeline_bus_handler):
17257 Added typefind helper.
17258 Small preroll fix in the base sink.
17259 Disable typefind code in basesrc.
17260 Crude port of typefindelement.
17261 Fakesrc cleanups.
17264 2005-04-11 Wim Taymans <wim@fluendo.com>
17266 * check/gst/gstbus.c: (gstbus_suite):
17267 * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
17268 * check/gstcheck.h:
17269 Fix up the timeout so that the test does not fail.
17271 2005-04-06 Wim Taymans <wim@fluendo.com>
17273 * gst/base/README:
17274 * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
17275 (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
17276 (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
17277 (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
17278 (gst_basesrc_check_get_range), (gst_basesrc_loop),
17279 (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
17280 (gst_basesrc_stop), (gst_basesrc_activate),
17281 (gst_basesrc_change_state), (basesrc_find_peek),
17282 (basesrc_find_suggest), (gst_basesrc_type_find):
17283 * gst/base/gstbasesrc.h:
17284 * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
17285 (gst_filesrc_class_init), (gst_filesrc_init),
17286 (gst_filesrc_finalize), (gst_filesrc_set_location),
17287 (gst_filesrc_set_property), (gst_filesrc_get_property),
17288 (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
17289 (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
17290 (gst_filesrc_create_read), (gst_filesrc_create),
17291 (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
17292 * gst/elements/gstfilesrc.h:
17293 * gst/gstelement.c: (gst_element_get_state_func),
17294 (gst_element_lost_state), (gst_element_pads_activate):
17295 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
17296 (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
17297 (gst_pad_pull_range):
17298 * gst/gstpad.h:
17299 More work on the generic source base class, implement seeking,
17300 query.
17301 Make filesrc extend the base source class.
17302 Added gst_pad_set_checkgetrange_function to GstPad.
17304 2005-04-06 Andy Wingo <wingo@pobox.com>
17306 * pkgconfig/gstreamer-base.pc.in:
17307 * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
17309 * pkgconfig/Makefile.am:
17310 * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
17312 2005-04-04 Wim Taymans <wim@fluendo.com>
17314 * gst/base/Makefile.am:
17315 * gst/base/README:
17316 * gst/base/gstbasesink.c: (gst_basesink_base_init),
17317 (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
17318 (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
17319 (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
17320 * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
17321 (gst_basesrc_base_init), (gst_basesrc_class_init),
17322 (gst_basesrc_init), (gst_basesrc_get_formats),
17323 (gst_basesrc_get_query_types), (gst_basesrc_query),
17324 (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
17325 (gst_basesrc_set_property), (gst_basesrc_get_property),
17326 (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
17327 (gst_basesrc_loop), (gst_basesrc_activate),
17328 (gst_basesrc_change_state):
17329 * gst/base/gstbasesrc.h:
17330 * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
17331 (gst_fakesrc_class_init), (gst_fakesrc_init),
17332 (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
17333 (gst_fakesrc_get_property), (gst_fakesrc_create):
17334 * gst/elements/gstfakesrc.h:
17335 * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
17336 (gst_filesrc_open_file), (gst_filesrc_loop),
17337 (gst_filesrc_activate), (filesrc_find_peek),
17338 (gst_filesrc_type_find):
17339 Made base source class, make fakesrc extend it.
17340 Add comments to basesink class.
17341 Some filesrc cleanup.
17343 2005-03-31 David Schleef <ds@schleef.org>
17345 * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
17346 Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
17347 expected to link against libgstreamer.
17348 * gst/base/Makefile.am: link against libgstreamer
17349 * gst/elements/Makefile.am: same
17351 2005-03-31 Andy Wingo <wingo@pobox.com>
17353 * tests/instantiate/Makefile.am:
17354 * tests/instantiate/caps.c: Add test to test speed of caps copy
17355 and free.
17357 * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
17358 GMemChunk to be fair.
17360 * gst/gsttrashstack.h: Remove warning about using the fallback
17361 trash stack implementation, it's still faster than malloc.
17363 2005-03-30 Andy Wingo <wingo@pobox.com>
17365 * tests/complexity.c: Add a copyright.
17367 2005-03-31 Wim Taymans <wim@fluendo.com>
17369 * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
17370 (gst_base_transform_class_init), (gst_base_transform_init),
17371 (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
17372 (gst_base_transform_get_property),
17373 (gst_base_transform_sink_activate),
17374 (gst_base_transform_src_activate),
17375 (gst_base_transform_change_state):
17376 * gst/base/gstbasetransform.h:
17377 * gst/elements/gstidentity.c: (gst_identity_class_init),
17378 (gst_identity_event), (gst_identity_check_perfect),
17379 (gst_identity_transform), (gst_identity_start),
17380 (gst_identity_stop):
17381 Added start/stop methods to transform base class so subclasses
17382 don't need to deal with state changes even.
17384 2005-03-31 Wim Taymans <wim@fluendo.com>
17386 * gst/gstevent.c: (gst_event_new_discontinuous_valist),
17387 (gst_event_new_discontinuous), (gst_event_discont_get_value):
17388 * gst/gstevent.h:
17389 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
17390 (gst_pad_pull_range):
17391 Added rate to the discont event to prepare for variable speed
17392 and reverse playback.
17394 2005-03-29 David Schleef <ds@schleef.org>
17396 * configure.ac:
17397 * testsuite/trigger/Makefile.am:
17398 * testsuite/trigger/trigger.c: A little example program to show
17399 how trigger-based elements can work.
17401 2005-03-29 Wim Taymans <wim@fluendo.com>
17403 * gst/base/Makefile.am:
17404 * gst/base/README:
17405 * gst/base/gstbasesink.c: (gst_basesink_get_type),
17406 (gst_basesink_base_init), (gst_basesink_class_init),
17407 (gst_basesink_pad_getcaps), (gst_basesink_init),
17408 (gst_basesink_activate), (gst_basesink_change_state):
17409 * gst/base/gstbasesink.h:
17410 * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
17411 (gst_base_transform_base_init), (gst_base_transform_finalize),
17412 (gst_base_transform_class_init), (gst_base_transform_init),
17413 (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
17414 (gst_base_transform_event), (gst_base_transform_getrange),
17415 (gst_base_transform_chain), (gst_base_transform_handle_buffer),
17416 (gst_base_transform_set_property),
17417 (gst_base_transform_get_property),
17418 (gst_base_transform_sink_activate),
17419 (gst_base_transform_src_activate),
17420 (gst_base_transform_change_state):
17421 * gst/base/gstbasetransform.h:
17422 * gst/elements/gstidentity.c: (gst_identity_finalize),
17423 (gst_identity_class_init), (gst_identity_init),
17424 (gst_identity_event), (gst_identity_check_perfect),
17425 (gst_identity_transform), (gst_identity_set_property),
17426 (gst_identity_get_property), (gst_identity_change_state):
17427 * gst/elements/gstidentity.h:
17428 * gst/gstelement.c: (gst_element_get_state_func),
17429 (gst_element_lost_state), (gst_element_pads_activate):
17430 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
17431 (gst_pad_check_pull_range), (gst_pad_pull_range):
17432 * gst/gstpad.h:
17433 Simplify pad activation.
17434 Added function to check if pull_range can be performed.
17435 Error out when pulling inactive or flushing pads.
17436 Removed const from refcounted types as it does not make sense.
17437 Simplify pad templates in basesink
17438 Added base class for simple 1-to-1 transforms.
17439 Make identity subclass the base transform.
17441 2005-03-29 Andy Wingo <wingo@pobox.com>
17443 * docs/libs/gstreamer-libs-overrides.txt:
17444 * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
17445 really don't understand what's going on, but like whatever. I want
17446 green buildbot!
17448 * docs/gst/Makefile.am:
17449 * docs/libs/Makefile.am: Dist the overrides files.
17451 * check/Makefile.am (clean-local): Remove .libs directories.
17453 * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
17454 elements to EXTRA_DIST, so po/ files are happy.
17456 * po/POTFILES.in: Er, remove it here.
17458 * po/POTFILES: Remove gstspider.c.
17460 * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
17462 * docs/libs/gstreamer-libs-docs.sgml:
17463 * docs/libs/gstreamer-libs-sections.txt: Remove the section on
17464 bytestream.
17466 * tests/complexity.c (main): Set the length of the preroll queue
17467 on the sinks to prevent a lockup.
17469 * libs/gst/dataprotocol/Makefile.am:
17470 * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
17471 the same as the one in check/gst-libs/gdp.c.
17473 * po/, docs/gst/: Commit automatic changes to docs and po files.
17475 * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
17476 the versioned libgstbase.
17478 * check/Makefile.am: Depend on an unversioned gst-register, seems
17479 to make autoconf happier.
17481 * gst/base/Makefile.am: Make libgstbase a versioned lib.
17483 2005-03-28 Wim Taymans <wim@fluendo.com>
17485 * configure.ac:
17486 * docs/design/part-gstelement.txt:
17487 * docs/design/part-negotiation.txt:
17488 * docs/design/part-preroll.txt:
17489 * docs/design/part-scheduling.txt:
17490 * docs/design/part-states.txt:
17491 * gst/Makefile.am:
17492 * gst/base/Makefile.am:
17493 * gst/base/README:
17494 * gst/base/gstbasesink.c: (gst_basesink_get_template),
17495 (gst_basesink_base_init), (gst_basesink_class_init),
17496 (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
17497 (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
17498 (gst_basesink_set_pad_functions),
17499 (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
17500 (gst_basesink_set_property), (gst_basesink_get_property),
17501 (gst_base_sink_get_template), (gst_base_sink_get_caps),
17502 (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
17503 (gst_basesink_preroll_queue_push),
17504 (gst_basesink_preroll_queue_empty),
17505 (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
17506 (gst_basesink_event), (gst_basesink_get_times),
17507 (gst_basesink_do_sync), (gst_basesink_handle_buffer),
17508 (gst_basesink_chain_unlocked), (gst_basesink_chain),
17509 (gst_basesink_loop), (gst_basesink_activate),
17510 (gst_basesink_change_state):
17511 * gst/base/gstbasesink.h:
17512 * gst/elements/Makefile.am:
17513 * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
17514 (gst_fakesink_class_init), (gst_fakesink_init),
17515 (gst_fakesink_set_property), (gst_fakesink_get_property),
17516 (gst_fakesink_get_times), (gst_fakesink_event),
17517 (gst_fakesink_preroll), (gst_fakesink_render),
17518 (gst_fakesink_change_state):
17519 * gst/elements/gstfakesink.h:
17520 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
17521 (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
17522 * gst/gstelement.c: (gst_element_add_pad),
17523 (gst_element_get_state_func), (gst_element_abort_state),
17524 (gst_element_commit_state), (gst_element_lost_state),
17525 (gst_element_set_state), (gst_element_pads_activate):
17526 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
17527 * gst/gstpipeline.c: (gst_pipeline_send_event),
17528 (gst_pipeline_change_state):
17529 Added state change code.
17530 Added/updated docs.
17531 Added sink base class, make fakesink extend the base class.
17532 Small cleanups in GstPipeline.
17534 2005-03-26 David Schleef <ds@schleef.org>
17536 * gst/Makefile.am: remove gstcpu.[ch]. The gst_cpu functionality
17537 is broken and should be implemented in a different library.
17538 * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
17539 * gst/gst.h: remove gstcpu.h
17540 * gst/gstcpu.c: remove
17541 * gst/gstcpu.h: remove
17542 * gst/Makefile.am.future: Remove this file. It's ancient.
17544 2005-03-25 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
17546 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
17547 (gst_bin_send_event):
17548 Add default event/set_manager handlers. The set_manager handler
17549 takes care that the manager is distributed over kids that were
17550 already in the bin before the manager was set. The event handler
17551 is a utility virtual function that sends the event over all sinks,
17552 so that gst_element_send_event (bin, event); has the expected
17553 behaviour.
17554 * gst/gstpad.c: (gst_pad_event_default):
17555 Re-install default event handling for discontinuities, so that
17556 seeking works without requiring hacks in applications or extra
17557 code in sinks.
17558 * gst/gstpipeline.c: (gst_pipeline_class_init),
17559 (gst_pipeline_send_event):
17560 Half hack, half utility: set a pipeline to PAUSED for seek events,
17561 since that is the only way we can guarantee a/v sync. Means that
17562 you can do gst_element_seek (pipeline, method, pos); on a pipeline
17563 and it "just works".
17565 2005-03-25 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
17567 * gst/gstpipeline.c: (gst_pipeline_use_clock):
17568 Lock/unlock mismatch.
17570 2005-03-25 Thomas Vander Stichele <thomas at apestaart dot org>
17572 * docs/faq/gst-uninstalled:
17573 add gst-plugins-base
17574 * docs/gst/Makefile.am:
17575 don't error out until docs are fixed
17576 * docs/gst/gstreamer.types:
17577 remove thread
17579 2005-03-22 Wim Taymans <wim@fluendo.com>
17581 * check/Makefile.am:
17582 * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
17583 * gst/gststructure.c: (gst_structure_set_valist),
17584 (gst_structure_copy_conditional):
17585 Activated more tests.
17586 Added message test.
17587 Added G_TYPE_POINTER to GstStructure.
17590 2005-03-22 Wim Taymans <wim@fluendo.com>
17592 * docs/design/part-TODO.txt:
17593 * docs/design/part-events.txt:
17594 * docs/design/part-gstbin.txt:
17595 * docs/design/part-gstbus.txt:
17596 * docs/design/part-gstpipeline.txt:
17597 * docs/design/part-messages.txt:
17598 * gst/gstbus.c:
17599 * gst/gstmessage.c:
17600 Docs updates
17602 2005-03-21 Wim Taymans <wim@fluendo.com>
17604 * gst/gstbus.c: (gst_bus_post):
17605 Fix copy-and-paste error.
17607 2005-03-21 Wim Taymans <wim@fluendo.com>
17609 * check/Makefile.am:
17610 * gst/Makefile.am:
17611 * gst/elements/Makefile.am:
17612 * gst/elements/gstelements.c:
17613 * gst/elements/gstfakesink.c: (gst_fakesink_init),
17614 (gst_fakesink_event), (gst_fakesink_chain):
17615 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
17616 (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
17617 (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
17618 (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
17619 (gst_fakesrc_set_property), (gst_fakesrc_get_property),
17620 (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
17621 (gst_fakesrc_loop), (gst_fakesrc_activate),
17622 (gst_fakesrc_change_state):
17623 * gst/elements/gstfakesrc.h:
17624 * gst/elements/gstfilesrc.c: (gst_filesrc_init),
17625 (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
17626 (gst_filesrc_open_file), (gst_filesrc_loop),
17627 (gst_filesrc_activate), (gst_filesrc_change_state),
17628 (filesrc_find_peek), (filesrc_find_suggest),
17629 (gst_filesrc_type_find):
17630 * gst/elements/gstidentity.c: (gst_identity_finalize),
17631 (gst_identity_class_init), (gst_identity_init),
17632 (gst_identity_proxy_getcaps), (identity_queue_push),
17633 (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
17634 (gst_identity_getrange), (gst_identity_chain),
17635 (gst_identity_sink_loop), (gst_identity_src_loop),
17636 (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
17637 (gst_identity_set_property), (gst_identity_get_property),
17638 (gst_identity_change_state):
17639 * gst/elements/gstidentity.h:
17640 * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
17641 (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
17642 (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
17643 (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
17644 (gst_tee_sink_activate):
17645 * gst/elements/gsttee.h:
17646 * gst/gst.c: (gst_register_core_elements), (init_post):
17647 * gst/gst.h:
17648 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
17649 (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
17650 (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
17651 (gst_bin_change_state):
17652 * gst/gstbin.h:
17653 * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
17654 (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
17655 (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
17656 (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
17657 (gst_bus_set_sync_handler), (gst_bus_create_watch),
17658 (bus_watch_callback), (bus_watch_destroy),
17659 (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
17660 (poll_timeout), (gst_bus_poll):
17661 * gst/gstbus.h:
17662 * gst/gstcaps.h:
17663 * gst/gstdata.h:
17664 * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
17665 (gst_element_post_message), (gst_element_message_full),
17666 (gst_element_get_state_func), (gst_element_get_state),
17667 (gst_element_abort_state), (gst_element_commit_state),
17668 (gst_element_lost_state), (gst_element_set_state),
17669 (gst_element_pads_activate), (gst_element_change_state),
17670 (gst_element_dispose), (gst_element_set_manager_func),
17671 (gst_element_set_bus_func), (gst_element_set_scheduler_func),
17672 (gst_element_set_manager), (gst_element_get_manager),
17673 (gst_element_set_bus), (gst_element_get_bus),
17674 (gst_element_set_scheduler), (gst_element_get_scheduler):
17675 * gst/gstelement.h:
17676 * gst/gstevent.c: (gst_event_new_segment_seek),
17677 (gst_event_new_flush):
17678 * gst/gstevent.h:
17679 * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
17680 (_gst_message_free), (gst_message_get_type), (gst_message_new),
17681 (gst_message_new_eos), (gst_message_new_error),
17682 (gst_message_new_warning), (gst_message_new_tag),
17683 (gst_message_new_state_changed), (gst_message_new_application),
17684 (gst_message_get_structure), (gst_message_parse_tag),
17685 (gst_message_parse_state_changed), (gst_message_parse_error),
17686 (gst_message_parse_warning):
17687 * gst/gstmessage.h:
17688 * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
17689 (gst_real_pad_set_property), (gst_pad_set_active),
17690 (gst_pad_is_active), (gst_pad_set_blocked_async),
17691 (gst_pad_set_blocked), (gst_pad_is_blocked),
17692 (gst_pad_set_activate_function), (gst_pad_set_loop_function),
17693 (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
17694 (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
17695 (gst_pad_unlink), (gst_pad_link_prepare_filtered),
17696 (gst_pad_link_filtered), (gst_pad_relink_filtered),
17697 (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
17698 (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
17699 (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
17700 (gst_pad_set_caps), (gst_pad_configure_sink),
17701 (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
17702 (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
17703 (gst_real_pad_dispose), (gst_real_pad_finalize),
17704 (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
17705 (gst_pad_event_default_dispatch), (gst_pad_event_default),
17706 (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
17707 * gst/gstpad.h:
17708 * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
17709 (pipeline_bus_handler), (gst_pipeline_change_state),
17710 (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
17711 * gst/gstpipeline.h:
17712 * gst/gstprobe.h:
17713 * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
17714 (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
17715 (gst_queue_link_src), (gst_queue_bufferalloc),
17716 (gst_queue_locked_flush), (gst_queue_handle_sink_event),
17717 (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
17718 (gst_queue_loop), (gst_queue_handle_src_event),
17719 (gst_queue_handle_src_query), (gst_queue_src_activate),
17720 (gst_queue_change_state):
17721 * gst/gstqueue.h:
17722 * gst/gstscheduler.c: (gst_scheduler_init),
17723 (gst_scheduler_dispose), (gst_scheduler_create_task),
17724 (gst_scheduler_factory_create):
17725 * gst/gstscheduler.h:
17726 * gst/gststructure.c: (gst_structure_get_type),
17727 (gst_structure_copy_conditional):
17728 * gst/gststructure.h:
17729 * gst/gsttaginterface.h:
17730 * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
17731 (gst_task_init), (gst_task_dispose), (gst_task_create),
17732 (gst_task_get_state), (gst_task_start), (gst_task_stop),
17733 (gst_task_pause):
17734 * gst/gsttask.h:
17735 * gst/gstthread.c:
17736 * gst/gstthread.h:
17737 * gst/gsttypes.h:
17738 * gst/schedulers/Makefile.am:
17739 * gst/schedulers/cothreads_compat.h:
17740 * gst/schedulers/entryscheduler.c:
17741 * gst/schedulers/faircothreads.c:
17742 * gst/schedulers/faircothreads.h:
17743 * gst/schedulers/fairscheduler.c:
17744 * gst/schedulers/gstbasicscheduler.c:
17745 * gst/schedulers/gstoptimalscheduler.c:
17746 * gst/schedulers/gthread-cothreads.h:
17747 * gst/schedulers/threadscheduler.c:
17748 (gst_thread_scheduler_task_get_type),
17749 (gst_thread_scheduler_task_class_init),
17750 (gst_thread_scheduler_task_init),
17751 (gst_thread_scheduler_task_start),
17752 (gst_thread_scheduler_task_stop),
17753 (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
17754 (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
17755 (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
17756 (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
17757 (plugin_init):
17758 * libs/gst/Makefile.am:
17759 * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
17760 * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
17761 (gst_file_pad_parent_set):
17762 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
17763 (gst_dp_event_from_packet):
17764 * tests/complexity.c: (main):
17765 * tests/mass_elements.c: (main):
17766 * testsuite/states/locked.c: (message_received), (main):
17767 * testsuite/states/parent.c: (main):
17768 * tools/gst-inspect.c: (print_element_flag_info),
17769 (print_implementation_info), (print_pad_info):
17770 * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
17771 (main):
17772 * tools/gst-md5sum.c: (event_loop), (main):
17773 * tools/gst-typefind.c: (main):
17774 * tools/gst-xmlinspect.c: (print_element_info):
17775 Next big merge.
17776 Added GstBus for mainloop integration.
17777 Added GstMessage for sending notifications on the bus.
17778 Added GstTask as an abstraction for pipeline entry points.
17779 Removed GstThread.
17780 Removed Schedulers.
17781 Simplified GstQueue for multithreaded core.
17782 Made _link threadsafe, removed old capsnego.
17783 Added STREAM_LOCK and PREROLL_LOCK in GstPad.
17784 Added pad blocking functions.
17785 Reworked scheduling functions in GstPad to prepare for
17786 scheduling updates soon.
17787 Moved events out of data stream.
17788 Simplified GstEvent types.
17789 Added return values to push/pull.
17790 Removed clocking from GstElement.
17791 Added prototypes for state change function for next merge.
17792 Removed iterate from bins and state change management.
17793 Fixed some elements, disabled others for now.
17794 Fixed -inspect and -launch.
17795 Added check for GstBus.
17797 2005-03-10 Wim Taymans <wim@fluendo.com>
17799 * docs/design/part-MT-refcounting.txt:
17800 * docs/design/part-clocks.txt:
17801 * docs/design/part-gstelement.txt:
17802 * docs/design/part-gstobject.txt:
17803 * docs/design/part-standards.txt:
17804 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
17805 (gst_bin_remove_func), (gst_bin_remove):
17806 * gst/gstbin.h:
17807 * gst/gstbuffer.c:
17808 * gst/gstcaps.h:
17809 * testsuite/clock/clock1.c: (main):
17810 * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
17811 (main):
17812 * testsuite/dlopen/loadgst.c: (do_test):
17813 * testsuite/refcounting/bin.c: (add_remove_test1),
17814 (add_remove_test2), (main):
17815 * testsuite/refcounting/element.c: (main):
17816 * testsuite/refcounting/element_pad.c: (main):
17817 * testsuite/refcounting/pad.c: (main):
17818 * tools/gst-launch.c: (sigint_handler_sighandler):
17819 * tools/gst-typefind.c: (main):
17820 Doc updates.
17821 Added doc about clock.
17822 removed gst_bin_iterate_recurse_up(), marked methods
17823 for removal.
17824 Fix more testsuites.
17826 2005-03-09 Wim Taymans <wim@fluendo.com>
17828 * gst/gstpad.c: (gst_pad_get_direction),
17829 (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
17830 (gst_pad_collect_valist):
17831 * testsuite/bins/interface.c: (main):
17832 * testsuite/caps/audioscale.c: (test_caps):
17833 * testsuite/caps/caps.c: (test1), (test2), (test3):
17834 * testsuite/caps/deserialize.c: (main):
17835 * testsuite/caps/enumcaps.c: (main):
17836 * testsuite/caps/filtercaps.c: (main):
17837 * testsuite/caps/intersect2.c: (main):
17838 * testsuite/caps/random.c: (main):
17839 * testsuite/caps/renegotiate.c: (my_fixate), (main):
17840 * testsuite/caps/sets.c: (check_caps):
17841 * testsuite/caps/simplify.c: (check_caps), (main):
17842 * testsuite/caps/subtract.c: (check_caps):
17843 Fix _pad_get_direction wrt ghostpads.
17844 Fix caps testsuite.
17846 2005-03-09 Wim Taymans <wim@fluendo.com>
17848 * check/Makefile.am:
17849 * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
17850 * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
17851 (ok_callback), (error_callback), (gst_systemclock_suite), (main):
17852 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
17853 (gst_bin_set_clock_func), (gst_bin_get_clock_func),
17854 (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
17855 (gst_bin_remove), (gst_bin_iterate_recurse_up),
17856 (bin_element_is_sink), (gst_bin_iterate_sinks),
17857 (gst_bin_iterate_all_by_interface):
17858 * gst/gstbin.h:
17859 * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
17860 (gst_element_change_state), (gst_element_dispose),
17861 (gst_element_finalize), (gst_element_set_loop_function):
17862 * gst/gstelement.h:
17863 * gst/gstiterator.c: (find_custom_fold_func):
17864 * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
17865 (gst_pad_collectv), (gst_pad_collect_valist),
17866 (gst_pad_template_new):
17867 * gst/gstpipeline.c: (gst_pipeline_class_init),
17868 (gst_pipeline_dispose), (gst_pipeline_set_property),
17869 (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
17870 (gst_pipeline_get_clock), (gst_pipeline_use_clock),
17871 (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
17872 * gst/gstutils.h:
17873 * gst/schedulers/entryscheduler.c:
17874 * gst/schedulers/gstbasicscheduler.c:
17875 (gst_basic_scheduler_cothreaded_chain),
17876 (gst_basic_scheduler_chain_add_element):
17877 * testsuite/bins/interface.c: (main):
17878 Added GstBin test.
17879 Added GstSystemClock test.
17880 Implemented clock distribution code in GstBin.
17881 Implemented iterate sinks method for future use.
17882 Rearranged gstelement.h
17883 Fix GstIterator comparison bug.
17884 Moved some code to GstPipeline, mostly clocking related.
17886 2005-03-09 Wim Taymans <wim@fluendo.com>
17888 * configure.ac:
17889 * gst/gst_private.h:
17890 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
17891 (gst_bin_remove_func), (gst_bin_remove),
17892 (gst_bin_get_by_name_recurse_up):
17893 * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
17894 (gst_clock_id_compare_func), (gst_clock_id_wait),
17895 (gst_clock_id_wait_async), (gst_clock_init),
17896 (gst_clock_adjust_unlocked), (gst_clock_get_time):
17897 * gst/gstelement.h:
17898 * gst/gstinfo.c: (_gst_debug_init):
17899 * gst/gstobject.h:
17900 * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
17901 (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
17902 * gst/gstpad.h:
17903 Bump version number, we're now 0.9.0
17904 Add future debugging category.
17905 Fix NULL _unref() in _get_by_name_recurse_up
17906 Rearrange gstpad.h.
17907 Update some docs.
17909 2005-03-08 Wim Taymans <wim@fluendo.com>
17911 * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
17912 * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
17913 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
17914 * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
17915 * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
17916 * gst/elements/gstfilesink.c: (gst_filesink_class_init):
17917 * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
17918 * gst/elements/gstidentity.c: (gst_identity_class_init):
17919 * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
17920 * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
17921 * gst/elements/gstshaper.c: (gst_shaper_class_init):
17922 * gst/elements/gststatistics.c: (gst_statistics_class_init):
17923 * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
17924 (gst_tee_link):
17925 * gst/gstelement.c: (gst_element_class_init),
17926 (gst_element_base_class_init), (gst_element_init),
17927 (gst_element_get_random_pad), (gst_element_wait_state_change),
17928 (gst_element_change_state), (gst_element_dispose),
17929 (gst_element_finalize), (gst_element_set_loop_function):
17930 * gst/gstelement.h:
17931 * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
17932 * gst/gstthread.c: (gst_thread_class_init),
17933 (gst_thread_release_children_locks), (gst_thread_change_state):
17934 * gst/schedulers/gstbasicscheduler.c:
17935 (gst_basic_scheduler_loopfunc_wrapper),
17936 (gst_basic_scheduler_chain_wrapper),
17937 (gst_basic_scheduler_src_wrapper),
17938 (gst_basic_scheduler_remove_element):
17939 * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
17940 Remove threadsafe properties. Fix elements because GObject
17941 complains when installing a property before declaring a
17942 set/get_property handler.
17943 Rearrange gstelement.h file, use STATE macros for state locks.
17944 Free mutexes in the finalize method instead of dispose.
17946 2005-03-08 Wim Taymans <wim@fluendo.com>
17948 * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
17949 * gst/gstthread.c: (gst_thread_release_children_locks):
17950 Added parentage check.
17951 Fix build og GstThread again.
17953 2005-03-08 Wim Taymans <wim@fluendo.com>
17955 * docs/design/part-MT-refcounting.txt:
17956 * docs/design/part-conventions.txt:
17957 * docs/design/part-gstobject.txt:
17958 * docs/design/part-relations.txt:
17959 * docs/design/part-standards.txt:
17960 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
17961 (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
17962 (gst_bin_get_by_name), (gst_bin_get_by_interface),
17963 (gst_bin_iterate_all_by_interface):
17964 * gst/gstbuffer.h:
17965 * gst/gstclock.h:
17966 * gst/gstelement.c: (gst_element_class_init),
17967 (gst_element_change_state), (gst_element_set_loop_function):
17968 * gst/gstelement.h:
17969 * gst/gstiterator.c:
17970 * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
17971 (gst_object_unref), (gst_object_sink), (gst_object_dispose),
17972 (gst_object_dispatch_properties_changed), (gst_object_set_name),
17973 (gst_object_set_parent), (gst_object_unparent),
17974 (gst_object_check_uniqueness):
17975 * gst/gstobject.h:
17976 Docs updates, clean up some headers.
17978 2005-03-07 Wim Taymans <wim@fluendo.com>
17980 * check/.cvsignore:
17981 * check/Makefile.am:
17982 * check/gst-libs/.cvsignore:
17983 * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
17984 * check/gst/.cvsignore:
17985 * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
17986 (START_TEST), (gstbus_suite), (main):
17987 * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
17988 * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
17989 (gst_data_suite), (main):
17990 * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
17991 (add_fold_func), (gstiterator_suite), (main):
17992 * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
17993 (thread_name_object), (thread_name_object_default),
17994 (gst_object_name_compare), (gst_object_suite), (main):
17995 * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
17996 (gst_pad_suite), (main):
17997 * check/gstcheck.c: (gst_check_log_message_func),
17998 (gst_check_log_critical_func), (gst_check_init):
17999 * check/gstcheck.h:
18000 * check/pipelines/simple_launch_lines.c: (setup_pipeline),
18001 (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
18002 Added checks.
18004 2005-03-07 Wim Taymans <wim@fluendo.com>
18006 * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
18007 (gst_list_iterator_next), (gst_list_iterator_resync),
18008 (gst_list_iterator_free), (gst_iterator_new_list),
18009 (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
18010 (gst_iterator_free), (gst_iterator_push), (filter_next),
18011 (filter_resync), (filter_uninit), (filter_free),
18012 (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
18013 (gst_iterator_foreach), (find_custom_fold_func),
18014 (gst_iterator_find_custom):
18015 * gst/gstiterator.h:
18016 Added missing files.
18018 2005-03-07 Wim Taymans <wim@fluendo.com>
18020 * Makefile.am:
18021 * configure.ac:
18022 * docs/design/part-MT-refcounting.txt:
18023 * docs/design/part-conventions.txt:
18024 * docs/design/part-gstobject.txt:
18025 * docs/design/part-relations.txt:
18026 * examples/mixer/mixer.c: (main):
18027 * examples/thread/thread.c: (eos), (main):
18028 * gst/Makefile.am:
18029 * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
18030 * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
18031 (gst_spider_plug_from_srcpad):
18032 * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
18033 (gst_spider_identity_change_state),
18034 (gst_spider_identity_sink_loop_type_finding):
18035 * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
18036 * gst/elements/gstidentity.c: (gst_identity_init):
18037 * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
18038 (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
18039 * gst/elements/gsttypefindelement.c: (free_entry):
18040 * gst/gst.c:
18041 * gst/gst.h:
18042 * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
18043 (gst_bin_set_clock_func), (gst_bin_auto_clock),
18044 (gst_bin_set_index), (gst_bin_set_element_sched),
18045 (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
18046 (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
18047 (gst_bin_iterate_elements), (iterate_child_recurse),
18048 (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
18049 (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
18050 (compare_interface), (gst_bin_get_by_interface),
18051 (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
18052 * gst/gstbin.h:
18053 * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
18054 (gst_buffer_default_free), (gst_buffer_default_copy),
18055 (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
18056 (gst_buffer_create_sub):
18057 * gst/gstbuffer.h:
18058 * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
18059 (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
18060 (gst_caps_unref), (gst_static_caps_get),
18061 (gst_caps_remove_and_get_structure), (gst_caps_append),
18062 (gst_caps_append_structure), (gst_caps_remove_structure),
18063 (gst_caps_copy_nth), (gst_caps_set_simple),
18064 (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
18065 (gst_structure_is_equal_foreach), (gst_caps_is_subset),
18066 (gst_caps_structure_intersect_field), (gst_caps_intersect),
18067 (gst_caps_structure_subtract_field), (gst_caps_subtract),
18068 (gst_caps_normalize_foreach), (gst_caps_compare_structures),
18069 (gst_caps_structure_figure_out_union),
18070 (gst_caps_switch_structures), (gst_caps_do_simplify),
18071 (gst_caps_replace), (gst_caps_from_string),
18072 (gst_caps_copy_conditional):
18073 * gst/gstcaps.h:
18074 * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
18075 (_gst_clock_id_free), (gst_clock_id_unref),
18076 (gst_clock_id_compare_func), (gst_clock_id_wait),
18077 (gst_clock_id_wait_async), (gst_clock_class_init),
18078 (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
18079 (gst_clock_get_time), (gst_clock_set_time_adjust),
18080 (gst_clock_set_property), (gst_clock_get_property):
18081 * gst/gstclock.h:
18082 * gst/gstcompat.h:
18083 * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
18084 * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
18085 * gst/gstdata.h:
18086 * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
18087 (gst_element_requires_clock), (gst_element_provides_clock),
18088 (gst_element_set_clock), (gst_element_clock_wait),
18089 (gst_element_wait), (gst_element_set_time_delay),
18090 (gst_element_is_indexable), (gst_element_add_pad),
18091 (gst_element_add_ghost_pad), (gst_element_remove_pad),
18092 (pad_compare_name), (gst_element_get_static_pad),
18093 (gst_element_request_pad), (gst_element_get_request_pad),
18094 (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
18095 (gst_element_class_get_pad_template_list),
18096 (gst_element_class_get_pad_template), (gst_element_error_func),
18097 (gst_element_get_random_pad), (gst_element_get_event_masks),
18098 (gst_element_send_event), (gst_element_seek),
18099 (gst_element_get_query_types), (gst_element_query),
18100 (gst_element_get_formats), (gst_element_convert),
18101 (gst_element_is_locked_state), (gst_element_set_locked_state),
18102 (gst_element_sync_state_with_parent), (gst_element_change_state),
18103 (gst_element_finalize), (gst_element_yield),
18104 (gst_element_interrupt), (gst_element_set_scheduler),
18105 (gst_element_get_scheduler), (gst_element_set_loop_function):
18106 * gst/gstelement.h:
18107 * gst/gstevent.h:
18108 * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
18109 (gst_format_get_by_nick), (gst_format_get_details),
18110 (gst_format_iterate_definitions):
18111 * gst/gstformat.h:
18112 * gst/gstindex.c: (gst_index_gtype_resolver):
18113 * gst/gstinfo.c:
18114 * gst/gstinfo.h:
18115 * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
18116 (gst_mem_chunk_free):
18117 * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
18118 (gst_object_ref), (gst_object_unref), (gst_object_sink),
18119 (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
18120 (gst_object_dispatch_properties_changed),
18121 (gst_object_set_name_default), (gst_object_set_name),
18122 (gst_object_get_name), (gst_object_set_name_prefix),
18123 (gst_object_get_name_prefix), (gst_object_set_parent),
18124 (gst_object_get_parent), (gst_object_unparent),
18125 (gst_object_check_uniqueness), (gst_object_save_thyself),
18126 (gst_object_restore_thyself), (gst_object_real_restore_thyself),
18127 (gst_object_set_property), (gst_object_get_property),
18128 (gst_object_get_path_string):
18129 * gst/gstobject.h:
18130 * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
18131 (gst_real_pad_init), (gst_real_pad_get_property),
18132 (gst_pad_custom_new), (gst_pad_get_direction),
18133 (gst_pad_set_active), (gst_pad_is_active),
18134 (gst_pad_set_event_function), (gst_pad_is_linked),
18135 (gst_pad_link_free), (gst_pad_link_intersect),
18136 (gst_pad_link_fixate), (gst_pad_set_caps),
18137 (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
18138 (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
18139 (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
18140 (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
18141 (gst_pad_get_caps), (gst_pad_peer_get_caps),
18142 (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
18143 (gst_pad_realize), (gst_pad_get_allowed_caps),
18144 (gst_real_pad_dispose), (gst_real_pad_finalize),
18145 (gst_pad_collectv), (gst_pad_collect_valist),
18146 (gst_pad_template_dispose), (gst_pad_template_new),
18147 (gst_pad_get_internal_links):
18148 * gst/gstpad.h:
18149 * gst/gstpipeline.c: (gst_pipeline_dispose),
18150 (gst_pipeline_change_state):
18151 * gst/gstpipeline.h:
18152 * gst/gstplugin.c:
18153 * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
18154 (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
18155 * gst/gstpluginfeature.h:
18156 * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
18157 * gst/gstquery.c: (_gst_query_type_initialize),
18158 (gst_query_type_register), (gst_query_type_get_by_nick),
18159 (gst_query_type_get_details), (gst_query_type_iterate_definitions):
18160 * gst/gstquery.h:
18161 * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
18162 * gst/gstscheduler.c: (gst_scheduler_add_element),
18163 (gst_scheduler_factory_create):
18164 * gst/gststructure.c: (gst_structure_set_parent_refcount),
18165 (gst_structure_free), (gst_structure_set_name),
18166 (gst_structure_id_set_value), (gst_structure_set_value),
18167 (gst_structure_set_valist), (gst_structure_remove_field),
18168 (gst_structure_remove_fields),
18169 (gst_structure_remove_fields_valist),
18170 (gst_structure_remove_all_fields), (gst_structure_foreach),
18171 (gst_structure_map_in_place),
18172 (gst_caps_structure_fixate_field_nearest_int),
18173 (gst_caps_structure_fixate_field_nearest_double):
18174 * gst/gststructure.h:
18175 * gst/gstsystemclock.c: (gst_system_clock_class_init),
18176 (gst_system_clock_init), (gst_system_clock_dispose),
18177 (gst_system_clock_async_thread),
18178 (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
18179 (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
18180 * gst/gstsystemclock.h:
18181 * gst/gsttag.c: (gst_tag_list_add_value_internal),
18182 (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
18183 * gst/gsttaginterface.c:
18184 * gst/gstthread.c: (gst_thread_dispose),
18185 (gst_thread_release_children_locks), (gst_thread_change_state),
18186 (gst_thread_main_loop):
18187 * gst/gsttrashstack.h:
18188 * gst/gsttypefind.c: (gst_type_find_factory_dispose):
18189 * gst/gsttypes.h:
18190 * gst/gstutils.c: (gst_element_get_compatible_pad_template),
18191 (gst_element_request_pad), (gst_element_get_pad_from_template),
18192 (gst_element_request_compatible_pad),
18193 (gst_element_get_compatible_pad_filtered),
18194 (gst_element_get_compatible_pad), (gst_element_state_get_name),
18195 (gst_element_link_pads_filtered), (gst_element_link_filtered),
18196 (gst_element_link_many), (gst_element_link),
18197 (gst_element_link_pads), (gst_element_unlink_pads),
18198 (gst_element_unlink_many), (gst_element_unlink),
18199 (gst_pad_can_link_filtered), (gst_pad_can_link),
18200 (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
18201 (gst_object_default_error), (gst_bin_add_many),
18202 (gst_bin_remove_many), (gst_element_populate_std_props),
18203 (gst_element_class_install_std_props), (gst_buffer_merge),
18204 (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
18205 (link_fold_func), (gst_pad_proxy_setcaps):
18206 * gst/gstutils.h:
18207 * gst/gstvalue.c: (gst_value_deserialize_string):
18208 * gst/parse/grammar.y:
18209 * gst/schedulers/gstbasicscheduler.c:
18210 (gst_basic_scheduler_cothreaded_chain),
18211 (gst_basic_scheduler_chain_recursive_add),
18212 (gst_basic_scheduler_pad_link):
18213 * gst/schedulers/gstoptimalscheduler.c:
18214 (get_group_schedule_function),
18215 (gst_opt_scheduler_state_transition),
18216 (gst_opt_scheduler_add_element), (element_get_reachables_func):
18217 * libs/gst/bytestream/bytestream.c:
18218 * libs/gst/dataprotocol/dataprotocol.c:
18219 (gst_dp_header_from_buffer):
18220 * po/nb.po:
18221 * po/ru.po:
18222 * tests/threadstate/threadstate2.c: (eos):
18223 * tools/gst-compprep.c: (main):
18224 * tools/gst-inspect.c: (print_field), (print_element_flag_info),
18225 (print_pad_info), (print_children_info):
18226 * tools/gst-launch.c: (idle_func), (main):
18227 * tools/gst-md5sum.c: (idle_func), (main):
18228 * tools/gst-xmlinspect.c: (print_element_info):
18229 First THREADED backport attempt, focusing on adding locks and
18230 making sure the API is threadsafe. Needs more work. More docs
18231 follow this week.
18233 2005-02-24 Andy Wingo <wingo@pobox.com>
18235 * tests/bench-complexity.scm:
18236 * tests/complexity.gnuplot: New files, good for running complexity
18237 benchmarks.
18239 * tests/Makefile.am:
18240 * tests/complexity.c: New test, sets up N elements, at each level
18241 teeing into M streams per element. Eeeenteresting.
18243 * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
18244 benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
18245 running bench-mass_elements.scm.
18247 * tests/bench-mass_elements.scm: New script, runs mass_elements
18248 for various numbers of identities, outputting the results to a
18249 file. Requires guile 1.6. Just for testing.
18251 2005-02-23 Thomas Vander Stichele <thomas at apestaart dot org>
18253 * gst/schedulers/fairscheduler.c:
18254 compile with debug disabled
18256 2005-02-22 Thomas Vander Stichele <thomas at apestaart dot org>
18258 * configure.ac:
18259 hunting season on 0.9 is now OPEN