1 选一个视频
- 文件
- —
- 大小
- —
- 画面
- —
- 时长
- —
- 视频
- —
- 帧数
- —
2 找到那一帧
拖动滑块在片子里移动,或者播放然后在想要的地方停下。← 和 → 一次挪一帧,配合 Shift 一次挪十帧,空格播放和暂停。
正在解码…
0:00.000
3 把这一帧取下来
画质 92 只有 PNG 会把这一帧原样存下。其他格式都是在视频自身的压缩之上再压一遍。
每隔 做一览图,或者隔一阵取一张缩略图。最多 500 张。
4 截出来的图
# 视频截帧 — 把视频里的某一帧存成图片 任意位置,一张原画质静帧。 > 把 MP4、MOV 或 WebM 的任意一帧存成原尺寸 PNG 或 JPEG。可以一帧一帧地挪,也可以每隔几秒截一张。全在浏览器里跑,什么都不上传。 这是一个浏览器交互工具,地址是 https://abox.tools/zh/grab-frame/。文件在运行该浏览器的设备上处理。主动分享和可选联网功能都在页面上说明。下文是它的文字说明;使用工具请打开该地址。 ## 你的视频**在浏览器里处理**,无须上传处理。 帧的查找、解码和绘制,都由你自己的浏览器在你自己的硬件上完成。这里没有任何东西能取或能发,因为这个工具压根就没有网络功能。就算有路可走,页面的另一端也根本没有服务器可以接收视频。 - ✗ 不上传 - ✗ 不注册 - ✗ 无水印 - ✓ 原始分辨率 - ✓ 断网可用 ## 从视频里截一帧的步骤 1. **选一个视频。** 把 MP4、MOV、M4V 或 WebM 拖到选择框里,或者自己找出来。浏览器直接从磁盘上读,这期间没有任何东西发往别处。 2. **找到那个瞬间。** 播放然后在想要的地方停下,或者拖动滑块。MP4 的滑块一格就是一帧,所以你看到的和你存下的之间不存在取整。方向键一次挪一帧,按住 `Shift` 一次挪十帧。 3. **挑一个格式。** PNG 会把解码出来的帧原样存下,这就是这里说的“原画质”。JPEG 和 WebP 更小,但会在视频自身的压缩之上再压一遍,用来预览没问题,用在之后还要再编辑的图上就不合适。 4. **截一张,或者截一串。** 单张会直接进你的下载。“每 N 秒”会把片子走一遍,在每个刻度取一张,做一览图和缩略图时很好用,而且它们会打包成一个 ZIP,而不是弹一百次保存提示。 ## 说得更细的版本 [怎么把视频里的一帧存成图片](https://abox.tools/zh/guides/grab-a-frame-from-a-video/): 按原分辨率从片子里取一张静帧:为什么暂停后的截屏不是同一张图、该存成什么格式,以及怎么正好停在你想要的那一帧。 ## 工具箱里还有 - [GIF 转 MP4](https://abox.tools/zh/gif-to-mp4/): 每一帧都带着 GIF 给它的延时,变成 MP4 里的 H.264。在你的机器上转,文件从不上传。 - [视频转 GIF](https://abox.tools/zh/video-to-gif/): 挑好段落、尺寸和帧率。 - [GIF 制作](https://abox.tools/zh/gif-maker/): 把一组图片变成一段动画。 - [GIF 拆帧](https://abox.tools/zh/split-gif/): 每一帧都单独存成一张 PNG。 ## 常见问题 ### 我的视频会被传到哪里去吗? 不会。它由你自己的浏览器在你自己的硬件上读取和解码。这个工具没有服务端,页面的 `Content-Security-Policy` 里写着它允许联系的每一个地址,没有一个属于本站。你要是宁可自己查也不愿听我们说,拔掉网线,照样截一帧试试。 ### “原画质”到底是什么意思? 两件事。一是这张图按视频本身的分辨率保存,而不是按页面上预览的大小,4K 的片子给的就是 3840 x 2160 的图。二是选了 PNG 的话,这一帧就是从解码器出来时的样子,文件里装的正是视频里装的画面,上面没有再压一层。对着播放器窗口截屏两样都得不到:尺寸是窗口的尺寸,而且是播放器缩放并做完色彩管理之后的画面。 ### 哪些视频格式可以截帧? MP4、M4V 和 MOV 直接读,里面装什么都行:H.264、HEVC、AV1 或 VP9,只要你的浏览器能解那个编码。这是精确路径,工具能点名到具体某一帧。其他浏览器能播的东西,最典型的是 WebM,则靠把播放器挪过去、再把它显示的内容画下来,一样能存出原尺寸的图,但落到的是播放器选的那一帧,而不是你要的那一帧。浏览器既读不了也播不了的文件,实际上就是 AVI、WMV、FLV 和大多数 MKV,会带一句说明直接拒掉。 ### 能一帧一帧地挪吗? MP4 可以,而且是精确的:工具读的是文件自己的帧列表,所以方向键是在真正存在的那些画面之间移动,哪怕片子的帧率忽高忽低也一样,而按三十分之一秒固定步进就会越走越偏。走播放路径时没有这份列表,一次操作大约挪一帧,页面也会明说。 ### 我竖着拍的手机视频在这儿为什么是正的? 因为旋转是特意应用上去的。手机是横着拍的,然后把“转四分之一圈”写进文件里,而不是真的把像素转过来,所以解码器交出来的帧是躺着的,每个播放器都会在送到你屏幕的路上把它扶正。跳过这一步的工具,会存下一张时刻没错、但躺着的图。这个工具会从轨道里读出旋转值,在画任何东西之前先应用。 ### 视频的大小或时长有上限吗? 工具里没有写死的上限,文件也不会一次性读进内存,而是几兆几兆地走过去,所以长片子和短片子开得一样快。你截下的图在下载之前留在页面里,所以真正的天花板是几百张 4K PNG,而不是视频本身。 ### 截下来的图之后能缩放或裁剪吗? 这里不行,隔壁可以。这个工具只是把帧原样存下来;改尺寸或改形状是另一件事,里面有自己的取舍,[图片尺寸调整](https://abox.tools/zh/resize-image/)两件都能做,同样什么都不上传。想在不改画面的前提下把文件变小,用[图片压缩](https://abox.tools/zh/compress-image/)。 ### 它免费吗,需要注册吗? 免费,没有账号,不用登录,没有试用期,也没有水印。本站带广告,经费就是从那儿来的,广告拿不到任何关于你视频的信息。 ## 这条隐私承诺怎么核实 - **处理在这个浏览器里完成。** 本工具在浏览器里处理输入和结果,处理代码不把它们上传去处理。Content-Security-Policy 限制可用资源和连接目的地,但已允许的主机仍可接收请求。策略不检查载荷,不能单独证明什么都没有发出。请把具体操作的请求与源码核对,或断网完成该本地操作。 - **这里不会去取任何东西。** 这个工具压根就没有网络功能:没有地址可填,没有东西要下载,第一次用也不会拉什么引擎。碰到你视频的每一个字节,都是页面加载时从这个源来的。 - **解码在本地完成。** 帧要么走你自己浏览器里的 WebCodecs,要么走本来就会给你放这个片子的那套播放引擎。画面画在这台机器的 canvas 上,然后直接交给下载。 - **文件是几兆几兆读的。** 视频是这里唯一一种不能保证塞得进内存的文件,所以从来不整个加载。读取器只取你要的那一帧前后的一小段窗口,这也是两个 G 的片子和小片子开得一样快的原因。 - **Google 加载了什么,又拿不到什么。** 广告脚本和统计脚本来自 Google。关于你视频的信息,一条也没有交给它们,文件、某一帧、名字、大小、时长、你停在哪一刻,都没有。读取、解码、绘制的每一行代码都由这个源提供,也都摆在仓库里。 - **捐助按钮加载了什么,又拿不到什么。** 页首那个“Buy me a coffee”按钮由 cdnjs.buymeacoffee.com 的脚本画出来,字体取自 Google Fonts。它不过是个链接,不上报访问,也拿不到关于你或你视频的任何东西。 - **断网也照样能用。** 断开网络,这个页面上的一切照常工作。这是最省事的一条证明。 **你可以自己核对。**上面这些不用你信。这个页面是仓库里的模板和配置生成出来的,构建脚本你能读,也能自己跑一遍,跑出来的结果就提交在 `dist` 分支上。拿实际发给你的内容,跟你自己从源码构建出来的结果对一遍就知道了: https://github.com/A-Box-of-Tools/website 最值得先读的几个文件:`config/site.toml` 里是 Content-Security-Policy,`src/shared/mp4-reader.js` 是在 MP4 里找出各帧的读取器,`src/frames.js` 是负责把你要的那一帧解出来的部分。两者都没有引入任何能发出请求的东西。
从视频里截一帧的步骤
- 选一个视频。把 MP4、MOV、M4V 或 WebM 拖到选择框里,或者自己找出来。浏览器直接从磁盘上读,这期间没有任何东西发往别处。
- 找到那个瞬间。播放然后在想要的地方停下,或者拖动滑块。MP4 的滑块一格就是一帧,所以你看到的和你存下的之间不存在取整。方向键一次挪一帧,按住 Shift 一次挪十帧。
- 挑一个格式。PNG 会把解码出来的帧原样存下,这就是这里说的“原画质”。JPEG 和 WebP 更小,但会在视频自身的压缩之上再压一遍,用来预览没问题,用在之后还要再编辑的图上就不合适。
- 截一张,或者截一串。单张会直接进你的下载。“每 N 秒”会把片子走一遍,在每个刻度取一张,做一览图和缩略图时很好用,而且它们会打包成一个 ZIP,而不是弹一百次保存提示。
说得更细的版本
怎么把视频里的一帧存成图片 按原分辨率从片子里取一张静帧:为什么暂停后的截屏不是同一张图、该存成什么格式,以及怎么正好停在你想要的那一帧。
工具箱里还有
常见问题
我的视频会被传到哪里去吗?
不会。它由你自己的浏览器在你自己的硬件上读取和解码。这个工具没有服务端,页面的 Content-Security-Policy 里写着它允许联系的每一个地址,没有一个属于本站。你要是宁可自己查也不愿听我们说,拔掉网线,照样截一帧试试。
“原画质”到底是什么意思?
两件事。一是这张图按视频本身的分辨率保存,而不是按页面上预览的大小,4K 的片子给的就是 3840 x 2160 的图。二是选了 PNG 的话,这一帧就是从解码器出来时的样子,文件里装的正是视频里装的画面,上面没有再压一层。对着播放器窗口截屏两样都得不到:尺寸是窗口的尺寸,而且是播放器缩放并做完色彩管理之后的画面。
哪些视频格式可以截帧?
MP4、M4V 和 MOV 直接读,里面装什么都行:H.264、HEVC、AV1 或 VP9,只要你的浏览器能解那个编码。这是精确路径,工具能点名到具体某一帧。其他浏览器能播的东西,最典型的是 WebM,则靠把播放器挪过去、再把它显示的内容画下来,一样能存出原尺寸的图,但落到的是播放器选的那一帧,而不是你要的那一帧。浏览器既读不了也播不了的文件,实际上就是 AVI、WMV、FLV 和大多数 MKV,会带一句说明直接拒掉。
能一帧一帧地挪吗?
MP4 可以,而且是精确的:工具读的是文件自己的帧列表,所以方向键是在真正存在的那些画面之间移动,哪怕片子的帧率忽高忽低也一样,而按三十分之一秒固定步进就会越走越偏。走播放路径时没有这份列表,一次操作大约挪一帧,页面也会明说。
我竖着拍的手机视频在这儿为什么是正的?
因为旋转是特意应用上去的。手机是横着拍的,然后把“转四分之一圈”写进文件里,而不是真的把像素转过来,所以解码器交出来的帧是躺着的,每个播放器都会在送到你屏幕的路上把它扶正。跳过这一步的工具,会存下一张时刻没错、但躺着的图。这个工具会从轨道里读出旋转值,在画任何东西之前先应用。
视频的大小或时长有上限吗?
工具里没有写死的上限,文件也不会一次性读进内存,而是几兆几兆地走过去,所以长片子和短片子开得一样快。你截下的图在下载之前留在页面里,所以真正的天花板是几百张 4K PNG,而不是视频本身。
截下来的图之后能缩放或裁剪吗?
这里不行,隔壁可以。这个工具只是把帧原样存下来;改尺寸或改形状是另一件事,里面有自己的取舍,图片尺寸调整两件都能做,同样什么都不上传。想在不改画面的前提下把文件变小,用图片压缩。
它免费吗,需要注册吗?
免费,没有账号,不用登录,没有试用期,也没有水印。本站带广告,经费就是从那儿来的,广告拿不到任何关于你视频的信息。