Vincent Penquerc'h
bc9b231905
subtitleoverlay: fix probing of raw video caps
...
They're now video/x-raw, not video/x-raw-* anymore.
https://bugzilla.gnome.org/show_bug.cgi?id=668682
2012-02-14 00:06:33 +00:00
Vincent Penquerc'h
66e05c04b8
subtitleoverlay: add a couple drive by const
...
https://bugzilla.gnome.org/show_bug.cgi?id=668682
2012-02-14 00:06:17 +00:00
Wim Taymans
0dd59060d9
subtitleoverlay: fix merge error
...
Fix merge error from commit fb6d09055a
2012-02-09 15:51:10 +01:00
Wim Taymans
b3eb4e5bd4
playsink: call the right default query handler
...
We need to call the default query handler of the proxy pad because only that one
will forward the query to the target pad in case of the allocation query.
2012-02-02 12:14:15 +01:00
Tim-Philipp Müller
4738e02bbf
playback: suppress GValueArray deprecation warnings for the time being
...
until this gets sorted out and we have a viable alternative.
https://bugzilla.gnome.org/show_bug.cgi?id=667228
2012-02-01 15:50:52 +00:00
Wim Taymans
15b7375c44
subtitle: fix merge
2012-01-25 12:33:03 +01:00
Sebastian Dröge
130a8335a0
Merge branch 'master' into 0.11
...
Conflicts:
gst/playback/gstdecodebin2.c
2012-01-25 12:29:11 +01:00
Sebastian Dröge
711e6a12ef
Revert "decodebin2: Prune old groups before switching to the new one"
...
This reverts commit e2a038acee
.
This wasn't entirely correct yet and needs some changes here
and there.
2012-01-25 12:25:05 +01:00
Sebastian Dröge
7e5aeba02f
decodebin2: Fix merge error
2012-01-25 12:04:24 +01:00
Sebastian Dröge
68c0790817
Merge branch 'master' into 0.11
...
Conflicts:
gst-libs/gst/interfaces/propertyprobe.c
sys/xvimage/xvimagesink.c
2012-01-25 11:50:54 +01:00
Vincent Penquerc'h
c433ef9b70
playbin2: do not try to deactivate an inactive group
...
A group may have failed to activate due to an error (for instance,
having set the URI to a non existent location in about-to-finish).
https://bugzilla.gnome.org/show_bug.cgi?id=666395
2012-01-23 11:56:50 +00:00
Anssi Hannula
dd8f9aca92
subtitleoverlay: fix state change stall on PAUSED->READY->PAUSED
...
After a PAUSED->READY change the sink pads are currently not set to
blocking state. When the element is set back to PAUSED, the change will
be done asynchronously, but as the _pad_blocked_cb() callback is now not
called, the state change never completes.
Fix that by setting the sink pads to blocking state on a PAUSED->READY
change, which ensures that the _pad_blocked_cb() is called when needed
on any future READY->PAUSED change. The sink pads are already put to
blocking state on NULL->READY change, so this behavior is consistent.
Fixes bug #668097 .
2012-01-20 17:29:06 +00:00
Mark Nauwelaerts
71f70c98ef
streamsynchronizer: avoid unlikely NULL dereference
2012-01-19 16:43:40 +01:00
Mark Nauwelaerts
be34d4c78e
playsink: verify linking to overlay element
2012-01-19 16:43:32 +01:00
Mark Nauwelaerts
e5f6675ea3
playsink: avoid finding sink in NULL bin in corner case
2012-01-19 16:43:30 +01:00
Wim Taymans
3d42f0f6ed
port to new glib thread API
2012-01-19 11:36:17 +01:00
Youness Alaoui
e2a038acee
decodebin2: Prune old groups before switching to the new one
...
In order to allow for proper functionality when a decoder only supports
one instance at a time (dsp), we must block the demuxer pads when they
get created if they are not part of the active group, preventing buffers
from being sent to the decoder (and initializing it through setcaps),
then after we switch to a new group, we unblock the demuxer pads for
the active groups. In the callback for the unblock, we prune the old
groups, making sure the previous decoder instance is destroyed before
we push a buffer to the new instance.
2012-01-19 09:04:52 +01:00
Mark Nauwelaerts
345b6a58f4
playsinkconvertbin: release extra ref on converter elements
2012-01-12 13:57:18 +01:00
Sebastian Dröge
a4104c54eb
streamsynchronizer: Don't unref the parent in the event function
2012-01-10 15:59:27 +01:00
Sebastian Dröge
dc8984d76c
Merge branch 'master' into 0.11
...
Conflicts:
gst-libs/gst/app/gstappsrc.c
gst-libs/gst/audio/multichannel.h
gst-libs/gst/video/videooverlay.c
gst/playback/gstplaysink.c
gst/playback/gststreamsynchronizer.c
tests/check/Makefile.am
win32/common/libgstvideo.def
2012-01-10 13:15:12 +01:00
Mark Nauwelaerts
e8fd305623
playback: document DEINTERLACE flag
2012-01-09 12:34:07 +01:00
Edward Hervey
f5f781e8fb
Revert "decodebin2: Try harder to get initial topology caps"
...
This reverts commit 6b3e3544d4
.
I really shouldn't put WIP commits in my main branch ...
2012-01-06 15:40:06 +01:00
Edward Hervey
6b3e3544d4
decodebin2: Try harder to get initial topology caps
...
Since caps are no longer 'shared' between two pads (but forwarded from
source pad to sink pad) we end up with the first chain pad not having
specified caps (i.e. typefind:src).
This solves the issues by getting the pad's peer caps.
It is not optimal since it will (for most demuxers) return the pad
template caps, which might contain non-fixed caps (ex : with
qtdemux "video/quicktime; video/mj2; audio/x-m4a; application/x-3gp")
https://bugzilla.gnome.org/show_bug.cgi?id=667337
2012-01-06 14:40:25 +01:00
Havard Graff
95be60de15
Fix various unlikely, but still potential memoryleaks in error code paths
...
https://bugzilla.gnome.org/show_bug.cgi?id=667311
2012-01-05 13:27:23 +00:00
Mark Nauwelaerts
3e0d35aec4
streamsynchronizer: force fallback buffer_alloc when other pad not available
...
... to avoid unnecessary spurious errors (upon e.g. shutdown).
If a real error is applicable in this unusual circumstance (missing other pad),
other (STREAM_LOCK protected) call paths can take care of that.
2012-01-03 11:07:17 +01:00
Mark Nauwelaerts
af28016d0a
streamsynchronizer: avoid crashing when operating on released pad
2012-01-03 11:07:15 +01:00
Tim-Philipp Müller
26e612aeda
playback, mixerutils: gst_registry_get_default() -> gst_registry_get()
2012-01-02 14:32:11 +00:00
Edward Hervey
f562a29284
Merge remote-tracking branch 'origin/master' into 0.11
...
Conflicts:
ext/theora/gsttheoraenc.c
gst-libs/gst/tag/gstexiftag.c
gst/adder/gstadder.c
gst/adder/gstadder.h
gst/playback/gstdecodebin2.c
gst/playback/gstsubtitleoverlay.c
tests/check/libs/tag.c
2011-12-30 13:21:35 +01:00
Wim Taymans
db4d5af9b6
subtitle: don't use GST_CAPS_NONE macro
...
This macro returns a singleton.
2011-12-20 12:53:16 +01:00
Mark Nauwelaerts
60d5d08fbb
decodebin2: tweak chain topology description
...
... to also properly indicate chain's endpad if no elements are in the
chain (due to the endpad being a raw demuxer pad, or one setup without
decoders since uridecodebin or higher up decided not to need those).
2011-12-14 17:53:38 +01:00
Sebastian Dröge
cd11d68716
subtitleoverlay: Refactor code to check if a property exists on an element
2011-12-13 13:31:03 +01:00
Sebastian Dröge
87a4cbd0e3
subtitleoverlay: Refactor autoplugging code and select overlay element by rank too
...
Previously we always used textoverlay for rendering the output of
a parser, now the same code as for the renderers is used and the
element with the highest rank is used.
Fixes bug #663822 .
2011-12-13 13:31:03 +01:00
Tim-Philipp Müller
fb6d09055a
Merge remote-tracking branch 'origin/master' into 0.11
...
Conflicts:
ext/alsa/gstalsadeviceprobe.c
ext/alsa/gstalsamixer.c
ext/pango/gsttextoverlay.c
ext/pango/gsttextoverlay.h
gst-libs/gst/audio/gstaudiobasesink.c
gst-libs/gst/audio/gstaudioringbuffer.c
gst-libs/gst/audio/gstaudiosrc.c
gst-libs/gst/video/Makefile.am
gst-libs/gst/video/video.c
gst/encoding/gststreamcombiner.c
gst/encoding/gststreamsplitter.c
gst/playback/gstplaybasebin.c
gst/playback/gststreamsynchronizer.c
gst/playback/gstsubtitleoverlay.c
gst/playback/gsturidecodebin.c
sys/xvimage/xvimagesink.c
tests/examples/Makefile.am
win32/common/libgstvideo.def
Video overlay composition disabled for now, needs
porting to buffer meta.
2011-12-08 01:19:03 +00:00
Thibault Saunier
8728023f00
subtitleoverlay: add suport for hardware accelerated videos
...
Don't plug converters for non-raw video.
2011-12-06 12:44:24 +00:00
Tim-Philipp Müller
5440ae3c18
Suppress deprecation warnings in selected files, for g_static_rec_mutex_* mostly
...
GStaticRecMutex is part of our API/ABI, not much we can do here
in 0.10 for most of these.
2011-12-04 20:50:25 +00:00
Tim-Philipp Müller
0d98aa25b8
Work around deprecated thread API in glib master
...
Add private replacements for deprecated functions such as
g_mutex_new(), g_mutex_free(), g_cond_new() etc., mostly
to avoid the deprecation warnings. We'll change these
over to the new API once we depend on glib >= 2.32.
Replace g_thread_create() with g_thread_try_new().
2011-12-04 17:16:30 +00:00
Tim-Philipp Müller
177525f89f
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
2011-12-02 11:10:17 +00:00
Piotr Fusik
14644457b0
various: typo fixes
...
Fix typos in code and docs. Fixes. #658984
2011-12-02 12:03:27 +01:00
Tim-Philipp Müller
ec0d3566bf
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
2011-12-02 00:07:39 +00:00
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
Tim-Philipp Müller
1bf8fa1e5f
playbin2: tone down debug message about file URIs with spaces
...
Complain a bit less loudly about URIs that have not been
escaped properly.
2011-11-30 23:58:19 +00:00
Sebastian Dröge
21b252727d
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.
2011-11-30 14:25:11 +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
Sebastian Dröge
e7853d3a3d
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 .
2011-11-29 14:15:45 +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
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
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
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
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
e302833e65
add parent to pad functions
2011-11-17 12:48:25 +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
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
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
f2ab0b8f19
upates for new ACCEPT_CAPS query
2011-11-09 17:37:31 +01:00
Wim Taymans
36dce0ffda
remove streamselector
...
It was only used by playbin, which is gone now
2011-11-09 11:06:10 +01:00
Wim Taymans
8c6a2340e7
streamselector: GstSelectorPad -> GstStreamSelectorPad
...
Rename object to avoid conflicts with an object of the same name in core.
2011-11-09 10:53:38 +01:00
Wim Taymans
21bee358b2
streamselector: cleanups
2011-11-09 10:37:02 +01:00
Wim Taymans
308f6301a8
update for pad probe api changes
2011-11-08 11:08:21 +01:00
Wim Taymans
616e9b706e
fix for new pad probe types
...
Restore the previous behaviour by only blocking downstream items and not
upstream events.
2011-11-07 17:10:48 +01:00
Wim Taymans
ef0247ae42
convertbin: port to 0.11 again
2011-11-07 12:43:52 +01:00
Wim Taymans
7ac25e9b26
Merge branch 'master' into 0.11
...
Conflicts:
common
configure.ac
gst-libs/gst/audio/gstbaseaudiosink.c
gst/playback/gstdecodebin2.c
gst/playback/gstplaysinkaudioconvert.c
gst/playback/gstplaysinkaudioconvert.h
gst/playback/gstplaysinkvideoconvert.c
gst/playback/gstplaysinkvideoconvert.h
2011-11-07 12:23:15 +01:00
Wim Taymans
b56ac475d3
playback: name conversion elements differently
2011-11-04 17:41:01 +01:00
Wim Taymans
7d9ccab8c6
uridecodebin: fix template name
2011-11-04 13:00:36 +01:00
Wim Taymans
cf8481b990
fix pad template names for request pads
2011-11-04 10:49:48 +01:00
Sebastian Dröge
7875ee11a5
subtitleoverlay: Use gst_caps_merge() instead of gst_caps_union()
...
This keeps the caps order and is more efficient.
2011-11-04 10:38:39 +01:00
Sebastian Dröge
6e9a302eca
playsinkconvertbin: Use gst_caps_merge() instead of gst_caps_union()
...
This keeps the caps order and is more efficient.
2011-11-04 10:38:38 +01:00
Wim Taymans
57fe2addef
update for request pads change.
2011-11-03 17:58:57 +01:00
Mart Raudsepp
5c58bcfd15
decodebin2: Post all source pads in stream-topology messages as "element-srcpad" values
...
This allows us to easily get ahold of all pads on a stream-topology message, including
pre-decoder ones, while "pad" only gives us access to the raw pads (as used by discoverer).
2011-11-03 14:41:08 +01:00
Mart Raudsepp
cee8710817
decodebin2: Use existing "caps" quark for one of the structure sets
2011-11-03 14:40:51 +01:00
Sebastian Dröge
b29a3d3cff
playsinkconvertbin: Don't add identity multiple times
2011-11-03 10:07:27 +01:00
Vincent Penquerc'h
7eb8a9aaf6
playsink: send flush start/stop event when we switch elements
...
https://bugzilla.gnome.org/show_bug.cgi?id=661262
2011-11-03 10:05:44 +01:00
Vincent Penquerc'h
0cac680fac
playsink: re-add identity where appropriate
...
https://bugzilla.gnome.org/show_bug.cgi?id=661262
2011-11-03 10:05:26 +01:00
Vincent Penquerc'h
c3e94d1c08
playsink: lock the new {set,get}_property functions
...
https://bugzilla.gnome.org/show_bug.cgi?id=661262
2011-11-03 10:04:07 +01:00
Thiago Santos
0a07701164
playsinkconvertbin: Be more consistent with ghostpad targets
...
Set up targets on READY->PAUSED state change to passthrough by
default. This prevents the targets from being unset on the
first run, while the 'raw' variable would mean that some
target is set.
2011-11-03 10:03:07 +01:00
Thiago Santos
f9ea3fdda8
playsinkconvertbin: No need to remove the identity
...
The identity element should be handled by the GstBin's cleanup,
removing it on the remove_elements function might remove it
too soon, as this function can be called directly from playsink
2011-11-03 10:02:58 +01:00
Thiago Santos
34f72da9cc
playsinkconvertbin: Adding some debug messages
...
Adds a couple debug messages and some g_assert to make debugging
easier
2011-11-03 10:02:49 +01:00
Thiago Santos
80971a3b33
playsink-videoconvert: Fix warning on build
...
Remove unused variable
2011-11-03 10:02:39 +01:00
Vincent Penquerc'h
ae3ba53391
playsink: handle after-the-fact changes in converters/volume booleans
...
The playsink was nastily poking a boolean in the structure.
Make those booleans properties, so we are told when they change,
and rebuild the conversion bin when they do.
Some cleanup to go with it too.
https://bugzilla.gnome.org/show_bug.cgi?id=661262
2011-11-03 10:02:31 +01:00
Vincent Penquerc'h
c08a23169d
playsink: handle NULL cached caps in getcaps
...
https://bugzilla.gnome.org/show_bug.cgi?id=661262
2011-11-03 10:02:01 +01:00
Vincent Penquerc'h
3939457b00
playsink: consider both passthrough and converter caps in getcaps
...
Since we can switch between both modes.
https://bugzilla.gnome.org/show_bug.cgi?id=661262
2011-11-03 10:01:52 +01:00
Vincent Penquerc'h
b34dac9a87
playsink: cache inner converter bin caps
...
https://bugzilla.gnome.org/show_bug.cgi?id=661262
2011-11-03 09:58:03 +01:00