gpt4 book ai didi

ffmpeg - 直播服务上每个组件的身份延迟

转载 作者:行者123 更新时间:2023-12-04 23:10:32 25 4
gpt4 key购买 nike

我正在使用以下管道进行直播,我能够找到大约 30-35 秒的端到端延迟,有没有办法可以识别每个组件的延迟,例如 MediaLive 的延迟和 MediaPackage 的延迟?

OBS (Open broadcast) --RTMP--> MediaLive --HLS-> MediaPackage --HLS--> Cloudfront -> video.js player

最佳答案

延迟无处不在,因此找出哪些组件引入了延迟非常重要。但是,每个组件都会引入一段延迟:

  • RTMP:如果网络没问题,延迟大约1s。
  • HLS:延迟大约 3~5s,取决于 ts 时长。

  • I guess the minimum latency of your system, is about 5~10s. Where encoder takes 0.8s, RTMP is 1s, HLS is 1~3s, CDN is about 1~3s, player is 1~3s. Please check it by some tools bellow.


    使用小工具 online stopwatch或者其他类似的,然后使用OBS窗口捕获来捕获直播中的秒表,并从MediaLive播放RTMP/HLS流,从cloudfront播放HLS,您将获得每个系统的延迟。

    You can also use FFmpeg to replace OBS to publish RTMP stream, with a filter to show the timestamp, please read SRS#2742.


    请使用ffplay、flv.js、hls.js播放流, 永远不要使用 VLC 这本身就有很大的延迟。
    找到延迟后有一些提示:
  • 对于 RTMP 服务器,禁用 gop 缓存。
  • 对于 HLS,使用较小的 ts 持续时间,例如 1~2s。
  • 对于编码器(OBS),使用 Main 或 Baseline,使用较小的 gop 1,并使用 zerolatency 进行调整。
  • 如果可能的话,使用 WebRTC 来传递流,延迟大约是 200 毫秒。

  • 从不 应用这些设置,除非您指出引入延迟的位置。

    关于ffmpeg - 直播服务上每个组件的身份延迟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70292695/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com