Commit graph

185 commits

Author SHA1 Message Date
Benjamin Otte c9305d90a3 configure.ac: only export gst* symbols
Original commit message from CVS:
* configure.ac:
only export gst* symbols
* ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_chain):
change g_warning to debugging message, that wasn't a programming
error
2004-03-24 21:36:50 +00:00
Thomas Vander Stichele 0fc9489042 don't critical (#137588)
Original commit message from CVS:
don't critical (#137588)
2004-03-18 12:55:38 +00:00
Thomas Vander Stichele 879d56abc1 change static name
Original commit message from CVS:
change static name
2004-03-15 15:42:44 +00:00
Ronald S. Bultje 91b5e3f532 ext/ffmpeg/: Add encode property to codec mapper, so we can get better-fitting caps. Also use this everywhere. ;). La...
Original commit message from CVS:
* ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps):
* ext/ffmpeg/gstffmpegcodecmap.h:
* ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_chain),
(gst_ffmpegdec_register):
* ext/ffmpeg/gstffmpegdemux.c: (gst_ffmpegdemux_add),
(gst_ffmpegdemux_register):
* ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_connect),
(gst_ffmpegenc_register):
* ext/ffmpeg/gstffmpegmux.c: (gst_ffmpegmux_register):
Add encode property to codec mapper, so we can get better-fitting
caps. Also use this everywhere. ;). Lastly, add some new codecIDs
to our list of recognized ones.
2004-03-15 00:01:03 +00:00
Thomas Vander Stichele 5d57633278 this actually seems to work well
Original commit message from CVS:
this actually seems to work well
2004-03-11 18:18:36 +00:00
Ronald S. Bultje 1b37818530 ext/ffmpeg/Makefile.am: Prevent more symbol conflicts...
Original commit message from CVS:
* ext/ffmpeg/Makefile.am:
Prevent more symbol conflicts...
* ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_register):
Up priority/rank for MPEG-4 decoder. Reason is simple: it's well-
tested and by far outperforms xviddec/divxdec. They'll get some
other, slightly lower, rank.
* gst-libs/ext/ffmpeg/patch/autotools.diff:
Tweaking...
* gst-libs/ext/ffmpeg/patch/disableinstalllibs.diff:
Prevent more symbol conflicts. I changed this (to pass 'make
distcheck') in the one patch, so need to change it here too.
* gst-libs/ext/ffmpeg/patch/disablemmx.diff:
Re-enable MMX. :).
* gst-libs/ext/ffmpeg/patch/functions.diff:
Bla.
2004-03-09 07:56:40 +00:00
David Schleef dde8754a27 ext/ffmpeg/gstffmpegcodecmap.c: Add cinepak format. (bug #136470)
Original commit message from CVS:
* ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps):
Add cinepak format.  (bug #136470)
2004-03-07 22:02:15 +00:00
Ronald S. Bultje 8800cd993d ext/ffmpeg/gstffmpegcodecmap.c: Fix quicktime type recognition in ffmpeg. We returned a bogus caps, which caused ffde...
Original commit message from CVS:
* ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_formatid_to_caps):
Fix quicktime type recognition in ffmpeg. We returned a bogus
caps, which caused ffdemux_quicktime to be chosen over qtdemux.
This fixes that.
2004-03-05 02:40:34 +00:00
Ronald S. Bultje c9b89b2fec configure.ac: Brackets cause autoconf errors. So remove them.
Original commit message from CVS:
* configure.ac:
Brackets cause autoconf errors. So remove them.
* ext/ffmpeg/gstffmpegdemux.c: (gst_ffmpegdemux_add):
Actually use the event/convert/query functions. D'oh.
2004-03-04 13:21:53 +00:00
Ronald S. Bultje 1abaeb885c ext/ffmpeg/gstffmpegdec.c: Fix B-frame DivX5/XviD display by removing the truncated flag when not needed.
Original commit message from CVS:
* ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_connect):
Fix B-frame DivX5/XviD display by removing the truncated flag when
not needed.
* gst-libs/ext/ffmpeg/patch/autotools.diff:
Remove link to libavcodec - it causes symbol conflicts (why?).
2004-03-02 02:30:04 +00:00
Ronald S. Bultje 7b63c14e2b HACKING: Add some basic documentation on how our wrapping works.
Original commit message from CVS:
* HACKING:
Add some basic documentation on how our wrapping works.
* TODO:
Add a list of things that could be worked on or that need doing.
* configure.ac:
Update snapshot.
* ext/ffmpeg/Makefile.am:
Changne .la links. See below (autotools patch).
* ext/ffmpeg/gstffmpeg.c: (plugin_init):
Enable demuxers. See below (gstffmpegdemux.c).
* ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_formatid_to_caps):
Realmedia caused a crash - fix that.
* ext/ffmpeg/gstffmpegdemux.c: (gst_ffmpegdemux_averror),
(gst_ffmpegdemux_base_init), (gst_ffmpegdemux_init),
(gst_ffmpegdemux_close), (gst_ffmpegdemux_dispose),
(gst_ffmpegdemux_stream_from_pad),
(gst_ffmpegdemux_src_event_mask), (gst_ffmpegdemux_src_event),
(gst_ffmpegdemux_src_format_list),
(gst_ffmpegdemux_src_query_list), (gst_ffmpegdemux_src_query),
(gst_ffmpegdemux_src_convert), (gst_ffmpegdemux_add),
(gst_ffmpegdemux_open), (gst_ffmpegdemux_loop),
(gst_ffmpegdemux_change_state), (gst_ffmpegdemux_register):
Right. OK, so I fixed up the demuxing and have it basically-working,
and the best way to get some more people to test it is to actually
enable it. I'm not sure if we want this for 0.8.0, but we can at
least give it a try. I've tested avi, matroska and mpeg, all appear
to work. The cool thing is that this gives us instant support for
several exotic formats that we'd never care about ourselves. Again,
this needs more testing for it to still be enabled in 0.8.0, but I
want to give it a try...
* ext/ffmpeg/gstffmpegmux.c: (gst_ffmpegmux_base_init),
(gst_ffmpegmux_init), (gst_ffmpegmux_request_new_pad),
(gst_ffmpegmux_connect), (gst_ffmpegmux_loop),
(gst_ffmpegmux_register):
Add some fixups that I use locally. Make it work in the case of
MPEG encoding, but the muxer is still not in shape to be enabled.
* ext/ffmpeg/gstffmpegprotocol.c: (gst_ffmpegdata_open),
(gst_ffmpegdata_read), (gst_ffmpegdata_write),
(gst_ffmpegdata_seek), (gst_ffmpegdata_close):
Some small fixups that crept into it while it was disabled for the
last few years. Basically works.
* gst-libs/ext/ffmpeg/Makefile.am:
Instead of having our local-autotoolized version, I patch the ffmpeg
source to be fully autotoolized. That means a simple SUBDIRS here
is now enough.
* gst-libs/ext/ffmpeg/Tag:
Version update.
* gst-libs/ext/ffmpeg/patch/autotools.diff:
Autotoolize ffmpeg. Needs to be sent to ffmpeg-devel@...
* gst-libs/ext/ffmpeg/patch/disableinstalllibs.diff:
Don't install their libs.
* gst-libs/ext/ffmpeg/patch/disablemmx.diff:
Don't use MMX. It cannot ocmpile using PIC.
* gst-libs/ext/ffmpeg/patch/disabletools.diff:
Don't compile/install their tools, we don't use them.
* gst-libs/ext/ffmpeg/patch/functions.diff:
Prevent symbol conflicts.
* gst-libs/ext/ffmpeg/patch/matroska.diff:
Add a matroska demuxer. Needs to be sent to ffmpeg-devel@...
2004-03-01 04:59:17 +00:00
Thomas Vander Stichele 8ba3ae3970 fixing up module
Original commit message from CVS:
fixing up module
2004-02-13 13:04:54 +00:00
Benjamin Otte 0556f090e5 ext/ffmpeg/: fix memleaks
Original commit message from CVS:
2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>

* ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_base_init):
* ext/ffmpeg/gstffmpegdemux.c: (gst_ffmpegdemux_base_init):
* ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_base_init):
* ext/ffmpeg/gstffmpegmux.c: (gst_ffmpegmux_base_init):
fix memleaks
2004-02-11 08:38:26 +00:00
David Schleef aedc3d17b4 Make sure set_explicit_caps() is called before adding pad.
Original commit message from CVS:
Make sure set_explicit_caps() is called before adding pad.
* ext/ffmpeg/gstffmpegdemux.c: (gst_ffmpegdemux_loop):
* gst/id3/gstid3types.c: (gst_id3types_loop):
* gst/mpegstream/gstmpegdemux.c: (gst_mpeg_demux_parse_syshead):
* gst/realmedia/rmdemux.c: (gst_rmdemux_add_stream):
2004-02-04 21:40:49 +00:00
Jeremy Simon 86c1959403 ext/ffmpeg/gstffmpegcodecmap.c: Fix SVQ3 caps flag properties
Original commit message from CVS:
2004-02-02  Jeremy Simon  <jesimon@libertysurf.fr>
* ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps),
(gst_ffmpeg_caps_to_extradata):
Fix SVQ3 caps flag properties
Use glib macro for bytes swap
2004-02-02 22:37:33 +00:00
David Schleef 8e29a788e4 Fix memory leaks:
Original commit message from CVS:
reviewed by: David Schleef  <ds@schleef.org>
Fix memory leaks:
* ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_register):
* ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_register):
2004-02-02 20:27:13 +00:00
Thomas Vander Stichele 9e6362dd89 change NULL to (NULL) for GST_ELEMENT_ERROR
Original commit message from CVS:
change NULL to (NULL) for GST_ELEMENT_ERROR
Make sure errors end with "."
2004-02-02 17:23:27 +00:00
Benjamin Otte 2b07da86fc ext/ffmpeg/gstffmpegcodecmap.c: removee video/x-theora from vp3 decoder, it doesn't handle raw theora streams
Original commit message from CVS:
2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>

* ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps):
removee video/x-theora from vp3 decoder, it doesn't handle raw
theora streams
* ext/ogg/gstoggdemux.c: (gst_ogg_demux_init):
fix bug with finalizing element that never went to PAUSED
* ext/ogg/gstoggdemux.c: (gst_ogg_demux_src_query):
length and position queries were swapped
* ext/vorbis/vorbisdec.c: (gst_vorbis_dec_init),
(vorbis_dec_from_granulepos), (vorbis_dec_src_query),
(vorbis_dec_src_event):
implement querying time and bytes
2004-01-30 03:51:03 +00:00
Thomas Vander Stichele 7f433d83ac GST_ELEMENT_ERROR
Original commit message from CVS:
GST_ELEMENT_ERROR
2004-01-29 23:20:39 +00:00
Jeremy Simon f1c371a3d3 ext/ffmpeg/gstffmpegcodecmap.c: Fix SVQ3 decoding on PPC
Original commit message from CVS:
2004-01-26  Jeremy Simon  <jesimon@libertysurf.fr>
* ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_caps_to_extradata):
Fix SVQ3 decoding on PPC
2004-01-26 21:04:32 +00:00
Jeremy Simon 2a56f1cec9 Add SVQ3 specific flags to qtdemux and ffmpeg
Original commit message from CVS:
2004-01-26  Jeremy Simon  <jesimon@libertysurf.fr>
* ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps),
(gst_ffmpeg_caps_to_extradata), (gst_ffmpeg_caps_to_pixfmt):
* gst/qtdemux/qtdemux.c: (plugin_init), (qtdemux_parse_trak),
(qtdemux_video_caps):
* gst/qtdemux/qtdemux.h:
Add SVQ3 specific flags to qtdemux and ffmpeg
2004-01-26 20:01:36 +00:00
Jeremy Simon cfcbc7800f ext/ffmpeg/gstffmpegcodecmap.c: Fix wma caps property
Original commit message from CVS:
* ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_caps_to_extradata):
Fix wma caps property
* gst/asfdemux/gstasfdemux.c: (gst_asf_demux_audio_caps):
Fix typo (flags1 and flags2)
2004-01-20 21:22:46 +00:00
Thomas Vander Stichele 3f9cd6434f use new error signal and classification
Original commit message from CVS:
use new error signal and classification
2004-01-18 21:46:52 +00:00
David Schleef df75119488 ext/ffmpeg/gstffmpegenc.c: Fix use of already-freed caps.
Original commit message from CVS:
* ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_connect): Fix use of
already-freed caps.
2004-01-16 19:54:16 +00:00
Ronald S. Bultje 8a6c344dc7 ext/ffmpeg/gstffmpegenc.c: Link with right caps (else, it segfaults).
Original commit message from CVS:
2004-01-16  Ronald Bultje  <rbultje@ronald.bitfreak.net>

* ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_connect):
Link with right caps (else, it segfaults).
* ext/mplex/gstmplexjob.cc:
Fix for slight API change in 1.6.1.93 release of mjpegtools.
2004-01-16 14:10:44 +00:00
David Schleef 2b03152605 Make sure everybody wraps #include "config.h" in #ifdef HAVE_CONFIG_H
Original commit message from CVS:
* ext/ffmpeg/gstffmpeg.c:
* ext/ffmpeg/gstffmpegcodecmap.c:
* ext/ffmpeg/gstffmpegdec.c:
* ext/ffmpeg/gstffmpegenc.c:
* ext/ffmpeg/gstffmpegprotocol.c:
* ext/gdk_pixbuf/gstgdkanimation.c:
* ext/jpeg/gstjpeg.c:
* ext/libpng/gstpng.c:
* ext/mpeg2dec/perftest.c:
* ext/speex/gstspeex.c:
* gst-libs/gst/resample/dtos.c:
* gst/intfloat/gstintfloatconvert.c:
* gst/oneton/gstoneton.c:
* gst/rtjpeg/RTjpeg.c:
* gst/rtp/gstrtp.c:
* sys/dxr3/dxr3init.c:
* sys/glsink/gstgl_nvimage.c:
* sys/glsink/gstgl_pdrimage.c:
* sys/glsink/gstglsink.c:
* testsuite/gst-lint:
Make sure everybody wraps #include "config.h" in #ifdef HAVE_CONFIG_H
2004-01-12 04:15:46 +00:00
Julien Moutte ad60e7cb34 ext/ffmpeg/gstffmpegcolorspace.c: Fixing the pad_alloc_buffer implementation to use ->srcpad
Original commit message from CVS:
2004-01-11  Julien MOUTTE  <julien@moutte.net>

