Commit graph

256 commits

Author SHA1 Message Date
Ronald S. Bultje
26fe995a13 gst/: Add MS RLE support. I added some functions to read out strf chunks into strf chunks and the data behind it. Thi...
Original commit message from CVS:
reviewed by: <delete if not using a buddy>
* gst-libs/gst/riff/riff-media.c:
(gst_riff_create_video_caps_with_data),
(gst_riff_create_video_caps), (gst_riff_create_audio_caps),
(gst_riff_create_video_template_caps),
(gst_riff_create_audio_template_caps):
* gst-libs/gst/riff/riff-media.h:
* gst-libs/gst/riff/riff-read.c:
(gst_riff_read_strf_vids_with_data), (gst_riff_read_strf_vids):
* gst-libs/gst/riff/riff-read.h:
* gst/avi/gstavidemux.c: (gst_avi_demux_add_stream):
Add MS RLE support. I added some functions to read out strf chunks
into strf chunks and the data behind it. This is usually color
palettes (as in RLE, but also in 8-bit RGB). Also use those during
caps creation. Lastly, add ADPCM (similar to wavparse - which
should eventually be rifflib based).
* gst/matroska/matroska-demux.c: (gst_matroska_demux_class_init),
(gst_matroska_demux_init), (gst_matroska_demux_reset):
* gst/matroska/matroska-demux.h:
Remove placeholders for some prehistoric tagging system. Didn't add
support for any tag system really anyway.
* gst/qtdemux/qtdemux.c:
Add support for audio/x-m4a (MPEG-4) through spider.
* gst/wavparse/gstwavparse.c: (gst_wavparse_parse_fmt),
(gst_wavparse_loop):
ADPCM support (#135862). Increase max. buffer size because we
cannot split buffers for ADPCM (screws references) and I've seen
files with 2048 byte chunks. 4096 seems safe for now.
2004-04-16 01:20:44 +00:00
David Schleef
4e902f5346 gst/qtdemux/qtdemux.c: Fix debugging messages. Divide the chunk size by the compression ratio (needed for MACE audio)
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_handle_sink_event),
(gst_qtdemux_loop_header), (qtdemux_parse_moov), (qtdemux_parse),
(qtdemux_node_dump_foreach), (qtdemux_dump_mvhd),
(qtdemux_dump_tkhd), (qtdemux_dump_elst), (qtdemux_dump_mdhd),
(qtdemux_dump_hdlr), (qtdemux_dump_vmhd), (qtdemux_dump_dref),
(qtdemux_dump_stsd), (qtdemux_dump_stts), (qtdemux_dump_stss),
(qtdemux_dump_stsc), (qtdemux_dump_stsz), (qtdemux_dump_stco),
(qtdemux_dump_co64), (qtdemux_dump_dcom), (qtdemux_dump_cmvd),
(qtdemux_parse_tree), (qtdemux_parse_trak):  Fix debugging
messages.  Divide the chunk size by the compression ratio
(needed for MACE audio)
2004-03-24 08:33:06 +00:00
Thomas Vander Stichele
6cc1c73d2b don't mix tabs and spaces
Original commit message from CVS:
don't mix tabs and spaces
2004-03-15 19:32:27 +00:00
Johan Dahlin
5acffea623 *.h: Revert indenting
Original commit message from CVS:
* *.h: Revert indenting
2004-03-15 16:32:54 +00:00
Thomas Vander Stichele
5d25c00e4b gst-indent
Original commit message from CVS:
gst-indent
2004-03-14 22:34:33 +00:00
Ronald S. Bultje
9a78b5acf6 gst/qtdemux/qtdemux.c: Fix for obvious mistake, where we first shift the offset and then read a samplesize element as...
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (qtdemux_parse_trak):
Fix for obvious mistake, where we first shift the offset and then
read a samplesize element assuming the old offset. Note that this
part still has something weird, i.e. my movies containing those
don't actually play well, but at least there's something that looks
like sound now.
2004-03-14 05:43:33 +00:00
David Schleef
7193017158 gst/qtdemux/qtdemux.c: Added Cinepak format (bug #136470)
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (qtdemux_video_caps):  Added Cinepak
format (bug #136470)
2004-03-07 22:07:20 +00:00
Ronald S. Bultje
9665e6768f gst/qtdemux/qtdemux.c: Fix crash (j might be greater than n_samples, in which case we're writing outside the allocate...
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_add_stream),
(qtdemux_parse_trak):
Fix crash (j might be greater than n_samples, in which case we're
writing outside the allocated space for the array) and memleak.
2004-03-07 04:03:27 +00:00
David Schleef
9331801a62 ext/faad/gstfaad.c: Fix negotiation.
Original commit message from CVS:
* ext/faad/gstfaad.c: (gst_faad_init), (gst_faad_srcgetcaps),
(gst_faad_chain): Fix negotiation.
* ext/librfb/gstrfbsrc.c: (gst_rfbsrc_handle_src_event): Add
key and button events.
* gst-libs/gst/floatcast/floatcast.h: Fix a minor bug in this
dung heap of code.
* gst-libs/gst/gconf/gstreamer-gconf-uninstalled.pc.in: gstgconf
depends on gconf
* gst-libs/gst/gconf/gstreamer-gconf.pc.in: same
* gst-libs/gst/play/play.c: (gst_play_pipeline_setup),
(gst_play_video_fixate), (gst_play_audio_fixate): Add a fixate
function to encourage better negotiation, particularly between
audioconvert and osssink.
* gst/audioconvert/gstaudioconvert.c: (gst_audio_convert_chain):
* gst/qtdemux/qtdemux.c: (qtdemux_parse_trak):  Make some debugging
more important.
* gst/typefind/gsttypefindfunctions.c:  Fix mistake in flash
typefinding.
* gst/vbidec/vbiscreen.c:  Add glib header
* pkgconfig/gstreamer-play.pc.in:  Depends on gst-interfaces.
2004-03-06 00:42:19 +00:00
David Schleef
29926c75c5 gst/qtdemux/qtdemux.c: Add prototype code for handling seeking and querying.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_get_src_formats),
(gst_qtdemux_src_convert), (gst_qtdemux_get_src_query_types),
(gst_qtdemux_get_event_mask), (gst_qtdemux_handle_src_query),
(gst_qtdemux_handle_src_event), (gst_qtdemux_add_stream):
Add prototype code for handling seeking and querying.
2004-03-05 08:37:01 +00:00
David Schleef
e913ff5a5a gst/qtdemux/qtdemux.c: Cleanups. Convert g_prints to GST_LOGs. Add qtdemux debug category. Attempt to fix timestam...
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (plugin_init), (gst_qtdemux_loop_header),
(qtdemux_parse_moov), (qtdemux_parse), (qtdemux_node_dump_foreach),
(qtdemux_dump_mvhd), (qtdemux_dump_tkhd), (qtdemux_dump_elst),
(qtdemux_dump_mdhd), (qtdemux_dump_hdlr), (qtdemux_dump_vmhd),
(qtdemux_dump_dref), (qtdemux_dump_stsd), (qtdemux_dump_stts),
(qtdemux_dump_stss), (qtdemux_dump_stsc), (qtdemux_dump_stsz),
(qtdemux_dump_stco), (qtdemux_dump_co64), (qtdemux_dump_dcom),
(qtdemux_dump_cmvd), (qtdemux_parse_tree), (qtdemux_parse_trak):
Cleanups.  Convert g_prints to GST_LOGs.  Add qtdemux debug
category.  Attempt to fix timestamp calculation.
2004-02-24 17:17:56 +00:00
Benjamin Otte
3923455478 ext/xine/: add first version of xine plugin wrapper. Currently only wraps the
Original commit message from CVS:
2004-02-20  Benjamin Otte  <otte@gnome.org>

* ext/xine/Makefile.am:
* ext/xine/gstxine.h:
* ext/xine/xine.c:
* ext/xine/xineaudiodec.c:
* ext/xine/xinecaps.c:
add first version of xine plugin wrapper. Currently only wraps the
QDM2 win32 DLL, and even that only in proof-of-concept quality.
* configure.ac:
* ext/Makefile.am:
add xine plugin wrapper, disabled by default. Use --enable-xine to
build. Note that it'll segfault on gst-register if you don't remove
the goom and tvtime post plugins from xine.
* gst/qtdemux/qtdemux.c: (gst_qtdemux_handle_sink_event),
(qtdemux_parse), (qtdemux_parse_trak), (qtdemux_audio_caps):
add extradata parsing for QDM2.
change around debugging prints.
2004-02-20 00:52:07 +00:00
Benjamin Otte
801b7221ac gst/qtdemux/qtdemux.c: set explicit caps before adding the element, so the autopluggers can plug correctly.
Original commit message from CVS:
2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>

* gst/qtdemux/qtdemux.c: (gst_qtdemux_add_stream):
set explicit caps before adding the element, so the autopluggers can
plug correctly.
* gst/typefind/gsttypefindfunctions.c: (mp3_type_find),
(mpeg2_sys_type_find), (mpeg1_sys_type_find),
(mpeg_video_type_find), (mpeg_video_stream_type_find),
(dv_type_find):
fix memleaks in typefind functions. gst_type_find_suggest takes a const
argument.
2004-02-03 18:42:48 +00:00
Jeremy Simon
98fc4bf118 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:35 +00:00
David Schleef
51db8f1fe2 ext/esd/esdsink.c: Remove property that handles osssink fallback.
Original commit message from CVS:
* ext/esd/esdsink.c: (gst_esdsink_class_init): Remove property
that handles osssink fallback.
* gst/audioconvert/gstaudioconvert.c: (gst_audio_convert_init),
(gst_audio_convert_getcaps):
* gst/qtdemux/qtdemux.c: (qtdemux_audio_caps):
Add audio/x-qdm2 for QDM2 audio.
* gst/sine/gstsinesrc.c: (gst_sinesrc_get):
* gst/sine/gstsinesrc.h: Add example of how to implement tags.
* gst/videoscale/gstvideoscale.c: (gst_videoscale_getcaps):
Decrease minimum size to 16x16.
* gst/wavparse/gstwavparse.c:
Convert disabled pad template caps to new caps.
* sys/ximage/ximagesink.c: (gst_ximagesink_xcontext_get):
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_xcontext_get),
(gst_xvimagesink_chain): Throw element error when display cannot
be opened.  Increase minimum framerate to 1.0.  Check the data
free function on a buffer to make sure it is the type we expect
before manipulating it.
2004-01-15 21:05:17 +00:00
Benjamin Otte
b6b01d96ac gst/qtdemux/qtdemux.c: fix audio chunk size/timestamp calculation
Original commit message from CVS:
2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>

