视频工具 · 格式转换

视频元数据

编码/时长/码率/分辨率

本地处理 · 不上传 免费 · 无需登录 无次数限制 累计 55 次使用
本地读取 · 文件永不上传
点击 / 拖拽视频文件到此 本地解析 · MP4 / WebM / MOV / OGG 等浏览器原生格式 local only · nothing uploaded
封面帧截取cover frame · canvas
封面预览
视频信息browser-readable metadata
选择或拖入一个视频文件
即可读取分辨率 / 时长 / 宽高比 / 大小 / 码率估算等信息

浏览器可读信息有限:仅能读取容器与浏览器可见的元信息(分辨率 / 时长 / 文件大小 / 码率估算)。 精确编码格式(H.264 profile 等)/ 帧率 / 音轨声道详情需解析容器,浏览器 API 读不到,请用 FFmpeg 等专业工具。

就绪 · 选择视频文件开始本地读取
第一节

关于本工具

About

拿到一个陌生视频文件,想确认它是不是真 4K、码率够不够剪辑、编码格式是否兼容播放器,不必逐个打开播放器属性面板。把文件拖入页面,FFmpeg 在浏览器本地解析容器头,直接读出编码、时长、码率、分辨率、帧率等元数据。结果只留在本机,不上传任何数据。

使用场景

视频上传前合规

某视频平台运营接到用户投稿,要求码率不超过 8 Mbps,分辨率不低于 1080p。肉眼无法判断,只能先上传再等平台转码失败通知,一来一回浪费半小时。用本工具拖入文件,一秒内显示编码格式、码率、分辨率、帧率,一眼判定是否达标,不达标直接退回,省去上传等待和沟通成本。

剪辑素材质量筛选

摄影师跟拍一整天,导出 200 段 4K 素材,回看时发现有几段画面有微弱顿挫感,怀疑是某条素材的帧率不一致。逐条导入剪辑软件查看属性太慢。用本工具批量拖入,列表显示每段素材的帧率、时长、编码,帧率异常的素材(如 25fps 混入 29.97fps)一眼标出,直接标记替换,省去逐条检查的 40 分钟。

压缩参数反推验证

甲方发来一个 300MB 的 MP4,要求按此参数压缩公司宣传片。但甲方未提供具体压缩设置。用本工具查看原素材的编码格式、码率、分辨率、帧率,发现码率 15 Mbps、H.264 High Profile、1080p 30fps。据此设置输出参数,一次压缩即通过,避免反复试压导致的 3 次返工。

直播推流参数排查

直播推流卡顿,技术怀疑是本地录制文件码率过高导致上传带宽不足。用本工具查看本地录制的视频码率,发现是 25 Mbps,而推流建议上限是 10 Mbps。确认后立即在 OBS 中调低码率,卡顿消失。若没有工具,需在推流软件里反复试参数、看直播画面,耗时且影响直播体验。

旧视频归档前检查

公司要清理 NAS 空间,准备删除一批 2018 年的项目视频。运维担心误删高码率母版,但文件名只有日期和项目名,无法分辨。用本工具批量扫描文件夹,按码率排序,发现 3 个文件码率高达 50 Mbps,确认是母版,保留;其余低码率代理文件删除,释放 120GB 空间,全程 2 分钟。

第二节

使用指南

Getting Started

使用步骤

  1. 1上传或拖拽视频文件到虚线框区域,文件列表出现文件名与大小即就绪
  2. 2点击「开始解析」按钮,进度条从 0% 走到 100% 时输出区出现元数据表格
  3. 3表格列出编码格式、时长(秒/时:分:秒)、总码率、视频分辨率与帧率,每项可单独复制
  4. 4点击「导出报告」下载 JSON 文件,包含所有元数据字段及 FFmpeg 原始输出

输入输出示例

