抖音实时直播是怎么工作的?

开发 前端
直播不同于普通的流媒体,因为视频内容是通过互联网实时发送的,延迟时间通常只有几秒钟。

直播不同于普通的流媒体,因为视频内容是通过互联网实时发送的,延迟时间通常只有几秒钟。

下图解释了实现这一功能的过程。

第 1 步:原始视频数据由麦克风和摄像头采集。数据被发送到服务器端。

第 2 步:对视频数据进行压缩和编码。例如,压缩算法会分离背景和其他视频元素。压缩后,视频按照 H.264 等标准进行编码。经过这一步骤后,视频数据的大小会小得多。

第 3 步:编码后的数据被分成更小的片段,长度通常为几秒钟,因此下载或流式传输所需的时间更短。

第 4 步:将分段数据发送到流媒体服务器。流媒体服务器需要支持不同的设备和网络条件。这就是所谓的 “自适应比特率流”。这意味着我们需要在步骤 2 和 3 中以不同的比特率生成多个文件。

第 5 步:将直播数据推送到 CDN(内容分发网络)支持的边缘服务器。CDN 大大降低了数据传输延迟。

第 6 步:观众的设备对视频数据进行解码和解压,并在视频播放器中播放视频。

第 7 步和第 8 步:如果视频需要存储以便重放,则将编码数据发送到存储服务器,观众可在稍后请求重放。

时流媒体的标准协议包括

  • 实时信息传输协议(RTMP, Real-Time Messaging Protocol):该协议最初由 Macromedia 开发,用于在 Flash 播放器和服务器之间传输数据。现在它用于在互联网上传输视频数据流。请注意,Skype 等视频会议应用程序使用 RTC(实时通信)协议来降低延迟。
  • HLS(HTTP Live Streaming):它需要 H.264 或 H.265 编码。苹果设备只接受 HLS 格式。
  • DASH(Dynamic Adaptive Streaming over HTTP):DASH 不支持 Apple 设备。
  • HLS 和 DASH 都支持自适应比特率流。
责任编辑:华轩 来源: ByteByteGo
相关推荐

2023-02-06 17:38:34

低延迟

2023-11-03 17:02:18

抖音直播画质优化

2020-10-12 19:06:06

微信直播快手

2022-07-20 22:55:39

直播OOM抖动

2020-09-17 18:31:54

戴尔

2022-07-06 13:02:00

高延时电商直播主播互动

2022-08-02 07:56:53

反转依赖反转控制反转

2023-11-03 16:56:00

抖音直播编码器

2021-06-28 05:19:32

抖音电脑

2022-06-06 12:19:08

抖音功耗优化Android 应用

2020-10-27 09:33:39

抖音印度移动应用

2019-03-07 15:04:37

抖音快手同城

2022-01-22 07:44:12

抖音PC 版电脑刷抖音

2019-06-21 09:55:10

刷抖美腿App
点赞
收藏

51CTO技术栈公众号