org-media-note无法打开bilibili url

版上大拿的插件想用来看B站,debian下mpv软件也已安装,可是打开后报错 org-media-note get_property property unavailable 请问是B站本身的限制呢还是插件对URL格式解析有要求,不能直接从浏览器URL拷过来?

1 个赞

不知道是不是同一个问题(url 里缺个 referrer):

如果是纯错误警告,给 mpv-get-property 加个 advice:

(define-advice mpv-get-property (:around (oldfn &rest arg) ignore-errors)
  "Don\\='t warn me with \\='get_property property unavailable.\\='."
  (ignore-errors (apply oldfn arg)))

加上这个之后不报错了,但是还是没有在org buffer里唤起mpv开始播放

确实,我之前在有这个报错的情况下也有唤起mpv播放,但偶尔有失败的情况。有时候要等很久mpv才会突然播放,似乎是缓冲太慢。

不是很确定你是什么情况,不过你在 mpv.conf 里添加这行试试:

# src: https://emacs-china.org/t/org-media-note/16160/42
# src: https://blog.51cto.com/u_15127583/3694908
http-header-fields="Referer: $URL"

再不行你艾特作者试试 :rofl:

好的,等有空就试一下,谢谢!

这个包依赖mpv.el,你可以测试mpv-play,看看mpv能不能打开mpv,再看看你有没有安装yt-dlp或者youtube-dl,看看这俩能不能正常使用。

经过实测,无论是mpv直接打开本地mp4还是org-media-note打开本地mp4,都是可以的,org-media-note的命令都是生效的。 所以现在问题在于如何直接打开URL播放,尤其是B站上的视频

这是mpv直接打开的B站URL的报错

mpv 【美国网球教程】 汤姆教练教学 全6集 普通话配音_哔哩哔哩_bilibili Playing: 【美国网球教程】 汤姆教练教学 全6集 普通话配音_哔哩哔哩_bilibili [ytdl_hook] ERROR: Unsupported URL: 【美国网球教程】 汤姆教练教学 全6集 普通话配音_哔哩哔哩_bilibili [ytdl_hook] youtube-dl failed: unexpected error ocurred Failed to recognize file format.

我昨天试着安装了下,成功打开b站的,要不你给下你的配置。还有你yt-dlp或者youtube-dl单独命令行的测试结果呢?

哈哈,问了一下chatgpt才意识到yt-dlp和youtube-dl是啥,还要单独安装。 等下载完再试了 实在是小白,抱歉浪费大佬时间了 :grinning:

啊这,亏我还问有没安装,只用安装一个就行,推荐安装yt-dlp, mvp 设置里要有类似于 script-opts=ytdl_hook-ytdl_path=/usr/bin/yt-dlp 的配置哦

yt-dlp对mpv版本有要求,我的debian10,版本太老,尝试了各种办法安装mpv的最新版本,尚未成功。各种依赖简直令人发疯

找到一个APT安装最新MPV的介绍,还没有实际试过,看上去可行。

This method will install the latest version of the MPV media player with the latest features and bug fixes.

确认升级mpv版本为0.32后,配合yt-dlp,可以自如打开本地视频文件或bilibili URL。 为了升级mpv,特地升级了使用多年的debian10到11, 又是一通折腾。不过话说回来,现在的debian在线升级可是比以前顺畅多了。