Commit graph

6980 commits

Author SHA1 Message Date
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
49899cf0d8 Added gstreamer.types to the .cvsignore
Original commit message from CVS:
Added gstreamer.types to the .cvsignore
2000-05-21 22:00:41 +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
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
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
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
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
3fbaa5c582 Makefile.am fixes
Original commit message from CVS:
Makefile.am fixes
2000-04-13 21:59:38 +00:00
Wim Taymans
38b288c61c A poor mans clock...
Original commit message from CVS:
A poor mans clock...
2000-04-09 21:38:17 +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
bf8c785fb0 Documentation updates. All standard library objects and standard elements are documented. Modified some of the elemen...
Original commit message from CVS:
Documentation updates. All standard library objects and standard
elements are documented. Modified some of the elements to more
accuratly report about their arguments so the documentation builds
more reasonable output.
Added aviencoder and jpegencoder elements (not working yet)
2000-03-27 19:53:43 +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
Erik Walthinsen
7cf6883096 spelling fixes to gst_library_load()
Original commit message from CVS:
spelling fixes to gst_library_load()
2000-03-21 19:54:30 +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
Wim Taymans
bdd86b10d1 A non functional avi parser.
Original commit message from CVS:
A non functional avi parser.
2000-03-13 22:17:00 +00:00
Wim Taymans
c2b8daff3a Various cleanups. Moved the overlay code to a specialized widget.
Original commit message from CVS:
Various cleanups. Moved the overlay code to a specialized widget.
One error I cannot seem to fix: switching desktops does not disable the
overlay.
2000-03-13 22:13:11 +00:00
Wim Taymans
660c01217f Reworked overlay, much better but still not perfect.
Original commit message from CVS:
Reworked overlay, much better but still not perfect.
2000-03-05 21:48:05 +00:00
Wim Taymans
58b4147fb2 Added overlay and DGA capability for the videosink. Not really good but functional.
Original commit message from CVS:
Added overlay and DGA capability for the videosink. Not really good but
functional.
2000-03-03 22:13:00 +00:00
Wim Taymans
ef63c32778 This is a rather large patch. Switched on -Wall compiler flag and fixed the warnings.
Original commit message from CVS:
This is a rather large patch. Switched on -Wall compiler flag and fixed
the warnings.
Made the Video for Linux more like it should be.
2000-02-27 23:18:38 +00:00
Wim Taymans
c144819530 Added a pull function in the gstpad. Modified the videosink to implement the pull. This function allows a source elem...
Original commit message from CVS:
Added a pull function in the gstpad. Modified the videosink to implement
the pull. This function allows a source element to request a buffer
from the destination. This is much more efficient because the
videosink can then pass a buffer with SHM to the element, which does
not require an aditional memcpy.
removed scaling from the videosink. I need something better.
2000-02-26 18:55:14 +00:00
Wim Taymans
54367bb65c test code for the Video for linux source
Original commit message from CVS:
test code for the Video for linux source
2000-02-25 23:19:44 +00:00
Wim Taymans
aa0b9ec506 Added a Video 4 linux source. Not generic at all and may not work on any other system but mine.
Original commit message from CVS:
Added a Video 4 linux source. Not generic at all and may not work
on any other system but mine.
2000-02-25 23:18:51 +00:00
Wim Taymans
a45625d478 Speedup in mpg123 parsing. speedup in mp1videoparse. rearanged the
Original commit message from CVS:
Speedup in mpg123 parsing. speedup in mp1videoparse. rearanged the
MPEG player got rid of some memcpy. bit handling changes.
MMX code for the IDCT and motion compensation in mpeg_play.
Almost as fast as the commercial mpeg player mtv, but with a much
better video quality :-)
2000-02-24 20:56:23 +00:00
Wim Taymans
2810e739f6 Added GdkPixbuf support and scaling (sloww...)
Original commit message from CVS:
Added GdkPixbuf support and scaling (sloww...)
2000-02-20 16:19:50 +00:00
Wim Taymans
a14849fea8 Fixed the lockup by not calling any gtk functions in the main thread.
Original commit message from CVS:
Fixed the lockup by not calling any gtk functions in the main thread.
This is not good.
2000-02-19 10:50:26 +00:00
Wim Taymans
95adba8f9d Set the default buffer size to 1 to avoid the strange lockups...
Original commit message from CVS:
Set the default buffer size to 1 to avoid the strange lockups...
2000-02-18 23:48:45 +00:00
Wim Taymans
48c04a1661 The first functional video sink... Removed all of the video stuff from the MPEG video decoder. Fixed a bug in smoothw...
Original commit message from CVS:
The first functional video sink... Removed all of the video stuff
from the MPEG video decoder. Fixed a bug in smoothwave.
The MPEG video decoder still does the YUV->RGB conversion.
2000-02-18 23:07:33 +00:00
Wim Taymans
13198c06fa MPEG1 cleanup. Added first (non functional) video sink.
Original commit message from CVS:
MPEG1 cleanup. Added first (non functional) video sink.
2000-02-17 22:50:28 +00:00
Wim Taymans
4660e95926 Fixed memory leak in queue.
Original commit message from CVS:
Fixed memory leak in queue.
2000-02-16 23:27:45 +00:00
Wim Taymans
b797f15e3a Cleanup, fixed some bugs in the parsers, fixed memory leak (not all of them yet)
Original commit message from CVS:
Cleanup, fixed some bugs in the parsers, fixed memory leak (not all of them
yet)
2000-02-16 16:44:54 +00:00
Wim Taymans
38542a9c2d Fixed (hopfully) the last bug in MPEG1 video player. A state bug caused some I-frames to be skipped.
Original commit message from CVS:
Fixed (hopfully) the last bug in MPEG1 video player. A state bug caused
some I-frames to be skipped.
2000-02-15 20:14:01 +00:00
Erik Walthinsen
d4e99eeef6 updated .cvsignores
Original commit message from CVS:
updated .cvsignores
2000-02-15 00:32:00 +00:00
Wim Taymans
b099671ab7 Made queue default bigger. fixed parsing errors in mp3parse mpeg1parse mp1videoparse: more than 2 zeros and a 1 is al...
Original commit message from CVS:
Made queue default bigger.
fixed parsing errors in mp3parse mpeg1parse mp1videoparse: more than 2
zeros and a 1 is also a sync.
fixed MPEG1 video SKIP_PICTURE which caused a segfault. AlienSong now
plays as it should do. Skips are currently ignored and give some error
on the console, need to clean this up.
2000-02-13 15:20:49 +00:00
Wim Taymans
f3f3a99f1e Fixed the queue length (fixed length 5 for now). fixed mpeg1 video rate control.
Original commit message from CVS:
Fixed the queue length (fixed length 5 for now).
fixed mpeg1 video rate control.
AlienSong segfaults sometimes. My other movies don't....
2000-02-13 13:43:32 +00:00
Erik Walthinsen
d224516279 Rearranged and updated mp1parse. Indentation is sane again (what editor and it now uses threads. Playback is clean ...
Original commit message from CVS:
Rearranged and updated mp1parse.  Indentation is sane again (what editor
are you using, Wim?), and it now uses threads.  Playback is clean (at
least, audio and video are running smoothly.  Video is still a little
choppy on my test stream (first 1MB from disk two of Mulan VCD), and it's
still wildly out of sync, but it's looking VERY COOL.
2000-02-12 23:09:57 +00:00
Erik Walthinsen
1f05e5a957 Changed the way state is dealt with when a child is added to the bin. The note states that the COMPLETE state should...
Original commit message from CVS:
Changed the way state is dealt with when a child is added to the bin.  The
note states that the COMPLETE state should probably reflect nothing more
than whether or not there is a child in the bin, not whether or not all
children are COMPLETE.  I need to write out a few scenarios for complex
pipeline manipulations to figure out how all the states should interact.
The idea is to maintain the ability to dynamically recofigure the
pipeline.
2000-02-12 23:08:06 +00:00
Wim Taymans
d6d5df1f9d The first functional video MPEG1 decoder. The decoder still opens a window to show the video. This is not optimised a...
Original commit message from CVS:
The first functional video MPEG1 decoder. The decoder still opens a window
to show the video. This is not optimised at all. Some glitches and
crashes due to bugs in mp1videoparse.c. I need to queue incomplete
slices in mp1videoparse before sending them to the decoder.
use test/mp1parse on your favorite video to test. No audio/video sync,
no QoS at all.
2000-02-12 12:20:32 +00:00
Wim Taymans
12f3571c50 Optimisations to mp3decode and mp3parse (subbuffers) mp1videoparse now correctly pushes buffers in complete chuncks.
Original commit message from CVS:
Optimisations to mp3decode and mp3parse (subbuffers)
mp1videoparse now correctly pushes buffers in complete chuncks.
2000-02-10 17:02:34 +00:00
Wim Taymans
b2e0448541 Added MPEG1 video parser.
Original commit message from CVS:
Added MPEG1 video parser.
2000-02-08 22:36:20 +00:00