Commit graph

133 commits

Author SHA1 Message Date
Richard Boulton 17d04915d1 Merged from trunk
Original commit message from CVS:
Merged from trunk
2001-04-22 10:16:34 +00:00
Richard Boulton 3a3b69bdc6 Use plugin descriptions, which start with the major and minor version numbers, instead of relying on each plugin to c...
Original commit message from CVS:
Use plugin descriptions, which start with the major and minor version
numbers, instead of relying on each plugin to call gst_plugin_new
appropriately, and check the return value, and tidy up if there's a
failure.  This seems to work fine, and factors out some code common to
all plugins.
2001-04-21 12:43:25 +00:00
Richard Boulton 72e5e1342c Added first attempt at plugin versioning.
Original commit message from CVS:
Added first attempt at plugin versioning.
2001-04-21 09:30:08 +00:00
Thomas Vander Stichele 4ad674a2a2 mixer now works with variable inputs mixer creates custom volume envelopes allowing each song to play alone and end w...
Original commit message from CVS:
* mixer now works with variable inputs
* mixer creates custom volume envelopes allowing each song to play alone
and end with a mix of all of them, undistorted
2001-04-18 16:08:59 +00:00
Thomas Vander Stichele bbb7ab7055 cleaned up some code and integrated with new adder (mixer now works with different types of files)
Original commit message from CVS:
* cleaned up some code and integrated with new adder (mixer now works with
different types of files)
2001-04-18 14:04:08 +00:00
Thomas Vander Stichele 7c5e80c383 changed mixer to work by autoplugging the input channels (not very useful yet, since the input buffers to volenv have...
Original commit message from CVS:
changed mixer to work by autoplugging the input channels
(not very useful yet, since the input buffers to volenv have different
sizes)
2001-04-17 21:17:55 +00:00
Wim Taymans 6bd5dcffab The first wave of docs updates
Original commit message from CVS:
The first wave of docs updates
Added a little more comments about the API usage in the api docs.
Some fixes for the capsnego testsuite.
2001-04-17 21:14:55 +00:00
Wim Taymans a8ba9c4122 Autoplug3 shows an example of an autoplugged mp3 player.
Original commit message from CVS:
Autoplug3 shows an example of an autoplugged mp3 player.
Autoplug4 shows various static autoplugger examples.
2001-04-17 21:03:43 +00:00
Thomas Vander Stichele 64f5e810a1 header for mixer.c, containing input_pipe_t
Original commit message from CVS:
header for mixer.c, containing input_pipe_t
2001-04-17 17:48:19 +00:00
Thomas Vander Stichele 2d0a7dfad1 added a struct to set up input channels
Original commit message from CVS:
added a struct to set up input channels
2001-04-17 17:47:45 +00:00
Wim Taymans ac7bf2494d Updated the padfactory test code.
Original commit message from CVS:
Updated the padfactory test code.
2001-04-16 21:48:44 +00:00
Erik Walthinsen d74fc2e0fa Merged HEAD from BRANCH-INCSCHED1-200104161 into BRANCH-INCSCHED1.
Original commit message from CVS:
Merged HEAD from BRANCH-INCSCHED1-200104161 into BRANCH-INCSCHED1.
2001-04-16 21:43:21 +00:00
Thomas Vander Stichele 5050318744 changed volume envelope; should do a nice transition between both songs now
Original commit message from CVS:
changed volume envelope; should do a nice transition between both songs
now
2001-04-16 19:38:56 +00:00
Wim Taymans d0921a2897 Added an example audio mixer.
Original commit message from CVS:
Added an example audio mixer.
2001-04-16 16:34:16 +00:00
Wim Taymans 3c7dde9ad4 Add the xvideosink to the example.
Original commit message from CVS:
Add the xvideosink to the example.
2001-04-16 10:55:52 +00:00
Wim Taymans b38d9a945b A rather large patch:
Original commit message from CVS:
A rather large patch:
- changed the API for the padtemplates:
- remove the factories (array of pointers) for the padtemplates,
properties and caps. The static array was a nice idea but converting
all the property values to a gpointer was not a good idea.
float properties were not possible, and casting a gint to a pointer
is not very portable. The new API just uses the _padtemplate_new,
_caps_new and _props_new functions to create the templates.
This has the added benefit that the API is now uniform for static
and dynamic templates and that the code can be made cleaner.
- lots of cleanups in the way the capabilities are constructed (va_list)
- lots of updates for all the plugins (new API)
- docs updates (new API)
- removed the videoraw docs.
2001-04-14 18:56:37 +00:00
Wim Taymans 335080574f Lots of updates to the plugins for caps negotiation.
Original commit message from CVS:
Lots of updates to the plugins for caps negotiation.
Added YUY2 output to the win32 dlls.
Added a colorspace converter in gstplay
2001-04-12 18:11:19 +00:00
Wim Taymans c3a64ce1f6 Merged the float property patch from Steve Baker. This patch doesn't really work yet...
Original commit message from CVS:
Merged the float property patch from Steve Baker. This patch doesn't
really work yet...
2001-04-02 19:56:34 +00:00
Wim Taymans 6912e1946e Adjust the test cases to the new FOURCC API.
Original commit message from CVS:
Adjust the test cases to the new FOURCC API.
2001-03-31 00:13:51 +00:00
Wim Taymans 04813b163b Simplified the FOURCC API to the caps, add a GST_MAKE_FOURCC macro to create a fourcc.
Original commit message from CVS:
Simplified the FOURCC API to the caps, add a GST_MAKE_FOURCC macro
to create a fourcc.
Adjusted the plugins to use the new FOURCC API
2001-03-30 23:56:07 +00:00
Wim Taymans 54347a618b Small updates to the .cvsignore files.
Original commit message from CVS:
Small updates to the .cvsignore  files.
2001-03-30 20:10:45 +00:00
Wim Taymans 0837e1e495 Modified a lot of plugins to use the caps system.
Original commit message from CVS:
Modified a lot of plugins to use the caps system.
Modified the caps of audio/raw to our agreed properties.
Added the multidisksrc plugin of Dominic Ludlam
Renamed audiosink/src to osssink/src and updated all the examples using
the old name. Moved oss specific plugins in an oss directory. removed
the old audiosink from the elements/ dir.
removed audioraw.h metadata header files since we now use the properties.
There are still a few plugins that won't build because they include the
old audioraw.h header file. This will be fixed soon.
Make sure the caps are set in the plugins as described by their
padtemplates (this should solve problems with gstmediaplay with various
media files).

*please don't panic when some plugins won't build, just cd manually into
the plugin dirs* This will be fixed soon.
2001-03-24 17:22:03 +00:00
Richard Boulton d80375c632 Added --enable-plugin-docs configure option, to enable build of the plugin documentation (currently broken). This de...
Original commit message from CVS:
Added --enable-plugin-docs configure option, to enable build of the plugin
documentation (currently broken).  This defaults to off.
Changed --enable-docs-build to default to on, since all other documentation
should build correctly.

Also, correct typo in manual, and fix up a couple of things in example.c
2001-03-20 23:12:24 +00:00
Wim Taymans 7d4666d4dc Added the new enum testcase to .cvsignore
Original commit message from CVS:
Added the new enum testcase to .cvsignore
2001-03-20 18:29:46 +00:00
Wim Taymans 0267b92c93 More work on capsnego proxying. It should be OK now.
Original commit message from CVS:
More work on capsnego proxying. It should be OK now.
Added another testcase enum that shows various capsnego algorithms.
Warn about pads that try to set a capability incompatible with their
padtemplate.
Implemented refcounting and copy_on_write for caps/props.
2001-03-20 18:29:00 +00:00
Wim Taymans 29cb713b21 More work on capsnego, mostly proxying
Original commit message from CVS:
More work on capsnego, mostly proxying
Added another testsuite for capsnego
Added caps to vorbisdec, mp3parse, mp1videoparse
Redid the queue proxy handling a bit.
2001-03-18 16:17:39 +00:00
Wim Taymans 3534e68563 Reworked the capsnegotiation function audiosink now uses capsnego to set its parameters mpg123/ac3dec use capsnego in...
Original commit message from CVS:
Reworked the capsnegotiation function
audiosink now uses capsnego to set its parameters
mpg123/ac3dec use capsnego instead of metadata
Added the beginnings of a testsuite for capsnego.
2001-03-18 02:42:30 +00:00
Wim Taymans 29a006c8d8 Updated the autoplug example with the new autoplugger. there still is a scheduling issue though.
Original commit message from CVS:
Updated the autoplug example with the new autoplugger. there still is
a scheduling issue though.
2001-03-13 18:57:25 +00:00
Wim Taymans 3ec275832a Merged the CAPSNEGO1 branch..
Original commit message from CVS:
Merged the CAPSNEGO1 branch..
2001-03-12 21:02:12 +00:00
Richard Boulton 1f3f906886 Updated test to have a comment explaining its purpose (very important this, especially for regression tests), and to ...
Original commit message from CVS:
Updated test to have a comment explaining its purpose (very important this,
especially for regression tests), and to actually test what I meant it to.
2001-03-09 12:29:51 +00:00
Richard Boulton 51847f3fe4 Added a testsuite. This currently only has one test, which replicates a problem just submitted to the list.
Original commit message from CVS:
Added a testsuite.  This currently only has one test, which replicates a
problem just submitted to the list.

I hope noone disagrees that we need a testsuite.  Also, hopefully we all
think that a tiny testsuite which is easy to add tests to is much better
than a huge project to create a complete testsuite, which never gets
started because its too big and scary.

I suggest that tests get created whenever someone has a spare moment, or
whenever a bug is reported (to replicate the problem, and thus be sure that
when fixed it stays fixed), and before making a change to a piece of code
to ensure that it remains working.

If we all add little tests occasionally, then we'll have a good useful
testsuite before we know it.  All you need to do is make a
2001-03-09 12:08:38 +00:00
Wim Taymans 55006f6367 Merged the AUTOPLUG2 branch
Original commit message from CVS:
Merged the AUTOPLUG2 branch
2001-03-07 21:52:56 +00:00
Wim Taymans 30685cb8c9 Added quotes around the command line mp3 player
Original commit message from CVS:
Added quotes around the command line mp3 player
2001-03-06 20:06:07 +00:00
Wim Taymans 3c79a3d66f Make the autoplugging example work again with an ugly hack until we have autoplug2 merged...
Original commit message from CVS:
Make the autoplugging example work again with an ugly hack until we
have autoplug2 merged...
2001-03-02 17:56:02 +00:00
Wim Taymans f37f8a939e Added directories to Makefiles for DIST
Original commit message from CVS:
Added directories to Makefiles for DIST
2001-02-24 16:56:19 +00:00
Wim Taymans 1340064d57 More doc updates
Original commit message from CVS:
More doc updates
Manual additions: xml/load save of custom XML, debugging, request pads
added a signal to the example plugin
fixed a bug in mp3parse (ifdef 1)
2001-02-22 23:18:51 +00:00
Wim Taymans 94472df1c2 Fixed an unclosed comment
Original commit message from CVS:
Fixed an unclosed comment
2001-02-22 17:13:30 +00:00
Erik Walthinsen 2324ea92c8 significant commenting of the example plugin
Original commit message from CVS:
significant commenting of the example plugin
2001-02-22 01:34:25 +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 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 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
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 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
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
Wim Taymans de4b9f654e Two more test cases
Original commit message from CVS:
Two more test cases
2001-01-20 03:02:29 +00:00
Wim Taymans 9b3f1277ce API docs updates
Original commit message from CVS:
API docs updates
2001-01-19 22:15:21 +00:00
Erik Walthinsen 74f8050844 Major cleanup of the latest ghostpad changes. Fixed everything that broke, correctly. Someone will want to go updat...
Original commit message from CVS:
Major cleanup of the latest ghostpad changes.  Fixed everything that
broke, correctly.  Someone will want to go update the API doc templates.
2001-01-19 09:37:32 +00:00