Sundtek Support Forum

Deutsch => Sundtek MediaTV Pro => Thema gestartet von: Chronos am Juni 27, 2011, 11:41:38 Nachmittag

Titel: Analog TV ins Netzwerk streamen
Beitrag von: Chronos am Juni 27, 2011, 11:41:38 Nachmittag
Hallo,

seid ich vor eingien Tagen den Stick bekommen habe, habe ich schon einiges ausprobiert und ich bin begeistert vond en möglichkeiten.
Jedoch möchte ich auch Analog TV mit VLC ins Netzwerk streamen. Ich kann bereits über php umschalten und video funktioniert auch, nur leider wird der Ton am Server ausgegeben und nicht am clienten. Wenn ich den sound auf "External" schalte, bleibt der Ton eifnach ganz weg (auch bei wiedergabe am server erhalte ich mit keinen Programm Ton im analogen modus wenn ich auf "external" schalte.

zur zeit verwende ich folgenden befehl:
vlc -I dummy v4l2:// :v4l2-dev=/dev/video0 :v4l2-adev=/dev/dsp0 --sout "#transcode{venc=x264,vcodec=mp2v,vb=400,scale=1,acodec=mpga,ab=128,channels=1,samplerate=32000}:duplicate{dst=std{access=http,mux=ts,dst=:8080}"

Wobei ich für "dsp0" auch schon "vbi0" und "video0" eingesetzt habe und ähnliche kombinationen.
könnten sie mir da bitte weiterhelfen!

btw. Wenn ich Analog TV am server mit VlC gucke erscheitn das Bild nur gequetscht auf der linken seite (beim streamen nicht) was muss ich noch eisntellen?
Titel: Re:Analog TV ins Netzwerk streamen
Beitrag von: Sundtek am Juli 01, 2011, 01:46:51 Nachmittag
Wir schauen uns derzeit ebenfalls die Möglichkeit von AnalogTV Aufnahmen an.

Bezüglich dem "gequetschten" Bild bitte einen Screenshot zeigen, könnte viele Ursachen haben (allem voran ein Problem mit der Graphikkarte).
Titel: Re:Analog TV ins Netzwerk streamen
Beitrag von: Chronos am Juli 02, 2011, 04:18:14 Nachmittag
hier das bild (http://www.bilder-hochladen.net/files/iaju-1-c4ca.png)

was den Ton angeht, ab wann könnte ich mit einer möglichkeit rechnen meinen stremingserver umsetzen zu können? es würd emir ja reichen wenn ich von einem z.B. von mediaserv ersteltem virtuellem device den ton abgreifen kann und der eigentlcihe ton trotzdem ncoh am server läauft, (aber ich bin da nicht so gut informiert)

 :)
Titel: Re:Analog TV ins Netzwerk streamen
Beitrag von: Sundtek am Juli 02, 2011, 04:24:32 Nachmittag
Das Bild scheint ein VLC Bug zu sein, wir arbeiten daran AnalogTV via MPEG Strom auszugeben, derzeit befindet sich noch die Audiosynchronisierung in Arbeit aber dann wird das ganze sehr einfach streambar sein.

Dieser VLC hat warscheinlich keinen OSS Support und daher können die Daten bei diesem VLC nicht direkt ausgelesen werden. Der MPEG Strom benötigt zwar mehr Rechenkraft jedoch wird dann auch sichergestellt das Audio und Video synchron sind, und das digitalisieren von AnalogTV, Videokassetten usw. ist auch einfacher möglich.
Titel: Re:Analog TV ins Netzwerk streamen
Beitrag von: Chronos am Juli 07, 2011, 11:00:40 Nachmittag
Da die verfügbarkeit als MPEG Strom scheinbar noch ein wenig dauert, gibt es alternative Prgramme zum Streamen mit der aktuellen Ausgabe? Ich habe bereits tvheadend und vdr Probiert diese erkenne jedoch nur DVB-C und nicht den analog tuner.
Titel: Re:Analog TV ins Netzwerk streamen
Beitrag von: Sundtek am Juli 08, 2011, 02:56:03 Vormittag
tvheadend benötigt eine PVR Karte welche MPEG ausgibt, VDR unterstützt nur Digital TV. Eine alternative wäre MythTV.

Unsere Arbeiten sind beinahe abgeschlossen, voraussichtliche Freigabe wird kommende Woche sein. Die derzeitigen Resultate sind ziemlich gut. Das Auslesen eines Videostroms kann einfach durch cat /dev/videoN erfolgen. Enkodierparameter werden noch einstellbar gemacht und Audiosynchronisierung wird derzeit noch genauer überprüft.
Titel: Re:Analog TV ins Netzwerk streamen
Beitrag von: Sundtek am Juli 14, 2011, 09:23:49 Nachmittag
Wir testen derzeit noch die A/V Synchronisierung (über einige Tage). Sieht soweit auch sehr gut aus.
Der Treiber unterstützt dann die PVR Schnittstelle von MPlayer (VLC, VDR werden aktuell noch getestet).
Titel: Re:Analog TV ins Netzwerk streamen
Beitrag von: Sundtek am Juli 19, 2011, 04:47:14 Vormittag
Aktueller Stand:
(http://www.sundtek.de/images/videocapture-small.png) (http://www.sundtek.de/image/videocapture-small.png)

Das Video wird mit tvtime wiedergegeben, das enkodierte Video kann bereits aus /dev/videoN ausgelesen werden. Audio und Video sind hierbei auch synchron. Es werden jedoch noch einige Tests durchgeführt bevor der Treiber aktualisiert wird.

Die Verzögerung der Enkodierung beträgt 2 Sekunden, beim Abspielen 4 Sekunden da der Speicher für das enkodierte Video mehrere Sekunden puffern kann.
Titel: Re:Analog TV ins Netzwerk streamen
Beitrag von: Sundtek am Juli 21, 2011, 08:03:29 Nachmittag
Aktueller Stand (21. Juli 2011):
tvheadend wird demnächst zum Streamen von AnalogTV unterstützt werden.
Die Änderungen ziehen sich leider sehr tief in den Treiber.
Aktuell werden folgende Punkte bearbeitet:
* Sender umschalten mittels mplayer (PVR) und tvheadend
* Freigabe des aktuellen Treibers

PVR:
Der PVR Modus liefert ein enkodiertes Video.

mplayer pvr:// -tv device=/dev/video1
oder
cat /dev/video1 > /tmp/test.mpg

Zitat
$ /opt/bin/mediaclient -e
**** List of Media Hardware Devices ****
device 0: [ Sundtek MediaTV Pro]  DVB-C, DVB-T, ANALOG-TV, FM-RADIO, REMOTE-CONTROL, OSS-AUDIO, RDS, SWENCODER
  [SERIAL]:
     ID: U110707083228
  [DVB-C]:
     FRONTEND: /dev/dvb/adapter0/frontend0
     DVR: /dev/dvb/adapter0/dvr0
     DMX: /dev/dvb/adapter0/demux0
  [DVB-T]:
     FRONTEND: /dev/dvb/adapter0/frontend0
     DVR: /dev/dvb/adapter0/dvr0
     DMX: /dev/dvb/adapter0/demux0
  [ANALOG-TV]:
     VIDEO0: /dev/video1
     VBI0: /dev/vbi0
  [FM-RADIO]:
     RADIO0: /dev/radio0
     RDS: /dev/rds0
  [REMOTECONTROL]:
     INPUT0: /dev/mediainput0
  [OSS]:
     OSS0: /dev/dsp0

$ v4l-info /dev/video1
...
video capture
    VIDIOC_ENUM_FMT(0,VIDEO_CAPTURE)
   index                   : 0
   type                    : VIDEO_CAPTURE
   flags                   : 0
   description             : "Y0-U-Y1-V, 16 bpp"
   pixelformat             : 0x56595559 [YUYV]
    VIDIOC_ENUM_FMT(1,VIDEO_CAPTURE)
   index                   : 1
   type                    : VIDEO_CAPTURE
   flags                   : 0
   description             : "Y1-U-Y0-V, 16 bpp"
   pixelformat             : 0x31595559 [YUY1]
    VIDIOC_ENUM_FMT(2,VIDEO_CAPTURE)
   index                   : 2
   type                    : VIDEO_CAPTURE
   flags                   : 0
   description             : "YUV411, 12 bpp"
   pixelformat             : 0x50313459 [Y41P]
    VIDIOC_ENUM_FMT(3,VIDEO_CAPTURE)
   index                   : 3
   type                    : VIDEO_CAPTURE
   flags                   : 0
   description             : "YUV211, 8 bpp"
   pixelformat             : 0x31313259 [Y211]
    VIDIOC_ENUM_FMT(4,VIDEO_CAPTURE)
   index                   : 4
   type                    : VIDEO_CAPTURE
   flags                   : 0
   description             : "RGB, 16 bpp, 6-5-6"
   pixelformat             : 0x50424752 [RGBP]
    VIDIOC_ENUM_FMT(5,VIDEO_CAPTURE)
   index                   : 5
   type                    : VIDEO_CAPTURE
   flags                   : 0
   description             : "RGB, 8bit RGRG"
   pixelformat             : 0x00000001 [....]
    VIDIOC_ENUM_FMT(6,VIDEO_CAPTURE)
   index                   : 6
   type                    : VIDEO_CAPTURE
   flags                   : 0
   description             : "RGB, 8bit GRGR"
   pixelformat             : 0x00000002 [....]
    VIDIOC_ENUM_FMT(7,VIDEO_CAPTURE)
   index                   : 7
   type                    : VIDEO_CAPTURE
   flags                   : 0
   description             : "RGB, 8bit GBGB"
   pixelformat             : 0x00000003 [....]
    VIDIOC_ENUM_FMT(8,VIDEO_CAPTURE)
   index                   : 8
   type                    : VIDEO_CAPTURE
   flags                   : 0
   description             : "RGB, 8bit BGBG"
   pixelformat             : 0x00000004 [....]
   VIDIOC_ENUM_FMT(9,VIDEO_CAPTURE)
   index                   : 9
   type                    : VIDEO_CAPTURE
   flags                   : 0
   description             : "MPEG Encoder"
   pixelformat             : 0x4745504d [MPEG]

    VIDIOC_G_FMT(VIDEO_CAPTURE)
   type                    : VIDEO_CAPTURE
   fmt.pix.width           : 720
   fmt.pix.height          : 576
   fmt.pix.pixelformat     : 0x56595559 [YUYV]
   fmt.pix.field           : INTERLACED
   fmt.pix.bytesperline    : 1440
   fmt.pix.sizeimage       : 829440
   fmt.pix.colorspace      : SMPTE170M
   fmt.pix.priv            : 0

$ tail -n100 -f /var/log
2011-07-21 20:18:11 [12581]
2011-07-21 20:18:11 [12581] Scanning for plugins
2011-07-21 20:18:11 [12581] found lib: libencoder_plugin.so
2011-07-21 20:18:11 [12581] MediaAVPlugin: MPEG Encoder
2011-07-21 20:18:11 [12581] Copyright: (C) Tpe 2011

2011-07-21 20:18:11 [12581]

Titel: Re:Analog TV ins Netzwerk streamen
Beitrag von: Chronos am Juli 25, 2011, 11:16:03 Vormittag
Das hört sich ja schonmal super an.

Ohne drängeln zu wollen, wollte ich mal nachfragen wann der Treiber vorraussichtlich freigegeben wird.
Ich habe jetzt semesterferien und bin natürlich begierig darauf das Streaming endlich ein zu richten.

Tvheadend bietet natürlich eine schöne fertige nutzeroberfläche.
Da ich das gernze lieber etwas freier konfigurieren möchte habe ich eine andere möglichkeit gewählt.
Wer ähnliches tuen möchte dem kann ich folgendes Anleitung empfehlen: http://rolandeckert.com/projects/webtv (http://rolandeckert.com/projects/webtv) (die *.sh ist entsprechend fuer die eigenen bedürfnisse zu konfigurieren) ich arbeite momentan daran, dass man sich das Protokoll in dem gestreamt wird frei wählen kann. Außerdem sollte man den stream mit einem Password schützen, da es meines wissen illegal ist TV jedem zur verfügung zu stellen (wenn man nicht die entsprechenden rechte/lizenzen hat), dies beitet jedoch z.b. auch die möglichkeit über .swf zu streamen und das ganze in einem player auf der eigenen Hompage (password) ein zu binden.

So sieht das ganze dann z.B. aus: (http://rolandeckert.com/_media/projects/webtv_screenshot.png)

Und nochmal ein dickes lob an den Support ich finde es echt super das sich direkt um soetwas gekümmert wird. :)

p.s. wird ein eine möglichkeit geben zum alten wiedergabe modus zurück zu schalten? Dies währe vielleicht nützlich um bei lokalem TV die prozessorlast nicht unnötig zu steigern. (bzw. wie groß wird der unterschied diesbezüglich sein?)
Titel: Re:Analog TV ins Netzwerk streamen
Beitrag von: Sundtek am Juli 25, 2011, 12:17:13 Nachmittag
Der ursprüngliche Treiber wird nach wievor nur rohes AnalogTV liefern (ca. 170 MBit/Sek).

Mittels Plugin kann das ganze dann erweitert werden das man z.B während man analogTV benutzt auch ein enkodiertes Format auslesen kann (Multiaccess). Aktuell werden noch verschiedene Videostandards getestet. Das Ganze sollte dann in wenigen Tagen freigegeben werden.

Die Plugins werden auch nur bei Bedarf hinzugeschalten, z.B falls tvtime läuft und man im Hintergrund mittels "cat" das aktuelle Video synchron aufnehmen möchte.
Titel: Re:Analog TV ins Netzwerk streamen
Beitrag von: Chronos am August 07, 2011, 04:44:06 Nachmittag
*push* ;) sry abe rich bin ungeduldig wie ein kleines kind im urlaub ;)
ICh geb mich auch mit einer betaversion zufrieden ;)

