Commit graph

73 commits

Author SHA1 Message Date
Wim Taymans
dd37e99746 Fixes for gsteditor/gstplay install/build fixed typo in random/eos added num_buffers property to fakesrc
Original commit message from CVS:
Fixes for gsteditor/gstplay install/build
fixed typo in random/eos
added num_buffers property to fakesrc
2001-01-02 01:44:53 +00:00
Richard Boulton
c8e92c77d8 Added checking for all the tools used to make documentation.
Original commit message from CVS:
Added checking for all the tools used to make documentation.
If documentation cannot be generated, whatever is available will still be
installed.
videosink/imagetest is now a check_PROGRAM
2001-01-02 01:33:01 +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
Erik Walthinsen
cd744791c5 More build fixes
Original commit message from CVS:
More build fixes
2001-01-01 21:21:25 +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
Erik Walthinsen
52d8f52148 updated version number from 0.9.2 (huh???) to 0.1.0
Original commit message from CVS:
updated version number from 0.9.2 (huh???) to 0.1.0
2001-01-01 07:30:10 +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
Erik Walthinsen
ba802f4159 added directories to configure.in
Original commit message from CVS:
added directories to configure.in
2001-01-01 03:20:28 +00:00
Wim Taymans
2a1f2f4424 Added --enable-info and --disable-info-system nothing specified = INFO enabled, mask to 0x00000001
Original commit message from CVS:
Added --enable-info and --disable-info-system
nothing specified = INFO enabled, mask to 0x00000001
--enable-info =     INFO enabled, mask to 0xffffffff
--disable-info =    INFO compiled into a nop and thus disabled
2001-01-01 01:56:16 +00:00
Wim Taymans
e8e04586aa Added GST_INFO_ENABLED flags
Original commit message from CVS:
Added GST_INFO_ENABLED flags
Added --enable-debug-info
A little fix for the avidecoder
2001-01-01 00:44:28 +00:00
Richard Boulton
7daccedd65 Add files in include to distributions.
Original commit message from CVS:
Add files in include to distributions.
2000-12-31 16:07:04 +00:00
Richard Boulton
a52218416c Add docs/fwg/Makefile to things to be built.
Original commit message from CVS:
Add docs/fwg/Makefile to things to be built.
2000-12-31 15:18:08 +00:00
Richard Boulton
2d22da4e0b Added configure test for liblame.
Original commit message from CVS:
Added configure test for liblame.
2000-12-30 01:06:19 +00:00
Richard Boulton
47c5fad820 Add configure tests for cdparanoia
Original commit message from CVS:
Add configure tests for cdparanoia
2000-12-30 00:46:17 +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
29d567ba23 Changes made to the DEBUG system. New header file gstdebug.h holds the stuff to keep it out of gst.h's hair. DEBUG ...
Original commit message from CVS:
Changes made to the DEBUG system.  New header file gstdebug.h holds the
stuff to keep it out of gst.h's hair.  DEBUG prints out the process id,
cothread id, source filename and line number.  Two new macros DEBUG_ENTER
and DEBUG_LEAVE are used to show the entry and exit of a given function.
This eventually might be used to construct call trace graphs, even taking
cothreads into account.  This would be quite useful in visualizing the
scheduling mechanism.

Minor changes to various debug messages.

Also sitting in gstdebug.h is a prototypical DEBUG_ENTER that's capable of
performing DEBUG_LEAVE automatically.  It does this by utilizing a
little-known GCC extension that allows one to call a function with the
same parameters as the current function.  The macro uses this to basically
call itself.  A boolean is used to ensure that when it calls itself it
actually runs the body of the function.  In the meantime it prints stuff
out before and after the real function, as well as constructing a
debugging string.  This can be used eventually to provide call-wide data
on the DEBUG lines, instead of having to replicate data on each call to
DEBUG.  More research is needed into how this would most cleanly be fit
into some other chunk of code, like GStreamer (I think of this DEBUG trick
as a separate project, sorta).

