Autor Thema: MediaTVPro in virtueller Maschine mit USB-Passthrough (KVM)  (Gelesen 5580 mal)

Heinzi

  • Newbie
  • *
  • Beiträge: 2
    • Profil anzeigen
MediaTVPro in virtueller Maschine mit USB-Passthrough (KVM)
« am: Februar 01, 2010, 12:39:23 Vormittag »
Ich möchte auf einem virtualisierten Hostserver mit dem Sundtek-Stick ein virtuelles Ubuntu mit MythTV einrichten, damit ich übers Netzwerk TV schauen kann und der Server auch als Videorekorder funktioniert.

Also schließe ich den MediaTVPro-Stick an den Server an und boote ihn. Im Hostbetriebssystem (Ubuntu) läuft der Stick einwandfrei und ich kann mit Kaffeine Filme schauen. Sobald ich ihn jedoch an eine virtuelle Maschine durchreiche (USB-Passthrough in KVM), wird er im Gastbetriebssystem zwar mit 'lsusb' gefunden und auch verschiedene Tools (z.B. Kaffeine) erkennen den Stick als Signalquelle. Bei einem Sendersuchlauf werden allerdings keine Sender gefunden.

Falls der Treiber nicht darauf ausgelegt ist bzw. in einer virtuellen Umgebung noch nicht getestet wurde - wird das noch geschehen? Bis wann kann ich mit Kompatibilität rechnen?
Falls der Treiber eigentlich funktionieren sollte, teilt mir das bitte mit - in dem Fall werde ich eine genauere Fehleranalyse machen und dann hier mit genaueren Informationen um Hilfe bitten ;)

Grüße,
Sebastian Meßmer

Sundtek

  • Administrator
  • Hero Member
  • *****
  • Beiträge: 8321
    • Profil anzeigen
Re:MediaTVPro in virtueller Maschine mit USB-Passthrough (KVM)
« Antwort #1 am: Februar 01, 2010, 01:04:35 Vormittag »
Das USB Passthrough bei QEMU/KVM stützt sich auf USBFS, das Problem hierbei ist die zusätzliche Latenz welche kein Live Video garantieren kann. (HOST - USBFS - QEMU HOST EMULATION - USBFS - TREIBER)
Wir hatten den Treiber auch bereits in einer QEMU/USB Emulation getestet, man kann das Gerät lediglich einstellen (sprich einen Sender einstellen) jedoch würde der Datentransfer einen paravirtualisierten USB Treiber (einen speziellen Treiber welcher das Gerät optimiert an den Gast weiterleiten würde) benötigen.
Zudem war die Emulation bis jetzt auf unseren Testsystemen auch nicht sonderlich stabil, es kam teilweise sogar zu Kernabstürzen des Guests in QEMU/KVM.
Wie dies mit VirtualBox oder VMWare derzeit aussieht wurde von unserer Seite her nicht getestet, jedoch benutzen diese Systeme ebenfalls USBFS um den USB Port durchzureichen.

Würde die Emulation einwandfrei funktionieren, dann würde auch der USB Stick in der virtuellen Umgebung funktionieren.
« Letzte Änderung: Februar 01, 2010, 03:27:07 Vormittag von Sundtek »
Failure is a good thing! I'll fix it

Heinzi

  • Newbie
  • *
  • Beiträge: 2
    • Profil anzeigen
Re:MediaTVPro in virtueller Maschine mit USB-Passthrough (KVM)
« Antwort #2 am: Februar 01, 2010, 12:34:58 Nachmittag »
Hallo,

vielen Dank für Ihre schnelle Antwort.
Der Treiber ist dazu fähig, einen TV-Stream übers Netzwerk zu leiten. Sind die Latenzen hier nicht mindestens genauso hoch?
Der Unterschied ist natürlich, dass die Kommunikation zwischen Haupttreiber (der dem Netzwerk den Stream zur Verfügung stellt) und dem USB-Stick sehr geringe Latenzen hat und es eine Latenz dann nur zwischen den verschiedenen Treiberinstanzen gibt. Aber das bedeutet ja, dass das Ergebnis "LiveTV" an sich nicht von Latenzen abhängt, sondern nur das Kommunikationsprotokoll zwischen Treiber und Stick. Kann man in dem Fall durch ein Firmwareupdate oder ähnliches dieses Kommunikationsprotokoll ändern und die Latenzanfälligkeit verringern?

