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
Philip Jägenstedt [Mon, 10 May 2010 04:00:49 +0000 (06:00 +0200)]
matroskademux: Add video/webm sink caps
Philip Jägenstedt [Sun, 9 May 2010 17:46:51 +0000 (19:46 +0200)]
matroskamux: Use SimpleBlock for WebM when possible
Philip Jägenstedt [Sun, 9 May 2010 17:28:59 +0000 (19:28 +0200)]
matroskademux: Support "webm" DocType
Philip Jägenstedt [Sun, 9 May 2010 10:35:10 +0000 (12:35 +0200)]
matroskamux: rename matroska_version to doctype_version
Philip Jägenstedt [Sun, 9 May 2010 10:09:57 +0000 (12:09 +0200)]
matroskamux: Support "webm" DocType
David Schleef [Thu, 13 May 2010 01:38:48 +0000 (18:38 -0700)]
qtdemux: Add VP8
Sebastian Dröge [Tue, 27 Apr 2010 13:26:13 +0000 (15:26 +0200)]
matroskamux: Add support for On2 VP8
...matroskademux automatically supports it through libgstriff.
Sebastian Dröge [Tue, 27 Apr 2010 13:25:32 +0000 (15:25 +0200)]
avimux: Add support for On2 VP8
...avidemux automatically supports it through libgstriff.
Sebastian Dröge [Mon, 17 May 2010 15:17:01 +0000 (17:17 +0200)]
pulse: Don't lock the mainloop in NULL
Sebastian Dröge [Sat, 15 May 2010 19:15:52 +0000 (21:15 +0200)]
configure: Use = instead of == in shell scripts for equality checks
Tim-Philipp Müller [Fri, 14 May 2010 17:33:32 +0000 (18:33 +0100)]
0.10.22.2 pre-release
Tim-Philipp Müller [Fri, 14 May 2010 17:24:14 +0000 (18:24 +0100)]
Automatic update of common submodule
From 4d67bd6 to 357b0db
Tim-Philipp Müller [Fri, 14 May 2010 17:16:45 +0000 (18:16 +0100)]
tests: fix leak in souphttpsrc unit test
Unref server objects when done. Fixes check-valgrind.
Tim-Philipp Müller [Fri, 14 May 2010 16:30:40 +0000 (17:30 +0100)]
jpegenc: fix two leaks
Don't leak othercaps or jpegenc ref.
Wim Taymans [Thu, 13 May 2010 11:01:26 +0000 (13:01 +0200)]
rtpbin: fix docs
Documentation error spotted by tony <caicai0119 at gmail.com>
Fixes #618419
Olivier Crête [Tue, 11 May 2010 17:18:42 +0000 (13:18 -0400)]
rtptheoradepay: make delivery-method parameter optional
It probably will not be in the final RFC as it is not in RFC 5215 for Vorbis.
If there is a configuration specified, assume it is in-line and if nothing is
specified, assume it is in-band.
https://bugzilla.gnome.org/show_bug.cgi?id=618386
Wim Taymans [Thu, 13 May 2010 10:16:59 +0000 (12:16 +0200)]
jpegdec: increase acceptable output sizes
We can perfectly decode 1x1 images so lower the min width and height to 1.
Fixes #618392
Wim Taymans [Thu, 13 May 2010 09:30:27 +0000 (11:30 +0200)]
celtpay: fix queue duration calculations
Don't blindly add the durations of incomming buffers to the total queued
duration because it might be invalid. Mark the total queued duration invalid
when we receive an invalid incomming timestamp because that's when we lose track
of the total queued duration.
Fixes #618324
Mark Nauwelaerts [Mon, 10 May 2010 09:14:39 +0000 (11:14 +0200)]
rtph264pay: extract SPS and PPS from property provided parameter set
... so it can also be regularly inserted into the stream if so configured.
Fixes #617164.
Alessandro Decina [Tue, 11 May 2010 20:28:08 +0000 (22:28 +0200)]
osxvideosink: allow switching views at runtime.
Tim-Philipp Müller [Tue, 11 May 2010 19:26:37 +0000 (20:26 +0100)]
rtp: dist missing header file to fix make distcheck
Tim-Philipp Müller [Tue, 11 May 2010 18:05:08 +0000 (19:05 +0100)]
oss4: minor cleanup
Remove fixed FIXME, change finalise to finalize for consistency.
Tim-Philipp Müller [Tue, 11 May 2010 18:01:51 +0000 (19:01 +0100)]
docs: add oss4 elements to docs
Tim-Philipp Müller [Tue, 11 May 2010 15:09:10 +0000 (16:09 +0100)]
po: move oss4 strings from -bad to -good
Tim-Philipp Müller [Tue, 11 May 2010 15:08:21 +0000 (16:08 +0100)]
Move oss4 plugin from -bad to -good
Hook up build infrastructure, docs and tests.
Fixes #614305.
Brian Cameron [Thu, 29 Apr 2010 12:18:58 +0000 (13:18 +0100)]
oss4sink: implement GstStreamVolume interface and add mute and volume properties
OSS4 supports per-stream volume control, so expose this using the right
API, so that playbin2 and applications like totem can make use of it
(instead of using a volume element for volume control).
Fixes #614305.
Tim-Philipp Müller [Thu, 8 Apr 2010 09:45:33 +0000 (10:45 +0100)]
oss4: 8-bit PCM audio caps don't need an endianness field
Tim-Philipp Müller [Thu, 8 Apr 2010 09:40:02 +0000 (10:40 +0100)]
oss4: don't iterate the formats table twice for each entry
When iterating the formats table, we can just pass the whole
entry to our helper function, which avoids iterating the table
again to find the entry structure from the passed format id.
Tim-Philipp Müller [Tue, 30 Mar 2010 10:43:04 +0000 (11:43 +0100)]
oss4: also accept formats not natively supported
Also accept formats that are not natively supported by the
hardware, OSS4 can convert them internally. List the native
formats first in the caps though, to express our preference
for the native formats. We need this in order to support the
case properly where the audio hardware supports only e.g.
little endian PCM, but the host is big endian, since many
audio elements only support native endianness and make the
reasonable assumption that any audiosink will be able to
handle audio in native endianness.
Based on patch by Jerry Tan <jerry.tan@sun.com>
Fixes #614317.
Tim-Philipp Müller [Tue, 30 Mar 2010 00:14:58 +0000 (01:14 +0100)]
oss4: add comment for translators
Not that that will make these strings much better. Also remove i18n
marker where it doesn't make sense.
Benjamin Otte [Mon, 22 Mar 2010 15:13:12 +0000 (16:13 +0100)]
oss4: Refactor code to make it look more modern
A side effect is that it passes -Wformat-nonliteral and doesn't read
invalid memory in some cases, like when the mixer track contains
a % sign or there is a number but not a known mixer name.
Benjamin Otte [Mon, 22 Mar 2010 13:09:24 +0000 (14:09 +0100)]
oss4: Avoid g_quark_to_string (g_quark_from_string ()) madness
We to the strdup inside gst_oss4_mixer_control_get_translated_name()
instead of in the only caller.