gst/playback/: New decodebin2 element.
Original commit message from CVS: * gst/playback/Makefile.am: * gst/playback/gstdecodebin2.c: (gst_decode_bin_get_type), (_gst_boolean_accumulator), (gst_decode_bin_class_init), (gst_decode_bin_factory_filter), (compare_ranks), (print_feature), (gst_decode_bin_init), (gst_decode_bin_dispose), (gst_decode_bin_finalize), (gst_decode_bin_set_property), (gst_decode_bin_get_property), (gst_decode_bin_set_caps), (gst_decode_bin_get_caps), (gst_decode_bin_autoplug_continue), (gst_decode_bin_autoplug_sort), (analyze_new_pad), (connect_pad), (connect_element), (expose_pad), (type_found), (pad_added_group_cb), (pad_removed_group_cb), (no_more_pads_group_cb), (pad_added_cb), (pad_removed_cb), (no_more_pads_cb), (find_compatibles), (is_demuxer_element), (are_raw_caps), (multi_queue_overrun_cb), (multi_queue_underrun_cb), (gst_decode_group_new), (get_current_group), (group_demuxer_event_probe), (gst_decode_group_control_demuxer_pad), (gst_decode_group_control_source_pad), (gst_decode_group_check_if_blocked), (gst_decode_group_check_if_drained), (gst_decode_group_expose), (gst_decode_group_hide), (gst_decode_group_free), (gst_decode_group_set_complete), (source_pad_blocked_cb), (source_pad_event_probe), (gst_decode_pad_new), (add_fakesink), (remove_fakesink), (find_sink_pad), (gst_decode_bin_change_state), (plugin_init): New decodebin2 element. Closes #370092 * gst/playback/gstplay-marshal.list: Added marshallers for new signals in decodebin2 * gst/playback/gstplaybasebin.c: (setup_subtitle), (make_decoder): Use decodebin2 if *and only if* the USE_DECODEBIN2 environment variable is set.
This commit is contained in:
parent
ce6c9ab620
commit
b8423f254c
35
ChangeLog
35
ChangeLog
@ -1,3 +1,38 @@
|
|||||||
|
2006-11-28 Edward Hervey <edward@fluendo.com>
|
||||||
|
|
||||||
|
* gst/playback/Makefile.am:
|
||||||
|
* gst/playback/gstdecodebin2.c: (gst_decode_bin_get_type),
|
||||||
|
(_gst_boolean_accumulator), (gst_decode_bin_class_init),
|
||||||
|
(gst_decode_bin_factory_filter), (compare_ranks), (print_feature),
|
||||||
|
(gst_decode_bin_init), (gst_decode_bin_dispose),
|
||||||
|
(gst_decode_bin_finalize), (gst_decode_bin_set_property),
|
||||||
|
(gst_decode_bin_get_property), (gst_decode_bin_set_caps),
|
||||||
|
(gst_decode_bin_get_caps), (gst_decode_bin_autoplug_continue),
|
||||||
|
(gst_decode_bin_autoplug_sort), (analyze_new_pad), (connect_pad),
|
||||||
|
(connect_element), (expose_pad), (type_found),
|
||||||
|
(pad_added_group_cb), (pad_removed_group_cb),
|
||||||
|
(no_more_pads_group_cb), (pad_added_cb), (pad_removed_cb),
|
||||||
|
(no_more_pads_cb), (find_compatibles), (is_demuxer_element),
|
||||||
|
(are_raw_caps), (multi_queue_overrun_cb),
|
||||||
|
(multi_queue_underrun_cb), (gst_decode_group_new),
|
||||||
|
(get_current_group), (group_demuxer_event_probe),
|
||||||
|
(gst_decode_group_control_demuxer_pad),
|
||||||
|
(gst_decode_group_control_source_pad),
|
||||||
|
(gst_decode_group_check_if_blocked),
|
||||||
|
(gst_decode_group_check_if_drained), (gst_decode_group_expose),
|
||||||
|
(gst_decode_group_hide), (gst_decode_group_free),
|
||||||
|
(gst_decode_group_set_complete), (source_pad_blocked_cb),
|
||||||
|
(source_pad_event_probe), (gst_decode_pad_new), (add_fakesink),
|
||||||
|
(remove_fakesink), (find_sink_pad), (gst_decode_bin_change_state),
|
||||||
|
(plugin_init):
|
||||||
|
New decodebin2 element.
|
||||||
|
Closes #370092
|
||||||
|
* gst/playback/gstplay-marshal.list:
|
||||||
|
Added marshallers for new signals in decodebin2
|
||||||
|
* gst/playback/gstplaybasebin.c: (setup_subtitle), (make_decoder):
|
||||||
|
Use decodebin2 if *and only if* the USE_DECODEBIN2 environment variable
|
||||||
|
is set.
|
||||||
|
|
||||||
2006-11-28 Wim Taymans <wim@fluendo.com>
|
2006-11-28 Wim Taymans <wim@fluendo.com>
|
||||||
|
|
||||||
* gst/playback/gstplaybasebin.c: (setup_source),
|
* gst/playback/gstplaybasebin.c: (setup_source),
|
||||||
|
@ -7,7 +7,7 @@ built_headers = gstplay-marshal.h
|
|||||||
|
|
||||||
plugindir = $(libdir)/gstreamer-@GST_MAJORMINOR@
|
plugindir = $(libdir)/gstreamer-@GST_MAJORMINOR@
|
||||||
|
|
||||||
plugin_LTLIBRARIES = libgstplaybin.la libgstdecodebin.la
|
plugin_LTLIBRARIES = libgstplaybin.la libgstdecodebin.la libgstdecodebin2.la
|
||||||
|
|
||||||
libgstplaybin_la_SOURCES = \
|
libgstplaybin_la_SOURCES = \
|
||||||
gstplaybin.c \
|
gstplaybin.c \
|
||||||
@ -26,6 +26,12 @@ libgstdecodebin_la_CFLAGS = $(GST_CFLAGS)
|
|||||||
libgstdecodebin_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
|
libgstdecodebin_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
|
||||||
libgstdecodebin_la_LIBADD = $(GST_LIBS)
|
libgstdecodebin_la_LIBADD = $(GST_LIBS)
|
||||||
|
|
||||||
|
libgstdecodebin2_la_SOURCES = gstdecodebin2.c
|
||||||
|
nodist_libgstdecodebin2_la_SOURCES = $(built_sources)
|
||||||
|
libgstdecodebin2_la_CFLAGS = $(GST_CFLAGS)
|
||||||
|
libgstdecodebin2_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
|
||||||
|
libgstdecodebin2_la_LIBADD = $(GST_LIBS)
|
||||||
|
|
||||||
noinst_HEADERS = \
|
noinst_HEADERS = \
|
||||||
gstplaybasebin.h \
|
gstplaybasebin.h \
|
||||||
gststreaminfo.h \
|
gststreaminfo.h \
|
||||||
|
1818
gst/playback/gstdecodebin2.c
Normal file
1818
gst/playback/gstdecodebin2.c
Normal file
File diff suppressed because it is too large
Load Diff
@ -1,2 +1,3 @@
|
|||||||
BOOLEAN:OBJECT,OBJECT
|
BOOLEAN:OBJECT
|
||||||
VOID:OBJECT,BOOLEAN
|
VOID:OBJECT,BOOLEAN
|
||||||
|
BOOLEAN:OBJECT,POINTER
|
||||||
|
@ -1317,6 +1317,9 @@ setup_subtitle (GstPlayBaseBin * play_base_bin, gchar * sub_uri)
|
|||||||
if (!source)
|
if (!source)
|
||||||
goto unknown_uri;
|
goto unknown_uri;
|
||||||
|
|
||||||
|
if (g_getenv ("USE_DECODEBIN2"))
|
||||||
|
subdecodebin = gst_element_factory_make ("decodebin2", "subtitle-decoder");
|
||||||
|
else
|
||||||
subdecodebin = gst_element_factory_make ("decodebin", "subtitle-decoder");
|
subdecodebin = gst_element_factory_make ("decodebin", "subtitle-decoder");
|
||||||
g_signal_connect (subdecodebin, "element-added",
|
g_signal_connect (subdecodebin, "element-added",
|
||||||
G_CALLBACK (decodebin_element_added_cb), play_base_bin);
|
G_CALLBACK (decodebin_element_added_cb), play_base_bin);
|
||||||
@ -1728,6 +1731,9 @@ make_decoder (GstPlayBaseBin * play_base_bin)
|
|||||||
GstElement *decoder;
|
GstElement *decoder;
|
||||||
|
|
||||||
/* now create the decoder element */
|
/* now create the decoder element */
|
||||||
|
if (g_getenv ("USE_DECODEBIN2"))
|
||||||
|
decoder = gst_element_factory_make ("decodebin2", NULL);
|
||||||
|
else
|
||||||
decoder = gst_element_factory_make ("decodebin", NULL);
|
decoder = gst_element_factory_make ("decodebin", NULL);
|
||||||
if (!decoder)
|
if (!decoder)
|
||||||
goto no_decodebin;
|
goto no_decodebin;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user