From: Fraxinas Date: Mon, 26 Jul 2010 10:37:04 +0000 (+0200) Subject: Merge branch 'bug_537_vobsub' of git.opendreambox.org:/git/enigma2 into bug_537_vobsub X-Git-Tag: 3.0.3~12^2~7 X-Git-Url: https://git.cweiske.de/enigma2.git/commitdiff_plain/05d902ffb1a0dfb03cbb69324ceb20439b73c977 Merge branch 'bug_537_vobsub' of git.opendreambox.org:/git/enigma2 into bug_537_vobsub Conflicts: lib/python/Components/ConfigList.py lib/python/Screens/AudioSelection.py lib/service/servicemp3.cpp lib/service/servicemp3.h --- 05d902ffb1a0dfb03cbb69324ceb20439b73c977 diff --cc lib/service/servicemp3.cpp index 5fe15c1e,5cccbaea..8628c269 --- a/lib/service/servicemp3.cpp +++ b/lib/service/servicemp3.cpp @@@ -351,19 -339,13 +351,17 @@@ eServiceMP3::eServiceMP3(eServiceRefere eDebug("eServiceMP3::sorry, can't play: missing gst-plugin-appsink"); GstElement *dvdsubdec = gst_element_factory_make("dvdsubdec", "vobsubtitle_decoder"); - if ( !dvdsubdec ) - eDebug("eServiceMP3::sorry, can't play: missing gst-plugin-dvdsub"); - - gst_bin_add_many(GST_BIN(m_gst_subtitlebin), dvdsubdec, appsink, NULL); - -// GstPad *ghostpad = gst_ghost_pad_new("sink", gst_element_get_static_pad (appsink, "sink")); + if ( dvdsubdec ) + { + gst_bin_add_many(GST_BIN(m_gst_subtitlebin), dvdsubdec, appsink, NULL); + g_object_set (G_OBJECT (dvdsubdec), "singlebuffer", TRUE, NULL); + } + else + { + eDebug("eServiceMP3::missing gst-plugin-dvdsub, no vob subtitle support!"); + gst_bin_add(GST_BIN(m_gst_subtitlebin), appsink); + } - // GstPad *ghostpad = gst_ghost_pad_new("sink", gst_element_get_static_pad (appsink, "sink")); - GstPadTemplate *templ; templ = gst_static_pad_template_get (&subsinktemplate); @@@ -374,11 -356,11 +372,6 @@@ g_object_set (G_OBJECT (appsink), "caps", caps, NULL); gst_caps_unref(caps); --// GstCaps* caps2 = gst_caps_from_string("text/plain; text/x-pango-markup; video/x-dvd-subpicture"); --// int ret = gst_pad_set_caps (ghostpad, caps2); --// gst_caps_unref(caps2); -- - - g_object_set (G_OBJECT (dvdsubdec), "singlebuffer", TRUE, NULL); g_object_set (G_OBJECT (appsink), "async", FALSE, NULL); g_object_set (G_OBJECT (appsink), "sync", TRUE, NULL); g_object_set (G_OBJECT (appsink), "emit-signals", TRUE, NULL); @@@ -2040,7 -1976,7 +2032,6 @@@ void eServiceMP3::pushSubtitles( { if ( frontpage.pango_page != 0) { - // eDebug("immediate show pango subtitle line"); - eDebug("immediate show pango subtitle line"); m_subtitle_widget->setPage(*(frontpage.pango_page)); } else if ( frontpage.vob_page != 0)