Commit graph

5386 commits

Author SHA1 Message Date
Mark Nauwelaerts
436a85ac8a avidemux: tweak DEFAULT format duration query response 2012-01-20 17:10:25 +01:00
Mark Nauwelaerts
14fe651b15 alphacolor: remove redundant statement 2012-01-20 17:10:21 +01:00
Vincent Penquerc'h
cf81df8058 cutter: fix leak of unused GValue 2012-01-16 17:51:18 +00:00
Vincent Penquerc'h
2a7a38ca07 rtph263ppay: fix caps leak 2012-01-16 15:42:46 +00:00
Vincent Penquerc'h
4d51c68fc0 deinterlace: make interlacedness test deterministic
If the interlaced flag is not present in the caps, we assume the
data is not interlaced, instead of leaving the boolean uninitialized.
2012-01-16 12:13:50 +00:00
Tim-Philipp Müller
f10e8192fa rtpptdemux: plug pad leak in error code path
Based on patch by: Stig Sandnes <stig.sandnes@cisco.com>

Don't leak srcpad if there are no caps.

https://bugzilla.gnome.org/show_bug.cgi?id=667820
2012-01-13 11:02:24 +00:00
Vincent Penquerc'h
654a04f90c gstrtpssrcdemux: fix element leak 2012-01-12 18:23:42 +00:00
Vincent Penquerc'h
f04d812719 matroska: do not leak attachment buffers 2012-01-12 14:19:22 +00:00
Nicola Murino
d1bb060d71 matroskamux: fix codec_priv leaks
https://bugzilla.gnome.org/show_bug.cgi?id=667419
2012-01-10 18:29:06 +00:00
Vincent Penquerc'h
2b2c0940f1 matroskamux: fix codec string leaks 2012-01-09 17:28:17 +00:00
Vincent Penquerc'h
a6d9f6a3ce isomp4: fix caps leak 2012-01-05 19:25:33 +00:00
Vincent Penquerc'h
3489b691c5 isomp4: remove dead assignment 2012-01-05 19:08:03 +00:00
Peter Seiderer
b82d9ca240 multifilesink: post better error message when we run out of disk space
Map write errno ENOSPC to GST_RESOURCE_ERROR_NO_SPACE_LEFT.
2012-01-04 15:38:29 +00:00
Tim-Philipp Müller
86cd5bd7f2 udpsrc: fix valgrind warning
https://bugzilla.gnome.org/show_bug.cgi?id=666644
2011-12-27 11:50:03 +00:00
John Ogness
0c4b60f010 udpsrc: drop dataless UDP packets
It is allowed to send/receive UDP packets with no data. When such
a packet is available, select() will return with success but
ioctl(FIONREAD) will return 0. But a read() must still occur in
order to clear off the UDP packet from the queue.

This patch will read the dataless packet from the socket. If
select() was woken for other reasons (and FIONREAD returns 0),
this may result in a UDP packet getting accidentally dropped.
But since UDP is not reliable, this is acceptable.

NOTE: This patch fixes a nasty bug where sending a dataless
      UDP packet to a udpsrc instance will cause an infinite
      loop.

https://bugzilla.gnome.org/show_bug.cgi?id=666644

Signed-off-by: John Ogness <john.ogness@linutronix.de>
2011-12-27 01:40:34 +00:00
Tim-Philipp Müller
89521166b2 flvmux: don't try to push already-freed buffers
Fixes unit test.
2011-12-25 14:23:29 +00:00
Sebastian Dröge
348afe1669 wavparse: Use scale_ceil() functions from core instead of custom ones 2011-12-24 10:57:42 +01:00
Branko Subasic
a7d6690f92 matroskademux: do not consider duration of non-finalized file
... to avoid it clamping requested seek position.

Non-finalized file case, determined by whether
_parse_blockgroup_or_simpleblock ever updates the segment duration.

