# vdr auf Server als Videorecorder

## ixo

Hallo,

ich plane, mir eine DVB-S Karte zuzulegen, ähnlich wie tazinblack in seinem Thread beschrieben hat. Auch ich kann nichts brachbares für die Planung finden. Meine Anforderungen sind allerdings etwas anders als die von tazinblack, daher macht es - glaube ich - Sinn, einen eigenen Thread zu eröffnen.

Ich habe einen Server (Gentoo) auf Basis eines 800 MHz Duron (64 kB Cache), 512 MB RAM und reichlich Platten. In diesen will ich eine DVB-S Karte PCI Karte stecken (soll nicht allzu teuer sein) - primär um aufnehmen zu können. Als Karte stelle ich mir momentan eine TechniSat SkyStar 2 TV PCI / Sky2PC vor, da diese unter Linux gut laufen soll.

Kann ich mit dieser Kombination folgendes machen:

Filme auf Platte speichern (Videorecorder)?

Diese Filme auf einem andren Rechner sehen? Wie geht das am Besten (nfs, stream)? Kann man den Film dann auch auf einem Windoze sehen (smb oder stream)?

Filme zeitversetzt sehen (auf dem Client sehen, auf dem Server empfangen)?

Wie müsste die Software (VDR) auf Server und Client verteilt werden?

Die Arbeitsplatzrechner sind schnell genug zum Realtime encoden / decoden.

Vielen Dank für Antworten, ixo

----------

## oscarwild

 *ixo wrote:*   

> Filme auf Platte speichern (Videorecorder)?

 

ja.

 *ixo wrote:*   

> Diese Filme auf einem andren Rechner sehen? Wie geht das am Besten (nfs, stream)? Kann man den Film dann auch auf einem Windoze sehen (smb oder stream)?

 

Hierfür gibt es zahlreiche Plugins für den VDR, z.B. das Streamdev

 *ixo wrote:*   

> Filme zeitversetzt sehen (auf dem Client sehen, auf dem Server empfangen)?

 

ja.

 *ixo wrote:*   

> Wie müsste die Software (VDR) auf Server und Client verteilt werden?

 

Siehe Plugins.

----------

## ixo

Schön.

Das heißt, dass die lahme Kiste nichts konvertieren muss (was die CPU überfordern würde).

 :Smile: 

----------

## oscarwild

 *ixo wrote:*   

> was die CPU überfordern würde

 

Die CPU nicht - nur Deine Nerven wegen der Wartezeit  :Wink: 

----------

## ixo

Hallo,

ich habe inzwischen folgende Karte eingebaut:

00:0a.0 Network controller: Techsan Electronics Co Ltd B2C2 FlexCopII DVB chip / Technisat SkyStar2 DVB card (rev 02)

läuft prima.

Ich kann auf dem Server aufnehmen, Streaming von laufenden Sendungen funktioniert mit vdr-streamdev-server auch (mittels mplaxer plugin im firefox), vdradmin tut's auch schon 'mal.

Wenn ich das Ganze richtig verstanden habe, dann muss ich vdr auch auf dem Client starten, um z.B. kvdr nutzen zu können. Leider bekomme ich dann immer die Fehlermeldung:

```
# ./vdr start

 * Caching service dependencies ...                                       [ ok ]

 * Preparing start of vdr:

 *   config files ...                                                     [ ok ]

 *   Waiting for prerequisits (devices nodes etc.) ...

 * could not start vdr: dvb device not found                              [ !! ]

```

Trotz einiger Sucherei habe ich bisher nicht gefunden, wie man vdr beibringt, sich mit dem vdr-Prozess auf dem Server in Verbindung zu setzen. Wo muss man das konfigurieren oder liege ich völlig falsch?

Ach ja, bei der Karte ist noch eine Fernbedingung. Kann man die vom Client zum Server durchschleifen lassen?

Viele Dank für die bisherigen Tips,

Gruß ixo.

----------

## oscarwild

 :Idea:  Du brauchst auf dem Client-Rechner das streamdev-client Plugin.

Ob die Fernbedienung durchschleifbar ist, weiß ich nicht.

----------

## ixo

Ok. Blöd von mir.

Ich hätte auch schreiben sollen, dass ich das natürlich installiert habe.

Wo muss ich konfigurieren, dass vdr (bzw. das Plugin) sich an den Server wenden soll und die Karte nicht lokal sucht?

