首页 > 其他分享 >云SRS

云SRS

时间:2024-09-30 13:24:59浏览次数:9  
标签:srs SRS 域名 RTMP 推流 WebRTC

SRS是什么

SRS(Simple Realtime Server), 是一种专门处理音视频的服务器. 是一个由社区驱动的开源项目. 官网在这里

本文提到的所有的问题都是根据官网的操作所产生的的问题和一些记录. 新手教程

怎么使用

SRS

直观的感受, 是学习的第一动力. 先利用docker 在本地跑起来一个srs, 尝试推流, 尝试拉流, 观看效果.

快速开始

在本地测试失败, 遇到报错

按照教程, 启动的时候没有问题;
但是在推流的时候失败, 详情如下:

[tcp @ 0x38b7580] Failed to resolve hostname host.docker.internal: Name or service not known
[rtmp @ 0x37f3740] Cannot open connection tcp://host.docker.internal:1935
rtmp://host.docker.internal/live/livestream: Input/output error

推流的时候将rtmp://host.docker.internal/live/livestream改为rtmp://192.168.8.33/live/livestream, 即改成本机IP. 推流就成功了.

必须指出的是, 如果用 localhost 而不是 192.168.8.33 会出错, 可能是docker 不能使用localhost(猜测).

使用浏览器无法播放, 浏览器会自动下载无法打开的文件, *.flv

我们需要打开http://192.168.8.33:8080/players/srs_player.html页面, 在这个页面选择srs就可以播放了.

一个问题

使用RTC播放器的时候会黑屏.

肯定有问题, 因为我启动的时候, 启动的不是WebRTC. 也没有用WebRTC推流. 使用WebRTC需要用到https, 这个需要一个证书, 暂时先跳过.

跳过本地的WebRTC

直接开始云srs

云SRS

部署一个云SRS, 跟随教程来.

  1. 在云厂商购买一个轻量应用服务器(选择srs镜像)
  2. 在轻量应用服务器上设置应用的后台密码(推流要用秘钥的)

Note: 进入腾讯云控制台, 选择对应实例, 选择应用管理页面, 可以看到如何查看后台管理密码, 以及开放对应的端口.

  1. 开放对应的端口(在实例页面选择进入防火墙页面)

记录一下情况.

  1. 使用ffmpeg 正常推流, 没有问题.
  2. 使用OBS因为视频(显示器)问题, 未能推流.
  3. WebRTC, 项目中可能主要是使用这个, 它是谷歌的, 可靠, 应用领域广. 使用WebRTC必须使用https, 需要自签证书或者申请一个证书

购买域名

在腾讯云官网上, 进入控制台, 在找到云产品, 搜索域名注册即可.

域名注册完成之后, 在域名页面, 可以免费申请ssl证书.

但是, 留下几个疑问:

  1. 如何拥有子域名? [没有所谓的子域名? 域名之间没有实际的父子关系, 就像Java的包结构一样. 所以, 子域名需要重新注册一个]
  2. 域名如何更改绑定实例? [进入域名页面, 选择域名实例, 然后在概览里面选择解析, 然后选择不同的解析对应不同的实例即可.]
  3. ssl证书的应用.[在证书页面选择证书实例, 有个一键部署证书, 也有一个手动部署证书.]
  4. 为什么一键部署证书的时候, 不能部署到我的博客实例? [是因为这个实例没有安装nginx 等Web服务器, 被自动过滤了?]

到此为止, 云srs部署就成功, WebRTC 推流和播放都正常.

核心协议

一些编码, 切片, 推流, 解码的协议.

RTMP

回顾一下, RTMP服务 的端口是1935.

srs 官网上并没有解释什么是RTMP, 以及ssr是如何支持RTMP的.(里面有的是下载源码, 编译, 然后如何用支持RTMP协议的工具推流.)

RTMP需要专门搜索, 了解.
RTMP(Real Time Message Protocol), 是一个实时传输信息的协议. Just Only a protocol.

Adobe公司推出, 一个应用于Vedio & Audio 的编码协议.

WebRTC

WebRTC(Web Real Time Communications), Web 实时会话. 我学习srs的初衷是想在项目中引入音视频能力, 而webrtc 从技术上看就是两个或者多个客户端互动, 所以, 这将是主要学习的地方.

注意事项

标签:srs,SRS,域名,RTMP,推流,WebRTC
From: https://www.cnblogs.com/yinchaows/p/18214464