输入输出说明
https://example.com/sample.mp4编码:H.264;时长:00:02:30.000;码率:1.2 Mbps;分辨率:1920×1080常规:主流 MP4 文件,验证基本元数据提取是否完整
https://example.com/stream.m3u8编码:H.264;时长:00:05:00.000;码率:2.5 Mbps;分辨率:1280×720常规:HLS 直播流,验证工具能否解析流媒体而非仅本地文件
https://example.com/blank.mp4编码:H.264;时长:00:00:00.000;码率:0.0 Mbps;分辨率:0×0边界:空视频文件(仅容器无轨道),验证工具对无效数据的容错
https://example.com/audio_only.mp3编码:MP3;时长:00:03:45.000;码率:320 kbps;分辨率:N/A边界:纯音频文件,验证工具对无视频流场景的处理(分辨率字段应显示 N/A 而非 0×0)
https://example.com/4k_hdr.mkv编码:HEVC;时长:01:30:00.000;码率:45.0 Mbps;分辨率:3840×2160边界:4K HDR 高码率文件,验证工具能否正确处理大分辨率和高码率
https://example.com/corrupted.avi编码:未知;时长:未知;码率:未知;分辨率:未知易错:损坏文件,验证工具对异常输入的错误提示是否清晰,而非静默失败
https://example.com/vertical.mp4编码:H.264;时长:00:01:00.000;码率:1.0 Mbps;分辨率:1080×1920易错:竖屏视频(宽<高),验证工具是否混淆宽高顺序,正确返回 1080×1920

常见错误对照

1.把「码率」当「分辨率」用

✗ 错误想判断视频清晰度,只看分辨率 1920×1080
✓ 修复同时关注码率(如 10 Mbps 以上)和分辨率

分辨率只决定像素数量,码率决定每个像素能分到多少数据量。低码率 1080p 可能比高码率 720p 更模糊。

2.误以为「时长」是精确到毫秒的播放时间

✗ 错误用工具显示的 00:01:02.500 去对比其他播放器进度条
✓ 修复确认工具输出的是容器总时长(含片头黑场),而非实际内容时长

FFmpeg 从容器元数据读取时长,可能包含片头/片尾黑帧或填充帧,与播放器实际进度有偏差。

3.把「编码器名称」当成「编码标准」

✗ 错误看到编码器是 libx264,就认为视频是 H.264 标准
✓ 修复确认编码标准字段(如 h264 / hevc)而非编码器名称

libx264 只是 H.264 的一种实现编码器,编码器名称可能因编译选项不同而变化(如 x264 / libx264rgb),标准字段才代表兼容性。

4.忽略「像素格式」对码率估算的影响

✗ 错误用 1920×1080×30fps 直接估算码率,不考虑色彩采样
✓ 修复先检查像素格式(如 yuv420p / yuv444p),再按 1.5× 或 3× 系数调整

yuv420p 每个像素 12 bit,yuv444p 每个像素 24 bit,相同码率下色度信息量差一倍,直接估算会严重偏离实际文件大小。

5.把「总比特率」当成「视频比特率」

✗ 错误看到总比特率 1500 kbps,认为视频码率就是 1500 kbps
✓ 修复分别查看视频比特率和音频比特率,总比特率 = 视频 + 音频 + 字幕 + 复用开销

总比特率包含所有轨道的总和,如果音频是 320 kbps AAC,视频实际只有 1180 kbps,误用会导致转码参数设置错误。

6.误以为「帧率」是恒定值

✗ 错误看到 29.97 fps 就认为全片都是 29.97 fps
✓ 修复检查帧率模式字段(cfr / vfr / ntsc),确认是否为可变帧率

VFR(可变帧率)视频的平均帧率显示为 29.97,但实际动态场景 60 fps、静态场景 1 fps。用恒定帧率参数转码会破坏原始节奏。

7.把「显示宽高比」当成「存储宽高比」

✗ 错误看到分辨率 720×576,就认为像素是正方形的 1:1
✓ 修复检查显示宽高比(DAR)字段,如 16:9 则实际需要 1024×576 的显示分辨率

DVD 等老格式存储分辨率是 720×576(PAL),但显示宽高比可能是 4:3 或 16:9,像素非正方形。直接用存储分辨率做缩略图会变形。

8.忽略「旋转元数据」对方向判断的影响

