当前位置: 首页 > news >正文

音视频开发常见的开源项目汇总

FFmpeg

  1. 地址:https://ffmpeg.org/
  2. 介绍:FFmpeg 是一个非常强大的开源多媒体框架,它可以用来处理视频和音频文件。它支持多种格式的转换、编码、解码、转码、流处理等。FFmpeg 包括了 libavformat、libavcodec、libavutil、libswscale、libpostproc 等多个库,以及 ffmpeg、ffplay、ffprobe 等命令行工具。它支持广泛的音视频格式转换、编解码、流媒体、滤镜和设备操作,并且可以在多个平台上运行,如 Windows、Linux、Mac、iOS、Android 等。FFmpeg在多媒体处理领域被广泛尊称为“瑞士军刀”,基本能解决所有关于音视频应用的问题;目前市面上所有音视频应用软件底层基本都使用了FFmpeg。
  3. 标志
    在这里插入图片描述

WebRTC

  1. 中文地址:https://www.webrtc.org.cn/
  2. 介绍:WebRTC(Web Real-Time Communication)是一种支持网页浏览器进行实时语音对话或视频对话的技术。它允许直接在浏览器中进行音视频通信,而无需任何插件,并支持点对点通信,这意味着通信双方可以直接交换数据,而无需通过服务器。WebRTC 包括了多个API和协议,能够实现音频、视频和数据的实时传输。目前在实时音视频应用领域底层基本都采用了WebRTC技术。
  3. 标志
    在这里插入图片描述

x264/x265

  1. 地址:x264、x265
  2. 介绍:x264是H.264视频编码器的开源实现,而x265则是HEVC/H.265视频编码器的开源实现,用于生成符合相应标准的视频码流。可以说x264是最好的符合H.264标准的视频编码器,x265是最好的符合HEVC标准的视频编码器。二者都属于VLC项目组中的项目。
  3. 标志
    在这里插入图片描述在这里插入图片描述

Opus

  1. 地址:https://opus-codec.org/
  2. 介绍:Opus 是一种开源的音频编码格式,由 IETF 标准化,集成了 SILK 和 CELT 两种声音编码技术。它专为互联网上的交互式语音和音频传输设计,能够处理各种音频应用,包括 IP 语音、视频会议、游戏内聊天、流音乐以及远程现场音乐表演。Opus 支持从低比特率的窄带语音到高质量的立体声音乐,具有非常低的算法延迟,适合用于低延迟语音通话的编码。支持的比特率范围从 6 kb/s 到 510 kb/s,单一频道最高支持 256 kb/s。Opus 编码器的实现包括 libopus 编解码器库、opusfile 封装器、opusenc 和 opusdec 工具以及 opusinfo 工具。
  3. 标志
    在这里插入图片描述

ijkplayer

  1. 地址:https://github.com/bilibili/ijkplayer
  2. 介绍:IJKPlayer 是一个基于 FFmpeg 的开源多媒体播放器框架,由 Bilibili 开发并维护,支持 Android 和 iOS 平台。它具有跨平台、高度可定制、稳定性高和占用资源少等特点。IJKPlayer 支持多种视频格式,如 MP4、FLV、MKV、AVI 等,并且支持硬件加速解码,以提高视频播放的流畅度和清晰度。
  3. 标志:无。

GPUImage

  1. 地址:https://github.com/BradLarson/GPUImage
  2. 介绍:GPUImage 是一个非常著名的基于 OpenGL 的图像和视频处理框架,它为 iOS 和 Android 开发者提供了强大的图像处理能力。它内置了超过 120 多种常见的滤镜效果,并且支持实时相机和摄像机的滤镜处理,同时也能够自定义图像滤镜。
  3. 标志
    在这里插入图片描述

VLC media player

  1. 地址:https://www.videolan.org/vlc/libvlc.html
  2. 介绍:VLC Media Player 是一款广受欢迎的自由、开源的跨平台多媒体播放器及框架,由 VideoLAN 组织开发。它能够播放大多数多媒体文件格式,包括但不限于 MPEG-1、MPEG-2、MPEG-4、DivX、DVD、VCD 以及各种流媒体协议。VLC 不需要用户安装额外的编解码器,因为它已经内置了对多种格式的支持,如 MP3、MKV、WMV、WEBM、MPEG-2、MPEG-4 和 H.264 等。
  3. 标志
    在这里插入图片描述

