Wim Taymans
e8313a1e70
audioparsers: refactor code to remove caps fields
2013-12-03 21:29:13 +01:00
Mark Nauwelaerts
49d52a64d6
ac3parse: correctly handle timestamps when parsing x-private1-ac3
...
... the way it has always worked fine in a52dec.
2013-11-11 13:35:29 +01:00
Sebastian Dröge
b95ddd55cd
flacparse: Make sure we have enough data to read image tags
...
Thanks to iputinei for reporting this on IRC.
2013-09-12 15:39:51 +02:00
Matej Knopp
349afc633a
flacparse: cleanup on error after state change
...
https://bugzilla.gnome.org/show_bug.cgi?id=707229
2013-09-03 18:06:18 +02:00
Matej Knopp
73751dbbe7
flacparse: Free GstBaseParseFrame if pushing a header failed
2013-09-03 10:10:49 +02:00
Sebastian Dröge
1971c43279
flacparse: Properly propagate downstream flow returns upstream
...
https://bugzilla.gnome.org/show_bug.cgi?id=707229
2013-09-02 11:56:33 +02:00
Chris Bass
b40bf67526
aacparse: allow conversion from raw AAC to ADTS
...
This patch will prepend ADTS headers to raw AAC audio frames, allowing
upstream elements to link to decoders that only support AAC in ADTS format.
Note that no error correction bits are added to ADTS frames in this code.
https://bugzilla.gnome.org/show_bug.cgi?id=615740
2013-08-13 15:58:23 +02:00
Vincent Penquerc'h
91d4abceaa
aacparse: allow conversion from ADTS to raw AAC
...
Some muxers (eg, qtmux) only support raw AAC, so this allows linking
an encoder that outputs ADTS only to those muxers.
The conversion is simple (omit the first 7 or 9 bytes of the frame),
but has to be done in pre_push instead of handle_frame as 1.0 does
not seem to allow skipping bytes there as 0.10 used to.
Other conversions are not supported (yet).
2013-07-26 09:44:11 +01:00
Vincent Penquerc'h
55e9338846
aacparse: fix object_type parsing off-by-one in ADTS frame
...
According to http://wiki.multimedia.cx/index.php?title=ADTS ,
the value stored in ADTS headers is one less than the object
type of the AAC stream.
A look at ffmpeg shows it also adds 1 to the value read off
the ADTS header.
Note that this might break other things that happen to have
an inverse off by one to match the existing code.
2013-07-26 09:44:10 +01:00
Matej Knopp
ae92ea21a1
aacparse: be less verbose when parsing LOAS streams
...
https://bugzilla.gnome.org/show_bug.cgi?id=704162
2013-07-15 07:55:08 +02:00
Tim-Philipp Müller
68ac392e8f
ac3parse, dcaparse: check buffer size before trimming
...
and unref old buffer as soon as possible.
2013-05-04 10:08:47 +01:00
Andoni Morales Alastruey
3462282b83
dcaparse: add support for "audio/x-private1-dts"
2013-05-03 13:44:23 +02:00
Andoni Morales Alastruey
4531381541
ac3parse: add support for "audio/x-private1-ac3"
2013-05-03 13:44:23 +02:00
Sebastian Dröge
b0b0557c48
gst: Add better support for static plugins
2013-04-15 15:54:11 +02:00
Anton Belka
0f97b6f978
flacparse: add support for the toc-select event
...
Select tracks from the CUE sheet by sending a toc-select
event based on the uid in the TOC.
https://bugzilla.gnome.org/show_bug.cgi?id=540891
2013-03-21 00:38:48 +00:00
Tim-Philipp Müller
5240b7453c
sbcparse: pack multiple frames into one output buffer
...
Don't output a single buffer for every tiny SBC frame
2013-03-20 00:35:17 +00:00
Sebastian Dröge
1810786083
flacparse: Fix (wrong) use of uninitialized variable compiler warning
2013-03-03 11:53:04 +01:00
Rico Tzschichholz
682e49a752
audioparsers: fix typo in noinst_headers
2013-02-04 18:38:41 +00:00
Tim-Philipp Müller
721dd1ab26
sbcparse: init some variables to avoid bogus compiler warnings
2013-01-28 11:58:50 +00:00
Mark Nauwelaerts
0777a600e3
audioparsers: sbc: fix bogus compiler warning
...
gst-plugins-good/gst/audioparsers/gstsbcparse.c: In function 'gst_sbc_parse_handle_frame':
gst-plugins-good/gst/audioparsers/gstsbcparse.c:210:32: error: 'ch_mode' may be used uninitialized i
2013-01-22 19:26:09 +01:00
Thijs Vermeir
16128f0234
autoparsers: use appropriate printf format for gsize
2013-01-16 14:32:56 +01:00
Tim-Philipp Müller
9f7a949773
audioparsers: add SBC audio parser
...
From-scratch rewrite, the bluez one was useless and broken.
https://bugzilla.gnome.org/show_bug.cgi?id=690582
2013-01-15 17:45:30 +00:00
Sebastian Dröge
c49dede772
audioparsers: Make sure the caps are actually writable before changing them
2012-12-17 15:17:12 +01:00
Sebastian Dröge
26040ee38c
audioparsers: Use the peer caps for restrictions instead of the srcpad allowed caps
...
Otherwise we will intersect with the srcpad template caps and add all the caps fields
that the parser will ever set, no matter if downstream restricts this field or not.
This requires upstream to set this field on the caps to successfully negotiate.
https://bugzilla.gnome.org/show_bug.cgi?id=690184
2012-12-17 15:01:02 +01:00
Tim-Philipp Müller
230cf41cc9
Fix FSF address
...
https://bugzilla.gnome.org/show_bug.cgi?id=687520
2012-11-04 00:07:18 +00:00
Tim-Philipp Müller
7275860bdd
flacparse: fix coverart extraction if vorbis comments come after picture header
...
See sample file for bug #684701 .
2012-10-23 16:02:05 +01:00
Tim-Philipp Müller
7c41f42eec
flacparse: ignore bad headers if we have a valid STREAMINFO header
...
If we run into any header parsing issues and we have a valid
STREAMINFO header already, don't error out, but just stop
header parsing and try to find some audio frames.
https://bugzilla.gnome.org/show_bug.cgi?id=684701
2012-10-23 13:56:54 +01:00
Tim-Philipp Müller
49cc719809
flacparse: post proper error message and fix buffer leak on header parsing error
...
https://bugzilla.gnome.org/show_bug.cgi?id=684701
2012-10-23 13:56:54 +01:00
Mark Nauwelaerts
a2475a40a5
flacparse: fixup 0.11 port of suspect frame checking
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=682959
2012-08-30 11:30:01 +02:00
Tim-Philipp Müller
4bb52bbadf
docs: gst-launch -> gst-launch-1.0 and ffmpegcolorspace -> videoconvert
2012-08-27 21:20:30 +01:00
Mark Nauwelaerts
2d179ebf90
flacparse: generate empty vorbiscomment for complete streamheaders if needed
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=681335
2012-08-07 12:24:42 +02:00
Tim-Philipp Müller
c074bfd0b9
gst_tag_list_free -> gst_tag_list_unref
2012-08-04 16:10:16 +01:00
Tim-Philipp Müller
1d5ed57cfa
flacparse: update for TOC API changes
2012-07-28 11:20:08 +01:00
Sebastian Dröge
0827f54b93
tag: Update for taglist/tag event API changes
2012-07-28 00:19:51 +02:00
Edward Hervey
538c131b37
aacparse: Reset parser when we have caps without codec_data
...
This ensures the detection (and proper downstream caps settings) will
actually happen when we have new incoming caps without codec_data.
This was easily triggered by streams from matroskademux which initially
provided caps with a constructed codec_data, but then pushed new caps
without the codec_data once it detected the stream was adts.
2012-07-24 12:24:43 +02:00
Sebastian Dröge
b01cf1561c
flacparse: Fix parsing of ISRC from the cuesheets
2012-07-17 10:01:54 +02:00
Anton Belka
ffc204e6bd
flacparse: add TOC support
...
Add support embedded cuesheets in flac files.
Parsing METADATA_BLOCK_CUESHEET as TOC.
https://bugzilla.gnome.org/show_bug.cgi?id=540891
2012-07-17 09:58:07 +02:00
Mark Nauwelaerts
a94d5d9f3b
flacparse: avoid some more frame misparsing by additional header sanity check
...
... using a required constant blocking_strategy bit.
https://bugzilla.gnome.org/show_bug.cgi?id=679807
2012-07-13 15:37:18 +02:00
Mark Nauwelaerts
400bdee601
aacparse: perform additional sanity check before confirming ADTS format
...
... and tweak confusing debug message.
2012-07-06 15:29:37 +02:00
Mark Nauwelaerts
986286a8ea
aacparse: remove unhelpful stray debug message
2012-07-06 15:29:28 +02:00
Wim Taymans
f65495d405
update for audio api change
2012-06-08 10:11:12 +02:00
Wim Taymans
b5df4f0e62
update for tag event change
2012-06-06 13:02:12 +02:00
Sebastian Dröge
ca4b5d795b
audioparsers: Fix GstBaseParse::get_sink_caps() implementations
...
They should take the filter caps into account and always return
the template caps appended to the actual caps. Otherwise the
parsers stop to accept unparsed streams where upstream does not
know about channels, rate, etc.
Fixes bug #677401 .
2012-06-05 09:21:08 +02:00
Edward Hervey
ba7569028c
audioparsers: Check return value of GstBitReader/GstByteReader
2012-04-12 15:47:24 +02:00
Tim-Philipp Müller
e09ae5736d
Use new gst_element_class_set_static_metadata()
2012-04-10 00:51:41 +01:00
Sebastian Dröge
aa2cd462da
gst: Update for GST_PLUGIN_DEFINE() API changes
2012-04-05 17:36:38 +02:00
Sebastian Dröge
5cdd49bf25
gst: Update versioning
2012-04-04 14:37:47 +02:00
Stefan Sauer
3b47dce668
wavpackparse: init datastructure
2012-03-27 20:32:14 +02:00
Mark Nauwelaerts
d6cc68a9f7
audioparsers: use sink pad template caps rather than src
2012-03-22 18:27:30 +01:00
Wim Taymans
c44cd8f55b
Merge branch 'master' into 0.11
...
unport gdkpixbuf
not merged: https://bugzilla.gnome.org/show_bug.cgi?id=654850
Conflicts:
docs/plugins/Makefile.am
docs/plugins/gst-plugins-good-plugins-docs.sgml
docs/plugins/gst-plugins-good-plugins-sections.txt
docs/plugins/gst-plugins-good-plugins.hierarchy
docs/plugins/inspect/plugin-avi.xml
docs/plugins/inspect/plugin-png.xml
ext/flac/gstflacdec.c
ext/flac/gstflacdec.h
ext/libpng/gstpngdec.c
ext/libpng/gstpngenc.c
ext/speex/gstspeexdec.c
gst/audioparsers/gstflacparse.c
gst/flv/gstflvmux.c
gst/rtp/gstrtpdvdepay.c
gst/rtp/gstrtph264depay.c
2012-03-22 11:53:24 +01:00
Mark Nauwelaerts
440d7034f0
flacparse: perform additional frame crc check if applicable
...
... such as a frame header parsing throwing some suspicious warnings.
So we can be a bit more convinced we determine the right frame end.
2012-03-19 12:02:47 +01:00
Mark Nauwelaerts
58816039c2
flacparse: avoid indefinite extended search for frame end if possible
...
... which is particularly useful if locked on to the wrong frame start
and/or corrupt frame being crc checked.
2012-03-19 12:02:45 +01:00
Wim Taymans
756948262c
fix template caps refcount
2012-03-10 10:52:01 +01:00
Mark Nauwelaerts
690884bc57
audioparsers: port wavpackparse to 0.11
2012-03-05 13:33:34 +01:00
Mark Nauwelaerts
26dd999b68
Merge branch 'master' into 0.11
...
Conflicts:
ext/wavpack/gstwavpackparse.c
sys/v4l2/gstv4l2bufferpool.c
sys/v4l2/gstv4l2bufferpool.h
sys/v4l2/gstv4l2videooverlay.c
2012-03-05 13:29:59 +01:00
Stefan Sauer
a4ed5daae6
wavpackparse: initialize header to silence older gcc versions
2012-03-05 10:51:33 +01:00
Mark Nauwelaerts
3b846d7c7d
audioparsers: disable non-ported wavpackparse
2012-03-01 11:36:34 +01:00
Mark Nauwelaerts
f189f62b13
Merge branch 'master' into 0.11
...
Conflicts:
ext/wavpack/gstwavpackenc.c
tests/check/elements/audioiirfilter.c
tests/examples/v4l2/probe.c
2012-03-01 11:29:50 +01:00
Mark Nauwelaerts
50cd7c9ac6
audioparsers: add baseparse based wavpackparse
2012-02-28 13:51:45 +01:00
Tim-Philipp Müller
f49410d698
Merge remote-tracking branch 'origin/master' into 0.11
...
Conflicts:
gst/audioparsers/gstmpegaudioparse.c
2012-02-27 01:00:03 +00:00
Tim-Philipp Müller
4ba15ca5d2
mpegaudioparse: fix up after merge
2012-02-27 00:55:38 +00:00
Tim-Philipp Müller
61d3a215a0
Merge commit '38516ad367128d83f9e156529018adb4433cd328' into 0.11
...
Conflicts:
ext/pulse/pulseaudiosink.c
gst/audioparsers/gstmpegaudioparse.c
2012-02-27 00:48:57 +00:00
Alessandro Decina
6e96f4c201
mpegaudioparse: fix compiler warning
2012-02-26 20:30:24 +01:00
Mark Nauwelaerts
0d5b5d839a
mpegaudioparse: support parsing freeform bitrate stream
2012-02-21 18:43:02 +01:00
Wim Taymans
82a43ad1ab
Merge branch 'master' into 0.11
...
Conflicts:
gst/equalizer/gstiirequalizer.c
2012-02-17 23:49:21 +01:00
Mark Nauwelaerts
5cb42081a5
mpegaudioparse: parse either Xing or VBRI data
...
... and avoid confusing debug message claiming neither present.
2012-02-17 17:34:53 +01:00
Wim Taymans
6b2998d5b7
aacparse: remove some unused declarations
2012-02-15 12:41:43 +01:00
Mark Nauwelaerts
1ae32656ae
audioparsers: adjust to modified baseparse API
2012-02-13 18:27:53 +01:00
Mark Nauwelaerts
207f520bbd
aacparse: correctly set ADIF src caps
2012-02-09 22:10:11 +01:00
Mark Nauwelaerts
ee2e07d50d
ac3parse: prevent a few direct exits without cleanup
2012-02-09 22:10:07 +01:00
Wim Taymans
3a095a26b2
aacparse: fix srcpad caps handling
2012-02-03 16:14:08 +01:00
Wim Taymans
bb2bd604e0
update for HEADER flag
2012-01-30 17:16:51 +01:00
Wim Taymans
583d39dd8d
update for new memory API
2012-01-25 12:30:28 +01:00
Sebastian Dröge
93e3ed5a86
Merge branch 'master' into 0.11
...
Conflicts:
ext/cairo/gsttextoverlay.c
ext/pulse/pulseaudiosink.c
gst/audioparsers/gstaacparse.c
gst/avi/gstavimux.c
gst/flv/gstflvmux.c
gst/interleave/interleave.c
gst/isomp4/gstqtmux.c
gst/matroska/matroska-demux.c
gst/matroska/matroska-mux.c
gst/matroska/matroska-mux.h
gst/matroska/matroska-read-common.c
gst/multifile/gstmultifilesink.c
gst/multipart/multipartmux.c
gst/shapewipe/gstshapewipe.c
gst/smpte/gstsmpte.c
gst/udp/gstmultiudpsink.c
gst/videobox/gstvideobox.c
gst/videocrop/gstaspectratiocrop.c
gst/videomixer/videomixer.c
gst/videomixer/videomixer2.c
gst/wavparse/gstwavparse.c
po/ja.po
po/lv.po
po/sr.po
tests/check/Makefile.am
tests/check/elements/qtmux.c
tests/check/elements/rgvolume.c
2012-01-10 14:32:32 +01:00
Matej Knopp
03408a475c
dcaparse: use right variable
...
Fixes use of unitialized variable.
https://bugzilla.gnome.org/show_bug.cgi?id=667085
2012-01-03 14:43:38 +00:00
Oleksij Rempel (Alexey Fisher)
4f98b4ec85
ac3parse: remove unused variable
...
remove unused variable to fix compile error:
make -C audioparsers
make[3]: Betrete Verzeichnis '/home/lex/tmp/gst-plugins-good/gst/audioparsers'
CC libgstaudioparsers_la-gstaacparse.lo
gstaacparse.c: In function 'gst_aac_parse_read_loas_audio_specific_config':
gstaacparse.c:446:12: error: variable 'sbr' set but not used [-Werror=unused-but-set-variable]
cc1: all warnings being treated as errors
Signed-off-by: Oleksij Rempel (Alexey Fisher) <bug-track@fisher-privat.net>
2011-12-21 13:16:44 +00:00
Vincent Penquerc'h
93ac6fb47e
ac3parse: let bsid 9 and 10 through
...
Files with 9 and 10 happen, and seem to comply with the <= 8
format, so let them through.
The spec says nothing about 9 and 10.
https://bugzilla.gnome.org/show_bug.cgi?id=658546
2011-12-20 19:29:42 +00:00
Vincent Penquerc'h
16a4c596eb
aacparse: parse LOAS variant
...
The LOAS variant seems to have three different subvariants itself,
only one of them is implemented as my two samples happen to be
using that one.
The sample rate is not always reported correctly, as the "main"
sample rate is apparently sometimes half what it should be (both
of my samples report 24000 Hz there), and there are two other
parts of the subvariant with different sampling rates. One of them
is parsed, but not the other, as it's located after some other
large amount of variable data that needs parsing first, and there
seems to be a LOT of it, which is useless for our needs here.
This ends up being rather inconsequential, as ffdec_aac_latm,
which is the only decoder that can decode such streams, does not
need the sample rate on the caps anyway.
https://bugzilla.gnome.org/show_bug.cgi?id=665394
2011-12-19 11:39:44 +00:00
Tim-Philipp Müller
668e15598b
Merge remote-tracking branch 'origin/master' into 0.11
...
Conflicts:
sys/v4l2/gstv4l2object.c
2011-12-08 01:28:26 +00:00
Vincent Penquerc'h
0249a73a3e
flacparse: ensure we only check for sample/block mixup at start
...
Otherwise we might trigger at some point within the file, but the
check is only making sense for the second block.
2011-12-04 12:50:57 +00:00
Vincent Penquerc'h
c0e101e93f
various: fix pad template leaks
...
https://bugzilla.gnome.org/show_bug.cgi?id=662664
2011-11-28 13:30:27 +00:00
Tim-Philipp Müller
be0d6baac5
Merge remote-tracking branch 'origin/master' into 0.11
...
Conflicts:
ext/pulse/pulseaudiosink.c
ext/pulse/pulsesrc.c
gst/audioparsers/gstaacparse.c
gst/audioparsers/gstamrparse.c
gst/audioparsers/gstdcaparse.c
gst/audioparsers/gstflacparse.c
gst/effectv/gstradioac.c
gst/effectv/gstradioac.h
gst/effectv/gstripple.c
Some possible FIXMEs remaining in the audio parser getcaps functions.
2011-11-26 13:34:10 +00:00
Sebastian Dröge
6204464735
audioparse: Use the sinkpad template caps as fallback, not the srcpad ones
2011-11-24 10:25:02 +01:00
Sebastian Dröge
c114e7c073
mpegaudioparse: Implement ::get_sink_caps vfunc to propagate downstream caps constraints upstream
2011-11-24 09:59:40 +01:00
Sebastian Dröge
996b4eb4cc
flacparse: Implement ::get_sink_caps vfunc to propagate downstream caps constraints upstream
2011-11-24 09:57:57 +01:00
Sebastian Dröge
e6a2129977
dcaparse: Implement ::get_sink_caps vfunc to propagate downstream caps constraints upstream
2011-11-24 09:55:47 +01:00
Sebastian Dröge
c5b770df09
amrparse: Implement ::get_sink_caps vfunc to propagate downstream caps constraints upstream
2011-11-24 09:53:18 +01:00
Sebastian Dröge
5203b0884a
amrparse: Mark some more functions as static
2011-11-24 09:49:27 +01:00
Sebastian Dröge
fabc5c969b
ac3parse: Implement ::get_sink_caps vfunc to propagate downstream caps constraints upstream
2011-11-24 09:48:33 +01:00
Sebastian Dröge
48b07ae434
aacparse: Mark some functions as static and remove unused function declarations
2011-11-24 09:44:58 +01:00
Sebastian Dröge
94daabf71f
aacparse: Implement ::get_sink_caps vfunc to propagate downstream caps constraints upstream
2011-11-24 09:43:54 +01:00
Matej Knopp
1e5dd9e315
Fix printf format compiler warnings on OS X / 64bit
...
https://bugzilla.gnome.org/show_bug.cgi?id=662615
2011-11-22 01:28:22 +00:00
Wim Taymans
07cc855b24
Merge branch 'master' into 0.11
...
Conflicts:
ext/speex/gstspeexenc.c
gst/rtpmanager/rtpsession.c
2011-11-17 17:17:11 +01:00
Wim Taymans
e7918a5aba
_query_peer_*() -> _peer_query_*()
2011-11-15 18:04:44 +01:00
Vincent Penquerc'h
011c33e91e
flacparse: detect when a file lies about fixed block size
...
If the sample/block number happens to be the same as the block
size, we assume variable block size, and thus counters in samples
in the headers. This can only get us a false positive for a block
size of 1, which is invalid. We can get false negatives more
often though (eg, if not starting at the start of the stream),
but then that's already GIGO.
2011-11-14 15:53:36 +00:00
Wim Taymans
95f3987332
Merge branch 'master' into 0.11
...
Conflicts:
ext/flac/gstflacdec.c
gst/audioparsers/gstflacparse.c
gst/isomp4/qtdemux.c
2011-11-09 12:18:01 +01:00
Vincent Penquerc'h
14a9d1d66e
flacparse: fix last frame timestamp in fixed block size mode
...
The last block may have a different block size, so we should not
use it to scale or we'll end up with a wrong timestamp.
See comment and quote from the FLAC format documentation in the code.
Fixes looped playback of FLAC files (via about-to-finish).
https://bugzilla.gnome.org/show_bug.cgi?id=661215
2011-11-07 12:37:10 +00:00
Wim Taymans
e038ab5a0b
tags: update for tag API removal
2011-11-02 12:09:20 +01:00
René Stadler
cf771ab7ae
ac3parse: fix obvious crash
2011-10-31 18:39:35 +01:00
Tim-Philipp Müller
9cd17092d8
ext, gst: update for taglist API changes
2011-10-30 11:44:53 +00:00