音视频传输所占的带宽,跟两个因素有关:当前工作的计算机的网口的最大工作速率和音视频文件本身。当前网口的最大工作速率决定了发送到网络上的流量上限,音视频文件本身决定了实时的发送流量。
1.查看当前计算机网卡支持的网络最大工作速率
linux 下,用ethtool+网口名命令可以查看。网口名可以用ifconfig查看。例如网口名为em1,则用ethtool em1命令后我的网卡显示如下:
主要查看两个参数:Supported link modes、Speed.
Supported link modes表示当前网卡支持的工作模式。Speed表明当前网卡的最大工作速率。注意单位为Mb/s,不是MB/s。
2.音视频传输所占带宽
传输音视频文件时,实际所占的带宽跟文件的实时传输速率和订阅人数有关。具体计算公式是:
实占带宽 = 单个用户所占带宽 x 订阅人数 = (文件大小 / 播放时长 ) x 订阅人数。
例如,要传输一个时长为3分钟大小为4.56M的视频文件,
单个用户所占带宽=(4.56 x 1024 x 1024 x 8) / (3 x 60) = 212511.40bps,则将单个用户所占带宽乘以订阅人数即可得到实际所占带宽。
则1000M的网卡最多支持同时(1000*1024*1024) / 212511.40 = 4934人同时在线收听
3.编码方式与所占带宽的关系
音频和视频都有很多中编码方式,每种编码方式都会产生不同的码率。
尤其是视频,大多数情况下是可变码率,如果是实时编码传输变码率,我们只能根据编码器的分辨率得知大致的码率和最大的码率。
音频的码率就比较好计算。例如PCMA编码,采样频率8KHz,采样精度8bit,双声道,则码率为8000 * 8 * 2 = 128kbps。
网友评论