提示

返回博客列表

视频文件里藏了哪些"身份证"?聊聊视频元数据与 EXIF 信息

视频文件里藏了哪些"身份证"?聊聊视频元数据与 EXIF 信息

右键点一个视频文件,选择"属性 → 详细信息",你能看到分辨率、时长、帧率、编码格式……但视频文件里还藏着更多你不知道的"身份证信息"。拍摄设备、GPS 坐标、创建时间、甚至剪辑软件版本,都可能被写进了视频文件的元数据(Metadata)里。本文拆开视频文件的"身份证夹层"。

TL;DR:视频元数据分三层——容器层(MP4/MKV 头部信息)、编码层(H.264 的 SEI 数据)、文件系统层(EXIF/文件属性)。用 ffmpeg、exiftool 或 MediaInfo 可以查看、修改、甚至清除这些信息。上传视频前,务必检查元数据是否泄露了不该泄露的信息。

目录

一、视频元数据的三个"夹层"

视频文件的元数据不是存在一个地方,而是分布在三个层面:

video.mp4
├─ 文件系统层:创建时间、修改时间、文件大小(操作系统管)
├─ 容器层:   MP4/MKV 头部字段(moov box 里的信息)
│   ├─ 时长、分辨率、码率
│   ├─ 旋转角度(手机拍的竖屏视频靠这个矫正)
│   ├─ 创建/修改时间戳
│   └─ 编码器名称、工具标识
└─ 编码层:   H.264 SEI NAL 单元
    ├─ 编码参数(Profile/Level)
    ├─ 帧类型信息
    └─ 自定义注释(部分设备会写 GPS)

最容易被忽略的是容器层的元数据——手机录的视频,MP4 的 moov box 里可能直接写着设备型号、GPS 坐标、拍摄时间。你用微信发出去,这些信息都跟着文件走了。

二、用什么工具查看元数据

MediaInfo(推荐):图形化界面,信息最全:

# 命令行版
mediainfo video.mp4
# 输出示例:
# Format: MPEG-4
# Codec ID: avc1
# Duration: 2 min 30 s
# Bit rate: 5 000 kb/s
# Width: 1 920 pixels
# Height: 1 080 pixels
# Rotation: 90°          ← 手机拍的竖屏标记
# Encoded date: UTC 2026-07-15 08:30:00
# Tagged date: UTC 2026-07-15 08:30:00

ffmpeg / ffprobe:命令行极客首选:

# 查看所有元数据
ffprobe -show_format -show_streams video.mp4

# 只看关键信息
ffprobe -v quiet -print_format json -show_format video.mp4

exiftool:专门提取 EXIF/GPS 等嵌入式元数据:

exiftool video.mp4
# 会列出 GPSLatitude、GPSLongitude 等敏感字段

三、元数据里可能泄露什么

信息类别 示例字段 风险
位置信息 GPSLatitude, GPSLongitude 暴露家庭/公司地址
设备信息 Make, Model, Software 暴露拍摄设备型号
时间信息 CreateDate, ModifyDate 暴露活动时间线
作者信息 Artist, Copyright 暴露身份
工具信息 Encoder, WritingApplication 暴露剪辑软件版本(可能有漏洞)

一个真实案例:有人把原视频直接发到网上,结果 exiftool 一查,GPS 精确到了自家卧室窗户的经纬度。所以上传视频前,务必检查并清除敏感元数据

四、如何清除/修改元数据

方法一:ffmpeg 重封装(最安全,无损画质)

# 用 -map_metadata 清空元数据后重新封装
ffmpeg -i input.mp4 -map_metadata -1 -c copy output.mp4

-map_metadata -1 的意思是"不复制任何元数据到输出文件"。视频流和音频流用 -c copy 原样保留,画质完全不变,只是元数据被清空了。

方法二:exiftool 删除指定字段

# 删除 GPS 信息
exiftool -gps:all= video.mp4

# 删除所有元数据(注意:会改原文件,建议先备份)
exiftool -all= video.mp4

方法三:修改元数据

# 修改标题和作者
ffmpeg -i input.mp4 -metadata title="新标题" -metadata author="Anon" -c copy output.mp4

五、不同容器格式的元数据差异

容器 元数据存储位置 特点
MP4 moov box(通常在文件头) 支持标准字段 + 自定义 QuickTime 标签
MKV 文件头部 + 每个轨道可带标签 最灵活,几乎什么都能存
WebM 基于 MKV 的子集 精简,不支持复杂标签
FLV script tag(onMetaData) 字段较少,主要用于直播

MP4 的 moov box 如果在文件末尾(某些录制工具会这样写),会导致"不下载完整个文件就读不到元数据"。可以用 ffmpeg 的 -movflags +faststart 把 moov 移到文件头:

ffmpeg -i input.mp4 -c copy -movflags +faststart output.mp4

六、合规与温馨提示

技术是中性的,用法见人心。我们强烈建议:

  • 上传视频前检查并清除个人敏感元数据,保护自己的隐私;
  • 不利用元数据追踪、定位他人,尊重他人隐私权;
  • 仅下载你自己拥有版权平台明确允许保存的内容。

视频元数据就像文件的"隐形身份证"。它本身没有好坏,但携带的信息可能远超你想象。下次发视频给别人之前,花 5 秒跑一遍 ffmpeg -map_metadata -1,就能安心得多。如果你用 exiftool 查到了什么意想不到的字段,欢迎在评论区分享。

本文由 VidDown 技术博客原创发布。VidDown 是一个免费、本地优先的在线视频解析与开发者工具站,支持多平台视频下载、格式转换、m3u8 合并等实用功能,所有数据处理均在本地完成,保护你的隐私。欢迎访问 www.viddown.cn 体验。

想亲手试试?用 VidDown 一键解析下载

粘贴视频链接即可解析,多平台支持、网页端即用;下载桌面客户端解锁海外平台本地解析,开通会员更享不限次下载。

顶部