summaryrefslogtreecommitdiff
path: root/remux/extern.c
diff options
context:
space:
mode:
authorFrank Schmirler <vdr@schmirler.de>2010-12-02 09:02:31 +0100
committerFrank Schmirler <vdr@schmirler.de>2010-12-02 09:04:50 +0100
commit31df0eaf8e49bc1cfea755bd88f3dd795c8f1ace (patch)
treeedc73b2c6e6af1c2b5d19521fae3a5347dad659d /remux/extern.c
parent7576173547027dae57206cfd3d967d5c516fa6b7 (diff)
downloadvdr-plugin-streamdev-31df0eaf8e49bc1cfea755bd88f3dd795c8f1ace.tar.gz
vdr-plugin-streamdev-31df0eaf8e49bc1cfea755bd88f3dd795c8f1ace.tar.bz2
Streamdev 0.3.4
Diffstat (limited to 'remux/extern.c')
-rw-r--r--remux/extern.c13
1 files changed, 6 insertions, 7 deletions
diff --git a/remux/extern.c b/remux/extern.c
index 01d4b33..e137c4a 100644
--- a/remux/extern.c
+++ b/remux/extern.c
@@ -19,13 +19,13 @@ protected:
virtual void Action(void);
public:
- cTSExt(cRingBufferLinear *ResultBuffer);
+ cTSExt(cRingBufferLinear *ResultBuffer, std::string Parameter);
virtual ~cTSExt();
void Put(const uchar *Data, int Count);
};
-cTSExt::cTSExt(cRingBufferLinear *ResultBuffer):
+cTSExt::cTSExt(cRingBufferLinear *ResultBuffer, std::string Parameter):
m_ResultBuffer(ResultBuffer),
m_Active(false),
m_Process(0),
@@ -67,9 +67,8 @@ cTSExt::cTSExt(cRingBufferLinear *ResultBuffer):
for (int i = STDERR_FILENO + 1; i < MaxPossibleFileDescriptors; i++)
close(i); //close all dup'ed filedescriptors
- //printf("starting externremux.sh\n");
- execl("/bin/sh", "sh", "-c", g_ExternRemux, NULL);
- //printf("failed externremux.sh\n");
+ std::string cmd = std::string(g_ExternRemux) + " " + Parameter;
+ execl("/bin/sh", "sh", "-c", cmd.c_str(), NULL);
_exit(-1);
}
@@ -150,9 +149,9 @@ void cTSExt::Put(const uchar *Data, int Count)
}
}
-cExternRemux::cExternRemux(int VPid, const int *APids, const int *Dpids, const int *SPids):
+cExternRemux::cExternRemux(int VPid, const int *APids, const int *Dpids, const int *SPids, std::string Parameter):
m_ResultBuffer(new cRingBufferLinear(WRITERBUFSIZE, TS_SIZE * 2)),
- m_Remux(new cTSExt(m_ResultBuffer))
+ m_Remux(new cTSExt(m_ResultBuffer, Parameter))
{
m_ResultBuffer->SetTimeouts(500, 100);
}