Commit graph

274 commits

Author SHA1 Message Date
Ronald S. Bultje
4c5a143726 gst/mpegaudioparse/gstmpegaudioparse.c: Fix header parsing - stolen from ffmpeg (thank you! :) ).
Original commit message from CVS:
2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>

* gst/mpegaudioparse/gstmpegaudioparse.c:
(mp3_type_frame_length_from_header):
Fix header parsing - stolen from ffmpeg (thank you! :) ).
2004-01-30 14:23:18 +00:00
Thomas Vander Stichele
92eb19b993 GST_ELEMENT_ERROR
Original commit message from CVS:
GST_ELEMENT_ERROR
2004-01-29 23:20:45 +00:00
Ronald S. Bultje
8b821fcb23 gst/mpeg1videoparse/gstmp1videoparse.c: Committed wrong version last week... Grr... Didn't notice until now.
Original commit message from CVS:
2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>

* gst/mpeg1videoparse/gstmp1videoparse.c:
(gst_mp1videoparse_real_chain):
Committed wrong version last week... Grr... Didn't notice until now.
2004-01-29 16:00:55 +00:00
Jeremy Simon
71dff05e68 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
Julien Moutte
a77fcb5d88 gst-libs/gst/play/gstplay.c: Another try in visualization implementation. Still have an issue with switch blocking wh...
Original commit message from CVS:
2004-01-25  Julien MOUTTE  <julien@moutte.net>

* gst-libs/gst/play/gstplay.c: (gst_play_pipeline_setup),
(gst_play_identity_handoff), (gst_play_set_location),
(gst_play_set_visualization), (gst_play_connect_visualization): Another
try in visualization implementation. Still have an issue with switch
blocking when pulling from video_queue and only audio comes out of
spider.
* gst/switch/gstswitch.c: (gst_switch_release_pad),
(gst_switch_poll_sinkpads), (gst_switch_class_init): Implementing pad
release method. And check if the pad is usable before pulling.
2004-01-25 12:28:05 +00:00
Ronald S. Bultje
858534caa0 gst-libs/gst/riff/riff-read.c: Additional pad usability check.
Original commit message from CVS:
2004-01-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>

* gst-libs/gst/riff/riff-read.c: (gst_riff_read_info):
Additional pad usability check.
* gst/mpeg1videoparse/gstmp1videoparse.c: (gst_mp1videoparse_init),
(mp1videoparse_find_next_gop), (gst_mp1videoparse_time_code),
(gst_mp1videoparse_real_chain):
Fix MPEG video stream parsing. The original plugin had several
issues, including not timestamping streams where the source was
not timestamped (this happens with PTS values in mpeg system
streams, but MPEG video is also a valid stream on its own so
that needs timestamps too). We use the display time code for that
for now. Also, if one incoming buffer contains multiple valid
frames, we push them all on correctly now, including proper EOS
handling. Lastly, several potential segfaults were fixed, and we
properly sync on new sequence/gop headers to include them in next,
not previous frames (since they're header for the next frame, not
the previous). Also see #119206.
* gst/mpegaudioparse/gstmpegaudioparse.c: (gst_mp3parse_chain),
(bpf_from_header):
Move caps setting so we only do it after finding several valid
MPEG-1 fraes sequentially, not right after the first one (which
might be coincidental).
* gst/typefind/gsttypefindfunctions.c: (mpeg1_sys_type_find),
(mpeg_video_type_find), (mpeg_video_stream_type_find),
(plugin_init):
Add unsynced MPEG video stream typefinding, and change some
probability values so we detect streams rightly. The idea is as
follows: I can have an unsynced system stream which contains
video. In the current code, I would randomly get a type for either
system or video stream type found, because the probabilities are
being calculated rather randomly. I now use fixed values, so we
always prefer system stream if that was found (and that is how it
should be). If no system stream was found, we can still identity
the stream as video-only.
2004-01-25 00:25:16 +00:00
Julien Moutte
b733064d2f gst/switch/gstswitch.c: Fixed switch element : proxying link and setting caps from src to sink on request.
Original commit message from CVS:
2004-01-20  Julien MOUTTE  <julien@moutte.net>

