Sebastian Dröge [Sun, 6 Jun 2010 15:52:40 +0000 (17:52 +0200)]
gst: Don't use GST_DEBUG_FUNCPTR for GObject vfuncs
Philip Jägenstedt [Sun, 6 Jun 2010 13:12:16 +0000 (15:12 +0200)]
matroskademux: refactor delta unit handling
This allows us to skip delta units earlier and is a bit clearer in my
opinion. It also makes only video buffers ever be delta units, not
just for SimpleBlock as before.
Sebastian Dröge [Sun, 6 Jun 2010 13:17:00 +0000 (15:17 +0200)]
flvdemux: Clear adapter on discontinuities
Philip Jägenstedt [Sun, 6 Jun 2010 12:03:53 +0000 (14:03 +0200)]
matroskademux: Ignore keyframe flag for non-video streams
When the keyframe bit of SimpleBlock Flags wasn't set, the buffer was being
marked with GST_BUFFER_FLAG_DELTA_UNIT, causing all buffers to be skipped
after a seek. This may be a problem with the Sorenson Squish encoder, but
arguably the keyframe bit should only be applied to video.
Fixes bug #620358.
Sebastian Dröge [Sun, 6 Jun 2010 12:56:52 +0000 (14:56 +0200)]
flvdemux: First try upstream when handling seek events/queries
Tristan Matthews [Fri, 4 Jun 2010 18:54:59 +0000 (14:54 -0400)]
gstrtpceltpay: don't always fixate sink caps to 1 channel
The getcaps function should not fixate the channels field until we
get the encoding-params field from our srcpad's caps. Fixes #620591
Wim Taymans [Fri, 4 Jun 2010 11:57:28 +0000 (13:57 +0200)]
rtsp: try all ranges from the sdp
Try all ranges in the SDP before giving up.
Wim Taymans [Fri, 4 Jun 2010 11:56:07 +0000 (13:56 +0200)]
rtspsrc: make parse_range return result
Make the parse_range function return if the parsing succeeded or failed.
Edward Hervey [Fri, 4 Jun 2010 09:44:09 +0000 (11:44 +0200)]
videomixer: if we're not linked downstream, we can do any format
Stupid me, assuming _get_allowed_caps() would actually return the
pad templates if there was no peer.
Sjoerd Simons [Mon, 31 May 2010 15:26:19 +0000 (16:26 +0100)]
Keep announcing the delivery-method in the capabilities
Even though we don't use delivery-method in our payloader, older versions of
the theora payloader in gstreamer required it. As such we need to keep this
around in the caps for backwards-compatibility.
This reverts part of
49463a37cbaa952e1401291f0a2623de6cab3880
Fixes #618940
Tim-Philipp Müller [Thu, 3 Jun 2010 16:52:11 +0000 (17:52 +0100)]
oss4: add some comments for translators to clarify meaning of "Low"
"Low" etc. are quality settings here (e.g. for the internal resampler).
Some day when we use GLib's i18n functions we might want to use
NC_() and g_dpgettext2() here instead of the comments.
Fixes #555967.
Wim Taymans [Thu, 3 Jun 2010 17:23:01 +0000 (19:23 +0200)]
mp4gdepay: calculate the frame duration correctly
When we calculate the frame duration, we need to use the amount of
frames in the _previous_ packet, not the current packet. The frame duration is
needed to correctly de-interleave interleaved streams. This fixes the case where
there are a variable number of frames in a packet.
Fixes #620494
Edward Hervey [Thu, 3 Jun 2010 16:58:42 +0000 (18:58 +0200)]
videomixer: Don't return caps in get_caps() that will be rejected
This commit basically puts _get_caps() in sync with accept_caps().
If we don't have a master pad OR the master pad caps aren't negotiated
then we just return the downstream allowed caps.
If we have a master pad with negotiated caps, we return those caps
with a free range of width/height/framerate
Sebastian Dröge [Thu, 3 Jun 2010 11:45:32 +0000 (13:45 +0200)]
Revert "pulsesink: Add comments to remove the provide-clock message posting once we depend on base 0.10.30"
This reverts commit
8f3708f38aa3839a6a625ca7d1c166101c9fbb7f.
The baseaudiosink commit was reverted
Sebastian Dröge [Thu, 3 Jun 2010 08:27:25 +0000 (10:27 +0200)]
pulsesink: Add comments to remove the provide-clock message posting once we depend on base 0.10.30
baseaudiosink does all this for us now.
Mark Nauwelaerts [Wed, 2 Jun 2010 14:36:11 +0000 (16:36 +0200)]
flvdemux: delayed seek handling also deserves TRUE event response
Thijs Vermeir [Wed, 2 Jun 2010 13:30:47 +0000 (15:30 +0200)]
rtpjitterbuffer: fix compiler warning
unused variable ‘estimated’
Alessandro Decina [Wed, 2 Jun 2010 13:04:00 +0000 (15:04 +0200)]
common: revert the change i did in my previous commit
Alessandro Decina [Wed, 2 Jun 2010 11:39:10 +0000 (13:39 +0200)]
rtpjitterbuffer: stop buffering and emit EOS at the end of a stream
When using RTP_JITTER_BUFFER_MODE_BUFFER, make sure that the ringbuffer doesn't
get stuck buffering forever when there isn't enough data left to fill the
buffer.
Benjamin Otte [Tue, 1 Jun 2010 19:52:59 +0000 (21:52 +0200)]
debugutils: Don't consume preroll buffer twice
Benjamin Otte [Tue, 1 Jun 2010 19:32:11 +0000 (21:32 +0200)]
pulse: Style fix: use g_strdup() instead of printf()ing a simple string
Benjamin Otte [Thu, 27 May 2010 14:07:31 +0000 (16:07 +0200)]
debugutils: Replace md5 implementation with glib's
https://bugzilla.gnome.org/show_bug.cgi?id=619824
Mark Nauwelaerts [Sat, 22 May 2010 09:55:37 +0000 (11:55 +0200)]
avimux: clean up code for avi header using a bytewriter
https://bugzilla.gnome.org/show_bug.cgi?id=619293
Pierre-Louis Bossart [Tue, 1 Jun 2010 23:54:41 +0000 (18:54 -0500)]
pulsesink: optimize communication with PulseAudio using pa_stream_begin_write
Sebastian Dröge [Wed, 2 Jun 2010 08:52:56 +0000 (10:52 +0200)]
pulsesink: Post provide-clock message on the bus if the clock appears/disappears
Fixes bug #620277.
David Schleef [Wed, 2 Jun 2010 06:49:17 +0000 (23:49 -0700)]
Automatic update of common submodule
From 17f89e5 to 47683c1
David Schleef [Wed, 2 Jun 2010 05:54:49 +0000 (22:54 -0700)]
Automatic update of common submodule
From cdff0fb to 17f89e5
Edward Hervey [Tue, 1 Jun 2010 18:45:29 +0000 (20:45 +0200)]
videomixer: filter caps returned from downstream with our pad template.
Zaheer Abbas Merali [Tue, 1 Jun 2010 15:56:32 +0000 (16:56 +0100)]
matroskamux: Remove more unneeded warnings
Zaheer Abbas Merali [Tue, 1 Jun 2010 15:54:03 +0000 (16:54 +0100)]
matroskamux: remove unneeded warning
Zaheer Abbas Merali [Tue, 1 Jun 2010 15:49:14 +0000 (16:49 +0100)]
matroskamux: remove unneeded debug statement
Zaheer Abbas Merali [Tue, 1 Jun 2010 15:24:53 +0000 (16:24 +0100)]
matroskamux: change is-live property to indexed
Zaheer Abbas Merali [Sun, 23 May 2010 12:56:16 +0000 (13:56 +0100)]
matroska: use the uint64 scaling functions
In demuxer and muxer use the gst_util_uint64 scaling functions rather than
standard integer division. Add warnings (to be changed to debug) for debugging
the timestamp and duration.
Zaheer Abbas Merali [Fri, 21 May 2010 13:35:34 +0000 (14:35 +0100)]
matroskamux: set delta unit on all buffers except cluster start ones
Zaheer Abbas Merali [Fri, 21 May 2010 12:38:11 +0000 (13:38 +0100)]
matroskamux: store caps and set on buffers rather than using pad caps
Zaheer Abbas Merali [Fri, 21 May 2010 12:25:24 +0000 (13:25 +0100)]
matroskamux: make sure pads caps are set before any buffers pushed.
Zaheer Abbas Merali [Fri, 21 May 2010 12:14:04 +0000 (13:14 +0100)]
matroskamux: add streamheaders
Zaheer Abbas Merali [Fri, 21 May 2010 11:23:08 +0000 (12:23 +0100)]
matroskamux: no need to set cache twice
Xavier Queralt [Thu, 20 May 2010 23:59:53 +0000 (01:59 +0200)]
Do not create a SeekHeader, Cues, .. when doing live
Xavier Queralt [Thu, 20 May 2010 21:39:59 +0000 (23:39 +0200)]
Add is-live property
Mark Nauwelaerts [Tue, 1 Jun 2010 11:22:26 +0000 (13:22 +0200)]
jpegdec: fix variable init
Mark Nauwelaerts [Fri, 28 May 2010 14:37:32 +0000 (16:37 +0200)]
matroskademux: improve reverse playback
Slightly modify approach to also handle cases where cue entries do not reliably
lead to initial keyframes.
Fixes #619817.
Mark Nauwelaerts [Mon, 24 May 2010 14:02:58 +0000 (16:02 +0200)]
deinterlace: avoid gtk-doc confusing comments
Mark Nauwelaerts [Fri, 21 May 2010 09:21:58 +0000 (11:21 +0200)]
matroskamux: adjust unit test to modified behaviour
Mark Nauwelaerts [Thu, 20 May 2010 12:33:41 +0000 (14:33 +0200)]
matroskamux: use write caching also when writing buffer data
Specifically, this reduces pushing several small buffers for each
data buffer and also avoids a seek for each buffer altogether
(though a seek is still needed for each cluster).
Fixes #619273.
Mark Nauwelaerts [Thu, 20 May 2010 12:23:07 +0000 (14:23 +0200)]
matroskamux: fix ebml write caching with bytewriter implementation
Also cache a bit more during header writing.
Fixes #619273.
Mark Nauwelaerts [Thu, 20 May 2010 12:08:42 +0000 (14:08 +0200)]
matroskamux: use consistent debug category name for ebmlwrite
Mark Nauwelaerts [Tue, 18 May 2010 12:44:15 +0000 (14:44 +0200)]
matroskademux: use bytereader based GstEbmlRead as a helper
... rather than basing on it by inheritance.
Also use more common code for push and pull mode.
Fixes #619198.
Fixes #611117.
Mark Nauwelaerts [Tue, 1 Jun 2010 13:47:32 +0000 (15:47 +0200)]
matroskamux: _get_pad_template result needs no unref
Thiago Santos [Tue, 18 May 2010 22:42:58 +0000 (19:42 -0300)]
pngenc: Support 8 bit grayscale
Adds support to 8 bit grayscale input
Thiago Santos [Tue, 18 May 2010 17:46:54 +0000 (14:46 -0300)]
jpegdec: Adds 8bit grayscale support
Adds decoding support for jpeg images in 8 bit grayscale format.
Thiago Santos [Tue, 18 May 2010 04:57:14 +0000 (01:57 -0300)]
jpegenc: Accept grayscale as input
Adds video/x-raw-grayscale (8 bit) support to jpegenc
Edward Hervey [Mon, 31 May 2010 11:30:05 +0000 (13:30 +0200)]
videomixer: Implement sinkpad GetCapsFunction.
This allows returning only the formats, width, height, framerate
and pixel-aspect-ratio that downstream can support.
https://bugzilla.gnome.org/show_bug.cgi?id=620148
Sebastian Dröge [Mon, 31 May 2010 05:49:21 +0000 (07:49 +0200)]
matroskademux: Don't compare running times with stream times when doing QoS
Sebastian Dröge [Thu, 27 May 2010 19:06:43 +0000 (21:06 +0200)]
deinterlace: Don't reconfigure the caps when changing properties
Fixes bug #619848.
Sebastian Dröge [Wed, 26 May 2010 11:13:44 +0000 (13:13 +0200)]
alpha: Add property to allow passthrough mode
This passthrough mode is used if the alpha method is "set"
and the alpha value is 1.0.
Fixes bug #617512.
Alexander Kojevnikov [Tue, 25 May 2010 05:16:06 +0000 (15:16 +1000)]
spectrum: support 24-bit width
Fixes #619045
Alexander Kojevnikov [Mon, 24 May 2010 11:50:58 +0000 (21:50 +1000)]
spectrum: support arbitrary bit depth
Partially fixes #619045
Philip Jägenstedt [Tue, 25 May 2010 03:36:46 +0000 (05:36 +0200)]
matroskademux: fix deadlock introduced by video keyframe QoS
Philip Jägenstedt [Sun, 23 May 2010 07:32:08 +0000 (09:32 +0200)]
matroskademux: skip buffers before a late keyframe (QoS)
Before, vp8dec had no option but to decode all frames even if some/all
of them would be late. With this change, performance when keyframes are
frequent is helped a great deal. On my Thinkpad X60s, decoding a 20 s
1080p sunflower encode with keyframes every 10 frames went from taking
42 s with 5 frames shown to 21 s with 15 frames shown (still slow
enough to count by hand). When keyframes are more sparse, you will
still be able to catch up eventually, but the results won't be as
noticable.
Sebastian Dröge [Fri, 14 May 2010 15:57:59 +0000 (17:57 +0200)]
videomixer: Don't mix input with different pixel aspect ratios
Fixes bug #618530.
Sebastian Dröge [Mon, 17 May 2010 17:54:22 +0000 (19:54 +0200)]
deinterlace: Add MMX/3DNow implementations of greedyh for UYVY
Sebastian Dröge [Mon, 17 May 2010 17:16:43 +0000 (19:16 +0200)]
deinterlace: Fix UYVY implementation of greedyh to be actually used
Sebastian Dröge [Tue, 11 May 2010 09:43:07 +0000 (11:43 +0200)]
gdkpixbuf: Add a gdkpixbuf3 plugin that uses gdkpixbuf3
Tim-Philipp Müller [Tue, 1 Jun 2010 09:06:10 +0000 (10:06 +0100)]
win32: add more generated marshal and enumtype files to win32-update
Tim-Philipp Müller [Tue, 1 Jun 2010 08:27:00 +0000 (09:27 +0100)]
Revert "matroska: add temporary webm typefinder"
This reverts commit
d148ec0ad2053abb0c38fc681a8953292985388f.
We depend on -base git now, which has a webm typefinder in the usual
place.
Tim-Philipp Müller [Tue, 1 Jun 2010 08:26:11 +0000 (09:26 +0100)]
Revert "avimux, flvmux, matroskamux: don't crash if tags arrive on multiple input pads at the same time"
This reverts commit
6a9983cd20c48b96396229b3f94d0254a05ddf48.
Rely on locking done in GstTagSetter in core git.
Tim-Philipp Müller [Tue, 1 Jun 2010 08:23:18 +0000 (09:23 +0100)]
configure: require core/base git
For WebM typefinding and GstTagsetter fixes.
Tim-Philipp Müller [Tue, 1 Jun 2010 08:17:52 +0000 (09:17 +0100)]
Back to development
Tim-Philipp Müller [Sun, 30 May 2010 13:03:53 +0000 (14:03 +0100)]
Release 0.10.23
Tim-Philipp Müller [Sun, 30 May 2010 13:02:04 +0000 (14:02 +0100)]
Update .po files
Sebastian Dröge [Sat, 29 May 2010 08:23:48 +0000 (10:23 +0200)]
flvdemux: Fix position query
Tim-Philipp Müller [Fri, 28 May 2010 14:14:07 +0000 (15:14 +0100)]
docs: remove unnecessary videorate element from webmmux example pipeline
Thiago Santos [Fri, 28 May 2010 13:43:36 +0000 (10:43 -0300)]
jpegenc: Keep variables in sane state after _reset
When reseting, keep 'row' variables at a sane state after
freeing to avoid it being freed again on _resync realloc
when the element is reused.
Fixes #619943
Sebastian Dröge [Thu, 27 May 2010 16:08:17 +0000 (18:08 +0200)]
videobox: Fix floating point to integer conversion for the alpha values
Fixes bug #619835.
Tim-Philipp Müller [Wed, 26 May 2010 07:54:33 +0000 (08:54 +0100)]
0.10.22.3 pre-release
Tim-Philipp Müller [Tue, 25 May 2010 23:33:59 +0000 (00:33 +0100)]
po: update translations
Mark Nauwelaerts [Tue, 25 May 2010 13:34:11 +0000 (15:34 +0200)]
wavparse: handle truncated input data at EOS in pull mode
Fixes #617733.
Tim-Philipp Müller [Wed, 26 May 2010 10:55:13 +0000 (11:55 +0100)]
Automatic update of common submodule
From 357b0db to fd7ca04
Robert Swain [Tue, 25 May 2010 19:14:05 +0000 (21:14 +0200)]
qtdemux: Round timestamp up when scaling to mov format
Fix timestamp rounding to allow the correct index to be located.
The issue was that scaling from GStreamer time format to mov time format was
rounding down causing the timestamp of the newsegment event received after a
flushing keyframe seek to find the sample index before the one it should
causing further backward seeking to the keyframe prior until no rounding error
occurred.
Rounding up when scaling to mov format has the desired effect, and it is
not clear whether just the _round () variant would be sufficient.
Fixes bug #619105
Tim-Philipp Müller [Mon, 24 May 2010 16:26:42 +0000 (17:26 +0100)]
avimux, flvmux, matroskamux: don't crash if tags arrive on multiple input pads at the same time
This is a temporary fix for the release only.
Fixes #619533.
Wim Taymans [Tue, 25 May 2010 15:05:12 +0000 (17:05 +0200)]
rtptheora: remove delivery-method from caps
We can accept all delivery methods so don't advertise anything on the caps or
parse anything, we will handle whatever we receive.
Fixes #618940
Tim-Philipp Müller [Tue, 25 May 2010 14:40:01 +0000 (15:40 +0100)]
matroska: add temporary webm typefinder
Add webm typefinder just for the release, so webm works for
people whose distros don't patch gst-plugins-base as well.
We'll remove this again after the release.
Tim-Philipp Müller [Sun, 23 May 2010 10:17:27 +0000 (11:17 +0100)]
docs: add some pipeline examples to webmmux docs
Tim-Philipp Müller [Fri, 21 May 2010 11:27:07 +0000 (12:27 +0100)]
docs: add webmmux to docs
Tim-Philipp Müller [Fri, 21 May 2010 12:01:30 +0000 (13:01 +0100)]
matroska: fix up plugin and element descriptions a bit
Tim-Philipp Müller [Fri, 21 May 2010 11:47:03 +0000 (12:47 +0100)]
matroska: move webmmux into own source files
Makes things easier for gtk-doc.
Christian Schaller [Fri, 21 May 2010 07:26:05 +0000 (12:26 +0500)]
Update spec file with latest changes
Sebastian Dröge [Thu, 20 May 2010 18:01:58 +0000 (20:01 +0200)]
matroska: Remove the doctype enum, it's not needed anymore
Sebastian Dröge [Thu, 20 May 2010 17:57:14 +0000 (19:57 +0200)]
webmmux: Add new webmmux element that only supports muxing of WebM
...and remove the doctype property from matroskamux again.
Mark Nauwelaerts [Thu, 20 May 2010 15:31:59 +0000 (17:31 +0200)]
matroskamux: unit test checks version 1 files
Tristan Matthews [Tue, 18 May 2010 19:27:06 +0000 (15:27 -0400)]
speex: fix latency query
Speex should report 30 ms latency for narrowband mode, 34 otherwise.
Fixes #619018
Philip [Tue, 18 May 2010 13:04:32 +0000 (21:04 +0800)]
ebmlread: rm floatcast.h include (not used)
Philip Jägenstedt [Mon, 17 May 2010 03:36:00 +0000 (05:36 +0200)]
matroskamux: bump default doctype version to 2
In this day and age this should be safe. There's otherwise a risk people
will be creating unneccessarily big WebM files as they can't use
SimpleBlock in v1.
Philip Jägenstedt [Mon, 17 May 2010 03:27:44 +0000 (05:27 +0200)]
matroska: handle matroska and webm doctype versions equally
The original plan was to let WebM v1 be the same as Matroska v2 (with
extra constraints), but for simplicity it was decided to handle the
versions equally, such that e.g. SimpleBlock is only allowed in WebM v2.
Philip Jägenstedt [Thu, 13 May 2010 10:10:54 +0000 (12:10 +0200)]
matroskademux: Verify lace size in _parse_blockgroup_or_simpleblock
Failure to do this for corrupt input can cause a subbuffer bigger
than the actual buffer to be created, quickly leading to segfault.
Test case:
bug_s222005751_r0.001____memcpy.webm
Philip Jägenstedt [Thu, 13 May 2010 08:23:10 +0000 (10:23 +0200)]
ebml: crude hack to avoid crashing on unexpected metadata
The comment says this cannot happen, but it did and I don't know
why. This is not the correct fix, needs investigation. Test case:
bug_s555010094_r0.0005:0.008____IA__g_assertion_message_expr.webm
Philip Jägenstedt [Thu, 13 May 2010 07:18:56 +0000 (09:18 +0200)]
ebml: don't modify out str if returning an error in _read_ascii
This is a regression from ASCII validation changes. Test case:
bug_s66876390_r0.001____malloc_printerr.webm
Philip Jägenstedt [Wed, 12 May 2010 11:16:28 +0000 (13:16 +0200)]
ebml: Validate 7-bit ASCII in gst_ebml_read_ascii
This was triggering an UTF-8 assertion in gst_caps_set_simple for
corrupt files with garbage as codec id. Test case:
gstreamer_error_trying_to_set_invalid_utf8_as_codec_id.webm
Old gst_ebml_read_ascii renamed to gst_ebml_read_string, also used by
gst_ebml_read_utf8. Unlike for UTF-8, failure to validate is an error,
as gst_ebml_read_ascii is used for reading doctype and codec id and we
might just as well give up early in those cases.
Philip Jägenstedt [Wed, 12 May 2010 12:30:18 +0000 (14:30 +0200)]
matroskademux: Ignore unexpected CodecState
Because GstMatroskaTrackContext *stream is set up in the first
SimpleBlock or Block, a rogue CodecState otherwise causes a segfault on
derefencing the NULL pointer. Test case:
bug_s5506167_r0.001____gst_matroska_demux_parse_blockgroup_or_simpleblock.webm