"z.B während man analogTV benutzt auch ein enkodiertes Format auslesen kann (Multiaccess)." Aber es wird auch ausleßbar sein ohne das man gleichzeitig z.b. tvtime laufen hat?
Titel: Re:Analog TV ins Netzwerk streamen
Beitrag von: Chronos am August 25, 2011, 11:46:41 Vormittag
Wie sieht das denn jetzt aus?
Ich dachte es seien nurnoch ein paar tage?
bin ein wenig ettäuscht, wenn ich wüßte, dass es noch viel länger dauert such ich mir so lange eine andere möglichkeit denn ton zu streamen.
Titel: Re:Analog TV ins Netzwerk streamen
Beitrag von: Sundtek am September 01, 2011, 01:32:58 Nachmittag
Eine Pre-Version des Plugins ist unter:

http://www.sundtek.de/support/libencoder_plugin.so verfügbar.
Diese Version ist derzeit für 64Bit verfügbar.

Bitte beachten das diese Version keine Codecs enthält!
Sofern die Codecs nicht vorhanden sind lädt das Plugin nicht (z.B ffmpeg)

32Bit Version kommt noch, es müssen zuerst noch weitere Tests gemacht werden.
Das Plugin muss nach /opt/bin/plugins kopiert werden.

Getestet wurde soweit PAL-BG und NTSC mit tvtime und im Hintergrund cat /dev/videoN
Auch wurde mplayer damit getestet (was aber beim Umschalten noch etwas arbeit benötigt da eine Senderumschaltung Audio asynchron macht, das encoding muss beim Umschalten noch neu initialisiert werden).