* gst/switch/gstswitch.c: (gst_switch_request_new_pad),
(gst_switch_init): Fixed switch element : proxying link and setting
caps from src to sink on request.
2004-01-19 23:23:54 +00:00
Thomas Vander Stichele
088c8da66f parenthising NULL
Original commit message from CVS:
parenthising NULL
2004-01-19 10:00:01 +00:00
Thomas Vander Stichele
07ed811a09 use new error signal and classification
Original commit message from CVS:
use new error signal and classification
2004-01-18 21:46:58 +00:00
Christian Schaller
829d2e7c0a fix to make it possible to build from disted tarball
Original commit message from CVS:
fix to make it possible to build from disted tarball
2004-01-18 19:02:33 +00:00
David Schleef
7d64f26d25 gst-libs/gst/audio/Makefile.am: Add gstaudiofiltertemplate.c and building of gstaudiofilterexample.c from the template.
Original commit message from CVS:
* gst-libs/gst/audio/Makefile.am:
Add gstaudiofiltertemplate.c and building of gstaudiofilterexample.c
from the template.
* gst-libs/gst/audio/gstaudiofilter.c:
* gst-libs/gst/audio/gstaudiofilter.h:
Add bytes_per_sample and size and n_samples calculation.
* gst-libs/gst/audio/gstaudiofilterexample.c:
Remove, now autogenerated.
* gst-libs/gst/audio/gstaudiofiltertemplate.c:
Moved from gstaudiofilterexample, object name changed, code added
so that it actually works.
* gst-libs/gst/audio/make_filter:
Script to build an audiofilter subclass from the template.
* gst/colorspace/Makefile.am:
* gst/colorspace/yuv2yuv.c:
Remove file, since it's GPL, and we don't use it.
2004-01-16 00:55:29 +00:00
David Schleef
1536c982d2 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
Ronald S. Bultje
410421d10f gst/colorspace/: Fix compiling... Didn't test if it actually works.
Original commit message from CVS:
2004-01-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>

* gst/colorspace/gstcolorspace.c:
* gst/colorspace/yuv2yuv.c: (gst_colorspace_yuy2_to_i420),
(gst_colorspace_i420_to_yv12):
Fix compiling... Didn't test if it actually works.
2004-01-15 10:45:55 +00:00
David Schleef
4910efb9b7 Duplicate the ext/hermes colorspace plugin, and remove Hermes code and GPL code. Fix for new caps negotiation. Rewr...
Original commit message from CVS:
* configure.ac:
* gst/colorspace/Makefile.am:
* gst/colorspace/gstcolorspace.c:
* gst/colorspace/gstcolorspace.h:
* gst/colorspace/yuv2rgb.c:
* gst/colorspace/yuv2rgb.h:
Duplicate the ext/hermes colorspace plugin, and remove Hermes
code and GPL code.  Fix for new caps negotiation.  Rewrite
much of the format handling code, and some of the conversion
code.  Basically, rewrote almost everything.  This element
handles I420, YV12 to RGB conversions.
* ext/hermes/Makefile.am:
* ext/hermes/gsthermescolorspace.c:
Rename colorspace to hermescolorspace.  Fix negotiation issues.
Remove non-Hermes related code.  This element handles lots of
RGB to RGB conversions, but no YUV.
* ext/hermes/gstcolorspace.c:
* ext/hermes/gstcolorspace.h:
* ext/hermes/rgb2yuv.c:
* ext/hermes/yuv2rgb.c:
* ext/hermes/yuv2rgb.h:
* ext/hermes/yuv2rgb_mmx16.s:
* ext/hermes/yuv2yuv.c:
* ext/hermes/yuv2yuv.h:
Remove old code.
2004-01-15 08:58:22 +00:00
David Schleef
0a62d3b4e8 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:47 +00:00
Benjamin Otte
f768ab94c7 gst-libs/gst/video/video.h: Fix caps template names to be understandable.
Original commit message from CVS:
2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>

