Wim Taymans [Thu, 9 Apr 2009 16:07:38 +0000 (18:07 +0200)]
pulsesink: fix compilation for newer pulseaudio
Wim Taymans [Thu, 9 Apr 2009 15:18:54 +0000 (17:18 +0200)]
pulsesink: uncork fixes and use prebuf = 0
We can use prebuf = 0 to instruct pulse to not pause the stream on underflows.
This way we can remove the underflow callback. We however have to manually
uncork the stream now when we have no available space in the buffer or when we
are writing too far away from the current read_index.
Wim Taymans [Thu, 9 Apr 2009 12:38:17 +0000 (14:38 +0200)]
pulsesink: handle write errors
Wim Taymans [Thu, 9 Apr 2009 12:16:35 +0000 (14:16 +0200)]
pulsesink: write silence on underflow
Start filling up the buffer with empty samples when an underflow happens. We
need to do this to keep pulseaudio reporting the right time for us.
Wim Taymans [Thu, 9 Apr 2009 11:14:14 +0000 (13:14 +0200)]
pulsesink: handle pull-based scheduling
Use the default basesink methods for implementing pull based scheduling, it
works fine for us.
Wim Taymans [Thu, 9 Apr 2009 10:13:44 +0000 (12:13 +0200)]
pulsesink: add beginnings of pull-based scheduling
Wim Taymans [Wed, 8 Apr 2009 16:17:10 +0000 (18:17 +0200)]
pulsesink: keep track of clock reset
when we switch streams, the clock will reset to 0. Make sure that the provided
clock doesn't get stuck when this happens by keeping an initial offset. We also
need to make sure that we subtract this offset in samples when writing to the
ringbuffer.
Wim Taymans [Wed, 8 Apr 2009 11:52:41 +0000 (13:52 +0200)]
pulsesink: rewrite pulsesink
Derive from BaseAudioSink and implement our custom ringbuffer that maps to the
internal pulseaudio ringbuffer.
Wim Taymans [Wed, 8 Apr 2009 11:52:00 +0000 (13:52 +0200)]
pulse: remove some stray debug lines
Tim-Philipp Müller [Thu, 9 Apr 2009 10:30:59 +0000 (11:30 +0100)]
jpegdec: use slightly more adaptive formula for QoS
Should work at least a tad better if the decoder can't keep up, and
should also spread dropped frames a bit more evenly over time.
Stefan Kost [Tue, 7 Apr 2009 19:35:31 +0000 (22:35 +0300)]
wavparse: don't leak pad-template
gst_element_class_add_pad_template() does not take ownership.
Felipe Contreras [Sat, 4 Apr 2009 18:18:55 +0000 (21:18 +0300)]
Automatic update of common submodule
From
d0ea89e to
b3941ea
Thomas Vander Stichele [Tue, 31 Mar 2009 23:15:31 +0000 (01:15 +0200)]
add pending_samples so that we only update segment's last stop after really sending the samples
Thomas Vander Stichele [Sun, 15 Mar 2009 20:31:49 +0000 (21:31 +0100)]
add debug and an assert
Thomas Vander Stichele [Sun, 15 Mar 2009 20:30:32 +0000 (21:30 +0100)]
add debugging
Thomas Vander Stichele [Tue, 3 Mar 2009 09:14:02 +0000 (10:14 +0100)]
add a test to check that we get all decoded bytes
from a 10-buffer audiotestsrc flac, in the case of:
- a full decode
- a decode of a seek for the full file
- a decode of a seek for a small part, smaller than the first buffer
The test fails because flacdec drops the first outgoing buffer on a seek
Thomas Vander Stichele [Tue, 3 Mar 2009 09:06:52 +0000 (10:06 +0100)]
clipping should also work if it's done on the first buffer starting at 0
Edward Hervey [Sat, 4 Apr 2009 12:54:01 +0000 (14:54 +0200)]
Automatic update of common submodule
From
f8b3d91 to
d0ea89e
Zaheer Merali [Fri, 3 Apr 2009 08:57:15 +0000 (09:57 +0100)]
Fix grammar.
Wim Taymans [Thu, 2 Apr 2009 20:41:01 +0000 (22:41 +0200)]
rtspsrc: allow http:// on the proxy setting
Allow and ignore http:// at the start of the proxy setting, like
souphttpsrc.
Fixes #573173
Wim Taymans [Thu, 2 Apr 2009 19:08:48 +0000 (21:08 +0200)]
rtspsrc: don't leak the udpsrc pad
Fix memory leak in rtspsrc because we didn't unref the udpsrc pad.
See #577318
Michael Smith [Thu, 2 Apr 2009 00:31:18 +0000 (17:31 -0700)]
rtptheorapay: fix length encoding in packed headers.
As for vorbis payloader; this by inspection had the same bug.
Michael Smith [Thu, 2 Apr 2009 00:23:33 +0000 (17:23 -0700)]
rtpvorbispay: in packed headers, properly flag multibyte lengths.
In the sequence of header lengths, for headers >127 bytes, we use
multiple bytes to encode the length. Bytes other than the last must have
the top (flag) bit set.
Jonathan Matthew [Wed, 1 Apr 2009 23:20:02 +0000 (00:20 +0100)]
id3v2mux: write RVA2 frames containing peak/gain volume data
Tim-Philipp Müller [Wed, 1 Apr 2009 23:05:14 +0000 (00:05 +0100)]
jpegdec: demote some log message from DEBUG to LOG
And log decoder object.
Tim-Philipp Müller [Wed, 1 Apr 2009 20:15:02 +0000 (21:15 +0100)]
jpegdec: implement basic QoS
Don't decode frames that are going to be too late anyway.
Tim-Philipp Müller [Wed, 1 Apr 2009 11:26:12 +0000 (12:26 +0100)]
rtspsrc: don't emit ugly warnings with older rtpjitterbuffer versions
The on-npt-stop signals was added only recently to rtpjitterbuffer in
-bad, so check if the signal exists before g_signal_connect()ing to
it, to avoid warnings.
Wim Taymans [Tue, 31 Mar 2009 17:08:37 +0000 (19:08 +0200)]
rtspsrc: add proxy support
Stefan Kost [Tue, 31 Mar 2009 14:16:04 +0000 (17:16 +0300)]
matroska: don't leak serialized values when writing tags
Stefan Kost [Tue, 31 Mar 2009 14:06:50 +0000 (17:06 +0300)]
matroska: don't alter passed data and especialy don't leak.
If we need different size, Make a copy, work with that and free it.
Stefan Kost [Tue, 31 Mar 2009 13:42:15 +0000 (16:42 +0300)]
goom: the structure is not fully initialized, but the copied.
Set to fully to 0 to avoid creep of uninitialized values.
Stefan Kost [Tue, 31 Mar 2009 13:25:58 +0000 (16:25 +0300)]
matroska: init endianess as such and signedness as boolean.
Stefan Kost [Tue, 31 Mar 2009 13:22:42 +0000 (16:22 +0300)]
qtdemux: don't use ininitialized var in debug log statement
Also make the log statement useful by printing the human readable format name.
Stefan Kost [Tue, 31 Mar 2009 09:01:21 +0000 (12:01 +0300)]
qtdemux: don't leak atom data in case of a wrong fourcc
Stefan Kost [Tue, 31 Mar 2009 08:57:36 +0000 (11:57 +0300)]
matroska: don't leak read data in demuxer
Stefan Kost [Tue, 31 Mar 2009 08:50:41 +0000 (11:50 +0300)]
udp: don't use protocol in debug message after freeing
Tim-Philipp Müller [Mon, 30 Mar 2009 13:10:15 +0000 (14:10 +0100)]
rtpmp4adepay: output should be framed already
Tim-Philipp Müller [Fri, 27 Mar 2009 21:17:05 +0000 (21:17 +0000)]
flac: require a 'newer' flac and remove support for the legacy flac API
Wim Taymans [Fri, 27 Mar 2009 16:48:13 +0000 (17:48 +0100)]
rtspsrc: link to the on_npt_stop signal to EOS
Connect to the on_npt_stop signal of the session manager to schedule the EOS
actions.
Mark Nauwelaerts [Thu, 26 Mar 2009 13:39:06 +0000 (14:39 +0100)]
qtdemux: some stream synchronization to aid seeking in unbalanced clips
Some clips (trailers) may have (length-wise) unbalanced streams,
which stalls the pipeline if seeking into that region.
Additional stream synchronization can handle this, as well as
sparse (subtitle) streams (at some later time ?)
Mark Nauwelaerts [Thu, 26 Mar 2009 09:31:18 +0000 (10:31 +0100)]
qtdemux: additional safety and sanity checks (push based mode)
Wim Taymans [Thu, 26 Mar 2009 09:18:31 +0000 (10:18 +0100)]
videomixer: some more indent fixes
Wim Taymans [Tue, 24 Mar 2009 15:00:58 +0000 (16:00 +0100)]
videomixer: fix gst-indent screwup
Tim-Philipp Müller [Wed, 25 Mar 2009 17:54:35 +0000 (17:54 +0000)]
rtspsrc: better error message when the RTSP extension for Real streams is missing
Try to post a decent error message when it looks like we're failing
because the Real RTSP extension plugin is missing. Also add i18n
bits for rtspsrc so our error messages get translated.
Tim-Philipp Müller [Wed, 25 Mar 2009 15:42:15 +0000 (15:42 +0000)]
i18n: make sure gettext gives us UTF-8 at all times
Tim-Philipp Müller [Wed, 25 Mar 2009 01:28:38 +0000 (01:28 +0000)]
rtpmp4apay,rtpmp4depay: fix buffer leaks in AAC payloader and depayloader
Tim-Philipp Müller [Wed, 25 Mar 2009 01:22:17 +0000 (01:22 +0000)]
rtpmp4apay: warn if input is unframed
Tim-Philipp Müller [Sun, 22 Mar 2009 21:20:57 +0000 (21:20 +0000)]
jpegdec: put GstSegment inside the element struct instead of allocating it separately
Stefan Kost [Wed, 25 Mar 2009 08:08:41 +0000 (10:08 +0200)]
v4l2src: move duplicated timestamping and buffer metadata code to _create()
This will include the latency changes also in the mmap case.
Stefan Kost [Wed, 25 Mar 2009 08:06:48 +0000 (10:06 +0200)]
v4l2src: remove win32 ifdefs introduced by commit
cff3f46760eac74c9bbd7a36aca44fedf327424b
V4l2src is under sys and does not exists/run under windows anyway.
Mark Nauwelaerts [Tue, 24 Mar 2009 14:44:42 +0000 (15:44 +0100)]
qtdemux: handle FLUSH_STOP event
Clean up some state (most notably pad flow returns) to resume
proper streaming following flushing seek.
Alessandro Decina [Tue, 24 Mar 2009 11:42:13 +0000 (12:42 +0100)]
avidemux: don't post an error if EOS can't be pushed downstream.
This aligns avidemux with other demuxers and fixes a bug using avidemux
with a recent gnonlin.
Wim Taymans [Mon, 23 Mar 2009 10:22:08 +0000 (11:22 +0100)]
pulsesink: clean up the state change function
Make the state change function a bit more readable and only pause after the
parent had a change to pause first.
Mark Nauwelaerts [Fri, 20 Mar 2009 16:22:32 +0000 (17:22 +0100)]
qtdemux: support seeking in push based mode
Mark Nauwelaerts [Fri, 20 Mar 2009 16:11:39 +0000 (17:11 +0100)]
qtdemux: align push based behaviour more with pull based
Cater for DELTA_UNIT flag on buffers, keep track of current
position, remove and warn about edit lists if any (as those
as are de facto discarded anyway), add some debug statements
and indent fixes.
Mark Nauwelaerts [Fri, 20 Mar 2009 16:03:03 +0000 (17:03 +0100)]
qtdemux: fix mem leaks and prevent excessive buffering in push based mode
Jan Schmidt [Fri, 20 Mar 2009 13:27:59 +0000 (13:27 +0000)]
pulsesink: Track the corked/uncorked state ourselves
Use an instance variable to track whether the stream is corked or not,
instead of using PA API that was only introduced in 0.9.11
Jan Schmidt [Thu, 19 Mar 2009 18:39:04 +0000 (18:39 +0000)]
pulse: Make sure the stream is uncorked in the write function
If the caps changes, the sink is reset without transitioning through
a PAUSED->PLAYING state change, resulting in a corked stream. This avoids
the problem by checking that the stream is uncorked when writing samples
to it.
Tim-Philipp Müller [Fri, 20 Mar 2009 01:02:26 +0000 (01:02 +0000)]
speexenc: fix direction of latency query and other upstream queries
Don't send queries back to the element they just came from by sending
them to the peer of the wrong pad.
Tim-Philipp Müller [Thu, 19 Mar 2009 11:10:40 +0000 (11:10 +0000)]
.gitignore: ignore more
Tim-Philipp Müller [Wed, 18 Mar 2009 16:55:27 +0000 (16:55 +0000)]
rtpmp4adepay: don't append an extra 0 byte to the codec data
The audioMuxVersion structure is packed in such a way that the codec
data does not start byte-aligned, which means there's an extra bit of
padding at the end. We don't want that bit in the codec data, since
some decoders seem get confused when they're fed with an extra codec
data byte (also it's just not right of course).
Wim Taymans [Thu, 19 Mar 2009 12:25:57 +0000 (13:25 +0100)]
rtph264depay: fix base64 decoding
We can't pass -1 to _decode_step, that functions returns 0 right away instead of
decoding up to the string end.
David Adam [Thu, 19 Mar 2009 12:24:02 +0000 (13:24 +0100)]
udp: Fix build if on Solaris
This patch checks for Solaris and uses ip_mreq instead of ip_mreqn if on this
platform.
Fixes #575937.
Sebastian Dröge [Wed, 18 Mar 2009 13:50:17 +0000 (14:50 +0100)]
rtp: Use GLib functions for encoding/decoding base64
Wim Taymans [Mon, 16 Mar 2009 18:17:24 +0000 (19:17 +0100)]
rtspsrc: add some debug for the timestamps
When timestamping in TCP mode, log the first timestamp we put on the buffers.
Stefan Kost [Sun, 15 Mar 2009 21:26:56 +0000 (23:26 +0200)]
v4l2src: log details if we have them, needed for #575391
Wim Taymans [Fri, 13 Mar 2009 17:32:47 +0000 (18:32 +0100)]
udpsrc: convert _ in properties to -
--
Edgar E. Iglesias [Fri, 13 Mar 2009 17:28:59 +0000 (18:28 +0100)]
udpsrc: Add network interface selection
Add network interface selection when joining multicast groups.
Useful when using the udpsrc on multihomed hosts.
Fixes #575234.
API: GstUDPSrc::multicast-iface
Jan Schmidt [Fri, 13 Mar 2009 15:43:52 +0000 (15:43 +0000)]
v4l2src: Prepend to lists and reverse them at the end.
Gratuitous micro-optimisation - prepend to lists and reverse them, rather
than appending to them each time.
Jan Schmidt [Fri, 13 Mar 2009 15:40:50 +0000 (15:40 +0000)]
pulsesink: Wait until there is enough room to write an entire segment
When trying to write out a segment, wait until there is enough free space
for the entire segment. This helps to reduce ripple in the clock reporting,
where the app might query the playback position while only half a segment
has been written (and is therefore reported by _delay(), even though
the ring buffer has not yet been advanced)
Wim Taymans [Thu, 12 Mar 2009 19:38:42 +0000 (20:38 +0100)]
rtspsrc: don't send PAUSE when not connected
don't send a PAUSE request when we are no longer connected.
Laszlo Pandy [Thu, 12 Mar 2009 15:10:25 +0000 (16:10 +0100)]
Don't call FLAC__ methods before it's initialized. Fixes #516031
In the event handler, gst_flac_dec_sink_event(), two functions are called on
the FLAC stream without checking if it has been initialized:
FLAC__stream_decoder_flush()
FLAC__stream_decoder_process_until_end_of_stream()
Both these FLAC__*() functions modify the internal state of the FLAC stream.
Later, when the buffers start flowing, gst_flac_dec_chain() tries to initialize
the stream. the FLAC__stream_decoder_init_stream() call will fail because the
previous calls to FLAC__*() changed the stream state so it is no longer in the
initialized state.
Wim Taymans [Wed, 11 Mar 2009 16:59:00 +0000 (17:59 +0100)]
rtspsrc: fix timeout check
---
Tim-Philipp Müller [Wed, 11 Mar 2009 12:48:03 +0000 (12:48 +0000)]
win32: update MANIFEST, fixing 'make dist'
config.h.in no longer exists.
Stefan Kost [Tue, 10 Mar 2009 19:14:43 +0000 (21:14 +0200)]
makefile: fix typo in no-static plugins rule
Wim Taymans [Tue, 10 Mar 2009 10:01:16 +0000 (11:01 +0100)]
pngdec: various cleanups.
Make some code more readable.
Fix a leak when pull range returns a shot buffer.
Push EOS after posting the error.
Edward Hervey [Tue, 10 Mar 2009 09:16:27 +0000 (10:16 +0100)]
gstrtpvorbisdepay: Fix build on macosx
Edward Hervey [Sun, 1 Mar 2009 16:37:56 +0000 (17:37 +0100)]
.gitignore: Ignore m4 directory
Jan Schmidt [Mon, 9 Mar 2009 23:12:33 +0000 (23:12 +0000)]
Automatic update of common submodule
From
7032163 to
f8b3d91
Wim Taymans [Mon, 9 Mar 2009 17:07:20 +0000 (18:07 +0100)]
vorbisdepay: fix some leaks
And leak the codebooks.
Use glib base64 decoders.
Use subbuffers to avoid a memcpy of the headers.
Wim Taymans [Mon, 9 Mar 2009 16:14:12 +0000 (17:14 +0100)]
flacdec: don't lose the first buffer after a seek
The flacdec API calls the write callback when performing a seek. We cannot yet
push out a buffer at that time so we must keep it and push it out later.
Flush out the upstream part of the pipeline when doing a seek.
Fixes #574275.
Wim Taymans [Mon, 9 Mar 2009 14:20:05 +0000 (15:20 +0100)]
qtdemux: sanitize tag names
Sanitize the tag names before turning them into a structure name. We can only
add alphanumeric values as the structure name.
Sebastian Dröge [Sun, 8 Mar 2009 11:04:22 +0000 (12:04 +0100)]
Automatic update of common submodule
From
ffa738d to
7032163
Sebastian Dröge [Sun, 8 Mar 2009 10:19:56 +0000 (11:19 +0100)]
Automatic update of common submodule
From
3f13e4e to
ffa738d
Sebastian Dröge [Sat, 7 Mar 2009 10:45:35 +0000 (11:45 +0100)]
Automatic update of common submodule
From
3c7456b to
3f13e4e
Sebastian Dröge [Sat, 7 Mar 2009 09:45:40 +0000 (10:45 +0100)]
Automatic update of common submodule
From
57c83f2 to
3c7456b
Stefan Kost [Fri, 6 Mar 2009 19:56:26 +0000 (21:56 +0200)]
v4l2src: fix pads, so that they are subset of template caps
Do not add w=0 | h=0. When we can't get a framerate add fraction range.
Wim Taymans [Thu, 5 Mar 2009 13:08:14 +0000 (14:08 +0100)]
rtspsrc: fix range parsing
Fix parsing of the range headers.
Olivier Crête [Tue, 10 Feb 2009 17:20:57 +0000 (17:20 +0000)]
Move siren rtp pay/depay from gst-plugins-farsight
Wim Taymans [Wed, 4 Mar 2009 15:25:34 +0000 (16:25 +0100)]
rtspsrc: fix memory leak in close
Close the connection even when we fail to send the teardown message.
Use the connection url (which is a copy of the src url).
Peter Kjellerstedt [Wed, 4 Mar 2009 15:15:05 +0000 (16:15 +0100)]
check: gst-plugins-good.supp needs to be distributed.
Wim Taymans [Wed, 4 Mar 2009 11:29:50 +0000 (12:29 +0100)]
rtspsrc: fix do-rtcp property description
---
Edward Hervey [Tue, 3 Mar 2009 11:20:27 +0000 (12:20 +0100)]
souphttpsrc: Expose the SoupSession 'timeout' property.
Edward Hervey [Mon, 2 Mar 2009 14:07:24 +0000 (15:07 +0100)]
.gitignore: Ignore the m4/ directory
Wim Taymans [Mon, 2 Mar 2009 16:18:55 +0000 (17:18 +0100)]
rtpmp4vpay: Add support for more formats
Hack around short header mpeg4 video files and put the short header as the
config string.
Fixes #572551.
Wim Taymans [Mon, 2 Mar 2009 15:08:23 +0000 (16:08 +0100)]
rtspsrc: add support for http tunneling
Add support for http tunneling and a new rtsph:// uri for it.
See #573173.
Thomas Vander Stichele [Mon, 2 Mar 2009 08:43:30 +0000 (09:43 +0100)]
Merge branch 'master' of ssh://thomasvs@git.freedesktop.org/git/gstreamer/gst-plugins-good
Thomas Vander Stichele [Mon, 2 Mar 2009 07:41:15 +0000 (08:41 +0100)]
Add/clarify/fix some logging.
David Schleef [Sun, 1 Mar 2009 20:47:37 +0000 (12:47 -0800)]
Remove hardcoded definition of OBJC
Sjoerd Simons [Sun, 1 Mar 2009 18:55:26 +0000 (19:55 +0100)]
Wait for a frame to become available before capturing it
Use GstPoll to wait for the fd of the video device to become readable before
trying to capture a frame. This speeds up stopping v4l2src a lot as it no
longer has to wait for the next frame, especially when capturing with low
framerates or when the video device just never generates a frame (which seems a
common issue for uvcvideo devices)
Fixes bug #563574.