* ext/ffmpeg/gstffmpegcolorspace.c: (gst_ffmpegcsp_chain): Fixing the
pad_alloc_buffer implementation to use ->srcpad
* ext/hermes/gstcolorspace.c: (gst_colorspace_chain): Fixing the
pad_alloc_buffer implementation to use ->srcpad
* gst/videoscale/gstvideoscale.c: (gst_videoscale_chain):  Fixing the
pad_alloc_buffer implementation to use ->srcpad
* sys/ximage/ximagesink.c: (gst_ximagesink_ximage_new),
(gst_ximagesink_chain), (gst_ximagesink_buffer_free),
(gst_ximagesink_buffer_alloc): Now only use GST_BUFFER_PRIVATE to keep
a reference to everything we need.
* sys/ximage/ximagesink.h: adding a reference to the sink in the image.
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_xvimage_new),
(gst_xvimagesink_chain), (gst_xvimagesink_buffer_free),
(gst_xvimagesink_buffer_alloc): Now only use GST_BUFFER_PRIVATE to keep
a reference to everything we need.
* sys/xvimage/xvimagesink.h: adding a reference to the sink in the image
2004-01-11 22:52:28 +00:00
Benjamin Otte 11f45f94a1 ext/ffmpeg/gstffmpegcodecmap.c: fix SVQ3 caps
Original commit message from CVS:
2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>

* ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps):
fix SVQ3 caps
2004-01-11 04:51:47 +00:00
Julien Moutte 217e2b3e3e 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:56 +00:00
David Schleef 2e20e4ccdf 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
David Schleef e83494a26f fix compiler warning
Original commit message from CVS:
fix compiler warning
2004-01-02 23:42:14 +00:00
David Schleef 87e0627bfb ext/ffmpeg/gstffmpegenc.c: Negotiation fixes.
Original commit message from CVS:
* ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_init),
(gst_ffmpegenc_connect):  Negotiation fixes.
* ext/mpeg2dec/gstmpeg2dec.c: (gst_mpeg2dec_negotiate_format):
Remove inappropriate gst_caps_free().
* sys/ximage/ximagesink.c: (gst_ximagesink_sinkconnect):
Reenable Ronald's internal resize code, since the core handles
it correctly now.
2004-01-02 23:11:41 +00:00
David Schleef fa2f874ba7 Remove random stupidities from my last checkin. Doesn't specifically attempt to negotiate passthru.
Original commit message from CVS:
Remove random stupidities from my last checkin.  Doesn't specifically
attempt to negotiate passthru.
2004-01-02 23:06:49 +00:00
David Schleef 4231dbd872 Convert elements to use gst_pad_use_explicit_caps() where appropriate.
Original commit message from CVS:
Convert elements to use gst_pad_use_explicit_caps() where appropriate.
2004-01-02 07:09:20 +00:00
Ronald S. Bultje e1c922ecac 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:56 +00:00
David Schleef 8fae63a424 Negotiation fixes.
Original commit message from CVS:
Negotiation fixes.
2003-12-31 08:02:04 +00:00
Ronald S. Bultje 2a754af351 ext/ffmpeg/: fix typo in RGB masks, and move back to "old" colorspace capsnego code until whoever wrote this new crap...
Original commit message from CVS:
2003-12-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>

