Commit graph

1021 commits

Author SHA1 Message Date
Wim Taymans
69b7a292d6 Added a runtime option to use a dummy threading implementation that uses
Original commit message from CVS:
Added a runtime option to use a dummy threading implementation that uses
NOPs for all synchronisation and threading operations.
2002-06-21 14:50:00 +00:00
Andy Wingo
694b7ee912 cleanups
Original commit message from CVS:
cleanups
2002-06-21 14:35:45 +00:00
Wim Taymans
1fa83fa256 Pass some required params to cothreads_init
Original commit message from CVS:
Pass some required params to cothreads_init
2002-06-21 08:00:13 +00:00
Wim Taymans
3dd3895eea Added _get_prefered_stack to the scheduler
Original commit message from CVS:
Added _get_prefered_stack to the scheduler
2002-06-19 18:13:28 +00:00
Thomas Vander Stichele
87b2474153 is make distcheck that much to ask ?
Original commit message from CVS:
is make distcheck that much to ask ?
2002-06-18 09:00:23 +00:00
Wim Taymans
29cafb7481 Allocate a few more bytes as gmarkup reads past the end of the allocated buffer
Original commit message from CVS:
Allocate a few more bytes as gmarkup reads past the end of the
allocated buffer
2002-06-17 19:23:05 +00:00
Wim Taymans
f8ca62be6e Only revert the state of the failed element
Original commit message from CVS:
Only revert the state of the failed element
2002-06-17 16:00:10 +00:00
David I. Lehn
bb83c424e4 auto build some enum code.
Original commit message from CVS:
auto build some enum code.
useful for things like autogenerated python bindings.
2002-06-16 23:23:28 +00:00
Wim Taymans
b1125b04ba Added more debugging info
Original commit message from CVS:
Added more debugging info
2002-06-16 22:36:10 +00:00
Wim Taymans
7eb08447b9 Some small cleanups implement a default _clock_wait
Original commit message from CVS:
Some small cleanups
implement a default _clock_wait
2002-06-16 21:50:50 +00:00
Thomas Vander Stichele
8e0687e93d print the name
Original commit message from CVS:
print the name
2002-06-16 21:20:07 +00:00
Wim Taymans
02adc6b669 Better add the check instead of crashing
Original commit message from CVS:
Better add the check instead of crashing
2002-06-16 19:48:38 +00:00
Wim Taymans
bfca3a0739 Fixed the fast scheduler by proxying event to the event handler when the element is not event aware.
Original commit message from CVS:
Fixed the fast scheduler by proxying event to the event handler when the
element is not event aware.
2002-06-16 19:33:15 +00:00
Wim Taymans
36313bb0c7 Added --gst-version that does nothing else than to print out the core version number the app is using.
Original commit message from CVS:
Added --gst-version that does nothing else than to print out the core
version number the app is using.
2002-06-16 19:08:21 +00:00
Wim Taymans
4d85bfc2df Use setfunc to set the cothread function instead of _reset
Original commit message from CVS:
Use setfunc to set the cothread function instead of _reset
2002-06-16 17:34:14 +00:00
Thomas Vander Stichele
ac889ced82 changing default scheduler to wingo's spiffy standard one, since it doesn't look up for as many users as basic ;)
Original commit message from CVS:
changing default scheduler to wingo's spiffy standard one, since it
doesn't look up for as many users as basic ;)
2002-06-16 10:33:55 +00:00
Wim Taymans
32f702aa20 Better error handling when mmap'ing
Original commit message from CVS:
Better error handling when mmap'ing
2002-06-15 16:12:20 +00:00
Wim Taymans
9286f126e2 Added a size event to optimize buffer sizes make filesrc update its blocksize when it receives a size event
Original commit message from CVS:
Added a size event to optimize buffer sizes
make filesrc update its blocksize when it receives a size event
2002-06-13 22:27:40 +00:00
Thomas Vander Stichele
319a6a3672 strange this didn't get commited on a regular commit
Original commit message from CVS:
strange this didn't get commited on a regular commit
2002-06-13 15:08:52 +00:00
Wim Taymans
c8e8981be8 Documentation updates
Original commit message from CVS:
Documentation updates
Make spider forward bufferpools
Remove some old registry code
2002-06-12 22:26:36 +00:00
Wim Taymans
19055c8091 Removed deprecated disksink
Original commit message from CVS:
Removed deprecated disksink
2002-06-11 21:06:53 +00:00
Thomas Vander Stichele
4cd77fab14 xavpatch
Original commit message from CVS:
xavpatch
2002-06-11 21:03:48 +00:00
Steve Baker
a415cdd34e remove the "iterate_started" signal and replace it with pre_iterate and post_iterate callbacks.
Original commit message from CVS:
remove the "iterate_started" signal and replace it with pre_iterate and post_iterate callbacks.

