Commit graph

458 commits

Author SHA1 Message Date
Wim Taymans
db785a1f52 gst/playback/gstplaybin2.c: Fix buffer-duration property.
Original commit message from CVS:
* gst/playback/gstplaybin2.c: (activate_group):
Fix buffer-duration property.
2008-11-25 11:00:55 +00:00
Michael Smith
aec03a4535 gst/playback/gstplaybin2.c: Add notification of current stream. Add ability to configure buffer sizes.
Original commit message from CVS:
* gst/playback/gstplaybin2.c:
Add notification of current stream. Add ability to configure buffer
sizes.
* gst/playback/gsturidecodebin.c:
Add ability to configure buffer sizes for streaming mode.
Bug #561734.
2008-11-24 20:25:24 +00:00
Wim Taymans
096efe2fe9 gst/playback/gstplaysink.c: Don't post an error when we can't configure the volume but post a warning instead. Fixes ...
Original commit message from CVS:
* gst/playback/gstplaysink.c: (gen_audio_chain):
Don't post an error when we can't configure the volume but post a
warning instead. Fixes #561780.
2008-11-22 14:31:43 +00:00
Michael Smith
5830b42dc5 gst/playback/gstdecodebin2.c: Fix random fat-fingering making this not compile.
Original commit message from CVS:
* gst/playback/gstdecodebin2.c:
Fix random fat-fingering making this not compile.
2008-11-21 00:04:48 +00:00
Michael Smith
277e46886c gst/playback/gstdecodebin2.c: If the top-level type of the stream is plain text, don't try to decode it, matching beh...
Original commit message from CVS:
* gst/playback/gstdecodebin2.c:
If the top-level type of the stream is plain text, don't try to decode
it, matching behaviour of decodebin.
* gst/playback/gstplaysink.c:
If we fail to generate a text chain (e.g. due to missing optional
plugins), don't crash.
2008-11-20 22:11:38 +00:00
Alessandro Decina
f39b66e30d gst/playback/gstdecodebin.c: Add a "sink-caps" property to decodebin like it's done for decodebin2.
Original commit message from CVS:
* gst/playback/gstdecodebin.c:
Add a "sink-caps" property to decodebin like it's done for decodebin2.
Fixes #560380.
2008-11-18 18:08:42 +00:00
Wim Taymans
2773fe8f67 gst/playback/gstplaybin2.c: don't try to unlink the selector sinkpad when we don't have it yet. This can happen if an...
Original commit message from CVS:
* gst/playback/gstplaybin2.c: (deactivate_group):
don't try to unlink the selector sinkpad when we don't have it yet. This
can happen if an error occured before the group was complete.
2008-11-13 17:27:37 +00:00
Wim Taymans
79199d884f gst/playback/gstplaybin2.c: Catch state change errors and stop from the uridecodebin elements instead of trying to co...
Original commit message from CVS:
* gst/playback/gstplaybin2.c: (activate_group):
Catch state change errors and stop from the uridecodebin elements
instead of trying to continue in vain.
2008-11-11 15:52:14 +00:00
Wim Taymans
9045e0428e gst/playback/gstplaysink.c: Don't try to do crazy things when we only have a text pad without a video pad. Fixes #559...
Original commit message from CVS:
* gst/playback/gstplaysink.c: (gst_play_sink_reconfigure):
Don't try to do crazy things when we only have a text pad without a
video pad. Fixes #559478.
2008-11-10 10:33:26 +00:00
Stefan Kost
2cd4c7e2b9 Don't install static libs for plugins. Fixes #550851 for base.
Original commit message from CVS:
* ext/alsa/Makefile.am:
* ext/cdparanoia/Makefile.am:
* ext/gio/Makefile.am:
* ext/gnomevfs/Makefile.am:
* ext/libvisual/Makefile.am:
* ext/ogg/Makefile.am:
* ext/pango/Makefile.am:
* ext/theora/Makefile.am:
* ext/vorbis/Makefile.am:
* gst/adder/Makefile.am:
* gst/audioconvert/Makefile.am:
* gst/audiorate/Makefile.am:
* gst/audioresample/Makefile.am:
* gst/audiotestsrc/Makefile.am:
* gst/ffmpegcolorspace/Makefile.am:
* gst/gdp/Makefile.am:
* gst/playback/Makefile.am:
* gst/subparse/Makefile.am:
* gst/tcp/Makefile.am:
* gst/typefind/Makefile.am:
* gst/videorate/Makefile.am:
* gst/videoscale/Makefile.am:
* gst/videotestsrc/Makefile.am:
* gst/volume/Makefile.am:
* sys/v4l/Makefile.am:
* sys/ximage/Makefile.am:
* sys/xvimage/Makefile.am:
Don't install static libs for plugins. Fixes #550851 for base.
2008-10-16 15:07:00 +00:00
Wim Taymans
fbeec41546 gst/playback/gstdecodebin2.c: Remove bogus assert, the decodepad could have been created inside an already existing g...
Original commit message from CVS:
* gst/playback/gstdecodebin2.c: (gst_decode_pad_activate):
Remove bogus assert, the decodepad could have been created inside an
already existing group.
2008-10-08 14:44:04 +00:00
Andy Wingo
3329abde33 gst/playback/gstdecodebin2.c (expose_pad): Fix typo: unset target instead of setting it.
Original commit message from CVS:
2008-10-08  Andy Wingo  <wingo@pobox.com>

