视频旋转
把躺着的视频转正。不上传,文件多大都一样。
没有大小限制:只读取文件的索引,不读画面数据。
- 全部免费不用注册、没有次数限制、没有付费档。
- 什么都不上传文件在你自己的设备上处理,不会到服务器上去。
- 结果不打折没有水印,不降质,不限文件大小。
- 改动都写下来每一次修复、每一个新工具,都记在更新日志页面上。
这个工具能做什么
拖入一个视频,这个页面把它转正,多数情况下一个像素都不用动。MP4 或 MOV 文件里带着一个 3x3 的显示矩阵,告诉播放器播放时要把画面转多少度;横着播放的片子,通常是在某次剪辑或导出里把这个矩阵弄丢了。把它写回去,要改写的只是 36 字节的矩阵;紧挨着它的存储尺寸原样保留。视频流原样复制过去,所以保存下来的还是同一幅画面、同样的画质。
什么都不上传,而这一点在这里比本站别处都更要紧。手机拍的三分钟片子有 200 到 400 MB,别的旋转服务都要你先把它从家里的宽带推上去,才肯看一眼。这个页面就地读取文件,只需要文件头部或尾部那个小小的索引——叫做 moov 的盒子,通常几百 KB。画面数据从不读进内存,只是被引用,所以这里没有大小限制:一段 2 GB 的录像和一段 20 MB 的一样快。
怎么用
把文件拖到页面上,或者点击选择一个。首先看到的是文件自己对朝向的说法,要么是「这个文件里没有旋转标记」,要么是「旋转标记:顺时针 90°」。在线旋转工具一般不会告诉你这个,但值得先知道:它说明这段片子横着,是因为标记丢了,还是像素本来就是那样录下来的。
两个箭头按钮各把画面转四分之一圈,中间的按钮把它上下颠倒过来。预览不是近似效果——播放器播的就是成品文件,和你按保存拿到的是同一批字节;旋转时播放位置会保留,所以可以停在一个上下分明的画面上,看着它落到正确的方向。保存的文件保持原扩展名,用原文件名加上 -rotated。
输出下面有两种做法。旋转标记是默认项,工作方式就是上面说的。重新编码会把视频解码,再把新的朝向写进画面本身,用的是浏览器的 WebCodecs 接口,编码跑在你的显卡上。它花的时间和片长成正比,而且会重新压缩画面,这正是它不作为默认项的原因。
标记不够用的时候
旋转标记能被当前的浏览器、iOS 和安卓上的相册应用正确读取,上传到 YouTube、Instagram 和 TikTok 时也一样。仍然忽略它的,是较老的桌面播放器、少数第三方安卓播放器,以及一些剪辑软件的导入环节——刚修好的片子进到时间线上又横过来了。如果视频要送去这种地方,把输出切换成重新编码。WebM 和 MKV 根本没有对应的字段,所以这类文件一律走重新编码,页面会自动切换并说明原因。重新编码需要 WebCodecs,Chrome、Edge 和 Safari 16.4 有;没有它的地方,标记这条路照样能走。如果某个文件的矩阵里存的是缩放或镜像,而不是干净的四分之一圈旋转,改写它会让画面变形,所以页面会放过这个文件,改为提供重新编码。镜像功能完全没有提供,因为播放器对镜像矩阵的支持参差不齐,做出来的结果可能在你这里看着正常,发出去到处都是错的。
背景:旋转标记是怎么来的
手机的相机传感器以固定的一个方向装在机身上,读出来的永远是横画幅。把手机竖着拿,没有任何东西去转像素;相机是往文件里写一个矩阵,说明播放时要把画面转 90 度。这套机制比手机老得多。它来自苹果的 QuickTime 文件格式,这份 2001 年的规范成了第一版 MP4 文件格式的基础。随后 MPEG-4 Part 14 以 ISO/IEC 14496-14:2003 的编号发布,容器格式又被推广成 ISO 基础媒体文件格式,即 ISO/IEC 14496-12:2004。轨道头盒子 tkhd,以及它那个由 16.16 定点数组成的 3x3 矩阵,一路原封不动地传了下来——所以同样的 36 字节,既适用于 2003 年写下的一个 MOV,也适用于上周刚买的手机拍出来的 MP4。
哪些场景用得上
最日常的情况,是手机拍的素材传到电脑上就躺着,往往是在某个聊天软件里转过一手,或者某次导出把标记丢了。剪辑的人会在片子进时间线时撞上它,与其给每个镜头都加一个变换,不如把文件一次修好。行车记录仪和监控摄像头的导出是单独的一类,因为这些机器的传感器怎么装得进外壳就怎么装。如果你要的是一张静帧而不是整段片子,截个图,交给图片裁剪或图片旋转;要是某一帧里有二维码,二维码解码器可以直接从那张截图里读出来。如果你要的只是里面的声音,视频转 MP3 同样不重新编码就能把音轨取出来。
常见问题
旋转视频会降低画质吗?
默认设置下不会。画面数据是逐字节复制过去的,改变的只有朝向标记,所以保存下来的文件和原文件一模一样。重新编码那个选项确实会重新压缩,这也是它不作为默认项的原因。
有文件大小限制吗?
没有。只会读取文件头部或尾部那个小索引,所以一段 2 GB 的录像和一个小文件一样快,文件也始终不会离开你的电脑。
保存之后我的播放器还是横着放,为什么?
那个播放器忽略了旋转标记。把输出切换成重新编码再存一次,它会把新的朝向写进画面本身,这样就不需要任何东西去解释一个标记了。
能旋转 WebM 或 MKV 文件吗?
能,但只能走重新编码。这两种容器里没有可供改写的旋转字段,所以画面必须重新编码一遍。
能把视频水平镜像或翻转吗?
不能。各家播放器对镜像矩阵的支持并不一致,镜像过的文件可能在你检查用的播放器里是对的,换一个就错了。