Commit graph

197 commits

Author SHA1 Message Date
Thomas Vander Stichele
97f89b5365 make signals use dashes in the names
Original commit message from CVS:
make signals use dashes in the names
2004-03-04 20:06:02 +00:00
Thomas Vander Stichele
2346190c2b add RELEASE file again update of release strategy
Original commit message from CVS:
add RELEASE file again
update of release strategy
2004-02-27 12:39:33 +00:00
Andy Wingo
3f5a8814d5 gst/gstelement.c (gst_element_dispose): Protect against multiple invocations.
Original commit message from CVS:
2004-02-24  Andy Wingo  <wingo@pobox.com>

* gst/gstelement.c (gst_element_dispose): Protect against multiple
invocations.

* gst/schedulers/gstoptimalscheduler.c
I added a mess of prototypes at the top of the file by way of
documentation. Some of the operations on chains and groups were
re-organized.

(create_group): Added a type argument so if the group is enabled,
the setup_group_scheduler knows what to do.
(group_elements): Added a type argument here, too, to be passed on
to create_group.
(group_element_set_enabled): If an unlinked PLAYING element is
added to a bin, we have to create a new group to hold the element,
and this function will be called before the group is added to the
chain. Thus we have a valid case for group->chain==NULL. Instead
of calling chain_group_set_enabled, just set the flag on the group
(the chain's status will be set when the group is added to it).
(gst_opt_scheduler_state_transition, chain_group_set_enabled):
Setup the group scheduler when the group is enabled, not
specifically when an element goes PAUSED->PLAYING. This means
PLAYING elements can be added, linked, and scheduled into a
PLAYING pipeline, as was intended.
(add_to_group): Don't ref the group twice. I don't know when this
double-ref got in here. Removing it has the potential to cause
segfaults if other parts of the scheduler are buggy. If you find
that the scheduler is segfaulting for you, put in an extra ref
here and see if that hacks over the underlying issue. Of course,
then find out what code is unreffing a group it doesn't own...
(create_group): Make the extra refcount floating, and remove it
after adding the element. This means that...
(unref_group): Destroy when the refcount reaches 0, not 1, like
every other refcounted object in the known universe.
(remove_from_group): When a group becomes empty, set it to be not
active, and remove it from its chain. Don't unref it again,
there's no floating reference any more.
(destroy_group): We have to remove the group from the chain in
remove_from_group (rather than here) to break refcounting cycles
(the chain always has a ref on the group). So assert that
group->chain==NULL.
(ref_group_by_count): Removed, it was commented out anyway.
(merge_chains): Use the remove_from_chain and add_to_chain
primitives to do the reparenting, instead of rolling our own
implementation.
(add_to_chain): The first non-disabled group in the chain's group
list will be the entry point for the chain. Because buffers can
accumulate in loop elements' peer bufpens, we preferentially
schedule loop groups before get groups to avoid unnecessary
execution of get-based groups when the bufpens are already full.
(gst_opt_scheduler_schedule_run_queue): Debug fixes.
(get_group_schedule_function): Ditto.
(loop_group_schedule_function): Ditto.
(gst_opt_scheduler_loop_wrapper): Ditto.
(gst_opt_scheduler_iterate): Ditto.

I understand the opt scheduler now, yippee!

* gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
(gst_pad_get_name, gst_pad_set_chain_function)
(gst_pad_set_get_function, gst_pad_set_event_function)
(gst_pad_set_event_mask_function, gst_pad_get_event_masks)
(gst_pad_get_event_masks_default, gst_pad_set_convert_function)
(gst_pad_set_query_function, gst_pad_get_query_types)
(gst_pad_get_query_types_default)
(gst_pad_set_internal_link_function)
(gst_pad_set_formats_function, gst_pad_set_link_function)
(gst_pad_set_fixate_function, gst_pad_set_getcaps_function)
(gst_pad_set_bufferalloc_function, gst_pad_unlink)
(gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent)
(gst_pad_add_ghost_pad, gst_pad_proxy_getcaps)
(gst_pad_proxy_pad_link, gst_pad_proxy_fixate)
(gst_pad_get_pad_template_caps, gst_pad_check_compatibility)
(gst_pad_get_peer, gst_pad_get_allowed_caps)
(gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull)
(gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps)
(gst_pad_event_default_dispatch, gst_pad_event_default)
(gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default)
(gst_pad_convert, gst_pad_query_default, gst_pad_query)
(gst_pad_get_formats_default, gst_pad_get_formats): Better
argument checks, and some doc fixes.

(gst_pad_custom_new_from_template): Um, does anyone
use these functions? Actually make a custom pad instead of a
normal one.
(gst_pad_try_set_caps): Transpose some checks.
(gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
the pad is in negotiation.
(gst_pad_try_relink_filtered): Use pad_link_prepare.

* gst/gstelement.c: Remove prototypes also defined in gstclock.h.

* gst/gstelement.h:
* gst/gstclock.h: Un-deprecate the old clocking API, as discussed
on the list.
2004-02-25 13:16:12 +00:00
David Schleef
cc276e9364 random checkin
Original commit message from CVS:
random checkin
2004-02-20 02:32:21 +00:00
Thomas Vander Stichele
4d114d44f5 various fixes
Original commit message from CVS:
various fixes
2004-02-12 16:31:59 +00:00
David Schleef
7e6017aac1 docs/gst/tmpl/gstcaps.sgml: Fix stuff that mentions GstProps
Original commit message from CVS:
* docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
* docs/gst/tmpl/gstpadtemplate.sgml: same
* docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
* gst/gstobject.c: (gst_object_set_name_default): Do the memleak
fixing dance.
* gst/gstutils.c: Remove disabled code that uses GstProps.
* gst/registries/gstxmlregistry.h: same
* docs/random/ds/0.9-suggested-changes: random notes
2004-02-11 20:16:33 +00:00
David Schleef
d19ae033fd docs/random/ds/0.9-suggested-changes: Random ramblings
Original commit message from CVS:
* docs/random/ds/0.9-suggested-changes: Random ramblings
* gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
to int before printing.
* gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
* gst/parse/parse.l: same.  See bug #129600
2004-02-07 01:23:13 +00:00
Thomas Vander Stichele
a4e5d02aef bump nano add release target
Original commit message from CVS:
bump nano
add release target
2004-02-06 13:07:20 +00:00
Thomas Vander Stichele
5cafe6cc17 so i odn't forget
Original commit message from CVS:
so i odn't forget
2004-02-06 11:53:15 +00:00
David Schleef
ad3863ac5e docs/random/ds/0.9-suggested-changes: random notes
Original commit message from CVS:
* docs/random/ds/0.9-suggested-changes: random notes
* gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
(gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
expansion.
* gst/elements/gstfilesink.c: (gst_filesink_get_formats),
(gst_filesink_get_query_types): same
* gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
(gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
* gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
to use new GST_PTR_FORMAT.
* gst/gstelement.h: deprecate function factory macros
GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
These are our last variadic macros that can't be replaced with
inlines.  Celebrate!  Also fix a typo in an #ifdef that was
attempting to deprecate gst_element_clock_wait().
* gst/gstevent.h: same
* gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
(gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
* gst/gstpad.h: deprecate function factory macros similar to above.
2004-02-04 19:38:33 +00:00
Thomas Vander Stichele
031bcfd561 suffix error with period
Original commit message from CVS:
suffix error with period
2004-02-02 17:29:30 +00:00
Benjamin Otte
5d0b5a209f docs/random/mimetypes: update raw int/float info
Original commit message from CVS:
2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>

* docs/random/mimetypes:
update raw int/float info
* gst/gsttag.c: (_gst_tag_initialize):
* gst/gsttag.h:
add GST_TAG_ENCODER
2004-01-31 11:17:43 +00:00
Andy Wingo
4587a3f2c3 add pro audio doc
Original commit message from CVS:
add pro audio doc
2004-01-30 14:19:46 +00:00
Benjamin Otte
140c4dd060 docs/random/mimetypes: correct Theora information
Original commit message from CVS:
2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>

* docs/random/mimetypes:
correct Theora information
* gst/gstelement.h:
make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
2004-01-30 03:54:08 +00:00
Julien Moutte
7e586c017f docs/random/ds/element-checklist: Adding some notes about src events.
Original commit message from CVS:
2004-01-29  Julien MOUTTE <julien@moutte.net>

* docs/random/ds/element-checklist: Adding some notes about src
events.
2004-01-29 10:35:29 +00:00
Ronald S. Bultje
520d5c37f5 docs/random/mimetypes: Update docs to point to correct elements for various mimetypes, and some more errors pointed o...
Original commit message from CVS:
2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>

* docs/random/mimetypes:
Update docs to point to correct elements for various mimetypes, and
some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
<stephane.loeuillet@tiscali.fr>.
2004-01-29 09:28:58 +00:00
Benjamin Otte
807937481e docs/random/mimetypes: update docs for audio/x-raw-float. Add "buffer-frames=0 means undefined"
Original commit message from CVS:
2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>

* docs/random/mimetypes:
update docs for audio/x-raw-float. Add "buffer-frames=0 means
undefined"
* gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
make it only work in NULL.
* gst/gstcaps.c:
don't posion NULL caps
* gst/gstelement.c: (gst_element_set_time):
add debugging statement
* gst/gstelement.c: (gst_element_emit_found_tag),
(gst_element_found_tag_func), (gst_element_found_tags):
* gst/gstelement.h:
These functions take const taglists
* gst/gstpad.c: (gst_pad_proxy_getcaps):
fix memleak
* gst/gstpad.c: (gst_pad_event_default):
make more effort on handling discont and clocks, g_warn if everything
fails
* gst/gststructure.c: (gst_structure_remove_fields),
(gst_structure_remove_fields_valist):
* gst/gststructure.h:
add gst_structure_remove_fields(_valist)
* gst/gsttag.c:
fix doc glitch
2004-01-29 02:24:52 +00:00
David Schleef
a842daf05e docs/random/ds/element-checklist: Notes about gst_caps_to_string()
Original commit message from CVS:
* docs/random/ds/element-checklist: Notes about gst_caps_to_string()
* gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
Fix memory leakage of gst_caps_to_string().
Use GST_PTR_FORMAT instead of gst_caps_to_string():
* gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
* gst/autoplug/gstspideridentity.c: (spider_find_suggest),
(gst_spider_identity_sink_loop_type_finding):
* gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
(find_suggest):
* gst/gstpad.c: (gst_pad_try_relink_filtered),
(gst_pad_set_explicit_caps):
* gst/parse/grammar.y:
2004-01-29 01:44:08 +00:00
David Schleef
6a096813d4 configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
Original commit message from CVS:
* configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
GST_PRINTF_EXTENSION_FORMAT_DEFINE.
* docs/random/ds/0.9-suggested-changes: Notes from Company.
* gst/gstcaps.c: (gst_caps_to_string): Add comment.
* gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
* gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
(gst_debug_log_default), (_gst_info_printf_extension),
(_gst_info_printf_extension_arginfo):  Add printf extension.
* gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
* gst/gststructure.c: (gst_structure_to_string),
(_gst_structure_parse_value): Use gst_value_deserialize() and
remove old code.
* gst/gstvalue.c: (gst_value_deserialize_fourcc),
(gst_value_deserialize_boolean), (gst_strtoi),
(gst_value_deserialize_int), (gst_value_deserialize_double),
(gst_value_deserialize_string), (gst_value_deserialize): Implement
a bunch of deserialize functions and gst_value_deserialize.
* gst/gstvalue.h: er, _de_serialize, not unserialize
* testsuite/caps/string-conversions.c: (main): We don't currently
handle (float) in caps, so convert these to (double).
* testsuite/debug/Makefile.am: Add new test for the printf extension
* testsuite/debug/printf_extension.c: (main): same
2004-01-29 01:20:23 +00:00
Benjamin Otte
0d25cd2aa4 docs/random/company/time: Add some docs about clocking and time
Original commit message from CVS:
2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>

* docs/random/company/time:
Add some docs about clocking and time
2004-01-28 22:02:22 +00:00
Thomas Vander Stichele
2dabfe7567 adding docs
Original commit message from CVS:
adding docs
2004-01-19 18:00:43 +00:00
Benjamin Otte
60bf7ab302 add thoughts about push vs pull
Original commit message from CVS:
add thoughts about push vs pull
2004-01-18 19:06:10 +00:00
David Schleef
40b4e2cb9c Add QDM2
Original commit message from CVS:
Add QDM2
2004-01-16 09:20:42 +00:00
Leif Johnson
a9514e81c4 head -5 ChangeLog
Original commit message from CVS:
`head -5 ChangeLog `
2004-01-15 23:48:03 +00:00
Thomas Vander Stichele
dc31c88b68 add _remove/_intersect tip
Original commit message from CVS:
add _remove/_intersect tip
2004-01-13 09:40:28 +00:00
David Schleef
1bb63cae00 Add Company's email about tagging
Original commit message from CVS:
Add Company's email about tagging
2004-01-13 00:39:17 +00:00
David Schleef
c0f04fe675 notes about 0.9
Original commit message from CVS:
notes about 0.9
2004-01-11 22:52:16 +00:00
David Schleef
40e14cf2b7 #3
Original commit message from CVS:
#3
2004-01-11 22:23:02 +00:00
David Schleef
41f4e04de9 more notes
Original commit message from CVS:
more notes
2004-01-09 01:24:22 +00:00
David Schleef
5d7159b887 email about bufferpool replacement
Original commit message from CVS:
email about bufferpool replacement
2004-01-08 21:59:00 +00:00
David Schleef
74c1f385b0 A checklist of things to check in elements
Original commit message from CVS:
A checklist of things to check in elements
2004-01-05 21:29:35 +00:00
David Schleef
fcfb110e96 minor wording change
Original commit message from CVS:
minor wording change
2004-01-02 06:57:32 +00:00
Thomas Vander Stichele
9c37fb0480 links works fine too for getting release notes
Original commit message from CVS:
links works fine too for getting release notes
2003-12-23 16:01:13 +00:00
David Schleef
faeffad04e Add some notes about negotiation
Original commit message from CVS:
Add some notes about negotiation
2003-12-22 09:35:12 +00:00
David Schleef
8c9cd079d4 Merge CAPS branch
Original commit message from CVS:
Merge CAPS branch
2003-12-22 01:39:35 +00:00
Thomas Vander Stichele
54b3850775 this is the real old changelog
Original commit message from CVS:
this is the real old changelog
2003-12-21 19:11:33 +00:00
Thomas Vander Stichele
ff679367f0 old gst-plugins ChangeLog
Original commit message from CVS:
old gst-plugins ChangeLog
2003-12-21 19:09:18 +00:00
Ronald S. Bultje
8cf94a0c18 New start
Original commit message from CVS:
New start
2003-12-21 18:55:24 +00:00
Christian Schaller
b16c88aed3 adding gstreamer and midi doc
Original commit message from CVS:
adding gstreamer and midi doc
2003-12-21 12:37:48 +00:00
David Schleef
55bb164fb5 global change to video/x-ms-asf and video/x-msvideo
Original commit message from CVS:
global change to video/x-ms-asf and video/x-msvideo
2003-11-29 04:38:44 +00:00
Ronald S. Bultje
8bce98d062 Add doc on how typefind works and some other random thoughts
Original commit message from CVS:
Add doc on how typefind works and some other random thoughts
2003-10-02 19:12:54 +00:00
Ronald S. Bultje
6fbff1c106 New typefind system: bytestream is now part of the core all plugins have been modified to use this new typefind syste...
Original commit message from CVS:
New typefind system:
* bytestream is now part of the core
* all plugins have been modified to use this new typefind system
* asf typefinding added
* mpeg video stream typefiding removed because it's broken
* duplicate typefind entries removed
* extra id3 typefinding added, because we've seen 4 types of files
(riff/wav, flac, vorbis, mp3) with id3 headers and each of these needs
to work. Instead, I've added an id3 element and let it redo typefiding
after the id3 header. this needs a hack because spider only typefinds
once. We can remove this hack once spider supports multiple typefinds.
* with all this, mp3 typefinding is semi-rewritten
* id3 typefinding in flac/vorbis is removed, it's no longer needed
* fixed spider and gst-typefind to use this, too.
* Other general cleanups
2003-10-01 13:11:45 +00:00
Ronald S. Bultje
2434fa9ebf Update, now that I understand interfaces a bit better...
Original commit message from CVS:
Update, now that I understand interfaces a bit better...
2003-09-13 10:17:49 +00:00
Ronald S. Bultje
5d76a2e9b3 Implement generic interface stuff, with per-instance support checking instead of per-class checking
Original commit message from CVS:
Implement generic interface stuff, with per-instance support checking instead of per-class checking
2003-09-13 01:10:12 +00:00
Ronald S. Bultje
7af246f2ef bla bla... some new stuff
Original commit message from CVS:
bla bla... some new stuff
2003-09-08 19:58:40 +00:00
Ramon Garcia Fernandez
e63c0a9aa2 Added specification document of the RTP client subsystem.
Original commit message from CVS:


Added specification document of the RTP client subsystem.
2003-09-08 17:59:17 +00:00
Ronald S. Bultje
8ff69a6cc8 Add GInterface
Original commit message from CVS:
Add GInterface
2003-09-04 21:03:12 +00:00
Ronald S. Bultje
68d336393e Add some class/init example code (on request of zeenix)
Original commit message from CVS:
Add some class/init example code (on request of zeenix)
2003-08-29 06:50:56 +00:00
Ronald S. Bultje
ae97ea085f A generic interface proposal
Original commit message from CVS:
A generic interface proposal
2003-08-28 20:48:54 +00:00
Thomas Vander Stichele
846ecd63d7 more info
Original commit message from CVS:
more info
2003-08-26 23:36:27 +00:00