Commit graph

303 commits

Author SHA1 Message Date
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
Wim Taymans 9c14280b1d make some more things compile again 2011-10-27 19:00:52 +02:00
Wim Taymans 87fbd1e784 Merge branch 'master' into 0.11
Conflicts:
	common
	ext/pulse/pulsesink.c
	ext/soup/gstsouphttpclientsink.c
	gst/audioparsers/gstaacparse.c
	gst/audioparsers/gstac3parse.c
	gst/rtp/gstrtph264depay.c
	gst/rtpmanager/gstrtpjitterbuffer.c
	gst/rtpmanager/rtpjitterbuffer.c
	gst/rtsp/gstrtspsrc.c
	sys/ximage/gstximagesrc.c
2011-09-28 12:44:59 +02:00
Julien Isorce 2131a3b7f8 ac3parse: correctly check for ac3/e-ac3 switch
https://bugzilla.gnome.org/show_bug.cgi?id=659943
2011-09-23 16:26:50 +01:00
Vincent Penquerc'h d17d13219c ac3parse: use bsid 9 and 10 to control sample rate
See http://matroska.org/technical/specs/codecid/index.html

The spec is silent about this though...

https://bugzilla.gnome.org/show_bug.cgi?id=658546
2011-09-09 13:59:31 +02:00
Sebastian Dröge c29069fd11 ac3parse: Add Converter to the classification because it can convert between different alignments
This allows decodebin2 to let it negotiate properly.
2011-09-07 12:11:39 +02:00
Sebastian Dröge 786d35f53f audioparsers: Improve src template caps
Remove the parsed/framed fields and add all fields to the template
caps that always exist.
2011-09-07 12:10:48 +02:00
Mark Nauwelaerts 625e7a6143 aacparse: parse codec_data to determine number of samples per frame
Fixes #656734.
2011-09-07 11:20:03 +02:00
Wim Taymans 33f18b8ea4 Merge branch 'master' into 0.11
Conflicts:
	gst/audioparsers/gstamrparse.c
	gst/isomp4/qtdemux.c
2011-09-06 16:06:25 +02:00
Mark Nauwelaerts b9a54a38b0 amrparse: fix and streamline valid frame checking
... to handle various combinations of sync or not, and sufficient data
or not as might be expected.

Fixes #650714.
2011-09-05 15:51:48 +02:00
Wim Taymans e9df54819c Merge branch 'master' into 0.11 2011-08-24 14:16:44 +02:00
Vincent Penquerc'h f3fc3e1f69 aacparse: only require two frames in a row when we do not have sync
This avoids a single bit error dropping two frames unnecessarily.
The two consecutive frames check is still required when we don't
have sync.

https://bugzilla.gnome.org/show_bug.cgi?id=657080
2011-08-24 08:26:31 +02:00
Wim Taymans 4bb2b140e9 Merge branch 'master' into 0.11
Conflicts:
	sys/v4l2/v4l2src_calls.c
2011-08-16 18:35:53 +02:00
Vincent Penquerc'h 6ac7ad8a2c flacparse: fix off by one in frame size check
Yes, I was tracking another bug and the small test file I generated
to test with improbably just happened to trigger this, with a second
and last frame of 1615 bytes.

https://bugzilla.gnome.org/show_bug.cgi?id=656649
2011-08-16 13:25:30 +01:00
Wim Taymans ee2aa25e04 port to new API 2011-08-03 18:37:27 +02:00
Wim Taymans 4121021bb2 Merge branch 'master' into 0.11
Conflicts:
	ext/pulse/pulsesink.c
	ext/pulse/pulsesrc.c
	gst/audioparsers/gstac3parse.c
	gst/rtp/gstrtph264depay.c
	gst/rtp/gstrtph264pay.c
	gst/rtpmanager/gstrtpssrcdemux.c
2011-08-03 18:25:30 +02:00
Tim-Philipp Müller b843f8f99c gst: udpate for position/duration/convert query API changes 2011-07-28 11:38:31 +01:00
Arun Raghavan 89564fcb69 ac3parse: Support switching alignment on-the-fly
This allows switching of alignment for E-AC3 streams at run-time. This
is requested by downstream elements via a custom event.

https://bugzilla.gnome.org/show_bug.cgi?id=650313
2011-07-27 20:43:56 +05:30
Arun Raghavan 96972eb462 ac3parse: Add support for IEC 61937 alignment
When pushing out buffers over S/PDIF or HDMI, IEC 61937 payloading
requires each buffer to contain 6 blocks from each substream. This adds
code to collect all the frames needed to meet this requirement before
pushing out a buffer.

https://bugzilla.gnome.org/show_bug.cgi?id=650313
2011-07-26 10:40:00 +05:30
Wim Taymans 9c087d7d85 Merge branch 'master' into 0.11 2011-07-15 17:06:39 +02:00
René Stadler fd38772d3e ac3parse: fix buffer duration on blocks-per-frame change
The gst_base_parse_set_frame_rate call was predicated on a change to
sample rate, duration or profile. However, the block count per frame can
also change between packets, which would result in incorrect buffer
durations.
2011-07-11 15:35:46 +03:00
Mark Nauwelaerts d59a00aa1c Merge branch 'master' into 0.11
Conflicts:
	ext/pulse/pulsesink.c
