vuplus: relevant pids routing

Conflicts:
	src/neutrino.cpp
	src/system/settings.h
	src/zapit/include/zapit/zapit.h


Origin commit data
------------------
Commit: 9b5d99819b
Author: BPanther <bpanther_ts@hotmail.com>
Date: 2020-01-18 (Sat, 18 Jan 2020)
This commit is contained in:
BPanther
2020-01-18 11:36:58 +01:00
committed by vanhofen
parent 344b4dd60c
commit 7c83e05f01
9 changed files with 34 additions and 17 deletions

View File

@@ -344,6 +344,7 @@ ci.rec_zapto Umschalten bei Aufnahmen mit CAM
ci.removed CAM entfernt -> Slot
ci.reset Reset
ci.reset_standby Reset nach Standby
ci.rpr Relevant PIDs Routing
ci.save_pincode Jugendschutz-PIN speichern
ci.settings Zugangskontrolle
ci.timeout CAM antwortet nicht

View File

@@ -344,6 +344,7 @@ ci.rec_zapto Zap when recording needs CAM
ci.removed CAM removed from slot
ci.reset Reset
ci.reset_standby Reset after standby
ci.rpr Relevant PIDs routing
ci.save_pincode Save pincode
ci.settings Conditional access
ci.timeout Timeout waiting CI menu ready

View File

