什么是媒体服务器?

媒体服务器向请求的客户端提供视频和音频内容。 该术语用于指执行此功能的软件应用和运行媒体服务器软件的主机。

媒体服务器最常见的用途可能是提供视频点播(VOD),其中媒体服务器从存储中检索预先录制的视频内容并通过互联网传送。 最简单的情况下,视频文件嵌入网页中,并与网页的其他组件存储在同一主机上。 但 VOD 最常见的用例可能是 Netflix、Amazon 和 Hulu 等订阅服务,其中遍布世界各地的媒体服务器通过内容分发网络 (CDN) 向数百万客户提供视频。 如下文进一步讨论的那样,VOD 有几种技术,媒体服务器需要根据其支持的视频播放器类型来支持其中的一些或全部技术。

实时流媒体是媒体流服务器的另一个越来越流行的用途。 在这种情况下,媒体服务器会实时(或仅有轻微延迟)提供生成的内容。 按次付费的体育赛事就是直播的例子。 与 VOD 不同的是,通过直播流媒体,内容提供商决定用户何时观看视频(与广播电视一样)。 还可以录制直播,以便以后作为 VOD 访问。

支持多种 VOD 技术

视频传送技术在播放器对播放的控制程度上有很大的差异。 以下是按照复杂程度递增的顺序列出的:

  • 文件下载——视频为单个文件,只有当整个文件从媒体服务器下载到播放器后才能开始观看。
  • 渐进式下载——视频位于单个文件中,但文件开头的元数据允许在下载元数据和少量视频数据后立即开始播放。 视频播放时,下载在后台继续。
  • 伪流——播放器缓冲并播放视频数据,而不是将其下载到存储中。 它可以指定所请求视频部分的开始和结束时间,然后媒体服务器(现在通常称为流媒体服务器)检索并传送(“流式传输”)媒体文件的相应部分。 这使用户能够在视频播放过程中快进/快退甚至跳过。 Flash 和 MP4 是流行的伪流格式。
  • 自适应比特率流——媒体文件被分割成许多小文件,并创建播放列表作为各片段的目录,使用户更轻松地在视频中跳过。 此外,内容提供商可以创建以不同比特率编码的多个版本的视频,以提供不同级别的声音和图像质量。 通过请求以适当比特率编码的片段,播放器可以根据不断变化的网络条件在版本之间无缝切换。 自适应比特率流的流行编码包括 Apple 的 HTTP 实时流 (HLS) 和 Adobe 的 HTTP 动态流 (HDS)。
NGINX Plus 能提供什么帮助?

NGINX PlusNGINX是 Dropbox、Netflix 和 Zynga 等高流量网站使用的一流媒体服务器解决方案。 全球有超过3.5 亿个网站依靠 NGINX Plus 和 NGINX Open Source 快速、可靠、安全地传递其内容。

NGINX Plus 支持本文介绍的所有技术、格式和编码,包括用于 VOD 的 Flash、MP4、HLS 和 HDS。对于 HLS,它甚至可以动态创建片段和播放列表(如果它们尚不存在)。 对于实时流,NGINX Plus 支持 Adobe 的实时消息协议 (RTMP)、HLS 和 HTTP 上的动态自适应流 (DASH)。

与其他一些专门针对并限制于媒体交付的媒体服务器不同,NGINX Plus 是一个综合的应用交付平台,提供反向代理高级负载均衡缓存Web 服务以及专为流媒体设计的功能。

有关 NGINX Plus 媒体流功能的完整讨论(以及如何配置它们),请查看我们的白皮书《使用 NGINX Plus 提供媒体服务》