[FFmpeg-devel] [PATCH v2 0/5] avformat/hls: improve network performance

Aman Gupta aman at tmm1.net
Fri Dec 15 20:29:24 EET 2017


On Tue, Dec 12, 2017 at 4:35 PM Aman Gupta <ffmpeg at tmm1.net> wrote:

> From: Aman Gupta <aman at tmm1.net>
>
> This patchset improves the overall network performance of the hls
> demuxer when streaming from an HTTP/1.1 server, using two new
> options: http_persistent and http_multiple.
>
> Here is a very unscientific benchmark showing the throughput and fps
> increases achieved by both options (individually and together). In
> this case I was downloading 150 2s segments from another computer
> over my local network. Throughput gains over the internet would be
> considerably more dramatic as higher latencies are involved (and
> https is often used, adding tls negotiation overhead as well).
>
> $ ./ffmpeg -http_persistent 0 -http_multiple 0 \
>            -i "http://10.0.1.10:8080/test.m3u8" -c copy -f null /dev/null
> frame=17967 fps=1221 time=00:04:59.99 speed=20.4x
>
> $ ./ffmpeg -http_persistent 0 -http_multiple 1 \
>            -i "http://10.0.1.10:8080/test.m3u8" -c copy -f null /dev/null
> frame=17967 fps=1282 time=00:04:59.99 speed=21.4x
>
> $ ./ffmpeg -http_persistent 1 -http_multiple 0 \
>            -i "http://10.0.1.10:8080/test.m3u8" -c copy -f null /dev/null
> frame=17967 fps=1727 time=00:04:59.99 speed=28.8x
>
> $ ./ffmpeg -http_persistent 1 -http_multiple 1 \
>            -i "http://10.0.1.10:8080/test.m3u8" -c copy -f null /dev/null
> frame=17967 fps=1864 time=00:04:59.99 speed=31.1x
>
> Aman Gupta (5):
>   avformat/http: ff_http_do_new_request() returns EINVAL if re-used with
>     different hostname
>   avformat/http: add "Opening" info logging to ff_http_do_new_request
>   avformat/hls: add http_persistent option
>   avformat/hls: allow open_input to be re-used
>   avformat/hls: add http_multiple option
>
>  doc/demuxers.texi  |   6 +++
>  libavformat/hls.c  | 131
> +++++++++++++++++++++++++++++++++++++++++++++++------
>  libavformat/http.c |  17 +++++++
>  3 files changed, 141 insertions(+), 13 deletions(-)


Ping.


>
> --
> 2.14.3 (Apple Git-98)
>
>


More information about the ffmpeg-devel mailing list