1
0
mirror of https://github.com/rofafor/vdr-plugin-iptv.git synced 2023-10-10 13:37:03 +02:00

Modified for vdr-1.5.10.

This commit is contained in:
Rolf Ahrenberg 2007-10-14 18:45:34 +00:00
parent 62b420f65b
commit 0f0c49dce3
10 changed files with 59 additions and 193 deletions

View File

@ -1,6 +1,6 @@
VDR Plugin 'iptv' Revision History
----------------------------------
2007-10-12: Version 0.0.1
2007-10-14: Version 0.0.1
- Initial revision.

View File

@ -1,7 +1,7 @@
#
# Makefile for a Video Disk Recorder plugin
#
# $Id: Makefile,v 1.17 2007/10/05 20:25:58 rahrenbe Exp $
# $Id: Makefile,v 1.18 2007/10/14 18:45:34 rahrenbe Exp $
# Debugging on/off
#IPTV_DEBUG = 1
@ -92,12 +92,12 @@ I18Npot = $(PODIR)/$(PLUGIN).pot
msgfmt -c -o $@ $<
$(I18Npot): $(wildcard *.c)
xgettext -C -cTRANSLATORS --no-wrap -F -k -ktr -ktrNOOP --msgid-bugs-address='Rolf Ahrenberg' -o $@ $(wildcard *.c)
xgettext -C -cTRANSLATORS --no-wrap --no-location -k -ktr -ktrNOOP --msgid-bugs-address='Rolf Ahrenberg' -o $@ $(wildcard *.c)
$(I18Npo): $(I18Npot)
msgmerge -U --no-wrap -F --backup=none -q $@ $<
msgmerge -U --no-wrap --no-location --backup=none -q $@ $<
i18n: $(I18Nmo)
i18n: $(I18Npot) $(I18Nmo)
@mkdir -p $(LOCALEDIR)
for i in $(I18Ndirs); do\
mkdir -p $(LOCALEDIR)/$$i/LC_MESSAGES;\

7
README
View File

@ -17,7 +17,7 @@ See the file COPYING for more information.
Requirements:
An IPTV patched VDR-1.5.9 (or later) setup and DVB compatible MPEG1/2
An IPTV patched VDR-1.5.10 (or later) setup and DVB compatible MPEG1/2
network video streams.
Description:
@ -40,8 +40,7 @@ cd /put/your/path/here/VDR/PLUGINS/src
tar -xzf /put/your/path/here/vdr-iptv-X.Y.Z.tgz
ln -s iptv-X.Y.Z iptv
cd /put/your/path/here/VDR
patch -p1 < PLUGINS/src/iptv/patches/vdr-1.5.x-closefilter.patch
patch -p1 < PLUGINS/src/iptv/patches/vdr-1.5.x-pluginparam.patch
patch -p1 < PLUGINS/src/iptv/patches/vdr-X.Y.Z-pluginparam.patch
cp sources.conf /path/to/vdrconf/
make
make plugins
@ -126,4 +125,4 @@ Notes:
Acknowledgements:
- The IPTV section filtering code is derived from Linux kernel.
- The IPTV section filtering code is derived from Linux kernel.

View File

@ -3,7 +3,7 @@
*
* See the README file for copyright information and how to reach the author.
*
* $Id: device.c,v 1.67 2007/10/11 23:06:49 rahrenbe Exp $
* $Id: device.c,v 1.68 2007/10/14 18:45:34 rahrenbe Exp $
*/
#include "config.h"
@ -279,15 +279,15 @@ int cIptvDevice::OpenFilter(u_short Pid, u_char Tid, u_char Mask)
return -1;
}
bool cIptvDevice::CloseFilter(int Handle)
void cIptvDevice::CloseFilter(int Handle)
{
for (unsigned int i = 0; i < eMaxSecFilterCount; ++i) {
if (secfilters[i] && (Handle == secfilters[i]->GetReadDesc())) {
//debug("cIptvDevice::CloseFilter(%d): %d\n", deviceIndex, Handle);
return DeleteFilter(i);
DeleteFilter(i);
break;
}
}
return false;
}
bool cIptvDevice::OpenDvr(void)

