acmpv & acmpv watcher 更新 - 支持播放 Bilibili 视频及其他 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
Shared
V2EX    分享创造

acmpv & acmpv watcher 更新 - 支持播放 Bilibili 视频及其他

  •  
  • /li>
  •   Shared
    vayn 2016-10-21 09:32:47 +08:00 5354 次点击
    这是一个创建于 3279 天前的主题,其中的信息可能已经有所发展或是发生改变。

    acmpv v1.0.3

    更新说明

    1. 除支持播放 Acfun 弹幕视频外,加入 Bilibili 弹幕视频的播放支持。
    2. 可播放其他 You-Get 支持的网站视频

    acmpv watcher v1.0.3

    更新说明

    1. 现在可监控剪贴板自动调用 acmpv 播放 Acfun & Bilibili 视频啦(其他视频网站暂不支持)。
    2. 全局热键:同时按下 command + option + x 组合键可打开或暂停监控功能(后续将加入自定义热键功能)。

    screenshot


    acmpv 下载地址: https://github.com/Vayn/acmpv

    acmpv watcher 下载地址: https://github.com/Vayn/acmpv-watcher


    鸣谢

    感谢 @ddqp 和 @zjb861107 提出的改进意见。

    第 1 条附言    2016-10-23 06:46:09 +08:00

    acmpv watcher 更新至 1.0.4:

    1. 加入优酷、乐视等视频网站监控支持
    2. 加入拖拽播放功能,拖拽视频链接至 acmpv watcher 菜单栏图标即可播放视频

    screeshot

    下载地址:https://github.com/Vayn/acmpv-watcher

    52 条回复    2016-12-19 20:49:12 +08:00
    ddqp
        1
    ddqp  
       2016-10-21 09:46:16 +08:00
    晚上回去试试,要方便多了,尤其一些直播网站
    Tink
        2
    Tink  
    PRO
       2016-10-21 10:34:26 +08:00 via iPhone
    牛逼!
    JackBlack2006
        3
    JackBlack2006  
       2016-10-21 10:46:27 +08:00
    Shared
        4
    Shared  
    OP
       2016-10-21 11:14:42 +08:00
    @JackBlack2006 啊哈,中午休息的时候看下。命令行调用最麻烦的一点是环境变量的设置
    JackBlack2006
        5
    JackBlack2006  
       2016-1-21 12:30:35 +08:00
    @Shared 直接 acmpv.conf 不就完事情了……
    Shared
        6
    Shared  
    OP
       2016-10-21 13:06:52 +08:00
    @JackBlack2006 好主意,不过这样以来使用复杂度就上去了
    JackBlack2006
        7
    JackBlack2006  
       2016-10-21 13:09:54 +08:00
    @Shared 你干脆写成状态栏 app ,一个界面多个方框,各种方框对应不同的功能(脚本命令),拖放 URL 就行
    Troevil
        8
    Troevil  
       2016-10-21 13:28:25 +08:00
    bilibili 现在不是支持 hmtl5 了吗
    Shared
        9
    Shared  
    OP
       2016-10-21 13:41:10 +08:00
    @Troevil 是的
    soolr
        10
    soolr  
       2016-10-21 14:14:17 +08:00
    ImportError: No module named 'you_get'
    Shared
        11
    Shared  
    OP
       2016-10-21 14:19:47 +08:00
    @soolr 能提供再详细的信息吗?比如你是怎么调用命令的,是否已经按照安装指南设置 PATH ?
    JackBlack2006
        12
    JackBlack2006  
       2016-10-21 20:52:10 +08:00
    求指教: you-get 还是 mpv 的缓存到底如何设置为好呢?

    看一个美剧熟肉,发现源站分段十几个按照十几个 chapter 处理,不管怎么设置,换 chapter 时候都会停一下,并不会继续预载下一个
    JackBlack2006
        13
    JackBlack2006  
       2016-10-21 20:52:50 +08:00
    各种 mpv 的设置都试过了, cache 试过最大 1GB 来着
    ddqp
        14
    ddqp  
       2016-10-21 21:01:04 +08:00
    好用,就是启动时候会卡一会儿,期待支持熊猫 tv ,斗鱼 tv 等 you-get 支持的网站,十分方便
    ddqp
        15
    ddqp  
       2016-10-21 21:03:51 +08:00
    @JackBlack2006 这个主意不错,如果能有个状态栏 app ,然后可以自定义网址,和命令,然后根据剪贴板网址判断调用设置好的命令执行
    Shared
        16
    Shared  
    OP
       2016-10-21 23:19:23 +08:00
    @JackBlack2006 mpv 本身应该没有考虑过分段视频的预加载功能

    @ddqp 启动卡一会儿是因为正在解析视频的 API

    另外现在可以播 B 站的番剧了
    JackBlack2006
        17
    JackBlack2006  
       2016-10-21 23:30:28 +08:00
    @Shared 这个其实和 you-get 有关系,因为 mpv 只是播放一个 chapter 列表,应该 you-get 处理一下把分段视频当一个整体给 mpv

    A 站 you-get 看了 40 分钟的美剧卡了 10 次,看个电影还不得急死……

    youtube-dl 看 B 站试了一下, cache 设置其实都是对 youtube-dl 才有效果……而且是一次性加载完整个 40 分钟视频的,不是十个 4 分钟片段
    JackBlack2006
        18
    JackBlack2006  
       2016-10-21 23:31:50 +08:00
    所以最好的办法是 youtube-dl 支持 acfun ,或者 you-get 改进这个
    JackBlack2006
        19
    JackBlack2006  
       2016-10-21 23:39:55 +08:00
    *B 站同样的视频, youtube-dl 看 mpv 里面是 40 分钟, you-get 看就是分段的短视频了
    Shared
        20
    Shared  
    OP
       2016-10-21 23:39:56 +08:00
    @JackBlack2006 我一开始打算把 you-get 的视频解析功能都提取出来,抽象成一个单独的解析模块。

    但是读完代码之后就放弃这个计划了……代码耦合太紧密,并没有暴露出合适的接口。

    其实想想也是,无论 you-get 还是 bilidan 都是作为工具开发出来的,设计导向不同。
    Shared
        21
    Shared  
    OP
       2016-10-21 23:41:40 +08:00
    @JackBlack2006 B 站底层解析已经换成 bilidan 了, you-get 的相关模块太局限。
    JackBlack2006
        22
    JackBlack2006  
       2016-10-21 23:46:17 +08:00
    @Shared 我测试的时候没有用 acmpv ……和你的作品并没有关系 Y(^_^)Y
    JackBlack2006
        23
    JackBlack2006  
       2016-10-21 23:47:34 +08:00
    你不是有 github 帐号嘛,给 you-get 提个 issue 呗 ^^
    Shared
        24
    Shared  
    OP
       2016-10-22 00:13:34 +08:00
    @JackBlack2006 you-get 的 issue 有海量……
    helloSwift
        25
    helloSwift  
       2016-10-22 00:17:16 +08:00 via iPhone
    @JackBlack2006 今天刚遇到这个问题,我这里是分成 5 分钟的片段,折腾半个小时,无解
    cnbeining
        26
    cnbeining  
       2016-10-22 03:42:38 +08:00
    @Shared

    开 issue 。

    issue 很多但是 Owner 和 collaborators 们真的会看的。


    你有几个办法可以做 work around :

    1. 导出 list of URLs

    2. 导出 JSON 自己解析。

    至于 Bilibili 怎么解析。。。解析反正都是 Biligrab 的 fork 用什么都一样。

    Acfun 我这里没有发现谁提不能解析的 issue ,我也不认为解析有了什么变化。

    优酷云的速度问题我和 Acfun 的猴子讨论过,当然这个问题不是我们说什么就可以解决的。请考虑使用 proxy 等其他手段。

    @JackBlack2006

    这是 mpv 的问题,请到上游提 issue ,或者我记得 BiliDan 或 you-get 的 past issue 有人说过这个问题。

    你可以尝试使用 ffmpeg 将所有视频 concat 后 pipe 进 mpv ,虽然我怀疑其效果是否会如愿。


    @helloSwift

    自去年某日后(我还真就记不起哪天了)所有的视频都是分段的。具体说是 6min 的分段。


    To ALL :

    请确保使用了**最新** 的 **Github** 版本的 you-get ,因为项目更新很快而 pip 的新版本策略不会推那么快。
    Shared
        27
    Shared  
    OP
       2016-10-22 08:23:45 +08:00   1
    @cnbeining you-get 最近一次不能解析 Acfun 的 bug 是我修复的,已经被 @soimort 合并了 XD 。
    acmpv 内嵌的 you-get 就是最新开发版(考虑到 git submodule 的对某些用户来说操作复杂没有使用)

    @JackBlack2006 视频喂给 mpv 时已经是列表,并且使用了 merge-files 参数(要不然只能看 6 分钟)。因此结论是 mpv 确实没考虑提前加载视频流。
    JackBlack2006
        28
    JackBlack2006  
       2016-10-22 08:45:21 +08:00
    @Shared 啊,但是为何 youtube-dl 没这个问题……我去研究下代码(其实我属于能看懂但是不会写那种人 XD )
    nareix
        29
    nareix  
       2016-10-22 09:29:39 +08:00
    做成插件是不是更方便点哇?
    Shared
        30
    Shared  
    OP
       2016-10-22 09:48:53 +08:00
    @nareix 详细说说想法吧 :D
    JackBlack2006
        31
    JackBlack2006  
       2016-10-22 09:59:23 +08:00
    @nareix firefox 可以用 openwith ,但是 os x 下无效

    chrome 有没有类似的我不知道哦
    ilools
        32
    ilools  
       2016-10-22 17:43:05 +08:00 via iPhone
    点个赞
    Shared
        33
    Shared  
    OP
       2016-10-23 06:49:19 +08:00
    acmpv watcher 更新至 1.0.4 :

    加入优酷、乐视等视频网站监控支持
    加入拖拽播放功能,拖拽视频链接至 acmpv watcher 菜单栏图标即可播放视频



    @ddqp @nareix @JackBlack2006
    ddqp
        34
    ddqp  
       2016-10-23 09:43:38 +08:00
    太好用了,十分方便,不知道如何修改弹幕大小?
    ddqp
        35
    ddqp  
       2016-10-23 09:48:21 +08:00
    熊猫 tv ,斗鱼 tv ,可否支持弹幕呢?
    Shared
        36
    Shared  
    OP
       2016-10-23 10:14:10 +08:00
    @ddqp 弹幕大小可以在这里修改 https://github.com/Vayn/acmpv/blob/master/src/acmpv/downloaders.py#L26

    熊猫和斗鱼理论也是可以支持弹幕的,我先看看
    ddqp
        37
    ddqp  
       2016-10-23 11:14:11 +08:00 via iPhone
    @Shared 好的,谢谢!我试试
    ddqp
        38
    ddqp  
       2016-10-23 15:23:04 +08:00
    改成 15.6 了,感觉 15.6 比较合适,原先的有点太小了。
    Shared
        39
    Shared  
    OP
       2016-10-23 20:54:29 +08:00   1
    @ddqp 研究了一阵子,斗鱼和熊猫这种弹幕与 AB 站本质不一样,加上 mpv 的缺陷,没法在视频内嵌弹幕。找找有没别的方案
    ddqp
        40
    ddqp  
       2016-10-23 21:01:50 +08:00 via iPhone
    @Shared 好的,谢谢,没有就算了,呵呵,已经挺好用了,
    mingyun
        41
    mingyun  
       2016-10-23 23:50:06 +08:00
    厉害了我的哥
    weicaizhi
        42
    weicaizhi  
       2016-10-24 02:00:18 +08:00
    斗鱼的弹幕显示真的是很难攻破诶。
    Shared
        43
    Shared  
    OP
       2016-10-24 02:08:15 +08:00
    @weicaizhi 倒不是难攻破,而是没法展示
    weicaizhi
        44
    weicaizhi  
       2016-10-24 02:54:32 +08:00
    @Shared 那就是 mpv 的锅喽
    话说我刚发现我的 Python 是 2.7 的。。。。。。
    ddqp
        45
    ddqp  
       2016-10-24 14:01:03 +08:00
    @weicaizhi 斗鱼熊猫弹幕 github 上都有现成的代码,只是用起来很麻烦不知道如何在 MPV 里面显示。
    haogefeifei
        46
    haogefeifei  
       2016-10-24 14:54:23 +08:00
    感觉有点麻烦。。。平时都是 https://github.com/m13253/BiliDan + Automator 搞定的。。。
    Shared
        47
    Shared  
    OP
       2016-10-24 14:56:00 +08:00
    @haogefeifei 你可以分享你的方案 :D
    haogefeifei
        48
    haogefeifei  
       2016-10-24 18:05:49 +08:00
    Shared
        49
    Shared  
    OP
       2016-10-24 19:31:11 +08:00
    @haogefeifei 简洁有力!
    haogefeifei
        50
    haogefeifei  
       2016-10-25 09:19:55 +08:00
    @Shared 右键服务里调播放器只是很小有方面。。利用 Automator 写服务调用脚本开发效率很高。。。 有空你可以看看。。
    Shared
        51
    Shared  
    OP
       2016-10-25 09:25:43 +08:00
    @haogefeifei 嗯,我自己也有一些私用 workflow :D
    不过我最初的目的是在客户端上播放 Acfun 弹幕视频,后来为满足大家的 request 已经变成一个系统工程,脚本做不到哦
    JackBlack2006
        52
    JackBlack2006  
       2016-12-19 20:49:12 +08:00
    我最近依据这个 http://www.jianshu.com/p/a4dddbd39d4d?nomobile=yes 给一些人的 Windows 部署了

    但是 OS X 上面发给 you-get 没有反应,直接拖放 you-get ,搞 Automator 我都试过了没成功,不知能否指点一下?=)
    @Shared
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2899 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 35ms UTC 14:27 PVG 22:27 LAX 07:27 JFK 10:27
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86