diff --git a/src/gui/movieplayer.cpp b/src/gui/movieplayer.cpp index 91f34906a..855f2d0c3 100644 --- a/src/gui/movieplayer.cpp +++ b/src/gui/movieplayer.cpp @@ -898,11 +898,24 @@ void* CMoviePlayerGui::bgPlayThread(void *arg) mutex.unlock(); while(webtv_started) { - if (mp->playback->GetPosition(mp->position, mp->duration)) { + if (mp->playback->GetPosition(mp->position, mp->duration, mp->isWebChannel)) { if (pos == mp->position) - eof++; + if (mp->isWebChannel) +#if defined (BOXMODEL_VUPLUS_ARM) + eof = 6; +#else + { + if (eof == 5) + eof = 6; + else + eof = 5; + } +#endif + else + eof++; else eof = 0; + if (eof > 5) { printf("CMoviePlayerGui::bgPlayThread: playback stopped, try to rezap...\n"); g_RCInput->postMsg(NeutrinoMessages::EVT_WEBTV_ZAP_COMPLETE, (neutrino_msg_data_t) chid); @@ -1419,7 +1432,7 @@ bool CMoviePlayerGui::PlayFileStart(void) towait = 20; } for(i = 0; i < cnt; i++) { - playback->GetPosition(position, duration); + playback->GetPosition(position, duration, isWebChannel); startposition = (duration - position); //printf("CMoviePlayerGui::PlayFile: waiting for data, position %d duration %d (%d), start %d\n", position, duration, towait, startposition); @@ -1594,7 +1607,7 @@ void CMoviePlayerGui::PlayFileLoop(void) if ((playstate >= CMoviePlayerGui::PLAY) && (timeshift != TSHIFT_MODE_OFF || (playstate != CMoviePlayerGui::PAUSE))) { - if (playback->GetPosition(position, duration)) { + if (playback->GetPosition(position, duration, isWebChannel)) { FileTimeOSD->update(position, duration); if (duration > 100) file_prozent = (unsigned char) (position / (duration / 100)); @@ -1891,7 +1904,7 @@ void CMoviePlayerGui::PlayFileLoop(void) handleMovieBrowser(CRCInput::RC_0, position); } else if (msg == (neutrino_msg_t) g_settings.mpkey_goto) { bool cancel = true; - playback->GetPosition(position, duration); + playback->GetPosition(position, duration, isWebChannel); int ss = position/1000; int hh = ss/3600; ss -= hh * 3600; @@ -2546,7 +2559,7 @@ void CMoviePlayerGui::handleMovieBrowser(neutrino_msg_t msg, int /*position*/) void CMoviePlayerGui::UpdatePosition() { - if (!playback->GetPosition(position, duration)) { + if (!playback->GetPosition(position, duration, isWebChannel)) { if ((position > duration && g_settings.timing[SNeutrinoSettings::TIMING_INFOBAR_RADIO] == 0 && IsAudioPlaying()) || \ (position > duration && g_settings.timing[SNeutrinoSettings::TIMING_INFOBAR_MOVIE] == 0 && !IsAudioPlaying())) g_RCInput->postMsg (CRCInput::RC_home, 0);