当下流行的直播技术demo演示

nginx-http-flv-module (更新不是很频繁)
SRS : https://ossrs.net/lts/zh-cn/(独立官网,目前最新稳定版version5)

基于SRS搭建直播demo演示:

一、搭建流媒体服务器

参见官网:https://ossrs.net/lts/zh-cn/docs/v6/doc/getting-started

vmware12 虚拟机一台**centos7服务器,内网ip: 192.168.1.4**
运行SRS服务器:

bash 复制代码
#docker 启动并进去容器观看log启动日志
docker run --rm -it -p 1935:1935 -p 1985:1985 -p 8080:8080 \
    registry.cn-hangzhou.aliyuncs.com/ossrs/srs:5
# ctrl + p + q 不杀死方式退出容器

docker ps 查看启动成功:

云服务器注意放开涉及到的端口。

二 、模拟推流

使用ffmpeg推流模拟,演示环境windows10,下载ffmpeg6.0

ffmpeg:https://github.com/BtbN/FFmpeg-Builds/releases

视频文件:dajiang.mp4

cenos7的ip:192.168.1.4

bash 复制代码
# livestream是你自己命名的字符串,也就是直播间的id
# 192.168.1.4替换成你自己的服务器ip,云服务器注意开放相关端口
P:\ffmpeg\ffmpeg-2023-09-04-git-f8503b4c33-full_build\bin>ffmpeg.exe -re -i dajiang.mp4 -vcodec libx264 -acodec aac -f flv rtmp://192.168.1.4/live/livestream

三 、模拟拉流

rtmp协议浏览器flash播放,flash已经是过去式,我们使用ffplay.exe播放测试。
flv、hls(m3u8)均使用ffplay.exe播放测试。

  • 实际项目使用浏览器端哔哩哔哩开源的flv.js支持flv播放
  • 实际项目使用hls.js支持m3u8播放

rtmp协议播放测试(先开启推流,同时开启拉流):

bash 复制代码
# livestream是你自己命名的字符串,也就是直播间的id
# 192.168.1.4替换成你自己的服务器ip,云服务器注意开放相关端口
# -x 500 表示500像素的窗口播放
P:\ffmpeg\ffmpeg-2023-09-04-git-f8503b4c33-full_build\bin>ffplay.exe -x 500 rtmp://192.168.1.4/live/livestream

flv协议播放测试(先开启推流,同时开启拉流):

bash 复制代码
# livestream是你自己命名的字符串,也就是直播间的id
# 192.168.1.4替换成你自己的服务器ip,云服务器注意开放相关端口
# -x 500 表示500像素的窗口播放
P:\ffmpeg\ffmpeg-2023-09-04-git-f8503b4c33-full_build\bin>ffplay.exe  -x 500 http://192.168.1.4:8080/live/livestream.m3u8

hls(m3u8)协议播放测试(先开启推流,同时开启拉流):

bash 复制代码
# livestream是你自己命名的字符串,也就是直播间的id
# 192.168.1.4替换成你自己的服务器ip,云服务器注意开放相关端口
# -x 500 表示500像素的窗口播放
P:\ffmpeg\ffmpeg-2023-09-04-git-f8503b4c33-full_build\bin>ffplay.exe  -x 500 http://192.168.1.4:8080/live/livestream.flv
相关推荐
音视频牛哥1 天前
把Android设备变成RTSP网络摄像机:SmartMediaKit 后台采集、编码与轻量级RTSP服务实践
音视频开发·视频编码·直播
字节跳动视频云技术团队17 天前
沙发搬到线上:火山引擎视频云如何用RTC+直播打造一场“云上陪看房”?
音视频开发·直播·rtc
字节跳动视频云技术团队17 天前
进球、切片、全网爆:如何打造一座跑赢热搜的赛事“AI短视频工厂”?
人工智能·音视频开发·直播
REDcker17 天前
腾讯TRRO SDK深度剖析
音视频·webrtc·实时音视频·直播·rtc·腾讯
字节跳动视频云技术团队17 天前
拒绝被剧透!解密大型赛事直播背后的超低延迟黑科技
人工智能·音视频开发·直播
花椒技术22 天前
直播间常驻子应用加载优化实践:从 1550ms 到 890ms
性能优化·直播·前端工程化
花椒技术1 个月前
HJPusher / HJPlayer SDK 实践:我们为什么把直播推播链路拆成一套可复用能力
设计模式·harmonyos·直播
音视频牛哥2 个月前
不只是等待 IDR:SmartMediaKit 播放器对 H.264 GDR 码流的完整适配实践
音视频开发·视频编码·直播
深念Y2 个月前
我明白为什么B站没法在浏览器开直播了——Windows Chrome推流踩坑全记录
前端·chrome·webrtc·浏览器·srs·直播·flv
深念Y2 个月前
仿B站直播功能技术选型:为什么必须用SRS而不是WebRTC P2P?
webrtc·srs·直播·推流·b站·多媒体·obs