相关文章

  • SRS流媒体服务器从入门到精通(其一,环境搭建)
    欢迎诸位来阅读在下的博文~在这里,在下会不定期发表一些浅薄的知识和经验,望诸位能与在下多多交流,共同努力!江山如画,客心如若,欢迎到访,一展风采文章目录一、SRS简介二、SRS的应用场景三、环境搭建四、推流和拉流使用ffmepg推流和拉流使用OBS推流(推荐)五、补充一、SR......
  • 使用SRS实现了音视频通话,以及共享桌面的功能
    引言在三年前,写智能小车的时候,当时小车上有一个摄像头需要采集,实现推拉流的操作,技术选型当时第一版用的是nginx的rtmp的推拉流,服务器的配置环境是centos,2H4G3M的一个配置,nginx的rtmp的延迟是20秒,超慢,后来研究了SRS以及ZLMediaKit这两个开源的推拉流服务器,没记错的话,两个......
  • FFmpeg开发笔记(四十三)使用SRS开启SRT协议的视频直播服务
    ​《FFmpeg开发实战:从零基础到短视频上线》一书在第10章介绍了轻量级流媒体服务器MediaMTX,通过该工具可以测试RTSP/RTMP等流媒体协议的推拉流。不过MediaMTX的功能实在是太简单了,无法应用于真实直播的生产环境,真正能用于生产环境的流媒体服务器还要看SRS或者ZLMediaKit。SRS是一......
  • 可以捕捉高动态范围成像的的AR0521SR2C09SURA0-DP2、AR0522SRSM09SURA0-DP2、AR0821CS
    AR0521SR2C09SURA0-DP2、AR0522SRSM09SURA0-DP2、AR0821CSSC18SMEA0-DPBR图像传感器——明佳达1、AR0521SR2C09SURA0-DP2是一款1/2.5英寸CMOS数字图像传感器,带有2592(H)×1944(V)有效像素阵列。它能在线性或高动态范围模式下捕捉图像,且带有卷帘快门读取,其中包含了复杂......
  • SRS4.0 WebRTC一对一通话环境搭建与逻辑分析(转载)
    辑分析参考:https://blog.csdn.net/m0_60259116/article/details/12469164711.1环境搭建11.1.1.安装go语⾔环境1.在Go语⾔官⽹找到对应的安装包(Downloads-TheGoProgrammingLanguage)2.下载和解析(使用的是阿里云的Ubuntu系统):cd/usr/local/wgethttps://dl.google.com/g......
  • RSRS择时指标的150倍计算加速(有代码)
    文章来源于公众号:Logan投资往期精选文章:因子计算的1000倍加速二级:手搓的择时指增三因子择时策略年入200w的鹅养殖基地一级:轮胎行业的研究二级:最近思考的量化指标再挖掘前一篇推文中,介绍了用numpy加速rolling计算因子的方法。不过演示示例本身其实完全不需要apply,完全可......
  • FFmpeg开发笔记(三十八)APP如何访问SRS推流的RTMP直播地址
    ​《FFmpeg开发实战:从零基础到短视频上线》一书在第10章介绍了轻量级流媒体服务器MediaMTX,通过该工具可以测试RTSP/RTMP等流媒体协议的推拉流。不过MediaMTX的功能实在是太简单了,无法应用于真实直播的生产环境,真正能用于生产环境的流媒体服务器还要看SRS或者ZLMediaKit。SRS是一......
  • FFmpeg开发笔记(三十七)分析SRS对HLS协议里TS包的插帧操作
    ​《FFmpeg开发实战:从零基础到短视频上线》一书的“2.1.2 音视频文件的封装格式”介绍了视频流的PS格式和TS格式。由于TS包的长度固定,从TS流的任一片段开始都能独立解码,因此可以把TS当成音视频文件的封装格式。鉴于TS包的独立解码特性,HLS协议引入了TS格式作为传输单元。HLS协......
  • MS SQL Server with SSRS 版本从2014升级到2019版本
    升级过程中的一些注意事项。一台服务器上同时安装了MSSQLServer和MSSQLServerReportingService。1.因MicrosoftSQLServer2019ReportingService是独立产品,不在集成于SQLServer服务安装,所以需要单独下载安装包并安装2.升级MSSQLServer版本之前,需要先升级MSSQL......
  • FFmpeg开发笔记(三十六)Linux环境安装SRS实现视频直播推流
    ​《FFmpeg开发实战:从零基础到短视频上线》一书在第10章介绍了轻量级流媒体服务器MediaMTX,通过该工具可以测试RTSP/RTMP等流媒体协议的推拉流。不过MediaMTX的功能实在是太简单了,无法应用于真实直播的生产环境,真正能用于生产环境的流媒体服务器还要看SRS或者ZLMediaKit。SRS是一......