Apps can now put a lock around an iterate so they can do stuff on the bin from another thread. much nicer than the signal approach.
2002-06-10 16:48:47 +00:00
Wim Taymans
280affd3df Remove old flag
Original commit message from CVS:
Remove old flag
2002-06-09 21:14:48 +00:00
Wim Taymans
da176ab8ca Added the flush flag
Original commit message from CVS:
Added the flush flag
2002-06-09 12:13:56 +00:00
Wim Taymans
3ab6d4c0e2 Whan the buffer is filled, the buffer is kept and added to the queue when there is room again. Don't do this after a ...
Original commit message from CVS:
Whan the buffer is filled, the buffer is kept and added to the queue
when there is room again. Don't do this after a flush.
2002-06-09 12:13:30 +00:00
Wim Taymans
a358f61b5f Loop the clock providers until we find one with a clock.
Original commit message from CVS:
Loop the clock providers until we find one with a clock.
2002-06-08 23:45:53 +00:00
Wim Taymans
ce100a8211 Revert queue event forwarding, added comments what it is supposed to do.
Original commit message from CVS:
Revert queue event forwarding, added comments what it is supposed to do.
2002-06-08 16:30:43 +00:00
Steve Baker
89f8aec72e g_print bad
Original commit message from CVS:
g_print bad
2002-06-08 16:15:02 +00:00
Steve Baker
e9e6b0797d put upstream events in an async queue and resend them at the start of the chain. not working as expected yet but a start
Original commit message from CVS:
put upstream events in an async queue and resend them at the start of the chain. not working as expected yet but a start
2002-06-08 16:13:18 +00:00
Wim Taymans
f50d53e209 A discont event is the right way to handle seeking on filesink IMO
Original commit message from CVS:
A discont event is the right way to handle seeking on filesink IMO
2002-06-08 15:00:30 +00:00
Wim Taymans
9e238148e1 Added element query
Original commit message from CVS:
Added element query
2002-06-08 14:59:34 +00:00
Wim Taymans
225d11913c Return the result of the forwarded seek instead of TRUE
Original commit message from CVS:
Return the result of the forwarded seek instead of TRUE
2002-06-08 14:58:03 +00:00
Wim Taymans
3824189da5 Add an event function so that seek events are not forwarded when we have a cache, seeking in the cache still needs to...
Original commit message from CVS:
Add an event function so that seek events are not forwarded when we
have a cache, seeking in the cache still needs to be implemented though..
2002-06-08 12:51:11 +00:00
Steve Baker
174324865f INT64 is good for passing timestamps in signals
Original commit message from CVS:
INT64 is good for passing timestamps in signals
2002-06-08 11:57:49 +00:00
Steve Baker
7ae62fa9bf a couple of fixes here:
Original commit message from CVS:
a couple of fixes here:
- forward eos events to all src pads, even if spider didn't connect them. this ensures that the pipeline will stay in a consistant state even when not all pads are sent data
- don't check for nonnull spider until it is actually needed.  it really is null when it has been disposed and this method is called.
2002-06-07 19:41:35 +00:00
Steve Baker
a02e75b8d4 make sure gst_spider_plug isn't called while in playing state
Original commit message from CVS:
make sure gst_spider_plug isn't called while in playing state
2002-06-07 19:37:00 +00:00
Steve Baker
9546949ebf added a "iterate_started" signal which fires before the iterate of a bin. useful for non-threadsafe operations like s...
Original commit message from CVS:
added a "iterate_started" signal which fires before the iterate of a bin. useful for non-threadsafe operations like seek in threaded pipelines
2002-06-07 19:34:52 +00:00
Steve Baker
075ca64022 file is opened in ready->paused rather than null->ready. this makes it easier to set the location more than once
Original commit message from CVS:
file is opened in ready->paused rather than null->ready. this makes it easier to set the location more than once
2002-06-07 19:32:53 +00:00
Wim Taymans
d939cb1a4f Fix the case where one of the pads is a ghostpad.
Original commit message from CVS:
Fix the case where one of the pads is a ghostpad.
2002-06-05 18:56:31 +00:00
Wim Taymans
be30fb14fd Set the right scheduler on the pads of decoupled elements.
Original commit message from CVS:
Set the right scheduler on the pads of decoupled elements.
2002-06-05 18:10:55 +00:00
Wim Taymans
b7b63ff4cd Make sure we interrupt the right scheduler on the right pad.
Original commit message from CVS:
Make sure we interrupt the right scheduler on the right pad.
2002-06-05 18:10:07 +00:00
Wim Taymans
a0979c2ddc Some sanity checking emit a warning when interrupting a queue bacause we do it wrongly
Original commit message from CVS:
Some sanity checking
emit a warning when interrupting a queue bacause we do it wrongly
2002-06-04 23:00:36 +00:00
Wim Taymans
005a79ba91 No \n for DEBUG, thank you
Original commit message from CVS:
No \n for DEBUG, thank you
2002-06-04 21:04:41 +00:00
Wim Taymans
62cea79ba7 Some cleanups, refactor some code, make sure the decoupled peer element has the right handlers
Original commit message from CVS:
Some cleanups, refactor some code, make sure the decoupled peer element
has the right handlers
2002-06-04 21:03:35 +00:00
Wim Taymans
9c06c22359 Fix define
Original commit message from CVS:
Fix define
2002-06-04 21:01:58 +00:00
Wim Taymans
9d4eee380a Fix a little typo, unlock the peer element if it's decoupled instead of our own element
Original commit message from CVS:
Fix a little typo, unlock the peer element if it's decoupled instead
of our own element
2002-06-04 21:01:10 +00:00
Wim Taymans
ed1d8a37b8 Add iterate mutex for future use
Original commit message from CVS:
Add iterate mutex for future use
2002-06-03 19:53:47 +00:00
Wim Taymans
d88e845615 Poll instead of blocking when waiting for a state change
Original commit message from CVS:
Poll instead of blocking when waiting for a state change
2002-06-03 19:50:41 +00:00
Steve Baker
8713cd5e0e add an optional timeout for when queue blocks. when timeout is reached a GST_EVENT_FILLER is sent downstream
Original commit message from CVS:
add an optional timeout for when queue blocks. when timeout is reached a GST_EVENT_FILLER is sent downstream
This is needed for gst-player since videosink has to be in the same thread as the ui, and spider blocks when there is no video (thus freezing the ui).
2002-06-03 15:44:28 +00:00
Wim Taymans
13da8d6e09 Removed \n in DEBUG some buffer flags for future use
Original commit message from CVS:
Removed \n in DEBUG
some buffer flags for future use
2002-06-02 21:45:16 +00:00
Wim Taymans
a872862453 If format and source are the same, we allready know the result in the convert function
Original commit message from CVS:
If format and source are the same, we allready know the result in
the convert function
2002-06-02 20:10:46 +00:00
Wim Taymans
7e1a122599 Some sanity checking for when the element was removed from the pipeline.
Original commit message from CVS:
Some sanity checking for when the element was removed from the pipeline.
2002-06-02 17:44:20 +00:00
Andy Wingo
0694a337a1 Properly fix locking in the scheduler
Original commit message from CVS:
Properly fix locking in the scheduler
2002-06-02 16:20:09 +00:00
Thomas Vander Stichele
641b5a1e5d UNITS is better.
Original commit message from CVS:
UNITS is better.
2002-06-02 15:48:13 +00:00
Wim Taymans
74f97cd6f8 Don't update state if the peer event failed
Original commit message from CVS:
Don't update state if the peer event failed
2002-06-02 15:34:34 +00:00
Wim Taymans
816275f8ad Make clock use nanoseconds
Original commit message from CVS:
Make clock use nanoseconds
2002-06-02 13:24:35 +00:00
Wim Taymans
ee7c28d455 Remove the media specific types, the unit type is now defined by the caps (frames/samples/etc..)
Original commit message from CVS:
Remove the media specific types, the unit type is now defined by the
caps (frames/samples/etc..)
2002-06-02 11:54:36 +00:00
Wim Taymans
54580cf3fb unlock the queue
Original commit message from CVS:
unlock the queue
2002-06-02 11:51:26 +00:00
Wim Taymans
0a2c1e9c61 Some cleanups
Original commit message from CVS:
Some cleanups
Add a KEY_UNIT flag for a seek event.
2002-06-02 11:49:57 +00:00
Wim Taymans
71e51b171c This is needed after all..
Original commit message from CVS:
This is needed after all..
2002-06-02 11:21:35 +00:00
Wim Taymans
9940947219 Remove crappy event code from tee
Original commit message from CVS:
Remove crappy event code from tee
Some more debugging info in filesrc
2002-05-31 21:36:11 +00:00
Wim Taymans
6f8ddd3043 Set the element to eos after all EOS events are pushed
Original commit message from CVS:
Set the element to eos after all EOS events are pushed
2002-05-31 21:34:45 +00:00
Thomas Vander Stichele
ea74061a18 fix and comment
Original commit message from CVS:
fix and comment
2002-05-31 08:51:32 +00:00
Steve Baker
6712bc3afa only use ranked element factories for autoplugging. This is the only commit that needs to be backed out to reinstate ...
Original commit message from CVS:
only use ranked element factories for autoplugging. This is the only commit that needs to be backed out to reinstate previous behaviour.