View File

@ -3,7 +3,7 @@
*
* See the README file for copyright information and how to reach the author.
*
* $Id: device.h,v 1.31 2007/10/09 22:12:17 rahrenbe Exp $
* $Id: device.h,v 1.32 2007/10/14 18:45:34 rahrenbe Exp $
*/
#ifndef __IPTV_DEVICE_H
@ -84,7 +84,7 @@ protected:
// for section filtering
public:
virtual int OpenFilter(u_short Pid, u_char Tid, u_char Mask);
virtual bool CloseFilter(int Handle);
virtual void CloseFilter(int Handle);
// for transponder lock
public:

6
iptv.c
View File

@ -3,7 +3,7 @@
*
* See the README file for copyright information and how to reach the author.
*
* $Id: iptv.c,v 1.19 2007/10/12 23:06:33 rahrenbe Exp $
* $Id: iptv.c,v 1.20 2007/10/14 18:45:34 rahrenbe Exp $
*/
#include <getopt.h>
@ -13,6 +13,10 @@
#include "setup.h"
#include "device.h"
#if defined(APIVERSNUM) && APIVERSNUM < 10510
#error "VDR-1.5.10 API version or greater is required!"
#endif
static const char *VERSION = "0.0.1";
static const char *DESCRIPTION = trNOOP("Experience the IPTV");

View File

