Commit graph

21 commits

Author SHA1 Message Date
Wim Taymans
5ed4e21221 faad: optimize channel remap, avoid potential memcpy
Combine the channel remap and copy in one operation. Calculate the channel remap
table only once, make a shortcut when we are not doing any remapping.
2012-03-20 16:34:33 +01:00
Sebastian Dröge
dd38a639df faad: Update for the new raw audio caps 2012-01-05 10:37:37 +01:00
Mark Nauwelaerts
7234914e0f faad: port to audiodecoder 2011-09-22 16:06:04 +02:00
Mark Nauwelaerts
7499f2b09b faad: cater for renegotiation
At least, whenever either stream (e.g. ADTS) or upstream provides necessary
info for doing so.

Fixes #631501.
2010-10-12 18:19:54 +02:00
Mark Nauwelaerts
b4739124dc faad: do not attempt to sync indefinitely 2010-02-11 22:22:51 +01:00
Mark Nauwelaerts
159fe8a1a0 faad: use adapter rather than temporary buffer 2010-02-11 22:22:50 +01:00
Mark Nauwelaerts
50e4914edc faad: remove defunct and otherwise obsolete code 2010-02-11 22:22:50 +01:00
Mark Nauwelaerts
b3e8ded46e faad: use an in struct segment rather than a separately allocated one 2010-02-11 22:22:35 +01:00
Wim Taymans
eea50a9a85 ext/faad/gstfaad.*: Add basic reverse playback support.
Original commit message from CVS:
* ext/faad/gstfaad.c: (gst_faad_dispose), (clear_queued),
(flush_queued), (gst_faad_drain), (gst_faad_do_raw_seek),
(gst_faad_src_event), (gst_faad_sink_event), (gst_faad_chain),
(gst_faad_change_state):
* ext/faad/gstfaad.h:
Add basic reverse playback support.
Clear decoder state after disconts.
Remove some unused code.
Mark output buffers with a discont after a decoding error.
2008-06-02 10:18:25 +00:00
Andy Wingo
603b409c33 ext/faad/gstfaad.c (gst_faad_chain): Fix a bad format argument, and a potential int overflow.
Original commit message from CVS:
2008-03-18  Andy Wingo  <wingo@pobox.com>

* ext/faad/gstfaad.c (gst_faad_chain): Fix a bad format argument,
and a potential int overflow.

