3步安装http-flv/rtmp/hls/hls+/http-ts直播系统

AI权益加码!Claude Code、Cursor等20+工具免费用! 购周边限时加赠Coding Plan Lite,畅享主流AI工具!学习进阶更高效! 阅读详情

转载请注明出处:https://blog.csdn.net/impingo
项目地址:https://github.com/im-pingo/pingos
项目官网:http://pingos.io

服务器介绍

项目起源

最初我目前所维护的nginx-rtmp-module是在AlexWoo的基础上进一步开发的。
在经过一些列功能迭代后,我独立维护了https://github.com/im-pingo/pingos进一步将原nginx-rtmp-module进行集成化,融合进了直播流监控页面、flv.js播放器、一键安装部署等等功能。
所以pingos是在nginx-rtmp-module的基础上做了加法,欢迎大家直接使用pingos

版本区别

项目特点
nginx-rtmp-module单一的nginx-rtmp-module模块,编译起来相对繁琐,配置文件和网页播放器都需要自己搭建。
pingos这是一个集成化的流媒体服务器项目,有一键安装部署脚本,配置文件、网页播放器和系统控制台都已经集成好,更方便安装维护。一键安装脚本可在各个linux发行版本和macOS操作系统使用。

服务器功能

  1. 接收rtmp实时流
  2. 支持rtmp、http-flv、http-ts、hls、hls+(内存切片) 直播服务
  3. 支持实时录制功能
  4. 支持主动推流、拉流操作
  5. 支持动态推流、拉流操作
  6. 支持鉴权功能
  7. 支持流状态监控
  8. 支持时间戳修复

我所做的改进

  1. 已经修复了AlexWoo项目中的一些bug
  2. 使rtmp、http-flv、hls、http-ts直播支持mp3、h265编码
  3. 支持http-ts直播协议
  4. 支持直播时移服务
  5. 支持hls+(内存切片)服务(目前仅支持单进程下使用,多进程下无法正常使用,未来将支持多进程下的hls+)
  6. 支持服务器端自动修复异常的音视频时间戳功能
  7. 修复流状态监控后台页面

未来计划

我会持续维护https://github.com/im-pingo/pingos项目,并且希望能够得到更多人的能够发现问题并且及时在github上提出问题,只要本人看到都会给出回复并且及时修复。

近期准备上线的功能

  1. 接收http-ts推流
  2. 支持http-ts回源
  3. 支持http-fmp4直播协议

搭建流程

安装

# 快速安装
git clone https://github.com/im-pingo/pingos.git

cd pingos

./release.sh -i

# 启动服务
cd /usr/local/pingos/
./sbin/nginx

配置文件

配置文件详解

后面会专门写几篇博客来解析其中的配置项和对应的应用场景。

修改配置文件

cd /usr/local/nginx
vim conf/nginx.conf

更多配置内容请访问项目官网https://pingos.io

启动nginx

cd /usr/local/pingos
./sbin/nginx

注意事项

由于nginx需要监听80和1935端口,所以一定要确保你的服务器防火墙没有屏蔽这两个端口。

html5播放器

本系统集成了一个html5播放器,访问地址是 http://ip/h5player/flv
这个播放器是基于flv.js的网页播放器,可以实现无插件播放http-flv直播流。
一旦你能够访问这个页面,说明你的直播服务器已经成功搭建起来了。
在这里插入图片描述

推流

ffmpeg推流

ffmpeg -re -i 文件.mp4 -vcodec copy -acodec copy -f flv rtmp://ip地址/live/01

将上述命令中的your-input-file替换成你的媒体文件名,将your-server-ip替换成你的服务器ip地址,stream-name是你希望命名的流名(可随意)。
注意:ffmpeg命令中-re参数含义是按照真实时间戳速率读取文件,这个选项在推送文件到直播服务器中是必须的。另外-vcodec和-acodec是转码参数,如果你要推送的文件视频编码格式本身就是h264编码并且音频编码格式是aac或者mp3的话则不需要这两个参数。(重新编码非常消耗计算资源,使用时要注意)

OBS推流

Open Broadcaster Software(简称OBS)是一款直播流媒体内容制作软件。同时程序和其源代码都是免费的。

支持 OS X、Windows、Linux操作系统。适用于多种直播场景。满足大部分直播行为的操作需求(发布桌面、发布摄像头、麦克风、扬声器等等)。
在这里插入图片描述

后台监控

在浏览器中打开:http://your-server-ip/rtmp_stat
可以通过后台页面实时查看当前在线的推拉流情况。
rtmp-stat

播放地址

协议地址
rtmprtmp://ip/live/流名
http-flvhttp://ip/live/流名
hlshttp://ip/hls/流名.m3u8
hls+http://ip/hls2/流名.m3u8
http-tshttp://ip/ts/流名

