2

I'd like to stream video data between two linux servers.

They are far from each other, and sender's uplink is ~20MBps (based on iperf3).

There is however some ISP limitation which I'd like to defeat:

1st test run:

server:~# iperf3 -s
client:~# iperf3 -c SERVERIP -R
... measuring...
[  4]   0.00-30.00  sec  21.8 MBytes  6.09 Mbits/sec                  receiver

6.09MBits/sec is well below the ISPs ratings so I've tried making parallel connections with iperf for the 2nd test run:

server:~# iperf3 -s
client:~# iperf3 -c SERVERIP -R -P 8
... measuring...
[SUM]   0.00-30.00  sec  71.9 MBytes  20.1 Mbits/sec                  receiver

That's nice, 20MBits/sec is close to the max bandwidth.

Streaming video with 20MBits/sec average bandwidth would pretty much result a good quality video, whereas trying the same with 6MBps will result far worse quality.

If the video player and streaming server is not capable of parallelling the stream, do I have any option, like reverse proxy, vpn, or anything which can tunnel one single connection into multiple, just like how iperf -P 8 does?

1 Answer 1

2

I can confirm from first hand, that the combination of multicat with aggregartp and reordertp (from VideoLAN, makers of VLC) to be found here will do what you need even for broadcast quality streams.

  • Create multiple aggregartp / reordertp stream links for a single combined RTP stream
  • Use multicat (or whatever you want) to feed your stream into aggregartp

That said, to keep things easy, you might want to reconsider: Tuning everything on the encoder side might make it possible to put a very good quality stream into 6Mbit/s (AFAIK the highest setting fro Netflix!) and just be done with it.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .