Commit graph

269 commits

Author SHA1 Message Date
Julien Moutte
7b89c1a8bf ext/ffmpeg/gstffmpegcolorspace.c: Implementing gst_pad_alloc_buffer to use optimized buffer allocation.
Original commit message from CVS:
* ext/ffmpeg/gstffmpegcolorspace.c: (gst_ffmpegcsp_chain):
Implementing gst_pad_alloc_buffer to use optimized buffer allocation.
* gst-libs/gst/xoverlay/xoverlay.c:
(gst_x_overlay_got_desired_size): Updating doc for the xid being 0.
* gst/videoscale/gstvideoscale.c: (gst_videoscale_chain):
Implementing gst_pad_alloc_buffer to use optimized buffer allocation.
* gst/videotestsrc/gstvideotestsrc.c: (gst_videotestsrc_get):
Implementing gst_pad_alloc_buffer to use optimized buffer allocation.
* sys/ximage/ximagesink.c: (gst_ximagesink_chain),
(gst_ximagesink_buffer_free), (gst_ximagesink_buffer_alloc),
(gst_ximagesink_set_xwindow_id), (gst_ximagesink_init): Implementing
the bufferalloc_function to replace bufferpools, fixing the XOverlay
interface implementation to handle xid being 0 and fix some bugs
triggered by Benjamin's testcase.
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_chain),
(gst_xvimagesink_buffer_free), (gst_xvimagesink_buffer_alloc),
(gst_xvimagesink_set_xwindow_id), (gst_xvimagesink_init): Implementing
the bufferalloc_function to replace bufferpools, fixing the XOverlay
interface implementation to handle xid being 0 and fix some bugs
triggered by Benjamin's testcase.
2004-01-09 18:05:57 +00:00
Ronald S. Bultje
ba219974c7 ext/divx/gstdivxenc.c: Use explicit caps - fix capsnego.
Original commit message from CVS:
2004-01-09  Ronald Bultje  <rbultje@ronald.bitfreak.net>

* ext/divx/gstdivxenc.c: (gst_divxenc_init):
Use explicit caps - fix capsnego.
* ext/xvid/gstxviddec.c:
* ext/xvid/gstxvidenc.c:
Remove macro-inside-macro which caused compile errors.
* gst-libs/gst/riff/riff-read.c: (gst_riff_read_header):
Error out if it's not a RIFF file. Else we error out without
gst_element_error() which is not good...
2004-01-09 09:48:43 +00:00
David Schleef
899b633288 ext/ffmpeg/gstffmpegenc.c: Fix pad_link function to handle formats that ffmpeg returns as multiple caps structures.
Original commit message from CVS:
* ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_connect):
Fix pad_link function to handle formats that ffmpeg returns
as multiple caps structures.
* gst/videofilter/gstvideofilter.c: (gst_videofilter_chain):
Only complain if source buffer is _smaller_ than expected.
* gst/videoscale/gstvideoscale.c: (gst_videoscale_init),
(gst_videoscale_handle_src_event): Resize navigation events
when passing them upstream.
* gst/videotestsrc/gstvideotestsrc.c:
* gst/videotestsrc/gstvideotestsrc.h:
* gst/videotestsrc/videotestsrc.c:
* gst/videotestsrc/videotestsrc.h:
Rewrite many of the buffer painting functions to handle odd
sizes (for many formats, size%4!=0 or size%8!=0).  Most have
been verified to work with my video card.
* testsuite/gst-lint:  Add check for elements calling
gst_pad_get_caps() instead of gst_pad_get_allowed_caps().
2004-01-09 01:53:31 +00:00
Julien Moutte
2a35e3393f examples/gstplay/Makefile.am: Adding the interface library.
Original commit message from CVS:
* examples/gstplay/Makefile.am: Adding the interface library.
* gst-libs/gst/play/Makefile.am: Adding the interface library.
* gst-libs/gst/play/gstplay.c: (gst_play_set_video_sink): Connecting tothe XOverlay size signal instead of GstVideoSink.
* gst-libs/gst/play/gstplay.h: Including the XOverlay interface to check        GST_IS_X_OVERLAY before signal connect.
* gst-libs/gst/video/gstvideosink.c: (gst_videosink_class_init):
Removing the have_video_size signal.
* gst-libs/gst/video/gstvideosink.h: Removing the have_video_size signal        and associated public method.
* sys/ximage/ximagesink.c: (gst_ximagesink_handle_xevents),
(gst_ximagesink_sinkconnect): Using XOverlay public method to fire size
signal.
* sys/xvideo/xvideosink.c: (gst_xvideosink_sinkconnect),
(gst_xvideosink_xwindow_new): Using XOverlay public method to fire size
signal.
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_sinkconnect):
Using XOverlay public method to fire size signal.
2004-01-07 21:49:25 +00:00
Jan Schmidt
b22d0599b3 ext/dv/gstdvdec.c: Fix caps negotiation.
Original commit message from CVS:
* ext/dv/gstdvdec.c: (gst_dvdec_loop):
Fix caps negotiation.

