Commit graph

60 commits

Author SHA1 Message Date
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
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
Thomas Vander Stichele
5f83aa7dfa expand tabs
Original commit message from CVS:
expand tabs
2005-12-06 19:42:02 +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
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
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
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
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
Wim Taymans
c36509f8b8 gst/playback/gstdecodebin.c: Don't try to remove elements twice.
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (gst_decode_bin_init),
(gst_decode_bin_dispose), (free_dynamics), (pad_unblocked),
(pad_blocked), (close_pad_link), (new_pad):
Don't try to remove elements twice.
2005-10-21 16:40:08 +00:00
Wim Taymans
cffa20bf51 gst/playback/: Make playbin async, it'll commit state to paused when all streams are detected.
Original commit message from CVS:
* gst/playback/Makefile.am:
* gst/playback/gstdecodebin.c: (gst_decode_bin_init),
(gst_decode_bin_dispose), (dynamic_create), (dynamic_free),
(free_dynamics), (pad_unblocked), (pad_blocked), (close_pad_link),
(try_to_link_1), (new_pad), (no_more_pads), (type_found),
(gst_decode_bin_change_state):
* gst/playback/gstplaybin.c: (gst_play_bin_class_init),
(gst_play_bin_send_event_to_sink):
* gst/playback/test5.c: (new_pad), (no_more_pads), (start_finding),
(dump_element_stats), (main):
* gst/playback/test6.c: (main):
Make playbin async, it'll commit state to paused when all streams
are detected.
Remove ugly hack.
Added test6.c to show async behaviour.
2005-10-18 17:13:56 +00:00
Andy Wingo
e716f44d69 gst/playback/gstdecodebin.c
Original commit message from CVS:
2005-10-16  Andy Wingo  <wingo@pobox.com>

* gst/playback/gstdecodebin.c
(gst_element_set_state_like_a_crazy_man): New kraaaaaaazy
function!
(try_to_link_1): Increase kraziness level.
2005-10-16 15:08:46 +00:00
Thomas Vander Stichele
4f8f42b0b6 restructure configure.ac, use correct libtool LDFLAGS, fix up defines
Original commit message from CVS:
restructure configure.ac, use correct libtool LDFLAGS, fix up defines
2005-10-16 13:54:44 +00:00
Andy Wingo
c1d25d47fa gst/playback/gstdecodebin.c (try_to_link_1) set element to NULL before removing it.
Original commit message from CVS:
2005-10-03  Andy Wingo  <wingo@pobox.com>

* gst/playback/gstdecodebin.c (try_to_link_1)
(remove_element_chain): set element to NULL before removing it.
2005-10-02 23:11:41 +00:00
Andy Wingo
997b3c4b78 gst/playback/gstplaybasebin.c: Attempt to fix up buffer probe thingies.
Original commit message from CVS:
2005-09-21  Andy Wingo  <wingo@pobox.com>

* gst/playback/gstplaybasebin.c: Attempt to fix up buffer probe
thingies.

* gst/playback/gstdecodebin.c (gst_decode_bin_dispose): Dispose
can be called multiple times, dogs.
2005-09-21 12:58:35 +00:00
David Schleef
9e6bf1b940 gst/playback/gstdecodebin.c: free plugin list correctly
Original commit message from CVS:
* gst/playback/gstdecodebin.c: free plugin list correctly
* gst/playback/gstplaybin.c: emit warning if autovideosink
and autoaudiosink can't be found (instead of segfaulting)
2005-09-18 07:01:46 +00:00
David Schleef
cb8927cb92 Fixes for changes in registry API.
Original commit message from CVS:
* check/generic/states.c:
* ext/ogg/gstoggdemux.c: (gst_ogg_pad_typefind):
* gst/playback/gstdecodebin.c: (gst_decode_bin_init):
Fixes for changes in registry API.
* configure.ac: Only export gst_plugins_desc.  Add -no-undefined
to GST_PLUGIN_LDFLAGS.
* ext/libvisual/visual.c: Make the library shut up.
* gst-libs/gst/audio/audio.c: Don't define a plugin in a library.
* gst-libs/gst/audio/gstaudiofilter.c: same
2005-09-15 06:59:36 +00:00
Andy Wingo
6665c3084c All plugins updated for element state changes.
Original commit message from CVS:
2005-09-02  Andy Wingo  <wingo@pobox.com>

