FreeSWITCH第三方库(视频)的简单介绍(二)
FreeSWITCH使用了大量的第三方库,本文档主要介绍视频相关库的信息:
音频相关库的信息介绍参考:http://www.cnblogs.com/yoyotl/p/5486753.html
其他相关库的信息介绍参考:http://www.cnblogs.com/yoyotl/p/5489315.html
① openh264
OpenH264 是思科公司以BSD协议开放的一个开源的 H.264 编码器和解码器。
Cisco 将以 BSD 协议开放其 H264 解码器实现,并提供针对主流操作系统的预编译库文件下载。Cisco 将负责承担 MPEG LA 的专利使用费,并和 Mozilla 共同管理 OpenH264 开源项目。
Firefox 以后默认支持H264,但依然支持 VP8 格式,并可在 WebRTC 中使用。
Mozilla 已经组成了开源编码器专家小组开发下一代无专利限制视频编码格式 Daala,将以与 H265 和 VP9 截然不同的方式绕过可能的专利雷区。但是依然还需要解决同样被专利困扰的 AAC 音频解码器。
② libav
Libav是一个自由软件,可以执行音讯和视讯多种格式的录影、转档、串流功能。主要包含以下几个部分:
libavcodec (一个用于多个专案中音讯和视讯的解码器函式库)
libavformat (一个音讯与视讯格式转换函式库)
libavutil(包含解压缩和各种实用功能库)
libavfilter(提供一个改变解码音频和视频的拦截器链)
libavdevice(提供捕获和重置设备的抽象访问能力)
libavresample(实现音频混合和重采样能力)
libswscale(实现颜色的转换和缩放能力)
③ libvpx
libvpx是开源的支持VP8/VP9编解码的SDK。
全面支持WebM。x86平台必须先安装yasm库。
WebM由Google提出,是一个开放、免费的媒体文件格式。
WebM 影片格式其实是以 Matroska(即 MKV)容器格式为基础开发的新容器格式,里面包括了 VP8 影片轨和 Ogg Vorbis 音轨。
其中Google将其拥有的VP8视频编码技术以类似BSD授权开源,Ogg Vorbis 本来就是开放格式。
WebM标准的网络视频更加偏向于开源并且是基于HTML5标准的,WebM 项目旨在为对每个人都开放的网络开发高质量、开放的视频格式,其重点是解决视频服务这一核心的网络用户体验。
④ libyuv
libyuv是Google开源的实现各种YUV与RGB之间相互转换、旋转、缩放的库。
它是跨平台的,可在Windows、Linux、Mac、Android等操作系统,x86、x64、arm架构上进行编译运行,支持SSE、AVX、NEON等SIMD指令加速。
⑤ vlc
vlc是一个流行的开源媒体播放器和多媒体引擎,已移植到大多数的计算平台,包括GNU / Linux,Windows,Mac OS X,BSD,iOS和Android。
vlc可以播放大多数多媒体文件,光盘,流,允许回放设备,并能够以各种格式转换媒体流。
⑥ libpng
PNG的官方库,项目开发包的地址:http://libpng.sourceforge.net/。
该项目依赖zlib库,当前最新的版本是libpng 1.6.21。
⑦ librtmp
实时流协议(Real-TimeMessaging Protocol,RTMP)是用于互联网上传输视音频数据的网络协议。librtmp库提供了支持RTMP, RTMPT,RTMPE, RTMP RTMPS及以上几种协议的变种(RTMPTE, RTMPTS)协议所需的大部分客户端功能以及少量的服务器功能。

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Android之RxAndroid2、RxJava2的zip应用场景及示例
Android之RxAndroid2、RxJava2的zip应用场景及示例 RxAndroid2、RxJava2的zip操作目的是为了合并两个Observable并最终发射一个单一的Observable结果。应用场景:比如在Android APP的开发中,涉及到和后台接口交互,网络请求结果往往不是单一的一次成型完成所有操作,以一个用户登录并获取用户头像Bitmap的流程为例。 第一阶段、先登录成功,获得该用户的用户id诸如此类的必要元数据。第二阶段、根据第一步获得的用户id然后再次发起网络请求获取该id头像的Bitmap数据,然后显示在ImageView里面。 这两阶段,虽然可以在第一阶段请求成功后再次发起第二阶段网络请求,如在Okhttp中的onSuccess里面拿到用户id,发起第二阶段的头像请求。但是代码逻辑嵌套深,不易于理解和维护。这样的场景就比较契合RxJava2、RxAndroid2的zip的设计。现在给出一个小例子说明: package zhangphil.app; import android.os.Bundle; import android.support.a...
- 下一篇
Android 使用 aria2c + 百度网盘助手下载百度云文件
首先表明,这是一篇我转载的文章 原为知乎专题 :https://zhuanlan.zhihu.com/p/26873167?group_id=846415883457949696 闲的无聊,突然想到自己在 Android 上下百度云的东西很麻烦,而且不想用山寨云什么的,如果能在 Android 也能实现 aria2c + 百度网盘助手的那一套就好了 于是试了一下,那当然是可以的 ( 首先,你去 aria2c 的 github-release** 页面,那里就有 aria2c for Android 的二进制包,都不用自己编译了多好。 下载之后打开压缩包,如果你 Root 了,你就把里面的 aria2c 二进制文件复制到 /System/bin 顺便把权限改成 755 (用 SE 或者 RE 什么的都行,随你喜欢),如果你没有 Root,也可以复制到某一目录,然后在你使用 aria2c 的时候加个绝对路径就好。(不过我还没试过) 之后就是 Chrome 扩展怎么装,而在 Android 支持 Chrome 扩展的浏览器就只有 Yandex 了,把 Yandex 装好,打开并进入chrom...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS8编译安装MySQL8.0.19
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- Hadoop3单机部署,实现最简伪集群
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- CentOS7,8上快速安装Gitea,搭建Git服务器
- CentOS7设置SWAP分区,小内存服务器的救世主
- SpringBoot2全家桶,快速入门学习开发网站教程
- CentOS8安装Docker,最新的服务器搭配容器使用
- Docker安装Oracle12C,快速搭建Oracle学习环境
- Docker使用Oracle官方镜像安装(12C,18C,19C)