惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

MongoDB | Blog
MongoDB | Blog
B
Blog
Y
Y Combinator Blog
大猫的无限游戏
大猫的无限游戏
aimingoo的专栏
aimingoo的专栏
B
Blog RSS Feed
博客园 - Franky
V
V2EX
IT之家
IT之家
WordPress大学
WordPress大学
博客园 - 三生石上(FineUI控件)
J
Java Code Geeks
F
Fortinet All Blogs
I
InfoQ
云风的 BLOG
云风的 BLOG
腾讯CDC
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
月光博客
月光博客
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
N
Netflix TechBlog - Medium
宝玉的分享
宝玉的分享
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
P
Proofpoint News Feed
Microsoft Security Blog
Microsoft Security Blog

博客园 - 人艰不拆_zmc

15000mAh 到底是什么概念?一篇看懂电池容量 go2_ros2_sdk 到底是干什么的?从 Go2、官方 SDK、ROS2 一路讲到 SLAM 和 Nav2 买了宇树 Go2 以后怎么二次开发?写给第一次做机器狗项目的人 买了一块 NVIDIA Jetson,怎么在上面安装 ROS2?从 JetPack 到 ROS2 的完整入门指南 NVIDIA Jetson 到底是什么?写给第一次接触机器人和边缘 AI 的人 ROS / ROS2 到底是什么?写给第一次接触机器人开发的人 大模型到底能同时多少人用?一篇看懂并发、排队与容量估算 大模型为什么有快有慢?一篇看懂响应速度背后的关键因素 技术小白也能看懂:大模型里的量化、蒸馏到底是什么意思? Codex 使用技巧:从“会聊天”到“真正能干活” 我终于搞懂了:Codex 对话中插件和 Skill 到底怎么用 我终于搞懂了 Agent Spec:它其实就是 Agent 的“标准设计图” 我终于搞懂了 Tool:原来不只是 Function Calling 里的函数 Skill 里的 Python 脚本,到底是不是 Tool? 我终于搞懂了 Codex 的 Plugin 和 Skill:顺便把 App、MCP 一次理清 我终于搞懂了 Codex 的“应用”:App 到底是什么,怎么添加和维护? 我终于搞懂了 Tool、Function Calling 和 MCP:大模型到底怎么知道该调哪个接口? 我终于搞懂了 MCP:从 HTTP API 到 ERP MCP Server 的完整入门 我终于搞懂了 Codex 的“记忆”是怎么回事 Codex 用久了越来越慢?我的上下文管理小技巧 我终于搞懂了 Codex 里的 Thread、Turn 和 Session 从 Qwen3.8-27B 到 FP8、NVFP4、MoE:一次搞懂几个常见大模型概念 FPS 是什么意思?简单理解 60 FPS、25 FPS 和视频帧率 DeepSeek Harness 明明像 AI Coding 工具,为什么又能用来构建各种 Agent? 使用 Codex 开发项目,怎么才能节约 Token? 模型里的 32K、128K、256K 是什么意思?简单聊聊上下文限制 Codex 一次对话到底会给模型发送什么?以 Spring Boot 项目为例讲清 Context、代码读取与 Token 消耗 AI Agent 中的 Rule 是什么?以 Codex 为例,小白也能看懂 我终于搞懂了 Harness:它不是论文,也不是标准,更不是 Codex 独有 Codex Token 消耗太快?使用 RTK 压缩终端输出,减少无效 Token
小白也能看懂:RTSP 到底是什么?
人艰不拆_zmc · 2026-08-22 · via 博客园 - 人艰不拆_zmc

第一次接触到 RTSP 这个词,刚开始看到:

rtsp://192.168.1.100:554/xxx

感觉非常复杂。

其实理解以后会发现,RTSP 并没有那么难

对于刚接触摄像头的人来说,可以先记住一句话:

RTSP 就是让程序获取摄像头实时视频的一种方式。


一、先不要管 RTSP 是什么协议

假设教室里有一个摄像头。

摄像头一直在拍摄:

第1秒画面
第2秒画面
第3秒画面
第4秒画面
……

我们现在有一台 Linux 服务器,希望这台服务器也能看到摄像头的实时画面。

如果摄像头支持 RTSP,就相当于摄像头给我们提供了一个:

实时视频入口。

例如:

rtsp://192.168.1.100:554/xxx

Linux 服务器通过这个地址,就可以尝试获取摄像头的视频。

所以最简单的理解就是:

摄像头
   ↓
 RTSP
   ↓
Linux服务器

翻译成人话:

Linux 服务器通过 RTSP,把摄像头正在拍的视频拿过来。


二、RTSP 可以理解成“视频的网址”

平时打开网页,我们会看到:

https://www.example.com

这个地址对应的是网页。

而 RTSP 地址可能长这样:

rtsp://192.168.1.100:554/xxx

它对应的通常是:

摄像头实时视频。

所以可以粗略理解成:

https://
   ↓
访问网页

rtsp://
   ↓
访问实时视频

当然两者实际上不是同一种协议,但对于第一次接触的人,这样理解最容易。


三、举个最简单的例子

假设有一台网络摄像头。

摄像头的信息是:

IP:192.168.1.100

用户名:admin

密码:123456

摄像头厂家告诉我们,它的 RTSP 地址是:

rtsp://admin:123456@192.168.1.100:554/xxx

Linux 服务器访问这个地址以后,就可以不断获取摄像头正在拍摄的视频。

整个过程就是:

摄像头
192.168.1.100
      ↓
   RTSP
      ↓
