词条 | mediaLib |
释义 | mediaLib (指 "多媒体函数库") 是一个用于加速多媒体应用程序的可移植的底层函数库。它具备C语言接口,其最新版本为2.5。 它最初由Sun开发,之后作为OpenSolaris项目的一部分在CDDL许可证下开源。 mediaLib 用C及编译器原语写成,可以利用多种处理器上带有的SIMD多媒体指令集来获得显着的性能提升。虽然最初它只能利用SPARC处理器上的VIS指令集,但是后来又加入了对Intel/AMD处理器上的MMX/SSE/SSE2等指令集的支持。 mediaLib 用C及编译器原语写就,理论上一个系统只要有支持C和编译器原语的编译器,就可以编译并且使用它。如果缺乏编译器原语的支持,也可以编译使用mediaLib的纯C语言版本,但是这样的话将无法获得SIMD多媒体指令集所能带来的性能提升。 mediaLib目前包含在Solaris操作系统中。 mediaLib 2.5 包含近4000个文件和240万行C源代码,有针对不同领域应用的函数3000馀个: * 线性代数 * 矩阵运算 * 图像处理 * 图形处理 * 信号处理 * 视频 * 音频 * 语音 * 三维渲染 调用了mediaLib的开放源代码应用程序有Java, JDS for Solaris, mplayer, ffmpeg, and ogle。 mediaLib 有针对多个平台的不同版本,但是这些版本都共享同一套API,所以使用者可在多个平台间自由迁移,而无需修改源代码中对mediaLib的调用: * C语言版本: 以纯粹的ANSI C写就, 并带有常见代码优化 * VIS/VIS2/VIS3版本: 以SPARC芯片的VIS/VIS2/VIS3多媒体扩展指令集进行优化 * MMX/SSE/SSE2版本: 以Intel/AMD芯片的MMX/SSE/SSE2多媒体扩展指令集进行优化 * 整数版本: 针对无浮点运算能力或浮点性能较弱的芯片进行优化, 这样的芯片如UltraSPARC T1和一些定点嵌入式处理器 * 多线程版本: 是在mediaLib之上以OpenMP对mediaLib函数进行的一个包装,旨在为多媒体应用程序提供灵活的多线程扩展能力 |
随便看 |
百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。