远程会诊直播最容易翻车的地方,不是设备掉了,是两路画面抢带宽。术野一糊,远端专家连钳子都看不清,这场会诊基本就废了。
前年冬天那场跨三家医院的会诊,我们在本地一家地级市医院架了术野机和全景机,两路都接在同一台编码器上,总码率设的 10Mbps。开播半小时,专家那边说术野开始发糊,我们第一反应是网络抖,把总码率拉到 14Mbps,结果全景也跟着糊了。那条规矩是拿一次事故换来的。
为什么两路画面会互相拖累
同一台编码器里,两路信号是分时复用同一个输出桶的。术野一动刀,码率瞬间往上冲,编码器就会从全景那路抠预算补过来,全景就糊。
我们后来拿监控看了一晚上的码率曲线才确认,不是网络问题,是编码器内部在拆东墙补西墙。这个结论当时挺反直觉的,因为术野和全景在不同机位、不同线缆,谁能想到它们在一台机器里打架。
双流不是双机位,是双编码器
双流方案说白了就是给两路信号各配一台编码器,各自独立推流,谁也不抢谁。我们现在的标配是术野一台、全景一台,两台都走各自的网口。
术野机用索尼 FX3 配 24-70mm,全景用一台固定广角机位架在会场后排。两台编码器我们一般放在同一机柜里,但网线分别插到两个不同的交换机端口,避免又在交换机上打架。
带宽怎么分给两路
专线我们一般申请 50Mbps 起步。术野锁 8Mbps,全景 3Mbps,两台加起来 11Mbps,剩下的留作抖动缓冲和音频。
术野给高码率是因为它要盯细节,全景给低一点是因为它只交代环境,糊一点不影响判断。这个 8 比 3 的比例是我们在一场肝胆外科会诊里试出来的,术野再低到 6Mbps 专家就开始嫌不够锐,全景再高到 5Mbps 纯属浪费。
帧率也要分开看
术野我们跑 50fps,全景 25fps 就够。全景那路降帧率,又能省出近 1Mbps 给术野。这个调节很少有人提,但实打实有用。
一次我们全景也设了 50fps,白白多吃码率,术野反而被挤。后来全景统一 25fps,整条链路的余量立刻宽了。
一次跨院会诊的实测
今年春天那场,三家医院分别在三个楼层,专网打通后我们实测端到端抖动 18 毫秒。术野 8Mbps、全景 3Mbps 双推,专家端两路都稳,术野全程没糊过。
我们事后把两路的码率、分辨率、帧率存成了预设模板,下次类似会诊直接调,省了重新标定的时间。
别把音频也塞进双流
有个坑我们踩过。一开始我们把术野的音频和术野画面绑在同一路,结果术野编码器一重启,声音和画面就错半拍。后来音频单独走一路,和全景绑在一起,反而更稳。
说白了音频对带宽极省,1 路 128kbps 足够,没必要跟术野抢那台编码器的资源。
哪些会场其实用不上双流
不是所有会诊都要双流。如果只是单会场单向示教,一路 8Mbps 术野就够了,硬上双流是给自己加活。
我们一般只在跨院、且远端要看清操作细节的互动会诊才上双流。纯听课型的会议直播,单流加一路全景截图就够了。
一套开机前的分配清单
要上双流,开机前我们核对五项。确认两路各自独立编码器;专线 50Mbps 且分两个端口;术野 8Mbps、全景 3Mbps 写死;音频单独成路;最后用远端拉流软件同时开两路看五分钟。
这五步做完,基本能避开九成的抢带宽事故。我们习惯提前半小时跑完,别等专家上线才发现术野在糊。
双流下的监看怎么分屏
两路都推了,导播台上怎么看?我们一般把术野和全景分两个监视窗,术野放主屏,全景放副屏,导播一眼能同时盯。
有一次只用一个窗切来切去,专家临时要看全景环境,导播切慢了半秒,那边已经问到。后来双窗常驻,不再切换。
一次两路都卡的极端情况
最糟的一次是专线被同楼另一场直播挤占,两路同时掉速。我们当场把全景降到 2Mbps 保术野,才没彻底黑。
这事儿之后,我们合同里写明专线独占,不再和任何活动共享。说白了共享专线就是埋雷。