代码之家  ›  专栏  ›  技术社区  ›  Awais fiaz

减少HLS延迟时间FFmpeg

  •  2
  • Awais fiaz  · 技术社区  · 7 年前

    您好,我正在处理动态 HLS 流媒体我已经创建了4种不同分辨率的播放列表,并将其包装到一个主播放列表中,用于动态流媒体,但当我将其放入服务器并尝试流媒体视频时,延迟时间非常高,IOS设备的延迟时间甚至超过一分钟,台式电脑和安卓设备的延迟时间也超过30秒

    这是我的命令,用于为 使用 FFmpeg

    ffmpeg -i /var/www/html/file_conversion/io_legend.mp4 \
    -profile:v baseline -level 3.0 -s 428x240 -aspect 1.77916 -c:v libx264 -b:v 440k -g 250 -framerate 30 -c:a libfdk_aac -b:a 320k -hls_list_size 0 -start_number 0 -hls_init_time 2 -hls_time 8  -f hls /var/www/html/file_conversion/legend_hls/legend_240.m3u8 \
    -profile:v baseline -level 3.1 -s 640x360 -aspect 1.77916 -c:v libx264 -b:v 600k -g 250 -framerate 30 -c:a libfdk_aac -b:a 320k -hls_list_size 0 -start_number 0 -hls_init_time 2 -hls_time 8  -f hls /var/www/html/file_conversion/legend_hls/legend_360.m3u8 \
    -profile:v baseline -level 3.1 -s 854x480 -aspect 1.77916 -c:v libx264 -b:v 700k -g 250 -framerate 30 -c:a libfdk_aac -b:a 320k -hls_list_size 0 -start_number 0 -hls_init_time 2 -hls_time 8  -f hls /var/www/html/file_conversion/legend_hls/legend_480.m3u8 \
    -profile:v baseline -level 4.0 -s 1280x720 -aspect 1.77916 -c:v libx264 -b:v 880k -g 250 -framerate 30 -c:a libfdk_aac -b:a 320k -hls_list_size 0 -start_number 0 -hls_init_time 2 -hls_time 8  -f hls /var/www/html/file_conversion/legend_hls/legend_720.m3u8
    

    #EXTM3U
    #EXT-X-VERSION:3
    #EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=1755600,RESOLUTION=428x240
    legend_240.m3u8
    #EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=2855600,RESOLUTION=640x360
    legend_360.m3u8
    #EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=5605600,RESOLUTION=854x480
    legend_480.m3u8
    #EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=7305600,RESOLUTION=1280x720
    legend_720.m3u8
    

    关于这个问题的任何帮助都将不胜感激。祝您愉快!

    1 回复  |  直到 7 年前
        1
  •  3
  •   Brad    7 年前

    不过要小心,你会让一切变得效率低下。

    如果您真的关心延迟,那么首先就不应该使用像HLS这样的分段协议。