Jitsi

  1. 地址:https://jitsi.org/
  2. 介绍:Jitsi 是一个开源的实时通信项目,提供了一系列工具和库,用于实现包括安全的视频通话、会议、聊天、桌面共享以及文件传输在内的多种功能。Jitsi Meet 是 Jitsi 项目中最为知名的部分,它是一个基于 WebRTC 技术的开源语音、视频会议和即时消息服务。用户可以通过 Web 浏览器加入会议,无需安装任何插件,也支持通过移动应用或桌面应用进行会议。
  3. 标志
    在这里插入图片描述

live555

  1. 地址:http://live555.com/
  2. 介绍:Live555 是一个为流媒体提供解决方案的跨平台的 C++ 开源项目,它实现了对标准流媒体传输协议如 RTP/RTCP、RTSP、SIP 的支持。Live555 支持多种音视频编码格式的流化、接收和处理,包括 MPEG、H.264、H.265、H.263+、DV、JPEG 视频和多种音频编码。由于其良好的设计,Live555 非常容易扩展对其他格式的支持。
  3. 标志

在这里插入图片描述

Seetaface

  1. 地址:https://github.com/seetaface
  2. 介绍:SeetaFace 是由中国科学院计算技术研究所的 VIPL(Visual Perception and Learning)团队开发的开源人脸识别引擎。它包含三个核心模块:人脸检测(SeetaFace Detection)、面部特征点定位(SeetaFace Alignment)以及人脸特征提取与比对(SeetaFace Identification),能够实现从图像或视频中检测人脸、定位面部特征点以及提取人脸特征并进行识别的全套流程。
  3. 标志
    在这里插入图片描述

Soundtouch

  1. 地址:http://soundtouch.surina.net/
  2. 介绍:SoundTouch 是一个开源的音频处理库,由 Olli Parviainen 开发。它能够实现音频的变速、变调和变速同时变调等功能,而不会降低音频质量。这个库特别适合用于实时处理媒体流和音频文件。
  3. 标志
    在这里插入图片描述

OBS Studio

  1. 地址:https://obsproject.com/
  2. 介绍:OBS,全称为Open Broadcaster Software,是一个开源的直播和录屏软件,广泛用于视频录制和直播推流。它支持多平台,包括Windows、macOS和Linux,提供了强大的音视频混流功能,非常适合视频博主和游戏直播人员使用。
  3. 标志
    在这里插入图片描述

libyuv

  1. 地址:https://chromium.googlesource.com/libyuv/libyuv/
  2. 介绍:Libyuv 是一个由 Google 开源的 YUV 图像处理库,它提供了包括缩放、格式转换、旋转等功能。Libyuv 支持多种 YUV 格式之间的转换,包括从摄像头格式转换为 YUV 格式,以及从 YUV 格式转换为 RGB 格式。此外,libyuv 还支持图像的旋转功能,可以旋转 90、180 或 270 度,适用于移动设备在不同方向上的显示需求。Libyuv 还针对不同的处理器架构进行了专门的指令集优化,如 SSSE3/AVX2 在 x86/x64 上,Neon 在 ARM 上,MSA 在 MIPS 上,以及 RVV 在 RISC-V 架构上的优化。
  3. 标志:无

OpenCV

  1. 地址:https://opencv.org/
  2. 介绍:OpenCV(Open Source Computer Vision Library)是一个功能强大的开源计算机视觉库,它提供了广泛的编程函数,用于图像处理、视频捕获和分析、特征检测、机器学习、深度学习等。
  3. 标志
    在这里插入图片描述

openh264

  1. 地址:https://github.com/cisco/openh264
  2. 介绍:OpenH264 是由 Cisco 开源的 H.264 视频编解码器,它提供了适合实时应用的编码和解码功能,特别适用于 WebRTC 等场景。
  3. 标志:无

JSMpeg

  1. 地址:https://jsmpeg.com/
  2. 介绍:JSMpeg 是一个用 JavaScript 编写的视频播放器,它能够解码 MPEG1 视频和 MP2 音频。这个播放器包括 MPEG-TS 解复用器、MPEG1 视频解码器、MP2 音频解码器、WebGL 和 Canvas2D 渲染器以及 WebAudio 音频输出。JSMpeg 支持通过 Ajax 加载静态视频文件,并且可以通过 WebSockets 实现低延迟(约50ms)的流媒体播放。
  3. 标志
    在这里插入图片描述

