# metadata => location:${APP_HOME}/${APP_NAME}_server/conf/evlss.conf # RTMP监听端口 listen {{ .Env.RTMP_PORT }}; # 最大连接数 max_connections 10000; # PID文件路径,不建议修改 pid /opt/wisecloud/cdn/evlss_server/objs/evlss.pid; # 日志文件配置,不建议修改 srs_log_file /opt/wisecloud/cdn/evlss_server/logs/evlss.log; # 服务ID,可采用UUID,也可以采用方便识别的方式命令 service_id evlss_xxx; # 最小GOP缓存数,一个GOP大约相当于2秒钟的数据 # 不要设置小于1的值,不能大于max_gop_cache # 不建议在没有数据指导的情况下随意调整该值。 min_gop_cache 15; # 最大GOP缓存数,不能小于min_gop_cache。 # 不建议在没有数据指导的情况下随意调整该值。 max_gop_cache 25; # MVLSS查询、操作接口服务配置 http_api { # 启动服务,off关闭服务 enabled on; # 服务监听端口 listen 19850; # 支持跨域访问 crossdomain on; } # H.265服务配置 http_ts { # 服务是否启动,默认为on,off表示关闭 enabled on; # H.265服务监听端口,若不配置则默认为13818 listen 13818; } # HTTP服务配置 # IVLSS和MVLSS并不面向终端用户,因此并不需要提供http-flv服务 # 所以不需要配置这项服务,但对于EVLSS则必须配置此项服务。 # http_api服务和http_server服务都是http服务,但是两个服务的功能不一样。 # http_api主要用于向外提供查询操作服务,而http_server用于向终端用户提供 # 直播拉流服务。 http_server { # 开启http_server服务 enabled on; # 服务监听端口 listen 8035; } # vhost 配置 # vhost可以理解为一个产品名称 # 对于RTMP协议,通过如下方式访问: # rtmp://:/stream?app=name # 不带参数时host就是vhost vhost __defaultVhost__ { # mode有两种模式:local 和 remote。 # mode 为remote时,表示当前VLSS工作在边缘模式。 # mode不配置时默认是local,因此,EVLSS必须明确指定mode为remote。 mode remote; # LiveCDE服务器地址配置 # 回源拉流时必须先向LiveCDE服务器请求一个MVLSS地址 # host可以是域名,也可以是IP地址。 # 端口可选,如果不填写端口,则默认使用1935。 # 例如:origin 192.168.1.2:8080; origin {{ .Env.LIVECDE_ADDR }}; # HTTP直播流服务配置 http_remux { # 启用HTTP直播流服务,不配置时默认为off, on为启用 enabled on; # 将RTMP流复用为flv流 # [vhost] 表示当前HTTP直播流的vhost # [app] 表示当前HTTP直播流的app # [stream] 表示当前HTTP直播流的stream mount [vhost]/[app]/[stream].flv; # 在没有流的情况下是否启用HTTP流触发RTMP回源拉流 hstrs on; } # 事件回调配置(只支持HTTP) http_hooks { # 开启事件回调功能,off为关闭, on为开启 enabled on; # 对于中转服务来说,IVLSS连接成功或者EVLSS发送拉流请求 # 后都会触发on_connect事件回调。 # 在触发on_connect事件后MVLSS会向此处配置的地址发送GET请求。 # GET请求会带上请求端带上来的参数,接收端可以通过这些参数做AAA认证, # 实现防盗链功能。 # 此处允许配置多个地址,以空格分隔,建议只配置一个,原因是: # 每个回调事件都返回成功时MVLSS才会继续后续的逻辑处理,否则 # 任何一个回调返回失败,后续的流程都将受到影响,推流操作就会失败。 # on_connect是可选配置项,没有需求时可不配置。 # 例如:on_connect http://192.168.1.2:8080/connect; #on_connect http://:/; #on_connect http://127.0.0.1:12345/api/guard; on_connect_direct http://134.119.221.113:8106/DataCollect/live/connect; # 对于中转服务来说,IVLSS推流端断开连接或者EVLSS拉流端断开连接 # 都会触发on_close事件回调。 # 在触发on_close事件后MVLSS会向此处配置的地址发送GET请求 # 此处允许配置多个地址,以空格分隔,建议只配置一个。 # on_close是可选配置项,没有需求时可不配置。 # 例如:on_close http://192.168.1.2:8080/close; #on_close http://:/; on_close http://134.119.221.113:8106/DataCollect/live/close; # IVLSS推流端推送一路流到中转时会触发on_publish事件回调。 # 在触发on_publish事件后MVLSS会向此处配置的地址发送GET请求 # 此处允许配置多个地址,以空格分隔,建议只配置一个。 # on_publish是可选配置项,没有需求时可不配置。 # 例如:on_publish http://192.168.1.2:8080/publish; #on_publish http://:/; # IVLSS推流端停止推送直播流到中转时会触发on_unpublish事件回调。 # 在触发on_unpublish事件后MVLSS会向此处配置的地址发送GET请求 # 此处允许配置多个地址,以空格分隔,建议只配置一个。 # on_unpublish是可选配置项,没有需求时可不配置。 # 例如:on_unpublish http://192.168.1.2:8080/unpublish; #on_unpublish http://:/; # EVLSS向MVLSS发起拉流请求时会触发on_play事件回调。 # 在触发on_play事件后MVLSS会向此处配置的地址发送GET请求。 # 此处允许配置多个地址,以空格分隔,建议只配置一个。 # on_play是可选配置项,没有需求时可不配置。 # 例如:on_play http://192.168.1.2:8080/play; #on_play http://:/; # EVLSS停止向MVLSS拉流时会触发on_stop事件回调。 # 在触发on_stop事件后MVLSS会向此处配置的地址发送GET请求。 # 此处允许配置多个地址,以空格分隔,建议只配置一个。 # on_stop是可选配置项,没有需求时可不配置。 # 例如:on_stop http://192.168.1.2:8080/stop; #on_stop http://:/; # 作为中转服务来说,EVLSS拉流过程出现卡顿时会触发on_shrink事件回调。 # 在触发on_shrink事件后MVLSS会向此处所配置的地址发送GET请求。 # 此处允许配置多个地址,以空格分隔,建议只配置一个。 # on_shrink是可选配置项,没有需求时可不配置。 # 例如:on_shrink http://192.168.1.2:8080/shrink; #on_shrink http://:/; on_shrink http://134.119.221.113:8106/DataCollect/live/Kartun; } }