Commit graph

563 commits

Author SHA1 Message Date
Wim Taymans c199469744 Synced with the HEAD branch again... amazing how many changes we have in only a week time...
Original commit message from CVS:
Synced with the HEAD branch again... amazing how many changes we have in
only a week time...
2001-03-06 21:39:57 +00:00
Wim Taymans 33f74711fb Added a test program for the autopluggers
Original commit message from CVS:
Added a test program for the autopluggers
2001-03-03 19:09:10 +00:00
Wim Taymans 3987dbee22 Added an API for element construction and renderer autopluggers.
Original commit message from CVS:
Added an API for element construction and renderer autopluggers.
Added another autoplugger to render things.
Updated the player to use the new autoplugger.
2001-03-03 19:08:07 +00:00
Wim Taymans 90ac5da6d6 Merge with the main trunk.
Original commit message from CVS:
Merge with the main trunk.
GstPlay needed some changes for the dynamic pads in the avidecoder since
the new autoplugger doesn't know about the outher elements. The next
version of the autoplugger will also handle the audfio/videosink connections
and will do a complete end-to-end autoplugging.
2001-03-01 22:36:26 +00:00
Wim Taymans 81197b7c06 Small compile fixes
Original commit message from CVS:
Small compile fixes
2001-02-27 21:08:45 +00:00
Wim Taymans 589bf9f90c Added the missing autoplugger, doh
Original commit message from CVS:
Added the missing autoplugger, doh
2001-02-27 20:34:12 +00:00
Wim Taymans 2528bfba53 Updated the doc with more accurate implementation details
Original commit message from CVS:
Updated the doc with more accurate implementation details
2001-02-08 19:52:28 +00:00
Wim Taymans fe586de094 Implemented the plugable autopluggers.
Original commit message from CVS:
Implemented the plugable autopluggers.
- one can aad an autoplugger to a plugin with gst_plugin_add_autoplugger
- the autopluggers can be queried using _get_list
- save/load autoplugger descriptions in the XML registry
- load the autoplugger only when needed
- a signal can be attached to the autoplugger to be notified of
new objects.
- improved the media player to use the new autoplugger
- updated gstreamer-inspect for the autoplugger and types
added EOS to the disksrc
fixed two bugs in properties loading (min/max, comment tags)
2001-02-08 19:37:41 +00:00
Wim Taymans 5a52fd4009 Updated the autoplugger:
Original commit message from CVS:
Updated the autoplugger:
- moved all of the code out of gstpipeline.c to autoplug.c
- The autoplugger now creates a GstElement based on the given src and
sink caps. The API now is:
GstElement* gst_autoplug_caps_list (GList *srcpad, GList *sinkpad, ...);
- the typefind function is moved from gstpipeline.c to gstplay.c. Not sure
if this is right behaviour but we need at least a bin in order to run
the typedetect functions.
- fixed a bug in gstbin.c where the MANAGER flag of the bin was not cleared
when going to the NULL state.
- a bug in the videosink was fixed. It was possible that more instances
of the video widget were created, causing major errors.
- commented out most of the 'old' autoplug examples.
- added the new autoplugger to gstplay.c. There still is a bit of hacking
needed to insert a queue into the autogenerated element. This will be fixed
when the autoplugger can also create the video/audio elements.
Fixed some more extranous spaces problems in various files.
2001-02-06 20:42:28 +00:00
Wim Taymans 5e1257437d Added CVS ignore, and two documents..
Original commit message from CVS:
Added CVS ignore, and two documents..
2001-02-06 20:06:22 +00:00
Erik Walthinsen d88779134d updated ac3play to work with latest libgst
Original commit message from CVS:
updated ac3play to work with latest libgst
2001-02-06 19:39:15 +00:00
Erik Walthinsen c17ed10404 Reworked getregion/pullregion stuff. Region is now specified by a type (OFFSET_LEN, TIME_LEN, etc.) and two guint64'...
Original commit message from CVS:
Reworked getregion/pullregion stuff.  Region is now specified by a type
(OFFSET_LEN, TIME_LEN, etc.) and two guint64's.  They are offset and len,
where offset can be used for the time field, and len would be zero or
the time unit (say, 33ms for video).
2001-02-05 17:16:23 +00:00
Erik Walthinsen 943e728898 fixed all in-use instances of asyncdisksrc
Original commit message from CVS:
fixed all in-use instances of asyncdisksrc
2001-02-04 21:38:47 +00:00
Erik Walthinsen 38ff9ae802 moved asyncdisksrc to disksrc, no point in having a distinction
Original commit message from CVS:
moved asyncdisksrc to disksrc, no point in having a distinction
2001-02-04 21:37:14 +00:00
Erik Walthinsen c0ef1f3067 fixed up the Alpha and ARM processor checks
Original commit message from CVS:
fixed up the Alpha and ARM processor checks
2001-02-03 07:25:24 +00:00
Erik Walthinsen db5b4fbb46 ARM works!
Original commit message from CVS:
ARM works!
2001-01-31 22:54:08 +00:00
Wim Taymans 804c1b2653 Documentation updates.
Original commit message from CVS:
Documentation updates.
2001-01-31 20:27:00 +00:00
Wim Taymans 1a5cfae0f6 Added a first attempt for XML embedding in the main core XML.
Original commit message from CVS:
Added a first attempt for XML embedding in the main core XML.
Objects will emit a signal that a user app can connect to in order to
insert its XML into the tree.
You can catch the object_loaded signal in GstXML to parse the user
supplied XML data in the stream. The object_loaded signal is implemented
with a custom made class signal. All GstObject classes now automatically
create a GstSignalObject that serves as a proxy to the user app when an
object is loaded. All objects are currently responsible to emit the
class signal themselves.
runxml and createxml serve as an example how the XML hooks can be used to
insert and retrieve custom XML tags.
2001-01-30 23:53:04 +00:00
Wim Taymans 6873d31fed The early beginnings of a doc about QoS :-)
Original commit message from CVS:
The early beginnings of a doc about QoS :-)
2001-01-29 23:51:51 +00:00
Wim Taymans eaeadf52e3 Lots of plugins fixes where the parentage macros were replaced with the correct gst_*_get_parent.
Original commit message from CVS:
Lots of plugins fixes where the parentage macros were replaced with the
correct gst_*_get_parent.
Updated the example.
'gstreamer' now is the doc type instead of GST-Pipeline
2001-01-29 23:50:29 +00:00
Wim Taymans a03cb2b8a2 Added ramblings about the XML load/save
Original commit message from CVS:
Added ramblings about the XML load/save
2001-01-29 23:32:14 +00:00
Wim Taymans 51cbf22624 This is a megapatch with the following changes:
Original commit message from CVS:
This is a megapatch with the following changes:

