提供针对Go、Node.js、Python、PHP、Java的十个关于直播推流的开源git库用于学习和参
卓伊凡
编辑于 2025年07月25日 21:49
收录于文集
共54篇

提供针对Go、Node.js、Python、PHP、Java的十个关于直播推流的开源git库用于学习和参考

既然优雅草已经和甲方确定了要开始直播私有化,方案语言以及开源库中间件的选择也是尤为重要的,以下是卓伊凡认为收集起来可以做学习参考的。

针对Go、Node.js、Python、PHP、Java五种语言的直播推流相关开源库及商业方案推荐,包含仓库介绍和能力分析:

一、Go语言方案

开源库

  1. LiveGo

  • GitHub地址: https://github.com/gwuhaolin/livego

  • 功能特点:

  • 纯Go实现的轻量级RTMP/HLS/HTTP-FLV服务器

  • 支持GOP缓存实现秒开,跨平台部署

  • 提供Docker镜像快速部署

  • 适用场景:中小规模自建直播集群,最高支持2000并发

  1. Monibuca

  • GitHub地址: https://github.com/Monibuca/engine

  • 功能特点:

  • 插件化流媒体框架,支持WebRTC扩展

  • 内置JitterBuffer抗网络抖动

  • 提供集群部署方案

商业方案

  • 阿里云直播SDK:按流量计费(0.36元/GB起),提供全球加速和AI降噪等增值功能

二、Node.js方案

开源库

  1. Node-Media-Server

  • GitHub地址: https://github.com/illuspas/Node-Media-Server

  • 功能特点:

  • 支持RTMP/HTTP-FLV/WebSocket-FLV协议转换

  • 内置MP4录制和HLS切片功能

  • 单进程可承载3000+并发

个人来说比较偏向喜欢node ,曾经clam 一己之力 用node 手搓了 实时音视频 交付了一个鹰国客户。

  1. billd-live-server

  • GitHub地址: https://github.com/galaxy-s10/billd-live

  • 功能特点:

  • 基于SRS+WebRTC的完整直播系统

  • 包含打PK、礼物系统等业务模块

  • 支持多平台转推(如B站、虎牙)

商业方案

  • 腾讯云TRTC:连麦服务0.016元/分钟/路,含1080P高清支持

三、Python方案

开源库

  1. FFmpeg-python

  • GitHub地址: https://github.com/kkroening/ffmpeg-python

  • 功能特点:

  • 封装FFmpeg命令实现推流控制

  • 支持硬件加速(NVIDIA/Intel QSV)

  • 示例代码可直接对接OBS

  1. PyAV

  • GitHub地址: https://github.com/PyAV-Org/PyAV

  • 功能特点:

  • 直接调用FFmpeg的Python接口

  • 支持帧级精确控制

  • 适用于AI视频分析场景

有时候真的觉得FFmpeg好能打

商业方案

  • AWS Elemental MediaLive:按转码时长计费($0.03/分钟起)

四、PHP方案

开源库

  1. xiaosongshu/rtmp_server

  • GitHub地址: https://github.com/xiaosongshu/rtmp_server

  • 功能特点:

  • 纯PHP实现的RTMP服务器

  • 支持FLV拉流和WS协议

  • 延迟可控制在1秒内

我真的很期待 php的精彩表现,但是可惜这个库已经被关闭了

  1. HDphp3 Aliyun组件

  • GitHub地址: https://github.com/houdunwang/hdphp3

  • 功能特点:

  • 封装阿里云直播API

  • 支持推流地址生成和播放统计

这个库没什么用,这个库等于用阿里云了,基本就不是私有化,可以pass

商业方案

  • 七牛云直播PHP SDK:基础功能免费,增值服务按需付费

五、Java方案

开源库

  1. MyLive

  • GitHub地址: https://github.com/YuboLong/MyLive

  • 功能特点:

  • 轻量级RTMP服务器实现

  • 支持GOP缓存和FLV录制

  • 基于Netty的高性能网络层

  1. JavaCV

  • GitHub地址: https://github.com/bytedeco/javacv

  • 功能特点:

  • 封装FFmpeg/OpenCV的Java接口

  • 支持Android摄像头推流

  • 提供硬件编码优化

java 始终还是java ,真的有多年的历史积累。

但是 这些东西 也有点不敢用啊,只能参考看看,这个库有6年没更新了

商业方案

  • 声网Agora SDK:按分钟计费($3.99/1000分钟起)

选型建议对比表

语言

推荐开源方案

最大并发支持

典型延迟

适用场景

Go

LiveGo + Monibuca

5000+

100-300ms

高并发私有化部署

Node.js

Node-Media-Server

3000

1-2s

快速原型开发

Python

FFmpeg-python + PyAV

500

1-3s

算法结合型直播

PHP

xiaosongshu服务器

200

2-5s

小型内网应用

Java

JavaCV + MyLive

1000

500ms-1s

Android集成/企业级系统