Im Normalfall würde ich einem Hersteller so einen Änderungsvorschlag nicht machen und erst recht nicht an eine Umsetzung glauben, aber durch Ihre regelmäßigen Treiberupdates und Ihre Kommunikation hier im Forum bin ich in gewisser Weise ermutigt. Hier nebenbei ein großes Lob an Ihren Support! Ich kenne eigentlich keine Firma, die sich so darum kümmert, durch Treiberupdates regelmäßig neue Funktionen in eine bereits verkaufte Hardware einzubauen.

Sundtek

  • Administrator
  • Hero Member
  • *****
  • Beiträge: 8321
    • Profil anzeigen
Re:MediaTVPro in virtueller Maschine mit USB-Passthrough (KVM)
« Antwort #3 am: Februar 02, 2010, 08:10:18 Vormittag »
Hallo,

vielen Dank für Ihre schnelle Antwort.
Der Treiber ist dazu fähig, einen TV-Stream übers Netzwerk zu leiten. Sind die Latenzen hier nicht mindestens genauso hoch?

Nein, Qemu versucht zusaetzlich nocheinmal einen Host zu emulieren. Die Paketverarbeitung ist bereits eine kritische Angelegenheit. Sofern das ganze ueber das Netzwerk verwendet wird werden extra Puffer verwendet welche den Bedarf an Geschwindigkeit des Auslesevorganges entschaerfen.
QEMU arbeitet jedoch nicht mit solchen Puffern.
Das einzige was Sie versuchen koennen ist die Netzwerkfunktionalitaet zu verwenden, hierbei sind in Zukunft auch noch einige Updates geplant (z.B um die Radiofunktionalitaet und eventuell analog TV streaming ueber das Netzwerk zu unterstuetzen).

Solange die Pakete durchgereicht werden und das System abwartet bis sie auf der anderen Seite ausgelesen werden ist die Latenz diesbezueglich zu hoch. Abhilfe kann hierbei lediglich durch eine Verbesserung bei QEMU durchgefuehrt werden.

Zitat
Der Unterschied ist natürlich, dass die Kommunikation zwischen Haupttreiber (der dem Netzwerk den Stream zur Verfügung stellt) und dem USB-Stick sehr geringe Latenzen hat und es eine Latenz dann nur zwischen den verschiedenen Treiberinstanzen gibt. Aber das bedeutet ja, dass das Ergebnis "LiveTV" an sich nicht von Latenzen abhängt, sondern nur das Kommunikationsprotokoll zwischen Treiber und Stick. Kann man in dem Fall durch ein Firmwareupdate oder ähnliches dieses Kommunikationsprotokoll ändern und die Latenzanfälligkeit verringern?

Im Normalfall würde ich einem Hersteller so einen Änderungsvorschlag nicht machen und erst recht nicht an eine Umsetzung glauben, aber durch Ihre regelmäßigen Treiberupdates und Ihre Kommunikation hier im Forum bin ich in gewisser Weise ermutigt. Hier nebenbei ein großes Lob an Ihren Support! Ich kenne eigentlich keine Firma, die sich so darum kümmert, durch Treiberupdates regelmäßig neue Funktionen in eine bereits verkaufte Hardware einzubauen.

Wir sind bemueht eine gute Qualitaet des Treibers bestmoeglichst zu garantieren. Unsere Entwickler arbeiten ebenfalls auf Hochtouren an kommenden Applikation.
Failure is a good thing! I'll fix it

Sundtek

  • Administrator
  • Hero Member
  • *****
  • Beiträge: 8321
    • Profil anzeigen
Re:MediaTVPro in virtueller Maschine mit USB-Passthrough (KVM)
« Antwort #4 am: Februar 15, 2010, 12:20:46 Nachmittag »
Mit Intel VT-d haben Sie eventuell bessere Chancen, VT-d ermoeglicht es den PCI USB Controller direkt an den Gast weiterzuleiten.
Failure is a good thing! I'll fix it