![]()
|
The XIL library provides the common functions required by all imaging and video applications. It is a software layer for applications, fitting between higher-level programming interfaces and system hardware which supports optional accelerators and frame buffers. XIL defines the processes of imaging and video functions such as display, compression, image manipulation, and decompression. The XIL library is used by application developers in commercial and technical markets for document imaging, medical imaging, earth resources (GIS), image and video documents, graphic arts, multimedia, color pre-press and technical imaging. Its standard hardware interface is a benefit to OEMs and third-party manufacturers of frame buffers, video boards, imaging accelerators and scanners. The XIL architecture provides targeted hardware acceleration on a dynamic range of hardware platforms. One essential benefit of XIL is its independent device and application interface layers. The architecture allows software developers to take advantage of available hardware acceleration at no additional software development or support costs. It also allows XIL to support various third-party platforms, and to use native or third-party imaging devices or features. In addition, the XIL library is object oriented. All image or video data are stored, manipulated and exported in object format. This object orientation and standard C language bindings provides compatibility with the main programming tools used on workstations and PCs today.
PerformanceHigh performance is critical to imaging, multimedia, and video applications. XIL technology is optimized for peak performance on many hardware configurations. Software routines are highly tuned to provide high performance when hardware acceleration is not available. XIL processes operations using multiple threads, providing scaled performance on multi-processor systems.The XIL library optionally processes large images on a per-tile basis, and defers operations to maximize the number of operations performed on a given tile before swapping the tile to disk. Product HighlightsHardware AccelerationThe Visual Instruction Set (VIS) accelerated pipelines are bundled as part of the Solaris Operating System on Sun Ultra Systems. These pipelines maximize the imaging perfor-mance of XIL and provide scalable performance on multi-processor (MP) systems. Applications require no modification to take advantage of these SPARC and Solaris Operating System features when using XIL software. As new systems are developed, applications will continue to benefit from the most recent hardware acceleration without modification. Child Images and ROIs The XIL API provides flexibility in defining the portions of an image to be processed through ROIs (Regions of Interest) and child images. An ROI allows arbitrary definition of the spacial region of an image to be processed by an operation. A child image, which can be a spacial or a band subset of its parent, provides a way to define a new image, which is the data of its parent. Storage Types To maximize interoperability with existing applications, the XIL library supports band sequential, pixel sequential, and general storage data layouts. General storage permits the location and layout of each band to be unique. Geometric XIL's geometric operations support flexible resizing of images. The image size manipulations are affine transforms, table-driven warping, and two subsampling functions. The affine transform combines rotation, translation and scale, with nearest neighbor, bilinear, bicubic, and user-identified interpolation. Adaptive sub-sampling provides a technique that minimizes information loss from skipped pixels in the source image. The binary to gray subsampling generates high-quality gray-scale images from binary source images. Video XIL library provides the performance demanded by today's video applications. For example, on a Sun Ultra I Creator system, MPEG-1 can be played back at full video resolution and rates. Extensibility The XIL library is fully extensible. Applications can augment the API by accessing the data and adding their own image processing functions. Developers can use proprietary image-processing algorithms by replacing defined operations through the device layer. XIL interoperates well with other imaging and graphics libraries such as Java 2D, OpenGL, and the developer's own in-house toolkits. Cross Platform Availability In support of open systems standards, Sun has ported XIL to non-Solaris platforms. XIL is currently available on all Solaris-based platforms. This provides developers a choice of SPARC and x86 micro-processor-based systems. Reference ports of XIL are available on Windows NT, Windows 95, SGI, HP, and Linux. XIL FunctionalityArithmetic and Logical Operations
Additional Functionality in XIL 1.4Stereoscopic Display InterfaceFor Solaris 7 Operating System (XIL 1.4), XIL is adding support for stereoscopic image display. This will initially be supported on the Creator 3D frame buffer. Access to these capabilities is provided by a simple set of API calls. Stereoscopic display enables the presentation of image pairs representing a left/right eye view of the world. The left/right images are alternately displayed at a frame rate above the eye's flicker frequency. When used in conjunction with electro-optic shuttering eyeglasses, this provides an image display with depth perception, just like normal binocular human vision. It is also possible to combine both double-buffered and stereo display, so that stereo updates can be swapped between back and front buffers. Product offerings and specifications subject to change without notice. A book with a CD-ROM, Developing Visual Applications; XIL: An Imaging Foundation Library, by William K. Pratt, is available through Prentice Hall and Sun Microsystems Books. The reference ports are free to those who purchase the book or CD. To order, contact Prentice Hall, or see www.sun.com/books (ISBN 0-13-461948-X). Platforms and Requirements |
| |||||||||||||||||||