back to home

xfangfang / Macast

Macast is a cross-platform application which using mpv as DLNA Media Renderer.

6,733 stars
428 forks
44 issues
PythonHTMLDockerfile

AI Architecture Analysis

This repository is indexed by RepoMind. By analyzing xfangfang/Macast in our AI interface, you can instantly generate complete architecture diagrams, visualize control flows, and perform automated security audits across the entire codebase.

Our Agentic Context Augmented Generation (Agentic CAG) engine loads full source files into context, avoiding the fragmentation of traditional RAG systems. Ask questions about the architecture, dependencies, or specific features to see it in action.

Embed this Badge

Showcase RepoMind's analysis directly in your repository's README.

[![Analyzed by RepoMind](https://img.shields.io/badge/Analyzed%20by-RepoMind-4F46E5?style=for-the-badge)](https://repomind-ai.vercel.app/repo/xfangfang/Macast)
Preview:Analyzed by RepoMind

Repository Summary (README)

Preview
<img align="center" src="macast_slogan.png" alt="slogan" height="auto"/>

Macast

visitor stars downloads plugins pypi aur build mac windows linux

中文说明

A menu bar application using mpv as DLNA Media Renderer. You can push videos, pictures or musics from your mobile phone to your computer.

Installation

  • MacOS || Windows || Debian

    Download link: Macast release latest

  • Package manager

    pip install macast
    macast-gui # or macast-cli
    

    Please see our wiki for more information(like aur support): #package-manager
    Linux users may have problems installing using pip. Two additional libraries that I have modified need to be installed:

    pip install git+https://github.com/xfangfang/pystray.git
    pip install git+https://github.com/xfangfang/pyperclip.git
    

    See this for Linux compatibility

  • Build from source

    Please refer to: Macast Development

Usage

  • For ordinary users
    After opening this app, a small icon will appear in the menubar / taskbar / desktop panel, then you can push your media files from a local DLNA client to your computer.

  • For advanced users

    1. By loading the Macast-plugins, Macast can support third-party players like IINA and PotPlayer.
      For more information, see: #how-to-use-third-party-player-plug-in
    2. You can modify the shortcut keys or configuration of the default mpv player by yourself, see: #how-to-set-personal-configurations-to-mpv
  • For developer
    You can use a few lines of code to add support for other players like IINA and PotPlayer or even add additional features, like downloading media files while playing videos.
    Tutorials and examples are shown in: Macast/wiki/Custom-Renderer.
    Fell free to submit a pull request to Macast-plugins.

FAQ

If you have any questions about this application, please check: Macast/wiki/FAQ.
If this does not solve your problem, please open a new issue to notify us, we are willing to help you solve the problem.

Screenshots

You can copy the video link after the video is casted:
<img align="center" width="400" src="https://github.com/xfangfang/xfangfang.github.io/raw/master/assets/img/macast/copy_uri.png" alt="copy_uri" height="auto"/>

Or select a third-party player plug-in
<img align="center" width="400" src="https://github.com/xfangfang/xfangfang.github.io/raw/master/assets/img/macast/select_renderer.png" alt="select_renderer" height="auto"/>

Relevant links

UPnP™ Device Architecture 1.1

UPnP™ Resources

UPnP™ ContentDirectory:1 service

UPnP™ MediaRenderer:1 device

UPnP™ AVTransport:1 service

UPnP™ RenderingControl:1 service

python-upnp-ssdp-example