流媒体协议部分开源库简单比对

2023-11-16

流媒体协议部分开源库简单比对


版本说明

版本 作者 日期 备注
0.1 ZY 2019.2.14 初稿

目录


目前找到的比较中意的开源库:live555、media-server、JRTPLIB、FFmpeg、PJSIP。

名称 优点 缺点 大小
live555 老牌,支持面广,已有十几年发展 较大,需要裁剪
media-server 小巧 资料少,可靠性未知
JRTPLIB 使用较广,资料多,基于arm的交叉编译资料较多,使用资料较多 较大,目前3.11.1版本静态库为2M+,动态库900K+ 静态库2M+,动态库900K+
FFmpeg 老牌,支持面广 较大,需要裁剪,裁剪资料相对较少,configure时部分功能需要取消 目前编译,支持h265、 264需单独编译对应的库
PJSIP 框架很广,且适合嵌入式, 支持包含了SIP、SDP、RTP、RTCP、STUN、ICE等协议 不支持RTSP,只有RTCP和RTP 整体框架包括多个模块,基本上每个模块在几百k
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

流媒体协议部分开源库简单比对 的相关文章

  • 企业级音视频会议实战之webrtc服务器janus品尝实战

    1 前言 之前写过单纯用webrtc和springboot实现单人 多人 屏幕分享等功能的一系列文章了 心疼各位giegie 已将例子放在下面 不麻烦你们去找了 webrtc实现视频群聊系列文章 一 之基础入门 webrtc实现视频群聊系列
  • 音视频开发二:音视频知识总结

    文章目录 简介 简单理解 音视频原理 音视频理论基础 音频 声音介绍 为什么要存在数字音频 什么是数字音频 从 模拟信号 到 数字化 的过程 1 采样 2 量化 3 编码 音频存储空间 音频编码 音频解码 视频 颜色模型 光和颜色 YUV
  • 海思his35xx安防芯片音视频媒控驱动基础篇MIPI RX模块(一)

    先给自己打个广告 本人的微信公众号正式上线了 搜索 张笑生的地盘 主要关注嵌入式软件开发 股票基金定投 足球等等 希望大家多多关注 有问题可以直接留言给我 一定尽心尽力回答大家的问题 二维码如下 一 背景介绍 海思芯片的应用方向大致分为如下
  • 深入剖析阻塞式socket的timeout

    1 前言 网络编程中超时时间是一个重要但又容易被忽略的问题 对其的设置需要仔细斟酌 本文讨论的是socket设置为阻塞模式 如果socket处于阻塞模式运行时 就需要考虑处理socket操作超时的问题 所谓阻塞模式 是指其完成指定的操作之前
  • Windows下搭建nginx和rtspToWebRTC以及Windows程序添加为服务开机启动和后台运行

    1 前言 之前的rtsp转webrtc的服务很好用 https blog csdn net weixin 39510813 article details 123718363 spm 1001 2014 3001 5502 测试使用效果都很
  • Ubuntu22.04编译安装FFmpeg

    FFmpeg介绍 概述 FFmpeg是一款用C语言编写的跨平台免费开源多媒体处理工具 该软件可实现音视频的采集 编解码 转码 过滤以及流媒体相关操作等功能 同时 FFmpeg也为其他多种语言和操作系统提供了开发组件 包括Java Pytho
  • RTSP和SDP协议学习

    RTSP和SDP协议学习 版本说明 版本 作者 日期 备注 0 1 loon 2019 2 14 初稿 目录 文章目录 RTSP和SDP协议学习 版本说明 目录 第一部分 RTSP协议 一 RTSP协议概述 二 RTSP协议与HTTP协议区
  • Python音视频开发:消除抖音短视频Logo的图形化工具实现过程详解

    前往老猿Python博文目录 一 引言 在 Python音视频开发 消除抖音短视频Logo和去电视台标的实现详解 节介绍了怎么通过Python Moviepy OpenCV实现消除视频Logo的四种方法 并提供了详细的实现思路和实现代码 但
  • live555在Ubuntu上的编译及对于armLinux的交叉编译

    live555在Ubuntu上的编译及对于armLinux的交叉编译 版本说明 版本 作者 日期 备注 0 1 ZY 2019 3 7 初稿 目录 文章目录 live555在Ubuntu上的编译及对于armLinux的交叉编译 版本说明 目
  • 走进音视频的世界——RGB与YUV格式

    在图像的世界里 一般使用RGB作为存储格式 而在视频的世界里 一般使用YUV作为压缩存储格式 有时候面试官会问 为什么视频使用YUV来压缩存储 而不用RGB YUV与RGB有什么区别 两者如何转换的 常见的RGB格式有哪些 常见的YUV格式
  • Nginx+FFmpeg实现rtsp流转hls流,在WEB通过H5 video实现视频播放

    概述 本文介绍通过Nginx FFmpeg实现rtsp流转hls流 在WEB通过H5 video标签实现视频播放功能 此方法可用于网络摄像头RTSP视频流WEB端实时播放 一 FFmpeg Nginx转流hls 1 FFmpeg安装 官网
  • Android平台RTSP

    1 背景 我们在做Android平台RTSP或者RTMP播放器开发的时候 需要注意的点非常多 以下 以大牛直播SDK 官方 的接口为例 大概介绍下相关接口设计 2 接口设计 2 1 Open 接口 Open接口的目的 主要是创建实例 正常返
  • 视频码率(Bitrate),帧率(FPS)和分辨率的联系与区别

    一 视频码率 码率就是数据传输时单位时间传送的数据位数 一般我们用的单位是kbps即千位每秒 也就是取样率 并不等同与采样率 采样率的单位是Hz 表示每秒采样的次数 单位时间内取样率越大 精度就越高 处理出来的文件就越接近原始文件 但是文件
  • 《WebRTC系列》实战 Web 端支持 h265 硬解

    1 背景 Web 端实时预览 H 265 需求一直存在 但由于之前 Chrome 本身不支持 H 265 硬解 软解性能消耗大 仅能支持一路播放 该需求被搁置 去年 9 月份 Chrome 发布 M106 版本 默认开启 H 265 硬解
  • 浏览器访问.m3u8文件

    浏览器播放m3u8文件
  • 视频编解码(一):ffmpeg编码H.264帧类型判断

    本文主要讲述ffmpeg编码过程中是如何设置I帧 B帧及P帧的 以及如何通过代码判断帧类型 之前看过很多网上的文章 讲述如何判断I帧 B帧 P帧 然而都是停留在H 264官方文档中的定义 如果不结合ffmpeg 就仿佛纸上谈兵 有点不切实际
  • (ffmpeg)ffmpeg+SDL的简单播放器(雷霄骅)更新版

    代码源自雷神 一个是播放音频的demo 可以播放MP3和AAC 但是MP3应该是没有封面的 另一个是播放ts格式的视频 没有声音 源码可以到雷神博客下载 但是因为ffmpeg库的更新问题 并不能直接在ubuntu下直接运行 笔者做了修改 在
  • 浏览器播放rtsp视频流:3、rtsp转webrtc播放

    浏览器播放rtsp视频流 3 rtsp转webrtc播放 文章目录 浏览器播放rtsp视频流 3 rtsp转webrtc播放 1 前言 2 rtsp转webRTC 3 初步测试结果 4 结合我们之前的onvif gSoap cgo的方案做修
  • Ffmpeg视频开发教程(七)——基于ffmpeg4.0生成模拟yuv数据和模拟音频数据再合成为mp4文件

    本文主要实现使用最新版的ffmpeg生成模拟yuv数据和模拟音频数据再合成为mp4文件 重要代码都是来自官方 稳定性可靠 本文程序的环境搭建参考我的第一篇FFMPEG教程 https blog csdn net zhangamxqun ar
  • FFmpeg转码流程和常见概念

    视频格式 mkv flv mov wmv avi mp4 m3u8 ts等等 FFmpeg的转码工具 它的处理流程是这样的 从输入源获得原始的音视频数据 解封装得到压缩封装的音视频包 对音视频包进行解码 得到原始的音视频帧 对原始音视频帧进