QQ交流群:697773082

QQ交流群:697773082

音视频/流媒体协议和编码汇总 是应用层协议,使用TCP作为底层传输协议,并提供了低延迟、高带宽利用率和实时性的特点。 (1)RTMP协议是Adobe的私有协议,未完全公开 (2)一般传输的是 flv,f4v 格式流都作用于OSI模型中的传输层。 RTCP是RTP的补充协议,用于提供对RTP会话的控制和监控。RTCP负责传输会话中的控制信息,包括发送者和接收者的统计信息、网络延迟、会话质量反馈等 SRTP是在RTP(Real-time Transport Protocol)的基础上添加了加密和认证机制,用于保护音频和视频数据的机密性和完整 阅读详情

相关推荐

TS流网页视频播放

TS流网页视频播放器,一个可以支持windows 网页端播放ts流的demo。

流媒体传输协议HTTP-FLV、WebSocket-FLVHTTP-TS 和 WebSocket-TS的详细介绍、应用场景及对比

HTTP-FLV、WS-FLVHTTP-TS 和 WS-TS 是针对 FLVTS 格式视频流的不同传输方式。它们通过不同的协议实现视频流的传输,以满足不同的应用场景和需求。接下来我们对这些流媒体传输协议进行剖析。

大唐锦绣的博客 4150

搭建流媒体服务器 PingOS 平台搭建

搭建流媒体服务器 PingOS 平台搭建 https://zhuanlan.zhihu.com/p/124035946 https://www.debuginn.cn/5614.html

sun007700的专栏 874

分布式直播系统(三)【Nginx-rtmp rtmphttp-flvhttp-tshlshls+ 配置说明】

服务配置项全局配置rtmp服务配置http-flv配置http-ts服务配置hls服务配置QQ交流群:697773082(流媒体人的后院) 全局配置 配置项 参数类型 默认值 描述 server_names_hash_max_size 整型数 512 服务器server_name的最大长度 listen 整型数 1935 rtmp服务监听端口 server_name 字符串...

impingo的博客 5879

如何用Cookiecutter快速搭建VR/AR项目模板:终极指南

虚拟现实(VR)和增强现实(AR)开发正以前所未有的速度发展,但项目初始化配置往往让开发者头疼不已。幸运的是,Cookiecutter项目模板生成器为这一挑战提供了完美解决方案!🎯 这款强大的命令行工具能够快速创建标准化的VR/AR项目结构,让您专注于核心开发而不是重复的配置工作。 ## 为什么VR/AR开发者需要Cookiecutter? **VR/AR项目复杂性高**,涉及3D模型、交互

gitblog_00096的博客 657

常见推拉流客户端使用方式

