音视频开源项目列表
一、多媒体处理框架
通用音视频处理
-
FFmpeg - https://github.com/FFmpeg/FFmpeg
- 最强大的音视频处理工具库
- 支持几乎所有格式的编解码
- 提供命令行工具和开发库
-
GStreamer - https://gitlab.freedesktop.org/gstreamer/gstreamer
- 跨平台多媒体框架
- 基于管道的媒体处理
- 丰富的插件系统
-
libav - https://github.com/libav/libav
- FFmpeg的分支项目
- 更专注于代码整洁性
- API与FFmpeg类似
-
MediaPipe - https://github.com/google/mediapipe
- Google的多媒体机器学习框架
- 支持人脸检测、手势识别等
- 跨平台支持
二、流媒体传输
WebRTC相关
-
WebRTC - https://webrtc.googlesource.com/src/
- Google实时通信框架
- 支持音视频通话、屏幕共享
- P2P通信核心库
-
Janus Gateway - https://github.com/meetecho/janus-gateway
- WebRTC网关服务器
- 支持多种信令协议
- 可扩展的插件架构
-
mediasoup - https://github.com/versatica/mediasoup
- WebRTC SFU媒体服务器
- 高性能C++实现
- 支持多语言客户端
-
Kurento - https://github.com/Kurento/kurento-media-server
- WebRTC媒体服务器
- 支持录制、转码等功能
- 提供丰富的API
RTMP/HLS/DASH相关
-
SRS (Simple Realtime Server) - https://github.com/ossrs/srs
- 简单高效的流媒体服务器
- 支持RTMP/HLS/WebRTC
- 国产优秀开源项目
-
nginx-rtmp-module - https://github.com/arut/nginx-rtmp-module
- Nginx的RTMP模块
- 支持RTMP推流和播放
- 可与Nginx生态集成
-
Node-Media-Server - https://github.com/illuspas/Node-Media-Server
- 基于Node.js的流媒体服务器
- 支持RTMP/HLS/DASH
- 易于部署和扩展
-
Live555 - http://www.live555.com/liveMedia/
- RTSP/RTP协议栈实现
- C++编写,跨平台
- 用于IP摄像头等场景
三、播放器
跨平台播放器
-
VLC - https://github.com/videolan/vlc
- 最流行的开源播放器
- 支持几乎所有音视频格式
- 跨平台,功能强大
-
MPV - https://github.com/mpv-player/mpv
- 轻量级高性能播放器
- 基于FFmpeg和libass
- 支持硬件加速
-
Kodi - https://github.com/xbmc/xbmc
- 开源媒体中心软件
- 支持插件扩展
- 适合HTPC使用
移动端播放器
-
ijkplayer - https://github.com/bilibili/ijkplayer
- Bilibili开源的移动端播放器
- 基于FFmpeg,支持iOS/Android
- 轻量级,性能优秀
-
ExoPlayer - https://github.com/google/ExoPlayer
- Google官方Android播放器
- 支持DASH、HLS等协议
- 高度可定制
-
GSYVideoPlayer - https://github.com/CarGuo/GSYVideoPlayer
- Android视频播放器
- 支持多种播放内核
- 功能丰富,易于集成
Web播放器
-
video.js - https://github.com/videojs/video.js
- HTML5视频播放器
- 插件系统丰富
- 跨浏览器兼容性好
-
flv.js - https://github.com/bilibili/flv.js
- B站开源的FLV播放器
- 纯JavaScript实现
- 支持HTTP-FLV播放
-
hls.js - https://github.com/video-dev/hls.js
- JavaScript HLS播放器
- 支持MSE技术
- 轻量级,性能好
四、编解码器
视频编解码
-
x264 - https://www.videolan.org/developers/x264.html
- 最流行的H.264编码器
- 高性能,广泛使用
- 支持多种预设和参数
-
x265 - https://github.com/videolan/x265
- H.265/HEVC编码器
- 更高压缩率
- 支持HDR和10bit
-
OpenH264 - https://github.com/cisco/openh264
- Cisco开源的H.264编解码器
- BSD许可证
- 适合WebRTC使用
-
libvpx - https://github.com/webmproject/libvpx
- VP8/VP9编解码器
- Google开发
- WebM格式核心
-
libaom - https://aomedia.googlesource.com/aom/
- AV1编解码器参考实现
- 下一代视频编码标准
- 开放媒体联盟开发
-
SVT-AV1 - https://github.com/OpenVisualCloud/SVT-AV1
- Intel的AV1编码器
- 高性能实现
- 适合服务器端使用
音频编解码
-
Opus - https://github.com/xiph/opus
- 现代音频编解码器
- 低延迟,高质量
- 适合实时通信
-
LAME - https://lame.sourceforge.io/
- MP3编码器
- 高质量实现
- 广泛使用
-
FLAC - https://github.com/xiph/flac
- 无损音频编解码器
- 开源免费
- 音乐爱好者首选
-
Speex - https://github.com/xiph/speex
- 语音编解码器
- 针对人声优化
- 支持降噪等功能
五、音频处理
音频库
-
PortAudio - http://www.portaudio.com/
- 跨平台音频I/O库
- 支持多种音频API
- 实时音频处理
-
RtAudio - https://github.com/thestk/rtaudio
- C++音频I/O库
- 简单易用的API
- 跨平台支持
-
OpenAL - https://github.com/kcat/openal-soft
- 3D音频API
- 游戏音频常用
- 支持空间音效
音频处理工具
-
SoX - https://sourceforge.net/projects/sox/
- 音频处理瑞士军刀
- 命令行工具
- 支持多种音频效果
-
Audacity - https://github.com/audacity/audacity
- 开源音频编辑器
- 图形界面
- 功能丰富
-
Ardour - https://github.com/Ardour/ardour
- 专业数字音频工作站
- 多轨录音和编辑
- 支持插件
六、计算机视觉
图像处理
-
OpenCV - https://github.com/opencv/opencv
- 最流行的计算机视觉库
- 丰富的图像处理算法
- 支持多种编程语言
-
dlib - https://github.com/davisking/dlib
- 机器学习工具库
- 人脸检测和识别
- C++实现,性能优秀
-
ImageMagick - https://github.com/ImageMagick/ImageMagick
- 图像处理工具集
- 命令行和API
- 支持多种图像格式
视频分析
-
OpenPose - https://github.com/CMU-Perceptual-Computing-Lab/openpose
- 人体姿态估计
- 实时多人检测
- 基于深度学习
-
YOLO - https://github.com/ultralytics/yolov5
- 目标检测框架
- 实时性能
- 易于训练和部署
七、实时通信
信令服务器
-
Janus - https://github.com/meetecho/janus-gateway
- WebRTC网关
- 支持多种协议
- 插件架构
-
Kurento - https://github.com/Kurento/kurento-media-server
- 媒体服务器
- WebRTC支持
- 录制和处理功能
-
Coturn - https://github.com/coturn/coturn
- TURN/STUN服务器
- NAT穿透必备
- 高性能实现
SIP/VoIP
-
FreeSWITCH - https://github.com/signalwire/freeswitch
- 软交换平台
- 支持多种协议
- 企业级通信方案
-
Asterisk - https://github.com/asterisk/asterisk
- 开源PBX系统
- VoIP电话系统
- 强大的可扩展性
-
PJSIP - https://github.com/pjsip/pjproject
- SIP协议栈
- 跨平台支持
- 音视频通信库
八、工具和实用程序
分析工具
-
MediaInfo - https://github.com/MediaArea/MediaInfo
- 媒体文件信息分析
- 支持多种格式
- GUI和CLI版本
-
ffprobe - FFmpeg工具集的一部分
- 媒体流分析工具
- 详细的技术信息
- 命令行工具
-
VLC media player - 内置分析功能
- 编解码信息查看
- 流媒体分析
- 图形界面
开发工具
-
OBS Studio - https://github.com/obsproject/obs-studio
- 开源直播和录制软件
- 插件系统
- 跨平台支持
-
Kdenlive - https://github.com/KDE/kdenlive
- 开源视频编辑器
- 非线性编辑
- 丰富的特效
-
Shotcut - https://github.com/mltframework/shotcut
- 跨平台视频编辑器
- 基于MLT框架
- 易于使用
九、移动端SDK
Android
-
CameraX - https://developer.android.com/training/camerax
- Google相机库
- 简化相机开发
- 兼容性好
-
Mobile FFmpeg - https://github.com/tanersener/mobile-ffmpeg
- 移动端FFmpeg
- iOS/Android支持
- 轻量级实现
iOS
-
GPUImage - https://github.com/BradLarson/GPUImage2
- GPU加速图像处理
- 实时滤镜
- Swift实现
-
LFLiveKit - https://github.com/LaiFengiOS/LFLiveKit
- iOS直播推流SDK
- RTMP推流
- 美颜滤镜
跨平台
-
React Native Video - https://github.com/react-native-video/react-native-video
- React Native视频组件
- 跨平台播放器
- 易于集成
-
Flutter Video Player - https://pub.dev/packages/video_player
- Flutter视频播放插件
- 官方维护
- 跨平台支持
十、AI音视频处理
语音识别
-
Whisper - https://github.com/openai/whisper
- OpenAI语音识别模型
- 多语言支持
- 高准确率
-
DeepSpeech - https://github.com/mozilla/DeepSpeech
- Mozilla语音识别引擎
- 端到端深度学习
- 开源免费
音频AI
-
Spleeter - https://github.com/deezer/spleeter
- 音源分离工具
- 人声提取
- 基于深度学习
-
RVC - https://github.com/RVC-Project/Retrieval-based-Voice-Conversion-WebUI
- AI变声工具
- 实时语音转换
- Web界面
视频AI
-
Real-ESRGAN - https://github.com/xinntao/Real-ESRGAN
- 图像超分辨率
- 视频增强
- 实用的AI模型
-
DeepFaceLab - https://github.com/iperov/DeepFaceLab
- 深度换脸技术
- 视频人脸替换
- 强大的训练工具
这些开源项目涵盖了音视频开发的各个方面,从基础的编解码到高级的AI处理。选择合适的项目可以大大加快开发进度,同时通过阅读源码也能深入学习音视频技术。建议从简单的项目开始,逐步深入到更复杂的系统级项目。