1
0
mirror of https://github.com/hanxi/xiaomusic.git synced 2025-12-13 15:58:13 +08:00
Files
xiaomusic/docs/issues/78.md
Issues Docs [BOT] 5525712c77 Auto-Generate docs 🤖
2025-09-10 03:09:34 +00:00

202 lines
6.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
title: 已支持配置自定义网络歌单,在这里分享你的歌单
---
# 已支持配置自定义网络歌单,在这里分享你的歌单
设置页面新增一个输入框配置json格式可以定义配置音乐源可以是电台或者其他的m3u8格式的。
再加一个输入框配置这个json文件的url点击获取按钮把url对应的json内容填充到json输入框方便直接使用别人分享的歌单。
比如这样的链接
- https://lhttp.qtfm.cn/live/4915/64k.mp3
- http://ngcdn001.cnr.cn/live/zgzs/index.m3u8
已经测试能播放出来:
```
python3 micli.py play http://ngcdn001.cnr.cn/live/zgzs/index.m3u8
```
预计歌单格式是这样的, type 为 radio 作为电台的设定,会一直播放当前电台,不会播放下一首。
```json
[
{
"name":"歌单1",
"musics":[
{
"name":"歌名1",
"url":"http://ngcdn001.cnr.cn/live/zgzs/index.m3u8",
"type":"radio"
},
{
"name":"歌名2",
"url":"https://lhttp.qtfm.cn/live/4915/64k.mp3"
}
]
},
{
"name":"歌单2",
"musics":[
{
"name":"歌名3",
"url":"https://lhttp.qtfm.cn/live/4915/64k.mp3"
},
{
"name":"花海",
"url":"http://192.168.2.5:58090/proxy?urlb64=aHR0cHM6Ly93cy5zdHJlYW0ucXFtdXNpYy5xcS5jb20vTTgwMDAwM29rV3ZvMXFadTljLm1wMz9mcm9tdGFnPTAmZ3VpZD1mZmZmZmZmZmM4MWU2ZjVhZmZmZmZmZmZlZGZmZWI3ZiZ1aW49MzMxMjkzOTI1NCZ2a2V5PTc1MURBOEQ5RkRFNTkwOEQ5MjVCNUZFMTNBODhEREUyQkI3MzZGNDQ3NDU4MTA1OTk2Q0Q3QTEyMTQ2ODFGRUZERjNBQURDMkY0OTY2NjJEMDM1OUVDRkE0RjQwMkM2M0RDOTk4NzdDOENGMkM3OUJfX3YyMWUyYTE3MzM="
}
]
}
]
```
这里分享一个让 chatgpt 写 python 脚本来生成歌单的例子 <https://chatgpt.com/share/6751c019-74c0-800a-a978-a20c636d4464> 。
## 代理访问链接
上面的 <http://192.168.2.5:58090/proxy?urlb64=aHR0cHM6Ly93cy5zdHJlYW0ucXFtdXNpYy5xcS5jb20vTTgwMDAwM29rV3ZvMXFadTljLm1wMz9mcm9tdGFnPTAmZ3VpZD1mZmZmZmZmZmM4MWU2ZjVhZmZmZmZmZmZlZGZmZWI3ZiZ1aW49MzMxMjkzOTI1NCZ2a2V5PTc1MURBOEQ5RkRFNTkwOEQ5MjVCNUZFMTNBODhEREUyQkI3MzZGNDQ3NDU4MTA1OTk2Q0Q3QTEyMTQ2ODFGRUZERjNBQURDMkY0OTY2NjJEMDM1OUVDRkE0RjQwMkM2M0RDOTk4NzdDOENGMkM3OUJfX3YyMWUyYTE3MzM=> 是经过代理播放的链接。可以通过其他的工具来生成。其中 <http://192.168.2.5:58090/> 是自己的 xiaomusic 地址。
## 评论
### 评论 1 - hanxi
可以使用 gist 来配置和分享 json 文件,比如 https://gist.github.com/hanxi/dda82d964a28f8110f8fba81c3ff8314
点击 raw 得到 json 文件的链接 https://gist.githubusercontent.com/hanxi/dda82d964a28f8110f8fba81c3ff8314/raw/8787844d81c39dbfaad4e37954dd449d8bba5728/example.json
当然还可以用其他工具分享json文件比如 github 和国内的 gitee 。
---
### 评论 2 - hanxi
已经有工具支持将 m3u 格式的电台文件转为网络歌单格式,见 /issues/88.html
欢迎有兴趣的朋友制作其他格式转换工具,比如网易歌单那一类的。
---
### 评论 3 - hanxi
设备掉线了
---
### 评论 4 - hanxi
> 怎么获取 他正在播放什么?或者是播放进度 ?播放列表?我想给他加进去 ![233333](https://private-user-images.githubusercontent.com/100142519/372926296-013cd952-69e9-4754-870f-2d5321865179.jpg?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mjc4ODY3MzUsIm5iZiI6MTcyNzg4NjQzNSwicGF0aCI6Ii8xMDAxNDI1MTkvMzcyOTI2Mjk2LTAxM2NkOTUyLTY5ZTktNDc1NC04NzBmLTJkNTMyMTg2NTE3OS5qcGc_WC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1BS0lBVkNPRFlMU0E1M1BRSzRaQSUyRjIwMjQxMDAyJTJGdXMtZWFzdC0xJTJGczMlMkZhd3M0X3JlcXVlc3QmWC1BbXotRGF0ZT0yMDI0MTAwMlQxNjI3MTVaJlgtQW16LUV4cGlyZXM9MzAwJlgtQW16LVNpZ25hdHVyZT0wNzI5OTdhOTAxMmIwMDkxZTBjOGNhYTZkOWVjY2MwZTRmNGE0YTYzNDFhNGY1YzNjNTI4ZWY0YzYzYzc0Nzk3JlgtQW16LVNpZ25lZEhlYWRlcnM9aG9zdCJ9.4-5nGDdkDv9FRp9bAnwN4dzmf4wqKHnG4bW44BhVyRQ)
这个接口 `/playingmusic`
---
### 评论 5 - 114514thD
加不加"type":"radio"都会一直播放不切换到下一首歌是为什么呢
---
### 评论 6 - hanxi
> 加不加"type":"radio"都会一直播放不切换到下一首歌是为什么呢
发出来看看?
---
### 评论 7 - 114514thD
> > 加不加"type":"radio"都会一直播放不切换到下一首歌是为什么呢
>
> 发出来看看?
~~本地开服务器生成的m3u列表
格式如下
`#EXTINF:247,周传雄 - 临别一眼.mp3
http://192.168.1.147:8000/%E5%91%A8%E4%BC%A0%E9%9B%84%20-%20%E4%B8%B4%E5%88%AB%E4%B8%80%E7%9C%BC.mp3`
包含了时长信息
版本是0.3.46
potplayer里播放完全正常~~
仔细研究了一下,发现确实存在问题,不过是另一种情况,下面单说
---
### 评论 8 - 114514thD
> > 加不加"type":"radio"都会一直播放不切换到下一首歌是为什么呢
>
> 发出来看看?
这几天再仔细研究了一下发现一个可能的原因这样获取到的是m4a文件我尝试着在json里配置获取到的m4a链接发现播放同样也是无时长
---
### 评论 9 - hanxi
获取歌曲时长确实有些格式获取不到。
---
### 评论 10 - 114514thD
> 获取歌曲时长确实有些格式获取不到。
http://m7.music.126.net/20241216093525/75c9080afa2929d7eec8e1cdbcbc0a92/yyaac/0709/535a/5358/0c6e2dcac3d0e9fa4415d22e1eca1337.m4a
以这个文件为例我用ffmpeg可以获取时长等元数据
`
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'http://m7.music.126.net/20241216093525/75c9080afa2929d7eec8e1cdbcbc0a92/yyaac/0709/535a/5358/0c6e2dcac3d0e9fa4415d22e1eca1337.m4a':
Metadata:
major_brand : mp42
minor_version : 0
compatible_brands: M4A mp42isom
creation_time : 2019-02-21T02:51:36.000000Z
iTunSMPB : 00000000 00000920 000003E8 00000000004BE2F8 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
encoder : Nero AAC codec / 1.5.4.0
Duration: 00:03:45.70, start: 0.052971, bitrate: 64 kb/s
Chapters:
Chapter #0:0: start 0.105941, end 225.750930
Metadata:
title :
Stream #0:0[0x1](und): Audio: aac (HE-AAC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 63 kb/s (default)
Metadata:
creation_time : 2019-02-21T02:51:36.000000Z
handler_name : Sound Media Handler
vendor_id : [0][0][0][0]`
那是为什么播放就不行呢
---
### 评论 11 - hanxi
因为代码有问题。
---
### 评论 12 - 114514thD
> 因为代码有问题。
好吧😂😂,大佬真是直接😁
---
### 评论 13 - hanxi
重构方案 #314
---
### 评论 14 - LiyuTian-web
下指令后会重新播放歌曲。比如正在播放晴天,下指令声音小一点,这时会重新从头开始播放晴天这首歌,而不会继续播放。
---
### 评论 15 - hanxi
v0.3.86 版本支持 LX 歌单,歌单导出工具地址: <https://github.com/hanxi/keep-alive>
---
[链接到 GitHub Issue](https://github.com/hanxi/xiaomusic/issues/78)