* ext/ffmpeg/gstffmpegcodecmap.c:
* ext/ffmpeg/gstffmpegcolorspace.c: (gst_ffmpegcsp_getcaps),
(gst_ffmpegcsp_srcconnect_func), (gst_ffmpegcsp_sinkconnect),
(gst_ffmpegcsp_srcconnect), (gst_ffmpegcsp_get_type),
(gst_ffmpegcsp_base_init), (gst_ffmpegcsp_class_init),
(gst_ffmpegcsp_init), (gst_ffmpegcsp_chain),
(gst_ffmpegcsp_change_state), (gst_ffmpegcsp_set_property),
(gst_ffmpegcsp_get_property), (gst_ffmpegcsp_register):
fix typo in RGB masks, and move back to "old" colorspace
capsnego code until whoever wrote this new crap has actually
tested it so that it works.
And yes, this works, keep it that way please.
2003-12-24 00:12:16 +00:00
David Schleef 5153d56e2c Merge CAPS branch
Original commit message from CVS:
Merge CAPS branch
2003-12-22 01:46:58 +00:00
Ronald S. Bultje 4ee3b353e9 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:48 +00:00
Ronald S. Bultje 75c76000f1 Well, hack to get this RGB thing truely right
Original commit message from CVS:
Well, hack to get this RGB thing truely right
2003-12-18 09:27:58 +00:00
Ronald S. Bultje 3dc2cc00e1 Fix small typo in RGB32LE red-mask check
Original commit message from CVS:
Fix small typo in RGB32LE red-mask check
2003-12-17 22:38:22 +00:00
Ronald S. Bultje c1486cd0a7 Re-enable SVQ3, and also add a workaround for the fact that it writes to (read-only) buffers. This effectively makes ...
Original commit message from CVS:
Re-enable SVQ3, and also add a workaround for the fact that it writes to (read-only) buffers. This effectively makes svq3 work
2003-12-12 15:40:59 +00:00
Thomas Vander Stichele d7bdecd09f fix compilation
Original commit message from CVS:
fix compilation
2003-12-05 16:01:23 +00:00
Ronald S. Bultje d0b4ac409e Fix RGB better
Original commit message from CVS:
Fix RGB better
2003-11-28 20:06:18 +00:00
David Schleef 4c2868ef36 Change everyone to video/x-msvideo
Original commit message from CVS:
Change everyone to video/x-msvideo
2003-11-27 21:48:39 +00:00
Benjamin Otte 767092cb06 oops, got the RGB32 codecs wrong
Original commit message from CVS:
oops, got the RGB32 codecs wrong
2003-11-25 04:57:43 +00:00
Benjamin Otte 982d1612b2 make ffcolorspace work
Original commit message from CVS:
make ffcolorspace work
2003-11-25 04:48:31 +00:00
Benjamin Otte 2d2624fe49 - disable svq3 as it still crashes and spider tries to use it.
Original commit message from CVS:
- disable svq3 as it still crashes and spider tries to use it.
- copy buffers if necessary before sending them for decode in SVQ1 case. The decoder writes to the data.
2003-11-25 02:18:12 +00:00
Leif Johnson 579ca39de7 + checking in plugin category changes
Original commit message from CVS:
+ checking in plugin category changes
2003-11-16 22:01:30 +00:00
Ronald S. Bultje ebbae798e3 Oops, some pretty bad memleaks
Original commit message from CVS:
Oops, some pretty bad memleaks
2003-11-12 11:27:40 +00:00
Ronald S. Bultje 199e7f14f2 Several encoding changes: for video, double check the pix_fmt after opening the AVCodec. The pix_fmt will be changed ...
Original commit message from CVS:
Several encoding changes:
* for video, double check the pix_fmt after opening the AVCodec. The pix_fmt
will be changed to the preferred pix_fmt instead of that opening the
codec fails. We fail when it has changed (then, ffmpeg doesn't like it).
* for video, set the correct timestamp.
* for audio, do *not* set the frame_size: most codecs don't like it. Instead,
keep a cache of buffers and always give data of size "frame_size". Maybe
I should have used bytestream here, I'm not sure. This works, though.
I can now create mpeg1 video, mp2 and ac3 audio. I didn't test any others yet.
I also didn't start working on integration with any of the muxers yet, that's
all one big TODO. One thing at a time, please. :).
2003-11-12 10:42:36 +00:00
Benjamin Otte d26aa5ad0b some fixes:
Original commit message from CVS:
some fixes:
- put back a fix to make generic audio caps fixed.
- read out all of the flags when constructing wma extradata
2003-11-10 14:15:38 +00:00
Jeremy Simon 7ffbef83dd Add a function that build the context extradata from caps property
Original commit message from CVS:
Add a function that build the context extradata from caps property
2003-11-07 19:59:28 +00:00
Jeremy Simon f1d5413b05 Use caps properties to set additional data to ffmpeg context (for wma)
Original commit message from CVS:
Use caps properties to set additional data to ffmpeg context (for wma)
2003-11-05 23:19:38 +00:00
Benjamin Otte fcdd84f558 fix GST_FF_AUD_CAPS_NEW to not include channels and rate in unfixed caps and make audio caps use them again. This ens...
Original commit message from CVS:
fix GST_FF_AUD_CAPS_NEW to not include channels and rate in unfixed caps and make audio caps use them again. This ensures that audio encoders set these properties when setting fixed caps and audio decoders can advertise fixed caps, too.  This should work in all cases. If not, change it back and ffdec_mp3 is broken again ;)
2003-11-05 03:06:10 +00:00
Benjamin Otte 4e9bb8eb6c random fixes to ffmpeg: decoding of mp3 now works, call parent_class->dispose
Original commit message from CVS:
random fixes to ffmpeg: decoding of mp3 now works, call parent_class->dispose
2003-11-04 22:31:05 +00:00
Benjamin Otte 7e8b50efaa fix ffmpeg by using an ugly hack (put data as GType 0 when there is no type available yet)
Original commit message from CVS:
fix ffmpeg by using an ugly hack (put data as GType 0 when there is no type available yet)
2003-11-02 19:07:41 +00:00
Ronald S. Bultje 28ba793266 Bla
Original commit message from CVS:
Bla
2003-11-02 13:12:14 +00:00
David Schleef 815423e05e Fix compile problem on gcc-2.95. Fixes #125635.
Original commit message from CVS:
Fix compile problem on gcc-2.95.  Fixes #125635.
2003-10-31 03:43:25 +00:00
David Schleef 454bcb58ac change gst/bytestream.h to gst/bytestream/bytestream.h
Original commit message from CVS:
change gst/bytestream.h to gst/bytestream/bytestream.h
2003-10-29 03:15:50 +00:00
Benjamin Otte 98063f8cd3 merge TYPEFIND branch. Major changes:
Original commit message from CVS:
merge TYPEFIND branch. Major changes:
- totally reworked type(find) system
- all typefind functions are in gst/typefind now
- more typefind functions then before
- some plugins might fail to compile now because I don't have them installed and they
a) require bytestream or
b) haven't had their typefind fixed.
Please fix those plugins and put the typefind functions into gst/typefind if they don't have dependencies
2003-10-28 20:52:31 +00:00
Ronald S. Bultje c92678bb20 Re-enable realaudio codecs, improve decoder naming and add mpeg2aac decoder... Now to find out why it still doesn't l...
Original commit message from CVS:
Re-enable realaudio codecs, improve decoder naming and add mpeg2aac decoder... Now to find out why it still doesn't list itself after gst-register'ing...
2003-10-26 12:10:01 +00:00
Ronald S. Bultje b34d003bfe < <-> > confusion
Original commit message from CVS:
< <-> > confusion
2003-10-26 12:00:25 +00:00
Ronald S. Bultje 8358d67b73 Make it compile against latest CVS of FFMPEG:
Original commit message from CVS:
Make it compile against latest CVS of FFMPEG:
* Put gst/gst.h above avcodec.h because it needs some types defined in glib.h
* Remove HQ (removed from lavc) property

