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

Enabled partial content responses for HTTP protocol.

Updated README and PO headers.
This commit is contained in:
Rolf Ahrenberg 2010-09-10 10:54:06 +03:00
parent d126da8ed8
commit d1fdc390c9
12 changed files with 36 additions and 19 deletions

View File

@ -142,7 +142,7 @@ VDR Plugin 'iptv' Revision History
- Updated for vdr-1.7.15. - Updated for vdr-1.7.15.
2010-xx-xx: Version 0.4.3 2010-09-09: Version 0.4.3
- Renamed Sid scanner to section id scanner and added - Renamed Sid scanner to section id scanner and added
experimental Tid/Nid support into it. experimental Tid/Nid support into it.
@ -150,3 +150,4 @@ VDR Plugin 'iptv' Revision History
- Fixed audio pid detection in pid scanner. - Fixed audio pid detection in pid scanner.
- Changed ProvidesChannel() to set the need of detaching - Changed ProvidesChannel() to set the need of detaching
receivers due to VDR's channel selection mechanism. receivers due to VDR's channel selection mechanism.
- Enabled partial content responses for HTTP protocol.

View File

@ -18,7 +18,7 @@ PLUGIN = iptv
### The version number of this plugin (taken from the main source file): ### The version number of this plugin (taken from the main source file):
VERSION = $(shell grep 'static const char VERSION\[\] *=' $(PLUGIN).c | awk '{ print $$6 }' | sed -e 's/[";]//g') VERSION = $(shell grep 'const char VERSION\[\] *=' $(PLUGIN).c | awk '{ print $$5 }' | sed -e 's/[";]//g')
### The C++ compiler and options: ### The C++ compiler and options:

7
README
View File

@ -154,6 +154,13 @@ Notes:
script and the iptvstream-notrap.sh script should be used instead in these script and the iptvstream-notrap.sh script should be used instead in these
cases. cases.
- If received MPEG-2 TS streams carry CA descriptors, you'll have to apply
"disable_ca_updates" patch to the VDR in order to get rid of "Channel not
available" messages.
- EIT scanning functionality can be disabled for all IPTV channels by applying
the "disable_eitscan" patch to the VDR.
Acknowledgements: Acknowledgements:
- The IPTV section filtering code is derived from Linux kernel. - The IPTV section filtering code is derived from Linux kernel.

View File

