Commit graph

586 commits

Author SHA1 Message Date
Erik Walthinsen
4a583683e5 Merged from INCSCHED on 200505251!!!
Original commit message from CVS:
Merged from INCSCHED on 200505251!!!
2001-05-25 21:00:07 +00:00
Wim Taymans
54271eca8e Removed a debug info line.
Original commit message from CVS:
Removed a debug info line.
2001-05-25 20:42:48 +00:00
David I. Lehn
a164187503 - basic arch check for HAVE_RDTSC
Original commit message from CVS:
- basic arch check for HAVE_RDTSC
- use common gst_trace_read_tsc() for RDTSC call
- add untested function to do ascii dump of trace data
2001-05-16 05:04:44 +00:00
Wim Taymans
57a5017c8b Fixed a few plugins so that mpeg1 encoding sorta works.
Original commit message from CVS:
Fixed a few plugins so that mpeg1 encoding sorta works.
Added an mpeg1 encoder example, it uses the autoplugger to convert
the stream to audio/video, which is then fed to the encoders.
2001-04-21 17:45:56 +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
2d20073eb3 A rather large update:
Original commit message from CVS:
A rather large update:
- a new videosink using plain X windows (xvideosink). It uses capsnego to
set up it's formats.
- gstplay uses the new xvideosink and a gtk_socket. The initial window
size is set to 0x0 so you need to resize it before you see something.
- got rid of the video metadata include file in favour of properties and
caps negotiation
- adjusted most plugins to not use the metadata.
2001-04-02 14:21:08 +00:00
Wim Taymans
ebba06ccd2 I'm too lazy to comment this
Original commit message from CVS:
Added the FLX decoder of Sepp Wijnands <mrrazz@garbage-coderz.net>
2001-03-21 23:59:09 +00:00
Wim Taymans
db74410739 Some more conversion functions.. We should really use Hermes soon..
Original commit message from CVS:
Some more conversion functions.. We should really use Hermes soon..
2001-03-11 23:14:33 +00:00
Wim Taymans
1e20129686 Added an rgb24 to rgb32 converter (untested)
Original commit message from CVS:
Added an rgb24 to rgb32 converter (untested)
2001-03-11 21:12:28 +00:00
Erik Walthinsen
37004188a8 commented out some printfs that went to stdout
Original commit message from CVS:
commented out some printfs that went to stdout
2001-02-25 03:36:36 +00:00
Erik Walthinsen
44be31b4f0 added Jens Thiele's bgr565 to rgb32 converter
Original commit message from CVS:
added Jens Thiele's bgr565 to rgb32 converter
2001-02-24 23:08:42 +00:00
Wim Taymans
60eeda80de Remove some unneeded files
Original commit message from CVS:
Remove some unneeded files
Added a fix for broken libglade-config in configure.in
2001-02-24 20:06:52 +00:00
Wim Taymans
1c6925c316 Make dist now works
Original commit message from CVS:
Make dist now works
2001-02-24 19:28:59 +00:00
Wim Taymans
a114c20d48 Moved some win32 files around small fixes to wincodec
Original commit message from CVS:
Moved some win32 files around
small fixes to wincodec
2001-02-24 17:49:57 +00:00
Wim Taymans
78514b44f4 Refreshed the winloader with the latest xmmp code. win32 codecs work again. It was a metter of turning of optimisations.
Original commit message from CVS:
Refreshed the winloader with the latest xmmp code.
win32 codecs work again. It was a metter of turning of optimisations.
2001-02-24 17:39:27 +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
David I. Lehn
608eaa3d42 Use glib macros for byte order conversion.
Original commit message from CVS:
Use glib macros for byte order conversion.
2001-02-21 20:58:09 +00:00
Wim Taymans
a9f3deea80 The BPB has been put over my head... this time it's right I think
Original commit message from CVS:
The BPB has been put over my head... this time it's right I think
2001-02-19 00:07:14 +00:00
Wim Taymans
e312a0ed46 Also build the videoscaler on non-I386 because we now have have a plain
Original commit message from CVS:
Also build the videoscaler on non-I386 because we now have have a plain
C version too.
2001-02-18 23:58:27 +00:00
Wim Taymans
70dfc6bb1d Converted the scaler to all asm
Original commit message from CVS:
Converted the scaler to all asm
2001-01-26 22:10:12 +00:00
Wim Taymans
de37358730 Added plain C scaler
Original commit message from CVS:
Added plain C scaler
Fixed a bug for 32 bits displays
2001-01-26 21:19:49 +00:00
Wim Taymans
59211a49ff Updated the docs with the new _request methods
Original commit message from CVS:
Updated the docs with the new _request methods
2001-01-23 20:03:07 +00:00
Wim Taymans
a3aad0c1a2 Fixed a yuv to bgr32 bug, red and blue were swapped. Thanks to
Original commit message from CVS:
Fixed a yuv to bgr32 bug, red and blue were swapped. Thanks to
Trigon (Bert Boer <bert@mermaid.geenpunt.nl>).
2001-01-22 19:21:24 +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
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
8ea591ef29 Added config.h as an include to make sure BE/LE stuff works
Original commit message from CVS:
Added config.h as an include to make sure BE/LE stuff works
2001-01-12 23:37:14 +00:00
Wim Taymans
06044e1c17 Made sure the mmx does not get compiled on non x86 CPUs
Original commit message from CVS:
Made sure the mmx does not get compiled on non x86 CPUs
2001-01-12 19:42:52 +00:00
Wim Taymans
12e14584fe Added --with-win32-libdir to configure
Original commit message from CVS:
Added --with-win32-libdir to configure
2001-01-09 21:19:22 +00:00
Erik Walthinsen
5064c6a5b4 set up to use config option for win32 dll dir
Original commit message from CVS:
set up to use config option for win32 dll dir
2001-01-09 21:06:49 +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
Erik Walthinsen
8446f92790 More build changes
Original commit message from CVS:
More build changes
2001-01-01 08:43:22 +00:00
Erik Walthinsen
b2a9bc3e6b Updated libraries to use new GST_DEBUG instead of DEBUG.
Original commit message from CVS:
Updated libraries to use new GST_DEBUG instead of DEBUG.
2001-01-01 03:16:19 +00:00
Richard Boulton
b0278edf75 Various fixes to ensure that appropriate files are included in make dist.
Original commit message from CVS:
Various fixes to ensure that appropriate files are included in make dist.
Make dist now produces a nearly functioning distribution.
2000-12-31 17:32:46 +00:00
Wim Taymans
9321d4d926 Disabled MMX optimized versions until they get fixed
Original commit message from CVS:
Disabled MMX optimized versions until they get fixed
2000-12-30 19:37:48 +00:00
Richard Boulton
3d4107e67b Fix a couple of MMX issues.
Original commit message from CVS:
Fix a couple of MMX issues.
2000-12-29 21:56:20 +00:00
Richard Boulton
448600ebe4 Include libgst.la when linking gbtest so it compiles.
Original commit message from CVS:
Include libgst.la when linking gbtest so it compiles.
2000-12-29 21:50:18 +00:00
Wim Taymans
415ced1c0b Added seeking to the avi decoder by implementing pull_region.
Original commit message from CVS:
Added seeking to the avi decoder by implementing pull_region.
Fixes to the asyncdisksrc.
Added thread specific data to the cothreads.
2000-11-06 00:15:51 +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
31cae4b447 Slightly faster yuv to rgb conversion.
Original commit message from CVS:
Slightly faster yuv to rgb conversion.
2000-10-26 19:07:27 +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
Richard Boulton
41ad7a209b IDCT works, and ieeetest not complains nicely if attempt to run a test with an unsupported DCT type.
Original commit message from CVS:
IDCT works, and ieeetest not complains nicely if attempt to run a test
with an unsupported DCT type.
2000-09-21 01:42:19 +00:00
Richard Boulton
3bcccbf82e Make libs/idct only build mmx support if available - hopefully makes it compile on PPC.
Original commit message from CVS:
Make libs/idct only build mmx support if available - hopefully makes it
compile on PPC.
2000-09-21 01:34:34 +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
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
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
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
ac036272b9 Moved generic function implementations into gstgetbits_generic.c, and tidy up a bit.
Original commit message from CVS:
Moved generic function implementations into gstgetbits_generic.c, and
tidy up a bit.
2000-09-16 22:03:24 +00:00
Wim Taymans
ff99ee6132 Added a quick hack to allow loop based elements to finish intead of looping till infinity.
Original commit message from CVS:
Added a quick hack to allow loop based elements to finish intead of
looping till infinity.
Added compile time i386 or plain C getbits implementation selection.
The vorbis decoder now is our first loop based element!
2000-09-16 10:58:23 +00:00
Richard Boulton
11e8ef9074 More work towards a powerPC port, and towards generic portability.
Original commit message from CVS:
More work towards a powerPC port, and towards generic portability.
2000-09-16 00:59:12 +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
8d2a4dfbec Added CPU detection.
Original commit message from CVS:
Added CPU detection.
Added SSE optimisation to mpeg_play
Modified the mpeg2 decoder and gstidct to use cpu detection.
Cleanups in the mpeg1 and mpeg2 decoders.
2000-09-12 18:13:48 +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
Wim Taymans
bd5759f1f1 Remove rdts until a better fix for the bad asm is found...
Original commit message from CVS:
Remove rdts until a better fix for the bad asm is found...
2000-08-18 22:17:34 +00:00
Wim Taymans
6661696de0 Various fixes for the build/install problems update to the docs/manual. Added a simple helloworld example.
Original commit message from CVS:
Various fixes for the build/install problems
update to the docs/manual. Added a simple helloworld example.
2000-08-18 20:35:48 +00:00
Wim Taymans
d21bcc5e44 ignore the test program
Original commit message from CVS:
ignore the test program
2000-08-14 15:18:37 +00:00
Wim Taymans
f0dca903ae ..
Original commit message from CVS:
..
2000-08-14 10:12:49 +00:00
Wim Taymans
001bbb7002 Added general IDCT library. Added IEEE testbed.
Original commit message from CVS:
Added general IDCT library. Added IEEE testbed.
Update to the windows codec loader.
fixes in the riff parser/encoder.
cleanup in the getbits/putbits API.
2000-08-14 10:11:04 +00:00
Wim Taymans
82acefa7b0 Added point sampling interpolation.
Original commit message from CVS:
Added point sampling interpolation.
2000-08-14 10:06:54 +00:00
Wim Taymans
08b4e78a53 Merge of pending changes, have to do this one by one...
Original commit message from CVS:
Merge of pending changes, have to do this one by one...
2000-08-14 10:02:22 +00:00
Wim Taymans
5effd6fe5d Fixed a bug in the riff parser with the allignment of the chunks. This should solve the errors with avi playback.
Original commit message from CVS:
Fixed a bug in the riff parser with the allignment of the chunks. This
should solve the errors with avi playback.
2000-07-15 13:26:28 +00:00
Wim Taymans
8e2bcd4190 I'm too lazy to comment this
Original commit message from CVS:
*** empty log message ***
2000-07-15 12:07:50 +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
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
cb3af06726 Added more accurate mpeg system stream detection (MPEG1 and MPEG2)
Original commit message from CVS:
Added more accurate mpeg system stream detection (MPEG1 and MPEG2)
Added mpeg2 playback for gstplay
2000-06-25 22:21:44 +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
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
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
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
212677286e ...
Original commit message from CVS:
...
2000-05-12 17:41:16 +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
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
bf356e3bc5 Fixed a bug in the inlined getbits.
Original commit message from CVS:
Fixed a bug in the inlined getbits.
2000-04-16 23:33:13 +00:00
Wim Taymans
9c022a9c29 I'm too lazy to comment this
Original commit message from CVS:
*** empty log message ***
2000-04-16 18:51:22 +00:00
Wim Taymans
aa1da33e46 I the generc getbits implementation
Original commit message from CVS:
I the generc getbits implementation
2000-04-16 18:50:26 +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
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
82cdfe8ba3 The new riff parser and encoder
Original commit message from CVS:
The new riff parser and encoder
2000-04-02 21:38:36 +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
Wim Taymans
53b9cea328 Added jpeg decoder. the avi decoder now configures the jpeg codec if an MJPG encoded avi is found. Fixed riff parsing...
Original commit message from CVS:
Added jpeg decoder. the avi decoder now configures the jpeg codec if
an MJPG encoded avi is found. Fixed riff parsing. readded rgb_draw
functions to the videosink. jpeglib is used to decode the jpeg image.
2000-03-22 21:18:15 +00:00
Wim Taymans
1f4d20f689 Implemented riff parsing as a library. The avi parser can play simple PCM encoded audio.
Original commit message from CVS:
Implemented riff parsing as a library. The avi parser can play
simple PCM encoded audio.
some minor cleanups.
2000-03-20 20:25:03 +00:00
Wim Taymans
39d3ec0a0d Added the riff code into a seperate library in /libs dir. The plugin loader also checks the /libs path.
Original commit message from CVS:
Added the riff code into a seperate library in /libs dir. The plugin
loader also checks the /libs path.
The avi parser now uses the riff library.
WAV is broken.
2000-03-19 00:59:05 +00:00