cat /dev/videoN > /tmp/test wurde soweit einen Tag lang getestet das Video blieb Synchron.
Titel: Re:Analog TV ins Netzwerk streamen
Beitrag von: Chronos am September 02, 2011, 07:39:51 Nachmittag
Da bin ich ja froh das noch was passiert ;)
Also meine erfahrungen bis jetzt:

Mit laufendem tvtime (audio internal und external) kann ich mit cat das signal aufzeichen.
Leider läßt sich nur audio aufzeichen, von der dateigröße könnte auch video dabei sein (fals nicht wave format), dies wird aber in keinem player wiedergegeben.

Bei meinem Problem den ton zum  (bild-)Signal beim stremen mit vlc zu bekommen hat es mir bis jetzt leider nicht geholfen.
Titel: Re:Analog TV ins Netzwerk streamen
Beitrag von: Sundtek am September 04, 2011, 08:07:26 Vormittag
Das ist dann wohl ein ffmpeg Codecproblem auf deiner Seite.

VLC kann den Datenstrom zumindestens von STDIN lesen.

z.B sobald getuned wurde: vlc /dev/videoN
Titel: Re:Analog TV ins Netzwerk streamen
Beitrag von: Chronos am September 04, 2011, 12:12:33 Nachmittag
sowas ahbe ich befürchtet,
Ich habe jedoch ffmpeg instaliert und so ziehmlich die meisten codec pakete die es dazu gab.
Bevor ich jetzt beim rumbasteln alles zerschieße, hier erstmal die Fehelrmeldung von vnc:

VLC media player 1.0.6 Goldeneye
[0x20780c8] main libvlc: Running vlc with the default interface. Use 'cvlc' to use vlc without interface.
libdvdnav: Using dvdnav version 4.1.3
libdvdread: Encrypted DVD support unavailable.
************************************************
**                                            **
**  No css library available. See             **
**  /usr/share/doc/libdvdread4/README.Debian  **
**  for more information.                     **
**                                            **
************************************************
libdvdnav: Can't seek to block 32
libdvdnav: Unable to find map file '/home/user/.dvdnav/.map'
libdvdread: Can't seek to block 256
libdvdnav:DVDOpenFileUDF:UDFFindFile /VIDEO_TS/VIDEO_TS.IFO failed
libdvdread: Can't seek to block 256
libdvdnav:DVDOpenFileUDF:UDFFindFile /VIDEO_TS/VIDEO_TS.BUP failed
libdvdread: Can't open file VIDEO_TS.IFO.
libdvdnav: vm: failed to read VIDEO_TS.IFO
[0x22df798] vcd access error: could not read TOCHDR
[0x22df798] vcd access error: no movie tracks found
Ist es korrekt, dass vlc den stream als dvd versteht.
Auch wenn ich Tvtime nciht laufne habe erhalte ich die selbe fehlermeldung bei
"vlc /dev/video0"
mit "vlc v4l2://:dev=/dev/video0" erhalt eich ton (internal) und (gequetschtes-) Bild wenn tvtime nicht läuft.
ansonsten eine Fehlermeldung (vonwegen zugriffsfehler)
Titel: Re:Analog TV ins Netzwerk streamen
Beitrag von: ChrisPHL am September 27, 2011, 08:59:06 Vormittag
Bei mir klappt das Abspielen mit dem VLC auch nicht "direkt" (vlc /dev/videoN), sondern nur mit Hilfe einer "named pipe": (Und nur unter Verwendung des weiter oben erwähnten 64bit-Plugins!):
FIFO=/tmp/buffer
mkfifo $FIFO
cat /dev/videoN > $FIFO &
vlc $FIFO
Allerdings muss der VLC "rechtzeitig" den Puffer lesen, da sonst der cat-Befehl (wegen Pufferüberlauf?) zurück kommt. Beim Beenden des VLC (z.B.: Strg+C) schließt der cat-Aufruf automatisch. Nach gut drei Tagen läuft der Ton dann etwa 0,5sec bis 1,0sec asynchron. Für einen langen TV-Abend sollte es also schon reichen.

Hat schon jemand eine Variante gefunden, mit der man Bild und Ton direkt per SOURCE_VIDEO_DEV=/dev/video0
SOURCE_AUDIO_DEV=/dev/dsp0
vlc -I dummy -vvv  v4l2://:v4l2-dev=$SOURCE_VIDEO_DEV:v4l2-adev=$SOURCE_AUDIO_DEV
(oder ähnlich) dem VLC übergeben kann? Vor allem für das Streaming ins Netz ist das wichtig, damit man nicht nur ein Bild am anderen Ende heraus bekommt. (Der oben gezeigte Weg schaufelt auch den Ton durchs Netz, benötigt aber das noch in der Entwicklung befindliche Plugin.)
Titel: Re:Analog TV ins Netzwerk streamen
Beitrag von: Chronos am September 27, 2011, 04:22:07 Nachmittag
Bei mir klappt das Abspielen mit dem VLC auch nicht "direkt" (vlc /dev/videoN), sondern nur mit Hilfe einer "named pipe": (Und nur unter Verwendung des weiter oben erwähnten 64bit-Plugins!):
FIFO=/tmp/buffer
mkfifo $FIFO
cat /dev/videoN > $FIFO &
vlc $FIFO


