|
|
| (45 dazwischenliegende Versionen von 20 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.}} |
| | | | |
| − | ==Bilder==
| |
| − | [[Bild:analogtv-plugin.jpg|thumb|none|''Setup'']]
| |
| | | | |
| − | ==Hardwareanforderungen== | + | ==Links== |
| − | * Man benötigt eine [[Analog-TV]]-Karte. Diese Karte muss entweder vom bttv Treiber, dem ivtv Treiber oder dem pvrusb2 Treiber unterstützt werden.
| + | # [[pvrinput-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==
| + | [[Kategorie:Veraltete Plugins]] |
| − | * 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.
| + | {{i18n|analogtv-plugin}} |
| − | * Bei PVR 250/350 neuesten Treiber von [http://ivtv.no-ip.info chris kennedy]. Dieser muss nicht mehr gepatched werden. Beim Laden sicherstellen, dass ivtv vor den dvb Treibern geladen wird oder aber die channels.conf entsprechend angepaßt wird. Letzter Stand auf [http://www.poptix.net/ivtv/redirect.html Mailing Liste].
| + | |
| − | * libdvb
| + | |
| − | * Video4Linux V2 (v4l2)
| + | |
| − | * ALSA (nur für Softencoder, nicht 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>
| + | |
| − | | + | |
| − | ==CVS==
| + | |
| − | <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://ivtv.no-ip.info/
| + | |
| − | | 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]]
| + | |
Dieses Plugin war das erste Plugin, welches analoges TV in VDR ermöglichte.