Commit graph

6363 commits

Author SHA1 Message Date
Wim Taymans cb344828a4 avidemux: don't push EOS in streaming mode
In streaming mode, avidemux is not supposed to send an EOS event downstream but
it is supposed to return UNEXPECTED from the chain function instead so that
upstream can do the right EOS handling.
2009-04-14 17:27:05 +02:00
Sebastian Dröge 108774781d Add initial support for muxing/demuxing Speex audio
Note: This is not in the Matroska spec yet
Fixes bug #578310.
2009-04-13 14:03:03 +02:00
Wim Taymans 776b0ae8cb pulsesink: handle NULL timing info
Don't crash when the timing info is not yet available.
2009-04-10 21:32:54 +02:00
Stefan Kost b3d66d5e8d pulse: make it work on 0.9.12
First we ignore request to fill the ringbuffer which are less then a segment.
The small request where causing stutter.
Then we disable flushing the stream when running against pa 0.9.12 as this
triggers an assertiong in the sound server and terminates it. It does not happen
with 0.9.10 and 0.9.14.
2009-04-10 21:42:13 +03:00
Wim Taymans 963b343548 pulsesink: handle server disconnect in get_time
When the server is disconnected or when we are shut down, make our clock return
an invalid time instead of erroring out.
2009-04-10 14:18:48 +02:00
Wim Taymans 20a6908dfd pulsesink: bps is signed int to avoid overflow
Keep bps as gint instead of guint because we will be doing signed math with it
later on and we don't want weird results.
2009-04-10 12:01:27 +02:00
LRN 3e7aede3ea avidemux: add convert query, fix duration query
Fix the duration query so that it also works with formats other than
TIME, such as DEFAULT to get the number of frames.

Add a convert function.