@@ -158,6 +158,7 @@ int CCAMMenuHandler::doMainMenu()
if(CiSlots) {
#if BOXMODEL_VUPLUS
cammenu->addItem(new CMenuOptionChooser(LOCALE_CI_DELAY, &g_settings.ci_delay, CI_DELAY_OPTIONS, CI_DELAY_OPTION_COUNT, true, this));
cammenu->addItem(new CMenuOptionChooser(LOCALE_CI_RPR, &g_settings.ci_rpr, OPTIONS_OFF0_ON1_OPTIONS, OPTIONS_OFF0_ON1_OPTION_COUNT, true));
#endif
cammenu->addItem(new CMenuOptionChooser(LOCALE_CI_RESET_STANDBY, &g_settings.ci_standby_reset, OPTIONS_OFF0_ON1_OPTIONS, OPTIONS_OFF0_ON1_OPTION_COUNT, true));
#if HAVE_ARM_HARDWARE || HAVE_MIPS_HARDWARE
@@ -616,6 +617,11 @@ bool CCAMMenuHandler::changeNotify(const neutrino_locale_t OptionName, void * Da
ca->SetCIDelay(g_settings.ci_delay);
return true;
}
else if (ARE_LOCALES_EQUAL(OptionName, LOCALE_CI_RPR)) {
printf("CCAMMenuHandler::changeNotify: ci_delay %d\n", g_settings.ci_rpr);
ca->SetCIRelevantPidsRouting(g_settings.ci_rpr);
return true;
}
else
#endif
if (ARE_LOCALES_EQUAL(OptionName, LOCALE_CI_CLOCK)) {

View File

@@ -483,17 +483,18 @@ int CNeutrinoApp::loadSetup(const char * fname)
g_settings.ci_standby_reset = configfile.getInt32("ci_standby_reset", 0);
#if HAVE_ARM_HARDWARE || HAVE_MIPS_HARDWARE
g_settings.ci_clock = configfile.getInt32("ci_clock", 6);
g_settings.ci_clock = configfile.getInt32("ci_clock", 6); // TODO: for each slot
#else
g_settings.ci_clock = configfile.getInt32("ci_clock", 9);
g_settings.ci_clock = configfile.getInt32("ci_clock", 9); // TODO: for each slot
#endif
#if BOXMODEL_VUPLUS
g_settings.ci_delay = configfile.getInt32("ci_delay", 256);
g_settings.ci_rpr = configfile.getInt32("ci_rpr", 0); // TODO: for each slot
#endif
g_settings.ci_ignore_messages = configfile.getInt32("ci_ignore_messages", 0);
g_settings.ci_save_pincode = configfile.getInt32("ci_save_pincode", 0);
g_settings.ci_ignore_messages = configfile.getInt32("ci_ignore_messages", 0); // TODO: for each slot
g_settings.ci_save_pincode = configfile.getInt32("ci_save_pincode", 0); // TODO: for each slot
g_settings.ci_check_live = configfile.getInt32("ci_check_live", 0);
g_settings.ci_pincode = configfile.getString("ci_pincode", "");
g_settings.ci_pincode = configfile.getString("ci_pincode", ""); // TODO: for each slot
g_settings.ci_tuner = configfile.getInt32("ci_tuner", -1);
g_settings.ci_rec_zapto = configfile.getInt32("ci_rec_zapto", 0); //NI
g_settings.ci_mode = configfile.getInt32("ci_mode", 0); //NI
@@ -1478,14 +1479,15 @@ void CNeutrinoApp::saveSetup(const char * fname)
configfile.setInt32( "standby_cpufreq", g_settings.standby_cpufreq);
configfile.setInt32("ci_standby_reset", g_settings.ci_standby_reset);
configfile.setInt32("ci_clock", g_settings.ci_clock);
configfile.setInt32("ci_clock", g_settings.ci_clock); // TODO: for each slot
#if BOXMODEL_VUPLUS
configfile.setInt32("ci_delay", g_settings.ci_delay);
configfile.setInt32("ci_delay", g_settings.ci_delay); // TODO: for each slot
configfile.setInt32("ci_rpr", g_settings.ci_rpr); // TODO: for each slot
#endif
configfile.setInt32("ci_ignore_messages", g_settings.ci_ignore_messages);
configfile.setInt32("ci_save_pincode", g_settings.ci_save_pincode);
configfile.setInt32("ci_ignore_messages", g_settings.ci_ignore_messages); // TODO: for each slot
configfile.setInt32("ci_save_pincode", g_settings.ci_save_pincode); // TODO: for each slot
configfile.setInt32("ci_check_live", g_settings.ci_check_live);
configfile.setString("ci_pincode", g_settings.ci_pincode);
configfile.setString("ci_pincode", g_settings.ci_pincode); // TODO: for each slot
configfile.setInt32("ci_tuner", g_settings.ci_tuner);
configfile.setInt32("ci_rec_zapto", g_settings.ci_rec_zapto); //NI
configfile.setInt32("ci_mode", g_settings.ci_mode); //NI
@@ -2744,9 +2746,10 @@ TIMER_START();
ZapStart_arg.startchannelradio_id = g_settings.startchannelradio_id;
ZapStart_arg.uselastchannel = g_settings.uselastchannel;
ZapStart_arg.video_mode = g_settings.video_Mode;
ZapStart_arg.ci_clock = g_settings.ci_clock;
ZapStart_arg.ci_clock = g_settings.ci_clock; // TODO: for each slot
#if BOXMODEL_VUPLUS
ZapStart_arg.ci_delay = g_settings.ci_delay;
ZapStart_arg.ci_delay = g_settings.ci_delay; // TODO: for each slot
ZapStart_arg.ci_rpr = g_settings.ci_rpr; // TODO: for each slot
#endif
ZapStart_arg.volume = g_settings.hdmi_cec_volume ? 85 : g_settings.current_volume;
ZapStart_arg.webtv_xml = &g_settings.webtv_xml;

View File

@@ -371,6 +371,7 @@ typedef enum
LOCALE_CI_REMOVED,
LOCALE_CI_RESET,
LOCALE_CI_RESET_STANDBY,
LOCALE_CI_RPR,
LOCALE_CI_SAVE_PINCODE,
LOCALE_CI_SETTINGS,
LOCALE_CI_TIMEOUT,

View File

@@ -371,6 +371,7 @@ const char * locale_real_names[] =
"ci.removed",
"ci.reset",
"ci.reset_standby",
"ci.rpr",
"ci.save_pincode",
"ci.settings",
"ci.timeout",

View File

@@ -285,17 +285,18 @@ struct SNeutrinoSettings
int avsync;
int clockrec;
int ci_standby_reset;
int ci_clock;
int ci_clock; // TODO: for each slot
#if BOXMODEL_VUPLUS
int ci_delay;
int ci_rpr; // TODO: for each slot
#endif
int ci_ignore_messages;
int ci_save_pincode;
int ci_ignore_messages; // TODO: for each slot
int ci_save_pincode; // TODO: for each slot
int ci_check_live;
int ci_tuner;
int ci_rec_zapto; //NI
int ci_mode; //NI
std::string ci_pincode;
std::string ci_pincode; // TODO: for each slot
int radiotext_enable;
int webradio_xml_auto;
int webtv_xml_auto;

View File

@@ -44,9 +44,10 @@ typedef struct ZAPIT_start_arg
int video_mode;
uint32_t osd_resolution;
int volume;
int ci_clock;
int ci_clock; // TODO: for each slot
#if BOXMODEL_VUPLUS
int ci_delay;
int ci_rpr; // TODO: for each slot
#endif
std::list<std::string> *webtv_xml;
std::list<std::string> *webradio_xml;

View File

@@ -2600,6 +2600,8 @@ bool CZapit::Start(Z_start_arg *ZapStart_arg)
#if BOXMODEL_VUPLUS
//dvb wait delay for ci response
ca->SetCIDelay(ZapStart_arg->ci_delay);
/// relevant pids routing
ca->SetCIRelevantPidsRouting(ZapStart_arg->ci_rpr);
#endif
eventServer = new CEventServer;