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)协议所需的大部分客户端功能以及少量的服务器功能。

 

转载于:https://www.cnblogs.com/yoyotl/p/5488890.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/543220.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python单步调试的方法_python断点调试方法

pdb 是 python 自带的一个包,为 python 程序提供了一种交互的源代码调试功能,主要特性包括设置断点、单步调试、进入函数调试、查看当前代码、查看栈片段、动态改变变量的值等。pdb 提供了一些常用的调试命令,详情见表 1。下面结合具体的实例…

053(七十七)

381、 381.Which pseudo column could you use to identify a unique row in a Flashback Versions Query? A. XID B. VERSIONS_PK C. VERSIONS_XID D. VERSIONS_UNIQUE 382、 382.Which of the following can be used in conjunction with a Flashback Versions Query to fil…

java正则表达式 ppt_Java正则表达式演示

//正则表达式 regular expression regex//空白符有: ,\t,\n,\n,\r,\h;\s等于[\t\n\r\f];\S[^\t\n\r\f]// 常用的正则表达式//// 正则表达式 匹配//-------------------------------…

数加移动定向营销:如何快速搭建不完全依赖用户历史行为的个性化服务

移动定向营销是一款基于规则引擎面向移动应用做流量精准运营的数据服务,能帮助使用者灵活划分用户群体、细分用户流量。移动定向营销原理它是一种定向的、人为可控的、可解释的,并且不完全依赖于用户历史行为、不受投放内容约束、面向用户的个性化服务方…

python读写json_python 读写json数据

json 模块提供了一种很简单的方式来编码和解码JSON 数据。 字符串操作 其中两个主要的函数是json.dumps() 和json.loads() ,要比其他序列化函数库如pickle 的接口少得多。下面演示 1.如何将一个Python 数据结构转换为JSON 2.如何将一个JSON 编码的字符串转换回一个P…

java web逻辑删除代码_MyBatis-Plus之逻辑删除的实现

特别是互联网项目,对于数据一般是不能删除的(涉及到后面的数据分析),这就涉及到逻辑删除。所谓逻辑删除指的是数据并不是真正的删除,只是改数据表对应数据的状态(数据表中通常有一列叫delFlag,以此标识正常状态或删除状态)。逻辑删除一般都是…

debian安装java jdk_Linux(Centos、Debian)之安装Java JDK及注意事项(转)

a.因为Java JDK区分32位和64位系统,所以在安装之前必须先要判断以下我们的Centos、Debian系统为多少位系统,命令如下:uname -a解释:如果有x86_64就是64位的,没有就是32位的。后面是X686或X86_64则内核是64位的&#xf…

python程序化 k线指定时间更新_Python之路 14 K线时间序列管理器

在上一章中介绍了如何通过实时行情推送的Tick数据合成1分钟K线,并且如何通过1分钟K线来合成更大周期的K线。本章主要介绍如何将K线通过numpy缓存到Array,形成时间序列,并且同时生成一些技术指标。 首先 导入包 talib主要用于计算各种技术分析…

python手把手教程_【Python 1-7】Python手把手教程之——详解列表List

列表 作者 | 弗拉德 来源 | 弗拉德(公众号:fulade_me) 列表,在其他语言中又被称为数组,是由一系列按特定顺序排列的元素组成。你可以创建包含字母表中所有字母、数字0~9或所有家庭成员姓名的列表。你也可以创建几个列表&#xff0…

[Typecho主题] modernist

Modernist 主题来自 Hexo. 是基于 modernist theme 修改 演示站点 安装 git clone https://github.com/uidea/typecho-theme-modernist.git themes/modernist 启用 外观 -> Modernist Theme -> 启用即可 更新 cd themes/modernist git pull 下载地址:https://…

python预定义_【Python】python类中方法的预定义

知乎问题:像这个图片里面显示的,self.prediction首先声明了下然后下面给出了定义,然后optimize又调用这个函数但是没有用self.prediction()这样的方式而是像用变量一样直接用self.prediction,,像请教一下这是什么操作?…

python md5加密_Python MD5加密实例详解

详解Python MD5加密 Python 3下MD5加密 # 由于MD5模块在python3中被移除 # 在python3中使用hashlib模块进行md5操作 import hashlib # 待加密信息 str this is a md5 test. # 创建md5对象 hl hashlib.md5() # Tips # 此处必须声明encode # 若写法为hl.update(str) 报错为&…

【IOS-COCOS2D-X 游戏开发之四】COCOS2DX创建ANDROID NDK新项目并编译导入ECLIPSE中正常运行!...

本站文章均为 李华明Himi 原创,转载务必在明显处注明: 转载自【黑米GameDev街区】 原文链接: http://www.himigame.com/android-game/645.html此篇针对较早的-x引擎讲解的,最新的可以参考: 【Cocos2d-X(2.x) 游戏开发系列之二】cocos2dx最新2…

2天后mysql_mysql 学习笔记 第二天

插入表格数据:Insert into table_name set columns_1value1,columns_2value2,对于没有赋值的列,将会取默认值,并且这个方法只能一次插入一个数据利用文本方式插入数据:Load data local infile‘径’into table table_name;Select 的通用形式:…

mysql查看日志命令_面对成百上千台服务器产生的日志,试试这款轻量级日志搬运神器!...

Filebeat简介Filebeat是一款轻量级日志采集器,可用于转发和汇总日志与文件。Filebeat内置有多种模块(Nginx、MySQL、Redis、Elasticsearch、Logstash等),可针对常见格式的日志大大简化收集、解析和可视化过程,只需一条…

css 百分比 怎么固定正方形_css样式写出三角形,宽高自适应的正方形,扇形!...

闲来无事练习一下常见的css样式,希望大家能指点一二&#xff01;1用css实现一个三角形&#xff01;原理用border属性<!实现它的原理那就要弄明白border属性&#xff0c;border是一个复合属性border-width 指定边框的宽度border-style 指定边框的样式border-color 指定边框的…

用lsb_release -a 查看linux版本

1、要通过yum 安装上这个命令的软件包 yum -y install redhat-lsb 2、lsb_release -a 查看linux版本信息

java爬虫自动识别验证码_简单Java爬虫(一)爬取手机号码

原创 野狗菌 希望你能喜欢 今天关于本文&#xff1a;本文介绍一个简单Java爬虫&#xff0c;获取网页源码&#xff0c;爬取电话号码。本篇教程用我的博客一个测试网页演示。——野狗菌【希望你能喜欢】测试页面&#xff1a;https://www.wayteam.xyz/archives/phonenumber源代码&…

java分隔符 字符串_用Java构建带分隔符的字符串的最佳方法是什么?

在Java应用程序中工作时&#xff0c;最近我需要组合一个用逗号分隔的值列表&#xff0c;以传递给另一个Web服务&#xff0c;而无需事先知道会有多少个元素。我能想到的最好的办法是这样的&#xff1a;public String appendWithDelimiter( String original, String addition, St…

ASP.NET Session丢失问题原因及解决方案[转]

不得不老调重弹 正常操作情况下会有ASP.NET Session丢失的情况出现。因为程序是在不停的被操作&#xff0c;排除Session超时的可能。另外&#xff0c;Session超时时间被设定成60分钟&#xff0c;不会这么快就超时的。 现在我就把原因和解决办法写出来。 ASP.NET Session丢失原因…