* All plugins updated for element state changes.
2005-09-02 15:43:18 +00:00
Thomas Vander Stichele
e571f069d1 renamed to actual element names, so much nicer to look at
Original commit message from CVS:

* common/gtk-doc-plugins.mak:
* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-base-plugins-docs.sgml:
* docs/plugins/gst-plugins-base-plugins-sections.txt:
renamed to actual element names, so much nicer to look at
* docs/plugins/tmpl/gstmultifdsink.sgml:
remove
* docs/plugins/tmpl/multifdsink.sgml:
* docs/plugins/tmpl/tcpserversink.sgml:
add
* ext/alsa/gstalsa.c:
* ext/cdparanoia/gstcdparanoia.c: (cdparanoia_get_property):
* ext/ogg/gstoggmux.c:
* gst/audioconvert/gstaudioconvert.c: (gst_audio_convert_chain):
* gst/playback/gstdecodebin.c:
* gst/tcp/gstmultifdsink.c: (gst_multifdsink_class_init):
* gst/tcp/gsttcpserversink.c:
various fixes and documentation additions
2005-08-05 18:51:29 +00:00
Ronald S. Bultje
7795794bf0 Fixes for API changes in core.
Original commit message from CVS:
* ext/ogg/gstoggmux.c: (gst_ogg_mux_get_headers),
(gst_ogg_mux_set_header_on_caps):
* ext/theora/theoraenc.c: (theora_set_header_on_caps):
* ext/vorbis/vorbisenc.c: (gst_vorbisenc_set_header_on_caps):
* ext/vorbis/vorbisparse.c: (vorbis_parse_set_header_on_caps):
* gst-libs/gst/audio/multichannel.c:
(gst_audio_set_channel_positions),
(gst_audio_set_structure_channel_positions_list):
* gst/playback/gstdecodebin.c: (dynamic_create):
* gst/playback/gstplaybasebin.c: (setup_source), (mute_group_type):
* gst/playback/gststreaminfo.c: (gst_stream_info_set_mute):
Fixes for API changes in core.
2005-07-20 17:16:54 +00:00
Wim Taymans
0d21b72ff7 gst/playback/: More leak and compile fixes.
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (remove_element_chain):
* gst/playback/gstplaybin.c: (add_sink):
* gst/playback/gststreaminfo.c: (gst_stream_info_dispose),
(gst_stream_info_set_mute):
* gst/playback/gststreamselector.c:
(gst_stream_selector_get_linked_pad),
(gst_stream_selector_getcaps), (gst_stream_selector_chain):
More leak and compile fixes.
2005-07-18 11:32:34 +00:00
Wim Taymans
cfdcc450ca examples/seeking/seek.c: Updated seek example.
Original commit message from CVS:
* examples/seeking/seek.c: (make_vorbis_theora_pipeline),
(query_rates), (query_positions_elems), (query_positions_pads),
(do_seek), (seek_cb), (stop_seek):
Updated seek example.

* gst/playback/gstdecodebin.c: (remove_element_chain), (unlinked):
* gst/playback/gstplaybasebin.c: (queue_threshold_reached),
(queue_out_of_data), (gen_preroll_element), (new_decoded_pad):
* gst/playback/gstplaybin.c: (add_sink):
* gst/playback/gststreaminfo.c: (gst_stream_info_dispose),
(gst_stream_info_set_mute):
Some refcount leak fixes.
2005-07-18 10:53:03 +00:00
Andy Wingo
d0bc038021 *.c: Don't cast to GstObject before reffing/unreffing.
Original commit message from CVS:
2005-06-28  Andy Wingo  <wingo@pobox.com>

