Coder Social home page Coder Social logo

adaiahallison / xiaomusic Goto Github PK

View Code? Open in Web Editor NEW

This project forked from hanxi/xiaomusic

0.0 0.0 0.0 2.02 MB

使用小爱/红米音箱播放音乐,音乐使用 yt-dlp 下载。

License: MIT License

Shell 3.54% JavaScript 4.66% Python 82.69% HTML 7.46% Dockerfile 1.65%

xiaomusic's Introduction

xiaomusic

使用小爱/红米音箱播放音乐,音乐使用 yt-dlp 下载。

运行

  • 使用 install_dependencies.sh 下载依赖
  • 使用 pdm 安装环境
  • 参考 xiaogpt 设置好环境变量
export MI_USER="xxxxx"
export MI_PASS="xxxx"
export MI_DID=00000
export XIAOMUSIC_SEARCH='bilisearch:'

然后启动即可。默认监听了端口 8090 , 使用其他端口自行修改。

pdm run xiaomusic.py

支持口令

  • 播放歌曲
  • 播放歌曲+歌名 比如:播放歌曲周杰伦晴天
  • 下一首
  • 单曲循环
  • 全部循环

隐藏玩法: 对小爱同学说播放歌曲小猪佩奇的故事,会播放小猪佩奇的故事。

已测试设备

"L07A": ("5-1", "5-5"),  # Redmi小爱音箱Play(l7a)

支持音乐格式

  • mp3
  • flac

本地音乐会搜索 mp3 和 flac 格式的文件,下载的歌曲是 mp3 格式的。

在 Docker 里使用

docker run -e MI_USER=<your-xiaomi-account> -e MI_PASS=<your-xiaomi-password> -e MI_DID=<your-xiaomi-speaker-mid> -e MI_HARDWARE='L07A' -e XIAOMUSIC_PROXY=<proxy-for-yt-dlp> -e XIAOMUSIC_HOSTNAME=192.168.2.5 -e XIAOMUSIC_SEARCH='bilisearch:' -p 8090:8090 -v ./music:/app/music hanxi/xiaomusic
  • XIAOMUSIC_SEARCH 可以配置为 'bilisearch:' 表示歌曲从哔哩哔哩下载;
    • 配置为 'ytsearch:' 表示歌曲从 youtube 下载。
  • XIAOMUSIC_PROXY 用于配置代理,默认为空;
    • 当 XIAOMUSIC_SEARCH 配置为 'ytsearch:' 时在国内需要用到。
  • MI_HARDWARE 是小米音箱的型号,默认为'L07A'
  • 注意端口必须映射为与容器内一致, XIAOMUSIC_HOSTNAME 需要设置为宿主机的 IP 地址,否则小爱无法正常播放。
  • 可以把 /app/music 目录映射到本地,用于保存下载的歌曲。

XIAOMUSIC_PROXY 参数格式参考 yt-dlp 文档说明:

Use the specified HTTP/HTTPS/SOCKS proxy. To
enable SOCKS proxy, specify a proper scheme,
e.g. socks5://user:[email protected]:1080/.
Pass in an empty string (--proxy "") for
direct connection

hanxi#2hanxi#11

本地编译Docker Image

docker build -t xiaomusic .

docker compose 示例

使用哔哩哔哩下载歌曲:

version: '3'

services:
  xiaomusic:
    image: hanxi/xiaomusic
    container_name: xiaomusic
    restart: unless-stopped
    ports:
      - 8090:8090
    volumes:
      - ./music:/app/music
    environment:
      MI_USER: '小米账号'
      MI_PASS: '小米密码'
      MI_DID: 00000
      MI_HARDWARE: 'L07A'
      XIAOMUSIC_SEARCH: 'bilisearch:'
      XIAOMUSIC_HOSTNAME: '192.168.2.5'

使用 youtobe 下载歌曲:

version: '3'

services:
  xiaomusic:
    image: hanxi/xiaomusic
    container_name: xiaomusic
    restart: unless-stopped
    ports:
      - 8090:8090
    volumes:
      - ./music:/app/music
    environment:
      MI_USER: '小米账号'
      MI_PASS: '小米密码'
      MI_DID: 00000
      MI_HARDWARE: 'L07A'
      XIAOMUSIC_SEARCH: 'ytsearch:'
      XIAOMUSIC_PROXY: 'http://192.168.2.5:8080'
      XIAOMUSIC_HOSTNAME: '192.168.2.5'

简易的控制面板

浏览器进入 http://192.168.2.5:8090

  • ip 是 XIAOMUSIC_HOSTNAME 设置的
  • 8090 是默认端口

感谢

Star History

Star History Chart

xiaomusic's People

Contributors

hanxi avatar dzhuang avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.