让小爱同学播放本地/远程歌曲的方案 | 小爱音箱播放本地歌曲

2023-11-06 00:20

本文主要是介绍让小爱同学播放本地/远程歌曲的方案 | 小爱音箱播放本地歌曲,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

环境:HACS+Python
问题:小爱同学不能播放本地歌曲或者群晖中的歌曲
解决办法:HACS + Http Server

背景:冲绿砖是不可能的,DLNA也被阉割了,只能曲线救国了

解决思路:通过HACS监控小爱事件,推送媒体链接并随机播放,具体看下面的流程图
在这里插入图片描述

文章目录

    • 1.安装HACS:
    • 2.安装HACS 小米集成:
    • 3.调试音乐播放
      • 3.1 在HACS开发者工具中调试音乐播放
      • 3.2 构建随机播放列表
      • 3.3 测试播放列表
    • 4.编写 HACS时间
      • 4.1 在HACS中设置场景自动化
      • 4.2 测试小爱


1.安装HACS:

步骤略,自行解决,我是在群晖上拉的官方容器 homeassistant/home-assistant:latest

2.安装HACS 小米集成:

步骤略,自行解决,我是在集成中搜索添加的,参考下图,确保音箱出现:

在这里插入图片描述

3.调试音乐播放

3.1 在HACS开发者工具中调试音乐播放

参考下图,准备一个mp3的url链接,最好是直连,重定向的我测试也可以

步骤:开发者工具-服务器-play media-选择实体-ID为链接地址,选择播放

如果一切顺利的话,你会听到小爱音箱直接播放音乐,你已经成功90%了

在这里插入图片描述

3.2 构建随机播放列表

我们的目的是让小爱播放我们服务器中的所有音乐,只推送一个MP3链接是不行的
这一块我尝试了很多方法,最后的思路是用python 写一个http的服务器:
1.当用户请求/playlist时立即扫描本地音频文件
2.打乱文件顺序,生成一个m3u8的播放列
3.小爱读取播放

这篇关于让小爱同学播放本地/远程歌曲的方案 | 小爱音箱播放本地歌曲的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:https://blog.csdn.net/wangrui1573/article/details/132966464
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/353380

相关文章

Java实现本地缓存的常用方案介绍

《Java实现本地缓存的常用方案介绍》本地缓存的代表技术主要有HashMap,GuavaCache,Caffeine和Encahche,这篇文章主要来和大家聊聊java利用这些技术分别实现本地缓存的方... 目录本地缓存实现方式HashMapConcurrentHashMapGuava CacheCaffe

Maven项目打包时添加本地Jar包的操作步骤

《Maven项目打包时添加本地Jar包的操作步骤》在Maven项目开发中,我们经常会遇到需要引入本地Jar包的场景,比如使用未发布到中央仓库的第三方库或者处理版本冲突的依赖项,本文将详细介绍如何通过M... 目录一、适用场景说明​二、核心操作命令​1. 命令格式解析​2. 实战案例演示​三、项目配置步骤​1

使用Python实现调用API获取图片存储到本地的方法

《使用Python实现调用API获取图片存储到本地的方法》开发一个自动化工具,用于从JSON数据源中提取图像ID,通过调用指定API获取未经压缩的原始图像文件,并确保下载结果与Postman等工具直接... 目录使用python实现调用API获取图片存储到本地1、项目概述2、核心功能3、环境准备4、代码实现

无法启动此程序因为计算机丢失api-ms-win-core-path-l1-1-0.dll修复方案

《无法启动此程序因为计算机丢失api-ms-win-core-path-l1-1-0.dll修复方案》:本文主要介绍了无法启动此程序,详细内容请阅读本文,希望能对你有所帮助... 在计算机使用过程中,我们经常会遇到一些错误提示,其中之一就是"api-ms-win-core-path-l1-1-0.dll丢失

C#实现访问远程硬盘的图文教程

《C#实现访问远程硬盘的图文教程》在现实场景中,我们经常用到远程桌面功能,而在某些场景下,我们需要使用类似的远程硬盘功能,这样能非常方便地操作对方电脑磁盘的目录、以及传送文件,这次我们将给出一个完整的... 目录引言一. 远程硬盘功能展示二. 远程硬盘代码实现1. 底层业务通信实现2. UI 实现三. De

利用Python实现可回滚方案的示例代码

《利用Python实现可回滚方案的示例代码》很多项目翻车不是因为不会做,而是走错了方向却没法回头,技术选型失败的风险我们都清楚,但真正能提前规划“回滚方案”的人不多,本文从实际项目出发,教你如何用Py... 目录描述题解答案(核心思路)题解代码分析第一步:抽象缓存接口第二步:实现两个版本第三步:根据 Fea

python如何下载网络文件到本地指定文件夹

《python如何下载网络文件到本地指定文件夹》这篇文章主要为大家详细介绍了python如何实现下载网络文件到本地指定文件夹,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下...  在python中下载文件到本地指定文件夹可以通过以下步骤实现,使用requests库处理HTTP请求,并结合o

一文详解如何查看本地MySQL的安装路径

《一文详解如何查看本地MySQL的安装路径》本地安装MySQL对于初学者或者开发人员来说是一项基础技能,但在安装过程中可能会遇到各种问题,:本文主要介绍如何查看本地MySQL安装路径的相关资料,需... 目录1. 如何查看本地mysql的安装路径1.1. 方法1:通过查询本地服务1.2. 方法2:通过MyS

SpringBoot实现接口数据加解密的三种实战方案

《SpringBoot实现接口数据加解密的三种实战方案》在金融支付、用户隐私信息传输等场景中,接口数据若以明文传输,极易被中间人攻击窃取,SpringBoot提供了多种优雅的加解密实现方案,本文将从原... 目录一、为什么需要接口数据加解密?二、核心加解密算法选择1. 对称加密(AES)2. 非对称加密(R

MySQL精准控制Binlog日志数量的三种方案

《MySQL精准控制Binlog日志数量的三种方案》作为数据库管理员,你是否经常为服务器磁盘爆满而抓狂?Binlog就像数据库的“黑匣子”,默默记录着每一次数据变动,但若放任不管,几天内这些日志文件就... 目录 一招修改配置文件:永久生效的控制术1.定位my.cnf文件2.添加核心参数不重启热更新:高手应