流式存储音频/视频

目录

流式存储音频/视频

[1.1 具有元文件的万维网服务器](#1.1 具有元文件的万维网服务器)

[1.2 媒体服务器](#1.2 媒体服务器)

[1.3 实时流式协议 RTSP](#1.3 实时流式协议 RTSP)

[使用 RTSP 的媒体服务器的工作过程](#使用 RTSP 的媒体服务器的工作过程)


流式存储音频/视频

·"存储"音频/视频文件不是实时产生的,而是已经录制好的,通常存储在光盘或硬盘中。

传统浏览器从服务器下载已经录制好的音频/视频文件步骤

1.1 具有元文件的万维网服务器

·元文件就是一种非常小的文件,它描述或指明其他文件的一些重要信息。这里的元文件保存了有关这个音频/视频文件的信息。

1.2 媒体服务器

·使用两个分开的服务器:万维网服务器,媒体服务器。

·媒体服务器: 流式服务器 (streaming server),支持流式音频和视频的传送。

·媒体播放器与媒体服务器的关系:

客户与服务器的关系。

媒体播放器向媒体服务器请求音频/视频文件。

·媒体播放器与媒体服务器之间的交互:采用另外的协议。

媒体播放器不是向万维网服务器、而是向媒体服务器请求音频/视频文件。

下载时使用 TCP,还是 UDP?

采用 UDP 有以下缺点:

1.由于网络情况多变,接收端的播放器很难做到始终按规定的速率播放。

2.很多单位的防火墙往往阻拦外部 UDP 分组的进入,因而使用 UDP 传送多媒体文件时会被防火墙阻拦掉。

3.使用 UDP 传送流式多媒体文件时,如果在用户端希望能够控制媒体的播放,如进行暂停、快进等操作,还需要使用另外的协议RTP 和 RTSP,增加了成本和复杂性。

·现在,对流式存储音频/视频的播放,如 YouTube 和 Netflix,都是采用 TCP 来传送。

使用 TCP 传送流式视频的主要步骤

·如果是观看实况转播,应当首先考虑使用 UDP 来传送。

·若使用 TCP 传送,当出现网络严重拥塞时,会产生播放暂停。

·使用 UDP 传送时,即使因网络拥塞丢失了一些分组,对观看的感觉也会比突然出现暂停要好些。

1.3 实时流式协议 RTSP

·实时流式协议 RTSP (Real-Time Streaming Protocol) :

·应用层的多媒体播放控制协议,不传送数据。

·以客户服务器方式工作。

·使用户在播放从互联网下载的实时数据时能够进行控制,如:暂停/继续、后退、前进等。

·又称为"互联网录像机遥控协议"。

·RTSP 是有状态的协议,它记录客户机所处于的状态(初始化状态、播放状态或暂停状态)。

·RTSP 控制分组既可在 TCP 上传送,也可在 UDP 上传送。

·RTSP 没有定义音频/视频的压缩方案,也没有规定音频/视频在网络中传送时应如何封装在分组中,没有规定音频/视频流在媒体播放器中应如何缓存。

使用 RTSP 的媒体服务器的工作过程

使用 RTSP 的媒体服务器的工作过程

1.浏览器向万维网服务器请求音频/视频文件。

2.万维网服务器从浏览器发送携带有元文件的响应。

3.浏览器把收到的元文件传送给媒体播放器。

4.RTSP 客户与媒体服务器的 RTSP 服务器建立连接。

5.RTSP 服务器发送响应 RESPONSE 报文。

6.RTSP 客户发送 PLAY 报文,开始下载音频/视频文件。

7.RTSP 服务器发送响应 RESPONSE 报文。

8.RTSP 客户发送 TEARDOWN 报文断开连接。

9.RTSP 服务器发送响应 RESPONSE 报文。

欢迎一起学习~

相关推荐
starvapour16 小时前
Ubuntu系统下基于终端的音频相关命令
linux·ubuntu·音视频
高山流水&上善1 天前
基于BERT情感分析与多维度可视化的B站热门视频评论分析系统
人工智能·bert·音视频
阿酷tony1 天前
如何做视频课程的报名观看?实现报名后,才能观看视频?
音视频
福大大架构师每日一题1 天前
ollama v0.20.0 更新:Gemma 4 全家桶发布,音频、视觉、MoE、BPE 支持全面升级
音视频·ollama
Flamingˢ2 天前
ZYNQ + OV5640 + HDMI 视频系统调试记录:一次 RGB888 与 RGB565 引发的黑屏问题
arm开发·嵌入式硬件·fpga开发·vim·音视频
Flamingˢ2 天前
YNQ + OV5640 视频系统开发(二):OV5640_Data IP 核源码解析
arm开发·嵌入式硬件·网络协议·tcp/ip·fpga开发·vim·音视频
Flamingˢ2 天前
ZYNQ + OV5640 视频系统开发(三):AXI VDMA 帧缓存原理
arm开发·嵌入式硬件·fpga开发·vim·音视频
Hello World . .2 天前
Linux:Linux命令行音视频播放器
linux·音视频
飞翔的SA2 天前
MLX‑VLM :Mac本地跑通多模态大模型的开源项目!让图片、音频、视频理解一键上手
人工智能·python·macos·音视频
愚公搬代码3 天前
【愚公系列】《剪映+DeepSeek+即梦:短视频制作》046-转场:短视频一气呵成的秘密(什么是转场)
人工智能·音视频