Commit graph

1532 commits

Author SHA1 Message Date
Benjamin Otte 8cebfd7528 I suck - it's the wrong variable and I don't get it for ages even while testing this code
Original commit message from CVS:
I suck - it's the wrong variable and I don't get it for ages even while testing this code
But while I was atit, I fixed it right this time (I hope)
2003-04-25 17:35:26 +00:00
Benjamin Otte b04519c43d just to be sure...
Original commit message from CVS:
just to be sure...
2003-04-25 00:26:09 +00:00
Benjamin Otte d02583b999 fix stupid segfault when setting integer properties
Original commit message from CVS:
fix stupid segfault when setting integer properties
2003-04-24 22:34:10 +00:00
Benjamin Otte 5d35141256 fix 2 warnings
Original commit message from CVS:
fix 2 warnings
2003-04-23 20:06:54 +00:00
Thomas Vander Stichele 582913dc84 make the user registry location major-minor versioned so it doesn't clash with older incompatible registries make gst...
Original commit message from CVS:
* make the user registry location major-minor versioned so it doesn't
clash with older incompatible registries
* make gst-register output the location of the registry it's writing
2003-04-23 19:59:38 +00:00
Benjamin Otte 313c399808 workaround for bison 1.35 bug
Original commit message from CVS:
workaround for bison 1.35 bug
2003-04-23 19:16:06 +00:00
Benjamin Otte b7077cab18 make gst_thread_get_current() work with threaded cothreads
Original commit message from CVS:
make gst_thread_get_current() work with threaded cothreads
2003-04-21 18:37:13 +00:00
Benjamin Otte fb14f53284 make that error message more useful, it kept confusing me
Original commit message from CVS:
make that error message more useful, it kept confusing me
2003-04-21 18:34:20 +00:00
Benjamin Otte 7f5dc1299b assorted fixes:
Original commit message from CVS:
assorted fixes:
- fix for #111146 (works now with lots of warnings (or maybe even without - the fun of races))
- more useful debugging output
- restructuring of when to release the lock
- emitting SHUTDOWN when holding lock so we're not destroyed while signalling
- probably something else I don't remember
2003-04-21 18:09:29 +00:00
Wim Taymans 22fa9810d6 GST_DEBUG/INFO doesn't need a \n at the end.
Original commit message from CVS:
GST_DEBUG/INFO doesn't need a \n at the end.
2003-04-19 11:52:07 +00:00
Wim Taymans 5af24ec4e5 - removed an assert, mmaping the stack of another thread seems to work fine.
Original commit message from CVS:
- removed an assert, mmaping the stack of another thread seems to work fine.
This makes the cothread based scheduler work again with the new GstThread.
2003-04-19 11:50:27 +00:00
Benjamin Otte 90dc6ded4d rewrite GstThread - should be quite a bit cleaner and does change state correctly now
Original commit message from CVS:
rewrite GstThread - should be quite a bit cleaner and does change state correctly now
2003-04-18 23:35:34 +00:00
Benjamin Otte 64a6a1d2bd - make child_state_change a virtual function
Original commit message from CVS:
- make child_state_change a virtual function
- remove unneeded != NULL checks
- implement gst_bin_sync_children_state
2003-04-18 23:34:21 +00:00
Benjamin Otte 78b4079072 make EOS really recursive and not just one layer deep
Original commit message from CVS:
make EOS really recursive and not just one layer deep
2003-04-18 23:31:18 +00:00
Wim Taymans e1bfecf799 - Added a property to perform caps negotiation in the chain function instead of using proxied negotiation.
Original commit message from CVS:
- Added a property to perform caps negotiation in the chain function instead
of using proxied negotiation.
2003-04-17 22:31:32 +00:00
Wim Taymans 9811bb9aad Added a simple function gst_pad_recover_caps_error that a plugin should call from now on (instead of gst_element_erro...
Original commit message from CVS:
Added a simple function gst_pad_recover_caps_error that a plugin
should call from now on (instead of gst_element_error). This function
will emit a caps_nego_failed signal that the app can catch to resolve
the negotiation failure.
2003-04-17 22:29:31 +00:00
Wim Taymans 8365acd9b6 Transform variable properties too
Original commit message from CVS:
Transform variable properties too
2003-04-17 22:21:13 +00:00
Benjamin Otte 95b23e597d release lock before doing signal handling
Original commit message from CVS:
release lock before doing signal handling
2003-04-17 19:51:28 +00:00
Wim Taymans fff499ea25 - don't be rude but give informative message about what went wrong.
Original commit message from CVS:
- don't be rude but give informative message about what went wrong.
2003-04-17 17:11:51 +00:00
Benjamin Otte 354e85056f another bugfix, i will never get used to using the retrun value of g_(s)list_prepend
Original commit message from CVS:
another bugfix, i will never get used to using the retrun value of g_(s)list_prepend
2003-04-17 14:52:38 +00:00
Benjamin Otte 30267f6a64 It's absolute fun if you don't find this. If an element claims a successful state change but did not actually change ...
Original commit message from CVS:
It's absolute fun if you don't find this. If an element claims a successful state change but did not actually change its state it is broken and the program deserves to crash. And hard. Can you hear I'm annoyed?
2003-04-17 13:52:41 +00:00
Colin Walters 900066617c Remove dummy signals, add full signal.
Original commit message from CVS:
Remove dummy signals, add full signal.
2003-04-17 09:19:34 +00:00
Benjamin Otte 45521ec77a bugfixing in pipeline parsing. Fixed the 2 pipelines that are now added to the testsuite
Original commit message from CVS:
bugfixing in pipeline parsing. Fixed the 2 pipelines that are now added to the testsuite
2003-04-16 21:37:35 +00:00
Benjamin Otte b36a2350ba *_is_writeable => *_is_writable (spelling)
Original commit message from CVS:
*_is_writeable => *_is_writable (spelling)
2003-04-16 18:35:57 +00:00
Benjamin Otte 42efbe5648 change *_is_readonly to *_is_writeable. Hope the name stays now...
Original commit message from CVS:
change *_is_readonly to *_is_writeable. Hope the name stays now...
2003-04-15 21:33:08 +00:00
Benjamin Otte ede90a27db remove left over _needs_copy_on_write
Original commit message from CVS:
remove left over _needs_copy_on_write
2003-04-15 19:22:05 +00:00
Benjamin Otte 3941b18ca9 remove left over GST_DATA_IS_READONLY
Original commit message from CVS:
remove left over GST_DATA_IS_READONLY
2003-04-15 19:16:51 +00:00
Benjamin Otte 4bf4de13ed Ouch: gst_element_dispose does a state change to NULL. Change the state to NULL yourself if you dispose plugins that ...
Original commit message from CVS:
Ouch: gst_element_dispose does a state change to NULL. Change the state to NULL yourself if you dispose plugins that reference some of the freed memory on state changes.

This is probably broken in lots of cases.
2003-04-15 18:46:09 +00:00
Benjamin Otte 6cb527fed3 API change: remove gst_object_destroy and #defines to it
Original commit message from CVS:
API change: remove gst_object_destroy and #defines to it
2003-04-15 18:43:57 +00:00
Benjamin Otte c016763611 API change: rename (currently unused function) gst_(data|buffer)_needs_copy_on_write to gst_(data|buffer)_is_readonly...
Original commit message from CVS:
API change: rename (currently unused function) gst_(data|buffer)_needs_copy_on_write to gst_(data|buffer)_is_readonly - we don't want to confuse even core developers
2003-04-15 18:41:23 +00:00
Wim Taymans 54b35086ea - make aggregator actually work
Original commit message from CVS:
- make aggregator actually work
2003-04-14 18:58:11 +00:00
Wim Taymans d19cc5f7a0 Updated makefile too..
Original commit message from CVS:
Updated makefile too..
2003-04-14 18:53:40 +00:00
Wim Taymans eb5536af92 - Added infrastructure to run a filter against plugins, registries and registrypools. This makes it possible to creat...
Original commit message from CVS:
- Added infrastructure to run a filter against plugins, registries and
registrypools. This makes it possible to create custom code to filter
out the plugins/features you're interested in.
2003-04-14 18:53:03 +00:00
Wim Taymans 4c33218ba3 - use g_list_foreach where apropriate
Original commit message from CVS:
- use g_list_foreach where apropriate
2003-04-14 18:38:11 +00:00
Benjamin Otte 838ffca4fa enable debugging output for bison parser, fix // comments, better error recovery, error out on non-instantiable eleme...
Original commit message from CVS:
enable debugging output for bison parser, fix // comments, better error recovery, error out on non-instantiable elements (fixes #110758)
2003-04-14 18:33:58 +00:00
David Schleef 7421b1f671 Revert last Makefile.am change, and fix it correctly. I _think_ this won't break with earlier flex versions, otherwi...
Original commit message from CVS:
Revert last Makefile.am change, and fix it correctly.  I _think_
this won't break with earlier flex versions, otherwise let me know.
2003-04-13 19:40:31 +00:00
Benjamin Otte f4f0a51890 - added macros GST_CLOCK_TIME_IS_VALID and GST_BUFFE_TIMESTAMP_IS_VALID
Original commit message from CVS:
- added macros GST_CLOCK_TIME_IS_VALID and GST_BUFFE_TIMESTAMP_IS_VALID
- use macros in some places
- buffer's timestamp field is a GstClockTime, not a guint64 - this is currently the same, but be sure to only use GstClockTime when working with timestamps in the future
2003-04-13 03:07:07 +00:00
Benjamin Otte e3b00b80bc silence compiler warning
Original commit message from CVS:
silence compiler warning
2003-04-13 03:04:26 +00:00
Benjamin Otte f3fad44a00 don't error out on max-buffers = 0
Original commit message from CVS:
don't error out on max-buffers = 0
2003-04-13 00:55:08 +00:00
Wim Taymans bd3511da69 - Added function to apply a custom filter on plugin features
Original commit message from CVS:
- Added function to apply a custom filter on plugin features
2003-04-12 15:14:55 +00:00
Benjamin Otte 0c6387ce5f signal EOS on parent bins, when the last element playing sends EOS
Original commit message from CVS:
signal EOS on parent bins, when the last element playing sends EOS
2003-04-12 13:38:32 +00:00
David Schleef 5706980d33 Disable compiler warning because of a bug in flex-2.5.31
Original commit message from CVS:
Disable compiler warning because of a bug in flex-2.5.31
2003-04-11 21:44:04 +00:00
Benjamin Otte 8bfbc81d36 general fixes:
Original commit message from CVS:
general fixes:
- changed newly added locked_state API to work like GStreamer does
- added gst_element_sync_state_with_parent function
- revert: pad linking does not require non-playing state
- updated spider and pipeline parsing to link elements in playing state
- bugfix: pads are now activated when added to a playing element (broke above change)
2003-04-11 00:00:46 +00:00
Wim Taymans 3f8006734d Removed sanity check that does not hold in some cases with the opt scheduler.
Original commit message from CVS:
Removed sanity check that does not hold in some cases with the opt
scheduler.
2003-04-10 22:00:55 +00:00
Benjamin Otte 4754ab2601 documentation
Original commit message from CVS:
documentation
2003-04-10 01:45:36 +00:00
Benjamin Otte d89dd2d325 bugfix: wrong function due to missing char
Original commit message from CVS:
bugfix: wrong function due to missing char
2003-04-10 01:32:56 +00:00
David Schleef c760bb88b7 Remove grammar.output, too
Original commit message from CVS:
Remove grammar.output, too
2003-04-08 23:21:37 +00:00
David Schleef 2d40f10230 Clean up Makefile.am
Original commit message from CVS:
Clean up Makefile.am
2003-04-08 23:18:30 +00:00
David Schleef ac84bc9a55 Fix warning
Original commit message from CVS:
Fix warning
2003-04-08 23:17:36 +00:00
Benjamin Otte 3a897e2f30 rewritten pipeline parsing lands. Have fun breaking it.
Original commit message from CVS:
rewritten pipeline parsing lands. Have fun breaking it.
regressions:
- No support for filtered links. If anybody needs this, please contact me and I'll add it as fast as possible.

improvements:
- The pipeline building actually works as expected.
- syntax compatible nearly everywhere but more flexible
- better property parsing (you can now set enums by name or nick)
- uses locked_state to allow for delayed pads
- can connect video pipelines without the need for queues
- allows properties on bins
- does not return a bin, but an element.

You may want to read docs/random/company/gstparse to learn how it works.
2003-04-08 21:59:44 +00:00
Benjamin Otte 64f71f6961 do not return SUCCESS if a bin's child can't change state. This fix breaks old gstparse
Original commit message from CVS:
do not return SUCCESS if a bin's child can't change state. This fix breaks old gstparse
2003-04-08 21:50:32 +00:00
Benjamin Otte ff856af64a - clean bison- and flex-built files on make clean. (fixes #101421)
Original commit message from CVS:
- clean bison- and flex-built files on make clean. (fixes #101421)
- use CFLAGS that enable debugging symbols.
2003-04-08 21:48:27 +00:00
Benjamin Otte a03e803bb6 huge modifications, hope i didn't break something:
Original commit message from CVS:
huge modifications, hope i didn't break something:
- added functions for setting/getting locked state of elements. gst_element_lock_state syncs the pads state with the state of its parent.
- made all gst_element_link_* functions call gst_element_link_pads_filtered
- gst_element_link_pads_filtered now accepts NULL as a pad name.
- make sure the link functions are only called when the elements are paused
That's it.
2003-04-08 21:14:23 +00:00
Benjamin Otte 62d382149a pad linking only works when both elements are not playing
Original commit message from CVS:
pad linking only works when both elements are not playing
2003-04-08 21:07:46 +00:00
Benjamin Otte 55aa16f47c make typefinding work when the src provides caps. Fixes #93735
Original commit message from CVS:
make typefinding work when the src provides caps. Fixes #93735
2003-04-08 08:02:36 +00:00
David Schleef 815fb8543b add printf format and args macros for FOURCCs
Original commit message from CVS:
add printf format and args macros for FOURCCs
2003-04-07 20:11:38 +00:00
Benjamin Otte 6ddd676a02 ok, this is my nomination for idiot of the week
Original commit message from CVS:
ok, this is my nomination for idiot of the week
2003-04-04 19:52:46 +00:00
Benjamin Otte afe37388cb remove old workaround for older popt version.
Original commit message from CVS:
remove old workaround for older popt version.
2003-04-04 17:37:19 +00:00
Benjamin Otte 95b078ac08 many changes to startup handling:
Original commit message from CVS:
many changes to startup handling:
- make gst_init_with_popt_table work like gst_init - exit program on failure, return void
- add gst_init_check_with_popt_table to be the same as gst_init_with_popt_table before - work the same as gst_init_check
- revert an old workaround and apply the proper fix
- do not use g_error to exit the application, g_error causes a segfault. Use exit.
2003-04-04 16:29:37 +00:00
Benjamin Otte 42b3e8c7f1 documentation changes (thx Ross)
Original commit message from CVS:
documentation changes (thx Ross)
2003-03-30 18:30:07 +00:00
Martin Schulze df2f947370 gst/gstelementfactory.c: Add "g_free (dp->license)" in gst_element_details_free().
Original commit message from CVS:
2003-03-29  Martin Schulze  <MHL.Schulze@t-online.de>

* gst/gstelementfactory.c: Add "g_free (dp->license)" in
gst_element_details_free().
* gst/gstevent.[ch]: Add function gst_event_get_type() to
support c++ language binding. Make macros gst_event_ref[_by_count]
return a GstEvent* instead of a GstData*.
* gst/gstbuffer.[ch]: Add functions gst_buffer[_pool]_get_type()
to support c++ language binding.
2003-03-29 11:58:15 +00:00
Wim Taymans f6d654aad5 Remove redundant _clock_set
Original commit message from CVS:
Remove redundant _clock_set
2003-03-28 17:36:22 +00:00
Wim Taymans 63db8dfb67 - enable chain if an active group is added to it
Original commit message from CVS:
- enable chain if an active group is added to it
- enable group if a PLAYING element is added to it
2003-03-28 17:29:57 +00:00
Benjamin Otte fec6a61298 cleanup: remove writer/reader booleans, just signal everytime bugfix: signal not_full after flush (Martin Janzen)
Original commit message from CVS:
cleanup: remove writer/reader booleans, just signal everytime
bugfix: signal not_full after flush (Martin Janzen)
2003-03-27 03:16:08 +00:00
Wim Taymans 729bbc9c0a Added some extra debugging info
Original commit message from CVS:
Added some extra debugging info
2003-03-25 19:42:19 +00:00
Wim Taymans 1123103926 - Added _LOCKED_STATE element flag
Original commit message from CVS:
- Added _LOCKED_STATE element flag
- parent bin does not perform state changes on _LOCKED_STATE elements
2003-03-25 19:39:18 +00:00
Wim Taymans 5b91593b0e Set initial flags on various scheduler structures
Original commit message from CVS:
Set initial flags on various scheduler structures
2003-03-25 19:34:30 +00:00
Benjamin Otte e2c19765d9 fix memory leaks and unlock a mutex earlier
Original commit message from CVS:
fix memory leaks and unlock a mutex earlier
This is a 0.6 branch candidate, btw
2003-03-21 20:53:26 +00:00
Benjamin Otte 38a25af608 bugfi^H^Hworkaround: only send eos to unconnected elements - fixes new mikmod
Original commit message from CVS:
bugfi^H^Hworkaround: only send eos to unconnected elements - fixes new mikmod
2003-03-18 00:39:34 +00:00
Christian Meyer dabb6637bd Fixed bug #108514.
Original commit message from CVS:
Fixed bug #108514.
2003-03-16 20:06:02 +00:00
Benjamin Otte 17b8c5d004 added new function gst_event_has_new_media
Original commit message from CVS:
added new function gst_event_has_new_media
2003-03-16 18:29:45 +00:00
Wim Taymans 0b3a5d14db - Slight reorganisation of functions that should be disabled
Original commit message from CVS:
- Slight reorganisation of functions that should be disabled
- make sure _gst_debug_register_funcptr is #ifdeffed out when DEBUGGING is
disabled.

This should fix 106047. Please retest.
2003-03-14 18:31:47 +00:00
Benjamin Otte 981f6185c5 debugging session with wim
Original commit message from CVS:
debugging session with wim
2003-03-13 23:59:36 +00:00
Wim Taymans 4e44ab15b5 - fix unlink between decoupled elements
Original commit message from CVS:
- fix unlink between decoupled elements
- clear the entry point of a group when we remove the element
- fix a potential problem in _merge_groups that could be triggered when
someone is holding an extra refcount to the group.
2003-03-13 18:46:21 +00:00
Benjamin Otte 35391c0907 mutexes want to be free, too
Original commit message from CVS:
mutexes want to be free, too
2003-03-12 21:55:09 +00:00
Wim Taymans 678ea8bbbb Fix optimal scheduler with cothreads
Original commit message from CVS:
Fix optimal scheduler with cothreads
2003-03-11 23:26:18 +00:00
Benjamin Otte 0f2a63a169 Fix bug when joining threads.
Original commit message from CVS:
Fix bug when joining threads.
2003-03-11 21:37:36 +00:00
Benjamin Otte c3ebe159bd added (hopefully) compatible cothreads emulation by using GThreads.
Original commit message from CVS:
added (hopefully) compatible cothreads emulation by using GThreads.
use '--gst-scheduler=basicgthread' to try it out
includes bugfix for opt to call do_cothreads_init when using threads
2003-03-11 21:01:31 +00:00
Wim Taymans aab288b33e Never take away the group from a loop based element
Original commit message from CVS:
Never take away the group from a loop based element
2003-03-04 20:55:25 +00:00
Wim Taymans a82c7a7572 Better capsnego
Original commit message from CVS:
Better capsnego
2003-03-02 14:00:11 +00:00
Wim Taymans efaef0379d Also set the pad filter when proxy negotiating
Original commit message from CVS:
Also set the pad filter when proxy negotiating
2003-03-02 13:59:46 +00:00
Wim Taymans 5bda977d93 Fix the get_wrapper to handle the case where the peer group is disabled
Original commit message from CVS:
Fix the get_wrapper to handle the case where the peer group is disabled
2003-02-28 23:14:50 +00:00
Wim Taymans f006787228 Stupid bug, always use the runqueue to start scheduling things.
Original commit message from CVS:
Stupid bug, always use the runqueue to start scheduling things.
2003-02-28 17:50:04 +00:00
Wim Taymans 777cae1b0b Schedule next chain on interrupt
Original commit message from CVS:
Schedule next chain on interrupt
2003-02-27 23:47:40 +00:00
Wim Taymans 71775c37e3 - More refcounting fixes that now sustain abuse from spider, key is to be careful when iterating over a list when our...
Original commit message from CVS:
- More refcounting fixes that now sustain abuse from spider, key is to be
careful when iterating over a list when our current pointer could be
removed.
2003-02-27 23:07:30 +00:00
Wim Taymans e44d5c1d4a Removed an assert that will not hold when the chain currently executing was merged into another one.
Original commit message from CVS:
Removed an assert that will not hold when the chain currently executing
was merged into another one.
2003-02-27 21:23:39 +00:00
Wim Taymans ecb6dd6c6a so it's no big thing.
Original commit message from CVS:
- API change in padprobes, nobody uses this yet (or could), so it's no big
thing.
2003-02-27 18:56:30 +00:00
Wim Taymans 2b3c56c4d1 print refcount in _show
Original commit message from CVS:
print refcount in _show
2003-02-27 18:29:07 +00:00
Wim Taymans 91d33d766a Added refcounting to the optimal scheduler to guard against modifications during iterations
Original commit message from CVS:
Added refcounting to the optimal scheduler to guard against modifications
during iterations
2003-02-27 18:21:34 +00:00
Wim Taymans ddd3265b11 Add refcounting around _iterate to guard against unreffing in scheduling callbacks or other nastyties
Original commit message from CVS:
Add refcounting around _iterate to guard against unreffing in scheduling
callbacks or other nastyties
2003-02-27 18:18:32 +00:00
Wim Taymans 687448e204 Small cleanup
Original commit message from CVS:
Small cleanup
2003-02-27 18:16:29 +00:00
Wim Taymans 8d011c1f87 Fix typo
Original commit message from CVS:
Fix typo
2003-02-27 18:15:50 +00:00
Wim Taymans f1b49bfcad Adjust the fixed flag in gst_caps_set_props
Original commit message from CVS:
Adjust the fixed flag in gst_caps_set_props
2003-02-25 19:52:03 +00:00
Wim Taymans faa67ac4af Also allow static plugin registration after calling _gst_plugin_init()
Original commit message from CVS:
Also allow static plugin registration after calling _gst_plugin_init()
2003-02-23 23:25:30 +00:00
Wim Taymans ef258ceb50 - Added generic shaper element that keeps two streams in sync.
Original commit message from CVS:
- Added generic shaper element that keeps two streams in sync.
2003-02-23 20:29:12 +00:00
Christian Schaller e8b49479dd Added cutter patch from Andrew Turner and sat default scheduler to opt
Original commit message from CVS:
Added cutter patch from Andrew Turner and sat default scheduler to opt
2003-02-23 20:15:00 +00:00
Benjamin Otte 8ec39fa76f Hi, my name is Uraeus and I don't compile code before committing :p
Original commit message from CVS:
Hi, my name is Uraeus and I don't compile code before committing :p
2003-02-23 11:28:19 +00:00
Christian Schaller 3fdcd5e9fa adding re-license statement
Original commit message from CVS:
adding re-license statement
2003-02-23 10:53:42 +00:00
Wim Taymans aebe47dccd dump_mem should be fast and correct now (finally)
Original commit message from CVS:
dump_mem should be fast and correct now (finally)
2003-02-21 19:58:24 +00:00
Wim Taymans 6d3d60df51 turn g_print into GST_INFO
Original commit message from CVS:
turn g_print into GST_INFO
2003-02-21 19:55:23 +00:00