Tim-Philipp Müller [Fri, 2 Dec 2011 11:10:17 +0000 (11:10 +0000)]
Merge remote-tracking branch 'origin/master' into 0.11
Conflicts:
gst-libs/gst/netbuffer/gstnetbuffer.c
gst/ffmpegcolorspace/avcodec.h
gst/ffmpegcolorspace/gstffmpegcodecmap.c
gst/ffmpegcolorspace/imgconvert.c
gst/ffmpegcolorspace/imgconvert_template.h
gst/ffmpegcolorspace/mem.c
gst/playback/README
gst/playback/gstplaybasebin.c
gst/playback/gstplaybasebin.h
gst/playback/gstplaybin.c
sys/v4l/v4lmjpegsrc_calls.c
sys/v4l/videodev_mjpeg.h
tests/check/elements/gnomevfssink.c
Piotr Fusik [Tue, 13 Sep 2011 19:10:43 +0000 (21:10 +0200)]
various: typo fixes
Fix typos in code and docs. Fixes. #658984
Tim-Philipp Müller [Fri, 2 Dec 2011 00:07:39 +0000 (00:07 +0000)]
Merge remote-tracking branch 'origin/master' into 0.11
Conflicts:
ext/alsa/gstalsasrc.c
ext/alsa/gstalsasrc.h
gst/adder/gstadder.c
gst/playback/gstplaybin2.c
gst/playback/gstplaysinkconvertbin.c
win32/common/libgstvideo.def
Tim-Philipp Müller [Thu, 1 Dec 2011 23:26:36 +0000 (23:26 +0000)]
Add {audio,video}-marshal.[ch] to .gitignore
Wim Taymans [Thu, 1 Dec 2011 17:51:51 +0000 (18:51 +0100)]
tags: make the tag functions return GstSample
gst_tag_image_data_to_image_buffer() ->
gst_tag_image_data_to_image_sample() And make it return a GstSample.
Store the image-type into the extra sample info.
Remove a deprecated tag
Wim Taymans [Thu, 1 Dec 2011 15:48:49 +0000 (16:48 +0100)]
Use the new GstSample for snapshots
Make appsink return a GstSample. Remove the pull_buffer_list method because it
is not very useful anymore.
Pass GstSample to the conversion function.
Update playbin2 and examples
Wim Taymans [Thu, 1 Dec 2011 14:54:49 +0000 (15:54 +0100)]
update marshal list
Wim Taymans [Thu, 1 Dec 2011 14:47:16 +0000 (15:47 +0100)]
videoconvert: fix the transform_size function
The output size of a buffer does not depend on the input size but simply on the
caps of the output buffers. Don't let the base implementation deal with
unit_sizes, because input buffers might not be a multiple of that when they have
padding or non-default strides. instead, implement a transform size function
that simply calculate the natural size of an output buffer based on the caps.
Wim Taymans [Thu, 1 Dec 2011 14:45:28 +0000 (15:45 +0100)]
videometa: add copy functions
Without copy functions, the metadata is lost when we make a buffer copy such as
when we make a buffer writable.
Wim Taymans [Thu, 1 Dec 2011 14:38:10 +0000 (15:38 +0100)]
appsrc: fix negotiation
Remove old useless caps code.
Make a negotiate function and use the configured caps as the caps on the appsrc
pad. If nothing was configured, fall back to the parent implementation.
Stefan Sauer [Thu, 1 Dec 2011 10:59:17 +0000 (11:59 +0100)]
adder: be more graceful in the clipfunction
Doing dynamic pipelines is hard in 0.10. As we don't have the sticky events in
0.10 and sending such events in special elements like adder and tee was outvoted
on last attempt, be graceful to the misbehaviour instead.
Tim-Philipp Müller [Thu, 1 Dec 2011 01:22:19 +0000 (01:22 +0000)]
tests: fix caps leak in audioresample tests
Tim-Philipp Müller [Thu, 1 Dec 2011 01:07:26 +0000 (01:07 +0000)]
tests: fix memory leak in basetime test
Tim-Philipp Müller [Wed, 30 Nov 2011 23:58:19 +0000 (23:58 +0000)]
playbin2: tone down debug message about file URIs with spaces
Complain a bit less loudly about URIs that have not been
escaped properly.
Tim-Philipp Müller [Wed, 30 Nov 2011 23:15:35 +0000 (23:15 +0000)]
Revert "alsasrc: Improve timestamp accuracy"
This reverts commit
0b774e0b7cf7a8ef1780fb6100228ca6e8ca8bcf.
Tim-Philipp Müller [Wed, 30 Nov 2011 23:15:22 +0000 (23:15 +0000)]
Revert "alsasrc: Fix some compilation errors"
This reverts commit
2b84f5bd74ddb50f7832917ea8b4dd38d005631b.
Tim-Philipp Müller [Wed, 30 Nov 2011 23:15:12 +0000 (23:15 +0000)]
Revert "alsa: Remove unused but set variable"
This reverts commit
e9aed7f31c7e9e415f733e147140ce3ef2f57a61.
Tim-Philipp Müller [Wed, 30 Nov 2011 23:15:03 +0000 (23:15 +0000)]
Revert "alsasrc: fail gracefully when ALSA does not give timestamps"
This reverts commit
c7282a5718c7f31f84fb31b2c38fab0f9a38e2b0.
Tim-Philipp Müller [Wed, 30 Nov 2011 23:14:54 +0000 (23:14 +0000)]
Revert "alsasrc: handle the case where the drivers don't supply timestamps"
This reverts commit
8154b69112cdc4830cd6002ec6c1f2917d30437b.
Stefan Sauer [Mon, 28 Nov 2011 09:55:39 +0000 (10:55 +0100)]
Revert "alsasrc: style fix"
This reverts commit
f70ca6d4cbfd2b672dcc7215814bf6b39ce2c3f8.
Sebastian Dröge [Wed, 30 Nov 2011 13:25:11 +0000 (14:25 +0100)]
playsinkconvertbin: Don't send undefined NEWSEGMENT events to the internal elements
This happens when the internal elements are added before any NEWSEGMENT
event arrived and in that case we shouldn't send a NEWSEGMENT event
to the internal elements at all. They will get the NEWSEGMENT event
from upstream later.
Edward Hervey [Wed, 30 Nov 2011 10:34:23 +0000 (11:34 +0100)]
tests: More fixes for moved interfaces
Edward Hervey [Wed, 30 Nov 2011 10:34:04 +0000 (11:34 +0100)]
win32: update for API changes
Edward Hervey [Wed, 30 Nov 2011 10:33:41 +0000 (11:33 +0100)]
audio: Add audio-marshal.list to dist-ed files
Wim Taymans [Wed, 30 Nov 2011 06:57:02 +0000 (07:57 +0100)]
audio: move audio interfaces
Move the audio related interfaces to the audio library.
Wim Taymans [Wed, 30 Nov 2011 06:23:47 +0000 (07:23 +0100)]
fix includes for moved interfaces
Wim Taymans [Wed, 30 Nov 2011 06:23:07 +0000 (07:23 +0100)]
encoding-profile: small cleanup in docs
Edward Hervey [Tue, 29 Nov 2011 18:49:50 +0000 (19:49 +0100)]
video: Don't forget to install moved header files
Edward Hervey [Tue, 29 Nov 2011 18:31:55 +0000 (19:31 +0100)]
tests: More fixes for moved interfaces
Wim Taymans [Tue, 29 Nov 2011 18:10:01 +0000 (19:10 +0100)]
video: move some interfaces
Move some interfaces to the video library
Stefan Sauer [Tue, 29 Nov 2011 13:47:37 +0000 (14:47 +0100)]
adder: fill the audio-info that we use and not some random other one
Stefan Sauer [Tue, 29 Nov 2011 13:22:19 +0000 (14:22 +0100)]
adder: unbreak adder
There was one line too much removed when porting.
Sebastian Dröge [Tue, 29 Nov 2011 13:15:45 +0000 (14:15 +0100)]
playbin2: Fix decoder-sink compatibility check for raw audio/video formats
If the sink supports raw audio/video, we first check
if the decoder could output any raw audio/video format
and assume it is compatible with the sink then. We don't
do a complete compatibility check here if converters
are plugged between the decoder and the sink because
the converters will convert between raw formats and
even if the decoder format is not supported by the decoder
a converter will convert it.
We assume here that the converters can convert between
any raw format.
Fixes bug #665120.
Stefan Sauer [Tue, 29 Nov 2011 09:40:40 +0000 (10:40 +0100)]
adder: fix deadly setcaps recursion
Use a flag to avoid calling setcaps until our stack is exhausted. I don't see how this would be useful.
Alessandro Decina [Tue, 29 Nov 2011 08:11:21 +0000 (09:11 +0100)]
oggdemux: fix compiler warning
Alessandro Decina [Tue, 29 Nov 2011 07:49:53 +0000 (08:49 +0100)]
libgstvideo: minor fixes to key unit events
Make out args to gst_video_event_parse_{downstream|upstream}_force_key_unit
optional, update libgstvideo.def and fix docs a bit.
API: gst_video_event_new_upstream_force_key_unit
API: gst_video_event_new_downstream_force_key_unit
API: gst_video_event_is_force_key_unit
API: gst_video_event_parse_upstream_force_key_unit
API: gst_video_event_parse_downstream_force_key_unit
https://bugzilla.gnome.org/show_bug.cgi?id=607742
Andoni Morales Alastruey [Sat, 4 Jun 2011 23:49:38 +0000 (01:49 +0200)]
libgstvideo: Add force key unit events
Tim-Philipp Müller [Mon, 28 Nov 2011 21:25:11 +0000 (21:25 +0000)]
Merge remote-tracking branch 'origin/master' into 0.11
Conflicts:
gst-libs/gst/fft/gstffts16.h
Tim-Philipp Müller [Mon, 28 Nov 2011 21:20:38 +0000 (21:20 +0000)]
Tim-Philipp Müller [Mon, 28 Nov 2011 21:20:10 +0000 (21:20 +0000)]
Philippe Normand [Mon, 28 Nov 2011 19:11:09 +0000 (20:11 +0100)]
fft: Bracket public headers
This is especially needed if the gstfftw library is used from C++
code.
Fixes #665074
Philippe Normand [Mon, 28 Nov 2011 19:10:18 +0000 (20:10 +0100)]
typefindfunctions: Fix compiler warning
Alexey Fisher [Mon, 28 Nov 2011 18:03:50 +0000 (19:03 +0100)]
typefind: fix build error
fix build errors:
gsttypefindfunctions.c:248:25: error: 'low' may be used uninitialized in this function [-Werror=uninitialized]
gsttypefindfunctions.c:239:24: error: 'high' may be used uninitialized in this function [-Werror=uninitialized]
Signed-off-by: Alexey Fisher <bug-track@fisher-privat.net>
Sebastian Dröge [Mon, 28 Nov 2011 18:06:57 +0000 (19:06 +0100)]
playsinkconvertbin: Fix stupid mistake in last commit
Sebastian Dröge [Mon, 28 Nov 2011 18:03:54 +0000 (19:03 +0100)]
playsinkconvertbin: Only return the converter caps if we actually have raw caps
Fixes bug #664818 (hopefully).
Wim Taymans [Mon, 28 Nov 2011 17:24:03 +0000 (18:24 +0100)]
Update for indexable change
Kipp Cannon [Mon, 28 Nov 2011 16:59:32 +0000 (17:59 +0100)]
audioresample: Don't emit DISCONT buffers if no discontinuity happened
audioresample is derived from GstBaseTransform, and one of
GstBaseTransform's traits is that if the derived element does not
produce an output buffer from some input buffer then the first output
buffer after that gets flaged as a discontinuity, whether or not the
buffer actually is discontinuous from the output buffer that preceded
it. When downsampling, the audioresample element requires more than
one input sample for each output sample, and if the ratio of input to
output sample rates is high enough and the input buffers short enough
it can come to pass that the resampler does not receive enough samples
on its input to produce any output. Currently the resampler returns
GST_BASE_TRANSFORM_FLOW_DROPPED from the transform() method in this case,
causing the next buffer to be flagged as a discontinuity. If subsequent
elements in the pipeline reset themselves on disconts, this can cause
clicks and other undesireable behaviour.
Fixes bug #665004.
Wim Taymans [Mon, 28 Nov 2011 16:51:41 +0000 (17:51 +0100)]
audio: update for clock provider API change
Vincent Penquerc'h [Fri, 30 Sep 2011 19:00:50 +0000 (20:00 +0100)]
typefind: typefind UTF-16 and UTF-32
This avoids the MP3 typefinder from getting the highest score
every time it thinks there's something it might possibly be
able to parse.
https://bugzilla.gnome.org/show_bug.cgi?id=607619
Wim Taymans [Mon, 28 Nov 2011 15:55:32 +0000 (16:55 +0100)]
fix for element flag cleanups
Vincent Penquerc'h [Mon, 28 Nov 2011 13:27:29 +0000 (13:27 +0000)]
Revert "theoradec: move the QoS logic to libgstvideo"
This reverts commit
149a4ce390a78e21309b210f7daba9db5d42afe6.
*grumble* I managed to merge something I did not mean to.
Vincent Penquerc'h [Mon, 28 Nov 2011 13:26:53 +0000 (13:26 +0000)]
Revert "libgstvideo: add a new API to handle QoS events and dropping logic"
This reverts commit
eb03323fb683e06ed8e7f557037f13252f150c25.
*grumble* I managed to merge something I did not mean to.
Vincent Penquerc'h [Mon, 28 Nov 2011 12:51:22 +0000 (12:51 +0000)]
various: fix pad template leaks
https://bugzilla.gnome.org/show_bug.cgi?id=662664
Vincent Penquerc'h [Wed, 7 Sep 2011 15:04:14 +0000 (16:04 +0100)]
theoradec: move the QoS logic to libgstvideo
https://bugzilla.gnome.org/show_bug.cgi?id=658241
Vincent Penquerc'h [Mon, 5 Sep 2011 12:56:05 +0000 (13:56 +0100)]
libgstvideo: add a new API to handle QoS events and dropping logic
https://bugzilla.gnome.org/show_bug.cgi?id=658241
Mark Nauwelaerts [Mon, 28 Nov 2011 10:30:18 +0000 (11:30 +0100)]
audioencoder: elaborate some documentation
Mark Nauwelaerts [Mon, 28 Nov 2011 10:28:06 +0000 (11:28 +0100)]
audiodecoder: add some documentation
Mark Nauwelaerts [Mon, 21 Nov 2011 13:26:54 +0000 (14:26 +0100)]
audiodecoder: really discard NULL decoded frame altogether
... including any timestamp, rather than having that one influence base_ts.
Stefan Sauer [Mon, 28 Nov 2011 09:55:39 +0000 (10:55 +0100)]
alsasrc: style fix
Use timestamp==0 instead of mixing it with !timestamp style checks.
Stefan Sauer [Mon, 28 Nov 2011 08:12:37 +0000 (09:12 +0100)]
alsasrc: handle the case where the drivers don't supply timestamps
If highres-timestamp is 0, try lowres and if that fails fallback to system clock
timestamps.
Matej Knopp [Sun, 27 Nov 2011 19:14:08 +0000 (20:14 +0100)]
uridecodebin: fix debug message printf format compiler warning
https://bugzilla.gnome.org/show_bug.cgi?id=662607
Tim-Philipp Müller [Sat, 26 Nov 2011 12:12:59 +0000 (12:12 +0000)]
Merge remote-tracking branch 'origin/master' into 0.11
Conflicts:
ext/vorbis/gstvorbisenc.c
gst/playback/gstdecodebin2.c
gst/playback/gstplaysinkconvertbin.c
gst/videorate/gstvideorate.c
Vincent Penquerc'h [Tue, 1 Nov 2011 15:21:54 +0000 (15:21 +0000)]
oggmux: set collectpads2 not to wait on sparse streams
https://bugzilla.gnome.org/show_bug.cgi?id=663174
Josep Torra [Fri, 25 Nov 2011 14:35:39 +0000 (15:35 +0100)]
playsinkconvertbin: make identiy silent
Tim-Philipp Müller [Fri, 25 Nov 2011 13:11:54 +0000 (13:11 +0000)]
audio: remove unstable API guards from the audio decoder and encoder base classes
Tim-Philipp Müller [Fri, 25 Nov 2011 12:58:22 +0000 (12:58 +0000)]
docs: mention explicitly that playbin2 signals are emitted from a streaming thread
Sebastian Dröge [Fri, 25 Nov 2011 10:11:12 +0000 (11:11 +0100)]
decodebin2: Set the multiqueue limits to the playing limits after overrun too
We don't expect any new pads anymore and prerolling is finished now.
Sebastian Dröge [Fri, 25 Nov 2011 10:08:58 +0000 (11:08 +0100)]
decodebin2: Cache the upstream seekability for demuxer decode chains and use it for the non-preroll multiqueue limits
After preroll the multiqueue limits are still set to the preroll
limits if use-buffering is set to TRUE. In that case we only want
time limits on the multiqueue if upstream is seekable.
Vincent Penquerc'h [Tue, 8 Nov 2011 13:55:58 +0000 (13:55 +0000)]
decodebin2: fix prerolling for low bitrate streams from hlsdemux
Such streams were detected as seekable, as the query on the typefind
element was testing the m3u8 file listing the actual streams, and
not going through the demuxer(s).
We now check for seekability for each multiqueue following a demuxer,
so the query will flow through the elements which might prevent seeking.
https://bugzilla.gnome.org/show_bug.cgi?id=647769
Edward Hervey [Fri, 25 Nov 2011 09:31:38 +0000 (10:31 +0100)]
gst-libs: Add --warn-all to introspection scanner
And let's get fixing those docs :)
René Stadler [Thu, 24 Nov 2011 20:39:14 +0000 (21:39 +0100)]
tests: update for gstcheck API change
Vincent Penquerc'h [Mon, 24 Oct 2011 10:46:05 +0000 (11:46 +0100)]
oggdemux: minor cleanup
Vincent Penquerc'h [Tue, 27 Sep 2011 15:45:26 +0000 (16:45 +0100)]
libgstriff: add a couple tags that need skipping
Found in a sample in the wild, appears to be ID3 tag.
https://bugzilla.gnome.org/show_bug.cgi?id=660249
Sebastian Dröge [Thu, 24 Nov 2011 13:41:13 +0000 (14:41 +0100)]
videorate: Rename ARG_ enums to PROP_
This is more consistent with other code and these are
properties anyway, not arguments
Sebastian Dröge [Thu, 24 Nov 2011 13:29:49 +0000 (14:29 +0100)]
videorate: Add property to force an output framerate
API: GstVideoRate:force-fps
Changing the framerate during playback is not possible
with a capsfilter downstream if upstream is not using
gst_pad_alloc_buffer(). In that case there's no way in
0.10 to signal to videorate that the preferred framerate
has changed.
This new property will force the output framerate to
a specific value and can be changed during playback.
Sebastian Dröge [Thu, 24 Nov 2011 11:38:54 +0000 (12:38 +0100)]
playsinkconvertbin: Reconfigure if we switch from raw to incompatible raw caps
We might need to add converters and worked in passthrough mode before.
Sebastian Dröge [Thu, 24 Nov 2011 11:37:58 +0000 (12:37 +0100)]
playsinkconvertbin: Override acceptcaps function for the two ghostpads
The ghostpad acceptcaps functions are not valid in this case because
we don't only accept the caps accepted by the target but could also
insert converters. Fixes bug #663892.
Sebastian Dröge [Thu, 24 Nov 2011 10:34:12 +0000 (11:34 +0100)]
playsinkaudioconvert: use-volume and use-converters are no construct-only properties anymore
Fixes bug #663893.
Vincent Penquerc'h [Thu, 24 Nov 2011 10:09:20 +0000 (11:09 +0100)]
videoconvert: fix width/height mismatches
https://bugzilla.gnome.org/show_bug.cgi?id=663238
Mark Nauwelaerts [Thu, 24 Nov 2011 10:04:10 +0000 (11:04 +0100)]
videoconvert: fix odd width and height handling in some fastpath cases
Vincent Penquerc'h [Sat, 22 Oct 2011 19:29:26 +0000 (20:29 +0100)]
oggdemux: skip the second bisection when possible
If we already saw the keyframes that we need to find,
we do not need to bisect to find them.
This will always be the case for streams with audio only,
where each frame acts as a keyframe, but will occasionally
also happen for streams with video.
https://bugzilla.gnome.org/show_bug.cgi?id=662475
Vincent Penquerc'h [Sat, 22 Oct 2011 19:20:38 +0000 (20:20 +0100)]
oggdemux: improve push time seeking
Various tweaks to improve convergence, in particular for
the worst case, which is now cut in about half.
https://bugzilla.gnome.org/show_bug.cgi?id=662475
Vincent Penquerc'h [Fri, 21 Oct 2011 18:38:19 +0000 (19:38 +0100)]
oggdemux: gather some more stats about bisection
https://bugzilla.gnome.org/show_bug.cgi?id=662475
Tim-Philipp Müller [Thu, 24 Nov 2011 01:30:50 +0000 (01:30 +0000)]
uridecodebin: double-check property type before blindly setting/proxying values
Tim-Philipp Müller [Thu, 24 Nov 2011 01:18:38 +0000 (01:18 +0000)]
playbin2, uridecodebin: make connection-speed property a guint64
Tim-Philipp Müller [Wed, 23 Nov 2011 23:16:51 +0000 (23:16 +0000)]
docs: update sgml for renames
Vincent Penquerc'h [Wed, 23 Nov 2011 16:09:13 +0000 (16:09 +0000)]
vorbisenc: do not accept 256 channels, 255 is the max vorbis supports
Wim Taymans [Wed, 23 Nov 2011 10:10:31 +0000 (11:10 +0100)]
ogg: fix compilation
Wim Taymans [Wed, 23 Nov 2011 09:50:53 +0000 (10:50 +0100)]
Merge branch 'master' into 0.11
Conflicts:
ext/ogg/gstoggmux.c
Vincent Penquerc'h [Tue, 22 Nov 2011 13:29:10 +0000 (13:29 +0000)]
oggstream: extract opus comments if available
Vincent Penquerc'h [Tue, 22 Nov 2011 13:15:33 +0000 (13:15 +0000)]
oggstream: recognize opus headers from data, not packet count
Opus streams outside of Ogg may not have headers, and oggstream
may be used by oggmux to mux an Opus stream which does not come
from Ogg - thus without headers.
Determining headerness by packet count would strip the first two
packets from such an Opus stream, leading to a very small amount
of audio being clipped at the beginning of the stream.
Vincent Penquerc'h [Tue, 22 Nov 2011 13:01:35 +0000 (13:01 +0000)]
oggdemux: add some more debug info when determining start time
Vincent Penquerc'h [Tue, 22 Nov 2011 12:55:56 +0000 (12:55 +0000)]
oggstream: fix opus duration calculation
Vincent Penquerc'h [Tue, 22 Nov 2011 12:00:58 +0000 (12:00 +0000)]
oggstream: early out on headers when determining packet duration
Vincent Penquerc'h [Mon, 21 Nov 2011 17:03:21 +0000 (17:03 +0000)]
oggstream: account for opus pre-skip in granpos/time mapping
René Stadler [Tue, 22 Nov 2011 09:04:12 +0000 (10:04 +0100)]
playsinkconvertbin: avoid removing children from bin twice
GstBin base class removes children in dispose, so we need to do the same.
Tim-Philipp Müller [Tue, 22 Nov 2011 01:21:04 +0000 (01:21 +0000)]
Fix some more printf format warnings
Matej Knopp [Mon, 21 Nov 2011 18:28:01 +0000 (19:28 +0100)]
Fix printf format compiler warnings for OSX / 64bit
https://bugzilla.gnome.org/show_bug.cgi?id=662607
Wim Taymans [Mon, 21 Nov 2011 12:35:34 +0000 (13:35 +0100)]
update for activation changes
Edward Hervey [Mon, 21 Nov 2011 12:04:42 +0000 (13:04 +0100)]
ximagebufferpool: Use the default ::free_buffer() implementation
Which does exactly the same thing