Analogtv-plugin

Aus VDR Wiki
(Unterschied zwischen Versionen)
Wechseln zu: Navigation, Suche
(Beschreibung)
 
(35 dazwischenliegende Versionen von 19 Benutzern werden nicht angezeigt)
Zeile 2: Zeile 2:
 
'''Autor:''' Andreas Kool
 
'''Autor:''' Andreas Kool
  
Mit diesem Plugin ist es möglich, analoges TV mit VDR zu benutzen. Die Ausgabe erfolgt über das DVB-Ausgabegerät, d.h. das Plugin verhält sich dem VDR gegenüber wie eine Budget-DVB-Karte.
+
Dieses Plugin war das erste Plugin, welches analoges TV in VDR ermöglichte.
  
Unterstützt werden analoge TV-Karten (mit und ohne Hardware-MPEG-encoder) und Video-Grabber Karten, es kann also vom analogen TV-Tuner, Videorekorder o.ä. angeschaut und aufgezeichnet werden.
+
{{Box Hinweis|'''BITTE NICHT MEHR AUF DIESES PLUGIN IN VDR-WIKIs VERWEISEN.'''<br>Dieses Plugin ist seit Jahren verweist, hat keine offizielle Homepage mehr, nicht mehr mit aktuellen VDR Versionen funktionierend und ohne Änderungen nicht mehr verwendbar. Bitte benutzt und empfehlt das [[pvrinput-plugin]] anstelle dieses Plugins.}}
  
-- Mir scheint, die Weiterentwicklung dieses Plugins stagniert ein wenig. Ich konnte die 0.9.37 trotz einiger Patches (s.u.) nicht mit aktuellem gcc4+VDR13 zum Laufen bekommen. Falls man sowieso eine Karte mit HW-Encoder hat, sollte man sich vielleicht als Alternativen die Plugins [[Pvrinput-plugin|pvrinput]] oder [[Ptv-plugin|ptv]] genauer anschauen (siehe dazu z.B. auch die Portal Threads [http://www.vdr-portal.de/board/thread.php?threadid=40742 40742] und [http://www.vdr-portal.de/board/thread.php?threadid=38144 38144]. --[[Benutzer:Gernot|Gernot]] 10:08, 16. Nov 2005 (CET)
 
  
==Bilder==
+
==Links==
[[Bild:analogtv-plugin.jpg|thumb|none|''Einstellungen'']]
+
# [[pvrinput-plugin]]
  
==Hardwareanforderungen==
+
[[Kategorie:Veraltete Plugins]]
* Man benötigt eine [[Analog-TV]]-Karte. Diese Karte muss entweder vom bttv Treiber, dem ivtv Treiber oder dem pvrusb2 Treiber unterstützt werden.
+
{{i18n|analogtv-plugin}}
* Weiterhin ist ein Realtime [[MPEG]]-Encoder nötig, entweder in Hardware, s.h. Hauppauge PVR250/350/PVR USB2, oder als Software (s.u.).
+
 
+
==Softwareanforderungen==
+
* Wenn kein Hardware-[[MPEG]]-Encoder mit linux-Treiberunterstützung auf der TV-Karte drauf ist, ist ein Software-Encoder nötig. Idealerweise mp1e oder ffmpeg.
+
* Bei PVR 250/350 neuesten Treiber von [http://www.ivtvdriver.org/index.php/Main_Page ivtvdriver.org]. Beim Laden sicherstellen, dass ivtv vor den dvb Treibern geladen wird oder aber die channels.conf entsprechend angepaßt wird.
+
* libdvb
+
* Video4Linux2 (v4l2) (entfällt für PVR Karten)
+
* ALSA (entfällt für PVR Karten)
+
 
+
==Installation==
+
<pre>
+
cd $SOURCEDIR
+
tar xvzf libdvb-<VERSION>.tar.gz
+
cd libdvb-<VERSION>
+
make
+
make install
+
ldconfig
+
</pre>
+
 
+
Plugin ist zu patchen.
+
 
+
<pre>
+
--- VDR.org/PLUGINS/src/analogtv-0.9.37/player-analogtv.c 2005-07-07 16:32:50.000000000 +0200
+
+++ VDR/PLUGINS/src/analogtv-0.9.37/player-analogtv.c 2005-07-07 16:36:30.000000000 +0200
+
@@ -28,7 +28,6 @@
+
#include <sys/soundcard.h>
+
 
+
#include <transform.h>
+
-extern void pes_in_ts(p2p *p);
+
#undef MIN
+
#undef MAX
+
 
+
@@ -828,7 +827,7 @@
+
                pes++;
+
                spes += r;
+
+
-                get_pes(buffer, r, &p2t, pes_in_ts); // PES -> TS
+
+                kpes_to_ts(&p2t, buffer, r);
+
              }
+
            }
+
          }
+
@@ -937,7 +936,7 @@
+
      spes += r;
+
 
+
      if (r > 0)
+
-        get_pes(buffer, r, &p2t, pes_in_ts); // PES -> TS
+
+        kpes_to_ts(&p2t, buffer, r); // PES -> TS
+
    }
+
  }
+
</pre>
+
 
