Commit graph

317 commits

Author SHA1 Message Date
Wim Taymans
ad4586e590 gst/playback/gstdecodebin.c: Fix compilation.
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (no_more_pads):
Fix compilation.
2006-09-29 17:35:01 +00:00
Wim Taymans
a76023b481 gst/playback/gstdecodebin.c: Remove g_print
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (new_caps):
Remove g_print
* gst/playback/gstplaybin.c:
Add some docs.
2006-09-29 16:04:05 +00:00
Wim Taymans
bfc803b0b4 gst/playback/gstplaybasebin.c: Handle invalid URIs a bit more gracefully.
Original commit message from CVS:
* gst/playback/gstplaybasebin.c: (setup_subtitle),
(gen_source_element):
Handle invalid URIs a bit more gracefully.
2006-09-29 13:46:45 +00:00
Wim Taymans
5ed137a270 gst/playback/gstdecodebin.c: Implement delayed caps linking needed for element with a lot of different caps on the sr...
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (dynamic_create), (dynamic_free),
(close_pad_link), (dynamic_remove), (no_more_pads), (new_caps),
(find_dynamic), (unlinked), (close_link):
Implement delayed caps linking needed for element with a lot of
different caps on the src pads that get fixed at runtime.
Improve management of dynamic elements.
* gst/playback/gstplaybasebin.c: (gst_play_base_bin_init),
(group_destroy), (group_commit), (check_queue), (queue_overrun),
(gen_preroll_element), (remove_groups), (unknown_type),
(add_element_stream), (no_more_pads_full), (no_more_pads),
(sub_no_more_pads), (source_no_more_pads), (preroll_unlinked),
(new_decoded_pad), (setup_subtitle), (array_has_value),
(gen_source_element), (source_new_pad), (has_all_raw_caps),
(analyse_source), (remove_decoders), (make_decoder),
(remove_source), (setup_source), (finish_source), (prepare_output),
(gst_play_base_bin_change_state):
* gst/playback/gstplaybasebin.h:
Use more _CAST instead of full type checking casts.
Small cleanups, plug some leaks.
Handle dynamic sources.
Add some helper functions to create lists of strings used for
blacklisting and other stuff.
Refactor some code dealing with analysing the source.
Re-enable sources without pads (like cd:// or other selfcontained
elements).
2006-09-28 15:29:17 +00:00
Tim-Philipp Müller
0c3733c652 gst/playback/gstplaybin.c: Only remove visualisation from visbin if there is a visbin (or: don't throw warnings when ...
Original commit message from CVS:
* gst/playback/gstplaybin.c: (remove_sinks):
Only remove visualisation from visbin if there is a visbin (or:
don't throw warnings when closing totem without playing a file).
2006-09-28 09:41:20 +00:00
Wim Taymans
f5a74b2643 gst/playback/gstdecodebin.c: Cleanups and small leak fixes.
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (gst_decode_bin_factory_filter),
(add_fakesink), (remove_fakesink), (pad_probe), (close_pad_link),
(is_demuxer_element), (try_to_link_1), (get_our_ghost_pad),
(new_pad):
Cleanups and small leak fixes.
Added Depayloaders to valid list of autopluggable elements.
2006-09-25 15:47:25 +00:00
Wim Taymans
5c5edca364 gst/playback/gstplaybin.c: Detect NO_PREROLL state change returns and disable clock distribution to the sinks so that...
Original commit message from CVS:
* gst/playback/gstplaybin.c: (gst_play_bin_class_init),
(gst_play_bin_vis_blocked), (gst_play_bin_set_property),
(gen_video_element), (gen_text_element), (gen_audio_element),
(gen_vis_element), (remove_sinks), (add_sink), (setup_sinks),
(gst_play_bin_set_clock_func), (gst_play_bin_change_state):
Detect NO_PREROLL state change returns and disable clock distribution to
the sinks so that sync is disabled.
Avoid some type checking and do simple casts instead.
Small cleanups, fix some FIXMEs.
Be more robust when linking user specified elements, catch an report
errors. Fixes #357404.
Fix some leaks in the error paths.
2006-09-25 13:24:59 +00:00
Peter Kjellerstedt
8d51f4caf1 gst/playback/test.c: Fix compilation with uClibc and -Werror (#357591).
Original commit message from CVS:
Patch by: Peter Kjellerstedt  <pkj at axis com>
* gst/playback/test.c:
Fix compilation with uClibc and -Werror (#357591).
2006-09-25 11:28:15 +00:00
Wim Taymans
3469171e16 gst/playback/gstplaybasebin.c: Improve buffering a bit by avoiding a deadlock because we cannot assume the underrun i...
Original commit message from CVS:
* gst/playback/gstplaybasebin.c: (gen_preroll_element):
Improve buffering a bit by avoiding a deadlock because we cannot assume
the underrun is always called.
2006-09-23 08:53:30 +00:00
Wim Taymans
4c6f5e766a gst/playback/gstplaybasebin.c: Refactor handling of overrun detection.
Original commit message from CVS:
* gst/playback/gstplaybasebin.c: (group_commit),
(queue_deadlock_check), (queue_overrun), (queue_threshold_reached),
(queue_out_of_data), (gen_preroll_element),
(preroll_remove_overrun), (probe_triggered):
Refactor handling of overrun detection.
Separate handling of group completion and deadlock detection when doing
network buffering. This should fix some deadlocks that were not detected
because the group was completed.
Add more comments, improve debugging.
2006-09-21 07:01:48 +00:00
Tim-Philipp Müller
aeb0afba16 gst/playback/gstplaybasebin.c: Make stream-switching appear instant to the application (ie. make sure that a g_object...
Original commit message from CVS:
* gst/playback/gstplaybasebin.c: (get_active_source):
Make stream-switching appear instant to the application
(ie. make sure that a g_object_get on 'current-foo' returns
the stream previously set with g_object_set(). Totem needs
this to update stream-related meta-info (like audio-codec)
correctly when switching streams.
2006-09-17 20:32:09 +00:00
Wim Taymans
102ec386b1 gst/playback/gstplaybasebin.*: Don't use a 0 low watermark when buffering, it is catching starvation way too late. In...
Original commit message from CVS:
* gst/playback/gstplaybasebin.c: (gst_play_base_bin_class_init),
(gst_play_base_bin_init), (fill_buffer), (check_queue),
(queue_threshold_reached), (gst_play_base_bin_set_property),
(gst_play_base_bin_get_property):
* gst/playback/gstplaybasebin.h:
Don't use a 0 low watermark when buffering, it is catching starvation
way too late. Instead, use a 3 second queue with 30 and 95
percent low/high watermarks.
Added queue-min-threshold property to configure low watermark.
Use new _buffering message API.
Make queue_threshold variable big enough to store a uint64 time value.
API: playbin::queue-min-threshold property.
2006-09-15 11:17:02 +00:00
Thomas Vander Stichele
280e2ca67b releasing 0.10.10
Original commit message from CVS:
releasing 0.10.10
2006-09-14 20:09:19 +00:00
Tim-Philipp Müller
8332201367 gst/playback/gstplaybin.c: Improve docs: add section about BUFFERING messages sent by playbin.
Original commit message from CVS:
* gst/playback/gstplaybin.c:
Improve docs: add section about BUFFERING messages sent by playbin.
2006-08-29 10:58:43 +00:00
Tim-Philipp Müller
89ee2ff0c5 Document playbin.
Original commit message from CVS:
* docs/plugins/gst-plugins-base-plugins-docs.sgml:
* docs/plugins/gst-plugins-base-plugins-sections.txt:
* docs/plugins/gst-plugins-base-plugins.args:
* gst/playback/gstplaybin.c:
Document playbin.
* 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-gnomevfs.xml:
* docs/plugins/inspect/plugin-ogg.xml:
* docs/plugins/inspect/plugin-pango.xml:
* docs/plugins/inspect/plugin-playbin.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-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 to CVS version.
2006-08-15 17:21:33 +00:00
Tim-Philipp Müller
44bb02bceb gst/playback/gstplaybin.c: Add "connection-speed" property; re-order redirect messages with multiple redirect locatio...
Original commit message from CVS:
* gst/playback/gstplaybin.c: (gst_play_bin_class_init),
(gst_play_bin_set_property), (gst_play_bin_get_property),
(value_list_append_structure_list),
(gst_play_bin_handle_redirect_message),
(gst_play_bin_handle_message):
Add "connection-speed" property; re-order redirect messages with
multiple redirect locations depending on the minimum bitrate if
that information is available and a connection speed is set
(#350399).
2006-08-14 17:54:01 +00:00
Tim-Philipp Müller
309d776504 gst/playback/gstplaybin.c: Update max volume to the same value that the volume element uses.
Original commit message from CVS:
* gst/playback/gstplaybin.c:
Update max volume to the same value that the volume element uses.
2006-08-14 11:41:04 +00:00
Tim-Philipp Müller
11f5530766 gst/playback/: Remove GLib-2.6 compatibility cruft.
Original commit message from CVS:
* gst/playback/gstplaybasebin.c: (gst_play_base_bin_get_property):
* gst/playback/gstplaybin.c: (gst_play_bin_get_property):
Remove GLib-2.6 compatibility cruft.
2006-07-26 10:31:06 +00:00
Wim Taymans
ac162b0f78 gst/playback/test.c: Example of a small audio/video player using decodebin.
Original commit message from CVS:
* gst/playback/test.c: (gen_video_element), (gen_audio_element),
(cb_newpad), (main):
Example of a small audio/video player using decodebin.
2006-07-20 10:42:21 +00:00
Jan Schmidt
435fd24556 gst/playback/gstdecodebin.c: Fix a caps leak when linking (#347304)
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (find_compatibles):
Fix a caps leak when linking (#347304)
* sys/ximage/ximagesink.c: (gst_ximage_buffer_finalize),
(gst_ximagesink_ximage_destroy), (gst_ximagesink_xcontext_clear),
(gst_ximagesink_change_state):
* sys/xvimage/xvimagesink.c: (gst_xvimage_buffer_destroy),
(gst_xvimage_buffer_finalize), (gst_xvimagesink_check_xshm_calls),
(gst_xvimagesink_xvimage_new), (gst_xvimagesink_xvimage_put),
(gst_xvimagesink_xcontext_clear), (gst_xvimagesink_change_state):
Don't leak shared memory resources. Use the object lock to protect
against the xcontext disappearing while returning a buffer from the
pipeline. (#347304)
2006-07-13 14:38:15 +00:00
Tim-Philipp Müller
089a7c7262 gst/playback/gstdecodebin.c: Also emit 'unknown-type' signal (which should really be called unhandled-type) if we fou...
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (close_pad_link):
Also emit 'unknown-type' signal (which should really be
called unhandled-type) if we found potential decoders/demuxers
in the registry but none of them worked in the end (as in the
case where the plugins don't exist any longer but are still
listed in the registry). Fixes #329798.
2006-07-10 14:59:03 +00:00
Tim-Philipp Müller
f1318291ed gst/playback/gstplaybasebin.*: Protect list of elements with a subtitle-encoding property and the subtitle encoding m...
Original commit message from CVS:
* gst/playback/gstplaybasebin.c: (gst_play_base_bin_init),
(gst_play_base_bin_finalize), (decodebin_element_added_cb),
(decodebin_element_removed_cb), (gst_play_base_bin_set_property):
* gst/playback/gstplaybasebin.h:
Protect list of elements with a subtitle-encoding property and
the subtitle encoding member itself with a lock of their own
instead of using the object lock. This prevents a dead-lock in
the element-remove callback in some circumstances when shutting
down playbin.
2006-07-06 13:04:24 +00:00
Wim Taymans
361979b83b gst/playback/gstplaybasebin.c: Improve checking if we are dealing with a stream. Added some more uris that need buffe...
Original commit message from CVS:
* gst/playback/gstplaybasebin.c: (is_stream), (gen_source_element):
Improve checking if we are dealing with a stream. Added some
more uris that need buffering.
2006-07-04 14:06:03 +00:00
Jan Schmidt
91ee7188d7 gst/playback/gstdecodebin.c: Protect remove_fakesink using a mutex, so that we don't try and remove the fakesink simu...
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (gst_decode_bin_class_init),
(gst_decode_bin_init), (gst_decode_bin_finalize), (add_fakesink),
(remove_fakesink), (pad_probe), (gst_decode_bin_change_state):
Protect remove_fakesink using a mutex, so that we don't try and
remove the fakesink simultaneously from multiple threads.
When going from READY to PAUSED, restore the fakesink, so that
it is there when decodebin gets reused.
2006-06-23 16:45:50 +00:00
Cody Russell
c10584ed40 gst/: Avoid unnecessary class cast check in class_init functions (#337747).
Original commit message from CVS:
Patch by: Cody Russell <bratsche at gnome org>
* gst/audioresample/gstaudioresample.c:
(gst_audioresample_class_init):
* gst/playback/gststreamselector.c:
(gst_stream_selector_class_init):
* gst/subparse/gstsubparse.c: (gst_sub_parse_class_init):
* gst/tcp/gstmultifdsink.c: (gst_multi_fd_sink_class_init):
* gst/tcp/gsttcpclientsink.c: (gst_tcp_client_sink_class_init):
* gst/tcp/gsttcpclientsrc.c: (gst_tcp_client_src_class_init):
* gst/tcp/gsttcpserversink.c: (gst_tcp_server_sink_class_init):
* gst/tcp/gsttcpserversrc.c: (gst_tcp_server_src_class_init):
* gst/videoscale/gstvideoscale.c: (gst_video_scale_class_init):
* gst/videotestsrc/gstvideotestsrc.c:
(gst_video_test_src_class_init):
* gst/volume/gstvolume.c: (gst_volume_class_init):
Avoid unnecessary class cast check in class_init
functions (#337747).
2006-06-22 10:10:51 +00:00
Tim-Philipp Müller
ebfe6f3c6a gst/playback/gststreaminfo.c: Try GST_TAG_CODEC as fallback when extracting the codec name; more debug info.
Original commit message from CVS:
* gst/playback/gststreaminfo.c: (cb_probe):
Try GST_TAG_CODEC as fallback when extracting the
codec name; more debug info.
2006-06-14 14:49:33 +00:00
Wim Taymans
571ba11a3b gst/playback/gstplaybasebin.*: Make the subtitle detection work from any thread so we don't deadlock. Fixes #343397.
Original commit message from CVS:
* gst/playback/gstplaybasebin.c: (group_create), (group_commit),
(setup_source):
* gst/playback/gstplaybasebin.h:
Make the subtitle detection work from any thread so we don't
deadlock. Fixes #343397.
2006-06-02 10:34:12 +00:00
Stefan Kost
131fb86b4b Fix more gobject macros: obj<->klass, GstXXX<->GstXXXClass
Original commit message from CVS:
* ext/alsa/gstalsamixerelement.h:
* ext/alsa/gstalsamixeroptions.h:
* ext/alsa/gstalsamixertrack.h:
* ext/gnomevfs/gstgnomevfssink.h:
* ext/gnomevfs/gstgnomevfssrc.h:
* ext/theora/gsttheoradec.h:
* ext/theora/gsttheoraenc.h:
* ext/theora/gsttheoraparse.h:
* ext/vorbis/vorbisparse.h:
* gst-libs/gst/audio/gstaudioclock.h:
* gst-libs/gst/audio/gstaudiofilter.h:
* gst-libs/gst/rtp/gstbasertpaudiopayload.h:
* gst/audioconvert/gstaudioconvert.h:
* gst/audioresample/gstaudioresample.h:
* gst/audiotestsrc/gstaudiotestsrc.h:
* gst/ffmpegcolorspace/gstffmpegcolorspace.h:
* gst/playback/gststreamselector.h:
* gst/tcp/gstmultifdsink.h:
* gst/tcp/gsttcpclientsink.h:
* gst/tcp/gsttcpclientsrc.h:
* gst/tcp/gsttcpserversink.h:
* gst/tcp/gsttcpserversrc.h:
* gst/videorate/gstvideorate.h:
* gst/videoscale/gstvideoscale.h:
* gst/videotestsrc/gstvideotestsrc.h:
* gst/volume/gstvolume.h:
* sys/v4l/gstv4ljpegsrc.h:
* sys/v4l/gstv4lmjpegsink.h:
* sys/v4l/gstv4lmjpegsrc.h:
* sys/v4l/gstv4lsrc.h:
* sys/ximage/ximagesink.h:
* sys/xvimage/xvimagesink.h:
* tests/old/testsuite/alsa/sinesrc.h:
Fix more gobject macros: obj<->klass, GstXXX<->GstXXXClass
2006-06-01 19:19:51 +00:00
Tim-Philipp Müller
d100e58eea gst/playback/gstplaybasebin.c: Throw a more comprehensible error for rtsp:// URIs (rather than erroring out with a ne...
Original commit message from CVS:
* gst/playback/gstplaybasebin.c: (gen_source_element):
Throw a more comprehensible error for rtsp:// URIs (rather
than erroring out with a negotiation error later on) until
we fix playbin to handle rtspsrc etc.
2006-05-30 19:00:39 +00:00
Young-Ho Cha
e3b4b0a97c gst/playback/gstplaybasebin.*: Add 'subtitle-encoding' property to playbin, so applications can force a subtitle enco...
Original commit message from CVS:
Patch by: Young-Ho Cha  <ganadist at chollian net>
* gst/playback/gstplaybasebin.c: (gst_play_base_bin_class_init),
(gst_play_base_bin_init), (gst_play_base_bin_dispose),
(set_encoding_element), (decodebin_element_added_cb),
(decodebin_element_removed_cb), (setup_subtitle), (setup_source),
(gst_play_base_bin_set_property), (gst_play_base_bin_get_property):
* gst/playback/gstplaybasebin.h:
Add 'subtitle-encoding' property to playbin, so applications can
force a subtitle encoding for non-UTF8 subtitles (#342268).
* gst/subparse/gstsubparse.c: (gst_sub_parse_class_init),
(gst_sub_parse_set_property):
Rename recently-added 'encoding' property to 'subtitle-encoding'
(so it can be proxied by playbin/decodebin in a generic way
with less danger of false positives).
2006-05-29 13:21:00 +00:00
Jan Schmidt
0d9b638931 gst/playback/gstdecodebin.c: When there is only one unfinished pad and it receives an event that doesn't match our re...
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (remove_fakesink), (pad_probe):
When there is only one unfinished pad and it receives an event that
doesn't match our requirements, we need to set alldone=FALSE so that
the fakesink is not removed yet.
2006-05-25 16:50:17 +00:00
Julien Moutte
2e02bce5f0 gst/playback/gstdecodebin.c: Make decodebin reusable when going from PAUSE_TO_READY and then back to PAUSED.
Original commit message from CVS:
2006-05-15  Julien MOUTTE  <julien@moutte.net>

* gst/playback/gstdecodebin.c: (cleanup_decodebin),
(gst_decode_bin_change_state): Make decodebin reusable
when going from PAUSE_TO_READY and then back to PAUSED.
Fixes #331678.
2006-05-15 17:01:02 +00:00
Sjoerd Simons
c7f353f294 gst/playback/gstplaybasebin.*: API: GstPlayBaseBin::stream-info-value-array property use a more bindings-friendly way...
Original commit message from CVS:
2006-05-11  Thomas Vander Stichele  <thomas at apestaart dot org>

patch by: Sjoerd Simons (sjoerd@luon.net)

* gst/playback/gstplaybasebin.c: (gst_play_base_bin_class_init),
(group_create), (group_destroy), (add_stream),
(gst_play_base_bin_get_property),
(gst_play_base_bin_get_streaminfo_value_array):
* gst/playback/gstplaybasebin.h:
API: GstPlayBaseBin::stream-info-value-array property
use a more bindings-friendly way of exposing streaminfo
using a GValueArray.  Tested in ipython.
Closes #341114
2006-05-11 21:01:05 +00:00
Wim Taymans
03c8d8ae43 gst/playback/gstdecodebin.c: Also catch queue underruns but don't do anything yet.
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (try_to_link_1), (queue_enlarge),
(queue_underrun_cb), (queue_filled_cb):
Also catch queue underruns but don't do anything yet.
Refactor and comment queue enlarging code a bit.
* gst/playback/gstplaybasebin.c: (queue_overrun),
(queue_threshold_reached), (queue_out_of_data),
(gen_preroll_element):
If a queue over/underruns check that we don't create nasty
deadlocks when the min-threshold is not reached but the
max-bytes is. In those cases disable max-bytes when we
know that the queue is fed timed data.
Add more comments.
2006-05-11 19:38:22 +00:00
Tim-Philipp Müller
7cae9d887f gst/playback/gstplaybin.c: Make playbin automatically plug an 'audioresample' element before the audio sink as well. ...
Original commit message from CVS:
* gst/playback/gstplaybin.c: (gen_audio_element):
Make playbin automatically plug an 'audioresample'
element before the audio sink as well. This solves
problems with sinks that only accept a very specific
sample rate, like esdsink (e.g. #340379).
2006-05-11 18:06:18 +00:00
Tim-Philipp Müller
a2bf9eeca8 gst/playback/gstplaybasebin.c: Make http sources send special headers so that we receive icecast metadata if the http...
Original commit message from CVS:
* gst/playback/gstplaybasebin.c: (gen_source_element):
Make http sources send special headers so that we receive
icecast metadata if the http stream is an icecast stream
(otherwise the server will just ignore them). This also
means that from now on users will need the 'icydemux'
element from gst-plugins-good installed if they want to
listen to icecast radio streams. (#341432, #333657).
2006-05-11 16:04:28 +00:00
Tim-Philipp Müller
d8965c30fb Const-ify GEnumValue and GFlagsValue arrays. Use
Original commit message from CVS:
* ext/pango/gsttextoverlay.c: (gst_text_overlay_valign_get_type),
(gst_text_overlay_halign_get_type),
(gst_text_overlay_wrap_mode_get_type):
* ext/theora/theoradec.c: (theora_handle_type_packet),
(theora_handle_data_packet):
* ext/theora/theoraenc.c: (gst_border_mode_get_type),
(theora_enc_sink_setcaps), (theora_enc_chain):
* gst-libs/gst/cdda/gstcddabasesrc.c:
(gst_cdda_base_src_mode_get_type):
* gst/audiotestsrc/gstaudiotestsrc.c:
(gst_audiostestsrc_wave_get_type):
* gst/playback/gststreaminfo.c: (gst_stream_type_get_type):
* gst/tcp/gstfdset.c: (gst_fdset_mode_get_type):
* gst/tcp/gstmultifdsink.c: (gst_recover_policy_get_type),
(gst_sync_method_get_type), (gst_unit_type_get_type),
(gst_client_status_get_type):
* gst/videoscale/gstvideoscale.c:
(gst_video_scale_method_get_type):
* gst/videotestsrc/gstvideotestsrc.c:
(gst_video_test_src_pattern_get_type):
* gst/videotestsrc/videotestsrc.c: (paint_setup_I420),
(paint_setup_YV12), (paint_setup_YUY2), (paint_setup_UYVY),
(paint_setup_YVYU), (paint_setup_IYU2), (paint_setup_Y41B),
(paint_setup_Y42B), (paint_setup_Y800), (paint_setup_YVU9),
(paint_setup_YUV9), (paint_setup_RGB888), (paint_setup_BGR888),
(paint_setup_RGB565), (paint_setup_xRGB1555):
Const-ify GEnumValue and GFlagsValue arrays. Use
GST_ROUND_UP_* macros instead of home-made ones.
2006-05-09 19:24:46 +00:00
Wim Taymans
d612f665ce gst/playback/gstdecodebin.c: Properly remove ghostpads. Fixes #340392
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (cleanup_decodebin):
Properly remove ghostpads. Fixes #340392
2006-05-05 11:33:37 +00:00
Stefan Kost
868984b414 gst/playback/: free cpas using gst_caps_unref, don't leak caps-strings
Original commit message from CVS:
* gst/playback/gstplaybin.c: (add_sink):
* gst/playback/test.c: (main):
* gst/playback/test5.c: (dump_element_stats):
* gst/playback/test6.c: (main):
free cpas using gst_caps_unref, don't leak caps-strings
2006-05-02 18:15:25 +00:00
Thomas Vander Stichele
e5cbf3654b exit needs stdlib.h
Original commit message from CVS:
exit needs stdlib.h
2006-04-29 01:18:05 +00:00
Stefan Kost
e972defd3e make GstElementDetails const
Original commit message from CVS:
* ext/alsa/gstalsamixerelement.c:
* ext/alsa/gstalsasrc.c:
* ext/cdparanoia/gstcdparanoiasrc.c:
* ext/gnomevfs/gstgnomevfssink.c:
* ext/gnomevfs/gstgnomevfssrc.c:
* ext/ogg/gstoggdemux.c:
* ext/ogg/gstoggmux.c:
* ext/ogg/gstoggparse.c:
* ext/ogg/gstogmparse.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/vorbis/vorbisdec.c:
* ext/vorbis/vorbisenc.c:
* gst-libs/gst/audio/gstaudiofilter.c:
* gst-libs/gst/audio/gstaudiofiltertemplate.c:
* gst/audioconvert/gstaudioconvert.c:
* gst/audiorate/gstaudiorate.c:
* gst/audioresample/gstaudioresample.c:
* gst/audiotestsrc/gstaudiotestsrc.c:
* gst/ffmpegcolorspace/gstffmpegcolorspace.c:
* gst/playback/gstdecodebin.c:
* gst/playback/gstplaybin.c:
* gst/playback/gststreamselector.c:
* gst/subparse/gstsubparse.c:
* gst/tcp/gstmultifdsink.c:
* gst/tcp/gsttcpclientsink.c:
* gst/tcp/gsttcpclientsrc.c:
* gst/tcp/gsttcpserversink.c:
* gst/tcp/gsttcpserversrc.c:
* gst/typefind/gsttypefindfunctions.c: (plugin_init):
* gst/videorate/gstvideorate.c:
* gst/videoscale/gstvideoscale.c:
* gst/videotestsrc/gstvideotestsrc.c:
* gst/volume/gstvolume.c:
* sys/v4l/gstv4ljpegsrc.c:
* sys/v4l/gstv4lmjpegsink.c:
* sys/v4l/gstv4lmjpegsrc.c:
* sys/v4l/gstv4lsrc.c:
* sys/ximage/ximagesink.c:
* sys/xvimage/xvimagesink.c:
* tests/check/libs/cddabasesrc.c:
make GstElementDetails const
2006-04-28 19:46:37 +00:00
Jan Schmidt
b00641404a gst/playback/gststreamselector.c: Restore old StreamSelector behaviour.
Original commit message from CVS:

Patch by: Jan Schmidt

* gst/playback/gststreamselector.c:
(gst_stream_selector_bufferalloc):
Restore old StreamSelector behaviour.
Fixes #338419.
2006-04-22 21:12:52 +00:00
Tim-Philipp Müller
77208215d6 gst/playback/gststreamselector.c: Don't leak pad name.
Original commit message from CVS:
* gst/playback/gststreamselector.c:
(gst_stream_selector_get_property):
Don't leak pad name.
2006-04-11 10:45:32 +00:00
Stefan Kost
0afac375b4 Fix #337365 (g_type_class_ref <-> g_type_class_peek_parent)
Original commit message from CVS:
* ext/alsa/gstalsamixeroptions.c:
(gst_alsa_mixer_options_class_init):
* ext/alsa/gstalsamixertrack.c: (gst_alsa_mixer_track_class_init):
* ext/ogg/gstoggdemux.c: (gst_ogg_pad_class_init):
* ext/ogg/gstoggmux.c: (gst_ogg_mux_class_init):
* ext/ogg/gstoggparse.c: (gst_ogg_parse_class_init):
* gst-libs/gst/audio/gstaudioclock.c: (gst_audio_clock_class_init):
* gst-libs/gst/audio/gstaudiofilter.c:
(gst_audio_filter_class_init):
* gst-libs/gst/audio/gstaudiosink.c:
(gst_audioringbuffer_class_init):
* gst-libs/gst/audio/gstaudiosrc.c:
(gst_audioringbuffer_class_init):
* gst-libs/gst/audio/gstringbuffer.c: (gst_ring_buffer_class_init):
* gst-libs/gst/interfaces/colorbalancechannel.c:
(gst_color_balance_channel_class_init):
* gst-libs/gst/interfaces/mixeroptions.c:
(gst_mixer_options_class_init):
* gst-libs/gst/interfaces/mixertrack.c:
(gst_mixer_track_class_init):
* gst-libs/gst/interfaces/tunerchannel.c:
(gst_tuner_channel_class_init):
* gst-libs/gst/interfaces/tunernorm.c: (gst_tuner_norm_class_init):
* gst-libs/gst/netbuffer/gstnetbuffer.c:
(gst_netbuffer_class_init):
* gst-libs/gst/rtp/gstbasertppayload.c:
(gst_basertppayload_class_init):
* gst/playback/gstdecodebin.c: (gst_decode_bin_class_init):
* gst/playback/gstplaybasebin.c: (gst_play_base_bin_class_init):
* gst/playback/gstplaybin.c: (gst_play_bin_class_init):
* gst/playback/gststreaminfo.c: (gst_stream_info_class_init):
* gst/playback/gststreamselector.c:
(gst_stream_selector_class_init):
* gst/subparse/gstsubparse.c: (gst_sub_parse_class_init):
* gst/tcp/gsttcpclientsink.c: (gst_tcp_client_sink_class_init):
* sys/v4l/gstv4lcolorbalance.c:
(gst_v4l_color_balance_channel_class_init):
* sys/v4l/gstv4ljpegsrc.c: (gst_v4ljpegsrc_class_init):
* sys/v4l/gstv4lmjpegsink.c: (gst_v4lmjpegsink_class_init):
* sys/v4l/gstv4lmjpegsrc.c: (gst_v4lmjpegsrc_class_init):
* sys/v4l/gstv4ltuner.c: (gst_v4l_tuner_channel_class_init),
(gst_v4l_tuner_norm_class_init):
* sys/ximage/ximagesink.c: (gst_ximagesink_class_init):
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_class_init):
* tests/old/testsuite/alsa/sinesrc.c: (sinesrc_class_init):
Fix #337365 (g_type_class_ref <-> g_type_class_peek_parent)
2006-04-08 21:02:53 +00:00
Stefan Kost
1a2642a1d2 Fix broken GObject macros
Original commit message from CVS:
* ext/pango/gsttextrender.h:
* gst-libs/gst/audio/gstaudiosink.h:
* gst-libs/gst/audio/gstaudiosrc.h:
* gst-libs/gst/audio/gstbaseaudiosink.h:
* gst-libs/gst/audio/gstbaseaudiosrc.h:
* gst-libs/gst/audio/gstringbuffer.h:
* gst-libs/gst/rtp/gstbasertpdepayload.h:
* gst-libs/gst/rtp/gstbasertppayload.h:
* gst-libs/gst/video/gstvideofilter.h:
* gst-libs/gst/video/gstvideosink.h:
* gst/playback/gstplaybasebin.h:
* gst/tcp/gstmultifdsink.h:
* sys/v4l/gstv4lelement.h:
Fix broken GObject macros
2006-04-08 18:09:17 +00:00
Jan Schmidt
1b8dd847b1 gst/playback/gstplaybasebin.c: Clean up our group elements properly in the case where it never got committed - it sti...
Original commit message from CVS:
* gst/playback/gstplaybasebin.c: (group_destroy):
Clean up our group elements properly in the case where it never
got committed - it still got added unconditionally to the bin.
2006-04-07 17:18:11 +00:00
Jan Schmidt
67dac71e6c gst/playback/gstplaybasebin.c: Don't remove our mute-probe if someone else already did so.
Original commit message from CVS:
* gst/playback/gstplaybasebin.c: (mute_stream), (setup_substreams):
Don't remove our mute-probe if someone else already did so.
Don't set a 2nd one if there is already one pending on the pad.
* gst/playback/gstplaybin.c: (gst_play_bin_send_event_to_sink),
(do_playbin_seek):
When a seek fails, ensure that playbin is still set back to playing.
* gst/typefind/gsttypefindfunctions.c: (mpeg_ts_probe_headers),
(mpeg_ts_type_find), (plugin_init):
Add a typefind function for mpeg-ts streams.
2006-04-07 09:51:35 +00:00
Tim-Philipp Müller
6eef85d9f7 gst/playback/gstplaybin.c: Error out gracefully when we can't create any of the usual conversion elements for some re...
Original commit message from CVS:
* gst/playback/gstplaybin.c: (gen_video_element),
(gen_text_element), (gen_audio_element), (gen_vis_element):
Error out gracefully when we can't create any of the usual
conversion elements for some reason. Also, don't try to
create an audioscale (sic) element that's not used anyway.
2006-03-28 13:13:43 +00:00
Tim-Philipp Müller
ec53ce9691 gst/playback/gstplaybasebin.c: Don't post RESOURCE_NOT_FOUND error when we can't find a source element for a particul...
Original commit message from CVS:
* gst/playback/gstplaybasebin.c: (setup_source):
Don't post RESOURCE_NOT_FOUND error when we can't find a source
element for a particular protocol, that's confusing for users.
Instead, post a RESOURCE_FAILED error, so that our own error
message is actually shown in totem etc. (#336303).
2006-03-28 10:21:52 +00:00
Stefan Kost
2d826700fa Add docs for adder, use GST_ELEMENT_DETAILS macro, define GstElementDetails at the top
Original commit message from CVS:
* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-base-plugins-docs.sgml:
* docs/plugins/gst-plugins-base-plugins-sections.txt:
* ext/cdparanoia/gstcdparanoiasrc.c:
* ext/gnomevfs/gstgnomevfssink.c: (gst_gnome_vfs_sink_base_init),
(gst_gnome_vfs_sink_class_init):
* ext/gnomevfs/gstgnomevfssrc.c: (gst_gnome_vfs_src_base_init):
* ext/ogg/gstoggdemux.c: (gst_ogg_demux_base_init):
* ext/ogg/gstoggmux.c:
* ext/ogg/gstoggparse.c: (gst_ogg_parse_base_init):
* ext/ogg/gstogmparse.c: (gst_ogm_audio_parse_base_init),
(gst_ogm_video_parse_base_init), (gst_ogm_text_parse_base_init):
* ext/pango/gsttextoverlay.c:
* ext/pango/gsttextrender.c:
* ext/theora/theoradec.c:
* ext/theora/theoraenc.c:
* ext/vorbis/vorbisdec.c:
* ext/vorbis/vorbisenc.c:
* gst-libs/gst/audio/gstaudiofilter.c:
(gst_audio_filter_base_init):
* gst-libs/gst/audio/gstaudiofiltertemplate.c:
(gst_audio_filter_template_base_init):
* gst/adder/gstadder.c: (gst_adder_get_type):
* gst/adder/gstadder.h:
* gst/audioconvert/gstaudioconvert.c:
* gst/audiotestsrc/gstaudiotestsrc.c:
(gst_audiostestsrc_wave_get_type), (gst_audio_test_src_class_init),
(gst_audio_test_src_create):
* gst/ffmpegcolorspace/gstffmpegcolorspace.c:
* gst/playback/gstdecodebin.c:
* gst/playback/gstplaybin.c:
* gst/playback/gststreamselector.c:
(gst_stream_selector_base_init):
* gst/subparse/gstsubparse.c: (gst_sub_parse_base_init):
* gst/volume/gstvolume.c:
* sys/v4l/gstv4lmjpegsink.c:
* sys/v4l/gstv4lmjpegsrc.c:
* tests/check/libs/cddabasesrc.c:
* tests/old/examples/gob/gst-identity2.gob:
Add docs for adder, use GST_ELEMENT_DETAILS macro,
define GstElementDetails at the top
2006-03-24 10:42:11 +00:00
Edward Hervey
8f194ed848 gcc 4.1 unreferenced pointer fixes.
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_pad_dispose):
* gst/playback/gstplaybin.c: (handoff):
* gst/playback/gststreamselector.c:
(gst_stream_selector_set_property):
gcc 4.1 unreferenced pointer fixes.
* sys/ximage/ximagesink.c: (gst_ximagesink_ximage_put):
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_xvimage_put):
gst_buffer_ref() now takes a GstBuffer*.
2006-03-21 14:26:01 +00:00
Jan Schmidt
2caf3a5639 gst/playback/gststreamselector.c: Preserve the existing buggy streamselector behaviour by performing a fallback buffe...
Original commit message from CVS:
* gst/playback/gststreamselector.c:
(gst_stream_selector_set_property),
(gst_stream_selector_bufferalloc):
Preserve the existing buggy streamselector behaviour by performing
a fallback buffer allocation when downstream isn't linked yet.
This should really be fixed in playbin by blocking pads until it's
linked them.
Also, use gst_pad_alloc_buffer instead of
gst_pad_alloc_buffer_and_set.
2006-03-16 10:22:27 +00:00
Jan Schmidt
28bf221806 ext/alsa/gstalsasink.c: Chain up to the parent finalize method.
Original commit message from CVS:
* ext/alsa/gstalsasink.c: (gst_alsasink_finalise):
Chain up to the parent finalize method.
Add 32-bit sample size to the template caps.

* gst-libs/gst/riff/riff-media.c: (gst_riff_create_video_caps),
(gst_riff_create_video_template_caps):
Add the fourcc that the VMWare codec uses.

* gst/playback/gststreamselector.c:
(gst_stream_selector_set_property),
(gst_stream_selector_bufferalloc),
(gst_stream_selector_request_new_pad):
For the active pad, forward buffer-alloc requests, otherwise
return GST_FLOW_NOT_LINKED. This also prevents xvimagesink
having to memcpy every frame when used by playbin.

* gst/tcp/gstmultifdsink.c:
(gst_multi_fd_sink_handle_client_write):
Get negotiated caps from the sink pad, rather than the sink
pad's peer.
2006-03-15 17:59:05 +00:00
Tim-Philipp Müller
577ded7b53 ext/gnomevfs/gstgnomevfssrc.c: Don't send EOS event here, the base class will send one for us.
Original commit message from CVS:
* ext/gnomevfs/gstgnomevfssrc.c: (gst_gnome_vfs_src_create):
Don't send EOS event here, the base class will send one for us.
* gst/playback/gstplaybasebin.c: (prepare_output):
Subpictures without video stream aren't allowed either.
* gst/subparse/gstsubparse.c: (gst_subparse_type_find):
Fix debug statement copy'n'paste-o.
2006-02-21 12:16:16 +00:00
Julien Moutte
6f9edeac69 gst/playback/gstdecodebin.c: Make decodebin reusable by fixing remove_element_chain first and then introduce a cleane...
Original commit message from CVS:


* gst/playback/gstdecodebin.c: (get_our_ghost_pad),
(remove_element_chain), (cleanup_decodebin),
(gst_decode_bin_change_state): Make decodebin reusable by
fixing remove_element_chain first and then introduce a
cleaner in state change to ->NULL. (Closes #331678)
------------------------------------------------------
2006-02-20 15:57:51 +00:00
Tim-Philipp Müller
67e0a285c4 gst/playback/gstdecodebin.c: That should be text/x-pango-markup, not text/x-pango-layout.
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (mimetype_is_raw):
That should be text/x-pango-markup, not text/x-pango-layout.
2006-02-19 14:09:40 +00:00
Julien Moutte
1993f0dfaf gst/playback/gstdecodebin.c: pango layout should be considered as row.
Original commit message from CVS:
2006-02-19  Julien MOUTTE  <julien@moutte.net>

* gst/playback/gstdecodebin.c: (mimetype_is_raw): pango layout
should be considered as row.
2006-02-19 00:40:38 +00:00
Julien Moutte
3491deae9c gst/playback/gststreaminfo.*: Introduce language informations.
Original commit message from CVS:
2006-02-19  Julien MOUTTE  <julien@moutte.net>

* gst/playback/gststreaminfo.c: (gst_stream_type_get_type),
(cb_probe):
* gst/playback/gststreaminfo.h: Introduce language informations.
2006-02-19 00:25:16 +00:00
Julien Moutte
3281418028 ext/pango/gsttextoverlay.c: Refactoring of textoverlay without collectpads. This now supports sparse subtitles coming...
Original commit message from CVS:
2006-02-18  Julien MOUTTE  <julien@moutte.net>

* ext/pango/gsttextoverlay.c: (gst_text_overlay_base_init),
(gst_text_overlay_finalize), (gst_text_overlay_init),
(gst_text_overlay_setcaps), (gst_text_overlay_src_event),
(gst_text_overlay_render_text),
(gst_text_overlay_text_pad_link),
(gst_text_overlay_text_pad_unlink),
(gst_text_overlay_text_event),
(gst_text_overlay_video_event), (gst_text_overlay_pop_text),
(gst_text_overlay_text_chain), (gst_text_overlay_video_chain),
(gst_text_overlay_change_state): Refactoring of textoverlay
without collectpads. This now supports sparse subtitles coming
from a demuxer instead of a sub file. Seeking is still broken
though. Need to discuss with wtay some more on how to handle
seeking correctly.
* ext/pango/gsttextoverlay.h:
* gst/playback/gstplaybin.c: (setup_sinks): Support linking with
subtitles coming from the demuxer.
2006-02-18 19:10:35 +00:00
Wim Taymans
8ad81db4b8 gst/playback/gstplaybin.c: Update vis bin docs.
Original commit message from CVS:
* gst/playback/gstplaybin.c: (gen_vis_element):
Update vis bin docs.
Move queue after tee so we don't queue video buffers but
audio samples instead. Fixes problems where the video queue
is filled and the audio queue empty.
2006-02-13 15:59:48 +00:00
Edward Hervey
50951316a5 gst/playback/gstplaybasebin.c: Remove stray semi-colon (fixes #330888).
Original commit message from CVS:
* gst/playback/gstplaybasebin.c: (prepare_output):
Remove stray semi-colon (fixes #330888).
2006-02-12 14:26:55 +00:00
Tim-Philipp Müller
bd323373ad gst/playback/gstplaybasebin.c: Don't print the URI as part of the error message, it makes error dialogs look rather u...
Original commit message from CVS:
* gst/playback/gstplaybasebin.c: (prepare_output):
Don't print the URI as part of the error message, it
makes error dialogs look rather ugly, especially if
the URI is very long or has characters in it that
need escaping.
2006-02-07 14:57:46 +00:00
Tim-Philipp Müller
8c46daa929 gst/playback/gstplaybasebin.c: Error out if we have only text or subtitles, but nothing else. Also error out if we ha...
Original commit message from CVS:
* gst/playback/gstplaybasebin.c: (prepare_output):
Error out if we have only text or subtitles, but nothing
else. Also error out if we have subtitles but no video
stream.
2006-02-07 13:11:31 +00:00
Julien Moutte
189cd30822 gst/playback/gstplaybin.c: Fix broken code refactoring.
Original commit message from CVS:
2006-02-05  Julien MOUTTE  <julien@moutte.net>

* gst/playback/gstplaybin.c: (gen_text_element): Fix broken code
refactoring.
2006-02-05 12:06:25 +00:00
Tim-Philipp Müller
7bc79aec0e gst/playback/gstdecodebin.c: Don't put essential function call into g_return_*() macro, otherwise it'll all be replac...
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (try_to_link_1):
Don't put essential function call into
g_return_*() macro, otherwise it'll all be
replaced by NOOPs when compiling with
G_DISABLE_CHECKS defined.
2006-02-03 19:23:41 +00:00
Tim-Philipp Müller
12e851ba38 gst/playback/gstdecodebin.c: Unlinking two source pads is ... hard.
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (try_to_link_1):
Unlinking two source pads is ... hard.
2006-02-02 17:51:48 +00:00
Tim-Philipp Müller
f85c7f5268 gst/playback/test6.c: Make test work again by connecting fakesinks to each decoded pad, which makes the pipeline wait...
Original commit message from CVS:
* gst/playback/test6.c: (new_decoded_pad_cb), (show_error), (main):
Make test work again by connecting fakesinks to each decoded pad,
which makes the pipeline wait until each fakesink has a buffer
queued before going to PAUSED state. At that point we know the
decodebin pads are negotiated.
2006-02-01 14:51:29 +00:00
Julien Moutte
950ab0ef96 gst/playback/: Implement subtitles.
Original commit message from CVS:
2006-01-30  Julien MOUTTE  <julien@moutte.net>

* gst/playback/gstplaybasebin.c: (group_commit),
(queue_overrun),
(setup_subtitle), (setup_source), (set_active_source):
* gst/playback/gstplaybin.c: (gst_play_bin_dispose),
(gen_text_element), (gen_audio_element), (gen_vis_element),
(remove_sinks), (add_sink), (setup_sinks): Implement subtitles.
2006-01-30 08:11:14 +00:00
Sébastien Moutte
dc46970cdf gst-libs/gst/audio/audio.h: (GST_CLOCK_TIME_TO_FRAMES)
Original commit message from CVS:
* gst-libs/gst/audio/audio.h: (GST_CLOCK_TIME_TO_FRAMES)
* gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_render)
use of gst_guint64_to_gdouble to be compliant with vs6
* gst/playback/gstdecodebin.c: (try_to_link_1)
* gst/videorate/videorate.c: (gst_video_rate_blank_data)
use of G_GINT64_CONSTANT for int64 constants
* win32/common/libgstinterfaces.def:
export some symbols (gst_mixer_get_type,gst_mixer_track_get_type)
* win32/vs6:
update and add new project files
2006-01-29 19:13:39 +00:00
Thomas Vander Stichele
4f10b0983d ext/: - a library should not call setlocale. see Libraries node in gettext manual
Original commit message from CVS:

* ext/alsa/gstalsaplugin.c: (plugin_init):
* ext/cdparanoia/gstcdparanoiasrc.c:
(gst_cd_paranoia_src_base_init), (plugin_init):
* ext/gnomevfs/gstgnomevfs.c: (plugin_init):
* ext/ogg/gstoggdemux.c: (gst_ogg_demux_plugin_init):
- a library should not call setlocale. see Libraries node in
gettext manual
- make sure all plugins that use translation do bindtextdomain
to point to the localedir
* gst/playback/gstplaybin.c: (gen_vis_element), (add_sink),
(setup_sinks), (plugin_init):
all this, and check for NULL when creating sinks
2006-01-27 01:06:29 +00:00
Edward Hervey
efd9da3dd0 gst/playback/gstdecodebin.c: Also consider the flush-start and tag events as unblockers for the pad probes.
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (pad_probe):
Also consider the flush-start and tag events as unblockers
for the pad probes.
2006-01-26 13:09:24 +00:00
Julien Moutte
6819972f0d gst/playback/gstplaybin.c: On the fly visualisation switch, works disabling, enabling as well but it won't be able to...
Original commit message from CVS:
2006-01-26  Julien MOUTTE  <julien@moutte.net>

* gst/playback/gstplaybin.c: (gst_play_bin_init),
(gst_play_bin_dispose), (gst_play_bin_vis_unblocked),
(gst_play_bin_vis_blocked), (gst_play_bin_set_property):
On the fly visualisation switch, works disabling, enabling as
well but it won't be able to enable vis in a playbin that was
created with no visualisation.
2006-01-26 12:32:58 +00:00
Edward Hervey
e4aa8fcb19 gst/playback/gstdecodebin.c: Replace GstPadBlockCallback with pad probes that detect first buffer AND eos before remo...
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (gst_decode_bin_init),
(free_pad_probes), (remove_fakesink), (pad_probe),
(close_pad_link), (gst_decode_bin_change_state):
Replace GstPadBlockCallback with pad probes that detect
first buffer AND eos before removing fakesink.
Fixes hang with demuxers doing EOS while pre-rolling.
Solves #328279
2006-01-23 15:05:24 +00:00
Tim-Philipp Müller
6844069914 gst/playback/gstplaybasebin.c: Free iterator when done.
Original commit message from CVS:
* gst/playback/gstplaybasebin.c: (setup_source):
Free iterator when done.
2006-01-19 10:59:51 +00:00
Jan Schmidt
8501a77ce6 gst/playback/: Comment out broken code that connects to the state-changed signal.
Original commit message from CVS:
* gst/playback/gststreaminfo.c: (gst_stream_info_set_mute):
* gst/playback/gststreamselector.c:
(gst_stream_selector_set_property):
Comment out broken code that connects to the state-changed signal.
At this point, changing current stream selection is broken, but
stuff like gst-launch playbin current-audio=1 works and filters
to the chosen stream.
2006-01-16 16:38:15 +00:00
Tim-Philipp Müller
c2723b96c8 gst/playback/gstplaybasebin.c: Fix playback for sources that emit raw audio or raw video streams (e.g.: cd audio sour...
Original commit message from CVS:
* gst/playback/gstplaybasebin.c: (setup_source):
Fix playback for sources that emit raw audio or
raw video streams (e.g.: cd audio sources) (#325984).
2006-01-13 17:17:07 +00:00
Jan Schmidt
e0f836f461 gst/playback/: Reenable stream selection. These mechanisms need a complete overhaul in the face of 0.8->0.10 changes ...
Original commit message from CVS:
* gst/playback/gstplaybasebin.c: (group_destroy),
(probe_triggered), (new_decoded_pad), (mute_group_type),
(set_active_source):
* gst/playback/gststreaminfo.c: (gst_stream_info_set_mute):
* gst/playback/gststreamselector.c:
(gst_stream_selector_base_init),
(gst_stream_selector_set_property),
(gst_stream_selector_request_new_pad):
Reenable stream selection. These mechanisms need a complete overhaul
in the face of 0.8->0.10 changes though.
2006-01-11 18:30:25 +00:00
Jan Schmidt
c65c75abe8 gst/playback/gstplaybin.c: Don't leak an autoaudiosink/alsasink when we generate a new audio element. (old code, I gu...
Original commit message from CVS:
* gst/playback/gstplaybin.c: (gen_audio_element):
Don't leak an autoaudiosink/alsasink when we generate
a new audio element. (old code, I guess)
2006-01-10 11:49:28 +00:00
Michael Smith
f447d9a6d9 gst/playback/gstdecodebin.c: Fix non-C89 variable declaration not at the start of a block. Should help some compilers.
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (new_pad):
Fix non-C89 variable declaration not at the start of a block. Should
help some compilers.
2005-12-29 14:31:49 +00:00
Jan Schmidt
0efd7381c4 ext/ogg/gstoggdemux.c: Extra debug output when activating/deactivating chains.
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_demux_deactivate_current_chain),
(gst_ogg_demux_activate_chain):
Extra debug output when activating/deactivating chains.

* gst/playback/gstdecodebin.c: (gst_decode_bin_factory_filter),
(is_demuxer_element), (try_to_link_1), (remove_element_chain),
(unlinked):
Remove a queue from our list when it becomes unlinked.
Don't add queues to elements in class 'Demux' if they
can only produce one pad
2005-12-18 15:04:21 +00:00
Tim-Philipp Müller
f2e9c13e3f gst/playback/: Make sure the video frame buffer we return to apps via the "frame" property always has caps set on it....
Original commit message from CVS:
* gst/playback/gstplaybasebin.c:
* gst/playback/gstplaybin.c: (handoff):
Make sure the video frame buffer we return to apps via the
"frame" property always has caps set on it. Modify
_gst_gvalue_set_object() macro to handle NULL objects
gracefully too.
2005-12-15 09:48:19 +00:00
Tim-Philipp Müller
d0cc0e9082 gst/playback/: Work around refcount problem with g_value_set_object() that occur if the core has been compiled agains...
Original commit message from CVS:
* gst/playback/gstplaybasebin.c: (gst_play_base_bin_get_property):
* gst/playback/gstplaybin.c: (gst_play_bin_get_property):
Work around refcount problem with g_value_set_object() that occur
if the core has been compiled against GLib-2.6 (g_value_set_object()
will only g_object_ref() the element, but the caller will
gst_object_unref() it and bad things will happen due to the way
GstObjects are refcounted in the GLib-2.6 case). Fixes problems with
totem for people on FC4 using Thomas's 0.10 RPMs.
2005-12-07 18:51:35 +00:00
Thomas Vander Stichele
5f83aa7dfa expand tabs
Original commit message from CVS:
expand tabs
2005-12-06 19:42:02 +00:00
Jan Schmidt
1874a9fc84 gst/playback/gststreamselector.c: 3rd time's the charm. Correct ref-counting for discarded buffers.
Original commit message from CVS:
* gst/playback/gststreamselector.c: (gst_stream_selector_chain):
3rd time's the charm. Correct ref-counting for discarded buffers.
2005-11-29 16:54:50 +00:00
Jan Schmidt
35905dcfb6 gst/playback/gststreamselector.c: Fix ref-counting
Original commit message from CVS:
* gst/playback/gststreamselector.c:
(gst_stream_selector_class_init),
(gst_stream_selector_set_property),
(gst_stream_selector_get_property),
(gst_stream_selector_request_new_pad), (gst_stream_selector_chain):
Fix ref-counting
2005-11-29 16:43:41 +00:00
Jan Schmidt
c14c78900f gst/playback/gststreamselector.*: Add the active-pad property for playbin to use shortly. Ignore buffers from any oth...
Original commit message from CVS:
* gst/playback/gststreamselector.c:
(gst_stream_selector_class_init), (gst_stream_selector_init),
(gst_stream_selector_dispose), (gst_stream_selector_set_property),
(gst_stream_selector_get_property),
(gst_stream_selector_get_linked_pad),
(gst_stream_selector_request_new_pad), (gst_stream_selector_chain):
* gst/playback/gststreamselector.h:
Add the active-pad property for playbin to use shortly. Ignore buffers
from any other pad, returning GST_FLOW_NOT_LINKED
2005-11-29 15:56:07 +00:00
Edward Hervey
4ab5321400 gst/playback/gstdecodebin.c: Better use of the queues. Start with a small size queue and only increase the size of th...
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (gst_decode_bin_init),
(try_to_link_1), (queue_filled_cb):
Better use of the queues. Start with a small size queue and only increase
the size of the queues when the other queues are empty.
2005-11-28 19:54:56 +00:00
Wim Taymans
078d7c5e8c gst/playback/gstplaybasebin.*: Prepare to handle errors betters.
Original commit message from CVS:
* gst/playback/gstplaybasebin.c: (group_commit), (probe_triggered):
* gst/playback/gstplaybasebin.h:
Prepare to handle errors betters.

* gst/playback/gstplaybin.c: (add_sink), (setup_sinks):
Set sinks to PAUSED first before adding and linking them so that
we don't interrupt dataflow.
2005-11-28 15:56:03 +00:00
Edward Hervey
56c6518c55 gst/playback/gstdecodebin.c: Remove unused properties, and add queues between demuxers and decoders so that a lot mor...
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (gst_decode_bin_class_init),
(gst_decode_bin_init), (close_pad_link), (try_to_link_1):
Remove unused properties, and add queues between demuxers and decoders
so that a lot more files can preroll properly.
2005-11-27 17:57:54 +00:00
Thomas Vander Stichele
c0759093eb remove deprecated properties fix up enums to correctly have short lowercase dashed nicks
Original commit message from CVS:
remove deprecated properties
fix up enums to correctly have short lowercase dashed nicks
2005-11-22 17:39:29 +00:00
Andy Wingo
f3bafece36 gst/playback/gstplaybin.c (gen_audio_element)
Original commit message from CVS:
2005-11-21  Andy Wingo  <wingo@pobox.com>

* gst/playback/gstplaybin.c (gen_audio_element)
(gen_video_element): Use the new MISSING_PLUGIN core error
category.
2005-11-21 18:44:02 +00:00
Andy Wingo
f405e12b4a *.*: Ran scripts/update-macros. Oh yes.
Original commit message from CVS:
2005-11-21  Andy Wingo  <wingo@pobox.com>

* *.h:
* *.c: Ran scripts/update-macros. Oh yes.
2005-11-21 16:35:24 +00:00
Jan Schmidt
569286d058 gst-libs/gst/tag/: Remove obsolete vorbistag element and debug category.
Original commit message from CVS:
* gst-libs/gst/tag/Makefile.am:
* gst-libs/gst/tag/gstvorbistag.c:
(gst_tag_list_to_vorbiscomment_buffer):
Remove obsolete vorbistag element and debug category.

* gst/playback/gstplaybasebin.c: (check_queue):
Don't divide by 0 when queue-threshold is 0.

* sys/ximage/ximagesink.c: (gst_ximagesink_set_property):
Don't modify an existing pixel-aspect-ratio if we fail to read
a new one.
2005-11-20 17:11:06 +00:00
Edward Hervey
8a955ff2c2 gst/playback/gstdecodebin.c: Unsetting IS_SINK flag from the fakesink, so decodebin never behaves as a sink.
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (gst_decode_bin_init):
Unsetting IS_SINK flag from the fakesink, so decodebin
never behaves as a sink.
2005-11-18 13:04:19 +00:00
Tim-Philipp Müller
726770239d gst/playback/gstplaybin.c: Use autoaudiosink, it tends to be more widely available than autoaudiiosink.
Original commit message from CVS:
* gst/playback/gstplaybin.c: (gen_audio_element):
Use autoaudiosink, it tends to be more widely available than
autoaudiiosink.
2005-11-14 18:26:21 +00:00
Andy Wingo
65480fcc2d gst/playback/gstplaybin.c (gen_audio_element): Use autoaudiosink as well if it is available. Fixes #316442.
Original commit message from CVS:
2005-11-14  Andy Wingo  <wingo@pobox.com>

* gst/playback/gstplaybin.c (gen_audio_element): Use autoaudiosink
as well if it is available. Fixes #316442.
2005-11-14 17:44:40 +00:00
Andy Wingo
d6d7f17043 gst/playback/gstplaybasebin.c (prepare_output): Fix format string doober.
Original commit message from CVS:
2005-11-10  Andy Wingo  <wingo@pobox.com>

* gst/playback/gstplaybasebin.c (prepare_output): Fix format
string doober.
2005-11-10 19:05:38 +00:00
Michael Smith
3b5568c1a4 gst/playback/gstplaybasebin.c: Unlock GROUP_LOCK in failure cases, so that we don't deadlock when trying to go to NUL...
Original commit message from CVS:
* gst/playback/gstplaybasebin.c: (group_commit), (new_decoded_pad),
(setup_substreams), (set_active_source):
Unlock GROUP_LOCK in failure cases, so that we don't deadlock when
trying to go to NULL if we failed to read a file.
2005-11-10 17:29:48 +00:00
Tim-Philipp Müller
33fd9d677d gst/playback/gstplaybin.c: Set elements to NULL state before disposing of them.
Original commit message from CVS:
* gst/playback/gstplaybin.c: (gst_play_bin_dispose):
Set elements to NULL state before disposing of them.
2005-11-09 16:09:52 +00:00
Wim Taymans
6e48aa490c gst/playback/gstdecodebin.c: Handle the case where a pad_block failed.
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (gst_decode_bin_init),
(gst_decode_bin_dispose), (free_dynamics), (remove_fakesink),
(pad_blocked), (close_pad_link), (new_pad), (no_more_pads):
Handle the case where a pad_block failed.
2005-11-03 12:32:09 +00:00