Commit graph

3081 commits

Author SHA1 Message Date
Wim Taymans
59113af604 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
2011-12-01 16:53:11 +01:00
Wim Taymans
892716e076 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.
2011-12-01 15:47:16 +01:00
Wim Taymans
47cbb230e9 audio: move audio interfaces
Move the audio related interfaces to the audio library.
2011-11-30 07:57:02 +01:00
Stefan Sauer
089c760993 adder: fill the audio-info that we use and not some random other one 2011-11-29 14:47:37 +01:00
Stefan Sauer
1cea9c851c adder: unbreak adder
There was one line too much removed when porting.
2011-11-29 14:22:19 +01:00
Stefan Sauer
9debd13665 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.
2011-11-29 10:42:16 +01:00
Tim-Philipp Müller
0d87fd7146 Merge remote-tracking branch 'origin/master' into 0.11
Conflicts:
	gst-libs/gst/fft/gstffts16.h
2011-11-28 21:25:11 +00:00
Philippe Normand
ed5279e3c5 typefindfunctions: Fix compiler warning 2011-11-28 20:10:49 +01:00
Alexey Fisher
36434c20eb 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>
2011-11-28 18:10:55 +00:00
Sebastian Dröge
f179213aa0 playsinkconvertbin: Fix stupid mistake in last commit 2011-11-28 19:06:57 +01:00
Sebastian Dröge
c1b1e2b44e playsinkconvertbin: Only return the converter caps if we actually have raw caps
Fixes bug #664818 (hopefully).
2011-11-28 19:03:54 +01:00
Kipp Cannon
4c52f4e625 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.
2011-11-28 18:03:22 +01:00
Vincent Penquerc'h
e67aa28de9 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
2011-11-28 15:58:29 +00:00
Wim Taymans
b4cdf008dd fix for element flag cleanups 2011-11-28 16:55:32 +01:00
Vincent Penquerc'h
96374054ac various: fix pad template leaks
https://bugzilla.gnome.org/show_bug.cgi?id=662664
2011-11-28 13:09:02 +00:00
Matej Knopp
2c55cc7bcb uridecodebin: fix debug message printf format compiler warning
https://bugzilla.gnome.org/show_bug.cgi?id=662607
2011-11-27 22:43:20 +00:00
Tim-Philipp Müller
32b14c6ed3 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
2011-11-26 12:12:59 +00:00
Josep Torra
05ecdc1246 playsinkconvertbin: make identiy silent 2011-11-25 15:35:39 +01:00
Tim-Philipp Müller
2dc7c2f676 docs: mention explicitly that playbin2 signals are emitted from a streaming thread 2011-11-25 13:01:47 +00:00
Sebastian Dröge
a5535e76e0 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.
2011-11-25 11:12:10 +01:00
Sebastian Dröge
494b2cb1a7 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.
2011-11-25 11:12:10 +01:00
Vincent Penquerc'h
59f5d980f6 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
2011-11-25 11:12:10 +01:00
Sebastian Dröge
c6cffcfa19 videorate: Rename ARG_ enums to PROP_
This is more consistent with other code and these are
properties anyway, not arguments
2011-11-24 14:41:56 +01:00
Sebastian Dröge
ec062ef3f2 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.
2011-11-24 14:40:38 +01:00
Sebastian Dröge
683735a01e playsinkconvertbin: Reconfigure if we switch from raw to incompatible raw caps
We might need to add converters and worked in passthrough mode before.
2011-11-24 12:38:54 +01:00
Sebastian Dröge
113546b777 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.
2011-11-24 12:37:58 +01:00
Sebastian Dröge
8f165b6206 playsinkaudioconvert: use-volume and use-converters are no construct-only properties anymore
Fixes bug #663893.
2011-11-24 11:34:12 +01:00
Vincent Penquerc'h
d69e4e7a2c videoconvert: fix width/height mismatches
https://bugzilla.gnome.org/show_bug.cgi?id=663238
2011-11-24 11:09:20 +01:00
Mark Nauwelaerts
2c0b294005 videoconvert: fix odd width and height handling in some fastpath cases 2011-11-24 11:04:10 +01:00
Tim-Philipp Müller
95138db216 uridecodebin: double-check property type before blindly setting/proxying values 2011-11-24 01:30:50 +00:00
Tim-Philipp Müller
16f6d13980 playbin2, uridecodebin: make connection-speed property a guint64 2011-11-24 01:18:38 +00:00
Wim Taymans
7b45a7367b Merge branch 'master' into 0.11
Conflicts:
	ext/ogg/gstoggmux.c
2011-11-23 10:50:53 +01:00
René Stadler
da69993a49 playsinkconvertbin: avoid removing children from bin twice
GstBin base class removes children in dispose, so we need to do the same.
2011-11-22 10:05:33 +01:00
Wim Taymans
d0bd5f04c0 update for new scheduling query 2011-11-18 17:58:58 +01:00
Wim Taymans
e302833e65 add parent to pad functions 2011-11-17 12:48:25 +01:00
Stefan Sauer
67364dff4c collectpads: port API changes 2011-11-17 08:43:23 +01:00
Wim Taymans
9e8e01502e add parent to internal links 2011-11-16 17:50:03 +01:00
Wim Taymans
2202511e77 add parent to query function 2011-11-16 17:25:17 +01:00
Wim Taymans
28157e6f21 _query_peer_*() -> _peer_query_*() 2011-11-15 18:04:17 +01:00
Wim Taymans
026ec68f75 _peer_get_caps() -> _peer_query_caps() 2011-11-15 18:04:17 +01:00
Wim Taymans
7402d3a3d2 update for _get_caps() -> _query_caps() 2011-11-15 18:04:17 +01:00
Wim Taymans
ab9ffa93f5 change getcaps to query
Add sink and src event functions in rtpbasepayload
Add query vmethod to rtpbasepayload.
2011-11-15 18:04:16 +01:00
René Stadler
5f3c8eb680 audioconvert, videoconvert: fix caps leak in transform_caps 2011-11-12 01:38:37 +01:00
René Stadler
7651fa27dc audioconvert: fix leak of channel matrix
gst_channel_mix_unset_matrix relies on the channel count to free the matrix
array, so run it before resetting it to zero with gst_audio_info_init.
2011-11-11 20:19:53 +01:00
René Stadler
94ce75319a videotestsrc: fix crash with ARGB64
This got broken when it was ported.
2011-11-11 19:57:25 +01:00
Wim Taymans
2886955d18 Merge branch 'master' into 0.11 2011-11-11 19:36:23 +01:00
Tim-Philipp Müller
7b5e1666a4 playsinkconvertbin: fix visualisations again
Make caps writable before merging other caps into them.
2011-11-11 13:32:23 +00:00
Wim Taymans
6781587784 make the identity silent 2011-11-11 13:12:27 +01:00
Wim Taymans
ad8f694ec6 remove bogus files
They got somehow commited in 7012e88090
2011-11-11 10:39:52 +01:00
Stefan Sauer
e32ccd8e4e controller: port controller api changes 2011-11-10 23:02:35 +02:00