Toon posts:

[X11] kleurdiepte probleem: 8 bit maximaal !?!

Pagina: 1
Acties:
  • 152 views sinds 30-01-2008
  • Reageer

Verwijderd

Topicstarter
Wie een betere titel weet mag het zeggen....

Het probleem is als volgt: bij mij op het werk zijn er wat mensen die linux willen gaan inzetten, en wel als x-terminal / workstation.

Het systeem ziet er als volgt uit:
HP-UX bakken (zonder X) als rekendozen, verder x-terminals en pc's met windows en reflection om de zooi grafisch af te beelden.

Nou staan alle x-terminals ingesteld op 256 kleuren (8 bit), en op pc's met reflection is dat ook de enige juiste instelling, anders gaan de kleuren vervelend swappen. Dat wil zeggen, kleuren zijn vaak compleet fout als ik op mijn werkpc een hogere kleurdiepte kies dan 8 bit (256), waardoor bv menu's onleesbaar worden (witte tekst ipv donkergrijs op een lichtgrijze achtergrond, of heel gillend gifgroen etcetc).

Sinds kort zijn er wat pc's voorzien van linux (dell p4 machines, met redhat 7.3), en vandaag heb ik daar wat software op gestart om te kijken hoe dat ging.
Brak dus; met meer dan 8 bit kleuren ging het niet.

Oh ja, die software loopt dus op een HP machine, de linux pc hoeft de zaak alleen af te beelden (X11).

Met 8 bit gaat het, maar aangezien kde zelf al redelijk wat kleurtjes gebruikt, gaat het zaakje meteen aan het swappen, wat irritant is.

De software vendor (cadence) hierop aanspreken heeft schijnbaar weinig zin, alhoewel ik het onzin vind in de 21e eeuw te moeten betalen voor een bijna zwart-wit programma. (had de parhelia intern geen 128 bit kleuren? en wij 8 bit??? |:( )
Maargoed, die hebben ook wel wat anders te doen dan dit soort 'kosmetica' (maw hebben serieuze bugs te fixen...)

Dus ik vroeg me af:
Is er een mogelijkheid om voor dat unix progje te laten lijken alsof de x-terminal-linux-pc slechts 256 kleuren heeft, terwijl andere programma's wel meer kleuren hebben, of in elk geval niet meer zo hoeven swappen als een ander venster actief wordt?

(PS Van dergelijke dingen hangt nu bij ons op het werk de invoering van linux af; de mensen die het beheren en installeren zijn unix specialisten, die er in principe niet zo blij mee zijn nog een ander soort systeem te moeten onderhouden, zeker niet als er steeds dergelijke ellende van komt...)

  • Ikarus
  • Registratie: Maart 2000
  • Niet online

Ikarus

Nerd 1e klas

Je zou kunnen proberen om xnest te gebruiken om dat te bereiken, en anders misschien een eigen X proxy schrijven als je ziek genoeg bent :) , maar xnest moet opzich genoeg zijn.

There are two major products that come out of Berkeley: LSD and UNIX.
We don't believe this to be a coincidence. -- Jeremy S. Anderson
In short: just say NO TO DRUGS, and maybe you won't end up like the Hurd people. -- Linus TorvaldsI


Verwijderd

Topicstarter
Bedankt!

Met google kwam ik meteen op de manual page:
http://www.xfree86.org/4.2.0/Xnest.1.html

en daar las ik:
Won't run well on servers supporting different visual depths. Still crashes randomly. Probably has some memory leaks.
Hmm, weet niet of we dit wel willen inzetten in een productieomgeving....
Nouja, we zien wel of de tests goed uitpakken. Misschien ligt het er erg aan welke kleurdieptes je gebruikt, en random crasht windows ook... als het maar niet te vaak is..

Verder sta ik open voor nog meer suggesties, maar het is in elk geval een goed begin, thanks!

  • deadinspace
  • Registratie: Juni 2001
  • Laatst online: 14-08 09:26

deadinspace

The what goes where now?