* *.c: Don't cast to GstObject before reffing/unreffing.
2005-06-28 10:16:13 +00:00
Andy Wingo
97697df71d gst/videotestsrc/gstvideotestsrc.c
Original commit message from CVS:
2005-06-27  Andy Wingo  <wingo@pobox.com>

* gst/videotestsrc/gstvideotestsrc.c
(gst_videotestsrc_activate_push): Activation API changes.

* gst/playback/gstdecodebin.c (gst_decode_bin_change_state)
(gst_decode_bin_dispose): Free dynamics in READY->NULL, because
they have refs on the decodebin.

* ext/ogg/gstoggdemux.c (gst_ogg_pad_class_init): Ref the right
parent class.
(gst_ogg_pad_typefind): Don't leak a pad ref.
(gst_ogg_chain_new_stream): gst_object_unref, not g_object_unref.
(gst_ogg_demux_sink_activate, gst_ogg_demux_sink_activate_push)
(gst_ogg_demux_sink_activate_pull): Changes for activation API.
2005-06-27 18:41:22 +00:00
Edward Hervey
d3b7111a90 gst/playback/gstdecodebin.c: 2nd argument of 'unknow-type' signal is a GstCaps and not a
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (gst_decode_bin_class_init):
2nd argument of 'unknow-type' signal is a GstCaps and not a
GstMiniObject
2005-06-26 18:45:25 +00:00
Jan Schmidt
2255ffd384 gst-libs/gst/audio/gstaudiosink.c: Set the worker thread's running flag to TRUE before starting the thread.
Original commit message from CVS:
2005-06-25  Jan Schmidt  <thaytan@mad.scientist.com>
* gst-libs/gst/audio/gstaudiosink.c: (gst_audioringbuffer_acquire):
Set the worker thread's running flag to TRUE before starting the
thread.
* gst/playback/gstdecodebin.c: (gst_decode_bin_init):
Catch a failure to add typefind to the bin.
2005-06-24 16:15:25 +00:00
Andy Wingo
55d437af1c gst/: Ghost pad API fixes.
Original commit message from CVS:
2005-06-09  Andy Wingo  <wingo@pobox.com>

* gst-libs/gst/gconf/gconf.c:
* gst/playback/test.c:
* gst/playback/gstplaybin.c (gen_video_element): Ghost pad API
fixes.

* gst/audioconvert/gstaudioconvert.c: RPAD fixes.

* ext/theora/theoraenc.c (theora_enc_chain):
* ext/theora/theoradec.c (theora_handle_data_packet): GCC4 fixes.

* ext/ogg/gstoggdemux.c (GstOggPad): Derive from GstPad, not
RealPad.
2005-06-08 22:18:05 +00:00
Andy Wingo
12c87a2f39 pkgconfig/: Add gst/tag to the -L list.
Original commit message from CVS:
2005-06-02  Andy Wingo  <wingo@pobox.com>

* pkgconfig/gstreamer-libs-uninstalled.pc.in (prefix):
* pkgconfig/gstreamer-libs.pc.in (prefix): Add gst/tag to the -L
list.

