diff options
Diffstat (limited to 'lib/service')
| -rw-r--r-- | lib/service/servicedvb.cpp | 6 | ||||
| -rw-r--r-- | lib/service/servicedvb.h | 2 | ||||
| -rw-r--r-- | lib/service/servicemp3.cpp | 13 | ||||
| -rw-r--r-- | lib/service/servicemp3.h | 2 |
4 files changed, 12 insertions, 11 deletions
diff --git a/lib/service/servicedvb.cpp b/lib/service/servicedvb.cpp index e0e6dbca..954a3964 100644 --- a/lib/service/servicedvb.cpp +++ b/lib/service/servicedvb.cpp @@ -1065,7 +1065,9 @@ eDVBServicePlay::eDVBServicePlay(const eServiceReference &ref, eDVBService *serv m_tune_state = -1; - CONNECT(m_subtitle_sync_timer.timeout, eDVBServicePlay::checkSubtitleTiming); + m_subtitle_sync_timer = eTimer::create(eApp); + + CONNECT(m_subtitle_sync_timer->timeout, eDVBServicePlay::checkSubtitleTiming); } eDVBServicePlay::~eDVBServicePlay() @@ -2926,7 +2928,7 @@ void eDVBServicePlay::checkSubtitleTiming() } else { eDebug("start subtitle delay %d", diff / 90); - m_subtitle_sync_timer.start(diff / 90, 1); + m_subtitle_sync_timer->start(diff / 90, 1); break; } } diff --git a/lib/service/servicedvb.h b/lib/service/servicedvb.h index bae0c6e5..85e97ea1 100644 --- a/lib/service/servicedvb.h +++ b/lib/service/servicedvb.h @@ -272,7 +272,7 @@ private: ePtr<eConnection> m_new_dvb_subtitle_page_connection; std::list<eDVBSubtitlePage> m_dvb_subtitle_pages; - eTimer m_subtitle_sync_timer; + ePtr<eTimer> m_subtitle_sync_timer; void checkSubtitleTiming(); /* radiotext */ diff --git a/lib/service/servicemp3.cpp b/lib/service/servicemp3.cpp index 1778e5bb..a453f54f 100644 --- a/lib/service/servicemp3.cpp +++ b/lib/service/servicemp3.cpp @@ -174,14 +174,13 @@ int eStaticServiceMP3Info::getLength(const eServiceReference &ref) eServiceMP3::eServiceMP3(const char *filename): m_filename(filename), m_pump(eApp, 1) { + m_seekTimeout = eTimer::create(eApp); m_stream_tags = 0; - m_audioStreams.clear(); - m_subtitleStreams.clear(); m_currentAudioStream = 0; m_currentSubtitleStream = 0; m_subtitle_widget = 0; m_currentTrickRatio = 0; - CONNECT(m_seekTimeout.timeout, eServiceMP3::seekTimeoutCB); + CONNECT(m_seekTimeout->timeout, eServiceMP3::seekTimeoutCB); CONNECT(m_pump.recv_msg, eServiceMP3::gstPoll); GstElement *source = 0; @@ -527,9 +526,9 @@ RESULT eServiceMP3::setFastForward(int ratio) { m_currentTrickRatio = ratio; if (ratio) - m_seekTimeout.start(1000, 0); + m_seekTimeout->start(1000, 0); else - m_seekTimeout.stop(); + m_seekTimeout->stop(); return 0; } @@ -543,13 +542,13 @@ void eServiceMP3::seekTimeoutCB() if (ppos < 0) { ppos = 0; - m_seekTimeout.stop(); + m_seekTimeout->stop(); } if (ppos > len) { ppos = 0; stop(); - m_seekTimeout.stop(); + m_seekTimeout->stop(); return; } seekTo(ppos); diff --git a/lib/service/servicemp3.h b/lib/service/servicemp3.h index ae12c33a..a43c8ad9 100644 --- a/lib/service/servicemp3.h +++ b/lib/service/servicemp3.h @@ -153,7 +153,7 @@ private: std::vector<subtitleStream> m_subtitleStreams; eSubtitleWidget *m_subtitle_widget; int m_currentTrickRatio; - eTimer m_seekTimeout; + ePtr<eTimer> m_seekTimeout; void seekTimeoutCB(); friend class eServiceFactoryMP3; std::string m_filename; |
