0%

通过修改注册表添加右键菜单项

这篇文章是我无聊刷知乎的时候看见一篇用ffmpeg分离音频的文章之后,觉得这个小技巧可能挺有用,所以写的。

教程

ffmpeg怎么安装自己去网上查,这里只说注册表的操作。文章中提到了压缩视频、分离音频,还有一个我忘了是什么,我只复制了压缩视频的部分,因为我经常玩游戏录屏然后发给朋友看秀操作,所以我只加了压缩视频部分,所以只有两个脚本。

第一个脚本为add_ffmpeg_context.reg,内容如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\SystemFileAssociations\.mp4\shell\CompressVideo]
@="一键压缩mp4"

[HKEY_CLASSES_ROOT\SystemFileAssociations\.mp4\shell\CompressVideo\command]
@="\"D:\\tools\\compress_mp4.bat\" \"%1\""

[HKEY_CLASSES_ROOT\SystemFileAssociations\.mov\shell\CompressVideo]
@="一键压缩mp4"

[HKEY_CLASSES_ROOT\SystemFileAssociations\.mov\shell\CompressVideo\command]
@="\"D:\\tools\\compress_mp4.bat\" \"%1\""

第二个脚本为compress_mp4.bat,内容如下:

1
2
3
4
5
6
7
8
@echo off
set "input=%~1"
set "filename=%~n1"
set "ext=%~x1"
set "output=%~dp1%filename%_%ext%"

ffmpeg -i "%input%" -vcodec libx264 -crf 24 -b:v 1200k -vf scale=1280:720 -r 24 -b:a 96k -ar 44100 "%output%"

然后双击add_ffmpeg_context.reg,运行就可以了。

我为了试验文章说的是否真的这么无脑,所以我没仔细看脚本我就直接运行了,如果你也直接运行了,并且右键一个.mp4的视频文件的时候发现右键菜单里面多出了一项乱码项,点了之后弹出了个打开方式,那么恭喜你,可以往下看如何补救了。

使用注册表编辑器

先来说前面有哪些问题,乱码是因为使用了UTF-8编码,中文的Windows系统都是gb2312编码,没有按照预想的压缩视频是因为脚本的路径没有改,除非你运气非常好恰好把脚本放在了D:\\tools\\compress_mp4.bat,接下来说如何补救。

首先打开注册表编辑器,按下win键,输入注册表编辑器,然后打开,大概长这样。

然后翻看前面的add_ffmpeg_context.reg这个脚本,注意到这里

1
[HKEY_CLASSES_ROOT\SystemFileAssociations\.mp4\shell\CompressVideo]

括号里面是一个注册表项的路径,我们把这个复制粘贴到注册表编辑器的路径栏,注意去掉括号,像下面这样
alt text

右键右边界面的默认,然后点击修改,把乱码改成自己需要的提示就行了,我这里压缩720p是我自己改的。

后面的也是同上的操作,粘贴

1
HKEY_CLASSES_ROOT\SystemFileAssociations\.mp4\shell\CompressVideo\command

或者直接在左边树状图里面点那个command,然后右键右边界面的默认,点击修改,把compress_mp4.bat的路径改成你电脑上的compress_mp4.bat的路径,然后.mov的也同理,

接下来再右键视频,应该显示正常了,并且点击之后会出来个命令行窗口,这时你打开任务管理器就会看见你的CPU100%占用,过一会就能听见风扇狂转的声音了。
alt text

如果想要使用GPU加速或者其他功能就自己上网搜索然后修改compress_mp4.bat吧。如果不需要了就把对应的注册表项删了就可以了。