标签:
Provide Unified Music Service for users in China.
由于版权问题,QQ音乐、网易云等音乐平台有部分歌曲无法播放。Project Israfil通过实现各大音乐平台的API来提供统一的音乐服务,消除因版权导致的不方便.
Project Israfil只是本人的练笔之作,为了熟悉一下Go语言和Qt的开发,研究音乐平台协议只是顺手 ;)
如本项目有侵权行为,请和我联系,我会立刻删除Repo
IsrafilCore: (./IsrafilCore)C++11编写,提供音乐服务接口给IsrafilApp, 其他程序也可以自由调用此接口,开发中
Israfil App: Qt, QML, Material Design, 早期开发中。Israfil HTTP API: (./HttpAPI)独立子项目,Go语言编写,Go-Pie插件机制,适合部署到服务器端提供统一的API 目前完成了网易和qq的搜索与下载地址获取
已完成:
项目 | 协议 | 已完成 | 测试 | 完成时间 |
---|---|---|---|---|
IsrafilCore | 网易云音乐 | 获取图片和歌词地址 | test-netease | 2016-06-10 |
IsrafilCore | 网易云音乐 | 获取Mp3地址函数生效,并合并入search | test-search | 2016-06-09 |
IsrafilCore | 网易& QQ | 增加获取mp3,图片歌词的函数, 网易的加密暂时用Py实现 | - | 2016-06-09 |
IsrafilCore | 网易云音乐 | 完成网易搜索,整合进Universal Search,结果尚未排序 | test-search | 2016-06-08 |
IsrafilCore | 网易云音乐 | 原API通过EncryptID及dfsID计算MP3下载地址 | test-netease | 2016-06-07 |
IsrafilCore | HTTPClient | 自定义header进行HTTP POST, 初步的网易搜索获得json | test-network | 2016-06-06 |
IsrafilCore | QQ音乐 | 整合音乐结果到Universal Search并加入Json | test-qqmusic | 2016-06-04 |
IsrafilCore | Universal | SongList搜索结果重编码为Json供qml调用 | test-qqmusic | 2016-06-04 |
Israfil | 持续集成 | 完成全自动化编译+上传二进制文件 | - | 2016-06-03 |
IsrafilCore | Universal | 封装QQ搜索至IsrafilCore | test-core | 2016-06-02 |
IsrafilCore | QQ音乐 | 获得歌曲歌词、专辑图片及下载链接(包括无损) | test-qqmusic | 2016-06-02 |
IsrafilCore | HTTPClient | 自定义header发送GET请求 | test-network | 2016-05-28 |
HTTPAPI | QQ&网易 | 搜索歌曲获得详细信息以及获得下载链接 | - | 2016-04-15 |
进行中(按优先级排列):
项目 | 协议 | 功能 | 完成情况 | 开始时间 |
---|---|---|---|---|
IsrafilApp | UI | Qml-Material 界面设计,可能需要手动维护一份Fork | 30% | 2016-06-05 |
IsrafilApp | Qml<->C++ | C++ 和 QML之间的caodan通讯 :( | 30% | 2016-06-04 |
IsrafilCore | 虾米音乐 | 协议研究 | 60% | 2016-05-28 |
IsrafilAPP | UI | qml-material 初步界面demo 及 qml文件的资源打包 | 60% | 2016-05-13 |
Windows: Qt官网(qt.io)下载Qt For Windows并安装
Linux: sudo $包管理安装命令 qt5-default (如sudo apt-get install qt5-default
, sudo pacman -S qt5
)
OS X: brew install qt5
(需要手动加入环境变量) 或者官网下载安装包安装
git clone https://github.com/LER0ever/Israfil
cd Israfil && mkdir build
cd build && qmake ..
make
或者用Qt-Creator打开Israfil.pro,Release模式构建所有项目.
See contribute.md
Platform | Qt & Compiler | Status |
---|---|---|
Linux | 5.6 Clang & GCC | |
OS X | 5.6 Clang & GCC | |
Windows | 5.5 MinGW gcc | |
Android | 5.5 gcc androideabi |
3rd party | License | Needed by | in source |
---|---|---|---|
papyros/qml-material | LGPL2 | IsrafilApp | Embedded in source |
Qt Project | LGPL2 | IsrafilApp | Universal Dependency |
JosephP91/curlcpp | MIT | IsrafilCore | Embedded in source |
JieweiWei/md5 | Apache | IsrafilCore | Embedded in source |
natefinch/pie | MIT | HttpAPI | Embedded in source |
ddliu/go-httpclient | MIT | HttpAPI | Need manual go get |
网易云音乐API参考了网易云音乐API分析
网易云音乐新版API正在学习中...
Israfil中的歌曲和歌单版权归各大音乐平台所有
GNU GENERAL PUBLIC LICENSE V3
See Licence.md for details
Project Israfil -- 支持多个音乐平台的开源音乐服务
标签:
原文地址:http://www.cnblogs.com/LER-Ever/p/5573913.html