Eigenlijk horen die progs op alle kleurdieptes goed te draaien. Misschien dat het updaten van de xlibs op die HPUX dozen wat kan helpen (disclaimer: ik heb wel eens wat met HPUX gespeeld, maar ik weet niet wat zo'n upgrade voor voeten in aarde heeft en ook niet of het helpt).

De parhelia heeft overigens 10 bit per colorchannel, dus 30 bits kleur in totaal. Er waren btw al lang kaarten met 16 bits per channel, maar dat zijn de professionele high-end videokaarten waarbij je scheel wordt van de prijs.

Verwijderd

Topicstarter
Een search op 'cadence 8 bit depth' geeft een groot aantal hits waarvan de meeste in principe hetzelfde probleem beschrijven als wat ik heb, dus ik denk niet dat je met wat instellingen aan de Unix kant (libs etc) ver komt.

Het is dus echt een beperking van het programma van Cadence...

Ik heb ff gekeken of het met vnc te verhelpen is, ik heb zelf geen root rechten, dus kan xnest niet installeren.
Met vnc gaat het om een of andere vage reden niet, ook al heb ik hier mijn (windows) kleurdiepte ook ingesteld op 8 bit, en ik start
vncserver -depth 8
(en nog wat voor aanduiding resolutie ed.)
dan krijg ik nog altijd vage errors...
Misschien moet ik het op die linuxbak zelf doen, dus lokaal verbinden met de vncserver.

En verder richt mijn hoop zich dus nog op xnest, als de sysop er weer tijd voor heeft dat te installeren.

o/t:
De parhelia heeft naar buiten toe wel 10bit (Digitaal analoog converters) per kleur, maar intern worden de kleuren met 128 bit 'resolutie' berekend, dat bedoelde ik dus...

  • deadinspace
  • Registratie: Juni 2001
  • Laatst online: 14-08 09:26

deadinspace

The what goes where now?

Op woensdag 10 juli 2002 10:27 schreef aRTee het volgende:
De parhelia heeft naar buiten toe wel 10bit (Digitaal analoog converters) per kleur, maar intern worden de kleuren met 128 bit 'resolutie' berekend, dat bedoelde ik dus...
Dat betwijfel ik. Dan zou je dus telkens 118 bits (en dat is VEEL) aan informatie weggooien? Misschien dat die GPU 128-bit instructies heeft oid... Maar 128-bit kleurdiepte per channel is sowieso pure waanzin.

  • Apache
  • Registratie: Juli 2000
  • Laatst online: 11-08 16:30

Apache

amateur software devver

http://www.tweakers.net/nieuws/22301

Volgens mij bedoel je 32 bit per channel (R: 32, G:32, B: 32, Alpha: 32), 128 is zoals deadinspace al zei "pure waanzin" ;)

If it ain't broken it doesn't have enough features


Verwijderd

Topicstarter
Ja ik bedoelde dus 32 bit per kleur,.... maar nou weer ff terug naar het oorspronkelijke probleem... ;)

Oh ja, de sysop heeft nog geen tijd gehad voor xnest..
Ik laat wel horen hoe dat gaat.

  • deadinspace
  • Registratie: Juni 2001
  • Laatst online: 14-08 09:26

deadinspace

The what goes where now?

Op woensdag 10 juli 2002 14:26 schreef aRTee het volgende:
Ja ik bedoelde dus 32 bit per kleur
Implementeert de Parhelia dit dan?
Kvinnet nog steeds veel btw. Niet de waarschijnlijke performance-hit waard. Magoed, tis optioneel enzo.
Oh ja, de sysop heeft nog geen tijd gehad voor xnest..
Ik laat wel horen hoe dat gaat.
Kun je Xnest niet in je homedir compilen en gebruiken?

Verwijderd

Topicstarter
Even een kleine (? ;) ) update,...

Waarom zelf niet compilen?
Ehm, ik heb ook een baan, wordt hier niet betaald (nouja) om met linux te prutsen, en de sysop die xnest moest installeren wel.
Dat is inmiddels wel gelukt, maar het blijkt dat xnest dezelfde kleurdiepte moet hebben als de desktop waarop je 'm laat lopen. (Met sommige videokaarten kan het misschien wel)

Verder ben ik nog wel een hoop aardige dingen tegengekomen, zoals het starten van een 2e xserver, die je vervolgens terugziet onder ctrl-alt-F8.
Voor degenen die dat niet wisten: ga naar een terminal (bv ctrl-alt-F2), log in, en doe daar:
startx -- :1

Nou wil het geval dat je daar ook een kleurdiepte aan kan (zou moeten kunnen) geven:
startx -- -fbbpp 8 :1
of
startx -- -depth 8 :1
(ik kwam ergens tegen dat '-bpp {n}' tegenwoordig geen geldige optie meer is)
Helaas krijg ik dan een melding van een of andere lib die niet op host:0 mag,.. en dat terwijl hij naar host:1 moet....
Ik ben nu ff niet op mijn werk, en hier thuis krijg ik een heel ander effect: ik gebruik gnome, en met bovenstaande commando's krijg ik door mijn gnome heen kde3...... :? :?
(Oh ja, eerst ff export DISPLAY=:1 doen helpt niet...)

Ik heb overigens wel iets gevonden dat wel (min of meer) werkt:
VNC!

Als je vncserver -help doet, krijg je o.a. -depth te zien als optie.
DIE IS HET DUS NIET!

