Commit graph

25 commits

Author SHA1 Message Date
Vincent Penquerc'h
30e29b6fdb mad: helpfully bodge the last buffer to let mad decode the last frame
If http://www.mars.org/mailman/public/mad-dev/2001-May/000262.html is
to be believed, the last buffer must be followed by a number of 0 bytes
in order for the last frame to be decoded (at least in some cases).
Doing so seems to work here, fixing a missing 1152 samples when using
mp3parse before mad (not using mp3parse would yield the correct amount
of samples, if there's extra non-MP3 data after (eg, tag data)).
2011-12-22 15:23:54 +00:00
Mark Nauwelaerts
260824b278 mad: port to audiodecoder 2011-12-14 17:37:47 +01:00
Tim-Philipp Müller
65565c8a1e mad: build the mad plugin even if libid3tag is not available
ID3 tags are usually handled by id3demux, and should be handled
by id3demux. Tag handling in mad based on libid3tag is very basic
and mostly unnecessary really, so just build this plugin without
ID3 tag support if libid3tag is not available.
2011-03-11 18:37:10 +00:00
Stefan Kost
b3c04da6c3 index: remove conditional index support
Index support cannot be disabled since commit
4bfb1fe70c
in core, which removed the configure flags to disable index.
2011-02-21 11:05:31 +02:00
Mark Nauwelaerts
7bba22772e mad: support reverse playback 2010-10-04 10:33:28 +02:00
Tim-Philipp Müller
78ed09615b mad, id3mux: (re)move broken, unmaintained and unloved id3mux element
It will be reborn with a shiny new code base under its hood in -bad.
See #581756 and #565764.
2009-06-05 21:04:07 +01:00
Wim Taymans
26209707d9 ext/mad/gstmad.*: track discont on incomming buffers and set discont on outgoing buffers.
Original commit message from CVS:
* ext/mad/gstmad.c: (gst_mad_src_event), (gst_mad_chain),
(gst_mad_change_state):
* ext/mad/gstmad.h:
track discont on incomming buffers and set discont on outgoing
buffers.
Pass unknown events upstreams instead of dropping them.
2008-10-08 13:59:57 +00:00
Sameer Naik
ffc4369fb5 ext/mad/gstmad.*: Fix compilation with --disable-index. Fixes bug #554142.
Original commit message from CVS:
Patch by: Sameer Naik <sameer dot subscriptions at damagehead dot com>
* ext/mad/gstmad.c: (gst_mad_class_init), (gst_mad_dispose),
(gst_mad_src_event), (gst_mad_chain):
* ext/mad/gstmad.h:
Fix compilation with --disable-index. Fixes bug #554142.
2008-09-28 17:31:37 +00:00
Sebastian Dröge
b6529e9d60 Cache all events except EOS if we still have to send a NEWSEGMENT event. This will let TAG events be forwarded until ...
Original commit message from CVS:
* ext/mad/gstmad.c: (gst_mad_dispose), (gst_mad_sink_event),
(gst_mad_chain):
* ext/mad/gstmad.h:
* gst/mpegaudioparse/gstmpegaudioparse.c: (gst_mp3parse_dispose),
(gst_mp3parse_sink_event), (gst_mp3parse_emit_frame):
* gst/mpegaudioparse/gstmpegaudioparse.h:
Cache all events except EOS if we still have to send a NEWSEGMENT
event. This will let TAG events be forwarded until after decodebin
to an encoder for example as decodebin only links the pads
after NEWSEGMENT. Fixes bug #518933.
2008-02-27 13:18:57 +00:00
Sebastian Dröge
68bbfd4fd3 ext/mad/gstmad.*: Implement buffer clipping and use GST_BOILERPLATE instead of manual
Original commit message from CVS:
* ext/mad/gstmad.c: (_do_init), (gst_mad_init), (index_seek),
(normal_seek), (gst_mad_sink_event), (clip_outgoing_buffer),
(gst_mad_chain), (gst_mad_change_state):
* ext/mad/gstmad.h:
Implement buffer clipping and use GST_BOILERPLATE instead of manual
GType magic. Part one of bug #308312.
2007-07-13 15:46:13 +00:00
Stefan Kost
bebdf0837e docs/plugins/: Add new docs. Scan c++ files too.
Original commit message from CVS:
* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-ugly-plugins-docs.sgml:
* docs/plugins/gst-plugins-ugly-plugins-sections.txt:
* docs/plugins/inspect/plugin-a52dec.xml:
* docs/plugins/inspect/plugin-amrnb.xml:
* docs/plugins/inspect/plugin-asf.xml:
* docs/plugins/inspect/plugin-dvdlpcmdec.xml:
* docs/plugins/inspect/plugin-dvdsub.xml:
* docs/plugins/inspect/plugin-iec958.xml:
* docs/plugins/inspect/plugin-lame.xml:
* docs/plugins/inspect/plugin-mad.xml:
* docs/plugins/inspect/plugin-mpeg2dec.xml:
* docs/plugins/inspect/plugin-mpegaudioparse.xml:
* docs/plugins/inspect/plugin-mpegstream.xml:
Add new docs. Scan c++ files too.
* ext/amrnb/amrnbdec.c: (gst_amrnbdec_base_init),
(gst_amrnbdec_event):
* ext/amrnb/amrnbenc.c: (gst_amrnbenc_base_init):
* ext/amrnb/amrnbparse.c: (gst_amrnbparse_base_init),
(gst_amrnbparse_loop):
Add documentation headers.
* ext/mad/gstmad.c:
* ext/mad/gstmad.h:
Refactor for docs.
2007-07-03 11:55:45 +00:00
Thomas Vander Stichele
ffe763c043 expand tabs
Original commit message from CVS:
expand tabs
2005-12-06 19:48:07 +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
Ronald S. Bultje
e9d4a825d6 ext/mad/: Add id3demuxbin (which is a simple bin consisting of id3demux and typefind), take over rank from id3demux, ...
Original commit message from CVS:
* ext/mad/Makefile.am:
* ext/mad/gstid3demuxbin.c: (gst_id3demux_bin_get_type),
(gst_id3demux_bin_base_init), (gst_id3demux_bin_class_init),
(gst_id3demux_bin_init), (gst_id3demux_bin_remove_pad),
(found_type), (gst_id3demux_bin_change_state):
* ext/mad/gstid3tag.c: (gst_id3_tag_add_src_pad),
(gst_id3_tag_init), (gst_id3_tag_handle_event),
(gst_id3_tag_src_link), (gst_id3_tag_chain),
(gst_id3_tag_change_state), (plugin_init):
* ext/mad/gstmad.h:
Add id3demuxbin (which is a simple bin consisting of id3demux
and typefind), take over rank from id3demux, remove typefind
code from id3demux. Makes all broken mp3s that I know of work,
and thereby fixes #152688.
2005-01-27 10:29:19 +00:00
Benjamin Otte
d539f7b4c1 ext/mad/gstid3tag.c: deprecate id3tag element and replace with id3demux/id3mux.
Original commit message from CVS:
* ext/mad/gstid3tag.c: (gst_id3_tag_get_type),
(gst_id3_tag_class_init), (gst_id3_tag_get_caps),
(gst_id3_tag_add_src_pad), (gst_id3_tag_init),
(gst_id3_tag_set_property), (gst_id3_tag_do_caps_nego),
(gst_id3_tag_src_link), (gst_id3_tag_chain),
(gst_id3_tag_change_state), (plugin_init):
deprecate id3tag element and replace with id3demux/id3mux.
great side effect: this ugly file is now even uglier, yay!
* ext/mad/gstmad.h:
remove non-available function
update for new get_type
2004-04-17 17:52:35 +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
Johan Dahlin
72ec4a2aa3 *.h: Revert indenting
Original commit message from CVS:
* *.h: Revert indenting
2004-03-15 16:32:53 +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
1e8327f0c1 distcheck fixes
Original commit message from CVS:
distcheck fixes
2003-12-14 19:50:00 +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
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
Wim Taymans
fd97b5a8a3 Assorted fixes.
Original commit message from CVS:
Assorted fixes.
Use the new clocking stuff.
2002-02-03 20:10:04 +00:00
Wim Taymans
ee1612fb38 Use the low-level mad API to create a chain based plugin that does less memcpy's and memove's.
Original commit message from CVS:
Use the low-level mad API to create a chain based plugin that does less
memcpy's and memove's.
2001-12-28 01:59:26 +00:00
Thomas Vander Stichele
37770a0f4c wtay's version
Original commit message from CVS:
wtay's version
2001-12-20 22:27:35 +00:00
Thomas Vander Stichele
1d55b3c653 mad plugin
Original commit message from CVS:
mad plugin
2001-12-20 22:10:54 +00:00