程序库,解码器,开源软件
介绍一下pi上面的程序库,解码器,开源软件。先介绍库,pi需要一套库来操纵GPU。pi提供了这些库(注意,这些库不是开源的):
OpenGL ES 2.0
OpenGL 是 一个 3D 库,在桌面和嵌入式系统中很常见 ,由Khronos Group 定义.OpenVG
OpenVG 是一个 2D 矢量画图库, 在桌面和嵌入式系统中很常见,也是 由Khronos Group 定义.EGL
EGL是一个在 Khronos 渲染 APIs ( OpenGL ES or OpenVG) 和 本地平台窗口系统 之间的接口。OpenMAX IL
OpenMAX 提供了一套API, 抽象了audio,video和静态image处理的函数。 OpenMAX 定义了三层,这里是IL层,提供了媒体框架(如 Gstreamer )和多媒体模块(如codecs)的接口。
前三个是标准的linux 库,所以很容易移植。 OpenMAX IL现在还没有标准的API,所以是一个定制的实现。所有这些库都是由SoC公司Broadcom提供。
如果需要进一步了解,Wikipedia和Khronos网站上有很多的资料介绍这些API。
先写到这里,后面再介绍解码器和开源软件。 自己顶顶,呵呵 继续介绍解码器:
pi有两个授权的编解码器:MPEG4 and h.264. 编解码器授权对设备的价格有很大影响,所以这就是为什么现在只有两个编解码器。pi有没授权的解码器比如:MPEG2, VC1等等, 但不被GPU加速.
pi的 GPU 能硬解 1080p30的H264, MPEG1/2/4, VC1, AVS, MJPG. pi能软解VP6, VP7, VP8, RV, Theora, WMV9 . 之所以被限制是因为没有购买授权。以后可能会支持 VP8, MJPG 和Theora,因为这些不需要授权。 开源vs闭源
图像加速库(访问GPU)是闭源的,有SOC产商提供。Pi的基金会对这个没法控制。
这没有 GPL问题,因为这是用户态的 libraries ,没有链接进内核.
有一些驱动是链接进内核的,所以是开源的且是GPL授权的。其中一个驱动是用户空间到内核空间操纵GPU的接口。用户态的库通过这些驱动来和GPU通讯并操纵GPU。 这里有张图描述了哪些是开源的,哪些不是:
http://www.raspberrypi.org/wp-content/uploads/2012/01/RaspberryArch.jpgWhat's OSS, and what's not? 支持一下lz,暂时对视频开发没兴趣. 技术贴,感谢支持了。 高人呀 技术贴,纯顶 高人啊..有源码吗..解码器....omxplayer..播放TS流不知道为什么..多个ts流一起缓存会出现解码一卡一卡的
页:
[1]
2