Je moet namelijk
vncserver -cc 3 -name [naampje] :5
doen (5 als voorbeeld, dat wordt het displaynummer).
Waarom weet ik niet, maar -cc 3 betekent: pseudocolour gebruiken, met 8 bit kleurdiepte.
-depth 8
bestaat ook als optie, maar dan blijft het truecolor.

Wat heb ik ook heb uitgevonden; het probleem is niet de 8 bit kleurdiepte, maar dat het pseudocolor moet zijn, dus met een pallet enzo. (zodat de helderheid ed. nog aangepast kan worden nadat het naar de xserver gestuurd is, dmv aanpassing van het pallet, als ik het goed begrepen heb..)
Solaris kan (zou kunnen...) bv met 24 bit ook pseudocolor bieden, en er schijnen ook nog wel commerciele x-servers voor linux te zijn die het ook kunnen.
XFree86 helaas niet, en ze gaan het ook niet supporten, omdat het probleem natuurlijk vanzelf verdwijnt. Erg jammer.

Oh ja, een mogelijke andere oplossing (als je videokaart het kan) zou zijn met zgn. overlays te werken. Echter, op de XFree86.org site las ik commentaar dat dat er ook niet echt voor bedoeld is.

Het enige probleem dat ik nog heb met vnc is dat de viewer (gelukkig niet de server..) niet zo heel stabiel is met de applicaties die ik gebruik.
Eea had er misschien ook mee te maken dat ik 3 xservers tegelijk had draaien...
In elk geval moet het wel wat stabieler zijn voor we het in een productieomgeving kunnen gaan toepassen (en daar is het voor).

Voor het weekend kan ik me er niet zoveel mee bezighouden, en daarna ben ik drie weken met vakantie, maar daarna...! :P
Dus als iemand nog tips heeft...
(mn over hoe een 2e xserver lokaal te hebben met andere kleurdiepte..)

(ps Deadinspace, ik had me vergist, parhelia werkt intern niet met 128 bit kleuren, zal wel een gerucht zijn over nog te verschijnen videokaarten...)

  • deadinspace
  • Registratie: Juni 2001
  • Laatst online: 14-08 09:26

deadinspace

The what goes where now?

Op woensdag 17 juli 2002 22:59 schreef aRTee het volgende:
Wat heb ik ook heb uitgevonden; het probleem is niet de 8 bit kleurdiepte, maar dat het pseudocolor moet zijn, dus met een pallet enzo. (zodat de helderheid ed. nog aangepast kan worden nadat het naar de xserver gestuurd is, dmv aanpassing van het pallet, als ik het goed begrepen heb..)
Solaris kan (zou kunnen...) bv met 24 bit ook pseudocolor bieden, en er schijnen ook nog wel commerciele x-servers voor linux te zijn die het ook kunnen.
XFree86 helaas niet, en ze gaan het ook niet supporten, omdat het probleem natuurlijk vanzelf verdwijnt. Erg jammer.
Ah, meer dan 8 bit depth en toch pseudocolor... Dat heb ik nog nooit gezien. En dat verklaart op zich wel wat.

Eigenlijk zou je een app nodig hebben die tussen dat programma en je X server zit en als enige doel heeft pseudo-color te vertalen naar truecolor. Dat veroorzaakt dan redraws als het palette veranderd, maar daar is overheen te komen.

Vraag is of zoiets bestaat (je probeert datzelfde nu via xnest en VNC enzo).
Dus als iemand nog tips heeft...
(mn over hoe een 2e xserver lokaal te hebben met andere kleurdiepte..)
Probeer eens op de console gewoon "X -depth 8 :1". X start alleen een X server, startx start een X server en jouw standaard X sessie.
Alternatief kun je een tweede XFree config file maken en dan "X -xf86config mijn/config.file :1" doen.
(ps Deadinspace, ik had me vergist, parhelia werkt intern niet met 128 bit kleuren, zal wel een gerucht zijn over nog te verschijnen videokaarten...)
Mjaa, 'ze' waren iets van plan met floats voor kleuren ofzo... Dat zou wat verklaren, maar dan nog vind ik 128 bit per pixel (is dus 32 bit per R,G,B,A channel) veel. En 128 bit per channel al helemaal.

Verwijderd

Topicstarter
(maakt buiging, roept meermaals uit "I'm not worthy" .. ;) )

Bedankt Deadinspace,
Probeer eens op de console gewoon "X -depth 8 :1". X start alleen een X server, startx start een X server en jouw standaard X sessie.
Alternatief kun je een tweede XFree config file maken en dan "X -xf86config mijn/ config.file :1" doen.
Het eerste werkte al, met daarna een
export DISPLAY=:1
en een
startkde

Works like a charm!!
En weer scoort linux in de corporate atmosfeer.. :)

Nou had ik alleen liever gnome op die desktop... :P
(lamaar, ik ben er al achter: ipv
startkde
gewoon
gnome-session
intypen)
Pagina: 1