首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

低延迟HLS

本文是来自WWDC(苹果全球开发者大会) 2019的演讲,演讲的作者Roger Pantos,HLS的技术主管,本次演讲主题是介绍低延迟HTTP实时流(Low-Latency HLS)的实现和效果以及如何使用低延迟...在演讲的开始,Roger首先描述了低延迟对于体育直播、新闻、即时互动游戏广播以及颁奖典礼和其他社交媒体活动等的重要性。...介绍了低延迟HLS的设计目标是1-2秒,并且具有速率适配、加密、广告、元数据、向后兼容等功能。...然后Roger介绍了低延迟HLS如何实现上述的目标,与之前的HLS相比有5大变化:减少发布延时、优化段发现、消除段往返、减少播放列表传输开销、快速切换层。随后介绍了完成这5项变化的细节。...接着Roger展示了使用低延迟HLS视频通话的延迟,在AppleTV上美国用户与澳大利亚用户在视频通话时的延迟低于2秒。 最后Roger介绍了对于开发者来说,如何使用低延迟HLS进行项目开发。

2K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    低延迟DASH流

    这次将介绍的是使用开放源代码工具的低延迟DASH流。...首先Bo介绍了低延迟DASH流是什么,其中,一个低延迟流,从编码器屏幕到播放器屏幕之间的延迟必须要低于5秒;视频片段会被分割成许多的块来进行编码传输;且低延迟的特性也决定了它在传输路径上不应有额外的缓冲...DASH-IF所提出的最新变动中,包含了这些特性:添加了许多重新同步的节点,来使流可以被独立地处理;增加了功能描述,来告知播放器应当如何在低延迟模式下进行工作。...Bo还介绍了在低延迟流中的前人工作,DVB低延迟DASH:使用GPAC软件实现的GPAC低延迟DASH;苹果的低延迟HLS,使用的是苹果服务器和IOS的音视频播放器,以及社区驱动的LHLS。...最后Bo讨论了一些低延迟DASH的潜在问题,首先低延迟DASH的灵活性比传统的低延迟流要差;块的大小和延迟之间也存在着交换;低延迟DASH只支持HTTP/1.1。 最后附上演讲视频:

    1.3K20

    HTTP协议的性能评估:延迟和带宽利用率测量

    摘要  本文将结合Java开发语言,介绍网络协议性能评估中常用的一些性能指标,包括延迟、吞吐量、带宽利用率、丢包率、重传率和网络拥塞等指标。...正文简介  网络协议性能评估需要选择一些合适的性能指标来评估网络协议的性能表现,其中常用的性能指标包括:延迟:指从数据发送到数据到达接收端所需要的时间。...例如,在测试网络协议时,如果希望了解网络协议的延迟,可以选择测量数据传输的时间;如果希望了解网络协议的吞吐量,可以选择测量单位时间内传输的数据量。源代码解析  Java语言广泛应用于网络协议的开发中。...如上测试用例代码是一个Java程序,用于测试从URL获取HTTP响应的延迟和带宽利用率。...全文小结  本文介绍了在网络协议性能评估中常用的一些性能指标,包括延迟、吞吐量、带宽利用率、丢包率、重传率和网络拥塞等指标。

    64033

    LinkedIn 测量实时视频延迟方法

    目录 延迟测量方法 延迟测量细节及性能 测量及减少延迟的意义 LinkedIn,中文名“领英”,启动于 2003 年 5 月,是一个面向职场的社交平台。...除此之外,在数据中心的服务器也需要查看它是什么时候接收到的片段,以及接收到的片段的时间戳是多少,有了这几个时间戳,就可以得到相对准确的延迟。 延迟测量细节及性能 Q: 你们是使用多个 CDN 么?...Q: 你们使用了一些低延迟工具进行实验了么,比如低延迟版本的 dash? A: 这个在我们的计划之中。...Q: 有许多不同的流媒体服务,包括低延迟的 HLS 和 dash,他们在实验室中能够正常工作,但是当应用于实际时还是出现了许多问题。对于你的工作,有遇到这样的问题么?...如果有,是如何使它的性能更加稳定和可靠的呢? A: 由于我们现在没有足够的数据,所以还是在评估阶段。 Q: 是否可以测量玩家侧的延迟呢?

    71610

    高吞吐低延迟 Java 应用的 GC 优化

    背景 高性能应用构成了现代网络的支柱。LinkedIn 内部有许多高吞吐量服务来满足每秒成千上万的用户请求。为了获得最佳的用户体验,以低延迟响应这些请求是非常重要的。...基础 Feed 数据平台为我们的经济图谱(会员、公司、群组等)中各种实体的更新建立索引,它必须高吞吐低延迟地实现相关的更新。如下图,LinkedIn Feeds 信息展示: ?...为了将这些高吞吐量、低延迟类型的 Java 应用程序用于生产,开发人员必须确保在应用程序开发周期的每个阶段都保持一致的性能。...这篇博文将通过一系列步骤来明确需求并优化 GC,它的目标读者是对使用系统方法进行 GC 优化来实现应用的高吞吐低延迟目标感兴趣的开发人员。...这使我们在工作负载特性上有足够的多样性,可以在足够长的时间内测量应用程序性能和 GC 特征。 优化 GC 的步骤 下面是一些针对高吞吐量、低延迟需求优化 GC 的总体步骤。

    1.2K21

    高吞吐低延迟 Java 应用的 GC 优化

    背景 高性能应用构成了现代网络的支柱。LinkedIn 内部有许多高吞吐量服务来满足每秒成千上万的用户请求。为了获得最佳的用户体验,以低延迟响应这些请求是非常重要的。...基础 Feed 数据平台为我们的经济图谱(会员、公司、群组等)中各种实体的更新建立索引,它必须高吞吐低延迟地实现相关的更新。...[LinkedIn Feeds] 为了将这些高吞吐量、低延迟类型的 Java 应用程序用于生产,开发人员必须确保在应用程序开发周期的每个阶段都保持一致的性能。...这篇博文将通过一系列步骤来明确需求并优化 GC,它的目标读者是对使用系统方法进行 GC 优化来实现应用的高吞吐低延迟目标感兴趣的开发人员。...这使我们在工作负载特性上有足够的多样性,可以在足够长的时间内测量应用程序性能和 GC 特征。 优化 GC 的步骤 下面是一些针对高吞吐量、低延迟需求优化 GC 的总体步骤。

    1.9K30

    实时低延迟流式传输

    本文来自BITMOVIN,由Jameson Steiner编辑,文章主要内容是“实时低延迟流式传输”。 什么是实时低延迟?...实时流媒体的低延迟是指事件内容在媒体交付链的一端被捕获并在另一端向用户播放之间的时间延迟。...图1 端到端视频编码流程 低延迟是当前媒体行业最大的挑战之一,本文将深度探讨为什么需要关注低延迟。 为什么要关注低延迟?...低延迟分块传输 低延迟分块传输除了带来低延迟,还有以下几点影响: 不断接收到的CMAF块流中,可以使客户端缓冲区级别更平滑,跳动更少。因此降低了缓冲区欠载的风险并提高了播放稳定性。...Wallclock时间映射 为了测量延迟,需要一个媒体显示时间和wall-clock时间之间的映射。这样,对于流的任何给定呈现时间,都可以知道相应的wall-clock时间。

    2.4K31

    Apple 低延迟HLS分析

    低延迟HLS技术草案 2019年的WWDC上,Pantos宣布了最新的HLS草案,今年的变化旨在减少实时视频流的延迟。这个消息一出,业界反响很大,几家欢乐几家愁。...以上基本上就是这次苹果对低延迟HLS提出的技术草案,苹果也提供了参考实现用于测试和演示。...初步分析认为iOS13 beta里Apple还没有完全实现低延迟HLS的客户端功能。 ? ? ? ?...AVPlayer的实现发现服务端对低延迟HLS支持不好的话,会自动切换回标准的HLS,让视频继续正常播放,所以测试低延迟HLS的时候只看视频是否能播放还不行,要抓包分析,确认低延迟HLS机制正常工作。...),并使用TCP时间戳;支持尾部丢失探测(TLP Tail Loss Probe)和TCP RACK等高性能TCP选项。

    4.3K63

    qperf测量网络带宽和延迟

    我们在做网络服务器的时候,通常会很关心网络的带宽和延迟。因为我们的很多协议都是request-reponse协议,延迟决定了最大的QPS,而带宽决定了最大的负荷。...但是现实的情况是,真正的带宽和延迟情况会有很多变数的,比如说网卡驱动,交换机跳数,丢包率,协议栈配置,光实际速度都很大的影响了数值的估算。 所以我们需要找到工具来实际测量下。...网络测量的工具有很多,netperf什么的都很不错。 我这里推荐了qperf,这是RHEL 6发行版里面自带的,所以使用起来很方便,只要简单的: yum install qperf 就好。...典型情况下我们的带宽是118M,延迟是32us, 在标准的千M环境下是符合预期的。...这些临界点对我们的服务器编程时候对性能的估计和预期非常有帮助。 qperf除了测量tcp的,还可以测试rdma, udp, sctp等主流网络协议的带宽和延迟,算是个很新的工具,推荐大家使用。

    1.1K20

    Android音视频直播低延迟探究之:WLAN低延迟模式

    Android WLAN低延迟模式Android WLAN低延迟模式是 Android 10 引入的一种功能,允许对延迟敏感的应用将 Wi-Fi 配置为低延迟模式,以减少网络延迟,启动条件如下:Wi-Fi...在这种模式下,设备可能会启用所有可用的 Wi-Fi 功能和特性,以提供最佳的连接性能和体验。这可能包括较高的数据传输速率、支持多种协议和功能扩展等。“LOW_LATENCY”: 表示低延迟。...视频会议和直播 在视频会议和直播中,低延迟可以确保实时的音频和视频传输,避免出现卡顿和延迟现象。这种模式可以提供更稳定和流畅的通信体验,提高会议和直播的质量。...实时流媒体 对于观看实时体育赛事、音乐会等流媒体内容,低延迟可以减少缓冲时间,提供更即时的观看体验。三、实现方式硬件支持 设备的 Wi-Fi 芯片和天线需要支持低延迟功能。...一些高端的 Wi-Fi 芯片可能会专门针对低延迟应用进行优化,提供更好的性能。软件配置 操作系统和应用程序可以通过设置来启用低延迟模式。

    16110

    qperf测量网络带宽和延迟

    我们在做网络服务器的时候,通常会很关心网络的带宽和延迟。因为我们的很多协议都是request-reponse协议,延迟决定了最大的QPS,而带宽决定了最大的负荷。...但是现实的情况是,真正的带宽和延迟情况会有很多变数的,比如说网卡驱动,交换机跳数,丢包率,协议栈配置,光实际速度都很大的影响了数值的估算。 所以我们需要找到工具来实际测量下。...网络测量的工具有很多,netperf什么的都很不错。...$ uname -r 2.6.32-131.21.1.tb477.el6.x86_64 $ qperf 在另外一台机器上运行qperf,测量tcp的带宽和延时,顺便看下双方机器的配置情况: ?...这些临界点对我们的服务器编程时候对性能的估计和预期非常有帮助。 qperf除了测量tcp的,还可以测试rdma, udp, sctp等主流网络协议的带宽和延迟,算是个很新的工具,推荐大家使用。

    2.8K60

    程序运算性能测量

    在性能优化和分析中,我们如何来描述一段代码的执行效率呢?这里,我将这一过程分为2步。...三、测量误差 在了解测量方法之后,同样我们要了解到这个测量方法在哪些情况下会产生误差。 从TSC本身来说,最常见的误差便是多核的影响。...CPU并不会对多个核的tsc进行同步,所以,我们首先要保证测量过程是在同一个核上进程的。如果被测代码段执行过程中存在进程切换,则测量值一定不会很准。...所以如果我们在测量的过程中要保证被测量函数不要进行进程切换。也就是说如果被测函数有异步IO调用,我们则需要将进程绑定在一个核上。...便可以测量出随机内存写操作的开销。 3.

    1.1K50

    MyPerf4J 针对高并发、低延迟应用设计的高性能 Java 性能监控和统计工具

    MyPerf4J 一个针对高并发、低延迟应用设计的高性能 Java 性能监控和统计工具。...特性 高性能: 单线程支持每秒 1000万次 响应时间的记录,每次记录只花费 73纳秒 无侵入: 采用 JavaAgent 方式,对应用程序完全无侵入,无需修改应用代码 低内存: 采用内存复用的方式,整个生命周期只产生极少的临时对象...使用场景 在开发环境中快速定位 Java 应用程序的性能瓶颈 在生产环境中长期监控 Java 应用程序的性能指标 文档 English Doc 中文文档undefined 监控指标 MyPerf4J...HOURLY和DAILY三个值 LogRollingTimeUnit=HOURLY #配置备份Recorders的数量,默认为1,最小为1,最大为8,当需要在较小MillTimeSlice内统计大量方法性能数据时可配置大一些

    98730

    MyPerf4J 针对高并发、低延迟应用设计的高性能 Java 性能监控和统计工具

    MyPerf4J 一个针对高并发、低延迟应用设计的高性能 Java 性能监控和统计工具。...特性 高性能: 单线程支持每秒 1000万次 响应时间的记录,每次记录只花费 73纳秒 无侵入: 采用 JavaAgent 方式,对应用程序完全无侵入,无需修改应用代码 低内存: 采用内存复用的方式,整个生命周期只产生极少的临时对象...使用场景 在开发环境中快速定位 Java 应用程序的性能瓶颈 在生产环境中长期监控 Java 应用程序的性能指标 文档 English Doc 中文文档undefined 监控指标 MyPerf4J...HOURLY和DAILY三个值 LogRollingTimeUnit=HOURLY #配置备份Recorders的数量,默认为1,最小为1,最大为8,当需要在较小MillTimeSlice内统计大量方法性能数据时可配置大一些

    1.4K40

    低延迟架构体系初探:如何从硬件到应用开发提升性能?

    而在未来,“元宇宙” 可能会换个新的名词,但是呢,它依旧也需要一系列的低延迟架构设计模式。 在探索的过程中,有感于一系列反直觉的架构模式/设计模式。...于是乎,作为低延迟架构领域的 “门外汉”,便结合着自己的理解,以及手头上的资料和书籍,做一个初步的整理和调研。 作为一个“新手”,难免如出现错误理解,也欢迎各位读者指正。...低延迟技术概览 低延迟(low latency)(https://www.phodal.com/blog/explore-low-latency-architecture/)顾名思议是计算系统或网络以最小延迟提供响应的能力...语言 从现有的应用情况而言,C、C++ 基本上是在低延迟领域的代表性语言。当然,在不并需要那么严苛速度的场景下,诸如国内环境,那么 Java 也是一个非常不错的语言 —— 快速呼朋唤友。...高性能数据结构 在 Java 侧,为了构建高性能的 Java 应用,还需要在大数据结构上做一些优化,诸如于集合操作(List、Set、Bag),像 Agrona、fastutil 便是针对于 Java

    1K20

    低延迟系统的最佳实践

    低延迟意味着更快的响应时间,更快的性能,以下最佳实践大部分来自于Quora等问题提炼: 1....选择正确的语言 脚本语言不能使用,尽管它们可以运行得更快更快,当你寻找对几毫秒延迟都不能忍受时,就不能有解释语言的开销,你希望有一个强大的内存模型,能够无锁编程,可选语言有Java Scala和C 11...让系统未充分利用 低延迟要求总是有资源能处理请求。不要试图让你的硬件/软件处于满负荷极限运行状态。留下一些头寸供使用。...6.保持读取的顺序性 所有形式的存储空间,无论是基于闪存或内存,按顺序使用性能会显著改善。当发出连续读取内存,将触发在内存级别的预取,如同在CPU缓存级别一样。...7.让你的写操作批量化 这听起来似乎有悖常理,但你可以通过批量写入确实可以获得在性能上的显著改善。然而,有一种误解,认为这意味着该系统应在任意数量批写操作之前有一个暂停等待的时间。

    1.1K20
    领券