nginx反向代理视频流学习

前言

偶然间接触到视频流相关的技术栈,今天做了一个题没有做明白,索性回来研究一下,虽然搞的我也挺头疼的

流媒体

流媒体就是将视频文件分成许多小块儿,将这些小块儿作为数据包通过网络发送出去,实现一边传输视频 数据 包一边观看视频。

常见的视频流协议

视频流的传输依赖于一些标准的协议。每个协议有不同的特点和应用场景。

  1. HLS(HTTP Live Streaming)
    HLS 是由 Apple 开发的一种协议,广泛应用于 Web 和移动设备。它能够自动根据网络情况调整视频质量,支持流媒体点播和直播。

HLS 的一个特点是,它将视频分割成多个小片段,客户端可以逐个片段地下载和播放,这有助于减少延迟和卡顿。

  1. RTMP(Real-Time Messaging Protocol)
    RTMP 是一种较为古老的协议,但仍然广泛用于低延迟的直播场景。它可以在直播过程中保证较低的延迟,因此被广泛应用于直播平台如 Twitch 和 YouTube Live。

RTMP 的一个缺点是它的兼容性差,不能直接在大多数移动设备的浏览器中使用,需要特定的播放器或插件支持。

  1. DASH(Dynamic Adaptive Streaming over HTTP)
    DASH 是一种类似 HLS 的协议,支持自适应比特率流,并且可以跨平台工作。它支持多种视频编码格式,适用于更广泛的设备和网络环境。

例如,当你用手机观看 4K 视频时,DASH 会根据你的网络速度自动调整视频质量,避免出现卡顿。

  1. WebRTC(Web Real-Time Communication)
    WebRTC 是一种点对点通信协议,适用于实时视频通话和互动。它的延迟非常低,通常用于视频会议和社交平台的实时视频聊天。

例如,Zoom 和 Google Meet 都采用 WebRTC 技术来提供高质量的视频会议体验。

视频流的应用场景

视频流技术在许多场景中都有广泛应用:

视频点播:例如 YouTube 等平台,用户可以选择任何内容观看。
直播:如体育赛事、新闻直播、游戏直播等。
远程会议:Zoom、Teams 等平台允许全球各地的人实时参加视频会议。
视频监控:如家庭或公司安防系统,实时监控视频流可以帮助保护财产安全。

原文链接

什么是HLS

HLS的工作方式是:将视频拆分成若干ts格式的小文件,通过m3u8格式的索引文件对这些ts小文件建立索引。一般10秒一个ts文件,播放器连接m3u8文件播放,当快进时通过m3u8即可找到对应的索引文件,并去下载对应的ts文件,从而实现快进、快退以近实时 的方式播放视频。
IOS、Android设备、及各大浏览器都支持HLS协议。

配置步骤

学习中。。。

学懵了,反向代理的应该没毛病,也不知道是不是源站设限制了,一直卡404😡有点红温了
有没有能配明白的老铁交流一下

打算自己搭一个nginx+ffmpeg的HLS(m3u8)推流源站代理一下试试了🤦‍♂️

nginx反向代理视频流学习
https://reeskysui.xyz/index.php/archives/34/
本文作者 明关
发布时间 2025-08-07
许可协议 CC BY-NC-SA 4.0
仅有 1 条评论
  1. 评论头像

    加油!加油!一起学习୧(๑•̀⌄•́๑)૭

    林夕 August 13th, 2025 at 回复
发表新评论