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

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. 地址x264x265
  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. 标志
相关推荐
xcLeigh5 小时前
HTML5超酷响应式视频背景动画特效(六种风格,附源码)
前端·音视频·html5
lsjweiyi6 小时前
极简AI工具箱网站开源啦!
opencv·开源·微信支付·支付宝支付·百度ai·极简ai工具箱·ai图像处理
开源社7 小时前
一场开源视角的AI会议即将在南京举办
人工智能·开源
FreeIPCC7 小时前
谈一下开源生态对 AI人工智能大模型的促进作用
大数据·人工智能·机器人·开源
海害嗨7 小时前
阿里巴巴官方「SpringCloudAlibaba全彩学习手册」限时开源!
学习·开源
生命是有光的7 小时前
【开源风云】从若依系列脚手架汲取编程之道(八)
开源
韩曙亮7 小时前
【FFmpeg】FFmpeg 内存结构 ③ ( AVPacket 函数简介 | av_packet_ref 函数 | av_packet_clone 函数 )
ffmpeg·音视频·avpacket·av_packet_clone·av_packet_ref·ffmpeg内存结构
HuggingFace9 小时前
Halo 正式开源: 使用可穿戴设备进行开源健康追踪
开源·健康追踪
9527华安11 小时前
FPGA实现PCIE3.0视频采集转10G万兆UDP网络输出,基于XDMA+GTH架构,提供工程源码和技术支持
网络·fpga开发·udp·音视频·xdma·pcie3.0·万兆网
电子科技圈11 小时前
XMOS携手合作伙伴晓龙国际联合推出集成了ASRC等功能的多通道音频板
科技·嵌入式硬件·mcu·物联网·音视频·iot