Fixes #578052.
2009-04-10 00:26:44 +02:00
Wim Taymans 7d438518fb pulsesink: check for a stream
Don't try to change the stream volume (and other things) when we don't have a
stream yet. Just store the values for later.
2009-04-09 23:43:58 +02:00
Wim Taymans ae83945349 pulsesink: fix compilation for newer pulseaudio 2009-04-09 18:07:38 +02:00
Wim Taymans 8d58de128d 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.
2009-04-09 17:26:21 +02:00
Wim Taymans d849340e64 pulsesink: handle write errors 2009-04-09 17:26:20 +02:00
Wim Taymans 81c5fb9e48 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.
2009-04-09 17:26:20 +02:00
Wim Taymans 2e2f1d73ca pulsesink: handle pull-based scheduling
Use the default basesink methods for implementing pull based scheduling, it
works fine for us.
2009-04-09 17:26:20 +02:00
Wim Taymans 8855ed90c0 pulsesink: add beginnings of pull-based scheduling 2009-04-09 17:26:20 +02:00
Wim Taymans 236baa5a13 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.
2009-04-09 17:26:20 +02:00
Wim Taymans 6bc6cafcc6 pulsesink: rewrite pulsesink
Derive from BaseAudioSink and implement our custom ringbuffer that maps to the
internal pulseaudio ringbuffer.
2009-04-09 17:26:20 +02:00
Wim Taymans 28d733d53b pulse: remove some stray debug lines 2009-04-09 17:26:20 +02:00
Tim-Philipp Müller e14bae6637 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.
2009-04-09 11:34:19 +01:00
Stefan Kost 1095e624ec wavparse: don't leak pad-template
gst_element_class_add_pad_template() does not take ownership.
2009-04-07 22:36:39 +03:00
Felipe Contreras c4c5de6044 Automatic update of common submodule
From d0ea89e to b3941ea
2009-04-04 21:18:55 +03:00
Thomas Vander Stichele 8009fcf547 add pending_samples so that we only update segment's last stop after really sending the samples 2009-04-04 15:14:32 +02:00
Thomas Vander Stichele 5f802dad4e add debug and an assert 2009-04-04 15:14:31 +02:00
Thomas Vander Stichele fb4953a68d add debugging 2009-04-04 15:14:31 +02:00
Thomas Vander Stichele be94a147ba 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
2009-04-04 15:14:31 +02:00
Thomas Vander Stichele 5e19fc1058 clipping should also work if it's done on the first buffer starting at 0 2009-04-04 15:14:31 +02:00
Edward Hervey 5439fb89d1 Automatic update of common submodule
From f8b3d91 to d0ea89e
2009-04-04 14:54:01 +02:00
Zaheer Merali 988a4c6532 Fix grammar. 2009-04-03 09:57:15 +01:00
Wim Taymans b6bf3ba7d3 rtspsrc: allow http:// on the proxy setting
Allow and ignore http:// at the start of the proxy setting, like
souphttpsrc.
Fixes #573173
2009-04-02 22:41:01 +02:00
Wim Taymans 40f6ed8875 rtspsrc: don't leak the udpsrc pad
Fix memory leak in rtspsrc because we didn't unref the udpsrc pad.
See #577318
2009-04-02 21:08:48 +02:00
Michael Smith 85d7fb0599 rtptheorapay: fix length encoding in packed headers.
As for vorbis payloader; this by inspection had the same bug.
2009-04-01 17:31:18 -07:00
Michael Smith 5f9d9e2243 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.
2009-04-01 17:23:33 -07:00
Jonathan Matthew 9b7c9208c3 id3v2mux: write RVA2 frames containing peak/gain volume data 2009-04-02 00:20:02 +01:00
Tim-Philipp Müller f1fb1f80fa jpegdec: demote some log message from DEBUG to LOG
And log decoder object.
2009-04-02 00:05:14 +01:00
Tim-Philipp Müller 00c4b0b17a jpegdec: implement basic QoS
Don't decode frames that are going to be too late anyway.
2009-04-01 21:15:02 +01:00
Tim-Philipp Müller cb15d09c4a 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.
2009-04-01 12:29:33 +01:00
Wim Taymans b037369d5b rtspsrc: add proxy support 2009-03-31 19:08:37 +02:00
Stefan Kost 605ded5292 matroska: don't leak serialized values when writing tags 2009-03-31 17:16:04 +03:00
Stefan Kost 5ac6b84475 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.
2009-03-31 17:06:50 +03:00
Stefan Kost fa8e2d9bfe goom: the structure is not fully initialized, but the copied.
Set to fully to 0 to avoid creep of uninitialized values.
2009-03-31 16:42:15 +03:00
Stefan Kost ef7bcf7bd1 matroska: init endianess as such and signedness as boolean. 2009-03-31 16:25:58 +03:00
Stefan Kost 0889ac1092 qtdemux: don't use ininitialized var in debug log statement
Also make the log statement useful by printing the human readable format name.
2009-03-31 16:22:42 +03:00
Stefan Kost f4f6d9799c qtdemux: don't leak atom data in case of a wrong fourcc 2009-03-31 12:01:21 +03:00
Stefan Kost 9b8f1cbaa2 matroska: don't leak read data in demuxer 2009-03-31 11:57:36 +03:00
Stefan Kost ba2c101963 udp: don't use protocol in debug message after freeing 2009-03-31 11:50:41 +03:00
Tim-Philipp Müller 6e5f789fa0 rtpmp4adepay: output should be framed already 2009-03-30 14:13:29 +01:00
Tim-Philipp Müller 11a8aa91b8 flac: require a 'newer' flac and remove support for the legacy flac API 2009-03-27 21:27:30 +00:00
Wim Taymans fd18185d44 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.
2009-03-27 17:49:15 +01:00
Mark Nauwelaerts 3360f449c0 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 ?)
2009-03-26 14:39:06 +01:00
Mark Nauwelaerts a5502c9b37 qtdemux: additional safety and sanity checks (push based mode) 2009-03-26 14:38:02 +01:00
Wim Taymans 07329bc083 videomixer: some more indent fixes 2009-03-26 10:18:31 +01:00