* ext/faad/gstfaad.h: Include <neaacdec.h> if faad is neaac.
Avoids a #warning about an ignored #pragma.
2008-03-18 10:12:40 +00:00
Edward Hervey
5799f0262d ext/faad/gstfaad.h: Forgot to commit the header file too.
Original commit message from CVS:
* ext/faad/gstfaad.h:
Forgot to commit the header file too.
2006-05-31 19:26:24 +00:00
Young-Ho Cha
15bae29658 ext/faad/gstfaad.*: If we encounter a decoding error, don't error out immediately, but try to resync (or see if we ha...
Original commit message from CVS:
Patch by: Young-Ho Cha  <ganadist chollian net>
* ext/faad/gstfaad.c: (gst_faad_init), (gst_faad_chain),
(gst_faad_change_state):
* ext/faad/gstfaad.h:
If we encounter a decoding error, don't error out immediately,
but try to resync (or see if we have better luck with the next
buffer in case of framed input). Only error out after five
consecutive errors. Fixes #341563.
2006-05-13 18:39:13 +00:00
Tim-Philipp Müller
2d4c661169 ext/faad/gstfaad.*: If we run into a decoding error, try re-opening the decoder with faacDecInit2() using fake codec ...
Original commit message from CVS:
* ext/faad/gstfaad.c: (gst_faad_init), (aac_rate_idx),
(gst_faad_setcaps), (gst_faad_chain), (gst_faad_open_decoder),
(gst_faad_close_decoder), (gst_faad_change_state):
* ext/faad/gstfaad.h:
If we run into a decoding error, try re-opening the decoder
with faacDecInit2() using fake codec data created from the
data the demuxer gave us. Should fix a whole bunch of
GStreamer-faad problems incl. 'channel coupling not
implemented', 'maximum number of scalefactor bands exceeded'
etc. (#173007, #332892).
2006-04-28 11:04:12 +00:00
Tim-Philipp Müller
a979bd99d1 ext/faad/gstfaad.*: Do some timestamp smoothing (matroskademux apparently sends multiple buffers in a row with the sa...
Original commit message from CVS:
* ext/faad/gstfaad.c: (gst_faad_base_init), (gst_faad_class_init),
(gst_faad_init), (gst_faad_srcgetcaps), (gst_faad_event),
(gst_faad_chain), (gst_faad_change_state):
* ext/faad/gstfaad.h:
Do some timestamp smoothing (matroskademux apparently sends
multiple buffers in a row with the same timestamp); fix
duration on outgoing buffers; fix change state function; use
GST_DEBUG_FUNCPTR for pad functions.
2005-10-20 15:08:14 +00:00
Tim-Philipp Müller
76f3f25ecf ext/faad/gstfaad.*: Fix negotiation (#310932) and miscellaneous other stuff. Probably still needs some more work.
Original commit message from CVS:
* ext/faad/gstfaad.c: (gst_faad_base_init), (gst_faad_class_init),
(gst_faad_init), (gst_faad_setcaps), (gst_faad_srcgetcaps),
(gst_faad_event), (gst_faad_update_caps), (gst_faad_chain),
(gst_faad_change_state):
* ext/faad/gstfaad.h:
Fix negotiation (#310932) and miscellaneous other stuff. Probably
still needs some more work.
2005-08-08 19:20:02 +00:00
Maciej Katafiasz
440d1d81ff Fix playback of certain invalid muxed streams. Partial fix for #149158
Original commit message from CVS:
Fix playback of certain invalid muxed streams. Partial fix for #149158
2005-02-21 18:58:46 +00:00
Ronald S. Bultje
bf45760b33 Surround sound support.
Original commit message from CVS:
* ext/a52dec/gsta52dec.c: (gst_a52dec_channels), (gst_a52dec_push),
(gst_a52dec_reneg), (gst_a52dec_loop), (plugin_init):
* ext/alsa/gstalsa.c: (gst_alsa_get_caps):
* ext/alsa/gstalsaplugin.c: (plugin_init):
* ext/dts/gstdtsdec.c: (gst_dtsdec_channels),
(gst_dtsdec_renegotiate), (gst_dtsdec_loop), (plugin_init):
* ext/faad/gstfaad.c: (gst_faad_init), (gst_faad_chanpos_from_gst),
(gst_faad_chanpos_to_gst), (gst_faad_sinkconnect),
(gst_faad_srcgetcaps), (gst_faad_srcconnect), (gst_faad_chain),
(gst_faad_change_state), (plugin_init):
* ext/faad/gstfaad.h:
* ext/vorbis/vorbis.c: (plugin_init):
* ext/vorbis/vorbisdec.c: (vorbis_dec_chain):
* gst-libs/gst/audio/Makefile.am:
* gst-libs/gst/audio/audio.c: (plugin_init):
* gst-libs/gst/audio/multichannel.c:
(gst_audio_check_channel_positions),
(gst_audio_get_channel_positions),
(gst_audio_set_channel_positions),
(gst_audio_set_structure_channel_positions_list),
(add_list_to_struct), (gst_audio_set_caps_channel_positions_list),
(gst_audio_fixate_channel_positions):
* gst-libs/gst/audio/multichannel.h:
* gst-libs/gst/audio/testchannels.c: (main):
* gst/audioconvert/gstaudioconvert.c:
(gst_audio_convert_class_init), (gst_audio_convert_init),
(gst_audio_convert_dispose), (gst_audio_convert_getcaps),
(gst_audio_convert_parse_caps), (gst_audio_convert_link),
(gst_audio_convert_fixate), (gst_audio_convert_channels):
* gst/audioconvert/plugin.c: (plugin_init):
Surround sound support.
2004-11-25 20:36:29 +00:00
Ronald S. Bultje
cebbba83a9 ext/faad/gstfaad.*: Allow playback of raw (unframed) MPEG AAC files (#148993).
Original commit message from CVS:
Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
* ext/faad/gstfaad.c: (gst_faad_init), (gst_faad_sinkconnect),
(gst_faad_chain), (gst_faad_change_state):
* ext/faad/gstfaad.h:
Allow playback of raw (unframed) MPEG AAC files (#148993).
2004-10-01 13:00:41 +00:00
Johan Dahlin
39fd8a2dbd *.h: Revert indenting
Original commit message from CVS:
* *.h: Revert indenting
2004-03-15 16:32:54 +00:00
Thomas Vander Stichele
7a778ee4b7 gst-indent
Original commit message from CVS:
gst-indent
2004-03-14 22:34:33 +00:00
Ronald S. Bultje
bd83e1813e New libfaad (MPEG-2/4 AAC decoder) plugin
Original commit message from CVS:
New libfaad (MPEG-2/4 AAC decoder) plugin
2003-11-21 21:20:42 +00:00