Fixes #652195.
2011-12-21 18:14:26 +01:00
Mark Nauwelaerts
628ae5c1a1 matroskademux: improve decision to fall back to scanning when seeking
... which is basically iff not streaming and no entry found in index
2011-12-21 15:45:36 +01: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
Mark Nauwelaerts
b175d1cbc4 flvmux: properly determine final duration
... which can be authoratively obtained from our own written timestamps.
2011-12-19 17:45:07 +01:00
Mark Nauwelaerts
fa5c02b211 flvmux: only write full metadata at start
... rather than having (potentially) unnecessary duplicates written all over,
or even contradictory varying filesize info, or duration info that will not
be rewritten upon header rewrite.
2011-12-19 17:45:04 +01:00
Mark Nauwelaerts
8c32195d51 flvmux: use GstCollectPads2 buffer callback and running time clipper
... since the default collection heuristics suffice.
2011-12-19 17:45:01 +01:00
Mark Nauwelaerts
0c7a491a6f qtmux: use GstCollectPads2 buffer callback and running time clipper
... since default collection heuristics suffice.
2011-12-19 17:44:57 +01:00
Mark Nauwelaerts
f06d741633 matroskamux: bring a few debug statements up to specs
... and minor spelling fix.
2011-12-19 17:44:55 +01:00
Mark Nauwelaerts
0626724262 matroskamux: additional subtitle support 2011-12-19 17:44:52 +01:00
Mark Nauwelaerts
0845a3718a matroskamux: additional buffer handling cleanup 2011-12-19 17:44:43 +01:00
Mark Nauwelaerts
7723d64a73 matroskamux: use GstCollectPads2 buffer callback and running time clipper 2011-12-19 17:44:41 +01: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
Mark Nauwelaerts
50be1d5dae flvmux: use GstCollectPads2 event callback
... in stead of local HACK.
2011-12-15 16:49:41 +01:00
Mark Nauwelaerts
f6b38f2c39 matroskamux: use GstCollectPads2 event callback
... in stead of local HACK.
2011-12-15 16:31:36 +01:00
Mark Nauwelaerts
97391f1402 avimux: use GstCollectPads2 event callback
... in stead of local HACK.
2011-12-15 16:31:33 +01:00
Mark Nauwelaerts
7480b4407e qtmux: use GstCollectPads2 event callback
... in stead of local HACK.
2011-12-15 16:31:29 +01:00
Vincent Penquerc'h
994dbb4c39 smpte: port to GstCollectPads2 2011-12-14 19:13:21 +00:00
Vincent Penquerc'h
738ee836f3 multipartmux: port to GstCollectPads2 2011-12-14 19:10:53 +00:00
Vincent Penquerc'h
c422a4e2e6 matroskamux: port to GstCollectPads2 2011-12-14 19:07:23 +00:00
Vincent Penquerc'h
79a6e23c1f qtmux: port to GstCollectPads2 2011-12-14 19:02:23 +00:00
Vincent Penquerc'h
3135cab5a3 interleave: port to GstCollectPads2 2011-12-14 18:55:36 +00:00
Vincent Penquerc'h
44d001346a flxmux: port to GstCollectPads2 2011-12-14 18:52:37 +00:00
Vincent Penquerc'h
a89e2b7e48 avimux: port to GstCollectPads2 2011-12-14 18:38:09 +00:00
Mark Nauwelaerts
ebfc77da19 matroskademux: filter bogus index entries with missing block number
... to avoid contradictory information resulting in seeks sending more
downstream than needed for the corresponding segment.
2011-12-13 18:20:49 +01:00
Mark Nauwelaerts
00ed34d2eb matroskademux: cater for safer arithmetic with global start time 2011-12-13 18:20:47 +01:00
Mark Nauwelaerts
fd88096577 matroskademux: tweak final closing segment sending
... to avoid it interfering with (sparse) stream syncing.
2011-12-13 18:20:44 +01:00
Thiago Santos
4a5364d7f6 qtmux: make debug message more useful
Add information about the taglist and which pad received the
tag event on the debug logging.
2011-12-13 10:21:31 -03:00
Vincent Penquerc'h
ecec3859d8 wavparse: avoid using floating point unnecessarily
https://bugzilla.gnome.org/show_bug.cgi?id=665911
2011-12-13 13:01:03 +00:00
Vincent Penquerc'h
b612550379 wavparse: fix format specifier signedness
Use unsigned specifiers for all unsigned values.
A lot of the values used here are unsigned, and some can take
high enough values that their signed counterpart will be negative.

https://bugzilla.gnome.org/show_bug.cgi?id=665911
2011-12-13 13:01:03 +00:00
Vincent Penquerc'h
734e352b73 wavparse: add a ignore-length property
This allows playing broken streams which write an incorrect
length in their data chunks (such as, at least, one streaming
camera).

https://bugzilla.gnome.org/show_bug.cgi?id=665911
2011-12-13 13:01:03 +00:00
Mark Nauwelaerts
581ca6ce4e matroskademux: mind (un)signed in some timestamp arithmetic
... to avoid ending up with invalid (negative) duration.
2011-12-12 15:23:50 +01:00
Mark Nauwelaerts
ed3f89fad5 qtdemux: increase parse tolerance for fuzzy file cases 2011-12-12 15:23:33 +01:00
Tim-Philipp Müller
b8b8454bcb Suppress deprecation warnings in selected files, for g_static_rec_mutex_* mostly
GStaticRecMutex is part of our API/ABI, not much we can do here
in 0.10 for most of these.
2011-12-12 09:46:27 +00:00
Tim-Philipp Müller
330d984288 Use g_thread_try_new() instead of g_thread_crate() with newer glib versions 2011-12-12 09:46:27 +00:00
Tim-Philipp Müller
f60eb9ae2c alpha: use new glib API for static mutex if available 2011-12-12 09:46:27 +00:00
Tim-Philipp Müller
66f6e12888 Work around deprecated thread API in glib master
Add private replacements for deprecated functions such as
g_mutex_new(), g_mutex_free(), g_cond_new() etc., mostly
to avoid the deprecation warnings. We'll change these
over to the new API once we depend on glib >= 2.32.
2011-12-12 09:46:27 +00:00
Tim-Philipp Müller
c363ae8254 matroskamux: stream-format=raw goes with aac caps, not mp3 caps 2011-12-08 11:00:45 +00:00
Stefan Sauer
b5324c288b docs: add add the two enum values that were just added too 2011-12-06 16:47:25 +01:00
Stefan Sauer
64dd9f18a7 multifilesink: expose the enum property docs for splitting mode.
Fixes #665666.
2011-12-06 16:16:12 +01:00
Sebastian Rasmussen
c090201ca5 rtpjpegpay: Ceil jpeg dimensions, instead of floor
A JPEG image inside an RTP stream has a preceeding RFC2435 header that
conveys width/height. The dimensions in this header are limited to be
multiples of 8. Since JPEG uses an MCU of 8x8 pixels any image must
already indirectly have image data dimensions that are rounded up in
order to contain enough data to render the image. Therefore this fix
safely rounds the image dimensions in the RFC2435 header up to the
closest multiple of 8.
2011-12-05 10:48:54 +01: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
3e2b23280e matroskaparse: warn if accumulating headers after they were pushed
https://bugzilla.gnome.org/show_bug.cgi?id=665412
2011-12-03 18:44:39 +00:00
David Schleef
94b8f0b74e matroskaparse: fix parsing
Mark more parts as belonging to streamheaders.
2011-12-03 10:40:03 -08:00
Vincent Penquerc'h
7a7db8cbaf flvdemux: fix discontinuity threshold check when timestamps go backwards
Since unsigned types are used, a negative value would show as very, very
positive.
Fixes A/V sync on some... less than well made files where timestamps go
backwards.
2011-12-03 17:30:10 +00:00
Tim-Philipp Müller
337533ee84 matroska-mux: fix name of new property and the unit test
https://bugzilla.gnome.org/show_bug.cgi?id=654379
2011-12-01 13:22:42 +00:00
Tim-Philipp Müller
ab96fb7cdb multifilesink: add basic buffer list handling
We assume for now that all buffers in a buffer list
should end up in the same file (so we can group GOPs
in buffer lists, for example). Could optimise this
a bit to avoid the memcpy.
2011-12-01 12:50:58 +00:00
Tim-Philipp Müller
82ac47f33f multifilesink: write stream-headers when switching to the next file in max-size mode 2011-12-01 12:50:58 +00:00
Tim-Philipp Müller
bced3c218a multifilesink: add new 'max-size' mode for switching to the next file 2011-12-01 12:50:58 +00:00
Tim-Philipp Müller
5ffee06f14 multifilesink: add "max-file-size" property for new next-file mode 2011-12-01 12:50:58 +00:00
Sebastian Dröge
6ec601fa12 matroskademux: Don't forget SSA subtitles in last commit 2011-12-01 13:38:06 +01:00
Sebastian Dröge
588734b291 matroskademux: Only check for markup and escape if necessary for plaintext subtitles
Otherwise we break USF and ASS/SSA subtitles.
2011-12-01 13:35:54 +01:00
Alessandro Decina
91834bf80b multifile: fix build in uninstalled setup
Add -base libs includes to CFLAGS, fix order of LIBS <cit>.
2011-12-01 13:25:45 +01:00
Alessandro Decina
ed98755241 multifilesink: add flag to cut after a force key unit event 2011-12-01 13:25:45 +01:00
Sebastian Dröge
6d4a634626 matroskademux: Copy all buffer flags when creating a subtitle buffer copy after postprocessing
This also copies the caps. Otherwise we could end up pusing
the first buffer without any caps, which causes downstream
to not get notified about the caps.

Fixes bug #664892.
2011-12-01 12:47:26 +01:00
Alexey Fisher
23594b0324 matroskamux: make default framerate optional per stream
there is at least two use cases where default frame rate
should or may be disabled:
- vp8 stream with altref frame enabled. If default frame rate
is enabled, some players will missinterprete it (critical!)
- for webm container, to reduce micro overhead
- for stream with variable frame rate.

