[comp.windows.x] Animated images under X11

jonm@syma.sussex.ac.uk (Jonathan Meyer) (02/14/90)

We have a program that runs on Sunview, using multiple screenloads to
dump images directlty from disc to screen. This produces real-time animation.

The X facilities for loading images onto the screen are limited to ones
that operate accross a network, or use file formats that are portable but
very inefficient.

For a real-time operation such as this, we need to be able to tell the X
server to load an image directly from the local disc to the screen, in the
same way that fonts are loaded into the server.

Would this require an extension to the X server, or could I use the font
support or another technique that is already in the server? I am sure that
others have already thought of this. Do you have a good solution?

I think this is a general problem with X - the image manipulation facilities
are necessarily limited by the (otherwise excellent) architecture.

jon

hvr@kimba.Sun.COM (Heather Rose) (02/27/90)

In article <2169@syma.sussex.ac.uk> jonm@syma.sussex.ac.uk (Jonathan Meyer) writes:
>
>We have a program that runs on Sunview, using multiple screenloads to
>dump images directlty from disc to screen. This produces real-time animation.

FYI:  you could much better than screenload, but that's another topic.  Go
down to your local Sun sales office or demo booth and ask for a demo of 
Aviator.  

>The X facilities for loading images onto the screen are limited to ones
>that operate accross a network, or use file formats that are portable but
>very inefficient.
>
>For a real-time operation such as this, we need to be able to tell the X
>server to load an image directly from the local disc to the screen, in the
>same way that fonts are loaded into the server.
>
>Would this require an extension to the X server, or could I use the font
>support or another technique that is already in the server? I am sure that
>others have already thought of this. Do you have a good solution?
>
>I think this is a general problem with X - the image manipulation facilities
>are necessarily limited by the (otherwise excellent) architecture.

I believe there is an extension in the works called shared X.  What
you want to do is the moral equivalent of mmap'ing your data into the
X server data space.  And yes, this does require an extension to the server
and perhaps shared memory facilities in the OS depending upon the implemenation.

Again, if you're using Sun's, you should talk to your local sales reps
about this issue.

Regards,

Heather

janssen@parc.xerox.com (Bill Janssen) (02/28/90)

In article <132261@sun.Eng.Sun.COM>, hvr@kimba (Heather Rose) writes:
>In article <2169@syma.sussex.ac.uk> jonm@syma.sussex.ac.uk (Jonathan Meyer) writes:
>>For a real-time operation such as this, we need to be able to tell the X
>>server to load an image directly from the local disc to the screen, in the
>>same way that fonts are loaded into the server.
>
>I believe there is an extension in the works called shared X.  What

Shared-X is popularly reserved for the systems that allow a single
X client to be displayed on multiple X servers simultaneously.

The MIT X11R4 server already has a `shared memory' extension that
allows a program to create pixmaps that are shared between the client
and the application.  The application can write into the pixmap array
directly, then tell the server to do a CopyArea from it, resulting in
a very fast operation.  We've used it to good effect here already.

Bill
--
 Bill Janssen        janssen.pa@xerox.com      (415) 494-4763
 Xerox Palo Alto Research Center
 3333 Coyote Hill Road, Palo Alto, California   94304

devin@boulder.Colorado.EDU (Yampalimardilor) (03/01/90)

In article <227@roo.UUCP> janssen@parc.xerox.com (Bill Janssen) writes:
!The MIT X11R4 server already has a `shared memory' extension that
!allows a program to create pixmaps that are shared between the client
!and the application.  The application can write into the pixmap array
!directly, then tell the server to do a CopyArea from it, resulting in
!a very fast operation.  We've used it to good effect here already.

 Isn't the client and the application the same thing?  If not, how do I
do this?  I need very fast XCopyAreas also...

!
!Bill
!--
! Bill Janssen        janssen.pa@xerox.com      (415) 494-4763
! Xerox Palo Alto Research Center
! 3333 Coyote Hill Road, Palo Alto, California   94304

 -Devin

janssen@parc.xerox.com (Bill Janssen) (03/01/90)

In article <17534@boulder.Colorado.EDU>, devin@boulder (Yampalimardilor) writes:
>In article <227@roo.UUCP> janssen@parc.xerox.com (Bill Janssen) writes:
>!allows a program to create pixmaps that are shared between the client
>!and the application.  The application can write into the pixmap array
>
> Isn't the client and the application the same thing?  If not, how do I
>do this?  I need very fast XCopyAreas also...

Indeed.  Should say, "between the server and the application (client)".

Bill
--
 Bill Janssen        janssen.pa@xerox.com      (415) 494-4763
 Xerox Palo Alto Research Center
 3333 Coyote Hill Road, Palo Alto, California   94304