LIVE CLOUD 流媒体与流量计费平台
平台注册用户总数
{{ adminUsersList.length }} 位
所有租户沉淀总余额
¥ {{ totalAdminBalance.toFixed(2) }} 元
当前全站推流连接数
{{ stats.activePublishers }} 路推流
当前全站拉流观众数
{{ stats.activePlayers }} 人
ID 用户名 角色 租户空间 (TenantID) 账户余额 流量单价 账号状态 注册时间 操作
暂无用户数据
#{{ u.id }} {{ u.username }} {{ u.role === 'super_admin' ? '超级管理员' : '普通租户' }} {{ u.tenant_id }} ¥ {{ u.balance.toFixed(2) }} ¥ {{ u.unit_price.toFixed(2) }} / GB 正常 已封禁 {{ new Date(u.created_at).toLocaleString() }}
租户可用余额
¥ {{ stats.balance.toFixed(2) }} 元
当前在线: {{ stats.activePublishers }} 路推流 / {{ stats.activePlayers }} 人拉流
今日流量消耗费用
¥ {{ stats.todayFee.toFixed(4) }} 元
单价: ¥ {{ currentTenant ? currentTenant.unit_price.toFixed(2) : '0.50' }} / GB
📡 业务推拉流实时带宽 (Stream)
{{ stats.streamTotalMbps.toFixed(2) }} Mbps ({{ (stats.streamTotalMbps / 8.0).toFixed(2) }} MB/s)
↑ 推流上行: {{ stats.streamInMbps.toFixed(2) }} M ↓ 播放下行: {{ stats.streamOutMbps.toFixed(2) }} M
🖥️ 服务器网卡物理实时流量 (Host NIC)
{{ stats.hostNicTotalMbps.toFixed(2) }} Mbps ({{ (stats.hostNicTotalMbps / 8.0).toFixed(2) }} MB/s)
↑ 网卡入网: {{ stats.hostNicRxMbps.toFixed(2) }} M ↓ 网卡出网: {{ stats.hostNicTxMbps.toFixed(2) }} M
📈 实时带宽双轨监控曲线 (推拉流业务带宽 vs 服务器网卡流量) 每 3 秒高频动态采样刷新
🚀 极速推流与播放实测 (真实可用)
本系统全链路采用 RTMP / HTTP-FLV 纯透传、零转码 架构,单核 CPU 可满载千兆带宽。推拉流均由 MD5 防盗链与欠费强断引擎 实时保护。
1. OBS 推流快捷配置
服务器 (Server): {{ displayPushServer }}
串流密钥 (Stream Key): {{ displayStreamKeyWithSign }}
2. 实时监播 (浏览器 Web 播放 / VLC)

推流开始后,点击下方按钮直接在浏览器内实时监播推流画面:

生成防盗链推流与播放地址
✅ 最新生成的流配置 ({{ generatedUrls.stream_key }}) 到期时间戳: {{ generatedUrls.expire_timestamp }}
🎬 OBS Studio 软件推流填法(在 OBS -> 设置 -> 直播 中填入)
① 服务器 (Server) 填入: 一键复制
{{ displayPushServer }}
② 串流密钥 (Stream Key) 填入: 一键复制
{{ displayStreamKeyWithSign }}
🔒 HTTPS / HTTP-FLV 播放地址 (自适应安全协议,完美支持 HTTPS 网页与小程序) 一键复制
{{ displayPlayUrl }}
FFmpeg 命令行一键推流指令 (终端测试)
{{ displayFFmpegCmd }}
📋 已生成流记录与地址历史 (租户空间: {{ currentTenantId }})
流名称 (StreamKey) 推流服务器 (OBS) 串流密钥 (带签名) 创建时间 操作
暂无历史流记录。在上方输入流名称点击「立即生成地址」后将自动持久化保存在此处。
{{ s.stream_key }} {{ s.push_server_rtmp }}
{{ s.stream_key_with_sign }}
{{ new Date(s.created_at).toLocaleString() }}
Client ID 流标识 (StreamKey) 连接类型 客户端 IP 已连接时长 发送流量 (出网) 接收流量 (入网) 操作
当前暂无在线推流或拉流客户端连接。请使用地址生成器获取 RTMP 地址并发起推流。
#{{ c.id }} {{ c.name }} 推流端 (RTMP) 播放端 (FLV) {{ c.ip }} {{ formatSeconds(c.alive) }} {{ formatBytes(c.send_bytes) }} {{ formatBytes(c.recv_bytes) }}
当前账户空间
{{ currentTenantId }}
可用余额
¥ {{ stats.balance.toFixed(2) }}
流量计费单价
¥ {{ currentTenant ? currentTenant.unit_price.toFixed(2) : '0.50' }} 元 / GB
扣费流水记录 (3秒极速高灵敏度计费,欠费自动阻断)
流水号 时间 客户端 ID 流名称 类型 增量流量 扣减金额 扣后余额
暂无扣费流水记录(拉流产生实际流量时每 3 秒实时产生)
#{{ log.id }} {{ new Date(log.created_at).toLocaleString() }} {{ log.client_id }} {{ log.stream_key }} {{ log.client_type }} {{ formatBytes(log.bytes_delta) }} - ¥ {{ log.fee_delta.toFixed(6) }} ¥ {{ log.balance_after.toFixed(4) }}
租户鉴权凭证 (Access Credentials)
Tenant ID (租户空间标识)
{{ currentTenantId }}
Secret Key (专属加密密钥)
{{ currentTenant ? currentTenant.secret_key : '' }}
真实可用签名生成代码 (Python / Go)
# Python 签名算法 (可直接本地执行)
import time, hashlib

def generate_sign(stream_key, secret_key, expire_seconds=7200):
    expire_ts = int(time.time()) + expire_seconds
    raw = f"{stream_key}-{secret_key}-{expire_ts}"
    hash_str = hashlib.md5(raw.encode('utf-8')).hexdigest()
    sign = f"{expire_ts}-{hash_str}"
    
    push_url = f"rtmp://sg.cnhk.me:1935/live/{stream_key}?sign={sign}"
    play_url = f"https://sg.cnhk.me/live/{stream_key}.flv?sign={sign}"
    return push_url, play_url
            
{{ toastMessage }}