上传视频后,在这里播放、标记起止点
导出是对选中片段实时重新录制编码,速度约为片段的 1:1(截 1 分钟大约需要 1 分钟),期间请保持页面在前台。
浏览器没有授权给网页直接输出 MP4(H.264) 的编码器,本工具用的是系统自带的实时录制能力,各格式情况如下。
| 输出格式 | 适用浏览器 | 兼容性 | 建议 |
|---|---|---|---|
| WebM (VP9/Opus) | Chrome、Edge、Firefox 默认输出 | 主流播放器、B站/视频号后台、微信内均可播放;个别老版本系统相册不识别 | 网页分享、再上传平台首选 |
| MP4 | 仅 Safari / 部分 iOS 环境可录制 | 兼容性最好 | 拿到后在任意设备直接放 |
| 必须要 MP4 怎么办 | 先用本工具截好片段导出 WebM,再用「视频转格式」或平台自带转码;着急发微信时,WebM 直接发也可被识别转码 | ||
码率决定清晰度与体积,分辨率越高越需要高码率。
| 档位 | 码率 | 适合素材 | 体积参考(1 分钟) |
|---|---|---|---|
| 小体积 | 2 Mbps | 屏幕录制、PPT 讲解、动态少的视频 | 约 15 MB |
| 均衡(默认) | 4 Mbps | 720p 实拍、短视频平台二压前 | 约 30 MB |
| 高画质 | 8 Mbps | 1080p 实拍、运动镜头、要存档再剪辑 | 约 60 MB |
⚠️ 使用须知:本工具的截取方式是把选中片段按原分辨率实时重新录制并重新编码,不是无损剪切,因此①导出耗时约等于片段时长,②首尾可能存在 0.1 秒以内误差,③输出格式由浏览器决定(Chrome / Edge / Firefox 为 WebM,Safari 为 MP4)。
导出期间请保持本页面在前台,切到后台后浏览器会降速节流,可能造成卡顿或计时偏长;可随时点「取消导出」。
请仅截取你本人拥有权利的视频内容,未经授权截取传播他人作品可能构成侵权。
所有处理在你的浏览器本地完成,视频不会上传到任何服务器,刷新页面后源文件与结果即清除。
"只要视频中间那 30 秒"、"开头废话切掉"、"把发布会第 5 分钟那段截出来发群里"——这类需求装剪辑软件太重,上传在线剪辑网站又怕原片泄露。
本工具的工作方式:
① 本地载入:通过浏览器的视频解码能力直接播放原片(因此要求源视频是当前浏览器能播的格式,最稳的是 MP4 + H.264);
② 双滑块选点:时间轴上两个圆点分别是起点和终点,蓝色填充段即为保留区间,精度到 0.01 秒;播放到合适位置也可以一键"设为起点/终点";
③ 先预览:点"预览选中片段"会从起点播放并在终点自动暂停,确认无误再导出;
④ 实时重编码:导出时用浏览器的 captureStream 捕获画面与声音,交给 MediaRecorder 边播边录,到终点自动停止——这是浏览器安全沙箱里唯一可行的本地裁剪方式,所以导出速度约为 1:1,且输出容器是浏览器支持的 WebM(Safari 为 MP4);
⑤ 码率可选:2 / 4 / 8 Mbps 三档,屏幕录像用小体积,1080p 实拍用高画质;
⑥ 结果即录即看:右侧直接预览成片、显示分辨率与文件大小,满意再下载。
整个流程中视频文件不会上传到任何服务器。
① 用 URL.createObjectURL 把本地文件挂到 video 元素,读取 duration / videoWidth / videoHeight;
② 两个 range 输入叠加在同一条时间轴上,取值后做最小 0.3 秒间隔的互相夹取,蓝色填充段按百分比定位;
③ 导出时 video.captureStream() 实时取出画面+声音轨道,用 MediaRecorder 按所选 MIME(优先 VP9+Opus 的 WebM,Safari 尝试 MP4)与码率录制;
④ video 跳到片段起点,seek 完成后同时 recorder.start() 与 video.play(),此时音轨才真正进入捕获流;
⑤ requestAnimationFrame 轮询 currentTime 计算进度,到达终点自动 recorder.stop();
⑥ ondataavailable 收集分片,onstop 时合并为 Blob,生成下载链接,文件名自动加"_片段"后缀。
审核通过后就会展示在留言板上,稍安勿躁~
还没有留言,来抢沙发吧!