diff --git a/src/gui/movieplayer.cpp b/src/gui/movieplayer.cpp index 683b4594b..54313ddf9 100644 --- a/src/gui/movieplayer.cpp +++ b/src/gui/movieplayer.cpp @@ -1483,6 +1483,7 @@ void CMoviePlayerGui::PlayFileLoop(void) updateLcd(); } if (first_start) { + usleep(50000); callInfoViewer(); first_start = false; } @@ -2074,7 +2075,7 @@ void CMoviePlayerGui::callInfoViewer(bool init_vzap_it) if (p_movie_info) { - if(duration == 0) + if(duration <= 0) UpdatePosition(); MI_MOVIE_INFO *mi; @@ -2101,14 +2102,12 @@ void CMoviePlayerGui::callInfoViewer(bool init_vzap_it) g_InfoViewer->showMovieTitle(playstate, mi->epgId >>16, channelName, mi->epgTitle, mi->epgInfo1, duration, position, repeat_mode, init_vzap_it ? 0 /*IV_MODE_DEFAULT*/ : 1 /*IV_MODE_VIRTUAL_ZAP*/); - unlink("/tmp/cover.jpg"); return; } /* not moviebrowser => use the filename as title */ CVFD::getInstance()->ShowText(pretty_name.c_str()); g_InfoViewer->showMovieTitle(playstate, 0, pretty_name, info_1, info_2, duration, position, repeat_mode); - unlink("/tmp/cover.jpg"); } bool CMoviePlayerGui::getAudioName(int apid, std::string &apidtitle) @@ -2557,7 +2556,7 @@ void CMoviePlayerGui::handleMovieBrowser(neutrino_msg_t msg, int /*position*/) void CMoviePlayerGui::UpdatePosition() { - if (playback->GetPosition(position, duration)) { + while (!playback->GetPosition(position, duration)) { if (duration > 100) file_prozent = (unsigned char) (position / (duration / 100)); FileTimeOSD->update(position, duration);