mirror of
https://github.com/TriM-Organization/Linglun-Converter.git
synced 2024-11-28 08:11:33 +08:00
更新CLI(命令行)的API调用
This commit is contained in:
parent
7355af9314
commit
e432b1caba
63
llc_cli.py
63
llc_cli.py
@ -14,7 +14,7 @@ Copyright © 2023 EillesWan & TriM Org.
|
||||
Terms & Conditions: ./Lisense.md
|
||||
"""
|
||||
|
||||
__version__ = "0.0.2"
|
||||
__version__ = "0.0.3"
|
||||
|
||||
import datetime
|
||||
import os
|
||||
@ -22,6 +22,10 @@ import random
|
||||
import sys
|
||||
|
||||
import Musicreater
|
||||
from Musicreater.plugin import ConvertConfig
|
||||
from Musicreater.plugin.bdxfile import to_BDX_file_in_delay, to_BDX_file_in_score
|
||||
from Musicreater.plugin.funcpack import to_function_addon_in_score
|
||||
from Musicreater.plugin.mcstructpack import to_mcstructure_addon_in_delay
|
||||
|
||||
from utils.io import *
|
||||
from languages.lang import languages
|
||||
@ -147,21 +151,6 @@ out_path = format_ipt(
|
||||
f"{_('FileNotFound')}{_(',')}{_('Re-Enter')}{_('.')}",
|
||||
)[0].lower()
|
||||
|
||||
conversion = Musicreater.midiConvert()
|
||||
|
||||
|
||||
def isMethodOK(sth: str):
|
||||
if int(sth) in range(1, len(conversion.methods) + 1):
|
||||
return int(sth)
|
||||
else:
|
||||
raise ValueError
|
||||
|
||||
|
||||
convert_method = format_ipt(
|
||||
f"{_('EnterMethod').format(1, len(conversion.methods))}{_(':')}",
|
||||
isMethodOK,
|
||||
f"{_('MethodRangeErr').format(1, len(conversion.methods))}",
|
||||
)[1]
|
||||
|
||||
# 选择输出格式
|
||||
|
||||
@ -199,8 +188,6 @@ playerFormat = format_ipt(
|
||||
f"{_('ErrEnter')}{_(',')}{_('Re-Enter')}{_('.')}",
|
||||
)[1]
|
||||
|
||||
debug = False
|
||||
|
||||
|
||||
# 真假字符串判断
|
||||
def bool_str(sth: str) -> bool:
|
||||
@ -219,8 +206,7 @@ if os.path.exists("./demo_config.json"):
|
||||
import json
|
||||
|
||||
prompts = json.load(open("./demo_config.json", "r", encoding="utf-8"))
|
||||
if prompts[-1] == "debug":
|
||||
debug = True
|
||||
|
||||
prompts = prompts[:-1]
|
||||
else:
|
||||
prompts = []
|
||||
@ -269,35 +255,26 @@ else:
|
||||
if args:
|
||||
prompts.append(format_ipt(*args)[1])
|
||||
|
||||
conversion = Musicreater.midiConvert(debug=debug)
|
||||
|
||||
for singleMidi in midis:
|
||||
prt("\n" f"{_('Dealing')} {singleMidi} {_(':')}")
|
||||
conversion.convert(singleMidi, out_path)
|
||||
if debug:
|
||||
with open("./records.json", "a", encoding="utf-8") as f:
|
||||
json.dump(conversion.toDICT(), f)
|
||||
f.write(5 * "\n")
|
||||
conversion_result = (
|
||||
(
|
||||
conversion.to_mcpack(convert_method, *prompts)
|
||||
if playerFormat == 1
|
||||
else conversion.to_mcpack_with_delay(convert_method, *prompts)
|
||||
)
|
||||
if fileFormat == 0
|
||||
else (
|
||||
conversion.to_BDX_file(convert_method, *prompts)
|
||||
if playerFormat == 1
|
||||
else conversion.to_BDX_file_with_delay(convert_method, *prompts)
|
||||
)
|
||||
)
|
||||
cvt_mid = Musicreater.MidiConvert.from_midi_file(singleMidi, old_exe_format=False)
|
||||
cvt_cfg = ConvertConfig(out_path, *prompts[:3])
|
||||
|
||||
conversion_result = ((
|
||||
to_function_addon_in_score(cvt_mid, cvt_cfg, *prompts[3:])
|
||||
if playerFormat == 1
|
||||
else to_mcstructure_addon_in_delay(cvt_mid, cvt_cfg, *prompts[3:])
|
||||
)if fileFormat == 0
|
||||
else (
|
||||
to_BDX_file_in_score(cvt_mid, cvt_cfg, *prompts[3:])
|
||||
if playerFormat == 1
|
||||
else to_BDX_file_in_delay(cvt_mid, cvt_cfg, *prompts[3:])
|
||||
))
|
||||
|
||||
if conversion_result[0]:
|
||||
prt(
|
||||
f" {_('CmdLength')}{_(':')}{conversion_result[1]}{_(',')}{_('MaxDelay')}{_(':')}{conversion_result[2]}{f'''{_(',')}{_('PlaceSize')}{_(':')}{conversion_result[3]}{_(',')}{_('LastPos')}{_(':')}{conversion_result[4]}''' if fileFormat == 1 else ''}"
|
||||
f" {_('CmdLength')}{_(':')}{conversion_result[0]}{_(',')}{_('MaxDelay')}{_(':')}{conversion_result[1]}{f'''{_(',')}{_('PlaceSize')}{_(':')}{conversion_result[2]}{_(',')}{_('LastPos')}{_(':')}{conversion_result[3]}''' if fileFormat == 1 else ''}"
|
||||
)
|
||||
else:
|
||||
prt(f"{_('Failed')}")
|
||||
|
||||
exitSth = ipt(_("PressEnterExit")).lower()
|
||||
if exitSth == "record":
|
||||
|
@ -1,5 +1,2 @@
|
||||
Brotli>=1.0.9
|
||||
mido>=1.2.10
|
||||
rich>=10.9.0
|
||||
Musicreater>=0.5.0
|
||||
Musicreater>=1.0.0
|
||||
TrimLog>=0.7.2
|
||||
|
Loading…
Reference in New Issue
Block a user