* gst/playback/gstdecodebin2.c (expose_pad): Fix typo: unset
target instead of setting it.
(gst_decode_pad_activate, gst_decode_pad_unblock): This is now the
API for a decode pad. The bugfix is that we set the group in
activate(), not when the pad was created because it might be NULL
then.
(gst_decode_group_control_source_pad, gst_decode_group_expose):
Update to use the API.
2008-10-08 14:00:07 +00:00
Andy Wingo
6c7e1c8a9b gst/playback/gstdecodebin2.c (struct _GstDecodePad): Change to be a subclass of GstGhostPad.
Original commit message from CVS:
2008-10-08  Andy Wingo  <wingo@pobox.com>

* gst/playback/gstdecodebin2.c (struct _GstDecodePad): Change to
be a subclass of GstGhostPad.
(analyze_new_pad): So, when emitting the signals that determine
how we do autoplugging, already create the ghost pad and use it as
the pad in the signal arguments. This allows applications to make
a connection between the pad passed in e.g. autoplug-continue, and
the pad passed in new-decoded-pad.
(connect_pad, expose_pad): Update to receive the ghosted decode
pad in the args, retargetting it as necessary if we have to plug
the target pad through a multiqueue.
(gst_decode_group_control_source_pad): Adapt to receive an
already-ghosted pad that just needs activation, blocking, and
drain notification.
(sort_end_pads): Adapt for decode pads actually being pads.
(gst_decode_group_expose): Adapt for decode pads actually being
pads. Rewrite the decode pad names so they appear in order. Adds a
new error case if we couldn't set the name.
(gst_decode_group_free, gst_decode_group_hide): Adapt cleanup
logic.
(gst_decode_pad_set_blocked, gst_decode_pad_add_drained_check):
New API for the decode pad, needed because we shouldn't do these
things inside gst_decode_pad_new(), but after.
(gst_decode_pad_new): Change to actually make the real pad, and
delay the blocking/drainage bits.
2008-10-08 12:49:40 +00:00
Wim Taymans
ed11048c05 gst/playback/gstplaybin2.c: Fix nasty race where multiple decodebins could start pushing data before we manage to con...
Original commit message from CVS:
* gst/playback/gstplaybin2.c: (selector_blocked), (pad_added_cb),
(no_more_pads_cb):
Fix nasty race where multiple decodebins could start pushing data before
we manage to configure the sinks, resulting in not-linked errors in
typical RTSP streaming cases.
2008-08-27 15:30:16 +00:00
Frederic Crozat
89be246154 Make sure gettext returns translations in UTF-8 encoding rather than in the current locale encoding (#546822).
Original commit message from CVS:
Patch by: Frederic Crozat <fcrozat@mandriva.org>
* ext/alsa/gstalsaplugin.c: (plugin_init):
* ext/cdparanoia/gstcdparanoiasrc.c: (plugin_init):
* ext/gnomevfs/gstgnomevfs.c: (plugin_init):
* ext/ogg/gstoggdemux.c: (gst_ogg_demux_plugin_init):
* gst-libs/gst/audio/gstbaseaudiosrc.c: (_do_init):
* gst-libs/gst/pbutils/pbutils.c: (gst_pb_utils_init):
* gst-libs/gst/tag/tags.c: (gst_tag_register_tags_internal):
* gst/playback/gstdecodebin.c: (plugin_init):
* gst/playback/gstdecodebin2.c: (gst_decode_bin_plugin_init):
* gst/playback/gstplayback.c: (plugin_init):
* gst/playback/gstqueue2.c: (plugin_init):
* gst/playback/gsturidecodebin.c: (gst_uri_decode_bin_plugin_init):
* sys/v4l/gstv4l.c: (plugin_init):
Make sure gettext returns translations in UTF-8 encoding rather
than in the current locale encoding (#546822).
2008-08-07 15:58:58 +00:00
Wim Taymans
76456cb647 gst/playback/gstplaysink.c: Add some more comments.
Original commit message from CVS:
* gst/playback/gstplaysink.c: (gst_play_sink_set_vis_plugin):
Add some more comments.
2008-07-31 13:06:13 +00:00
Stefan Kost
feea3e0b1c gst/playback/gstplaybasebin.c: Fix property doc markup (its not a signal).
Original commit message from CVS:
* gst/playback/gstplaybasebin.c:
Fix property doc markup (its not a signal).
* sys/xvimage/xvimagesink.c:
Add since tag for new proeprties (also add sice tags fro the last two
other additions).
2008-07-29 10:26:28 +00:00
Jan Schmidt
024d0e56f5 gst/playback/: First stab at integrating DVD subpicture overlay into playbin. Successfully plugs and plays, but the q...
Original commit message from CVS:
* gst/playback/gstplaybasebin.c:
* gst/playback/gstplaybasebin.h:
* gst/playback/gstplaybin.c:
* gst/playback/gststreamselector.c:
First stab at integrating DVD subpicture overlay into
playbin. Successfully plugs and plays, but the queues need
shrinking - 3 seconds of video is too much buffering.
2008-07-14 08:18:58 +00:00
Stefan Kost
2b33c755b6 Cleanup Plugin docs. Link to signals and properties. Fix sub-section titles. Drop mentining that all our example pipe...
Original commit message from CVS:
* docs/plugins/gst-plugins-base-plugins-docs.sgml:
* docs/plugins/gst-plugins-base-plugins-overrides.txt:
* docs/plugins/gst-plugins-base-plugins-sections.txt:
* docs/plugins/gst-plugins-base-plugins.args:
* docs/plugins/gst-plugins-base-plugins.hierarchy:
* docs/plugins/gst-plugins-base-plugins.interfaces:
* docs/plugins/gst-plugins-base-plugins.prerequisites:
* docs/plugins/gst-plugins-base-plugins.signals:
* docs/plugins/inspect/plugin-adder.xml:
* docs/plugins/inspect/plugin-alsa.xml:
* docs/plugins/inspect/plugin-audioconvert.xml:
* docs/plugins/inspect/plugin-audiorate.xml:
* docs/plugins/inspect/plugin-audioresample.xml:
* docs/plugins/inspect/plugin-audiotestsrc.xml:
* docs/plugins/inspect/plugin-cdparanoia.xml:
* docs/plugins/inspect/plugin-decodebin.xml:
* docs/plugins/inspect/plugin-ffmpegcolorspace.xml:
* docs/plugins/inspect/plugin-gdp.xml:
* docs/plugins/inspect/plugin-gnomevfs.xml:
* docs/plugins/inspect/plugin-libvisual.xml:
* docs/plugins/inspect/plugin-ogg.xml:
* docs/plugins/inspect/plugin-pango.xml:
* docs/plugins/inspect/plugin-playback.xml:
* docs/plugins/inspect/plugin-queue2.xml:
* docs/plugins/inspect/plugin-subparse.xml:
* docs/plugins/inspect/plugin-tcp.xml:
* docs/plugins/inspect/plugin-theora.xml:
* docs/plugins/inspect/plugin-typefindfunctions.xml:
* docs/plugins/inspect/plugin-uridecodebin.xml:
* docs/plugins/inspect/plugin-video4linux.xml:
* docs/plugins/inspect/plugin-videorate.xml:
* docs/plugins/inspect/plugin-videoscale.xml:
* docs/plugins/inspect/plugin-videotestsrc.xml:
* docs/plugins/inspect/plugin-volume.xml:
* docs/plugins/inspect/plugin-vorbis.xml:
* docs/plugins/inspect/plugin-ximagesink.xml:
* docs/plugins/inspect/plugin-xvimagesink.xml:
* ext/alsa/gstalsamixer.c:
* ext/alsa/gstalsasink.c:
* ext/alsa/gstalsasrc.c:
* ext/gio/gstgiosink.c:
* ext/gio/gstgiosrc.c:
* ext/gio/gstgiostreamsink.c:
* ext/gio/gstgiostreamsrc.c:
* ext/gnomevfs/gstgnomevfssink.c:
* ext/gnomevfs/gstgnomevfssrc.c:
* ext/ogg/gstoggdemux.c:
* ext/ogg/gstoggmux.c:
* ext/pango/gstclockoverlay.c:
* ext/pango/gsttextoverlay.c:
* ext/pango/gsttextrender.c:
* ext/pango/gsttimeoverlay.c:
* ext/theora/theoradec.c:
* ext/theora/theoraenc.c:
* ext/theora/theoraparse.c:
* ext/vorbis/vorbisdec.c:
* ext/vorbis/vorbisenc.c:
* ext/vorbis/vorbisparse.c:
* ext/vorbis/vorbistag.c:
* gst/adder/gstadder.c:
* gst/audioconvert/gstaudioconvert.c:
* gst/audioresample/gstaudioresample.c:
* gst/audiotestsrc/gstaudiotestsrc.c:
* gst/ffmpegcolorspace/gstffmpegcolorspace.c:
* gst/gdp/gstgdpdepay.c:
* gst/gdp/gstgdppay.c:
* gst/playback/gstdecodebin2.c:
* gst/playback/gstplaybin.c:
* gst/playback/gstplaybin2.c:
* gst/playback/gstqueue2.c:
* gst/playback/gsturidecodebin.c:
* gst/tcp/gstmultifdsink.c:
* gst/tcp/gsttcpserversink.c:
* gst/videorate/gstvideorate.c:
* gst/videoscale/gstvideoscale.c:
* gst/videotestsrc/gstvideotestsrc.c:
* gst/volume/gstvolume.c:
* sys/ximage/ximagesink.c:
* sys/xvimage/xvimagesink.c:
Cleanup Plugin docs. Link to signals and properties. Fix sub-section
titles. Drop mentining that all our example pipelines are "simple"
pipelines.
2008-07-10 21:06:06 +00:00
Sebastian Dröge
b02dc1bf6a gst/playback/gstdecodebin.c: And ref the pad before returning it again when linking to the queue failed. Otherwise we...
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (add_raw_queue):
And ref the pad before returning it again when linking to the queue
failed. Otherwise we will unref the pad twice later and things break.
2008-07-07 09:55:41 +00:00
Sebastian Dröge
ba9c438f98 gst/playback/gstdecodebin.c: If linking the raw pad with a queue fails, try it without a queue instead of failing com...
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (add_raw_queue):
If linking the raw pad with a queue fails, try it without a queue
instead of failing completely. This should never happen.
2008-07-07 09:48:45 +00:00
Evgeniy Stepanov
bddd224b36 gst/playback/gstdecodebin.c: Add a queue after a demuxer if the demuxer outputs raw data. This was done before only f...
Original commit message from CVS:
Patch by: Evgeniy Stepanov <eugeni dot stepanov at gmail dot com>
* gst/playback/gstdecodebin.c: (add_raw_queue), (close_pad_link):
Add a queue after a demuxer if the demuxer outputs raw data. This was
done before only for non-raw data but is required in this case too.
Fixes bug #540215.
decodebin2 doesn't have this issue because all streams of a group
go through multiqueue.
2008-07-06 23:22:12 +00:00
Stefan Kost
69f2aaea3c gst/playback/gstqueue2.c: Do not double notify. Remove the unsued return value.
Original commit message from CVS:
* gst/playback/gstqueue2.c:
Do not double notify. Remove the unsued return value.
2008-06-24 16:22:45 +00:00
Michael Smith
6ef8ecd7a3 gst/playback/: Add get-video-pad, get-audio-pad, get-text-pad action signals to playbin2. This allows the user to get...
Original commit message from CVS:
* gst/playback/gstplay-marshal.list:
* gst/playback/gstplaybin2.c:
Add get-video-pad, get-audio-pad, get-text-pad action signals to
playbin2. This allows the user to get to the selector's sinkpads, and
thus inspect a range of things - caps, tags, etc.
2008-06-20 18:24:24 +00:00
Michael Smith
f5b9e8c065 gst/playback/gstplaybin2.c: Use a different constant for the convert-frame signal id.
Original commit message from CVS:
* gst/playback/gstplaybin2.c:
Use a different constant for the convert-frame signal id.
Fixes #537009.
2008-06-20 17:27:03 +00:00
Michael Smith
8a59d948d9 gst/playback/: Fix a whole bunch of typos in comments and log statements.
Original commit message from CVS:
* gst/playback/gstplaybin2.c:
* gst/playback/gstplaysink.c:
Fix a whole bunch of typos in comments and log statements.
2008-06-20 17:18:55 +00:00
Michael Smith
9d2564874a gst/playback/gstdecodebin2.c: Ensure decodebin2 emits 'drained' signal once, and only once, when all pads are drained.
Original commit message from CVS:
* gst/playback/gstdecodebin2.c:
Ensure decodebin2 emits 'drained' signal once, and only once, when all
pads are drained.
2008-06-20 16:56:18 +00:00
Wim Taymans
cf7da52701 gst/playback/gstplaybin2.c: Implement the source property, emit notify when it changes in the underlying uridecodebin.
Original commit message from CVS:
* gst/playback/gstplaybin2.c: (gst_play_bin_get_property),
(notify_source), (activate_group):
Implement the source property, emit notify when it changes in the
underlying uridecodebin.
2008-06-20 09:19:59 +00:00
Michael Smith
2fdd607e95 gst/playback/gstplaybasebin.c: Disconnect signals from decodebins we created before we remove it from playbin, to avo...
Original commit message from CVS:
* gst/playback/gstplaybasebin.c:
Disconnect signals from decodebins we created before we remove it from
playbin, to avoid crashes if the decodebin is eventually disposed after
the playbin itself (possible if the app takes a reference on the
decodebin).
Fixes #536521.
2008-06-04 17:42:38 +00:00
Wim Taymans
514b8fa456 gst/playback/gstdecodebin2.c: Check for NULL cases and log them, creating ghostpads can, for example, fail when the p...
Original commit message from CVS:
* gst/playback/gstdecodebin2.c:
(gst_decode_group_control_source_pad), (gst_decode_group_expose):
Check for NULL cases and log them, creating ghostpads can, for example,
fail when the pad returns wrong caps.
* gst/playback/gstplaybin2.c: (perform_eos):
When pushing out the EOS event, collect the return value and warn when
something failed.
2008-05-27 10:35:55 +00:00
Jan Schmidt
d58def621b Add some documentation comments, and some new headers to be scanned.
Original commit message from CVS:
* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-base-plugins-overrides.txt:
* docs/plugins/gst-plugins-base-plugins-sections.txt:
* docs/plugins/gst-plugins-base-plugins.args:
* docs/plugins/gst-plugins-base-plugins.hierarchy:
* docs/plugins/gst-plugins-base-plugins.interfaces:
* docs/plugins/gst-plugins-base-plugins.prerequisites:
* docs/plugins/inspect/plugin-adder.xml:
* docs/plugins/inspect/plugin-alsa.xml:
* docs/plugins/inspect/plugin-audioconvert.xml:
* docs/plugins/inspect/plugin-audiorate.xml:
* docs/plugins/inspect/plugin-audioresample.xml:
* docs/plugins/inspect/plugin-audiotestsrc.xml:
* docs/plugins/inspect/plugin-cdparanoia.xml:
* docs/plugins/inspect/plugin-decodebin.xml:
* docs/plugins/inspect/plugin-ffmpegcolorspace.xml:
* docs/plugins/inspect/plugin-gdp.xml:
* docs/plugins/inspect/plugin-gio.xml:
* docs/plugins/inspect/plugin-gnomevfs.xml:
* docs/plugins/inspect/plugin-libvisual.xml:
* docs/plugins/inspect/plugin-ogg.xml:
* docs/plugins/inspect/plugin-pango.xml:
* docs/plugins/inspect/plugin-playback.xml:
* docs/plugins/inspect/plugin-queue2.xml:
* docs/plugins/inspect/plugin-subparse.xml:
* docs/plugins/inspect/plugin-tcp.xml:
* docs/plugins/inspect/plugin-theora.xml:
* docs/plugins/inspect/plugin-typefindfunctions.xml:
* docs/plugins/inspect/plugin-uridecodebin.xml:
* docs/plugins/inspect/plugin-video4linux.xml:
* docs/plugins/inspect/plugin-videorate.xml:
* docs/plugins/inspect/plugin-videoscale.xml:
* docs/plugins/inspect/plugin-videotestsrc.xml:
* docs/plugins/inspect/plugin-volume.xml:
* docs/plugins/inspect/plugin-vorbis.xml:
* docs/plugins/inspect/plugin-ximagesink.xml:
* docs/plugins/inspect/plugin-xvimagesink.xml:
* ext/cdparanoia/gstcdparanoiasrc.c:
* ext/ogg/gstoggdemux.c:
* ext/ogg/gstoggdemux.h:
* ext/ogg/gstoggmux.c:
* ext/ogg/gstoggmux.h:
* gst/audioconvert/audioconvert.c:
* gst/audioconvert/audioconvert.h:
* gst/audioconvert/gstaudioconvert.h:
* gst/gdp/gstgdpdepay.h:
* gst/gdp/gstgdppay.h:
* gst/playback/gstdecodebin.c:
* gst/playback/gstdecodebin2.c:
* gst/playback/gstplaybin.c:
* gst/playback/gstplaybin2.c:
* gst/playback/gsturidecodebin.c:
* gst/tcp/gstmultifdsink.c:
* gst/tcp/gstmultifdsink.h:
* gst/tcp/gsttcp.h:
Add some documentation comments, and some new headers to be scanned.
Rename some internal enum declarations (audioconvert's DitherType and
NoiseShapingType, GstUnitType from the TCP elements) to match the
documented GObject type names so that the docs pick them up.
Name the playbin2 docs markups properly so they get picked up. They'll
need renaming back when/if playbin2 becomes playbin.
100% symbol coverage for the plugin docs, booya.
2008-05-22 22:09:16 +00:00
Sjoerd Simons
1c424d9d93 gst/playback/gstdecodebin.c: Lock the fakesink before setting the state to NULL and removing it from the bin so that ...
Original commit message from CVS:
Patch by: Sjoerd Simons <sjoerd at luon dot net>
* gst/playback/gstdecodebin.c: (remove_fakesink):
Lock the fakesink before setting the state to NULL and removing it from
the bin so that a concurrent state change cannot interfere.
Fixes #534331.
2008-05-22 11:59:33 +00:00
Wim Taymans
c6b54c3d02 Don't use bad gst_element_get_pad().
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_pad_typefind):
* gst/playback/decodetest.c: (new_decoded_pad_cb):
* gst/playback/gstdecodebin.c: (gst_decode_bin_init),
(try_to_link_1), (elem_is_dynamic), (close_link), (type_found),
(cleanup_decodebin):
* gst/playback/gstdecodebin2.c: (gst_decode_bin_init),
(connect_element), (gst_decode_group_control_demuxer_pad):
* gst/playback/gstplaybasebin.c: (queue_remove_probe),
(queue_out_of_data), (gen_preroll_element), (preroll_unlinked),
(mute_group_type):
* gst/playback/gstplaybin.c: (gst_play_bin_vis_blocked),
(gst_play_bin_set_property), (handoff), (gen_video_element),
(gen_text_element), (gen_audio_element), (gen_vis_element),
(remove_sinks), (add_sink), (setup_sinks):
* gst/playback/gstplaybin2.c: (pad_added_cb), (no_more_pads_cb):
* gst/playback/gstplaysink.c: (gst_play_sink_get_video_sink),
(gst_play_sink_get_audio_sink), (gst_play_sink_vis_unblocked),
(gst_play_sink_vis_blocked), (gst_play_sink_set_vis_plugin),
(gst_play_sink_get_vis_plugin), (gst_play_sink_set_mute),
(gen_video_chain), (gen_text_chain), (gen_audio_chain),
(gen_vis_chain), (gst_play_sink_reconfigure),
(gst_play_sink_set_font_desc), (gst_play_sink_get_font_desc),
(gst_play_sink_request_pad):
* gst/playback/gsturidecodebin.c: (type_found), (setup_source):
* gst/playback/test.c: (gen_video_element), (gen_audio_element),
(cb_newpad):
* gst/playback/test6.c: (new_decoded_pad_cb):
* tests/check/elements/audioconvert.c: (GST_START_TEST):
* tests/check/elements/audiorate.c: (test_injector_chain),
(do_perfect_stream_test):
* tests/check/elements/ffmpegcolorspace.c: (GST_START_TEST):
* tests/check/elements/gdpdepay.c: (GST_START_TEST):
* tests/check/elements/gnomevfssink.c:
* tests/check/elements/textoverlay.c:
(notgst_check_setup_src_pad2), (notgst_check_teardown_src_pad2):
* tests/check/elements/videotestsrc.c: (GST_START_TEST):
* tests/check/libs/cddabasesrc.c: (GST_START_TEST):
* tests/check/pipelines/oggmux.c: (test_pipeline):
* tests/check/pipelines/streamheader.c: (GST_START_TEST):
* tests/check/pipelines/theoraenc.c: (GST_START_TEST):
* tests/check/pipelines/vorbisenc.c: (GST_START_TEST):
* tests/examples/seek/scrubby.c: (make_wav_pipeline):
* tests/examples/seek/seek.c: (make_mod_pipeline),
(make_dv_pipeline), (make_wav_pipeline), (make_flac_pipeline),
(make_sid_pipeline), (make_parse_pipeline), (make_vorbis_pipeline),
(make_theora_pipeline), (make_vorbis_theora_pipeline),
(make_avi_msmpeg4v3_mp3_pipeline), (make_mp3_pipeline),
(make_avi_pipeline), (make_mpeg_pipeline), (make_mpegnt_pipeline),
(update_fill), (msg_buffering):
Don't use bad gst_element_get_pad().
2008-05-21 16:36:50 +00:00
Sebastian Dröge
05349cc354 gst/playback/: Use correct marshallers. GstCaps are a boxed type and no GObject subclass.
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (gst_decode_bin_class_init):
* gst/playback/gstdecodebin2.c: (gst_decode_bin_class_init):
* gst/playback/gstplay-marshal.list:
* gst/playback/gsturidecodebin.c: (gst_uri_decode_bin_class_init):
Use correct marshallers. GstCaps are a boxed type and no GObject
subclass.
2008-05-13 13:04:24 +00:00
Wim Taymans
4a3db41f6d gst/playback/gstdecodebin2.c: When autoplugging fails, set the element back to NULL before unreffing it.
Original commit message from CVS:
* gst/playback/gstdecodebin2.c: (connect_pad):
When autoplugging fails, set the element back to NULL before
unreffing it.
2008-05-06 10:16:49 +00:00
Sebastian Dröge
de277a5b2a gst/playback/: Allow setting -1 as current-audio to mute the current audio stream, similar to what is done for subtit...
Original commit message from CVS:
* gst/playback/gstplaybasebin.c: (set_audio_mute),
(set_active_source):
* gst/playback/gstplaybasebin.h:
* gst/playback/gstplaybin.c: (gst_play_bin_class_init),
(playbin_set_audio_mute):
Allow setting -1 as current-audio to mute the current audio stream,
similar to what is done for subtitles. Fixes bug #342294.
2008-05-05 10:03:51 +00:00
Stefan Kost
2b843ca69f gst/playback/: Also include config.h when relying on defines from it. Fixes the build. Its been a please to serve :)
Original commit message from CVS:
* gst/playback/test4.c:
* gst/playback/test5.c:
* gst/playback/test6.c:
* gst/playback/test7.c:
Also include config.h when relying on defines from it. Fixes the
build. Its been a please to serve :)
2008-05-02 11:13:05 +00:00
Tim-Philipp Müller
ea0d78e8e5 gst/playback/gstdecodebin.c: If we can't activate one of the decoders we plugged in (such as, say, musepackdec) for s...
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (free_pad_probe_for_element),
(try_to_link_1):
If we can't activate one of the decoders we plugged in (such as,
say, musepackdec) for some reason (it might not support push mode,
for example), remove any pad probes that close_pad_link() might
have set up. This makes sure we later don't try to remove a probe
for a pad that doesn't exist any longer, and avoids nast warnings
and probably other things too.
2008-05-01 19:11:42 +00:00
Michael Smith
802c45b10b gst/: Include stdlib.h and unistd.h only if the appropriate HAVE_*_H macro is defined.
Original commit message from CVS:
* gst/playback/test4.c:
* gst/playback/test5.c:
* gst/playback/test6.c:
* gst/tcp/gstmultifdsink.c:
Include stdlib.h and unistd.h only if the appropriate HAVE_*_H macro
is defined.
2008-04-28 22:18:49 +00:00
Stefan Kost
2b44c294ff gst/playback/gstplaybin.c: Remove obsolete streaminfo code and fix a leak. Fixes #529546
Original commit message from CVS:
* gst/playback/gstplaybin.c:
Remove obsolete streaminfo code and fix a leak. Fixes #529546
2008-04-24 08:19:35 +00:00
Stefan Kost
0d3c154ccf gst/playback/gstdecodebin2.c: Fix signal docs.
Original commit message from CVS:
* gst/playback/gstdecodebin2.c:
Fix signal docs.
2008-04-15 19:02:10 +00:00
Wim Taymans
f0738f6fd3 docs/design/draft-keyframe-force.txt: Fix typo.
Original commit message from CVS:
* docs/design/draft-keyframe-force.txt:
Fix typo.
* gst/playback/gstqueue2.c: (update_buffering),
(gst_queue_handle_src_query):
Set buffering mode in the messages.
Set buffering percent in the query.
* tests/examples/seek/seek.c: (update_fill), (msg_state_changed),
(do_stream_buffering), (do_download_buffering), (msg_buffering):
Do some more fancy things based on the buffering method in use.
2008-04-11 01:25:01 +00:00
Wim Taymans
e5bdd95038 gst/playback/gstqueue2.c: Include extra buffering stats in the buffering message.
Original commit message from CVS:
* gst/playback/gstqueue2.c: (update_buffering),
(gst_queue_close_temp_location_file), (gst_queue_handle_src_query),
(gst_queue_src_checkgetrange_function):
Include extra buffering stats in the buffering message.
Implement BUFFERING query.
* gst/playback/gsturidecodebin.c: (do_async_start),
(do_async_done), (type_found), (setup_streaming), (setup_source),
(gst_uri_decode_bin_change_state):
Only add decodebin2 when the type is found in streaming mode.
Make uridecodebin async to PAUSED even when we don't have decodebin2
added yet.
2008-04-09 21:40:17 +00:00
Tim-Philipp Müller
7a29d716bd gst/: Work around missing bits of thread-safety on older GLibs some more to avoid assertions when starting up multipl...
Original commit message from CVS:
* gst-libs/gst/audio/gstbaseaudiosink.c:
(gst_base_audio_sink_class_init):
* gst-libs/gst/audio/gstbaseaudiosrc.c:
(gst_base_audio_src_class_init):
* gst/playback/gstplayback.c: (plugin_init):
* gst/volume/gstvolume.c: (plugin_init):
Work around missing bits of thread-safety on older GLibs some
more to avoid assertions when starting up multiple playbin
objects concurrently (see #512382).
2008-04-06 20:16:27 +00:00
Stefan Kost
b04f8ef354 docs/plugins/: Add playbin, playbin2, decodebin, decodebin2, uridecodebin and oggmux
Original commit message from CVS:
* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-base-plugins-docs.sgml:
* docs/plugins/gst-plugins-base-plugins-overrides.txt:
* docs/plugins/gst-plugins-base-plugins-sections.txt:
Add playbin, playbin2, decodebin, decodebin2, uridecodebin and oggmux
* docs/plugins/gst-plugins-base-plugins.args:
* docs/plugins/gst-plugins-base-plugins.hierarchy:
* docs/plugins/gst-plugins-base-plugins.interfaces:
* docs/plugins/gst-plugins-base-plugins.prerequisites:
* docs/plugins/inspect/plugin-adder.xml:
* docs/plugins/inspect/plugin-alsa.xml:
* docs/plugins/inspect/plugin-audioconvert.xml:
* docs/plugins/inspect/plugin-audiorate.xml:
* docs/plugins/inspect/plugin-audioresample.xml:
* docs/plugins/inspect/plugin-audiotestsrc.xml:
* docs/plugins/inspect/plugin-cdparanoia.xml:
* docs/plugins/inspect/plugin-decodebin.xml:
* docs/plugins/inspect/plugin-ffmpegcolorspace.xml:
* docs/plugins/inspect/plugin-gdp.xml:
* docs/plugins/inspect/plugin-gnomevfs.xml:
* docs/plugins/inspect/plugin-libvisual.xml:
* docs/plugins/inspect/plugin-ogg.xml:
* docs/plugins/inspect/plugin-pango.xml:
* docs/plugins/inspect/plugin-playback.xml:
* docs/plugins/inspect/plugin-queue2.xml:
* docs/plugins/inspect/plugin-subparse.xml:
* docs/plugins/inspect/plugin-tcp.xml:
* docs/plugins/inspect/plugin-theora.xml:
* docs/plugins/inspect/plugin-typefindfunctions.xml:
* docs/plugins/inspect/plugin-uridecodebin.xml:
* docs/plugins/inspect/plugin-video4linux.xml:
* docs/plugins/inspect/plugin-videorate.xml:
* docs/plugins/inspect/plugin-videoscale.xml:
* docs/plugins/inspect/plugin-videotestsrc.xml:
* docs/plugins/inspect/plugin-volume.xml:
* docs/plugins/inspect/plugin-vorbis.xml:
* docs/plugins/inspect/plugin-ximagesink.xml:
* docs/plugins/inspect/plugin-xvimagesink.xml:
Update introspection data.
* ext/ogg/gstoggmux.c:
Document oggmux.
* gst/playback/gstdecodebin2.c:
Don't use gtk-doc style comment start for private stuff, but make it
formatted like this for consistency.
2008-04-03 14:58:06 +00:00
Wim Taymans
c98a370f8c gst/playback/gstdecodebin2.c: Remove fakesink hack, we can now implement this more elegantly.
Original commit message from CVS:
* gst/playback/gstdecodebin2.c: (gst_decode_bin_class_init),
(gst_decode_bin_init), (gst_decode_bin_dispose),
(gst_decode_bin_set_sink_caps), (gst_decode_bin_get_sink_caps),
(gst_decode_bin_set_property), (gst_decode_bin_get_property),
(analyze_new_pad), (connect_pad), (expose_pad),
(gst_decode_group_new), (gst_decode_group_control_demuxer_pad),
(gst_decode_group_expose), (gst_decode_group_free),
(do_async_start), (do_async_done), (gst_decode_bin_change_state):
Remove fakesink hack, we can now implement this more elegantly.
Added property to bypass typefinding.
Removed underrun callback and demuxer pad probe, we now use the srcpad
probe to expose groups.
API::sink-caps property
* gst/playback/gstplaybin2.c: (no_more_pads_cb):
Guard against multiple emissions of the no_more_pads signal, which
happens when we are dealing with chained oggs.
* gst/playback/gsturidecodebin.c: (remove_decoders),
(make_decoder), (type_found), (setup_streaming), (source_new_pad),
(setup_source):
For streams, use our own typefind element and plug our queue after it.
We will need this to determine the type of buffering to use for the
queue soon.
2008-04-03 12:16:04 +00:00
Wim Taymans
8f77a5d928 gst/playback/gstqueue2.c: Update the estimated input data when we push out a buffer.
Original commit message from CVS:
* gst/playback/gstqueue2.c: (update_out_rates),
(gst_queue_open_temp_location_file),
(gst_queue_close_temp_location_file), (gst_queue_handle_src_event),
(gst_queue_handle_src_query), (gst_queue_set_property):
Update the estimated input data when we push out a buffer.
Add some debug info about the temp file.
Only forward src events when we are not using a temp file.
Don't block the duration query, we need to find something better.
Don't leak the temp filename.
2008-04-02 11:08:05 +00:00
Wim Taymans
03e571d945 gst/playback/gstqueue2.c: The queue is never filled when there are no buffers in the queue at all.
Original commit message from CVS:
* gst/playback/gstqueue2.c: (gst_queue_is_filled):
The queue is never filled when there are no buffers in the queue at all.
Fixes #523993.
2008-03-24 14:08:22 +00:00
Wim Taymans
ad1cbe1edd gst/playback/gstplaybin2.c: Update some docs.
Original commit message from CVS:
* gst/playback/gstplaybin2.c: (gst_play_bin_class_init),
(init_group), (free_group), (gst_play_bin_init),
(gst_play_bin_finalize), (gst_play_bin_set_uri),
(gst_play_bin_set_suburi), (gst_play_bin_get_video_tags),
(gst_play_bin_get_audio_tags), (gst_play_bin_get_text_tags),
(gst_play_bin_set_current_video_stream),
(gst_play_bin_set_current_audio_stream),
(gst_play_bin_set_current_text_stream),
(gst_play_bin_set_encoding), (gst_play_bin_set_property),
(gst_play_bin_get_property), (pad_added_cb), (pad_removed_cb),
(no_more_pads_cb), (perform_eos), (autoplug_select_cb),
(activate_group), (deactivate_group), (setup_next_source),
(save_current_group), (gst_play_bin_change_state):
Update some docs.
Add new locks and conds to protect pipeline creation and group
switching.
Implement the sub-uri property.
Keep track of pending uridecodebin creation and configure the output
pipeline after all streams are configured.
Propagate subtitle encoding to the uridecodebins.
Implement getting the video/audio/visualisation elements.
Use input-selector for stream switching.
If we are asked to do visualisation, prefer to autoplug raw sinks
instead of sinks that accept encoded data.
2008-03-24 12:26:30 +00:00
Wim Taymans
cd1fed3345 gst/playback/gstplaysink.*: Add methods to get audio/video/vis elements.
Original commit message from CVS:
* gst/playback/gstplaysink.c: (gst_play_sink_class_init),
(gst_play_sink_init), (gst_play_sink_dispose),
(gst_play_sink_set_video_sink), (gst_play_sink_get_video_sink),
(gst_play_sink_set_audio_sink), (gst_play_sink_get_audio_sink),
(gst_play_sink_vis_unblocked), (gst_play_sink_vis_blocked),
(gst_play_sink_set_vis_plugin), (gst_play_sink_get_vis_plugin),
(gst_play_sink_set_volume), (gst_play_sink_get_volume),
(gst_play_sink_set_mute), (gen_video_chain), (gen_text_chain),
(gen_audio_chain), (gen_vis_chain), (gst_play_sink_reconfigure),
(gst_play_sink_set_font_desc), (gst_play_sink_get_font_desc),
(gst_play_sink_send_event_to_sink), (gst_play_sink_change_state):
* gst/playback/gstplaysink.h:
Add methods to get audio/video/vis elements.
Add methods to set the font description for the overlay.
Remove properties, we're using this element with its methods only.
Add support for subtitles.
Rearrange the locking a bit to not use the object lock for protecting
the pipeline construction.
Try to use the volume and mute property on the sink when its available.
Implement the mute option with volume when the sink does not have a mute
property.
Only add volume element when the sink has no volume property.
Only do visualisations with raw audio pads.
2008-03-24 12:15:26 +00:00