* gst-libs/gst/video/video.h:
Fix caps template names to be understandable.
Prefix everything with GST_VIDEO.
* ext/aalib/gstaasink.c:
* ext/divx/gstdivxdec.c:
* ext/divx/gstdivxenc.c:
* ext/gdk_pixbuf/gstgdkpixbuf.c:
* ext/hermes/gstcolorspace.c: (gst_colorspace_base_init):
* ext/jpeg/gstjpegdec.c: (raw_caps_factory):
* ext/jpeg/gstjpegenc.c: (raw_caps_factory):
* ext/libcaca/gstcacasink.c:
* ext/libpng/gstpngenc.c: (raw_caps_factory):
* ext/snapshot/gstsnapshot.c:
* ext/swfdec/gstswfdec.c:
* ext/xvid/gstxviddec.c:
* ext/xvid/gstxvidenc.c:
* gst/chart/gstchart.c:
* gst/deinterlace/gstdeinterlace.c:
* gst/effectv/gsteffectv.c:
* gst/flx/gstflxdec.c: (gst_flxdec_loop):
* gst/goom/gstgoom.c:
* gst/median/gstmedian.c:
* gst/monoscope/gstmonoscope.c: (gst_monoscope_init),
(gst_monoscope_srcconnect), (gst_monoscope_chain):
* gst/overlay/gstoverlay.c:
* gst/smooth/gstsmooth.c:
* gst/smpte/gstsmpte.c:
* gst/synaesthesia/gstsynaesthesia.c:
* gst/videocrop/gstvideocrop.c:
* gst/videodrop/gstvideodrop.c:
* gst/y4m/gsty4mencode.c:
* sys/qcam/gstqcamsrc.c:
* sys/v4l/gstv4lsrc.c: (gst_v4lsrc_palette_to_caps):
Make them work with new video.h file.
* sys/ximage/ximagesink.c: (gst_ximagesink_chain),
(gst_ximagesink_buffer_free), (gst_ximagesink_buffer_alloc):
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_chain),
(gst_xvimagesink_buffer_free), (gst_xvimagesink_buffer_alloc):
Make it work with new buffer allocation system.
2004-01-12 02:01:52 +00:00
Benjamin Otte
96bbccf5ef 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
Julien Moutte
fa66fa64c5 configure.ac: Adding examples/switch/Makefile
Original commit message from CVS:
2004-01-11  Julien MOUTTE  <julien@moutte.net>

* configure.ac: Adding examples/switch/Makefile
* examples/Makefile.am: Adding examples/switch
* examples/switch/Makefile.am: Adding switcher example.
* examples/switch/switcher.c: (got_eos), (idle_iterate),
(switch_timer), (main): Adding an example demonstrating switch usage
with 2 videotestsrc showing different patterns.
* gst/switch/gstswitch.c: (gst_switch_request_new_pad),
(gst_switch_init): Fixing switch with the new caps system.
2004-01-11 17:32:37 +00:00
David Schleef
8c1615554b Fix negotiation
Original commit message from CVS:
Fix negotiation
2004-01-08 21:53:32 +00:00
Thomas Vander Stichele
f9f4e7934e fix element description
Original commit message from CVS:
fix element description
2004-01-07 16:50:31 +00:00
David Schleef
32908914a4 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
7b159d505f Negotiation fixes
Original commit message from CVS:
Negotiation fixes
2004-01-02 07:25:10 +00:00
David Schleef
ab8b696754 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
4c8183523f 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
b144bc6c58 Merge CAPS branch
Original commit message from CVS:
Merge CAPS branch
2003-12-22 01:47:09 +00:00
Ronald S. Bultje
2309d726b7 Fix error in my previous commit - NULL was accidentily removed, leading to a segfault in gst-register
Original commit message from CVS:
Fix error in my previous commit - NULL was accidentily removed, leading to a segfault in gst-register
2003-12-21 22:13:42 +00:00
Ronald S. Bultje
967aca777e configure.ac: Improve mpeg2enc detection. This is for distributions that do ship mjpegtools, but without mpeg2enc. Al...
Original commit message from CVS:
2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>