Gruss ixo.

----------

## oscarwild

In /etc/vdr/setup.conf muss folgendes rein:

```
streamdev-client.RemoteIp = <IP des Servers>

streamdev-client.RemotePort = <Port des Servers, normalerweise 2004>

streamdev-client.StartClient = 1

streamdev-client.StreamFilters = 0

streamdev-client.SyncEPG = 1
```

Wahrscheinlich musst Du das beim ersten mal von Hand eintragen. Würde der VDR hochfahren, könntest Du dort per Menü die Konfiguration machen, aber das ist halt wohl ein Henne-Ei Problem  :Smile: 

----------

## ixo

Klappt nicht.

Auf dem Server habe ich folgende Einträge an die /etc/vdr/setup.conf angehängt:

```
streamdev-server.AllowSuspend = 1

streamdev-server.HTTPBindIP = 0.0.0.0

streamdev-server.HTTPServerPort = 3000

streamdev-server.HTTPStreamType = 1

streamdev-server.MaxClients = 5

streamdev-server.ServerPort = 2004

streamdev-server.StartHTTPServer = 1

streamdev-server.StartServer = 1

streamdev-server.SuspendMode = 1

streamdev-server.VTPBindIP = 0.0.0.0

```

Auf dem Server die von Dir vorgeschlagenen Änderungen. Die Fehlermeldung ist die gleich wie oben geschrieben. In /var/log/messages steht nur:

```
Jun  7 20:03:54 fschjc rc-scripts: could not start vdr: dvb device not found

```

Muss man noch woanders etwas ändern?

----------

## oscarwild

hm...

```
emerge --config vdr-streamdev-client
```

hast Du ausgeführt?

Bzw. ist der streamdev-client in /etc/conf.d/vdr.plugins aufgeführt?

----------

## ixo

Ist schon eine Woche her, dass ich es installiert habe. Ich habe es vorsorglich nochmals aufgerufen. Das ist es leider nicht.

```
# egrep -v '#' /etc/conf.d/vdr.plugins 

streamdev-client

```

```
# vdrplugin-rebuild list

** Packages which I will emerge are:

        =media-plugins/vdr-streamdev-client-0.3.3_pre20051219

```

Irgendwo muss noch ein Eintrag sein, ich kann aber auch mit grep -ir dvb /etc nichts brauchbares finden   :Crying or Very sad: 

----------

## oscarwild

Und was passiert, wenn Du per Kommandozeile mal folgendes ausführst:

```
vdr -Pstreamdev-client
```

 :Question: 

----------

## ixo

(Auf dem Client)

```
# vdr -Pstreamdev-client

vdr: no primary device found - using first device!

# ps ax | grep vdr

15024 pts/0    S+     0:00 grep --colour=auto vdr

#

```

Das ist seltsam. Ich habe auf dem Server in /etc/conf.d/vdr stehen:

 *Quote:*   

> VDR_EXTRA_OPTIONS="-P streamdev-server"

 

Auf dem Client:

 *Quote:*   

> VDR_EXTRA_OPTIONS="-P streamdev-client"

 

(Blank zwischen '-P' und 'streamdev...' weglassen ändert übrigens nichts.)

Auf dem Server wird das berücksichtigt (sieht man mit ps), auf dem Client kommt vdr über das init Skript nicht auf die Beine.

Aber es läuft ja auch mit expliziter Option nicht!?

----------

## oscarwild

Uff... ich fürchte, dann muss ich passen. Auf meinem Rechner läuft das problemlos, allerdings habe ich eine physische DVB-Karte drin.

Manuell starten, Debug-Ausgabe ansehen, und ggf. mal im vdr-Forum nachfragen.

----------

## oscarwild

Habe gerade nochmal nachgesehen; wenn ich das streamdev-client Plugin aktiviere, habe ich im Menüpunkt DVB 3 mögliche DVB-Karten als Primärinterfaces zur Auswahl (physisch verbaut sind 2 Karten), und das, obwohl aktuell gar kein streamdev-Server im Netz ist.

Irgendwie scheint das client-Plugin bei Dir nicht aktiv zu werden. Schau doch mal ins Logfile, vielleicht finden sich dort irgendwelche Hinweise.

----------

## ixo

Wenn ich vdr über die init Skripte starte, erhalte ich:

```
# /etc/init.d/vdr start

 * Caching service dependencies ...                                       [ ok ]

 * Preparing start of vdr:

 *   config files ...                                                     [ ok ]

 *   Waiting for prerequisits (devices nodes etc.) ...

 * could not start vdr: dvb device not found                              [ !! ]
```

In /var/log/messages:

 *Quote:*   

> Jun  8 09:43:41 panne rc-scripts: could not start vdr: dvb device not found

 

Das streamdev Plugin scheint er hier nicht zu berücksichtigen.

Wenn ich vdr explizit starte:

```
# vdr -P streamdev-client

vdr: no primary device found - using first device!
```

In /var/log/messages:

```
Jun  8 09:50:24 panne vdr: [9473] VDR version 1.4.5 started

Jun  8 09:50:24 panne vdr: [9473] Bigpatch 08.10.2006 is active!

Jun  8 09:50:24 panne vdr: [9473] loading plugin: /usr/lib/vdr/plugins/libvdr-streamdev-client.so.1.4.5

Jun  8 09:50:24 panne vdr: [9473] loading /etc/vdr/sources.conf

Jun  8 09:50:24 panne vdr: [9473] loading /etc/vdr/diseqc.conf

Jun  8 09:50:24 panne vdr: [9473] loading /etc/vdr/channels.conf

Jun  8 09:50:24 panne vdr: [9473] loading /etc/vdr/commands.conf

Jun  8 09:50:24 panne vdr: [9473] loading /etc/vdr/reccmds.conf

Jun  8 09:50:24 panne vdr: [9473] loading /etc/vdr/svdrphosts.conf

Jun  8 09:50:24 panne vdr: [9473] loading /etc/vdr/keymacros.conf

Jun  8 09:50:24 panne vdr: [9474] video directory scanner thread started (pid=9473, tid=9474)

Jun  8 09:50:24 panne vdr: [9475] video directory scanner thread started (pid=9473, tid=9475)

Jun  8 09:50:24 panne vdr: [9473] reading EPG data from /video/epg.data

Jun  8 09:50:25 panne vdr: [9474] video directory scanner thread ended (pid=9473, tid=9474)

Jun  8 09:50:25 panne vdr: [9475] video directory scanner thread ended (pid=9473, tid=9475)

Jun  8 09:50:27 panne vdr: [9473] no DVB device found

Jun  8 09:50:27 panne vdr: [9473] initializing plugin: streamdev-client (0.3.3-pre3-geni): VTP Streaming Client

Jun  8 09:50:27 panne vdr: [9473] ERROR: invalid primary device number: 1

Jun  8 09:50:27 panne vdr: [9473] ERROR: no primary device found - using first device!

Jun  8 09:50:27 panne vdr: [9473] ERROR: invalid primary device number: 1

Jun  8 09:50:27 panne vdr: [9473] deleting plugin: streamdev-client

Jun  8 09:50:27 panne vdr: [9473] exiting
```

Das lokale vdr scheint sich mit dem Server vdr irgendwie zu verständigen, denn /video hatte ich 'mal konfiguriert. (Inzwischen nicht mehr, aber irgendwie muss er dass doch noch bekommen. Ich habe einen passenden Link auf dem Client gesetzt, dass sollte / scheint also kein Problem (zu) sein.)

Es sieht so aus, als hätte vdr Probleme mit der 'device number' 1 zu haben. Was bedeutet das?

----------

## tgurr

Die Fehlermeldung bekommst du, da du in deinem Client ja keine DVB Karte hast, ergo kann das Device 1 nicht gefunden werden. Für Abhilfe sollte hier das Softdevice-Plugin sorgen.  *Quote:*   

> Das Plugin dient der MPEG-2-Decodierung in Software, wie auch das xine-plugin. Es wird vom VDR als Ausgabegerät erkannt und ersetzt den Hardwaredecoder der DVB-Karte. Die Ausgabe erfolgt dann auf dem Monitor bzw. über den TV-Out-Anschluss der Grafikkarte. Dabei wird der VDR direkt auf der Textkonsole (Framebuffer) dargestellt. In Verbindung mit dem streamdev-plugin lässt sich damit ein Client ohne Fullfeatured DVB-Karte aufbauen.

  Quelle: http://www.vdr-wiki.de/wiki/index.php/Softdevice-plugin

----------