* gst/playback/gstdecodebin.c (gst_decode_bin_dispose): Don't
remove the typefind, the bin dispose will do it for us. When it's
removed and unreffed, the signal handler will be disconnected,
too.
(unlinked): It's too difficult to disconnect from unlinked
handlers, as they are on pads not elements. Just punt if the pads
aren't grandkids of the bin.
2005-06-02 11:21:48 +00:00
Wim Taymans
b48b315b81 gst/playback/: Some playbin cleanups mostly refcounting sloppyness.
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (gst_decode_bin_init),
(gst_decode_bin_dispose), (try_to_link_1), (get_our_ghost_pad),
(remove_element_chain), (no_more_pads), (unlinked), (close_link),
(type_found):
* gst/playback/gstplaybasebin.c: (gst_play_base_bin_dispose),
(group_destroy), (group_commit), (queue_overrun),
(gen_preroll_element), (no_more_pads), (preroll_unlinked),
(mute_stream), (new_decoded_pad), (setup_substreams),
(setup_source), (mute_group_type), (set_active_source),
(gst_play_base_bin_change_state):
* gst/playback/gstplaybin.c: (gst_play_bin_dispose),
(gen_video_element), (gen_text_element), (gen_audio_element),
(gen_vis_element), (remove_sinks), (add_sink), (setup_sinks):
* gst/playback/gststreaminfo.c: (gst_stream_info_new),
(gst_stream_info_dispose), (gst_stream_info_set_mute):
* gst/playback/gststreamselector.c: (gst_stream_selector_chain):
Some playbin cleanups mostly refcounting sloppyness.
2005-05-25 19:47:52 +00:00
David Schleef
d90ee5bfa3 Port from GstData to GstMiniObject.
Original commit message from CVS:
Port from GstData to GstMiniObject.
* ext/ogg/gstoggdemux.c: (gst_ogg_pad_dispose):
* ext/ogg/gstoggmux.c: (gst_ogg_mux_buffer_from_page),
(gst_ogg_mux_queue_pads), (gst_ogg_mux_set_header_on_caps),
(gst_ogg_mux_collected):
* ext/ogg/gstogmparse.c: (gst_ogm_parse_chain):
* ext/theora/theoradec.c: (theora_handle_comment_packet),
(theora_handle_data_packet):
* ext/theora/theoraenc.c: (theora_buffer_from_packet),
(theora_set_header_on_caps), (theora_enc_chain):
* ext/vorbis/vorbisdec.c: (vorbis_dec_sink_event),
(vorbis_handle_comment_packet):
* ext/vorbis/vorbisenc.c: (gst_vorbisenc_set_header_on_caps):
* ext/vorbis/vorbisparse.c: (vorbis_parse_set_header_on_caps):
* gst-libs/gst/audio/gstaudiofilter.c: (gst_audiofilter_chain):
* gst-libs/gst/tag/gstvorbistag.c: (gst_vorbis_tag_chain):
* gst/audioconvert/gstaudioconvert.c:
(gst_audio_convert_get_buffer):
* gst/playback/gstdecodebin.c: (gst_decode_bin_class_init):
* gst/playback/gstplaybasebin.c: (check_queue), (probe_triggered),
(mute_stream), (silence_stream):
* gst/playback/gstplaybin.c: (gst_play_bin_class_init):
* gst/volume/gstvolume.c: (volume_transform):
* sys/ximage/ximagesink.c: (gst_ximage_buffer_finalize),
(gst_ximage_buffer_init), (gst_ximage_buffer_class_init),
(gst_ximage_buffer_get_type), (gst_ximagesink_check_xshm_calls),
(gst_ximagesink_ximage_new), (gst_ximagesink_ximage_destroy),
(gst_ximagesink_ximage_put), (gst_ximagesink_imagepool_clear),
(gst_ximagesink_show_frame), (gst_ximagesink_buffer_free),
(gst_ximagesink_buffer_alloc):
* sys/ximage/ximagesink.h:
2005-05-16 15:35:52 +00:00
Ronald S. Bultje
09d04c380c gst/playback/: Move setup_output_pads into a virtual function, remove group-switch (no longer needed) and redirect (h...
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (gst_decode_bin_class_init),
(try_to_link_1):
* gst/playback/gstplaybasebin.c: (gst_play_base_bin_class_init),
(group_commit), (probe_triggered), (setup_source),
(gst_play_base_bin_change_state):
* gst/playback/gstplaybasebin.h:
* gst/playback/gstplaybin.c: (gst_play_bin_class_init),
(gst_play_bin_init), (remove_sinks), (setup_sinks),
(gst_play_bin_change_state):
Move setup_output_pads into a virtual function, remove
group-switch (no longer needed) and redirect (handled by bus
now) signals.
2005-05-12 16:16:14 +00:00
Andy Wingo
3aacd7982e ext/vorbis/vorbisdec.c (vorbis_handle_comment_packet): Post a message to the bus with the tags. Still not sent downst...
Original commit message from CVS:
* ext/vorbis/vorbisdec.c (vorbis_handle_comment_packet): Post a
message to the bus with the tags. Still not sent downstream tho.

* gst/playback/gstdecodebin.c (remove_element_chain): Unref after
get_parent.
(remove_element_chain): Use OBJECT_PARENT instead of get_parent to
avoid refcounting hassles.
2005-05-11 03:20:15 +00:00
Ronald S. Bultje
fe44dafa4b Work with staticpadtemplates in elementfactories.
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_demux_factory_filter):
* gst/playback/gstdecodebin.c: (find_compatibles):
Work with staticpadtemplates in elementfactories.
2005-04-12 15:00:57 +00:00
Wim Taymans
50e2f24b44 Raw and crude port of decodebin.
Original commit message from CVS:
* gst/playback/README:
* gst/playback/gstdecodebin.c: (gst_decode_bin_class_init),
(compare_ranks), (print_feature), (gst_decode_bin_init),
(dynamic_create), (dynamic_free), (find_compatibles),
(mimetype_is_raw), (close_pad_link), (got_redirect),
(try_to_link_1), (get_our_ghost_pad), (remove_element_chain),
(new_pad), (no_more_pads), (unlinked), (close_link), (type_found),
(gst_decode_bin_change_state):
* gst/playback/gstplaybasebin.c: (gst_play_base_bin_class_init),
(gst_play_base_bin_init), (group_destroy), (group_commit),
(check_queue), (queue_overrun), (queue_threshold_reached),
(queue_out_of_data), (gen_preroll_element), (unknown_type),
(new_decoded_pad), (setup_subtitle), (gen_source_element),
(got_redirect), (setup_source), (play_base_eos),
(gst_play_base_bin_change_state), (gst_play_base_bin_add_element),
(gst_play_base_bin_remove_element):
* gst/playback/gstplaybasebin.h:
* gst/playback/gstplaybin.c: (gst_play_bin_class_init),
(gst_play_bin_init), (gst_play_bin_dispose),
(gst_play_bin_set_property), (gen_video_element),
(gen_text_element), (gen_audio_element), (remove_sinks),
(gst_play_bin_send_event):
* gst/playback/gststreaminfo.c: (gst_stream_info_dispose),
(stream_info_change_state), (gst_stream_info_set_mute):
* gst/playback/gststreamselector.c: (gst_stream_selector_init),
(gst_stream_selector_get_caps), (gst_stream_selector_setcaps),
(gst_stream_selector_request_new_pad), (gst_stream_selector_event),
(gst_stream_selector_chain):
* gst/playback/test.c: (gen_video_element), (gen_audio_element),
(main):
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_getcaps),
(gst_xvimagesink_setcaps), (gst_xvimagesink_get_times),
(gst_xvimagesink_show_frame), (gst_xvimagesink_chain),
(gst_xvimagesink_buffer_alloc), (gst_xvimagesink_class_init):
Raw and crude port of decodebin.
Make playbin compile.
2005-04-12 10:48:58 +00:00
Ronald S. Bultje
b3c629c72f gst/playback/gstdecodebin.c: Use realpad for signal.
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (try_to_link_1):
Use realpad for signal.
2005-01-27 14:32:33 +00:00
Ronald S. Bultje
75a10dfa53 gst-libs/gst/riff/riff-read.*: Add _peek version (req'ed in CDXA).
Original commit message from CVS:
* gst-libs/gst/riff/riff-read.c: (gst_riff_peek_element_data),
(gst_riff_read_element_data):
* gst-libs/gst/riff/riff-read.h:
Add _peek version (req'ed in CDXA).
* gst/cdxaparse/gstcdxaparse.c: (gst_cdxaparse_init),
(gst_cdxaparse_loop):
Fix parsing in playbin.
* gst/playback/gstdecodebin.c: (close_pad_link):
Ignore current_ pads, they cause major annoyance.
2005-01-19 22:42:21 +00:00
Thomas Vander Stichele
750b054a42 arg is pad, not any gobject
Original commit message from CVS:
arg is pad, not any gobject
2005-01-10 12:31:25 +00:00
Ronald S. Bultje
18881b687a OGM text support, Matroska UTF-8 text support, deadlock fixes all over the place, subtitle awareness in decodebin/pla...
Original commit message from CVS:
* configure.ac:
* ext/ogg/gstoggdemux.c: (gst_ogg_pad_new):
* ext/ogg/gstogmparse.c: (gst_ogm_text_parse_get_type),
(gst_ogm_text_parse_base_init), (gst_ogm_text_parse_init),
(gst_ogm_parse_get_sink_querytypes), (gst_ogm_parse_sink_convert),
(gst_ogm_parse_sink_query), (gst_ogm_parse_chain),
(gst_ogm_parse_plugin_init):
* ext/pango/gsttextoverlay.c: (gst_textoverlay_linkedpads),
(gst_textoverlay_link), (gst_textoverlay_getcaps),
(gst_textoverlay_event), (gst_textoverlay_video_chain),
(gst_textoverlay_loop), (gst_textoverlay_init), (plugin_init):
* ext/pango/gsttextoverlay.h:
* gst/matroska/matroska-demux.c: (gst_matroska_demux_add_stream),
(gst_matroska_demux_handle_seek_event),
(gst_matroska_demux_sync_streams),
(gst_matroska_demux_parse_blockgroup),
(gst_matroska_demux_subtitle_caps),
(gst_matroska_demux_plugin_init):
* gst/matroska/matroska-ids.h:
* gst/playback/gstdecodebin.c: (close_pad_link):
* gst/playback/gstplaybasebin.c: (gst_play_base_bin_init),
(gen_preroll_element), (remove_groups), (add_stream),
(new_decoded_pad), (setup_subtitles), (gen_source_element),
(setup_source):
* gst/playback/gstplaybasebin.h:
* gst/playback/gstplaybin.c: (gen_text_element), (setup_sinks):
* gst/subparse/Makefile.am:
* gst/subparse/gstsubparse.c: (gst_subparse_get_type),
(gst_subparse_base_init), (gst_subparse_class_init),
(gst_subparse_init), (gst_subparse_formats),
(gst_subparse_eventmask), (gst_subparse_event),
(gst_subparse_handle_event), (convert_encoding), (get_next_line),
(parse_mdvdsub), (parse_mdvdsub_init), (parse_subrip),
(parse_subrip_deinit), (parse_subrip_init), (parse_mpsub),
(parse_mpsub_deinit), (parse_mpsub_init),
(gst_subparse_buffer_format_autodetect),
(gst_subparse_format_autodetect), (gst_subparse_loop),
(gst_subparse_change_state), (gst_subparse_type_find),
(plugin_init):
* gst/subparse/gstsubparse.h:
* gst/typefind/gsttypefindfunctions.c: (ogmtext_type_find),
(plugin_init):
Add subtitle support, .sub parser (supports SRT and MPsub),
OGM text support, Matroska UTF-8 text support, deadlock fixes
all over the place, subtitle awareness in decodebin/playbin
and some fixes to textoverlay to handle subtitles in a stream
correctly. Fixes #100931.
2005-01-08 18:22:41 +00:00
Benjamin Otte
d8ba6f1f3b gst/playback/gstdecodebin.c: make sure the facotries are ordered the same every time even if they have the same rank ...
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (compare_ranks):
make sure the facotries are ordered the same every time even if they
have the same rank by using the name
* gst/playback/gstdecodebin.c: (find_compatibles):
make sure we don't add factories to the list twice
2004-12-17 17:02:53 +00:00
Ronald S. Bultje
810bc9fc7e gst/playback/: Fix memleaks (#157233).
Original commit message from CVS:
Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
* gst/playback/gstdecodebin.c: (new_pad), (close_link):
* gst/playback/gstplaybasebin.c: (new_decoded_pad):
Fix memleaks (#157233).
2004-12-16 11:54:53 +00:00
Ronald S. Bultje
051fe366bd gst/playback/gstdecodebin.c: We sometimes need parsers for playback, so add those too.
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (gst_decode_bin_factory_filter):
We sometimes need parsers for playback, so add those too.
2004-11-25 20:22:13 +00:00
Wim Taymans
5d374bf5ea gst/playback/: Cleanups and some more documentation.
Original commit message from CVS:
* gst/playback/README:
* gst/playback/gstdecodebin.c: (close_pad_link), (try_to_link_1):
* gst/playback/gstplaybin.c: (gst_play_bin_init),
(gst_play_bin_dispose), (gst_play_bin_set_property),
(remove_sinks), (setup_sinks), (gst_play_bin_change_state),
(gst_play_bin_get_event_masks), (gst_play_bin_send_event),
(gst_play_bin_get_formats), (gst_play_bin_convert),
(gst_play_bin_get_query_types), (gst_play_bin_query):
Cleanups and some more documentation.
2004-11-09 14:37:51 +00:00
Wim Taymans
275958323c gst/playback/: Updated README, added more comments for fixmes etc..
Original commit message from CVS:
* gst/playback/README:
* gst/playback/gstdecodebin.c: (close_pad_link), (try_to_link_1):
* gst/playback/gstplaybasebin.c: (probe_triggered),
(gst_play_base_bin_change_state):
Updated README, added more comments for fixmes etc..
2004-11-08 18:27:25 +00:00
Wim Taymans
ac515f710f gst/playback/: Add support for chained ogg files. Prepare for playlist support. This patch introduces the concept of ...
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (unlinked):
* gst/playback/gstplay-marshal.list:
* gst/playback/gstplaybasebin.c: (gst_play_base_bin_class_init),
(gst_play_base_bin_init), (group_create), (get_active_group),
(get_building_group), (group_destroy), (group_commit),
(queue_overrun), (remove_groups), (add_stream), (unknown_type),
(add_element_stream), (no_more_pads), (probe_triggered),
(preroll_unlinked), (new_decoded_pad), (removed_decoded_pad),
(state_change), (setup_source), (gst_play_base_bin_get_property),
(gst_play_base_bin_change_state), (gst_play_base_bin_add_element),
(gst_play_base_bin_link_stream),
(gst_play_base_bin_get_streaminfo):
* gst/playback/gstplaybasebin.h:
* gst/playback/gstplaybin.c: (gst_play_bin_class_init),
(remove_sinks), (setup_sinks), (gst_play_bin_change_state):
Add support for chained ogg files. Prepare for playlist
support. This patch introduces the concept of pad groups, which
together compose one playable media file.
2004-11-08 09:46:17 +00:00
Wim Taymans
9b23e6f57f gst/playback/: Fix playback of multiple files. a slightly different approach to handling dynamic pad removals.
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (gst_decode_bin_class_init),
(try_to_link_1), (get_our_ghost_pad), (remove_element_chain),
(unlinked), (no_more_pads), (close_link):
* gst/playback/gstplaybasebin.c: (gst_play_base_bin_init),
(unknown_type), (add_element_stream), (new_decoded_pad),
(removed_decoded_pad), (setup_source):
* gst/playback/gststreaminfo.c: (gst_stream_info_get_type),
(gst_stream_info_class_init), (gst_stream_info_init),
(gst_stream_info_new), (gst_stream_info_dispose),
(stream_info_mute_pad), (gst_stream_info_set_property),
(gst_stream_info_get_property):
* gst/playback/gststreaminfo.h:
Fix playback of multiple files.
a slightly different approach to handling dynamic pad removals.
This one only looks at pads that we have linked.
2004-11-02 10:30:36 +00:00
Ronald S. Bultje
abd34577da gst/playback/gstdecodebin.c: Implement support for dynamic pad changing. We listen to "live" pad removals (i.e. while...
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (gst_decode_bin_class_init),
(get_unconnected_element), (remove_starting_from), (pad_removed),
(close_link):
Implement support for dynamic pad changing. We listen to "live"
pad removals (i.e. while playing) and re-setup autoplugging
after that. Playbasebin/playbin need some more work for this
to finally work, but decodebin supports (and replugs) chained
ogg now.
2004-11-01 16:08:32 +00:00
Ronald S. Bultje
f5c1757f50 ext/ogg/gstoggdemux.c: Wrong return.
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_demux_iterate):
Wrong return.
* gst/playback/Makefile.am:
* gst/playback/gstdecodebin.c: (gst_decode_bin_class_init):
* gst/playback/gstplay-marshal.list:
* gst/playback/gstplaybasebin.c: (gst_play_base_bin_class_init):
Fix marshallers.
2004-10-20 12:02:20 +00:00
Wim Taymans
216fb64b09 gst/playback/: Add sink padtemplate to decodebin.
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (gst_decode_bin_class_init),
(gst_decode_bin_init), (find_compatibles), (close_pad_link),
(try_to_link_1), (no_more_pads), (close_link), (type_found):
* gst/playback/gstplaybasebin.c: (gen_preroll_element),
(remove_prerolls), (unknown_type), (add_element_stream),
(new_decoded_pad), (setup_source), (gst_play_base_bin_add_element),
(gst_play_base_bin_remove_element),
(gst_play_base_bin_link_stream):
* gst/playback/gstplaybin.c: (gen_video_element),
(gen_vis_element), (remove_sinks), (setup_sinks):
* gst/playback/gststreaminfo.c: (gst_stream_type_get_type),
(gst_stream_info_get_type), (gst_stream_info_class_init),
(gst_stream_info_init), (gst_stream_info_new),
(gst_stream_info_dispose), (stream_info_mute_pad),
(gst_stream_info_set_property), (gst_stream_info_get_property):
* gst/playback/gststreaminfo.h:
Add sink padtemplate to decodebin.
Added some more comments.
Make queue size configurable in playbasebin.
Added possibility to use elements as sinks (ex cdaudio).
2004-10-18 13:40:48 +00:00
Wim Taymans
a85131e7ca gst/playback/: Reuse the audio and video bins.
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (gst_decode_bin_class_init),
(gst_decode_bin_init), (find_compatibles), (close_pad_link),
(try_to_link_1), (no_more_pads), (close_link), (type_found):
* gst/playback/gstplaybasebin.c: (gst_play_base_bin_class_init),
(unknown_type), (gst_play_base_bin_remove_element),
(gst_play_base_bin_link_stream):
* gst/playback/gstplaybasebin.h:
* gst/playback/gstplaybin.c: (gst_play_bin_init),
(gst_play_bin_set_property), (gen_video_element),
(gen_audio_element), (setup_sinks):
* gst/playback/gststreaminfo.c: (gst_stream_type_get_type),
(gst_stream_info_get_type), (gst_stream_info_class_init),
(gst_stream_info_init), (gst_stream_info_new),
(gst_stream_info_dispose), (stream_info_mute_pad),
(gst_stream_info_set_property), (gst_stream_info_get_property):
* gst/playback/gststreaminfo.h:
Reuse the audio and video bins.
Some internal cleanups in the stream selection code.
2004-10-08 11:30:32 +00:00
Wim Taymans
ab34b63400 gst/playback/: Do not signal the no_more_pads after the first pad when we are plugging a non dynamic element with mul...
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (gst_decode_bin_init),
(find_compatibles), (close_pad_link), (try_to_link_1), (new_pad),
(no_more_pads), (close_link), (type_found):
* gst/playback/gstplaybasebin.c: (new_decoded_pad):
* gst/playback/gstplaybin.c: (gen_video_element):
Do not signal the no_more_pads after the first pad when
we are plugging a non dynamic element with multiple
output pads (like swfdec, dvdec, ...).
2004-10-06 16:33:06 +00:00