aboutsummaryrefslogtreecommitdiff
path: root/lib/dvb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/dvb')
-rw-r--r--lib/dvb/Makefile.am64
-rw-r--r--lib/dvb/db.cpp15
-rw-r--r--lib/dvb/frontend.cpp4
-rw-r--r--lib/dvb/lowlevel/Makefile.am3
-rw-r--r--lib/dvb/scan.cpp6
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);
}