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

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

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. 标志
    在这里插入图片描述

http://www.kler.cn/a/305079.html

相关文章:

  • 【OceanBase 诊断调优】—— ocp上针对OB租户CPU消耗计算逻辑
  • WPF学习之路,控件的只读、是否可以、是否可见属性控制
  • leetcode hot100【LeetCode 114.二叉树展开为链表】java实现
  • 应用程序部署(IIS的相关使用,sql server的相关使用)
  • hadoop大数据平台
  • 解决表格出现滚动条样式错乱问题
  • 新挂载的磁盘不能创建文件
  • 数据清洗-缺失值填充-随机森林填充
  • 【Django】Django Class-Based Views (CBV) 与 DRF APIView 的区别解析
  • Python基础语法(1)上
  • 基于微信小程序的图书馆预约占座系统
  • 【vscode】 快速生成react组件
  • uniapp小程序,使用腾讯地图获取定位
  • 监听html元素是否被删除,删除之后重新生成被删除的元素
  • PHP悦读随行一键借阅图书小程序
  • 【hot100-java】【环形链表】
  • 代理IP设置后IP不变?可能的原因及解决方法
  • 网站优化与服务器:性能提升的双重奏
  • Orchestrator 与 Mysql 8.0 的兼容性
  • NLP中文本生成任务
  • 【系统规划与管理师】【案例分析】【考点】【答案篇】第6章 IT服务运营管理
  • CSP-J 算法基础 前缀和与差分
  • 计算机毕业设计选题推荐-项目评审系统-Java/Python项目实战
  • 学习使用在windows系统上安装nodejs以及环境配置图文教程整理
  • MongoDB 高级索引
  • linux与unix