Merge remote-tracking branch 'check/next-cc'

needs some build-fixing and merge errors are likely :-(

Conflicts:
	configure.ac
	data/icons/start.jpg
	data/locale/deutsch.locale
	data/locale/unmaintained/dutch.locale
	lib/libdvbsub/Makefile.am
	lib/libdvbsub/dvbsubtitle.cpp
	lib/libtuxtxt/Makefile.am
	src/Makefile.am
	src/daemonc/Makefile.am
	src/driver/audiodec/Makefile.am
	src/driver/framebuffer.cpp
	src/driver/framebuffer.h
	src/driver/pictureviewer/Makefile.am
	src/driver/rcinput.cpp
	src/driver/streamts.cpp
	src/driver/volume.cpp
	src/eitd/Makefile.am
	src/gui/Makefile.am
	src/gui/audioplayer.cpp
	src/gui/bedit/Makefile.am
	src/gui/bedit/bouqueteditor_chanselect.cpp
	src/gui/bouquetlist.cpp
	src/gui/channellist.cpp
	src/gui/components/Makefile.am
	src/gui/epgview.cpp
	src/gui/eventlist.cpp
	src/gui/infoviewer.cpp
	src/gui/infoviewer_bb.cpp
	src/gui/keybind_setup.cpp
	src/gui/moviebrowser.cpp
	src/gui/movieplayer.cpp
	src/gui/scan.cpp
	src/gui/scan_setup.cpp
	src/gui/test_menu.cpp
	src/gui/test_menu.h
	src/gui/update.cpp
	src/gui/videosettings.cpp
	src/gui/widget/Makefile.am
	src/gui/widget/buttons.cpp
	src/gui/widget/stringinput.cpp
	src/neutrino.cpp
	src/nhttpd/tuxboxapi/coolstream/Makefile.am
	src/system/Makefile.am
	src/system/setting_helpers.cpp
	src/system/settings.h
	src/zapit/include/zapit/client/zapitclient.h
	src/zapit/include/zapit/femanager.h
	src/zapit/include/zapit/getservices.h
	src/zapit/lib/zapitclient.cpp
	src/zapit/src/Makefile.am
	src/zapit/src/capmt.cpp
	src/zapit/src/femanager.cpp
	src/zapit/src/frontend.cpp
	src/zapit/src/getservices.cpp
This commit is contained in:
Stefan Seyfried
2013-05-10 10:06:47 +02:00
213 changed files with 11183 additions and 4823 deletions

View File

@@ -146,7 +146,8 @@ record_error_msg_t CRecordInstance::Start(CZapitChannel * channel)
time_t msg_start_time = time(0);
CHintBox hintBox(LOCALE_MESSAGEBOX_INFO, g_Locale->getText(LOCALE_RECORDING_START));
hintBox.paint();
if (!(autoshift && g_settings.auto_timeshift))
hintBox.paint();
tsfile = std::string(filename) + ".ts";
@@ -207,8 +208,9 @@ record_error_msg_t CRecordInstance::Start(CZapitChannel * channel)
return RECORD_FAILURE;
}
printf("CRecordInstance::Start: fe %d demux %d\n", frontend->getNumber(), channel->getRecordDemux());
if(!autoshift)
CFEManager::getInstance()->lockFrontend(frontend);//FIXME testing
CFEManager::getInstance()->lockFrontend(frontend, channel);//FIXME testing
start_time = time(0);
SaveXml();
@@ -238,7 +240,8 @@ bool CRecordInstance::Stop(bool remove_event)
recMovieInfo->length = (int) round((double) (end_time - start_time) / (double) 60);
CHintBox hintBox(LOCALE_MESSAGEBOX_INFO, rec_stop_msg.c_str());
hintBox.paint();
if (!(autoshift && g_settings.auto_timeshift))
hintBox.paint();
printf("%s: channel %" PRIx64 " recording_id %d\n", __func__, channel_id, recording_id);
SaveXml();
@@ -246,7 +249,7 @@ bool CRecordInstance::Stop(bool remove_event)
record->Stop();
if(!autoshift)
CFEManager::getInstance()->unlockFrontend(frontend);//FIXME testing
CFEManager::getInstance()->unlockFrontend(frontend, true);//FIXME testing
CCamManager::getInstance()->Stop(channel_id, CCamManager::RECORD);
@@ -673,7 +676,10 @@ void CRecordInstance::GetRecordString(std::string &str)
char stime[15];
int err = GetStatus();
strftime(stime, sizeof(stime), "%H:%M:%S ", localtime(&start_time));
str = stime + channel->getName() + ": " + GetEpgTitle() + ((err & REC_STATUS_OVERFLOW) ? " [!]" : "");
time_t duration = time(0) - start_time;
char dtime[15];
snprintf(dtime, sizeof(dtime), " (%02d:%02d)", (int) duration/3600, (int) duration/60);
str = stime + channel->getName() + ": " + GetEpgTitle() + ((err & REC_STATUS_OVERFLOW) ? " [!]" : "") + dtime;
}
//-------------------------------------------------------------------------
@@ -862,6 +868,8 @@ bool CRecordManager::Record(const CTimerd::RecordingInfo * const eventinfo, cons
printf("%s channel_id %" PRIx64 " epg: %" PRIx64 ", apidmode 0x%X\n", __func__,
eventinfo->channel_id, eventinfo->epgID, eventinfo->apids);
if (g_settings.recording_type == CNeutrinoApp::RECORDING_OFF)
return false;
#if 0
if(!CheckRecording(eventinfo))
return false;
@@ -1310,7 +1318,7 @@ void CRecordManager::StartTimeshift()
if(res)
{
CMoviePlayerGui::getInstance().exec(NULL, tmode);
if(g_settings.temp_timeshift)
if(g_settings.temp_timeshift && !g_settings.auto_timeshift)
ShowMenu();
}
}
@@ -1318,6 +1326,9 @@ void CRecordManager::StartTimeshift()
int CRecordManager::exec(CMenuTarget* parent, const std::string & actionKey )
{
if (g_settings.recording_type == CNeutrinoApp::RECORDING_OFF)
return menu_return::RETURN_REPAINT;
if(parent)
parent->hide();
@@ -1597,12 +1608,12 @@ bool CRecordManager::CutBackNeutrino(const t_channel_id channel_id, CFrontend *
/* first try to get frontend for record with locked live */
bool unlock = true;
CFEManager::getInstance()->lockFrontend(live_fe);
frontend = CFEManager::getInstance()->allocateFE(channel);
frontend = CFEManager::getInstance()->allocateFE(channel, true);
if (frontend == NULL) {
/* no frontend, try again with unlocked live */
unlock = false;
CFEManager::getInstance()->unlockFrontend(live_fe);
frontend = CFEManager::getInstance()->allocateFE(channel);
frontend = CFEManager::getInstance()->allocateFE(channel, true);
}
if (frontend == NULL)
return false;
@@ -1632,7 +1643,22 @@ bool CRecordManager::CutBackNeutrino(const t_channel_id channel_id, CFrontend *
if (unlock)
CFEManager::getInstance()->unlockFrontend(live_fe);
}
#ifdef DYNAMIC_DEMUX
else {
frontend = CFEManager::getInstance()->allocateFE(channel, true);
}
printf("%s: record demux: %d\n", __FUNCTION__, channel->getRecordDemux());
if (channel->getRecordDemux() == 0)
ret = false;
#endif
if(ret) {
#ifdef ENABLE_PIP
/* FIXME until proper demux management */
t_channel_id pip_channel_id = CZapit::getInstance()->GetPipChannelID();
if ((pip_channel_id == channel_id) && (channel->getRecordDemux() == channel->getPipDemux()))
g_Zapit->stopPip();
#endif
if(StopSectionsd) {
printf("%s: g_Sectionsd->setPauseScanning(true)\n", __FUNCTION__);
g_Sectionsd->setPauseScanning(true);