@ -77,5 +77,7 @@ struct section_filter_table_type {
extern const section_filter_table_type section_filter_table[SECTION_FILTER_TABLE_SIZE]; extern const section_filter_table_type section_filter_table[SECTION_FILTER_TABLE_SIZE];
extern const char VERSION[];
#endif // __IPTV_COMMON_H #endif // __IPTV_COMMON_H

2
iptv.c
View File

@ -16,7 +16,7 @@
#error "VDR-1.7.15 API version or greater is required!" #error "VDR-1.7.15 API version or greater is required!"
#endif #endif
static const char VERSION[] = "0.4.3"; const char VERSION[] = "0.4.3";
static const char DESCRIPTION[] = trNOOP("Experience the IPTV"); static const char DESCRIPTION[] = trNOOP("Experience the IPTV");
class cPluginIptv : public cPlugin { class cPluginIptv : public cPlugin {

View File

@ -7,10 +7,11 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: iptv 0.4.3\n" "Project-Id-Version: iptv 0.4.3\n"
"Report-Msgid-Bugs-To: <see README>\n" "Report-Msgid-Bugs-To: <see README>\n"
"POT-Creation-Date: 2010-07-02 21:05+0300\n" "POT-Creation-Date: 2010-09-09 09:09+0300\n"
"PO-Revision-Date: 2007-10-29 21:19+0100\n" "PO-Revision-Date: 2010-09-09 09:09+0300\n"
"Last-Translator: Tobias Grimm <tg@e-tobi.net>\n" "Last-Translator: Tobias Grimm <tg@e-tobi.net>\n"
"Language-Team: German\n" "Language-Team: German\n"
"Language: de\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n" "Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"

View File

@ -7,10 +7,11 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: iptv 0.4.3\n" "Project-Id-Version: iptv 0.4.3\n"
"Report-Msgid-Bugs-To: <see README>\n" "Report-Msgid-Bugs-To: <see README>\n"
"POT-Creation-Date: 2010-07-02 21:05+0300\n" "POT-Creation-Date: 2010-09-09 09:09+0300\n"
"PO-Revision-Date: 2007-08-12 23:22+0300\n" "PO-Revision-Date: 2010-09-09 09:09+0300\n"
"Last-Translator: Rolf Ahrenberg\n" "Last-Translator: Rolf Ahrenberg\n"
"Language-Team: <vdr@linuxtv.org>\n" "Language-Team: <vdr@linuxtv.org>\n"
"Language: fi\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"

View File

@ -8,10 +8,11 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: iptv 0.4.3\n" "Project-Id-Version: iptv 0.4.3\n"
"Report-Msgid-Bugs-To: <see README>\n" "Report-Msgid-Bugs-To: <see README>\n"
"POT-Creation-Date: 2010-07-02 21:05+0300\n" "POT-Creation-Date: 2010-09-09 09:09+0300\n"
"PO-Revision-Date: 2008-01-26 13:14+0100\n" "PO-Revision-Date: 2010-09-09 09:09+0300\n"
"Last-Translator: NIVAL Michaël <mnival@club-internet.fr>\n" "Last-Translator: NIVAL Michaël <mnival@club-internet.fr>\n"
"Language-Team: French\n" "Language-Team: French\n"
"Language: fr\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n" "Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"

View File

@ -7,10 +7,11 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: iptv 0.4.3\n" "Project-Id-Version: iptv 0.4.3\n"
"Report-Msgid-Bugs-To: <see README>\n" "Report-Msgid-Bugs-To: <see README>\n"
"POT-Creation-Date: 2010-07-02 21:05+0300\n" "POT-Creation-Date: 2010-09-09 09:09+0300\n"
"PO-Revision-Date: 2008-07-13 03:28+0100\n" "PO-Revision-Date: 2010-09-09 09:09+0300\n"
"Last-Translator: Diego Pierotto <vdr-italian@tiscali.it>\n" "Last-Translator: Diego Pierotto <vdr-italian@tiscali.it>\n"
"Language-Team: Italian\n" "Language-Team: Italian\n"
"Language: it\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n" "Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"

View File

@ -7,10 +7,11 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: iptv 0.4.3\n" "Project-Id-Version: iptv 0.4.3\n"
"Report-Msgid-Bugs-To: <see README>\n" "Report-Msgid-Bugs-To: <see README>\n"
"POT-Creation-Date: 2010-07-02 21:05+0300\n" "POT-Creation-Date: 2010-09-09 09:09+0300\n"
"PO-Revision-Date: 2007-10-29 21:19+0100\n" "PO-Revision-Date: 2010-09-09 09:09+0300\n"
"Last-Translator: Carel\n" "Last-Translator: Carel\n"
"Language-Team: Dutch\n" "Language-Team: Dutch\n"
"Language: nl\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n" "Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"

View File

@ -7,10 +7,11 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: iptv 0.4.3\n" "Project-Id-Version: iptv 0.4.3\n"
"Report-Msgid-Bugs-To: <see README>\n" "Report-Msgid-Bugs-To: <see README>\n"
"POT-Creation-Date: 2010-07-02 21:05+0300\n" "POT-Creation-Date: 2010-09-09 09:09+0300\n"
"PO-Revision-Date: 2008-03-16 12:14+0100\n" "PO-Revision-Date: 2010-09-09 09:09+0300\n"
"Last-Translator: Alexander Gross <Bikalexander@gmail.com>\n" "Last-Translator: Alexander Gross <Bikalexander@gmail.com>\n"
"Language-Team: Russian <de@li.org>\n" "Language-Team: Russian <de@li.org>\n"
"Language: ru\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"

View File

@ -85,10 +85,10 @@ bool cIptvProtocolHttp::Connect(void)
// Formulate and send HTTP request // Formulate and send HTTP request
cString buffer = cString::sprintf("GET %s HTTP/1.1\r\n" cString buffer = cString::sprintf("GET %s HTTP/1.1\r\n"
"Host: %s\r\n" "Host: %s\r\n"
"User-Agent: vdr-iptv\r\n" "User-Agent: vdr-%s/%s\r\n"
"Range: bytes=0-\r\n" "Range: bytes=0-\r\n"
"Connection: Close\r\n" "Connection: Close\r\n"
"\r\n", streamPath, streamAddr); "\r\n", streamPath, streamAddr, PLUGIN_NAME_I18N, VERSION);
debug("Sending http request: %s\n", *buffer); debug("Sending http request: %s\n", *buffer);
ssize_t err2 = send(socketDesc, buffer, strlen(buffer), 0); ssize_t err2 = send(socketDesc, buffer, strlen(buffer), 0);
@ -189,8 +189,9 @@ bool cIptvProtocolHttp::ProcessHeaders(void)
} }
else else
responseFound = true; responseFound = true;
if (response != 200) { // Allow only 'OK' and 'Partial Content'
error("%s\n", buf); if ((response != 200) && (response != 206)) {
error("Invalid HTTP response (%d): %s\n", response, buf);
return false; return false;
} }
} }