Original commit message from CVS:
Implemented the hybrid scheduling system for sources and connections
outside the current Bin. Is a bit hackish in one place, but I'll work out
a way to make that cleaner soon. queue.c in tests now works nicely in all
cases. More to come later.
Original commit message from CVS:
Another big set of changes. Connections are now also pullfunc based.
gstqueue has been updated, I don't know of any other connections offhand.
There are still a few things that need doing, specifically the concept
of a source or connection with connections to multiple thread contexts is
not dealt with. This may force us to move the threadstate from the
element to the pad, maybe keeping the element's copy for simple cases.
Then the Bin would create a structure to pass to the cothreaded _wrappers
of any such elements, which would detail the pads that are to be dealt with
by this particular cothread context.
That will speed things up to, since we don't have to look through the list
of all pads for every Src or Connection element for every iteration, we can
simply step through the list provided by the plan. Special case might even
have a single pad pointer sitting there to trump the list, if there's only
one (the common case anyway).
Task 23098 is tracking these changes. The main task 22588 depends on that
subtask, as well as 22240, which is a consistency check on PAD_DISABLED.
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.
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.
Original commit message from CVS:
Fixed a severe timestamp bug in mpeg_play.
Create a new thread upon a multisrc element in autoplugging: the autoplug
example now correctly sets up 5 threads for an mpeg player.
Original commit message from CVS:
The cothreads were not initialized in its thread context resulting in
severe stack corruption. This was very hard to track down.
We should be able now to modify some plugins to a loop based setup so that
we can get rid of the mp3parse and mp1videoparse elements.
Modified the GList to a GSList in the queue.
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.
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!
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.
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.
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.
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.
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.
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)
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.
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.
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....