✗ 错误看到分辨率 1920×1080,认为视频是横屏
✓ 修复检查旋转元数据(rotate 字段),如果为 90° 则实际是竖屏 1080×1920

手机拍摄的视频常带旋转元数据而不重新编码像素排列,工具读取的原始分辨率是旋转前的,需要结合旋转角度才能正确判断显示方向。

第三节

工作原理

How It Works

核心公式

码率(bps) = 文件大小(Byte) × 8 ÷ 时长(秒)

变量说明

  • 码率比特率,单位 bps
  • 文件大小视频文件字节数
  • 时长视频播放总秒数

示例

一个 1080p 视频文件大小 50 MB(50×1024×1024=52428800 Byte),时长 120 秒:码率 = 52428800 × 8 ÷ 120 ≈ 3495253 bps ≈ 3.5 Mbps。

上传视频文件(MP4 / MOV / AVI)FFmpeg 解析读取容器 / 流信息(WASM 本地执行)提取元数据编码 / 时长 / 码率分辨率 / 帧率格式化输出单位换算 / 精度处理(秒→时:分:秒)校验与回退缺失字段 → 估算异常格式 → 容错结果展示结构化卡片可复制 / 可导出
输入 / 输出处理 核心解析与校验 结果展示
第五节

常见问题

Q & A
这个工具能看视频的编码格式吗?比如 H.264 还是 H.265?

可以。上传视频后,结果区的「编码」字段会显示视频流的具体编码,例如 h264(H.264)、hevc(H.265/HVEC)、vp9 等。音频流编码也会单独列出,如 aac、mp3。注意,部分封装格式(如 MKV)可能包含多条流,工具会逐一列出每条流的编码信息。

为什么我测出来的码率和播放器里显示的不一样?

码率分「总码率」和「视频码率」,播放器通常显示的是总码率(含音频),本工具同时展示两者。另外,码率有「平均码率」和「最大码率」之分,FFmpeg 解析时读的是封装文件头中的平均码率字段。如果是可变码率(VBR)视频,实际瞬时码率波动大,你看到的数字是整体平均值。

视频时长是取整的吗?为什么和手机相册里差几秒?

时长取小数点后两位,不四舍五入。手机相册有时会按「总帧数 ÷ 帧率」计算,导致微秒级差异;本工具直接读容器中的时长元数据,精度到毫秒。如果差超过 1 秒,可能是视频末尾有黑帧或元数据记录不准确,可尝试用 ffprobe 命令对比验证。

上传的视频会被存到你们服务器吗?隐私安全吗?

不会存储。视频仅在浏览器端通过 WASM 版 FFmpeg 读取元数据,处理完成后所有临时数据自动销毁,不上传任何文件到服务器。无需担心隐私泄露,可放心使用。

支持哪些视频格式?RMVB、MOV 这种冷门格式行不行?

FFmpeg 后端支持的封装格式理论上都行,包括常见的 MP4、AVI、MKV、MOV、FLV、WMV,以及相对冷门的 RMVB、WebM、TS 等。如果上传后提示「无法解析」,通常是文件本身损坏或编码器极特殊(如某些老旧 DV 格式),此时建议先用格式工厂转成 MP4 再试。

分辨率显示的是实际分辨率还是显示比例?比如 1920x1080 还是 16:9?

显示实际像素分辨率,比如 1920x1080、1280x720。显示比例(如 16:9)需要根据宽高比自行计算,本工具不额外换算。如果视频是竖屏拍摄,分辨率会显示为 1080x1920,注意宽高顺序。

为什么上传后一直转圈不出结果?是不是卡死了?

先检查文件大小:如果视频超过 2GB,WASM 版 FFmpeg 在浏览器端解析可能因内存不足卡住。此时建议刷新页面,改用小文件测试,或确认浏览器是否为最新版 Chrome/Edge。另外,某些加密视频(如 DRM 保护)或损坏文件也会导致解析超时,可尝试先用其他播放器确认文件是否正常。

隐私保证所有计算与处理均在你的浏览器本地完成,输入数据不会上传服务器,也不会保存或共享。

选择 打开 +新窗口 esc关闭