* gst/qtdemux/qtdemux.c: (gst_qtdemux_loop_header),
(qtdemux_parse_trak):
fix audio chunk size/timestamp calculation
2004-01-11 17:49:56 +00:00
David Schleef
7a85d6c13a Change sink pad template caps to "video/quicktime"
Original commit message from CVS:
Change sink pad template caps to "video/quicktime"
2004-01-03 11:18:56 +00:00
David Schleef
6c1b114eed 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:23 +00:00
Benjamin Otte
07a0396381 gst/qtdemux/qtdemux.c: qtdemux requires bytestream
Original commit message from CVS:
2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>

* gst/qtdemux/qtdemux.c: (plugin_init):
qtdemux requires bytestream
2003-12-22 19:05:34 +00:00
David Schleef
ce51f6173c Merge CAPS branch
Original commit message from CVS:
Merge CAPS branch
2003-12-22 01:47:09 +00:00
Ronald S. Bultje
76a5c85de7 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:49 +00:00
Andy Wingo
e46d34995d remove copyright field from plugins
Original commit message from CVS:
remove copyright field from plugins
2003-12-04 10:37:38 +00:00
David Schleef
f1d94660c5 Change everyone to video/x-msvideo
Original commit message from CVS:
Change everyone to video/x-msvideo
2003-11-27 21:49:39 +00:00
Iain Holmes
9c81eec41c Added audio/x-m4a to the sink caps
Original commit message from CVS:
Added audio/x-m4a to the sink caps
2003-11-27 17:35:00 +00:00
Benjamin Otte
8b4dbbc044 add a rank to allow autoplugging
Original commit message from CVS:
add a rank to allow autoplugging
2003-11-24 15:25:21 +00:00
David Schleef
e9b809fdba change video/x-jpeg to image/jpeg
Original commit message from CVS:
change video/x-jpeg to image/jpeg
2003-11-10 22:47:38 +00:00
Jeremy Simon
a8fcbcd43b Do not demux only 2 trak atoms
Original commit message from CVS:
Do not demux only 2 trak atoms
2003-11-07 20:36:47 +00:00
Ronald S. Bultje
fbdc88a45f Quicktime demuxer ported to new interface
Original commit message from CVS:
Quicktime demuxer ported to new interface
2003-11-02 21:45:18 +00:00
David Schleef
ce372fab75 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:55 +00:00
Benjamin Otte
c9ae463a4f 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:41 +00:00
Andy Wingo
f2d5cae8da /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:08:18 +00:00
Ronald S. Bultje
38946080fd 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:52 +00:00
David Schleef
37fe79eef2 Remove redundant plugindir definition
Original commit message from CVS:
Remove redundant plugindir definition
2003-08-10 00:01:58 +00:00
Leif Johnson
7b0389b09c + the last of the float caps changes ... these are a bit more pervasive
Original commit message from CVS:
+ the last of the float caps changes ... these are a bit more pervasive
2003-07-19 23:47:41 +00:00
Ronald S. Bultje
292fec2a0b 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:52 +00:00
Benjamin Otte
90da904f1e 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:46:12 +00:00
David Schleef
bbf74571a7 "My way" turned out to cause seg faults. :) Fixed, and added more fourcc to caps conversions.
Original commit message from CVS:
"My way" turned out to cause seg faults.  :)  Fixed, and added
more fourcc to caps conversions.
2003-06-23 07:04:40 +00:00
David Schleef
d1b4db094c Revert last two changes and do it my way. :)
Original commit message from CVS:
Revert last two changes and do it my way.  :)
2003-06-19 19:36:26 +00:00
Brian Cameron
f46b1af7c2 Support ISO-style variable argument macros.
Original commit message from CVS:
Support ISO-style variable argument macros.
2003-06-19 17:27:23 +00:00
Ronald S. Bultje
98db832871 which causes a segfault. I'm working on that
Original commit message from CVS:
This adds width/height properties to qtdemux, so that it connects to ffdec_*... still doesn't work, because the buffer allocation in ffdec_ allocs too small buffers (edge emulation failure or so?), which causes a segfault. I'm working on that
2003-06-17 10:46:32 +00:00
David Schleef
7951409932 Handle compressed headers. Fix inappropriate use of bytestream_flush().
Original commit message from CVS:
Handle compressed headers.  Fix inappropriate use of bytestream_flush().
Code cleanup.  Added getcaps and _link functions for src pads.  Extract
and set the size,rate,channels correctly.  Fix some of the caps to
agree with avidemux and/or ffmpeg.
2003-06-16 17:39:26 +00:00
David Schleef
f75ff8a6e7 Fix some of the fourcc to caps conversions. reenable setting of rate and n channels on audio caps.
Original commit message from CVS:
Fix some of the fourcc to caps conversions.  reenable setting of rate
and n channels on audio caps.
2003-06-15 02:57:53 +00:00
David Schleef
d6decc3112 Complete rewrite. Not finished, nothing to see here.
Original commit message from CVS:
Complete rewrite.  Not finished, nothing to see here.
2003-06-10 06:23:42 +00:00
Brian Cameron
1bc371768a Removed needless ; at the end of GST_PAD_TEMPLATE_FACTORY calls, which were causing non-gcc compilers to break.
Original commit message from CVS:
Removed needless ; at the end of GST_PAD_TEMPLATE_FACTORY calls, which
were causing non-gcc compilers to break.
2003-05-22 11:04:31 +00:00
David Schleef
df0b94aae4 Change %lld, %llu to G_G[U]INT64_FORMAT globally. Fix bad pointer->integer conversion.
Original commit message from CVS:
Change %lld, %llu to G_G[U]INT64_FORMAT globally.  Fix bad pointer->integer
conversion.
2003-02-02 05:26:29 +00:00
Thomas Vander Stichele
b19d0bd840 don't segfault when data didn't make it in
Original commit message from CVS:
don't segfault when data didn't make it in
2003-01-18 18:10:53 +00:00
Thomas Vander Stichele
be876ae577 another batch of connect->link fixes please let me know about issues and please refrain of making them yourself, so t...
Original commit message from CVS:
another batch of connect->link fixes
please let me know about issues
and please refrain of making them yourself, so that I don't spend double
the time resolving conflicts
2003-01-10 10:22:25 +00:00
Thomas Vander Stichele
e16c50551b parallel install fixes
Original commit message from CVS:
parallel install fixes
2002-12-08 14:50:09 +00:00
Christian Schaller
2ff64d483e plugins part of license field patch
Original commit message from CVS:
plugins part of license field patch
2002-09-18 19:02:51 +00:00
Thomas Vander Stichele
4ec41347e2 removing warnings (approved by wtay)
Original commit message from CVS:
removing warnings (approved by wtay)
2002-09-09 23:24:29 +00:00
Steve Baker
0db159065c qtdemux.c:315: warning: implicit declaration of function `free' qtdemux.c:331: warning: implicit declaration of funct...
Original commit message from CVS:
qtdemux.c:315: warning: implicit declaration of function `free'
qtdemux.c:331: warning: implicit declaration of function `malloc'
2002-08-11 11:31:42 +00:00
Thomas Vander Stichele
b237a49772 rearranging element tree
Original commit message from CVS:
rearranging element tree
2002-06-08 09:15:07 +00:00
Steve Baker
afd592b066 add ranks only for plugins who participate in autoplugging. If you have a file that used to autoplug but doesn't any...
Original commit message from CVS:
add ranks only for plugins who participate in autoplugging.  If you have a file that used to autoplug but doesn't anymore, then let me know or add a rank to the missing element.
2002-05-31 08:24:31 +00:00
Steve Baker
163076dd9e use new bytestream api
Original commit message from CVS:
use new bytestream api
2002-05-15 19:08:49 +00:00
Thomas Vander Stichele
57df009f45 conformity
Original commit message from CVS:
conformity
2002-05-13 14:51:01 +00:00
Artyom Baginski
56efeff3b4 adding new quicktime parser:
Original commit message from CVS:
adding new quicktime parser:
- openquicktime free (hense gst/qtdemux)
- no more seeks for parsing -> better for network streams
- uses GstByteStream
- less memcpy's
- long ChangeLog record in pompous style
2002-05-01 18:41:59 +00:00