Re: gnome-mag and gnopernicus magnifier services TODOs
- From: Bill Haneman <Bill Haneman Sun COM>
- To: Carlos Eduardo Rodrigues Diogenes <cerdiogenes yahoo com br>
- Cc: gunnar schmi-dt de, gnome-accessibility-list gnome org, Olaf Jan Schmidt <ojschmidt kde org>
- Subject: Re: gnome-mag and gnopernicus magnifier services TODOs
- Date: Tue, 20 Sep 2005 13:44:25 +0100
Hi Carlos:
Perhaps we should move further technical discussion to the
gnome-accessibility-devel list.
One comment I'd like to make concerns the relationship of X (the X
server and apis) to the magnification issues we face. Because X is
quite a mature standard and a central part of our desktop software
stack, there are limitations to what APIs and services we can use to
implement magnification. The short answer is that we must use X apis if
we hope for our solution to be adopted and successful. Those X apis
include "extensions" to the X specification, and there is a procedure
for proposing and developing such extensions. Things like better cursor
control and "dirty region" notification are examples of capabilities
that have been added to the X server via the DAMAGE and XFIXES
extensions. These extensions were developed in consultation with
desktop accessibility developers like myself, partly in response to the
needs of magnification users. COMPOSITE is another such extension.
However there are significant limitations to what extensions can do, for
instance because X is a client-server model which insulates the client
from details of the service implementation, we can't readily do direct
manipulation of video memory or replace video drivers. That's a good
thing really, because we don't want to have to rewrite drivers for the
many different hardware configurations that exist and are under
development.
GL is something of an exception, in that it is another standard API
which exists alongside the X API for most modern graphics hardware. It
has some attractive features - it does have some scaling API built in,
but perhaps even more significantly, because it is used for 3D gaming
applications, its implementation in graphics firmware has often been
more optimized for performance than the 2D APIs used by X. So I think
that a GL-based magnification service may be a reasonable thing to explore.
I suggest that you read a good text on the basics of the X Window System
in order to understand the basic architecture (perhaps chapters 1 and 2
of the Xlib Programming Manual from O'Reilly and Associates). Then you
might look at the 'standard' method of getting pixels from an X display
(XGetImage), writing them to another display or window (XPutImage), and
moving them (XCopyArea). The last one, XCopyArea, is the only API
available in X for scrolling, so this is a bit of a bottleneck. The
COMPOSITE extension allows us to get around this issue by virtualizing
the basic pixmap drawing operations, and delegating the actual rendering
of the onscreen contents to a "compositing manager". That compositing
manager can transform the pixmaps as it sees fit, for instance
alpha-blending them, recoloring them, or rescaling them, and thus it
avoids the XCopyArea bottleneck.
regards
Bill
Carlos Eduardo Rodrigues Diogenes wrote:
Hi Gunnar,
I leave the gnome-accessibility-list in the e-mail because I think
that the informations that you could provide can be interesting for
the list.
First of all, I want to say that we have a group in a university
studing accessibility and we want to develop an screen magnifier. We
verify that the GNOME Accessibility Project is a good project to
provide the support that is needed by assistive technologies, so here
we are.
Second, I want to sorry if some question are very stupid of comprehend
a lot concepts that can't be easely synthetized. Our experience if
free software ins't very large. We hope too that we aren't take much
of your time.
Do you have any screen-shot of your magnifier?
You are developing it to be an X solution or it will be tweaked (have
the look and feel) of a specific window manager? Your objective is to
make it usable for visually impaired people now? Or things like UI
must be developed later?
I want to learn more about the internal of X, I think that this way we
can develop better magnifiers. If X could done something for us I
think that we can gain in performance. This things could be render
text with a bigger size in an buffer that we could access and then
calculate where the text goes in the desired image, so we have better
quality in texts. Do you know any good reference about this or the
best way to know if something is good or not, is possibly or not in X
is hacking?
What do you think about Xgl and what this can offer for magnification
services. Do you saw this: http://vizzzion.org/stuff/xgl_wanking.avi .
What do you think about this magnification? Do you thing that this is
a good path to follow or the way that you are developing is better (is
more realistic now)? Do you know if it can be utilizided easely in a X
server based on OpenGL?
Thanks,
Carlos.
Olaf Jan Schmidt wrote:
[Carlos Eduardo Rodrigues Diogenes]
How I yet said, I saw the 'diopter' application developed by Keith
Packard that do a COMPOSITE-based magnifier in the xapps directory of
the free desktop cvs tree. Is this software that you are saying about?
Do you have any reference where to find informations about this and
contact the developers?
No, Bill is speaking about a new screen magnifier my brother is
writing as his diploma thesis. The new magnifier will contain a new
X.org composition manager and support more features for partially
sighted people than all existing screen magnifiers (including Lunar
and ZoomText). The current plan does include braille support or full
screen reading support (which are not needed by partially sighted
people).
Gunnar's application will be available open-source, but I think he
wishes to finish it first, which might take some more months. I am
cc'ing him, so you can contact him for questions.
Olaf
_______________________________________________
gnome-accessibility-list mailing list
gnome-accessibility-list gnome org
http://mail.gnome.org/mailman/listinfo/gnome-accessibility-list
_______________________________________________
gnome-accessibility-list mailing list
gnome-accessibility-list gnome org
http://mail.gnome.org/mailman/listinfo/gnome-accessibility-list
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]