Commit graph

210 commits

Author SHA1 Message Date
Tim-Philipp Müller
b581c0f96d mad: re-port to 0.11
This time using the base class. Still something
wrong with the parsing though, when there's no
parser or demuxer upstream (which of course
shouldn't happen in a normal playback scenario).
2011-11-13 15:10:32 +00:00
Tim-Philipp Müller
0cc15510e5 mad: update for GstBaseAudioDecoder -> GstAudioDecoder rename 2011-11-13 00:29:20 +00:00
Mark Nauwelaerts
ced55bf549 mad: replace with 0.10 version ported to GstAudioDecoder
Taken from commit 6e7e3657396454fe95fbd89170281865d4d1cec3
of Mark's baseaudio branch.

Would probably be too risky to drop this into 0.10 given
all the things mad is doing.
2011-11-13 00:23:03 +00:00
Wim Taymans
6a7345c98d remove query types 2011-11-09 11:58:03 +01:00
Tim-Philipp Müller
1905e95cea ext, gst: update for taglist API changes 2011-10-30 11:51:58 +00:00
Wim Taymans
854f4d846b Merge branch 'master' into 0.11
Conflicts:
	ext/mad/gstmad.c
2011-09-26 19:07:23 +02:00
Tim-Philipp Müller
56bd24365a mad: remove id3tag dependency used by in practice unreachable legacy code
The mad mp3 decoder element shouldn't parse tags at all really, but we
have so far kept this code around for backwards-compatibility reasons
for people building manual pipelines for some reason. However, as it
turns out that code has never actually worked in 0.10 in practice,
since it only gets executed if mad_frame_decode() returns LOSTSYNC,
which doesn't actually seem to happen any more though because of the
preceding mad_header_decode(), which will discover and report the
sync loss if it runs into a tag and make mad_frame_decode() try to
resync right away.

Discovered this while trying to make it use gst_tag_list_from_id3v2_tag().
2011-09-13 19:40:12 +01:00
Wim Taymans
957043ad0a port to new audio caps 2011-08-19 18:07:58 +02:00
Edward Hervey
2efbca2aa6 mad: Fix for changes in GstQuery API 2011-08-02 12:48:52 +02:00
Wim Taymans
13c252b2a8 Merge branch 'master' into 0.11
Conflicts:
	configure.ac
2011-06-02 18:46:11 +02:00
Wim Taymans
62758d8ff1 mad: port to new API
Port to new segment API.
Eat Caps events.
No need to set caps on buffers.
2011-06-02 18:43:28 +02:00
Stefan Kost
d229a538dc mad: use signed when caluculating the delta
Avoids a <0 check for an unsigned variable.
2011-05-20 13:31:14 +03:00
Sebastian Dröge
1e0d2d67b4 mad: Post bitrate tag whenever the bitrate changes
Also send the layer/mode/emphasis/bitrate tags as an event too.
2011-05-14 12:05:56 +02:00
Wim Taymans
fedbdec0ed mad: remove buffer_alloc 2011-04-29 15:43:47 +02:00
Wim Taymans
edb17b4601 mad: port to 0.11 2011-04-19 19:24:23 +02: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
Stefan Kost
2b9048ede9 formatting: trim trailing whitespace 2011-02-17 18:06:51 +02:00
Stefan Kost
9424c553b9 index: use delta frame flags instead of 0 or none 2011-02-17 18:05:58 +02:00
Sebastian Dröge
3dae13383d mad: If gst_pad_alloc_buffer() returns a buffer with the wrong size allocate a new one
Fixes bug #635461.
2010-12-16 10:32:37 +01:00
Edward Hervey
2a84e4332a mad: Remove dead assignments 2010-11-25 19:51:40 +01:00
Stefan Kost
26cd4ee3a0 various: canonicalize property names 2010-10-19 12:24:13 +03:00
Stefan Kost
3bb4b5069e various (ext): add a missing G_PARAM_STATIC_STRINGS flags 2010-10-19 10:06:33 +03:00
Mark Nauwelaerts
7bba22772e mad: support reverse playback 2010-10-04 10:33:28 +02:00
Sebastian Dröge
c88c88de0d build: Add all kinds of compiler warning flags and fix the resulting warnings 2010-03-24 11:27:40 +01:00
Benjamin Otte
9850bd814f gst_element_class_set_details => gst_element_class_set_details_simple 2010-03-18 15:53:14 +01:00
Stefan Kost
30a4d82edd mad: add missing include to fix the build 2009-10-07 14:05:08 +03: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
Edward Hervey
88db06cb65 mad: Add duration of incoming/outgoing buffers in debug statements 2009-05-06 13:17:35 +02:00
Edward Hervey
2ff7c811f8 mad: Remove dead assignment and variables given values which are never read. 2009-04-19 14:02:44 +02:00
Zaheer Merali
45163cdf71 mad: remove log line added in error 2009-02-19 19:10:53 +00:00
Zaheer Merali
a2b0e47739 mad: just flush data when seeing BADDATAPTR instead of going into error state 2009-02-19 19:08:10 +00: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
Stefan Kost
c49cf83ee3 Add missing elements to docs. Restore alphabetical order in section file. Document mad (it was included in docs alrea...
Original commit message from CVS:
* docs/plugins/gst-plugins-ugly-plugins-docs.sgml:
* docs/plugins/gst-plugins-ugly-plugins-sections.txt:
* ext/a52dec/gsta52dec.c:
* ext/amrnb/amrnbdec.c:
* ext/amrnb/amrnbenc.c:
* ext/amrnb/amrnbparse.c:
* ext/lame/gstlame.c:
* ext/mad/gstmad.c:
* ext/sidplay/gstsiddec.cc:
* gst/asfdemux/gstrtspwms.c:
* gst/mpegaudioparse/gstxingmux.c:
* gst/realmedia/rademux.c:
* gst/realmedia/rdtmanager.c:
* gst/realmedia/rtspreal.c:
* gst/synaesthesia/gstsynaesthesia.c:
Add missing elements to docs. Restore alphabetical order in section
file. Document mad (it was included in docs already).
Fix doc-markup: use convinience syntax for examples
(produces valid docbook), add several refsec2 when we have several
titles. Fix some types.
2008-06-13 06:57:21 +00:00
Edward Hervey
6385946841 ext/mad/gstmad.c: Fix inconsistent use of rate and channels.
Original commit message from CVS:
* ext/mad/gstmad.c: (gst_mad_convert_src), (gst_mad_chain):
Fix inconsistent use of rate and channels.
Fixes #533581
2008-05-19 15:07:07 +00:00
Edward Hervey
130c46902a Always let FLUSH_START events flow downstream.
Original commit message from CVS:
* ext/mad/gstmad.c: (gst_mad_sink_event):
* gst/mpegaudioparse/gstmpegaudioparse.c:
(gst_mp3parse_sink_event):
Always let FLUSH_START events flow downstream.
2008-05-10 00:44:00 +00:00
Sebastian Dröge
71f6199a90 Push EOS, FLUSH_STOP and NEWSEGMENT immediately instead of dropping and leaking them.
Original commit message from CVS:
* ext/mad/gstmad.c: (gst_mad_sink_event):
* gst/mpegaudioparse/gstmpegaudioparse.c:
(gst_mp3parse_sink_event):
Push EOS, FLUSH_STOP and NEWSEGMENT immediately instead
of dropping and leaking them.
2008-02-27 15:23:51 +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
Stefan Kost
c41fa79420 ext/mad/gstmad.c: Chain up at the end of the function.
Original commit message from CVS:
* ext/mad/gstmad.c:
Chain up at the end of the function.
2008-01-21 12:43:37 +00:00
Tim-Philipp Müller
d9e1dfe230 ext/mad/gstmad.c: Call g_type_class_ref() from a thread-safe context and not from the streaming thread to avoid GLib ...
Original commit message from CVS:
* ext/mad/gstmad.c: (GST_TYPE_MAD_MODE),
(GST_TYPE_MAD_EMPHASIS), (GST_TAG_EMPHASIS), (CHECK_HEADER):
Call g_type_class_ref() from a thread-safe context and not
from the streaming thread to avoid GLib screwing up (see
bug #349410 and #493432). Comment out unused code.
2008-01-10 17:24:09 +00:00
Sebastian Dröge
d7f415e09f Make sure that the Xing TOC starts with 0 and the entries are increasing over time. Otherwise it's broken and should ...
Original commit message from CVS:
* ext/mad/gstmad.c: (mpg123_parse_xing_header):
* gst/mpegaudioparse/gstmpegaudioparse.c:
(gst_mp3parse_handle_first_frame):
Make sure that the Xing TOC starts with 0 and the entries
are increasing over time. Otherwise it's broken and should
be skipped. Fixes bug #507821.
2008-01-08 19:42:38 +00:00
Sebastian Dröge
fe592fc65b Use the new buffer clipping function from gstaudio here and require gst-plugins-base CVS.
Original commit message from CVS:
* configure.ac:
* ext/mad/gstmad.c: (gst_mad_chain):
Use the new buffer clipping function from gstaudio here and
require gst-plugins-base CVS.
2007-07-24 05:05:29 +00:00
Sebastian Dröge
b55c8a16b9 ext/mad/gstmad.c: Fix buffer clipping to correctly clip to the segment stop.
Original commit message from CVS:
* ext/mad/gstmad.c: (clip_outgoing_buffer):
Fix buffer clipping to correctly clip to the segment stop.
2007-07-16 09:14:18 +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
Julien Moutte
92730cb1ca ext/mad/gstmad.c: Generate a perfect stream and try to adapt to incoming timestamps lack of precision up to half a fr...
Original commit message from CVS:
2007-03-27  Julien MOUTTE  <julien@moutte.net>

* ext/mad/gstmad.c: (gst_mad_chain): Generate a perfect
stream and try to adapt to incoming timestamps lack of
precision up to half a frame. This allows generating
a perfect stream even with muxed formats like FLV where
the timestamps are stored in milliseconds.
2007-03-27 12:02:49 +00:00
Jan Schmidt
b3bed8b0da ext/mad/gstmad.c: When handling seeks, don't convert -1 start or stop values to a bogus byte position - pass them ups...
Original commit message from CVS:
* ext/mad/gstmad.c: (gst_mad_convert_sink), (gst_mad_convert_src):
When handling seeks, don't convert -1 start or stop values to a bogus
byte position - pass them upstream as -1.
2007-03-12 17:26:13 +00:00
Tim-Philipp Müller
03f40e53fd Printf format fixes.
Original commit message from CVS:
* ext/dvdread/dvdreadsrc.c: (gst_dvd_read_src_goto_title),
(gst_dvd_read_src_handle_seek_event):
* ext/mad/gstid3tag.c: (gst_id3_tag_chain):
* ext/mad/gstmad.c: (gst_mad_src_query), (gst_mad_chain):
* ext/sidplay/gstsiddec.cc:
* gst/asfdemux/gstasfdemux.c: (gst_asf_demux_parse_data):
* gst/realmedia/rmdemux.c: (gst_rmdemux_loop),
(gst_rmdemux_parse_packet):
Printf format fixes.
2006-10-05 17:07:52 +00:00
Michal Benes
092e714778 ext/mad/gstmad.c: Fix timestamping in mad by only activating a new timestamp when the previous frame has been decoded...
Original commit message from CVS:
Patch by: Michal Benes <michal dot benes at itonis dot tv>
* ext/mad/gstmad.c: (gst_mad_chain):
Fix timestamping in mad by only activating a new timestamp when the
previous frame has been decoded. Fixes #350723.
Also clean up some of the non fatal warnings when the input buffer is
too small to decode a header.
2006-08-16 10:34:57 +00:00