Commit graph

117 commits

Author SHA1 Message Date
Tim-Philipp Müller
a5a4848761 ext/mad/gstmad.c: Make queries actually work (update core first).
Original commit message from CVS:
* ext/mad/gstmad.c: (gst_mad_src_query), (gst_mad_sink_event):
Make queries actually work (update core first).
2005-05-12 14:15:37 +00:00
Tim-Philipp Müller
9ee658c36b ext/mad/gstmad.c: Port to new query API and replace gst_pad_convert() and gst_pad_get_formats() usage. gstid3tag look...
Original commit message from CVS:
* ext/mad/gstmad.c: (gst_mad_init), (gst_mad_src_query),
(index_seek), (normal_seek), (gst_mad_sink_event):
Port to new query API and replace gst_pad_convert()
and gst_pad_get_formats() usage. gstid3tag looks like
it needs some more love before it will work again, if
not a rewrite.
2005-05-11 22:42:47 +00:00
Christian Schaller
431ec45241 ported mad and effectv plugins
Original commit message from CVS:
ported mad and effectv plugins
2005-05-06 11:04:30 +00:00
David Schleef
59e2b0fcd5 configure.ac: Put DEFAULT_AUDIOSINK in config.h and use whereever possible. (Fixes #165997)
Original commit message from CVS:
* configure.ac: Put DEFAULT_AUDIOSINK in config.h and use
whereever possible.  (Fixes #165997)
* examples/capsfilter/capsfilter1.c: (main):
* examples/dynparams/filter.c: (create_ui):
* examples/seeking/cdparanoia.c: (get_track_info), (main):
* examples/seeking/chained.c: (main):
* examples/seeking/seek.c: (make_mod_pipeline), (make_dv_pipeline),
(make_wav_pipeline), (make_flac_pipeline), (make_sid_pipeline),
(make_vorbis_pipeline), (make_mp3_pipeline), (make_avi_pipeline),
(make_mpeg_pipeline), (make_mpegnt_pipeline):
* examples/seeking/spider_seek.c: (make_spider_pipeline):
* examples/switch/switcher.c: (main):
* ext/dv/demo-play.c: (main):
* ext/faad/gstfaad.c: (gst_faad_change_state):
* ext/mad/gstmad.c: (gst_mad_chain):
* ext/smoothwave/demo-osssrc.c: (main):
* gst-libs/gst/gconf/gconf.c: (gst_gconf_set_string),
(gst_gconf_render_bin_from_description),
(gst_gconf_get_default_audio_sink),
(gst_gconf_get_default_video_sink),
(gst_gconf_get_default_audio_src),
(gst_gconf_get_default_video_src),
(gst_gconf_get_default_visualization_element):
* gst/level/demo.c: (main):
* gst/level/plot.c: (main):
* gst/playback/gstplaybin.c: (gen_video_element),
(gen_audio_element):
* gst/playback/test.c: (gen_video_element), (gen_audio_element):
* gst/playondemand/demo-mp3.c: (setup_pipeline):
* gst/sine/demo-dparams.c: (main):
* gst/spectrum/demo-osssrc.c: (main):
* gst/speed/demo-mp3.c: (main):
* gst/volume/demo.c: (main):
* testsuite/embed/embed.c: (main):
2005-02-02 08:14:01 +00:00
Ronald S. Bultje
0b1be013a6 Allow seeks on audio pad, make mad forward those (#164826).
Original commit message from CVS:
Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
* ext/mad/gstmad.c: (gst_mad_src_event):
* gst/avi/gstavidemux.c: (gst_avi_demux_handle_src_event):
Allow seeks on audio pad, make mad forward those (#164826).
* gst/audioscale/gstaudioscale.c: (gst_audioscale_chain):
Set duration (#165335).
2005-01-27 10:14:22 +00:00
Benjamin Otte
804052d1ef ext/mad/gstmad.c: - on half framerate, compute the rate in advance so the comparisons don't compare wrong values
Original commit message from CVS:
* ext/mad/gstmad.c: (gst_mad_check_caps_reset), (gst_mad_chain):
- on half framerate, compute the rate in advance so the comparisons
don't compare wrong values
- don't use mad_synth/frame_mute anymore, this mirrors mad_decoder
behaviour
- don't use mad_header_decode anymore, mad_frame_decode does that
automatically
- when getting rid of consumed bytes, reset the stream's skiplen
(fixes #163867)
2005-01-25 21:48:46 +00:00
Ronald S. Bultje
911cb0f678 ext/mad/gstmad.c: Fail if caps negotiation fails. Should fix #162184, and should definately be in there regardless of...
Original commit message from CVS:
* ext/mad/gstmad.c: (gst_mad_check_caps_reset), (gst_mad_chain):
Fail if caps negotiation fails. Should fix #162184, and should
definately be in there regardless of it fixing the actual bug.
* gst/avi/gstavimux.c: (gst_avimux_get_type), (gst_avimux_init),
(gst_avimux_write_tag), (gst_avimux_riff_get_avi_header),
(gst_avimux_riff_get_avix_header),
(gst_avimux_riff_get_video_header),
(gst_avimux_riff_get_audio_header), (gst_avimux_write_index),
(gst_avimux_start_file), (gst_avimux_handle_event),
(gst_avimux_change_state):
* gst/avi/gstavimux.h:
Refactor structure writing to use GST_WRITE_UINT macros, add
metadata writing support.
2005-01-19 11:01:09 +00:00
Ronald S. Bultje
d5257d4ea3 ext/mad/gstmad.c: Don't call mad_stream_sync() directly after recovering sync.
Original commit message from CVS:
Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
* ext/mad/gstmad.c: (gst_mad_chain):
Don't call mad_stream_sync() directly after recovering sync.
Fixes #151661.
2005-01-09 01:58:04 +00:00
Christophe Fergeau
3e3cca4adf ext/mad/gstmad.c: fix xing header detection on mono and stereo mp3 files.
Original commit message from CVS:
2004-12-01  Christophe Fergeau  <teuf@gnome.org>

* ext/mad/gstmad.c: (mpg123_parse_xing_header): fix xing header
detection on mono and stereo mp3 files.
2004-12-01 20:07:24 +00:00
Benjamin Otte
3824908ab3 ext/mad/gstmad.c: don't overflow data buffer. Flush not needed sync data when syncing failed.
Original commit message from CVS:
* ext/mad/gstmad.c: (gst_mad_chain):
don't overflow data buffer. Flush not needed sync data when syncing
failed.
2004-11-05 03:33:26 +00:00
Wim Taymans
f460723e27 ext/mad/gstmad.c: Decoding the header first fixes some problems in resyncing in more mp3s.
Original commit message from CVS:
* ext/mad/gstmad.c: (gst_mad_check_caps_reset), (gst_mad_chain):
Decoding the header first fixes some problems in resyncing
in more mp3s.
2004-10-13 14:21:02 +00:00
Ronald S. Bultje
1b7b0e099d ext/mad/gstmad.c: Allow for mp3 rate/channels changes. However, only very conservatively. Reason that we *have* to en...
Original commit message from CVS:
* ext/mad/gstmad.c: (gst_mad_check_caps_reset),
(gst_mad_change_state):
Allow for mp3 rate/channels changes. However, only very
conservatively. Reason that we *have* to enable this is smiply
because the mad find_sync() function is not good enough, it will
regularly sync on random data as valid frames and therefore make
us provide random caps as *final* caps of the stream. The best fix
I could think of is to simply require several of the same stream
changes in a row before we change caps.
The actual testcase that works now is #
* ext/ogg/Makefile.am:
* ext/ogg/gstogg.c: (plugin_init):
* ext/ogg/gstogmparse.c:
OGM support (video only for now; I need an audio sample file).
* gst/asfdemux/gstasfdemux.c: (gst_asf_demux_base_init),
(gst_asf_demux_process_stream), (gst_asf_demux_video_caps),
(gst_asf_demux_add_video_stream):
WMV extradata.
* gst/playback/gstplaybasebin.c: (unknown_type):
Don't error out on single unknown-types after all. It's wrong.
If we found type of video and audio but not of a subtitle stream,
it will still error out (which is unwanted). Will find a better fix
later on.
* gst/typefind/gsttypefindfunctions.c: (ogmvideo_type_find),
(ogmaudio_type_find), (plugin_init):
OGM support.
2004-09-20 12:40:40 +00:00
Benjamin Otte
6dbd7c1dce ext/mad/gstmad.c: fix mad plugin crashing on Sun (fixes #148289)
Original commit message from CVS:
reviewed by Benjamin Otte  <otte@gnome.org>
* ext/mad/gstmad.c:
fix mad plugin crashing on Sun (fixes #148289)
2004-07-25 14:08:58 +00:00
Benjamin Otte
c85cc84f32 ext/mad/gstmad.c: allow seeking for other methods than just SET
Original commit message from CVS:
* ext/mad/gstmad.c: (normal_seek):
allow seeking for other methods than just SET
2004-07-11 19:27:43 +00:00
Thomas Vander Stichele
6db1495c32 sync mp3 caps
Original commit message from CVS:
sync mp3 caps
2004-06-14 10:58:27 +00:00
Benjamin Otte
81bbf631d5 ext/alsa/gstalsa.c: cast to GstClockTime to get higher granularity
Original commit message from CVS:
* ext/alsa/gstalsa.c: (gst_alsa_samples_to_timestamp):
cast to GstClockTime to get higher granularity
* ext/alsa/gstalsasink.c: (gst_alsa_sink_check_event):
use gst_element_set_time_delay to get the exact time
* ext/mad/gstmad.c: (gst_mad_chain):
use the negotiated rate instead of the current frame's rate which
might be wrong because of bit errors. This avoids emitting totally
bogus timestamps and screwing sync.
(fixes #143454)
2004-06-07 01:41:37 +00:00
Benjamin Otte
0746a067ed ext/mad/gstmad.c: don't unref the event twice
Original commit message from CVS:
* ext/mad/gstmad.c: (gst_mad_handle_event):
don't unref the event twice
2004-05-19 19:34:12 +00:00
Ronald S. Bultje
a32b513bfc ext/mad/gstmad.c: Fix for when the first format in a discont event is not a byte-based one. Should fix #137710.
Original commit message from CVS:
* ext/mad/gstmad.c: (gst_mad_handle_event):
Fix for when the first format in a discont event is not a
byte-based one. Should fix #137710.
2004-05-18 00:25:09 +00:00
Ronald S. Bultje
33e58c689e ext/mad/gstmad.c: Ignore CRCs by default (fixes #142566).
Original commit message from CVS:
* ext/mad/gstmad.c: (gst_mad_class_init), (gst_mad_init):
Ignore CRCs by default (fixes #142566).
2004-05-16 20:50:13 +00:00
Benjamin Otte
c1ff34505b ext/lame/gstlame.c: simplify
Original commit message from CVS:
* ext/lame/gstlame.c: (gst_lame_chain):
simplify
* ext/mad/gstmad.c: (gst_mad_handle_event):
fix event leak
* gst/typefind/gsttypefindfunctions.c: (mp3_type_find):
be able to detect mp3 files < 4096 bytes
2004-05-07 00:43:50 +00:00
Thomas Vander Stichele
7dc9385301 do not change caps in middle of stream except on new streams fixes #139382
Original commit message from CVS:
do not change caps in middle of stream except on new streams
fixes #139382
2004-04-07 15:48:40 +00:00
Benjamin Otte
53fbf25868 ext/mad/gstmad.c: fix GST_FORMAT_TIME usage
Original commit message from CVS:
* ext/mad/gstmad.c: (normal_seek):
fix GST_FORMAT_TIME usage
2004-04-06 06:03:31 +00:00
Thomas Vander Stichele
43a9410066 more debugging, only reset caps when not in error
Original commit message from CVS:
more debugging, only reset caps when not in error
2004-04-05 12:28:57 +00:00
Thomas Vander Stichele
f8a4777286 add debug category + commenting and cleanups
Original commit message from CVS:
add debug category + commenting and cleanups
2004-04-05 11:38:04 +00:00
Thomas Vander Stichele
9ac53e9a2a don't mix tabs and spaces
Original commit message from CVS:
don't mix tabs and spaces
2004-03-15 19:32:25 +00:00
Thomas Vander Stichele
908defa2c4 gst-indent
Original commit message from CVS:
gst-indent
2004-03-14 22:34:30 +00:00
Thomas Vander Stichele
9dcd265258 report mode/layer/emph
Original commit message from CVS:
report mode/layer/emph
2004-03-06 18:39:39 +00:00
Christophe Fergeau
e81c3184bb ext/mad/gstmad.c: fixed caps leak
Original commit message from CVS:
2004-03-06  Christophe Fergeau  <teuf@gnome.org>

* ext/mad/gstmad.c: (gst_mad_chain): fixed caps leak
2004-03-06 18:22:51 +00:00
Christophe Fergeau
05a4a12c53 ext/mad/gstmad.c: send the average bitrate read from the xing header
Original commit message from CVS:
2004-03-06  Christophe Fergeau  <teuf@gnome.org>

* ext/mad/gstmad.c: (gst_mad_chain): send the average bitrate read
from the xing header
2004-03-06 16:02:21 +00:00
Christophe Fergeau
1391986f6e For some reason, I only committed a ChangeLog entry yesterday and not the corresponding code...
Original commit message from CVS:
2004-03-06  Christophe Fergeau  <teuf@gnome.org>

For some reason, I only committed a ChangeLog entry yesterday and
not the corresponding code...
* ext/mad/gstmad.c: Fix detection of Xing headers
* gst/tags/gstid3tag.c: Changes to support TLEN tags
2004-03-06 12:04:32 +00:00
Christophe Fergeau
9daabec27d ext/mad/: parse Xing header in vbr files, and report the parsed length as a GST_TAG_DURATION tag.
Original commit message from CVS:
2004-03-06  Christophe Fergeau  <teuf@gnome.org>

* ext/mad/gstid3tag.c: (gst_mad_id3_to_tag_list):
* ext/mad/gstmad.c: (gst_mad_init), (is_xhead),
(mpg123_parse_xing_header), (gst_mad_chain): parse Xing header in vbr
files, and report the parsed length as a GST_TAG_DURATION tag.
* gst/tags/gstid3tag.c: support TLEN (duration) tag
2004-03-05 23:32:36 +00:00
Andy Wingo
9840e4882e gst/intfloat/, gst/oneton: Removed, replaced by audioconvert and interleave respectively.
Original commit message from CVS:
2004-02-20  Andy Wingo  <wingo@pobox.com>

* gst/intfloat/, gst/oneton: Removed, replaced by audioconvert and
interleave respectively.

* gst/interleave/deinterleave.c: New plugin: deinterleave
(replaces on oneton).
* gst/interleave/interleave.c: New plugin: interleave.
* gst/interleave/plugin.h: Support file.
* gst/interleave/plugin.c: Support file.

* configure.ac: Remove intfloat and oneton, add interleave.

* ext/sndfile/gstsf.c: Handle events better.

* gst/audioconvert/gstaudioconvert.c: Change to support int2float
and float2int operation. int2float has scheduling problems as
noted in in2float_chain.
2004-02-20 14:17:57 +00:00
Thomas Vander Stichele
2ce3a35e15 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:32 +00:00
Thomas Vander Stichele
611d7f4dd0 GST_ELEMENT_ERROR
Original commit message from CVS:
GST_ELEMENT_ERROR
2004-01-29 23:20:44 +00:00
Thomas Vander Stichele
7a033494ea 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
David Schleef
763b096ef2 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
David Schleef
ceb2719593 Negotiation fixes.
Original commit message from CVS:
Negotiation fixes.
2003-12-31 08:02:04 +00:00
David Schleef
200089a2ba Merge CAPS branch
Original commit message from CVS:
Merge CAPS branch
2003-12-22 01:47:08 +00:00
Ronald S. Bultje
b26c0ce2c5 Fix crasher (#129287)
Original commit message from CVS:
Fix crasher (#129287)
2003-12-15 08:52:16 +00:00
Benjamin Otte
33da588e1b rework id3tag plugin to work as a) parser - just strip id3 tags b) tag reader - extract tags and go EOS c) tag writer...
Original commit message from CVS:
rework id3tag plugin to work as
a) parser - just strip id3 tags
b) tag reader - extract tags and go EOS
c) tag writer - change id3 tags
Included is some revamping to ease code to make it possible to strip id3tag from its mad dependency (without ID3v2 support), which would still make the parsing bits work. This is however not done yet.
This plugin supercedes the id3types plugin.
2003-12-09 16:33:52 +00:00
Andy Wingo
dbf9d697eb remove copyright field from plugins
Original commit message from CVS:
remove copyright field from plugins
2003-12-04 10:37:35 +00:00
Benjamin Otte
c5ca1b712d 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
b71ed5aa7d + checking in plugin category changes
Original commit message from CVS:
+ checking in plugin category changes
2003-11-16 22:02:04 +00:00
Benjamin Otte
abfdbffca2 first bunch of conversions to new plugin_init. Includes libs/gst, gst/id3, sys/oss, ext/gnomevfs, gst/typefind and ex...
Original commit message from CVS:
first bunch of conversions to new plugin_init. Includes libs/gst, gst/id3, sys/oss, ext/gnomevfs, gst/typefind and ext/mad.
You guessed it, everything Rhythmbox needs ;)
fixed BMP typefind and made gnomevfs one plugin instead of two while doing this
2003-10-31 20:03:29 +00:00
Benjamin Otte
97bf62c74f 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
6300f2611c /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:10 +00:00
Ronald S. Bultje
0ea59b7a7b 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:51 +00:00
Thomas Vander Stichele
e78672327e reverting error patch before making a branch.
Original commit message from CVS:
reverting error patch before making a branch.
2003-09-16 10:00:00 +00:00
Benjamin Otte
4535cf586b 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:38 +00:00
Ronald S. Bultje
6e8f57d253 gcc-2.9x fixes
Original commit message from CVS:
gcc-2.9x fixes
2003-08-02 00:56:11 +00:00