- moved the gchar *name to GstObject, removed the ones in GstElement and
GstPad.
- moved the parent handling completely into GstObject. This cause *all* of
the plugins to fail (except those that used gst_pad_get_parent)
- rearanged the XML save handling.
- GstObject now has a class function save/restore_thyself.
- GstObject has a generic method gst_object_save_thyself, this makes it
possible to fire a signal wehever a new object is loaded. This is needed
so we can add XML save hooks.
- GstXML API has changed slightly. You now have to create a GstXML object
first before you can actually load something. This makes it possible to
attach a signal to GstXML whenever an object is loaded. I'm not sure we
will keep this interface.
- GstObject can now print the path_string without knowing about the GstPad and
GstElement types.
- Added gst_bin_get_by_name_recurse_up to lookup an element in the current
element hierarchy.
- added XML namespaces to the saved pipelines the namespace is:
http://gstreamer.net/gst-core/1.0/
namespaces are needed to distinguish user generated XML from the core XML.

Note that the plugins still contain a macro GST_OBJECT_PARENT that will be
replaced with gst_pad_get_parent shortly.
2001-01-29 00:06:02 +00:00
Wim Taymans d0abadd974 Added the requirement for libshout
Original commit message from CVS:
Added the requirement for libshout
2001-01-26 23:35:06 +00:00
Wim Taymans 0a1cb23d32 For the icecast sender
Original commit message from CVS:
For the icecast sender
2001-01-26 23:33:50 +00:00
Wim Taymans 70dfc6bb1d Converted the scaler to all asm
Original commit message from CVS:
Converted the scaler to all asm
2001-01-26 22:10:12 +00:00
Wim Taymans de37358730 Added plain C scaler
Original commit message from CVS:
Added plain C scaler
Fixed a bug for 32 bits displays
2001-01-26 21:19:49 +00:00
Wim Taymans 59211a49ff Updated the docs with the new _request methods
Original commit message from CVS:
Updated the docs with the new _request methods
2001-01-23 20:03:07 +00:00
Richard Boulton d20f0b4bae Add gst_element_request_compatible_pad and remove gst_element_request_pad.
Original commit message from CVS:
Add gst_element_request_compatible_pad and remove gst_element_request_pad.
Implemented something reasonable for gst_element_request_compatible_pad,
but havn't tested much: it won't work for tee because the pad templates
have no caps, and negotiation is not yet written, so it is assumed that the
tee pads can't connect to anything.
2001-01-23 18:42:23 +00:00
Richard Boulton ba237a38dd Fix launch so that it can play a list of files, now that EOS works enough. (It needs to not have to restart gstreamer...
Original commit message from CVS:
Fix launch so that it can play a list of files, now that EOS works enough.
(It needs to not have to restart gstreamer each time, but good enough for
now ;-) )
2001-01-22 23:39:23 +00:00
Wim Taymans a3aad0c1a2 Fixed a yuv to bgr32 bug, red and blue were swapped. Thanks to
Original commit message from CVS:
Fixed a yuv to bgr32 bug, red and blue were swapped. Thanks to
Trigon (Bert Boer <bert@mermaid.geenpunt.nl>).
2001-01-22 19:21:24 +00:00
Wim Taymans 75aa948e0c Docs updates
Original commit message from CVS:
Docs updates
Added XML load from memory functionality
Undid the videosink patch, something else is wrong now on my machine:
no MMX acceleration :-(
2001-01-21 23:20:46 +00:00
Wim Taymans 0aaa531aaf An overview of the current EOS handling algorithm.
Original commit message from CVS:
An overview of the current EOS handling algorithm.
2001-01-21 17:36:19 +00:00
Wim Taymans f463d7216a Ramblings about dynamic pads
Original commit message from CVS:
Ramblings about dynamic pads
2001-01-21 16:19:12 +00:00
Wim Taymans de4996ae37 I'm too lazy to comment this
Original commit message from CVS:
*** empty log message ***
2001-01-21 16:18:40 +00:00
Wim Taymans 9e6885f934 updated to exclude various docs formats (.ps, .dvi,...)
Original commit message from CVS:
updated to exclude various docs formats (.ps, .dvi,...)
2001-01-21 16:10:10 +00:00
Wim Taymans bc9054e18e Added another test case, a bin in a thread, to test EOS. still hangs because gtk_main hangs in a __poll somewhere.
Original commit message from CVS:
Added another test case, a bin in a thread, to test EOS. still hangs because
gtk_main hangs in a __poll somewhere.
2001-01-21 16:08:37 +00:00
Wim Taymans 044c4611af More eos handling, bin in bin is handled correctly now.
Original commit message from CVS:
More eos handling, bin in bin is handled correctly now.
Updated gstreamer-launch to loop while !EOS.
2001-01-21 16:06:42 +00:00
Erik Walthinsen 3dd77c5107 more complete(?) XML description of example
Original commit message from CVS:
more complete(?) XML description of example
2001-01-21 01:20:06 +00:00
Erik Walthinsen a1d52b2aa6 initial thoughts on framework
Original commit message from CVS:
initial thoughts on framework
2001-01-21 01:03:13 +00:00
Sepp Wijnands 8c54486378 the 'OSS hangs when opening the device when in use' bug.
Original commit message from CVS:
Applied the patch from Sepp Wijnands <mrrazz@garbage-coderz.net> that solves
the 'OSS hangs when opening the device when in use' bug.
2001-01-21 00:57:50 +00:00
Erik Walthinsen c824d8eaf9 current set of design docs, in .txt format
Original commit message from CVS:
current set of design docs, in .txt format
2001-01-20 20:08:59 +00:00
Erik Walthinsen cfb7276682 added first hack at testing suite design
Original commit message from CVS:
added first hack at testing suite design
2001-01-20 19:20:13 +00:00
Wim Taymans 5c27fa2ac4 Check for NULL buffers before chaining/pushing them to the next element.
Original commit message from CVS:
Check for NULL buffers before chaining/pushing them to the next element.
NULL buffers happen on EOS.
gst_bin_iterate now returns a gboolean indicating something usefull happened.
It the bin is EOS, it returns FALSE.
2001-01-20 18:20:17 +00:00
Wim Taymans 7ce56f5dab More EOS changes.
Original commit message from CVS:
More EOS changes.
When a bin2 is found inside a bin1, we add the bin2 to the EOS providers
of the bin1. When there is nothing more to schedule in bin1 and bin2 has
fired EOS, bin1 is in EOS.
The queue overrides the EOS notification and calls EOS on the src pad
when the queue is empty and the sink pad is in EOS.
2001-01-20 17:59:25 +00:00
Wim Taymans 029e7bfbd9 More test cases for EOS handling
Original commit message from CVS:
More test cases for EOS handling
2001-01-20 17:53:03 +00:00
Erik Walthinsen fdadef86d9 updated tests code to new ghostpad API
Original commit message from CVS:
updated tests code to new ghostpad API
2001-01-20 03:36:20 +00:00
Erik Walthinsen 92b4650081 updated test programs to new ghostpad API
Original commit message from CVS:
updated test programs to new ghostpad API
2001-01-20 03:33:55 +00:00
Wim Taymans 0a9cc5f2fe Make sure the loopfunction ends when an element goes to EOS.
Original commit message from CVS:
Make sure the loopfunction ends when an element goes to EOS.
Fixed the fakesrc bug found by taaz.
2001-01-20 03:28:37 +00:00
Wim Taymans fdaa2307da A very small change to make eos somewhat work. no inner bins are checked.
Original commit message from CVS:
A very small change to make eos somewhat work. no inner bins are checked.
When an element fires EOS, the chain with that element is removed from
the scheduler (marked inactive). If all chains are inactive, the bin
fires EOS.
2001-01-20 03:10:44 +00:00
Wim Taymans de4b9f654e Two more test cases
Original commit message from CVS:
Two more test cases
2001-01-20 03:02:29 +00:00