AV1

  1. 地址:https://aomedia.org/
  2. 介绍:AV1(Alliance for Open Media Video 1)是由开放媒体联盟(AOM)开发的新一代视频编码标准,旨在提供更高效的视频压缩,同时保持视频质量。AV1 相较于前代编码标准如 VP9,实现了更高的压缩效率和更好的视频质量。它支持高达 12 位颜色深度,允许更广泛的颜色范围和更好的视觉表现,并在颜色分级和后处理方面提供了更大的灵活性。AV1 支持从标清到超高清(4K 和 8K)的分辨率,并为自适应流提供可扩展性。
  3. 标志
    在这里插入图片描述

SDL

  1. 地址:https://www.libsdl.org/
  2. 介绍:在音视频开发领域,SDL(Simple DirectMedia Layer)是一个非常重要的开源库。它提供了跨平台的音频、视频、键盘、鼠标、游戏杆和图形硬件的低级访问,使得开发者能够通过编写一套代码实现在多个操作系统上的运行。SDL 特别适用于开发游戏、模拟器、媒体播放器等多媒体应用。
  3. 标志
    在这里插入图片描述

SRS

  1. 地址:https://ossrs.net/lts/zh-cn/
  2. 介绍:SRS(Simple Realtime Server)是一个开源的实时视频服务器,支持RTMP、WebRTC、HLS、HTTP-FLV、SRT等多种实时流媒体协议。
  3. 标志
    在这里插入图片描述

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • C语言自定义类型结构体(24)
  • 免费SSL证书正在逐渐被淘汰,证书部署自动化的发展趋势即将到来!
  • LabVIEW中AVI帧转图像数据
  • 从ANN到SNN的转换:实现、原理及两种归一化方法【MINIST、实战】
  • 【JVM】类加载
  • 上海亚商投顾:沪指探底回升 华为产业链午后爆发
  • Js中的pick函数
  • 关于STM32项目面试题01:电源
  • sqli-labs靶场自动化利用工具——第1关
  • 深入理解 C++ 中的 static_assert 编译期断言
  • Linux下的简单TCP客户端和服务器
  • 爬虫逆向学习(六):补环境过某数四代
  • 用Python创建一个键盘输入捕获程序
  • 【JavaScript】数据结构之树
  • C# 禁止程序重复启动
  • [PHP内核探索]PHP中的哈希表
  • [rust! #004] [译] Rust 的内置 Traits, 使用场景, 方式, 和原因
  • 【跃迁之路】【585天】程序员高效学习方法论探索系列(实验阶段342-2018.09.13)...
  • extjs4学习之配置
  • FastReport在线报表设计器工作原理
  • golang中接口赋值与方法集
  • Hibernate【inverse和cascade属性】知识要点
  • iBatis和MyBatis在使用ResultMap对应关系时的区别
  • Java 最常见的 200+ 面试题:面试必备
  • Leetcode 27 Remove Element
  • LeetCode29.两数相除 JavaScript
  • PHP CLI应用的调试原理
  • Spring声明式事务管理之一:五大属性分析
  • 复杂数据处理
  • 开放才能进步!Angular和Wijmo一起走过的日子
  • 免费小说阅读小程序
  • 模型微调
  • 强力优化Rancher k8s中国区的使用体验
  • 巧用 TypeScript (一)
  • 使用 Node.js 的 nodemailer 模块发送邮件(支持 QQ、163 等、支持附件)
  • 算法系列——算法入门之递归分而治之思想的实现
  • 小试R空间处理新库sf
  • 新书推荐|Windows黑客编程技术详解
  • 一些css基础学习笔记
  • 转载:[译] 内容加速黑科技趣谈
  • 深度学习之轻量级神经网络在TWS蓝牙音频处理器上的部署
  • mysql面试题分组并合并列
  • ​LeetCode解法汇总2182. 构造限制重复的字符串
  • ‌内网穿透技术‌总结
  • #Ubuntu(修改root信息)
  • #传输# #传输数据判断#
  • #预处理和函数的对比以及条件编译
  • (3)STL算法之搜索
  • (6)添加vue-cookie
  • (Ruby)Ubuntu12.04安装Rails环境
  • (ZT)一个美国文科博士的YardLife
  • (附源码)springboot助农电商系统 毕业设计 081919
  • (附源码)流浪动物保护平台的设计与实现 毕业设计 161154
  • (经验分享)作为一名普通本科计算机专业学生,我大学四年到底走了多少弯路
  • (一)RocketMQ初步认识