Ich habe die "pipe" ausprobiert bzw. mir eine shell geschrieben, jedoch zeigt vlc nichts an nach dem öffnen. Es wird jedoch auch keine Fehlermeldung angezeigt (hab im hintergrund tvtime laufen).
Titel: Re:Analog TV ins Netzwerk streamen
Beitrag von: ChrisPHL am September 28, 2011, 03:38:14 Nachmittag
Du kannst testweise auch erst einmal die Befehle zum füllen des Puffers (cat) und zum Abspielen aus dem Puffer (vlc) in verschiedenen Konsolen ausführen, um zu sehen, ob beide noch laufen bzw. welche Fehlermeldung sie ausspucken.
Manchmal kommt der cat schon zurück, bevor der vlc anfängt zu lesen... Allerdings hatte ich auch schon mit dem Datenstrom aus /dev/videoN Probleme, es kam nichts raus...(In so einem Fall hängt dann VLC auch einfach und kommt nicht zurück.). Testen kannst du das, indem du den cat-Befehl in eine Datei umleitest und dann die Dateigröße kurz mitverfolgst: Bleibt sie bei 0bytes oder wird sie immer größer?
Titel: Re:Analog TV ins Netzwerk streamen
Beitrag von: Chronos am September 28, 2011, 07:34:52 Nachmittag
Oh stimmt, hab ich garnicht mehr drauf geachtet. Bei cat /tmp/videoX > datei.mpg erhalte ich auch nur audio.
die Dateigröße bleibt 0 byte.
Weist du was ich da tuen kann?
Vlc sagt etwas von mpg und missing header, aber das sit dann wohl weniger relevant
Titel: Re:Analog TV ins Netzwerk streamen
Beitrag von: ChrisPHL am September 29, 2011, 07:42:27 Vormittag
An der Stelle musst du dich dann doch an den Support wenden: http://support.sundtek.de/cgi-bin/irc.cgi (http://support.sundtek.de/cgi-bin/irc.cgi) (Die Lösung interessiert mich auch ;-)). Der Sound wird wohl immer dann laut gestellt (mute=off), wenn ein Programm versucht, Daten von /dev/videoN zu lesen.
Titel: Re:Analog TV ins Netzwerk streamen
Beitrag von: ChrisPHL am Oktober 25, 2011, 01:32:02 Nachmittag
Vor jedem Versuch, dem video device Daten zu entlocken müssen noch das Bildformat und die Kodierung eingestellt werden:
v4l2-ctl --set-fmt-video=width=720,height=576,pixelformat=`v4l2-ctl --list-formats | grep -B3 "MPEG Encoder" | grep Index | awk '{print $3}'`(nimmt den MPEG Encoder)
Laut mrec im Supportforum (in Kombination mit meiner fast 2 Wochen alten Erinnerung) sollte man aber eher das Format YUYV oder so verwenden. Für meine Zwecke arbeitet's aber auch mit dem MPEG Encoder. Die verfügbaren Formate listet v4l2-ctl auf:

~ $ v4l2-ctl --list-formats
ioctl: VIDIOC_ENUM_FMT
Index       : 0
Type        : Video Capture
Pixel Format: 'YUYV'
Name        : Y0-U-Y1-V, 16 bpp
[...]
Ebenso wie Bildformat und Kodierung muss der Sound per 'unmute' "aktiviert" werden:
v4l2-ctl --set-ctrl=mute=0Beide Maßnahmen zusammen führen dazu, dass der weiter oben von mir beschriebene "Datei_bleibt_0_bytes_groß-Fehler" ausbleibt.
Titel: Re:Analog TV ins Netzwerk streamen
Beitrag von: UNB am Oktober 30, 2011, 04:46:27 Nachmittag
Excuse me for typing this in English, I sort of understand German when reading it, but writing in German is a complete different story :)

Could you please inform me on the status of analog TV support from Sundtek for tvheadend? As I understand from the postings in this topic official support was going to be released soon. As far as I know this hasn't happened yet, am I correct? And when it happens, will the Sundtek driver enable tvheadend to switch between the analog and the DVB-C mode of the tuner or will this be a manual action?
Titel: Re:Analog TV ins Netzwerk streamen
Beitrag von: Chronos am Oktober 30, 2011, 05:29:09 Nachmittag
Vor jedem Versuch, dem video device Daten zu entlocken müssen noch das Bildformat und die Kodierung eingestellt werden:
Also ich habe es mal so probiert:
v4l2-ctl --set-fmt-video=width=720,height=576,pixelformat=`v4l2-ctl --list-formats | grep -B3 "MPEG Encoder" | grep Index | awk '{print $3}'`(nimmt den MPEG Encoder)
Laut mrec im Supportforum (in Kombination mit meiner fast 2 Wochen alten Erinnerung) sollte man aber eher das Format YUYV oder so verwenden. Für meine Zwecke arbeitet's aber auch mit dem MPEG Encoder. Die verfügbaren Formate listet v4l2-ctl auf:

