https://github.com/pingostack/pingos
Based on the NGINX/RTMP/HTTP-FLV/HTTP-TS/HLS/HLS+/DASH/H.264/H.265/AAC/MP3/Live/Record/VOD/Push/Pull/Multiple Processes/Dynamic Configuration/Configuration Variables/Console Interface/Notify
https://github.com/pingostack/pingos
dash flv-live flv-server flv-stream flvjs hls-live-streaming hls-server http-ts nginx-rtmp nginx-rtmp-module nginx-rtmp-sample rtmp rtmp-push rtmp-server rtmp-stream
Last synced: 6 months ago
JSON representation
Based on the NGINX/RTMP/HTTP-FLV/HTTP-TS/HLS/HLS+/DASH/H.264/H.265/AAC/MP3/Live/Record/VOD/Push/Pull/Multiple Processes/Dynamic Configuration/Configuration Variables/Console Interface/Notify
- Host: GitHub
- URL: https://github.com/pingostack/pingos
- Owner: pingostack
- License: bsd-3-clause
- Created: 2019-10-15T07:59:48.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2022-12-20T02:26:59.000Z (over 2 years ago)
- Last Synced: 2024-10-21T17:47:26.800Z (7 months ago)
- Topics: dash, flv-live, flv-server, flv-stream, flvjs, hls-live-streaming, hls-server, http-ts, nginx-rtmp, nginx-rtmp-module, nginx-rtmp-sample, rtmp, rtmp-push, rtmp-server, rtmp-stream
- Language: C
- Homepage: https://pingos.io
- Size: 28 MB
- Stars: 989
- Watchers: 33
- Forks: 274
- Open Issues: 84
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# PingOS
[](https://pingos.io)
[](https://pingos.io) [](https://travis-ci.com/pingostack/pingos) [](https://opensource.org/licenses/BSD-3-Clause)
> [PingOS](https://pingos.io/docs/zh/quick-start)依赖[NGINX](https://github.com/nginx/nginx)构建,并且继承[arut](https://github.com/arut/nginx-rtmp-module)和[AlexWoo](https://github.com/AlexWoo/nginx-rtmp-module)的nginx-rtmp-module模块。修复arut和AlexWoo版本存在的部分问题外,PingOS在编码和直播协议以及其他方面做了多项功能扩展。
---
# 服务器功能
- [x] **直播协议:** RTMP、HTTP(S)-FLV、HTTP(S)-TS、HLS(支持HTTPS)、HLS+(支持HTTPS)、DASH(支持HTTPS)。
- [x] **音视频编码:** H264、H265、MP3、AAC。
- [x] **直播录像:** FLV文件格式和TS文件格式。
- [x] **GOP缓存:** 实现秒开和内存复用。
- [x] **application支持通配符:** “ * ”号通配符实现自动匹配推拉流时使用的application名字,无需累赘的配置。
- [x] **VHOST功能:** 支持配置多个server域名。
- [x] **控制台接口:** 通过HTTP API接口控制推流、拉流以及录像过程。
- [x] **配置动态加载:** 修改配置文件后无需对nginx做任何操作就可读取最新配置。
- [x] **流量计费:** 通过配置自定义流量日志。
- [x] **变量参数配置:** 配置文件中使用变量。
- [x] **进程间回源:** 进程间相互拉流,解决了原生nginx-rtmp-module模块多进程拉流失败的问题。
- [x] **集群化功能:** 服务器间推拉流功能(http-flv、rtmp协议)。
- [x] **html5网页播放器:** [pingos-player](https://github.com/pingostack/pingos-player)播放器将持续兼容各浏览器平台,以及多种直播协议。# 引导
- [项目文档](https://pingos.io/docs/zh/quick-start)
## 快速安装
- [使用Docker镜像](docker/README.md)
- 直接安装到系统
```bash
# 快速安装
git clone https://github.com/pingostack/pingos.gitcd pingos
./release.sh -i
# 启动服务
cd /usr/local/pingos/
./sbin/nginx
```## 操作说明
### 推流
推流地址:rtmp://ip/live/流名
### 播放地址
- rtmp 播放:rtmp://ip/live/流名
- http(s)-flv 播放:http(s)://ip/flv/流名
- hls 播放:http(s)://ip/hls/流名.m3u8
- hls+ 播放:http(s)://ip/hls2/流名.m3u8
- http(s)-ts 播放:http(s)://ip/ts/流名
### 直播流监控后台
> 访问地址:http://ip/rtmp_stat
> 通过该页面可以查看当前正在发生的推流和播放记录。### html5播放器
> 访问地址: http://ip/h5player/flv
> 这个播放器是基于flv.js的网页播放器,可以实现无插件播放http-flv直播流。
> 一旦你能够访问这个页面,说明你的直播服务器已经成功搭建起来了。