General
基本配置,配置和插件的路径,日志输出方式,运行方式等配置.
变量 | 说明 | 示例 |
---|---|---|
configs_folder | 配置文件目录路径 | configs_folder=/opt/janus/etc/janus |
plugins_folder | 插件目录路径 | plugins_folder=/opt/janus/lib/janus/plugins |
transports_folder | 传输协议目录路径,一般是第三方传输方面依赖动态库,默认即可 | transports_folder=/opt/janus/lib/janus/transports |
events_folder | 事件句柄目录路径,一般是第三方事件方面依赖的动态库,默认即可 | events_folder=/opt/janus/lib/janus/events |
log_to_stdout | 日志是否输出到标准输出上,默认为 true | log_to_stdout = false |
log_to_file | 日志文件路径 | log_to_file = /path/to/janus.log |
daemonize | 是否后台运行, 默认在前台运行 | daemonize = true |
pid_file | pid 文件路径, pid 文件在 janus 运行是被创建,关闭时删除 | pid_file = /path/to/janus.pid |
interface | 使用的接口(在 SDP 中将使用)现在未使用 | interface = 1.2.3.4 |
debug_level | 记录日志等级, 可用值为 0-7 | debug_level = 4 |
debug_timestamps | 是否每行日志显示时间戳 | debug_timestamps = yes |
debug_colors | 日志中是否禁用颜色 | debug_colors = no |
debug_locks | 是否使能锁调试(非常详细) | debug_locks = yes |
api_secret | 所有 janus 请求必须包含的字符串,由 janus core 接受或验证, 如果假装所有的请求在你 的服务器这就有用,不想让其他应用程序混 乱 | api_secret = janusrocks |
token_auth | 基于令牌的身份验证,该机制强迫用户在所 有的请求中提供有效的令牌,在想要对来自 web 请求进行身份验证非常有用 | token_auth = yes |
token_auth_secret | 和 token_auth 一起使用,使用 HMAC-SHA1 签名令牌, 注意, 没有该选项, 管理 api 有添加和删除令牌的操作 | token_auth_secret = janus |
admin_secret | 所有 janus 请求必须包含的由管理或监控接 收或验证的字符串,只有在所有可用的传输 中使能了管理 api 才需要 | admin_secret = janusoverlord |
server_name | 这个 janus 实例的公开名, 将出现在 info 请 求 | server_name = MyJanusInstance |
session_timeout | 会话超时时间,默认 60s | session_timeout = 60 |
reclaim_session_timeout | 会话回收时间,默认 0s | reclaim_session_timeout = 0 |
candidates_ti meout | 申请超时时间, 注意设置 0 将被因无效数值 而被忽略 | candidates_timeout = 45 |
recordings_tmp_ext | 临时记录文件名 | recordings_tmp_ext = tmp |
event_loops | 启动线程数 | event_loops = 8 |
Certificates
DTLS使用的证书和秘钥(和所需密码)生成
变量 | 说明 | 示例 |
---|---|---|
cert_pem | 证书 | cert_pem=/opt/janus/share/janus/certs/mycert.pem |
cert_key | 密钥 | cert_key=/opt/janus/share/janus/certs/mycert.key |
cert_pwd | 密码 | cert_pwd = secretpassphrase |
Media
与媒体相关的配置
变量 | 说明 | 示例 |
---|---|---|
ipv6 | 是否支持 ipv6 | ipv6 = true |
max_nack_queue | 重新传输的 NACK 队列最大值单位毫秒,默认 500 | max_nack_queue=500 |
rfc_4588 | 是否支持协商 | rfc_4588 = yes |
rtp_port_range | 用于 RTP 和 RTCP 的端口的范围,默认不考虑范围 | rtp_port_range=20000-40000 |
dtls_mtu | 启动 DTLS 的 MTU(默认为 1200,它自动适应) | dtls_mtu = 1200 |
no_media_timer | 没有 media 数据多长时间 janus 通知,单位为秒默认 1 | no_media_timer=1 |
dtls_timeout | 定制重传的频率,注意较低的 值(例如 100ms)通常会使连接 速度更快时间,但如果用户的 RTT 很高,则可能无法工作 合理的权衡(通常是 2*最大期 望 RTT) | dtls_timeout = 500 |
NAT
与NAT相关的内容,如果网关位于NAT之后,可以配置STUN/TURN用于收集候选对象的服务器
变量 | 说明 | 示例 |
---|---|---|
stun_server | STUN 服务器地址 | stun_server = stun.voip.eutelia.it |
stun_port | STUN 服务器端口 | stun_port = 3478 |
nice_debug | NAT debug开关 | nice_debug = false |
full_trickle | 默认 half-trickle | full_trickle = false |
ice_lite | ICE-Lite 模块, 默认false | ice_lite = true |
ice_tcp | 支持 ICE-Lite | ice_tcp = true |
nat_1_1_mapping | 内外网地址映射 | nat_1_1_mapping = 1.2.3.4 |
turn_server | Turn 服务器地址 | turn_server = myturnserver.com |
turn_port | Turn 服务器端口 | turn_port = 3478 |
turn_type | Turn 服务器IP类型 | turn_type = udp |
turn_user | 用户名 | turn_user = myuser |
turn_pwd | 密码 | turn_pwd = mypassword |
turn_rest_api | TURN REST API 地址 | turn_rest_api = http://yourbackend.com/path/to/api |
turn_rest_api_key | 密钥 | turn_rest_api_key=anyapikeyyoumayhaveset |
turn_rest_api_method | 方法 | turn_rest_api_method = GET |
ice_enforce_list | 设置并传递一个逗号分隔 的接口或 IP 地址列表,网 关选择 | ice_enforce_list = eth0/ ice_enforce_list = eth0,192.168.0.1 |
ice_ignore_list | 忽略的网关 | ice_ignore_list = vmnet8,192.168.0.1,10.0.0.1 |
Plugins
选择应该使用哪个插件
参数 | 说明 | 示例 |
---|---|---|
disable | 禁用插件, 用逗号会隔 | disable = libjanus_rabbitmq.so |
Events
允许您接收来自 Janus happens 的实时事件的事件处理程序
参数 | 说明 | 示例 |
---|---|---|
broadcast | 所有可用的事件处理程序都是启用的 | broadcast = yes |
disable | 禁用的事件 | disable=libjanus_sampleevh.so |
stats_period | 每个事件处理的统计传输的 时间 | stats_period = 5 |