WIP | Syllable AI [RL API]

This commit is contained in:
meowarex
2026-08-11 07:57:30 +00:00
parent d44d833334
commit ba9bba2030
6 changed files with 51 additions and 12 deletions
@@ -76,6 +76,15 @@
"token": "RL_ROMANIZE", "token": "RL_ROMANIZE",
"inline": true "inline": true
}, },
{
"type": "toggle",
"key": "synthesize",
"title": "WIP | AI Generate Syllables",
"description": "[Only works with API results] - Generates Syllable timings from Line timings using a self trained AI model ",
"default": false,
"inline": true,
"token": "RL_SYNTHESIZE"
},
{ {
"type": "toggle", "type": "toggle",
"key": "context_aware", "key": "context_aware",
@@ -190,7 +190,9 @@ class PatchOptionsModel(
fun isAdvancedModified(spec: PatchSpec): Boolean = spec.advancedOptions.any { option -> fun isAdvancedModified(spec: PatchSpec): Boolean = spec.advancedOptions.any { option ->
when (option) { when (option) {
is OptionSpec.Toggle -> toggleValue(spec, option) != option.default // inline toggles sit next to the variant picker, not in the sheet, so they
// must not light up the sheet's "modified" dot
is OptionSpec.Toggle -> !option.inline && toggleValue(spec, option) != option.default
is OptionSpec.Slider -> sliderValue(spec, option) != option.default is OptionSpec.Slider -> sliderValue(spec, option) != option.default
is OptionSpec.Choice -> choiceValue(spec, option) != option.defaultIndex is OptionSpec.Choice -> choiceValue(spec, option) != option.defaultIndex
is OptionSpec.Color -> colorValue(spec, option) != option.default is OptionSpec.Color -> colorValue(spec, option) != option.default
+1 -1
View File
@@ -1,5 +1,5 @@
{ {
"tidalVersionCode": 10004, "tidalVersionCode": 10004,
"tidalApkUrl": "https://github.com/meowarex/rl-mobile/releases/download/latest/tidal-stock.apk", "tidalApkUrl": "https://github.com/meowarex/rl-mobile/releases/download/latest/tidal-stock.apk",
"patchesVersion": "1.0.0" "patchesVersion": "1.1.2"
} }
@@ -690,6 +690,17 @@
invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-static {}, Lradiant/WordLyrics;->synthesizeOn()Z
move-result v0
if-eqz v0, :no_synthesize
const-string v0, "&synthesize=true"
invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
:no_synthesize
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v2 move-result-object v2
+18 -10
View File
@@ -1010,11 +1010,7 @@
new-array v9, v8, [Ljava/lang/String; new-array v9, v8, [Ljava/lang/String;
const-string v10, "text" invoke-static {v6}, Lradiant/WordLyrics;->lineText(Lorg/json/JSONObject;)Ljava/lang/String;
const-string v11, ""
invoke-virtual {v6, v10, v11}, Lorg/json/JSONObject;->optString(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object v10 move-result-object v10
@@ -1238,11 +1234,7 @@
:bs_single :bs_single
# Treat the line as one syllable # Treat the line as one syllable
const-string v8, "text" invoke-static {v5}, Lradiant/WordLyrics;->lineText(Lorg/json/JSONObject;)Ljava/lang/String;
const-string v9, ""
invoke-virtual {v5, v8, v9}, Lorg/json/JSONObject;->optString(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object v8 move-result-object v8
@@ -1350,6 +1342,22 @@
# Baked in by the Manager's options # Baked in by the Manager's options
# CTX bits: 0x1 adlibs, 0x2 singers # CTX bits: 0x1 adlibs, 0x2 singers
# Ask the API to invent syllable timings
.method public static synthesizeOn()Z
.locals 2
const v0, __RL_SYNTHESIZE__
const/4 v1, 0x0
if-eqz v0, :off
const/4 v1, 0x1
:off
return v1
.end method
# Is context aware switched on # Is context aware switched on
# The mode bits alone can't say "off" # The mode bits alone can't say "off"
.method static ctxOn()Z .method static ctxOn()Z
+9
View File
@@ -76,6 +76,15 @@
"token": "RL_ROMANIZE", "token": "RL_ROMANIZE",
"inline": true "inline": true
}, },
{
"type": "toggle",
"key": "synthesize",
"title": "WIP | AI Generate Syllables",
"description": "[Only works with API results] - Generates Syllable timings from Line timings using a self trained AI model ",
"default": false,
"inline": true,
"token": "RL_SYNTHESIZE"
},
{ {
"type": "toggle", "type": "toggle",
"key": "context_aware", "key": "context_aware",