Unfortunately, the aforementioned DEBUG trick interacts quite poorly with
cothreads.  Almost any time it's used in a function that has anything
remotely to do with a cothread context (as in, it runs in one), a segfault
results from the __builtin_apply call, which is the heart of the whole
thing.  If someone who really knows assembly could analyze the resulting
code to see what's really going on, we might find a way to fix either the
macro or the cothreads (I'm thinking that there's something we missed in
constructing the cothreads themselves) so this works in all cases.

In the meantime, please insert both DEBUG_ENTER and DEBUG_LEAVE in your
functions.  Be sure to put DEBUG_ENTER after your variable declarations
and before any functional code, not to put the function name in any DEBUG
strings (it's already there, trust me), and put a DEBUG_LEAVE if you care
enough.

Changes are going to happen in the way DEBUGs and other printouts occur,
so stay tuned.
2000-12-04 09:35:08 +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
ef31aa64e8 Docs updates.
Original commit message from CVS:
Docs updates.
Added LICENSE info to headers/code where missing in gst directory
Added a bonobo wrapper for the media player (it shows up in gshell but
locks up when activating the component, anyone?)
Fixed some XML save/load problems with arguments.
2000-11-11 15:13:50 +00:00
Wim Taymans
c125059f97 Added the excellent mpeg2dec decoder. Not 100% optimized but allready very fast.
Original commit message from CVS:
Added the excellent mpeg2dec decoder. Not 100% optimized but allready
very fast.
More cleanup.
2000-11-04 18:54:07 +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
2521a319c3 MPEG2 types added for better autoplugging. MPEG2 works more or less. fix in autoplugging. avi now works.
Original commit message from CVS:
MPEG2 types added for better autoplugging. MPEG2 works more or less.
fix in autoplugging. avi now works.
2000-10-21 12:04:40 +00:00
Richard Boulton
f1d8e760fb Added building of the manual to the build system. Currently in a rudimentary state - will not gracefully give up if ...
Original commit message from CVS:
Added building of the manual to the build system.  Currently in a
rudimentary state - will not gracefully give up if tools not available,
will not uninstall / clean, and may not install / make dist properly.
Documentation does not have dependencies on images, so won't rebuild if
they're altered either.
2000-10-09 00:34:21 +00:00
Wim Taymans
695f761c2b Fixed a bug in the typeloading.
Original commit message from CVS:
Fixed a bug in the typeloading.
Fixes to various elements so that correct types are returned.
Fixed flag collision with GtkObject.
Elements can now suggest a thread. not sure if this is the right way to
handle automatic thread creation.
Autoplugging now works with multiple sinks and thread setup. No threads
are created for intermediate elements yet, so MPEG may still be choppy.
2000-10-08 22:17:11 +00:00
Wim Taymans
f7bace76aa Added check for vorbis.
Original commit message from CVS:
Added check for vorbis.
Really compile with Xv extension if the library is found.
Changed the disksrc so that is goes to the PAUSE state if eof.
2000-09-17 14:06:18 +00:00
Richard Boulton
5a7cbafdda More work porting to PPC. libs/winloader is disabled on PPC - I doubt this can be made to work.
Original commit message from CVS:
More work porting to PPC.
libs/winloader is disabled on PPC - I doubt this can be made to work.
libs/videoscale and libs/idct are also disabled - they should be fixable
though.

Sorted out most of the plugins - avi is disabled for now on PPC;
can be worked on later if there's any chance of getting it to work.

Also provide an automake conditional for compiling vorbis, based on a
configure test for the needed libraries: currently the test isn't
implemented and defaults to "no" so you'll have to fiddle it to compile
vorbis.  I shall get hold of vorbis and implement an appropriate test some
other time (if noone else beats me to it).
2000-09-16 23:11:05 +00:00
Richard Boulton
968b5acaa1 Fix on x86 architectures - was just checking for 386, D'oh.
Original commit message from CVS:
Fix on x86 architectures - was just checking for 386, D'oh.
Fix autogen to run autoheader _before_ autoconf, since it generates a
required file (config.h.in, which I just removed from CVS since its an
autogenerated one).  Also fix messed up variables in gst/Makefile.am
2000-09-15 23:04:31 +00:00
Richard Boulton
238bbc23c8 Begun to add support for non i386 architectures, with the help of Chris
Original commit message from CVS:
Begun to add support for non i386 architectures, with the help of Chris
Emerson.  Added bits to configure to figure out architecture, and added
some alternatives for PPC.  Should cause no problems on i386, but I'll
check after this commit, but doesn't yet work on PPC by a fair way...
2000-09-15 22:44:10 +00:00
Wim Taymans
8051d54c36 Due to popular demand :-), I added a vorbis decoder.
Original commit message from CVS:
Due to popular demand :-), I added a vorbis decoder.
The encoder is not yet functional.
Small cosmetic changes to gstcpu.c