* ext/dvdnav/dvdnavsrc.c: (dvdnavsrc_class_init),
(dvdnavsrc_update_buttoninfo), (dvdnavsrc_get),
(dvdnavsrc_get_event_mask), (dvdnav_handle_navigation_event),
(dvdnavsrc_event):
* ext/mpeg2dec/gstmpeg2dec.c:
* gst-libs/gst/navigation/navigation.c:
(gst_navigation_send_key_event), (gst_navigation_send_mouse_event):
* gst-libs/gst/navigation/navigation.h:
* gst/mpegstream/gstmpegdemux.c: (gst_mpeg_demux_handle_src_event):
* sys/ximage/ximagesink.c: (gst_ximagesink_handle_xevents):
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_handle_xevents):
Super-simple first version of mouse and keyboard events. Clicking
on a DVD menu now works, although it may not take you where you
expected.

* gst/sine/gstsinesrc.c: (gst_sinesrc_src_fixate):
* gst/videotestsrc/gstvideotestsrc.c:
(gst_videotestsrc_src_fixate):
These fixate functions were broken - they never actually
fixated :)
2004-01-06 16:42:10 +00:00
Ronald S. Bultje
491381bf8c ext/shout/gstshout.c: fix for new caps system.
Original commit message from CVS:
2004-01-06  Ronald Bultje  <rbultje@ronald.bitfreak.net>

* ext/shout/gstshout.c: (gst_icecastsend_base_init),
(gst_icecastsend_init):
fix for new caps system.
* gst-libs/gst/mixer/mixertrack.h:
* sys/oss/gstossmixer.c: (gst_ossmixer_build_list):
Add 'master track' flag (for tools like ACME that only want to
change the main volume).
2004-01-06 15:59:02 +00:00
Benjamin Otte
5e15a670e8 gst-libs/gst/xoverlay/xoverlay.*: Add optional "desired size" signal and querying.
Original commit message from CVS:
2004-01-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>

* gst-libs/gst/xoverlay/xoverlay.c: (gst_x_overlay_base_init),
(gst_x_overlay_got_xwindow_id), (gst_x_overlay_get_desired_size),
(gst_x_overlay_got_desired_size):
* gst-libs/gst/xoverlay/xoverlay.h:
Add optional "desired size" signal and querying.
2004-01-04 18:02:30 +00:00
David Schleef
84dc963101 Negotiation fixes
Original commit message from CVS:
Negotiation fixes
2004-01-02 07:25:10 +00:00
Ronald S. Bultje
274b241a38 configure.ac: Fix configure check for mpeg2enc. We need 1.6.1.93 instead of 1.6.1.92, since the pkg-config file of 1....
Original commit message from CVS:
2004-01-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>