* configure.ac:
Improve mpeg2enc detection. This is for distributions that do
ship mjpegtools, but without mpeg2enc. Also does object check
for might there ever be ABI incompatibility.
* ext/mpeg2enc/gstmpeg2enc.cc:
Add Andrew as second maintainer (he's helping me), and also add
an error if no caps was set. This happens if I pull before capsnego
and that's something I should solve sometime else.
* gst/matroska/matroska-demux.c:
(gst_matroska_demux_parse_blockgroup):
Fix time parsing.
* gst/matroska/matroska-mux.c: (gst_matroska_mux_audio_pad_link),
(gst_matroska_mux_track_header):
Add caps to templates.
* gst/mpegaudioparse/gstmpegaudioparse.c: (mp3_sink_factory):
Add mpegversion=1 to prevent confusion with MPEG/AAC.
* gst/mpegstream/gstmpegdemux.c:
Remove layer since it causes warnings about unfixed caps.
* gst/videotestsrc/gstvideotestsrc.c: (gst_videotestsrc_get):
Fix obvious typo (we error out if caps were set, we should of
course error out if *no* caps were set).
* sys/oss/gstosselement.c: (gst_osselement_convert):
Fix format conversion, we confused bits/bytes.
* sys/oss/gstosselement.h:
Improve documentation for 'bps'.
* sys/v4l/TODO:
Remove stuff about plugins that need removing - this was done
ages ago.
* sys/v4l/gstv4lmjpegsrc.c: (gst_v4lmjpegsrc_init),
(gst_v4lmjpegsrc_src_convert), (gst_v4lmjpegsrc_src_query):
* sys/v4l/gstv4lsrc.c: (gst_v4lsrc_init), (gst_v4lsrc_src_convert),
(gst_v4lsrc_src_query):
* sys/v4l2/gstv4l2src.c: (gst_v4l2src_init),
(gst_v4l2src_src_convert), (gst_v4l2src_src_query):
Add get_query_types(), get_formats() and query() functions.
2003-12-21 18:44:34 +00:00
Ronald S. Bultje
6382c57f0e Sorry Dave... Add mpegversion=1 to mp3 caps everywhere so that the autoplugger uses mad and not faad for mp3 decoding...
Original commit message from CVS:
Sorry Dave... Add mpegversion=1 to mp3 caps everywhere so that the autoplugger uses mad and not faad for mp3 decoding. This should fix mp3 playback.
2003-12-18 09:31:50 +00:00
Ronald S. Bultje
1c1767f82e Implement something to make video play faster/slower
Original commit message from CVS:
Implement something to make video play faster/slower
2003-12-09 23:08:17 +00:00
Julien Moutte
537891db41 Adding a new plugin: switch.
Original commit message from CVS:
Adding a new plugin: switch.

It takes N input and only has 1 output. You can "switch" the forwarded input through properties ("nb_sources", "active_source") and i will probably add tuner interface support soon.

It should be able to handle any kind of data passing through it.

It is still a work in progress don't consider it usable for production yet.
2003-12-08 20:01:01 +00:00
Andy Wingo
e69ece9d7e 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
6828fe2567 change _connect to _link
Original commit message from CVS:
change _connect to _link
2003-12-02 02:28:13 +00:00
David Schleef
502d87b8b4 Change everyone to video/x-msvideo
Original commit message from CVS:
Change everyone to video/x-msvideo
2003-11-27 21:48:40 +00:00
Iain Holmes
b1cf10ff2e 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
1ec681f8ac 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
Benjamin Otte
803ff8f49c tagging stuff and build fixes. In detail:
Original commit message from CVS:
tagging stuff and build fixes. In detail:
- make gdk-pixbuf loader work when distchecking
- fix invalid syntax in ffmpeg Makefile. wildcards for EXTRA_DIST are not allowed. This broke builds where distdir != srcdir
- fix ffmpeg cvs grabbing when srcdir != distdir
- new id3tag plugin for id3 tag reading/writing (uses mad's libid3tag)
- mad and libid3tag require mad/libid3tag v0.15. Fixed configure to require that
- added ogg demuxer in ext/ogg. The demuxer does not handle events yet. Especially getting seeking right will require some effort or code copying from libvorbis.
- added raw vorbis detection to typefinding. oggdemux requires a typefind function to detect its contents.
- tags plugin in gst/tags. Provides API in <gst/tags/gsttagediting.h>. API includes tag matching GStreamer <=> ID3 and GStreamer <=> vorbis and writing/reading vorbiscomments or ID3v1 tags. Also included is a simple vorbiscomment reader/writer. Writing will not really work though until someone writes oggmux.
- various build fixes. Mostly missing (DIST)CLEANFILES.
- vorbisenc handles tag writing.

Now it's YOUR turn to fix and write more plugins that handle writing/reading of tags. :)
2003-11-24 04:08:47 +00:00
Leif Johnson
5b283c92b6 + checking in plugin category changes
Original commit message from CVS:
+ checking in plugin category changes
2003-11-16 22:02:23 +00:00
Leif Johnson
531a3a6936 + further mucking about with the playondemand filter
Original commit message from CVS:
+ further mucking about with the playondemand filter
2003-11-16 21:48:55 +00:00
David Schleef
62d39027ae 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
Christian Schaller
8f120cdf00 disting fixes, pixbuf loader still borked in regards to disting
Original commit message from CVS:
disting fixes, pixbuf loader still borked in regards to disting
2003-11-09 22:48:58 +00:00
Jeremy Simon
3d601dbe9f 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
cb90622b41 Remove all config.h includes from header files, add it to each source file and remove duplicate config.h includes fro...
Original commit message from CVS:
Remove all config.h includes from header files, add it to each source file and remove duplicate config.h includes from several source files
2003-11-07 12:47:02 +00:00
Benjamin Otte
ba800e46ca v4l2 was executing mixmatrix's plugin_init, so make sure to make plugin_init static
Original commit message from CVS:
v4l2 was executing mixmatrix's plugin_init, so make sure to make plugin_init static
2003-11-03 22:47:52 +00:00
Ronald S. Bultje
4e3bf35246 This one was missing
Original commit message from CVS:
This one was missing
2003-11-02 23:00:38 +00:00
Benjamin Otte
c37952c970 fix for new plugin system
Original commit message from CVS:
fix for new plugin system
2003-11-02 22:34:11 +00:00
Ronald S. Bultje
c51e5a23c3 SMPTE transitions done
Original commit message from CVS:
SMPTE transitions done
2003-11-02 22:26:51 +00:00
Ronald S. Bultje
73fca8b4b6 Again one done
Original commit message from CVS:
Again one done
2003-11-02 22:23:26 +00:00
Ronald S. Bultje
26f632e630 ... almost done now
Original commit message from CVS:
... almost done now
2003-11-02 22:11:30 +00:00
Benjamin Otte
7d62325204 Hi. I'm the reason why GstElementDetails uses a macro now
Original commit message from CVS:
Hi. I'm the reason why GstElementDetails uses a macro now
2003-11-02 22:04:57 +00:00
Ronald S. Bultje
7ebe1eb0b2 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