1 rtmp推流 1.1 obs 1.1.1 obs采集摄像头 1.2 ffmpeg 1.2.1 ffmpeg读取文件推送 2 rtsp推流 2.1 ffmpeg 2.1.1 ffmpeg读取文件推流 3 rtmp拉流 3.1 vlc 3.2 ffmpeg 3.2.1 ffmpeg拉流保存文件 3.3 ffplay 3.4 mpv 3.5 srs提供的rtmp播放页面(基于adobe flash技术) 4 http-flvhttps-flv拉流 5 HLS(m3.

q191201771的专栏 6160

倾情推荐:PingOS——全能型直播服务器解决方案

[PingOS](https://pingos.io) 是一个强大的开源直播服务器系统,基于 NGINX 构建,集成了 nginx-rtmp-module 的优秀特性并进行了诸多优化。它旨在提供高效、稳定、易扩展的实时流媒体服务,涵盖了从直播协议到编码、再到流量计费等多种功能。无论你是直播行业的初学者还是经验丰富的开发者,PingOS 都将是你理想的合作伙伴。 ### 2、项目技术分析 ###...

gitblog_00024的博客 735

PingOS:基于NGINX的流媒体服务器解决方案

PingOS是一款基于NGINX构建的开源流媒体服务器,它继承并扩展了arut和AlexWoo的nginx-rtmp-module模块。项目主要使用C语言进行开发,提供了丰富的流媒体处理功能,适用于直播和点播场景。 ## 主要编程语言 - C语言 ## 核心功能 - **直播协议支持**:支持RTMPHTTP(S)-FLVHTTP(S)-TSHLS(支持HTTPS)、HLS+(支持H...

gitblog_01021的博客 813

PingOS服务器系统常见问题总结

转载请注明出处:https://blog.csdn.net/impingo 我的开源项目地址:https://github.com/pingostack/pingos 开源项目:https://pingos.io 目录1. 如何支持H265编码?2. 如何降低直播延时?2.1 优化推流端2.2 优化PingOS服务器配置2.3 优化播放器端3. 如何降低HLS直播延时?4. 如何支持拉取rtsp源?QQ交流群:697773082 本篇内容记录大家问的比较多的问题,持续更新… 1. 如何支持H265编码?

impingo的博客 2778

[HLS]HTTP Live Streaming流与TS流比较

转自:http://www.cuplayer.com/player/PlayerCode/FMS/2013/0725/905_4.html 你说的应该是 HTTP Live Streaming [1] 吧。这个是 Apple 为了提高流播效率开发的技术,特点是将流媒体切分为若干 TS 片段(比如每10秒一段),然后通过一个扩展的 m3u 列表文件将这些 TS 片段集中起来供客户端播放器接收

haima1998的专栏 3959

PingOS:构建高效直播服务器的开源利器

在数字化时代,直播已成为信息传播和娱乐的重要形式。为了满足日益增长的直播需求,PingOS应运而生,它是一个基于NGINX的高性能直播服务器项目,旨在为用户提供稳定、高效的直播服务。本文将详细介绍PingOS的项目背景、技术特点、应用场景及其独特优势。 ## 项目介绍 PingOS是一个开源的直播服务器项目,它构建在NGINX之上,并集成了arut和AlexWoo的nginx-rtmp-mod...

gitblog_00791的博客 935

pingos(nginx-rtmp-module)获取实时直播数据

原生的rtmp_stat存在很多局限性,pingos使用sys_stat解决了直播信息参数不够详细和多worker进程的获取信息不完整的问题

impingo的博客 2344

http-flv/http-ts/hls/hls+/rtsp/rtmp直播服务器用它一个就够了

转载请注明出处:https://blog.csdn.net/impingo 项目地址:https://github.com/im-pingo/pingos http-flv直播配置pingos服务器起源版本区别功能对比QQ交流群:697773082 pingos服务器起源 最初我目前所维护的nginx-rtmp-module是在AlexWoo的基础上进一开发的。 在经过一些列功能迭代后,我独立维...

impingo的博客 4638

ffmpeg测试推流http-ts

ffmpeg -re -i /home/share/3531d抓包.ts -c copy -listen 1 -f mpegts -content_type video/mp2t。直接使用vlc播放,vlc播放地址是http://192.168.20.67:8880/live/stream0。ffmpeg推流http-ts对应ffmpeg源码文件是libavformat/http.c。读取本地mp4文件推流http-ts。读取本地ts文件推流http-ts。使用wireshark抓包。

lililirururu的博客 316

搭建流媒体推流/拉流服务(RTMP/RTSP/HLS/HTTP-FLV

搭建流媒体服务,将rtsp或者rtmp视频流转换为H5可以直接播放的视频。用在直播、安防监控、视频点播、屏幕画面转播等

Stronger的博客 3万+

多平台转发系统/rtmp多平台转推流系统 (输入:rtmp,rtsp。输出:rtmp,http_ts,http_flv,hls

多平台分发系统采用嵌入式一体化设计, rtmp、rtsp流输入。rtmp,http_ts,http_flv,hls多协议独立并发输出。可同时将流转发至多个直播平台。本系统采用图形化操作界面,使用简单,超低转发延时。广泛应用于新媒体发布,教育直播、赛事直播、远程教学、广电等视频直播领域。 ...

LiveServers的博客 5685

读出自己的车辆 CAN 数据:opendbc DBC 文件解析完整指南

你大概有过这样的想法:把车速、电池电量、方向盘转角实时显示在笔记本电脑上。可市面上几十块的 OBD 盒子只吐油耗这类通用数据,专用设备又动辄上千;自己抓 CAN 总线,屏幕上只滚过一排十六进制字节,根本不知道哪个是哪个。opendbc 是一个免费的 MIT 许可开源 Python 库:内置上百个车型的 DBC 文件,几行代码就能把裸 CAN 帧翻译成车速、转角这类信号。这篇文章带你走完三,读出第

gitblog_00963的博客 465

PingOS 在Ubuntu20.04 环境下使用docker 编译镜像并部署

1. PingOS简介 PingOS依赖NGINX构建,并且继承arut和AlexWoo的nginx-rtmp-module模块。修复arut和AlexWoo版本存在的部分问题外,PingOS在编码和直播协议以及其他方面做了多项功能扩展。 GitHub地址:https://github.com/pingostack/pingos 用户指南:https://github.com/pingostack/pingos 2. 为什么写这篇博客 本人按照GitHub上给的docker镜像编译部署方式(htt

qq_25349629的博客 4048

SRS支持的各种HTTP直播流(FLVTS、MP3、AAC)

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_34068198的博客 729
上一篇: 使用flv.js快速搭建html5网页直播
下一篇: 执行 brew install 命令长时间卡在 Updating Homebrew 的解决方法
im-pingo
博客等级 码龄7年 304粉丝 45原创
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值