[solved] xine und xineliboutput nur ein thread .. wieso ?

  • hiho all,


    trotz des parameters


    video.processing.ffmpeg_thread_count:2


    oder auch hoeher habe ich immer nur eine auslastung von max 50% :( ...


    also eine core volllast. ist das nen know bug im aktuellen cvs und snv status. oder mache ich was falsch?


    gruesse mentox

    Einmal editiert, zuletzt von mentox ()

  • ja alles selber .. ich muss mal gucken .. ich glaube es liegt an dem "-enable-pthreads"


    jetzt wo du es geschrieben hast faellt es mir wie schuppen von den augen.. kotz ..


    danke dafuer .. berichte wenns geht


    gruesse mentox

  • bei mir ist es leider alles nur auf einem core :(






    was koennte es noch sein .. welche infos braucht ihr noch zum gruebln :)


    gruesse mentox

  • Hi mentox,


    1) nimm doch mal die Option "--disable-optimizations" raus, oder was bezweckst Du damit?


    2) was genau versuchst Du denn zu dekodieren? Bei 720p ist aktuell nicht viel zu parallelisieren während 1080i recht gut 2 cores auslastet.


    Gruß, ollo

  • hi


    schuld war der hier :)


    --enable-libx264



    da ich gentoo habe nutz der ja die system flags .. keine ahnung was der da so alles reinbastelt


    aber das use flag x264 ist fuer ffmpeg nicht gut..


    jetzt gehts super .. bekomme somit auch 130% cpu last hin ;)


    danke und gruss mentox

  • mentox


    hallo erstmal,


    ich hab ein ähnliches bzw. das selbe problem wie du.
    ich bastel mir gerade einen HD-VDR, der grundsätzlich schon läuft.
    mein problem ist jedoch das z.B. ORF1 HD nicht flüssig läuft.
    ich bekomme von xine die meldung das es zu viele frames verliert.
    hier mal die hardware:
    asus m3a h hdmi
    athlon 64 x2 3800+ @ 2,5GHz
    2gb ddr2 667 ram (4x 512)
    geforce 7200 gs 256mb.


    das ganze läuft mit gen2vdr.
    edit:
    den letzten nvidia treiber hab ich auch installiert. der ist von ende mai. funktioniert auch da ich bei xine-check keine negativen sachen bekomme bis auf mtrr? und ein skin verzeichniss das fehlt.
    aber mtrr ist ja glaub ich nur für agp karten wichtig, ich hab eine pcie.


    als anleitung für den hd kram hab ich das hier verwendet:
    http://www.htpc-forum.de/forum/index.php?s=bf1027bf608305c5dba241bf747941db&showtopic=4344&st=0


    jetzt hab ich schon das use flag für x264 rausgenommen lt. gentoo doku.


    Code
    Sie können natürlich ein USE-Flag für ein Ebuild explizit deaktivieren. Wenn Sie zum Beispiel keine java Unterstützung in PHP benötigen:
    
    
    Befehlsauflistung 2.4: /etc/portage/package.use Beispiel 2
    
    
    dev-php/php -java


    in meinem fall hab ich
    media-libs/ffmpeg -x264 eingetragen (oder so ähnlich, kann es gerade nicht nachsehen da ich in der arbeit bin.) Ich habe es aber mit emerge --pretend --verbose ffmpeg überprüft und x264 ist mit einem minus gekennzeichnet. ausserdem ist es in grün geschrieben.
    wenn ich orf1 hd schaue hab ich einen cpu auslastung von 80-103% laut top.
    gesammt auslastung ist jedoch nur 48-52% (für beide cores)


    was mache ich falsch? oder reicht die grafikkarten nicht aus? hab noch eine 8500gt 512mb die ich heute nachmittag mal probieren werde.


    bin für jeden tip dankbar!


    mfg
    KiLLERHOLiC

    Octopus Net S2 + DuoFlex S2
    VDR-2.3.8, Plugins: EPG-Search, VNSI-Server, satip

    Einmal editiert, zuletzt von KiLLERHOLiC ()

  • Hi,


    AFAIK geht H.264 nur auf verschiedene Threads zu verteilen, wenn der Stream in s.g. Slices geteilt ist. In diesem Fall würde jeder Kern abwechselnd eine Scheibe bekommen.
    Ob das jetzt nun für alle Decoder zutrifft weiß ich nicht. Ich gehe mal davon aus, das ORF das nicht macht, jedenfalls kommt bei mir beim Abspielen sinngemäß folgenden Ausschrift: "Could not find slice header .."



    Grüße
    Andi

  • das würde bedeuten das ich einen schnelleren prozessor brauche.
    nur leider gibt es nichts das wesentlich schneller ist wenn ich nur einen kern nutzen kann.
    der schnellste amd (taktrate) ist der 6400+ mit 3,2ghz. würde der reichen?
    oder doch einen intel? ein e8400 mit 3ghz?
    das audiosignal möchte ich digital über den coaxial ausgang an meinen receiver schicken, bringt es etwas wenn xine den ton nicht dekodieren muss, sondern nur an den coax. ausgang schickt. (wäre etwas weniger cpu last, oder?)


    mfg
    KiLLERHOLiC

    Octopus Net S2 + DuoFlex S2
    VDR-2.3.8, Plugins: EPG-Search, VNSI-Server, satip

  • versuch mal das hier ..



    Code
    Nachtrag 20.04.08
    Optimierungen der config_xineliboutput:
    
    
    video.processing.ffmpeg_choose_speed_over_accuracy:1
    video.processing.ffmpeg_pp_quality:0
    video.processing.ffmpeg_skip_loop_filter:all
    
    
    bringen nochmals ca. 10 Prozent CPU-Last weniger.



    Erfahrungsbericht HDTV mit VDR

  • Jetzt läuft es, das Bild ist wunderschön. Leider fällt aber der Ton immer wieder aus.
    Egal ob ich es analog oder digital ausgebe.
    Das Problem tritt auch auf SD Sendern auf. Ich arbeite jetzt mit dem xine-liboutput Plugin und mit vdr-sxfe (remote, lokal hab ich es nicht geschafft)
    Ausserdem passiert es oft das das OSD verschoben wird das ich fast nichts mehr sehe davon.
    Meist ist es wenn ich von ORF1 HD auf einen SD Sender schalte. Das OSD wird dann nach oben links verschoben.
    Vom Haupmenü sehe ich dann überhaupt nichts mehr bis auf die Rechte untere Ecke.


    Die optimierungen für die config_xineliboutput habe ich wieder deaktiviert da es in meinem Fall nichts bringt.


    Zurzeit läuft es auf folgender Hardware:
    AMD Athlon 64 x2 3800+ @ 2,5GHz (bleibt jetzt wahrscheinlich auch im End-System)
    Asus M3A H/HDMI (wird getauscht gegen ein M3N78-EMH-HDMI da der onboard ATI Grafikchip nicht zu gebrauchen ist.
    4x 512MB DDR2 Speicher
    Geforce 7200GS 256MB (wird vermutlich auch wieder rausfliegen da das M3N78-EMH-HDMI einen Geforce Grafikchip hat der laufen sollte.
    80GB Hitachi HDD (wird auch gegen eine andere leiserer getauscht, eventuell gegen eine 40GB Seagte 2,5". Der VDR wird nur zum Liveschauen verwendet, Aufnahmen mache ich mit meinem alten System)
    Samsung DVD-Brenner
    Seasonic 380Watt Netzteil (wird sicher gegen ein kleineres leiseres ersetzt.)
    Gehäuse gibt es zurzeit noch nicht, ist noch ein offenes Testsystem. Eventuell nehme ich mir den Antec Fusion.
    Terratec Cinergy 1200-C DVB-C budget Karte (alte Version)


    Was mache ich jetzt gegen die Probleme mit dem Ton und mit dem OSD?
    Hat jemand eine Idee?
    EDIT:
    Weis jemand wie es mit der Unterstützung für das Antec Display und Infrarot empfänger aussieht?
    EDIT2: lt. Antec HP funktioniert beides http://www.antec.com/us/support_roductInfo_FAQ.php?Qnumber=4&FAQno=24).
    Irgendwo hab ich mal gelesen das der IR-Empfänger mit Lirc (imon?) funktionieren soll. Welche Fernbedienung kann ich dazu nehmen? Muss es eine MCE FB sein oder funktionieren andere auch?
    EDIT2: lt. Antec HP funktionieren MCE FB's, gehen andere auch?
    Kann man den PC dann mit der FB einschalten?
    EDIT2: Einschalten sollte laut Antec HP kein Problem sein (http://www.antec.com/us/support_roductInfo_FAQ.php?Qnumber=12&FAQno=24).
    Fragen über Fragen wer kann mir dazu was sagen...


    Danke schonmal!
    KiLLERHOLiC

    Octopus Net S2 + DuoFlex S2
    VDR-2.3.8, Plugins: EPG-Search, VNSI-Server, satip

    2 Mal editiert, zuletzt von KiLLERHOLiC ()

  • Zitat

    Ausserdem passiert es oft das das OSD verschoben wird das ich fast nichts mehr sehe davon.
    Meist ist es wenn ich von ORF1 HD auf einen SD Sender schalte. Das OSD wird dann nach oben links verschoben.
    Vom Haupmenü sehe ich dann überhaupt nichts mehr bis auf die Rechte untere Ecke.


    hatte ich auch mal, ich glaube da waren noch irgendwelche Restbestände einer alten xineliboutput Version bei mir damals schuld


    Zitat

    Weis jemand wie es mit der Unterstützung für das Antec Display und Infrarot empfänger aussieht?


    Hab selber das antec fusion V2 in silber.
    das läuft beides
    ab easyVDR 0.6.1 oder wie die gerade anstehende heißen wird, geht übrigens beides "out of the box" sofort nach der Installation


    Zitat

    Irgendwo hab ich mal gelesen das der IR-Empfänger mit Lirc (imon?) funktionieren soll. Welche Fernbedienung kann ich dazu nehmen? Muss es eine MCE FB sein oder funktionieren andere auch?


    Die imon FB und die Orginalen von Microsoft gehen auf jeden Fall


    Zitat

    Kann man den PC dann mit der FB einschalten?


    Kann man mit beiden obigen.


    Gruß
    maxx

    Asrock Ion 330HT, 2 GB, 1 TB, NovaTD USB Dual + Nova-T Stick DVB-T, Philips SDV 2940 DVB-T Antenne, WLAN per Netgear WNCE2001, Sound optisch über Yamaha RX-V 361 / Heco Vogue 5.1, Samsung R81B 37''

  • hi mentox,


    so wie's aussieht, hab' ich mich letztens doch getäuscht und vdr-sxfe / xineliboutput läuft auch hier nur auf einem kern/thread :(


    die nvidia 8500 ist verbaut - mit "xv" als video-treiber bekomme ich ein bild, doch der einzige HD-sender, der "halbwegs" läuft ist ORF (720p) - die anderen tauchen kurz auf (so 3-20 sekunden) - dann reisst mir's vdr-sxfe ab (auch mit seg-fault und coredumps - vdr-sxfe spuckt oft "PAFF interlacing not implemented" und "DC" "MV" errors aus). folgende 'optimierungen' sind aktiviert:


    Code
    video.processing.ffmpeg_choose_speed_over_accuracy:1
    video.processing.ffmpeg_pp_quality:0
    video.processing.ffmpeg_skip_loop_filter:all
    video.processing.ffmpeg_thread_count:2


    bei ffmpeg war "--enable-libx264" ursprünglich auch dabei - hab ich nun explizit mit "--disable-libx264" rausgeschmissen. die CPU-last fährt trotzdem nicht über 50% :schiel :tdw


    Code
    ffmpeg | head
    FFmpeg version SVN-r12879, Copyright (c) 2000-2008 Fabrice Bellard, et al.
      configuration: --extra-cflags=-fPIC --enable-shared --enable-gpl --enable-postproc --enable-liba52 --enable-libmp3lame --enable-libvorbis --enable-pthreads --enable-static --disable-altivec --disable-debug --disable-network --enable-libfaac --enable-libxvid --enable-libdc1394 --enable-x11grab --enable-libfaad --enable-avfilter --enable-avfilter-lavf --enable-swscale --disable-stripping --disable-libx264 --arch=x86_64
      libavutil version: 49.6.0
      libavcodec version: 51.55.0
      libavformat version: 52.13.0
      libavdevice version: 52.0.0
      libavfilter version: 0.0.0
      built on Jun 16 2008 23:46:42, gcc: 4.1.3 20070929 (prerelease) (Ubuntu 4.1.2-16ubuntu2)


    ich hab mich überhaupt ein wenig an deinen oben erwähnten fred (wolfgangs/wbreu - Erfahrungsbericht HDTV mit VDR) bzgl. der einstellungen gehalten - trotzdem, leider kein erfolg :evil:


    vielleicht fällt dir noch was auf ? :)


    danke & gruß
    ciax

  • Hallo ciax,


    hast du nach der Änderung von ffmpeg auch die xine-lib, xine-ui und xineliboutput neu gebaut?


    Soweit ich das im Kopf habe ist das auch zwingend notwendig.



    Welchen xorg-Treiber hast du der Nvidia verpasst? xorg.conf?




    Hier mal meine Angaben zu ffmpeg:


    ffmpeg | head


    FFmpeg version SVN-r12218, Copyright (c) 2000-2008 Fabrice Bellard, et al.
    configuration: --prefix=/usr --enable-shared --enable-gpl --enable-pp --enable-liba52 --enable-libmp3lame --enable-libvorbis --enable-pthreads --enable-libx264 --enable-libxvid --cpu=athlon64
    libavutil version: 49.6.0
    libavcodec version: 51.50.1
    libavformat version: 52.7.0
    libavdevice version: 52.0.0
    built on Mar 3 2008 17:49:21, gcc: 4.1.2 20061115 (prerelease) (Debian 4.1.1-21)
    usage: ffmpeg [[infile options] -i infile]... {[outfile options] outfile}...
    Hyper fast Audio and Video encoder


    Main options:
    -L show license
    -h show help
    -version show version
    -formats show available formats, codecs, protocols, ...
    -f fmt force format
    -i filename input file name


    Ich setzte im Moment ziemlich aktuelle Versionen von xine-lib, xine-ui und xineliboutput ein, die ich am Samstag alle aus dem cvs neu gebaut habe.


    Das Zusammenspiel der Pakete und das Verteilen auf beide CPU's klappt da ganz gut.


    Noch eine Info zu den Experimenten mit XV und den Ati-Chips, mein Nachbar ist so begeistert von der Ausgabe das der PC jetzt für immer bei ihm steht => aber ich baue mir bald einen neuen zusammen und dokumentiere dann mal sauber hier im Forum.


    Gruß
    Wolfgang

  • hi wolfgang! danke für dein statement! :)


    Zitat

    Original von wbreu
    hast du nach der Änderung von ffmpeg auch die xine-lib, xine-ui und xineliboutput neu gebaut?


    Soweit ich das im Kopf habe ist das auch zwingend notwendig.


    hast natürlich recht! xine-lib mit "--external-ffmpeg". dann ist's natürlich notwendig, klar.


    Zitat

    Welchen xorg-Treiber hast du der Nvidia verpasst? xorg.conf?


    ist der "nvidia" closed source.

    Hier mal meine Angaben zu ffmpeg:



    werde das ganze nun einmal mit deinen parametern probieren - dann wird's wohl endlich einmal funzen :schiel .


    Zitat

    Ich setzte im Moment ziemlich aktuelle Versionen von xine-lib, xine-ui und xineliboutput ein, die ich am Samstag alle aus dem cvs neu gebaut habe.


    das mit den aktuellen paketen funktioniert hier nicht - ffmpeg kompiliert ganz fein - danach stellt's xine-lib beim übersetzten auf .. eigenartig :evil:


    nur mit den xine-lib versionen, die "rnissl" (xine-plug) einmal zur verfügung gestellt hat, klappte es (die von 20080310). "sparkie" hat einmal erwähnt, daß rnissl die lib irgendwie anders baut ( --> http://www.linuxtv.org/pipermail/vdr/2008-March/016195.html ) .. muß ich auch einmal ausprobieren 8)


    //edit on:
    die andere methode brachte erst keinen erfolg .. nun hat's durchkompiliert. es fehlte hier "-fPIC" und "-lm" (linken der math-lib)
    //edit off:


    Zitat

    Noch eine Info zu den Experimenten mit XV und den Ati-Chips, mein Nachbar ist so begeistert von der Ausgabe das der PC jetzt für immer bei ihm steht => aber ich baue mir bald einen neuen zusammen und dokumentiere dann mal sauber hier im Forum.


    auf deine xorg.conf (ati-optionen) von dieser box ist "ollo" ganz gespannt! ;) --> hier hat er nochmal danach gefragt! --> Diagonaler Streifen mit xineliboutput


    danke! :tup


    gruß, ciax

    Lascala LC17 - tribute to viking ;o) + atric IR / SoC ASUS J3455M-E / OctopusNet S4 / yavdr ubuntu jammy / output: osd2web + kivy-osd2web / branch 'python3' via 6.4" TFT & sat>ip DVB-S/S2 via FullHD / NVidia GT1030 passiv

    Einmal editiert, zuletzt von ciax ()

  • Hallo ciax, Hallo Ollo,


    wenns nur um die xorg.conf geht die habe ich griffbereit gesichert!


    Lief bei mir sauber mit dem 780G-Board samt HD3200 und XV:


    Section "ServerLayout"
    Identifier "aticonfig-Layout[all]"
    Screen 0 "aticonfig-Screen[0]" 0 0
    EndSection


    Section "Files"
    EndSection


    Section "Module"
    Load "dri"
    Load "extmod"
    Load "freetype"
    Load "glx"
    EndSection


    Section "ServerFlags"
    Option "AIGLX" "off"
    EndSection


    Section "Monitor"
    Identifier "aticonfig-Monitor[0]"
    Option "VendorName" "ATI Proprietary Driver"
    Option "ModelName" "Generic Autodetecting Monitor"
    Option "DPMS" "true"
    EndSection


    Section "Device"
    Identifier "aticonfig-Device[0]"
    Driver "fglrx"
    Option "TexturedVideo" "on"
    Option "VideoOverlay" "on"
    Option "OpenGLOverlay" "off"
    Option "Capabilities" "0x00000800"
    EndSection


    Section "Screen"
    Identifier "aticonfig-Screen[0]"
    Device "aticonfig-Device[0]"
    Monitor "aticonfig-Monitor[0]"
    DefaultDepth 24
    SubSection "Display"
    Viewport 0 0
    Depth 24
    EndSubSection
    EndSection


    Section "DRI"
    Mode 0666
    EndSection


    Section "Extensions"
    Option "Composite" "0"
    EndSection


    In der /etc/ati/amdpcsdb sollte am Ende noch das hier sein:


    .
    .
    .
    [AMDPCSROOT/SYSTEM/DDX]
    TexturedVideo=Son
    VideoOverlay=Son
    OpenGLOverlay=Soff
    TexturedVideoSync=Soff
    Capabilities=S0x00000800


    Gruß
    Wolfgang

  • Hi wbreu,


    danke, aber das funktioniert bei mir leider nicht. Mit xineliboutput (CVS von heute) crasht der VDR immer:


    Code
    X Error of failed request:  BadValue (integer parameter out of range for operation)
      Major opcode of failed request:  141 (XVideo)
      Minor opcode of failed request:  19 ()
      Value in failed request:  0x1e00001
      Serial number of failed request:  140
      Current serial number in output stream:  141
    
    
    Program exited with code 01.


    Leider reportet gdb hier "No stack" :(


    Gruß, ollo

  • hi wbreu, hi ollo, hi mentox!


    verwende hier noch die stink normale 1.0.1 des xineliboutput (kein cvs) - hab nun alles (xine-lib, ffmpeg und xine-ui) neu übersetzt und xine-plug bzw. xineliboutput-"plug" durchkompilieren lassen (make plugins :) ) - jetzt läuft's via nvidia auf 2 cores (interlaced) - vdr-sxfe stürzt nicht mehr ab :tup !!


    weiß nicht - mit ati scheint's echt mehr als nur "empfindlich" zu sein! habt ihr (wbreu und ollo) genau das gleiche MB?


    mentox: danke für deinen graka-tip, bin auch zufrieden mit der "zotac" :]


    aber - an "--enable-libx264" kann's nicht liegen - wbreu hat's inklusive x264 am laufen (libx264 wär eigentlich nur zum encoden da ... ) ... :schiel


    danke & ciao,
    ciax

  • hiho...


    kein problem .. freut mich sehr das es bei dir jetzt auch lueppt :)


    habe auch die 1.0.1 am laufen .. cvs scheint im moment zu unstable zu sein ;)


    lg mentox

Jetzt mitmachen!

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