2011-07-04 11:48:13 +02:00
Jonas Larsson 1912c86946 aacparse: not so greedy minimum frame size
Fixes #653559.
2011-06-28 12:40:27 +02:00
Wim Taymans 7ef7157986 Merge branch 'master' into 0.11 2011-06-17 18:12:50 +02:00
Wim Taymans 83678af5e0 flacparse: fix unitialized access 2011-06-15 15:17:19 +02:00
Mark Nauwelaerts d17d6d74be audioparsers: not so greedy minimum frame size
... which will be determined by parsing anyway, and avoids introducing
redundant additional latency.
2011-06-13 17:06:37 +02:00
Edward Hervey 7389cb1513 audioparsers: fix some more parsers 2011-06-06 20:43:31 +02:00
Wim Taymans d89790d545 Merge branch 'master' into 0.11
Conflicts:
	gst/avi/gstavidemux.c
	gst/rtp/gstrtpac3depay.c
	gst/rtp/gstrtpg726depay.c
	gst/rtp/gstrtpmpvdepay.c
	gst/videofilter/gstgamma.c
2011-05-24 17:34:19 +02:00
Tim-Philipp Müller a53540346a flacparse: tell baseparse the duration in samples for better accuracy
Tell GstBaseParse the duration in samples instead of time, so that
a duration query in DEFAULT format will return the correct number
of samples without rounding errors. Baseparse will convert this
into time itself when needed.

https://bugzilla.gnome.org/show_bug.cgi?id=650785
2011-05-23 13:50:46 +01:00
Tim-Philipp Müller 1183d0c1ab flacparse: make conversion from TIME to DEFAULT format (samples) work
Fix copy'n'paste error in the previous commit.
2011-05-23 13:23:21 +01:00
Sebastian Dröge 8823ae251a flacparse: Implement conversions between TIME and DEFAULT format
Fixes bug #650785.
2011-05-23 11:43:02 +02:00
Tim-Philipp Müller e0cadab5c2 flacparse: don't error out on invalid minimum_blocksize value in streaminfo header
We don't use it, so may just as well accept an invalid value
of 0 here, which is likely inconsequential anyway.

https://bugzilla.gnome.org/show_bug.cgi?id=650691
2011-05-22 18:54:18 +01:00
Wim Taymans 63a17f4ec9 audioparsers: fix some parsers 2011-04-29 17:55:28 +02:00
Tim-Philipp Müller a0205ecd51 flacparse: update for gst_base_parse_frame_init() API change 2011-04-15 18:51:20 +01:00
Tim-Philipp Müller 063b3d9dcd ac3parse: fix unused-but-set-variable warning with gcc 4.6 2011-04-13 17:22:19 +01:00
Sebastian Dröge 4250ff5994 mpegaudioparse: The VBRI header is always at offset 0x20, independent of MPEG version
Also clean up advancing of the data pointer a bit.

Fixes bug #647659.
2011-04-13 17:12:47 +02:00
Tim-Philipp Müller ad0e4442e9 audioparsers: update for set_frame_props -> set_frame_rate API change 2011-04-08 18:07:18 +01:00
Mark Nauwelaerts dbbf54720c mpegaudioparse: relax sync match a bit when draining
... to at least allow initial caps change (but no further caps jitter).
Fixes unit test again after previous change.
2011-04-08 18:07:18 +01:00
Tim-Philipp Müller e067c554c2 aacparse, amrparse: gst_fooparse_xyz -> gst_foo_parse_xyz to match GstFooParse
See moving-plugins checklist.
2011-04-08 18:07:17 +01:00
Tim-Philipp Müller e44456b481 audioparsers: hook up to build 2011-04-08 18:07:17 +01:00
Tim-Philipp Müller 7a2a088c53 audioparsers: port to new GstBaseParse in core 2011-04-08 18:07:17 +01:00
Mark Nauwelaerts de54fa0699 mpegaudioparse: require tighter sync match when draining 2011-04-08 18:07:17 +01:00
Sebastian Dröge f3a1dc9796 mpegaudioparse: Parse encoder delay and encoder padding from the LAME header if present 2011-04-08 18:07:17 +01:00
Arun Raghavan a1ec326204 dcaparse: Bump rank to primary+1
Seems to work fine with a reasonably wide range of media, so bumping
rank.
2011-04-08 18:07:17 +01:00
Arun Raghavan 3050dbb8fe dcaparse: Expose frame size in caps
This exports the size of the frame (number of bytes from one sync point
to the next) as the "frame_size" field in caps.
2011-04-08 18:07:17 +01:00
Arun Raghavan c0bc522f24 dcaparse: Expose block size in caps
This sets the "block_size" field on caps as the number of samples
encoded in one frame.
2011-04-08 18:07:17 +01:00
Tim-Philipp Müller d92eba5563 mpegaudioparse: add FIXME for making the base class use xing seek tables better 2011-04-08 18:07:17 +01:00
Sebastian Dröge bf9859ad61 dcaparse: Add depth and endianness to the caps
Some decoders can only handle specific endianness or a fixed
depth and this allows better negotiation.

Fixes bug #644208.
2011-04-08 18:07:17 +01:00
David Schleef 7d876727b3 Revert "aacparse: allow parsed frames on sink pad"
This reverts commit e49b89d5c5.
2011-04-08 18:07:17 +01:00
David Schleef ef8edf91d9 aacparse: allow parsed frames on sink pad 2011-04-08 18:07:16 +01:00
David Schleef 9469aa92f3 baseparse: Create baseparse library 2011-04-08 18:07:16 +01:00
Mark Nauwelaerts f3f44f81c3 baseparse: tune QUERY_SEEKING response
Even if we currently do not have a duration yet, assume seekable if
it looks like we'll likely be able to determine it later on
(which coincides with needed information to perform seeking).

Fixes #641047.
2011-04-08 18:07:16 +01:00
Arun Raghavan f0435d6fd6 baseparse: Update min/max bitrate before first posting them
This avoids posting an initial min-bitrate of G_UINTMAX and max-bitrate
of 0.

https://bugzilla.gnome.org/show_bug.cgi?id=641857
2011-04-08 18:07:16 +01:00