Linux服务器
      ↓
获取实时视频

四、Linux 拿到视频以后能干什么?

这才是 RTSP 真正有用的地方。

拿到摄像头视频以后,我们可以做很多事情。

1. 实时观看

摄像头
   ↓
RTSP
   ↓
服务器
   ↓
网页
   ↓
实时查看

例如开发一个学校摄像头管理平台:

101教室    查看视频

102教室    查看视频

103教室    查看视频

点击“查看视频”,就可以看到这个教室的实时画面。


2. 保存录像

服务器拿到 RTSP 视频以后,也可以保存。

例如:

08:00 - 09:00

保存成:

2026-08-22-08-00.mp4

也可以每10分钟保存一个文件:

08:00-08:10.mp4

08:10-08:20.mp4

08:20-08:30.mp4

所以:

RTSP 不只是可以看,还可以把视频保存下来。


3. 给 AI 分析

例如学校想分析课堂情况。

可以这样:

摄像头
   ↓
RTSP
   ↓
服务器
   ↓
AI

AI 拿到视频以后,可以继续分析:

有没有学生

有多少学生

有没有人离开座位

有没有伏桌

有没有举手

所以 RTSP 本身不负责 AI。

它只是负责:

把摄像头的视频送到我们的程序。


五、可以把 RTSP 想成一根水管

这是我认为最好理解的方式。

假设:

摄像头 = 水龙头

视频 = 水

RTSP = 水管接口

Linux服务器 = 接水的人

那么整个过程:

水龙头
  ↓
水管
  ↓
接水

对应到摄像头:

摄像头
  ↓
RTSP
  ↓
Linux服务器

所以当开发人员说:

“我们需要拉一下 RTSP 流。”

其实可以直接翻译成:

“我们需要把摄像头的实时视频拿过来。”

这样就容易理解了。


六、什么叫“拉流”?

第一次接触视频开发,还经常会听见一个词:

拉流

其实也非常简单。

“流”就是不断传输的视频。

例如:

画面1
画面2
画面3
画面4
画面5
……

摄像头的视频不是一次性传完,而是在不停地产生。

服务器持续获取这些视频,就叫:

拉流。

所以:

拉 RTSP 流

翻译成人话就是:

通过 RTSP 持续获取摄像头实时视频。


七、是不是所有摄像头都有 RTSP?

不是。

这点非常重要。

有些专业网络摄像头支持:

RTSP

ONVIF

GB28181

这种比较方便第三方系统接入。

但是有一些家用摄像头可能只能:

摄像头
   ↓
厂家云平台
   ↓
厂家APP

虽然手机 APP 可以看到视频,但是不代表第三方程序一定能够获取视频。

所以购买或者调研摄像头时,可以直接问厂家:

这个型号是否支持 RTSP?

如果支持,再问:

RTSP 地址是什么?


八、摄像头的 RTSP 地址从哪里来?

这个地址通常不是自己随便写的。

不同厂家的格式可能不一样。

例如一个 RTSP 地址可能类似:

rtsp://用户名:密码@摄像头IP:554/视频路径

例如:

rtsp://admin:123456@192.168.1.100:554/xxx

这里可以简单理解:

admin
↓
摄像头用户名

123456
↓
摄像头密码

192.168.1.100
↓
摄像头IP

554
↓
RTSP常用端口

xxx
↓
厂家规定的视频路径

真正使用时,要根据具体摄像头品牌和型号查询说明书。


九、Linux 怎么测试 RTSP?

Linux 上可以安装一个非常常用的视频工具:

FFmpeg

可以把 FFmpeg 简单理解成:

Linux 上用来处理视频的工具。

关系就是:

摄像头
   ↓
RTSP地址
   ↓
FFmpeg
   ↓
Linux服务器

例如拿到 RTSP 地址以后,可以使用 FFmpeg 或 ffprobe 测试视频是否能够读取。

如果成功看到:

H264

1920x1080

25 fps

就说明:

Linux 已经成功获取到摄像头视频。


十、一个完整的实际场景

假设学校有100个教室。

每个教室都有摄像头。

以前可能需要使用不同摄像头厂家的 APP:

101教室 → APP A

102教室 → APP A

201教室 → APP B

301教室 → APP C

使用起来非常麻烦。

如果这些摄像头能够提供 RTSP 视频,我们就可以开发自己的平台:

101摄像头 ─┐
102摄像头 ─┤
103摄像头 ─┤
201摄像头 ─┤
301摄像头 ─┤
           ↓
      我们的服务器
           ↓
      统一视频平台

用户以后只需要打开一个系统:

一号教学楼

101教室    ● 在线    查看视频
102教室    ● 在线    查看视频
103教室    ● 在线    查看视频


二号教学楼

201教室    ● 在线    查看视频
202教室    ● 在线    查看视频

这样就不需要频繁切换各种摄像头 APP 了。


十一、最后总结

如果只记住三句话,就记下面这三句。

第一句:

RTSP 是获取摄像头实时视频的一种常见方式。

第二句:

所谓“拉 RTSP 流”,就是服务器持续获取摄像头正在拍摄的视频。

第三句:

视频拿到以后,可以实时观看、保存录像,也可以交给 AI 做分析。

所以整个过程可以简化成:

摄像头
   ↓
RTSP
   ↓
Linux服务器
   ↓
┌───────────┬───────────┬───────────┐
↓           ↓           ↓
实时观看    保存录像     AI分析

对于刚接触摄像头开发的人来说,先理解到这里就已经足够了。