0

我有以下 m3u8 文件

#EXTM3U
#EXT-X-VERSION:7
#EXT-X-STREAM-INF:BANDWIDTH=87835,RESOLUTION=426x240,CODECS="avc1.640015"
240-34/media_0.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=177512,RESOLUTION=426x240,CODECS="avc1.640015"
240-28/media_0.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=267977,RESOLUTION=854x480,CODECS="avc1.640015"
480-34/media_0.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=499454,RESOLUTION=1280x720,CODECS="avc1.640015"
720-34/media_0.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=957645,RESOLUTION=1920x1080,CODECS="avc1.640015"
1080-34/media_0.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=1903257,RESOLUTION=1920x1080,CODECS="avc1.640015"
1080-28/media_0.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=3907896,RESOLUTION=1920x1080,CODECS="avc1.640015"
1080-22/media_0.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=8265879,RESOLUTION=1920x1080,CODECS="avc1.640015"
1080-16/media_0.m3u8

我想运行一个 Linux tc 命令来调整前一个文件中每个定义的带宽的带宽,但我不确定带宽值是 bps 还是 kbps。

例如,我想为以下运行一个 tc 命令

#EXT-X-STREAM-INF:BANDWIDTH=87835,RESOLUTION=426x240,CODECS="avc1.640015"
240-34/media_0.m3u8

哪个命令是正确的

tc qdisc add dev eth1 root tbf rate 87835kbit burst 16kbit latency 2ms

或者

tc qdisc add dev eth1 root tbf rate 87835 burst 16kbit latency 2ms
4

1 回答 1

2

4.3.4.2 节。HLS RFC 的 EXT-X-STREAM-INF

      BANDWIDTH

      The value is a decimal-integer of bits per second.  It represents
      the peak segment bit rate of the Variant Stream.

所以它是 bps,您只需将87835其作为命令的rate参数传递tc

根据您要执行的操作,请注意它被定义为峰值比特率而不是平均比特率。

于 2019-08-30T12:22:52.113 回答