Mark Nauwelaerts
fd848904f9
baseparse: adjust seek handling and newsegment sending
...
Perform sanity check on type of seek, and only perform one that is
appropriately supported. Adjust downstream newsegment event
to first buffer timestamp that is sent downstream.
2011-04-08 18:07:03 +01:00
Mark Nauwelaerts
748b96ddef
baseparse: minor refactor cleanup
...
Also add some debug logging.
2011-04-08 18:07:03 +01:00
Mark Nauwelaerts
83f02e8bc8
flacparse: locate next sync code more efficiently
2011-04-08 18:07:03 +01:00
Mark Nauwelaerts
534e2d7f49
flacparse: baseparse takes care of handling leftover pieces
2011-04-08 18:07:03 +01:00
Mark Nauwelaerts
6f3106b603
baseparse: implement leftover draining in pull mode
2011-04-08 18:07:03 +01:00
Mark Nauwelaerts
0d53b6ad62
flacparse: set _OFFSET and _OFFSET_END on outgoing buffers
2011-04-08 18:07:03 +01:00
Mark Nauwelaerts
4db789a18c
audioparsers: move 'flacparse' into it
2011-04-08 18:07:02 +01:00
Mark Nauwelaerts
14763a68be
baseparse: provide default conversion using bps if no fps available
...
Also store estimated duration as such, rather than pretending otherwise
(e.g. set by subclass).
2011-04-08 18:07:02 +01:00
Mark Nauwelaerts
a7f46ed82a
baseparse: check for remaining data when draining in push mode
2011-04-08 18:07:02 +01:00
Mark Nauwelaerts
23e55f4d6b
baseparse: fix pull mode cache size comparison
2011-04-08 18:07:02 +01:00
Edward Hervey
be9c6045d0
ac3parse: Fix unitialized variable.
2011-04-08 18:07:02 +01:00
Christian Schaller
d461f7529b
Update spec file and fix ac3parser header listing in Makefile.am
2011-04-08 18:07:02 +01:00
Michael Smith
3be2f72344
audioparse: fix a format string as reported on irc.
2011-04-08 18:07:02 +01:00
Mark Nauwelaerts
432abf42c3
ac3parse: ensure sufficient data available for parsing
2011-04-08 18:07:02 +01:00
Mark Nauwelaerts
d90c80e017
ac3parse: extract and use some more details for Enhanced Ac-3 streams
2011-04-08 18:07:02 +01:00
Mark Nauwelaerts
0777806170
baseparse: custom bufferflag indicates not to count frame in stats
2011-04-08 18:07:02 +01:00
Mark Nauwelaerts
b320b08149
ac3parse: perform additional frame checks when resyncing
2011-04-08 18:07:02 +01:00
Mark Nauwelaerts
41e3099d66
ac3parse: inform base parser of frame duration
2011-04-08 18:07:02 +01:00
Mark Nauwelaerts
138c4d7f9c
ac3parse: improve src caps settings
2011-04-08 18:07:01 +01:00
Mark Nauwelaerts
37a58ebe3a
ac3parse: initial version
...
MARGINAL rank for now; might take some time for some (useful)
framed=true/false to appear here and there.
2011-04-08 18:07:01 +01:00
Mark Nauwelaerts
781b61b166
amrparse: use (default) time handling of baseparser class
2011-04-08 18:07:01 +01:00
Mark Nauwelaerts
3279f55a77
audioparsers: move 'amrparse' into it
2011-04-08 18:07:01 +01:00
Mark Nauwelaerts
db4181119d
audioparsers: reference GstBaseParse now lives here
2011-04-08 18:07:01 +01:00
Mark Nauwelaerts
bd56e3ad79
audioparsers: rename 'aacparse' plugin to generic 'audioparsers' plugin
2011-04-08 18:07:01 +01:00
Mark Nauwelaerts
d41ed9693d
aacparse: separate plugin registration and rename plugin
2011-04-08 18:07:01 +01:00
Mark Nauwelaerts
7cd3f0a2db
aacparse: ensure sufficient data available before accessing
2011-04-08 18:06:59 +01:00
Mark Nauwelaerts
f3d2429f92
aacparse: use (default) time handling of baseparser class
2011-04-08 18:06:59 +01:00
Mark Nauwelaerts
4ed9e61615
aacparse: fixup comments to C-style
2011-04-08 18:06:59 +01:00
Mark Nauwelaerts
4a2a3a60f4
baseparse: reset passthrough mode to default (disabled) on activation
2011-04-08 18:06:59 +01:00
Mark Nauwelaerts
4d637e7549
baseparse: ensure buffer metadata is writable
2011-04-08 18:06:59 +01:00
Mark Nauwelaerts
3b88bb6cd6
baseparse: fix/enhance DISCONT marking
...
In particular, consider DISCONT == !sync, and allow subclass to query
sync state, as it may want to perform additional checks depending
on whether sync was achieved earlier on.
Also arrange for subclass to query whether leftover data is being drained.
2011-04-08 18:06:59 +01:00
Mark Nauwelaerts
b766e405b3
baseparse: add timestamp handling, and default conversion
...
In particular, (optionally) provide baseparse with a notion of frames per second
(and therefore also frame duration) and have it track frame and byte counts.
This way, subclass can provide baseparse with fps and have it provide default
buffer time metadata and conversions, though subclass can still install
callbacks to handle such itself.
2011-04-08 18:06:59 +01:00
Mark Nauwelaerts
cc203d7219
baseparse: documentation fixes
2011-04-08 18:06:59 +01:00
Mark Nauwelaerts
4f2790c9a1
baseparse: use_fixed_caps for src pad
...
After all, stream is as-is, and there is little molding to downstream's
taste that can be done. If subclass can and wants to do so, it can
still override as such.
2011-04-08 18:06:59 +01:00
Julien Moutte
bd45e64d31
aacparse: Fix compilation warnings
2011-04-08 18:06:59 +01:00
Josep Torra
906c4faa24
aacparse: fix warnings in macosx snow leopard
2011-04-08 18:06:59 +01:00
Mark Nauwelaerts
fb84ca3d93
aacparse: forego (bogus) parsing of already parsed (raw) input
2011-04-08 18:06:58 +01:00
Mark Nauwelaerts
19c47f9673
baseparse: prevent infinite loop when draining
2011-04-08 18:06:58 +01:00
Mark Nauwelaerts
d610cfbbc0
baseparse: fix minor memory leak
2011-04-08 18:06:58 +01:00
Sebastian Dröge
bfe54aff4b
aacparse: Add function for the baseparse subclass to push buffers downstream
...
Also handle the case gracefully where the subclass decides to drop
the first buffers and has no caps set yet. It's still required to
have valid caps set when the first buffer should be passed downstream.
2011-04-08 18:06:58 +01:00
Sebastian Dröge
c83364ee81
baseparse: Fix seek event leaking
2011-04-08 18:06:58 +01:00
Mark Nauwelaerts
442ab41a05
aacparse: ADIF: do not send bogus timestamps, leave to downstream (decoder)
2011-04-08 18:06:58 +01:00
Tim-Philipp Müller
92c80bc879
aacparse: fix sample rate extraction from codec data
...
In one case we extracted the sample rate index from the codec data
and saved it as sample rate rather than getting the real sample
rate from the table. Fix that, and also make sure we don't access
non-existant table entries by adding a small helper function that
guards against out-of-bounds access in case of invalid input data.
2011-04-08 18:06:58 +01:00
Tim-Philipp Müller
c252137b82
aacparse, amrparse: remove bogus gst_pad_fixate_caps() calls
2011-04-08 18:06:58 +01:00
Tim-Philipp Müller
e74776b3cb
baseparse: propagate return value of GstBaseParse::set_sink_caps()
...
gst_base_parse_sink_setcaps() presumably should fail if the subclass
returns FALSE from its ::set_sink_caps() function.
2011-04-08 18:06:58 +01:00
Tim-Philipp Müller
c59ee281ba
baseparse: don't try to GST_LOG an already-freed caps string
...
The proper way to log caps is via GST_PTR_FORMAT anyway.
2011-04-08 18:06:58 +01:00
Tim-Philipp Müller
fc09fe78af
aacparse: set channels and rate on output caps, and keep codec_data
...
Create output caps from input caps, so we maintain any fields we
might get on the input caps, such as codec_data or rate and channels.
Set channels and rate on the output caps if we don't have input caps
or they don't contain such fields. We do this partly because we can,
but also because some muxers need this information. Tagreadbin will
also be happy about this.
2011-04-08 18:06:57 +01:00
Mark Nauwelaerts
debb9362ef
baseparse: fix debug category
2011-04-08 18:06:57 +01:00
Mark Nauwelaerts
f5379229a0
baseparse: fix (regression in) newsegment handling
...
(aacparse, amrparse, flacparse). Fixes #580133 .
2011-04-08 18:06:57 +01:00
René Stadler
4b80afc22c
baseparse: Fix slightly broken buffer-in-segment check (aacparse, amrparse, flacparse)
2011-04-08 18:06:57 +01:00