fbtv mit Deinterlacer

  • Hallo,


    eine aktuelle Version von FBTV mit schnellem Deinterlacing findet Ihr unter


    http://vdr.device.name/fbtv/


    Vielen Dank an dieser Stellen an vdr_Thor für die freundliche Bereitstellung des genutzten Webspaces !


    beste Grüße,


    Tamander

    Shuttle SK41G, Duron 800, Technotrend 1.6, Gentoo, Kernel 2.6.11-rc5
    ASRock NF7G-HDready, X2 64 4200+, DVB-S Nexus, Debian AMD64, Kernel 2.6.23

  • Hallo!


    Beim Aufruf von fbtv_deint wird das Fehlen der libFS.so.6 angezeigt. Gefunden habe ich libFS nur in dem xlibs-static-dev Paket. Leider möchte apt-get nun auch noch einen Haufen anderer Pakete istallieren (insgesamt ca. 9MB). Geht das auch kleiner? Wird noch mehr benötigt?


    Gruß


    Norbert

  • Hallo!


    Ich habe mal die libFS.so.6 vom meinem Suse System (9.3) ausprobiert. fbtv_deint -i läuft nun, jedoch ist vom deinterlacing keine Spur zu sehen. Kann mir jemand seine libFS.so.6 (Debian) zusenden?


    Oder benötige ich noch eine xawtv.ini im home Verzeichnis? Laut man fbtv_deint wird diese ausgewertet.


    Gruß


    Norbert

  • Hallo Norbert,


    was bedeutet 'vom deinterlacing keine Spur' ? Vergleiche doch mal die Newstickerzeile bei NTV mit und ohne '-i' Option.
    Eine Abhängigkeit von der LibFS.so.6 sollte an dieser Stelle nicht relevant sein, da die deinterlacing routine local als inline asm abläuft.


    Also versuch das mal mit NTV und teile mir Deinen Eindruck vom Unterschied mit.


    Gruß,


    Tamander

    Shuttle SK41G, Duron 800, Technotrend 1.6, Gentoo, Kernel 2.6.11-rc5
    ASRock NF7G-HDready, X2 64 4200+, DVB-S Nexus, Debian AMD64, Kernel 2.6.23

  • Hallo,


    ich kann fbtv_deint binary auch nicht starten, da eine fehlende libFS.so.6 angemeckert wird.


    Den ersten Patch hatte ich auch mal übersetzt. Irgendwie konnte ich aber auch keinen Effekt feststellen. Ein davor eingebauter printf wurde anscheinend auch nie ausgeführt. Ich habe vorher nur ./configure und dann make aufgerufen. Müssen noch spezielle Einstellungen zum Kompilieren gemacht werden? Meine Binary ist auch wesentlich größer (ca.600KB).


    Tschüß Frank

  • hier startet der fbtv_deint auch nicht ohne die genannte lib... gibt es denn auch weiterhin keine Hoffnung auf gutes TV am LCD mit dem VDR? Bis jetzt war moch alles qualitativ schlechter als der alte Fernseher am RGB.

  • Habe mad im debian Paket die Datei ersetzt und xawtv neu kompiliert.


    Funktioniert lt mir allerdings nicht.


    Wers testen will bitte PN, da auch kein öffentlicher Webspace vorhanden.

  • Hallo zusammen,


    das ist ja echt schade, dass es bei Euch nicht funktioniert !


    Diejenigen von Euch die es kompilieren konnten, und die keine Änderung feststellen konnten: seid Ihr ischer, dass Ihr wirklich das richtige binary gestartet habt. Bei mir funktioniert FBTV mit -i 1 und -i 2 sehr zufriedenstellend. Besonders offensichtlich wie beschrieben bei NTV...


    Ich besitze eine X11R6/lib/libFS.so, aber starte das Programm ohne X direkt von der Konsole, so dass die Library vermutlich auch gar nicht verwendet wird.


    Gibt es überhaupt jemanden von Euch bei dem die deint Variante funktioniert ?


    Wie unten beschrieben verwende ich Gentoo und habe 'emerge xawtv' nach dem Entpacken der Sources abgebrochen und dann wie beschrieben meine eigene Variante erzeugt.


    Bleibt dran, es lohnt sich, vielleicht finden wir noch eine Lösung, momentan kann ich Eure Probleme aber nicht recht bewerten.


    Viel Erfolg,


    Tamander

    Shuttle SK41G, Duron 800, Technotrend 1.6, Gentoo, Kernel 2.6.11-rc5
    ASRock NF7G-HDready, X2 64 4200+, DVB-S Nexus, Debian AMD64, Kernel 2.6.23

  • Hallo,


    bin auch gerade dabei das Ganze unter Gentoo (sorry ich weiß das hier dir Debianer zu Hause sind, aber wir kämpfen ja am gleichen Problem) zum laufen zu bringen. Leider stellt sich auch bei mir nicht der gewünschte Effekt ein.


    Folgende Vorgehensweise:
    - ebuild xawtv-3.93-r2.ebuild fetch
    - ebuild xawtv-3.93-r2.ebuild unpack


    ... Änderungen an der fbtv.c durchführen


    - ebuild xawtv-3.93-r2.ebuild compile
    - ebuild xawtv-3.93-r2.ebuild install
    - ebuild xawtv-3.93-r2.ebuild qmerge


    Das binary lässt sich dann zwar mit -i1..4 aufrufen (was ohne den patch nicht geht), aber leider sind keine Verbesserungen feststellbar.


    Kann man irgendwie überprüfen ob der deinterlacer verwendet wird (hab' schon versucht an den verschiedensten Stellen ein printf einzubauen, aber ich denke meine Programierkenntnisse reichen hier wohl nicht ganz aus)


    Georg:prost2

    The post was edited 2 times, last by schiarch ().

  • Hallo Georg,


    möglicherweise wird bei Dir und anderen Leidenden die entsprechende Routine nicht wie bei mir angesprungen. Der Grund hierfür kann an der Framebuffer Konfiguration liegen.
    Die Routine sollte im 32Bit Colormode angesprungen werden. Wenn ich 16 Biut verwende wirds recht bunt, in anderen Modi wird der Framebuffer vielleicht aders gefüllt.


    fbset liefert bei mir folgende Infos:
    mode "1024x768-60"
    # D: 65.003 MHz, H: 48.365 kHz, V: 60.006 Hz
    geometry 1024 768 1024 4096 32 <<- 32 Bit configuration
    timings 15384 168 8 29 3 144 6
    accel true
    rgba 8/16,8/8,8/0,8/24
    endmode


    Ich aktiviere den mode beim Kernelaufruf durch den Parameter:
    video=savagefb:1024x768-32@60


    gruß,


    Tamander

    Shuttle SK41G, Duron 800, Technotrend 1.6, Gentoo, Kernel 2.6.11-rc5
    ASRock NF7G-HDready, X2 64 4200+, DVB-S Nexus, Debian AMD64, Kernel 2.6.23

  • Hallo tamander,


    habe jetzt mal die Einstellungen von dir übernommen, trotztem leider keine Änderungen. ;( ;(


    Ausgabe von fbset:
    mode "1024x768-60"
    # D: 64.994 Mhz, H: 48.359 kHz, V: 59.998 Hz
    geometry 1024 768 1024 2048 32
    timings 15386 160 32 30 4 128 4
    accel true
    rgba 8/16,8/8,8/0,8/24
    endmode


    kernelaufruf:
    video=matroxfb:vesa:0x118,fv:60


    Georg

  • Hallo,


    tja, ich habe mir das ganze mal genauer angeschaut und ein paar printf eingebaut:

    Alle 5 Sekunden gibt es da einen Eintrag deint 1 1 0 0. Das heisst
    deint = 1 // wird mit -i eingeschaltet
    cur_capture = 1 // CAPTURE_OVERLAY
    fb_switch_state = 0 // FB_ACTIVE
    keep_dma_on = 0


    Die Variable cur_capture kann über ~/.xawtv initialisiert (common/channel.c) werden.


    Also hier meine .xawtv und die Binary fbtv_deint1 (vorerst mit dem einfachen Patch). Die .xawtv ins Home-Verzeichnis kopieren und mit fbtv_deint1 -i starten.


    So nun muss ich aber ins Bett.


    Tschüß Frank

  • Hallo!


    Wieder nichts :-(


    Die Falschfarben von fbtv_deint und fbtv_deint1 habe ich mit der Umstellung auf 32Bit (truecolor) wegbekommen. Aber immer noch kein deinterlacing in sicht.


    fbset -i sagt bei mir:


    Linux Frame Buffer Device Configuration Version 2.1 (23/06/1999)
    (C) Copyright 1995-1999 by Geert Uytterhoeven


    Opening frame buffer device `/dev/fb0'
    Using current video mode from `/dev/fb0'


    mode "800x600-75"
    # D: 48.001 MHz, H: 46.876 kHz, V: 75.121 Hz
    geometry 800 600 800 600 32
    timings 20833 96 32 16 4 96 4
    rgba 8/16,8/8,8/0,8/24
    endmode


    Getting further frame buffer information
    Frame buffer device information:
    Name : VESA VGA
    Address : 0xe8000000
    Size : 3840000
    Type : PACKED PIXELS
    Visual : TRUECOLOR
    XPanStep : 0
    YPanStep : 0
    YWrapStep : 0
    LineLength : 3200
    Accelerator : No



    Gruß


    Norbert

  • Hi Norbert,


    wie sieht denn der Consolelog aus, wenn Du Franks Variante fbtv_deint1 -i startest ?


    gruß

    Tamander

    Shuttle SK41G, Duron 800, Technotrend 1.6, Gentoo, Kernel 2.6.11-rc5
    ASRock NF7G-HDready, X2 64 4200+, DVB-S Nexus, Debian AMD64, Kernel 2.6.23

  • Hallo,


    hier auch mal der erweiterte Patch als Binary fbtv_deint2. Die .xawtv ins Home-Verzeichnis kopieren und mit fbtv_deint2 -i 1 starten.


    Wenn der Deinterlacer arbeitet und fbtv_deint2 ohne -q gestartet wird sollte man oben links die Geschwindigkeit in fps sehen:
    Framebuffer TV - ??? - grab 23,2 fps
    Sonst läuft fbtv warscheinlich im Overlay-Modus und der Deinterlacer ist deaktiviert.


    Das ganze braucht bei mir ganz schön viel Rechenzeit bei einer laufenden Aufnahme bekomme ich zur Zeit nur 16 fps. Der Rechner scheint dabei voll ausgelastet zu sein.


    Tschüß Frank

  • Hallo!


    Bei mir läufts es nun. Aber nur direkt nach einem Reboot und nur mit fbtv_deint2 -i 1.


    Die Kammeffekt sind nun verschwunden, jedoch ruckelt das Bild häufig. Und das mit einem P4 2,8GHz :-( Die Statusanzeige zeigt "grab 24,8 fps". Progdvb sieht wesenlich besser aus (Hardwaremodus).


    Was nun, Auflösung reduzieren? Oder wie bekomme ich die Beschleunigung (accel true) aktiviert ( nvidia Geforce 5900XT)?


    Gruß


    Norbert

  • Hallo,


    irgendetwas stimmt da noch nicht: Auf meinem Duron 800 läuft fbdev_deint2 -i 1 ohne ruckeln mit 55% cpu last und fps=25.0


    Ich habe den Grafikchip spezifischen Framebiuffer in den Kernel mit rein kompiliert (savagefb).
    Der generische Vesa-framebuffer ist in seiner Leistungsfähigkeit offensichtlich sehr eingeschränkt. Prüft mal ob Ihr in der Kernelconfig nicht auch einen geeigneteren Framebuffertreiber findet.


    gruß,


    Tamander

    Shuttle SK41G, Duron 800, Technotrend 1.6, Gentoo, Kernel 2.6.11-rc5
    ASRock NF7G-HDready, X2 64 4200+, DVB-S Nexus, Debian AMD64, Kernel 2.6.23

  • Frank sei Dank geht es hier jetzt mit -i 1 bis 3 ohne Kämme, aber nur mit ruckeligen 16 fps (~XP 2000). Sollte ich was vom geforce4 MX in meinen ct-Kernel kompilieren, um eventuell sogar die hdtv-mpeg2s möglich zu machen? Mit xvmc beim xine und beim mplayer hat das sehr viel geholfenauf meinem nforce2 IGP. Aber was der Deinterlacer zur Beschleunigung braucht, ist mir unklar. Was sollte ich denn mal versuchen?


    Viele Grüße,
    Jens