diff options
Diffstat (limited to 'lib/dvb')
| -rw-r--r-- | lib/dvb/Makefile.am | 64 | ||||
| -rw-r--r-- | lib/dvb/db.cpp | 15 | ||||
| -rw-r--r-- | lib/dvb/frontend.cpp | 4 | ||||
| -rw-r--r-- | lib/dvb/lowlevel/Makefile.am | 3 | ||||
| -rw-r--r-- | lib/dvb/scan.cpp | 6 |
5 files changed, 74 insertions, 18 deletions
diff --git a/lib/dvb/Makefile.am b/lib/dvb/Makefile.am index b47ffed9..9b337556 100644 --- a/lib/dvb/Makefile.am +++ b/lib/dvb/Makefile.am @@ -1,12 +1,64 @@ SUBDIRS = lowlevel -INCLUDES = \ - -I$(top_srcdir)/include +AM_CPPFLAGS = \ + -I$(top_srcdir) \ + -I$(top_srcdir)/include \ + -include Python.h \ + -include $(top_builddir)/enigma2_config.h noinst_LIBRARIES = libenigma_dvb.a -libenigma_dvb_a_SOURCES = dvb.cpp demux.cpp frontend.cpp esection.cpp db.cpp \ - sec.cpp scan.cpp crc32.cpp pmt.cpp decoder.cpp eit.cpp rotor_calc.cpp \ - epgcache.cpp dvbtime.cpp metaparser.cpp volume.cpp tstools.cpp pvrparse.cpp \ - pesparse.cpp teletext.cpp radiotext.cpp subtitle.cpp +libenigma_dvb_a_SOURCES = \ + crc32.cpp \ + db.cpp \ + decoder.cpp \ + demux.cpp \ + dvb.cpp \ + dvbtime.cpp \ + eit.cpp \ + epgcache.cpp \ + esection.cpp \ + frontend.cpp \ + metaparser.cpp \ + pesparse.cpp \ + pmt.cpp \ + pvrparse.cpp \ + radiotext.cpp \ + rotor_calc.cpp \ + scan.cpp \ + sec.cpp \ + subtitle.cpp \ + teletext.cpp \ + tstools.cpp \ + volume.cpp +dvbincludedir = $(pkgincludedir)/lib/dvb +dvbinclude_HEADERS = \ + crc32.h \ + db.h \ + decoder.h \ + demux.h \ + dvb.h \ + dvbtime.h \ + eit.h \ + epgcache.h \ + esection.h \ + frontend.h \ + frontendparms.h \ + idemux.h \ + idvb.h \ + isection.h \ + list.h \ + metaparser.h \ + pesparse.h \ + pmt.h \ + pvrparse.h \ + radiotext.h \ + rotor_calc.h \ + scan.h \ + sec.h \ + specs.h \ + subtitle.h \ + teletext.h \ + tstools.h \ + volume.h diff --git a/lib/dvb/db.cpp b/lib/dvb/db.cpp index 38be6359..522035eb 100644 --- a/lib/dvb/db.cpp +++ b/lib/dvb/db.cpp @@ -3,6 +3,7 @@ #include <lib/dvb/dvb.h> #include <lib/dvb/frontend.h> #include <lib/dvb/epgcache.h> +#include <lib/base/eenv.h> #include <lib/base/eerror.h> #include <lib/base/estring.h> #include <xmlccwrap/xmlccwrap.h> @@ -73,7 +74,7 @@ RESULT eBouquet::moveService(const eServiceReference &ref, unsigned int pos) RESULT eBouquet::flushChanges() { - FILE *f=fopen((CONFIGDIR"/enigma2/"+m_filename).c_str(), "w"); + FILE *f=fopen(eEnv::resolve("${sysconfdir}/enigma2/" + m_filename).c_str(), "w"); if (!f) return -1; if ( fprintf(f, "#NAME %s\r\n", m_bouquet_name.c_str()) < 0 ) @@ -280,7 +281,7 @@ DEFINE_REF(eDVBDB); void eDVBDB::reloadServicelist() { - loadServicelist(CONFIGDIR"/enigma2/lamedb"); + loadServicelist(eEnv::resolve("${sysconfdir}/enigma2/lamedb").c_str()); } void eDVBDB::parseServiceData(ePtr<eDVBService> s, std::string str) @@ -324,14 +325,14 @@ void eDVBDB::loadServicelist(const char *file) { eDebug("---- opening lame channel db"); FILE *f=fopen(file, "rt"); - if (!f && strcmp(file, CONFIGDIR"/enigma2/lamedb") == 0) + if (!f && strcmp(file, eEnv::resolve("${sysconfdir}/enigma2/lamedb").c_str()) == 0) { struct stat s; if ( !stat("lamedb", &s) ) { - if ( !stat(CONFIGDIR"/enigma2", &s) ) + if ( !stat(eEnv::resolve("${sysconfdir}/enigma2").c_str(), &s) ) { - rename("lamedb", CONFIGDIR"/enigma2/lamedb" ); + rename("lamedb", eEnv::resolve("${sysconfdir}/enigma2/lamedb").c_str()); reloadServicelist(); } } @@ -594,7 +595,7 @@ void eDVBDB::saveServicelist(const char *file) void eDVBDB::saveServicelist() { - saveServicelist(CONFIGDIR"/enigma2/lamedb"); + saveServicelist(eEnv::resolve("${sysconfdir}/enigma2/lamedb").c_str()); } void eDVBDB::loadBouquet(const char *path) @@ -618,7 +619,7 @@ void eDVBDB::loadBouquet(const char *path) std::list<eServiceReference> &list = bouquet.m_services; list.clear(); - std::string p = CONFIGDIR"/enigma2/"; + std::string p = eEnv::resolve("${sysconfdir}/enigma2/"); p+=path; eDebug("loading bouquet... %s", p.c_str()); FILE *fp=fopen(p.c_str(), "rt"); diff --git a/lib/dvb/frontend.cpp b/lib/dvb/frontend.cpp index ebdad8a7..ea9e7385 100644 --- a/lib/dvb/frontend.cpp +++ b/lib/dvb/frontend.cpp @@ -2111,8 +2111,8 @@ RESULT eDVBFrontend::prepare_sat(const eDVBFrontendParametersSatellite &feparm, return -EINVAL; } #if HAVE_DVB_API_VERSION < 5 - parm_inversion |= (feparm.rolloff << 2); // Hack.. we use bit 2..3 of inversion param for rolloff - parm_inversion |= (feparm.pilot << 4); // Hack.. we use bit 4..5 of inversion param for pilot + parm_inversion = (fe_spectral_inversion_t)((feparm.rolloff << 2) | parm_inversion); // Hack.. we use bit 2..3 of inversion param for rolloff + parm_inversion = (fe_spectral_inversion_t)((feparm.pilot << 4) | parm_inversion); // Hack.. we use bit 4..5 of inversion param for pilot if (feparm.modulation == eDVBFrontendParametersSatellite::Modulation_8PSK) { parm_u_qpsk_fec_inner = (fe_code_rate_t)((int)parm_u_qpsk_fec_inner+9); diff --git a/lib/dvb/lowlevel/Makefile.am b/lib/dvb/lowlevel/Makefile.am index 98e89f90..1108097e 100644 --- a/lib/dvb/lowlevel/Makefile.am +++ b/lib/dvb/lowlevel/Makefile.am @@ -1,3 +1,4 @@ -EXTRA_DIST = \ +lowlevelincludedir = $(pkgincludedir)/lib/dvb/lowlevel +lowlevelinclude_HEADERS = \ eit.h \ mhw.h diff --git a/lib/dvb/scan.cpp b/lib/dvb/scan.cpp index b37aa714..d559614c 100644 --- a/lib/dvb/scan.cpp +++ b/lib/dvb/scan.cpp @@ -10,6 +10,7 @@ #include <lib/dvb/esection.h> #include <lib/dvb/scan.h> #include <lib/dvb/frontend.h> +#include <lib/base/eenv.h> #include <lib/base/eerror.h> #include <lib/base/estring.h> #include <lib/python/python.h> @@ -29,7 +30,8 @@ eDVBScan::eDVBScan(iDVBChannel *channel, bool usePAT, bool debug) if (m_channel->getDemux(m_demux)) SCAN_eDebug("scan: failed to allocate demux!"); m_channel->connectStateChange(slot(*this, &eDVBScan::stateChange), m_stateChanged_connection); - FILE *f = fopen("/etc/enigma2/scan_tp_valid_check.py", "r"); + std::string filename = eEnv::resolve("${sysconfdir}/scan_tp_valid_check.py"); + FILE *f = fopen(filename.c_str(), "r"); if (f) { char code[16384]; @@ -37,7 +39,7 @@ eDVBScan::eDVBScan(iDVBChannel *channel, bool usePAT, bool debug) if (rd) { code[rd]=0; - m_additional_tsid_onid_check_func = Py_CompileString(code, "/etc/enigma2/scan_tp_valid_check.py", Py_file_input); + m_additional_tsid_onid_check_func = Py_CompileString(code, filename.c_str(), Py_file_input); } fclose(f); } |
