Project Israfil,projectisrafil
Israfil
|關於|當前進度|開發日志|下載軟件|編譯|參與項目|編譯狀態|版權|協議|
LER0ever Project Israfil
Provide Unified Music Service for users in China.
由於版權問題,QQ音樂、網易雲等音樂平台有部分歌曲無法播放。Project Israfil通過實現各大音樂平台的API來提供統一的音樂服務,消除因版權導致的不方便.
IN EARLY DEVELOPMENT
早期開發尚不可使用!
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的搜索與下載地址獲取
Israfil 進度
開發日志及當前運行效果(持續更新)
當前代碼量統計
已完成:
項目 | 協議 | 已完成 | 測試 | 完成時間 |
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
Israfil下載
LER0ever/Israfil-builds
- 直接點上面的鏈接↸↸↸,(前提是如果你完全不知道這整個頁面在說什麼的話,)上面的鏈接會帶你去下載地址
- 注意,這個repo裡的文件是本項目實時編譯結果,尚在早期開發,下下來也沒什麼用
- Releases裡的格式為“操作系統 - 編譯工具鏈 - 版本號 - 時間戳”,如macx-clang-0.1.0.0003-115355
- 每次commit過後利用CI打Tag然後將Artifacts上傳至Releases,Releases數量可能會較多,選擇最近的二進制下載即可
- Windows的二進制已經被WinDeployQt撸過了,Linux 和 OS X的沒有自帶Qt庫,Linux請用包管理安裝(大多數發行版都自帶了),Mac用戶再說
Israfil編譯
准備環境
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模式構建所有項目.
Contributions are always welcome
See contribute.md
CI Status
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
Copyright
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中的歌曲和歌單版權歸各大音樂平台所有
LICENSE
GNU GENERAL PUBLIC LICENSE V3
See Licence.md for details