~ $ v4l2-ctl --list-formats
ioctl: VIDIOC_ENUM_FMT
Index       : 0
Type        : Video Capture
Pixel Format: 'YUYV'
Name        : Y0-U-Y1-V, 16 bpp
[...]
Ebenso wie Bildformat und Kodierung muss der Sound per 'unmute' "aktiviert" werden:
v4l2-ctl --set-ctrl=mute=0Beide Maßnahmen zusammen führen dazu, dass der weiter oben von mir beschriebene "Datei_bleibt_0_bytes_groß-Fehler" ausbleibt.
Leide rohne erfolg, wenn tvtim läuft folgt ein error wenn nicht, dann wird der befehl ausgeführt, hat aber keinen effekt auf den Buffer/streaming möglichkeiten etc.
Das supportteam meinte es sei möglicherweise ein Coec-Problem meienrseits, ich habe jedoch alle ffmpeg codec's die ich finden konte instaliert und auch sonst kann ich so ziehmlich alles wiedergeben und vermutlich auch convertieren etc.
Noch irgentwer ideen?
Mir fehlt wirklich nur der ton wenn ich den irgentwo an einem "virtuellen"-device abgreifen könnte ginge es sogar ohne das neue plugin, würde es eh bevorzugen nicht noch tvtime im hintergrund laufen haben zu müßen.
Titel: Re:Analog TV ins Netzwerk streamen
Beitrag von: ChrisPHL am November 07, 2011, 02:43:01 Nachmittag
Could you please inform me on the status of analog TV support from Sundtek for tvheadend? As I understand from the postings in this topic official support was going to be released soon. As far as I know this hasn't happened yet, am I correct? And when it happens, will the Sundtek driver enable tvheadend to switch between the analog and the DVB-C mode of the tuner or will this be a manual action?
You should ask this in a dedicated thread I think. To speed things up or answer that question for all others who are interessted you could try the IRC support chat.
Titel: Re:Analog TV ins Netzwerk streamen
Beitrag von: ChrisPHL am November 07, 2011, 02:47:03 Nachmittag
Das supportteam meinte es sei möglicherweise ein Coec-Problem meienrseits, ich habe jedoch alle ffmpeg codec's die ich finden konte instaliert und auch sonst kann ich so ziehmlich alles wiedergeben und vermutlich auch convertieren etc.
Noch irgentwer ideen?
Ich habe auf meiner Kiste nach dieser Anleitung (http://ubuntuforums.org/showthread.php?t=786095) ffmpeg neu übersetzt und installiert, damit mir der VLC den Stream als MPEG-TS transkodieren kann. Vielleicht braucht das Plugin das auch... ;-)
Titel: Re:Analog TV ins Netzwerk streamen
Beitrag von: Sundtek am November 29, 2011, 10:03:07 Nachmittag
Wir haben es soeben ebenfalls überprüft, OSS Support gibt es zwar nicht im Userinterface, jedoch kann man darauf nach wievor von der Konsole aus zugreifen:

http://forum.videolan.org/viewtopic.php?f=13&t=91410&p=318875#p318875

Zitat
vlc v4l2:///dev/video0 :input-slave=oss:///dev/dsp0 :v4l2-standard=0 :v4l2-chroma= :v4l2-input=1 :v4l2-audio-input=0 :v4l2-io=0 :v4l2-width=-1 :v4l2-height=-1 :v4l2-aspect-ratio=4\:3 :v4l2-fps=0 :v4l2-caching=300 :no-v4l2-use-libv4l2 :v4l2-tuner=0 :v4l2-tuner-frequency=-1 :v4l2-tuner-audio-mode=0 :no-v4l2-controls-reset :v4l2-brightness=-1 :v4l2-contrast=-1 :v4l2-saturation=-1 :v4l2-hue=-1 :v4l2-black-level=-1 :v4l2-auto-white-balance=-1 :v4l2-do-white-balance=-1 :v4l2-red-balance=-1 :v4l2-blue-balance=-1 :v4l2-gamma=-1 :v4l2-exposure=-1 :v4l2-autogain=-1 :v4l2-gain=-1 :v4l2-hflip=-1 :v4l2-vflip=-1 :v4l2-hcenter=-1 :v4l2-vcenter=-1 :v4l2-audio-volume=-1 :v4l2-audio-balance=-1 :no-v4l2-audio-mute :v4l2-audio-bass=-1 :v4l2-audio-treble=-1 :v4l2-audio-loudness=-1 :v4l2-set-ctrls= :file-caching=300
Titel: Re:Analog TV ins Netzwerk streamen
Beitrag von: Sundtek am Dezember 09, 2011, 04:33:58 Vormittag
Vor jedem Versuch, dem video device Daten zu entlocken müssen noch das Bildformat und die Kodierung eingestellt werden:
v4l2-ctl --set-fmt-video=width=720,height=576,pixelformat=`v4l2-ctl --list-formats | grep -B3 "MPEG Encoder" | grep Index | awk '{print $3}'`(nimmt den MPEG Encoder)
Laut mrec im Supportforum (in Kombination mit meiner fast 2 Wochen alten Erinnerung) sollte man aber eher das Format YUYV oder so verwenden. Für meine Zwecke arbeitet's aber auch mit dem MPEG Encoder. Die verfügbaren Formate listet v4l2-ctl auf:

~ $ v4l2-ctl --list-formats
ioctl: VIDIOC_ENUM_FMT
Index       : 0
Type        : Video Capture
Pixel Format: 'YUYV'
Name        : Y0-U-Y1-V, 16 bpp
[...]
Ebenso wie Bildformat und Kodierung muss der Sound per 'unmute' "aktiviert" werden:
v4l2-ctl --set-ctrl=mute=0Beide Maßnahmen zusammen führen dazu, dass der weiter oben von mir beschriebene "Datei_bleibt_0_bytes_groß-Fehler" ausbleibt.

Es gibt bei Deiner Konfiguration einen kleinen Fehler, die komplette Konfiguration auf der Konsole würde wie folgt aussehen:

Zitat
v4l2-ctl -d /dev/video1 --set-fmt-video=width=720,height=480,pixelformat=0 -i 0 --set-ctrl=mute=0 -s 4 -f 230

-i 0 ... (input 0, TV Signal)
-s 4 ... (videostandard NTSC-M, 0 wäre PAL-BG)
-f 230 ... 230 MHz
pixelformat=0 ... YUYV Pixelformat [b}9 (nicht MPEG)[/b]
Titel: Re:Analog TV ins Netzwerk streamen
Beitrag von: ChrisPHL am Dezember 20, 2011, 11:16:27 Vormittag
vlc v4l2:///dev/video0 :input-slave=oss:///dev/dsp0 :v4l2-standard=0 :v4l2-chroma= :v4l2-input=1 :v4l2-audio-input=0 :v4l2-io=0 :v4l2-width=-1 :v4l2-height=-1 :v4l2-aspect-ratio=4\:3 :v4l2-fps=0 :v4l2-caching=300 :no-v4l2-use-libv4l2 :v4l2-tuner=0 :v4l2-tuner-frequency=-1 :v4l2-tuner-audio-mode=0 :no-v4l2-controls-reset :v4l2-brightness=-1 :v4l2-contrast=-1 :v4l2-saturation=-1 :v4l2-hue=-1 :v4l2-black-level=-1 :v4l2-auto-white-balance=-1 :v4l2-do-white-balance=-1 :v4l2-red-balance=-1 :v4l2-blue-balance=-1 :v4l2-gamma=-1 :v4l2-exposure=-1 :v4l2-autogain=-1 :v4l2-gain=-1 :v4l2-hflip=-1 :v4l2-vflip=-1 :v4l2-hcenter=-1 :v4l2-vcenter=-1 :v4l2-audio-volume=-1 :v4l2-audio-balance=-1 :no-v4l2-audio-mute :v4l2-audio-bass=-1 :v4l2-audio-treble=-1 :v4l2-audio-loudness=-1 :v4l2-set-ctrls= :file-caching=300
Das funktioniert leider so noch nicht, obwohl ich auch die im direkt vorhergehenden Beitrag genannten Korrekturen gemacht habe.
Wenn ich den VLC wie gezeigt starte, kommt er nicht dazu mir ein bewegtes Bild mit Ton herbei zu zaubern, stattdessen bekomme ich unzählige Male diese Ausgabe:
[0x856152c] main input debug: Buffering 0%
[0x856152c] main input warning: clock gap, unexpected stream discontinuity
[0x856152c] main input warning: feeding synchro with a new reference point trying to recover from clock gap
Die Option --internalaudio=auto|internal|external verändert diese Tatsachen leider auch nicht. (Allerdings ist nur bei 'internal' Sound an der Soundkarte zu hören.)
Woran liegt das? Was kann ich tun, um dieses Verhalten abzustellen und VLC zum Stream wie folgt zu überreden?
Zitat
# Konfigurieren des Sticks:
/opt/bin/mediaclient -d /dev/video0 -I 0; sleep 1; /opt/bin/mediaclient -m ATV -v NTSC-M -f 66875000 -d /dev/video0; sleep 1; v4l2-ctl --verbose --device /dev/video0 --set-fmt-video=width=480,height=480,pixelformat=0; sleep 1; v4l2-ctl --verbose --device /dev/video0 --set-ctrl=mute=0; /opt/bin/mediaclient --internalaudio=auto; /opt/bin/mediaclient --vfilter=on -d /dev/video0; /opt/bin/mediaclient --mute=off -d /dev/video0
# Starten des Streams:
vlc -I dummy -vvv v4l2:///dev/videoN :input-slave=oss:///dev/dspM :v4l2-standard=0 :v4l2-chroma= :v4l2-input=0 :v4l2-audio-input=0 :v4l2-io=0 :v4l2-width=480 :v4l2-height=480 :v4l2-aspect-ratio=3\:2 :v4l2-fps=0 :v4l2-caching=300 :no-v4l2-use-libv4l2 :v4l2-tuner=0 :v4l2-tuner-frequency=-1 :v4l2-tuner-audio-mode=0 :no-v4l2-controls-reset :v4l2-brightness=-1 :v4l2-contrast=-1 :v4l2-saturation=-1 :v4l2-hue=-1 :v4l2-black-level=-1 :v4l2-auto-white-balance=-1 :v4l2-do-white-balance=-1 :v4l2-red-balance=-1 :v4l2-blue-balance=-1 :v4l2-gamma=-1 :v4l2-exposure=-1 :v4l2-autogain=-1 :v4l2-gain=-1 :v4l2-hflip=-1 :v4l2-vflip=-1 :v4l2-hcenter=-1 :v4l2-vcenter=-1 :v4l2-audio-volume=-1 :v4l2-audio-balance=-1 :no-v4l2-audio-mute :v4l2-audio-bass=-1 :v4l2-audio-treble=-1 :v4l2-audio-loudness=-1 :v4l2-set-ctrls= :file-caching=300 --sout "#transcode{vcodec=mp2v,vb=2000,scale=1,acodec=mpga,ab=192,channels=2,samplerate=44100}:duplicate{dst=rtp{dst=239.0.0.2,port=5004,mux=ts}}"
Titel: Re:Analog TV ins Netzwerk streamen
Beitrag von: RBredereck am Januar 20, 2012, 07:10:44 Nachmittag
Hallo,

gibt es mittlerweile eine stabile Möglichkeit von einem Linux-Server Analog-TV an einen Windows-Client zu streamen?

(Der Client sollte natürlich irgendwie - z.B. auch über nen Browser - die Sender umschalten können.)

Falls dies klappt, dann würde ich wohl mindestens einen weiteren Stick bestellen...

PS: Ein bisschen Baselarbeit halte ich für zumutbar, meine Linuxkenntnisse sollten auf jeden Fall reichen um mittelmäßig komplizierte Lösungen einmalig einzurichten. Der Anwender sollte es aber möglichst einfach benutzten können.
Titel: Re:Analog TV ins Netzwerk streamen
Beitrag von: ChrisPHL am April 18, 2012, 01:11:59 Nachmittag
Moin allerseits,
ich will hier nach langer Zeit mal eine Statusmeldung machen.

Mit der Treiberversion vom 05.04.2012 und einem build-Skript von Markus Rechberger war es mir möglich, eine lauffähige -- und eben auch streamingfähige -- Installation zu basteln:
Hier ein paar Eckdaten:
Zum Streamen wird der VLC in der Version 1.1.4 auf einem betagten Ubuntu Linux (10.10) verwendet.

Vorbereitung:
Da noch ein älterer Treiber installiert war, habe ich vorher mit "sudo rm -rf /opt/bin" bzw "sudo rm -rf /opt/lib" seine Reste brutal entfernt werden. (Nachahmung auf eigene Gefahr! ;-))

