快捷搜索:  汽车  科技

开源的优秀的流媒体服务器,简单实时服务

开源的优秀的流媒体服务器,简单实时服务1.2、复制配置文件C 音视频开发学习资料:点击领取→音视频开发(资料文档 视频教程 面试题)(FFmpeg WebRTC RTMP RTSP HLS RTP)1.1 先启动一个容器标准启动安装并启动 srsdocker run --rm -p 1935:1935 -p 1985:1985 -p 8080:8080 \ --name srs \ ossrs/srs:3启动后,就会生成一个docker容器,这时,我们可以把 配置文件从docker容器取出来。

SRS 的配置文件是 srs.conf,它位于 conf 文件夹下。配置文件描述了SRS 的配置和开启功能的情况。

1.开发阶段时修改配置文件

在开发过程中,想尝试修改配置文件来启动SRS怎么办呢?可选的一个方式是 使用docker 的 -v 参数指定一个映射卷来做。

思路
在 docker run 时,将本机的文件夹映射为 容器的一个 卷。
注意:
--name : 为容器指定一个名称;
-v: 绑定一个卷

实现步骤:

  • 1、先启动一个容器,启动后,容器内就会有 conf 文件夹,这里存放了配置文件。
  • 2、 将配置文件拷贝到本地计算机(从容器里拷贝到本机)
  • 3、移动原来的容器。通过 挂载卷 的方式重新启动容器。

1.1 先启动一个容器

标准启动
安装并启动 srs

docker run --rm -p 1935:1935 -p 1985:1985 -p 8080:8080 \ --name srs \ ossrs/srs:3

启动后,就会生成一个docker容器,这时,我们可以把 配置文件从docker容器取出来。

C 音视频开发学习资料:点击领取→音视频开发(资料文档 视频教程 面试题)(FFmpeg WebRTC RTMP RTSP HLS RTP)

开源的优秀的流媒体服务器,简单实时服务(1)

1.2、复制配置文件

**把容器中的配置文件复制出来** docker cp -a ossrs/srs:3:/usr/local/srs/conf ~/Downloads/srs/conf # 把容器中的数据文件复制出来 docker cp -a srs:/usr/local/srs/objs ~/Downloads/srs/objs # 删除 srs 容器 docker rm -f srs

1.3、重新启动 SRS

docker run --rm -p 1935:1935 -p 1985:1985 -p 8080:8080 \ --name srs \ -v ~/Downloads/srs/conf/:/usr/local/srs/conf/ \ -v ~/Downloads/srs/objs/:/usr/local/srs/objs/ \ ossrs/srs:3

这时,就是使用本地的 ~/Downloads/srs/conf 文件夹下的配置文件映射卷 来启动了。

注意:
--name : 为容器指定一个名称;
-v: 绑定一个卷

1.4 查看

可以进入 SRS控制台,打开网址 http://localhost:8080/ 查看。

2. HTTP回调

HTTPCallback: SRS不支持服务器脚本(参考:服务器端脚本),服务器端定制有一个重要的替代功能,就是HTTP回调。譬如当客户端连接到SRS时,回调指定的http地址,这样可以实现验证功能。

修改配置文件以开启回调

http_hooks { enabled on; # when client connect to vhost/app call the hook on_connect http://host.docker.internal:8085/api/v1/clients; on_close http://host.docker.internal:8085/api/v1/clients; on_publish http://host.docker.internal:8085/api/v1/streams; on_unpublish http://host.docker.internal:8085/api/v1/streams; on_play http://host.docker.internal:8085/api/v1/sessions; on_stop http://host.docker.internal:8085/api/v1/sessions; on_dvr http://host.docker.internal:8085/api/v1/dvrs; on_hls http://host.docker.internal:8085/api/v1/hls; on_hls_notify http://host.docker.internal:8085/api/v1/hls/[app]/[stream]/[ts_url][param]; }

事件:发生该事件时,即回调指定的HTTP地址。

HTTP地址:可以支持多个,以空格分隔,SRS会依次回调这些接口。

数据:SRS将数据POST到HTTP接口。

返回值:SRS要求HTTP服务器返回HTTP200并且response内容为整数错误码(0表示成功),其他错误码会断开客户端连接。

猜您喜欢: