From Surf Wiki (app.surf) — the open knowledge base
MediaLib
Multimedia library for C
Multimedia library for C
| Field | Value |
|---|---|
| name | mediaLib |
| developer | Sun Microsystems |
| latest release version | 2.5 |
| latest release date | |
| programming language | C |
| genre | Multimedia |
| license | CDDL |
mediaLib (from "multimedia library") is a portable low level library for accelerating multimedia applications, with interfaces in C. It was developed by Sun Microsystems and open-sourced under the CDDL license as part of the OpenSolaris project.
It is implemented in ANSI C, but can take advantage of SIMD multimedia instructions on various processors to gain a significant performance boost. It was originally designed to leverage VIS on SPARC processors and later added support for MMX/SSE/SSE2 on Intel/AMD processors.
Since mediaLib is written in C and SIMD multimedia compiler intrinsics, it should be usable on any system that has an ANSI C compiler that supports SIMD multimedia intrinsics. Systems without SIMD intrinsics support can also use it as pure ANSI C, forgoing any extra acceleration provided by SIMD multimedia instructions. It is also included as part of Solaris 10.
mediaLib 2.5 contains about 4000 files and 2.4 million lines of code, and contains more than 3000 functions for different areas:
- algebra
- matrix
- image
- graphics
- signal processing
- video
- audio
- speech
- volume rendering
Open source applications that use mediaLib include Java, JDS for Solaris, mplayer, and ogle.
There are several mediaLib versions targeting different platforms, but all share the same API, so users can switch from one platform to another without changing source code:
- Standard C: written in pure ANSI C, with some general code optimization for performance
- VIS/VIS2/VIS3: optimized for SPARC chips with VIS/VIS2/VIS3 multimedia instruction sets
- MMX/SSE/SSE2: optimized for Intel/AMD chips with MMX/SSE/SSE2 multimedia instruction sets
- Integer: optimized for chips that have no or limited floating point capabilities, such as UltraSPARC T1 and some embedded chips
- Multi-threaded version: A thin wrapper layer built with OpenMP on top of mediaLib, providing flexible multithreading multimedia acceleration for applications
This article was imported from Wikipedia and is available under the Creative Commons Attribution-ShareAlike 4.0 License. Content has been adapted to SurfDoc format. Original contributors can be found on the article history page.
Ask Mako anything about MediaLib — get instant answers, deeper analysis, and related topics.
Research with MakoFree with your Surf account
Create a free account to save articles, ask Mako questions, and organize your research.
Sign up freeThis content may have been generated or modified by AI. CloudSurf Software LLC is not responsible for the accuracy, completeness, or reliability of AI-generated content. Always verify important information from primary sources.
Report