Signed-off-by: Alexey Fisher <bug-track@fisher-privat.net>
2011-12-01 10:55:57 +01:00
Stefan Sauer
c0e17dff4f rippletv: fix CLAMP end-values 2011-11-30 22:14:01 +01:00
Tim-Philipp Müller
0584ae8f98 splitfilesrc: specify filenames via normal wildcards instead of regular expressions
Less cracktastic in the end.
2011-11-30 19:11:12 +00:00
Tim-Philipp Müller
e6c4979a42 splitfilesrc: check bytes actually read, just in case
Handle corner case where we try to read beyond the end of the
last file part, in which case we want to return a short read.
If we get fewer bytes than expected for any other file part,
we should just error out, since something fishy's going on
then.
2011-11-30 16:39:33 +00:00
Tim-Philipp Müller
a595df5daa splitfilesrc: set offsets on buffers
Looks like some parsers (in some versions at least) expect the
offsets to be set, and behave weird if that's not the case
(e.g. off-by-one in h264parse).
2011-11-30 16:39:33 +00:00
Tim-Philipp Müller
2dd67036e5 multifile: add splitfilesrc element
Add new splitfilesrc element that presents multiple files
(selectable via a location regex) as one single contiguous
file.
2011-11-30 16:39:33 +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
Chad
a2337b8af4 taginject: set gap-aware
The element does not modify the data anyway.
2011-11-28 11:47:11 +01:00
Stefan Sauer
b5bf029401 equalizer: also sync the parameters for the filter bands 2011-11-26 21:40:22 +01:00
Tim-Philipp Müller
54a951ff15 matroskademux: initialise seen_markup_tag field on subtitle stream context 2011-11-26 16:06:59 +00:00
Thiago Santos
a3bc431924 ismlmux: Use iso-fragmented as variant type
Using 'iso' conflicts with mp4mux variant type, ismlmux now
uses iso-fragmented

Fixes #656823
2011-11-25 19:29:31 -03:00
Vincent Penquerc'h
21d3faa400 flvdemux: fix seeking
Which I accidentally broke when fixing flv videos breaking on
spurious timestamp discontinuities in broken files.

https://bugzilla.gnome.org/show_bug.cgi?id=631430
2011-11-25 16:03:59 +00:00
Stefan Sauer
ebefb140b9 effectv: repair color modes in radioactv by taking rgb,bgr into account 2011-11-25 13:13:47 +01:00
Stefan Sauer
c1d38ea8d4 radioactv: add one more set of caps
It also work in this format. Avoids the need for conversion.
2011-11-25 11:44:49 +01:00
Stefan Sauer
3295482afd effecttv: fix reverse negotiation
The plugins were using _fixed_caps_ and thus not adjusting to new upstream
sizes. Spotted by Tim Müller.
2011-11-25 11:44:18 +01:00
Stefan Sauer
5d03d65349 warptv: remove not needed ifdef 2011-11-25 11:43:16 +01:00
Stefan Sauer
f0fe717cd9 rippletv: clean up the rendering code a bit
This is corrrupts the memoy when resizing. Add a FIXME to make it resizeable
once that is solved.
2011-11-25 10:15:35 +01:00
Stefan Sauer
b6de7baeb6 effecttv: fix reverse negotiation
The plugins were using _fixed_caps_ and thus not adjusting to new upstream
sizes. Spotted by Tim Müller.
2011-11-24 20:44:38 +01:00
Thiago Santos
230ce4367f multifilesink: Fix leak of filename strings
Do not forget to free the filename strings when deleting
the list of files.
2011-11-24 14:18:44 -03:00
Vincent Penquerc'h
b33da78f72 wavparse: skip id32 tags
This allows decoding at least one sample where something has
stuffed some ID3 tag before the (supposedly initial) FMT\ .

https://bugzilla.gnome.org/show_bug.cgi?id=660249
2011-11-24 17:07:23 +00:00
Vincent Penquerc'h
cbbabd6ccc edgetv: trivial comment fix for clarity
https://bugzilla.gnome.org/show_bug.cgi?id=661841
2011-11-24 10:43:25 +01:00
Vincent Penquerc'h
852104b4ee edgetv: don't leave bits of the output buffer uninitialized
Let's initialize them to zero. It looks alright, but then it
also looks alright with v3, or with the corresponding pixels
from the source. I don't know what the original intent would
be, and the original effectv source also has this bug/feature.

https://bugzilla.gnome.org/show_bug.cgi?id=661841
2011-11-24 10:43:25 +01: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