Knock knock, English Help.
将 MPV 跟 EMMS/ffmpeg/yt-dlp/Org-Mode 等有机结合,娱乐、学习两不误:
结合下面项目可以更方便观看 B 站视频:
这是很久之前知识焦虑的时候,为了消化收藏夹中的视频而写。
最近几天将其翻新了一下。因为发现用它来拉片、看直播,简直不要太爽!
基于 EMMS,请确保其已安装。然后下载并加载本包 (require 'mpvi)
。
之后安装相关依赖。除了 mpv 是必须的外,其他的是可选的:
对于 Arch Linux 用户,一键安装依赖:
yay -S mpv yt-dlp ffmpeg tesseract danmaku2ass-git seam-git xclip
对于 Windows 用户,danmaku2ass 和 seam 需要从 Github 下载,其他可以通过 winget 或 scoop 安装:
winget install mpv yt-dlp ffmpeg Tesseract-OCR
核心命令:
mpvi-open
,打开视频文件或网络链接mpvi-seek
,通过 minibuffer 的方式对播放的视频进行控制mpvi-insert
,在 org buffer 中插入当前播放视频的带时间戳的链接mpvi-clip
,借助 ffmepg/ytdlp 实现视频的下载、剪辑、转码mpvi-emms-add
,向 EMMS playlist 中添加视频路径或链接其中 mpvi-seek
是最常用的,它通过 minibuffer 集成了很多功能。比如:
i
在 buffer 中插入时间戳链接Space
切换暂停与播放j/k/l
调整播放速度n/p/N/P/M-n/M-p/C-l
等实现各种维度的播放进度调整s/C-s/C-i
等实现各种方式的截图r/C-r
对当前播放页面进行 OCR 识别并复制结果t/C-t
复制当前页面的字幕或弹幕c/C-c
下载、裁剪、转码当前播放视频v/C-v
切换网络视频 playlist/category 里的视频o/C-o
切换到系统默认程序 (比如浏览器) 打开当前播放视频q/C-q
退出 minibuffer时间戳是一个 [mpv:https://xxx.com#10-30]
格式的链接,可以直接点击。光标置于其上,有如下快捷键:
, ,
播放当前链接中的视频, s
进入到 mpvi-seek
界面, a
更改链接中视频的开始时间, b
更改链接中视频的结束时间, v
预览链接中视频时间戳位置的画面, c
视频的下载、转码、截取。All In One, 很好用其他补充:
mpvi-open-map
, mpvi-seek-map
, mpvi-org-link-map
。不合意可自行扩展、重新绑定mpvi-open
打开 B 站播放列表 url 或专栏合集 url。也可以通过 mpvi-emms-add
一次将所有分 P 视频都添加到 EMMS 中,之后通过 EMMS 管理列表并控制播放mpvi-ps.el
中的代码自行扩展。我不看其他的,所以没加danmaku2ass
和解析直播链接也用 elisp
重新实现一下的。后面想想这简直是自寻烦恼,这种洁癖要不得,第三方的依赖不差这一两个,因此作罢这个项目的初衷是自己爽。现在整理出来,如果有人喜欢,我也会很开心。
欢迎大家沟通交流,互相学习、共同进步。
感谢社区中的类似项目,你们给我了更多灵感。
感谢 mpv/ffmpeg/emacs 等开源软件,你们让世界更美好。
最后,感谢所有贡献了优秀视频的平台和作者,你们让我更焦虑、也更强大(误)。