Before your spider will work again, you will have to update/rebuild plugins and run gst-register.
2002-05-31 08:32:49 +00:00
Steve Baker
c4cd6b8381 save/load the elementfactory rank
Original commit message from CVS:
save/load the elementfactory rank
2002-05-31 08:18:13 +00:00
Steve Baker
5d902beab8 add a rank to elementfactory for autoplugging
Original commit message from CVS:
add a rank to elementfactory for autoplugging
2002-05-31 08:17:15 +00:00
Wim Taymans
a599a5b1df Created an overridable method for seeking on an element, along with a default implementation.
Original commit message from CVS:
Created an overridable method for seeking on an element, along with a default
implementation.
make queue flush on discont (not entirely correct)
removed the new_media from the discont event.
2002-05-30 19:03:30 +00:00
Thomas Vander Stichele
0aa7b2db8c show file
Original commit message from CVS:
show file
2002-05-30 16:31:36 +00:00
Andy Wingo
24b89ebfd6 allow colons in indentifier names (for jack: " ... !alsa_pcm:out_1 jacksink")
Original commit message from CVS:
allow colons in indentifier names (for jack: " ... !alsa_pcm:out_1 jacksink")
2002-05-30 04:50:46 +00:00
Andy Wingo
c6446629ef fix spider to accomodate filesrc's new behavior (ie, sending a DISCONT before any data)
Original commit message from CVS:
fix spider to accomodate filesrc's new behavior (ie, sending a DISCONT before any data)
2002-05-30 04:33:01 +00:00
Steve Baker
52af47c5e4 fix from wingo so that get functions inside threads won't be locked twice
Original commit message from CVS:
fix from wingo so that get functions inside threads won't be locked twice
2002-05-29 15:33:46 +00:00
Wim Taymans
b07791a06b Handle the case where the pad change mid-switch.
Original commit message from CVS:
Handle the case where the pad change mid-switch.
Handle the case where the entry poin is removed from the scheduler.
2002-05-29 15:09:36 +00:00
Wim Taymans
fddb92b5e2 Error checking in pthread creation more info in gst_util_dump_mem
Original commit message from CVS:
Error checking in pthread creation
more info in gst_util_dump_mem
2002-05-29 15:01:50 +00:00
Wim Taymans
e4637a0a82 Some cleanups, more debugging info
Original commit message from CVS:
Some cleanups, more debugging info
2002-05-29 14:59:48 +00:00
Thomas Vander Stichele
d7a095654b added format.h
Original commit message from CVS:
added format.h
2002-05-28 09:18:04 +00:00
Andy Wingo
c887de8332 fixups in the prop view/controller compilation fixes in the player add gst-editor to gst-all fixes to adder to comply...
Original commit message from CVS:
* fixups in the prop view/controller
* compilation fixes in the player
* add gst-editor to gst-all
* fixes to adder to comply with new osssink sync issues
* alsa fixes, although still 100% cpu is used, yum
* reenable locking of threaded elements, seems to work fine here
* fix a makefile in examples/plugins
2002-05-27 04:48:57 +00:00
Wim Taymans
6f96a24d2e - The clock_wait now returns the difference between requested time and unlock time.
Original commit message from CVS:
- The clock_wait now returns the difference between requested time and
unlock time.
- Misc defines like GST_SECOND in gstclock.h
- remove pre/post in gstelement.c until fixed.
- added release_locks to gstelement so that the element can unlock itself
- added some more predefined events.
- added folowing functions to gstpad:
- convert function: get the relation between formats on this pad
- query function: get stats about the pad (position/total/latency)
- internal connect function: find out how this pad connects to other
pad internally to the element.
- generic pad_dispatcher.
- removed the last bits of pullregion
- use release_locks on the queue.
- added some events to queue
- make gstthread use the new release_locks function
- make the scheduler use the new clock_wait functions
- added events to fakesink
- added query functions to filesrc
- swap type and offset in the bytestream seek API to match fseek
- added some event handling in bytestream.
2002-05-26 21:54:27 +00:00
Wim Taymans
692b076459 Added g_malloc instead of a memchunk when using memprof
Original commit message from CVS:
Added g_malloc instead of a memchunk when using memprof
2002-05-26 21:22:50 +00:00
Andy Wingo
23d2701aa5 get rid of some debug printouts
Original commit message from CVS:
get rid of some debug printouts
2002-05-26 16:02:45 +00:00
Andy Wingo
d2ed0906a6 implemented threadsafe property set/get system as discussed in docs/random/wingo/threadsafe-properties some cleanups ...
Original commit message from CVS:
* implemented threadsafe property set/get system as discussed in
docs/random/wingo/threadsafe-properties
* some cleanups
* this change will cause binary incompatibilities, better rebuild them plugins

