X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/c7239788f111d2a6a8ca3bb8b95b72579095bad4..c2a0bd6f431cb9c9e891950824c279bbee7bf81d:/lib/service/servicedvb.cpp diff --git a/lib/service/servicedvb.cpp b/lib/service/servicedvb.cpp index 750fd34c..c95923c9 100644 --- a/lib/service/servicedvb.cpp +++ b/lib/service/servicedvb.cpp @@ -1640,9 +1640,11 @@ void eDVBServicePlay::switchToLive() m_decode_demux = 0; m_teletext_parser = 0; m_radiotext_parser = 0; + m_subtitle_parser = 0; + m_new_dvb_subtitle_region_connection = 0; m_new_subtitle_page_connection = 0; m_radiotext_updated_connection = 0; - + /* free the timeshift service handler, we need the resources */ m_service_handler_timeshift.free(); m_timeshift_active = 0; @@ -1661,7 +1663,9 @@ void eDVBServicePlay::switchToTimeshift() m_decoder = 0; m_teletext_parser = 0; m_radiotext_parser = 0; + m_subtitle_parser = 0; m_new_subtitle_page_connection = 0; + m_new_dvb_subtitle_region_connection = 0; m_radiotext_updated_connection = 0; m_timeshift_active = 1; @@ -1686,7 +1690,7 @@ void eDVBServicePlay::updateDecoder() std::string default_ac3; if (!ePythonConfigQuery::getConfigValue("config.av.defaultac3", default_ac3)) - defaultac3 = default_ac3 == "enable"; + defaultac3 = default_ac3 == "True"; eDVBServicePMTHandler::program program; if (h.getProgramInfo(program)) @@ -1751,6 +1755,8 @@ void eDVBServicePlay::updateDecoder() m_teletext_parser = new eDVBTeletextParser(m_decode_demux); m_teletext_parser->connectNewPage(slot(*this, &eDVBServicePlay::newSubtitlePage), m_new_subtitle_page_connection); #endif + m_subtitle_parser = new eDVBSubtitleParser(m_decode_demux); + m_subtitle_parser->connectNewRegion(slot(*this, &eDVBServicePlay::newDVBSubtitleRegion), m_new_dvb_subtitle_region_connection); } if (m_decoder) @@ -1813,6 +1819,9 @@ void eDVBServicePlay::updateDecoder() if (m_teletext_parser) m_teletext_parser->start(tpid); +// if (m_subtitle_parser && program.subtitleStreams.size() > 0) +// m_subtitle_parser->start(program.subtitleStreams[0].pid); + if (!m_is_primary) m_decoder->setTrickmode(1); @@ -2075,6 +2084,16 @@ void eDVBServicePlay::checkSubtitleTiming() } } +void eDVBServicePlay::newDVBSubtitleRegion(const eDVBSubtitleRegion &p) +{ + eDebug("new dvb subtitle region"); +} + +void eDVBServicePlay::checkDvbSubtitleTiming() +{ + eDebug("check dvb subtitle timing"); +} + int eDVBServicePlay::getAC3Delay() { if (m_dvb_service)