Beware:
You *need* to install libvorbis.a from the main vorbis CVS.
you *have* to change the line in libtool to
deplibs_check_method="pass_all"
because else the plugin shared library refuses to link against the
static libvorbis.a library. This is a hack. I have no intention in
including libvorbis into the gstreamer CVS tree and making it
libtool compatible.
2000-09-14 20:31:03 +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
Richard Boulton
9ae673e291 Test for a working libglade-gnome, and compile gstplay only if there is one.
Original commit message from CVS:
Test for a working libglade-gnome, and compile gstplay only if there is
one.
2000-08-18 23:31:30 +00:00
Richard Boulton
daf7640e76 If nasm isn't present, mpeg2enc plugin just ignores the .s files,
Original commit message from CVS:
If nasm isn't present, mpeg2enc plugin just ignores the .s files,
C equivalents will be used.
2000-08-18 22:07:34 +00:00
Richard Boulton
d840ef3e7d Test for nasm - define HAVE_NASM in config.h if we have it, and AC_SUBST
Original commit message from CVS:
Test for nasm - define HAVE_NASM in config.h if we have it, and AC_SUBST
NASM_PATH for use when using nasm.
2000-08-18 21:30:30 +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
Wim Taymans
b40f374449 The include files for the windows codec loader. top level configure file.
Original commit message from CVS:
The include files for the windows codec loader.
top level configure file.
2000-08-14 10:59:32 +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
8df1c8a278 Added DivX ;-) support by using the wine .dll loader. you must unzip binaries.zip from http://divx.euro.ru/binaries.z...
Original commit message from CVS:
Added DivX ;-) support by using the wine .dll loader. you must unzip
binaries.zip from http://divx.euro.ru/binaries.zip into the win32
directory **of the source tree**.
Extended and bugfixed thr riff parser to support DivX ;-)
Extended the avi parser to support DivX ;-) and MPEG Layer 3.
Fixed a bug in mpg123. Sound still is seriously wrong with layer 3.
Fixed MPEG2 playback in gstplay.
Time indication in gstplay is temporarly broken.
2000-07-15 12:06:18 +00:00
Wim Taymans
9920b88c3f This is the audio/video sync release.
Original commit message from CVS:
This is the audio/video sync release.
Changed the mpegvideoparser to parse complete pictures. Added the PTS
timestamps to the pictures.
Added PTS timestamps to the MPEG audio frames.
Made the clock a littlebit better.
Gstplay now uses two more threads one for video, one for audio playback.
Added the first QoS callbacks for the pads.
hopefully fix an mmx compilation problem.
2000-07-12 22:52:42 +00:00
Wim Taymans
37576c7dc9 Added HW scaling and YUV conversion for XFree 4.0
Original commit message from CVS:
Added HW scaling and YUV conversion for XFree 4.0
Need to cleanup the fallback mechanism in case no suitable XvImage is
found.
2000-07-05 21:32:38 +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
3f0b3470a3 Unified putbits.
Original commit message from CVS:
Unified putbits.
2000-06-16 22:58:38 +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
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
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
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
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
Richard Boulton
1c6911d307 Make GDK pixbuf optional, by compiling videosink only if it is present.
Original commit message from CVS:
Make GDK pixbuf optional, by compiling videosink only if it is present.
Make documentation generated successfully even if libghttp isn't present
(by skipping the ghttpsrc stuff).
2000-05-12 07:15:03 +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