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

推荐订阅源

OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
博客园 - 聂微东
博客园 - 叶小钗
爱范儿
爱范儿
罗磊的独立博客
Hugging Face - Blog
Hugging Face - Blog
阮一峰的网络日志
阮一峰的网络日志
S
SegmentFault 最新的问题
Apple Machine Learning Research
Apple Machine Learning Research
美团技术团队
T
Tailwind CSS Blog
博客园 - 司徒正美
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
宝玉的分享
宝玉的分享
量子位
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
The Cloudflare Blog
人人都是产品经理
人人都是产品经理
小众软件
小众软件
博客园 - 【当耐特】
博客园 - 三生石上(FineUI控件)
V
Visual Studio Blog
雷峰网
雷峰网
酷 壳 – CoolShell
酷 壳 – CoolShell

博客园 - 人艰不拆_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:一次搞懂几个常见大模型概念 DeepSeek Harness 明明像 AI Coding 工具,为什么又能用来构建各种 Agent? 使用 Codex 开发项目,怎么才能节约 Token? 模型里的 32K、128K、256K 是什么意思?简单聊聊上下文限制 Codex 一次对话到底会给模型发送什么?以 Spring Boot 项目为例讲清 Context、代码读取与 Token 消耗 AI Agent 中的 Rule 是什么?以 Codex 为例,小白也能看懂 我终于搞懂了 Harness:它不是论文,也不是标准,更不是 Codex 独有 小白也能看懂:RTSP 到底是什么? Codex Token 消耗太快?使用 RTK 压缩终端输出,减少无效 Token
FPS 是什么意思?简单理解 60 FPS、25 FPS 和视频帧率
人艰不拆_zmc · 2026-09-03 · via 博客园 - 人艰不拆_zmc

最近学习 FFmpeg 时,经常会看到这样的写法:

60 FPS
  ↓
FFmpeg
  ↓
25 FPS

刚开始可能会疑惑:

FPS 到底是什么?为什么 60 FPS 可以变成 25 FPS?

其实 FPS 很简单。

一、FPS 是什么?

FPS 全称是:

Frames Per Second

中文一般叫:

帧率,也就是“每秒多少张画面”。

视频其实并不是一张真正连续运动的画面。

它本质上是:

第1张图片
第2张图片
第3张图片
第4张图片
……

这些图片快速连续播放,人眼看起来就变成了视频。

例如:

25 FPS
=
1秒钟播放25张图片

而:

60 FPS
=
1秒钟播放60张图片

二、60 FPS 和 25 FPS 有什么区别?

最简单理解:

FPS 越高,一秒钟包含的画面越多,运动看起来通常越流畅。

例如一个人快速挥手:

25 FPS

1秒
↓
25张画面

60 FPS

1秒
↓
60张画面

60 FPS 记录的画面更多,因此快速运动时通常会显得更加流畅、细腻。

简单对比:

帧率 每秒画面 特点
15 FPS 15张 流畅度较低
25 FPS 25张 普通视频已经比较流畅
30 FPS 30张 很常见
60 FPS 60张 更流畅,适合快速运动

三、为什么 FFmpeg 可以把 60 FPS 变成 25 FPS?

假设原视频:

1秒 = 60张画面

FFmpeg 可以重新处理视频,只保留需要的画面,使输出视频变成:

1秒 = 25张画面

也就是:

60 FPS
   ↓
FFmpeg
   ↓
25 FPS

可以粗略理解成:

原来一秒有 60 张照片,现在挑出其中一部分,让一秒只保留 25 张。

视频还是正常播放,只是每秒使用的画面数量减少了。


四、为什么要降低 FPS?

最常见的原因就是:

降低视频处理压力和文件大小。

例如:

60 FPS
=
1分钟需要处理3600帧

25 FPS
=
1分钟只需要处理1500帧

如果后面还需要 OpenCV、AI 模型等逐帧处理视频,那么 FPS 越高,需要处理的图片就越多。

所以很多场景并不需要 60 FPS。

例如普通监控、课堂录像等场景,可能 25 FPS 已经足够。


五、FPS 和分辨率不是一回事

这两个概念也很容易混。

分辨率

例如:

1920 × 1080

表示:

每一张图片有多清晰。

FPS

例如:

25 FPS

表示:

一秒钟有多少张图片。

所以可以这样记:

1080P
=
每张图有多清楚

25 FPS
=
一秒钟有多少张图

六、最后怎么理解 FPS?

一句话:

FPS 就是视频每秒包含多少张画面。

例如:

25 FPS = 每秒25张画面
60 FPS = 每秒60张画面

FPS 越高,视频通常越流畅,但同时意味着:

  • 数据量更大
  • 文件可能更大
  • 视频处理压力更高

所以 FFmpeg 经常会根据实际需要调整 FPS。

最后可以简单记成:

分辨率决定“每张图有多清楚”,FPS 决定“每秒有多少张图”。