Also add some functions to make SVQ1 decoding work:
* Add YUV9 colorspace
* Let lavc do its own buffer allocation and copy from there instead of using
our own buffer allocation functions. Somehow, that breaks. I don't know
why.
2003-10-26 11:30:18 +00:00
Ronald S. Bultje 5b255e085e FFMPEG-based colorspace conversion plugin
Original commit message from CVS:
FFMPEG-based colorspace conversion plugin
2003-10-25 16:29:13 +00:00
Ronald S. Bultje 86288171cb Fix stupid typo
Original commit message from CVS:
Fix stupid typo
2003-10-22 10:17:15 +00:00
Ronald S. Bultje 601a18b167 and small improvement in naming of the FFMPEG encoders. This makes their naming look slightly better in apps using el...
Original commit message from CVS:
Typo (> instead of <) in codec selection (we don't want raw audio to raw audio encoders), and small improvement in naming of the FFMPEG encoders. This makes their naming look slightly better in apps using element_factory->details->longname.
2003-10-20 08:24:39 +00:00
David Schleef feed1dcd9c includes are in top_srcdir
Original commit message from CVS:
includes are in top_srcdir
2003-10-16 05:04:20 +00:00
David Schleef 33bc78bfe5 Trivial fixes for GstBuffer->GstData migration
Original commit message from CVS:
Trivial fixes for GstBuffer->GstData migration
2003-10-09 02:23:00 +00:00
Andy Wingo 8603e03fd5 /GstBuffer/GstData/ in the API where you can pass events. Fix the plugins to deal with that. Fixes #113488.
Original commit message from CVS:
/GstBuffer/GstData/ in the API where you can pass events. Fix the plugins to deal with that. Fixes #113488.
2003-10-08 16:07:38 +00:00
Ronald S. Bultje cc76e12bb9 New typefind system: bytestream is now part of the core all plugins have been modified to use this new typefind syste...
Original commit message from CVS:
New typefind system:
* bytestream is now part of the core
* all plugins have been modified to use this new typefind system
* asf typefinding added
* mpeg video stream typefiding removed because it's broken
* duplicate typefind entries removed
* extra id3 typefinding added, because we've seen 4 types of files
(riff/wav, flac, vorbis, mp3) with id3 headers and each of these needs
to work. Instead, I've added an id3 element and let it redo typefiding
after the id3 header. this needs a hack because spider only typefinds
once. We can remove this hack once spider supports multiple typefinds.
* with all this, mp3 typefinding is semi-rewritten
* id3 typefinding in flac/vorbis is removed, it's no longer needed
* fixed spider and gst-typefind to use this, too.
* Other general cleanups
2003-10-01 13:14:43 +00:00
Thomas Vander Stichele 306d1a5ec4 reverting error patch before making a branch.
Original commit message from CVS:
reverting error patch before making a branch.
2003-09-16 09:59:53 +00:00
Benjamin Otte c05cf86c52 converted gst_element_error to new format in ext/ - gettext pending
Original commit message from CVS:
converted gst_element_error to new format in ext/ - gettext pending
2003-09-15 01:08:36 +00:00
David Schleef 5c28dc809e Use ffmpeg libraries build by local automake Makefiles
Original commit message from CVS:
Use ffmpeg libraries build by local automake Makefiles
2003-09-11 19:53:57 +00:00
David Schleef 8a35cf6b64 Remove redundant plugindir definition
Original commit message from CVS:
Remove redundant plugindir definition
2003-08-09 23:56:29 +00:00
Benjamin Otte 9db37279fc use commas instead of newlines for author field (makes output greppable)
Original commit message from CVS:
use commas instead of newlines for author field (makes output greppable)
2003-07-08 19:48:54 +00:00
Ronald S. Bultje 1a7650c94b More compilation fixes from my latest commit
Original commit message from CVS:
More compilation fixes from my latest commit
2003-07-07 11:32:34 +00:00
Ronald S. Bultje d1c36f17ef New mimetypes gone into effect today - this commit changes all old mimetypes over to the new mimetypes spec as descri...
Original commit message from CVS:
New mimetypes gone into effect today - this commit changes all old mimetypes over to the new mimetypes spec as described in the previous commit's document. Note: some plugins will break, some pipelines will break, expect HEAD to be broken or at least not 100% working for a few days, but don't forget to report bugs
2003-07-06 20:49:15 +00:00
Benjamin Otte 4c1d919cbf compatibility fix for new GST_DEBUG stuff.
Original commit message from CVS:
compatibility fix for new GST_DEBUG stuff.
Includes fixes for missing includes for config.h and unistd.h

I only ensured for plugins I can build that they work, so if some of them are still broken, you gotta fix them yourselves unfortunately.
2003-06-29 19:45:00 +00:00
Ronald S. Bultje e0b4b32a8e We hate double slashes.. I'm still disabling demux/mux in CVS, until I've got some working tests here
Original commit message from CVS:
We hate double slashes.. I'm still disabling demux/mux in CVS, until I've got some working tests here
2003-06-17 11:46:08 +00:00
Ronald S. Bultje a617e29786 No quasi codecs
Original commit message from CVS:
No quasi codecs
2003-06-17 11:44:38 +00:00
Ronald S. Bultje 4a764a442d We also need raw video/audio caps for the demuxer/muxer, plus that caps_to_codecid() didn't exist (thanks for noticin...
Original commit message from CVS:
We also need raw video/audio caps for the demuxer/muxer, plus that caps_to_codecid() didn't exist (thanks for noticing, dave)
2003-06-17 11:44:11 +00:00
Ronald S. Bultje f191f3dd03 Request pads don't have a number limit
Original commit message from CVS:
Request pads don't have a number limit
2003-06-17 11:42:38 +00:00
David Schleef 4343644704 Compilation fix. SOMEONE ELSE PLEASE FIX THIS CORRECTLY.
Original commit message from CVS:
Compilation fix.  SOMEONE ELSE PLEASE FIX THIS CORRECTLY.
2003-06-16 17:46:38 +00:00
Ronald S. Bultje e8d306adb4 some first trial code for ffmux_* disable ffmux/ffdemux by default since they cause havoc
Original commit message from CVS:
* some first trial code for ffmux_*
* disable ffmux/ffdemux by default since they cause havoc

I'll enable them locally for testing purposes until I've got them working in a general setup, too.
2003-06-09 15:04:26 +00:00
Ronald S. Bultje 59d7f9b535 Fix compile error on gcc-3.x
Original commit message from CVS:
Fix compile error on gcc-3.x
2003-06-09 12:33:48 +00:00
Ronald S. Bultje 53064c6c57 Hm, I actually misunderstood this protocol thing, since ffmpeg provides an read/write indicator, too... Here's a semi...
Original commit message from CVS:
Hm, I actually misunderstood this protocol thing, since ffmpeg provides an read/write indicator, too... Here's a semi-rewrite that handles writings too
2003-06-08 14:35:32 +00:00
Ronald S. Bultje 52080fb443 Some modifications to make the demuxers work, plus moving typefinding over from separate plugin to the demuxers thems...
Original commit message from CVS:
Some modifications to make the demuxers work, plus moving typefinding over from separate plugin to the demuxers themselves
2003-06-08 13:31:53 +00:00
Ronald S. Bultje fe266412d9 f it's an 'o', it's for output (muxing)
Original commit message from CVS:
Change protocol slightly, if the first char is an 'i', it's input (demuxing), if it's an 'o', it's for output (muxing)
2003-06-08 13:31:27 +00:00
Ronald S. Bultje 9b1645814e Remove typefinding as separate plugin, this is part of the demuxers now
Original commit message from CVS:
Remove typefinding as separate plugin, this is part of the demuxers now
2003-06-08 13:30:59 +00:00
Ronald S. Bultje aede10be3e MPEG4AAC is MPEG-4 audio, not video, and implement a _formatid_to_caps() function which tracks a GstCaps to a format ...
Original commit message from CVS:
MPEG4AAC is MPEG-4 audio, not video, and implement a _formatid_to_caps() function which tracks a GstCaps to a format name (muxing format etc.), useful for setting caps on demuxers
2003-06-08 13:30:10 +00:00
Ronald S. Bultje 40deef896e Loop through input capses instead of just picking the first, and handle encoding errors
Original commit message from CVS:
Loop through input capses instead of just picking the first, and handle encoding errors
2003-06-07 21:06:05 +00:00
Ronald S. Bultje 49b22bcee6 Rewrite of gstffmpegenc
Original commit message from CVS:
Rewrite of gstffmpegenc
2003-06-07 20:46:24 +00:00
Ronald S. Bultje c3b5d3f3fe Add a caps_to_codecid() function to read properties from a caps function for use in _connect() functions
Original commit message from CVS:
Add a caps_to_codecid() function to read properties from a caps function for use in _connect() functions
2003-06-07 20:45:56 +00:00
Ronald S. Bultje b17e56216c Make some more use of the ffmpeg utils.c functions for buffer allocation (really handy)
Original commit message from CVS:
Make some more use of the ffmpeg utils.c functions for buffer allocation (really handy)
2003-06-07 20:45:13 +00:00
Ronald S. Bultje 2cc34e4c8f Dzjee, just found out ffmpeg has a function to calculate the buffer size for me, d'oh!
Original commit message from CVS:
Dzjee, just found out ffmpeg has a function to calculate the buffer size for me, d'oh!
2003-06-07 11:43:11 +00:00
Ronald S. Bultje 0139c8c671 nd remove the edge stuff (finally found out how to disable that)
Original commit message from CVS:
Rename GstFFMpegClassParams to ~DecClassParams (so that the encoder can use something similar, working on that), and remove the edge stuff (finally found out how to disable that)
2003-06-07 11:01:54 +00:00
Ronald S. Bultje 80924bdfdc remove gstffmpegdecall. This was a temporary hack to get around some issues with our video/avi-centered mimetype syst...
Original commit message from CVS:
* remove gstffmpegdecall. This was a temporary hack to get around
some issues with our video/avi-centered mimetype system. Now that
we use proper identifiers, we don't need that piece of cruft anymore.
* update ffmpeg codec map for ffdec_*, plus make the uncompressed stream
caps also be formed by the codec mapper (this is easier to handle imo).
* add audio support (untested, though :P).
* remove the copying of buffer content and add a get_buffer() handler
instead.
* add an int to ffmpegenc to make it compile and resolve the symbol. I'll
truely fix that later on.
* make mimetypes in the ffmpeg codec mapper conform to docs/random/mimetypes
* etc.

Oh, and let's not forget that it can play back DIVX5 et all nicely. Support
for SVQ1/3 is also there, so if someone completes qtdemux, we can watch
these, too.
2003-06-07 00:41:32 +00:00
Ronald S. Bultje 56ab463205 Use new ffmpeg revision
Original commit message from CVS:
Use new ffmpeg revision
2003-05-29 19:34:00 +00:00
Wim Taymans 51124a1514 - just skip the frame when there was a decoding error instead of failing.
Original commit message from CVS:
- just skip the frame when there was a decoding error instead of failing.
2003-04-19 12:09:36 +00:00