mirror of
https://projects.vdr-developer.org/git/vdr-plugin-streamdev.git
synced 2023-10-10 19:16:51 +02:00
- added gettext support (thanks to Rolf Ahrenberg)
- added vdr-1.6.0-ignore_missing_cam patch - dropped obsolete respect_ca patch - removed legacy code for < VDR 1.5.9 (thanks to Rolf Ahrenberg)
This commit is contained in:
parent
9c60fb4e42
commit
34a62eb2ef
@ -25,6 +25,7 @@ Rolf Ahrenberg
|
||||
for a TS PAT repacker based on Petri Laine's VDR TS recording patch
|
||||
for making it possible to pass parameters to externremux.sh
|
||||
for removing pre VDR 1.4 legacy code
|
||||
for adding gettext support
|
||||
|
||||
Rantanen Teemu
|
||||
for providing vdr-incompletesections.diff
|
||||
|
5
HISTORY
5
HISTORY
@ -1,6 +1,11 @@
|
||||
VDR Plugin 'streamdev' Revision History
|
||||
---------------------------------------
|
||||
|
||||
- added gettext support (thanks to Rolf Ahrenberg)
|
||||
- added vdr-1.6.0-ignore_missing_cam patch
|
||||
- dropped obsolete respect_ca patch
|
||||
- removed legacy code for < VDR 1.5.9 (thanks to Rolf Ahrenberg)
|
||||
|
||||
2008-04-07: Branched v0_4
|
||||
|
||||
- changed location of streamdevhosts.conf to VDRCONFDIR/plugins/streamdev
|
||||
|
34
Makefile
34
Makefile
@ -1,7 +1,7 @@
|
||||
#
|
||||
# Makefile for a Video Disk Recorder plugin
|
||||
#
|
||||
# $Id: Makefile,v 1.15 2008/04/07 14:50:32 schmirl Exp $
|
||||
# $Id: Makefile,v 1.16 2008/04/08 14:18:15 schmirl Exp $
|
||||
|
||||
# The official name of this plugin.
|
||||
# This name will be used in the '-P...' option of VDR to load the plugin.
|
||||
@ -45,7 +45,7 @@ DEFINES += -D_GNU_SOURCE -DPLUGIN_NAME_I18N='"$(PLUGIN)"'
|
||||
|
||||
### The object files (add further files here):
|
||||
|
||||
COMMONOBJS = common.o i18n.o \
|
||||
COMMONOBJS = common.o \
|
||||
\
|
||||
tools/source.o tools/select.o tools/socket.o tools/tools.o
|
||||
|
||||
@ -70,8 +70,8 @@ endif
|
||||
|
||||
### The main target:
|
||||
|
||||
.PHONY: all dist clean
|
||||
all: libvdr-$(PLUGIN)-client.so libvdr-$(PLUGIN)-server.so
|
||||
.PHONY: all i18n dist clean
|
||||
all: libvdr-$(PLUGIN)-client.so libvdr-$(PLUGIN)-server.so i18n
|
||||
|
||||
### Implicit rules:
|
||||
|
||||
@ -96,6 +96,30 @@ endif
|
||||
|
||||
-include $(DEPFILE)
|
||||
|
||||
### Internationalization (I18N):
|
||||
|
||||
PODIR = po
|
||||
LOCALEDIR = $(VDRDIR)/locale
|
||||
I18Npo = $(wildcard $(PODIR)/*.po)
|
||||
I18Nmsgs = $(addprefix $(LOCALEDIR)/, $(addsuffix /LC_MESSAGES/vdr-$(PLUGIN).mo, $(notdir $(foreach file, $(I18Npo), $(basename $(file))))))
|
||||
I18Npot = $(PODIR)/$(PLUGIN).pot
|
||||
|
||||
%.mo: %.po
|
||||
msgfmt -c -o $@ $<
|
||||
|
||||
$(I18Npot): $(CLIENTOBJS:%.o=%.c) $(SERVEROBJS:%.o=%.c) $(COMMONOBJS:%.o=%.c)
|
||||
xgettext -C -cTRANSLATORS --no-wrap --no-location -k -ktr -ktrNOOP --msgid-bugs-address='<http://www.vdr-developer.org/mantisbt/>' -o $@ $^
|
||||
|
||||
%.po: $(I18Npot)
|
||||
msgmerge -U --no-wrap --no-location --backup=none -q $@ $<
|
||||
@touch $@
|
||||
|
||||
$(I18Nmsgs): $(LOCALEDIR)/%/LC_MESSAGES/vdr-$(PLUGIN).mo: $(PODIR)/%.mo
|
||||
@mkdir -p $(dir $@)
|
||||
cp $< $@
|
||||
|
||||
i18n: $(I18Nmsgs)
|
||||
|
||||
### Targets:
|
||||
|
||||
libdvbmpeg/libdvbmpegtools.a: libdvbmpeg/*.c libdvbmpeg/*.h
|
||||
@ -117,5 +141,5 @@ dist: clean
|
||||
@echo Distribution package created as $(PACKAGE).tgz
|
||||
|
||||
clean:
|
||||
@-rm -f $(COMMONOBJS) $(CLIENTOBJS) $(SERVEROBJS) $(DEPFILE) *.so *.tgz core* *~
|
||||
@-rm -f $(COMMONOBJS) $(CLIENTOBJS) $(SERVEROBJS) $(DEPFILE) $(PODIR)/*.mo $(PODIR)/*.pot *.so *.tgz core* *~
|
||||
$(MAKE) -C ./libdvbmpeg clean
|
||||
|
39
README
39
README
@ -15,8 +15,8 @@ Contents:
|
||||
|
||||
1. Description
|
||||
2. Installation
|
||||
2.1 VDR 1.3.X and older
|
||||
2.2 VDR 1.4.X and above
|
||||
2.1 VDR 1.4.x and older
|
||||
2.2 VDR 1.6.0 and above
|
||||
2.3 Updating from streamdev 0.3.x
|
||||
3. Usage
|
||||
3.1 Usage HTTP server
|
||||
@ -96,13 +96,14 @@ location with the -r parameter. The VDR commandline would then include a
|
||||
as otherwise -r will be passed to VDR and not to streamdev.
|
||||
|
||||
|
||||
2.1 VDR 1.3.X and older:
|
||||
2.1 VDR 1.4.x and older:
|
||||
------------------------
|
||||
|
||||
This version is not compatible to VDR releases older than 1.4.0. You will
|
||||
probably need one of the streamdev-0.3.x releases.
|
||||
This version is not compatible to VDR releases older than 1.5.9. Take one of
|
||||
the streamdev-0.4.x releases if you are running at least VDR 1.4.x. For older
|
||||
VDRs you will probably need one of the streamdev-0.3.x releases.
|
||||
|
||||
2.2 VDR 1.4.X and above:
|
||||
2.2 VDR 1.6.0 and above:
|
||||
------------------------
|
||||
|
||||
cd vdr-1.X.X/PLUGINS/src
|
||||
@ -319,3 +320,29 @@ priority than the actual channel switch. The later always uses priority 0.
|
||||
Usually a channel switch for live TV has priority 0 anyway, so it is not a
|
||||
problem here. However timers usually have a higher priority. Either avoid
|
||||
client side recordings or set the priority of client side timers to 0.
|
||||
|
||||
* There have been reports that channel switching with VDR 1.5.x/1.6.x clients
|
||||
sometimes fails. Current version includes a workaround which seems to work, but
|
||||
YMMV ;)
|
||||
|
||||
* Viewing encrypted channels became an issue with VDR's new CAM handling code.
|
||||
Streamdev doesn't provide a (dummy) CAM, so out of the box, VDR won't ever try
|
||||
to receive encrypted channels from streamdev. Pick one of the following
|
||||
solutions to work around the problem:
|
||||
|
||||
1. Force VDR to use streamdev. Open the channels menu on the client (or edit its
|
||||
channels.conf if you know how to do this) and set the CA field of all channels
|
||||
that only the server can decrypt to streamdev's device index. Usually streamdev
|
||||
will get number 9 or 10. Streamdev logs the actual device number when starting
|
||||
up. So please consider the logs for the correct value. Remember to fill in
|
||||
hexadecimal values if you are using an editor to modify your channels.conf
|
||||
(number 10 becomes an "a", number 11 a "b", ...).
|
||||
|
||||
2. Turn encrypted channels into Free-to-Air channels on the client. Again,
|
||||
either enter the channels menu or edit the client's channels.conf. You will
|
||||
also have to disable automatic channel updates on the client or (if streamdev
|
||||
is the only DVB source) disable streamdev's filter streaming feature. Otherwise
|
||||
VDR will revert the channel into an encrypted one.
|
||||
|
||||
3. Apply the patch "patches/vdr-1.6.0-ignore_missing_cam.diff" to your
|
||||
client VDR.
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* $Id: device.c,v 1.18 2008/04/07 14:50:32 schmirl Exp $
|
||||
* $Id: device.c,v 1.19 2008/04/08 14:18:16 schmirl Exp $
|
||||
*/
|
||||
|
||||
#include "client/device.h"
|
||||
@ -190,16 +190,11 @@ void cStreamdevDevice::CloseDvrInt(void) {
|
||||
}
|
||||
|
||||
Dprintf("cStreamdevDevice::CloseDvrInt(): Closing DVR connection\n");
|
||||
#if VDRVERSNUM < 10500
|
||||
DELETENULL(m_TSBuffer);
|
||||
ClientSocket.CloseDvr();
|
||||
#else
|
||||
// Hack for VDR 1.5.x clients (sometimes sending ABRT after TUNE)
|
||||
// TODO: Find a clean solution to fix this
|
||||
ClientSocket.SetChannelDevice(m_Channel);
|
||||
ClientSocket.CloseDvr();
|
||||
DELETENULL(m_TSBuffer);
|
||||
#endif
|
||||
}
|
||||
|
||||
void cStreamdevDevice::CloseDvr(void) {
|
||||
|
@ -1,12 +1,11 @@
|
||||
/*
|
||||
* $Id: setup.c,v 1.5 2008/04/07 14:50:32 schmirl Exp $
|
||||
* $Id: setup.c,v 1.6 2008/04/08 14:18:16 schmirl Exp $
|
||||
*/
|
||||
|
||||
#include <vdr/menuitems.h>
|
||||
|
||||
#include "client/setup.h"
|
||||
#include "client/device.h"
|
||||
#include "i18n.h"
|
||||
|
||||
cStreamdevClientSetup StreamdevClientSetup;
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* $Id: socket.c,v 1.11 2008/04/07 14:40:40 schmirl Exp $
|
||||
* $Id: socket.c,v 1.12 2008/04/08 14:18:16 schmirl Exp $
|
||||
*/
|
||||
|
||||
#include <tools/select.h>
|
||||
@ -14,7 +14,6 @@
|
||||
#include "client/socket.h"
|
||||
#include "client/setup.h"
|
||||
#include "common.h"
|
||||
#include "i18n.h"
|
||||
|
||||
cClientSocket ClientSocket;
|
||||
|
||||
|
11
common.c
11
common.c
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* $Id: common.c,v 1.7 2008/04/07 14:27:27 schmirl Exp $
|
||||
* $Id: common.c,v 1.8 2008/04/08 14:18:15 schmirl Exp $
|
||||
*/
|
||||
|
||||
#include <vdr/channels.h>
|
||||
@ -7,11 +7,10 @@
|
||||
|
||||
#include "common.h"
|
||||
#include "tools/select.h"
|
||||
#include "i18n.h"
|
||||
|
||||
using namespace std;
|
||||
|
||||
const char *VERSION = "0.4.0-pre";
|
||||
const char *VERSION = "0.5.0-pre";
|
||||
|
||||
const char *StreamTypes[st_Count] = {
|
||||
"TS",
|
||||
@ -23,9 +22,9 @@ const char *StreamTypes[st_Count] = {
|
||||
};
|
||||
|
||||
const char *SuspendModes[sm_Count] = {
|
||||
"Offer suspend mode",
|
||||
"Always suspended",
|
||||
"Never suspended"
|
||||
trNOOP("Offer suspend mode"),
|
||||
trNOOP("Always suspended"),
|
||||
trNOOP("Never suspended")
|
||||
};
|
||||
|
||||
const char IpCharacters[] = "0123456789.";
|
||||
|
786
i18n.c
786
i18n.c
@ -1,786 +0,0 @@
|
||||
/*
|
||||
* $Id: i18n.c,v 1.8 2008/04/07 14:50:32 schmirl Exp $
|
||||
*/
|
||||
|
||||
#include "i18n.h"
|
||||
|
||||
const char *i18n_name = NULL;
|
||||
|
||||
const tI18nPhrase Phrases[] = {
|
||||
{ "VDR Streaming Server", // English
|
||||
"VDR Streaming Server", // Deutsch
|
||||
"", // Slovenski
|
||||
"", // Italiano
|
||||
"", // Nederlands
|
||||
"", // Português
|
||||
"", // Français
|
||||
"", // Norsk
|
||||
"VDR-suoratoistopalvelin", // suomi
|
||||
"", // Polski
|
||||
"", // Español
|
||||
"", // Ellinika / Greek
|
||||
"", // Svenska
|
||||
"", // Romaneste
|
||||
"", // Magyar
|
||||
"", // Catala
|
||||
"", // Russian
|
||||
"", // Hrvatski
|
||||
"", // Eesti
|
||||
"", // Dansk
|
||||
"", // Czech
|
||||
#if VDRVERSNUM >= 10502
|
||||
"", // Türkçe
|
||||
#endif
|
||||
},
|
||||
{ "VTP Streaming Client", // English
|
||||
"VTP Streaming Client", // Deutsch
|
||||
"", // Slovenski
|
||||
"", // Italiano
|
||||
"", // Nederlands
|
||||
"", // Português
|
||||
"", // Français
|
||||
"", // Norsk
|
||||
"VTP-suoratoistoasiakas ", // suomi
|
||||
"", // Polski
|
||||
"", // Español
|
||||
"", // Ellinika / Greek
|
||||
"", // Svenska
|
||||
"", // Romaneste
|
||||
"", // Magyar
|
||||
"", // Catala
|
||||
"", // Russian
|
||||
"", // Hrvatski
|
||||
"", // Eesti
|
||||
"", // Dansk
|
||||
"", // Czech
|
||||
#if VDRVERSNUM >= 10502
|
||||
"", // Türkçe
|
||||
#endif
|
||||
},
|
||||
{ "Start VDR-to-VDR Server", // English
|
||||
"VDR-zu-VDR Server starten", // Deutsch
|
||||
"", // Slovenski
|
||||
"Avvia il Server VDR-toVDR", // Italiano
|
||||
"", // Nederlands
|
||||
"", // Português
|
||||
"", // Français
|
||||
"", // Norsk
|
||||
"Käynnistä VDR-palvelin", // suomi
|
||||
"", // Polski
|
||||
"", // Español
|
||||
"", // Ellinika / Greek
|
||||
"", // Svenska
|
||||
"", // Romaneste
|
||||
"", // Magyar
|
||||
"", // Catala
|
||||
"", // Russian
|
||||
"", // Hrvatski
|
||||
"", // Eesti
|
||||
"", // Dansk
|
||||
"", // Czech
|
||||
#if VDRVERSNUM >= 10502
|
||||
"", // Türkçe
|
||||
#endif
|
||||
},
|
||||
{ "Start HTTP Server", // English
|
||||
"HTTP Server starten", // Deutsch
|
||||
"", // Slovenski
|
||||
"Avvia il Server HTTP", // Italiano
|
||||
"", // Nederlands
|
||||
"", // Português
|
||||
"", // Français
|
||||
"", // Norsk
|
||||
"Käynnistä HTTP-palvelin", // suomi
|
||||
"", // Polski
|
||||
"", // Español
|
||||
"", // Ellinika
|
||||
"", // Svenska
|
||||
"", // Romaneste
|
||||
"", // Magyar
|
||||
"", // Catala
|
||||
"", // Russian
|
||||
"", // Hrvatski
|
||||
"", // Eesti
|
||||
"", // Dansk
|
||||
"", // Czech
|
||||
#if VDRVERSNUM >= 10502
|
||||
"", // Türkçe
|
||||
#endif
|
||||
},
|
||||
{ "HTTP Streamtype", // English
|
||||
"HTTP Streamtyp", // Deutsch
|
||||
"", // Slovenski
|
||||
"Tipo di Stream HTTP", // Italiano
|
||||
"", // Nederlands
|
||||
"", // Português
|
||||
"", // Français
|
||||
"", // Norsk
|
||||
"HTTP-lähetysmuoto", // Suomi
|
||||
"", // Polski
|
||||
"", // Español
|
||||
"", // Ellinika
|
||||
"", // Svenska
|
||||
"", // Romaneste
|
||||
"", // Magyar
|
||||
"", // Catala
|
||||
"", // Russian
|
||||
"", // Hrvatski
|
||||
"", // Eesti
|
||||
"", // Dansk
|
||||
"", // Czech
|
||||
#if VDRVERSNUM >= 10502
|
||||
"", // Türkçe
|
||||
#endif
|
||||
},
|
||||
{ "Start Client", // English
|
||||
"Client starten", // Deutsch
|
||||
"", // Slovenski
|
||||
"Avvia il Client", // Italiano
|
||||
"", // Nederlands
|
||||
"", // Português
|
||||
"", // Français
|
||||
"", // Norsk
|
||||
"Käynnistä VDR-asiakas", // suomi
|
||||
"", // Polski
|
||||
"", // Español
|
||||
"", // Ellinika
|
||||
"", // Svenska
|
||||
"", // Romaneste
|
||||
"", // Magyar
|
||||
"", // Catala
|
||||
"", // Russian
|
||||
"", // Hrvatski
|
||||
"", // Eesti
|
||||
"", // Dansk
|
||||
"", // Czech
|
||||
#if VDRVERSNUM >= 10502
|
||||
"", // Türkçe
|
||||
#endif
|
||||
},
|
||||
{ "VDR-to-VDR Server Port", // English
|
||||
"Port des VDR-zu-VDR Servers", // Deutsch
|
||||
"", // Slovenski
|
||||
"Porta del Server VDR-to-VDR", // Italiano
|
||||
"", // Nederlands
|
||||
"", // Português
|
||||
"", // Français
|
||||
"", // Norsk
|
||||
"VDR-palvelimen portti", // Suomi
|
||||
"", // Polski
|
||||
"", // Español
|
||||
"", // Ellinika
|
||||
"", // Svenska
|
||||
"", // Romaneste
|
||||
"", // Magyar
|
||||
"", // Catala
|
||||
"", // Russian
|
||||
"", // Hrvatski
|
||||
"", // Eesti
|
||||
"", // Dansk
|
||||
"", // Czech
|
||||
#if VDRVERSNUM >= 10502
|
||||
"", // Türkçe
|
||||
#endif
|
||||
},
|
||||
{ "HTTP Server Port", // English
|
||||
"Port des HTTP Servers", // Deutsch
|
||||
"", // Slovenski
|
||||
"Porta del Server HTTP", // Italiano
|
||||
"", // Nederlands
|
||||
"", // Português
|
||||
"", // Français
|
||||
"", // Norsk
|
||||
"HTTP-palvelimen portti", // suomi
|
||||
"", // Polski
|
||||
"", // Español
|
||||
"", // Ellinika
|
||||
"", // Svenska
|
||||
"", // Romaneste
|
||||
"", // Magyar
|
||||
"", // Catala
|
||||
"", // Russian
|
||||
"", // Hrvatski
|
||||
"", // Eesti
|
||||
"", // Dansk
|
||||
"", // Czech
|
||||
#if VDRVERSNUM >= 10502
|
||||
"", // Türkçe
|
||||
#endif
|
||||
},
|
||||
{ "Maximum Number of Clients", // English
|
||||
"Maximalanzahl an Clients", // Deutsch
|
||||
"", // Slovenski
|
||||
"Numero Massimo di Client", // Italiano
|
||||
"", // Nederlands
|
||||
"", // Português
|
||||
"", // Français
|
||||
"", // Norsk
|
||||
"Suurin sallittu asiakkaiden määrä", // suomi
|
||||
"", // Polski
|
||||
"", // Español
|
||||
"", // Ellinika
|
||||
"", // Svenska
|
||||
"", // Romaneste
|
||||
"", // Magyar
|
||||
"", // Catala
|
||||
"", // Russian
|
||||
"", // Hrvatski
|
||||
"", // Eesti
|
||||
"", // Dansk
|
||||
"", // Czech
|
||||
#if VDRVERSNUM >= 10502
|
||||
"", // Türkçe
|
||||
#endif
|
||||
},
|
||||
{ "Remote IP", // English
|
||||
"IP der Gegenseite", // Deutsch
|
||||
"", // Slovenski
|
||||
"Indirizzo IP del Server", // Italiano
|
||||
"", // Nederlands
|
||||
"", // Português
|
||||
"", // Français
|
||||
"", // Norsk
|
||||
"Etäkoneen IP-osoite", // suomi
|
||||
"", // Polski
|
||||
"", // Español
|
||||
"", // Ellinika
|
||||
"", // Svenska
|
||||
"", // Romaneste
|
||||
"", // Magyar
|
||||
"", // Catala
|
||||
"", // Russian
|
||||
"", // Hrvatski
|
||||
"", // Eesti
|
||||
"", // Dansk
|
||||
"", // Czech
|
||||
#if VDRVERSNUM >= 10502
|
||||
"", // Türkçe
|
||||
#endif
|
||||
},
|
||||
{ "Remote Port", // English
|
||||
"Port der Gegenseite", // Deutsch
|
||||
"", // Slovenski
|
||||
"Porta del Server Remoto", // Italiano
|
||||
"", // Nederlands
|
||||
"", // Português
|
||||
"", // Français
|
||||
"", // Norsk
|
||||
"Etäkoneen portti", // suomi
|
||||
"", // Polski
|
||||
"", // Español
|
||||
"", // Ellinika
|
||||
"", // Svenska
|
||||
"", // Romaneste
|
||||
"", // Magyar
|
||||
"", // Catala
|
||||
"", // Russian
|
||||
"", // Hrvatski
|
||||
"", // Eesti
|
||||
"", // Dansk
|
||||
"", // Czech
|
||||
#if VDRVERSNUM >= 10502
|
||||
"", // Türkçe
|
||||
#endif
|
||||
},
|
||||
{ "Remote Streamtype", // English
|
||||
"Streamtyp von Gegenseite", // Deutsch
|
||||
"", // Slovenski
|
||||
"Tipo di Stream", // Italiano (oppure Flusso ?)
|
||||
"", // Nederlands
|
||||
"", // Português
|
||||
"", // Français
|
||||
"", // Norsk
|
||||
"Etäkoneen lähetysmuoto", // suomi
|
||||
"", // Polski
|
||||
"", // Español
|
||||
"", // Ellinika
|
||||
"", // Svenska
|
||||
"", // Romaneste
|
||||
"", // Magyar
|
||||
"", // Catala
|
||||
"", // Russian
|
||||
"", // Hrvatski
|
||||
"", // Eesti
|
||||
"", // Dansk
|
||||
"", // Czech
|
||||
#if VDRVERSNUM >= 10502
|
||||
"", // Türkçe
|
||||
#endif
|
||||
},
|
||||
{ "Common Settings", // English
|
||||
"Allgemeines", // Deutsch
|
||||
"", // Slovenski
|
||||
"Settaggi Comuni", // Italiano
|
||||
"", // Nederlands
|
||||
"", // Português
|
||||
"", // Français
|
||||
"", // Norsk
|
||||
"Yleiset asetukset", // suomi
|
||||
"", // Polski
|
||||
"", // Español
|
||||
"", // Ellinika
|
||||
"", // Svenska
|
||||
"", // Romaneste
|
||||
"", // Magyar
|
||||
"", // Catala
|
||||
"", // Russian
|
||||
"", // Hrvatski
|
||||
"", // Eesti
|
||||
"", // Dansk
|
||||
"", // Czech
|
||||
#if VDRVERSNUM >= 10502
|
||||
"", // Türkçe
|
||||
#endif
|
||||
},
|
||||
{ "VDR-to-VDR Server", // English
|
||||
"VDR-zu-VDR Server", // Deutsch
|
||||
"", // Slovenski
|
||||
"Server VDR-to-VDR", // Italiano
|
||||
"", // Nederlands
|
||||
"", // Português
|
||||
"", // Français
|
||||
"", // Norsk
|
||||
"VDR-palvelin", // suomi
|
||||
"", // Polski
|
||||
"", // Español
|
||||
"", // Ellinika
|
||||
"", // Svenska
|
||||
"", // Romaneste
|
||||
"", // Magyar
|
||||
"", // Catala
|
||||
"", // Russian
|
||||
"", // Hrvatski
|
||||
"", // Eesti
|
||||
"", // Dansk
|
||||
"", // Czech
|
||||
#if VDRVERSNUM >= 10502
|
||||
"", // Türkçe
|
||||
#endif
|
||||
},
|
||||
{ "HTTP Server", // English
|
||||
"HTTP Server", // Deutsch
|
||||
"", // Slovenski
|
||||
"Server HTTP", // Italiano
|
||||
"", // Nederlands
|
||||
"", // Português
|
||||
"", // Français
|
||||
"", // Norsk
|
||||
"HTTP-palvelin", // suomi
|
||||
"", // Polski
|
||||
"", // Español
|
||||
"", // Ellinika
|
||||
"", // Svenska
|
||||
"", // Romaneste
|
||||
"", // Magyar
|
||||
"", // Catala
|
||||
"", // Russian
|
||||
"", // Hrvatski
|
||||
"", // Eesti
|
||||
"", // Dansk
|
||||
"", // Czech
|
||||
#if VDRVERSNUM >= 10502
|
||||
"", // Türkçe
|
||||
#endif
|
||||
},
|
||||
{ "VDR-to-VDR Client", // English
|
||||
"VDR-zu-VDR Client", // Deutsch
|
||||
"", // Slovenski
|
||||
"Client VDR-to-VDR", // Italiano
|
||||
"", // Nederlands
|
||||
"", // Português
|
||||
"", // Français
|
||||
"", // Norsk
|
||||
"VDR-asiakas", // suomi
|
||||
"", // Polski
|
||||
"", // Español
|
||||
"", // Ellinika
|
||||
"", // Svenska
|
||||
"", // Romaneste
|
||||
"", // Magyar
|
||||
"", // Catala
|
||||
"", // Russian
|
||||
"", // Hrvatski
|
||||
"", // Eesti
|
||||
"", // Dansk
|
||||
"", // Czech
|
||||
#if VDRVERSNUM >= 10502
|
||||
"", // Türkçe
|
||||
#endif
|
||||
},
|
||||
{ "Please restart VDR to activate changes", // English
|
||||
"Bitte starten Sie für die Änderungen VDR neu", // Deutsch
|
||||
"", // Slovenski
|
||||
"Riavviare VDR per attivare i cambiamenti", // Italiano
|
||||
"", // Nederlands
|
||||
"", // Português
|
||||
"", // Français
|
||||
"", // Norsk
|
||||
"Aktivoi muutokset käynnistämällä VDR uudelleen", // suomi
|
||||
"", // Polski
|
||||
"", // Español
|
||||
"", // Ellinika
|
||||
"", // Svenska
|
||||
"", // Romaneste
|
||||
"", // Magyar
|
||||
"", // Catala
|
||||
"", // Russian
|
||||
"", // Hrvatski
|
||||
"", // Eesti
|
||||
"", // Dansk
|
||||
"", // Czech
|
||||
#if VDRVERSNUM >= 10502
|
||||
"", // Türkçe
|
||||
#endif
|
||||
},
|
||||
{ "Synchronize EPG", // English
|
||||
"EPG synchronisieren", // Deutsch
|
||||
"", // Slovenski
|
||||
"", // Italiano
|
||||
"", // Nederlands
|
||||
"", // Português
|
||||
"", // Français
|
||||
"", // Norsk
|
||||
"Päivitä ohjelmaopas", // suomi
|
||||
"", // Polski
|
||||
"", // Español
|
||||
"", // Ellinika
|
||||
"", // Svenska
|
||||
"", // Romaneste
|
||||
"", // Magyar
|
||||
"", // Catala
|
||||
"", // Russian
|
||||
"", // Hrvatski
|
||||
"", // Eesti
|
||||
"", // Dansk
|
||||
"", // Czech
|
||||
#if VDRVERSNUM >= 10502
|
||||
"", // Türkçe
|
||||
#endif
|
||||
},
|
||||
{ "Suspend Live TV", // English
|
||||
"Live-TV pausieren", // Deutsch
|
||||
"", // Slovenski
|
||||
"", // Italiano
|
||||
"", // Nederlands
|
||||
"", // Português
|
||||
"", // Français
|
||||
"", // Norsk
|
||||
"Pysäytä suora TV-lähetys", // suomi
|
||||
"", // Polski
|
||||
"", // Español
|
||||
"", // Ellinika
|
||||
"", // Svenska
|
||||
"", // Romaneste
|
||||
"", // Magyar
|
||||
"", // Catala
|
||||
"", // Russian
|
||||
"", // Hrvatski
|
||||
"", // Eesti
|
||||
"", // Dansk
|
||||
"", // Czech
|
||||
#if VDRVERSNUM >= 10502
|
||||
"", // Türkçe
|
||||
#endif
|
||||
},
|
||||
{ "Suspend behaviour", // English
|
||||
"Pausierverhalten", // Deutsch
|
||||
"", // Slovenski
|
||||
"", // Italiano
|
||||
"", // Nederlands
|
||||
"", // Português
|
||||
"", // Français
|
||||
"", // Norsk
|
||||
"Pysäytystoiminto", // suomi
|
||||
"", // Polski
|
||||
"", // Español
|
||||
"", // Ellinika
|
||||
"", // Svenska
|
||||
"", // Romaneste
|
||||
"", // Magyar
|
||||
"", // Catala
|
||||
"", // Russian
|
||||
"", // Hrvatski
|
||||
"", // Eesti
|
||||
"", // Dansk
|
||||
"", // Czech
|
||||
#if VDRVERSNUM >= 10502
|
||||
"", // Türkçe
|
||||
#endif
|
||||
},
|
||||
{ "Offer suspend mode", // English
|
||||
"Pausieren anbieten", // Deutsch
|
||||
"", // Slovenski
|
||||
"", // Italiano
|
||||
"", // Nederlands
|
||||
"", // Português
|
||||
"", // Français
|
||||
"", // Norsk
|
||||
"tyrkytä", // suomi
|
||||
"", // Polski
|
||||
"", // Español
|
||||
"", // Ellinika
|
||||
"", // Svenska
|
||||
"", // Romaneste
|
||||
"", // Magyar
|
||||
"", // Catala
|
||||
"", // Russian
|
||||
"", // Hrvatski
|
||||
"", // Eesti
|
||||
"", // Dansk
|
||||
"", // Czech
|
||||
#if VDRVERSNUM >= 10502
|
||||
"", // Türkçe
|
||||
#endif
|
||||
},
|
||||
{ "Always suspended", // English
|
||||
"Immer pausiert", // Deutsch
|
||||
"", // Slovenski
|
||||
"", // Italiano
|
||||
"", // Nederlands
|
||||
"", // Português
|
||||
"", // Français
|
||||
"", // Norsk
|
||||
"aina", // suomi
|
||||
"", // Polski
|
||||
"", // Español
|
||||
"", // Ellinika
|
||||
"", // Svenska
|
||||
"", // Romaneste
|
||||
"", // Magyar
|
||||
"", // Catala
|
||||
"", // Russian
|
||||
"", // Hrvatski
|
||||
"", // Eesti
|
||||
"", // Dansk
|
||||
"", // Czech
|
||||
#if VDRVERSNUM >= 10502
|
||||
"", // Türkçe
|
||||
#endif
|
||||
},
|
||||
{ "Never suspended", // English
|
||||
"Nie pausiert", // Deutsch
|
||||
"", // Slovenski
|
||||
"", // Italiano
|
||||
"", // Nederlands
|
||||
"", // Português
|
||||
"", // Français
|
||||
"", // Norsk
|
||||
"ei koskaan", // suomi
|
||||
"", // Polski
|
||||
"", // Español
|
||||
"", // Ellinika
|
||||
"", // Svenska
|
||||
"", // Romaneste
|
||||
"", // Magyar
|
||||
"", // Catala
|
||||
"", // Russian
|
||||
"", // Hrvatski
|
||||
"", // Eesti
|
||||
"", // Dansk
|
||||
"", // Czech
|
||||
#if VDRVERSNUM >= 10502
|
||||
"", // Türkçe
|
||||
#endif
|
||||
},
|
||||
{ "Suspend Server", // English
|
||||
"Server pausieren", // Deutsch
|
||||
"", // Slovenski
|
||||
"", // Italiano
|
||||
"", // Nederlands
|
||||
"", // Português
|
||||
"", // Français
|
||||
"", // Norsk
|
||||
"Pysäytä palvelin", // suomi
|
||||
"", // Polski
|
||||
"", // Español
|
||||
"", // Ellinika
|
||||
"", // Svenska
|
||||
"", // Romaneste
|
||||
"", // Magyar
|
||||
"", // Catala
|
||||
"", // Russian
|
||||
"", // Hrvatski
|
||||
"", // Eesti
|
||||
"", // Dansk
|
||||
"", // Czech
|
||||
#if VDRVERSNUM >= 10502
|
||||
"", // Türkçe
|
||||
#endif
|
||||
},
|
||||
{ "Server is suspended", // English
|
||||
"Server ist pausiert", // Deutsch
|
||||
"", // Slovenski
|
||||
"", // Italiano
|
||||
"", // Nederlands
|
||||
"", // Português
|
||||
"", // Français
|
||||
"", // Norsk
|
||||
"Palvelin on pysäytetty", // suomi
|
||||
"", // Polski
|
||||
"", // Español
|
||||
"", // Ellinika
|
||||
"", // Svenska
|
||||
"", // Romaneste
|
||||
"", // Magyar
|
||||
"", // Catala
|
||||
"", // Russian
|
||||
"", // Hrvatski
|
||||
"", // Eesti
|
||||
"", // Dansk
|
||||
"", // Czech
|
||||
#if VDRVERSNUM >= 10502
|
||||
"", // Türkçe
|
||||
#endif
|
||||
},
|
||||
{ "Couldn't suspend Server!", // English
|
||||
"Konnte Server nicht pausieren!", // Deutsch
|
||||
"", // Slovenski
|
||||
"", // Italiano
|
||||
"", // Nederlands
|
||||
"", // Português
|
||||
"", // Français
|
||||
"", // Norsk
|
||||
"Palvelinta ei onnistuttu pysäyttämään!", // suomi
|
||||
"", // Polski
|
||||
"", // Español
|
||||
"", // Ellinika
|
||||
"", // Svenska
|
||||
"", // Romaneste
|
||||
"", // Magyar
|
||||
"", // Catala
|
||||
"", // Russian
|
||||
"", // Hrvatski
|
||||
"", // Eesti
|
||||
"", // Dansk
|
||||
"", // Czech
|
||||
#if VDRVERSNUM >= 10502
|
||||
"", // Türkçe
|
||||
#endif
|
||||
},
|
||||
{ "Client may suspend", // English
|
||||
"Client darf pausieren", // Deutsch
|
||||
"", // Slovenski
|
||||
"", // Italiano
|
||||
"", // Nederlands
|
||||
"", // Português
|
||||
"", // Français
|
||||
"", // Norsk
|
||||
"Asiakas saa pysäyttää palvelimen", // suomi
|
||||
"", // Polski
|
||||
"", // Español
|
||||
"", // Ellinika
|
||||
"", // Svenska
|
||||
"", // Romaneste
|
||||
"", // Magyar
|
||||
"", // Catala
|
||||
"", // Russian
|
||||
"", // Hrvatski
|
||||
"", // Eesti
|
||||
"", // Dansk
|
||||
"", // Czech
|
||||
#if VDRVERSNUM >= 10502
|
||||
"", // Türkçe
|
||||
#endif
|
||||
},
|
||||
{ "Bind to IP", // English
|
||||
"", // Deutsch
|
||||
"", // Slovenski
|
||||
"", // Italiano
|
||||
"", // Nederlands
|
||||
"", // Português
|
||||
"", // Français
|
||||
"", // Norsk
|
||||
"Sido osoitteeseen", // suomi
|
||||
"", // Polski
|
||||
"", // Español
|
||||
"", // Ellinika
|
||||
"", // Svenska
|
||||
"", // Romaneste
|
||||
"", // Magyar
|
||||
"", // Catala
|
||||
"", // Russian
|
||||
"", // Hrvatski
|
||||
"", // Eesti
|
||||
"", // Dansk
|
||||
"", // Czech
|
||||
#if VDRVERSNUM >= 10502
|
||||
"", // Türkçe
|
||||
#endif
|
||||
},
|
||||
{ "Filter Streaming", // English
|
||||
"", // Deutsch
|
||||
"", // Slovenski
|
||||
"", // Italiano
|
||||
"", // Nederlands
|
||||
"", // Português
|
||||
"", // Français
|
||||
"", // Norsk
|
||||
"Suodatetun tiedon suoratoisto", // suomi
|
||||
"", // Polski
|
||||
"", // Español
|
||||
"", // Ellinika
|
||||
"", // Svenska
|
||||
"", // Romaneste
|
||||
"", // Magyar
|
||||
"", // Catala
|
||||
"", // Russian
|
||||
"", // Hrvatski
|
||||
"", // Eesti
|
||||
"", // Dansk
|
||||
"", // Czech
|
||||
#if VDRVERSNUM >= 10502
|
||||
"", // Türkçe
|
||||
#endif
|
||||
},
|
||||
{ "Streaming active", // English
|
||||
"Streamen im Gange", // Deutsch
|
||||
"", // Slovenski
|
||||
"", // Italiano
|
||||
"", // Nederlands
|
||||
"", // Português
|
||||
"", // Français
|
||||
"", // Norsk
|
||||
"Suoratoistopalvelin aktiivinen", // suomi
|
||||
"", // Polski
|
||||
"", // Español
|
||||
"", // Ellinika
|
||||
"", // Svenska
|
||||
"", // Romaneste
|
||||
"", // Magyar
|
||||
"", // Catala
|
||||
"", // Russian
|
||||
"", // Hrvatski
|
||||
"", // Eesti
|
||||
"", // Dansk
|
||||
"", // Czech
|
||||
#if VDRVERSNUM >= 10502
|
||||
"", // Türkçe
|
||||
#endif
|
||||
},
|
||||
{ "Hide Mainmenu Entry", // English
|
||||
"Hauptmenüeintrag verstecken", // Deutsch
|
||||
"", // Slovenski
|
||||
"", // Italiano
|
||||
"", // Nederlands
|
||||
"", // Português
|
||||
"", // Français
|
||||
"", // Norsk
|
||||
"Piilota valinta päävalikosta", // suomi
|
||||
"", // Polski
|
||||
"", // Español
|
||||
"", // Ellinika
|
||||
"", // Svenska
|
||||
"", // Romaneste
|
||||
"", // Magyar
|
||||
"", // Catala
|
||||
"", // Russian
|
||||
"", // Hrvatski
|
||||
"", // Eesti
|
||||
"", // Dansk
|
||||
"", // Czech
|
||||
#if VDRVERSNUM >= 10502
|
||||
"", // Türkçe
|
||||
#endif
|
||||
},
|
||||
{ NULL }
|
||||
};
|
16
i18n.h
16
i18n.h
@ -1,16 +0,0 @@
|
||||
/*
|
||||
* $Id: i18n.h,v 1.1 2004/12/30 22:43:58 lordjaxom Exp $
|
||||
*/
|
||||
|
||||
#ifndef VDR_STREAMDEV_I18N_H
|
||||
#define VDR_STREAMDEV_I18N_H
|
||||
|
||||
#include <vdr/i18n.h>
|
||||
|
||||
extern const char *i18n_name;
|
||||
extern const tI18nPhrase Phrases[];
|
||||
|
||||
#undef tr
|
||||
#define tr(s) I18nTranslate(s, i18n_name)
|
||||
|
||||
#endif // VDR_STREAMDEV_I18N_H
|
@ -1,43 +0,0 @@
|
||||
# The cannels.conf ca field can be used to bind a channel to a specific
|
||||
# device. The streamdev-client does not consider this information, so
|
||||
# there's no way to keep VDR from using streamdev for a specific
|
||||
# channel. Apply this patch if you need this feature.
|
||||
#
|
||||
# This fix should probably become part of streamdev. However as it
|
||||
# changes the behaviour of streamdev, I decided to keep it as a separate
|
||||
# patch until there is something like a new official streamdev release.
|
||||
#
|
||||
--- client/device.h.bak 2006-11-09 12:25:21.000000000 +0100
|
||||
+++ client/device.h 2006-11-09 12:26:57.000000000 +0100
|
||||
@@ -50,6 +50,7 @@
|
||||
cStreamdevDevice(void);
|
||||
virtual ~cStreamdevDevice();
|
||||
|
||||
+ virtual int ProvidesCa(const cChannel *Channel) const;
|
||||
virtual bool ProvidesSource(int Source) const;
|
||||
virtual bool ProvidesTransponder(const cChannel *Channel) const;
|
||||
virtual bool ProvidesChannel(const cChannel *Channel, int Priority = -1,
|
||||
--- client/device.c.bak 2006-11-09 12:23:24.000000000 +0100
|
||||
+++ client/device.c 2006-11-09 12:35:48.000000000 +0100
|
||||
@@ -57,6 +57,12 @@
|
||||
#endif
|
||||
}
|
||||
|
||||
+int cStreamdevDevice::ProvidesCa(const cChannel *Channel) const
|
||||
+{
|
||||
+ // Encrypted is acceptable for now. Will ask the server later.
|
||||
+ return Channel->Ca() <= CA_DVB_MAX ? cDevice::ProvidesCa(Channel) : 1;
|
||||
+}
|
||||
+
|
||||
bool cStreamdevDevice::ProvidesSource(int Source) const {
|
||||
Dprintf("ProvidesSource, Source=%d\n", Source);
|
||||
return false;
|
||||
@@ -78,7 +84,7 @@
|
||||
if (ClientSocket.DataSocket(siLive) != NULL
|
||||
&& TRANSPONDER(Channel, m_Channel))
|
||||
res = true;
|
||||
- else {
|
||||
+ else if (ProvidesCa(Channel)) {
|
||||
res = prio && ClientSocket.ProvidesChannel(Channel, Priority);
|
||||
ndr = true;
|
||||
}
|
13
patches/vdr-1.6.0-ignore_missing_cam.diff
Normal file
13
patches/vdr-1.6.0-ignore_missing_cam.diff
Normal file
@ -0,0 +1,13 @@
|
||||
--- device.c.orig 2008-03-28 11:47:25.000000000 +0100
|
||||
+++ device.c 2008-03-28 11:47:09.000000000 +0100
|
||||
@@ -375,8 +375,8 @@
|
||||
}
|
||||
}
|
||||
}
|
||||
- if (!NumUsableSlots)
|
||||
- return NULL; // no CAM is able to decrypt this channel
|
||||
+// if (!NumUsableSlots)
|
||||
+// return NULL; // no CAM is able to decrypt this channel
|
||||
}
|
||||
|
||||
bool NeedsDetachReceivers = false;
|
100
po/de_DE.po
Normal file
100
po/de_DE.po
Normal file
@ -0,0 +1,100 @@
|
||||
# VDR streamdev plugin language source file.
|
||||
# Copyright (C) 2008 streamdev development team. See http://streamdev.vdr-developer.org
|
||||
# This file is distributed under the same license as the VDR streamdev package.
|
||||
# Frank Schmirler <vdrdev@schmirler.de>, 2008
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: streamdev 0.5.0\n"
|
||||
"Report-Msgid-Bugs-To: <http://www.vdr-developer.org/mantisbt/>\n"
|
||||
"POT-Creation-Date: 2008-04-01 17:05+0200\n"
|
||||
"PO-Revision-Date: 2008-03-30 02:11+0200\n"
|
||||
"Last-Translator: Frank Schmirler <vdrdev@schmirler.de>\n"
|
||||
"Language-Team: <vdr@linuxtv.org>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=ISO-8859-15\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
msgid "VTP Streaming Client"
|
||||
msgstr "VTP Streaming Client"
|
||||
|
||||
msgid "Suspend Server"
|
||||
msgstr "Server pausieren"
|
||||
|
||||
msgid "Server is suspended"
|
||||
msgstr "Server ist pausiert"
|
||||
|
||||
msgid "Couldn't suspend Server!"
|
||||
msgstr "Konnte Server nicht pausieren!"
|
||||
|
||||
msgid "Start Client"
|
||||
msgstr "Client starten"
|
||||
|
||||
msgid "Remote IP"
|
||||
msgstr "IP der Gegenseite"
|
||||
|
||||
msgid "Remote Port"
|
||||
msgstr "Port der Gegenseite"
|
||||
|
||||
msgid "Filter Streaming"
|
||||
msgstr "Metainformationen streamen"
|
||||
|
||||
msgid "Synchronize EPG"
|
||||
msgstr "EPG synchronisieren"
|
||||
|
||||
msgid "Hide Mainmenu Entry"
|
||||
msgstr "Hauptmenüeintrag verstecken"
|
||||
|
||||
msgid "VDR Streaming Server"
|
||||
msgstr "VDR Streaming Server"
|
||||
|
||||
msgid "Streaming active"
|
||||
msgstr "Streamen im Gange"
|
||||
|
||||
msgid "Suspend Live TV"
|
||||
msgstr "Live-TV pausieren"
|
||||
|
||||
msgid "Common Settings"
|
||||
msgstr "Allgemeines"
|
||||
|
||||
msgid "Maximum Number of Clients"
|
||||
msgstr "Maximalanzahl an Clients"
|
||||
|
||||
msgid "Suspend behaviour"
|
||||
msgstr "Pausierverhalten"
|
||||
|
||||
msgid "Client may suspend"
|
||||
msgstr "Client darf pausieren"
|
||||
|
||||
msgid "VDR-to-VDR Server"
|
||||
msgstr "VDR-zu-VDR Server"
|
||||
|
||||
msgid "Start VDR-to-VDR Server"
|
||||
msgstr "VDR-zu-VDR Server starten"
|
||||
|
||||
msgid "VDR-to-VDR Server Port"
|
||||
msgstr "Port des VDR-zu-VDR Servers"
|
||||
|
||||
msgid "Bind to IP"
|
||||
msgstr "An bestimmte IP binden"
|
||||
|
||||
msgid "HTTP Server"
|
||||
msgstr "HTTP Server"
|
||||
|
||||
msgid "Start HTTP Server"
|
||||
msgstr "HTTP Server starten"
|
||||
|
||||
msgid "HTTP Server Port"
|
||||
msgstr "Port des HTTP Servers"
|
||||
|
||||
msgid "HTTP Streamtype"
|
||||
msgstr "HTTP Streamtyp"
|
||||
|
||||
msgid "Offer suspend mode"
|
||||
msgstr "Pausieren anbieten"
|
||||
|
||||
msgid "Always suspended"
|
||||
msgstr "Immer pausiert"
|
||||
|
||||
msgid "Never suspended"
|
||||
msgstr "Nie pausiert"
|
100
po/fi_FI.po
Normal file
100
po/fi_FI.po
Normal file
@ -0,0 +1,100 @@
|
||||
# VDR streamdev plugin language source file.
|
||||
# Copyright (C) 2008 streamdev development team. See http://streamdev.vdr-developer.org
|
||||
# This file is distributed under the same license as the VDR streamdev package.
|
||||
# Rolf Ahrenberg <rahrenbe@cc.hut.fi>, 2008
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: streamdev 0.5.0\n"
|
||||
"Report-Msgid-Bugs-To: <http://www.vdr-developer.org/mantisbt/>\n"
|
||||
"POT-Creation-Date: 2008-04-01 17:05+0200\n"
|
||||
"PO-Revision-Date: 2008-03-30 02:11+0200\n"
|
||||
"Last-Translator: Rolf Ahrenberg <rahrenbe@cc.hut.fi>\n"
|
||||
"Language-Team: <vdr@linuxtv.org>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=ISO-8859-15\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
msgid "VTP Streaming Client"
|
||||
msgstr "VTP-suoratoistoasiakas"
|
||||
|
||||
msgid "Suspend Server"
|
||||
msgstr "Pysäytä palvelin"
|
||||
|
||||
msgid "Server is suspended"
|
||||
msgstr "Palvelin on pysäytetty"
|
||||
|
||||
msgid "Couldn't suspend Server!"
|
||||
msgstr "Palvelinta ei onnistuttu pysäyttämään!"
|
||||
|
||||
msgid "Start Client"
|
||||
msgstr "Käynnistä VDR-asiakas"
|
||||
|
||||
msgid "Remote IP"
|
||||
msgstr "Etäkoneen IP-osoite"
|
||||
|
||||
msgid "Remote Port"
|
||||
msgstr "Etäkoneen portti"
|
||||
|
||||
msgid "Filter Streaming"
|
||||
msgstr "Suodatetun tiedon suoratoisto"
|
||||
|
||||
msgid "Synchronize EPG"
|
||||
msgstr "Päivitä ohjelmaopas"
|
||||
|
||||
msgid "Hide Mainmenu Entry"
|
||||
msgstr "Piilota valinta päävalikosta"
|
||||
|
||||
msgid "VDR Streaming Server"
|
||||
msgstr "VDR-suoratoistopalvelin"
|
||||
|
||||
msgid "Streaming active"
|
||||
msgstr "Suoratoistopalvelin aktiivinen"
|
||||
|
||||
msgid "Suspend Live TV"
|
||||
msgstr "Pysäytä suora TV-lähetys"
|
||||
|
||||
msgid "Common Settings"
|
||||
msgstr "Yleiset asetukset"
|
||||
|
||||
msgid "Maximum Number of Clients"
|
||||
msgstr "Suurin sallittu asiakkaiden määrä"
|
||||
|
||||
msgid "Suspend behaviour"
|
||||
msgstr "Pysäytystoiminto"
|
||||
|
||||
msgid "Client may suspend"
|
||||
msgstr "Asiakas saa pysäyttää palvelimen"
|
||||
|
||||
msgid "VDR-to-VDR Server"
|
||||
msgstr "VDR-palvelin"
|
||||
|
||||
msgid "Start VDR-to-VDR Server"
|
||||
msgstr "Käynnistä VDR-palvelin"
|
||||
|
||||
msgid "VDR-to-VDR Server Port"
|
||||
msgstr "VDR-palvelimen portti"
|
||||
|
||||
msgid "Bind to IP"
|
||||
msgstr "Sido osoitteeseen"
|
||||
|
||||
msgid "HTTP Server"
|
||||
msgstr "HTTP-palvelin"
|
||||
|
||||
msgid "Start HTTP Server"
|
||||
msgstr "Käynnistä HTTP-palvelin"
|
||||
|
||||
msgid "HTTP Server Port"
|
||||
msgstr "HTTP-palvelimen portti"
|
||||
|
||||
msgid "HTTP Streamtype"
|
||||
msgstr "HTTP-lähetysmuoto"
|
||||
|
||||
msgid "Offer suspend mode"
|
||||
msgstr "tyrkytä"
|
||||
|
||||
msgid "Always suspended"
|
||||
msgstr "aina"
|
||||
|
||||
msgid "Never suspended"
|
||||
msgstr "ei koskaan"
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* $Id: connection.c,v 1.10 2007/05/07 12:25:11 schmirl Exp $
|
||||
* $Id: connection.c,v 1.11 2008/04/08 14:18:18 schmirl Exp $
|
||||
*/
|
||||
|
||||
#include "server/connection.h"
|
||||
@ -139,11 +139,7 @@ cDevice *cServerConnection::GetDevice(const cChannel *Channel, int Priority)
|
||||
Dprintf(" * GetDevice(const cChannel*, int)\n");
|
||||
Dprintf(" * -------------------------------\n");
|
||||
|
||||
#if VDRVERSNUM < 10500
|
||||
device = cDevice::GetDevice(Channel, Priority);
|
||||
#else
|
||||
device = cDevice::GetDevice(Channel, Priority, false);
|
||||
#endif
|
||||
|
||||
Dprintf(" * Found following device: %p (%d)\n", device,
|
||||
device ? device->CardIndex() + 1 : 0);
|
||||
@ -161,11 +157,7 @@ cDevice *cServerConnection::GetDevice(const cChannel *Channel, int Priority)
|
||||
const cChannel *current = Channels.GetByNumber(cDevice::CurrentChannel());
|
||||
isyslog("streamdev-server: Detaching current receiver");
|
||||
Detach();
|
||||
#if VDRVERSNUM < 10500
|
||||
device = cDevice::GetDevice(Channel, Priority);
|
||||
#else
|
||||
device = cDevice::GetDevice(Channel, Priority, false);
|
||||
#endif
|
||||
Attach();
|
||||
Dprintf(" * Found following device: %p (%d)\n", device,
|
||||
device ? device->CardIndex() + 1 : 0);
|
||||
|
@ -27,23 +27,13 @@ protected:
|
||||
virtual void Receive(uchar *Data, int Length);
|
||||
|
||||
public:
|
||||
#if VDRVERSNUM < 10500
|
||||
cStreamdevLiveReceiver(cStreamdevStreamer *Streamer, int Ca, int Priority, const int *Pids);
|
||||
#else
|
||||
cStreamdevLiveReceiver(cStreamdevStreamer *Streamer, tChannelID ChannelID, int Priority, const int *Pids);
|
||||
#endif
|
||||
virtual ~cStreamdevLiveReceiver();
|
||||
};
|
||||
|
||||
#if VDRVERSNUM < 10500
|
||||
cStreamdevLiveReceiver::cStreamdevLiveReceiver(cStreamdevStreamer *Streamer, int Ca,
|
||||
int Priority, const int *Pids):
|
||||
cReceiver(Ca, Priority, 0, Pids),
|
||||
#else
|
||||
cStreamdevLiveReceiver::cStreamdevLiveReceiver(cStreamdevStreamer *Streamer, tChannelID ChannelID,
|
||||
int Priority, const int *Pids):
|
||||
cReceiver(ChannelID, Priority, 0, Pids),
|
||||
#endif
|
||||
m_Streamer(Streamer)
|
||||
{
|
||||
}
|
||||
@ -434,11 +424,7 @@ void cStreamdevLiveStreamer::StartReceiver(void)
|
||||
DELETENULL(m_Receiver);
|
||||
if (m_NumPids > 0) {
|
||||
Dprintf("Creating Receiver to respect changed pids\n");
|
||||
#if VDRVERSNUM < 10500
|
||||
m_Receiver = new cStreamdevLiveReceiver(this, m_Channel->Ca(), m_Priority, m_Pids);
|
||||
#else
|
||||
m_Receiver = new cStreamdevLiveReceiver(this, m_Channel->GetChannelID(), m_Priority, m_Pids);
|
||||
#endif
|
||||
if (IsRunning() && m_Device != NULL) {
|
||||
Dprintf("Attaching new receiver\n");
|
||||
Attach();
|
||||
|
@ -364,10 +364,8 @@ std::string cHtmlChannelList::ItemText()
|
||||
|
||||
// ******************** cM3uChannelList ******************
|
||||
cM3uChannelList::cM3uChannelList(cChannelIterator *Iterator, const char* Base)
|
||||
: cChannelList(Iterator)
|
||||
#if defined(APIVERSNUM) && APIVERSNUM >= 10503
|
||||
, m_IConv(cCharSetConv::SystemCharacterTable(), "UTF-8")
|
||||
#endif
|
||||
: cChannelList(Iterator),
|
||||
m_IConv(cCharSetConv::SystemCharacterTable(), "UTF-8")
|
||||
{
|
||||
base = strdup(Base);
|
||||
m3uState = msFirst;
|
||||
@ -398,11 +396,7 @@ std::string cM3uChannelList::Next()
|
||||
return "";
|
||||
}
|
||||
|
||||
#if defined(APIVERSNUM) && APIVERSNUM >= 10503
|
||||
std::string name = (std::string) m_IConv.Convert(channel->Name());
|
||||
#else
|
||||
std::string name = channel->Name();
|
||||
#endif
|
||||
|
||||
if (channel->GroupSep())
|
||||
{
|
||||
|
@ -126,9 +126,7 @@ class cM3uChannelList: public cChannelList
|
||||
char *base;
|
||||
enum eM3uState { msFirst, msContinue, msLast };
|
||||
eM3uState m3uState;
|
||||
#if defined(APIVERSNUM) && APIVERSNUM >= 10503
|
||||
cCharSetConv m_IConv;
|
||||
#endif
|
||||
public:
|
||||
virtual std::string HttpHeader() { return cChannelList::HttpHeader() + "Content-type: audio/x-mpegurl\r\n"; };
|
||||
virtual bool HasNext();
|
||||
|
@ -1,12 +1,11 @@
|
||||
/*
|
||||
* $Id: setup.c,v 1.3 2008/04/07 14:50:33 schmirl Exp $
|
||||
* $Id: setup.c,v 1.4 2008/04/08 14:18:18 schmirl Exp $
|
||||
*/
|
||||
|
||||
#include <vdr/menuitems.h>
|
||||
|
||||
#include "server/setup.h"
|
||||
#include "server/server.h"
|
||||
#include "i18n.h"
|
||||
|
||||
cStreamdevServerSetup StreamdevServerSetup;
|
||||
|
||||
|
@ -3,19 +3,18 @@
|
||||
*
|
||||
* See the README file for copyright information and how to reach the author.
|
||||
*
|
||||
* $Id: streamdev-client.c,v 1.5 2008/04/07 14:50:32 schmirl Exp $
|
||||
* $Id: streamdev-client.c,v 1.6 2008/04/08 14:18:15 schmirl Exp $
|
||||
*/
|
||||
|
||||
#include "streamdev-client.h"
|
||||
#include "client/device.h"
|
||||
#include "client/setup.h"
|
||||
#include "i18n.h"
|
||||
|
||||
#if VDRVERSNUM < 10400
|
||||
#error "VDR-1.4.0 or greater is required"
|
||||
#if !defined(APIVERSNUM) || APIVERSNUM < 10509
|
||||
#error "VDR-1.5.9 API version or greater is required!"
|
||||
#endif
|
||||
|
||||
const char *cPluginStreamdevClient::DESCRIPTION = "VTP Streaming Client";
|
||||
const char *cPluginStreamdevClient::DESCRIPTION = trNOOP("VTP Streaming Client");
|
||||
|
||||
cPluginStreamdevClient::cPluginStreamdevClient(void) {
|
||||
}
|
||||
@ -28,11 +27,8 @@ const char *cPluginStreamdevClient::Description(void) {
|
||||
}
|
||||
|
||||
bool cPluginStreamdevClient::Start(void) {
|
||||
i18n_name = Name();
|
||||
RegisterI18n(Phrases);
|
||||
|
||||
I18nRegister(PLUGIN_NAME_I18N);
|
||||
cStreamdevDevice::Init();
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
@ -3,7 +3,7 @@
|
||||
*
|
||||
* See the README file for copyright information and how to reach the author.
|
||||
*
|
||||
* $Id: streamdev-server.c,v 1.7 2008/04/07 14:27:27 schmirl Exp $
|
||||
* $Id: streamdev-server.c,v 1.8 2008/04/08 14:18:15 schmirl Exp $
|
||||
*/
|
||||
|
||||
#include <getopt.h>
|
||||
@ -12,13 +12,12 @@
|
||||
#include "server/server.h"
|
||||
#include "server/suspend.h"
|
||||
#include "remux/extern.h"
|
||||
#include "i18n.h"
|
||||
|
||||
#if VDRVERSNUM < 10400
|
||||
#error "VDR-1.4.0 or greater is required"
|
||||
#if !defined(APIVERSNUM) || APIVERSNUM < 10509
|
||||
#error "VDR-1.5.9 API version or greater is required!"
|
||||
#endif
|
||||
|
||||
const char *cPluginStreamdevServer::DESCRIPTION = "VDR Streaming Server";
|
||||
const char *cPluginStreamdevServer::DESCRIPTION = trNOOP("VDR Streaming Server");
|
||||
|
||||
cPluginStreamdevServer::cPluginStreamdevServer(void)
|
||||
{
|
||||
@ -62,9 +61,7 @@ bool cPluginStreamdevServer::ProcessArgs(int argc, char *argv[])
|
||||
|
||||
bool cPluginStreamdevServer::Start(void)
|
||||
{
|
||||
i18n_name = Name();
|
||||
RegisterI18n(Phrases);
|
||||
|
||||
I18nRegister(PLUGIN_NAME_I18N);
|
||||
if (!StreamdevHosts.Load(STREAMDEVHOSTSPATH, true, true)) {
|
||||
esyslog("streamdev-server: error while loading %s", STREAMDEVHOSTSPATH);
|
||||
fprintf(stderr, "streamdev-server: error while loading %s\n", STREAMDEVHOSTSPATH);
|
||||
|
Loading…
Reference in New Issue
Block a user