视频截取
从视频里切出一段,或者剪掉开头结尾多余的部分,不上传,也不重新编码。时间轴上会标出关键帧位置——无损复制只能从关键帧开始;这一刀必须落在两帧之间时,可以改用重编码。
- 默认无损:直接复制数据流,不重新编码
- 关键帧画在时间轴上,实际切点落在哪儿一目了然
把视频文件拖到这里
文件留在你的机器上,不会被上传
可读取 MP4、MOV、WebM、MKV、AVI、M4V,以及 FFmpeg 能识别的大多数格式。
还没有选择视频
选一个视频文件开始。剪切引擎要等你选完文件才会下载。
功能简介
剪个视频不该赔上一代画质,也不该等二十分钟的编码。这个工具是围着「复制」这条路设计的,同时把复制唯一去不了的地方讲清楚。
- 01
默认无损切割
选中的片段是逐包复制出来的。不解码、不重新压缩,输出里的画面就是源文件里的那份数据。文件读进来之后,复制这一步通常几秒钟就好。
- 02
时间轴上的关键帧图谱
视频的存储方式是隔一段放一张完整帧,中间只记差异,而复制只能从完整帧开始。工具会把这些位置从文件里扫出来,画在时间轴下方,于是可选的切点是看得见的,不用猜。录像很长时,这把尺子只画其中一部分。
- 03
调整是写出来的,不是偷偷做的
流复制模式下,你选的起点原样保留在你放的位置,面板会把它和这一刀真正开始的时间——也就是它前面最近的那个关键帧——并排写出来。别的在线剪切工具会默默做同样的调整,然后给你一个比你要的长了一秒的片段。
- 04
需要时可以按设定的时间切
当这一刀必须落在某个具体时刻、而不是某个关键帧上时,重编码模式会把选段解码后重新构建,起点就落在你设定的时间上。能读到源文件帧率时,时间轴每次移动一帧。它更慢,画面也是重建出来的,所以这里把它做成一个可选项,而不是强加给所有人。
- 05
切点可以直接输入
两个输入框接受 12.5、1:23.4 和 1:02:03.4 这几种写法——从播放器或字幕稿里复制出来的时间戳通常就长这样。还在找位置就用拖的,位置已经知道了就直接填。
- 06
本地处理
FFmpeg 编译成 WebAssembly 后在标签页里运行。不上传、没有服务器强加的体积上限、不用排队、不加水印、也不用注册账号。
如何使用
四步,从一整段录像到一个剪好的片段。
- 01
把视频拖到页面上,或者用文件选择器。剪切引擎从这一刻开始下载——大约 31MB,只需要下这一次——随后工具会扫描文件里的关键帧位置。
- 02
定两个切点。可以拖滑块,可以直接填时间,也可以拖动预览找到位置后点「设为起点」「设为终点」。
- 03
想无损就把方式保持在「流复制」。下面的面板会写明这一刀实际会落在哪儿;如果那个位置离得太远,再切到「重编码」。
- 04
点「开始截取」。结果会就地播放,你要的长度和实际长度并排列出,确认无误再下载。
功能说明
这些细节决定你拿到的片段是不是你想要的那一段。
- 无损流复制,全程不解码,不会产生二次压缩的损失
- 关键帧位置从文件里扫出来,直接画在时间轴上
- 流复制模式下实际起点会退到关键帧,两个时间都会显示出来
- 这一刀必须落在两个关键帧之间时,有按设定时间下刀的重编码模式
- 双滑块时间轴,带播放指针,选中段可以就地试播
- 切点可按秒数、m:ss.ddd 或 h:mm:ss.ddd 输入,精度到毫秒
- 「设为起点」「设为终点」直接采用当前播放位置
- 音轨会一并保留,没有音轨的文件同样能处理
- 「你要的长度」和「实际长度」并排给出
- 流复制保持原容器,重编码输出 MP4
- 引擎下载时显示真实字节进度,不是随便动的假进度条
- 截取过程中可以随时取消
适合哪些场景
这些场景下,在本地做无损剪切,比传上去再剪更值得。
-
剪掉录像开头和结尾多余的部分
几乎每段录屏开头都有几秒钟在找窗口,结尾都有几秒钟在找停止按钮。两头各剪一刀是最常见的编辑动作,也最不值得为它跑一遍完整编码。
-
从长录像里抠出一段
两小时的会议、直播或游戏录像,通常只有一段值得发出去。写出来的只有你框选的那一段,而且一帧都不会重新编码——不过浏览器仍然要先把整份录像读进来、扫一遍关键帧,你才能开始框选。
-
不该上传的录屏
内部系统的录屏里往往带着客户名、工单号或者测试环境地址。在标签页里剪完,素材就不会被交给某个你根本没读过留存条款的转换站。
-
满足平台的时长限制
上传表单、广告平台和聊天软件都会限制片段时长,常见是三十秒或六十秒。剪到刚好符合要求,比跟上传校验器较劲快得多,而且流复制不会顺带把画质弄糊。
-
给下一道工序做准备
先剪再转。把一小段素材交给转写服务、GIF 转换器或剪辑时间轴,比把整段录像扔过去再慢慢找,既快又省。
-
长素材里只留有用的部分
行车记录仪、门铃摄像头和监控导出的文件,绝大部分时间什么都没发生。把关键的那一分钟切出来,原本大到发不出去的文件就变成能发的了,而画质完全没动过。
使用建议
这些习惯能让剪出来的片段干净,也让画质停在原来的位置。
- 先用流复制,只有当这一刀退到的那个关键帧确实早得没法接受时才换重编码——大部分剪辑并不需要这种精度
- 起点比想要的位置稍微往前一点:反正流复制会把它退到关键帧,多留一点余量,总比把第一个字切掉强
- 看一眼竖线的疏密:关键帧之间隔得越远,能选的切点就越少,这是录像本身的特点,工具改不了
- 时间已经知道了就直接填,还在找那个瞬间就用拖的
- 先剪再转——后面每一道工序拿到的是三十秒而不是两小时,快出来的时间相当可观
- 下载前核对一下「实际长度」和「你要的长度」,有意外的话就体现在这一行
- 长素材或高分辨率素材尽量在台式机浏览器上切,手机分给标签页的内存要少得多
边界与注意事项
这个工具刻意不做什么,以及它在哪里会吃力。
- 它不改分辨率,也不做压缩。流复制原样保留源数据;重编码用的是接近无损的参数重建画面,而不是奔着某个体积去压。
- 它只切一段连续的区间。把中间挖掉再把两头接上,或者把几段拼在一起,是另一件事,这里不做。
- 无损复制只能从关键帧开始。如果录像本身把关键帧放得很稀,能选的起点也就跟着变少。
- 重编码模式输出 MP4、视频用 H.264,所以 WebM 或 MKV 的源文件经过它之后会变成 MP4。音频本来是 AAC 或 MP3 就直接复制,否则转成 AAC。
- 只保留第一条视频轨和第一条音频轨。字幕轨、多语言音轨和附件都会被丢掉。
- 引擎首次使用时约 31MB。之后会走缓存,但在一个全新的浏览器配置里,第一次截取要承担这次下载。
- WebAssembly 是 32 位的,而且源文件在读取阶段是整个压在内存里的,所以视频大到 250MB 上下就开始不可靠了。
- 有些容器 FFmpeg 读得很顺,浏览器却播不了,比如封装 HEVC 的 MKV。这时照着时间轴和填进去的时间照样能切,缺的只是那块会动的预览。
- 有 DRM 保护的文件读不了——任何不破解保护的工具都读不了。
常见问题
在浏览器里剪视频时常见的问题。
怎么从视频里切出一段?
把文件拖到页面上,把两个滑块拖到想保留的那一段,点「开始截取」即可。默认方式是直接复制数据流、不重新编码,所以出来的片段画质和源文件一样,通常几秒钟就好。不想拖的话,两个时间也可以直接填。
剪辑会掉画质吗?
用流复制不会。选中的数据包全程没有被解码,只是被搬进了一个新容器,所以输出里的画面数据就是源文件里的那份,不存在第二代压缩。重编码模式确实会解码并重建画面,这也正是它是第二选项而不是默认项的原因。
为什么切出来的开头比我指定的时间还早?
因为无损复制必须从关键帧开始。视频里许多画面只记录相对前面画面的变化;从别的位置开始复制,新文件开头的数据包就可能依赖没有一起带过来的画面。这个工具会把你文件里的关键帧位置读出来,把这一刀退到你指定位置之前最近的那个关键帧,并把两个时间都写给你看。如果这一刀必须落在你设定的时间上,请切换到重编码。
我的视频会被上传吗?
不会。引擎是编译成 WebAssembly 的 FFmpeg,运行在你的浏览器标签页里。文件从磁盘读进标签页内存,结果再写回成一个下载文件。整个过程没有任何文件内容经过网络——你可以在截取时打开开发者工具的网络面板自己确认。
关键帧是什么?为什么它决定了我能在哪儿下刀?
关键帧给解码器一个可以独立起步的位置。两个关键帧之间的许多画面,只记录相对前面画面发生了什么变化,视频文件能做小靠的就是这个。流复制只是把数据包原样搬进新文件,不会重建画面;要是从两帧之间开始,开头的数据包可能依赖并没有一起搬过去的画面。从关键帧开始,所需的一段数据才能完整留在新文件里。常见录像每隔一到十秒放一个关键帧,时间轴下方的竖线就是你这个文件里的实际位置。
怎么去掉视频的开头或结尾?
去掉开头,等价于「保留某个时间点之后的全部内容」:把左边的滑块拖到正片开始的位置,或者播到那儿点「设为起点」。去掉结尾就是把右边的滑块反过来做一遍。两者都是一段连续区间,而这正是无损复制最擅长的形状。
流复制和重编码,我该选哪个?
没有特别理由就选流复制:画质原样保留、几秒钟出结果、容器也不变。重编码值回票价的情况有两种——这一刀必须落在某个具体时刻上,或者退到关键帧之后会把好几秒不能出现的画面也带进来。重编码在这里是单线程跑的,所以长片段或高分辨率素材会明显慢。
剪一次要多久?
流复制基本就是写文件的时间,因为没有任何一帧被解码过——即使选段很长,通常也是秒级。重编码要把每一帧都解出来再压回去,耗时随分辨率和长度增长;一小段 720p 很快,几分钟的 4K 就得等一会儿了。
能不能把中间挖掉,再把剩下的两头接起来?
这里不行。把两段接起来要么得把两段都重编码,要么得在关键帧边界上做拼接,出问题时的表现相当难缠——一个剪切工具不该假装能顺手把它办了。这里只处理一段连续区间,覆盖的是「剪掉头尾」和「从长录像里抠一段」这两件事。
支持哪些格式?文件类型会变吗?
可读取 MP4、MOV、WebM、MKV、AVI、M4V,以及 FFmpeg 能识别的大多数格式。流复制会保持源容器,所以 MP4 出来还是 MP4,WebM 还是 WebM。重编码则一律输出 MP4,因为 H.264 视频不该被塞进 WebM 文件里。没有音轨的文件按原样处理。