1 2006-06-11 Stefan Kost <ensonic@users.sf.net>
5 add missing files containing translatable strings, tell intltool about
8 2006-06-11 Stefan Kost <ensonic@users.sf.net>
10 * tests/check/libs/.cvsignore:
11 add test-binary to ignore list
13 2006-06-11 Stefan Kost <ensonic@users.sf.net>
15 * docs/libs/gstreamer-libs-docs.sgml:
16 reorder (put dp into a chapter) and indent
18 2006-06-10 Thomas Vander Stichele <thomas at apestaart dot org>
23 === release 0.10.8 ===
25 2006-06-10 Thomas Vander Stichele <thomas at apestaart dot org>
28 releasing 0.10.8, "Soepeke, ik zie ou nog altijd nie"
30 2006-06-10 Thomas Vander Stichele <thomas at apestaart dot org>
32 * gst/gst.c: (init_post):
33 move pid declaration to declaration block
35 2006-06-10 Thomas Vander Stichele <thomas at apestaart dot org>
37 * gst/gst.c: (init_post):
38 use _exit() instead of exit() in our forked child; this ensures
39 that none of the registered exit handlers from whatever is using
40 GStreamer get executed. This fixes gnome-mixer-applet failing
41 to load, because ORBit would shut down.
42 Spotted by: Edward Hervey <edward@fluendo.com>
43 Fix suggested by: Tim-Philipp Müller <tim at centricular dot net>
46 2006-06-09 Thomas Vander Stichele <thomas at apestaart dot org>
51 === release 0.10.7 ===
53 2006-06-09 Thomas Vander Stichele <thomas at apestaart dot org>
56 releasing 0.10.7, "Soepeke, ik zie ou"
58 2006-06-07 Thomas Vander Stichele <thomas at apestaart dot org>
81 * win32/common/config.h:
84 2006-06-07 Wim Taymans <wim@fluendo.com>
86 * gst/gstindex.c: (gst_index_gtype_resolver):
87 * tools/gst-xmlinspect.c: (print_plugin_info):
88 Fix leak spotted by coverity checker. Fixes #343827
89 Fix another other leak found by paolo borelli.
91 2006-06-06 Thomas Vander Stichele <thomas at apestaart dot org>
93 * libs/gst/dataprotocol/dataprotocol.c:
94 (gst_dp_header_from_buffer_any), (gst_dp_packet_from_caps_any),
95 (gst_dp_version_get_type), (gst_dp_init),
96 (gst_dp_header_from_buffer), (gst_dp_header_from_buffer_1_0),
97 (gst_dp_packet_from_caps), (gst_dp_packet_from_caps_1_0),
98 (gst_dp_packet_from_event), (gst_dp_packet_from_event_1_0),
99 (gst_dp_event_from_packet_0_2), (gst_dp_event_from_packet_1_0),
100 (gst_dp_event_from_packet), (gst_dp_packetizer_new),
101 (gst_dp_packetizer_free):
102 * libs/gst/dataprotocol/dataprotocol.h:
103 API: add a GstDPPacketizer object, and create/free functions
104 API: add GstDPVersion enum
105 Add 1.0 event function that uses the string serialization
106 Serialize more useful buffer flags
109 2006-06-06 Thomas Vander Stichele <thomas at apestaart dot org>
111 * tests/check/Makefile.am:
112 * tests/check/gst/gstabi.c:
113 * tests/check/gst/struct_ppc64.h:
114 * tests/check/libs/libsabi.c:
115 * tests/check/libs/struct_ppc64.h:
116 add ppc64 structure sizes
118 2006-06-06 Thomas Vander Stichele <thomas at apestaart dot org>
120 * tests/check/Makefile.am:
121 * tests/check/gst/gstabi.c:
122 * tests/check/gst/struct_x86_64.h:
123 * tests/check/libs/libsabi.c:
124 * tests/check/libs/struct_x86_64.h:
125 generate and add structure size lists for x86_64
127 2006-06-06 Thomas Vander Stichele <thomas at apestaart dot org>
129 * libs/gst/check/gstcheck.c: (gst_check_abi_list):
130 * libs/gst/check/gstcheck.h:
131 factor out the method from tests that checks size of structures,
132 and add code to generate the header containing these sizes
133 * tests/check/gst/gstabi.c: (GST_START_TEST):
134 * tests/check/gst/struct_i386.h:
135 * tests/check/libs/libsabi.c: (GST_START_TEST):
136 * tests/check/libs/struct_i386.h:
139 2006-06-06 Michael Smith <msmith@fluendo.com>
142 Don't use c++-style comments, fixes #343929
144 2006-06-05 Edward Hervey <edward@fluendo.com>
147 plugin_paths is not used if we build without registry support.
149 * gst/gstsegment.c: (gst_segment_copy):
150 _copy() was always returning NULL...
152 2006-06-02 Thomas Vander Stichele <thomas at apestaart dot org>
154 * libs/gst/dataprotocol/dataprotocol.c:
155 (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
156 (gst_dp_packet_from_event):
159 2006-06-02 Thomas Vander Stichele <thomas at apestaart dot org>
161 * libs/gst/check/gstcheck.c: (gst_check_teardown_src_pad):
162 make sure we unset caps
164 2006-06-02 Michael Smith <msmith@fluendo.com>
166 * libs/gst/check/gstcheck.c: (gst_check_init),
167 (gst_check_chain_func):
168 * libs/gst/check/gstcheck.h:
169 Add a cond/mutex to the check support lib, signal this whenever we
170 add to the buffers list. This will allow tests to not busy-wait on
173 2006-06-02 Thomas Vander Stichele <thomas at apestaart dot org>
175 * libs/gst/dataprotocol/dataprotocol.c:
176 (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
177 (gst_dp_packet_from_event):
178 factor out some common header init code
180 2006-06-02 Thomas Vander Stichele <thomas at apestaart dot org>
182 * docs/libs/gstreamer-libs-sections.txt:
183 * docs/libs/tmpl/gstdataprotocol.sgml:
184 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
185 * libs/gst/dataprotocol/dataprotocol.h:
186 API: make gst_dp_crc() public
188 2006-06-01 Stefan Kost <ensonic@users.sf.net>
190 * plugins/indexers/gstindexers.c: (plugin_init):
191 conditionally register fileindexer (fixes #343598)
193 2006-06-01 Stefan Kost <ensonic@users.sf.net>
195 * gst/gsttagsetter.h:
196 Can't cast ifaces to a class
198 * libs/gst/net/gstnetclientclock.h:
199 * libs/gst/net/gstnettimeprovider.h:
200 * plugins/elements/gstfakesink.h:
201 * plugins/elements/gstfakesrc.h:
202 * plugins/elements/gstfdsink.h:
203 * plugins/elements/gstfdsrc.h:
204 * plugins/elements/gstfilesink.h:
205 * plugins/elements/gstfilesrc.h:
206 * plugins/elements/gstidentity.h:
207 * plugins/elements/gstqueue.h:
208 * plugins/elements/gsttee.h:
209 * plugins/indexers/gstfileindex.c:
210 * plugins/indexers/gstmemindex.c:
211 * tests/old/examples/plugins/example.h:
212 Fix more gobject macros: obj<->klass, GstXXX<->GstXXXClass
214 2006-06-01 Thomas Vander Stichele <thomas at apestaart dot org>
216 * libs/gst/dataprotocol/dataprotocol.c:
217 (gst_dp_header_from_buffer):
218 make sure we zero the whole ABI-compatible area
220 2006-06-01 Wim Taymans <wim@fluendo.com>
222 Patch by: Alessandro Decina <alessandro at nnva dot org>
224 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_stop):
225 Make sure the EOS flag is cleared from pads after a flush
226 or stop. Fixes #343538.
228 * tests/check/libs/collectpads.c: (GST_START_TEST),
229 (gst_collect_pads_suite):
230 Added test for collectpads reusage after EOS.
232 2006-05-30 Sebastien Moutte <sebastien@moutte.net>
235 set #include <sys/wait.h> in a #ifdef #ifdef HAVE_FORK
236 * win32/common/libgstbase.def:
237 export gst_collect_pads_set_flushing
238 * win32/common/libgstreamer.def:
239 export gst_pad_set_acceptcaps_function, gst_structure_empty_new,
240 gst_value_fraction_multiply
241 * win32/vs6/gst_inspect.dsp:
242 add a link to intl.lib
244 2006-05-30 Wim Taymans <wim@fluendo.com>
246 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_remove_pad),
247 (gst_collect_pads_chain):
248 Handle the case where a pad is removed from the collection
249 that could cause the other pads to become collectable.
251 2006-05-30 Wim Taymans <wim@fluendo.com>
254 Clarify the use of _release_request_pad() and
255 _get_request_pad() a bit better.
257 * libs/gst/base/gstadapter.c: (gst_adapter_peek),
258 (gst_adapter_take_buffer):
259 Fix some doc and comment typos.
261 2006-05-30 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
263 * docs/gst/gstreamer-sections.txt:
264 * docs/libs/gstreamer-libs-sections.txt:
267 2006-05-30 Jan Schmidt <thaytan@mad.scientist.com>
269 * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
270 Add debug that can be enabled using a #define at the top of the file,
271 for dumping stats about how late/early we were when waking up from
272 waiting on the clock.
274 2006-05-30 Wim Taymans <wim@fluendo.com>
276 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_check_pads):
277 When rebuilding the pad list, don't leak the previous list.
279 2006-05-30 Wim Taymans <wim@fluendo.com>
281 Patch by: Lutz Mueller <lutz at topfrose dot de>
283 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
284 (gst_base_src_get_query_types), (gst_base_src_update_length):
285 Publish supported query types.
286 Update last_stop field in get_range mode so the position
287 query works. Fixes #342321.
289 2006-05-30 Tim-Philipp Müller <tim at centricular dot net>
291 * docs/gst/gstreamer-sections.txt:
292 * gst/gsttaglist.c: (_gst_tag_initialize):
294 API: add GST_TAG_PREVIEW_IMAGE (#343341).
296 2006-05-30 Wim Taymans <wim@fluendo.com>
298 Patch by: Alessandro Decina <alessandro at nnva dot org>
300 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_remove_pad):
301 Unlock mutex when removing an unknown pad.
304 * tests/check/Makefile.am:
305 * tests/check/libs/collectpads.c: (collected_cb), (push_buffer),
306 (push_event), (setup), (teardown), (GST_START_TEST),
307 (gst_collect_pads_suite), (main):
308 Added collecpads check, disabled for now as check crashes for
311 2006-05-29 Wim Taymans <wim@fluendo.com>
313 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_finalize):
314 Don't leak pads lists.
316 2006-05-29 Wim Taymans <wim@fluendo.com>
318 * docs/libs/gstreamer-libs-sections.txt:
319 * libs/gst/base/gstcollectpads.c:
320 (gst_collect_pads_set_flushing_unlocked),
321 (gst_collect_pads_set_flushing), (gst_collect_pads_start),
322 (gst_collect_pads_stop):
323 * libs/gst/base/gstcollectpads.h:
324 API: gst_collect_pads_set_flushing()
325 Added api to set the pads to flushing, useful for seeking
326 code in elements using collectpads.
327 Clear segment when receiving a flush.
329 2006-05-29 Tim-Philipp Müller <tim at centricular dot net>
331 * gst/gst.c: (add_path_func), (init_post):
332 Don't scan registry paths passed via --gst-plugin-path immediately
333 (will crash, because absolutely nothing is set up and no types are
334 registered etc.); do this later in init_post(). Fixes #343057.
336 2006-05-28 Thomas Vander Stichele <thomas at apestaart dot org>
338 * gst/gst.c: (init_post):
339 if we have fork, fork while reading/rebuilding the registry
340 so the parent doesn't take the hit of having all plugins loaded
341 in memory. Fixes #342777.
343 Check if we have fork()
344 * win32/common/config.h.in:
347 2006-05-26 Jan Schmidt <thaytan@mad.scientist.com>
349 * plugins/elements/gstelements.c:
350 * plugins/elements/gstfilesrc.c: (gst_file_src_class_init),
351 (gst_file_src_init), (gst_file_src_set_property),
352 (gst_file_src_get_property), (gst_file_src_start):
353 * plugins/elements/gstfilesrc.h:
354 API: GstFileSrc::use-mmap
356 Add a use-mmap property to enable easier testing of all code paths.
357 Bump rank to PRIMARY, so filesrc is the preferred file reader and used
358 in the absence of gnomevfssrc. (Closes #340501)
360 2006-05-26 Zaheer Abbas Merali <zaheerabbas at merali dot org>
362 * tools/gst-inspect.c:
363 Add missing include, removes warning of ngettext not being defined on
366 2006-05-26 Jan Schmidt <thaytan@mad.scientist.com>
368 * gst/gstvalue.c: (gst_value_deserialize_fraction):
369 Handle NULL input and output pointers silently as a failed conversion,
370 rather than g_warnings.
372 2006-05-25 Wim Taymans <wim@fluendo.com>
374 * libs/gst/net/gstnetclientclock.c: (gst_net_client_clock_start):
375 Initialize variable before using. Fixes #342820.
377 2006-05-24 Tim-Philipp Müller <tim at centricular dot net>
379 * libs/gst/base/gsttypefindhelper.c: (buf_helper_find_peek):
380 Fix off-by-one bug that would only allow peeks of N-1 bytes
381 from the start even if the buffer to typefind on contains
382 in fact N bytes of data (makes vorbis typefinding from a
383 vorbis identification header buffer work).
385 * tests/check/Makefile.am:
386 * tests/check/libs/.cvsignore:
387 * tests/check/libs/typefindhelper.c: (GST_START_TEST),
388 (gst_typefindhelper_suite), (main), (foobar_typefind),
390 Add very basic unit test for gst_type_find_helper_for_buffer()
391 that checks for the problem fixed above.
393 2006-05-24 Thomas Vander Stichele <thomas at apestaart dot org>
395 * tools/gst-inspect.c: (print_interfaces),
396 (print_element_properties_info), (print_element_list), (main):
397 add more translatable strings
399 2006-05-23 Tim-Philipp Müller <tim at centricular dot net>
401 Patch by: Julien Moutte <julien at moutte net>
403 * docs/gst/gstreamer-sections.txt:
404 Make new GST_FLOW_IS_SUCCESS macro visible in docs.
406 * plugins/elements/gstfakesink.c: (gst_fake_sink_class_init),
407 (gst_fake_sink_preroll):
408 * plugins/elements/gstfakesink.h:
409 API: Add new GstFakeSink::preroll-handoff signal (#337100).
411 2006-05-23 Wim Taymans <wim@fluendo.com>
413 * gst/gstpad.c: (gst_flow_get_name), (gst_flow_to_quark):
415 Added _CUSTOM error and success GstFlowReturn that can be
416 used be elements internally.
417 Added macro to check for SUCCESS flowreturns.
418 API: GST_FLOW_CUSTOM_SUCCESS
419 API: GST_FLOW_CUSTOM_ERROR
420 API: GST_FLOW_IS_SUCCESS
422 * tests/check/gst/gstpad.c: (GST_START_TEST), (gst_pad_suite):
423 Added check for GstFlowReturn sanity.
425 2006-05-23 Wim Taymans <wim@fluendo.com>
427 Patch by: Mark Nauwelaerts <manauw at skynet dot be>
429 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_remove_pad),
430 (gst_collect_pads_event):
431 clear/reset segment info in FLUSH_STOP.
434 2006-05-22 Stefan Kost <ensonic@users.sf.net>
436 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_stop),
437 (gst_collect_pads_check_collected):
438 Flush queued buffer on _stop(), fixes playing again (#342454)
440 2006-05-22 Thomas Vander Stichele <thomas at apestaart dot org>
442 * tests/check/gst/gststructure.c: (GST_START_TEST),
443 (gst_structure_suite):
444 add a test for a complete structure
446 2006-05-19 Tim-Philipp Müller <tim at centricular dot net>
448 * docs/faq/developing.xml:
450 * docs/faq/troubleshooting.xml:
451 * docs/faq/using.xml:
452 Some minor FAQ updates that won't change the fact that
453 our FAQ is badly structured, full of information hardly
454 anyone new to GStreamer needs to know and lacking lots
455 of information people constantly ask for.
457 2006-05-19 Jan Schmidt <thaytan@mad.scientist.com>
459 * gst/gstpad.c: (gst_pad_set_caps):
460 Short-circuit gst_pad_set_caps if setting the existing
461 caps pointer again, and avoid printing debug and
462 reffing/unreffing the caps.
464 * plugins/elements/gstqueue.c: (gst_queue_push_one):
465 There's actually no need to set the caps before pushing -
466 the acceptcaps method will handle it anyway.
468 2006-05-19 Tim-Philipp Müller <tim at centricular dot net>
470 * docs/gst/gstreamer-sections.txt:
471 * win32/common/libgstreamer.def:
472 * gst/gstutils.c: (gst_element_seek_simple):
474 API: add gst_element_seek_simple() (#342238).
476 2006-05-18 Edward Hervey <edward@fluendo.com>
478 * gst/gsttypefind.c: (gst_type_find_get_type):
480 Added GST_TYPE_TYPE_FIND and gst_type_find_get_type() so a GType gets
481 registered for GstTypeFind pointers. This allows wrapping the structure
482 in bindings (i.e. gst-python).
484 2006-05-18 Tim-Philipp Müller <tim at centricular dot net>
486 * gst/gsttagsetter.c:
487 Docs additions and fixes (see #339918).
489 2006-05-18 Jan Schmidt <thaytan@mad.scientist.com>
491 * plugins/elements/gstcapsfilter.c: (gst_capsfilter_prepare_buf):
492 The caps intersection algorithm can produce multiple copies of the
493 caps. Until that is fixed, we need to simplify the result to be
494 sure whether the allowed caps are fixed or not.
496 * plugins/elements/gstqueue.c: (gst_queue_init),
497 (gst_queue_bufferalloc), (gst_queue_acceptcaps),
498 (gst_queue_push_one):
499 Proxied buffer alloc should not set the caps on the source pad.
500 When pushing buffers, we always accept the caps change that triggers.
501 This prevents negotiation errors caused by caps changing mid-stream
502 and then being refused on our source pad (because upstream is now
503 refusing those caps).
505 2006-05-18 Tim-Philipp Müller <tim at centricular dot net>
507 * tests/examples/helloworld/helloworld.c: (main):
508 Must plug audioconvert and audioresample between decoder
511 2006-05-17 Jan Schmidt <thaytan@mad.scientist.com>
513 * gst/gstregistryxml.c: (read_string), (load_pad_template),
514 (load_feature), (load_plugin):
515 Allow empty strings for some of the plugin fields so we don't
516 drop valid plugin entries that were written out correctly
519 2006-05-17 Sebastien Moutte <sebastien@moutte.net>
521 * gst/gstregistryxml.c: (gst_registry_xml_write_cache):
522 Use g_remove and g_rename instead of remove and rename that don't
523 handle utf8 characters. rename was failing for users who had specific
524 characters in their name then the registry was built at each
526 * win32/vs6/gst_inspect.dsp:
527 * win32/vs6/gst_launch.dsp:
528 * win32/vs6/libgstbase.dsp:
529 * win32/vs6/libgstcoreelements.dsp:
530 * win32/vs6/libgstreamer.dsp:
531 Use a debug version of libxml2 (libxml2D.lib,libxml2D.dll) for DEBUG
532 build of libgstreamer and clean unused libraries in projects link
535 2006-05-17 Edward Hervey <edward@fluendo.com>
537 * plugins/elements/gstqueue.c: (gst_queue_push_one):
538 The queue is not responsible for pushing an EOS when receiving a fatal
539 flow error. It's up to the real element driving the pipeline to do that.
541 2006-05-16 Edward Hervey <edward@fluendo.com>
543 * plugins/elements/gstqueue.c: (gst_queue_push_one):
544 The queue was posting a non-needed GST_MESSAGE_ERROR when pushing a
545 buffer returned a fatal error. It should just send an EOS and stop
547 Upstream elements will then properly receive the GST_FLOW_UNEXPECTED
548 when pushing buffers on the queue and will be able to handle the event.
550 2006-05-16 Tim-Philipp Müller <tim at centricular dot net>
552 * docs/manual/basics-bins.xml:
553 * docs/manual/basics-init.xml:
554 Fix typos and minor errors in sample code (#341856).
556 2006-05-16 Wim Taymans <wim@fluendo.com>
558 * docs/design/part-qos.txt:
559 Fix indexes in formulas to make more sense.
561 2006-05-15 Wim Taymans <wim@fluendo.com>
563 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_position):
564 Don't report POSITION based on clock time if sync is
567 2006-05-15 Tim-Philipp Müller <tim at centricular dot net>
570 Add cast to make compiler happy - refcount variable was a gint
571 in GstObject but is a guint in GObject and g_atomic_int_get()
574 2006-05-15 Thomas Vander Stichele <thomas at apestaart dot org>
576 * gst/parse/Makefile.am:
577 chain commands using &&, which also makes parallel make work
579 2006-05-14 Tim-Philipp Müller <tim at centricular dot net>
581 * docs/gst/gstreamer-sections.txt:
587 === release 0.10.6 ===
589 2006-05-14 Jan Schmidt <thaytan@mad.scientist.com>
592 releasing 0.10.6, "Take the cannoli"
594 2006-05-13 Tim-Philipp Müller <tim at centricular dot net>
596 * tools/gst-launch.c: (print_tag):
597 Fix use of uninitialized variable in the hypothetical
598 case that some broken plugin creates a GST_TAG_IMAGE
599 tag containing a NULL buffer (#341667).
601 2006-05-12 Tim-Philipp Müller <tim at centricular dot net>
603 * tools/gst-launch.c: (print_tag):
604 Print something more intelligible for image tags when
605 using the -t switch (#341556).
607 2006-05-12 Thomas Vander Stichele <thomas at apestaart dot org>
612 define GST_MAJORMINOR so we have it available in win32/common/config.h
613 Possibly remove it from our Makefile.am files later
614 * win32/common/config.h:
615 * win32/common/config.h.in:
617 * win32/common/gstenumtypes.c: (register_gst_resource_error):
618 * win32/common/gstversion.h:
621 2006-05-12 Sebastien Moutte <sebastien@moutte.net>
624 Update win32 files listing.
625 * win32/common/gstversion.h:
626 Add GST_MAJORMINOR definition.
627 * win32/common/libgstreamer.def:
628 Add new exported functions.
630 2006-05-12 Michael Smith <msmith@fluendo.com>
632 * gst/gstplugin.c: (gst_plugin_load_file):
633 If an so file has no plugin entry point, unload the module.
635 2006-05-11 Wim Taymans <wim@fluendo.com>
637 * plugins/elements/gstqueue.c: (gst_queue_chain), (gst_queue_loop),
638 (gst_queue_set_property):
639 Don't forget to signal the _chain or _loop function
640 when the queue size or thresholds change since that might
641 cause them to make progres again.
643 2006-05-11 Stefan Kost <ensonic@users.sf.net>
645 * gst/gstclock.c: (gst_clock_class_init):
646 * gst/gstindex.c: (gst_index_class_init):
647 * gst/gstobject.c: (gst_object_class_init):
648 * gst/gstpad.c: (gst_pad_class_init):
649 * gst/gstpipeline.c: (gst_pipeline_class_init):
650 * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init):
651 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init):
652 * libs/gst/base/gstbasetransform.c:
653 (gst_base_transform_class_init):
654 * libs/gst/net/gstnetclientclock.c:
655 (gst_net_client_clock_class_init):
656 * libs/gst/net/gstnettimeprovider.c:
657 (gst_net_time_provider_class_init):
658 * plugins/elements/gstcapsfilter.c: (gst_capsfilter_class_init):
659 * plugins/elements/gstfakesink.c: (gst_fake_sink_class_init):
660 * plugins/elements/gstfakesrc.c: (gst_fake_src_class_init):
661 * plugins/elements/gstfdsink.c: (gst_fd_sink_class_init):
662 * plugins/elements/gstfdsrc.c: (gst_fd_src_class_init):
663 * plugins/elements/gstfilesink.c: (gst_file_sink_class_init):
664 * plugins/elements/gstfilesrc.c: (gst_file_src_class_init):
665 * plugins/elements/gstidentity.c: (gst_identity_class_init):
666 * plugins/elements/gsttee.c: (gst_tee_class_init):
667 * tests/old/examples/plugins/example.c: (gst_example_class_init):
668 * tests/old/testsuite/threads/signals.c: (gst_test_class_init):
669 G_OBJECT_CLASS macro usage batch cleanup, fixes #337747 for core
671 2006-05-11 Wim Taymans <wim@fluendo.com>
673 * gst/gstbuffer.c: (_gst_buffer_initialize):
674 Register subbufer along with the buffer type so that
675 it does not accidentally gets registered from N
676 different streaming threads in a non threadsafe way.
678 2006-05-10 Tim-Philipp Müller <tim at centricular dot net>
683 Make gtk-doc generate docs for our inlined gst_buffer_ref(),
684 gst_event_ref() and gst_message_ref() functions again
685 (ugly hack, please do fix if there's a better way besides
686 overrides.txt, which doesn't seem to work).
688 2006-05-10 Thomas Vander Stichele <thomas at apestaart dot org>
690 * libs/gst/check/gstcheck.h:
691 add an assert for setting state to avoid lots of repetitive code
694 2006-05-10 Thomas Vander Stichele <thomas at apestaart dot org>
696 * gst/gstvalue.c: (gst_value_serialize_flags):
697 fix a leak if no flags are set
698 * tests/check/gst/gstvalue.c: (GST_START_TEST):
701 2006-05-10 Tim-Philipp Müller <tim at centricular dot net>
703 * docs/manual/basics-pads.xml:
704 Expand a bit on caps and filtered links and update
705 examples that were still using the no longer existing
706 gst_pad_link_filtered() (#338206).
708 2006-05-10 Wim Taymans <wim@fluendo.com>
710 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_finalize),
711 (gst_collect_pads_add_pad), (gst_collect_pads_remove_pad),
712 (gst_collect_pads_set_flushing), (gst_collect_pads_start),
713 (gst_collect_pads_stop):
714 * libs/gst/base/gstcollectpads.h:
715 No need to call _stop in _finalize.
716 Iterate the main pad list in _finalize.
717 Added some more debug.
718 Free lists and data in the right order.
719 Also free data whem doing _remove_pad when stopped for
720 backward compatibility protect ::started with PAD_LOCK as
723 2006-05-10 Thomas Vander Stichele <thomas at apestaart dot org>
725 * gst/gststructure.c: (gst_structure_gtype_from_abbr),
726 (gst_structure_parse_value):
728 rename a method so that it actually says what it does better
730 2006-05-10 Thomas Vander Stichele <thomas at apestaart dot org>
732 * gst/gstevent.c: (_gst_event_initialize):
733 * gst/gstformat.c: (_gst_format_initialize):
734 make sure some essential types used by events are registered
735 as part of gst_init()
736 * gst/gstvalue.c: (gst_value_serialize_flags):
737 if no flags are set, serialize them to a value that represents NONE
738 so that deserializing them works
739 * tests/check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
740 add tests for serialization and deserialization of flags
742 2006-05-10 Wim Taymans <wim@fluendo.com>
744 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_collect),
745 (gst_collect_pads_collect_range), (gst_collect_pads_available),
746 (gst_collect_pads_check_pads), (gst_collect_pads_check_collected),
747 (gst_collect_pads_event), (gst_collect_pads_chain):
750 Catch and return errors from the collect function
751 Refuse data on eos pads.
753 2006-05-10 Edward Hervey <edward@fluendo.com>
755 * gst/gstinterface.h:
756 GST_IMPLEMENTS_INTERFACE and GST_IS_IMPLEMENTS_INTERFACE use the normal
757 GInterface type checking.
758 They were previously using non-defined macros.
760 2006-05-09 Wim Taymans <wim@fluendo.com>
762 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_init),
763 (gst_collect_pads_finalize), (gst_collect_pads_add_pad),
764 (gst_collect_pads_remove_pad), (gst_collect_pads_set_flushing),
765 (gst_collect_pads_start), (gst_collect_pads_stop),
766 (gst_collect_pads_peek), (gst_collect_pads_pop),
767 (gst_collect_pads_available), (gst_collect_pads_read),
768 (gst_collect_pads_flush), (gst_collect_pads_check_pads),
769 (gst_collect_pads_is_collected), (gst_collect_pads_event),
770 (gst_collect_pads_chain):
771 * libs/gst/base/gstcollectpads.h:
772 Clean up the mess that is collectpads, add comments and
774 Maintain a separate pad list so we can add pads while
775 collecting the other ones. For this we need a new separate
777 Fix memory leak in finalize.
778 Refactor some weird code to set/unset pad flushing flags, mark
780 Don't crash in _available, _read, _flush when we're EOS.
782 * tests/check/libs/.cvsignore:
783 Ignore adapter check binary.
785 2006-05-09 Tim-Philipp Müller <tim at centricular dot net>
787 * gst/gstindex.c: (gst_index_resolver_get_type):
788 * plugins/elements/gstfakesink.c:
789 (gst_fake_sink_state_error_get_type):
790 * plugins/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
791 (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type):
792 * plugins/elements/gstqueue.c: (queue_leaky_get_type):
793 Const-ify GEnumValue arrays.
795 2006-05-09 Tim-Philipp Müller <tim at centricular dot net>
797 * tests/check/gst/gstbuffer.c: (GST_START_TEST):
798 Add test case for flags + gst_buffer_make_metadata_writable().
800 2006-05-09 Tim-Philipp Müller <tim at centricular dot net>
802 * gst/gstbuffer.c: (gst_buffer_make_metadata_writable):
803 gst_buffer_make_metadata_writable() should maintain the
804 buffer flags (those that make sense at least) (see #340859).
806 2006-05-09 Tim-Philipp Müller <tim at centricular dot net>
808 * tools/gst-inspect.c:
809 * tools/gst-launch.c:
810 * tools/gst-typefind.c:
811 * tools/gst-xmlinspect.c:
813 Fix up includes: need to include stdlib.h in tools.h for exit().
815 2006-05-09 Tim-Philipp Müller <tim at centricular dot net>
817 * gst/gsttaglist.c: (_gst_tag_initialize):
819 API: add GST_TAG_IMAGE tag (#340721).
821 2006-05-08 Wim Taymans <wim@fluendo.com>
824 Added some docs for the segment query.
826 2006-05-08 Wim Taymans <wim@fluendo.com>
828 * libs/gst/base/gstbasesrc.c: (gst_base_src_perform_seek),
829 (gst_base_src_loop), (gst_base_src_change_state):
830 Always push non-flushing serialized events in the streaming
833 2006-05-08 Thomas Vander Stichele <thomas at apestaart dot org>
835 * gst/gsterror.c: (_gst_stream_errors_init):
836 Add a missing error string.
838 2006-05-08 Jan Schmidt <thaytan@mad.scientist.com>
840 * libs/gst/base/gstbasesink.c: (gst_base_sink_configure_segment):
841 Add applied_rate to the debug
843 * libs/gst/base/gstbasesrc.c: (gst_base_src_perform_seek):
844 Copy applied_rate into the outgoing NEWSEGMENT event
846 2006-05-08 Wim Taymans <wim@fluendo.com>
848 Patch by: Philippe Rouquier <philippero at libertysurf dot fr>
850 * libs/gst/base/gstbasesink.c: (gst_base_sink_set_flushing),
851 (gst_base_sink_change_state):
852 call ::unlock before taking the PREROLL_LOCK so we can safely
853 handle elements that lock in ::render.
856 2006-05-08 Edward Hervey <edward@fluendo.com>
858 * autogen.sh: (CONFIGURE_DEF_OPT):
859 Darwin's libtoolize is in fact called glibtoolize.
860 Adding glibtoolize to the list of accepted names for libtoolize.
862 2006-05-08 Wim Taymans <wim@fluendo.com>
864 * libs/gst/base/gstbasesrc.c: (gst_base_src_loop):
865 Unify error handling, don't post an error message
866 when a push() returns EOS but perform our normal EOS
867 handling code. Fixes #340772.
869 2006-05-08 Wim Taymans <wim@fluendo.com>
871 * docs/design/part-overview.txt:
872 Make upsteam/downstream concepts more clear.
873 Give an example of serialized/non-serialized events.
875 * docs/design/part-events.txt:
876 * docs/design/part-streams.txt:
877 Mention applied_rate.
879 * docs/design/part-trickmodes.txt:
880 Mention applied rate, flesh out some more use cases.
882 * gst/gstevent.c: (gst_event_new_new_segment),
883 (gst_event_parse_new_segment), (gst_event_new_new_segment_full),
884 (gst_event_parse_new_segment_full), (gst_event_new_tag),
885 (gst_event_parse_tag), (gst_event_new_buffer_size),
886 (gst_event_parse_buffer_size), (gst_event_new_qos),
887 (gst_event_parse_qos), (gst_event_parse_seek),
888 (gst_event_new_navigation):
890 Add applied_rate field to NEWSEGMENT event.
891 API: gst_event_new_new_segment_full()
892 API: gst_event_parse_new_segment_full()
894 * gst/gstsegment.c: (gst_segment_init), (gst_segment_set_seek),
895 (gst_segment_set_newsegment), (gst_segment_set_newsegment_full),
896 (gst_segment_to_stream_time), (gst_segment_to_running_time):
898 Add applied_rate to GstSegment structure.
899 Make calculation of stream_time and running_time more correct
900 wrt rate/applied_rate.
902 API: GstSegment::applied_rate field
903 API: gst_segment_set_newsegment_full();
905 * libs/gst/base/gstbasesink.c: (gst_base_sink_configure_segment),
906 (gst_base_sink_get_sync_times), (gst_base_sink_get_position):
907 * libs/gst/base/gstbasetransform.c:
908 (gst_base_transform_sink_eventfunc),
909 (gst_base_transform_handle_buffer):
910 Parse and use applied_rate in the GstSegment field.
912 * tests/check/gst/gstevent.c: (GST_START_TEST):
913 Add check for applied_rate field.
915 * tests/check/gst/gstsegment.c: (GST_START_TEST),
917 Add more checks for various GstSegment operations.
919 2006-05-08 Wim Taymans <wim@fluendo.com>
921 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times),
922 (gst_base_sink_do_sync), (gst_base_sink_chain_unlocked),
923 (gst_base_sink_get_position), (gst_base_sink_change_state):
924 Store the sync time of the buffer end position separatly in a
925 new variable eos_rtime so we can properly sync the EOS event.
927 Fix the docs for gst_base_sink_set_qos_enabled().
928 Don't set segment start to invalid value when we receive a
930 get closer to handling position reporting for negative rates
933 2006-05-07 Stefan Kost <ensonic@users.sf.net>
936 Docs about how to print caps for debug purposes.
938 * gst/gstpadtemplate.c: (gst_static_pad_template_get):
939 use gst_caps_make_writable instead of gst_caps_copy, Fixes #340608
941 2006-05-07 Stefan Kost <ensonic@users.sf.net>
944 use full enum names and preprend a '%' in docs strings to make recent
945 gtk-doc turn that into a link
947 2006-05-05 Tim-Philipp Müller <tim at centricular dot net>
949 * docs/manual/basics-bins.xml:
950 * docs/manual/basics-bus.xml:
951 * docs/manual/basics-pads.xml:
952 Some typo fixes, some additions, some clarifications.
954 2006-05-05 Tim-Philipp Müller <tim at centricular dot net>
956 * tools/gst-inspect.c: (main):
957 * tools/gst-launch.c: (main):
958 * tools/gst-run.c: (main):
959 * tools/gst-typefind.c: (main):
960 * tools/gst-xmlinspect.c: (main):
961 Use the string passed to g_option_context_new() for
962 what it's intended for - the program name is already
965 2006-05-05 Tim-Philipp Müller <tim at centricular dot net>
968 * tools/gst-inspect.c: (main):
969 * tools/gst-launch.c: (main):
970 * tools/gst-xmlinspect.c: (main):
972 Add back --version command line option (#340460).
974 * tools/gst-typefind.c: (have_type_handler), (typefind_file), (main):
975 Add --version option and use GOption for argument parsing; refactor a
976 bit; accept directories as arguments and recurse into them; lastly,
977 print a decent error message when things go wrong.
979 2006-05-05 Maciej Katafiasz <mathrick@freedesktop.org>
981 * docs/manual/basics-bins.xml:
982 Don't mention GstThread (#340611)
983 * docs/manual/basics-elements.xml:
984 Update link to GObject tutorial (#340607)
986 2006-05-05 Wim Taymans <wim@fluendo.com>
989 * gst/gstminiobject.c:
990 Add note about refcounting and miniobject/buffer writeability
991 to docs. Fixes #340604
993 * gst/gstelementfactory.h:
994 Added some explanation about @klass.
996 2006-05-05 Maciej Katafiasz <mathrick@freedesktop.org>
998 * docs/manual/intro-motivation.xml:
999 * docs/manual/manual.xml:
1000 Avoid CORBA & Bonobo references (#340598)
1002 2006-05-05 Maciej Katafiasz <mathrick@freedesktop.org>
1004 * docs/manual/basics-bus.xml:
1005 * docs/manual/basics-pads.xml:
1006 Fix up some inaccuracies and omissions (#340609)
1008 2006-05-05 Maciej Katafiasz <mathrick@freedesktop.org>
1010 * gst/gstghostpad.c:
1011 Small typo in docs (#340625)
1013 2006-05-05 Tim-Philipp Müller <tim at centricular dot net>
1015 * gst/parse/Makefile.am:
1016 Make 'make -j' proof (see #340698).
1018 2006-05-05 Tim-Philipp Müller <tim at centricular dot net>
1021 Require GLib-2.8 here as well.
1023 2006-05-05 Wim Taymans <wim@fluendo.com>
1025 * gst/glib-compat.c:
1026 * gst/gst.c: (init_pre):
1027 * gst/gstobject.c: (gst_object_init), (gst_object_ref),
1028 (gst_object_unref), (gst_object_replace), (gst_object_dispose),
1029 (gst_object_dispatch_properties_changed):
1031 * gst/gstregistryxml.c: (gst_registry_xml_read_cache):
1032 * gst/gststructure.c: (gst_structure_set_valist):
1033 * gst/gstvalue.c: (gst_date_get_type), (_gst_value_initialize):
1034 Remove pre glib2.8 compatibility, fixes #340508
1036 2006-05-04 Tim-Philipp Müller <tim at centricular dot net>
1039 Mention type of tags in doc blurbs.
1041 2006-05-04 Jan Schmidt <thaytan@mad.scientist.com>
1043 * gst/gstpad.c: (gst_pad_init), (gst_pad_configure_sink),
1044 (gst_pad_configure_src), (gst_pad_push):
1045 Restore acceptcaps checking behaviour now that good plugins have
1048 2006-05-04 Tim-Philipp Müller <tim at centricular dot net>
1050 Patch by: James Andrewartha <trs80 at tartarus uwa edu au>
1061 * gst/parse/Makefile.am:
1062 * libs/gst/base/gstadapter.c:
1063 * libs/gst/base/gstbasesrc.c:
1064 * libs/gst/base/gstpushsrc.c:
1065 * libs/gst/base/gsttypefindhelper.c:
1066 * plugins/elements/gstfakesrc.c:
1067 * plugins/elements/gstidentity.c:
1068 Make sure gstprivate.h and/or config.h are
1069 always included first, otherwise some of our
1070 defines (like _FILE_OFFSET_BITS) might be
1071 redefined in the system headers. Fixes build
1072 on opensolaris (#340016).
1074 2006-05-04 Wim Taymans <wim@fluendo.com>
1076 * docs/libs/gstreamer-libs-sections.txt:
1077 API: addition: gst_adapter_take_buffer()
1079 * libs/gst/base/gstadapter.c: (gst_adapter_push),
1080 (gst_adapter_peek), (gst_adapter_take), (gst_adapter_take_buffer),
1081 (gst_adapter_available_fast):
1082 * libs/gst/base/gstadapter.h:
1083 Prepare for optimizing the hell out of this hugely inefficient
1085 Added gst_adapter_take_buffer() so we can at least start thinking
1086 about subbuffering and merging.
1087 Added some comments.
1089 * tests/check/Makefile.am:
1090 * tests/check/libs/adapter.c: (GST_START_TEST),
1091 (gst_adapter_suite), (main):
1092 Added GstAdapter check.
1094 2006-05-04 Wim Taymans <wim@fluendo.com>
1096 * docs/design/part-overview.txt:
1097 Fix some typos, add blurb about buffer flags.
1099 2006-05-03 Thomas Vander Stichele <thomas at apestaart dot org>
1101 * docs/libs/gstreamer-libs-sections.txt:
1102 make sure GstBaseTransformClass shows up in the docs
1103 * libs/gst/base/gstbasetransform.c:
1104 * libs/gst/base/gstbasetransform.h:
1105 move docs so gtk-doc picks it up now
1107 2006-05-02 Stefan Kost <ensonic@users.sf.net>
1109 * docs/libs/gstreamer-libs-sections.txt:
1110 add missing symbols to docs
1112 2006-05-02 Stefan Kost <ensonic@users.sf.net>
1114 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_event):
1115 back out the newsegment handling change, see #340060 for ongoing
1118 2006-04-30 Tim-Philipp Müller <tim at centricular dot net>
1120 * tools/gst-run.c: (get_candidates), (main):
1121 Fix wrong g_file_test() usage (see glib docs for why it doesn't
1122 work); fix typo in error message. Fixes #340079.
1124 2006-04-29 Thomas Vander Stichele <thomas at apestaart dot org>
1126 * common/Makefile.am:
1128 * docs/faq/Makefile.am:
1129 * docs/gst/Makefile.am:
1130 * docs/libs/Makefile.am:
1131 * docs/manual/Makefile.am:
1132 * docs/plugins/Makefile.am:
1133 * docs/pwg/Makefile.am:
1134 * docs/slides/Makefile.am:
1136 * common/upload.mak:
1137 move upload.mak to common
1139 2006-04-29 Thomas Vander Stichele <thomas at apestaart dot org>
1141 * tests/check/gst/gstghostpad.c: (GST_START_TEST):
1142 add more asserts on refcounts
1143 do more cleanup at end of tests
1144 fix test leaks showing in FC5
1146 2006-04-29 Stefan Kost <ensonic@users.sf.net>
1148 * plugins/elements/gsttypefindelement.c:
1149 (gst_type_find_element_handle_event):
1150 reverted wrong change and reflowed code to avoid others falling into
1153 2006-04-28 Stefan Kost <ensonic@users.sf.net>
1155 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_event):
1156 fix changelog entry about last collectpads change,
1157 add notes about proper fix
1159 2006-04-28 Stefan Kost <ensonic@users.sf.net>
1162 * gst/gstregistry.c: (gst_registry_scan_path_level),
1163 (gst_registry_scan_path):
1164 * gst/gstregistry.h:
1165 only write out registry if it has changed, fixes #338339
1167 2006-04-28 Stefan Kost <ensonic@users.sf.net>
1170 * gst/gstpipeline.c:
1171 * plugins/elements/gstcapsfilter.c:
1172 * plugins/elements/gstfakesink.c:
1173 * plugins/elements/gstfakesrc.c:
1174 * plugins/elements/gstfdsink.c:
1175 * plugins/elements/gstfdsrc.c:
1176 * plugins/elements/gstfilesink.c:
1177 * plugins/elements/gstfilesrc.c:
1178 * plugins/elements/gstidentity.c:
1179 * plugins/elements/gstqueue.c:
1180 * plugins/elements/gsttee.c:
1181 * plugins/elements/gsttypefindelement.c:
1182 (gst_type_find_element_handle_event):
1183 make GstElementDetails const
1185 2006-04-28 Stefan Kost <ensonic@users.sf.net>
1187 * libs/gst/base/gstbasesink.c: (gst_base_sink_event):
1188 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_base_init),
1189 (gst_collect_pads_is_collected), (gst_collect_pads_event):
1190 more detailed debug and formatting cleanup,
1191 forward newsegments to src-pad (so that e.g. adder not eats them)
1193 2006-04-28 Stefan Kost <ensonic@users.sf.net>
1195 * gst/gstutils.c: (gst_element_link_pads):
1198 2006-04-28 Stefan Kost <ensonic@users.sf.net>
1200 * libs/gst/controller/gstcontroller.c:
1201 (gst_controller_sync_values):
1203 * tests/check/libs/controller.c: (GST_START_TEST),
1204 (gst_controller_suite):
1205 a new test for live value handling
1207 2006-04-28 Wim Taymans <wim@fluendo.com>
1209 * gst/gstutils.c: (push_and_ref):
1210 Added some more docs.
1211 Fix refcount issue whith gst_element_found_tags() helper
1212 function. Fixes #338335
1214 * tests/check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
1215 Added testsuite for gst_element_found_tags().
1217 2006-04-28 Michael Smith <msmith@fluendo.com>
1219 * gst/gstvalue.c: (gst_value_serialize_flags):
1220 Avoid NULL dereference when trying to serialize flags containing
1223 2006-04-28 Michael Smith <msmith@fluendo.com>
1225 * plugins/elements/gsttypefindelement.c:
1226 (gst_type_find_element_handle_event):
1227 If we get EOS before any data is accumulated, don't use
1228 uninitialised local variables.
1230 2006-04-28 Michael Smith <msmith@fluendo.com>
1232 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
1233 (gst_dp_event_from_packet):
1234 Fixes in reading/writing events over GDP (not currently used?) -
1235 dereferencing NULL events for unknown/invalid event types, memory
1236 leak, and change g_warning to GST_WARNING.
1238 2006-04-28 Wim Taymans <wim@fluendo.com>
1240 * libs/gst/base/gstbasesink.c: (gst_base_sink_is_too_late),
1241 (gst_base_sink_do_render_stats), (gst_base_sink_render_object),
1242 (gst_base_sink_get_position), (gst_base_sink_change_state):
1243 When frame dropping is enabled, we should not ignore frames
1245 Update some documentation.
1247 2006-04-28 Wim Taymans <wim@fluendo.com>
1249 * libs/gst/base/gstbasesrc.c: (gst_base_src_perform_seek),
1250 (gst_base_src_send_event), (gst_base_src_change_state):
1251 Documentation updates.
1253 2006-04-28 Wim Taymans <wim@fluendo.com>
1255 * plugins/elements/gstfdsink.c: (gst_fd_sink_render),
1256 (gst_fd_sink_check_fd), (gst_fd_sink_update_fd):
1257 handle EAGAIN, EINTR and short writes correctly. Also clean
1258 up some error cases, avoid a deadlock on bad file descriptors and
1259 use GST_DEBUG_OBJECT.
1262 2006-04-28 Wim Taymans <wim@fluendo.com>
1264 * gst/gstvalue.c: (gst_value_serialize_buffer),
1265 (gst_value_deserialize_buffer):
1266 Don't try to serialize a GValue with a NULL buffer.
1269 * tests/check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
1270 Added check for serialisation of NULL buffers.
1272 2006-04-28 Wim Taymans <wim@fluendo.com>
1274 * gst/gstminiobject.c: (gst_value_take_mini_object):
1275 Taking a NULL miniobject is valid, fix the case where
1276 we try to unref the NULL miniobject.
1278 2006-04-28 Wim Taymans <wim@fluendo.com>
1280 Patch by: Stefan Kost <ensonic at sonicpulse dot de>
1282 * gst/gstbin.c: (gst_bin_handle_message_func):
1284 Don't leak bin refcount when a state recalc is
1285 in progress and we delay another one #339808.
1287 2006-04-28 Wim Taymans <wim@fluendo.com>
1289 * docs/design/part-TODO.txt:
1290 Mention QoS as an ongoing work item.
1292 * docs/design/part-buffering.txt:
1293 New doc about buffering that needs to be fleshed out
1296 * docs/design/part-qos.txt:
1297 More QoS policy for decoders/demuxers/transforms
1299 * docs/design/part-trickmodes.txt:
1302 2006-04-28 Thomas Vander Stichele <thomas at apestaart dot org>
1307 === release 0.10.5 ===
1309 2006-04-28 Thomas Vander Stichele <thomas at apestaart dot org>
1312 releasing 0.10.5, "Fogo"
1314 2006-04-22 Thomas Vander Stichele <thomas at apestaart dot org>
1316 patch by: Wim Taymans
1318 * gst/gstpad.c: (gst_pad_init), (gst_pad_configure_sink),
1319 (gst_pad_configure_src), (gst_pad_push):
1320 * gst/gstpipeline.c: (gst_pipeline_init):
1321 Fix internal data flow errors. Fixes #338711.
1323 2006-04-12 Wim Taymans <wim@fluendo.com>
1325 * tests/check/gst/gstelement.c: (GST_START_TEST):
1326 Don't leak the factory.
1328 2006-04-12 Thomas Vander Stichele <thomas at apestaart dot org>
1331 * win32/common/config.h:
1334 2006-04-12 Tim-Philipp Müller <tim at centricular dot net>
1336 * libs/gst/controller/gstcontroller.c: (gst_controller_unset),
1337 (gst_controller_unset_all):
1338 Free allocated GstTimedValues when freeing list nodes.
1339 Should fix leaks 'make check-valgrind' complains about.
1341 * win32/common/libgstcontroller.def:
1342 Add gst_controller_unset_all.
1344 2006-04-11 Stefan Kost <ensonic@users.sf.net>
1346 * docs/libs/gstreamer-libs-sections.txt:
1347 * libs/gst/controller/gstcontroller.c: (gst_controller_unset),
1348 (gst_controller_unset_all):
1349 * libs/gst/controller/gstcontroller.h:
1350 API: Added new method gst_controller_unset_all()
1351 fixed gst_controller_unset()
1352 * tests/check/libs/controller.c: (GST_START_TEST),
1353 (gst_controller_suite):
1354 Added two testcases for new and fixed method
1356 2006-04-11 Tim-Philipp Müller <tim at centricular dot net>
1358 * libs/gst/net/gstnettimepacket.c: (gst_net_time_packet_send):
1359 MSG_DONTWAIT is not defined on Cygwin, so work
1360 around that (fixes #317048).
1362 2006-04-11 Wim Taymans <wim@fluendo.com>
1364 * gst/gstelementfactory.c: (gst_element_register),
1365 (gst_element_factory_create), (gst_element_factory_make):
1368 Updated docs (Fixes #131079)
1370 * gst/gstpluginfeature.c: (gst_plugin_feature_load):
1373 * tests/check/gst/gstelement.c: (GST_START_TEST),
1374 (gst_element_suite):
1375 Added testcase for elementfactory class field.
1377 2006-04-10 Wim Taymans <wim@fluendo.com>
1380 Added some more docs.
1382 * libs/gst/base/gstbasesink.c: (gst_base_sink_perform_qos),
1383 (gst_base_sink_reset_qos):
1384 Calculate more accurate rate values.
1386 2006-04-09 Sebastien Moutte <sebastien@moutte.net>
1388 * gst/gst_private.h:
1389 add a new #ifdef to use __declspec(dllimport) only for
1390 other modules and not for gstreamer core
1391 * gst/gstbasesink.c: (gst_base_sink_perform_qos):
1392 use gst_guint64_to_gdouble for conversion
1393 * win32/common/libgstreamer.def:
1394 add new exported functions
1395 * win32/vs6/gst_inspect.dsp:
1396 * win32/vs6/gst_launch.dsp:
1397 * win32/vs6/libgstbase.dsp:
1398 * win32/vs6/libgstcontroller.dsp:
1399 * win32/vs6/libgstcoreelements.dsp:
1400 * win32/vs6/libgstdataprotocol.dsp:
1401 * win32/vs6/libgstnet.dsp:
1402 update project files
1404 2006-04-08 Stefan Kost <ensonic@users.sf.net>
1406 * gst/gstbuffer.c: (gst_subbuffer_class_init):
1407 * gst/gstclock.c: (gst_clock_class_init):
1408 * gst/gstelement.c: (gst_element_class_init):
1409 * gst/gstindex.c: (gst_index_class_init):
1410 * gst/gstindexfactory.c: (gst_index_factory_class_init):
1411 * gst/gstobject.c: (gst_object_class_init),
1412 (gst_signal_object_class_init):
1413 * gst/gstpad.c: (gst_pad_class_init):
1414 * gst/gstpadtemplate.c: (gst_pad_template_class_init):
1415 * gst/gstpluginfeature.c: (gst_plugin_feature_class_init):
1416 * gst/gstregistry.c: (gst_registry_class_init):
1417 * gst/gstsystemclock.c: (gst_system_clock_class_init):
1418 * gst/gsttask.c: (gst_task_class_init):
1419 * gst/gstxml.c: (gst_xml_class_init):
1420 * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init):
1421 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
1422 (gst_base_src_loop):
1423 * libs/gst/controller/gstcontroller.c:/
1424 (_gst_controller_class_init):
1425 * plugins/elements/gstfdsrc.c: (gst_fd_src_class_init):
1426 * plugins/indexers/gstfileindex.c: (gst_file_index_class_init):
1427 * plugins/indexers/gstmemindex.c: (gst_mem_index_class_init):
1428 * tests/old/examples/plugins/example.c: (gst_example_class_init):
1429 * tests/old/testsuite/threads/signals.c: (gst_test_class_init):
1430 Fix #337365 (g_type_class_ref <-> g_type_class_peek_parent)
1432 2006-04-08 Tim-Philipp Müller <tim at centricular dot net>
1434 * gst/gstpad.c: (gst_pad_link):
1435 Must set peer pads before calling the link function, otherwise
1436 a task started from a link function might get a flow-not-linked
1437 result when trying to push because the other thread where the
1438 linking happens hasn't had a chance to set the peers yet. This
1439 might happen for example when a queue gets linked to a downstream
1440 element, as queue starts a streaming task when its source pad
1441 gets linked. Happens in real life when playing back flac/musepack
1442 files in playbin (#332390).
1444 2006-04-08 Stefan Kost <ensonic@users.sf.net>
1448 * libs/gst/base/gstadapter.h:
1449 * libs/gst/base/gstbasesink.h:
1450 * libs/gst/base/gstbasesrc.h:
1451 * libs/gst/base/gstbasetransform.h:
1452 * libs/gst/base/gstcollectpads.h:
1453 * libs/gst/base/gstpushsrc.h:
1454 Fix broken GObject macros
1456 2006-04-07 Wim Taymans <wim@fluendo.com>
1458 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times):
1459 Initialize start and stop times, thanks valgrind.
1461 2006-04-07 Wim Taymans <wim@fluendo.com>
1463 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times):
1464 Be a bit nicer to badly behaving upstream elements that expect
1465 us to deal with non TIME segments and timestamps (such as fakesrc
1468 2006-04-07 Wim Taymans <wim@fluendo.com>
1471 Small documentation clarification about the signal watch.
1473 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times),
1474 (gst_base_sink_wait_clock), (gst_base_sink_do_sync),
1475 (gst_base_sink_perform_qos), (gst_base_sink_reset_qos),
1476 (gst_base_sink_do_render_stats), (gst_base_sink_render_object),
1477 (gst_base_sink_get_position_last),
1478 (gst_base_sink_get_position_paused), (gst_base_sink_change_state):
1479 Convert and store timestamps in stream time and running time, the
1480 raw timestamps are not usefull, also document this better.
1481 Use different window sizes for good and bad QoS observations so
1482 we react to badness a little quicker.
1483 Keep track of the amount of rendered and dropped buffers.
1484 Send QoS timestamps in running time.
1486 * libs/gst/base/gstbasetransform.c:
1487 (gst_base_transform_sink_eventfunc),
1488 (gst_base_transform_handle_buffer):
1489 Compare QoS timestamps against running time.
1491 2006-04-06 Tim-Philipp Müller <tim at centricular dot net>
1496 2006-04-06 Michael Smith <msmith@fluendo.com>
1498 * gst/gstpad.c: (gst_pad_set_property):
1499 Use g_value_get_object() instead of g_value_dup_gst_object(),
1500 to avoid double-reffing the pad template (which we then sink,
1501 so this worked previously if (and only if) the pad template
1504 * gst/gstpadtemplate.c: (gst_pad_template_init),
1505 (gst_pad_template_pad_created):
1506 Never return floating references to pad templates, create
1507 them as initially-sunken.
1509 Document an extra function (and make this stop sinking our
1510 pad template, since that is now guaranteed to do nothing,
1511 since we created it sunken).
1513 * gst/gstghostpad.c:
1516 2006-04-06 Tim-Philipp Müller <tim at centricular dot net>
1518 * gst/gstinfo.c: (__gst_in_valgrind):
1521 * plugins/elements/gsttypefindelement.c:
1522 (gst_type_find_element_chain):
1523 Don't leak buffer caps.
1525 2006-04-06 Michael Smith <msmith@fluendo.com>
1527 * gst/parse/grammar.y:
1528 Fix a leak in parse-launch for any source-or-sink named element
1531 * tests/check/pipelines/parse-launch.c: (expected_fail_pipe):
1532 Unref the pipeline if it exists after we've failed parsing.
1534 2006-04-05 Michael Smith <msmith@fluendo.com>
1536 * gst/gstpipeline.c: (gst_pipeline_init):
1537 When we create a pipeline bus, initially create it in flushing mode.
1538 Fixes leaks in at least one test, and makes a new pipeline work the
1539 same as one that has gone to READY and then back to NULL.
1544 2006-04-05 Michael Smith <msmith@fluendo.com>
1546 * tests/check/gst/gstghostpad.c: (GST_START_TEST):
1547 Unref a pad we reffed.
1548 * tests/check/gst/gstutils.c: (GST_START_TEST):
1551 2006-04-05 Michael Smith <msmith@fluendo.com>
1553 * gst/gstquery.c: (gst_query_set_formats),
1554 (gst_query_set_formatsv):
1555 Fix leaking GValues in queries, as shown by valgrind/testsuite.
1557 2006-04-05 Michael Smith <msmith@fluendo.com>
1559 * tests/check/generic/sinks.c: (GST_START_TEST):
1560 Fix a variety of memleaks in sinks check, which are only sometimes
1561 shown by running the tests under valgrind (weird?).
1563 2006-04-05 Jan Schmidt <thaytan@mad.scientist.com>
1565 * docs/version.entities.in:
1566 Fix the substituted entity name after thomas' changes on the
1569 2006-04-05 Zaheer Abbas Merali <zaheerabbas at merali dot org>
1571 * gst/gstinfo.c: (__gst_in_valgrind): Use printf instead of
1574 2006-04-05 Andy Wingo <wingo@pobox.com>
1576 * gst/gstpad.c (gst_pad_set_blocked_async): More debug.
1578 * libs/gst/base/gstbasetransform.c
1579 (gst_base_transform_sink_eventfunc): When resetting our segment on
1580 FLUSH_STOP, also update the flag saying we haven't seen a
1583 2006-04-04 Tim-Philipp Müller <tim at centricular dot net>
1585 Patch by: Paolo Borelli <pborelli at katamail dot com>
1587 * gst/gstplugin.c: (gst_plugin_finalize), (gst_plugin_class_init),
1588 (gst_plugin_check_license):
1589 minor clean-ups: G_DEFINE_TYPE already takes care of the
1590 parent_class stuff, no need to do it twice. Mark array of
1591 license strings as constant. (#337103)
1593 2006-04-04 Michael Smith <msmith@fluendo.com>
1595 * tools/gst-inspect.c: (print_element_list):
1596 Free the right plugin list; fixes a memory leak.
1598 2006-04-04 Tim-Philipp Müller <tim at centricular dot net>
1600 Patch by: Mark Nauwelaerts <manauw at skynet dot be>
1602 * plugins/elements/gstfilesink.c: (gst_file_sink_render):
1603 Don't error out on empty buffers (#336945).
1605 2006-04-04 Jan Schmidt <thaytan@mad.scientist.com>
1607 * docs/libs/gstreamer-libs-sections.txt:
1609 * libs/gst/base/gstbasesink.c:
1610 * libs/gst/base/gstbasesink.h:
1611 * libs/gst/base/gstbasesrc.c:
1612 * libs/gst/base/gstbasesrc.h:
1613 Documentation updates. Make BaseSink and BaseSrc docs contain the
1614 class structure so that people can actually see the prototypes for
1615 virtual functions they're supposed to be overriding.
1617 2006-04-04 Tim-Philipp Müller <tim at centricular dot net>
1619 * plugins/elements/gsttypefindelement.c:
1620 (gst_type_find_element_chain):
1621 More debug info; when skipping typefinding, send cached
1622 events in all cases.
1624 2006-04-01 Thomas Vander Stichele <thomas at apestaart dot org>
1627 use new AS_VERSION and AS_NANO macros
1628 * gst/gst-i18n-lib.h:
1631 * gst/gstversion.h.in:
1632 * win32/common/config.h:
1633 * win32/common/config.h.in:
1636 2006-03-31 Michael Smith <msmith@fluendo.com>
1638 * plugins/elements/gsttypefindelement.c:
1639 (gst_type_find_element_chain):
1640 Do not typefind content if the buffers already have caps.
1641 Neccesary for icydemux (#333657), and the right thing to do anyway.
1643 2006-03-30 Wim Taymans <wim@fluendo.com>
1645 * libs/gst/base/gstbasesink.c: (gst_base_sink_init),
1646 (gst_base_sink_finalize), (gst_base_sink_set_qos_enabled),
1647 (gst_base_sink_is_qos_enabled), (gst_base_sink_do_sync),
1648 (gst_base_sink_record_qos_observation),
1649 (gst_base_sink_perform_qos), (gst_base_sink_reset_qos),
1650 (gst_base_sink_is_too_late), (gst_base_sink_render_object),
1651 (gst_base_sink_change_state):
1652 More QoS measurements as described in the design doc.
1653 Get rid of ringbuffer with observations, running average is
1654 more simple and equally good.
1655 Calculates valid proportion now.
1656 Added beginning of flood measurement.
1658 2006-03-29 Wim Taymans <wim@fluendo.com>
1660 * docs/design/part-qos.txt:
1662 Small documentation updates and additions.
1664 2006-03-29 Wim Taymans <wim@fluendo.com>
1666 * libs/gst/base/gstbasesrc.c: (gst_base_src_finalize),
1667 (gst_base_src_send_event), (gst_base_src_loop),
1668 (gst_base_src_change_state):
1669 Perform the EOS logic when we reach the segment stop position.
1670 Fix compilation on gcc4.1
1672 2006-03-29 Wim Taymans <wim@fluendo.com>
1674 Patch by: Tommi Myöhänen <ext-tommi dot myohanen at nokia dot com>
1676 * plugins/elements/gstqueue.c: (gst_queue_init),
1677 (gst_queue_locked_flush), (gst_queue_handle_sink_event),
1678 (gst_queue_set_property):
1679 * plugins/elements/gstqueue.h:
1680 In queue, when EOS is received, if minimum threshold > max_size -
1681 current_level, there is chance that queue blocks forever in conditional
1682 item del wait. This is because the queue is not emptied completely due
1683 to minimum threshold. Here is another approach. Instead of setting
1684 cur_levels to max in EOS, just zero all minimum threshold levels. This
1685 should make sure that queue gives out all data. When going to READY
1686 (stop) state, just reset the original minimum threshold levels.
1689 2006-03-29 Tim-Philipp Müller <tim at centricular dot net>
1691 * plugins/elements/gsttypefindelement.c: (stop_typefinding),
1692 (gst_type_find_element_handle_event),
1693 (gst_type_find_element_send_cached_events),
1694 (gst_type_find_element_change_state):
1695 * plugins/elements/gsttypefindelement.h:
1696 When typefinding is done in push mode, we should cache
1697 events we receive during typefinding instead of just
1698 dropping them (e.g. newsegment, custom events from
1699 dvdreadsrc etc.) and then send them out once we've
1700 determined the type of the stream (and decodebin
1701 has had a chance to plug in a decoder/demuxer).
1703 2006-03-27 Wim Taymans <wim@fluendo.com>
1705 * docs/design/part-qos.txt:
1708 2006-03-27 Wim Taymans <wim@fluendo.com>
1710 Inspired by a patch of: Lutz Mueller <lutz at topfrose dot de>
1712 * libs/gst/base/gstbasesrc.c: (gst_base_src_finalize),
1713 (gst_base_src_send_event), (gst_base_src_change_state):
1714 Handle element seek correctly when we are streaming.
1717 2006-03-24 Michael Smith <msmith@fluendo.com>
1719 * docs/faq/gst-uninstalled:
1720 Set up LD_LIBRARY_PATH to point at all the gstreamer libs. This will
1721 allow you to correctly run intalled applications built against old
1722 core, using plugins that require updated core (e.g. running
1723 installed totem against a full uninstalled gstreamer stack)
1725 2006-03-24 Stefan Kost <ensonic@users.sf.net>
1727 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_is_collected):
1730 2006-03-24 Wim Taymans <wim@fluendo.com>
1732 * docs/gst/gstreamer-sections.txt:
1733 Rearrange the order of the methods so that related methods
1734 are grouped together in sections.
1736 2006-03-24 Stefan Kost <ensonic@users.sf.net>
1739 Little clarification in the docs
1741 2006-03-24 Stefan Kost <ensonic@users.sf.net>
1745 * plugins/elements/gstidentity.c:
1746 * plugins/elements/gstqueue.c:
1747 * plugins/elements/gsttee.c:
1748 * plugins/elements/gsttypefindelement.c:
1749 GST_ELEMENT_DETAILS formatting
1751 2006-03-24 Wim Taymans <wim@fluendo.com>
1753 * libs/gst/base/gstbasesink.h:
1754 Only add fields, not insert or we break ABI.
1756 2006-03-23 Tim-Philipp Müller <tim at centricular dot net>
1758 * win32/common/libgstbase.def:
1759 * win32/common/libgstreamer.def:
1760 Update, add recently added functions.
1762 2006-03-23 Tim-Philipp Müller <tim at centricular dot net>
1764 * docs/gst/gstreamer-sections.txt:
1765 * gst/gstutils.c: (gst_pad_query_peer_position),
1766 (gst_pad_query_peer_duration), (gst_pad_query_peer_convert):
1768 API: add some new utility functions:
1769 - gst_pad_query_peer_position()
1770 - gst_pad_query_peer_duration()
1771 - gst_pad_query_peer_convert()
1773 2006-03-23 Wim Taymans <wim@fluendo.com>
1775 * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init),
1776 (gst_base_sink_init), (gst_base_sink_finalize),
1777 (gst_base_sink_set_qos_enabled), (gst_base_sink_is_qos_enabled),
1778 (gst_base_sink_set_property), (gst_base_sink_get_property),
1779 (gst_base_sink_commit_state), (gst_base_sink_get_sync_times),
1780 (gst_base_sink_wait_clock), (gst_base_sink_do_sync),
1781 (gst_base_sink_add_qos_observation), (gst_base_sink_send_qos),
1782 (gst_base_sink_perform_qos), (gst_base_sink_reset_qos),
1783 (gst_base_sink_is_too_late), (gst_base_sink_render_object),
1784 (gst_base_sink_preroll_object), (gst_base_sink_event),
1785 (gst_base_sink_chain_unlocked), (gst_base_sink_get_position_last),
1786 (gst_base_sink_get_position_paused), (gst_base_sink_get_position),
1787 (gst_base_sink_query), (gst_base_sink_change_state):
1788 Decouple max-lateness and the fact that QoS messages are generated
1789 with a new property (qos).
1790 added API: GstBaseSink::async_play()
1791 Add vmethod so subclasses can be notified of ASYNC playing
1793 Collect timestamp start and stop to report better current
1794 position in EOS/PLAYING/PAUSED/READY/NULL.
1795 Refactor QoS/frame dropping and other measurements.
1796 API: GstBaseSrc::qos
1799 * libs/gst/base/gstbasesink.h:
1800 Added Private struct.
1801 API: gst_base_sink_set_qos_enabled()
1802 API: gst_base_sink_is_qos_enabled()
1804 2006-03-23 Tim-Philipp Müller <tim at centricular dot net>
1806 * gst/gstregistryxml.c: (gst_registry_xml_read_cache):
1807 If compiling against GLib-2.8 or newer, try to read the
1808 registry file using GMappedFile first before falling back
1809 to fopen() + fread() (#332151).
1811 2006-03-22 Wim Taymans <wim@fluendo.com>
1813 * gst/gstinfo.c: (gst_debug_set_active),
1814 (gst_debug_category_set_threshold):
1815 Disable debugging unless explicitly activated.
1818 2006-03-22 Wim Taymans <wim@fluendo.com>
1820 * gst/gstelement.c: (gst_element_set_locked_state),
1821 (gst_element_dispose):
1822 Cleanup the error case.
1824 * gst/gstobject.c: (gst_object_dispose):
1825 print a critical when some object was disposed with
1826 a parent, also revive the object since it might
1829 2006-03-22 Tim-Philipp Müller <tim at centricular dot net>
1831 * tools/gst-launch.1.in:
1834 2006-03-21 Thomas Vander Stichele <thomas at apestaart dot org>
1837 * tests/check/Makefile.am:
1838 disable some tests when we don't have a registry
1839 * tests/check/gst/gstutils.c: (gst_utils_suite):
1840 don't build the part that needs parsing
1842 2006-03-21 Thomas Vander Stichele <thomas at apestaart dot org>
1845 * tests/examples/Makefile.am:
1846 fix --disable-parse build
1848 2006-03-21 Tim-Philipp Müller <tim at centricular dot net>
1850 * tools/gst-feedback.1.in:
1851 Fix typo: s/feeback/feedback/ (#133494).
1853 2006-03-21 Tim-Philipp Müller <tim at centricular dot net>
1855 * tools/Makefile.am:
1856 * tools/gst-launch.1.in:
1857 Add FILES section and correct entry about GST_REGISTRY_PATH
1858 environment variable (#133495; #133494).
1860 2006-03-21 Tim-Philipp Müller <tim at centricular dot net>
1862 * tools/Makefile.am:
1863 * tools/gst-md5sum.1.in:
1864 * tools/gst-md5sum.c:
1865 Remove gst-md5sum and man page (the md5sink element
1866 required was removed ages ago)
1868 2006-03-21 Tim-Philipp Müller <tim at centricular dot net>
1870 * gst/gststructure.c: (gst_structure_id_set_value):
1871 Make sure that string fields in structures/taglists
1872 contain valid UTF-8 - we don't want to pass rubbish to
1873 applications because of a buggy plugin (cp. #334167).
1875 2006-03-21 Edward Hervey <edward@fluendo.com>
1877 * gst/gstbin.c: (gst_bin_dispose), (gst_bin_provide_clock_func),
1878 (gst_bin_handle_message_func):
1879 * gst/gstclock.c: (gst_clock_dispose), (gst_clock_set_master):
1880 * gst/gstelement.c: (gst_element_set_clock), (gst_element_dispose),
1881 (gst_element_set_bus_func):
1882 * gst/gstghostpad.c: (gst_proxy_pad_dispose):
1883 * gst/gstminiobject.c: (gst_value_set_mini_object),
1884 (gst_value_take_mini_object):
1885 * gst/gstpad.c: (gst_pad_set_pad_template):
1886 * gst/gstpipeline.c: (gst_pipeline_dispose),
1887 (gst_pipeline_use_clock), (gst_pipeline_auto_clock):
1888 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_pop),
1889 (gst_collect_pads_chain):
1890 * libs/gst/net/gstnettimeprovider.c:
1891 (gst_net_time_provider_set_property):
1892 Series of fixes for dereferenced pointers that gcc 4.1 complains about.
1893 It's in fact all issues with gst_*object_replace().
1895 2006-03-21 Tim-Philipp Müller <tim at centricular dot net>
1897 Patch by: Loïc Minier <lool + gnome at via dot ecp dot fr>
1899 * pkgconfig/gstreamer-check-uninstalled.pc.in:
1900 * pkgconfig/gstreamer-check.pc.in:
1901 Use @CHECK_LIBS@ here instead of hard-coding -lcheck (#334109).
1903 2006-03-21 Edward Hervey <edward@fluendo.com>
1908 gst_[buffer|event|message]_ref() macros are replaced by a static
1909 inline functions because gcc-4.1 will about if the return value
1911 * tests/check/gst/gstevent.c: (event_probe):
1912 gst_event_ref now has to be given a GstEvent* , fix check accordingly.
1914 2006-03-20 Jan Schmidt <thaytan@mad.scientist.com>
1917 Add G_UNLIKELY to our boilerplate to optimise the 'already registered
1918 the type' case. (Closes: #335195 for now). In the future, when we
1919 depend on GLib 2.10, we could also intern the type name using
1920 g_intern_static_string()
1922 2006-03-20 Wim Taymans <wim@fluendo.com>
1924 * gst/gstbin.c: (gst_bin_handle_message_func),
1925 (bin_query_max_init), (bin_query_position_fold),
1926 (bin_query_position_done), (gst_bin_query):
1927 Position query should also take max of all streams.
1929 2006-03-20 Wim Taymans <wim@fluendo.com>
1931 * plugins/elements/gstfakesrc.c: (gst_fake_src_class_init),
1932 (gst_fake_src_finalize):
1933 Fix leaks in fakesrc.
1935 * tests/check/pipelines/parse-launch.c: (GST_START_TEST):
1936 Fix leaks in the testcase.
1938 2006-03-19 Sebastien Moutte <sebastien@moutte.net>
1940 * gst/gst_private.h:
1941 add win32 specific import decoration(__declspec(dllimport))
1942 for all extern GstDebugCategory * variables
1943 * win32/common/libgstbase.def:
1944 * win32/common/libgstcontroller.def:
1945 * win32/common/libgstreamer.def:
1946 Add some exports, remove empty lines
1947 * win32/common/libgstdataprotocol.def:
1948 * win32/common/libgstdataprotocol.dsp:
1949 * win32/common/libgstnet.def:
1950 * win32/common/libgstnet.dsp:
1951 new project files and exportation files added
1953 2006-03-19 Wim Taymans <wim@fluendo.com>
1955 * tests/check/libs/basesrc.c: (eos_event_counter):
1956 Use proper return value for probe.
1958 2006-03-17 Wim Taymans <wim@fluendo.com>
1960 * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_alloc_buffer_full),
1962 Don't leak buffers, caps and pads on negotiation errors.
1964 2006-03-16 Stefan Kost <ensonic@users.sf.net>
1967 * docs/faq/dependencies.xml:
1968 * docs/faq/developing.xml:
1970 * docs/faq/general.xml:
1971 * docs/faq/getting.xml:
1972 * docs/faq/legal.xml:
1973 * docs/faq/troubleshooting.xml:
1974 * docs/faq/using.xml:
1975 Faq review and update.
1977 2006-03-16 Jan Schmidt <thaytan@mad.scientist.com>
1979 * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_alloc_buffer_full),
1981 Don't pound the cpu to pieces by checking get_caps when accept_caps
1982 is called with the same caps as the pad already has.
1983 Use GST_DEBUG_OBJECT when outputting caps change information.
1985 2006-03-15 Wim Taymans <wim@fluendo.com>
1987 * gst/gstclock.c: (gst_clock_class_init):
1990 2006-03-15 Jan Schmidt <thaytan@mad.scientist.com>
1995 * gst/gstpad.c: (gst_pad_init), (gst_pad_acceptcaps_default),
1996 (gst_pad_accept_caps), (gst_pad_configure_sink),
1997 (gst_pad_configure_src), (gst_pad_chain), (gst_pad_push):
1998 Make the default acceptcaps behaviour be to check the requested
1999 caps against the gst_pad_get_caps output.
2001 Ensure that gst_pad_accept_caps is used to check caps when a pad
2002 doesn't have a setcaps function, so that pads automatically refuse
2003 caps that they don't allow in their pad template. (Fixes #332986)
2005 When a buffer with attached caps is pushed, ensure that the source
2006 pad receives those caps even if the element didn't call
2007 gst_pad_set_caps first.
2009 2006-03-15 Wim Taymans <wim@fluendo.com>
2011 * libs/gst/base/gstadapter.c:
2014 2006-03-15 Tim-Philipp Müller <tim at centricular dot net>
2016 * win32/common/libgstbase.def:
2017 * win32/common/libgstcontroller.def:
2018 * win32/common/libgstreamer.def:
2019 Add a whole bunch of missing functions (#334434).
2021 2006-03-14 Wim Taymans <wim@fluendo.com>
2023 * libs/gst/base/gstbasesink.c: (gst_base_sink_configure_segment),
2024 (gst_base_sink_get_sync_times), (gst_base_sink_wait_clock),
2025 (gst_base_sink_do_sync), (gst_base_sink_do_qos):
2026 Better debug info when we receive a segment event.
2027 Reorganize a bit so we can pass the get_times() results around.
2028 Use the segment format when calculating the running time.
2029 Don't do QoS is sync is disabled or we have no clock or the
2030 element does not want us to sync to the clock.
2031 Don't drop buffers if QoS is disabled for now.
2033 2006-03-14 Wim Taymans <wim@fluendo.com>
2035 * gst/gstclock.c: (gst_clock_class_init), (do_linear_regression):
2036 Marked the stats property as unimplemented so people don't get
2038 Add debug message when regression goes wrong.
2039 Added some more docs.
2041 2006-03-14 Wim Taymans <wim@fluendo.com>
2043 * gst/gstsegment.c: (gst_segment_to_stream_time):
2044 Return correct return type in case of errors.
2046 2006-03-14 Wim Taymans <wim@fluendo.com>
2048 * gst/gstformat.c: (gst_format_get_name), (gst_format_to_quark):
2049 Don't segfault on invalid formats.
2051 2006-03-14 Tim-Philipp Müller <tim at centricular dot net>
2053 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times):
2054 Can't use gst_segment_to_running_time() when the segment
2055 is not in GST_TIME_FORMAT (like with filesink, for example).
2056 Stops flac encoding pipelines from spewing critical warnings
2059 2006-03-14 Tim-Philipp Müller <tim at centricular dot net>
2061 * gst/gstpipeline.c: (gst_pipeline_class_init):
2062 Add 'Since: 0.10.5' to gtk-doc blurb for added property.
2064 * plugins/elements/gsttypefindelement.c:
2065 (gst_type_find_element_handle_event):
2066 Don't try to typefind empty streams.
2068 2006-03-14 Wim Taymans <wim@fluendo.com>
2070 * libs/gst/base/gstbasesink.c: (gst_base_sink_do_sync),
2071 (gst_base_sink_do_qos):
2072 Separate QoS calculation.
2073 Only drop buffers when lateness is bigger than the
2074 duration of the buffer.
2076 2006-03-13 Wim Taymans <wim@fluendo.com>
2078 * gst/gstpipeline.c: (gst_pipeline_set_property),
2079 (gst_pipeline_get_property), (do_pipeline_seek),
2080 (gst_pipeline_change_state), (gst_pipeline_set_delay),
2081 (gst_pipeline_get_delay):
2082 Don't deadlock when reading properties.
2084 2006-03-13 Wim Taymans <wim@fluendo.com>
2086 * libs/gst/base/gstbasetransform.c:
2087 (gst_base_transform_class_init), (gst_base_transform_init),
2088 (gst_base_transform_sink_event),
2089 (gst_base_transform_sink_eventfunc),
2090 (gst_base_transform_src_event), (gst_base_transform_src_eventfunc),
2091 (gst_base_transform_handle_buffer), (gst_base_transform_chain),
2092 (gst_base_transform_set_property),
2093 (gst_base_transform_get_property),
2094 (gst_base_transform_change_state), (gst_base_transform_update_qos),
2095 (gst_base_transform_set_qos_enabled),
2096 (gst_base_transform_is_qos_enabled):
2097 * libs/gst/base/gstbasetransform.h:
2098 Make basetransform virtual method for src events too.
2099 Handle QOS in basetransform.
2100 API: gst_base_transform_update_qos()
2101 API: gst_base_transform_set_qos_enabled()
2102 API: gst_base_transform_is_qos_enabled()
2104 2006-03-13 Wim Taymans <wim@fluendo.com>
2106 * libs/gst/base/gstbasesink.c: (gst_base_sink_init),
2107 (gst_base_sink_do_sync):
2109 Use QOS debug category.
2111 2006-03-13 Wim Taymans <wim@fluendo.com>
2113 * plugins/elements/gstqueue.c:
2114 Very small doc update.
2116 2006-03-13 Wim Taymans <wim@fluendo.com>
2118 * gst/gst_private.h:
2119 * gst/gstinfo.c: (_gst_debug_init):
2120 Added QOS debug category
2122 2006-03-13 Wim Taymans <wim@fluendo.com>
2124 * docs/gst/gstreamer-sections.txt:
2125 * gst/gstbin.c: (bin_bus_handler), (gst_bin_handle_message_func):
2127 * gst/gstbus.c: (gst_bus_class_init):
2130 * gst/gstelement.c: (gst_element_set_locked_state):
2132 Documentation updates.
2134 * gst/gstpipeline.c: (gst_pipeline_get_type),
2135 (gst_pipeline_class_init), (gst_pipeline_init),
2136 (gst_pipeline_dispose), (gst_pipeline_set_property),
2137 (gst_pipeline_get_property), (do_pipeline_seek),
2138 (gst_pipeline_send_event), (gst_pipeline_change_state),
2139 (gst_pipeline_provide_clock_func), (gst_pipeline_set_delay),
2140 (gst_pipeline_get_delay):
2141 * gst/gstpipeline.h:
2142 Added methods for setting the delay.
2143 API: gst_pipeline_set_delay()
2144 API: gst_pipeline_get_delay()
2145 Add pipeline debug category
2148 Don't reset stream time when seek failed.
2150 2006-03-13 Wim Taymans <wim@fluendo.com>
2152 * docs/design/draft-klass.txt:
2153 * docs/design/part-clocks.txt:
2154 * docs/design/part-events.txt:
2155 * docs/design/part-gstbin.txt:
2156 * docs/design/part-gstpipeline.txt:
2157 * docs/design/part-messages.txt:
2158 * docs/design/part-negotiation.txt:
2159 * docs/design/part-overview.txt:
2160 * docs/design/part-preroll.txt:
2161 * docs/design/part-seeking.txt:
2162 * docs/design/part-states.txt:
2163 * docs/design/part-streams.txt:
2164 Documentation updates.
2166 2006-03-12 Julien MOUTTE <julien@moutte.net>
2168 * gst/gsttaglist.c: Fix rubbish docs that are encouraging
2169 us to leak strings...
2171 2006-03-12 Thomas Vander Stichele <thomas at apestaart dot org>
2173 * libs/gst/net/gstnettimeprovider.c:
2175 * win32/common/config.h:
2178 2006-03-12 Tim-Philipp Müller <tim at centricular dot net>
2180 Patch by: Julio M. Merino Vidal <jmmv at netbsd org>
2183 Don't check for libgnomeui (leftover from old examples
2184 that aren't built or disted any longer) (#334303).
2186 2006-03-11 Tim-Philipp Müller <tim at centricular dot net>
2188 * plugins/elements/gstfdsink.c: (gst_fd_sink_render):
2189 * plugins/elements/gstfilesink.c: (gst_file_sink_render):
2190 Emit RESOURCE_NO_SPACE_LEFT error here as well when
2191 there's no space left on the device.
2193 2006-03-10 Tim-Philipp Müller <tim at centricular dot net>
2196 Fix GST_CLOCK_TIME_IS_VALID signedness issues - we need
2197 to cast the input to GstClockTime before comparing with
2198 another GstClockTime value.
2200 2006-03-10 Thomas Vander Stichele <thomas at apestaart dot org>
2205 === release 0.10.4 ===
2207 2006-03-10 Thomas Vander Stichele <thomas at apestaart dot org>
2210 releasing 0.10.4, "Light"
2212 2006-03-10 Michael Smith <msmith@fluendo.com>
2214 * libs/gst/dataprotocol/dataprotocol.c:
2215 Fix docs for dataprocotol to not get the return types completely
2216 wrong for a few functions.
2218 2006-03-09 Tim-Philipp Müller <tim at centricular dot net>
2220 * docs/gst/gstreamer-sections.txt:
2221 * gst/gstpipeline.c: (gst_pipeline_class_init),
2222 (gst_pipeline_init), (gst_pipeline_set_property),
2223 (gst_pipeline_get_property), (gst_pipeline_change_state),
2224 (gst_pipeline_set_auto_flush_bus),
2225 (gst_pipeline_get_auto_flush_bus):
2226 * gst/gstpipeline.h:
2227 Add new API: gst_pipeline_set_auto_flush_bus() and
2228 gst_pipeline_get_auto_flush_bus() to disable automatic
2229 flushing of the pipeline's GstBus when going from READY
2230 to NULL state (#332045).
2232 2006-03-09 Tim-Philipp Müller <tim at centricular dot net>
2234 * docs/gst/gstreamer-sections.txt:
2235 * gst/gsturi.c: (gst_uri_has_protocol):
2237 Add new API: gst_uri_has_protocol() (#333779).
2239 2006-03-09 Wim Taymans <wim@fluendo.com>
2241 * gst/gstclock.c: (gst_clock_entry_new),
2242 (gst_clock_id_compare_func), (gst_clock_id_wait),
2243 (gst_clock_id_wait_async), (gst_clock_id_unschedule),
2244 (gst_clock_init), (gst_clock_get_internal_time),
2245 (gst_clock_set_master), (do_linear_regression),
2246 (gst_clock_add_observation), (gst_clock_set_property):
2250 Fix a possible segfault when the window-size is made smaller.
2251 Calculate jitter before performing the clock wait. Ideally
2252 the clock implementation should calculate jitter but we need
2253 API breakage for that.
2255 * gst/gstsystemclock.c: (gst_system_clock_init):
2258 * libs/gst/base/gstbasesink.c: (gst_base_sink_do_sync):
2259 Remove leftover else
2261 * tests/check/gst/gstsystemclock.c: (GST_START_TEST),
2262 (gst_systemclock_suite):
2263 Added check to test GST_CLOCK_DIFF.
2265 2006-03-09 Tim-Philipp Müller <tim at centricular dot net>
2267 * libs/gst/base/gsttypefindhelper.c: (helper_find_get_length),
2268 (gst_type_find_helper_get_range):
2269 If we are provided with the size, we should implement
2270 GstTypeFind::get_length, so that typefind functions who
2271 want to can actually peek at the middle of a file.
2273 2006-03-08 Tim-Philipp Müller <tim at centricular dot net>
2275 * docs/manual/advanced-dataaccess.xml:
2276 Add some very very basic error checking.
2278 * docs/pwg/appendix-checklist.xml:
2279 Some updates to the list of things to check when writing an element.
2281 2006-03-08 Wim Taymans <wim@fluendo.com>
2283 * docs/design/part-element-transform.txt:
2284 Added some docs about the design of tranform elements.
2286 * libs/gst/base/gstbasesrc.c: (gst_base_src_perform_seek),
2287 (gst_base_src_loop), (gst_base_src_change_state):
2288 Mark buffers with the DISCONT flag.
2290 2006-03-08 Michael Smith <msmith@fluendo.com>
2292 * gst/gstregistry.h:
2293 * gst/gstregistryxml.c: (gst_registry_save),
2294 (gst_registry_save_escaped), (gst_registry_xml_save_caps),
2295 (gst_registry_xml_save_pad_template),
2296 (gst_registry_xml_save_feature), (gst_registry_xml_save_plugin),
2297 (gst_registry_xml_write_cache):
2298 Rewrite registry-saving to avoid race conditions and check for
2301 2006-03-08 Wim Taymans <wim@fluendo.com>
2303 * libs/gst/base/gstbasetransform.c:
2304 (gst_base_transform_transform_caps),
2305 (gst_base_transform_transform_size),
2306 (gst_base_transform_prepare_output_buffer),
2307 (gst_base_transform_get_unit_size),
2308 (gst_base_transform_buffer_alloc),
2309 (gst_base_transform_handle_buffer),
2310 (gst_base_transform_change_state):
2311 Cleanups, separate normal flow from errors, add sensible
2313 Don't try to renegotiate when allocating an output buffer.
2314 Also copy DISCONT buffer flag when copying a buffer.
2315 Reset the transform after we finish streaming, not during.
2317 2006-03-08 Wim Taymans <wim@fluendo.com>
2319 * libs/gst/base/gstbasesink.c: (gst_base_sink_do_sync):
2320 Use last buffer timestamp in qos message.
2322 2006-03-07 Wim Taymans <wim@fluendo.com>
2324 Patch by: Christophe Fergeau
2326 * docs/pwg/advanced-tagging.xml:
2327 * docs/pwg/building-pads.xml:
2330 2006-03-07 Wim Taymans <wim@fluendo.com>
2332 * docs/libs/gstreamer-libs-sections.txt:
2333 Added basesink new methods.
2337 Docs updates. Flesh out the QoS docs.
2339 * libs/gst/base/gstadapter.c:
2340 Small doc clarification about ownership and flushing.
2342 * libs/gst/base/gstbasesink.c: (gst_base_sink_set_sync),
2343 (gst_base_sink_get_sync), (gst_base_sink_set_max_lateness),
2344 (gst_base_sink_get_max_lateness), (gst_base_sink_set_property),
2345 (gst_base_sink_get_property), (gst_base_sink_do_sync):
2346 * libs/gst/base/gstbasesink.h:
2348 Added new methods to allow subclass to control max-lateness
2350 Generate very basic QoS events based on last sync observation.
2351 Updated docs, fix typo, added some QoS blurb.
2353 * libs/gst/base/gstbasesrc.c:
2354 Remove obsolete _get_state() calls from docs.
2356 2006-03-07 Wim Taymans <wim@fluendo.com>
2358 * docs/libs/gstreamer-libs-sections.txt:
2359 * libs/gst/base/gstbasetransform.h:
2360 API addition: Fix #333669, Add pad accessor defines for GstBaseTransform
2361 Fix docs for GstBaseSrc.
2363 2006-03-07 Wim Taymans <wim@fluendo.com>
2365 * docs/gst/gstreamer-sections.txt:
2368 * libs/gst/base/gstbasetransform.h:
2369 Small documentation fixes.
2371 2006-03-07 Tim-Philipp Müller <tim at centricular dot net>
2374 Document thread-unsafety of gst_value_register_foo_func()
2375 when used at the same time as gst_value_foo() (#322628).
2377 2006-03-07 Tim-Philipp Müller <tim at centricular dot net>
2379 * libs/gst/base/gstpushsrc.c: (gst_push_src_class_init),
2380 (gst_push_src_check_get_range):
2381 Push sources don't support pull mode by default.
2383 2006-03-06 Tim-Philipp Müller <tim at centricular dot net>
2385 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
2386 (gst_base_src_init), (gst_base_src_pad_check_get_range),
2387 (gst_base_src_default_check_get_range):
2388 * libs/gst/base/gstbasesrc.h:
2389 API addition: Add ::check_get_range() vfunc to GstBaseSrc (#332611),
2390 provide default implementation, and rename
2391 gst_base_src_check_get_range() to
2392 gst_base_src_pad_check_get_range() for clarity.
2394 2006-03-06 Wim Taymans <wim@fluendo.com>
2396 * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init):
2397 Make property overridable.
2399 2006-03-06 Wim Taymans <wim@fluendo.com>
2401 * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init),
2402 (gst_base_sink_init), (gst_base_sink_set_property),
2403 (gst_base_sink_get_property), (gst_base_sink_do_sync):
2404 * libs/gst/base/gstbasesink.h:
2405 API addition: Make max-lateness a property.
2407 2006-03-06 Wim Taymans <wim@fluendo.com>
2409 * libs/gst/base/gstbasesink.c: (gst_base_sink_wait_clock),
2410 (gst_base_sink_do_sync), (gst_base_sink_render_object):
2411 Don't ever draw a frame that is >10ms late.
2413 2006-03-06 Michael Smith <msmith@fluendo.com>
2415 * gst/gstmessage.c: (_gst_message_copy):
2416 When copying a message, set the parent_refcount of the enclosed
2417 structure to point at the copy, not the original message.
2419 2006-03-06 Tim-Philipp Müller <tim at centricular dot net>
2421 Patch by: Christophe Fergeau
2424 Do proper cast here to make GST_BOILERPLATE_WITH_INTERFACE
2425 usable in c++ code (#333417)
2427 2006-03-06 Thomas Vander Stichele <thomas at apestaart dot org>
2430 Show GST_CLOCK_TIME_NONE as 99:99:99.999999999
2432 2006-03-05 Tim-Philipp Müller <tim at centricular dot net>
2434 * libs/gst/base/gstbasetransform.c:
2435 (gst_base_transform_transform_caps):
2436 Make sure caps are writable before passing them to
2439 2006-03-04 Tim-Philipp Müller <tim at centricular dot net>
2442 Fix some minor docs errors.
2444 2006-03-04 Tim-Philipp Müller <tim at centricular dot net>
2446 Patch by: Ross Burton <ross at burtonini dot com>
2448 * gst/gsterror.c: (_gst_resource_errors_init):
2450 Add GST_RESOURCE_ERROR_NO_SPACE_LEFT (for #333352;
2452 2006-03-03 Jan Schmidt <thaytan@mad.scientist.com>
2455 Add a check and output a g_warning when GStreamer is built
2456 against GLib 2.6 but running against 2.8 or higher, and vice
2457 versa. (Closes: #323542)
2459 2006-03-03 Jan Schmidt <thaytan@mad.scientist.com>
2461 * gst/parse/parse.l:
2462 Commit patch for parse_launch syntax from #331255. Removes
2463 support for quoted strings and mimetypes when writing filtered
2464 caps. See the bug report for more details - I'm pretty sure this
2465 obscure feature is not in use by _anyone_ anywhere.
2467 With this simple change, the size of the gstreamer.so here
2468 drops from 2193KB to 1565KB.
2470 2006-03-03 Tim-Philipp Müller <tim at centricular dot net>
2472 * plugins/elements/gsttypefindelement.h:
2473 * plugins/elements/gsttypefindelement.c:
2474 (gst_type_find_element_src_event), (start_typefinding),
2475 (stop_typefinding), (gst_type_find_element_handle_event),
2476 (gst_type_find_element_chain),
2477 (gst_type_find_element_chain_do_typefinding):
2478 Use gst_type_find_helper_for_buffer() for chain-based
2481 2006-03-03 Tim-Philipp Müller <tim at centricular dot net>
2483 * plugins/elements/gsttypefindelement.c:
2484 (gst_type_find_element_class_init),
2485 (gst_type_find_element_set_property),
2486 (gst_type_find_element_get_property):
2487 Deprecate "maximum" property (not only was it only taken into
2488 account for typefinding in push-mode anyway, it also was never
2489 actually possible to set it in the first place because the
2490 property was registered with the numeric property ID for the
2491 "minimum" property). Register "maximum" property correctly,
2492 for the sake of future copy'n'pasters. Remove some cruft
2493 from property get/set functions.
2495 2006-03-03 Tim-Philipp Müller <tim at centricular dot net>
2497 * plugins/elements/gsttypefindelement.c:
2498 (gst_type_find_element_activate):
2499 Use gst_type_find_helper_get_range() here, so we
2500 can honour the "minimum" property and also emit
2501 the signal with the correct probability of the found caps.
2503 2006-03-02 Tim-Philipp Müller <tim at centricular dot net>
2505 * docs/libs/gstreamer-libs-sections.txt:
2506 * libs/gst/base/gsttypefindhelper.c: (helper_find_peek),
2507 (helper_find_suggest), (gst_type_find_helper_get_range),
2508 (gst_type_find_helper):
2509 * libs/gst/base/gsttypefindhelper.h:
2510 New API: gst_type_find_helper_get_range() (#333042).
2512 2006-03-02 Michael Smith <msmith@fluendo.com>
2514 * gst/gstregistryxml.c: (load_feature):
2515 Asserting on a failure to read part of the registry is Not Cool.
2516 Just log a warning and return NULL (which is already handled)
2518 2006-02-28 Sebastien Moutte <sebastien@moutte.net>
2520 * win32/common/libgstbase.def:
2521 added export of gst_type_find_helper_for_buffer
2522 * win32/common/libgstbase.def:
2523 added some exports : gst_bin_iterate_elements, gst_iterator_resync,
2524 gst_ghost_pad_get_target
2526 2006-02-28 Wim Taymans <wim@fluendo.com>
2528 * docs/design/draft-klass.txt:
2530 Added Connector to mark elements that are only used to
2531 allow pipeline connections.
2532 Moved Debug to extra feature since most of them are
2533 functionally something else.
2535 2006-02-28 Wim Taymans <wim@fluendo.com>
2537 * docs/design/draft-klass.txt:
2538 Some updates and clarifications.
2540 2006-02-28 Wim Taymans <wim@fluendo.com>
2542 * docs/design/draft-klass.txt:
2543 Proposal for klass field values.
2545 * docs/design/part-streams.txt:
2546 Start of a doc describing stream anatomy.
2548 2006-02-28 Wim Taymans <wim@fluendo.com>
2550 * gst/gstbin.c: (gst_bin_get_type), (gst_bin_handle_message_func):
2551 Help the compiler a bit with type registration.
2552 Use existing forward cod path instead of duplicating it when
2555 * gst/gstbus.c: (gst_bus_get_type):
2556 * gst/gstcaps.c: (gst_caps_get_type), (gst_static_caps_get_type):
2557 * gst/gstchildproxy.c: (gst_child_proxy_get_type):
2558 * gst/gstclock.c: (gst_clock_get_type):
2559 * gst/gstelement.c: (gst_element_get_type),
2560 * gst/gstelementfactory.c: (gst_element_factory_get_type):
2561 * gst/gstindexfactory.c: (gst_index_factory_get_type):
2562 * gst/gstminiobject.c: (gst_mini_object_get_type):
2563 * gst/gstpad.c: (gst_pad_get_type):
2564 * gst/gstsegment.c: (gst_segment_get_type):
2565 * gst/gststructure.c: (gst_structure_get_type):
2566 * gst/gstsystemclock.c: (gst_system_clock_get_type):
2567 * gst/gsttask.c: (gst_task_get_type), (gst_task_join):
2569 Help compiler with type registration.
2571 * plugins/elements/gstqueue.c: (gst_queue_handle_sink_event):
2574 2006-02-27 Tim-Philipp Müller <tim at centricular dot net>
2576 * plugins/elements/gsttypefindelement.c:
2577 (gst_type_find_element_handle_event):
2578 When we get an EOS event and have not found a type yet
2579 (most likely because we had not yet accumulated
2580 TYPE_FIND_MIN_SIZE of data yet), try to determine the
2581 type given the data we have so far. Fixes typefinding
2582 for very short streams again, most notably quicktime
2583 redirections as used on Apple's trailer site (#331701).
2585 2006-02-27 Tim-Philipp Müller <tim at centricular dot net>
2587 * libs/gst/base/gsttypefindhelper.c: (type_find_factory_rank_cmp),
2588 (gst_type_find_helper):
2589 Try typefinding factories with the highest rank first.
2591 2006-02-27 Tim-Philipp Müller <tim at centricular dot net>
2593 * docs/libs/gstreamer-libs-docs.sgml:
2594 * docs/libs/gstreamer-libs-sections.txt:
2595 * libs/gst/base/gsttypefindhelper.c:
2596 Add section for typefind helper and add documentation
2597 for the old and the new function.
2599 2006-02-27 Tim-Philipp Müller <tim at centricular dot net>
2601 * libs/gst/base/gsttypefindhelper.c: (buf_helper_find_peek),
2602 (buf_helper_find_suggest), (type_find_factory_rank_cmp),
2603 (gst_type_find_helper_for_buffer):
2604 * libs/gst/base/gsttypefindhelper.h:
2605 New API: gst_type_find_helper_for_buffer() (#332723).
2607 2006-02-27 Michael Smith <msmith@fluendo.com>
2609 Patch by: Loïc Minier
2613 * docs/slides/Makefile.am:
2614 prevent CVS directories getting disted.
2616 2006-02-27 Tim-Philipp Müller <tim at centricular dot net>
2618 * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref):
2619 Use the REFCOUNTING category for caps refcounting.
2621 2006-02-26 Tim-Philipp Müller <tim at centricular dot net>
2623 * plugins/elements/gsttypefindelement.c: (stop_typefinding):
2624 This should be 0 not GST_CLOCK_TIME_NONE (see #331701).
2626 2006-02-26 Tim-Philipp Müller <tim at centricular dot net>
2628 * plugins/elements/gsttypefindelement.c:
2629 (gst_type_find_element_activate):
2630 Use gst_pad_check_pull_range() before _activate_pull()
2631 to avoid unnecessary open/close (see #331690).
2633 2006-02-24 Tim-Philipp Müller <tim at centricular dot net>
2636 Docs enhancement: make it crystal clear what the
2637 gst_pad_add_*_probe() callbacks should look like.
2639 2006-02-24 Tim-Philipp Müller <tim at centricular dot net>
2641 * libs/gst/base/gstbasesrc.c:
2642 Document how applications can stop recording from
2643 live sources (see #330996).
2645 2006-02-23 Tim-Philipp Müller <tim at centricular dot net>
2647 * tests/check/Makefile.am:
2648 * tests/check/libs/basesrc.c: (eos_event_counter),
2649 (basesrc_eos_events_pull), (basesrc_eos_events_push),
2650 (basesrc_eos_events_push_live_op), (basesrc_eos_events_pull_live_op),
2651 (gst_basesrc_suite), (main):
2652 ... and add some tests for the base source EOS stuff.
2654 2006-02-23 Tim-Philipp Müller <tim at centricular dot net>
2656 * tests/check/gst/gstutils.c: (test_buffer_probe_n_times):
2657 Test case originally showed the problem fixed below,
2658 but was then amended. Add checks back at the place
2659 where they used to be.
2661 2006-02-23 Tim-Philipp Müller <tim at centricular dot net>
2663 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
2664 (gst_base_src_init), (gst_base_src_loop),
2665 (gst_base_src_activate_push), (gst_base_src_activate_pull),
2666 (gst_base_src_change_state):
2667 * libs/gst/base/gstbasesrc.h:
2668 Don't unconditionally send EOS when going from PAUSED to
2669 READY state, esp. make sure we don't send two EOS events
2670 in some cases (e.g. one when reaching EOS and one when
2671 going from PAUSED to READY). Also, we don't want to send
2672 EOS events when operating in pull mode. However, we do
2673 want to send an EOS event when shutting down a live
2674 source explicitly, for example (fixes #330996).
2676 2006-02-23 Tim-Philipp Müller <tim at centricular dot net>
2678 * plugins/elements/gstfilesrc.c: (gst_file_src_create_read):
2679 Update src->read_position after a seek when not using mmap.
2680 Fixes #332277, patch by: Renchi Raju <renchi gmail com>
2682 2006-02-21 Jan Schmidt <thaytan@mad.scientist.com>
2688 Make things work with --disable-parse as they do with
2689 --disable-load-save - the symbols involved disappear, but the
2690 header is still installed and GST_DISABLE_PARSE is included via
2693 2006-02-20 Julien MOUTTE <julien@moutte.net>
2695 * libs/gst/base/gstbasetransform.c:
2696 (gst_base_transform_change_state): Fix a stupid bug. I was
2697 sure I compiled that.
2699 2006-02-20 Julien MOUTTE <julien@moutte.net>
2701 * gst/gstpad.c: (gst_pad_set_blocked_async):
2702 * gst/gstutils.c: (gst_pad_add_data_probe),
2703 (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
2704 (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
2705 (gst_pad_remove_buffer_probe): Make those function act on the
2706 ghostpad target when it's a ghostpad. (Closes #331727)
2708 2006-02-20 Julien MOUTTE <julien@moutte.net>
2710 * libs/gst/base/gstbasetransform.c:
2711 (gst_base_transform_change_state): Make basetransform reusable.
2714 2006-02-20 Jan Schmidt <thaytan@mad.scientist.com>
2716 * docs/random/release:
2717 Move the current documentation of how to do a release to the top
2720 * gst/gstbin.c: (gst_bin_class_init),
2721 (gst_bin_handle_message_func):
2722 Allow multiple state-recalculation threads. (Closes #328873)
2724 2006-02-19 Julien MOUTTE <julien@moutte.net>
2726 * gst/gstinfo.h: Add GST_STR_NULL to the second string.
2727 * gst/gstpad.c: (gst_pad_set_event_function),
2728 (gst_pad_set_query_function), (gst_pad_set_query_type_function),
2729 (gst_pad_set_getcaps_function): GST_DEBUG_PAD_NAME evaluates to
2730 2 strings. You can't use the STR_NULL macro on that.
2732 2006-02-19 Sebastien Moutte <sebastien@moutte.net>
2734 * gst/gstpad.c: (gst_pad_set_event_function),
2735 (gst_pad_set_query_function), (gst_pad_set_query_type_function),
2736 (gst_pad_set_getcaps_function)
2737 * gst/parse/grammar.y: (gst_parse_found_pad), (gst_parse_perform_delayed_link)
2738 Fixed NULL pointer used in GST_CAT_DEBUG using GST_STR_NULL macro
2739 So now, we can use --gst-debug-level=5 on Windows
2740 * win32/common/libgstcontroller.def:
2741 Added export of gst_controller_init
2742 * win32/vs6/libgstcontroller.dsp:
2743 Fixed Release post build configuration
2745 2006-02-17 Wim Taymans <wim@fluendo.com>
2747 * tests/check/gst/gstquery.c: (GST_START_TEST):
2748 Added another check.
2750 2006-02-15 Tim-Philipp Müller <tim at centricular dot net>
2752 * plugins/elements/gsttypefindelement.c: (find_peek):
2753 We can do peeks at non-zero offsets, as long as they
2754 fall within the buffer we have.
2756 2006-02-15 Jan Schmidt <thaytan@mad.scientist.com>
2758 * tests/check/Makefile.am:
2759 * tests/check/pipelines/parse-launch.c: (setup_pipeline),
2760 (expected_fail_pipe), (check_pipeline_runs), (GST_START_TEST),
2761 (parse_suite), (main):
2762 Add testsuite for parse launch syntax
2764 2006-02-14 Tim-Philipp Müller <tim at centricular dot net>
2766 * plugins/elements/gsttypefindelement.c:
2767 (gst_type_find_element_chain):
2768 When typefinding is unsuccessful in the chain function, don't
2769 error out immediately. Only error out with NO_CAPS_FOUND if
2770 the amount of data is at least MAX_TYPEFIND_SIZE bytes,
2771 otherwise simply wait for more data so we can try typefinding
2772 again with more data later. Also, don't attempt to typefind
2773 if we have less than MIN_TYPEFIND_SIZE data available. Overall,
2774 this should improve typefinding from network sources where the
2775 size of the first buffer can be somewhat random.
2777 2006-02-14 Wim Taymans <wim@fluendo.com>
2779 * docs/gst/gstreamer-sections.txt:
2780 * gst/gstpadtemplate.c:
2781 * gst/gstpadtemplate.h:
2782 Fix padtemplate docs, fixes #328805.
2784 2006-02-14 Wim Taymans <wim@fluendo.com>
2786 * tools/gst-launch.c: (main):
2787 NO_PREROLL is not an ERROR so don't send confusing messages
2790 2006-02-14 Wim Taymans <wim@fluendo.com>
2792 Patch by: Torsten Schoenfeld
2794 * gst/gstregistry.c: (gst_registry_get_default),
2795 (_gst_registry_cleanup):
2796 Protect default registry with lock and ref/sink it.
2799 2006-02-14 Wim Taymans <wim@fluendo.com>
2802 * gst/gstquery.c: (gst_query_list_add_format),
2803 (gst_query_set_formatsv), (gst_query_parse_formats_length),
2804 (gst_query_parse_formats_nth):
2805 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_sync_times):
2808 2006-02-14 Wim Taymans <wim@fluendo.com>
2810 * docs/gst/gstreamer-sections.txt:
2811 Reworked query docs.
2813 * gst/gstquery.c: (gst_query_new_formats),
2814 (gst_query_list_add_format), (gst_query_set_formats),
2815 (gst_query_set_formatsv), (gst_query_parse_formats_length),
2816 (gst_query_parse_formats_nth):
2818 Flesh out formats query, added some new methods.
2819 Fix part of #324398.
2821 * tests/check/gst/gstquery.c: (GST_START_TEST), (gstquery_suite):
2822 Added query creation tests.
2824 2006-02-14 Jan Schmidt <thaytan@mad.scientist.com>
2826 * gst/gstpad.c: (fixate_value):
2827 Add a default fixation for fraction lists.
2829 2006-02-13 Wim Taymans <wim@fluendo.com>
2831 * gst/gsttask.c: (gst_task_init), (gst_task_func),
2832 (gst_task_set_lock), (gst_task_start), (gst_task_pause),
2835 Detect and warn for obvious deadlocks. fixes #320340
2836 Fix error case where lock was not released.
2838 * tests/check/Makefile.am:
2839 * tests/check/gst/gsttask.c: (task_func2), (GST_START_TEST),
2840 (task_func), (gst_element_suite), (main):
2843 2006-02-13 Wim Taymans <wim@fluendo.com>
2845 * docs/gst/gstreamer-sections.txt:
2847 Add new functions to docs.
2849 2006-02-13 Wim Taymans <wim@fluendo.com>
2851 * docs/design/part-TODO.txt:
2852 Updated TODO list, basesrc supports seeking to non-bytes
2855 * docs/design/part-element-sink.txt:
2858 * gst/gstbin.c: (bin_replace_message),
2859 (gst_bin_handle_message_func):
2860 * gst/gstbus.c: (gst_bus_post), (gst_bus_pop):
2861 * gst/gstevent.c: (gst_event_finalize):
2862 * gst/gstpad.c: (gst_pad_event_default_dispatch),
2863 (gst_pad_send_event):
2864 Use shiny new _TYPE_NAME macros.
2866 * libs/gst/base/gstbasesrc.c: (gst_base_src_get_range):
2867 Move debug statement up.
2869 * gst/gstelement.c: (gst_element_set_locked_state):
2872 2006-02-13 Tim-Philipp Müller <tim at centricular dot net>
2874 * docs/gst/gstreamer-sections.txt:
2877 New API: add GST_MESSAGE_TYPE_NAME and GST_QUERY_TYPE_NAME
2878 macros (#330906). Also, document the already existing
2879 GST_QUERY_TYPE macro.
2881 2006-02-13 Wim Taymans <wim@fluendo.com>
2883 * tests/check/gst/gstutils.c: (data_probe), (buffer_probe),
2884 (event_probe), (GST_START_TEST):
2885 Only events up to the pipeline EOS are counted, there are
2886 some more when going to NULL currently which we don't care
2889 2006-02-13 Wim Taymans <wim@fluendo.com>
2891 * gst/gstpad.c: (gst_pad_send_event):
2892 Correctly check flushing and emit probes. fixes #330125
2894 2006-02-10 Andy Wingo <wingo@pobox.com>
2896 * gst/gstbus.c (gst_bus_class_init): Declare our private data
2898 (gst_bus_init): Cache the location of the private data in the
2900 (gst_bus_enable_sync_message_emission)
2901 (gst_bus_disable_sync_message_emission): Implement new public
2903 (gst_bus_post): Emit the sync-message signal if the user asked for
2906 * gst/gstbus.h (GstBus): Use a padding pointer to cache the
2907 location of the bus-private structure.
2908 (gst_bus_enable_sync_message_emission)
2909 (gst_bus_disable_sync_message_emission): API addition
2911 2006-02-10 Jan Schmidt <thaytan@mad.scientist.com>
2913 Patch by: Vincent Torri
2915 * docs/pwg/building-boiler.xml:
2916 PWG patch from #326800
2918 2006-02-09 Tim-Philipp Müller <tim at centricular dot net>
2922 * docs/design/Makefile.am:
2925 2006-02-08 Jan Schmidt <thaytan@mad.scientist.com>
2930 === release 0.10.3 ===
2932 2006-02-08 Jan Schmidt <thaytan@mad.scientist.com>
2935 releasing 0.10.3, "Like a virgin"
2937 2006-02-08 Jan Schmidt <thaytan@mad.scientist.com>
2940 2nd prerelease of 0.10.3
2941 Bump libtool versioning.
2943 2006-02-07 Andy Wingo <wingo@pobox.com>
2945 * libs/gst/base/gstcollectpads.c (gst_collect_pads_chain): Only
2946 update last_stop if we're in TIME format and the timestamp is
2949 * libs/gst/base/gstcollectpads.c (gst_collect_pads_event)
2950 * libs/gst/base/gstbasetransform.c (gst_base_transform_eventfunc):
2951 * libs/gst/base/gstbasesink.c (gst_base_sink_configure_segment):
2952 If we get a new newsegment with a different format, adapt
2955 * gst/gstclock.c (gst_clock_set_calibration): Accept a numerator
2956 of 0. Not a problem, really.
2958 * libs/gst/base/gstbasesink.c (gst_base_sink_chain_unlocked): Only
2961 2006-02-06 Jan Schmidt <thaytan@mad.scientist.com>
2966 2006-02-06 Sebastien Moutte <sebastien@moutte.net>
2969 project files updated to the default vs7 configuration
2970 * win32/common/libgstbase.def:
2971 * win32/common/libgstreamer.def:
2973 removed empty lines,
2974 sorted all exported symbols alphabetically
2975 * win32/common/dirent.c:
2976 * win32/common/dirent.h:
2977 * win32/common/gchar.h:
2978 use windows line end.
2980 2006-02-06 Tim-Philipp Müller <tim at centricular dot net>
2982 * libs/gst/base/gstbasesrc.c: (gst_base_src_change_state):
2983 Send EOS event when stopping.
2985 2006-02-06 Tim-Philipp Müller <tim at centricular dot net>
2988 Tell folks what to do if the plugin-foobar.xml file
2989 hasn't been generated for a newly-added plugin.
2991 2006-02-05 Julien MOUTTE <julien@moutte.net>
2993 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_finalize),
2994 (gst_collect_pads_add_pad), (gst_collect_pads_remove_pad),
2995 (gst_collect_pads_start), (gst_collect_pads_stop),
2996 (gst_collect_pads_event): Collectpads now holds a reference
2997 to the GstPad that was added. Indeed we don't want to look
2998 at pads that might just go away with no warning...
3000 2006-02-05 Julien MOUTTE <julien@moutte.net>
3002 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_add_pad),
3003 (gst_collect_pads_start), (gst_collect_pads_stop),
3004 (gst_collect_pads_event), (gst_collect_pads_chain):
3005 * libs/gst/base/gstcollectpads.h: Handle flush. Adapted from
3006 Mark Nauwelaerts's patch on bug #328491.
3008 2006-02-04 Tim-Philipp Müller <tim at centricular dot net>
3010 * tests/check/gst/gstutils.c: (test_parse_bin_from_description),
3012 Add some simple tests for gst_parse_bin_from_description() and
3013 gst_bin_find_unconnected_pad() (#329069).
3015 2006-02-04 Tim-Philipp Müller <tim at centricular dot net>
3017 * tools/gst-launch.c: (event_loop), (main):
3018 Catch errors during preroll (#320084).
3020 2006-02-03 Tim-Philipp Müller <tim at centricular dot net>
3022 * plugins/elements/gsttypefindelement.c:
3023 (gst_type_find_element_activate):
3024 Post TYPE_NOT_FOUND error message when typefinding
3025 is unsuccessful in the activate function as well.
3027 2006-02-02 Wim Taymans <wim@fluendo.com>
3029 * docs/design/part-element-sink.txt:
3032 2006-02-02 Wim Taymans <wim@fluendo.com>
3034 * libs/gst/base/gstbasesink.c: (gst_base_sink_do_sync),
3035 (gst_base_sink_render_object),
3036 (gst_base_sink_queue_object_unlocked):
3037 Only keep track of prerollable items when we are
3039 Before rendering after preroll, always check if we
3041 Added some more debugging.
3043 2006-02-02 Wim Taymans <wim@fluendo.com>
3045 * gst/gstelement.c: (gst_element_continue_state),
3046 (gst_element_set_state_func), (gst_element_change_state):
3047 Fixed #326576, been running this for quite some time with
3048 no regressions at all.
3050 2006-02-02 Wim Taymans <wim@fluendo.com>
3053 Added more suppressions
3055 2006-02-02 Wim Taymans <wim@fluendo.com>
3057 * docs/design/part-element-sink.txt:
3060 * libs/gst/base/gstbasesink.c: (gst_base_sink_init),
3061 (gst_base_sink_finalize), (gst_base_sink_preroll_queue_flush),
3062 (gst_base_sink_configure_segment), (gst_base_sink_commit_state),
3063 (gst_base_sink_get_sync_times), (gst_base_sink_wait_clock),
3064 (gst_base_sink_do_sync), (gst_base_sink_render_object),
3065 (gst_base_sink_preroll_object),
3066 (gst_base_sink_queue_object_unlocked),
3067 (gst_base_sink_queue_object), (gst_base_sink_event),
3068 (gst_base_sink_chain_unlocked), (gst_base_sink_chain),
3069 (gst_base_sink_loop), (gst_base_sink_activate_pull),
3070 (gst_base_sink_get_position), (gst_base_sink_change_state):
3071 * libs/gst/base/gstbasesink.h:
3072 Totally refactored matching the design doc.
3073 Use two segments, one to clip incomming buffers and another to
3075 Handle queueing correctly, bypass the queue when playing.
3076 Make EOS cancelable.
3077 Handle errors correctly when operating in pull based mode.
3079 * tests/check/elements/fakesink.c: (GST_START_TEST),
3081 Added new check for sinks.
3083 2006-02-02 Wim Taymans <wim@fluendo.com>
3085 * gst/gstsegment.c: (gst_segment_clip):
3086 No reason to refuse to clip when start == -1
3088 2006-02-02 Stefan Kost <ensonic@users.sf.net>
3091 * docs/manual/intro-basics.xml:
3092 * docs/manual/intro-preface.xml:
3093 * docs/manual/manual.xml:
3094 * docs/pwg/advanced-dparams.xml:
3095 * docs/pwg/intro-basics.xml:
3096 * docs/pwg/intro-preface.xml:
3098 describe dparams (controller) for plugins
3099 unify docs a little more
3101 2006-02-02 Tim-Philipp Müller <tim at centricular dot net>
3103 * docs/gst/gstreamer-sections.txt:
3104 * gst/gstutils.c: (element_find_unconnected_pad),
3105 (gst_bin_find_unconnected_pad), (gst_parse_bin_from_description):
3107 Add new API: gst_parse_bin_from_description() and
3108 gst_bin_find_unconnected_pad() (#329069).
3110 2006-02-01 Stefan Kost <ensonic@users.sf.net>
3112 * docs/manual/README:
3113 uncover a nasty detail of the docs build
3115 2006-01-31 Wim Taymans <wim@fluendo.com>
3117 * gst/gstbin.c: (bin_remove_messages), (bin_query_duration_done):
3118 Don't cache duration messages if we're not going to use or
3121 2006-01-31 Stefan Kost <ensonic@users.sf.net>
3123 * docs/manual/advanced-dparams.xml:
3124 * docs/pwg/advanced-dparams.xml:
3128 * libs/gst/controller/lib.c: (gst_controller_init):
3131 2006-01-31 Thomas Vander Stichele <thomas at apestaart dot org>
3133 * gst/gstelement.c: (gst_element_message_full):
3134 also show file/line/func if no additional debug was given
3136 2006-01-31 Sebastien Moutte <sebastien@moutte.net>
3138 * win32/vs7/grammar.vcproj:
3139 activate copy of autogenerated files for Release mode
3141 2006-01-30 Sebastien Moutte <sebastien@moutte.net>
3143 * win32/common/libgstreamer.def:
3144 export gst_value_compare
3146 2006-01-30 Jan Schmidt <thaytan@mad.scientist.com>
3148 * plugins/elements/Makefile.am:
3149 * plugins/elements/gstelements.c:
3150 * plugins/elements/gstfdsink.c: (_do_init),
3151 (gst_fd_sink_base_init), (gst_fd_sink_class_init),
3152 (gst_fd_sink_init), (gst_fd_sink_dispose), (gst_fd_sink_query),
3153 (gst_fd_sink_render), (gst_fd_sink_check_fd), (gst_fd_sink_start),
3154 (gst_fd_sink_stop), (gst_fd_sink_unlock), (gst_fd_sink_update_fd),
3155 (gst_fd_sink_set_property), (gst_fd_sink_uri_get_type),
3156 (gst_fd_sink_uri_get_protocols), (gst_fd_sink_uri_get_uri),
3157 (gst_fd_sink_uri_set_uri), (gst_fd_sink_uri_handler_init):
3158 * plugins/elements/gstfdsink.h:
3159 Port fdsink to 0.10 (patch by Philippe Rouquier) (Fixes #325490)
3161 2006-01-30 Stefan Kost <ensonic@users.sf.net>
3163 * docs/manual/advanced-dparams.xml:
3165 * docs/manual/advanced-position.xml:
3166 * docs/manual/basics-init.xml:
3167 * docs/manual/manual.xml:
3168 * docs/manual/titlepage.xml:
3170 * docs/pwg/titlepage.xml:
3171 cleanup xml (more to come)
3172 * libs/gst/controller/gstcontroller.c:
3175 2006-01-30 Sebastien Moutte <sebastien@moutte.net>
3177 * win32/vs6/grammar.dsp:
3178 add autogen of gstmarshal.c,h for Release mode
3180 2006-01-30 Wim Taymans <wim@fluendo.com>
3182 * libs/gst/base/gstbasesink.c: (gst_base_sink_init),
3183 (gst_base_sink_preroll_queue_empty), (gst_base_sink_commit_state),
3184 (gst_base_sink_handle_object), (gst_base_sink_event),
3185 (gst_base_sink_is_prerolled), (gst_base_sink_wait),
3186 (gst_base_sink_do_sync), (gst_base_sink_handle_event),
3187 (gst_base_sink_handle_buffer), (gst_base_sink_set_flushing),
3188 (gst_base_sink_deactivate), (gst_base_sink_activate),
3189 (gst_base_sink_activate_pull), (gst_base_sink_get_position),
3190 (gst_base_sink_query), (gst_base_sink_change_state):
3191 Basesink cleanups, remove some old code.
3192 Handle the case where a subclass can preroll in the render
3193 method (mostly audiosinks).
3195 Remove some locks around variables that are now protected
3196 with the PREROLL_LOCK (clock_id, flushing, ..).
3197 Optimize position query some more, do correct locking.
3198 Remove old code to push queue in state change, this is not
3199 needed anymore since preroll blocks on all prerollable items
3201 Almost implemented as described in design doc.
3203 2006-01-30 Wim Taymans <wim@fluendo.com>
3205 * tests/check/gst/gstbin.c: (GST_START_TEST):
3206 Wait for refcount to settle down before checking.
3208 2006-01-30 Wim Taymans <wim@fluendo.com>
3210 * docs/design/part-element-sink.txt:
3211 Pseudo code overview of desired sink behaviour regarding
3214 2006-01-29 Sebastien Moutte <sebastien@moutte.net>
3215 * win32/vs6/grammar.dsp:
3216 fix some bugs in Release mode for autogenerated files
3218 2006-01-29 Sebastien Moutte <sebastien@moutte.net>
3219 * win32/common/libgstbase.def:
3220 * win32/common/libgstreamer.def:
3221 export some new symbols: gst_base_src_set_format,
3222 gst_iterator_next, gst_structure_set_valist
3224 2006-01-29 Julien MOUTTE <julien@moutte.net>
3226 * gst/gstghostpad.c: (gst_proxy_pad_set_target_unlocked):
3227 Set pad functions unconditionally. Fixes #329105.
3229 2006-01-29 Sebastien Moutte <sebastien@moutte.net>
3231 add vs8 project files created by Sergey Scobich
3233 2006-01-28 Jan Schmidt <thaytan@mad.scientist.com>
3235 * gst/gstutils.c: (gst_element_unlink_pads):
3236 Don't leak pad references.
3238 * tests/check/elements/fakesink.c: (GST_START_TEST):
3239 * tests/check/generic/sinks.c: (GST_START_TEST):
3240 * tests/check/generic/states.c: (GST_START_TEST):
3241 * tests/check/gst/gstbin.c: (GST_START_TEST):
3242 * tests/check/gst/gstcaps.c: (GST_START_TEST):
3243 * tests/check/gst/gstelement.c: (GST_START_TEST):
3244 * tests/check/gst/gstghostpad.c: (GST_START_TEST):
3245 * tests/check/gst/gstiterator.c: (GST_START_TEST):
3246 * tests/check/gst/gstvalue.c: (GST_START_TEST):
3247 Fix a bunch of leaks. Make generic/sinks.c
3248 use a bit less cpu by slowing the buffer rate
3249 between fakesrc and fakesink.
3251 2006-01-27 Stefan Kost <ensonic@users.sf.net>
3253 * gst/gstelement.c: (gst_element_send_event):
3256 * gst/gstiterator.c:
3257 * gst/gstiterator.h:
3258 * gst/gstpad.c: (gst_pad_send_event):
3259 * gst/gststructure.c:
3263 * libs/gst/base/gstadapter.c:
3264 doc fixes, to link to function, just write gst_cool_function(), don't
3267 2006-01-27 Jan Schmidt <thaytan@mad.scientist.com>
3269 * plugins/elements/gsttee.c: (gst_tee_do_push),
3270 (gst_tee_handle_buffer):
3271 Always prefer an actual return value from a src
3272 pad in place of NOT_LINKED. This means we return
3273 WRONG_STATE when all src pads are WRONG_STATE
3274 instead of NOT_LINKED.
3276 Lock when replacing the last message to prevent
3277 racing with the get_property method.
3281 2006-01-27 Jan Schmidt <thaytan@mad.scientist.com>
3283 * tests/check/Makefile.am:
3284 * tests/check/gst/gstquery.c: (GST_START_TEST), (gstquery_suite),
3286 Add a very simple check that should have caught the memleak I fixed
3287 last night (if not for the slice allocator hiding it)
3289 2006-01-27 Jan Schmidt <thaytan@mad.scientist.com>
3291 * gst/gstbin.c: (gst_bin_dispose), (gst_bin_provide_clock_func),
3292 (gst_bin_remove_func), (gst_bin_handle_message_func),
3293 (bin_query_duration_fold), (bin_query_generic_fold):
3294 Clean up references to the clock provider when disposed or when
3295 handling a clock-lost message from it.
3297 Unref sinks when performing a query via gst_iterator_fold, as the
3298 gst_bin_iterate_sinks iterator refs each item. (Fixes #323874)
3300 * gst/gstclock.c: (gst_clock_class_init), (gst_clock_dispose),
3301 (gst_clock_set_master):
3302 Drop our reference to the master clock, if any, when we are disposed.
3304 * gst/gsttypefindfactory.c: (gst_type_find_factory_dispose):
3305 Chain up in dispose.
3307 2006-01-26 Wim Taymans <wim@fluendo.com>
3309 * libs/gst/base/gstbasesrc.c: (gst_base_src_get_range):
3312 2006-01-26 Julien MOUTTE <julien@moutte.net>
3314 * plugins/elements/gsttee.c: (gst_tee_do_push),
3315 (gst_tee_handle_buffer): Apply patch from #328715. Tee now
3316 handles pad being NOT_LINKED or in WRONG_STATE.
3318 2006-01-26 Stefan Kost <ensonic@users.sf.net>
3323 2006-01-26 Stefan Kost <ensonic@users.sf.net>
3326 remove obsolete entry
3328 2006-01-26 Stefan Kost <ensonic@users.sf.net>
3330 * docs/gst/gstreamer-sections.txt:
3331 * gst/gstbin.c: (bin_element_is_src), (src_iterator_filter),
3332 (gst_bin_iterate_sources), (gst_bin_send_event):
3334 * gst/gstelement.c: (gst_element_send_event):
3336 * gst/gstpad.c: (gst_pad_send_event):
3337 added code for downstream events, reviewed docs in gstevent.c
3339 2006-01-25 Julien MOUTTE <julien@moutte.net>
3341 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_position):
3342 We only query position using the clock in the playing state.
3343 Query peer in the other cases.
3344 * win32/common/config.h: Updates.
3346 2006-01-24 Wim Taymans <wim@fluendo.com>
3348 * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
3349 A clock entry that is scheduled for the exact time of the
3350 clock is still in time.
3352 * libs/gst/base/gstbasesink.c: (gst_base_sink_handle_object),
3353 (gst_base_sink_do_sync):
3354 Add some more debug info.
3356 2006-01-23 Sebastien Moutte <sebastien@moutte.net>
3359 Add new vs7 project files and solution.
3361 2006-01-23 Sebastien Moutte <sebastien@moutte.net>
3364 all files removed as they were out-dated.
3366 2006-01-20 Thomas Vander Stichele <thomas at apestaart dot org>
3368 * docs/random/release:
3370 * gst/gstbin.c: (gst_bin_init):
3371 * gst/gstbus.c: (gst_bus_new):
3373 * gst/gstpipeline.c: (gst_pipeline_init):
3374 use gst_bus_new(), improve logging, fix docs
3375 * win32/common/config.h:
3376 update for cvs build
3378 2006-01-20 Thomas Vander Stichele <thomas at apestaart dot org>
3381 up required version of automake to 1.7
3383 2006-01-20 Sebastien Moutte <sebastien@moutte.net>
3385 * win32/common/libgstreamer.def:
3386 export gst_buffer_is_metadata_writable
3388 2006-01-20 Tim-Philipp Müller <tim at centricular dot net>
3390 * docs/gst/gstreamer-sections.txt:
3392 Add gst_event_replace() (#327001)
3394 2006-01-20 Wim Taymans <wim@fluendo.com>
3396 * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
3397 Make it actually compile too..
3399 2006-01-20 Wim Taymans <wim@fluendo.com>
3402 Clarify behaviour of _is_equal() when passing NULL parameters.
3404 * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
3406 Cleanups. Don't unref NULL caps.
3407 When setting the same caps, protect caps of the pad with
3409 Use full functionality of _is_equal() when comparing caps.
3411 2006-01-20 Jan Schmidt <thaytan@mad.scientist.com>
3413 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_is_collected):
3414 Don't loop infinitely if there are no buffers to present. Partially
3415 fixes #327197, but collectpads is just broken for reusing elements
3416 to do multiple encodes atm.
3418 2006-01-20 Jan Schmidt <thaytan@mad.scientist.com>
3420 * tools/gst-inspect.c: (print_element_features):
3421 * tools/gst-xmlinspect.c: (main):
3422 URL_HANDLER is not a plugin feature we can search for in
3425 2006-01-19 Edward Hervey <edward@fluendo.com>
3427 * gst/gstelement.c: (gst_element_pads_activate):
3428 When activating, do src pads first, then sink pads.
3429 When de-activating, do sink pads first, then src pads.
3431 2006-01-19 Jan Schmidt <thaytan@mad.scientist.com>
3433 * docs/gst/gstreamer-sections.txt:
3434 Add gst_index_add_associationv to the docs
3436 2006-01-19 Jan Schmidt <thaytan@mad.scientist.com>
3441 * plugins/elements/gstqueue.c: (gst_queue_handle_sink_event),
3442 (gst_queue_chain), (gst_queue_push_one), (gst_queue_loop):
3443 Do some refactoring. Doesn't actually change functionality,
3444 but makes landing the DRAIN event easier later.
3446 2006-01-19 Tim-Philipp Müller <tim at centricular dot net>
3448 * docs/pwg/advanced-scheduling.xml:
3449 Update from 0.9.x to 0.10 API and make example a bit
3452 2006-01-19 Jan Schmidt <thaytan@mad.scientist.com>
3454 * docs/gst/gstreamer-sections.txt:
3455 Add gst_buffer_(is|make)_metadata_writable methods.
3457 2006-01-19 Jan Schmidt <thaytan@mad.scientist.com>
3459 * docs/design/part-sparsestreams.txt:
3460 Update sparse streams doc, hopefully for greater clarity
3462 2006-01-18 Jan Schmidt <thaytan@mad.scientist.com>
3464 * docs/design/part-events.txt:
3465 Remove mention of FILLER events.
3468 * docs/design/part-sparsestreams.txt:
3469 Write some things about using NEWSEGMENT to keep sparse streams
3472 2006-01-18 Tim-Philipp Müller <tim at centricular dot net>
3474 * gst/gstbin.c: (gst_bin_dispose):
3475 Guard gst_object_unref call against a NULL object (dispose
3476 can theoretically be called multiple times).
3478 2006-01-18 Wim Taymans <wim@fluendo.com>
3480 * gst/gstbin.c: (gst_bin_element_set_state):
3481 * gst/gstclock.c: (gst_clock_id_wait):
3482 Added some more debug info.
3484 * libs/gst/base/gstadapter.c:
3487 * libs/gst/base/gstbasesink.c: (gst_base_sink_handle_object),
3488 (gst_base_sink_do_sync), (gst_base_sink_chain):
3489 Added some comments.
3491 2006-01-18 Wim Taymans <wim@fluendo.com>
3493 * tests/check/Makefile.am:
3494 * tests/check/elements/fakesink.c: (chain_async_buffer),
3495 (chain_async), (chain_async_return), (GST_START_TEST),
3496 (fakesink_suite), (main):
3497 Added fakesink test that checks prerolling and clipping
3500 * tests/check/gst/gstutils.c: (GST_START_TEST):
3501 Make check run faster so that buildbots don't timeout.
3503 2006-01-18 Wim Taymans <wim@fluendo.com>
3505 * libs/gst/base/gstbasesink.c: (gst_base_sink_handle_object),
3506 (gst_base_sink_do_sync):
3508 When the sink finishes blocking on the preroll buffer, it can
3509 immediatly render it instead of rendering when the next buffer
3512 2006-01-18 Wim Taymans <wim@fluendo.com>
3514 * libs/gst/base/gstbasesink.c: (gst_base_sink_set_property),
3515 (gst_base_sink_get_property), (gst_base_sink_do_sync),
3516 (gst_base_sink_chain):
3518 GST_ELEMENT_CLOCK and sync are protected with LOCK.
3519 Don't store _last_stop if the buffer is dropped.
3521 2006-01-18 Tim-Philipp Müller <tim at centricular dot net>
3523 * plugins/elements/gsttypefindelement.c:
3524 (gst_type_find_element_class_init):
3525 'have-type' signal needs to be G_SIGNAL_RUN_FIRST, as it is the
3526 object method handler that sets the caps on the pad and we want
3527 that to happen before we emit the signal (fixes e.g. feeding a
3528 plain text file to decodebin).
3530 2006-01-18 Christian Schaller <Christian@fluendo.com>
3532 * gst/gstplugin.c: Add MPL and Proprietary as license options
3534 2006-01-18 Andy Wingo <wingo@pobox.com>
3536 * gst/gstindex.h (gst_index_add_associationv): Add to header. The
3537 symbol was exported before, it appears this was just an oversight.
3539 Patch by: Torsten Schoenfeld <kaffeetisch at gmx.de>
3541 * gst/gstindex.c (gst_index_add_associationv): Changed int in
3542 prototype to gint. OK since this prototype was not in the header.
3544 2006-01-17 Andy Wingo <wingo@pobox.com>
3546 * gst/gstregistry.c (_gst_registry_remove_cache_plugins): Lock the
3547 registry while we remove plugins.
3549 * tools/gst-inspect.c (print_element_info): Don't unref the
3550 factory arg, that should be the responsibility of whatever code
3551 received the ref. Fixes a double-free when called from
3552 print_element_list via gst-inspect-0.10 -a. Fixes #327324.
3553 (main): Unref the factory if we have one.
3554 (print_element_list): No change -- relies on the
3555 plugin_feature_list_free to free the list of features.
3557 2006-01-17 Jan Schmidt <thaytan@mad.scientist.com>
3559 * gst/gstbuffer.c: (gst_buffer_is_metadata_writable),
3560 (gst_buffer_make_metadata_writable):
3562 * libs/gst/base/gstbasetransform.c:
3563 (gst_base_transform_prepare_output_buf):
3564 * plugins/elements/gstcapsfilter.c: (gst_capsfilter_prepare_buf):
3565 * tests/check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
3566 Replace gst_buffer_(make|is)_metadata_writable patch now
3567 that the release is out.
3569 2006-01-17 Andy Wingo <wingo@pobox.com>
3571 * gst/gstregistry.c: Reflow design comment. Update so as to speak
3572 in the present tense without reference to versions.
3574 * gst/gstregistry.c (gst_registry_add_plugin)
3575 (gst_registry_remove_plugin, gst_registry_remove_feature)
3576 (gst_registry_find_feature, gst_registry_get_feature_list)
3577 (gst_registry_get_plugin_list, gst_registry_lookup_feature)
3578 (gst_registry_lookup, gst_registry_scan_path)
3579 (_gst_registry_remove_cache_plugins)
3580 (gst_registry_get_feature_list_by_plugin): Add argument
3583 === release 0.10.2 ===
3585 2006-01-16 Thomas Vander Stichele <thomas at apestaart dot org>
3588 releasing 0.10.2, "If man is five"
3590 2006-01-16 Jan Schmidt <thaytan@mad.scientist.com>
3594 * libs/gst/base/gstbasetransform.c:
3595 (gst_base_transform_prepare_output_buf):
3596 * plugins/elements/gstcapsfilter.c: (gst_capsfilter_prepare_buf):
3597 * tests/check/gst/gstbuffer.c: (gst_test_suite):
3598 Back out patch until after the release.
3600 2006-01-16 Jan Schmidt <thaytan@mad.scientist.com>
3602 * gst/gstminiobject.c:
3603 Spelling fix in docs.
3604 * ChangeLog - remove conflict indicator
3606 2006-01-16 Jan Schmidt <thaytan@mad.scientist.com>
3608 Reviewed By: Andy Wingo
3610 * gst/gstbuffer.c: (gst_buffer_is_metadata_writable),
3611 (gst_buffer_make_metadata_writable):
3613 Add gst_buffer_(is|make)_metadata_writable as analogues of
3614 gst_buffer_(is|make)_writable.
3616 * libs/gst/base/gstbasetransform.c:
3617 (gst_base_transform_prepare_output_buf):
3618 * plugins/elements/gstcapsfilter.c: (gst_capsfilter_prepare_buf):
3619 Use name gst_buffer_(is|make)_metadata_writable functions.
3621 * tests/check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
3622 Test gst_buffer_(is|make)_metadata_writable
3626 2006-01-14 Thomas Vander Stichele <thomas at apestaart dot org>
3628 * docs/manual/Makefile.am:
3629 don't do parallel make
3632 * win32/common/config.h.in:
3633 add generations for HOST_CPU and GST_MAJORMINOR
3634 * win32/common/config.h:
3635 commit generated result
3637 2006-01-13 Tim-Philipp Müller <tim at centricular dot net>
3639 * docs/manual/appendix-integration.xml:
3640 Update GNOME integration section to use gst_init_get_option_group()
3641 instead of the old popt stuff (#322911). Also, GNOME applications
3642 should now use gconf*sink and gconf*src instead of the old gconf
3645 2006-01-13 Stefan Kost <ensonic@users.sf.net>
3648 * docs/gst/gstreamer-docs.sgml:
3649 * docs/gst/gstreamer-sections.txt:
3650 * docs/libs/gstreamer-libs-sections.txt:
3651 add new API entries to the docs
3652 * libs/gst/controller/Makefile.am:
3653 * libs/gst/controller/gstcontroller.c:
3654 * libs/gst/controller/gstcontroller.h:
3655 * libs/gst/controller/gstcontrollerprivate.h:
3656 * libs/gst/controller/gsthelper.c:
3657 * libs/gst/controller/gstinterpolation.c:
3658 move private structs to private header
3660 gstreamer-0.7 -> gstreamer-0.10
3661 * tests/check/libs/struct_i386.h:
3662 remove private structs
3664 2006-01-13 Thomas Vander Stichele <thomas at apestaart dot org>
3666 * plugins/indexers/Makefile.am:
3667 Fixes as part of #317048
3669 2006-01-13 Thomas Vander Stichele <thomas at apestaart dot org>
3671 * plugins/indexers/Makefile.am:
3672 fix #316086 - compilation when mmap is missing
3674 2006-01-12 Sebastien Moutte <sebastien@moutte.net>
3676 * libs/gst/base/gstbasesink.c:
3677 *cur = (now - base) * basesink->segment.abs_rate + time; replaced by
3678 *cur = gst_guint64_to_gdouble(now - base) * basesink->segment.abs_rate + time; for vs6
3679 * win32/common/config.h:
3680 added some defines GST_MAJORMINOR and HOST_CPU
3681 * win32/common/libgstbase.def:
3682 * win32/common/libgstreamer.def:
3683 added some exported functions.
3685 2006-01-12 Stefan Kost <ensonic@users.sf.net>
3687 * libs/gst/controller/gstcontroller.c:
3688 (gst_controlled_property_set_interpolation_mode),
3689 (gst_controlled_property_new):
3690 * libs/gst/controller/gstcontroller.h:
3691 * libs/gst/controller/gstinterpolation.c:
3692 (interpolate_none_get_string_value_array):
3693 make G_TYPE_STRING controlable
3695 2006-01-12 Stefan Kost <ensonic@users.sf.net>
3698 * tools/gst-feedback.1.in:
3699 * tools/gst-inspect.1.in:
3700 * tools/gst-launch.1.in:
3701 * tools/gst-md5sum.1.in:
3702 * tools/gst-typefind.1.in:
3703 * tools/gst-xmlinspect.1.in:
3704 * tools/gst-xmllaunch.1.in:
3705 cleanup man-pages, remove reference to gst-register, document env-vars
3707 2006-01-12 Jan Schmidt <thaytan@mad.scientist.com>
3709 * gst/gstbuffer.c: (gst_buffer_span):
3710 gst_buffer_span should copy the timestamp of the first buffer
3711 if they were both originally overlapping subbuffers of the
3712 same parent, using the same logic as the 'slow copy' case.
3714 2006-01-11 Jan Schmidt <thaytan@mad.scientist.com>
3716 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_pop):
3717 Need to awaken ALL the pads when we pop a buffer, otherwise
3718 collectpads only works when there is 2 input streams.
3720 2006-01-11 Stefan Kost <ensonic@users.sf.net>
3722 * docs/random/ensonic/media-device-daemon.txt:
3725 fix doc example, add clarification
3726 * tools/gst-launch.1.in:
3727 add initial info about GST_PLUGIN_PATH, needs more work
3729 2006-01-11 Tim-Philipp Müller <tim at centricular dot net>
3731 * docs/manual/basics-bins.xml:
3732 * docs/manual/basics-elements.xml:
3733 * docs/manual/intro-basics.xml:
3734 Some more minor docs additions and updates.
3736 2006-01-11 Wim Taymans <wim@fluendo.com>
3738 * docs/manual/basics-bins.xml:
3739 * docs/manual/basics-elements.xml:
3740 Some small fixes as pointed out by Ser-ver on IRC.
3742 2006-01-10 Edward Hervey <edward@fluendo.com>
3744 * plugins/elements/gstidentity.c: (gst_identity_transform_ip):
3745 Set the buffer offset/offset_end to GST_CLOCK_TIME_NONE when using
3746 the single-segment mode.
3748 2006-01-10 Brian Cameron <brian dot cameron at sun dot com>
3750 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
3752 * libs/gst/base/gstbasesrc.c: (gst_base_src_init),
3753 (gst_base_src_perform_seek), (gst_base_src_send_event),
3754 (gst_base_src_set_property), (gst_base_src_get_property),
3755 (gst_base_src_loop), (gst_base_src_start),
3756 (gst_base_src_activate_push):
3757 * libs/gst/base/gstbasesrc.h:
3758 Name (private) union; makes Sun's Forte compiler happy (#324900).
3760 2006-01-09 Tim-Philipp Müller <tim at centricular dot net>
3763 gst-register is gone.
3765 2006-01-07 Thomas Vander Stichele <thomas at apestaart dot org>
3767 * gst/gstvalue.c: (_gst_value_initialize):
3768 make the G_TYPE_DATE instantiation work if debug is disabled
3770 2006-01-06 Tim-Philipp Müller <tim at centricular dot net>
3772 * gst/gstmessage.c: (gst_message_parse_tag),
3773 (gst_message_parse_error), (gst_message_parse_warning):
3774 Don't crash when return location for error/warning debug
3775 string is NULL; add fact that return locations can be
3776 NULL to docs where appropriate.
3778 2006-01-05 Wim Taymans <wim@fluendo.com>
3780 * gst/gstplugin.c: (gst_plugin_load_file):
3781 Replace strdup by g_strdup.
3783 2006-01-05 Thomas Vander Stichele <thomas at apestaart dot org>
3785 * docs/pwg/advanced-types.xml:
3788 2006-01-05 Thomas Vander Stichele <thomas at apestaart dot org>
3790 submitted by: Abel Cheung
3794 Added Chinese (traditional) translation
3796 2006-01-04 Wim Taymans <wim@fluendo.com>
3798 * docs/manual/basics-pads.xml:
3799 * docs/plugins/Makefile.am:
3800 * docs/plugins/gstreamer-plugins-docs.sgml:
3801 * docs/plugins/gstreamer-plugins-sections.txt:
3802 * docs/pwg/advanced-clock.xml:
3803 * docs/pwg/advanced-scheduling.xml:
3804 * docs/pwg/advanced-types.xml:
3805 * plugins/elements/gstfdsink.c:
3806 * plugins/elements/gstfdsrc.c:
3807 * plugins/elements/gstfdsrc.h:
3808 * plugins/elements/gstidentity.c: (gst_identity_class_init):
3809 * plugins/elements/gstidentity.h:
3810 * plugins/elements/gstqueue.h:
3811 * plugins/elements/gsttee.c:
3812 * plugins/elements/gsttee.h:
3813 * plugins/elements/gsttypefindelement.c:
3814 (gst_type_find_element_class_init):
3815 * plugins/elements/gsttypefindelement.h:
3816 Small updates to various docs.
3817 Added core plugins to docs.
3819 2006-01-03 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
3822 add a suppression for liboil's uninitialized variable
3824 2006-01-02 James Livingston <jrl at ids dot org dot au>
3826 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
3829 Add prototype for _get_type() function to GST_BOILERPLATE_FULL
3830 macro, so that gcc doesn't complain if the -Wmissing-prototypes
3831 compiler switch is being used (#325429).
3833 2005-12-29 Tim-Philipp Müller <tim at centricular dot net>
3835 * gst/gstbin.c: (gst_bin_query):
3836 Disable duration query caching in bins until it gets
3837 fixed (see #324807).
3839 2005-12-27 Tim-Philipp Müller <tim at centricular dot net>
3841 * tools/gst-inspect.c: (print_element_properties_info):
3842 Handle properties of POINTER and BOXED type.
3844 2005-12-27 Tim-Philipp Müller <tim at centricular dot net>
3846 * gst/gst.c: (init_post):
3847 Init tags stuff and some other things before loading
3848 any static plugins (there may be other static plugins
3849 than just the GStreamer ones, and they may want to
3850 register their own tags or formats or whatever, and
3851 preferably without segfaulting).
3853 * plugins/elements/gstqueue.c: (gst_queue_handle_src_query):
3854 Print at least a warning in the debug logs if we drop a
3855 query just because we don't know how to adjust the value
3856 in the particular format.
3858 2005-12-24 David Schleef <ds@schleef.org>
3860 * tools/gstreamer-completion:
3861 Replacement for gst-complete written in sh and sed. Only
3862 completes names of features, but that's 90% of what I want
3863 it for. Properties are not available in registry.xml. (Maybe
3866 === release 0.10.1 ===
3868 2005-12-23 Thomas Vander Stichele <thomas at apestaart dot org>
3871 releasing 0.10.1, "Nollaig chridheil"
3873 2005-12-22 Tim-Philipp Müller <tim at centricular dot net>
3876 Add missing quote, should be make ERROR_CFLAGS="".
3878 2005-12-20 Wim Taymans <wim@fluendo.com>
3880 * docs/design/part-trickmodes.txt:
3881 More documentation on trickmodes.
3883 2005-12-20 Edward Hervey <edward@fluendo.com>
3885 * gst/gstcaps.c: (gst_static_caps_get_type):
3887 API addition: GST_TYPE_STATIC_CAPS
3888 Added gpointer GType for GstStaticCaps so we can wrap them in bindings.
3889 * gst/gstpadtemplate.c: (gst_static_pad_template_get_type):
3890 * gst/gstpadtemplate.h:
3891 API addition: GST_TYPE_STATIC_PAD_TEMPLATE
3892 Added gpointer GType for GstStaticPadTemplate so we can wrap them in
3895 2005-12-18 Wim Taymans <wim@fluendo.com>
3897 * libs/gst/base/gstadapter.c:
3898 * libs/gst/base/gstadapter.h:
3899 * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init),
3900 (gst_base_sink_get_position):
3901 * libs/gst/base/gstbasesink.h:
3902 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
3903 (gst_base_src_default_query), (gst_base_src_default_do_seek),
3904 (gst_base_src_do_seek), (gst_base_src_perform_seek),
3905 (gst_base_src_send_event), (gst_base_src_update_length),
3906 (gst_base_src_get_range), (gst_base_src_loop),
3907 (gst_base_src_start):
3908 * libs/gst/base/gstbasesrc.h:
3909 * libs/gst/base/gstbasetransform.h:
3910 * libs/gst/base/gstcollectpads.h:
3911 * libs/gst/base/gstpushsrc.c:
3912 * libs/gst/base/gstpushsrc.h:
3913 * libs/gst/dataprotocol/dataprotocol.c:
3914 * libs/gst/dataprotocol/dataprotocol.h:
3915 * libs/gst/net/gstnetclientclock.h:
3916 * libs/gst/net/gstnettimeprovider.h:
3917 Documentation updates.
3919 2005-12-18 Tim-Philipp Müller <tim at centricular dot net>
3921 * docs/manual/basics-helloworld.xml:
3922 Remove superfluous closing bracket in helloworld example.
3924 2005-12-17 Tim-Philipp Müller <tim at centricular dot net>
3926 * tools/gst-launch.1.in:
3927 Update gst-launch man page; add a section with useful
3928 environment variables. Fixes #323882.
3930 2005-12-16 Stefan Kost <ensonic@users.sf.net>
3933 * gst/gst_private.h:
3934 change some char* into char[]
3936 2005-12-16 Wim Taymans <wim@fluendo.com>
3938 * gst/gstregistryxml.c: (load_feature):
3940 Don't use g_object_unref on GstObjects so that we avoid
3941 leaks on unsafe glibs.
3943 2005-12-16 Wim Taymans <wim@fluendo.com>
3945 * gst/gstbin.c: (gst_bin_recalc_state):
3948 2005-12-16 Wim Taymans <wim@fluendo.com>
3951 Added make forever target for check.
3953 2005-12-16 Thomas Vander Stichele <thomas at apestaart dot org>
3955 * gst/gst.c: (init_post):
3956 make the registry cache file HOST_CPU-dependent
3958 2005-12-16 Andy Wingo <wingo@pobox.com>
3960 * plugins/elements/gstbufferstore.c
3961 (gst_buffer_store_cleared_func): Pay attention to g_list_append
3964 * tests/check/gst/gstobject.c
3965 (test_fake_object_name_threaded_unique): Pay attention to
3966 g_list_sort return value.
3968 2005-12-16 Tim-Philipp Müller <tim at centricular dot net>
3970 * tools/gst-feedback-m.m:
3971 Update for 0.9/0.10 (fixes #323870).
3973 2005-12-15 Tim-Philipp Müller <tim at centricular dot net>
3975 * gst/gstminiobject.c: (gst_value_mini_object_lcopy):
3976 Fix lcopy for mini objects, the mini object needs to be ref'ed.
3978 * tests/check/gst/gstminiobject.c: (my_foo_init),
3979 (my_foo_get_property), (my_foo_set_property), (my_foo_class_init),
3980 (test_value_collection), (gst_mini_object_suite):
3981 Add test to ensure refcounts end up as expected when passing
3982 GstMiniObjects through g_object_get() and g_object_set().
3984 2005-12-14 Julien MOUTTE <julien@moutte.net>
3986 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_base_init),
3987 (gst_collect_pads_remove_pad), (gst_collect_pads_is_collected),
3988 (gst_collect_pads_event), (gst_collect_pads_chain): Refactoring
3989 of collectpads. This version removes a lot of races without
3990 touching API/ABI. Yay !
3992 2005-12-14 Jan Schmidt <thaytan@mad.scientist.com>
3994 * gst/gstpad.c: (gst_pad_activate_pull), (gst_pad_link_prepare):
3995 Don't allow activation of a srcpad in pull_range if it has no
3997 Change some debug statements to be a little clearer
3999 * plugins/elements/gsttypefindelement.c:
4000 (gst_type_find_handle_src_query):
4001 Check that we have a peer before executing queries thereupon.
4003 * tests/examples/metadata/read-metadata.c: (message_loop):
4004 Use gst_bus_pop instead of gst_bus_poll when we just want it to
4005 immediately return us any available message with 0 timeout.
4007 2005-12-12 Michael Smith <msmith@fluendo.com>
4009 * gst/gsttypefindfactory.c: (gst_type_find_factory_call_function):
4010 Don't unref factories after calling them.
4011 * libs/gst/base/gsttypefindhelper.c: (gst_type_find_helper):
4012 * plugins/elements/gsttypefindelement.c:
4013 (gst_type_find_element_chain):
4014 Free lists of factories after using them. Fixing typefinding memory
4017 2005-12-12 Stefan Kost <ensonic@users.sf.net>
4019 * gst/gstpluginfeature.c: (gst_plugin_feature_finalize),
4020 (gst_plugin_feature_load):
4021 more meaningful debug output
4023 * tests/Makefile.am:
4024 * tests/old/examples/Makefile.am:
4025 make make distcheck happy again
4027 2005-12-12 Tim-Philipp Müller <tim at centricular dot net>
4029 * plugins/elements/gsttypefindelement.c: (stop_typefinding):
4030 Catch the special case where we are operating chain-based,
4031 but the downstream peer pad has no chain function. Emit a
4032 custom error message in this case instead of letting the
4033 core generate one implying that this is some sort of core
4034 bug. It's not, it just means that whatever got plugged
4035 into the pipeline downstream when we announced the type
4036 can only operate pull-based, while our source can only
4037 operate push-based (e.g. http://foo/bar.mov ! qtdemux ! ...)
4038 Error string has not been marked for translation yet, as
4039 it probably needs some more work first.
4041 (gst_type_find_element_get_best_possibility):
4042 Add helper function to find the best of all available
4043 found possibilities that qualify given the min. threshold.
4045 (gst_type_find_element_handle_event):
4046 Fix the case where we get an EOS while still in TYPEFIND
4047 mode (we want to chose the best of all possible types,
4048 not just the first type that happens to be in our unsorted
4049 list of possible types).
4051 (gst_type_find_element_chain):
4052 Make sure we return GST_FLOW_ERROR when we errored out
4053 in stop_typefinding(); also, don't just find the best of
4054 all found type entries and then use the last examined
4055 type entry, but actually use the best entry.
4057 2005-12-12 Tim-Philipp Müller <tim at centricular dot net>
4059 * tests/examples/typefind/typefind.c: (type_found):
4060 * tests/examples/xml/runxml.c: (xml_loaded):
4061 More gcc4 fixes and a mem leak fix.
4063 2005-12-12 Stefan Kost <ensonic@users.sf.net>
4065 * tests/examples/xml/createxml.c: (object_saved):
4068 2005-12-12 Stefan Kost <ensonic@users.sf.net>
4070 * tests/Makefile.am:
4071 enable the examples even more
4073 2005-12-12 Andy Wingo <wingo@pobox.com>
4075 * libs/gst/net/gstnettimeprovider.c
4076 (gst_net_time_provider_class_init, gst_net_time_provider_init)
4077 (gst_net_time_provider_set_property)
4078 (gst_net_time_provider_get_property):
4079 API addition: Export "active" as a GObject property.
4080 (gst_net_time_provider_thread): Only respond to time queries if
4081 the time provider is active.
4083 * libs/gst/net/gstnettimeprovider.h: Add an "active" boolean to
4084 NetTimeProvider, preserving binary compat.
4086 2005-12-12 Stefan Kost <ensonic@users.sf.net>
4088 * tests/examples/controller/audio-example.c: (main):
4089 * tests/examples/launch/Makefile.am:
4090 convert comments again
4092 2005-12-12 Wim Taymans <wim@fluendo.com>
4094 * libs/gst/base/gstpushsrc.c:
4097 2005-12-12 Wim Taymans <wim@fluendo.com>
4099 * docs/libs/gstreamer-libs-sections.txt:
4100 Added new symbol to docs.
4102 * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
4103 (gst_base_src_init), (gst_base_src_set_format),
4104 (gst_base_src_default_query), (gst_base_src_query),
4105 (gst_base_src_default_do_seek), (gst_base_src_do_seek),
4106 (gst_base_src_perform_seek), (gst_base_src_send_event),
4107 (gst_base_src_default_event), (gst_base_src_event_handler),
4108 (gst_base_src_set_property), (gst_base_src_get_property),
4109 (gst_base_src_wait), (gst_base_src_do_sync),
4110 (gst_base_src_update_length), (gst_base_src_get_range),
4111 (gst_base_src_check_get_range), (gst_base_src_loop),
4112 (gst_base_src_default_negotiate), (gst_base_src_start),
4113 (gst_base_src_activate_push), (gst_base_src_activate_pull),
4114 (gst_base_src_change_state):
4115 * libs/gst/base/gstbasesrc.h:
4116 Implement seeking to other formats than _BYTES.
4117 Implement more seeking methods correctly.
4119 Added query vmethod.
4120 Added do_seek vmethod to make life easier for subclasses
4122 API addition: gst_base_src_set_format()
4124 2005-12-12 Stefan Kost <ensonic@users.sf.net>
4126 * tests/examples/Makefile.am:
4129 2005-12-12 Stefan Kost <ensonic@users.sf.net>
4132 * docs/random/ensonic/media-device-daemon.txt:
4133 * tests/examples/controller/.cvsignore:
4134 * tests/examples/controller/Makefile.am:
4135 * tests/examples/controller/audio-example.c: (main):
4136 * tests/examples/helloworld/.cvsignore:
4137 * tests/examples/helloworld/Makefile.am:
4138 * tests/examples/helloworld/helloworld.c: (event_loop), (main):
4139 * tests/examples/launch/.cvsignore:
4140 * tests/examples/launch/Makefile.am:
4141 * tests/examples/launch/mp3parselaunch.c: (event_loop), (main):
4142 * tests/examples/metadata/.cvsignore:
4143 * tests/examples/metadata/Makefile.am:
4144 * tests/examples/metadata/read-metadata.c: (message_loop),
4145 (make_pipeline), (print_tag), (main):
4146 * tests/examples/queue/.cvsignore:
4147 * tests/examples/queue/Makefile.am:
4148 * tests/examples/queue/queue.c: (event_loop), (main):
4149 * tests/examples/typefind/.cvsignore:
4150 * tests/examples/typefind/Makefile.am:
4151 * tests/examples/typefind/typefind.c: (type_found), (event_loop),
4153 * tests/examples/xml/.cvsignore:
4154 * tests/examples/xml/Makefile.am:
4155 * tests/examples/xml/createxml.c: (object_saved), (main):
4156 * tests/examples/xml/runxml.c: (xml_loaded), (event_loop), (main):
4157 * tests/old/examples/Makefile.am:
4158 * tests/old/examples/TODO:
4159 * tests/old/examples/controller/.cvsignore:
4160 * tests/old/examples/controller/Makefile.am:
4161 * tests/old/examples/controller/audio-example.c:
4162 * tests/old/examples/helloworld/.cvsignore:
4163 * tests/old/examples/helloworld/Makefile.am:
4164 * tests/old/examples/helloworld/helloworld.c:
4165 * tests/old/examples/launch/.cvsignore:
4166 * tests/old/examples/launch/Makefile.am:
4167 * tests/old/examples/launch/mp3parselaunch.c:
4168 * tests/old/examples/launch/mp3play:
4169 * tests/old/examples/manual/Makefile.am:
4170 * tests/old/examples/metadata/Makefile.am:
4171 * tests/old/examples/metadata/read-metadata.c:
4172 * tests/old/examples/queue/.cvsignore:
4173 * tests/old/examples/queue/Makefile.am:
4174 * tests/old/examples/queue/queue.c:
4175 * tests/old/examples/typefind/.cvsignore:
4176 * tests/old/examples/typefind/Makefile.am:
4177 * tests/old/examples/typefind/typefind.c:
4178 * tests/old/examples/xml/.cvsignore:
4179 * tests/old/examples/xml/Makefile.am:
4180 * tests/old/examples/xml/createxml.c:
4181 * tests/old/examples/xml/runxml.c:
4182 applied some simple fixing to some examples
4183 re-enabled the working examples
4185 2005-12-12 Wim Taymans <wim@fluendo.com>
4187 * gst/gstsegment.c: (gst_segment_init),
4188 (gst_segment_set_last_stop), (gst_segment_set_seek),
4189 (gst_segment_set_newsegment), (gst_segment_to_stream_time),
4190 (gst_segment_to_running_time):
4191 Added more documentation.
4192 Make sure the last_pos value is updated properly.
4193 Make sure to_stream_time and to_running_time don't
4194 operate on wrong values.
4196 * tests/check/gst/gstsegment.c: (GST_START_TEST):
4199 2005-12-12 Michael Smith <msmith@fluendo.com>
4201 * plugins/elements/gsttypefindelement.c: (free_entry),
4202 (gst_type_find_element_chain):
4203 Now that we're not leaking factories, make sure we keep references
4204 to them while we need them.
4206 2005-12-12 Thomas Vander Stichele <thomas at apestaart dot org>
4208 * tests/check/gst/struct_i386.h:
4209 ifdef out the XML structs
4211 2005-12-12 Thomas Vander Stichele <thomas at apestaart dot org>
4213 * gst/gstvalue.c: (gst_value_transform_double_fraction):
4214 floor is not needed, F is always positive; this obviates the
4215 need for adding -lm when building without libxml
4217 2005-12-12 Wim Taymans <wim@fluendo.com>
4219 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_position):
4220 Take current playback rate into account when reporting
4223 2005-12-11 Tim-Philipp Müller <tim at centricular dot net>
4225 * docs/manual/mime-world.fig:
4226 Let's try this again, this time with a file that is
4227 actually in XFig format.
4229 2005-12-11 Tim-Philipp Müller <tim at centricular dot net>
4231 * docs/manual/mime-world.fig:
4232 Add audioconvert element to diagram so that it
4233 matches the text and the code (fixes #319526).
4235 2005-12-11 Tim-Philipp Müller <tim at centricular dot net>
4237 * docs/pwg/building-chainfn.xml:
4238 * docs/pwg/building-pads.xml:
4239 * docs/pwg/building-state.xml:
4240 * docs/pwg/other-source.xml:
4241 Update state change stuff for 0.10 (fixes #322969).
4243 2005-12-11 Tim-Philipp Müller <tim at centricular dot net>
4245 * docs/manual/advanced-dataaccess.xml:
4246 * docs/manual/appendix-checklist.xml:
4247 * docs/manual/appendix-programs.xml:
4248 * docs/manual/basics-pads.xml:
4249 * docs/manual/highlevel-components.xml:
4250 * docs/manual/manual.xml:
4251 Update for 0.10: s/0.9/0.10/; s/audioscale/audiorsample/;
4252 add converters in front of pipelines; remove curly
4253 brackets for threads stuff, they no longer exist; use
4254 GST_TYPE_FRACTION for framerates; update some pieces of
4255 code to 0.10, but there's plenty more to do.
4257 * docs/manual/appendix-porting.xml:
4258 Expand on asynchroneous state changes; s/0.9/0.10/;
4259 mention disappearance of gst_init_get_popt_table()
4262 2005-12-11 Tim-Philipp Müller <tim at centricular dot net>
4264 * docs/faq/using.xml:
4265 Spider no longer exists, and neither does gst-launch-ext.
4266 Update examples to use decodebin and playbin and put
4267 converters in front of sinks (fixes #323726).
4269 2005-12-09 Michael Smith <msmith@fluendo.com>
4271 * plugins/elements/gsttypefindelement.c: (find_peek),
4272 (gst_type_find_element_chain):
4273 Fix leaking element factories in typefinding.
4274 Fix problem where we forgot about a probable type on non-seekable
4275 files, and thus later mis-typefound it.
4277 2005-12-09 Michael Smith <msmith@fluendo.com>
4279 * common/m4/gst-makecontext.m4:
4280 * common/m4/gst-mcsc.m4:
4282 * win32/common/config.h:
4283 * win32/common/config.h.in:
4284 Remove makecontext stuff; not used in 0.10 and causes problems on
4285 HPUX according to bug #322441
4287 2005-12-07 Wim Taymans <wim@fluendo.com>
4289 * tests/check/Makefile.am:
4290 * tests/check/libs/libsabi.c: (GST_START_TEST), (gstabi_suite),
4292 * tests/check/libs/struct_i386.h:
4293 Added ABI check for libs
4295 2005-12-07 Wim Taymans <wim@fluendo.com>
4297 * tests/check/Makefile.am:
4298 And add the struct_i386.h to dist.
4300 2005-12-07 Wim Taymans <wim@fluendo.com>
4302 * tests/check/Makefile.am:
4303 * tests/check/gst/.cvsignore:
4304 * tests/check/gst/gstabi.c: (GST_START_TEST), (gstabi_suite),
4306 * tests/check/gst/struct_i386.h:
4307 Added check for ABI compatibility.
4309 2005-12-07 Wim Taymans <wim@fluendo.com>
4311 * plugins/elements/gstfakesrc.c: (gst_fake_src_class_init),
4312 (gst_fake_src_get_times), (gst_fake_src_create):
4313 Fix broken sync option, fixes #323259
4315 2005-12-07 Wim Taymans <wim@fluendo.com>
4320 * gst/gstcaps.c: (gst_caps_is_equal):
4321 Don't assert on NULL <--> X. Fixes #323260
4323 * gst/gstminiobject.c: (gst_mini_object_replace):
4324 If we're doing atomic operations, we might just as well use
4325 the proper way to get an atomic pointer.
4327 * libs/gst/base/gstbasesink.c: (gst_base_sink_get_position):
4330 2005-12-07 Michael Smith <msmith@fluendo.com>
4332 * gst/parse/grammar.y:
4333 Remove handling of { } for threads.
4335 2005-12-06 David Schleef <ds@schleef.org>
4337 * libs/gst/base/gstbasetransform.c: speling fix.
4339 2005-12-06 Thomas Vander Stichele <thomas at apestaart dot org>
4341 * docs/libs/tmpl/gstdataprotocol.sgml:
4342 * docs/random/omega/testing/gstobject.c:
4346 * gst/gstelementfactory.c:
4349 * gst/gstghostpad.c:
4351 * gst/gstpadtemplate.c:
4352 * gst/gstregistryxml.c:
4354 * gst/gsttagsetter.c:
4355 * gst/gsttypefind.c:
4357 * libs/gst/base/gstbasesrc.c:
4358 * libs/gst/net/gstnetclientclock.c:
4359 * libs/gst/net/gstnettimeprovider.c:
4360 * plugins/elements/gstfakesrc.c:
4361 * plugins/elements/gstfdsrc.c:
4362 * plugins/elements/gstfilesrc.c:
4363 * plugins/elements/gstidentity.c:
4364 * plugins/elements/gstqueue.c:
4365 * plugins/elements/gsttypefindelement.c:
4366 * plugins/indexers/gstfileindex.c:
4367 * plugins/indexers/gstmemindex.c:
4368 * tests/check/gst/gsttag.c:
4369 * tests/old/examples/cutter/cutter.c:
4370 * tests/old/examples/mixer/mixer.c:
4371 * tests/old/examples/xml/runxml.c: (main):
4372 * tests/old/testsuite/caps/normalisation.c:
4373 * tests/old/testsuite/debug/global.c:
4374 * tests/old/testsuite/parse/parse1.c:
4375 * tools/gst-xmlinspect.c:
4376 * win32/common/dirent.c:
4379 === release 0.10.0 ===
4381 2005-12-05 <thomas (at) apestaart (dot) org>
4384 releasing 0.10.0, "Maroilles"
4386 2005-12-05 Thomas Vander Stichele <thomas at apestaart dot org>
4388 submitted by: Funda Wang <fundawang@linux.net.cn>
4392 added Chinese (Traditional) translation
4394 2005-12-05 Thomas Vander Stichele <thomas at apestaart dot org>
4396 * docs/gst/gstreamer-sections.txt:
4397 * docs/libs/tmpl/gstdataprotocol.sgml:
4398 * docs/random/thomasvs/TODO:
4403 2005-12-05 Andy Wingo <wingo@pobox.com>
4405 patch by: Wim Taymans <wim@fluendo.com>
4407 * libs/gst/base/gstbasetransform.c
4408 (gst_base_transform_prepare_output_buf)
4409 (gst_base_transform_buffer_alloc):
4410 * plugins/elements/gstqueue.c (gst_queue_bufferalloc): Call
4411 alloc_buffer_and_set_caps.
4413 * gst/gstpad.c (gst_pad_alloc_buffer): Changed to not call
4414 set_caps on the source pad.
4415 (gst_pad_alloc_buffer_and_set_caps): New function, does what
4416 alloc_buffer used to do. Fixes #322874.
4418 * docs/gst/gstreamer-sections.txt:
4419 * docs/design/part-negotiation.txt:
4420 * docs/pwg/advanced-negotiation.xml: Update for the alloc_buffer
4423 2005-12-05 Thomas Vander Stichele <thomas at apestaart dot org>
4425 patch by: Sebastien Moutte
4428 * win32/common/config.h.in:
4429 * win32/vs6/libgstcontroller.dsp:
4432 2005-12-05 Wim Taymans <wim@fluendo.com>
4434 * gst/gstcaps.c: (gst_caps_is_equal):
4435 * plugins/elements/gstfakesrc.c: (gst_fake_src_class_init),
4436 (gst_fake_src_create):
4437 Back out previous code changes, leave doc updates, file bugs
4440 2005-12-05 Wim Taymans <wim@fluendo.com>
4442 * plugins/elements/gstfakesrc.c: (gst_fake_src_class_init),
4443 (gst_fake_src_get_times), (gst_fake_src_create):
4444 * plugins/elements/gstfakesrc.h:
4445 Fix broken sync code.
4447 2005-12-05 Wim Taymans <wim@fluendo.com>
4449 * gst/gstcaps.c: (gst_caps_is_equal):
4450 Comparing NULL against !NULL yields different caps, not a
4453 2005-12-05 Wim Taymans <wim@fluendo.com>
4455 * gst/gstpipeline.c:
4456 Fix small typo in docs.
4458 2005-12-05 Andy Wingo <wingo@pobox.com>
4460 patch by: Thomas Vander Stichele <thomas at apestaart dot org>
4462 * gst/gst.c (init_post): remove hard-coded 0.9 location for
4463 registries/plugins with a MAJORMINOR one.
4464 (plugin_desc): Rename library from gstcoreleements to
4465 staticelements. Fixes #323222.
4467 2005-12-05 Tim-Philipp Müller <tim at centricular dot net>
4469 * libs/gst/base/gstcollectpads.c: (gst_collect_pads_base_init):
4470 Change debug category to 'collectpads' from 'collect_pads'
4473 2005-12-04 Thomas Vander Stichele <thomas at apestaart dot org>
4475 patch by: Sebastien Moutte
4477 * libs/gst/controller/gstinterpolation.c:
4478 use convert function for uint64/double
4479 * win32/vs6/libgstcontroller.dsp:
4482 2005-12-04 Thomas Vander Stichele <thomas at apestaart dot org>
4484 * gst/gstutils.c: (gst_util_guint64_to_gdouble),
4485 (gst_util_gdouble_to_guint64), (gst_util_uint64_scale_int64):
4487 * tests/check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
4488 add tests that seem to show that the guint64/gdouble conversions
4491 2005-12-02 Wim Taymans <wim@fluendo.com>
4493 * gst/gstregistry.c: (gst_registry_add_path):
4494 * gst/gstregistry.h:
4495 * gst/gstregistryxml.c:
4498 2005-12-02 Wim Taymans <wim@fluendo.com>
4500 * gst/gstutils.c: (gst_util_uint64_scale_int64),
4501 (gst_util_uint64_scale_int):
4504 * libs/gst/base/gstbasesink.c: (gst_base_sink_handle_object):
4507 * libs/gst/base/gstbasetransform.c: (gst_base_transform_event):
4510 2005-12-02 Thomas Vander Stichele <thomas at apestaart dot org>
4513 * win32/common/config.h:
4514 * win32/vs6/gstreamer.dsw:
4515 * win32/vs6/libgstcoreelements.dsp:
4516 * win32/vs6/libgstelements.dsp:
4517 renamed core elements plugin
4519 2005-12-02 Thomas Vander Stichele <thomas at apestaart dot org>
4521 * tools/gst-run.c: (compare_major_minor), (find_highest_version),
4523 do piece-wise major/minor comparison so 0.9 < 0.10
4524 also allow .exe extensions for tools
4526 2005-12-02 Michael Smith <msmith@fluendo.com>
4529 Escape a % to make gtkdoc happier; bug 322958.
4531 === release 0.9.7 ===
4533 2005-12-01 <thomas (at) apestaart (dot) org>
4536 releasing 0.9.7, "My Dog Has No Nose"
4538 2005-12-01 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
4540 * common/gst-xmlinspect.py:
4542 * docs/libs/tmpl/gstdataprotocol.sgml:
4543 * docs/random/release:
4562 * win32/common/config.h:
4563 * win32/common/config.h.in:
4564 * win32/vs6/gst_inspect.dsp:
4565 * win32/vs6/gst_launch.dsp:
4566 * win32/vs6/libgstbase.dsp:
4567 * win32/vs6/libgstelements.dsp:
4568 * win32/vs6/libgstreamer.dsp:
4569 * win32/vs7/GStreamer.vcproj:
4570 * win32/vs7/gst-inspect.vcproj:
4571 * win32/vs7/gst-launch.vcproj:
4572 * win32/vs7/libgstbase.vcproj:
4573 bump GST_MAJORMINOR to 0.10
4574 reset libtool version
4576 2005-12-01 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
4580 Added Bulgarian translation by (Alexander Shopov)
4582 2005-12-01 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
4584 * tests/check/gst/gstplugin.c:
4587 2005-12-01 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
4589 * common/gst-xmlinspect.py:
4590 * common/gtk-doc-plugins.mak:
4593 * docs/gst/Makefile.am:
4594 * docs/gst/gstreamer-docs.sgml:
4595 * docs/gst/gstreamer-sections.txt:
4596 * docs/gst/gstreamer.types:
4597 * docs/gst/gstreamer.types.in:
4598 * docs/plugins/Makefile.am:
4599 * docs/plugins/gstreamer-plugins-docs.sgml:
4600 * docs/plugins/gstreamer-plugins-sections.txt:
4601 * docs/plugins/gstreamer-plugins.types:
4602 * docs/plugins/inspect.stamp:
4603 * docs/plugins/inspect/plugin-coreelements.xml:
4604 * docs/plugins/inspect/plugin-coreindexers.xml:
4605 * docs/plugins/scanobj-build.stamp:
4606 * gstreamer.spec.in:
4607 * plugins/elements/Makefile.am:
4608 * plugins/elements/gstelements.c:
4609 * plugins/elements/gstfakesink.c:
4610 * plugins/elements/gstfakesrc.c:
4611 * plugins/elements/gstfilesink.c:
4612 * plugins/elements/gstfilesrc.c:
4613 * plugins/elements/gstqueue.c:
4614 * plugins/indexers/Makefile.am:
4615 * plugins/indexers/gstindexers.c:
4616 document core plugins in a separate document just like all the
4618 rename these plugins to something starting with core
4620 2005-12-01 Andy Wingo <wingo@pobox.com>
4622 * gst/gstevent.h (struct _GstEvent): Meant to remove the extra
4623 padding here before, but it missed the commit.
4625 2005-12-01 Thomas Vander Stichele <thomas at apestaart dot org>
4627 * libs/gst/controller/gstinterpolation.c:
4628 whitespace prices have crashed, we should feel free to use some now
4629 use gst_guint64_to_gdouble
4631 2005-12-01 Thomas Vander Stichele <thomas at apestaart dot org>
4633 * libs/gst/controller/gstcontroller.c:
4634 * libs/gst/controller/gsthelper.c:
4635 * libs/gst/controller/gstinterpolation.c:
4636 * libs/gst/controller/lib.c:
4637 wrap config.h include
4639 2005-12-01 Thomas Vander Stichele <thomas at apestaart dot org>
4641 * docs/gst/gstreamer-sections.txt:
4644 2005-12-01 Thomas Vander Stichele <thomas at apestaart dot org>
4646 * plugins/elements/gstelements.c:
4647 * plugins/elements/gstfdsink.c: (gst_fd_sink__base_init),
4648 (gst_fd_sink__class_init), (gst_fd_sink__init),
4649 (gst_fd_sink__chain), (gst_fd_sink__set_property),
4650 (gst_fd_sink__get_property):
4651 * plugins/elements/gstfdsink.h:
4652 * plugins/elements/gstfdsrc.c: (_do_init), (gst_fd_src_base_init),
4653 (gst_fd_src_class_init), (gst_fd_src_init), (gst_fd_src_dispose),
4654 (gst_fd_src_update_fd), (gst_fd_src_start), (gst_fd_src_stop),
4655 (gst_fd_src_unlock), (gst_fd_src_set_property),
4656 (gst_fd_src_get_property), (gst_fd_src_create),
4657 (gst_fd_src_is_seekable), (gst_fd_src_get_size),
4658 (gst_fd_src_uri_get_type), (gst_fd_src_uri_get_protocols),
4659 (gst_fd_src_uri_get_uri), (gst_fd_src_uri_set_uri),
4660 (gst_fd_src_uri_handler_init):
4661 * plugins/elements/gstfdsrc.h:
4662 * plugins/elements/gstqueue.c: (gst_queue_get_type):
4665 2005-11-30 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
4667 * docs/gst/Makefile.am:
4668 * docs/gst/gstreamer.types.in:
4672 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
4678 * gst/gstregistry.h:
4679 * tests/benchmarks/complexity.c:
4680 * tests/benchmarks/mass-elements.c:
4681 * tests/check/Makefile.am:
4682 * tools/Makefile.am:
4683 * tools/gst-inspect.c:
4684 * tools/gst-xmlinspect.c:
4685 various fixes to make
4686 --disable-nls --disable-registry --disable-loadsave
4687 --disable-parse --disable-gst-debug
4688 work and get the core .so down to 360444 bytes after stripping
4690 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
4695 * docs/random/thomasvs/TODO:
4696 * tests/Makefile.am:
4700 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
4702 * win32/GStreamer.vcproj:
4705 * win32/Makefile.inspect:
4706 * win32/Makefile.launch:
4707 * win32/Makefile.register:
4709 * win32/gst-inspect.vcproj:
4710 * win32/gst-launch.vcproj:
4711 * win32/gst-register.vcproj:
4712 * win32/gstelements.vcproj:
4713 * win32/gstgetbits.def:
4714 * win32/gstgetbits.vcproj:
4715 * win32/gstreamer-dbg.def:
4716 * win32/gstreamer.def:
4717 * win32/libgstbase.def:
4718 * win32/libgstbase.vcproj:
4719 * win32/link_oldruntime.c:
4724 move even more stuff, win32/ is nice and clean now
4726 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
4728 * libs/gst/control/.cvsignore:
4733 * win32/gstbytestream.def:
4734 * win32/gstbytestream.vcproj:
4735 * win32/gstconfig.h:
4736 * win32/gstenumtypes.c:
4737 * win32/gstenumtypes.h:
4738 * win32/gstoptimalscheduler.vcproj:
4739 * win32/gstversion.h:
4741 * win32/testsuite/bins.vcproj:
4742 * win32/testsuite/bytestream.vcproj:
4743 * win32/testsuite/caps.vcproj:
4744 * win32/testsuite/cleanup.vcproj:
4745 * win32/testsuite/clock.vcproj:
4746 * win32/testsuite/debug.vcproj:
4747 * win32/testsuite/dlopen.vcproj:
4748 * win32/testsuite/dynparams.vcproj:
4749 * win32/testsuite/elements.vcproj:
4750 * win32/testsuite/ghostpads.vcproj:
4751 * win32/testsuite/indexers.vcproj:
4752 * win32/testsuite/negotiation.vcproj:
4753 * win32/testsuite/parse.vcproj:
4754 * win32/testsuite/plugin.vcproj:
4755 * win32/testsuite/refcounting.vcproj:
4756 * win32/testsuite/schedulers.vcproj:
4757 * win32/testsuite/states.vcproj:
4758 * win32/testsuite/tags.vcproj:
4759 * win32/testsuite/threads.vcproj:
4760 remove old win32 stuff that isn't maintained and should be
4763 2005-11-30 Andy Wingo <wingo@pobox.com>
4765 * configure.ac (GST_PKG_DEPS): Revert previous patch, makes
4766 loading the gst.interfaces python module bork.
4768 * configure.ac (GST_PKG_DEPS): Use gmodule-no-export-2.0.pc,
4769 available since GLib 2.2. Fixes #318031.
4771 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
4775 * check/Makefile.am:
4776 * check/elements/.cvsignore:
4777 * check/elements/fakesrc.c:
4778 * check/elements/fdsrc.c:
4779 * check/elements/identity.c:
4780 * check/generic/.cvsignore:
4781 * check/generic/states.c:
4782 * check/gst-libs/.cvsignore:
4783 * check/gst-libs/controller.c:
4784 * check/gst-libs/gdp.c:
4785 * check/gst/.cvsignore:
4786 * check/gst/capslist.h:
4788 * check/gst/gstbin.c:
4789 * check/gst/gstbuffer.c:
4790 * check/gst/gstbus.c:
4791 * check/gst/gstcaps.c:
4792 * check/gst/gstelement.c:
4793 * check/gst/gstevent.c:
4794 * check/gst/gstghostpad.c:
4795 * check/gst/gstiterator.c:
4796 * check/gst/gstmessage.c:
4797 * check/gst/gstminiobject.c:
4798 * check/gst/gstobject.c:
4799 * check/gst/gstpad.c:
4800 * check/gst/gstpipeline.c:
4801 * check/gst/gstplugin.c:
4802 * check/gst/gstsegment.c:
4803 * check/gst/gststructure.c:
4804 * check/gst/gstsystemclock.c:
4805 * check/gst/gsttag.c:
4806 * check/gst/gstutils.c:
4807 * check/gst/gstvalue.c:
4808 * check/net/.cvsignore:
4809 * check/net/gstnetclientclock.c:
4810 * check/net/gstnettimeprovider.c:
4811 * check/pipelines/.cvsignore:
4812 * check/pipelines/cleanup.c:
4813 * check/pipelines/simple_launch_lines.c:
4814 * check/pipelines/stress.c:
4815 * check/states/.cvsignore:
4816 * check/states/sinks.c:
4818 * examples/Makefile.am:
4819 * examples/appreader/.cvsignore:
4820 * examples/appreader/Makefile.am:
4821 * examples/appreader/appreader.c:
4822 * examples/controller/.cvsignore:
4823 * examples/controller/Makefile.am:
4824 * examples/controller/audio-example.c:
4825 * examples/cutter/.cvsignore:
4826 * examples/cutter/Makefile.am:
4827 * examples/cutter/cutter.c:
4828 * examples/cutter/cutter.h:
4829 * examples/events/Makefile.am:
4830 * examples/events/seek.c:
4831 * examples/helloworld/.cvsignore:
4832 * examples/helloworld/Makefile.am:
4833 * examples/helloworld/helloworld.c:
4834 * examples/helloworld2/.cvsignore:
4835 * examples/helloworld2/Makefile.am:
4836 * examples/helloworld2/helloworld2.c:
4837 * examples/launch/.cvsignore:
4838 * examples/launch/Makefile.am:
4839 * examples/launch/mp3parselaunch.c:
4840 * examples/launch/mp3play:
4841 * examples/manual/.cvsignore:
4842 * examples/manual/Makefile.am:
4843 * examples/manual/extract.pl:
4844 * examples/metadata/Makefile.am:
4845 * examples/metadata/read-metadata.c:
4846 * examples/mixer/.cvsignore:
4847 * examples/mixer/Makefile.am:
4848 * examples/mixer/mixer.c:
4849 * examples/mixer/mixer.h:
4850 * examples/pingpong/.cvsignore:
4851 * examples/pingpong/Makefile.am:
4852 * examples/pingpong/pingpong.c:
4853 * examples/plugins/.cvsignore:
4854 * examples/plugins/Makefile.am:
4855 * examples/plugins/example.c:
4856 * examples/plugins/example.h:
4857 * examples/pwg/.cvsignore:
4858 * examples/pwg/Makefile.am:
4859 * examples/pwg/extract.pl:
4860 * examples/queue/.cvsignore:
4861 * examples/queue/Makefile.am:
4862 * examples/queue/queue.c:
4863 * examples/queue2/.cvsignore:
4864 * examples/queue2/Makefile.am:
4865 * examples/queue2/queue2.c:
4866 * examples/queue3/.cvsignore:
4867 * examples/queue3/Makefile.am:
4868 * examples/queue3/queue3.c:
4869 * examples/queue4/.cvsignore:
4870 * examples/queue4/Makefile.am:
4871 * examples/queue4/queue4.c:
4872 * examples/retag/.cvsignore:
4873 * examples/retag/Makefile.am:
4874 * examples/retag/retag.c:
4875 * examples/retag/transcode.c:
4876 * examples/thread/.cvsignore:
4877 * examples/thread/Makefile.am:
4878 * examples/thread/thread.c:
4879 * examples/typefind/.cvsignore:
4880 * examples/typefind/Makefile.am:
4881 * examples/typefind/typefind.c:
4882 * examples/xml/.cvsignore:
4883 * examples/xml/Makefile.am:
4884 * examples/xml/createxml.c:
4885 * examples/xml/runxml.c:
4886 * tests/Makefile.am:
4887 * tests/check/Makefile.am:
4888 * testsuite/.cvsignore:
4889 * testsuite/Makefile.am:
4891 * testsuite/caps/.cvsignore:
4892 * testsuite/caps/Makefile.am:
4893 * testsuite/caps/app_fixate.c:
4894 * testsuite/caps/audioscale.c:
4895 * testsuite/caps/caps.c:
4896 * testsuite/caps/caps.h:
4897 * testsuite/caps/caps_strings:
4898 * testsuite/caps/compatibility.c:
4899 * testsuite/caps/deserialize.c:
4900 * testsuite/caps/enumcaps.c:
4901 * testsuite/caps/eratosthenes.c:
4902 * testsuite/caps/filtercaps.c:
4903 * testsuite/caps/fixed.c:
4904 * testsuite/caps/fraction-convert.c:
4905 * testsuite/caps/fraction-multiply-and-zero.c:
4906 * testsuite/caps/intersect2.c:
4907 * testsuite/caps/intersection.c:
4908 * testsuite/caps/normalisation.c:
4909 * testsuite/caps/random.c:
4910 * testsuite/caps/renegotiate.c:
4911 * testsuite/caps/sets.c:
4912 * testsuite/caps/simplify.c:
4913 * testsuite/caps/string-conversions.c:
4914 * testsuite/caps/structure.c:
4915 * testsuite/caps/subtract.c:
4916 * testsuite/caps/union.c:
4917 * testsuite/debug/.cvsignore:
4918 * testsuite/debug/Makefile.am:
4919 * testsuite/debug/category.c:
4920 * testsuite/debug/commandline.c:
4921 * testsuite/debug/global.c:
4922 * testsuite/debug/output.c:
4923 * testsuite/debug/printf_extension.c:
4924 * testsuite/dlopen/.cvsignore:
4925 * testsuite/dlopen/Makefile.am:
4926 * testsuite/dlopen/dlopen_gst.c:
4927 * testsuite/dlopen/loadgst.c:
4928 * testsuite/elements/.cvsignore:
4929 * testsuite/elements/Makefile.am:
4930 * testsuite/elements/gst-inspect-check.in:
4931 * testsuite/elements/struct_i386.h:
4932 * testsuite/elements/struct_size.c:
4933 * testsuite/indexers/.cvsignore:
4934 * testsuite/indexers/Makefile.am:
4935 * testsuite/indexers/cache1.c:
4936 * testsuite/indexers/indexdump.c:
4937 * testsuite/parse/.cvsignore:
4938 * testsuite/parse/Makefile.am:
4939 * testsuite/parse/parse1.c:
4940 * testsuite/parse/parse2.c:
4941 * testsuite/plugin/.cvsignore:
4942 * testsuite/plugin/Makefile.am:
4943 * testsuite/plugin/README:
4944 * testsuite/plugin/dynamic.c:
4945 * testsuite/plugin/linked.c:
4946 * testsuite/plugin/loading.c:
4947 * testsuite/plugin/registry.c:
4948 * testsuite/plugin/static.c:
4949 * testsuite/plugin/static2.c:
4950 * testsuite/plugin/testplugin.c:
4951 * testsuite/plugin/testplugin2.c:
4952 * testsuite/plugin/testplugin2_s.c:
4953 * testsuite/plugin/testplugin_s.c:
4954 * testsuite/refcounting/.cvsignore:
4955 * testsuite/refcounting/Makefile.am:
4956 * testsuite/refcounting/bin.c:
4957 * testsuite/refcounting/element.c:
4958 * testsuite/refcounting/element_pad.c:
4959 * testsuite/refcounting/mainloop.c:
4960 * testsuite/refcounting/mem.c:
4961 * testsuite/refcounting/mem.h:
4962 * testsuite/refcounting/object.c:
4963 * testsuite/refcounting/pad.c:
4964 * testsuite/refcounting/sched.c:
4965 * testsuite/refcounting/thread.c:
4966 * testsuite/states/.cvsignore:
4967 * testsuite/states/Makefile.am:
4968 * testsuite/states/bin.c:
4969 * testsuite/states/locked.c:
4970 * testsuite/states/parent.c:
4971 * testsuite/threads/.cvsignore:
4972 * testsuite/threads/159566.c:
4973 * testsuite/threads/159852.c:
4974 * testsuite/threads/Makefile.am:
4975 * testsuite/threads/queue.c:
4976 * testsuite/threads/signals.c:
4977 * testsuite/threads/staticrec.c:
4978 * testsuite/threads/thread.c:
4979 * testsuite/threads/threadb.c:
4980 * testsuite/threads/threadc.c:
4981 * testsuite/threads/threadd.c:
4982 * testsuite/threads/threade.c:
4983 * testsuite/threads/threadf.c:
4984 * testsuite/threads/threadg.c:
4985 * testsuite/threads/threadh.c:
4986 * testsuite/threads/threadi.c:
4987 move all of these under tests
4989 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
4992 * tests/Makefile.am:
4995 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
4997 * docs/gst/gstreamer-sections.txt:
4998 * tests/sched/.cvsignore:
4999 * tests/sched/Makefile.am:
5000 * tests/sched/cases/(fs-fs).xml:
5001 * tests/sched/cases/(fs-i-fs).xml:
5002 * tests/sched/cases/(fs-i-i-fs).xml:
5003 * tests/sched/cases/(fs-i-q[i-fs]).xml:
5004 * tests/sched/dynamic-pipeline.c:
5005 * tests/sched/interrupt1.c:
5006 * tests/sched/interrupt2.c:
5007 * tests/sched/interrupt3.c:
5008 * tests/sched/runtestcases:
5009 * tests/sched/runxml.c:
5010 * tests/sched/sched-stress.c:
5011 * tests/sched/sort.c:
5012 * tests/sched/testcases:
5013 * tests/sched/testcases1.tc:
5014 * tests/seeking/.cvsignore:
5015 * tests/seeking/Makefile.am:
5016 * tests/seeking/seeking1.c:
5017 * tests/threadstate/.cvsignore:
5018 * tests/threadstate/Makefile.am:
5019 * tests/threadstate/test1.c:
5020 * tests/threadstate/test2.c:
5021 * tests/threadstate/threadstate1.c:
5022 * tests/threadstate/threadstate2.c:
5023 * tests/threadstate/threadstate3.c:
5024 * tests/threadstate/threadstate4.c:
5025 * tests/threadstate/threadstate5.c:
5026 remove obsolete tests
5028 * tests/bench-complexity.scm:
5029 * tests/bench-mass_elements.scm:
5030 * tests/complexity.c:
5031 * tests/complexity.gnuplot:
5032 * tests/instantiate/.cvsignore:
5033 * tests/instantiate/Makefile.am:
5034 * tests/instantiate/caps.c:
5035 * tests/mass_elements.c:
5036 * tests/network-clock-utils.scm:
5037 * tests/network-clock.scm:
5039 First pass at cleaning up tests/ dir before moving the rest
5040 Combined with CVS surgery
5042 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
5045 queue has moved, update
5047 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
5049 * docs/gst/gstreamer-sections.txt:
5050 remove double entries from the docs
5051 * gst/gst_private.h:
5052 * gst/gstinfo.c: (_gst_debug_init):
5053 remove the THREAD debug category
5057 * docs/gst/gstreamer.types:
5058 * plugins/elements/gstqueue.c: (gst_queue_get_type),
5059 (gst_queue_init), (gst_queue_finalize), (gst_queue_change_state):
5060 completely move queue and fix up debugging categories
5062 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
5064 * plugins/elements/gstidentity.c: (gst_identity_transform_ip):
5065 make initialization portable, using LL is not
5067 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
5069 * win32/common/gstconfig.h:
5072 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
5074 * win32/common/libgstreamer.def:
5075 rename symbols; sort base section
5077 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
5079 * gst/gstclock.c: (do_linear_regression):
5080 remove crack non-portable handrolled DEBUG macro
5082 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
5084 * docs/random/release:
5086 * win32/common/gstenumtypes.c: (register_gst_object_flags),
5087 (gst_object_flags_get_type), (register_gst_bin_flags),
5088 (gst_bin_flags_get_type), (register_gst_buffer_flag),
5089 (gst_buffer_flag_get_type), (register_gst_bus_flags),
5090 (gst_bus_flags_get_type), (register_gst_bus_sync_reply),
5091 (gst_bus_sync_reply_get_type), (register_gst_caps_flags),
5092 (gst_caps_flags_get_type), (register_gst_clock_return),
5093 (gst_clock_return_get_type), (register_gst_clock_entry_type),
5094 (gst_clock_entry_type_get_type), (register_gst_clock_flags),
5095 (gst_clock_flags_get_type), (register_gst_state),
5096 (gst_state_get_type), (register_gst_state_change_return),
5097 (gst_state_change_return_get_type), (register_gst_state_change),
5098 (gst_state_change_get_type), (register_gst_element_flags),
5099 (gst_element_flags_get_type), (register_gst_core_error),
5100 (gst_core_error_get_type), (register_gst_library_error),
5101 (gst_library_error_get_type), (register_gst_resource_error),
5102 (gst_resource_error_get_type), (register_gst_stream_error),
5103 (gst_stream_error_get_type), (register_gst_event_type_flags),
5104 (gst_event_type_flags_get_type), (register_gst_event_type),
5105 (gst_event_type_get_type), (register_gst_seek_type),
5106 (gst_seek_type_get_type), (register_gst_seek_flags),
5107 (gst_seek_flags_get_type), (register_gst_format),
5108 (gst_format_get_type), (register_gst_index_certainty),
5109 (gst_index_certainty_get_type), (register_gst_index_entry_type),
5110 (gst_index_entry_type_get_type),
5111 (register_gst_index_lookup_method),
5112 (gst_index_lookup_method_get_type), (register_gst_assoc_flags),
5113 (gst_assoc_flags_get_type), (register_gst_index_resolver_method),
5114 (gst_index_resolver_method_get_type), (register_gst_index_flags),
5115 (gst_index_flags_get_type), (register_gst_debug_level),
5116 (gst_debug_level_get_type), (register_gst_debug_color_flags),
5117 (gst_debug_color_flags_get_type), (register_gst_iterator_result),
5118 (gst_iterator_result_get_type), (register_gst_iterator_item),
5119 (gst_iterator_item_get_type), (register_gst_message_type),
5120 (gst_message_type_get_type), (register_gst_mini_object_flags),
5121 (gst_mini_object_flags_get_type), (register_gst_pad_link_return),
5122 (gst_pad_link_return_get_type), (register_gst_flow_return),
5123 (gst_flow_return_get_type), (register_gst_activate_mode),
5124 (gst_activate_mode_get_type), (register_gst_pad_direction),
5125 (gst_pad_direction_get_type), (register_gst_pad_flags),
5126 (gst_pad_flags_get_type), (register_gst_pad_presence),
5127 (gst_pad_presence_get_type), (register_gst_pad_template_flags),
5128 (gst_pad_template_flags_get_type), (register_gst_pipeline_flags),
5129 (gst_pipeline_flags_get_type), (register_gst_plugin_error),
5130 (gst_plugin_error_get_type), (register_gst_plugin_flags),
5131 (gst_plugin_flags_get_type), (register_gst_rank),
5132 (gst_rank_get_type), (register_gst_query_type),
5133 (gst_query_type_get_type), (register_gst_tag_merge_mode),
5134 (gst_tag_merge_mode_get_type), (register_gst_tag_flag),
5135 (gst_tag_flag_get_type), (register_gst_task_state),
5136 (gst_task_state_get_type), (register_gst_alloc_trace_flags),
5137 (gst_alloc_trace_flags_get_type),
5138 (register_gst_type_find_probability),
5139 (gst_type_find_probability_get_type), (register_gst_uri_type),
5140 (gst_uri_type_get_type), (register_gst_parse_error),
5141 (gst_parse_error_get_type):
5142 * win32/common/gstenumtypes.h:
5143 * win32/common/gstversion.h:
5144 update visual studio generated files
5146 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
5148 * win32/vs6/libgstbase.dsp:
5149 * win32/vs6/libgstelements.dsp:
5150 update project files for new locations
5152 2005-11-30 Thomas Vander Stichele <thomas at apestaart dot org>
5157 reinstate and update
5162 * docs/random/LICENSE:
5165 2005-11-30 Edward Hervey <edward@fluendo.com>
5167 * gst/gsttypefind.c: (gst_type_find_register):
5168 * gst/gsttypefind.h:
5169 * gst/gsttypefindfactory.c: (gst_type_find_factory_init),
5170 (gst_type_find_factory_dispose):
5171 * gst/gsttypefindfactory.h:
5172 Fix memory leak in GstTypeFindFactory.
5174 2005-11-29 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
5177 * plugins/elements/Makefile.am:
5178 * plugins/elements/gstelements.c:
5179 * plugins/elements/gstqueue.c:
5180 move queue from core to the elements plugin
5182 2005-11-29 Andy Wingo <wingo@pobox.com>
5184 * libs/gst/base/gstbasetransform.h:
5185 * libs/gst/base/gstbasesrc.h:
5186 * libs/gst/base/gstbasesink.h: en-LARGE the padding.
5188 * gst/gstconfig.h.in (GST_PADDING_LARGE): New define, the number
5189 of pointers by which to pad very extensible base classes (like the
5190 ones in libs/gst/base).
5192 2005-11-29 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
5194 * docs/gst/gstreamer-docs.sgml:
5195 * docs/gst/gstreamer-sections.txt:
5196 * docs/libs/gstreamer-libs-docs.sgml:
5197 * docs/libs/gstreamer-libs-sections.txt:
5198 moving documentation from core to lib
5200 2005-11-29 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
5202 * check/Makefile.am:
5204 * docs/gst/Makefile.am:
5206 * gst/base/.cvsignore:
5207 * gst/base/Makefile.am:
5209 * gst/base/gstadapter.c:
5210 * gst/base/gstadapter.h:
5211 * gst/base/gstbasesink.c:
5212 * gst/base/gstbasesink.h:
5213 * gst/base/gstbasesrc.c:
5214 * gst/base/gstbasesrc.h:
5215 * gst/base/gstbasetransform.c:
5216 * gst/base/gstbasetransform.h:
5217 * gst/base/gstcollectpads.c:
5218 * gst/base/gstcollectpads.h:
5219 * gst/base/gstpushsrc.c:
5220 * gst/base/gstpushsrc.h:
5221 * gst/base/gsttypefindhelper.c:
5222 * gst/base/gsttypefindhelper.h:
5223 * gst/check/Makefile.am:
5224 * gst/check/gstcheck.c:
5225 * gst/check/gstcheck.h:
5226 * gst/net/Makefile.am:
5228 * gst/net/gstnetclientclock.c:
5229 * gst/net/gstnetclientclock.h:
5230 * gst/net/gstnettimepacket.c:
5231 * gst/net/gstnettimepacket.h:
5232 * gst/net/gstnettimeprovider.c:
5233 * gst/net/gstnettimeprovider.h:
5234 * libs/gst/Makefile.am:
5235 * libs/gst/base/Makefile.am:
5236 * libs/gst/base/gstbasetransform.c:
5237 * libs/gst/check/Makefile.am:
5238 * plugins/elements/Makefile.am:
5240 CVS surgery + support to move base, check, and net out of gst
5243 2005-11-29 Andy Wingo <wingo@pobox.com>
5245 * gst/gstevent.h (struct _GstEvent): Only one pointer of padding.
5247 * gst/gststructure.h (struct _GstStructure): Only one pointer of
5250 * gst/gstquery.h (struct _GstQuery): Only one pointer of padding.
5252 * gst/gstpluginfeature.h: Remove a comment in PluginFeature.
5254 * gst/gstplugin.h (struct _GstPluginClass): Add some padding.
5256 * gst/gstobject.h: (struct _GstObject): Only one pointer of
5257 padding; reduces object size by about 30%. We don't expect
5258 anything else to go into gstobject.
5260 * gst/gstminiobject.h (struct _GstMiniObject)
5261 (struct _GstMiniObjectClass): Only one pointer of padding; the
5262 payload is only a pointer and two ints anyway. For the class there
5263 are only two methods as well.
5265 * gst/gstelement.h (struct _GstElementClass): Removed
5266 the state_changed signal callback, it is not used.
5268 2005-11-29 Thomas Vander Stichele <thomas at apestaart dot org>
5270 * docs/gst/gstreamer.types:
5271 fix includes, though they are a little dinky
5273 2005-11-29 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
5275 * check/Makefile.am:
5276 look in the right place for elements, a lot more chance of
5279 remove indexers and elements subdirs
5280 * plugins/Makefile.am:
5281 make indexers conditional
5283 2005-11-29 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
5287 * plugins/elements/Makefile.am:
5288 * plugins/elements/gstcapsfilter.c:
5289 * plugins/elements/gstfilesink.c:
5290 * plugins/elements/gstfilesrc.c:
5291 * plugins/elements/gstidentity.c:
5292 * plugins/indexers/Makefile.am:
5293 do CVS surgery and related build fixery to move elements
5294 and indexers in a new gstreamer/plugins directory, out of the
5297 2005-11-29 Andy Wingo <wingo@pobox.com>
5299 * check/Makefile.am:
5300 * pkgconfig/gstreamer-net-uninstalled.pc.in:
5301 * pkgconfig/gstreamer-net.pc.in:
5302 * gst/net/Makefile.am: Rename gstnet-tempname to gstnet. Fixes
5305 2005-11-29 Thomas Vander Stichele <thomas at apestaart dot org>
5307 * tools/Makefile.am:
5308 * tools/gst-complete.1.in:
5309 * tools/gst-complete.c:
5310 * tools/gst-compprep.1.in:
5311 * tools/gst-compprep.c:
5312 removing -compprep and -complete
5314 2005-11-29 Thomas Vander Stichele <thomas at apestaart dot org>
5316 * gst/gstevent.c: (gst_event_new_new_segment),
5317 (gst_event_parse_new_segment):
5319 fix #320529 - clean up new_segment API and structure.
5320 Let's hope everyone was using the methods, and not the structure.
5322 2005-11-29 Edward Hervey <edward@fluendo.com>
5324 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
5325 (gst_base_sink_event), (gst_base_sink_do_sync),
5326 (gst_base_sink_activate_pull), (gst_base_sink_change_state):
5327 Properly handle non GST_FORMAT_TIME segment
5328 * gst/elements/gstidentity.c: (gst_identity_transform_ip):
5329 Properly handle non GST_FORMAT_TIME segment
5331 This function is valid if the accumulator is 0 and the format
5332 is different from the requested format.
5334 2005-11-29 Jan Schmidt <thaytan@mad.scientist.com>
5336 * docs/gst/gstreamer-sections.txt:
5337 Add gst_query_new_seeking and gst_query_parse_seeking to the
5340 2005-11-29 Jan Schmidt <thaytan@mad.scientist.com>
5342 * gst/base/gstbasetransform.c: (gst_base_transform_buffer_alloc):
5343 Treat a pad alloc with new caps the same as if we were not
5344 negotiated, in order to allow a changing upstream output
5345 to produce a new format of data.
5347 2005-11-29 Edward Hervey <edward@fluendo.com>
5349 * gst/base/gstbasetransform.c: (gst_base_transform_class_init),
5350 (gst_base_transform_event), (gst_base_transform_eventfunc):
5351 The event virtual method is now properly implemented, with a default
5353 Sub classes should call the parent_class event method. They should
5354 return FALSE if they had a problem handling the given event, or don't
5355 want GstBaseTransform to send that even downstream
5356 * gst/elements/gstidentity.c: (gst_identity_class_init),
5357 (gst_identity_init), (gst_identity_event),
5358 (gst_identity_transform_ip), (gst_identity_set_property),
5359 (gst_identity_get_property):
5360 * gst/elements/gstidentity.h:
5361 Added the single-segment boolean property.
5362 If set to TRUE, it will output a single segment of data, starting from
5363 0, will eat up all incoming newsegment, and modify the timestamp of the
5366 2005-11-29 Tim-Philipp Müller <tim at centricular dot net>
5368 * gst/gstghostpad.c: (gst_proxy_pad_get_target):
5369 Don't ref NULL target pad (#322751). Improve docs.
5371 2005-11-29 Michael Smith <msmith@fluendo.com>
5373 * gst/gstregistryxml.c: (load_plugin):
5374 Don't crash if we failed to load a feature from a plugin.
5376 2005-11-28 Thomas Vander Stichele <thomas at apestaart dot org>
5378 * check/pipelines/simple_launch_lines.c: (setup_pipeline),
5380 use more check API and less GLib API
5382 2005-11-28 Thomas Vander Stichele <thomas at apestaart dot org>
5385 don't run checks if we don't have check
5387 remove the registry when running make torture
5388 * docs/gst/gstreamer-sections.txt:
5389 remove second multiply
5390 * gst/gstqueue.c: (gst_queue_loop):
5391 fix a compile warning when disabling debug
5393 2005-11-28 Jan Schmidt <thaytan@mad.scientist.com>
5396 Hey! Let's print the pad name if the pointer != NULL instead
5397 of when it == NULL :-)
5399 2005-11-28 Wim Taymans <wim@fluendo.com>
5401 * check/gst/gstutils.c: (GST_START_TEST):
5402 Updated check, add some scaling accuracy checking code.
5404 * gst/gstutils.c: (gst_util_div128_64),
5405 (gst_util_uint64_scale_int64), (gst_util_uint64_scale),
5406 (gst_util_uint64_scale_int):
5407 Fix 6 times faster division code. Optimize for common
5408 1/1 and less common X/1 cases.
5410 2005-11-28 Wim Taymans <wim@fluendo.com>
5412 * check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
5415 * gst/gstclock.c: (gst_clock_finalize), (gst_clock_set_master),
5416 (do_linear_regression), (gst_clock_add_observation):
5418 Release lock when the clock cannot be slaved.
5419 Catch the case where the regression returned an invalid denominator.
5421 * gst/gstutils.c: (gst_util_div128_64_iterate),
5422 (gst_util_div128_64), (gst_util_uint64_scale_int64),
5423 (gst_util_uint64_scale), (gst_util_uint64_scale_int):
5424 Add protentially more performant non-iterative 128/64 divide function
5425 that unfortunatly does not work yet.
5426 Shortcut the trivial 0/X = 0 case.
5427 Remove the warnings on overflow.
5429 2005-11-28 Thomas Vander Stichele <thomas at apestaart dot org>
5431 * gst/gstplugin.c: (gst_plugin_register_func):
5432 everything causing a plugin not to load should be at least a WARNING
5434 2005-11-28 Stefan Kost <ensonic@users.sf.net>
5436 * docs/random/ensonic/dparams.txt:
5437 some TODOs for the next dev cycle
5438 * libs/gst/controller/gstcontroller.c:
5439 (gst_controlled_property_set_interpolation_mode),
5440 (gst_controlled_property_new):
5441 * libs/gst/controller/gstcontroller.h:
5442 use base type to assign acccessor functions
5444 2005-11-28 Jan Schmidt <thaytan@mad.scientist.com>
5446 * check/Makefile.am:
5447 Oops, that should have been top_srcdir
5449 2005-11-28 Jan Schmidt <thaytan@mad.scientist.com>
5451 * check/Makefile.am:
5452 * check/elements/fdsrc.c: (GST_START_TEST):
5453 Use a cmdline define to specify the location of a file to use for
5454 testing, to avoid breaking distcheck.
5456 2005-11-28 Andy Wingo <wingo@pobox.com>
5458 * gst/gstpad.c (fixate_value): Use array functions for arrays.
5460 2005-11-28 Edward Hervey <edward@fluendo.com>
5462 * tools/gst-launch.c: (main):
5463 Clarify the output strings, makes it easier to translate.
5466 2005-11-28 Thomas Vander Stichele <thomas at apestaart dot org>
5469 don't try and build net if we don't even have <sys/socket.h>
5471 2005-11-27 Jan Schmidt <thaytan@mad.scientist.com>
5473 * check/Makefile.am:
5474 * check/elements/fdsrc.c: (event_func), (setup_fdsrc),
5475 (cleanup_fdsrc), (GST_START_TEST), (fdsrc_suite), (main):
5476 Add tests for fdsrc seekability
5478 * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
5479 (gst_fdsrc_init), (gst_fdsrc_update_fd), (gst_fdsrc_start),
5480 (gst_fdsrc_set_property), (gst_fdsrc_is_seekable),
5481 (gst_fdsrc_get_size), (gst_fdsrc_uri_set_uri):
5482 * gst/elements/gstfdsrc.h:
5483 fdsrc should not be a 'live' source.
5484 Implement seeking on seekable fd's.
5486 * gst/gstquery.c: (gst_query_new_seeking),
5487 (gst_query_parse_seeking):
5489 Implement SEEKING query functions:
5490 *_new_seeking and *_parse_seeking
5492 2005-11-27 Stefan Kost <ensonic@users.sf.net>
5494 * gst/gstelement.c: (gst_element_dispose):
5497 * gst/gstiterator.c:
5498 * gst/gststructure.c:
5501 * libs/gst/controller/gstcontroller.c:
5502 (gst_controlled_property_set_interpolation_mode):
5503 * libs/gst/controller/gstcontroller.h:
5504 * libs/gst/controller/gstinterpolation.c:
5505 (interpolate_none_get_enum_value_array):
5506 support controlling enums
5508 2005-11-27 Tim-Philipp Müller <tim at centricular dot net>
5511 Improve documentation for gst_value_union().
5514 Change return value for union, intersect and subtract functions
5515 from gint to gboolean.
5517 2005-11-27 Tim-Philipp Müller <tim at centricular dot net>
5519 * gst/gstvalue.c: (gst_value_serialize_any_list),
5520 (gst_value_transform_any_list_string),
5521 (gst_value_deserialize_list), (gst_value_deserialize_array),
5522 (gst_value_set_int_range), (gst_value_deserialize_int_range),
5523 (gst_value_set_double_range), (gst_value_deserialize_double_range),
5524 (gst_value_set_fraction_range_full),
5525 (gst_value_deserialize_fraction_range),
5526 (gst_value_deserialize_caps), (gst_value_deserialize_buffer),
5527 (gst_value_deserialize_boolean),
5528 (gst_value_deserialize_int_helper), (gst_value_deserialize_double),
5529 (gst_value_serialize_float), (gst_value_deserialize_float),
5530 (gst_string_wrap), (gst_value_deserialize_string),
5531 (gst_value_deserialize_enum), (gst_value_deserialize_flags),
5532 (gst_value_union_int_range_int_range),
5533 (gst_value_intersect_int_range_int_range),
5534 (gst_value_intersect_double_range_double_range),
5535 (gst_value_create_new_range), (gst_value_subtract_int_range_int),
5536 (gst_value_subtract_int_range_int_range),
5537 (gst_value_subtract_double_double_range),
5538 (gst_value_subtract_double_range_double_range),
5539 (gst_value_deserialize_fraction):
5541 Use gint, gdouble and gchar in our API instead of int, double and
5542 char (and make usage in gstvalue.c more consistent).
5544 2005-11-27 Thomas Vander Stichele <thomas at apestaart dot org>
5546 * check/Makefile.am:
5547 * libs/gst/controller/Makefile.am:
5548 * libs/gst/dataprotocol/Makefile.am:
5549 fix up Makefile.am and remove GST_ENABLE_NEW
5551 2005-11-27 Thomas Vander Stichele <thomas at apestaart dot org>
5555 * gst/base/Makefile.am:
5556 * gst/check/Makefile.am:
5557 * gst/elements/Makefile.am:
5558 * gst/net/Makefile.am:
5559 update LDFLAGS use some more
5561 2005-11-27 Thomas Vander Stichele <thomas at apestaart dot org>
5563 * common/m4/gst-doc.m4:
5566 2005-11-26 Edward Hervey <edward@fluendo.com>
5568 * gst/gstpluginfeature.c: (gst_plugin_feature_load):
5569 This shouldn't issue a g_warning since it returns NULL if it
5570 couldn't find the plugin, and all functions using this behave
5571 properly on a NULL return. Switching to a GST_WARNING.
5573 2005-11-25 Jan Schmidt <thaytan@mad.scientist.com>
5575 * gst/gstbin.c: (gst_bin_handle_message_func):
5576 Don't leak clock messages.
5578 2005-11-25 Wim Taymans <wim@fluendo.com>
5580 * gst/gstutils.c: (gst_util_uint64_scale_int64),
5581 (gst_util_uint64_scale_int):
5582 Optimisations, remove unneeded vars.
5584 2005-11-25 Wim Taymans <wim@fluendo.com>
5586 * check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
5587 Added more checks for the high precision uint64 cases.
5589 * gst/gstutils.c: (gst_util_uint64_scale_int64),
5590 (gst_util_uint64_scale), (gst_util_uint64_scale_int):
5591 Implement high precision (guint64 * guint64) / guint64.
5593 2005-11-24 Wim Taymans <wim@fluendo.com>
5595 * gst/base/gstbasesrc.c: (gst_base_src_query):
5596 Fix wrong percentage query.
5598 * gst/gstutils.c: (gst_util_uint64_scale),
5599 (gst_util_uint64_scale_int):
5600 Add some more common cases that can be handled
5601 efficiently to _scale.
5603 2005-11-24 Thomas Vander Stichele <thomas at apestaart dot org>
5605 * check/gst/gstminiobject.c: (thread_ref), (GST_START_TEST),
5606 (gst_mini_object_suite):
5607 don't use check calls from threads; check probably isn't
5608 threadsafe and using a lock to make it threadsafe would
5609 defeat the purpose of this check
5610 * gst/check/gstcheck.c:
5611 * gst/check/gstcheck.h:
5612 use GST_DEBUG some more
5614 2005-11-24 Wim Taymans <wim@fluendo.com>
5616 * gst/gstutils.c: (gst_util_uint64_scale),
5617 (gst_util_uint64_scale_int):
5618 Chain trivial case to _scale_int.
5620 2005-11-24 Wim Taymans <wim@fluendo.com>
5622 * check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
5623 Added test for scaling.
5628 * gst/gstutils.c: (gst_util_uint64_scale_int):
5629 Implemented high precision scaling code.
5631 2005-11-24 Stefan Kost <ensonic@users.sf.net>
5634 do not crash on pad==NULL
5636 2005-11-24 Thomas Vander Stichele <thomas at apestaart dot org>
5638 Patch by: Stefan Kost
5640 * common/gtk-doc.mak:
5641 * docs/gst/Makefile.am:
5642 * docs/libs/Makefile.am:
5643 Fix distcheck issues for the libraries docs build
5646 2005-11-24 Michael Smith <msmith@fluendo.com>
5648 * docs/manual/basics-helloworld.xml:
5649 Fix bug #315027: memory leak in example code in docs.
5651 2005-11-24 Michael Smith <msmith@fluendo.com>
5653 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
5654 Unlock the PREROLL_LOCK in a failure case.
5656 2005-11-24 Wim Taymans <wim@fluendo.com>
5658 * docs/gst/gstreamer-sections.txt:
5659 * gst/base/gstadapter.h:
5660 * gst/base/gstbasesink.h:
5661 * gst/base/gstbasesrc.h:
5662 * gst/base/gstbasetransform.h:
5663 * gst/base/gstpushsrc.h:
5664 * gst/elements/gstfakesink.h:
5665 * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type):
5666 * gst/elements/gstfakesrc.h:
5667 * gst/elements/gstfilesink.h:
5668 * gst/elements/gstfilesrc.h:
5671 * gst/gstbuffer.c: (_gst_buffer_copy):
5674 * gst/gstchildproxy.c:
5677 * gst/gstelementfactory.c:
5678 * gst/gstelementfactory.h:
5680 * gst/gstghostpad.h:
5682 * gst/gstinterface.h:
5683 * gst/gstminiobject.c:
5684 * gst/gstminiobject.h:
5687 * gst/gstpadtemplate.h:
5688 * gst/gstpipeline.h:
5689 * gst/gstpluginfeature.h:
5694 * gst/gsttagsetter.c:
5695 * gst/gsttagsetter.h:
5698 * gst/gsttypefind.h:
5701 * gst/net/gstnetclientclock.c:
5702 * gst/net/gstnetclientclock.h:
5703 * gst/net/gstnettimepacket.c:
5704 * gst/net/gstnettimeprovider.c:
5705 * gst/net/gstnettimeprovider.h:
5708 2005-11-23 Thomas Vander Stichele <thomas at apestaart dot org>
5710 * configure.ac: back to HEAD
5712 === release 0.9.6 ===
5714 2005-11-23 Thomas Vander Stichele <thomas at apestaart dot org>
5717 releasing 0.9.6, "Always On Time"
5719 2005-11-23 Wim Taymans <wim@fluendo.com>
5721 * docs/gst/gstreamer-sections.txt:
5722 * gst/glib-compat.c:
5723 * gst/gsttagsetter.c:
5725 * gst/net/gstnetclientclock.c:
5726 * gst/net/gstnettimepacket.h:
5729 2005-11-23 Thomas Vander Stichele <thomas at apestaart dot org>
5731 * docs/faq/using.xml:
5732 * docs/libs/tmpl/gstcontrol.sgml:
5733 * docs/manual/advanced-dparams.xml:
5734 * docs/manual/appendix-checklist.xml:
5735 * docs/manual/basics-elements.xml:
5736 * docs/pwg/other-source.xml:
5737 * docs/random/moving-plugins:
5739 * tools/gst-launch.1.in:
5740 remove mentions of sinesrc
5742 2005-11-23 Michael Smith <msmith@fluendo.com>
5744 * docs/gst/gstreamer-sections.txt:
5745 Update for new API and API changes.
5747 Documentation fix: GST_TRYLOCK -> GST_OBJECT_TRYLOCK
5749 Documentation typo fix.
5750 * gst/net/gstnettimepacket.c:
5751 Documentation fixes for arguments.
5753 2005-11-23 Jan Schmidt <thaytan@mad.scientist.com>
5755 * gst/gststructure.c: (gst_structure_get_fraction),
5756 (gst_structure_parse_value),
5757 (gst_structure_fixate_field_nearest_fraction):
5758 * gst/gststructure.h:
5759 * gst/gstutils.c: (gst_util_uint64_scale_int):
5761 * scripts/update-funcnames:
5763 Rename gst_util_clock_time_scale to gst_util_uint64_scale_int
5764 Make gst_structure_fixate_field_nearest_fraction take a numerator
5765 and denominator argument instead of a GValue
5766 add gst_structure_get_fraction helper function.
5768 2005-11-23 Wim Taymans <wim@fluendo.com>
5770 * docs/design/part-TODO.txt:
5773 * gst/net/gstnetclientclock.c: (gst_net_client_clock_thread):
5774 * gst/net/gstnetclientclock.h:
5775 Use parent fields for timeout and window_size.
5777 2005-11-23 Andy Wingo <wingo@pobox.com>
5779 * check/net/gstnetclientclock.c (test_functioning): Adjust to
5780 rate_num/rate_denom change.
5782 * gst/net/gstnetclientclock.c
5783 (gst_net_client_clock_observe_times): Take the SLAVE_LOCK not the
5784 OBJECT_LOCK. Don't call add_observation with the lock.
5786 * gst/gstclock.c (gst_clock_init): Initialize the rate as a
5788 (gst_clock_adjust_unlocked): Adjust using uint64_scale and the
5790 (gst_clock_set_calibration, gst_clock_get_calibration): Change to
5791 deal with rate as a fraction whose numerator and denominator are
5792 GstClockTime values.
5793 (gst_clock_set_master): Only use the OBJECT_LOCK to set the
5794 master; the other fields are protected by the SLAVE_LOCK.
5795 (do_linear_regression): Note that this must be called with the
5797 (gst_clock_add_observation): Take the SLAVE_LOCK, not the
5798 OBJECT_LOCK. Call set_calibration instead of touching the
5800 (gst_clock_set_property, gst_clock_get_property): Protect
5801 master/slave parameters with the SLAVE_LOCK.
5803 * gst/gstclock.h (GstClock): Remove rate, add rate_numerator and
5804 rate_denominator. PR3C1S3. Add a new lock, the SLAVE_LOCK, and
5805 note that all of the instance variables that add_observation and
5806 the set_master functions use are protected by that lock and not
5808 (GST_CLOCK_SLAVE_LOCK, GST_CLOCK_SLAVE_UNLOCK): New macros.
5810 * gst/gstclock.c (gst_clock_add_observation): No longer requires
5811 the caller to take the object lock.
5813 2005-11-23 Wim Taymans <wim@fluendo.com>
5815 * gst/gsterror.c: (_gst_core_errors_init):
5817 Add error for clock stuff.
5819 * gst/gstpipeline.c: (gst_pipeline_change_state),
5820 (gst_pipeline_set_clock):
5821 Post clock error when clock cannot be used in a pipeline.
5823 2005-11-23 Stefan Kost <ensonic@users.sf.net>
5825 * docs/gst/gstreamer-sections.txt:
5826 make two symbols from gstinfo private for the docs
5827 * gst/base/gstcollectpads.h:
5829 fix doc typos, update docs
5831 2005-11-22 Wim Taymans <wim@fluendo.com>
5833 * gst/base/gstbasesink.c: (gst_base_sink_class_init),
5834 (gst_base_sink_wait), (gst_base_sink_do_sync),
5835 (gst_base_sink_handle_event):
5836 * gst/base/gstbasesink.h:
5837 No need to store the clock, the parent element class already
5840 * gst/gstbin.c: (gst_bin_set_clock_func), (gst_bin_add_func):
5841 Updates for clock_set returning a gboolean
5843 * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_wait),
5844 (gst_clock_id_wait_async), (gst_clock_class_init),
5845 (gst_clock_init), (gst_clock_finalize),
5846 (gst_clock_get_internal_time), (gst_clock_get_time),
5847 (gst_clock_slave_callback), (gst_clock_set_master),
5848 (gst_clock_get_master), (do_linear_regression),
5849 (gst_clock_add_observation), (gst_clock_set_property),
5850 (gst_clock_get_property):
5852 Implement master/slave. When setting a clock as a slave, a
5853 periodic timeout is scheduled to sample master and slave times.
5854 Then the slave clock is recalibrated to match offset and rate
5855 of the master clock.
5856 Update logging a bit.
5857 Add flag so that a clock can state that is cannot be slaved to
5860 * gst/gstelement.c: (gst_element_set_clock):
5862 The set clock returns a gboolean for when an element cannot
5863 deal with the selected clock in the pipeline.
5865 * gst/gstpipeline.c: (gst_pipeline_change_state),
5866 (gst_pipeline_set_clock):
5867 * gst/gstpipeline.h:
5868 Handle the case where the selected clock cannot be set on
5871 * gst/net/gstnetclientclock.c: (gst_net_client_clock_class_init),
5872 (gst_net_client_clock_init), (gst_net_client_clock_finalize),
5873 (gst_net_client_clock_set_property),
5874 (gst_net_client_clock_get_property),
5875 (gst_net_client_clock_observe_times):
5876 * gst/net/gstnetclientclock.h:
5877 Use regression code in GstClock parent, remove duplicated
5880 2005-11-22 Michael Smith <msmith@fluendo.com>
5882 * gst/gstutils.c: (gst_util_clock_time_scale):
5884 * docs/gst/gstreamer-sections.txt:
5885 Rename method to have extra underscore.
5887 2005-11-22 Thomas Vander Stichele <thomas at apestaart dot org>
5889 * gst/elements/Makefile.am:
5890 * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type):
5891 * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
5892 (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
5893 (gst_fake_src_init), (gst_fake_src_prepare_buffer),
5894 (gst_fake_src_alloc_buffer), (gst_fake_src_get_size):
5895 * gst/elements/gstfakesrc.h:
5896 * gst/gstqueue.c: (queue_leaky_get_type):
5897 correctly fix GEnumValues so that nick is the short lowercase
5899 * tools/gst-inspect.c: (print_element_properties_info):
5900 also show the nick, since it's useful to use from parse_launch
5904 2005-11-22 Michael Smith <msmith@fluendo.com>
5906 * gst/gstutils.c: (gst_util_clocktime_scale):
5908 * docs/gst/gstreamer-sections.txt:
5909 Add util method for scaling a clocktime by a fraction. Useful
5910 implementation is left as an exercise for the reader.
5912 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
5914 * gst/gstvalue.c: (gst_value_collect_fraction_range):
5915 If needed, allocate storage in the destination value during
5918 2005-11-22 Edward Hervey <edward@fluendo.com>
5920 * docs/gst/gstreamer-sections.txt:
5925 * gst/gstutils.c: (gst_util_set_object_arg):
5926 * tools/gst-compprep.c: (main):
5927 * tools/gst-inspect.c: (print_element_properties_info):
5928 Removed GstURI, closes bug #321061
5930 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
5932 * check/gst/gststructure.c: (GST_START_TEST):
5933 * gst/gststructure.c: (gst_structure_parse_value):
5934 Oops, broke automatic string type parsing.
5935 Add a test to catch it in future.
5937 2005-11-22 Andy Wingo <wingo@pobox.com>
5939 * gst/gsttagsetter.c (gst_tag_setter_get_tag_merge_mode)
5940 (gst_tag_setter_set_tag_merge_mode, gst_tag_setter_get_tag_list):
5941 Actually rename the function implementations. Grr.
5943 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
5945 * check/gst/capslist.h:
5947 * check/gst/gststructure.c: (GST_START_TEST),
5948 (gst_structure_suite):
5949 Test automatic value type detection in gst_structure_from_string.
5950 * gst/gststructure.c: (gst_structure_parse_value):
5951 Add fraction as a type we try and guess automatically in
5952 caps/structure strings.
5954 2005-11-22 Andy Wingo <wingo@pobox.com>
5956 patch by: Torsten Schoenfeld <kaffeetisch gmx de>
5958 * gst/gsttagsetter.h:
5959 * gst/gsttagsetter.c: (gst_tag_setter_merge_tags)
5960 (gst_tag_setter_add_tags, gst_tag_setter_add_tag_values)
5961 (gst_tag_setter_add_tag_valist)
5962 (gst_tag_setter_add_tag_valist_values): Renamed from _merge, _add,
5963 _add_values, _add_valist, and _add_valist_values. Since this is an
5964 interface the function suffixes should be more explicit so
5965 language binding don't end up with element.add_valist ->
5966 gst_tag_setter_add_valist, for example. Fixes #322069.
5968 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
5970 * check/gst/gstcaps.c: (GST_START_TEST):
5971 Extend caps string tests to check that a caps to string
5972 conversion is reversible and produces the same caps.
5974 * gst/gststructure.c: (gst_structure_value_get_generic_type):
5975 Output "fraction" as the generic type fraction range, so caps
5976 serialisation and deserialisation works.
5977 * check/gst/capslist.h:
5978 * gst/gstvalue.c: (gst_value_deserialize_fraction):
5979 Support 'MIN' and 'MAX' for deserialising fractions.
5981 2005-11-22 Andy Wingo <wingo@pobox.com>
5983 * gst/gstevent.h (gst_event_new_new_segment)
5984 (gst_event_parse_new_segment, gst_event_new_buffer_size)
5985 (gst_event_parse_buffer_size, gst_ghost_pad_new_no_target):
5986 Renamed from *_newsegment, *_buffersize, *_notarget.
5988 * scripts/update-funcnames: New script, performs the changes
5991 2005-11-22 Wim Taymans <wim@fluendo.com>
5993 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
5994 Make sure the GstFlowReturn is returned.
5996 * gst/gstbus.c: (gst_bus_add_signal_watch_full),
5997 (gst_bus_add_signal_watch):
5999 add gst_bus_add_signal_watch_full.
6001 * gst/gstplugin.c: (gst_plugin_load_file):
6002 Small style cleanup.
6004 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
6006 * check/gst/gstevent.c: (test_event), (GST_START_TEST):
6007 Block the fakesrc srcpad when we send an event, to avoid
6008 contention on the stream_lock causing random test failures.
6010 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
6012 * check/gst/gstvalue.c: (GST_START_TEST):
6013 * gst/gstvalue.c: (gst_value_fraction_subtract):
6016 2005-11-22 Stefan Kost <ensonic@users.sf.net>
6019 include "gstchildproxy.h"
6020 * gst/gstchildproxy.h:
6021 * libs/gst/controller/gstcontroller.h:
6022 use G_GNUC_NULL_TERMINATED
6024 2005-11-22 Jan Schmidt <thaytan@mad.scientist.com>
6026 * check/gst/capslist.h:
6027 * check/gst/gstcaps.c: (GST_START_TEST):
6028 * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
6029 * gst/gststructure.c: (gst_structure_parse_range),
6030 (gst_structure_fixate_field_nearest_fraction):
6031 * gst/gststructure.h:
6032 * gst/gstvalue.c: (gst_value_init_fraction_range),
6033 (gst_value_free_fraction_range), (gst_value_copy_fraction_range),
6034 (gst_value_collect_fraction_range),
6035 (gst_value_lcopy_fraction_range), (gst_value_set_fraction_range),
6036 (gst_value_set_fraction_range_full),
6037 (gst_value_get_fraction_range_min),
6038 (gst_value_get_fraction_range_max),
6039 (gst_value_serialize_fraction_range),
6040 (gst_value_transform_fraction_range_string),
6041 (gst_value_compare_fraction_range),
6042 (gst_value_deserialize_fraction_range),
6043 (gst_value_intersect_fraction_fraction_range),
6044 (gst_value_intersect_fraction_range_fraction_range),
6045 (gst_value_subtract_fraction_fraction_range),
6046 (gst_value_subtract_fraction_range_fraction),
6047 (gst_value_subtract_fraction_range_fraction_range),
6048 (gst_value_collect_fraction), (gst_value_fraction_multiply),
6049 (gst_value_fraction_subtract), (gst_value_deserialize_fraction),
6050 (gst_value_transform_string_fraction), (_gst_value_initialize):
6052 Implement fraction ranges and extend GstFraction to support
6053 arithmetic subtraction, as well as deserialization from integer
6054 strings such as "100"
6055 Add a testsuite as for int and double range set operations
6057 2005-11-21 Andy Wingo <wingo@pobox.com>
6061 * gst/gststructure.h: Add glib-compat.h.
6063 2005-11-21 Wim Taymans <wim@fluendo.com>
6065 * gst/gstbin.c: (gst_bin_change_state_func):
6068 2005-11-21 Wim Taymans <wim@fluendo.com>
6071 And add a nice define too.
6073 2005-11-21 Wim Taymans <wim@fluendo.com>
6075 * gst/gstsegment.c: (gst_segment_copy), (gst_segment_get_type),
6076 (gst_segment_new), (gst_segment_free), (gst_segment_init),
6077 (gst_segment_set_duration), (gst_segment_set_last_stop),
6078 (gst_segment_set_seek), (gst_segment_set_newsegment),
6079 (gst_segment_to_stream_time), (gst_segment_to_running_time),
6082 Make binding friendly.
6084 2005-11-21 Andy Wingo <wingo@pobox.com>
6086 * gst/gsttagsetter.h:
6088 * gst/gststructure.h:
6090 * gst/gstutils.h: Sprinkle NULL_TERMINATED to taste. Fixes
6093 * gst/gsterror.c (_gst_core_errors_init):
6094 * gst/gsterror.h (GST_CORE_ERROR_MISSING_PLUGIN): New error
6097 * gst/Makefile.am (gst_headers): Add glib-compat.h.
6098 (noinst_HEADERS): noinst the -private.
6100 2005-11-21 Michael Smith <msmith@fluendo.com>
6103 * gst/gstregistry.h:
6104 Remove unimplemented declarations for which we can see no sensible
6107 2005-11-21 Andy Wingo <wingo@pobox.com>
6109 * gst/gst.h: Include glib-compat.h.
6111 * gst/glib-compat.h: Add G_GNUC_NULL_TERMINATED.
6113 * gst/glib-compat.c: Include the public and the private header.
6115 * gst/glib-compat-private.h: Copied here from glib-compat.h.
6119 * gst/gstregistryxml.c: s/glib-compat/glib-compat-private/.
6121 * check/gst/gstevent.c (create_custom_events): Check that
6122 FLUSH_STOP is serialized.
6124 * check/elements/identity.c (event_func):
6125 * check/elements/fakesrc.c (event_func): No stream lock, the core
6128 * gst/base/gstbasetransform.c (gst_base_transform_event): No more
6129 stream lock taking, yay.
6131 * gst/gstevent.h (GST_EVENT_FLUSH_STOP): Marked as serialized to
6132 ensure that core takes the stream lock.
6134 * gst/base/gstbasesrc.c (gst_base_src_do_seek): Update for stream
6137 * gst/base/gstbasesink.c (gst_base_sink_event): No need to take
6138 the stream lock for EOS, NEWSEGMENT, or FLUSH_STOP, the core does
6139 it already. For the flush start we do take it though so we get the
6140 right preroll state change messages.
6142 * gst/gstqueue.c (gst_queue_sink_activate_push): No need to take
6143 the stream lock here, the core does it for us.
6145 * gst/gstpad.h (GST_PAD_GET_STREAM_LOCK): Renamed from
6146 GST_STREAM_GET_LOCK.
6147 (GST_PAD_STREAM_LOCK, GST_PAD_STREAM_TRYLOCK)
6148 (GST_PAD_STREAM_UNLOCK, GST_PAD_STREAM_UNLOCK_FULL)
6149 (GST_PAD_STREAM_LOCK_FULL): Renamed from GST_STREAM_*.
6150 (GST_PAD_GET_PREROLL_LOCK): Renamed from GST_PREROLL_GET_LOCK.
6151 (GST_PAD_PREROLL_LOCK, GST_PAD_PREROLL_TRYLOCK)
6152 (GST_PAD_PREROLL_UNLOCK): Renamed from GST_PREROLL_*.
6154 * gst/gstpad.c: Update for stream lock name change.
6156 * gst/base/gstbasesink.c: Update for preroll lock name change.
6158 2005-11-21 Wim Taymans <wim@fluendo.com>
6160 * gst/gstclock.c: (gst_clock_init), (gst_clock_set_master),
6161 (gst_clock_get_master):
6163 * gst/gstsystemclock.c: (gst_system_clock_init):
6164 Convert Clock flags to object flags.
6165 Added methods to manage master/slave clocks.
6167 2005-11-21 Wim Taymans <wim@fluendo.com>
6169 * check/gst/gstsegment.c: (GST_START_TEST):
6170 * docs/design/part-TODO.txt:
6171 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
6172 (gst_base_sink_event), (gst_base_sink_do_sync),
6173 (gst_base_sink_activate_pull), (gst_base_sink_get_position),
6174 (gst_base_sink_query), (gst_base_sink_change_state):
6175 * gst/base/gstbasesink.h:
6176 * gst/base/gstbasesrc.c: (gst_base_src_init), (gst_base_src_query),
6177 (gst_base_src_default_newsegment),
6178 (gst_base_src_configure_segment), (gst_base_src_do_seek),
6179 (gst_base_src_get_range), (gst_base_src_loop),
6180 (gst_base_src_change_state):
6181 * gst/base/gstbasesrc.h:
6182 * gst/base/gstbasetransform.c:
6183 (gst_base_transform_prepare_output_buf),
6184 (gst_base_transform_event), (gst_base_transform_change_state):
6185 * gst/base/gstbasetransform.h:
6186 * gst/base/gstcollectpads.c: (gst_collect_pads_add_pad),
6187 (gst_collect_pads_event):
6188 * gst/base/gstcollectpads.h:
6189 * gst/elements/gstfakesrc.c: (gst_fake_src_init),
6190 (gst_fake_src_create):
6191 * gst/elements/gstfakesrc.h:
6192 * gst/elements/gstidentity.c: (gst_identity_transform_ip):
6193 * gst/gstsegment.c: (gst_segment_init), (gst_segment_set_duration),
6194 (gst_segment_set_last_stop), (gst_segment_set_seek),
6195 (gst_segment_set_newsegment), (gst_segment_to_stream_time),
6196 (gst_segment_to_running_time), (gst_segment_clip):
6198 More segment updates, replace code in plugins with segment
6201 2005-11-21 Jan Schmidt <thaytan@mad.scientist.com>
6203 * gst/elements/gstfdsrc.c: (gst_fdsrc_uri_set_uri):
6204 Don't ignore sscanf results
6206 2005-11-21 Andy Wingo <wingo@pobox.com>
6208 * gst/gstpad.h (GST_IS_PAD_FAST): Removed.
6211 * *.c: Ran scripts/update-macros. Oh yes.
6213 * gst/gstobject.h (GST_OBJECT_GET_LOCK, GST_OBJECT_LOCK)
6214 (GST_OBJECT_TRYLOCK, GST_OBJECT_UNLOCK): Renamed from
6217 * scripts/update-macros: New script. Run it on your files to
6218 change GST_LOCK to GST_OBJECT_LOCK, and the same for UNLOCK as
6221 2005-11-21 Stefan Kost <ensonic@users.sf.net>
6223 * docs/gst/Makefile.am:
6224 * docs/gst/gstreamer-docs.sgml:
6225 * docs/gst/gstreamer-sections.txt:
6226 * docs/gst/gstreamer.types:
6228 more docs fixes, add new api to the docs
6230 2005-11-21 Andy Wingo <wingo@pobox.com>
6232 * gst/gstbin.c (gst_bin_remove_func): Wim claims I can remove this
6233 state_broadcast call.
6235 * gst/gstsegment.c (gst_segment_init): Initialize abs_rate.
6237 2005-11-21 Julien MOUTTE <julien@moutte.net>
6239 * gst/gstvalue.c: (gst_value_intersect_array): Fix wrong
6240 function calls for arrays.
6242 2005-11-21 Stefan Kost <ensonic@users.sf.net>
6244 * docs/random/ensonic/media-device-daemon.txt:
6245 wild idea, can this be done?
6246 * docs/gst/gstreamer-sections.txt:
6251 * gst/gstpluginfeature.c:
6255 doc fixes and additions
6257 2005-11-21 Andy Wingo <wingo@pobox.com>
6259 * gst/base/gstbasesrc.c (GST_LIVE_BROADCAST, GST_LIVE_SIGNAL)
6260 (GST_LIVE_TIMED_WAIT, GST_LIVE_WAIT, GST_LIVE_GET_COND)
6261 (GST_LIVE_UNLOCK, GST_LIVE_TRYLOCK, GST_LIVE_LOCK)
6262 (GST_LIVE_GET_LOCK): Moved here from gstbasesrc.h. They are
6263 private to the basesrc implementation.
6265 * gst/gstpad.c (gst_pad_send_event): Doc more. Take stream lock on
6266 behalf of event function if necessary. It should no longer be
6267 necessary to take the stream lock in pad's event functions. Fixes
6270 2005-11-21 Jan Schmidt <thaytan@mad.scientist.com>
6271 * docs/gst/gstreamer-sections.txt:
6272 * gst/gststructure.c: (gst_structure_fixate_field_nearest_int),
6273 (gst_structure_fixate_field_nearest_double),
6274 (gst_structure_fixate_field_boolean):
6275 * gst/gststructure.h:
6276 * win32/common/libgstreamer.def:
6277 * win32/gstreamer.def:
6279 Rename gst_caps_structure_fixate_* to gst_structure_fixate_*
6282 2005-11-21 Jan Schmidt <thaytan@mad.scientist.com>
6284 * gst/elements/gstfdsrc.c: (_do_init), (gst_fdsrc_class_init),
6285 (gst_fdsrc_init), (gst_fdsrc_dispose), (gst_fdsrc_set_property),
6286 (gst_fdsrc_uri_get_type), (gst_fdsrc_uri_get_protocols),
6287 (gst_fdsrc_uri_get_uri), (gst_fdsrc_uri_set_uri),
6288 (gst_fdsrc_uri_handler_init):
6289 * gst/elements/gstfdsrc.h:
6290 Port fd:// URI handler from 0.8 to fdsrc
6292 2005-11-21 Tim-Philipp Müller <tim at centricular dot net>
6294 * gst/gstvalue.c: (gst_value_transform_fourcc_string),
6295 (gst_value_serialize_fourcc):
6297 Drop leading '%' from GST_FOURCC_FORMAT, thus making it
6298 consistent with our other format defines (#320324).
6300 2005-11-21 Tim-Philipp Müller <tim at centricular dot net>
6302 * gst/gstvalue.c: (gst_value_is_fixed):
6303 Revert previous commit. Value lists are by definition
6304 not fixed, as they are a list of possible values.
6306 2005-11-21 Andy Wingo <wingo@pobox.com>
6308 * gst/gstevent.h (GST_EVENT_FILLER): Removed. Can be added back
6309 during the stable series if we need it. Fixes #319178.
6311 * gst/gstevent.c (gst_event_new_filler): Removed.
6313 * check/gst/gstevent.c: Update comment about filler events.
6315 2005-11-21 Tim-Philipp Müller <tim at centricular dot net>
6317 * gst/gstvalue.c: (gst_value_is_fixed):
6318 Should handle both value arrays and value lists.
6320 2005-11-21 Andy Wingo <wingo@pobox.com>
6322 patch by: Alessandro Dessina <alessandro nnva org>
6324 * gst/gstvalue.c (gst_value_is_fixed): Use gst_value_array
6325 functions to access arrays. Fixes #321962.
6327 2005-11-21 Tim-Philipp Müller <tim at centricular dot net>
6329 * docs/gst/gstreamer.types:
6330 gst_collectpads_get_type => gst_collect_pads_get_type.
6332 * gst/base/gstbasetransform.c:
6333 Remove unused SIGNAL_HANDOFF enum.
6335 2005-11-21 Andy Wingo <wingo@pobox.com>
6337 * gst/gstevent.h (GstEventTypeFlags): New data type, the flags of
6338 the event type (upstream, downstream, serialized). Renamed
6339 GST_EVDIR_* and GST_EVSER to GST_EVENT_TYPE_*.
6340 (GstEventType): Use GstEventTypeFlags. Rename CUSTOM_UP to
6341 CUSTOM_UPSTREAM, CUSTOM_DS to CUSTOM_DOWNSTREAM, etc.
6343 * gst/gstevent.c: Update for new CUSTOM event names.
6345 * check/gst/gstevent.c: Update check for new CUSTOM event names.
6348 * gst/gstevent.c (gst_event_type_get_flags): New function. Fixes
6351 2005-11-21 Tim-Philipp Müller <tim at centricular dot net>
6353 * docs/gst/gstreamer-sections.txt:
6354 * win32/common/libgstbase.def:
6355 * win32/libgstbase.def:
6356 * gst/base/gstcollectpads.c: (gst_collect_pads_base_init),
6357 (gst_collect_pads_class_init), (gst_collect_pads_init),
6358 (gst_collect_pads_finalize), (gst_collect_pads_new),
6359 (gst_collect_pads_set_function), (gst_collect_pads_add_pad),
6360 (gst_collect_pads_remove_pad), (gst_collect_pads_is_active),
6361 (gst_collect_pads_collect), (gst_collect_pads_collect_range),
6362 (gst_collect_pads_start), (gst_collect_pads_stop),
6363 (gst_collect_pads_peek), (gst_collect_pads_pop),
6364 (gst_collect_pads_available), (gst_collect_pads_read),
6365 (gst_collect_pads_flush), (gst_collect_pads_event),
6366 (gst_collect_pads_chain):
6367 * gst/base/gstcollectpads.h:
6368 Rename gst_collecpads_foo() => gst_collect_pads_foo(). Document
6369 unimplemented functions as unimplemented. Add padding to
6370 GstCollectData. (#320766, #320423)
6372 2005-11-21 Tim-Philipp Müller <tim at centricular dot net>
6375 Improve docs for DURATION message (usage of duration parameter)
6378 2005-11-20 Wim Taymans <wim@fluendo.com>
6380 * check/Makefile.am:
6381 * check/gst/gstsegment.c: (GST_START_TEST), (gstevents_suite),
6385 * gst/gstsegment.c: (gst_segment_init), (gst_segment_set_duration),
6386 (gst_segment_set_seek), (gst_segment_set_newsegment),
6387 (gst_segment_to_stream_time), (gst_segment_to_running_time),
6390 Added segment helper structure and methods. Not fully implemented
6392 Added segment check.
6394 2005-11-20 Jan Schmidt <thaytan@mad.scientist.com>
6396 * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
6397 Add a deserialisation test for fractions
6398 * examples/metadata/read-metadata.c: (message_loop),
6399 (make_pipeline), (main):
6400 Fix up metadata reading sample.
6401 * gst/base/gstbasesink.c: (gst_base_sink_do_sync):
6403 * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
6404 Don't try and fixate empty caps
6405 * gst/gst_private.h:
6406 Wrap in G_BEGIN_DECLS/G_END_DECLS
6407 * gst/gstvalue.c: (gst_value_collect_fraction),
6408 (gst_value_set_fraction), (gst_value_get_fraction_denominator),
6409 (gst_value_transform_string_fraction),
6410 (gst_value_compare_fraction):
6411 Add some extra guards to ensure that we don't end up
6412 with an invalid denominator of 0 in a gstfraction and
6413 that fractions always get reduced.
6415 2005-11-20 Wim Taymans <wim@fluendo.com>
6417 * docs/gst/gstreamer-sections.txt:
6428 2005-11-20 Wim Taymans <wim@fluendo.com>
6430 * docs/design/part-TODO.txt:
6432 Make a proper enum of the flag.
6434 2005-11-19 Wim Taymans <wim@fluendo.com>
6436 * docs/design/part-TODO.txt:
6437 * gst/gstformat.c: (_gst_format_initialize), (gst_format_get_name),
6438 (gst_format_to_quark), (gst_format_register):
6440 * gst/gstquery.c: (_gst_query_initialize),
6441 (gst_query_type_get_name), (gst_query_type_to_quark),
6442 (gst_query_type_register):
6444 Add type to quark and type to string conversions.
6446 2005-11-19 Andy Wingo <wingo@pobox.com>
6448 * gst/gstbuffer.h (GST_BUFFER_FLAG_ORIGINAL): Removed. Fixes
6451 2005-11-19 Wim Taymans <wim@fluendo.com>
6453 * docs/design/part-TODO.txt:
6454 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_provide_clock_func),
6455 (gst_bin_add_func), (gst_bin_remove_func), (bin_bus_handler),
6456 (gst_bin_handle_message_func):
6458 Make message handling overridable.
6460 2005-11-19 Andy Wingo <wingo@pobox.com>
6462 * gst/gstpad.h (GST_PAD_IS_USABLE): Removed. Fixes #321235.
6465 * gst/gstclock.c (GstClock, GstClockClass): Change resolution to
6467 (gst_clock_set_resolution, gst_clock_get_resolution): Resolution
6468 is a GstClockTime. Fixes #321710.
6470 * gst/gstclock.h (GstClock): Remove offset property. Add
6471 internal_calibration and external_calibration. Fix padding. Pad
6472 also by GstClockTime so we don't run into problems.
6474 * gst/gstclock.c (gst_clock_set_rate_offset): Remove.
6475 (gst_clock_get_rate_offset): Remove.
6476 (gst_clock_set_time_adjust): Remove. Fixes #321712.
6479 * gst/gstutils.c (g_static_rec_cond_wait)
6480 (g_static_rec_cond_timed_wait): Removed, no longer needed.
6482 * gst/gstbin.c: Remove terrible continue_state prototype.
6484 * gst/gstelement.h (gst_element_continue_state): Make public.
6487 * gst/gstelement.c (gst_element_commit_state): Removed, replaced
6488 by continue_state. Fixes #319389.
6490 * gst/gstindex.h (GstIndexFilter): Actually pass on the user_data.
6491 Really fixes #168438. However I don't see anywhere where the
6492 filter function is called... stupid GStreamer...
6494 * gst/gstindex.h (GstIndex): Add field for user_data_destroy. We
6495 don't have a dispose function, so it won't get called when the
6496 object is unreffed, but oh well!
6498 * gst/gstindex.c (gst_index_set_filter_full): New API function,
6499 allows a destroy function to be set so user_data can be freed.
6501 (gst_index_set_filter): Call gst_index_set_filter_full.
6503 * check/gst/gstvalue.c (test_string): Add test for bug #165650.
6505 * gst/gstvalue.c (gst_string_wrap): Trying to serialize a NULL
6506 string should produce an error, given the lack of a way to
6507 represent NULL strings. Fixes #165650.
6510 * gst/gstvalue.c (gst_value_array_append_value)
6511 (gst_value_array_prepend_value, gst_value_array_get_size)
6512 (gst_value_array_get_value): New API, copied from
6513 gst_value_list_*, only operates on arrays.
6514 (gst_value_list_append_value, gst_value_list_prepend_value)
6515 (gst_value_list_concat, gst_value_list_get_size)
6516 (gst_value_list_get_value): Only operate on lists. Fixes #156633.
6518 * gst/gstvalue.c (gst_value_init_list_or_array): Renamed from
6519 init_list, because it works on both.
6520 (copy_garray_of_gstvalue): Renamed from gst_value_list_copy_array.
6521 (gst_value_copy_list_or_array): Renamed from copy_list.
6522 (gst_value_free_list_or_array): Renamed from free_list.
6523 (gst_value_collect_list_or_array): Renamed from collect_list.
6524 (gst_value_lcopy_list_or_array): Renamed from lcopy_list.
6525 (gst_value_list_or_array_peek_pointer): Renamed from
6527 (_gst_value_array_value_table, _gst_value_list_value_table):
6528 Update value table functions.
6529 (gst_value_compare_list_or_array): Renamed from compare_list.
6531 * gsttaglist.h: Whoops, foreach function returns void. Also fix
6535 * gst/gsttaglist.h (gst_tag_list_foreach): Operates on a const
6536 GstTagList*. Fixes #143472.
6538 * gst/gststructure.h: Clarify what the foreach/map functions can
6539 or can't do to their arguments.
6541 2005-11-18 Wim Taymans <wim@fluendo.com>
6543 * gst/gstclock.c: (gst_clock_set_calibration),
6544 (gst_clock_get_calibration):
6546 Calibration can be set with internal time equal to current
6549 2005-11-18 Thomas Vander Stichele <thomas at apestaart dot org>
6555 2005-11-18 Andy Wingo <wingo@pobox.com>
6558 * pkgconfig/gstreamer-net.pc.in:
6559 * pkgconfig/gstreamer-net-uninstalled.pc.in:
6560 * pkgconfig/Makefile.am: Add net pkgconfig files.
6562 2005-11-18 Stefan Kost <ensonic@users.sf.net>
6565 * gst/gstghostpad.c:
6571 2005-11-18 Andy Wingo <wingo@pobox.com>
6573 * gst/net/gstnetclientclock.c: Turn off debugging.
6575 * check/net/gstnetclientclock.c (test_functioning): Assert that the
6576 times connverge somewhat. Can't make a real test.
6578 * gst/net/gstnetclientclock.c (do_linear_regression): Use all
6579 integer arithmetic. Return the minimum of the domain, which can be
6580 set as "internal" for gst_clock_set_calibration.
6581 (gst_net_client_clock_observe_times): Call _set_calibration.
6582 (gst_net_client_clock_new): Call _set_calibration instead of
6585 * check/net/gstnetclientclock.c (test_functioning): Use the right
6589 * gst/gstclock.c (gst_clock_get_calibration)
6590 (gst_clock_set_calibration): New functions, obsolete the ones I
6591 added yesterday. Doh. Precision issues mean we have to extrapolate
6592 from a point in the more recent past than 1970.
6593 (gst_clock_get_rate_offset, gst_clock_set_rate_offset): Mark as
6595 (gst_clock_adjust_unlocked): Use the right calibration data.
6597 2005-11-18 Edward Hervey <edward@fluendo.com>
6599 * gst/base/gstbasesink.c: (gst_base_sink_change_state):
6600 Also reset the ->current_* values in READY->PAUSED
6602 2005-11-18 Andy Wingo <wingo@pobox.com>
6604 * gst/net/gstnetclientclock.c (gst_net_client_clock_thread):
6605 Whoops, check the right fd. Also add some debugging.
6606 (gst_net_client_clock_observe_times): Adjust for int64 offset.
6607 (do_linear_regression): Add a crapload of debugging. Subtract off
6608 the minimum values from the input series to discard unneeded bits.
6609 Use only int arithmetic. There is still double arithmetic when
6610 calculating the intercept that needs fixing. Return boolean to
6611 indicate success; FALSE would mean the domain or range is too
6612 great. Still needs fixes.
6614 2005-11-18 Wim Taymans <wim@fluendo.com>
6616 * gst/base/gstbasesink.c: (gst_base_sink_get_position):
6617 For the current position in stream time, we need to subtract
6620 * gst/gstsystemclock.c: (gst_system_clock_async_thread):
6621 Release lock before calling the callback function of async
6624 2005-11-18 Andy Wingo <wingo@pobox.com>
6626 * gst/net/gstnetclientclock.c (gst_net_client_clock_class_init):
6627 Port goes all the way to MAXUINT16.
6629 * gst/net/gstnettimeprovider.c: Make the port range the same as
6630 for the kernel: 0 assigns, otherwise ports are less than
6633 * check/net/gstnettimeprovider.c: Adapt for 0 == kernel assigns
6636 * check/net/gstnetclientclock.c (test_functioning): Add the start
6639 2005-11-18 Wim Taymans <wim@fluendo.com>
6641 * gst/gstbin.c: (gst_bin_provide_clock_func), (gst_bin_add_func),
6642 (gst_bin_remove_func), (bin_bus_handler):
6644 Removing a clock provider from a bin, triggers a clock lost message
6645 so that a new clock will be selected.
6646 Adding a clock to a bin triggers a clock provider message.
6647 Make sure we reselect a clock when we received a clock lost message.
6648 Keep a reference to the element that provided the clock.
6650 2005-11-18 Andy Wingo <wingo@pobox.com>
6652 * gst/net/gstnetclientclock.c (gst_net_client_clock_new): Adjust
6653 the clock initially so it produces values around the base time.
6654 (gst_net_client_clock_class_init): Typo fix.
6655 (gst_net_client_clock_thread): Add note on when the socket gets
6658 2005-11-17 Wim Taymans <wim@fluendo.com>
6660 * gst/net/gstnetclientclock.c: (gst_net_client_clock_finalize):
6661 Free remote and local time arrays.
6663 2005-11-17 Wim Taymans <wim@fluendo.com>
6665 * gst/net/gstnetclientclock.c: (do_linear_regression),
6666 (gst_net_client_clock_do_select), (gst_net_client_clock_thread):
6667 Fix compilation, uninitialized vars and a forgotten continue.
6669 2005-11-17 Andy Wingo <wingo@pobox.com>
6671 * check/Makefile.am (check_PROGRAMS):
6672 * check/net/gstnetclientclock.c: Add a most minimal test for the
6673 net client clock. More to come later.
6676 * gst/net/Makefile.am: Add netclientclock.
6678 * gst/net/gstnetclientclock.h:
6679 * gst/net/gstnetclientclock.c: New files, implement an untested
6680 GstClock that takes its time from a network time provider.
6681 Implements the algorithm in network-clock.scm.
6683 * tests/network-clock.scm (*window-size*): Rename from
6685 * tests/network-clock.scm (network-time):
6686 * tests/network-clock-utils.scm (q-push): Update callers.
6688 2005-11-17 Wim Taymans <wim@fluendo.com>
6690 * gst/gstbin.c: (gst_bin_provide_clock_func),
6691 (gst_bin_sort_iterator_new):
6692 And unref the child too..
6694 2005-11-17 Wim Taymans <wim@fluendo.com>
6696 * gst/gstbin.c: (gst_bin_dispose), (gst_bin_provide_clock_func),
6697 (gst_bin_sort_iterator_new), (gst_bin_iterate_sorted):
6698 Refactor the sort iterator so it can be used while holding the
6700 Make clock selection select a clock closest to the source.
6702 2005-11-17 Michael Smith <msmith@fluendo.com>
6704 * gst/gstclock.c: (gst_clock_init), (gst_clock_adjust_unlocked),
6705 (gst_clock_set_rate_offset), (gst_clock_get_rate_offset):
6707 Anonymous structs are a gcc (and some other compilers) extension, so
6708 don't use them. Since this is only for ABI-compatibility, and our
6709 API/ABI freeze is over in a few days, this whole thing will only
6710 last a few days, so don't bother trying to think up a meaningful
6711 name for the struct.
6713 2005-11-17 Andy Wingo <wingo@pobox.com>
6715 * gst/gstclock.h (GstClock): Add rate and offset properties,
6716 preserving ABI stability. Add rate/offset accessors. Will file bug
6717 for the freeze break.
6719 * gst/gstclock.c (gst_clock_adjust_unlocked): Implement using rate
6720 and offset, trying to keep precision and avoiding
6722 (gst_clock_set_rate_offset, gst_clock_get_rate_offset): New
6723 functions. Make gst_clock_set_time_adjust obsolete.
6724 (gst_clock_set_time_adjust): Note that this function is obsolete.
6727 * gst/base/gstbasetransform.h: Make the ABI-stability hack
6728 greppable by using GST_PADDING-1+1.
6730 2005-11-17 Torsten Schoenfeld <kaffeetisch at gmx dot net>
6732 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
6734 * gst/gstmessage.c: (gst_message_parse_clock_lost):
6735 Assertion should check for CLOCK_LOST, not NEW_CLOCK (#321648).
6737 * gst/gstpadtemplate.h:
6738 * gst/gstpluginfeature.h:
6739 Don't use c++ style comments in headers (#321638).
6741 2005-11-16 Andy Wingo <wingo@pobox.com>
6743 * gst/net/gstnettimepacket.c (gst_net_time_packet_send): Free
6746 * check/net/gstnettimeprovider.c: Check to see that the time
6747 provider actually provides times. Works, yo!
6749 2005-11-16 Wim Taymans <wim@fluendo.com>
6751 * check/Makefile.am:
6754 * check/elements/fakesrc.c: (GST_START_TEST):
6755 Set element to NULL before disposing it.
6757 2005-11-16 Andy Wingo <wingo@pobox.com>
6759 * gst/net/Makefile.am:
6761 * gst/net/gstnettimeprovider.c:
6762 * gst/net/gstnettimeprovider.h: Use the timepacket stuff in the
6763 provider, include it from gstnet.h, and add it to the build.
6765 * gst/net/gstnettimepacket.h:
6766 * gst/net/gstnettimepacket.c: New files, abstracts out the packet
6767 sending and receiving.
6769 2005-11-16 Wim Taymans <wim@fluendo.com>
6771 * check/Makefile.am:
6772 Enable valgrind check.
6774 * gst/elements/gstfakesrc.c: (gst_fake_src_alloc_parent),
6775 (gst_fake_src_alloc_buffer):
6778 2005-11-16 Wim Taymans <wim@fluendo.com>
6780 * gst/net/gstnettimeprovider.c: (gst_net_time_provider_finalize):
6781 Call parent finalize too.
6783 2005-11-16 Wim Taymans <wim@fluendo.com>
6785 * check/Makefile.am:
6786 Enable valgrind check that should work fine now.
6788 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init):
6789 * gst/gstqueue.c: (gst_queue_init):
6790 Fix memleaks in pad allocation.
6792 2005-11-16 Andy Wingo <wingo@pobox.com>
6794 * gst/net/Makefile.am:
6795 * gst/net/gstnet.h: New part of core to hold network elements and
6796 objects. Put in core because it exposes API that applications want
6797 to use. The library is named libgstnet-tempname right now because
6798 of the existing libgstnet in gst-plugins-base. Solution is
6799 probably to rename the one in plugins-base; will file a bug for
6802 * gst/net/gstnettimeprovider.c:
6803 * gst/net/gstnettimeprovider.h: New object to export a GstClock's
6804 get_time call over the network.
6807 * gst/Makefile.am (lib_LTLIBRARIES): Add gstnet to the build.
6809 * check/Makefile.am:
6810 * check/net/gstnettimeprovider.c: A most minimal test suite. Will
6811 get additions shortly.
6813 2005-11-16 Thomas Vander Stichele <thomas at apestaart dot org>
6815 * gst/gstpad.c: (gst_pad_new_from_static_template):
6817 add gst_pad_new_from_static_template functions
6818 * gst/check/gstcheck.c: (gst_check_setup_src_pad),
6819 (gst_check_setup_sink_pad):
6820 * gst/elements/gsttee.c: (gst_tee_init):
6823 2005-11-16 Wim Taymans <wim@fluendo.com>
6825 * gst/gstpad.c: (gst_pad_pause_task):
6826 Removed warning, it's not really an error either.
6828 2005-11-16 Wim Taymans <wim@fluendo.com>
6830 * gst/base/gstbasetransform.c:
6831 (gst_base_transform_prepare_output_buf),
6832 (gst_base_transform_event):
6833 Check if the caps are NULL, this can happen if the element
6834 is shutting down and the pad caps are set to NULL.
6836 2005-11-16 Thomas Vander Stichele <thomas at apestaart dot org>
6838 * gst/elements/gsttee.c: (gst_tee_init):
6839 fix pad template leak in tee
6841 2005-11-16 Thomas Vander Stichele <thomas at apestaart dot org>
6843 * gst/glib-compat.c: (g_value_dup_gst_object):
6844 * gst/glib-compat.h:
6845 * gst/gstpad.c: (gst_pad_set_property):
6846 use gst_object_ref when setting the pad template; this will
6847 trigger the pad template leaks on GLib 2.6 and the slaves
6849 2005-11-16 Thomas Vander Stichele <thomas at apestaart dot org>
6851 * gst/glib-compat.c: (gst_flags_get_first_value):
6852 * gst/glib-compat.h:
6853 * gst/gstregistryxml.c:
6854 remove functions copied from GLib 2.6
6856 2005-11-16 Michael Smith <msmith@fluendo.com>
6859 Don't link against VALGRIND_LIBS. That was always the wrong thing to
6860 do, but only breaks with newer valgrind versions. We're not a
6861 valgrind tool, we have no link-time dependencies on libcoregrind.
6863 2005-11-16 Thomas Vander Stichele <thomas at apestaart dot org>
6865 * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
6870 2005-11-16 Thomas Vander Stichele <thomas at apestaart dot org>
6872 * gst/base/gstbasesrc.c: (gst_base_src_init):
6873 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init):
6874 * gst/gstqueue.c: (gst_queue_init):
6875 * gst/gstregistryxml.c: (load_feature):
6876 Revert all these unrefs, they don't even pass make check !
6878 2005-11-15 Johan Dahlin <johan@gnome.org>
6880 * gst/base/gstbasesrc.c: (gst_base_src_init):
6881 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init):
6882 * gst/gstqueue.c: (gst_queue_init):
6883 Free pad templates, fixes a couple of leaks.
6885 2005-11-15 Daniel Fischer <dan at f3c dot com>
6887 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
6889 * gst/gstpad.c: (gst_pad_get_property):
6890 GST_PAD_PAD_TEMPLATE(pad) gets the pad template, while
6891 GST_PAD_TEMPLATE(pad) does a cast. We want the former here.
6894 2005-11-15 Wim Taymans <wim@fluendo.com>
6899 2005-11-15 Andy Wingo <wingo@pobox.com>
6901 * gst/gstelement.c (gst_element_set_base_time): Add debugging.
6903 * gst/gstpipeline.c (gst_pipeline_set_new_stream_time): Document
6904 using GST_CLOCK_TIME_NONE to disable base time management.
6905 (do_pipeline_seek, gst_pipeline_change_state): Don't reset stream
6906 time if it was NONE before.
6907 (gst_pipeline_change_state): Only munge the base time if
6908 stream_time != GST_CLOCK_TIME_NONE.
6910 * check/gst/gstpipeline.c (test_base_time): Punt around the
6911 problem of the probe not being called, because that's not the
6912 issue I'm looking at. Add a check that setting stream_time to NONE
6913 disables base time management.
6915 2005-11-15 Wim Taymans <wim@fluendo.com>
6917 * gst/base/gstbasesink.c: (gst_base_sink_change_state):
6918 segment_stop == -1 at startup.
6920 * gst/base/gstbasetransform.c: (gst_base_transform_event),
6921 (gst_base_transform_change_state):
6922 Init segment values at start.
6924 2005-11-15 Wim Taymans <wim@fluendo.com>
6926 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
6927 0 segment values are 0 in any format.
6929 * gst/base/gstbasetransform.c: (gst_base_transform_event):
6930 * gst/base/gstbasetransform.h:
6931 Parse newsegment correctly in basetransform
6933 * gst/elements/gstidentity.c: (gst_identity_transform_ip):
6934 Sync to clock using updated segment values.
6936 2005-11-15 Andy Wingo <wingo@pobox.com>
6938 * check/gst/gstpipeline.c (test_base_time): Add check that the
6939 base time and stream time are reset correctly.
6941 2005-11-15 Wim Taymans <wim@fluendo.com>
6943 * docs/design/part-TODO.txt:
6944 Some more TODO items.
6946 2005-11-15 Andy Wingo <wingo@pobox.com>
6948 * gst/elements/gstfakesrc.c (gst_fake_src_create): It's not an
6949 error if the user selected "no clock" as the clocking method.
6951 * check/gst/gstpipeline.c (test_base_time): New test for buffer
6952 timestamps with live capture.
6954 * gst/elements/gstfakesrc.c (gst_fake_src_create): If the datarate
6955 is 0 but we are a live source, timestamp the buffers using the
6958 2005-11-14 Stefan Kost <ensonic@users.sf.net>
6960 * docs/gst/gstreamer-sections.txt:
6962 * gst/gstghostpad.c:
6967 2005-11-14 Wim Taymans <wim@fluendo.com>
6970 add suppressions from Wim's Debian machine
6972 2005-11-14 Thomas Vander Stichele <thomas at apestaart dot org>
6975 add suppressions from Andy's AMD64 Ubuntu machine
6977 2005-11-14 Andy Wingo <wingo@pobox.com>
6979 * gst/gstpad.c (gst_pad_set_active): Change docs; parent's
6980 STATE_LOCK not necessary. Fixes #311489.
6982 * gst/gsterror.c (FILE_A_BUG): Be polite *and* helpful. Fixes
6985 * gst/gstindex.c (gst_index_add_object): Note in the docs that
6986 this function is not implemented.
6988 2005-11-14 Julien MOUTTE <julien@moutte.net>
6990 * gst/base/gstbasetransform.c:
6991 (gst_base_transform_prepare_output_buf):
6992 Ref the source pad caps while we need them.
6995 2005-11-11 Wim Taymans <wim@fluendo.com>
6997 * docs/gst/gstreamer-sections.txt:
6998 Added some docs for GstCollectData.
7000 * gst/base/gstadapter.c:
7001 Some small code example fix.
7003 * gst/base/gstcollectpads.c:
7004 * gst/base/gstcollectpads.h:
7007 2005-11-11 Thomas Vander Stichele <thomas at apestaart dot org>
7009 * configure.ac: back to HEAD
7011 === release 0.9.5 ===
7013 2005-11-11 Thomas Vander Stichele <thomas at apestaart dot org>
7016 releasing 0.9.5, "Bike Lunch Day"
7018 2005-11-11 Wim Taymans <wim@fluendo.com>
7020 * gst/gstbuffer.c: (_gst_buffer_copy):
7023 * gst/gstcaps.c: (gst_caps_is_equal):
7025 Make _is_equal fast in the trivial cases.
7027 * gst/gstminiobject.c:
7028 * gst/gstminiobject.h:
7029 More docs. Spifify .h file.
7034 2005-11-11 Wim Taymans <wim@fluendo.com>
7036 * gst/base/gstbasetransform.c:
7037 (gst_base_transform_prepare_output_buf),
7038 (gst_base_transform_handle_buffer):
7040 If we're processing a buffer and need to allocate an output
7041 buffer, we cannot accept a format change. If we did get a
7042 format change, we have to alloc a buffer ourselves of the
7045 2005-11-11 Wim Taymans <wim@fluendo.com>
7047 * gst/gstpad.c: (gst_pad_get_caps), (gst_pad_peer_get_caps):
7048 While checking the flag for reentrancy in the gstcaps function
7049 is nice to detect recursive invocations, it also makes it
7050 impossible to call getcaps from multiple threads, which must be
7051 possible. So, checking for recursive calls has to go.
7053 2005-11-11 Michael Smith <msmith@fluendo.com>
7055 * gst/base/gstbasesink.c: (gst_base_sink_do_sync):
7056 Don't sync on buffers that fall partially outside our current
7057 segment. Prevents an assertion failure/abort playing some files.
7059 2005-11-10 Andy Wingo <wingo@pobox.com>
7061 * check/gst/gstbin.c (test_message_state_changed_children): Style
7064 * gst/gstbus.c (poll_destroy, poll_func, gst_bus_poll): Implement
7065 gst_bus_poll with the signal watch. Ensures that poll and a signal
7066 watch see the same messages.
7068 * check/gst/gstbus.c (test_watch_with_poll): New test, checks that
7069 a poll and a watch at the same time get the same messages.
7071 2005-11-10 Thomas Vander Stichele <thomas at apestaart dot org>
7073 * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps):
7074 * gst/gstcaps.c: (gst_caps_intersect):
7075 Don't call gst_caps_do_simplify - it doesn't respect order of caps
7076 and it's not needed.
7078 2005-11-10 Wim Taymans <wim@fluendo.com>
7080 * docs/design/part-TODO.txt:
7083 2005-11-10 Wim Taymans <wim@fluendo.com>
7085 * gst/base/gstbasesink.c: (gst_base_sink_do_sync):
7086 * gst/base/gstbasesrc.c: (gst_base_src_wait),
7087 (gst_base_src_do_sync), (gst_base_src_get_range):
7088 Implement clock sync in base class.
7090 2005-11-10 Thomas Vander Stichele <thomas at apestaart dot org>
7092 patch by: Tim-Philipp Müller <tim at centricular dot net>
7094 * gst/gststructure.c: (gst_structure_parse_field),
7095 (gst_structure_from_string):
7096 Forward-port a 0.8 patch to handle escaped spaces in structure string,
7097 so that gst_parse_launch() can deal with spaces in filtered link
7098 caps (fixes #164479)
7099 * check/gst/capslist.h:
7100 * check/gst/gststructure.c: (GST_START_TEST):
7101 add unit tests for this change
7103 2005-11-10 Wim Taymans <wim@fluendo.com>
7105 * docs/gst/gstreamer-sections.txt:
7108 Fix docs, move some STATE macros to private.
7110 2005-11-10 Wim Taymans <wim@fluendo.com>
7112 * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
7113 Added check for bug #317341
7117 Some more spiffifying.
7119 * gst/gstghostpad.c: (gst_ghost_pad_do_link):
7120 Call peer linkfunction if we are a source pad. Totally fixes
7124 Update docs, source pads should call the peer linkfunction
7125 so they can atomically perform the pad link.
7127 2005-11-09 Wim Taymans <wim@fluendo.com>
7131 Uber-spiffy-spiffify some more.
7133 2005-11-09 Tim-Philipp Müller <tim at centricular dot net>
7135 * gst/base/gstcollectpads.c: (gst_collectpads_add_pad):
7136 * gst/elements/gstfilesink.c: (gst_file_sink_init):
7137 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init):
7138 * gst/gstghostpad.c: (gst_ghost_pad_set_internal),
7139 (gst_ghost_pad_init), (gst_ghost_pad_new_notarget):
7140 * gst/gstpad.c: (gst_pad_init):
7141 Use GST_DEBUG_FUNCPTR() more extensively.
7143 2005-11-09 Wim Taymans <wim@fluendo.com>
7145 * gst/gstobject.c: (gst_object_class_init):
7147 Documentation fixes.
7149 2005-11-09 Edward Hervey <edward@fluendo.com>
7151 * gst/gsttypefindfactory.c:
7154 2005-11-09 Edward Hervey <edward@fluendo.com>
7156 * gst/base/gsttypefindhelper.c:
7157 * gst/gsttypefind.c:
7158 * gst/gsttypefind.h:
7161 2005-11-09 Wim Taymans <wim@fluendo.com>
7163 * gst/gstiterator.c:
7170 2005-11-09 Wim Taymans <wim@fluendo.com>
7176 2005-11-09 Wim Taymans <wim@fluendo.com>
7178 * docs/gst/gstreamer-sections.txt:
7179 Moved the message async delivery private lock and cond
7180 to the private section.
7186 2005-11-09 Edward Hervey <edward@fluendo.com>
7188 * docs/gst/gstreamer-sections.txt:
7191 Document GstURIHandler
7193 2005-11-09 Wim Taymans <wim@fluendo.com>
7195 * gst/gstiterator.c: (gst_iterator_fold), (gst_iterator_foreach),
7196 (gst_iterator_find_custom):
7197 * gst/gstiterator.h:
7200 2005-11-09 Wim Taymans <wim@fluendo.com>
7203 Document another field.
7205 * gst/gststructure.c:
7206 * gst/gststructure.h:
7209 2005-11-09 Wim Taymans <wim@fluendo.com>
7214 2005-11-09 Wim Taymans <wim@fluendo.com>
7216 * docs/gst/gstreamer-sections.txt:
7217 Added some new macros.
7224 2005-11-09 Wim Taymans <wim@fluendo.com>
7226 * docs/design/part-TODO.txt:
7227 Some more items for the TODO
7233 2005-11-09 Andy Wingo <wingo@pobox.com>
7235 * gst/base/gstbasesink.c: Add the beginning of docs here -- have
7236 to work on something else now tho...
7238 * gst/base/gstadapter.c: More adapter docs.
7240 * gst/elements/gstfilesink.c (gst_file_sink_start)
7241 (gst_file_sink_stop): New functions, replace the state change
7243 (gst_file_sink_class_init): Hook up the start and stop functions.
7244 (gst_file_sink_base_init): Don't set the state change handler any
7245 more. It was a bit ugly too, being set from here...
7246 (gst_file_sink_get_property, gst_file_sink_set_property):
7248 (gst_file_sink_set_location): More robust check that doesn't call
7251 2005-11-08 Tim-Philipp Müller <tim at centricular dot net>
7253 * gst/base/gstbasetransform.c: (gst_base_transform_event):
7254 Hold STREAM_LOCK while pushing newsegment or tag events as well.
7256 2005-11-08 Wim Taymans <wim@fluendo.com>
7258 * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
7259 (gst_base_sink_do_sync), (gst_base_sink_handle_event),
7260 (gst_base_sink_chain), (gst_base_sink_change_state):
7261 * gst/base/gstbasesink.h:
7262 * gst/base/gstbasesrc.h:
7265 Avoid excessive typechecking in macros.
7267 * gst/gstminiobject.c: (gst_mini_object_get_type),
7268 (gst_mini_object_init), (gst_mini_object_new),
7269 (gst_mini_object_free):
7270 * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
7271 (gst_object_finalize):
7272 Remove cruft code, optimize alloc_trace.
7274 2005-11-07 Thomas Vander Stichele <thomas at apestaart dot org>
7276 * docs/faq/gst-uninstalled:
7277 fix up PS1 for systems that try to reset it
7279 2005-11-07 Wim Taymans <wim@fluendo.com>
7281 * gst/base/gstbasesrc.c: (gst_base_src_init),
7282 (gst_base_src_get_range):
7283 Set the segment_end to -1 initially. Fixed typefind.
7285 2005-11-07 Tim-Philipp Müller <tim at centricular dot net>
7287 * gst/base/gstadapter.c:
7288 Debug category should be 'adapter', not 'GstAdapter'.
7290 * gst/base/gstcollectpads.c: (gst_collectpads_base_init),
7291 (gst_collectpads_class_init), (gst_collectpads_init),
7292 (gst_collectpads_peek), (gst_collectpads_pop),
7293 (gst_collectpads_event), (gst_collectpads_chain):
7294 Add debug category and some debugging output. Use boilerplate
7295 macros. Remove some extraneous words from docs.
7297 2005-11-05 Andy Wingo <wingo@pobox.com>
7299 * gst/base/gstpushsrc.c: Shorten by 30% via use of boilerplate
7302 2005-11-04 Stefan Kost <ensonic@users.sf.net>
7304 * docs/gst/gstreamer-sections.txt:
7307 * gst/gstminiobject.h:
7312 2005-11-04 Wim Taymans <wim@fluendo.com>
7314 * gst/base/gstbasesrc.c: (gst_base_src_get_range):
7315 Small update to stop at the configured segment_end
7318 2005-11-04 Stefan Kost <ensonic@users.sf.net>
7320 * gst/gstregistry.c:
7321 * gst/gstregistry.h:
7324 2005-11-04 Edward Hervey <edward@fluendo.com>
7326 * gst/base/gstbasesrc.c: (gst_base_src_get_range):
7327 Check if we are doing a segment seek and have arrived at the
7328 end of that segment.
7330 2005-11-04 Wim Taymans <wim@fluendo.com>
7332 * gst/gstbus.c: (gst_bus_post), (gst_bus_set_sync_handler):
7333 Don't leak a mutex unlock in case of an error.
7338 2005-11-04 Wim Taymans <wim@fluendo.com>
7340 * gst/gstbus.c: (gst_bus_class_init), (gst_bus_init),
7342 Get the context to wake up only once.
7344 2005-11-03 Wim Taymans <wim@fluendo.com>
7346 * check/states/sinks.c: (GST_START_TEST):
7347 Uncomment fixed check.
7349 * docs/design/part-TODO.txt:
7352 * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
7353 (gst_base_sink_handle_object), (gst_base_sink_do_sync),
7354 (gst_base_sink_get_position):
7355 If we are going to PLAYING, post the right pending state
7356 when we post the intermediate paused message.
7358 * gst/gstelement.c: (gst_element_continue_state),
7359 (gst_element_set_state_func), (gst_element_change_state):
7360 Don't post state changes that were between the same state
7363 2005-11-03 Stefan Kost <ensonic@users.sf.net>
7365 * docs/gst/gstreamer-sections.txt:
7368 * gst/gstminiobject.h:
7371 more docs and doc style fixes
7373 2005-11-03 Stefan Kost <ensonic@users.sf.net>
7375 * docs/gst/gstreamer-sections.txt:
7377 * gst/gstminiobject.c:
7380 2005-11-03 Andy Wingo <wingo@pobox.com>
7382 * check/states/sinks.c (test_livesrc_sink): Add checks that the
7383 state-changed messages actually have the right order and the right
7386 2005-11-03 Wim Taymans <wim@fluendo.com>
7388 * check/states/sinks.c: (GST_START_TEST), (gst_object_suite):
7389 Added some more checks. Specifically the case where NO_PREROLL
7390 elements are in the pipeline.
7392 * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
7393 (gst_base_sink_handle_object), (gst_base_sink_do_sync),
7394 (gst_base_sink_get_position):
7395 Post READY->PAUSED state change messages too.
7396 Fix bug where VOID was posted as pending state...
7398 * gst/gstbin.c: (gst_bin_recalc_state):
7399 use _element_continue_state() to continue the state change.
7401 * gst/gstelement.c: (gst_element_continue_state),
7402 (gst_element_commit_state), (gst_element_set_state_func),
7403 (gst_element_change_state), (gst_element_change_state_func):
7404 Lots of state change cleanups, assign the STATE_RETURN in
7405 a new continue_state() function that also propagates the
7406 last return value from a state change to the app.
7407 Update some debug statements with proper category.
7409 2005-11-03 Wim Taymans <wim@fluendo.com>
7411 * docs/design/part-events.txt:
7412 * docs/design/part-gstpipeline.txt:
7413 * docs/design/part-messages.txt:
7414 * docs/design/part-overview.txt:
7415 * docs/design/part-seeking.txt:
7416 * docs/design/part-states.txt:
7417 * docs/design/part-trickmodes.txt:
7418 * docs/manual/advanced-position.xml:
7422 People think !! is ugly, this looks better.
7424 * gst/gstpad.c: (gst_pad_set_blocked_async):
7425 Remove !! since it's fixed elsewhere now.
7427 2005-11-03 Tim-Philipp Müller <tim at centricular dot net>
7429 * gst/gstminiobject.h:
7431 Add !! to _FLAG_IS_SET macros to make the result boolean.
7433 2005-11-03 Edward Hervey <edward@fluendo.com>
7435 * gst/gstpad.c: (gst_pad_set_blocked_async):
7436 comparing a flag and a gboolean rarely returns coherent results...
7437 Added two characters (!!) to make that work correctly.
7439 2005-11-03 Tim-Philipp Müller <tim at centricular dot net>
7441 * gst/gstbus.c: (gst_bus_class_init):
7444 * gst/gstqueue.c: (gst_queue_loop):
7445 Don't assume a miniobject that isn't a buffer is an
7446 event (it could be that there is a refcounting
7447 problem somewhere and the pointer is stale and
7448 refers to an already destroyed miniobject).
7450 2005-11-03 Julien MOUTTE <julien@moutte.net>
7452 * gst/gstpad.c: (gst_pad_alloc_buffer): Fix some typos.
7454 2005-11-03 Tim-Philipp Müller <tim at centricular dot net>
7456 * docs/manual/advanced-position.xml:
7457 Update seek example and explanations to current 0.9 API.
7459 * gst/elements/gsttypefindelement.c:
7460 (gst_type_find_element_activate):
7461 Remove FIXME comment now that the found caps
7464 2005-11-03 Thomas Vander Stichele <thomas at apestaart dot org>
7466 * gst/gstregistryxml.c: (load_feature):
7467 Add another GST_STR_NULL instance
7469 2005-11-02 Edward Hervey <edward@fluendo.com>
7471 * gst/gstpad.c: (handle_pad_block):
7472 Follow-up to Wim's patch, solves deadlock for blocked and flushing pads
7474 2005-11-02 Wim Taymans <wim@fluendo.com>
7479 * gst/gstelement.c: (gst_element_commit_state):
7480 Remove unused value.
7482 * gst/gstiterator.c:
7483 Mention that the returned element is reffed in the docs.
7485 2005-11-02 Wim Taymans <wim@fluendo.com>
7487 * gst/gstpad.c: (gst_pad_alloc_buffer), (handle_pad_block),
7488 (gst_pad_push), (gst_pad_push_event):
7489 Unlock blocked pads when they are flushed.
7491 2005-11-02 Thomas Vander Stichele <thomas at apestaart dot org>
7494 * docs/gst/gstreamer-sections.txt:
7497 * gst/gstregistry.c: (gst_registry_scan_path_level):
7498 fix for a nasty little missed situation where an installed plug-in
7499 which was in the cache did not get overridden by an uninstalled one
7500 which was earlier in the plugin path because the newly created plugin
7501 for the uninstalled one (not in the registry) didn't get its
7502 ->registered set to TRUE
7504 2005-11-02 Tim-Philipp Müller <tim at centricular dot net>
7506 * gst/base/gstcollectpads.c: (gst_collectpads_set_function),
7507 (gst_collectpads_add_pad), (gst_collectpads_remove_pad),
7508 (gst_collectpads_is_active), (gst_collectpads_collect),
7509 (gst_collectpads_collect_range), (gst_collectpads_start),
7510 (gst_collectpads_stop), (gst_collectpads_peek),
7511 (gst_collectpads_pop), (gst_collectpads_available),
7512 (gst_collectpads_read), (gst_collectpads_flush):
7513 Guard public API with assertions.
7516 Fix docs for gst_pad_set_link_function().
7518 2005-11-02 Johan Dahlin <johan@gnome.org>
7520 * gst/elements/gsttypefindelement.c (gst_type_find_element_activate):
7521 Unref found_caps after we used it.
7523 2005-11-02 Tim-Philipp Müller <tim at centricular dot net>
7525 * gst/base/gstcollectpads.c: (gst_collectpads_peek):
7526 Don't try to ref NULL.
7528 2005-11-02 Thomas Vander Stichele <thomas at apestaart dot org>
7530 * win32/common/config.h.in:
7531 provide a GST_FUNCTION that just gives a string for now
7533 2005-11-02 Thomas Vander Stichele <thomas at apestaart dot org>
7535 * win32/common/gstenumtypes.c: (register_gst_object_flags),
7536 (gst_object_flags_get_type), (register_gst_bin_flags),
7537 (gst_bin_flags_get_type), (register_gst_buffer_flag),
7538 (gst_buffer_flag_get_type), (register_gst_bus_flags),
7539 (gst_bus_flags_get_type), (register_gst_bus_sync_reply),
7540 (gst_bus_sync_reply_get_type), (register_gst_clock_return),
7541 (gst_clock_return_get_type), (register_gst_clock_entry_type),
7542 (gst_clock_entry_type_get_type), (register_gst_clock_flags),
7543 (gst_clock_flags_get_type), (register_gst_state),
7544 (gst_state_get_type), (register_gst_state_change_return),
7545 (gst_state_change_return_get_type), (register_gst_state_change),
7546 (gst_state_change_get_type), (register_gst_element_flags),
7547 (gst_element_flags_get_type), (register_gst_core_error),
7548 (gst_core_error_get_type), (register_gst_library_error),
7549 (gst_library_error_get_type), (register_gst_resource_error),
7550 (gst_resource_error_get_type), (register_gst_stream_error),
7551 (gst_stream_error_get_type), (register_gst_event_type),
7552 (gst_event_type_get_type), (register_gst_seek_type),
7553 (gst_seek_type_get_type), (register_gst_seek_flags),
7554 (gst_seek_flags_get_type), (register_gst_format),
7555 (gst_format_get_type), (register_gst_index_certainty),
7556 (gst_index_certainty_get_type), (register_gst_index_entry_type),
7557 (gst_index_entry_type_get_type),
7558 (register_gst_index_lookup_method),
7559 (gst_index_lookup_method_get_type), (register_gst_assoc_flags),
7560 (gst_assoc_flags_get_type), (register_gst_index_resolver_method),
7561 (gst_index_resolver_method_get_type), (register_gst_index_flags),
7562 (gst_index_flags_get_type), (register_gst_debug_level),
7563 (gst_debug_level_get_type), (register_gst_debug_color_flags),
7564 (gst_debug_color_flags_get_type), (register_gst_iterator_result),
7565 (gst_iterator_result_get_type), (register_gst_iterator_item),
7566 (gst_iterator_item_get_type), (register_gst_message_type),
7567 (gst_message_type_get_type), (register_gst_mini_object_flags),
7568 (gst_mini_object_flags_get_type), (register_gst_pad_link_return),
7569 (gst_pad_link_return_get_type), (register_gst_flow_return),
7570 (gst_flow_return_get_type), (register_gst_activate_mode),
7571 (gst_activate_mode_get_type), (register_gst_pad_direction),
7572 (gst_pad_direction_get_type), (register_gst_pad_flags),
7573 (gst_pad_flags_get_type), (register_gst_pad_presence),
7574 (gst_pad_presence_get_type), (register_gst_pad_template_flags),
7575 (gst_pad_template_flags_get_type), (register_gst_pipeline_flags),
7576 (gst_pipeline_flags_get_type), (register_gst_plugin_error),
7577 (gst_plugin_error_get_type), (register_gst_plugin_flags),
7578 (gst_plugin_flags_get_type), (register_gst_rank),
7579 (gst_rank_get_type), (register_gst_query_type),
7580 (gst_query_type_get_type), (register_gst_tag_merge_mode),
7581 (gst_tag_merge_mode_get_type), (register_gst_tag_flag),
7582 (gst_tag_flag_get_type), (register_gst_task_state),
7583 (gst_task_state_get_type), (register_gst_alloc_trace_flags),
7584 (gst_alloc_trace_flags_get_type),
7585 (register_gst_type_find_probability),
7586 (gst_type_find_probability_get_type), (register_gst_uri_type),
7587 (gst_uri_type_get_type), (register_gst_parse_error),
7588 (gst_parse_error_get_type):
7589 * win32/common/gstversion.h:
7592 2005-11-01 Luca Ognibene <luogni@tin.it>
7595 fix docs. popt is dead, long live GOption.
7597 2005-10-31 Wim Taymans <wim@fluendo.com>
7602 2005-10-31 Andy Wingo <wingo@pobox.com>
7606 * gst/gstqueue.c (gst_queue_chain): Fix downstream leaky mode.
7608 * gst/gstobject.c (gst_object_dispatch_properties_changed): No
7609 need to serialize property notifications on GLib 2.8. GLib 2.6 has
7610 the possibility of deadlocks here if code calling notify() or
7611 set() has a lock that can be taken in another notify handler (ABBA
7612 with class lock and e.g. python GIL state lock).
7614 2005-10-28 Julien MOUTTE <julien@moutte.net>
7616 * gst/gstbus.c: Doc updates.
7618 2005-10-28 Wim Taymans <wim@fluendo.com>
7620 * docs/design/part-TODO.txt:
7621 * gst/gstiterator.c:
7622 * gst/gstsystemclock.c:
7623 * gst/gstsystemclock.h:
7626 2005-10-28 Edward Hervey <edward@fluendo.com>
7628 * docs/gst/gstreamer-docs.sgml:
7629 * docs/gst/gstreamer-sections.txt:
7630 the GstURIType documentation page is private, it only defines GstURIType
7631 which should be defined in the GstURIHandler page
7633 2005-10-28 Thomas Vander Stichele <thomas at apestaart dot org>
7635 * gst/gstbin.c: (gst_bin_class_init):
7638 Documentation updates.
7640 2005-10-28 Wim Taymans <wim@fluendo.com>
7642 * docs/gst/gstreamer-sections.txt:
7645 Documented the clocks.
7647 2005-10-28 Stefan Kost <ensonic@users.sf.net>
7649 * docs/gst/gstreamer-sections.txt:
7650 move some macros to private sections
7651 * gst/gstminiobject.c:
7652 * gst/gstminiobject.h:
7653 add descriptions provided by ds and some more
7655 mark macro as to be removed
7657 2005-10-28 Wim Taymans <wim@fluendo.com>
7659 * docs/design/part-TODO.txt:
7660 Add an item to TODO.
7662 * gst/gstiterator.c: (gst_iterator_fold),
7663 (gst_iterator_find_custom):
7664 * gst/gstiterator.h:
7667 2005-10-28 Wim Taymans <wim@fluendo.com>
7669 * gst/base/gstbasetransform.c: (gst_base_transform_class_init),
7670 (gst_base_transform_init):
7673 * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_loop):
7674 An EOS event marks the queue as completely filled.
7676 2005-10-27 Wim Taymans <wim@fluendo.com>
7678 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
7679 (gst_base_sink_do_sync), (gst_base_sink_get_position):
7680 Some more debugging.
7682 * gst/base/gstbasetransform.c: (gst_base_transform_finalize),
7683 (gst_base_transform_init), (gst_base_transform_buffer_alloc),
7684 (gst_base_transform_event), (gst_base_transform_getrange),
7685 (gst_base_transform_chain):
7686 * gst/base/gstbasetransform.h:
7688 Protect transform and concurrent buffer alloc with a new lock.
7689 Try not to break ABI/API.
7691 2005-10-27 Wim Taymans <wim@fluendo.com>
7693 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
7694 (gst_base_src_init), (gst_base_src_query),
7695 (gst_base_src_default_newsegment),
7696 (gst_base_src_configure_segment), (gst_base_src_do_seek),
7697 (gst_base_src_send_event), (gst_base_src_event_handler),
7698 (gst_base_src_pad_get_range), (gst_base_src_loop),
7699 (gst_base_src_unlock), (gst_base_src_default_negotiate),
7700 (gst_base_src_start), (gst_base_src_deactivate),
7701 (gst_base_src_activate_push), (gst_base_src_change_state):
7702 Move some stuff around and cleanup things.
7704 2005-10-27 Tim-Philipp Müller <tim at centricular dot net>
7706 * gst/base/gstbasesrc.c: (gst_base_src_query):
7707 Add missing break statements.
7709 2005-10-27 Wim Taymans <wim@fluendo.com>
7711 * check/gst/gstbin.c: (GST_START_TEST):
7712 An extra refcount is taken in basesrc.
7714 * gst/base/gstbasesrc.c: (gst_base_src_init), (gst_base_src_query),
7715 (gst_base_src_get_range), (gst_base_src_pad_get_range),
7716 (gst_base_src_loop):
7717 Small cleanups, check for flushing after being unlocked from the
7718 LIVE_LOCK. take refcounts correctly (not yet everywhere).
7719 Don't send out EOS when going to READY.
7721 2005-10-27 Wim Taymans <wim@fluendo.com>
7723 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
7724 (gst_base_sink_get_position):
7727 * gst/gstbin.c: (message_check), (bin_replace_message),
7728 (bin_remove_messages), (is_eos), (gst_bin_add_func),
7729 (update_degree), (gst_bin_sort_iterator_next), (bin_bus_handler),
7730 (bin_query_duration_init), (bin_query_duration_fold),
7731 (bin_query_duration_done), (bin_query_generic_fold),
7733 * tools/gst-launch.c: (main):
7736 2005-10-26 Stefan Kost <ensonic@users.sf.net>
7738 * examples/controller/audio-example.c: (main):
7739 * examples/queue/queue.c: (event_loop):
7740 * gst/base/gstbasetransform.h:
7741 * gst/gstelement.c: (gst_element_send_event):
7743 * gst/gstpad.c: (gst_pad_send_event):
7746 changing log priority in error situations
7748 2005-10-25 Wim Taymans <wim@fluendo.com>
7750 * gst/gstbin.c: (message_check), (bin_replace_message),
7751 (bin_remove_messages), (is_eos), (gst_bin_add_func),
7752 (update_degree), (gst_bin_sort_iterator_next), (bin_bus_handler),
7753 (bin_query_duration_init), (bin_query_duration_fold),
7754 (bin_query_duration_done), (bin_query_generic_fold),
7756 Some doc and debug updates.
7757 Cache previously requested query DURATION for speed. invalidate
7758 cached duration if element posts a DURATION message.
7760 2005-10-25 Wim Taymans <wim@fluendo.com>
7762 * docs/design/part-TODO.txt:
7765 * gst/gstbin.c: (message_check), (bin_replace_message),
7766 (bin_remove_messages), (is_eos), (gst_bin_add_func),
7767 (update_degree), (gst_bin_sort_iterator_next), (bin_bus_handler),
7768 (bin_query_duration_init), (bin_query_duration_fold),
7769 (bin_query_duration_done), (bin_query_generic_fold),
7771 Handle SEGMENT_START/DONE messages correctly.
7772 More evolved query algorithm that handles duration queries
7775 * gst/gstelement.c: (gst_element_send_event), (gst_element_query),
7776 (gst_element_get_state_func), (gst_element_abort_state),
7777 (gst_element_commit_state), (gst_element_lost_state):
7778 Some more debugging.
7783 2005-10-25 Wim Taymans <wim@fluendo.com>
7785 * gst/base/gstbasesink.c: (gst_base_sink_get_position):
7786 Don't use invalid stream_time.
7788 * gst/gstevent.c: (gst_event_new_newsegment):
7789 stream_time in newsegment cannot be undefined.
7791 2005-10-24 Wim Taymans <wim@fluendo.com>
7796 * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
7798 Fix potential deadlock when QUEUE_LOCK is taken before STREAM_LOCK.
7800 2005-10-24 Stefan Kost <ensonic@users.sf.net>
7802 * docs/libs/tmpl/gstdparam.sgml:
7803 * docs/libs/tmpl/gstdplinint.sgml:
7804 * docs/libs/tmpl/gstdpman.sgml:
7805 * docs/libs/tmpl/gstdpsmooth.sgml:
7806 * docs/libs/tmpl/gstunitconvert.sgml:
7809 2005-10-24 Thomas Vander Stichele <thomas at apestaart dot org>
7814 === release 0.9.4 ===
7816 2005-10-23 Thomas Vander Stichele <thomas at apestaart dot org>
7819 releasing 0.9.4, "Tyrannosaurus Rex"
7821 2005-10-23 Tim-Philipp Müller <tim at centricular dot net>
7823 * gst/elements/gstfilesink.c: (gst_file_sink_do_seek),
7824 (gst_file_sink_get_current_offset):
7825 Use fseeko() and ftello() if available. When falling back on
7826 lseek() to get the current offset, fflush() first to make sure
7827 everything is up-to-date and we get the right offset.
7829 2005-10-23 Thomas Vander Stichele <thomas at apestaart dot org>
7831 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
7832 * gst/base/gstbasesrc.c: (gst_base_src_loop):
7833 * gst/gsterror.c: (_gst_stream_errors_init):
7835 * gst/gstqueue.c: (gst_queue_loop):
7837 remove prematurely added error category and clean up the instances
7839 2005-10-21 Wim Taymans <wim@fluendo.com>
7841 * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
7842 (gst_base_sink_get_position), (gst_base_sink_query),
7843 (gst_base_sink_change_state):
7844 Simply set the right flag when going to playing, that's all
7845 we need to do instead of calling a function inside the object
7846 lock (that could take the lock as well and deadlock)
7848 2005-10-21 Wim Taymans <wim@fluendo.com>
7850 * gst/base/gstbasesrc.c: (gst_base_src_do_seek),
7851 (gst_base_src_loop):
7852 Don't warn, the peer element knows what to do best when
7853 the seek failed, it might try something else.
7855 2005-10-21 Wim Taymans <wim@fluendo.com>
7857 * gst/base/gstbasesrc.c: (gst_base_src_init),
7858 (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
7861 2005-10-21 Wim Taymans <wim@fluendo.com>
7863 * docs/design/part-segments.txt:
7866 * gst/elements/gstcapsfilter.c: (gst_capsfilter_prepare_buf):
7867 Correctly set caps, even on the subbufer.
7869 2005-10-21 Wim Taymans <wim@fluendo.com>
7871 * docs/gst/gstreamer-docs.sgml:
7872 * docs/gst/gstreamer-sections.txt:
7879 * gst/gsttask.c: (gst_task_finalize), (gst_task_func):
7883 And 2% more doc coverage.
7885 2005-10-21 Andy Wingo <wingo@pobox.com>
7887 * gst/base/gstbasesrc.c (gst_base_src_query): Clean up percent
7890 2005-10-20 Wim Taymans <wim@fluendo.com>
7892 * gst/gsterror.c: (gst_error_get_message):
7895 * gst/gststructure.c:
7900 2005-10-20 Wim Taymans <wim@fluendo.com>
7905 Another 1% more coverage.
7907 2005-10-20 Wim Taymans <wim@fluendo.com>
7909 * docs/gst/gstreamer-sections.txt:
7910 * gst/gstelement.c: (gst_element_get_state_func),
7911 (gst_element_abort_state), (gst_element_commit_state),
7912 (gst_element_lost_state):
7914 * gst/gstquery.c: (gst_query_set_position),
7915 (gst_query_parse_position), (gst_query_set_duration),
7916 (gst_query_parse_duration), (gst_query_new_convert):
7918 Yay! 1% more docs coverage.
7920 2005-10-20 Wim Taymans <wim@fluendo.com>
7923 * gst/gstquery.c: (gst_query_set_position),
7924 (gst_query_parse_position), (gst_query_set_duration),
7925 (gst_query_parse_duration), (gst_query_new_convert):
7927 * gst/gstutils.c: (gst_element_query_convert):
7929 Docs and consistency fixes.
7931 2005-10-20 Wim Taymans <wim@fluendo.com>
7937 2005-10-20 Wim Taymans <wim@fluendo.com>
7939 * gst/gstbin.c: (message_check), (bin_replace_message),
7940 (bin_remove_messages), (is_eos), (gst_bin_add_func),
7941 (update_degree), (gst_bin_sort_iterator_next),
7942 (gst_bin_change_state_func), (gst_bin_dispose), (bin_bus_handler):
7943 Reworked the message handling a bit, cache the messages instead of
7944 only the senders. alows us to do more in the future.
7946 2005-10-20 Wim Taymans <wim@fluendo.com>
7948 * docs/design/part-TODO.txt:
7951 * gst/base/gstbasesink.c: (gst_base_sink_get_position),
7952 (gst_base_sink_query):
7953 Don't use clock time to report position when in EOS.
7955 2005-10-20 Tim-Philipp Müller <tim at centricular dot net>
7957 * tools/gst-inspect.c: (print_interfaces),
7958 (print_element_properties_info), (print_element_info):
7959 Fix interface output with gst-inspect -a; don't print
7960 newlines after double/float properties.
7962 2005-10-20 Wim Taymans <wim@fluendo.com>
7964 * gst/base/gstbasesink.c: (gst_base_sink_get_position),
7965 (gst_base_sink_query):
7966 Speed up current position calculation.
7968 * gst/base/gstbasesrc.c: (gst_base_src_query),
7969 (gst_base_src_default_newsegment):
7970 Correctly set stream position in newsegment.
7972 * gst/gstbin.c: (gst_bin_add_func), (add_to_queue),
7973 (update_degree), (gst_bin_sort_iterator_next),
7974 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free):
7975 * gst/gstmessage.c: (gst_message_new_custom):
7976 Clean up debugging info
7978 * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
7979 (gst_queue_loop), (gst_queue_handle_src_query):
7982 2005-10-19 Wim Taymans <wim@fluendo.com>
7984 * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
7985 (gst_base_sink_handle_object), (gst_base_sink_query), (do_playing):
7986 Fix query handling again.
7988 2005-10-19 Wim Taymans <wim@fluendo.com>
7990 * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
7991 (gst_base_sink_handle_object), (gst_base_sink_query), (do_playing):
7992 * gst/base/gstbasesrc.c: (gst_base_src_query):
7993 * gst/elements/gstfilesink.c: (gst_file_sink_query):
7994 * gst/elements/gsttypefindelement.c:
7995 (gst_type_find_handle_src_query), (find_element_get_length),
7996 (gst_type_find_element_activate):
7999 * gst/gstquery.c: (gst_query_new_position),
8000 (gst_query_set_position), (gst_query_parse_position),
8001 (gst_query_new_duration), (gst_query_set_duration),
8002 (gst_query_parse_duration), (gst_query_set_segment),
8003 (gst_query_parse_segment):
8005 Bundling query position/duration is not a good idea since duration
8006 does not change much and we don't want to recalculate it for every
8007 position query, so they are separated again..
8008 Base value in segment query is not needed.
8010 * gst/gstqueue.c: (gst_queue_handle_src_query):
8011 * gst/gstutils.c: (gst_element_query_position),
8012 (gst_element_query_duration), (gst_pad_query_position),
8013 (gst_pad_query_duration):
8015 Updates for query API change.
8016 Added some docs here and there.
8018 2005-10-19 Thomas Vander Stichele <thomas at apestaart dot org>
8020 * check/gst/gstbin.c: (GST_START_TEST):
8021 * check/gst/gstghostpad.c: (GST_START_TEST):
8022 * check/pipelines/cleanup.c: (GST_START_TEST):
8023 wait on thread to die so we can check refcount correctly
8025 2005-10-18 Wim Taymans <wim@fluendo.com>
8027 * check/pipelines/stress.c: (GST_START_TEST):
8028 Make check a little more time consuming.
8030 2005-10-18 Wim Taymans <wim@fluendo.com>
8032 * check/Makefile.am:
8033 * check/pipelines/stress.c: (GST_START_TEST),
8034 (simple_launch_lines_suite), (main):
8035 Small state change torture test.
8037 * docs/design/part-states.txt:
8038 * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
8039 (gst_base_sink_handle_object), (gst_base_sink_event), (do_playing),
8040 (gst_base_sink_change_state):
8041 Never take state lock from streaming thread, clean up ugly
8042 hacks. Unfortunatly core does not yet support nice ways to
8045 * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_recalc_state),
8047 Start state recalc if a STATE_DIRTY message is posted, but only
8048 on the toplevel bin.
8050 * gst/gstelement.c: (gst_element_sync_state_with_parent),
8051 (gst_element_get_state_func), (gst_element_abort_state),
8052 (gst_element_commit_state), (gst_element_lost_state),
8053 (gst_element_set_state_func), (gst_element_change_state):
8055 State variables are now protected with the LOCK, the state
8056 lock is only used to serialize _set_state().
8058 2005-10-18 Wim Taymans <wim@fluendo.com>
8060 * check/gst/gstbin.c: (GST_START_TEST):
8061 * check/gst/gstmessage.c: (GST_START_TEST):
8062 * check/gst/gstpipeline.c: (GST_START_TEST), (message_received):
8063 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_recalc_func),
8065 * gst/gstelement.c: (gst_element_abort_state),
8066 (gst_element_commit_state), (gst_element_lost_state):
8067 * gst/gstmessage.c: (gst_message_new_state_changed),
8068 (gst_message_new_state_dirty), (gst_message_new_segment_start),
8069 (gst_message_new_segment_done), (gst_message_new_duration),
8070 (gst_message_parse_state_changed),
8071 (gst_message_parse_segment_start),
8072 (gst_message_parse_segment_done), (gst_message_parse_duration):
8074 * tools/gst-launch.c: (event_loop):
8075 Seriously, this is better than a previous commit as we only need
8076 to notify the fact that an element changed state in a streaming
8077 thread, marking the state of the parents dirty, hence the
8078 STATE_DIRTY message instead of abusing a boolean in a STATE_CHANGE
8081 2005-10-18 Wim Taymans <wim@fluendo.com>
8083 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_get_state_func),
8084 (gst_bin_recalc_func):
8085 * gst/gstelement.c: (gst_element_set_clock),
8086 (gst_element_abort_state), (gst_element_lost_state):
8087 Cleanups, prepare for state change fixes.
8089 2005-10-18 Wim Taymans <wim@fluendo.com>
8092 * gst/gstelement.c: (gst_element_class_init),
8093 (gst_element_set_state), (gst_element_set_state_func):
8095 Pending ABI changes.
8096 GThreadPool in GstBinClass to monitor async state changes.
8097 state_cookie in GstElement to detect concurrent gst/set state.
8098 set_state is now virtual too in case a very complicated element
8099 has to be constructed.
8101 2005-10-18 Wim Taymans <wim@fluendo.com>
8103 * check/gst/gstbin.c: (GST_START_TEST):
8104 * check/gst/gstmessage.c: (GST_START_TEST):
8105 * check/gst/gstpipeline.c: (GST_START_TEST), (message_received):
8106 * gst/gstbin.c: (bin_bus_handler):
8107 * gst/gstelement.c: (gst_element_commit_state),
8108 (gst_element_lost_state):
8109 * gst/gstmessage.c: (gst_message_new_state_changed),
8110 (gst_message_new_segment_start), (gst_message_new_segment_done),
8111 (gst_message_new_duration), (gst_message_parse_state_changed),
8112 (gst_message_parse_segment_start),
8113 (gst_message_parse_segment_done), (gst_message_parse_duration):
8115 * tools/gst-launch.c: (event_loop):
8116 Make messages future proof.
8117 state-change gets a flag if it was a message comming from the
8119 segment-start/stop can also be specified in other formats.
8120 A message to notify an app that a pipeline changed playback
8122 Also fix a GstMessage leak in -launch
8124 2005-10-18 Andy Wingo <wingo@pobox.com>
8126 * gst/gstelement.c (gst_element_dispose): More helpful message.
8128 2005-10-18 Thomas Vander Stichele <thomas at apestaart dot org>
8130 reviewed by: <delete if not using a buddy>
8132 * common/gtk-doc.mak:
8134 2005-10-18 Thomas Vander Stichele <thomas at apestaart dot org>
8136 * gst/gstregistry.c: (gst_registry_scan_path_level):
8137 unref a plug-in we get that was already initialized
8139 2005-10-18 Stefan Kost <ensonic@users.sf.net>
8141 * docs/gst/gstreamer-sections.txt:
8142 * docs/libs/gstreamer-libs-sections.txt:
8147 2005-10-17 Andy Wingo <wingo@pobox.com>
8149 * gst/base/gstcollectpads.c (gst_collectpads_chain): Slight
8152 * gst/Makefile.am (gstenumtypes.c): Threadsafe now.
8154 * gst/gstevent.c (gst_event_new, gst_event_finalize): LOG.
8156 * gst/gstelement.c (gst_element_get_state_func): s/INFO/DEBUG/.
8157 (gst_element_get_state_func): Better debug message.
8158 (gst_element_commit_state): s/INFO/DEBUG/.
8159 (gst_element_lost_state, gst_element_change_state):
8161 * gst/gstmessage.c (gst_message_init): s/INFO/LOG/.
8162 (gst_message_new_custom): s/INFO/LOG/.
8164 2005-10-17 Michael Smith <msmith@fluendo.com>
8166 * gst/base/gstbasesink.c: (gst_base_sink_do_sync):
8167 Check if end time is valid using end time, not start time.
8169 2005-10-17 Stefan Kost <ensonic@users.sf.net>
8171 * check/gst-libs/controller.c: (GST_START_TEST),
8172 (gst_controller_suite):
8173 * libs/gst/controller/gstcontroller.c:
8174 (gst_controlled_property_set_interpolation_mode):
8175 * libs/gst/controller/gstcontroller.h:
8176 * libs/gst/controller/gstinterpolation.c:
8177 * testsuite/controller/.cvsignore:
8178 * testsuite/controller/Makefile.am:
8179 * testsuite/controller/interpolator.c:
8180 merge controller testsuites
8182 remove mem-chunk from docs
8184 2005-10-17 Thomas Vander Stichele <thomas at apestaart dot org>
8186 * gst/gstmemchunk.c:
8187 * gst/gstmemchunk.h:
8188 * gst/gsttrashstack.c:
8189 * gst/gsttrashstack.h:
8190 out. get out. you're fired. to the Attic !
8192 2005-10-17 Thomas Vander Stichele <thomas at apestaart dot org>
8194 * gst/gstcaps.c: (gst_caps_intersect):
8195 fix signedness issues in a (hopefully) correct way
8196 * gst/gstelement.c: (gst_element_pads_activate):
8198 * gst/gstobject.c: (gst_object_set_parent):
8201 2005-10-17 Julien MOUTTE <julien@moutte.net>
8203 * gst/gstvalue.h: Fix prototypes.
8205 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
8207 * docs/gst/gstreamer-sections.txt:
8208 * gst/gst.c: (gst_version_string):
8210 * gst/gstversion.h.in:
8211 * win32/common/libgstreamer.def:
8212 add gst_version_string ()
8214 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
8218 * gst/gst.c: (init_post):
8219 * win32/common/config.h.in:
8221 * gst/gstcaps.c: (gst_caps_intersect):
8222 use gint64, the range could be bigger than a guint
8224 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
8227 document potential problem in 2038
8229 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
8231 * gst/gstcaps.c: (gst_caps_intersect):
8232 Fix guint j diving under 0
8234 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
8237 * win32/common/config.h:
8238 * win32/common/config.h.in:
8239 check for process.h, declares getpid() on Windows
8241 include process.h if we have it
8242 * gst/gstmemchunk.c: (populate), (gst_mem_chunk_new):
8243 * gst/gstmemchunk.h:
8244 fix signedness issues
8245 * win32/common/libgstreamer.def:
8248 2005-10-16 Julien MOUTTE <julien@moutte.net>
8250 * gst/gstcaps.c: (gst_caps_intersect): Fix a bad bug with a simple
8251 fix. Because of unsigned ints, caps intersection was going nuts and
8252 trying to access structures with G_MAXUINT index. That fixes
8253 videotestsrc ! ffmpegcolorspace ! fakesink
8254 * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked): logs
8257 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
8260 use the gettext macro
8261 * gst/elements/gstelements.c:
8263 * gst/indexers/gstindexers.c:
8264 update for GST_PACKAGE_NAME, GST_PACKAGE_ORIGIN
8265 * win32/common/config.h:
8267 * win32/common/config.h.in:
8268 add the template to generate config.h
8269 * win32/common/gstenumtypes.c:
8270 * win32/common/gstversion.h:
8273 2005-10-16 Thomas Vander Stichele <thomas at apestaart dot org>
8275 * gst/gst.c: (gst_version):
8276 * gst/gstversion.h.in:
8279 2005-10-15 Tim-Philipp Müller <tim at centricular dot net>
8282 Oops, add missing closing bracket.
8284 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
8287 use common m4's for argument checking
8289 2005-10-15 Tim-Philipp Müller <tim at centricular dot net>
8291 * docs/gst/gstreamer-sections.txt:
8293 Add GST_EVENT_TYPE_NAME() macro.
8295 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
8298 * gst/gstpluginfeature.c:
8300 privatize more symbols
8302 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
8305 add srcdir, builddir includes to GST_ALL_CFLAGS, since
8306 everything that uses GStreamer API should have the includes
8308 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
8310 * docs/gst/gstreamer-sections.txt:
8311 * gst/gstvalue.c: (gst_date_get_type), (_gst_value_initialize):
8313 give each value a _get_type, removes the DATA exports
8315 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
8319 remove _gst_registry_auto_load, not used anymore
8320 * gst/gstbin.c: (gst_bin_get_type):
8322 * gst/gstelement.c: (gst_element_get_type):
8324 * gst/gstobject.c: (gst_object_get_type):
8326 * gst/gstpad.c: (gst_pad_get_type):
8328 make _get_type functions similar, fixes data export from library
8330 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
8333 correctly make conditionals
8334 * gst/elements/Makefile.am:
8335 * gst/elements/gstelements.c:
8336 fix typo causing fdsrc not to build
8338 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
8340 * testsuite/Makefile.am:
8341 * testsuite/bytestream/.cvsignore:
8342 * testsuite/bytestream/Makefile.am:
8343 * testsuite/bytestream/filepadsink.c:
8344 * testsuite/bytestream/gstbstest.c:
8345 * testsuite/bytestream/test1.c:
8346 * testsuite/bytestream/testfile1:
8347 * testsuite/caps/normalisation.c:
8348 * testsuite/caps/random.c: (main):
8349 * testsuite/cleanup/.cvsignore:
8350 * testsuite/cleanup/Makefile.am:
8351 * testsuite/cleanup/cleanup1.c:
8352 * testsuite/cleanup/cleanup2.c:
8353 * testsuite/cleanup/cleanup3.c:
8354 * testsuite/cleanup/cleanup4.c:
8355 * testsuite/cleanup/cleanup5.c:
8356 * testsuite/controller/interpolator.c:
8357 * testsuite/debug/printf_extension.c: (main):
8358 * testsuite/elements/tee.c:
8359 * testsuite/negotiation/.cvsignore:
8360 * testsuite/negotiation/Makefile.am:
8361 * testsuite/negotiation/pad_link.c:
8362 * testsuite/pad/Makefile.am:
8363 * testsuite/pad/chainnopull.c:
8364 * testsuite/pad/getnopush.c:
8365 * testsuite/pad/link.c:
8366 * testsuite/refcounting/sched.c: (create_pipeline):
8367 * testsuite/registry/Makefile.am:
8368 * testsuite/registry/gst-print-formats.c:
8369 * testsuite/schedulers/.cvsignore:
8370 * testsuite/schedulers/142183-2.c:
8371 * testsuite/schedulers/142183.c:
8372 * testsuite/schedulers/143777-2.c:
8373 * testsuite/schedulers/143777.c:
8374 * testsuite/schedulers/147713.c:
8375 * testsuite/schedulers/147819.c:
8376 * testsuite/schedulers/147894-2.c:
8377 * testsuite/schedulers/147894.c:
8378 * testsuite/schedulers/Makefile.am:
8379 * testsuite/schedulers/group_link.c:
8380 * testsuite/schedulers/queue_link.c:
8381 * testsuite/schedulers/relink.c:
8382 * testsuite/schedulers/unlink.c:
8383 * testsuite/schedulers/unref.c:
8384 * testsuite/schedulers/useless_iteration.c:
8385 * testsuite/states/bin.c:
8386 clean out/remove some stuff from the testsuite directories
8388 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
8391 check for some headers
8392 * gst/elements/Makefile.am:
8393 * gst/elements/gstelements.c:
8394 don't compile fdsrc without sys/socket.h
8395 * gst/indexers/Makefile.am:
8396 * gst/indexers/gstindexers.c: (plugin_init):
8397 don't compile fileindex without mmap
8399 2005-10-15 Thomas Vander Stichele <thomas at apestaart dot org>
8406 * check/Makefile.am:
8407 * docs/gst/Makefile.am:
8408 * examples/helloworld/Makefile.am:
8410 * gst/base/Makefile.am:
8411 * gst/check/Makefile.am:
8412 * gst/elements/Makefile.am:
8413 * gst/indexers/Makefile.am:
8414 * gst/parse/Makefile.am:
8415 * libs/gst/controller/Makefile.am:
8416 * libs/gst/dataprotocol/Makefile.am:
8417 * examples/helloworld/helloworld.c: (event_loop):
8418 compile fixes, though it's not being compiled currently
8420 2005-10-14 Tim-Philipp Müller <tim at centricular dot net>
8422 * check/gst/gsttag.c: (test_date_tags), (gst_tag_suite):
8423 Add some simple tests for the new taglist date API.
8425 2005-10-14 Tim-Philipp Müller <tim at centricular dot net>
8427 * gst/elements/gstfakesink.c: (gst_fake_sink_render):
8428 * gst/elements/gstfakesrc.c: (gst_fake_src_create):
8429 Beautify 'last-message' output: print 'none' for buffer timestamps
8430 and durations if none is set; improve alignment with next messages.
8432 2005-10-14 Tim-Philipp Müller <tim at centricular dot net>
8434 * gst/gstpluginfeature.c: (gst_plugin_feature_check_version):
8435 * gst/gstpluginfeature.h:
8436 * gst/gstregistry.c: (gst_default_registry_check_feature_version):
8437 * gst/gstregistry.h:
8438 * docs/gst/gstreamer-sections.txt:
8439 Add new API to check plugin feature version requirements.
8441 * check/gst/gstplugin.c: (test_version_checks), (gst_plugin_suite):
8442 Some basic tests for the above.
8444 2005-10-13 Thomas Vander Stichele <thomas at apestaart dot org>
8446 * gst/gststructure.c: (gst_structure_to_string):
8447 guard against NULL printf - happens when for example
8448 a message structure with GstClock gets serialized
8450 2005-10-13 Tim-Philipp Müller <tim at centricular dot net>
8452 * gst/base/gstcollectpads.c: (gst_collectpads_event):
8453 Fix presumable copy'n'pasto.
8455 2005-10-13 Thomas Vander Stichele <thomas at apestaart dot org>
8457 * gst/elements/gstfakesrc.h:
8458 * gst/elements/gstfilesrc.c: (gst_file_src_create_read):
8459 * gst/elements/gsttypefindelement.c:
8461 * gst/elements/gstfilesink.c: (gst_file_sink_render):
8462 I wonder if this could actually write +2GB files before
8464 2005-10-13 Andy Wingo <wingo@pobox.com>
8466 * libs/gst/dataprotocol/dataprotocol.c (gst_dp_packet_from_caps):
8467 Fix Timmeke Waymans bug.
8468 (gst_dp_caps_from_packet): Make sure we pass a NUL-terminated
8469 string of the proper length to gst_caps_from_string. There's a
8470 potential for, before this fix, that this could cause someone
8471 connecting over the network to cause a segfault if the payload is
8474 2005-10-13 Stefan Kost <ensonic@users.sf.net>
8476 * docs/design/draft-push-pull.txt:
8477 * docs/design/part-overview.txt:
8478 * docs/random/TODO-pre-0.9:
8479 * docs/random/old/ChangeLog.gstreamer:
8480 * gst/base/gstpushsrc.c:
8484 2005-10-13 Thomas Vander Stichele <thomas at apestaart dot org>
8486 * gst/glib-compat.c: (gst_flags_get_first_value):
8487 * gst/glib-compat.h:
8488 * gst/gstvalue.c: (gst_value_deserialize_int_helper),
8489 (gst_value_compare_double), (gst_value_serialize_flags):
8490 GLib 2.6 g_flags_get_first_value has a bug that triggers an
8493 2005-10-13 Thomas Vander Stichele <thomas at apestaart dot org>
8495 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
8496 * gst/base/gstbasesrc.c: (gst_base_src_get_range):
8498 * tools/gst-launch.c: (event_loop):
8499 print out clock nicely
8501 2005-10-13 Tim-Philipp Müller <tim at centricular dot net>
8503 * docs/gst/gstreamer-sections.txt:
8505 * gst/gsttaglist.c: (_gst_tag_initialize), (gst_tag_list_get_date),
8506 (gst_tag_list_get_date_index):
8507 Added gst_tag_list_get_date() and gst_tag_list_get_date_index().
8508 GST_TAG_DATE now has a tag type of GST_TYPE_DATE (#170777).
8510 2005-10-13 Julien MOUTTE <julien@moutte.net>
8512 * gst/base/gstcollectpads.c: (gst_collectpads_event),
8513 (gst_collectpads_chain):
8514 * gst/base/gstcollectpads.h: Handle newsegment and store informations
8517 2005-10-13 Stefan Kost <ensonic@users.sf.net>
8519 * docs/gst/gstreamer-sections.txt:
8522 * tools/gst-inspect.c: (main):
8523 * tools/gst-launch.c: (main):
8524 * tools/gst-run.c: (main):
8525 * tools/gst-xmlinspect.c: (main):
8526 fix GOption context leaks
8529 2005-10-13 Thomas Vander Stichele <thomas at apestaart dot org>
8533 * win32/common/config.h:
8535 * win32/vs6/grammar.dsp:
8536 * win32/vs6/libgstelements.dsp:
8537 * win32/vs6/libgstreamer.dsp:
8540 2005-10-12 Thomas Vander Stichele <thomas at apestaart dot org>
8542 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
8543 * gst/base/gstbasesrc.c: (gst_base_src_query):
8544 fix more guint64<->gdouble conversions
8546 2005-10-12 Thomas Vander Stichele <thomas at apestaart dot org>
8549 add win32-update target
8550 * win32/common/gstconfig.h:
8551 * win32/common/gstenumtypes.c:
8552 * win32/common/gstenumtypes.h:
8553 * win32/common/gstversion.h:
8554 add files that visual studio can't generate
8556 2005-10-12 Thomas Vander Stichele <thomas at apestaart dot org>
8559 add a win32-update target
8562 2005-10-12 Wim Taymans <wim@fluendo.com>
8564 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
8565 (reset_degree), (gst_bin_dispose), (bin_bus_handler):
8566 * gst/gstelement.c: (gst_element_commit_state),
8567 (gst_element_set_state):
8568 Protect flags with proper lock.
8569 unref provided cached clock in dispose.
8571 2005-10-12 Stefan Kost <ensonic@users.sf.net>
8574 * gst/gstminiobject.h:
8576 * win32/gstenumtypes.c: (gst_mini_object_flags_get_type):
8577 removed unused flags from miniobject
8580 2005-10-12 Wim Taymans <wim@fluendo.com>
8582 * gst/elements/gstfilesink.c: (gst_file_sink_do_seek),
8583 (gst_file_sink_event), (gst_file_sink_render):
8584 Flush before seeking.
8586 2005-10-12 Andy Wingo <wingo@pobox.com>
8588 * gst/gst.c (gst_init_check): Ignore unknown options, as has
8589 always been the case.
8591 2005-10-12 Stefan Kost <ensonic@users.sf.net>
8593 * check/gst/gstbin.c: (GST_START_TEST):
8594 * docs/gst/gstreamer-sections.txt:
8595 * gst/base/gstbasesink.c: (gst_base_sink_init):
8596 * gst/base/gstbasesrc.c: (gst_base_src_init),
8597 (gst_base_src_get_range), (gst_base_src_check_get_range),
8598 (gst_base_src_start), (gst_base_src_stop):
8599 * gst/base/gstbasesrc.h:
8600 * gst/elements/gstfakesrc.c: (gst_fake_src_set_property):
8601 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
8602 (bin_element_is_sink), (reset_degree), (gst_bin_element_set_state),
8606 * gst/gstbus.c: (gst_bus_post), (gst_bus_set_flushing):
8608 * gst/gstelement.c: (gst_element_is_locked_state),
8609 (gst_element_set_locked_state), (gst_element_commit_state),
8610 (gst_element_set_state):
8612 * gst/gstindex.c: (gst_index_init):
8614 * gst/gstminiobject.h:
8615 * gst/gstobject.c: (gst_object_init), (gst_object_sink),
8616 (gst_object_set_parent):
8618 * gst/gstpad.c: (gst_pad_set_blocked_async), (gst_pad_is_blocked),
8619 (gst_pad_get_caps_unlocked), (gst_pad_set_caps):
8621 * gst/gstpadtemplate.h:
8622 * gst/gstpipeline.c: (gst_pipeline_provide_clock_func),
8623 (gst_pipeline_use_clock), (gst_pipeline_auto_clock):
8624 * gst/gstpipeline.h:
8625 * gst/indexers/gstfileindex.c: (gst_file_index_load),
8626 (gst_file_index_commit):
8627 * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
8628 * testsuite/pad/link.c: (gst_test_src_init),
8629 (gst_test_filter_init), (gst_test_sink_init):
8630 * testsuite/states/locked.c: (main):
8631 renamed GST_FLAGS macros to GST_OBJECT_FLAGS
8632 moved bitshift from macro to enum definition
8634 2005-10-12 Wim Taymans <wim@fluendo.com>
8636 * gst/base/gstbasesink.c: (gst_base_sink_handle_buffer):
8637 * gst/elements/gstfilesink.c: (gst_file_sink_event),
8638 (gst_file_sink_render):
8639 Some more debugging info.
8641 2005-10-12 Wim Taymans <wim@fluendo.com>
8643 * docs/design/part-states.txt:
8644 * tools/gst-launch.c: (main):
8646 Revert non-intentional change.
8648 2005-10-12 Wim Taymans <wim@fluendo.com>
8650 * check/gst/gstbin.c: (GST_START_TEST):
8651 * check/gst/gstelement.c: (GST_START_TEST):
8652 * check/gst/gstevent.c: (GST_START_TEST), (test_event):
8653 * check/gst/gstghostpad.c: (GST_START_TEST):
8654 * check/gst/gstpipeline.c: (GST_START_TEST):
8655 * check/pipelines/simple_launch_lines.c: (run_pipeline):
8656 * check/states/sinks.c: (GST_START_TEST):
8657 * gst/elements/gsttypefindelement.c: (stop_typefinding):
8658 * gst/gstbin.c: (gst_bin_provide_clock_func), (gst_bin_add_func),
8659 (gst_bin_remove_func), (gst_bin_get_state_func),
8660 (gst_bin_recalc_state), (gst_bin_change_state_func),
8662 * gst/gstelement.c: (gst_element_get_state_func),
8663 (gst_element_get_state), (gst_element_abort_state),
8664 (gst_element_commit_state), (gst_element_set_state),
8665 (gst_element_change_state), (gst_element_change_state_func):
8667 * gst/gstpipeline.c: (gst_pipeline_class_init), (do_pipeline_seek),
8668 (gst_pipeline_provide_clock_func):
8669 * gst/gstutils.c: (gst_element_link_pads_filtered):
8670 * tools/gst-launch.c: (main):
8671 * tools/gst-typefind.c: (main):
8672 Use GstClockTime in _get_state() instead of GTimeVal.
8673 Remove old code in gstutils.c
8675 2005-10-12 Andy Wingo <wingo@pobox.com>
8677 * gst/gstregistry.h (gst_registry_scan_paths): Not implemented, so
8680 * gst/gstpad.c (gst_pad_pause_task): Actually return FALSE if
8681 there is no task. Shouldn't affect any code, as nothing in our
8682 plugins checks this return value.
8683 (gst_pad_stop_task): Also take the stream lock if the pad has no
8686 2005-10-12 Wim Taymans <wim@fluendo.com>
8688 * gst/gstpad.c: (pre_activate), (post_activate),
8689 (gst_pad_activate_pull), (gst_pad_activate_push):
8690 Cleanup activation code. Reset old state if
8693 2005-10-12 Wim Taymans <wim@fluendo.com>
8695 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
8696 (gst_base_sink_change_state):
8697 No need to prerol after receiving EOS.
8699 * gst/elements/gstfakesink.c: (gst_fake_sink_event):
8700 * gst/elements/gstfakesrc.c: (gst_fake_src_event_handler):
8701 * gst/elements/gstidentity.c: (gst_identity_event):
8702 Print events more verbosely.
8704 2005-10-12 Wim Taymans <wim@fluendo.com>
8706 * check/Makefile.am:
8707 * check/states/sinks.c: (GST_START_TEST), (gst_object_suite):
8708 * check/states/sinks2.c:
8709 Moved sinks2 testcode in sinks check.
8711 * gst/gstbin.c: (gst_bin_provide_clock_func), (gst_bin_add_func),
8712 (gst_bin_remove_func), (gst_bin_recalc_state),
8713 (gst_bin_change_state_func), (bin_bus_handler):
8714 Fix potential race condition when _get_state() iterated over an
8715 ASYNC element right before it posted a state completion.
8718 Do proper cast here.
8720 * gst/gstevent.c: (gst_event_new_newsegment),
8721 (gst_event_parse_newsegment):
8722 A playback rate of 0.0 is not allowed.
8724 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
8726 * win32/common/config.h:
8727 * win32/common/dirent.c: (_topendir), (_treaddir), (_tclosedir),
8728 (_trewinddir), (_ttelldir), (_tseekdir):
8729 * win32/common/dirent.h:
8730 * win32/common/gtchar.h:
8731 * win32/common/libgstbase.def:
8732 * win32/common/libgstreamer.def:
8733 * win32/vs6/grammar.dsp:
8734 * win32/vs6/gst_inspect.dsp:
8735 * win32/vs6/gst_launch.dsp:
8736 * win32/vs6/gstreamer.dsw:
8737 * win32/vs6/libgstbase.dsp:
8738 * win32/vs6/libgstelements.dsp:
8739 * win32/vs6/libgstreamer.dsp:
8740 Visual Studio 6 project files, and a new common directory.
8743 2005-10-11 Wim Taymans <wim@fluendo.com>
8745 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
8746 (gst_base_sink_do_sync), (gst_base_sink_query),
8747 (gst_base_sink_change_state):
8748 * gst/base/gstbasesink.h:
8749 Correctly parse newsegment info.
8751 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
8753 * gst/gst.c: (init_post):
8754 split plugin paths correctly
8756 2005-10-11 Wim Taymans <wim@fluendo.com>
8758 * check/gst/gstevent.c: (GST_START_TEST):
8759 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
8760 (gst_base_sink_change_state):
8761 * gst/base/gstbasesrc.c: (gst_base_src_default_newsegment):
8762 * gst/base/gstbasetransform.c: (gst_base_transform_event):
8763 * gst/elements/gstfilesink.c: (gst_file_sink_event):
8764 * gst/gstevent.c: (gst_event_new_newsegment),
8765 (gst_event_parse_newsegment):
8767 Added extra flag to newsegment for future API freeze.
8768 Updated check and base elements.
8770 2005-10-11 Julien MOUTTE <julien@moutte.net>
8772 * gst/base/gstcollectpads.c: (gst_collectpads_init),
8773 (gst_collectpads_add_pad), (gst_collectpads_pop),
8774 (gst_collectpads_event), (gst_collectpads_chain):
8775 * gst/base/gstcollectpads.h: Handle EOS correctly.
8777 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
8779 * tools/gst-launch.c: (main):
8780 more null protecting
8782 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
8784 * gst/gst-i18n-lib.h:
8785 check for ENABLE_NLS, not GETTEXT_PACKAGE
8786 * gst/gstregistry.c: (gst_registry_add_plugin),
8787 (gst_registry_scan_path_level),
8788 (_gst_registry_remove_cache_plugins):
8789 protect possibly NULL strings
8790 * gst/parse/types.h:
8791 config.h already included before
8792 * tools/gst-inspect.c: (main):
8793 sys/wait.h also doesn�t exist on mingw, so change the ifdef check
8794 check for ENABLE_NLS, not GETTEXT_PACKAGE
8795 * tools/gst-launch.c: (main):
8796 check for ENABLE_NLS, not GETTEXT_PACKAGE
8798 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
8801 if we don't have glib, fail before testing 2.8
8802 * gst/base/gstbasetransform.c: (gst_base_transform_change_state):
8803 fix a leak, should fix plugins-base testsuite
8805 2005-10-11 Andy Wingo <wingo@pobox.com>
8807 * gst/gstpad.c (pre_activate): Renamed from pre_activate_switch,
8808 take the mode we're going to as an arg. Go head and set the mode
8809 and flushing flags now, so that if the activate function starts a
8810 thread all the flags will be in the right state.
8811 (post_activate): Renamed also. Just handle making sure streaming
8812 finishes for the deactivation case, and setting the deactivated
8814 (gst_pad_set_active): Complain loudly if deactivation fails.
8815 (gst_pad_activate_pull): Adapt to pre/post_activate changes.
8816 (gst_pad_activate_push): Adapt to pre/post_activate changes,
8817 remove the terrible hack.
8819 2005-10-11 Wim Taymans <wim@fluendo.com>
8821 * gst/gstbin.c: (gst_bin_init), (gst_bin_provide_clock_func),
8822 (is_eos), (gst_bin_add_func), (gst_bin_remove_func),
8823 (gst_bin_recalc_state), (gst_bin_change_state_func),
8824 (gst_bin_dispose), (bin_bus_handler):
8826 Prepare to make current EOS message queue more generic.
8829 * gst/gstevent.c: (gst_event_new_newsegment),
8830 (gst_event_parse_newsegment):
8832 Rename base to stream_time.
8837 2005-10-11 Wim Taymans <wim@fluendo.com>
8839 * gst/gstbin.c: (gst_bin_init), (gst_bin_provide_clock_func),
8840 (gst_bin_add_func), (gst_bin_remove_func), (gst_bin_recalc_state),
8841 (gst_bin_change_state_func), (bin_bus_handler):
8843 Work on proper clock selection.
8845 2005-10-11 Edward Hervey <edward@fluendo.com>
8847 * libs/gst/controller/gstcontroller.c: (gst_controller_remove_properties_list):
8848 * libs/gst/controller/gstcontroller.h:
8849 Added GList* version of _remove_properties() in order to be able to wrap
8852 2005-10-11 Wim Taymans <wim@fluendo.com>
8854 * docs/design/part-states.txt:
8857 * gst/gstbin.c: (gst_bin_set_clock_func), (gst_bin_recalc_state),
8858 (gst_bin_change_state_func), (bin_bus_handler):
8859 Doc updates. Don't distribute the same clock over and over again.
8865 * gst/gstpad.c: (gst_flow_get_name), (gst_flow_to_quark),
8866 (gst_pad_get_type), (gst_pad_push), (gst_pad_push_event),
8867 (gst_pad_send_event):
8869 Make probe emission threadsafe again.
8870 Register quarks and move _get_name() from utils.
8873 * gst/gstpipeline.c: (gst_pipeline_class_init),
8874 (gst_pipeline_change_state), (gst_pipeline_provide_clock_func):
8875 Only redistribute the clock of it changed.
8877 * gst/gstsystemclock.h:
8882 Moved the _flow_get_name() to GstPad.
8884 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
8886 * check/gst-libs/gdp.c: (GST_START_TEST):
8887 * check/gst/gstcaps.c: (GST_START_TEST):
8888 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
8889 (gst_dp_dump_byte_array), (gst_dp_header_from_buffer),
8890 (gst_dp_packet_from_caps):
8891 fix more valgrind warnings before turning up the heat
8893 2005-10-11 Thomas Vander Stichele <thomas at apestaart dot org>
8895 * gst/parse/grammar.y:
8896 some cleanup before the hacking
8898 2005-10-10 Thomas Vander Stichele <thomas at apestaart dot org>
8900 * gst/base/gstbasesrc.c: (gst_base_src_query):
8902 * gst/gstutils.c: (gst_guint64_to_gdouble),
8903 (gst_gdouble_to_guint64), (gst_util_uint64_scale):
8905 externalize, basesrc uses it
8906 obviously the implementation needs testing
8908 2005-10-10 Wim Taymans <wim@fluendo.com>
8910 * tests/sched/Makefile.am:
8911 * tests/sched/sort.c: (make_pipeline1), (make_pipeline2),
8912 (make_pipeline3), (make_pipeline4), (print_elem), (main):
8914 2005-10-10 Thomas Vander Stichele <thomas at apestaart dot org>
8916 * gst/gstutils.c: (guint64_to_gdouble), (gst_util_uint64_scale):
8917 apparently converting from guint64 to double is not implemented
8920 2005-10-10 Wim Taymans <wim@fluendo.com>
8922 * check/Makefile.am:
8923 * check/generic/states.c: (GST_START_TEST):
8924 * check/gst/gstbin.c: (GST_START_TEST):
8925 * check/gst/gstpipeline.c: (GST_START_TEST), (gst_pipeline_suite):
8926 * check/states/sinks.c: (GST_START_TEST):
8927 * check/states/sinks2.c: (GST_START_TEST), (gst_object_suite),
8929 Check fixes, use API as stated in design docs, remove hacks.
8931 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
8932 (gst_base_sink_change_state):
8933 Catch stopping our task while we're shutting down.
8935 * gst/gstbin.c: (gst_bin_init), (gst_bin_add_func),
8936 (gst_bin_remove_func), (gst_bin_get_state_func),
8937 (gst_bin_recalc_state), (gst_bin_change_state_func),
8940 * gst/gstelement.c: (gst_element_init),
8941 (gst_element_get_state_func), (gst_element_abort_state),
8942 (gst_element_commit_state), (gst_element_lost_state),
8943 (gst_element_set_state), (gst_element_change_state),
8944 (gst_element_change_state_func):
8946 New state change algorithm (see #318116)
8948 * gst/gstpipeline.c: (gst_pipeline_class_init),
8949 (gst_pipeline_init), (gst_pipeline_set_property),
8950 (gst_pipeline_get_property), (do_pipeline_seek),
8951 (gst_pipeline_change_state), (gst_pipeline_provide_clock_func):
8952 * gst/gstpipeline.h:
8953 Remove crude state change hacks.
8958 * tools/gst-launch.c: (main):
8959 Fixes for state change. Needs some more work to fully use the
8962 2005-10-10 Andy Wingo <wingo@pobox.com>
8964 * tests/Makefile.am (noinst_PROGRAMS): No more init.c.
8966 * gst/gst.c (G_OPTION_FLAG_NO_ARG): Apparently GLib 2.8 requires
8967 this flag, but it's not even in GLib 2.6. Odd. Hack around the
8970 2005-10-10 Tim-Philipp Müller <tim at centricular dot net>
8972 * gst/gstiterator.c: (gst_iterator_new):
8973 Fix my previous commit: GTypes passed to gst_iterator_new()
8974 can be fundamental types.
8976 2005-10-10 Wim Taymans <wim@fluendo.com>
8978 * gst/gstelement.c: (gst_element_iterate_pad_list),
8979 (gst_element_iterate_pads), (gst_element_iterate_src_pads),
8980 (gst_element_iterate_sink_pads):
8981 Use src/sink pads lists for the respective iterators instead
8984 2005-10-10 Andy Wingo <wingo@pobox.com>
8986 Merged in popt removal + GOption addition patch from Ronald, bug
8989 * docs/gst/gstreamer-sections.txt: Add STATE_(UN)LOCK_FULL, move
8990 GstElement macros around, remove popt-related symbols, add goption
8993 * configure.ac: Remove popt checks, require GLib 2.6 for GOption.
8995 * docs/gst/Makefile.am:
8996 * docs/libs/Makefile.am: No POPT_CFLAGS.
8998 * examples/manual/Makefile.am:
8999 * docs/manual/basics-init.xml: Doc updates with an example.
9001 * gst/gst.c: (gst_init_get_option_group), (gst_init_check),
9002 (gst_init), (parse_one_option), (parse_goption_arg):
9003 * gst/gst.h: Removed gst_init_with_popt_table and friends. Took a
9004 bit of hand merging and debugging to get the GOption stuff working
9007 * tests/Makefile.am:
9008 * tools/Makefile.am:
9009 * tools/gst-inspect.c: (main):
9010 * tools/gst-launch.c: (main):
9011 * tools/gst-run.c: (main):
9012 * tools/gst-xmlinspect.c: (main): Thanks Ronald!
9014 2005-10-10 Tim-Philipp Müller <tim at centricular dot net>
9016 * gst/gstiterator.c: (gst_iterator_new):
9017 Add assertions to make sure passed GType is likely to really
9018 be a GType (as the compiler won't catch it if the size and
9019 GType arguments get mixed up, see #318447).
9021 2005-10-10 Josef Zlomek <josef dot zlomek at xeris dot cz>
9023 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
9025 * gst/gstbin.c: (gst_bin_iterate_sorted):
9026 Pass GType and size arguments to gst_iterator_new() in the right
9027 order (maybe we should make _new() take the GType as first argument
9028 just like _new_list()?) (#318447).
9031 2005-10-10 Wim Taymans <wim@fluendo.com>
9033 * gst/gstelement.c: (gst_element_finalize):
9034 And free the GStaticRecMutex too
9036 2005-10-10 Andy Wingo <wingo@pobox.com>
9038 * gst/gstelement.c (gst_element_init, gst_element_finalize):
9039 Allocate and free the mutex properly.
9041 * gst/gstelement.h (GST_STATE_UNLOCK_FULL, GST_STATE_LOCK_FULL):
9043 (GstElement): The state_lock is now recursive. Rebuild your
9044 plugins, suckers. Old macros adapted.
9046 * docs/gst/gstreamer-sections.txt: Doc updates.
9049 * gst/gstutils.c (g_static_rec_cond_timed_wait)
9050 (g_static_rec_cond_wait): Ported from state changes patch, while
9051 we wait on bug #317802 to be solved in a well-distributed GLib.
9053 * gst/gstelement.c (gst_element_change_state_func): Renamed from
9054 gst_element_change_state, variable name changes.
9055 (gst_element_change_state): Split out of gst_element_set_state in
9056 preparation for the state change merge. Doesn't pay attention to
9057 the 'transition' argument.
9058 (gst_element_set_state): Updates, hopefully purely cosmetic.
9059 (gst_element_sync_state_with_parent): MT-safety. Ported from the
9061 (gst_element_get_state_func): Renamed from get_state, cosmetic
9064 2005-10-10 Thomas Vander Stichele <thomas at apestaart dot org>
9066 * gst/elements/gstelements.c:
9067 * win32/GStreamer.vcproj:
9069 * win32/dirent.c: (_tseekdir):
9070 * win32/gst-inspect.vcproj:
9071 * win32/gst-launch.vcproj:
9072 * win32/gstconfig.h:
9073 * win32/gstelements.vcproj:
9074 * win32/gstenumtypes.c: (gst_object_flags_get_type):
9075 * win32/gstreamer.def:
9077 updates for the win32 build (patch from Sebastien Moutte)
9079 2005-10-10 Andy Wingo <wingo@pobox.com>
9081 * gst/gstbin.c (gst_bin_get_state_func): Renamed from
9082 gst_bin_get_state, cleaned up (but no logic changes).
9083 (bin_element_is_sink): Comment updates.
9084 (sink_iterator_filter): Remove needless cast.
9085 (gst_bin_iterate_sinks): Doc update.
9086 (gst_bin_change_state_func): Renamed from gst_bin_change_state,
9087 cleaned up (but no logic changes).
9089 * check/states/sinks.c (test_src_sink): Cleanups from the state
9091 (test_livesrc_sink): Sync on the state.
9093 * check/pipelines/simple_launch_lines.c (run_pipeline): Merge from
9094 the state change patch.
9096 * check/gst/gstghostpad.c (test_ghost_pads): Merge from the state
9099 * check/gst/gstbin.c: Merge in some style fixes and additional
9100 checks from Wim's state change patch.
9102 2005-10-10 Tim-Philipp Müller <tim at centricular dot net>
9104 * gst/base/gsttypefindhelper.c: (helper_find_peek),
9105 (gst_type_find_helper):
9106 Check whether we have the requested data already in our list of
9107 cached buffers before pulling a new buffer; also make the buffer
9108 list a GSList. Speeds up typefinding by ca. 5-10% altogether.
9110 2005-10-10 Thomas Vander Stichele <thomas at apestaart dot org>
9115 * gst/gstvalue.c: (gst_value_deserialize_int_helper):
9116 don't use long long, it's not portable. Replacing with
9117 gint64 seems to work; let's hope no skeletons fall out of the closet.
9119 2005-10-10 Andy Wingo <wingo@pobox.com>
9121 * autogen.sh (CONFIGURE_DEF_OPT): No more --plugin-buiddir, yay
9123 2005-10-09 Stefan Kost <ensonic@users.sf.net>
9125 * docs/gst/gstreamer-sections.txt:
9130 * gst/gstmessage.c: (gst_message_parse_state_changed):
9133 more docs, fix compilation
9135 2005-10-09 Philippe Khalaf <burger@speedy.org>
9137 Fixed a few forgotten variables on previous commit
9139 2005-10-09 Tim-Philipp Müller <tim at centricular dot net>
9141 * gst/base/gsttypefindhelper.c: (helper_find_peek):
9142 Fix evil typefind crasher: getrange() might return a short
9143 buffer at the end of a file, but gst_type_find_peek() must
9144 either return the full data as requested or NULL, but
9145 never a short buffer.
9147 2005-10-09 Thomas Vander Stichele <thomas at apestaart dot org>
9149 * gst/gstmessage.c: (gst_message_new_state_changed),
9150 (gst_message_parse_state_changed):
9152 don't use "new", it's a C++ keyword
9154 2005-10-08 Wim Taymans <wim@fluendo.com>
9156 * gst/gstbin.c: (is_eos), (update_degree), (gst_bin_query):
9157 * gst/gstelement.c: (gst_element_post_message):
9158 * gst/gstpipeline.c: (gst_pipeline_change_state):
9159 Small docs and debug updates.
9161 2005-10-08 Stefan Kost <ensonic@users.sf.net>
9163 * docs/gst/gstreamer-sections.txt:
9164 * gst/gstelementfactory.c:
9169 2005-10-08 Wim Taymans <wim@fluendo.com>
9171 * gst/gstbin.c: (is_eos), (update_degree), (gst_bin_change_state),
9172 (gst_bin_dispose), (bin_bus_handler):
9173 Fix typos, add comments.
9174 Clear EOS list when going to PAUSED from any direction and do it
9175 in a threadsafe way.
9176 Get base time in a threadsafe way too.
9177 Fix confusing debug in the change_state function.
9178 Various other small cleanups.
9180 * gst/gstelement.c: (gst_element_post_message):
9181 Fix very verbose bus posting code.
9183 * gst/gstpipeline.c: (gst_pipeline_class_init),
9184 (gst_pipeline_set_property), (gst_pipeline_get_property),
9185 (gst_pipeline_change_state):
9186 Small ARG_ -> PROP_ cleanup
9188 2005-10-08 Wim Taymans <wim@fluendo.com>
9190 * gst/gstbin.c: (is_eos), (bin_bus_handler):
9191 Do a less CPU demanding EOS check because we can.
9193 2005-10-08 Wim Taymans <wim@fluendo.com>
9195 * libs/gst/dataprotocol/dataprotocol.c:
9196 (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
9197 (gst_dp_packet_from_event):
9198 * libs/gst/dataprotocol/dataprotocol.h:
9199 * libs/gst/dataprotocol/dp-private.h:
9200 It's about time we bump the version number.
9201 Since event types don't fit in the guint8 anymore describing
9202 the payload type, make payload type 16 bits wide.
9204 2005-10-08 Wim Taymans <wim@fluendo.com>
9206 * docs/design/part-TODO.txt:
9207 * docs/design/part-clocks.txt:
9208 * docs/design/part-events.txt:
9209 * docs/design/part-gstbin.txt:
9210 * docs/design/part-gstelement.txt:
9211 * docs/design/part-gstpipeline.txt:
9212 * docs/design/part-live-source.txt:
9213 * docs/design/part-messages.txt:
9214 * docs/design/part-overview.txt:
9215 * docs/design/part-states.txt:
9218 2005-10-08 Wim Taymans <wim@fluendo.com>
9222 Fix event quark registration.
9223 Add some space between events so we can insert them in the
9226 2005-10-08 Wim Taymans <wim@fluendo.com>
9228 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
9229 (gst_base_sink_handle_buffer):
9236 * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
9237 (gst_queue_set_property), (gst_queue_get_property):
9239 Remove old unused properties.
9241 2005-10-08 Stefan Kost <ensonic@users.sf.net>
9242 * docs/gst/gstreamer-sections.txt:
9245 * gst/gstminiobject.c:
9246 * gst/gstminiobject.h:
9250 lots of new docs and doc fixes
9252 2005-10-08 Thomas Vander Stichele <thomas at apestaart dot org>
9254 * gst/gstplugin.c: (gst_plugin_finalize), (gst_plugin_load_file):
9256 * gst/gstregistry.c: (gst_registry_lookup_locked),
9257 (gst_registry_scan_path_level):
9258 * gst/gstregistryxml.c: (load_plugin):
9259 Only ever load one plugin for a given plugin basename.
9260 This ensures correct overriding of GST_PLUGIN_PATH over
9261 GST_PLUGIN_SYSTEM_PATH and of home dir plugins over
9262 system installed plugins.
9264 2005-10-08 Wim Taymans <wim@fluendo.com>
9266 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
9267 (gst_base_sink_do_sync), (gst_base_sink_handle_buffer):
9268 Prepare for doing QOS.
9270 2005-10-08 Wim Taymans <wim@fluendo.com>
9272 * check/gst/gstbin.c: (GST_START_TEST):
9273 * check/pipelines/cleanup.c: (GST_START_TEST):
9274 * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
9275 Allow new clock message too.
9277 2005-10-08 Wim Taymans <wim@fluendo.com>
9279 * gst/gstmessage.c: (gst_message_new_error),
9280 (gst_message_new_warning), (gst_message_new_tag),
9281 (gst_message_new_state_changed), (gst_message_new_clock_provide),
9282 (gst_message_new_clock_lost), (gst_message_new_new_clock),
9283 (gst_message_new_segment_start), (gst_message_new_segment_done),
9284 (gst_message_parse_state_changed),
9285 (gst_message_parse_clock_provide), (gst_message_parse_clock_lost),
9286 (gst_message_parse_new_clock):
9288 Also carry the clock in question.
9290 2005-10-08 Wim Taymans <wim@fluendo.com>
9292 * gst/gstmessage.c: (gst_message_new_custom),
9293 (gst_message_new_eos), (gst_message_new_error),
9294 (gst_message_new_warning), (gst_message_new_tag),
9295 (gst_message_new_state_changed), (gst_message_new_clock_provide),
9296 (gst_message_new_new_clock), (gst_message_new_segment_start),
9297 (gst_message_new_segment_done), (gst_message_parse_state_changed),
9298 (gst_message_parse_clock_provide), (gst_message_parse_new_clock):
9301 Added clock related messages.
9303 * gst/gstpipeline.c: (gst_pipeline_change_state):
9304 Post message when the clock changed.
9306 * tools/gst-launch.c: (event_loop):
9309 2005-10-08 Tim-Philipp Müller <tim at centricular dot net>
9311 * tools/gst-inspect.c: (print_element_properties_info):
9312 Can't pass NULL strings to g_print() on windows.
9314 2005-10-08 Thomas Vander Stichele <thomas at apestaart dot org>
9317 * docs/gst/Makefile.am:
9318 * docs/gst/gstreamer-docs.sgml:
9319 * docs/gst/running.xml:
9320 * docs/version.entities.in:
9321 add a chapter on running GStreamer.
9322 document GST_DEBUG and GST_PLUGIN* env vars
9324 2005-10-08 Thomas Vander Stichele <thomas at apestaart dot org>
9329 remove PLUGINS_BUILDDIR stuff
9330 * gst/gst.c: (init_post):
9331 reorder parsing of GST_PLUGIN_PATH and GST_PLUGIN_SYSTEM_PATH
9333 remove, it was condescending and not needed
9335 2005-10-08 Wim Taymans <wim@fluendo.com>
9337 * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_flush),
9338 (gst_base_sink_handle_object), (gst_base_sink_event),
9339 (gst_base_sink_wait), (gst_base_sink_handle_event),
9340 (gst_base_sink_change_state):
9341 * gst/base/gstbasesink.h:
9342 Repost EOS message while going to PLAYING if still EOS.
9343 Make sure that when receiving a FLUSH_START we don't attempt
9344 to sync on the clock anymore.
9346 2005-10-08 Wim Taymans <wim@fluendo.com>
9348 * tools/gst-launch.c: (event_loop):
9349 Better message printout.
9351 2005-10-08 Wim Taymans <wim@fluendo.com>
9353 * gst/gstbin.c: (gst_bin_child_proxy_get_child_by_index),
9354 (gst_bin_child_proxy_get_children_count):
9355 * gst/gstchildproxy.c: (gst_child_proxy_get_child_by_name),
9356 (gst_child_proxy_lookup), (gst_child_proxy_get_property),
9357 (gst_child_proxy_get_valist), (gst_child_proxy_set_property),
9358 (gst_child_proxy_set_valist):
9359 * gst/parse/grammar.y:
9360 Make ChildProxy threadsafe and fix mem leaks.
9362 2005-10-08 Thomas Vander Stichele <thomas at apestaart dot org>
9364 * gst/gst.c: (init_post):
9365 debug the GST_PLUGIN_ env vars
9367 2005-10-08 Wim Taymans <wim@fluendo.com>
9369 * check/gst/gstbin.c: (GST_START_TEST):
9370 * check/gst/gstmessage.c: (GST_START_TEST):
9371 * check/gst/gstpipeline.c: (GST_START_TEST), (message_received):
9372 * gst/gstelement.c: (gst_element_commit_state),
9373 (gst_element_lost_state):
9374 * gst/gstmessage.c: (gst_message_new_state_changed),
9375 (gst_message_parse_state_changed):
9377 * tools/gst-launch.c: (event_loop):
9378 Added extra field to STATE_CHANGE message with the pending
9379 state, which will be different from the new state soon.
9381 2005-10-08 Wim Taymans <wim@fluendo.com>
9383 * gst/gstbus.c: (gst_bus_pop):
9385 * gst/gstsystemclock.c: (gst_system_clock_async_thread):
9386 Small cleanups and doc updates.
9388 2005-10-08 Thomas Vander Stichele <thomas at apestaart dot org>
9390 * gst/gst.c: (init_pre):
9391 * gst/gstbin.c: (gst_bin_add_func):
9392 log distributing clocks and base time
9393 * gst/gstregistry.c: (gst_registry_add_plugin),
9394 (gst_registry_scan_path_level), (gst_registry_scan_path):
9395 clean up the debugging output a little
9396 * gst/gstutils.c: (gst_element_state_get_name):
9397 warn about a memleak (I've actually seen this be used, though
9398 it was probably a bug)
9400 2005-10-07 Wim Taymans <wim@fluendo.com>
9402 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
9403 (gst_base_src_init), (gst_base_src_default_newsegment),
9404 (gst_base_src_newsegment), (gst_base_src_do_seek),
9405 (gst_base_src_loop), (gst_base_src_start):
9406 * gst/base/gstbasesrc.h:
9407 Make the newsegment event customizable by subclasses.
9409 2005-10-07 Wim Taymans <wim@fluendo.com>
9411 * gst/gstevent.c: (gst_event_new_buffersize),
9412 (gst_event_parse_buffersize):
9414 New event for future idea.
9416 2005-10-07 Andy Wingo <wingo@pobox.com>
9418 * gst/gstelement.c (gst_element_post_message): Doc update.
9420 * docs/gst/gstreamer-sections.txt: Update.
9422 * gst/gstmessage.c (gst_message_new_application): Made into a
9423 function like honest API calls.
9424 (gst_message_new_element): New message type.
9426 * gst/gstmessage.h (enum): Add GST_MESSAGE_ELEMENT type.
9428 * check/elements/fakesrc.c (test_no_preroll): New check, checks
9429 that setting a live fakesrc to PAUSED returns NO_PREROLL both
9432 * gst/base/gstbasesrc.c (gst_base_src_change_state): Allow a
9433 NO_PREROLL from gst_element_change_state to fall through.
9435 2005-10-07 Wim Taymans <wim@fluendo.com>
9437 * gst/gstghostpad.c: (gst_ghost_pad_get_internal),
9438 (gst_ghost_pad_do_activate_push):
9439 Activating a ghostpad with no internal pad in push mode
9442 2005-10-07 Thomas Vander Stichele <thomas at apestaart dot org>
9445 there's no point in wrapping FLAG_SET/_UNSET in STMT macros.
9446 Fixes compilation on Windows.
9448 2005-10-07 Michael Smith <msmith@fluendo.com>
9450 * tools/gst-inspect.c:
9451 Print out feature and plugin count at the end when printing out
9454 2005-10-04 Michael Smith <msmith@fluendo.com>
9456 * gst/gsterror.c: (_gst_stream_errors_init):
9457 Add another error string used in a few existing plugins.
9460 * gst/gstpluginfeature.c: (gst_plugin_feature_load):
9461 * tools/gst-inspect.c: (print_element_info):
9462 When a feature disappears from a plugin (and the feature exists in
9463 the cached registry file), things went horribly wrong. This isn't a
9464 complete fix, we should actually be removing the 'missing' features
9465 from the features list when we load the actual plugin. That's not
9468 2005-10-04 Johan Dahlin <johan@gnome.org>
9470 * check/gst/gstiterator.c: (GST_START_TEST):
9471 * gst/gstbin.c: (gst_bin_iterate_elements),
9472 (gst_bin_iterate_recurse), (gst_bin_iterate_sorted):
9473 * gst/gstelement.c: (gst_element_iterate_pads):
9474 * gst/gstformat.c: (gst_format_iterate_definitions):
9475 * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
9476 (gst_iterator_new_list), (gst_iterator_filter):
9477 * gst/gstiterator.h:
9478 * gst/gstquery.c: (gst_query_type_iterate_definitions):
9479 Add a GType to GstIterator, update callsites and tests.
9481 2005-10-06 Thomas Vander Stichele <thomas at apestaart dot org>
9483 * gst/gstpad.c: (gst_pad_event_default_dispatch):
9484 give events a chance to be handled by event probes when the pad
9487 2005-10-06 Thomas Vander Stichele <thomas at apestaart dot org>
9489 * gst/gstevent.c: (gst_event_type_get_name),
9490 (gst_event_type_to_quark), (gst_event_finalize), (gst_event_new):
9492 add string representations for event types
9494 2005-10-06 Wim Taymans <wim@fluendo.com>
9496 * gst/elements/gstfilesink.c: (gst_file_sink_close_file):
9497 Don't use NULL pointers.
9499 2005-10-06 Thomas Vander Stichele <thomas at apestaart dot org>
9501 * gst/gst_private.h:
9505 * gst/gstpluginfeature.c:
9506 widen the debug category in output to fit the biggest one we have
9507 add a bus category and use it
9508 play with the colors
9509 fix up some categories
9511 2005-10-06 Thomas Vander Stichele <thomas at apestaart dot org>
9513 * gst/gstghostpad.c: (gst_ghost_pad_internal_do_activate_push):
9514 add push activation of sink ghost pads.
9515 Andye, please verify
9517 2005-10-05 Thomas Vander Stichele <thomas at apestaart dot org>
9519 * gst/gstutils.c: (gst_element_link_pads):
9520 fix a bug in the case where neither element has a pad
9521 * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
9522 add a test for that case
9524 2005-10-05 Thomas Vander Stichele <thomas at apestaart dot org>
9526 * gst/gstpad.c: (gst_pad_push), (gst_pad_push_event):
9527 emit have-data before checking for peers. This allows
9528 for probe handlers to connect elements. This helps autopluggers.
9529 * check/gst/gstpad.c: (GST_START_TEST), (_probe_handler),
9531 add six checks, linked/unlinked with no/true/false probe
9533 2005-10-04 Wim Taymans <wim@fluendo.com>
9535 * gst/elements/gstfakesink.c: (gst_fake_sink_get_property),
9536 (gst_fake_sink_event), (gst_fake_sink_preroll),
9537 (gst_fake_sink_render), (gst_fake_sink_change_state):
9538 * gst/elements/gstfakesrc.c: (gst_fake_src_event_handler),
9539 (gst_fake_src_get_property), (gst_fake_src_create),
9540 (gst_fake_src_stop):
9541 * gst/elements/gstidentity.c: (gst_identity_stop):
9542 Protect last_message with lock.
9544 2005-10-04 Edward Hervey <edward@fluendo.com>
9547 Added precision in the comments for GST_FORMAT_DEFAULT
9549 2005-10-04 Tim-Philipp Müller <tim at centricular dot net>
9551 * tools/gst-launch.c: (main):
9552 Don't try to run erroneous pipelines.
9554 2005-10-04 Julien MOUTTE <julien@moutte.net>
9556 * gst/gstbus.c: We don't need this header.
9558 2005-10-03 Thomas Vander Stichele <thomas at apestaart dot org>
9563 === release 0.9.3 ===
9565 2005-10-03 Thomas Vander Stichele <thomas at apestaart dot org>
9569 Releasing 0.9.3, "Unregistered"
9571 2005-10-03 Andy Wingo <wingo@pobox.com>
9573 * gst/gstpad.c (gst_pad_activate_push): There is a race condition
9574 whereby calling a pad's activatepush() function can start a thread
9575 that starts to push or pull before the pad gets the FLUSHING flag
9576 unset. Hack around it by holding the stream lock until the flag is
9577 set. Need to replace this with a proper solution. Together with
9578 the ghost pad fixes, this fixes mp3 playing/tagreading.
9580 * docs/design/part-gstghostpad.txt: Add a note about activation of
9581 proxy pads outside of ghost pads.
9583 * gst/gstghostpad.c: Implement the ghost pad activation design.
9585 2005-10-02 Andy Wingo <wingo@pobox.com>
9587 * gst/gstobject.h (GST_OBJECT_REFCOUNT_VALUE): Just use the int.
9588 It is volatile, after all.
9590 * docs/design/part-gstghostpad.txt: Flesh out activation with
9593 * gst/base/gstbasesrc.c (gst_base_src_init): Use
9596 2005-10-02 Tim-Philipp Müller <tim at centricular dot net>
9599 Fix (unused) AM_CONDITIONAL tests.
9601 2005-10-01 Alessandro Decina <alessandro at nnva dot org>
9603 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
9605 * gst/gstutils.c: (gst_pad_query_convert):
9606 Add assertion that makes sure src_val is >=0, just like
9607 gst_query_new_convert() has. (#315895)
9609 2005-09-30 Edward Hervey <edward@fluendo.com>
9611 * gst/elements/gsttee.c: (gst_tee_do_push), (gst_tee_handle_buffer):
9612 Let's not iterate pads we're not interested in, it avoids getting
9613 sky-high refcounts on sinkpad.
9615 2005-09-30 Wim Taymans <wim@fluendo.com>
9617 * gst/gstelement.c: (gst_element_set_state),
9618 (gst_element_change_state):
9619 Small tweak, element in ASYNC remains ASYNC.
9621 2005-09-30 Wim Taymans <wim@fluendo.com>
9623 * gst/base/gstbasesink.c: (gst_base_sink_change_state):
9624 Only error is an error.
9626 * gst/gstbin.c: (gst_bin_change_state):
9629 * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_chain):
9630 Also call pad_block in pad alloc.
9632 * gst/gstutils.c: (gst_flow_get_name):
9635 2005-09-29 Tim-Philipp Müller <tim at centricular dot net>
9637 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
9638 (gst_base_src_get_range):
9639 Fix documentation typos. Add some more debug info.
9641 2005-09-29 David Schleef <ds@schleef.org>
9643 * gst/gstplugin.c: (gst_plugin_load_file): Make some error messages
9644 more end-user friendly.
9645 * tools/gst-inspect.c: (main): Check if command-line argument is
9646 a file and attempt to load that file as a plugin.
9648 2005-09-29 Thomas Vander Stichele <thomas at apestaart dot org>
9650 * check/gst/gstbin.c:
9651 * check/states/sinks.c:
9652 fix tests for the new warning
9653 * check/gst/gstpipeline.c:
9654 add a test for pipeline and bus interaction
9656 elements should be NULL if they get disposed; add a warning if not
9658 2005-09-29 Thomas Vander Stichele <thomas at apestaart dot org>
9661 for 2.6 refcounting, make debug log more correct by printing
9662 the actual refcounts at the time of swap (Wim)
9664 2005-09-29 Andy Wingo <wingo@pobox.com>
9666 * gst/gstbus.c (gst_bus_remove_signal_watch): New function,
9667 removes signal watches previously added via
9668 gst_bus_add_signal_watch.
9669 (gst_bus_add_signal_watch): Don't return the source id, just store
9670 it on the bus if there wasn't an id already.
9672 * gst/gstbus.h (GstBus): Add a couple new fields. API changes for
9673 add_signal_watch and remove_signal_watch.
9675 2005-09-29 Edward Hervey <edward@fluendo.com>
9677 * libs/gst/controller/gstcontroller.c: (gst_controller_new_list):
9678 Better if we actually iterate the list :)
9680 2005-09-29 Wim Taymans <wim@fluendo.com>
9682 * check/gst/gstbin.c: (GST_START_TEST):
9683 Change for new bus API.
9685 * check/gst/gstbus.c: (message_func_eos), (message_func_app),
9686 (send_messages), (GST_START_TEST), (gstbus_suite):
9687 Change for new bus signal API.
9689 * gst/gstbus.c: (gst_bus_class_init), (gst_bus_have_pending),
9690 (gst_bus_source_prepare), (gst_bus_source_check),
9691 (gst_bus_create_watch), (gst_bus_add_watch_full),
9692 (gst_bus_add_watch), (gst_bus_poll), (gst_bus_async_signal_func),
9693 (gst_bus_sync_signal_handler), (gst_bus_add_signal_watch):
9695 Remove support for multiple GSources operating on different
9696 message types as it is too complex and unneeded when using
9698 Added support for receiving signals from the bus.
9700 2005-09-29 Thomas Vander Stichele <thomas at apestaart dot org>
9702 * docs/libs/tmpl/gstdataprotocol.sgml:
9703 * docs/manual/advanced-dataaccess.xml:
9704 * gst/elements/gstcapsfilter.c:
9706 rename filter-caps to caps property
9708 2005-09-29 Tim-Philipp Müller <tim at centricular dot net>
9710 * gst/gstvalue.c: (gst_value_deserialize_fraction):
9711 More robust fraction string parsing.
9713 * docs/pwg/appendix-porting.xml:
9714 Mention gst_pad_use_explicit_caps() => gst_pad_use_fixed_caps()
9716 2005-09-29 Tim-Philipp Müller <tim at centricular dot net>
9718 * gst/gstcaps.c: (gst_caps_do_simplify):
9719 Thou shalt not free a structure and then continue using it
9720 in the next loop iteration.
9722 * check/gst/gstcaps.c: (check_fourcc_list), (test_simplify),
9724 Add test case for caps simplification.
9726 2005-09-29 Wim Taymans <wim@fluendo.com>
9728 * check/gst/gstbin.c: (GST_START_TEST):
9731 2005-09-29 Wim Taymans <wim@fluendo.com>
9733 * check/gst/gstbin.c: (GST_START_TEST):
9736 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init),
9737 (add_to_queue), (clear_queue), (reset_degree), (update_degree),
9738 (find_element), (gst_bin_sort_iterator_next),
9739 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
9740 (gst_bin_iterate_sorted), (gst_bin_element_set_state),
9741 (gst_bin_change_state), (gst_bin_dispose):
9742 A bin does not have a bus, it gets the bus from the parent.
9744 * gst/gstelement.c: (gst_element_requires_clock),
9745 (gst_element_provides_clock), (gst_element_is_indexable),
9746 (gst_element_is_locked_state), (gst_element_change_state),
9747 (gst_element_set_bus_func):
9750 * gst/gstpipeline.c: (gst_pipeline_class_init),
9751 (gst_pipeline_init), (gst_pipeline_provide_clock_func):
9752 The pipeline provides a bus.
9754 2005-09-28 Johan Dahlin <johan@gnome.org>
9756 * gst/gstmessage.c (gst_message_parse_state_changed): Use
9757 gst_structure_get_enum instead of gst_structure_get_int
9759 * gst/gststructure.c (gst_structure_get_enum): Impl.
9761 * gst/gststructure.h (gst_structure_get_enum): Add
9763 * docs/gst/gstreamer-sections.txt: Ditto
9765 * gst/gstmessage.c (gst_message_new_state_changed): Use
9766 GST_TYPE_STATE instead of G_TYPE_INT, mainly for language bindings
9767 which does introspection.
9768 Reviewed by Christian Schaller
9770 2005-09-28 Stefan Kost <ensonic@users.sf.net>
9772 * gst/gstinfo.c: (gst_debug_log_default):
9773 don't do dummy g_strdup()s
9774 * libs/gst/controller/gstcontroller.c:
9775 (on_object_controlled_property_changed),
9776 (gst_controlled_property_new), (gst_controller_new_valist),
9777 (gst_controller_new_list),
9778 (gst_controller_remove_properties_valist), (gst_controller_set),
9779 (gst_controller_get), (gst_controller_sync_values),
9780 (gst_controller_get_value_array), (_gst_controller_class_init),
9781 (gst_controller_get_type):
9782 * libs/gst/controller/gstcontroller.h:
9783 * libs/gst/controller/gstinterpolation.c:
9784 (gst_controlled_property_find_timed_value_node):
9785 convert // to /**/ comments
9787 2005-09-28 Wim Taymans <wim@fluendo.com>
9789 * gst/gstbus.c: (marshal_VOID__MINIOBJECT), (gst_bus_class_init),
9790 (gst_bus_post), (poll_func), (gst_bus_async_signal_func),
9791 (gst_bus_sync_signal_handler):
9793 Added async-message and sync-message signals to the bus.
9794 Added helper BusFunc to emit signals for all posted messages.
9796 * gst/gstmessage.c: (gst_message_type_get_name),
9797 (gst_message_type_to_quark), (gst_message_get_type):
9799 Register quarks for message names.
9801 2005-09-28 Stefan Kost <ensonic@users.sf.net>
9803 * docs/libs/gstreamer-libs-sections.txt:
9804 * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist),
9805 (gst_controller_new_list):
9806 * libs/gst/controller/gstcontroller.h:
9807 added another constructor for language bindings
9809 2005-09-28 Thomas Vander Stichele <thomas at apestaart dot org>
9811 * check/gst/gstpipeline.c: (GST_START_TEST), (gst_pipeline_suite):
9815 * gst/gstinfo.c: (_gst_debug_init):
9816 slightly more readable color for refcount debugging
9818 2005-09-28 Wim Taymans <wim@fluendo.com>
9820 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_provide_clock_func),
9821 (add_to_queue), (clear_queue), (reset_degree), (update_degree),
9822 (find_element), (gst_bin_sort_iterator_next),
9823 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
9824 (gst_bin_iterate_sorted), (gst_bin_element_set_state),
9825 (gst_bin_change_state), (gst_bin_dispose):
9826 Small doc fixes. get_clock -> provide_clock.
9828 * gst/gstelement.c: (gst_element_class_init),
9829 (gst_element_provides_clock), (gst_element_provide_clock),
9830 (gst_element_get_clock), (gst_element_commit_state),
9831 (gst_element_lost_state):
9833 Make get/set_clock() symetric. Add provide_clock vmethod since
9834 that is actually what this function does.
9836 * gst/gstpipeline.c: (gst_pipeline_class_init),
9837 (gst_pipeline_change_state), (gst_pipeline_provide_clock_func),
9838 (gst_pipeline_get_clock):
9839 get_clock -> provide_clock.
9841 2005-09-28 Andy Wingo <wingo@pobox.com>
9843 * gst/base/gstbasesrc.c (gst_base_src_unlock): Comment a bit in
9844 lieu of real docs...
9846 * gst/elements/gstfdsrc.c: Cleaned up a bit.
9848 2005-09-28 Tim-Philipp Müller <tim at centricular dot net>
9850 * gst/elements/gstcapsfilter.c:
9851 * gst/elements/gstfakesink.c:
9852 * gst/elements/gstfakesrc.c:
9853 * gst/elements/gstfdsink.c:
9854 * gst/elements/gstfdsrc.c:
9855 * gst/elements/gstfilesink.c:
9856 * gst/elements/gstfilesrc.c:
9857 * gst/elements/gstidentity.c:
9858 * gst/elements/gsttee.c:
9859 * gst/elements/gsttypefindelement.c:
9860 Make element details static.
9862 2005-09-28 Wim Taymans <wim@fluendo.com>
9864 * gst/gstbin.c: (add_to_queue), (clear_queue), (reset_outdegree),
9865 (update_outdegree), (find_element), (gst_bin_sort_iterator_next),
9866 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
9867 (gst_bin_iterate_sorted), (gst_bin_element_set_state),
9868 (gst_bin_change_state), (gst_bin_dispose):
9869 Some documentation updates.
9870 Clean up dispose handlers.
9872 * gst/gstobject.c: (gst_object_ref), (gst_object_unref):
9873 * gst/gstpad.c: (gst_pad_dispose):
9874 Clean up dispose handler.
9876 * gst/gstpipeline.c: (gst_pipeline_change_state):
9877 Removed spurious UNLOCK.
9879 2005-09-27 Stefan Kost <ensonic@users.sf.net>
9881 * docs/gst/gstreamer-sections.txt:
9882 * gst/base/gstbasesrc.h:
9887 * gst/gstpipeline.c:
9888 * gst/gstpipeline.h:
9891 added two new functions to the docs
9892 documents all undocumented GstXXXFlags
9893 completed some incomplete docs
9895 2005-09-27 Thomas Vander Stichele <thomas at apestaart dot org>
9897 * gst/gstbin.c: (gst_bin_dispose):
9898 * gst/gstelement.c: (gst_element_dispose):
9899 remove now useless and leaky resurrection code in dispose
9900 * gst/base/gstbasesrc.c: (gst_base_src_init):
9901 * gst/gstelementfactory.c: (gst_element_factory_create):
9902 * gst/gstobject.c: (gst_object_set_parent):
9905 2005-09-27 Wim Taymans <wim@fluendo.com>
9907 * docs/design/part-TODO.txt:
9910 * gst/gstbin.c: (add_to_queue), (clear_queue), (reset_outdegree),
9911 (update_outdegree), (find_element), (gst_bin_sort_iterator_next),
9912 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
9913 (gst_bin_iterate_sorted), (gst_bin_element_set_state),
9914 (gst_bin_change_state):
9916 Remove element variable, we keep element info in the iterator now.
9918 2005-09-27 Andy Wingo <wingo@pobox.com>
9920 * libs/gst/dataprotocol/dataprotocol.c: Fix error-checking return
9923 2005-09-27 Wim Taymans <wim@fluendo.com>
9925 * check/gst/gstbin.c: (GST_START_TEST):
9926 Enable check that works now.
9928 * gst/gstbin.c: (add_to_queue), (clear_queue), (reset_outdegree),
9929 (update_outdegree), (find_element), (gst_bin_sort_iterator_next),
9930 (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
9931 (gst_bin_iterate_sorted), (gst_bin_element_set_state),
9932 (gst_bin_change_state):
9934 Redid the state change algorithm using a topological sort algo.
9935 Handles all cases correctly.
9936 Exposed iterator for state change order.
9939 Temp storage for state changes. Need to get rid of this soon.
9941 2005-09-27 Wim Taymans <wim@fluendo.com>
9943 * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_do_push):
9944 * gst/gstutils.c: (intersect_caps_func), (gst_pad_proxy_getcaps),
9945 (link_fold_func), (gst_pad_proxy_setcaps):
9946 Leak fixes, the fold functions need to unref the passed object and
9947 _get_parent_*() returns ref to parent.
9949 2005-09-27 Tim-Philipp Müller <tim at centricular dot net>
9951 * check/gst/gstbuffer.c: (test_make_writable):
9952 Plug leak in test case and fix 'make check-valgrind'
9954 2005-09-27 Tim-Philipp Müller <tim at centricular dot net>
9956 * gst/gstbuffer.c: (gst_subbuffer_init):
9957 Set READONLY flag on subbuffers, so that gst_buffer_make_writable()
9958 works correctly in all circumstances (we could have just copied
9959 the parent buffer's readonly flag, but conceptually it seems
9960 cleaner to mark all subbuffers as read-only). (based on patch
9961 by Alessandro Decina, #314710).
9963 * check/gst/gstbuffer.c: (create_read_only_buffer),
9964 (test_make_writable), (test_subbuffer_make_writable),
9966 Add some tests for gst_buffer_make_writable().
9968 2005-09-27 Wim Taymans <wim@fluendo.com>
9970 * gst/gstbin.c: (bin_element_is_semi_sink), (gst_bin_change_state):
9971 use gst_object_has_ancestor().
9973 * gst/gstobject.c: (gst_object_has_ancestor):
9975 gst_object_has_ancestor() copied from gstbin.c as it is a
9978 * tests/instantiate/create.c: (create_all_elements):
9979 * tests/lat.c: (handoff_src), (handoff_sink):
9980 * tests/sched/runxml.c: (main):
9981 * tests/seeking/seeking1.c: (main):
9982 * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
9984 Fix compilation of some tests.
9986 2005-09-27 Tim-Philipp Müller <tim at centricular dot net>
9989 Remove comment. GST_TYPE_G_ERROR is here to stay,
9990 G_TYPE_ERROR has been WONTFIX'ed by the GLib folks
9993 2005-09-26 Wim Taymans <wim@fluendo.com>
9995 * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
9996 Added check that shows error in state change order.
9998 2005-09-26 Wim Taymans <wim@fluendo.com>
10000 * gst/gstbin.c: (gst_bin_change_state):
10001 Make state change function use 3 queues again, we were
10002 adding elements in the wrong order.
10004 * gst/gstghostpad.c: (gst_ghost_pad_do_unlink):
10007 * gst/gstpad.c: (gst_pad_dispose):
10008 Added some debug info first.
10010 2005-09-26 Tim-Philipp Müller <tim at centricular dot net>
10012 * docs/design/draft-push-pull.txt:
10013 * docs/design/part-events.txt:
10014 * docs/design/part-overview.txt:
10015 * docs/design/part-scheduling.txt:
10016 Replace all _pull_region() with _pull_range()
10018 2005-09-26 Andy Wingo <wingo@pobox.com>
10020 * gst/gstvalue.c (_gst_value_initialize): Better fakeout.
10022 * check/gst-libs/controller.c: Update for controller api change.
10025 * tests/Makefile.am:
10026 * tests/memchunk: Remove memchunk benchmark stuff, this is taken
10027 over by GLib bug 118439.
10029 * gst/base/gstbasesink.c (gst_base_sink_wait): Factor out the wait
10030 routines to a function.
10032 * docs/libs/gstreamer-libs-sections.txt: I am a good person today.
10034 * libs/gst/controller/gsthelper.c:
10035 * libs/gst/controller/gstcontroller.h (gst_controller_sync_values)
10036 (gst_object_sync_values): Renamed from sink_values. Ugh.
10038 * libs/gst/controller/gsthelper.c: Update for __gst_controller_key.
10040 * libs/gst/controller/gstcontroller.c (__gst_controller_key):
10041 Renamed from controller_key, as it is exported.
10043 * gst/gstvalue.c (_gst_value_initialize): Fake out the compiler.
10045 2005-09-26 Thomas Vander Stichele <thomas at apestaart dot org>
10050 * gst/gstpadtemplate.h:
10053 * gst/gstqueryutils.c:
10054 * gst/gstqueryutils.h:
10055 remove queryutils headers after moving the two used functions
10056 to gstquery. also fixes build problem for gstsiddec
10058 2005-09-26 Michael Smith <msmith@fluendo.com>
10060 * tools/gst-launch.1.in:
10061 Correct documentation in manpage of debug syntax
10063 2005-09-26 Wim Taymans <wim@fluendo.com>
10065 * gst/base/gstbasesrc.c: (gst_base_src_get_range),
10066 (gst_base_src_is_seekable), (gst_base_src_change_state):
10067 Some more debugging info.
10069 2005-09-25 Stefan Kost <ensonic@users.sf.net>
10071 * docs/gst/gstreamer-sections.txt:
10072 * gst/base/gstbasetransform.h:
10076 2005-09-25 Stefan Kost <ensonic@users.sf.net>
10078 * docs/gst/.cvsignore:
10079 * docs/gst/tmpl/.cvsignore:
10080 * docs/gst/tmpl/gstpipeline.sgml:
10081 * docs/gst/tmpl/gstplugin.sgml:
10082 * gst/gstpipeline.c:
10085 inlined the last two docs files
10086 removed the tmpl directory from cvs (no more conflicts here!)
10088 2005-09-25 Stefan Kost <ensonic@users.sf.net>
10090 * docs/gst/gstreamer-sections.txt:
10091 * docs/gst/tmpl/.cvsignore:
10092 * docs/gst/tmpl/gstpad.sgml:
10093 * docs/gst/tmpl/gstpadtemplate.sgml:
10095 * gst/gstpad.c: (gst_pad_class_init), (gst_pad_dispose),
10096 (gst_pad_finalize), (gst_pad_set_pad_template):
10098 * gst/gstpadtemplate.c: (gst_pad_template_get_type),
10099 (gst_pad_template_class_init), (gst_pad_template_init),
10100 (gst_pad_template_dispose), (name_is_valid),
10101 (gst_static_pad_template_get), (gst_pad_template_new),
10102 (gst_static_pad_template_get_caps), (gst_pad_template_get_caps),
10103 (gst_pad_template_pad_created):
10104 * gst/gstpadtemplate.h:
10105 inlined two more docs
10106 factored gstpadtemplate out of gstpad
10108 2005-09-24 Tim-Philipp Müller <tim at centricular dot net>
10110 * check/gst/gstbin.c: (test_children_state_change_order_flagged_sink),
10111 (test_children_state_change_order_semi_sink):
10112 Fix test case: we can't rely on a fixed state change order when
10113 going from READY => PAUSED because the sink might commit its
10114 new state first when the first buffer created by the source
10115 reaches the sink before the source has finished its change state.
10116 (Test case still fails at times, see #316856, comment 5 onwards)
10118 2005-09-24 Wim Taymans <wim@fluendo.com>
10120 * docs/design/part-events.txt:
10121 * docs/design/part-gstbus.txt:
10122 * docs/design/part-gstpipeline.txt:
10123 * docs/design/part-messages.txt:
10124 * docs/design/part-overview.txt:
10125 * docs/design/part-segments.txt:
10129 * gst/gstelement.c:
10132 * gst/gstiterator.c:
10133 Various documentation updates.
10135 2005-09-24 Thomas Vander Stichele <thomas at apestaart dot org>
10138 Well, that's embarassing. Luckily we weren't using
10139 GST_CLOCK_DIFF anywhere.
10141 2005-09-23 Thomas Vander Stichele <thomas at apestaart dot org>
10143 * common/gtk-doc.mak:
10144 don't fail on building XML, FC4 slave shows a bunch of doc
10145 missing bits that I don't get
10147 * gst/gstpipeline.c:
10148 * gst/gststructure.c:
10151 2005-09-23 Tim-Philipp Müller <tim at centricular dot net>
10153 * docs/design/part-gstbin.txt:
10154 * docs/design/part-gstbus.txt:
10156 Add blurb about how the bus goes into flushing mode and
10157 drops all messages when its bin goes from READY into NULL
10160 2005-09-23 Thomas Vander Stichele <thomas at apestaart dot org>
10162 * docs/gst/gstreamer-sections.txt:
10163 * gst/gststructure.c: (gst_structure_get_clock_time):
10164 * gst/gststructure.h:
10165 add a method to get a GstClockTime out of a structure
10167 2005-09-23 Tim-Philipp Müller <tim at centricular dot net>
10169 * check/gst/gstbin.c: (test_children_state_change_order_flagged_sink),
10170 (test_children_state_change_order_semi_sink), (gst_bin_suite):
10171 Added test to check state change order in bins (can still be made
10172 to fail here under heavy disk load; bails out with 'Push on pad
10173 fakesink:sink0, but it was not activated in push mode').
10175 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_change_state):
10176 Fix state change order when there is only a semi sink (#316856)
10178 * gst/gstbus.c: (gst_bus_class_init):
10179 Use _class_peek_parent(), not _class_ref(); fix docs to say
10180 'default main context' instead of 'mainloop' where that is
10183 * gst/gstelement.c: (gst_element_commit_state),
10184 (gst_element_set_state):
10185 Fix typos in debug messages
10187 2005-09-23 Thomas Vander Stichele <thomas at apestaart dot org>
10190 * gst/gstpad.c: (gst_pad_class_init), (gst_pad_chain):
10191 * gst/gstpluginfeature.c:
10193 various doc updates
10194 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
10195 change an assert into an error until it gets fixed properly
10197 2005-09-23 Stefan Kost <ensonic@users.sf.net>
10199 * docs/gst/gstreamer-sections.txt:
10200 * docs/gst/tmpl/.cvsignore:
10201 * docs/gst/tmpl/gstelement.sgml:
10202 * docs/gst/tmpl/gstinfo.sgml:
10203 * docs/gst/tmpl/gstobject.sgml:
10204 * gst/gstelement.c:
10205 * gst/gstelement.h:
10208 * gst/gstobject.c: (gst_object_class_init):
10210 inlined 3 more biiiig doc files and added some missing docs on the fly
10212 2005-09-23 Thomas Vander Stichele <thomas at apestaart dot org>
10214 * check/gst/.cvsignore:
10215 * check/gst/gstplugin.c: (GST_START_TEST), (gst_plugin_suite):
10216 * gst/gstregistryxml.c: (load_plugin),
10217 (gst_registry_xml_save_plugin):
10218 put back source in registry. add checks for find_plugin.
10219 * testsuite/states/bin.c: (assert_state), (empty_bin),
10220 (test_adding_one_element), (main):
10221 * testsuite/states/locked.c: (main):
10222 some compile/run fixes
10224 2005-09-22 Thomas Vander Stichele <thomas at apestaart dot org>
10226 * check/gst/gstvalue.c: (GST_START_TEST):
10227 fix leaks in the test itself
10229 2005-09-22 Wim Taymans <wim@fluendo.com>
10231 * gst/base/gstbasesink.c: (gst_base_sink_class_init),
10232 (gst_base_sink_send_event), (gst_base_sink_peer_query),
10233 (gst_base_sink_query):
10234 Prepare for more accurate position reporting and query
10237 * gst/gstelement.c: (gst_element_send_event),
10238 (gst_element_set_state):
10241 2005-09-22 Wim Taymans <wim@fluendo.com>
10243 * gst/gstquery.c: (gst_query_new_segment), (gst_query_set_segment),
10244 (gst_query_parse_segment):
10246 More documentation.
10247 Add segment query for future use.
10249 2005-09-22 Wim Taymans <wim@fluendo.com>
10251 * gst/gstbin.c: (gst_bin_add_func):
10252 Some more debug info.
10254 * gst/gstelement.c: (gst_element_send_event):
10255 Simplify send_event
10257 * gst/gstelement.h:
10258 Don't know how flags got broken.
10263 2005-09-22 Tim-Philipp Müller <tim at centricular dot net>
10265 * check/gst/gstvalue.c: (test_date), (gst_value_suite):
10266 Add simplistic test suite for GST_TYPE_DATE serialisation and
10269 2005-09-22 Tim-Philipp Müller <tim at centricular dot net>
10271 * docs/gst/gstreamer-sections.txt:
10272 * gst/gststructure.c: (gst_structure_set_valist),
10273 (gst_structure_get_date):
10274 * gst/gststructure.h:
10275 * gst/gstvalue.c: (gst_value_set_date), (gst_value_get_date),
10276 (gst_date_copy), (gst_value_compare_date),
10277 (gst_value_serialize_date), (gst_value_deserialize_date),
10278 (gst_value_transform_date_string),
10279 (gst_value_transform_string_date), (_gst_value_initialize):
10281 Add GST_TYPE_DATE, a boxed type that wraps GDate, and the usual
10282 bunch of utility functions along with a hack that checks that
10283 developers don't accidentally use G_TYPE_DATE where GST_TYPE_DATE
10284 is required. Part of the grand scheme in #170777.
10286 2005-09-22 Andy Wingo <wingo@pobox.com>
10288 * gst/gstconfig.h.in: Psych out gtk-doc.
10290 * docs/gst/gstreamer-sections.txt: Add GST_HAVE_GLIB_2_8.
10292 * check/Makefile.am (check_PROGRAMS): Add gstplugin to the tests.
10294 * tools/gst-inspect.c (print_element_list): Plug some
10295 inconsequential leaks.
10297 * gst/gstregistry.c (gst_registry_get_default): Doc.
10299 * check/gst/gstplugin.c:
10300 * gst/gsttypefindfactory.c (gst_type_find_factory_call_function):
10301 * gst/gstelementfactory.c (gst_element_factory_create):
10302 * gst/gstindexfactory.c (gst_index_factory_create): Update for
10305 * gst/gstpluginfeature.c (gst_plugin_feature_list_free): Doc.
10306 (gst_plugin_feature_load): Doc, don't eat refs.
10308 * gst/gstplugin.c (gst_plugin_load): Doc, don't eat refs.
10309 (gst_plugin_list_free): Doc.
10310 (gst_plugin_load_file): Doc updates.
10312 * gst/gstbuffer.c (gst_buffer_get_caps): Like all our _get
10313 accessors returning refcounted objects, return a ref.
10315 * check/gst/gstbuffer.c (GST_START_TEST): Use refcount-idempotent
10316 accessor for caps. IDEMPOTENCE. Oh yes.
10318 2005-09-21 Francis Labonte <francis_labonte at hotmail dot com>
10320 Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
10322 * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
10323 (_gst_debug_register_funcptr):
10324 Add mutex to serialise access to the hash table with
10325 the function pointer => function name string mapping;
10326 make that hash table static scope (#316809).
10328 * gst/registries/.cvsignore:
10329 Remove left-over file.
10331 2005-09-21 Tim-Philipp Müller <tim at centricular dot net>
10333 * docs/pwg/appendix-porting.xml:
10334 And something about newsegment events and caps-on-buffers to
10335 the porting guide (feel free to improve).
10337 2005-09-21 Andy Wingo <wingo@pobox.com>
10339 * check/gst/gstutils.c (test_buffer_probe_n_times): Add tests for
10340 data and event probes on the same pad.
10341 (test_buffer_probe_once): Test that removing probes from within
10342 the probe functions works.
10344 2005-09-21 Andy Wingo <wingo@pobox.com>
10346 * check/gst/gstutils.c: New file.
10347 (test_buffer_probe_n_times): A simple buffer probe test. More to
10350 * gst/gstutils.c (gst_pad_add_buffer_probe): Connect to
10351 have-data::buffer, not have-data.
10352 (gst_pad_add_event_probe): Likewise for have-data::event.
10353 (gst_pad_add_data_probe): More docs. The part about 'resolving the
10354 peer' isn't quite right yet though.
10355 (gst_pad_remove_buffer_probe, gst_pad_remove_event_probe)
10356 (gst_pad_remove_data_probe): Change to take the guint handler_id
10357 as their arg, not the function+data, which is more glib-like.
10359 * gst/gstpad.c (gst_pad_emit_have_data_signal): Add a detail to
10360 the signal emission to indicate if the data is a buffer or an
10362 (gst_pad_get_type): Initialize buffer and event quarks.
10363 (gst_pad_class_init): have-data is now a detailed signal, yes it
10366 2005-09-21 Tim-Philipp Müller <tim at centricular dot net>
10368 * gst/base/gstbasetransform.c: (gst_base_transform_transform_size):
10369 * gst/gstutils.c: (gst_util_set_value_from_string),
10370 (gst_util_set_object_arg):
10371 Don't put functional code in g_return_if_fail() or
10372 g_return_val_if_fail() statements, otherwise things will
10373 break when G_DISABLE_CHECKS is defined during compilation.
10375 2005-09-21 Stefan Kost <ensonic@users.sf.net>
10377 * docs/gst/tmpl/.cvsignore:
10378 * docs/gst/tmpl/gstvalue.sgml:
10381 inlied another one and added some obvious docs
10383 2005-09-21 Wim Taymans <wim@fluendo.com>
10385 * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
10386 (gst_fdsrc_init), (gst_fdsrc_start), (gst_fdsrc_stop),
10387 (gst_fdsrc_unlock), (gst_fdsrc_set_property),
10388 (gst_fdsrc_get_property), (gst_fdsrc_create):
10389 * gst/elements/gstfdsrc.h:
10390 Properly implement fdsrc. Removed signal and timeout,
10391 better implemented somewhere else.
10393 2005-09-21 Stefan Kost <ensonic@users.sf.net>
10395 * docs/gst/tmpl/.cvsignore:
10396 * docs/gst/tmpl/gstimplementsinterface.sgml:
10397 * gst/gstinterface.c:
10400 2005-09-21 Stefan Kost <ensonic@users.sf.net>
10402 * docs/gst/gstreamer-sections.txt:
10403 * docs/gst/tmpl/.cvsignore:
10404 * docs/gst/tmpl/gstenumtypes.sgml:
10405 remove obsolete doc file
10407 2005-09-21 David Schleef <ds@schleef.org>
10409 * gst/gstelementfactory.c: (gst_element_factory_make): Drink a
10410 little beer, fix a little leak.
10412 2005-09-21 Stefan Kost <ensonic@users.sf.net>
10414 * docs/gst/gstreamer-docs.sgml:
10415 * docs/gst/gstreamer-sections.txt:
10416 * docs/gst/tmpl/.cvsignore:
10420 * gst/gstelement.h:
10421 * gst/gstindex.c: (gst_index_class_init):
10423 * gst/gstindexfactory.c: (gst_index_factory_get_type),
10424 (gst_index_factory_class_init), (gst_index_factory_init),
10425 (gst_index_factory_finalize), (gst_index_factory_new),
10426 (gst_index_factory_destroy), (gst_index_factory_find),
10427 (gst_index_factory_create), (gst_index_factory_make):
10428 * gst/gstindexfactory.h:
10429 * gst/gstpluginfeature.c:
10430 * gst/gstpluginfeature.h:
10431 * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist):
10432 more docs inlined, splitted gstindex.{c,h}
10434 2005-09-20 Thomas Vander Stichele <thomas at apestaart dot org>
10436 * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist):
10439 2005-09-20 Tim-Philipp Müller <tim at centricular dot net>
10441 * gst/elements/gstfilesink.c: (gst_file_sink_init):
10442 Set sync to FALSE by default.
10444 2005-09-20 Wim Taymans <wim@fluendo.com>
10446 * gst/base/gstbasesink.c: (gst_base_sink_class_init),
10447 (gst_base_sink_init):
10448 Make sync property settable from subclass.
10450 * gst/elements/gstfakesink.c: (gst_fake_sink_init),
10451 (gst_fake_sink_change_state):
10452 Set sync to FALSE by default.
10454 2005-09-20 Wim Taymans <wim@fluendo.com>
10456 * gst/gstbus.c: (poll_func), (poll_timeout), (gst_bus_poll):
10457 * tools/gst-launch.c: (main):
10458 The timeout handler should have lower priority than the source
10459 so we don't timeout before popping a message with 0 timeout.
10460 Dump error messages after failed state change.
10462 2005-09-20 Tim-Philipp Müller <tim at centricular dot net>
10464 * tools/gst-inspect.c: (print_element_properties_info):
10467 2005-09-20 Thomas Vander Stichele <thomas at apestaart dot org>
10469 * check/gst/gstevent.c:
10470 * gst/elements/gstfakesink.c:
10471 * gst/elements/gstfakesink.h:
10472 remove the sync property from fakesink.
10473 has the side effect of setting sync TRUE
10474 for fakesink, which is a change. Anyone who knows how
10475 to fix this nicely in a GObject-y way, feel free.
10477 2005-09-20 Stefan Kost <ensonic@users.sf.net>
10479 * docs/gst/gstreamer-docs.sgml:
10480 remove probe refsection
10482 2005-09-20 Stefan Kost <ensonic@users.sf.net>
10484 * check/Makefile.am:
10485 disable valgrinding the controller test again
10486 * docs/gst/gstreamer-sections.txt:
10487 update for api-changes
10489 2005-09-20 Wim Taymans <wim@fluendo.com>
10491 * gst/base/gstbasesink.c: (gst_base_sink_class_init),
10492 (gst_base_sink_set_property), (gst_base_sink_get_property),
10493 (gst_base_sink_do_sync):
10494 * gst/base/gstbasesink.h:
10495 Added sync property to basesink to disable clock sync.
10497 2005-09-20 Andy Wingo <wingo@pobox.com>
10499 * gst/gstelementfactory.c (gst_element_factory_create): Avoid
10500 eating the caller's refcount.
10502 * gst/gstobject.h (GST_OBJECT_REFCOUNT)
10503 (GST_OBJECT_REFCOUNT_VALUE): Conditionally fondle the right
10506 * gst/gstconfig.h.in (GST_HAVE_GLIB_2_8):
10507 * configure.ac (GST_HAVE_GLIB_2_8_DEFINE): Make the availability
10508 of GLib 2.8 public, so we can know which refcount to check in
10511 * gst/gstobject.c: Use the GST_HAVE_GLIB_2_8 define.
10512 (gst_object_init): Only set the gst refcount if we're going ahead
10513 with the refcount hack.
10515 2005-09-20 Stefan Kost <ensonic@users.sf.net>
10517 * check/gst-libs/controller.c: (plugin_init), (GST_START_TEST):
10518 * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist):
10519 more leaks plumbed, added more debug-logging
10523 2005-09-20 Thomas Vander Stichele <thomas at apestaart dot org>
10525 * gst/gstmessage.c:
10526 remove include of gstmemchunk.h
10528 2005-09-20 Thomas Vander Stichele <thomas at apestaart dot org>
10530 * gst/gstclock.c: (_gst_clock_id_free):
10531 Commit from the Political Party For More Atomic CVS Commits,
10532 so that people don't waste too much of their day fishing
10533 out obvious leaks out of massive commits.
10534 Oh, and fix a pretty damn obvious leak in the memchunk
10537 2005-09-20 Stefan Kost <ensonic@users.sf.net>
10539 * check/Makefile.am:
10540 * check/gst-libs/controller.c: (plugin_init), (GST_START_TEST):
10541 plug mem-leak, re-add to valgrindable tests
10543 2005-09-20 Thomas Vander Stichele <thomas at apestaart dot org>
10546 unbreak the build for those who have chronic arthritis
10547 and typing "make check" is just too taxing on the hands
10549 2005-09-20 Andy Wingo <wingo@pobox.com>
10551 * gst/gst.h: Re-add marshal to gst.h's include list -- if we
10552 really want it out, you should fix plugins at the same time.
10554 2005-09-19 Stefan Kost <ensonic@users.sf.net>
10557 * docs/gst/gstreamer-sections.txt:
10559 added missing symbols to api docs
10560 disable ref-count hack if we have glib >= 2.8
10562 2005-09-19 David Schleef <ds@schleef.org>
10564 * docs/gst/Makefile.am: Ignore a few more internal headers
10565 * docs/gst/gstreamer-docs.sgml: Remove old sections
10566 * docs/gst/gstreamer-sections.txt: Remove old sections
10567 * docs/gst/tmpl/gstobject.sgml: update
10568 * docs/gst/tmpl/gstplugin.sgml: update
10569 * docs/gst/tmpl/gstpluginfeature.sgml: update
10570 * docs/random/ds/0.9-suggested-changes: update.
10571 * gst/Makefile.am: remove memchunk and trashstack, since they're
10573 * gst/gst.c: (gst_deinit): rename gst_registry_deinit to _cleanup
10574 * gst/gst.h: don't include some headers
10575 * gst/gstchildproxy.c: add gstmarshal.h
10576 * gst/gstclock.c: Don't use memchunks
10577 * gst/gstminiobject.c: Add some docs
10578 * gst/gstobject.c: remove DESTROYED flag, since it's redundant
10579 * gst/gstobject.h: same
10580 * gst/gstplugin.c: include gstmacros.h
10581 * gst/gstplugin.h: don't include gstmacros.h, since it's private
10582 * gst/gstquery.c: don't use memchunks
10583 * gst/gstregistry.c: rename gst_registry_deinit()
10584 * gst/gstregistry.h: same
10586 2005-09-19 David Schleef <ds@schleef.org>
10588 * docs/libs/gstreamer-libs-docs.sgml: Remove docs for getbits
10589 * docs/libs/gstreamer-libs-sections.txt:
10590 * docs/libs/tmpl/gstgetbits.sgml:
10591 * docs/libs/tmpl/gstputbits.sgml:
10593 2005-09-19 Tim-Philipp Müller <tim at centricular dot net>
10595 * win32/gstenumtypes.c:
10596 * win32/gstenumtypes.h:
10599 2005-09-19 Wim Taymans <wim@fluendo.com>
10601 * gst/gstpipeline.c: (do_pipeline_seek), (gst_pipeline_send_event):
10602 Automatically PAUSE and RESUME a pipeline when a flushing seek
10605 2005-09-19 Andy Wingo <wingo@pobox.com>
10607 * gst/gstregistry.h: Spacing fixen.
10609 2005-09-19 Wim Taymans <wim@fluendo.com>
10611 * gst/base/gstbasesrc.c: (gst_base_src_change_state):
10612 Handle state change failure more correctly.
10614 2005-09-19 Thomas Vander Stichele <thomas at apestaart dot org>
10616 * check/Makefile.am:
10617 * check/pipelines/cleanup.c: (run_pipeline):
10618 * check/pipelines/simple_launch_lines.c: (run_pipeline),
10620 enable cleanup again after fixing the leak
10622 some more info on docs
10624 2005-09-19 Thomas Vander Stichele <thomas at apestaart dot org>
10626 * check/Makefile.am:
10627 re-enable tests now that leaks are plugged
10629 * check/gst/gstbin.c:
10630 * check/gst/gstpipeline.c:
10631 add some more tests while fixing leaks
10632 * common/check.mak:
10633 make sure binaries are uptodate when valgrinding/gdbing
10635 * gst/gstelementfactory.c:
10636 remove a ref too many, and add a FIXME for when we get
10637 round to disposing of classes
10639 fix the refcounting when loading a plugin from a file and
10640 the code pretends that the pointer is the same even though
10641 of course it can change
10642 * gst/gstpluginfeature.c:
10643 unref plugins marked cached (a bit confusing as a name)
10644 as the docs state should be done
10645 various doc additions to explain refcounting
10646 * gst/gstregistry.c:
10647 * gst/gstregistryxml.c:
10650 2005-09-19 Wim Taymans <wim@fluendo.com>
10652 * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
10653 * check/gst/gstbus.c: (message_func_eos), (message_func_app),
10654 (send_messages), (GST_START_TEST), (gstbus_suite):
10655 * check/gst/gstpipeline.c: (GST_START_TEST):
10656 * check/pipelines/cleanup.c: (run_pipeline):
10657 * check/pipelines/simple_launch_lines.c: (run_pipeline),
10659 * gst/gstbus.c: (gst_bus_have_pending), (gst_bus_source_prepare),
10660 (gst_bus_source_check), (gst_bus_source_dispatch),
10661 (gst_bus_create_watch), (gst_bus_add_watch_full),
10662 (gst_bus_add_watch), (poll_func), (poll_timeout), (gst_bus_poll):
10664 * tools/gst-launch.c: (event_loop):
10665 * tools/gst-md5sum.c: (event_loop):
10666 GstBusHandler -> GstBusFunc, return value has the same meaning as
10667 any other GSource (FALSE == remove source).
10668 _add_watch() and _add_watch_full() now take a MessageType mask to
10669 only handle specific types of messages.
10670 _poll() returns the GstMessage instead of the message type to avoid
10672 _have_pending() takes a MessageType mask now too.
10673 Added testsuite for multiple bus watches.
10674 Fix testsuites and applications for new bus API.
10676 2005-09-19 Thomas Vander Stichele <thomas at apestaart dot org>
10678 * check/Makefile.am:
10679 mark a bunch of the tests as to fix until we fix them
10681 2005-09-18 Thomas Vander Stichele <thomas at apestaart dot org>
10683 * common/check.mak:
10684 use GST_PLUGIN settings for valgrind tests as well, so we're
10685 valgrinding the correct thing
10686 * gst/gst.c: (init_post):
10689 2005-09-18 Thomas Vander Stichele <thomas at apestaart dot org>
10691 * gst/gst.c: (init_post), (gst_deinit):
10692 * gst/gstelementfactory.c: (gst_element_factory_class_init),
10693 (gst_element_factory_finalize), (gst_element_factory_cleanup):
10694 * gst/gstindex.c: (gst_index_factory_class_init),
10695 (gst_index_factory_finalize):
10696 * gst/gstobject.c: (gst_object_dispose):
10697 * gst/gstplugin.c: (gst_plugin_finalize), (gst_plugin_class_init),
10698 (gst_plugin_load_file), (gst_plugin_desc_free):
10699 * gst/gstpluginfeature.c: (gst_plugin_feature_class_init),
10700 (gst_plugin_feature_finalize):
10701 * gst/gstregistry.c: (gst_registry_class_init),
10702 (gst_registry_init), (gst_registry_finalize),
10703 (gst_registry_get_default), (gst_registry_deinit):
10704 * gst/gstregistry.h:
10705 * gst/gstregistryxml.c: (load_feature), (load_plugin):
10706 various cleanups and memleak plugging. make valgrind is happy now.
10708 2005-09-18 Thomas Vander Stichele <thomas at apestaart dot org>
10710 * common/check.mak:
10711 add a check-valgrind target
10713 2005-09-18 David Schleef <ds@schleef.org>
10715 * tools/gst-inspect.c: Revert the GOption code.
10717 2005-09-17 David Schleef <ds@schleef.org>
10719 * check/Makefile.am: Fix environment variables.
10720 * check/gst/gstplugin.c: Fix for API changes.
10721 * tools/gst-inspect.c: Fix for API changes.
10722 * tools/gst-xmlinspect.c: Fix for API changes.
10723 * gst/gstelementfactory.c:
10726 * gst/gstpluginfeature.c:
10727 * gst/gstpluginfeature.h:
10728 * gst/gstregistry.c:
10729 * gst/gstregistry.h:
10730 * gst/gstregistryxml.c:
10731 * gst/gsttypefind.c:
10732 * gst/gsttypefindfactory.c:
10733 * gst/indexers/gstfileindex.c:
10734 * gst/indexers/gstmemindex.c:
10735 * gst/schedulers/Makefile.am:
10736 Change registry to keep track of both plugins and features,
10737 removing the feature tracking from plugins themselves.
10739 2005-09-16 Thomas Vander Stichele <thomas at apestaart dot org>
10741 * check/Makefile.am:
10742 * tools/gst-register.1.in:
10743 remove gst-register
10745 2005-09-15 David Schleef <ds@schleef.org>
10747 * check/gst/gstplugin.c:
10748 * gst/gstelementfactory.c:
10750 * gst/gstpluginfeature.c:
10751 * gst/gstregistry.c:
10752 Getting tired of debugging. Disabled all the unreffing of
10753 plugins and features, which fixes the segfaults, but of
10754 course leaks like crazy. At least playbin works.
10756 2005-09-15 David Schleef <ds@schleef.org>
10758 * check/gst/gstplugin.c: (register_check_elements),
10759 (GST_START_TEST), (peek), (suggest), (gst_plugin_suite):
10761 * gst/elements/gsttypefindelement.c: Fix refcounting.
10762 * gst/gsttypefind.c:
10763 * gst/gsttypefindfactory.c:
10764 * gst/gsttypefindfactory.h:
10766 2005-09-15 David Schleef <ds@schleef.org>
10768 * gst/gstindex.c: get refcounting correct.
10769 * gst/gstregistry.c: Handle the case where a feature/plugin is
10772 2005-09-15 David Schleef <ds@schleef.org>
10774 * check/Makefile.am:
10775 * check/gst/gstplugin.c: Add test
10776 * gst/gstplugin.c: Fix problems noticed by testsuite
10778 * gst/gstregistry.c:
10779 * gst/gstregistry.h:
10781 2005-09-15 David Schleef <ds@schleef.org>
10783 * gst/gstplugin.c: Implement semi-decent recounting and locking
10784 in plugins and plugin features.
10786 * gst/gstpluginfeature.c:
10787 * gst/gstpluginfeature.h:
10788 * gst/gstregistry.c:
10790 2005-09-15 Michael Smith <msmith@fluendo.com>
10792 * gst/gstregistry.c: (gst_registry_get_feature_list):
10793 Implement this. Makes oggdemux work; decodebin still broken.
10795 2005-09-14 David Schleef <ds@schleef.org>
10797 * configure.ac: Add -no-undefined to GST_PLUGIN_LDFLAGS (bug
10799 * gst/base/Makefile.am: Add -no-undefined to LDFLAGS for libs
10800 * gst/check/Makefile.am:
10801 * libs/gst/controller/Makefile.am:
10802 * libs/gst/dataprotocol/Makefile.am:
10804 2005-09-14 David Schleef <ds@schleef.org>
10806 * configure.ac: Remove getbits library. Nothing uses it, and
10807 it should be in something like liboil if someone did want
10809 * libs/gst/Makefile.am:
10810 * libs/gst/getbits/Makefile.am:
10811 * libs/gst/getbits/gbtest.c:
10812 * libs/gst/getbits/getbits.c:
10813 * libs/gst/getbits/getbits.h:
10814 * libs/gst/getbits/gstgetbits_generic.c:
10815 * libs/gst/getbits/gstgetbits_i386.s:
10816 * libs/gst/getbits/gstgetbits_inl.h:
10818 2005-09-14 David Schleef <ds@schleef.org>
10820 * gst/Makefile.am: Dist glib-compat.h
10822 2005-09-14 David Schleef <ds@schleef.org>
10824 * configure.ac: Remove gst/registries, since it's no longer used.
10825 * gst/registries/Makefile.am:
10826 * gst/registries/gstlibxmlregistry.c:
10827 * gst/registries/gstlibxmlregistry.h:
10828 * gst/registries/gstxmlregistry.c:
10829 * gst/registries/gstxmlregistry.h:
10830 * gst/registries/registrytest.c:
10832 2005-09-14 David Schleef <ds@schleef.org>
10834 * gst/glib-compat.h:
10835 * gst/gstregistryxml.c:
10836 Convergence is near. Seriously.
10838 2005-09-14 David Schleef <ds@schleef.org>
10840 * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
10841 * gst/glib-compat.h:
10842 Attempt #4 to appease the buildbots.
10844 2005-09-14 David Schleef <ds@schleef.org>
10846 * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
10849 2005-09-14 David Schleef <ds@schleef.org>
10851 * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
10854 2005-09-14 David Schleef <ds@schleef.org>
10856 * gst/Makefile.am: Oh yeah, libgstreamer.so needs to contain
10859 2005-09-14 David Schleef <ds@schleef.org>
10861 * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
10862 * gst/glib-compat.h: Add some functions that are in newer versions
10863 of glib than we care to require.
10864 * gst/gstregistryxml.c: Use them.
10866 2005-09-14 David Schleef <ds@schleef.org>
10868 * po/POTFILES.in: remove gst-register.c
10870 2005-09-14 David Schleef <ds@schleef.org>
10872 * docs/gst/gstreamer-docs.sgml:
10873 * docs/gst/gstreamer-sections.txt:
10874 * docs/gst/gstreamer.types:
10875 * docs/gst/tmpl/gstelement.sgml:
10876 * docs/gst/tmpl/gstplugin.sgml:
10877 * docs/gst/tmpl/gstpluginfeature.sgml:
10878 Documentation updates for registry changes.
10880 2005-09-14 David Schleef <ds@schleef.org>
10882 * gst/gstregistryxml.c: Copy g_mkdir_with_parent() from glib,
10883 because we don't require glib-2.8.
10885 2005-09-14 David Schleef <ds@schleef.org>
10887 * gst/gstregistryxml.c: Added. Essentially moved out of the
10888 registries directory.
10890 2005-09-14 David Schleef <ds@schleef.org>
10892 * check/Makefile.am:
10893 * check/generic/states.c:
10897 * gst/gst_private.h:
10898 * gst/gstelementfactory.c:
10903 * gst/gstpluginfeature.c:
10904 * gst/gstpluginfeature.h:
10905 * gst/gstregistry.c:
10906 * gst/gstregistry.h:
10907 * gst/gstregistrypool.c: remove
10908 * gst/gstregistrypool.h: remove
10909 * gst/gsttypefind.c:
10910 * gst/gsttypefindfactory.c:
10912 * tools/Makefile.am:
10913 * tools/gst-compprep.c:
10914 * tools/gst-inspect.c:
10915 * tools/gst-register.c: remove
10916 * tools/gst-xmlinspect.c:
10917 Registry rewrite. Changes registry from being a file created
10918 by a tool into a simple cache file created automatically by
10919 libgstreamer. Removed gst-register (because it's no longer
10920 needed). Remove registry pools, because we only have one
10921 registry implementation (XML). Fix up other subsystems as
10924 2005-09-13 Michael Smith <msmith@fluendo.com>
10926 * gst/gstconfig.h.in:
10927 Don't Use windows linking attributes for MinGW. Fixes #316157
10929 2005-09-13 Thomas Vander Stichele <thomas at apestaart dot org>
10931 * gst/gstutils.c: (set_state_async_thread_func),
10932 (gst_element_set_state_async):
10933 Apparently people think it's better if this function doesn't
10934 try to set the state to whatever state was asked for on the first
10935 call to this function for any object. Seriously.
10937 2005-09-12 Thomas Vander Stichele <thomas at apestaart dot org>
10939 * check/gst/gstpipeline.c: (GST_START_TEST):
10940 * docs/gst/gstreamer-sections.txt:
10941 * gst/gstutils.c: (set_state_async_thread_func),
10942 (gst_element_set_state_async):
10944 add a "gst_element_set_state_async" method that
10945 sets the state and starts a thread to make sure the state
10946 change completes as best as it can
10948 2005-09-12 Thomas Vander Stichele <thomas at apestaart dot org>
10950 * check/gst/gstpipeline.c: (GST_START_TEST), (gst_pipeline_suite):
10951 codify design+behaviour in testsuite after discussion
10953 2005-09-12 Thomas Vander Stichele <thomas at apestaart dot org>
10955 * docs/gst/tmpl/gstelement.sgml:
10956 * docs/manual/appendix-quotes.xml:
10958 * gst/gstelement.c: (gst_element_set_state):
10961 2005-09-12 Jan Schmidt <thaytan@mad.scientist.com>
10963 * gst/base/gstbasetransform.c: (gst_base_transform_class_init),
10964 (gst_base_transform_prepare_output_buf),
10965 (gst_base_transform_handle_buffer):
10966 * gst/elements/gstcapsfilter.c: (gst_capsfilter_transform_ip),
10967 (gst_capsfilter_prepare_buf):
10968 Remove the requirement for sub-classes to call the parent
10969 implementation of prepare_output_buffer with a wrapper function.
10971 * gst/gsttaglist.h:
10972 * gst/gsttagsetter.h:
10973 Fix #define wrapper
10975 2005-09-11 Stefan Kost <ensonic@users.sf.net>
10977 * docs/gst/gstreamer-sections.txt:
10980 2005-09-11 Thomas Vander Stichele <thomas at apestaart dot org>
10982 * docs/gst/gstreamer-sections.txt:
10983 * docs/gst/tmpl/gstelement.sgml:
10984 * docs/gst/tmpl/gstplugin.sgml:
10985 * gst/gstminiobject.c:
10987 docs now stop throwing warnings
10989 2005-09-11 Thomas Vander Stichele <thomas at apestaart dot org>
10991 * docs/gst/gstreamer-sections.txt:
10992 * docs/gst/gstreamer.types:
10993 * docs/gst/tmpl/gstpad.sgml:
10994 * docs/gst/tmpl/gsttypes.sgml:
10995 * gst/base/gstadapter.h:
10996 * gst/base/gstbasesink.h:
10997 * gst/base/gstbasesrc.h:
11003 * gst/gstelement.h:
11005 * gst/gstmessage.h:
11007 * gst/gststructure.c:
11008 * gst/registries/gstlibxmlregistry.h:
11009 various documentation fixes
11011 2005-09-11 Thomas Vander Stichele <thomas at apestaart dot org>
11013 * docs/gst/gstreamer-sections.txt:
11014 * docs/gst/tmpl/gstvalue.sgml:
11015 rearrange gstvalue section
11016 * gst/gstutils.c: (gst_element_state_get_name):
11018 * gst/gstvalue.c: (_gst_value_initialize):
11022 2005-09-10 Jan Schmidt <thaytan@mad.scientist.com>
11024 * check/gst-libs/controller.c:
11025 Header include fix.
11026 * gst/base/gstbasetransform.c:
11027 (gst_base_transform_default_prepare_buf),
11028 (gst_base_transform_handle_buffer):
11029 * gst/base/gstbasetransform.h:
11030 Some more basetransform changes and fixes to enable sub-classes
11031 that modify buffer metadata only.
11032 * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
11033 (gst_capsfilter_init), (gst_capsfilter_transform_ip),
11034 (gst_capsfilter_prepare_buf):
11035 If the output pad has fixed allowed caps and input buffers
11036 don't have any, set the fixed caps on outgoing buffers.
11038 2005-09-09 Jan Schmidt <thaytan@mad.scientist.com>
11039 * check/elements/identity.c: (GST_START_TEST):
11040 Make the error a little clearer when the test fails because
11041 identity made a copy of the buffer.
11042 * docs/gst/gstreamer-sections.txt:
11043 New symbols in gstbasetransform.h
11044 * gst/base/gstbasetransform.c: (gst_base_transform_class_init),
11045 (gst_base_transform_init), (gst_base_transform_transform_size),
11046 (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
11047 (gst_base_transform_default_prepare_buf),
11048 (gst_base_transform_get_unit_size),
11049 (gst_base_transform_buffer_alloc),
11050 (gst_base_transform_handle_buffer), (gst_base_transform_chain),
11051 (gst_base_transform_change_state),
11052 (gst_base_transform_set_passthrough),
11053 (gst_base_transform_set_in_place),
11054 (gst_base_transform_is_in_place):
11055 * gst/base/gstbasetransform.h:
11056 Change BaseTransform to separate in_place operate from same_caps
11057 output. in_place implies that the element can perform the transform
11058 on incoming buffers in-place, even if the caps on the output are
11060 Sub-class elements can now implement special buffer allocation
11061 methods for outgoing buffers if they wish to.
11062 Big documentation addition.
11063 * gst/elements/gstcapsfilter.c: (gst_capsfilter_transform_ip):
11064 * gst/elements/gstelements.c:
11065 Changes for basetransform modifications.
11066 * gst/elements/Makefile.am:
11067 * gst/elements/gstfdsrc.c: (gst_fdsrc_init), (gst_fdsrc_create):
11068 Compile fix. Extra debug output.
11070 2005-09-09 Thomas Vander Stichele <thomas at apestaart dot org>
11072 * check/gst/gstpad.c: (GST_START_TEST), (name_is_valid),
11074 add tests for valid pad naming
11075 * gst/check/gstcheck.c: (gst_check_log_message_func),
11076 (gst_check_log_critical_func):
11078 remove printing of code, it is fragile when the code contains
11079 % and the line number is enough info
11080 * gst/check/gstcheck.h:
11081 * gst/gstpad.c: (gst_pad_template_new):
11084 2005-09-09 Thomas Vander Stichele <thomas at apestaart dot org>
11087 say what CHECK flags we use
11088 * docs/libs/gstreamer-libs.types:
11089 * libs/gst/controller/Makefile.am:
11090 * libs/gst/controller/gst-controller.c:
11091 * libs/gst/controller/gst-controller.h:
11092 * libs/gst/controller/gst-helper.c:
11093 * libs/gst/controller/gst-interpolation.c:
11094 * libs/gst/controller/gstcontroller.c:
11095 * libs/gst/controller/gsthelper.c:
11096 * libs/gst/controller/gstinterpolation.c:
11097 * tools/gst-inspect.c: (print_plugin_info):
11098 we don't use dashes in header names
11100 2005-09-09 Thomas Vander Stichele <thomas at apestaart dot org>
11102 * check/Makefile.am:
11103 * check/gst/.cvsignore:
11104 * check/gst/gstpipeline.c: (pop_messages), (GST_START_TEST),
11105 (gst_pipeline_suite), (main):
11106 adding a test for pipelines and state changes
11107 * gst/gstutils.c: (get_state_func):
11109 * gstreamer.spec.in:
11112 2005-09-08 Michael Smith <msmith@fluendo.com>
11114 * gst/elements/gstfilesrc.c: (gst_file_src_map_region),
11115 (gst_file_src_map_small_region), (gst_file_src_create_mmap),
11116 (gst_file_src_is_seekable), (gst_file_src_get_size),
11117 (gst_file_src_start):
11118 * gst/elements/gstfilesrc.h:
11119 Various fixes for unseekable, unmmapable, and non-normal files, so
11120 that fallback to read() rather than mmap() works.
11121 * gst/gstevent.c: (gst_event_new_newsegment):
11122 Allow newsegment events with segment_start == segment_end, as will
11123 correctly happen if you use filesrc on a zero-size file, for
11126 2005-09-07 Jan Schmidt <thaytan@mad.scientist.com>
11128 * gst/gstplugin.c: (gst_plugin_load_file):
11129 Call g_module_close when we don't load the module
11131 * gst/registries/gstlibxmlregistry.c:
11132 (gst_xml_registry_get_property):
11133 Port leak fix from 0.8
11135 2005-09-07 Stefan Kost <ensonic@users.sf.net>
11137 * docs/gst/gstreamer-docs.sgml:
11138 * docs/gst/tmpl/.cvsignore:
11139 * docs/gst/tmpl/gsttrace.sgml:
11140 * docs/gst/tmpl/gsttrashstack.sgml:
11143 * gst/gstelement.h:
11145 * gst/gstmessage.c:
11146 * gst/gstmessage.h:
11149 * gst/gsttaginterface.c:
11150 * gst/gsttaginterface.h:
11151 * gst/gsttaglist.c:
11152 * gst/gsttaglist.h:
11153 * gst/gsttagsetter.c:
11154 * gst/gsttagsetter.h:
11157 * gst/gsttrashstack.c:
11158 renamed gsttag -> gsttaglist, gsttaginterface -> gsttagsetter
11159 inlined docs for gsttrace, gsttrashstack
11161 2005-09-07 Stefan Kost <ensonic@users.sf.net>
11164 * gst/elements/gstbufferstore.h:
11165 * gst/elements/gsttypefindelement.c:
11166 * gst/elements/gsttypefindelement.h:
11168 * gst/gsttypefind.c:
11169 * gst/gsttypefind.h:
11170 * gst/gsttypefindfactory.c: (gst_type_find_factory_get_type),
11171 (gst_type_find_factory_class_init), (gst_type_find_factory_init),
11172 (gst_type_find_factory_dispose),
11173 (gst_type_find_factory_unload_thyself),
11174 (gst_type_find_load_plugin), (gst_type_find_factory_get_list),
11175 (gst_type_find_factory_get_caps),
11176 (gst_type_find_factory_get_extensions),
11177 (gst_type_find_factory_call_function):
11178 * gst/gsttypefindfactory.h:
11179 * gst/registries/gstlibxmlregistry.c:
11180 * gst/registries/gstxmlregistry.c:
11181 splitted gsttypefind into gsttypefind, gsttypefindfactory
11183 2005-09-07 Andy Wingo <wingo@pobox.com>
11185 * gst/base/gstbasesink.c (gst_base_sink_activate_pull): Fix a race
11186 condition whereby the pad's task function is entered before the
11187 pad_mode variable was set.
11189 2005-09-07 Jan Schmidt <thaytan@mad.scientist.com>
11191 * gst/gstpad.c: (gst_pad_alloc_buffer):
11192 Catch misbehaving pad_alloc functions that don't
11193 set up caps and do it for them.
11195 2005-09-07 Stefan Kost <ensonic@users.sf.net>
11197 * check/pipelines/simple_launch_lines.c: (run_pipeline):
11198 test for pipe!=NULL
11199 * docs/gst/tmpl/.cvsignore:
11200 * docs/gst/tmpl/gstmemchunk.sgml:
11201 * docs/gst/tmpl/gstparse.sgml:
11202 * docs/gst/tmpl/gsttaglist.sgml:
11203 * docs/gst/tmpl/gsttagsetter.sgml:
11204 * docs/gst/tmpl/gsttypefind.sgml:
11205 * docs/gst/tmpl/gsttypefindfactory.sgml:
11206 * gst/gstmemchunk.c:
11209 * gst/gsttaginterface.c:
11210 * gst/gsttypefind.c:
11211 * gst/gsttypefind.h:
11214 === release 0.9.2 ===
11216 2005-09-06 Thomas Vander Stichele <thomas at apestaart dot org>
11221 releasing 0.9.2, "South"
11223 2005-09-05 Andy Wingo <wingo@pobox.com>
11225 * gst/registries/gstxmlregistry.h:
11226 * gst/registries/gstxmlregistry.c: Um... resurrect...
11228 * gst/registries/gstxmlregistry.h:
11229 * gst/registries/gstxmlregistry.c: and update to newer API.
11230 Incidentally they should be a bit faster now that they don't have
11233 2005-09-05 Andy Wingo <wingo@pobox.com>
11235 * gst/registries/gstxmlregistry.h:
11236 * gst/registries/gstxmlregistry.c: Remove from CVS, they were
11237 replaced by the libxml registry a while back
11239 2005-09-03 Thomas Vander Stichele <thomas at apestaart dot org>
11241 * docs/gst/tmpl/gstplugin.sgml:
11242 * gst/elements/gstelements.c:
11244 * gst/gstplugin.c: (gst_plugin_register_func),
11245 (gst_plugin_desc_copy), (gst_plugin_desc_free),
11246 (gst_plugin_get_source):
11248 * gst/registries/gstlibxmlregistry.c: (load_plugin),
11249 (gst_xml_registry_save_plugin):
11250 * gst/registries/gstxmlregistry.c: (gst_xml_registry_parse_plugin),
11251 (gst_xml_registry_save_plugin):
11252 * tools/gst-inspect.c: (print_plugin_info):
11253 add a "source" plugin description field, to represent the source
11254 module this plugin is a part of. By default GST_PLUGIN_DEFINE
11255 will set it to PACKAGE, which is automake's idea of the name of
11256 the source project.
11258 2005-09-03 Thomas Vander Stichele <thomas at apestaart dot org>
11263 * docs/Makefile.am:
11264 * docs/faq/Makefile.am:
11265 * docs/gst/tmpl/gstelement.sgml:
11266 * docs/gst/tmpl/gsttypes.sgml:
11267 * docs/htmlinstall.mak:
11268 * docs/manual/Makefile.am:
11269 * docs/pwg/Makefile.am:
11270 reorganize doc build a little
11271 split out docbook and gtk-doc stuff
11272 have two separate --enable's and enable them through autogen
11273 but disable by default in configure (to be similar to other
11275 * gstreamer.spec.in:
11276 clean up docs install
11294 translation updates
11296 2005-09-03 Tim-Philipp Müller <tim at centricular dot net>
11298 * gst/base/gstbasesink.c: (gst_base_sink_pad_buffer_alloc):
11301 * gst/elements/gstfakesink.c: (gst_fake_sink_init),
11302 (gst_fake_sink_change_state):
11303 Make state change function thread-safe.
11305 * gst/gstpad.c: (gst_pad_alloc_buffer):
11306 Set offset on generic buffer allocated by fallback.
11308 2005-09-03 Stefan Kost <ensonic@users.sf.net>
11310 * docs/gst/gstreamer-sections.txt:
11311 * docs/gst/tmpl/gstelement.sgml:
11313 * libs/gst/controller/gst-controller.c:
11314 (gst_controlled_property_set_interpolation_mode),
11315 (gst_controlled_property_new),
11316 (gst_controller_find_controlled_property):
11317 run the wingo-magic script against the docs
11319 2005-09-02 Stefan Kost <ensonic@users.sf.net>
11321 * docs/gst/gstreamer-docs.sgml:
11322 * docs/gst/gstreamer-sections.txt:
11323 * docs/gst/tmpl/.cvsignore:
11324 * docs/gst/tmpl/gstelementdetails.sgml:
11325 * docs/gst/tmpl/gstelementfactory.sgml:
11328 * gst/gstelementfactory.c:
11329 * gst/gstelementfactory.h:
11330 merged elementdetails docs into elementfactory docs
11333 2005-09-02 Andy Wingo <wingo@pobox.com>
11335 * gst/gstelement.h: Add magical pixie dust to make glib-mkenums
11336 consider this enum an enum and not a flags.
11338 2005-09-02 Stefan Kost <ensonic@users.sf.net>
11340 * docs/gst/gstreamer-docs.sgml:
11341 * docs/gst/tmpl/.cvsignore:
11342 * docs/gst/tmpl/gstghostpad.sgml:
11343 * docs/gst/tmpl/gstiterator.sgml:
11344 * docs/gst/tmpl/gstmacros.sgml:
11345 * docs/gst/tmpl/gstrealpad.sgml:
11346 * docs/gst/tmpl/gstregistry.sgml:
11347 * docs/gst/tmpl/gstregistrypool.sgml:
11348 * docs/gst/tmpl/gststructure.sgml:
11349 * docs/gst/tmpl/gstsystemclock.sgml:
11350 * docs/gst/tmpl/gsttrace.sgml:
11351 * gst/gstghostpad.c:
11353 * gst/gstmemchunk.c:
11354 * gst/gstmemchunk.h:
11356 * gst/gstregistry.c:
11357 * gst/gstregistrypool.c:
11358 * gst/gststructure.c:
11359 * gst/gstsystemclock.c:
11362 2005-09-02 Andy Wingo <wingo@pobox.com>
11364 * gst/gstelement.h (GstState): Renamed from GstElementState,
11365 changed to be a normal enum instead of flags.
11366 (GstStateChangeReturn): Renamed from GstElementStateReturn, names
11367 munged to be GST_STATE_CHANGE_*.
11368 (GST_STATE_CHANGE): Renamed from GST_STATE_TRANSITION, updated to
11369 work with the new state representation.
11370 (GstStateChange): New enumeration of possible state transitions.
11371 Replaces GST_STATE_FOO_TO_BAR with GST_STATE_CHANGE_FOO_TO_BAR.
11372 (GstElementClass::change_state): Pass the GstStateChange along as
11373 an argument. Helps language bindings, so they don't have to use
11374 tricky lock-needing macros like GST_STATE_CHANGE ().
11376 * scripts/update-states (file): New script. Run it on a file to
11377 update it for state naming and API changes. Updates files in
11380 * All files updated for the new API.
11382 2005-09-02 Thomas Vander Stichele <thomas at apestaart dot org>
11384 * gst/gsttrace.c: (gst_trace_flush), (gst_trace_text_flush):
11385 * gst/gstutils.c: (gst_util_set_value_from_string),
11386 (gst_util_set_object_arg):
11387 fix a bunch of unchecked return values
11388 * tools/gst-complete.c: (main):
11389 * gstreamer.spec.in:
11392 2005-09-01 Wim Taymans <wim@fluendo.com>
11394 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
11395 (gst_base_sink_event), (gst_base_sink_do_sync),
11396 (gst_base_sink_handle_event):
11397 * gst/base/gstbasesink.h:
11398 Handle newsegments more correctly.
11403 * gst/gstevent.c: (gst_event_new_newsegment):
11404 A newsegment cannot have a start_time of -1
11406 2005-09-01 Tim-Philipp Müller <tim at centricular dot net>
11408 * win32/gstenumtypes.c:
11409 * win32/gstenumtypes.h:
11412 2005-08-31 Stefan Kost <ensonic@users.sf.net>
11414 * libs/gst/controller/gst-controller.c:
11415 (gst_controlled_property_set_interpolation_mode),
11416 (gst_controlled_property_new):
11417 fixed boolean again
11419 2005-08-31 Thomas Vander Stichele <thomas at apestaart dot org>
11421 * docs/faq/gst-uninstalled:
11426 * gst/gstutils.c: (gst_element_link_filtered):
11428 add gst_element_link_filtered
11430 2005-08-31 Stefan Kost <ensonic@users.sf.net>
11432 * docs/gst/gstreamer-docs.sgml:
11433 * docs/gst/gstreamer-sections.txt:
11434 * docs/gst/tmpl/.cvsignore:
11435 * docs/gst/tmpl/gsterror.sgml:
11436 * docs/gst/tmpl/gstfilter.sgml:
11437 * docs/gst/tmpl/gsturihandler.sgml:
11438 * docs/gst/tmpl/gsturitype.sgml:
11439 * docs/gst/tmpl/gstutils.sgml:
11440 * docs/gst/tmpl/gstxml.sgml:
11445 * gst/gsturitype.c:
11448 inlined more docs, fixed double id-ref
11450 2005-08-31 Wim Taymans <wim@fluendo.com>
11452 * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
11453 (gst_base_transform_handle_buffer):
11454 Passthrough elements don't need the caps as they don't care.
11456 2005-08-31 Wim Taymans <wim@fluendo.com>
11458 * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
11459 (gst_base_transform_handle_buffer), (gst_base_transform_chain):
11460 Don't leak refcounts on buffers.
11462 2005-08-31 Wim Taymans <wim@fluendo.com>
11464 * gst/base/gstbasetransform.c: (gst_base_transform_configure_caps),
11465 (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
11466 (gst_base_transform_chain), (gst_base_transform_change_state):
11467 * gst/base/gstbasetransform.h:
11468 Handle the case where we are not negotiated more gracefully.
11470 2005-08-31 Tim-Philipp Müller <tim at centricular dot net>
11472 * gst/elements/gstfilesrc.c: (gst_mmap_buffer_init),
11473 (gst_file_src_map_region):
11474 Set READONLY flag on mmap'ed buffers, otherwise
11475 gst_buffer_make_writable() won't work properly (#314708).
11477 2005-08-31 Wim Taymans <wim@fluendo.com>
11479 * gst/base/gstbasetransform.c: (gst_base_transform_handle_buffer):
11480 passthrough elements can even do inplace on non writable
11481 buffers (as they don't touch them).
11483 2005-08-31 Stefan Kost <ensonic@users.sf.net>
11485 * check/gst-libs/controller.c: (gst_test_mono_source_get_property),
11486 (gst_test_mono_source_set_property),
11487 (gst_test_mono_source_class_init), (GST_START_TEST),
11488 (gst_controller_suite):
11489 more tests (hehe I have the most)
11491 describe popping messages whenusing mulltiple sources
11492 * libs/gst/controller/gst-controller.c:
11493 (gst_controlled_property_set_interpolation_mode),
11494 (gst_controlled_property_new):
11495 * libs/gst/controller/gst-controller.h:
11496 * libs/gst/controller/gst-interpolation.c:
11497 implement boolean properties
11499 2005-08-31 Wim Taymans <wim@fluendo.com>
11501 * gst/gstminiobject.c: (gst_mini_object_ref):
11502 Cannot assert that the refcount has to be positive
11503 since a disposed object can be resurrected.
11505 2005-08-31 Wim Taymans <wim@fluendo.com>
11507 * gst/gstpad.c: (gst_pad_init):
11508 Revert change, need to first fix badly behaving
11511 2005-08-30 Wim Taymans <wim@fluendo.com>
11513 * check/elements/fakesrc.c: (setup_fakesrc):
11514 * check/elements/identity.c: (setup_identity):
11515 Activate pads before using them.
11517 2005-08-30 Wim Taymans <wim@fluendo.com>
11519 * gst/base/gstadapter.c: (gst_adapter_flush):
11520 Flushing out 0 bytes is ok for this function.
11522 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
11523 no newsegment gives a warning and sets the start/stop to
11526 * gst/base/gstbasetransform.c: (gst_base_transform_change_state),
11527 (gst_base_transform_set_passthrough):
11530 * gst/gstminiobject.c: (gst_mini_object_ref):
11531 Check refcount here too.
11533 * gst/gstpad.c: (gst_pad_init):
11534 Pads are initially flushing and refusing data.
11536 * gst/gstutils.c: (gst_element_link_pads_filtered):
11537 When adding a capsfilter element make sure it has the
11538 same state as the parent bin.
11540 2005-08-30 Stefan Kost <ensonic@users.sf.net>
11542 * docs/gst/tmpl/.cvsignore:
11543 * docs/gst/tmpl/gstformat.sgml:
11544 * docs/gst/tmpl/gstversion.sgml:
11548 * gst/gstversion.h.in:
11549 more docs and two more inlined
11551 2005-08-30 Wim Taymans <wim@fluendo.com>
11553 * gst/elements/gstfilesink.c: (gst_file_sink_class_init):
11554 Don't sync to clock.
11556 2005-08-30 Stefan Kost <ensonic@users.sf.net>
11558 * docs/gst/gstreamer-sections.txt:
11559 ultral33t func10ns deserve to appear in the docs actually
11560 * docs/gst/tmpl/.cvsignore:
11561 * docs/gst/tmpl/gstcompat.sgml:
11562 * docs/gst/tmpl/gstconfig.sgml:
11563 * gst/check/gstcheck.c:
11565 * gst/gstconfig.h.in:
11568 2005-08-30 Stefan Kost <ensonic@users.sf.net>
11570 * docs/gst/tmpl/.cvsignore:
11571 * docs/gst/tmpl/gstquery.sgml:
11572 * docs/gst/tmpl/gstutils.sgml:
11575 inlined and extended docs
11577 2005-08-30 Stefan Kost <ensonic@users.sf.net>
11579 * check/gst-libs/controller.c: (GST_START_TEST),
11580 (gst_controller_suite):
11582 * docs/gst/tmpl/gstutils.sgml:
11583 * docs/libs/gstreamer-libs-sections.txt:
11584 * docs/libs/tmpl/gstdataprotocol.sgml:
11586 * examples/controller/audio-example.c: (main):
11587 controller example works now
11590 * tools/gst-inspect.c: (print_element_properties_info):
11591 show param spec flags
11593 2005-08-29 Andy Wingo <wingo@pobox.com>
11595 * gst/gstutils.c (gst_util_uint64_scale): New 3733t funct10n.
11597 2005-08-28 Andy Wingo <wingo@pobox.com>
11599 * gst/gstutils.h (GST_BOILERPLATE_FULL): Prototype instance_init
11600 as having two arguments instead of just one. Allows superclasses
11601 to access information on subclasses -- see the terrible for() loop
11602 in gtype.c:g_type_create_instance for the reason why. All callers
11605 2005-08-27 Stefan Kost <ensonic@users.sf.net>
11607 * docs/design/part-messages.txt:
11609 * docs/gst/tmpl/.cvsignore:
11610 * docs/gst/tmpl/gstcaps.sgml:
11611 * docs/gst/tmpl/gstclock.sgml:
11617 * gst/gstmessage.c:
11618 added descriptions for bus and message
11619 inline caps and clock docs
11621 2005-08-27 Stefan Kost <ensonic@users.sf.net>
11623 * gst/gstmessage.c:
11624 * gst/gstmessage.h:
11627 2005-08-27 Stefan Kost <ensonic@users.sf.net>
11629 * gst/base/gstbasetransform.c: (gst_base_transform_transform_size):
11632 2005-08-26 Andy Wingo <wingo@pobox.com>
11634 * check/pipelines/simple_launch_lines.c (run_pipeline): Check
11635 element_set_state's return val.
11636 (test_2_elements): Add test that's been disabled for months.
11638 * gst/elements/gstfakesink.c: Cleanups. Add can-activate-push and
11639 can-activate-pull properties.
11641 * gst/elements/gstfakesrc.c: Cleanups. Add can-activate-push and
11642 can-activate-pull properties. Implement is_seekable so fakesrc can
11643 operate in pull mode.
11645 * gst/base/gstbasesink.c (GstBaseSink): Remove has-loop, has-chain
11647 (gst_base_sink_activate, gst_base_sink_activate_pull)
11648 (gst_base_sink_activate_push): Make activation mode choosing work.
11650 (gst_base_sink_chain, gst_base_sink_loop): Assert activation mode
11651 is right. Make pull mode work. Post an eos before pausing in pull
11653 (gst_base_sink_change_state): Pay attention to the core's
11654 change_state() return val.
11656 * gst/base/gstbasesrc.c (GstBaseSrc): Remove has-loop,
11657 has-getrange properties. Cleanups.
11659 * gst/base/gstbasesrc.h (GstBaseSrc): Remove has_loop,
11660 has_getrange and replace with can_activate_pull and
11663 * gst/base/gstbasesink.h (GstBaseSink): Rearrange fields, add
11664 locking comments. Remove has_loop, has_chain and replace with
11665 can_activate_pull and can_activate_push.
11667 2005-08-26 Jan Schmidt <thaytan@mad.scientist.com>
11670 * examples/Makefile.am:
11671 * examples/metadata/Makefile.am:
11672 * examples/metadata/read-metadata.c: (message_loop),
11673 (have_pad_handler), (make_pipeline), (print_tag), (main):
11674 Add metadata reading example that loops over a list of filenames,
11675 dumping any tags found.
11677 * gst/gstbus.c: (gst_bus_dispose):
11678 * gst/gstelement.c: (gst_element_dispose):
11679 Release a few potentially-held references in dispose.
11681 2005-08-26 Stefan Kost <ensonic@users.sf.net>
11683 * docs/gst/tmpl/gstminiobject.sgml:
11684 do *not* add tmpl/*.sgml files to CVS!
11686 2005-08-26 Stefan Kost <ensonic@users.sf.net>
11688 * libs/gst/bytestream/.cvsignore:
11689 * libs/gst/bytestream/Makefile.am:
11690 * libs/gst/bytestream/adapter.c:
11691 * libs/gst/bytestream/adapter.h:
11692 * libs/gst/bytestream/bytestream.c:
11693 * libs/gst/bytestream/bytestream.h:
11694 * libs/gst/bytestream/filepad.c:
11695 * libs/gst/bytestream/filepad.h:
11696 removing obsolete files
11698 2005-08-26 Stefan Kost <ensonic@users.sf.net>
11700 * docs/gst/gstreamer-docs.sgml:
11701 * docs/libs/gstreamer-libs-docs.sgml:
11702 disabed additional index entries again, as this makes docs-gen just
11703 slow and they aren't useful yet
11704 * docs/libs/gstreamer-libs-sections.txt:
11705 little -section.txt cleanup for libs
11707 2005-08-26 Thomas Vander Stichele <thomas at apestaart dot org>
11709 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
11710 * gst/base/gstbasetransform.c: (gst_base_transform_transform_size),
11711 fix up some debugging
11712 (gst_base_transform_get_unit_size),
11713 (gst_base_transform_buffer_alloc), (gst_base_transform_event),
11714 (gst_base_transform_handle_buffer):
11715 * gst/base/gstbasetransform.h:
11716 handle and store timed NEWSEGMENT events so that subclasses that
11717 calculate time by counting samples have a segment_start time they
11718 need to add to their timestamps - see audioresample
11720 2005-08-26 Stefan Kost <ensonic@users.sf.net>
11723 removed ';' from the end of macro defs
11724 * docs/gst/gstreamer-docs.sgml:
11725 * docs/gst/gstreamer-sections.txt:
11726 * docs/gst/tmpl/.cvsignore:
11728 * gst/gstelement.c: (gst_element_class_init),
11729 (gst_element_set_state), (activate_pads),
11730 (gst_element_save_thyself):
11731 * gst/gstevent.c: (gst_event_new_newsegment):
11733 * gst/gstiterator.c:
11734 * gst/gstiterator.h:
11737 * gst/gstutils.c: (gst_pad_query_convert):
11739 fixed parameter name mismatches between source, header and docs
11740 added some more docs, resolved the last batch of unused elements in
11741 docs (now someone needs to doc them)
11743 2005-08-25 Thomas Vander Stichele <thomas at apestaart dot org>
11745 * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_rebuild):
11746 * gst/registries/gstxmlregistry.c: (gst_xml_registry_rebuild):
11747 don't walk through the plugins backwards. Where is all this
11748 reversed logic coming from ?
11750 2005-08-25 Wim Taymans <wim@fluendo.com>
11752 * gst/base/gstbasetransform.c: (gst_base_transform_init),
11753 (gst_base_transform_transform_size),
11754 (gst_base_transform_configure_caps),
11755 (gst_base_transform_get_unit_size),
11756 (gst_base_transform_buffer_alloc),
11757 (gst_base_transform_change_state):
11758 * gst/base/gstbasetransform.h:
11759 Cache caps unit_size.
11760 Make sure we cannot negotiate up and downstream at the
11763 2005-08-25 Thomas Vander Stichele <thomas at apestaart dot org>
11765 * gst/gst.c: (init_pre), (init_post):
11766 register the installed plugin path after the env var
11767 * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_save):
11768 * gst/registries/gstxmlregistry.c: (gst_xml_registry_save):
11769 don't reverse order of paths; conserve the order of GST_PLUGIN_PATH
11770 directories, so the tests can prefer uninstalled over installed
11772 2005-08-25 Thomas Vander Stichele <thomas at apestaart dot org>
11774 * gst/base/gstbasetransform.h:
11779 2005-08-25 Wim Taymans <wim@fluendo.com>
11781 * gst/gstbin.c: (bin_bus_handler):
11782 Be a bit more conservative about the posted message.
11784 * gst/gstbus.c: (gst_bus_post):
11785 Some cleanups, warn wrong return values.
11787 2005-08-25 Jan Schmidt <thaytan@mad.scientist.com>
11789 * check/gst/gstbin.c: (GST_START_TEST):
11790 * gst/gstbin.c: (bin_bus_handler):
11791 * gst/gstmessage.c: (gst_message_finalize), (_gst_message_copy),
11792 (gst_message_new), (gst_message_new_eos), (gst_message_new_error),
11793 (gst_message_new_warning), (gst_message_new_tag),
11794 (gst_message_new_state_changed), (gst_message_new_segment_start),
11795 (gst_message_new_segment_done), (gst_message_new_custom):
11796 * gst/gstmessage.h:
11797 * tools/gst-launch.c: (event_loop):
11798 * tools/gst-md5sum.c: (event_loop):
11799 Revert unpopular change for GST_MESSAGE_SRC to GObject.
11801 2005-08-25 Wim Taymans <wim@fluendo.com>
11803 * check/generic/states.c: (GST_START_TEST):
11804 Cleanup can be done at the end.
11806 * gst/gsttask.c: (gst_task_get_type), (gst_task_finalize),
11807 (gst_task_func), (gst_task_cleanup_all), (gst_task_set_lock),
11808 (gst_task_get_state), (gst_task_start), (gst_task_pause):
11809 Oh boy.. Thanks for finding this, Thomas.
11811 2005-08-25 Stefan Kost <ensonic@users.sf.net>
11813 * docs/gst/gstreamer.types:
11814 added missing types
11816 2005-08-25 Stefan Kost <ensonic@users.sf.net>
11818 * docs/gst/gstreamer-docs.sgml:
11819 * docs/gst/gstreamer-sections.txt:
11820 * docs/gst/tmpl/.cvsignore:
11822 * gst/gstiterator.c:
11824 * gst/registries/gstxmlregistry.h:
11825 added missing classes and symbols (123 more to go)
11826 removed removed symbols from section file
11827 fixed many doc-comments
11829 2005-08-24 Wim Taymans <wim@fluendo.com>
11831 * check/generic/states.c: (GST_START_TEST):
11832 Make sure all tasks are stopped.
11834 * check/gst/gstbin.c: (GST_START_TEST):
11835 Unref after usage for proper valgrinding.
11837 * gst/gstpad.c: (gst_pad_finalize), (gst_pad_stop_task):
11838 Really wait for the task to stop before destroying the
11841 * gst/gstqueue.c: (gst_queue_sink_activate_push),
11842 (gst_queue_src_activate_push):
11843 Small cleanups. Don't stop the task when we did not start
11846 * gst/gsttask.c: (gst_task_get_type), (gst_task_init),
11847 (gst_task_func), (gst_task_cleanup_all), (gst_task_set_lock),
11848 (gst_task_get_state), (gst_task_start), (gst_task_pause),
11851 Protect the stream lock with the object lock.
11852 Disallow setting the stream lock when running.
11853 Add cleanup_all to wait for the threadpool to finish.
11854 Remove code to autoallocate a mutex if none was provided.
11855 Add _join() to wait for a task to stop.
11856 Protect the thread pool with a global lock.
11858 2005-08-24 Wim Taymans <wim@fluendo.com>
11860 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
11861 (gst_base_sink_get_times), (gst_base_sink_do_sync),
11862 (gst_base_sink_handle_buffer), (gst_base_sink_change_state):
11863 * gst/base/gstbasesink.h:
11864 Handle newsegment events correctly.
11865 Drop buffers out of the segment range.
11867 2005-08-22 Andy Wingo <wingo@pobox.com>
11869 * gst/gstutils.h (GST_BOILERPLATE_WITH_INTERFACE): New ghetto
11870 macro, implements an interface and gstimplementsinterface for a
11873 2005-08-24 Thomas Vander Stichele <thomas at apestaart dot org>
11875 * check/Makefile.am:
11876 * check/generic/states.c: (GST_START_TEST), (states_suite), (main):
11877 add a test that does a bunch of state changes on elements
11878 needs some fixing for valgrind
11879 * check/states/sinks.c: (gst_object_suite):
11882 add prototype for gst_caps_is_equal_fixed
11884 * gst/gstregistrypool.c:
11887 2005-08-24 Andy Wingo <wingo@pobox.com>
11889 * gst/gstquery.c (gst_query_new_convert): Spew if we try to
11890 convert a negative value. Doesn't make much sense. Mostly this is
11891 here to force callers to ensure -1 maps to -1.
11893 2005-08-24 Jan Schmidt <thaytan@mad.scientist.com>
11895 * docs/pwg/advanced-types.xml:
11896 Well done to Michael for catching my deliberate introduction
11897 of this spelling mistake.
11898 * gst/gstbin.c: (gst_bin_remove_func), (bin_bus_handler):
11899 * gst/gstelement.h:
11900 Add GST_ELEMENT_UNPARENTING to prevent races so that we can
11901 unlink pads before removing the element from the bin.
11903 2005-08-24 Andy Wingo <wingo@pobox.com>
11905 * gst/gst.c (parse_debug_list): Accept e.g. GST_DEBUG=4 to mean
11906 the same thing as GST_DEBUG=*:4.
11907 (parse_debug_level, parse_debug_category): New helper parsers.
11909 2005-08-24 Thomas Vander Stichele <thomas at apestaart dot org>
11911 * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
11912 (gst_base_transform_transform_size), (gst_base_transform_getcaps),
11913 (gst_base_transform_setcaps), (gst_base_transform_get_unit_size),
11914 (gst_base_transform_buffer_alloc),
11915 (gst_base_transform_handle_buffer):
11916 use gboolean return values and pointers to size so we can use the
11917 full GST_BUFFER_SIZE range (guint) for buffer sizes
11918 use GstPadDirection for transform_caps
11919 * gst/base/gstbasetransform.h:
11920 rename get_size to get_unit_size since that's what it is
11921 * gst/elements/gstcapsfilter.c: (gst_capsfilter_transform_caps):
11922 use GstPadDirection for transform_caps
11923 * gst/gstbuffer.c: (gst_buffer_new_and_alloc):
11925 cleanup and debugging
11927 2005-08-24 Stefan Kost <ensonic@users.sf.net>
11929 * gst/gstelement.c: (gst_element_class_init),
11930 (gst_element_set_state), (activate_pads),
11931 (gst_element_save_thyself):
11932 * tools/gst-compprep.c: (main):
11933 * tools/gst-inspect.c: (print_element_properties_info):
11934 * tools/gst-xmlinspect.c: (print_element_properties):
11935 Fixed long standing mem-leak
11937 2005-08-24 Jan Schmidt <thaytan@mad.scientist.com>
11939 * check/gst/gstbin.c: (GST_START_TEST):
11940 * gst/gstbin.c: (bin_bus_handler):
11941 * gst/gstmessage.c: (gst_message_finalize), (_gst_message_copy),
11942 (gst_message_new), (gst_message_new_eos), (gst_message_new_error),
11943 (gst_message_new_warning), (gst_message_new_tag),
11944 (gst_message_new_state_changed), (gst_message_new_segment_start),
11945 (gst_message_new_segment_done), (gst_message_new_custom):
11946 * gst/gstmessage.h:
11947 * tools/gst-launch.c: (event_loop):
11948 * tools/gst-md5sum.c: (event_loop):
11949 Change GST_MESSAGE_SRC to be a GObject rather than a GstObject, so
11950 that applications can sensibly post custom messages with references
11951 to their own objects.
11953 2005-08-24 Andy Wingo <wingo@pobox.com>
11955 * gst/gstpad.c (gst_pad_fixate_caps): Check if the caps is fixed
11958 2005-08-24 Wim Taymans <wim@fluendo.com>
11960 * gst/base/gstbasetransform.c: (gst_base_transform_init),
11961 (gst_base_transform_transform_caps),
11962 (gst_base_transform_transform_size),
11963 (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
11964 (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
11965 (gst_base_transform_handle_buffer):
11966 * gst/base/gstbasetransform.h:
11967 Many fixes and new features added by Thomas. Can now also do
11968 transforms with variable sizes and a custom fixate_caps function.
11970 2005-08-24 Wim Taymans <wim@fluendo.com>
11972 * gst/gstbuffer.c: (gst_buffer_new_and_alloc):
11976 Cast to ClockTime before formatting to time.
11981 2005-08-24 Stefan Kost <ensonic@users.sf.net>
11983 * check/gst-libs/controller.c: (GST_START_TEST),
11984 (gst_controller_suite):
11985 * docs/gst/tmpl/gstcaps.sgml:
11986 * docs/gst/tmpl/gstghostpad.sgml:
11987 * docs/gst/tmpl/gstquery.sgml:
11988 * docs/gst/tmpl/gstutils.sgml:
11989 * libs/gst/controller/gst-helper.c: (gst_object_set_controller),
11990 (gst_object_sink_values), (gst_object_get_value_arrays),
11991 (gst_object_get_value_array):
11992 gracefully handle helper method calls to objects that are not beeing
11993 controlled, added test case for that
11995 2005-08-23 Wim Taymans <wim@fluendo.com>
11997 * gst/gstevent.c: (_gst_event_copy), (gst_event_new_custom),
11998 (gst_event_new_newsegment), (gst_event_parse_newsegment),
11999 (gst_event_new_tag), (gst_event_parse_tag), (gst_event_new_qos),
12000 (gst_event_parse_qos), (gst_event_new_seek),
12001 (gst_event_parse_seek):
12003 Some more debugging output and doc cleanups.
12005 * gst/gstqueue.c: (gst_queue_handle_sink_event):
12006 Fix possible deadlock.
12008 2005-08-23 Stefan Kost <ensonic@users.sf.net>
12010 * docs/gst/gstreamer-docs.sgml:
12011 * docs/gst/gstreamer-sections.txt:
12012 * docs/gst/gstreamer.types:
12013 * docs/gst/tmpl/.cvsignore:
12016 * gst/gstelement.c:
12018 added 100 symbols from gstreamer-unused.txt to the right sections
12019 fixed more broken comments
12020 added GstBus to docs
12022 2005-08-23 Stefan Kost <ensonic@users.sf.net>
12024 * docs/gst/gstreamer-sections.txt:
12025 * docs/gst/tmpl/.cvsignore:
12026 * docs/gst/tmpl/gstbin.sgml:
12027 * docs/gst/tmpl/gstbuffer.sgml:
12028 * gst/base/gstbasesrc.c:
12029 * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init):
12032 * tools/gst-launch.1.in:
12033 inlined more doc comments, added missing comments and fixed comments
12036 2005-08-23 Thomas Vander Stichele <thomas at apestaart dot org>
12038 * gst/gstbuffer.c: (gst_buffer_new_and_alloc):
12042 * gst/gstpad.c: (gst_pad_activate_push), (gst_pad_alloc_buffer):
12044 * gst/gststructure.c: (gst_caps_structure_fixate_field_boolean):
12045 * gst/gststructure.h:
12046 add a fixate function for booleans; add a FIXME that these func
12047 names should probably be gst_structure_fixate_*
12049 2005-08-23 Stefan Kost <ensonic@users.sf.net>
12051 * docs/gst/gstreamer-docs.sgml:
12052 * docs/gst/gstreamer-sections.txt:
12054 * gst/gstbin.c: (gst_bin_get_type),
12055 (gst_bin_child_proxy_get_child_by_index),
12056 (gst_bin_child_proxy_get_children_count),
12057 (gst_bin_child_proxy_init):
12058 * gst/gstchildproxy.c: (gst_child_proxy_get_child_by_name),
12059 (gst_child_proxy_get_child_by_index),
12060 (gst_child_proxy_get_children_count), (gst_child_proxy_lookup),
12061 (gst_child_proxy_get_property), (gst_child_proxy_get_valist),
12062 (gst_child_proxy_get), (gst_child_proxy_set_property),
12063 (gst_child_proxy_set_valist), (gst_child_proxy_set),
12064 (gst_child_proxy_child_added), (gst_child_proxy_child_removed),
12065 (gst_child_proxy_base_init), (gst_child_proxy_get_type):
12066 * gst/gstchildproxy.h:
12067 * gst/parse/grammar.y:
12068 * tools/gst-inspect.c: (print_interfaces),
12069 (print_element_properties_info), (print_element_info):
12070 ported gstchildproxy over from 0.8
12071 ported gst-inspect fixes and enhancements over from 0.8
12073 2005-08-22 Wim Taymans <wim@fluendo.com>
12075 * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
12076 (gst_base_transform_handle_buffer):
12077 Also call the transform function if we have ANY caps.
12079 * gst/gstpipeline.c: (gst_pipeline_set_new_stream_time):
12082 2005-08-22 Jan Schmidt <thaytan@mad.scientist.com>
12084 * gst/base/gstbasesrc.c: (gst_base_src_event_handler)
12085 Don't pretend to handle seek events if the source is not seekable
12087 2005-08-22 Jan Schmidt <thaytan@mad.scientist.com>
12089 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
12090 Remove extra parameter to debug output
12092 * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
12093 (gst_base_src_do_seek), (gst_base_src_activate_push):
12094 Fix seek event handling.
12096 * gst/gstpipeline.c: (gst_pipeline_change_state):
12097 * gst/gstqueue.c: (gst_queue_handle_sink_event),
12098 (gst_queue_src_activate_push):
12099 Don't start the src pad task on FLUSH_STOP if the pad
12103 2005-08-22 Wim Taymans <wim@fluendo.com>
12105 * check/gst/gstcaps.c: (GST_START_TEST), (gst_caps_suite):
12106 Added check for gst_static_caps_get() refcounting.
12108 2005-08-22 Wim Taymans <wim@fluendo.com>
12110 * gst/gstcaps.c: (gst_static_caps_get), (gst_caps_to_string):
12111 Make _static_caps_get() refcounting sane.
12113 * gst/gstelement.c: (gst_element_set_state):
12114 Add g_return_val_if_fail() to protect against segfaults.
12116 2005-08-22 Stefan Kost <ensonic@users.sf.net>
12118 * docs/gst/tmpl/gstevent.sgml:
12121 inlined remaining docs, added missing doc comments
12123 2005-08-22 Thomas Vander Stichele <thomas at apestaart dot org>
12125 * check/gst/gstbin.c: (GST_START_TEST):
12126 since we don't know when preroll is done, use refcount range
12128 * gst/check/gstcheck.h:
12129 add macro for checking refcount range
12131 2005-08-21 Thomas Vander Stichele <thomas at apestaart dot org>
12133 * check/Makefile.am:
12134 clean up environment for when registry gets built versus
12135 when actual tests are run; valgrind seems to not report
12136 leaks if GST_PLUGIN_PATH is set to some specific values
12137 * check/gst/gstbin.c: (GST_START_TEST):
12138 add more refcounting checks; maybe this exposes a
12140 * common/check.mak:
12141 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
12142 * gst/check/gstcheck.h:
12143 * gst/gstbin.c: (bin_element_is_semi_sink), (gst_bin_get_state),
12144 (gst_bin_change_state):
12145 * gst/gstpad.c: (gst_pad_activate_push), (gst_pad_chain):
12146 add/fix debugging/whitespace
12148 2005-08-21 Jan Schmidt <thaytan@mad.scientist.com>
12150 * check/gst/gstevent.c: (event_probe), (test_event),
12152 Er, don't call gst_bin_watch_for_state_change you idiot.
12154 2005-08-21 Jan Schmidt <thaytan@mad.scientist.com>
12156 * check/Makefile.am:
12157 Use CHECK_CFLAGS and CHECK_LIBS
12158 * check/gst/gstevent.c: (event_probe), (test_event),
12161 * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
12162 (gst_base_src_start), (gst_base_src_stop),
12163 (gst_base_src_activate_push), (gst_base_src_activate_pull),
12164 (gst_base_src_change_state):
12165 Sprinkle gst_base_src_stop liberally around error paths to fix
12166 problems reusing a source after failed state changes.
12167 * gst/base/gsttypefindhelper.c: (helper_find_peek),
12168 (helper_find_suggest), (gst_type_find_helper):
12169 Extra debug output. Don't segfault on GST_PAD_GETRANGEFUNC = NULL
12171 * docs/gst/tmpl/gstevent.sgml:
12172 Migrate part of the docs from the SGML file. Wait for ensonic to
12173 tell me how I did it wrong ;)
12174 * tools/gst-typefind.c: (main):
12175 Extra robustness to state changes between files.
12177 2005-08-21 Thomas Vander Stichele <thomas at apestaart dot org>
12179 * check/Makefile.am:
12180 don't valgrind the controller test - it's leaking - Stefan, HELP
12181 * gst/check/gstcheck.c: (gst_check_message_error),
12182 (gst_check_chain_func), (gst_check_setup_element),
12183 (gst_check_teardown_element), (gst_check_setup_src_pad),
12184 (gst_check_teardown_src_pad), (gst_check_setup_sink_pad),
12185 (gst_check_teardown_sink_pad):
12186 * gst/check/gstcheck.h:
12187 add a bunch of methods to set up elements, and src and sink pads
12188 * check/elements/fakesrc.c: (setup_fakesrc), (cleanup_fakesrc):
12189 * check/elements/identity.c: (setup_identity), (cleanup_identity),
12192 * gst/gstmessage.c:
12194 whitespace/doc fixes
12196 2005-08-20 Thomas Vander Stichele <thomas at apestaart dot org>
12198 * gst/gstelement.h:
12199 make GST_ELEMENT_ERROR not do GST_ERROR_OBJECT - these errors should
12200 be handled by the application and not always printed as well
12202 2005-08-20 Thomas Vander Stichele <thomas at apestaart dot org>
12204 * check/Makefile.am:
12206 * gst/check/gstcheck.c: (gst_check_message_error):
12207 * gst/check/gstcheck.h:
12208 add a fail_unless_equals_int
12209 add fail_unless for error messages
12211 2005-08-20 Thomas Vander Stichele <thomas at apestaart dot org>
12213 * check/Makefile.am:
12215 * common/Makefile.am:
12216 * common/check.mak:
12218 factor out some of the common stuff so we can use it
12220 2005-08-20 Thomas Vander Stichele <thomas at apestaart dot org>
12222 * check/Makefile.am:
12223 * check/gst/gstiterator.c: (GST_START_TEST):
12224 * check/gst/gstsystemclock.c: (GST_START_TEST),
12225 (gst_systemclock_suite):
12226 * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
12228 valgrind more tests
12230 2005-08-20 Thomas Vander Stichele <thomas at apestaart dot org>
12232 * check/elements/.cvsignore:
12233 * check/elements/gstfakesrc.c:
12234 rename to name of element
12235 * check/elements/identity.c: (chain_func), (event_func),
12236 (setup_identity), (cleanup_identity), (GST_START_TEST),
12237 (identity_suite), (main):
12238 add a test for identity
12239 * check/Makefile.am:
12240 * pkgconfig/Makefile.am:
12241 * pkgconfig/gstreamer-check.pc.in:
12242 * pkgconfig/gstreamer-check-uninstalled.pc.in:
12246 move the check stuff to a library that gets installed
12247 * check/gst-libs/controller.c: (GST_START_TEST):
12248 * check/gst-libs/gdp.c:
12249 * check/gst/gst.c: (GST_START_TEST):
12250 * check/gst/gstbin.c:
12251 * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
12252 * check/gst/gstbus.c:
12253 * check/gst/gstcaps.c: (GST_START_TEST):
12254 * check/gst/gstelement.c:
12255 * check/gst/gstghostpad.c:
12256 * check/gst/gstiterator.c:
12257 * check/gst/gstmessage.c:
12258 * check/gst/gstminiobject.c: (thread_ref), (GST_START_TEST):
12259 * check/gst/gstobject.c:
12260 * check/gst/gstpad.c: (GST_START_TEST):
12261 * check/gst/gststructure.c: (GST_START_TEST):
12262 * check/gst/gstsystemclock.c: (GST_START_TEST),
12263 (gst_systemclock_suite):
12264 * check/gst/gsttag.c: (gst_tag_suite):
12265 * check/gst/gstvalue.c:
12266 * check/pipelines/cleanup.c:
12267 * check/pipelines/simple_launch_lines.c:
12268 * check/states/sinks.c:
12269 change include statement
12271 * docs/gst/gstreamer-sections.txt:
12272 * docs/gst/tmpl/gstpad.sgml:
12273 document more pad stuff
12274 * gst/gstminiobject.c: (gst_mini_object_ref),
12275 (gst_mini_object_unref):
12278 2005-08-19 Stefan Kost <ensonic@users.sf.net>
12280 * docs/gst/tmpl/gst.sgml:
12282 eliminate another tmpl file, fix spelling in the long-description
12284 2005-08-18 Jan Schmidt <thaytan@mad.scientist.com>
12286 * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
12287 (test_event), (timediff), (gstevents_suite):
12288 Should fix build on 64-bit arch's
12290 2005-08-18 Andy Wingo <wingo@pobox.com>
12292 Make sure that when a pipeline goes to PLAYING, that data has
12293 actually hit the sink.
12295 * check/states/sinks.c (test_sink): A sink that doesn't get any
12296 data shouldn't return SUCCESS for going to either PLAYING or
12297 PAUSED. Test also the return values on the way back down.
12299 * gst/gstelement.c (gst_element_set_state): When changing the
12300 state of an element currently changing state asynchronously, go to
12301 lost-state after commiting the pending state. Makes future calls
12302 to get_state continue to return ASYNC.
12304 * gst/base/gstbasesink.c (gst_base_sink_change_state): Return
12305 ASYNC when going to PLAYING if we still don't have preroll, as can
12306 happen with live sources.
12308 2005-08-18 Jan Schmidt <thaytan@mad.scientist.com>
12310 * docs/pwg/advanced-types.xml:
12311 Hack long paragraph into 2 chunks as a workaround for buggy
12312 jadetex version in sid and breezy that loops infinitely and
12315 2005-08-18 Jan Schmidt <thaytan@mad.scientist.com>
12317 * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
12318 (test_event), (timediff), (gstevents_suite):
12319 Provide more error margin in clock measurements to allow for
12320 g_get_current_time inaccuracies.
12322 2005-08-18 Jan Schmidt <thaytan@mad.scientist.com>
12324 * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
12325 (test_event), (timediff), (gstevents_suite):
12326 Fix error message output so I might be able to tell why the
12327 test works here but fails on the build farm.
12329 2005-08-18 Jan Schmidt <thaytan@mad.scientist.com>
12331 * check/Makefile.am:
12332 * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
12333 (test_event), (timediff), (gstevents_suite), (main):
12336 * docs/design/part-seeking.txt:
12337 Spelling correction
12339 * docs/gst/tmpl/gstevent.sgml:
12340 * docs/gst/tmpl/gstfakesrc.sgml:
12343 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
12344 Treat a buffer-without-newsegment the same as a receiving
12345 a newsegment not in time format, and disable syncing to the clock
12348 * gst/gstbus.c: (gst_bus_set_sync_handler):
12349 Assert if anyone tries to replace the existing sync_handler for bus,
12350 as only the owner should be setting it.
12353 Have a fixed set of custom event enums with events identified by
12354 their structure name (as in 0.8), rather than a free-for-all
12355 allowing collisions between enum values from different plugins.
12357 * gst/gstpad.c: (gst_pad_class_init):
12360 * gst/gstqueue.c: (gst_queue_handle_sink_event):
12361 Handle out-of-band downstream events from the sending thread.
12363 2005-08-17 Andy Wingo <wingo@pobox.com>
12365 * gst/gstpipeline.c (gst_pipeline_change_state): Interpret
12366 play-timeout==0 to mean no timeout at all. In that case, don't
12367 bother with a get_state or a warning, just return directly, even
12370 * gst/base/gstbasetransform.c: Debug changes.
12373 * gst/gstutils.c (gst_bin_watch_for_state_change): Add function to
12374 ensure bins post state change messages. A bit of a hack but I can't
12375 think of a way to avoid it.
12377 * check/gst/gstbin.c (test_watch_for_state_change): Added test.
12379 2005-08-16 Andy Wingo <wingo@pobox.com>
12381 * gst/base/gstadapter.h:
12382 * gst/base/gstadapter.c (gst_adapter_take): New function, like
12383 peek() but you own the data. Not terribly efficient atm.
12385 2005-08-16 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
12387 * gst/gstutils.c: (gst_element_found_tags_for_pad), (push_and_ref),
12388 (gst_element_found_tags):
12390 Add two utility functions for tag handling.
12392 2005-08-16 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
12394 * docs/manual/advanced-dataaccess.xml:
12395 * docs/manual/basics-helloworld.xml:
12396 Fix docs to use _bin_add() before _link(), which fixes the examples
12397 with recent core versions (reported by Madhan Raj M
12398 <raj_madan@rediffmail.com>, #313199).
12400 2005-08-16 Wim Taymans <wim@fluendo.com>
12402 * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
12403 Added subtract checks.
12405 * docs/design/part-events.txt:
12406 Some more docs about newsegment
12408 * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
12411 * gst/gstcaps.c: (gst_caps_to_string):
12412 Add comments, cleanups.
12414 * gst/gstelement.c: (gst_element_save_thyself):
12417 * gst/gstvalue.c: (gst_value_collect_int_range),
12418 (gst_string_unwrap), (gst_value_union_int_int_range),
12419 (gst_value_union_int_range_int_range),
12420 (gst_value_intersect_int_int_range),
12421 (gst_value_intersect_int_range_int_range),
12422 (gst_value_intersect_double_double_range),
12423 (gst_value_intersect_double_range_double_range),
12424 (gst_value_intersect_list), (gst_value_subtract_int_int_range),
12425 (gst_value_subtract_int_range_int),
12426 (gst_value_subtract_double_range_double),
12427 (gst_value_subtract_double_range_double_range),
12428 (gst_value_subtract_from_list), (gst_value_subtract_list),
12429 (gst_value_can_compare), (gst_value_compare_fraction):
12430 Cleanups, add comments, remove unneeded asserts.
12432 2005-08-15 Thomas Vander Stichele <thomas at apestaart dot org>
12434 * tools/gst-launch.c: (event_loop):
12435 don't convert NULL structures to strings
12437 2005-08-15 Stefan Kost <ensonic@users.sf.net>
12439 * docs/gst/gstreamer-sections.txt:
12440 made some defines private
12441 * docs/gst/tmpl/gstconfig.sgml:
12442 * docs/gst/tmpl/gstqueue.sgml:
12443 * docs/gst/tmpl/gsttaglist.sgml:
12444 * docs/gst/tmpl/gsttypes.sgml:
12445 * docs/gst/tmpl/gstutils.sgml:
12446 * docs/pwg/appendix-porting.xml:
12447 * gst/base/gstbasesink.h:
12448 * gst/base/gstbasesrc.c:
12449 * gst/base/gstbasesrc.h:
12450 * gst/elements/gstfakesink.c: (gst_fake_sink_class_init):
12451 * gst/elements/gstfakesrc.c: (gst_fake_src_class_init):
12452 * gst/gstelement.c: (gst_element_class_init):
12453 * gst/gstpad.c: (gst_pad_class_init):
12454 * gst/gstqueue.c: (gst_queue_class_init):
12455 * gst/gstxml.c: (gst_xml_class_init):
12456 documented all undocumented signal inline
12457 * libs/gst/controller/gst-controller.h:
12460 2005-08-15 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
12462 * docs/pwg/appendix-porting.xml:
12463 Document _set_link_function -> _set_setcaps_function.
12465 2005-08-15 Thomas Vander Stichele <thomas at apestaart dot org>
12467 * check/Makefile.am:
12468 add a .check target for running the check
12469 * check/gst-libs/controller.c: (GST_START_TEST):
12471 * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
12472 complete checks for gstbuffer; would be nice if I could get the
12473 gcov stuff to work so I can see if I actually completed gstbuffer.c
12474 * check/gstcheck.h:
12475 add ASSERT_BUFFER_REFCOUNT
12477 2005-08-13 Tim-Philipp Müller <tim at centricular dot net>
12479 * docs/gst/gstreamer-sections.txt:
12480 * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
12482 Add GST_TAG_LANGUAGE_CODE as we have in 0.8, and don't
12483 spew out a warning if a tag that is already registered
12484 is re-registered, unless it is re-registered with a
12485 different type (#308438).
12487 2005-08-12 Tim-Philipp Müller <tim at centricular dot net>
12489 * docs/pwg/appendix-porting.xml:
12490 * docs/pwg/building-state.xml:
12491 Add some paragraphs about state changes in 0.9 to the PWG
12492 and the porting guide, in particular about the new meaning
12493 of GST_STATE_PAUSED and how to write state change functions
12494 with concurrent access by multiple threads in mind.
12496 2005-08-11 Stefan Kost <ensonic@users.sf.net>
12498 * docs/gst/gstreamer-docs.sgml:
12499 * docs/libs/gstreamer-libs-docs.sgml:
12500 added deprecation and since indexes
12501 * libs/gst/controller/gst-controller.c:
12502 * libs/gst/controller/gst-helper.c:
12506 2005-08-11 Wim Taymans <wim@fluendo.com>
12508 * gst/gstghostpad.c: (gst_proxy_pad_set_target_unlocked),
12509 (gst_proxy_pad_set_target), (gst_proxy_pad_get_target),
12510 (gst_proxy_pad_dispose), (gst_ghost_pad_do_activate_push),
12511 (gst_ghost_pad_do_link), (gst_ghost_pad_set_internal),
12512 (gst_ghost_pad_new_notarget), (gst_ghost_pad_get_target),
12513 (gst_ghost_pad_set_target):
12514 Actually implement (re)setting the target on a ghostpad
12515 as described in the docs.
12517 2005-08-10 Tim-Philipp Müller <tim at centricular dot net>
12519 * gst/gst.c: (gst_init_check_with_popt_table), (init_pre):
12520 Check whether GST_DEBUG_NO_COLOR environment variable is
12521 set and disable coloured debug output if that is the case.
12523 2005-08-10 Tim-Philipp Müller <tim at centricular dot net>
12525 * gst/base/gsttypefindhelper.c: (helper_find_peek),
12526 (gst_type_find_helper):
12527 The memory returned by gst_type_find_peek() needs to
12528 stay valid until the end of a typefind function, and
12529 typefind functions may keep results from different
12530 offsets around, so we can't just unref the buffer from
12531 the previous _peek(), but have to save all buffers
12532 returned by _peek() until typefinding is done and only
12535 2005-08-09 Tim-Philipp Müller <tim at centricular dot net>
12537 * docs/gst/gstreamer-sections.txt:
12539 New macros: GST_ROUND_UP_2() through GST_ROUND_UP_64().
12541 2005-08-08 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
12543 * gst/base/gstbasetransform.c: (gst_base_transform_buffer_alloc):
12544 Fix a pretty good memleak.
12546 2005-08-08 Tim-Philipp Müller <tim at centricular dot net>
12548 * gst/gstiterator.h:
12549 Fix wrong include and 'make distcheck'.
12551 2005-08-08 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
12553 * gst/gstbin.c: (bin_bus_handler):
12554 Use gst_element_post_message() instead.
12556 2005-08-08 Tim-Philipp Müller <tim at centricular dot net>
12558 * gst/base/gstadapter.h:
12559 * gst/base/gstbasesink.h:
12560 * gst/base/gstbasesrc.h:
12561 * gst/base/gstbasetransform.h:
12562 * gst/base/gstcollectpads.h:
12563 * gst/base/gstpushsrc.h:
12564 * gst/gstiterator.h:
12565 Add padding to our base elements' class and instance structs and
12566 to GstIterator (you will need to rebuild all plugins and apps!)
12568 2005-08-08 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
12570 * gst/gstbin.c: (bin_bus_handler):
12571 Make default message forwarding from child->bus to bin->bus
12572 threadsafe and make it not emit warnings if the parent has no bus.
12574 2005-08-08 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
12576 * gst/gstelement.c: (activate_pads):
12577 On paused->ready, set pad->caps to NULL, as is the documented
12578 behaviour in this state change. Fixes playback of series of
12579 media files when visualization is enabled in Totem.
12581 2005-08-07 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
12583 * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
12584 Allow NULL as filter-caps (which means "any").
12586 2005-08-05 Stefan Kost <ensonic@users.sf.net>
12588 * docs/libs/gstreamer-libs-sections.txt:
12589 * libs/gst/controller/gst-controller.c:
12590 * libs/gst/controller/gst-controller.h:
12591 * libs/gst/controller/gst-helper.c:
12592 adding more entries to the docs and fix small doc-bugs
12594 2005-08-05 Stefan Kost <ensonic@users.sf.net>
12596 * docs/gst/gstreamer-docs.sgml:
12597 * docs/gst/gstreamer-sections.txt:
12598 * docs/gst/gstreamer.types:
12599 * docs/gst/tmpl/gstbasesink.sgml:
12600 * docs/gst/tmpl/gstbasesrc.sgml:
12601 * docs/gst/tmpl/gstbasetransform.sgml:
12602 * docs/gst/tmpl/gstfakesrc.sgml:
12603 * gst/base/gstcollectpads.c:
12604 * gst/base/gstcollectpads.h:
12605 * libs/gst/controller/gst-controller.c:
12606 * libs/gst/controller/gst-controller.h:
12607 * libs/gst/controller/gst-helper.c:
12608 * libs/gst/controller/gst-interpolation.c:
12609 * libs/gst/controller/lib.c:
12610 added long/short desc for controller docs
12611 added collectpads base class docs
12612 added correct includes to base-class docs
12614 2005-08-05 Stefan Kost <ensonic@users.sf.net>
12616 * check/gst-libs/controller.c: (gst_test_mono_source_get_property),
12617 (gst_test_mono_source_set_property),
12618 (gst_test_mono_source_class_init), (GST_START_TEST),
12619 (gst_controller_suite):
12620 * docs/gst/gstreamer-docs.sgml:
12621 * docs/gst/gstreamer-sections.txt:
12622 * docs/gst/gstreamer.types:
12623 * docs/libs/gstreamer-libs-docs.sgml:
12624 * docs/libs/gstreamer-libs-sections.txt:
12625 * gst/base/gstadapter.c:
12626 * libs/gst/controller/gst-controller.c:
12627 (gst_controlled_property_new), (gst_controlled_property_free),
12628 (gst_controller_new_valist),
12629 (gst_controller_remove_properties_valist),
12630 (gst_controller_sink_values), (_gst_controller_finalize):
12631 * libs/gst/controller/gst-controller.h:
12632 * libs/gst/controller/gst-helper.c:
12633 (gst_object_control_properties), (gst_object_uncontrol_properties),
12634 (gst_object_get_controller), (gst_object_set_controller),
12635 (gst_object_sink_values), (gst_object_get_value_arrays),
12636 (gst_object_get_value_array):
12637 more tests (and fixes) for the controller
12638 more docs for the controller
12639 integrated companies docs for the adapter
12641 2005-08-05 Thomas Vander Stichele <thomas at apestaart dot org>
12643 * check/elements/gstfakesrc.c: (setup_fakesrc), (cleanup_fakesrc),
12644 (GST_START_TEST), (fakesrc_suite):
12645 add tests for sizetype
12647 2005-08-04 Andy Wingo <wingo@pobox.com>
12649 * gst/elements/gstcapsfilter.c: Reimplement using basetransform,
12650 fixes buffer_alloc proxying among other things.
12652 * gst/base/gstbasetransform.c:
12653 * gst/base/gstbasetransform.h:
12654 Revert patch to gstbasetransform from 7-28 removing
12657 * gst/base/gstbasetransform.h (GstBaseTransformClass.get_size):
12658 * gst/base/gstbasetransform.c (gst_base_transform_get_size):
12659 Semantics changed, should return not the size of the output buffer
12660 but the byte size of a buffer with a given caps.
12662 * gst/base/gstbasetransform.c (gst_base_transform_getcaps): Better
12664 (gst_base_transform_configure_caps): Don't set out_size here: (in,
12665 out) are not the pad caps until setcaps finishes.
12666 (gst_base_transform_buffer_alloc): Proxy the buffer_alloc for the
12667 not-in-place case as well. Deal with changing from in-place to
12668 not-in-place within calling pad_alloc_buffer. Still a bit
12669 concerned about the overhead here...
12671 2005-08-03 Andy Wingo <wingo@pobox.com>
12673 * gst/base/gstbasetransform.c (gst_base_transform_setcaps): Not
12674 fixating is an error.
12676 2005-08-04 Edward Hervey <edward@fluendo.com>
12678 * gst/base/gstadapter.h:
12679 Added gst_adapter_get_type() to the header
12681 2005-08-03 Stefan Kost <ensonic@users.sf.net>
12683 * check/Makefile.am:
12684 * check/gst-libs/controller.c:
12685 * libs/gst/controller/gst-controller.c:
12686 (gst_controller_new_valist):
12687 added check test suite for the controller
12688 * gst/base/gstpushsrc.c:
12691 2005-08-03 Stefan Kost <ensonic@users.sf.net>
12693 * docs/gst/Makefile.am:
12694 * docs/gst/gstreamer-docs.sgml:
12695 * docs/gst/gstreamer-sections.txt:
12696 * docs/gst/gstreamer.types:
12697 * docs/gst/tmpl/gstfakesrc.sgml:
12699 * gst/base/gstbasesink.c:
12700 * gst/base/gstbasesink.h:
12701 * gst/base/gstbasesrc.c:
12702 * gst/base/gstbasesrc.h:
12703 * gst/base/gstbasetransform.c:
12704 * gst/base/gstpushsrc.c:
12705 * gst/base/gstpushsrc.h:
12706 add short/long description docs to base classes
12707 add pushsrc to the docs
12708 remove consolidated doc fragments
12710 2005-08-03 Stefan Kost <ensonic@users.sf.net>
12713 * docs/libs/Makefile.am:
12714 * docs/libs/gstreamer-libs-docs.sgml:
12715 * docs/libs/gstreamer-libs-sections.txt:
12716 * docs/libs/gstreamer-libs.types:
12717 * examples/Makefile.am:
12718 * examples/controller/.cvsignore:
12719 * examples/controller/Makefile.am:
12720 * examples/controller/audio-example.c: (main):
12721 * libs/gst/Makefile.am:
12722 * libs/gst/controller/.cvsignore:
12723 * libs/gst/controller/Makefile.am:
12724 * libs/gst/controller/gst-controller.c:
12725 (on_object_controlled_property_changed), (gst_timed_value_compare),
12726 (gst_timed_value_find),
12727 (gst_controlled_property_set_interpolation_mode),
12728 (gst_controlled_property_new), (gst_controlled_property_free),
12729 (gst_controller_find_controlled_property),
12730 (gst_controller_new_valist), (gst_controller_new),
12731 (gst_controller_remove_properties_valist),
12732 (gst_controller_remove_properties), (gst_controller_set),
12733 (gst_controller_set_from_list), (gst_controller_unset),
12734 (gst_controller_get), (gst_controller_get_all),
12735 (gst_controller_sink_values), (gst_controller_get_value_arrays),
12736 (gst_controller_get_value_array),
12737 (gst_controller_set_interpolation_mode),
12738 (_gst_controller_finalize), (_gst_controller_init),
12739 (_gst_controller_class_init), (gst_controller_get_type):
12740 * libs/gst/controller/gst-controller.h:
12741 * libs/gst/controller/gst-helper.c: (g_object_control_properties),
12742 (g_object_uncontrol_properties), (g_object_get_controller),
12743 (g_object_set_controller), (g_object_sink_values),
12744 (g_object_get_value_arrays), (g_object_get_value_array):
12745 * libs/gst/controller/gst-interpolation.c:
12746 (gst_controlled_property_find_timed_value_node),
12747 (interpolate_none_get), (interpolate_trigger_get),
12748 (interpolate_trigger_get_value_array):
12749 * libs/gst/controller/lib.c: (gst_controller_init):
12750 * pkgconfig/Makefile.am:
12751 * pkgconfig/gstreamer-control-uninstalled.pc.in:
12752 * pkgconfig/gstreamer-control.pc.in:
12753 * testsuite/Makefile.am:
12754 * testsuite/controller/.cvsignore:
12755 * testsuite/controller/Makefile.am:
12756 * testsuite/controller/interpolator.c: (main):
12757 added controller code
12758 removed dparam pc files
12760 2005-08-01 Jan Schmidt <thaytan@mad.scientist.com>
12761 * gst/base/gstcollectpads.c: (gst_collectpads_finalize),
12762 (gst_collectpads_stop):
12763 Broadcast the condition when shutting down, to make sure we wake all
12764 threads up. Shut down pads on finalize, for safety.
12766 2005-08-01 Jan Schmidt <thaytan@mad.scientist.com>
12767 * gst/base/gstbasetransform.c: (gst_base_transform_init),
12768 (gst_base_transform_handle_buffer),
12769 (gst_base_transform_change_state):
12770 Handle PAUSED->READY->PAUSED transition after negotiation
12772 * gst/gstmessage.c: (gst_message_init):
12773 Extra piece of debug for new messages.
12775 2005-08-01 Stefan Kost <ensonic@users.sf.net>
12778 * docs/gst/tmpl/gstbasesrc.sgml:
12779 * docs/gst/tmpl/gstelement.sgml:
12780 * docs/gst/tmpl/gstevent.sgml:
12781 * docs/gst/tmpl/gstfakesrc.sgml:
12782 * docs/gst/tmpl/gstformat.sgml:
12783 * docs/gst/tmpl/gstghostpad.sgml:
12784 * docs/gst/tmpl/gstpad.sgml:
12785 * docs/gst/tmpl/gstquery.sgml:
12786 * docs/gst/tmpl/gststructure.sgml:
12787 * docs/gst/tmpl/gsttaglist.sgml:
12788 * docs/gst/tmpl/gstvalue.sgml:
12789 * docs/libs/gstreamer-libs-docs.sgml:
12790 * docs/libs/gstreamer-libs-sections.txt:
12791 * docs/libs/gstreamer-libs.types:
12792 * libs/gst/Makefile.am:
12793 * libs/gst/control/.cvsignore:
12794 * libs/gst/control/Makefile.am:
12795 * libs/gst/control/control.c:
12796 * libs/gst/control/control.h:
12797 * libs/gst/control/dparam.c:
12798 * libs/gst/control/dparam.h:
12799 * libs/gst/control/dparam_smooth.c:
12800 * libs/gst/control/dparam_smooth.h:
12801 * libs/gst/control/dparamcommon.h:
12802 * libs/gst/control/dparammanager.c:
12803 * libs/gst/control/dparammanager.h:
12804 * libs/gst/control/dplinearinterp.c:
12805 * libs/gst/control/dplinearinterp.h:
12806 * libs/gst/control/unitconvert.c:
12807 * libs/gst/control/unitconvert.h:
12808 * testsuite/Makefile.am:
12809 * testsuite/dynparams/.cvsignore:
12810 * testsuite/dynparams/Makefile.am:
12811 * testsuite/dynparams/dparamstest.c:
12812 * tools/Makefile.am:
12813 * tools/gst-inspect.c: (print_element_info), (main):
12814 * tools/gst-xmlinspect.c: (print_element_info), (main):
12815 deactivate and remove dparams (libgstcontrol)
12817 2005-08-01 Tim-Philipp Müller <tim at centricular dot net>
12819 * gst/elements/gsttypefindelement.c:
12820 (gst_type_find_element_have_type), (gst_type_find_element_init),
12821 (stop_typefinding), (gst_type_find_element_handle_event),
12822 (gst_type_find_element_chain), (gst_type_find_element_getrange):
12823 * gst/elements/gsttypefindelement.h:
12824 Set caps on all outgoing buffers, not just the first one.
12826 2005-08-01 Tim-Philipp Müller <tim at centricular dot net>
12828 * gst/elements/gsttypefindelement.c:
12829 (gst_type_find_element_have_type),
12830 (gst_type_find_element_check_set_buffer_caps),
12831 (gst_type_find_element_init), (stop_typefinding),
12832 (gst_type_find_element_handle_event),
12833 (gst_type_find_element_chain), (gst_type_find_element_getrange):
12834 * gst/elements/gsttypefindelement.h:
12835 Set caps on first outgoing buffer when we've found the type.
12837 2005-08-01 Tim-Philipp Müller <tim at centricular dot net>
12839 * docs/gst/gstreamer-docs.sgml:
12840 * docs/gst/gstreamer-sections.txt:
12841 * docs/gst/tmpl/gstscheduler.sgml:
12842 * docs/gst/tmpl/gstschedulerfactory.sgml:
12843 Remove some old cruft from docs.
12845 2005-07-31 Tim-Philipp Müller <tim at centricular dot net>
12848 Fix inline docs for GstPadLinkReturn.
12850 * gst/gststructure.c: (gst_structure_has_name):
12851 * gst/gststructure.h:
12852 * docs/gst/gstreamer-sections.txt:
12853 New API: gst_structure_has_name().
12855 2005-07-30 Tim-Philipp Müller <tim at centricular dot net>
12858 Use AC_SYS_LARGEFILE, which will set _FILE_OFFSET_BITS=64
12859 and _LARGEFILE_SOURCE in config.h as required. Do not
12860 export those flags in our .pc files any longer (#142209).
12862 Remove unused GST_DISABLE_OMEGA_COTHREADS stuff.
12864 * gst/elements/gstfilesink.c: (gst_file_sink_class_init),
12865 (gst_file_sink_do_seek), (gst_file_sink_event),
12866 (gst_file_sink_get_current_offset), (gst_file_sink_render):
12867 Redo seek/tell calls with large file support in mind; add some
12868 debugging messages; add log message that tells us when large
12869 file support is unavailable or not enabled for some reason.
12871 * gst/elements/gstfilesrc.c: (gst_file_src_class_init):
12872 Add log message that tells us when large file support
12873 is unavailable or not enabled for some reason.
12875 2005-07-29 Wim Taymans <wim@fluendo.com>
12877 * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
12878 Added test for removing an element with ghostpad from a bin.
12879 Fixed test as current implementation does the right thing.
12881 * gst/gstghostpad.c: (gst_proxy_pad_class_init),
12882 (gst_proxy_pad_do_query_type), (gst_proxy_pad_do_event),
12883 (gst_proxy_pad_do_query), (gst_proxy_pad_do_internal_link),
12884 (gst_proxy_pad_do_bufferalloc), (gst_proxy_pad_do_activate),
12885 (gst_proxy_pad_do_activatepull), (gst_proxy_pad_do_activatepush),
12886 (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange),
12887 (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_getcaps),
12888 (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
12889 (gst_proxy_pad_do_setcaps), (gst_proxy_pad_set_target),
12890 (gst_proxy_pad_get_target), (gst_proxy_pad_init),
12891 (gst_proxy_pad_dispose), (gst_proxy_pad_finalize),
12892 (gst_ghost_pad_class_init), (gst_ghost_pad_do_activate_push),
12893 (gst_ghost_pad_do_link), (gst_ghost_pad_do_unlink),
12894 (gst_ghost_pad_set_internal), (gst_ghost_pad_dispose),
12895 (gst_ghost_pad_new_notarget), (gst_ghost_pad_new),
12896 (gst_ghost_pad_get_target), (gst_ghost_pad_set_target):
12897 * gst/gstghostpad.h:
12898 Clean up ghostpads, remove properties for internal stuff.
12901 Prepare for switching targets, not all use cases work yet.
12903 2005-07-29 Wim Taymans <wim@fluendo.com>
12905 * docs/design/part-gstghostpad.txt:
12908 * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
12909 (gst_bin_remove_func):
12910 Unlinking pads while holding the bin LOCK is not a good
12913 * gst/gstpad.c: (gst_pad_class_init),
12914 (gst_pad_link_check_hierarchy), (gst_pad_get_caps_unlocked),
12915 (gst_pad_accept_caps), (gst_pad_set_caps), (gst_pad_send_event):
12916 No prob setting template after creating the pad.
12918 2005-07-29 Jan Schmidt <thaytan@mad.scientist.com>
12920 * gst/gstbus.c: (gst_bus_set_flushing), (gst_bus_pop),
12921 (gst_bus_peek), (gst_bus_source_dispatch),
12922 (gst_bus_add_watch_full), (poll_handler), (poll_timeout),
12923 (poll_destroy), (poll_destroy_timeout), (gst_bus_poll):
12924 gst_bus_poll may be called from other threads. Handle
12925 this nicely by not making poll_data disappear off the
12926 stack once gst_bus_poll returns.
12927 gst_bus_peek now increments the refcount on the returned
12930 2005-07-29 Wim Taymans <wim@fluendo.com>
12932 * docs/design/part-gstghostpad.txt:
12933 Overview of current GhostPad datastructures and use
12934 cases for changing the target.
12936 2005-07-28 Wim Taymans <wim@fluendo.com>
12938 * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
12939 Added checks for hierarchy consistency whan adding linked
12942 * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
12943 Added check to test element scheduling without bin/pipeline.
12945 * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
12946 First add elements to bin, then link.
12948 * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
12949 (gst_bin_remove_func):
12950 Unlink pads from elements added/removed from bin to maintain
12951 hierarchy consistency.
12953 2005-07-28 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
12955 * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
12956 (gst_base_transform_handle_buffer):
12957 * gst/base/gstbasetransform.h:
12958 Remove broken delay_configure (fixes renegotiation of software
12959 scaling pipelines); remove some leftover printf()s.
12961 2005-07-28 Wim Taymans <wim@fluendo.com>
12963 * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
12964 Added some more tests for wrong hierarchy
12966 * docs/design/part-overview.txt:
12969 * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_dispose):
12972 * gst/gstelement.c: (gst_element_remove_pad), (gst_element_seek),
12973 (gst_element_dispose):
12974 Some more cleanups.
12976 * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
12977 (gst_pad_link_check_hierarchy), (gst_pad_link_prepare),
12978 (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
12979 (gst_pad_set_caps), (gst_pad_send_event):
12980 Check for correct hierarchy when linking pads. Moving to
12981 strict requirement for ghostpads when linking elements in
12985 Clean ups. Added WRONG_HIERARCHY return value.
12987 2005-07-28 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
12989 * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
12990 Better debug if no transform is possible.
12992 2005-07-27 Wim Taymans <wim@fluendo.com>
12994 * docs/random/wtay/network-transp:
12995 Some old doc I had.
12997 2005-07-27 Wim Taymans <wim@fluendo.com>
12999 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
13000 (gst_dp_event_from_packet):
13001 Fix serialization of seek events.
13003 2005-07-27 Wim Taymans <wim@fluendo.com>
13005 * check/gst-libs/gdp.c: (GST_START_TEST):
13006 * gst/elements/gstfakesink.c: (gst_fake_sink_event):
13007 Fix compilation and fix event serialization.
13009 2005-07-27 Wim Taymans <wim@fluendo.com>
13012 * docs/design/part-TODO.txt:
13013 * docs/design/part-events.txt:
13016 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
13017 (gst_base_sink_event), (gst_base_sink_do_sync),
13018 (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
13019 * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
13020 (gst_base_src_do_seek), (gst_base_src_event_handler),
13021 (gst_base_src_loop):
13022 * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
13023 (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
13024 (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
13025 (gst_base_transform_event), (gst_base_transform_handle_buffer),
13026 (gst_base_transform_set_passthrough),
13027 (gst_base_transform_is_passthrough):
13028 * gst/elements/gstfakesink.c: (gst_fake_sink_event):
13029 * gst/elements/gstfilesink.c: (gst_file_sink_event):
13035 * gst/gstelement.c: (gst_element_seek):
13036 * gst/gstelement.h:
13037 Update gst_element_seek.
13039 * gst/gstevent.c: (gst_event_finalize), (_gst_event_copy),
13040 (gst_event_new), (gst_event_new_custom), (gst_event_get_structure),
13041 (gst_event_new_flush_start), (gst_event_new_flush_stop),
13042 (gst_event_new_eos), (gst_event_new_newsegment),
13043 (gst_event_parse_newsegment), (gst_event_new_tag),
13044 (gst_event_parse_tag), (gst_event_new_filler), (gst_event_new_qos),
13045 (gst_event_parse_qos), (gst_event_new_seek),
13046 (gst_event_parse_seek), (gst_event_new_navigation):
13048 Make GstEvent use GstStructure. Add parsing code, make sure the
13049 API is sufficiently generic.
13050 Mark possible directions of events and serialization.
13052 * gst/gstmessage.c: (gst_message_init), (gst_message_finalize),
13053 (_gst_message_copy), (gst_message_new_segment_start),
13054 (gst_message_new_segment_done), (gst_message_new_custom),
13055 (gst_message_parse_segment_start),
13056 (gst_message_parse_segment_done):
13059 * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
13060 (gst_pad_set_caps), (gst_pad_send_event):
13061 Update for new events.
13062 Catch events sent in wrong directions.
13064 * gst/gstqueue.c: (gst_queue_link_src),
13065 (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
13066 (gst_queue_handle_src_query):
13071 Remove event code from this file.
13073 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
13074 (gst_dp_event_from_packet):
13077 2005-07-27 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13079 * gst/base/gstbasetransform.c: (gst_base_transform_getcaps),
13080 (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
13081 (gst_base_transform_get_size), (gst_base_transform_handle_buffer):
13082 Make debugging actually useful.
13084 2005-07-25 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13086 * gst/gstpad.c: (fixate_value), (gst_pad_default_fixate),
13087 (gst_pad_fixate_caps):
13088 Implement default fixation once again, so that gst_pad_fixate()
13089 actually does anything at all. This probably needs to be some
13090 sort of a last resort, and use profile-based fixation first, but
13091 since that doesn't exist yet, this is the best we have. Fixes
13092 visualization in Totem.
13094 2005-07-22 Wim Taymans <wim@fluendo.com>
13096 * docs/design/part-events.txt:
13099 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
13100 (gst_base_sink_do_sync), (gst_base_sink_activate_push),
13101 (gst_base_sink_activate_pull):
13102 Some more comments.
13104 * gst/elements/gstfakesrc.c: (gst_fake_src_class_init),
13105 (gst_fake_src_create):
13106 Fix handoff marshall.
13108 * gst/elements/gstidentity.c: (gst_identity_class_init),
13109 (gst_identity_transform_ip):
13110 We're a real inplace element.
13112 * gst/gstbus.c: (gst_bus_post):
13113 Added some comments.
13115 * tests/lat.c: (fakesrc), (fakesink), (simple), (queue), (main):
13116 * tests/muxing/case1.c: (main):
13117 * tests/sched/dynamic-pipeline.c: (main):
13118 * tests/sched/interrupt1.c: (main):
13119 * tests/sched/interrupt2.c: (main):
13120 * tests/sched/interrupt3.c: (main):
13121 * tests/sched/runxml.c: (main):
13122 * tests/sched/sched-stress.c: (main):
13123 * tests/seeking/seeking1.c: (event_received), (main):
13124 * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
13126 * tests/threadstate/threadstate3.c: (main):
13127 * tests/threadstate/threadstate4.c: (main):
13128 * tests/threadstate/threadstate5.c: (main):
13131 2005-07-21 Wim Taymans <wim@fluendo.com>
13133 * docs/design/part-seeking.txt:
13134 Some small additions.
13136 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
13137 (gst_base_sink_get_times), (gst_base_sink_do_sync),
13138 (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
13139 * gst/base/gstbasesink.h:
13140 discont values are gint64, handle the math correctly.
13142 * gst/base/gstbasesrc.c: (gst_base_src_loop):
13143 Make the basesrc report error if the source pad is not linked.
13145 * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
13146 (gst_queue_loop), (gst_queue_handle_src_query),
13147 (gst_queue_src_activate_push):
13148 Make queue collect data even if the srcpad is not linked.
13149 Start pushing out data as soon as it is linked.
13151 * gst/gstutils.c: (gst_element_unlink), (gst_flow_get_name):
13153 Added gst_flow_get_name() to ease error reporting.
13155 2005-07-20 Wim Taymans <wim@fluendo.com>
13157 * gst/gstmessage.c: (gst_message_new_segment_start),
13158 (gst_message_new_segment_done), (gst_message_parse_segment_start),
13159 (gst_message_parse_segment_done):
13160 * gst/gstmessage.h:
13161 Added a bunch of messages for advanced seeking.
13163 * gst/parse/grammar.y:
13164 * libs/gst/control/dparammanager.c: (gst_dpman_set_parent),
13165 (gst_dpman_state_changed):
13166 Fix some new-pad -> pad-added signals
13168 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13170 * docs/manual/appendix-porting.xml:
13171 * docs/pwg/appendix-porting.xml:
13172 Document new-pad/state-change signal renames and the FixedList
13175 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13177 * docs/manual/advanced-autoplugging.xml:
13178 * docs/manual/basics-helloworld.xml:
13179 * docs/manual/basics-pads.xml:
13180 * docs/random/ds/0.9-suggested-changes:
13181 * gst/gstelement.c: (gst_element_class_init), (gst_element_seek):
13182 * gst/gstelement.h:
13186 * gst/gststructure.c: (gst_structure_value_get_generic_type),
13187 (gst_structure_parse_array), (gst_structure_parse_value):
13188 * gst/gstvalue.c: (gst_type_is_fixed),
13189 (gst_value_list_prepend_value), (gst_value_list_append_value),
13190 (gst_value_list_get_size), (gst_value_list_get_value),
13191 (gst_value_transform_array_string), (gst_value_serialize_array),
13192 (gst_value_deserialize_array), (gst_value_intersect_array),
13193 (gst_value_is_fixed), (_gst_value_initialize):
13195 GstElement::new-pad -> pad-added, GstElement::state-change ->
13196 state-changed, GstValueFixedList -> GstValueArray, add format and
13197 flags as their own arguments in gst_element_seek() (should improve
13198 "bindeability"), remove function generators since they don't work
13199 under a whole bunch of compilers (they were deprecated already
13202 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13204 * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
13205 (_gst_debug_register_funcptr):
13207 Fix illegal cast on some platforms (#309253).
13209 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13211 * gst/gstmessage.c: (gst_message_new_custom):
13212 * gst/gstmessage.h:
13213 Add _new_custom, make _new_application a macro to _new_custom.
13215 2005-07-20 Wim Taymans <wim@fluendo.com>
13217 * gst/base/gstbasesrc.c: (gst_base_src_init),
13218 (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
13219 * gst/base/gstbasesrc.h:
13220 Add a gboolean to decide when to push out a discont.
13222 * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
13223 (gst_queue_loop), (gst_queue_handle_src_query),
13224 (gst_queue_sink_activate_push), (gst_queue_src_activate_push),
13225 (gst_queue_set_property), (gst_queue_get_property):
13228 * tests/threadstate/threadstate1.c: (main):
13229 Make a thread test compile and run... very silly..
13232 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13234 * docs/manual/appendix-porting.xml:
13235 Mention removal of libgstgconf-0.9.la and existence of gconf
13238 2005-07-20 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13240 * docs/pwg/advanced-clock.xml:
13241 * docs/pwg/appendix-porting.xml:
13242 * docs/pwg/intro-preface.xml:
13243 * docs/pwg/other-base.xml:
13244 * docs/pwg/other-manager.xml:
13245 * docs/pwg/other-nton.xml:
13246 * docs/pwg/other-ntoone.xml:
13247 * docs/pwg/other-oneton.xml:
13248 * docs/pwg/pwg.xml:
13249 Document base classes, update sections of n-to-1 and 1-to-n (muxer,
13250 demuxer), remove n-to-n (was never written), fix some code examples
13251 and links and update the porting section to include all this.
13253 2005-07-19 Wim Taymans <wim@fluendo.com>
13255 * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_sink_event),
13256 (gst_queue_chain), (gst_queue_loop), (gst_queue_handle_src_event),
13257 (gst_queue_handle_src_query), (gst_queue_sink_activate_push),
13258 (gst_queue_src_activate_push), (gst_queue_change_state),
13259 (gst_queue_get_property):
13261 Propagate GstFlowReturn more intelligently upstream and output
13262 an ERROR/EOS when streaming stopped due to fatal error.
13264 2005-07-19 Wim Taymans <wim@fluendo.com>
13266 * tools/gst-launch.c: (check_intr), (event_loop), (main):
13267 Don't block forever for the state change to complete, the
13268 pipeline already did with a sensible timeout.
13270 2005-07-19 Wim Taymans <wim@fluendo.com>
13272 * gst/base/gstbasesrc.c: (gst_base_src_get_range):
13273 Make sure we never call the create function is we
13276 2005-07-19 Andy Wingo <wingo@pobox.com>
13278 * gst/parse/parse.l: Attempt to solve bug #172815.
13280 2005-07-19 Wim Taymans <wim@fluendo.com>
13282 * docs/design/part-clocks.txt:
13283 * docs/design/part-events.txt:
13284 * gst/base/gstbasesrc.c: (gst_base_src_do_seek):
13285 Small docs updates.
13286 Only update the seeking values when we are not
13289 2005-07-19 Jan Schmidt <thaytan@mad.scientist.com>
13291 * gst/base/gstbasesrc.c: (gst_base_src_loop):
13292 Oops, ignore the result of gst_pad_push_event here.
13294 2005-07-19 Jan Schmidt <thaytan@mad.scientist.com>
13296 * gst/base/gstbasesrc.c: (gst_base_src_loop),
13297 (gst_base_src_activate_push):
13298 Send discont event from the loop function, as pads
13299 aren't activated yet in the activate_push handler.
13301 * gst/gstbin.c: (bin_bus_handler):
13302 Don't leak element name.
13304 2005-07-18 Andy Wingo <wingo@pobox.com>
13306 * configure.ac: Use AS_LIBTOOL_TAGS.
13308 2005-07-18 Wim Taymans <wim@fluendo.com>
13310 * docs/gst/gstreamer.types:
13311 Remove deleted types.
13313 2005-07-18 Wim Taymans <wim@fluendo.com>
13315 * check/elements/gstfakesrc.c: (GST_START_TEST):
13318 * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
13319 (init_popt_callback):
13321 * gst/gst_private.h:
13322 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_add_func),
13323 (gst_bin_remove_func), (gst_bin_get_state), (gst_bin_change_state):
13326 * gst/gstconfig.h.in:
13327 * gst/gstelement.c: (gst_element_class_init),
13328 (gst_element_set_base_time), (gst_element_get_base_time),
13329 (iterator_fold_with_resync), (gst_element_change_state),
13330 (gst_element_dispose), (gst_element_get_bus):
13331 * gst/gstelement.h:
13332 * gst/gstelementfactory.h:
13333 * gst/gsterror.c: (_gst_core_errors_init):
13336 * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
13338 * gst/gstinfo.c: (_gst_debug_init):
13339 * gst/gstmessage.c: (_gst_message_copy):
13340 * gst/gstmessage.h:
13341 * gst/gstminiobject.h:
13344 * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
13345 (gst_pad_set_caps), (gst_pad_start_task), (gst_pad_stop_task):
13348 * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
13349 (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
13350 (gst_pipeline_get_last_stream_time):
13351 * gst/gstpipeline.h:
13352 * gst/gstpluginfeature.h:
13354 * gst/gstscheduler.c:
13355 * gst/gstscheduler.h:
13356 * gst/gststructure.h:
13357 * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
13358 (gst_task_finalize), (gst_task_func), (gst_task_create),
13359 (gst_task_set_lock), (gst_task_get_state), (gst_task_start),
13360 (gst_task_stop), (gst_task_pause):
13362 * gst/gsttypefind.h:
13364 * gst/registries/gstlibxmlregistry.c: (load_feature),
13365 (gst_xml_registry_load), (gst_xml_registry_save_feature):
13366 * gst/registries/gstxmlregistry.c:
13367 (gst_xml_registry_start_element), (gst_xml_registry_save_feature):
13368 * gst/schedulers/threadscheduler.c:
13369 * libs/gst/control/dparammanager.h:
13370 * tools/gst-inspect.c: (print_element_list),
13371 (print_plugin_features), (print_element_features):
13372 * tools/gst-xmlinspect.c: (print_element_list),
13373 (print_plugin_info), (main):
13374 Removed plugable schedulers.
13375 Removed Scheduler/Manager from elements.
13376 Removed gsttypes.h, rearranged includes.
13377 Removed dependency pad<->element, element<>pipeline, and
13378 various others, fix includes.
13379 implement gst_pad_get_parent() with gst_object_get_parent()
13380 Make GstTask sefcontained.
13381 Fix _get_state() on GstBin, it did not return ASYNC with a 0
13383 Fix endless loop in iterator_fold_with_resync.
13386 2005-07-18 Wim Taymans <wim@fluendo.com>
13392 2005-07-18 Wim Taymans <wim@fluendo.com>
13395 No more cothreads.h
13397 2005-07-18 Wim Taymans <wim@fluendo.com>
13401 Let's remove these.
13403 2005-07-18 Wim Taymans <wim@fluendo.com>
13405 * docs/design/part-dynamic.txt:
13406 * docs/design/part-events.txt:
13407 * docs/design/part-seeking.txt:
13408 Some more docs in the works.
13410 * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
13411 (gst_base_transform_getcaps), (gst_base_transform_configure_caps),
13412 (gst_base_transform_setcaps), (gst_base_transform_get_size),
13413 (gst_base_transform_buffer_alloc), (gst_base_transform_event),
13414 (gst_base_transform_handle_buffer),
13415 (gst_base_transform_sink_activate_push),
13416 (gst_base_transform_src_activate_pull),
13417 (gst_base_transform_set_passthrough),
13418 (gst_base_transform_is_passthrough):
13421 * gst/gstbus.c: (gst_bus_source_dispatch), (gst_bus_poll):
13424 * gst/gstevent.c: (gst_event_finalize):
13427 * gst/gstutils.c: (gst_element_unlink),
13428 (gst_pad_get_parent_element), (gst_pad_proxy_getcaps),
13429 (gst_pad_proxy_setcaps):
13431 Add _get_parent_element() to get a pads parent as an element.
13433 2005-07-18 Wim Taymans <wim@fluendo.com>
13435 * check/gst/gstbin.c: (GST_START_TEST):
13438 2005-07-18 Wim Taymans <wim@fluendo.com>
13440 * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
13441 (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
13442 (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
13443 (gst_base_sink_event), (gst_base_sink_do_sync),
13444 (gst_base_sink_chain), (gst_base_sink_loop),
13445 (gst_base_sink_deactivate), (gst_base_sink_activate_push),
13446 (gst_base_sink_activate_pull), (gst_base_sink_change_state):
13448 Fix logic for returning ASYNC when not prerolled.
13450 2005-07-18 Wim Taymans <wim@fluendo.com>
13452 * gst/gstqueue.c: (gst_queue_handle_sink_event):
13453 Fix nasty refcount bug.
13455 2005-07-16 Philippe Khalaf <burger@speedy.org>
13457 * gst/elements/gstfdsrc.c:
13458 * gst/elements/gstfdsrc.h:
13459 * gst/elements/gstelements.c:
13460 * gst/elements/Makefile.am:
13461 Ported fdsrc to 0.9.
13463 2005-07-16 Wim Taymans <wim@fluendo.com>
13465 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
13466 (gst_base_sink_do_sync):
13469 2005-07-16 Wim Taymans <wim@fluendo.com>
13471 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
13472 (gst_base_sink_event), (gst_base_sink_get_times),
13473 (gst_base_sink_do_sync), (gst_base_sink_change_state):
13474 * gst/base/gstbasesink.h:
13475 Store and use discont values when syncing buffers as described
13478 * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
13479 (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
13480 (gst_base_src_activate_push):
13481 Push discont event when starting.
13483 * gst/elements/gstidentity.c: (gst_identity_transform):
13486 * gst/gstbin.c: (gst_bin_change_state):
13487 Small cleanups in base_time distribution.
13489 * gst/gstelement.c: (gst_element_set_base_time),
13490 (gst_element_get_base_time), (gst_element_change_state):
13491 * gst/gstelement.h:
13492 Added methods for the base_time of the element.
13495 * gst/gstpipeline.c: (gst_pipeline_send_event),
13496 (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
13497 (gst_pipeline_get_last_stream_time):
13498 * gst/gstpipeline.h:
13500 Handle seeking as described in design doc, remove stream_time
13502 Cleanups clock and stream_time selection code. Added accessors
13503 for the stream_time.
13506 2005-07-16 Andy Wingo <wingo@pobox.com>
13508 * gst/gsterror.c (_gst_core_errors_init): Use the magic word
13511 2005-07-16 Wim Taymans <wim@fluendo.com>
13513 * check/gst/gstbin.c: (GST_START_TEST):
13514 Make elements silent as the deep_notify refs the
13515 parent, which might make the test fail.
13517 * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
13518 Don't hold the lock for too long.
13520 2005-07-16 Tim-Philipp Müller <tim at centricular dot net>
13522 * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
13523 Don't unref the caps we passed to gst_caps_make_writable() after
13524 passing them. gst_caps_make_writable() will do that for us.
13526 2005-07-15 Andy Wingo <wingo@pobox.com>
13528 * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
13531 * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
13532 own marshalling function for the handoff signal. Properly type the
13533 buffer as a buffer. Fixes some warnings. Should do a more general
13535 (gst_identity_class_init): Plug into the right marshaller.
13537 2005-07-15 Wim Taymans <wim@fluendo.com>
13539 * docs/design/part-TODO.txt:
13540 * docs/design/part-clocks.txt:
13541 * docs/design/part-element-sink.txt:
13542 * docs/design/part-events.txt:
13543 * docs/design/part-gstpipeline.txt:
13544 Updated docs, mostly DISCONT related.
13546 2005-07-15 Tim-Philipp Müller <tim at centricular dot net>
13548 * docs/pwg/building-pads.xml:
13549 s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
13551 2005-07-15 Andy Wingo <wingo@pobox.com>
13553 * tools/gst-typefind.c: Update, add copyright block.
13555 * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
13556 Normalize and truncate caps before fixation.
13559 * gst/gstcaps.c (gst_caps_truncate): New function, destructively
13560 discards all but the first structure from its argument.
13562 2005-07-15 Wim Taymans <wim@fluendo.com>
13564 * gst/base/gstbasetransform.c: (gst_base_transform_init),
13565 (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
13566 (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
13567 (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
13568 (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
13569 (gst_base_transform_chain), (gst_base_transform_change_state),
13570 (gst_base_transform_set_passthrough),
13571 (gst_base_transform_is_passthrough):
13572 * gst/base/gstbasetransform.h:
13573 Make passthrough work using the bufferpools.
13574 Changed API a bit, subclasses have to write into a buffer
13575 provided by the base class.
13576 More debug info in nego functions.
13578 * gst/elements/gstidentity.c: (gst_identity_init),
13579 (gst_identity_transform):
13580 Port to new base class.
13582 2005-07-15 Wim Taymans <wim@fluendo.com>
13584 * gst/gstmessage.c: (gst_message_new_state_changed):
13585 * tools/gst-launch.c: (event_loop), (main):
13586 Totally dump messages in -launch with the -m option.
13587 Fix message name for State messages,
13589 2005-07-14 Wim Taymans <wim@fluendo.com>
13591 * gst/base/gstbasesrc.c: (gst_base_src_loop):
13592 Post error messages on errors.
13594 2005-07-14 Wim Taymans <wim@fluendo.com>
13596 * gst/gstcaps.c: (gst_caps_do_simplify):
13600 Define error for stream stopped.
13602 * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
13603 (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
13604 Do proper return values.
13606 * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
13607 (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
13608 (gst_pad_get_range):
13609 Better return values.
13612 Reorganise return values, add macro to check for fatal errors.
13614 * gst/gstqueue.c: (gst_queue_chain):
13615 Return proper GstFlowReturn values,
13617 2005-07-14 Thomas Vander Stichele <thomas at apestaart dot org>
13619 * docs/gst/gstreamer-sections.txt:
13620 * docs/gst/gstreamer.types:
13621 * docs/gst/tmpl/gst.sgml:
13622 * docs/gst/tmpl/gstbasesink.sgml:
13623 * docs/gst/tmpl/gstbasesrc.sgml:
13624 * docs/gst/tmpl/gstbasetransform.sgml:
13625 * docs/gst/tmpl/gstbin.sgml:
13626 * docs/gst/tmpl/gstbuffer.sgml:
13627 * docs/gst/tmpl/gstcaps.sgml:
13628 * docs/gst/tmpl/gstclock.sgml:
13629 * docs/gst/tmpl/gstcompat.sgml:
13630 * docs/gst/tmpl/gstconfig.sgml:
13631 * docs/gst/tmpl/gstelement.sgml:
13632 * docs/gst/tmpl/gstelementdetails.sgml:
13633 * docs/gst/tmpl/gstelementfactory.sgml:
13634 * docs/gst/tmpl/gstenumtypes.sgml:
13635 * docs/gst/tmpl/gsterror.sgml:
13636 * docs/gst/tmpl/gstevent.sgml:
13637 * docs/gst/tmpl/gstfakesink.sgml:
13638 * docs/gst/tmpl/gstfakesrc.sgml:
13639 * docs/gst/tmpl/gstfilesink.sgml:
13640 * docs/gst/tmpl/gstfilesrc.sgml:
13641 * docs/gst/tmpl/gstfilter.sgml:
13642 * docs/gst/tmpl/gstformat.sgml:
13643 * docs/gst/tmpl/gstghostpad.sgml:
13644 * docs/gst/tmpl/gstimplementsinterface.sgml:
13645 * docs/gst/tmpl/gstindex.sgml:
13646 * docs/gst/tmpl/gstindexfactory.sgml:
13647 * docs/gst/tmpl/gstinfo.sgml:
13648 * docs/gst/tmpl/gstiterator.sgml:
13649 * docs/gst/tmpl/gstmacros.sgml:
13650 * docs/gst/tmpl/gstmemchunk.sgml:
13651 * docs/gst/tmpl/gstminiobject.sgml:
13652 * docs/gst/tmpl/gstobject.sgml:
13653 * docs/gst/tmpl/gstpad.sgml:
13654 * docs/gst/tmpl/gstpadtemplate.sgml:
13655 * docs/gst/tmpl/gstparse.sgml:
13656 * docs/gst/tmpl/gstpipeline.sgml:
13657 * docs/gst/tmpl/gstplugin.sgml:
13658 * docs/gst/tmpl/gstpluginfeature.sgml:
13659 * docs/gst/tmpl/gstquery.sgml:
13660 * docs/gst/tmpl/gstqueue.sgml:
13661 * docs/gst/tmpl/gstregistry.sgml:
13662 * docs/gst/tmpl/gstregistrypool.sgml:
13663 * docs/gst/tmpl/gstscheduler.sgml:
13664 * docs/gst/tmpl/gstschedulerfactory.sgml:
13665 * docs/gst/tmpl/gststructure.sgml:
13666 * docs/gst/tmpl/gstsystemclock.sgml:
13667 * docs/gst/tmpl/gsttaglist.sgml:
13668 * docs/gst/tmpl/gsttagsetter.sgml:
13669 * docs/gst/tmpl/gsttrace.sgml:
13670 * docs/gst/tmpl/gsttrashstack.sgml:
13671 * docs/gst/tmpl/gsttypefind.sgml:
13672 * docs/gst/tmpl/gsttypefindfactory.sgml:
13673 * docs/gst/tmpl/gsttypes.sgml:
13674 * docs/gst/tmpl/gsturihandler.sgml:
13675 * docs/gst/tmpl/gsturitype.sgml:
13676 * docs/gst/tmpl/gstutils.sgml:
13677 * docs/gst/tmpl/gstvalue.sgml:
13678 * docs/gst/tmpl/gstversion.sgml:
13679 * docs/gst/tmpl/gstxml.sgml:
13680 * docs/libs/tmpl/gstcontrol.sgml:
13681 * docs/libs/tmpl/gstdataprotocol.sgml:
13682 * docs/libs/tmpl/gstdparam.sgml:
13683 * docs/libs/tmpl/gstdplinint.sgml:
13684 * docs/libs/tmpl/gstdpman.sgml:
13685 * docs/libs/tmpl/gstdpsmooth.sgml:
13686 * docs/libs/tmpl/gstgetbits.sgml:
13687 * docs/libs/tmpl/gstunitconvert.sgml:
13688 * gst/base/gstpushsrc.c: (gst_push_src_get_type),
13689 (gst_push_src_base_init), (gst_push_src_class_init),
13690 (gst_push_src_init), (gst_push_src_create):
13691 * gst/base/gstpushsrc.h:
13692 * gst/elements/gstelements.c:
13693 * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
13694 (gst_fake_sink_base_init), (gst_fake_sink_class_init),
13695 (gst_fake_sink_init), (gst_fake_sink_set_property),
13696 (gst_fake_sink_get_property), (gst_fake_sink_get_times),
13697 (gst_fake_sink_event), (gst_fake_sink_preroll),
13698 (gst_fake_sink_render), (gst_fake_sink_change_state):
13699 * gst/elements/gstfakesink.h:
13700 * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
13701 (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
13702 (gst_fake_src_base_init), (gst_fake_src_class_init),
13703 (gst_fake_src_init), (gst_fake_src_event_handler),
13704 (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
13705 (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
13706 (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
13707 (gst_fake_src_create_buffer), (gst_fake_src_create),
13708 (gst_fake_src_start), (gst_fake_src_stop):
13709 * gst/elements/gstfakesrc.h:
13710 * gst/elements/gstfilesink.c: (_do_init),
13711 (gst_file_sink_base_init), (gst_file_sink_class_init),
13712 (gst_file_sink_init), (gst_file_sink_dispose),
13713 (gst_file_sink_set_location), (gst_file_sink_set_property),
13714 (gst_file_sink_get_property), (gst_file_sink_open_file),
13715 (gst_file_sink_close_file), (gst_file_sink_query),
13716 (gst_file_sink_event), (gst_file_sink_render),
13717 (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
13718 (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
13719 (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
13720 * gst/elements/gstfilesink.h:
13721 * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
13722 (gst_file_src_class_init), (gst_file_src_init),
13723 (gst_file_src_finalize), (gst_file_src_set_location),
13724 (gst_file_src_set_property), (gst_file_src_get_property),
13725 (gst_file_src_map_region), (gst_file_src_map_small_region),
13726 (gst_file_src_create_mmap), (gst_file_src_create_read),
13727 (gst_file_src_create), (gst_file_src_is_seekable),
13728 (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
13729 (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
13730 (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
13731 (gst_file_src_uri_handler_init):
13732 * gst/elements/gstfilesrc.h:
13733 more autistic cleanliness in functions/names/defines
13735 2005-07-13 Andy Wingo <wingo@pobox.com>
13737 * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
13738 source couldn't negotiate.
13740 * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
13744 * gst/gstutils.c (gst_element_link_pads_filtered): New old
13745 function. I am channeling Hades. Put your boots on suckers!!!
13747 2005-07-13 Thomas Vander Stichele <thomas at apestaart dot org>
13749 * testsuite/caps/Makefile.am:
13750 * testsuite/caps/value_compare.c:
13751 * testsuite/caps/value_intersect.c:
13752 * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
13753 move two testsuite apps over to the check dir
13755 2005-07-12 Wim Taymans <wim@fluendo.com>
13757 * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
13758 Added more debug info in the negotiate process.
13760 * gst/gstmessage.h:
13761 Prepare for segment playback.
13763 * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
13769 * tools/gst-launch.c: (main):
13770 NULL pipeline on errors.
13772 2005-07-12 Andy Wingo <wingo@pobox.com>
13774 * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
13775 not it comes from a malloc region. Make sure our copy gets freed.
13777 2005-07-12 Thomas Vander Stichele <thomas at apestaart dot org>
13779 * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
13780 * check/gst/gstmessage.c: (GST_START_TEST):
13781 * check/gst/gststructure.c: (GST_START_TEST),
13782 (gst_structure_suite), (main):
13784 * gst/gstelement.c: (gst_element_message_full):
13785 clean up GError and debug string now that they get copied
13786 * gst/gstmessage.c: (gst_message_new_error),
13787 (gst_message_new_warning), (gst_message_parse_error),
13788 (gst_message_parse_warning):
13789 use GST_TYPE_G_ERROR for structure_new, and take copies of
13790 arguments, so that we don't mess up refcounting
13792 2005-07-12 Thomas Vander Stichele <thomas at apestaart dot org>
13794 * check/Makefile.am:
13795 add per-test valgrind targets
13796 * check/gst-libs/gdp.c: (GST_START_TEST),
13797 (gst_data_protocol_suite), (main):
13800 2005-07-12 Thomas Vander Stichele <thomas at apestaart dot org>
13802 * check/Makefile.am:
13803 instate more valgrindable tests
13804 * check/elements/gstfakesrc.c: (chain_func), (event_func),
13805 (GST_START_TEST), (fakesrc_suite):
13806 * check/gst/gstpad.c: (GST_START_TEST):
13807 * check/gst/gststructure.c: (GST_START_TEST):
13809 * docs/gst/tmpl/gstminiobject.sgml:
13810 * gst/gstpad.c: (gst_pad_finalize):
13811 fix the static mutex leak
13813 2005-07-11 Thomas Vander Stichele <thomas at apestaart dot org>
13815 * check/Makefile.am:
13816 add two more tests for valgrinding
13817 * check/gst/gstvalue.c: (GST_START_TEST):
13818 test refcount of deserialized buffer, found a leak
13819 * docs/gst/gstreamer-docs.sgml:
13820 * docs/gst/gstreamer-sections.txt:
13821 * docs/gst/gstreamer.types:
13822 * docs/gst/tmpl/gstminiobject.sgml:
13823 add miniobject to docs
13824 * gst/gstminiobject.c:
13826 * gst/gstvalue.c: (gst_value_deserialize_buffer),
13827 (gst_string_unwrap):
13828 fix a hard-to-find invalid write for one of the tests
13829 fix a leak for deserialized buffers
13831 2005-07-11 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
13833 * docs/pwg/advanced-events.xml:
13834 * docs/pwg/advanced-request.xml:
13835 * docs/pwg/advanced-scheduling.xml:
13836 * docs/pwg/appendix-porting.xml:
13837 * docs/pwg/building-boiler.xml:
13838 * docs/pwg/intro-preface.xml:
13839 * docs/pwg/other-ntoone.xml:
13840 Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
13841 of example code and explanation for pad activation, loop() and
13842 getrange() functions and a bit more. Remove old comments pointing
13844 * examples/pwg/Makefile.am:
13845 Add loop/getrange examples.
13847 2005-07-11 Thomas Vander Stichele <thomas at apestaart dot org>
13850 check for valgrind binary + some fixes
13852 valgrind suppressions for the tests
13853 * check/Makefile.am:
13854 add a valgrind: target that valgrinds the unit tests
13855 * check/gst/gst.c: (GST_START_TEST), (gst_suite):
13856 * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
13857 * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
13858 * check/gst/gstghostpad.c:
13860 * check/gst/gstdata.c:
13862 * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
13863 (thread_unref), (gst_mini_object_suite), (main):
13865 * gst/gst.c: (gst_deinit):
13867 add a method to clean up.
13868 * gst/gstsystemclock.c: (gst_system_clock_dispose),
13869 (gst_system_clock_obtain):
13870 allow for disposing the system clock.
13871 * tools/gst-launch.c: (main):
13874 2005-07-11 Thomas Vander Stichele <thomas at apestaart dot org>
13876 * docs/gst/tmpl/gstbasesrc.sgml:
13877 * docs/gst/tmpl/gstfakesrc.sgml:
13878 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
13879 (gst_base_src_init), (gst_base_src_set_property),
13880 (gst_base_src_get_property), (gst_base_src_get_range),
13881 (gst_base_src_start):
13882 * gst/base/gstbasesrc.h:
13883 add num-buffers property
13884 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
13885 (gst_fakesrc_init), (gst_fakesrc_set_property),
13886 (gst_fakesrc_get_property), (gst_fakesrc_create),
13887 (gst_fakesrc_start):
13888 remove num-buffers property
13890 2005-07-10 Thomas Vander Stichele <thomas at apestaart dot org>
13892 * docs/gst/gstreamer-sections.txt:
13893 * docs/gst/tmpl/gstbasesink.sgml:
13894 * docs/gst/tmpl/gstbasesrc.sgml:
13895 * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
13896 (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
13897 (gst_base_sink_finalize), (gst_base_sink_set_clock),
13898 (gst_base_sink_set_property), (gst_base_sink_get_property),
13899 (gst_base_sink_handle_object), (gst_base_sink_event),
13900 (gst_base_sink_do_sync), (gst_base_sink_handle_event),
13901 (gst_base_sink_handle_buffer), (gst_base_sink_chain),
13902 (gst_base_sink_loop), (gst_base_sink_deactivate),
13903 (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
13904 (gst_base_sink_change_state):
13905 * gst/base/gstbasesink.h:
13906 * gst/base/gstbasesrc.h:
13907 * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
13908 * gst/elements/gstfilesink.c: (gst_filesink_class_init),
13909 (gst_filesink_init):
13910 more macro splitting
13912 2005-07-10 Thomas Vander Stichele <thomas at apestaart dot org>
13914 * gst/gstelement.c: (gst_element_get_bus):
13916 * tools/gst-launch.c: (check_intr), (event_loop):
13919 2005-07-10 Thomas Vander Stichele <thomas at apestaart dot org>
13921 * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
13924 2005-07-10 Thomas Vander Stichele <thomas at apestaart dot org>
13926 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
13927 (gst_base_src_finalize):
13928 add finalize method and clean up properly
13929 * gst/gstpipeline.c: (gst_pipeline_dispose):
13932 2005-07-09 Thomas Vander Stichele <thomas at apestaart dot org>
13934 * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
13936 add more things to check
13937 * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
13938 * gst/gstelement.c:
13941 2005-07-09 Thomas Vander Stichele <thomas at apestaart dot org>
13943 * check/elements/gstfakesrc.c: (chain_func), (event_func),
13944 (GST_START_TEST), (fakesrc_suite):
13945 * check/gst-libs/gdp.c: (GST_START_TEST):
13946 * check/gst/gst.c: (GST_START_TEST):
13947 * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
13948 * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
13949 * check/gst/gstbus.c: (GST_START_TEST):
13950 * check/gst/gstcaps.c: (GST_START_TEST):
13951 * check/gst/gstdata.c: (GST_START_TEST):
13952 * check/gst/gstelement.c: (GST_START_TEST):
13953 * check/gst/gstghostpad.c: (GST_START_TEST):
13954 * check/gst/gstiterator.c: (GST_START_TEST):
13955 * check/gst/gstmessage.c: (GST_START_TEST):
13956 * check/gst/gstobject.c: (GST_START_TEST):
13957 * check/gst/gstpad.c: (GST_START_TEST):
13958 * check/gst/gststructure.c: (GST_START_TEST):
13959 * check/gst/gstsystemclock.c: (GST_START_TEST),
13960 (gst_systemclock_suite):
13961 * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
13962 * check/gst/gstvalue.c: (GST_START_TEST):
13963 * check/pipelines/cleanup.c: (GST_START_TEST):
13964 * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
13965 * check/states/sinks.c: (GST_START_TEST):
13966 * check/gstcheck.c: (gst_check_init):
13967 * check/gstcheck.h:
13968 add debugging category
13969 use GST_START_TEST now, so we add a debug line
13971 2005-07-09 Thomas Vander Stichele <thomas at apestaart dot org>
13973 * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
13974 add test for state change message on a bin
13975 * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
13977 * gst/gstbin.c: (gst_bin_init):
13978 * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
13979 * gst/gstelement.c: (gst_element_post_message),
13980 (gst_element_set_state):
13981 * gst/gstelementfactory.c: (gst_element_factory_create):
13982 * gst/gstmessage.c: (gst_message_new):
13983 * gst/gstscheduler.c:
13984 various debugging additions and cleanups
13986 2005-07-08 Thomas Vander Stichele <thomas at apestaart dot org>
13988 * check/Makefile.am:
13989 * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
13991 adding tests for elements
13992 * gst/gstelement.c: (gst_element_dispose):
13994 2005-07-08 Thomas Vander Stichele <thomas at apestaart dot org>
13996 * gst/registries/gstlibxmlregistry.c: (load_feature):
13997 plug more leaks. A simple gst_init() now is leakfree, yay.
13999 2005-07-08 Thomas Vander Stichele <thomas at apestaart dot org>
14001 * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
14002 (gst_xml_registry_load):
14003 plug another memleak
14005 2005-07-08 Thomas Vander Stichele <thomas at apestaart dot org>
14008 use GST_SET_ERROR_CFLAGS
14009 * docs/faq/cvs.xml:
14010 change to ERROR_CFLAGS
14012 2005-07-08 Thomas Vander Stichele <thomas at apestaart dot org>
14015 make GST_ERROR_CFLAGS overridable and re-enable Werror
14016 * docs/faq/cvs.xml:
14017 add a note about error CFLAGS
14018 * docs/gst/tmpl/gstfakesrc.sgml:
14019 * gst/elements/gstfakesrc.c:
14020 comment out some unused code
14021 * gst/gst.c: (split_and_iterate):
14022 * gst/registries/gstlibxmlregistry.c: (load_pad_template),
14026 2005-07-07 Thomas Vander Stichele <thomas at apestaart dot org>
14028 * common/Makefile.am:
14029 * common/gtk-doc.mak:
14030 * docs/gst/Makefile.am:
14031 factor out gtk-doc.mak
14033 2005-07-07 Wim Taymans <wim@fluendo.com>
14035 * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
14036 (gst_thread_scheduler_dispose):
14037 Unlock the STREAM_LOCK completely.
14039 2005-07-07 Thomas Vander Stichele <thomas at apestaart dot org>
14041 * check/Makefile.am:
14042 * check/elements/.cvsignore:
14043 * check/elements/gstfakesrc.c: (chain_func), (event_func),
14044 (START_TEST), (fakesrc_suite), (main):
14045 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
14046 (gst_fakesrc_set_property), (gst_fakesrc_get_property),
14047 (gst_fakesrc_create), (gst_fakesrc_start):
14048 * gst/elements/gstfakesrc.h:
14049 adding a first element test
14051 2005-07-07 Andy Wingo <wingo@pobox.com>
14053 * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
14056 2005-07-07 Wim Taymans <wim@fluendo.com>
14062 2005-07-07 Wim Taymans <wim@fluendo.com>
14064 * gst/base/gstbasesrc.c: (gst_base_src_get_range),
14065 (gst_base_src_default_negotiate), (gst_base_src_negotiate):
14066 Allow subclasses to implement their own negotiation.
14068 2005-07-07 Jan Schmidt <thaytan@mad.scientist.com>
14070 * docs/design/part-gstbin.txt:
14071 * docs/design/part-gstpipeline.txt:
14072 Update design notes to reflect the movement of
14073 responsibility for bus handling from GstPipeline to
14076 2005-07-07 Jan Schmidt <thaytan@mad.scientist.com>
14079 Remove unnecessary queue2/3/4 examples.
14081 2005-07-07 Jan Schmidt <thaytan@mad.scientist.com>
14083 * examples/Makefile.am:
14084 * examples/helloworld/helloworld.c: (event_loop), (main):
14085 * examples/queue/queue.c: (event_loop), (main):
14086 * examples/queue2/queue2.c: (main):
14087 Update a couple of the examples to work again.
14089 * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
14090 (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
14091 Spelling corrections and extra debug.
14093 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
14094 (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
14095 (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
14097 * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
14098 (gst_pipeline_change_state):
14099 * gst/gstpipeline.h:
14100 Move the bus handler for children to the GstBin, and create a
14101 separate bus for receiving messages from children to the one the
14102 bus sends 'upwards' on.
14104 2005-07-06 Wim Taymans <wim@fluendo.com>
14107 * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
14108 (gst_base_sink_handle_object), (gst_base_sink_loop),
14109 (gst_base_sink_change_state):
14110 * gst/base/gstbasesink.h:
14111 * gst/base/gstbasesrc.c: (gst_base_src_class_init),
14112 (gst_base_src_init), (gst_base_src_setcaps),
14113 (gst_base_src_getcaps), (gst_base_src_loop),
14114 (gst_base_src_default_negotiate), (gst_base_src_negotiate),
14115 (gst_base_src_start), (gst_base_src_change_state):
14116 * gst/base/gstbasesrc.h:
14117 Make basesrc negotiate.
14118 Handle the case where preroll fails in basesink.
14121 2005-07-06 Wim Taymans <wim@fluendo.com>
14123 * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
14124 Implement the fixate function.
14125 Clean up acceptcaps.
14127 2005-07-06 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14129 * docs/pwg/building-filterfactory.xml:
14130 * docs/pwg/pwg.xml:
14131 Remove never-written filter-factory chapter; I'll add the various
14132 base classes to part 4 ("other element types") later on.
14134 2005-07-06 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14136 * docs/pwg/advanced-negotiation.xml:
14137 * docs/pwg/building-boiler.xml:
14138 * docs/pwg/building-pads.xml:
14139 * docs/pwg/pwg.xml:
14140 * examples/pwg/Makefile.am:
14141 Add a chapter on caps negotiation, simplify the original code
14142 samples a bit w.r.t. caps negotiation, add link to the advanced
14143 section. Add a bunch of examples showing different use cases of
14144 different types of caps negotiation. Upstream renegotiation isn't
14145 fully documented yet since nobody knows how that works.
14147 2005-07-06 Thomas Vander Stichele <thomas at apestaart dot org>
14149 * check/gst/gstpad.c:
14150 * check/gstcheck.c:
14151 * gst/gstpad.c: (gst_pad_get_internal_links_default):
14152 if pad has no parent, return NULL as list of internal links
14154 2005-07-05 Andy Wingo <wingo@pobox.com>
14156 * gst/elements/gstfilesrc.c:
14157 * gst/elements/gstfakesrc.c:
14158 * gst/base/gstpushsrc.c:
14159 * gst/base/gstbasesrc.h:
14160 * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
14162 2005-07-05 Stefan Kost <ensonic@users.sf.net>
14165 better report generation target (lcov needs a patch)
14167 2005-07-05 Andy Wingo <wingo@pobox.com>
14169 * gst/elements, testsuite: Null if we got it...
14171 2005-07-05 Wim Taymans <wim@fluendo.com>
14174 * libs/gst/dataprotocol/Makefile.am:
14175 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
14176 * libs/gst/dataprotocol/dataprotocol.h:
14177 * pkgconfig/Makefile.am:
14178 * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
14179 * pkgconfig/gstreamer-dataprotocol.pc.in:
14180 Ported dataprotol to 0.9.
14181 Added pkgconfig files.
14183 2005-07-05 Andy Wingo <wingo@pobox.com>
14185 * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
14186 Default to returning TRUE for the case when tranform_caps returns
14187 a fixed caps, like for identity or volume.
14189 * check/gst/gstbus.c (pound_bus_with_messages):
14190 * check/gst/gstmessage.c (START_TEST):
14191 * check/pipelines/simple_launch_lines.c (got_handoff): Application
14192 message API change.
14194 * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
14195 logic weaks here: always run transform_caps, trying passthrough
14196 operation only if the original caps intersects with the transform.
14198 * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
14199 source and sink caps.
14201 * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
14202 Intersect the peer caps with the pad template before going into
14204 (gst_base_transform_transform_caps): More debugging.
14206 * gst/gstmessage.h (gst_message_new_application): Take a GstObject
14209 2005-07-04 Edward Hervey <edward@fluendo.com>
14213 (gst_pad_add_*_probe): now returns the signal id for better wrapping
14216 2005-07-04 Andy Wingo <wingo@pobox.com>
14218 * check/gst/gstpad.c: Only set explicit caps on pads.
14220 2005-07-01 Andy Wingo <wingo@pobox.com>
14222 * tests/network-clock.scm: Commentary update.
14224 * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
14225 Didn't really make sense, not implementable with basetransform,
14227 (gst_identity_transform): Unref inbuf via make_writable. Feeble
14228 attempt at implementing the sync property, needs an unlock method.
14230 * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
14231 New func, by default returns the same caps (the identity
14233 (gst_base_transform_getcaps): Uses transform_caps to return
14234 something sensible.
14235 (gst_base_transform_setcaps): Complicated logic to get caps on
14236 both pads, even if they are different, and to call set_caps once
14237 for every time both pads get their caps set.
14238 (gst_base_transform_handle_buffer): Give the ref to the transform
14239 function. Allows in-place modification of the buffer.
14241 * gst/base/gstbasetransform.h (transform_caps): New class method.
14242 Given caps on one side, what can I do on the other.
14243 (set_caps): Take two caps, one for each side of the element.
14246 * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
14247 caps in place. This is safe because we can check the mutability of
14248 the caps, and a good idea because fixate functions are just called
14249 as a matter of last resort. (Not actually implemented.)
14250 (gst_pad_set_caps): If the caps we're setting is actually the same
14251 as the existing pad caps, just update the pointer without calling
14252 setcaps. Assert that caps is either NULL or fixed, as per the
14255 * gst/gstghostpad.c: Update for fixate changes.
14257 2005-07-02 Andy Wingo <wingo@pobox.com>
14260 * gst/gstcaps.h (gst_static_caps_get): Not const return, having
14261 two refcounts makes it immutable, which is enough. Doc more.
14263 2005-07-02 Jan Schmidt <thaytan@mad.scientist.com>
14265 * gst/gstpad.c: (gst_pad_emit_have_data_signal):
14266 Put the mini_object into GValue as a mini_object,
14267 not a gpointer, since that's how we declared
14270 2005-07-01 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14272 * examples/pwg/Makefile.am:
14273 Fix buildbot again.
14275 2005-07-01 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14277 * docs/pwg/building-testapp.xml:
14279 * examples/pwg/Makefile.am:
14282 2005-07-01 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14285 * examples/Makefile.am:
14286 * examples/pwg/Makefile.am:
14287 * examples/pwg/extract.pl:
14288 Enable building the PWG examples.
14289 * docs/pwg/advanced-interfaces.xml:
14290 Add URI interface stub.
14291 * docs/pwg/advanced-types.xml:
14292 * docs/pwg/other-autoplugger.xml:
14293 * docs/pwg/appendix-porting.xml:
14294 * docs/pwg/pwg.xml:
14295 Add porting guide (mostly stubs), remove autoplugging (see ADM).
14296 * docs/pwg/building-boiler.xml:
14297 * docs/pwg/building-chainfn.xml:
14298 * docs/pwg/building-pads.xml:
14299 * docs/pwg/building-props.xml:
14300 * docs/pwg/building-state.xml:
14301 * docs/pwg/building-testapp.xml:
14302 Update the building-*.xml parts for 0.9 changes. All examples
14303 code blocks compile in examples/pwg/*.
14305 2005-06-30 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14307 * docs/manual/advanced-autoplugging.xml:
14308 * docs/manual/appendix-checklist.xml:
14309 * docs/manual/appendix-integration.xml:
14310 * docs/manual/highlevel-components.xml:
14311 Fix playbin/decodebin examples, update docs a bit, mention bus
14312 instead of signals in various places, mention kmplayer and
14313 kaffeine since they have a working GStreamer backend in the KDE
14316 2005-06-30 Wim Taymans <wim@fluendo.com>
14319 * docs/design/draft-ghostpads.txt:
14320 * docs/design/draft-push-pull.txt:
14321 * docs/design/draft-query.txt:
14322 * docs/design/part-TODO.txt:
14323 * docs/design/part-query.txt:
14324 Added CHANGES-0.9 doc, updated status of other docs.
14329 2005-06-30 Wim Taymans <wim@fluendo.com>
14331 * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
14332 (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
14333 (gst_base_sink_change_state):
14334 * gst/base/gstbasesink.h:
14335 Some tweaks, only EOS and a buffer complete a preroll.
14337 2005-06-30 Andy Wingo <wingo@pobox.com>
14339 * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
14340 activate_push down to the internal pad as well.
14342 2005-06-30 Torsten Schoenfeld <kaffeetisch@gmx.de>
14344 Reviewed by: Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14346 * gst/gsttaginterface.c:
14347 Some documentation fixes (#307394 and #307397).
14349 2005-06-30 Antoine Tremblay <hexa00@gmail.com>
14351 Reviewed by: Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14353 * gst/gstvalue.c: (gst_value_intersect_list):
14354 Fix memleak (#309125).
14356 2005-06-30 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14358 * docs/manual/advanced-dataaccess.xml:
14359 Fix fakesrc example to compile; doesn't work, bug somewhere...?
14360 * docs/manual/basics-pads.xml:
14361 Add reference for filtered caps to above chapter.
14363 2005-06-30 Wim Taymans <wim@fluendo.com>
14365 * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
14366 (gst_bin_change_state):
14368 Lame attempt at making the state change function a bit
14371 2005-06-30 Wim Taymans <wim@fluendo.com>
14373 * docs/design/part-clocks.txt:
14374 * docs/design/part-element-sink.txt:
14375 * docs/design/part-events.txt:
14376 * docs/design/part-preroll.txt:
14377 * docs/design/part-states.txt:
14378 Some more tweeks and additions to the docs.
14380 2005-06-30 Wim Taymans <wim@fluendo.com>
14382 * gst/gstpad.c: (_gst_do_pass_data_accumulator),
14383 (default_have_data), (gst_pad_class_init), (gst_pad_init),
14384 (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
14385 (gst_pad_check_pull_range), (gst_pad_get_range),
14386 (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
14388 * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
14389 (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
14390 (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
14391 (gst_pad_remove_buffer_probe):
14392 Removed atomic operations, use existing LOCK.
14393 Move exception handling out of main code path.
14395 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14397 * gst/gstpad.c: (_gst_do_pass_data_accumulator),
14398 (silly_return_true_function), (gst_pad_class_init),
14399 (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
14400 (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
14401 (gst_pad_send_event):
14402 Fix accumulator, add default value by using _emitv() instead
14403 of _emit() for signal emission.
14405 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14407 * docs/manual/advanced-dataaccess.xml:
14408 * examples/manual/Makefile.am:
14410 * gst/gstpad.c: (_gst_do_pass_data_accumulator):
14413 2005-06-29 Tim-Philipp Müller <tim at centricular dot net>
14415 * gst/elements/gstfilesink.c: (gst_filesink_render):
14416 Simplify code so that we don't have to handle short
14417 writes and return GST_FLOW_ERROR if an error occured.
14419 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14421 * docs/gst/gstreamer-docs.sgml:
14422 Remove probes more.
14424 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14426 * docs/gst/gstreamer-sections.txt:
14427 * docs/gst/tmpl/gstpad.sgml:
14428 * docs/gst/tmpl/gstprobe.sgml:
14430 * gst/gstpad.c: (_gst_do_pass_data_accumulator),
14431 (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
14432 (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
14433 (gst_pad_push_event), (gst_pad_send_event):
14435 * gst/gstutils.c: (gst_pad_add_data_probe),
14436 (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
14437 (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
14438 (gst_pad_remove_buffer_probe):
14440 Remove old probes, add new g-signal-based probes and some utility
14443 2005-06-29 Edward Hervey <edward@fluendo.com>
14445 * gst/gstelementfactory.c:
14448 Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
14449 the definition to the header file.
14451 2005-06-29 Andy Wingo <wingo@pobox.com>
14453 * docs/gst/Makefile.am (scan-build.stamp): Totally only check
14454 plugins from the source directory.
14456 2005-06-29 Wim Taymans <wim@fluendo.com>
14458 * docs/gst/tmpl/gstbuffer.sgml:
14459 * docs/gst/tmpl/gstclock.sgml:
14460 Some fixings for blantently wrong text.
14462 2005-06-29 Thomas Vander Stichele <thomas at apestaart dot org>
14464 * check/Makefile.am:
14465 * gst/gst.c: (add_path_func), (init_pre):
14466 * gst/gstregistry.c: (gst_registry_add_path):
14467 add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
14468 only scan the GST_PLUGIN_PATH locations, and not add
14471 2005-06-29 Thomas Vander Stichele <thomas at apestaart dot org>
14473 * docs/gst/gstreamer-sections.txt:
14474 * docs/gst/tmpl/gstbasesrc.sgml:
14475 * gst/gstelement.c:
14476 * gst/gstelement.h:
14481 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14483 * docs/manual/advanced-autoplugging.xml:
14484 Fix autoplugging example.
14486 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14488 * docs/manual/advanced-autoplugging.xml:
14489 * docs/manual/mime-world.fig:
14490 Try to get autoplugging working, fix type detection. Fix text
14491 in hello-world image.
14493 2005-06-29 Wim Taymans <wim@fluendo.com>
14495 * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
14496 (gst_base_sink_change_state):
14500 map SIGNAL and BROADCAST to the right function.
14503 Remove redundant braces.
14505 * gst/gstpad.c: (gst_pad_set_caps):
14506 Don't call setcaps function when reseting caps to NULL.
14508 * gst/gstsystemclock.c: (gst_system_clock_dispose),
14509 (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
14510 (gst_system_clock_id_unschedule):
14511 Use BROADCAST as this is what we do.
14513 2005-06-29 Wim Taymans <wim@fluendo.com>
14515 * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
14516 We are actually prerolling before commiting the state
14519 2005-06-29 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
14521 * docs/manual/advanced-clocks.xml:
14522 * docs/manual/advanced-interfaces.xml:
14523 * docs/manual/advanced-metadata.xml:
14524 * docs/manual/advanced-position.xml:
14525 * docs/manual/advanced-schedulers.xml:
14526 * docs/manual/advanced-threads.xml:
14527 * docs/manual/appendix-porting.xml:
14528 * docs/manual/basics-bins.xml:
14529 * docs/manual/basics-bus.xml:
14530 * docs/manual/basics-elements.xml:
14531 * docs/manual/basics-helloworld.xml:
14532 * docs/manual/basics-pads.xml:
14533 * docs/manual/highlevel-components.xml:
14534 * docs/manual/manual.xml:
14535 * docs/manual/thread.fig:
14536 Update (until threads/scheduling) Application Development Manual;
14537 remove GstThread, add GstBus, add simple porting checklist, add
14538 documentation for tag writing, clocks, make all examples until this
14539 part compile and run.
14540 * examples/manual/Makefile.am:
14541 Update from changes to Application Development Manual; add bus
14542 example, remove thread example.
14544 2005-06-28 Wim Taymans <wim@fluendo.com>
14546 * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
14547 (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
14548 (gst_bus_source_dispatch):
14549 Add debugging messages.
14550 Make internal methods static.
14551 Handle the case where the bus is flushed in the handler.
14553 * gst/gstelement.c: (gst_element_get_bus):
14554 Fix refcount in _get_bus();
14556 * gst/gstpipeline.c: (gst_pipeline_change_state),
14557 (gst_pipeline_get_clock_func):
14558 Clock refcounting fixes.
14559 Handle the case where preroll timed out more gracefully.
14561 * gst/gstsystemclock.c: (gst_system_clock_dispose):
14562 Clean up the internal thread in dispose. This is needed
14563 for subclasses that actually get disposed.
14565 * gst/schedulers/threadscheduler.c:
14566 (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
14567 (gst_thread_scheduler_dispose):
14568 Free thread pool in dispose.
14570 2005-06-28 Andy Wingo <wingo@pobox.com>
14572 * tests/network-clock-utils.scm (debug, print-event): New utils.
14574 * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
14575 (*packet-loss*): Unified loss probability.
14576 (network-time): Report out-of-band events.
14578 * tests/plot-data: Add support for out-of-band events. Hack it
14579 into this script instead of passing it down the pipe; should fix
14582 2005-06-28 Wim Taymans <wim@fluendo.com>
14584 * docs/gst/gstreamer.types:
14585 * docs/gst/tmpl/gstbasesrc.sgml:
14586 * docs/gst/tmpl/gstpad.sgml:
14589 2005-06-28 Wim Taymans <wim@fluendo.com>
14591 * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
14592 (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
14593 (gst_proxy_pad_do_fixatecaps):
14594 Correctly proxy the check_pull_range function.
14596 2005-06-28 Andy Wingo <wingo@pobox.com>
14598 * tests/network-clock.scm: Removed need for slib.
14600 2005-06-28 Wim Taymans <wim@fluendo.com>
14602 * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
14603 (gst_basesink_preroll_queue_flush):
14604 * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
14605 * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
14606 * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
14607 (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
14608 (gst_proxy_pad_set_property):
14611 * gst/gstqueue.c: (gst_queue_init):
14612 The deprecated pad loop function is removed now.
14614 2005-06-28 Andy Wingo <wingo@pobox.com>
14616 * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
14617 New parameters, simulate network packet loss.
14619 * tests/network-clock-utils.scm: Initialize the RNG.
14621 2005-06-28 Wim Taymans <wim@fluendo.com>
14623 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
14624 (gst_basesink_event), (gst_basesink_deactivate):
14625 Flushing the preroll queue always needs to unlock the waiters.
14627 2005-06-28 Edward Hervey <edward@fluendo.com>
14629 * gst/gstpipeline.c: (gst_pipeline_send_event):
14630 Wheen a seek was successful on a pipeline, set the stream_time to the
14631 seek offset in order to have a synchronized stream_time.
14633 2005-06-28 Wim Taymans <wim@fluendo.com>
14635 * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
14636 (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
14637 (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
14638 (gst_proxy_pad_do_fixatecaps):
14639 Call wrapper function instead of just calling the function
14640 pointers. This takes care of any locking and whatmore.
14642 2005-06-28 Wim Taymans <wim@fluendo.com>
14644 * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
14645 (gst_pad_pull_range):
14647 CONNECTED -> LINKED.
14649 2005-06-28 Andy Wingo <wingo@pobox.com>
14651 * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
14652 source-munging commit!!!
14654 * gst/gstobject.c (gst_object_unref, gst_object_ref)
14655 (gst_object_sink): Take gpointer arguments, not GstObject --
14656 avoids casts. Like GLib.
14658 * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
14661 2005-06-27 Andy Wingo <wingo@pobox.com>
14663 * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
14666 * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
14667 returns a sorted copy of the trace list.
14668 (gst_alloc_trace_print_live): New API, only prints traces with
14669 live objects. Sort the list.
14670 (gst_alloc_trace_print_all): Sort the list.
14671 (gst_alloc_trace_print): Align columns.
14673 * gst/elements/gstttypefindelement.c:
14674 * gst/elements/gsttee.c:
14675 * gst/base/gstbasesrc.c:
14676 * gst/base/gstbasesink.c:
14677 * gst/base/gstbasetransform.c:
14678 * gst/gstqueue.c: Adapt for pad activation changes.
14680 * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
14682 (gst_pipeline_dispose): Drop ref on sched.
14684 * gst/gstpad.c (gst_pad_init): Set the default activate func.
14685 (gst_pad_activate_default): Push mode by default.
14686 (pre_activate_switch, post_activate_switch): New stubs, things to
14687 do before and after switching activation modes on pads.
14688 (gst_pad_set_active): Take a boolean and not a mode, dispatch to
14689 the pad's activate function to choose which mode to activate.
14690 Shortcut on deactivation and call the right function directly.
14691 (gst_pad_activate_pull): New API, (de)activates a pad in pull
14693 (gst_pad_activate_push): New API, same for push mode.
14694 (gst_pad_set_activate_function)
14695 (gst_pad_set_activatepull_function)
14696 (gst_pad_set_activatepush_function): Setters for new API.
14698 * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
14699 Trace all miniobjects.
14700 (gst_mini_object_make_writable): Unref the arg if we copy, like
14701 gst_caps_make_writable.
14703 * gst/gstmessage.c (_gst_message_initialize): No trace init.
14705 * gst/gstghostpad.c (gst_proxy_pad_do_activate)
14706 (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
14707 Adapt for new pad API.
14709 * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
14711 * gst/gstelement.h:
14712 * gst/gstelement.c (gst_element_iterate_src_pads)
14713 (gst_element_iterate_sink_pads): New API functions.
14715 * gst/gstelement.c (iterator_fold_with_resync): New utility,
14716 should fold into gstiterator.c in some form.
14717 (gst_element_pads_activate): Simplified via use of fold and
14718 delegation of decisions to gstpad->activate.
14720 * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
14723 * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
14724 class once in init, like gstmessage. Didn't run into this issue
14725 but it seems correct. Don't initialize a trace, gstminiobject does
14728 * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
14729 test, runs fakesrc ! fakesink, stopping on ::handoff via a message
14731 (assert_live_count): New util function, uses alloc traces to check
14734 * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
14735 To be modified when unlink drops the internal pad.
14737 2005-06-27 Wim Taymans <wim@fluendo.com>
14739 * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
14740 (gst_bin_change_state):
14741 Cleanup the get_state() function a little, make sure it
14742 iterates the same set of elements.
14743 Added stub iterate_state_order().
14745 2005-06-27 Thomas Vander Stichele <thomas at apestaart dot org>
14747 * docs/gst/gstreamer-docs.sgml:
14748 * docs/gst/gstreamer-sections.txt:
14749 * docs/gst/gstreamer.types:
14750 * docs/gst/tmpl/gstbasesink.sgml:
14751 * docs/gst/tmpl/gstbasesrc.sgml:
14752 * docs/gst/tmpl/gstbasetransform.sgml:
14753 * docs/gst/tmpl/gstelement.sgml:
14754 * docs/gst/tmpl/gstiterator.sgml:
14755 * gst/base/gstbasesrc.c:
14756 * gst/base/gstbasesrc.h:
14757 * gst/base/gstbasetransform.h:
14758 * gst/gstelement.c:
14759 * gst/gstiterator.h:
14760 adding basetransform and iterator docs
14762 2005-06-27 Andy Wingo <wingo@pobox.com>
14764 * docs/design/part-activation.txt: Notes on how activation should
14765 work -- not quite implemented yet.
14767 2005-06-25 Wim Taymans <wim@fluendo.com>
14769 * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
14770 At least get the chain function correct, needs more
14773 2005-06-25 Wim Taymans <wim@fluendo.com>
14775 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
14776 (gst_basesink_handle_object), (gst_basesink_event),
14777 (gst_basesink_do_sync), (gst_basesink_handle_event),
14778 (gst_basesink_change_state):
14780 Right, two problems here: ghostpads don't take locks and
14781 glib _rec_mutex_lock_full() with depth==0 still locks.
14782 Catch illegal locking and g_warn them.
14784 2005-06-25 Wim Taymans <wim@fluendo.com>
14786 * check/states/sinks.c: (START_TEST), (gst_object_suite):
14787 Have to check for completion now...
14789 2005-06-25 Wim Taymans <wim@fluendo.com>
14791 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
14792 (gst_basesink_handle_object), (gst_basesink_event),
14793 (gst_basesink_do_sync), (gst_basesink_handle_event),
14794 (gst_basesink_change_state):
14796 Unlock STREAM_LOCK whatever the recursion was.
14798 2005-06-25 Wim Taymans <wim@fluendo.com>
14800 * gst/base/gstbasesink.c: (gst_basesink_set_property),
14801 (gst_basesink_preroll_queue_empty),
14802 (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
14803 (gst_basesink_event), (gst_basesink_do_sync),
14804 (gst_basesink_handle_event), (gst_basesink_handle_buffer),
14805 (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
14806 (gst_basesink_change_state):
14807 Reworked the base sink, handle event and buffer serialisation
14808 correctly and removed possible deadlock.
14809 Handle EOS correctly.
14811 2005-06-25 Wim Taymans <wim@fluendo.com>
14813 * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
14814 (gst_pipeline_change_state):
14815 * tools/gst-launch.c: (check_intr), (event_loop), (main):
14816 Allow elements to post EOS in the state change function.
14817 Fix up -launch, make it exit the poll loop when the
14818 pipeline actually changed state.
14819 Fix up warning parsing in -launch.
14821 2005-06-25 Wim Taymans <wim@fluendo.com>
14823 * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
14824 (gst_tee_sink_activate):
14825 Core takes STREAM_LOCK for us now.
14827 2005-06-25 Wim Taymans <wim@fluendo.com>
14829 * gst/gstelement.c: (gst_element_get_state_func),
14830 (gst_element_set_state):
14831 * gst/gstelement.h:
14832 * gst/gstmessage.c: (gst_message_parse_error),
14833 (gst_message_parse_warning):
14834 Keep track of current target state while performing a state
14835 change so that subclasses can do something interesting.
14836 Fix parsing of warning/error messages when GError is NULL.
14838 2005-06-24 Thomas Vander Stichele <thomas at apestaart dot org>
14840 * docs/gst/Makefile.am:
14841 * docs/gst/gstreamer-docs.sgml:
14842 * docs/gst/gstreamer-sections.txt:
14843 * docs/gst/gstreamer.types:
14844 * docs/gst/tmpl/gstbasesink.sgml:
14845 * docs/gst/tmpl/gstbasesrc.sgml:
14846 * docs/gst/tmpl/gstbin.sgml:
14847 * docs/gst/tmpl/gstcompat.sgml:
14848 * docs/gst/tmpl/gstfakesink.sgml:
14849 * docs/gst/tmpl/gstfakesrc.sgml:
14850 * docs/gst/tmpl/gstfilesink.sgml:
14851 * docs/gst/tmpl/gstfilesrc.sgml:
14852 * docs/gst/tmpl/gstindex.sgml:
14853 * docs/manual/appendix-quotes.xml:
14854 * gst/base/gstbasesrc.h:
14855 * gst/elements/gstfakesrc.h:
14856 * gst/gstmessage.h:
14857 start pulling in base classes and elements in our docs
14859 2005-06-24 Stefan Kost <ensonic@users.sf.net>
14861 * docs/gst/Makefile.am:
14862 * docs/libs/Makefile.am:
14863 fixed make distcheck with gtk-doc 1.3
14865 2005-06-23 Wim Taymans <wim@fluendo.com>
14867 * gst/gstelement.c: (gst_element_get_state_func),
14868 (gst_element_set_state), (gst_element_change_state):
14869 When the state did not change, also report NO_PREROLL
14872 2005-06-23 Wim Taymans <wim@fluendo.com>
14874 * gst/gstpad.c: (gst_pad_event_default):
14875 * gst/gstqueue.c: (gst_queue_loop):
14876 No unsafe task pausing please.
14878 2005-06-23 Wim Taymans <wim@fluendo.com>
14880 * gst/schedulers/threadscheduler.c:
14881 (gst_thread_scheduler_task_start),
14882 (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
14883 Ref the task before pushing it on the threadpool. This
14884 makes sure that we have a ref when the threadfunction is
14887 2005-06-23 Andy Wingo <wingo@pobox.com>
14889 * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
14890 offset is greater than the file's size.
14892 * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK)
14893 (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
14894 * gst/gstobject.c (gst_object_class_init): Make the class lock
14895 recursive. Wim won't let me drop deep_notify. Decodebin works
14896 again, whoopdy doo.
14898 * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
14899 internal pad, and hacks accordingly. Doesn't do it on the target
14900 pad because we change its caps. Probably catches all cases of
14902 (gst_ghost_pad_set_property): Connect to notify::caps as
14905 * tests/network-clock.scm (plot-simulation): Pipe data to the
14906 elite python skript.
14908 * tests/network-clock-utils.scm (define-parameter): New macro,
14909 defines a parameter that can be set via the command line.
14910 (set-parameter!, parse-parameter-arguments): Command line args
14913 * tests/plot-data: Simple matplotlib-based plotter, takes input on
14916 2005-06-23 Jan Schmidt <thaytan@mad.scientist.com>
14918 * gst/elements/gsttypefindelement.c:
14919 (gst_type_find_element_handle_event):
14920 Don't restart typefinding on a discont.
14921 * gst/gstelement.c: (gst_element_set_state):
14922 Debug spelling fix.
14923 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
14924 Allow changing mode of an active pad.
14925 Debug output fixes.
14926 * gst/registries/gstlibxmlregistry.c: (load_feature):
14927 Don't cast a static pad template to a normal pad template.
14929 2005-06-23 Thomas Vander Stichele <thomas at apestaart dot org>
14931 * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
14932 * gst/gstvalue.c: (gst_value_deserialize_int_helper):
14933 remove gst_strtoll completely, since it didn't actually do
14934 anything more than what g_ascii_strtoull already does.
14935 check for range errors when deserializing
14936 do a cast for the unsigned cases; but further fixing needs
14937 a decision on what the interpretation of "(int)" and
14938 deserialization should be for values that fall outside the
14939 type's boundaries (ie, refuse, or interpret as casting)
14941 2005-06-23 Wim Taymans <wim@fluendo.com>
14943 * check/Makefile.am:
14944 * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
14945 * docs/design/part-live-source.txt:
14946 * docs/design/part-states.txt:
14947 * gst/base/gstbasesrc.c: (gst_basesrc_init),
14948 (gst_basesrc_set_live), (gst_basesrc_is_live),
14949 (gst_basesrc_get_range), (gst_basesrc_activate),
14950 (gst_basesrc_change_state):
14951 * gst/base/gstbasesrc.h:
14952 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
14953 (gst_fakesrc_set_property), (gst_fakesrc_get_property):
14954 * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
14955 * gst/gstelement.c: (gst_element_get_state_func),
14956 (gst_element_set_state):
14957 * gst/gstelement.h:
14959 * tools/gst-launch.c: (event_loop), (main):
14960 Added support for live sources and other elements that
14962 Updated design docs, added live-source design doc.
14963 Implemented live source functionality in basesrc
14964 Fix error condition in _bin_get_state()
14965 Implement live source handling in -launch.
14966 Added check for live sources.
14967 Fixed case in GstBin where elements were changed state
14971 2005-06-23 Andy Wingo <wingo@pobox.com>
14973 * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
14974 borken refcounting.
14976 * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
14977 gst_caps_replace takes care of this for us.
14979 * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
14980 gst_pad_set_caps on the target, not just its setcaps() function.
14982 * tests/network-clock.scm:
14983 * tests/network-clock-utils.scm: A network clock simulator.
14984 Something of an algorithmic testbed before doing something in C.
14986 2005-06-22 Thomas Vander Stichele <thomas at apestaart dot org>
14988 * check/Makefile.am:
14989 * check/gst/capslist.h:
14990 copy over from 0.8, and add two with bitmasks specified with
14992 * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
14993 add test to parse everything from capslist.h
14994 * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
14996 add test for structure deserialization
14997 * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
14998 add tests for deserialization of strings to int types
14999 * gst/gststructure.c: (gst_structure_nth_field_name):
15000 * gst/gststructure.h:
15001 add a way to get the name of a field referenced by index
15002 * gst/gstvalue.c: (gst_value_deserialize_int_helper):
15003 instead of checking if the resulting long long lies between
15004 min and max, we check if the long long would fit into
15005 a number of bytes for the final type.
15006 This fixes cases where a string represents 2^32 - 1, which
15007 when cast to int would be the (valid) -1, but is bigger than
15010 2005-06-22 Thomas Vander Stichele <thomas at apestaart dot org>
15012 * gst/parse/grammar.y:
15013 add a log line for type deserialization
15015 2005-06-22 Thomas Vander Stichele <thomas at apestaart dot org>
15017 * check/gst/gstvalue.c: (START_TEST):
15018 * gst/gstvalue.c: (gst_value_deserialize):
15019 return long long, not int, so gint64 deserialization actually
15020 works. Is there any flag that makes the compiler check this ?
15023 2005-06-22 Wim Taymans <wim@fluendo.com>
15026 Added convenience macros for setting buffers in GValue.
15028 2005-06-21 Thomas Vander Stichele <thomas at apestaart dot org>
15030 * check/gst/.cvsignore:
15031 * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
15032 add a test deserializing int64, and comment part out because
15035 2005-06-21 Thomas Vander Stichele <thomas at apestaart dot org>
15037 * check/Makefile.am:
15038 * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
15039 * testsuite/Makefile.am:
15040 * testsuite/caps/Makefile.am:
15041 * testsuite/caps/value_serialize.c:
15042 * testsuite/test_gst_init.c:
15043 move a value_serialize test over
15045 2005-06-20 Wim Taymans <wim@fluendo.com>
15050 * gst/gstvalue.c: (gst_value_compare_buffer),
15051 (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
15052 (gst_value_compare_flags), (gst_value_serialize_flags),
15053 (gst_value_deserialize_flags), (_gst_value_initialize):
15054 Fix serialisation of buffers, they are not boxed types anymore
15056 2005-06-20 Wim Taymans <wim@fluendo.com>
15058 * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
15059 Testcase to show error in buffer-on-caps serialisation.
15061 2005-06-20 Andy Wingo <wingo@pobox.com>
15063 * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
15064 will be adding to later.
15066 * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
15067 if its socks fill with rocks.
15068 (gst_system_clock_obtain): Set the name on object construction.
15069 Avoid double-checked locking.
15071 2005-06-20 Tim-Philipp Müller <tim at centricular dot net>
15073 * gst/gsturi.c: (gst_element_make_from_uri):
15074 Fix potential endless loop.
15076 2005-06-19 Thomas Vander Stichele <thomas at apestaart dot org>
15078 * check/Makefile.am:
15080 * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
15082 move over from testsuite dir and clean up
15085 * testsuite/Makefile.am:
15086 * testsuite/tags/.cvsignore:
15087 * testsuite/tags/Makefile.am:
15088 * testsuite/tags/merge.c:
15089 remove testsuite/tags
15091 2005-06-19 Thomas Vander Stichele <thomas at apestaart dot org>
15093 * docs/gst/gstreamer-sections.txt:
15094 * docs/gst/tmpl/gstenumtypes.sgml:
15095 * win32/gstenumtypes.c:
15096 clean up documentation build a little
15098 2005-06-19 Thomas Vander Stichele <thomas at apestaart dot org>
15100 * check/gstcheck.h:
15101 add macros for checking refcounts on objects and caps
15102 * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
15103 add some more unit tests
15104 * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
15105 (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
15106 fix leaked refcounts (I hope :)) so unittest works
15110 2005-06-19 Thomas Vander Stichele <thomas at apestaart dot org>
15112 * configure.ac: back to HEAD
15114 === release 0.9.1 ===
15116 2005-06-17 Thomas Vander Stichele <thomas at apestaart dot org>
15122 2005-06-17 Andy Wingo <wingo@pobox.com>
15124 * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
15125 assert; it's always possible that the pad gets deactivated in
15126 between the checks in gstpad.c and the implementation. Rely on
15127 finish_preroll() to return a FLUSHING or similar instead of on the
15130 * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
15131 clock and post an EOS message if we come out of finish_preroll in
15134 2005-06-16 David Schleef <ds@schleef.org>
15136 * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
15137 (gst_capsfilter_set_property): Allow NULL as possible value
15138 for filter_caps property, indicating GST_CAPS_ANY.
15140 2005-06-09 Thomas Vander Stichele <thomas at apestaart dot org>
15142 * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
15144 * gst/schedulers/Makefile.am:
15146 * gstreamer.spec.in:
15149 2005-06-09 Thomas Vander Stichele <thomas at apestaart dot org>
15151 * gstreamer.spec.in:
15154 2005-06-08 Andy Wingo <wingo@pobox.com>
15156 * gst/gstutils.c: RPAD fixes all around.
15157 (gst_element_link_pads): Refcounting fixes.
15159 * tools/gst-inspect.c:
15160 * tools/gst-xmlinspect.c:
15162 * gst/base/gsttypefindhelper.c:
15163 * gst/base/gstbasesink.c:
15164 * gst/gstqueue.c: RPAD fixes.
15166 * gst/gstghostpad.h:
15167 * gst/gstghostpad.c: New ghost pad implementation as full proxy
15168 pads. The tricky thing is they provide both source and sink
15169 interfaces, since they proxy the internal pad for the external
15170 pad, and vice versa. Implement with lower-level ProxyPad objects,
15171 with the interior proxy pad as a child of the exterior ghost pad.
15172 Should write a doc on this.
15174 * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
15175 (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
15178 * gst/gstpad.c: Big changes. No more stub base GstPad, now all
15179 pads are real pads. No ghost pads in this file. Not documenting
15180 the myriad s/RPAD/PAD/ and REALIZE fixes.
15181 (gst_pad_class_init): Add properties for "direction" and
15182 "template". Both are construct-only, so they can't change during
15183 the life of the pad. Fixes properly deriving from GstPad.
15184 (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
15185 derived objects, just set properties when creating the objects via
15187 (gst_pad_get_parent): Implement as a function, return NULL if the
15188 parent is not an element.
15189 (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
15190 (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
15192 * gst/gstobject.c (gst_object_class_init): Make name a construct
15193 property. Don't set it in the object init.
15195 * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
15196 with UNKNOWN direction.
15197 (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
15198 with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
15199 (gst_element_remove_pad): Remove ghost-pad special cases.
15200 (gst_element_pads_activate): Remove rpad cruft.
15202 * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
15203 catch the pad's-parent-not-an-element case.
15205 * gst/gst.h: Include gstghostpad.h.
15207 * gst/gst.c (init_post): No more real, ghost pads.
15209 * gst/Makefile.am: Add gstghostpad.[ch].
15211 * check/Makefile.am:
15212 * check/gst/gstbin.c:
15213 * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
15214 into a bin creates ghost pads, and that the refcounts are right.
15215 Partly moved from gstbin.c.
15217 2005-06-08 Thomas Vander Stichele <thomas at apestaart dot org>
15219 * check/gst-libs/.cvsignore:
15220 * check/gst/.cvsignore:
15221 * check/pipelines/.cvsignore:
15223 * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
15224 (START_TEST), (cleanup_suite), (main):
15225 add some tests related to cleanup after running pipelines
15227 2005-06-08 Thomas Vander Stichele <thomas at apestaart dot org>
15229 * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
15230 add a testsuite for GstBuffer
15232 2005-06-08 Thomas Vander Stichele <thomas at apestaart dot org>
15234 * gst/gstminiobject.h:
15235 add defines for accessing the refcount
15237 2005-06-03 Stefan Kost <ensonic@users.sf.net>
15239 * Makefile.am: added support for html unit test coverage reports
15241 2005-06-03 Jan Schmidt <thaytan@mad.scientist.com>
15243 * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
15244 Free existing caps if the capsfilter changes. Add a FIXME about
15245 setting those caps on the pads.
15247 * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
15248 Before adding a ghost pad to a parent bin, check that there isn't
15249 already one for the element on the bin. Prevents infinite recursion
15250 when using decodebin in parse pipelines. Andy says he'll rewrite the
15251 way this works anyway, so ignore the hack.
15253 2005-06-02 Andy Wingo <wingo@pobox.com>
15255 * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
15256 file size, pass it on to the type find helper.
15258 * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
15259 segment_start and segment_end properly according to the seek
15260 method. Segment_end is still a bit flaky because offset can be
15261 negative for CUR and END cases, but it takes -1 as an "unset"
15264 2005-06-02 Wim Taymans <wim@fluendo.com>
15266 * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
15267 (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
15268 (gst_basesink_activate):
15269 * gst/base/gstbasesink.h:
15270 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
15271 (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
15272 (gst_pad_query), (gst_pad_start_task):
15274 * gst/gstqueue.c: (gst_queue_bufferalloc),
15275 (gst_queue_handle_sink_event), (gst_queue_chain):
15276 Bufferalloc: return GstFlowReturn to more accuratly report
15277 why allocation failed.
15279 2005-06-02 Wim Taymans <wim@fluendo.com>
15281 * gst/gstpipeline.c: (gst_pipeline_send_event):
15282 Take snapshot of state without blocking.
15284 2005-06-02 Wim Taymans <wim@fluendo.com>
15286 * docs/design/part-TODO.txt:
15287 * docs/design/part-caps.txt:
15288 * docs/design/part-clocks.txt:
15289 * docs/design/part-negotiation.txt:
15290 * docs/design/part-preroll.txt:
15293 2005-05-30 Wim Taymans <wim@fluendo.com>
15295 * gst/elements/gstidentity.c: (gst_identity_event),
15296 (gst_identity_transform), (gst_identity_get_property):
15297 Protect last_message property as it is accessed from
15300 2005-05-30 Wim Taymans <wim@fluendo.com>
15302 * gst/gstelement.c: (gst_element_init),
15303 (gst_element_pads_activate), (gst_element_change_state):
15304 Slicker pad activation code.
15306 2005-05-30 Wim Taymans <wim@fluendo.com>
15309 * gst/gstelement.h:
15310 * gst/gstelementfactory.h:
15312 Move elementfactory methods to separate .h file.
15314 2005-05-30 Wim Taymans <wim@fluendo.com>
15316 * docs/design/part-overview.txt:
15317 * gst/gstsystemclock.h:
15318 Small typo fixes, doc updates.
15320 2005-05-30 Wim Taymans <wim@fluendo.com>
15322 * gst/gst.c: (gst_init_get_popt_table), (init_post),
15323 (init_popt_callback):
15324 Remove cpu-opt flag.
15326 2005-05-30 Wim Taymans <wim@fluendo.com>
15328 * gst/gstbuffer.c: (gst_subbuffer_finalize),
15329 (gst_buffer_create_sub), (gst_buffer_is_span_fast):
15331 Avoid typechecking in places where not needed.
15332 Added accessor for malloc_data.
15334 2005-05-30 Wim Taymans <wim@fluendo.com>
15336 * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
15337 (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
15338 (gst_pad_configure_sink), (gst_pad_configure_src),
15339 (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
15340 (gst_pad_start_task):
15341 Propagate errors from _set_caps() in configure_src/sink
15342 functions instead of returning TRUE.
15343 FLUSH events can travel up and downstream
15346 2005-05-30 Wim Taymans <wim@fluendo.com>
15348 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
15349 (gst_basesink_activate):
15350 Handle EOS in preroll.
15352 2005-05-30 Wim Taymans <wim@fluendo.com>
15354 * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
15355 (gst_queue_loop), (gst_queue_handle_src_event):
15356 Remove old pieces of code
15357 Flushing the queue in an upstream event is a very bad idea.
15359 2005-05-26 Andy Wingo <wingo@pobox.com>
15361 * gst/gstminiobject.c (gst_value_mini_object_collect): Use
15362 gst_value_set_mini_object so as to add a ref on the object (which
15363 will be removed when the value is unset).
15365 * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
15366 arg type in ::handoff.
15368 * gst/gstelement.c (gst_element_change_state): Also deactivate
15369 pads in READY->NULL, just in case the element didn't make it to
15370 PAUSED. Wingo tested, Wim approved.
15372 2005-05-26 Wim Taymans <wim@fluendo.com>
15374 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
15375 (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
15376 (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
15377 A flushing pad cannot be used to alloc_buffer from.
15379 2005-05-26 Wim Taymans <wim@fluendo.com>
15381 * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
15382 (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
15383 (gst_bus_source_dispatch), (gst_bus_source_finalize),
15384 (gst_bus_create_watch), (gst_bus_add_watch_full):
15386 Implement a real GSource and use g_main_context_wakeup() to
15387 signal new messages instead of the socketpair.
15389 2005-05-25 Wim Taymans <wim@fluendo.com>
15391 * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
15392 (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
15393 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
15394 (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
15395 (gst_pad_send_event), (gst_pad_start_task):
15396 * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
15397 (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
15398 (gst_queue_sink_activate), (gst_queue_src_activate),
15399 (gst_queue_change_state):
15401 Fix state changes for non sinks. We now change sinks, then elements
15402 with unconnected srcpads, then the rest.
15403 More efficient queue unlocking in flush and state changes.
15404 Set the pad activate mode even if it does not have an activate
15407 2005-05-25 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
15409 * gst/base/gstbasesrc.c: (gst_basesrc_activate):
15410 Don't go in pull mode for non-seekable sources.
15411 * gst/elements/gsttypefindelement.h:
15412 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
15413 (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
15414 (free_entry), (stop_typefinding),
15415 (gst_type_find_element_handle_event), (find_peek),
15416 (gst_type_find_element_chain), (do_pull_typefind),
15417 (gst_type_find_element_change_state):
15418 Allow typefinding (w/o seeking) in push-mode, simplified version
15419 of what was in 0.8.
15420 * gst/gstutils.c: (gst_buffer_join):
15422 gst_buffer_join() from 0.8.
15424 2005-05-25 Wim Taymans <wim@fluendo.com>
15426 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
15427 (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
15428 (gst_pad_send_event), (gst_pad_start_task):
15429 Disable attempt at mode switching until it is figured out.
15431 2005-05-25 Wim Taymans <wim@fluendo.com>
15433 * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
15434 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
15435 (gst_basesink_finish_preroll), (gst_basesink_chain),
15436 (gst_basesink_loop), (gst_basesink_activate),
15437 (gst_basesink_change_state):
15438 * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
15439 (gst_basesrc_get_range), (gst_basesrc_loop),
15440 (gst_basesrc_activate):
15441 * gst/elements/gsttee.c: (gst_tee_sink_activate):
15442 * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
15443 (gst_real_pad_init), (gst_real_pad_set_property),
15444 (gst_real_pad_get_property), (gst_pad_set_active),
15445 (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
15446 (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
15447 (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
15448 (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
15449 (gst_pad_event_default_dispatch), (gst_pad_event_default),
15450 (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
15451 (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
15452 (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
15453 (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
15454 (gst_pad_stop_task):
15456 * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
15457 (gst_queue_loop), (gst_queue_src_activate):
15458 * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
15459 (gst_task_get_state):
15461 * gst/schedulers/threadscheduler.c:
15462 (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
15463 Implement gst_pad_pause/start/stop_task(), take STREAM lock
15465 Remove ACTIVE pad flag, use FLUSHING everywhere
15466 Added _pad_chain(), _pad_get_range() to call chain/getrange
15468 Add locks around IS_FLUSHING when reading.
15469 Take STREAM lock in chain(), get_range() functions so plugins
15470 don't need to take it anymore.
15474 2005-05-25 Wim Taymans <wim@fluendo.com>
15476 * tools/gst-launch.c: (event_loop):
15477 Unref message after using its contents instead of
15480 2005-05-24 Wim Taymans <wim@fluendo.com>
15482 * docs/design/draft-ghostpads.txt:
15483 * docs/design/draft-push-pull.txt:
15484 * docs/design/draft-query.txt:
15485 * docs/design/part-overview.txt:
15486 Docs updates, added general overview doc.
15488 2005-05-21 David Schleef <ds@schleef.org>
15490 * docs/gst/tmpl/old/GstBin.sgml:
15491 * docs/gst/tmpl/old/GstBuffer.sgml:
15492 * docs/gst/tmpl/old/GstCaps.sgml:
15493 * docs/gst/tmpl/old/GstClock.sgml:
15494 * docs/gst/tmpl/old/GstCompat.sgml:
15495 * docs/gst/tmpl/old/GstData.sgml:
15496 * docs/gst/tmpl/old/GstElement.sgml:
15497 * docs/gst/tmpl/old/GstEvent.sgml:
15498 * docs/gst/tmpl/old/GstIndex.sgml:
15499 * docs/gst/tmpl/old/GstStructure.sgml:
15500 * docs/gst/tmpl/old/GstTag.sgml:
15501 * docs/gst/tmpl/old/cothreads.sgml:
15502 * docs/gst/tmpl/old/cothreads_compat.sgml:
15503 * docs/gst/tmpl/old/gettext.sgml:
15504 * docs/gst/tmpl/old/gobject2gtk.sgml:
15505 * docs/gst/tmpl/old/grammar.tab.sgml:
15506 * docs/gst/tmpl/old/gst-i18n-app.sgml:
15507 * docs/gst/tmpl/old/gst-i18n-lib.sgml:
15508 * docs/gst/tmpl/old/gst_private.sgml:
15509 * docs/gst/tmpl/old/gstaggregator.sgml:
15510 * docs/gst/tmpl/old/gstarch.sgml:
15511 * docs/gst/tmpl/old/gstatomic_impl.sgml:
15512 * docs/gst/tmpl/old/gstbufferstore.sgml:
15513 * docs/gst/tmpl/old/gstdata_private.sgml:
15514 * docs/gst/tmpl/old/gstdisksink.sgml:
15515 * docs/gst/tmpl/old/gstdisksrc.sgml:
15516 * docs/gst/tmpl/old/gstelementfactory.sgml:
15517 * docs/gst/tmpl/old/gstextratypes.sgml:
15518 * docs/gst/tmpl/old/gstfakesink.sgml:
15519 * docs/gst/tmpl/old/gstfakesrc.sgml:
15520 * docs/gst/tmpl/old/gstfdsink.sgml:
15521 * docs/gst/tmpl/old/gstfdsrc.sgml:
15522 * docs/gst/tmpl/old/gstfilesink.sgml:
15523 * docs/gst/tmpl/old/gstfilesrc.sgml:
15524 * docs/gst/tmpl/old/gsthttpsrc.sgml:
15525 * docs/gst/tmpl/old/gstidentity.sgml:
15526 * docs/gst/tmpl/old/gstindexfactory.sgml:
15527 * docs/gst/tmpl/old/gstmarshal.sgml:
15528 * docs/gst/tmpl/old/gstmd5sink.sgml:
15529 * docs/gst/tmpl/old/gstmultidisksrc.sgml:
15530 * docs/gst/tmpl/old/gstmultifilesrc.sgml:
15531 * docs/gst/tmpl/old/gstpadtemplate.sgml:
15532 * docs/gst/tmpl/old/gstpipefilter.sgml:
15533 * docs/gst/tmpl/old/gstschedulerfactory.sgml:
15534 * docs/gst/tmpl/old/gstsearchfuncs.sgml:
15535 * docs/gst/tmpl/old/gstshaper.sgml:
15536 * docs/gst/tmpl/old/gstspider.sgml:
15537 * docs/gst/tmpl/old/gstspideridentity.sgml:
15538 * docs/gst/tmpl/old/gststatistics.sgml:
15539 * docs/gst/tmpl/old/gsttee.sgml:
15540 * docs/gst/tmpl/old/gsttimecache.sgml:
15541 * docs/gst/tmpl/old/gsttypefindfactory.sgml:
15542 * docs/gst/tmpl/old/gstxmlregistry.sgml:
15543 * docs/gst/tmpl/old/gthread-cothreads.sgml:
15544 * docs/gst/tmpl/old/types.sgml:
15545 I didn't intend to add these or check them in.
15547 2005-05-19 David Schleef <ds@schleef.org>
15549 * configure.ac: Use -no-common everywhere. In a sane world, it
15550 would be the default in libtool, because without it, you can't
15551 build DLLs on Windows.
15552 * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
15553 * docs/gst/gstreamer-sections.txt:
15554 * docs/gst/tmpl/gstcpu.sgml:
15555 * docs/gst/tmpl/gstdata.sgml:
15556 * docs/gst/tmpl/gstthread.sgml:
15558 2005-05-19 David Schleef <ds@schleef.org>
15560 * gst/gstminiobject.c: (gst_value_set_mini_object),
15561 (gst_value_take_mini_object), (gst_value_get_mini_object):
15562 * gst/gstminiobject.h: Add GValue set/get functions.
15564 2005-05-19 Wim Taymans <wim@fluendo.com>
15566 * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
15567 (gst_subbuffer_class_init), (gst_subbuffer_finalize),
15568 (gst_subbuffer_init), (gst_buffer_is_span_fast):
15570 * gst/gstbus.c: (gst_bus_post):
15571 * gst/gstelement.c: (gst_element_get_random_pad):
15572 * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
15573 Make subbufer unref the parent in finalize.
15574 some more debugging info.
15577 2005-05-19 Wim Taymans <wim@fluendo.com>
15579 * gst/base/gstbasesink.c: (gst_basesink_class_init),
15580 (gst_basesink_init), (gst_basesink_finalize),
15581 (gst_basesink_activate), (gst_basesink_change_state):
15582 Don't free preroll queue too early.
15584 2005-05-19 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
15588 Hi, I'm outdated. Please shoot me.
15590 2005-05-19 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
15592 * gst/gstpipeline.c: (gst_pipeline_send_event):
15593 Do not access variables after they have been deleted.
15595 2005-05-19 Wim Taymans <wim@fluendo.com>
15597 * tools/gst-inspect.c: (print_plugin_features):
15598 A plugin feature does unfortunatly not use the
15601 2005-05-18 Wim Taymans <wim@fluendo.com>
15603 * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
15604 Port _span() functions to new subbuffers.
15606 2005-05-18 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
15608 * gst/gstbin.c: (gst_bin_add_func):
15609 Fix clock settery in bins when adding kids after the clock has
15612 2005-05-18 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
15614 * gst/elements/gstidentity.c: (gst_identity_class_init):
15615 Workaround until signals support GstMiniObject.
15617 2005-05-18 Jan Schmidt <thaytan@mad.scientist.com>
15620 Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
15622 2005-05-18 Wim Taymans <wim@fluendo.com>
15624 * gst/base/Makefile.am:
15625 * gst/base/gstadapter.c: (gst_adapter_base_init),
15626 (gst_adapter_class_init), (gst_adapter_init),
15627 (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
15628 (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
15629 (gst_adapter_flush), (gst_adapter_available),
15630 (gst_adapter_available_fast):
15631 * gst/base/gstadapter.h:
15632 Ported and added adapter to the base classes.
15634 2005-05-17 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
15637 * gst/gstmessage.c:
15638 Make sure the class is reffed/unreffed once before threads can be
15639 used. Fixes #304551.
15641 2005-05-17 Wim Taymans <wim@fluendo.com>
15643 * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
15644 (gst_basesink_chain_unlocked), (gst_basesink_activate):
15645 * gst/gstminiobject.c: (gst_mini_object_get_type),
15646 (gst_mini_object_free):
15647 * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
15648 (gst_pad_push), (gst_pad_push_event):
15649 * gst/gstqueue.c: (gst_queue_change_state):
15650 Don't queue buffers in basesink when we are flushing.
15651 Unref buffer when flushing in basesink.
15652 Flush queue when going to READY
15653 Unref buffer when _push() returns an error.
15654 Don't free MiniObject instance when refcount is incremented
15655 in _finalize() so that we can recover objects.
15657 2005-05-17 Thomas Vander Stichele <thomas at apestaart dot org>
15659 * docs/manual/advanced-schedulers.xml:
15660 * docs/manual/appendix-checklist.xml:
15661 * docs/pwg/advanced-clock.xml:
15662 * docs/pwg/advanced-interfaces.xml:
15663 * docs/pwg/advanced-request.xml:
15664 * docs/pwg/advanced-types.xml:
15665 * docs/pwg/intro-preface.xml:
15666 * examples/plugins/example.c: (gst_example_get_type),
15667 (gst_example_class_init), (gst_example_chain),
15668 (gst_example_set_property), (gst_example_get_property),
15669 (gst_example_change_state), (plugin_init):
15670 * examples/plugins/example.h:
15673 2005-05-17 Wim Taymans <wim@fluendo.com>
15675 * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
15676 (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
15677 * gst/gstqueue.c: (gst_queue_change_state):
15678 Clear queue when going to READY.
15679 Remove IN_SETCAPS flag too.
15681 2005-05-17 Tim-Philipp Müller <tim at centricular dot net>
15683 * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
15684 Remove implicit cast from gboolean to GstElementStateReturn;
15685 make sure we still return failure in paused => ready case if
15686 the parent class fails to change state and our own stop
15689 2005-05-17 Wim Taymans <wim@fluendo.com>
15691 * tools/gst-launch.c: (event_loop):
15692 Message was unreffed too soon.
15694 2005-05-16 Andy Wingo <wingo@pobox.com>
15696 * gst/gstbin.c (sink_iterator_filter): Err... um...
15698 * check/gst/gstbin.c (test_ghost_pads): New test for the
15699 ghosting-if-elements-not-in-same-bin behavior.
15701 2005-05-16 David Schleef <ds@schleef.org>
15703 * gst/gstminiobject.c: Use g_atomic_int_get() instead of
15704 accessing refcount directly.
15706 2005-05-15 David Schleef <ds@schleef.org>
15708 * check/Makefile.am: remove GstData checks
15709 * check/gst-libs/gdp.c: (START_TEST): fix for API changes
15710 * gst/Makefile.am: add miniobject, remove data
15711 * gst/gst.h: add miniobject, remove data
15712 * gst/gstdata.c: remove
15713 * gst/gstdata.h: remove
15714 * gst/gstdata_private.h: remove
15715 * gst/gsttypes.h: remove GstEvent and GstMessage
15716 * gst/gstelement.c: (gst_element_post_message): fix for API changes
15717 * gst/gstmarshal.list: change BOXED -> OBJECT
15719 Implement GstMiniObject.
15720 * gst/gstminiobject.c:
15721 * gst/gstminiobject.h:
15723 Modify to be subclasses of GstMiniObject.
15724 * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
15725 (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
15726 (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
15727 (gst_subbuffer_get_type), (gst_subbuffer_init),
15728 (gst_buffer_create_sub), (gst_buffer_is_span_fast),
15731 * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
15732 (gst_event_class_init), (gst_event_init), (gst_event_finalize),
15733 (_gst_event_copy), (gst_event_new):
15735 * gst/gstmessage.c: (_gst_message_initialize),
15736 (gst_message_get_type), (gst_message_class_init),
15737 (gst_message_init), (gst_message_finalize), (_gst_message_copy),
15738 (gst_message_new), (gst_message_new_error),
15739 (gst_message_new_warning), (gst_message_new_tag),
15740 (gst_message_new_state_changed), (gst_message_new_application):
15741 * gst/gstmessage.h:
15742 * gst/gstprobe.c: (gst_probe_perform),
15743 (gst_probe_dispatcher_dispatch):
15745 * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
15746 (gst_query_class_init), (gst_query_finalize), (gst_query_init),
15747 (_gst_query_copy), (gst_query_new):
15749 Update elements for GstData -> GstMiniObject changes
15751 * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
15752 (gst_queue_chain), (gst_queue_loop):
15753 * gst/elements/gstbufferstore.c:
15754 (gst_buffer_store_add_buffer_func),
15755 (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
15756 * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
15757 (gst_fakesink_render):
15758 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
15759 * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
15760 (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
15761 (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
15762 (gst_filesrc_create_read):
15763 * gst/elements/gstidentity.c: (gst_identity_class_init):
15764 * gst/elements/gsttypefindelement.c:
15765 (gst_type_find_element_src_event), (free_entry_buffers),
15766 (gst_type_find_element_handle_event):
15767 * libs/gst/dataprotocol/dataprotocol.c:
15768 (gst_dp_header_from_buffer):
15769 * libs/gst/dataprotocol/dataprotocol.h:
15770 * libs/gst/dataprotocol/dp-private.h:
15772 2005-05-15 David Schleef <ds@schleef.org>
15774 * gst/elements/gstelements.c: Don't include headers that were
15777 2005-05-15 David Schleef <ds@schleef.org>
15779 * gst/elements/Makefile.am: Remove some elements that don't
15780 need to be in the core (or even exist at all).
15781 * gst/elements/gstaggregator.c:
15782 * gst/elements/gstaggregator.h:
15783 * gst/elements/gstmd5sink.c:
15784 * gst/elements/gstmd5sink.h:
15785 * gst/elements/gstmultifilesrc.c:
15786 * gst/elements/gstmultifilesrc.h:
15787 * gst/elements/gstpipefilter.c:
15788 * gst/elements/gstpipefilter.h:
15789 * gst/elements/gstshaper.c:
15790 * gst/elements/gstshaper.h:
15791 * gst/elements/gststatistics.c:
15792 * gst/elements/gststatistics.h:
15793 * po/POTFILES.in: Remove above files.
15795 2005-05-14 Andy Wingo <wingo@pobox.com>
15797 * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
15798 so as to get the refs right.
15799 (sink_iterator_filter): New function, wraps bin_element_is_sink,
15800 unreffing objects that don't pass the filter.
15802 * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
15803 gst_element_set_bus.
15804 (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
15805 normal cases, this will destroy the bus.
15807 * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
15810 * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
15813 2005-05-13 Andy Wingo <wingo@pobox.com>
15815 * gst/gstutils.c (gst_element_link_pads): Instead of calling
15816 gst_pad_link, call pad_link_maybe_ghosting,
15817 (pad_link_maybe_ghosting): Links pads, making sure that the
15818 elements being linked are in the same bin.
15819 (find_common_root, object_has_ancestor, ghost_up, remove_pad):
15820 Helpers for pad_link_maybe_ghosting.
15822 2005-05-13 Tim-Philipp Müller <tim at centricular dot net>
15825 Require GLib >= 2.4.0 (for the g_atomic_* funcs)
15827 2005-05-13 Tim-Philipp Müller <tim at centricular dot net>
15829 * docs/design/part-element-source.txt:
15832 2005-05-12 Wim Taymans <wim@fluendo.com>
15834 * gst/base/gstbasesink.c: (gst_basesink_init),
15835 (gst_basesink_activate):
15836 * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
15837 (gst_basesrc_is_seekable):
15838 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
15839 (bin_element_is_sink), (gst_bin_change_state):
15840 * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
15841 * gst/gstelement.h:
15842 Identify sinks by their flag to avoid overly complicated
15844 Do state changes even for elements not reachable from the
15846 BaseSink is a sink now :)
15847 Some more debugging info in the basesrc.
15850 2005-05-12 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
15852 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
15853 Implement _query on a bin, similar to _send_event.
15855 2005-05-12 Tim-Philipp Müller <tim at centricular dot net>
15857 * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
15858 Discont event offset format should be GST_FORMAT_BYTES,
15859 not GST_FORMAT_TIME.
15861 2005-05-12 Wim Taymans <wim@fluendo.com>
15863 * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
15864 Same fix as Ronald's but without the signal.
15866 2005-05-12 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
15868 * gst/gstutils.c: (gst_element_query_position):
15869 No, an element is not a pad.
15871 2005-05-12 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
15873 * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
15874 (gst_bin_get_state):
15875 If a child is removed from a bin while we remove the child from
15876 the bin and while we're retrieving its state, signal this to the
15877 get_state function so we abort the wait (instead of waiting for
15878 a timeout) and can immediately re-iterate over all other elements.
15880 2005-05-12 Wim Taymans <wim@fluendo.com>
15882 * gst/base/Makefile.am:
15883 * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
15884 (gst_basesrc_start):
15885 * gst/base/gstbasesrc.h:
15886 * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
15887 (gst_pushsrc_base_init), (gst_pushsrc_class_init),
15888 (gst_pushsrc_init), (gst_pushsrc_create):
15889 * gst/base/gstpushsrc.h:
15890 Added is_seekable to BaseSrc
15891 Added simple PushSrc.
15893 2005-05-11 Wim Taymans <wim@fluendo.com>
15895 * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
15896 * gst/gstutils.c: (gst_element_get_compatible_pad_template),
15897 (gst_element_link_pads), (gst_element_query_position),
15898 (gst_element_query_convert), (intersect_caps_func),
15899 (gst_pad_query_position), (gst_pad_query_convert):
15900 Fix refcounting in utils function.
15901 No point in trying to activate a pad when it's added, it could
15902 be added from the state change function and then we deadlock, the
15903 element has to decide what to do.
15905 2005-05-10 Andy Wingo <wingo@pobox.com>
15907 * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
15908 *all* the arguments.
15910 * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
15911 stream lock if it's a FLUSH_DONE; normal flushes don't get the
15912 lock (according to the docs -- if this is wrong change the docs).
15914 * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
15915 flush messages in the NULL state.
15917 * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
15918 message immediately and return.
15919 (gst_bus_set_flushing): New function. If a bus is flushing, it
15920 flushes out any queued messages and immediately unrefs new
15921 messages. This is so when an element goes to NULL, all of the
15922 unhandled messages coming from it can be freed, and their
15923 references to the element dropped. In other words: message source
15924 ref considered harmful :P
15926 * gst/gstbin.c (gst_bin_change_state): Unref peer element when
15927 we're finished with it.
15929 * gst/gstmessage.c (gst_message_new_state_changed):
15931 2005-05-10 Wim Taymans <wim@fluendo.com>
15933 * gst/gstvalue.c: (gst_value_compare_flags),
15934 (gst_value_serialize_flags), (gst_value_deserialize_flags),
15935 (_gst_value_initialize):
15936 Added flags serialize/deserialize/compare code.
15938 2005-05-09 Andy Wingo <wingo@pobox.com>
15940 * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
15941 Intersect the peer's caps with our caps.
15943 2005-05-09 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
15945 * gst/base/gsttypefindhelper.c: (helper_find_peek):
15946 * gst/elements/gsttypefindelement.c: (find_peek):
15947 Handle negative offsets better. Fixes decodebin.
15949 2005-05-09 Wim Taymans <wim@fluendo.com>
15951 * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
15952 (gst_base_transform_event):
15953 * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
15954 Implement accept_caps.
15955 Fix silly lock/unlock mismatch in base class.
15957 2005-05-09 Wim Taymans <wim@fluendo.com>
15959 * docs/design/draft-push-pull.txt:
15960 * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
15961 * gst/elements/gstfilesink.c: (gst_filesink_init),
15962 (gst_filesink_query):
15963 * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
15964 (gst_type_find_handle_src_query), (find_element_get_length):
15965 * gst/gstelement.c: (gst_element_seek), (gst_element_query):
15966 * gst/gstelement.h:
15967 * gst/gstmessage.c:
15968 * gst/gstmessage.h:
15969 * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
15970 (gst_real_pad_get_caps_unlocked),
15971 (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
15972 (gst_pad_event_default_dispatch), (gst_pad_event_default),
15973 (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
15974 (gst_real_pad_dispose), (gst_real_pad_finalize),
15975 (gst_pad_load_and_link), (gst_pad_save_thyself),
15976 (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
15977 (gst_pad_check_pull_range), (gst_pad_pull_range),
15978 (gst_pad_template_get_type), (gst_pad_template_class_init),
15979 (gst_pad_template_init), (gst_pad_template_dispose),
15980 (name_is_valid), (gst_static_pad_template_get),
15981 (gst_pad_template_new), (gst_static_pad_template_get_caps),
15982 (gst_pad_template_get_caps), (gst_pad_set_element_private),
15983 (gst_pad_get_element_private), (gst_pad_start_task),
15984 (gst_pad_pause_task), (gst_pad_stop_task),
15985 (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
15986 (gst_ghost_pad_init), (gst_ghost_pad_dispose),
15987 (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
15988 (gst_ghost_pad_new):
15990 * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
15991 (gst_query_new_position), (gst_query_set_position),
15992 (gst_query_parse_position), (gst_query_new_convert),
15993 (gst_query_set_convert), (gst_query_parse_convert):
15995 * gst/gstqueryutils.c:
15996 * gst/gstqueryutils.h:
15997 * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
15998 (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
15999 (gst_queue_handle_src_query):
16000 * gst/gstutils.c: (gst_element_get_compatible_pad_template),
16001 (gst_element_query_position), (gst_element_query_convert),
16002 (intersect_caps_func), (gst_pad_query_position),
16003 (gst_pad_query_convert):
16005 * tools/gst-inspect.c: (print_pad_info):
16006 * tools/gst-xmlinspect.c: (print_element_info):
16007 Remove old query functions. Ported old code.
16008 Added position/convert helper functions to gstutils.
16009 Reordered gstpad.c code, grouping relevant things.
16010 Remove gst_message_new(), always need to speficy a specific
16014 2005-05-09 Andy Wingo <wingo@pobox.com>
16016 * gst/gstiterator.h: Add some includes.
16018 * gst/gstqueryutils.h: Include more headers.
16021 * gst/gstpad.c (gst_pad_query_position): New routine, replaces
16022 some uses of gst_pad_query.
16024 * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
16025 NULL out parameters.
16026 (gst_query_new_position): New proc, allocates a new position
16029 * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
16030 gstqueryutils.c to the build.
16032 * gst/gststructure.c (gst_structure_set_valist): Implement with
16033 the generic G_VALUE_COLLECT.
16035 2005-05-08 Edward Hervey <bilboed@bilboed.com>
16037 * gst/Makefile.am: (gst_headers):
16038 Added gstqueryutils.h to the list of headers to install, that was
16039 a 'nachty' move wingo :)
16041 2005-05-06 Andy Wingo <wingo@pobox.com>
16044 * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
16045 GstData, init a memchunk.
16046 (standard_definitions): Add a few query types, deprecate a few.
16047 (gst_query_get_type): New proc.
16048 (_gst_query_copy, _gst_query_free, gst_query_new): GstData
16050 (gst_query_new_application, gst_query_get_structure): New public
16053 * docs/design/draft-query.txt: Removed LINKS from the query types,
16054 because all the rest can be dispatched to other pads -- seemed
16055 ugly to have a query that couldn't be dispatched. internal_links
16056 is fine as a pad method.
16058 * gst/gstpad.h: Add query2 as a pad method, add the new functions
16059 in gstpad.c, but maintain binary compatibility for the moment.
16060 Will fix before 0.9 is out.
16062 * gst/gstqueryutils.c:
16063 * gst/gstqueryutils.h: New files, implement 3 methods for each
16064 query type: parse_query, parse_response, and set. Probably need an
16067 * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
16069 * gst/elements/gstfilesink.c (gst_filesink_query2):
16070 * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
16071 query_types, and formats methods.
16073 * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
16074 (gst_pad_set_query2_function): New functions.
16075 (gst_real_pad_init): Set query2_default as the default query2
16076 function. Basically just dispatches to internally linked pads.
16080 * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
16081 without using the atomic operations. Only one thread can possibly
16082 be accessing the data at this point. Changed so as to avoid
16083 gst_atomic operations.
16085 2005-05-06 Wim Taymans <wim@fluendo.com>
16087 * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
16088 Also set caps if we use the fallback buffer alloc.
16090 2005-05-06 Tim-Philipp Müller <tim at centricular dot net>
16092 * docs/gst/Makefile.am:
16093 * docs/gst/gstreamer-docs.sgml:
16094 * docs/gst/gstreamer-sections.txt:
16095 * docs/gst/tmpl/gstatomic.sgml:
16096 * docs/gst/tmpl/gstmemchunk.sgml:
16097 * testsuite/elements/struct_i386.h:
16098 * win32/GStreamer.vcproj:
16100 Purge GstAtomic stuff from docs and win32 makefiles as well
16102 2005-05-06 Wim Taymans <wim@fluendo.com>
16104 * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
16105 * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
16106 * gst/gstpad.c: (gst_pad_peer_get_caps):
16107 * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
16108 (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
16109 (gst_queue_src_activate), (gst_queue_change_state):
16111 * gst/gstutils.c: (gst_element_get_compatible_pad_template),
16112 (intersect_caps_func):
16113 Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
16114 Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
16115 Some fixes for the peer_get_caps() change.
16117 2005-05-06 Wim Taymans <wim@fluendo.com>
16119 * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
16120 (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
16121 (gst_basesink_activate):
16122 Actually do something with error codes returned from the push
16125 2005-05-06 Wim Taymans <wim@fluendo.com>
16127 * docs/design/part-element-sink.txt:
16128 * docs/design/part-element-source.txt:
16129 * gst/base/gstbasesink.c: (gst_basesink_class_init),
16130 (gst_basesink_event), (gst_basesink_activate):
16131 * gst/base/gstbasesink.h:
16132 * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
16133 (gst_basesrc_activate):
16134 * gst/base/gstbasesrc.h:
16135 * gst/gstelement.c: (gst_element_pads_activate):
16136 Some more documentation.
16137 Fixed scheduling decision in _pads_activate().
16139 2005-05-05 Andy Wingo <wingo@pobox.com>
16141 * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
16144 2005-05-05 Wim Taymans <wim@fluendo.com>
16146 * gst/base/Makefile.am:
16147 * gst/base/gstbasesink.h:
16148 * gst/base/gstbasesrc.c: (gst_basesrc_init),
16149 (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
16150 * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
16151 (gst_collectpads_class_init), (gst_collectpads_init),
16152 (gst_collectpads_finalize), (gst_collectpads_new),
16153 (gst_collectpads_set_function), (gst_collectpads_add_pad),
16154 (find_pad), (gst_collectpads_remove_pad),
16155 (gst_collectpads_is_active), (gst_collectpads_collect),
16156 (gst_collectpads_collect_range), (gst_collectpads_start),
16157 (gst_collectpads_stop), (gst_collectpads_peek),
16158 (gst_collectpads_pop), (gst_collectpads_available),
16159 (gst_collectpads_read), (gst_collectpads_flush),
16160 (gst_collectpads_chain):
16161 * gst/base/gstcollectpads.h:
16162 * gst/elements/Makefile.am:
16163 * gst/elements/gstelements.c:
16164 * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
16165 (gst_fakesink_get_times), (gst_fakesink_event),
16166 (gst_fakesink_preroll), (gst_fakesink_render):
16167 * gst/elements/gstfilesink.c: (gst_filesink_class_init),
16168 (gst_filesink_init), (gst_filesink_set_location),
16169 (gst_filesink_open_file), (gst_filesink_close_file),
16170 (gst_filesink_pad_query), (gst_filesink_event),
16171 (gst_filesink_render), (gst_filesink_change_state):
16172 * gst/elements/gstfilesink.h:
16173 Added object to help in making collect pad based elements.
16175 Make event function in sink baseclass return gboolean.
16177 2005-05-05 Wim Taymans <wim@fluendo.com>
16179 * gst/gstbin.c: (gst_bin_send_event), (compare_name),
16180 (gst_bin_get_by_name):
16182 * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
16183 (gst_clock_finalize):
16184 * gst/gstdata.c: (gst_data_replace):
16186 * gst/gstelement.c: (gst_element_request_pad),
16187 (gst_element_pads_activate):
16188 * gst/gstobject.c: (gst_object_init), (gst_object_ref),
16189 (gst_object_unref):
16190 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
16191 (gst_pad_set_checkgetrange_function),
16192 (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
16193 (gst_pad_check_pull_range), (gst_pad_pull_range),
16194 (gst_static_pad_template_get_caps), (gst_pad_start_task),
16195 (gst_pad_pause_task), (gst_pad_stop_task):
16196 * gst/gstutils.c: (gst_element_get_compatible_pad_template),
16197 (gst_element_request_pad), (gst_pad_proxy_getcaps):
16198 Fix name lookup in GstBin.
16199 Added _data_replace() function and _buffer_replace()
16200 Use finalize method to clean up clock.
16201 Fix refcounting on request pads.
16202 Fix pad schedule mode error.
16203 Some more object refcounting debug info,
16206 2005-05-04 Andy Wingo <wingo@pobox.com>
16208 * check/Makefile.am:
16209 * docs/gst/tmpl/gstatomic.sgml:
16210 * docs/gst/tmpl/gstplugin.sgml:
16211 * gst/base/gstbasesink.c: (gst_basesink_activate):
16212 * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
16213 (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
16214 (gst_basesrc_query), (gst_basesrc_set_property),
16215 (gst_basesrc_get_property), (gst_basesrc_check_get_range),
16216 (gst_basesrc_activate):
16217 * gst/base/gstbasesrc.h:
16218 * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
16219 (gst_base_transform_src_activate):
16220 * gst/elements/gstelements.c:
16221 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
16222 (gst_fakesrc_set_property), (gst_fakesrc_get_property):
16223 * gst/elements/gsttee.c: (gst_tee_sink_activate):
16224 * gst/elements/gsttypefindelement.c: (find_element_get_length),
16225 (gst_type_find_element_checkgetrange),
16226 (gst_type_find_element_activate):
16227 * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
16228 * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
16229 (gst_caps_load_thyself):
16230 * gst/gstelement.c: (gst_element_pads_activate),
16231 (gst_element_save_thyself), (gst_element_restore_thyself):
16232 * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
16233 (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
16235 * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
16236 (gst_xml_parse_file), (gst_xml_parse_memory),
16237 (gst_xml_get_element), (gst_xml_make_element):
16238 * gst/indexers/gstfileindex.c: (gst_file_index_load),
16239 (_file_index_id_save_xml), (gst_file_index_commit):
16240 * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
16241 (read_enum), (load_pad_template), (load_feature), (load_plugin),
16243 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
16244 (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
16245 * tools/gst-complete.c: (main):
16246 * tools/gst-compprep.c: (main):
16247 * tools/gst-inspect.c: (print_element_properties_info):
16248 * tools/gst-launch.c: (xmllaunch_parse_cmdline):
16249 * tools/gst-xmlinspect.c: (print_element_properties):
16252 2005-05-03 Thomas Vander Stichele <thomas at apestaart dot org>
16254 * gst/gstplugin.c: (gst_plugin_check_module),
16255 (gst_plugin_check_file), (gst_plugin_load_file):
16256 apply patch from #172526 to make register work on MacOSX
16258 2005-05-02 Thomas Vander Stichele <thomas at apestaart dot org>
16260 * docs/gst/tmpl/gstconfig.sgml:
16261 * gst/gstconfig.h.in:
16262 move documentation for some symbols. Add doc for GST_PTR_FORMAT
16263 * testsuite/debug/printf_extension.c: (main):
16264 Do not use GST_PTR_FORMAT on pointers to types with
16265 sizeof < sizeof(gpointer). Fixes test on 64-bit
16266 * testsuite/elements/property.h:
16267 use correct printf format
16269 2005-05-02 Wim Taymans <wim@fluendo.com>
16271 * docs/design/draft-push-pull.txt:
16272 * docs/design/draft-query.txt:
16273 * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
16274 (gst_basesrc_start):
16275 Added draft for new query API.
16276 Added draft for better selecting scheduling methods.
16277 Make basesrc ignore length if the subclass does not support
16280 2005-05-02 Thomas Vander Stichele <thomas at apestaart dot org>
16283 possible fixes for automake-1.5 - _LIBADD is reserved
16285 2005-05-02 Thomas Vander Stichele <thomas at apestaart dot org>
16287 * docs/faq/Makefile.am:
16288 * docs/manual/Makefile.am:
16289 * docs/manuals.mak:
16290 * docs/pwg/Makefile.am:
16292 possible fixes for automake-1.5
16294 2005-04-28 Wim Taymans <wim@fluendo.com>
16296 * gst/base/gstbasesink.c: (gst_basesink_base_init),
16297 (gst_basesink_pad_getcaps), (gst_basesink_init),
16298 (gst_basesink_do_sync):
16299 * gst/gstclock.c: (gst_clock_entry_new):
16300 * gst/gstevent.c: (gst_event_discont_get_value):
16301 * gst/gstpipeline.c: (pipeline_bus_handler),
16302 (gst_pipeline_change_state):
16303 * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
16304 Better debugging of clocking info.
16305 Allow NULL values when getting discont values.
16307 2005-04-27 Wim Taymans <wim@fluendo.com>
16309 * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
16310 * check/gst/gstpad.c: (gst_pad_suite):
16311 Increase timeout for checks.
16313 2005-04-27 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
16315 * check/Makefile.am:
16316 fix the broken rule for cleanup. Apparently this rule is
16317 only needed on FC2, so maybe this warrants further autotool
16320 2005-04-26 Wim Taymans <wim@fluendo.com>
16322 * gst/gsttrashstack.h:
16323 Ooohh. a nasty one! After having a failed pop() from the stack,
16324 it's possible that the stack is empty. In that case, don't
16325 follow the NULL pointer.
16327 2005-04-25 Wim Taymans <wim@fluendo.com>
16329 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
16330 (gst_pad_set_checkgetrange_function),
16331 (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
16332 (gst_pad_check_pull_range), (gst_pad_pull_range),
16333 (gst_static_pad_template_get_caps), (gst_pad_start_task),
16334 (gst_pad_pause_task), (gst_pad_stop_task):
16335 * gst/gstplugin.c: (gst_plugin_load):
16337 Remove gst_library_load as it does more harm than good with
16338 the new g_module flags.
16339 Revert bogus caps template check in pad linking, pad caps
16340 are important when linking not the template, which is more
16341 general than the current caps.
16343 2005-04-25 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
16345 * gst/autoplug/.cvsignore:
16346 * gst/autoplug/Makefile.am:
16347 * gst/autoplug/gstsearchfuncs.c:
16348 * gst/autoplug/gstsearchfuncs.h:
16349 * gst/autoplug/gstspider.c:
16350 * gst/autoplug/gstspider.h:
16351 * gst/autoplug/gstspideridentity.c:
16352 * gst/autoplug/gstspideridentity.h:
16353 * gst/autoplug/spidertest.c:
16356 2005-04-25 Wim Taymans <wim@fluendo.com>
16358 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
16359 (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
16360 (gst_pad_pull_range), (gst_static_pad_template_get_caps),
16361 (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
16363 Added stubs for unimplemented functions.
16365 2005-04-24 David Schleef <ds@schleef.org>
16367 * gst/gstpad.h: Disable some unimplemented functions. Wim,
16370 2005-04-24 David Schleef <ds@schleef.org>
16372 Convert everything from GstAtomicInt to g_atomic_int_*, and
16377 * gst/gstatomic_impl.h:
16385 * gst/gstdata_private.h:
16389 * gst/gstmessage.c:
16392 * gst/gststructure.c:
16393 * gst/gststructure.h:
16394 * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
16397 2005-04-24 David Schleef <ds@schleef.org>
16399 * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
16400 make the regressions tests work. Remove some code that is no
16402 * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
16403 Disable warning for pads without templates.
16405 2005-04-24 David Schleef <ds@schleef.org>
16407 * gst/gstpad.c: Remove handling of filtered caps. Fix/merge
16408 functions that handle filtered links.
16409 * gst/gstpad.h: Remove 'appfilter' field and prototypes of
16411 * gst/gstutils.c: Fix/remove utility functions that handle
16414 * gst/gstvalue.c: Add serialization/deserialization of caps
16415 * gst/parse/grammar.y: Ignore filtered caps when linking. This
16416 requires fixing so that the filter caps notation creates
16417 a capsfilter element and sets the filter_caps property. I
16418 think everyone probably wants to keep the shorthand notation.
16419 * docs/gst/tmpl/gstelement.sgml: updates for API changes.
16420 * docs/gst/tmpl/gstpad.sgml:
16422 * gst/elements/gstelements.c: Register capsfilter element.
16423 * gst/Makefile.am: fix spacing
16424 * docs/random/ds/0.9-suggested-changes: random
16426 2005-04-23 David Schleef <ds@schleef.org>
16428 * gst/elements/Makefile.am:
16429 * gst/elements/gstcapsfilter.c: New element that acts like an
16430 identity, but filters caps. Will eventually replace filtered
16431 caps in pad linking.
16432 * gst/gstutils.c: (gst_element_create_all_pads): New function
16433 to create all the ALWAYS pads that are registered with an
16434 element class. This functionality should eventually be
16435 merged in with GstElement initialization.
16437 * testsuite/trigger/README: part of trigger test code that should
16438 have been checked in a long time ago.
16440 2005-04-23 David Schleef <ds@schleef.org>
16442 * gst/Makefile.am: Remove as-libtool stuff. It's likely not
16443 needed with new versions of libtool (nobody will confirm this),
16444 and hard to carry around.
16445 * gst/autoplug/Makefile.am:
16446 * gst/base/Makefile.am:
16447 * gst/elements/Makefile.am:
16448 * gst/indexers/Makefile.am:
16449 * gst/schedulers/Makefile.am:
16450 * libs/gst/bytestream/Makefile.am:
16451 * libs/gst/control/Makefile.am:
16452 * libs/gst/dataprotocol/Makefile.am:
16453 * libs/gst/getbits/Makefile.am:
16455 2005-04-21 Wim Taymans <wim@fluendo.com>
16457 * docs/design/draft-push-pull.txt:
16458 * docs/design/part-MT-refcounting.txt:
16459 * docs/design/part-TODO.txt:
16460 * docs/design/part-caps.txt:
16461 * docs/design/part-events.txt:
16462 * docs/design/part-gstbus.txt:
16463 * docs/design/part-gstpipeline.txt:
16464 * docs/design/part-messages.txt:
16465 * docs/design/part-push-pull.txt:
16466 * docs/design/part-query.txt:
16469 2005-04-21 Wim Taymans <wim@fluendo.com>
16471 * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
16472 (gst_message_new), (gst_message_new_error),
16473 (gst_message_new_warning), (gst_message_new_tag),
16474 (gst_message_new_state_changed), (gst_message_new_application),
16475 (gst_message_get_structure):
16476 * gst/gstmessage.h:
16477 * gst/gststructure.c: (gst_structure_set_parent_refcount),
16478 (gst_structure_copy_conditional):
16479 Use parent refcount in GstMessage to ensure GstStructure
16481 Cleaned up headers a bit.
16484 2005-04-20 Wim Taymans <wim@fluendo.com>
16486 * gst/base/gstbasesink.c: (gst_basesink_base_init),
16487 (gst_basesink_pad_getcaps), (gst_basesink_init),
16488 (gst_basesink_chain_unlocked):
16489 * gst/base/gsttypefindhelper.c: (helper_find_suggest),
16490 (gst_type_find_helper):
16491 * gst/elements/gsttypefindelement.c:
16492 (gst_type_find_element_have_type), (gst_type_find_element_init),
16493 (stop_typefinding), (gst_type_find_element_handle_event),
16494 (find_suggest), (gst_type_find_element_chain),
16495 (gst_type_find_element_checkgetrange),
16496 (gst_type_find_element_getrange), (do_typefind),
16497 (gst_type_find_element_activate):
16498 * gst/gstbuffer.c: (_gst_buffer_sub_free),
16499 (gst_buffer_default_free), (gst_buffer_default_copy),
16500 (gst_buffer_set_caps):
16501 * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
16502 (gst_caps_replace):
16503 * gst/gstmessage.c: (gst_message_new),
16504 (gst_message_new_state_changed):
16505 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
16506 (gst_pad_set_checkgetrange_function),
16507 (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
16508 (gst_pad_set_caps), (gst_pad_check_pull_range),
16509 (gst_pad_pull_range), (gst_static_pad_template_get_caps):
16511 * gst/gsttypefind.c: (gst_type_find_register):
16512 Make gst_caps_replace() work like other _replace() functions.
16513 Use _caps_replace() where possible.
16514 Make sure _message_new() initialises its field.
16515 Add gst_static_pad_template_get_caps()
16518 2005-04-18 Andy Wingo <wingo@pobox.com>
16520 * gst/gstelement.c (gst_element_pads_activate): Check pull_range
16521 on the peer, not the pad. I think that was a typo. Pass an extra
16522 arg to see if random access is possible. Activate the pads as
16523 PULL_RANGE if possible.
16525 * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
16527 * gst/base/gstbasesrc.c (gst_basesrc_set_property)
16528 (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
16531 2005-04-14 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
16533 * docs/faq/using.xml:
16534 Add note on gstreamer-properties (#154996).
16536 2005-04-13 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
16538 * docs/random/bbb/optional-properties:
16539 Some analysis on optional properties.
16541 2005-04-12 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
16543 * docs/gst/tmpl/gstelementfactory.sgml:
16544 * gst/gstelement.h:
16545 * gst/gstelementfactory.c: (gst_element_factory_init),
16546 (gst_element_factory_cleanup), (gst_element_register),
16547 (__gst_element_factory_add_static_pad_template),
16548 (gst_element_factory_get_static_pad_templates),
16549 (gst_element_factory_can_src_caps),
16550 (gst_element_factory_can_sink_caps):
16551 * gst/registries/Makefile.am:
16552 * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
16553 (gst_xml_registry_class_init), (gst_xml_registry_init),
16554 (gst_xml_registry_new), (gst_xml_registry_set_property),
16555 (gst_xml_registry_get_property), (get_time), (make_dir),
16556 (gst_xml_registry_get_perms_func),
16557 (plugin_times_older_than_recurse), (plugin_times_older_than),
16558 (gst_xml_registry_open_func), (gst_xml_registry_load_func),
16559 (gst_xml_registry_save_func), (gst_xml_registry_close_func),
16560 (add_to_char_array), (read_string), (read_uint), (read_enum),
16561 (load_pad_template), (load_feature), (load_plugin), (load_paths),
16562 (gst_xml_registry_load), (gst_xml_registry_load_plugin),
16563 (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
16564 (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
16565 (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
16566 (gst_xml_registry_rebuild):
16567 * gst/registries/gstlibxmlregistry.h:
16568 * tools/gst-compprep.c: (main):
16569 * tools/gst-inspect.c: (print_pad_templates_info):
16570 * tools/gst-xmlinspect.c: (print_element_info):
16571 Use libxml2 for registry parsing, use staticpadtemplates in
16572 elementfactories. Makes gst_init() +/- 10x faster.
16574 2005-04-12 Wim Taymans <wim@fluendo.com>
16576 * gst/base/Makefile.am:
16577 * gst/base/gstbasesink.c: (gst_basesink_base_init),
16578 (gst_basesink_pad_getcaps), (gst_basesink_init),
16579 (gst_basesink_event), (gst_basesink_change_state):
16580 * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
16581 (gst_basesrc_init), (gst_basesrc_query),
16582 (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
16583 (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
16584 (gst_basesrc_check_get_range), (gst_basesrc_loop),
16585 (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
16586 (gst_basesrc_stop), (gst_basesrc_activate),
16587 (gst_basesrc_change_state):
16588 * gst/base/gsttypefindhelper.c: (helper_find_peek),
16589 (helper_find_suggest), (gst_type_find_helper):
16590 * gst/base/gsttypefindhelper.h:
16591 * gst/elements/Makefile.am:
16592 * gst/elements/gstelements.c:
16593 * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
16594 (gst_fakesink_get_times), (gst_fakesink_event),
16595 (gst_fakesink_preroll), (gst_fakesink_render):
16596 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
16597 (gst_fakesrc_init), (gst_fakesrc_event_handler),
16598 (gst_fakesrc_get_property), (gst_fakesrc_create),
16599 (gst_fakesrc_start), (gst_fakesrc_stop):
16600 * gst/elements/gstfakesrc.h:
16601 * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
16602 (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
16603 (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
16604 (gst_filesrc_create_read), (gst_filesrc_create),
16605 (gst_filesrc_is_seekable), (gst_filesrc_get_size),
16606 (gst_filesrc_start):
16607 * gst/elements/gsttypefindelement.c:
16608 (gst_type_find_element_have_type), (gst_type_find_element_init),
16609 (start_typefinding), (stop_typefinding), (push_buffer_store),
16610 (gst_type_find_element_handle_event),
16611 (gst_type_find_element_chain),
16612 (gst_type_find_element_checkgetrange),
16613 (gst_type_find_element_getrange), (do_typefind),
16614 (gst_type_find_element_activate),
16615 (gst_type_find_element_change_state):
16616 * gst/elements/gsttypefindelement.h:
16617 * gst/gstpipeline.c: (pipeline_bus_handler):
16618 Added typefind helper.
16619 Small preroll fix in the base sink.
16620 Disable typefind code in basesrc.
16621 Crude port of typefindelement.
16625 2005-04-11 Wim Taymans <wim@fluendo.com>
16627 * check/gst/gstbus.c: (gstbus_suite):
16628 * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
16629 * check/gstcheck.h:
16630 Fix up the timeout so that the test does not fail.
16632 2005-04-06 Wim Taymans <wim@fluendo.com>
16635 * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
16636 (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
16637 (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
16638 (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
16639 (gst_basesrc_check_get_range), (gst_basesrc_loop),
16640 (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
16641 (gst_basesrc_stop), (gst_basesrc_activate),
16642 (gst_basesrc_change_state), (basesrc_find_peek),
16643 (basesrc_find_suggest), (gst_basesrc_type_find):
16644 * gst/base/gstbasesrc.h:
16645 * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
16646 (gst_filesrc_class_init), (gst_filesrc_init),
16647 (gst_filesrc_finalize), (gst_filesrc_set_location),
16648 (gst_filesrc_set_property), (gst_filesrc_get_property),
16649 (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
16650 (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
16651 (gst_filesrc_create_read), (gst_filesrc_create),
16652 (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
16653 * gst/elements/gstfilesrc.h:
16654 * gst/gstelement.c: (gst_element_get_state_func),
16655 (gst_element_lost_state), (gst_element_pads_activate):
16656 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
16657 (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
16658 (gst_pad_pull_range):
16660 More work on the generic source base class, implement seeking,
16662 Make filesrc extend the base source class.
16663 Added gst_pad_set_checkgetrange_function to GstPad.
16665 2005-04-06 Andy Wingo <wingo@pobox.com>
16667 * pkgconfig/gstreamer-base.pc.in:
16668 * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
16670 * pkgconfig/Makefile.am:
16671 * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
16673 2005-04-04 Wim Taymans <wim@fluendo.com>
16675 * gst/base/Makefile.am:
16677 * gst/base/gstbasesink.c: (gst_basesink_base_init),
16678 (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
16679 (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
16680 (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
16681 * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
16682 (gst_basesrc_base_init), (gst_basesrc_class_init),
16683 (gst_basesrc_init), (gst_basesrc_get_formats),
16684 (gst_basesrc_get_query_types), (gst_basesrc_query),
16685 (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
16686 (gst_basesrc_set_property), (gst_basesrc_get_property),
16687 (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
16688 (gst_basesrc_loop), (gst_basesrc_activate),
16689 (gst_basesrc_change_state):
16690 * gst/base/gstbasesrc.h:
16691 * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
16692 (gst_fakesrc_class_init), (gst_fakesrc_init),
16693 (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
16694 (gst_fakesrc_get_property), (gst_fakesrc_create):
16695 * gst/elements/gstfakesrc.h:
16696 * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
16697 (gst_filesrc_open_file), (gst_filesrc_loop),
16698 (gst_filesrc_activate), (filesrc_find_peek),
16699 (gst_filesrc_type_find):
16700 Made base source class, make fakesrc extend it.
16701 Add comments to basesink class.
16702 Some filesrc cleanup.
16704 2005-03-31 David Schleef <ds@schleef.org>
16706 * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
16707 Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
16708 expected to link against libgstreamer.
16709 * gst/base/Makefile.am: link against libgstreamer
16710 * gst/elements/Makefile.am: same
16712 2005-03-31 Andy Wingo <wingo@pobox.com>
16714 * tests/instantiate/Makefile.am:
16715 * tests/instantiate/caps.c: Add test to test speed of caps copy
16718 * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
16719 GMemChunk to be fair.
16721 * gst/gsttrashstack.h: Remove warning about using the fallback
16722 trash stack implementation, it's still faster than malloc.
16724 2005-03-30 Andy Wingo <wingo@pobox.com>
16726 * tests/complexity.c: Add a copyright.
16728 2005-03-31 Wim Taymans <wim@fluendo.com>
16730 * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
16731 (gst_base_transform_class_init), (gst_base_transform_init),
16732 (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
16733 (gst_base_transform_get_property),
16734 (gst_base_transform_sink_activate),
16735 (gst_base_transform_src_activate),
16736 (gst_base_transform_change_state):
16737 * gst/base/gstbasetransform.h:
16738 * gst/elements/gstidentity.c: (gst_identity_class_init),
16739 (gst_identity_event), (gst_identity_check_perfect),
16740 (gst_identity_transform), (gst_identity_start),
16741 (gst_identity_stop):
16742 Added start/stop methods to transform base class so subclasses
16743 don't need to deal with state changes even.
16745 2005-03-31 Wim Taymans <wim@fluendo.com>
16747 * gst/gstevent.c: (gst_event_new_discontinuous_valist),
16748 (gst_event_new_discontinuous), (gst_event_discont_get_value):
16750 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
16751 (gst_pad_pull_range):
16752 Added rate to the discont event to prepare for variable speed
16753 and reverse playback.
16755 2005-03-29 David Schleef <ds@schleef.org>
16758 * testsuite/trigger/Makefile.am:
16759 * testsuite/trigger/trigger.c: A little example program to show
16760 how trigger-based elements can work.
16762 2005-03-29 Wim Taymans <wim@fluendo.com>
16764 * gst/base/Makefile.am:
16766 * gst/base/gstbasesink.c: (gst_basesink_get_type),
16767 (gst_basesink_base_init), (gst_basesink_class_init),
16768 (gst_basesink_pad_getcaps), (gst_basesink_init),
16769 (gst_basesink_activate), (gst_basesink_change_state):
16770 * gst/base/gstbasesink.h:
16771 * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
16772 (gst_base_transform_base_init), (gst_base_transform_finalize),
16773 (gst_base_transform_class_init), (gst_base_transform_init),
16774 (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
16775 (gst_base_transform_event), (gst_base_transform_getrange),
16776 (gst_base_transform_chain), (gst_base_transform_handle_buffer),
16777 (gst_base_transform_set_property),
16778 (gst_base_transform_get_property),
16779 (gst_base_transform_sink_activate),
16780 (gst_base_transform_src_activate),
16781 (gst_base_transform_change_state):
16782 * gst/base/gstbasetransform.h:
16783 * gst/elements/gstidentity.c: (gst_identity_finalize),
16784 (gst_identity_class_init), (gst_identity_init),
16785 (gst_identity_event), (gst_identity_check_perfect),
16786 (gst_identity_transform), (gst_identity_set_property),
16787 (gst_identity_get_property), (gst_identity_change_state):
16788 * gst/elements/gstidentity.h:
16789 * gst/gstelement.c: (gst_element_get_state_func),
16790 (gst_element_lost_state), (gst_element_pads_activate):
16791 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
16792 (gst_pad_check_pull_range), (gst_pad_pull_range):
16794 Simplify pad activation.
16795 Added function to check if pull_range can be performed.
16796 Error out when pulling inactive or flushing pads.
16797 Removed const from refcounted types as it does not make sense.
16798 Simplify pad templates in basesink
16799 Added base class for simple 1-to-1 transforms.
16800 Make identity subclass the base transform.
16802 2005-03-29 Andy Wingo <wingo@pobox.com>
16804 * docs/libs/gstreamer-libs-overrides.txt:
16805 * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
16806 really don't understand what's going on, but like whatever. I want
16809 * docs/gst/Makefile.am:
16810 * docs/libs/Makefile.am: Dist the overrides files.
16812 * check/Makefile.am (clean-local): Remove .libs directories.
16814 * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
16815 elements to EXTRA_DIST, so po/ files are happy.
16817 * po/POTFILES.in: Er, remove it here.
16819 * po/POTFILES: Remove gstspider.c.
16821 * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
16823 * docs/libs/gstreamer-libs-docs.sgml:
16824 * docs/libs/gstreamer-libs-sections.txt: Remove the section on
16827 * tests/complexity.c (main): Set the length of the preroll queue
16828 on the sinks to prevent a lockup.
16830 * libs/gst/dataprotocol/Makefile.am:
16831 * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
16832 the same as the one in check/gst-libs/gdp.c.
16834 * po/, docs/gst/: Commit automatic changes to docs and po files.
16836 * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
16837 the versioned libgstbase.
16839 * check/Makefile.am: Depend on an unversioned gst-register, seems
16840 to make autoconf happier.
16842 * gst/base/Makefile.am: Make libgstbase a versioned lib.
16844 2005-03-28 Wim Taymans <wim@fluendo.com>
16847 * docs/design/part-gstelement.txt:
16848 * docs/design/part-negotiation.txt:
16849 * docs/design/part-preroll.txt:
16850 * docs/design/part-scheduling.txt:
16851 * docs/design/part-states.txt:
16853 * gst/base/Makefile.am:
16855 * gst/base/gstbasesink.c: (gst_basesink_get_template),
16856 (gst_basesink_base_init), (gst_basesink_class_init),
16857 (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
16858 (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
16859 (gst_basesink_set_pad_functions),
16860 (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
16861 (gst_basesink_set_property), (gst_basesink_get_property),
16862 (gst_base_sink_get_template), (gst_base_sink_get_caps),
16863 (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
16864 (gst_basesink_preroll_queue_push),
16865 (gst_basesink_preroll_queue_empty),
16866 (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
16867 (gst_basesink_event), (gst_basesink_get_times),
16868 (gst_basesink_do_sync), (gst_basesink_handle_buffer),
16869 (gst_basesink_chain_unlocked), (gst_basesink_chain),
16870 (gst_basesink_loop), (gst_basesink_activate),
16871 (gst_basesink_change_state):
16872 * gst/base/gstbasesink.h:
16873 * gst/elements/Makefile.am:
16874 * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
16875 (gst_fakesink_class_init), (gst_fakesink_init),
16876 (gst_fakesink_set_property), (gst_fakesink_get_property),
16877 (gst_fakesink_get_times), (gst_fakesink_event),
16878 (gst_fakesink_preroll), (gst_fakesink_render),
16879 (gst_fakesink_change_state):
16880 * gst/elements/gstfakesink.h:
16881 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
16882 (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
16883 * gst/gstelement.c: (gst_element_add_pad),
16884 (gst_element_get_state_func), (gst_element_abort_state),
16885 (gst_element_commit_state), (gst_element_lost_state),
16886 (gst_element_set_state), (gst_element_pads_activate):
16887 * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
16888 * gst/gstpipeline.c: (gst_pipeline_send_event),
16889 (gst_pipeline_change_state):
16890 Added state change code.
16891 Added/updated docs.
16892 Added sink base class, make fakesink extend the base class.
16893 Small cleanups in GstPipeline.
16895 2005-03-26 David Schleef <ds@schleef.org>
16897 * gst/Makefile.am: remove gstcpu.[ch]. The gst_cpu functionality
16898 is broken and should be implemented in a different library.
16899 * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
16900 * gst/gst.h: remove gstcpu.h
16901 * gst/gstcpu.c: remove
16902 * gst/gstcpu.h: remove
16903 * gst/Makefile.am.future: Remove this file. It's ancient.
16905 2005-03-25 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
16907 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
16908 (gst_bin_send_event):
16909 Add default event/set_manager handlers. The set_manager handler
16910 takes care that the manager is distributed over kids that were
16911 already in the bin before the manager was set. The event handler
16912 is a utility virtual function that sends the event over all sinks,
16913 so that gst_element_send_event (bin, event); has the expected
16915 * gst/gstpad.c: (gst_pad_event_default):
16916 Re-install default event handling for discontinuities, so that
16917 seeking works without requiring hacks in applications or extra
16919 * gst/gstpipeline.c: (gst_pipeline_class_init),
16920 (gst_pipeline_send_event):
16921 Half hack, half utility: set a pipeline to PAUSED for seek events,
16922 since that is the only way we can guarantee a/v sync. Means that
16923 you can do gst_element_seek (pipeline, method, pos); on a pipeline
16924 and it "just works".
16926 2005-03-25 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
16928 * gst/gstpipeline.c: (gst_pipeline_use_clock):
16929 Lock/unlock mismatch.
16931 2005-03-25 Thomas Vander Stichele <thomas at apestaart dot org>
16933 * docs/faq/gst-uninstalled:
16934 add gst-plugins-base
16935 * docs/gst/Makefile.am:
16936 don't error out until docs are fixed
16937 * docs/gst/gstreamer.types:
16940 2005-03-22 Wim Taymans <wim@fluendo.com>
16942 * check/Makefile.am:
16943 * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
16944 * gst/gststructure.c: (gst_structure_set_valist),
16945 (gst_structure_copy_conditional):
16946 Activated more tests.
16947 Added message test.
16948 Added G_TYPE_POINTER to GstStructure.
16951 2005-03-22 Wim Taymans <wim@fluendo.com>
16953 * docs/design/part-TODO.txt:
16954 * docs/design/part-events.txt:
16955 * docs/design/part-gstbin.txt:
16956 * docs/design/part-gstbus.txt:
16957 * docs/design/part-gstpipeline.txt:
16958 * docs/design/part-messages.txt:
16960 * gst/gstmessage.c:
16963 2005-03-21 Wim Taymans <wim@fluendo.com>
16965 * gst/gstbus.c: (gst_bus_post):
16966 Fix copy-and-paste error.
16968 2005-03-21 Wim Taymans <wim@fluendo.com>
16970 * check/Makefile.am:
16972 * gst/elements/Makefile.am:
16973 * gst/elements/gstelements.c:
16974 * gst/elements/gstfakesink.c: (gst_fakesink_init),
16975 (gst_fakesink_event), (gst_fakesink_chain):
16976 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
16977 (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
16978 (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
16979 (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
16980 (gst_fakesrc_set_property), (gst_fakesrc_get_property),
16981 (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
16982 (gst_fakesrc_loop), (gst_fakesrc_activate),
16983 (gst_fakesrc_change_state):
16984 * gst/elements/gstfakesrc.h:
16985 * gst/elements/gstfilesrc.c: (gst_filesrc_init),
16986 (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
16987 (gst_filesrc_open_file), (gst_filesrc_loop),
16988 (gst_filesrc_activate), (gst_filesrc_change_state),
16989 (filesrc_find_peek), (filesrc_find_suggest),
16990 (gst_filesrc_type_find):
16991 * gst/elements/gstidentity.c: (gst_identity_finalize),
16992 (gst_identity_class_init), (gst_identity_init),
16993 (gst_identity_proxy_getcaps), (identity_queue_push),
16994 (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
16995 (gst_identity_getrange), (gst_identity_chain),
16996 (gst_identity_sink_loop), (gst_identity_src_loop),
16997 (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
16998 (gst_identity_set_property), (gst_identity_get_property),
16999 (gst_identity_change_state):
17000 * gst/elements/gstidentity.h:
17001 * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
17002 (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
17003 (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
17004 (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
17005 (gst_tee_sink_activate):
17006 * gst/elements/gsttee.h:
17007 * gst/gst.c: (gst_register_core_elements), (init_post):
17009 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
17010 (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
17011 (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
17012 (gst_bin_change_state):
17014 * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
17015 (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
17016 (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
17017 (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
17018 (gst_bus_set_sync_handler), (gst_bus_create_watch),
17019 (bus_watch_callback), (bus_watch_destroy),
17020 (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
17021 (poll_timeout), (gst_bus_poll):
17025 * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
17026 (gst_element_post_message), (gst_element_message_full),
17027 (gst_element_get_state_func), (gst_element_get_state),
17028 (gst_element_abort_state), (gst_element_commit_state),
17029 (gst_element_lost_state), (gst_element_set_state),
17030 (gst_element_pads_activate), (gst_element_change_state),
17031 (gst_element_dispose), (gst_element_set_manager_func),
17032 (gst_element_set_bus_func), (gst_element_set_scheduler_func),
17033 (gst_element_set_manager), (gst_element_get_manager),
17034 (gst_element_set_bus), (gst_element_get_bus),
17035 (gst_element_set_scheduler), (gst_element_get_scheduler):
17036 * gst/gstelement.h:
17037 * gst/gstevent.c: (gst_event_new_segment_seek),
17038 (gst_event_new_flush):
17040 * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
17041 (_gst_message_free), (gst_message_get_type), (gst_message_new),
17042 (gst_message_new_eos), (gst_message_new_error),
17043 (gst_message_new_warning), (gst_message_new_tag),
17044 (gst_message_new_state_changed), (gst_message_new_application),
17045 (gst_message_get_structure), (gst_message_parse_tag),
17046 (gst_message_parse_state_changed), (gst_message_parse_error),
17047 (gst_message_parse_warning):
17048 * gst/gstmessage.h:
17049 * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
17050 (gst_real_pad_set_property), (gst_pad_set_active),
17051 (gst_pad_is_active), (gst_pad_set_blocked_async),
17052 (gst_pad_set_blocked), (gst_pad_is_blocked),
17053 (gst_pad_set_activate_function), (gst_pad_set_loop_function),
17054 (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
17055 (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
17056 (gst_pad_unlink), (gst_pad_link_prepare_filtered),
17057 (gst_pad_link_filtered), (gst_pad_relink_filtered),
17058 (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
17059 (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
17060 (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
17061 (gst_pad_set_caps), (gst_pad_configure_sink),
17062 (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
17063 (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
17064 (gst_real_pad_dispose), (gst_real_pad_finalize),
17065 (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
17066 (gst_pad_event_default_dispatch), (gst_pad_event_default),
17067 (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
17069 * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
17070 (pipeline_bus_handler), (gst_pipeline_change_state),
17071 (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
17072 * gst/gstpipeline.h:
17074 * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
17075 (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
17076 (gst_queue_link_src), (gst_queue_bufferalloc),
17077 (gst_queue_locked_flush), (gst_queue_handle_sink_event),
17078 (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
17079 (gst_queue_loop), (gst_queue_handle_src_event),
17080 (gst_queue_handle_src_query), (gst_queue_src_activate),
17081 (gst_queue_change_state):
17083 * gst/gstscheduler.c: (gst_scheduler_init),
17084 (gst_scheduler_dispose), (gst_scheduler_create_task),
17085 (gst_scheduler_factory_create):
17086 * gst/gstscheduler.h:
17087 * gst/gststructure.c: (gst_structure_get_type),
17088 (gst_structure_copy_conditional):
17089 * gst/gststructure.h:
17090 * gst/gsttaginterface.h:
17091 * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
17092 (gst_task_init), (gst_task_dispose), (gst_task_create),
17093 (gst_task_get_state), (gst_task_start), (gst_task_stop),
17099 * gst/schedulers/Makefile.am:
17100 * gst/schedulers/cothreads_compat.h:
17101 * gst/schedulers/entryscheduler.c:
17102 * gst/schedulers/faircothreads.c:
17103 * gst/schedulers/faircothreads.h:
17104 * gst/schedulers/fairscheduler.c:
17105 * gst/schedulers/gstbasicscheduler.c:
17106 * gst/schedulers/gstoptimalscheduler.c:
17107 * gst/schedulers/gthread-cothreads.h:
17108 * gst/schedulers/threadscheduler.c:
17109 (gst_thread_scheduler_task_get_type),
17110 (gst_thread_scheduler_task_class_init),
17111 (gst_thread_scheduler_task_init),
17112 (gst_thread_scheduler_task_start),
17113 (gst_thread_scheduler_task_stop),
17114 (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
17115 (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
17116 (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
17117 (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
17119 * libs/gst/Makefile.am:
17120 * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
17121 * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
17122 (gst_file_pad_parent_set):
17123 * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
17124 (gst_dp_event_from_packet):
17125 * tests/complexity.c: (main):
17126 * tests/mass_elements.c: (main):
17127 * testsuite/states/locked.c: (message_received), (main):
17128 * testsuite/states/parent.c: (main):
17129 * tools/gst-inspect.c: (print_element_flag_info),
17130 (print_implementation_info), (print_pad_info):
17131 * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
17133 * tools/gst-md5sum.c: (event_loop), (main):
17134 * tools/gst-typefind.c: (main):
17135 * tools/gst-xmlinspect.c: (print_element_info):
17137 Added GstBus for mainloop integration.
17138 Added GstMessage for sending notifications on the bus.
17139 Added GstTask as an abstraction for pipeline entry points.
17141 Removed Schedulers.
17142 Simplified GstQueue for multithreaded core.
17143 Made _link threadsafe, removed old capsnego.
17144 Added STREAM_LOCK and PREROLL_LOCK in GstPad.
17145 Added pad blocking functions.
17146 Reworked scheduling functions in GstPad to prepare for
17147 scheduling updates soon.
17148 Moved events out of data stream.
17149 Simplified GstEvent types.
17150 Added return values to push/pull.
17151 Removed clocking from GstElement.
17152 Added prototypes for state change function for next merge.
17153 Removed iterate from bins and state change management.
17154 Fixed some elements, disabled others for now.
17155 Fixed -inspect and -launch.
17156 Added check for GstBus.
17158 2005-03-10 Wim Taymans <wim@fluendo.com>
17160 * docs/design/part-MT-refcounting.txt:
17161 * docs/design/part-clocks.txt:
17162 * docs/design/part-gstelement.txt:
17163 * docs/design/part-gstobject.txt:
17164 * docs/design/part-standards.txt:
17165 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
17166 (gst_bin_remove_func), (gst_bin_remove):
17170 * testsuite/clock/clock1.c: (main):
17171 * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
17173 * testsuite/dlopen/loadgst.c: (do_test):
17174 * testsuite/refcounting/bin.c: (add_remove_test1),
17175 (add_remove_test2), (main):
17176 * testsuite/refcounting/element.c: (main):
17177 * testsuite/refcounting/element_pad.c: (main):
17178 * testsuite/refcounting/pad.c: (main):
17179 * tools/gst-launch.c: (sigint_handler_sighandler):
17180 * tools/gst-typefind.c: (main):
17182 Added doc about clock.
17183 removed gst_bin_iterate_recurse_up(), marked methods
17185 Fix more testsuites.
17187 2005-03-09 Wim Taymans <wim@fluendo.com>
17189 * gst/gstpad.c: (gst_pad_get_direction),
17190 (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
17191 (gst_pad_collect_valist):
17192 * testsuite/bins/interface.c: (main):
17193 * testsuite/caps/audioscale.c: (test_caps):
17194 * testsuite/caps/caps.c: (test1), (test2), (test3):
17195 * testsuite/caps/deserialize.c: (main):
17196 * testsuite/caps/enumcaps.c: (main):
17197 * testsuite/caps/filtercaps.c: (main):
17198 * testsuite/caps/intersect2.c: (main):
17199 * testsuite/caps/random.c: (main):
17200 * testsuite/caps/renegotiate.c: (my_fixate), (main):
17201 * testsuite/caps/sets.c: (check_caps):
17202 * testsuite/caps/simplify.c: (check_caps), (main):
17203 * testsuite/caps/subtract.c: (check_caps):
17204 Fix _pad_get_direction wrt ghostpads.
17205 Fix caps testsuite.
17207 2005-03-09 Wim Taymans <wim@fluendo.com>
17209 * check/Makefile.am:
17210 * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
17211 * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
17212 (ok_callback), (error_callback), (gst_systemclock_suite), (main):
17213 * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
17214 (gst_bin_set_clock_func), (gst_bin_get_clock_func),
17215 (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
17216 (gst_bin_remove), (gst_bin_iterate_recurse_up),
17217 (bin_element_is_sink), (gst_bin_iterate_sinks),
17218 (gst_bin_iterate_all_by_interface):
17220 * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
17221 (gst_element_change_state), (gst_element_dispose),
17222 (gst_element_finalize), (gst_element_set_loop_function):
17223 * gst/gstelement.h:
17224 * gst/gstiterator.c: (find_custom_fold_func):
17225 * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
17226 (gst_pad_collectv), (gst_pad_collect_valist),
17227 (gst_pad_template_new):
17228 * gst/gstpipeline.c: (gst_pipeline_class_init),
17229 (gst_pipeline_dispose), (gst_pipeline_set_property),
17230 (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
17231 (gst_pipeline_get_clock), (gst_pipeline_use_clock),
17232 (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
17234 * gst/schedulers/entryscheduler.c:
17235 * gst/schedulers/gstbasicscheduler.c:
17236 (gst_basic_scheduler_cothreaded_chain),
17237 (gst_basic_scheduler_chain_add_element):
17238 * testsuite/bins/interface.c: (main):
17240 Added GstSystemClock test.
17241 Implemented clock distribution code in GstBin.
17242 Implemented iterate sinks method for future use.
17243 Rearranged gstelement.h
17244 Fix GstIterator comparison bug.
17245 Moved some code to GstPipeline, mostly clocking related.
17247 2005-03-09 Wim Taymans <wim@fluendo.com>
17250 * gst/gst_private.h:
17251 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
17252 (gst_bin_remove_func), (gst_bin_remove),
17253 (gst_bin_get_by_name_recurse_up):
17254 * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
17255 (gst_clock_id_compare_func), (gst_clock_id_wait),
17256 (gst_clock_id_wait_async), (gst_clock_init),
17257 (gst_clock_adjust_unlocked), (gst_clock_get_time):
17258 * gst/gstelement.h:
17259 * gst/gstinfo.c: (_gst_debug_init):
17261 * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
17262 (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
17264 Bump version number, we're now 0.9.0
17265 Add future debugging category.
17266 Fix NULL _unref() in _get_by_name_recurse_up
17267 Rearrange gstpad.h.
17270 2005-03-08 Wim Taymans <wim@fluendo.com>
17272 * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
17273 * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
17274 * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
17275 * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
17276 * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
17277 * gst/elements/gstfilesink.c: (gst_filesink_class_init):
17278 * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
17279 * gst/elements/gstidentity.c: (gst_identity_class_init):
17280 * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
17281 * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
17282 * gst/elements/gstshaper.c: (gst_shaper_class_init):
17283 * gst/elements/gststatistics.c: (gst_statistics_class_init):
17284 * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
17286 * gst/gstelement.c: (gst_element_class_init),
17287 (gst_element_base_class_init), (gst_element_init),
17288 (gst_element_get_random_pad), (gst_element_wait_state_change),
17289 (gst_element_change_state), (gst_element_dispose),
17290 (gst_element_finalize), (gst_element_set_loop_function):
17291 * gst/gstelement.h:
17292 * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
17293 * gst/gstthread.c: (gst_thread_class_init),
17294 (gst_thread_release_children_locks), (gst_thread_change_state):
17295 * gst/schedulers/gstbasicscheduler.c:
17296 (gst_basic_scheduler_loopfunc_wrapper),
17297 (gst_basic_scheduler_chain_wrapper),
17298 (gst_basic_scheduler_src_wrapper),
17299 (gst_basic_scheduler_remove_element):
17300 * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
17301 Remove threadsafe properties. Fix elements because GObject
17302 complains when installing a property before declaring a
17303 set/get_property handler.
17304 Rearrange gstelement.h file, use STATE macros for state locks.
17305 Free mutexes in the finalize method instead of dispose.
17307 2005-03-08 Wim Taymans <wim@fluendo.com>
17309 * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
17310 * gst/gstthread.c: (gst_thread_release_children_locks):
17311 Added parentage check.
17312 Fix build og GstThread again.
17314 2005-03-08 Wim Taymans <wim@fluendo.com>
17316 * docs/design/part-MT-refcounting.txt:
17317 * docs/design/part-conventions.txt:
17318 * docs/design/part-gstobject.txt:
17319 * docs/design/part-relations.txt:
17320 * docs/design/part-standards.txt:
17321 * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
17322 (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
17323 (gst_bin_get_by_name), (gst_bin_get_by_interface),
17324 (gst_bin_iterate_all_by_interface):
17327 * gst/gstelement.c: (gst_element_class_init),
17328 (gst_element_change_state), (gst_element_set_loop_function):
17329 * gst/gstelement.h:
17330 * gst/gstiterator.c:
17331 * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
17332 (gst_object_unref), (gst_object_sink), (gst_object_dispose),
17333 (gst_object_dispatch_properties_changed), (gst_object_set_name),
17334 (gst_object_set_parent), (gst_object_unparent),
17335 (gst_object_check_uniqueness):
17337 Docs updates, clean up some headers.
17339 2005-03-07 Wim Taymans <wim@fluendo.com>
17341 * check/.cvsignore:
17342 * check/Makefile.am:
17343 * check/gst-libs/.cvsignore:
17344 * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
17345 * check/gst/.cvsignore:
17346 * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
17347 (START_TEST), (gstbus_suite), (main):
17348 * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
17349 * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
17350 (gst_data_suite), (main):
17351 * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
17352 (add_fold_func), (gstiterator_suite), (main):
17353 * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
17354 (thread_name_object), (thread_name_object_default),
17355 (gst_object_name_compare), (gst_object_suite), (main):
17356 * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
17357 (gst_pad_suite), (main):
17358 * check/gstcheck.c: (gst_check_log_message_func),
17359 (gst_check_log_critical_func), (gst_check_init):
17360 * check/gstcheck.h:
17361 * check/pipelines/simple_launch_lines.c: (setup_pipeline),
17362 (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
17365 2005-03-07 Wim Taymans <wim@fluendo.com>
17367 * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
17368 (gst_list_iterator_next), (gst_list_iterator_resync),
17369 (gst_list_iterator_free), (gst_iterator_new_list),
17370 (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
17371 (gst_iterator_free), (gst_iterator_push), (filter_next),
17372 (filter_resync), (filter_uninit), (filter_free),
17373 (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
17374 (gst_iterator_foreach), (find_custom_fold_func),
17375 (gst_iterator_find_custom):
17376 * gst/gstiterator.h:
17377 Added missing files.
17379 2005-03-07 Wim Taymans <wim@fluendo.com>
17383 * docs/design/part-MT-refcounting.txt:
17384 * docs/design/part-conventions.txt:
17385 * docs/design/part-gstobject.txt:
17386 * docs/design/part-relations.txt:
17387 * examples/mixer/mixer.c: (main):
17388 * examples/thread/thread.c: (eos), (main):
17390 * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
17391 * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
17392 (gst_spider_plug_from_srcpad):
17393 * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
17394 (gst_spider_identity_change_state),
17395 (gst_spider_identity_sink_loop_type_finding):
17396 * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
17397 * gst/elements/gstidentity.c: (gst_identity_init):
17398 * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
17399 (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
17400 * gst/elements/gsttypefindelement.c: (free_entry):
17403 * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
17404 (gst_bin_set_clock_func), (gst_bin_auto_clock),
17405 (gst_bin_set_index), (gst_bin_set_element_sched),
17406 (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
17407 (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
17408 (gst_bin_iterate_elements), (iterate_child_recurse),
17409 (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
17410 (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
17411 (compare_interface), (gst_bin_get_by_interface),
17412 (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
17414 * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
17415 (gst_buffer_default_free), (gst_buffer_default_copy),
17416 (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
17417 (gst_buffer_create_sub):
17419 * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
17420 (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
17421 (gst_caps_unref), (gst_static_caps_get),
17422 (gst_caps_remove_and_get_structure), (gst_caps_append),
17423 (gst_caps_append_structure), (gst_caps_remove_structure),
17424 (gst_caps_copy_nth), (gst_caps_set_simple),
17425 (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
17426 (gst_structure_is_equal_foreach), (gst_caps_is_subset),
17427 (gst_caps_structure_intersect_field), (gst_caps_intersect),
17428 (gst_caps_structure_subtract_field), (gst_caps_subtract),
17429 (gst_caps_normalize_foreach), (gst_caps_compare_structures),
17430 (gst_caps_structure_figure_out_union),
17431 (gst_caps_switch_structures), (gst_caps_do_simplify),
17432 (gst_caps_replace), (gst_caps_from_string),
17433 (gst_caps_copy_conditional):
17435 * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
17436 (_gst_clock_id_free), (gst_clock_id_unref),
17437 (gst_clock_id_compare_func), (gst_clock_id_wait),
17438 (gst_clock_id_wait_async), (gst_clock_class_init),
17439 (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
17440 (gst_clock_get_time), (gst_clock_set_time_adjust),
17441 (gst_clock_set_property), (gst_clock_get_property):
17444 * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
17445 * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
17447 * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
17448 (gst_element_requires_clock), (gst_element_provides_clock),
17449 (gst_element_set_clock), (gst_element_clock_wait),
17450 (gst_element_wait), (gst_element_set_time_delay),
17451 (gst_element_is_indexable), (gst_element_add_pad),
17452 (gst_element_add_ghost_pad), (gst_element_remove_pad),
17453 (pad_compare_name), (gst_element_get_static_pad),
17454 (gst_element_request_pad), (gst_element_get_request_pad),
17455 (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
17456 (gst_element_class_get_pad_template_list),
17457 (gst_element_class_get_pad_template), (gst_element_error_func),
17458 (gst_element_get_random_pad), (gst_element_get_event_masks),
17459 (gst_element_send_event), (gst_element_seek),
17460 (gst_element_get_query_types), (gst_element_query),
17461 (gst_element_get_formats), (gst_element_convert),
17462 (gst_element_is_locked_state), (gst_element_set_locked_state),
17463 (gst_element_sync_state_with_parent), (gst_element_change_state),
17464 (gst_element_finalize), (gst_element_yield),
17465 (gst_element_interrupt), (gst_element_set_scheduler),
17466 (gst_element_get_scheduler), (gst_element_set_loop_function):
17467 * gst/gstelement.h:
17469 * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
17470 (gst_format_get_by_nick), (gst_format_get_details),
17471 (gst_format_iterate_definitions):
17473 * gst/gstindex.c: (gst_index_gtype_resolver):
17476 * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
17477 (gst_mem_chunk_free):
17478 * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
17479 (gst_object_ref), (gst_object_unref), (gst_object_sink),
17480 (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
17481 (gst_object_dispatch_properties_changed),
17482 (gst_object_set_name_default), (gst_object_set_name),
17483 (gst_object_get_name), (gst_object_set_name_prefix),
17484 (gst_object_get_name_prefix), (gst_object_set_parent),
17485 (gst_object_get_parent), (gst_object_unparent),
17486 (gst_object_check_uniqueness), (gst_object_save_thyself),
17487 (gst_object_restore_thyself), (gst_object_real_restore_thyself),
17488 (gst_object_set_property), (gst_object_get_property),
17489 (gst_object_get_path_string):
17491 * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
17492 (gst_real_pad_init), (gst_real_pad_get_property),
17493 (gst_pad_custom_new), (gst_pad_get_direction),
17494 (gst_pad_set_active), (gst_pad_is_active),
17495 (gst_pad_set_event_function), (gst_pad_is_linked),
17496 (gst_pad_link_free), (gst_pad_link_intersect),
17497 (gst_pad_link_fixate), (gst_pad_set_caps),
17498 (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
17499 (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
17500 (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
17501 (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
17502 (gst_pad_get_caps), (gst_pad_peer_get_caps),
17503 (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
17504 (gst_pad_realize), (gst_pad_get_allowed_caps),
17505 (gst_real_pad_dispose), (gst_real_pad_finalize),
17506 (gst_pad_collectv), (gst_pad_collect_valist),
17507 (gst_pad_template_dispose), (gst_pad_template_new),
17508 (gst_pad_get_internal_links):
17510 * gst/gstpipeline.c: (gst_pipeline_dispose),
17511 (gst_pipeline_change_state):
17512 * gst/gstpipeline.h:
17514 * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
17515 (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
17516 * gst/gstpluginfeature.h:
17517 * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
17518 * gst/gstquery.c: (_gst_query_type_initialize),
17519 (gst_query_type_register), (gst_query_type_get_by_nick),
17520 (gst_query_type_get_details), (gst_query_type_iterate_definitions):
17522 * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
17523 * gst/gstscheduler.c: (gst_scheduler_add_element),
17524 (gst_scheduler_factory_create):
17525 * gst/gststructure.c: (gst_structure_set_parent_refcount),
17526 (gst_structure_free), (gst_structure_set_name),
17527 (gst_structure_id_set_value), (gst_structure_set_value),
17528 (gst_structure_set_valist), (gst_structure_remove_field),
17529 (gst_structure_remove_fields),
17530 (gst_structure_remove_fields_valist),
17531 (gst_structure_remove_all_fields), (gst_structure_foreach),
17532 (gst_structure_map_in_place),
17533 (gst_caps_structure_fixate_field_nearest_int),
17534 (gst_caps_structure_fixate_field_nearest_double):
17535 * gst/gststructure.h:
17536 * gst/gstsystemclock.c: (gst_system_clock_class_init),
17537 (gst_system_clock_init), (gst_system_clock_dispose),
17538 (gst_system_clock_async_thread),
17539 (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
17540 (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
17541 * gst/gstsystemclock.h:
17542 * gst/gsttag.c: (gst_tag_list_add_value_internal),
17543 (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
17544 * gst/gsttaginterface.c:
17545 * gst/gstthread.c: (gst_thread_dispose),
17546 (gst_thread_release_children_locks), (gst_thread_change_state),
17547 (gst_thread_main_loop):
17548 * gst/gsttrashstack.h:
17549 * gst/gsttypefind.c: (gst_type_find_factory_dispose):
17551 * gst/gstutils.c: (gst_element_get_compatible_pad_template),
17552 (gst_element_request_pad), (gst_element_get_pad_from_template),
17553 (gst_element_request_compatible_pad),
17554 (gst_element_get_compatible_pad_filtered),
17555 (gst_element_get_compatible_pad), (gst_element_state_get_name),
17556 (gst_element_link_pads_filtered), (gst_element_link_filtered),
17557 (gst_element_link_many), (gst_element_link),
17558 (gst_element_link_pads), (gst_element_unlink_pads),
17559 (gst_element_unlink_many), (gst_element_unlink),
17560 (gst_pad_can_link_filtered), (gst_pad_can_link),
17561 (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
17562 (gst_object_default_error), (gst_bin_add_many),
17563 (gst_bin_remove_many), (gst_element_populate_std_props),
17564 (gst_element_class_install_std_props), (gst_buffer_merge),
17565 (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
17566 (link_fold_func), (gst_pad_proxy_setcaps):
17568 * gst/gstvalue.c: (gst_value_deserialize_string):
17569 * gst/parse/grammar.y:
17570 * gst/schedulers/gstbasicscheduler.c:
17571 (gst_basic_scheduler_cothreaded_chain),
17572 (gst_basic_scheduler_chain_recursive_add),
17573 (gst_basic_scheduler_pad_link):
17574 * gst/schedulers/gstoptimalscheduler.c:
17575 (get_group_schedule_function),
17576 (gst_opt_scheduler_state_transition),
17577 (gst_opt_scheduler_add_element), (element_get_reachables_func):
17578 * libs/gst/bytestream/bytestream.c:
17579 * libs/gst/dataprotocol/dataprotocol.c:
17580 (gst_dp_header_from_buffer):
17583 * tests/threadstate/threadstate2.c: (eos):
17584 * tools/gst-compprep.c: (main):
17585 * tools/gst-inspect.c: (print_field), (print_element_flag_info),
17586 (print_pad_info), (print_children_info):
17587 * tools/gst-launch.c: (idle_func), (main):
17588 * tools/gst-md5sum.c: (idle_func), (main):
17589 * tools/gst-xmlinspect.c: (print_element_info):
17590 First THREADED backport attempt, focusing on adding locks and
17591 making sure the API is threadsafe. Needs more work. More docs
17594 2005-02-24 Andy Wingo <wingo@pobox.com>
17596 * tests/bench-complexity.scm:
17597 * tests/complexity.gnuplot: New files, good for running complexity
17600 * tests/Makefile.am:
17601 * tests/complexity.c: New test, sets up N elements, at each level
17602 teeing into M streams per element. Eeeenteresting.
17604 * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
17605 benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
17606 running bench-mass_elements.scm.
17608 * tests/bench-mass_elements.scm: New script, runs mass_elements
17609 for various numbers of identities, outputting the results to a
17610 file. Requires guile 1.6. Just for testing.
17612 2005-02-23 Thomas Vander Stichele <thomas at apestaart dot org>
17614 * gst/schedulers/fairscheduler.c:
17615 compile with debug disabled
17617 2005-02-22 Thomas Vander Stichele <thomas at apestaart dot org>
17620 hunting season on 0.9 is now OPEN