小爱音箱播放手机音乐,小爱音箱播放音乐卡顿不流畅,小爱音箱播放本地文件,小爱音箱播放酷狗音乐<br> <p style="margin-left:0;text-align:left;">小爱音箱播放局域网NAS上的音乐(【【淘密令】】)</p> <p style="margin-left:0;text-align:left;">? 手上有一个小爱音箱Pro,拿来给小朋友玩,顺带查下天气,控制下家里电视、空调等家电,一直使用挺方便的。老早以前听歌都是百度一首首下载,然后放在电脑上用千千静听播放,后来版权的重视及在线音乐流行,用网易云音乐、QQ音乐等播放器在线听歌逐渐流行起来,原来下载的歌一直放在电脑上也没播放过。随着小爱音箱搭配的QQ音乐能听的歌越来越少,听歌就只能开着电脑用蓝牙播放,每次播放都得开电脑是个挺麻烦的事情。家里有个群晖NAS一直待机,一直期待小爱官方能够开放播放本地音乐这个功能。期待了很久,官方论坛也翻了不少,发现很多人期待这个功能,官方也没有迹象表达要实现这个功能的意思。近期看到github上有个项目让小爱音箱播放局域网NAS上的音乐,项目是用python写的,博主应该是对相关配置比较熟悉,README说明写的相对简略,折腾了几天才算简单实现,略做记录,有相同需求的朋友可以参考。</p> <p style="margin-left:0;text-align:left;">作者github项目地址:</p> <p style="margin-left:0;text-align:left;">无法访问github,移动云盘下载链接:https://caiyun.139.com/m/i?【【淘密令】】</p> <p style="margin-left:0;text-align:left;">提取码:7vTa</p> <p style="margin-left:.0001pt;text-align:justify;">基本配置:1、群晖NAS ?2、小爱音箱</p> <p style="margin-left:.0001pt;text-align:justify;">实现目标:小爱音箱播放局域网NAS上的音乐</p> <p style="margin-left:.0001pt;text-align:justify;">原理:在NAS上实现http服务,op.lan解析为NAS的局域网地址,语音操作小爱同学去访问音乐。具体为何是op.lan这个域名,原理不详。原作者写的比较简略,讲讲我遇到的问题及解决办法。</p> <p style="margin-left:.0001pt;text-align:justify;">1、<span style="background-color:#ffffff;"><span style="color:#333333;">nas上安装Python3</span></span></p> <p style="margin-left:.0001pt;text-align:justify;">?群晖的套件中心有python3,套件中心搜索python3直接安装即可。</p> <p style="text-align:justify;">2、下载并打开`【【淘密令】】.py`,编辑`fileDir`变量,填写你存放音乐的文件夹的完整路径。群晖NAS打开SMB功能后,在文件夹路径直接访问\\192.168.0.101\Files 即可访问文件夹,或者如下图PC访问共享文件夹地址来访问。一直以为程序中fileDir用这个地址可以直接访问,实际在python文件中fileDir为 ?/【【微信】】/Files ?这种格式。</p> <p style="text-align:justify;">3、修改路由器的hosts,加入这样一行,或者直接将服务器主机名改成`op`</p> <p style="margin-left:.0001pt;text-align:left;">修改路由器hosts 可以用软路由直接配置。我用的是TL-WDR5620千兆版,查找了很多资料没找到普通路由器修改hosts的方法。搜到了一个网页:使用群晖的【【淘密令】】应用搭建内网DNS服务器,可以实现内网DNS解析,解析不了的再用公网DNS就可以了。</p> <p style="margin-left:.0001pt;text-align:left;">参考链接: 使用群晖的【【淘密令】】应用搭建内网DNS服务器|日新博客</p> <p style="margin-left:.0001pt;text-align:left;">进入套件中心安装【【淘密令】】应用</p> <p style="margin-left:.0001pt;text-align:left;">安装完成后,打开【【淘密令】】</p> <p style="margin-left:.0001pt;text-align:left;">左侧菜单选择区域 然后选择新增master区域</p> <p style="margin-left:.0001pt;text-align:justify;">在创建Master区域内填写想要解析的域名,op.lan,主DNS服务器填写群晖的IP地址。在路由器DHCP选项设置IP地址绑定,让自己的群晖都设置一个固定的IP地址方便管理,以后可以通过自己设定的域名访问群晖。</p> <p style="margin-left:.0001pt;text-align:justify;">4、设置成功后,修改电脑DNS用nslookup 测试是否能够正常解析</p> <p style="margin-left:.0001pt;text-align:justify;">上图所示为正常解析。</p> <p style="margin-left:.0001pt;text-align:justify;">测试过程中出现如上图所示直接用nslookup op.lan解析失败,但是用nslookup op.lan 192.168.0.104可以正常解析为群晖DNS地址。这种问题,我这解决方案是把IPV6关掉就可以了。</p> <p style="margin-left:.0001pt;text-align:justify;">5、群晖控制面板启用ssh或者telnet功能,连接NAS后,用管理员账户密码登陆终端提示符为$符,然后用sudo -i同样的账户密码切换到管理员模式,终端提示符为#符。</p> <p style="margin-left:.0001pt;text-align:justify;">6、修改NAS本机【【微信】】.conf文件,屏蔽第一行nameserver那一行,新增op.lan 192.168.0.104</p> <p style="margin-left:.0001pt;text-align:justify;">root@chen-synology:~# vi /etc/【【微信】】.conf</p> <p style="margin-left:.0001pt;text-align:justify;">#nameserver 192.168.1.1</p> <p style="margin-left:.0001pt;text-align:justify;">op.lan 192.168.0.104</p> <p style="margin-left:.0001pt;text-align:justify;">~ </p> <p style="margin-left:.0001pt;text-align:justify;">"/etc/【【微信】】.conf" 2L, 45【【微信】】 ?</p> <p style="margin-left:.0001pt;text-align:justify;">root@chen-synology:~# nslookup op.lan</p> <p style="margin-left:.0001pt;text-align:justify;">Server: 127.0.0.1</p> <p style="margin-left:.0001pt;text-align:justify;">Address: ?127.0.0.1#53</p> <p style="margin-left:.0001pt;text-align:justify;">Name: op.lan</p> <p style="margin-left:.0001pt;text-align:justify;">Address: 192.168.0.104</p> <p style="margin-left:.0001pt;text-align:justify;">默认NAS的解析地址为192.168.1.1 ?修改为192.168.0.104</p> <p style="margin-left:.0001pt;text-align:justify;"> 7、运行【【淘密令】】脚本,注意脚本是python3语言。我的NAS装了Python3后,python2和python3都有,指令要使用python3。使用python2会提示报错。如果执行正常,会输出提示文件夹内有xxfiles。在电脑上用浏览器访问http://op.lan:65533?,可以看到一个播放器界面,能够正常播放出fileDir设置的那个目录里的音乐。确保小爱音箱重新获取ip地址后DNS设置为NAS的地址。我登陆不了小爱的shell,直接把路由器DHCP的DNS设置为NAS的IP地址,小爱断电重主启。</p> <p style="margin-left:.0001pt;text-align:justify;">root@chen-synology:/【【微信】】/Files# python3 【【淘密令】】.py</p> <p style="margin-left:.0001pt;text-align:justify;">Server: 127.0.0.1</p> <p style="margin-left:.0001pt;text-align:justify;">Address: ?127.0.0.1#53</p> <p style="margin-left:.0001pt;text-align:justify;">Name: op.lan</p> <p style="margin-left:.0001pt;text-align:justify;">Address: 192.168.0.104</p> <p style="margin-left:.0001pt;text-align:justify;">12 files</p> <p style="margin-left:.0001pt;text-align:justify;">/</p> <p style="margin-left:.0001pt;text-align:justify;">192.168.0.110 - - [20/Jul/2023 20:57:35] "GET / HTTP/1.1" 302 -</p> <p style="margin-left:.0001pt;text-align:justify;">/Walkin%20in%20the%20Air.mp3</p> <p style="margin-left:.0001pt;text-align:justify;">/【【微信】】/music/Oceanborn/Walkin in the Air.mp3</p> <p style="margin-left:.0001pt;text-align:justify;">192.168.0.110 - - [20/Jul/2023 20:57:35] "GET /Walkin%20in%20the%20Air.mp3 HTTP/1.1" 200 -</p> <p style="margin-left:.0001pt;text-align:justify;">----------------------------------------</p> <p style="margin-left:.0001pt;text-align:justify;">Exception happened during processing of re【【微信】】 ('192.168.0.110', 39748)</p> <p style="margin-left:.0001pt;text-align:justify;">Traceback (most recent call last):</p> <p style="margin-left:.0001pt;text-align:justify;">File "/var/packages/py3k/target/usr/local/lib/python3.8/socketserver.py", 【【微信】】, in _handle_request_noblock</p> <p style="margin-left:.0001pt;text-align:justify;">self.process_request(request, client_address)</p> <p style="margin-left:.0001pt;text-align:justify;">File "/var/packages/py3k/target/usr/local/lib/python3.8/socketserver.py", 【【微信】】, in process_request</p> <p style="margin-left:.0001pt;text-align:justify;">self.finish_request(request, client_address)</p> <p style="margin-left:.0001pt;text-align:justify;">File "/var/packages/py3k/target/usr/local/lib/python3.8/socketserver.py", 【【微信】】, in finish_request</p> <p style="margin-left:.0001pt;text-align:justify;">self.Re【【微信】】(request, client_address, self)</p> <p style="margin-left:.0001pt;text-align:justify;">File "/var/packages/py3k/target/usr/local/lib/python3.8/socketserver.py", 【【微信】】, in __init__</p> <p style="margin-left:.0001pt;text-align:justify;">self.handle()</p> <p style="margin-left:.0001pt;text-align:justify;">File "/var/packages/py3k/target/usr/local/lib/python3.8/http/server.py", 【【微信】】, in handle</p> <p style="margin-left:.0001pt;text-align:justify;">self.handle_one_request()</p> <p style="margin-left:.0001pt;text-align:justify;">File "/var/packages/py3k/target/usr/local/lib/python3.8/http/server.py", 【【微信】】, in handle_one_request</p> <p style="margin-left:.0001pt;text-align:justify;">method()</p> <p style="margin-left:.0001pt;text-align:justify;">File "【【淘密令】】.py", line 108, in do_GET</p> <p style="margin-left:.0001pt;text-align:justify;">shutil.copyfileobj(f, self.wfile)</p> <p style="margin-left:.0001pt;text-align:justify;">File "/var/packages/py3k/target/usr/local/lib/python3.8/shutil.py", line 205, in copyfileobj</p> <p style="margin-left:.0001pt;text-align:justify;">fdst_write(buf)</p> <p style="margin-left:.0001pt;text-align:justify;">File "/var/packages/py3k/target/usr/local/lib/python3.8/socketserver.py", 【【微信】】, in write</p> <p style="margin-left:.0001pt;text-align:justify;">self._sock.sendall(b)</p> <p style="margin-left:.0001pt;text-align:justify;">BrokenPipeError: [Errno 32] Broken pipe</p> <p style="margin-left:.0001pt;text-align:left;"><span style="background-color:#f8f8f8;"><span style="background-color:#f8f8f8;"><span style="color:#333333;">小爱同学</span></span><span style="background-color:#f8f8f8;"><span style="color:#333333;">打开小怪</span></span></span></p> <p style="margin-left:0;text-align:left;"><span style="color:#333333;">然后以下三条指令三选一</span></p> <table style="margin-left:-4.35pt;"><tbody><tr><td> <p style="margin-left:.0001pt;text-align:center;"><strong><strong>指令</strong></strong></p> </td><td> <p style="margin-left:.0001pt;text-align:center;"><strong><strong>功能</strong></strong></p> </td></tr><tr><td> <p style="margin-left:.0001pt;text-align:left;">播放服务器的音乐</p> </td><td> <p style="margin-left:.0001pt;text-align:left;">按着上次的进度继续播放(没有进度就是从头放)</p> </td></tr><tr><td style="background-color:#f8f8f8;"> <p style="margin-left:.0001pt;text-align:left;">从头播放服务器的音乐</p> </td><td style="background-color:#f8f8f8;"> <p style="margin-left:.0001pt;text-align:left;">按修改时间倒序播放(先放最后放进文件夹的文件)</p> </td></tr><tr><td> <p style="margin-left:.0001pt;text-align:left;">随机播放服务器的音乐</p> </td><td> <p style="margin-left:.0001pt;text-align:left;">随机播放(播放列表打乱,不会重复随机到同一首)</p> </td></tr></tbody></table> <p style="margin-left:.0001pt;text-align:justify;">查看了作者的说明,需要注意指令的准确性。</p> <p style="margin-left:.0001pt;text-align:justify;">Enjoy!</p> <div><br></div><h1 style="font-size: 38px;color: #4d4f53;">将安卓设备变为音响(AndroidIO V1.0)</h1>安卓手机当音响,安卓音响怎么调,安卓音频怎么转苹果,安卓音频转换<br> <p>文章标题:将安卓设备变为音响(AndroidIO V1.0)</p> <p>文章链接:</p> <p>更新时间:2023年07月25日</p> <b>免责声明:</b>本站提供的资源,都来自网络,版权争议与本站无关,所有内容及软件的文章仅限用于学习和研究目的。不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负,我们不保证内容的长久可用性,通过使用本站内容随之而来的风险与本站无关,您必须在下载后的24个小时之内,从您的电脑/手机中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。侵删请致信E-mail:【【邮箱】】
本文地址:
/show-78590.html
版权声明:除非特别标注原创,其它均来自互联网,转载时请以链接形式注明文章出处。
