免费视频压缩工具

使用质量预设或自定义设置减小视频文件大小。

您的文件永不离开您的设备

将视频文件拖放到此处

或点击浏览 · MP4、WebM、MOV、AVI、MKV(最大 2 GB)

视频压缩对您的文件究竟做了什么

原始视频是巨量的像素数据。一段 1080p(1920x1080)60fps 的视频约为 1920 x 1080 x 每像素 3 字节 x 每秒 60 帧,每秒未压缩素材约 370 MB。即使 720p 30fps 未压缩也约 80 MB/s。压缩通过利用两种冗余使视频可分享:帧内的空间冗余(相邻像素往往相似)和帧间的时间冗余(大多数像素几乎不变)。现代编解码器每隔几秒编码一个关键帧(完整画面),中间只编码差异。这些差异随后被 DCT 变换、量化(这是丢弃您眼睛较不敏感的高频细节的有损步骤)以及熵编码。您选择的 CRF(恒定速率因子)值控制量化步骤丢弃信息的激进程度。CRF 18 视觉上无损;CRF 23 是 x264 的默认值(对大多数观看者透明);CRF 28 是可接受的网页质量;超过 CRF 30 您会开始看到暗场景中的方块和文字周围的蚊噪。

分辨率、帧率和比特率是三个独立的旋钮。把分辨率从 1080p 降到 720p 将原始数据减半的四倍(每个轴都减半)。把帧率从 60 降到 30fps 将数据减半。两种减少在精细内容上视觉上明显,但在脱口秀、大部分静态 UI 的屏幕录制或在手机大小屏幕上观看的社交媒体短片上常常不可见。比特率是第三个旋钮:1080p 30fps 视频以 5 Mbps 看起来很好;相同视频以 1 Mbps 显示块状压缩伪影。本工具的质量预设选取目标典型网页可接受比特率的 CRF 值:高预设约 CRF 23(1080p 约 5 Mbps),中等约 CRF 28(约 2 Mbps),低约 CRF 33(约 800 kbps),自定义让您自己拖动滑块。

音频也很重要。带 PCM(未压缩)音频的 10 分钟视频仅音频就有 100 MB。本工具默认把音频重新编码为 128 kbps AAC,相同 10 分钟降到约 10 MB,对大多数内容无可闻损失。容器(视频和音频轨道周围的 MP4 包装)主要是簿记:轨道索引、查找表、编解码器头。MP4 配 H.264 视频加 AAC 音频是 2026 年的通用语:它在您遇到的每个浏览器、手机、智能电视、游戏机和嵌入式播放器上都能播放。WebM 配 VP9 加 Opus 压缩好约 30%,但仍被一些老旧生态系统拒绝。

本工具的工作原理

压缩引擎是 FFmpeg,同一个基于 C 的工具支撑着 Netflix 的编码农场、YouTube 的转码流水线,以及您用过的几乎每一个视频工具。浏览器版本是通过 Emscripten 编译为 WebAssembly 的 FFmpeg(由 Jerome Wu 于 2019 年发起,目前在 4.x 版本),产生约 30 MB 二进制,完全在浏览器标签内运行。当您拖入视频时,文件通过流式读取器被读入 WebAssembly 虚拟文件系统,因此即使 1 GB 文件也不会在上传时撑爆浏览器内存。

文件进入 WASM 文件系统后,工具用类似 -i input.mp4 -c:v libx264 -preset medium -crf 28 -c:a aac -b:a 128k output.mp4 的参数启动 FFmpeg。FFmpeg 逐帧解码源,应用您请求的任何缩放或帧率变化,把帧交给 libx264 进行视频编码,并行通过 AAC 编码音频,并把结果复用到新的 MP4 容器中。进度消息通过 JavaScript 事件监听器从 FFmpeg 的 stderr 流出,实时更新屏幕上的进度条。

ffmpeg.wasm 使用 SharedArrayBuffer 进行多线程编码,因此编码器可以并行使用多个 CPU 核心,就像桌面 FFmpeg 一样。SharedArrayBuffer 出于 Spectre 漏洞相关的安全原因要求页面带两个 HTTP 头(Cross-Origin-Opener-Policy: same-originCross-Origin-Embedder-Policy: require-corp)。本站设置了这些头,因此编码使用您所有可用的核心。下载的 blob 在内存中构建,作为合成的 <a download> 链接交给浏览器。

视频压缩简史

使用方法

  1. 上传视频: 选择或拖放需要压缩的视频文件。
  2. 设置压缩参数: 选择目标质量级别或文件大小,可选择降低分辨率或帧率。
  3. 压缩并下载: 点击“压缩视频”,处理完成后下载更小的视频文件。

为什么使用视频压缩工具?

大视频文件上传缓慢、存储成本高、在移动网络上播放不流畅。社交媒体平台、电子邮件附件和网站托管都有文件大小限制。视频压缩通过调整比特率、分辨率和编解码器效率来减小文件大小,通常可以在视觉质量损失极小的情况下实现 60~80% 的大小减少。这个基于浏览器的压缩工具会处理所有技术细节,您只需设置期望的质量并下载结果即可。

功能特点

真实世界的压缩工作流

常见陷阱及其含义

隐私:您的视频从不离开您的设备

每个基于云的视频压缩服务(FreeConvert、Clipchamp、OnlineConverter、CompressVideo.io 等数十个)都遵循相同流水线:您上传整段视频,他们的服务器运行 FFmpeg 或类似工具,您下载较小的结果。一段 200 MB 的手机视频要通过他们的基础设施上传 200 MB 加下载 50 MB。视频内容常包含敏感材料:家人或同事的脸和地点、对话和通话的音频、私人界面或工作会议的屏幕录制、揭示家或工作地点的 GPS 标记场景。大多数运营商发布隐私政策,承诺在 1 至 24 小时内删除上传并在传输中加密,大型运营商持有 ISO/IEC 27001 认证。他们有强烈的商业动机履行这些政策。但「一小时内删除」不等于「从未被看见」。在那个窗口里文件就在运营商基础设施上,对任何拥有正确权限的进程或人员可访问,并按运营商保留政策出现在日志和备份中。

本工具从不上传任何内容。完整流水线(文件选择、通过浏览器原生读取器解码、通过 ffmpeg.wasm WebAssembly 编码、通过浏览器 blob API 下载)在您的浏览器标签内运行。没有上传,没有携带视频数据的网络请求,没有日志条目。您可以在压缩前打开浏览器开发工具的「网络」标签来验证:没有任何带视频内容的请求离开。唯一的网络流量是页面本身的初始加载,加上 ffmpeg.wasm 约 30 MB 的一次性下载(后续访问缓存)。页面加载后把浏览器切到飞行模式,压缩器仍能在本地文件上工作。

何时另一个工具才是正确选择

常见问题

视频可以压缩多少?

典型的压缩比为 50~80% 的大小减少。100 MB 的视频通常可以在视觉质量损失极小的情况下压缩到 20~40 MB。具体压缩率取决于原始编解码器、内容复杂度和质量设置。

压缩会影响视频质量吗?

在中等质量设置下,大多数观众在正常观看距离下无法区分压缩视频和原片。摄像机或屏幕录制的高比特率素材压缩效果很好。从社交媒体下载的已压缩视频效果较小。

压缩视频的最佳格式是什么?

采用 H.264 编解码器的 MP4 是所有设备和平台上兼容性最高的压缩视频格式。对于网络用途,采用 VP9 的 WebM 提供更高的压缩率,但在某些设备上兼容性较低。

其他常见问题

为什么压缩比视频时长还慢?

软件视频编码在计算上很昂贵。5 分钟 1080p 短片在高质量下可能要 3 至 15 分钟来编码,取决于您的 CPU。FFmpeg 中的 -preset 标志在编码速度和压缩效率之间权衡:ultrafast、superfast、veryfast、faster、fast、medium、slow、slower、veryslow。本工具默认 medium(良好平衡)。桌面应用中的硬件编码器可以快 10 至 20 倍,但在相同质量下产生略大的文件。

我应该选 H.264、H.265 还是 VP9?

为最大兼容性(分享给任何人任何设备),选 H.264。为约 30% 更好的压缩但支持广而非通用,选 H.265(在 Apple 设备和近期 Windows 上好)或 VP9(在 Android 和 Chrome 上好)。为现代兼容下的最小文件,选 AV1。本工具默认 H.264,因为它到处都能播。

压缩会影响帧时序或同步吗?

本工具保留源帧率和音视频同步。如果您的源是可变帧率,编码器在编码期间规范化为恒定帧率,可能引入微小的时序偏移(微秒),但播放时不可见。如果您在压缩后注意到同步漂移,源很可能已经有漂移,编码器只是把它固化了。

我能不重新编码就压缩吗(stream copy)?

本工具不行。Stream copy(FFmpeg 中的 -c copy)只改变容器(例如 MP4 到 MKV)而不重新编码。要真正减小文件,编码器必须以较低比特率或不同编解码器重新编码像素数据。如果您只想改变容器格式而不改变大小,请使用视频格式转换器而不是压缩器。

为什么我压缩的文件有时看起来比预设暗示的更差?

高动态内容(运动、动作、快速场景切换)比静态内容更难压缩。在脱口秀视频上看起来很好的 5 Mbps 比特率,在同样比特率下可能在足球比赛上显示伪影。CRF 模式(本工具使用)会自适应:它给复杂场景分配更多比特,给简单场景分配更少,因此输出是恒定质量但可变文件大小。如果文件大小比恒定质量更重要,请在桌面工具中切换到目标比特率工作流。

有桌面或命令行的等效工具吗?

有,几个。HandBrake 是标准的跨平台 GUI(免费、开源,底层用同样的 FFmpeg)。FFmpeg CLI 是正典的命令行工具。Shutter Encoder 是更友好的 FFmpeg GUI。移动端 VLC 和 CapCut 有基础压缩。批量自动化方面,shell 脚本中的 FFmpeg 无人能敌。所有这些与本浏览器工具产生本质上相同的输出,因为它们共享同一底层编码器。

相关工具

视频剪辑器

视频调整器

视频转换器

图片压缩工具