* configure.ac:
Fix configure check for mpeg2enc. We need 1.6.1.93 instead of
1.6.1.92, since the pkg-config file of 1.6.1.92 is borked and
it therefore uses the wrong include paths. Too bad... Note
that 1.6.1.93 is not release yet. ;).
Also add a check for mplex, which is now using the lib'ified
mplex from mjpegtools, too.
* ext/ffmpeg/gstffmpegcodecmap.c:
Add codec_tag for 3ivx/xvid. For xvid, this should fix playback
issues. I don't think ffmpeg handles 3ivx correctly, so this
probably won't work. But it won't hurt either.
* ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_connect),
(gst_ffmpegdec_chain):
* ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_connect),
(gst_ffmpegenc_chain_audio):
Fix memleak in audio encoding. Close codec if open fails, this
calls the cleanup routines so we can re-use the context.
* ext/mpeg2enc/gstmpeg2enc.cc:
Fix pad template names/types, fix memory issue with getcaps().
* ext/mpeg2enc/gstmpeg2encoder.cc:
* ext/mpeg2enc/gstmpeg2encoder.hh:
Fix compile issue with new caps system (const thingy).
* ext/mpeg2enc/gstmpeg2encpicturereader.cc:
* ext/mpeg2enc/gstmpeg2encpicturereader.hh:
We read a first frame right on initing, so that we have a caps
when we init the output. This caps is cached in padprivate and
read as first frame.
* ext/mplex/Makefile.am:
* ext/mplex/gstmplex.cc:
* ext/mplex/gstmplex.h:
* ext/mplex/gstmplex.hh:
* ext/mplex/gstmplexibitstream.cc:
* ext/mplex/gstmplexibitstream.hh:
* ext/mplex/gstmplexjob.cc:
* ext/mplex/gstmplexjob.hh:
* ext/mplex/gstmplexoutputstream.cc:
* ext/mplex/gstmplexoutputstream.hh:
We wrap mjpegtools mplex. So I rewrote the plugin. The old plugin
had issues, didn't do capsnego, supported only a subset of the
mplex features and required a mplex fork in our local CVS. Plus
that it worked agaist a very old mplex version. Rewriting was
faster than updating it.
* gst-libs/ext/Makefile.am:
* gst-libs/ext/mplex/INSTRUCT:
* gst-libs/ext/mplex/Makefile.am:
* gst-libs/ext/mplex/README:
* gst-libs/ext/mplex/TODO:
* gst-libs/ext/mplex/ac3strm_in.cc:
* gst-libs/ext/mplex/audiostrm.hh:
* gst-libs/ext/mplex/audiostrm_out.cc:
* gst-libs/ext/mplex/aunit.hh:
* gst-libs/ext/mplex/bits.cc:
* gst-libs/ext/mplex/bits.hh:
* gst-libs/ext/mplex/buffer.cc:
* gst-libs/ext/mplex/buffer.hh:
* gst-libs/ext/mplex/fastintfns.h:
* gst-libs/ext/mplex/format_codes.h:
* gst-libs/ext/mplex/inputstrm.cc:
* gst-libs/ext/mplex/inputstrm.hh:
* gst-libs/ext/mplex/lpcmstrm_in.cc:
* gst-libs/ext/mplex/mjpeg_logging.cc:
* gst-libs/ext/mplex/mjpeg_logging.h:
* gst-libs/ext/mplex/mjpeg_types.h:
* gst-libs/ext/mplex/mpastrm_in.cc:
* gst-libs/ext/mplex/mpegconsts.cc:
* gst-libs/ext/mplex/mpegconsts.h:
* gst-libs/ext/mplex/mplexconsts.hh:
* gst-libs/ext/mplex/multplex.cc:
* gst-libs/ext/mplex/outputstream.hh:
* gst-libs/ext/mplex/padstrm.cc:
* gst-libs/ext/mplex/padstrm.hh:
* gst-libs/ext/mplex/stillsstream.cc:
* gst-libs/ext/mplex/stillsstream.hh:
* gst-libs/ext/mplex/systems.cc:
* gst-libs/ext/mplex/systems.hh:
* gst-libs/ext/mplex/vector.cc:
* gst-libs/ext/mplex/vector.hh:
* gst-libs/ext/mplex/videostrm.hh:
* gst-libs/ext/mplex/videostrm_in.cc:
* gst-libs/ext/mplex/videostrm_out.cc:
* gst-libs/ext/mplex/yuv4mpeg.cc:
* gst-libs/ext/mplex/yuv4mpeg.h:
* gst-libs/ext/mplex/yuv4mpeg_intern.h:
* gst-libs/ext/mplex/yuv4mpeg_ratio.cc:
We don't fork mjpegtools' mplex in our CVS anymore.
* gst/avi/gstavidemux.c: (gst_avi_demux_src_getcaps),
(gst_avi_demux_add_stream):
* gst/avi/gstavidemux.h:
Add getcaps() function for proper caps nego. This makes some
parts of AVI playback/reading work.
* sys/ximage/ximagesink.c: (gst_ximagesink_sinkconnect):
Resize window on new capsnego. This is probably wrong, but
I'm still committing it because with current capsnego, the
first successfull capsnego is auto-fixated, therefore rounded
down to the lowest values in the caps. this results in a 16x16
XWindow that is not reized when real capsnego finishes.
Dave, I see more cases of this, do you know a proper solution?
* tools/gst-launch-ext.in:
Fix MPEG-4 AAC (Apple iPod/iTunes) file commandline.
2004-01-01 22:45:57 +00:00
David Schleef
e095323df1 Negotiation fixes.
Original commit message from CVS:
Negotiation fixes.
2003-12-31 08:02:04 +00:00
Jeremy Simon
e728ac80d1 Fix warnings
Original commit message from CVS:
Fix warnings
2003-12-27 19:37:17 +00:00
David Schleef
3b60021408 Merge CAPS branch
Original commit message from CVS:
Merge CAPS branch
2003-12-22 01:47:09 +00:00
Julien Moutte
6bb536ed65 examples/gstplay/player.c: using g_print instead of g_message.
Original commit message from CVS:
* examples/gstplay/player.c: (got_time_tick), (got_stream_length),
(got_video_size), (main): using g_print instead of g_message.
* gst-libs/gst/play/gstplay.c: (gst_play_pipeline_setup): Fixing EOS
signal which was not emitted because of "switch" element added to the
bin but not connected. (Removing from the bin temporarily)
2003-12-21 22:11:46 +00:00
Julien Moutte
99b2583820 configure.ac: X_DISPLAY_MISSING is set to 1 if AC_PATH_XTRA fails to find X development files. I don't understand the...
Original commit message from CVS:
* configure.ac: X_DISPLAY_MISSING is set to 1 if AC_PATH_XTRA fails to
find X development files. I don't understand the previous tests and
they fail on my debian/ppc unstable. This one works.
* examples/gstplay/player.c: (main): Set the pipeline to READY before
exiting.
* gst-libs/gst/play/gstplay.c: (gst_play_get_length_callback),
(gst_play_set_video_sink), (gst_play_set_audio_sink),
(gst_play_set_visualization): Add some safety checks in set_ methods
and state_change. This was throwing some ugly CRITICAL messages when
pipeline was getting disposed and casts were failing.
2003-12-21 19:48:40 +00:00
Ronald S. Bultje
ceb37e80dd Sorry Dave... Add mpegversion=1 to mp3 caps everywhere so that the autoplugger uses mad and not faad for mp3 decoding...
Original commit message from CVS:
Sorry Dave... Add mpegversion=1 to mp3 caps everywhere so that the autoplugger uses mad and not faad for mp3 decoding. This should fix mp3 playback.
2003-12-18 09:31:50 +00:00
Julien Moutte
b43a45315a Harmonize state of sinks with the pipeline state.
Original commit message from CVS:
Harmonize state of sinks with the pipeline state.
2003-12-16 22:52:01 +00:00
Ronald S. Bultje
2ffbe6345d MP3 is mpegversion=1, else it clashes with MPEG/AAC
Original commit message from CVS:
MP3 is mpegversion=1, else it clashes with MPEG/AAC
2003-12-15 08:39:52 +00:00
Thomas Vander Stichele
b1ed7faa30 dist fix
Original commit message from CVS:
dist fix
2003-12-14 21:27:49 +00:00
Thomas Vander Stichele
3e1b87c5ad distcheck fixes
Original commit message from CVS:
distcheck fixes
2003-12-14 19:50:00 +00:00
Julien Moutte
f1bd7a95af Synchronizing my changes.
Original commit message from CVS:
Synchronizing my changes.
2003-12-14 17:00:18 +00:00
Benjamin Otte
bf9d39d5f3 distcheck fixes: include built sources in CLEANFILES
Original commit message from CVS:
distcheck fixes: include built sources in CLEANFILES
2003-12-13 21:46:47 +00:00
Julien Moutte
6f1b63ea72 Using private structure for members so that we have more chance that the header is frozen. :)
Original commit message from CVS:
Using private structure for members so that we have more chance that the header is frozen. :)
2003-12-11 22:29:14 +00:00
David Schleef
03f79e151b Change GST_*_PADDING to _gst_private[GST_PADDING]
Original commit message from CVS:
Change GST_*_PADDING to _gst_private[GST_PADDING]
2003-12-09 10:02:08 +00:00
Benjamin Otte
046fa7602f make videofilter handle RGB correctly
Original commit message from CVS:
make videofilter handle RGB correctly
2003-12-09 01:17:28 +00:00
Julien Moutte
6bbaa16dcc Adding visualization.
Original commit message from CVS:
Adding visualization.
Removing interfaces.
Preparing videoswitch integration.
2003-12-08 16:01:49 +00:00
Ronald S. Bultje
da23b98e4c Whoops, this one is needed too
Original commit message from CVS:
Whoops, this one is needed too
2003-12-07 22:50:30 +00:00
Ronald S. Bultje
144a5cce24 Hm, darn, forgot to commit one dir
Original commit message from CVS:
Hm, darn, forgot to commit one dir
2003-12-07 22:49:04 +00:00
Ronald S. Bultje
00e390d267 Don't use class casts before they're initialized
Original commit message from CVS:
Don't use class casts before they're initialized
2003-12-07 22:39:03 +00:00
Ronald S. Bultje
ec6cfad7fd Typo
Original commit message from CVS:
Typo
2003-12-07 22:38:26 +00:00
Julien Moutte
bf0d2b97e2 time_tick works.
Original commit message from CVS:
time_tick works.
have_video_size works.
2003-12-07 19:02:31 +00:00
Julien Moutte
1ed00e22fd Updating with my local repository. It already plays video with sound :) Great !
Original commit message from CVS:
Updating with my local repository. It already plays video with sound :) Great !
2003-12-07 17:56:10 +00:00
Julien Moutte
9265dfe82b Adding my work in progress rewrite from scratch of libgstplay.
Original commit message from CVS:
Adding my work in progress rewrite from scratch of libgstplay.
2003-12-07 13:29:10 +00:00
Ronald S. Bultje
2ebfe048cc Move over from GstInterface to GstImplementsInterface. Also adds some signals to several interfaces
Original commit message from CVS:
Move over from GstInterface to GstImplementsInterface. Also adds some signals to several interfaces
2003-12-07 12:11:30 +00:00
Andy Wingo
80fece4f4b remove copyright field from plugins
Original commit message from CVS:
remove copyright field from plugins
2003-12-04 10:37:39 +00:00
Thomas Vander Stichele
27bca5bf8d fix X dependencies
Original commit message from CVS:
fix X dependencies
2003-12-03 12:49:29 +00:00
Thomas Vander Stichele
302786ba59 fixing up X test and general features test
Original commit message from CVS:
fixing up X test and general features test
2003-12-03 12:23:37 +00:00
Benjamin Otte
788acc4917 tagging stuff and build fixes. In detail:
Original commit message from CVS:
tagging stuff and build fixes. In detail:
- make gdk-pixbuf loader work when distchecking
- fix invalid syntax in ffmpeg Makefile. wildcards for EXTRA_DIST are not allowed. This broke builds where distdir != srcdir
- fix ffmpeg cvs grabbing when srcdir != distdir
- new id3tag plugin for id3 tag reading/writing (uses mad's libid3tag)
- mad and libid3tag require mad/libid3tag v0.15. Fixed configure to require that
- added ogg demuxer in ext/ogg. The demuxer does not handle events yet. Especially getting seeking right will require some effort or code copying from libvorbis.
- added raw vorbis detection to typefinding. oggdemux requires a typefind function to detect its contents.
- tags plugin in gst/tags. Provides API in <gst/tags/gsttagediting.h>. API includes tag matching GStreamer <=> ID3 and GStreamer <=> vorbis and writing/reading vorbiscomments or ID3v1 tags. Also included is a simple vorbiscomment reader/writer. Writing will not really work though until someone writes oggmux.
- various build fixes. Mostly missing (DIST)CLEANFILES.
- vorbisenc handles tag writing.

Now it's YOUR turn to fix and write more plugins that handle writing/reading of tags. :)
2003-11-24 04:08:48 +00:00
David Schleef
3863b258b2 distcheck fixes
Original commit message from CVS:
distcheck fixes
2003-11-22 04:06:50 +00:00
Julien Moutte
21269abc94 Fix a stupid mistake
Original commit message from CVS:
Fix a stupid mistake
2003-11-19 22:59:53 +00:00
Julien Moutte
1bbfb48f01 Removing the video_out things.
Original commit message from CVS:
Removing the video_out things.
2003-11-19 22:41:45 +00:00
Julien Moutte
ea49926624 Removing have_size as it is in GstVideoSink higher class.
Original commit message from CVS:
Removing have_size as it is in GstVideoSink higher class.
2003-11-19 22:40:59 +00:00
Julien Moutte
a58a759d9c Merged GstVideoOverlay features here.
Original commit message from CVS:
Merged GstVideoOverlay features here.
2003-11-17 16:29:38 +00:00
Julien Moutte
5499abfb9b Merging with GstXOverlay
Original commit message from CVS:
Merging with GstXOverlay
2003-11-17 15:42:32 +00:00
Leif Johnson
038f79929a + adding buffer-frames prop to standard caps macros
Original commit message from CVS:
+ adding buffer-frames prop to standard caps macros
2003-11-16 22:04:16 +00:00
Leif Johnson
736153ab06 + checking in plugin category changes
Original commit message from CVS:
+ checking in plugin category changes
2003-11-16 22:02:21 +00:00
Leif Johnson
96298704f0 + adding endianness conversion macros for floats
Original commit message from CVS:
+ adding endianness conversion macros for floats
2003-11-16 21:47:16 +00:00
Julien Moutte
b23dd4a720 Adding GstVideoOverlay interface.
Original commit message from CVS:
Adding GstVideoOverlay interface.
2003-11-15 15:02:49 +00:00
David Schleef
ac91fc230c er, no, signal should be VOID__POINTER. :)
Original commit message from CVS:
er, no, signal should be VOID__POINTER.  :)
2003-11-13 21:25:38 +00:00
David Schleef
3335546e2c signal should be VOID__VOID
Original commit message from CVS:
signal should be VOID__VOID
2003-11-13 01:48:53 +00:00
Benjamin Otte
fb844d50ec fix build system for X, XShm and Xv
Original commit message from CVS:
fix build system for X, XShm and Xv
2003-11-12 03:06:07 +00:00