音视频格式与压缩怎么选
容器和编码是两回事:把 .mov 的扩展名改成 .mp4 不会让文件变小,换编码才会。
体积由码率决定而不是分辨率,画质由编码与码率共同决定;扩展名只代表容器,不改变编码,改后缀不等于转格式。
音视频处理里最普遍的一个误解是「改扩展名就是转格式」。把 a.mov 重命名成 a.mp4,文件名变了,但里面的视频流仍然是原来那套编码——播放器该打不开还是打不开,体积一个字节都没少。真正决定文件能否播放、体积多大的,是封装它的「容器」和压缩画面的「编码」这两层东西,而扩展名只对应容器这一层,并且改名字连容器都没换。
理解了这一点,后面的选择就顺了:要让文件变小,靠的是降低码率(重新编码);要让文件能在某个平台播放,靠的是换成该平台支持的编码组合;要无损地做剪辑、合并、加字幕,则应当尽量避免重新编码。下面按容器与编码、码率、有损与代际损失、音频、字幕五条线分开说。
选型对照表
看逐项详解 →| 你要做的事 | 推荐工具 | 为什么用这个 | 注意 |
|---|---|---|---|
| 把视频压到更小体积 | 视频压缩 | 自定义压缩质量,直接降码率重新编码 | 有损且不可逆,先留原片 |
| 把视频转成 GIF 动图 | 视频转GIF | 可设宽度和帧率,控制动图体积 | GIF 只有 256 色,适合短片段 |
| 从视频里提取音轨 | 视频转音频 | 导出 MP3 / WAV / OGG,取 BGM 或台词 | 提取不影响原视频,但导出有损格式会再损失一次 |
| 转换音频格式或调整比特率 | 音频格式转换器 | 支持 MP3 / WAV / OGG / AAC 互转并调参数 | 转成有损格式且比特率偏低会明显掉质 |
| 合并多个视频为一个 | 视频合并 | 支持 MP4 / WebM / AVI / MOV / MKV | 各片段的编码与分辨率最好一致 |
| 合并多个音频 | 音频合并 | 多文件按顺序拼接,适合做播客串烧 | 采样率不同会统一重采样,注意音质 |
| 剪掉视频的头尾 | 视频截取 | 可视化时间轴精确选取起止点 | 尽量选无损剪切,避免整段重编码 |
| 剪掉音频的头尾 | 音频裁剪 | 可视化选取片段,支持常见格式 | 无损格式裁剪不会掉质 |
| 把横屏视频裁成竖屏 | 视频画面比例裁剪计算器 | 按目标比例算出裁剪尺寸与坐标 | 裁剪会切掉画面,注意主体是否在框内 |
| 给不合适的画布补黑边 | 画面填充黑边计算器 | 等比缩放后填充黑边,不裁掉内容 | 补边比裁剪安全,但会有黑边 |
| 给视频加文字或图片水印 | 视频加水印 | 可设位置、透明度、字号和颜色 | 水印需要重编码,尽量一次做完 |
| 视频加速或慢放 | 视频调速 | 0.25x 到 4x,常见速度有快捷按钮 | 变速会连带改变音频音高,需要单独处理 |
| 旋转或翻转画面 | 视频旋转 | 支持 90 / 180 / 270 度与水平垂直翻转 | 手机竖拍横放是最常见的使用场景 |
| 字幕格式互转 | 字幕格式转换器 | SRT / WebVTT / ASS 三种格式互转并自动识别 | 不同格式支持的样式能力不同 |
| 字幕整体提前或延后 | 字幕时间轴批量平移 | 毫秒级批量平移所有时间码 | 平移前先确认偏移量是恒定的 |
| 检查字幕读起来会不会太快 | 字幕阅读速度CPS检测 | 按每秒字符数对照平台规范判定 | 儿童内容的阅读速度上限更严 |
| 检查字幕有没有超出行长 | 字幕折行与行长检查器 | 按语言与屏幕方向给出每行字符上限 | 折行后可能变成三行,需要人工精简 |
| 估算导出后大概多大 | 视频文件大小估算器 | 按时长与音视频码率预估文件体积 | 估算值受实际编码效率影响,仅供参考 |
| 估算音频文件的体积 | 音频文件大小计算器 | 按采样率、位深、声道算 WAV,或按比特率算有损格式 | 未压缩 WAV 体积是计算公式而非近似 |
| 确定直播该用多少码率 | 直播推流码率计算 | 按分辨率与帧率给推荐区间并换算上传带宽 | 带宽要留余量,不能贴着码率上限 |
| 让音频响度符合平台标准 | 音频响度 LUFS 换算器 | 对照各流媒体平台的响度目标值 | 平台会做响度归一化,过响反而被压 |
| 估算批量转码要多久 | 视频导出耗时估算器 | 按编码速度、任务数、并发数与重试率计算 | 实际耗时受机器性能影响很大 |
| 规划多清晰度转码的存储 | 多清晰度转码存储估算器 | 按码率阶梯估算总存储与带宽占用 | 档位越多存储增长越快 |
| 处理帧率不一致的素材 | 帧率转换与丢帧计算器 | 计算常见帧率互转的速度变化与丢帧 | 混合帧率素材容易出现音画不同步 |
表格中列出的工具均可直接点击进入,全部免费、无需注册。
逐项详解
全部工具总览 →1容器与编码:先分清这两层
一个视频文件其实是一个「盒子」里装了两条「数据流」:盒子叫容器(MP4、MOV、MKV、AVI、WebM),视频流和音频流则分别用各自的编码方式压缩(视频常见 H.264、H.265、VP9、AV1;音频常见 AAC、MP3、Opus)。扩展名只说明盒子是哪一种,完全不说明里面装了什么。所以会出现这些情况:两个都是 .mp4 的文件,一个能在老设备上播放、另一个不能(编码不同);把 .mov 改名成 .mp4 之后依然打不开(内容没变)。真正的「转格式」必须做解封装再重新编码或重新封装,这一步才有实际意义。
2码率才是体积与画质的真正开关
很多人压缩视频时第一反应是降低分辨率,但更直接的杠杆是码率。文件体积近似等于「(视频码率 + 音频码率)× 时长 ÷ 8」,与其他参数没有直接关系——也就是说,一个 720p 但码率充足的视频,可能比一个 1080p 但码率被压得很低的视频更清晰、体积还更大。分辨率决定的是画面的细节上限,码率决定的是「有多少信息量去填满这个上限」。实践建议:先按目标平台的推荐码率选一个值(直播推流和平台上传的要求不同),再决定分辨率,而不是反过来。
3代际损失:尽量不要反复转码
有损编码的不可逆性在音视频里有个专门的说法叫「代际损失」——每转码一次就损失一次信息,错误会累积。把一段 H.264 视频转成 GIF 再转回 MP4、或者先压一遍再压一遍,画面会一次比一次糟,尤其表现为暗部色块、文字边缘发虚、快速运动处出现拖影。正确的做法是:始终从最原始的素材出发,一次性按最终需求导出,中间步骤尽量用「不重新编码」的方式完成(例如纯裁剪、纯合并时只切分封装而不重压)。判断某个操作会不会重编码,看它是否要求改变码率、分辨率、编码格式或帧率——只要改了其中任何一项,就必然重编码。
4音频:有损无损之外,还有响度这关
音频格式分成两派:有损(MP3、AAC、OGG)通过丢弃听感不敏感的成分来压缩,无损(WAV、FLAC)完整保留。需要留意的是 WAV 并未压缩,它的体积可以用公式精确算出:采样率 × 位深 × 声道数 ÷ 8 × 时长,所以一首 3 分钟的 44.1kHz / 16bit 立体声约 30 MB。比格式更容易被忽略的是响度:主流流媒体平台都对上传内容做响度归一化(把整体音量调整到统一目标值),所以你做得越响,平台反而会把它压得越低,动态范围变差。上传前按目标平台的响度目标调整,能让你的作品在播放列表里听起来和别人一样响。
5字幕:格式、同步与可读性
字幕的三种常见格式各有分工:SRT 最简单、兼容性最好,几乎处处能读;WebVTT 是网页视频的标准,支持基本的定位与样式;ASS / SSA 支持丰富的样式与特效,常见于动画字幕组。三者可以互转,但要注意「从简单转复杂」不会凭空获得样式,「从复杂转简单」则会丢掉特效。除了格式,另两个容易被忽略的问题是同步与可读性:前者靠批量平移时间轴解决(当整段字幕统一偏移时),后者有明确的行业标准——阅读速度用每秒字符数衡量,成人内容的常见上限约 20,儿童内容更严;每行字符数也有限制,超了就必须精简文案而不是继续折行。
关于「音视频格式与压缩怎么选」的常见问题
把 .mov 直接改名成 .mp4,是不是就转换格式了?
不是。扩展名只是文件名的一部分,改名不会改变文件内部任何内容——容器没变、编码也没变。播放器打不开是因为它不认文件里的编码,而不是因为扩展名。真正的格式转换需要把视频流解出来,再用目标格式重新编码或重新封装,必须由工具实际处理数据才能完成。
视频压缩后变模糊了,怎么压才不糊?
关键在码率而不是分辨率。降低分辨率只是减少了画面的像素量,真正决定清晰度的是每秒分配了多少数据量(码率)。如果目标画质要求高,应该保持分辨率、给足码率;如果对体积更敏感,可以适当降低分辨率但同时保证码率不低到产生明显块状伪影。另外压缩是有损的,尽量从原片一次性导出,不要反复压缩。
H.265 比 H.264 省一半码率,为什么我的视频有的设备打不开?
因为 H.265(HEVC)的兼容性远不如 H.264。H.264 已被几乎所有设备和浏览器支持了近二十年,而 H.265 受专利授权影响,部分浏览器和系统不内置解码支持,老旧设备更是完全没有。所以面向最广受众发布时,H.264 仍是安全选择;只有在明确知道播放环境支持时才用 H.265 换取更小的体积。
为什么音频转成 MP3 之后音质明显变差了?
三个可能的原因叠加:一是有损格式本身会丢弃信息;二是比特率设得太低,低比特率下高频细节和立体声空间感损失最明显;三是源文件已经是有损格式,再转一次就是二次损失,相当于在已经损失过的数据上再压一遍。要尽量避免转码链路过长,并且对音乐类内容使用较高的比特率(如 192kbps 以上)。
上传到视频平台前,音频响度需要调吗?
建议调。主流流媒体平台都会对上传内容做响度归一化,把整体音量拉到统一的目标值。如果你把音量做得过大,平台会把它压下来,结果是动态范围被压缩、听起来发闷;如果做得过小,又不划算。按照目标平台公布的响度目标值调整,能让作品在该平台的播放列表里与他人作品听起来响度一致。
字幕和画面不同步,要一条条改吗?
如果整段字幕是统一偏移的(比如全部提前或延后了同样的秒数),不用逐条改——用批量平移工具把全部时间码整体挪动固定秒数即可,毫秒级精度。只有当偏移量不一致时才需要逐条调整,那种情况通常意味着翻译或压制环节出了问题,应当从源文件重新生成字幕。
相关指南与场景合集
全部指南 →本篇涉及的全部 24 款工具
纯浏览器本地压缩视频文件,支持MP4/MOV/AVI/WebM格式,自定义压缩质量,一键减小视频体积不发烫
在线转换MP3、WAV、OGG、AAC等音频格式,支持调整比特率、采样率,纯浏览器本地处理
从视频中提取音频,支持导出MP3/WAV/OGG格式,可提取BGM/电影台词/演唱会片段
输入时长、视频码率与音频码率,估算导出视频的文件体积,并给出常见码率下的体积对照,帮助提前规划存储与上传,纯浏览器本地计算。
按采样率、位深与声道数计算未压缩 WAV 体积,或按比特率估算 MP3/AAC 等有损格式的大小,支持时长换算与格式对比,纯浏览器本地计算。
按分辨率与帧率给出推荐推流码率区间,并换算出所需上传带宽与每小时流量消耗,避免卡顿或画质糊,纯浏览器本地计算。
视频转GIF - 将MP4/WebM等视频转换为GIF动图,支持自定义宽度和帧率,基于ffmpeg.wasm纯前端处理
在线裁剪截取视频片段,可视化时间轴精确选取开始和结束时间,纯浏览器本地处理
对照 Spotify、Apple Music、YouTube、EBU R128 等 13 个平台的响度标准,输入当前整轨响度立刻算出需要调整多少 dB、以及真峰值上限建议。
在线字幕格式转换,支持 SRT、WebVTT、ASS SSA 三种格式互转,可自动识别源格式,完整保留时间轴与文本内容,纯浏览器本地处理不上传文件。
把 SRT 字幕的所有时间码整体提前或延后指定秒数,解决字幕与画面不同步的问题,支持毫秒级精度与越界保护,纯浏览器本地处理。
在线检测字幕阅读速度CPS,逐条计算每秒字符数并对照 Netflix、BBC 等行业标准判定是否过快,支持中英文字幕批量检查
在线检查字幕单行字符数是否超过平台规范,按语言与屏幕方向给出每行上限、折行后行数与逐条检测表,支持中英日韩
在线合并拼接多个视频,支持MP4/WebM/AVI/MOV/MKV格式,纯浏览器本地处理不需上传
多个音频文件在线合并为一个,支持MP3/WAV/OGG/AAC格式,纯浏览器本地处理不需上传
在线裁剪截取音频片段,支持MP3/WAV/OGG/AAC格式,可视化时间轴精确选取,纯浏览器本地处理
把横屏视频裁成竖屏或方形时,算清裁剪后的像素尺寸与裁剪区域坐标,支持常见比例与自定义比例,并给出铺满目标画布所需的放大倍数。
在线计算视频等比缩放后填充到目标画布的实际尺寸与黑边宽度,支持 letterbox 上下边、pillarbox 左右边,并生成 ffmpeg 命令
为视频添加文字或图片水印,支持自定义位置、透明度、字体大小和颜色,纯浏览器本地处理
在线调整视频播放速度,支持0.25x慢放到4x加速,常用速度快捷按钮,纯浏览器本地处理
在线旋转翻转视频,支持90度/180度/270度旋转和水平/垂直翻转,纯浏览器本地处理
在线估算视频批量转码与导出的总耗时,支持按编码速度倍数、任务数量、并发数与失败重试率计算完成时间与批次数
在线估算 HLS/DASH 多清晰度码率阶梯的总存储与带宽占用,内置 Apple HLS 九档、精简五档、移动三档等预设
在线计算 23.976/24/25/29.97/30/50/59.94/60 帧率互转的速度变化、音高变化与增删帧数,内置 PAL 加速与去加速预设
速查在线工具箱