now, off to drink :-)
2002-05-26 03:23:25 +00:00
Andy Wingo
631c8f5ca5 re-enable thread test, although it does not work but passes right now warn for bizarre behavior in plugin loading
Original commit message from CVS:
re-enable thread test, although it does not work but passes right now
warn for bizarre behavior in plugin loading
2002-05-25 17:45:51 +00:00
Thomas Vander Stichele
e8982eaf0f API cleanup: (s/g)et_sched -> _scheduler
Original commit message from CVS:
API cleanup: (s/g)et_sched -> _scheduler
2002-05-25 15:36:59 +00:00
Thomas Vander Stichele
417a7f9408 typos
Original commit message from CVS:
typos
2002-05-25 15:25:47 +00:00
Andy Wingo
ad88770782 add gerror to gstplugin.c -- not fully propagated to periphery apis fix recursive dir creation in the xml registry co...
Original commit message from CVS:
* add gerror to gstplugin.c -- not fully propagated to periphery apis
* fix recursive dir creation in the xml registry
* comment identity props
* fix dependency resolution in lib loading
2002-05-20 23:11:10 +00:00
David I. Lehn
37d29b584f formatting
Original commit message from CVS:
formatting
2002-05-14 00:40:15 +00:00
Andy Wingo
1f0374782c fix refcounting tests so that they compile and run, but they fail currently: gst leaks obscene amounts of memory ;) f...
Original commit message from CVS:
* fix refcounting tests so that they compile and run, but they fail currently:
gst leaks obscene amounts of memory ;)
* fix plugin loading test so that it only refers to plugins within the gstreamer/
tree
* store gst plugin paths in the registry
* is GST_REGISTRY is set, only use the user registry with the PLUGIN_PATH explictly
specified by the user
* all tests should pass now except refcounting
2002-05-11 20:30:05 +00:00
Wim Taymans
2314c02f42 Small fixes for testsuite/plugin
Original commit message from CVS:
Small fixes for testsuite/plugin
2002-05-10 19:23:18 +00:00
Andy Wingo
e0a3d5eaf8 added a get_perms_func to gstxmlregistry that will set _WRITABLE and _READABLE as appropriate added an object propert...
Original commit message from CVS:
* added a get_perms_func to gstxmlregistry that will set _WRITABLE and _READABLE
as appropriate
* added an object property for location so that we can do some cleanup and initialization
2002-05-10 18:26:14 +00:00
David I. Lehn
01f172bedc poor error checking, should do something better
Original commit message from CVS:
poor error checking, should do something better
2002-05-10 08:10:14 +00:00
David I. Lehn
9151cbc830 remove duplicate gst_registry_pool_add declaration
Original commit message from CVS:
remove duplicate gst_registry_pool_add declaration
2002-05-10 06:49:18 +00:00
Andy Wingo
fbbdca6996 GST_PLUGIN_PATH gets split into the user registry some debugging output in registry rebuilding don't go into =build, ...
Original commit message from CVS:
* GST_PLUGIN_PATH gets split into the user registry
* some debugging output in registry rebuilding
* don't go into =build, =inst, etc
* i really don't know what the current idiom is for the plugin test suites, disabling for now

