mirror of
https://github.com/ossrs/srs.git
synced 2025-02-15 04:42:04 +00:00
452 lines
No EOL
28 KiB
HTML
452 lines
No EOL
28 KiB
HTML
<div>
|
||
<div class="accordion">
|
||
<div class="accordion-group" ng-show="!support_raw_api">
|
||
<div class="accordion-heading" sc-collapse="in">
|
||
<a class="accordion-toggle" href="javascript:void(0)">
|
||
HTTP RAW API
|
||
</a>
|
||
</div>
|
||
<div class="accordion-body collapse">
|
||
<div class="accordion-inner">
|
||
<div class="alert alert-block alert-danger" ng-show="warn_raw_api">
|
||
该服务器不支持HTTP RAW API,或者配置中禁用了该功能。参考<a href='https://github.com/ossrs/srs/wiki/v3_CN_HTTPApi#http-raw-api'>WIKI</a>。
|
||
</div>
|
||
<table class="table table-striped table-hover table-bordered" ng-show="http_api">
|
||
<tr>
|
||
<th>Key</th>
|
||
<th>Value</th>
|
||
<th>Description</th>
|
||
<th>Opt</th>
|
||
</tr>
|
||
<tr sc-pretty scp-key="http_api.enabled" scp-value="http_api.enabled" scp-bool="true"
|
||
scp-desc="是否开启HTTP API,开启后就可以访问SRS提供的API管理服务器。默认: {{false| sc_filter_enabled}}">
|
||
</tr>
|
||
<tr sc-pretty scp-key="http_api.listen" scp-value="http_api.listen"
|
||
scp-desc="HTTP API的侦听地址,格式是<[address:]port>。默认: 1985">
|
||
</tr>
|
||
<tr sc-pretty scp-key="http_api.crossdomain" scp-value="http_api.crossdomain" scp-bool="true"
|
||
scp-desc="是否允许JS跨域,开启后JS可以直接跨域(还可以通过JSONP访问)。默认: {{true| sc_filter_enabled}}">
|
||
</tr>
|
||
<tr sc-pretty scp-key="http_api.raw_api.enabled" scp-value="http_api.raw_api.enabled" scp-bool="true"
|
||
scp-desc="是否开启HTTP RAW API,允许API修改服务器配置。默认: {{false| sc_filter_enabled}}">
|
||
</tr>
|
||
<tr sc-pretty scp-key="http_api.raw_api.allow_reload" scp-value="http_api.raw_api.allow_reload" scp-bool="true"
|
||
scp-desc="是否允许API进行Reload操作。默认: {{false| sc_filter_enabled}}">
|
||
</tr>
|
||
<tr sc-pretty scp-key="http_api.raw_api.allow_query" scp-value="http_api.raw_api.allow_query" scp-bool="true"
|
||
scp-desc="是否允许API进行Query查询操作。默认: {{false| sc_filter_enabled}}">
|
||
</tr>
|
||
<tr sc-pretty scp-key="http_api.raw_api.allow_update" scp-value="http_api.raw_api.allow_update" scp-bool="true"
|
||
scp-desc="是否允许API进行Update更新操作。默认: {{false| sc_filter_enabled}}">
|
||
</tr>
|
||
</table>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="accordion-group" ng-show="support_raw_api">
|
||
<div class="accordion-heading" sc-collapse="in">
|
||
<a class="accordion-toggle" href="javascript:void(0)">
|
||
服务器API配置(http_api)
|
||
</a>
|
||
</div>
|
||
<div class="accordion-body collapse">
|
||
<div class="accordion-inner">
|
||
<table class="table table-striped table-hover table-bordered">
|
||
<tr>
|
||
<th>Key</th>
|
||
<th>Value</th>
|
||
<th>Description</th>
|
||
<th>Opt</th>
|
||
</tr>
|
||
<tr sc-pretty2 scp-data="global.http_api.enabled" scp-bool="true"
|
||
scp-desc="是否开启HTTP API,开启后就可以访问SRS提供的API管理服务器。默认: {{false| sc_filter_enabled}}">
|
||
</tr>
|
||
<tr sc-pretty2 scp-data="global.http_api.listen.value"
|
||
scp-desc="HTTP API的侦听地址,格式是<[address:]port>。默认: 1985">
|
||
</tr>
|
||
<tr sc-pretty2 scp-data="global.http_api.crossdomain" scp-bool="true"
|
||
scp-desc="是否允许JS跨域,开启后JS可以直接跨域(还可以通过JSONP访问)。默认: {{true| sc_filter_enabled}}">
|
||
</tr>
|
||
<tr sc-pretty2 scp-data="global.http_api.raw_api.enabled" scp-bool="true"
|
||
scp-desc="是否开启HTTP RAW API,允许API修改服务器配置。默认: {{false| sc_filter_enabled}}">
|
||
</tr>
|
||
<tr sc-pretty2 scp-data="global.http_api.raw_api.allow_reload" scp-bool="true"
|
||
scp-desc="是否允许API进行Reload操作。默认: {{false| sc_filter_enabled}}">
|
||
</tr>
|
||
<tr sc-pretty2 scp-data="global.http_api.raw_api.allow_query" scp-bool="true"
|
||
scp-desc="是否允许API进行Query查询操作。默认: {{false| sc_filter_enabled}}">
|
||
</tr>
|
||
<tr sc-pretty2 scp-data="global.http_api.raw_api.allow_update" scp-bool="true"
|
||
scp-desc="是否允许API进行Update更新操作。默认: {{false| sc_filter_enabled}}">
|
||
</tr>
|
||
</table>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="accordion-group" ng-show="support_raw_api">
|
||
<div class="accordion-heading" sc-collapse="out">
|
||
<a class="accordion-toggle" href="javascript:void(0)">
|
||
服务器全局配置
|
||
</a>
|
||
</div>
|
||
<div class="accordion-body collapse">
|
||
<div class="accordion-inner">
|
||
<div class="accordion-inner">
|
||
<table class="table table-striped table-hover table-bordered">
|
||
<tr>
|
||
<th>Key</th>
|
||
<th>Value</th>
|
||
<th>Description</th>
|
||
<th>Opt</th>
|
||
</tr>
|
||
<tr sc-directive scd-data="global.listen" scd-span="span3"
|
||
scd-desc="RTMP服务器侦听的端口,提供RTMP服务,格式是<[address:]port>[,<addressN>portN]"
|
||
scd-array="true" scd-default="1935"
|
||
scd-submit="submit(global.listen)">
|
||
</tr>
|
||
<tr sc-directive scd-data="global.pid" scd-span="span3"
|
||
scd-desc="服务器使用的PID文件,每个进程必须用一个,否则无法启动。默认: ./objs/srs.pid"
|
||
scd-default="./objs/srs.pid"
|
||
scd-submit="submit(global.pid)">
|
||
</tr>
|
||
<tr sc-directive scd-data="global.chunk_size" scd-span="span3"
|
||
scd-desc="默认的ChunkSize,即RTMP分包的大小。默认: 60000"
|
||
scd-default="60000"
|
||
scd-submit="submit(global.chunk_size)">
|
||
</tr>
|
||
<tr sc-directive scd-data="global.ff_log_dir" scd-span="span4"
|
||
scd-desc="默认的FFMPEG日志目录,/dev/null禁用日志。默认: ./objs"
|
||
scd-default="./objs"
|
||
scd-submit="submit(global.ff_log_dir)">
|
||
</tr>
|
||
<tr sc-directive scd-data="global.srs_log_tank" scd-span="span3"
|
||
scd-desc="系统的日志容器,即存储方式。默认: file"
|
||
scd-default="file", scd-select="file,console"
|
||
scd-submit="submit(global.srs_log_tank)">
|
||
</tr>
|
||
<tr sc-directive scd-data="global.srs_log_level" scd-span="span3"
|
||
scd-desc="系统的日志级别,低于该级别的日志不会打印。默认: trace"
|
||
scd-default="trace" scd-select="verbose,info,trace,warn,error"
|
||
scd-submit="submit(global.srs_log_level)">
|
||
</tr>
|
||
<tr sc-directive scd-data="global.srs_log_file" scd-span="span4"
|
||
scd-desc="当日志容器为file,即日志写入文件时,日志文件的路径。默认: ./objs/srs.log"
|
||
scd-default="./objs/srs.log"
|
||
scd-submit="submit(global.srs_log_file)"
|
||
ng-if="global.srs_log_tank.value == 'file'">
|
||
</tr>
|
||
<tr sc-directive scd-data="global.max_connections" scd-span="span3"
|
||
scd-desc="系统的最大连接数,超过后将拒绝新连接。默认: 1000"
|
||
scd-default="1000"
|
||
scd-submit="submit(global.max_connections)">
|
||
</tr>
|
||
<tr sc-pretty2 scp-data="global.daemon" scp-bool="true"
|
||
scp-desc="是否以后台启动SRS。默认: {{true| sc_filter_yesno}}">
|
||
</tr>
|
||
<tr sc-directive scd-data="global.utc_time" scd-span="span4"
|
||
scd-desc="是否启用UTC时间格式,影响日志的时间和路径中包含时间变量的配置。默认: {{false| sc_filter_yesno}}"
|
||
scd-default="false" scd-bool="true"
|
||
scd-submit="submit(global.utc_time)">
|
||
</tr>
|
||
<tr sc-directive scd-data="global.pithy_print_ms" scd-span="span3"
|
||
scd-desc="简化形式的日志打印间隔,单位: 毫秒。默认: 10000"
|
||
scd-default="10000" scd-select="1000,3000,5000,10000,30000"
|
||
scd-submit="submit(global.pithy_print_ms)">
|
||
</tr>
|
||
</table>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="accordion-group" ng-show="support_raw_api">
|
||
<div class="accordion-heading" sc-collapse="out">
|
||
<a class="accordion-toggle" href="javascript:void(0)">
|
||
虚拟主机(Vhosts)列表, 共配置有{{global.nb_vhosts.value}}个Vhost
|
||
</a>
|
||
</div>
|
||
<div class="accordion-body collapse">
|
||
<div class="accordion-inner">
|
||
<table class="table table-striped table-hover table-bordered">
|
||
<tr>
|
||
<th>
|
||
<a href="javscript:void(0)" ng-click="new_vhost()" class="icon-plus"></a>
|
||
</th>
|
||
<th>主机名称</th>
|
||
<th>开启</th>
|
||
<th>源</th>
|
||
<th>DVR</th>
|
||
<th>HTTP</th>
|
||
<th>FLV</th>
|
||
<th>HLS</th>
|
||
<th>HDS</th>
|
||
<th>回调</th>
|
||
<th ng-show="false">Exec</th>
|
||
<th ng-show="false">BWT</th>
|
||
<th>转发</th>
|
||
<th>安全</th>
|
||
<th ng-show="false">盗链</th>
|
||
<th ng-show="false">MR</th>
|
||
<th ng-show="false">RTC</th>
|
||
<th ng-show="false">GOP</th>
|
||
<th ng-show="false">TcpNoDelay</th>
|
||
<th ng-show="false">MixCorrect</th>
|
||
<th ng-show="false">TimeJitter</th>
|
||
<th ng-show="false">ATC</th>
|
||
<th>转码</th>
|
||
<th>采集</th>
|
||
<th>
|
||
<a href="javascript:void(0)" ng-click="new_vhost()">添加</a>
|
||
</th>
|
||
</tr>
|
||
<tr ng-repeat="vhost in global.vhosts">
|
||
<td><a href="#/vhosts/{{vhost.id}}" ng-show="vhost.id">{{vhost.id}}</a><span ng-show="!vhost.id">无流</span> </td>
|
||
<td colspan="{{vhost.editable?13:1}}">
|
||
<span ng-show="!vhost.editable">{{vhost.name}}</span>
|
||
<span ng-show="vhost.editable">
|
||
<input class="text span5" ng-model="vhost.name"><br/>
|
||
请输入vhost的名称。
|
||
</span>
|
||
</td>
|
||
<td ng-show="!vhost.editable">{{vhost.enabled| sc_filter_yesno}}</td>
|
||
<td ng-show="!vhost.editable">{{vhost.origin| sc_filter_yn}}</td>
|
||
<td ng-show="!vhost.editable">{{vhost.dvr| sc_filter_yn}}</td>
|
||
<td ng-show="!vhost.editable">{{vhost.http_static| sc_filter_yn}}</td>
|
||
<td ng-show="!vhost.editable">{{vhost.http_remux| sc_filter_yn}}</td>
|
||
<td ng-show="!vhost.editable">{{vhost.hls| sc_filter_yn}}</td>
|
||
<td ng-show="!vhost.editable">{{vhost.hds| sc_filter_yn}}</td>
|
||
<td ng-show="!vhost.editable">{{vhost.http_hooks| sc_filter_yn}}</td>
|
||
<td ng-show="false && !vhost.editable">{{vhost.exec| sc_filter_yn}}</td>
|
||
<td ng-show="false && !vhost.editable">{{vhost.bandcheck| sc_filter_yn}}</td>
|
||
<td ng-show="!vhost.editable">{{vhost.forward| sc_filter_yn}}</td>
|
||
<td ng-show="!vhost.editable">{{vhost.security| sc_filter_yn}}</td>
|
||
<td ng-show="false && !vhost.editable">{{vhost.refer| sc_filter_yn}}</td>
|
||
<td ng-show="false && !vhost.editable">{{vhost.mr| sc_filter_yn}}</td>
|
||
<td ng-show="false && !vhost.editable">{{vhost.min_latency| sc_filter_yn}}</td>
|
||
<td ng-show="false && !vhost.editable">{{vhost.gop_cache| sc_filter_yn}}</td>
|
||
<td ng-show="false && !vhost.editable">{{vhost.tcp_nodelay| sc_filter_yn}}</td>
|
||
<td ng-show="false && !vhost.editable">{{vhost.mix_correct| sc_filter_yn}}</td>
|
||
<td ng-show="false && !vhost.editable">{{vhost.time_jitter| sc_filter_yn}}</td>
|
||
<td ng-show="false && !vhost.editable">{{vhost.atc| sc_filter_yn}}</td>
|
||
<td ng-show="!vhost.editable">{{vhost.transcode| sc_filter_yn}}</td>
|
||
<td ng-show="!vhost.editable">{{vhost.ingest| sc_filter_yn}}</td>
|
||
<td>
|
||
<span ng-show="vhost.editable">
|
||
<!-- vhost exists in server -->
|
||
<span ng-show="vhost.enabled != undefined">
|
||
<a bravo-popover href="javascript:void(0)"
|
||
data-content="请确认是否提交{{vhost.name}}?" data-title="请确认" data-placement="left"
|
||
bravo-popover-confirm="update_vhost(vhost)">
|
||
提交
|
||
</a>
|
||
<a href="javascript:void(0)" ng-click="cancel_vhost(vhost)">放弃</a>
|
||
</span>
|
||
<!-- vhost in adding. -->
|
||
<span ng-show="vhost.enabled == undefined">
|
||
<a bravo-popover href="javascript:void(0)"
|
||
data-content="请确认是否提交{{vhost.name}}?" data-title="请确认" data-placement="left"
|
||
bravo-popover-confirm="add_vhost(vhost)">
|
||
提交
|
||
</a>
|
||
<a href="javascript:void(0)" ng-click="abort_vhost(vhost)">放弃</a>
|
||
</span>
|
||
</span>
|
||
<span ng-show="!vhost.editable">
|
||
<span ng-show="vhost.enabled">
|
||
<span>编辑</span>
|
||
<a bravo-popover href="javascript:void(0)"
|
||
data-content="请确认是否禁用{{vhost.name}}?" data-title="请确认" data-placement="left"
|
||
bravo-popover-confirm="disable_vhost(vhost)">
|
||
禁用
|
||
</a>
|
||
<span>删除</span>
|
||
</span>
|
||
<span ng-show="!vhost.enabled">
|
||
<a href="javascript:void(0)" ng-click="edit_vhost(vhost)">编辑</a>
|
||
<a bravo-popover href="javascript:void(0)"
|
||
data-content="请确认是否启用{{vhost.name}}?" data-title="请确认" data-placement="left"
|
||
bravo-popover-confirm="enable_vhost(vhost)">
|
||
启用
|
||
</a>
|
||
<a bravo-popover href="javascript:void(0)"
|
||
data-content="请确认是否删除{{vhost.name}}?" data-title="请确认" data-placement="left"
|
||
bravo-popover-confirm="delete_vhost(vhost)">
|
||
删除
|
||
</a>
|
||
</span>
|
||
<a href="#/configs/{{vhost.name}}" ng-show="!vhost.editable">详细</a>
|
||
</span>
|
||
</td>
|
||
</tr>
|
||
</table>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="accordion-group" ng-show="support_raw_api">
|
||
<div class="accordion-heading" sc-collapse="hide">
|
||
<a class="accordion-toggle" href="javascript:void(0)">
|
||
Kafka集群配置(kafka)
|
||
</a>
|
||
</div>
|
||
<div class="accordion-body collapse">
|
||
<div class="accordion-inner">
|
||
<table class="table table-striped table-hover table-bordered">
|
||
<tr>
|
||
<th>Key</th>
|
||
<th>Value</th>
|
||
<th>Description</th>
|
||
<th>Opt</th>
|
||
</tr>
|
||
<tr sc-pretty2 scp-data="global.kafka.enabled" scp-bool="true"
|
||
scp-desc="是否开启Kafka,开启后SRS将数据汇报给Kafka集群。默认: {{false| sc_filter_enabled}}">
|
||
</tr>
|
||
<tr sc-pretty2 scp-data="global.kafka.brokers"
|
||
scp-desc="Broker列表,首次连接到Broker获取集群信息,格式是<ip:port>。">
|
||
</tr>
|
||
</table>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="accordion-group" ng-show="support_raw_api">
|
||
<div class="accordion-heading" sc-collapse="hide">
|
||
<a class="accordion-toggle" href="javascript:void(0)">
|
||
服务器心跳汇报(heartbeat)
|
||
</a>
|
||
</div>
|
||
<div class="accordion-body collapse">
|
||
<div class="accordion-inner">
|
||
<table class="table table-striped table-hover table-bordered">
|
||
<tr>
|
||
<th>Key</th>
|
||
<th>Value</th>
|
||
<th>Description</th>
|
||
<th>Opt</th>
|
||
</tr>
|
||
<tr sc-pretty2 scp-data="global.heartbeat.enabled"
|
||
scp-desc="是否开启服务器心跳,向外部系统汇报。默认: {{false| sc_filter_enabled}}"
|
||
scd-bool="true">
|
||
</tr>
|
||
<tr sc-pretty2 scp-data="global.heartbeat.interval"
|
||
scp-desc="心跳间隔的时间,单位: 秒。默认: 9.9"
|
||
ng-show="global.heartbeat.enabled.value">
|
||
</tr>
|
||
<tr sc-pretty2 scp-data="global.heartbeat.url"
|
||
scp-desc="汇报的HTTP服务器地址,汇报信息格式是JSON。默认: http://127.0.0.1:8085/api/v1/servers"
|
||
ng-show="global.heartbeat.enabled.value">
|
||
</tr>
|
||
<tr sc-pretty2 scp-data="global.heartbeat.device_id"
|
||
scp-desc="设备ID,SRS会写入汇报信息中。"
|
||
ng-show="global.heartbeat.enabled.value">
|
||
</tr>
|
||
<tr sc-pretty2 scp-data="global.heartbeat.smmaries"
|
||
scp-desc="是否汇报摘要,即服务器的summaries信息。默认: {{false| sc_filter_yesno}}"
|
||
scd-bool="true"
|
||
scd-submit="submit(global.heartbeat.summaries)"
|
||
ng-show="global.heartbeat.enabled.value">
|
||
</tr>
|
||
</table>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="accordion-group" ng-show="support_raw_api">
|
||
<div class="accordion-heading" sc-collapse="hide">
|
||
<a class="accordion-toggle" href="javascript:void(0)">
|
||
服务器统计信息配置(stats)
|
||
</a>
|
||
</div>
|
||
<div class="accordion-body collapse">
|
||
<div class="accordion-inner">
|
||
<table class="table table-striped table-hover table-bordered">
|
||
<tr>
|
||
<th>Key</th>
|
||
<th>Value</th>
|
||
<th>Description</th>
|
||
<th>Opt</th>
|
||
</tr>
|
||
<tr sc-pretty2 scp-data="global.stats.network"
|
||
scp-desc="统计的网卡索引,从0开始算第一块网卡。默认: 0">
|
||
</tr>
|
||
<tr sc-pretty2 scp-data="global.stats.disk"
|
||
scp-desc="统计的磁盘名称,可以在/proc/diskstats中查看。"
|
||
scd-array="true">
|
||
</tr>
|
||
</table>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="accordion-group" ng-show="support_raw_api">
|
||
<div class="accordion-heading" sc-collapse="hide">
|
||
<a class="accordion-toggle" href="javascript:void(0)">
|
||
HTTP服务器配置(http_server)
|
||
</a>
|
||
</div>
|
||
<div class="accordion-body collapse">
|
||
<div class="accordion-inner">
|
||
<table class="table table-striped table-hover table-bordered">
|
||
<tr>
|
||
<th>Key</th>
|
||
<th>Value</th>
|
||
<th>Description</th>
|
||
<th>Opt</th>
|
||
</tr>
|
||
<tr sc-pretty2 scp-data="global.http_server.enabled"
|
||
scp-desc="是否开启HTTP文件服务器和HTTP流服务器。默认: {{false| sc_filter_enabled}}"
|
||
scd-bool="true">
|
||
</tr>
|
||
<tr sc-pretty2 scp-data="global.http_server.listen"
|
||
scp-desc="HTTP服务器侦听的地址,格式是<[address:]port>。默认: 8080"
|
||
ng-show="global.http_server.enabled.value">
|
||
</tr>
|
||
<tr sc-pretty2 scp-data="global.http_server.dir"
|
||
scp-desc="HTTP服务器的主目录。默认: ./objs/nginx/html"
|
||
ng-show="global.http_server.enabled.value">
|
||
</tr>
|
||
</table>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="accordion-group" ng-show="support_raw_api">
|
||
<div class="accordion-heading" sc-collapse="hide">
|
||
<a class="accordion-toggle" href="javascript:void(0)">
|
||
StreamCaster流转换器(stream_caster)
|
||
</a>
|
||
</div>
|
||
<div class="accordion-body collapse">
|
||
<div class="accordion-inner">
|
||
<table class="table table-striped table-hover table-bordered">
|
||
<tr>
|
||
<th>Key</th>
|
||
<th>Value</th>
|
||
<th>Description</th>
|
||
<td>Opt</td>
|
||
</tr>
|
||
<tr sc-pretty2 scp-data="global.stream_caster.enabled"
|
||
scp-desc="是否开启StreamCaster,即接收特殊的流后转换成RTMP送到SRS。默认: {{false| sc_filter_enabled}}"
|
||
scd-bool="true">
|
||
</tr>
|
||
<tr sc-pretty2 scp-data="global.stream_caster.caster"
|
||
scp-desc="转换器的类型,不同的类型需要不同的配置,mpegts_over_udp,rtsp,flv"
|
||
scd-select="mpegts_over_udp,rtsp,flv"
|
||
ng-show="global.stream_caster.enabled.value">
|
||
</tr>
|
||
<tr sc-pretty2 scp-data="global.stream_caster.output"
|
||
scp-desc="输出的RTMP地址,转换器侦听端口,接收特定的流,转换成RTMP后送到SRS。"
|
||
ng-show="global.stream_caster.enabled.value">
|
||
</tr>
|
||
<tr sc-pretty2 scp-data="global.stream_caster.listen"
|
||
scp-desc="转换器侦听的地址,格式是<port>"
|
||
ng-show="global.stream_caster.enabled.value">
|
||
</tr>
|
||
<tr sc-pretty2 scp-data="global.stream_caster.rtp_port_min"
|
||
scp-desc="转换器会在[rtp_port_min, rtp_port_max]中间选择一个新端口并侦听,参考RTP协议。"
|
||
ng-show="global.stream_caster.enabled.value && global.stream_caster.caster.value == 'rtsp'">
|
||
</tr>
|
||
<tr sc-pretty2 scp-data="global.stream_caster.rtp_port_max"
|
||
scp-desc="转换器会在[rtp_port_min, rtp_port_max]中间选择一个新端口并侦听,参考RTP协议。"
|
||
ng-show="global.stream_caster.enabled.value && global.stream_caster.caster.value == 'rtsp'">
|
||
</tr>
|
||
</table>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div> |