Java Solaris Communities About Sun How to Buy United States Worldwide

mediaLib FAQ

mediaLib Libraries

  1. What are the mediaLib libraries?
  2. Why are the mediaLib libraries necessary?
  3. How were the mediaLib libraries developed?
  4. How do I get the mediaLib libraries?
  5. What is mediaLib library Java Wrapper?
  6. How do I get the mediaLib library Java Wrapper?
  7. Where can I get help on the mediaLib libraries?
  8. How to use mediaLib to speed up GNOME Desktop?

1. What are mediaLib libraries?
The mediaLib libraries are a low level performance library for multimedia application. The functions in mediaLib are accelerated with VIS technology on UltraSPARC-based systems. The mediaLib libraries are also supported on SPARC-based systems and x86-based systems running Solaris.

The mediaLib libraries are initially targeted at four primary functional areas: imaging, linear algebra, audio/video and graphics. Here are some examples of specific functions in each of these areas:

  • Imaging - spatial operations, geometric and radiometric operations, arithmetic and logical operations, color space conversion, image statistics, Fourier domain processing, data format conversion, image generation and copying, volumetric data processing and volumetric visualization.
  • Audio/Video - digital signal filtering, generation, transformations and the basic elements for JPEG and MPEG processing.
  • Linear Algebra - vector and matrix algebra
  • Graphics - 2D and 3D primitives, rendering and texturing.

Back to top


2. Why are mediaLib libraries necessary?
Most developers are not ready to adopt the SIMD (single instruction, multiple data) programming model and the loss of portability that that currently entails. Application developers don't want to write assembler code because it is complex and tied to a single processor type. The mediaLib libraries solve both of these problems. Complexity is reduced because the mediaLib libraries provide easy access from C, C++, or Java, to high performance SIMD instructions like VIS. The mediaLib libraries also reduces complexity by insulating the developer from future microarchitectural changes, such as instruction latencies, freeing them to focus on application content. Portability is maintained because the mediaLib library interfaces are platform independent, allowing developers to write to a common, low-level interface and run their applications on several high-performance platforms.

Back to top


3. How were the mediaLib libraries developed?
Sun spent more than a year working with developers at the SIMD/VIS programming level before coming up with an idea of creating an API like the mediaLib library. During that time, we have learned the important imaging, audio, video and graphics algorithms that can benefit most from the new media-oriented instruction sets. These critical functions have been pulled together, with common structure and calling conventions, and made available as the mediaLib library. As we continue to work with our partners and software developers, we will continue to extend the mediaLib library in the same fashion. Once the key functions are identified, an optimized C implementation of the function is developed. Then that function is tuned for each supported platform. This means that any application which uses the mediaLib libraries can be at least assured that any ANSI C platform can run the code. It also means that code will run with optimal acceleration on the mediaLib target platforms.

Back to top


4. How do I get the mediaLib libraries?
The mediaLib version 2.5 is now available. It can be downloaded free from the following site:

Back to top


5. What is the mediaLib library Java Wrapper?
The mediaLib library Java Wrapper is the JNI (Java Native Interface) wrapper for native mediaLib libraries. With the mediaLib library Java Wrapper, you can access native mediaLib functions from Java.

Back to top


6. How do I get mediaLib library Java Wrapper?
You can download Java wrapper for native mediaLib. Java wrapper for native mediaLib requires JDK 1.4.2 or later. The JDK can be downloaded from http://java.sun.com/j2se/.

Back to top


7. Where can I get help on the mediaLib libraries?

    If you have any questions about the mediaLib libraries, send an email to: mediaLib@Sun.COM

Back to top


8. How to use mediaLib to speed up GNOME Desktop?

    You may have read from GNOME document that installing mediaLib can noticeably improve the performance of GNOME Desktop. See following URL.

    	http://docs.sun.com/app/docs/doc/819-0918/6n3aglfeu?l=en&a=view#indexterm-107
    

    If you need mediaLib only for GNOME Desktop, you can simply download and install SUNWmlib package, which is available from following URL.

    	http://www.sun.com/processors/vis/mlibfiles.html
    

    For Solaris SPARC, you need to download sparc.SUNWmlib.2.5.tar.gz file. For Solaris x86, you need to get i386.SUNWmlib.2.5.tar.gz file.

    After you have downloaded the file, you need to unpack the file in a terminal window with following command.

    	% gzip -cd sparc.SUNWmlib.2.5.tar.gz | tar -xvf -
    

    Replace sparc with i386 if you use Solaris x86.

    Next step become superuser on your systems.

    	% su
    	Password: ******
    	# 
    

    Then you need to issue following command to install SUNWmlib package.

    	# pkgadd -d . SUNWmlib
    

    Finally remember to exit from superuser.

    	# exit
    	%
    

    Note that you need to exit GNOME Desktop and re-log in to have GNOME detect and load mediaLib.

Back to top


Give your business a boost