Window下SRS服务器的搭建

服务器 0

                                                                        ---2023.7.23

  • 准备材料
  1. srs下载:GitHub - ossrs/srs at 3.0release

目前srs release到5.0版本。

srs官方文档:Introduction | SRS (ossrs.net)

  1. Docker下载:Download Docker Desktop | Docker

进入docker官网选择window版本直接下载。由于srs无法直接部署在Window中,因此需要使用docker容器。

  • 搭建步骤

2.1 安装docker

Docker 并非是一个通用的容器工具,它依赖于已存在并运行的 Linux 内核环境。

Docker 实质上是在已经运行的 Linux 下制造了一个隔离的文件环境,因此它执行的效率几乎等同于所部署的 Linux 主机。

在安装docker之前先要打开window的虚拟机。

2.2.1 安装 Hyper-V

Hyper-V 是微软开发的虚拟机,类似于 VMWare 或 VirtualBox,仅适用于 Windows 10。这是 Docker Desktop for Windows 所使用的虚拟机。

但是,这个虚拟机一旦启用,QEMU、VirtualBox 或 VMWare Workstation 15 及以下版本将无法使用!如果你必须在电脑上使用其他虚拟机(例如开发 Android 应用必须使用的模拟器),请不要使用 Hyper-V!

1、开启 Hyper-V

1)鼠标移动到window图标上,有机鼠标右键。点击选择“应用和功能”。

2)下拉弹出框右边的滑动条到最底下,点击“程序和功能”。

3)点击“启动或者关闭window功能”

4)勾选Hyper-V

至此Hyper-v打开完成,启动可以使用命令也可以点击鼠标右键启动。

启动命令如下:

Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All
2.2.2 安装docker

双击下载的 Docker for Windows Installer 安装文件,一路 Next,点击 Finish 完成安装。

在cmd中输入docker出现docker 命令格式则说明安装成功了。

2.2、编译安装srs服务器

1、启动window中的cmd控制台窗口。

2、启动docker并映射srs文件的命令。

docker run -it --name=srs -v /G/srs:/tmp/srs -w /tmp/srs/trunk -p 1935:1935  -p 1985:1985 -p 8080:8080 -p 8085:8085 registry.cn-hangzhou.aliyuncs.com/ossrs/srs:dev bash

这个命令我是链接的G:/srs/路径。

这里不能使用pwd和window的路径格式。例如G:/srs要修改为/G/srs。

执行完成之后,执行ls命令,出现srs的文件结构就说明映射成功了。

3、docker启动映射成功之后执行./configure。

此处可能出现问题:

 bad interpreter: No such file or directory

解决方法如下:

vi configure:set ff:set fileformat=unix:wq

4、修改问题之后继续执行 ./configure。出现如下界面说明./configure执行成功。 

5、 执行make命令。出现如下界面说明make成功了。

6、执行 ./objs/srs -c conf/srs.conf命令启动srs服务。出现如下界面说明启动成功了。

至此,srs服务启动成功。

SRS测试使用方法

一、ffmpeg推拉流测试

1、使用ffmpeg命令推流

ffmpeg -re -i C:/Users/admin/Desktop/ship/pasf2.flv -vcodec copy -acodec copy -f flv -y rtmp://192.168.10.103/live/livestream

以上命令中的ip地址是服务器所在的window系统的ip地址。

  1. 使用ffmpeg命令拉流
ffplay rtmp:///live/livestream

二、WebRTC推拉流

1、使用ffmpeg命令推流

ffmpeg -re -i C:/Users/admin/Desktop/ship/pasf2.flv -vcodec copy -acodec copy -f flv -y rtmp://192.168.10.103/live/livestream

以上命令中的ip地址是服务器所在的window系统的ip地址。

2、使用WebRTC拉流

推送流成功之后,使⽤srs⾃带的rtc_player播放器进⾏播放,直接请求srs服务的8080端⼝即可。

在浏览器中输入如下网址:

http://192.168.10.103:8080/players/srs_player.html

三、VLC推拉流

四、docker命令

1、查看decker中运行的容器

docker ps -a

2、 获取容器/镜像的元数据

docker inspect [OPTIONS] NAME|ID
docker inspect registry.cn-hangzhou.aliyuncs.com/ossrs/srs:dev

3、连接到正在运行中的容器

docker attach [OPTIONS] CONTAINER
问题:Error response from daemon: No such container: registry.cn-hangzhou.aliyuncs.com/ossrs/srs:dev解决办法:出现此问题的原因是由于docker容器没有启动,需要启动docker容器。链接命令:docker attach 39031b94cb0e

4、启动docker容器

docker start 39031b94cb0e

5、停止docker容器

docker stop 39031b94cb0e

6、直接关闭容器

docker kill 容器ID或容器名

7、重启docker容器

docker restart 容器ID或容器名

五、srs命令

1、指定配置文件,即可启动srs

./objs/srs -c conf/srs.conf

2、启动srs

./etc/init.d/srs start

3、查看SRS状态

./etc/init.d/srs status

4、停止SRS

./etc/init.d/srs stop

5、重启SRS

./etc/init.d/srs restart

6、Reload SRS

./etc/init.d/srs reload

也许您对下面的内容还感兴趣: