Commit graph

480 commits

Author SHA1 Message Date
Benjamin Otte
907e3e97d9 update plugin initialization restructuring (see email for details
Original commit message from CVS:
update plugin initialization restructuring (see email for details
2003-10-31 19:32:47 +00:00
David Schleef
9d632588f0 Fix setting of int and int64 dparams. Fixes #124023
Original commit message from CVS:
Fix setting of int and int64 dparams.  Fixes #124023
2003-10-31 03:56:17 +00:00
Benjamin Otte
3235f1d4c0 merge TYPEFIND branch. Major changes:
Original commit message from CVS:
merge TYPEFIND branch. Major changes:
- totally reworked type(find) system
- bytestream is out of the core again
- typefind element is now part of gstelements
2003-10-28 20:25:30 +00:00
Ronald S. Bultje
6fbff1c106 New typefind system: bytestream is now part of the core all plugins have been modified to use this new typefind syste...
Original commit message from CVS:
New typefind system:
* bytestream is now part of the core
* all plugins have been modified to use this new typefind system
* asf typefinding added
* mpeg video stream typefiding removed because it's broken
* duplicate typefind entries removed
* extra id3 typefinding added, because we've seen 4 types of files
(riff/wav, flac, vorbis, mp3) with id3 headers and each of these needs
to work. Instead, I've added an id3 element and let it redo typefiding
after the id3 header. this needs a hack because spider only typefinds
once. We can remove this hack once spider supports multiple typefinds.
* with all this, mp3 typefinding is semi-rewritten
* id3 typefinding in flac/vorbis is removed, it's no longer needed
* fixed spider and gst-typefind to use this, too.
* Other general cleanups
2003-10-01 13:11:45 +00:00
Benjamin Otte
83bfcc03bd include _get_type() functions in headers. Fixes docs build
Original commit message from CVS:
include _get_type() functions in headers. Fixes docs build
2003-08-17 19:26:00 +00:00
Benjamin Otte
1a661b3204 remove legacy offset code - fixes #119550
Original commit message from CVS:
remove legacy offset code - fixes #119550
2003-08-14 07:37:58 +00:00
David Schleef
84d3fe84b6 putbits removed because of licensing concerns. Code was moved back to the plugins it was derived from.
Original commit message from CVS:
putbits removed because of licensing concerns.  Code was moved
back to the plugins it was derived from.
2003-08-06 01:06:30 +00:00
David Schleef
4bc1532aea Change %llu printf formats to G_GUINT64_FORMAT
Original commit message from CVS:
Change %llu printf formats to G_GUINT64_FORMAT
2003-07-23 20:01:15 +00:00
Benjamin Otte
10cdc0c90c don't include optimizations directly in Makefiles
Original commit message from CVS:
don't include optimizations directly in Makefiles
2003-07-08 16:13:24 +00:00
Benjamin Otte
803ce6bf48 GST_DEBUG reorganization containing loads of stuff:
Original commit message from CVS:
GST_DEBUG reorganization
This is a big diff (ca 450k), containing loads of stuff:
- gstinfo.[ch] complete rewrite
- changing of all GST_DEBUG messages to reflect that change
- reorganization of subsystem disabling
- addition of gstconfig.h.in so we can track the disablings
- <gst/gst.h> does not include <unistd.h> and <config.h> anymore
- documentation updated for gstinfo stuff (build the docs yourself to know what changed)
- bugfixes for making of the docs (files from CVS are not deleted anymore
- testsuite for debugging changes in testsuite/debug

expect breakage
2003-06-29 14:05:49 +00:00
David Schleef
2763a973ef Fix spelling errors
Original commit message from CVS:
Fix spelling errors
2003-06-15 02:55:37 +00:00
Thomas Vander Stichele
5c7c48520d fix float min and max
Original commit message from CVS:
fix float min and max
2003-06-05 21:37:14 +00:00
Wim Taymans
6ab1630c40 - First attempt at implementing #113180, this one also removes automatic (byte) offset calculations in the subbuffer ...
Original commit message from CVS:
- First attempt at implementing #113180, this one also removes
automatic (byte) offset calculations in the subbuffer code and moves
that logic to bytestream and filesrc. It will also update the offset
and duration fields in some special cases.
2003-05-24 10:09:39 +00:00
David Schleef
42004415b8 Change .p2align to .align to make non-gas assemblers happy (Fixes: #112607)
Original commit message from CVS:
Change .p2align to .align to make non-gas assemblers happy (Fixes: #112607)
2003-05-09 18:35:24 +00:00
Benjamin Otte
ef0f37e429 make bytestream use the shiny new timestamp macros
Original commit message from CVS:
make bytestream use the shiny new timestamp macros
2003-04-15 18:52:07 +00:00
David Schleef
480dfe3198 Add $(GST_LIBS) to libgstcontrol's LIBADD. Should go into 0.6.1.
Original commit message from CVS:
Add $(GST_LIBS) to libgstcontrol's LIBADD.  Should go into 0.6.1.
2003-04-04 19:09:29 +00:00
Benjamin Otte
d5caf284b3 - added support for _reset so PLAYING -> READY -> PLAYING can easily be done without destroying a bytestream first
Original commit message from CVS:
- added support for _reset so PLAYING -> READY -> PLAYING can easily be done without destroying a bytestream first
- minor performace improvement on data request (hope it doesn't break anything - if it does revert the changes to gst_bytestream_peek_bytes
2003-03-19 21:16:04 +00:00
Wim Taymans
5c76d6b7a9 Added bytestream API docs.
Original commit message from CVS:
Added bytestream API docs.
2003-02-25 20:24:39 +00:00
Wim Taymans
b030b5cef2 - Add more --disable options
Original commit message from CVS:
- Add more --disable options
- fix makefiles to only compile non-disabled features
- some compile fixes.
- removed extratypes, added gsturitype
- make get/set clock on a bin overridable
- some portability fixes for GUINT64
- separate pools from gstregistry.[ch] into gstregistrypool.[ch]
- make gstobject size fixed, even if we disabled load/save
- don't use 'new' as a variable as it is not a valib C++ variable
2003-02-10 20:32:32 +00:00
David Schleef
393033c6fa Convert %lld and %llu in printf formats to G_G[U]INT64_FORMAT. Fix pointer<->int conversion. Fixes warnings on alpha.
Original commit message from CVS:
Convert %lld and %llu in printf formats to G_G[U]INT64_FORMAT.  Fix
pointer<->int conversion.  Fixes warnings on alpha.
2003-02-01 20:29:27 +00:00
Wim Taymans
d6469f9688 - Make _tell more accurate
Original commit message from CVS:
- Make _tell more accurate
2003-01-20 22:32:56 +00:00
Thomas Vander Stichele
b28455b1d6 memleak fix
Original commit message from CVS:
memleak fix
2003-01-17 18:31:53 +00:00
Thomas Vander Stichele
09f50aa47e debug fix
Original commit message from CVS:
debug fix
2003-01-13 09:59:15 +00:00
David Schleef
7f09b68704 Fix prototypes (trivial)
Original commit message from CVS:
Fix prototypes (trivial)
2003-01-11 00:29:19 +00:00
Jan Schmidt
d1aa5369f6 Moved a check for NULL buffer from gst_pad_pull to be a little earlier.
Original commit message from CVS:
Moved a check for NULL buffer from gst_pad_pull to be a little earlier.
Fixed 2 bs_print format specifiers

wtay, please check this and let me know if you would prefer changes like
this to be pre-approved
2003-01-05 14:20:12 +00:00
Wim Taymans
c6daa24e8b Cleanups + better timestamp capture
Original commit message from CVS:
Cleanups + better timestamp capture
2002-12-31 16:42:28 +00:00
Wim Taymans
347505bcb9 - major API breakage (one of the last, I promise...)
Original commit message from CVS:
- major API breakage (one of the last, I promise...)
- GST_PAD_QUERY -> GST_QUERY
- GstPadQuery -> GstQuery
- Move query definitions to gstquery.h to allow for future dynamic
query types.
- remove _pad_handles_* in favour of extra format/event functions to
make the same checks.
- fix elements
- Implemented missing query/event/formats functions in gstelement
2002-12-30 17:42:11 +00:00
Wim Taymans
222b9c821b Cleanups
Original commit message from CVS:
Cleanups
2002-12-27 15:58:54 +00:00
Thomas Vander Stichele
7c84581a90 patch from brian cameron for iso c compliance
Original commit message from CVS:
patch from brian cameron for iso c compliance
2002-12-18 21:44:57 +00:00
Thomas Vander Stichele
7eea6a04b7 fix for parallel installability
Original commit message from CVS:
fix for parallel installability
2002-12-08 14:39:38 +00:00
David I. Lehn
31efa36756 use G_{BEGIN,END}_DECLS
Original commit message from CVS:
use G_{BEGIN,END}_DECLS
2002-10-30 09:17:34 +00:00
Wim Taymans
37f8ed8807 Fix C++ linkage problems
Original commit message from CVS:
Fix C++ linkage problems
2002-10-22 19:49:52 +00:00
David I. Lehn
dc36dd9e5d build as a lib rather than a plugin
Original commit message from CVS:
build as a lib rather than a plugin
2002-10-03 03:00:25 +00:00
Thomas Vander Stichele
ae32b9a352 fixes http://bugzilla.gnome.org/show_bug.cgi?id=91179 make mine beer an ice-tea
Original commit message from CVS:
fixes
http://bugzilla.gnome.org/show_bug.cgi?id=91179
make mine beer an ice-tea
2002-08-26 15:31:21 +00:00
Steve Baker
e4056aa180 gstcontrol is now just a normal lib, not a plugin
Original commit message from CVS:
gstcontrol is now just a normal lib, not a plugin
2002-08-11 12:18:03 +00:00
Wim Taymans
88d5690b24 unref event instead of freeing it
Original commit message from CVS:
unref event instead of freeing it
2002-07-08 19:22:41 +00:00
Thomas Vander Stichele
d3e33a16ac as promised, the header changes and some of wingo's virtual fixes as well by accident
Original commit message from CVS:
as promised, the header changes
and some of wingo's virtual fixes as well by accident
2002-06-22 23:17:44 +00:00
Steve Baker
62fdff7a0b add getters for values
Original commit message from CVS:
add getters for values
2002-06-22 13:23:59 +00:00
Wim Taymans
2a01bdbe56 Implement size_hint on bytestream so that plugins can give a hint about the number of bytes they are going to read.
Original commit message from CVS:
Implement size_hint on bytestream so that plugins can give a hint about the
number of bytes they are going to read.
2002-06-13 22:29:32 +00:00
Wim Taymans
87b43f8aeb Added _length method for peer pads that can answer the query
Original commit message from CVS:
Added _length method for peer pads that can answer the query
2002-06-07 21:52:16 +00:00
Wim Taymans
e89f26944a Slightly better timestamp handling use pad_query for _tell
Original commit message from CVS:
Slightly better timestamp handling
use pad_query for _tell
2002-05-31 23:39:09 +00:00
Steve Baker
2caef6eec9 many changes including:
Original commit message from CVS:
many changes including:
- now the rate needs to be set explicitly, instead of from a pad
- asynchronous mode has been implemented - and it even works
- some refactoring of the process code
- a plugin api change, GST_DPMAN_PREPROCESS and GST_DPMAN_PROCESS have changed a bit
they are now *a lot* simpler to use, more flexible, and optimised so that the process func is never called if nothing changes - all in all worth the api breakage.

UPDATE YOUR PLUGINS PEOPLE!
2002-05-29 18:51:27 +00:00
Steve Baker
fc7a6ad8c9 completely rewrite interpolation so that it is more stable, faster, easier to maintain and it now sounds damned smoooth
Original commit message from CVS:
completely rewrite interpolation so that it is more stable, faster, easier to maintain and it now sounds damned smoooth
2002-05-29 18:47:06 +00:00
Steve Baker
e1fe257bc9 add a value-changed signal so that subclasses can precalculate stuff after a value has been changed
Original commit message from CVS:
add a value-changed signal so that subclasses can precalculate stuff after a value has been changed
2002-05-29 18:45:25 +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
Steve Baker
f252c3d388 cosmetic change: remove newlines from bs_print strings
Original commit message from CVS:
cosmetic change: remove newlines from bs_print strings
2002-05-26 10:02:03 +00:00
Steve Baker
5484324b04 New bytestream fileio style api has landed, along with some minor fixes:
Original commit message from CVS:
New bytestream fileio style api has landed, along with some minor fixes:
- implement gst_bytestream_tell
- prevent buffers from being gobbled after a seek
2002-05-15 18:52:08 +00:00
David I. Lehn
321f046aaf Added gst_bytestream_get_timestamp() call to get timestamp of data at the front of the stream. If no data in stream,...
Original commit message from CVS:
Added gst_bytestream_get_timestamp() call to get timestamp of data at
the front of the stream.  If no data in stream, loads 1 byte to get a
new buffer and uses its timestamp.

Does nothing to handle readers that try to read data lengths that span
buffers with multiple timestamps.

_get_timestamp() now used when creating new buffers.
2002-05-10 08:16:18 +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
Steve Baker
b4d1d31ded a few internal changes:
Original commit message from CVS:
a few internal changes:
- put last_update_timestamp into GstDParam
- added a GstDParamUpdateInfo enum to the update function so that dparams know what context they are updating in (for example, the first update since the pipeline was started)
- rewrote bogus next_timestamp calculation in GstDParamSmooth
2002-05-05 15:39:37 +00:00
Steve Baker
4321f75fbd renamed rate-proportion to the more accurate hertz-rate-bound
Original commit message from CVS:
renamed rate-proportion to the more accurate hertz-rate-bound
2002-05-05 15:31:11 +00:00
Thomas Vander Stichele
e6abe03293 same change here
Original commit message from CVS:
same change here
2002-05-02 13:41:07 +00:00
Thomas Vander Stichele
b557c951c2 my mistake - this should compile with the header in the tarball, not a possibly installed header
Original commit message from CVS:
my mistake - this should compile with the header in the tarball, not a
possibly installed header
2002-05-02 13:39:39 +00:00
Benjamin Otte
8cd991a9d6 - make all _get_list functions return a const reference to original lists and no copy
Original commit message from CVS:
- make all _get_list functions return a const reference to original lists and no copy
- redo code accordingly
- fix compile issue in dparam stuff
2002-04-19 19:49:41 +00:00
Benjamin Otte
ce8e4a8879 we don't use // in code we commit :)
Original commit message from CVS:
hi wtay (and some others): we don't use // in code we commit :)
2002-04-14 14:59:34 +00:00
Steve Baker
a66e1df60f more _
Original commit message from CVS:
more _
2002-04-14 11:50:18 +00:00
Steve Baker
b5e2109686 cannot use _ in unit names for some reason.
Original commit message from CVS:
cannot use _ in unit names for some reason.
2002-04-14 11:48:51 +00:00
Steve Baker
a15b5ccc6d added unitconvert which has a registry of Units of Measurement and an api to convert one unit to another.
Original commit message from CVS:
added unitconvert which has a registry of Units of Measurement and an api to convert one unit to another.
Any required dparam now needs to specify what unit it represents so that an app can convert it to some other unit for presentation/other purposes.

Also added GST_DPMAN_PROCESS_CHUNK macro for elements which don't process their audio one sample at a time (ie, ladspa).
2002-04-14 10:08:21 +00:00
Thomas Vander Stichele
ed4ec2d293 various include fixes, adding a doc on why as well
Original commit message from CVS:
various include fixes, adding a doc on why as well
2002-04-12 09:24:37 +00:00
Andy Wingo
b214d35eed commit to make gstreamer follow the gtk function/macro naming conventions:
Original commit message from CVS:
commit to make gstreamer follow the gtk function/macro naming conventions:

GstPadTemplate <-> gst_pad_template <-> GST_PAD_TEMPLATE

and the same for *factory and typefind.
2002-04-11 20:35:18 +00:00
Benjamin Otte
8ae7350492 fix all compiler warnings
Original commit message from CVS:
fix all compiler warnings
2002-04-04 19:28:23 +00:00
Steve Baker
b2fa9adc50 Added a signal which notifies when a required dparam is added.
Original commit message from CVS:
Added a signal which notifies when a required dparam is added.
Added gst_dpman_bypass_dparam so that some dparams can be exposed as object properties as well.  If the object property is set, a connected dparam is disconnected to avoid the two subsystems fighting over setting the value.
2002-04-02 09:03:21 +00:00
Wim Taymans
2686e1b6e0 Changed to the new props API
Original commit message from CVS:
Changed to the new props API
2002-03-30 17:08:02 +00:00
Andy Wingo
ed9b628168 filter newlines out of GST_DEBUG statements to reflect new core behavior fixes to adder's caps, again
Original commit message from CVS:
* filter newlines out of GST_DEBUG statements to reflect new core behavior
* fixes to adder's caps, again
2002-03-24 22:07:09 +00:00
Andy Wingo
c12c39d37c added plugin_desc structures to libs, which makes their locations cached in the registry. this speeds plugin loading ...
Original commit message from CVS:
* added plugin_desc structures to libs, which makes their locations cached in the registry. this
speeds plugin loading considerably, especially on uninstalled versions.

* put the lib path before all others, for speed reasons.

* some fixes to adder's caps.

* added linefeeds (\n) to GST_DEBUG strings to match GST_INFO behavior. this is more sane. all
code will need to be converted. i think some perl can do this.
2002-03-24 20:55:45 +00:00
Andy Wingo
0067d17205 removal of //-style comments don't link plugins to core libs -- the versioning is done internally to the plugins with...
Original commit message from CVS:
* removal of //-style comments
* don't link plugins to core libs -- the versioning is done internally to the plugins with the plugin_info struct,
and symbol resolution is lazy, so we can always know if a plugin can be loaded by the plugin_info data. in theory.
2002-03-19 04:10:13 +00:00
Andy Wingo
6ae5f15064 s/@GST_PLUGIN_LDFLAGS@/$(GST_PLUGIN_LDFLAGS)/ @-substitued variables variables are defined as make variables automagi...
Original commit message from CVS:
s/@GST_PLUGIN_LDFLAGS@/$(GST_PLUGIN_LDFLAGS)/

@-substitued variables variables are defined as make variables automagically,
and this gives the user the freedom to say make GST_PLUGIN_LDFLAGS=-myflag
2002-03-19 01:39:45 +00:00
Benjamin Otte
3743cdef5b warning: 'current_diff' might be used uninitialized in this function
Original commit message from CVS:
warning: 'current_diff' might be used uninitialized in this function
2002-03-06 19:58:19 +00:00
Steve Baker
3e1e367954 This is a major update to the dparams api - I think it is now much cleaner and the app-side is much easier to use. hi...
Original commit message from CVS:
This is a major update to the dparams api - I think it is now much cleaner and the app-side is much easier to use.

highlights are:
- GParamSpecs are now used throughout to define dparams
- currently limited to supporting types gfloat, gint and gint64. this should cover 99% of cases and new types can be added in the future
- application-side api is now based almost entirely on setting object properties
- the smoothing dparam is now a subclass of GstDParam
- array-mode is not yet implemented but is not forgotton

time to start documenting
2002-03-04 18:54:20 +00:00
Steve Baker
27894aec7c use the correct marshal
Original commit message from CVS:
use the correct marshal
2002-02-21 20:44:59 +00:00
Andy Wingo
7305565829 fix funny build issue by not linking plugin libraries to gstreamer core. this is because they are plugins, not shared...
Original commit message from CVS:
fix funny build issue by not linking plugin libraries to gstreamer core. this is
because they are plugins, not shared libraries per se, and will only be loaded by
the core itself. this change allows the core elements (schedulers, autopluggers, etc)
to use the core loadable libraries (bytestream, getbits, etc) as well as "ext" libs
like the new cothreads package.
2002-02-12 17:50:22 +00:00
Wim Taymans
a7c0c874b5 Added _seek and _tell // cleanup
Original commit message from CVS:
Added _seek and _tell
// cleanup
2002-02-02 13:23:07 +00:00
Wrobell
b1be00e651 - plugins are built without versioning info /Uraeus claims: plugins/; if not plugins why this is built as lib*.so.0.0.0?
Original commit message from CVS:
- plugins are built without versioning info /Uraeus claims: plugins/;
if not plugins why this is built as lib*.so.0.0.0?
2002-01-30 23:49:06 +00:00
Wim Taymans
04667da435 Commited some other changes.
Original commit message from CVS:
Commited some other changes.
2002-01-13 22:43:49 +00:00
David I. Lehn
8da28910bc s/filter/plugin/ add $(GST_LIBS) to all plugins move Makefile.am things around to a mostly standard layout remove HTT...
Original commit message from CVS:
* s/filter/plugin/
* add $(GST_LIBS) to all plugins
* move Makefile.am things around to a mostly standard layout
* remove HTTP flags/libs from elements since http element moved
2002-01-12 00:47:40 +00:00
Thomas Vander Stichele
9fe4587856 more changes
Original commit message from CVS:
more changes
2001-12-23 18:12:12 +00:00
Thomas Vander Stichele
7b61bb6f74 moving around
Original commit message from CVS:
moving around
2001-12-23 17:27:58 +00:00
Thomas Vander Stichele
02c10c5005 changing stuff
Original commit message from CVS:
changing stuff
2001-12-23 17:14:13 +00:00
Thomas Vander Stichele
be277c79e0 moving libs around
Original commit message from CVS:
moving libs around
2001-12-23 17:12:25 +00:00
Thomas Vander Stichele
2b20b7178f moving bytestream in the same way as in gst-plugins since ac3parse needs it
Original commit message from CVS:
moving bytestream in the same way as in gst-plugins since ac3parse needs it
2001-12-23 00:07:59 +00:00