diff options
Diffstat (limited to 'lib/service/servicedvb.cpp')
| -rw-r--r-- | lib/service/servicedvb.cpp | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/lib/service/servicedvb.cpp b/lib/service/servicedvb.cpp index 3008a9d2..4942324b 100644 --- a/lib/service/servicedvb.cpp +++ b/lib/service/servicedvb.cpp @@ -1784,13 +1784,14 @@ void eDVBServicePlay::updateDecoder() if (!(m_is_pvr || m_timeshift_active || !m_is_primary)) { m_decoder->setSyncPCR(pcrpid); - if (apid != 1) + if (apid != -1) { ePtr<iDVBDemux> data_demux; - if (h.getDataDemux(data_demux)) + if (!h.getDataDemux(data_demux)) { m_radiotext_parser = new eDVBRadioTextParser(data_demux); m_radiotext_parser->connectUpdatedRadiotext(slot(*this, &eDVBServicePlay::radioTextUpdated), m_radiotext_updated_connection); + m_radiotext_parser->start(apid); } } } @@ -1802,9 +1803,6 @@ void eDVBServicePlay::updateDecoder() if (m_teletext_parser) m_teletext_parser->start(tpid); - if (m_radiotext_parser) - m_radiotext_parser->start(apid); - if (!m_is_primary) m_decoder->setTrickmode(1); |
