/** \fn PlayerContext::StartPlaying(int) * \brief Starts player, must be called after StartRecorder(). * \param maxWait How long to wait for MythPlayer to start playing. * \return true when successful, false otherwise. */ bool PlayerContext::StartPlaying(int maxWait) { if (!player) return false; player->StartPlaying(); maxWait = (maxWait <= 0) ? 20000 : maxWait; #ifdef USING_VALGRIND maxWait = (1<<30); #endif // USING_VALGRIND MythTimer t; t.start(); while (!player->IsPlaying(50, true) && (t.elapsed() < maxWait)) ReloadTVChain(); if (player->IsPlaying()) { LOG(VB_PLAYBACK, LOG_INFO, LOC + QString("StartPlaying(): took %1 ms to start player.") .arg(t.elapsed())); return true; } else { LOG(VB_GENERAL, LOG_ERR, LOC + "StartPlaying() Failed to start player"); StopPlaying(); return false; } }
/** \fn PlayerContext::StartPlaying(int) * \brief Starts player, must be called after StartRecorder(). * \param maxWait How long to wait for MythPlayer to start playing. * \return true when successful, false otherwise. */ bool PlayerContext::StartPlaying(int maxWait) { if (!player) return false; player->StartPlaying(); maxWait = (maxWait <= 0) ? 20000 : maxWait; #ifdef USING_VALGRIND maxWait = (1<<30); #endif // USING_VALGRIND MythTimer t; t.start(); while (!player->IsPlaying(50, true) && (t.elapsed() < maxWait)) ReloadTVChain(); if (player->IsPlaying()) { VERBOSE(VB_PLAYBACK, LOC + "StartPlaying(): took "<<t.elapsed() <<" ms to start player."); return true; } else { VERBOSE(VB_IMPORTANT, LOC_ERR + "StartPlaying() " "Failed to start player"); StopPlaying(); return false; } }