#9 Add QQ Music tkm Format

This commit is contained in:
MengYX 2020-01-27 17:36:20 +08:00
parent 4cd5b45986
commit 211b4e0206
No known key found for this signature in database
GPG Key ID: E63F9C7303E8F604
6 changed files with 262 additions and 259 deletions

View File

@ -8,7 +8,7 @@
# Features # Features
- [x] Unlock in browser 在浏览器中解锁 - [x] Unlock in browser 在浏览器中解锁
- [x] QQMusic Format QQ音乐格式 (.qmc0/.qmc3/.qmcflac/.qmcogg) - [x] QQMusic Format QQ音乐格式 (.qmc0/.qmc3/.qmcflac/.qmcogg/.tkm)
- [x] MooMusic Format Moo音乐格式 ([.bkcmp3/.bkcflac](https://github.com/ix64/unlock-music/issues/11)) - [x] MooMusic Format Moo音乐格式 ([.bkcmp3/.bkcflac](https://github.com/ix64/unlock-music/issues/11))
- [x] QQMusic Tm Format QQ音乐Tm格式 (.tm0/.tm2/.tm3/.tm6) - [x] QQMusic Tm Format QQ音乐Tm格式 (.tm0/.tm2/.tm3/.tm6)
- [ ] QQMusic New Format QQ音乐新格式 - [ ] QQMusic New Format QQ音乐新格式

502
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@ -1,6 +1,6 @@
{ {
"name": "unlock-music", "name": "unlock-music",
"version": "1.1.1", "version": "1.1.2",
"private": true, "private": true,
"scripts": { "scripts": {
"serve": "vue-cli-service serve", "serve": "vue-cli-service serve",

View File

@ -67,7 +67,7 @@
<el-footer id="app-footer"> <el-footer id="app-footer">
<el-row> <el-row>
音乐解锁移除已购音乐的加密保护 音乐解锁移除已购音乐的加密保护
目前支持网易云音乐(ncm)QQ音乐(qmc0, qmc3, qmcflac, qmcogg, mflac)以及 目前支持网易云音乐(ncm)QQ音乐(qmc, mflac, tkm)以及
<a href="https://github.com/ix64/unlock-music/blob/master/README.md" target="_blank">其他格式</a> <a href="https://github.com/ix64/unlock-music/blob/master/README.md" target="_blank">其他格式</a>
<a href="https://github.com/ix64/unlock-music/wiki/使用提示" target="_blank">使用提示</a> <a href="https://github.com/ix64/unlock-music/wiki/使用提示" target="_blank">使用提示</a>
</el-row> </el-row>
@ -109,7 +109,7 @@
this.$notify.info({ this.$notify.info({
title: '离线使用', title: '离线使用',
message: '我们使用PWA技术无网络也能使用<br/>' + message: '我们使用PWA技术无网络也能使用<br/>' +
'最近更新支持bkcmp3/bkcflac<br/>' + '最近更新支持bkcmp3/bkcflac/tkm<br/>' +
'点击查看 <a target="_blank" href="https://github.com/ix64/unlock-music/wiki/使用提示">使用提示</a>', '点击查看 <a target="_blank" href="https://github.com/ix64/unlock-music/wiki/使用提示">使用提示</a>',
dangerouslyUseHTMLString: true, dangerouslyUseHTMLString: true,
duration: 10000, duration: 10000,

View File

@ -16,7 +16,8 @@ async function CommonDecrypt(file) {
break; break;
case "mp3":// Raw Mp3 case "mp3":// Raw Mp3
case "flac"://Raw Flac case "flac"://Raw Flac
case "m4a":// todo: Raw M4A case "m4a":// Raw M4a
case "ogg":// Raw Ogg
rt_data = await RawDecrypt.Decrypt(file.raw, raw_filename, raw_ext); rt_data = await RawDecrypt.Decrypt(file.raw, raw_filename, raw_ext);
break; break;
case "tm0":// QQ Music IOS Mp3 case "tm0":// QQ Music IOS Mp3
@ -27,6 +28,7 @@ async function CommonDecrypt(file) {
case "qmc0"://QQ Music Android Mp3 case "qmc0"://QQ Music Android Mp3
case "qmcflac"://QQ Music Android Flac case "qmcflac"://QQ Music Android Flac
case "qmcogg"://QQ Music Android Ogg case "qmcogg"://QQ Music Android Ogg
case "tkm"://QQ Music Accompaniment M4a
case "bkcmp3"://Moo Music Mp3 case "bkcmp3"://Moo Music Mp3
case "bkcflac"://Moo Music Flac case "bkcflac"://Moo Music Flac
rt_data = await QmcDecrypt.Decrypt(file.raw, raw_filename, raw_ext); rt_data = await QmcDecrypt.Decrypt(file.raw, raw_filename, raw_ext);
@ -34,8 +36,8 @@ async function CommonDecrypt(file) {
case "mflac"://QQ Music Desktop Flac case "mflac"://QQ Music Desktop Flac
rt_data = await MFlacDecrypt.Decrypt(file.raw, raw_filename, raw_ext); rt_data = await MFlacDecrypt.Decrypt(file.raw, raw_filename, raw_ext);
break; break;
case "tm2":// todo: QQ Music IOS M4A case "tm2":// QQ Music IOS M4a
case "tm6":// todo: QQ Music IOS M4A case "tm6":// QQ Music IOS M4a
rt_data = await TmDecrypt.Decrypt(file.raw, raw_filename); rt_data = await TmDecrypt.Decrypt(file.raw, raw_filename);
break; break;
default: default:

View File

@ -17,7 +17,8 @@ const OriginalExtMap = {
"qmcogg": "ogg", "qmcogg": "ogg",
"qmcflac": "flac", "qmcflac": "flac",
"bkcmp3": "mp3", "bkcmp3": "mp3",
"bkcflac": "flac" "bkcflac": "flac",
"tkm": "m4a"
}; };
async function Decrypt(file, raw_filename, raw_ext) { async function Decrypt(file, raw_filename, raw_ext) {