+
Der Rest der Installation folgt der README und README.de des Plugins.
+
Hinweis: Für ivtv > 0.1.9 muss VPID=301, APID=300 in der channels.conf verwendet werden.
+
 
+
Ein Grundgerüst für eine analoge channels.conf findet sich [[channels.conf_analog|hier]].
+
 
+
==Probleme==
+
*nur eine TV-Karte möglich.
+
*Stottern nach Kanalwechsel, Abhilfe mit [http://cvs.sourceforge.net/viewcvs.py/vdr-analogtv/analogtv/patches/?sortby=date#dirlist vdr-1.3.23-stuttering.patch (VDR >= 1.3.23!)]
+
*Compilerfehler '''cpu_accel.c:63: error: can't find a register in class `BREG' while reloading `asm' ''': Abhilfe: Patch für die cpuid Funktion, damit diese sich mit -fPIC kompilieren läßt:
+
<pre>
+
diff -ru analogtv-0.9.37.orig/cpu_accel.c analogtv-0.9.37/cpu_accel.c
+
--- analogtv-0.9.37.orig/cpu_accel.c 2005-05-13 23:49:38.000000000 +0200
+
+++ analogtv-0.9.37/cpu_accel.c 2005-05-13 23:57:49.000000000 +0200
+
@@ -50,30 +50,44 @@
+
    int AMD;
+
    uint32_t caps;
+
+
+#if !defined(PIC) && !defined(__PIC__)
+
#define cpuid(op,eax,ebx,ecx,edx) \
+
-    asm ("cpuid" \
+
+    __asm__ ("cpuid" \
+
: "=a" (eax), \
+
  "=b" (ebx), \
+
  "=c" (ecx), \
+
  "=d" (edx) \
+
: "a" (op) \
+
: "cc")
+
+#else  /* PIC version : save ebx */
+
+#define cpuid(op,eax,ebx,ecx,edx)      \
+
+    __asm__ ("push %%ebx\n\t"          \
+
+            "cpuid\n\t"                \
+
+            "movl %%ebx,%1\n\t"        \
+
+            "pop %%ebx"                \
+
+            : "=a" (eax),              \
+
+              "=r" (ebx),              \
+
+              "=c" (ecx),              \
+
+              "=d" (edx)              \
+
+            : "a" (op)                \
+
+            : "cc")
+
+#endif
+
+
   
+
-    asm ("pushfl\n\t"
+
- "pushfl\n\t"
+
- "popl %0\n\t"
+
- "movl %0,%1\n\t"
+
- "xorl $0x200000,%0\n\t"
+
- "pushl %0\n\t"
+
- "popfl\n\t"
+
- "pushfl\n\t"
+
- "popl %0\n\t"
+
- "popfl"
+
-        : "=a" (eax),
+
-   "=b" (ebx)
+
- :
+
- : "cc");
+
+  __asm__ ("pushf\n\t"
+
+            "pushf\n\t"
+
+            "pop %0\n\t"
+
+            "movl %0,%1\n\t"
+
+            "xorl $0x200000,%0\n\t"
+
+            "push %0\n\t"
+
+            "popf\n\t"
+
+            "pushf\n\t"
+
+            "pop %0\n\t"
+
+            "popf"
+
+            : "=r" (eax),
+
+              "=r" (ebx)
+
+            :
+
+            : "cc");
+
+
    if (eax == ebx) /* no cpuid */
+
      return 0;
+
</pre>
+
 
+
==Snapshot==
+
<pre>cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/vdr-analogtv login
+
cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/vdr-analogtv co analogtv</pre>
+
 
+
==Links==
+
{|
+
| [1]
+
| http://www.akool.homepage.t-online.de/index.html
+
| Homepage des Plugins
+
|-
+
| [2]
+
| http://sourceforge.net/projects/vdr-analogtv
+
| Projektseite auf Sourceforge
+
|-
+
| [3]
+
| http://www.ivtvdriver.org/index.php/Main_Page
+
| neue IVTV Treiber
+
|-
+
| [4]
+
| http://www.metzlerbros.org/dvb/index.html
+
| Libdvb
+
|-
+
| [5]
+
| [[Kanal PAL|Kanalliste Pal]]
+
| Zuordnung Kanal-Frequenz
+
|-
+
| [6]
+
| http://ivtv.writeme.ch
+
| IVTV Wiki
+
|-
+
| [7]
+
| [[channels.conf analog]]
+
| Grundgerüst analoge channels.conf
+
|}[[Kategorie:Plugins]][[Kategorie:AnalogTV]]
+

Aktuelle Version vom 3. Januar 2014, 12:42 Uhr

[Bearbeiten] Beschreibung

Autor: Andreas Kool

Dieses Plugin war das erste Plugin, welches analoges TV in VDR ermöglichte.

Hinweis
Hinweis

BITTE NICHT MEHR AUF DIESES PLUGIN IN VDR-WIKIs VERWEISEN.
Dieses Plugin ist seit Jahren verweist, hat keine offizielle Homepage mehr, nicht mehr mit aktuellen VDR Versionen funktionierend und ohne Änderungen nicht mehr verwendbar. Bitte benutzt und empfehlt das pvrinput-plugin anstelle dieses Plugins.



[Bearbeiten] Links

  1. pvrinput-plugin
In anderen Sprachen