Commit graph

83 commits

Author SHA1 Message Date
Wim Taymans
52fa416005 CPU detection of MMXEXT and probably 3DNOW (not on Athlon yet)
Original commit message from CVS:
CPU detection of MMXEXT and probably 3DNOW (not on Athlon yet)
Renamed the mmxe motion compentation files.
disabled SSE optimisation in ac3dec because it apparently faults..
enable MMXEXT motion compensation on non SSE CPUs (AMD)
2001-02-27 19:44:49 +00:00
Wim Taymans
58a66780d8 slightly changed the Makefile.am in videoscale libs.
Original commit message from CVS:
slightly changed the Makefile.am in videoscale libs.
v4lsrc works again
A little modification to the videotest programm to use a tee element.
added support for multiple paths in --gst-plugin_path=.
added ab ENV variable GST_PLUGIN_PATH to specify extra directories to
look for plugins.
2001-02-24 00:23:21 +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
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
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
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
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
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
Wim Taymans
a76f5340e3 Fixed the MPEG2 to MPEG1 recoder, we need cannot create dangling elements with the current scheduler. Remove the subt...
Original commit message from CVS:
Fixed the MPEG2 to MPEG1 recoder, we need cannot create dangling elements
with the current scheduler. Remove the subtitle parser because it's not
possible with the current scheduler.
Added a padtemplate for MPEG2 subtitles.
2001-01-06 16:52:44 +00:00
Wim Taymans
100bedea62 Make sure the plugin is loaded only once
Original commit message from CVS:
Make sure the plugin is loaded only once
2001-01-03 23:08:17 +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
44aad6ef47 added the category number to DEBUG
Original commit message from CVS:
added the category number to DEBUG
2001-01-01 07:44:32 +00:00
Wim Taymans
3c883fb43a Updated test programs
Original commit message from CVS:
Updated test programs
2001-01-01 04:10:52 +00:00
Richard Boulton
1ad129fd31 Convert GstSrc's to GstElements.
Original commit message from CVS:
Convert GstSrc's to GstElements.
2000-12-30 01:53:05 +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
Wim Taymans
40f192075c Updates for the gst_pad_push changes
Original commit message from CVS:
Updates for the gst_pad_push changes
2000-12-27 22:39:45 +00:00
Richard Boulton
ed8dac9fa8 Remove cothreads.[ch] from tests/cothreads/ and replace then with a rule in the Makefile.am to generate symlinks to t...
Original commit message from CVS:
Remove cothreads.[ch] from tests/cothreads/ and replace then with a rule
in the Makefile.am to generate symlinks to the live versions of the code
in gst/ : fixes a compile error, and should keep things cleaner.
2000-12-03 15:02:24 +00:00
Wim Taymans
92c447c536 Reworked AC3 decoder. No seeking yet but at least we do not need ac3parse anymore.
Original commit message from CVS:
Reworked AC3 decoder. No seeking yet but at least we do not need ac3parse
anymore.
Reworked dvdsrc to read scrambled data (DeCSS not included). I have
modified DeCSS a bit to work in GStreamer. Can I release the code or is
there some lawyer that's going to sue me?
MPEG2 SSE motion compensation.
Tried to add PTS to the MPEG decoder but failed.
2000-11-20 19:04:32 +00:00
Wim Taymans
4a38cd655b Misc fixes and cleanups
Original commit message from CVS:
Misc fixes and cleanups
A reworked gstplay. Now it is called gstmediaplay. gstplay is a custom
widget that can display media and is to become a bonobo component soon.
put the tables of the mpeg audio encoder in a header file.
maybe faster quantisation for the mpeg encoder.
2000-10-30 21:02:08 +00:00
Wim Taymans
9bae9d4b91 More Docs updates.
Original commit message from CVS:
More Docs updates.
Added plugin documentation. I fear we need a gstdoc implementation
that loads plugins and does introspection on them. I think we should
automatically create the docs for the pads and mime types the plugins
provide. Does anyone have enough perl knowledge to add these features? I
allready changed the C code to output the pad definitions but my perl
knowledge is too limited, for now, to implement the rest of the needed
functionality...
2000-10-25 19:09:53 +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
Richard Boulton
59030bfc59 Patch from Chris Emerson for PPC. cothreads stuff was causing segfaults, because the stack needs to be initialised w...
Original commit message from CVS:
Patch from Chris Emerson for PPC.  cothreads stuff was causing segfaults,
because the stack needs to be initialised with a particular structure on
PPC, unlike x86 where it simply has items pushed or popped.
Added Chris to AUTHORS, for his trouble.
2000-09-21 00:57:09 +00:00
Richard Boulton
f8666a569f Fix compile problem due to DEBUG being redefined in libs/getbits/gstgetbits.h. Also fix several small typos in the d...
Original commit message from CVS:
Fix compile problem due to DEBUG being redefined in
libs/getbits/gstgetbits.h.  Also fix several small typos in the docs and
examples.
2000-09-18 22:19:57 +00:00
Wim Taymans
2c42495cf0 Converted the mpeg2 encoder asm to gnu asm, removing the dependency of nasm
Original commit message from CVS:
Converted the mpeg2 encoder asm to gnu asm, removing the dependency of nasm
Added cpu detection in the mpeg2 encoder
removed the inlined mmx asembler to seperate files.
2000-09-17 12:31:01 +00:00
Wim Taymans
3239d7cb0c The vorbis encoder
Original commit message from CVS:
The vorbis encoder
A test program to convert an mp3 to a vorbis file.
A fix for the dynamic plugin loader factory_find was not working.
Don't forget to run gstreamer-register after installing the plugins!
2000-09-14 22:18:43 +00:00
Wim Taymans
23540ccc52 Faster and modular getbits implementation.
Original commit message from CVS:
Faster and modular getbits implementation.
Fixed a bug in the audiosink that could lock up your box on bad MB.
Modified the plugins to use the new getbits functions.
2000-09-07 20:35:15 +00:00
Richard Boulton
cf0a34528d libXv is now linked against by test/* and gstplay if it is present.
Original commit message from CVS:
libXv is now linked against by test/* and gstplay if it is present.
-lXv isn't leaked all over the place due to AC_CHECK_LIB test.
This is still messy though - we shouldn't have to link explicitly
with extra things just because we use certain plugins.

Build Makefile in tests, but don't recurse into tests when doing the
build  (tests no longer in SUBDIRS).
2000-08-19 00:29:57 +00:00
Wim Taymans
d6e6b9cb60 Build fixes.
Original commit message from CVS:
Build fixes.
Adapted the test directory to the new state management
added an mpeg2 to avi encoder.
added a v4l to divx capture example.
2000-08-14 15:17:24 +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
Wim Taymans
9b0e11ec7e Added seeking to some of the plugins. some MMX speedups in the MPEG decoders.
Original commit message from CVS:
Added seeking to some of the plugins.
some MMX speedups in the MPEG decoders.
Better YUV to MMX conversion
implemented seeking to gstplay.
2000-07-05 10:21:08 +00:00
Wim Taymans
a3d5d3a62b Switched Cr and Cb in YUV2RGB fixed the avi parser (gstriff had wrong size) the system_encoder can now do video only ...
Original commit message from CVS:
Switched Cr and Cb in YUV2RGB
fixed the avi parser (gstriff had wrong size)
the system_encoder can now do video only system streams
sanitized the colorspace and scaler api.
added fast self modifying asm scaler.
worked on the typefind stuff.
added a cool media player (gstplay) it uses the typefinder to playback
avi, mpeg1 (system and video) streams. It is also a testbed and a real app.
2000-06-25 21:38:00 +00:00
Wim Taymans
fff99983ad Fixed an MMX IDCT bug.
Original commit message from CVS:
Fixed an MMX IDCT bug.
Fixed a color conversion bug.
Initial work for multiply avi codecs.
2000-06-18 13:50:18 +00:00
Wim Taymans
d3fb1a8bd3 Added SCR and mux_rate calculations in the MPEG1 multiplexer. worked toward a unified putbits implementation
Original commit message from CVS:
Added SCR and mux_rate calculations in the MPEG1 multiplexer.
worked toward a unified putbits implementation
Added an MPEG audio layer 1&2 encoder.
2000-06-16 22:30:24 +00:00
Wim Taymans
f037c7a742 Reworked the colorspace converter and the scaler API.
Original commit message from CVS:
Reworked the colorspace converter and the scaler API.
Fixed some MMX bugs in the mpeg encoder.
2000-06-12 21:27:19 +00:00
Wim Taymans
f179798efb Reworked the audio resampler.
Original commit message from CVS:
Reworked the audio resampler.
Added first frames skipping to the mp3 and ac3 parser (this allows you to
skip a number of frames before pushing them).
Removed wrong mmx code from the encoder.
Added Macroblocks per slice to the encoder.
added bilinear and bicubic interpolation to the videoscaler.
Added a MPEG1 multiplexer (no SCR or mux rate calculations yet)
Added some options (framerate to the encoder/decoder)
2000-06-11 12:11:41 +00:00
Wim Taymans
987d66af1a Rewrote the mpeg2 system parser like the mpeg1 parser.
Original commit message from CVS:
Rewrote the mpeg2 system parser like the mpeg1 parser.
Added a command property to the pipefilter.
2000-05-28 22:46:46 +00:00
Wim Taymans
0fa1747e56 Added a basic element: pipefilter. This element connects the stdin/stdout of an external program into the pipeline. W...
Original commit message from CVS:
Added a basic element: pipefilter. This element connects the stdin/stdout
of an external program into the pipeline. We now have virtually all of
the capabilities of sox, lame, ...
2000-05-28 20:04:31 +00:00
Wim Taymans
cbb196fd31 Rewrote the mpeg1 system stream parser.
Original commit message from CVS:
Rewrote the mpeg1 system stream parser.
Fixed a motion compensation bug (was a bug on Intels site)
Faster/Better/more accurate motion detection in the mpeg encoder
Added an audio resampler (convert 48000 kHz to 44100 for example) does not work
Fixed rate control in the mpeg2 encoder.
2000-05-28 19:59:46 +00:00
Wim Taymans
ae5208f21f An MPEG1 transcoder.
Original commit message from CVS:
An MPEG1 transcoder.
2000-05-21 21:59:40 +00:00
Wim Taymans
8f2b441e96 Fixed the mpeg2 encoder. Added MMX optimisations for motion estimation.
Original commit message from CVS:
Fixed the mpeg2 encoder. Added MMX optimisations for motion estimation.
Added another mpeg1 encoder.
Added Two filters: smooth and median (a median cut filter)
Made the queue pull buffers.
2000-05-21 21:58:20 +00:00
Wim Taymans
2a4bfc0fc8 A simple video scaler as a library and an Element. Also a little non working mpeg2 to mpeg1 converter (still struggli...
Original commit message from CVS:
A simple video scaler as a library and an Element. Also a little non
working mpeg2 to mpeg1 converter (still struggling with the quantisation).
2000-05-12 17:39:40 +00:00
Wim Taymans
17224d3c8e More changes to the mpeg parser and encoder.
Original commit message from CVS:
More changes to the mpeg parser and encoder.
It seems like the mpeg2 decoder does not like some MPEG1 videos. Use
mpeg_play for now (eg. AlienSong)
2000-05-12 17:33:35 +00:00
Wim Taymans
8b8574407e Fixed some build errors.
Original commit message from CVS:
Fixed some build errors.
2000-05-01 23:22:04 +00:00
Wim Taymans
58dede8409 MPEG2 decoder fixes, unified MPEG System stream parser. an mpeg encoder.
Original commit message from CVS:
MPEG2 decoder fixes, unified MPEG System stream parser. an mpeg
encoder.
2000-05-01 23:09:46 +00:00
Wim Taymans
c81358367e Added the mpeg2dec MPEG1 and MPEG2 decoder.
Original commit message from CVS:
Added the mpeg2dec MPEG1 and MPEG2 decoder.
2000-04-24 20:51:30 +00:00
Wim Taymans
a3443b51d5 Unified getbits handling. I currently have an inline integer implementation.
Original commit message from CVS:
Unified getbits handling. I currently have an inline integer implementation.
2000-04-16 18:47:45 +00:00
Wim Taymans
3fbaa5c582 Makefile.am fixes
Original commit message from CVS:
Makefile.am fixes
2000-04-13 21:59:38 +00:00
Wim Taymans
5b0ba06f28 Added MMX optimized yuv2rgb (AlienSong now plays back at only 6% CPU)
Original commit message from CVS:
Added MMX optimized yuv2rgb (AlienSong now plays back at only 6% CPU)
Added mpeg1 picture skipping and fixed a buffer overflow.
Added a system clock. The audiosink can now adjust the clock.
Fixed incorrect behaviour on 8, 15, 16, 24 and 32 bits displays.
Cleanup of the videosink, it now uses the color conversion library when
needed.
2000-04-09 21:36:56 +00:00
Wim Taymans
0d9315223a Added a colorspace library and removed yuv2rgb conversion from the videosink.
Original commit message from CVS:
Added a colorspace library and removed yuv2rgb conversion from the
videosink.
The aviencoder should now more or less work.
2000-04-02 21:36:54 +00:00