Skip to content
xfangfang edited this page Jan 25, 2022 · 3 revisions

介绍

Macast 是什么?

Macast —— 名称源于 mac + cast(投射) ,最初是运行在macOS上的DLNA投屏接收软件,在后续开发中陆续兼容了Linux与Windows。

软件内置 MPV 作为播放器,默认支持DLNA协议,可以通过插件系统扩展到其他播放器与其他协议,目前第三方播放器支持 PotplayerIINA,第三方协议支持 哔哩必连

快速上手

⚠️:Windows + Clash 用户在使用Macast时可能会遇到网络访问失败的相关问题,请在 Clash->Settings->System Proxy 中开启 Specify Protocol 选项,其他平台用户可以正常使用代理。

安装应用

  • 普通用户
    1. 打开应用后,菜单栏 \ 状态栏 \ 任务栏 会出现一个图标,这时你的设备就可以接收来自同一局域网的DLNA投放了。
  • 进阶用户
    1. 通过手动加载 Macast插件, Macast可以支持调用其他播放器,如:IINA、PotPlayer等等,或适配国内各家私有的DLNA协议.
    2. 在应用内点击高级设置,可以直接在内置的插件商店中快速下载插件(使用github仓库地址,如果网络条件不好刷新不出来,那么还是通过手动加载的方式下载吧)
    3. 支持修改默认播放器的快捷键或其他参数,见:FAQ
  • 程序员
    1. 可以依照教程完成自己的脚本,快速地适配到你喜欢的播放器,或者增加一些新的功能插件,比如:边下边看,自动复制视频链接等等。教程和一些示例代码在:CustomPlugin
    2. 也可以参考 nirvana 快速适配第三方魔改的DLNA协议。

安装插件

插件发布在 Macast-plugins (国内镜像仓库:Macast-plugins)

如何安装插件

推荐在Macast菜单中点击 设置->高级设置 并在随后打开的网页插件商店内下载插件。

如果插件商店内一直显示 Loading 说明网络条件不好,这时可以跟随下面的操作步骤手动下载插件安装。

如何手动安装插件

  1. 从官方仓库下载 Macast (国内镜像仓库: Macast
  2. 从这个仓库下载你需要的插件(看下一节如何下载,和保存在哪里)
  3. 打开Macast, 点击设置选项中的 打开配置目录
  4. 把您刚刚下载的 [some plugin].py 文件放入配置目录中对应的文件夹下(根据插件类型不同,文件夹名称为:rendererprotocol )
  5. 重启Macast,然后在菜单中选择你需要的插件.

如何下载插件

您可以点击下表右侧的 [some plugin].py 链接, 然后把浏览器显示的文字全选保存为[some plugin].py文件。

播放器类插件放入配置目录中的renderer文件夹下,协议类插件放入配置目录中的protocol文件夹下。

使用之前不要忘记查看每个插件的README

下表可能更新不够及时,请前往 Macast-plugins 查看最新列表

插件 MacOS Linux Windows 描述 链接
IINA ☑️ IINA 适配插件 iina.py README
PotPlayer ☑️ PotPlayer 适配插件 potplayer.py README
PI-FM-RDS ☑️ (只能用在树莓派上) 使用这个插件接收mp3媒体链接并用pi-fm-rds以fm广播的形式发送 pi_fm.py README
WebBrowser ☑️ ☑️ ☑️ 这个插件可以用于使用浏览器下载媒体文件,或播放某些不受mpv支持的m3u8文件 web.py README
Nirvana(协议) ☑️ ☑️ ☑️ 这个插件用于适配B站的私有协议,仅用于编程学习使用,禁止用做商业用途,如有侵权,请联系作者删除。 nirvana.py README

写一个新的插件

如果你想要适配其他的播放器或协议, 点 定制插件 来学习如何写一个插件,欢迎给Macast-plugins项目提交PR.

关于投屏协议的补充说明

之前发布的时候,接到了很多和DLNA投屏不相关的投屏协议的问题,所以这里简单解释一下不同投屏协议的区别。

  • DLNA

    1. 国内各大视频软件、音乐软件及手机相册均支持的媒体文件投屏协议。在此基础上国内软件还纷纷扩展了私有协议,比如qq音乐的:QPlay、B站的:哔哩必连等等。

    2. 一般来说,国内软件需要安装其专属的TV客户端才能支持私有功能,如:弹幕投屏、高清投屏,但也可以通过Macast的插件系统直接适配私有协议使用

    3. 同类软件有:WindowsMediaPlayer(系统自带,需要手动开启,但支持格式有限)、Kodi(跨平台,需要一直全屏使用)、其他Windows平台软件(万能播放器、AirPin等)

    4. Macast的优势:PC全平台、轻量、协议适配广、可自定义程度高

    5. 为什么不直接在网页播放,为什么不用PC客户端、Macast存在的意义是什么?答:不是所有支持DLNA的应用都有对应的网页端、不想在电脑里安装一堆充满广告的客户端、通过Macast硬件加速播放、通过Macast第三方播放器插件动态插帧提升视频观看体验、一键投屏节约时间(相对在网页上搜索而言节约时间、勿杠)等等。

  • Chromecast

    Google推出的投屏协议,支持投放镜像屏幕、视频、网页等内容过,但国内软件几乎都不支持,协议本身类似于DLNA,但需要购买硬件使用,且自2015年(大约)后有硬件加密,暂无(我没找到)第三方软件支持模拟Chromecast协议接收投屏。

  • Miracast

    Android、Linux、Windows等系统支持的 屏幕镜像 投屏协议,通过wifi直连连接两台设备,需要硬件适配。

  • Airplay

    macOS,TVOS支持的 媒体、屏幕镜像 投屏协议,同样有硬件加密,不过有相关破解分析的代码与博客,在macOS上接收投屏会被强制全屏,即使连接多个显示器,另外一个显示器也会在投屏时显示黑屏。

  • 其他镜像投屏

    1. 小米、华为、锤子等手机系统推出的无线镜像投屏,可能与硬件相关。
    2. 安卓手机通过ADB进行有线或无线镜像投屏,pc全平台皆可接收。

由此可见,投屏协议主要有 媒体文件投屏屏幕镜像投屏 两种,前者顾名思义只接收媒体文件,故而相对更省电。Macast目前对前者支持良好,但也支持后者。用户可以通过将客户端屏幕画面链接通过DLNA协议实时发送到Macast来实现屏幕镜像投屏,不过可能需要合理配置内置的mpv参数,来降低延时。欢迎有兴趣研究Macast屏幕镜像投屏的朋友与我们分享。

Clone this wiki locally