Commit graph

287 commits

Author SHA1 Message Date
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
Wim Taymans 085b22ac1f Added a little tee test program.
Original commit message from CVS:
Added a little tee test program.
2001-01-19 00:07:40 +00:00
Richard Boulton 82769bcae9 Some more fixes for libxml.
Original commit message from CVS:
Some more fixes for libxml.
Also, some code formatting changes in esdsink, some further fixes to
vumeter, and some work on synaesthesia to make it closer to working
(it doesn't fully work yet, though. :( )
2001-01-18 15:29:46 +00:00
Wim Taymans 6b317bf748 Oops
Original commit message from CVS:
Oops
2001-01-17 07:43:13 +00:00
Wim Taymans a9967137df Added the typefind example from the manual
Original commit message from CVS:
Added the typefind example from the manual
2001-01-17 00:01:48 +00:00
Wim Taymans fce9a96f3f Fixed a Makefile error
Original commit message from CVS:
Fixed a Makefile error
2001-01-14 22:23:59 +00:00
Erik Walthinsen 9ca8248cc2 Massive build fixup. Will send message to -devel list later with details on the changes and what they mean for Makef...
Original commit message from CVS:
Massive build fixup.  Will send message to -devel list later with details
on the changes and what they mean for Makefile.am writers.  Check
docs/random/omega/build/TODO for a list of things that I had to make sure
of.

NOTE: this requires a complete rebuild of all plugins, since I also
changed the STATE enum to a bitfield instead of sequential numbers.
2001-01-14 21:55:41 +00:00
Richard Boulton c12e795dec Move plugin example code to new location, and put it into build system.
Original commit message from CVS:
Move plugin example code to new location, and put it into build system.
Add work on firstplugin chapter of pwg.
Fix typo in quotes.
Add @'s before commands in manuals.mak
2001-01-08 23:55:27 +00:00
Wim Taymans 2a4a536fee Manual updates. fixes to gstxml.c gst_xml_get_element was broken
Original commit message from CVS:
Manual updates.
fixes to gstxml.c gst_xml_get_element was broken
2001-01-08 22:08:40 +00:00
Wim Taymans 7a40eda7b6 Added a sample tescase file
Original commit message from CVS:
Added a sample tescase file
2001-01-07 22:59:18 +00:00
Wim Taymans 45d5c57cb9 Added/updated .cvsignore
Original commit message from CVS:
Added/updated .cvsignore
2001-01-06 16:56:15 +00:00
Wim Taymans f068579abd Fixed mp3play
Original commit message from CVS:
Fixed mp3play
2001-01-04 19:22:37 +00:00
Richard Boulton 00aff5b225 Undo accidental commit of debugging version.
Original commit message from CVS:
Undo accidental commit of debugging version.
2001-01-04 17:44:51 +00:00
Richard Boulton dccc0d8714 Updated to supply argument as "name=value" rather than just "value"
Original commit message from CVS:
Updated to supply argument as "name=value" rather than just "value"
2001-01-04 00:15:42 +00:00
Richard Boulton f4ae52d0ab Do gst_init first, so we can supply debugging options to libgst
Original commit message from CVS:
Do gst_init first, so we can supply debugging options to libgst
2001-01-03 22:58:58 +00:00
Richard Boulton 126569f47c Do gst_init first in helloworld, so you can supply gst parameters.
Original commit message from CVS:
Do gst_init first in helloworld, so you can supply gst parameters.
Correct name of frequency cap to rate, in esdsink.  Now connects properly.
2001-01-03 19:12:21 +00:00
Wim Taymans fea2f662c1 The examples must not be installed
Original commit message from CVS:
The examples must not be installed
Removed debugging from Makefiles for avidecoder/ac3parse
/test/bindings/dummy.h cannot be installed
2001-01-02 19:46:43 +00:00
Erik Walthinsen ae0d5d1889 Massive, massive update of most source files. I went through and cleaned up all the warnings that I could, which inv...
Original commit message from CVS:
Massive, massive update of most source files.  I went through and cleaned
up all the warnings that I could, which involved fixing some of the plugins.

The configure.in script was re-arranged and cleaned up so, and a check for
libtool 1.3.5 was added to autogen.sh.  Added checks for Gtk and GNOME.

Some plugins were removed from the list of things to build for various reasons.

Added GST_DEBUG_FORCE_DISABLE in gstgetbits, since that's time critical and
even an if() from a DEBUG can significantly increase runtimes.
2001-01-02 08:13:34 +00:00
Wim Taymans 18132480f4 ooops, eos is a dir
Original commit message from CVS:
ooops, eos is a dir
2001-01-02 02:18:50 +00:00
Wim Taymans 49b6a51534 Fixed makefiles for docs
Original commit message from CVS:
Fixed makefiles for docs
Added eos test programs
2001-01-02 02:16:24 +00:00
Richard Boulton 9f9f59141f Added launch back into make system.
Original commit message from CVS:
Added launch back into make system.
The Makefile wasn't being generated, resulting in make dist failing when
the directory was entered for make dist.
2001-01-02 00:31:26 +00:00
Wim Taymans 5d171b83c7 Added directories to DIST_SUBDIRS
Original commit message from CVS:
Added directories to DIST_SUBDIRS
2001-01-01 23:50:07 +00:00
Erik Walthinsen 5c60d369c7 somehow Makefile.am went zero-bytes
Original commit message from CVS:
somehow Makefile.am went zero-bytes
2001-01-01 23:20:42 +00:00
Erik Walthinsen f559fb0928 updated examples build stuff
Original commit message from CVS:
updated examples build stuff
2001-01-01 22:44:20 +00:00
Erik Walthinsen cd744791c5 More build fixes
Original commit message from CVS:
More build fixes
2001-01-01 21:21:25 +00:00
Richard Boulton a2c260761d Add one more file to dist.
Original commit message from CVS:
Add one more file to dist.
2001-01-01 14:34:06 +00:00
Richard Boulton 5637570cc1 Fix broken build system for examples.
Original commit message from CVS:
Fix broken build system for examples.
2001-01-01 13:41:27 +00:00
Erik Walthinsen 2da16ed5ed Re-arranged the build a bit to try to make it more sane. Added some debug.
Original commit message from CVS:
Re-arranged the build a bit to try to make it more sane.  Added some debug.
2001-01-01 08:37:41 +00:00
Wim Taymans 39a19ca625 Added -Wall to configure.in
Original commit message from CVS:
Added -Wall to configure.in
2001-01-01 06:59:49 +00:00
Wim Taymans 3c883fb43a Updated test programs
Original commit message from CVS:
Updated test programs
2001-01-01 04:10:52 +00:00
Erik Walthinsen d6c3cc8a73 added .cvsignore
Original commit message from CVS:
added .cvsignore
2001-01-01 03:44:19 +00:00
Erik Walthinsen 24c64f54c5 updated .cvsignore
Original commit message from CVS:
updated .cvsignore
2001-01-01 03:22:59 +00:00
Erik Walthinsen 077e68edb1 fixed stupid spelling mistake
Original commit message from CVS:
fixed stupid spelling mistake
2001-01-01 03:18:40 +00:00
Erik Walthinsen 582fcaffcd hopefully one last update to the examples .cvsignores
Original commit message from CVS:
hopefully one last update to the examples .cvsignores
2001-01-01 00:44:45 +00:00
Erik Walthinsen 5307686379 cleaned up the examples, added Makefiles, etc
Original commit message from CVS:
cleaned up the examples, added Makefiles, etc
2001-01-01 00:42:10 +00:00
Erik Walthinsen 0b650eb737 Updated makefiles for examples
Original commit message from CVS:
Updated makefiles for examples
2001-01-01 00:34:13 +00:00
Erik Walthinsen 65e47b2548 New test programs.
Original commit message from CVS:
New test programs.
2000-12-31 22:14:06 +00:00
Erik Walthinsen 45ab0201da I'm too lazy to comment this
Original commit message from CVS:
*** empty log message ***
2000-12-31 22:13:31 +00:00
Erik Walthinsen 86e3f88515 Converted to a Makefile.am, fixed up the GstSrc thing, and removed a set to READY state before PLAYING that isn't nec...
Original commit message from CVS:
Converted to a Makefile.am, fixed up the GstSrc thing, and removed a set
to READY state before PLAYING that isn't necessary.
2000-12-31 22:11:35 +00:00
Wim Taymans 1c5119618d Updated the docs
Original commit message from CVS:
Updated the docs
Updated gst/Makefile.am to add CFLAGS
Added test programs to tests/.cvsignore
2000-12-31 17:02:47 +00:00
Wim Taymans 35bd31f261 Test program for the pad factory
Original commit message from CVS:
Test program for the pad factory
2000-12-31 16:15:11 +00:00
Wim Taymans bc4619a44b Added multiple caps to the pads
Original commit message from CVS:
Added multiple caps to the pads
Extended the padfactory for the multiple caps
GstCaps now have a name so that future manipulations on them can be done by name
Updated the plugins for the new caps list
2000-12-31 16:12:48 +00:00
Wim Taymans 2e6abf825a Updated some test programs
Original commit message from CVS:
Updated some test programs
2000-12-29 18:31:06 +00:00
Wim Taymans f4a635c8dc Pending editor changes. fixes for autoplug of elementary MPEG1 video streams make sure mp3 types get compiled videosi...
Original commit message from CVS:
Pending editor changes.
fixes for autoplug of elementary MPEG1 video streams
make sure mp3 types get compiled
videosink changes for xml loading
2000-12-28 02:51:07 +00:00
Erik Walthinsen 1d0694ade4 added case4
Original commit message from CVS:
added case4
2000-12-27 00:01:27 +00:00
Wim Taymans 0062e168ca Fixed a bug in gstbin.c the manager was not detected.
Original commit message from CVS:
Fixed a bug in gstbin.c the manager was not detected.
Some other testcases
bin, thread, pipeline use the elementfactory on gst_*_new
2000-12-22 23:23:10 +00:00
Wim Taymans 9987a75b1b Implemented some test cases... they all fail :-(
Original commit message from CVS:
Implemented some test cases... they all fail :-(
Added a flag to identity to for loop_based behaviour.
Added a signal to fakesink when a buffer is consumed.
2000-12-22 16:14:33 +00:00
Wim Taymans a914e7b210 More testcases
Original commit message from CVS:
More testcases
2000-12-21 20:21:19 +00:00
Wim Taymans c41af26c49 70+ testcases to start with
Original commit message from CVS:
70+ testcases to start with
2000-12-21 19:53:56 +00:00
Wim Taymans 09daa1a57b Small test program for the property system
Original commit message from CVS:
Small test program for the property system
2000-12-19 16:38:16 +00:00
Wim Taymans efda5ffd9a Added API to dynamically create GstCaps and GstProps
Original commit message from CVS:
Added API to dynamically create GstCaps and GstProps
Changed typefind of mpeg1 to set the GstProps.
autoplugging now works again for mpeg1, whoohoo!
2000-12-19 16:36:10 +00:00
Wim Taymans 0b1967b440 Added the autoplugger. some .dia drawings of the objects the autoplug test program.
Original commit message from CVS:
Added the autoplugger.
some .dia drawings of the objects
the autoplug test program.
2000-12-19 13:44:23 +00:00
Wim Taymans bbb9799996 Cleanup in gsttypes.c: removed the crazy GList of GHashTables, since the autoplugger will use the GstCaps and element...
Original commit message from CVS:
Cleanup in gsttypes.c:
removed the crazy GList of GHashTables, since the autoplugger will
use the GstCaps and elementfactories instead of the type system.
We don't maintain a list anymore of the elements for the specific
removed unused code in XML loading/saving.

Cleanup in gstelementfactory:
removed the register/unregister methods, register is now implicit when
gst_elementfactory_new is called. _unregister is now _destroy.
Removed logic to register/unregister the types in gsttypes.
added methods to query if the factory can src/sink a GstCaps
Make sure the elementfactory is set in the element_class when a new
element is registered with gst_elementfactory_new.

gst.c: properly register the basic bins
gst_pipeline: use new gstautoplug (next checkin)
gstprops: fixed an error in compatibility check
registry test program changes
plugins: misc changes for the new caps system.
2000-12-19 13:41:55 +00:00
Wim Taymans c6ac8a0f6b some editor changes= loading of save pipelines (not working) added include in gstdebug.h for getpid property loading ...
Original commit message from CVS:
some editor changes= loading of save pipelines (not working)
added include in gstdebug.h for getpid
property loading implemented
GstXML can now be queried for the toplevel elements.
2000-12-16 17:12:28 +00:00
Erik Walthinsen da03fde054 WARNING: Don't grab this updated unless you're really, REALLY sure.
Original commit message from CVS:
WARNING: Don't grab this updated unless you're really, REALLY sure.
WARNING: Wait for the next one.

Whole lotta changes here, including a few random bits:

examples/*/Makefile: updated to use `libtool gcc`, not just `gcc`
gst/
gstbuffer.h: updated to new flag style
gst.c, gstdebug.h: added new debugging for function ptrs
gstpipeline.c: set type of parent_class to the class, not the object
gstthread.c: ditto
plugins/
cdparanoia/cdparanoia.c: added an argument type, updated some defaults
cobin/spindentity.c: updated to new do/while loopfunction style
mp3encode/lame/gstlame.c: argument types, whole lotta lame options
tests/: various changes

Now, for the big changes:  Once again, the scheduling system has changed.
And once again, it broke a whole bunch of things.  The gist of the change
is that there is now a function pointer for gst_pad_push and gst_pad_pull,
instead of a hard-wired function.  Well, currently they are functions, but
that's for debugging purposes only, they just call the function pointer
after spewing lots of DEBUG().

This changed the GstPad structure a bit, and the GstPad API as well.
Where elements used to provide chain() and pull() functions, they provide
chain() and get() functions. gst_pad_set_pull[region]_function has been
changed to get_pad_set_get[region]_function.  This means all the elements
out there that used to have pull functions need to be updated.  The calls
to that function have been changed in the normal elements, but the names
of the functions passed is still _pull[region](), which is an aesthetic
issue more than anything.

As for what doesn't work yet, just about anything dealing with Connections
is hosed, meaning threaded stuff won't work.  This will be fixed about 12
hours from now, after I've slept, etc.  The simplefake.c test works in
both cothreaded and chained cases, but not much else will work due to the
Connection problem.  Needless to say, don't grab this unless you *need*
these features *now*, else wait to update this stuff until tomorrow.

I'm going to sleep now.
2000-12-16 10:18:09 +00:00
Wim Taymans 64a740ad9b Move a step closer to autoplugging. The element selection in the pipeline works.
Original commit message from CVS:
Move a step closer to autoplugging. The element selection in the
pipeline works.
Slight modification to the typefind function handling.
removed the stupid mime types in the mpeg decoders.
Adjust videosink for the new caps handling.
Modified the queue example to show an error in plan creation; Erik can you
solve this? This is the type of pipelines autoplugging uses.
2000-12-15 16:43:26 +00:00
Wim Taymans a63780a377 Header cleanup: try to include as little as possible; this will probably speed up compilation a bit.
Original commit message from CVS:
Header cleanup: try to include as little as possible; this will probably
speed up compilation a bit.
changed the .c files to use #include "..."
Fix for the 'plugins are loaded twice' bug.
Fix 22186: GstObject flags are now used everywhere. Added *_FLAG_LAST so
elements do not use the same flags. Added some padding in the flag enum
for future expansion.
2000-12-15 01:57:34 +00:00
Wim Taymans d78215be9d More Caps changes, this change introduces the padfactory. the GstPadFactory will be used to describe the pads that an...
Original commit message from CVS:
More Caps changes, this change introduces the padfactory. the GstPadFactory
will be used to describe the pads that an element will contain during
its lifetime.
mpg123 and mp3parse serve as an example.
More XML changes to incorporate the padfactories.
2000-12-12 19:29:43 +00:00
Erik Walthinsen 5f7a20ff6f Added LAME encoder. Wow.
Original commit message from CVS:
Added LAME encoder.  Wow.
2000-12-12 09:40:25 +00:00
Erik Walthinsen ffbc7201a7 Brand new source, the cdparanoia source. Reads audio data from a CD, writes out raw audio. The tests/paranoia.c pro...
Original commit message from CVS:
Brand new source, the cdparanoia source.  Reads audio data from a CD,
writes out raw audio.  The tests/paranoia.c program will simply hook this
up to a sound card.  It works perfectly.

Next step is to flesh out the rest of the element, including pad caps,
better seek and playout control, signals, and whatever else comes up.

A minor patch to the editor is included here, the GstElementFactory details
struct has a name change from 'class' to 'klass' that wasn't reflected
in the elementselect widget.  Fixd.
2000-12-12 06:49:26 +00:00
Erik Walthinsen c28633b01d Updated to latest code for testing scheduling.
Original commit message from CVS:
Updated to latest code for testing scheduling.
2000-12-11 00:25:06 +00:00
Wim Taymans ec1548618e Test program to check the registry handling
Original commit message from CVS:
Test program to check the registry handling
2000-12-11 00:06:16 +00:00
Wim Taymans 6fa6cd8ce4 First attempt at rebuilding the type/plugin system
Original commit message from CVS:
First attempt at rebuilding the type/plugin system
- make sure caps/props are saved in the registry
autoplugging is completely broken.
removed the typefactories and typeids from all the pads in the plugins
XML load/save is ok (be sure to rerun gstreamer-register)
2000-12-11 00:04:25 +00:00
Erik Walthinsen 1aed13ae6b Test program for simple queue operations. Good for testing thread/cothread interations.
Original commit message from CVS:
Test program for simple queue operations.  Good for testing thread/cothread
interations.
2000-12-08 20:31:40 +00:00
Wim Taymans d29ff12b69 Updated the test program
Original commit message from CVS:
Updated the test program
2000-12-07 18:38:54 +00:00
Wim Taymans 61ed3b06ee More test cases.
Original commit message from CVS:
More test cases.
2000-12-03 20:15:24 +00:00
Wim Taymans 9652a3aef9 Added a test program for the capabilities
Original commit message from CVS:
Added a test program for the capabilities
2000-12-03 17:52:14 +00:00
Wim Taymans e8ea96d23b Some code cleanup
Original commit message from CVS:
Some code cleanup
Let the parent GstBin decide when to do a create_plan (bin inside a thread)
2000-11-01 22:11:48 +00:00
Wim Taymans 870c6045b2 Fixed a severe timestamp bug in mpeg_play.
Original commit message from CVS:
Fixed a severe timestamp bug in mpeg_play.
Create a new thread upon a multisrc element in autoplugging: the autoplug
example now correctly sets up 5 threads for an mpeg player.
2000-10-09 20:01:17 +00:00
Wim Taymans b772f81d4a Added an autoplug example. This little program (30 relevant lines) is able to play MPEG1(system)/MPEG2(system)/AVI(DI...
Original commit message from CVS:
Added an autoplug example. This little program (30 relevant lines) is able
to play MPEG1(system)/MPEG2(system)/AVI(DIVX)/Vorbis/AC3 and whatever codec
you write.
Separated the mp3 and mpeg1 types for better reuse.
2000-10-08 22:23:12 +00:00
Wim Taymans 4e7f031df7 Loading and saving of XML pipeline descriptions.
Original commit message from CVS:
Loading and saving of XML pipeline descriptions.
GladeXML like operation implemented (you can retrieve parts of a pipeline)
2000-09-27 19:33:10 +00:00
Wim Taymans 9fec44e1c5 better .cvsignore
Original commit message from CVS:
better .cvsignore
2000-09-24 22:47:08 +00:00
Wim Taymans 31d31ddc2a Cleanups.
Original commit message from CVS:
Cleanups.
The first steps to a Glade like XML handling.
A first example of what is to come...
2000-09-24 22:45:48 +00:00
Wim Taymans c6b47b8ed2 An example of two threads and two queues.
Original commit message from CVS:
An example of two threads and two queues.
2000-09-24 14:31:21 +00:00
Wim Taymans e5ab7f33ac A first attempt to fix the queues in a cothreaded pipeline.
Original commit message from CVS:
A first attempt to fix the queues in a cothreaded pipeline.
Some fixes to the thread handling.
Fix a bug in gstreamer-config : gthread was not included.
gst_bin_create_plan() is now done in the READY state.
a bin with only another bin in it will now work with gst_bin_iterate.
Added some examples for the queues.
2000-09-22 23:35:14 +00:00
Wim Taymans cab1728fa5 Added gst_pipeline_add_sink/src to allow multiple sink cases and more complex autoplugging. Update docs too.
Original commit message from CVS:
Added gst_pipeline_add_sink/src to allow multiple sink cases and
more complex autoplugging. Update docs too.
Simplified the pipeline autoplugging code.
Changed the cothread case: One iteration is now a push from the src
element. The disk source does not change its state anymore on eof.
Better type setting for the ac3 parser/decoder and mpeg2parse.
2000-09-17 22:08:09 +00:00
Wim Taymans 1351aba899 A thread example.
Original commit message from CVS:
A thread example.
An example of gstreamer-launch: an mp3 player
2000-09-09 16:39:03 +00:00
Wim Taymans 552b7f32aa Changes to gstreamer-config to include gtk+ libs manual changes: queues, threads, programs gsteditor does not crash a...
Original commit message from CVS:
Changes to gstreamer-config to include gtk+ libs
manual changes: queues, threads, programs
gsteditor does not crash anymore.
gstpipline new should return a GstElement *
fixed ac3dec for new getbits
fixes to gstreamer-launch
more efficient startup for gstplay.
2000-09-09 16:36:10 +00:00
Wim Taymans 7ccc2cf90b Externalized the plugin information in /etc/gstreamer/reg.xml
Original commit message from CVS:
Externalized the plugin information in /etc/gstreamer/reg.xml
- no need to do a plugin_load_all()
- plugins are loaded when needed
- typedetect functions are loaded when needed (still buggy)
- no need to check for the existance of the plugin in the codecs
- added gstreamer-register to create the reg.xml file
- renamed launch to gstreamer-launch
- plugins need to register the typefactory they provide
modified the plugins to meet the new design
modified the plugins to correctly set their pad types
autoplugging can be done without loading the plugins now
2000-08-28 20:20:55 +00:00
Wim Taymans a703c01d94 More docs (most of them just empty...)
Original commit message from CVS:
More docs (most of them just empty...)
Added automatic pad plugging.
Added automatic dynamic pad plugging.
Changed some codecs to correctly set their pad types.
2000-08-22 21:18:18 +00:00
Wim Taymans 3cff190b74 ..
Original commit message from CVS:
..
2000-08-21 21:57:40 +00:00
Wim Taymans c8c0ac4e78 An example using autoplug. Works for mp3 files only for now.
Original commit message from CVS:
An example using autoplug. Works for mp3 files only for now.
2000-08-21 21:23:27 +00:00
Wim Taymans 284ecaecca helloworld example. and docs
Original commit message from CVS:
helloworld example. and docs
2000-08-18 20:38:54 +00:00
Erik Walthinsen b6d31c1c72 Megapatch, changes which states are available, how they're used, and how they're set. Also modifies the scheduling s...
Original commit message from CVS:
Megapatch, changes which states are available, how they're used, and how
they're set.  Also modifies the scheduling system, breaking pulled
buffers.  Check mail archives for more details.
2000-07-17 17:14:15 +00:00