Wim Taymans [Fri, 23 Oct 2009 18:54:47 +0000 (14:54 -0400)]
uridecodebin: don't use 2 buffering elements
Only use the multiqueue buffering when we don't have a stream (and thus are
using queue2 to do the buffering already).
Wim Taymans [Fri, 23 Oct 2009 18:34:42 +0000 (14:34 -0400)]
playbin2: add flag to enable decodebin buffering
Add a flag that enables buffering in decodebin.
Wim Taymans [Fri, 23 Oct 2009 18:32:29 +0000 (14:32 -0400)]
decodebin2: buffering is implemented now
Wim Taymans [Fri, 23 Oct 2009 18:30:52 +0000 (14:30 -0400)]
uridecodebin: buffering is implemented now
Wim Taymans [Fri, 23 Oct 2009 18:09:17 +0000 (14:09 -0400)]
decodebin2: configure use-buffering on multiqueue
Wim Taymans [Fri, 23 Oct 2009 17:58:25 +0000 (13:58 -0400)]
uridecodebin: use 0 for max buffer size
Wim Taymans [Fri, 23 Oct 2009 17:53:21 +0000 (13:53 -0400)]
uridecodebin: set some reasonable defaults
Wim Taymans [Fri, 23 Oct 2009 17:44:12 +0000 (13:44 -0400)]
uridecodebin: set buffering properties on decodebin2
Propagate the buffering properties on decodebin2 but only if we are not already
doing download buffering.
Wim Taymans [Fri, 23 Oct 2009 15:52:09 +0000 (11:52 -0400)]
uridecodebin: add use-buffering property
Add a use-buffering property that will perform buffering on the parsed or
demuxed media.
Wim Taymans [Fri, 23 Oct 2009 15:31:47 +0000 (11:31 -0400)]
decodebin2: refactor queue size configuration.
Refactor the queue size configuration into a new method.
Use the same queue values for buffering as for preroll.
Wim Taymans [Fri, 23 Oct 2009 15:08:50 +0000 (11:08 -0400)]
decodebin2: move error path down
Wim Taymans [Fri, 23 Oct 2009 15:02:40 +0000 (11:02 -0400)]
decodebin2: implement max queue size properties
Wim Taymans [Fri, 23 Oct 2009 14:42:23 +0000 (10:42 -0400)]
decodebin2: add properties for buffering
Add properties that can be used to configure the multiqueue buffers and
buffering methods
Edward Hervey [Sat, 24 Oct 2009 11:19:08 +0000 (13:19 +0200)]
examples: fix linking order.
the uninstalled wrapper would create a LD_LIBRARY_PATH with system-wide
path before the local ones... resulting in the example applications picking
up the system-wide libraries and not the (potentially modified) uninstalled
libraries
Sebastian Dröge [Sat, 24 Oct 2009 11:08:07 +0000 (13:08 +0200)]
playbin2: Don't destroy the suburidecodebin on errors
It can still be reused
Sebastian Dröge [Sat, 24 Oct 2009 11:07:45 +0000 (13:07 +0200)]
playbin2: If setting the state of the suburidecodebin fails just warn, don't error out
Sebastian Dröge [Sat, 24 Oct 2009 10:12:56 +0000 (12:12 +0200)]
playbin2: Don't set uridecodebin states to NULL before reusing them
This makes sure that the internal decodebin2 and everything else can
be reused without reinstantiation.
Edward Hervey [Sun, 18 Oct 2009 15:28:22 +0000 (17:28 +0200)]
uridecodebin: Store unused decodebin2 instances for further usage.
This allows faster re-use of uridecodebin.
https://bugzilla.gnome.org/show_bug.cgi?id=599471
David Schleef [Sat, 24 Oct 2009 00:49:15 +0000 (17:49 -0700)]
theora: Convert theoraparse to libtheora 1.0 API
Olivier Crête [Wed, 21 Oct 2009 09:38:59 +0000 (12:38 +0300)]
rtpaudiopayload: Only sent exact multiple of the frame size
Also align the maximum size with the frame size, not only the minimum
Thiago Santos [Thu, 22 Oct 2009 12:12:03 +0000 (09:12 -0300)]
audiorate: move debug calculation into debug macro
Remove in_duration and move its calculation to
GST_LOG_OBJECT macro. This way it will only be calculated
if we have debug enabled.
Thiago Santos [Thu, 22 Oct 2009 12:06:02 +0000 (09:06 -0300)]
audiorate: Removing unused variable
The in_stop variable was never read. Removing it.
Thiago Santos [Thu, 22 Oct 2009 11:40:01 +0000 (08:40 -0300)]
audiorate: be more accurate on offset math
Replace gst_util_uint64_scale_int for its rounding version
to improve accuracy and avoid inserting samples where
they aren't needed.
Fixes #499181
Sebastian Dröge [Thu, 22 Oct 2009 08:17:31 +0000 (10:17 +0200)]
textoverlay: Optimize a bit more
...and add a FIXME for bug #598695 and explain
what we should do once Pango supports user fonts.
Iago Toral [Thu, 22 Oct 2009 08:02:11 +0000 (10:02 +0200)]
subparse: Add support for DKS subtitle format
Fixes bug #598936.
Sebastian Dröge [Thu, 22 Oct 2009 07:31:34 +0000 (09:31 +0200)]
textoverlay: Do shading as first operation
Sebastian Dröge [Thu, 22 Oct 2009 07:08:04 +0000 (09:08 +0200)]
textoverlay: Only use a single cairo surface for drawing
... and comment/optimize what is going on here a bit better.
Wim Taymans [Wed, 21 Oct 2009 20:24:29 +0000 (16:24 -0400)]
inputselector: set output caps before pushing
Set the output caps on the srcpad before pushing the buffer because else core
will do a rather expensive check to see if we can actually accept those caps on
the srcpad.
Wim Taymans [Wed, 21 Oct 2009 19:58:11 +0000 (15:58 -0400)]
inputselector: install an acceptcaps function
Install a custom acceptcaps function instead of using the default expensive
check. We accept whatever downstream accepts so we pass along the acceptcaps
call to the downstream peer.
Tim-Philipp Müller [Wed, 21 Oct 2009 19:35:17 +0000 (20:35 +0100)]
typefind: fix typo in previous mxf typefinder change
Edward Hervey [Wed, 21 Oct 2009 18:44:33 +0000 (20:44 +0200)]
typefind: speed up mxf_type_find over 300 times for worst case scenarios
* memcmp is expensive and was being abused, reduce calling it by checking
the first byte.
* iterating one byte at at time over 64 kbites introduces a certain overhead,
therefore we now do it in chunks of 1024 bytes
And I do mean over 300 times. The average instruction call per mxf_type_find
was previously 785685 and it's now down to 2458 :)
Wim Taymans [Tue, 20 Oct 2009 21:13:39 +0000 (17:13 -0400)]
decodebin2: avoid type checks
Edward Hervey [Tue, 20 Oct 2009 07:00:28 +0000 (09:00 +0200)]
gst/decodebin2: Ensure we get fixed caps for topology message
There are some corner cases (like with dvdemux amongst others) where
the caps won't be negotiated, but the pad has fixed caps.
Edward Hervey [Tue, 20 Oct 2009 06:52:36 +0000 (08:52 +0200)]
gst/decodebin2: Don't expose chains if we're shutting down.
This avoids adding flushing pads to ourself
Tim-Philipp Müller [Sat, 17 Oct 2009 20:16:57 +0000 (21:16 +0100)]
pango: bump pango requirement to stable version and remove ifdefs
Bump pango requirement from an ancient development version to an
ancient stable version.
Tim-Philipp Müller [Sat, 17 Oct 2009 20:11:10 +0000 (21:11 +0100)]
.gitignore: update after files got renamed
Wim Taymans [Fri, 16 Oct 2009 08:54:31 +0000 (10:54 +0200)]
basertppayload: small comment fix
Peter Kjellerstedt [Fri, 16 Oct 2009 08:50:35 +0000 (10:50 +0200)]
rtp: Correct timestamping of buffers when buffer_lists are used
The timestamping of buffers when buffer_lists are used failed if
a buffer did not have both a timestamp and an offset.
Stefan Kost [Fri, 16 Oct 2009 07:56:56 +0000 (10:56 +0300)]
build: fix previous commit to fully accomodate the glib-gen.mak changes
I also renamed glib_enum_prefix to glib_gen_prefix as we also use that for the
marshallers. Also rename the rtsp-marshal.list to work with the unified prefix.
Stefan Kost [Fri, 16 Oct 2009 07:18:45 +0000 (10:18 +0300)]
build: use gst-glib-gen.mak to fix the glib build rules. Fixes #598114
The build rules in glib-gen.mak were using pattern rules in a non save way.
Stefan Kost [Fri, 16 Oct 2009 07:14:36 +0000 (10:14 +0300)]
Automatic update of common submodule
From 85d1530 to 0702fe1
Benjamin Otte [Thu, 10 Sep 2009 09:39:18 +0000 (11:39 +0200)]
theora: Make theoradec use gstvideo for image conversion
Vastly simplifies code.
https://bugzilla.gnome.org/show_bug.cgi?id=594729
Benjamin Otte [Thu, 10 Sep 2009 07:36:31 +0000 (09:36 +0200)]
theora: Don't always round to even width/height
Previously, the code always rounded to even sizes. Now it only ensures
that pic_x and pic_y are multiples of 2 if the output format requires
it.
Also inlcudes fixes to take pic_x/y into account properly when copying
the buffer.
https://bugzilla.gnome.org/show_bug.cgi?id=594729
Benjamin Otte [Wed, 9 Sep 2009 22:00:44 +0000 (00:00 +0200)]
theora: Don't check for theora.pc anymore
THe new APIs from theoradec and theoraenc are used now.
https://bugzilla.gnome.org/show_bug.cgi?id=594729
David Schleef [Fri, 31 Jul 2009 21:59:03 +0000 (14:59 -0700)]
theora: Convert theoradec to libtheora 1.0 API
https://bugzilla.gnome.org/show_bug.cgi?id=594729
Benjamin Otte [Wed, 9 Sep 2009 21:44:36 +0000 (23:44 +0200)]
theora: Port encoder to new Theora API
Includes ripping out the old buffer copy code to fill up to frame size.
This is not necesary with the new encoder.
https://bugzilla.gnome.org/show_bug.cgi?id=594729
Benjamin Otte [Wed, 9 Sep 2009 19:59:31 +0000 (21:59 +0200)]
theora: Disable sharpness property
It's ignored by libtheora
https://bugzilla.gnome.org/show_bug.cgi?id=594729
Benjamin Otte [Wed, 9 Sep 2009 19:57:08 +0000 (21:57 +0200)]
theora: Disable noise-sensitivity property
It is ignored by libtheora
https://bugzilla.gnome.org/show_bug.cgi?id=594729
Benjamin Otte [Wed, 9 Sep 2009 19:50:57 +0000 (21:50 +0200)]
theora: Disable keyframe-mindistance property
It's ignored by the current Theora library
https://bugzilla.gnome.org/show_bug.cgi?id=594729
Benjamin Otte [Wed, 9 Sep 2009 19:48:08 +0000 (21:48 +0200)]
theora: Disable keyframe_threshold property
It's ignored by the current theora encoder
https://bugzilla.gnome.org/show_bug.cgi?id=594729
Benjamin Otte [Wed, 9 Sep 2009 18:26:47 +0000 (20:26 +0200)]
theora: Get rid of "quick" property
The proeprty is not used by libtheora at all
https://bugzilla.gnome.org/show_bug.cgi?id=594729
Benjamin Otte [Tue, 8 Sep 2009 13:12:23 +0000 (15:12 +0200)]
theora: remove support for outdated granulepos hack
This is in preparation to switching to switching to the new Theora API
https://bugzilla.gnome.org/show_bug.cgi?id=594729
Benjamin Otte [Tue, 8 Sep 2009 11:23:04 +0000 (13:23 +0200)]
theora: Ignore border property
Always make the video use black as padding color.
The output will be identical to previous versions.
https://bugzilla.gnome.org/show_bug.cgi?id=594729
Benjamin Otte [Tue, 8 Sep 2009 11:18:26 +0000 (13:18 +0200)]
theora: Ignore the center property, always set video to top left
This is not a necessary property, the output will be identical no matter
what.
https://bugzilla.gnome.org/show_bug.cgi?id=594729
Jan Schmidt [Thu, 15 Oct 2009 15:34:28 +0000 (16:34 +0100)]
po: Don't create backup .po files
As well as preventing creation of useless backup files, it works
around a bug in gettext 0.17 on OS/X
Sebastian Dröge [Thu, 15 Oct 2009 11:13:43 +0000 (13:13 +0200)]
decodebin2: Post a element message on the bus with the stream topology
Fixes bug #598533.
Sebastian Dröge [Thu, 15 Oct 2009 11:01:01 +0000 (13:01 +0200)]
decodebin2: Store the "endcaps" of a chain
This are the caps that either resulted in a deadend if
no plugin for them could be found or raw caps.
Sebastian Dröge [Thu, 15 Oct 2009 09:38:14 +0000 (11:38 +0200)]
decodebin2: Store for every chain, which pad resulted in its creation
Jan Schmidt [Thu, 15 Oct 2009 09:28:39 +0000 (10:28 +0100)]
check: Don't fail the basetime test when no audiosrc is available
On OS/X the DEFAULT_AUDIOSRC is not going to be available, because
it isn't in gst-plugins-base. Just defer the test, instead of
failing it.
Edward Hervey [Wed, 14 Oct 2009 08:41:03 +0000 (10:41 +0200)]
Automatic update of common submodule
From a3e3ce4 to 85d1530
Sebastian Dröge [Wed, 14 Oct 2009 06:36:54 +0000 (08:36 +0200)]
playbin2: Use gst_object_has_ancestor() instead of our own implementation of it
Tommi Myöhänen [Tue, 13 Oct 2009 16:14:41 +0000 (19:14 +0300)]
baseaudiosrc: fix timestamp comparission, Fixes #597407
Tommi Myöhänen [Tue, 13 Oct 2009 10:52:02 +0000 (13:52 +0300)]
tests: new test for baseaudiosrc base_time comparison
This test reveals a bug in comparison operation between timestamp and
GstElement's base_time in GstBaseAudioSrc.
Sebastian Dröge [Thu, 8 Oct 2009 17:55:42 +0000 (19:55 +0200)]
playbin2: Don't stop completely on initialization errors from subtitle elements
Instead disable the subtitles and play the other parts of the stream.
Fixes bug #587704.
Sebastian Dröge [Tue, 13 Oct 2009 14:50:37 +0000 (16:50 +0200)]
decodebin2: Ignore no-more-pads from non-demuxer elements
instead of printing an error that no corresponding group could
be found. no-more-pads from non-demuxer elements doesn't give
any additional information because there can only be a single srcpad.
Fixes bug #598288.
Stefan Kost [Mon, 12 Oct 2009 18:30:15 +0000 (21:30 +0300)]
audioconvert: track active conversion in perf log
Patrick Radizi [Mon, 12 Oct 2009 13:48:46 +0000 (15:48 +0200)]
rtsp: handle socket errors
gstrtspconnection.c:gst_rtsp_connection_receive() can hang when an error occured
on a socekt. Fix this problem by checking for error on 'other' socket after poll
return.
Fixes #596159
Wim Taymans [Tue, 6 Oct 2009 12:08:48 +0000 (14:08 +0200)]
audioclock: whitespace fixes
Wim Taymans [Tue, 6 Oct 2009 12:07:59 +0000 (14:07 +0200)]
theoradec: avoid confusing error
Josep Torra [Fri, 9 Oct 2009 20:00:45 +0000 (22:00 +0200)]
vorbis: fixes warings in macosx snow leopard
Josep Torra [Fri, 9 Oct 2009 16:52:12 +0000 (18:52 +0200)]
theora: fixes warnings on macosx snow leopard
Josep Torra [Fri, 9 Oct 2009 14:56:29 +0000 (16:56 +0200)]
ogg: fixes warnings on macosx snow leopard
Josep Torra [Fri, 9 Oct 2009 14:19:17 +0000 (16:19 +0200)]
oggdemux: fix a warning in macosx
Mark Nauwelaerts [Thu, 8 Oct 2009 12:16:44 +0000 (14:16 +0200)]
tag: use BOM to recognize UTF-16/32 encoding and convert accordingly
Jan Schmidt [Fri, 9 Oct 2009 14:11:16 +0000 (15:11 +0100)]
check: Add valgrind suppressions for ALSA and fontconfig bits on Jaunty.
Josep Torra [Fri, 9 Oct 2009 13:32:45 +0000 (15:32 +0200)]
audioconvert: change the format instead of cast as ensonic asked
Josep Torra [Fri, 9 Oct 2009 13:29:15 +0000 (15:29 +0200)]
audioconvert: fixes warning: format not a string literal and no format arguments
redo of valid part of my previous revert.
Josep Torra [Fri, 9 Oct 2009 13:19:42 +0000 (15:19 +0200)]
Revert "audioconvert: fixes warning: format not a string literal and no format arguments"
Revert this commit as unintentionally I've changed common.
This reverts commit
49ea0138223ec5f9e53780635cbcc70f33778667.
Josep Torra [Fri, 9 Oct 2009 12:28:42 +0000 (14:28 +0200)]
gnomevfssrc: fixes warnings in macosx
warning: format '%llu' expects type 'long long unsigned int', but argument 8 has type 'GnomeVFSFileOffset'
warning: format '%lld' expects type 'long long int', but argument 9 has type 'guint64'
Josep Torra [Fri, 9 Oct 2009 12:23:36 +0000 (14:23 +0200)]
videorate: fix warning in macosx
Josep Torra [Fri, 9 Oct 2009 12:20:47 +0000 (14:20 +0200)]
audiorate: fix warning in macosx
Josep Torra [Fri, 9 Oct 2009 12:14:15 +0000 (14:14 +0200)]
audioconvert: fixes warning: format not a string literal and no format arguments
Josep Torra [Fri, 9 Oct 2009 12:07:24 +0000 (14:07 +0200)]
audio: fix warnings building on macosx
Stefan Kost [Thu, 8 Oct 2009 15:08:22 +0000 (18:08 +0300)]
ffmpegcolorspace: chwck formats just once per _chain()
Stefan Kost [Thu, 8 Oct 2009 14:49:39 +0000 (17:49 +0300)]
ffmpegcolorspace: add perf-log-category and log suboptimal operation
Log if we use an intermediate colorspace for conversion.
Jan Schmidt [Thu, 8 Oct 2009 09:59:36 +0000 (10:59 +0100)]
Automatic update of common submodule
From 19fa4f3 to a3e3ce4
Jan Schmidt [Wed, 7 Oct 2009 23:17:21 +0000 (00:17 +0100)]
decodebin2: Fix type-punning warning
Sebastian Dröge [Sat, 26 Sep 2009 10:56:36 +0000 (12:56 +0200)]
decodebin2: Chains with an exposed endpad are complete too
This allows partial group changes, i.e. demuxer2 in the example below
goes EOS but has a next group and audio2 stays the same.
/-- >demuxer2---->video
demuxer--- \--->audio1
\--->audio2
Sebastian Dröge [Sat, 26 Sep 2009 10:47:53 +0000 (12:47 +0200)]
decodebin2: Use the iterate internal links function instead of string magic to get multiqueue srcpads
Sebastian Dröge [Thu, 24 Sep 2009 12:56:48 +0000 (14:56 +0200)]
uridecodebin: Don't post missing plugin messages twice
decodebin2 already posts them after emitting the unknown-type signal,
there's no need to post another one.
Sebastian Dröge [Sat, 26 Sep 2009 10:17:49 +0000 (12:17 +0200)]
decodebin2: Rewrite autoplugging and how groups of pads are exposed
This now keeps track of everything that is going on, creates
a tree of chains and groups to allow "demuxer after demuxer" scenarios
and allows chained Oggs with multiple streams (needs oggdemux or playbin2 fixes).
Also document everything in detail and give a general overview of what
decodebin2 is doing at the top of the sources.
Fixes bug #596183, #563828 and #591677.
Stefan Kost [Wed, 7 Oct 2009 14:45:33 +0000 (17:45 +0300)]
ximagesink: only start event thread if needed
The event thread is doing 20 wakeups per second to poll the events. If one
runs ximagesink with handle-events=false and handle-expose=false then we can
avoid the extra thread.
Edward Hervey [Wed, 7 Oct 2009 14:56:28 +0000 (16:56 +0200)]
theoraenc: Make the default quality property 48.
This guarantees that people who use theoraenc without modifying any
properties will end up with a reasonably good quality output.
48 is also the default of the encoder_example application shipped with
libtheora.
Benjamin Otte [Wed, 7 Oct 2009 09:48:37 +0000 (11:48 +0200)]
tests/check/libs/video.c: Update strides for Y41B
Tim-Philipp Müller [Wed, 7 Oct 2009 09:32:17 +0000 (10:32 +0100)]
rtspconnection: we can use GLib 2.18 API unconditionally now
Tim-Philipp Müller [Wed, 7 Oct 2009 09:13:59 +0000 (10:13 +0100)]
configure: bump GLib requirement to 2.18
Bump required GLib version as per the release planning docs.
Tim-Philipp Müller [Sun, 4 Oct 2009 23:33:32 +0000 (00:33 +0100)]
docs: clarify GstTuner docs in two places
Tim-Philipp Müller [Fri, 25 Sep 2009 14:32:18 +0000 (15:32 +0100)]
v4l: fix compiler warning
Fix 'variable may be used uninitialized' compiler warning (which is
true in theory, but can't actually ever happen, since we always
call the function with check=FALSE).
Fixes #596313.
Stefan Kost [Wed, 7 Oct 2009 08:56:35 +0000 (11:56 +0300)]
build: sprintf, sscanf need stdio.h
Stefan Kost [Tue, 15 Sep 2009 12:26:06 +0000 (15:26 +0300)]
xvimagesink: only start event thread if needed
The event thread is doing 20 wakeups per second to poll the events. If one runs
xvimagesink with handle-events=false and handle-expose=false then we can avoid
the extra thread.