Installation:
Zuerst habe ich den Treiber vom 05. April 2012 installiert:
sudo ./sundtek_installer_development_2012_04_05.sh(Mit dem darauf folgenden Treiber vom 11. April 2012 wollte das ganze schon nicht mehr funktionieren. :-()

Jetzt die dazu gehörenden ffmpeg-Bibliotheken selbst bauen und installieren:
wget http://pastebin.com/download.php?i=4tJerscY -O build.sh
chmod 0755 build.sh
sudo ./build.sh

Jetzt die Bibliotheken dem System bekannt machen:
sudo killall mediasrv
sudo echo "/opt/bin/plugins/32/lib/" > /etc/ld.so.conf.d/sundtek.conf
sudo ldconfig
sudo /opt/bin/mediasrv -d
(Zitat mrec (18.04.2012): "das sollte nicht benötigt werden oder?" ergo: Bitte zuerst ohne diese Befehle testen, nur wenn der Treiber dann nicht laden will, kann man das probieren.)

Mit einem Blick in /var/log/mediasrv.log kann man sich von der korrekten Installation überzeugen.

Der Treiber kommt korrekt hoch, wenn zum einen das Plugin gefunden:
2012-04-17 17:06:27 [1334] Scanning for plugins
2012-04-17 17:06:27 [1334] found lib: libencoder_plugin.so
2012-04-17 17:06:27 [1334] MediaAVPlugin: MPEG Encoder
2012-04-17 17:06:27 [1334] Copyright: (C) Tpe 2011
und zum anderen alle Bibliotheken dazu erfolgreich geladen werden:
2012-04-17 17:06:32 [1334] AnalogTV encoding is available
Jetzt kann man das TV konfigurieren, z.B. so:
mediaclient -m ATV -d /dev/video0; # obsolet
mediaclient -d /dev/video0 -I 0;
mediaclient -m ATV -v NTSC-M -f 67250000 -d /dev/video0;
mediaclient -d /dev/video0 --vfilter=on;
mediaclient -d /dev/video0 --internalaudio=external; sleep 1;
v4l2-ctl --verbose --device /dev/video0 --set-fmt-video=width=576,height=360,pixelformat=0;

Abgespielt und gestreamt wird danach so:
vlc -I dummy pvr:///dev/video0 :pvr-width=576 :pvr-height=360 \
:file-caching=300 \
--sout #duplicate{dst=rtp{dst=239.0.0.1,port=5004,mux=ts}}"

Nach 7,5+h waren bei einem ersten Test Bild und Ton immer noch lippensynchron. :-)

Da es bei meinen Experimenten nicht egal ist, welche Treiberversion man verwendet, bitte ich Sundtek an dieser Stelle bis zum nächsten offiziellen Release die o.g. Treiberversion gesondert zum Download anzubieten. Vielen Dank!
Titel: Re:Analog TV ins Netzwerk streamen
Beitrag von: Sundtek am April 18, 2012, 01:28:31 Nachmittag
Das Plugin ist derzeit noch experimentell, es kommt dort dann auch noch iPAD streaming dazu und das man AnalogTV auch einfach auf anderen PCs als virtuelles Device einbinden kann.
Titel: Re:Analog TV ins Netzwerk streamen
Beitrag von: Sundtek am Mai 07, 2012, 09:55:05 Vormittag
Der Treiber wurde aktualisiert. LD_LIBRARY_PATH wird nach der Installation nicht mehr benötigt.