首页 > 其他分享 >SRS视频流服务器初试

SRS视频流服务器初试

时间:2022-12-21 12:44:43浏览次数:48  
标签:初试 8080 视频流 FLV SRS RTMP 拉流 推流

目录

1.关于协议理解

在前面的博客中,我简单的介绍了关于RTC,RTMP,HLS三个协议的不同之处和区分点。

音视频流简介

关于这三者协议SRS文档中有着较好的介绍

SRS文档

2.快速开始

1.SRS安装

使用SRS文档中快速开始,docker进行启动,非常简单

--rm:当容器stop时,自动删除容器(所以仅仅demo使用)

-it :这位兄弟写的很好:

docker运行容器命令中-it是什么意思

  • -i:以交互模式运行容器
  • -t:为容器重新分配一个伪输入终端
docker run --rm -it -p 1935:1935 -p 1985:1985 -p 8080:8080 \
    registry.cn-hangzhou.aliyuncs.com/ossrs/srs:4 ./objs/srs -c conf/docker.conf

然后打开8080端口,进入服务器的控制台

连接SRS,端口号不为默认的8080,为1985

连接成功后,在概况中可以看到SRS的主机负载等信息

2.推流

在1中,我是用的直播Stream的配置方式,使用RTMP进行直播流推送,RTMP基于TCP链接,需要打开服务器1935端口,需要注意

现在开始推流和拉流:

使用obs,(你也可以使用ffmeg,obs为可视化界面,ffmeg需要使用命令行进行推流):

  1. 在obs设置中选择推流

    服务器栏为:rtmp://你的ip/live/

    串流密钥为:livestream

  2. 选:你可以在输出中设置流的码率,测试服务器带宽较弱,我改为300kb

  3. 在来源中添加视频流(视频文件/显示器采集等方式)

  4. 点击推流,即可成功

3.拉流

注:

根据你Docker部署的方式不同,你拉流URL也会有所不同,因为他们采用了不同的编码。比如在本文中,我使用RTMP方式进行推流,SRS搭建也是直播Stream方式。所以你在拉流时有三种选择:

  1. RTMP: rtmp://ip/live:8080/livestream(本方式需要使用VLC等软件进行播放)(延迟3s左右)

  2. H5(HTTP-FLV): http://localhost:8080/live/livestream.flv(延迟3s左右)

    FLV的格式是SRS在服务器中将RTMP封装为FLV格式进行分发(因为RTMP和FLV关系非常“亲近,所以这个封装的行为不会非常耗时和消耗资源,故此格式能保证较低的延迟(详细可以参考SRS文档介绍)

    详细可以查看
    FLV-RTMP关系

  3. H5(HLS): http://localhost:8080/livestream.m3u8(延迟10s+)

在1中协议理解,SRS官方文档以及我的简单介绍,中有这三种协议的特点介绍。

1)方式一:SRS网页播放器(推荐)

播放器链接 :

http://ip/players/srs_player.html?vhost=__defaultVhost__&app=live&stream=livestream.flv&server=101.43.244.40&port=8080&autostart=true&schema=http

通过此网页播放器,可以通过2(RTMP封装FLV),3(HLS)方式拉流

2)方式二:VLC播放器(需要下载,延迟高,不推荐)

注:使用该方式播放,拉流的延迟会不稳定,如果你一直刷新,可以达到3s左右的延迟

  1. 选择媒体,流,网络,输入网络URL
  2. URL填入注中的三种拉流URL,都可以实现拉流

标签:初试,8080,视频流,FLV,SRS,RTMP,拉流,推流
From: https://www.cnblogs.com/zko0/p/16996004.html

相关文章

  • 音视频流简介
    1.推流和拉流推流:指的是把采集阶段封包好的内容传输到服务器的过程。其实就是将现场的视频信号传到网络的过程。拉流:拉流是指服务器已有直播内容,根据协议类型(如RTMP、RTP......
  • 初试高云FPGA
    前言之前一直眼馋Sipeed的Tang系列,正好遇到有工程需要高速控制并行总线,就买了NANO9K和Primer20K试试水买回来先拆的贵的20k,结果发现Sipeed设计师有奇怪的脑回路:核心......
  • Dynamics CRM 365 RDL报表开发,[SSRS / RV] (.rdl报表)冻结表头,固定行列标题
    ReportingServices在多个页中显示行标题和列标题报表的Header部分,在出现分页或者多页的时候仍然会在其他页显示,但是在报表的Body中如果使用Tablix(矩阵)时,行/列标题翻页时......
  • 初试定时器
    新入门skynet系列视频b站网址https://www.bilibili.com/video/BV19d4y1678Xskynet里面提供了定时器。skynet.timeout实际上是请求定时器线程往自己的队列添加一个消......
  • Paddle Lite——树莓派端部署实现实时视频流目标检测demo
    文章目录​​PaddleLite环境准备​​​​硬件准备​​​​基本软件环境准备​​​​摄像头准备​​​​编译库准备​​​​PaddleLite(demo)的安装​​​​模型和预测库下载......
  • 提升规则自治能力与原生分析能力、支持视频流接入处理
    11月,​​eKuiper​​团队转入1.8.0版本的开发周期之中,目前已完成了一部分实用的新功能:添加了视频流source,将边缘流式处理能力扩展到视频流领域,可以处理摄像头的视频流......
  • Python 实现海康机器人工业相机 MV-CU060-10GM 的实时显示视频流及拍照功能
    Python实现海康机器人工业相机MV-CU060-10GM的实时显示视频流及拍照功能 一、背景介绍1、最近项目中需要给客户对接海康机器人工业相机  MV-CU060-10GM;2、需要......
  • python之gRPC初试
    目录前言准备安装示例编写proto文件通过proto文件生成_pb2.py和_pb2_grpc.py文件编写server文件编写client文件运行结语前言本文章作为初学gRPC的一个记录,主要参考文档:Qu......
  • 如何用猿大师播放器在网页上同时播放20路以上海康威视高分辨率(1920*1080)摄像头RTSP视
    问:同时播放分辨率为1920*1080的高清分辨率的摄像头视频流,找了很长时间试过无数方法均不能满足,服务器转码方案卡顿非常严重,几乎不能播放。了解到猿大师可以用到本机的硬......
  • vue m3u8 视频流 hls
    参考:https://blog.csdn.net/a15297701931/article/details/115478652cnpmhls.js<videoref="videoElement"id="videoElement"......