Commit graph

9536 commits

Author SHA1 Message Date
Tim-Philipp Müller
06972db7b6 icydemux: fix tag list handling issues that might have caused crashes
Fix slightly confused tag handling in some places: make it clear when
we're taking ownership of a tag list and when not. For example,
gst_icydemux_tag_found() was taking ownership when the source pad
existed, but otherwise not (leak). Also, gst_event_parse_tag() does
not return a newly-allocated taglist, but a tag list that belongs to
the tag event, so don't give ownership of it away.

While we're at it, some minor clean-ups: don't re-invent g_strndup()
and simplify gst_icydemux_parse_and_send_tags() a bit, and don't
leak the tag list in case no valid tags where found.

https://bugzilla.gnome.org/show_bug.cgi?id=641330
2011-02-21 11:03:03 +00:00
David Schleef
8e6b876e76 Check that collectpads exists before removing pad
The core now calls release pad from finalize, at which point
the collectpads might have already been freed.
2011-02-20 23:46:01 -08:00
David Schleef
13d441315f pngdec: Handle 16-bit-per-channel images 2011-02-20 12:12:51 -08:00
Stefan Kost
367adf2b69 avidemux: stream->current_total is accumulated byte size and not time
Use timestamp for the stream index as well.
2011-02-18 10:14:32 +02:00
David Schleef
053f03c032 udpsink: warn when packet is too large 2011-02-17 18:05:43 -08:00
David Schleef
e017e14847 matroskaparse: New element
Copied from demux.  Duplicates much code, also some dead code
remaining.
2011-02-17 18:05:43 -08:00
David Schleef
eab982ce60 matroskademux: Earlier debug category initialization 2011-02-17 18:05:43 -08:00
David Schleef
63bb9807a3 flvmux: don't set duration for live stream 2011-02-17 18:05:43 -08:00
David Schleef
1732baf7af debugutils: remove bitrotten negotiation element
Wasn't enabled, didn't work, and planned features have been
superceded by capsfilter and capsdebug.
2011-02-17 18:05:43 -08:00
David Schleef
e54ba41ff7 rtpvrawpay: Implement interlacing 2011-02-17 18:05:43 -08:00
Stefan Kost
d8f29266e9 avidemux: also add the frame-type for the stream index 2011-02-17 17:57:42 +02:00
Stefan Kost
80d820ff29 avidemux: get the index writer id when the pad has a parent
Otherwise the index writer has a weired name, as the pad has no parent yet.
2011-02-17 17:56:29 +02:00
Stefan Kost
99e4bdd8f2 avidemux, flvdemux: formatting cleanup
Trim trailing whitespaces and fix the formatting of double negation.
2011-02-17 14:13:36 +02:00
Stefan Kost
ade128a002 avidemux, flvdemux: mark delta-units in the index
We need to use the 'delta' flag for delta units and not the 'none' flag.
2011-02-17 14:13:36 +02:00
Tim-Philipp Müller
603c703cf2 .gitignore: ignore moved equalizer test binary 2011-02-17 11:58:42 +00:00
Stefan Kost
b38cf735a5 qtdemux: mark delta-unit in the index
We need to use the delta flag fro delta units and not none. Print more details
to the debug log.
2011-02-17 12:50:03 +02:00
Stefan Kost
9852f1cee6 qtdemux: formatting cleanup
Trim trailing whitespaces and fix the formatting of double negation.
2011-02-17 12:48:49 +02:00
Stefan Kost
8d5be2e8a4 matroskamux: rework _request_new_pad to handle explict req-pad-names
Don't ignore explicit pad-names.
2011-02-16 17:15:28 +02:00
Stefan Kost
1e034cb01f avimux: rework _request_new_pad to handle explict req-pad-names
Don't ignore explicit pad-names. Rearrange the code and the error handling a
bit. Add a FIXME-0.11 for the bad pad-names.
2011-02-16 17:15:27 +02:00
Sebastian Dröge
4f78d85707 icles: Add equalizer-test to the build system 2011-02-16 15:30:19 +01:00
Sebastian Dröge
dd77fddeea [MOVED FROM BAD 5/5] equalizer-test: Initialize debug category after gst_init() to fix segfault 2011-02-16 15:30:19 +01:00
Sebastian Dröge
bece468db4 [MOVED FROM BAD 4/5] tests/icles/equalizer-test.c: Fix gain ranges for the latest equalizer changes.
Original commit message from CVS:
* tests/icles/equalizer-test.c: (do_slider_fiddling):
Fix gain ranges for the latest equalizer changes.
2011-02-16 15:30:19 +01:00
Stefan Kost
04689cdb12 [MOVED FROM BAD 3/5] ChangeLog: ChangeLog surgery. gst/equalizer/gstiirequalizer.c (ARG_BAND_WIDTH, _do_init, ARG_GAIN, _GstIirEqualizerBa...
Original commit message from CVS:
* ChangeLog:
ChangeLog surgery.
* gst/equalizer/gstiirequalizer.c (ARG_BAND_WIDTH, _do_init, ARG_GAIN,
_GstIirEqualizerBand, object, _GstIirEqualizerBandClass,
parent_class, gst_iir_equalizer_band_set_property,
gst_iir_equalizer_band_class_init, gst_iir_equalizer_band_get_type,
gst_iir_equalizer_child_proxy_get_child_by_index,
gst_iir_equalizer_child_proxy_get_children_count,
gst_iir_equalizer_child_proxy_interface_init, setup_filter,
gst_iir_equalizer_compute_frequencies, plugin_init):
* tests/icles/equalizer-test.c:
Add fixme and comment for example.
2011-02-16 15:30:19 +01:00
Stefan Kost
85f78281f3 [MOVED FROM BAD 2/5] tests/icles/equalizer-test.c: Port the example to new equalizer api.
Original commit message from CVS:
* tests/icles/equalizer-test.c: (equalizer_set_band_value),
(equalizer_set_all_band_values),
(equalizer_set_band_value_and_wait),
(equalizer_set_all_band_values_and_wait), (do_slider_fiddling),
(main):
Port the example to new equalizer api.
2011-02-16 15:30:19 +01:00
Tim-Philipp Müller
5dea7172c5 [MOVED FROM BAD 1/5] Fix up to use the newly ported (actually working) GstAudioFilter.
Original commit message from CVS:
* configure.ac:
* gst/equalizer/Makefile.am:
* gst/equalizer/gstiirequalizer.c: (gst_iir_equalizer_base_init),
(gst_iir_equalizer_class_init), (gst_iir_equalizer_init),
(setup_filter), (gst_iir_equalizer_compute_frequencies),
(gst_iir_equalizer_set_property), (gst_iir_equalizer_get_property),
(gst_iir_equalizer_transform_ip), (gst_iir_equalizer_setup),
(plugin_init):
* gst/equalizer/gstiirequalizer.h:
Fix up to use the newly ported (actually working) GstAudioFilter.
Bump core/base requirements to CVS for this.
* tests/icles/.cvsignore:
* tests/icles/Makefile.am:
* tests/icles/equalizer-test.c: (check_bus),
(equalizer_set_band_value), (equalizer_set_all_band_values),
(equalizer_set_band_value_and_wait),
(equalizer_set_all_band_values_and_wait), (do_slider_fiddling),
(main):
Add brain-dead interactive test for equalizer.
2011-02-16 15:30:19 +01:00
Thiago Santos
5dac2e5fde v4l2: Add PJPG mapping
Adds mapping of progressive jpeg format
2011-02-15 16:14:25 -03:00
Andy Wingo
cfeb84b821 plug qtdemux refcount leaks
* gst/qtdemux/qtdemux.c (gst_qtdemux_src_convert): Unref the qtdemux; we
  weren't doing so before.
  (gst_qtdemux_handle_src_event, gst_qtdemux_chain): Fix some error
  cases which would leak a ref to the qtdemux.
2011-02-15 16:30:29 +01:00
Andoni Morales Alastruey
b2fb4edcb7 souphttpsrc: Add URI query handler
Fixes bug #642337.
2011-02-15 09:44:01 +01:00
Mark Nauwelaerts
d466f07def matroskademux: avoid sorting NULL array of cluster positions 2011-02-14 17:57:33 +01:00
Wim Taymans
4279aa6a68 theorapay: handle 0 sized packets
Handle 0 sized packets (repeat frame) in the payloader and depayloader.

Fixes #641827
2011-02-14 16:48:06 +01:00
Tuukka Pasanen
d203b1ef50 taginject: resend tags when they are changed
Allow setting new tags on the property while running and send them.

Fixes #640249
2011-02-14 15:23:56 +02:00
Stefan Kost
663852d853 Automatic update of common submodule
From f94d739 to 1de7f6a
2011-02-14 12:53:27 +02:00
Miguel Angel Cabrera Moya
3cca27ced1 rtspsrc: fix minor leaks when handling server requests.
https://bugzilla.gnome.org/show_bug.cgi?id=640163
2011-02-14 11:33:18 +01:00
Heath Nielson
aa7e638d8e qtdemux: extract MusicBrainz tags
Extract MusicBrainz tags added by MusicBrainz's Picard
tagger application. These tags (esp. the album id) are
helpful for rhythmbox et.al. to automatically downloads
cover art.

https://bugzilla.gnome.org/show_bug.cgi?id=642205
2011-02-14 00:49:00 +00:00
Tim-Philipp Müller
6f0a4fa85b qtdemux: refactor iTunes tag parsing a bit 2011-02-14 00:38:45 +00:00
Tim-Philipp Müller
c9adc3750b doap: update mailing list location 2011-02-10 23:52:51 +00:00
Mark Nauwelaerts
686189f3f0 qtdemux: propagate error during expose_streams
... as it may occur during initial parsing of fragmented file.
2011-02-10 18:17:56 +01:00
Mark Nauwelaerts
3dc42d3704 qtdemux: avoid skipping exposing a stream following a removed stream 2011-02-10 18:17:40 +01:00
Mark Nauwelaerts
b70f4b6ffa matroskademux: store cluster positions provided by SeekHead
... and use those, if available, to locate a cluster rather than scanning.
2011-02-10 18:17:31 +01:00
Mark Nauwelaerts
9de84b45bc matroskademux: properly resume cluster scanning
... rather than getting offset tracking messed up, and then likely
failing a subsequent assert.
2011-02-09 16:27:00 +01:00
Stefan Kost
a86bab6689 id3demux: ensure a taglist before adding the container tag
In the case of id3v1 also don't return NULL on empty tags, but also create a new
taglist and add the container tag for consistency.
2011-02-08 10:07:43 +02:00
Stefan Kost
6f6b2a7efc rtspsrc: strip trailing spaces 2011-02-07 17:08:47 +02:00
Stefan Kost
5e071d51f2 rtpsrc: set multiple properties in one go
There is no need for separate g_object_set() calls here.
2011-02-07 17:07:42 +02:00
Thiago Santos
cb527623a3 deinterlace: Handle image caps without asserting
Images might have framerate=0/1 in the caps, which caused an
assertion on deinterlace. I don't know of interlaced image formats
but deinterlace might be hardcoded on some generic pipelines and
it shouldn't assert.

The fix was to set field_duration to 0 if the input has a framerate
with a 0 numerator.

This patch also adds checks for this situation on the unit tests.

https://bugzilla.gnome.org/show_bug.cgi?id=641400
2011-02-04 09:38:35 -03:00
Stefan Kost
18213aa214 docs: fix parameter name in udpsrc docs
It is "buffer-size" and not "buffer". Also trim trailing whitespace.
2011-02-04 12:34:08 +02:00
Mark Nauwelaerts
6b86b56abd v4l2: fix interlaced set_format configuration
Commit 6c8268dbfd broke recording
from interlaced v4l2 source (e.g. typical tv capture card) since
V4L2_FIELD_SEQ_TB (with fields stored separately) does not map
to currently defined interlaced format (fields stored interleaved).

Besides this mismatch, hardware might quite likely not support or
appreciate this field value, since querying supported formats mapped
_INTERLACED field formats to interlaced=true caps (so the latter should
not be mapped to field value that is not known to be supported).
2011-02-04 10:49:06 +01:00
Wim Taymans
61382aad28 source: fix type of ntpnstime 2011-02-02 18:30:47 +01:00
Wim Taymans
8598aaf81b rtpbin: Get and use the NTP time when receiving RTCP
When we receive an RTCP packet, get the current NTP time in nanseconds so that
we can correctly calculate the round-trip time.
2011-02-02 18:30:46 +01:00
Mark Nauwelaerts
564976b609 directsound: arrange for definition of _swab on Cygwin
gstdirectsoundsink.c: In function 'gst_directsound_sink_write':
gstdirectsoundsink.c:557: error: implicit declaration of function '_swab'
gstdirectsoundsink.c:557: error: nested extern declaration of '_swab'
2011-02-01 20:11:06 +01:00
Olivier Crête
8a7a327db7 rtptheoradepay: Request new keyframe on lost packets
Theora can only use the last frame (or the keyframe) as a reference, so in
practice. If we receive a buffer that references an unknown codebook, request
new headers. It probably means that headers were lost.
2011-02-01 18:28:51 +01:00