[HowTo] Softdevice-Plugin, Epia ME6000, DirectFB, RealPC geht auch

  • Diese HowTo ist nur als Beispiel zu verstehen wie ich es gemacht habe es ist noch nicht perfekt aber schonmal ein Anfang.
    Nachdem ich mein TestSystem zerschossen hatte hab ich es neu aufgesetzt und einfach mal mit geschrieben.


    An alle Digitainer(RealPC) User bitte die CFLAGS und CXXFLAGS anpassen, der Celeron unterstützt kein -m3dnow.Und ihr könnt march=pentium3 verwenden.
    Hardware:
    Epia ME6000, Nova-T Budget (die neue) mit Fernbedienung, 512MB und ne HDD,PAL-RöhrenTV
    Software:
    Gentoo Base System version 1.6.15 (2006.0)
    DirectFB, softdevice-plugin, VDR, Lirc


    Ich konnte wie in Quelle [a] beschrieben das viafb-modul nicht erzeugen.
    Wie folgt habe ich das Problem gelöst.


    Viafb Ihr solltet sämtliche FramebufferTreiber aus dem Kernel nehmen (Vesa o.ä.).

    Code
    cd /usr/local/src
    cvs -d:pserver:anonymous@cvs.directfb.org:/cvs/directfb -z3 co -P linux-viafb
    cd linux-viafb/

    Ich musste den Kernel patchen was aber nur russisch bei mir zu lösen war.(Warum auch immer)

    Code
    make kpatch-copy (funktioniert nicht aber trotzdem ausführen)
    nano /usr/src/linux/drivers/video/Makefile

    Dann musste ich folgendes eintragen was kpatch-copy machen sollte.

    Zitat

    obj-$(CONFIG_FB_I810) += vgastate.o
    *obj-$(CONFIG_FB_CLE266) += cle266/ cfbfillrect.o cfbcopyarea.o cfbimgblt.o
    obj-$(CONFIG_FB_NEOMAGIC) += neofb.o vgastate.o


    Die Zeile mit dem Sternchen muss da eingetragen werden.
    Dann noch die nötigen Daten kopieren.


    Ab Kernel 2.6.19 muss noch folgender Patch durchgeführt werden.Falls ihr diese Fehlermeldung bekommt(Thx to TSkora)

    Evtl. auftretende Fehlermeldung die sich auf das viafb-Modul beziehen könnt ihr getrost ignorieren.Und den neuen Kernel starten.


    Nach dem Neustart checken wir mal ob wir gute Arbeit geleistet haben.
    Wenn ab hier noch ein Fehler auftaucht dann noch mal von vorn.

    Code
    modprobe viafb mode=640x480 TVon=1 TVtype=2
    fbset -i

    liefert folgendes

    Wenn das da steht und ein Bild auf dem TV zusehen ist, können wir weiter machen.
    Man sollte dann das Modul mit seinen Optionen beim Booten schon starten.
    Bei mir in die /etc/modules.autoload.d/kernel-2.6 eintragen.


    libcle266mpegdec:

    Code
    cd /usr/local/src
    Die DownloadUrl findet man hier - http://sourceforge.net/project/showfiles.php?group_id=176530&package_id=203064
    wget http://url
    tar xvf libcle266mpegdec-0.4.tar.gz
    cd libcle266mpegdec-0.4
    ./configure --prefix=/usr  CFLAGS="-O2 -march=c3 -pipe -fomit-frame-pointer -m3dnow -mmmx"
    CXXFLAGS="-O2 -march=c3 -pipe -fomit-frame-pointer -m3dnow -mmmx"
    make
    make install
    cd ..

    FFmpeg:

    Code
    svn checkout svn://svn.mplayerhq.hu/ffmpeg/trunk ffmpeg
    cd ffmpeg/
    ./configure --prefix=/usr --disable-ffserver --disable-ffplay --disable-bktr --disable-ipv6 \ --enable-shared \
    --enable-gpl --enable-pp --cpu=x86 --tune=i586 --disable-debug --disable-altivec \ --disable-audio-oss --disable-v4l \
    --disable-dv1394 --disable-network --cc=i586-pc-linux-gnu-gcc 
    make && make install && make install-libs && make install-headers
    cd ..

    DirectFB:

    Code
    cvs -d:pserver:anonymous@cvs.directfb.org:/cvs/directfb -z3 co -P DirectFB
    cd DirectFB/
    ./autogen.sh
    ./configure --prefix=/usr --disable-video4linux --disable-x11 --disable-vnc --disable-sdl      \ --disable-sse \
    --with-gfxdrivers=cle266,unichrome --with-inputdrivers=lirc CFLAGS="-march=c3 \ -fomit-frame-pointer \
    -m3dnow -mmmx" CXXFLAGS="-march=c3 -fomit-frame-pointer -m3dnow -mmmx"
    make && make install
    cd ..

    DBF++:

    Code
    # cvs -d:pserver:anonymous@cvs.directfb.org:/cvs/directfb -z3 co -P DFB++
    cd DFB++/
    export PKG_CONFIG_PATH=/usr/lib/pkgconfig
    ./autogen.sh
    ./configure --prefix=/usr  CFLAGS="-O2 -march=c3 -pipe -fomit-frame-pointer -m3dnow -mmmx" \ 
    CXXFLAGS="-O2 -march=c3 -pipe -fomit-frame-pointer -m3dnow -mmmx"
    make && make install
    cd ..

    erzeuge ne /etc/directfb

    Code
    nano /etc/directfbrc


    Zitat

    fbdev=/dev/fb0
    mode=720x576
    depth=32
    pixelformat=ARGB
    disable-module=cle266
    no-vt


    VDR: da gilt es nur die optionen zu beachten

    Nun musste ich noch das Make.config vom VDR anpassen brachte ein flüssigeres Bild.

    Code
    # cp Make.config.template Make.config
    nano Make.config (hier die Optionen ändern)
    	CFLAGS   = -g -O3 -Wall -pipe -fomit-frame-pointer -m3dnow -mmmx
    	CXXFLAGS = -g -O3 -Wall -Woverloaded-virtual -pipe -fomit-frame-pointer -m3dnow -mmmx
    make
    make plugins

    Check noch mal die Einstellungen und das Existieren von /etc/fb.modes und /etc/directfb.(Die waren weg zu diesem Zeitpunkt bei mir)
    Dann kann man schonmal testen ob alles funktioniert.

    Code
    ./vdr -P"softdevice -vo dfb:cle266"


    Jetzt sollte der VDR ein Bild liefern.
    Erläuterung:
    Der Befehl unten laut Quelle [a] kann ich nicht nutzen da DirectFB Out-of-Sync das sind die Pluszeichen bei laufender Konsole liefert

    Code
    # ./vdr -P"softdevice -vo dfb:cle266:viatv"

    top liefert bei videoplay

    Zitat

    PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
    6135 root 15 0 165m 10m 3436 S 37.4 2.1 0:16.37 vdr


    Gruß Tom


    Quellenangabe


    a: http://www.mellander.org/per/p…x/?chapter=epia-hw-cle266


    Mein Dank gilt allen die mir das Bastelerlebnis beschert haben.


    Bitte Alle die einen Verbesserungsvorschlag haben richtet sie per PN an mich damit der Thread übersichtlich bleibt.


    P.S. Ich hab die Codezeilen überarbeitet könnt ihr jetzt mit Strg c+v übernehmen.

    Gruß Tom


    99% der ComputerFehler sitzen zwischen Tastatur und Rückenlehne :schiel

    11 Mal editiert, zuletzt von tr500 ()

  • tr500




    Was bringt Dir ein -m3dnow , das kann doch das Epia gar nicht !?
    Mein Epia M-10000 jedenfalls nicht.


    Bye
    Alex

    Server: CPU J1900 | 1x CineS2 | Debian Bullseye headless| VDR 2.6.3
    Client: 2x Himbeere mit vdr

  • Samuel (und damit 6000) kanns, Nehemiah (10000) kann es nicht. VIA hat die 3dnow-Unterstützung fallen lassen und durch SSE-Unterstützung ersetzt, ich bin aber nicht sicher wann. Wenn ich mich recht erinnere dann sind die 8000er auch noch mit 3dnow bestückt.

  • Ich hatte den Eindruck das Ganze läuft son bisschen flüssiger, mit diesen Einstellungen. Man darf mich ruhig belehren wenn dem nicht so ist.


    Wobei das Howto ner Überarbeitung ansteht denn die Patcherei von DFB, DirectFB und softdevice kann wegfallen.
    Hab nur grad Probleme mit DirectFB-1.0.0-r2 die läuft nicht deswegen nehm ich grad noch die -r1.

    Gruß Tom


    99% der ComputerFehler sitzen zwischen Tastatur und Rückenlehne :schiel

  • Mal eine Frage bzgl. viafb und dem 2.6.19.1-Kernel: ist das ganze noch aktuell? Kernel-Patchen ergibt fehlerhafte Patchvorgänge und ein make in linux-viafb ergibt:


    Gruß,
    Thomas

  • :moin


    Um meine Frage zu beantworten, ich musste ein wenig rumpatchen:


    Kompiliert grad auf dem VDR, d.h. es ist ungetestet, sollte aber keine Probleme machen.


    Gruß,
    Thomas

  • Hab den VDR jetzt in einer selbstkompilierten Version zum laufen bekommen und höre auch schon den Ton.


    Eine Frage hierzu: wenn ich dieses HOWTO hier befolgt hab, geht das Bild dann auf den TV-Out? Ich hab es mit Tvon beim modprobe für den viafb probiert, bekomm aber kein Bild auf den normalen PC-Monitorausgang. Letzteres wäre beim testen ganz hilfreich.


    Übrigens ein sehr hilfreiches HOWTO, dickes Lob von mir!

  • Hi TSkora
    Du wirst lachen kann ich Dir noch nicht mal so genau sagen ob ich ein Bild am Moni hatte ;)
    Hab das ganze per SSH gemacht.


    Doch jetzt fällts mir ein ich habe ein Bild am Moni und am TV, was sich aber nach gewisser Zeit am Moni abschaltet.
    Das Abschalten kannste mit setterm setzen, (no suspend) oder so war die Option googel mal danach

    Gruß Tom


    99% der ComputerFehler sitzen zwischen Tastatur und Rückenlehne :schiel

  • Hallo zusammen,


    ich habe versucht das ganze auf einem real-pc durchzuführen. Ich verwende c't VDR - 1.4.4 (Tobis Repository). Dabei bin ich wie folgt vorgegangen:


    Erst mal Kernelupdate gemäß wilderigel ctvdr/Debian Kernelupdate von kernel.org + lirc + cdfs (+ hg-dvb)


    ... natürlich mit kpatch - copy


    Zitat

    obj-$(CONFIG_FB_CLE266) += cle266/ cfbfillrect.o cfbcopyarea.o cfbimgblt.o


    dann den Kernel installiert, modprobe durchgeführt und dann fbset -i


    hier habe ich die ersten Differenzen




    Ist das ein Problem, ich hoffe nicht.


    Dann ffmpeg gebaut, keine Probleme, außer vielen Warungen.


    Könnte man hier eigentlich ffmpeg auch mit apt-get install ffmpeg installieren?



    Nun habe ich aber ein Problem beim Bau von DirectFB:


    Code
    ./configure: line 25538: syntax error near unexpected token `TSLIB,'
    ./configure: line 25538: `    PKG_CHECK_MODULES(TSLIB, tslib-0.0 >= 0.0.2, enable_tslib=yes, enable_tslib=no'


    Heißt das, daß ich tslib installieren muß? ... Wie geht denn das, für einen Linux - Halbdeppen? :doof Am besten unter Debian mit apt-get.



    Damit funktioniert natürlich der Bau von DFB++ nicht


    Code
    ./configure: line 19750: syntax error near unexpected token `DIRECTFB,'
    ./configure: line 19750: `PKG_CHECK_MODULES(DIRECTFB, directfb >= $DIRECTFB_VERSION)'



    Eigentlich wollte ich danach das softdevice - plugin mit dem Quelltextpaket von Tobi bauen (Das-vdr-quelltextpaket)


    Hat das jemand schon auf diese Weise realisiert. Hab ich das so richtig verstanden? Wie kann man das Problem bei DirectFB lösen?
    ... Oder hat etwa jemand schon ein .deb - Paket für das alles gepackt? ;)



    Es wäre super wenn mir jemand helfen könnte.



    ... Schon mal vielen Dank


    Wolfgang

    Clients
    VDR1: yaVDR 0.5 stable auf ZOTAC ION A 4Gbyte RAM / mit ATRIC - IR - Einschalter softhddevice per streamdev am Server
    VDR2 / VDR3: MLD 5.1 auf Raspberry pi3
    2 x VOMP 0.4 auf mediamvp
    Server
    Cubietruck, Lubuntu Trusty, vdr aus yaVDR - sourcen, 1 x TT S2-3600, 1 x TT S2-3650 CI, 1 x sundtek SkyTV III, 1 x sundtek SkyTV IV

  • Hallo woz


    Ich denke die Framebuffer Info ist schon OK das wichtigste "UNICHROME" steht ja drin d.h. du hast nen funktionierenden VIA-Frambuffer.


    Zu Thema Debian kann ich dir nicht helfen.
    Aber ich geh mal davon aus das bei Debian halbwegs aktuelle Klamotten vorhanden sind.
    Probiers einfach mal aus.
    Bevor du aber was mit apt-get installierst dann lösche vorher alles und ich meine wirklich alles was mit ffmpeg zu tun hat denn 2 verschiedene Versionen von ffmpeg haben hier dem ein oder anderen schon schwer Kopfschmerzen bereitet.

    Gruß Tom


    99% der ComputerFehler sitzen zwischen Tastatur und Rückenlehne :schiel

  • Hallo tr500


    Danke für die suuuperschnelle Antwort. Sitzt Du eigentlich vor der Kiste und wartest darauf, daß jemand blöde Fragen stellt ;)


    Nein im Ernst:


    ich hab das Ganze auf einem "junfräulichen" PC kompiliert, ohne daß ffmpeg per Debian - Paket installiert worden wäre.


    Trotzdem habe ich das Problem mit dem TSLIB.


    Ich habe das Ganze auch mal mit --with-inputdrivers=none getestet, lief aber auch nicht.


    Könnte das ./configure - file ein Problem haben?


    Gruß
    Wolfgang

    Clients
    VDR1: yaVDR 0.5 stable auf ZOTAC ION A 4Gbyte RAM / mit ATRIC - IR - Einschalter softhddevice per streamdev am Server
    VDR2 / VDR3: MLD 5.1 auf Raspberry pi3
    2 x VOMP 0.4 auf mediamvp
    Server
    Cubietruck, Lubuntu Trusty, vdr aus yaVDR - sourcen, 1 x TT S2-3600, 1 x TT S2-3650 CI, 1 x sundtek SkyTV III, 1 x sundtek SkyTV IV

  • OT:


    Zitat

    Original von woz
    ...Sitzt Du eigentlich vor der Kiste und wartest darauf, daß jemand blöde Fragen stellt ;-)...


    Es gibt da eine E-Mail Benachrichtung für die Beiträge.
    Und wenn man den VDR auch noch mit dem Mailbox Plugin betreibt dann sieht man das immer live am TV, wenn eine neue E-Mail eingegangen ist.
    Dann kann man nachschauen, von wem und dann entscheiden wie wichtig die E-Mail ist


    ;)

    Vice President Logistics and Materials Handling of the first 40" TFT Sammelbestellung and Atmolight I + II + III

  • Hallo Papsi


    [OT]


    Das mit dem Mailbox - Plugin werde ich mal ausprobieren wenn das softdevice - plugin mit CLE266 funzt.


    [/OT]


    Gruß


    Wolfgang

    Clients
    VDR1: yaVDR 0.5 stable auf ZOTAC ION A 4Gbyte RAM / mit ATRIC - IR - Einschalter softhddevice per streamdev am Server
    VDR2 / VDR3: MLD 5.1 auf Raspberry pi3
    2 x VOMP 0.4 auf mediamvp
    Server
    Cubietruck, Lubuntu Trusty, vdr aus yaVDR - sourcen, 1 x TT S2-3600, 1 x TT S2-3650 CI, 1 x sundtek SkyTV III, 1 x sundtek SkyTV IV

  • FFMpeg hab ich auf meinem Debian Stable selbstkompiliert, das Paket hat glaub ich Probleme gemacht.


    Generell ist es eine gute Idee FFMpeg selbst zu bauen, weil die Binary-Pakete aus rechtlichen Gründen nicht vollständig sind.

  • Also bei mir läufts durch.

    Zitat

    checking for TSLIB... configure: WARNING: *** no tslib -- tslib driver will not be built.


    Das ist die Ausgabe von ./configure.


    Hier mal die Grösse von meiner ./confgure

    Code
    -rwxr-xr-x 1 root root 943656 28. Dez 19:03 configure


    Check mal deine ./configure
    Läuft denn autogen.sh durch ?
    Wenn ja dann gib die Optionen von ./configure mal dem ./autogen.sh mit dann kannste das ./configure weglassen.


    Zitat

    Sitzt Du eigentlich vor der Kiste und wartest darauf, daß jemand blöde Fragen stellt ;)

    Ich schlafe im Moment davor ;) bin nur noch 2 Tage online dann hab ich keinen Inet Zugang mehr wegen Umzug.

    Gruß Tom


    99% der ComputerFehler sitzen zwischen Tastatur und Rückenlehne :schiel

    Einmal editiert, zuletzt von tr500 ()

  • Hallo,


    ich arbeite gerade dieses Howto ab.


    Das Modul lies sich übersetzen, und ich habe außer diesem alle anderen aus dem Kernel 'rausgenommen.


    Dann stoppe ich noch den VDR und komme nun bis:

    Zitat

    modprobe viafb mode=640x480 TVon=1 TVtype=2


    Das liefert mir:


    Code
    viafb: VIA UNICHROME framebuffer 1.0 initializing


    Das nachfolgende fbset -i sagt dann:


    Code
    open /dev/fb0: No such file or directory


    ...und in /var/log/messages bzw. dmesg gar keine Meldung.


    Ich benutze ein EPIA EN15000.


    Hat jemand 'ne Ahnung, was da schief laufen könnte?


    Wenn ich den VESA FB drin lasse, dann läßt der sich initialisieren.


    Danke,


    Tom

    In Betrieb: Serener GD-L01 mit VIA EPIA-EN15000G (passiv / 30W Betrieb / 4W Standby), Hitachi 80GB 2.5", FF: TT-DVB-S 2.3, c't-VDR 5
    Reserve: Asus Pundit mit P4 1.6 GHz (sehr leise / 60W Betrieb), IBM 60 GB 2.5", FF: TT-DVB-S 1.6, Budget: TT-DVB-T 1.3, c't-VDR 5

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!