随机推荐

  • MQ如何保证消息不丢失

    如何保证消息不丢失 哪些环节会造成消息丢失 其实主要就是跨网络的环境中需要考虑消息的丢失 主要是有以下几个方面 生产者往MQ发送消息 MQ的Broker是集群有主从的 主节点把消息同步到从节点时也需要考虑消息丢失问题 消息从内存持久化到硬盘
  • Java 3D 开发

    OPENGL VRML DIRECT3D JAVA3D的比较 Java3D建立在JAVA基础之上 JAVA语言的简单性使JAVA3D的推广有了可能 它实现了以下三维显示能够用到的功能 生成简单或复杂的形体 也可以调用现有的三维形体 使形体具
  • 错误AttributeError: module ‘onnx‘ has no attribute ‘load‘的解决方式

    错误出现 在使用torch导出onnx后 使用 onnx load xxx onnx 出现 AttributeError module onnx has no attribute load 错误原因 详见https github com p
  • 隐马尔可夫模型介绍

    http blog csdn net gumpeng article details 51648259 关于隐马尔可夫的理论介绍 请参见李航博士的 统计学习方法 介绍的很详尽 下面主要通过网上查到的例子来把隐马的相关问题说清楚 以下内容都非
  • 【C语言进阶】自定义类型详解(结构体、枚举、联合)

    博客主页 小王又困了 系列专栏 C语言 人之为学 不日近则日退 感谢大家点赞 收藏 评论 目录 一 结构体 1 1结构体的认识 1 2结构体的声明 1 先声明结构体类型 再定义该类型的变量 2 在声明类型的同时定义 1 3结构体的特殊声明
  • Leetcode 5544: 执行操作后字典序最笑的字符串

    题目描述 给你一个字符串 s 以及两个整数 a 和 b 其中 字符串 s 的长度为偶数 且仅由数字 0 到 9 组成 你可以在 s 上按任意顺序多次执行下面两个操作之一 累加 将 a 加到 s 中所有下标为奇数的元素上 下标从 0 开始 数
  • win10修改默认安装路径

    win10修改默认安装路径 win10修改默认安装路径 1 以Win10系统为例 首先我们鼠标右键点击 开始 菜单 弹出菜单之后 点击 运行 如下图所示 2 在运行的输入框输入 regedit 并点击确定进入注册表编辑器 如下图所示 3 在
  • layui时间选择器---去除秒列

    layui时间选择器 去除秒列 前言 layui开发文档中介绍的时间选择器包含了时 分 秒的选择 在实际开发过程中 我们选择时间可能不需要精确到秒 原始结构 1 HTML页面引入layui js文件 2 HTML文件中添加如下代码 3 在j
  • 大数据分析 开源数据集_什么是大数据分析? 来自各种数据集的快速答案

    大数据分析 开源数据集 有数据 然后有大数据 那么 有什么区别呢 大数据定义 一个清晰的大数据定义可能很难确定 因为大数据可以涵盖许多用例 但是总的来说 该术语指的是数据量如此之大 如此复杂以至于传统的数据处理软件产品无法在合理的时间内捕获
  • 只需一个提示词解除GPT-4的字符限制!

    ChatGPT的内存有限 GPT 3 5 turbo的限制为4897个令牌 而GPT 4的最大限制为8192 如果您在使用GPT 4进行聊天时超过8192个令牌 约6827个单词 它就会开始遗忘 我想出了一种新的技巧 可以轻松将对话扩展10
  • Linux项目实战C++轻量级Web服务器源码分析TinyWebServer

    目录 文章简介 一 先跑起来项目 二 再看项目结构 三 逐个击破 立下flag 文章简介 TinyWebServer是Linux下C 轻量级Web服务器 助力初学者快速实践网络编程 搭建属于自己的服务器 作为新手拿它练手入门再好不过的不二之
  • 蓝桥杯 试题 算法训练 拿金币

    问题描述 有一个N x N的方格 每一个格子都有一些金币 只要站在格子里就能拿到里面的金币 你站在最左上角的格子里 每次可以从一个格子走到它右边或下边的格子里 请问如何走才能拿到最多的金币 输入格式 第一行输入一个正整数n 以下n行描述该方
  • TQ2440移植u-boot2016.11全过程记录-【7】NAND FLASH方式启动U-BOOT

    TQ2440移植u boot2016 11 NAND FLASH方式启动U BOOT S3C2440 U BOOT启动方式说明 NOR FLASH启动 S3C2440会直接在NOR上运行程序 在NOR上中的代码需要初始化芯片时钟 初始化SD
  • 关于疫情超走心的文案

    1 盼小城无恙 等烟火寻常 2 以后不在嫌弃人山人海 因为那样才是国泰民安 3 没有一个冬天不会过去 没有一个春天不会到来 4 疫情终时 这人间仍是星河滚烫 水木清华 江山如故 5 待我跨过这病与疾 春和希望都扑面而来 6 疫情结束 是今年
  • h2 mysql 对比_轻量级数据库比较:SQLite、H2和MySQLEmbedded

    对 PHP程序员来说 SQLite可以快速的搭建数据库开发环境 提供轻松 自容器 无配置 无独立服务的数据库环境 所有数据保存在一 对 PHP程序员来说 SQLite可以快速的搭建数据库开发环境 提供轻松 自容器 无配置 无独立服务的数据库
  • 在ubuntu中添加新硬盘

    前言 安装新硬盘这种事情并不会经常 发生同样它也并不复杂 本文将向你说明如何在现有的Ubuntu系统下安装一个新硬盘 并为它设置好分区然后使用它 在动手之前 你需要先考虑下面三个关于新硬盘使用方面的问题 该硬盘是否只会在Ubuntu下使用
  • 数据清洗基础—Kettle 数据转换与清洗、数据抽取操作

    实验一 数据清洗基础 Kettle 数据转换与清洗 数据抽取操作 1 实验题目 Kettle 数据转换与清洗 数据抽取操作 2实验目和要求 2 1熟悉 Kettle 的开发环境 并掌握 Kettle 环境的配置与安装 2 2能使用 Kett
  • 复习Python第八节之json数据

    目录 JSON数据学习 1 数据交换 2 json语法 1 什么是json 2 json的库函数 3 dumps 与dump 以及loads 与load 函数之间的差别 4 Json来模拟以下数据库 文本文档当作数据库 5 使用json案例
  • Srping MVC ant路径匹配

    背景 最近有一个功能设计path匹配 开发说支持ant匹配 这是我第一次听说这个词 赶紧补一下功课 Ant匹配规则 1 前言 1 SpringMVC的路径匹配规则是按照Ant来的 实际上不只是SpringMVC 整个Spring框架的路径解
  • 流媒体协议部分开源库简单比对

    流媒体协议部分开源库简单比对 版本说明 版本 作者 日期 备注 0 1 ZY 2019 2 14 初稿 目录 文章目录 流媒体协议部分开源库简单比对 版本说明 目录 目前找到的比较中意的开源库 live555 media server JR