Commit graph

274 commits

Author SHA1 Message Date
Ronald S. Bultje
54a86d367d ext/ffmpeg/gstffmpegenc.c: Set chain function before adding pad, fix memleak on error, error out on encode errors bec...
Original commit message from CVS:
* ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_init),
(gst_ffmpegenc_chain_video):
Set chain function before adding pad, fix memleak on error, error
out on encode errors because none of subsequent frames will work
any better (this is not input dependent).
2004-10-11 08:21:16 +00:00
Ronald S. Bultje
a70c3d36fb ext/ffmpeg/gstffmpegdec.c: Unref when not usable.
Original commit message from CVS:
* ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_chain):
Unref when not usable.
2004-10-09 16:13:31 +00:00
Ronald S. Bultje
c8e54391c1 ext/ffmpeg/gstffmpegcodecmap.c: Negotiation fixes for real video codecs.
Original commit message from CVS:
* ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps),
(gst_ffmpeg_caps_with_codecid):
Negotiation fixes for real video codecs.
2004-10-04 16:11:30 +00:00
Ronald S. Bultje
c1daa360bb ext/ffmpeg/gstffmpegdemux.c: Fix timestamps. Quite some of the gaming formats work now. :).
Original commit message from CVS:
* ext/ffmpeg/gstffmpegdemux.c: (gst_ffmpegdemux_loop):
Fix timestamps. Quite some of the gaming formats work now. :).
2004-10-02 21:17:26 +00:00
Ronald S. Bultje
3cf593d824 ext/ffmpeg/gstffmpegcodecmap.c: Generalized palette functions, add actual mimetypes for wing commander formats.
Original commit message from CVS:
* ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps),
(gst_ffmpeg_caps_with_codecid), (gst_ffmpeg_caps_to_codecid):
Generalized palette functions, add actual mimetypes for wing
commander formats.
* ext/ffmpeg/gstffmpegcolorspace.c: (gst_ffmpegcsp_chain):
Ffmpeg has internal palette functions, so I noticed.
* ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_chain):
Actually remove all palette code.
2004-10-02 20:26:10 +00:00
Ronald S. Bultje
530ec15806 ext/ffmpeg/gstffmpegdemux.c: Signal no_more_pads.
Original commit message from CVS:
* ext/ffmpeg/gstffmpegdemux.c: (gst_ffmpegdemux_loop):
Signal no_more_pads.
* ext/ffmpeg/gstffmpegprotocol.c: (gst_ffmpegdata_read),
(gst_ffmpegdata_seek):
Handle events.
2004-10-02 18:30:49 +00:00
Ronald S. Bultje
79d1288887 ext/ffmpeg/: Move palette handling over from the decoder to the colorspace conversion plugin (where you would expect ...
Original commit message from CVS:
* ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_pixfmt_to_caps),
(gst_ffmpeg_caps_to_pixfmt):
* ext/ffmpeg/gstffmpegcolorspace.c: (gst_ffmpegcsp_pad_link),
(gst_ffmpegcsp_init), (gst_ffmpegcsp_chain),
(gst_ffmpegcsp_change_state), (gst_ffmpegcsp_register):
* ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_chain):
Move palette handling over from the decoder to the colorspace
conversion plugin (where you would expect it).
2004-10-02 14:10:27 +00:00
Ronald S. Bultje
7c945b8254 ext/ffmpeg/gstffmpegcodecmap.c: Simplify codec_data handling.
Original commit message from CVS:
* ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps),
(gst_ffmpeg_caps_with_codecid), (gst_ffmpeg_caps_to_codecid):
Simplify codec_data handling.
2004-10-01 10:50:58 +00:00
Ronald S. Bultje
f4949f91d5 ext/ffmpeg/gstffmpegdec.c: Update timestamp for every new buffer that we output. Improves audio playback for several ...
Original commit message from CVS:
* ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_chain):
Update timestamp for every new buffer that we output. Improves
audio playback for several files that have multiple audio chunks
per buffer.
2004-09-23 14:54:57 +00:00
Ronald S. Bultje
29c31ba645 ext/ffmpeg/gstffmpegdec.c: msmpeg4v3 should be priority as well, else it will choose divxdec first (which we don't wa...
Original commit message from CVS:
* ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_register):
msmpeg4v3 should be priority as well, else it will choose divxdec
first (which we don't want).
2004-09-22 07:53:48 +00:00
Ronald S. Bultje
081a3b4844 ext/ffmpeg/gstffmpegcodecmap.c: WMV extradata (make #152798 work). J-frames are only available in the bitstream if th...
Original commit message from CVS:
* ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps),
(gst_ffmpeg_caps_with_codecid):
WMV extradata (make #152798 work). J-frames are only available
in the bitstream if the J-frame bit has been set in the extradata.
If not (or if extradata is not provided), the movie won't play.
* ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_close),
(gst_ffmpegdec_connect), (gst_ffmpegdec_chain):
Only close ffmpeg if privdata was allocated (else it segfaults).
Autodetect encoding bugs and workaround it. Don't copy data if
decoding failed.
* ext/ffmpeg/gstffmpegdemux.c: (gst_ffmpegdemux_loop):
Use read_frame() instead of read_packet() which is obsolete.
2004-09-20 12:29:03 +00:00
Iain Holmes
1015073dfe iFix a memory leak
Original commit message from CVS:
iFix a memory leak
2004-09-16 21:14:46 +00:00
Thomas Vander Stichele
e38fff6ecf don't needlessly do stuff
Original commit message from CVS:
don't needlessly do stuff
2004-07-21 09:20:55 +00:00
Thomas Vander Stichele
842f7aacbe put them back
Original commit message from CVS:
put them back
2004-07-08 14:01:28 +00:00
Thomas Vander Stichele
75d9e267c6 drop incoming buffers giving errors
Original commit message from CVS:
drop incoming buffers giving errors
2004-07-07 15:35:40 +00:00
Thomas Vander Stichele
71f892d3de hook up our debug system
Original commit message from CVS:
hook up our debug system
2004-07-07 15:12:02 +00:00
Thomas Vander Stichele
d867b293f7 bring in line with others
Original commit message from CVS:
bring in line with others
2004-07-03 23:34:04 +00:00
Ronald S. Bultje
3f9931de24 God, this is pathetic... Can someone reenable -Wall/-Werror?
Original commit message from CVS:
God, this is pathetic... Can someone reenable -Wall/-Werror?
2004-06-14 01:26:15 +00:00
Ronald S. Bultje
03cbef5cc1 ext/ffmpeg/: Do some more random property setting. Fix for if there's less than ffmpeg-default-buffersize (32kB) data...
Original commit message from CVS:
* ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps),
(gst_ffmpeg_caps_to_codecid):
* ext/ffmpeg/gstffmpegprotocol.c: (gst_ffmpegdata_read):
Do some more random property setting. Fix for if there's less than
ffmpeg-default-buffersize (32kB) data in a file _and_ there's an
event pending. Partially fixes #142320.
2004-06-14 01:21:01 +00:00
Ronald S. Bultje
bc0e141ee7 ext/ffmpeg/gstffmpeg.c: Remove redundant calls which are called internally already.
Original commit message from CVS:
* ext/ffmpeg/gstffmpeg.c: (plugin_init):
Remove redundant calls which are called internally already.
* ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_caps_with_codecid):
Indenting...
* ext/ffmpeg/gstffmpegdemux.c: (gst_ffmpegdemux_loop),
(gst_ffmpegdemux_register):
Remove typefind functions and rank for demuxers for any demuxer
that we already have in GStreamer.
2004-06-07 02:29:41 +00:00
Benjamin Otte
bf808bd484 ext/ffmpeg/gstffmpegcodecmap.c: don't operate on undefined variables (fixes #135145)
Original commit message from CVS:
* ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_caps_with_codecid):
don't operate on undefined variables (fixes #135145)
2004-05-18 01:15:36 +00:00
Benjamin Otte
2f2827a890 ext/ffmpeg/gstffmpegdec.c: Hi, I'm a memleak
Original commit message from CVS:
* ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_chain):
Hi, I'm a memleak
2004-05-16 21:02:48 +00:00
Ronald S. Bultje
028d9567da ext/ffmpeg/: Fix up demuxer. Works now for all my files that I tried, even quicktime. I basically hack around the sup...
Original commit message from CVS:
* ext/ffmpeg/gstffmpegdemux.c: (gst_ffmpegdemux_src_event),
(gst_ffmpegdemux_src_query), (gst_ffmpegdemux_src_convert),
(gst_ffmpegdemux_open), (gst_ffmpegdemux_loop):
* ext/ffmpeg/gstffmpegprotocol.c: (gst_ffmpegdata_open),
(gst_ffmpegdata_read), (gst_ffmpegdata_write),
(gst_ffmpegdata_seek):
Fix up demuxer. Works now for all my files that I tried, even
quicktime. I basically hack around the super-oversimplistic file
I/O handling in ffmpeg in several ways together, and I also hack
around the fairly annoying EOS-will-pause-the-source-element in
GStreamer itself.
This code is not pretty.
2004-05-14 14:11:00 +00:00
Jeremy Simon
f9536f9af1 ext/ffmpeg/gstffmpegcodecmap.c: block_align and bitrate caps property were lost for wma use codec_data instead of fla...
Original commit message from CVS:
* ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps),
(gst_ffmpeg_caps_with_codecid):
block_align and bitrate caps property were lost for wma
use codec_data instead of flag1 and flag2
2004-05-11 16:07:14 +00:00
Benjamin Otte
c0e70cc4bc ext/ffmpeg/gstffmpegcodecmap.c: it's audio/x-wav, not video/x-wav
Original commit message from CVS:
* ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_formatid_to_caps):
it's audio/x-wav, not video/x-wav
2004-05-11 01:54:59 +00:00
Stéphane Loeuillet
10415ff400 use video/x-dv as mime type, not video/dv (now i can go to sleep)
Original commit message from CVS:
use video/x-dv as mime type, not video/dv
(now i can go to sleep)
2004-05-10 03:08:50 +00:00
Stéphane Loeuillet
de518b6888 ext/ffmpeg/gstffmpegdec.c ext/ffmpeg/gstffmpegenc.c change plugins category to meet our new naming standard :
Original commit message from CVS:
* ext/ffmpeg/gstffmpegdec.c
* ext/ffmpeg/gstffmpegenc.c
change plugins category to meet our new naming standard :
Codec/Encoder|Decoder/Audio|Video
suggested by bilboed, approved by Company
2004-05-09 22:15:29 +00:00
Thomas Vander Stichele
9bcee66929 ext/ffmpeg/gstffmpegcolorspace.c: revert previous patch
Original commit message from CVS:
* ext/ffmpeg/gstffmpegcolorspace.c: (gst_ffmpegcsp_getcaps):
revert previous patch
2004-04-30 12:18:46 +00:00
Thomas Vander Stichele
acdea61ebc use GST_PAD_CAPS if they exist
Original commit message from CVS:
use GST_PAD_CAPS if they exist
2004-04-29 17:38:07 +00:00
Ronald S. Bultje
72333e34f6 ext/ffmpeg/gstffmpegcodecmap.c: WAV/IMA-ADPCM -> DVI ADPCM.
Original commit message from CVS:
* ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps),
(gst_ffmpeg_caps_with_codecid), (gst_ffmpeg_caps_to_codecid):
WAV/IMA-ADPCM -> DVI ADPCM.
2004-04-23 00:49:10 +00:00
Benjamin Otte
16f5300aba ext/ffmpeg/gstffmpegcolorspace.c: use gst_caps_do_simplify
Original commit message from CVS:
* ext/ffmpeg/gstffmpegcolorspace.c:
(gst_ffmpegcsp_caps_remove_format_info):
use gst_caps_do_simplify
2004-04-22 03:43:58 +00:00
Benjamin Otte
73c5b14aa7 ext/ffmpeg/gstffmpegdemux.c: reduce maximum probability in typefinding to POSSIBLE. prevents misidentification of my ...
Original commit message from CVS:
* ext/ffmpeg/gstffmpegdemux.c: (gst_ffmpegdemux_type_find):
reduce maximum probability in typefinding to POSSIBLE. prevents
misidentification of my mp3s as video/mpeg
2004-04-19 02:08:23 +00:00
Ronald S. Bultje
c5ebf6847f ext/ffmpeg/gstffmpegcolorspace.c: NULL -> (NULL) inside GST_ELEMENT_ERROR().
Original commit message from CVS:
* ext/ffmpeg/gstffmpegcolorspace.c: (gst_ffmpegcsp_chain):
NULL -> (NULL) inside GST_ELEMENT_ERROR().
2004-04-16 02:06:23 +00:00
Ronald S. Bultje
d8f7d245f4 ext/ffmpeg/gstffmpegcodecmap.*: Change some function names to reflect that they don't really _return_ something, but ...
Original commit message from CVS:
* ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_get_palette),
(gst_ffmpeg_set_palette), (gst_ffmpeg_codecid_to_caps),
(gst_ffmpeg_pixfmt_to_caps), (gst_ffmpeg_caps_to_smpfmt),
(gst_ffmpeg_caps_to_pixfmt), (gst_ffmpeg_caps_with_codectype),
(gst_ffmpeg_caps_with_codecid), (gst_ffmpeg_caps_to_codecid):
* ext/ffmpeg/gstffmpegcodecmap.h:
Change some function names to reflect that they don't really
_return_ something, but rather _use_ something to fill a
AVCodecContext. s/to/with/. Restructure the extradata handling,
it's now not picking up the type from the caps but rather
using the type as provided in the function. This is a lot
cleaner. Implement MS RLE palette pickup.
* ext/ffmpeg/gstffmpegcolorspace.c: (gst_ffmpegcsp_pad_link):
* ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_connect):
Sync with the above function name changes.
* ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_close),
(gst_ffmpegdec_open), (gst_ffmpegdec_connect),
(gst_ffmpegdec_chain), (gst_ffmpegdec_change_state):
Add some hacks to convert palette-based raw image formats to
RGBA32. Ugly, but I don't know how else to handle palette-based
RGB, since img_convert() (and thus ffcolorspace) doesn't accept
a palette as argument.
2004-04-16 01:28:36 +00:00
Ronald S. Bultje
009ca0c1f5 ext/ffmpeg/gstffmpegcodecmap.c: Add MS Video v1 (video/x-msvideocodec, CODEC_ID_MSVIDEO1).
Original commit message from CVS:
* ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps):
Add MS Video v1 (video/x-msvideocodec, CODEC_ID_MSVIDEO1).
2004-04-11 21:40:01 +00:00
David Schleef
a4981be0fe ext/ffmpeg/gstffmpegcodecmap.c: Change variadic macro to ISO form. (bug #139460)
Original commit message from CVS:
* ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps):
Change variadic macro to ISO form.  (bug #139460)
2004-04-09 06:20:31 +00:00
Benjamin Otte
50a9ae3608 ext/ffmpeg/: fix memleaks
Original commit message from CVS:
* ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_register):
* ext/ffmpeg/gstffmpegdemux.c: (gst_ffmpegdemux_register):
fix memleaks
2004-04-06 18:25:55 +00:00
David Schleef
9d13ff6b53 ext/ffmpeg/gstffmpegdemux.c: Fix memleaks (bug #138985)
Original commit message from CVS:
reviewed by: David Schleef  <ds@schleef.org>
* ext/ffmpeg/gstffmpegdemux.c: (gst_ffmpegdemux_register):  Fix
memleaks (bug #138985)
2004-04-03 22:35:30 +00:00
Thomas Vander Stichele
7383aa1baa indent
Original commit message from CVS:
indent
2004-03-29 16:39:18 +00:00
Ronald S. Bultje
d5cfdabbd8 ext/ffmpeg/: Fix category.
Original commit message from CVS:
* ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_base_init):
* ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_base_init):
Fix category.
* ext/ffmpeg/gstffmpegdemux.c: (gst_ffmpegdemux_class_init),
(gst_ffmpegdemux_init), (gst_ffmpegdemux_close):
Slightly rewrite the init function, old one was ugly. Also remove
dispose function since it's obsolete, the change_state function
cleans up already. Also fixes segfault in test-app
gstreamer/tests/instantiate/create
2004-03-25 05:14:10 +00:00
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
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
Wim Taymans
4e51fe4fb6 Make sure caps are reffed as we're still have a pointer to it.
Original commit message from CVS:
Make sure caps are reffed as we're still have a pointer to it.
2003-01-26 00:07:40 +00:00
Ronald S. Bultje
17f2e68a7b Add xvid
Original commit message from CVS:
Add xvid
2003-01-25 13:55:27 +00:00
David I. Lehn
3a0476127a check for type register failures
Original commit message from CVS:
check for type register failures
2003-01-20 18:22:00 +00:00
Wim Taymans
ee27cce6f3 Fix codecs
Original commit message from CVS:
Fix codecs
2003-01-19 23:39:59 +00:00
David I. Lehn
7e51a8b664 lower sample_rate property minimum value to -1 to accoutn for default of -1
Original commit message from CVS:
lower sample_rate property minimum value to -1 to accoutn for default of -1
2003-01-18 21:36:25 +00:00
Wim Taymans
ca19435d7a Fix dipose, removed g_print
Original commit message from CVS:
Fix dipose, removed g_print
2003-01-18 15:59:18 +00:00
Wim Taymans
dd34f1fefa Map XVID to mpeg4
Original commit message from CVS:
Map XVID to mpeg4
2003-01-18 15:54:25 +00:00
Iain Holmes
446e4c8d67 Lower the rank of ffmpeg
Original commit message from CVS:
Lower the rank of ffmpeg
2003-01-13 17:58:58 +00:00
Jan Schmidt
006c1836e0 Correcting typos in the mime types: "unkown/unkown" -> "unknown/unknown"
Original commit message from CVS:
Correcting typos in the mime types: "unkown/unkown" -> "unknown/unknown"
2003-01-13 13:56:31 +00:00
Wim Taymans
cb9f0ff232 Only close the codec if we opened it
Original commit message from CVS:
Only close the codec if we opened it
2003-01-12 01:05:29 +00:00
Thomas Vander Stichele
10706fe9ee more link fixes
Original commit message from CVS:
more link fixes
2003-01-10 23:03:07 +00:00