From 0e7fc97cfaaecf1b7fc93a73157a6a380e9058f4 Mon Sep 17 00:00:00 2001 From: Andreas Frisch Date: Mon, 20 Oct 2008 11:52:18 +0000 Subject: hide subtitles after actual duration timeout, unescape entities and simulate bold and italic --- lib/service/servicemp3.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'lib/service/servicemp3.cpp') diff --git a/lib/service/servicemp3.cpp b/lib/service/servicemp3.cpp index 225d90f6..be3536b6 100644 --- a/lib/service/servicemp3.cpp +++ b/lib/service/servicemp3.cpp @@ -1168,14 +1168,16 @@ eAutoInitPtr init_eServiceFactoryMP3(eAutoInitNumbers::servi void eServiceMP3::gstCBsubtitleAvail(GstElement *element, GstBuffer *buffer, GstPad *pad, gpointer user_data) { + gint64 duration_ns = GST_BUFFER_DURATION(buffer); const unsigned char *text = (unsigned char *)GST_BUFFER_DATA(buffer); eDebug("gstCBsubtitleAvail: %s",text); eServiceMP3 *_this = (eServiceMP3*)user_data; if ( _this->m_subtitle_widget ) { - eDVBTeletextSubtitlePage page; + ePangoSubtitlePage page; gRGB rgbcol(0xD0,0xD0,0xD0); - page.m_elements.push_back(eDVBTeletextSubtitlePageElement(rgbcol, (const char*)text)); + page.m_elements.push_back(ePangoSubtitlePageElement(rgbcol, (const char*)text)); + page.m_timeout = duration_ns / 1000000; (_this->m_subtitle_widget)->setPage(page); } } -- cgit v1.2.3