@ -1,6 +1,6 @@
diff -Nru vdr-1.5.9-vanilla/channels.c vdr-1.5.9-pluginparam/channels.c
--- vdr-1.5.9-vanilla/channels.c 2007-08-26 18:45:20.000000000 +0300
+++ vdr-1.5.9-pluginparam/channels.c 2007-10-07 19:54:06.000000000 +0300
diff -Nru vdr-1.5.10-vanilla/channels.c vdr-1.5.10-pluginparam/channels.c
--- vdr-1.5.10-vanilla/channels.c 2007-10-14 18:21:57.000000000 +0300
+++ vdr-1.5.10-pluginparam/channels.c 2007-10-14 20:31:12.000000000 +0300
@@ -166,6 +166,7 @@
shortName = strdup("");
provider = strdup("");
@ -79,7 +79,7 @@ diff -Nru vdr-1.5.9-vanilla/channels.c vdr-1.5.9-pluginparam/channels.c
#define STRDIFF 0x01
#define VALDIFF 0x02
@@ -579,7 +612,7 @@
@@ -593,7 +626,7 @@
if (isdigit(type))
type = 'S';
#define ST(s) if (strchr(s, type))
@ -88,7 +88,7 @@ diff -Nru vdr-1.5.9-vanilla/channels.c vdr-1.5.9-pluginparam/channels.c
char *q = buffer;
*q = 0;
ST(" S ") q += sprintf(q, "%c", polarization);
@@ -591,6 +624,7 @@
@@ -605,6 +638,7 @@
ST(" T") q += PrintParameter(q, 'T', MapToUser(transmission, TransmissionValues));
ST(" T") q += PrintParameter(q, 'G', MapToUser(guard, GuardValues));
ST(" T") q += PrintParameter(q, 'Y', MapToUser(hierarchy, HierarchyValues));
@ -96,7 +96,7 @@ diff -Nru vdr-1.5.9-vanilla/channels.c vdr-1.5.9-pluginparam/channels.c
return buffer;
}
@@ -612,7 +646,7 @@
@@ -626,7 +660,7 @@
bool cChannel::StringToParameters(const char *s)
{
@ -105,7 +105,7 @@ diff -Nru vdr-1.5.9-vanilla/channels.c vdr-1.5.9-pluginparam/channels.c
switch (toupper(*s)) {
case 'B': s = ParseParameter(s, bandwidth, BandwidthValues); break;
case 'C': s = ParseParameter(s, coderateH, CoderateValues); break;
@@ -722,7 +756,7 @@
@@ -736,7 +770,7 @@
dpids[0] = 0;
ok = false;
if (parambuf && sourcebuf && vpidbuf && apidbuf) {
@ -114,7 +114,7 @@ diff -Nru vdr-1.5.9-vanilla/channels.c vdr-1.5.9-pluginparam/channels.c
char *p = strchr(vpidbuf, '+');
if (p)
@@ -813,6 +847,7 @@
@@ -827,6 +861,7 @@
shortName = strcpyrealloc(shortName, p);
}
name = strcpyrealloc(name, namebuf);
@ -122,9 +122,9 @@ diff -Nru vdr-1.5.9-vanilla/channels.c vdr-1.5.9-pluginparam/channels.c
free(parambuf);
free(sourcebuf);
diff -Nru vdr-1.5.9-vanilla/channels.h vdr-1.5.9-pluginparam/channels.h
--- vdr-1.5.9-vanilla/channels.h 2007-08-26 18:45:20.000000000 +0300
+++ vdr-1.5.9-pluginparam/channels.h 2007-10-07 19:54:06.000000000 +0300
diff -Nru vdr-1.5.10-vanilla/channels.h vdr-1.5.10-pluginparam/channels.h
--- vdr-1.5.10-vanilla/channels.h 2007-10-14 18:21:57.000000000 +0300
+++ vdr-1.5.10-pluginparam/channels.h 2007-10-14 20:32:16.000000000 +0300
@@ -114,6 +114,7 @@
char *shortName;
char *provider;
@ -161,12 +161,12 @@ diff -Nru vdr-1.5.9-vanilla/channels.h vdr-1.5.9-pluginparam/channels.h
void SetName(const char *Name, const char *ShortName, const char *Provider);
void SetPortalName(const char *PortalName);
+ void SetPluginParam(const char *PluginParam);
void SetPids(int Vpid, int Ppid, int *Apids, char ALangs[][MAXLANGCODE2], int *Dpids, char DLangs[][MAXLANGCODE2], int Tpid);
void SetPids(int Vpid, int Ppid, int *Apids, char ALangs[][MAXLANGCODE2], int *Dpids, char DLangs[][MAXLANGCODE2], int *Spids, char SLangs[][MAXLANGCODE2], int Tpid);
void SetCaIds(const int *CaIds); // list must be zero-terminated
void SetCaDescriptors(int Level);
diff -Nru vdr-1.5.9-vanilla/menu.c vdr-1.5.9-pluginparam/menu.c
--- vdr-1.5.9-vanilla/menu.c 2007-08-26 18:45:20.000000000 +0300
+++ vdr-1.5.9-pluginparam/menu.c 2007-10-07 19:54:06.000000000 +0300
diff -Nru vdr-1.5.10-vanilla/menu.c vdr-1.5.10-pluginparam/menu.c
--- vdr-1.5.10-vanilla/menu.c 2007-10-14 18:21:57.000000000 +0300
+++ vdr-1.5.10-pluginparam/menu.c 2007-10-14 20:31:12.000000000 +0300
@@ -219,6 +219,7 @@
cChannel *channel;
cChannel data;
@ -183,7 +183,7 @@ diff -Nru vdr-1.5.9-vanilla/menu.c vdr-1.5.9-pluginparam/menu.c
Add(new cMenuEditStrItem( tr("Name"), name, sizeof(name), tr(FileNameChars)));
Add(new cMenuEditSrcItem( tr("Source"), &data.source));
Add(new cMenuEditIntItem( tr("Frequency"), &data.frequency));
@@ -279,6 +281,7 @@
@@ -281,6 +283,7 @@
ST(" T") Add(new cMenuEditMapItem( tr("Transmission"), &data.transmission, TransmissionValues));
ST(" T") Add(new cMenuEditMapItem( tr("Guard"), &data.guard, GuardValues));
ST(" T") Add(new cMenuEditMapItem( tr("Hierarchy"), &data.hierarchy, HierarchyValues, tr("none")));
@ -191,7 +191,7 @@ diff -Nru vdr-1.5.9-vanilla/menu.c vdr-1.5.9-pluginparam/menu.c
SetCurrent(Get(current));
Display();
@@ -293,6 +296,7 @@
@@ -295,6 +298,7 @@
if (Key == kOk) {
if (Channels.HasUniqueChannelID(&data, channel)) {
data.name = strcpyrealloc(data.name, name);
@ -199,20 +199,19 @@ diff -Nru vdr-1.5.9-vanilla/menu.c vdr-1.5.9-pluginparam/menu.c
if (channel) {
*channel = data;
isyslog("edited channel %d %s", channel->Number(), *data.ToText());
diff -Nru vdr-1.5.9-vanilla/po/fi_FI.po vdr-1.5.9-pluginparam/po/fi_FI.po
--- vdr-1.5.9-vanilla/po/fi_FI.po 2007-08-26 18:45:20.000000000 +0300
+++ vdr-1.5.9-pluginparam/po/fi_FI.po 2007-10-07 19:54:06.000000000 +0300
@@ -1271,3 +1271,7 @@
diff -Nru vdr-1.5.10-vanilla/po/fi_FI.po vdr-1.5.10-pluginparam/po/fi_FI.po
--- vdr-1.5.10-vanilla/po/fi_FI.po 2007-10-14 18:21:57.000000000 +0300
+++ vdr-1.5.10-pluginparam/po/fi_FI.po 2007-10-14 20:34:41.000000000 +0300
@@ -998,3 +998,6 @@
#, c-format
msgid "VDR will shut down in %s minutes"
msgstr "VDR sammuu %s minuutin kuluttua"
+
+#: menu.c:284
+msgid "Parameters"
+msgstr "Parametrit"
diff -Nru vdr-1.5.9-vanilla/sources.c vdr-1.5.9-pluginparam/sources.c
--- vdr-1.5.9-vanilla/sources.c 2007-08-26 18:45:20.000000000 +0300
+++ vdr-1.5.9-pluginparam/sources.c 2007-10-07 19:54:06.000000000 +0300
diff -Nru vdr-1.5.10-vanilla/sources.c vdr-1.5.10-pluginparam/sources.c
--- vdr-1.5.10-vanilla/sources.c 2007-10-14 18:21:57.000000000 +0300
+++ vdr-1.5.10-pluginparam/sources.c 2007-10-14 20:31:12.000000000 +0300
@@ -37,6 +37,7 @@
char buffer[16];
char *q = buffer;
@ -229,9 +228,9 @@ diff -Nru vdr-1.5.9-vanilla/sources.c vdr-1.5.9-pluginparam/sources.c
case 'C': type = stCable; break;
case 'S': type = stSat; break;
case 'T': type = stTerr; break;
diff -Nru vdr-1.5.9-vanilla/sources.conf vdr-1.5.9-pluginparam/sources.conf
--- vdr-1.5.9-vanilla/sources.conf 2007-08-26 18:45:20.000000000 +0300
+++ vdr-1.5.9-pluginparam/sources.conf 2007-10-07 19:54:06.000000000 +0300
diff -Nru vdr-1.5.10-vanilla/sources.conf vdr-1.5.10-pluginparam/sources.conf
--- vdr-1.5.10-vanilla/sources.conf 2007-10-14 18:21:57.000000000 +0300
+++ vdr-1.5.10-pluginparam/sources.conf 2007-10-14 20:31:12.000000000 +0300
@@ -188,3 +188,7 @@
# Terrestrial
@ -240,9 +239,9 @@ diff -Nru vdr-1.5.9-vanilla/sources.conf vdr-1.5.9-pluginparam/sources.conf
+# Plugin
+
+P Plugin
diff -Nru vdr-1.5.9-vanilla/sources.h vdr-1.5.9-pluginparam/sources.h
--- vdr-1.5.9-vanilla/sources.h 2007-08-26 18:45:20.000000000 +0300
+++ vdr-1.5.9-pluginparam/sources.h 2007-10-07 19:54:06.000000000 +0300
diff -Nru vdr-1.5.10-vanilla/sources.h vdr-1.5.10-pluginparam/sources.h
--- vdr-1.5.10-vanilla/sources.h 2007-10-14 18:21:57.000000000 +0300
+++ vdr-1.5.10-pluginparam/sources.h 2007-10-14 20:31:12.000000000 +0300
@@ -16,10 +16,11 @@
public:
enum eSourceType {

View File

@ -1,105 +0,0 @@
diff -Nru vdr-1.5.9-vanilla/PLUGINS.html vdr-1.5.9-closefilter/PLUGINS.html
--- vdr-1.5.9-vanilla/PLUGINS.html 2007-08-24 16:45:02.000000000 +0300
+++ vdr-1.5.9-closefilter/PLUGINS.html 2007-09-28 17:57:47.484049900 +0300
@@ -1778,7 +1778,7 @@
<p><table><tr><td bgcolor=#F0F0F0><pre>
virtual bool ProvidesSource(int Source) const;
virtual bool ProvidesTransponder(const cChannel *Channel) const;
-virtual bool ProvidesChannel(const cChannel *Channel, int Priority = -1, bool *NeedsDetachReceivers = NULL);
+virtual bool ProvidesChannel(const cChannel *Channel, int Priority = -1, bool *NeedsDetachReceivers = NULL) const;
virtual bool SetChannelDevice(const cChannel *Channel, bool LiveView);
</pre></td></tr></table><p>
@@ -1838,7 +1838,7 @@
functionality:
<p><table><tr><td bgcolor=#F0F0F0><pre>
-virtual bool GrabImage(const char *FileName, bool Jpeg = true, int Quality = -1, int Si
+virtual bool GrabImage(const char *FileName, bool Jpeg = true, int Quality = -1, int SizeX = -1, int SizeY = -1);
virtual void SetVideoFormat(bool VideoFormat16_9);
virtual void SetVolumeDevice(int Volume);
</pre></td></tr></table><p>
@@ -1846,14 +1846,15 @@
<p>
<b>Section Filtering</b>
<p>
-If your device provides section filtering capabilities it can implement
-the function
+If your device provides section filtering capabilities it can implement
+functions
<p><table><tr><td bgcolor=#F0F0F0><pre>
virtual int OpenFilter(u_short Pid, u_char Tid, u_char Mask);
+virtual bool CloseFilter(int Handle);
</pre></td></tr></table><p>
-which must open a file handle that delivers section data for the given
+which must open and close a file handle that delivers section data for the given
filter parameters.
<p>
In order to actually start section handling, the
diff -Nru vdr-1.5.9-vanilla/device.c vdr-1.5.9-closefilter/device.c
--- vdr-1.5.9-vanilla/device.c 2007-08-26 14:11:42.000000000 +0300
+++ vdr-1.5.9-closefilter/device.c 2007-09-28 17:53:49.734049900 +0300
@@ -576,6 +576,11 @@
return -1;
}
+bool cDevice::CloseFilter(int Handle)
+{
+ return false;
+}
+
void cDevice::AttachFilter(cFilter *Filter)
{
if (sectionHandler)
diff -Nru vdr-1.5.9-vanilla/device.h vdr-1.5.9-closefilter/device.h
--- vdr-1.5.9-vanilla/device.h 2007-07-22 14:20:13.000000000 +0300
+++ vdr-1.5.9-closefilter/device.h 2007-09-28 17:53:49.749674900 +0300
@@ -303,6 +303,8 @@
///< Opens a file handle for the given filter data.
///< A derived device that provides section data must
///< implement this function.
+ virtual bool CloseFilter(int Handle);
+ ///< Closes a file handle
void AttachFilter(cFilter *Filter);
///< Attaches the given filter to this device.
void Detach(cFilter *Filter);
diff -Nru vdr-1.5.9-vanilla/dvbdevice.c vdr-1.5.9-closefilter/dvbdevice.c
--- vdr-1.5.9-vanilla/dvbdevice.c 2007-08-17 16:37:56.000000000 +0300
+++ vdr-1.5.9-closefilter/dvbdevice.c 2007-09-28 17:53:49.765299900 +0300
@@ -711,6 +711,11 @@
return -1;
}
+bool cDvbDevice::CloseFilter(int Handle)
+{
+ return (close(Handle) == 0);
+}
+
void cDvbDevice::TurnOffLiveMode(bool LiveView)
{
if (LiveView) {
diff -Nru vdr-1.5.9-vanilla/dvbdevice.h vdr-1.5.9-closefilter/dvbdevice.h
--- vdr-1.5.9-vanilla/dvbdevice.h 2007-02-25 14:23:57.000000000 +0200
+++ vdr-1.5.9-closefilter/dvbdevice.h 2007-09-28 17:53:49.765299900 +0300
@@ -83,6 +83,7 @@
protected:
virtual int OpenFilter(u_short Pid, u_char Tid, u_char Mask);
+ virtual bool CloseFilter(int Handle);
// Common Interface facilities:
diff -Nru vdr-1.5.9-vanilla/sections.c vdr-1.5.9-closefilter/sections.c
--- vdr-1.5.9-vanilla/sections.c 2005-09-18 14:30:29.000000000 +0300
+++ vdr-1.5.9-closefilter/sections.c 2007-09-28 17:53:49.780924900 +0300
@@ -105,7 +105,7 @@
for (fh = filterHandles.First(); fh; fh = filterHandles.Next(fh)) {
if (fh->filterData.Is(FilterData->pid, FilterData->tid, FilterData->mask)) {
if (--fh->used <= 0) {
- close(fh->handle);
+ device->CloseFilter(fh->handle);
filterHandles.Del(fh);
break;
}

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 1.5.7\n"
"Report-Msgid-Bugs-To: Rolf Ahrenberg\n"
"POT-Creation-Date: 2007-10-13 01:55+0300\n"
"POT-Creation-Date: 2007-10-14 21:42+0300\n"
"PO-Revision-Date: 2007-08-12 23:22+0300\n"
"Last-Translator: Rolf Ahrenberg\n"
"Language-Team: <vdr@linuxtv.org>\n"
@ -15,131 +15,99 @@ msgstr ""
"Content-Type: text/plain; charset=ISO-8859-15\n"
"Content-Transfer-Encoding: 8bit\n"
#: common.c:45
msgid "PAT (0x00)"
msgstr "PAT (0x00)"
#: common.c:46
msgid "NIT (0x40)"
msgstr "NIT (0x40)"
#: common.c:47
msgid "SDT (0x42)"
msgstr "SDT (0x42)"
#: common.c:48
msgid "EIT (0x4E/0x4F)"
msgstr "EIT (0x4E/0x4F)"
#: common.c:49
msgid "EIT (0x5X)"
msgstr "EIT (0x5X)"
#: common.c:50
msgid "EIT (0x6X)"
msgstr "EIT (0x6X)"
#: common.c:51
msgid "TDT (0x70)"
msgstr "TDT (0x70)"
#: iptv.c:17
msgid "Experience the IPTV"
msgstr "Koe IPTV:n ihmeellinen maailma"
#: setup.c:55
msgid "UDP"
msgstr "UDP"
#: setup.c:56
msgid "HTTP"
msgstr "HTTP"
#: setup.c:57
msgid "FILE"
msgstr "FILE"
#: setup.c:172
msgid "Protocol"
msgstr "Protokolla"
#: setup.c:176
msgid "Delay (ms)"
msgstr "Viive (ms)"
#: setup.c:181
msgid "Address"
msgstr "Osoite"
#: setup.c:182
msgid "Port"
msgstr "Portti"
#: setup.c:197
msgid "Nid"
msgstr "Verkko-ID"
#: setup.c:198
msgid "Tid"
msgstr "Lähete-ID"
#: setup.c:199
msgid "Rid"
msgstr "Radio-ID"
#: setup.c:271
msgid "Cannot find unique channel settings!"
msgstr "Yksilöllisiä kanava-asetuksia ei löydetä!"
#: setup.c:345
msgid "IPTV Channels"
msgstr "IPTV-kanavat"
#: setup.c:495
msgid "IPTV Information"
msgstr "IPTV-tiedot"
#: setup.c:498
msgid "Bits/bytes"
msgstr "Bitit/tavut"
#: setup.c:498
msgid "Filters"
msgstr "Suodattimet"
#: setup.c:498
msgid "General"
msgstr "Yleiset"
#: setup.c:498
msgid "Pids"
msgstr "Pidit"
#: setup.c:511
msgid "Filters"
msgstr "Suodattimet"
msgid "Bits/bytes"
msgstr "Bitit/tavut"
msgid "IPTV information not available!"
msgstr "IPTV-tietoja ei saatavilla!"
#: setup.c:591
msgid "TS buffer size [MB]"
msgstr "TS-puskurin koko [MB]"
#: setup.c:592
msgid "TS buffer prefill ratio [%]"
msgstr "TS-puskurin esitäyttöaste [%]"
#: setup.c:593
msgid "Use section filtering"
msgstr "Käytä sektioiden suodatusta"
#: setup.c:595
msgid "Scan Sid automatically"
msgstr "Etsi palvelu-ID automaattisesti"
#: setup.c:596
msgid "Disable filters"
msgstr "Poista suodattimia käytöstä"
#. TRANSLATORS: note the singular!
#: setup.c:599
msgid "Disable filter"
msgstr "Poista suodatin käytöstä"

View File

@ -3,7 +3,7 @@
*
* See the README file for copyright information and how to reach the author.
*
* $Id: setup.c,v 1.31 2007/10/11 23:34:27 rahrenbe Exp $
* $Id: setup.c,v 1.32 2007/10/14 18:45:34 rahrenbe Exp $
*/
#include <string.h>
@ -144,6 +144,7 @@ void cIptvMenuEditChannel::SetChannelData(cChannel *Channel)
cString param;
char alangs[MAXAPIDS][MAXLANGCODE2] = { "" };
char dlangs[MAXDPIDS][MAXLANGCODE2] = { "" };
char slangs[MAXSPIDS][MAXLANGCODE2] = { "" };
switch (data.protocol) {
case eProtocolFILE:
param = cString::sprintf("IPTV|FILE|%s|%d", data.location, data.port);
@ -156,7 +157,7 @@ void cIptvMenuEditChannel::SetChannelData(cChannel *Channel)
param = cString::sprintf("IPTV|UDP|%s|%d", data.location, data.port);
break;
}
Channel->SetPids(data.vpid, data.ppid, data.apid, alangs, data.dpid, dlangs, data.tpid);
Channel->SetPids(data.vpid, data.ppid, data.apid, alangs, data.dpid, dlangs, data.spid, slangs, data.tpid);
Channel->SetCaIds(data.caids);
Channel->SetId(data.nid, data.tid, data.sid, data.rid);
Channel->SetName(data.name, "", "IPTV");