still pending issues: what to do when other plugin paths are passed on the command
line for existing registries. if the existing registries were built against those
paths, the time checks work, but if not they will need to be rebuilt. i have a feeling
they should be rebuilt in any case, but it's a tricky issue.
2002-05-10 03:27:42 +00:00
Andy Wingo
246b03c75d Funny how doing things the right way takes less code...
Original commit message from CVS:
Funny how doing things the right way takes less code...
2002-05-10 01:24:08 +00:00
Andy Wingo
d9a656b89b Check to see if the registry is out of date, and if so try to rebuild it.
Original commit message from CVS:
Check to see if the registry is out of date, and if so try to rebuild it.

WIERD THING: trying to run gst-register using system() fails. Apparently child processes
can't link to libs parent processes use? It's wierd, and it could be a libtool issue.

That's probably just as well, it would be better just to use -register's code from within
core and not rely on another binary.
2002-05-10 01:13:40 +00:00
Wim Taymans
de2a7b9ee8 Compile fix.
Original commit message from CVS:
Compile fix.
2002-05-09 17:45:49 +00:00
Andy Wingo
b7fad3dc5e add registries to gst/Makefile.am:DIST_SUBDIRS
Original commit message from CVS:
add registries to gst/Makefile.am:DIST_SUBDIRS
2002-05-09 17:28:22 +00:00
Wim Taymans
92a284110b Unconnected pad errors are detected elsewhere
Original commit message from CVS:
Unconnected pad errors are detected elsewhere
ERROR has higher priority than CHANGED.
2002-05-09 15:15:49 +00:00
Ronald S. Bultje
96667dfb24 At least check whether the directory exists when creating the registry file
Original commit message from CVS:
At least check whether the directory exists when creating the registry file
2002-05-08 21:16:41 +00:00
Wim Taymans
086de421dc Totally rewritten registry handling.
Original commit message from CVS:
Totally rewritten registry handling.
- move the registry save/load code into a gstregistry subclass, this
will make it possible to use other registries (flat file, web based,
RDBMS type, etc..)
- a simple GMarkup xml registry is implemented
- use standard statically linked plugins for core elements.
- GstPlugin has a very well defined set of functions now
A little bytestream hack..
Added more info to -inspect.
Some more debugging info for clocking.
Small cleanups

I use ./gst-register --gst-plugin-path=/opt/src/sourceforge/gst-plugins/gst-libs:/opt/src/sourceforge/gst-plugins/
to register core and gst-plugins now.
2002-05-08 20:40:48 +00:00
Wim Taymans
720ee1f361 Added gst_props_get_safe
Original commit message from CVS:
Added gst_props_get_safe
2002-05-08 20:00:35 +00:00